2695 lines
2.6 MiB
2695 lines
2.6 MiB
"use strict";var __esbuild_esm_mermaid_nm;(__esbuild_esm_mermaid_nm||={}).mermaid=(()=>{var gbe=Object.create;var Cy=Object.defineProperty;var ybe=Object.getOwnPropertyDescriptor;var vbe=Object.getOwnPropertyNames;var xbe=Object.getPrototypeOf,bbe=Object.prototype.hasOwnProperty;var o=(t,e)=>Cy(t,"name",{value:e,configurable:!0});var N=(t,e)=>()=>(t&&(e=t(t=0)),e);var Aa=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),ur=(t,e)=>{for(var r in e)Cy(t,r,{get:e[r],enumerable:!0})},H4=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of vbe(e))!bbe.call(t,i)&&i!==r&&Cy(t,i,{get:()=>e[i],enumerable:!(n=ybe(e,i))||n.enumerable});return t},Sr=(t,e,r)=>(H4(t,e,"default"),r&&H4(r,e,"default")),ja=(t,e,r)=>(r=t!=null?gbe(xbe(t)):{},H4(e||!t||!t.__esModule?Cy(r,"default",{value:t,enumerable:!0}):r,t)),Tbe=t=>H4(Cy({},"__esModule",{value:!0}),t);var wbe,d0,jC,w$,W4=N(()=>{"use strict";wbe=Object.freeze({left:0,top:0,width:16,height:16}),d0=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),jC=Object.freeze({...wbe,...d0}),w$=Object.freeze({...jC,body:"",hidden:!1})});var kbe,k$,E$=N(()=>{"use strict";W4();kbe=Object.freeze({width:null,height:null}),k$=Object.freeze({...kbe,...d0})});var KC,q4,S$=N(()=>{"use strict";KC=o((t,e,r,n="")=>{let i=t.split(":");if(t.slice(0,1)==="@"){if(i.length<2||i.length>3)return null;n=i.shift().slice(1)}if(i.length>3||!i.length)return null;if(i.length>1){let l=i.pop(),u=i.pop(),h={provider:i.length>0?i[0]:n,prefix:u,name:l};return e&&!q4(h)?null:h}let a=i[0],s=a.split("-");if(s.length>1){let l={provider:n,prefix:s.shift(),name:s.join("-")};return e&&!q4(l)?null:l}if(r&&n===""){let l={provider:n,prefix:"",name:a};return e&&!q4(l,r)?null:l}return null},"stringToIcon"),q4=o((t,e)=>t?!!((e&&t.prefix===""||t.prefix)&&t.name):!1,"validateIconName")});function C$(t,e){let r={};!t.hFlip!=!e.hFlip&&(r.hFlip=!0),!t.vFlip!=!e.vFlip&&(r.vFlip=!0);let n=((t.rotate||0)+(e.rotate||0))%4;return n&&(r.rotate=n),r}var A$=N(()=>{"use strict";o(C$,"mergeIconTransformations")});function QC(t,e){let r=C$(t,e);for(let n in w$)n in d0?n in t&&!(n in r)&&(r[n]=d0[n]):n in e?r[n]=e[n]:n in t&&(r[n]=t[n]);return r}var _$=N(()=>{"use strict";W4();A$();o(QC,"mergeIconData")});function D$(t,e){let r=t.icons,n=t.aliases||Object.create(null),i=Object.create(null);function a(s){if(r[s])return i[s]=[];if(!(s in i)){i[s]=null;let l=n[s]&&n[s].parent,u=l&&a(l);u&&(i[s]=[l].concat(u))}return i[s]}return o(a,"resolve"),(e||Object.keys(r).concat(Object.keys(n))).forEach(a),i}var L$=N(()=>{"use strict";o(D$,"getIconsTree")});function R$(t,e,r){let n=t.icons,i=t.aliases||Object.create(null),a={};function s(l){a=QC(n[l]||i[l],a)}return o(s,"parse"),s(e),r.forEach(s),QC(t,a)}function ZC(t,e){if(t.icons[e])return R$(t,e,[]);let r=D$(t,[e])[e];return r?R$(t,e,r):null}var N$=N(()=>{"use strict";_$();L$();o(R$,"internalGetIconData");o(ZC,"getIconData")});function JC(t,e,r){if(e===1)return t;if(r=r||100,typeof t=="number")return Math.ceil(t*e*r)/r;if(typeof t!="string")return t;let n=t.split(Ebe);if(n===null||!n.length)return t;let i=[],a=n.shift(),s=Sbe.test(a);for(;;){if(s){let l=parseFloat(a);isNaN(l)?i.push(a):i.push(Math.ceil(l*e*r)/r)}else i.push(a);if(a=n.shift(),a===void 0)return i.join("");s=!s}}var Ebe,Sbe,M$=N(()=>{"use strict";Ebe=/(-?[0-9.]*[0-9]+[0-9.]*)/g,Sbe=/^-?[0-9.]*[0-9]+[0-9.]*$/g;o(JC,"calculateSize")});function Cbe(t,e="defs"){let r="",n=t.indexOf("<"+e);for(;n>=0;){let i=t.indexOf(">",n),a=t.indexOf("</"+e);if(i===-1||a===-1)break;let s=t.indexOf(">",a);if(s===-1)break;r+=t.slice(i+1,a).trim(),t=t.slice(0,n).trim()+t.slice(s+1)}return{defs:r,content:t}}function Abe(t,e){return t?"<defs>"+t+"</defs>"+e:e}function I$(t,e,r){let n=Cbe(t);return Abe(n.defs,e+n.content+r)}var O$=N(()=>{"use strict";o(Cbe,"splitSVGDefs");o(Abe,"mergeDefsAndContent");o(I$,"wrapSVGContent")});function e7(t,e){let r={...jC,...t},n={...k$,...e},i={left:r.left,top:r.top,width:r.width,height:r.height},a=r.body;[r,n].forEach(y=>{let x=[],v=y.hFlip,b=y.vFlip,T=y.rotate;v?b?T+=2:(x.push("translate("+(i.width+i.left).toString()+" "+(0-i.top).toString()+")"),x.push("scale(-1 1)"),i.top=i.left=0):b&&(x.push("translate("+(0-i.left).toString()+" "+(i.height+i.top).toString()+")"),x.push("scale(1 -1)"),i.top=i.left=0);let S;switch(T<0&&(T-=Math.floor(T/4)*4),T=T%4,T){case 1:S=i.height/2+i.top,x.unshift("rotate(90 "+S.toString()+" "+S.toString()+")");break;case 2:x.unshift("rotate(180 "+(i.width/2+i.left).toString()+" "+(i.height/2+i.top).toString()+")");break;case 3:S=i.width/2+i.left,x.unshift("rotate(-90 "+S.toString()+" "+S.toString()+")");break}T%2===1&&(i.left!==i.top&&(S=i.left,i.left=i.top,i.top=S),i.width!==i.height&&(S=i.width,i.width=i.height,i.height=S)),x.length&&(a=I$(a,'<g transform="'+x.join(" ")+'">',"</g>"))});let s=n.width,l=n.height,u=i.width,h=i.height,f,d;s===null?(d=l===null?"1em":l==="auto"?h:l,f=JC(d,u/h)):(f=s==="auto"?u:s,d=l===null?JC(f,h/u):l==="auto"?h:l);let p={},m=o((y,x)=>{_be(x)||(p[y]=x.toString())},"setAttr");m("width",f),m("height",d);let g=[i.left,i.top,u,h];return p.viewBox=g.join(" "),{attributes:p,viewBox:g,body:a}}var _be,P$=N(()=>{"use strict";W4();E$();M$();O$();_be=o(t=>t==="unset"||t==="undefined"||t==="none","isUnsetKeyword");o(e7,"iconToSVG")});function t7(t,e=Lbe){let r=[],n;for(;n=Dbe.exec(t);)r.push(n[1]);if(!r.length)return t;let i="suffix"+(Math.random()*16777216|Date.now()).toString(16);return r.forEach(a=>{let s=typeof e=="function"?e(a):e+(Rbe++).toString(),l=a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");t=t.replace(new RegExp('([#;"])('+l+')([")]|\\.[a-z])',"g"),"$1"+s+i+"$3")}),t=t.replace(new RegExp(i,"g"),""),t}var Dbe,Lbe,Rbe,B$=N(()=>{"use strict";Dbe=/\sid="(\S+)"/g,Lbe="IconifyId"+Date.now().toString(16)+(Math.random()*16777216|0).toString(16),Rbe=0;o(t7,"replaceIDs")});function r7(t,e){let r=t.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(let n in e)r+=" "+n+'="'+e[n]+'"';return'<svg xmlns="http://www.w3.org/2000/svg"'+r+">"+t+"</svg>"}var F$=N(()=>{"use strict";o(r7,"iconToHTML")});var $$=N(()=>{"use strict";S$();N$();P$();B$();F$()});var n7,Dn,p0=N(()=>{"use strict";n7=o((t,e,{depth:r=2,clobber:n=!1}={})=>{let i={depth:r,clobber:n};return Array.isArray(e)&&!Array.isArray(t)?(e.forEach(a=>n7(t,a,i)),t):Array.isArray(e)&&Array.isArray(t)?(e.forEach(a=>{t.includes(a)||t.push(a)}),t):t===void 0||r<=0?t!=null&&typeof t=="object"&&typeof e=="object"?Object.assign(t,e):e:(e!==void 0&&typeof t=="object"&&typeof e=="object"&&Object.keys(e).forEach(a=>{typeof e[a]=="object"&&(t[a]===void 0||typeof t[a]=="object")?(t[a]===void 0&&(t[a]=Array.isArray(e[a])?[]:{}),t[a]=n7(t[a],e[a],{depth:r-1,clobber:n})):(n||typeof t[a]!="object"&&typeof e[a]!="object")&&(t[a]=e[a])}),t)},"assignWithDepth"),Dn=n7});var Y4=Aa((i7,a7)=>{"use strict";(function(t,e){typeof i7=="object"&&typeof a7<"u"?a7.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs=e()})(i7,function(){"use strict";var t=1e3,e=6e4,r=36e5,n="millisecond",i="second",a="minute",s="hour",l="day",u="week",h="month",f="quarter",d="year",p="date",m="Invalid Date",g=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,y=/\[([^\]]+)]|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,x={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:o(function(k){var L=["th","st","nd","rd"],C=k%100;return"["+k+(L[(C-20)%10]||L[C]||L[0])+"]"},"ordinal")},v=o(function(k,L,C){var I=String(k);return!I||I.length>=L?k:""+Array(L+1-I.length).join(C)+k},"m"),b={s:v,z:o(function(k){var L=-k.utcOffset(),C=Math.abs(L),I=Math.floor(C/60),M=C%60;return(L<=0?"+":"-")+v(I,2,"0")+":"+v(M,2,"0")},"z"),m:o(function k(L,C){if(L.date()<C.date())return-k(C,L);var I=12*(C.year()-L.year())+(C.month()-L.month()),M=L.clone().add(I,h),P=C-M<0,B=L.clone().add(I+(P?-1:1),h);return+(-(I+(C-M)/(P?M-B:B-M))||0)},"t"),a:o(function(k){return k<0?Math.ceil(k)||0:Math.floor(k)},"a"),p:o(function(k){return{M:h,y:d,w:u,d:l,D:p,h:s,m:a,s:i,ms:n,Q:f}[k]||String(k||"").toLowerCase().replace(/s$/,"")},"p"),u:o(function(k){return k===void 0},"u")},T="en",S={};S[T]=x;var w="$isDayjsObject",E=o(function(k){return k instanceof O||!(!k||!k[w])},"S"),_=o(function k(L,C,I){var M;if(!L)return T;if(typeof L=="string"){var P=L.toLowerCase();S[P]&&(M=P),C&&(S[P]=C,M=P);var B=L.split("-");if(!M&&B.length>1)return k(B[0])}else{var F=L.name;S[F]=L,M=F}return!I&&M&&(T=M),M||!I&&T},"t"),A=o(function(k,L){if(E(k))return k.clone();var C=typeof L=="object"?L:{};return C.date=k,C.args=arguments,new O(C)},"O"),D=b;D.l=_,D.i=E,D.w=function(k,L){return A(k,{locale:L.$L,utc:L.$u,x:L.$x,$offset:L.$offset})};var O=function(){function k(C){this.$L=_(C.locale,null,!0),this.parse(C),this.$x=this.$x||C.x||{},this[w]=!0}o(k,"M");var L=k.prototype;return L.parse=function(C){this.$d=function(I){var M=I.date,P=I.utc;if(M===null)return new Date(NaN);if(D.u(M))return new Date;if(M instanceof Date)return new Date(M);if(typeof M=="string"&&!/Z$/i.test(M)){var B=M.match(g);if(B){var F=B[2]-1||0,G=(B[7]||"0").substring(0,3);return P?new Date(Date.UTC(B[1],F,B[3]||1,B[4]||0,B[5]||0,B[6]||0,G)):new Date(B[1],F,B[3]||1,B[4]||0,B[5]||0,B[6]||0,G)}}return new Date(M)}(C),this.init()},L.init=function(){var C=this.$d;this.$y=C.getFullYear(),this.$M=C.getMonth(),this.$D=C.getDate(),this.$W=C.getDay(),this.$H=C.getHours(),this.$m=C.getMinutes(),this.$s=C.getSeconds(),this.$ms=C.getMilliseconds()},L.$utils=function(){return D},L.isValid=function(){return this.$d.toString()!==m},L.isSame=function(C,I){var M=A(C);return this.startOf(I)<=M&&M<=this.endOf(I)},L.isAfter=function(C,I){return A(C)<this.startOf(I)},L.isBefore=function(C,I){return this.endOf(I)<A(C)},L.$g=function(C,I,M){return D.u(C)?this[I]:this.set(M,C)},L.unix=function(){return Math.floor(this.valueOf()/1e3)},L.valueOf=function(){return this.$d.getTime()},L.startOf=function(C,I){var M=this,P=!!D.u(I)||I,B=D.p(C),F=o(function(Z,ce){var Q=D.w(M.$u?Date.UTC(M.$y,ce,Z):new Date(M.$y,ce,Z),M);return P?Q:Q.endOf(l)},"l"),G=o(function(Z,ce){return D.w(M.toDate()[Z].apply(M.toDate("s"),(P?[0,0,0,0]:[23,59,59,999]).slice(ce)),M)},"$"),$=this.$W,U=this.$M,K=this.$D,ne="set"+(this.$u?"UTC":"");switch(B){case d:return P?F(1,0):F(31,11);case h:return P?F(1,U):F(0,U+1);case u:var j=this.$locale().weekStart||0,le=($<j?$+7:$)-j;return F(P?K-le:K+(6-le),U);case l:case p:return G(ne+"Hours",0);case s:return G(ne+"Minutes",1);case a:return G(ne+"Seconds",2);case i:return G(ne+"Milliseconds",3);default:return this.clone()}},L.endOf=function(C){return this.startOf(C,!1)},L.$set=function(C,I){var M,P=D.p(C),B="set"+(this.$u?"UTC":""),F=(M={},M[l]=B+"Date",M[p]=B+"Date",M[h]=B+"Month",M[d]=B+"FullYear",M[s]=B+"Hours",M[a]=B+"Minutes",M[i]=B+"Seconds",M[n]=B+"Milliseconds",M)[P],G=P===l?this.$D+(I-this.$W):I;if(P===h||P===d){var $=this.clone().set(p,1);$.$d[F](G),$.init(),this.$d=$.set(p,Math.min(this.$D,$.daysInMonth())).$d}else F&&this.$d[F](G);return this.init(),this},L.set=function(C,I){return this.clone().$set(C,I)},L.get=function(C){return this[D.p(C)]()},L.add=function(C,I){var M,P=this;C=Number(C);var B=D.p(I),F=o(function(U){var K=A(P);return D.w(K.date(K.date()+Math.round(U*C)),P)},"y");if(B===h)return this.set(h,this.$M+C);if(B===d)return this.set(d,this.$y+C);if(B===l)return F(1);if(B===u)return F(7);var G=(M={},M[a]=e,M[s]=r,M[i]=t,M)[B]||1,$=this.$d.getTime()+C*G;return D.w($,this)},L.subtract=function(C,I){return this.add(-1*C,I)},L.format=function(C){var I=this,M=this.$locale();if(!this.isValid())return M.invalidDate||m;var P=C||"YYYY-MM-DDTHH:mm:ssZ",B=D.z(this),F=this.$H,G=this.$m,$=this.$M,U=M.weekdays,K=M.months,ne=M.meridiem,j=o(function(ce,Q,ee,te){return ce&&(ce[Q]||ce(I,P))||ee[Q].slice(0,te)},"h"),le=o(function(ce){return D.s(F%12||12,ce,"0")},"d"),Z=ne||function(ce,Q,ee){var te=ce<12?"AM":"PM";return ee?te.toLowerCase():te};return P.replace(y,function(ce,Q){return Q||function(ee){switch(ee){case"YY":return String(I.$y).slice(-2);case"YYYY":return D.s(I.$y,4,"0");case"M":return $+1;case"MM":return D.s($+1,2,"0");case"MMM":return j(M.monthsShort,$,K,3);case"MMMM":return j(K,$);case"D":return I.$D;case"DD":return D.s(I.$D,2,"0");case"d":return String(I.$W);case"dd":return j(M.weekdaysMin,I.$W,U,2);case"ddd":return j(M.weekdaysShort,I.$W,U,3);case"dddd":return U[I.$W];case"H":return String(F);case"HH":return D.s(F,2,"0");case"h":return le(1);case"hh":return le(2);case"a":return Z(F,G,!0);case"A":return Z(F,G,!1);case"m":return String(G);case"mm":return D.s(G,2,"0");case"s":return String(I.$s);case"ss":return D.s(I.$s,2,"0");case"SSS":return D.s(I.$ms,3,"0");case"Z":return B}return null}(ce)||B.replace(":","")})},L.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},L.diff=function(C,I,M){var P,B=this,F=D.p(I),G=A(C),$=(G.utcOffset()-this.utcOffset())*e,U=this-G,K=o(function(){return D.m(B,G)},"D");switch(F){case d:P=K()/12;break;case h:P=K();break;case f:P=K()/3;break;case u:P=(U-$)/6048e5;break;case l:P=(U-$)/864e5;break;case s:P=U/r;break;case a:P=U/e;break;case i:P=U/t;break;default:P=U}return M?P:D.a(P)},L.daysInMonth=function(){return this.endOf(h).$D},L.$locale=function(){return S[this.$L]},L.locale=function(C,I){if(!C)return this.$L;var M=this.clone(),P=_(C,I,!0);return P&&(M.$L=P),M},L.clone=function(){return D.w(this.$d,this)},L.toDate=function(){return new Date(this.valueOf())},L.toJSON=function(){return this.isValid()?this.toISOString():null},L.toISOString=function(){return this.$d.toISOString()},L.toString=function(){return this.$d.toUTCString()},k}(),R=O.prototype;return A.prototype=R,[["$ms",n],["$s",i],["$m",a],["$H",s],["$W",l],["$M",h],["$y",d],["$D",p]].forEach(function(k){R[k[1]]=function(L){return this.$g(L,k[0],k[1])}}),A.extend=function(k,L){return k.$i||(k(L,O,A),k.$i=!0),A},A.locale=_,A.isDayjs=E,A.unix=function(k){return A(1e3*k)},A.en=S[T],A.Ls=S,A.p={},A})});var G$,nu,X,Ay,ko,pt=N(()=>{"use strict";G$=ja(Y4(),1),nu={trace:0,debug:1,info:2,warn:3,error:4,fatal:5},X={trace:o((...t)=>{},"trace"),debug:o((...t)=>{},"debug"),info:o((...t)=>{},"info"),warn:o((...t)=>{},"warn"),error:o((...t)=>{},"error"),fatal:o((...t)=>{},"fatal")},Ay=o(function(t="fatal"){let e=nu.fatal;typeof t=="string"?t.toLowerCase()in nu&&(e=nu[t]):typeof t=="number"&&(e=t),X.trace=()=>{},X.debug=()=>{},X.info=()=>{},X.warn=()=>{},X.error=()=>{},X.fatal=()=>{},e<=nu.fatal&&(X.fatal=console.error?console.error.bind(console,ko("FATAL"),"color: orange"):console.log.bind(console,"\x1B[35m",ko("FATAL"))),e<=nu.error&&(X.error=console.error?console.error.bind(console,ko("ERROR"),"color: orange"):console.log.bind(console,"\x1B[31m",ko("ERROR"))),e<=nu.warn&&(X.warn=console.warn?console.warn.bind(console,ko("WARN"),"color: orange"):console.log.bind(console,"\x1B[33m",ko("WARN"))),e<=nu.info&&(X.info=console.info?console.info.bind(console,ko("INFO"),"color: lightblue"):console.log.bind(console,"\x1B[34m",ko("INFO"))),e<=nu.debug&&(X.debug=console.debug?console.debug.bind(console,ko("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",ko("DEBUG"))),e<=nu.trace&&(X.trace=console.debug?console.debug.bind(console,ko("TRACE"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",ko("TRACE")))},"setLogLevel"),ko=o(t=>`%c${(0,G$.default)().format("ss.SSS")} : ${t} : `,"format")});var X4,z$,V$=N(()=>{"use strict";X4={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:o(t=>t>=255?255:t<0?0:t,"r"),g:o(t=>t>=255?255:t<0?0:t,"g"),b:o(t=>t>=255?255:t<0?0:t,"b"),h:o(t=>t%360,"h"),s:o(t=>t>=100?100:t<0?0:t,"s"),l:o(t=>t>=100?100:t<0?0:t,"l"),a:o(t=>t>=1?1:t<0?0:t,"a")},toLinear:o(t=>{let e=t/255;return t>.03928?Math.pow((e+.055)/1.055,2.4):e/12.92},"toLinear"),hue2rgb:o((t,e,r)=>(r<0&&(r+=1),r>1&&(r-=1),r<.16666666666666666?t+(e-t)*6*r:r<.5?e:r<.6666666666666666?t+(e-t)*(.6666666666666666-r)*6:t),"hue2rgb"),hsl2rgb:o(({h:t,s:e,l:r},n)=>{if(!e)return r*2.55;t/=360,e/=100,r/=100;let i=r<.5?r*(1+e):r+e-r*e,a=2*r-i;switch(n){case"r":return X4.hue2rgb(a,i,t+.3333333333333333)*255;case"g":return X4.hue2rgb(a,i,t)*255;case"b":return X4.hue2rgb(a,i,t-.3333333333333333)*255}},"hsl2rgb"),rgb2hsl:o(({r:t,g:e,b:r},n)=>{t/=255,e/=255,r/=255;let i=Math.max(t,e,r),a=Math.min(t,e,r),s=(i+a)/2;if(n==="l")return s*100;if(i===a)return 0;let l=i-a,u=s>.5?l/(2-i-a):l/(i+a);if(n==="s")return u*100;switch(i){case t:return((e-r)/l+(e<r?6:0))*60;case e:return((r-t)/l+2)*60;case r:return((t-e)/l+4)*60;default:return-1}},"rgb2hsl")},z$=X4});var Nbe,U$,H$=N(()=>{"use strict";Nbe={clamp:o((t,e,r)=>e>r?Math.min(e,Math.max(r,t)):Math.min(r,Math.max(e,t)),"clamp"),round:o(t=>Math.round(t*1e10)/1e10,"round")},U$=Nbe});var Mbe,W$,q$=N(()=>{"use strict";Mbe={dec2hex:o(t=>{let e=Math.round(t).toString(16);return e.length>1?e:`0${e}`},"dec2hex")},W$=Mbe});var Ibe,jt,Yl=N(()=>{"use strict";V$();H$();q$();Ibe={channel:z$,lang:U$,unit:W$},jt=Ibe});var iu,Ii,_y=N(()=>{"use strict";Yl();iu={};for(let t=0;t<=255;t++)iu[t]=jt.unit.dec2hex(t);Ii={ALL:0,RGB:1,HSL:2}});var s7,Y$,X$=N(()=>{"use strict";_y();s7=class{static{o(this,"Type")}constructor(){this.type=Ii.ALL}get(){return this.type}set(e){if(this.type&&this.type!==e)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=e}reset(){this.type=Ii.ALL}is(e){return this.type===e}},Y$=s7});var o7,j$,K$=N(()=>{"use strict";Yl();X$();_y();o7=class{static{o(this,"Channels")}constructor(e,r){this.color=r,this.changed=!1,this.data=e,this.type=new Y$}set(e,r){return this.color=r,this.changed=!1,this.data=e,this.type.type=Ii.ALL,this}_ensureHSL(){let e=this.data,{h:r,s:n,l:i}=e;r===void 0&&(e.h=jt.channel.rgb2hsl(e,"h")),n===void 0&&(e.s=jt.channel.rgb2hsl(e,"s")),i===void 0&&(e.l=jt.channel.rgb2hsl(e,"l"))}_ensureRGB(){let e=this.data,{r,g:n,b:i}=e;r===void 0&&(e.r=jt.channel.hsl2rgb(e,"r")),n===void 0&&(e.g=jt.channel.hsl2rgb(e,"g")),i===void 0&&(e.b=jt.channel.hsl2rgb(e,"b"))}get r(){let e=this.data,r=e.r;return!this.type.is(Ii.HSL)&&r!==void 0?r:(this._ensureHSL(),jt.channel.hsl2rgb(e,"r"))}get g(){let e=this.data,r=e.g;return!this.type.is(Ii.HSL)&&r!==void 0?r:(this._ensureHSL(),jt.channel.hsl2rgb(e,"g"))}get b(){let e=this.data,r=e.b;return!this.type.is(Ii.HSL)&&r!==void 0?r:(this._ensureHSL(),jt.channel.hsl2rgb(e,"b"))}get h(){let e=this.data,r=e.h;return!this.type.is(Ii.RGB)&&r!==void 0?r:(this._ensureRGB(),jt.channel.rgb2hsl(e,"h"))}get s(){let e=this.data,r=e.s;return!this.type.is(Ii.RGB)&&r!==void 0?r:(this._ensureRGB(),jt.channel.rgb2hsl(e,"s"))}get l(){let e=this.data,r=e.l;return!this.type.is(Ii.RGB)&&r!==void 0?r:(this._ensureRGB(),jt.channel.rgb2hsl(e,"l"))}get a(){return this.data.a}set r(e){this.type.set(Ii.RGB),this.changed=!0,this.data.r=e}set g(e){this.type.set(Ii.RGB),this.changed=!0,this.data.g=e}set b(e){this.type.set(Ii.RGB),this.changed=!0,this.data.b=e}set h(e){this.type.set(Ii.HSL),this.changed=!0,this.data.h=e}set s(e){this.type.set(Ii.HSL),this.changed=!0,this.data.s=e}set l(e){this.type.set(Ii.HSL),this.changed=!0,this.data.l=e}set a(e){this.changed=!0,this.data.a=e}},j$=o7});var Obe,ch,Dy=N(()=>{"use strict";K$();Obe=new j$({r:0,g:0,b:0,a:0},"transparent"),ch=Obe});var Q$,nd,l7=N(()=>{"use strict";Dy();_y();Q$={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:o(t=>{if(t.charCodeAt(0)!==35)return;let e=t.match(Q$.re);if(!e)return;let r=e[1],n=parseInt(r,16),i=r.length,a=i%4===0,s=i>4,l=s?1:17,u=s?8:4,h=a?0:-1,f=s?255:15;return ch.set({r:(n>>u*(h+3)&f)*l,g:(n>>u*(h+2)&f)*l,b:(n>>u*(h+1)&f)*l,a:a?(n&f)*l/255:1},t)},"parse"),stringify:o(t=>{let{r:e,g:r,b:n,a:i}=t;return i<1?`#${iu[Math.round(e)]}${iu[Math.round(r)]}${iu[Math.round(n)]}${iu[Math.round(i*255)]}`:`#${iu[Math.round(e)]}${iu[Math.round(r)]}${iu[Math.round(n)]}`},"stringify")},nd=Q$});var j4,Ly,Z$=N(()=>{"use strict";Yl();Dy();j4={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:o(t=>{let e=t.match(j4.hueRe);if(e){let[,r,n]=e;switch(n){case"grad":return jt.channel.clamp.h(parseFloat(r)*.9);case"rad":return jt.channel.clamp.h(parseFloat(r)*180/Math.PI);case"turn":return jt.channel.clamp.h(parseFloat(r)*360)}}return jt.channel.clamp.h(parseFloat(t))},"_hue2deg"),parse:o(t=>{let e=t.charCodeAt(0);if(e!==104&&e!==72)return;let r=t.match(j4.re);if(!r)return;let[,n,i,a,s,l]=r;return ch.set({h:j4._hue2deg(n),s:jt.channel.clamp.s(parseFloat(i)),l:jt.channel.clamp.l(parseFloat(a)),a:s?jt.channel.clamp.a(l?parseFloat(s)/100:parseFloat(s)):1},t)},"parse"),stringify:o(t=>{let{h:e,s:r,l:n,a:i}=t;return i<1?`hsla(${jt.lang.round(e)}, ${jt.lang.round(r)}%, ${jt.lang.round(n)}%, ${i})`:`hsl(${jt.lang.round(e)}, ${jt.lang.round(r)}%, ${jt.lang.round(n)}%)`},"stringify")},Ly=j4});var K4,c7,J$=N(()=>{"use strict";l7();K4={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:o(t=>{t=t.toLowerCase();let e=K4.colors[t];if(e)return nd.parse(e)},"parse"),stringify:o(t=>{let e=nd.stringify(t);for(let r in K4.colors)if(K4.colors[r]===e)return r},"stringify")},c7=K4});var eG,Ry,tG=N(()=>{"use strict";Yl();Dy();eG={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:o(t=>{let e=t.charCodeAt(0);if(e!==114&&e!==82)return;let r=t.match(eG.re);if(!r)return;let[,n,i,a,s,l,u,h,f]=r;return ch.set({r:jt.channel.clamp.r(i?parseFloat(n)*2.55:parseFloat(n)),g:jt.channel.clamp.g(s?parseFloat(a)*2.55:parseFloat(a)),b:jt.channel.clamp.b(u?parseFloat(l)*2.55:parseFloat(l)),a:h?jt.channel.clamp.a(f?parseFloat(h)/100:parseFloat(h)):1},t)},"parse"),stringify:o(t=>{let{r:e,g:r,b:n,a:i}=t;return i<1?`rgba(${jt.lang.round(e)}, ${jt.lang.round(r)}, ${jt.lang.round(n)}, ${jt.lang.round(i)})`:`rgb(${jt.lang.round(e)}, ${jt.lang.round(r)}, ${jt.lang.round(n)})`},"stringify")},Ry=eG});var Pbe,Oi,au=N(()=>{"use strict";l7();Z$();J$();tG();_y();Pbe={format:{keyword:c7,hex:nd,rgb:Ry,rgba:Ry,hsl:Ly,hsla:Ly},parse:o(t=>{if(typeof t!="string")return t;let e=nd.parse(t)||Ry.parse(t)||Ly.parse(t)||c7.parse(t);if(e)return e;throw new Error(`Unsupported color format: "${t}"`)},"parse"),stringify:o(t=>!t.changed&&t.color?t.color:t.type.is(Ii.HSL)||t.data.r===void 0?Ly.stringify(t):t.a<1||!Number.isInteger(t.r)||!Number.isInteger(t.g)||!Number.isInteger(t.b)?Ry.stringify(t):nd.stringify(t),"stringify")},Oi=Pbe});var Bbe,Q4,u7=N(()=>{"use strict";Yl();au();Bbe=o((t,e)=>{let r=Oi.parse(t);for(let n in e)r[n]=jt.channel.clamp[n](e[n]);return Oi.stringify(r)},"change"),Q4=Bbe});var Fbe,Ka,h7=N(()=>{"use strict";Yl();Dy();au();u7();Fbe=o((t,e,r=0,n=1)=>{if(typeof t!="number")return Q4(t,{a:e});let i=ch.set({r:jt.channel.clamp.r(t),g:jt.channel.clamp.g(e),b:jt.channel.clamp.b(r),a:jt.channel.clamp.a(n)});return Oi.stringify(i)},"rgba"),Ka=Fbe});var $be,id,rG=N(()=>{"use strict";Yl();au();$be=o((t,e)=>jt.lang.round(Oi.parse(t)[e]),"channel"),id=$be});var Gbe,nG,iG=N(()=>{"use strict";Yl();au();Gbe=o(t=>{let{r:e,g:r,b:n}=Oi.parse(t),i=.2126*jt.channel.toLinear(e)+.7152*jt.channel.toLinear(r)+.0722*jt.channel.toLinear(n);return jt.lang.round(i)},"luminance"),nG=Gbe});var zbe,aG,sG=N(()=>{"use strict";iG();zbe=o(t=>nG(t)>=.5,"isLight"),aG=zbe});var Vbe,sa,oG=N(()=>{"use strict";sG();Vbe=o(t=>!aG(t),"isDark"),sa=Vbe});var Ube,Z4,f7=N(()=>{"use strict";Yl();au();Ube=o((t,e,r)=>{let n=Oi.parse(t),i=n[e],a=jt.channel.clamp[e](i+r);return i!==a&&(n[e]=a),Oi.stringify(n)},"adjustChannel"),Z4=Ube});var Hbe,Lt,lG=N(()=>{"use strict";f7();Hbe=o((t,e)=>Z4(t,"l",e),"lighten"),Lt=Hbe});var Wbe,Ot,cG=N(()=>{"use strict";f7();Wbe=o((t,e)=>Z4(t,"l",-e),"darken"),Ot=Wbe});var qbe,Ie,uG=N(()=>{"use strict";au();u7();qbe=o((t,e)=>{let r=Oi.parse(t),n={};for(let i in e)e[i]&&(n[i]=r[i]+e[i]);return Q4(t,n)},"adjust"),Ie=qbe});var Ybe,hG,fG=N(()=>{"use strict";au();h7();Ybe=o((t,e,r=50)=>{let{r:n,g:i,b:a,a:s}=Oi.parse(t),{r:l,g:u,b:h,a:f}=Oi.parse(e),d=r/100,p=d*2-1,m=s-f,y=((p*m===-1?p:(p+m)/(1+p*m))+1)/2,x=1-y,v=n*y+l*x,b=i*y+u*x,T=a*y+h*x,S=s*d+f*(1-d);return Ka(v,b,T,S)},"mix"),hG=Ybe});var Xbe,wt,dG=N(()=>{"use strict";au();fG();Xbe=o((t,e=100)=>{let r=Oi.parse(t);return r.r=255-r.r,r.g=255-r.g,r.b=255-r.b,hG(r,t,e)},"invert"),wt=Xbe});var pG=N(()=>{"use strict";h7();rG();oG();lG();cG();uG();dG()});var Qs=N(()=>{"use strict";pG()});var uh,hh,Ny=N(()=>{"use strict";uh="#ffffff",hh="#f2f2f2"});var Ei,m0=N(()=>{"use strict";Qs();Ei=o((t,e)=>e?Ie(t,{s:-40,l:10}):Ie(t,{s:-40,l:-10}),"mkBorder")});var p7,mG,gG=N(()=>{"use strict";Qs();Ny();m0();p7=class{static{o(this,"Theme")}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(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||Ie(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||Ie(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||Ei(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||Ei(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||Ei(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||Ei(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||wt(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||wt(this.tertiaryColor),this.lineColor=this.lineColor||wt(this.background),this.arrowheadColor=this.arrowheadColor||wt(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?Ot(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||this.actorBorder,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||Ot(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||wt(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||Lt(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.vertLineColor=this.vertLineColor||"navy",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.darkMode?(this.rowOdd=this.rowOdd||Ot(this.mainBkg,5)||"#ffffff",this.rowEven=this.rowEven||Ot(this.mainBkg,10)):(this.rowOdd=this.rowOdd||Lt(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||Lt(this.mainBkg,5)),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||Ie(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Ie(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Ie(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Ie(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Ie(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Ie(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||Ie(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Ie(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Ie(this.primaryColor,{h:330}),this.darkMode)for(let r=0;r<this.THEME_COLOR_LIMIT;r++)this["cScale"+r]=Ot(this["cScale"+r],75);else for(let r=0;r<this.THEME_COLOR_LIMIT;r++)this["cScale"+r]=Ot(this["cScale"+r],25);for(let r=0;r<this.THEME_COLOR_LIMIT;r++)this["cScaleInv"+r]=this["cScaleInv"+r]||wt(this["cScale"+r]);for(let r=0;r<this.THEME_COLOR_LIMIT;r++)this.darkMode?this["cScalePeer"+r]=this["cScalePeer"+r]||Lt(this["cScale"+r],10):this["cScalePeer"+r]=this["cScalePeer"+r]||Ot(this["cScale"+r],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let r=0;r<this.THEME_COLOR_LIMIT;r++)this["cScaleLabel"+r]=this["cScaleLabel"+r]||this.scaleLabelColor;let e=this.darkMode?-4:-1;for(let r=0;r<5;r++)this["surface"+r]=this["surface"+r]||Ie(this.mainBkg,{h:180,s:-15,l:e*(5+r*3)}),this["surfacePeer"+r]=this["surfacePeer"+r]||Ie(this.mainBkg,{h:180,s:-15,l:e*(8+r*3)});this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||this.primaryColor,this.fillType1=this.fillType1||this.secondaryColor,this.fillType2=this.fillType2||Ie(this.primaryColor,{h:64}),this.fillType3=this.fillType3||Ie(this.secondaryColor,{h:64}),this.fillType4=this.fillType4||Ie(this.primaryColor,{h:-64}),this.fillType5=this.fillType5||Ie(this.secondaryColor,{h:-64}),this.fillType6=this.fillType6||Ie(this.primaryColor,{h:128}),this.fillType7=this.fillType7||Ie(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||Ie(this.primaryColor,{l:-10}),this.pie5=this.pie5||Ie(this.secondaryColor,{l:-10}),this.pie6=this.pie6||Ie(this.tertiaryColor,{l:-10}),this.pie7=this.pie7||Ie(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||Ie(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||Ie(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||Ie(this.primaryColor,{h:60,l:-20}),this.pie11=this.pie11||Ie(this.primaryColor,{h:-60,l:-20}),this.pie12=this.pie12||Ie(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.radar={axisColor:this.radar?.axisColor||this.lineColor,axisStrokeWidth:this.radar?.axisStrokeWidth||2,axisLabelFontSize:this.radar?.axisLabelFontSize||12,curveOpacity:this.radar?.curveOpacity||.5,curveStrokeWidth:this.radar?.curveStrokeWidth||2,graticuleColor:this.radar?.graticuleColor||"#DEDEDE",graticuleStrokeWidth:this.radar?.graticuleStrokeWidth||1,graticuleOpacity:this.radar?.graticuleOpacity||.3,legendBoxSize:this.radar?.legendBoxSize||12,legendFontSize:this.radar?.legendFontSize||12},this.archEdgeColor=this.archEdgeColor||"#777",this.archEdgeArrowColor=this.archEdgeArrowColor||"#777",this.archEdgeWidth=this.archEdgeWidth||"3",this.archGroupBorderColor=this.archGroupBorderColor||"#000",this.archGroupBorderWidth=this.archGroupBorderWidth||"2px",this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||Ie(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||Ie(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||Ie(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||Ie(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||Ie(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||Ie(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||sa(this.quadrant1Fill)?Lt(this.quadrant1Fill):Ot(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:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.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?Ot(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||Ie(this.primaryColor,{h:-30}),this.git4=this.git4||Ie(this.primaryColor,{h:-60}),this.git5=this.git5||Ie(this.primaryColor,{h:-90}),this.git6=this.git6||Ie(this.primaryColor,{h:60}),this.git7=this.git7||Ie(this.primaryColor,{h:120}),this.darkMode?(this.git0=Lt(this.git0,25),this.git1=Lt(this.git1,25),this.git2=Lt(this.git2,25),this.git3=Lt(this.git3,25),this.git4=Lt(this.git4,25),this.git5=Lt(this.git5,25),this.git6=Lt(this.git6,25),this.git7=Lt(this.git7,25)):(this.git0=Ot(this.git0,25),this.git1=Ot(this.git1,25),this.git2=Ot(this.git2,25),this.git3=Ot(this.git3,25),this.git4=Ot(this.git4,25),this.git5=Ot(this.git5,25),this.git6=Ot(this.git6,25),this.git7=Ot(this.git7,25)),this.gitInv0=this.gitInv0||wt(this.git0),this.gitInv1=this.gitInv1||wt(this.git1),this.gitInv2=this.gitInv2||wt(this.git2),this.gitInv3=this.gitInv3||wt(this.git3),this.gitInv4=this.gitInv4||wt(this.git4),this.gitInv5=this.gitInv5||wt(this.git5),this.gitInv6=this.gitInv6||wt(this.git6),this.gitInv7=this.gitInv7||wt(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||uh,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||hh}calculate(e){if(typeof e!="object"){this.updateColors();return}let r=Object.keys(e);r.forEach(n=>{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},mG=o(t=>{let e=new p7;return e.calculate(t),e},"getThemeVariables")});var m7,yG,vG=N(()=>{"use strict";Qs();m0();m7=class{static{o(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Lt(this.primaryColor,16),this.tertiaryColor=Ie(this.primaryColor,{h:-160}),this.primaryBorderColor=wt(this.background),this.secondaryBorderColor=Ei(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Ei(this.tertiaryColor,this.darkMode),this.primaryTextColor=wt(this.primaryColor),this.secondaryTextColor=wt(this.secondaryColor),this.tertiaryTextColor=wt(this.tertiaryColor),this.lineColor=wt(this.background),this.textColor=wt(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Lt(wt("#323D47"),10),this.lineColor="calculated",this.border1="#ccc",this.border2=Ka(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=Ot("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=Ot(this.sectionBkgColor,10),this.taskBorderColor=Ka(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=Ka(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.vertLineColor="#00BFFF",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd=this.rowOdd||Lt(this.mainBkg,5)||"#ffffff",this.rowEven=this.rowEven||Ot(this.mainBkg,10),this.labelColor="calculated",this.errorBkgColor="#a44141",this.errorTextColor="#ddd"}updateColors(){this.secondBkg=Lt(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=Lt(this.labelBackground,25),this.actorBorder=this.border1,this.actorBkg=this.mainBkg,this.actorTextColor=this.mainContrastColor,this.actorLineColor=this.actorBorder,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=Lt(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.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,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=Ie(this.primaryColor,{h:64}),this.fillType3=Ie(this.secondaryColor,{h:64}),this.fillType4=Ie(this.primaryColor,{h:-64}),this.fillType5=Ie(this.secondaryColor,{h:-64}),this.fillType6=Ie(this.primaryColor,{h:128}),this.fillType7=Ie(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||Ie(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Ie(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Ie(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Ie(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Ie(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Ie(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Ie(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Ie(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Ie(this.primaryColor,{h:330});for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleInv"+e]=this["cScaleInv"+e]||wt(this["cScale"+e]);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScalePeer"+e]=this["cScalePeer"+e]||Lt(this["cScale"+e],10);for(let e=0;e<5;e++)this["surface"+e]=this["surface"+e]||Ie(this.mainBkg,{h:30,s:-30,l:-(-10+e*4)}),this["surfacePeer"+e]=this["surfacePeer"+e]||Ie(this.mainBkg,{h:30,s:-30,l:-(-7+e*4)});this.scaleLabelColor=this.scaleLabelColor||(this.darkMode?"black":this.labelTextColor);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleLabel"+e]=this["cScaleLabel"+e]||this.scaleLabelColor;for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["pie"+e]=this["cScale"+e];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||Ie(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||Ie(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||Ie(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||Ie(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||Ie(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||Ie(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||sa(this.quadrant1Fill)?Lt(this.quadrant1Fill):Ot(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:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#3498db,#2ecc71,#e74c3c,#f1c40f,#bdc3c7,#ffffff,#34495e,#9b59b6,#1abc9c,#e67e22"},this.packet={startByteColor:this.primaryTextColor,endByteColor:this.primaryTextColor,labelColor:this.primaryTextColor,titleColor:this.primaryTextColor,blockStrokeColor:this.primaryTextColor,blockFillColor:this.background},this.radar={axisColor:this.radar?.axisColor||this.lineColor,axisStrokeWidth:this.radar?.axisStrokeWidth||2,axisLabelFontSize:this.radar?.axisLabelFontSize||12,curveOpacity:this.radar?.curveOpacity||.5,curveStrokeWidth:this.radar?.curveStrokeWidth||2,graticuleColor:this.radar?.graticuleColor||"#DEDEDE",graticuleStrokeWidth:this.radar?.graticuleStrokeWidth||1,graticuleOpacity:this.radar?.graticuleOpacity||.3,legendBoxSize:this.radar?.legendBoxSize||12,legendFontSize:this.radar?.legendFontSize||12},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?Ot(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=Lt(this.secondaryColor,20),this.git1=Lt(this.pie2||this.secondaryColor,20),this.git2=Lt(this.pie3||this.tertiaryColor,20),this.git3=Lt(this.pie4||Ie(this.primaryColor,{h:-30}),20),this.git4=Lt(this.pie5||Ie(this.primaryColor,{h:-60}),20),this.git5=Lt(this.pie6||Ie(this.primaryColor,{h:-90}),10),this.git6=Lt(this.pie7||Ie(this.primaryColor,{h:60}),10),this.git7=Lt(this.pie8||Ie(this.primaryColor,{h:120}),20),this.gitInv0=this.gitInv0||wt(this.git0),this.gitInv1=this.gitInv1||wt(this.git1),this.gitInv2=this.gitInv2||wt(this.git2),this.gitInv3=this.gitInv3||wt(this.git3),this.gitInv4=this.gitInv4||wt(this.git4),this.gitInv5=this.gitInv5||wt(this.git5),this.gitInv6=this.gitInv6||wt(this.git6),this.gitInv7=this.gitInv7||wt(this.git7),this.gitBranchLabel0=this.gitBranchLabel0||wt(this.labelTextColor),this.gitBranchLabel1=this.gitBranchLabel1||this.labelTextColor,this.gitBranchLabel2=this.gitBranchLabel2||this.labelTextColor,this.gitBranchLabel3=this.gitBranchLabel3||wt(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||Lt(this.background,12),this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||Lt(this.background,2),this.nodeBorder=this.nodeBorder||"#999"}calculate(e){if(typeof e!="object"){this.updateColors();return}let r=Object.keys(e);r.forEach(n=>{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},yG=o(t=>{let e=new m7;return e.calculate(t),e},"getThemeVariables")});var g7,fh,My=N(()=>{"use strict";Qs();m0();Ny();g7=class{static{o(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=Ie(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=Ie(this.primaryColor,{h:-160}),this.primaryBorderColor=Ei(this.primaryColor,this.darkMode),this.secondaryBorderColor=Ei(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Ei(this.tertiaryColor,this.darkMode),this.primaryTextColor=wt(this.primaryColor),this.secondaryTextColor=wt(this.secondaryColor),this.tertiaryTextColor=wt(this.tertiaryColor),this.lineColor=wt(this.background),this.textColor=wt(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="rgba(232,232,232, 0.8)",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="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="#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.vertLineColor="calculated",this.sectionBkgColor=Ka(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.vertLineColor="navy",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd="calculated",this.rowEven="calculated",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.updateColors()}updateColors(){this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||Ie(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Ie(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Ie(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Ie(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Ie(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Ie(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Ie(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Ie(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Ie(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||Ot(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||Ot(this.tertiaryColor,40);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScale"+e]=Ot(this["cScale"+e],10),this["cScalePeer"+e]=this["cScalePeer"+e]||Ot(this["cScale"+e],25);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleInv"+e]=this["cScaleInv"+e]||Ie(this["cScale"+e],{h:180});for(let e=0;e<5;e++)this["surface"+e]=this["surface"+e]||Ie(this.mainBkg,{h:30,l:-(5+e*5)}),this["surfacePeer"+e]=this["surfacePeer"+e]||Ie(this.mainBkg,{h:30,l:-(7+e*5)});if(this.scaleLabelColor=this.scaleLabelColor!=="calculated"&&this.scaleLabelColor?this.scaleLabelColor:this.labelTextColor,this.labelTextColor!=="calculated"){this.cScaleLabel0=this.cScaleLabel0||wt(this.labelTextColor),this.cScaleLabel3=this.cScaleLabel3||wt(this.labelTextColor);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleLabel"+e]=this["cScaleLabel"+e]||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=Lt(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.actorLineColor=this.actorBorder,this.taskTextColor=this.taskTextLightColor,this.taskTextOutsideColor=this.taskTextDarkColor,this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.rowOdd=this.rowOdd||Lt(this.primaryColor,75)||"#ffffff",this.rowEven=this.rowEven||Lt(this.primaryColor,1),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=Ie(this.primaryColor,{h:64}),this.fillType3=Ie(this.secondaryColor,{h:64}),this.fillType4=Ie(this.primaryColor,{h:-64}),this.fillType5=Ie(this.secondaryColor,{h:-64}),this.fillType6=Ie(this.primaryColor,{h:128}),this.fillType7=Ie(this.secondaryColor,{h:128}),this.pie1=this.pie1||this.primaryColor,this.pie2=this.pie2||this.secondaryColor,this.pie3=this.pie3||Ie(this.tertiaryColor,{l:-40}),this.pie4=this.pie4||Ie(this.primaryColor,{l:-10}),this.pie5=this.pie5||Ie(this.secondaryColor,{l:-30}),this.pie6=this.pie6||Ie(this.tertiaryColor,{l:-20}),this.pie7=this.pie7||Ie(this.primaryColor,{h:60,l:-20}),this.pie8=this.pie8||Ie(this.primaryColor,{h:-60,l:-40}),this.pie9=this.pie9||Ie(this.primaryColor,{h:120,l:-40}),this.pie10=this.pie10||Ie(this.primaryColor,{h:60,l:-40}),this.pie11=this.pie11||Ie(this.primaryColor,{h:-90,l:-40}),this.pie12=this.pie12||Ie(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||Ie(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||Ie(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||Ie(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||Ie(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||Ie(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||Ie(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||sa(this.quadrant1Fill)?Lt(this.quadrant1Fill):Ot(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.radar={axisColor:this.radar?.axisColor||this.lineColor,axisStrokeWidth:this.radar?.axisStrokeWidth||2,axisLabelFontSize:this.radar?.axisLabelFontSize||12,curveOpacity:this.radar?.curveOpacity||.5,curveStrokeWidth:this.radar?.curveStrokeWidth||2,graticuleColor:this.radar?.graticuleColor||"#DEDEDE",graticuleStrokeWidth:this.radar?.graticuleStrokeWidth||1,graticuleOpacity:this.radar?.graticuleOpacity||.3,legendBoxSize:this.radar?.legendBoxSize||12,legendFontSize:this.radar?.legendFontSize||12},this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.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||Ie(this.primaryColor,{h:-30}),this.git4=this.git4||Ie(this.primaryColor,{h:-60}),this.git5=this.git5||Ie(this.primaryColor,{h:-90}),this.git6=this.git6||Ie(this.primaryColor,{h:60}),this.git7=this.git7||Ie(this.primaryColor,{h:120}),this.darkMode?(this.git0=Lt(this.git0,25),this.git1=Lt(this.git1,25),this.git2=Lt(this.git2,25),this.git3=Lt(this.git3,25),this.git4=Lt(this.git4,25),this.git5=Lt(this.git5,25),this.git6=Lt(this.git6,25),this.git7=Lt(this.git7,25)):(this.git0=Ot(this.git0,25),this.git1=Ot(this.git1,25),this.git2=Ot(this.git2,25),this.git3=Ot(this.git3,25),this.git4=Ot(this.git4,25),this.git5=Ot(this.git5,25),this.git6=Ot(this.git6,25),this.git7=Ot(this.git7,25)),this.gitInv0=this.gitInv0||Ot(wt(this.git0),25),this.gitInv1=this.gitInv1||wt(this.git1),this.gitInv2=this.gitInv2||wt(this.git2),this.gitInv3=this.gitInv3||wt(this.git3),this.gitInv4=this.gitInv4||wt(this.git4),this.gitInv5=this.gitInv5||wt(this.git5),this.gitInv6=this.gitInv6||wt(this.git6),this.gitInv7=this.gitInv7||wt(this.git7),this.gitBranchLabel0=this.gitBranchLabel0||wt(this.labelTextColor),this.gitBranchLabel1=this.gitBranchLabel1||this.labelTextColor,this.gitBranchLabel2=this.gitBranchLabel2||this.labelTextColor,this.gitBranchLabel3=this.gitBranchLabel3||wt(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||uh,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||hh}calculate(e){if(Object.keys(this).forEach(n=>{this[n]==="calculated"&&(this[n]=void 0)}),typeof e!="object"){this.updateColors();return}let r=Object.keys(e);r.forEach(n=>{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},fh=o(t=>{let e=new g7;return e.calculate(t),e},"getThemeVariables")});var y7,xG,bG=N(()=>{"use strict";Qs();Ny();m0();y7=class{static{o(this,"Theme")}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=Lt("#cde498",10),this.primaryBorderColor=Ei(this.primaryColor,this.darkMode),this.secondaryBorderColor=Ei(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Ei(this.tertiaryColor,this.darkMode),this.primaryTextColor=wt(this.primaryColor),this.secondaryTextColor=wt(this.secondaryColor),this.tertiaryTextColor=wt(this.primaryColor),this.lineColor=wt(this.background),this.textColor=wt(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="calculated",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.vertLineColor="#00BFFF",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.actorBorder=Ot(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.actorLineColor=this.actorBorder,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||Ie(this.primaryColor,{h:30}),this.cScale4=this.cScale4||Ie(this.primaryColor,{h:60}),this.cScale5=this.cScale5||Ie(this.primaryColor,{h:90}),this.cScale6=this.cScale6||Ie(this.primaryColor,{h:120}),this.cScale7=this.cScale7||Ie(this.primaryColor,{h:150}),this.cScale8=this.cScale8||Ie(this.primaryColor,{h:210}),this.cScale9=this.cScale9||Ie(this.primaryColor,{h:270}),this.cScale10=this.cScale10||Ie(this.primaryColor,{h:300}),this.cScale11=this.cScale11||Ie(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||Ot(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||Ot(this.tertiaryColor,40);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScale"+e]=Ot(this["cScale"+e],10),this["cScalePeer"+e]=this["cScalePeer"+e]||Ot(this["cScale"+e],25);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleInv"+e]=this["cScaleInv"+e]||Ie(this["cScale"+e],{h:180});this.scaleLabelColor=this.scaleLabelColor!=="calculated"&&this.scaleLabelColor?this.scaleLabelColor:this.labelTextColor;for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleLabel"+e]=this["cScaleLabel"+e]||this.scaleLabelColor;for(let e=0;e<5;e++)this["surface"+e]=this["surface"+e]||Ie(this.mainBkg,{h:30,s:-30,l:-(5+e*5)}),this["surfacePeer"+e]=this["surfacePeer"+e]||Ie(this.mainBkg,{h:30,s:-30,l:-(8+e*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.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.rowOdd=this.rowOdd||Lt(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||Lt(this.mainBkg,20),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=Ie(this.primaryColor,{h:64}),this.fillType3=Ie(this.secondaryColor,{h:64}),this.fillType4=Ie(this.primaryColor,{h:-64}),this.fillType5=Ie(this.secondaryColor,{h:-64}),this.fillType6=Ie(this.primaryColor,{h:128}),this.fillType7=Ie(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||Ie(this.primaryColor,{l:-30}),this.pie5=this.pie5||Ie(this.secondaryColor,{l:-30}),this.pie6=this.pie6||Ie(this.tertiaryColor,{h:40,l:-40}),this.pie7=this.pie7||Ie(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||Ie(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||Ie(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||Ie(this.primaryColor,{h:60,l:-50}),this.pie11=this.pie11||Ie(this.primaryColor,{h:-60,l:-50}),this.pie12=this.pie12||Ie(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||Ie(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||Ie(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||Ie(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||Ie(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||Ie(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||Ie(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||sa(this.quadrant1Fill)?Lt(this.quadrant1Fill):Ot(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.packet={startByteColor:this.primaryTextColor,endByteColor:this.primaryTextColor,labelColor:this.primaryTextColor,titleColor:this.primaryTextColor,blockStrokeColor:this.primaryTextColor,blockFillColor:this.mainBkg},this.radar={axisColor:this.radar?.axisColor||this.lineColor,axisStrokeWidth:this.radar?.axisStrokeWidth||2,axisLabelFontSize:this.radar?.axisLabelFontSize||12,curveOpacity:this.radar?.curveOpacity||.5,curveStrokeWidth:this.radar?.curveStrokeWidth||2,graticuleColor:this.radar?.graticuleColor||"#DEDEDE",graticuleStrokeWidth:this.radar?.graticuleStrokeWidth||1,graticuleOpacity:this.radar?.graticuleOpacity||.3,legendBoxSize:this.radar?.legendBoxSize||12,legendFontSize:this.radar?.legendFontSize||12},this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.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||Ie(this.primaryColor,{h:-30}),this.git4=this.git4||Ie(this.primaryColor,{h:-60}),this.git5=this.git5||Ie(this.primaryColor,{h:-90}),this.git6=this.git6||Ie(this.primaryColor,{h:60}),this.git7=this.git7||Ie(this.primaryColor,{h:120}),this.darkMode?(this.git0=Lt(this.git0,25),this.git1=Lt(this.git1,25),this.git2=Lt(this.git2,25),this.git3=Lt(this.git3,25),this.git4=Lt(this.git4,25),this.git5=Lt(this.git5,25),this.git6=Lt(this.git6,25),this.git7=Lt(this.git7,25)):(this.git0=Ot(this.git0,25),this.git1=Ot(this.git1,25),this.git2=Ot(this.git2,25),this.git3=Ot(this.git3,25),this.git4=Ot(this.git4,25),this.git5=Ot(this.git5,25),this.git6=Ot(this.git6,25),this.git7=Ot(this.git7,25)),this.gitInv0=this.gitInv0||wt(this.git0),this.gitInv1=this.gitInv1||wt(this.git1),this.gitInv2=this.gitInv2||wt(this.git2),this.gitInv3=this.gitInv3||wt(this.git3),this.gitInv4=this.gitInv4||wt(this.git4),this.gitInv5=this.gitInv5||wt(this.git5),this.gitInv6=this.gitInv6||wt(this.git6),this.gitInv7=this.gitInv7||wt(this.git7),this.gitBranchLabel0=this.gitBranchLabel0||wt(this.labelTextColor),this.gitBranchLabel1=this.gitBranchLabel1||this.labelTextColor,this.gitBranchLabel2=this.gitBranchLabel2||this.labelTextColor,this.gitBranchLabel3=this.gitBranchLabel3||wt(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||uh,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||hh}calculate(e){if(typeof e!="object"){this.updateColors();return}let r=Object.keys(e);r.forEach(n=>{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},xG=o(t=>{let e=new y7;return e.calculate(t),e},"getThemeVariables")});var v7,TG,wG=N(()=>{"use strict";Qs();m0();Ny();v7=class{static{o(this,"Theme")}constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=Lt(this.contrast,55),this.background="#ffffff",this.tertiaryColor=Ie(this.primaryColor,{h:-160}),this.primaryBorderColor=Ei(this.primaryColor,this.darkMode),this.secondaryBorderColor=Ei(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Ei(this.tertiaryColor,this.darkMode),this.primaryTextColor=wt(this.primaryColor),this.secondaryTextColor=wt(this.secondaryColor),this.tertiaryTextColor=wt(this.tertiaryColor),this.lineColor=wt(this.background),this.textColor=wt(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=this.actorBorder,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.vertLineColor="calculated",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd=this.rowOdd||Lt(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||"#f4f4f4",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.secondBkg=Lt(this.contrast,55),this.border2=this.contrast,this.actorBorder=Lt(this.border1,23),this.actorBkg=this.mainBkg,this.actorTextColor=this.text,this.actorLineColor=this.actorBorder,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 e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleInv"+e]=this["cScaleInv"+e]||wt(this["cScale"+e]);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this.darkMode?this["cScalePeer"+e]=this["cScalePeer"+e]||Lt(this["cScale"+e],10):this["cScalePeer"+e]=this["cScalePeer"+e]||Ot(this["cScale"+e],10);this.scaleLabelColor=this.scaleLabelColor||(this.darkMode?"black":this.labelTextColor),this.cScaleLabel0=this.cScaleLabel0||this.cScale1,this.cScaleLabel2=this.cScaleLabel2||this.cScale1;for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleLabel"+e]=this["cScaleLabel"+e]||this.scaleLabelColor;for(let e=0;e<5;e++)this["surface"+e]=this["surface"+e]||Ie(this.mainBkg,{l:-(5+e*5)}),this["surfacePeer"+e]=this["surfacePeer"+e]||Ie(this.mainBkg,{l:-(8+e*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=Lt(this.contrast,30),this.sectionBkgColor2=Lt(this.contrast,30),this.taskBorderColor=Ot(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=Lt(this.border1,30),this.doneTaskBkgColor=this.done,this.doneTaskBorderColor=this.lineColor,this.critBkgColor=this.critical,this.critBorderColor=Ot(this.critBkgColor,10),this.todayLineColor=this.critBkgColor,this.vertLineColor=this.critBkgColor,this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,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=Ie(this.primaryColor,{h:64}),this.fillType3=Ie(this.secondaryColor,{h:64}),this.fillType4=Ie(this.primaryColor,{h:-64}),this.fillType5=Ie(this.secondaryColor,{h:-64}),this.fillType6=Ie(this.primaryColor,{h:128}),this.fillType7=Ie(this.secondaryColor,{h:128});for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["pie"+e]=this["cScale"+e];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||Ie(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||Ie(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||Ie(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||Ie(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||Ie(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||Ie(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||sa(this.quadrant1Fill)?Lt(this.quadrant1Fill):Ot(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:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#EEE,#6BB8E4,#8ACB88,#C7ACD6,#E8DCC2,#FFB2A8,#FFF380,#7E8D91,#FFD8B1,#FAF3E0"},this.radar={axisColor:this.radar?.axisColor||this.lineColor,axisStrokeWidth:this.radar?.axisStrokeWidth||2,axisLabelFontSize:this.radar?.axisLabelFontSize||12,curveOpacity:this.radar?.curveOpacity||.5,curveStrokeWidth:this.radar?.curveStrokeWidth||2,graticuleColor:this.radar?.graticuleColor||"#DEDEDE",graticuleStrokeWidth:this.radar?.graticuleStrokeWidth||1,graticuleOpacity:this.radar?.graticuleOpacity||.3,legendBoxSize:this.radar?.legendBoxSize||12,legendFontSize:this.radar?.legendFontSize||12},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=Ot(this.pie1,25)||this.primaryColor,this.git1=this.pie2||this.secondaryColor,this.git2=this.pie3||this.tertiaryColor,this.git3=this.pie4||Ie(this.primaryColor,{h:-30}),this.git4=this.pie5||Ie(this.primaryColor,{h:-60}),this.git5=this.pie6||Ie(this.primaryColor,{h:-90}),this.git6=this.pie7||Ie(this.primaryColor,{h:60}),this.git7=this.pie8||Ie(this.primaryColor,{h:120}),this.gitInv0=this.gitInv0||wt(this.git0),this.gitInv1=this.gitInv1||wt(this.git1),this.gitInv2=this.gitInv2||wt(this.git2),this.gitInv3=this.gitInv3||wt(this.git3),this.gitInv4=this.gitInv4||wt(this.git4),this.gitInv5=this.gitInv5||wt(this.git5),this.gitInv6=this.gitInv6||wt(this.git6),this.gitInv7=this.gitInv7||wt(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||uh,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||hh}calculate(e){if(typeof e!="object"){this.updateColors();return}let r=Object.keys(e);r.forEach(n=>{this[n]=e[n]}),this.updateColors(),r.forEach(n=>{this[n]=e[n]})}},TG=o(t=>{let e=new v7;return e.calculate(t),e},"getThemeVariables")});var Eo,J4=N(()=>{"use strict";gG();vG();My();bG();wG();Eo={base:{getThemeVariables:mG},dark:{getThemeVariables:yG},default:{getThemeVariables:fh},forest:{getThemeVariables:xG},neutral:{getThemeVariables:TG}}});var ul,kG=N(()=>{"use strict";ul={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,inheritDir:!1},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,maxLabelWidth:360,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"],titleColor:"",titleFontFamily:'"trebuchet ms", verdana, arial, sans-serif',titleFontSize:"4ex"},class:{useMaxWidth:!0,titleTopMargin:25,arrowMarkerAbsolute:!1,dividerMargin:10,padding:5,textHeight:10,defaultRenderer:"dagre-wrapper",htmlLabels:!1,hideEmptyMembersBox:!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,nodeSpacing:140,rankSpacing:80,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,showDataLabel:!1,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,layoutAlgorithm:"cose-bilkent"},kanban:{useMaxWidth:!0,padding:8,sectionWidth:200,ticketBaseUrl:""},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},packet:{useMaxWidth:!0,rowHeight:32,bitWidth:32,bitsPerRow:32,showBits:!0,paddingX:5,paddingY:5},architecture:{useMaxWidth:!0,padding:40,iconSize:80,fontSize:16},radar:{useMaxWidth:!0,width:600,height:600,marginTop:50,marginRight:50,marginBottom:50,marginLeft:50,axisScaleFactor:1,axisLabelFactor:1.05,curveTension:.17},theme:"default",look:"classic",handDrawnSeed:0,layout:"dagre",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","suppressErrorRendering","maxEdges"],legacyMathML:!1,forceLegacyMathML:!1,deterministicIds:!1,fontSize:16,markdownAutoWrap:!0,suppressErrorRendering:!1}});var EG,SG,CG,lr,_a=N(()=>{"use strict";J4();kG();EG={...ul,deterministicIDSeed:void 0,elk:{mergeEdges:!1,nodePlacementStrategy:"BRANDES_KOEPF",forceNodeModelOrder:!1,considerModelOrder:"NODES_AND_EDGES"},themeCSS:void 0,themeVariables:Eo.default.getThemeVariables(),sequence:{...ul.sequence,messageFont:o(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont"),noteFont:o(function(){return{fontFamily:this.noteFontFamily,fontSize:this.noteFontSize,fontWeight:this.noteFontWeight}},"noteFont"),actorFont:o(function(){return{fontFamily:this.actorFontFamily,fontSize:this.actorFontSize,fontWeight:this.actorFontWeight}},"actorFont")},class:{hideEmptyMembersBox:!1},gantt:{...ul.gantt,tickInterval:void 0,useWidth:void 0},c4:{...ul.c4,useWidth:void 0,personFont:o(function(){return{fontFamily:this.personFontFamily,fontSize:this.personFontSize,fontWeight:this.personFontWeight}},"personFont"),flowchart:{...ul.flowchart,inheritDir:!1},external_personFont:o(function(){return{fontFamily:this.external_personFontFamily,fontSize:this.external_personFontSize,fontWeight:this.external_personFontWeight}},"external_personFont"),systemFont:o(function(){return{fontFamily:this.systemFontFamily,fontSize:this.systemFontSize,fontWeight:this.systemFontWeight}},"systemFont"),external_systemFont:o(function(){return{fontFamily:this.external_systemFontFamily,fontSize:this.external_systemFontSize,fontWeight:this.external_systemFontWeight}},"external_systemFont"),system_dbFont:o(function(){return{fontFamily:this.system_dbFontFamily,fontSize:this.system_dbFontSize,fontWeight:this.system_dbFontWeight}},"system_dbFont"),external_system_dbFont:o(function(){return{fontFamily:this.external_system_dbFontFamily,fontSize:this.external_system_dbFontSize,fontWeight:this.external_system_dbFontWeight}},"external_system_dbFont"),system_queueFont:o(function(){return{fontFamily:this.system_queueFontFamily,fontSize:this.system_queueFontSize,fontWeight:this.system_queueFontWeight}},"system_queueFont"),external_system_queueFont:o(function(){return{fontFamily:this.external_system_queueFontFamily,fontSize:this.external_system_queueFontSize,fontWeight:this.external_system_queueFontWeight}},"external_system_queueFont"),containerFont:o(function(){return{fontFamily:this.containerFontFamily,fontSize:this.containerFontSize,fontWeight:this.containerFontWeight}},"containerFont"),external_containerFont:o(function(){return{fontFamily:this.external_containerFontFamily,fontSize:this.external_containerFontSize,fontWeight:this.external_containerFontWeight}},"external_containerFont"),container_dbFont:o(function(){return{fontFamily:this.container_dbFontFamily,fontSize:this.container_dbFontSize,fontWeight:this.container_dbFontWeight}},"container_dbFont"),external_container_dbFont:o(function(){return{fontFamily:this.external_container_dbFontFamily,fontSize:this.external_container_dbFontSize,fontWeight:this.external_container_dbFontWeight}},"external_container_dbFont"),container_queueFont:o(function(){return{fontFamily:this.container_queueFontFamily,fontSize:this.container_queueFontSize,fontWeight:this.container_queueFontWeight}},"container_queueFont"),external_container_queueFont:o(function(){return{fontFamily:this.external_container_queueFontFamily,fontSize:this.external_container_queueFontSize,fontWeight:this.external_container_queueFontWeight}},"external_container_queueFont"),componentFont:o(function(){return{fontFamily:this.componentFontFamily,fontSize:this.componentFontSize,fontWeight:this.componentFontWeight}},"componentFont"),external_componentFont:o(function(){return{fontFamily:this.external_componentFontFamily,fontSize:this.external_componentFontSize,fontWeight:this.external_componentFontWeight}},"external_componentFont"),component_dbFont:o(function(){return{fontFamily:this.component_dbFontFamily,fontSize:this.component_dbFontSize,fontWeight:this.component_dbFontWeight}},"component_dbFont"),external_component_dbFont:o(function(){return{fontFamily:this.external_component_dbFontFamily,fontSize:this.external_component_dbFontSize,fontWeight:this.external_component_dbFontWeight}},"external_component_dbFont"),component_queueFont:o(function(){return{fontFamily:this.component_queueFontFamily,fontSize:this.component_queueFontSize,fontWeight:this.component_queueFontWeight}},"component_queueFont"),external_component_queueFont:o(function(){return{fontFamily:this.external_component_queueFontFamily,fontSize:this.external_component_queueFontSize,fontWeight:this.external_component_queueFontWeight}},"external_component_queueFont"),boundaryFont:o(function(){return{fontFamily:this.boundaryFontFamily,fontSize:this.boundaryFontSize,fontWeight:this.boundaryFontWeight}},"boundaryFont"),messageFont:o(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont")},pie:{...ul.pie,useWidth:984},xyChart:{...ul.xyChart,useWidth:void 0},requirement:{...ul.requirement,useWidth:void 0},packet:{...ul.packet},radar:{...ul.radar},treemap:{useMaxWidth:!0,padding:10,diagramPadding:8,showValues:!0,nodeWidth:100,nodeHeight:40,borderWidth:1,valueFontSize:12,labelFontSize:14,valueFormat:","}},SG=o((t,e="")=>Object.keys(t).reduce((r,n)=>Array.isArray(t[n])?r:typeof t[n]=="object"&&t[n]!==null?[...r,e+n,...SG(t[n],"")]:[...r,e+n],[]),"keyify"),CG=new Set(SG(EG,"")),lr=EG});var g0,jbe,x7=N(()=>{"use strict";_a();pt();g0=o(t=>{if(X.debug("sanitizeDirective called with",t),!(typeof t!="object"||t==null)){if(Array.isArray(t)){t.forEach(e=>g0(e));return}for(let e of Object.keys(t)){if(X.debug("Checking key",e),e.startsWith("__")||e.includes("proto")||e.includes("constr")||!CG.has(e)||t[e]==null){X.debug("sanitize deleting key: ",e),delete t[e];continue}if(typeof t[e]=="object"){X.debug("sanitizing object",e),g0(t[e]);continue}let r=["themeCSS","fontFamily","altFontFamily"];for(let n of r)e.includes(n)&&(X.debug("sanitizing css option",e),t[e]=jbe(t[e]))}if(t.themeVariables)for(let e of Object.keys(t.themeVariables)){let r=t.themeVariables[e];r?.match&&!r.match(/^[\d "#%(),.;A-Za-z]+$/)&&(t.themeVariables[e]="")}X.debug("After sanitization",t)}},"sanitizeDirective"),jbe=o(t=>{let e=0,r=0;for(let n of t){if(e<r)return"{ /* ERROR: Unbalanced CSS */ }";n==="{"?e++:n==="}"&&r++}return e!==r?"{ /* ERROR: Unbalanced CSS */ }":t},"sanitizeCss")});var dh,ks,e3,ad,Iy,t3,b7,_G,DG,T7,r3,Qt,LG,RG,Oy,Kbe,AG,Qbe,NG,MG,Wn=N(()=>{"use strict";p0();pt();J4();_a();x7();dh=Object.freeze(lr),ks=Dn({},dh),ad=[],Iy=Dn({},dh),t3=o((t,e)=>{let r=Dn({},t),n={};for(let i of e)LG(i),n=Dn(n,i);if(r=Dn(r,n),n.theme&&n.theme in Eo){let i=Dn({},e3),a=Dn(i.themeVariables||{},n.themeVariables);r.theme&&r.theme in Eo&&(r.themeVariables=Eo[r.theme].getThemeVariables(a))}return Iy=r,NG(Iy),Iy},"updateCurrentConfig"),b7=o(t=>(ks=Dn({},dh),ks=Dn(ks,t),t.theme&&Eo[t.theme]&&(ks.themeVariables=Eo[t.theme].getThemeVariables(t.themeVariables)),t3(ks,ad),ks),"setSiteConfig"),_G=o(t=>{e3=Dn({},t)},"saveConfigFromInitialize"),DG=o(t=>(ks=Dn(ks,t),t3(ks,ad),ks),"updateSiteConfig"),T7=o(()=>Dn({},ks),"getSiteConfig"),r3=o(t=>(NG(t),Dn(Iy,t),Qt()),"setConfig"),Qt=o(()=>Dn({},Iy),"getConfig"),LG=o(t=>{t&&(["secure",...ks.secure??[]].forEach(e=>{Object.hasOwn(t,e)&&(X.debug(`Denied attempt to modify a secure key ${e}`,t[e]),delete t[e])}),Object.keys(t).forEach(e=>{e.startsWith("__")&&delete t[e]}),Object.keys(t).forEach(e=>{typeof t[e]=="string"&&(t[e].includes("<")||t[e].includes(">")||t[e].includes("url(data:"))&&delete t[e],typeof t[e]=="object"&&LG(t[e])}))},"sanitize"),RG=o(t=>{g0(t),t.fontFamily&&!t.themeVariables?.fontFamily&&(t.themeVariables={...t.themeVariables,fontFamily:t.fontFamily}),ad.push(t),t3(ks,ad)},"addDirective"),Oy=o((t=ks)=>{ad=[],t3(t,ad)},"reset"),Kbe={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead."},AG={},Qbe=o(t=>{AG[t]||(X.warn(Kbe[t]),AG[t]=!0)},"issueWarning"),NG=o(t=>{t&&(t.lazyLoadedDiagrams||t.loadExternalDiagramsAtStartup)&&Qbe("LAZY_LOAD_DEPRECATED")},"checkConfig"),MG=o(()=>{let t={};e3&&(t=Dn(t,e3));for(let e of ad)t=Dn(t,e);return t},"getUserDefinedConfig")});function Ja(t){return function(e){e instanceof RegExp&&(e.lastIndex=0);for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++)n[i-1]=arguments[i];return A7(t,e,n)}}function a4e(t){return function(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];return _7(t,r)}}function Ar(t,e){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:a3;IG&&IG(t,null);let n=e.length;for(;n--;){let i=e[n];if(typeof i=="string"){let a=r(i);a!==i&&(Zbe(e)||(e[n]=a),i=a)}t[i]=!0}return t}function s4e(t){for(let e=0;e<t.length;e++)hl(t,e)||(t[e]=null);return t}function sd(t){let e=HG(null);for(let[r,n]of UG(t))hl(t,r)&&(Array.isArray(n)?e[r]=s4e(n):n&&typeof n=="object"&&n.constructor===Object?e[r]=sd(n):e[r]=n);return e}function $y(t,e){for(;t!==null;){let n=e4e(t,e);if(n){if(n.get)return Ja(n.get);if(typeof n.value=="function")return Ja(n.value)}t=Jbe(t)}function r(){return null}return o(r,"fallbackValue"),r}function YG(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:y4e(),e=o(Dt=>YG(Dt),"DOMPurify");if(e.version="3.2.5",e.removed=[],!t||!t.document||t.document.nodeType!==Gy.document||!t.Element)return e.isSupported=!1,e;let{document:r}=t,n=r,i=n.currentScript,{DocumentFragment:a,HTMLTemplateElement:s,Node:l,Element:u,NodeFilter:h,NamedNodeMap:f=t.NamedNodeMap||t.MozNamedAttrMap,HTMLFormElement:d,DOMParser:p,trustedTypes:m}=t,g=u.prototype,y=$y(g,"cloneNode"),x=$y(g,"remove"),v=$y(g,"nextSibling"),b=$y(g,"childNodes"),T=$y(g,"parentNode");if(typeof s=="function"){let Dt=r.createElement("template");Dt.content&&Dt.content.ownerDocument&&(r=Dt.content.ownerDocument)}let S,w="",{implementation:E,createNodeIterator:_,createDocumentFragment:A,getElementsByTagName:D}=r,{importNode:O}=n,R=VG();e.isSupported=typeof UG=="function"&&typeof T=="function"&&E&&E.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:k,ERB_EXPR:L,TMPLIT_EXPR:C,DATA_ATTR:I,ARIA_ATTR:M,IS_SCRIPT_OR_DATA:P,ATTR_WHITESPACE:B,CUSTOM_ELEMENT:F}=zG,{IS_ALLOWED_URI:G}=zG,$=null,U=Ar({},[...BG,...k7,...E7,...S7,...FG]),K=null,ne=Ar({},[...$G,...C7,...GG,...i3]),j=Object.seal(HG(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}})),le=null,Z=null,ce=!0,Q=!0,ee=!1,te=!0,re=!1,he=!0,J=!1,ye=!1,se=!1,Se=!1,W=!1,Oe=!1,ve=!0,Pe=!1,qe="user-content-",Ge=!0,Ne=!1,Me={},be=null,q=Ar({},["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"]),fe=null,ae=Ar({},["audio","video","img","source","image","track"]),oe=null,V=Ar({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),xe="http://www.w3.org/1998/Math/MathML",Y="http://www.w3.org/2000/svg",de="http://www.w3.org/1999/xhtml",me=de,Be=!1,_e=null,Te=Ar({},[xe,Y,de],w7),Ue=Ar({},["mi","mo","mn","ms","mtext"]),De=Ar({},["annotation-xml"]),Qe=Ar({},["title","style","font","a","script"]),ot=null,Gt=["application/xhtml+xml","text/html"],Ze="text/html",Ve=null,ht=null,Ye=r.createElement("form"),ct=o(function(Ce){return Ce instanceof RegExp||Ce instanceof Function},"isRegexOrFunction"),Yt=o(function(){let Ce=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(ht&&ht===Ce)){if((!Ce||typeof Ce!="object")&&(Ce={}),Ce=sd(Ce),ot=Gt.indexOf(Ce.PARSER_MEDIA_TYPE)===-1?Ze:Ce.PARSER_MEDIA_TYPE,Ve=ot==="application/xhtml+xml"?w7:a3,$=hl(Ce,"ALLOWED_TAGS")?Ar({},Ce.ALLOWED_TAGS,Ve):U,K=hl(Ce,"ALLOWED_ATTR")?Ar({},Ce.ALLOWED_ATTR,Ve):ne,_e=hl(Ce,"ALLOWED_NAMESPACES")?Ar({},Ce.ALLOWED_NAMESPACES,w7):Te,oe=hl(Ce,"ADD_URI_SAFE_ATTR")?Ar(sd(V),Ce.ADD_URI_SAFE_ATTR,Ve):V,fe=hl(Ce,"ADD_DATA_URI_TAGS")?Ar(sd(ae),Ce.ADD_DATA_URI_TAGS,Ve):ae,be=hl(Ce,"FORBID_CONTENTS")?Ar({},Ce.FORBID_CONTENTS,Ve):q,le=hl(Ce,"FORBID_TAGS")?Ar({},Ce.FORBID_TAGS,Ve):{},Z=hl(Ce,"FORBID_ATTR")?Ar({},Ce.FORBID_ATTR,Ve):{},Me=hl(Ce,"USE_PROFILES")?Ce.USE_PROFILES:!1,ce=Ce.ALLOW_ARIA_ATTR!==!1,Q=Ce.ALLOW_DATA_ATTR!==!1,ee=Ce.ALLOW_UNKNOWN_PROTOCOLS||!1,te=Ce.ALLOW_SELF_CLOSE_IN_ATTR!==!1,re=Ce.SAFE_FOR_TEMPLATES||!1,he=Ce.SAFE_FOR_XML!==!1,J=Ce.WHOLE_DOCUMENT||!1,Se=Ce.RETURN_DOM||!1,W=Ce.RETURN_DOM_FRAGMENT||!1,Oe=Ce.RETURN_TRUSTED_TYPE||!1,se=Ce.FORCE_BODY||!1,ve=Ce.SANITIZE_DOM!==!1,Pe=Ce.SANITIZE_NAMED_PROPS||!1,Ge=Ce.KEEP_CONTENT!==!1,Ne=Ce.IN_PLACE||!1,G=Ce.ALLOWED_URI_REGEXP||WG,me=Ce.NAMESPACE||de,Ue=Ce.MATHML_TEXT_INTEGRATION_POINTS||Ue,De=Ce.HTML_INTEGRATION_POINTS||De,j=Ce.CUSTOM_ELEMENT_HANDLING||{},Ce.CUSTOM_ELEMENT_HANDLING&&ct(Ce.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(j.tagNameCheck=Ce.CUSTOM_ELEMENT_HANDLING.tagNameCheck),Ce.CUSTOM_ELEMENT_HANDLING&&ct(Ce.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(j.attributeNameCheck=Ce.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),Ce.CUSTOM_ELEMENT_HANDLING&&typeof Ce.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(j.allowCustomizedBuiltInElements=Ce.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),re&&(Q=!1),W&&(Se=!0),Me&&($=Ar({},FG),K=[],Me.html===!0&&(Ar($,BG),Ar(K,$G)),Me.svg===!0&&(Ar($,k7),Ar(K,C7),Ar(K,i3)),Me.svgFilters===!0&&(Ar($,E7),Ar(K,C7),Ar(K,i3)),Me.mathMl===!0&&(Ar($,S7),Ar(K,GG),Ar(K,i3))),Ce.ADD_TAGS&&($===U&&($=sd($)),Ar($,Ce.ADD_TAGS,Ve)),Ce.ADD_ATTR&&(K===ne&&(K=sd(K)),Ar(K,Ce.ADD_ATTR,Ve)),Ce.ADD_URI_SAFE_ATTR&&Ar(oe,Ce.ADD_URI_SAFE_ATTR,Ve),Ce.FORBID_CONTENTS&&(be===q&&(be=sd(be)),Ar(be,Ce.FORBID_CONTENTS,Ve)),Ge&&($["#text"]=!0),J&&Ar($,["html","head","body"]),$.table&&(Ar($,["tbody"]),delete le.tbody),Ce.TRUSTED_TYPES_POLICY){if(typeof Ce.TRUSTED_TYPES_POLICY.createHTML!="function")throw Fy('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof Ce.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Fy('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');S=Ce.TRUSTED_TYPES_POLICY,w=S.createHTML("")}else S===void 0&&(S=v4e(m,i)),S!==null&&typeof w=="string"&&(w=S.createHTML(""));Za&&Za(Ce),ht=Ce}},"_parseConfig"),Tt=Ar({},[...k7,...E7,...o4e]),Mt=Ar({},[...S7,...l4e]),bt=o(function(Ce){let nt=T(Ce);(!nt||!nt.tagName)&&(nt={namespaceURI:me,tagName:"template"});let Ct=a3(Ce.tagName),yr=a3(nt.tagName);return _e[Ce.namespaceURI]?Ce.namespaceURI===Y?nt.namespaceURI===de?Ct==="svg":nt.namespaceURI===xe?Ct==="svg"&&(yr==="annotation-xml"||Ue[yr]):!!Tt[Ct]:Ce.namespaceURI===xe?nt.namespaceURI===de?Ct==="math":nt.namespaceURI===Y?Ct==="math"&&De[yr]:!!Mt[Ct]:Ce.namespaceURI===de?nt.namespaceURI===Y&&!De[yr]||nt.namespaceURI===xe&&!Ue[yr]?!1:!Mt[Ct]&&(Qe[Ct]||!Tt[Ct]):!!(ot==="application/xhtml+xml"&&_e[Ce.namespaceURI]):!1},"_checkValidNamespace"),ft=o(function(Ce){Py(e.removed,{element:Ce});try{T(Ce).removeChild(Ce)}catch{x(Ce)}},"_forceRemove"),St=o(function(Ce,nt){try{Py(e.removed,{attribute:nt.getAttributeNode(Ce),from:nt})}catch{Py(e.removed,{attribute:null,from:nt})}if(nt.removeAttribute(Ce),Ce==="is")if(Se||W)try{ft(nt)}catch{}else try{nt.setAttribute(Ce,"")}catch{}},"_removeAttribute"),dt=o(function(Ce){let nt=null,Ct=null;if(se)Ce="<remove></remove>"+Ce;else{let yn=PG(Ce,/^[\r\n\t ]+/);Ct=yn&&yn[0]}ot==="application/xhtml+xml"&&me===de&&(Ce='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+Ce+"</body></html>");let yr=S?S.createHTML(Ce):Ce;if(me===de)try{nt=new p().parseFromString(yr,ot)}catch{}if(!nt||!nt.documentElement){nt=E.createDocument(me,"template",null);try{nt.documentElement.innerHTML=Be?w:yr}catch{}}let rn=nt.body||nt.documentElement;return Ce&&Ct&&rn.insertBefore(r.createTextNode(Ct),rn.childNodes[0]||null),me===de?D.call(nt,J?"html":"body")[0]:J?nt.documentElement:rn},"_initDocument"),vt=o(function(Ce){return _.call(Ce.ownerDocument||Ce,Ce,h.SHOW_ELEMENT|h.SHOW_COMMENT|h.SHOW_TEXT|h.SHOW_PROCESSING_INSTRUCTION|h.SHOW_CDATA_SECTION,null)},"_createNodeIterator"),at=o(function(Ce){return Ce instanceof d&&(typeof Ce.nodeName!="string"||typeof Ce.textContent!="string"||typeof Ce.removeChild!="function"||!(Ce.attributes instanceof f)||typeof Ce.removeAttribute!="function"||typeof Ce.setAttribute!="function"||typeof Ce.namespaceURI!="string"||typeof Ce.insertBefore!="function"||typeof Ce.hasChildNodes!="function")},"_isClobbered"),pn=o(function(Ce){return typeof l=="function"&&Ce instanceof l},"_isNode");function kt(Dt,Ce,nt){n3(Dt,Ct=>{Ct.call(e,Ce,nt,ht)})}o(kt,"_executeHooks");let Fn=o(function(Ce){let nt=null;if(kt(R.beforeSanitizeElements,Ce,null),at(Ce))return ft(Ce),!0;let Ct=Ve(Ce.nodeName);if(kt(R.uponSanitizeElement,Ce,{tagName:Ct,allowedTags:$}),Ce.hasChildNodes()&&!pn(Ce.firstElementChild)&&Qa(/<[/\w!]/g,Ce.innerHTML)&&Qa(/<[/\w!]/g,Ce.textContent)||Ce.nodeType===Gy.progressingInstruction||he&&Ce.nodeType===Gy.comment&&Qa(/<[/\w]/g,Ce.data))return ft(Ce),!0;if(!$[Ct]||le[Ct]){if(!le[Ct]&&Nr(Ct)&&(j.tagNameCheck instanceof RegExp&&Qa(j.tagNameCheck,Ct)||j.tagNameCheck instanceof Function&&j.tagNameCheck(Ct)))return!1;if(Ge&&!be[Ct]){let yr=T(Ce)||Ce.parentNode,rn=b(Ce)||Ce.childNodes;if(rn&&yr){let yn=rn.length;for(let Zr=yn-1;Zr>=0;--Zr){let Mi=y(rn[Zr],!0);Mi.__removalCount=(Ce.__removalCount||0)+1,yr.insertBefore(Mi,v(Ce))}}}return ft(Ce),!0}return Ce instanceof u&&!bt(Ce)||(Ct==="noscript"||Ct==="noembed"||Ct==="noframes")&&Qa(/<\/no(script|embed|frames)/i,Ce.innerHTML)?(ft(Ce),!0):(re&&Ce.nodeType===Gy.text&&(nt=Ce.textContent,n3([k,L,C],yr=>{nt=By(nt,yr," ")}),Ce.textContent!==nt&&(Py(e.removed,{element:Ce.cloneNode()}),Ce.textContent=nt)),kt(R.afterSanitizeElements,Ce,null),!1)},"_sanitizeElements"),tn=o(function(Ce,nt,Ct){if(ve&&(nt==="id"||nt==="name")&&(Ct in r||Ct in Ye))return!1;if(!(Q&&!Z[nt]&&Qa(I,nt))){if(!(ce&&Qa(M,nt))){if(!K[nt]||Z[nt]){if(!(Nr(Ce)&&(j.tagNameCheck instanceof RegExp&&Qa(j.tagNameCheck,Ce)||j.tagNameCheck instanceof Function&&j.tagNameCheck(Ce))&&(j.attributeNameCheck instanceof RegExp&&Qa(j.attributeNameCheck,nt)||j.attributeNameCheck instanceof Function&&j.attributeNameCheck(nt))||nt==="is"&&j.allowCustomizedBuiltInElements&&(j.tagNameCheck instanceof RegExp&&Qa(j.tagNameCheck,Ct)||j.tagNameCheck instanceof Function&&j.tagNameCheck(Ct))))return!1}else if(!oe[nt]){if(!Qa(G,By(Ct,B,""))){if(!((nt==="src"||nt==="xlink:href"||nt==="href")&&Ce!=="script"&&n4e(Ct,"data:")===0&&fe[Ce])){if(!(ee&&!Qa(P,By(Ct,B,"")))){if(Ct)return!1}}}}}}return!0},"_isValidAttribute"),Nr=o(function(Ce){return Ce!=="annotation-xml"&&PG(Ce,F)},"_isBasicCustomElement"),Mr=o(function(Ce){kt(R.beforeSanitizeAttributes,Ce,null);let{attributes:nt}=Ce;if(!nt||at(Ce))return;let Ct={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:K,forceKeepAttr:void 0},yr=nt.length;for(;yr--;){let rn=nt[yr],{name:yn,namespaceURI:Zr,value:Mi}=rn,ti=Ve(yn),An=yn==="value"?Mi:i4e(Mi);if(Ct.attrName=ti,Ct.attrValue=An,Ct.keepAttr=!0,Ct.forceKeepAttr=void 0,kt(R.uponSanitizeAttribute,Ce,Ct),An=Ct.attrValue,Pe&&(ti==="id"||ti==="name")&&(St(yn,Ce),An=qe+An),he&&Qa(/((--!?|])>)|<\/(style|title)/i,An)){St(yn,Ce);continue}if(Ct.forceKeepAttr||(St(yn,Ce),!Ct.keepAttr))continue;if(!te&&Qa(/\/>/i,An)){St(yn,Ce);continue}re&&n3([k,L,C],tt=>{An=By(An,tt," ")});let Hr=Ve(Ce.nodeName);if(tn(Hr,ti,An)){if(S&&typeof m=="object"&&typeof m.getAttributeType=="function"&&!Zr)switch(m.getAttributeType(Hr,ti)){case"TrustedHTML":{An=S.createHTML(An);break}case"TrustedScriptURL":{An=S.createScriptURL(An);break}}try{Zr?Ce.setAttributeNS(Zr,yn,An):Ce.setAttribute(yn,An),at(Ce)?ft(Ce):OG(e.removed)}catch{}}}kt(R.afterSanitizeAttributes,Ce,null)},"_sanitizeAttributes"),$n=o(function Dt(Ce){let nt=null,Ct=vt(Ce);for(kt(R.beforeSanitizeShadowDOM,Ce,null);nt=Ct.nextNode();)kt(R.uponSanitizeShadowNode,nt,null),Fn(nt),Mr(nt),nt.content instanceof a&&Dt(nt.content);kt(R.afterSanitizeShadowDOM,Ce,null)},"_sanitizeShadowDOM");return e.sanitize=function(Dt){let Ce=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},nt=null,Ct=null,yr=null,rn=null;if(Be=!Dt,Be&&(Dt="<!-->"),typeof Dt!="string"&&!pn(Dt))if(typeof Dt.toString=="function"){if(Dt=Dt.toString(),typeof Dt!="string")throw Fy("dirty is not a string, aborting")}else throw Fy("toString is not a function");if(!e.isSupported)return Dt;if(ye||Yt(Ce),e.removed=[],typeof Dt=="string"&&(Ne=!1),Ne){if(Dt.nodeName){let Mi=Ve(Dt.nodeName);if(!$[Mi]||le[Mi])throw Fy("root node is forbidden and cannot be sanitized in-place")}}else if(Dt instanceof l)nt=dt("<!---->"),Ct=nt.ownerDocument.importNode(Dt,!0),Ct.nodeType===Gy.element&&Ct.nodeName==="BODY"||Ct.nodeName==="HTML"?nt=Ct:nt.appendChild(Ct);else{if(!Se&&!re&&!J&&Dt.indexOf("<")===-1)return S&&Oe?S.createHTML(Dt):Dt;if(nt=dt(Dt),!nt)return Se?null:Oe?w:""}nt&&se&&ft(nt.firstChild);let yn=vt(Ne?Dt:nt);for(;yr=yn.nextNode();)Fn(yr),Mr(yr),yr.content instanceof a&&$n(yr.content);if(Ne)return Dt;if(Se){if(W)for(rn=A.call(nt.ownerDocument);nt.firstChild;)rn.appendChild(nt.firstChild);else rn=nt;return(K.shadowroot||K.shadowrootmode)&&(rn=O.call(n,rn,!0)),rn}let Zr=J?nt.outerHTML:nt.innerHTML;return J&&$["!doctype"]&&nt.ownerDocument&&nt.ownerDocument.doctype&&nt.ownerDocument.doctype.name&&Qa(qG,nt.ownerDocument.doctype.name)&&(Zr="<!DOCTYPE "+nt.ownerDocument.doctype.name+`>
|
||
`+Zr),re&&n3([k,L,C],Mi=>{Zr=By(Zr,Mi," ")}),S&&Oe?S.createHTML(Zr):Zr},e.setConfig=function(){let Dt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Yt(Dt),ye=!0},e.clearConfig=function(){ht=null,ye=!1},e.isValidAttribute=function(Dt,Ce,nt){ht||Yt({});let Ct=Ve(Dt),yr=Ve(Ce);return tn(Ct,yr,nt)},e.addHook=function(Dt,Ce){typeof Ce=="function"&&Py(R[Dt],Ce)},e.removeHook=function(Dt,Ce){if(Ce!==void 0){let nt=t4e(R[Dt],Ce);return nt===-1?void 0:r4e(R[Dt],nt,1)[0]}return OG(R[Dt])},e.removeHooks=function(Dt){R[Dt]=[]},e.removeAllHooks=function(){R=VG()},e}var UG,IG,Zbe,Jbe,e4e,Za,So,HG,A7,_7,n3,t4e,OG,Py,r4e,a3,w7,PG,By,n4e,i4e,hl,Qa,Fy,BG,k7,E7,o4e,S7,l4e,FG,$G,C7,GG,i3,c4e,u4e,h4e,f4e,d4e,WG,p4e,m4e,qG,g4e,zG,Gy,y4e,v4e,VG,ph,D7=N(()=>{"use strict";({entries:UG,setPrototypeOf:IG,isFrozen:Zbe,getPrototypeOf:Jbe,getOwnPropertyDescriptor:e4e}=Object),{freeze:Za,seal:So,create:HG}=Object,{apply:A7,construct:_7}=typeof Reflect<"u"&&Reflect;Za||(Za=o(function(e){return e},"freeze"));So||(So=o(function(e){return e},"seal"));A7||(A7=o(function(e,r,n){return e.apply(r,n)},"apply"));_7||(_7=o(function(e,r){return new e(...r)},"construct"));n3=Ja(Array.prototype.forEach),t4e=Ja(Array.prototype.lastIndexOf),OG=Ja(Array.prototype.pop),Py=Ja(Array.prototype.push),r4e=Ja(Array.prototype.splice),a3=Ja(String.prototype.toLowerCase),w7=Ja(String.prototype.toString),PG=Ja(String.prototype.match),By=Ja(String.prototype.replace),n4e=Ja(String.prototype.indexOf),i4e=Ja(String.prototype.trim),hl=Ja(Object.prototype.hasOwnProperty),Qa=Ja(RegExp.prototype.test),Fy=a4e(TypeError);o(Ja,"unapply");o(a4e,"unconstruct");o(Ar,"addToSet");o(s4e,"cleanArray");o(sd,"clone");o($y,"lookupGetter");BG=Za(["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","section","select","shadow","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"]),k7=Za(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),E7=Za(["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"]),o4e=Za(["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"]),S7=Za(["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"]),l4e=Za(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),FG=Za(["#text"]),$G=Za(["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","face","for","headers","height","hidden","high","href","hreflang","id","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","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns","slot"]),C7=Za(["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","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"]),GG=Za(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","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"]),i3=Za(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),c4e=So(/\{\{[\w\W]*|[\w\W]*\}\}/gm),u4e=So(/<%[\w\W]*|[\w\W]*%>/gm),h4e=So(/\$\{[\w\W]*/gm),f4e=So(/^data-[\-\w.\u00B7-\uFFFF]+$/),d4e=So(/^aria-[\-\w]+$/),WG=So(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),p4e=So(/^(?:\w+script|data):/i),m4e=So(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),qG=So(/^html$/i),g4e=So(/^[a-z][.\w]*(-[.\w]+)+$/i),zG=Object.freeze({__proto__:null,ARIA_ATTR:d4e,ATTR_WHITESPACE:m4e,CUSTOM_ELEMENT:g4e,DATA_ATTR:f4e,DOCTYPE_NAME:qG,ERB_EXPR:u4e,IS_ALLOWED_URI:WG,IS_SCRIPT_OR_DATA:p4e,MUSTACHE_EXPR:c4e,TMPLIT_EXPR:h4e}),Gy={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},y4e=o(function(){return typeof window>"u"?null:window},"getGlobal"),v4e=o(function(e,r){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let n=null,i="data-tt-policy-suffix";r&&r.hasAttribute(i)&&(n=r.getAttribute(i));let a="dompurify"+(n?"#"+n:"");try{return e.createPolicy(a,{createHTML(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+a+" could not be created."),null}},"_createTrustedTypesPolicy"),VG=o(function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},"_createHooksMap");o(YG,"createDOMPurify");ph=YG()});var SV={};ur(SV,{ParseError:()=>gt,SETTINGS_SCHEMA:()=>Hy,__defineFunction:()=>Rt,__defineMacro:()=>ue,__defineSymbol:()=>z,__domTree:()=>EV,__parse:()=>bV,__renderToDomTree:()=>N3,__renderToHTMLTree:()=>wV,__setFontMetrics:()=>Az,default:()=>c5e,render:()=>vA,renderToString:()=>xV,version:()=>kV});function S4e(t){return String(t).replace(E4e,e=>k4e[e])}function D4e(t){if(t.default)return t.default;var e=t.type,r=Array.isArray(e)?e[0]:e;if(typeof r!="string")return r.enum[0];switch(r){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{}}}function P4e(t){for(var e=0;e<U7.length;e++)for(var r=U7[e],n=0;n<r.blocks.length;n++){var i=r.blocks[n];if(t>=i[0]&&t<=i[1])return r.name}return null}function Cz(t){for(var e=0;e<y3.length;e+=2)if(t>=y3[e]&&t<=y3[e+1])return!0;return!1}function Az(t,e){Kl[t]=e}function rA(t,e,r){if(!Kl[e])throw new Error("Font metrics not found for font: "+e+".");var n=t.charCodeAt(0),i=Kl[e][n];if(!i&&t[0]in jG&&(n=jG[t[0]].charCodeAt(0),i=Kl[e][n]),!i&&r==="text"&&Cz(n)&&(i=Kl[e][77]),i)return{depth:i[0],height:i[1],italic:i[2],skew:i[3],width:i[4]}}function Y4e(t){var e;if(t>=5?e=0:t>=3?e=1:e=2,!L7[e]){var r=L7[e]={cssEmPerMu:s3.quad[e]/18};for(var n in s3)s3.hasOwnProperty(n)&&(r[n]=s3[n][e])}return L7[e]}function ZG(t){if(t instanceof Ss)return t;throw new Error("Expected symbolNode but got "+String(t)+".")}function Z4e(t){if(t instanceof cd)return t;throw new Error("Expected span<HtmlDomNode> but got "+String(t)+".")}function z(t,e,r,n,i,a){Ln[t][i]={font:e,group:r,replace:n},a&&n&&(Ln[t][n]=Ln[t][i])}function Rt(t){for(var{type:e,names:r,props:n,handler:i,htmlBuilder:a,mathmlBuilder:s}=t,l={type:e,numArgs:n.numArgs,argTypes:n.argTypes,allowedInArgument:!!n.allowedInArgument,allowedInText:!!n.allowedInText,allowedInMath:n.allowedInMath===void 0?!0:n.allowedInMath,numOptionalArgs:n.numOptionalArgs||0,infix:!!n.infix,primitive:!!n.primitive,handler:i},u=0;u<r.length;++u)Bz[r[u]]=l;e&&(a&&(T3[e]=a),s&&(w3[e]=s))}function ud(t){var{type:e,htmlBuilder:r,mathmlBuilder:n}=t;Rt({type:e,names:[],props:{numArgs:0},handler(){throw new Error("Should never be called.")},htmlBuilder:r,mathmlBuilder:n})}function d3(t,e){var r=uu(["base"],t,e),n=uu(["strut"]);return n.style.height=Et(r.height+r.depth),r.depth&&(n.style.verticalAlign=Et(-r.depth)),r.children.unshift(n),r}function X7(t,e){var r=null;t.length===1&&t[0].type==="tag"&&(r=t[0].tag,t=t[0].body);var n=Pi(t,e,"root"),i;n.length===2&&n[1].hasClass("tag")&&(i=n.pop());for(var a=[],s=[],l=0;l<n.length;l++)if(s.push(n[l]),n[l].hasClass("mbin")||n[l].hasClass("mrel")||n[l].hasClass("allowbreak")){for(var u=!1;l<n.length-1&&n[l+1].hasClass("mspace")&&!n[l+1].hasClass("newline");)l++,s.push(n[l]),n[l].hasClass("nobreak")&&(u=!0);u||(a.push(d3(s,e)),s=[])}else n[l].hasClass("newline")&&(s.pop(),s.length>0&&(a.push(d3(s,e)),s=[]),a.push(n[l]));s.length>0&&a.push(d3(s,e));var h;r?(h=d3(Pi(r,e,!0)),h.classes=["tag"],a.push(h)):i&&a.push(i);var f=uu(["katex-html"],a);if(f.setAttribute("aria-hidden","true"),h){var d=h.children[0];d.style.height=Et(f.height+f.depth),f.depth&&(d.style.verticalAlign=Et(-f.depth))}return f}function $z(t){return new ld(t)}function M7(t){if(!t)return!1;if(t.type==="mi"&&t.children.length===1){var e=t.children[0];return e instanceof Ao&&e.text==="."}else if(t.type==="mo"&&t.children.length===1&&t.getAttribute("separator")==="true"&&t.getAttribute("lspace")==="0em"&&t.getAttribute("rspace")==="0em"){var r=t.children[0];return r instanceof Ao&&r.text===","}else return!1}function nz(t,e,r,n,i){var a=Cs(t,r),s;a.length===1&&a[0]instanceof es&&er.contains(["mrow","mtable"],a[0].type)?s=a[0]:s=new mt.MathNode("mrow",a);var l=new mt.MathNode("annotation",[new mt.TextNode(e)]);l.setAttribute("encoding","application/x-tex");var u=new mt.MathNode("semantics",[s,l]),h=new mt.MathNode("math",[u]);h.setAttribute("xmlns","http://www.w3.org/1998/Math/MathML"),n&&h.setAttribute("display","block");var f=i?"katex":"katex-mathml";return Fe.makeSpan([f],[h])}function xr(t,e){if(!t||t.type!==e)throw new Error("Expected node of type "+e+", but got "+(t?"node of type "+t.type:String(t)));return t}function sA(t){var e=_3(t);if(!e)throw new Error("Expected node of symbol group type, but got "+(t?"node of type "+t.type:String(t)));return e}function _3(t){return t&&(t.type==="atom"||e3e.hasOwnProperty(t.type))?t:null}function Uz(t,e){var r=Pi(t.body,e,!0);return L3e([t.mclass],r,e)}function Hz(t,e){var r,n=Cs(t.body,e);return t.mclass==="minner"?r=new mt.MathNode("mpadded",n):t.mclass==="mord"?t.isCharacterBox?(r=n[0],r.type="mi"):r=new mt.MathNode("mi",n):(t.isCharacterBox?(r=n[0],r.type="mo"):r=new mt.MathNode("mo",n),t.mclass==="mbin"?(r.attributes.lspace="0.22em",r.attributes.rspace="0.22em"):t.mclass==="mpunct"?(r.attributes.lspace="0em",r.attributes.rspace="0.17em"):t.mclass==="mopen"||t.mclass==="mclose"?(r.attributes.lspace="0em",r.attributes.rspace="0em"):t.mclass==="minner"&&(r.attributes.lspace="0.0556em",r.attributes.width="+0.1111em")),r}function M3e(t,e,r){var n=R3e[t];switch(n){case"\\\\cdrightarrow":case"\\\\cdleftarrow":return r.callFunction(n,[e[0]],[e[1]]);case"\\uparrow":case"\\downarrow":{var i=r.callFunction("\\\\cdleft",[e[0]],[]),a={type:"atom",text:n,mode:"math",family:"rel"},s=r.callFunction("\\Big",[a],[]),l=r.callFunction("\\\\cdright",[e[1]],[]),u={type:"ordgroup",mode:"math",body:[i,s,l]};return r.callFunction("\\\\cdparent",[u],[])}case"\\\\cdlongequal":return r.callFunction("\\\\cdlongequal",[],[]);case"\\Vert":{var h={type:"textord",text:"\\Vert",mode:"math"};return r.callFunction("\\Big",[h],[])}default:return{type:"textord",text:" ",mode:"math"}}}function I3e(t){var e=[];for(t.gullet.beginGroup(),t.gullet.macros.set("\\cr","\\\\\\relax"),t.gullet.beginGroup();;){e.push(t.parseExpression(!1,"\\\\")),t.gullet.endGroup(),t.gullet.beginGroup();var r=t.fetch().text;if(r==="&"||r==="\\\\")t.consume();else if(r==="\\end"){e[e.length-1].length===0&&e.pop();break}else throw new gt("Expected \\\\ or \\cr or \\end",t.nextToken)}for(var n=[],i=[n],a=0;a<e.length;a++){for(var s=e[a],l=iz(),u=0;u<s.length;u++)if(!az(s[u]))l.body.push(s[u]);else{n.push(l),u+=1;var h=sA(s[u]).text,f=new Array(2);if(f[0]={type:"ordgroup",mode:"math",body:[]},f[1]={type:"ordgroup",mode:"math",body:[]},!("=|.".indexOf(h)>-1))if("<>AV".indexOf(h)>-1)for(var d=0;d<2;d++){for(var p=!0,m=u+1;m<s.length;m++){if(N3e(s[m],h)){p=!1,u=m;break}if(az(s[m]))throw new gt("Missing a "+h+" character to complete a CD arrow.",s[m]);f[d].body.push(s[m])}if(p)throw new gt("Missing a "+h+" character to complete a CD arrow.",s[u])}else throw new gt('Expected one of "<>AV=|." after @',s[u]);var g=M3e(h,f,t),y={type:"styling",body:[g],mode:"math",style:"display"};n.push(y),l=iz()}a%2===0?n.push(l):n.shift(),n=[],i.push(n)}t.gullet.endGroup(),t.gullet.endGroup();var x=new Array(i[0].length).fill({type:"align",align:"c",pregap:.25,postgap:.25});return{type:"array",mode:"math",body:i,arraystretch:1,addJot:!0,rowGaps:[null],cols:x,colSeparationType:"CD",hLinesBeforeRow:new Array(i.length+1).fill([])}}function L3(t,e){var r=_3(t);if(r&&er.contains(Y3e,r.text))return r;throw r?new gt("Invalid delimiter '"+r.text+"' after '"+e.funcName+"'",t):new gt("Invalid delimiter type '"+t.type+"'",t)}function oz(t){if(!t.body)throw new Error("Bug: The leftright ParseNode wasn't fully parsed.")}function Zl(t){for(var{type:e,names:r,props:n,handler:i,htmlBuilder:a,mathmlBuilder:s}=t,l={type:e,numArgs:n.numArgs||0,allowedInText:!1,numOptionalArgs:0,handler:i},u=0;u<r.length;++u)nV[r[u]]=l;a&&(T3[e]=a),s&&(w3[e]=s)}function ue(t,e){iV[t]=e}function lz(t){var e=[];t.consumeSpaces();var r=t.fetch().text;for(r==="\\relax"&&(t.consume(),t.consumeSpaces(),r=t.fetch().text);r==="\\hline"||r==="\\hdashline";)t.consume(),e.push(r==="\\hdashline"),t.consumeSpaces(),r=t.fetch().text;return e}function hA(t){if(t.indexOf("ed")===-1)return t.indexOf("*")===-1}function xh(t,e,r){var{hskipBeforeAndAfter:n,addJot:i,cols:a,arraystretch:s,colSeparationType:l,autoTag:u,singleRow:h,emptySingleRow:f,maxNumCols:d,leqno:p}=e;if(t.gullet.beginGroup(),h||t.gullet.macros.set("\\cr","\\\\\\relax"),!s){var m=t.gullet.expandMacroAsText("\\arraystretch");if(m==null)s=1;else if(s=parseFloat(m),!s||s<0)throw new gt("Invalid \\arraystretch: "+m)}t.gullet.beginGroup();var g=[],y=[g],x=[],v=[],b=u!=null?[]:void 0;function T(){u&&t.gullet.macros.set("\\@eqnsw","1",!0)}o(T,"beginRow");function S(){b&&(t.gullet.macros.get("\\df@tag")?(b.push(t.subparse([new _o("\\df@tag")])),t.gullet.macros.set("\\df@tag",void 0,!0)):b.push(!!u&&t.gullet.macros.get("\\@eqnsw")==="1"))}for(o(S,"endRow"),T(),v.push(lz(t));;){var w=t.parseExpression(!1,h?"\\end":"\\\\");t.gullet.endGroup(),t.gullet.beginGroup(),w={type:"ordgroup",mode:t.mode,body:w},r&&(w={type:"styling",mode:t.mode,style:r,body:[w]}),g.push(w);var E=t.fetch().text;if(E==="&"){if(d&&g.length===d){if(h||l)throw new gt("Too many tab characters: &",t.nextToken);t.settings.reportNonstrict("textEnv","Too few columns specified in the {array} column argument.")}t.consume()}else if(E==="\\end"){S(),g.length===1&&w.type==="styling"&&w.body[0].body.length===0&&(y.length>1||!f)&&y.pop(),v.length<y.length+1&&v.push([]);break}else if(E==="\\\\"){t.consume();var _=void 0;t.gullet.future().text!==" "&&(_=t.parseSizeGroup(!0)),x.push(_?_.value:null),S(),v.push(lz(t)),g=[],y.push(g),T()}else throw new gt("Expected & or \\\\ or \\cr or \\end",t.nextToken)}return t.gullet.endGroup(),t.gullet.endGroup(),{type:"array",mode:t.mode,addJot:i,arraystretch:s,body:y,cols:a,rowGaps:x,hskipBeforeAndAfter:n,hLinesBeforeRow:v,colSeparationType:l,tags:b,leqno:p}}function fA(t){return t.slice(0,1)==="d"?"display":"text"}function dV(t,e,r){for(var n=Pi(t,e,!1),i=e.sizeMultiplier/r.sizeMultiplier,a=0;a<n.length;a++){var s=n[a].classes.indexOf("sizing");s<0?Array.prototype.push.apply(n[a].classes,e.sizingClasses(r)):n[a].classes[s+1]==="reset-size"+e.size&&(n[a].classes[s+1]="reset-size"+r.size),n[a].height*=i,n[a].depth*=i}return Fe.makeFragment(n)}var Zs,_o,gt,x4e,b4e,T4e,w4e,k4e,E4e,Sz,C4e,A4e,_4e,er,Hy,qy,Xl,tA,v3,x0,lu,Yy,Co,b0,ts,jl,L4e,R4e,N4e,M4e,I4e,O4e,nr,U7,y3,v0,B4e,F4e,$4e,G4e,z4e,V4e,U4e,H4e,W4e,XG,q4e,ld,Kl,s3,jG,L7,X4e,KG,QG,x3,H7,j4e,_z,ii,Et,yh,Dz,Lz,K4e,Rz,cd,Xy,W7,Q4e,Ss,dl,Ql,jy,J4e,e3e,Ln,H,st,ie,ke,qn,It,rs,T0,rr,Si,Js,C3,Ee,fu,Le,Nz,JG,R7,o3,ez,N7,l3,b3,zy,c3,cr,ri,Da,su,mh,q7,Vy,u3,h3,tz,t3e,A3,fl,r3e,n3e,i3e,a3e,s3e,nA,Es,Mz,o3e,l3e,Iz,c3e,u3e,h3e,f3e,f3,Oz,Pz,d3e,Fe,ni,od,ou,p3e,m3e,Bz,T3,w3,k3,yi,uu,g3e,y3e,v3e,x3e,Pi,rz,Fz,b3e,Y7,Ky,$r,es,Ao,j7,mt,Do,iA,aA,Cs,vh,vn,Gz,zz,T3e,w3e,k3e,E3e,S3e,C3e,A3e,_3e,hu,oA,Vz,D3e,p3,L3e,D3,R3e,iz,az,N3e,Wz,qz,K7,Yz,O3e,Xz,Uy,lA,jz,P3e,B3e,Kz,I7,O7,Q7,m3,F3e,$3e,Qz,P7,B7,F7,G3e,Zz,z3e,Jz,Wy,V3e,U3e,H3e,eV,W3e,tV,rV,q3e,cu,sz,Y3e,cA,uA,nV,iV,R3,Jl,X3e,ec,aV,cz,sV,oV,uz,lV,dA,pA,hz,fz,cV,j3e,$7,dz,uV,hV,w0,Qy,K3e,Q3e,fV,Z3e,pz,J3e,mz,e5e,pV,G7,z7,gz,yz,vz,t5e,xz,bz,gh,mV,r5e,n5e,i5e,a5e,Z7,s5e,o5e,E3,J7,l5e,Tz,mA,wz,gA,gV,yV,vV,eA,kz,g3,V7,Ez,S3,yA,vA,xV,bV,TV,N3,wV,kV,EV,c5e,CV=N(()=>{"use strict";Zs=class t{static{o(this,"SourceLocation")}constructor(e,r,n){this.lexer=void 0,this.start=void 0,this.end=void 0,this.lexer=e,this.start=r,this.end=n}static range(e,r){return r?!e||!e.loc||!r.loc||e.loc.lexer!==r.loc.lexer?null:new t(e.loc.lexer,e.loc.start,r.loc.end):e&&e.loc}},_o=class t{static{o(this,"Token")}constructor(e,r){this.text=void 0,this.loc=void 0,this.noexpand=void 0,this.treatAsRelax=void 0,this.text=e,this.loc=r}range(e,r){return new t(r,Zs.range(this,e))}},gt=class t{static{o(this,"ParseError")}constructor(e,r){this.name=void 0,this.position=void 0,this.length=void 0,this.rawMessage=void 0;var n="KaTeX parse error: "+e,i,a,s=r&&r.loc;if(s&&s.start<=s.end){var l=s.lexer.input;i=s.start,a=s.end,i===l.length?n+=" at end of input: ":n+=" at position "+(i+1)+": ";var u=l.slice(i,a).replace(/[^]/g,"$&\u0332"),h;i>15?h="\u2026"+l.slice(i-15,i):h=l.slice(0,i);var f;a+15<l.length?f=l.slice(a,a+15)+"\u2026":f=l.slice(a),n+=h+u+f}var d=new Error(n);return d.name="ParseError",d.__proto__=t.prototype,d.position=i,i!=null&&a!=null&&(d.length=a-i),d.rawMessage=e,d}};gt.prototype.__proto__=Error.prototype;x4e=o(function(e,r){return e.indexOf(r)!==-1},"contains"),b4e=o(function(e,r){return e===void 0?r:e},"deflt"),T4e=/([A-Z])/g,w4e=o(function(e){return e.replace(T4e,"-$1").toLowerCase()},"hyphenate"),k4e={"&":"&",">":">","<":"<",'"':""","'":"'"},E4e=/[&><"']/g;o(S4e,"escape");Sz=o(function t(e){return e.type==="ordgroup"||e.type==="color"?e.body.length===1?t(e.body[0]):e:e.type==="font"?t(e.body):e},"getBaseElem"),C4e=o(function(e){var r=Sz(e);return r.type==="mathord"||r.type==="textord"||r.type==="atom"},"isCharacterBox"),A4e=o(function(e){if(!e)throw new Error("Expected non-null, but got "+String(e));return e},"assert"),_4e=o(function(e){var r=/^[\x00-\x20]*([^\\/#?]*?)(:|�*58|�*3a|&colon)/i.exec(e);return r?r[2]!==":"||!/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(r[1])?null:r[1].toLowerCase():"_relative"},"protocolFromUrl"),er={contains:x4e,deflt:b4e,escape:S4e,hyphenate:w4e,getBaseElem:Sz,isCharacterBox:C4e,protocolFromUrl:_4e},Hy={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:o(t=>"#"+t,"cliProcessor")},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:o((t,e)=>(e.push(t),e),"cliProcessor")},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:o(t=>Math.max(0,t),"processor"),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:o(t=>Math.max(0,t),"processor"),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:o(t=>Math.max(0,t),"processor"),cli:"-e, --max-expand <n>",cliProcessor:o(t=>t==="Infinity"?1/0:parseInt(t),"cliProcessor")},globalGroup:{type:"boolean",cli:!1}};o(D4e,"getDefaultValue");qy=class{static{o(this,"Settings")}constructor(e){this.displayMode=void 0,this.output=void 0,this.leqno=void 0,this.fleqn=void 0,this.throwOnError=void 0,this.errorColor=void 0,this.macros=void 0,this.minRuleThickness=void 0,this.colorIsTextColor=void 0,this.strict=void 0,this.trust=void 0,this.maxSize=void 0,this.maxExpand=void 0,this.globalGroup=void 0,e=e||{};for(var r in Hy)if(Hy.hasOwnProperty(r)){var n=Hy[r];this[r]=e[r]!==void 0?n.processor?n.processor(e[r]):e[r]:D4e(n)}}reportNonstrict(e,r,n){var i=this.strict;if(typeof i=="function"&&(i=i(e,r,n)),!(!i||i==="ignore")){if(i===!0||i==="error")throw new gt("LaTeX-incompatible input and strict mode is set to 'error': "+(r+" ["+e+"]"),n);i==="warn"?typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(r+" ["+e+"]")):typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+i+"': "+r+" ["+e+"]"))}}useStrictBehavior(e,r,n){var i=this.strict;if(typeof i=="function")try{i=i(e,r,n)}catch{i="error"}return!i||i==="ignore"?!1:i===!0||i==="error"?!0:i==="warn"?(typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(r+" ["+e+"]")),!1):(typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+i+"': "+r+" ["+e+"]")),!1)}isTrusted(e){if(e.url&&!e.protocol){var r=er.protocolFromUrl(e.url);if(r==null)return!1;e.protocol=r}var n=typeof this.trust=="function"?this.trust(e):this.trust;return!!n}},Xl=class{static{o(this,"Style")}constructor(e,r,n){this.id=void 0,this.size=void 0,this.cramped=void 0,this.id=e,this.size=r,this.cramped=n}sup(){return jl[L4e[this.id]]}sub(){return jl[R4e[this.id]]}fracNum(){return jl[N4e[this.id]]}fracDen(){return jl[M4e[this.id]]}cramp(){return jl[I4e[this.id]]}text(){return jl[O4e[this.id]]}isTight(){return this.size>=2}},tA=0,v3=1,x0=2,lu=3,Yy=4,Co=5,b0=6,ts=7,jl=[new Xl(tA,0,!1),new Xl(v3,0,!0),new Xl(x0,1,!1),new Xl(lu,1,!0),new Xl(Yy,2,!1),new Xl(Co,2,!0),new Xl(b0,3,!1),new Xl(ts,3,!0)],L4e=[Yy,Co,Yy,Co,b0,ts,b0,ts],R4e=[Co,Co,Co,Co,ts,ts,ts,ts],N4e=[x0,lu,Yy,Co,b0,ts,b0,ts],M4e=[lu,lu,Co,Co,ts,ts,ts,ts],I4e=[v3,v3,lu,lu,Co,Co,ts,ts],O4e=[tA,v3,x0,lu,x0,lu,x0,lu],nr={DISPLAY:jl[tA],TEXT:jl[x0],SCRIPT:jl[Yy],SCRIPTSCRIPT:jl[b0]},U7=[{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]]}];o(P4e,"scriptFromCodepoint");y3=[];U7.forEach(t=>t.blocks.forEach(e=>y3.push(...e)));o(Cz,"supportedCodepoint");v0=80,B4e=o(function(e,r){return"M95,"+(622+e+r)+`
|
||
c-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14
|
||
c0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54
|
||
c44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10
|
||
s173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429
|
||
c69,-144,104.5,-217.7,106.5,-221
|
||
l`+e/2.075+" -"+e+`
|
||
c5.3,-9.3,12,-14,20,-14
|
||
H400000v`+(40+e)+`H845.2724
|
||
s-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7
|
||
c-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z
|
||
M`+(834+e)+" "+r+"h400000v"+(40+e)+"h-400000z"},"sqrtMain"),F4e=o(function(e,r){return"M263,"+(601+e+r)+`c0.7,0,18,39.7,52,119
|
||
c34,79.3,68.167,158.7,102.5,238c34.3,79.3,51.8,119.3,52.5,120
|
||
c340,-704.7,510.7,-1060.3,512,-1067
|
||
l`+e/2.084+" -"+e+`
|
||
c4.7,-7.3,11,-11,19,-11
|
||
H40000v`+(40+e)+`H1012.3
|
||
s-271.3,567,-271.3,567c-38.7,80.7,-84,175,-136,283c-52,108,-89.167,185.3,-111.5,232
|
||
c-22.3,46.7,-33.8,70.3,-34.5,71c-4.7,4.7,-12.3,7,-23,7s-12,-1,-12,-1
|
||
s-109,-253,-109,-253c-72.7,-168,-109.3,-252,-110,-252c-10.7,8,-22,16.7,-34,26
|
||
c-22,17.3,-33.3,26,-34,26s-26,-26,-26,-26s76,-59,76,-59s76,-60,76,-60z
|
||
M`+(1001+e)+" "+r+"h400000v"+(40+e)+"h-400000z"},"sqrtSize1"),$4e=o(function(e,r){return"M983 "+(10+e+r)+`
|
||
l`+e/3.13+" -"+e+`
|
||
c4,-6.7,10,-10,18,-10 H400000v`+(40+e)+`
|
||
H1013.1s-83.4,268,-264.1,840c-180.7,572,-277,876.3,-289,913c-4.7,4.7,-12.7,7,-24,7
|
||
s-12,0,-12,0c-1.3,-3.3,-3.7,-11.7,-7,-25c-35.3,-125.3,-106.7,-373.3,-214,-744
|
||
c-10,12,-21,25,-33,39s-32,39,-32,39c-6,-5.3,-15,-14,-27,-26s25,-30,25,-30
|
||
c26.7,-32.7,52,-63,76,-91s52,-60,52,-60s208,722,208,722
|
||
c56,-175.3,126.3,-397.3,211,-666c84.7,-268.7,153.8,-488.2,207.5,-658.5
|
||
c53.7,-170.3,84.5,-266.8,92.5,-289.5z
|
||
M`+(1001+e)+" "+r+"h400000v"+(40+e)+"h-400000z"},"sqrtSize2"),G4e=o(function(e,r){return"M424,"+(2398+e+r)+`
|
||
c-1.3,-0.7,-38.5,-172,-111.5,-514c-73,-342,-109.8,-513.3,-110.5,-514
|
||
c0,-2,-10.7,14.3,-32,49c-4.7,7.3,-9.8,15.7,-15.5,25c-5.7,9.3,-9.8,16,-12.5,20
|
||
s-5,7,-5,7c-4,-3.3,-8.3,-7.7,-13,-13s-13,-13,-13,-13s76,-122,76,-122s77,-121,77,-121
|
||
s209,968,209,968c0,-2,84.7,-361.7,254,-1079c169.3,-717.3,254.7,-1077.7,256,-1081
|
||
l`+e/4.223+" -"+e+`c4,-6.7,10,-10,18,-10 H400000
|
||
v`+(40+e)+`H1014.6
|
||
s-87.3,378.7,-272.6,1166c-185.3,787.3,-279.3,1182.3,-282,1185
|
||
c-2,6,-10,9,-24,9
|
||
c-8,0,-12,-0.7,-12,-2z M`+(1001+e)+" "+r+`
|
||
h400000v`+(40+e)+"h-400000z"},"sqrtSize3"),z4e=o(function(e,r){return"M473,"+(2713+e+r)+`
|
||
c339.3,-1799.3,509.3,-2700,510,-2702 l`+e/5.298+" -"+e+`
|
||
c3.3,-7.3,9.3,-11,18,-11 H400000v`+(40+e)+`H1017.7
|
||
s-90.5,478,-276.2,1466c-185.7,988,-279.5,1483,-281.5,1485c-2,6,-10,9,-24,9
|
||
c-8,0,-12,-0.7,-12,-2c0,-1.3,-5.3,-32,-16,-92c-50.7,-293.3,-119.7,-693.3,-207,-1200
|
||
c0,-1.3,-5.3,8.7,-16,30c-10.7,21.3,-21.3,42.7,-32,64s-16,33,-16,33s-26,-26,-26,-26
|
||
s76,-153,76,-153s77,-151,77,-151c0.7,0.7,35.7,202,105,604c67.3,400.7,102,602.7,104,
|
||
606zM`+(1001+e)+" "+r+"h400000v"+(40+e)+"H1017.7z"},"sqrtSize4"),V4e=o(function(e){var r=e/2;return"M400000 "+e+" H0 L"+r+" 0 l65 45 L145 "+(e-80)+" H400000z"},"phasePath"),U4e=o(function(e,r,n){var i=n-54-r-e;return"M702 "+(e+r)+"H400000"+(40+e)+`
|
||
H742v`+i+`l-4 4-4 4c-.667.7 -2 1.5-4 2.5s-4.167 1.833-6.5 2.5-5.5 1-9.5 1
|
||
h-12l-28-84c-16.667-52-96.667 -294.333-240-727l-212 -643 -85 170
|
||
c-4-3.333-8.333-7.667-13 -13l-13-13l77-155 77-156c66 199.333 139 419.667
|
||
219 661 l218 661zM702 `+r+"H400000v"+(40+e)+"H742z"},"sqrtTall"),H4e=o(function(e,r,n){r=1e3*r;var i="";switch(e){case"sqrtMain":i=B4e(r,v0);break;case"sqrtSize1":i=F4e(r,v0);break;case"sqrtSize2":i=$4e(r,v0);break;case"sqrtSize3":i=G4e(r,v0);break;case"sqrtSize4":i=z4e(r,v0);break;case"sqrtTall":i=U4e(r,v0,n)}return i},"sqrtPath"),W4e=o(function(e,r){switch(e){case"\u239C":return"M291 0 H417 V"+r+" H291z M291 0 H417 V"+r+" H291z";case"\u2223":return"M145 0 H188 V"+r+" H145z M145 0 H188 V"+r+" H145z";case"\u2225":return"M145 0 H188 V"+r+" H145z M145 0 H188 V"+r+" H145z"+("M367 0 H410 V"+r+" H367z M367 0 H410 V"+r+" H367z");case"\u239F":return"M457 0 H583 V"+r+" H457z M457 0 H583 V"+r+" H457z";case"\u23A2":return"M319 0 H403 V"+r+" H319z M319 0 H403 V"+r+" H319z";case"\u23A5":return"M263 0 H347 V"+r+" H263z M263 0 H347 V"+r+" H263z";case"\u23AA":return"M384 0 H504 V"+r+" H384z M384 0 H504 V"+r+" H384z";case"\u23D0":return"M312 0 H355 V"+r+" H312z M312 0 H355 V"+r+" H312z";case"\u2016":return"M257 0 H300 V"+r+" H257z M257 0 H300 V"+r+" H257z"+("M478 0 H521 V"+r+" H478z M478 0 H521 V"+r+" H478z");default:return""}},"innerPath"),XG={doubleleftarrow:`M262 157
|
||
l10-10c34-36 62.7-77 86-123 3.3-8 5-13.3 5-16 0-5.3-6.7-8-20-8-7.3
|
||
0-12.2.5-14.5 1.5-2.3 1-4.8 4.5-7.5 10.5-49.3 97.3-121.7 169.3-217 216-28
|
||
14-57.3 25-88 33-6.7 2-11 3.8-13 5.5-2 1.7-3 4.2-3 7.5s1 5.8 3 7.5
|
||
c2 1.7 6.3 3.5 13 5.5 68 17.3 128.2 47.8 180.5 91.5 52.3 43.7 93.8 96.2 124.5
|
||
157.5 9.3 8 15.3 12.3 18 13h6c12-.7 18-4 18-10 0-2-1.7-7-5-15-23.3-46-52-87
|
||
-86-123l-10-10h399738v-40H218c328 0 0 0 0 0l-10-8c-26.7-20-65.7-43-117-69 2.7
|
||
-2 6-3.7 10-5 36.7-16 72.3-37.3 107-64l10-8h399782v-40z
|
||
m8 0v40h399730v-40zm0 194v40h399730v-40z`,doublerightarrow:`M399738 392l
|
||
-10 10c-34 36-62.7 77-86 123-3.3 8-5 13.3-5 16 0 5.3 6.7 8 20 8 7.3 0 12.2-.5
|
||
14.5-1.5 2.3-1 4.8-4.5 7.5-10.5 49.3-97.3 121.7-169.3 217-216 28-14 57.3-25 88
|
||
-33 6.7-2 11-3.8 13-5.5 2-1.7 3-4.2 3-7.5s-1-5.8-3-7.5c-2-1.7-6.3-3.5-13-5.5-68
|
||
-17.3-128.2-47.8-180.5-91.5-52.3-43.7-93.8-96.2-124.5-157.5-9.3-8-15.3-12.3-18
|
||
-13h-6c-12 .7-18 4-18 10 0 2 1.7 7 5 15 23.3 46 52 87 86 123l10 10H0v40h399782
|
||
c-328 0 0 0 0 0l10 8c26.7 20 65.7 43 117 69-2.7 2-6 3.7-10 5-36.7 16-72.3 37.3
|
||
-107 64l-10 8H0v40zM0 157v40h399730v-40zm0 194v40h399730v-40z`,leftarrow:`M400000 241H110l3-3c68.7-52.7 113.7-120
|
||
135-202 4-14.7 6-23 6-25 0-7.3-7-11-21-11-8 0-13.2.8-15.5 2.5-2.3 1.7-4.2 5.8
|
||
-5.5 12.5-1.3 4.7-2.7 10.3-4 17-12 48.7-34.8 92-68.5 130S65.3 228.3 18 247
|
||
c-10 4-16 7.7-18 11 0 8.7 6 14.3 18 17 47.3 18.7 87.8 47 121.5 85S196 441.3 208
|
||
490c.7 2 1.3 5 2 9s1.2 6.7 1.5 8c.3 1.3 1 3.3 2 6s2.2 4.5 3.5 5.5c1.3 1 3.3
|
||
1.8 6 2.5s6 1 10 1c14 0 21-3.7 21-11 0-2-2-10.3-6-25-20-79.3-65-146.7-135-202
|
||
l-3-3h399890zM100 241v40h399900v-40z`,leftbrace:`M6 548l-6-6v-35l6-11c56-104 135.3-181.3 238-232 57.3-28.7 117
|
||
-45 179-50h399577v120H403c-43.3 7-81 15-113 26-100.7 33-179.7 91-237 174-2.7
|
||
5-6 9-10 13-.7 1-7.3 1-20 1H6z`,leftbraceunder:`M0 6l6-6h17c12.688 0 19.313.3 20 1 4 4 7.313 8.3 10 13
|
||
35.313 51.3 80.813 93.8 136.5 127.5 55.688 33.7 117.188 55.8 184.5 66.5.688
|
||
0 2 .3 4 1 18.688 2.7 76 4.3 172 5h399450v120H429l-6-1c-124.688-8-235-61.7
|
||
-331-161C60.687 138.7 32.312 99.3 7 54L0 41V6z`,leftgroup:`M400000 80
|
||
H435C64 80 168.3 229.4 21 260c-5.9 1.2-18 0-18 0-2 0-3-1-3-3v-38C76 61 257 0
|
||
435 0h399565z`,leftgroupunder:`M400000 262
|
||
H435C64 262 168.3 112.6 21 82c-5.9-1.2-18 0-18 0-2 0-3 1-3 3v38c76 158 257 219
|
||
435 219h399565z`,leftharpoon:`M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3
|
||
-3.3 10.2-9.5 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5
|
||
-18.3 3-21-1.3-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7
|
||
-196 228-6.7 4.7-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40z`,leftharpoonplus:`M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3-3.3 10.2-9.5
|
||
20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5-18.3 3-21-1.3
|
||
-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7-196 228-6.7 4.7
|
||
-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40zM0 435v40h400000v-40z
|
||
m0 0v40h400000v-40z`,leftharpoondown:`M7 241c-4 4-6.333 8.667-7 14 0 5.333.667 9 2 11s5.333
|
||
5.333 12 10c90.667 54 156 130 196 228 3.333 10.667 6.333 16.333 9 17 2 .667 5
|
||
1 9 1h5c10.667 0 16.667-2 18-6 2-2.667 1-9.667-3-21-32-87.333-82.667-157.667
|
||
-152-211l-3-3h399907v-40zM93 281 H400000 v-40L7 241z`,leftharpoondownplus:`M7 435c-4 4-6.3 8.7-7 14 0 5.3.7 9 2 11s5.3 5.3 12
|
||
10c90.7 54 156 130 196 228 3.3 10.7 6.3 16.3 9 17 2 .7 5 1 9 1h5c10.7 0 16.7
|
||
-2 18-6 2-2.7 1-9.7-3-21-32-87.3-82.7-157.7-152-211l-3-3h399907v-40H7zm93 0
|
||
v40h399900v-40zM0 241v40h399900v-40zm0 0v40h399900v-40z`,lefthook:`M400000 281 H103s-33-11.2-61-33.5S0 197.3 0 164s14.2-61.2 42.5
|
||
-83.5C70.8 58.2 104 47 142 47 c16.7 0 25 6.7 25 20 0 12-8.7 18.7-26 20-40 3.3
|
||
-68.7 15.7-86 37-10 12-15 25.3-15 40 0 22.7 9.8 40.7 29.5 54 19.7 13.3 43.5 21
|
||
71.5 23h399859zM103 281v-40h399897v40z`,leftlinesegment:`M40 281 V428 H0 V94 H40 V241 H400000 v40z
|
||
M40 281 V428 H0 V94 H40 V241 H400000 v40z`,leftmapsto:`M40 281 V448H0V74H40V241H400000v40z
|
||
M40 281 V448H0V74H40V241H400000v40z`,leftToFrom:`M0 147h400000v40H0zm0 214c68 40 115.7 95.7 143 167h22c15.3 0 23
|
||
-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69-70-101l-7-8h399905v-40H95l7-8
|
||
c28.7-32 52-65.7 70-101 10.7-23.3 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 265.3
|
||
68 321 0 361zm0-174v-40h399900v40zm100 154v40h399900v-40z`,longequal:`M0 50 h400000 v40H0z m0 194h40000v40H0z
|
||
M0 50 h400000 v40H0z m0 194h40000v40H0z`,midbrace:`M200428 334
|
||
c-100.7-8.3-195.3-44-280-108-55.3-42-101.7-93-139-153l-9-14c-2.7 4-5.7 8.7-9 14
|
||
-53.3 86.7-123.7 153-211 199-66.7 36-137.3 56.3-212 62H0V214h199568c178.3-11.7
|
||
311.7-78.3 403-201 6-8 9.7-12 11-12 .7-.7 6.7-1 18-1s17.3.3 18 1c1.3 0 5 4 11
|
||
12 44.7 59.3 101.3 106.3 170 141s145.3 54.3 229 60h199572v120z`,midbraceunder:`M199572 214
|
||
c100.7 8.3 195.3 44 280 108 55.3 42 101.7 93 139 153l9 14c2.7-4 5.7-8.7 9-14
|
||
53.3-86.7 123.7-153 211-199 66.7-36 137.3-56.3 212-62h199568v120H200432c-178.3
|
||
11.7-311.7 78.3-403 201-6 8-9.7 12-11 12-.7.7-6.7 1-18 1s-17.3-.3-18-1c-1.3 0
|
||
-5-4-11-12-44.7-59.3-101.3-106.3-170-141s-145.3-54.3-229-60H0V214z`,oiintSize1:`M512.6 71.6c272.6 0 320.3 106.8 320.3 178.2 0 70.8-47.7 177.6
|
||
-320.3 177.6S193.1 320.6 193.1 249.8c0-71.4 46.9-178.2 319.5-178.2z
|
||
m368.1 178.2c0-86.4-60.9-215.4-368.1-215.4-306.4 0-367.3 129-367.3 215.4 0 85.8
|
||
60.9 214.8 367.3 214.8 307.2 0 368.1-129 368.1-214.8z`,oiintSize2:`M757.8 100.1c384.7 0 451.1 137.6 451.1 230 0 91.3-66.4 228.8
|
||
-451.1 228.8-386.3 0-452.7-137.5-452.7-228.8 0-92.4 66.4-230 452.7-230z
|
||
m502.4 230c0-111.2-82.4-277.2-502.4-277.2s-504 166-504 277.2
|
||
c0 110 84 276 504 276s502.4-166 502.4-276z`,oiiintSize1:`M681.4 71.6c408.9 0 480.5 106.8 480.5 178.2 0 70.8-71.6 177.6
|
||
-480.5 177.6S202.1 320.6 202.1 249.8c0-71.4 70.5-178.2 479.3-178.2z
|
||
m525.8 178.2c0-86.4-86.8-215.4-525.7-215.4-437.9 0-524.7 129-524.7 215.4 0
|
||
85.8 86.8 214.8 524.7 214.8 438.9 0 525.7-129 525.7-214.8z`,oiiintSize2:`M1021.2 53c603.6 0 707.8 165.8 707.8 277.2 0 110-104.2 275.8
|
||
-707.8 275.8-606 0-710.2-165.8-710.2-275.8C311 218.8 415.2 53 1021.2 53z
|
||
m770.4 277.1c0-131.2-126.4-327.6-770.5-327.6S248.4 198.9 248.4 330.1
|
||
c0 130 128.8 326.4 772.7 326.4s770.5-196.4 770.5-326.4z`,rightarrow:`M0 241v40h399891c-47.3 35.3-84 78-110 128
|
||
-16.7 32-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20
|
||
11 8 0 13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7
|
||
39-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85
|
||
-40.5-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5
|
||
-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67
|
||
151.7 139 205zm0 0v40h399900v-40z`,rightbrace:`M400000 542l
|
||
-6 6h-17c-12.7 0-19.3-.3-20-1-4-4-7.3-8.3-10-13-35.3-51.3-80.8-93.8-136.5-127.5
|
||
s-117.2-55.8-184.5-66.5c-.7 0-2-.3-4-1-18.7-2.7-76-4.3-172-5H0V214h399571l6 1
|
||
c124.7 8 235 61.7 331 161 31.3 33.3 59.7 72.7 85 118l7 13v35z`,rightbraceunder:`M399994 0l6 6v35l-6 11c-56 104-135.3 181.3-238 232-57.3
|
||
28.7-117 45-179 50H-300V214h399897c43.3-7 81-15 113-26 100.7-33 179.7-91 237
|
||
-174 2.7-5 6-9 10-13 .7-1 7.3-1 20-1h17z`,rightgroup:`M0 80h399565c371 0 266.7 149.4 414 180 5.9 1.2 18 0 18 0 2 0
|
||
3-1 3-3v-38c-76-158-257-219-435-219H0z`,rightgroupunder:`M0 262h399565c371 0 266.7-149.4 414-180 5.9-1.2 18 0 18
|
||
0 2 0 3 1 3 3v38c-76 158-257 219-435 219H0z`,rightharpoon:`M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3
|
||
-3.7-15.3-11-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2
|
||
-10.7 0-16.7 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58
|
||
69.2 92 94.5zm0 0v40h399900v-40z`,rightharpoonplus:`M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3-3.7-15.3-11
|
||
-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2-10.7 0-16.7
|
||
2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58 69.2 92 94.5z
|
||
m0 0v40h399900v-40z m100 194v40h399900v-40zm0 0v40h399900v-40z`,rightharpoondown:`M399747 511c0 7.3 6.7 11 20 11 8 0 13-.8 15-2.5s4.7-6.8
|
||
8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3 8.5-5.8 9.5
|
||
-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3-64.7 57-92 95
|
||
-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 241v40h399900v-40z`,rightharpoondownplus:`M399747 705c0 7.3 6.7 11 20 11 8 0 13-.8
|
||
15-2.5s4.7-6.8 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3
|
||
8.5-5.8 9.5-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3
|
||
-64.7 57-92 95-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 435v40h399900v-40z
|
||
m0-194v40h400000v-40zm0 0v40h400000v-40z`,righthook:`M399859 241c-764 0 0 0 0 0 40-3.3 68.7-15.7 86-37 10-12 15-25.3
|
||
15-40 0-22.7-9.8-40.7-29.5-54-19.7-13.3-43.5-21-71.5-23-17.3-1.3-26-8-26-20 0
|
||
-13.3 8.7-20 26-20 38 0 71 11.2 99 33.5 0 0 7 5.6 21 16.7 14 11.2 21 33.5 21
|
||
66.8s-14 61.2-42 83.5c-28 22.3-61 33.5-99 33.5L0 241z M0 281v-40h399859v40z`,rightlinesegment:`M399960 241 V94 h40 V428 h-40 V281 H0 v-40z
|
||
M399960 241 V94 h40 V428 h-40 V281 H0 v-40z`,rightToFrom:`M400000 167c-70.7-42-118-97.7-142-167h-23c-15.3 0-23 .3-23
|
||
1 0 1.3 5.3 13.7 16 37 18 35.3 41.3 69 70 101l7 8H0v40h399905l-7 8c-28.7 32
|
||
-52 65.7-70 101-10.7 23.3-16 35.7-16 37 0 .7 7.7 1 23 1h23c24-69.3 71.3-125 142
|
||
-167z M100 147v40h399900v-40zM0 341v40h399900v-40z`,twoheadleftarrow:`M0 167c68 40
|
||
115.7 95.7 143 167h22c15.3 0 23-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69
|
||
-70-101l-7-8h125l9 7c50.7 39.3 85 86 103 140h46c0-4.7-6.3-18.7-19-42-18-35.3
|
||
-40-67.3-66-96l-9-9h399716v-40H284l9-9c26-28.7 48-60.7 66-96 12.7-23.333 19
|
||
-37.333 19-42h-46c-18 54-52.3 100.7-103 140l-9 7H95l7-8c28.7-32 52-65.7 70-101
|
||
10.7-23.333 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 71.3 68 127 0 167z`,twoheadrightarrow:`M400000 167
|
||
c-68-40-115.7-95.7-143-167h-22c-15.3 0-23 .3-23 1 0 1.3 5.3 13.7 16 37 18 35.3
|
||
41.3 69 70 101l7 8h-125l-9-7c-50.7-39.3-85-86-103-140h-46c0 4.7 6.3 18.7 19 42
|
||
18 35.3 40 67.3 66 96l9 9H0v40h399716l-9 9c-26 28.7-48 60.7-66 96-12.7 23.333
|
||
-19 37.333-19 42h46c18-54 52.3-100.7 103-140l9-7h125l-7 8c-28.7 32-52 65.7-70
|
||
101-10.7 23.333-16 35.7-16 37 0 .7 7.7 1 23 1h22c27.3-71.3 75-127 143-167z`,tilde1:`M200 55.538c-77 0-168 73.953-177 73.953-3 0-7
|
||
-2.175-9-5.437L2 97c-1-2-2-4-2-6 0-4 2-7 5-9l20-12C116 12 171 0 207 0c86 0
|
||
114 68 191 68 78 0 168-68 177-68 4 0 7 2 9 5l12 19c1 2.175 2 4.35 2 6.525 0
|
||
4.35-2 7.613-5 9.788l-19 13.05c-92 63.077-116.937 75.308-183 76.128
|
||
-68.267.847-113-73.952-191-73.952z`,tilde2:`M344 55.266c-142 0-300.638 81.316-311.5 86.418
|
||
-8.01 3.762-22.5 10.91-23.5 5.562L1 120c-1-2-1-3-1-4 0-5 3-9 8-10l18.4-9C160.9
|
||
31.9 283 0 358 0c148 0 188 122 331 122s314-97 326-97c4 0 8 2 10 7l7 21.114
|
||
c1 2.14 1 3.21 1 4.28 0 5.347-3 9.626-7 10.696l-22.3 12.622C852.6 158.372 751
|
||
181.476 676 181.476c-149 0-189-126.21-332-126.21z`,tilde3:`M786 59C457 59 32 175.242 13 175.242c-6 0-10-3.457
|
||
-11-10.37L.15 138c-1-7 3-12 10-13l19.2-6.4C378.4 40.7 634.3 0 804.3 0c337 0
|
||
411.8 157 746.8 157 328 0 754-112 773-112 5 0 10 3 11 9l1 14.075c1 8.066-.697
|
||
16.595-6.697 17.492l-21.052 7.31c-367.9 98.146-609.15 122.696-778.15 122.696
|
||
-338 0-409-156.573-744-156.573z`,tilde4:`M786 58C457 58 32 177.487 13 177.487c-6 0-10-3.345
|
||
-11-10.035L.15 143c-1-7 3-12 10-13l22-6.7C381.2 35 637.15 0 807.15 0c337 0 409
|
||
177 744 177 328 0 754-127 773-127 5 0 10 3 11 9l1 14.794c1 7.805-3 13.38-9
|
||
14.495l-20.7 5.574c-366.85 99.79-607.3 139.372-776.3 139.372-338 0-409
|
||
-175.236-744-175.236z`,vec:`M377 20c0-5.333 1.833-10 5.5-14S391 0 397 0c4.667 0 8.667 1.667 12 5
|
||
3.333 2.667 6.667 9 10 19 6.667 24.667 20.333 43.667 41 57 7.333 4.667 11
|
||
10.667 11 18 0 6-1 10-3 12s-6.667 5-14 9c-28.667 14.667-53.667 35.667-75 63
|
||
-1.333 1.333-3.167 3.5-5.5 6.5s-4 4.833-5 5.5c-1 .667-2.5 1.333-4.5 2s-4.333 1
|
||
-7 1c-4.667 0-9.167-1.833-13.5-5.5S337 184 337 178c0-12.667 15.667-32.333 47-59
|
||
H213l-171-1c-8.667-6-13-12.333-13-19 0-4.667 4.333-11.333 13-20h359
|
||
c-16-25.333-24-45-24-59z`,widehat1:`M529 0h5l519 115c5 1 9 5 9 10 0 1-1 2-1 3l-4 22
|
||
c-1 5-5 9-11 9h-2L532 67 19 159h-2c-5 0-9-4-11-9l-5-22c-1-6 2-12 8-13z`,widehat2:`M1181 0h2l1171 176c6 0 10 5 10 11l-2 23c-1 6-5 10
|
||
-11 10h-1L1182 67 15 220h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widehat3:`M1181 0h2l1171 236c6 0 10 5 10 11l-2 23c-1 6-5 10
|
||
-11 10h-1L1182 67 15 280h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widehat4:`M1181 0h2l1171 296c6 0 10 5 10 11l-2 23c-1 6-5 10
|
||
-11 10h-1L1182 67 15 340h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widecheck1:`M529,159h5l519,-115c5,-1,9,-5,9,-10c0,-1,-1,-2,-1,-3l-4,-22c-1,
|
||
-5,-5,-9,-11,-9h-2l-512,92l-513,-92h-2c-5,0,-9,4,-11,9l-5,22c-1,6,2,12,8,13z`,widecheck2:`M1181,220h2l1171,-176c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,
|
||
-11,-10h-1l-1168,153l-1167,-153h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,widecheck3:`M1181,280h2l1171,-236c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,
|
||
-11,-10h-1l-1168,213l-1167,-213h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,widecheck4:`M1181,340h2l1171,-296c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,
|
||
-11,-10h-1l-1168,273l-1167,-273h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,baraboveleftarrow:`M400000 620h-399890l3 -3c68.7 -52.7 113.7 -120 135 -202
|
||
c4 -14.7 6 -23 6 -25c0 -7.3 -7 -11 -21 -11c-8 0 -13.2 0.8 -15.5 2.5
|
||
c-2.3 1.7 -4.2 5.8 -5.5 12.5c-1.3 4.7 -2.7 10.3 -4 17c-12 48.7 -34.8 92 -68.5 130
|
||
s-74.2 66.3 -121.5 85c-10 4 -16 7.7 -18 11c0 8.7 6 14.3 18 17c47.3 18.7 87.8 47
|
||
121.5 85s56.5 81.3 68.5 130c0.7 2 1.3 5 2 9s1.2 6.7 1.5 8c0.3 1.3 1 3.3 2 6
|
||
s2.2 4.5 3.5 5.5c1.3 1 3.3 1.8 6 2.5s6 1 10 1c14 0 21 -3.7 21 -11
|
||
c0 -2 -2 -10.3 -6 -25c-20 -79.3 -65 -146.7 -135 -202l-3 -3h399890z
|
||
M100 620v40h399900v-40z M0 241v40h399900v-40zM0 241v40h399900v-40z`,rightarrowabovebar:`M0 241v40h399891c-47.3 35.3-84 78-110 128-16.7 32
|
||
-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20 11 8 0
|
||
13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7 39
|
||
-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85-40.5
|
||
-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5
|
||
-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67
|
||
151.7 139 205zm96 379h399894v40H0zm0 0h399904v40H0z`,baraboveshortleftharpoon:`M507,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11
|
||
c1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17
|
||
c2,0.7,5,1,9,1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21
|
||
c-32,-87.3,-82.7,-157.7,-152,-211c0,0,-3,-3,-3,-3l399351,0l0,-40
|
||
c-398570,0,-399437,0,-399437,0z M593 435 v40 H399500 v-40z
|
||
M0 281 v-40 H399908 v40z M0 281 v-40 H399908 v40z`,rightharpoonaboveshortbar:`M0,241 l0,40c399126,0,399993,0,399993,0
|
||
c4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,
|
||
-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6
|
||
c-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z
|
||
M0 241 v40 H399908 v-40z M0 475 v-40 H399500 v40z M0 475 v-40 H399500 v40z`,shortbaraboveleftharpoon:`M7,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11
|
||
c1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17c2,0.7,5,1,9,
|
||
1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21c-32,-87.3,-82.7,-157.7,
|
||
-152,-211c0,0,-3,-3,-3,-3l399907,0l0,-40c-399126,0,-399993,0,-399993,0z
|
||
M93 435 v40 H400000 v-40z M500 241 v40 H400000 v-40z M500 241 v40 H400000 v-40z`,shortrightharpoonabovebar:`M53,241l0,40c398570,0,399437,0,399437,0
|
||
c4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,
|
||
-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6
|
||
c-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z
|
||
M500 241 v40 H399408 v-40z M500 435 v40 H400000 v-40z`},q4e=o(function(e,r){switch(e){case"lbrack":return"M403 1759 V84 H666 V0 H319 V1759 v"+r+` v1759 h347 v-84
|
||
H403z M403 1759 V0 H319 V1759 v`+r+" v1759 h84z";case"rbrack":return"M347 1759 V0 H0 V84 H263 V1759 v"+r+` v1759 H0 v84 H347z
|
||
M347 1759 V0 H263 V1759 v`+r+" v1759 h84z";case"vert":return"M145 15 v585 v"+r+` v585 c2.667,10,9.667,15,21,15
|
||
c10,0,16.667,-5,20,-15 v-585 v`+-r+` v-585 c-2.667,-10,-9.667,-15,-21,-15
|
||
c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+r+" v585 h43z";case"doublevert":return"M145 15 v585 v"+r+` v585 c2.667,10,9.667,15,21,15
|
||
c10,0,16.667,-5,20,-15 v-585 v`+-r+` v-585 c-2.667,-10,-9.667,-15,-21,-15
|
||
c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+r+` v585 h43z
|
||
M367 15 v585 v`+r+` v585 c2.667,10,9.667,15,21,15
|
||
c10,0,16.667,-5,20,-15 v-585 v`+-r+` v-585 c-2.667,-10,-9.667,-15,-21,-15
|
||
c-10,0,-16.667,5,-20,15z M410 15 H367 v585 v`+r+" v585 h43z";case"lfloor":return"M319 602 V0 H403 V602 v"+r+` v1715 h263 v84 H319z
|
||
MM319 602 V0 H403 V602 v`+r+" v1715 H319z";case"rfloor":return"M319 602 V0 H403 V602 v"+r+` v1799 H0 v-84 H319z
|
||
MM319 602 V0 H403 V602 v`+r+" v1715 H319z";case"lceil":return"M403 1759 V84 H666 V0 H319 V1759 v"+r+` v602 h84z
|
||
M403 1759 V0 H319 V1759 v`+r+" v602 h84z";case"rceil":return"M347 1759 V0 H0 V84 H263 V1759 v"+r+` v602 h84z
|
||
M347 1759 V0 h-84 V1759 v`+r+" v602 h84z";case"lparen":return`M863,9c0,-2,-2,-5,-6,-9c0,0,-17,0,-17,0c-12.7,0,-19.3,0.3,-20,1
|
||
c-5.3,5.3,-10.3,11,-15,17c-242.7,294.7,-395.3,682,-458,1162c-21.3,163.3,-33.3,349,
|
||
-36,557 l0,`+(r+84)+`c0.2,6,0,26,0,60c2,159.3,10,310.7,24,454c53.3,528,210,
|
||
949.7,470,1265c4.7,6,9.7,11.7,15,17c0.7,0.7,7,1,19,1c0,0,18,0,18,0c4,-4,6,-7,6,-9
|
||
c0,-2.7,-3.3,-8.7,-10,-18c-135.3,-192.7,-235.5,-414.3,-300.5,-665c-65,-250.7,-102.5,
|
||
-544.7,-112.5,-882c-2,-104,-3,-167,-3,-189
|
||
l0,-`+(r+92)+`c0,-162.7,5.7,-314,17,-454c20.7,-272,63.7,-513,129,-723c65.3,
|
||
-210,155.3,-396.3,270,-559c6.7,-9.3,10,-15.3,10,-18z`;case"rparen":return`M76,0c-16.7,0,-25,3,-25,9c0,2,2,6.3,6,13c21.3,28.7,42.3,60.3,
|
||
63,95c96.7,156.7,172.8,332.5,228.5,527.5c55.7,195,92.8,416.5,111.5,664.5
|
||
c11.3,139.3,17,290.7,17,454c0,28,1.7,43,3.3,45l0,`+(r+9)+`
|
||
c-3,4,-3.3,16.7,-3.3,38c0,162,-5.7,313.7,-17,455c-18.7,248,-55.8,469.3,-111.5,664
|
||
c-55.7,194.7,-131.8,370.3,-228.5,527c-20.7,34.7,-41.7,66.3,-63,95c-2,3.3,-4,7,-6,11
|
||
c0,7.3,5.7,11,17,11c0,0,11,0,11,0c9.3,0,14.3,-0.3,15,-1c5.3,-5.3,10.3,-11,15,-17
|
||
c242.7,-294.7,395.3,-681.7,458,-1161c21.3,-164.7,33.3,-350.7,36,-558
|
||
l0,-`+(r+144)+`c-2,-159.3,-10,-310.7,-24,-454c-53.3,-528,-210,-949.7,
|
||
-470,-1265c-4.7,-6,-9.7,-11.7,-15,-17c-0.7,-0.7,-6.7,-1,-18,-1z`;default:throw new Error("Unknown stretchy delimiter.")}},"tallDelim"),ld=class{static{o(this,"DocumentFragment")}constructor(e){this.children=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.children=e,this.classes=[],this.height=0,this.depth=0,this.maxFontSize=0,this.style={}}hasClass(e){return er.contains(this.classes,e)}toNode(){for(var e=document.createDocumentFragment(),r=0;r<this.children.length;r++)e.appendChild(this.children[r].toNode());return e}toMarkup(){for(var e="",r=0;r<this.children.length;r++)e+=this.children[r].toMarkup();return e}toText(){var e=o(r=>r.toText(),"toText");return this.children.map(e).join("")}},Kl={"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]}},s3={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]},jG={\u00C5:"A",\u00D0:"D",\u00DE:"o",\u00E5:"a",\u00F0:"d",\u00FE:"o",\u0410:"A",\u0411:"B",\u0412:"B",\u0413:"F",\u0414:"A",\u0415:"E",\u0416:"K",\u0417:"3",\u0418:"N",\u0419:"N",\u041A:"K",\u041B:"N",\u041C:"M",\u041D:"H",\u041E:"O",\u041F:"N",\u0420:"P",\u0421:"C",\u0422:"T",\u0423:"y",\u0424:"O",\u0425:"X",\u0426:"U",\u0427:"h",\u0428:"W",\u0429:"W",\u042A:"B",\u042B:"X",\u042C:"B",\u042D:"3",\u042E:"X",\u042F:"R",\u0430:"a",\u0431:"b",\u0432:"a",\u0433:"r",\u0434:"y",\u0435:"e",\u0436:"m",\u0437:"e",\u0438:"n",\u0439:"n",\u043A:"n",\u043B:"n",\u043C:"m",\u043D:"n",\u043E:"o",\u043F:"n",\u0440:"p",\u0441:"c",\u0442:"o",\u0443:"y",\u0444:"b",\u0445:"x",\u0446:"n",\u0447:"n",\u0448:"w",\u0449:"w",\u044A:"a",\u044B:"m",\u044C:"a",\u044D:"e",\u044E:"m",\u044F:"r"};o(Az,"setFontMetrics");o(rA,"getCharacterMetrics");L7={};o(Y4e,"getGlobalMetrics");X4e=[[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]],KG=[.5,.6,.7,.8,.9,1,1.2,1.44,1.728,2.074,2.488],QG=o(function(e,r){return r.size<2?e:X4e[e-1][r.size-1]},"sizeAtStyle"),x3=class t{static{o(this,"Options")}constructor(e){this.style=void 0,this.color=void 0,this.size=void 0,this.textSize=void 0,this.phantom=void 0,this.font=void 0,this.fontFamily=void 0,this.fontWeight=void 0,this.fontShape=void 0,this.sizeMultiplier=void 0,this.maxSize=void 0,this.minRuleThickness=void 0,this._fontMetrics=void 0,this.style=e.style,this.color=e.color,this.size=e.size||t.BASESIZE,this.textSize=e.textSize||this.size,this.phantom=!!e.phantom,this.font=e.font||"",this.fontFamily=e.fontFamily||"",this.fontWeight=e.fontWeight||"",this.fontShape=e.fontShape||"",this.sizeMultiplier=KG[this.size-1],this.maxSize=e.maxSize,this.minRuleThickness=e.minRuleThickness,this._fontMetrics=void 0}extend(e){var r={style:this.style,size:this.size,textSize:this.textSize,color:this.color,phantom:this.phantom,font:this.font,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontShape:this.fontShape,maxSize:this.maxSize,minRuleThickness:this.minRuleThickness};for(var n in e)e.hasOwnProperty(n)&&(r[n]=e[n]);return new t(r)}havingStyle(e){return this.style===e?this:this.extend({style:e,size:QG(this.textSize,e)})}havingCrampedStyle(){return this.havingStyle(this.style.cramp())}havingSize(e){return this.size===e&&this.textSize===e?this:this.extend({style:this.style.text(),size:e,textSize:e,sizeMultiplier:KG[e-1]})}havingBaseStyle(e){e=e||this.style.text();var r=QG(t.BASESIZE,e);return this.size===r&&this.textSize===t.BASESIZE&&this.style===e?this:this.extend({style:e,size:r})}havingBaseSizing(){var e;switch(this.style.id){case 4:case 5:e=3;break;case 6:case 7:e=1;break;default:e=6}return this.extend({style:this.style.text(),size:e})}withColor(e){return this.extend({color:e})}withPhantom(){return this.extend({phantom:!0})}withFont(e){return this.extend({font:e})}withTextFontFamily(e){return this.extend({fontFamily:e,font:""})}withTextFontWeight(e){return this.extend({fontWeight:e,font:""})}withTextFontShape(e){return this.extend({fontShape:e,font:""})}sizingClasses(e){return e.size!==this.size?["sizing","reset-size"+e.size,"size"+this.size]:[]}baseSizingClasses(){return this.size!==t.BASESIZE?["sizing","reset-size"+this.size,"size"+t.BASESIZE]:[]}fontMetrics(){return this._fontMetrics||(this._fontMetrics=Y4e(this.size)),this._fontMetrics}getColor(){return this.phantom?"transparent":this.color}};x3.BASESIZE=6;H7={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},j4e={ex:!0,em:!0,mu:!0},_z=o(function(e){return typeof e!="string"&&(e=e.unit),e in H7||e in j4e||e==="ex"},"validUnit"),ii=o(function(e,r){var n;if(e.unit in H7)n=H7[e.unit]/r.fontMetrics().ptPerEm/r.sizeMultiplier;else if(e.unit==="mu")n=r.fontMetrics().cssEmPerMu;else{var i;if(r.style.isTight()?i=r.havingStyle(r.style.text()):i=r,e.unit==="ex")n=i.fontMetrics().xHeight;else if(e.unit==="em")n=i.fontMetrics().quad;else throw new gt("Invalid unit: '"+e.unit+"'");i!==r&&(n*=i.sizeMultiplier/r.sizeMultiplier)}return Math.min(e.number*n,r.maxSize)},"calculateSize"),Et=o(function(e){return+e.toFixed(4)+"em"},"makeEm"),yh=o(function(e){return e.filter(r=>r).join(" ")},"createClass"),Dz=o(function(e,r,n){if(this.classes=e||[],this.attributes={},this.height=0,this.depth=0,this.maxFontSize=0,this.style=n||{},r){r.style.isTight()&&this.classes.push("mtight");var i=r.getColor();i&&(this.style.color=i)}},"initNode"),Lz=o(function(e){var r=document.createElement(e);r.className=yh(this.classes);for(var n in this.style)this.style.hasOwnProperty(n)&&(r.style[n]=this.style[n]);for(var i in this.attributes)this.attributes.hasOwnProperty(i)&&r.setAttribute(i,this.attributes[i]);for(var a=0;a<this.children.length;a++)r.appendChild(this.children[a].toNode());return r},"toNode"),K4e=/[\s"'>/=\x00-\x1f]/,Rz=o(function(e){var r="<"+e;this.classes.length&&(r+=' class="'+er.escape(yh(this.classes))+'"');var n="";for(var i in this.style)this.style.hasOwnProperty(i)&&(n+=er.hyphenate(i)+":"+this.style[i]+";");n&&(r+=' style="'+er.escape(n)+'"');for(var a in this.attributes)if(this.attributes.hasOwnProperty(a)){if(K4e.test(a))throw new gt("Invalid attribute name '"+a+"'");r+=" "+a+'="'+er.escape(this.attributes[a])+'"'}r+=">";for(var s=0;s<this.children.length;s++)r+=this.children[s].toMarkup();return r+="</"+e+">",r},"toMarkup"),cd=class{static{o(this,"Span")}constructor(e,r,n,i){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.width=void 0,this.maxFontSize=void 0,this.style=void 0,Dz.call(this,e,n,i),this.children=r||[]}setAttribute(e,r){this.attributes[e]=r}hasClass(e){return er.contains(this.classes,e)}toNode(){return Lz.call(this,"span")}toMarkup(){return Rz.call(this,"span")}},Xy=class{static{o(this,"Anchor")}constructor(e,r,n,i){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,Dz.call(this,r,i),this.children=n||[],this.setAttribute("href",e)}setAttribute(e,r){this.attributes[e]=r}hasClass(e){return er.contains(this.classes,e)}toNode(){return Lz.call(this,"a")}toMarkup(){return Rz.call(this,"a")}},W7=class{static{o(this,"Img")}constructor(e,r,n){this.src=void 0,this.alt=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.alt=r,this.src=e,this.classes=["mord"],this.style=n}hasClass(e){return er.contains(this.classes,e)}toNode(){var e=document.createElement("img");e.src=this.src,e.alt=this.alt,e.className="mord";for(var r in this.style)this.style.hasOwnProperty(r)&&(e.style[r]=this.style[r]);return e}toMarkup(){var e='<img src="'+er.escape(this.src)+'"'+(' alt="'+er.escape(this.alt)+'"'),r="";for(var n in this.style)this.style.hasOwnProperty(n)&&(r+=er.hyphenate(n)+":"+this.style[n]+";");return r&&(e+=' style="'+er.escape(r)+'"'),e+="'/>",e}},Q4e={\u00EE:"\u0131\u0302",\u00EF:"\u0131\u0308",\u00ED:"\u0131\u0301",\u00EC:"\u0131\u0300"},Ss=class{static{o(this,"SymbolNode")}constructor(e,r,n,i,a,s,l,u){this.text=void 0,this.height=void 0,this.depth=void 0,this.italic=void 0,this.skew=void 0,this.width=void 0,this.maxFontSize=void 0,this.classes=void 0,this.style=void 0,this.text=e,this.height=r||0,this.depth=n||0,this.italic=i||0,this.skew=a||0,this.width=s||0,this.classes=l||[],this.style=u||{},this.maxFontSize=0;var h=P4e(this.text.charCodeAt(0));h&&this.classes.push(h+"_fallback"),/[îïíì]/.test(this.text)&&(this.text=Q4e[this.text])}hasClass(e){return er.contains(this.classes,e)}toNode(){var e=document.createTextNode(this.text),r=null;this.italic>0&&(r=document.createElement("span"),r.style.marginRight=Et(this.italic)),this.classes.length>0&&(r=r||document.createElement("span"),r.className=yh(this.classes));for(var n in this.style)this.style.hasOwnProperty(n)&&(r=r||document.createElement("span"),r.style[n]=this.style[n]);return r?(r.appendChild(e),r):e}toMarkup(){var e=!1,r="<span";this.classes.length&&(e=!0,r+=' class="',r+=er.escape(yh(this.classes)),r+='"');var n="";this.italic>0&&(n+="margin-right:"+this.italic+"em;");for(var i in this.style)this.style.hasOwnProperty(i)&&(n+=er.hyphenate(i)+":"+this.style[i]+";");n&&(e=!0,r+=' style="'+er.escape(n)+'"');var a=er.escape(this.text);return e?(r+=">",r+=a,r+="</span>",r):a}},dl=class{static{o(this,"SvgNode")}constructor(e,r){this.children=void 0,this.attributes=void 0,this.children=e||[],this.attributes=r||{}}toNode(){var e="http://www.w3.org/2000/svg",r=document.createElementNS(e,"svg");for(var n in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,n)&&r.setAttribute(n,this.attributes[n]);for(var i=0;i<this.children.length;i++)r.appendChild(this.children[i].toNode());return r}toMarkup(){var e='<svg xmlns="http://www.w3.org/2000/svg"';for(var r in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,r)&&(e+=" "+r+'="'+er.escape(this.attributes[r])+'"');e+=">";for(var n=0;n<this.children.length;n++)e+=this.children[n].toMarkup();return e+="</svg>",e}},Ql=class{static{o(this,"PathNode")}constructor(e,r){this.pathName=void 0,this.alternate=void 0,this.pathName=e,this.alternate=r}toNode(){var e="http://www.w3.org/2000/svg",r=document.createElementNS(e,"path");return this.alternate?r.setAttribute("d",this.alternate):r.setAttribute("d",XG[this.pathName]),r}toMarkup(){return this.alternate?'<path d="'+er.escape(this.alternate)+'"/>':'<path d="'+er.escape(XG[this.pathName])+'"/>'}},jy=class{static{o(this,"LineNode")}constructor(e){this.attributes=void 0,this.attributes=e||{}}toNode(){var e="http://www.w3.org/2000/svg",r=document.createElementNS(e,"line");for(var n in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,n)&&r.setAttribute(n,this.attributes[n]);return r}toMarkup(){var e="<line";for(var r in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,r)&&(e+=" "+r+'="'+er.escape(this.attributes[r])+'"');return e+="/>",e}};o(ZG,"assertSymbolDomNode");o(Z4e,"assertSpan");J4e={bin:1,close:1,inner:1,open:1,punct:1,rel:1},e3e={"accent-token":1,mathord:1,"op-token":1,spacing:1,textord:1},Ln={math:{},text:{}};o(z,"defineSymbol");H="math",st="text",ie="main",ke="ams",qn="accent-token",It="bin",rs="close",T0="inner",rr="mathord",Si="op-token",Js="open",C3="punct",Ee="rel",fu="spacing",Le="textord";z(H,ie,Ee,"\u2261","\\equiv",!0);z(H,ie,Ee,"\u227A","\\prec",!0);z(H,ie,Ee,"\u227B","\\succ",!0);z(H,ie,Ee,"\u223C","\\sim",!0);z(H,ie,Ee,"\u22A5","\\perp");z(H,ie,Ee,"\u2AAF","\\preceq",!0);z(H,ie,Ee,"\u2AB0","\\succeq",!0);z(H,ie,Ee,"\u2243","\\simeq",!0);z(H,ie,Ee,"\u2223","\\mid",!0);z(H,ie,Ee,"\u226A","\\ll",!0);z(H,ie,Ee,"\u226B","\\gg",!0);z(H,ie,Ee,"\u224D","\\asymp",!0);z(H,ie,Ee,"\u2225","\\parallel");z(H,ie,Ee,"\u22C8","\\bowtie",!0);z(H,ie,Ee,"\u2323","\\smile",!0);z(H,ie,Ee,"\u2291","\\sqsubseteq",!0);z(H,ie,Ee,"\u2292","\\sqsupseteq",!0);z(H,ie,Ee,"\u2250","\\doteq",!0);z(H,ie,Ee,"\u2322","\\frown",!0);z(H,ie,Ee,"\u220B","\\ni",!0);z(H,ie,Ee,"\u221D","\\propto",!0);z(H,ie,Ee,"\u22A2","\\vdash",!0);z(H,ie,Ee,"\u22A3","\\dashv",!0);z(H,ie,Ee,"\u220B","\\owns");z(H,ie,C3,".","\\ldotp");z(H,ie,C3,"\u22C5","\\cdotp");z(H,ie,Le,"#","\\#");z(st,ie,Le,"#","\\#");z(H,ie,Le,"&","\\&");z(st,ie,Le,"&","\\&");z(H,ie,Le,"\u2135","\\aleph",!0);z(H,ie,Le,"\u2200","\\forall",!0);z(H,ie,Le,"\u210F","\\hbar",!0);z(H,ie,Le,"\u2203","\\exists",!0);z(H,ie,Le,"\u2207","\\nabla",!0);z(H,ie,Le,"\u266D","\\flat",!0);z(H,ie,Le,"\u2113","\\ell",!0);z(H,ie,Le,"\u266E","\\natural",!0);z(H,ie,Le,"\u2663","\\clubsuit",!0);z(H,ie,Le,"\u2118","\\wp",!0);z(H,ie,Le,"\u266F","\\sharp",!0);z(H,ie,Le,"\u2662","\\diamondsuit",!0);z(H,ie,Le,"\u211C","\\Re",!0);z(H,ie,Le,"\u2661","\\heartsuit",!0);z(H,ie,Le,"\u2111","\\Im",!0);z(H,ie,Le,"\u2660","\\spadesuit",!0);z(H,ie,Le,"\xA7","\\S",!0);z(st,ie,Le,"\xA7","\\S");z(H,ie,Le,"\xB6","\\P",!0);z(st,ie,Le,"\xB6","\\P");z(H,ie,Le,"\u2020","\\dag");z(st,ie,Le,"\u2020","\\dag");z(st,ie,Le,"\u2020","\\textdagger");z(H,ie,Le,"\u2021","\\ddag");z(st,ie,Le,"\u2021","\\ddag");z(st,ie,Le,"\u2021","\\textdaggerdbl");z(H,ie,rs,"\u23B1","\\rmoustache",!0);z(H,ie,Js,"\u23B0","\\lmoustache",!0);z(H,ie,rs,"\u27EF","\\rgroup",!0);z(H,ie,Js,"\u27EE","\\lgroup",!0);z(H,ie,It,"\u2213","\\mp",!0);z(H,ie,It,"\u2296","\\ominus",!0);z(H,ie,It,"\u228E","\\uplus",!0);z(H,ie,It,"\u2293","\\sqcap",!0);z(H,ie,It,"\u2217","\\ast");z(H,ie,It,"\u2294","\\sqcup",!0);z(H,ie,It,"\u25EF","\\bigcirc",!0);z(H,ie,It,"\u2219","\\bullet",!0);z(H,ie,It,"\u2021","\\ddagger");z(H,ie,It,"\u2240","\\wr",!0);z(H,ie,It,"\u2A3F","\\amalg");z(H,ie,It,"&","\\And");z(H,ie,Ee,"\u27F5","\\longleftarrow",!0);z(H,ie,Ee,"\u21D0","\\Leftarrow",!0);z(H,ie,Ee,"\u27F8","\\Longleftarrow",!0);z(H,ie,Ee,"\u27F6","\\longrightarrow",!0);z(H,ie,Ee,"\u21D2","\\Rightarrow",!0);z(H,ie,Ee,"\u27F9","\\Longrightarrow",!0);z(H,ie,Ee,"\u2194","\\leftrightarrow",!0);z(H,ie,Ee,"\u27F7","\\longleftrightarrow",!0);z(H,ie,Ee,"\u21D4","\\Leftrightarrow",!0);z(H,ie,Ee,"\u27FA","\\Longleftrightarrow",!0);z(H,ie,Ee,"\u21A6","\\mapsto",!0);z(H,ie,Ee,"\u27FC","\\longmapsto",!0);z(H,ie,Ee,"\u2197","\\nearrow",!0);z(H,ie,Ee,"\u21A9","\\hookleftarrow",!0);z(H,ie,Ee,"\u21AA","\\hookrightarrow",!0);z(H,ie,Ee,"\u2198","\\searrow",!0);z(H,ie,Ee,"\u21BC","\\leftharpoonup",!0);z(H,ie,Ee,"\u21C0","\\rightharpoonup",!0);z(H,ie,Ee,"\u2199","\\swarrow",!0);z(H,ie,Ee,"\u21BD","\\leftharpoondown",!0);z(H,ie,Ee,"\u21C1","\\rightharpoondown",!0);z(H,ie,Ee,"\u2196","\\nwarrow",!0);z(H,ie,Ee,"\u21CC","\\rightleftharpoons",!0);z(H,ke,Ee,"\u226E","\\nless",!0);z(H,ke,Ee,"\uE010","\\@nleqslant");z(H,ke,Ee,"\uE011","\\@nleqq");z(H,ke,Ee,"\u2A87","\\lneq",!0);z(H,ke,Ee,"\u2268","\\lneqq",!0);z(H,ke,Ee,"\uE00C","\\@lvertneqq");z(H,ke,Ee,"\u22E6","\\lnsim",!0);z(H,ke,Ee,"\u2A89","\\lnapprox",!0);z(H,ke,Ee,"\u2280","\\nprec",!0);z(H,ke,Ee,"\u22E0","\\npreceq",!0);z(H,ke,Ee,"\u22E8","\\precnsim",!0);z(H,ke,Ee,"\u2AB9","\\precnapprox",!0);z(H,ke,Ee,"\u2241","\\nsim",!0);z(H,ke,Ee,"\uE006","\\@nshortmid");z(H,ke,Ee,"\u2224","\\nmid",!0);z(H,ke,Ee,"\u22AC","\\nvdash",!0);z(H,ke,Ee,"\u22AD","\\nvDash",!0);z(H,ke,Ee,"\u22EA","\\ntriangleleft");z(H,ke,Ee,"\u22EC","\\ntrianglelefteq",!0);z(H,ke,Ee,"\u228A","\\subsetneq",!0);z(H,ke,Ee,"\uE01A","\\@varsubsetneq");z(H,ke,Ee,"\u2ACB","\\subsetneqq",!0);z(H,ke,Ee,"\uE017","\\@varsubsetneqq");z(H,ke,Ee,"\u226F","\\ngtr",!0);z(H,ke,Ee,"\uE00F","\\@ngeqslant");z(H,ke,Ee,"\uE00E","\\@ngeqq");z(H,ke,Ee,"\u2A88","\\gneq",!0);z(H,ke,Ee,"\u2269","\\gneqq",!0);z(H,ke,Ee,"\uE00D","\\@gvertneqq");z(H,ke,Ee,"\u22E7","\\gnsim",!0);z(H,ke,Ee,"\u2A8A","\\gnapprox",!0);z(H,ke,Ee,"\u2281","\\nsucc",!0);z(H,ke,Ee,"\u22E1","\\nsucceq",!0);z(H,ke,Ee,"\u22E9","\\succnsim",!0);z(H,ke,Ee,"\u2ABA","\\succnapprox",!0);z(H,ke,Ee,"\u2246","\\ncong",!0);z(H,ke,Ee,"\uE007","\\@nshortparallel");z(H,ke,Ee,"\u2226","\\nparallel",!0);z(H,ke,Ee,"\u22AF","\\nVDash",!0);z(H,ke,Ee,"\u22EB","\\ntriangleright");z(H,ke,Ee,"\u22ED","\\ntrianglerighteq",!0);z(H,ke,Ee,"\uE018","\\@nsupseteqq");z(H,ke,Ee,"\u228B","\\supsetneq",!0);z(H,ke,Ee,"\uE01B","\\@varsupsetneq");z(H,ke,Ee,"\u2ACC","\\supsetneqq",!0);z(H,ke,Ee,"\uE019","\\@varsupsetneqq");z(H,ke,Ee,"\u22AE","\\nVdash",!0);z(H,ke,Ee,"\u2AB5","\\precneqq",!0);z(H,ke,Ee,"\u2AB6","\\succneqq",!0);z(H,ke,Ee,"\uE016","\\@nsubseteqq");z(H,ke,It,"\u22B4","\\unlhd");z(H,ke,It,"\u22B5","\\unrhd");z(H,ke,Ee,"\u219A","\\nleftarrow",!0);z(H,ke,Ee,"\u219B","\\nrightarrow",!0);z(H,ke,Ee,"\u21CD","\\nLeftarrow",!0);z(H,ke,Ee,"\u21CF","\\nRightarrow",!0);z(H,ke,Ee,"\u21AE","\\nleftrightarrow",!0);z(H,ke,Ee,"\u21CE","\\nLeftrightarrow",!0);z(H,ke,Ee,"\u25B3","\\vartriangle");z(H,ke,Le,"\u210F","\\hslash");z(H,ke,Le,"\u25BD","\\triangledown");z(H,ke,Le,"\u25CA","\\lozenge");z(H,ke,Le,"\u24C8","\\circledS");z(H,ke,Le,"\xAE","\\circledR");z(st,ke,Le,"\xAE","\\circledR");z(H,ke,Le,"\u2221","\\measuredangle",!0);z(H,ke,Le,"\u2204","\\nexists");z(H,ke,Le,"\u2127","\\mho");z(H,ke,Le,"\u2132","\\Finv",!0);z(H,ke,Le,"\u2141","\\Game",!0);z(H,ke,Le,"\u2035","\\backprime");z(H,ke,Le,"\u25B2","\\blacktriangle");z(H,ke,Le,"\u25BC","\\blacktriangledown");z(H,ke,Le,"\u25A0","\\blacksquare");z(H,ke,Le,"\u29EB","\\blacklozenge");z(H,ke,Le,"\u2605","\\bigstar");z(H,ke,Le,"\u2222","\\sphericalangle",!0);z(H,ke,Le,"\u2201","\\complement",!0);z(H,ke,Le,"\xF0","\\eth",!0);z(st,ie,Le,"\xF0","\xF0");z(H,ke,Le,"\u2571","\\diagup");z(H,ke,Le,"\u2572","\\diagdown");z(H,ke,Le,"\u25A1","\\square");z(H,ke,Le,"\u25A1","\\Box");z(H,ke,Le,"\u25CA","\\Diamond");z(H,ke,Le,"\xA5","\\yen",!0);z(st,ke,Le,"\xA5","\\yen",!0);z(H,ke,Le,"\u2713","\\checkmark",!0);z(st,ke,Le,"\u2713","\\checkmark");z(H,ke,Le,"\u2136","\\beth",!0);z(H,ke,Le,"\u2138","\\daleth",!0);z(H,ke,Le,"\u2137","\\gimel",!0);z(H,ke,Le,"\u03DD","\\digamma",!0);z(H,ke,Le,"\u03F0","\\varkappa");z(H,ke,Js,"\u250C","\\@ulcorner",!0);z(H,ke,rs,"\u2510","\\@urcorner",!0);z(H,ke,Js,"\u2514","\\@llcorner",!0);z(H,ke,rs,"\u2518","\\@lrcorner",!0);z(H,ke,Ee,"\u2266","\\leqq",!0);z(H,ke,Ee,"\u2A7D","\\leqslant",!0);z(H,ke,Ee,"\u2A95","\\eqslantless",!0);z(H,ke,Ee,"\u2272","\\lesssim",!0);z(H,ke,Ee,"\u2A85","\\lessapprox",!0);z(H,ke,Ee,"\u224A","\\approxeq",!0);z(H,ke,It,"\u22D6","\\lessdot");z(H,ke,Ee,"\u22D8","\\lll",!0);z(H,ke,Ee,"\u2276","\\lessgtr",!0);z(H,ke,Ee,"\u22DA","\\lesseqgtr",!0);z(H,ke,Ee,"\u2A8B","\\lesseqqgtr",!0);z(H,ke,Ee,"\u2251","\\doteqdot");z(H,ke,Ee,"\u2253","\\risingdotseq",!0);z(H,ke,Ee,"\u2252","\\fallingdotseq",!0);z(H,ke,Ee,"\u223D","\\backsim",!0);z(H,ke,Ee,"\u22CD","\\backsimeq",!0);z(H,ke,Ee,"\u2AC5","\\subseteqq",!0);z(H,ke,Ee,"\u22D0","\\Subset",!0);z(H,ke,Ee,"\u228F","\\sqsubset",!0);z(H,ke,Ee,"\u227C","\\preccurlyeq",!0);z(H,ke,Ee,"\u22DE","\\curlyeqprec",!0);z(H,ke,Ee,"\u227E","\\precsim",!0);z(H,ke,Ee,"\u2AB7","\\precapprox",!0);z(H,ke,Ee,"\u22B2","\\vartriangleleft");z(H,ke,Ee,"\u22B4","\\trianglelefteq");z(H,ke,Ee,"\u22A8","\\vDash",!0);z(H,ke,Ee,"\u22AA","\\Vvdash",!0);z(H,ke,Ee,"\u2323","\\smallsmile");z(H,ke,Ee,"\u2322","\\smallfrown");z(H,ke,Ee,"\u224F","\\bumpeq",!0);z(H,ke,Ee,"\u224E","\\Bumpeq",!0);z(H,ke,Ee,"\u2267","\\geqq",!0);z(H,ke,Ee,"\u2A7E","\\geqslant",!0);z(H,ke,Ee,"\u2A96","\\eqslantgtr",!0);z(H,ke,Ee,"\u2273","\\gtrsim",!0);z(H,ke,Ee,"\u2A86","\\gtrapprox",!0);z(H,ke,It,"\u22D7","\\gtrdot");z(H,ke,Ee,"\u22D9","\\ggg",!0);z(H,ke,Ee,"\u2277","\\gtrless",!0);z(H,ke,Ee,"\u22DB","\\gtreqless",!0);z(H,ke,Ee,"\u2A8C","\\gtreqqless",!0);z(H,ke,Ee,"\u2256","\\eqcirc",!0);z(H,ke,Ee,"\u2257","\\circeq",!0);z(H,ke,Ee,"\u225C","\\triangleq",!0);z(H,ke,Ee,"\u223C","\\thicksim");z(H,ke,Ee,"\u2248","\\thickapprox");z(H,ke,Ee,"\u2AC6","\\supseteqq",!0);z(H,ke,Ee,"\u22D1","\\Supset",!0);z(H,ke,Ee,"\u2290","\\sqsupset",!0);z(H,ke,Ee,"\u227D","\\succcurlyeq",!0);z(H,ke,Ee,"\u22DF","\\curlyeqsucc",!0);z(H,ke,Ee,"\u227F","\\succsim",!0);z(H,ke,Ee,"\u2AB8","\\succapprox",!0);z(H,ke,Ee,"\u22B3","\\vartriangleright");z(H,ke,Ee,"\u22B5","\\trianglerighteq");z(H,ke,Ee,"\u22A9","\\Vdash",!0);z(H,ke,Ee,"\u2223","\\shortmid");z(H,ke,Ee,"\u2225","\\shortparallel");z(H,ke,Ee,"\u226C","\\between",!0);z(H,ke,Ee,"\u22D4","\\pitchfork",!0);z(H,ke,Ee,"\u221D","\\varpropto");z(H,ke,Ee,"\u25C0","\\blacktriangleleft");z(H,ke,Ee,"\u2234","\\therefore",!0);z(H,ke,Ee,"\u220D","\\backepsilon");z(H,ke,Ee,"\u25B6","\\blacktriangleright");z(H,ke,Ee,"\u2235","\\because",!0);z(H,ke,Ee,"\u22D8","\\llless");z(H,ke,Ee,"\u22D9","\\gggtr");z(H,ke,It,"\u22B2","\\lhd");z(H,ke,It,"\u22B3","\\rhd");z(H,ke,Ee,"\u2242","\\eqsim",!0);z(H,ie,Ee,"\u22C8","\\Join");z(H,ke,Ee,"\u2251","\\Doteq",!0);z(H,ke,It,"\u2214","\\dotplus",!0);z(H,ke,It,"\u2216","\\smallsetminus");z(H,ke,It,"\u22D2","\\Cap",!0);z(H,ke,It,"\u22D3","\\Cup",!0);z(H,ke,It,"\u2A5E","\\doublebarwedge",!0);z(H,ke,It,"\u229F","\\boxminus",!0);z(H,ke,It,"\u229E","\\boxplus",!0);z(H,ke,It,"\u22C7","\\divideontimes",!0);z(H,ke,It,"\u22C9","\\ltimes",!0);z(H,ke,It,"\u22CA","\\rtimes",!0);z(H,ke,It,"\u22CB","\\leftthreetimes",!0);z(H,ke,It,"\u22CC","\\rightthreetimes",!0);z(H,ke,It,"\u22CF","\\curlywedge",!0);z(H,ke,It,"\u22CE","\\curlyvee",!0);z(H,ke,It,"\u229D","\\circleddash",!0);z(H,ke,It,"\u229B","\\circledast",!0);z(H,ke,It,"\u22C5","\\centerdot");z(H,ke,It,"\u22BA","\\intercal",!0);z(H,ke,It,"\u22D2","\\doublecap");z(H,ke,It,"\u22D3","\\doublecup");z(H,ke,It,"\u22A0","\\boxtimes",!0);z(H,ke,Ee,"\u21E2","\\dashrightarrow",!0);z(H,ke,Ee,"\u21E0","\\dashleftarrow",!0);z(H,ke,Ee,"\u21C7","\\leftleftarrows",!0);z(H,ke,Ee,"\u21C6","\\leftrightarrows",!0);z(H,ke,Ee,"\u21DA","\\Lleftarrow",!0);z(H,ke,Ee,"\u219E","\\twoheadleftarrow",!0);z(H,ke,Ee,"\u21A2","\\leftarrowtail",!0);z(H,ke,Ee,"\u21AB","\\looparrowleft",!0);z(H,ke,Ee,"\u21CB","\\leftrightharpoons",!0);z(H,ke,Ee,"\u21B6","\\curvearrowleft",!0);z(H,ke,Ee,"\u21BA","\\circlearrowleft",!0);z(H,ke,Ee,"\u21B0","\\Lsh",!0);z(H,ke,Ee,"\u21C8","\\upuparrows",!0);z(H,ke,Ee,"\u21BF","\\upharpoonleft",!0);z(H,ke,Ee,"\u21C3","\\downharpoonleft",!0);z(H,ie,Ee,"\u22B6","\\origof",!0);z(H,ie,Ee,"\u22B7","\\imageof",!0);z(H,ke,Ee,"\u22B8","\\multimap",!0);z(H,ke,Ee,"\u21AD","\\leftrightsquigarrow",!0);z(H,ke,Ee,"\u21C9","\\rightrightarrows",!0);z(H,ke,Ee,"\u21C4","\\rightleftarrows",!0);z(H,ke,Ee,"\u21A0","\\twoheadrightarrow",!0);z(H,ke,Ee,"\u21A3","\\rightarrowtail",!0);z(H,ke,Ee,"\u21AC","\\looparrowright",!0);z(H,ke,Ee,"\u21B7","\\curvearrowright",!0);z(H,ke,Ee,"\u21BB","\\circlearrowright",!0);z(H,ke,Ee,"\u21B1","\\Rsh",!0);z(H,ke,Ee,"\u21CA","\\downdownarrows",!0);z(H,ke,Ee,"\u21BE","\\upharpoonright",!0);z(H,ke,Ee,"\u21C2","\\downharpoonright",!0);z(H,ke,Ee,"\u21DD","\\rightsquigarrow",!0);z(H,ke,Ee,"\u21DD","\\leadsto");z(H,ke,Ee,"\u21DB","\\Rrightarrow",!0);z(H,ke,Ee,"\u21BE","\\restriction");z(H,ie,Le,"\u2018","`");z(H,ie,Le,"$","\\$");z(st,ie,Le,"$","\\$");z(st,ie,Le,"$","\\textdollar");z(H,ie,Le,"%","\\%");z(st,ie,Le,"%","\\%");z(H,ie,Le,"_","\\_");z(st,ie,Le,"_","\\_");z(st,ie,Le,"_","\\textunderscore");z(H,ie,Le,"\u2220","\\angle",!0);z(H,ie,Le,"\u221E","\\infty",!0);z(H,ie,Le,"\u2032","\\prime");z(H,ie,Le,"\u25B3","\\triangle");z(H,ie,Le,"\u0393","\\Gamma",!0);z(H,ie,Le,"\u0394","\\Delta",!0);z(H,ie,Le,"\u0398","\\Theta",!0);z(H,ie,Le,"\u039B","\\Lambda",!0);z(H,ie,Le,"\u039E","\\Xi",!0);z(H,ie,Le,"\u03A0","\\Pi",!0);z(H,ie,Le,"\u03A3","\\Sigma",!0);z(H,ie,Le,"\u03A5","\\Upsilon",!0);z(H,ie,Le,"\u03A6","\\Phi",!0);z(H,ie,Le,"\u03A8","\\Psi",!0);z(H,ie,Le,"\u03A9","\\Omega",!0);z(H,ie,Le,"A","\u0391");z(H,ie,Le,"B","\u0392");z(H,ie,Le,"E","\u0395");z(H,ie,Le,"Z","\u0396");z(H,ie,Le,"H","\u0397");z(H,ie,Le,"I","\u0399");z(H,ie,Le,"K","\u039A");z(H,ie,Le,"M","\u039C");z(H,ie,Le,"N","\u039D");z(H,ie,Le,"O","\u039F");z(H,ie,Le,"P","\u03A1");z(H,ie,Le,"T","\u03A4");z(H,ie,Le,"X","\u03A7");z(H,ie,Le,"\xAC","\\neg",!0);z(H,ie,Le,"\xAC","\\lnot");z(H,ie,Le,"\u22A4","\\top");z(H,ie,Le,"\u22A5","\\bot");z(H,ie,Le,"\u2205","\\emptyset");z(H,ke,Le,"\u2205","\\varnothing");z(H,ie,rr,"\u03B1","\\alpha",!0);z(H,ie,rr,"\u03B2","\\beta",!0);z(H,ie,rr,"\u03B3","\\gamma",!0);z(H,ie,rr,"\u03B4","\\delta",!0);z(H,ie,rr,"\u03F5","\\epsilon",!0);z(H,ie,rr,"\u03B6","\\zeta",!0);z(H,ie,rr,"\u03B7","\\eta",!0);z(H,ie,rr,"\u03B8","\\theta",!0);z(H,ie,rr,"\u03B9","\\iota",!0);z(H,ie,rr,"\u03BA","\\kappa",!0);z(H,ie,rr,"\u03BB","\\lambda",!0);z(H,ie,rr,"\u03BC","\\mu",!0);z(H,ie,rr,"\u03BD","\\nu",!0);z(H,ie,rr,"\u03BE","\\xi",!0);z(H,ie,rr,"\u03BF","\\omicron",!0);z(H,ie,rr,"\u03C0","\\pi",!0);z(H,ie,rr,"\u03C1","\\rho",!0);z(H,ie,rr,"\u03C3","\\sigma",!0);z(H,ie,rr,"\u03C4","\\tau",!0);z(H,ie,rr,"\u03C5","\\upsilon",!0);z(H,ie,rr,"\u03D5","\\phi",!0);z(H,ie,rr,"\u03C7","\\chi",!0);z(H,ie,rr,"\u03C8","\\psi",!0);z(H,ie,rr,"\u03C9","\\omega",!0);z(H,ie,rr,"\u03B5","\\varepsilon",!0);z(H,ie,rr,"\u03D1","\\vartheta",!0);z(H,ie,rr,"\u03D6","\\varpi",!0);z(H,ie,rr,"\u03F1","\\varrho",!0);z(H,ie,rr,"\u03C2","\\varsigma",!0);z(H,ie,rr,"\u03C6","\\varphi",!0);z(H,ie,It,"\u2217","*",!0);z(H,ie,It,"+","+");z(H,ie,It,"\u2212","-",!0);z(H,ie,It,"\u22C5","\\cdot",!0);z(H,ie,It,"\u2218","\\circ",!0);z(H,ie,It,"\xF7","\\div",!0);z(H,ie,It,"\xB1","\\pm",!0);z(H,ie,It,"\xD7","\\times",!0);z(H,ie,It,"\u2229","\\cap",!0);z(H,ie,It,"\u222A","\\cup",!0);z(H,ie,It,"\u2216","\\setminus",!0);z(H,ie,It,"\u2227","\\land");z(H,ie,It,"\u2228","\\lor");z(H,ie,It,"\u2227","\\wedge",!0);z(H,ie,It,"\u2228","\\vee",!0);z(H,ie,Le,"\u221A","\\surd");z(H,ie,Js,"\u27E8","\\langle",!0);z(H,ie,Js,"\u2223","\\lvert");z(H,ie,Js,"\u2225","\\lVert");z(H,ie,rs,"?","?");z(H,ie,rs,"!","!");z(H,ie,rs,"\u27E9","\\rangle",!0);z(H,ie,rs,"\u2223","\\rvert");z(H,ie,rs,"\u2225","\\rVert");z(H,ie,Ee,"=","=");z(H,ie,Ee,":",":");z(H,ie,Ee,"\u2248","\\approx",!0);z(H,ie,Ee,"\u2245","\\cong",!0);z(H,ie,Ee,"\u2265","\\ge");z(H,ie,Ee,"\u2265","\\geq",!0);z(H,ie,Ee,"\u2190","\\gets");z(H,ie,Ee,">","\\gt",!0);z(H,ie,Ee,"\u2208","\\in",!0);z(H,ie,Ee,"\uE020","\\@not");z(H,ie,Ee,"\u2282","\\subset",!0);z(H,ie,Ee,"\u2283","\\supset",!0);z(H,ie,Ee,"\u2286","\\subseteq",!0);z(H,ie,Ee,"\u2287","\\supseteq",!0);z(H,ke,Ee,"\u2288","\\nsubseteq",!0);z(H,ke,Ee,"\u2289","\\nsupseteq",!0);z(H,ie,Ee,"\u22A8","\\models");z(H,ie,Ee,"\u2190","\\leftarrow",!0);z(H,ie,Ee,"\u2264","\\le");z(H,ie,Ee,"\u2264","\\leq",!0);z(H,ie,Ee,"<","\\lt",!0);z(H,ie,Ee,"\u2192","\\rightarrow",!0);z(H,ie,Ee,"\u2192","\\to");z(H,ke,Ee,"\u2271","\\ngeq",!0);z(H,ke,Ee,"\u2270","\\nleq",!0);z(H,ie,fu,"\xA0","\\ ");z(H,ie,fu,"\xA0","\\space");z(H,ie,fu,"\xA0","\\nobreakspace");z(st,ie,fu,"\xA0","\\ ");z(st,ie,fu,"\xA0"," ");z(st,ie,fu,"\xA0","\\space");z(st,ie,fu,"\xA0","\\nobreakspace");z(H,ie,fu,null,"\\nobreak");z(H,ie,fu,null,"\\allowbreak");z(H,ie,C3,",",",");z(H,ie,C3,";",";");z(H,ke,It,"\u22BC","\\barwedge",!0);z(H,ke,It,"\u22BB","\\veebar",!0);z(H,ie,It,"\u2299","\\odot",!0);z(H,ie,It,"\u2295","\\oplus",!0);z(H,ie,It,"\u2297","\\otimes",!0);z(H,ie,Le,"\u2202","\\partial",!0);z(H,ie,It,"\u2298","\\oslash",!0);z(H,ke,It,"\u229A","\\circledcirc",!0);z(H,ke,It,"\u22A1","\\boxdot",!0);z(H,ie,It,"\u25B3","\\bigtriangleup");z(H,ie,It,"\u25BD","\\bigtriangledown");z(H,ie,It,"\u2020","\\dagger");z(H,ie,It,"\u22C4","\\diamond");z(H,ie,It,"\u22C6","\\star");z(H,ie,It,"\u25C3","\\triangleleft");z(H,ie,It,"\u25B9","\\triangleright");z(H,ie,Js,"{","\\{");z(st,ie,Le,"{","\\{");z(st,ie,Le,"{","\\textbraceleft");z(H,ie,rs,"}","\\}");z(st,ie,Le,"}","\\}");z(st,ie,Le,"}","\\textbraceright");z(H,ie,Js,"{","\\lbrace");z(H,ie,rs,"}","\\rbrace");z(H,ie,Js,"[","\\lbrack",!0);z(st,ie,Le,"[","\\lbrack",!0);z(H,ie,rs,"]","\\rbrack",!0);z(st,ie,Le,"]","\\rbrack",!0);z(H,ie,Js,"(","\\lparen",!0);z(H,ie,rs,")","\\rparen",!0);z(st,ie,Le,"<","\\textless",!0);z(st,ie,Le,">","\\textgreater",!0);z(H,ie,Js,"\u230A","\\lfloor",!0);z(H,ie,rs,"\u230B","\\rfloor",!0);z(H,ie,Js,"\u2308","\\lceil",!0);z(H,ie,rs,"\u2309","\\rceil",!0);z(H,ie,Le,"\\","\\backslash");z(H,ie,Le,"\u2223","|");z(H,ie,Le,"\u2223","\\vert");z(st,ie,Le,"|","\\textbar",!0);z(H,ie,Le,"\u2225","\\|");z(H,ie,Le,"\u2225","\\Vert");z(st,ie,Le,"\u2225","\\textbardbl");z(st,ie,Le,"~","\\textasciitilde");z(st,ie,Le,"\\","\\textbackslash");z(st,ie,Le,"^","\\textasciicircum");z(H,ie,Ee,"\u2191","\\uparrow",!0);z(H,ie,Ee,"\u21D1","\\Uparrow",!0);z(H,ie,Ee,"\u2193","\\downarrow",!0);z(H,ie,Ee,"\u21D3","\\Downarrow",!0);z(H,ie,Ee,"\u2195","\\updownarrow",!0);z(H,ie,Ee,"\u21D5","\\Updownarrow",!0);z(H,ie,Si,"\u2210","\\coprod");z(H,ie,Si,"\u22C1","\\bigvee");z(H,ie,Si,"\u22C0","\\bigwedge");z(H,ie,Si,"\u2A04","\\biguplus");z(H,ie,Si,"\u22C2","\\bigcap");z(H,ie,Si,"\u22C3","\\bigcup");z(H,ie,Si,"\u222B","\\int");z(H,ie,Si,"\u222B","\\intop");z(H,ie,Si,"\u222C","\\iint");z(H,ie,Si,"\u222D","\\iiint");z(H,ie,Si,"\u220F","\\prod");z(H,ie,Si,"\u2211","\\sum");z(H,ie,Si,"\u2A02","\\bigotimes");z(H,ie,Si,"\u2A01","\\bigoplus");z(H,ie,Si,"\u2A00","\\bigodot");z(H,ie,Si,"\u222E","\\oint");z(H,ie,Si,"\u222F","\\oiint");z(H,ie,Si,"\u2230","\\oiiint");z(H,ie,Si,"\u2A06","\\bigsqcup");z(H,ie,Si,"\u222B","\\smallint");z(st,ie,T0,"\u2026","\\textellipsis");z(H,ie,T0,"\u2026","\\mathellipsis");z(st,ie,T0,"\u2026","\\ldots",!0);z(H,ie,T0,"\u2026","\\ldots",!0);z(H,ie,T0,"\u22EF","\\@cdots",!0);z(H,ie,T0,"\u22F1","\\ddots",!0);z(H,ie,Le,"\u22EE","\\varvdots");z(st,ie,Le,"\u22EE","\\varvdots");z(H,ie,qn,"\u02CA","\\acute");z(H,ie,qn,"\u02CB","\\grave");z(H,ie,qn,"\xA8","\\ddot");z(H,ie,qn,"~","\\tilde");z(H,ie,qn,"\u02C9","\\bar");z(H,ie,qn,"\u02D8","\\breve");z(H,ie,qn,"\u02C7","\\check");z(H,ie,qn,"^","\\hat");z(H,ie,qn,"\u20D7","\\vec");z(H,ie,qn,"\u02D9","\\dot");z(H,ie,qn,"\u02DA","\\mathring");z(H,ie,rr,"\uE131","\\@imath");z(H,ie,rr,"\uE237","\\@jmath");z(H,ie,Le,"\u0131","\u0131");z(H,ie,Le,"\u0237","\u0237");z(st,ie,Le,"\u0131","\\i",!0);z(st,ie,Le,"\u0237","\\j",!0);z(st,ie,Le,"\xDF","\\ss",!0);z(st,ie,Le,"\xE6","\\ae",!0);z(st,ie,Le,"\u0153","\\oe",!0);z(st,ie,Le,"\xF8","\\o",!0);z(st,ie,Le,"\xC6","\\AE",!0);z(st,ie,Le,"\u0152","\\OE",!0);z(st,ie,Le,"\xD8","\\O",!0);z(st,ie,qn,"\u02CA","\\'");z(st,ie,qn,"\u02CB","\\`");z(st,ie,qn,"\u02C6","\\^");z(st,ie,qn,"\u02DC","\\~");z(st,ie,qn,"\u02C9","\\=");z(st,ie,qn,"\u02D8","\\u");z(st,ie,qn,"\u02D9","\\.");z(st,ie,qn,"\xB8","\\c");z(st,ie,qn,"\u02DA","\\r");z(st,ie,qn,"\u02C7","\\v");z(st,ie,qn,"\xA8",'\\"');z(st,ie,qn,"\u02DD","\\H");z(st,ie,qn,"\u25EF","\\textcircled");Nz={"--":!0,"---":!0,"``":!0,"''":!0};z(st,ie,Le,"\u2013","--",!0);z(st,ie,Le,"\u2013","\\textendash");z(st,ie,Le,"\u2014","---",!0);z(st,ie,Le,"\u2014","\\textemdash");z(st,ie,Le,"\u2018","`",!0);z(st,ie,Le,"\u2018","\\textquoteleft");z(st,ie,Le,"\u2019","'",!0);z(st,ie,Le,"\u2019","\\textquoteright");z(st,ie,Le,"\u201C","``",!0);z(st,ie,Le,"\u201C","\\textquotedblleft");z(st,ie,Le,"\u201D","''",!0);z(st,ie,Le,"\u201D","\\textquotedblright");z(H,ie,Le,"\xB0","\\degree",!0);z(st,ie,Le,"\xB0","\\degree");z(st,ie,Le,"\xB0","\\textdegree",!0);z(H,ie,Le,"\xA3","\\pounds");z(H,ie,Le,"\xA3","\\mathsterling",!0);z(st,ie,Le,"\xA3","\\pounds");z(st,ie,Le,"\xA3","\\textsterling",!0);z(H,ke,Le,"\u2720","\\maltese");z(st,ke,Le,"\u2720","\\maltese");JG='0123456789/@."';for(o3=0;o3<JG.length;o3++)R7=JG.charAt(o3),z(H,ie,Le,R7,R7);ez='0123456789!@*()-=+";:?/.,';for(l3=0;l3<ez.length;l3++)N7=ez.charAt(l3),z(st,ie,Le,N7,N7);b3="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";for(c3=0;c3<b3.length;c3++)zy=b3.charAt(c3),z(H,ie,rr,zy,zy),z(st,ie,Le,zy,zy);z(H,ke,Le,"C","\u2102");z(st,ke,Le,"C","\u2102");z(H,ke,Le,"H","\u210D");z(st,ke,Le,"H","\u210D");z(H,ke,Le,"N","\u2115");z(st,ke,Le,"N","\u2115");z(H,ke,Le,"P","\u2119");z(st,ke,Le,"P","\u2119");z(H,ke,Le,"Q","\u211A");z(st,ke,Le,"Q","\u211A");z(H,ke,Le,"R","\u211D");z(st,ke,Le,"R","\u211D");z(H,ke,Le,"Z","\u2124");z(st,ke,Le,"Z","\u2124");z(H,ie,rr,"h","\u210E");z(st,ie,rr,"h","\u210E");cr="";for(Da=0;Da<b3.length;Da++)ri=b3.charAt(Da),cr=String.fromCharCode(55349,56320+Da),z(H,ie,rr,ri,cr),z(st,ie,Le,ri,cr),cr=String.fromCharCode(55349,56372+Da),z(H,ie,rr,ri,cr),z(st,ie,Le,ri,cr),cr=String.fromCharCode(55349,56424+Da),z(H,ie,rr,ri,cr),z(st,ie,Le,ri,cr),cr=String.fromCharCode(55349,56580+Da),z(H,ie,rr,ri,cr),z(st,ie,Le,ri,cr),cr=String.fromCharCode(55349,56684+Da),z(H,ie,rr,ri,cr),z(st,ie,Le,ri,cr),cr=String.fromCharCode(55349,56736+Da),z(H,ie,rr,ri,cr),z(st,ie,Le,ri,cr),cr=String.fromCharCode(55349,56788+Da),z(H,ie,rr,ri,cr),z(st,ie,Le,ri,cr),cr=String.fromCharCode(55349,56840+Da),z(H,ie,rr,ri,cr),z(st,ie,Le,ri,cr),cr=String.fromCharCode(55349,56944+Da),z(H,ie,rr,ri,cr),z(st,ie,Le,ri,cr),Da<26&&(cr=String.fromCharCode(55349,56632+Da),z(H,ie,rr,ri,cr),z(st,ie,Le,ri,cr),cr=String.fromCharCode(55349,56476+Da),z(H,ie,rr,ri,cr),z(st,ie,Le,ri,cr));cr="\u{1D55C}";z(H,ie,rr,"k",cr);z(st,ie,Le,"k",cr);for(mh=0;mh<10;mh++)su=mh.toString(),cr=String.fromCharCode(55349,57294+mh),z(H,ie,rr,su,cr),z(st,ie,Le,su,cr),cr=String.fromCharCode(55349,57314+mh),z(H,ie,rr,su,cr),z(st,ie,Le,su,cr),cr=String.fromCharCode(55349,57324+mh),z(H,ie,rr,su,cr),z(st,ie,Le,su,cr),cr=String.fromCharCode(55349,57334+mh),z(H,ie,rr,su,cr),z(st,ie,Le,su,cr);q7="\xD0\xDE\xFE";for(u3=0;u3<q7.length;u3++)Vy=q7.charAt(u3),z(H,ie,rr,Vy,Vy),z(st,ie,Le,Vy,Vy);h3=[["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"]],tz=[["mathbf","textbf","Main-Bold"],["","",""],["mathsf","textsf","SansSerif-Regular"],["mathboldsf","textboldsf","SansSerif-Bold"],["mathtt","texttt","Typewriter-Regular"]],t3e=o(function(e,r){var n=e.charCodeAt(0),i=e.charCodeAt(1),a=(n-55296)*1024+(i-56320)+65536,s=r==="math"?0:1;if(119808<=a&&a<120484){var l=Math.floor((a-119808)/26);return[h3[l][2],h3[l][s]]}else if(120782<=a&&a<=120831){var u=Math.floor((a-120782)/10);return[tz[u][2],tz[u][s]]}else{if(a===120485||a===120486)return[h3[0][2],h3[0][s]];if(120486<a&&a<120782)return["",""];throw new gt("Unsupported character: "+e)}},"wideCharacterFont"),A3=o(function(e,r,n){return Ln[n][e]&&Ln[n][e].replace&&(e=Ln[n][e].replace),{value:e,metrics:rA(e,r,n)}},"lookupSymbol"),fl=o(function(e,r,n,i,a){var s=A3(e,r,n),l=s.metrics;e=s.value;var u;if(l){var h=l.italic;(n==="text"||i&&i.font==="mathit")&&(h=0),u=new Ss(e,l.height,l.depth,h,l.skew,l.width,a)}else typeof console<"u"&&console.warn("No character metrics "+("for '"+e+"' in style '"+r+"' and mode '"+n+"'")),u=new Ss(e,0,0,0,0,0,a);if(i){u.maxFontSize=i.sizeMultiplier,i.style.isTight()&&u.classes.push("mtight");var f=i.getColor();f&&(u.style.color=f)}return u},"makeSymbol"),r3e=o(function(e,r,n,i){return i===void 0&&(i=[]),n.font==="boldsymbol"&&A3(e,"Main-Bold",r).metrics?fl(e,"Main-Bold",r,n,i.concat(["mathbf"])):e==="\\"||Ln[r][e].font==="main"?fl(e,"Main-Regular",r,n,i):fl(e,"AMS-Regular",r,n,i.concat(["amsrm"]))},"mathsym"),n3e=o(function(e,r,n,i,a){return a!=="textord"&&A3(e,"Math-BoldItalic",r).metrics?{fontName:"Math-BoldItalic",fontClass:"boldsymbol"}:{fontName:"Main-Bold",fontClass:"mathbf"}},"boldsymbol"),i3e=o(function(e,r,n){var i=e.mode,a=e.text,s=["mord"],l=i==="math"||i==="text"&&r.font,u=l?r.font:r.fontFamily,h="",f="";if(a.charCodeAt(0)===55349&&([h,f]=t3e(a,i)),h.length>0)return fl(a,h,i,r,s.concat(f));if(u){var d,p;if(u==="boldsymbol"){var m=n3e(a,i,r,s,n);d=m.fontName,p=[m.fontClass]}else l?(d=Oz[u].fontName,p=[u]):(d=f3(u,r.fontWeight,r.fontShape),p=[u,r.fontWeight,r.fontShape]);if(A3(a,d,i).metrics)return fl(a,d,i,r,s.concat(p));if(Nz.hasOwnProperty(a)&&d.slice(0,10)==="Typewriter"){for(var g=[],y=0;y<a.length;y++)g.push(fl(a[y],d,i,r,s.concat(p)));return Iz(g)}}if(n==="mathord")return fl(a,"Math-Italic",i,r,s.concat(["mathnormal"]));if(n==="textord"){var x=Ln[i][a]&&Ln[i][a].font;if(x==="ams"){var v=f3("amsrm",r.fontWeight,r.fontShape);return fl(a,v,i,r,s.concat("amsrm",r.fontWeight,r.fontShape))}else if(x==="main"||!x){var b=f3("textrm",r.fontWeight,r.fontShape);return fl(a,b,i,r,s.concat(r.fontWeight,r.fontShape))}else{var T=f3(x,r.fontWeight,r.fontShape);return fl(a,T,i,r,s.concat(T,r.fontWeight,r.fontShape))}}else throw new Error("unexpected type: "+n+" in makeOrd")},"makeOrd"),a3e=o((t,e)=>{if(yh(t.classes)!==yh(e.classes)||t.skew!==e.skew||t.maxFontSize!==e.maxFontSize)return!1;if(t.classes.length===1){var r=t.classes[0];if(r==="mbin"||r==="mord")return!1}for(var n in t.style)if(t.style.hasOwnProperty(n)&&t.style[n]!==e.style[n])return!1;for(var i in e.style)if(e.style.hasOwnProperty(i)&&t.style[i]!==e.style[i])return!1;return!0},"canCombine"),s3e=o(t=>{for(var e=0;e<t.length-1;e++){var r=t[e],n=t[e+1];r instanceof Ss&&n instanceof Ss&&a3e(r,n)&&(r.text+=n.text,r.height=Math.max(r.height,n.height),r.depth=Math.max(r.depth,n.depth),r.italic=n.italic,t.splice(e+1,1),e--)}return t},"tryCombineChars"),nA=o(function(e){for(var r=0,n=0,i=0,a=0;a<e.children.length;a++){var s=e.children[a];s.height>r&&(r=s.height),s.depth>n&&(n=s.depth),s.maxFontSize>i&&(i=s.maxFontSize)}e.height=r,e.depth=n,e.maxFontSize=i},"sizeElementFromChildren"),Es=o(function(e,r,n,i){var a=new cd(e,r,n,i);return nA(a),a},"makeSpan"),Mz=o((t,e,r,n)=>new cd(t,e,r,n),"makeSvgSpan"),o3e=o(function(e,r,n){var i=Es([e],[],r);return i.height=Math.max(n||r.fontMetrics().defaultRuleThickness,r.minRuleThickness),i.style.borderBottomWidth=Et(i.height),i.maxFontSize=1,i},"makeLineSpan"),l3e=o(function(e,r,n,i){var a=new Xy(e,r,n,i);return nA(a),a},"makeAnchor"),Iz=o(function(e){var r=new ld(e);return nA(r),r},"makeFragment"),c3e=o(function(e,r){return e instanceof ld?Es([],[e],r):e},"wrapFragment"),u3e=o(function(e){if(e.positionType==="individualShift"){for(var r=e.children,n=[r[0]],i=-r[0].shift-r[0].elem.depth,a=i,s=1;s<r.length;s++){var l=-r[s].shift-a-r[s].elem.depth,u=l-(r[s-1].elem.height+r[s-1].elem.depth);a=a+l,n.push({type:"kern",size:u}),n.push(r[s])}return{children:n,depth:i}}var h;if(e.positionType==="top"){for(var f=e.positionData,d=0;d<e.children.length;d++){var p=e.children[d];f-=p.type==="kern"?p.size:p.elem.height+p.elem.depth}h=f}else if(e.positionType==="bottom")h=-e.positionData;else{var m=e.children[0];if(m.type!=="elem")throw new Error('First child must have type "elem".');if(e.positionType==="shift")h=-m.elem.depth-e.positionData;else if(e.positionType==="firstBaseline")h=-m.elem.depth;else throw new Error("Invalid positionType "+e.positionType+".")}return{children:e.children,depth:h}},"getVListChildrenAndDepth"),h3e=o(function(e,r){for(var{children:n,depth:i}=u3e(e),a=0,s=0;s<n.length;s++){var l=n[s];if(l.type==="elem"){var u=l.elem;a=Math.max(a,u.maxFontSize,u.height)}}a+=2;var h=Es(["pstrut"],[]);h.style.height=Et(a);for(var f=[],d=i,p=i,m=i,g=0;g<n.length;g++){var y=n[g];if(y.type==="kern")m+=y.size;else{var x=y.elem,v=y.wrapperClasses||[],b=y.wrapperStyle||{},T=Es(v,[h,x],void 0,b);T.style.top=Et(-a-m-x.depth),y.marginLeft&&(T.style.marginLeft=y.marginLeft),y.marginRight&&(T.style.marginRight=y.marginRight),f.push(T),m+=x.height+x.depth}d=Math.min(d,m),p=Math.max(p,m)}var S=Es(["vlist"],f);S.style.height=Et(p);var w;if(d<0){var E=Es([],[]),_=Es(["vlist"],[E]);_.style.height=Et(-d);var A=Es(["vlist-s"],[new Ss("\u200B")]);w=[Es(["vlist-r"],[S,A]),Es(["vlist-r"],[_])]}else w=[Es(["vlist-r"],[S])];var D=Es(["vlist-t"],w);return w.length===2&&D.classes.push("vlist-t2"),D.height=p,D.depth=-d,D},"makeVList"),f3e=o((t,e)=>{var r=Es(["mspace"],[],e),n=ii(t,e);return r.style.marginRight=Et(n),r},"makeGlue"),f3=o(function(e,r,n){var i="";switch(e){case"amsrm":i="AMS";break;case"textrm":i="Main";break;case"textsf":i="SansSerif";break;case"texttt":i="Typewriter";break;default:i=e}var a;return r==="textbf"&&n==="textit"?a="BoldItalic":r==="textbf"?a="Bold":r==="textit"?a="Italic":a="Regular",i+"-"+a},"retrieveTextFontName"),Oz={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"}},Pz={vec:["vec",.471,.714],oiintSize1:["oiintSize1",.957,.499],oiintSize2:["oiintSize2",1.472,.659],oiiintSize1:["oiiintSize1",1.304,.499],oiiintSize2:["oiiintSize2",1.98,.659]},d3e=o(function(e,r){var[n,i,a]=Pz[e],s=new Ql(n),l=new dl([s],{width:Et(i),height:Et(a),style:"width:"+Et(i),viewBox:"0 0 "+1e3*i+" "+1e3*a,preserveAspectRatio:"xMinYMin"}),u=Mz(["overlay"],[l],r);return u.height=a,u.style.height=Et(a),u.style.width=Et(i),u},"staticSvg"),Fe={fontMap:Oz,makeSymbol:fl,mathsym:r3e,makeSpan:Es,makeSvgSpan:Mz,makeLineSpan:o3e,makeAnchor:l3e,makeFragment:Iz,wrapFragment:c3e,makeVList:h3e,makeOrd:i3e,makeGlue:f3e,staticSvg:d3e,svgData:Pz,tryCombineChars:s3e},ni={number:3,unit:"mu"},od={number:4,unit:"mu"},ou={number:5,unit:"mu"},p3e={mord:{mop:ni,mbin:od,mrel:ou,minner:ni},mop:{mord:ni,mop:ni,mrel:ou,minner:ni},mbin:{mord:od,mop:od,mopen:od,minner:od},mrel:{mord:ou,mop:ou,mopen:ou,minner:ou},mopen:{},mclose:{mop:ni,mbin:od,mrel:ou,minner:ni},mpunct:{mord:ni,mop:ni,mrel:ou,mopen:ni,mclose:ni,mpunct:ni,minner:ni},minner:{mord:ni,mop:ni,mbin:od,mrel:ou,mopen:ni,mpunct:ni,minner:ni}},m3e={mord:{mop:ni},mop:{mord:ni,mop:ni},mbin:{},mrel:{},mopen:{},mclose:{mop:ni},mpunct:{},minner:{mop:ni}},Bz={},T3={},w3={};o(Rt,"defineFunction");o(ud,"defineFunctionBuilders");k3=o(function(e){return e.type==="ordgroup"&&e.body.length===1?e.body[0]:e},"normalizeArgument"),yi=o(function(e){return e.type==="ordgroup"?e.body:[e]},"ordargument"),uu=Fe.makeSpan,g3e=["leftmost","mbin","mopen","mrel","mop","mpunct"],y3e=["rightmost","mrel","mclose","mpunct"],v3e={display:nr.DISPLAY,text:nr.TEXT,script:nr.SCRIPT,scriptscript:nr.SCRIPTSCRIPT},x3e={mord:"mord",mop:"mop",mbin:"mbin",mrel:"mrel",mopen:"mopen",mclose:"mclose",mpunct:"mpunct",minner:"minner"},Pi=o(function(e,r,n,i){i===void 0&&(i=[null,null]);for(var a=[],s=0;s<e.length;s++){var l=$r(e[s],r);if(l instanceof ld){var u=l.children;a.push(...u)}else a.push(l)}if(Fe.tryCombineChars(a),!n)return a;var h=r;if(e.length===1){var f=e[0];f.type==="sizing"?h=r.havingSize(f.size):f.type==="styling"&&(h=r.havingStyle(v3e[f.style]))}var d=uu([i[0]||"leftmost"],[],r),p=uu([i[1]||"rightmost"],[],r),m=n==="root";return rz(a,(g,y)=>{var x=y.classes[0],v=g.classes[0];x==="mbin"&&er.contains(y3e,v)?y.classes[0]="mord":v==="mbin"&&er.contains(g3e,x)&&(g.classes[0]="mord")},{node:d},p,m),rz(a,(g,y)=>{var x=Y7(y),v=Y7(g),b=x&&v?g.hasClass("mtight")?m3e[x][v]:p3e[x][v]:null;if(b)return Fe.makeGlue(b,h)},{node:d},p,m),a},"buildExpression"),rz=o(function t(e,r,n,i,a){i&&e.push(i);for(var s=0;s<e.length;s++){var l=e[s],u=Fz(l);if(u){t(u.children,r,n,null,a);continue}var h=!l.hasClass("mspace");if(h){var f=r(l,n.node);f&&(n.insertAfter?n.insertAfter(f):(e.unshift(f),s++))}h?n.node=l:a&&l.hasClass("newline")&&(n.node=uu(["leftmost"])),n.insertAfter=(d=>p=>{e.splice(d+1,0,p),s++})(s)}i&&e.pop()},"traverseNonSpaceNodes"),Fz=o(function(e){return e instanceof ld||e instanceof Xy||e instanceof cd&&e.hasClass("enclosing")?e:null},"checkPartialGroup"),b3e=o(function t(e,r){var n=Fz(e);if(n){var i=n.children;if(i.length){if(r==="right")return t(i[i.length-1],"right");if(r==="left")return t(i[0],"left")}}return e},"getOutermostNode"),Y7=o(function(e,r){return e?(r&&(e=b3e(e,r)),x3e[e.classes[0]]||null):null},"getTypeOfDomTree"),Ky=o(function(e,r){var n=["nulldelimiter"].concat(e.baseSizingClasses());return uu(r.concat(n))},"makeNullDelimiter"),$r=o(function(e,r,n){if(!e)return uu();if(T3[e.type]){var i=T3[e.type](e,r);if(n&&r.size!==n.size){i=uu(r.sizingClasses(n),[i],r);var a=r.sizeMultiplier/n.sizeMultiplier;i.height*=a,i.depth*=a}return i}else throw new gt("Got group of unknown type: '"+e.type+"'")},"buildGroup");o(d3,"buildHTMLUnbreakable");o(X7,"buildHTML");o($z,"newDocumentFragment");es=class{static{o(this,"MathNode")}constructor(e,r,n){this.type=void 0,this.attributes=void 0,this.children=void 0,this.classes=void 0,this.type=e,this.attributes={},this.children=r||[],this.classes=n||[]}setAttribute(e,r){this.attributes[e]=r}getAttribute(e){return this.attributes[e]}toNode(){var e=document.createElementNS("http://www.w3.org/1998/Math/MathML",this.type);for(var r in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,r)&&e.setAttribute(r,this.attributes[r]);this.classes.length>0&&(e.className=yh(this.classes));for(var n=0;n<this.children.length;n++)if(this.children[n]instanceof Ao&&this.children[n+1]instanceof Ao){for(var i=this.children[n].toText()+this.children[++n].toText();this.children[n+1]instanceof Ao;)i+=this.children[++n].toText();e.appendChild(new Ao(i).toNode())}else e.appendChild(this.children[n].toNode());return e}toMarkup(){var e="<"+this.type;for(var r in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,r)&&(e+=" "+r+'="',e+=er.escape(this.attributes[r]),e+='"');this.classes.length>0&&(e+=' class ="'+er.escape(yh(this.classes))+'"'),e+=">";for(var n=0;n<this.children.length;n++)e+=this.children[n].toMarkup();return e+="</"+this.type+">",e}toText(){return this.children.map(e=>e.toText()).join("")}},Ao=class{static{o(this,"TextNode")}constructor(e){this.text=void 0,this.text=e}toNode(){return document.createTextNode(this.text)}toMarkup(){return er.escape(this.toText())}toText(){return this.text}},j7=class{static{o(this,"SpaceNode")}constructor(e){this.width=void 0,this.character=void 0,this.width=e,e>=.05555&&e<=.05556?this.character="\u200A":e>=.1666&&e<=.1667?this.character="\u2009":e>=.2222&&e<=.2223?this.character="\u2005":e>=.2777&&e<=.2778?this.character="\u2005\u200A":e>=-.05556&&e<=-.05555?this.character="\u200A\u2063":e>=-.1667&&e<=-.1666?this.character="\u2009\u2063":e>=-.2223&&e<=-.2222?this.character="\u205F\u2063":e>=-.2778&&e<=-.2777?this.character="\u2005\u2063":this.character=null}toNode(){if(this.character)return document.createTextNode(this.character);var e=document.createElementNS("http://www.w3.org/1998/Math/MathML","mspace");return e.setAttribute("width",Et(this.width)),e}toMarkup(){return this.character?"<mtext>"+this.character+"</mtext>":'<mspace width="'+Et(this.width)+'"/>'}toText(){return this.character?this.character:" "}},mt={MathNode:es,TextNode:Ao,SpaceNode:j7,newDocumentFragment:$z},Do=o(function(e,r,n){return Ln[r][e]&&Ln[r][e].replace&&e.charCodeAt(0)!==55349&&!(Nz.hasOwnProperty(e)&&n&&(n.fontFamily&&n.fontFamily.slice(4,6)==="tt"||n.font&&n.font.slice(4,6)==="tt"))&&(e=Ln[r][e].replace),new mt.TextNode(e)},"makeText"),iA=o(function(e){return e.length===1?e[0]:new mt.MathNode("mrow",e)},"makeRow"),aA=o(function(e,r){if(r.fontFamily==="texttt")return"monospace";if(r.fontFamily==="textsf")return r.fontShape==="textit"&&r.fontWeight==="textbf"?"sans-serif-bold-italic":r.fontShape==="textit"?"sans-serif-italic":r.fontWeight==="textbf"?"bold-sans-serif":"sans-serif";if(r.fontShape==="textit"&&r.fontWeight==="textbf")return"bold-italic";if(r.fontShape==="textit")return"italic";if(r.fontWeight==="textbf")return"bold";var n=r.font;if(!n||n==="mathnormal")return null;var i=e.mode;if(n==="mathit")return"italic";if(n==="boldsymbol")return e.type==="textord"?"bold":"bold-italic";if(n==="mathbf")return"bold";if(n==="mathbb")return"double-struck";if(n==="mathsfit")return"sans-serif-italic";if(n==="mathfrak")return"fraktur";if(n==="mathscr"||n==="mathcal")return"script";if(n==="mathsf")return"sans-serif";if(n==="mathtt")return"monospace";var a=e.text;if(er.contains(["\\imath","\\jmath"],a))return null;Ln[i][a]&&Ln[i][a].replace&&(a=Ln[i][a].replace);var s=Fe.fontMap[n].fontName;return rA(a,s,i)?Fe.fontMap[n].variant:null},"getVariant");o(M7,"isNumberPunctuation");Cs=o(function(e,r,n){if(e.length===1){var i=vn(e[0],r);return n&&i instanceof es&&i.type==="mo"&&(i.setAttribute("lspace","0em"),i.setAttribute("rspace","0em")),[i]}for(var a=[],s,l=0;l<e.length;l++){var u=vn(e[l],r);if(u instanceof es&&s instanceof es){if(u.type==="mtext"&&s.type==="mtext"&&u.getAttribute("mathvariant")===s.getAttribute("mathvariant")){s.children.push(...u.children);continue}else if(u.type==="mn"&&s.type==="mn"){s.children.push(...u.children);continue}else if(M7(u)&&s.type==="mn"){s.children.push(...u.children);continue}else if(u.type==="mn"&&M7(s))u.children=[...s.children,...u.children],a.pop();else if((u.type==="msup"||u.type==="msub")&&u.children.length>=1&&(s.type==="mn"||M7(s))){var h=u.children[0];h instanceof es&&h.type==="mn"&&(h.children=[...s.children,...h.children],a.pop())}else if(s.type==="mi"&&s.children.length===1){var f=s.children[0];if(f instanceof Ao&&f.text==="\u0338"&&(u.type==="mo"||u.type==="mi"||u.type==="mn")){var d=u.children[0];d instanceof Ao&&d.text.length>0&&(d.text=d.text.slice(0,1)+"\u0338"+d.text.slice(1),a.pop())}}}a.push(u),s=u}return a},"buildExpression"),vh=o(function(e,r,n){return iA(Cs(e,r,n))},"buildExpressionRow"),vn=o(function(e,r){if(!e)return new mt.MathNode("mrow");if(w3[e.type]){var n=w3[e.type](e,r);return n}else throw new gt("Got group of unknown type: '"+e.type+"'")},"buildGroup");o(nz,"buildMathML");Gz=o(function(e){return new x3({style:e.displayMode?nr.DISPLAY:nr.TEXT,maxSize:e.maxSize,minRuleThickness:e.minRuleThickness})},"optionsFromSettings"),zz=o(function(e,r){if(r.displayMode){var n=["katex-display"];r.leqno&&n.push("leqno"),r.fleqn&&n.push("fleqn"),e=Fe.makeSpan(n,[e])}return e},"displayWrap"),T3e=o(function(e,r,n){var i=Gz(n),a;if(n.output==="mathml")return nz(e,r,i,n.displayMode,!0);if(n.output==="html"){var s=X7(e,i);a=Fe.makeSpan(["katex"],[s])}else{var l=nz(e,r,i,n.displayMode,!1),u=X7(e,i);a=Fe.makeSpan(["katex"],[l,u])}return zz(a,n)},"buildTree"),w3e=o(function(e,r,n){var i=Gz(n),a=X7(e,i),s=Fe.makeSpan(["katex"],[a]);return zz(s,n)},"buildHTMLTree"),k3e={widehat:"^",widecheck:"\u02C7",widetilde:"~",utilde:"~",overleftarrow:"\u2190",underleftarrow:"\u2190",xleftarrow:"\u2190",overrightarrow:"\u2192",underrightarrow:"\u2192",xrightarrow:"\u2192",underbrace:"\u23DF",overbrace:"\u23DE",overgroup:"\u23E0",undergroup:"\u23E1",overleftrightarrow:"\u2194",underleftrightarrow:"\u2194",xleftrightarrow:"\u2194",Overrightarrow:"\u21D2",xRightarrow:"\u21D2",overleftharpoon:"\u21BC",xleftharpoonup:"\u21BC",overrightharpoon:"\u21C0",xrightharpoonup:"\u21C0",xLeftarrow:"\u21D0",xLeftrightarrow:"\u21D4",xhookleftarrow:"\u21A9",xhookrightarrow:"\u21AA",xmapsto:"\u21A6",xrightharpoondown:"\u21C1",xleftharpoondown:"\u21BD",xrightleftharpoons:"\u21CC",xleftrightharpoons:"\u21CB",xtwoheadleftarrow:"\u219E",xtwoheadrightarrow:"\u21A0",xlongequal:"=",xtofrom:"\u21C4",xrightleftarrows:"\u21C4",xrightequilibrium:"\u21CC",xleftequilibrium:"\u21CB","\\cdrightarrow":"\u2192","\\cdleftarrow":"\u2190","\\cdlongequal":"="},E3e=o(function(e){var r=new mt.MathNode("mo",[new mt.TextNode(k3e[e.replace(/^\\/,"")])]);return r.setAttribute("stretchy","true"),r},"mathMLnode"),S3e={overrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],overleftarrow:[["leftarrow"],.888,522,"xMinYMin"],underrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],underleftarrow:[["leftarrow"],.888,522,"xMinYMin"],xrightarrow:[["rightarrow"],1.469,522,"xMaxYMin"],"\\cdrightarrow":[["rightarrow"],3,522,"xMaxYMin"],xleftarrow:[["leftarrow"],1.469,522,"xMinYMin"],"\\cdleftarrow":[["leftarrow"],3,522,"xMinYMin"],Overrightarrow:[["doublerightarrow"],.888,560,"xMaxYMin"],xRightarrow:[["doublerightarrow"],1.526,560,"xMaxYMin"],xLeftarrow:[["doubleleftarrow"],1.526,560,"xMinYMin"],overleftharpoon:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoonup:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoondown:[["leftharpoondown"],.888,522,"xMinYMin"],overrightharpoon:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoonup:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoondown:[["rightharpoondown"],.888,522,"xMaxYMin"],xlongequal:[["longequal"],.888,334,"xMinYMin"],"\\cdlongequal":[["longequal"],3,334,"xMinYMin"],xtwoheadleftarrow:[["twoheadleftarrow"],.888,334,"xMinYMin"],xtwoheadrightarrow:[["twoheadrightarrow"],.888,334,"xMaxYMin"],overleftrightarrow:[["leftarrow","rightarrow"],.888,522],overbrace:[["leftbrace","midbrace","rightbrace"],1.6,548],underbrace:[["leftbraceunder","midbraceunder","rightbraceunder"],1.6,548],underleftrightarrow:[["leftarrow","rightarrow"],.888,522],xleftrightarrow:[["leftarrow","rightarrow"],1.75,522],xLeftrightarrow:[["doubleleftarrow","doublerightarrow"],1.75,560],xrightleftharpoons:[["leftharpoondownplus","rightharpoonplus"],1.75,716],xleftrightharpoons:[["leftharpoonplus","rightharpoondownplus"],1.75,716],xhookleftarrow:[["leftarrow","righthook"],1.08,522],xhookrightarrow:[["lefthook","rightarrow"],1.08,522],overlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],underlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],overgroup:[["leftgroup","rightgroup"],.888,342],undergroup:[["leftgroupunder","rightgroupunder"],.888,342],xmapsto:[["leftmapsto","rightarrow"],1.5,522],xtofrom:[["leftToFrom","rightToFrom"],1.75,528],xrightleftarrows:[["baraboveleftarrow","rightarrowabovebar"],1.75,901],xrightequilibrium:[["baraboveshortleftharpoon","rightharpoonaboveshortbar"],1.75,716],xleftequilibrium:[["shortbaraboveleftharpoon","shortrightharpoonabovebar"],1.75,716]},C3e=o(function(e){return e.type==="ordgroup"?e.body.length:1},"groupLength"),A3e=o(function(e,r){function n(){var l=4e5,u=e.label.slice(1);if(er.contains(["widehat","widecheck","widetilde","utilde"],u)){var h=e,f=C3e(h.base),d,p,m;if(f>5)u==="widehat"||u==="widecheck"?(d=420,l=2364,m=.42,p=u+"4"):(d=312,l=2340,m=.34,p="tilde4");else{var g=[1,1,2,2,3,3][f];u==="widehat"||u==="widecheck"?(l=[0,1062,2364,2364,2364][g],d=[0,239,300,360,420][g],m=[0,.24,.3,.3,.36,.42][g],p=u+g):(l=[0,600,1033,2339,2340][g],d=[0,260,286,306,312][g],m=[0,.26,.286,.3,.306,.34][g],p="tilde"+g)}var y=new Ql(p),x=new dl([y],{width:"100%",height:Et(m),viewBox:"0 0 "+l+" "+d,preserveAspectRatio:"none"});return{span:Fe.makeSvgSpan([],[x],r),minWidth:0,height:m}}else{var v=[],b=S3e[u],[T,S,w]=b,E=w/1e3,_=T.length,A,D;if(_===1){var O=b[3];A=["hide-tail"],D=[O]}else if(_===2)A=["halfarrow-left","halfarrow-right"],D=["xMinYMin","xMaxYMin"];else if(_===3)A=["brace-left","brace-center","brace-right"],D=["xMinYMin","xMidYMin","xMaxYMin"];else throw new Error(`Correct katexImagesData or update code here to support
|
||
`+_+" children.");for(var R=0;R<_;R++){var k=new Ql(T[R]),L=new dl([k],{width:"400em",height:Et(E),viewBox:"0 0 "+l+" "+w,preserveAspectRatio:D[R]+" slice"}),C=Fe.makeSvgSpan([A[R]],[L],r);if(_===1)return{span:C,minWidth:S,height:E};C.style.height=Et(E),v.push(C)}return{span:Fe.makeSpan(["stretchy"],v,r),minWidth:S,height:E}}}o(n,"buildSvgSpan_");var{span:i,minWidth:a,height:s}=n();return i.height=s,i.style.height=Et(s),a>0&&(i.style.minWidth=Et(a)),i},"svgSpan"),_3e=o(function(e,r,n,i,a){var s,l=e.height+e.depth+n+i;if(/fbox|color|angl/.test(r)){if(s=Fe.makeSpan(["stretchy",r],[],a),r==="fbox"){var u=a.color&&a.getColor();u&&(s.style.borderColor=u)}}else{var h=[];/^[bx]cancel$/.test(r)&&h.push(new jy({x1:"0",y1:"0",x2:"100%",y2:"100%","stroke-width":"0.046em"})),/^x?cancel$/.test(r)&&h.push(new jy({x1:"0",y1:"100%",x2:"100%",y2:"0","stroke-width":"0.046em"}));var f=new dl(h,{width:"100%",height:Et(l)});s=Fe.makeSvgSpan([],[f],a)}return s.height=l,s.style.height=Et(l),s},"encloseSpan"),hu={encloseSpan:_3e,mathMLnode:E3e,svgSpan:A3e};o(xr,"assertNodeType");o(sA,"assertSymbolNodeType");o(_3,"checkSymbolNodeType");oA=o((t,e)=>{var r,n,i;t&&t.type==="supsub"?(n=xr(t.base,"accent"),r=n.base,t.base=r,i=Z4e($r(t,e)),t.base=n):(n=xr(t,"accent"),r=n.base);var a=$r(r,e.havingCrampedStyle()),s=n.isShifty&&er.isCharacterBox(r),l=0;if(s){var u=er.getBaseElem(r),h=$r(u,e.havingCrampedStyle());l=ZG(h).skew}var f=n.label==="\\c",d=f?a.height+a.depth:Math.min(a.height,e.fontMetrics().xHeight),p;if(n.isStretchy)p=hu.svgSpan(n,e),p=Fe.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"elem",elem:p,wrapperClasses:["svg-align"],wrapperStyle:l>0?{width:"calc(100% - "+Et(2*l)+")",marginLeft:Et(2*l)}:void 0}]},e);else{var m,g;n.label==="\\vec"?(m=Fe.staticSvg("vec",e),g=Fe.svgData.vec[1]):(m=Fe.makeOrd({mode:n.mode,text:n.label},e,"textord"),m=ZG(m),m.italic=0,g=m.width,f&&(d+=m.depth)),p=Fe.makeSpan(["accent-body"],[m]);var y=n.label==="\\textcircled";y&&(p.classes.push("accent-full"),d=a.height);var x=l;y||(x-=g/2),p.style.left=Et(x),n.label==="\\textcircled"&&(p.style.top=".2em"),p=Fe.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"kern",size:-d},{type:"elem",elem:p}]},e)}var v=Fe.makeSpan(["mord","accent"],[p],e);return i?(i.children[0]=v,i.height=Math.max(v.height,i.height),i.classes[0]="mord",i):v},"htmlBuilder$a"),Vz=o((t,e)=>{var r=t.isStretchy?hu.mathMLnode(t.label):new mt.MathNode("mo",[Do(t.label,t.mode)]),n=new mt.MathNode("mover",[vn(t.base,e),r]);return n.setAttribute("accent","true"),n},"mathmlBuilder$9"),D3e=new RegExp(["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring"].map(t=>"\\"+t).join("|"));Rt({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:o((t,e)=>{var r=k3(e[0]),n=!D3e.test(t.funcName),i=!n||t.funcName==="\\widehat"||t.funcName==="\\widetilde"||t.funcName==="\\widecheck";return{type:"accent",mode:t.parser.mode,label:t.funcName,isStretchy:n,isShifty:i,base:r}},"handler"),htmlBuilder:oA,mathmlBuilder:Vz});Rt({type:"accent",names:["\\'","\\`","\\^","\\~","\\=","\\u","\\.",'\\"',"\\c","\\r","\\H","\\v","\\textcircled"],props:{numArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["primitive"]},handler:o((t,e)=>{var r=e[0],n=t.parser.mode;return n==="math"&&(t.parser.settings.reportNonstrict("mathVsTextAccents","LaTeX's accent "+t.funcName+" works only in text mode"),n="text"),{type:"accent",mode:n,label:t.funcName,isStretchy:!1,isShifty:!0,base:r}},"handler"),htmlBuilder:oA,mathmlBuilder:Vz});Rt({type:"accentUnder",names:["\\underleftarrow","\\underrightarrow","\\underleftrightarrow","\\undergroup","\\underlinesegment","\\utilde"],props:{numArgs:1},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0];return{type:"accentUnder",mode:r.mode,label:n,base:i}},"handler"),htmlBuilder:o((t,e)=>{var r=$r(t.base,e),n=hu.svgSpan(t,e),i=t.label==="\\utilde"?.12:0,a=Fe.makeVList({positionType:"top",positionData:r.height,children:[{type:"elem",elem:n,wrapperClasses:["svg-align"]},{type:"kern",size:i},{type:"elem",elem:r}]},e);return Fe.makeSpan(["mord","accentunder"],[a],e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=hu.mathMLnode(t.label),n=new mt.MathNode("munder",[vn(t.base,e),r]);return n.setAttribute("accentunder","true"),n},"mathmlBuilder")});p3=o(t=>{var e=new mt.MathNode("mpadded",t?[t]:[]);return e.setAttribute("width","+0.6em"),e.setAttribute("lspace","0.3em"),e},"paddedNode");Rt({type:"xArrow",names:["\\xleftarrow","\\xrightarrow","\\xLeftarrow","\\xRightarrow","\\xleftrightarrow","\\xLeftrightarrow","\\xhookleftarrow","\\xhookrightarrow","\\xmapsto","\\xrightharpoondown","\\xrightharpoonup","\\xleftharpoondown","\\xleftharpoonup","\\xrightleftharpoons","\\xleftrightharpoons","\\xlongequal","\\xtwoheadrightarrow","\\xtwoheadleftarrow","\\xtofrom","\\xrightleftarrows","\\xrightequilibrium","\\xleftequilibrium","\\\\cdrightarrow","\\\\cdleftarrow","\\\\cdlongequal"],props:{numArgs:1,numOptionalArgs:1},handler(t,e,r){var{parser:n,funcName:i}=t;return{type:"xArrow",mode:n.mode,label:i,body:e[0],below:r[0]}},htmlBuilder(t,e){var r=e.style,n=e.havingStyle(r.sup()),i=Fe.wrapFragment($r(t.body,n,e),e),a=t.label.slice(0,2)==="\\x"?"x":"cd";i.classes.push(a+"-arrow-pad");var s;t.below&&(n=e.havingStyle(r.sub()),s=Fe.wrapFragment($r(t.below,n,e),e),s.classes.push(a+"-arrow-pad"));var l=hu.svgSpan(t,e),u=-e.fontMetrics().axisHeight+.5*l.height,h=-e.fontMetrics().axisHeight-.5*l.height-.111;(i.depth>.25||t.label==="\\xleftequilibrium")&&(h-=i.depth);var f;if(s){var d=-e.fontMetrics().axisHeight+s.height+.5*l.height+.111;f=Fe.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:h},{type:"elem",elem:l,shift:u},{type:"elem",elem:s,shift:d}]},e)}else f=Fe.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:h},{type:"elem",elem:l,shift:u}]},e);return f.children[0].children[0].children[1].classes.push("svg-align"),Fe.makeSpan(["mrel","x-arrow"],[f],e)},mathmlBuilder(t,e){var r=hu.mathMLnode(t.label);r.setAttribute("minsize",t.label.charAt(0)==="x"?"1.75em":"3.0em");var n;if(t.body){var i=p3(vn(t.body,e));if(t.below){var a=p3(vn(t.below,e));n=new mt.MathNode("munderover",[r,a,i])}else n=new mt.MathNode("mover",[r,i])}else if(t.below){var s=p3(vn(t.below,e));n=new mt.MathNode("munder",[r,s])}else n=p3(),n=new mt.MathNode("mover",[r,n]);return n}});L3e=Fe.makeSpan;o(Uz,"htmlBuilder$9");o(Hz,"mathmlBuilder$8");Rt({type:"mclass",names:["\\mathord","\\mathbin","\\mathrel","\\mathopen","\\mathclose","\\mathpunct","\\mathinner"],props:{numArgs:1,primitive:!0},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];return{type:"mclass",mode:r.mode,mclass:"m"+n.slice(5),body:yi(i),isCharacterBox:er.isCharacterBox(i)}},htmlBuilder:Uz,mathmlBuilder:Hz});D3=o(t=>{var e=t.type==="ordgroup"&&t.body.length?t.body[0]:t;return e.type==="atom"&&(e.family==="bin"||e.family==="rel")?"m"+e.family:"mord"},"binrelClass");Rt({type:"mclass",names:["\\@binrel"],props:{numArgs:2},handler(t,e){var{parser:r}=t;return{type:"mclass",mode:r.mode,mclass:D3(e[0]),body:yi(e[1]),isCharacterBox:er.isCharacterBox(e[1])}}});Rt({type:"mclass",names:["\\stackrel","\\overset","\\underset"],props:{numArgs:2},handler(t,e){var{parser:r,funcName:n}=t,i=e[1],a=e[0],s;n!=="\\stackrel"?s=D3(i):s="mrel";var l={type:"op",mode:i.mode,limits:!0,alwaysHandleSupSub:!0,parentIsSupSub:!1,symbol:!1,suppressBaseShift:n!=="\\stackrel",body:yi(i)},u={type:"supsub",mode:a.mode,base:l,sup:n==="\\underset"?null:a,sub:n==="\\underset"?a:null};return{type:"mclass",mode:r.mode,mclass:s,body:[u],isCharacterBox:er.isCharacterBox(u)}},htmlBuilder:Uz,mathmlBuilder:Hz});Rt({type:"pmb",names:["\\pmb"],props:{numArgs:1,allowedInText:!0},handler(t,e){var{parser:r}=t;return{type:"pmb",mode:r.mode,mclass:D3(e[0]),body:yi(e[0])}},htmlBuilder(t,e){var r=Pi(t.body,e,!0),n=Fe.makeSpan([t.mclass],r,e);return n.style.textShadow="0.02em 0.01em 0.04px",n},mathmlBuilder(t,e){var r=Cs(t.body,e),n=new mt.MathNode("mstyle",r);return n.setAttribute("style","text-shadow: 0.02em 0.01em 0.04px"),n}});R3e={">":"\\\\cdrightarrow","<":"\\\\cdleftarrow","=":"\\\\cdlongequal",A:"\\uparrow",V:"\\downarrow","|":"\\Vert",".":"no arrow"},iz=o(()=>({type:"styling",body:[],mode:"math",style:"display"}),"newCell"),az=o(t=>t.type==="textord"&&t.text==="@","isStartOfArrow"),N3e=o((t,e)=>(t.type==="mathord"||t.type==="atom")&&t.text===e,"isLabelEnd");o(M3e,"cdArrow");o(I3e,"parseCD");Rt({type:"cdlabel",names:["\\\\cdleft","\\\\cdright"],props:{numArgs:1},handler(t,e){var{parser:r,funcName:n}=t;return{type:"cdlabel",mode:r.mode,side:n.slice(4),label:e[0]}},htmlBuilder(t,e){var r=e.havingStyle(e.style.sup()),n=Fe.wrapFragment($r(t.label,r,e),e);return n.classes.push("cd-label-"+t.side),n.style.bottom=Et(.8-n.depth),n.height=0,n.depth=0,n},mathmlBuilder(t,e){var r=new mt.MathNode("mrow",[vn(t.label,e)]);return r=new mt.MathNode("mpadded",[r]),r.setAttribute("width","0"),t.side==="left"&&r.setAttribute("lspace","-1width"),r.setAttribute("voffset","0.7em"),r=new mt.MathNode("mstyle",[r]),r.setAttribute("displaystyle","false"),r.setAttribute("scriptlevel","1"),r}});Rt({type:"cdlabelparent",names:["\\\\cdparent"],props:{numArgs:1},handler(t,e){var{parser:r}=t;return{type:"cdlabelparent",mode:r.mode,fragment:e[0]}},htmlBuilder(t,e){var r=Fe.wrapFragment($r(t.fragment,e),e);return r.classes.push("cd-vert-arrow"),r},mathmlBuilder(t,e){return new mt.MathNode("mrow",[vn(t.fragment,e)])}});Rt({type:"textord",names:["\\@char"],props:{numArgs:1,allowedInText:!0},handler(t,e){for(var{parser:r}=t,n=xr(e[0],"ordgroup"),i=n.body,a="",s=0;s<i.length;s++){var l=xr(i[s],"textord");a+=l.text}var u=parseInt(a),h;if(isNaN(u))throw new gt("\\@char has non-numeric argument "+a);if(u<0||u>=1114111)throw new gt("\\@char with invalid code point "+a);return u<=65535?h=String.fromCharCode(u):(u-=65536,h=String.fromCharCode((u>>10)+55296,(u&1023)+56320)),{type:"textord",mode:r.mode,text:h}}});Wz=o((t,e)=>{var r=Pi(t.body,e.withColor(t.color),!1);return Fe.makeFragment(r)},"htmlBuilder$8"),qz=o((t,e)=>{var r=Cs(t.body,e.withColor(t.color)),n=new mt.MathNode("mstyle",r);return n.setAttribute("mathcolor",t.color),n},"mathmlBuilder$7");Rt({type:"color",names:["\\textcolor"],props:{numArgs:2,allowedInText:!0,argTypes:["color","original"]},handler(t,e){var{parser:r}=t,n=xr(e[0],"color-token").color,i=e[1];return{type:"color",mode:r.mode,color:n,body:yi(i)}},htmlBuilder:Wz,mathmlBuilder:qz});Rt({type:"color",names:["\\color"],props:{numArgs:1,allowedInText:!0,argTypes:["color"]},handler(t,e){var{parser:r,breakOnTokenText:n}=t,i=xr(e[0],"color-token").color;r.gullet.macros.set("\\current@color",i);var a=r.parseExpression(!0,n);return{type:"color",mode:r.mode,color:i,body:a}},htmlBuilder:Wz,mathmlBuilder:qz});Rt({type:"cr",names:["\\\\"],props:{numArgs:0,numOptionalArgs:0,allowedInText:!0},handler(t,e,r){var{parser:n}=t,i=n.gullet.future().text==="["?n.parseSizeGroup(!0):null,a=!n.settings.displayMode||!n.settings.useStrictBehavior("newLineInDisplayMode","In LaTeX, \\\\ or \\newline does nothing in display mode");return{type:"cr",mode:n.mode,newLine:a,size:i&&xr(i,"size").value}},htmlBuilder(t,e){var r=Fe.makeSpan(["mspace"],[],e);return t.newLine&&(r.classes.push("newline"),t.size&&(r.style.marginTop=Et(ii(t.size,e)))),r},mathmlBuilder(t,e){var r=new mt.MathNode("mspace");return t.newLine&&(r.setAttribute("linebreak","newline"),t.size&&r.setAttribute("height",Et(ii(t.size,e)))),r}});K7={"\\global":"\\global","\\long":"\\\\globallong","\\\\globallong":"\\\\globallong","\\def":"\\gdef","\\gdef":"\\gdef","\\edef":"\\xdef","\\xdef":"\\xdef","\\let":"\\\\globallet","\\futurelet":"\\\\globalfuture"},Yz=o(t=>{var e=t.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(e))throw new gt("Expected a control sequence",t);return e},"checkControlSequence"),O3e=o(t=>{var e=t.gullet.popToken();return e.text==="="&&(e=t.gullet.popToken(),e.text===" "&&(e=t.gullet.popToken())),e},"getRHS"),Xz=o((t,e,r,n)=>{var i=t.gullet.macros.get(r.text);i==null&&(r.noexpand=!0,i={tokens:[r],numArgs:0,unexpandable:!t.gullet.isExpandable(r.text)}),t.gullet.macros.set(e,i,n)},"letCommand");Rt({type:"internal",names:["\\global","\\long","\\\\globallong"],props:{numArgs:0,allowedInText:!0},handler(t){var{parser:e,funcName:r}=t;e.consumeSpaces();var n=e.fetch();if(K7[n.text])return(r==="\\global"||r==="\\\\globallong")&&(n.text=K7[n.text]),xr(e.parseFunction(),"internal");throw new gt("Invalid token after macro prefix",n)}});Rt({type:"internal",names:["\\def","\\gdef","\\edef","\\xdef"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=e.gullet.popToken(),i=n.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(i))throw new gt("Expected a control sequence",n);for(var a=0,s,l=[[]];e.gullet.future().text!=="{";)if(n=e.gullet.popToken(),n.text==="#"){if(e.gullet.future().text==="{"){s=e.gullet.future(),l[a].push("{");break}if(n=e.gullet.popToken(),!/^[1-9]$/.test(n.text))throw new gt('Invalid argument number "'+n.text+'"');if(parseInt(n.text)!==a+1)throw new gt('Argument number "'+n.text+'" out of order');a++,l.push([])}else{if(n.text==="EOF")throw new gt("Expected a macro definition");l[a].push(n.text)}var{tokens:u}=e.gullet.consumeArg();return s&&u.unshift(s),(r==="\\edef"||r==="\\xdef")&&(u=e.gullet.expandTokens(u),u.reverse()),e.gullet.macros.set(i,{tokens:u,numArgs:a,delimiters:l},r===K7[r]),{type:"internal",mode:e.mode}}});Rt({type:"internal",names:["\\let","\\\\globallet"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=Yz(e.gullet.popToken());e.gullet.consumeSpaces();var i=O3e(e);return Xz(e,n,i,r==="\\\\globallet"),{type:"internal",mode:e.mode}}});Rt({type:"internal",names:["\\futurelet","\\\\globalfuture"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t){var{parser:e,funcName:r}=t,n=Yz(e.gullet.popToken()),i=e.gullet.popToken(),a=e.gullet.popToken();return Xz(e,n,a,r==="\\\\globalfuture"),e.gullet.pushToken(a),e.gullet.pushToken(i),{type:"internal",mode:e.mode}}});Uy=o(function(e,r,n){var i=Ln.math[e]&&Ln.math[e].replace,a=rA(i||e,r,n);if(!a)throw new Error("Unsupported symbol "+e+" and font size "+r+".");return a},"getMetrics"),lA=o(function(e,r,n,i){var a=n.havingBaseStyle(r),s=Fe.makeSpan(i.concat(a.sizingClasses(n)),[e],n),l=a.sizeMultiplier/n.sizeMultiplier;return s.height*=l,s.depth*=l,s.maxFontSize=a.sizeMultiplier,s},"styleWrap"),jz=o(function(e,r,n){var i=r.havingBaseStyle(n),a=(1-r.sizeMultiplier/i.sizeMultiplier)*r.fontMetrics().axisHeight;e.classes.push("delimcenter"),e.style.top=Et(a),e.height-=a,e.depth+=a},"centerSpan"),P3e=o(function(e,r,n,i,a,s){var l=Fe.makeSymbol(e,"Main-Regular",a,i),u=lA(l,r,i,s);return n&&jz(u,i,r),u},"makeSmallDelim"),B3e=o(function(e,r,n,i){return Fe.makeSymbol(e,"Size"+r+"-Regular",n,i)},"mathrmSize"),Kz=o(function(e,r,n,i,a,s){var l=B3e(e,r,a,i),u=lA(Fe.makeSpan(["delimsizing","size"+r],[l],i),nr.TEXT,i,s);return n&&jz(u,i,nr.TEXT),u},"makeLargeDelim"),I7=o(function(e,r,n){var i;r==="Size1-Regular"?i="delim-size1":i="delim-size4";var a=Fe.makeSpan(["delimsizinginner",i],[Fe.makeSpan([],[Fe.makeSymbol(e,r,n)])]);return{type:"elem",elem:a}},"makeGlyphSpan"),O7=o(function(e,r,n){var i=Kl["Size4-Regular"][e.charCodeAt(0)]?Kl["Size4-Regular"][e.charCodeAt(0)][4]:Kl["Size1-Regular"][e.charCodeAt(0)][4],a=new Ql("inner",W4e(e,Math.round(1e3*r))),s=new dl([a],{width:Et(i),height:Et(r),style:"width:"+Et(i),viewBox:"0 0 "+1e3*i+" "+Math.round(1e3*r),preserveAspectRatio:"xMinYMin"}),l=Fe.makeSvgSpan([],[s],n);return l.height=r,l.style.height=Et(r),l.style.width=Et(i),{type:"elem",elem:l}},"makeInner"),Q7=.008,m3={type:"kern",size:-1*Q7},F3e=["|","\\lvert","\\rvert","\\vert"],$3e=["\\|","\\lVert","\\rVert","\\Vert"],Qz=o(function(e,r,n,i,a,s){var l,u,h,f,d="",p=0;l=h=f=e,u=null;var m="Size1-Regular";e==="\\uparrow"?h=f="\u23D0":e==="\\Uparrow"?h=f="\u2016":e==="\\downarrow"?l=h="\u23D0":e==="\\Downarrow"?l=h="\u2016":e==="\\updownarrow"?(l="\\uparrow",h="\u23D0",f="\\downarrow"):e==="\\Updownarrow"?(l="\\Uparrow",h="\u2016",f="\\Downarrow"):er.contains(F3e,e)?(h="\u2223",d="vert",p=333):er.contains($3e,e)?(h="\u2225",d="doublevert",p=556):e==="["||e==="\\lbrack"?(l="\u23A1",h="\u23A2",f="\u23A3",m="Size4-Regular",d="lbrack",p=667):e==="]"||e==="\\rbrack"?(l="\u23A4",h="\u23A5",f="\u23A6",m="Size4-Regular",d="rbrack",p=667):e==="\\lfloor"||e==="\u230A"?(h=l="\u23A2",f="\u23A3",m="Size4-Regular",d="lfloor",p=667):e==="\\lceil"||e==="\u2308"?(l="\u23A1",h=f="\u23A2",m="Size4-Regular",d="lceil",p=667):e==="\\rfloor"||e==="\u230B"?(h=l="\u23A5",f="\u23A6",m="Size4-Regular",d="rfloor",p=667):e==="\\rceil"||e==="\u2309"?(l="\u23A4",h=f="\u23A5",m="Size4-Regular",d="rceil",p=667):e==="("||e==="\\lparen"?(l="\u239B",h="\u239C",f="\u239D",m="Size4-Regular",d="lparen",p=875):e===")"||e==="\\rparen"?(l="\u239E",h="\u239F",f="\u23A0",m="Size4-Regular",d="rparen",p=875):e==="\\{"||e==="\\lbrace"?(l="\u23A7",u="\u23A8",f="\u23A9",h="\u23AA",m="Size4-Regular"):e==="\\}"||e==="\\rbrace"?(l="\u23AB",u="\u23AC",f="\u23AD",h="\u23AA",m="Size4-Regular"):e==="\\lgroup"||e==="\u27EE"?(l="\u23A7",f="\u23A9",h="\u23AA",m="Size4-Regular"):e==="\\rgroup"||e==="\u27EF"?(l="\u23AB",f="\u23AD",h="\u23AA",m="Size4-Regular"):e==="\\lmoustache"||e==="\u23B0"?(l="\u23A7",f="\u23AD",h="\u23AA",m="Size4-Regular"):(e==="\\rmoustache"||e==="\u23B1")&&(l="\u23AB",f="\u23A9",h="\u23AA",m="Size4-Regular");var g=Uy(l,m,a),y=g.height+g.depth,x=Uy(h,m,a),v=x.height+x.depth,b=Uy(f,m,a),T=b.height+b.depth,S=0,w=1;if(u!==null){var E=Uy(u,m,a);S=E.height+E.depth,w=2}var _=y+T+S,A=Math.max(0,Math.ceil((r-_)/(w*v))),D=_+A*w*v,O=i.fontMetrics().axisHeight;n&&(O*=i.sizeMultiplier);var R=D/2-O,k=[];if(d.length>0){var L=D-y-T,C=Math.round(D*1e3),I=q4e(d,Math.round(L*1e3)),M=new Ql(d,I),P=(p/1e3).toFixed(3)+"em",B=(C/1e3).toFixed(3)+"em",F=new dl([M],{width:P,height:B,viewBox:"0 0 "+p+" "+C}),G=Fe.makeSvgSpan([],[F],i);G.height=C/1e3,G.style.width=P,G.style.height=B,k.push({type:"elem",elem:G})}else{if(k.push(I7(f,m,a)),k.push(m3),u===null){var $=D-y-T+2*Q7;k.push(O7(h,$,i))}else{var U=(D-y-T-S)/2+2*Q7;k.push(O7(h,U,i)),k.push(m3),k.push(I7(u,m,a)),k.push(m3),k.push(O7(h,U,i))}k.push(m3),k.push(I7(l,m,a))}var K=i.havingBaseStyle(nr.TEXT),ne=Fe.makeVList({positionType:"bottom",positionData:R,children:k},K);return lA(Fe.makeSpan(["delimsizing","mult"],[ne],K),nr.TEXT,i,s)},"makeStackedDelim"),P7=80,B7=.08,F7=o(function(e,r,n,i,a){var s=H4e(e,i,n),l=new Ql(e,s),u=new dl([l],{width:"400em",height:Et(r),viewBox:"0 0 400000 "+n,preserveAspectRatio:"xMinYMin slice"});return Fe.makeSvgSpan(["hide-tail"],[u],a)},"sqrtSvg"),G3e=o(function(e,r){var n=r.havingBaseSizing(),i=tV("\\surd",e*n.sizeMultiplier,eV,n),a=n.sizeMultiplier,s=Math.max(0,r.minRuleThickness-r.fontMetrics().sqrtRuleThickness),l,u=0,h=0,f=0,d;return i.type==="small"?(f=1e3+1e3*s+P7,e<1?a=1:e<1.4&&(a=.7),u=(1+s+B7)/a,h=(1+s)/a,l=F7("sqrtMain",u,f,s,r),l.style.minWidth="0.853em",d=.833/a):i.type==="large"?(f=(1e3+P7)*Wy[i.size],h=(Wy[i.size]+s)/a,u=(Wy[i.size]+s+B7)/a,l=F7("sqrtSize"+i.size,u,f,s,r),l.style.minWidth="1.02em",d=1/a):(u=e+s+B7,h=e+s,f=Math.floor(1e3*e+s)+P7,l=F7("sqrtTall",u,f,s,r),l.style.minWidth="0.742em",d=1.056),l.height=h,l.style.height=Et(u),{span:l,advanceWidth:d,ruleWidth:(r.fontMetrics().sqrtRuleThickness+s)*a}},"makeSqrtImage"),Zz=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230A","\u230B","\\lceil","\\rceil","\u2308","\u2309","\\surd"],z3e=["\\uparrow","\\downarrow","\\updownarrow","\\Uparrow","\\Downarrow","\\Updownarrow","|","\\|","\\vert","\\Vert","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27EE","\u27EF","\\lmoustache","\\rmoustache","\u23B0","\u23B1"],Jz=["<",">","\\langle","\\rangle","/","\\backslash","\\lt","\\gt"],Wy=[0,1.2,1.8,2.4,3],V3e=o(function(e,r,n,i,a){if(e==="<"||e==="\\lt"||e==="\u27E8"?e="\\langle":(e===">"||e==="\\gt"||e==="\u27E9")&&(e="\\rangle"),er.contains(Zz,e)||er.contains(Jz,e))return Kz(e,r,!1,n,i,a);if(er.contains(z3e,e))return Qz(e,Wy[r],!1,n,i,a);throw new gt("Illegal delimiter: '"+e+"'")},"makeSizedDelim"),U3e=[{type:"small",style:nr.SCRIPTSCRIPT},{type:"small",style:nr.SCRIPT},{type:"small",style:nr.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4}],H3e=[{type:"small",style:nr.SCRIPTSCRIPT},{type:"small",style:nr.SCRIPT},{type:"small",style:nr.TEXT},{type:"stack"}],eV=[{type:"small",style:nr.SCRIPTSCRIPT},{type:"small",style:nr.SCRIPT},{type:"small",style:nr.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4},{type:"stack"}],W3e=o(function(e){if(e.type==="small")return"Main-Regular";if(e.type==="large")return"Size"+e.size+"-Regular";if(e.type==="stack")return"Size4-Regular";throw new Error("Add support for delim type '"+e.type+"' here.")},"delimTypeToFont"),tV=o(function(e,r,n,i){for(var a=Math.min(2,3-i.style.size),s=a;s<n.length&&n[s].type!=="stack";s++){var l=Uy(e,W3e(n[s]),"math"),u=l.height+l.depth;if(n[s].type==="small"){var h=i.havingBaseStyle(n[s].style);u*=h.sizeMultiplier}if(u>r)return n[s]}return n[n.length-1]},"traverseSequence"),rV=o(function(e,r,n,i,a,s){e==="<"||e==="\\lt"||e==="\u27E8"?e="\\langle":(e===">"||e==="\\gt"||e==="\u27E9")&&(e="\\rangle");var l;er.contains(Jz,e)?l=U3e:er.contains(Zz,e)?l=eV:l=H3e;var u=tV(e,r,l,i);return u.type==="small"?P3e(e,u.style,n,i,a,s):u.type==="large"?Kz(e,u.size,n,i,a,s):Qz(e,r,n,i,a,s)},"makeCustomSizedDelim"),q3e=o(function(e,r,n,i,a,s){var l=i.fontMetrics().axisHeight*i.sizeMultiplier,u=901,h=5/i.fontMetrics().ptPerEm,f=Math.max(r-l,n+l),d=Math.max(f/500*u,2*f-h);return rV(e,d,!0,i,a,s)},"makeLeftRightDelim"),cu={sqrtImage:G3e,sizedDelim:V3e,sizeToMaxHeight:Wy,customSizedDelim:rV,leftRightDelim:q3e},sz={"\\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}},Y3e=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230A","\u230B","\\lceil","\\rceil","\u2308","\u2309","<",">","\\langle","\u27E8","\\rangle","\u27E9","\\lt","\\gt","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27EE","\u27EF","\\lmoustache","\\rmoustache","\u23B0","\u23B1","/","\\backslash","|","\\vert","\\|","\\Vert","\\uparrow","\\Uparrow","\\downarrow","\\Downarrow","\\updownarrow","\\Updownarrow","."];o(L3,"checkDelimiter");Rt({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:o((t,e)=>{var r=L3(e[0],t);return{type:"delimsizing",mode:t.parser.mode,size:sz[t.funcName].size,mclass:sz[t.funcName].mclass,delim:r.text}},"handler"),htmlBuilder:o((t,e)=>t.delim==="."?Fe.makeSpan([t.mclass]):cu.sizedDelim(t.delim,t.size,e,t.mode,[t.mclass]),"htmlBuilder"),mathmlBuilder:o(t=>{var e=[];t.delim!=="."&&e.push(Do(t.delim,t.mode));var r=new mt.MathNode("mo",e);t.mclass==="mopen"||t.mclass==="mclose"?r.setAttribute("fence","true"):r.setAttribute("fence","false"),r.setAttribute("stretchy","true");var n=Et(cu.sizeToMaxHeight[t.size]);return r.setAttribute("minsize",n),r.setAttribute("maxsize",n),r},"mathmlBuilder")});o(oz,"assertParsed");Rt({type:"leftright-right",names:["\\right"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var r=t.parser.gullet.macros.get("\\current@color");if(r&&typeof r!="string")throw new gt("\\current@color set to non-string in \\right");return{type:"leftright-right",mode:t.parser.mode,delim:L3(e[0],t).text,color:r}},"handler")});Rt({type:"leftright",names:["\\left"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var r=L3(e[0],t),n=t.parser;++n.leftrightDepth;var i=n.parseExpression(!1);--n.leftrightDepth,n.expect("\\right",!1);var a=xr(n.parseFunction(),"leftright-right");return{type:"leftright",mode:n.mode,body:i,left:r.text,right:a.delim,rightColor:a.color}},"handler"),htmlBuilder:o((t,e)=>{oz(t);for(var r=Pi(t.body,e,!0,["mopen","mclose"]),n=0,i=0,a=!1,s=0;s<r.length;s++)r[s].isMiddle?a=!0:(n=Math.max(r[s].height,n),i=Math.max(r[s].depth,i));n*=e.sizeMultiplier,i*=e.sizeMultiplier;var l;if(t.left==="."?l=Ky(e,["mopen"]):l=cu.leftRightDelim(t.left,n,i,e,t.mode,["mopen"]),r.unshift(l),a)for(var u=1;u<r.length;u++){var h=r[u],f=h.isMiddle;f&&(r[u]=cu.leftRightDelim(f.delim,n,i,f.options,t.mode,[]))}var d;if(t.right===".")d=Ky(e,["mclose"]);else{var p=t.rightColor?e.withColor(t.rightColor):e;d=cu.leftRightDelim(t.right,n,i,p,t.mode,["mclose"])}return r.push(d),Fe.makeSpan(["minner"],r,e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{oz(t);var r=Cs(t.body,e);if(t.left!=="."){var n=new mt.MathNode("mo",[Do(t.left,t.mode)]);n.setAttribute("fence","true"),r.unshift(n)}if(t.right!=="."){var i=new mt.MathNode("mo",[Do(t.right,t.mode)]);i.setAttribute("fence","true"),t.rightColor&&i.setAttribute("mathcolor",t.rightColor),r.push(i)}return iA(r)},"mathmlBuilder")});Rt({type:"middle",names:["\\middle"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var r=L3(e[0],t);if(!t.parser.leftrightDepth)throw new gt("\\middle without preceding \\left",r);return{type:"middle",mode:t.parser.mode,delim:r.text}},"handler"),htmlBuilder:o((t,e)=>{var r;if(t.delim===".")r=Ky(e,[]);else{r=cu.sizedDelim(t.delim,1,e,t.mode,[]);var n={delim:t.delim,options:e};r.isMiddle=n}return r},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=t.delim==="\\vert"||t.delim==="|"?Do("|","text"):Do(t.delim,t.mode),n=new mt.MathNode("mo",[r]);return n.setAttribute("fence","true"),n.setAttribute("lspace","0.05em"),n.setAttribute("rspace","0.05em"),n},"mathmlBuilder")});cA=o((t,e)=>{var r=Fe.wrapFragment($r(t.body,e),e),n=t.label.slice(1),i=e.sizeMultiplier,a,s=0,l=er.isCharacterBox(t.body);if(n==="sout")a=Fe.makeSpan(["stretchy","sout"]),a.height=e.fontMetrics().defaultRuleThickness/i,s=-.5*e.fontMetrics().xHeight;else if(n==="phase"){var u=ii({number:.6,unit:"pt"},e),h=ii({number:.35,unit:"ex"},e),f=e.havingBaseSizing();i=i/f.sizeMultiplier;var d=r.height+r.depth+u+h;r.style.paddingLeft=Et(d/2+u);var p=Math.floor(1e3*d*i),m=V4e(p),g=new dl([new Ql("phase",m)],{width:"400em",height:Et(p/1e3),viewBox:"0 0 400000 "+p,preserveAspectRatio:"xMinYMin slice"});a=Fe.makeSvgSpan(["hide-tail"],[g],e),a.style.height=Et(d),s=r.depth+u+h}else{/cancel/.test(n)?l||r.classes.push("cancel-pad"):n==="angl"?r.classes.push("anglpad"):r.classes.push("boxpad");var y=0,x=0,v=0;/box/.test(n)?(v=Math.max(e.fontMetrics().fboxrule,e.minRuleThickness),y=e.fontMetrics().fboxsep+(n==="colorbox"?0:v),x=y):n==="angl"?(v=Math.max(e.fontMetrics().defaultRuleThickness,e.minRuleThickness),y=4*v,x=Math.max(0,.25-r.depth)):(y=l?.2:0,x=y),a=hu.encloseSpan(r,n,y,x,e),/fbox|boxed|fcolorbox/.test(n)?(a.style.borderStyle="solid",a.style.borderWidth=Et(v)):n==="angl"&&v!==.049&&(a.style.borderTopWidth=Et(v),a.style.borderRightWidth=Et(v)),s=r.depth+x,t.backgroundColor&&(a.style.backgroundColor=t.backgroundColor,t.borderColor&&(a.style.borderColor=t.borderColor))}var b;if(t.backgroundColor)b=Fe.makeVList({positionType:"individualShift",children:[{type:"elem",elem:a,shift:s},{type:"elem",elem:r,shift:0}]},e);else{var T=/cancel|phase/.test(n)?["svg-align"]:[];b=Fe.makeVList({positionType:"individualShift",children:[{type:"elem",elem:r,shift:0},{type:"elem",elem:a,shift:s,wrapperClasses:T}]},e)}return/cancel/.test(n)&&(b.height=r.height,b.depth=r.depth),/cancel/.test(n)&&!l?Fe.makeSpan(["mord","cancel-lap"],[b],e):Fe.makeSpan(["mord"],[b],e)},"htmlBuilder$7"),uA=o((t,e)=>{var r=0,n=new mt.MathNode(t.label.indexOf("colorbox")>-1?"mpadded":"menclose",[vn(t.body,e)]);switch(t.label){case"\\cancel":n.setAttribute("notation","updiagonalstrike");break;case"\\bcancel":n.setAttribute("notation","downdiagonalstrike");break;case"\\phase":n.setAttribute("notation","phasorangle");break;case"\\sout":n.setAttribute("notation","horizontalstrike");break;case"\\fbox":n.setAttribute("notation","box");break;case"\\angl":n.setAttribute("notation","actuarial");break;case"\\fcolorbox":case"\\colorbox":if(r=e.fontMetrics().fboxsep*e.fontMetrics().ptPerEm,n.setAttribute("width","+"+2*r+"pt"),n.setAttribute("height","+"+2*r+"pt"),n.setAttribute("lspace",r+"pt"),n.setAttribute("voffset",r+"pt"),t.label==="\\fcolorbox"){var i=Math.max(e.fontMetrics().fboxrule,e.minRuleThickness);n.setAttribute("style","border: "+i+"em solid "+String(t.borderColor))}break;case"\\xcancel":n.setAttribute("notation","updiagonalstrike downdiagonalstrike");break}return t.backgroundColor&&n.setAttribute("mathbackground",t.backgroundColor),n},"mathmlBuilder$6");Rt({type:"enclose",names:["\\colorbox"],props:{numArgs:2,allowedInText:!0,argTypes:["color","text"]},handler(t,e,r){var{parser:n,funcName:i}=t,a=xr(e[0],"color-token").color,s=e[1];return{type:"enclose",mode:n.mode,label:i,backgroundColor:a,body:s}},htmlBuilder:cA,mathmlBuilder:uA});Rt({type:"enclose",names:["\\fcolorbox"],props:{numArgs:3,allowedInText:!0,argTypes:["color","color","text"]},handler(t,e,r){var{parser:n,funcName:i}=t,a=xr(e[0],"color-token").color,s=xr(e[1],"color-token").color,l=e[2];return{type:"enclose",mode:n.mode,label:i,backgroundColor:s,borderColor:a,body:l}},htmlBuilder:cA,mathmlBuilder:uA});Rt({type:"enclose",names:["\\fbox"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!0},handler(t,e){var{parser:r}=t;return{type:"enclose",mode:r.mode,label:"\\fbox",body:e[0]}}});Rt({type:"enclose",names:["\\cancel","\\bcancel","\\xcancel","\\sout","\\phase"],props:{numArgs:1},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];return{type:"enclose",mode:r.mode,label:n,body:i}},htmlBuilder:cA,mathmlBuilder:uA});Rt({type:"enclose",names:["\\angl"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!1},handler(t,e){var{parser:r}=t;return{type:"enclose",mode:r.mode,label:"\\angl",body:e[0]}}});nV={};o(Zl,"defineEnvironment");iV={};o(ue,"defineMacro");o(lz,"getHLines");R3=o(t=>{var e=t.parser.settings;if(!e.displayMode)throw new gt("{"+t.envName+"} can be used only in display mode.")},"validateAmsEnvironmentContext");o(hA,"getAutoTag");o(xh,"parseArray");o(fA,"dCellStyle");Jl=o(function(e,r){var n,i,a=e.body.length,s=e.hLinesBeforeRow,l=0,u=new Array(a),h=[],f=Math.max(r.fontMetrics().arrayRuleWidth,r.minRuleThickness),d=1/r.fontMetrics().ptPerEm,p=5*d;if(e.colSeparationType&&e.colSeparationType==="small"){var m=r.havingStyle(nr.SCRIPT).sizeMultiplier;p=.2778*(m/r.sizeMultiplier)}var g=e.colSeparationType==="CD"?ii({number:3,unit:"ex"},r):12*d,y=3*d,x=e.arraystretch*g,v=.7*x,b=.3*x,T=0;function S(W){for(var Oe=0;Oe<W.length;++Oe)Oe>0&&(T+=.25),h.push({pos:T,isDashed:W[Oe]})}for(o(S,"setHLinePos"),S(s[0]),n=0;n<e.body.length;++n){var w=e.body[n],E=v,_=b;l<w.length&&(l=w.length);var A=new Array(w.length);for(i=0;i<w.length;++i){var D=$r(w[i],r);_<D.depth&&(_=D.depth),E<D.height&&(E=D.height),A[i]=D}var O=e.rowGaps[n],R=0;O&&(R=ii(O,r),R>0&&(R+=b,_<R&&(_=R),R=0)),e.addJot&&(_+=y),A.height=E,A.depth=_,T+=E,A.pos=T,T+=_+R,u[n]=A,S(s[n+1])}var k=T/2+r.fontMetrics().axisHeight,L=e.cols||[],C=[],I,M,P=[];if(e.tags&&e.tags.some(W=>W))for(n=0;n<a;++n){var B=u[n],F=B.pos-k,G=e.tags[n],$=void 0;G===!0?$=Fe.makeSpan(["eqn-num"],[],r):G===!1?$=Fe.makeSpan([],[],r):$=Fe.makeSpan([],Pi(G,r,!0),r),$.depth=B.depth,$.height=B.height,P.push({type:"elem",elem:$,shift:F})}for(i=0,M=0;i<l||M<L.length;++i,++M){for(var U=L[M]||{},K=!0;U.type==="separator";){if(K||(I=Fe.makeSpan(["arraycolsep"],[]),I.style.width=Et(r.fontMetrics().doubleRuleSep),C.push(I)),U.separator==="|"||U.separator===":"){var ne=U.separator==="|"?"solid":"dashed",j=Fe.makeSpan(["vertical-separator"],[],r);j.style.height=Et(T),j.style.borderRightWidth=Et(f),j.style.borderRightStyle=ne,j.style.margin="0 "+Et(-f/2);var le=T-k;le&&(j.style.verticalAlign=Et(-le)),C.push(j)}else throw new gt("Invalid separator type: "+U.separator);M++,U=L[M]||{},K=!1}if(!(i>=l)){var Z=void 0;(i>0||e.hskipBeforeAndAfter)&&(Z=er.deflt(U.pregap,p),Z!==0&&(I=Fe.makeSpan(["arraycolsep"],[]),I.style.width=Et(Z),C.push(I)));var ce=[];for(n=0;n<a;++n){var Q=u[n],ee=Q[i];if(ee){var te=Q.pos-k;ee.depth=Q.depth,ee.height=Q.height,ce.push({type:"elem",elem:ee,shift:te})}}ce=Fe.makeVList({positionType:"individualShift",children:ce},r),ce=Fe.makeSpan(["col-align-"+(U.align||"c")],[ce]),C.push(ce),(i<l-1||e.hskipBeforeAndAfter)&&(Z=er.deflt(U.postgap,p),Z!==0&&(I=Fe.makeSpan(["arraycolsep"],[]),I.style.width=Et(Z),C.push(I)))}}if(u=Fe.makeSpan(["mtable"],C),h.length>0){for(var re=Fe.makeLineSpan("hline",r,f),he=Fe.makeLineSpan("hdashline",r,f),J=[{type:"elem",elem:u,shift:0}];h.length>0;){var ye=h.pop(),se=ye.pos-k;ye.isDashed?J.push({type:"elem",elem:he,shift:se}):J.push({type:"elem",elem:re,shift:se})}u=Fe.makeVList({positionType:"individualShift",children:J},r)}if(P.length===0)return Fe.makeSpan(["mord"],[u],r);var Se=Fe.makeVList({positionType:"individualShift",children:P},r);return Se=Fe.makeSpan(["tag"],[Se],r),Fe.makeFragment([u,Se])},"htmlBuilder"),X3e={c:"center ",l:"left ",r:"right "},ec=o(function(e,r){for(var n=[],i=new mt.MathNode("mtd",[],["mtr-glue"]),a=new mt.MathNode("mtd",[],["mml-eqn-num"]),s=0;s<e.body.length;s++){for(var l=e.body[s],u=[],h=0;h<l.length;h++)u.push(new mt.MathNode("mtd",[vn(l[h],r)]));e.tags&&e.tags[s]&&(u.unshift(i),u.push(i),e.leqno?u.unshift(a):u.push(a)),n.push(new mt.MathNode("mtr",u))}var f=new mt.MathNode("mtable",n),d=e.arraystretch===.5?.1:.16+e.arraystretch-1+(e.addJot?.09:0);f.setAttribute("rowspacing",Et(d));var p="",m="";if(e.cols&&e.cols.length>0){var g=e.cols,y="",x=!1,v=0,b=g.length;g[0].type==="separator"&&(p+="top ",v=1),g[g.length-1].type==="separator"&&(p+="bottom ",b-=1);for(var T=v;T<b;T++)g[T].type==="align"?(m+=X3e[g[T].align],x&&(y+="none "),x=!0):g[T].type==="separator"&&x&&(y+=g[T].separator==="|"?"solid ":"dashed ",x=!1);f.setAttribute("columnalign",m.trim()),/[sd]/.test(y)&&f.setAttribute("columnlines",y.trim())}if(e.colSeparationType==="align"){for(var S=e.cols||[],w="",E=1;E<S.length;E++)w+=E%2?"0em ":"1em ";f.setAttribute("columnspacing",w.trim())}else e.colSeparationType==="alignat"||e.colSeparationType==="gather"?f.setAttribute("columnspacing","0em"):e.colSeparationType==="small"?f.setAttribute("columnspacing","0.2778em"):e.colSeparationType==="CD"?f.setAttribute("columnspacing","0.5em"):f.setAttribute("columnspacing","1em");var _="",A=e.hLinesBeforeRow;p+=A[0].length>0?"left ":"",p+=A[A.length-1].length>0?"right ":"";for(var D=1;D<A.length-1;D++)_+=A[D].length===0?"none ":A[D][0]?"dashed ":"solid ";return/[sd]/.test(_)&&f.setAttribute("rowlines",_.trim()),p!==""&&(f=new mt.MathNode("menclose",[f]),f.setAttribute("notation",p.trim())),e.arraystretch&&e.arraystretch<1&&(f=new mt.MathNode("mstyle",[f]),f.setAttribute("scriptlevel","1")),f},"mathmlBuilder"),aV=o(function(e,r){e.envName.indexOf("ed")===-1&&R3(e);var n=[],i=e.envName.indexOf("at")>-1?"alignat":"align",a=e.envName==="split",s=xh(e.parser,{cols:n,addJot:!0,autoTag:a?void 0:hA(e.envName),emptySingleRow:!0,colSeparationType:i,maxNumCols:a?2:void 0,leqno:e.parser.settings.leqno},"display"),l,u=0,h={type:"ordgroup",mode:e.mode,body:[]};if(r[0]&&r[0].type==="ordgroup"){for(var f="",d=0;d<r[0].body.length;d++){var p=xr(r[0].body[d],"textord");f+=p.text}l=Number(f),u=l*2}var m=!u;s.body.forEach(function(v){for(var b=1;b<v.length;b+=2){var T=xr(v[b],"styling"),S=xr(T.body[0],"ordgroup");S.body.unshift(h)}if(m)u<v.length&&(u=v.length);else{var w=v.length/2;if(l<w)throw new gt("Too many math in a row: "+("expected "+l+", but got "+w),v[0])}});for(var g=0;g<u;++g){var y="r",x=0;g%2===1?y="l":g>0&&m&&(x=1),n[g]={type:"align",align:y,pregap:x,postgap:0}}return s.colSeparationType=m?"align":"alignat",s},"alignedHandler");Zl({type:"array",names:["array","darray"],props:{numArgs:1},handler(t,e){var r=_3(e[0]),n=r?[e[0]]:xr(e[0],"ordgroup").body,i=n.map(function(s){var l=sA(s),u=l.text;if("lcr".indexOf(u)!==-1)return{type:"align",align:u};if(u==="|")return{type:"separator",separator:"|"};if(u===":")return{type:"separator",separator:":"};throw new gt("Unknown column alignment: "+u,s)}),a={cols:i,hskipBeforeAndAfter:!0,maxNumCols:i.length};return xh(t.parser,a,fA(t.envName))},htmlBuilder:Jl,mathmlBuilder:ec});Zl({type:"array",names:["matrix","pmatrix","bmatrix","Bmatrix","vmatrix","Vmatrix","matrix*","pmatrix*","bmatrix*","Bmatrix*","vmatrix*","Vmatrix*"],props:{numArgs:0},handler(t){var e={matrix:null,pmatrix:["(",")"],bmatrix:["[","]"],Bmatrix:["\\{","\\}"],vmatrix:["|","|"],Vmatrix:["\\Vert","\\Vert"]}[t.envName.replace("*","")],r="c",n={hskipBeforeAndAfter:!1,cols:[{type:"align",align:r}]};if(t.envName.charAt(t.envName.length-1)==="*"){var i=t.parser;if(i.consumeSpaces(),i.fetch().text==="["){if(i.consume(),i.consumeSpaces(),r=i.fetch().text,"lcr".indexOf(r)===-1)throw new gt("Expected l or c or r",i.nextToken);i.consume(),i.consumeSpaces(),i.expect("]"),i.consume(),n.cols=[{type:"align",align:r}]}}var a=xh(t.parser,n,fA(t.envName)),s=Math.max(0,...a.body.map(l=>l.length));return a.cols=new Array(s).fill({type:"align",align:r}),e?{type:"leftright",mode:t.mode,body:[a],left:e[0],right:e[1],rightColor:void 0}:a},htmlBuilder:Jl,mathmlBuilder:ec});Zl({type:"array",names:["smallmatrix"],props:{numArgs:0},handler(t){var e={arraystretch:.5},r=xh(t.parser,e,"script");return r.colSeparationType="small",r},htmlBuilder:Jl,mathmlBuilder:ec});Zl({type:"array",names:["subarray"],props:{numArgs:1},handler(t,e){var r=_3(e[0]),n=r?[e[0]]:xr(e[0],"ordgroup").body,i=n.map(function(s){var l=sA(s),u=l.text;if("lc".indexOf(u)!==-1)return{type:"align",align:u};throw new gt("Unknown column alignment: "+u,s)});if(i.length>1)throw new gt("{subarray} can contain only one column");var a={cols:i,hskipBeforeAndAfter:!1,arraystretch:.5};if(a=xh(t.parser,a,"script"),a.body.length>0&&a.body[0].length>1)throw new gt("{subarray} can contain only one column");return a},htmlBuilder:Jl,mathmlBuilder:ec});Zl({type:"array",names:["cases","dcases","rcases","drcases"],props:{numArgs:0},handler(t){var e={arraystretch:1.2,cols:[{type:"align",align:"l",pregap:0,postgap:1},{type:"align",align:"l",pregap:0,postgap:0}]},r=xh(t.parser,e,fA(t.envName));return{type:"leftright",mode:t.mode,body:[r],left:t.envName.indexOf("r")>-1?".":"\\{",right:t.envName.indexOf("r")>-1?"\\}":".",rightColor:void 0}},htmlBuilder:Jl,mathmlBuilder:ec});Zl({type:"array",names:["align","align*","aligned","split"],props:{numArgs:0},handler:aV,htmlBuilder:Jl,mathmlBuilder:ec});Zl({type:"array",names:["gathered","gather","gather*"],props:{numArgs:0},handler(t){er.contains(["gather","gather*"],t.envName)&&R3(t);var e={cols:[{type:"align",align:"c"}],addJot:!0,colSeparationType:"gather",autoTag:hA(t.envName),emptySingleRow:!0,leqno:t.parser.settings.leqno};return xh(t.parser,e,"display")},htmlBuilder:Jl,mathmlBuilder:ec});Zl({type:"array",names:["alignat","alignat*","alignedat"],props:{numArgs:1},handler:aV,htmlBuilder:Jl,mathmlBuilder:ec});Zl({type:"array",names:["equation","equation*"],props:{numArgs:0},handler(t){R3(t);var e={autoTag:hA(t.envName),emptySingleRow:!0,singleRow:!0,maxNumCols:1,leqno:t.parser.settings.leqno};return xh(t.parser,e,"display")},htmlBuilder:Jl,mathmlBuilder:ec});Zl({type:"array",names:["CD"],props:{numArgs:0},handler(t){return R3(t),I3e(t.parser)},htmlBuilder:Jl,mathmlBuilder:ec});ue("\\nonumber","\\gdef\\@eqnsw{0}");ue("\\notag","\\nonumber");Rt({type:"text",names:["\\hline","\\hdashline"],props:{numArgs:0,allowedInText:!0,allowedInMath:!0},handler(t,e){throw new gt(t.funcName+" valid only within array environment")}});cz=nV;Rt({type:"environment",names:["\\begin","\\end"],props:{numArgs:1,argTypes:["text"]},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];if(i.type!=="ordgroup")throw new gt("Invalid environment name",i);for(var a="",s=0;s<i.body.length;++s)a+=xr(i.body[s],"textord").text;if(n==="\\begin"){if(!cz.hasOwnProperty(a))throw new gt("No such environment: "+a,i);var l=cz[a],{args:u,optArgs:h}=r.parseArguments("\\begin{"+a+"}",l),f={mode:r.mode,envName:a,parser:r},d=l.handler(f,u,h);r.expect("\\end",!1);var p=r.nextToken,m=xr(r.parseFunction(),"environment");if(m.name!==a)throw new gt("Mismatch: \\begin{"+a+"} matched by \\end{"+m.name+"}",p);return d}return{type:"environment",mode:r.mode,name:a,nameGroup:i}}});sV=o((t,e)=>{var r=t.font,n=e.withFont(r);return $r(t.body,n)},"htmlBuilder$5"),oV=o((t,e)=>{var r=t.font,n=e.withFont(r);return vn(t.body,n)},"mathmlBuilder$4"),uz={"\\Bbb":"\\mathbb","\\bold":"\\mathbf","\\frak":"\\mathfrak","\\bm":"\\boldsymbol"};Rt({type:"font",names:["\\mathrm","\\mathit","\\mathbf","\\mathnormal","\\mathsfit","\\mathbb","\\mathcal","\\mathfrak","\\mathscr","\\mathsf","\\mathtt","\\Bbb","\\bold","\\frak"],props:{numArgs:1,allowedInArgument:!0},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=k3(e[0]),a=n;return a in uz&&(a=uz[a]),{type:"font",mode:r.mode,font:a.slice(1),body:i}},"handler"),htmlBuilder:sV,mathmlBuilder:oV});Rt({type:"mclass",names:["\\boldsymbol","\\bm"],props:{numArgs:1},handler:o((t,e)=>{var{parser:r}=t,n=e[0],i=er.isCharacterBox(n);return{type:"mclass",mode:r.mode,mclass:D3(n),body:[{type:"font",mode:r.mode,font:"boldsymbol",body:n}],isCharacterBox:i}},"handler")});Rt({type:"font",names:["\\rm","\\sf","\\tt","\\bf","\\it","\\cal"],props:{numArgs:0,allowedInText:!0},handler:o((t,e)=>{var{parser:r,funcName:n,breakOnTokenText:i}=t,{mode:a}=r,s=r.parseExpression(!0,i),l="math"+n.slice(1);return{type:"font",mode:a,font:l,body:{type:"ordgroup",mode:r.mode,body:s}}},"handler"),htmlBuilder:sV,mathmlBuilder:oV});lV=o((t,e)=>{var r=e;return t==="display"?r=r.id>=nr.SCRIPT.id?r.text():nr.DISPLAY:t==="text"&&r.size===nr.DISPLAY.size?r=nr.TEXT:t==="script"?r=nr.SCRIPT:t==="scriptscript"&&(r=nr.SCRIPTSCRIPT),r},"adjustStyle"),dA=o((t,e)=>{var r=lV(t.size,e.style),n=r.fracNum(),i=r.fracDen(),a;a=e.havingStyle(n);var s=$r(t.numer,a,e);if(t.continued){var l=8.5/e.fontMetrics().ptPerEm,u=3.5/e.fontMetrics().ptPerEm;s.height=s.height<l?l:s.height,s.depth=s.depth<u?u:s.depth}a=e.havingStyle(i);var h=$r(t.denom,a,e),f,d,p;t.hasBarLine?(t.barSize?(d=ii(t.barSize,e),f=Fe.makeLineSpan("frac-line",e,d)):f=Fe.makeLineSpan("frac-line",e),d=f.height,p=f.height):(f=null,d=0,p=e.fontMetrics().defaultRuleThickness);var m,g,y;r.size===nr.DISPLAY.size||t.size==="display"?(m=e.fontMetrics().num1,d>0?g=3*p:g=7*p,y=e.fontMetrics().denom1):(d>0?(m=e.fontMetrics().num2,g=p):(m=e.fontMetrics().num3,g=3*p),y=e.fontMetrics().denom2);var x;if(f){var b=e.fontMetrics().axisHeight;m-s.depth-(b+.5*d)<g&&(m+=g-(m-s.depth-(b+.5*d))),b-.5*d-(h.height-y)<g&&(y+=g-(b-.5*d-(h.height-y)));var T=-(b-.5*d);x=Fe.makeVList({positionType:"individualShift",children:[{type:"elem",elem:h,shift:y},{type:"elem",elem:f,shift:T},{type:"elem",elem:s,shift:-m}]},e)}else{var v=m-s.depth-(h.height-y);v<g&&(m+=.5*(g-v),y+=.5*(g-v)),x=Fe.makeVList({positionType:"individualShift",children:[{type:"elem",elem:h,shift:y},{type:"elem",elem:s,shift:-m}]},e)}a=e.havingStyle(r),x.height*=a.sizeMultiplier/e.sizeMultiplier,x.depth*=a.sizeMultiplier/e.sizeMultiplier;var S;r.size===nr.DISPLAY.size?S=e.fontMetrics().delim1:r.size===nr.SCRIPTSCRIPT.size?S=e.havingStyle(nr.SCRIPT).fontMetrics().delim2:S=e.fontMetrics().delim2;var w,E;return t.leftDelim==null?w=Ky(e,["mopen"]):w=cu.customSizedDelim(t.leftDelim,S,!0,e.havingStyle(r),t.mode,["mopen"]),t.continued?E=Fe.makeSpan([]):t.rightDelim==null?E=Ky(e,["mclose"]):E=cu.customSizedDelim(t.rightDelim,S,!0,e.havingStyle(r),t.mode,["mclose"]),Fe.makeSpan(["mord"].concat(a.sizingClasses(e)),[w,Fe.makeSpan(["mfrac"],[x]),E],e)},"htmlBuilder$4"),pA=o((t,e)=>{var r=new mt.MathNode("mfrac",[vn(t.numer,e),vn(t.denom,e)]);if(!t.hasBarLine)r.setAttribute("linethickness","0px");else if(t.barSize){var n=ii(t.barSize,e);r.setAttribute("linethickness",Et(n))}var i=lV(t.size,e.style);if(i.size!==e.style.size){r=new mt.MathNode("mstyle",[r]);var a=i.size===nr.DISPLAY.size?"true":"false";r.setAttribute("displaystyle",a),r.setAttribute("scriptlevel","0")}if(t.leftDelim!=null||t.rightDelim!=null){var s=[];if(t.leftDelim!=null){var l=new mt.MathNode("mo",[new mt.TextNode(t.leftDelim.replace("\\",""))]);l.setAttribute("fence","true"),s.push(l)}if(s.push(r),t.rightDelim!=null){var u=new mt.MathNode("mo",[new mt.TextNode(t.rightDelim.replace("\\",""))]);u.setAttribute("fence","true"),s.push(u)}return iA(s)}return r},"mathmlBuilder$3");Rt({type:"genfrac",names:["\\dfrac","\\frac","\\tfrac","\\dbinom","\\binom","\\tbinom","\\\\atopfrac","\\\\bracefrac","\\\\brackfrac"],props:{numArgs:2,allowedInArgument:!0},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0],a=e[1],s,l=null,u=null,h="auto";switch(n){case"\\dfrac":case"\\frac":case"\\tfrac":s=!0;break;case"\\\\atopfrac":s=!1;break;case"\\dbinom":case"\\binom":case"\\tbinom":s=!1,l="(",u=")";break;case"\\\\bracefrac":s=!1,l="\\{",u="\\}";break;case"\\\\brackfrac":s=!1,l="[",u="]";break;default:throw new Error("Unrecognized genfrac command")}switch(n){case"\\dfrac":case"\\dbinom":h="display";break;case"\\tfrac":case"\\tbinom":h="text";break}return{type:"genfrac",mode:r.mode,continued:!1,numer:i,denom:a,hasBarLine:s,leftDelim:l,rightDelim:u,size:h,barSize:null}},"handler"),htmlBuilder:dA,mathmlBuilder:pA});Rt({type:"genfrac",names:["\\cfrac"],props:{numArgs:2},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0],a=e[1];return{type:"genfrac",mode:r.mode,continued:!0,numer:i,denom:a,hasBarLine:!0,leftDelim:null,rightDelim:null,size:"display",barSize:null}},"handler")});Rt({type:"infix",names:["\\over","\\choose","\\atop","\\brace","\\brack"],props:{numArgs:0,infix:!0},handler(t){var{parser:e,funcName:r,token:n}=t,i;switch(r){case"\\over":i="\\frac";break;case"\\choose":i="\\binom";break;case"\\atop":i="\\\\atopfrac";break;case"\\brace":i="\\\\bracefrac";break;case"\\brack":i="\\\\brackfrac";break;default:throw new Error("Unrecognized infix genfrac command")}return{type:"infix",mode:e.mode,replaceWith:i,token:n}}});hz=["display","text","script","scriptscript"],fz=o(function(e){var r=null;return e.length>0&&(r=e,r=r==="."?null:r),r},"delimFromValue");Rt({type:"genfrac",names:["\\genfrac"],props:{numArgs:6,allowedInArgument:!0,argTypes:["math","math","size","text","math","math"]},handler(t,e){var{parser:r}=t,n=e[4],i=e[5],a=k3(e[0]),s=a.type==="atom"&&a.family==="open"?fz(a.text):null,l=k3(e[1]),u=l.type==="atom"&&l.family==="close"?fz(l.text):null,h=xr(e[2],"size"),f,d=null;h.isBlank?f=!0:(d=h.value,f=d.number>0);var p="auto",m=e[3];if(m.type==="ordgroup"){if(m.body.length>0){var g=xr(m.body[0],"textord");p=hz[Number(g.text)]}}else m=xr(m,"textord"),p=hz[Number(m.text)];return{type:"genfrac",mode:r.mode,numer:n,denom:i,continued:!1,hasBarLine:f,barSize:d,leftDelim:s,rightDelim:u,size:p}},htmlBuilder:dA,mathmlBuilder:pA});Rt({type:"infix",names:["\\above"],props:{numArgs:1,argTypes:["size"],infix:!0},handler(t,e){var{parser:r,funcName:n,token:i}=t;return{type:"infix",mode:r.mode,replaceWith:"\\\\abovefrac",size:xr(e[0],"size").value,token:i}}});Rt({type:"genfrac",names:["\\\\abovefrac"],props:{numArgs:3,argTypes:["math","size","math"]},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0],a=A4e(xr(e[1],"infix").size),s=e[2],l=a.number>0;return{type:"genfrac",mode:r.mode,numer:i,denom:s,continued:!1,hasBarLine:l,barSize:a,leftDelim:null,rightDelim:null,size:"auto"}},"handler"),htmlBuilder:dA,mathmlBuilder:pA});cV=o((t,e)=>{var r=e.style,n,i;t.type==="supsub"?(n=t.sup?$r(t.sup,e.havingStyle(r.sup()),e):$r(t.sub,e.havingStyle(r.sub()),e),i=xr(t.base,"horizBrace")):i=xr(t,"horizBrace");var a=$r(i.base,e.havingBaseStyle(nr.DISPLAY)),s=hu.svgSpan(i,e),l;if(i.isOver?(l=Fe.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:a},{type:"kern",size:.1},{type:"elem",elem:s}]},e),l.children[0].children[0].children[1].classes.push("svg-align")):(l=Fe.makeVList({positionType:"bottom",positionData:a.depth+.1+s.height,children:[{type:"elem",elem:s},{type:"kern",size:.1},{type:"elem",elem:a}]},e),l.children[0].children[0].children[0].classes.push("svg-align")),n){var u=Fe.makeSpan(["mord",i.isOver?"mover":"munder"],[l],e);i.isOver?l=Fe.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:u},{type:"kern",size:.2},{type:"elem",elem:n}]},e):l=Fe.makeVList({positionType:"bottom",positionData:u.depth+.2+n.height+n.depth,children:[{type:"elem",elem:n},{type:"kern",size:.2},{type:"elem",elem:u}]},e)}return Fe.makeSpan(["mord",i.isOver?"mover":"munder"],[l],e)},"htmlBuilder$3"),j3e=o((t,e)=>{var r=hu.mathMLnode(t.label);return new mt.MathNode(t.isOver?"mover":"munder",[vn(t.base,e),r])},"mathmlBuilder$2");Rt({type:"horizBrace",names:["\\overbrace","\\underbrace"],props:{numArgs:1},handler(t,e){var{parser:r,funcName:n}=t;return{type:"horizBrace",mode:r.mode,label:n,isOver:/^\\over/.test(n),base:e[0]}},htmlBuilder:cV,mathmlBuilder:j3e});Rt({type:"href",names:["\\href"],props:{numArgs:2,argTypes:["url","original"],allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[1],i=xr(e[0],"url").url;return r.settings.isTrusted({command:"\\href",url:i})?{type:"href",mode:r.mode,href:i,body:yi(n)}:r.formatUnsupportedCmd("\\href")},"handler"),htmlBuilder:o((t,e)=>{var r=Pi(t.body,e,!1);return Fe.makeAnchor(t.href,[],r,e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=vh(t.body,e);return r instanceof es||(r=new es("mrow",[r])),r.setAttribute("href",t.href),r},"mathmlBuilder")});Rt({type:"href",names:["\\url"],props:{numArgs:1,argTypes:["url"],allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=xr(e[0],"url").url;if(!r.settings.isTrusted({command:"\\url",url:n}))return r.formatUnsupportedCmd("\\url");for(var i=[],a=0;a<n.length;a++){var s=n[a];s==="~"&&(s="\\textasciitilde"),i.push({type:"textord",mode:"text",text:s})}var l={type:"text",mode:r.mode,font:"\\texttt",body:i};return{type:"href",mode:r.mode,href:n,body:yi(l)}},"handler")});Rt({type:"hbox",names:["\\hbox"],props:{numArgs:1,argTypes:["text"],allowedInText:!0,primitive:!0},handler(t,e){var{parser:r}=t;return{type:"hbox",mode:r.mode,body:yi(e[0])}},htmlBuilder(t,e){var r=Pi(t.body,e,!1);return Fe.makeFragment(r)},mathmlBuilder(t,e){return new mt.MathNode("mrow",Cs(t.body,e))}});Rt({type:"html",names:["\\htmlClass","\\htmlId","\\htmlStyle","\\htmlData"],props:{numArgs:2,argTypes:["raw","original"],allowedInText:!0},handler:o((t,e)=>{var{parser:r,funcName:n,token:i}=t,a=xr(e[0],"raw").string,s=e[1];r.settings.strict&&r.settings.reportNonstrict("htmlExtension","HTML extension is disabled on strict mode");var l,u={};switch(n){case"\\htmlClass":u.class=a,l={command:"\\htmlClass",class:a};break;case"\\htmlId":u.id=a,l={command:"\\htmlId",id:a};break;case"\\htmlStyle":u.style=a,l={command:"\\htmlStyle",style:a};break;case"\\htmlData":{for(var h=a.split(","),f=0;f<h.length;f++){var d=h[f].split("=");if(d.length!==2)throw new gt("Error parsing key-value for \\htmlData");u["data-"+d[0].trim()]=d[1].trim()}l={command:"\\htmlData",attributes:u};break}default:throw new Error("Unrecognized html command")}return r.settings.isTrusted(l)?{type:"html",mode:r.mode,attributes:u,body:yi(s)}:r.formatUnsupportedCmd(n)},"handler"),htmlBuilder:o((t,e)=>{var r=Pi(t.body,e,!1),n=["enclosing"];t.attributes.class&&n.push(...t.attributes.class.trim().split(/\s+/));var i=Fe.makeSpan(n,r,e);for(var a in t.attributes)a!=="class"&&t.attributes.hasOwnProperty(a)&&i.setAttribute(a,t.attributes[a]);return i},"htmlBuilder"),mathmlBuilder:o((t,e)=>vh(t.body,e),"mathmlBuilder")});Rt({type:"htmlmathml",names:["\\html@mathml"],props:{numArgs:2,allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t;return{type:"htmlmathml",mode:r.mode,html:yi(e[0]),mathml:yi(e[1])}},"handler"),htmlBuilder:o((t,e)=>{var r=Pi(t.html,e,!1);return Fe.makeFragment(r)},"htmlBuilder"),mathmlBuilder:o((t,e)=>vh(t.mathml,e),"mathmlBuilder")});$7=o(function(e){if(/^[-+]? *(\d+(\.\d*)?|\.\d+)$/.test(e))return{number:+e,unit:"bp"};var r=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(e);if(!r)throw new gt("Invalid size: '"+e+"' in \\includegraphics");var n={number:+(r[1]+r[2]),unit:r[3]};if(!_z(n))throw new gt("Invalid unit: '"+n.unit+"' in \\includegraphics.");return n},"sizeData");Rt({type:"includegraphics",names:["\\includegraphics"],props:{numArgs:1,numOptionalArgs:1,argTypes:["raw","url"],allowedInText:!1},handler:o((t,e,r)=>{var{parser:n}=t,i={number:0,unit:"em"},a={number:.9,unit:"em"},s={number:0,unit:"em"},l="";if(r[0])for(var u=xr(r[0],"raw").string,h=u.split(","),f=0;f<h.length;f++){var d=h[f].split("=");if(d.length===2){var p=d[1].trim();switch(d[0].trim()){case"alt":l=p;break;case"width":i=$7(p);break;case"height":a=$7(p);break;case"totalheight":s=$7(p);break;default:throw new gt("Invalid key: '"+d[0]+"' in \\includegraphics.")}}}var m=xr(e[0],"url").url;return l===""&&(l=m,l=l.replace(/^.*[\\/]/,""),l=l.substring(0,l.lastIndexOf("."))),n.settings.isTrusted({command:"\\includegraphics",url:m})?{type:"includegraphics",mode:n.mode,alt:l,width:i,height:a,totalheight:s,src:m}:n.formatUnsupportedCmd("\\includegraphics")},"handler"),htmlBuilder:o((t,e)=>{var r=ii(t.height,e),n=0;t.totalheight.number>0&&(n=ii(t.totalheight,e)-r);var i=0;t.width.number>0&&(i=ii(t.width,e));var a={height:Et(r+n)};i>0&&(a.width=Et(i)),n>0&&(a.verticalAlign=Et(-n));var s=new W7(t.src,t.alt,a);return s.height=r,s.depth=n,s},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=new mt.MathNode("mglyph",[]);r.setAttribute("alt",t.alt);var n=ii(t.height,e),i=0;if(t.totalheight.number>0&&(i=ii(t.totalheight,e)-n,r.setAttribute("valign",Et(-i))),r.setAttribute("height",Et(n+i)),t.width.number>0){var a=ii(t.width,e);r.setAttribute("width",Et(a))}return r.setAttribute("src",t.src),r},"mathmlBuilder")});Rt({type:"kern",names:["\\kern","\\mkern","\\hskip","\\mskip"],props:{numArgs:1,argTypes:["size"],primitive:!0,allowedInText:!0},handler(t,e){var{parser:r,funcName:n}=t,i=xr(e[0],"size");if(r.settings.strict){var a=n[1]==="m",s=i.value.unit==="mu";a?(s||r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" supports only mu units, "+("not "+i.value.unit+" units")),r.mode!=="math"&&r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" works only in math mode")):s&&r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+n+" doesn't support mu units")}return{type:"kern",mode:r.mode,dimension:i.value}},htmlBuilder(t,e){return Fe.makeGlue(t.dimension,e)},mathmlBuilder(t,e){var r=ii(t.dimension,e);return new mt.SpaceNode(r)}});Rt({type:"lap",names:["\\mathllap","\\mathrlap","\\mathclap"],props:{numArgs:1,allowedInText:!0},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0];return{type:"lap",mode:r.mode,alignment:n.slice(5),body:i}},"handler"),htmlBuilder:o((t,e)=>{var r;t.alignment==="clap"?(r=Fe.makeSpan([],[$r(t.body,e)]),r=Fe.makeSpan(["inner"],[r],e)):r=Fe.makeSpan(["inner"],[$r(t.body,e)]);var n=Fe.makeSpan(["fix"],[]),i=Fe.makeSpan([t.alignment],[r,n],e),a=Fe.makeSpan(["strut"]);return a.style.height=Et(i.height+i.depth),i.depth&&(a.style.verticalAlign=Et(-i.depth)),i.children.unshift(a),i=Fe.makeSpan(["thinbox"],[i],e),Fe.makeSpan(["mord","vbox"],[i],e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=new mt.MathNode("mpadded",[vn(t.body,e)]);if(t.alignment!=="rlap"){var n=t.alignment==="llap"?"-1":"-0.5";r.setAttribute("lspace",n+"width")}return r.setAttribute("width","0px"),r},"mathmlBuilder")});Rt({type:"styling",names:["\\(","$"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(t,e){var{funcName:r,parser:n}=t,i=n.mode;n.switchMode("math");var a=r==="\\("?"\\)":"$",s=n.parseExpression(!1,a);return n.expect(a),n.switchMode(i),{type:"styling",mode:n.mode,style:"text",body:s}}});Rt({type:"text",names:["\\)","\\]"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(t,e){throw new gt("Mismatched "+t.funcName)}});dz=o((t,e)=>{switch(e.style.size){case nr.DISPLAY.size:return t.display;case nr.TEXT.size:return t.text;case nr.SCRIPT.size:return t.script;case nr.SCRIPTSCRIPT.size:return t.scriptscript;default:return t.text}},"chooseMathStyle");Rt({type:"mathchoice",names:["\\mathchoice"],props:{numArgs:4,primitive:!0},handler:o((t,e)=>{var{parser:r}=t;return{type:"mathchoice",mode:r.mode,display:yi(e[0]),text:yi(e[1]),script:yi(e[2]),scriptscript:yi(e[3])}},"handler"),htmlBuilder:o((t,e)=>{var r=dz(t,e),n=Pi(r,e,!1);return Fe.makeFragment(n)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=dz(t,e);return vh(r,e)},"mathmlBuilder")});uV=o((t,e,r,n,i,a,s)=>{t=Fe.makeSpan([],[t]);var l=r&&er.isCharacterBox(r),u,h;if(e){var f=$r(e,n.havingStyle(i.sup()),n);h={elem:f,kern:Math.max(n.fontMetrics().bigOpSpacing1,n.fontMetrics().bigOpSpacing3-f.depth)}}if(r){var d=$r(r,n.havingStyle(i.sub()),n);u={elem:d,kern:Math.max(n.fontMetrics().bigOpSpacing2,n.fontMetrics().bigOpSpacing4-d.height)}}var p;if(h&&u){var m=n.fontMetrics().bigOpSpacing5+u.elem.height+u.elem.depth+u.kern+t.depth+s;p=Fe.makeVList({positionType:"bottom",positionData:m,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:u.elem,marginLeft:Et(-a)},{type:"kern",size:u.kern},{type:"elem",elem:t},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:Et(a)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}else if(u){var g=t.height-s;p=Fe.makeVList({positionType:"top",positionData:g,children:[{type:"kern",size:n.fontMetrics().bigOpSpacing5},{type:"elem",elem:u.elem,marginLeft:Et(-a)},{type:"kern",size:u.kern},{type:"elem",elem:t}]},n)}else if(h){var y=t.depth+s;p=Fe.makeVList({positionType:"bottom",positionData:y,children:[{type:"elem",elem:t},{type:"kern",size:h.kern},{type:"elem",elem:h.elem,marginLeft:Et(a)},{type:"kern",size:n.fontMetrics().bigOpSpacing5}]},n)}else return t;var x=[p];if(u&&a!==0&&!l){var v=Fe.makeSpan(["mspace"],[],n);v.style.marginRight=Et(a),x.unshift(v)}return Fe.makeSpan(["mop","op-limits"],x,n)},"assembleSupSub"),hV=["\\smallint"],w0=o((t,e)=>{var r,n,i=!1,a;t.type==="supsub"?(r=t.sup,n=t.sub,a=xr(t.base,"op"),i=!0):a=xr(t,"op");var s=e.style,l=!1;s.size===nr.DISPLAY.size&&a.symbol&&!er.contains(hV,a.name)&&(l=!0);var u;if(a.symbol){var h=l?"Size2-Regular":"Size1-Regular",f="";if((a.name==="\\oiint"||a.name==="\\oiiint")&&(f=a.name.slice(1),a.name=f==="oiint"?"\\iint":"\\iiint"),u=Fe.makeSymbol(a.name,h,"math",e,["mop","op-symbol",l?"large-op":"small-op"]),f.length>0){var d=u.italic,p=Fe.staticSvg(f+"Size"+(l?"2":"1"),e);u=Fe.makeVList({positionType:"individualShift",children:[{type:"elem",elem:u,shift:0},{type:"elem",elem:p,shift:l?.08:0}]},e),a.name="\\"+f,u.classes.unshift("mop"),u.italic=d}}else if(a.body){var m=Pi(a.body,e,!0);m.length===1&&m[0]instanceof Ss?(u=m[0],u.classes[0]="mop"):u=Fe.makeSpan(["mop"],m,e)}else{for(var g=[],y=1;y<a.name.length;y++)g.push(Fe.mathsym(a.name[y],a.mode,e));u=Fe.makeSpan(["mop"],g,e)}var x=0,v=0;return(u instanceof Ss||a.name==="\\oiint"||a.name==="\\oiiint")&&!a.suppressBaseShift&&(x=(u.height-u.depth)/2-e.fontMetrics().axisHeight,v=u.italic),i?uV(u,r,n,e,s,v,x):(x&&(u.style.position="relative",u.style.top=Et(x)),u)},"htmlBuilder$2"),Qy=o((t,e)=>{var r;if(t.symbol)r=new es("mo",[Do(t.name,t.mode)]),er.contains(hV,t.name)&&r.setAttribute("largeop","false");else if(t.body)r=new es("mo",Cs(t.body,e));else{r=new es("mi",[new Ao(t.name.slice(1))]);var n=new es("mo",[Do("\u2061","text")]);t.parentIsSupSub?r=new es("mrow",[r,n]):r=$z([r,n])}return r},"mathmlBuilder$1"),K3e={"\u220F":"\\prod","\u2210":"\\coprod","\u2211":"\\sum","\u22C0":"\\bigwedge","\u22C1":"\\bigvee","\u22C2":"\\bigcap","\u22C3":"\\bigcup","\u2A00":"\\bigodot","\u2A01":"\\bigoplus","\u2A02":"\\bigotimes","\u2A04":"\\biguplus","\u2A06":"\\bigsqcup"};Rt({type:"op",names:["\\coprod","\\bigvee","\\bigwedge","\\biguplus","\\bigcap","\\bigcup","\\intop","\\prod","\\sum","\\bigotimes","\\bigoplus","\\bigodot","\\bigsqcup","\\smallint","\u220F","\u2210","\u2211","\u22C0","\u22C1","\u22C2","\u22C3","\u2A00","\u2A01","\u2A02","\u2A04","\u2A06"],props:{numArgs:0},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=n;return i.length===1&&(i=K3e[i]),{type:"op",mode:r.mode,limits:!0,parentIsSupSub:!1,symbol:!0,name:i}},"handler"),htmlBuilder:w0,mathmlBuilder:Qy});Rt({type:"op",names:["\\mathop"],props:{numArgs:1,primitive:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[0];return{type:"op",mode:r.mode,limits:!1,parentIsSupSub:!1,symbol:!1,body:yi(n)}},"handler"),htmlBuilder:w0,mathmlBuilder:Qy});Q3e={"\u222B":"\\int","\u222C":"\\iint","\u222D":"\\iiint","\u222E":"\\oint","\u222F":"\\oiint","\u2230":"\\oiiint"};Rt({type:"op",names:["\\arcsin","\\arccos","\\arctan","\\arctg","\\arcctg","\\arg","\\ch","\\cos","\\cosec","\\cosh","\\cot","\\cotg","\\coth","\\csc","\\ctg","\\cth","\\deg","\\dim","\\exp","\\hom","\\ker","\\lg","\\ln","\\log","\\sec","\\sin","\\sinh","\\sh","\\tan","\\tanh","\\tg","\\th"],props:{numArgs:0},handler(t){var{parser:e,funcName:r}=t;return{type:"op",mode:e.mode,limits:!1,parentIsSupSub:!1,symbol:!1,name:r}},htmlBuilder:w0,mathmlBuilder:Qy});Rt({type:"op",names:["\\det","\\gcd","\\inf","\\lim","\\max","\\min","\\Pr","\\sup"],props:{numArgs:0},handler(t){var{parser:e,funcName:r}=t;return{type:"op",mode:e.mode,limits:!0,parentIsSupSub:!1,symbol:!1,name:r}},htmlBuilder:w0,mathmlBuilder:Qy});Rt({type:"op",names:["\\int","\\iint","\\iiint","\\oint","\\oiint","\\oiiint","\u222B","\u222C","\u222D","\u222E","\u222F","\u2230"],props:{numArgs:0},handler(t){var{parser:e,funcName:r}=t,n=r;return n.length===1&&(n=Q3e[n]),{type:"op",mode:e.mode,limits:!1,parentIsSupSub:!1,symbol:!0,name:n}},htmlBuilder:w0,mathmlBuilder:Qy});fV=o((t,e)=>{var r,n,i=!1,a;t.type==="supsub"?(r=t.sup,n=t.sub,a=xr(t.base,"operatorname"),i=!0):a=xr(t,"operatorname");var s;if(a.body.length>0){for(var l=a.body.map(d=>{var p=d.text;return typeof p=="string"?{type:"textord",mode:d.mode,text:p}:d}),u=Pi(l,e.withFont("mathrm"),!0),h=0;h<u.length;h++){var f=u[h];f instanceof Ss&&(f.text=f.text.replace(/\u2212/,"-").replace(/\u2217/,"*"))}s=Fe.makeSpan(["mop"],u,e)}else s=Fe.makeSpan(["mop"],[],e);return i?uV(s,r,n,e,e.style,0,0):s},"htmlBuilder$1"),Z3e=o((t,e)=>{for(var r=Cs(t.body,e.withFont("mathrm")),n=!0,i=0;i<r.length;i++){var a=r[i];if(!(a instanceof mt.SpaceNode))if(a instanceof mt.MathNode)switch(a.type){case"mi":case"mn":case"ms":case"mspace":case"mtext":break;case"mo":{var s=a.children[0];a.children.length===1&&s instanceof mt.TextNode?s.text=s.text.replace(/\u2212/,"-").replace(/\u2217/,"*"):n=!1;break}default:n=!1}else n=!1}if(n){var l=r.map(f=>f.toText()).join("");r=[new mt.TextNode(l)]}var u=new mt.MathNode("mi",r);u.setAttribute("mathvariant","normal");var h=new mt.MathNode("mo",[Do("\u2061","text")]);return t.parentIsSupSub?new mt.MathNode("mrow",[u,h]):mt.newDocumentFragment([u,h])},"mathmlBuilder");Rt({type:"operatorname",names:["\\operatorname@","\\operatornamewithlimits"],props:{numArgs:1},handler:o((t,e)=>{var{parser:r,funcName:n}=t,i=e[0];return{type:"operatorname",mode:r.mode,body:yi(i),alwaysHandleSupSub:n==="\\operatornamewithlimits",limits:!1,parentIsSupSub:!1}},"handler"),htmlBuilder:fV,mathmlBuilder:Z3e});ue("\\operatorname","\\@ifstar\\operatornamewithlimits\\operatorname@");ud({type:"ordgroup",htmlBuilder(t,e){return t.semisimple?Fe.makeFragment(Pi(t.body,e,!1)):Fe.makeSpan(["mord"],Pi(t.body,e,!0),e)},mathmlBuilder(t,e){return vh(t.body,e,!0)}});Rt({type:"overline",names:["\\overline"],props:{numArgs:1},handler(t,e){var{parser:r}=t,n=e[0];return{type:"overline",mode:r.mode,body:n}},htmlBuilder(t,e){var r=$r(t.body,e.havingCrampedStyle()),n=Fe.makeLineSpan("overline-line",e),i=e.fontMetrics().defaultRuleThickness,a=Fe.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r},{type:"kern",size:3*i},{type:"elem",elem:n},{type:"kern",size:i}]},e);return Fe.makeSpan(["mord","overline"],[a],e)},mathmlBuilder(t,e){var r=new mt.MathNode("mo",[new mt.TextNode("\u203E")]);r.setAttribute("stretchy","true");var n=new mt.MathNode("mover",[vn(t.body,e),r]);return n.setAttribute("accent","true"),n}});Rt({type:"phantom",names:["\\phantom"],props:{numArgs:1,allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[0];return{type:"phantom",mode:r.mode,body:yi(n)}},"handler"),htmlBuilder:o((t,e)=>{var r=Pi(t.body,e.withPhantom(),!1);return Fe.makeFragment(r)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=Cs(t.body,e);return new mt.MathNode("mphantom",r)},"mathmlBuilder")});Rt({type:"hphantom",names:["\\hphantom"],props:{numArgs:1,allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[0];return{type:"hphantom",mode:r.mode,body:n}},"handler"),htmlBuilder:o((t,e)=>{var r=Fe.makeSpan([],[$r(t.body,e.withPhantom())]);if(r.height=0,r.depth=0,r.children)for(var n=0;n<r.children.length;n++)r.children[n].height=0,r.children[n].depth=0;return r=Fe.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r}]},e),Fe.makeSpan(["mord"],[r],e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=Cs(yi(t.body),e),n=new mt.MathNode("mphantom",r),i=new mt.MathNode("mpadded",[n]);return i.setAttribute("height","0px"),i.setAttribute("depth","0px"),i},"mathmlBuilder")});Rt({type:"vphantom",names:["\\vphantom"],props:{numArgs:1,allowedInText:!0},handler:o((t,e)=>{var{parser:r}=t,n=e[0];return{type:"vphantom",mode:r.mode,body:n}},"handler"),htmlBuilder:o((t,e)=>{var r=Fe.makeSpan(["inner"],[$r(t.body,e.withPhantom())]),n=Fe.makeSpan(["fix"],[]);return Fe.makeSpan(["mord","rlap"],[r,n],e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=Cs(yi(t.body),e),n=new mt.MathNode("mphantom",r),i=new mt.MathNode("mpadded",[n]);return i.setAttribute("width","0px"),i},"mathmlBuilder")});Rt({type:"raisebox",names:["\\raisebox"],props:{numArgs:2,argTypes:["size","hbox"],allowedInText:!0},handler(t,e){var{parser:r}=t,n=xr(e[0],"size").value,i=e[1];return{type:"raisebox",mode:r.mode,dy:n,body:i}},htmlBuilder(t,e){var r=$r(t.body,e),n=ii(t.dy,e);return Fe.makeVList({positionType:"shift",positionData:-n,children:[{type:"elem",elem:r}]},e)},mathmlBuilder(t,e){var r=new mt.MathNode("mpadded",[vn(t.body,e)]),n=t.dy.number+t.dy.unit;return r.setAttribute("voffset",n),r}});Rt({type:"internal",names:["\\relax"],props:{numArgs:0,allowedInText:!0,allowedInArgument:!0},handler(t){var{parser:e}=t;return{type:"internal",mode:e.mode}}});Rt({type:"rule",names:["\\rule"],props:{numArgs:2,numOptionalArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["size","size","size"]},handler(t,e,r){var{parser:n}=t,i=r[0],a=xr(e[0],"size"),s=xr(e[1],"size");return{type:"rule",mode:n.mode,shift:i&&xr(i,"size").value,width:a.value,height:s.value}},htmlBuilder(t,e){var r=Fe.makeSpan(["mord","rule"],[],e),n=ii(t.width,e),i=ii(t.height,e),a=t.shift?ii(t.shift,e):0;return r.style.borderRightWidth=Et(n),r.style.borderTopWidth=Et(i),r.style.bottom=Et(a),r.width=n,r.height=i+a,r.depth=-a,r.maxFontSize=i*1.125*e.sizeMultiplier,r},mathmlBuilder(t,e){var r=ii(t.width,e),n=ii(t.height,e),i=t.shift?ii(t.shift,e):0,a=e.color&&e.getColor()||"black",s=new mt.MathNode("mspace");s.setAttribute("mathbackground",a),s.setAttribute("width",Et(r)),s.setAttribute("height",Et(n));var l=new mt.MathNode("mpadded",[s]);return i>=0?l.setAttribute("height",Et(i)):(l.setAttribute("height",Et(i)),l.setAttribute("depth",Et(-i))),l.setAttribute("voffset",Et(i)),l}});o(dV,"sizingGroup");pz=["\\tiny","\\sixptsize","\\scriptsize","\\footnotesize","\\small","\\normalsize","\\large","\\Large","\\LARGE","\\huge","\\Huge"],J3e=o((t,e)=>{var r=e.havingSize(t.size);return dV(t.body,r,e)},"htmlBuilder");Rt({type:"sizing",names:pz,props:{numArgs:0,allowedInText:!0},handler:o((t,e)=>{var{breakOnTokenText:r,funcName:n,parser:i}=t,a=i.parseExpression(!1,r);return{type:"sizing",mode:i.mode,size:pz.indexOf(n)+1,body:a}},"handler"),htmlBuilder:J3e,mathmlBuilder:o((t,e)=>{var r=e.havingSize(t.size),n=Cs(t.body,r),i=new mt.MathNode("mstyle",n);return i.setAttribute("mathsize",Et(r.sizeMultiplier)),i},"mathmlBuilder")});Rt({type:"smash",names:["\\smash"],props:{numArgs:1,numOptionalArgs:1,allowedInText:!0},handler:o((t,e,r)=>{var{parser:n}=t,i=!1,a=!1,s=r[0]&&xr(r[0],"ordgroup");if(s)for(var l="",u=0;u<s.body.length;++u){var h=s.body[u];if(l=h.text,l==="t")i=!0;else if(l==="b")a=!0;else{i=!1,a=!1;break}}else i=!0,a=!0;var f=e[0];return{type:"smash",mode:n.mode,body:f,smashHeight:i,smashDepth:a}},"handler"),htmlBuilder:o((t,e)=>{var r=Fe.makeSpan([],[$r(t.body,e)]);if(!t.smashHeight&&!t.smashDepth)return r;if(t.smashHeight&&(r.height=0,r.children))for(var n=0;n<r.children.length;n++)r.children[n].height=0;if(t.smashDepth&&(r.depth=0,r.children))for(var i=0;i<r.children.length;i++)r.children[i].depth=0;var a=Fe.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r}]},e);return Fe.makeSpan(["mord"],[a],e)},"htmlBuilder"),mathmlBuilder:o((t,e)=>{var r=new mt.MathNode("mpadded",[vn(t.body,e)]);return t.smashHeight&&r.setAttribute("height","0px"),t.smashDepth&&r.setAttribute("depth","0px"),r},"mathmlBuilder")});Rt({type:"sqrt",names:["\\sqrt"],props:{numArgs:1,numOptionalArgs:1},handler(t,e,r){var{parser:n}=t,i=r[0],a=e[0];return{type:"sqrt",mode:n.mode,body:a,index:i}},htmlBuilder(t,e){var r=$r(t.body,e.havingCrampedStyle());r.height===0&&(r.height=e.fontMetrics().xHeight),r=Fe.wrapFragment(r,e);var n=e.fontMetrics(),i=n.defaultRuleThickness,a=i;e.style.id<nr.TEXT.id&&(a=e.fontMetrics().xHeight);var s=i+a/4,l=r.height+r.depth+s+i,{span:u,ruleWidth:h,advanceWidth:f}=cu.sqrtImage(l,e),d=u.height-h;d>r.height+r.depth+s&&(s=(s+d-r.height-r.depth)/2);var p=u.height-r.height-s-h;r.style.paddingLeft=Et(f);var m=Fe.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r,wrapperClasses:["svg-align"]},{type:"kern",size:-(r.height+p)},{type:"elem",elem:u},{type:"kern",size:h}]},e);if(t.index){var g=e.havingStyle(nr.SCRIPTSCRIPT),y=$r(t.index,g,e),x=.6*(m.height-m.depth),v=Fe.makeVList({positionType:"shift",positionData:-x,children:[{type:"elem",elem:y}]},e),b=Fe.makeSpan(["root"],[v]);return Fe.makeSpan(["mord","sqrt"],[b,m],e)}else return Fe.makeSpan(["mord","sqrt"],[m],e)},mathmlBuilder(t,e){var{body:r,index:n}=t;return n?new mt.MathNode("mroot",[vn(r,e),vn(n,e)]):new mt.MathNode("msqrt",[vn(r,e)])}});mz={display:nr.DISPLAY,text:nr.TEXT,script:nr.SCRIPT,scriptscript:nr.SCRIPTSCRIPT};Rt({type:"styling",names:["\\displaystyle","\\textstyle","\\scriptstyle","\\scriptscriptstyle"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(t,e){var{breakOnTokenText:r,funcName:n,parser:i}=t,a=i.parseExpression(!0,r),s=n.slice(1,n.length-5);return{type:"styling",mode:i.mode,style:s,body:a}},htmlBuilder(t,e){var r=mz[t.style],n=e.havingStyle(r).withFont("");return dV(t.body,n,e)},mathmlBuilder(t,e){var r=mz[t.style],n=e.havingStyle(r),i=Cs(t.body,n),a=new mt.MathNode("mstyle",i),s={display:["0","true"],text:["0","false"],script:["1","false"],scriptscript:["2","false"]},l=s[t.style];return a.setAttribute("scriptlevel",l[0]),a.setAttribute("displaystyle",l[1]),a}});e5e=o(function(e,r){var n=e.base;if(n)if(n.type==="op"){var i=n.limits&&(r.style.size===nr.DISPLAY.size||n.alwaysHandleSupSub);return i?w0:null}else if(n.type==="operatorname"){var a=n.alwaysHandleSupSub&&(r.style.size===nr.DISPLAY.size||n.limits);return a?fV:null}else{if(n.type==="accent")return er.isCharacterBox(n.base)?oA:null;if(n.type==="horizBrace"){var s=!e.sub;return s===n.isOver?cV:null}else return null}else return null},"htmlBuilderDelegate");ud({type:"supsub",htmlBuilder(t,e){var r=e5e(t,e);if(r)return r(t,e);var{base:n,sup:i,sub:a}=t,s=$r(n,e),l,u,h=e.fontMetrics(),f=0,d=0,p=n&&er.isCharacterBox(n);if(i){var m=e.havingStyle(e.style.sup());l=$r(i,m,e),p||(f=s.height-m.fontMetrics().supDrop*m.sizeMultiplier/e.sizeMultiplier)}if(a){var g=e.havingStyle(e.style.sub());u=$r(a,g,e),p||(d=s.depth+g.fontMetrics().subDrop*g.sizeMultiplier/e.sizeMultiplier)}var y;e.style===nr.DISPLAY?y=h.sup1:e.style.cramped?y=h.sup3:y=h.sup2;var x=e.sizeMultiplier,v=Et(.5/h.ptPerEm/x),b=null;if(u){var T=t.base&&t.base.type==="op"&&t.base.name&&(t.base.name==="\\oiint"||t.base.name==="\\oiiint");(s instanceof Ss||T)&&(b=Et(-s.italic))}var S;if(l&&u){f=Math.max(f,y,l.depth+.25*h.xHeight),d=Math.max(d,h.sub2);var w=h.defaultRuleThickness,E=4*w;if(f-l.depth-(u.height-d)<E){d=E-(f-l.depth)+u.height;var _=.8*h.xHeight-(f-l.depth);_>0&&(f+=_,d-=_)}var A=[{type:"elem",elem:u,shift:d,marginRight:v,marginLeft:b},{type:"elem",elem:l,shift:-f,marginRight:v}];S=Fe.makeVList({positionType:"individualShift",children:A},e)}else if(u){d=Math.max(d,h.sub1,u.height-.8*h.xHeight);var D=[{type:"elem",elem:u,marginLeft:b,marginRight:v}];S=Fe.makeVList({positionType:"shift",positionData:d,children:D},e)}else if(l)f=Math.max(f,y,l.depth+.25*h.xHeight),S=Fe.makeVList({positionType:"shift",positionData:-f,children:[{type:"elem",elem:l,marginRight:v}]},e);else throw new Error("supsub must have either sup or sub.");var O=Y7(s,"right")||"mord";return Fe.makeSpan([O],[s,Fe.makeSpan(["msupsub"],[S])],e)},mathmlBuilder(t,e){var r=!1,n,i;t.base&&t.base.type==="horizBrace"&&(i=!!t.sup,i===t.base.isOver&&(r=!0,n=t.base.isOver)),t.base&&(t.base.type==="op"||t.base.type==="operatorname")&&(t.base.parentIsSupSub=!0);var a=[vn(t.base,e)];t.sub&&a.push(vn(t.sub,e)),t.sup&&a.push(vn(t.sup,e));var s;if(r)s=n?"mover":"munder";else if(t.sub)if(t.sup){var h=t.base;h&&h.type==="op"&&h.limits&&e.style===nr.DISPLAY||h&&h.type==="operatorname"&&h.alwaysHandleSupSub&&(e.style===nr.DISPLAY||h.limits)?s="munderover":s="msubsup"}else{var u=t.base;u&&u.type==="op"&&u.limits&&(e.style===nr.DISPLAY||u.alwaysHandleSupSub)||u&&u.type==="operatorname"&&u.alwaysHandleSupSub&&(u.limits||e.style===nr.DISPLAY)?s="munder":s="msub"}else{var l=t.base;l&&l.type==="op"&&l.limits&&(e.style===nr.DISPLAY||l.alwaysHandleSupSub)||l&&l.type==="operatorname"&&l.alwaysHandleSupSub&&(l.limits||e.style===nr.DISPLAY)?s="mover":s="msup"}return new mt.MathNode(s,a)}});ud({type:"atom",htmlBuilder(t,e){return Fe.mathsym(t.text,t.mode,e,["m"+t.family])},mathmlBuilder(t,e){var r=new mt.MathNode("mo",[Do(t.text,t.mode)]);if(t.family==="bin"){var n=aA(t,e);n==="bold-italic"&&r.setAttribute("mathvariant",n)}else t.family==="punct"?r.setAttribute("separator","true"):(t.family==="open"||t.family==="close")&&r.setAttribute("stretchy","false");return r}});pV={mi:"italic",mn:"normal",mtext:"normal"};ud({type:"mathord",htmlBuilder(t,e){return Fe.makeOrd(t,e,"mathord")},mathmlBuilder(t,e){var r=new mt.MathNode("mi",[Do(t.text,t.mode,e)]),n=aA(t,e)||"italic";return n!==pV[r.type]&&r.setAttribute("mathvariant",n),r}});ud({type:"textord",htmlBuilder(t,e){return Fe.makeOrd(t,e,"textord")},mathmlBuilder(t,e){var r=Do(t.text,t.mode,e),n=aA(t,e)||"normal",i;return t.mode==="text"?i=new mt.MathNode("mtext",[r]):/[0-9]/.test(t.text)?i=new mt.MathNode("mn",[r]):t.text==="\\prime"?i=new mt.MathNode("mo",[r]):i=new mt.MathNode("mi",[r]),n!==pV[i.type]&&i.setAttribute("mathvariant",n),i}});G7={"\\nobreak":"nobreak","\\allowbreak":"allowbreak"},z7={" ":{},"\\ ":{},"~":{className:"nobreak"},"\\space":{},"\\nobreakspace":{className:"nobreak"}};ud({type:"spacing",htmlBuilder(t,e){if(z7.hasOwnProperty(t.text)){var r=z7[t.text].className||"";if(t.mode==="text"){var n=Fe.makeOrd(t,e,"textord");return n.classes.push(r),n}else return Fe.makeSpan(["mspace",r],[Fe.mathsym(t.text,t.mode,e)],e)}else{if(G7.hasOwnProperty(t.text))return Fe.makeSpan(["mspace",G7[t.text]],[],e);throw new gt('Unknown type of space "'+t.text+'"')}},mathmlBuilder(t,e){var r;if(z7.hasOwnProperty(t.text))r=new mt.MathNode("mtext",[new mt.TextNode("\xA0")]);else{if(G7.hasOwnProperty(t.text))return new mt.MathNode("mspace");throw new gt('Unknown type of space "'+t.text+'"')}return r}});gz=o(()=>{var t=new mt.MathNode("mtd",[]);return t.setAttribute("width","50%"),t},"pad");ud({type:"tag",mathmlBuilder(t,e){var r=new mt.MathNode("mtable",[new mt.MathNode("mtr",[gz(),new mt.MathNode("mtd",[vh(t.body,e)]),gz(),new mt.MathNode("mtd",[vh(t.tag,e)])])]);return r.setAttribute("width","100%"),r}});yz={"\\text":void 0,"\\textrm":"textrm","\\textsf":"textsf","\\texttt":"texttt","\\textnormal":"textrm"},vz={"\\textbf":"textbf","\\textmd":"textmd"},t5e={"\\textit":"textit","\\textup":"textup"},xz=o((t,e)=>{var r=t.font;if(r){if(yz[r])return e.withTextFontFamily(yz[r]);if(vz[r])return e.withTextFontWeight(vz[r]);if(r==="\\emph")return e.fontShape==="textit"?e.withTextFontShape("textup"):e.withTextFontShape("textit")}else return e;return e.withTextFontShape(t5e[r])},"optionsWithFont");Rt({type:"text",names:["\\text","\\textrm","\\textsf","\\texttt","\\textnormal","\\textbf","\\textmd","\\textit","\\textup","\\emph"],props:{numArgs:1,argTypes:["text"],allowedInArgument:!0,allowedInText:!0},handler(t,e){var{parser:r,funcName:n}=t,i=e[0];return{type:"text",mode:r.mode,body:yi(i),font:n}},htmlBuilder(t,e){var r=xz(t,e),n=Pi(t.body,r,!0);return Fe.makeSpan(["mord","text"],n,r)},mathmlBuilder(t,e){var r=xz(t,e);return vh(t.body,r)}});Rt({type:"underline",names:["\\underline"],props:{numArgs:1,allowedInText:!0},handler(t,e){var{parser:r}=t;return{type:"underline",mode:r.mode,body:e[0]}},htmlBuilder(t,e){var r=$r(t.body,e),n=Fe.makeLineSpan("underline-line",e),i=e.fontMetrics().defaultRuleThickness,a=Fe.makeVList({positionType:"top",positionData:r.height,children:[{type:"kern",size:i},{type:"elem",elem:n},{type:"kern",size:3*i},{type:"elem",elem:r}]},e);return Fe.makeSpan(["mord","underline"],[a],e)},mathmlBuilder(t,e){var r=new mt.MathNode("mo",[new mt.TextNode("\u203E")]);r.setAttribute("stretchy","true");var n=new mt.MathNode("munder",[vn(t.body,e),r]);return n.setAttribute("accentunder","true"),n}});Rt({type:"vcenter",names:["\\vcenter"],props:{numArgs:1,argTypes:["original"],allowedInText:!1},handler(t,e){var{parser:r}=t;return{type:"vcenter",mode:r.mode,body:e[0]}},htmlBuilder(t,e){var r=$r(t.body,e),n=e.fontMetrics().axisHeight,i=.5*(r.height-n-(r.depth+n));return Fe.makeVList({positionType:"shift",positionData:i,children:[{type:"elem",elem:r}]},e)},mathmlBuilder(t,e){return new mt.MathNode("mpadded",[vn(t.body,e)],["vcenter"])}});Rt({type:"verb",names:["\\verb"],props:{numArgs:0,allowedInText:!0},handler(t,e,r){throw new gt("\\verb ended by end of line instead of matching delimiter")},htmlBuilder(t,e){for(var r=bz(t),n=[],i=e.havingStyle(e.style.text()),a=0;a<r.length;a++){var s=r[a];s==="~"&&(s="\\textasciitilde"),n.push(Fe.makeSymbol(s,"Typewriter-Regular",t.mode,i,["mord","texttt"]))}return Fe.makeSpan(["mord","text"].concat(i.sizingClasses(e)),Fe.tryCombineChars(n),i)},mathmlBuilder(t,e){var r=new mt.TextNode(bz(t)),n=new mt.MathNode("mtext",[r]);return n.setAttribute("mathvariant","monospace"),n}});bz=o(t=>t.body.replace(/ /g,t.star?"\u2423":"\xA0"),"makeVerb"),gh=Bz,mV=`[ \r
|
||
]`,r5e="\\\\[a-zA-Z@]+",n5e="\\\\[^\uD800-\uDFFF]",i5e="("+r5e+")"+mV+"*",a5e=`\\\\(
|
||
|[ \r ]+
|
||
?)[ \r ]*`,Z7="[\u0300-\u036F]",s5e=new RegExp(Z7+"+$"),o5e="("+mV+"+)|"+(a5e+"|")+"([!-\\[\\]-\u2027\u202A-\uD7FF\uF900-\uFFFF]"+(Z7+"*")+"|[\uD800-\uDBFF][\uDC00-\uDFFF]"+(Z7+"*")+"|\\\\verb\\*([^]).*?\\4|\\\\verb([^*a-zA-Z]).*?\\5"+("|"+i5e)+("|"+n5e+")"),E3=class{static{o(this,"Lexer")}constructor(e,r){this.input=void 0,this.settings=void 0,this.tokenRegex=void 0,this.catcodes=void 0,this.input=e,this.settings=r,this.tokenRegex=new RegExp(o5e,"g"),this.catcodes={"%":14,"~":13}}setCatcode(e,r){this.catcodes[e]=r}lex(){var e=this.input,r=this.tokenRegex.lastIndex;if(r===e.length)return new _o("EOF",new Zs(this,r,r));var n=this.tokenRegex.exec(e);if(n===null||n.index!==r)throw new gt("Unexpected character: '"+e[r]+"'",new _o(e[r],new Zs(this,r,r+1)));var i=n[6]||n[3]||(n[2]?"\\ ":" ");if(this.catcodes[i]===14){var a=e.indexOf(`
|
||
`,this.tokenRegex.lastIndex);return a===-1?(this.tokenRegex.lastIndex=e.length,this.settings.reportNonstrict("commentAtEnd","% comment has no terminating newline; LaTeX would fail because of commenting the end of math mode (e.g. $)")):this.tokenRegex.lastIndex=a+1,this.lex()}return new _o(i,new Zs(this,r,this.tokenRegex.lastIndex))}},J7=class{static{o(this,"Namespace")}constructor(e,r){e===void 0&&(e={}),r===void 0&&(r={}),this.current=void 0,this.builtins=void 0,this.undefStack=void 0,this.current=r,this.builtins=e,this.undefStack=[]}beginGroup(){this.undefStack.push({})}endGroup(){if(this.undefStack.length===0)throw new gt("Unbalanced namespace destruction: attempt to pop global namespace; please report this as a bug");var e=this.undefStack.pop();for(var r in e)e.hasOwnProperty(r)&&(e[r]==null?delete this.current[r]:this.current[r]=e[r])}endGroups(){for(;this.undefStack.length>0;)this.endGroup()}has(e){return this.current.hasOwnProperty(e)||this.builtins.hasOwnProperty(e)}get(e){return this.current.hasOwnProperty(e)?this.current[e]:this.builtins[e]}set(e,r,n){if(n===void 0&&(n=!1),n){for(var i=0;i<this.undefStack.length;i++)delete this.undefStack[i][e];this.undefStack.length>0&&(this.undefStack[this.undefStack.length-1][e]=r)}else{var a=this.undefStack[this.undefStack.length-1];a&&!a.hasOwnProperty(e)&&(a[e]=this.current[e])}r==null?delete this.current[e]:this.current[e]=r}},l5e=iV;ue("\\noexpand",function(t){var e=t.popToken();return t.isExpandable(e.text)&&(e.noexpand=!0,e.treatAsRelax=!0),{tokens:[e],numArgs:0}});ue("\\expandafter",function(t){var e=t.popToken();return t.expandOnce(!0),{tokens:[e],numArgs:0}});ue("\\@firstoftwo",function(t){var e=t.consumeArgs(2);return{tokens:e[0],numArgs:0}});ue("\\@secondoftwo",function(t){var e=t.consumeArgs(2);return{tokens:e[1],numArgs:0}});ue("\\@ifnextchar",function(t){var e=t.consumeArgs(3);t.consumeSpaces();var r=t.future();return e[0].length===1&&e[0][0].text===r.text?{tokens:e[1],numArgs:0}:{tokens:e[2],numArgs:0}});ue("\\@ifstar","\\@ifnextchar *{\\@firstoftwo{#1}}");ue("\\TextOrMath",function(t){var e=t.consumeArgs(2);return t.mode==="text"?{tokens:e[0],numArgs:0}:{tokens:e[1],numArgs:0}});Tz={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};ue("\\char",function(t){var e=t.popToken(),r,n="";if(e.text==="'")r=8,e=t.popToken();else if(e.text==='"')r=16,e=t.popToken();else if(e.text==="`")if(e=t.popToken(),e.text[0]==="\\")n=e.text.charCodeAt(1);else{if(e.text==="EOF")throw new gt("\\char` missing argument");n=e.text.charCodeAt(0)}else r=10;if(r){if(n=Tz[e.text],n==null||n>=r)throw new gt("Invalid base-"+r+" digit "+e.text);for(var i;(i=Tz[t.future().text])!=null&&i<r;)n*=r,n+=i,t.popToken()}return"\\@char{"+n+"}"});mA=o((t,e,r,n)=>{var i=t.consumeArg().tokens;if(i.length!==1)throw new gt("\\newcommand's first argument must be a macro name");var a=i[0].text,s=t.isDefined(a);if(s&&!e)throw new gt("\\newcommand{"+a+"} attempting to redefine "+(a+"; use \\renewcommand"));if(!s&&!r)throw new gt("\\renewcommand{"+a+"} when command "+a+" does not yet exist; use \\newcommand");var l=0;if(i=t.consumeArg().tokens,i.length===1&&i[0].text==="["){for(var u="",h=t.expandNextToken();h.text!=="]"&&h.text!=="EOF";)u+=h.text,h=t.expandNextToken();if(!u.match(/^\s*[0-9]+\s*$/))throw new gt("Invalid number of arguments: "+u);l=parseInt(u),i=t.consumeArg().tokens}return s&&n||t.macros.set(a,{tokens:i,numArgs:l}),""},"newcommand");ue("\\newcommand",t=>mA(t,!1,!0,!1));ue("\\renewcommand",t=>mA(t,!0,!1,!1));ue("\\providecommand",t=>mA(t,!0,!0,!0));ue("\\message",t=>{var e=t.consumeArgs(1)[0];return console.log(e.reverse().map(r=>r.text).join("")),""});ue("\\errmessage",t=>{var e=t.consumeArgs(1)[0];return console.error(e.reverse().map(r=>r.text).join("")),""});ue("\\show",t=>{var e=t.popToken(),r=e.text;return console.log(e,t.macros.get(r),gh[r],Ln.math[r],Ln.text[r]),""});ue("\\bgroup","{");ue("\\egroup","}");ue("~","\\nobreakspace");ue("\\lq","`");ue("\\rq","'");ue("\\aa","\\r a");ue("\\AA","\\r A");ue("\\textcopyright","\\html@mathml{\\textcircled{c}}{\\char`\xA9}");ue("\\copyright","\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}");ue("\\textregistered","\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`\xAE}");ue("\u212C","\\mathscr{B}");ue("\u2130","\\mathscr{E}");ue("\u2131","\\mathscr{F}");ue("\u210B","\\mathscr{H}");ue("\u2110","\\mathscr{I}");ue("\u2112","\\mathscr{L}");ue("\u2133","\\mathscr{M}");ue("\u211B","\\mathscr{R}");ue("\u212D","\\mathfrak{C}");ue("\u210C","\\mathfrak{H}");ue("\u2128","\\mathfrak{Z}");ue("\\Bbbk","\\Bbb{k}");ue("\xB7","\\cdotp");ue("\\llap","\\mathllap{\\textrm{#1}}");ue("\\rlap","\\mathrlap{\\textrm{#1}}");ue("\\clap","\\mathclap{\\textrm{#1}}");ue("\\mathstrut","\\vphantom{(}");ue("\\underbar","\\underline{\\text{#1}}");ue("\\not",'\\html@mathml{\\mathrel{\\mathrlap\\@not}}{\\char"338}');ue("\\neq","\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`\u2260}}");ue("\\ne","\\neq");ue("\u2260","\\neq");ue("\\notin","\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}{\\mathrel{\\char`\u2209}}");ue("\u2209","\\notin");ue("\u2258","\\html@mathml{\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}}{\\mathrel{\\char`\u2258}}");ue("\u2259","\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`\u2258}}");ue("\u225A","\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`\u225A}}");ue("\u225B","\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}{\\mathrel{\\char`\u225B}}");ue("\u225D","\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}{\\mathrel{\\char`\u225D}}");ue("\u225E","\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}{\\mathrel{\\char`\u225E}}");ue("\u225F","\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`\u225F}}");ue("\u27C2","\\perp");ue("\u203C","\\mathclose{!\\mkern-0.8mu!}");ue("\u220C","\\notni");ue("\u231C","\\ulcorner");ue("\u231D","\\urcorner");ue("\u231E","\\llcorner");ue("\u231F","\\lrcorner");ue("\xA9","\\copyright");ue("\xAE","\\textregistered");ue("\uFE0F","\\textregistered");ue("\\ulcorner",'\\html@mathml{\\@ulcorner}{\\mathop{\\char"231c}}');ue("\\urcorner",'\\html@mathml{\\@urcorner}{\\mathop{\\char"231d}}');ue("\\llcorner",'\\html@mathml{\\@llcorner}{\\mathop{\\char"231e}}');ue("\\lrcorner",'\\html@mathml{\\@lrcorner}{\\mathop{\\char"231f}}');ue("\\vdots","{\\varvdots\\rule{0pt}{15pt}}");ue("\u22EE","\\vdots");ue("\\varGamma","\\mathit{\\Gamma}");ue("\\varDelta","\\mathit{\\Delta}");ue("\\varTheta","\\mathit{\\Theta}");ue("\\varLambda","\\mathit{\\Lambda}");ue("\\varXi","\\mathit{\\Xi}");ue("\\varPi","\\mathit{\\Pi}");ue("\\varSigma","\\mathit{\\Sigma}");ue("\\varUpsilon","\\mathit{\\Upsilon}");ue("\\varPhi","\\mathit{\\Phi}");ue("\\varPsi","\\mathit{\\Psi}");ue("\\varOmega","\\mathit{\\Omega}");ue("\\substack","\\begin{subarray}{c}#1\\end{subarray}");ue("\\colon","\\nobreak\\mskip2mu\\mathpunct{}\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu\\relax");ue("\\boxed","\\fbox{$\\displaystyle{#1}$}");ue("\\iff","\\DOTSB\\;\\Longleftrightarrow\\;");ue("\\implies","\\DOTSB\\;\\Longrightarrow\\;");ue("\\impliedby","\\DOTSB\\;\\Longleftarrow\\;");ue("\\dddot","{\\overset{\\raisebox{-0.1ex}{\\normalsize ...}}{#1}}");ue("\\ddddot","{\\overset{\\raisebox{-0.1ex}{\\normalsize ....}}{#1}}");wz={",":"\\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"};ue("\\dots",function(t){var e="\\dotso",r=t.expandAfterFuture().text;return r in wz?e=wz[r]:(r.slice(0,4)==="\\not"||r in Ln.math&&er.contains(["bin","rel"],Ln.math[r].group))&&(e="\\dotsb"),e});gA={")":!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};ue("\\dotso",function(t){var e=t.future().text;return e in gA?"\\ldots\\,":"\\ldots"});ue("\\dotsc",function(t){var e=t.future().text;return e in gA&&e!==","?"\\ldots\\,":"\\ldots"});ue("\\cdots",function(t){var e=t.future().text;return e in gA?"\\@cdots\\,":"\\@cdots"});ue("\\dotsb","\\cdots");ue("\\dotsm","\\cdots");ue("\\dotsi","\\!\\cdots");ue("\\dotsx","\\ldots\\,");ue("\\DOTSI","\\relax");ue("\\DOTSB","\\relax");ue("\\DOTSX","\\relax");ue("\\tmspace","\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax");ue("\\,","\\tmspace+{3mu}{.1667em}");ue("\\thinspace","\\,");ue("\\>","\\mskip{4mu}");ue("\\:","\\tmspace+{4mu}{.2222em}");ue("\\medspace","\\:");ue("\\;","\\tmspace+{5mu}{.2777em}");ue("\\thickspace","\\;");ue("\\!","\\tmspace-{3mu}{.1667em}");ue("\\negthinspace","\\!");ue("\\negmedspace","\\tmspace-{4mu}{.2222em}");ue("\\negthickspace","\\tmspace-{5mu}{.277em}");ue("\\enspace","\\kern.5em ");ue("\\enskip","\\hskip.5em\\relax");ue("\\quad","\\hskip1em\\relax");ue("\\qquad","\\hskip2em\\relax");ue("\\tag","\\@ifstar\\tag@literal\\tag@paren");ue("\\tag@paren","\\tag@literal{({#1})}");ue("\\tag@literal",t=>{if(t.macros.get("\\df@tag"))throw new gt("Multiple \\tag");return"\\gdef\\df@tag{\\text{#1}}"});ue("\\bmod","\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}");ue("\\pod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)");ue("\\pmod","\\pod{{\\rm mod}\\mkern6mu#1}");ue("\\mod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1");ue("\\newline","\\\\\\relax");ue("\\TeX","\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}");gV=Et(Kl["Main-Regular"][84][1]-.7*Kl["Main-Regular"][65][1]);ue("\\LaTeX","\\textrm{\\html@mathml{"+("L\\kern-.36em\\raisebox{"+gV+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{LaTeX}}");ue("\\KaTeX","\\textrm{\\html@mathml{"+("K\\kern-.17em\\raisebox{"+gV+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{KaTeX}}");ue("\\hspace","\\@ifstar\\@hspacer\\@hspace");ue("\\@hspace","\\hskip #1\\relax");ue("\\@hspacer","\\rule{0pt}{0pt}\\hskip #1\\relax");ue("\\ordinarycolon",":");ue("\\vcentcolon","\\mathrel{\\mathop\\ordinarycolon}");ue("\\dblcolon",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}');ue("\\coloneqq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}');ue("\\Coloneqq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}');ue("\\coloneq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}');ue("\\Coloneq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}');ue("\\eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}');ue("\\Eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}');ue("\\eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}');ue("\\Eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}');ue("\\colonapprox",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}');ue("\\Colonapprox",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}');ue("\\colonsim",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}');ue("\\Colonsim",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}');ue("\u2237","\\dblcolon");ue("\u2239","\\eqcolon");ue("\u2254","\\coloneqq");ue("\u2255","\\eqqcolon");ue("\u2A74","\\Coloneqq");ue("\\ratio","\\vcentcolon");ue("\\coloncolon","\\dblcolon");ue("\\colonequals","\\coloneqq");ue("\\coloncolonequals","\\Coloneqq");ue("\\equalscolon","\\eqqcolon");ue("\\equalscoloncolon","\\Eqqcolon");ue("\\colonminus","\\coloneq");ue("\\coloncolonminus","\\Coloneq");ue("\\minuscolon","\\eqcolon");ue("\\minuscoloncolon","\\Eqcolon");ue("\\coloncolonapprox","\\Colonapprox");ue("\\coloncolonsim","\\Colonsim");ue("\\simcolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}");ue("\\simcoloncolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}");ue("\\approxcolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}");ue("\\approxcoloncolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}");ue("\\notni","\\html@mathml{\\not\\ni}{\\mathrel{\\char`\u220C}}");ue("\\limsup","\\DOTSB\\operatorname*{lim\\,sup}");ue("\\liminf","\\DOTSB\\operatorname*{lim\\,inf}");ue("\\injlim","\\DOTSB\\operatorname*{inj\\,lim}");ue("\\projlim","\\DOTSB\\operatorname*{proj\\,lim}");ue("\\varlimsup","\\DOTSB\\operatorname*{\\overline{lim}}");ue("\\varliminf","\\DOTSB\\operatorname*{\\underline{lim}}");ue("\\varinjlim","\\DOTSB\\operatorname*{\\underrightarrow{lim}}");ue("\\varprojlim","\\DOTSB\\operatorname*{\\underleftarrow{lim}}");ue("\\gvertneqq","\\html@mathml{\\@gvertneqq}{\u2269}");ue("\\lvertneqq","\\html@mathml{\\@lvertneqq}{\u2268}");ue("\\ngeqq","\\html@mathml{\\@ngeqq}{\u2271}");ue("\\ngeqslant","\\html@mathml{\\@ngeqslant}{\u2271}");ue("\\nleqq","\\html@mathml{\\@nleqq}{\u2270}");ue("\\nleqslant","\\html@mathml{\\@nleqslant}{\u2270}");ue("\\nshortmid","\\html@mathml{\\@nshortmid}{\u2224}");ue("\\nshortparallel","\\html@mathml{\\@nshortparallel}{\u2226}");ue("\\nsubseteqq","\\html@mathml{\\@nsubseteqq}{\u2288}");ue("\\nsupseteqq","\\html@mathml{\\@nsupseteqq}{\u2289}");ue("\\varsubsetneq","\\html@mathml{\\@varsubsetneq}{\u228A}");ue("\\varsubsetneqq","\\html@mathml{\\@varsubsetneqq}{\u2ACB}");ue("\\varsupsetneq","\\html@mathml{\\@varsupsetneq}{\u228B}");ue("\\varsupsetneqq","\\html@mathml{\\@varsupsetneqq}{\u2ACC}");ue("\\imath","\\html@mathml{\\@imath}{\u0131}");ue("\\jmath","\\html@mathml{\\@jmath}{\u0237}");ue("\\llbracket","\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}{\\mathopen{\\char`\u27E6}}");ue("\\rrbracket","\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}{\\mathclose{\\char`\u27E7}}");ue("\u27E6","\\llbracket");ue("\u27E7","\\rrbracket");ue("\\lBrace","\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}{\\mathopen{\\char`\u2983}}");ue("\\rBrace","\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}{\\mathclose{\\char`\u2984}}");ue("\u2983","\\lBrace");ue("\u2984","\\rBrace");ue("\\minuso","\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}{\\char`\u29B5}}");ue("\u29B5","\\minuso");ue("\\darr","\\downarrow");ue("\\dArr","\\Downarrow");ue("\\Darr","\\Downarrow");ue("\\lang","\\langle");ue("\\rang","\\rangle");ue("\\uarr","\\uparrow");ue("\\uArr","\\Uparrow");ue("\\Uarr","\\Uparrow");ue("\\N","\\mathbb{N}");ue("\\R","\\mathbb{R}");ue("\\Z","\\mathbb{Z}");ue("\\alef","\\aleph");ue("\\alefsym","\\aleph");ue("\\Alpha","\\mathrm{A}");ue("\\Beta","\\mathrm{B}");ue("\\bull","\\bullet");ue("\\Chi","\\mathrm{X}");ue("\\clubs","\\clubsuit");ue("\\cnums","\\mathbb{C}");ue("\\Complex","\\mathbb{C}");ue("\\Dagger","\\ddagger");ue("\\diamonds","\\diamondsuit");ue("\\empty","\\emptyset");ue("\\Epsilon","\\mathrm{E}");ue("\\Eta","\\mathrm{H}");ue("\\exist","\\exists");ue("\\harr","\\leftrightarrow");ue("\\hArr","\\Leftrightarrow");ue("\\Harr","\\Leftrightarrow");ue("\\hearts","\\heartsuit");ue("\\image","\\Im");ue("\\infin","\\infty");ue("\\Iota","\\mathrm{I}");ue("\\isin","\\in");ue("\\Kappa","\\mathrm{K}");ue("\\larr","\\leftarrow");ue("\\lArr","\\Leftarrow");ue("\\Larr","\\Leftarrow");ue("\\lrarr","\\leftrightarrow");ue("\\lrArr","\\Leftrightarrow");ue("\\Lrarr","\\Leftrightarrow");ue("\\Mu","\\mathrm{M}");ue("\\natnums","\\mathbb{N}");ue("\\Nu","\\mathrm{N}");ue("\\Omicron","\\mathrm{O}");ue("\\plusmn","\\pm");ue("\\rarr","\\rightarrow");ue("\\rArr","\\Rightarrow");ue("\\Rarr","\\Rightarrow");ue("\\real","\\Re");ue("\\reals","\\mathbb{R}");ue("\\Reals","\\mathbb{R}");ue("\\Rho","\\mathrm{P}");ue("\\sdot","\\cdot");ue("\\sect","\\S");ue("\\spades","\\spadesuit");ue("\\sub","\\subset");ue("\\sube","\\subseteq");ue("\\supe","\\supseteq");ue("\\Tau","\\mathrm{T}");ue("\\thetasym","\\vartheta");ue("\\weierp","\\wp");ue("\\Zeta","\\mathrm{Z}");ue("\\argmin","\\DOTSB\\operatorname*{arg\\,min}");ue("\\argmax","\\DOTSB\\operatorname*{arg\\,max}");ue("\\plim","\\DOTSB\\mathop{\\operatorname{plim}}\\limits");ue("\\bra","\\mathinner{\\langle{#1}|}");ue("\\ket","\\mathinner{|{#1}\\rangle}");ue("\\braket","\\mathinner{\\langle{#1}\\rangle}");ue("\\Bra","\\left\\langle#1\\right|");ue("\\Ket","\\left|#1\\right\\rangle");yV=o(t=>e=>{var r=e.consumeArg().tokens,n=e.consumeArg().tokens,i=e.consumeArg().tokens,a=e.consumeArg().tokens,s=e.macros.get("|"),l=e.macros.get("\\|");e.macros.beginGroup();var u=o(d=>p=>{t&&(p.macros.set("|",s),i.length&&p.macros.set("\\|",l));var m=d;if(!d&&i.length){var g=p.future();g.text==="|"&&(p.popToken(),m=!0)}return{tokens:m?i:n,numArgs:0}},"midMacro");e.macros.set("|",u(!1)),i.length&&e.macros.set("\\|",u(!0));var h=e.consumeArg().tokens,f=e.expandTokens([...a,...h,...r]);return e.macros.endGroup(),{tokens:f.reverse(),numArgs:0}},"braketHelper");ue("\\bra@ket",yV(!1));ue("\\bra@set",yV(!0));ue("\\Braket","\\bra@ket{\\left\\langle}{\\,\\middle\\vert\\,}{\\,\\middle\\vert\\,}{\\right\\rangle}");ue("\\Set","\\bra@set{\\left\\{\\:}{\\;\\middle\\vert\\;}{\\;\\middle\\Vert\\;}{\\:\\right\\}}");ue("\\set","\\bra@set{\\{\\,}{\\mid}{}{\\,\\}}");ue("\\angln","{\\angl n}");ue("\\blue","\\textcolor{##6495ed}{#1}");ue("\\orange","\\textcolor{##ffa500}{#1}");ue("\\pink","\\textcolor{##ff00af}{#1}");ue("\\red","\\textcolor{##df0030}{#1}");ue("\\green","\\textcolor{##28ae7b}{#1}");ue("\\gray","\\textcolor{gray}{#1}");ue("\\purple","\\textcolor{##9d38bd}{#1}");ue("\\blueA","\\textcolor{##ccfaff}{#1}");ue("\\blueB","\\textcolor{##80f6ff}{#1}");ue("\\blueC","\\textcolor{##63d9ea}{#1}");ue("\\blueD","\\textcolor{##11accd}{#1}");ue("\\blueE","\\textcolor{##0c7f99}{#1}");ue("\\tealA","\\textcolor{##94fff5}{#1}");ue("\\tealB","\\textcolor{##26edd5}{#1}");ue("\\tealC","\\textcolor{##01d1c1}{#1}");ue("\\tealD","\\textcolor{##01a995}{#1}");ue("\\tealE","\\textcolor{##208170}{#1}");ue("\\greenA","\\textcolor{##b6ffb0}{#1}");ue("\\greenB","\\textcolor{##8af281}{#1}");ue("\\greenC","\\textcolor{##74cf70}{#1}");ue("\\greenD","\\textcolor{##1fab54}{#1}");ue("\\greenE","\\textcolor{##0d923f}{#1}");ue("\\goldA","\\textcolor{##ffd0a9}{#1}");ue("\\goldB","\\textcolor{##ffbb71}{#1}");ue("\\goldC","\\textcolor{##ff9c39}{#1}");ue("\\goldD","\\textcolor{##e07d10}{#1}");ue("\\goldE","\\textcolor{##a75a05}{#1}");ue("\\redA","\\textcolor{##fca9a9}{#1}");ue("\\redB","\\textcolor{##ff8482}{#1}");ue("\\redC","\\textcolor{##f9685d}{#1}");ue("\\redD","\\textcolor{##e84d39}{#1}");ue("\\redE","\\textcolor{##bc2612}{#1}");ue("\\maroonA","\\textcolor{##ffbde0}{#1}");ue("\\maroonB","\\textcolor{##ff92c6}{#1}");ue("\\maroonC","\\textcolor{##ed5fa6}{#1}");ue("\\maroonD","\\textcolor{##ca337c}{#1}");ue("\\maroonE","\\textcolor{##9e034e}{#1}");ue("\\purpleA","\\textcolor{##ddd7ff}{#1}");ue("\\purpleB","\\textcolor{##c6b9fc}{#1}");ue("\\purpleC","\\textcolor{##aa87ff}{#1}");ue("\\purpleD","\\textcolor{##7854ab}{#1}");ue("\\purpleE","\\textcolor{##543b78}{#1}");ue("\\mintA","\\textcolor{##f5f9e8}{#1}");ue("\\mintB","\\textcolor{##edf2df}{#1}");ue("\\mintC","\\textcolor{##e0e5cc}{#1}");ue("\\grayA","\\textcolor{##f6f7f7}{#1}");ue("\\grayB","\\textcolor{##f0f1f2}{#1}");ue("\\grayC","\\textcolor{##e3e5e6}{#1}");ue("\\grayD","\\textcolor{##d6d8da}{#1}");ue("\\grayE","\\textcolor{##babec2}{#1}");ue("\\grayF","\\textcolor{##888d93}{#1}");ue("\\grayG","\\textcolor{##626569}{#1}");ue("\\grayH","\\textcolor{##3b3e40}{#1}");ue("\\grayI","\\textcolor{##21242c}{#1}");ue("\\kaBlue","\\textcolor{##314453}{#1}");ue("\\kaGreen","\\textcolor{##71B307}{#1}");vV={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0},eA=class{static{o(this,"MacroExpander")}constructor(e,r,n){this.settings=void 0,this.expansionCount=void 0,this.lexer=void 0,this.macros=void 0,this.stack=void 0,this.mode=void 0,this.settings=r,this.expansionCount=0,this.feed(e),this.macros=new J7(l5e,r.macros),this.mode=n,this.stack=[]}feed(e){this.lexer=new E3(e,this.settings)}switchMode(e){this.mode=e}beginGroup(){this.macros.beginGroup()}endGroup(){this.macros.endGroup()}endGroups(){this.macros.endGroups()}future(){return this.stack.length===0&&this.pushToken(this.lexer.lex()),this.stack[this.stack.length-1]}popToken(){return this.future(),this.stack.pop()}pushToken(e){this.stack.push(e)}pushTokens(e){this.stack.push(...e)}scanArgument(e){var r,n,i;if(e){if(this.consumeSpaces(),this.future().text!=="[")return null;r=this.popToken(),{tokens:i,end:n}=this.consumeArg(["]"])}else({tokens:i,start:r,end:n}=this.consumeArg());return this.pushToken(new _o("EOF",n.loc)),this.pushTokens(i),r.range(n,"")}consumeSpaces(){for(;;){var e=this.future();if(e.text===" ")this.stack.pop();else break}}consumeArg(e){var r=[],n=e&&e.length>0;n||this.consumeSpaces();var i=this.future(),a,s=0,l=0;do{if(a=this.popToken(),r.push(a),a.text==="{")++s;else if(a.text==="}"){if(--s,s===-1)throw new gt("Extra }",a)}else if(a.text==="EOF")throw new gt("Unexpected end of input in a macro argument, expected '"+(e&&n?e[l]:"}")+"'",a);if(e&&n)if((s===0||s===1&&e[l]==="{")&&a.text===e[l]){if(++l,l===e.length){r.splice(-l,l);break}}else l=0}while(s!==0||n);return i.text==="{"&&r[r.length-1].text==="}"&&(r.pop(),r.shift()),r.reverse(),{tokens:r,start:i,end:a}}consumeArgs(e,r){if(r){if(r.length!==e+1)throw new gt("The length of delimiters doesn't match the number of args!");for(var n=r[0],i=0;i<n.length;i++){var a=this.popToken();if(n[i]!==a.text)throw new gt("Use of the macro doesn't match its definition",a)}}for(var s=[],l=0;l<e;l++)s.push(this.consumeArg(r&&r[l+1]).tokens);return s}countExpansion(e){if(this.expansionCount+=e,this.expansionCount>this.settings.maxExpand)throw new gt("Too many expansions: infinite loop or need to increase maxExpand setting")}expandOnce(e){var r=this.popToken(),n=r.text,i=r.noexpand?null:this._getExpansion(n);if(i==null||e&&i.unexpandable){if(e&&i==null&&n[0]==="\\"&&!this.isDefined(n))throw new gt("Undefined control sequence: "+n);return this.pushToken(r),!1}this.countExpansion(1);var a=i.tokens,s=this.consumeArgs(i.numArgs,i.delimiters);if(i.numArgs){a=a.slice();for(var l=a.length-1;l>=0;--l){var u=a[l];if(u.text==="#"){if(l===0)throw new gt("Incomplete placeholder at end of macro body",u);if(u=a[--l],u.text==="#")a.splice(l+1,1);else if(/^[1-9]$/.test(u.text))a.splice(l,2,...s[+u.text-1]);else throw new gt("Not a valid argument number",u)}}}return this.pushTokens(a),a.length}expandAfterFuture(){return this.expandOnce(),this.future()}expandNextToken(){for(;;)if(this.expandOnce()===!1){var e=this.stack.pop();return e.treatAsRelax&&(e.text="\\relax"),e}throw new Error}expandMacro(e){return this.macros.has(e)?this.expandTokens([new _o(e)]):void 0}expandTokens(e){var r=[],n=this.stack.length;for(this.pushTokens(e);this.stack.length>n;)if(this.expandOnce(!0)===!1){var i=this.stack.pop();i.treatAsRelax&&(i.noexpand=!1,i.treatAsRelax=!1),r.push(i)}return this.countExpansion(r.length),r}expandMacroAsText(e){var r=this.expandMacro(e);return r&&r.map(n=>n.text).join("")}_getExpansion(e){var r=this.macros.get(e);if(r==null)return r;if(e.length===1){var n=this.lexer.catcodes[e];if(n!=null&&n!==13)return}var i=typeof r=="function"?r(this):r;if(typeof i=="string"){var a=0;if(i.indexOf("#")!==-1)for(var s=i.replace(/##/g,"");s.indexOf("#"+(a+1))!==-1;)++a;for(var l=new E3(i,this.settings),u=[],h=l.lex();h.text!=="EOF";)u.push(h),h=l.lex();u.reverse();var f={tokens:u,numArgs:a};return f}return i}isDefined(e){return this.macros.has(e)||gh.hasOwnProperty(e)||Ln.math.hasOwnProperty(e)||Ln.text.hasOwnProperty(e)||vV.hasOwnProperty(e)}isExpandable(e){var r=this.macros.get(e);return r!=null?typeof r=="string"||typeof r=="function"||!r.unexpandable:gh.hasOwnProperty(e)&&!gh[e].primitive}},kz=/^[₊₋₌₍₎₀₁₂₃₄₅₆₇₈₉ₐₑₕᵢⱼₖₗₘₙₒₚᵣₛₜᵤᵥₓᵦᵧᵨᵩᵪ]/,g3=Object.freeze({"\u208A":"+","\u208B":"-","\u208C":"=","\u208D":"(","\u208E":")","\u2080":"0","\u2081":"1","\u2082":"2","\u2083":"3","\u2084":"4","\u2085":"5","\u2086":"6","\u2087":"7","\u2088":"8","\u2089":"9","\u2090":"a","\u2091":"e","\u2095":"h","\u1D62":"i","\u2C7C":"j","\u2096":"k","\u2097":"l","\u2098":"m","\u2099":"n","\u2092":"o","\u209A":"p","\u1D63":"r","\u209B":"s","\u209C":"t","\u1D64":"u","\u1D65":"v","\u2093":"x","\u1D66":"\u03B2","\u1D67":"\u03B3","\u1D68":"\u03C1","\u1D69":"\u03D5","\u1D6A":"\u03C7","\u207A":"+","\u207B":"-","\u207C":"=","\u207D":"(","\u207E":")","\u2070":"0","\xB9":"1","\xB2":"2","\xB3":"3","\u2074":"4","\u2075":"5","\u2076":"6","\u2077":"7","\u2078":"8","\u2079":"9","\u1D2C":"A","\u1D2E":"B","\u1D30":"D","\u1D31":"E","\u1D33":"G","\u1D34":"H","\u1D35":"I","\u1D36":"J","\u1D37":"K","\u1D38":"L","\u1D39":"M","\u1D3A":"N","\u1D3C":"O","\u1D3E":"P","\u1D3F":"R","\u1D40":"T","\u1D41":"U","\u2C7D":"V","\u1D42":"W","\u1D43":"a","\u1D47":"b","\u1D9C":"c","\u1D48":"d","\u1D49":"e","\u1DA0":"f","\u1D4D":"g",\u02B0:"h","\u2071":"i",\u02B2:"j","\u1D4F":"k",\u02E1:"l","\u1D50":"m",\u207F:"n","\u1D52":"o","\u1D56":"p",\u02B3:"r",\u02E2:"s","\u1D57":"t","\u1D58":"u","\u1D5B":"v",\u02B7:"w",\u02E3:"x",\u02B8:"y","\u1DBB":"z","\u1D5D":"\u03B2","\u1D5E":"\u03B3","\u1D5F":"\u03B4","\u1D60":"\u03D5","\u1D61":"\u03C7","\u1DBF":"\u03B8"}),V7={"\u0301":{text:"\\'",math:"\\acute"},"\u0300":{text:"\\`",math:"\\grave"},"\u0308":{text:'\\"',math:"\\ddot"},"\u0303":{text:"\\~",math:"\\tilde"},"\u0304":{text:"\\=",math:"\\bar"},"\u0306":{text:"\\u",math:"\\breve"},"\u030C":{text:"\\v",math:"\\check"},"\u0302":{text:"\\^",math:"\\hat"},"\u0307":{text:"\\.",math:"\\dot"},"\u030A":{text:"\\r",math:"\\mathring"},"\u030B":{text:"\\H"},"\u0327":{text:"\\c"}},Ez={\u00E1:"a\u0301",\u00E0:"a\u0300",\u00E4:"a\u0308",\u01DF:"a\u0308\u0304",\u00E3:"a\u0303",\u0101:"a\u0304",\u0103:"a\u0306",\u1EAF:"a\u0306\u0301",\u1EB1:"a\u0306\u0300",\u1EB5:"a\u0306\u0303",\u01CE:"a\u030C",\u00E2:"a\u0302",\u1EA5:"a\u0302\u0301",\u1EA7:"a\u0302\u0300",\u1EAB:"a\u0302\u0303",\u0227:"a\u0307",\u01E1:"a\u0307\u0304",\u00E5:"a\u030A",\u01FB:"a\u030A\u0301",\u1E03:"b\u0307",\u0107:"c\u0301",\u1E09:"c\u0327\u0301",\u010D:"c\u030C",\u0109:"c\u0302",\u010B:"c\u0307",\u00E7:"c\u0327",\u010F:"d\u030C",\u1E0B:"d\u0307",\u1E11:"d\u0327",\u00E9:"e\u0301",\u00E8:"e\u0300",\u00EB:"e\u0308",\u1EBD:"e\u0303",\u0113:"e\u0304",\u1E17:"e\u0304\u0301",\u1E15:"e\u0304\u0300",\u0115:"e\u0306",\u1E1D:"e\u0327\u0306",\u011B:"e\u030C",\u00EA:"e\u0302",\u1EBF:"e\u0302\u0301",\u1EC1:"e\u0302\u0300",\u1EC5:"e\u0302\u0303",\u0117:"e\u0307",\u0229:"e\u0327",\u1E1F:"f\u0307",\u01F5:"g\u0301",\u1E21:"g\u0304",\u011F:"g\u0306",\u01E7:"g\u030C",\u011D:"g\u0302",\u0121:"g\u0307",\u0123:"g\u0327",\u1E27:"h\u0308",\u021F:"h\u030C",\u0125:"h\u0302",\u1E23:"h\u0307",\u1E29:"h\u0327",\u00ED:"i\u0301",\u00EC:"i\u0300",\u00EF:"i\u0308",\u1E2F:"i\u0308\u0301",\u0129:"i\u0303",\u012B:"i\u0304",\u012D:"i\u0306",\u01D0:"i\u030C",\u00EE:"i\u0302",\u01F0:"j\u030C",\u0135:"j\u0302",\u1E31:"k\u0301",\u01E9:"k\u030C",\u0137:"k\u0327",\u013A:"l\u0301",\u013E:"l\u030C",\u013C:"l\u0327",\u1E3F:"m\u0301",\u1E41:"m\u0307",\u0144:"n\u0301",\u01F9:"n\u0300",\u00F1:"n\u0303",\u0148:"n\u030C",\u1E45:"n\u0307",\u0146:"n\u0327",\u00F3:"o\u0301",\u00F2:"o\u0300",\u00F6:"o\u0308",\u022B:"o\u0308\u0304",\u00F5:"o\u0303",\u1E4D:"o\u0303\u0301",\u1E4F:"o\u0303\u0308",\u022D:"o\u0303\u0304",\u014D:"o\u0304",\u1E53:"o\u0304\u0301",\u1E51:"o\u0304\u0300",\u014F:"o\u0306",\u01D2:"o\u030C",\u00F4:"o\u0302",\u1ED1:"o\u0302\u0301",\u1ED3:"o\u0302\u0300",\u1ED7:"o\u0302\u0303",\u022F:"o\u0307",\u0231:"o\u0307\u0304",\u0151:"o\u030B",\u1E55:"p\u0301",\u1E57:"p\u0307",\u0155:"r\u0301",\u0159:"r\u030C",\u1E59:"r\u0307",\u0157:"r\u0327",\u015B:"s\u0301",\u1E65:"s\u0301\u0307",\u0161:"s\u030C",\u1E67:"s\u030C\u0307",\u015D:"s\u0302",\u1E61:"s\u0307",\u015F:"s\u0327",\u1E97:"t\u0308",\u0165:"t\u030C",\u1E6B:"t\u0307",\u0163:"t\u0327",\u00FA:"u\u0301",\u00F9:"u\u0300",\u00FC:"u\u0308",\u01D8:"u\u0308\u0301",\u01DC:"u\u0308\u0300",\u01D6:"u\u0308\u0304",\u01DA:"u\u0308\u030C",\u0169:"u\u0303",\u1E79:"u\u0303\u0301",\u016B:"u\u0304",\u1E7B:"u\u0304\u0308",\u016D:"u\u0306",\u01D4:"u\u030C",\u00FB:"u\u0302",\u016F:"u\u030A",\u0171:"u\u030B",\u1E7D:"v\u0303",\u1E83:"w\u0301",\u1E81:"w\u0300",\u1E85:"w\u0308",\u0175:"w\u0302",\u1E87:"w\u0307",\u1E98:"w\u030A",\u1E8D:"x\u0308",\u1E8B:"x\u0307",\u00FD:"y\u0301",\u1EF3:"y\u0300",\u00FF:"y\u0308",\u1EF9:"y\u0303",\u0233:"y\u0304",\u0177:"y\u0302",\u1E8F:"y\u0307",\u1E99:"y\u030A",\u017A:"z\u0301",\u017E:"z\u030C",\u1E91:"z\u0302",\u017C:"z\u0307",\u00C1:"A\u0301",\u00C0:"A\u0300",\u00C4:"A\u0308",\u01DE:"A\u0308\u0304",\u00C3:"A\u0303",\u0100:"A\u0304",\u0102:"A\u0306",\u1EAE:"A\u0306\u0301",\u1EB0:"A\u0306\u0300",\u1EB4:"A\u0306\u0303",\u01CD:"A\u030C",\u00C2:"A\u0302",\u1EA4:"A\u0302\u0301",\u1EA6:"A\u0302\u0300",\u1EAA:"A\u0302\u0303",\u0226:"A\u0307",\u01E0:"A\u0307\u0304",\u00C5:"A\u030A",\u01FA:"A\u030A\u0301",\u1E02:"B\u0307",\u0106:"C\u0301",\u1E08:"C\u0327\u0301",\u010C:"C\u030C",\u0108:"C\u0302",\u010A:"C\u0307",\u00C7:"C\u0327",\u010E:"D\u030C",\u1E0A:"D\u0307",\u1E10:"D\u0327",\u00C9:"E\u0301",\u00C8:"E\u0300",\u00CB:"E\u0308",\u1EBC:"E\u0303",\u0112:"E\u0304",\u1E16:"E\u0304\u0301",\u1E14:"E\u0304\u0300",\u0114:"E\u0306",\u1E1C:"E\u0327\u0306",\u011A:"E\u030C",\u00CA:"E\u0302",\u1EBE:"E\u0302\u0301",\u1EC0:"E\u0302\u0300",\u1EC4:"E\u0302\u0303",\u0116:"E\u0307",\u0228:"E\u0327",\u1E1E:"F\u0307",\u01F4:"G\u0301",\u1E20:"G\u0304",\u011E:"G\u0306",\u01E6:"G\u030C",\u011C:"G\u0302",\u0120:"G\u0307",\u0122:"G\u0327",\u1E26:"H\u0308",\u021E:"H\u030C",\u0124:"H\u0302",\u1E22:"H\u0307",\u1E28:"H\u0327",\u00CD:"I\u0301",\u00CC:"I\u0300",\u00CF:"I\u0308",\u1E2E:"I\u0308\u0301",\u0128:"I\u0303",\u012A:"I\u0304",\u012C:"I\u0306",\u01CF:"I\u030C",\u00CE:"I\u0302",\u0130:"I\u0307",\u0134:"J\u0302",\u1E30:"K\u0301",\u01E8:"K\u030C",\u0136:"K\u0327",\u0139:"L\u0301",\u013D:"L\u030C",\u013B:"L\u0327",\u1E3E:"M\u0301",\u1E40:"M\u0307",\u0143:"N\u0301",\u01F8:"N\u0300",\u00D1:"N\u0303",\u0147:"N\u030C",\u1E44:"N\u0307",\u0145:"N\u0327",\u00D3:"O\u0301",\u00D2:"O\u0300",\u00D6:"O\u0308",\u022A:"O\u0308\u0304",\u00D5:"O\u0303",\u1E4C:"O\u0303\u0301",\u1E4E:"O\u0303\u0308",\u022C:"O\u0303\u0304",\u014C:"O\u0304",\u1E52:"O\u0304\u0301",\u1E50:"O\u0304\u0300",\u014E:"O\u0306",\u01D1:"O\u030C",\u00D4:"O\u0302",\u1ED0:"O\u0302\u0301",\u1ED2:"O\u0302\u0300",\u1ED6:"O\u0302\u0303",\u022E:"O\u0307",\u0230:"O\u0307\u0304",\u0150:"O\u030B",\u1E54:"P\u0301",\u1E56:"P\u0307",\u0154:"R\u0301",\u0158:"R\u030C",\u1E58:"R\u0307",\u0156:"R\u0327",\u015A:"S\u0301",\u1E64:"S\u0301\u0307",\u0160:"S\u030C",\u1E66:"S\u030C\u0307",\u015C:"S\u0302",\u1E60:"S\u0307",\u015E:"S\u0327",\u0164:"T\u030C",\u1E6A:"T\u0307",\u0162:"T\u0327",\u00DA:"U\u0301",\u00D9:"U\u0300",\u00DC:"U\u0308",\u01D7:"U\u0308\u0301",\u01DB:"U\u0308\u0300",\u01D5:"U\u0308\u0304",\u01D9:"U\u0308\u030C",\u0168:"U\u0303",\u1E78:"U\u0303\u0301",\u016A:"U\u0304",\u1E7A:"U\u0304\u0308",\u016C:"U\u0306",\u01D3:"U\u030C",\u00DB:"U\u0302",\u016E:"U\u030A",\u0170:"U\u030B",\u1E7C:"V\u0303",\u1E82:"W\u0301",\u1E80:"W\u0300",\u1E84:"W\u0308",\u0174:"W\u0302",\u1E86:"W\u0307",\u1E8C:"X\u0308",\u1E8A:"X\u0307",\u00DD:"Y\u0301",\u1EF2:"Y\u0300",\u0178:"Y\u0308",\u1EF8:"Y\u0303",\u0232:"Y\u0304",\u0176:"Y\u0302",\u1E8E:"Y\u0307",\u0179:"Z\u0301",\u017D:"Z\u030C",\u1E90:"Z\u0302",\u017B:"Z\u0307",\u03AC:"\u03B1\u0301",\u1F70:"\u03B1\u0300",\u1FB1:"\u03B1\u0304",\u1FB0:"\u03B1\u0306",\u03AD:"\u03B5\u0301",\u1F72:"\u03B5\u0300",\u03AE:"\u03B7\u0301",\u1F74:"\u03B7\u0300",\u03AF:"\u03B9\u0301",\u1F76:"\u03B9\u0300",\u03CA:"\u03B9\u0308",\u0390:"\u03B9\u0308\u0301",\u1FD2:"\u03B9\u0308\u0300",\u1FD1:"\u03B9\u0304",\u1FD0:"\u03B9\u0306",\u03CC:"\u03BF\u0301",\u1F78:"\u03BF\u0300",\u03CD:"\u03C5\u0301",\u1F7A:"\u03C5\u0300",\u03CB:"\u03C5\u0308",\u03B0:"\u03C5\u0308\u0301",\u1FE2:"\u03C5\u0308\u0300",\u1FE1:"\u03C5\u0304",\u1FE0:"\u03C5\u0306",\u03CE:"\u03C9\u0301",\u1F7C:"\u03C9\u0300",\u038E:"\u03A5\u0301",\u1FEA:"\u03A5\u0300",\u03AB:"\u03A5\u0308",\u1FE9:"\u03A5\u0304",\u1FE8:"\u03A5\u0306",\u038F:"\u03A9\u0301",\u1FFA:"\u03A9\u0300"},S3=class t{static{o(this,"Parser")}constructor(e,r){this.mode=void 0,this.gullet=void 0,this.settings=void 0,this.leftrightDepth=void 0,this.nextToken=void 0,this.mode="math",this.gullet=new eA(e,r,this.mode),this.settings=r,this.leftrightDepth=0}expect(e,r){if(r===void 0&&(r=!0),this.fetch().text!==e)throw new gt("Expected '"+e+"', got '"+this.fetch().text+"'",this.fetch());r&&this.consume()}consume(){this.nextToken=null}fetch(){return this.nextToken==null&&(this.nextToken=this.gullet.expandNextToken()),this.nextToken}switchMode(e){this.mode=e,this.gullet.switchMode(e)}parse(){this.settings.globalGroup||this.gullet.beginGroup(),this.settings.colorIsTextColor&&this.gullet.macros.set("\\color","\\textcolor");try{var e=this.parseExpression(!1);return this.expect("EOF"),this.settings.globalGroup||this.gullet.endGroup(),e}finally{this.gullet.endGroups()}}subparse(e){var r=this.nextToken;this.consume(),this.gullet.pushToken(new _o("}")),this.gullet.pushTokens(e);var n=this.parseExpression(!1);return this.expect("}"),this.nextToken=r,n}parseExpression(e,r){for(var n=[];;){this.mode==="math"&&this.consumeSpaces();var i=this.fetch();if(t.endOfExpression.indexOf(i.text)!==-1||r&&i.text===r||e&&gh[i.text]&&gh[i.text].infix)break;var a=this.parseAtom(r);if(a){if(a.type==="internal")continue}else break;n.push(a)}return this.mode==="text"&&this.formLigatures(n),this.handleInfixNodes(n)}handleInfixNodes(e){for(var r=-1,n,i=0;i<e.length;i++)if(e[i].type==="infix"){if(r!==-1)throw new gt("only one infix operator per group",e[i].token);r=i,n=e[i].replaceWith}if(r!==-1&&n){var a,s,l=e.slice(0,r),u=e.slice(r+1);l.length===1&&l[0].type==="ordgroup"?a=l[0]:a={type:"ordgroup",mode:this.mode,body:l},u.length===1&&u[0].type==="ordgroup"?s=u[0]:s={type:"ordgroup",mode:this.mode,body:u};var h;return n==="\\\\abovefrac"?h=this.callFunction(n,[a,e[r],s],[]):h=this.callFunction(n,[a,s],[]),[h]}else return e}handleSupSubscript(e){var r=this.fetch(),n=r.text;this.consume(),this.consumeSpaces();var i;do{var a;i=this.parseGroup(e)}while(((a=i)==null?void 0:a.type)==="internal");if(!i)throw new gt("Expected group after '"+n+"'",r);return i}formatUnsupportedCmd(e){for(var r=[],n=0;n<e.length;n++)r.push({type:"textord",mode:"text",text:e[n]});var i={type:"text",mode:this.mode,body:r},a={type:"color",mode:this.mode,color:this.settings.errorColor,body:[i]};return a}parseAtom(e){var r=this.parseGroup("atom",e);if(r?.type==="internal"||this.mode==="text")return r;for(var n,i;;){this.consumeSpaces();var a=this.fetch();if(a.text==="\\limits"||a.text==="\\nolimits"){if(r&&r.type==="op"){var s=a.text==="\\limits";r.limits=s,r.alwaysHandleSupSub=!0}else if(r&&r.type==="operatorname")r.alwaysHandleSupSub&&(r.limits=a.text==="\\limits");else throw new gt("Limit controls must follow a math operator",a);this.consume()}else if(a.text==="^"){if(n)throw new gt("Double superscript",a);n=this.handleSupSubscript("superscript")}else if(a.text==="_"){if(i)throw new gt("Double subscript",a);i=this.handleSupSubscript("subscript")}else if(a.text==="'"){if(n)throw new gt("Double superscript",a);var l={type:"textord",mode:this.mode,text:"\\prime"},u=[l];for(this.consume();this.fetch().text==="'";)u.push(l),this.consume();this.fetch().text==="^"&&u.push(this.handleSupSubscript("superscript")),n={type:"ordgroup",mode:this.mode,body:u}}else if(g3[a.text]){var h=kz.test(a.text),f=[];for(f.push(new _o(g3[a.text])),this.consume();;){var d=this.fetch().text;if(!g3[d]||kz.test(d)!==h)break;f.unshift(new _o(g3[d])),this.consume()}var p=this.subparse(f);h?i={type:"ordgroup",mode:"math",body:p}:n={type:"ordgroup",mode:"math",body:p}}else break}return n||i?{type:"supsub",mode:this.mode,base:r,sup:n,sub:i}:r}parseFunction(e,r){var n=this.fetch(),i=n.text,a=gh[i];if(!a)return null;if(this.consume(),r&&r!=="atom"&&!a.allowedInArgument)throw new gt("Got function '"+i+"' with no arguments"+(r?" as "+r:""),n);if(this.mode==="text"&&!a.allowedInText)throw new gt("Can't use function '"+i+"' in text mode",n);if(this.mode==="math"&&a.allowedInMath===!1)throw new gt("Can't use function '"+i+"' in math mode",n);var{args:s,optArgs:l}=this.parseArguments(i,a);return this.callFunction(i,s,l,n,e)}callFunction(e,r,n,i,a){var s={funcName:e,parser:this,token:i,breakOnTokenText:a},l=gh[e];if(l&&l.handler)return l.handler(s,r,n);throw new gt("No function handler for "+e)}parseArguments(e,r){var n=r.numArgs+r.numOptionalArgs;if(n===0)return{args:[],optArgs:[]};for(var i=[],a=[],s=0;s<n;s++){var l=r.argTypes&&r.argTypes[s],u=s<r.numOptionalArgs;(r.primitive&&l==null||r.type==="sqrt"&&s===1&&a[0]==null)&&(l="primitive");var h=this.parseGroupOfType("argument to '"+e+"'",l,u);if(u)a.push(h);else if(h!=null)i.push(h);else throw new gt("Null argument, please report this as a bug")}return{args:i,optArgs:a}}parseGroupOfType(e,r,n){switch(r){case"color":return this.parseColorGroup(n);case"size":return this.parseSizeGroup(n);case"url":return this.parseUrlGroup(n);case"math":case"text":return this.parseArgumentGroup(n,r);case"hbox":{var i=this.parseArgumentGroup(n,"text");return i!=null?{type:"styling",mode:i.mode,body:[i],style:"text"}:null}case"raw":{var a=this.parseStringGroup("raw",n);return a!=null?{type:"raw",mode:"text",string:a.text}:null}case"primitive":{if(n)throw new gt("A primitive argument cannot be optional");var s=this.parseGroup(e);if(s==null)throw new gt("Expected group as "+e,this.fetch());return s}case"original":case null:case void 0:return this.parseArgumentGroup(n);default:throw new gt("Unknown group type as "+e,this.fetch())}}consumeSpaces(){for(;this.fetch().text===" ";)this.consume()}parseStringGroup(e,r){var n=this.gullet.scanArgument(r);if(n==null)return null;for(var i="",a;(a=this.fetch()).text!=="EOF";)i+=a.text,this.consume();return this.consume(),n.text=i,n}parseRegexGroup(e,r){for(var n=this.fetch(),i=n,a="",s;(s=this.fetch()).text!=="EOF"&&e.test(a+s.text);)i=s,a+=i.text,this.consume();if(a==="")throw new gt("Invalid "+r+": '"+n.text+"'",n);return n.range(i,a)}parseColorGroup(e){var r=this.parseStringGroup("color",e);if(r==null)return null;var n=/^(#[a-f0-9]{3}|#?[a-f0-9]{6}|[a-z]+)$/i.exec(r.text);if(!n)throw new gt("Invalid color: '"+r.text+"'",r);var i=n[0];return/^[0-9a-f]{6}$/i.test(i)&&(i="#"+i),{type:"color-token",mode:this.mode,color:i}}parseSizeGroup(e){var r,n=!1;if(this.gullet.consumeSpaces(),!e&&this.gullet.future().text!=="{"?r=this.parseRegexGroup(/^[-+]? *(?:$|\d+|\d+\.\d*|\.\d*) *[a-z]{0,2} *$/,"size"):r=this.parseStringGroup("size",e),!r)return null;!e&&r.text.length===0&&(r.text="0pt",n=!0);var i=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(r.text);if(!i)throw new gt("Invalid size: '"+r.text+"'",r);var a={number:+(i[1]+i[2]),unit:i[3]};if(!_z(a))throw new gt("Invalid unit: '"+a.unit+"'",r);return{type:"size",mode:this.mode,value:a,isBlank:n}}parseUrlGroup(e){this.gullet.lexer.setCatcode("%",13),this.gullet.lexer.setCatcode("~",12);var r=this.parseStringGroup("url",e);if(this.gullet.lexer.setCatcode("%",14),this.gullet.lexer.setCatcode("~",13),r==null)return null;var n=r.text.replace(/\\([#$%&~_^{}])/g,"$1");return{type:"url",mode:this.mode,url:n}}parseArgumentGroup(e,r){var n=this.gullet.scanArgument(e);if(n==null)return null;var i=this.mode;r&&this.switchMode(r),this.gullet.beginGroup();var a=this.parseExpression(!1,"EOF");this.expect("EOF"),this.gullet.endGroup();var s={type:"ordgroup",mode:this.mode,loc:n.loc,body:a};return r&&this.switchMode(i),s}parseGroup(e,r){var n=this.fetch(),i=n.text,a;if(i==="{"||i==="\\begingroup"){this.consume();var s=i==="{"?"}":"\\endgroup";this.gullet.beginGroup();var l=this.parseExpression(!1,s),u=this.fetch();this.expect(s),this.gullet.endGroup(),a={type:"ordgroup",mode:this.mode,loc:Zs.range(n,u),body:l,semisimple:i==="\\begingroup"||void 0}}else if(a=this.parseFunction(r,e)||this.parseSymbol(),a==null&&i[0]==="\\"&&!vV.hasOwnProperty(i)){if(this.settings.throwOnError)throw new gt("Undefined control sequence: "+i,n);a=this.formatUnsupportedCmd(i),this.consume()}return a}formLigatures(e){for(var r=e.length-1,n=0;n<r;++n){var i=e[n],a=i.text;a==="-"&&e[n+1].text==="-"&&(n+1<r&&e[n+2].text==="-"?(e.splice(n,3,{type:"textord",mode:"text",loc:Zs.range(i,e[n+2]),text:"---"}),r-=2):(e.splice(n,2,{type:"textord",mode:"text",loc:Zs.range(i,e[n+1]),text:"--"}),r-=1)),(a==="'"||a==="`")&&e[n+1].text===a&&(e.splice(n,2,{type:"textord",mode:"text",loc:Zs.range(i,e[n+1]),text:a+a}),r-=1)}}parseSymbol(){var e=this.fetch(),r=e.text;if(/^\\verb[^a-zA-Z]/.test(r)){this.consume();var n=r.slice(5),i=n.charAt(0)==="*";if(i&&(n=n.slice(1)),n.length<2||n.charAt(0)!==n.slice(-1))throw new gt(`\\verb assertion failed --
|
||
please report what input caused this bug`);return n=n.slice(1,-1),{type:"verb",mode:"text",body:n,star:i}}Ez.hasOwnProperty(r[0])&&!Ln[this.mode][r[0]]&&(this.settings.strict&&this.mode==="math"&&this.settings.reportNonstrict("unicodeTextInMathMode",'Accented Unicode text character "'+r[0]+'" used in math mode',e),r=Ez[r[0]]+r.slice(1));var a=s5e.exec(r);a&&(r=r.substring(0,a.index),r==="i"?r="\u0131":r==="j"&&(r="\u0237"));var s;if(Ln[this.mode][r]){this.settings.strict&&this.mode==="math"&&q7.indexOf(r)>=0&&this.settings.reportNonstrict("unicodeTextInMathMode",'Latin-1/Unicode text character "'+r[0]+'" used in math mode',e);var l=Ln[this.mode][r].group,u=Zs.range(e),h;if(J4e.hasOwnProperty(l)){var f=l;h={type:"atom",mode:this.mode,family:f,loc:u,text:r}}else h={type:l,mode:this.mode,loc:u,text:r};s=h}else if(r.charCodeAt(0)>=128)this.settings.strict&&(Cz(r.charCodeAt(0))?this.mode==="math"&&this.settings.reportNonstrict("unicodeTextInMathMode",'Unicode text character "'+r[0]+'" used in math mode',e):this.settings.reportNonstrict("unknownSymbol",'Unrecognized Unicode character "'+r[0]+'"'+(" ("+r.charCodeAt(0)+")"),e)),s={type:"textord",mode:"text",loc:Zs.range(e),text:r};else return null;if(this.consume(),a)for(var d=0;d<a[0].length;d++){var p=a[0][d];if(!V7[p])throw new gt("Unknown accent ' "+p+"'",e);var m=V7[p][this.mode]||V7[p].text;if(!m)throw new gt("Accent "+p+" unsupported in "+this.mode+" mode",e);s={type:"accent",mode:this.mode,loc:Zs.range(e),label:m,isStretchy:!1,isShifty:!0,base:s}}return s}};S3.endOfExpression=["}","\\endgroup","\\end","\\right","&"];yA=o(function(e,r){if(!(typeof e=="string"||e instanceof String))throw new TypeError("KaTeX can only parse string typed expression");var n=new S3(e,r);delete n.gullet.macros.current["\\df@tag"];var i=n.parse();if(delete n.gullet.macros.current["\\current@color"],delete n.gullet.macros.current["\\color"],n.gullet.macros.get("\\df@tag")){if(!r.displayMode)throw new gt("\\tag works only in display equations");i=[{type:"tag",mode:"text",body:i,tag:n.subparse([new _o("\\df@tag")])}]}return i},"parseTree"),vA=o(function(e,r,n){r.textContent="";var i=N3(e,n).toNode();r.appendChild(i)},"render");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."),vA=o(function(){throw new gt("KaTeX doesn't work in quirks mode.")},"render"));xV=o(function(e,r){var n=N3(e,r).toMarkup();return n},"renderToString"),bV=o(function(e,r){var n=new qy(r);return yA(e,n)},"generateParseTree"),TV=o(function(e,r,n){if(n.throwOnError||!(e instanceof gt))throw e;var i=Fe.makeSpan(["katex-error"],[new Ss(r)]);return i.setAttribute("title",e.toString()),i.setAttribute("style","color:"+n.errorColor),i},"renderError"),N3=o(function(e,r){var n=new qy(r);try{var i=yA(e,n);return T3e(i,e,n)}catch(a){return TV(a,e,n)}},"renderToDomTree"),wV=o(function(e,r){var n=new qy(r);try{var i=yA(e,n);return w3e(i,e,n)}catch(a){return TV(a,e,n)}},"renderToHTMLTree"),kV="0.16.22",EV={Span:cd,Anchor:Xy,SymbolNode:Ss,SvgNode:dl,PathNode:Ql,LineNode:jy},c5e={version:kV,render:vA,renderToString:xV,ParseError:gt,SETTINGS_SCHEMA:Hy,__parse:bV,__renderToDomTree:N3,__renderToHTMLTree:wV,__setFontMetrics:Az,__defineSymbol:z,__defineFunction:Rt,__defineMacro:ue,__domTree:EV}});function f5e(){let t="data-temp-href-target";ph.addHook("beforeSanitizeAttributes",e=>{e.tagName==="A"&&e.hasAttribute("target")&&e.setAttribute(t,e.getAttribute("target")??"")}),ph.addHook("afterSanitizeAttributes",e=>{e.tagName==="A"&&e.hasAttribute(t)&&(e.setAttribute("target",e.getAttribute(t)??""),e.removeAttribute(t),e.getAttribute("target")==="_blank"&&e.setAttribute("rel","noopener"))})}var hd,u5e,h5e,DV,AV,ar,d5e,p5e,m5e,g5e,LV,du,mr,y5e,v5e,tc,xA,x5e,b5e,_V,M3,xn,fd,T5e,bh,Je,dr=N(()=>{"use strict";D7();hd=/<br\s*\/?>/gi,u5e=o(t=>t?LV(t).replace(/\\n/g,"#br#").split("#br#"):[""],"getRows"),h5e=(()=>{let t=!1;return()=>{t||(f5e(),t=!0)}})();o(f5e,"setupDompurifyHooks");DV=o(t=>(h5e(),ph.sanitize(t)),"removeScript"),AV=o((t,e)=>{if(e.flowchart?.htmlLabels!==!1){let r=e.securityLevel;r==="antiscript"||r==="strict"?t=DV(t):r!=="loose"&&(t=LV(t),t=t.replace(/</g,"<").replace(/>/g,">"),t=t.replace(/=/g,"="),t=g5e(t))}return t},"sanitizeMore"),ar=o((t,e)=>t&&(e.dompurifyConfig?t=ph.sanitize(AV(t,e),e.dompurifyConfig).toString():t=ph.sanitize(AV(t,e),{FORBID_TAGS:["style"]}).toString(),t),"sanitizeText"),d5e=o((t,e)=>typeof t=="string"?ar(t,e):t.flat().map(r=>ar(r,e)),"sanitizeTextOrArray"),p5e=o(t=>hd.test(t),"hasBreaks"),m5e=o(t=>t.split(hd),"splitBreaks"),g5e=o(t=>t.replace(/#br#/g,"<br/>"),"placeholderToBreak"),LV=o(t=>t.replace(hd,"#br#"),"breakToPlaceholder"),du=o(t=>{let e="";return t&&(e=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,e=CSS.escape(e)),e},"getUrl"),mr=o(t=>!(t===!1||["false","null","0"].includes(String(t).trim().toLowerCase())),"evaluate"),y5e=o(function(...t){let e=t.filter(r=>!isNaN(r));return Math.max(...e)},"getMax"),v5e=o(function(...t){let e=t.filter(r=>!isNaN(r));return Math.min(...e)},"getMin"),tc=o(function(t){let e=t.split(/(,)/),r=[];for(let n=0;n<e.length;n++){let i=e[n];if(i===","&&n>0&&n+1<e.length){let a=e[n-1],s=e[n+1];x5e(a,s)&&(i=a+","+s,n++,r.pop())}r.push(b5e(i))}return r.join("")},"parseGenericTypes"),xA=o((t,e)=>Math.max(0,t.split(e).length-1),"countOccurrence"),x5e=o((t,e)=>{let r=xA(t,"~"),n=xA(e,"~");return r===1&&n===1},"shouldCombineSets"),b5e=o(t=>{let e=xA(t,"~"),r=!1;if(e<=1)return t;e%2!==0&&t.startsWith("~")&&(t=t.substring(1),r=!0);let n=[...t],i=n.indexOf("~"),a=n.lastIndexOf("~");for(;i!==-1&&a!==-1&&i!==a;)n[i]="<",n[a]=">",i=n.indexOf("~"),a=n.lastIndexOf("~");return r&&n.unshift("~"),n.join("")},"processSet"),_V=o(()=>window.MathMLElement!==void 0,"isMathMLSupported"),M3=/\$\$(.*)\$\$/g,xn=o(t=>(t.match(M3)?.length??0)>0,"hasKatex"),fd=o(async(t,e)=>{let r=document.createElement("div");r.innerHTML=await bh(t,e),r.id="katex-temp",r.style.visibility="hidden",r.style.position="absolute",r.style.top="0",document.querySelector("body")?.insertAdjacentElement("beforeend",r);let i={width:r.clientWidth,height:r.clientHeight};return r.remove(),i},"calculateMathMLDimensions"),T5e=o(async(t,e)=>{if(!xn(t))return t;if(!(_V()||e.legacyMathML||e.forceLegacyMathML))return t.replace(M3,"MathML is unsupported in this environment.");{let{default:r}=await Promise.resolve().then(()=>(CV(),SV)),n=e.forceLegacyMathML||!_V()&&e.legacyMathML?"htmlAndMathml":"mathml";return t.split(hd).map(i=>xn(i)?`<div style="display: flex; align-items: center; justify-content: center; white-space: nowrap;">${i}</div>`:`<div>${i}</div>`).join("").replace(M3,(i,a)=>r.renderToString(a,{throwOnError:!0,displayMode:!0,output:n}).replace(/\n/g," ").replace(/<annotation.*<\/annotation>/g,""))}return t.replace(M3,"Katex is not supported in @mermaid-js/tiny. Please use the full mermaid library.")},"renderKatexUnsanitized"),bh=o(async(t,e)=>ar(await T5e(t,e),e),"renderKatexSanitized"),Je={getRows:u5e,sanitizeText:ar,sanitizeTextOrArray:d5e,hasBreaks:p5e,splitBreaks:m5e,lineBreakRegex:hd,removeScript:DV,getUrl:du,evaluate:mr,getMax:y5e,getMin:v5e}});var TA,bA,RV,I3,NV,MV,As,rc=N(()=>{"use strict";$$();Wn();dr();pt();TA={body:'<g><rect width="80" height="80" style="fill: #087ebf; stroke-width: 0px;"/><text transform="translate(21.16 64.67)" style="fill: #fff; font-family: ArialMT, Arial; font-size: 67.75px;"><tspan x="0" y="0">?</tspan></text></g>',height:80,width:80},bA=new Map,RV=new Map,I3=o(t=>{for(let e of t){if(!e.name)throw new Error('Invalid icon loader. Must have a "name" property with non-empty string value.');if(X.debug("Registering icon pack:",e.name),"loader"in e)RV.set(e.name,e.loader);else if("icons"in e)bA.set(e.name,e.icons);else throw X.error("Invalid icon loader:",e),new Error('Invalid icon loader. Must have either "icons" or "loader" property.')}},"registerIconPacks"),NV=o(async(t,e)=>{let r=KC(t,!0,e!==void 0);if(!r)throw new Error(`Invalid icon name: ${t}`);let n=r.prefix||e;if(!n)throw new Error(`Icon name must contain a prefix: ${t}`);let i=bA.get(n);if(!i){let s=RV.get(n);if(!s)throw new Error(`Icon set not found: ${r.prefix}`);try{i={...await s(),prefix:n},bA.set(n,i)}catch(l){throw X.error(l),new Error(`Failed to load icon set: ${r.prefix}`)}}let a=ZC(i,r.name);if(!a)throw new Error(`Icon not found: ${t}`);return a},"getRegisteredIconData"),MV=o(async t=>{try{return await NV(t),!0}catch{return!1}},"isIconAvailable"),As=o(async(t,e,r)=>{let n;try{n=await NV(t,e?.fallbackPrefix)}catch(s){X.error(s),n=TA}let i=e7(n,e),a=r7(t7(i.body),{...i.attributes,...r});return ar(a,Qt())},"getIconSVG")});function O3(t){for(var e=[],r=1;r<arguments.length;r++)e[r-1]=arguments[r];var n=Array.from(typeof t=="string"?[t]:t);n[n.length-1]=n[n.length-1].replace(/\r?\n([\t ]*)$/,"");var i=n.reduce(function(l,u){var h=u.match(/\n([\t ]+|(?!\s).)/g);return h?l.concat(h.map(function(f){var d,p;return(p=(d=f.match(/[\t ]/g))===null||d===void 0?void 0:d.length)!==null&&p!==void 0?p:0})):l},[]);if(i.length){var a=new RegExp(`
|
||
[ ]{`+Math.min.apply(Math,i)+"}","g");n=n.map(function(l){return l.replace(a,`
|
||
`)})}n[0]=n[0].replace(/^\r?\n/,"");var s=n[0];return e.forEach(function(l,u){var h=s.match(/(?:^|\n)( *)$/),f=h?h[1]:"",d=l;typeof l=="string"&&l.includes(`
|
||
`)&&(d=String(l).split(`
|
||
`).map(function(p,m){return m===0?p:""+f+p}).join(`
|
||
`)),s+=d+n[u+1]}),s}var wA=N(()=>{"use strict";o(O3,"dedent")});var P3,dd,IV,B3=N(()=>{"use strict";P3=/^-{3}\s*[\n\r](.*?)[\n\r]-{3}\s*[\n\r]+/s,dd=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,IV=/\s*%%.*\n/gm});var k0,kA=N(()=>{"use strict";k0=class extends Error{static{o(this,"UnknownDiagramError")}constructor(e){super(e),this.name="UnknownDiagramError"}}});var pu,E0,Zy,EA,OV,pd=N(()=>{"use strict";pt();B3();kA();pu={},E0=o(function(t,e){t=t.replace(P3,"").replace(dd,"").replace(IV,`
|
||
`);for(let[r,{detector:n}]of Object.entries(pu))if(n(t,e))return r;throw new k0(`No diagram type detected matching given configuration for text: ${t}`)},"detectType"),Zy=o((...t)=>{for(let{id:e,detector:r,loader:n}of t)EA(e,r,n)},"registerLazyLoadedDiagrams"),EA=o((t,e,r)=>{pu[t]&&X.warn(`Detector with key ${t} already exists. Overwriting.`),pu[t]={detector:e,loader:r},X.debug(`Detector with key ${t} added${r?" with loader":""}`)},"addDetector"),OV=o(t=>pu[t].loader,"getDiagramLoader")});var Jy,PV,SA=N(()=>{"use strict";Jy=function(){var t=o(function(Ge,Ne,Me,be){for(Me=Me||{},be=Ge.length;be--;Me[Ge[be]]=Ne);return Me},"o"),e=[1,24],r=[1,25],n=[1,26],i=[1,27],a=[1,28],s=[1,63],l=[1,64],u=[1,65],h=[1,66],f=[1,67],d=[1,68],p=[1,69],m=[1,29],g=[1,30],y=[1,31],x=[1,32],v=[1,33],b=[1,34],T=[1,35],S=[1,36],w=[1,37],E=[1,38],_=[1,39],A=[1,40],D=[1,41],O=[1,42],R=[1,43],k=[1,44],L=[1,45],C=[1,46],I=[1,47],M=[1,48],P=[1,50],B=[1,51],F=[1,52],G=[1,53],$=[1,54],U=[1,55],K=[1,56],ne=[1,57],j=[1,58],le=[1,59],Z=[1,60],ce=[14,42],Q=[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],ee=[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],te=[1,82],re=[1,83],he=[1,84],J=[1,85],ye=[12,14,42],se=[12,14,33,42],Se=[12,14,33,42,76,77,79,80],W=[12,33],Oe=[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],ve={trace:o(function(){},"trace"),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:o(function(Ne,Me,be,q,fe,ae,oe){var V=ae.length-1;switch(fe){case 3:q.setDirection("TB");break;case 4:q.setDirection("BT");break;case 5:q.setDirection("RL");break;case 6:q.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:q.setC4Type(ae[V-3]);break;case 19:q.setTitle(ae[V].substring(6)),this.$=ae[V].substring(6);break;case 20:q.setAccDescription(ae[V].substring(15)),this.$=ae[V].substring(15);break;case 21:this.$=ae[V].trim(),q.setTitle(this.$);break;case 22:case 23:this.$=ae[V].trim(),q.setAccDescription(this.$);break;case 28:ae[V].splice(2,0,"ENTERPRISE"),q.addPersonOrSystemBoundary(...ae[V]),this.$=ae[V];break;case 29:ae[V].splice(2,0,"SYSTEM"),q.addPersonOrSystemBoundary(...ae[V]),this.$=ae[V];break;case 30:q.addPersonOrSystemBoundary(...ae[V]),this.$=ae[V];break;case 31:ae[V].splice(2,0,"CONTAINER"),q.addContainerBoundary(...ae[V]),this.$=ae[V];break;case 32:q.addDeploymentNode("node",...ae[V]),this.$=ae[V];break;case 33:q.addDeploymentNode("nodeL",...ae[V]),this.$=ae[V];break;case 34:q.addDeploymentNode("nodeR",...ae[V]),this.$=ae[V];break;case 35:q.popBoundaryParseStack();break;case 39:q.addPersonOrSystem("person",...ae[V]),this.$=ae[V];break;case 40:q.addPersonOrSystem("external_person",...ae[V]),this.$=ae[V];break;case 41:q.addPersonOrSystem("system",...ae[V]),this.$=ae[V];break;case 42:q.addPersonOrSystem("system_db",...ae[V]),this.$=ae[V];break;case 43:q.addPersonOrSystem("system_queue",...ae[V]),this.$=ae[V];break;case 44:q.addPersonOrSystem("external_system",...ae[V]),this.$=ae[V];break;case 45:q.addPersonOrSystem("external_system_db",...ae[V]),this.$=ae[V];break;case 46:q.addPersonOrSystem("external_system_queue",...ae[V]),this.$=ae[V];break;case 47:q.addContainer("container",...ae[V]),this.$=ae[V];break;case 48:q.addContainer("container_db",...ae[V]),this.$=ae[V];break;case 49:q.addContainer("container_queue",...ae[V]),this.$=ae[V];break;case 50:q.addContainer("external_container",...ae[V]),this.$=ae[V];break;case 51:q.addContainer("external_container_db",...ae[V]),this.$=ae[V];break;case 52:q.addContainer("external_container_queue",...ae[V]),this.$=ae[V];break;case 53:q.addComponent("component",...ae[V]),this.$=ae[V];break;case 54:q.addComponent("component_db",...ae[V]),this.$=ae[V];break;case 55:q.addComponent("component_queue",...ae[V]),this.$=ae[V];break;case 56:q.addComponent("external_component",...ae[V]),this.$=ae[V];break;case 57:q.addComponent("external_component_db",...ae[V]),this.$=ae[V];break;case 58:q.addComponent("external_component_queue",...ae[V]),this.$=ae[V];break;case 60:q.addRel("rel",...ae[V]),this.$=ae[V];break;case 61:q.addRel("birel",...ae[V]),this.$=ae[V];break;case 62:q.addRel("rel_u",...ae[V]),this.$=ae[V];break;case 63:q.addRel("rel_d",...ae[V]),this.$=ae[V];break;case 64:q.addRel("rel_l",...ae[V]),this.$=ae[V];break;case 65:q.addRel("rel_r",...ae[V]),this.$=ae[V];break;case 66:q.addRel("rel_b",...ae[V]),this.$=ae[V];break;case 67:ae[V].splice(0,1),q.addRel("rel",...ae[V]),this.$=ae[V];break;case 68:q.updateElStyle("update_el_style",...ae[V]),this.$=ae[V];break;case 69:q.updateRelStyle("update_rel_style",...ae[V]),this.$=ae[V];break;case 70:q.updateLayoutConfig("update_layout_config",...ae[V]),this.$=ae[V];break;case 71:this.$=[ae[V]];break;case 72:ae[V].unshift(ae[V-1]),this.$=ae[V];break;case 73:case 75:this.$=ae[V].trim();break;case 74:let xe={};xe[ae[V-1].trim()]=ae[V].trim(),this.$=xe;break;case 76:this.$="";break}},"anonymous"),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:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:x,48:v,49:b,50:T,51:S,52:w,53:E,54:_,55:A,56:D,57:O,58:R,59:k,60:L,61:C,62:I,63:M,64:P,65:B,66:F,67:G,68:$,69:U,70:K,71:ne,72:j,73:le,74:Z},{13:70,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:x,48:v,49:b,50:T,51:S,52:w,53:E,54:_,55:A,56:D,57:O,58:R,59:k,60:L,61:C,62:I,63:M,64:P,65:B,66:F,67:G,68:$,69:U,70:K,71:ne,72:j,73:le,74:Z},{13:71,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:x,48:v,49:b,50:T,51:S,52:w,53:E,54:_,55:A,56:D,57:O,58:R,59:k,60:L,61:C,62:I,63:M,64:P,65:B,66:F,67:G,68:$,69:U,70:K,71:ne,72:j,73:le,74:Z},{13:72,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:x,48:v,49:b,50:T,51:S,52:w,53:E,54:_,55:A,56:D,57:O,58:R,59:k,60:L,61:C,62:I,63:M,64:P,65:B,66:F,67:G,68:$,69:U,70:K,71:ne,72:j,73:le,74:Z},{13:73,19:20,20:21,21:22,22:e,23:r,24:n,26:i,28:a,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:x,48:v,49:b,50:T,51:S,52:w,53:E,54:_,55:A,56:D,57:O,58:R,59:k,60:L,61:C,62:I,63:M,64:P,65:B,66:F,67:G,68:$,69:U,70:K,71:ne,72:j,73:le,74:Z},{14:[1,74]},t(ce,[2,13],{43:23,29:49,30:61,32:62,20:75,34:s,36:l,37:u,38:h,39:f,40:d,41:p,44:m,45:g,46:y,47:x,48:v,49:b,50:T,51:S,52:w,53:E,54:_,55:A,56:D,57:O,58:R,59:k,60:L,61:C,62:I,63:M,64:P,65:B,66:F,67:G,68:$,69:U,70:K,71:ne,72:j,73:le,74:Z}),t(ce,[2,14]),t(Q,[2,16],{12:[1,76]}),t(ce,[2,36],{12:[1,77]}),t(ee,[2,19]),t(ee,[2,20]),{25:[1,78]},{27:[1,79]},t(ee,[2,23]),{35:80,75:81,76:te,77:re,79:he,80:J},{35:86,75:81,76:te,77:re,79:he,80:J},{35:87,75:81,76:te,77:re,79:he,80:J},{35:88,75:81,76:te,77:re,79:he,80:J},{35:89,75:81,76:te,77:re,79:he,80:J},{35:90,75:81,76:te,77:re,79:he,80:J},{35:91,75:81,76:te,77:re,79:he,80:J},{35:92,75:81,76:te,77:re,79:he,80:J},{35:93,75:81,76:te,77:re,79:he,80:J},{35:94,75:81,76:te,77:re,79:he,80:J},{35:95,75:81,76:te,77:re,79:he,80:J},{35:96,75:81,76:te,77:re,79:he,80:J},{35:97,75:81,76:te,77:re,79:he,80:J},{35:98,75:81,76:te,77:re,79:he,80:J},{35:99,75:81,76:te,77:re,79:he,80:J},{35:100,75:81,76:te,77:re,79:he,80:J},{35:101,75:81,76:te,77:re,79:he,80:J},{35:102,75:81,76:te,77:re,79:he,80:J},{35:103,75:81,76:te,77:re,79:he,80:J},{35:104,75:81,76:te,77:re,79:he,80:J},t(ye,[2,59]),{35:105,75:81,76:te,77:re,79:he,80:J},{35:106,75:81,76:te,77:re,79:he,80:J},{35:107,75:81,76:te,77:re,79:he,80:J},{35:108,75:81,76:te,77:re,79:he,80:J},{35:109,75:81,76:te,77:re,79:he,80:J},{35:110,75:81,76:te,77:re,79:he,80:J},{35:111,75:81,76:te,77:re,79:he,80:J},{35:112,75:81,76:te,77:re,79:he,80:J},{35:113,75:81,76:te,77:re,79:he,80:J},{35:114,75:81,76:te,77:re,79:he,80:J},{35:115,75:81,76:te,77:re,79:he,80:J},{20:116,29:49,30:61,32:62,34:s,36:l,37:u,38:h,39:f,40:d,41:p,43:23,44:m,45:g,46:y,47:x,48:v,49:b,50:T,51:S,52:w,53:E,54:_,55:A,56:D,57:O,58:R,59:k,60:L,61:C,62:I,63:M,64:P,65:B,66:F,67:G,68:$,69:U,70:K,71:ne,72:j,73:le,74:Z},{12:[1,118],33:[1,117]},{35:119,75:81,76:te,77:re,79:he,80:J},{35:120,75:81,76:te,77:re,79:he,80:J},{35:121,75:81,76:te,77:re,79:he,80:J},{35:122,75:81,76:te,77:re,79:he,80:J},{35:123,75:81,76:te,77:re,79:he,80:J},{35:124,75:81,76:te,77:re,79:he,80:J},{35:125,75:81,76:te,77:re,79:he,80:J},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},t(ce,[2,15]),t(Q,[2,17],{21:22,19:130,22:e,23:r,24:n,26:i,28:a}),t(ce,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:e,23:r,24:n,26:i,28:a,34:s,36:l,37:u,38:h,39:f,40:d,41:p,44:m,45:g,46:y,47:x,48:v,49:b,50:T,51:S,52:w,53:E,54:_,55:A,56:D,57:O,58:R,59:k,60:L,61:C,62:I,63:M,64:P,65:B,66:F,67:G,68:$,69:U,70:K,71:ne,72:j,73:le,74:Z}),t(ee,[2,21]),t(ee,[2,22]),t(ye,[2,39]),t(se,[2,71],{75:81,35:132,76:te,77:re,79:he,80:J}),t(Se,[2,73]),{78:[1,133]},t(Se,[2,75]),t(Se,[2,76]),t(ye,[2,40]),t(ye,[2,41]),t(ye,[2,42]),t(ye,[2,43]),t(ye,[2,44]),t(ye,[2,45]),t(ye,[2,46]),t(ye,[2,47]),t(ye,[2,48]),t(ye,[2,49]),t(ye,[2,50]),t(ye,[2,51]),t(ye,[2,52]),t(ye,[2,53]),t(ye,[2,54]),t(ye,[2,55]),t(ye,[2,56]),t(ye,[2,57]),t(ye,[2,58]),t(ye,[2,60]),t(ye,[2,61]),t(ye,[2,62]),t(ye,[2,63]),t(ye,[2,64]),t(ye,[2,65]),t(ye,[2,66]),t(ye,[2,67]),t(ye,[2,68]),t(ye,[2,69]),t(ye,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},t(W,[2,28]),t(W,[2,29]),t(W,[2,30]),t(W,[2,31]),t(W,[2,32]),t(W,[2,33]),t(W,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},t(Q,[2,18]),t(ce,[2,38]),t(se,[2,72]),t(Se,[2,74]),t(ye,[2,24]),t(ye,[2,35]),t(Oe,[2,25]),t(Oe,[2,26],{12:[1,138]}),t(Oe,[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:o(function(Ne,Me){if(Me.recoverable)this.trace(Ne);else{var be=new Error(Ne);throw be.hash=Me,be}},"parseError"),parse:o(function(Ne){var Me=this,be=[0],q=[],fe=[null],ae=[],oe=this.table,V="",xe=0,Y=0,de=0,me=2,Be=1,_e=ae.slice.call(arguments,1),Te=Object.create(this.lexer),Ue={yy:{}};for(var De in this.yy)Object.prototype.hasOwnProperty.call(this.yy,De)&&(Ue.yy[De]=this.yy[De]);Te.setInput(Ne,Ue.yy),Ue.yy.lexer=Te,Ue.yy.parser=this,typeof Te.yylloc>"u"&&(Te.yylloc={});var Qe=Te.yylloc;ae.push(Qe);var ot=Te.options&&Te.options.ranges;typeof Ue.yy.parseError=="function"?this.parseError=Ue.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Gt(at){be.length=be.length-2*at,fe.length=fe.length-at,ae.length=ae.length-at}o(Gt,"popStack");function Ze(){var at;return at=q.pop()||Te.lex()||Be,typeof at!="number"&&(at instanceof Array&&(q=at,at=q.pop()),at=Me.symbols_[at]||at),at}o(Ze,"lex");for(var Ve,ht,Ye,ct,Yt,Tt,Mt={},bt,ft,St,dt;;){if(Ye=be[be.length-1],this.defaultActions[Ye]?ct=this.defaultActions[Ye]:((Ve===null||typeof Ve>"u")&&(Ve=Ze()),ct=oe[Ye]&&oe[Ye][Ve]),typeof ct>"u"||!ct.length||!ct[0]){var vt="";dt=[];for(bt in oe[Ye])this.terminals_[bt]&&bt>me&&dt.push("'"+this.terminals_[bt]+"'");Te.showPosition?vt="Parse error on line "+(xe+1)+`:
|
||
`+Te.showPosition()+`
|
||
Expecting `+dt.join(", ")+", got '"+(this.terminals_[Ve]||Ve)+"'":vt="Parse error on line "+(xe+1)+": Unexpected "+(Ve==Be?"end of input":"'"+(this.terminals_[Ve]||Ve)+"'"),this.parseError(vt,{text:Te.match,token:this.terminals_[Ve]||Ve,line:Te.yylineno,loc:Qe,expected:dt})}if(ct[0]instanceof Array&&ct.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ye+", token: "+Ve);switch(ct[0]){case 1:be.push(Ve),fe.push(Te.yytext),ae.push(Te.yylloc),be.push(ct[1]),Ve=null,ht?(Ve=ht,ht=null):(Y=Te.yyleng,V=Te.yytext,xe=Te.yylineno,Qe=Te.yylloc,de>0&&de--);break;case 2:if(ft=this.productions_[ct[1]][1],Mt.$=fe[fe.length-ft],Mt._$={first_line:ae[ae.length-(ft||1)].first_line,last_line:ae[ae.length-1].last_line,first_column:ae[ae.length-(ft||1)].first_column,last_column:ae[ae.length-1].last_column},ot&&(Mt._$.range=[ae[ae.length-(ft||1)].range[0],ae[ae.length-1].range[1]]),Tt=this.performAction.apply(Mt,[V,Y,xe,Ue.yy,ct[1],fe,ae].concat(_e)),typeof Tt<"u")return Tt;ft&&(be=be.slice(0,-1*ft*2),fe=fe.slice(0,-1*ft),ae=ae.slice(0,-1*ft)),be.push(this.productions_[ct[1]][0]),fe.push(Mt.$),ae.push(Mt._$),St=oe[be[be.length-2]][be[be.length-1]],be.push(St);break;case 3:return!0}}return!0},"parse")},Pe=function(){var Ge={EOF:1,parseError:o(function(Me,be){if(this.yy.parser)this.yy.parser.parseError(Me,be);else throw new Error(Me)},"parseError"),setInput:o(function(Ne,Me){return this.yy=Me||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},"setInput"),input:o(function(){var Ne=this._input[0];this.yytext+=Ne,this.yyleng++,this.offset++,this.match+=Ne,this.matched+=Ne;var Me=Ne.match(/(?:\r\n?|\n).*/g);return Me?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Ne},"input"),unput:o(function(Ne){var Me=Ne.length,be=Ne.split(/(?:\r\n?|\n)/g);this._input=Ne+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Me),this.offset-=Me;var q=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 fe=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===q.length?this.yylloc.first_column:0)+q[q.length-be.length].length-be[0].length:this.yylloc.first_column-Me},this.options.ranges&&(this.yylloc.range=[fe[0],fe[0]+this.yyleng-Me]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(Ne){this.unput(this.match.slice(Ne))},"less"),pastInput:o(function(){var Ne=this.matched.substr(0,this.matched.length-this.match.length);return(Ne.length>20?"...":"")+Ne.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(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,"")},"upcomingInput"),showPosition:o(function(){var Ne=this.pastInput(),Me=new Array(Ne.length+1).join("-");return Ne+this.upcomingInput()+`
|
||
`+Me+"^"},"showPosition"),test_match:o(function(Ne,Me){var be,q,fe;if(this.options.backtrack_lexer&&(fe={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&&(fe.yylloc.range=this.yylloc.range.slice(0))),q=Ne[0].match(/(?:\r\n?|\n).*/g),q&&(this.yylineno+=q.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:q?q[q.length-1].length-q[q.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],be=this.performAction.call(this,this.yy,this,Me,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),be)return be;if(this._backtrack){for(var ae in fe)this[ae]=fe[ae];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Ne,Me,be,q;this._more||(this.yytext="",this.match="");for(var fe=this._currentRules(),ae=0;ae<fe.length;ae++)if(be=this._input.match(this.rules[fe[ae]]),be&&(!Me||be[0].length>Me[0].length)){if(Me=be,q=ae,this.options.backtrack_lexer){if(Ne=this.test_match(be,fe[ae]),Ne!==!1)return Ne;if(this._backtrack){Me=!1;continue}else return!1}else if(!this.options.flex)break}return Me?(Ne=this.test_match(Me,fe[q]),Ne!==!1?Ne:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var Me=this.next();return Me||this.lex()},"lex"),begin:o(function(Me){this.conditionStack.push(Me)},"begin"),popState:o(function(){var Me=this.conditionStack.length-1;return Me>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(Me){return Me=this.conditionStack.length-1-Math.abs(Me||0),Me>=0?this.conditionStack[Me]:"INITIAL"},"topState"),pushState:o(function(Me){this.begin(Me)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(Me,be,q,fe){var ae=fe;switch(q){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;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),26;break;case 9:return this.popState(),"acc_descr_value";break;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;break;case 23:return this.begin("person"),44;break;case 24:return this.begin("system_ext_queue"),51;break;case 25:return this.begin("system_ext_db"),50;break;case 26:return this.begin("system_ext"),49;break;case 27:return this.begin("system_queue"),48;break;case 28:return this.begin("system_db"),47;break;case 29:return this.begin("system"),46;break;case 30:return this.begin("boundary"),37;break;case 31:return this.begin("enterprise_boundary"),34;break;case 32:return this.begin("system_boundary"),36;break;case 33:return this.begin("container_ext_queue"),57;break;case 34:return this.begin("container_ext_db"),56;break;case 35:return this.begin("container_ext"),55;break;case 36:return this.begin("container_queue"),54;break;case 37:return this.begin("container_db"),53;break;case 38:return this.begin("container"),52;break;case 39:return this.begin("container_boundary"),38;break;case 40:return this.begin("component_ext_queue"),63;break;case 41:return this.begin("component_ext_db"),62;break;case 42:return this.begin("component_ext"),61;break;case 43:return this.begin("component_queue"),60;break;case 44:return this.begin("component_db"),59;break;case 45:return this.begin("component"),58;break;case 46:return this.begin("node"),39;break;case 47:return this.begin("node"),39;break;case 48:return this.begin("node_l"),40;break;case 49:return this.begin("node_r"),41;break;case 50:return this.begin("rel"),64;break;case 51:return this.begin("birel"),65;break;case 52:return this.begin("rel_u"),66;break;case 53:return this.begin("rel_u"),66;break;case 54:return this.begin("rel_d"),67;break;case 55:return this.begin("rel_d"),67;break;case 56:return this.begin("rel_l"),68;break;case 57:return this.begin("rel_l"),68;break;case 58:return this.begin("rel_r"),69;break;case 59:return this.begin("rel_r"),69;break;case 60:return this.begin("rel_b"),70;break;case 61:return this.begin("rel_index"),71;break;case 62:return this.begin("update_el_style"),72;break;case 63:return this.begin("update_rel_style"),73;break;case 64:return this.begin("update_layout_config"),74;break;case 65:return"EOF_IN_STRUCT";case 66:return this.begin("attribute"),"ATTRIBUTE_EMPTY";break;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";break;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}},"anonymous"),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 Ge}();ve.lexer=Pe;function qe(){this.yy={}}return o(qe,"Parser"),qe.prototype=ve,ve.Parser=qe,new qe}();Jy.parser=Jy;PV=Jy});var w5e,k5e,fn,nc,Ci=N(()=>{"use strict";pt();w5e=o(function(t,e){for(let r of e)t.attr(r[0],r[1])},"d3Attrs"),k5e=o(function(t,e,r){let n=new Map;return r?(n.set("width","100%"),n.set("style",`max-width: ${e}px;`)):(n.set("height",t),n.set("width",e)),n},"calculateSvgSizeAttrs"),fn=o(function(t,e,r,n){let i=k5e(e,r,n);w5e(t,i)},"configureSvgSize"),nc=o(function(t,e,r,n){let i=e.node().getBBox(),a=i.width,s=i.height;X.info(`SVG bounds: ${a}x${s}`,i);let l=0,u=0;X.info(`Graph bounds: ${l}x${u}`,t),l=a+r*2,u=s+r*2,X.info(`Calculated bounds: ${l}x${u}`),fn(e,u,l,n);let h=`${i.x-r} ${i.y-r} ${i.width+2*r} ${i.height+2*r}`;e.attr("viewBox",h)},"setupGraphViewbox")});var F3,E5e,BV,FV,CA=N(()=>{"use strict";pt();F3={},E5e=o((t,e,r)=>{let n="";return t in F3&&F3[t]?n=F3[t](r):X.warn(`No theme found for ${t}`),` & {
|
||
font-family: ${r.fontFamily};
|
||
font-size: ${r.fontSize};
|
||
fill: ${r.textColor}
|
||
}
|
||
@keyframes edge-animation-frame {
|
||
from {
|
||
stroke-dashoffset: 0;
|
||
}
|
||
}
|
||
@keyframes dash {
|
||
to {
|
||
stroke-dashoffset: 0;
|
||
}
|
||
}
|
||
& .edge-animation-slow {
|
||
stroke-dasharray: 9,5 !important;
|
||
stroke-dashoffset: 900;
|
||
animation: dash 50s linear infinite;
|
||
stroke-linecap: round;
|
||
}
|
||
& .edge-animation-fast {
|
||
stroke-dasharray: 9,5 !important;
|
||
stroke-dashoffset: 900;
|
||
animation: dash 20s linear infinite;
|
||
stroke-linecap: round;
|
||
}
|
||
/* Classes common for multiple diagrams */
|
||
|
||
& .error-icon {
|
||
fill: ${r.errorBkgColor};
|
||
}
|
||
& .error-text {
|
||
fill: ${r.errorTextColor};
|
||
stroke: ${r.errorTextColor};
|
||
}
|
||
|
||
& .edge-thickness-normal {
|
||
stroke-width: 1px;
|
||
}
|
||
& .edge-thickness-thick {
|
||
stroke-width: 3.5px
|
||
}
|
||
& .edge-pattern-solid {
|
||
stroke-dasharray: 0;
|
||
}
|
||
& .edge-thickness-invisible {
|
||
stroke-width: 0;
|
||
fill: none;
|
||
}
|
||
& .edge-pattern-dashed{
|
||
stroke-dasharray: 3;
|
||
}
|
||
.edge-pattern-dotted {
|
||
stroke-dasharray: 2;
|
||
}
|
||
|
||
& .marker {
|
||
fill: ${r.lineColor};
|
||
stroke: ${r.lineColor};
|
||
}
|
||
& .marker.cross {
|
||
stroke: ${r.lineColor};
|
||
}
|
||
|
||
& svg {
|
||
font-family: ${r.fontFamily};
|
||
font-size: ${r.fontSize};
|
||
}
|
||
& p {
|
||
margin: 0
|
||
}
|
||
|
||
${n}
|
||
|
||
${e}
|
||
`},"getStyles"),BV=o((t,e)=>{e!==void 0&&(F3[t]=e)},"addStylesForDiagram"),FV=E5e});var ev={};ur(ev,{clear:()=>wr,getAccDescription:()=>Lr,getAccTitle:()=>_r,getDiagramTitle:()=>Rr,setAccDescription:()=>Dr,setAccTitle:()=>Cr,setDiagramTitle:()=>Or});var AA,_A,DA,LA,wr,Cr,_r,Dr,Lr,Or,Rr,ui=N(()=>{"use strict";dr();Wn();AA="",_A="",DA="",LA=o(t=>ar(t,Qt()),"sanitizeText"),wr=o(()=>{AA="",DA="",_A=""},"clear"),Cr=o(t=>{AA=LA(t).replace(/^\s+/g,"")},"setAccTitle"),_r=o(()=>AA,"getAccTitle"),Dr=o(t=>{DA=LA(t).replace(/\n\s+/g,`
|
||
`)},"setAccDescription"),Lr=o(()=>DA,"getAccDescription"),Or=o(t=>{_A=LA(t)},"setDiagramTitle"),Rr=o(()=>_A,"getDiagramTitle")});var $V,S5e,ge,tv,G3,rv,NA,C5e,$3,md,nv,RA,Xt=N(()=>{"use strict";pd();pt();Wn();dr();Ci();CA();ui();$V=X,S5e=Ay,ge=Qt,tv=r3,G3=dh,rv=o(t=>ar(t,ge()),"sanitizeText"),NA=nc,C5e=o(()=>ev,"getCommonDb"),$3={},md=o((t,e,r)=>{$3[t]&&$V.warn(`Diagram with id ${t} already registered. Overwriting.`),$3[t]=e,r&&EA(t,r),BV(t,e.styles),e.injectUtils?.($V,S5e,ge,rv,NA,C5e(),()=>{})},"registerDiagram"),nv=o(t=>{if(t in $3)return $3[t];throw new RA(t)},"getDiagram"),RA=class extends Error{static{o(this,"DiagramNotFoundError")}constructor(e){super(`Diagram ${e} not found.`)}}});var ml,Th,ns,pl,ic,iv,MA,IA,z3,V3,GV,A5e,_5e,D5e,L5e,R5e,N5e,M5e,I5e,O5e,P5e,B5e,F5e,$5e,G5e,z5e,V5e,U5e,zV,H5e,W5e,VV,q5e,Y5e,X5e,j5e,wh,K5e,Q5e,Z5e,J5e,eTe,av,OA=N(()=>{"use strict";Xt();dr();ui();ml=[],Th=[""],ns="global",pl="",ic=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],iv=[],MA="",IA=!1,z3=4,V3=2,A5e=o(function(){return GV},"getC4Type"),_5e=o(function(t){GV=ar(t,ge())},"setC4Type"),D5e=o(function(t,e,r,n,i,a,s,l,u){if(t==null||e===void 0||e===null||r===void 0||r===null||n===void 0||n===null)return;let h={},f=iv.find(d=>d.from===e&&d.to===r);if(f?h=f:iv.push(h),h.type=t,h.from=e,h.to=r,h.label={text:n},i==null)h.techn={text:""};else if(typeof i=="object"){let[d,p]=Object.entries(i)[0];h[d]={text:p}}else h.techn={text:i};if(a==null)h.descr={text:""};else if(typeof a=="object"){let[d,p]=Object.entries(a)[0];h[d]={text:p}}else h.descr={text:a};if(typeof s=="object"){let[d,p]=Object.entries(s)[0];h[d]=p}else h.sprite=s;if(typeof l=="object"){let[d,p]=Object.entries(l)[0];h[d]=p}else h.tags=l;if(typeof u=="object"){let[d,p]=Object.entries(u)[0];h[d]=p}else h.link=u;h.wrap=wh()},"addRel"),L5e=o(function(t,e,r,n,i,a,s){if(e===null||r===null)return;let l={},u=ml.find(h=>h.alias===e);if(u&&e===u.alias?l=u:(l.alias=e,ml.push(l)),r==null?l.label={text:""}:l.label={text:r},n==null)l.descr={text:""};else if(typeof n=="object"){let[h,f]=Object.entries(n)[0];l[h]={text:f}}else l.descr={text:n};if(typeof i=="object"){let[h,f]=Object.entries(i)[0];l[h]=f}else l.sprite=i;if(typeof a=="object"){let[h,f]=Object.entries(a)[0];l[h]=f}else l.tags=a;if(typeof s=="object"){let[h,f]=Object.entries(s)[0];l[h]=f}else l.link=s;l.typeC4Shape={text:t},l.parentBoundary=ns,l.wrap=wh()},"addPersonOrSystem"),R5e=o(function(t,e,r,n,i,a,s,l){if(e===null||r===null)return;let u={},h=ml.find(f=>f.alias===e);if(h&&e===h.alias?u=h:(u.alias=e,ml.push(u)),r==null?u.label={text:""}:u.label={text:r},n==null)u.techn={text:""};else if(typeof n=="object"){let[f,d]=Object.entries(n)[0];u[f]={text:d}}else u.techn={text:n};if(i==null)u.descr={text:""};else if(typeof i=="object"){let[f,d]=Object.entries(i)[0];u[f]={text:d}}else u.descr={text:i};if(typeof a=="object"){let[f,d]=Object.entries(a)[0];u[f]=d}else u.sprite=a;if(typeof s=="object"){let[f,d]=Object.entries(s)[0];u[f]=d}else u.tags=s;if(typeof l=="object"){let[f,d]=Object.entries(l)[0];u[f]=d}else u.link=l;u.wrap=wh(),u.typeC4Shape={text:t},u.parentBoundary=ns},"addContainer"),N5e=o(function(t,e,r,n,i,a,s,l){if(e===null||r===null)return;let u={},h=ml.find(f=>f.alias===e);if(h&&e===h.alias?u=h:(u.alias=e,ml.push(u)),r==null?u.label={text:""}:u.label={text:r},n==null)u.techn={text:""};else if(typeof n=="object"){let[f,d]=Object.entries(n)[0];u[f]={text:d}}else u.techn={text:n};if(i==null)u.descr={text:""};else if(typeof i=="object"){let[f,d]=Object.entries(i)[0];u[f]={text:d}}else u.descr={text:i};if(typeof a=="object"){let[f,d]=Object.entries(a)[0];u[f]=d}else u.sprite=a;if(typeof s=="object"){let[f,d]=Object.entries(s)[0];u[f]=d}else u.tags=s;if(typeof l=="object"){let[f,d]=Object.entries(l)[0];u[f]=d}else u.link=l;u.wrap=wh(),u.typeC4Shape={text:t},u.parentBoundary=ns},"addComponent"),M5e=o(function(t,e,r,n,i){if(t===null||e===null)return;let a={},s=ic.find(l=>l.alias===t);if(s&&t===s.alias?a=s:(a.alias=t,ic.push(a)),e==null?a.label={text:""}:a.label={text:e},r==null)a.type={text:"system"};else if(typeof r=="object"){let[l,u]=Object.entries(r)[0];a[l]={text:u}}else a.type={text:r};if(typeof n=="object"){let[l,u]=Object.entries(n)[0];a[l]=u}else a.tags=n;if(typeof i=="object"){let[l,u]=Object.entries(i)[0];a[l]=u}else a.link=i;a.parentBoundary=ns,a.wrap=wh(),pl=ns,ns=t,Th.push(pl)},"addPersonOrSystemBoundary"),I5e=o(function(t,e,r,n,i){if(t===null||e===null)return;let a={},s=ic.find(l=>l.alias===t);if(s&&t===s.alias?a=s:(a.alias=t,ic.push(a)),e==null?a.label={text:""}:a.label={text:e},r==null)a.type={text:"container"};else if(typeof r=="object"){let[l,u]=Object.entries(r)[0];a[l]={text:u}}else a.type={text:r};if(typeof n=="object"){let[l,u]=Object.entries(n)[0];a[l]=u}else a.tags=n;if(typeof i=="object"){let[l,u]=Object.entries(i)[0];a[l]=u}else a.link=i;a.parentBoundary=ns,a.wrap=wh(),pl=ns,ns=t,Th.push(pl)},"addContainerBoundary"),O5e=o(function(t,e,r,n,i,a,s,l){if(e===null||r===null)return;let u={},h=ic.find(f=>f.alias===e);if(h&&e===h.alias?u=h:(u.alias=e,ic.push(u)),r==null?u.label={text:""}:u.label={text:r},n==null)u.type={text:"node"};else if(typeof n=="object"){let[f,d]=Object.entries(n)[0];u[f]={text:d}}else u.type={text:n};if(i==null)u.descr={text:""};else if(typeof i=="object"){let[f,d]=Object.entries(i)[0];u[f]={text:d}}else u.descr={text:i};if(typeof s=="object"){let[f,d]=Object.entries(s)[0];u[f]=d}else u.tags=s;if(typeof l=="object"){let[f,d]=Object.entries(l)[0];u[f]=d}else u.link=l;u.nodeType=t,u.parentBoundary=ns,u.wrap=wh(),pl=ns,ns=e,Th.push(pl)},"addDeploymentNode"),P5e=o(function(){ns=pl,Th.pop(),pl=Th.pop(),Th.push(pl)},"popBoundaryParseStack"),B5e=o(function(t,e,r,n,i,a,s,l,u,h,f){let d=ml.find(p=>p.alias===e);if(!(d===void 0&&(d=ic.find(p=>p.alias===e),d===void 0))){if(r!=null)if(typeof r=="object"){let[p,m]=Object.entries(r)[0];d[p]=m}else d.bgColor=r;if(n!=null)if(typeof n=="object"){let[p,m]=Object.entries(n)[0];d[p]=m}else d.fontColor=n;if(i!=null)if(typeof i=="object"){let[p,m]=Object.entries(i)[0];d[p]=m}else d.borderColor=i;if(a!=null)if(typeof a=="object"){let[p,m]=Object.entries(a)[0];d[p]=m}else d.shadowing=a;if(s!=null)if(typeof s=="object"){let[p,m]=Object.entries(s)[0];d[p]=m}else d.shape=s;if(l!=null)if(typeof l=="object"){let[p,m]=Object.entries(l)[0];d[p]=m}else d.sprite=l;if(u!=null)if(typeof u=="object"){let[p,m]=Object.entries(u)[0];d[p]=m}else d.techn=u;if(h!=null)if(typeof h=="object"){let[p,m]=Object.entries(h)[0];d[p]=m}else d.legendText=h;if(f!=null)if(typeof f=="object"){let[p,m]=Object.entries(f)[0];d[p]=m}else d.legendSprite=f}},"updateElStyle"),F5e=o(function(t,e,r,n,i,a,s){let l=iv.find(u=>u.from===e&&u.to===r);if(l!==void 0){if(n!=null)if(typeof n=="object"){let[u,h]=Object.entries(n)[0];l[u]=h}else l.textColor=n;if(i!=null)if(typeof i=="object"){let[u,h]=Object.entries(i)[0];l[u]=h}else l.lineColor=i;if(a!=null)if(typeof a=="object"){let[u,h]=Object.entries(a)[0];l[u]=parseInt(h)}else l.offsetX=parseInt(a);if(s!=null)if(typeof s=="object"){let[u,h]=Object.entries(s)[0];l[u]=parseInt(h)}else l.offsetY=parseInt(s)}},"updateRelStyle"),$5e=o(function(t,e,r){let n=z3,i=V3;if(typeof e=="object"){let a=Object.values(e)[0];n=parseInt(a)}else n=parseInt(e);if(typeof r=="object"){let a=Object.values(r)[0];i=parseInt(a)}else i=parseInt(r);n>=1&&(z3=n),i>=1&&(V3=i)},"updateLayoutConfig"),G5e=o(function(){return z3},"getC4ShapeInRow"),z5e=o(function(){return V3},"getC4BoundaryInRow"),V5e=o(function(){return ns},"getCurrentBoundaryParse"),U5e=o(function(){return pl},"getParentBoundaryParse"),zV=o(function(t){return t==null?ml:ml.filter(e=>e.parentBoundary===t)},"getC4ShapeArray"),H5e=o(function(t){return ml.find(e=>e.alias===t)},"getC4Shape"),W5e=o(function(t){return Object.keys(zV(t))},"getC4ShapeKeys"),VV=o(function(t){return t==null?ic:ic.filter(e=>e.parentBoundary===t)},"getBoundaries"),q5e=VV,Y5e=o(function(){return iv},"getRels"),X5e=o(function(){return MA},"getTitle"),j5e=o(function(t){IA=t},"setWrap"),wh=o(function(){return IA},"autoWrap"),K5e=o(function(){ml=[],ic=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],pl="",ns="global",Th=[""],iv=[],Th=[""],MA="",IA=!1,z3=4,V3=2},"clear"),Q5e={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},Z5e={FILLED:0,OPEN:1},J5e={LEFTOF:0,RIGHTOF:1,OVER:2},eTe=o(function(t){MA=ar(t,ge())},"setTitle"),av={addPersonOrSystem:L5e,addPersonOrSystemBoundary:M5e,addContainer:R5e,addContainerBoundary:I5e,addComponent:N5e,addDeploymentNode:O5e,popBoundaryParseStack:P5e,addRel:D5e,updateElStyle:B5e,updateRelStyle:F5e,updateLayoutConfig:$5e,autoWrap:wh,setWrap:j5e,getC4ShapeArray:zV,getC4Shape:H5e,getC4ShapeKeys:W5e,getBoundaries:VV,getBoundarys:q5e,getCurrentBoundaryParse:V5e,getParentBoundaryParse:U5e,getRels:Y5e,getTitle:X5e,getC4Type:A5e,getC4ShapeInRow:G5e,getC4BoundaryInRow:z5e,setAccTitle:Cr,getAccTitle:_r,getAccDescription:Lr,setAccDescription:Dr,getConfig:o(()=>ge().c4,"getConfig"),clear:K5e,LINETYPE:Q5e,ARROWTYPE:Z5e,PLACEMENT:J5e,setTitle:eTe,setC4Type:_5e}});function gd(t,e){return t==null||e==null?NaN:t<e?-1:t>e?1:t>=e?0:NaN}var PA=N(()=>{"use strict";o(gd,"ascending")});function BA(t,e){return t==null||e==null?NaN:e<t?-1:e>t?1:e>=t?0:NaN}var UV=N(()=>{"use strict";o(BA,"descending")});function yd(t){let e,r,n;t.length!==2?(e=gd,r=o((l,u)=>gd(t(l),u),"compare2"),n=o((l,u)=>t(l)-u,"delta")):(e=t===gd||t===BA?t:tTe,r=t,n=t);function i(l,u,h=0,f=l.length){if(h<f){if(e(u,u)!==0)return f;do{let d=h+f>>>1;r(l[d],u)<0?h=d+1:f=d}while(h<f)}return h}o(i,"left");function a(l,u,h=0,f=l.length){if(h<f){if(e(u,u)!==0)return f;do{let d=h+f>>>1;r(l[d],u)<=0?h=d+1:f=d}while(h<f)}return h}o(a,"right");function s(l,u,h=0,f=l.length){let d=i(l,u,h,f-1);return d>h&&n(l[d-1],u)>-n(l[d],u)?d-1:d}return o(s,"center"),{left:i,center:s,right:a}}function tTe(){return 0}var FA=N(()=>{"use strict";PA();UV();o(yd,"bisector");o(tTe,"zero")});function $A(t){return t===null?NaN:+t}var HV=N(()=>{"use strict";o($A,"number")});var WV,qV,rTe,nTe,GA,YV=N(()=>{"use strict";PA();FA();HV();WV=yd(gd),qV=WV.right,rTe=WV.left,nTe=yd($A).center,GA=qV});function XV({_intern:t,_key:e},r){let n=e(r);return t.has(n)?t.get(n):r}function iTe({_intern:t,_key:e},r){let n=e(r);return t.has(n)?t.get(n):(t.set(n,r),r)}function aTe({_intern:t,_key:e},r){let n=e(r);return t.has(n)&&(r=t.get(n),t.delete(n)),r}function sTe(t){return t!==null&&typeof t=="object"?t.valueOf():t}var S0,jV=N(()=>{"use strict";S0=class extends Map{static{o(this,"InternMap")}constructor(e,r=sTe){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:r}}),e!=null)for(let[n,i]of e)this.set(n,i)}get(e){return super.get(XV(this,e))}has(e){return super.has(XV(this,e))}set(e,r){return super.set(iTe(this,e),r)}delete(e){return super.delete(aTe(this,e))}};o(XV,"intern_get");o(iTe,"intern_set");o(aTe,"intern_delete");o(sTe,"keyof")});function U3(t,e,r){let n=(e-t)/Math.max(0,r),i=Math.floor(Math.log10(n)),a=n/Math.pow(10,i),s=a>=oTe?10:a>=lTe?5:a>=cTe?2:1,l,u,h;return i<0?(h=Math.pow(10,-i)/s,l=Math.round(t*h),u=Math.round(e*h),l/h<t&&++l,u/h>e&&--u,h=-h):(h=Math.pow(10,i)*s,l=Math.round(t/h),u=Math.round(e/h),l*h<t&&++l,u*h>e&&--u),u<l&&.5<=r&&r<2?U3(t,e,r*2):[l,u,h]}function H3(t,e,r){if(e=+e,t=+t,r=+r,!(r>0))return[];if(t===e)return[t];let n=e<t,[i,a,s]=n?U3(e,t,r):U3(t,e,r);if(!(a>=i))return[];let l=a-i+1,u=new Array(l);if(n)if(s<0)for(let h=0;h<l;++h)u[h]=(a-h)/-s;else for(let h=0;h<l;++h)u[h]=(a-h)*s;else if(s<0)for(let h=0;h<l;++h)u[h]=(i+h)/-s;else for(let h=0;h<l;++h)u[h]=(i+h)*s;return u}function sv(t,e,r){return e=+e,t=+t,r=+r,U3(t,e,r)[2]}function C0(t,e,r){e=+e,t=+t,r=+r;let n=e<t,i=n?sv(e,t,r):sv(t,e,r);return(n?-1:1)*(i<0?1/-i:i)}var oTe,lTe,cTe,KV=N(()=>{"use strict";oTe=Math.sqrt(50),lTe=Math.sqrt(10),cTe=Math.sqrt(2);o(U3,"tickSpec");o(H3,"ticks");o(sv,"tickIncrement");o(C0,"tickStep")});function W3(t,e){let r;if(e===void 0)for(let n of t)n!=null&&(r<n||r===void 0&&n>=n)&&(r=n);else{let n=-1;for(let i of t)(i=e(i,++n,t))!=null&&(r<i||r===void 0&&i>=i)&&(r=i)}return r}var QV=N(()=>{"use strict";o(W3,"max")});function q3(t,e){let r;if(e===void 0)for(let n of t)n!=null&&(r>n||r===void 0&&n>=n)&&(r=n);else{let n=-1;for(let i of t)(i=e(i,++n,t))!=null&&(r>i||r===void 0&&i>=i)&&(r=i)}return r}var ZV=N(()=>{"use strict";o(q3,"min")});function Y3(t,e,r){t=+t,e=+e,r=(i=arguments.length)<2?(e=t,t=0,1):i<3?1:+r;for(var n=-1,i=Math.max(0,Math.ceil((e-t)/r))|0,a=new Array(i);++n<i;)a[n]=t+n*r;return a}var JV=N(()=>{"use strict";o(Y3,"range")});var kh=N(()=>{"use strict";YV();FA();QV();ZV();JV();KV();jV()});function zA(t){return t}var eU=N(()=>{"use strict";o(zA,"default")});function uTe(t){return"translate("+t+",0)"}function hTe(t){return"translate(0,"+t+")"}function fTe(t){return e=>+t(e)}function dTe(t,e){return e=Math.max(0,t.bandwidth()-e*2)/2,t.round()&&(e=Math.round(e)),r=>+t(r)+e}function pTe(){return!this.__axis}function rU(t,e){var r=[],n=null,i=null,a=6,s=6,l=3,u=typeof window<"u"&&window.devicePixelRatio>1?0:.5,h=t===j3||t===X3?-1:1,f=t===X3||t===VA?"x":"y",d=t===j3||t===UA?uTe:hTe;function p(m){var g=n??(e.ticks?e.ticks.apply(e,r):e.domain()),y=i??(e.tickFormat?e.tickFormat.apply(e,r):zA),x=Math.max(a,0)+l,v=e.range(),b=+v[0]+u,T=+v[v.length-1]+u,S=(e.bandwidth?dTe:fTe)(e.copy(),u),w=m.selection?m.selection():m,E=w.selectAll(".domain").data([null]),_=w.selectAll(".tick").data(g,e).order(),A=_.exit(),D=_.enter().append("g").attr("class","tick"),O=_.select("line"),R=_.select("text");E=E.merge(E.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),_=_.merge(D),O=O.merge(D.append("line").attr("stroke","currentColor").attr(f+"2",h*a)),R=R.merge(D.append("text").attr("fill","currentColor").attr(f,h*x).attr("dy",t===j3?"0em":t===UA?"0.71em":"0.32em")),m!==w&&(E=E.transition(m),_=_.transition(m),O=O.transition(m),R=R.transition(m),A=A.transition(m).attr("opacity",tU).attr("transform",function(k){return isFinite(k=S(k))?d(k+u):this.getAttribute("transform")}),D.attr("opacity",tU).attr("transform",function(k){var L=this.parentNode.__axis;return d((L&&isFinite(L=L(k))?L:S(k))+u)})),A.remove(),E.attr("d",t===X3||t===VA?s?"M"+h*s+","+b+"H"+u+"V"+T+"H"+h*s:"M"+u+","+b+"V"+T:s?"M"+b+","+h*s+"V"+u+"H"+T+"V"+h*s:"M"+b+","+u+"H"+T),_.attr("opacity",1).attr("transform",function(k){return d(S(k)+u)}),O.attr(f+"2",h*a),R.attr(f,h*x).text(y),w.filter(pTe).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===VA?"start":t===X3?"end":"middle"),w.each(function(){this.__axis=S})}return o(p,"axis"),p.scale=function(m){return arguments.length?(e=m,p):e},p.ticks=function(){return r=Array.from(arguments),p},p.tickArguments=function(m){return arguments.length?(r=m==null?[]:Array.from(m),p):r.slice()},p.tickValues=function(m){return arguments.length?(n=m==null?null:Array.from(m),p):n&&n.slice()},p.tickFormat=function(m){return arguments.length?(i=m,p):i},p.tickSize=function(m){return arguments.length?(a=s=+m,p):a},p.tickSizeInner=function(m){return arguments.length?(a=+m,p):a},p.tickSizeOuter=function(m){return arguments.length?(s=+m,p):s},p.tickPadding=function(m){return arguments.length?(l=+m,p):l},p.offset=function(m){return arguments.length?(u=+m,p):u},p}function HA(t){return rU(j3,t)}function WA(t){return rU(UA,t)}var j3,VA,UA,X3,tU,nU=N(()=>{"use strict";eU();j3=1,VA=2,UA=3,X3=4,tU=1e-6;o(uTe,"translateX");o(hTe,"translateY");o(fTe,"number");o(dTe,"center");o(pTe,"entering");o(rU,"axis");o(HA,"axisTop");o(WA,"axisBottom")});var iU=N(()=>{"use strict";nU()});function sU(){for(var t=0,e=arguments.length,r={},n;t<e;++t){if(!(n=arguments[t]+"")||n in r||/[\s.]/.test(n))throw new Error("illegal type: "+n);r[n]=[]}return new K3(r)}function K3(t){this._=t}function gTe(t,e){return t.trim().split(/^|\s+/).map(function(r){var n="",i=r.indexOf(".");if(i>=0&&(n=r.slice(i+1),r=r.slice(0,i)),r&&!e.hasOwnProperty(r))throw new Error("unknown type: "+r);return{type:r,name:n}})}function yTe(t,e){for(var r=0,n=t.length,i;r<n;++r)if((i=t[r]).name===e)return i.value}function aU(t,e,r){for(var n=0,i=t.length;n<i;++n)if(t[n].name===e){t[n]=mTe,t=t.slice(0,n).concat(t.slice(n+1));break}return r!=null&&t.push({name:e,value:r}),t}var mTe,qA,oU=N(()=>{"use strict";mTe={value:o(()=>{},"value")};o(sU,"dispatch");o(K3,"Dispatch");o(gTe,"parseTypenames");K3.prototype=sU.prototype={constructor:K3,on:o(function(t,e){var r=this._,n=gTe(t+"",r),i,a=-1,s=n.length;if(arguments.length<2){for(;++a<s;)if((i=(t=n[a]).type)&&(i=yTe(r[i],t.name)))return i;return}if(e!=null&&typeof e!="function")throw new Error("invalid callback: "+e);for(;++a<s;)if(i=(t=n[a]).type)r[i]=aU(r[i],t.name,e);else if(e==null)for(i in r)r[i]=aU(r[i],t.name,null);return this},"on"),copy:o(function(){var t={},e=this._;for(var r in e)t[r]=e[r].slice();return new K3(t)},"copy"),call:o(function(t,e){if((i=arguments.length-2)>0)for(var r=new Array(i),n=0,i,a;n<i;++n)r[n]=arguments[n+2];if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(a=this._[t],n=0,i=a.length;n<i;++n)a[n].value.apply(e,r)},"call"),apply:o(function(t,e,r){if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(var n=this._[t],i=0,a=n.length;i<a;++i)n[i].value.apply(e,r)},"apply")};o(yTe,"get");o(aU,"set");qA=sU});var YA=N(()=>{"use strict";oU()});var Q3,XA,jA=N(()=>{"use strict";Q3="http://www.w3.org/1999/xhtml",XA={svg:"http://www.w3.org/2000/svg",xhtml:Q3,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"}});function ac(t){var e=t+="",r=e.indexOf(":");return r>=0&&(e=t.slice(0,r))!=="xmlns"&&(t=t.slice(r+1)),XA.hasOwnProperty(e)?{space:XA[e],local:t}:t}var Z3=N(()=>{"use strict";jA();o(ac,"default")});function vTe(t){return function(){var e=this.ownerDocument,r=this.namespaceURI;return r===Q3&&e.documentElement.namespaceURI===Q3?e.createElement(t):e.createElementNS(r,t)}}function xTe(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function ov(t){var e=ac(t);return(e.local?xTe:vTe)(e)}var KA=N(()=>{"use strict";Z3();jA();o(vTe,"creatorInherit");o(xTe,"creatorFixed");o(ov,"default")});function bTe(){}function Eh(t){return t==null?bTe:function(){return this.querySelector(t)}}var J3=N(()=>{"use strict";o(bTe,"none");o(Eh,"default")});function QA(t){typeof t!="function"&&(t=Eh(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i<r;++i)for(var a=e[i],s=a.length,l=n[i]=new Array(s),u,h,f=0;f<s;++f)(u=a[f])&&(h=t.call(u,u.__data__,f,a))&&("__data__"in u&&(h.__data__=u.__data__),l[f]=h);return new hi(n,this._parents)}var lU=N(()=>{"use strict";gl();J3();o(QA,"default")});function ZA(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}var cU=N(()=>{"use strict";o(ZA,"array")});function TTe(){return[]}function A0(t){return t==null?TTe:function(){return this.querySelectorAll(t)}}var JA=N(()=>{"use strict";o(TTe,"empty");o(A0,"default")});function wTe(t){return function(){return ZA(t.apply(this,arguments))}}function e8(t){typeof t=="function"?t=wTe(t):t=A0(t);for(var e=this._groups,r=e.length,n=[],i=[],a=0;a<r;++a)for(var s=e[a],l=s.length,u,h=0;h<l;++h)(u=s[h])&&(n.push(t.call(u,u.__data__,h,s)),i.push(u));return new hi(n,i)}var uU=N(()=>{"use strict";gl();cU();JA();o(wTe,"arrayAll");o(e8,"default")});function _0(t){return function(){return this.matches(t)}}function e5(t){return function(e){return e.matches(t)}}var lv=N(()=>{"use strict";o(_0,"default");o(e5,"childMatcher")});function ETe(t){return function(){return kTe.call(this.children,t)}}function STe(){return this.firstElementChild}function t8(t){return this.select(t==null?STe:ETe(typeof t=="function"?t:e5(t)))}var kTe,hU=N(()=>{"use strict";lv();kTe=Array.prototype.find;o(ETe,"childFind");o(STe,"childFirst");o(t8,"default")});function ATe(){return Array.from(this.children)}function _Te(t){return function(){return CTe.call(this.children,t)}}function r8(t){return this.selectAll(t==null?ATe:_Te(typeof t=="function"?t:e5(t)))}var CTe,fU=N(()=>{"use strict";lv();CTe=Array.prototype.filter;o(ATe,"children");o(_Te,"childrenFilter");o(r8,"default")});function n8(t){typeof t!="function"&&(t=_0(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i<r;++i)for(var a=e[i],s=a.length,l=n[i]=[],u,h=0;h<s;++h)(u=a[h])&&t.call(u,u.__data__,h,a)&&l.push(u);return new hi(n,this._parents)}var dU=N(()=>{"use strict";gl();lv();o(n8,"default")});function cv(t){return new Array(t.length)}var i8=N(()=>{"use strict";o(cv,"default")});function a8(){return new hi(this._enter||this._groups.map(cv),this._parents)}function uv(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}var s8=N(()=>{"use strict";i8();gl();o(a8,"default");o(uv,"EnterNode");uv.prototype={constructor:uv,appendChild:o(function(t){return this._parent.insertBefore(t,this._next)},"appendChild"),insertBefore:o(function(t,e){return this._parent.insertBefore(t,e)},"insertBefore"),querySelector:o(function(t){return this._parent.querySelector(t)},"querySelector"),querySelectorAll:o(function(t){return this._parent.querySelectorAll(t)},"querySelectorAll")}});function o8(t){return function(){return t}}var pU=N(()=>{"use strict";o(o8,"default")});function DTe(t,e,r,n,i,a){for(var s=0,l,u=e.length,h=a.length;s<h;++s)(l=e[s])?(l.__data__=a[s],n[s]=l):r[s]=new uv(t,a[s]);for(;s<u;++s)(l=e[s])&&(i[s]=l)}function LTe(t,e,r,n,i,a,s){var l,u,h=new Map,f=e.length,d=a.length,p=new Array(f),m;for(l=0;l<f;++l)(u=e[l])&&(p[l]=m=s.call(u,u.__data__,l,e)+"",h.has(m)?i[l]=u:h.set(m,u));for(l=0;l<d;++l)m=s.call(t,a[l],l,a)+"",(u=h.get(m))?(n[l]=u,u.__data__=a[l],h.delete(m)):r[l]=new uv(t,a[l]);for(l=0;l<f;++l)(u=e[l])&&h.get(p[l])===u&&(i[l]=u)}function RTe(t){return t.__data__}function l8(t,e){if(!arguments.length)return Array.from(this,RTe);var r=e?LTe:DTe,n=this._parents,i=this._groups;typeof t!="function"&&(t=o8(t));for(var a=i.length,s=new Array(a),l=new Array(a),u=new Array(a),h=0;h<a;++h){var f=n[h],d=i[h],p=d.length,m=NTe(t.call(f,f&&f.__data__,h,n)),g=m.length,y=l[h]=new Array(g),x=s[h]=new Array(g),v=u[h]=new Array(p);r(f,d,y,x,v,m,e);for(var b=0,T=0,S,w;b<g;++b)if(S=y[b]){for(b>=T&&(T=b+1);!(w=x[T])&&++T<g;);S._next=w||null}}return s=new hi(s,n),s._enter=l,s._exit=u,s}function NTe(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}var mU=N(()=>{"use strict";gl();s8();pU();o(DTe,"bindIndex");o(LTe,"bindKey");o(RTe,"datum");o(l8,"default");o(NTe,"arraylike")});function c8(){return new hi(this._exit||this._groups.map(cv),this._parents)}var gU=N(()=>{"use strict";i8();gl();o(c8,"default")});function u8(t,e,r){var n=this.enter(),i=this,a=this.exit();return typeof t=="function"?(n=t(n),n&&(n=n.selection())):n=n.append(t+""),e!=null&&(i=e(i),i&&(i=i.selection())),r==null?a.remove():r(a),n&&i?n.merge(i).order():i}var yU=N(()=>{"use strict";o(u8,"default")});function h8(t){for(var e=t.selection?t.selection():t,r=this._groups,n=e._groups,i=r.length,a=n.length,s=Math.min(i,a),l=new Array(i),u=0;u<s;++u)for(var h=r[u],f=n[u],d=h.length,p=l[u]=new Array(d),m,g=0;g<d;++g)(m=h[g]||f[g])&&(p[g]=m);for(;u<i;++u)l[u]=r[u];return new hi(l,this._parents)}var vU=N(()=>{"use strict";gl();o(h8,"default")});function f8(){for(var t=this._groups,e=-1,r=t.length;++e<r;)for(var n=t[e],i=n.length-1,a=n[i],s;--i>=0;)(s=n[i])&&(a&&s.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(s,a),a=s);return this}var xU=N(()=>{"use strict";o(f8,"default")});function d8(t){t||(t=MTe);function e(d,p){return d&&p?t(d.__data__,p.__data__):!d-!p}o(e,"compareNode");for(var r=this._groups,n=r.length,i=new Array(n),a=0;a<n;++a){for(var s=r[a],l=s.length,u=i[a]=new Array(l),h,f=0;f<l;++f)(h=s[f])&&(u[f]=h);u.sort(e)}return new hi(i,this._parents).order()}function MTe(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}var bU=N(()=>{"use strict";gl();o(d8,"default");o(MTe,"ascending")});function p8(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}var TU=N(()=>{"use strict";o(p8,"default")});function m8(){return Array.from(this)}var wU=N(()=>{"use strict";o(m8,"default")});function g8(){for(var t=this._groups,e=0,r=t.length;e<r;++e)for(var n=t[e],i=0,a=n.length;i<a;++i){var s=n[i];if(s)return s}return null}var kU=N(()=>{"use strict";o(g8,"default")});function y8(){let t=0;for(let e of this)++t;return t}var EU=N(()=>{"use strict";o(y8,"default")});function v8(){return!this.node()}var SU=N(()=>{"use strict";o(v8,"default")});function x8(t){for(var e=this._groups,r=0,n=e.length;r<n;++r)for(var i=e[r],a=0,s=i.length,l;a<s;++a)(l=i[a])&&t.call(l,l.__data__,a,i);return this}var CU=N(()=>{"use strict";o(x8,"default")});function ITe(t){return function(){this.removeAttribute(t)}}function OTe(t){return function(){this.removeAttributeNS(t.space,t.local)}}function PTe(t,e){return function(){this.setAttribute(t,e)}}function BTe(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function FTe(t,e){return function(){var r=e.apply(this,arguments);r==null?this.removeAttribute(t):this.setAttribute(t,r)}}function $Te(t,e){return function(){var r=e.apply(this,arguments);r==null?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,r)}}function b8(t,e){var r=ac(t);if(arguments.length<2){var n=this.node();return r.local?n.getAttributeNS(r.space,r.local):n.getAttribute(r)}return this.each((e==null?r.local?OTe:ITe:typeof e=="function"?r.local?$Te:FTe:r.local?BTe:PTe)(r,e))}var AU=N(()=>{"use strict";Z3();o(ITe,"attrRemove");o(OTe,"attrRemoveNS");o(PTe,"attrConstant");o(BTe,"attrConstantNS");o(FTe,"attrFunction");o($Te,"attrFunctionNS");o(b8,"default")});function hv(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}var T8=N(()=>{"use strict";o(hv,"default")});function GTe(t){return function(){this.style.removeProperty(t)}}function zTe(t,e,r){return function(){this.style.setProperty(t,e,r)}}function VTe(t,e,r){return function(){var n=e.apply(this,arguments);n==null?this.style.removeProperty(t):this.style.setProperty(t,n,r)}}function w8(t,e,r){return arguments.length>1?this.each((e==null?GTe:typeof e=="function"?VTe:zTe)(t,e,r??"")):Sh(this.node(),t)}function Sh(t,e){return t.style.getPropertyValue(e)||hv(t).getComputedStyle(t,null).getPropertyValue(e)}var k8=N(()=>{"use strict";T8();o(GTe,"styleRemove");o(zTe,"styleConstant");o(VTe,"styleFunction");o(w8,"default");o(Sh,"styleValue")});function UTe(t){return function(){delete this[t]}}function HTe(t,e){return function(){this[t]=e}}function WTe(t,e){return function(){var r=e.apply(this,arguments);r==null?delete this[t]:this[t]=r}}function E8(t,e){return arguments.length>1?this.each((e==null?UTe:typeof e=="function"?WTe:HTe)(t,e)):this.node()[t]}var _U=N(()=>{"use strict";o(UTe,"propertyRemove");o(HTe,"propertyConstant");o(WTe,"propertyFunction");o(E8,"default")});function DU(t){return t.trim().split(/^|\s+/)}function S8(t){return t.classList||new LU(t)}function LU(t){this._node=t,this._names=DU(t.getAttribute("class")||"")}function RU(t,e){for(var r=S8(t),n=-1,i=e.length;++n<i;)r.add(e[n])}function NU(t,e){for(var r=S8(t),n=-1,i=e.length;++n<i;)r.remove(e[n])}function qTe(t){return function(){RU(this,t)}}function YTe(t){return function(){NU(this,t)}}function XTe(t,e){return function(){(e.apply(this,arguments)?RU:NU)(this,t)}}function C8(t,e){var r=DU(t+"");if(arguments.length<2){for(var n=S8(this.node()),i=-1,a=r.length;++i<a;)if(!n.contains(r[i]))return!1;return!0}return this.each((typeof e=="function"?XTe:e?qTe:YTe)(r,e))}var MU=N(()=>{"use strict";o(DU,"classArray");o(S8,"classList");o(LU,"ClassList");LU.prototype={add:o(function(t){var e=this._names.indexOf(t);e<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},"add"),remove:o(function(t){var e=this._names.indexOf(t);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},"remove"),contains:o(function(t){return this._names.indexOf(t)>=0},"contains")};o(RU,"classedAdd");o(NU,"classedRemove");o(qTe,"classedTrue");o(YTe,"classedFalse");o(XTe,"classedFunction");o(C8,"default")});function jTe(){this.textContent=""}function KTe(t){return function(){this.textContent=t}}function QTe(t){return function(){var e=t.apply(this,arguments);this.textContent=e??""}}function A8(t){return arguments.length?this.each(t==null?jTe:(typeof t=="function"?QTe:KTe)(t)):this.node().textContent}var IU=N(()=>{"use strict";o(jTe,"textRemove");o(KTe,"textConstant");o(QTe,"textFunction");o(A8,"default")});function ZTe(){this.innerHTML=""}function JTe(t){return function(){this.innerHTML=t}}function ewe(t){return function(){var e=t.apply(this,arguments);this.innerHTML=e??""}}function _8(t){return arguments.length?this.each(t==null?ZTe:(typeof t=="function"?ewe:JTe)(t)):this.node().innerHTML}var OU=N(()=>{"use strict";o(ZTe,"htmlRemove");o(JTe,"htmlConstant");o(ewe,"htmlFunction");o(_8,"default")});function twe(){this.nextSibling&&this.parentNode.appendChild(this)}function D8(){return this.each(twe)}var PU=N(()=>{"use strict";o(twe,"raise");o(D8,"default")});function rwe(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function L8(){return this.each(rwe)}var BU=N(()=>{"use strict";o(rwe,"lower");o(L8,"default")});function R8(t){var e=typeof t=="function"?t:ov(t);return this.select(function(){return this.appendChild(e.apply(this,arguments))})}var FU=N(()=>{"use strict";KA();o(R8,"default")});function nwe(){return null}function N8(t,e){var r=typeof t=="function"?t:ov(t),n=e==null?nwe:typeof e=="function"?e:Eh(e);return this.select(function(){return this.insertBefore(r.apply(this,arguments),n.apply(this,arguments)||null)})}var $U=N(()=>{"use strict";KA();J3();o(nwe,"constantNull");o(N8,"default")});function iwe(){var t=this.parentNode;t&&t.removeChild(this)}function M8(){return this.each(iwe)}var GU=N(()=>{"use strict";o(iwe,"remove");o(M8,"default")});function awe(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function swe(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function I8(t){return this.select(t?swe:awe)}var zU=N(()=>{"use strict";o(awe,"selection_cloneShallow");o(swe,"selection_cloneDeep");o(I8,"default")});function O8(t){return arguments.length?this.property("__data__",t):this.node().__data__}var VU=N(()=>{"use strict";o(O8,"default")});function owe(t){return function(e){t.call(this,e,this.__data__)}}function lwe(t){return t.trim().split(/^|\s+/).map(function(e){var r="",n=e.indexOf(".");return n>=0&&(r=e.slice(n+1),e=e.slice(0,n)),{type:e,name:r}})}function cwe(t){return function(){var e=this.__on;if(e){for(var r=0,n=-1,i=e.length,a;r<i;++r)a=e[r],(!t.type||a.type===t.type)&&a.name===t.name?this.removeEventListener(a.type,a.listener,a.options):e[++n]=a;++n?e.length=n:delete this.__on}}}function uwe(t,e,r){return function(){var n=this.__on,i,a=owe(e);if(n){for(var s=0,l=n.length;s<l;++s)if((i=n[s]).type===t.type&&i.name===t.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=a,i.options=r),i.value=e;return}}this.addEventListener(t.type,a,r),i={type:t.type,name:t.name,value:e,listener:a,options:r},n?n.push(i):this.__on=[i]}}function P8(t,e,r){var n=lwe(t+""),i,a=n.length,s;if(arguments.length<2){var l=this.node().__on;if(l){for(var u=0,h=l.length,f;u<h;++u)for(i=0,f=l[u];i<a;++i)if((s=n[i]).type===f.type&&s.name===f.name)return f.value}return}for(l=e?uwe:cwe,i=0;i<a;++i)this.each(l(n[i],e,r));return this}var UU=N(()=>{"use strict";o(owe,"contextListener");o(lwe,"parseTypenames");o(cwe,"onRemove");o(uwe,"onAdd");o(P8,"default")});function HU(t,e,r){var n=hv(t),i=n.CustomEvent;typeof i=="function"?i=new i(e,r):(i=n.document.createEvent("Event"),r?(i.initEvent(e,r.bubbles,r.cancelable),i.detail=r.detail):i.initEvent(e,!1,!1)),t.dispatchEvent(i)}function hwe(t,e){return function(){return HU(this,t,e)}}function fwe(t,e){return function(){return HU(this,t,e.apply(this,arguments))}}function B8(t,e){return this.each((typeof e=="function"?fwe:hwe)(t,e))}var WU=N(()=>{"use strict";T8();o(HU,"dispatchEvent");o(hwe,"dispatchConstant");o(fwe,"dispatchFunction");o(B8,"default")});function*F8(){for(var t=this._groups,e=0,r=t.length;e<r;++e)for(var n=t[e],i=0,a=n.length,s;i<a;++i)(s=n[i])&&(yield s)}var qU=N(()=>{"use strict";o(F8,"default")});function hi(t,e){this._groups=t,this._parents=e}function YU(){return new hi([[document.documentElement]],$8)}function dwe(){return this}var $8,mu,gl=N(()=>{"use strict";lU();uU();hU();fU();dU();mU();s8();gU();yU();vU();xU();bU();TU();wU();kU();EU();SU();CU();AU();k8();_U();MU();IU();OU();PU();BU();FU();$U();GU();zU();VU();UU();WU();qU();$8=[null];o(hi,"Selection");o(YU,"selection");o(dwe,"selection_selection");hi.prototype=YU.prototype={constructor:hi,select:QA,selectAll:e8,selectChild:t8,selectChildren:r8,filter:n8,data:l8,enter:a8,exit:c8,join:u8,merge:h8,selection:dwe,order:f8,sort:d8,call:p8,nodes:m8,node:g8,size:y8,empty:v8,each:x8,attr:b8,style:w8,property:E8,classed:C8,text:A8,html:_8,raise:D8,lower:L8,append:R8,insert:N8,remove:M8,clone:I8,datum:O8,on:P8,dispatch:B8,[Symbol.iterator]:F8};mu=YU});function ze(t){return typeof t=="string"?new hi([[document.querySelector(t)]],[document.documentElement]):new hi([[t]],$8)}var XU=N(()=>{"use strict";gl();o(ze,"default")});var yl=N(()=>{"use strict";lv();Z3();XU();gl();J3();JA();k8()});var jU=N(()=>{"use strict"});function Ch(t,e,r){t.prototype=e.prototype=r,r.constructor=t}function D0(t,e){var r=Object.create(t.prototype);for(var n in e)r[n]=e[n];return r}var G8=N(()=>{"use strict";o(Ch,"default");o(D0,"extend")});function Ah(){}function QU(){return this.rgb().formatHex()}function Twe(){return this.rgb().formatHex8()}function wwe(){return iH(this).formatHsl()}function ZU(){return this.rgb().formatRgb()}function xl(t){var e,r;return t=(t+"").trim().toLowerCase(),(e=pwe.exec(t))?(r=e[1].length,e=parseInt(e[1],16),r===6?JU(e):r===3?new oa(e>>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1):r===8?t5(e>>24&255,e>>16&255,e>>8&255,(e&255)/255):r===4?t5(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|e&240,((e&15)<<4|e&15)/255):null):(e=mwe.exec(t))?new oa(e[1],e[2],e[3],1):(e=gwe.exec(t))?new oa(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=ywe.exec(t))?t5(e[1],e[2],e[3],e[4]):(e=vwe.exec(t))?t5(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=xwe.exec(t))?rH(e[1],e[2]/100,e[3]/100,1):(e=bwe.exec(t))?rH(e[1],e[2]/100,e[3]/100,e[4]):KU.hasOwnProperty(t)?JU(KU[t]):t==="transparent"?new oa(NaN,NaN,NaN,0):null}function JU(t){return new oa(t>>16&255,t>>8&255,t&255,1)}function t5(t,e,r,n){return n<=0&&(t=e=r=NaN),new oa(t,e,r,n)}function V8(t){return t instanceof Ah||(t=xl(t)),t?(t=t.rgb(),new oa(t.r,t.g,t.b,t.opacity)):new oa}function R0(t,e,r,n){return arguments.length===1?V8(t):new oa(t,e,r,n??1)}function oa(t,e,r,n){this.r=+t,this.g=+e,this.b=+r,this.opacity=+n}function eH(){return`#${vd(this.r)}${vd(this.g)}${vd(this.b)}`}function kwe(){return`#${vd(this.r)}${vd(this.g)}${vd(this.b)}${vd((isNaN(this.opacity)?1:this.opacity)*255)}`}function tH(){let t=i5(this.opacity);return`${t===1?"rgb(":"rgba("}${xd(this.r)}, ${xd(this.g)}, ${xd(this.b)}${t===1?")":`, ${t})`}`}function i5(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function xd(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function vd(t){return t=xd(t),(t<16?"0":"")+t.toString(16)}function rH(t,e,r,n){return n<=0?t=e=r=NaN:r<=0||r>=1?t=e=NaN:e<=0&&(t=NaN),new vl(t,e,r,n)}function iH(t){if(t instanceof vl)return new vl(t.h,t.s,t.l,t.opacity);if(t instanceof Ah||(t=xl(t)),!t)return new vl;if(t instanceof vl)return t;t=t.rgb();var e=t.r/255,r=t.g/255,n=t.b/255,i=Math.min(e,r,n),a=Math.max(e,r,n),s=NaN,l=a-i,u=(a+i)/2;return l?(e===a?s=(r-n)/l+(r<n)*6:r===a?s=(n-e)/l+2:s=(e-r)/l+4,l/=u<.5?a+i:2-a-i,s*=60):l=u>0&&u<1?0:s,new vl(s,l,u,t.opacity)}function aH(t,e,r,n){return arguments.length===1?iH(t):new vl(t,e,r,n??1)}function vl(t,e,r,n){this.h=+t,this.s=+e,this.l=+r,this.opacity=+n}function nH(t){return t=(t||0)%360,t<0?t+360:t}function r5(t){return Math.max(0,Math.min(1,t||0))}function z8(t,e,r){return(t<60?e+(r-e)*t/60:t<180?r:t<240?e+(r-e)*(240-t)/60:e)*255}var fv,n5,L0,dv,sc,pwe,mwe,gwe,ywe,vwe,xwe,bwe,KU,U8=N(()=>{"use strict";G8();o(Ah,"Color");fv=.7,n5=1/fv,L0="\\s*([+-]?\\d+)\\s*",dv="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",sc="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",pwe=/^#([0-9a-f]{3,8})$/,mwe=new RegExp(`^rgb\\(${L0},${L0},${L0}\\)$`),gwe=new RegExp(`^rgb\\(${sc},${sc},${sc}\\)$`),ywe=new RegExp(`^rgba\\(${L0},${L0},${L0},${dv}\\)$`),vwe=new RegExp(`^rgba\\(${sc},${sc},${sc},${dv}\\)$`),xwe=new RegExp(`^hsl\\(${dv},${sc},${sc}\\)$`),bwe=new RegExp(`^hsla\\(${dv},${sc},${sc},${dv}\\)$`),KU={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};Ch(Ah,xl,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:QU,formatHex:QU,formatHex8:Twe,formatHsl:wwe,formatRgb:ZU,toString:ZU});o(QU,"color_formatHex");o(Twe,"color_formatHex8");o(wwe,"color_formatHsl");o(ZU,"color_formatRgb");o(xl,"color");o(JU,"rgbn");o(t5,"rgba");o(V8,"rgbConvert");o(R0,"rgb");o(oa,"Rgb");Ch(oa,R0,D0(Ah,{brighter(t){return t=t==null?n5:Math.pow(n5,t),new oa(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?fv:Math.pow(fv,t),new oa(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new oa(xd(this.r),xd(this.g),xd(this.b),i5(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:eH,formatHex:eH,formatHex8:kwe,formatRgb:tH,toString:tH}));o(eH,"rgb_formatHex");o(kwe,"rgb_formatHex8");o(tH,"rgb_formatRgb");o(i5,"clampa");o(xd,"clampi");o(vd,"hex");o(rH,"hsla");o(iH,"hslConvert");o(aH,"hsl");o(vl,"Hsl");Ch(vl,aH,D0(Ah,{brighter(t){return t=t==null?n5:Math.pow(n5,t),new vl(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?fv:Math.pow(fv,t),new vl(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,e=isNaN(t)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*e,i=2*r-n;return new oa(z8(t>=240?t-240:t+120,i,n),z8(t,i,n),z8(t<120?t+240:t-120,i,n),this.opacity)},clamp(){return new vl(nH(this.h),r5(this.s),r5(this.l),i5(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let t=i5(this.opacity);return`${t===1?"hsl(":"hsla("}${nH(this.h)}, ${r5(this.s)*100}%, ${r5(this.l)*100}%${t===1?")":`, ${t})`}`}}));o(nH,"clamph");o(r5,"clampt");o(z8,"hsl2rgb")});var sH,oH,lH=N(()=>{"use strict";sH=Math.PI/180,oH=180/Math.PI});function pH(t){if(t instanceof oc)return new oc(t.l,t.a,t.b,t.opacity);if(t instanceof gu)return mH(t);t instanceof oa||(t=V8(t));var e=Y8(t.r),r=Y8(t.g),n=Y8(t.b),i=H8((.2225045*e+.7168786*r+.0606169*n)/uH),a,s;return e===r&&r===n?a=s=i:(a=H8((.4360747*e+.3850649*r+.1430804*n)/cH),s=H8((.0139322*e+.0971045*r+.7141733*n)/hH)),new oc(116*i-16,500*(a-i),200*(i-s),t.opacity)}function X8(t,e,r,n){return arguments.length===1?pH(t):new oc(t,e,r,n??1)}function oc(t,e,r,n){this.l=+t,this.a=+e,this.b=+r,this.opacity=+n}function H8(t){return t>Ewe?Math.pow(t,1/3):t/dH+fH}function W8(t){return t>N0?t*t*t:dH*(t-fH)}function q8(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function Y8(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Swe(t){if(t instanceof gu)return new gu(t.h,t.c,t.l,t.opacity);if(t instanceof oc||(t=pH(t)),t.a===0&&t.b===0)return new gu(NaN,0<t.l&&t.l<100?0:NaN,t.l,t.opacity);var e=Math.atan2(t.b,t.a)*oH;return new gu(e<0?e+360:e,Math.sqrt(t.a*t.a+t.b*t.b),t.l,t.opacity)}function pv(t,e,r,n){return arguments.length===1?Swe(t):new gu(t,e,r,n??1)}function gu(t,e,r,n){this.h=+t,this.c=+e,this.l=+r,this.opacity=+n}function mH(t){if(isNaN(t.h))return new oc(t.l,0,0,t.opacity);var e=t.h*sH;return new oc(t.l,Math.cos(e)*t.c,Math.sin(e)*t.c,t.opacity)}var a5,cH,uH,hH,fH,N0,dH,Ewe,gH=N(()=>{"use strict";G8();U8();lH();a5=18,cH=.96422,uH=1,hH=.82521,fH=4/29,N0=6/29,dH=3*N0*N0,Ewe=N0*N0*N0;o(pH,"labConvert");o(X8,"lab");o(oc,"Lab");Ch(oc,X8,D0(Ah,{brighter(t){return new oc(this.l+a5*(t??1),this.a,this.b,this.opacity)},darker(t){return new oc(this.l-a5*(t??1),this.a,this.b,this.opacity)},rgb(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,r=isNaN(this.b)?t:t-this.b/200;return e=cH*W8(e),t=uH*W8(t),r=hH*W8(r),new oa(q8(3.1338561*e-1.6168667*t-.4906146*r),q8(-.9787684*e+1.9161415*t+.033454*r),q8(.0719453*e-.2289914*t+1.4052427*r),this.opacity)}}));o(H8,"xyz2lab");o(W8,"lab2xyz");o(q8,"lrgb2rgb");o(Y8,"rgb2lrgb");o(Swe,"hclConvert");o(pv,"hcl");o(gu,"Hcl");o(mH,"hcl2lab");Ch(gu,pv,D0(Ah,{brighter(t){return new gu(this.h,this.c,this.l+a5*(t??1),this.opacity)},darker(t){return new gu(this.h,this.c,this.l-a5*(t??1),this.opacity)},rgb(){return mH(this).rgb()}}))});var M0=N(()=>{"use strict";U8();gH()});function j8(t,e,r,n,i){var a=t*t,s=a*t;return((1-3*t+3*a-s)*e+(4-6*a+3*s)*r+(1+3*t+3*a-3*s)*n+s*i)/6}function K8(t){var e=t.length-1;return function(r){var n=r<=0?r=0:r>=1?(r=1,e-1):Math.floor(r*e),i=t[n],a=t[n+1],s=n>0?t[n-1]:2*i-a,l=n<e-1?t[n+2]:2*a-i;return j8((r-n/e)*e,s,i,a,l)}}var Q8=N(()=>{"use strict";o(j8,"basis");o(K8,"default")});function Z8(t){var e=t.length;return function(r){var n=Math.floor(((r%=1)<0?++r:r)*e),i=t[(n+e-1)%e],a=t[n%e],s=t[(n+1)%e],l=t[(n+2)%e];return j8((r-n/e)*e,i,a,s,l)}}var yH=N(()=>{"use strict";Q8();o(Z8,"default")});var I0,J8=N(()=>{"use strict";I0=o(t=>()=>t,"default")});function vH(t,e){return function(r){return t+r*e}}function Cwe(t,e,r){return t=Math.pow(t,r),e=Math.pow(e,r)-t,r=1/r,function(n){return Math.pow(t+n*e,r)}}function xH(t,e){var r=e-t;return r?vH(t,r>180||r<-180?r-360*Math.round(r/360):r):I0(isNaN(t)?e:t)}function bH(t){return(t=+t)==1?yu:function(e,r){return r-e?Cwe(e,r,t):I0(isNaN(e)?r:e)}}function yu(t,e){var r=e-t;return r?vH(t,r):I0(isNaN(t)?e:t)}var e_=N(()=>{"use strict";J8();o(vH,"linear");o(Cwe,"exponential");o(xH,"hue");o(bH,"gamma");o(yu,"nogamma")});function TH(t){return function(e){var r=e.length,n=new Array(r),i=new Array(r),a=new Array(r),s,l;for(s=0;s<r;++s)l=R0(e[s]),n[s]=l.r||0,i[s]=l.g||0,a[s]=l.b||0;return n=t(n),i=t(i),a=t(a),l.opacity=1,function(u){return l.r=n(u),l.g=i(u),l.b=a(u),l+""}}}var bd,Awe,_we,t_=N(()=>{"use strict";M0();Q8();yH();e_();bd=o(function t(e){var r=bH(e);function n(i,a){var s=r((i=R0(i)).r,(a=R0(a)).r),l=r(i.g,a.g),u=r(i.b,a.b),h=yu(i.opacity,a.opacity);return function(f){return i.r=s(f),i.g=l(f),i.b=u(f),i.opacity=h(f),i+""}}return o(n,"rgb"),n.gamma=t,n},"rgbGamma")(1);o(TH,"rgbSpline");Awe=TH(K8),_we=TH(Z8)});function r_(t,e){e||(e=[]);var r=t?Math.min(e.length,t.length):0,n=e.slice(),i;return function(a){for(i=0;i<r;++i)n[i]=t[i]*(1-a)+e[i]*a;return n}}function wH(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}var kH=N(()=>{"use strict";o(r_,"default");o(wH,"isNumberArray")});function EH(t,e){var r=e?e.length:0,n=t?Math.min(r,t.length):0,i=new Array(n),a=new Array(r),s;for(s=0;s<n;++s)i[s]=_h(t[s],e[s]);for(;s<r;++s)a[s]=e[s];return function(l){for(s=0;s<n;++s)a[s]=i[s](l);return a}}var SH=N(()=>{"use strict";s5();o(EH,"genericArray")});function n_(t,e){var r=new Date;return t=+t,e=+e,function(n){return r.setTime(t*(1-n)+e*n),r}}var CH=N(()=>{"use strict";o(n_,"default")});function Yi(t,e){return t=+t,e=+e,function(r){return t*(1-r)+e*r}}var mv=N(()=>{"use strict";o(Yi,"default")});function i_(t,e){var r={},n={},i;(t===null||typeof t!="object")&&(t={}),(e===null||typeof e!="object")&&(e={});for(i in e)i in t?r[i]=_h(t[i],e[i]):n[i]=e[i];return function(a){for(i in r)n[i]=r[i](a);return n}}var AH=N(()=>{"use strict";s5();o(i_,"default")});function Dwe(t){return function(){return t}}function Lwe(t){return function(e){return t(e)+""}}function O0(t,e){var r=s_.lastIndex=a_.lastIndex=0,n,i,a,s=-1,l=[],u=[];for(t=t+"",e=e+"";(n=s_.exec(t))&&(i=a_.exec(e));)(a=i.index)>r&&(a=e.slice(r,a),l[s]?l[s]+=a:l[++s]=a),(n=n[0])===(i=i[0])?l[s]?l[s]+=i:l[++s]=i:(l[++s]=null,u.push({i:s,x:Yi(n,i)})),r=a_.lastIndex;return r<e.length&&(a=e.slice(r),l[s]?l[s]+=a:l[++s]=a),l.length<2?u[0]?Lwe(u[0].x):Dwe(e):(e=u.length,function(h){for(var f=0,d;f<e;++f)l[(d=u[f]).i]=d.x(h);return l.join("")})}var s_,a_,o_=N(()=>{"use strict";mv();s_=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,a_=new RegExp(s_.source,"g");o(Dwe,"zero");o(Lwe,"one");o(O0,"default")});function _h(t,e){var r=typeof e,n;return e==null||r==="boolean"?I0(e):(r==="number"?Yi:r==="string"?(n=xl(e))?(e=n,bd):O0:e instanceof xl?bd:e instanceof Date?n_:wH(e)?r_:Array.isArray(e)?EH:typeof e.valueOf!="function"&&typeof e.toString!="function"||isNaN(e)?i_:Yi)(t,e)}var s5=N(()=>{"use strict";M0();t_();SH();CH();mv();AH();o_();J8();kH();o(_h,"default")});function o5(t,e){return t=+t,e=+e,function(r){return Math.round(t*(1-r)+e*r)}}var _H=N(()=>{"use strict";o(o5,"default")});function c5(t,e,r,n,i,a){var s,l,u;return(s=Math.sqrt(t*t+e*e))&&(t/=s,e/=s),(u=t*r+e*n)&&(r-=t*u,n-=e*u),(l=Math.sqrt(r*r+n*n))&&(r/=l,n/=l,u/=l),t*n<e*r&&(t=-t,e=-e,u=-u,s=-s),{translateX:i,translateY:a,rotate:Math.atan2(e,t)*DH,skewX:Math.atan(u)*DH,scaleX:s,scaleY:l}}var DH,l5,LH=N(()=>{"use strict";DH=180/Math.PI,l5={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};o(c5,"default")});function RH(t){let e=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(t+"");return e.isIdentity?l5:c5(e.a,e.b,e.c,e.d,e.e,e.f)}function NH(t){return t==null?l5:(u5||(u5=document.createElementNS("http://www.w3.org/2000/svg","g")),u5.setAttribute("transform",t),(t=u5.transform.baseVal.consolidate())?(t=t.matrix,c5(t.a,t.b,t.c,t.d,t.e,t.f)):l5)}var u5,MH=N(()=>{"use strict";LH();o(RH,"parseCss");o(NH,"parseSvg")});function IH(t,e,r,n){function i(h){return h.length?h.pop()+" ":""}o(i,"pop");function a(h,f,d,p,m,g){if(h!==d||f!==p){var y=m.push("translate(",null,e,null,r);g.push({i:y-4,x:Yi(h,d)},{i:y-2,x:Yi(f,p)})}else(d||p)&&m.push("translate("+d+e+p+r)}o(a,"translate");function s(h,f,d,p){h!==f?(h-f>180?f+=360:f-h>180&&(h+=360),p.push({i:d.push(i(d)+"rotate(",null,n)-2,x:Yi(h,f)})):f&&d.push(i(d)+"rotate("+f+n)}o(s,"rotate");function l(h,f,d,p){h!==f?p.push({i:d.push(i(d)+"skewX(",null,n)-2,x:Yi(h,f)}):f&&d.push(i(d)+"skewX("+f+n)}o(l,"skewX");function u(h,f,d,p,m,g){if(h!==d||f!==p){var y=m.push(i(m)+"scale(",null,",",null,")");g.push({i:y-4,x:Yi(h,d)},{i:y-2,x:Yi(f,p)})}else(d!==1||p!==1)&&m.push(i(m)+"scale("+d+","+p+")")}return o(u,"scale"),function(h,f){var d=[],p=[];return h=t(h),f=t(f),a(h.translateX,h.translateY,f.translateX,f.translateY,d,p),s(h.rotate,f.rotate,d,p),l(h.skewX,f.skewX,d,p),u(h.scaleX,h.scaleY,f.scaleX,f.scaleY,d,p),h=f=null,function(m){for(var g=-1,y=p.length,x;++g<y;)d[(x=p[g]).i]=x.x(m);return d.join("")}}}var l_,c_,OH=N(()=>{"use strict";mv();MH();o(IH,"interpolateTransform");l_=IH(RH,"px, ","px)","deg)"),c_=IH(NH,", ",")",")")});function PH(t){return function(e,r){var n=t((e=pv(e)).h,(r=pv(r)).h),i=yu(e.c,r.c),a=yu(e.l,r.l),s=yu(e.opacity,r.opacity);return function(l){return e.h=n(l),e.c=i(l),e.l=a(l),e.opacity=s(l),e+""}}}var u_,Rwe,BH=N(()=>{"use strict";M0();e_();o(PH,"hcl");u_=PH(xH),Rwe=PH(yu)});var P0=N(()=>{"use strict";s5();mv();_H();o_();OH();t_();BH()});function Tv(){return Td||(GH(Nwe),Td=xv.now()+d5)}function Nwe(){Td=0}function bv(){this._call=this._time=this._next=null}function p5(t,e,r){var n=new bv;return n.restart(t,e,r),n}function zH(){Tv(),++B0;for(var t=h5,e;t;)(e=Td-t._time)>=0&&t._call.call(void 0,e),t=t._next;--B0}function FH(){Td=(f5=xv.now())+d5,B0=yv=0;try{zH()}finally{B0=0,Iwe(),Td=0}}function Mwe(){var t=xv.now(),e=t-f5;e>$H&&(d5-=e,f5=t)}function Iwe(){for(var t,e=h5,r,n=1/0;e;)e._call?(n>e._time&&(n=e._time),t=e,e=e._next):(r=e._next,e._next=null,e=t?t._next=r:h5=r);vv=t,h_(n)}function h_(t){if(!B0){yv&&(yv=clearTimeout(yv));var e=t-Td;e>24?(t<1/0&&(yv=setTimeout(FH,t-xv.now()-d5)),gv&&(gv=clearInterval(gv))):(gv||(f5=xv.now(),gv=setInterval(Mwe,$H)),B0=1,GH(FH))}}var B0,yv,gv,$H,h5,vv,f5,Td,d5,xv,GH,f_=N(()=>{"use strict";B0=0,yv=0,gv=0,$H=1e3,f5=0,Td=0,d5=0,xv=typeof performance=="object"&&performance.now?performance:Date,GH=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};o(Tv,"now");o(Nwe,"clearNow");o(bv,"Timer");bv.prototype=p5.prototype={constructor:bv,restart:o(function(t,e,r){if(typeof t!="function")throw new TypeError("callback is not a function");r=(r==null?Tv():+r)+(e==null?0:+e),!this._next&&vv!==this&&(vv?vv._next=this:h5=this,vv=this),this._call=t,this._time=r,h_()},"restart"),stop:o(function(){this._call&&(this._call=null,this._time=1/0,h_())},"stop")};o(p5,"timer");o(zH,"timerFlush");o(FH,"wake");o(Mwe,"poke");o(Iwe,"nap");o(h_,"sleep")});function wv(t,e,r){var n=new bv;return e=e==null?0:+e,n.restart(i=>{n.stop(),t(i+e)},e,r),n}var VH=N(()=>{"use strict";f_();o(wv,"default")});var m5=N(()=>{"use strict";f_();VH()});function vu(t,e,r,n,i,a){var s=t.__transition;if(!s)t.__transition={};else if(r in s)return;Bwe(t,r,{name:e,index:n,group:i,on:Owe,tween:Pwe,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:WH})}function Ev(t,e){var r=Bi(t,e);if(r.state>WH)throw new Error("too late; already scheduled");return r}function la(t,e){var r=Bi(t,e);if(r.state>g5)throw new Error("too late; already running");return r}function Bi(t,e){var r=t.__transition;if(!r||!(r=r[e]))throw new Error("transition not found");return r}function Bwe(t,e,r){var n=t.__transition,i;n[e]=r,r.timer=p5(a,0,r.time);function a(h){r.state=UH,r.timer.restart(s,r.delay,r.time),r.delay<=h&&s(h-r.delay)}o(a,"schedule");function s(h){var f,d,p,m;if(r.state!==UH)return u();for(f in n)if(m=n[f],m.name===r.name){if(m.state===g5)return wv(s);m.state===HH?(m.state=kv,m.timer.stop(),m.on.call("interrupt",t,t.__data__,m.index,m.group),delete n[f]):+f<e&&(m.state=kv,m.timer.stop(),m.on.call("cancel",t,t.__data__,m.index,m.group),delete n[f])}if(wv(function(){r.state===g5&&(r.state=HH,r.timer.restart(l,r.delay,r.time),l(h))}),r.state=y5,r.on.call("start",t,t.__data__,r.index,r.group),r.state===y5){for(r.state=g5,i=new Array(p=r.tween.length),f=0,d=-1;f<p;++f)(m=r.tween[f].value.call(t,t.__data__,r.index,r.group))&&(i[++d]=m);i.length=d+1}}o(s,"start");function l(h){for(var f=h<r.duration?r.ease.call(null,h/r.duration):(r.timer.restart(u),r.state=v5,1),d=-1,p=i.length;++d<p;)i[d].call(t,f);r.state===v5&&(r.on.call("end",t,t.__data__,r.index,r.group),u())}o(l,"tick");function u(){r.state=kv,r.timer.stop(),delete n[e];for(var h in n)return;delete t.__transition}o(u,"stop")}var Owe,Pwe,WH,UH,y5,g5,HH,v5,kv,_s=N(()=>{"use strict";YA();m5();Owe=qA("start","end","cancel","interrupt"),Pwe=[],WH=0,UH=1,y5=2,g5=3,HH=4,v5=5,kv=6;o(vu,"default");o(Ev,"init");o(la,"set");o(Bi,"get");o(Bwe,"create")});function Sv(t,e){var r=t.__transition,n,i,a=!0,s;if(r){e=e==null?null:e+"";for(s in r){if((n=r[s]).name!==e){a=!1;continue}i=n.state>y5&&n.state<v5,n.state=kv,n.timer.stop(),n.on.call(i?"interrupt":"cancel",t,t.__data__,n.index,n.group),delete r[s]}a&&delete t.__transition}}var qH=N(()=>{"use strict";_s();o(Sv,"default")});function d_(t){return this.each(function(){Sv(this,t)})}var YH=N(()=>{"use strict";qH();o(d_,"default")});function Fwe(t,e){var r,n;return function(){var i=la(this,t),a=i.tween;if(a!==r){n=r=a;for(var s=0,l=n.length;s<l;++s)if(n[s].name===e){n=n.slice(),n.splice(s,1);break}}i.tween=n}}function $we(t,e,r){var n,i;if(typeof r!="function")throw new Error;return function(){var a=la(this,t),s=a.tween;if(s!==n){i=(n=s).slice();for(var l={name:e,value:r},u=0,h=i.length;u<h;++u)if(i[u].name===e){i[u]=l;break}u===h&&i.push(l)}a.tween=i}}function p_(t,e){var r=this._id;if(t+="",arguments.length<2){for(var n=Bi(this.node(),r).tween,i=0,a=n.length,s;i<a;++i)if((s=n[i]).name===t)return s.value;return null}return this.each((e==null?Fwe:$we)(r,t,e))}function F0(t,e,r){var n=t._id;return t.each(function(){var i=la(this,n);(i.value||(i.value={}))[e]=r.apply(this,arguments)}),function(i){return Bi(i,n).value[e]}}var Cv=N(()=>{"use strict";_s();o(Fwe,"tweenRemove");o($we,"tweenFunction");o(p_,"default");o(F0,"tweenValue")});function Av(t,e){var r;return(typeof e=="number"?Yi:e instanceof xl?bd:(r=xl(e))?(e=r,bd):O0)(t,e)}var m_=N(()=>{"use strict";M0();P0();o(Av,"default")});function Gwe(t){return function(){this.removeAttribute(t)}}function zwe(t){return function(){this.removeAttributeNS(t.space,t.local)}}function Vwe(t,e,r){var n,i=r+"",a;return function(){var s=this.getAttribute(t);return s===i?null:s===n?a:a=e(n=s,r)}}function Uwe(t,e,r){var n,i=r+"",a;return function(){var s=this.getAttributeNS(t.space,t.local);return s===i?null:s===n?a:a=e(n=s,r)}}function Hwe(t,e,r){var n,i,a;return function(){var s,l=r(this),u;return l==null?void this.removeAttribute(t):(s=this.getAttribute(t),u=l+"",s===u?null:s===n&&u===i?a:(i=u,a=e(n=s,l)))}}function Wwe(t,e,r){var n,i,a;return function(){var s,l=r(this),u;return l==null?void this.removeAttributeNS(t.space,t.local):(s=this.getAttributeNS(t.space,t.local),u=l+"",s===u?null:s===n&&u===i?a:(i=u,a=e(n=s,l)))}}function g_(t,e){var r=ac(t),n=r==="transform"?c_:Av;return this.attrTween(t,typeof e=="function"?(r.local?Wwe:Hwe)(r,n,F0(this,"attr."+t,e)):e==null?(r.local?zwe:Gwe)(r):(r.local?Uwe:Vwe)(r,n,e))}var XH=N(()=>{"use strict";P0();yl();Cv();m_();o(Gwe,"attrRemove");o(zwe,"attrRemoveNS");o(Vwe,"attrConstant");o(Uwe,"attrConstantNS");o(Hwe,"attrFunction");o(Wwe,"attrFunctionNS");o(g_,"default")});function qwe(t,e){return function(r){this.setAttribute(t,e.call(this,r))}}function Ywe(t,e){return function(r){this.setAttributeNS(t.space,t.local,e.call(this,r))}}function Xwe(t,e){var r,n;function i(){var a=e.apply(this,arguments);return a!==n&&(r=(n=a)&&Ywe(t,a)),r}return o(i,"tween"),i._value=e,i}function jwe(t,e){var r,n;function i(){var a=e.apply(this,arguments);return a!==n&&(r=(n=a)&&qwe(t,a)),r}return o(i,"tween"),i._value=e,i}function y_(t,e){var r="attr."+t;if(arguments.length<2)return(r=this.tween(r))&&r._value;if(e==null)return this.tween(r,null);if(typeof e!="function")throw new Error;var n=ac(t);return this.tween(r,(n.local?Xwe:jwe)(n,e))}var jH=N(()=>{"use strict";yl();o(qwe,"attrInterpolate");o(Ywe,"attrInterpolateNS");o(Xwe,"attrTweenNS");o(jwe,"attrTween");o(y_,"default")});function Kwe(t,e){return function(){Ev(this,t).delay=+e.apply(this,arguments)}}function Qwe(t,e){return e=+e,function(){Ev(this,t).delay=e}}function v_(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?Kwe:Qwe)(e,t)):Bi(this.node(),e).delay}var KH=N(()=>{"use strict";_s();o(Kwe,"delayFunction");o(Qwe,"delayConstant");o(v_,"default")});function Zwe(t,e){return function(){la(this,t).duration=+e.apply(this,arguments)}}function Jwe(t,e){return e=+e,function(){la(this,t).duration=e}}function x_(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?Zwe:Jwe)(e,t)):Bi(this.node(),e).duration}var QH=N(()=>{"use strict";_s();o(Zwe,"durationFunction");o(Jwe,"durationConstant");o(x_,"default")});function eke(t,e){if(typeof e!="function")throw new Error;return function(){la(this,t).ease=e}}function b_(t){var e=this._id;return arguments.length?this.each(eke(e,t)):Bi(this.node(),e).ease}var ZH=N(()=>{"use strict";_s();o(eke,"easeConstant");o(b_,"default")});function tke(t,e){return function(){var r=e.apply(this,arguments);if(typeof r!="function")throw new Error;la(this,t).ease=r}}function T_(t){if(typeof t!="function")throw new Error;return this.each(tke(this._id,t))}var JH=N(()=>{"use strict";_s();o(tke,"easeVarying");o(T_,"default")});function w_(t){typeof t!="function"&&(t=_0(t));for(var e=this._groups,r=e.length,n=new Array(r),i=0;i<r;++i)for(var a=e[i],s=a.length,l=n[i]=[],u,h=0;h<s;++h)(u=a[h])&&t.call(u,u.__data__,h,a)&&l.push(u);return new is(n,this._parents,this._name,this._id)}var eW=N(()=>{"use strict";yl();wd();o(w_,"default")});function k_(t){if(t._id!==this._id)throw new Error;for(var e=this._groups,r=t._groups,n=e.length,i=r.length,a=Math.min(n,i),s=new Array(n),l=0;l<a;++l)for(var u=e[l],h=r[l],f=u.length,d=s[l]=new Array(f),p,m=0;m<f;++m)(p=u[m]||h[m])&&(d[m]=p);for(;l<n;++l)s[l]=e[l];return new is(s,this._parents,this._name,this._id)}var tW=N(()=>{"use strict";wd();o(k_,"default")});function rke(t){return(t+"").trim().split(/^|\s+/).every(function(e){var r=e.indexOf(".");return r>=0&&(e=e.slice(0,r)),!e||e==="start"})}function nke(t,e,r){var n,i,a=rke(e)?Ev:la;return function(){var s=a(this,t),l=s.on;l!==n&&(i=(n=l).copy()).on(e,r),s.on=i}}function E_(t,e){var r=this._id;return arguments.length<2?Bi(this.node(),r).on.on(t):this.each(nke(r,t,e))}var rW=N(()=>{"use strict";_s();o(rke,"start");o(nke,"onFunction");o(E_,"default")});function ike(t){return function(){var e=this.parentNode;for(var r in this.__transition)if(+r!==t)return;e&&e.removeChild(this)}}function S_(){return this.on("end.remove",ike(this._id))}var nW=N(()=>{"use strict";o(ike,"removeFunction");o(S_,"default")});function C_(t){var e=this._name,r=this._id;typeof t!="function"&&(t=Eh(t));for(var n=this._groups,i=n.length,a=new Array(i),s=0;s<i;++s)for(var l=n[s],u=l.length,h=a[s]=new Array(u),f,d,p=0;p<u;++p)(f=l[p])&&(d=t.call(f,f.__data__,p,l))&&("__data__"in f&&(d.__data__=f.__data__),h[p]=d,vu(h[p],e,r,p,h,Bi(f,r)));return new is(a,this._parents,e,r)}var iW=N(()=>{"use strict";yl();wd();_s();o(C_,"default")});function A_(t){var e=this._name,r=this._id;typeof t!="function"&&(t=A0(t));for(var n=this._groups,i=n.length,a=[],s=[],l=0;l<i;++l)for(var u=n[l],h=u.length,f,d=0;d<h;++d)if(f=u[d]){for(var p=t.call(f,f.__data__,d,u),m,g=Bi(f,r),y=0,x=p.length;y<x;++y)(m=p[y])&&vu(m,e,r,y,p,g);a.push(p),s.push(f)}return new is(a,s,e,r)}var aW=N(()=>{"use strict";yl();wd();_s();o(A_,"default")});function __(){return new ake(this._groups,this._parents)}var ake,sW=N(()=>{"use strict";yl();ake=mu.prototype.constructor;o(__,"default")});function ske(t,e){var r,n,i;return function(){var a=Sh(this,t),s=(this.style.removeProperty(t),Sh(this,t));return a===s?null:a===r&&s===n?i:i=e(r=a,n=s)}}function oW(t){return function(){this.style.removeProperty(t)}}function oke(t,e,r){var n,i=r+"",a;return function(){var s=Sh(this,t);return s===i?null:s===n?a:a=e(n=s,r)}}function lke(t,e,r){var n,i,a;return function(){var s=Sh(this,t),l=r(this),u=l+"";return l==null&&(u=l=(this.style.removeProperty(t),Sh(this,t))),s===u?null:s===n&&u===i?a:(i=u,a=e(n=s,l))}}function cke(t,e){var r,n,i,a="style."+e,s="end."+a,l;return function(){var u=la(this,t),h=u.on,f=u.value[a]==null?l||(l=oW(e)):void 0;(h!==r||i!==f)&&(n=(r=h).copy()).on(s,i=f),u.on=n}}function D_(t,e,r){var n=(t+="")=="transform"?l_:Av;return e==null?this.styleTween(t,ske(t,n)).on("end.style."+t,oW(t)):typeof e=="function"?this.styleTween(t,lke(t,n,F0(this,"style."+t,e))).each(cke(this._id,t)):this.styleTween(t,oke(t,n,e),r).on("end.style."+t,null)}var lW=N(()=>{"use strict";P0();yl();_s();Cv();m_();o(ske,"styleNull");o(oW,"styleRemove");o(oke,"styleConstant");o(lke,"styleFunction");o(cke,"styleMaybeRemove");o(D_,"default")});function uke(t,e,r){return function(n){this.style.setProperty(t,e.call(this,n),r)}}function hke(t,e,r){var n,i;function a(){var s=e.apply(this,arguments);return s!==i&&(n=(i=s)&&uke(t,s,r)),n}return o(a,"tween"),a._value=e,a}function L_(t,e,r){var n="style."+(t+="");if(arguments.length<2)return(n=this.tween(n))&&n._value;if(e==null)return this.tween(n,null);if(typeof e!="function")throw new Error;return this.tween(n,hke(t,e,r??""))}var cW=N(()=>{"use strict";o(uke,"styleInterpolate");o(hke,"styleTween");o(L_,"default")});function fke(t){return function(){this.textContent=t}}function dke(t){return function(){var e=t(this);this.textContent=e??""}}function R_(t){return this.tween("text",typeof t=="function"?dke(F0(this,"text",t)):fke(t==null?"":t+""))}var uW=N(()=>{"use strict";Cv();o(fke,"textConstant");o(dke,"textFunction");o(R_,"default")});function pke(t){return function(e){this.textContent=t.call(this,e)}}function mke(t){var e,r;function n(){var i=t.apply(this,arguments);return i!==r&&(e=(r=i)&&pke(i)),e}return o(n,"tween"),n._value=t,n}function N_(t){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(t==null)return this.tween(e,null);if(typeof t!="function")throw new Error;return this.tween(e,mke(t))}var hW=N(()=>{"use strict";o(pke,"textInterpolate");o(mke,"textTween");o(N_,"default")});function M_(){for(var t=this._name,e=this._id,r=x5(),n=this._groups,i=n.length,a=0;a<i;++a)for(var s=n[a],l=s.length,u,h=0;h<l;++h)if(u=s[h]){var f=Bi(u,e);vu(u,t,r,h,s,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new is(n,this._parents,t,r)}var fW=N(()=>{"use strict";wd();_s();o(M_,"default")});function I_(){var t,e,r=this,n=r._id,i=r.size();return new Promise(function(a,s){var l={value:s},u={value:o(function(){--i===0&&a()},"value")};r.each(function(){var h=la(this,n),f=h.on;f!==t&&(e=(t=f).copy(),e._.cancel.push(l),e._.interrupt.push(l),e._.end.push(u)),h.on=e}),i===0&&a()})}var dW=N(()=>{"use strict";_s();o(I_,"default")});function is(t,e,r,n){this._groups=t,this._parents=e,this._name=r,this._id=n}function pW(t){return mu().transition(t)}function x5(){return++gke}var gke,xu,wd=N(()=>{"use strict";yl();XH();jH();KH();QH();ZH();JH();eW();tW();rW();nW();iW();aW();sW();lW();cW();uW();hW();fW();Cv();dW();gke=0;o(is,"Transition");o(pW,"transition");o(x5,"newId");xu=mu.prototype;is.prototype=pW.prototype={constructor:is,select:C_,selectAll:A_,selectChild:xu.selectChild,selectChildren:xu.selectChildren,filter:w_,merge:k_,selection:__,transition:M_,call:xu.call,nodes:xu.nodes,node:xu.node,size:xu.size,empty:xu.empty,each:xu.each,on:E_,attr:g_,attrTween:y_,style:D_,styleTween:L_,text:R_,textTween:N_,remove:S_,tween:p_,delay:v_,duration:x_,ease:b_,easeVarying:T_,end:I_,[Symbol.iterator]:xu[Symbol.iterator]}});function b5(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var mW=N(()=>{"use strict";o(b5,"cubicInOut")});var O_=N(()=>{"use strict";mW()});function vke(t,e){for(var r;!(r=t.__transition)||!(r=r[e]);)if(!(t=t.parentNode))throw new Error(`transition ${e} not found`);return r}function P_(t){var e,r;t instanceof is?(e=t._id,t=t._name):(e=x5(),(r=yke).time=Tv(),t=t==null?null:t+"");for(var n=this._groups,i=n.length,a=0;a<i;++a)for(var s=n[a],l=s.length,u,h=0;h<l;++h)(u=s[h])&&vu(u,t,e,h,s,r||vke(u,e));return new is(n,this._parents,t,e)}var yke,gW=N(()=>{"use strict";wd();_s();O_();m5();yke={time:null,delay:0,duration:250,ease:b5};o(vke,"inherit");o(P_,"default")});var yW=N(()=>{"use strict";yl();YH();gW();mu.prototype.interrupt=d_;mu.prototype.transition=P_});var T5=N(()=>{"use strict";yW()});var vW=N(()=>{"use strict"});var xW=N(()=>{"use strict"});var bW=N(()=>{"use strict"});function TW(t){return[+t[0],+t[1]]}function xke(t){return[TW(t[0]),TW(t[1])]}function B_(t){return{type:t}}var ogt,lgt,cgt,ugt,hgt,fgt,wW=N(()=>{"use strict";T5();vW();xW();bW();({abs:ogt,max:lgt,min:cgt}=Math);o(TW,"number1");o(xke,"number2");ugt={name:"x",handles:["w","e"].map(B_),input:o(function(t,e){return t==null?null:[[+t[0],e[0][1]],[+t[1],e[1][1]]]},"input"),output:o(function(t){return t&&[t[0][0],t[1][0]]},"output")},hgt={name:"y",handles:["n","s"].map(B_),input:o(function(t,e){return t==null?null:[[e[0][0],+t[0]],[e[1][0],+t[1]]]},"input"),output:o(function(t){return t&&[t[0][1],t[1][1]]},"output")},fgt={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(B_),input:o(function(t){return t==null?null:xke(t)},"input"),output:o(function(t){return t},"output")};o(B_,"type")});var kW=N(()=>{"use strict";wW()});function EW(t){this._+=t[0];for(let e=1,r=t.length;e<r;++e)this._+=arguments[e]+t[e]}function Tke(t){let e=Math.floor(t);if(!(e>=0))throw new Error(`invalid digits: ${t}`);if(e>15)return EW;let r=10**e;return function(n){this._+=n[0];for(let i=1,a=n.length;i<a;++i)this._+=Math.round(arguments[i]*r)/r+n[i]}}function SW(){return new Ed}var F_,$_,kd,bke,Ed,CW=N(()=>{"use strict";F_=Math.PI,$_=2*F_,kd=1e-6,bke=$_-kd;o(EW,"append");o(Tke,"appendRound");Ed=class{static{o(this,"Path")}constructor(e){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=e==null?EW:Tke(e)}moveTo(e,r){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+r}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(e,r){this._append`L${this._x1=+e},${this._y1=+r}`}quadraticCurveTo(e,r,n,i){this._append`Q${+e},${+r},${this._x1=+n},${this._y1=+i}`}bezierCurveTo(e,r,n,i,a,s){this._append`C${+e},${+r},${+n},${+i},${this._x1=+a},${this._y1=+s}`}arcTo(e,r,n,i,a){if(e=+e,r=+r,n=+n,i=+i,a=+a,a<0)throw new Error(`negative radius: ${a}`);let s=this._x1,l=this._y1,u=n-e,h=i-r,f=s-e,d=l-r,p=f*f+d*d;if(this._x1===null)this._append`M${this._x1=e},${this._y1=r}`;else if(p>kd)if(!(Math.abs(d*u-h*f)>kd)||!a)this._append`L${this._x1=e},${this._y1=r}`;else{let m=n-s,g=i-l,y=u*u+h*h,x=m*m+g*g,v=Math.sqrt(y),b=Math.sqrt(p),T=a*Math.tan((F_-Math.acos((y+p-x)/(2*v*b)))/2),S=T/b,w=T/v;Math.abs(S-1)>kd&&this._append`L${e+S*f},${r+S*d}`,this._append`A${a},${a},0,0,${+(d*m>f*g)},${this._x1=e+w*u},${this._y1=r+w*h}`}}arc(e,r,n,i,a,s){if(e=+e,r=+r,n=+n,s=!!s,n<0)throw new Error(`negative radius: ${n}`);let l=n*Math.cos(i),u=n*Math.sin(i),h=e+l,f=r+u,d=1^s,p=s?i-a:a-i;this._x1===null?this._append`M${h},${f}`:(Math.abs(this._x1-h)>kd||Math.abs(this._y1-f)>kd)&&this._append`L${h},${f}`,n&&(p<0&&(p=p%$_+$_),p>bke?this._append`A${n},${n},0,1,${d},${e-l},${r-u}A${n},${n},0,1,${d},${this._x1=h},${this._y1=f}`:p>kd&&this._append`A${n},${n},0,${+(p>=F_)},${d},${this._x1=e+n*Math.cos(a)},${this._y1=r+n*Math.sin(a)}`)}rect(e,r,n,i){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+r}h${n=+n}v${+i}h${-n}Z`}toString(){return this._}};o(SW,"path");SW.prototype=Ed.prototype});var G_=N(()=>{"use strict";CW()});var AW=N(()=>{"use strict"});var _W=N(()=>{"use strict"});var DW=N(()=>{"use strict"});var LW=N(()=>{"use strict"});var RW=N(()=>{"use strict"});var NW=N(()=>{"use strict"});var MW=N(()=>{"use strict"});function z_(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)}function Sd(t,e){if((r=(t=e?t.toExponential(e-1):t.toExponential()).indexOf("e"))<0)return null;var r,n=t.slice(0,r);return[n.length>1?n[0]+n.slice(2):n,+t.slice(r+1)]}var _v=N(()=>{"use strict";o(z_,"default");o(Sd,"formatDecimalParts")});function bl(t){return t=Sd(Math.abs(t)),t?t[1]:NaN}var Dv=N(()=>{"use strict";_v();o(bl,"default")});function V_(t,e){return function(r,n){for(var i=r.length,a=[],s=0,l=t[0],u=0;i>0&&l>0&&(u+l+1>n&&(l=Math.max(1,n-u)),a.push(r.substring(i-=l,i+l)),!((u+=l+1)>n));)l=t[s=(s+1)%t.length];return a.reverse().join(e)}}var IW=N(()=>{"use strict";o(V_,"default")});function U_(t){return function(e){return e.replace(/[0-9]/g,function(r){return t[+r]})}}var OW=N(()=>{"use strict";o(U_,"default")});function Dh(t){if(!(e=wke.exec(t)))throw new Error("invalid format: "+t);var e;return new w5({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function w5(t){this.fill=t.fill===void 0?" ":t.fill+"",this.align=t.align===void 0?">":t.align+"",this.sign=t.sign===void 0?"-":t.sign+"",this.symbol=t.symbol===void 0?"":t.symbol+"",this.zero=!!t.zero,this.width=t.width===void 0?void 0:+t.width,this.comma=!!t.comma,this.precision=t.precision===void 0?void 0:+t.precision,this.trim=!!t.trim,this.type=t.type===void 0?"":t.type+""}var wke,H_=N(()=>{"use strict";wke=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;o(Dh,"formatSpecifier");Dh.prototype=w5.prototype;o(w5,"FormatSpecifier");w5.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 W_(t){e:for(var e=t.length,r=1,n=-1,i;r<e;++r)switch(t[r]){case".":n=i=r;break;case"0":n===0&&(n=r),i=r;break;default:if(!+t[r])break e;n>0&&(n=0);break}return n>0?t.slice(0,n)+t.slice(i+1):t}var PW=N(()=>{"use strict";o(W_,"default")});function Y_(t,e){var r=Sd(t,e);if(!r)return t+"";var n=r[0],i=r[1],a=i-(q_=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,s=n.length;return a===s?n:a>s?n+new Array(a-s+1).join("0"):a>0?n.slice(0,a)+"."+n.slice(a):"0."+new Array(1-a).join("0")+Sd(t,Math.max(0,e+a-1))[0]}var q_,X_=N(()=>{"use strict";_v();o(Y_,"default")});function k5(t,e){var r=Sd(t,e);if(!r)return t+"";var n=r[0],i=r[1];return i<0?"0."+new Array(-i).join("0")+n:n.length>i+1?n.slice(0,i+1)+"."+n.slice(i+1):n+new Array(i-n.length+2).join("0")}var BW=N(()=>{"use strict";_v();o(k5,"default")});var j_,FW=N(()=>{"use strict";_v();X_();BW();j_={"%":o((t,e)=>(t*100).toFixed(e),"%"),b:o(t=>Math.round(t).toString(2),"b"),c:o(t=>t+"","c"),d:z_,e:o((t,e)=>t.toExponential(e),"e"),f:o((t,e)=>t.toFixed(e),"f"),g:o((t,e)=>t.toPrecision(e),"g"),o:o(t=>Math.round(t).toString(8),"o"),p:o((t,e)=>k5(t*100,e),"p"),r:k5,s:Y_,X:o(t=>Math.round(t).toString(16).toUpperCase(),"X"),x:o(t=>Math.round(t).toString(16),"x")}});function E5(t){return t}var $W=N(()=>{"use strict";o(E5,"default")});function K_(t){var e=t.grouping===void 0||t.thousands===void 0?E5:V_(GW.call(t.grouping,Number),t.thousands+""),r=t.currency===void 0?"":t.currency[0]+"",n=t.currency===void 0?"":t.currency[1]+"",i=t.decimal===void 0?".":t.decimal+"",a=t.numerals===void 0?E5:U_(GW.call(t.numerals,String)),s=t.percent===void 0?"%":t.percent+"",l=t.minus===void 0?"\u2212":t.minus+"",u=t.nan===void 0?"NaN":t.nan+"";function h(d){d=Dh(d);var p=d.fill,m=d.align,g=d.sign,y=d.symbol,x=d.zero,v=d.width,b=d.comma,T=d.precision,S=d.trim,w=d.type;w==="n"?(b=!0,w="g"):j_[w]||(T===void 0&&(T=12),S=!0,w="g"),(x||p==="0"&&m==="=")&&(x=!0,p="0",m="=");var E=y==="$"?r:y==="#"&&/[boxX]/.test(w)?"0"+w.toLowerCase():"",_=y==="$"?n:/[%p]/.test(w)?s:"",A=j_[w],D=/[defgprs%]/.test(w);T=T===void 0?6:/[gprs]/.test(w)?Math.max(1,Math.min(21,T)):Math.max(0,Math.min(20,T));function O(R){var k=E,L=_,C,I,M;if(w==="c")L=A(R)+L,R="";else{R=+R;var P=R<0||1/R<0;if(R=isNaN(R)?u:A(Math.abs(R),T),S&&(R=W_(R)),P&&+R==0&&g!=="+"&&(P=!1),k=(P?g==="("?g:l:g==="-"||g==="("?"":g)+k,L=(w==="s"?zW[8+q_/3]:"")+L+(P&&g==="("?")":""),D){for(C=-1,I=R.length;++C<I;)if(M=R.charCodeAt(C),48>M||M>57){L=(M===46?i+R.slice(C+1):R.slice(C))+L,R=R.slice(0,C);break}}}b&&!x&&(R=e(R,1/0));var B=k.length+R.length+L.length,F=B<v?new Array(v-B+1).join(p):"";switch(b&&x&&(R=e(F+R,F.length?v-L.length:1/0),F=""),m){case"<":R=k+R+L+F;break;case"=":R=k+F+R+L;break;case"^":R=F.slice(0,B=F.length>>1)+k+R+L+F.slice(B);break;default:R=F+k+R+L;break}return a(R)}return o(O,"format"),O.toString=function(){return d+""},O}o(h,"newFormat");function f(d,p){var m=h((d=Dh(d),d.type="f",d)),g=Math.max(-8,Math.min(8,Math.floor(bl(p)/3)))*3,y=Math.pow(10,-g),x=zW[8+g/3];return function(v){return m(y*v)+x}}return o(f,"formatPrefix"),{format:h,formatPrefix:f}}var GW,zW,VW=N(()=>{"use strict";Dv();IW();OW();H_();PW();FW();X_();$W();GW=Array.prototype.map,zW=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];o(K_,"default")});function Q_(t){return S5=K_(t),lc=S5.format,C5=S5.formatPrefix,S5}var S5,lc,C5,UW=N(()=>{"use strict";VW();Q_({thousands:",",grouping:[3],currency:["$",""]});o(Q_,"defaultLocale")});function A5(t){return Math.max(0,-bl(Math.abs(t)))}var HW=N(()=>{"use strict";Dv();o(A5,"default")});function _5(t,e){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(bl(e)/3)))*3-bl(Math.abs(t)))}var WW=N(()=>{"use strict";Dv();o(_5,"default")});function D5(t,e){return t=Math.abs(t),e=Math.abs(e)-t,Math.max(0,bl(e)-bl(t))+1}var qW=N(()=>{"use strict";Dv();o(D5,"default")});var Z_=N(()=>{"use strict";UW();H_();HW();WW();qW()});var YW=N(()=>{"use strict"});function kke(t){var e=0,r=t.children,n=r&&r.length;if(!n)e=1;else for(;--n>=0;)e+=r[n].value;t.value=e}function J_(){return this.eachAfter(kke)}var XW=N(()=>{"use strict";o(kke,"count");o(J_,"default")});function eD(t,e){let r=-1;for(let n of this)t.call(e,n,++r,this);return this}var jW=N(()=>{"use strict";o(eD,"default")});function tD(t,e){for(var r=this,n=[r],i,a,s=-1;r=n.pop();)if(t.call(e,r,++s,this),i=r.children)for(a=i.length-1;a>=0;--a)n.push(i[a]);return this}var KW=N(()=>{"use strict";o(tD,"default")});function rD(t,e){for(var r=this,n=[r],i=[],a,s,l,u=-1;r=n.pop();)if(i.push(r),a=r.children)for(s=0,l=a.length;s<l;++s)n.push(a[s]);for(;r=i.pop();)t.call(e,r,++u,this);return this}var QW=N(()=>{"use strict";o(rD,"default")});function nD(t,e){let r=-1;for(let n of this)if(t.call(e,n,++r,this))return n}var ZW=N(()=>{"use strict";o(nD,"default")});function iD(t){return this.eachAfter(function(e){for(var r=+t(e.data)||0,n=e.children,i=n&&n.length;--i>=0;)r+=n[i].value;e.value=r})}var JW=N(()=>{"use strict";o(iD,"default")});function aD(t){return this.eachBefore(function(e){e.children&&e.children.sort(t)})}var eq=N(()=>{"use strict";o(aD,"default")});function sD(t){for(var e=this,r=Eke(e,t),n=[e];e!==r;)e=e.parent,n.push(e);for(var i=n.length;t!==r;)n.splice(i,0,t),t=t.parent;return n}function Eke(t,e){if(t===e)return t;var r=t.ancestors(),n=e.ancestors(),i=null;for(t=r.pop(),e=n.pop();t===e;)i=t,t=r.pop(),e=n.pop();return i}var tq=N(()=>{"use strict";o(sD,"default");o(Eke,"leastCommonAncestor")});function oD(){for(var t=this,e=[t];t=t.parent;)e.push(t);return e}var rq=N(()=>{"use strict";o(oD,"default")});function lD(){return Array.from(this)}var nq=N(()=>{"use strict";o(lD,"default")});function cD(){var t=[];return this.eachBefore(function(e){e.children||t.push(e)}),t}var iq=N(()=>{"use strict";o(cD,"default")});function uD(){var t=this,e=[];return t.each(function(r){r!==t&&e.push({source:r.parent,target:r})}),e}var aq=N(()=>{"use strict";o(uD,"default")});function*hD(){var t=this,e,r=[t],n,i,a;do for(e=r.reverse(),r=[];t=e.pop();)if(yield t,n=t.children)for(i=0,a=n.length;i<a;++i)r.push(n[i]);while(r.length)}var sq=N(()=>{"use strict";o(hD,"default")});function $0(t,e){t instanceof Map?(t=[void 0,t],e===void 0&&(e=Ake)):e===void 0&&(e=Cke);for(var r=new Lv(t),n,i=[r],a,s,l,u;n=i.pop();)if((s=e(n.data))&&(u=(s=Array.from(s)).length))for(n.children=s,l=u-1;l>=0;--l)i.push(a=s[l]=new Lv(s[l])),a.parent=n,a.depth=n.depth+1;return r.eachBefore(Dke)}function Ske(){return $0(this).eachBefore(_ke)}function Cke(t){return t.children}function Ake(t){return Array.isArray(t)?t[1]:null}function _ke(t){t.data.value!==void 0&&(t.value=t.data.value),t.data=t.data.data}function Dke(t){var e=0;do t.height=e;while((t=t.parent)&&t.height<++e)}function Lv(t){this.data=t,this.depth=this.height=0,this.parent=null}var oq=N(()=>{"use strict";XW();jW();KW();QW();ZW();JW();eq();tq();rq();nq();iq();aq();sq();o($0,"hierarchy");o(Ske,"node_copy");o(Cke,"objectChildren");o(Ake,"mapChildren");o(_ke,"copyData");o(Dke,"computeHeight");o(Lv,"Node");Lv.prototype=$0.prototype={constructor:Lv,count:J_,each:eD,eachAfter:rD,eachBefore:tD,find:nD,sum:iD,sort:aD,path:sD,ancestors:oD,descendants:lD,leaves:cD,links:uD,copy:Ske,[Symbol.iterator]:hD}});function lq(t){if(typeof t!="function")throw new Error;return t}var cq=N(()=>{"use strict";o(lq,"required")});function G0(){return 0}function Cd(t){return function(){return t}}var uq=N(()=>{"use strict";o(G0,"constantZero");o(Cd,"default")});function fD(t){t.x0=Math.round(t.x0),t.y0=Math.round(t.y0),t.x1=Math.round(t.x1),t.y1=Math.round(t.y1)}var hq=N(()=>{"use strict";o(fD,"default")});function dD(t,e,r,n,i){for(var a=t.children,s,l=-1,u=a.length,h=t.value&&(n-e)/t.value;++l<u;)s=a[l],s.y0=r,s.y1=i,s.x0=e,s.x1=e+=s.value*h}var fq=N(()=>{"use strict";o(dD,"default")});function pD(t,e,r,n,i){for(var a=t.children,s,l=-1,u=a.length,h=t.value&&(i-r)/t.value;++l<u;)s=a[l],s.x0=e,s.x1=n,s.y0=r,s.y1=r+=s.value*h}var dq=N(()=>{"use strict";o(pD,"default")});function Rke(t,e,r,n,i,a){for(var s=[],l=e.children,u,h,f=0,d=0,p=l.length,m,g,y=e.value,x,v,b,T,S,w,E;f<p;){m=i-r,g=a-n;do x=l[d++].value;while(!x&&d<p);for(v=b=x,w=Math.max(g/m,m/g)/(y*t),E=x*x*w,S=Math.max(b/E,E/v);d<p;++d){if(x+=h=l[d].value,h<v&&(v=h),h>b&&(b=h),E=x*x*w,T=Math.max(b/E,E/v),T>S){x-=h;break}S=T}s.push(u={value:x,dice:m<g,children:l.slice(f,d)}),u.dice?dD(u,r,n,i,y?n+=g*x/y:a):pD(u,r,n,y?r+=m*x/y:i,a),y-=x,f=d}return s}var Lke,pq,mq=N(()=>{"use strict";fq();dq();Lke=(1+Math.sqrt(5))/2;o(Rke,"squarifyRatio");pq=o(function t(e){function r(n,i,a,s,l){Rke(e,n,i,a,s,l)}return o(r,"squarify"),r.ratio=function(n){return t((n=+n)>1?n:1)},r},"custom")(Lke)});function L5(){var t=pq,e=!1,r=1,n=1,i=[0],a=G0,s=G0,l=G0,u=G0,h=G0;function f(p){return p.x0=p.y0=0,p.x1=r,p.y1=n,p.eachBefore(d),i=[0],e&&p.eachBefore(fD),p}o(f,"treemap");function d(p){var m=i[p.depth],g=p.x0+m,y=p.y0+m,x=p.x1-m,v=p.y1-m;x<g&&(g=x=(g+x)/2),v<y&&(y=v=(y+v)/2),p.x0=g,p.y0=y,p.x1=x,p.y1=v,p.children&&(m=i[p.depth+1]=a(p)/2,g+=h(p)-m,y+=s(p)-m,x-=l(p)-m,v-=u(p)-m,x<g&&(g=x=(g+x)/2),v<y&&(y=v=(y+v)/2),t(p,g,y,x,v))}return o(d,"positionNode"),f.round=function(p){return arguments.length?(e=!!p,f):e},f.size=function(p){return arguments.length?(r=+p[0],n=+p[1],f):[r,n]},f.tile=function(p){return arguments.length?(t=lq(p),f):t},f.padding=function(p){return arguments.length?f.paddingInner(p).paddingOuter(p):f.paddingInner()},f.paddingInner=function(p){return arguments.length?(a=typeof p=="function"?p:Cd(+p),f):a},f.paddingOuter=function(p){return arguments.length?f.paddingTop(p).paddingRight(p).paddingBottom(p).paddingLeft(p):f.paddingTop()},f.paddingTop=function(p){return arguments.length?(s=typeof p=="function"?p:Cd(+p),f):s},f.paddingRight=function(p){return arguments.length?(l=typeof p=="function"?p:Cd(+p),f):l},f.paddingBottom=function(p){return arguments.length?(u=typeof p=="function"?p:Cd(+p),f):u},f.paddingLeft=function(p){return arguments.length?(h=typeof p=="function"?p:Cd(+p),f):h},f}var gq=N(()=>{"use strict";hq();mq();cq();uq();o(L5,"default")});var yq=N(()=>{"use strict";oq();gq()});var vq=N(()=>{"use strict"});var xq=N(()=>{"use strict"});function Lh(t,e){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(e).domain(t);break}return this}var Rv=N(()=>{"use strict";o(Lh,"initRange")});function eo(){var t=new S0,e=[],r=[],n=mD;function i(a){let s=t.get(a);if(s===void 0){if(n!==mD)return n;t.set(a,s=e.push(a)-1)}return r[s%r.length]}return o(i,"scale"),i.domain=function(a){if(!arguments.length)return e.slice();e=[],t=new S0;for(let s of a)t.has(s)||t.set(s,e.push(s)-1);return i},i.range=function(a){return arguments.length?(r=Array.from(a),i):r.slice()},i.unknown=function(a){return arguments.length?(n=a,i):n},i.copy=function(){return eo(e,r).unknown(n)},Lh.apply(i,arguments),i}var mD,gD=N(()=>{"use strict";kh();Rv();mD=Symbol("implicit");o(eo,"ordinal")});function z0(){var t=eo().unknown(void 0),e=t.domain,r=t.range,n=0,i=1,a,s,l=!1,u=0,h=0,f=.5;delete t.unknown;function d(){var p=e().length,m=i<n,g=m?i:n,y=m?n:i;a=(y-g)/Math.max(1,p-u+h*2),l&&(a=Math.floor(a)),g+=(y-g-a*(p-u))*f,s=a*(1-u),l&&(g=Math.round(g),s=Math.round(s));var x=Y3(p).map(function(v){return g+a*v});return r(m?x.reverse():x)}return o(d,"rescale"),t.domain=function(p){return arguments.length?(e(p),d()):e()},t.range=function(p){return arguments.length?([n,i]=p,n=+n,i=+i,d()):[n,i]},t.rangeRound=function(p){return[n,i]=p,n=+n,i=+i,l=!0,d()},t.bandwidth=function(){return s},t.step=function(){return a},t.round=function(p){return arguments.length?(l=!!p,d()):l},t.padding=function(p){return arguments.length?(u=Math.min(1,h=+p),d()):u},t.paddingInner=function(p){return arguments.length?(u=Math.min(1,p),d()):u},t.paddingOuter=function(p){return arguments.length?(h=+p,d()):h},t.align=function(p){return arguments.length?(f=Math.max(0,Math.min(1,p)),d()):f},t.copy=function(){return z0(e(),[n,i]).round(l).paddingInner(u).paddingOuter(h).align(f)},Lh.apply(d(),arguments)}var bq=N(()=>{"use strict";kh();Rv();gD();o(z0,"band")});function yD(t){return function(){return t}}var Tq=N(()=>{"use strict";o(yD,"constants")});function vD(t){return+t}var wq=N(()=>{"use strict";o(vD,"number")});function V0(t){return t}function xD(t,e){return(e-=t=+t)?function(r){return(r-t)/e}:yD(isNaN(e)?NaN:.5)}function Nke(t,e){var r;return t>e&&(r=t,t=e,e=r),function(n){return Math.max(t,Math.min(e,n))}}function Mke(t,e,r){var n=t[0],i=t[1],a=e[0],s=e[1];return i<n?(n=xD(i,n),a=r(s,a)):(n=xD(n,i),a=r(a,s)),function(l){return a(n(l))}}function Ike(t,e,r){var n=Math.min(t.length,e.length)-1,i=new Array(n),a=new Array(n),s=-1;for(t[n]<t[0]&&(t=t.slice().reverse(),e=e.slice().reverse());++s<n;)i[s]=xD(t[s],t[s+1]),a[s]=r(e[s],e[s+1]);return function(l){var u=GA(t,l,1,n)-1;return a[u](i[u](l))}}function R5(t,e){return e.domain(t.domain()).range(t.range()).interpolate(t.interpolate()).clamp(t.clamp()).unknown(t.unknown())}function Oke(){var t=kq,e=kq,r=_h,n,i,a,s=V0,l,u,h;function f(){var p=Math.min(t.length,e.length);return s!==V0&&(s=Nke(t[0],t[p-1])),l=p>2?Ike:Mke,u=h=null,d}o(f,"rescale");function d(p){return p==null||isNaN(p=+p)?a:(u||(u=l(t.map(n),e,r)))(n(s(p)))}return o(d,"scale"),d.invert=function(p){return s(i((h||(h=l(e,t.map(n),Yi)))(p)))},d.domain=function(p){return arguments.length?(t=Array.from(p,vD),f()):t.slice()},d.range=function(p){return arguments.length?(e=Array.from(p),f()):e.slice()},d.rangeRound=function(p){return e=Array.from(p),r=o5,f()},d.clamp=function(p){return arguments.length?(s=p?!0:V0,f()):s!==V0},d.interpolate=function(p){return arguments.length?(r=p,f()):r},d.unknown=function(p){return arguments.length?(a=p,d):a},function(p,m){return n=p,i=m,f()}}function Nv(){return Oke()(V0,V0)}var kq,bD=N(()=>{"use strict";kh();P0();Tq();wq();kq=[0,1];o(V0,"identity");o(xD,"normalize");o(Nke,"clamper");o(Mke,"bimap");o(Ike,"polymap");o(R5,"copy");o(Oke,"transformer");o(Nv,"continuous")});function TD(t,e,r,n){var i=C0(t,e,r),a;switch(n=Dh(n??",f"),n.type){case"s":{var s=Math.max(Math.abs(t),Math.abs(e));return n.precision==null&&!isNaN(a=_5(i,s))&&(n.precision=a),C5(n,s)}case"":case"e":case"g":case"p":case"r":{n.precision==null&&!isNaN(a=D5(i,Math.max(Math.abs(t),Math.abs(e))))&&(n.precision=a-(n.type==="e"));break}case"f":case"%":{n.precision==null&&!isNaN(a=A5(i))&&(n.precision=a-(n.type==="%")*2);break}}return lc(n)}var Eq=N(()=>{"use strict";kh();Z_();o(TD,"tickFormat")});function Pke(t){var e=t.domain;return t.ticks=function(r){var n=e();return H3(n[0],n[n.length-1],r??10)},t.tickFormat=function(r,n){var i=e();return TD(i[0],i[i.length-1],r??10,n)},t.nice=function(r){r==null&&(r=10);var n=e(),i=0,a=n.length-1,s=n[i],l=n[a],u,h,f=10;for(l<s&&(h=s,s=l,l=h,h=i,i=a,a=h);f-- >0;){if(h=sv(s,l,r),h===u)return n[i]=s,n[a]=l,e(n);if(h>0)s=Math.floor(s/h)*h,l=Math.ceil(l/h)*h;else if(h<0)s=Math.ceil(s*h)/h,l=Math.floor(l*h)/h;else break;u=h}return t},t}function Tl(){var t=Nv();return t.copy=function(){return R5(t,Tl())},Lh.apply(t,arguments),Pke(t)}var Sq=N(()=>{"use strict";kh();bD();Rv();Eq();o(Pke,"linearish");o(Tl,"linear")});function wD(t,e){t=t.slice();var r=0,n=t.length-1,i=t[r],a=t[n],s;return a<i&&(s=r,r=n,n=s,s=i,i=a,a=s),t[r]=e.floor(i),t[n]=e.ceil(a),t}var Cq=N(()=>{"use strict";o(wD,"nice")});function bn(t,e,r,n){function i(a){return t(a=arguments.length===0?new Date:new Date(+a)),a}return o(i,"interval"),i.floor=a=>(t(a=new Date(+a)),a),i.ceil=a=>(t(a=new Date(a-1)),e(a,1),t(a),a),i.round=a=>{let s=i(a),l=i.ceil(a);return a-s<l-a?s:l},i.offset=(a,s)=>(e(a=new Date(+a),s==null?1:Math.floor(s)),a),i.range=(a,s,l)=>{let u=[];if(a=i.ceil(a),l=l==null?1:Math.floor(l),!(a<s)||!(l>0))return u;let h;do u.push(h=new Date(+a)),e(a,l),t(a);while(h<a&&a<s);return u},i.filter=a=>bn(s=>{if(s>=s)for(;t(s),!a(s);)s.setTime(s-1)},(s,l)=>{if(s>=s)if(l<0)for(;++l<=0;)for(;e(s,-1),!a(s););else for(;--l>=0;)for(;e(s,1),!a(s););}),r&&(i.count=(a,s)=>(kD.setTime(+a),ED.setTime(+s),t(kD),t(ED),Math.floor(r(kD,ED))),i.every=a=>(a=Math.floor(a),!isFinite(a)||!(a>0)?null:a>1?i.filter(n?s=>n(s)%a===0:s=>i.count(0,s)%a===0):i)),i}var kD,ED,bu=N(()=>{"use strict";kD=new Date,ED=new Date;o(bn,"timeInterval")});var cc,Aq,SD=N(()=>{"use strict";bu();cc=bn(()=>{},(t,e)=>{t.setTime(+t+e)},(t,e)=>e-t);cc.every=t=>(t=Math.floor(t),!isFinite(t)||!(t>0)?null:t>1?bn(e=>{e.setTime(Math.floor(e/t)*t)},(e,r)=>{e.setTime(+e+r*t)},(e,r)=>(r-e)/t):cc);Aq=cc.range});var to,_q,CD=N(()=>{"use strict";bu();to=bn(t=>{t.setTime(t-t.getMilliseconds())},(t,e)=>{t.setTime(+t+e*1e3)},(t,e)=>(e-t)/1e3,t=>t.getUTCSeconds()),_q=to.range});var Tu,Bke,N5,Fke,AD=N(()=>{"use strict";bu();Tu=bn(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*1e3)},(t,e)=>{t.setTime(+t+e*6e4)},(t,e)=>(e-t)/6e4,t=>t.getMinutes()),Bke=Tu.range,N5=bn(t=>{t.setUTCSeconds(0,0)},(t,e)=>{t.setTime(+t+e*6e4)},(t,e)=>(e-t)/6e4,t=>t.getUTCMinutes()),Fke=N5.range});var wu,$ke,M5,Gke,_D=N(()=>{"use strict";bu();wu=bn(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*1e3-t.getMinutes()*6e4)},(t,e)=>{t.setTime(+t+e*36e5)},(t,e)=>(e-t)/36e5,t=>t.getHours()),$ke=wu.range,M5=bn(t=>{t.setUTCMinutes(0,0,0)},(t,e)=>{t.setTime(+t+e*36e5)},(t,e)=>(e-t)/36e5,t=>t.getUTCHours()),Gke=M5.range});var Lo,zke,Iv,Vke,I5,Uke,DD=N(()=>{"use strict";bu();Lo=bn(t=>t.setHours(0,0,0,0),(t,e)=>t.setDate(t.getDate()+e),(t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*6e4)/864e5,t=>t.getDate()-1),zke=Lo.range,Iv=bn(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/864e5,t=>t.getUTCDate()-1),Vke=Iv.range,I5=bn(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/864e5,t=>Math.floor(t/864e5)),Uke=I5.range});function Dd(t){return bn(e=>{e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)},(e,r)=>{e.setDate(e.getDate()+r*7)},(e,r)=>(r-e-(r.getTimezoneOffset()-e.getTimezoneOffset())*6e4)/6048e5)}function Ld(t){return bn(e=>{e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)},(e,r)=>{e.setUTCDate(e.getUTCDate()+r*7)},(e,r)=>(r-e)/6048e5)}var wl,Rh,O5,P5,hc,B5,F5,Lq,Hke,Wke,qke,Yke,Xke,jke,Rd,U0,Rq,Nq,Nh,Mq,Iq,Oq,Kke,Qke,Zke,Jke,eEe,tEe,LD=N(()=>{"use strict";bu();o(Dd,"timeWeekday");wl=Dd(0),Rh=Dd(1),O5=Dd(2),P5=Dd(3),hc=Dd(4),B5=Dd(5),F5=Dd(6),Lq=wl.range,Hke=Rh.range,Wke=O5.range,qke=P5.range,Yke=hc.range,Xke=B5.range,jke=F5.range;o(Ld,"utcWeekday");Rd=Ld(0),U0=Ld(1),Rq=Ld(2),Nq=Ld(3),Nh=Ld(4),Mq=Ld(5),Iq=Ld(6),Oq=Rd.range,Kke=U0.range,Qke=Rq.range,Zke=Nq.range,Jke=Nh.range,eEe=Mq.range,tEe=Iq.range});var ku,rEe,$5,nEe,RD=N(()=>{"use strict";bu();ku=bn(t=>{t.setDate(1),t.setHours(0,0,0,0)},(t,e)=>{t.setMonth(t.getMonth()+e)},(t,e)=>e.getMonth()-t.getMonth()+(e.getFullYear()-t.getFullYear())*12,t=>t.getMonth()),rEe=ku.range,$5=bn(t=>{t.setUTCDate(1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCMonth(t.getUTCMonth()+e)},(t,e)=>e.getUTCMonth()-t.getUTCMonth()+(e.getUTCFullYear()-t.getUTCFullYear())*12,t=>t.getUTCMonth()),nEe=$5.range});var ro,iEe,kl,aEe,ND=N(()=>{"use strict";bu();ro=bn(t=>{t.setMonth(0,1),t.setHours(0,0,0,0)},(t,e)=>{t.setFullYear(t.getFullYear()+e)},(t,e)=>e.getFullYear()-t.getFullYear(),t=>t.getFullYear());ro.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:bn(e=>{e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)},(e,r)=>{e.setFullYear(e.getFullYear()+r*t)});iEe=ro.range,kl=bn(t=>{t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCFullYear(t.getUTCFullYear()+e)},(t,e)=>e.getUTCFullYear()-t.getUTCFullYear(),t=>t.getUTCFullYear());kl.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:bn(e=>{e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,r)=>{e.setUTCFullYear(e.getUTCFullYear()+r*t)});aEe=kl.range});function Bq(t,e,r,n,i,a){let s=[[to,1,1e3],[to,5,5*1e3],[to,15,15*1e3],[to,30,30*1e3],[a,1,6e4],[a,5,5*6e4],[a,15,15*6e4],[a,30,30*6e4],[i,1,36e5],[i,3,3*36e5],[i,6,6*36e5],[i,12,12*36e5],[n,1,864e5],[n,2,2*864e5],[r,1,6048e5],[e,1,2592e6],[e,3,3*2592e6],[t,1,31536e6]];function l(h,f,d){let p=f<h;p&&([h,f]=[f,h]);let m=d&&typeof d.range=="function"?d:u(h,f,d),g=m?m.range(h,+f+1):[];return p?g.reverse():g}o(l,"ticks");function u(h,f,d){let p=Math.abs(f-h)/d,m=yd(([,,x])=>x).right(s,p);if(m===s.length)return t.every(C0(h/31536e6,f/31536e6,d));if(m===0)return cc.every(Math.max(C0(h,f,d),1));let[g,y]=s[p/s[m-1][2]<s[m][2]/p?m-1:m];return g.every(y)}return o(u,"tickInterval"),[l,u]}var oEe,lEe,MD,ID,Fq=N(()=>{"use strict";kh();SD();CD();AD();_D();DD();LD();RD();ND();o(Bq,"ticker");[oEe,lEe]=Bq(kl,$5,Rd,I5,M5,N5),[MD,ID]=Bq(ro,ku,wl,Lo,wu,Tu)});var G5=N(()=>{"use strict";SD();CD();AD();_D();DD();LD();RD();ND();Fq()});function OD(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return e.setFullYear(t.y),e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function PD(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return e.setUTCFullYear(t.y),e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function Ov(t,e,r){return{y:t,m:e,d:r,H:0,M:0,S:0,L:0}}function BD(t){var e=t.dateTime,r=t.date,n=t.time,i=t.periods,a=t.days,s=t.shortDays,l=t.months,u=t.shortMonths,h=Pv(i),f=Bv(i),d=Pv(a),p=Bv(a),m=Pv(s),g=Bv(s),y=Pv(l),x=Bv(l),v=Pv(u),b=Bv(u),T={a:P,A:B,b:F,B:G,c:null,d:Hq,e:Hq,f:REe,g:zEe,G:UEe,H:_Ee,I:DEe,j:LEe,L:jq,m:NEe,M:MEe,p:$,q:U,Q:Yq,s:Xq,S:IEe,u:OEe,U:PEe,V:BEe,w:FEe,W:$Ee,x:null,X:null,y:GEe,Y:VEe,Z:HEe,"%":qq},S={a:K,A:ne,b:j,B:le,c:null,d:Wq,e:Wq,f:XEe,g:iSe,G:sSe,H:WEe,I:qEe,j:YEe,L:Qq,m:jEe,M:KEe,p:Z,q:ce,Q:Yq,s:Xq,S:QEe,u:ZEe,U:JEe,V:eSe,w:tSe,W:rSe,x:null,X:null,y:nSe,Y:aSe,Z:oSe,"%":qq},w={a:O,A:R,b:k,B:L,c:C,d:Vq,e:Vq,f:EEe,g:zq,G:Gq,H:Uq,I:Uq,j:bEe,L:kEe,m:xEe,M:TEe,p:D,q:vEe,Q:CEe,s:AEe,S:wEe,u:dEe,U:pEe,V:mEe,w:fEe,W:gEe,x:I,X:M,y:zq,Y:Gq,Z:yEe,"%":SEe};T.x=E(r,T),T.X=E(n,T),T.c=E(e,T),S.x=E(r,S),S.X=E(n,S),S.c=E(e,S);function E(Q,ee){return function(te){var re=[],he=-1,J=0,ye=Q.length,se,Se,W;for(te instanceof Date||(te=new Date(+te));++he<ye;)Q.charCodeAt(he)===37&&(re.push(Q.slice(J,he)),(Se=$q[se=Q.charAt(++he)])!=null?se=Q.charAt(++he):Se=se==="e"?" ":"0",(W=ee[se])&&(se=W(te,Se)),re.push(se),J=he+1);return re.push(Q.slice(J,he)),re.join("")}}o(E,"newFormat");function _(Q,ee){return function(te){var re=Ov(1900,void 0,1),he=A(re,Q,te+="",0),J,ye;if(he!=te.length)return null;if("Q"in re)return new Date(re.Q);if("s"in re)return new Date(re.s*1e3+("L"in re?re.L:0));if(ee&&!("Z"in re)&&(re.Z=0),"p"in re&&(re.H=re.H%12+re.p*12),re.m===void 0&&(re.m="q"in re?re.q:0),"V"in re){if(re.V<1||re.V>53)return null;"w"in re||(re.w=1),"Z"in re?(J=PD(Ov(re.y,0,1)),ye=J.getUTCDay(),J=ye>4||ye===0?U0.ceil(J):U0(J),J=Iv.offset(J,(re.V-1)*7),re.y=J.getUTCFullYear(),re.m=J.getUTCMonth(),re.d=J.getUTCDate()+(re.w+6)%7):(J=OD(Ov(re.y,0,1)),ye=J.getDay(),J=ye>4||ye===0?Rh.ceil(J):Rh(J),J=Lo.offset(J,(re.V-1)*7),re.y=J.getFullYear(),re.m=J.getMonth(),re.d=J.getDate()+(re.w+6)%7)}else("W"in re||"U"in re)&&("w"in re||(re.w="u"in re?re.u%7:"W"in re?1:0),ye="Z"in re?PD(Ov(re.y,0,1)).getUTCDay():OD(Ov(re.y,0,1)).getDay(),re.m=0,re.d="W"in re?(re.w+6)%7+re.W*7-(ye+5)%7:re.w+re.U*7-(ye+6)%7);return"Z"in re?(re.H+=re.Z/100|0,re.M+=re.Z%100,PD(re)):OD(re)}}o(_,"newParse");function A(Q,ee,te,re){for(var he=0,J=ee.length,ye=te.length,se,Se;he<J;){if(re>=ye)return-1;if(se=ee.charCodeAt(he++),se===37){if(se=ee.charAt(he++),Se=w[se in $q?ee.charAt(he++):se],!Se||(re=Se(Q,te,re))<0)return-1}else if(se!=te.charCodeAt(re++))return-1}return re}o(A,"parseSpecifier");function D(Q,ee,te){var re=h.exec(ee.slice(te));return re?(Q.p=f.get(re[0].toLowerCase()),te+re[0].length):-1}o(D,"parsePeriod");function O(Q,ee,te){var re=m.exec(ee.slice(te));return re?(Q.w=g.get(re[0].toLowerCase()),te+re[0].length):-1}o(O,"parseShortWeekday");function R(Q,ee,te){var re=d.exec(ee.slice(te));return re?(Q.w=p.get(re[0].toLowerCase()),te+re[0].length):-1}o(R,"parseWeekday");function k(Q,ee,te){var re=v.exec(ee.slice(te));return re?(Q.m=b.get(re[0].toLowerCase()),te+re[0].length):-1}o(k,"parseShortMonth");function L(Q,ee,te){var re=y.exec(ee.slice(te));return re?(Q.m=x.get(re[0].toLowerCase()),te+re[0].length):-1}o(L,"parseMonth");function C(Q,ee,te){return A(Q,e,ee,te)}o(C,"parseLocaleDateTime");function I(Q,ee,te){return A(Q,r,ee,te)}o(I,"parseLocaleDate");function M(Q,ee,te){return A(Q,n,ee,te)}o(M,"parseLocaleTime");function P(Q){return s[Q.getDay()]}o(P,"formatShortWeekday");function B(Q){return a[Q.getDay()]}o(B,"formatWeekday");function F(Q){return u[Q.getMonth()]}o(F,"formatShortMonth");function G(Q){return l[Q.getMonth()]}o(G,"formatMonth");function $(Q){return i[+(Q.getHours()>=12)]}o($,"formatPeriod");function U(Q){return 1+~~(Q.getMonth()/3)}o(U,"formatQuarter");function K(Q){return s[Q.getUTCDay()]}o(K,"formatUTCShortWeekday");function ne(Q){return a[Q.getUTCDay()]}o(ne,"formatUTCWeekday");function j(Q){return u[Q.getUTCMonth()]}o(j,"formatUTCShortMonth");function le(Q){return l[Q.getUTCMonth()]}o(le,"formatUTCMonth");function Z(Q){return i[+(Q.getUTCHours()>=12)]}o(Z,"formatUTCPeriod");function ce(Q){return 1+~~(Q.getUTCMonth()/3)}return o(ce,"formatUTCQuarter"),{format:o(function(Q){var ee=E(Q+="",T);return ee.toString=function(){return Q},ee},"format"),parse:o(function(Q){var ee=_(Q+="",!1);return ee.toString=function(){return Q},ee},"parse"),utcFormat:o(function(Q){var ee=E(Q+="",S);return ee.toString=function(){return Q},ee},"utcFormat"),utcParse:o(function(Q){var ee=_(Q+="",!0);return ee.toString=function(){return Q},ee},"utcParse")}}function Wr(t,e,r){var n=t<0?"-":"",i=(n?-t:t)+"",a=i.length;return n+(a<r?new Array(r-a+1).join(e)+i:i)}function hEe(t){return t.replace(uEe,"\\$&")}function Pv(t){return new RegExp("^(?:"+t.map(hEe).join("|")+")","i")}function Bv(t){return new Map(t.map((e,r)=>[e.toLowerCase(),r]))}function fEe(t,e,r){var n=Xi.exec(e.slice(r,r+1));return n?(t.w=+n[0],r+n[0].length):-1}function dEe(t,e,r){var n=Xi.exec(e.slice(r,r+1));return n?(t.u=+n[0],r+n[0].length):-1}function pEe(t,e,r){var n=Xi.exec(e.slice(r,r+2));return n?(t.U=+n[0],r+n[0].length):-1}function mEe(t,e,r){var n=Xi.exec(e.slice(r,r+2));return n?(t.V=+n[0],r+n[0].length):-1}function gEe(t,e,r){var n=Xi.exec(e.slice(r,r+2));return n?(t.W=+n[0],r+n[0].length):-1}function Gq(t,e,r){var n=Xi.exec(e.slice(r,r+4));return n?(t.y=+n[0],r+n[0].length):-1}function zq(t,e,r){var n=Xi.exec(e.slice(r,r+2));return n?(t.y=+n[0]+(+n[0]>68?1900:2e3),r+n[0].length):-1}function yEe(t,e,r){var n=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(r,r+6));return n?(t.Z=n[1]?0:-(n[2]+(n[3]||"00")),r+n[0].length):-1}function vEe(t,e,r){var n=Xi.exec(e.slice(r,r+1));return n?(t.q=n[0]*3-3,r+n[0].length):-1}function xEe(t,e,r){var n=Xi.exec(e.slice(r,r+2));return n?(t.m=n[0]-1,r+n[0].length):-1}function Vq(t,e,r){var n=Xi.exec(e.slice(r,r+2));return n?(t.d=+n[0],r+n[0].length):-1}function bEe(t,e,r){var n=Xi.exec(e.slice(r,r+3));return n?(t.m=0,t.d=+n[0],r+n[0].length):-1}function Uq(t,e,r){var n=Xi.exec(e.slice(r,r+2));return n?(t.H=+n[0],r+n[0].length):-1}function TEe(t,e,r){var n=Xi.exec(e.slice(r,r+2));return n?(t.M=+n[0],r+n[0].length):-1}function wEe(t,e,r){var n=Xi.exec(e.slice(r,r+2));return n?(t.S=+n[0],r+n[0].length):-1}function kEe(t,e,r){var n=Xi.exec(e.slice(r,r+3));return n?(t.L=+n[0],r+n[0].length):-1}function EEe(t,e,r){var n=Xi.exec(e.slice(r,r+6));return n?(t.L=Math.floor(n[0]/1e3),r+n[0].length):-1}function SEe(t,e,r){var n=cEe.exec(e.slice(r,r+1));return n?r+n[0].length:-1}function CEe(t,e,r){var n=Xi.exec(e.slice(r));return n?(t.Q=+n[0],r+n[0].length):-1}function AEe(t,e,r){var n=Xi.exec(e.slice(r));return n?(t.s=+n[0],r+n[0].length):-1}function Hq(t,e){return Wr(t.getDate(),e,2)}function _Ee(t,e){return Wr(t.getHours(),e,2)}function DEe(t,e){return Wr(t.getHours()%12||12,e,2)}function LEe(t,e){return Wr(1+Lo.count(ro(t),t),e,3)}function jq(t,e){return Wr(t.getMilliseconds(),e,3)}function REe(t,e){return jq(t,e)+"000"}function NEe(t,e){return Wr(t.getMonth()+1,e,2)}function MEe(t,e){return Wr(t.getMinutes(),e,2)}function IEe(t,e){return Wr(t.getSeconds(),e,2)}function OEe(t){var e=t.getDay();return e===0?7:e}function PEe(t,e){return Wr(wl.count(ro(t)-1,t),e,2)}function Kq(t){var e=t.getDay();return e>=4||e===0?hc(t):hc.ceil(t)}function BEe(t,e){return t=Kq(t),Wr(hc.count(ro(t),t)+(ro(t).getDay()===4),e,2)}function FEe(t){return t.getDay()}function $Ee(t,e){return Wr(Rh.count(ro(t)-1,t),e,2)}function GEe(t,e){return Wr(t.getFullYear()%100,e,2)}function zEe(t,e){return t=Kq(t),Wr(t.getFullYear()%100,e,2)}function VEe(t,e){return Wr(t.getFullYear()%1e4,e,4)}function UEe(t,e){var r=t.getDay();return t=r>=4||r===0?hc(t):hc.ceil(t),Wr(t.getFullYear()%1e4,e,4)}function HEe(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+Wr(e/60|0,"0",2)+Wr(e%60,"0",2)}function Wq(t,e){return Wr(t.getUTCDate(),e,2)}function WEe(t,e){return Wr(t.getUTCHours(),e,2)}function qEe(t,e){return Wr(t.getUTCHours()%12||12,e,2)}function YEe(t,e){return Wr(1+Iv.count(kl(t),t),e,3)}function Qq(t,e){return Wr(t.getUTCMilliseconds(),e,3)}function XEe(t,e){return Qq(t,e)+"000"}function jEe(t,e){return Wr(t.getUTCMonth()+1,e,2)}function KEe(t,e){return Wr(t.getUTCMinutes(),e,2)}function QEe(t,e){return Wr(t.getUTCSeconds(),e,2)}function ZEe(t){var e=t.getUTCDay();return e===0?7:e}function JEe(t,e){return Wr(Rd.count(kl(t)-1,t),e,2)}function Zq(t){var e=t.getUTCDay();return e>=4||e===0?Nh(t):Nh.ceil(t)}function eSe(t,e){return t=Zq(t),Wr(Nh.count(kl(t),t)+(kl(t).getUTCDay()===4),e,2)}function tSe(t){return t.getUTCDay()}function rSe(t,e){return Wr(U0.count(kl(t)-1,t),e,2)}function nSe(t,e){return Wr(t.getUTCFullYear()%100,e,2)}function iSe(t,e){return t=Zq(t),Wr(t.getUTCFullYear()%100,e,2)}function aSe(t,e){return Wr(t.getUTCFullYear()%1e4,e,4)}function sSe(t,e){var r=t.getUTCDay();return t=r>=4||r===0?Nh(t):Nh.ceil(t),Wr(t.getUTCFullYear()%1e4,e,4)}function oSe(){return"+0000"}function qq(){return"%"}function Yq(t){return+t}function Xq(t){return Math.floor(+t/1e3)}var $q,Xi,cEe,uEe,Jq=N(()=>{"use strict";G5();o(OD,"localDate");o(PD,"utcDate");o(Ov,"newDate");o(BD,"formatLocale");$q={"-":"",_:" ",0:"0"},Xi=/^\s*\d+/,cEe=/^%/,uEe=/[\\^$*+?|[\]().{}]/g;o(Wr,"pad");o(hEe,"requote");o(Pv,"formatRe");o(Bv,"formatLookup");o(fEe,"parseWeekdayNumberSunday");o(dEe,"parseWeekdayNumberMonday");o(pEe,"parseWeekNumberSunday");o(mEe,"parseWeekNumberISO");o(gEe,"parseWeekNumberMonday");o(Gq,"parseFullYear");o(zq,"parseYear");o(yEe,"parseZone");o(vEe,"parseQuarter");o(xEe,"parseMonthNumber");o(Vq,"parseDayOfMonth");o(bEe,"parseDayOfYear");o(Uq,"parseHour24");o(TEe,"parseMinutes");o(wEe,"parseSeconds");o(kEe,"parseMilliseconds");o(EEe,"parseMicroseconds");o(SEe,"parseLiteralPercent");o(CEe,"parseUnixTimestamp");o(AEe,"parseUnixTimestampSeconds");o(Hq,"formatDayOfMonth");o(_Ee,"formatHour24");o(DEe,"formatHour12");o(LEe,"formatDayOfYear");o(jq,"formatMilliseconds");o(REe,"formatMicroseconds");o(NEe,"formatMonthNumber");o(MEe,"formatMinutes");o(IEe,"formatSeconds");o(OEe,"formatWeekdayNumberMonday");o(PEe,"formatWeekNumberSunday");o(Kq,"dISO");o(BEe,"formatWeekNumberISO");o(FEe,"formatWeekdayNumberSunday");o($Ee,"formatWeekNumberMonday");o(GEe,"formatYear");o(zEe,"formatYearISO");o(VEe,"formatFullYear");o(UEe,"formatFullYearISO");o(HEe,"formatZone");o(Wq,"formatUTCDayOfMonth");o(WEe,"formatUTCHour24");o(qEe,"formatUTCHour12");o(YEe,"formatUTCDayOfYear");o(Qq,"formatUTCMilliseconds");o(XEe,"formatUTCMicroseconds");o(jEe,"formatUTCMonthNumber");o(KEe,"formatUTCMinutes");o(QEe,"formatUTCSeconds");o(ZEe,"formatUTCWeekdayNumberMonday");o(JEe,"formatUTCWeekNumberSunday");o(Zq,"UTCdISO");o(eSe,"formatUTCWeekNumberISO");o(tSe,"formatUTCWeekdayNumberSunday");o(rSe,"formatUTCWeekNumberMonday");o(nSe,"formatUTCYear");o(iSe,"formatUTCYearISO");o(aSe,"formatUTCFullYear");o(sSe,"formatUTCFullYearISO");o(oSe,"formatUTCZone");o(qq,"formatLiteralPercent");o(Yq,"formatUnixTimestamp");o(Xq,"formatUnixTimestampSeconds")});function FD(t){return H0=BD(t),Nd=H0.format,eY=H0.parse,tY=H0.utcFormat,rY=H0.utcParse,H0}var H0,Nd,eY,tY,rY,nY=N(()=>{"use strict";Jq();FD({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"]});o(FD,"defaultLocale")});var $D=N(()=>{"use strict";nY()});function lSe(t){return new Date(t)}function cSe(t){return t instanceof Date?+t:+new Date(+t)}function iY(t,e,r,n,i,a,s,l,u,h){var f=Nv(),d=f.invert,p=f.domain,m=h(".%L"),g=h(":%S"),y=h("%I:%M"),x=h("%I %p"),v=h("%a %d"),b=h("%b %d"),T=h("%B"),S=h("%Y");function w(E){return(u(E)<E?m:l(E)<E?g:s(E)<E?y:a(E)<E?x:n(E)<E?i(E)<E?v:b:r(E)<E?T:S)(E)}return o(w,"tickFormat"),f.invert=function(E){return new Date(d(E))},f.domain=function(E){return arguments.length?p(Array.from(E,cSe)):p().map(lSe)},f.ticks=function(E){var _=p();return t(_[0],_[_.length-1],E??10)},f.tickFormat=function(E,_){return _==null?w:h(_)},f.nice=function(E){var _=p();return(!E||typeof E.range!="function")&&(E=e(_[0],_[_.length-1],E??10)),E?p(wD(_,E)):f},f.copy=function(){return R5(f,iY(t,e,r,n,i,a,s,l,u,h))},f}function z5(){return Lh.apply(iY(MD,ID,ro,ku,wl,Lo,wu,Tu,to,Nd).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)}var aY=N(()=>{"use strict";G5();$D();bD();Rv();Cq();o(lSe,"date");o(cSe,"number");o(iY,"calendar");o(z5,"time")});var sY=N(()=>{"use strict";bq();Sq();gD();aY()});function GD(t){for(var e=t.length/6|0,r=new Array(e),n=0;n<e;)r[n]="#"+t.slice(n*6,++n*6);return r}var oY=N(()=>{"use strict";o(GD,"default")});var zD,lY=N(()=>{"use strict";oY();zD=GD("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab")});var cY=N(()=>{"use strict";lY()});function Gn(t){return o(function(){return t},"constant")}var V5=N(()=>{"use strict";o(Gn,"default")});function hY(t){return t>1?0:t<-1?W0:Math.acos(t)}function UD(t){return t>=1?Fv:t<=-1?-Fv:Math.asin(t)}var VD,ca,Mh,uY,U5,El,Md,ji,W0,Fv,q0,H5=N(()=>{"use strict";VD=Math.abs,ca=Math.atan2,Mh=Math.cos,uY=Math.max,U5=Math.min,El=Math.sin,Md=Math.sqrt,ji=1e-12,W0=Math.PI,Fv=W0/2,q0=2*W0;o(hY,"acos");o(UD,"asin")});function W5(t){let e=3;return t.digits=function(r){if(!arguments.length)return e;if(r==null)e=null;else{let n=Math.floor(r);if(!(n>=0))throw new RangeError(`invalid digits: ${r}`);e=n}return t},()=>new Ed(e)}var HD=N(()=>{"use strict";G_();o(W5,"withPath")});function uSe(t){return t.innerRadius}function hSe(t){return t.outerRadius}function fSe(t){return t.startAngle}function dSe(t){return t.endAngle}function pSe(t){return t&&t.padAngle}function mSe(t,e,r,n,i,a,s,l){var u=r-t,h=n-e,f=s-i,d=l-a,p=d*u-f*h;if(!(p*p<ji))return p=(f*(e-a)-d*(t-i))/p,[t+p*u,e+p*h]}function q5(t,e,r,n,i,a,s){var l=t-r,u=e-n,h=(s?a:-a)/Md(l*l+u*u),f=h*u,d=-h*l,p=t+f,m=e+d,g=r+f,y=n+d,x=(p+g)/2,v=(m+y)/2,b=g-p,T=y-m,S=b*b+T*T,w=i-a,E=p*y-g*m,_=(T<0?-1:1)*Md(uY(0,w*w*S-E*E)),A=(E*T-b*_)/S,D=(-E*b-T*_)/S,O=(E*T+b*_)/S,R=(-E*b+T*_)/S,k=A-x,L=D-v,C=O-x,I=R-v;return k*k+L*L>C*C+I*I&&(A=O,D=R),{cx:A,cy:D,x01:-f,y01:-d,x11:A*(i/w-1),y11:D*(i/w-1)}}function Sl(){var t=uSe,e=hSe,r=Gn(0),n=null,i=fSe,a=dSe,s=pSe,l=null,u=W5(h);function h(){var f,d,p=+t.apply(this,arguments),m=+e.apply(this,arguments),g=i.apply(this,arguments)-Fv,y=a.apply(this,arguments)-Fv,x=VD(y-g),v=y>g;if(l||(l=f=u()),m<p&&(d=m,m=p,p=d),!(m>ji))l.moveTo(0,0);else if(x>q0-ji)l.moveTo(m*Mh(g),m*El(g)),l.arc(0,0,m,g,y,!v),p>ji&&(l.moveTo(p*Mh(y),p*El(y)),l.arc(0,0,p,y,g,v));else{var b=g,T=y,S=g,w=y,E=x,_=x,A=s.apply(this,arguments)/2,D=A>ji&&(n?+n.apply(this,arguments):Md(p*p+m*m)),O=U5(VD(m-p)/2,+r.apply(this,arguments)),R=O,k=O,L,C;if(D>ji){var I=UD(D/p*El(A)),M=UD(D/m*El(A));(E-=I*2)>ji?(I*=v?1:-1,S+=I,w-=I):(E=0,S=w=(g+y)/2),(_-=M*2)>ji?(M*=v?1:-1,b+=M,T-=M):(_=0,b=T=(g+y)/2)}var P=m*Mh(b),B=m*El(b),F=p*Mh(w),G=p*El(w);if(O>ji){var $=m*Mh(T),U=m*El(T),K=p*Mh(S),ne=p*El(S),j;if(x<W0)if(j=mSe(P,B,K,ne,$,U,F,G)){var le=P-j[0],Z=B-j[1],ce=$-j[0],Q=U-j[1],ee=1/El(hY((le*ce+Z*Q)/(Md(le*le+Z*Z)*Md(ce*ce+Q*Q)))/2),te=Md(j[0]*j[0]+j[1]*j[1]);R=U5(O,(p-te)/(ee-1)),k=U5(O,(m-te)/(ee+1))}else R=k=0}_>ji?k>ji?(L=q5(K,ne,P,B,m,k,v),C=q5($,U,F,G,m,k,v),l.moveTo(L.cx+L.x01,L.cy+L.y01),k<O?l.arc(L.cx,L.cy,k,ca(L.y01,L.x01),ca(C.y01,C.x01),!v):(l.arc(L.cx,L.cy,k,ca(L.y01,L.x01),ca(L.y11,L.x11),!v),l.arc(0,0,m,ca(L.cy+L.y11,L.cx+L.x11),ca(C.cy+C.y11,C.cx+C.x11),!v),l.arc(C.cx,C.cy,k,ca(C.y11,C.x11),ca(C.y01,C.x01),!v))):(l.moveTo(P,B),l.arc(0,0,m,b,T,!v)):l.moveTo(P,B),!(p>ji)||!(E>ji)?l.lineTo(F,G):R>ji?(L=q5(F,G,$,U,p,-R,v),C=q5(P,B,K,ne,p,-R,v),l.lineTo(L.cx+L.x01,L.cy+L.y01),R<O?l.arc(L.cx,L.cy,R,ca(L.y01,L.x01),ca(C.y01,C.x01),!v):(l.arc(L.cx,L.cy,R,ca(L.y01,L.x01),ca(L.y11,L.x11),!v),l.arc(0,0,p,ca(L.cy+L.y11,L.cx+L.x11),ca(C.cy+C.y11,C.cx+C.x11),v),l.arc(C.cx,C.cy,R,ca(C.y11,C.x11),ca(C.y01,C.x01),!v))):l.arc(0,0,p,w,S,v)}if(l.closePath(),f)return l=null,f+""||null}return o(h,"arc"),h.centroid=function(){var f=(+t.apply(this,arguments)+ +e.apply(this,arguments))/2,d=(+i.apply(this,arguments)+ +a.apply(this,arguments))/2-W0/2;return[Mh(d)*f,El(d)*f]},h.innerRadius=function(f){return arguments.length?(t=typeof f=="function"?f:Gn(+f),h):t},h.outerRadius=function(f){return arguments.length?(e=typeof f=="function"?f:Gn(+f),h):e},h.cornerRadius=function(f){return arguments.length?(r=typeof f=="function"?f:Gn(+f),h):r},h.padRadius=function(f){return arguments.length?(n=f==null?null:typeof f=="function"?f:Gn(+f),h):n},h.startAngle=function(f){return arguments.length?(i=typeof f=="function"?f:Gn(+f),h):i},h.endAngle=function(f){return arguments.length?(a=typeof f=="function"?f:Gn(+f),h):a},h.padAngle=function(f){return arguments.length?(s=typeof f=="function"?f:Gn(+f),h):s},h.context=function(f){return arguments.length?(l=f??null,h):l},h}var fY=N(()=>{"use strict";V5();H5();HD();o(uSe,"arcInnerRadius");o(hSe,"arcOuterRadius");o(fSe,"arcStartAngle");o(dSe,"arcEndAngle");o(pSe,"arcPadAngle");o(mSe,"intersect");o(q5,"cornerTangents");o(Sl,"default")});function $v(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}var K2t,WD=N(()=>{"use strict";K2t=Array.prototype.slice;o($v,"default")});function dY(t){this._context=t}function Eu(t){return new dY(t)}var qD=N(()=>{"use strict";o(dY,"Linear");dY.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._context.lineTo(t,e);break}},"point")};o(Eu,"default")});function pY(t){return t[0]}function mY(t){return t[1]}var gY=N(()=>{"use strict";o(pY,"x");o(mY,"y")});function Cl(t,e){var r=Gn(!0),n=null,i=Eu,a=null,s=W5(l);t=typeof t=="function"?t:t===void 0?pY:Gn(t),e=typeof e=="function"?e:e===void 0?mY:Gn(e);function l(u){var h,f=(u=$v(u)).length,d,p=!1,m;for(n==null&&(a=i(m=s())),h=0;h<=f;++h)!(h<f&&r(d=u[h],h,u))===p&&((p=!p)?a.lineStart():a.lineEnd()),p&&a.point(+t(d,h,u),+e(d,h,u));if(m)return a=null,m+""||null}return o(l,"line"),l.x=function(u){return arguments.length?(t=typeof u=="function"?u:Gn(+u),l):t},l.y=function(u){return arguments.length?(e=typeof u=="function"?u:Gn(+u),l):e},l.defined=function(u){return arguments.length?(r=typeof u=="function"?u:Gn(!!u),l):r},l.curve=function(u){return arguments.length?(i=u,n!=null&&(a=i(n)),l):i},l.context=function(u){return arguments.length?(u==null?n=a=null:a=i(n=u),l):n},l}var yY=N(()=>{"use strict";WD();V5();qD();HD();gY();o(Cl,"default")});function YD(t,e){return e<t?-1:e>t?1:e>=t?0:NaN}var vY=N(()=>{"use strict";o(YD,"default")});function XD(t){return t}var xY=N(()=>{"use strict";o(XD,"default")});function Y5(){var t=XD,e=YD,r=null,n=Gn(0),i=Gn(q0),a=Gn(0);function s(l){var u,h=(l=$v(l)).length,f,d,p=0,m=new Array(h),g=new Array(h),y=+n.apply(this,arguments),x=Math.min(q0,Math.max(-q0,i.apply(this,arguments)-y)),v,b=Math.min(Math.abs(x)/h,a.apply(this,arguments)),T=b*(x<0?-1:1),S;for(u=0;u<h;++u)(S=g[m[u]=u]=+t(l[u],u,l))>0&&(p+=S);for(e!=null?m.sort(function(w,E){return e(g[w],g[E])}):r!=null&&m.sort(function(w,E){return r(l[w],l[E])}),u=0,d=p?(x-h*T)/p:0;u<h;++u,y=v)f=m[u],S=g[f],v=y+(S>0?S*d:0)+T,g[f]={data:l[f],index:u,value:S,startAngle:y,endAngle:v,padAngle:b};return g}return o(s,"pie"),s.value=function(l){return arguments.length?(t=typeof l=="function"?l:Gn(+l),s):t},s.sortValues=function(l){return arguments.length?(e=l,r=null,s):e},s.sort=function(l){return arguments.length?(r=l,e=null,s):r},s.startAngle=function(l){return arguments.length?(n=typeof l=="function"?l:Gn(+l),s):n},s.endAngle=function(l){return arguments.length?(i=typeof l=="function"?l:Gn(+l),s):i},s.padAngle=function(l){return arguments.length?(a=typeof l=="function"?l:Gn(+l),s):a},s}var bY=N(()=>{"use strict";WD();V5();vY();xY();H5();o(Y5,"default")});function Gv(t){return new X5(t,!0)}function zv(t){return new X5(t,!1)}var X5,TY=N(()=>{"use strict";X5=class{static{o(this,"Bump")}constructor(e,r){this._context=e,this._x=r}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(e,r){switch(e=+e,r=+r,this._point){case 0:{this._point=1,this._line?this._context.lineTo(e,r):this._context.moveTo(e,r);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+e)/2,this._y0,this._x0,r,e,r):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+r)/2,e,this._y0,e,r);break}}this._x0=e,this._y0=r}};o(Gv,"bumpX");o(zv,"bumpY")});function no(){}var Vv=N(()=>{"use strict";o(no,"default")});function Y0(t,e,r){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+e)/6,(t._y0+4*t._y1+r)/6)}function Uv(t){this._context=t}function Ro(t){return new Uv(t)}var Hv=N(()=>{"use strict";o(Y0,"point");o(Uv,"Basis");Uv.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 3:Y0(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},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Y0(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e},"point")};o(Ro,"default")});function wY(t){this._context=t}function j5(t){return new wY(t)}var kY=N(()=>{"use strict";Vv();Hv();o(wY,"BasisClosed");wY.prototype={areaStart:no,areaEnd:no,lineStart:o(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},"lineStart"),lineEnd:o(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}}},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x2=t,this._y2=e;break;case 1:this._point=2,this._x3=t,this._y3=e;break;case 2:this._point=3,this._x4=t,this._y4=e,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+e)/6);break;default:Y0(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e},"point")};o(j5,"default")});function EY(t){this._context=t}function K5(t){return new EY(t)}var SY=N(()=>{"use strict";Hv();o(EY,"BasisOpen");EY.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+t)/6,n=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(r,n):this._context.moveTo(r,n);break;case 3:this._point=4;default:Y0(this,t,e);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e},"point")};o(K5,"default")});function CY(t,e){this._basis=new Uv(t),this._beta=e}var jD,AY=N(()=>{"use strict";Hv();o(CY,"Bundle");CY.prototype={lineStart:o(function(){this._x=[],this._y=[],this._basis.lineStart()},"lineStart"),lineEnd:o(function(){var t=this._x,e=this._y,r=t.length-1;if(r>0)for(var n=t[0],i=e[0],a=t[r]-n,s=e[r]-i,l=-1,u;++l<=r;)u=l/r,this._basis.point(this._beta*t[l]+(1-this._beta)*(n+u*a),this._beta*e[l]+(1-this._beta)*(i+u*s));this._x=this._y=null,this._basis.lineEnd()},"lineEnd"),point:o(function(t,e){this._x.push(+t),this._y.push(+e)},"point")};jD=o(function t(e){function r(n){return e===1?new Uv(n):new CY(n,e)}return o(r,"bundle"),r.beta=function(n){return t(+n)},r},"custom")(.85)});function X0(t,e,r){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-e),t._y2+t._k*(t._y1-r),t._x2,t._y2)}function Q5(t,e){this._context=t,this._k=(1-e)/6}var Wv,qv=N(()=>{"use strict";o(X0,"point");o(Q5,"Cardinal");Q5.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:X0(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2,this._x1=t,this._y1=e;break;case 2:this._point=3;default:X0(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};Wv=o(function t(e){function r(n){return new Q5(n,e)}return o(r,"cardinal"),r.tension=function(n){return t(+n)},r},"custom")(0)});function Z5(t,e){this._context=t,this._k=(1-e)/6}var KD,QD=N(()=>{"use strict";Vv();qv();o(Z5,"CardinalClosed");Z5.prototype={areaStart:no,areaEnd:no,lineStart:o(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},"lineStart"),lineEnd:o(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}}},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:X0(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};KD=o(function t(e){function r(n){return new Z5(n,e)}return o(r,"cardinal"),r.tension=function(n){return t(+n)},r},"custom")(0)});function J5(t,e){this._context=t,this._k=(1-e)/6}var ZD,JD=N(()=>{"use strict";qv();o(J5,"CardinalOpen");J5.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:X0(this,t,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};ZD=o(function t(e){function r(n){return new J5(n,e)}return o(r,"cardinal"),r.tension=function(n){return t(+n)},r},"custom")(0)});function Yv(t,e,r){var n=t._x1,i=t._y1,a=t._x2,s=t._y2;if(t._l01_a>ji){var l=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,u=3*t._l01_a*(t._l01_a+t._l12_a);n=(n*l-t._x0*t._l12_2a+t._x2*t._l01_2a)/u,i=(i*l-t._y0*t._l12_2a+t._y2*t._l01_2a)/u}if(t._l23_a>ji){var h=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,f=3*t._l23_a*(t._l23_a+t._l12_a);a=(a*h+t._x1*t._l23_2a-e*t._l12_2a)/f,s=(s*h+t._y1*t._l23_2a-r*t._l12_2a)/f}t._context.bezierCurveTo(n,i,a,s,t._x2,t._y2)}function _Y(t,e){this._context=t,this._alpha=e}var Xv,eT=N(()=>{"use strict";H5();qv();o(Yv,"point");o(_Y,"CatmullRom");_Y.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(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},"lineStart"),lineEnd:o(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},"lineEnd"),point:o(function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;default:Yv(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};Xv=o(function t(e){function r(n){return e?new _Y(n,e):new Q5(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return t(+n)},r},"custom")(.5)});function DY(t,e){this._context=t,this._alpha=e}var eL,LY=N(()=>{"use strict";QD();Vv();eT();o(DY,"CatmullRomClosed");DY.prototype={areaStart:no,areaEnd:no,lineStart:o(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},"lineStart"),lineEnd:o(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}}},"lineEnd"),point:o(function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:Yv(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};eL=o(function t(e){function r(n){return e?new DY(n,e):new Z5(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return t(+n)},r},"custom")(.5)});function RY(t,e){this._context=t,this._alpha=e}var tL,NY=N(()=>{"use strict";JD();eT();o(RY,"CatmullRomOpen");RY.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(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},"lineStart"),lineEnd:o(function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Yv(this,t,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e},"point")};tL=o(function t(e){function r(n){return e?new RY(n,e):new J5(n,0)}return o(r,"catmullRom"),r.alpha=function(n){return t(+n)},r},"custom")(.5)});function MY(t){this._context=t}function tT(t){return new MY(t)}var IY=N(()=>{"use strict";Vv();o(MY,"LinearClosed");MY.prototype={areaStart:no,areaEnd:no,lineStart:o(function(){this._point=0},"lineStart"),lineEnd:o(function(){this._point&&this._context.closePath()},"lineEnd"),point:o(function(t,e){t=+t,e=+e,this._point?this._context.lineTo(t,e):(this._point=1,this._context.moveTo(t,e))},"point")};o(tT,"default")});function OY(t){return t<0?-1:1}function PY(t,e,r){var n=t._x1-t._x0,i=e-t._x1,a=(t._y1-t._y0)/(n||i<0&&-0),s=(r-t._y1)/(i||n<0&&-0),l=(a*i+s*n)/(n+i);return(OY(a)+OY(s))*Math.min(Math.abs(a),Math.abs(s),.5*Math.abs(l))||0}function BY(t,e){var r=t._x1-t._x0;return r?(3*(t._y1-t._y0)/r-e)/2:e}function rL(t,e,r){var n=t._x0,i=t._y0,a=t._x1,s=t._y1,l=(a-n)/3;t._context.bezierCurveTo(n+l,i+l*e,a-l,s-l*r,a,s)}function rT(t){this._context=t}function FY(t){this._context=new $Y(t)}function $Y(t){this._context=t}function jv(t){return new rT(t)}function Kv(t){return new FY(t)}var GY=N(()=>{"use strict";o(OY,"sign");o(PY,"slope3");o(BY,"slope2");o(rL,"point");o(rT,"MonotoneX");rT.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},"lineStart"),lineEnd:o(function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:rL(this,this._t0,BY(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},"lineEnd"),point:o(function(t,e){var r=NaN;if(t=+t,e=+e,!(t===this._x1&&e===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,rL(this,BY(this,r=PY(this,t,e)),r);break;default:rL(this,this._t0,r=PY(this,t,e));break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e,this._t0=r}},"point")};o(FY,"MonotoneY");(FY.prototype=Object.create(rT.prototype)).point=function(t,e){rT.prototype.point.call(this,e,t)};o($Y,"ReflectContext");$Y.prototype={moveTo:o(function(t,e){this._context.moveTo(e,t)},"moveTo"),closePath:o(function(){this._context.closePath()},"closePath"),lineTo:o(function(t,e){this._context.lineTo(e,t)},"lineTo"),bezierCurveTo:o(function(t,e,r,n,i,a){this._context.bezierCurveTo(e,t,n,r,a,i)},"bezierCurveTo")};o(jv,"monotoneX");o(Kv,"monotoneY")});function VY(t){this._context=t}function zY(t){var e,r=t.length-1,n,i=new Array(r),a=new Array(r),s=new Array(r);for(i[0]=0,a[0]=2,s[0]=t[0]+2*t[1],e=1;e<r-1;++e)i[e]=1,a[e]=4,s[e]=4*t[e]+2*t[e+1];for(i[r-1]=2,a[r-1]=7,s[r-1]=8*t[r-1]+t[r],e=1;e<r;++e)n=i[e]/a[e-1],a[e]-=n,s[e]-=n*s[e-1];for(i[r-1]=s[r-1]/a[r-1],e=r-2;e>=0;--e)i[e]=(s[e]-i[e+1])/a[e];for(a[r-1]=(t[r]+i[r-1])/2,e=0;e<r-1;++e)a[e]=2*t[e+1]-i[e+1];return[i,a]}function j0(t){return new VY(t)}var UY=N(()=>{"use strict";o(VY,"Natural");VY.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x=[],this._y=[]},"lineStart"),lineEnd:o(function(){var t=this._x,e=this._y,r=t.length;if(r)if(this._line?this._context.lineTo(t[0],e[0]):this._context.moveTo(t[0],e[0]),r===2)this._context.lineTo(t[1],e[1]);else for(var n=zY(t),i=zY(e),a=0,s=1;s<r;++a,++s)this._context.bezierCurveTo(n[0][a],i[0][a],n[1][a],i[1][a],t[s],e[s]);(this._line||this._line!==0&&r===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},"lineEnd"),point:o(function(t,e){this._x.push(+t),this._y.push(+e)},"point")};o(zY,"controlPoints");o(j0,"default")});function nT(t,e){this._context=t,this._t=e}function K0(t){return new nT(t,.5)}function Qv(t){return new nT(t,0)}function Zv(t){return new nT(t,1)}var HY=N(()=>{"use strict";o(nT,"Step");nT.prototype={areaStart:o(function(){this._line=0},"areaStart"),areaEnd:o(function(){this._line=NaN},"areaEnd"),lineStart:o(function(){this._x=this._y=NaN,this._point=0},"lineStart"),lineEnd:o(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)},"lineEnd"),point:o(function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(t,e);else{var r=this._x*(1-this._t)+t*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,e)}break}}this._x=t,this._y=e},"point")};o(K0,"default");o(Qv,"stepBefore");o(Zv,"stepAfter")});var WY=N(()=>{"use strict";fY();yY();bY();kY();SY();Hv();TY();AY();QD();JD();qv();LY();NY();eT();IY();qD();GY();UY();HY()});var qY=N(()=>{"use strict"});var YY=N(()=>{"use strict"});function Ih(t,e,r){this.k=t,this.x=e,this.y=r}function iL(t){for(;!t.__zoom;)if(!(t=t.parentNode))return nL;return t.__zoom}var nL,aL=N(()=>{"use strict";o(Ih,"Transform");Ih.prototype={constructor:Ih,scale:o(function(t){return t===1?this:new Ih(this.k*t,this.x,this.y)},"scale"),translate:o(function(t,e){return t===0&e===0?this:new Ih(this.k,this.x+this.k*t,this.y+this.k*e)},"translate"),apply:o(function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},"apply"),applyX:o(function(t){return t*this.k+this.x},"applyX"),applyY:o(function(t){return t*this.k+this.y},"applyY"),invert:o(function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},"invert"),invertX:o(function(t){return(t-this.x)/this.k},"invertX"),invertY:o(function(t){return(t-this.y)/this.k},"invertY"),rescaleX:o(function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},"rescaleX"),rescaleY:o(function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},"rescaleY"),toString:o(function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"},"toString")};nL=new Ih(1,0,0);iL.prototype=Ih.prototype;o(iL,"transform")});var XY=N(()=>{"use strict"});var jY=N(()=>{"use strict";T5();qY();YY();aL();XY()});var KY=N(()=>{"use strict";jY();aL()});var pr=N(()=>{"use strict";kh();iU();kW();AW();M0();_W();DW();YA();jU();LW();O_();RW();MW();Z_();YW();yq();P0();G_();vq();NW();xq();sY();cY();yl();WY();G5();$D();m5();T5();KY()});var QY=Aa(Ki=>{"use strict";Object.defineProperty(Ki,"__esModule",{value:!0});Ki.BLANK_URL=Ki.relativeFirstCharacters=Ki.whitespaceEscapeCharsRegex=Ki.urlSchemeRegex=Ki.ctrlCharactersRegex=Ki.htmlCtrlEntityRegex=Ki.htmlEntitiesRegex=Ki.invalidProtocolRegex=void 0;Ki.invalidProtocolRegex=/^([^\w]*)(javascript|data|vbscript)/im;Ki.htmlEntitiesRegex=/&#(\w+)(^\w|;)?/g;Ki.htmlCtrlEntityRegex=/&(newline|tab);/gi;Ki.ctrlCharactersRegex=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim;Ki.urlSchemeRegex=/^.+(:|:)/gim;Ki.whitespaceEscapeCharsRegex=/(\\|%5[cC])((%(6[eE]|72|74))|[nrt])/g;Ki.relativeFirstCharacters=[".","/"];Ki.BLANK_URL="about:blank"});var Q0=Aa(iT=>{"use strict";Object.defineProperty(iT,"__esModule",{value:!0});iT.sanitizeUrl=void 0;var La=QY();function gSe(t){return La.relativeFirstCharacters.indexOf(t[0])>-1}o(gSe,"isRelativeUrlWithoutProtocol");function ySe(t){var e=t.replace(La.ctrlCharactersRegex,"");return e.replace(La.htmlEntitiesRegex,function(r,n){return String.fromCharCode(n)})}o(ySe,"decodeHtmlCharacters");function vSe(t){return URL.canParse(t)}o(vSe,"isValidUrl");function ZY(t){try{return decodeURIComponent(t)}catch{return t}}o(ZY,"decodeURI");function xSe(t){if(!t)return La.BLANK_URL;var e,r=ZY(t.trim());do r=ySe(r).replace(La.htmlCtrlEntityRegex,"").replace(La.ctrlCharactersRegex,"").replace(La.whitespaceEscapeCharsRegex,"").trim(),r=ZY(r),e=r.match(La.ctrlCharactersRegex)||r.match(La.htmlEntitiesRegex)||r.match(La.htmlCtrlEntityRegex)||r.match(La.whitespaceEscapeCharsRegex);while(e&&e.length>0);var n=r;if(!n)return La.BLANK_URL;if(gSe(n))return n;var i=n.trimStart(),a=i.match(La.urlSchemeRegex);if(!a)return n;var s=a[0].toLowerCase().trim();if(La.invalidProtocolRegex.test(s))return La.BLANK_URL;var l=i.replace(/\\/g,"/");if(s==="mailto:"||s.includes("://"))return l;if(s==="http:"||s==="https:"){if(!vSe(l))return La.BLANK_URL;var u=new URL(l);return u.protocol=u.protocol.toLowerCase(),u.hostname=u.hostname.toLowerCase(),u.toString()}return l}o(xSe,"sanitizeUrl");iT.sanitizeUrl=xSe});var sL,Id,aT,JY,sT,oT,ua,Jv,e2=N(()=>{"use strict";sL=ja(Q0(),1);dr();Id=o((t,e)=>{let r=t.append("rect");if(r.attr("x",e.x),r.attr("y",e.y),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("width",e.width),r.attr("height",e.height),e.name&&r.attr("name",e.name),e.rx&&r.attr("rx",e.rx),e.ry&&r.attr("ry",e.ry),e.attrs!==void 0)for(let n in e.attrs)r.attr(n,e.attrs[n]);return e.class&&r.attr("class",e.class),r},"drawRect"),aT=o((t,e)=>{let r={x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,stroke:e.stroke,class:"rect"};Id(t,r).lower()},"drawBackgroundRect"),JY=o((t,e)=>{let r=e.text.replace(hd," "),n=t.append("text");n.attr("x",e.x),n.attr("y",e.y),n.attr("class","legend"),n.style("text-anchor",e.anchor),e.class&&n.attr("class",e.class);let i=n.append("tspan");return i.attr("x",e.x+e.textMargin*2),i.text(r),n},"drawText"),sT=o((t,e,r,n)=>{let i=t.append("image");i.attr("x",e),i.attr("y",r);let a=(0,sL.sanitizeUrl)(n);i.attr("xlink:href",a)},"drawImage"),oT=o((t,e,r,n)=>{let i=t.append("use");i.attr("x",e),i.attr("y",r);let a=(0,sL.sanitizeUrl)(n);i.attr("xlink:href",`#${a}`)},"drawEmbeddedImage"),ua=o(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),Jv=o(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj")});var eX,oL,tX,bSe,TSe,wSe,kSe,ESe,SSe,CSe,ASe,_Se,DSe,LSe,RSe,Su,Al,rX=N(()=>{"use strict";dr();e2();eX=ja(Q0(),1),oL=o(function(t,e){return Id(t,e)},"drawRect"),tX=o(function(t,e,r,n,i,a){let s=t.append("image");s.attr("width",e),s.attr("height",r),s.attr("x",n),s.attr("y",i);let l=a.startsWith("data:image/png;base64")?a:(0,eX.sanitizeUrl)(a);s.attr("xlink:href",l)},"drawImage"),bSe=o((t,e,r)=>{let n=t.append("g"),i=0;for(let a of e){let s=a.textColor?a.textColor:"#444444",l=a.lineColor?a.lineColor:"#444444",u=a.offsetX?parseInt(a.offsetX):0,h=a.offsetY?parseInt(a.offsetY):0,f="";if(i===0){let p=n.append("line");p.attr("x1",a.startPoint.x),p.attr("y1",a.startPoint.y),p.attr("x2",a.endPoint.x),p.attr("y2",a.endPoint.y),p.attr("stroke-width","1"),p.attr("stroke",l),p.style("fill","none"),a.type!=="rel_b"&&p.attr("marker-end","url("+f+"#arrowhead)"),(a.type==="birel"||a.type==="rel_b")&&p.attr("marker-start","url("+f+"#arrowend)"),i=-1}else{let p=n.append("path");p.attr("fill","none").attr("stroke-width","1").attr("stroke",l).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",a.startPoint.x).replaceAll("starty",a.startPoint.y).replaceAll("controlx",a.startPoint.x+(a.endPoint.x-a.startPoint.x)/2-(a.endPoint.x-a.startPoint.x)/4).replaceAll("controly",a.startPoint.y+(a.endPoint.y-a.startPoint.y)/2).replaceAll("stopx",a.endPoint.x).replaceAll("stopy",a.endPoint.y)),a.type!=="rel_b"&&p.attr("marker-end","url("+f+"#arrowhead)"),(a.type==="birel"||a.type==="rel_b")&&p.attr("marker-start","url("+f+"#arrowend)")}let d=r.messageFont();Su(r)(a.label.text,n,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+u,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+h,a.label.width,a.label.height,{fill:s},d),a.techn&&a.techn.text!==""&&(d=r.messageFont(),Su(r)("["+a.techn.text+"]",n,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+u,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+r.messageFontSize+5+h,Math.max(a.label.width,a.techn.width),a.techn.height,{fill:s,"font-style":"italic"},d))}},"drawRels"),TSe=o(function(t,e,r){let n=t.append("g"),i=e.bgColor?e.bgColor:"none",a=e.borderColor?e.borderColor:"#444444",s=e.fontColor?e.fontColor:"black",l={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};e.nodeType&&(l={"stroke-width":1});let u={x:e.x,y:e.y,fill:i,stroke:a,width:e.width,height:e.height,rx:2.5,ry:2.5,attrs:l};oL(n,u);let h=r.boundaryFont();h.fontWeight="bold",h.fontSize=h.fontSize+2,h.fontColor=s,Su(r)(e.label.text,n,e.x,e.y+e.label.Y,e.width,e.height,{fill:"#444444"},h),e.type&&e.type.text!==""&&(h=r.boundaryFont(),h.fontColor=s,Su(r)(e.type.text,n,e.x,e.y+e.type.Y,e.width,e.height,{fill:"#444444"},h)),e.descr&&e.descr.text!==""&&(h=r.boundaryFont(),h.fontSize=h.fontSize-2,h.fontColor=s,Su(r)(e.descr.text,n,e.x,e.y+e.descr.Y,e.width,e.height,{fill:"#444444"},h))},"drawBoundary"),wSe=o(function(t,e,r){let n=e.bgColor?e.bgColor:r[e.typeC4Shape.text+"_bg_color"],i=e.borderColor?e.borderColor:r[e.typeC4Shape.text+"_border_color"],a=e.fontColor?e.fontColor:"#FFFFFF",s="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(e.typeC4Shape.text){case"person":s="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":s="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII=";break}let l=t.append("g");l.attr("class","person-man");let u=ua();switch(e.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":u.x=e.x,u.y=e.y,u.fill=n,u.width=e.width,u.height=e.height,u.stroke=i,u.rx=2.5,u.ry=2.5,u.attrs={"stroke-width":.5},oL(l,u);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":l.append("path").attr("fill",n).attr("stroke-width","0.5").attr("stroke",i).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",e.x).replaceAll("starty",e.y).replaceAll("half",e.width/2).replaceAll("height",e.height)),l.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("half",e.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":l.append("path").attr("fill",n).attr("stroke-width","0.5").attr("stroke",i).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",e.x).replaceAll("starty",e.y).replaceAll("width",e.width).replaceAll("half",e.height/2)),l.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",e.x+e.width).replaceAll("starty",e.y).replaceAll("half",e.height/2));break}let h=RSe(r,e.typeC4Shape.text);switch(l.append("text").attr("fill",a).attr("font-family",h.fontFamily).attr("font-size",h.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",e.typeC4Shape.width).attr("x",e.x+e.width/2-e.typeC4Shape.width/2).attr("y",e.y+e.typeC4Shape.Y).text("<<"+e.typeC4Shape.text+">>"),e.typeC4Shape.text){case"person":case"external_person":tX(l,48,48,e.x+e.width/2-24,e.y+e.image.Y,s);break}let f=r[e.typeC4Shape.text+"Font"]();return f.fontWeight="bold",f.fontSize=f.fontSize+2,f.fontColor=a,Su(r)(e.label.text,l,e.x,e.y+e.label.Y,e.width,e.height,{fill:a},f),f=r[e.typeC4Shape.text+"Font"](),f.fontColor=a,e.techn&&e.techn?.text!==""?Su(r)(e.techn.text,l,e.x,e.y+e.techn.Y,e.width,e.height,{fill:a,"font-style":"italic"},f):e.type&&e.type.text!==""&&Su(r)(e.type.text,l,e.x,e.y+e.type.Y,e.width,e.height,{fill:a,"font-style":"italic"},f),e.descr&&e.descr.text!==""&&(f=r.personFont(),f.fontColor=a,Su(r)(e.descr.text,l,e.x,e.y+e.descr.Y,e.width,e.height,{fill:a},f)),e.height},"drawC4Shape"),kSe=o(function(t){t.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")},"insertDatabaseIcon"),ESe=o(function(t){t.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")},"insertComputerIcon"),SSe=o(function(t){t.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")},"insertClockIcon"),CSe=o(function(t){t.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")},"insertArrowHead"),ASe=o(function(t){t.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")},"insertArrowEnd"),_Se=o(function(t){t.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")},"insertArrowFilledHead"),DSe=o(function(t){t.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)},"insertDynamicNumber"),LSe=o(function(t){let r=t.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);r.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"),r.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")},"insertArrowCrossHead"),RSe=o((t,e)=>({fontFamily:t[e+"FontFamily"],fontSize:t[e+"FontSize"],fontWeight:t[e+"FontWeight"]}),"getC4ShapeFont"),Su=function(){function t(i,a,s,l,u,h,f){let d=a.append("text").attr("x",s+u/2).attr("y",l+h/2+5).style("text-anchor","middle").text(i);n(d,f)}o(t,"byText");function e(i,a,s,l,u,h,f,d){let{fontSize:p,fontFamily:m,fontWeight:g}=d,y=i.split(Je.lineBreakRegex);for(let x=0;x<y.length;x++){let v=x*p-p*(y.length-1)/2,b=a.append("text").attr("x",s+u/2).attr("y",l).style("text-anchor","middle").attr("dominant-baseline","middle").style("font-size",p).style("font-weight",g).style("font-family",m);b.append("tspan").attr("dy",v).text(y[x]).attr("alignment-baseline","mathematical"),n(b,f)}}o(e,"byTspan");function r(i,a,s,l,u,h,f,d){let p=a.append("switch"),g=p.append("foreignObject").attr("x",s).attr("y",l).attr("width",u).attr("height",h).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");g.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(i),e(i,p,s,l,u,h,f,d),n(g,f)}o(r,"byFo");function n(i,a){for(let s in a)a.hasOwnProperty(s)&&i.attr(s,a[s])}return o(n,"_setTextAttrs"),function(i){return i.textPlacement==="fo"?r:i.textPlacement==="old"?t:e}}(),Al={drawRect:oL,drawBoundary:TSe,drawC4Shape:wSe,drawRels:bSe,drawImage:tX,insertArrowHead:CSe,insertArrowEnd:ASe,insertArrowFilledHead:_Se,insertDynamicNumber:DSe,insertArrowCrossHead:LSe,insertDatabaseIcon:kSe,insertComputerIcon:ESe,insertClockIcon:SSe}});var NSe,cT,lL=N(()=>{"use strict";NSe=typeof global=="object"&&global&&global.Object===Object&&global,cT=NSe});var MSe,ISe,fi,No=N(()=>{"use strict";lL();MSe=typeof self=="object"&&self&&self.Object===Object&&self,ISe=cT||MSe||Function("return this")(),fi=ISe});var OSe,Qi,Od=N(()=>{"use strict";No();OSe=fi.Symbol,Qi=OSe});function FSe(t){var e=PSe.call(t,t2),r=t[t2];try{t[t2]=void 0;var n=!0}catch{}var i=BSe.call(t);return n&&(e?t[t2]=r:delete t[t2]),i}var nX,PSe,BSe,t2,iX,aX=N(()=>{"use strict";Od();nX=Object.prototype,PSe=nX.hasOwnProperty,BSe=nX.toString,t2=Qi?Qi.toStringTag:void 0;o(FSe,"getRawTag");iX=FSe});function zSe(t){return GSe.call(t)}var $Se,GSe,sX,oX=N(()=>{"use strict";$Se=Object.prototype,GSe=$Se.toString;o(zSe,"objectToString");sX=zSe});function HSe(t){return t==null?t===void 0?USe:VSe:lX&&lX in Object(t)?iX(t):sX(t)}var VSe,USe,lX,ha,Cu=N(()=>{"use strict";Od();aX();oX();VSe="[object Null]",USe="[object Undefined]",lX=Qi?Qi.toStringTag:void 0;o(HSe,"baseGetTag");ha=HSe});function WSe(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var Tn,io=N(()=>{"use strict";o(WSe,"isObject");Tn=WSe});function KSe(t){if(!Tn(t))return!1;var e=ha(t);return e==YSe||e==XSe||e==qSe||e==jSe}var qSe,YSe,XSe,jSe,Ai,r2=N(()=>{"use strict";Cu();io();qSe="[object AsyncFunction]",YSe="[object Function]",XSe="[object GeneratorFunction]",jSe="[object Proxy]";o(KSe,"isFunction");Ai=KSe});var QSe,uT,cX=N(()=>{"use strict";No();QSe=fi["__core-js_shared__"],uT=QSe});function ZSe(t){return!!uX&&uX in t}var uX,hX,fX=N(()=>{"use strict";cX();uX=function(){var t=/[^.]+$/.exec(uT&&uT.keys&&uT.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();o(ZSe,"isMasked");hX=ZSe});function t6e(t){if(t!=null){try{return e6e.call(t)}catch{}try{return t+""}catch{}}return""}var JSe,e6e,Au,cL=N(()=>{"use strict";JSe=Function.prototype,e6e=JSe.toString;o(t6e,"toSource");Au=t6e});function c6e(t){if(!Tn(t)||hX(t))return!1;var e=Ai(t)?l6e:n6e;return e.test(Au(t))}var r6e,n6e,i6e,a6e,s6e,o6e,l6e,dX,pX=N(()=>{"use strict";r2();fX();io();cL();r6e=/[\\^$.*+?()[\]{}|]/g,n6e=/^\[object .+?Constructor\]$/,i6e=Function.prototype,a6e=Object.prototype,s6e=i6e.toString,o6e=a6e.hasOwnProperty,l6e=RegExp("^"+s6e.call(o6e).replace(r6e,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");o(c6e,"baseIsNative");dX=c6e});function u6e(t,e){return t?.[e]}var mX,gX=N(()=>{"use strict";o(u6e,"getValue");mX=u6e});function h6e(t,e){var r=mX(t,e);return dX(r)?r:void 0}var Ds,Oh=N(()=>{"use strict";pX();gX();o(h6e,"getNative");Ds=h6e});var f6e,_u,n2=N(()=>{"use strict";Oh();f6e=Ds(Object,"create"),_u=f6e});function d6e(){this.__data__=_u?_u(null):{},this.size=0}var yX,vX=N(()=>{"use strict";n2();o(d6e,"hashClear");yX=d6e});function p6e(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}var xX,bX=N(()=>{"use strict";o(p6e,"hashDelete");xX=p6e});function v6e(t){var e=this.__data__;if(_u){var r=e[t];return r===m6e?void 0:r}return y6e.call(e,t)?e[t]:void 0}var m6e,g6e,y6e,TX,wX=N(()=>{"use strict";n2();m6e="__lodash_hash_undefined__",g6e=Object.prototype,y6e=g6e.hasOwnProperty;o(v6e,"hashGet");TX=v6e});function T6e(t){var e=this.__data__;return _u?e[t]!==void 0:b6e.call(e,t)}var x6e,b6e,kX,EX=N(()=>{"use strict";n2();x6e=Object.prototype,b6e=x6e.hasOwnProperty;o(T6e,"hashHas");kX=T6e});function k6e(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=_u&&e===void 0?w6e:e,this}var w6e,SX,CX=N(()=>{"use strict";n2();w6e="__lodash_hash_undefined__";o(k6e,"hashSet");SX=k6e});function Z0(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}var uL,AX=N(()=>{"use strict";vX();bX();wX();EX();CX();o(Z0,"Hash");Z0.prototype.clear=yX;Z0.prototype.delete=xX;Z0.prototype.get=TX;Z0.prototype.has=kX;Z0.prototype.set=SX;uL=Z0});function E6e(){this.__data__=[],this.size=0}var _X,DX=N(()=>{"use strict";o(E6e,"listCacheClear");_X=E6e});function S6e(t,e){return t===e||t!==t&&e!==e}var Mo,Pd=N(()=>{"use strict";o(S6e,"eq");Mo=S6e});function C6e(t,e){for(var r=t.length;r--;)if(Mo(t[r][0],e))return r;return-1}var Ph,i2=N(()=>{"use strict";Pd();o(C6e,"assocIndexOf");Ph=C6e});function D6e(t){var e=this.__data__,r=Ph(e,t);if(r<0)return!1;var n=e.length-1;return r==n?e.pop():_6e.call(e,r,1),--this.size,!0}var A6e,_6e,LX,RX=N(()=>{"use strict";i2();A6e=Array.prototype,_6e=A6e.splice;o(D6e,"listCacheDelete");LX=D6e});function L6e(t){var e=this.__data__,r=Ph(e,t);return r<0?void 0:e[r][1]}var NX,MX=N(()=>{"use strict";i2();o(L6e,"listCacheGet");NX=L6e});function R6e(t){return Ph(this.__data__,t)>-1}var IX,OX=N(()=>{"use strict";i2();o(R6e,"listCacheHas");IX=R6e});function N6e(t,e){var r=this.__data__,n=Ph(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}var PX,BX=N(()=>{"use strict";i2();o(N6e,"listCacheSet");PX=N6e});function J0(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}var Bh,a2=N(()=>{"use strict";DX();RX();MX();OX();BX();o(J0,"ListCache");J0.prototype.clear=_X;J0.prototype.delete=LX;J0.prototype.get=NX;J0.prototype.has=IX;J0.prototype.set=PX;Bh=J0});var M6e,Fh,hT=N(()=>{"use strict";Oh();No();M6e=Ds(fi,"Map"),Fh=M6e});function I6e(){this.size=0,this.__data__={hash:new uL,map:new(Fh||Bh),string:new uL}}var FX,$X=N(()=>{"use strict";AX();a2();hT();o(I6e,"mapCacheClear");FX=I6e});function O6e(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}var GX,zX=N(()=>{"use strict";o(O6e,"isKeyable");GX=O6e});function P6e(t,e){var r=t.__data__;return GX(e)?r[typeof e=="string"?"string":"hash"]:r.map}var $h,s2=N(()=>{"use strict";zX();o(P6e,"getMapData");$h=P6e});function B6e(t){var e=$h(this,t).delete(t);return this.size-=e?1:0,e}var VX,UX=N(()=>{"use strict";s2();o(B6e,"mapCacheDelete");VX=B6e});function F6e(t){return $h(this,t).get(t)}var HX,WX=N(()=>{"use strict";s2();o(F6e,"mapCacheGet");HX=F6e});function $6e(t){return $h(this,t).has(t)}var qX,YX=N(()=>{"use strict";s2();o($6e,"mapCacheHas");qX=$6e});function G6e(t,e){var r=$h(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this}var XX,jX=N(()=>{"use strict";s2();o(G6e,"mapCacheSet");XX=G6e});function em(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}var Bd,fT=N(()=>{"use strict";$X();UX();WX();YX();jX();o(em,"MapCache");em.prototype.clear=FX;em.prototype.delete=VX;em.prototype.get=HX;em.prototype.has=qX;em.prototype.set=XX;Bd=em});function hL(t,e){if(typeof t!="function"||e!=null&&typeof e!="function")throw new TypeError(z6e);var r=o(function(){var n=arguments,i=e?e.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var s=t.apply(this,n);return r.cache=a.set(i,s)||a,s},"memoized");return r.cache=new(hL.Cache||Bd),r}var z6e,tm,fL=N(()=>{"use strict";fT();z6e="Expected a function";o(hL,"memoize");hL.Cache=Bd;tm=hL});function V6e(){this.__data__=new Bh,this.size=0}var KX,QX=N(()=>{"use strict";a2();o(V6e,"stackClear");KX=V6e});function U6e(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}var ZX,JX=N(()=>{"use strict";o(U6e,"stackDelete");ZX=U6e});function H6e(t){return this.__data__.get(t)}var ej,tj=N(()=>{"use strict";o(H6e,"stackGet");ej=H6e});function W6e(t){return this.__data__.has(t)}var rj,nj=N(()=>{"use strict";o(W6e,"stackHas");rj=W6e});function Y6e(t,e){var r=this.__data__;if(r instanceof Bh){var n=r.__data__;if(!Fh||n.length<q6e-1)return n.push([t,e]),this.size=++r.size,this;r=this.__data__=new Bd(n)}return r.set(t,e),this.size=r.size,this}var q6e,ij,aj=N(()=>{"use strict";a2();hT();fT();q6e=200;o(Y6e,"stackSet");ij=Y6e});function rm(t){var e=this.__data__=new Bh(t);this.size=e.size}var fc,o2=N(()=>{"use strict";a2();QX();JX();tj();nj();aj();o(rm,"Stack");rm.prototype.clear=KX;rm.prototype.delete=ZX;rm.prototype.get=ej;rm.prototype.has=rj;rm.prototype.set=ij;fc=rm});var X6e,nm,dL=N(()=>{"use strict";Oh();X6e=function(){try{var t=Ds(Object,"defineProperty");return t({},"",{}),t}catch{}}(),nm=X6e});function j6e(t,e,r){e=="__proto__"&&nm?nm(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}var dc,im=N(()=>{"use strict";dL();o(j6e,"baseAssignValue");dc=j6e});function K6e(t,e,r){(r!==void 0&&!Mo(t[e],r)||r===void 0&&!(e in t))&&dc(t,e,r)}var l2,pL=N(()=>{"use strict";im();Pd();o(K6e,"assignMergeValue");l2=K6e});function Q6e(t){return function(e,r,n){for(var i=-1,a=Object(e),s=n(e),l=s.length;l--;){var u=s[t?l:++i];if(r(a[u],u,a)===!1)break}return e}}var sj,oj=N(()=>{"use strict";o(Q6e,"createBaseFor");sj=Q6e});var Z6e,am,dT=N(()=>{"use strict";oj();Z6e=sj(),am=Z6e});function eCe(t,e){if(e)return t.slice();var r=t.length,n=uj?uj(r):new t.constructor(r);return t.copy(n),n}var hj,lj,J6e,cj,uj,pT,mL=N(()=>{"use strict";No();hj=typeof exports=="object"&&exports&&!exports.nodeType&&exports,lj=hj&&typeof module=="object"&&module&&!module.nodeType&&module,J6e=lj&&lj.exports===hj,cj=J6e?fi.Buffer:void 0,uj=cj?cj.allocUnsafe:void 0;o(eCe,"cloneBuffer");pT=eCe});var tCe,sm,gL=N(()=>{"use strict";No();tCe=fi.Uint8Array,sm=tCe});function rCe(t){var e=new t.constructor(t.byteLength);return new sm(e).set(new sm(t)),e}var om,mT=N(()=>{"use strict";gL();o(rCe,"cloneArrayBuffer");om=rCe});function nCe(t,e){var r=e?om(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}var gT,yL=N(()=>{"use strict";mT();o(nCe,"cloneTypedArray");gT=nCe});function iCe(t,e){var r=-1,n=t.length;for(e||(e=Array(n));++r<n;)e[r]=t[r];return e}var yT,vL=N(()=>{"use strict";o(iCe,"copyArray");yT=iCe});var fj,aCe,dj,pj=N(()=>{"use strict";io();fj=Object.create,aCe=function(){function t(){}return o(t,"object"),function(e){if(!Tn(e))return{};if(fj)return fj(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}}(),dj=aCe});function sCe(t,e){return function(r){return t(e(r))}}var vT,xL=N(()=>{"use strict";o(sCe,"overArg");vT=sCe});var oCe,lm,xT=N(()=>{"use strict";xL();oCe=vT(Object.getPrototypeOf,Object),lm=oCe});function cCe(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototype||lCe;return t===r}var lCe,pc,cm=N(()=>{"use strict";lCe=Object.prototype;o(cCe,"isPrototype");pc=cCe});function uCe(t){return typeof t.constructor=="function"&&!pc(t)?dj(lm(t)):{}}var bT,bL=N(()=>{"use strict";pj();xT();cm();o(uCe,"initCloneObject");bT=uCe});function hCe(t){return t!=null&&typeof t=="object"}var ai,Io=N(()=>{"use strict";o(hCe,"isObjectLike");ai=hCe});function dCe(t){return ai(t)&&ha(t)==fCe}var fCe,TL,mj=N(()=>{"use strict";Cu();Io();fCe="[object Arguments]";o(dCe,"baseIsArguments");TL=dCe});var gj,pCe,mCe,gCe,_l,um=N(()=>{"use strict";mj();Io();gj=Object.prototype,pCe=gj.hasOwnProperty,mCe=gj.propertyIsEnumerable,gCe=TL(function(){return arguments}())?TL:function(t){return ai(t)&&pCe.call(t,"callee")&&!mCe.call(t,"callee")},_l=gCe});var yCe,Pt,Yn=N(()=>{"use strict";yCe=Array.isArray,Pt=yCe});function xCe(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=vCe}var vCe,hm,TT=N(()=>{"use strict";vCe=9007199254740991;o(xCe,"isLength");hm=xCe});function bCe(t){return t!=null&&hm(t.length)&&!Ai(t)}var di,Oo=N(()=>{"use strict";r2();TT();o(bCe,"isArrayLike");di=bCe});function TCe(t){return ai(t)&&di(t)}var Fd,wT=N(()=>{"use strict";Oo();Io();o(TCe,"isArrayLikeObject");Fd=TCe});function wCe(){return!1}var yj,vj=N(()=>{"use strict";o(wCe,"stubFalse");yj=wCe});var Tj,xj,kCe,bj,ECe,SCe,Dl,fm=N(()=>{"use strict";No();vj();Tj=typeof exports=="object"&&exports&&!exports.nodeType&&exports,xj=Tj&&typeof module=="object"&&module&&!module.nodeType&&module,kCe=xj&&xj.exports===Tj,bj=kCe?fi.Buffer:void 0,ECe=bj?bj.isBuffer:void 0,SCe=ECe||yj,Dl=SCe});function RCe(t){if(!ai(t)||ha(t)!=CCe)return!1;var e=lm(t);if(e===null)return!0;var r=DCe.call(e,"constructor")&&e.constructor;return typeof r=="function"&&r instanceof r&&wj.call(r)==LCe}var CCe,ACe,_Ce,wj,DCe,LCe,kj,Ej=N(()=>{"use strict";Cu();xT();Io();CCe="[object Object]",ACe=Function.prototype,_Ce=Object.prototype,wj=ACe.toString,DCe=_Ce.hasOwnProperty,LCe=wj.call(Object);o(RCe,"isPlainObject");kj=RCe});function r7e(t){return ai(t)&&hm(t.length)&&!!zn[ha(t)]}var NCe,MCe,ICe,OCe,PCe,BCe,FCe,$Ce,GCe,zCe,VCe,UCe,HCe,WCe,qCe,YCe,XCe,jCe,KCe,QCe,ZCe,JCe,e7e,t7e,zn,Sj,Cj=N(()=>{"use strict";Cu();TT();Io();NCe="[object Arguments]",MCe="[object Array]",ICe="[object Boolean]",OCe="[object Date]",PCe="[object Error]",BCe="[object Function]",FCe="[object Map]",$Ce="[object Number]",GCe="[object Object]",zCe="[object RegExp]",VCe="[object Set]",UCe="[object String]",HCe="[object WeakMap]",WCe="[object ArrayBuffer]",qCe="[object DataView]",YCe="[object Float32Array]",XCe="[object Float64Array]",jCe="[object Int8Array]",KCe="[object Int16Array]",QCe="[object Int32Array]",ZCe="[object Uint8Array]",JCe="[object Uint8ClampedArray]",e7e="[object Uint16Array]",t7e="[object Uint32Array]",zn={};zn[YCe]=zn[XCe]=zn[jCe]=zn[KCe]=zn[QCe]=zn[ZCe]=zn[JCe]=zn[e7e]=zn[t7e]=!0;zn[NCe]=zn[MCe]=zn[WCe]=zn[ICe]=zn[qCe]=zn[OCe]=zn[PCe]=zn[BCe]=zn[FCe]=zn[$Ce]=zn[GCe]=zn[zCe]=zn[VCe]=zn[UCe]=zn[HCe]=!1;o(r7e,"baseIsTypedArray");Sj=r7e});function n7e(t){return function(e){return t(e)}}var Po,$d=N(()=>{"use strict";o(n7e,"baseUnary");Po=n7e});var Aj,c2,i7e,wL,a7e,Bo,u2=N(()=>{"use strict";lL();Aj=typeof exports=="object"&&exports&&!exports.nodeType&&exports,c2=Aj&&typeof module=="object"&&module&&!module.nodeType&&module,i7e=c2&&c2.exports===Aj,wL=i7e&&cT.process,a7e=function(){try{var t=c2&&c2.require&&c2.require("util").types;return t||wL&&wL.binding&&wL.binding("util")}catch{}}(),Bo=a7e});var _j,s7e,Gh,h2=N(()=>{"use strict";Cj();$d();u2();_j=Bo&&Bo.isTypedArray,s7e=_j?Po(_j):Sj,Gh=s7e});function o7e(t,e){if(!(e==="constructor"&&typeof t[e]=="function")&&e!="__proto__")return t[e]}var f2,kL=N(()=>{"use strict";o(o7e,"safeGet");f2=o7e});function u7e(t,e,r){var n=t[e];(!(c7e.call(t,e)&&Mo(n,r))||r===void 0&&!(e in t))&&dc(t,e,r)}var l7e,c7e,mc,dm=N(()=>{"use strict";im();Pd();l7e=Object.prototype,c7e=l7e.hasOwnProperty;o(u7e,"assignValue");mc=u7e});function h7e(t,e,r,n){var i=!r;r||(r={});for(var a=-1,s=e.length;++a<s;){var l=e[a],u=n?n(r[l],t[l],l,r,t):void 0;u===void 0&&(u=t[l]),i?dc(r,l,u):mc(r,l,u)}return r}var Fo,Gd=N(()=>{"use strict";dm();im();o(h7e,"copyObject");Fo=h7e});function f7e(t,e){for(var r=-1,n=Array(t);++r<t;)n[r]=e(r);return n}var Dj,Lj=N(()=>{"use strict";o(f7e,"baseTimes");Dj=f7e});function m7e(t,e){var r=typeof t;return e=e??d7e,!!e&&(r=="number"||r!="symbol"&&p7e.test(t))&&t>-1&&t%1==0&&t<e}var d7e,p7e,zh,d2=N(()=>{"use strict";d7e=9007199254740991,p7e=/^(?:0|[1-9]\d*)$/;o(m7e,"isIndex");zh=m7e});function v7e(t,e){var r=Pt(t),n=!r&&_l(t),i=!r&&!n&&Dl(t),a=!r&&!n&&!i&&Gh(t),s=r||n||i||a,l=s?Dj(t.length,String):[],u=l.length;for(var h in t)(e||y7e.call(t,h))&&!(s&&(h=="length"||i&&(h=="offset"||h=="parent")||a&&(h=="buffer"||h=="byteLength"||h=="byteOffset")||zh(h,u)))&&l.push(h);return l}var g7e,y7e,kT,EL=N(()=>{"use strict";Lj();um();Yn();fm();d2();h2();g7e=Object.prototype,y7e=g7e.hasOwnProperty;o(v7e,"arrayLikeKeys");kT=v7e});function x7e(t){var e=[];if(t!=null)for(var r in Object(t))e.push(r);return e}var Rj,Nj=N(()=>{"use strict";o(x7e,"nativeKeysIn");Rj=x7e});function w7e(t){if(!Tn(t))return Rj(t);var e=pc(t),r=[];for(var n in t)n=="constructor"&&(e||!T7e.call(t,n))||r.push(n);return r}var b7e,T7e,Mj,Ij=N(()=>{"use strict";io();cm();Nj();b7e=Object.prototype,T7e=b7e.hasOwnProperty;o(w7e,"baseKeysIn");Mj=w7e});function k7e(t){return di(t)?kT(t,!0):Mj(t)}var Ls,Vh=N(()=>{"use strict";EL();Ij();Oo();o(k7e,"keysIn");Ls=k7e});function E7e(t){return Fo(t,Ls(t))}var Oj,Pj=N(()=>{"use strict";Gd();Vh();o(E7e,"toPlainObject");Oj=E7e});function S7e(t,e,r,n,i,a,s){var l=f2(t,r),u=f2(e,r),h=s.get(u);if(h){l2(t,r,h);return}var f=a?a(l,u,r+"",t,e,s):void 0,d=f===void 0;if(d){var p=Pt(u),m=!p&&Dl(u),g=!p&&!m&&Gh(u);f=u,p||m||g?Pt(l)?f=l:Fd(l)?f=yT(l):m?(d=!1,f=pT(u,!0)):g?(d=!1,f=gT(u,!0)):f=[]:kj(u)||_l(u)?(f=l,_l(l)?f=Oj(l):(!Tn(l)||Ai(l))&&(f=bT(u))):d=!1}d&&(s.set(u,f),i(f,u,n,a,s),s.delete(u)),l2(t,r,f)}var Bj,Fj=N(()=>{"use strict";pL();mL();yL();vL();bL();um();Yn();wT();fm();r2();io();Ej();h2();kL();Pj();o(S7e,"baseMergeDeep");Bj=S7e});function $j(t,e,r,n,i){t!==e&&am(e,function(a,s){if(i||(i=new fc),Tn(a))Bj(t,e,s,r,$j,n,i);else{var l=n?n(f2(t,s),a,s+"",t,e,i):void 0;l===void 0&&(l=a),l2(t,s,l)}},Ls)}var Gj,zj=N(()=>{"use strict";o2();pL();dT();Fj();io();Vh();kL();o($j,"baseMerge");Gj=$j});function C7e(t){return t}var Zi,Du=N(()=>{"use strict";o(C7e,"identity");Zi=C7e});function A7e(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}var Vj,Uj=N(()=>{"use strict";o(A7e,"apply");Vj=A7e});function _7e(t,e,r){return e=Hj(e===void 0?t.length-1:e,0),function(){for(var n=arguments,i=-1,a=Hj(n.length-e,0),s=Array(a);++i<a;)s[i]=n[e+i];i=-1;for(var l=Array(e+1);++i<e;)l[i]=n[i];return l[e]=r(s),Vj(t,this,l)}}var Hj,ET,SL=N(()=>{"use strict";Uj();Hj=Math.max;o(_7e,"overRest");ET=_7e});function D7e(t){return function(){return t}}var Rs,CL=N(()=>{"use strict";o(D7e,"constant");Rs=D7e});var L7e,Wj,qj=N(()=>{"use strict";CL();dL();Du();L7e=nm?function(t,e){return nm(t,"toString",{configurable:!0,enumerable:!1,value:Rs(e),writable:!0})}:Zi,Wj=L7e});function I7e(t){var e=0,r=0;return function(){var n=M7e(),i=N7e-(n-r);if(r=n,i>0){if(++e>=R7e)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}var R7e,N7e,M7e,Yj,Xj=N(()=>{"use strict";R7e=800,N7e=16,M7e=Date.now;o(I7e,"shortOut");Yj=I7e});var O7e,ST,AL=N(()=>{"use strict";qj();Xj();O7e=Yj(Wj),ST=O7e});function P7e(t,e){return ST(ET(t,e,Zi),t+"")}var gc,pm=N(()=>{"use strict";Du();SL();AL();o(P7e,"baseRest");gc=P7e});function B7e(t,e,r){if(!Tn(r))return!1;var n=typeof e;return(n=="number"?di(r)&&zh(e,r.length):n=="string"&&e in r)?Mo(r[e],t):!1}var ao,zd=N(()=>{"use strict";Pd();Oo();d2();io();o(B7e,"isIterateeCall");ao=B7e});function F7e(t){return gc(function(e,r){var n=-1,i=r.length,a=i>1?r[i-1]:void 0,s=i>2?r[2]:void 0;for(a=t.length>3&&typeof a=="function"?(i--,a):void 0,s&&ao(r[0],r[1],s)&&(a=i<3?void 0:a,i=1),e=Object(e);++n<i;){var l=r[n];l&&t(e,l,n,a)}return e})}var CT,_L=N(()=>{"use strict";pm();zd();o(F7e,"createAssigner");CT=F7e});var $7e,Uh,DL=N(()=>{"use strict";zj();_L();$7e=CT(function(t,e,r){Gj(t,e,r)}),Uh=$7e});function NL(t,e){if(!t)return e;let r=`curve${t.charAt(0).toUpperCase()+t.slice(1)}`;return G7e[r]??e}function H7e(t,e){let r=t.trim();if(r)return e.securityLevel!=="loose"?(0,Qj.sanitizeUrl)(r):r}function eK(t,e){return!t||!e?0:Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function q7e(t){let e,r=0;t.forEach(i=>{r+=eK(i,e),e=i});let n=r/2;return ML(t,n)}function Y7e(t){return t.length===1?t[0]:q7e(t)}function j7e(t,e,r){let n=structuredClone(r);X.info("our points",n),e!=="start_left"&&e!=="start_right"&&n.reverse();let i=25+t,a=ML(n,i),s=10+t*.5,l=Math.atan2(n[0].y-a.y,n[0].x-a.x),u={x:0,y:0};return e==="start_left"?(u.x=Math.sin(l+Math.PI)*s+(n[0].x+a.x)/2,u.y=-Math.cos(l+Math.PI)*s+(n[0].y+a.y)/2):e==="end_right"?(u.x=Math.sin(l-Math.PI)*s+(n[0].x+a.x)/2-5,u.y=-Math.cos(l-Math.PI)*s+(n[0].y+a.y)/2-5):e==="end_left"?(u.x=Math.sin(l)*s+(n[0].x+a.x)/2-5,u.y=-Math.cos(l)*s+(n[0].y+a.y)/2-5):(u.x=Math.sin(l)*s+(n[0].x+a.x)/2,u.y=-Math.cos(l)*s+(n[0].y+a.y)/2),u}function IL(t){let e="",r="";for(let n of t)n!==void 0&&(n.startsWith("color:")||n.startsWith("text-align:")?r=r+n+";":e=e+n+";");return{style:e,labelStyle:r}}function K7e(t){let e="",r="0123456789abcdef",n=r.length;for(let i=0;i<t;i++)e+=r.charAt(Math.floor(Math.random()*n));return e}function _T(t,e){return FL(t,e).height}function Ji(t,e){return FL(t,e).width}function $L(t){return"str"in t}function Vn(t,e){return Uh({},t,e)}function wn(t){return t??null}function rAe(t,e){let r=Math.round(t.x),n=Math.round(t.y),i=e.replace(/(\d+\.\d+)/g,a=>Math.round(parseFloat(a)).toString());return i.includes(r.toString())||i.includes(n.toString())}var Qj,RL,G7e,z7e,V7e,Zj,Jj,U7e,W7e,jj,ML,X7e,Kj,OL,PL,Q7e,Z7e,BL,J7e,FL,LL,AT,eAe,tAe,yc,Ht,tK,ea,Hh,tr=N(()=>{"use strict";Qj=ja(Q0(),1);pr();dr();x7();pt();pd();p0();fL();DL();B3();RL="\u200B",G7e={curveBasis:Ro,curveBasisClosed:j5,curveBasisOpen:K5,curveBumpX:Gv,curveBumpY:zv,curveBundle:jD,curveCardinalClosed:KD,curveCardinalOpen:ZD,curveCardinal:Wv,curveCatmullRomClosed:eL,curveCatmullRomOpen:tL,curveCatmullRom:Xv,curveLinear:Eu,curveLinearClosed:tT,curveMonotoneX:jv,curveMonotoneY:Kv,curveNatural:j0,curveStep:K0,curveStepAfter:Zv,curveStepBefore:Qv},z7e=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,V7e=o(function(t,e){let r=Zj(t,/(?:init\b)|(?:initialize\b)/),n={};if(Array.isArray(r)){let s=r.map(l=>l.args);g0(s),n=Dn(n,[...s])}else n=r.args;if(!n)return;let i=E0(t,e),a="config";return n[a]!==void 0&&(i==="flowchart-v2"&&(i="flowchart"),n[i]=n[a],delete n[a]),n},"detectInit"),Zj=o(function(t,e=null){try{let r=new RegExp(`[%]{2}(?![{]${z7e.source})(?=[}][%]{2}).*
|
||
`,"ig");t=t.trim().replace(r,"").replace(/'/gm,'"'),X.debug(`Detecting diagram directive${e!==null?" type:"+e:""} based on the text:${t}`);let n,i=[];for(;(n=dd.exec(t))!==null;)if(n.index===dd.lastIndex&&dd.lastIndex++,n&&!e||e&&n[1]?.match(e)||e&&n[2]?.match(e)){let a=n[1]?n[1]:n[2],s=n[3]?n[3].trim():n[4]?JSON.parse(n[4].trim()):null;i.push({type:a,args:s})}return i.length===0?{type:t,args:null}:i.length===1?i[0]:i}catch(r){return X.error(`ERROR: ${r.message} - Unable to parse directive type: '${e}' based on the text: '${t}'`),{type:void 0,args:null}}},"detectDirective"),Jj=o(function(t){return t.replace(dd,"")},"removeDirectives"),U7e=o(function(t,e){for(let[r,n]of e.entries())if(n.match(t))return r;return-1},"isSubstringInArray");o(NL,"interpolateToCurve");o(H7e,"formatUrl");W7e=o((t,...e)=>{let r=t.split("."),n=r.length-1,i=r[n],a=window;for(let s=0;s<n;s++)if(a=a[r[s]],!a){X.error(`Function name: ${t} not found in window`);return}a[i](...e)},"runFunc");o(eK,"distance");o(q7e,"traverseEdge");o(Y7e,"calcLabelPosition");jj=o((t,e=2)=>{let r=Math.pow(10,e);return Math.round(t*r)/r},"roundNumber"),ML=o((t,e)=>{let r,n=e;for(let i of t){if(r){let a=eK(i,r);if(a===0)return r;if(a<n)n-=a;else{let s=n/a;if(s<=0)return r;if(s>=1)return{x:i.x,y:i.y};if(s>0&&s<1)return{x:jj((1-s)*r.x+s*i.x,5),y:jj((1-s)*r.y+s*i.y,5)}}}r=i}throw new Error("Could not find a suitable point for the given distance")},"calculatePoint"),X7e=o((t,e,r)=>{X.info(`our points ${JSON.stringify(e)}`),e[0]!==r&&(e=e.reverse());let i=ML(e,25),a=t?10:5,s=Math.atan2(e[0].y-i.y,e[0].x-i.x),l={x:0,y:0};return l.x=Math.sin(s)*a+(e[0].x+i.x)/2,l.y=-Math.cos(s)*a+(e[0].y+i.y)/2,l},"calcCardinalityPosition");o(j7e,"calcTerminalLabelPosition");o(IL,"getStylesFromArray");Kj=0,OL=o(()=>(Kj++,"id-"+Math.random().toString(36).substr(2,12)+"-"+Kj),"generateId");o(K7e,"makeRandomHex");PL=o(t=>K7e(t.length),"random"),Q7e=o(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:""}},"getTextObj"),Z7e=o(function(t,e){let r=e.text.replace(Je.lineBreakRegex," "),[,n]=yc(e.fontSize),i=t.append("text");i.attr("x",e.x),i.attr("y",e.y),i.style("text-anchor",e.anchor),i.style("font-family",e.fontFamily),i.style("font-size",n),i.style("font-weight",e.fontWeight),i.attr("fill",e.fill),e.class!==void 0&&i.attr("class",e.class);let a=i.append("tspan");return a.attr("x",e.x+e.textMargin*2),a.attr("fill",e.fill),a.text(r),i},"drawSimpleText"),BL=tm((t,e,r)=>{if(!t||(r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"<br/>"},r),Je.lineBreakRegex.test(t)))return t;let n=t.split(" ").filter(Boolean),i=[],a="";return n.forEach((s,l)=>{let u=Ji(`${s} `,r),h=Ji(a,r);if(u>e){let{hyphenatedStrings:p,remainingWord:m}=J7e(s,e,"-",r);i.push(a,...p),a=m}else h+u>=e?(i.push(a),a=s):a=[a,s].filter(Boolean).join(" ");l+1===n.length&&i.push(a)}),i.filter(s=>s!=="").join(r.joinWith)},(t,e,r)=>`${t}${e}${r.fontSize}${r.fontWeight}${r.fontFamily}${r.joinWith}`),J7e=tm((t,e,r="-",n)=>{n=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},n);let i=[...t],a=[],s="";return i.forEach((l,u)=>{let h=`${s}${l}`;if(Ji(h,n)>=e){let d=u+1,p=i.length===d,m=`${h}${r}`;a.push(p?h:m),s=""}else s=h}),{hyphenatedStrings:a,remainingWord:s}},(t,e,r="-",n)=>`${t}${e}${r}${n.fontSize}${n.fontWeight}${n.fontFamily}`);o(_T,"calculateTextHeight");o(Ji,"calculateTextWidth");FL=tm((t,e)=>{let{fontSize:r=12,fontFamily:n="Arial",fontWeight:i=400}=e;if(!t)return{width:0,height:0};let[,a]=yc(r),s=["sans-serif",n],l=t.split(Je.lineBreakRegex),u=[],h=ze("body");if(!h.remove)return{width:0,height:0,lineHeight:0};let f=h.append("svg");for(let p of s){let m=0,g={width:0,height:0,lineHeight:0};for(let y of l){let x=Q7e();x.text=y||RL;let v=Z7e(f,x).style("font-size",a).style("font-weight",i).style("font-family",p),b=(v._groups||v)[0][0].getBBox();if(b.width===0&&b.height===0)throw new Error("svg element not in render tree");g.width=Math.round(Math.max(g.width,b.width)),m=Math.round(b.height),g.height+=m,g.lineHeight=Math.round(Math.max(g.lineHeight,m))}u.push(g)}f.remove();let d=isNaN(u[1].height)||isNaN(u[1].width)||isNaN(u[1].lineHeight)||u[0].height>u[1].height&&u[0].width>u[1].width&&u[0].lineHeight>u[1].lineHeight?0:1;return u[d]},(t,e)=>`${t}${e.fontSize}${e.fontWeight}${e.fontFamily}`),LL=class{constructor(e=!1,r){this.count=0;this.count=r?r.length:0,this.next=e?()=>this.count++:()=>Date.now()}static{o(this,"InitIDGenerator")}},eAe=o(function(t){return AT=AT||document.createElement("div"),t=escape(t).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),AT.innerHTML=t,unescape(AT.textContent)},"entityDecode");o($L,"isDetailedError");tAe=o((t,e,r,n)=>{if(!n)return;let i=t.node()?.getBBox();i&&t.append("text").text(n).attr("text-anchor","middle").attr("x",i.x+i.width/2).attr("y",-r).attr("class",e)},"insertTitle"),yc=o(t=>{if(typeof t=="number")return[t,t+"px"];let e=parseInt(t??"",10);return Number.isNaN(e)?[void 0,void 0]:t===String(e)?[e,t+"px"]:[e,t]},"parseFontSize");o(Vn,"cleanAndMerge");Ht={assignWithDepth:Dn,wrapLabel:BL,calculateTextHeight:_T,calculateTextWidth:Ji,calculateTextDimensions:FL,cleanAndMerge:Vn,detectInit:V7e,detectDirective:Zj,isSubstringInArray:U7e,interpolateToCurve:NL,calcLabelPosition:Y7e,calcCardinalityPosition:X7e,calcTerminalLabelPosition:j7e,formatUrl:H7e,getStylesFromArray:IL,generateId:OL,random:PL,runFunc:W7e,entityDecode:eAe,insertTitle:tAe,isLabelCoordinateInPath:rAe,parseFontSize:yc,InitIDGenerator:LL},tK=o(function(t){let e=t;return e=e.replace(/style.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)}),e=e.replace(/classDef.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)}),e=e.replace(/#\w+;/g,function(r){let n=r.substring(1,r.length-1);return/^\+?\d+$/.test(n)?"\uFB02\xB0\xB0"+n+"\xB6\xDF":"\uFB02\xB0"+n+"\xB6\xDF"}),e},"encodeEntities"),ea=o(function(t){return t.replace(/fl°°/g,"&#").replace(/fl°/g,"&").replace(/¶ß/g,";")},"decodeEntities"),Hh=o((t,e,{counter:r=0,prefix:n,suffix:i},a)=>a||`${n?`${n}_`:""}${t}_${e}_${r}${i?`_${i}`:""}`,"getEdgeId");o(wn,"handleUndefinedAttr");o(rAe,"isLabelCoordinateInPath")});function Ll(t,e,r,n,i){if(!e[t].width)if(r)e[t].text=BL(e[t].text,i,n),e[t].textLines=e[t].text.split(Je.lineBreakRegex).length,e[t].width=i,e[t].height=_T(e[t].text,n);else{let a=e[t].text.split(Je.lineBreakRegex);e[t].textLines=a.length;let s=0;e[t].height=0,e[t].width=0;for(let l of a)e[t].width=Math.max(Ji(l,n),e[t].width),s=_T(l,n),e[t].height=e[t].height+s}}function sK(t,e,r,n,i){let a=new NT(i);a.data.widthLimit=r.data.widthLimit/Math.min(GL,n.length);for(let[s,l]of n.entries()){let u=0;l.image={width:0,height:0,Y:0},l.sprite&&(l.image.width=48,l.image.height=48,l.image.Y=u,u=l.image.Y+l.image.height);let h=l.wrap&&Wt.wrap,f=DT(Wt);if(f.fontSize=f.fontSize+2,f.fontWeight="bold",Ll("label",l,h,f,a.data.widthLimit),l.label.Y=u+8,u=l.label.Y+l.label.height,l.type&&l.type.text!==""){l.type.text="["+l.type.text+"]";let g=DT(Wt);Ll("type",l,h,g,a.data.widthLimit),l.type.Y=u+5,u=l.type.Y+l.type.height}if(l.descr&&l.descr.text!==""){let g=DT(Wt);g.fontSize=g.fontSize-2,Ll("descr",l,h,g,a.data.widthLimit),l.descr.Y=u+20,u=l.descr.Y+l.descr.height}if(s==0||s%GL===0){let g=r.data.startx+Wt.diagramMarginX,y=r.data.stopy+Wt.diagramMarginY+u;a.setData(g,g,y,y)}else{let g=a.data.stopx!==a.data.startx?a.data.stopx+Wt.diagramMarginX:a.data.startx,y=a.data.starty;a.setData(g,g,y,y)}a.name=l.alias;let d=i.db.getC4ShapeArray(l.alias),p=i.db.getC4ShapeKeys(l.alias);p.length>0&&aK(a,t,d,p),e=l.alias;let m=i.db.getBoundaries(e);m.length>0&&sK(t,e,a,m,i),l.alias!=="global"&&iK(t,l,a),r.data.stopy=Math.max(a.data.stopy+Wt.c4ShapeMargin,r.data.stopy),r.data.stopx=Math.max(a.data.stopx+Wt.c4ShapeMargin,r.data.stopx),LT=Math.max(LT,r.data.stopx),RT=Math.max(RT,r.data.stopy)}}var LT,RT,nK,GL,Wt,NT,zL,p2,DT,nAe,iK,aK,Ns,rK,iAe,aAe,sAe,VL,oK=N(()=>{"use strict";pr();rX();pt();SA();dr();OA();Xt();p0();tr();Ci();LT=0,RT=0,nK=4,GL=2;Jy.yy=av;Wt={},NT=class{static{o(this,"Bounds")}constructor(e){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,zL(e.db.getConfig())}setData(e,r,n,i){this.nextData.startx=this.data.startx=e,this.nextData.stopx=this.data.stopx=r,this.nextData.starty=this.data.starty=n,this.nextData.stopy=this.data.stopy=i}updateVal(e,r,n,i){e[r]===void 0?e[r]=n:e[r]=i(n,e[r])}insert(e){this.nextData.cnt=this.nextData.cnt+1;let r=this.nextData.startx===this.nextData.stopx?this.nextData.stopx+e.margin:this.nextData.stopx+e.margin*2,n=r+e.width,i=this.nextData.starty+e.margin*2,a=i+e.height;(r>=this.data.widthLimit||n>=this.data.widthLimit||this.nextData.cnt>nK)&&(r=this.nextData.startx+e.margin+Wt.nextLinePaddingX,i=this.nextData.stopy+e.margin*2,this.nextData.stopx=n=r+e.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=a=i+e.height,this.nextData.cnt=1),e.x=r,e.y=i,this.updateVal(this.data,"startx",r,Math.min),this.updateVal(this.data,"starty",i,Math.min),this.updateVal(this.data,"stopx",n,Math.max),this.updateVal(this.data,"stopy",a,Math.max),this.updateVal(this.nextData,"startx",r,Math.min),this.updateVal(this.nextData,"starty",i,Math.min),this.updateVal(this.nextData,"stopx",n,Math.max),this.updateVal(this.nextData,"stopy",a,Math.max)}init(e){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},zL(e.db.getConfig())}bumpLastMargin(e){this.data.stopx+=e,this.data.stopy+=e}},zL=o(function(t){Dn(Wt,t),t.fontFamily&&(Wt.personFontFamily=Wt.systemFontFamily=Wt.messageFontFamily=t.fontFamily),t.fontSize&&(Wt.personFontSize=Wt.systemFontSize=Wt.messageFontSize=t.fontSize),t.fontWeight&&(Wt.personFontWeight=Wt.systemFontWeight=Wt.messageFontWeight=t.fontWeight)},"setConf"),p2=o((t,e)=>({fontFamily:t[e+"FontFamily"],fontSize:t[e+"FontSize"],fontWeight:t[e+"FontWeight"]}),"c4ShapeFont"),DT=o(t=>({fontFamily:t.boundaryFontFamily,fontSize:t.boundaryFontSize,fontWeight:t.boundaryFontWeight}),"boundaryFont"),nAe=o(t=>({fontFamily:t.messageFontFamily,fontSize:t.messageFontSize,fontWeight:t.messageFontWeight}),"messageFont");o(Ll,"calcC4ShapeTextWH");iK=o(function(t,e,r){e.x=r.data.startx,e.y=r.data.starty,e.width=r.data.stopx-r.data.startx,e.height=r.data.stopy-r.data.starty,e.label.y=Wt.c4ShapeMargin-35;let n=e.wrap&&Wt.wrap,i=DT(Wt);i.fontSize=i.fontSize+2,i.fontWeight="bold";let a=Ji(e.label.text,i);Ll("label",e,n,i,a),Al.drawBoundary(t,e,Wt)},"drawBoundary"),aK=o(function(t,e,r,n){let i=0;for(let a of n){i=0;let s=r[a],l=p2(Wt,s.typeC4Shape.text);switch(l.fontSize=l.fontSize-2,s.typeC4Shape.width=Ji("\xAB"+s.typeC4Shape.text+"\xBB",l),s.typeC4Shape.height=l.fontSize+2,s.typeC4Shape.Y=Wt.c4ShapePadding,i=s.typeC4Shape.Y+s.typeC4Shape.height-4,s.image={width:0,height:0,Y:0},s.typeC4Shape.text){case"person":case"external_person":s.image.width=48,s.image.height=48,s.image.Y=i,i=s.image.Y+s.image.height;break}s.sprite&&(s.image.width=48,s.image.height=48,s.image.Y=i,i=s.image.Y+s.image.height);let u=s.wrap&&Wt.wrap,h=Wt.width-Wt.c4ShapePadding*2,f=p2(Wt,s.typeC4Shape.text);if(f.fontSize=f.fontSize+2,f.fontWeight="bold",Ll("label",s,u,f,h),s.label.Y=i+8,i=s.label.Y+s.label.height,s.type&&s.type.text!==""){s.type.text="["+s.type.text+"]";let m=p2(Wt,s.typeC4Shape.text);Ll("type",s,u,m,h),s.type.Y=i+5,i=s.type.Y+s.type.height}else if(s.techn&&s.techn.text!==""){s.techn.text="["+s.techn.text+"]";let m=p2(Wt,s.techn.text);Ll("techn",s,u,m,h),s.techn.Y=i+5,i=s.techn.Y+s.techn.height}let d=i,p=s.label.width;if(s.descr&&s.descr.text!==""){let m=p2(Wt,s.typeC4Shape.text);Ll("descr",s,u,m,h),s.descr.Y=i+20,i=s.descr.Y+s.descr.height,p=Math.max(s.label.width,s.descr.width),d=i-s.descr.textLines*5}p=p+Wt.c4ShapePadding,s.width=Math.max(s.width||Wt.width,p,Wt.width),s.height=Math.max(s.height||Wt.height,d,Wt.height),s.margin=s.margin||Wt.c4ShapeMargin,t.insert(s),Al.drawC4Shape(e,s,Wt)}t.bumpLastMargin(Wt.c4ShapeMargin)},"drawC4ShapeArray"),Ns=class{static{o(this,"Point")}constructor(e,r){this.x=e,this.y=r}},rK=o(function(t,e){let r=t.x,n=t.y,i=e.x,a=e.y,s=r+t.width/2,l=n+t.height/2,u=Math.abs(r-i),h=Math.abs(n-a),f=h/u,d=t.height/t.width,p=null;return n==a&&r<i?p=new Ns(r+t.width,l):n==a&&r>i?p=new Ns(r,l):r==i&&n<a?p=new Ns(s,n+t.height):r==i&&n>a&&(p=new Ns(s,n)),r>i&&n<a?d>=f?p=new Ns(r,l+f*t.width/2):p=new Ns(s-u/h*t.height/2,n+t.height):r<i&&n<a?d>=f?p=new Ns(r+t.width,l+f*t.width/2):p=new Ns(s+u/h*t.height/2,n+t.height):r<i&&n>a?d>=f?p=new Ns(r+t.width,l-f*t.width/2):p=new Ns(s+t.height/2*u/h,n):r>i&&n>a&&(d>=f?p=new Ns(r,l-t.width/2*f):p=new Ns(s-t.height/2*u/h,n)),p},"getIntersectPoint"),iAe=o(function(t,e){let r={x:0,y:0};r.x=e.x+e.width/2,r.y=e.y+e.height/2;let n=rK(t,r);r.x=t.x+t.width/2,r.y=t.y+t.height/2;let i=rK(e,r);return{startPoint:n,endPoint:i}},"getIntersectPoints"),aAe=o(function(t,e,r,n){let i=0;for(let a of e){i=i+1;let s=a.wrap&&Wt.wrap,l=nAe(Wt);n.db.getC4Type()==="C4Dynamic"&&(a.label.text=i+": "+a.label.text);let h=Ji(a.label.text,l);Ll("label",a,s,l,h),a.techn&&a.techn.text!==""&&(h=Ji(a.techn.text,l),Ll("techn",a,s,l,h)),a.descr&&a.descr.text!==""&&(h=Ji(a.descr.text,l),Ll("descr",a,s,l,h));let f=r(a.from),d=r(a.to),p=iAe(f,d);a.startPoint=p.startPoint,a.endPoint=p.endPoint}Al.drawRels(t,e,Wt)},"drawRels");o(sK,"drawInsideBoundary");sAe=o(function(t,e,r,n){Wt=ge().c4;let i=ge().securityLevel,a;i==="sandbox"&&(a=ze("#i"+e));let s=i==="sandbox"?ze(a.nodes()[0].contentDocument.body):ze("body"),l=n.db;n.db.setWrap(Wt.wrap),nK=l.getC4ShapeInRow(),GL=l.getC4BoundaryInRow(),X.debug(`C:${JSON.stringify(Wt,null,2)}`);let u=i==="sandbox"?s.select(`[id="${e}"]`):ze(`[id="${e}"]`);Al.insertComputerIcon(u),Al.insertDatabaseIcon(u),Al.insertClockIcon(u);let h=new NT(n);h.setData(Wt.diagramMarginX,Wt.diagramMarginX,Wt.diagramMarginY,Wt.diagramMarginY),h.data.widthLimit=screen.availWidth,LT=Wt.diagramMarginX,RT=Wt.diagramMarginY;let f=n.db.getTitle(),d=n.db.getBoundaries("");sK(u,"",h,d,n),Al.insertArrowHead(u),Al.insertArrowEnd(u),Al.insertArrowCrossHead(u),Al.insertArrowFilledHead(u),aAe(u,n.db.getRels(),n.db.getC4Shape,n),h.data.stopx=LT,h.data.stopy=RT;let p=h.data,g=p.stopy-p.starty+2*Wt.diagramMarginY,x=p.stopx-p.startx+2*Wt.diagramMarginX;f&&u.append("text").text(f).attr("x",(p.stopx-p.startx)/2-4*Wt.diagramMarginX).attr("y",p.starty+Wt.diagramMarginY),fn(u,g,x,Wt.useMaxWidth);let v=f?60:0;u.attr("viewBox",p.startx-Wt.diagramMarginX+" -"+(Wt.diagramMarginY+v)+" "+x+" "+(g+v)),X.debug("models:",p)},"draw"),VL={drawPersonOrSystemArray:aK,drawBoundary:iK,setConf:zL,draw:sAe}});var oAe,lK,cK=N(()=>{"use strict";oAe=o(t=>`.person {
|
||
stroke: ${t.personBorder};
|
||
fill: ${t.personBkg};
|
||
}
|
||
`,"getStyles"),lK=oAe});var uK={};ur(uK,{diagram:()=>lAe});var lAe,hK=N(()=>{"use strict";SA();OA();oK();cK();lAe={parser:PV,db:av,renderer:VL,styles:lK,init:o(({c4:t,wrap:e})=>{VL.setConf(t),av.setWrap(e)},"init")}});function DK(t){return typeof t>"u"||t===null}function fAe(t){return typeof t=="object"&&t!==null}function dAe(t){return Array.isArray(t)?t:DK(t)?[]:[t]}function pAe(t,e){var r,n,i,a;if(e)for(a=Object.keys(e),r=0,n=a.length;r<n;r+=1)i=a[r],t[i]=e[i];return t}function mAe(t,e){var r="",n;for(n=0;n<e;n+=1)r+=t;return r}function gAe(t){return t===0&&Number.NEGATIVE_INFINITY===1/t}function LK(t,e){var r="",n=t.reason||"(unknown reason)";return t.mark?(t.mark.name&&(r+='in "'+t.mark.name+'" '),r+="("+(t.mark.line+1)+":"+(t.mark.column+1)+")",!e&&t.mark.snippet&&(r+=`
|
||
|
||
`+t.mark.snippet),n+" "+r):n}function g2(t,e){Error.call(this),this.name="YAMLException",this.reason=t,this.mark=e,this.message=LK(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}function UL(t,e,r,n,i){var a="",s="",l=Math.floor(i/2)-1;return n-e>l&&(a=" ... ",e=n-l+a.length),r-n>l&&(s=" ...",r=n+l-s.length),{str:a+t.slice(e,r).replace(/\t/g,"\u2192")+s,pos:n-e+a.length}}function HL(t,e){return Fi.repeat(" ",e-t.length)+t}function kAe(t,e){if(e=Object.create(e||null),!t.buffer)return null;e.maxLength||(e.maxLength=79),typeof e.indent!="number"&&(e.indent=1),typeof e.linesBefore!="number"&&(e.linesBefore=3),typeof e.linesAfter!="number"&&(e.linesAfter=2);for(var r=/\r?\n|\r|\0/g,n=[0],i=[],a,s=-1;a=r.exec(t.buffer);)i.push(a.index),n.push(a.index+a[0].length),t.position<=a.index&&s<0&&(s=n.length-2);s<0&&(s=n.length-1);var l="",u,h,f=Math.min(t.line+e.linesAfter,i.length).toString().length,d=e.maxLength-(e.indent+f+3);for(u=1;u<=e.linesBefore&&!(s-u<0);u++)h=UL(t.buffer,n[s-u],i[s-u],t.position-(n[s]-n[s-u]),d),l=Fi.repeat(" ",e.indent)+HL((t.line-u+1).toString(),f)+" | "+h.str+`
|
||
`+l;for(h=UL(t.buffer,n[s],i[s],t.position,d),l+=Fi.repeat(" ",e.indent)+HL((t.line+1).toString(),f)+" | "+h.str+`
|
||
`,l+=Fi.repeat("-",e.indent+f+3+h.pos)+`^
|
||
`,u=1;u<=e.linesAfter&&!(s+u>=i.length);u++)h=UL(t.buffer,n[s+u],i[s+u],t.position-(n[s]-n[s+u]),d),l+=Fi.repeat(" ",e.indent)+HL((t.line+u+1).toString(),f)+" | "+h.str+`
|
||
`;return l.replace(/\n$/,"")}function AAe(t){var e={};return t!==null&&Object.keys(t).forEach(function(r){t[r].forEach(function(n){e[String(n)]=r})}),e}function _Ae(t,e){if(e=e||{},Object.keys(e).forEach(function(r){if(SAe.indexOf(r)===-1)throw new Ms('Unknown option "'+r+'" is met in definition of "'+t+'" YAML type.')}),this.options=e,this.tag=t,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(r){return r},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.representName=e.representName||null,this.defaultStyle=e.defaultStyle||null,this.multi=e.multi||!1,this.styleAliases=AAe(e.styleAliases||null),CAe.indexOf(this.kind)===-1)throw new Ms('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}function pK(t,e){var r=[];return t[e].forEach(function(n){var i=r.length;r.forEach(function(a,s){a.tag===n.tag&&a.kind===n.kind&&a.multi===n.multi&&(i=s)}),r[i]=n}),r}function DAe(){var t={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},e,r;function n(i){i.multi?(t.multi[i.kind].push(i),t.multi.fallback.push(i)):t[i.kind][i.tag]=t.fallback[i.tag]=i}for(o(n,"collectType"),e=0,r=arguments.length;e<r;e+=1)arguments[e].forEach(n);return t}function qL(t){return this.extend(t)}function OAe(t){if(t===null)return!0;var e=t.length;return e===1&&t==="~"||e===4&&(t==="null"||t==="Null"||t==="NULL")}function PAe(){return null}function BAe(t){return t===null}function $Ae(t){if(t===null)return!1;var e=t.length;return e===4&&(t==="true"||t==="True"||t==="TRUE")||e===5&&(t==="false"||t==="False"||t==="FALSE")}function GAe(t){return t==="true"||t==="True"||t==="TRUE"}function zAe(t){return Object.prototype.toString.call(t)==="[object Boolean]"}function UAe(t){return 48<=t&&t<=57||65<=t&&t<=70||97<=t&&t<=102}function HAe(t){return 48<=t&&t<=55}function WAe(t){return 48<=t&&t<=57}function qAe(t){if(t===null)return!1;var e=t.length,r=0,n=!1,i;if(!e)return!1;if(i=t[r],(i==="-"||i==="+")&&(i=t[++r]),i==="0"){if(r+1===e)return!0;if(i=t[++r],i==="b"){for(r++;r<e;r++)if(i=t[r],i!=="_"){if(i!=="0"&&i!=="1")return!1;n=!0}return n&&i!=="_"}if(i==="x"){for(r++;r<e;r++)if(i=t[r],i!=="_"){if(!UAe(t.charCodeAt(r)))return!1;n=!0}return n&&i!=="_"}if(i==="o"){for(r++;r<e;r++)if(i=t[r],i!=="_"){if(!HAe(t.charCodeAt(r)))return!1;n=!0}return n&&i!=="_"}}if(i==="_")return!1;for(;r<e;r++)if(i=t[r],i!=="_"){if(!WAe(t.charCodeAt(r)))return!1;n=!0}return!(!n||i==="_")}function YAe(t){var e=t,r=1,n;if(e.indexOf("_")!==-1&&(e=e.replace(/_/g,"")),n=e[0],(n==="-"||n==="+")&&(n==="-"&&(r=-1),e=e.slice(1),n=e[0]),e==="0")return 0;if(n==="0"){if(e[1]==="b")return r*parseInt(e.slice(2),2);if(e[1]==="x")return r*parseInt(e.slice(2),16);if(e[1]==="o")return r*parseInt(e.slice(2),8)}return r*parseInt(e,10)}function XAe(t){return Object.prototype.toString.call(t)==="[object Number]"&&t%1===0&&!Fi.isNegativeZero(t)}function QAe(t){return!(t===null||!KAe.test(t)||t[t.length-1]==="_")}function ZAe(t){var e,r;return e=t.replace(/_/g,"").toLowerCase(),r=e[0]==="-"?-1:1,"+-".indexOf(e[0])>=0&&(e=e.slice(1)),e===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:e===".nan"?NaN:r*parseFloat(e,10)}function e8e(t,e){var r;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(Fi.isNegativeZero(t))return"-0.0";return r=t.toString(10),JAe.test(r)?r.replace("e",".e"):r}function t8e(t){return Object.prototype.toString.call(t)==="[object Number]"&&(t%1!==0||Fi.isNegativeZero(t))}function i8e(t){return t===null?!1:NK.exec(t)!==null||MK.exec(t)!==null}function a8e(t){var e,r,n,i,a,s,l,u=0,h=null,f,d,p;if(e=NK.exec(t),e===null&&(e=MK.exec(t)),e===null)throw new Error("Date resolve error");if(r=+e[1],n=+e[2]-1,i=+e[3],!e[4])return new Date(Date.UTC(r,n,i));if(a=+e[4],s=+e[5],l=+e[6],e[7]){for(u=e[7].slice(0,3);u.length<3;)u+="0";u=+u}return e[9]&&(f=+e[10],d=+(e[11]||0),h=(f*60+d)*6e4,e[9]==="-"&&(h=-h)),p=new Date(Date.UTC(r,n,i,a,s,l,u)),h&&p.setTime(p.getTime()-h),p}function s8e(t){return t.toISOString()}function l8e(t){return t==="<<"||t===null}function u8e(t){if(t===null)return!1;var e,r,n=0,i=t.length,a=QL;for(r=0;r<i;r++)if(e=a.indexOf(t.charAt(r)),!(e>64)){if(e<0)return!1;n+=6}return n%8===0}function h8e(t){var e,r,n=t.replace(/[\r\n=]/g,""),i=n.length,a=QL,s=0,l=[];for(e=0;e<i;e++)e%4===0&&e&&(l.push(s>>16&255),l.push(s>>8&255),l.push(s&255)),s=s<<6|a.indexOf(n.charAt(e));return r=i%4*6,r===0?(l.push(s>>16&255),l.push(s>>8&255),l.push(s&255)):r===18?(l.push(s>>10&255),l.push(s>>2&255)):r===12&&l.push(s>>4&255),new Uint8Array(l)}function f8e(t){var e="",r=0,n,i,a=t.length,s=QL;for(n=0;n<a;n++)n%3===0&&n&&(e+=s[r>>18&63],e+=s[r>>12&63],e+=s[r>>6&63],e+=s[r&63]),r=(r<<8)+t[n];return i=a%3,i===0?(e+=s[r>>18&63],e+=s[r>>12&63],e+=s[r>>6&63],e+=s[r&63]):i===2?(e+=s[r>>10&63],e+=s[r>>4&63],e+=s[r<<2&63],e+=s[64]):i===1&&(e+=s[r>>2&63],e+=s[r<<4&63],e+=s[64],e+=s[64]),e}function d8e(t){return Object.prototype.toString.call(t)==="[object Uint8Array]"}function y8e(t){if(t===null)return!0;var e=[],r,n,i,a,s,l=t;for(r=0,n=l.length;r<n;r+=1){if(i=l[r],s=!1,g8e.call(i)!=="[object Object]")return!1;for(a in i)if(m8e.call(i,a))if(!s)s=!0;else return!1;if(!s)return!1;if(e.indexOf(a)===-1)e.push(a);else return!1}return!0}function v8e(t){return t!==null?t:[]}function T8e(t){if(t===null)return!0;var e,r,n,i,a,s=t;for(a=new Array(s.length),e=0,r=s.length;e<r;e+=1){if(n=s[e],b8e.call(n)!=="[object Object]"||(i=Object.keys(n),i.length!==1))return!1;a[e]=[i[0],n[i[0]]]}return!0}function w8e(t){if(t===null)return[];var e,r,n,i,a,s=t;for(a=new Array(s.length),e=0,r=s.length;e<r;e+=1)n=s[e],i=Object.keys(n),a[e]=[i[0],n[i[0]]];return a}function S8e(t){if(t===null)return!0;var e,r=t;for(e in r)if(E8e.call(r,e)&&r[e]!==null)return!1;return!0}function C8e(t){return t!==null?t:{}}function gK(t){return Object.prototype.toString.call(t)}function vc(t){return t===10||t===13}function Ud(t){return t===9||t===32}function Is(t){return t===9||t===32||t===10||t===13}function gm(t){return t===44||t===91||t===93||t===123||t===125}function N8e(t){var e;return 48<=t&&t<=57?t-48:(e=t|32,97<=e&&e<=102?e-97+10:-1)}function M8e(t){return t===120?2:t===117?4:t===85?8:0}function I8e(t){return 48<=t&&t<=57?t-48:-1}function yK(t){return t===48?"\0":t===97?"\x07":t===98?"\b":t===116||t===9?" ":t===110?`
|
||
`:t===118?"\v":t===102?"\f":t===114?"\r":t===101?"\x1B":t===32?" ":t===34?'"':t===47?"/":t===92?"\\":t===78?"\x85":t===95?"\xA0":t===76?"\u2028":t===80?"\u2029":""}function O8e(t){return t<=65535?String.fromCharCode(t):String.fromCharCode((t-65536>>10)+55296,(t-65536&1023)+56320)}function P8e(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||IK,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=t.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function zK(t,e){var r={name:t.filename,buffer:t.input.slice(0,-1),position:t.position,line:t.line,column:t.position-t.lineStart};return r.snippet=EAe(r),new Ms(e,r)}function Zt(t,e){throw zK(t,e)}function OT(t,e){t.onWarning&&t.onWarning.call(null,zK(t,e))}function Wh(t,e,r,n){var i,a,s,l;if(e<r){if(l=t.input.slice(e,r),n)for(i=0,a=l.length;i<a;i+=1)s=l.charCodeAt(i),s===9||32<=s&&s<=1114111||Zt(t,"expected valid JSON character");else D8e.test(l)&&Zt(t,"the stream contains non-printable characters");t.result+=l}}function xK(t,e,r,n){var i,a,s,l;for(Fi.isObject(r)||Zt(t,"cannot merge mappings; the provided source object is unacceptable"),i=Object.keys(r),s=0,l=i.length;s<l;s+=1)a=i[s],qh.call(e,a)||(e[a]=r[a],n[a]=!0)}function ym(t,e,r,n,i,a,s,l,u){var h,f;if(Array.isArray(i))for(i=Array.prototype.slice.call(i),h=0,f=i.length;h<f;h+=1)Array.isArray(i[h])&&Zt(t,"nested arrays are not supported inside keys"),typeof i=="object"&&gK(i[h])==="[object Object]"&&(i[h]="[object Object]");if(typeof i=="object"&&gK(i)==="[object Object]"&&(i="[object Object]"),i=String(i),e===null&&(e={}),n==="tag:yaml.org,2002:merge")if(Array.isArray(a))for(h=0,f=a.length;h<f;h+=1)xK(t,e,a[h],r);else xK(t,e,a,r);else!t.json&&!qh.call(r,i)&&qh.call(e,i)&&(t.line=s||t.line,t.lineStart=l||t.lineStart,t.position=u||t.position,Zt(t,"duplicated mapping key")),i==="__proto__"?Object.defineProperty(e,i,{configurable:!0,enumerable:!0,writable:!0,value:a}):e[i]=a,delete r[i];return e}function ZL(t){var e;e=t.input.charCodeAt(t.position),e===10?t.position++:e===13?(t.position++,t.input.charCodeAt(t.position)===10&&t.position++):Zt(t,"a line break is expected"),t.line+=1,t.lineStart=t.position,t.firstTabInLine=-1}function _i(t,e,r){for(var n=0,i=t.input.charCodeAt(t.position);i!==0;){for(;Ud(i);)i===9&&t.firstTabInLine===-1&&(t.firstTabInLine=t.position),i=t.input.charCodeAt(++t.position);if(e&&i===35)do i=t.input.charCodeAt(++t.position);while(i!==10&&i!==13&&i!==0);if(vc(i))for(ZL(t),i=t.input.charCodeAt(t.position),n++,t.lineIndent=0;i===32;)t.lineIndent++,i=t.input.charCodeAt(++t.position);else break}return r!==-1&&n!==0&&t.lineIndent<r&&OT(t,"deficient indentation"),n}function FT(t){var e=t.position,r;return r=t.input.charCodeAt(e),!!((r===45||r===46)&&r===t.input.charCodeAt(e+1)&&r===t.input.charCodeAt(e+2)&&(e+=3,r=t.input.charCodeAt(e),r===0||Is(r)))}function JL(t,e){e===1?t.result+=" ":e>1&&(t.result+=Fi.repeat(`
|
||
`,e-1))}function B8e(t,e,r){var n,i,a,s,l,u,h,f,d=t.kind,p=t.result,m;if(m=t.input.charCodeAt(t.position),Is(m)||gm(m)||m===35||m===38||m===42||m===33||m===124||m===62||m===39||m===34||m===37||m===64||m===96||(m===63||m===45)&&(i=t.input.charCodeAt(t.position+1),Is(i)||r&&gm(i)))return!1;for(t.kind="scalar",t.result="",a=s=t.position,l=!1;m!==0;){if(m===58){if(i=t.input.charCodeAt(t.position+1),Is(i)||r&&gm(i))break}else if(m===35){if(n=t.input.charCodeAt(t.position-1),Is(n))break}else{if(t.position===t.lineStart&&FT(t)||r&&gm(m))break;if(vc(m))if(u=t.line,h=t.lineStart,f=t.lineIndent,_i(t,!1,-1),t.lineIndent>=e){l=!0,m=t.input.charCodeAt(t.position);continue}else{t.position=s,t.line=u,t.lineStart=h,t.lineIndent=f;break}}l&&(Wh(t,a,s,!1),JL(t,t.line-u),a=s=t.position,l=!1),Ud(m)||(s=t.position+1),m=t.input.charCodeAt(++t.position)}return Wh(t,a,s,!1),t.result?!0:(t.kind=d,t.result=p,!1)}function F8e(t,e){var r,n,i;if(r=t.input.charCodeAt(t.position),r!==39)return!1;for(t.kind="scalar",t.result="",t.position++,n=i=t.position;(r=t.input.charCodeAt(t.position))!==0;)if(r===39)if(Wh(t,n,t.position,!0),r=t.input.charCodeAt(++t.position),r===39)n=t.position,t.position++,i=t.position;else return!0;else vc(r)?(Wh(t,n,i,!0),JL(t,_i(t,!1,e)),n=i=t.position):t.position===t.lineStart&&FT(t)?Zt(t,"unexpected end of the document within a single quoted scalar"):(t.position++,i=t.position);Zt(t,"unexpected end of the stream within a single quoted scalar")}function $8e(t,e){var r,n,i,a,s,l;if(l=t.input.charCodeAt(t.position),l!==34)return!1;for(t.kind="scalar",t.result="",t.position++,r=n=t.position;(l=t.input.charCodeAt(t.position))!==0;){if(l===34)return Wh(t,r,t.position,!0),t.position++,!0;if(l===92){if(Wh(t,r,t.position,!0),l=t.input.charCodeAt(++t.position),vc(l))_i(t,!1,e);else if(l<256&&$K[l])t.result+=GK[l],t.position++;else if((s=M8e(l))>0){for(i=s,a=0;i>0;i--)l=t.input.charCodeAt(++t.position),(s=N8e(l))>=0?a=(a<<4)+s:Zt(t,"expected hexadecimal character");t.result+=O8e(a),t.position++}else Zt(t,"unknown escape sequence");r=n=t.position}else vc(l)?(Wh(t,r,n,!0),JL(t,_i(t,!1,e)),r=n=t.position):t.position===t.lineStart&&FT(t)?Zt(t,"unexpected end of the document within a double quoted scalar"):(t.position++,n=t.position)}Zt(t,"unexpected end of the stream within a double quoted scalar")}function G8e(t,e){var r=!0,n,i,a,s=t.tag,l,u=t.anchor,h,f,d,p,m,g=Object.create(null),y,x,v,b;if(b=t.input.charCodeAt(t.position),b===91)f=93,m=!1,l=[];else if(b===123)f=125,m=!0,l={};else return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=l),b=t.input.charCodeAt(++t.position);b!==0;){if(_i(t,!0,e),b=t.input.charCodeAt(t.position),b===f)return t.position++,t.tag=s,t.anchor=u,t.kind=m?"mapping":"sequence",t.result=l,!0;r?b===44&&Zt(t,"expected the node content, but found ','"):Zt(t,"missed comma between flow collection entries"),x=y=v=null,d=p=!1,b===63&&(h=t.input.charCodeAt(t.position+1),Is(h)&&(d=p=!0,t.position++,_i(t,!0,e))),n=t.line,i=t.lineStart,a=t.position,vm(t,e,MT,!1,!0),x=t.tag,y=t.result,_i(t,!0,e),b=t.input.charCodeAt(t.position),(p||t.line===n)&&b===58&&(d=!0,b=t.input.charCodeAt(++t.position),_i(t,!0,e),vm(t,e,MT,!1,!0),v=t.result),m?ym(t,l,g,x,y,v,n,i,a):d?l.push(ym(t,null,g,x,y,v,n,i,a)):l.push(y),_i(t,!0,e),b=t.input.charCodeAt(t.position),b===44?(r=!0,b=t.input.charCodeAt(++t.position)):r=!1}Zt(t,"unexpected end of the stream within a flow collection")}function z8e(t,e){var r,n,i=WL,a=!1,s=!1,l=e,u=0,h=!1,f,d;if(d=t.input.charCodeAt(t.position),d===124)n=!1;else if(d===62)n=!0;else return!1;for(t.kind="scalar",t.result="";d!==0;)if(d=t.input.charCodeAt(++t.position),d===43||d===45)WL===i?i=d===43?mK:_8e:Zt(t,"repeat of a chomping mode identifier");else if((f=I8e(d))>=0)f===0?Zt(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):s?Zt(t,"repeat of an indentation width identifier"):(l=e+f-1,s=!0);else break;if(Ud(d)){do d=t.input.charCodeAt(++t.position);while(Ud(d));if(d===35)do d=t.input.charCodeAt(++t.position);while(!vc(d)&&d!==0)}for(;d!==0;){for(ZL(t),t.lineIndent=0,d=t.input.charCodeAt(t.position);(!s||t.lineIndent<l)&&d===32;)t.lineIndent++,d=t.input.charCodeAt(++t.position);if(!s&&t.lineIndent>l&&(l=t.lineIndent),vc(d)){u++;continue}if(t.lineIndent<l){i===mK?t.result+=Fi.repeat(`
|
||
`,a?1+u:u):i===WL&&a&&(t.result+=`
|
||
`);break}for(n?Ud(d)?(h=!0,t.result+=Fi.repeat(`
|
||
`,a?1+u:u)):h?(h=!1,t.result+=Fi.repeat(`
|
||
`,u+1)):u===0?a&&(t.result+=" "):t.result+=Fi.repeat(`
|
||
`,u):t.result+=Fi.repeat(`
|
||
`,a?1+u:u),a=!0,s=!0,u=0,r=t.position;!vc(d)&&d!==0;)d=t.input.charCodeAt(++t.position);Wh(t,r,t.position,!1)}return!0}function bK(t,e){var r,n=t.tag,i=t.anchor,a=[],s,l=!1,u;if(t.firstTabInLine!==-1)return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=a),u=t.input.charCodeAt(t.position);u!==0&&(t.firstTabInLine!==-1&&(t.position=t.firstTabInLine,Zt(t,"tab characters must not be used in indentation")),!(u!==45||(s=t.input.charCodeAt(t.position+1),!Is(s))));){if(l=!0,t.position++,_i(t,!0,-1)&&t.lineIndent<=e){a.push(null),u=t.input.charCodeAt(t.position);continue}if(r=t.line,vm(t,e,PK,!1,!0),a.push(t.result),_i(t,!0,-1),u=t.input.charCodeAt(t.position),(t.line===r||t.lineIndent>e)&&u!==0)Zt(t,"bad indentation of a sequence entry");else if(t.lineIndent<e)break}return l?(t.tag=n,t.anchor=i,t.kind="sequence",t.result=a,!0):!1}function V8e(t,e,r){var n,i,a,s,l,u,h=t.tag,f=t.anchor,d={},p=Object.create(null),m=null,g=null,y=null,x=!1,v=!1,b;if(t.firstTabInLine!==-1)return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=d),b=t.input.charCodeAt(t.position);b!==0;){if(!x&&t.firstTabInLine!==-1&&(t.position=t.firstTabInLine,Zt(t,"tab characters must not be used in indentation")),n=t.input.charCodeAt(t.position+1),a=t.line,(b===63||b===58)&&Is(n))b===63?(x&&(ym(t,d,p,m,g,null,s,l,u),m=g=y=null),v=!0,x=!0,i=!0):x?(x=!1,i=!0):Zt(t,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),t.position+=1,b=n;else{if(s=t.line,l=t.lineStart,u=t.position,!vm(t,r,OK,!1,!0))break;if(t.line===a){for(b=t.input.charCodeAt(t.position);Ud(b);)b=t.input.charCodeAt(++t.position);if(b===58)b=t.input.charCodeAt(++t.position),Is(b)||Zt(t,"a whitespace character is expected after the key-value separator within a block mapping"),x&&(ym(t,d,p,m,g,null,s,l,u),m=g=y=null),v=!0,x=!1,i=!1,m=t.tag,g=t.result;else if(v)Zt(t,"can not read an implicit mapping pair; a colon is missed");else return t.tag=h,t.anchor=f,!0}else if(v)Zt(t,"can not read a block mapping entry; a multiline key may not be an implicit key");else return t.tag=h,t.anchor=f,!0}if((t.line===a||t.lineIndent>e)&&(x&&(s=t.line,l=t.lineStart,u=t.position),vm(t,e,IT,!0,i)&&(x?g=t.result:y=t.result),x||(ym(t,d,p,m,g,y,s,l,u),m=g=y=null),_i(t,!0,-1),b=t.input.charCodeAt(t.position)),(t.line===a||t.lineIndent>e)&&b!==0)Zt(t,"bad indentation of a mapping entry");else if(t.lineIndent<e)break}return x&&ym(t,d,p,m,g,null,s,l,u),v&&(t.tag=h,t.anchor=f,t.kind="mapping",t.result=d),v}function U8e(t){var e,r=!1,n=!1,i,a,s;if(s=t.input.charCodeAt(t.position),s!==33)return!1;if(t.tag!==null&&Zt(t,"duplication of a tag property"),s=t.input.charCodeAt(++t.position),s===60?(r=!0,s=t.input.charCodeAt(++t.position)):s===33?(n=!0,i="!!",s=t.input.charCodeAt(++t.position)):i="!",e=t.position,r){do s=t.input.charCodeAt(++t.position);while(s!==0&&s!==62);t.position<t.length?(a=t.input.slice(e,t.position),s=t.input.charCodeAt(++t.position)):Zt(t,"unexpected end of the stream within a verbatim tag")}else{for(;s!==0&&!Is(s);)s===33&&(n?Zt(t,"tag suffix cannot contain exclamation marks"):(i=t.input.slice(e-1,t.position+1),BK.test(i)||Zt(t,"named tag handle cannot contain such characters"),n=!0,e=t.position+1)),s=t.input.charCodeAt(++t.position);a=t.input.slice(e,t.position),R8e.test(a)&&Zt(t,"tag suffix cannot contain flow indicator characters")}a&&!FK.test(a)&&Zt(t,"tag name cannot contain such characters: "+a);try{a=decodeURIComponent(a)}catch{Zt(t,"tag name is malformed: "+a)}return r?t.tag=a:qh.call(t.tagMap,i)?t.tag=t.tagMap[i]+a:i==="!"?t.tag="!"+a:i==="!!"?t.tag="tag:yaml.org,2002:"+a:Zt(t,'undeclared tag handle "'+i+'"'),!0}function H8e(t){var e,r;if(r=t.input.charCodeAt(t.position),r!==38)return!1;for(t.anchor!==null&&Zt(t,"duplication of an anchor property"),r=t.input.charCodeAt(++t.position),e=t.position;r!==0&&!Is(r)&&!gm(r);)r=t.input.charCodeAt(++t.position);return t.position===e&&Zt(t,"name of an anchor node must contain at least one character"),t.anchor=t.input.slice(e,t.position),!0}function W8e(t){var e,r,n;if(n=t.input.charCodeAt(t.position),n!==42)return!1;for(n=t.input.charCodeAt(++t.position),e=t.position;n!==0&&!Is(n)&&!gm(n);)n=t.input.charCodeAt(++t.position);return t.position===e&&Zt(t,"name of an alias node must contain at least one character"),r=t.input.slice(e,t.position),qh.call(t.anchorMap,r)||Zt(t,'unidentified alias "'+r+'"'),t.result=t.anchorMap[r],_i(t,!0,-1),!0}function vm(t,e,r,n,i){var a,s,l,u=1,h=!1,f=!1,d,p,m,g,y,x;if(t.listener!==null&&t.listener("open",t),t.tag=null,t.anchor=null,t.kind=null,t.result=null,a=s=l=IT===r||PK===r,n&&_i(t,!0,-1)&&(h=!0,t.lineIndent>e?u=1:t.lineIndent===e?u=0:t.lineIndent<e&&(u=-1)),u===1)for(;U8e(t)||H8e(t);)_i(t,!0,-1)?(h=!0,l=a,t.lineIndent>e?u=1:t.lineIndent===e?u=0:t.lineIndent<e&&(u=-1)):l=!1;if(l&&(l=h||i),(u===1||IT===r)&&(MT===r||OK===r?y=e:y=e+1,x=t.position-t.lineStart,u===1?l&&(bK(t,x)||V8e(t,x,y))||G8e(t,y)?f=!0:(s&&z8e(t,y)||F8e(t,y)||$8e(t,y)?f=!0:W8e(t)?(f=!0,(t.tag!==null||t.anchor!==null)&&Zt(t,"alias node should not have any properties")):B8e(t,y,MT===r)&&(f=!0,t.tag===null&&(t.tag="?")),t.anchor!==null&&(t.anchorMap[t.anchor]=t.result)):u===0&&(f=l&&bK(t,x))),t.tag===null)t.anchor!==null&&(t.anchorMap[t.anchor]=t.result);else if(t.tag==="?"){for(t.result!==null&&t.kind!=="scalar"&&Zt(t,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+t.kind+'"'),d=0,p=t.implicitTypes.length;d<p;d+=1)if(g=t.implicitTypes[d],g.resolve(t.result)){t.result=g.construct(t.result),t.tag=g.tag,t.anchor!==null&&(t.anchorMap[t.anchor]=t.result);break}}else if(t.tag!=="!"){if(qh.call(t.typeMap[t.kind||"fallback"],t.tag))g=t.typeMap[t.kind||"fallback"][t.tag];else for(g=null,m=t.typeMap.multi[t.kind||"fallback"],d=0,p=m.length;d<p;d+=1)if(t.tag.slice(0,m[d].tag.length)===m[d].tag){g=m[d];break}g||Zt(t,"unknown tag !<"+t.tag+">"),t.result!==null&&g.kind!==t.kind&&Zt(t,"unacceptable node kind for !<"+t.tag+'> tag; it should be "'+g.kind+'", not "'+t.kind+'"'),g.resolve(t.result,t.tag)?(t.result=g.construct(t.result,t.tag),t.anchor!==null&&(t.anchorMap[t.anchor]=t.result)):Zt(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")}return t.listener!==null&&t.listener("close",t),t.tag!==null||t.anchor!==null||f}function q8e(t){var e=t.position,r,n,i,a=!1,s;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap=Object.create(null),t.anchorMap=Object.create(null);(s=t.input.charCodeAt(t.position))!==0&&(_i(t,!0,-1),s=t.input.charCodeAt(t.position),!(t.lineIndent>0||s!==37));){for(a=!0,s=t.input.charCodeAt(++t.position),r=t.position;s!==0&&!Is(s);)s=t.input.charCodeAt(++t.position);for(n=t.input.slice(r,t.position),i=[],n.length<1&&Zt(t,"directive name must not be less than one character in length");s!==0;){for(;Ud(s);)s=t.input.charCodeAt(++t.position);if(s===35){do s=t.input.charCodeAt(++t.position);while(s!==0&&!vc(s));break}if(vc(s))break;for(r=t.position;s!==0&&!Is(s);)s=t.input.charCodeAt(++t.position);i.push(t.input.slice(r,t.position))}s!==0&&ZL(t),qh.call(vK,n)?vK[n](t,n,i):OT(t,'unknown document directive "'+n+'"')}if(_i(t,!0,-1),t.lineIndent===0&&t.input.charCodeAt(t.position)===45&&t.input.charCodeAt(t.position+1)===45&&t.input.charCodeAt(t.position+2)===45?(t.position+=3,_i(t,!0,-1)):a&&Zt(t,"directives end mark is expected"),vm(t,t.lineIndent-1,IT,!1,!0),_i(t,!0,-1),t.checkLineBreaks&&L8e.test(t.input.slice(e,t.position))&&OT(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&FT(t)){t.input.charCodeAt(t.position)===46&&(t.position+=3,_i(t,!0,-1));return}if(t.position<t.length-1)Zt(t,"end of the stream or a document separator is expected");else return}function VK(t,e){t=String(t),e=e||{},t.length!==0&&(t.charCodeAt(t.length-1)!==10&&t.charCodeAt(t.length-1)!==13&&(t+=`
|
||
`),t.charCodeAt(0)===65279&&(t=t.slice(1)));var r=new P8e(t,e),n=t.indexOf("\0");for(n!==-1&&(r.position=n,Zt(r,"null byte is not allowed in input")),r.input+="\0";r.input.charCodeAt(r.position)===32;)r.lineIndent+=1,r.position+=1;for(;r.position<r.length-1;)q8e(r);return r.documents}function Y8e(t,e,r){e!==null&&typeof e=="object"&&typeof r>"u"&&(r=e,e=null);var n=VK(t,r);if(typeof e!="function")return n;for(var i=0,a=n.length;i<a;i+=1)e(n[i])}function X8e(t,e){var r=VK(t,e);if(r.length!==0){if(r.length===1)return r[0];throw new Ms("expected a single document in the stream, but found more")}}function m_e(t,e){var r,n,i,a,s,l,u;if(e===null)return{};for(r={},n=Object.keys(e),i=0,a=n.length;i<a;i+=1)s=n[i],l=String(e[s]),s.slice(0,2)==="!!"&&(s="tag:yaml.org,2002:"+s.slice(2)),u=t.compiledTypeMap.fallback[s],u&&WK.call(u.styleAliases,l)&&(l=u.styleAliases[l]),r[s]=l;return r}function g_e(t){var e,r,n;if(e=t.toString(16).toUpperCase(),t<=255)r="x",n=2;else if(t<=65535)r="u",n=4;else if(t<=4294967295)r="U",n=8;else throw new Ms("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+r+Fi.repeat("0",n-e.length)+e}function v_e(t){this.schema=t.schema||IK,this.indent=Math.max(1,t.indent||2),this.noArrayIndent=t.noArrayIndent||!1,this.skipInvalid=t.skipInvalid||!1,this.flowLevel=Fi.isNothing(t.flowLevel)?-1:t.flowLevel,this.styleMap=m_e(this.schema,t.styles||null),this.sortKeys=t.sortKeys||!1,this.lineWidth=t.lineWidth||80,this.noRefs=t.noRefs||!1,this.noCompatMode=t.noCompatMode||!1,this.condenseFlow=t.condenseFlow||!1,this.quotingType=t.quotingType==='"'?v2:y_e,this.forceQuotes=t.forceQuotes||!1,this.replacer=typeof t.replacer=="function"?t.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function TK(t,e){for(var r=Fi.repeat(" ",e),n=0,i=-1,a="",s,l=t.length;n<l;)i=t.indexOf(`
|
||
`,n),i===-1?(s=t.slice(n),n=l):(s=t.slice(n,i+1),n=i+1),s.length&&s!==`
|
||
`&&(a+=r),a+=s;return a}function XL(t,e){return`
|
||
`+Fi.repeat(" ",t.indent*e)}function x_e(t,e){var r,n,i;for(r=0,n=t.implicitTypes.length;r<n;r+=1)if(i=t.implicitTypes[r],i.resolve(e))return!0;return!1}function BT(t){return t===J8e||t===Q8e}function x2(t){return 32<=t&&t<=126||161<=t&&t<=55295&&t!==8232&&t!==8233||57344<=t&&t<=65533&&t!==e9||65536<=t&&t<=1114111}function wK(t){return x2(t)&&t!==e9&&t!==Z8e&&t!==y2}function kK(t,e,r){var n=wK(t),i=n&&!BT(t);return(r?n:n&&t!==qK&&t!==YK&&t!==XK&&t!==jK&&t!==KK)&&t!==YL&&!(e===PT&&!i)||wK(e)&&!BT(e)&&t===YL||e===PT&&i}function b_e(t){return x2(t)&&t!==e9&&!BT(t)&&t!==s_e&&t!==c_e&&t!==PT&&t!==qK&&t!==YK&&t!==XK&&t!==jK&&t!==KK&&t!==YL&&t!==n_e&&t!==a_e&&t!==e_e&&t!==f_e&&t!==o_e&&t!==l_e&&t!==i_e&&t!==t_e&&t!==r_e&&t!==u_e&&t!==h_e}function T_e(t){return!BT(t)&&t!==PT}function m2(t,e){var r=t.charCodeAt(e),n;return r>=55296&&r<=56319&&e+1<t.length&&(n=t.charCodeAt(e+1),n>=56320&&n<=57343)?(r-55296)*1024+n-56320+65536:r}function QK(t){var e=/^\n* /;return e.test(t)}function w_e(t,e,r,n,i,a,s,l){var u,h=0,f=null,d=!1,p=!1,m=n!==-1,g=-1,y=b_e(m2(t,0))&&T_e(m2(t,t.length-1));if(e||s)for(u=0;u<t.length;h>=65536?u+=2:u++){if(h=m2(t,u),!x2(h))return mm;y=y&&kK(h,f,l),f=h}else{for(u=0;u<t.length;h>=65536?u+=2:u++){if(h=m2(t,u),h===y2)d=!0,m&&(p=p||u-g-1>n&&t[g+1]!==" ",g=u);else if(!x2(h))return mm;y=y&&kK(h,f,l),f=h}p=p||m&&u-g-1>n&&t[g+1]!==" "}return!d&&!p?y&&!s&&!i(t)?ZK:a===v2?mm:jL:r>9&&QK(t)?mm:s?a===v2?mm:jL:p?eQ:JK}function k_e(t,e,r,n,i){t.dump=function(){if(e.length===0)return t.quotingType===v2?'""':"''";if(!t.noCompatMode&&(d_e.indexOf(e)!==-1||p_e.test(e)))return t.quotingType===v2?'"'+e+'"':"'"+e+"'";var a=t.indent*Math.max(1,r),s=t.lineWidth===-1?-1:Math.max(Math.min(t.lineWidth,40),t.lineWidth-a),l=n||t.flowLevel>-1&&r>=t.flowLevel;function u(h){return x_e(t,h)}switch(o(u,"testAmbiguity"),w_e(e,l,t.indent,s,u,t.quotingType,t.forceQuotes&&!n,i)){case ZK:return e;case jL:return"'"+e.replace(/'/g,"''")+"'";case JK:return"|"+EK(e,t.indent)+SK(TK(e,a));case eQ:return">"+EK(e,t.indent)+SK(TK(E_e(e,s),a));case mm:return'"'+S_e(e)+'"';default:throw new Ms("impossible error: invalid scalar style")}}()}function EK(t,e){var r=QK(t)?String(e):"",n=t[t.length-1]===`
|
||
`,i=n&&(t[t.length-2]===`
|
||
`||t===`
|
||
`),a=i?"+":n?"":"-";return r+a+`
|
||
`}function SK(t){return t[t.length-1]===`
|
||
`?t.slice(0,-1):t}function E_e(t,e){for(var r=/(\n+)([^\n]*)/g,n=function(){var h=t.indexOf(`
|
||
`);return h=h!==-1?h:t.length,r.lastIndex=h,CK(t.slice(0,h),e)}(),i=t[0]===`
|
||
`||t[0]===" ",a,s;s=r.exec(t);){var l=s[1],u=s[2];a=u[0]===" ",n+=l+(!i&&!a&&u!==""?`
|
||
`:"")+CK(u,e),i=a}return n}function CK(t,e){if(t===""||t[0]===" ")return t;for(var r=/ [^ ]/g,n,i=0,a,s=0,l=0,u="";n=r.exec(t);)l=n.index,l-i>e&&(a=s>i?s:l,u+=`
|
||
`+t.slice(i,a),i=a+1),s=l;return u+=`
|
||
`,t.length-i>e&&s>i?u+=t.slice(i,s)+`
|
||
`+t.slice(s+1):u+=t.slice(i),u.slice(1)}function S_e(t){for(var e="",r=0,n,i=0;i<t.length;r>=65536?i+=2:i++)r=m2(t,i),n=Na[r],!n&&x2(r)?(e+=t[i],r>=65536&&(e+=t[i+1])):e+=n||g_e(r);return e}function C_e(t,e,r){var n="",i=t.tag,a,s,l;for(a=0,s=r.length;a<s;a+=1)l=r[a],t.replacer&&(l=t.replacer.call(r,String(a),l)),(Lu(t,e,l,!1,!1)||typeof l>"u"&&Lu(t,e,null,!1,!1))&&(n!==""&&(n+=","+(t.condenseFlow?"":" ")),n+=t.dump);t.tag=i,t.dump="["+n+"]"}function AK(t,e,r,n){var i="",a=t.tag,s,l,u;for(s=0,l=r.length;s<l;s+=1)u=r[s],t.replacer&&(u=t.replacer.call(r,String(s),u)),(Lu(t,e+1,u,!0,!0,!1,!0)||typeof u>"u"&&Lu(t,e+1,null,!0,!0,!1,!0))&&((!n||i!=="")&&(i+=XL(t,e)),t.dump&&y2===t.dump.charCodeAt(0)?i+="-":i+="- ",i+=t.dump);t.tag=a,t.dump=i||"[]"}function A_e(t,e,r){var n="",i=t.tag,a=Object.keys(r),s,l,u,h,f;for(s=0,l=a.length;s<l;s+=1)f="",n!==""&&(f+=", "),t.condenseFlow&&(f+='"'),u=a[s],h=r[u],t.replacer&&(h=t.replacer.call(r,u,h)),Lu(t,e,u,!1,!1)&&(t.dump.length>1024&&(f+="? "),f+=t.dump+(t.condenseFlow?'"':"")+":"+(t.condenseFlow?"":" "),Lu(t,e,h,!1,!1)&&(f+=t.dump,n+=f));t.tag=i,t.dump="{"+n+"}"}function __e(t,e,r,n){var i="",a=t.tag,s=Object.keys(r),l,u,h,f,d,p;if(t.sortKeys===!0)s.sort();else if(typeof t.sortKeys=="function")s.sort(t.sortKeys);else if(t.sortKeys)throw new Ms("sortKeys must be a boolean or a function");for(l=0,u=s.length;l<u;l+=1)p="",(!n||i!=="")&&(p+=XL(t,e)),h=s[l],f=r[h],t.replacer&&(f=t.replacer.call(r,h,f)),Lu(t,e+1,h,!0,!0,!0)&&(d=t.tag!==null&&t.tag!=="?"||t.dump&&t.dump.length>1024,d&&(t.dump&&y2===t.dump.charCodeAt(0)?p+="?":p+="? "),p+=t.dump,d&&(p+=XL(t,e)),Lu(t,e+1,f,!0,d)&&(t.dump&&y2===t.dump.charCodeAt(0)?p+=":":p+=": ",p+=t.dump,i+=p));t.tag=a,t.dump=i||"{}"}function _K(t,e,r){var n,i,a,s,l,u;for(i=r?t.explicitTypes:t.implicitTypes,a=0,s=i.length;a<s;a+=1)if(l=i[a],(l.instanceOf||l.predicate)&&(!l.instanceOf||typeof e=="object"&&e instanceof l.instanceOf)&&(!l.predicate||l.predicate(e))){if(r?l.multi&&l.representName?t.tag=l.representName(e):t.tag=l.tag:t.tag="?",l.represent){if(u=t.styleMap[l.tag]||l.defaultStyle,HK.call(l.represent)==="[object Function]")n=l.represent(e,u);else if(WK.call(l.represent,u))n=l.represent[u](e,u);else throw new Ms("!<"+l.tag+'> tag resolver accepts not "'+u+'" style');t.dump=n}return!0}return!1}function Lu(t,e,r,n,i,a,s){t.tag=null,t.dump=r,_K(t,r,!1)||_K(t,r,!0);var l=HK.call(t.dump),u=n,h;n&&(n=t.flowLevel<0||t.flowLevel>e);var f=l==="[object Object]"||l==="[object Array]",d,p;if(f&&(d=t.duplicates.indexOf(r),p=d!==-1),(t.tag!==null&&t.tag!=="?"||p||t.indent!==2&&e>0)&&(i=!1),p&&t.usedDuplicates[d])t.dump="*ref_"+d;else{if(f&&p&&!t.usedDuplicates[d]&&(t.usedDuplicates[d]=!0),l==="[object Object]")n&&Object.keys(t.dump).length!==0?(__e(t,e,t.dump,i),p&&(t.dump="&ref_"+d+t.dump)):(A_e(t,e,t.dump),p&&(t.dump="&ref_"+d+" "+t.dump));else if(l==="[object Array]")n&&t.dump.length!==0?(t.noArrayIndent&&!s&&e>0?AK(t,e-1,t.dump,i):AK(t,e,t.dump,i),p&&(t.dump="&ref_"+d+t.dump)):(C_e(t,e,t.dump),p&&(t.dump="&ref_"+d+" "+t.dump));else if(l==="[object String]")t.tag!=="?"&&k_e(t,t.dump,e,a,u);else{if(l==="[object Undefined]")return!1;if(t.skipInvalid)return!1;throw new Ms("unacceptable kind of an object to dump "+l)}t.tag!==null&&t.tag!=="?"&&(h=encodeURI(t.tag[0]==="!"?t.tag.slice(1):t.tag).replace(/!/g,"%21"),t.tag[0]==="!"?h="!"+h:h.slice(0,18)==="tag:yaml.org,2002:"?h="!!"+h.slice(18):h="!<"+h+">",t.dump=h+" "+t.dump)}return!0}function D_e(t,e){var r=[],n=[],i,a;for(KL(t,r,n),i=0,a=n.length;i<a;i+=1)e.duplicates.push(r[n[i]]);e.usedDuplicates=new Array(a)}function KL(t,e,r){var n,i,a;if(t!==null&&typeof t=="object")if(i=e.indexOf(t),i!==-1)r.indexOf(i)===-1&&r.push(i);else if(e.push(t),Array.isArray(t))for(i=0,a=t.length;i<a;i+=1)KL(t[i],e,r);else for(n=Object.keys(t),i=0,a=n.length;i<a;i+=1)KL(t[n[i]],e,r)}function L_e(t,e){e=e||{};var r=new v_e(e);r.noRefs||D_e(t,r);var n=t;return r.replacer&&(n=r.replacer.call({"":n},"",n)),Lu(r,0,n,!0,!0)?r.dump+`
|
||
`:""}function t9(t,e){return function(){throw new Error("Function yaml."+t+" is removed in js-yaml 4. Use yaml."+e+" instead, which is now safe by default.")}}var yAe,vAe,xAe,bAe,TAe,wAe,Fi,Ms,EAe,SAe,CAe,Ra,LAe,RAe,NAe,MAe,IAe,FAe,VAe,jAe,KAe,JAe,r8e,RK,n8e,NK,MK,o8e,c8e,QL,p8e,m8e,g8e,x8e,b8e,k8e,E8e,A8e,IK,qh,MT,OK,PK,IT,WL,_8e,mK,D8e,L8e,R8e,BK,FK,$K,GK,Vd,vK,j8e,K8e,UK,HK,WK,e9,Q8e,y2,Z8e,J8e,e_e,t_e,YL,r_e,n_e,i_e,a_e,qK,s_e,PT,o_e,l_e,c_e,u_e,YK,XK,h_e,jK,f_e,KK,Na,d_e,p_e,y_e,v2,ZK,jL,JK,eQ,mm,R_e,N_e,Yh,Xh,SSt,CSt,ASt,_St,DSt,b2=N(()=>{"use strict";o(DK,"isNothing");o(fAe,"isObject");o(dAe,"toArray");o(pAe,"extend");o(mAe,"repeat");o(gAe,"isNegativeZero");yAe=DK,vAe=fAe,xAe=dAe,bAe=mAe,TAe=gAe,wAe=pAe,Fi={isNothing:yAe,isObject:vAe,toArray:xAe,repeat:bAe,isNegativeZero:TAe,extend:wAe};o(LK,"formatError");o(g2,"YAMLException$1");g2.prototype=Object.create(Error.prototype);g2.prototype.constructor=g2;g2.prototype.toString=o(function(e){return this.name+": "+LK(this,e)},"toString");Ms=g2;o(UL,"getLine");o(HL,"padStart");o(kAe,"makeSnippet");EAe=kAe,SAe=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],CAe=["scalar","sequence","mapping"];o(AAe,"compileStyleAliases");o(_Ae,"Type$1");Ra=_Ae;o(pK,"compileList");o(DAe,"compileMap");o(qL,"Schema$1");qL.prototype.extend=o(function(e){var r=[],n=[];if(e instanceof Ra)n.push(e);else if(Array.isArray(e))n=n.concat(e);else if(e&&(Array.isArray(e.implicit)||Array.isArray(e.explicit)))e.implicit&&(r=r.concat(e.implicit)),e.explicit&&(n=n.concat(e.explicit));else throw new Ms("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");r.forEach(function(a){if(!(a instanceof Ra))throw new Ms("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new Ms("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(a.multi)throw new Ms("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),n.forEach(function(a){if(!(a instanceof Ra))throw new Ms("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(qL.prototype);return i.implicit=(this.implicit||[]).concat(r),i.explicit=(this.explicit||[]).concat(n),i.compiledImplicit=pK(i,"implicit"),i.compiledExplicit=pK(i,"explicit"),i.compiledTypeMap=DAe(i.compiledImplicit,i.compiledExplicit),i},"extend");LAe=qL,RAe=new Ra("tag:yaml.org,2002:str",{kind:"scalar",construct:o(function(t){return t!==null?t:""},"construct")}),NAe=new Ra("tag:yaml.org,2002:seq",{kind:"sequence",construct:o(function(t){return t!==null?t:[]},"construct")}),MAe=new Ra("tag:yaml.org,2002:map",{kind:"mapping",construct:o(function(t){return t!==null?t:{}},"construct")}),IAe=new LAe({explicit:[RAe,NAe,MAe]});o(OAe,"resolveYamlNull");o(PAe,"constructYamlNull");o(BAe,"isNull");FAe=new Ra("tag:yaml.org,2002:null",{kind:"scalar",resolve:OAe,construct:PAe,predicate:BAe,represent:{canonical:o(function(){return"~"},"canonical"),lowercase:o(function(){return"null"},"lowercase"),uppercase:o(function(){return"NULL"},"uppercase"),camelcase:o(function(){return"Null"},"camelcase"),empty:o(function(){return""},"empty")},defaultStyle:"lowercase"});o($Ae,"resolveYamlBoolean");o(GAe,"constructYamlBoolean");o(zAe,"isBoolean");VAe=new Ra("tag:yaml.org,2002:bool",{kind:"scalar",resolve:$Ae,construct:GAe,predicate:zAe,represent:{lowercase:o(function(t){return t?"true":"false"},"lowercase"),uppercase:o(function(t){return t?"TRUE":"FALSE"},"uppercase"),camelcase:o(function(t){return t?"True":"False"},"camelcase")},defaultStyle:"lowercase"});o(UAe,"isHexCode");o(HAe,"isOctCode");o(WAe,"isDecCode");o(qAe,"resolveYamlInteger");o(YAe,"constructYamlInteger");o(XAe,"isInteger");jAe=new Ra("tag:yaml.org,2002:int",{kind:"scalar",resolve:qAe,construct:YAe,predicate:XAe,represent:{binary:o(function(t){return t>=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)},"binary"),octal:o(function(t){return t>=0?"0o"+t.toString(8):"-0o"+t.toString(8).slice(1)},"octal"),decimal:o(function(t){return t.toString(10)},"decimal"),hexadecimal:o(function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)},"hexadecimal")},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),KAe=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");o(QAe,"resolveYamlFloat");o(ZAe,"constructYamlFloat");JAe=/^[-+]?[0-9]+e/;o(e8e,"representYamlFloat");o(t8e,"isFloat");r8e=new Ra("tag:yaml.org,2002:float",{kind:"scalar",resolve:QAe,construct:ZAe,predicate:t8e,represent:e8e,defaultStyle:"lowercase"}),RK=IAe.extend({implicit:[FAe,VAe,jAe,r8e]}),n8e=RK,NK=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),MK=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]))?))?$");o(i8e,"resolveYamlTimestamp");o(a8e,"constructYamlTimestamp");o(s8e,"representYamlTimestamp");o8e=new Ra("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:i8e,construct:a8e,instanceOf:Date,represent:s8e});o(l8e,"resolveYamlMerge");c8e=new Ra("tag:yaml.org,2002:merge",{kind:"scalar",resolve:l8e}),QL=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
|
||
\r`;o(u8e,"resolveYamlBinary");o(h8e,"constructYamlBinary");o(f8e,"representYamlBinary");o(d8e,"isBinary");p8e=new Ra("tag:yaml.org,2002:binary",{kind:"scalar",resolve:u8e,construct:h8e,predicate:d8e,represent:f8e}),m8e=Object.prototype.hasOwnProperty,g8e=Object.prototype.toString;o(y8e,"resolveYamlOmap");o(v8e,"constructYamlOmap");x8e=new Ra("tag:yaml.org,2002:omap",{kind:"sequence",resolve:y8e,construct:v8e}),b8e=Object.prototype.toString;o(T8e,"resolveYamlPairs");o(w8e,"constructYamlPairs");k8e=new Ra("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:T8e,construct:w8e}),E8e=Object.prototype.hasOwnProperty;o(S8e,"resolveYamlSet");o(C8e,"constructYamlSet");A8e=new Ra("tag:yaml.org,2002:set",{kind:"mapping",resolve:S8e,construct:C8e}),IK=n8e.extend({implicit:[o8e,c8e],explicit:[p8e,x8e,k8e,A8e]}),qh=Object.prototype.hasOwnProperty,MT=1,OK=2,PK=3,IT=4,WL=1,_8e=2,mK=3,D8e=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,L8e=/[\x85\u2028\u2029]/,R8e=/[,\[\]\{\}]/,BK=/^(?:!|!!|![a-z\-]+!)$/i,FK=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;o(gK,"_class");o(vc,"is_EOL");o(Ud,"is_WHITE_SPACE");o(Is,"is_WS_OR_EOL");o(gm,"is_FLOW_INDICATOR");o(N8e,"fromHexCode");o(M8e,"escapedHexLen");o(I8e,"fromDecimalCode");o(yK,"simpleEscapeSequence");o(O8e,"charFromCodepoint");$K=new Array(256),GK=new Array(256);for(Vd=0;Vd<256;Vd++)$K[Vd]=yK(Vd)?1:0,GK[Vd]=yK(Vd);o(P8e,"State$1");o(zK,"generateError");o(Zt,"throwError");o(OT,"throwWarning");vK={YAML:o(function(e,r,n){var i,a,s;e.version!==null&&Zt(e,"duplication of %YAML directive"),n.length!==1&&Zt(e,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),i===null&&Zt(e,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),s=parseInt(i[2],10),a!==1&&Zt(e,"unacceptable YAML version of the document"),e.version=n[0],e.checkLineBreaks=s<2,s!==1&&s!==2&&OT(e,"unsupported YAML version of the document")},"handleYamlDirective"),TAG:o(function(e,r,n){var i,a;n.length!==2&&Zt(e,"TAG directive accepts exactly two arguments"),i=n[0],a=n[1],BK.test(i)||Zt(e,"ill-formed tag handle (first argument) of the TAG directive"),qh.call(e.tagMap,i)&&Zt(e,'there is a previously declared suffix for "'+i+'" tag handle'),FK.test(a)||Zt(e,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{Zt(e,"tag prefix is malformed: "+a)}e.tagMap[i]=a},"handleTagDirective")};o(Wh,"captureSegment");o(xK,"mergeMappings");o(ym,"storeMappingPair");o(ZL,"readLineBreak");o(_i,"skipSeparationSpace");o(FT,"testDocumentSeparator");o(JL,"writeFoldedLines");o(B8e,"readPlainScalar");o(F8e,"readSingleQuotedScalar");o($8e,"readDoubleQuotedScalar");o(G8e,"readFlowCollection");o(z8e,"readBlockScalar");o(bK,"readBlockSequence");o(V8e,"readBlockMapping");o(U8e,"readTagProperty");o(H8e,"readAnchorProperty");o(W8e,"readAlias");o(vm,"composeNode");o(q8e,"readDocument");o(VK,"loadDocuments");o(Y8e,"loadAll$1");o(X8e,"load$1");j8e=Y8e,K8e=X8e,UK={loadAll:j8e,load:K8e},HK=Object.prototype.toString,WK=Object.prototype.hasOwnProperty,e9=65279,Q8e=9,y2=10,Z8e=13,J8e=32,e_e=33,t_e=34,YL=35,r_e=37,n_e=38,i_e=39,a_e=42,qK=44,s_e=45,PT=58,o_e=61,l_e=62,c_e=63,u_e=64,YK=91,XK=93,h_e=96,jK=123,f_e=124,KK=125,Na={};Na[0]="\\0";Na[7]="\\a";Na[8]="\\b";Na[9]="\\t";Na[10]="\\n";Na[11]="\\v";Na[12]="\\f";Na[13]="\\r";Na[27]="\\e";Na[34]='\\"';Na[92]="\\\\";Na[133]="\\N";Na[160]="\\_";Na[8232]="\\L";Na[8233]="\\P";d_e=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],p_e=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;o(m_e,"compileStyleMap");o(g_e,"encodeHex");y_e=1,v2=2;o(v_e,"State");o(TK,"indentString");o(XL,"generateNextLine");o(x_e,"testImplicitResolving");o(BT,"isWhitespace");o(x2,"isPrintable");o(wK,"isNsCharOrWhitespace");o(kK,"isPlainSafe");o(b_e,"isPlainSafeFirst");o(T_e,"isPlainSafeLast");o(m2,"codePointAt");o(QK,"needIndentIndicator");ZK=1,jL=2,JK=3,eQ=4,mm=5;o(w_e,"chooseScalarStyle");o(k_e,"writeScalar");o(EK,"blockHeader");o(SK,"dropEndingNewline");o(E_e,"foldString");o(CK,"foldLine");o(S_e,"escapeString");o(C_e,"writeFlowSequence");o(AK,"writeBlockSequence");o(A_e,"writeFlowMapping");o(__e,"writeBlockMapping");o(_K,"detectType");o(Lu,"writeNode");o(D_e,"getDuplicateReferences");o(KL,"inspectNode");o(L_e,"dump$1");R_e=L_e,N_e={dump:R_e};o(t9,"renamed");Yh=RK,Xh=UK.load,SSt=UK.loadAll,CSt=N_e.dump,ASt=t9("safeLoad","load"),_St=t9("safeLoadAll","loadAll"),DSt=t9("safeDump","dump")});function a9(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}function sQ(t){Wd=t}function nn(t,e=""){let r=typeof t=="string"?t:t.source,n={replace:o((i,a)=>{let s=typeof a=="string"?a:a.source;return s=s.replace(as.caret,"$1"),r=r.replace(i,s),n},"replace"),getRegex:o(()=>new RegExp(r,e),"getRegex")};return n}function xc(t,e){if(e){if(as.escapeTest.test(t))return t.replace(as.escapeReplace,rQ)}else if(as.escapeTestNoEncode.test(t))return t.replace(as.escapeReplaceNoEncode,rQ);return t}function nQ(t){try{t=encodeURI(t).replace(as.percentDecode,"%")}catch{return null}return t}function iQ(t,e){let r=t.replace(as.findPipe,(a,s,l)=>{let u=!1,h=s;for(;--h>=0&&l[h]==="\\";)u=!u;return u?"|":" |"}),n=r.split(as.splitPipe),i=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),e)if(n.length>e)n.splice(e);else for(;n.length<e;)n.push("");for(;i<n.length;i++)n[i]=n[i].trim().replace(as.slashPipe,"|");return n}function w2(t,e,r){let n=t.length;if(n===0)return"";let i=0;for(;i<n;){let a=t.charAt(n-i-1);if(a===e&&!r)i++;else if(a!==e&&r)i++;else break}return t.slice(0,n-i)}function fDe(t,e){if(t.indexOf(e[1])===-1)return-1;let r=0;for(let n=0;n<t.length;n++)if(t[n]==="\\")n++;else if(t[n]===e[0])r++;else if(t[n]===e[1]&&(r--,r<0))return n;return r>0?-2:-1}function aQ(t,e,r,n,i){let a=e.href,s=e.title||null,l=t[1].replace(i.other.outputLinkReplace,"$1");n.state.inLink=!0;let u={type:t[0].charAt(0)==="!"?"image":"link",raw:r,href:a,title:s,text:l,tokens:n.inlineTokens(l)};return n.state.inLink=!1,u}function dDe(t,e,r){let n=t.match(r.other.indentCodeCompensation);if(n===null)return e;let i=n[1];return e.split(`
|
||
`).map(a=>{let s=a.match(r.other.beginningSpace);if(s===null)return a;let[l]=s;return l.length>=i.length?a.slice(i.length):a}).join(`
|
||
`)}function Jr(t,e){return Hd.parse(t,e)}var Wd,k2,as,M_e,I_e,O_e,E2,P_e,s9,oQ,lQ,B_e,o9,F_e,l9,$_e,G_e,WT,c9,z_e,cQ,V_e,u9,tQ,U_e,H_e,W_e,q_e,uQ,Y_e,qT,h9,hQ,X_e,fQ,j_e,K_e,Q_e,dQ,Z_e,J_e,pQ,eDe,tDe,rDe,nDe,iDe,aDe,sDe,VT,oDe,mQ,gQ,lDe,f9,cDe,r9,uDe,GT,T2,hDe,rQ,UT,Ru,HT,d9,Nu,zT,pDe,Hd,RSt,NSt,MSt,ISt,OSt,PSt,BSt,yQ=N(()=>{"use strict";o(a9,"_getDefaults");Wd=a9();o(sQ,"changeDefaults");k2={exec:o(()=>null,"exec")};o(nn,"edit");as={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:o(t=>new RegExp(`^( {0,3}${t})((?:[ ][^\\n]*)?(?:\\n|$))`),"listItemRegex"),nextBulletRegex:o(t=>new RegExp(`^ {0,${Math.min(3,t-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),"nextBulletRegex"),hrRegex:o(t=>new RegExp(`^ {0,${Math.min(3,t-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),"hrRegex"),fencesBeginRegex:o(t=>new RegExp(`^ {0,${Math.min(3,t-1)}}(?:\`\`\`|~~~)`),"fencesBeginRegex"),headingBeginRegex:o(t=>new RegExp(`^ {0,${Math.min(3,t-1)}}#`),"headingBeginRegex"),htmlBeginRegex:o(t=>new RegExp(`^ {0,${Math.min(3,t-1)}}<(?:[a-z].*>|!--)`,"i"),"htmlBeginRegex")},M_e=/^(?:[ \t]*(?:\n|$))+/,I_e=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,O_e=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,E2=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,P_e=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,s9=/(?:[*+-]|\d{1,9}[.)])/,oQ=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,lQ=nn(oQ).replace(/bull/g,s9).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),B_e=nn(oQ).replace(/bull/g,s9).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),o9=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,F_e=/^[^\n]+/,l9=/(?!\s*\])(?:\\.|[^\[\]\\])+/,$_e=nn(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",l9).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),G_e=nn(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,s9).getRegex(),WT="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|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",c9=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,z_e=nn("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",c9).replace("tag",WT).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),cQ=nn(o9).replace("hr",E2).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",WT).getRegex(),V_e=nn(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",cQ).getRegex(),u9={blockquote:V_e,code:I_e,def:$_e,fences:O_e,heading:P_e,hr:E2,html:z_e,lheading:lQ,list:G_e,newline:M_e,paragraph:cQ,table:k2,text:F_e},tQ=nn("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",E2).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",WT).getRegex(),U_e={...u9,lheading:B_e,table:tQ,paragraph:nn(o9).replace("hr",E2).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",tQ).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",WT).getRegex()},H_e={...u9,html:nn(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",c9).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:k2,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:nn(o9).replace("hr",E2).replace("heading",` *#{1,6} *[^
|
||
]`).replace("lheading",lQ).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},W_e=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,q_e=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,uQ=/^( {2,}|\\)\n(?!\s*$)/,Y_e=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,qT=/[\p{P}\p{S}]/u,h9=/[\s\p{P}\p{S}]/u,hQ=/[^\s\p{P}\p{S}]/u,X_e=nn(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,h9).getRegex(),fQ=/(?!~)[\p{P}\p{S}]/u,j_e=/(?!~)[\s\p{P}\p{S}]/u,K_e=/(?:[^\s\p{P}\p{S}]|~)/u,Q_e=/\[[^[\]]*?\]\((?:\\.|[^\\\(\)]|\((?:\\.|[^\\\(\)])*\))*\)|`[^`]*?`|<[^<>]*?>/g,dQ=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,Z_e=nn(dQ,"u").replace(/punct/g,qT).getRegex(),J_e=nn(dQ,"u").replace(/punct/g,fQ).getRegex(),pQ="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",eDe=nn(pQ,"gu").replace(/notPunctSpace/g,hQ).replace(/punctSpace/g,h9).replace(/punct/g,qT).getRegex(),tDe=nn(pQ,"gu").replace(/notPunctSpace/g,K_e).replace(/punctSpace/g,j_e).replace(/punct/g,fQ).getRegex(),rDe=nn("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,hQ).replace(/punctSpace/g,h9).replace(/punct/g,qT).getRegex(),nDe=nn(/\\(punct)/,"gu").replace(/punct/g,qT).getRegex(),iDe=nn(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),aDe=nn(c9).replace("(?:-->|$)","-->").getRegex(),sDe=nn("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",aDe).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),VT=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,oDe=nn(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",VT).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),mQ=nn(/^!?\[(label)\]\[(ref)\]/).replace("label",VT).replace("ref",l9).getRegex(),gQ=nn(/^!?\[(ref)\](?:\[\])?/).replace("ref",l9).getRegex(),lDe=nn("reflink|nolink(?!\\()","g").replace("reflink",mQ).replace("nolink",gQ).getRegex(),f9={_backpedal:k2,anyPunctuation:nDe,autolink:iDe,blockSkip:Q_e,br:uQ,code:q_e,del:k2,emStrongLDelim:Z_e,emStrongRDelimAst:eDe,emStrongRDelimUnd:rDe,escape:W_e,link:oDe,nolink:gQ,punctuation:X_e,reflink:mQ,reflinkSearch:lDe,tag:sDe,text:Y_e,url:k2},cDe={...f9,link:nn(/^!?\[(label)\]\((.*?)\)/).replace("label",VT).getRegex(),reflink:nn(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",VT).getRegex()},r9={...f9,emStrongRDelimAst:tDe,emStrongLDelim:J_e,url:nn(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\.|[^\\])*?(?:\\.|[^\s~\\]))\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/},uDe={...r9,br:nn(uQ).replace("{2,}","*").getRegex(),text:nn(r9.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},GT={normal:u9,gfm:U_e,pedantic:H_e},T2={normal:f9,gfm:r9,breaks:uDe,pedantic:cDe},hDe={"&":"&","<":"<",">":">",'"':""","'":"'"},rQ=o(t=>hDe[t],"getEscapeReplacement");o(xc,"escape2");o(nQ,"cleanUrl");o(iQ,"splitCells");o(w2,"rtrim");o(fDe,"findClosingBracket");o(aQ,"outputLink");o(dDe,"indentCodeCompensation");UT=class{static{o(this,"_Tokenizer")}options;rules;lexer;constructor(t){this.options=t||Wd}space(t){let e=this.rules.block.newline.exec(t);if(e&&e[0].length>0)return{type:"space",raw:e[0]}}code(t){let e=this.rules.block.code.exec(t);if(e){let r=e[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?r:w2(r,`
|
||
`)}}}fences(t){let e=this.rules.block.fences.exec(t);if(e){let r=e[0],n=dDe(r,e[3]||"",this.rules);return{type:"code",raw:r,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:n}}}heading(t){let e=this.rules.block.heading.exec(t);if(e){let r=e[2].trim();if(this.rules.other.endingHash.test(r)){let n=w2(r,"#");(this.options.pedantic||!n||this.rules.other.endingSpaceChar.test(n))&&(r=n.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:r,tokens:this.lexer.inline(r)}}}hr(t){let e=this.rules.block.hr.exec(t);if(e)return{type:"hr",raw:w2(e[0],`
|
||
`)}}blockquote(t){let e=this.rules.block.blockquote.exec(t);if(e){let r=w2(e[0],`
|
||
`).split(`
|
||
`),n="",i="",a=[];for(;r.length>0;){let s=!1,l=[],u;for(u=0;u<r.length;u++)if(this.rules.other.blockquoteStart.test(r[u]))l.push(r[u]),s=!0;else if(!s)l.push(r[u]);else break;r=r.slice(u);let h=l.join(`
|
||
`),f=h.replace(this.rules.other.blockquoteSetextReplace,`
|
||
$1`).replace(this.rules.other.blockquoteSetextReplace2,"");n=n?`${n}
|
||
${h}`:h,i=i?`${i}
|
||
${f}`:f;let d=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(f,a,!0),this.lexer.state.top=d,r.length===0)break;let p=a.at(-1);if(p?.type==="code")break;if(p?.type==="blockquote"){let m=p,g=m.raw+`
|
||
`+r.join(`
|
||
`),y=this.blockquote(g);a[a.length-1]=y,n=n.substring(0,n.length-m.raw.length)+y.raw,i=i.substring(0,i.length-m.text.length)+y.text;break}else if(p?.type==="list"){let m=p,g=m.raw+`
|
||
`+r.join(`
|
||
`),y=this.list(g);a[a.length-1]=y,n=n.substring(0,n.length-p.raw.length)+y.raw,i=i.substring(0,i.length-m.raw.length)+y.raw,r=g.substring(a.at(-1).raw.length).split(`
|
||
`);continue}}return{type:"blockquote",raw:n,tokens:a,text:i}}}list(t){let e=this.rules.block.list.exec(t);if(e){let r=e[1].trim(),n=r.length>1,i={type:"list",raw:"",ordered:n,start:n?+r.slice(0,-1):"",loose:!1,items:[]};r=n?`\\d{1,9}\\${r.slice(-1)}`:`\\${r}`,this.options.pedantic&&(r=n?r:"[*+-]");let a=this.rules.other.listItemRegex(r),s=!1;for(;t;){let u=!1,h="",f="";if(!(e=a.exec(t))||this.rules.block.hr.test(t))break;h=e[0],t=t.substring(h.length);let d=e[2].split(`
|
||
`,1)[0].replace(this.rules.other.listReplaceTabs,v=>" ".repeat(3*v.length)),p=t.split(`
|
||
`,1)[0],m=!d.trim(),g=0;if(this.options.pedantic?(g=2,f=d.trimStart()):m?g=e[1].length+1:(g=e[2].search(this.rules.other.nonSpaceChar),g=g>4?1:g,f=d.slice(g),g+=e[1].length),m&&this.rules.other.blankLine.test(p)&&(h+=p+`
|
||
`,t=t.substring(p.length+1),u=!0),!u){let v=this.rules.other.nextBulletRegex(g),b=this.rules.other.hrRegex(g),T=this.rules.other.fencesBeginRegex(g),S=this.rules.other.headingBeginRegex(g),w=this.rules.other.htmlBeginRegex(g);for(;t;){let E=t.split(`
|
||
`,1)[0],_;if(p=E,this.options.pedantic?(p=p.replace(this.rules.other.listReplaceNesting," "),_=p):_=p.replace(this.rules.other.tabCharGlobal," "),T.test(p)||S.test(p)||w.test(p)||v.test(p)||b.test(p))break;if(_.search(this.rules.other.nonSpaceChar)>=g||!p.trim())f+=`
|
||
`+_.slice(g);else{if(m||d.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||T.test(d)||S.test(d)||b.test(d))break;f+=`
|
||
`+p}!m&&!p.trim()&&(m=!0),h+=E+`
|
||
`,t=t.substring(E.length+1),d=_.slice(g)}}i.loose||(s?i.loose=!0:this.rules.other.doubleBlankLine.test(h)&&(s=!0));let y=null,x;this.options.gfm&&(y=this.rules.other.listIsTask.exec(f),y&&(x=y[0]!=="[ ] ",f=f.replace(this.rules.other.listReplaceTask,""))),i.items.push({type:"list_item",raw:h,task:!!y,checked:x,loose:!1,text:f,tokens:[]}),i.raw+=h}let l=i.items.at(-1);if(l)l.raw=l.raw.trimEnd(),l.text=l.text.trimEnd();else return;i.raw=i.raw.trimEnd();for(let u=0;u<i.items.length;u++)if(this.lexer.state.top=!1,i.items[u].tokens=this.lexer.blockTokens(i.items[u].text,[]),!i.loose){let h=i.items[u].tokens.filter(d=>d.type==="space"),f=h.length>0&&h.some(d=>this.rules.other.anyLine.test(d.raw));i.loose=f}if(i.loose)for(let u=0;u<i.items.length;u++)i.items[u].loose=!0;return i}}html(t){let e=this.rules.block.html.exec(t);if(e)return{type:"html",block:!0,raw:e[0],pre:e[1]==="pre"||e[1]==="script"||e[1]==="style",text:e[0]}}def(t){let e=this.rules.block.def.exec(t);if(e){let r=e[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),n=e[2]?e[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",i=e[3]?e[3].substring(1,e[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):e[3];return{type:"def",tag:r,raw:e[0],href:n,title:i}}}table(t){let e=this.rules.block.table.exec(t);if(!e||!this.rules.other.tableDelimiter.test(e[2]))return;let r=iQ(e[1]),n=e[2].replace(this.rules.other.tableAlignChars,"").split("|"),i=e[3]?.trim()?e[3].replace(this.rules.other.tableRowBlankLine,"").split(`
|
||
`):[],a={type:"table",raw:e[0],header:[],align:[],rows:[]};if(r.length===n.length){for(let s of n)this.rules.other.tableAlignRight.test(s)?a.align.push("right"):this.rules.other.tableAlignCenter.test(s)?a.align.push("center"):this.rules.other.tableAlignLeft.test(s)?a.align.push("left"):a.align.push(null);for(let s=0;s<r.length;s++)a.header.push({text:r[s],tokens:this.lexer.inline(r[s]),header:!0,align:a.align[s]});for(let s of i)a.rows.push(iQ(s,a.header.length).map((l,u)=>({text:l,tokens:this.lexer.inline(l),header:!1,align:a.align[u]})));return a}}lheading(t){let e=this.rules.block.lheading.exec(t);if(e)return{type:"heading",raw:e[0],depth:e[2].charAt(0)==="="?1:2,text:e[1],tokens:this.lexer.inline(e[1])}}paragraph(t){let e=this.rules.block.paragraph.exec(t);if(e){let r=e[1].charAt(e[1].length-1)===`
|
||
`?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:r,tokens:this.lexer.inline(r)}}}text(t){let e=this.rules.block.text.exec(t);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(t){let e=this.rules.inline.escape.exec(t);if(e)return{type:"escape",raw:e[0],text:e[1]}}tag(t){let e=this.rules.inline.tag.exec(t);if(e)return!this.lexer.state.inLink&&this.rules.other.startATag.test(e[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(t){let e=this.rules.inline.link.exec(t);if(e){let r=e[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(r)){if(!this.rules.other.endAngleBracket.test(r))return;let a=w2(r.slice(0,-1),"\\");if((r.length-a.length)%2===0)return}else{let a=fDe(e[2],"()");if(a===-2)return;if(a>-1){let l=(e[0].indexOf("!")===0?5:4)+e[1].length+a;e[2]=e[2].substring(0,a),e[0]=e[0].substring(0,l).trim(),e[3]=""}}let n=e[2],i="";if(this.options.pedantic){let a=this.rules.other.pedanticHrefTitle.exec(n);a&&(n=a[1],i=a[3])}else i=e[3]?e[3].slice(1,-1):"";return n=n.trim(),this.rules.other.startAngleBracket.test(n)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(r)?n=n.slice(1):n=n.slice(1,-1)),aQ(e,{href:n&&n.replace(this.rules.inline.anyPunctuation,"$1"),title:i&&i.replace(this.rules.inline.anyPunctuation,"$1")},e[0],this.lexer,this.rules)}}reflink(t,e){let r;if((r=this.rules.inline.reflink.exec(t))||(r=this.rules.inline.nolink.exec(t))){let n=(r[2]||r[1]).replace(this.rules.other.multipleSpaceGlobal," "),i=e[n.toLowerCase()];if(!i){let a=r[0].charAt(0);return{type:"text",raw:a,text:a}}return aQ(r,i,r[0],this.lexer,this.rules)}}emStrong(t,e,r=""){let n=this.rules.inline.emStrongLDelim.exec(t);if(!n||n[3]&&r.match(this.rules.other.unicodeAlphaNumeric))return;if(!(n[1]||n[2]||"")||!r||this.rules.inline.punctuation.exec(r)){let a=[...n[0]].length-1,s,l,u=a,h=0,f=n[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(f.lastIndex=0,e=e.slice(-1*t.length+a);(n=f.exec(e))!=null;){if(s=n[1]||n[2]||n[3]||n[4]||n[5]||n[6],!s)continue;if(l=[...s].length,n[3]||n[4]){u+=l;continue}else if((n[5]||n[6])&&a%3&&!((a+l)%3)){h+=l;continue}if(u-=l,u>0)continue;l=Math.min(l,l+u+h);let d=[...n[0]][0].length,p=t.slice(0,a+n.index+d+l);if(Math.min(a,l)%2){let g=p.slice(1,-1);return{type:"em",raw:p,text:g,tokens:this.lexer.inlineTokens(g)}}let m=p.slice(2,-2);return{type:"strong",raw:p,text:m,tokens:this.lexer.inlineTokens(m)}}}}codespan(t){let e=this.rules.inline.code.exec(t);if(e){let r=e[2].replace(this.rules.other.newLineCharGlobal," "),n=this.rules.other.nonSpaceChar.test(r),i=this.rules.other.startingSpaceChar.test(r)&&this.rules.other.endingSpaceChar.test(r);return n&&i&&(r=r.substring(1,r.length-1)),{type:"codespan",raw:e[0],text:r}}}br(t){let e=this.rules.inline.br.exec(t);if(e)return{type:"br",raw:e[0]}}del(t){let e=this.rules.inline.del.exec(t);if(e)return{type:"del",raw:e[0],text:e[2],tokens:this.lexer.inlineTokens(e[2])}}autolink(t){let e=this.rules.inline.autolink.exec(t);if(e){let r,n;return e[2]==="@"?(r=e[1],n="mailto:"+r):(r=e[1],n=r),{type:"link",raw:e[0],text:r,href:n,tokens:[{type:"text",raw:r,text:r}]}}}url(t){let e;if(e=this.rules.inline.url.exec(t)){let r,n;if(e[2]==="@")r=e[0],n="mailto:"+r;else{let i;do i=e[0],e[0]=this.rules.inline._backpedal.exec(e[0])?.[0]??"";while(i!==e[0]);r=e[0],e[1]==="www."?n="http://"+e[0]:n=e[0]}return{type:"link",raw:e[0],text:r,href:n,tokens:[{type:"text",raw:r,text:r}]}}}inlineText(t){let e=this.rules.inline.text.exec(t);if(e){let r=this.lexer.state.inRawBlock;return{type:"text",raw:e[0],text:e[0],escaped:r}}}},Ru=class n9{static{o(this,"__Lexer")}tokens;options;state;tokenizer;inlineQueue;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||Wd,this.options.tokenizer=this.options.tokenizer||new UT,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let r={other:as,block:GT.normal,inline:T2.normal};this.options.pedantic?(r.block=GT.pedantic,r.inline=T2.pedantic):this.options.gfm&&(r.block=GT.gfm,this.options.breaks?r.inline=T2.breaks:r.inline=T2.gfm),this.tokenizer.rules=r}static get rules(){return{block:GT,inline:T2}}static lex(e,r){return new n9(r).lex(e)}static lexInline(e,r){return new n9(r).inlineTokens(e)}lex(e){e=e.replace(as.carriageReturn,`
|
||
`),this.blockTokens(e,this.tokens);for(let r=0;r<this.inlineQueue.length;r++){let n=this.inlineQueue[r];this.inlineTokens(n.src,n.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,r=[],n=!1){for(this.options.pedantic&&(e=e.replace(as.tabCharGlobal," ").replace(as.spaceLine,""));e;){let i;if(this.options.extensions?.block?.some(s=>(i=s.call({lexer:this},e,r))?(e=e.substring(i.raw.length),r.push(i),!0):!1))continue;if(i=this.tokenizer.space(e)){e=e.substring(i.raw.length);let s=r.at(-1);i.raw.length===1&&s!==void 0?s.raw+=`
|
||
`:r.push(i);continue}if(i=this.tokenizer.code(e)){e=e.substring(i.raw.length);let s=r.at(-1);s?.type==="paragraph"||s?.type==="text"?(s.raw+=`
|
||
`+i.raw,s.text+=`
|
||
`+i.text,this.inlineQueue.at(-1).src=s.text):r.push(i);continue}if(i=this.tokenizer.fences(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.heading(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.hr(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.blockquote(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.list(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.html(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.def(e)){e=e.substring(i.raw.length);let s=r.at(-1);s?.type==="paragraph"||s?.type==="text"?(s.raw+=`
|
||
`+i.raw,s.text+=`
|
||
`+i.raw,this.inlineQueue.at(-1).src=s.text):this.tokens.links[i.tag]||(this.tokens.links[i.tag]={href:i.href,title:i.title});continue}if(i=this.tokenizer.table(e)){e=e.substring(i.raw.length),r.push(i);continue}if(i=this.tokenizer.lheading(e)){e=e.substring(i.raw.length),r.push(i);continue}let a=e;if(this.options.extensions?.startBlock){let s=1/0,l=e.slice(1),u;this.options.extensions.startBlock.forEach(h=>{u=h.call({lexer:this},l),typeof u=="number"&&u>=0&&(s=Math.min(s,u))}),s<1/0&&s>=0&&(a=e.substring(0,s+1))}if(this.state.top&&(i=this.tokenizer.paragraph(a))){let s=r.at(-1);n&&s?.type==="paragraph"?(s.raw+=`
|
||
`+i.raw,s.text+=`
|
||
`+i.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=s.text):r.push(i),n=a.length!==e.length,e=e.substring(i.raw.length);continue}if(i=this.tokenizer.text(e)){e=e.substring(i.raw.length);let s=r.at(-1);s?.type==="text"?(s.raw+=`
|
||
`+i.raw,s.text+=`
|
||
`+i.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=s.text):r.push(i);continue}if(e){let s="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(s);break}else throw new Error(s)}}return this.state.top=!0,r}inline(e,r=[]){return this.inlineQueue.push({src:e,tokens:r}),r}inlineTokens(e,r=[]){let n=e,i=null;if(this.tokens.links){let l=Object.keys(this.tokens.links);if(l.length>0)for(;(i=this.tokenizer.rules.inline.reflinkSearch.exec(n))!=null;)l.includes(i[0].slice(i[0].lastIndexOf("[")+1,-1))&&(n=n.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+n.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(i=this.tokenizer.rules.inline.anyPunctuation.exec(n))!=null;)n=n.slice(0,i.index)+"++"+n.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;(i=this.tokenizer.rules.inline.blockSkip.exec(n))!=null;)n=n.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+n.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);let a=!1,s="";for(;e;){a||(s=""),a=!1;let l;if(this.options.extensions?.inline?.some(h=>(l=h.call({lexer:this},e,r))?(e=e.substring(l.raw.length),r.push(l),!0):!1))continue;if(l=this.tokenizer.escape(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.tag(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.link(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(l.raw.length);let h=r.at(-1);l.type==="text"&&h?.type==="text"?(h.raw+=l.raw,h.text+=l.text):r.push(l);continue}if(l=this.tokenizer.emStrong(e,n,s)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.codespan(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.br(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.del(e)){e=e.substring(l.raw.length),r.push(l);continue}if(l=this.tokenizer.autolink(e)){e=e.substring(l.raw.length),r.push(l);continue}if(!this.state.inLink&&(l=this.tokenizer.url(e))){e=e.substring(l.raw.length),r.push(l);continue}let u=e;if(this.options.extensions?.startInline){let h=1/0,f=e.slice(1),d;this.options.extensions.startInline.forEach(p=>{d=p.call({lexer:this},f),typeof d=="number"&&d>=0&&(h=Math.min(h,d))}),h<1/0&&h>=0&&(u=e.substring(0,h+1))}if(l=this.tokenizer.inlineText(u)){e=e.substring(l.raw.length),l.raw.slice(-1)!=="_"&&(s=l.raw.slice(-1)),a=!0;let h=r.at(-1);h?.type==="text"?(h.raw+=l.raw,h.text+=l.text):r.push(l);continue}if(e){let h="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(h);break}else throw new Error(h)}}return r}},HT=class{static{o(this,"_Renderer")}options;parser;constructor(t){this.options=t||Wd}space(t){return""}code({text:t,lang:e,escaped:r}){let n=(e||"").match(as.notSpaceStart)?.[0],i=t.replace(as.endingNewline,"")+`
|
||
`;return n?'<pre><code class="language-'+xc(n)+'">'+(r?i:xc(i,!0))+`</code></pre>
|
||
`:"<pre><code>"+(r?i:xc(i,!0))+`</code></pre>
|
||
`}blockquote({tokens:t}){return`<blockquote>
|
||
${this.parser.parse(t)}</blockquote>
|
||
`}html({text:t}){return t}heading({tokens:t,depth:e}){return`<h${e}>${this.parser.parseInline(t)}</h${e}>
|
||
`}hr(t){return`<hr>
|
||
`}list(t){let e=t.ordered,r=t.start,n="";for(let s=0;s<t.items.length;s++){let l=t.items[s];n+=this.listitem(l)}let i=e?"ol":"ul",a=e&&r!==1?' start="'+r+'"':"";return"<"+i+a+`>
|
||
`+n+"</"+i+`>
|
||
`}listitem(t){let e="";if(t.task){let r=this.checkbox({checked:!!t.checked});t.loose?t.tokens[0]?.type==="paragraph"?(t.tokens[0].text=r+" "+t.tokens[0].text,t.tokens[0].tokens&&t.tokens[0].tokens.length>0&&t.tokens[0].tokens[0].type==="text"&&(t.tokens[0].tokens[0].text=r+" "+xc(t.tokens[0].tokens[0].text),t.tokens[0].tokens[0].escaped=!0)):t.tokens.unshift({type:"text",raw:r+" ",text:r+" ",escaped:!0}):e+=r+" "}return e+=this.parser.parse(t.tokens,!!t.loose),`<li>${e}</li>
|
||
`}checkbox({checked:t}){return"<input "+(t?'checked="" ':"")+'disabled="" type="checkbox">'}paragraph({tokens:t}){return`<p>${this.parser.parseInline(t)}</p>
|
||
`}table(t){let e="",r="";for(let i=0;i<t.header.length;i++)r+=this.tablecell(t.header[i]);e+=this.tablerow({text:r});let n="";for(let i=0;i<t.rows.length;i++){let a=t.rows[i];r="";for(let s=0;s<a.length;s++)r+=this.tablecell(a[s]);n+=this.tablerow({text:r})}return n&&(n=`<tbody>${n}</tbody>`),`<table>
|
||
<thead>
|
||
`+e+`</thead>
|
||
`+n+`</table>
|
||
`}tablerow({text:t}){return`<tr>
|
||
${t}</tr>
|
||
`}tablecell(t){let e=this.parser.parseInline(t.tokens),r=t.header?"th":"td";return(t.align?`<${r} align="${t.align}">`:`<${r}>`)+e+`</${r}>
|
||
`}strong({tokens:t}){return`<strong>${this.parser.parseInline(t)}</strong>`}em({tokens:t}){return`<em>${this.parser.parseInline(t)}</em>`}codespan({text:t}){return`<code>${xc(t,!0)}</code>`}br(t){return"<br>"}del({tokens:t}){return`<del>${this.parser.parseInline(t)}</del>`}link({href:t,title:e,tokens:r}){let n=this.parser.parseInline(r),i=nQ(t);if(i===null)return n;t=i;let a='<a href="'+t+'"';return e&&(a+=' title="'+xc(e)+'"'),a+=">"+n+"</a>",a}image({href:t,title:e,text:r,tokens:n}){n&&(r=this.parser.parseInline(n,this.parser.textRenderer));let i=nQ(t);if(i===null)return xc(r);t=i;let a=`<img src="${t}" alt="${r}"`;return e&&(a+=` title="${xc(e)}"`),a+=">",a}text(t){return"tokens"in t&&t.tokens?this.parser.parseInline(t.tokens):"escaped"in t&&t.escaped?t.text:xc(t.text)}},d9=class{static{o(this,"_TextRenderer")}strong({text:t}){return t}em({text:t}){return t}codespan({text:t}){return t}del({text:t}){return t}html({text:t}){return t}text({text:t}){return t}link({text:t}){return""+t}image({text:t}){return""+t}br(){return""}},Nu=class i9{static{o(this,"__Parser")}options;renderer;textRenderer;constructor(e){this.options=e||Wd,this.options.renderer=this.options.renderer||new HT,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new d9}static parse(e,r){return new i9(r).parse(e)}static parseInline(e,r){return new i9(r).parseInline(e)}parse(e,r=!0){let n="";for(let i=0;i<e.length;i++){let a=e[i];if(this.options.extensions?.renderers?.[a.type]){let l=a,u=this.options.extensions.renderers[l.type].call({parser:this},l);if(u!==!1||!["space","hr","heading","code","table","blockquote","list","html","paragraph","text"].includes(l.type)){n+=u||"";continue}}let s=a;switch(s.type){case"space":{n+=this.renderer.space(s);continue}case"hr":{n+=this.renderer.hr(s);continue}case"heading":{n+=this.renderer.heading(s);continue}case"code":{n+=this.renderer.code(s);continue}case"table":{n+=this.renderer.table(s);continue}case"blockquote":{n+=this.renderer.blockquote(s);continue}case"list":{n+=this.renderer.list(s);continue}case"html":{n+=this.renderer.html(s);continue}case"paragraph":{n+=this.renderer.paragraph(s);continue}case"text":{let l=s,u=this.renderer.text(l);for(;i+1<e.length&&e[i+1].type==="text";)l=e[++i],u+=`
|
||
`+this.renderer.text(l);r?n+=this.renderer.paragraph({type:"paragraph",raw:u,text:u,tokens:[{type:"text",raw:u,text:u,escaped:!0}]}):n+=u;continue}default:{let l='Token with "'+s.type+'" type was not found.';if(this.options.silent)return console.error(l),"";throw new Error(l)}}}return n}parseInline(e,r=this.renderer){let n="";for(let i=0;i<e.length;i++){let a=e[i];if(this.options.extensions?.renderers?.[a.type]){let l=this.options.extensions.renderers[a.type].call({parser:this},a);if(l!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(a.type)){n+=l||"";continue}}let s=a;switch(s.type){case"escape":{n+=r.text(s);break}case"html":{n+=r.html(s);break}case"link":{n+=r.link(s);break}case"image":{n+=r.image(s);break}case"strong":{n+=r.strong(s);break}case"em":{n+=r.em(s);break}case"codespan":{n+=r.codespan(s);break}case"br":{n+=r.br(s);break}case"del":{n+=r.del(s);break}case"text":{n+=r.text(s);break}default:{let l='Token with "'+s.type+'" type was not found.';if(this.options.silent)return console.error(l),"";throw new Error(l)}}}return n}},zT=class{static{o(this,"_Hooks")}options;block;constructor(t){this.options=t||Wd}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens"]);preprocess(t){return t}postprocess(t){return t}processAllTokens(t){return t}provideLexer(){return this.block?Ru.lex:Ru.lexInline}provideParser(){return this.block?Nu.parse:Nu.parseInline}},pDe=class{static{o(this,"Marked")}defaults=a9();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=Nu;Renderer=HT;TextRenderer=d9;Lexer=Ru;Tokenizer=UT;Hooks=zT;constructor(...t){this.use(...t)}walkTokens(t,e){let r=[];for(let n of t)switch(r=r.concat(e.call(this,n)),n.type){case"table":{let i=n;for(let a of i.header)r=r.concat(this.walkTokens(a.tokens,e));for(let a of i.rows)for(let s of a)r=r.concat(this.walkTokens(s.tokens,e));break}case"list":{let i=n;r=r.concat(this.walkTokens(i.items,e));break}default:{let i=n;this.defaults.extensions?.childTokens?.[i.type]?this.defaults.extensions.childTokens[i.type].forEach(a=>{let s=i[a].flat(1/0);r=r.concat(this.walkTokens(s,e))}):i.tokens&&(r=r.concat(this.walkTokens(i.tokens,e)))}}return r}use(...t){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return t.forEach(r=>{let n={...r};if(n.async=this.defaults.async||n.async||!1,r.extensions&&(r.extensions.forEach(i=>{if(!i.name)throw new Error("extension name required");if("renderer"in i){let a=e.renderers[i.name];a?e.renderers[i.name]=function(...s){let l=i.renderer.apply(this,s);return l===!1&&(l=a.apply(this,s)),l}:e.renderers[i.name]=i.renderer}if("tokenizer"in i){if(!i.level||i.level!=="block"&&i.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let a=e[i.level];a?a.unshift(i.tokenizer):e[i.level]=[i.tokenizer],i.start&&(i.level==="block"?e.startBlock?e.startBlock.push(i.start):e.startBlock=[i.start]:i.level==="inline"&&(e.startInline?e.startInline.push(i.start):e.startInline=[i.start]))}"childTokens"in i&&i.childTokens&&(e.childTokens[i.name]=i.childTokens)}),n.extensions=e),r.renderer){let i=this.defaults.renderer||new HT(this.defaults);for(let a in r.renderer){if(!(a in i))throw new Error(`renderer '${a}' does not exist`);if(["options","parser"].includes(a))continue;let s=a,l=r.renderer[s],u=i[s];i[s]=(...h)=>{let f=l.apply(i,h);return f===!1&&(f=u.apply(i,h)),f||""}}n.renderer=i}if(r.tokenizer){let i=this.defaults.tokenizer||new UT(this.defaults);for(let a in r.tokenizer){if(!(a in i))throw new Error(`tokenizer '${a}' does not exist`);if(["options","rules","lexer"].includes(a))continue;let s=a,l=r.tokenizer[s],u=i[s];i[s]=(...h)=>{let f=l.apply(i,h);return f===!1&&(f=u.apply(i,h)),f}}n.tokenizer=i}if(r.hooks){let i=this.defaults.hooks||new zT;for(let a in r.hooks){if(!(a in i))throw new Error(`hook '${a}' does not exist`);if(["options","block"].includes(a))continue;let s=a,l=r.hooks[s],u=i[s];zT.passThroughHooks.has(a)?i[s]=h=>{if(this.defaults.async)return Promise.resolve(l.call(i,h)).then(d=>u.call(i,d));let f=l.call(i,h);return u.call(i,f)}:i[s]=(...h)=>{let f=l.apply(i,h);return f===!1&&(f=u.apply(i,h)),f}}n.hooks=i}if(r.walkTokens){let i=this.defaults.walkTokens,a=r.walkTokens;n.walkTokens=function(s){let l=[];return l.push(a.call(this,s)),i&&(l=l.concat(i.call(this,s))),l}}this.defaults={...this.defaults,...n}}),this}setOptions(t){return this.defaults={...this.defaults,...t},this}lexer(t,e){return Ru.lex(t,e??this.defaults)}parser(t,e){return Nu.parse(t,e??this.defaults)}parseMarkdown(t){return o((r,n)=>{let i={...n},a={...this.defaults,...i},s=this.onError(!!a.silent,!!a.async);if(this.defaults.async===!0&&i.async===!1)return s(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof r>"u"||r===null)return s(new Error("marked(): input parameter is undefined or null"));if(typeof r!="string")return s(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(r)+", string expected"));a.hooks&&(a.hooks.options=a,a.hooks.block=t);let l=a.hooks?a.hooks.provideLexer():t?Ru.lex:Ru.lexInline,u=a.hooks?a.hooks.provideParser():t?Nu.parse:Nu.parseInline;if(a.async)return Promise.resolve(a.hooks?a.hooks.preprocess(r):r).then(h=>l(h,a)).then(h=>a.hooks?a.hooks.processAllTokens(h):h).then(h=>a.walkTokens?Promise.all(this.walkTokens(h,a.walkTokens)).then(()=>h):h).then(h=>u(h,a)).then(h=>a.hooks?a.hooks.postprocess(h):h).catch(s);try{a.hooks&&(r=a.hooks.preprocess(r));let h=l(r,a);a.hooks&&(h=a.hooks.processAllTokens(h)),a.walkTokens&&this.walkTokens(h,a.walkTokens);let f=u(h,a);return a.hooks&&(f=a.hooks.postprocess(f)),f}catch(h){return s(h)}},"parse2")}onError(t,e){return r=>{if(r.message+=`
|
||
Please report this to https://github.com/markedjs/marked.`,t){let n="<p>An error occurred:</p><pre>"+xc(r.message+"",!0)+"</pre>";return e?Promise.resolve(n):n}if(e)return Promise.reject(r);throw r}}},Hd=new pDe;o(Jr,"marked");Jr.options=Jr.setOptions=function(t){return Hd.setOptions(t),Jr.defaults=Hd.defaults,sQ(Jr.defaults),Jr};Jr.getDefaults=a9;Jr.defaults=Wd;Jr.use=function(...t){return Hd.use(...t),Jr.defaults=Hd.defaults,sQ(Jr.defaults),Jr};Jr.walkTokens=function(t,e){return Hd.walkTokens(t,e)};Jr.parseInline=Hd.parseInline;Jr.Parser=Nu;Jr.parser=Nu.parse;Jr.Renderer=HT;Jr.TextRenderer=d9;Jr.Lexer=Ru;Jr.lexer=Ru.lex;Jr.Tokenizer=UT;Jr.Hooks=zT;Jr.parse=Jr;RSt=Jr.options,NSt=Jr.setOptions,MSt=Jr.use,ISt=Jr.walkTokens,OSt=Jr.parseInline,PSt=Nu.parse,BSt=Ru.lex});function mDe(t,{markdownAutoWrap:e}){let n=t.replace(/<br\/>/g,`
|
||
`).replace(/\n{2,}/g,`
|
||
`),i=O3(n);return e===!1?i.replace(/ /g," "):i}function vQ(t,e={}){let r=mDe(t,e),n=Jr.lexer(r),i=[[]],a=0;function s(l,u="normal"){l.type==="text"?l.text.split(`
|
||
`).forEach((f,d)=>{d!==0&&(a++,i.push([])),f.split(" ").forEach(p=>{p=p.replace(/'/g,"'"),p&&i[a].push({content:p,type:u})})}):l.type==="strong"||l.type==="em"?l.tokens.forEach(h=>{s(h,l.type)}):l.type==="html"&&i[a].push({content:l.text,type:"normal"})}return o(s,"processNode"),n.forEach(l=>{l.type==="paragraph"?l.tokens?.forEach(u=>{s(u)}):l.type==="html"?i[a].push({content:l.text,type:"normal"}):i[a].push({content:l.raw,type:"normal"})}),i}function xQ(t,{markdownAutoWrap:e}={}){let r=Jr.lexer(t);function n(i){return i.type==="text"?e===!1?i.text.replace(/\n */g,"<br/>").replace(/ /g," "):i.text.replace(/\n */g,"<br/>"):i.type==="strong"?`<strong>${i.tokens?.map(n).join("")}</strong>`:i.type==="em"?`<em>${i.tokens?.map(n).join("")}</em>`:i.type==="paragraph"?`<p>${i.tokens?.map(n).join("")}</p>`:i.type==="space"?"":i.type==="html"?`${i.text}`:i.type==="escape"?i.text:(X.warn(`Unsupported markdown: ${i.type}`),i.raw)}return o(n,"output"),r.map(n).join("")}var bQ=N(()=>{"use strict";yQ();wA();pt();o(mDe,"preprocessMarkdown");o(vQ,"markdownToLines");o(xQ,"markdownToHTML")});function gDe(t){return Intl.Segmenter?[...new Intl.Segmenter().segment(t)].map(e=>e.segment):[...t]}function yDe(t,e){let r=gDe(e.content);return TQ(t,[],r,e.type)}function TQ(t,e,r,n){if(r.length===0)return[{content:e.join(""),type:n},{content:"",type:n}];let[i,...a]=r,s=[...e,i];return t([{content:s.join(""),type:n}])?TQ(t,s,a,n):(e.length===0&&i&&(e.push(i),r.shift()),[{content:e.join(""),type:n},{content:r.join(""),type:n}])}function wQ(t,e){if(t.some(({content:r})=>r.includes(`
|
||
`)))throw new Error("splitLineToFitWidth does not support newlines in the line");return p9(t,e)}function p9(t,e,r=[],n=[]){if(t.length===0)return n.length>0&&r.push(n),r.length>0?r:[];let i="";t[0].content===" "&&(i=" ",t.shift());let a=t.shift()??{content:" ",type:"normal"},s=[...n];if(i!==""&&s.push({content:i,type:"normal"}),s.push(a),e(s))return p9(t,e,r,s);if(n.length>0)r.push(n),t.unshift(a);else if(a.content){let[l,u]=yDe(e,a);r.push([l]),u.content&&t.unshift(u)}return p9(t,e,r)}var kQ=N(()=>{"use strict";o(gDe,"splitTextToChars");o(yDe,"splitWordToFitWidth");o(TQ,"splitWordToFitWidthRecursion");o(wQ,"splitLineToFitWidth");o(p9,"splitLineToFitWidthRecursion")});function EQ(t,e){e&&t.attr("style",e)}async function vDe(t,e,r,n,i=!1,a=Qt()){let s=t.append("foreignObject");s.attr("width",`${10*r}px`),s.attr("height",`${10*r}px`);let l=s.append("xhtml:div"),u=xn(e.label)?await bh(e.label.replace(Je.lineBreakRegex,`
|
||
`),a):ar(e.label,a),h=e.isNode?"nodeLabel":"edgeLabel",f=l.append("span");f.html(u),EQ(f,e.labelStyle),f.attr("class",`${h} ${n}`),EQ(l,e.labelStyle),l.style("display","table-cell"),l.style("white-space","nowrap"),l.style("line-height","1.5"),l.style("max-width",r+"px"),l.style("text-align","center"),l.attr("xmlns","http://www.w3.org/1999/xhtml"),i&&l.attr("class","labelBkg");let d=l.node().getBoundingClientRect();return d.width===r&&(l.style("display","table"),l.style("white-space","break-spaces"),l.style("width",r+"px"),d=l.node().getBoundingClientRect()),s.node()}function m9(t,e,r){return t.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",e*r-.1+"em").attr("dy",r+"em")}function xDe(t,e,r){let n=t.append("text"),i=m9(n,1,e);g9(i,r);let a=i.node().getComputedTextLength();return n.remove(),a}function SQ(t,e,r){let n=t.append("text"),i=m9(n,1,e);g9(i,[{content:r,type:"normal"}]);let a=i.node()?.getBoundingClientRect();return a&&n.remove(),a}function bDe(t,e,r,n=!1){let a=e.append("g"),s=a.insert("rect").attr("class","background").attr("style","stroke: none"),l=a.append("text").attr("y","-10.1"),u=0;for(let h of r){let f=o(p=>xDe(a,1.1,p)<=t,"checkWidth"),d=f(h)?[h]:wQ(h,f);for(let p of d){let m=m9(l,u,1.1);g9(m,p),u++}}if(n){let h=l.node().getBBox(),f=2;return s.attr("x",h.x-f).attr("y",h.y-f).attr("width",h.width+2*f).attr("height",h.height+2*f),a.node()}else return l.node()}function g9(t,e){t.text(""),e.forEach((r,n)=>{let i=t.append("tspan").attr("font-style",r.type==="em"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",r.type==="strong"?"bold":"normal");n===0?i.text(r.content):i.text(" "+r.content)})}async function y9(t,e={}){let r=[];t.replace(/(fa[bklrs]?):fa-([\w-]+)/g,(i,a,s)=>(r.push((async()=>{let l=`${a}:${s}`;return await MV(l)?await As(l,void 0,{class:"label-icon"}):`<i class='${ar(i,e).replace(":"," ")}'></i>`})()),i));let n=await Promise.all(r);return t.replace(/(fa[bklrs]?):fa-([\w-]+)/g,()=>n.shift()??"")}var pi,$o=N(()=>{"use strict";pr();dr();pt();bQ();tr();rc();kQ();Wn();o(EQ,"applyStyle");o(vDe,"addHtmlSpan");o(m9,"createTspan");o(xDe,"computeWidthOfText");o(SQ,"computeDimensionOfText");o(bDe,"createFormattedText");o(g9,"updateTextContentAndStyles");o(y9,"replaceIconSubstring");pi=o(async(t,e="",{style:r="",isTitle:n=!1,classes:i="",useHtmlLabels:a=!0,isNode:s=!0,width:l=200,addSvgBackground:u=!1}={},h)=>{if(X.debug("XYZ createText",e,r,n,i,a,s,"addSvgBackground: ",u),a){let f=xQ(e,h),d=await y9(ea(f),h),p=e.replace(/\\\\/g,"\\"),m={isNode:s,label:xn(e)?p:d,labelStyle:r.replace("fill:","color:")};return await vDe(t,m,l,i,u,h)}else{let f=e.replace(/<br\s*\/?>/g,"<br/>"),d=vQ(f.replace("<br>","<br/>"),h),p=bDe(l,t,d,e?u:!1);if(s){/stroke:/.exec(r)&&(r=r.replace("stroke:","lineColor:"));let m=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");ze(p).attr("style",m)}else{let m=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/background:/g,"fill:");ze(p).select("rect").attr("style",m.replace(/background:/g,"fill:"));let g=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");ze(p).select("text").attr("style",g)}return p}},"createText")});function zt(t){let e=t.map((r,n)=>`${n===0?"M":"L"}${r.x},${r.y}`);return e.push("Z"),e.join(" ")}function Go(t,e,r,n,i,a){let s=[],u=r-t,h=n-e,f=u/a,d=2*Math.PI/f,p=e+h/2;for(let m=0;m<=50;m++){let g=m/50,y=t+g*u,x=p+i*Math.sin(d*(y-t));s.push({x:y,y:x})}return s}function qd(t,e,r,n,i,a){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;d<n;d++){let p=l+d*f,m=t+r*Math.cos(p),g=e+r*Math.sin(p);s.push({x:-m,y:-g})}return s}var lt,YT,Xe,rt,Nt=N(()=>{"use strict";$o();Xt();pr();_a();dr();tr();lt=o(async(t,e,r)=>{let n,i=e.useHtmlLabels||mr(ge()?.htmlLabels);r?n=r:n="node default";let a=t.insert("g").attr("class",n).attr("id",e.domId||e.id),s=a.insert("g").attr("class","label").attr("style",wn(e.labelStyle)),l;e.label===void 0?l="":l=typeof e.label=="string"?e.label:e.label[0];let u=await pi(s,ar(ea(l),ge()),{useHtmlLabels:i,width:e.width||ge().flowchart?.wrappingWidth,cssClasses:"markdown-node-label",style:e.labelStyle,addSvgBackground:!!e.icon||!!e.img}),h=u.getBBox(),f=(e?.padding??0)/2;if(i){let d=u.children[0],p=ze(u),m=d.getElementsByTagName("img");if(m){let g=l.replace(/<img[^>]*>/g,"").trim()==="";await Promise.all([...m].map(y=>new Promise(x=>{function v(){if(y.style.display="flex",y.style.flexDirection="column",g){let b=ge().fontSize?ge().fontSize:window.getComputedStyle(document.body).fontSize,T=5,[S=lr.fontSize]=yc(b),w=S*T+"px";y.style.minWidth=w,y.style.maxWidth=w}else y.style.width="100%";x(y)}o(v,"setupImage"),setTimeout(()=>{y.complete&&v()}),y.addEventListener("error",v),y.addEventListener("load",v)})))}h=d.getBoundingClientRect(),p.attr("width",h.width),p.attr("height",h.height)}return i?s.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"):s.attr("transform","translate(0, "+-h.height/2+")"),e.centerLabel&&s.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"),s.insert("rect",":first-child"),{shapeSvg:a,bbox:h,halfPadding:f,label:s}},"labelHelper"),YT=o(async(t,e,r)=>{let n=r.useHtmlLabels||mr(ge()?.flowchart?.htmlLabels),i=t.insert("g").attr("class","label").attr("style",r.labelStyle||""),a=await pi(i,ar(ea(e),ge()),{useHtmlLabels:n,width:r.width||ge()?.flowchart?.wrappingWidth,style:r.labelStyle,addSvgBackground:!!r.icon||!!r.img}),s=a.getBBox(),l=r.padding/2;if(mr(ge()?.flowchart?.htmlLabels)){let u=a.children[0],h=ze(a);s=u.getBoundingClientRect(),h.attr("width",s.width),h.attr("height",s.height)}return n?i.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"):i.attr("transform","translate(0, "+-s.height/2+")"),r.centerLabel&&i.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"),i.insert("rect",":first-child"),{shapeSvg:t,bbox:s,halfPadding:l,label:i}},"insertLabel"),Xe=o((t,e)=>{let r=e.node().getBBox();t.width=r.width,t.height=r.height},"updateNodeBounds"),rt=o((t,e)=>(t.look==="handDrawn"?"rough-node":"node")+" "+t.cssClasses+" "+(e||""),"getNodeClasses");o(zt,"createPathFromPoints");o(Go,"generateFullSineWavePoints");o(qd,"generateCirclePoints")});function TDe(t,e){return t.intersect(e)}var CQ,AQ=N(()=>{"use strict";o(TDe,"intersectNode");CQ=TDe});function wDe(t,e,r,n){var i=t.x,a=t.y,s=i-n.x,l=a-n.y,u=Math.sqrt(e*e*l*l+r*r*s*s),h=Math.abs(e*r*s/u);n.x<i&&(h=-h);var f=Math.abs(e*r*l/u);return n.y<a&&(f=-f),{x:i+h,y:a+f}}var XT,v9=N(()=>{"use strict";o(wDe,"intersectEllipse");XT=wDe});function kDe(t,e,r){return XT(t,e,e,r)}var _Q,DQ=N(()=>{"use strict";v9();o(kDe,"intersectCircle");_Q=kDe});function EDe(t,e,r,n){{let i=e.y-t.y,a=t.x-e.x,s=e.x*t.y-t.x*e.y,l=i*r.x+a*r.y+s,u=i*n.x+a*n.y+s,h=1e-6;if(l!==0&&u!==0&&LQ(l,u))return;let f=n.y-r.y,d=r.x-n.x,p=n.x*r.y-r.x*n.y,m=f*t.x+d*t.y+p,g=f*e.x+d*e.y+p;if(Math.abs(m)<h&&Math.abs(g)<h&&LQ(m,g))return;let y=i*d-f*a;if(y===0)return;let x=Math.abs(y/2),v=a*p-d*s,b=v<0?(v-x)/y:(v+x)/y;v=f*s-i*p;let T=v<0?(v-x)/y:(v+x)/y;return{x:b,y:T}}}function LQ(t,e){return t*e>0}var RQ,NQ=N(()=>{"use strict";o(EDe,"intersectLine");o(LQ,"sameSign");RQ=EDe});function SDe(t,e,r){let n=t.x,i=t.y,a=[],s=Number.POSITIVE_INFINITY,l=Number.POSITIVE_INFINITY;typeof e.forEach=="function"?e.forEach(function(f){s=Math.min(s,f.x),l=Math.min(l,f.y)}):(s=Math.min(s,e.x),l=Math.min(l,e.y));let u=n-t.width/2-s,h=i-t.height/2-l;for(let f=0;f<e.length;f++){let d=e[f],p=e[f<e.length-1?f+1:0],m=RQ(t,r,{x:u+d.x,y:h+d.y},{x:u+p.x,y:h+p.y});m&&a.push(m)}return a.length?(a.length>1&&a.sort(function(f,d){let p=f.x-r.x,m=f.y-r.y,g=Math.sqrt(p*p+m*m),y=d.x-r.x,x=d.y-r.y,v=Math.sqrt(y*y+x*x);return g<v?-1:g===v?0:1}),a[0]):t}var MQ,IQ=N(()=>{"use strict";NQ();o(SDe,"intersectPolygon");MQ=SDe});var CDe,jh,x9=N(()=>{"use strict";CDe=o((t,e)=>{var r=t.x,n=t.y,i=e.x-r,a=e.y-n,s=t.width/2,l=t.height/2,u,h;return Math.abs(a)*s>Math.abs(i)*l?(a<0&&(l=-l),u=a===0?0:l*i/a,h=l):(i<0&&(s=-s),u=s,h=i===0?0:s*a/i),{x:r+u,y:n+h}},"intersectRect"),jh=CDe});var He,Vt=N(()=>{"use strict";AQ();DQ();v9();IQ();x9();He={node:CQ,circle:_Q,ellipse:XT,polygon:MQ,rect:jh}});var OQ,bc,ADe,S2,We,Ke,_De,Ft=N(()=>{"use strict";Xt();OQ=o(t=>{let{handDrawnSeed:e}=ge();return{fill:t,hachureAngle:120,hachureGap:4,fillWeight:2,roughness:.7,stroke:t,seed:e}},"solidStateFill"),bc=o(t=>{let e=ADe([...t.cssCompiledStyles||[],...t.cssStyles||[]]);return{stylesMap:e,stylesArray:[...e]}},"compileStyles"),ADe=o(t=>{let e=new Map;return t.forEach(r=>{let[n,i]=r.split(":");e.set(n.trim(),i?.trim())}),e},"styles2Map"),S2=o(t=>t==="color"||t==="font-size"||t==="font-family"||t==="font-weight"||t==="font-style"||t==="text-decoration"||t==="text-align"||t==="text-transform"||t==="line-height"||t==="letter-spacing"||t==="word-spacing"||t==="text-shadow"||t==="text-overflow"||t==="white-space"||t==="word-wrap"||t==="word-break"||t==="overflow-wrap"||t==="hyphens","isLabelStyle"),We=o(t=>{let{stylesArray:e}=bc(t),r=[],n=[],i=[],a=[];return e.forEach(s=>{let l=s[0];S2(l)?r.push(s.join(":")+" !important"):(n.push(s.join(":")+" !important"),l.includes("stroke")&&i.push(s.join(":")+" !important"),l==="fill"&&a.push(s.join(":")+" !important"))}),{labelStyles:r.join(";"),nodeStyles:n.join(";"),stylesArray:e,borderStyles:i,backgroundStyles:a}},"styles2String"),Ke=o((t,e)=>{let{themeVariables:r,handDrawnSeed:n}=ge(),{nodeBorder:i,mainBkg:a}=r,{stylesMap:s}=bc(t);return Object.assign({roughness:.7,fill:s.get("fill")||a,fillStyle:"hachure",fillWeight:4,hachureGap:5.2,stroke:s.get("stroke")||i,seed:n,strokeWidth:s.get("stroke-width")?.replace("px","")||1.3,fillLineDash:[0,0],strokeLineDash:_De(s.get("stroke-dasharray"))},e)},"userNodeOverrides"),_De=o(t=>{if(!t)return[0,0];let e=t.trim().split(/\s+/).map(Number);if(e.length===1){let i=isNaN(e[0])?0:e[0];return[i,i]}let r=isNaN(e[0])?0:e[0],n=isNaN(e[1])?0:e[1];return[r,n]},"getStrokeDashArray")});function b9(t,e,r){if(t&&t.length){let[n,i]=e,a=Math.PI/180*r,s=Math.cos(a),l=Math.sin(a);for(let u of t){let[h,f]=u;u[0]=(h-n)*s-(f-i)*l+n,u[1]=(h-n)*l+(f-i)*s+i}}}function DDe(t,e){return t[0]===e[0]&&t[1]===e[1]}function LDe(t,e,r,n=1){let i=r,a=Math.max(e,.1),s=t[0]&&t[0][0]&&typeof t[0][0]=="number"?[t]:t,l=[0,0];if(i)for(let h of s)b9(h,l,i);let u=function(h,f,d){let p=[];for(let b of h){let T=[...b];DDe(T[0],T[T.length-1])||T.push([T[0][0],T[0][1]]),T.length>2&&p.push(T)}let m=[];f=Math.max(f,.1);let g=[];for(let b of p)for(let T=0;T<b.length-1;T++){let S=b[T],w=b[T+1];if(S[1]!==w[1]){let E=Math.min(S[1],w[1]);g.push({ymin:E,ymax:Math.max(S[1],w[1]),x:E===S[1]?S[0]:w[0],islope:(w[0]-S[0])/(w[1]-S[1])})}}if(g.sort((b,T)=>b.ymin<T.ymin?-1:b.ymin>T.ymin?1:b.x<T.x?-1:b.x>T.x?1:b.ymax===T.ymax?0:(b.ymax-T.ymax)/Math.abs(b.ymax-T.ymax)),!g.length)return m;let y=[],x=g[0].ymin,v=0;for(;y.length||g.length;){if(g.length){let b=-1;for(let T=0;T<g.length&&!(g[T].ymin>x);T++)b=T;g.splice(0,b+1).forEach(T=>{y.push({s:x,edge:T})})}if(y=y.filter(b=>!(b.edge.ymax<=x)),y.sort((b,T)=>b.edge.x===T.edge.x?0:(b.edge.x-T.edge.x)/Math.abs(b.edge.x-T.edge.x)),(d!==1||v%f==0)&&y.length>1)for(let b=0;b<y.length;b+=2){let T=b+1;if(T>=y.length)break;let S=y[b].edge,w=y[T].edge;m.push([[Math.round(S.x),x],[Math.round(w.x),x]])}x+=d,y.forEach(b=>{b.edge.x=b.edge.x+d*b.edge.islope}),v++}return m}(s,a,n);if(i){for(let h of s)b9(h,l,-i);(function(h,f,d){let p=[];h.forEach(m=>p.push(...m)),b9(p,f,d)})(u,l,-i)}return u}function D2(t,e){var r;let n=e.hachureAngle+90,i=e.hachureGap;i<0&&(i=4*e.strokeWidth),i=Math.round(Math.max(i,.1));let a=1;return e.roughness>=1&&(((r=e.randomizer)===null||r===void 0?void 0:r.next())||Math.random())>.7&&(a=i),LDe(t,i,n,a||1)}function nw(t){let e=t[0],r=t[1];return Math.sqrt(Math.pow(e[0]-r[0],2)+Math.pow(e[1]-r[1],2))}function w9(t,e){return t.type===e}function P9(t){let e=[],r=function(s){let l=new Array;for(;s!=="";)if(s.match(/^([ \t\r\n,]+)/))s=s.substr(RegExp.$1.length);else if(s.match(/^([aAcChHlLmMqQsStTvVzZ])/))l[l.length]={type:RDe,text:RegExp.$1},s=s.substr(RegExp.$1.length);else{if(!s.match(/^(([-+]?[0-9]+(\.[0-9]*)?|[-+]?\.[0-9]+)([eE][-+]?[0-9]+)?)/))return[];l[l.length]={type:T9,text:`${parseFloat(RegExp.$1)}`},s=s.substr(RegExp.$1.length)}return l[l.length]={type:PQ,text:""},l}(t),n="BOD",i=0,a=r[i];for(;!w9(a,PQ);){let s=0,l=[];if(n==="BOD"){if(a.text!=="M"&&a.text!=="m")return P9("M0,0"+t);i++,s=jT[a.text],n=a.text}else w9(a,T9)?s=jT[n]:(i++,s=jT[a.text],n=a.text);if(!(i+s<r.length))throw new Error("Path data ended short");for(let u=i;u<i+s;u++){let h=r[u];if(!w9(h,T9))throw new Error("Param not a number: "+n+","+h.text);l[l.length]=+h.text}if(typeof jT[n]!="number")throw new Error("Bad segment: "+n);{let u={key:n,data:l};e.push(u),i+=s,a=r[i],n==="M"&&(n="L"),n==="m"&&(n="l")}}return e}function HQ(t){let e=0,r=0,n=0,i=0,a=[];for(let{key:s,data:l}of t)switch(s){case"M":a.push({key:"M",data:[...l]}),[e,r]=l,[n,i]=l;break;case"m":e+=l[0],r+=l[1],a.push({key:"M",data:[e,r]}),n=e,i=r;break;case"L":a.push({key:"L",data:[...l]}),[e,r]=l;break;case"l":e+=l[0],r+=l[1],a.push({key:"L",data:[e,r]});break;case"C":a.push({key:"C",data:[...l]}),e=l[4],r=l[5];break;case"c":{let u=l.map((h,f)=>f%2?h+r:h+e);a.push({key:"C",data:u}),e=u[4],r=u[5];break}case"Q":a.push({key:"Q",data:[...l]}),e=l[2],r=l[3];break;case"q":{let u=l.map((h,f)=>f%2?h+r:h+e);a.push({key:"Q",data:u}),e=u[2],r=u[3];break}case"A":a.push({key:"A",data:[...l]}),e=l[5],r=l[6];break;case"a":e+=l[5],r+=l[6],a.push({key:"A",data:[l[0],l[1],l[2],l[3],l[4],e,r]});break;case"H":a.push({key:"H",data:[...l]}),e=l[0];break;case"h":e+=l[0],a.push({key:"H",data:[e]});break;case"V":a.push({key:"V",data:[...l]}),r=l[0];break;case"v":r+=l[0],a.push({key:"V",data:[r]});break;case"S":a.push({key:"S",data:[...l]}),e=l[2],r=l[3];break;case"s":{let u=l.map((h,f)=>f%2?h+r:h+e);a.push({key:"S",data:u}),e=u[2],r=u[3];break}case"T":a.push({key:"T",data:[...l]}),e=l[0],r=l[1];break;case"t":e+=l[0],r+=l[1],a.push({key:"T",data:[e,r]});break;case"Z":case"z":a.push({key:"Z",data:[]}),e=n,r=i}return a}function WQ(t){let e=[],r="",n=0,i=0,a=0,s=0,l=0,u=0;for(let{key:h,data:f}of t){switch(h){case"M":e.push({key:"M",data:[...f]}),[n,i]=f,[a,s]=f;break;case"C":e.push({key:"C",data:[...f]}),n=f[4],i=f[5],l=f[2],u=f[3];break;case"L":e.push({key:"L",data:[...f]}),[n,i]=f;break;case"H":n=f[0],e.push({key:"L",data:[n,i]});break;case"V":i=f[0],e.push({key:"L",data:[n,i]});break;case"S":{let d=0,p=0;r==="C"||r==="S"?(d=n+(n-l),p=i+(i-u)):(d=n,p=i),e.push({key:"C",data:[d,p,...f]}),l=f[0],u=f[1],n=f[2],i=f[3];break}case"T":{let[d,p]=f,m=0,g=0;r==="Q"||r==="T"?(m=n+(n-l),g=i+(i-u)):(m=n,g=i);let y=n+2*(m-n)/3,x=i+2*(g-i)/3,v=d+2*(m-d)/3,b=p+2*(g-p)/3;e.push({key:"C",data:[y,x,v,b,d,p]}),l=m,u=g,n=d,i=p;break}case"Q":{let[d,p,m,g]=f,y=n+2*(d-n)/3,x=i+2*(p-i)/3,v=m+2*(d-m)/3,b=g+2*(p-g)/3;e.push({key:"C",data:[y,x,v,b,m,g]}),l=d,u=p,n=m,i=g;break}case"A":{let d=Math.abs(f[0]),p=Math.abs(f[1]),m=f[2],g=f[3],y=f[4],x=f[5],v=f[6];d===0||p===0?(e.push({key:"C",data:[n,i,x,v,x,v]}),n=x,i=v):(n!==x||i!==v)&&(qQ(n,i,x,v,d,p,m,g,y).forEach(function(b){e.push({key:"C",data:b})}),n=x,i=v);break}case"Z":e.push({key:"Z",data:[]}),n=a,i=s}r=h}return e}function C2(t,e,r){return[t*Math.cos(r)-e*Math.sin(r),t*Math.sin(r)+e*Math.cos(r)]}function qQ(t,e,r,n,i,a,s,l,u,h){let f=(d=s,Math.PI*d/180);var d;let p=[],m=0,g=0,y=0,x=0;if(h)[m,g,y,x]=h;else{[t,e]=C2(t,e,-f),[r,n]=C2(r,n,-f);let L=(t-r)/2,C=(e-n)/2,I=L*L/(i*i)+C*C/(a*a);I>1&&(I=Math.sqrt(I),i*=I,a*=I);let M=i*i,P=a*a,B=M*P-M*C*C-P*L*L,F=M*C*C+P*L*L,G=(l===u?-1:1)*Math.sqrt(Math.abs(B/F));y=G*i*C/a+(t+r)/2,x=G*-a*L/i+(e+n)/2,m=Math.asin(parseFloat(((e-x)/a).toFixed(9))),g=Math.asin(parseFloat(((n-x)/a).toFixed(9))),t<y&&(m=Math.PI-m),r<y&&(g=Math.PI-g),m<0&&(m=2*Math.PI+m),g<0&&(g=2*Math.PI+g),u&&m>g&&(m-=2*Math.PI),!u&&g>m&&(g-=2*Math.PI)}let v=g-m;if(Math.abs(v)>120*Math.PI/180){let L=g,C=r,I=n;g=u&&g>m?m+120*Math.PI/180*1:m+120*Math.PI/180*-1,p=qQ(r=y+i*Math.cos(g),n=x+a*Math.sin(g),C,I,i,a,s,0,u,[g,L,y,x])}v=g-m;let b=Math.cos(m),T=Math.sin(m),S=Math.cos(g),w=Math.sin(g),E=Math.tan(v/4),_=4/3*i*E,A=4/3*a*E,D=[t,e],O=[t+_*T,e-A*b],R=[r+_*w,n-A*S],k=[r,n];if(O[0]=2*D[0]-O[0],O[1]=2*D[1]-O[1],h)return[O,R,k].concat(p);{p=[O,R,k].concat(p);let L=[];for(let C=0;C<p.length;C+=3){let I=C2(p[C][0],p[C][1],f),M=C2(p[C+1][0],p[C+1][1],f),P=C2(p[C+2][0],p[C+2][1],f);L.push([I[0],I[1],M[0],M[1],P[0],P[1]])}return L}}function YQ(t,e,r,n,i){return{type:"path",ops:Kh(t,e,r,n,i)}}function ZT(t,e,r){let n=(t||[]).length;if(n>2){let i=[];for(let a=0;a<n-1;a++)i.push(...Kh(t[a][0],t[a][1],t[a+1][0],t[a+1][1],r));return e&&i.push(...Kh(t[n-1][0],t[n-1][1],t[0][0],t[0][1],r)),{type:"path",ops:i}}return n===2?YQ(t[0][0],t[0][1],t[1][0],t[1][1],r):{type:"path",ops:[]}}function MDe(t,e,r,n,i){return function(a,s){return ZT(a,!0,s)}([[t,e],[t+r,e],[t+r,e+n],[t,e+n]],i)}function BQ(t,e){if(t.length){let r=typeof t[0][0]=="number"?[t]:t,n=KT(r[0],1*(1+.2*e.roughness),e),i=e.disableMultiStroke?[]:KT(r[0],1.5*(1+.22*e.roughness),GQ(e));for(let a=1;a<r.length;a++){let s=r[a];if(s.length){let l=KT(s,1*(1+.2*e.roughness),e),u=e.disableMultiStroke?[]:KT(s,1.5*(1+.22*e.roughness),GQ(e));for(let h of l)h.op!=="move"&&n.push(h);for(let h of u)h.op!=="move"&&i.push(h)}}return{type:"path",ops:n.concat(i)}}return{type:"path",ops:[]}}function XQ(t,e,r){let n=Math.sqrt(2*Math.PI*Math.sqrt((Math.pow(t/2,2)+Math.pow(e/2,2))/2)),i=Math.ceil(Math.max(r.curveStepCount,r.curveStepCount/Math.sqrt(200)*n)),a=2*Math.PI/i,s=Math.abs(t/2),l=Math.abs(e/2),u=1-r.curveFitting;return s+=sr(s*u,r),l+=sr(l*u,r),{increment:a,rx:s,ry:l}}function R9(t,e,r,n){let[i,a]=zQ(n.increment,t,e,n.rx,n.ry,1,n.increment*ew(.1,ew(.4,1,r),r),r),s=tw(i,null,r);if(!r.disableMultiStroke&&r.roughness!==0){let[l]=zQ(n.increment,t,e,n.rx,n.ry,1.5,0,r),u=tw(l,null,r);s=s.concat(u)}return{estimatedPoints:a,opset:{type:"path",ops:s}}}function FQ(t,e,r,n,i,a,s,l,u){let h=t,f=e,d=Math.abs(r/2),p=Math.abs(n/2);d+=sr(.01*d,u),p+=sr(.01*p,u);let m=i,g=a;for(;m<0;)m+=2*Math.PI,g+=2*Math.PI;g-m>2*Math.PI&&(m=0,g=2*Math.PI);let y=2*Math.PI/u.curveStepCount,x=Math.min(y/2,(g-m)/2),v=VQ(x,h,f,d,p,m,g,1,u);if(!u.disableMultiStroke){let b=VQ(x,h,f,d,p,m,g,1.5,u);v.push(...b)}return s&&(l?v.push(...Kh(h,f,h+d*Math.cos(m),f+p*Math.sin(m),u),...Kh(h,f,h+d*Math.cos(g),f+p*Math.sin(g),u)):v.push({op:"lineTo",data:[h,f]},{op:"lineTo",data:[h+d*Math.cos(m),f+p*Math.sin(m)]})),{type:"path",ops:v}}function $Q(t,e){let r=WQ(HQ(P9(t))),n=[],i=[0,0],a=[0,0];for(let{key:s,data:l}of r)switch(s){case"M":a=[l[0],l[1]],i=[l[0],l[1]];break;case"L":n.push(...Kh(a[0],a[1],l[0],l[1],e)),a=[l[0],l[1]];break;case"C":{let[u,h,f,d,p,m]=l;n.push(...IDe(u,h,f,d,p,m,a,e)),a=[p,m];break}case"Z":n.push(...Kh(a[0],a[1],i[0],i[1],e)),a=[i[0],i[1]]}return{type:"path",ops:n}}function k9(t,e){let r=[];for(let n of t)if(n.length){let i=e.maxRandomnessOffset||0,a=n.length;if(a>2){r.push({op:"move",data:[n[0][0]+sr(i,e),n[0][1]+sr(i,e)]});for(let s=1;s<a;s++)r.push({op:"lineTo",data:[n[s][0]+sr(i,e),n[s][1]+sr(i,e)]})}}return{type:"fillPath",ops:r}}function xm(t,e){return function(r,n){let i=r.fillStyle||"hachure";if(!Os[i])switch(i){case"zigzag":Os[i]||(Os[i]=new S9(n));break;case"cross-hatch":Os[i]||(Os[i]=new C9(n));break;case"dots":Os[i]||(Os[i]=new A9(n));break;case"dashed":Os[i]||(Os[i]=new _9(n));break;case"zigzag-line":Os[i]||(Os[i]=new D9(n));break;default:i="hachure",Os[i]||(Os[i]=new _2(n))}return Os[i]}(e,NDe).fillPolygons(t,e)}function GQ(t){let e=Object.assign({},t);return e.randomizer=void 0,t.seed&&(e.seed=t.seed+1),e}function jQ(t){return t.randomizer||(t.randomizer=new L9(t.seed||0)),t.randomizer.next()}function ew(t,e,r,n=1){return r.roughness*n*(jQ(r)*(e-t)+t)}function sr(t,e,r=1){return ew(-t,t,e,r)}function Kh(t,e,r,n,i,a=!1){let s=a?i.disableMultiStrokeFill:i.disableMultiStroke,l=N9(t,e,r,n,i,!0,!1);if(s)return l;let u=N9(t,e,r,n,i,!0,!0);return l.concat(u)}function N9(t,e,r,n,i,a,s){let l=Math.pow(t-r,2)+Math.pow(e-n,2),u=Math.sqrt(l),h=1;h=u<200?1:u>500?.4:-.0016668*u+1.233334;let f=i.maxRandomnessOffset||0;f*f*100>l&&(f=u/10);let d=f/2,p=.2+.2*jQ(i),m=i.bowing*i.maxRandomnessOffset*(n-e)/200,g=i.bowing*i.maxRandomnessOffset*(t-r)/200;m=sr(m,i,h),g=sr(g,i,h);let y=[],x=o(()=>sr(d,i,h),"M"),v=o(()=>sr(f,i,h),"k"),b=i.preserveVertices;return a&&(s?y.push({op:"move",data:[t+(b?0:x()),e+(b?0:x())]}):y.push({op:"move",data:[t+(b?0:sr(f,i,h)),e+(b?0:sr(f,i,h))]})),s?y.push({op:"bcurveTo",data:[m+t+(r-t)*p+x(),g+e+(n-e)*p+x(),m+t+2*(r-t)*p+x(),g+e+2*(n-e)*p+x(),r+(b?0:x()),n+(b?0:x())]}):y.push({op:"bcurveTo",data:[m+t+(r-t)*p+v(),g+e+(n-e)*p+v(),m+t+2*(r-t)*p+v(),g+e+2*(n-e)*p+v(),r+(b?0:v()),n+(b?0:v())]}),y}function KT(t,e,r){if(!t.length)return[];let n=[];n.push([t[0][0]+sr(e,r),t[0][1]+sr(e,r)]),n.push([t[0][0]+sr(e,r),t[0][1]+sr(e,r)]);for(let i=1;i<t.length;i++)n.push([t[i][0]+sr(e,r),t[i][1]+sr(e,r)]),i===t.length-1&&n.push([t[i][0]+sr(e,r),t[i][1]+sr(e,r)]);return tw(n,null,r)}function tw(t,e,r){let n=t.length,i=[];if(n>3){let a=[],s=1-r.curveTightness;i.push({op:"move",data:[t[1][0],t[1][1]]});for(let l=1;l+2<n;l++){let u=t[l];a[0]=[u[0],u[1]],a[1]=[u[0]+(s*t[l+1][0]-s*t[l-1][0])/6,u[1]+(s*t[l+1][1]-s*t[l-1][1])/6],a[2]=[t[l+1][0]+(s*t[l][0]-s*t[l+2][0])/6,t[l+1][1]+(s*t[l][1]-s*t[l+2][1])/6],a[3]=[t[l+1][0],t[l+1][1]],i.push({op:"bcurveTo",data:[a[1][0],a[1][1],a[2][0],a[2][1],a[3][0],a[3][1]]})}if(e&&e.length===2){let l=r.maxRandomnessOffset;i.push({op:"lineTo",data:[e[0]+sr(l,r),e[1]+sr(l,r)]})}}else n===3?(i.push({op:"move",data:[t[1][0],t[1][1]]}),i.push({op:"bcurveTo",data:[t[1][0],t[1][1],t[2][0],t[2][1],t[2][0],t[2][1]]})):n===2&&i.push(...N9(t[0][0],t[0][1],t[1][0],t[1][1],r,!0,!0));return i}function zQ(t,e,r,n,i,a,s,l){let u=[],h=[];if(l.roughness===0){t/=4,h.push([e+n*Math.cos(-t),r+i*Math.sin(-t)]);for(let f=0;f<=2*Math.PI;f+=t){let d=[e+n*Math.cos(f),r+i*Math.sin(f)];u.push(d),h.push(d)}h.push([e+n*Math.cos(0),r+i*Math.sin(0)]),h.push([e+n*Math.cos(t),r+i*Math.sin(t)])}else{let f=sr(.5,l)-Math.PI/2;h.push([sr(a,l)+e+.9*n*Math.cos(f-t),sr(a,l)+r+.9*i*Math.sin(f-t)]);let d=2*Math.PI+f-.01;for(let p=f;p<d;p+=t){let m=[sr(a,l)+e+n*Math.cos(p),sr(a,l)+r+i*Math.sin(p)];u.push(m),h.push(m)}h.push([sr(a,l)+e+n*Math.cos(f+2*Math.PI+.5*s),sr(a,l)+r+i*Math.sin(f+2*Math.PI+.5*s)]),h.push([sr(a,l)+e+.98*n*Math.cos(f+s),sr(a,l)+r+.98*i*Math.sin(f+s)]),h.push([sr(a,l)+e+.9*n*Math.cos(f+.5*s),sr(a,l)+r+.9*i*Math.sin(f+.5*s)])}return[h,u]}function VQ(t,e,r,n,i,a,s,l,u){let h=a+sr(.1,u),f=[];f.push([sr(l,u)+e+.9*n*Math.cos(h-t),sr(l,u)+r+.9*i*Math.sin(h-t)]);for(let d=h;d<=s;d+=t)f.push([sr(l,u)+e+n*Math.cos(d),sr(l,u)+r+i*Math.sin(d)]);return f.push([e+n*Math.cos(s),r+i*Math.sin(s)]),f.push([e+n*Math.cos(s),r+i*Math.sin(s)]),tw(f,null,u)}function IDe(t,e,r,n,i,a,s,l){let u=[],h=[l.maxRandomnessOffset||1,(l.maxRandomnessOffset||1)+.3],f=[0,0],d=l.disableMultiStroke?1:2,p=l.preserveVertices;for(let m=0;m<d;m++)m===0?u.push({op:"move",data:[s[0],s[1]]}):u.push({op:"move",data:[s[0]+(p?0:sr(h[0],l)),s[1]+(p?0:sr(h[0],l))]}),f=p?[i,a]:[i+sr(h[m],l),a+sr(h[m],l)],u.push({op:"bcurveTo",data:[t+sr(h[m],l),e+sr(h[m],l),r+sr(h[m],l),n+sr(h[m],l),f[0],f[1]]});return u}function A2(t){return[...t]}function UQ(t,e=0){let r=t.length;if(r<3)throw new Error("A curve must have at least three points.");let n=[];if(r===3)n.push(A2(t[0]),A2(t[1]),A2(t[2]),A2(t[2]));else{let i=[];i.push(t[0],t[0]);for(let l=1;l<t.length;l++)i.push(t[l]),l===t.length-1&&i.push(t[l]);let a=[],s=1-e;n.push(A2(i[0]));for(let l=1;l+2<i.length;l++){let u=i[l];a[0]=[u[0],u[1]],a[1]=[u[0]+(s*i[l+1][0]-s*i[l-1][0])/6,u[1]+(s*i[l+1][1]-s*i[l-1][1])/6],a[2]=[i[l+1][0]+(s*i[l][0]-s*i[l+2][0])/6,i[l+1][1]+(s*i[l][1]-s*i[l+2][1])/6],a[3]=[i[l+1][0],i[l+1][1]],n.push(a[1],a[2],a[3])}}return n}function JT(t,e){return Math.pow(t[0]-e[0],2)+Math.pow(t[1]-e[1],2)}function ODe(t,e,r){let n=JT(e,r);if(n===0)return JT(t,e);let i=((t[0]-e[0])*(r[0]-e[0])+(t[1]-e[1])*(r[1]-e[1]))/n;return i=Math.max(0,Math.min(1,i)),JT(t,Yd(e,r,i))}function Yd(t,e,r){return[t[0]+(e[0]-t[0])*r,t[1]+(e[1]-t[1])*r]}function M9(t,e,r,n){let i=n||[];if(function(l,u){let h=l[u+0],f=l[u+1],d=l[u+2],p=l[u+3],m=3*f[0]-2*h[0]-p[0];m*=m;let g=3*f[1]-2*h[1]-p[1];g*=g;let y=3*d[0]-2*p[0]-h[0];y*=y;let x=3*d[1]-2*p[1]-h[1];return x*=x,m<y&&(m=y),g<x&&(g=x),m+g}(t,e)<r){let l=t[e+0];i.length?(a=i[i.length-1],s=l,Math.sqrt(JT(a,s))>1&&i.push(l)):i.push(l),i.push(t[e+3])}else{let u=t[e+0],h=t[e+1],f=t[e+2],d=t[e+3],p=Yd(u,h,.5),m=Yd(h,f,.5),g=Yd(f,d,.5),y=Yd(p,m,.5),x=Yd(m,g,.5),v=Yd(y,x,.5);M9([u,p,y,v],0,r,i),M9([v,x,g,d],0,r,i)}var a,s;return i}function PDe(t,e){return rw(t,0,t.length,e)}function rw(t,e,r,n,i){let a=i||[],s=t[e],l=t[r-1],u=0,h=1;for(let f=e+1;f<r-1;++f){let d=ODe(t[f],s,l);d>u&&(u=d,h=f)}return Math.sqrt(u)>n?(rw(t,e,h+1,n,a),rw(t,h,r,n,a)):(a.length||a.push(s),a.push(l)),a}function E9(t,e=.15,r){let n=[],i=(t.length-1)/3;for(let a=0;a<i;a++)M9(t,3*a,e,n);return r&&r>0?rw(n,0,n.length,r):n}var _2,S9,C9,A9,_9,D9,Os,L9,RDe,T9,PQ,jT,NDe,so,bm,I9,QT,O9,je,Ut=N(()=>{"use strict";o(b9,"t");o(DDe,"e");o(LDe,"s");o(D2,"n");_2=class{static{o(this,"o")}constructor(e){this.helper=e}fillPolygons(e,r){return this._fillPolygons(e,r)}_fillPolygons(e,r){let n=D2(e,r);return{type:"fillSketch",ops:this.renderLines(n,r)}}renderLines(e,r){let n=[];for(let i of e)n.push(...this.helper.doubleLineOps(i[0][0],i[0][1],i[1][0],i[1][1],r));return n}};o(nw,"a");S9=class extends _2{static{o(this,"h")}fillPolygons(e,r){let n=r.hachureGap;n<0&&(n=4*r.strokeWidth),n=Math.max(n,.1);let i=D2(e,Object.assign({},r,{hachureGap:n})),a=Math.PI/180*r.hachureAngle,s=[],l=.5*n*Math.cos(a),u=.5*n*Math.sin(a);for(let[h,f]of i)nw([h,f])&&s.push([[h[0]-l,h[1]+u],[...f]],[[h[0]+l,h[1]-u],[...f]]);return{type:"fillSketch",ops:this.renderLines(s,r)}}},C9=class extends _2{static{o(this,"r")}fillPolygons(e,r){let n=this._fillPolygons(e,r),i=Object.assign({},r,{hachureAngle:r.hachureAngle+90}),a=this._fillPolygons(e,i);return n.ops=n.ops.concat(a.ops),n}},A9=class{static{o(this,"i")}constructor(e){this.helper=e}fillPolygons(e,r){let n=D2(e,r=Object.assign({},r,{hachureAngle:0}));return this.dotsOnLines(n,r)}dotsOnLines(e,r){let n=[],i=r.hachureGap;i<0&&(i=4*r.strokeWidth),i=Math.max(i,.1);let a=r.fillWeight;a<0&&(a=r.strokeWidth/2);let s=i/4;for(let l of e){let u=nw(l),h=u/i,f=Math.ceil(h)-1,d=u-f*i,p=(l[0][0]+l[1][0])/2-i/4,m=Math.min(l[0][1],l[1][1]);for(let g=0;g<f;g++){let y=m+d+g*i,x=p-s+2*Math.random()*s,v=y-s+2*Math.random()*s,b=this.helper.ellipse(x,v,a,a,r);n.push(...b.ops)}}return{type:"fillSketch",ops:n}}},_9=class{static{o(this,"c")}constructor(e){this.helper=e}fillPolygons(e,r){let n=D2(e,r);return{type:"fillSketch",ops:this.dashedLine(n,r)}}dashedLine(e,r){let n=r.dashOffset<0?r.hachureGap<0?4*r.strokeWidth:r.hachureGap:r.dashOffset,i=r.dashGap<0?r.hachureGap<0?4*r.strokeWidth:r.hachureGap:r.dashGap,a=[];return e.forEach(s=>{let l=nw(s),u=Math.floor(l/(n+i)),h=(l+i-u*(n+i))/2,f=s[0],d=s[1];f[0]>d[0]&&(f=s[1],d=s[0]);let p=Math.atan((d[1]-f[1])/(d[0]-f[0]));for(let m=0;m<u;m++){let g=m*(n+i),y=g+n,x=[f[0]+g*Math.cos(p)+h*Math.cos(p),f[1]+g*Math.sin(p)+h*Math.sin(p)],v=[f[0]+y*Math.cos(p)+h*Math.cos(p),f[1]+y*Math.sin(p)+h*Math.sin(p)];a.push(...this.helper.doubleLineOps(x[0],x[1],v[0],v[1],r))}}),a}},D9=class{static{o(this,"l")}constructor(e){this.helper=e}fillPolygons(e,r){let n=r.hachureGap<0?4*r.strokeWidth:r.hachureGap,i=r.zigzagOffset<0?n:r.zigzagOffset,a=D2(e,r=Object.assign({},r,{hachureGap:n+i}));return{type:"fillSketch",ops:this.zigzagLines(a,i,r)}}zigzagLines(e,r,n){let i=[];return e.forEach(a=>{let s=nw(a),l=Math.round(s/(2*r)),u=a[0],h=a[1];u[0]>h[0]&&(u=a[1],h=a[0]);let f=Math.atan((h[1]-u[1])/(h[0]-u[0]));for(let d=0;d<l;d++){let p=2*d*r,m=2*(d+1)*r,g=Math.sqrt(2*Math.pow(r,2)),y=[u[0]+p*Math.cos(f),u[1]+p*Math.sin(f)],x=[u[0]+m*Math.cos(f),u[1]+m*Math.sin(f)],v=[y[0]+g*Math.cos(f+Math.PI/4),y[1]+g*Math.sin(f+Math.PI/4)];i.push(...this.helper.doubleLineOps(y[0],y[1],v[0],v[1],n),...this.helper.doubleLineOps(v[0],v[1],x[0],x[1],n))}}),i}},Os={},L9=class{static{o(this,"p")}constructor(e){this.seed=e}next(){return this.seed?(2**31-1&(this.seed=Math.imul(48271,this.seed)))/2**31:Math.random()}},RDe=0,T9=1,PQ=2,jT={A:7,a:7,C:6,c:6,H:1,h:1,L:2,l:2,M:2,m:2,Q:4,q:4,S:4,s:4,T:2,t:2,V:1,v:1,Z:0,z:0};o(w9,"k");o(P9,"b");o(HQ,"y");o(WQ,"m");o(C2,"w");o(qQ,"x");NDe={randOffset:o(function(t,e){return sr(t,e)},"randOffset"),randOffsetWithRange:o(function(t,e,r){return ew(t,e,r)},"randOffsetWithRange"),ellipse:o(function(t,e,r,n,i){let a=XQ(r,n,i);return R9(t,e,i,a).opset},"ellipse"),doubleLineOps:o(function(t,e,r,n,i){return Kh(t,e,r,n,i,!0)},"doubleLineOps")};o(YQ,"v");o(ZT,"S");o(MDe,"O");o(BQ,"L");o(XQ,"T");o(R9,"D");o(FQ,"A");o($Q,"_");o(k9,"I");o(xm,"C");o(GQ,"z");o(jQ,"W");o(ew,"E");o(sr,"G");o(Kh,"$");o(N9,"R");o(KT,"j");o(tw,"q");o(zQ,"F");o(VQ,"V");o(IDe,"Z");o(A2,"Q");o(UQ,"H");o(JT,"N");o(ODe,"B");o(Yd,"J");o(M9,"K");o(PDe,"U");o(rw,"X");o(E9,"Y");so="none",bm=class{static{o(this,"et")}constructor(e){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=e||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return Math.floor(Math.random()*2**31)}_o(e){return e?Object.assign({},this.defaultOptions,e):this.defaultOptions}_d(e,r,n){return{shape:e,sets:r||[],options:n||this.defaultOptions}}line(e,r,n,i,a){let s=this._o(a);return this._d("line",[YQ(e,r,n,i,s)],s)}rectangle(e,r,n,i,a){let s=this._o(a),l=[],u=MDe(e,r,n,i,s);if(s.fill){let h=[[e,r],[e+n,r],[e+n,r+i],[e,r+i]];s.fillStyle==="solid"?l.push(k9([h],s)):l.push(xm([h],s))}return s.stroke!==so&&l.push(u),this._d("rectangle",l,s)}ellipse(e,r,n,i,a){let s=this._o(a),l=[],u=XQ(n,i,s),h=R9(e,r,s,u);if(s.fill)if(s.fillStyle==="solid"){let f=R9(e,r,s,u).opset;f.type="fillPath",l.push(f)}else l.push(xm([h.estimatedPoints],s));return s.stroke!==so&&l.push(h.opset),this._d("ellipse",l,s)}circle(e,r,n,i){let a=this.ellipse(e,r,n,n,i);return a.shape="circle",a}linearPath(e,r){let n=this._o(r);return this._d("linearPath",[ZT(e,!1,n)],n)}arc(e,r,n,i,a,s,l=!1,u){let h=this._o(u),f=[],d=FQ(e,r,n,i,a,s,l,!0,h);if(l&&h.fill)if(h.fillStyle==="solid"){let p=Object.assign({},h);p.disableMultiStroke=!0;let m=FQ(e,r,n,i,a,s,!0,!1,p);m.type="fillPath",f.push(m)}else f.push(function(p,m,g,y,x,v,b){let T=p,S=m,w=Math.abs(g/2),E=Math.abs(y/2);w+=sr(.01*w,b),E+=sr(.01*E,b);let _=x,A=v;for(;_<0;)_+=2*Math.PI,A+=2*Math.PI;A-_>2*Math.PI&&(_=0,A=2*Math.PI);let D=(A-_)/b.curveStepCount,O=[];for(let R=_;R<=A;R+=D)O.push([T+w*Math.cos(R),S+E*Math.sin(R)]);return O.push([T+w*Math.cos(A),S+E*Math.sin(A)]),O.push([T,S]),xm([O],b)}(e,r,n,i,a,s,h));return h.stroke!==so&&f.push(d),this._d("arc",f,h)}curve(e,r){let n=this._o(r),i=[],a=BQ(e,n);if(n.fill&&n.fill!==so)if(n.fillStyle==="solid"){let s=BQ(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(s.ops)})}else{let s=[],l=e;if(l.length){let u=typeof l[0][0]=="number"?[l]:l;for(let h of u)h.length<3?s.push(...h):h.length===3?s.push(...E9(UQ([h[0],h[0],h[1],h[2]]),10,(1+n.roughness)/2)):s.push(...E9(UQ(h),10,(1+n.roughness)/2))}s.length&&i.push(xm([s],n))}return n.stroke!==so&&i.push(a),this._d("curve",i,n)}polygon(e,r){let n=this._o(r),i=[],a=ZT(e,!0,n);return n.fill&&(n.fillStyle==="solid"?i.push(k9([e],n)):i.push(xm([e],n))),n.stroke!==so&&i.push(a),this._d("polygon",i,n)}path(e,r){let n=this._o(r),i=[];if(!e)return this._d("path",i,n);e=(e||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");let a=n.fill&&n.fill!=="transparent"&&n.fill!==so,s=n.stroke!==so,l=!!(n.simplification&&n.simplification<1),u=function(f,d,p){let m=WQ(HQ(P9(f))),g=[],y=[],x=[0,0],v=[],b=o(()=>{v.length>=4&&y.push(...E9(v,d)),v=[]},"i"),T=o(()=>{b(),y.length&&(g.push(y),y=[])},"c");for(let{key:w,data:E}of m)switch(w){case"M":T(),x=[E[0],E[1]],y.push(x);break;case"L":b(),y.push([E[0],E[1]]);break;case"C":if(!v.length){let _=y.length?y[y.length-1]:x;v.push([_[0],_[1]])}v.push([E[0],E[1]]),v.push([E[2],E[3]]),v.push([E[4],E[5]]);break;case"Z":b(),y.push([x[0],x[1]])}if(T(),!p)return g;let S=[];for(let w of g){let E=PDe(w,p);E.length&&S.push(E)}return S}(e,1,l?4-4*(n.simplification||1):(1+n.roughness)/2),h=$Q(e,n);if(a)if(n.fillStyle==="solid")if(u.length===1){let f=$Q(e,Object.assign(Object.assign({},n),{disableMultiStroke:!0,roughness:n.roughness?n.roughness+n.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(f.ops)})}else i.push(k9(u,n));else i.push(xm(u,n));return s&&(l?u.forEach(f=>{i.push(ZT(f,!1,n))}):i.push(h)),this._d("path",i,n)}opsToPath(e,r){let n="";for(let i of e.ops){let a=typeof r=="number"&&r>=0?i.data.map(s=>+s.toFixed(r)):i.data;switch(i.op){case"move":n+=`M${a[0]} ${a[1]} `;break;case"bcurveTo":n+=`C${a[0]} ${a[1]}, ${a[2]} ${a[3]}, ${a[4]} ${a[5]} `;break;case"lineTo":n+=`L${a[0]} ${a[1]} `}}return n.trim()}toPaths(e){let r=e.sets||[],n=e.options||this.defaultOptions,i=[];for(let a of r){let s=null;switch(a.type){case"path":s={d:this.opsToPath(a),stroke:n.stroke,strokeWidth:n.strokeWidth,fill:so};break;case"fillPath":s={d:this.opsToPath(a),stroke:so,strokeWidth:0,fill:n.fill||so};break;case"fillSketch":s=this.fillSketch(a,n)}s&&i.push(s)}return i}fillSketch(e,r){let n=r.fillWeight;return n<0&&(n=r.strokeWidth/2),{d:this.opsToPath(e),stroke:r.fill||so,strokeWidth:n,fill:so}}_mergedShape(e){return e.filter((r,n)=>n===0||r.op!=="move")}},I9=class{static{o(this,"st")}constructor(e,r){this.canvas=e,this.ctx=this.canvas.getContext("2d"),this.gen=new bm(r)}draw(e){let r=e.sets||[],n=e.options||this.getDefaultOptions(),i=this.ctx,a=e.options.fixedDecimalPlaceDigits;for(let s of r)switch(s.type){case"path":i.save(),i.strokeStyle=n.stroke==="none"?"transparent":n.stroke,i.lineWidth=n.strokeWidth,n.strokeLineDash&&i.setLineDash(n.strokeLineDash),n.strokeLineDashOffset&&(i.lineDashOffset=n.strokeLineDashOffset),this._drawToContext(i,s,a),i.restore();break;case"fillPath":{i.save(),i.fillStyle=n.fill||"";let l=e.shape==="curve"||e.shape==="polygon"||e.shape==="path"?"evenodd":"nonzero";this._drawToContext(i,s,a,l),i.restore();break}case"fillSketch":this.fillSketch(i,s,n)}}fillSketch(e,r,n){let i=n.fillWeight;i<0&&(i=n.strokeWidth/2),e.save(),n.fillLineDash&&e.setLineDash(n.fillLineDash),n.fillLineDashOffset&&(e.lineDashOffset=n.fillLineDashOffset),e.strokeStyle=n.fill||"",e.lineWidth=i,this._drawToContext(e,r,n.fixedDecimalPlaceDigits),e.restore()}_drawToContext(e,r,n,i="nonzero"){e.beginPath();for(let a of r.ops){let s=typeof n=="number"&&n>=0?a.data.map(l=>+l.toFixed(n)):a.data;switch(a.op){case"move":e.moveTo(s[0],s[1]);break;case"bcurveTo":e.bezierCurveTo(s[0],s[1],s[2],s[3],s[4],s[5]);break;case"lineTo":e.lineTo(s[0],s[1])}}r.type==="fillPath"?e.fill(i):e.stroke()}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}line(e,r,n,i,a){let s=this.gen.line(e,r,n,i,a);return this.draw(s),s}rectangle(e,r,n,i,a){let s=this.gen.rectangle(e,r,n,i,a);return this.draw(s),s}ellipse(e,r,n,i,a){let s=this.gen.ellipse(e,r,n,i,a);return this.draw(s),s}circle(e,r,n,i){let a=this.gen.circle(e,r,n,i);return this.draw(a),a}linearPath(e,r){let n=this.gen.linearPath(e,r);return this.draw(n),n}polygon(e,r){let n=this.gen.polygon(e,r);return this.draw(n),n}arc(e,r,n,i,a,s,l=!1,u){let h=this.gen.arc(e,r,n,i,a,s,l,u);return this.draw(h),h}curve(e,r){let n=this.gen.curve(e,r);return this.draw(n),n}path(e,r){let n=this.gen.path(e,r);return this.draw(n),n}},QT="http://www.w3.org/2000/svg",O9=class{static{o(this,"ot")}constructor(e,r){this.svg=e,this.gen=new bm(r)}draw(e){let r=e.sets||[],n=e.options||this.getDefaultOptions(),i=this.svg.ownerDocument||window.document,a=i.createElementNS(QT,"g"),s=e.options.fixedDecimalPlaceDigits;for(let l of r){let u=null;switch(l.type){case"path":u=i.createElementNS(QT,"path"),u.setAttribute("d",this.opsToPath(l,s)),u.setAttribute("stroke",n.stroke),u.setAttribute("stroke-width",n.strokeWidth+""),u.setAttribute("fill","none"),n.strokeLineDash&&u.setAttribute("stroke-dasharray",n.strokeLineDash.join(" ").trim()),n.strokeLineDashOffset&&u.setAttribute("stroke-dashoffset",`${n.strokeLineDashOffset}`);break;case"fillPath":u=i.createElementNS(QT,"path"),u.setAttribute("d",this.opsToPath(l,s)),u.setAttribute("stroke","none"),u.setAttribute("stroke-width","0"),u.setAttribute("fill",n.fill||""),e.shape!=="curve"&&e.shape!=="polygon"||u.setAttribute("fill-rule","evenodd");break;case"fillSketch":u=this.fillSketch(i,l,n)}u&&a.appendChild(u)}return a}fillSketch(e,r,n){let i=n.fillWeight;i<0&&(i=n.strokeWidth/2);let a=e.createElementNS(QT,"path");return a.setAttribute("d",this.opsToPath(r,n.fixedDecimalPlaceDigits)),a.setAttribute("stroke",n.fill||""),a.setAttribute("stroke-width",i+""),a.setAttribute("fill","none"),n.fillLineDash&&a.setAttribute("stroke-dasharray",n.fillLineDash.join(" ").trim()),n.fillLineDashOffset&&a.setAttribute("stroke-dashoffset",`${n.fillLineDashOffset}`),a}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}opsToPath(e,r){return this.gen.opsToPath(e,r)}line(e,r,n,i,a){let s=this.gen.line(e,r,n,i,a);return this.draw(s)}rectangle(e,r,n,i,a){let s=this.gen.rectangle(e,r,n,i,a);return this.draw(s)}ellipse(e,r,n,i,a){let s=this.gen.ellipse(e,r,n,i,a);return this.draw(s)}circle(e,r,n,i){let a=this.gen.circle(e,r,n,i);return this.draw(a)}linearPath(e,r){let n=this.gen.linearPath(e,r);return this.draw(n)}polygon(e,r){let n=this.gen.polygon(e,r);return this.draw(n)}arc(e,r,n,i,a,s,l=!1,u){let h=this.gen.arc(e,r,n,i,a,s,l,u);return this.draw(h)}curve(e,r){let n=this.gen.curve(e,r);return this.draw(n)}path(e,r){let n=this.gen.path(e,r);return this.draw(n)}},je={canvas:o((t,e)=>new I9(t,e),"canvas"),svg:o((t,e)=>new O9(t,e),"svg"),generator:o(t=>new bm(t),"generator"),newSeed:o(()=>bm.newSeed(),"newSeed")}});function KQ(t,e){let{labelStyles:r}=We(e);e.labelStyle=r;let n=rt(e),i=n;n||(i="anchor");let a=t.insert("g").attr("class",i).attr("id",e.domId||e.id),s=1,{cssStyles:l}=e,u=je.svg(a),h=Ke(e,{fill:"black",stroke:"none",fillStyle:"solid"});e.look!=="handDrawn"&&(h.roughness=0);let f=u.circle(0,0,s*2,h),d=a.insert(()=>f,":first-child");return d.attr("class","anchor").attr("style",wn(l)),Xe(e,d),e.intersect=function(p){return X.info("Circle intersect",e,s,p),He.circle(e,s,p)},a}var QQ=N(()=>{"use strict";pt();Nt();Vt();Ft();Ut();tr();o(KQ,"anchor")});function ZQ(t,e,r,n,i,a,s){let u=(t+r)/2,h=(e+n)/2,f=Math.atan2(n-e,r-t),d=(r-t)/2,p=(n-e)/2,m=d/i,g=p/a,y=Math.sqrt(m**2+g**2);if(y>1)throw new Error("The given radii are too small to create an arc between the points.");let x=Math.sqrt(1-y**2),v=u+x*a*Math.sin(f)*(s?-1:1),b=h-x*i*Math.cos(f)*(s?-1:1),T=Math.atan2((e-b)/a,(t-v)/i),w=Math.atan2((n-b)/a,(r-v)/i)-T;s&&w<0&&(w+=2*Math.PI),!s&&w>0&&(w-=2*Math.PI);let E=[];for(let _=0;_<20;_++){let A=_/19,D=T+A*w,O=v+i*Math.cos(D),R=b+a*Math.sin(D);E.push({x:O,y:R})}return E}async function JQ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await lt(t,e,rt(e)),s=a.width+e.padding+20,l=a.height+e.padding,u=l/2,h=u/(2.5+l/50),{cssStyles:f}=e,d=[{x:s/2,y:-l/2},{x:-s/2,y:-l/2},...ZQ(-s/2,-l/2,-s/2,l/2,h,u,!1),{x:s/2,y:l/2},...ZQ(s/2,l/2,s/2,-l/2,h,u,!0)],p=je.svg(i),m=Ke(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=zt(d),y=p.path(g,m),x=i.insert(()=>y,":first-child");return x.attr("class","basic label-container"),f&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",n),x.attr("transform",`translate(${h/2}, 0)`),Xe(e,x),e.intersect=function(v){return He.polygon(e,d,v)},i}var eZ=N(()=>{"use strict";Nt();Vt();Ft();Ut();o(ZQ,"generateArcPoints");o(JQ,"bowTieRect")});function Ps(t,e,r,n){return t.insert("polygon",":first-child").attr("points",n.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+r/2+")")}var Qh=N(()=>{"use strict";o(Ps,"insertPolygonShape")});async function tZ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await lt(t,e,rt(e)),s=a.height+e.padding,l=12,u=a.width+e.padding+l,h=0,f=u,d=-s,p=0,m=[{x:h+l,y:d},{x:f,y:d},{x:f,y:p},{x:h,y:p},{x:h,y:d+l},{x:h+l,y:d}],g,{cssStyles:y}=e;if(e.look==="handDrawn"){let x=je.svg(i),v=Ke(e,{}),b=zt(m),T=x.path(b,v);g=i.insert(()=>T,":first-child").attr("transform",`translate(${-u/2}, ${s/2})`),y&&g.attr("style",y)}else g=Ps(i,u,s,m);return n&&g.attr("style",n),Xe(e,g),e.intersect=function(x){return He.polygon(e,m,x)},i}var rZ=N(()=>{"use strict";Nt();Vt();Ft();Ut();Qh();Nt();o(tZ,"card")});function nZ(t,e){let{nodeStyles:r}=We(e);e.label="";let n=t.insert("g").attr("class",rt(e)).attr("id",e.domId??e.id),{cssStyles:i}=e,a=Math.max(28,e.width??0),s=[{x:0,y:a/2},{x:a/2,y:0},{x:0,y:-a/2},{x:-a/2,y:0}],l=je.svg(n),u=Ke(e,{});e.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let h=zt(s),f=l.path(h,u),d=n.insert(()=>f,":first-child");return i&&e.look!=="handDrawn"&&d.selectAll("path").attr("style",i),r&&e.look!=="handDrawn"&&d.selectAll("path").attr("style",r),e.width=28,e.height=28,e.intersect=function(p){return He.polygon(e,s,p)},n}var iZ=N(()=>{"use strict";Vt();Ut();Ft();Nt();o(nZ,"choice")});async function iw(t,e,r){let{labelStyles:n,nodeStyles:i}=We(e);e.labelStyle=n;let{shapeSvg:a,bbox:s,halfPadding:l}=await lt(t,e,rt(e)),u=r?.padding??l,h=s.width/2+u,f,{cssStyles:d}=e;if(e.look==="handDrawn"){let p=je.svg(a),m=Ke(e,{}),g=p.circle(0,0,h*2,m);f=a.insert(()=>g,":first-child"),f.attr("class","basic label-container").attr("style",wn(d))}else f=a.insert("circle",":first-child").attr("class","basic label-container").attr("style",i).attr("r",h).attr("cx",0).attr("cy",0);return Xe(e,f),e.calcIntersect=function(p,m){let g=p.width/2;return He.circle(p,g,m)},e.intersect=function(p){return X.info("Circle intersect",e,h,p),He.circle(e,h,p)},a}var B9=N(()=>{"use strict";Ut();pt();tr();Vt();Ft();Nt();o(iw,"circle")});function BDe(t){let e=Math.cos(Math.PI/4),r=Math.sin(Math.PI/4),n=t*2,i={x:n/2*e,y:n/2*r},a={x:-(n/2)*e,y:n/2*r},s={x:-(n/2)*e,y:-(n/2)*r},l={x:n/2*e,y:-(n/2)*r};return`M ${a.x},${a.y} L ${l.x},${l.y}
|
||
M ${i.x},${i.y} L ${s.x},${s.y}`}function aZ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r,e.label="";let i=t.insert("g").attr("class",rt(e)).attr("id",e.domId??e.id),a=Math.max(30,e?.width??0),{cssStyles:s}=e,l=je.svg(i),u=Ke(e,{});e.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let h=l.circle(0,0,a*2,u),f=BDe(a),d=l.path(f,u),p=i.insert(()=>h,":first-child");return p.insert(()=>d),s&&e.look!=="handDrawn"&&p.selectAll("path").attr("style",s),n&&e.look!=="handDrawn"&&p.selectAll("path").attr("style",n),Xe(e,p),e.intersect=function(m){return X.info("crossedCircle intersect",e,{radius:a,point:m}),He.circle(e,a,m)},i}var sZ=N(()=>{"use strict";pt();Nt();Ft();Ut();Vt();o(BDe,"createLine");o(aZ,"crossedCircle")});function Zh(t,e,r,n=100,i=0,a=180){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;d<n;d++){let p=l+d*f,m=t+r*Math.cos(p),g=e+r*Math.sin(p);s.push({x:-m,y:-g})}return s}async function oZ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await lt(t,e,rt(e)),l=a.width+(e.padding??0),u=a.height+(e.padding??0),h=Math.max(5,u*.1),{cssStyles:f}=e,d=[...Zh(l/2,-u/2,h,30,-90,0),{x:-l/2-h,y:h},...Zh(l/2+h*2,-h,h,20,-180,-270),...Zh(l/2+h*2,h,h,20,-90,-180),{x:-l/2-h,y:-u/2},...Zh(l/2,u/2,h,20,0,90)],p=[{x:l/2,y:-u/2-h},{x:-l/2,y:-u/2-h},...Zh(l/2,-u/2,h,20,-90,0),{x:-l/2-h,y:-h},...Zh(l/2+l*.1,-h,h,20,-180,-270),...Zh(l/2+l*.1,h,h,20,-90,-180),{x:-l/2-h,y:u/2},...Zh(l/2,u/2,h,20,0,90),{x:-l/2,y:u/2+h},{x:l/2,y:u/2+h}],m=je.svg(i),g=Ke(e,{fill:"none"});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let x=zt(d).replace("Z",""),v=m.path(x,g),b=zt(p),T=m.path(b,{...g}),S=i.insert("g",":first-child");return S.insert(()=>T,":first-child").attr("stroke-opacity",0),S.insert(()=>v,":first-child"),S.attr("class","text"),f&&e.look!=="handDrawn"&&S.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&S.selectAll("path").attr("style",n),S.attr("transform",`translate(${h}, 0)`),s.attr("transform",`translate(${-l/2+h-(a.x-(a.left??0))},${-u/2+(e.padding??0)/2-(a.y-(a.top??0))})`),Xe(e,S),e.intersect=function(w){return He.polygon(e,p,w)},i}var lZ=N(()=>{"use strict";Nt();Vt();Ft();Ut();o(Zh,"generateCirclePoints");o(oZ,"curlyBraceLeft")});function Jh(t,e,r,n=100,i=0,a=180){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;d<n;d++){let p=l+d*f,m=t+r*Math.cos(p),g=e+r*Math.sin(p);s.push({x:m,y:g})}return s}async function cZ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await lt(t,e,rt(e)),l=a.width+(e.padding??0),u=a.height+(e.padding??0),h=Math.max(5,u*.1),{cssStyles:f}=e,d=[...Jh(l/2,-u/2,h,20,-90,0),{x:l/2+h,y:-h},...Jh(l/2+h*2,-h,h,20,-180,-270),...Jh(l/2+h*2,h,h,20,-90,-180),{x:l/2+h,y:u/2},...Jh(l/2,u/2,h,20,0,90)],p=[{x:-l/2,y:-u/2-h},{x:l/2,y:-u/2-h},...Jh(l/2,-u/2,h,20,-90,0),{x:l/2+h,y:-h},...Jh(l/2+h*2,-h,h,20,-180,-270),...Jh(l/2+h*2,h,h,20,-90,-180),{x:l/2+h,y:u/2},...Jh(l/2,u/2,h,20,0,90),{x:l/2,y:u/2+h},{x:-l/2,y:u/2+h}],m=je.svg(i),g=Ke(e,{fill:"none"});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let x=zt(d).replace("Z",""),v=m.path(x,g),b=zt(p),T=m.path(b,{...g}),S=i.insert("g",":first-child");return S.insert(()=>T,":first-child").attr("stroke-opacity",0),S.insert(()=>v,":first-child"),S.attr("class","text"),f&&e.look!=="handDrawn"&&S.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&S.selectAll("path").attr("style",n),S.attr("transform",`translate(${-h}, 0)`),s.attr("transform",`translate(${-l/2+(e.padding??0)/2-(a.x-(a.left??0))},${-u/2+(e.padding??0)/2-(a.y-(a.top??0))})`),Xe(e,S),e.intersect=function(w){return He.polygon(e,p,w)},i}var uZ=N(()=>{"use strict";Nt();Vt();Ft();Ut();o(Jh,"generateCirclePoints");o(cZ,"curlyBraceRight")});function Ma(t,e,r,n=100,i=0,a=180){let s=[],l=i*Math.PI/180,f=(a*Math.PI/180-l)/(n-1);for(let d=0;d<n;d++){let p=l+d*f,m=t+r*Math.cos(p),g=e+r*Math.sin(p);s.push({x:-m,y:-g})}return s}async function hZ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await lt(t,e,rt(e)),l=a.width+(e.padding??0),u=a.height+(e.padding??0),h=Math.max(5,u*.1),{cssStyles:f}=e,d=[...Ma(l/2,-u/2,h,30,-90,0),{x:-l/2-h,y:h},...Ma(l/2+h*2,-h,h,20,-180,-270),...Ma(l/2+h*2,h,h,20,-90,-180),{x:-l/2-h,y:-u/2},...Ma(l/2,u/2,h,20,0,90)],p=[...Ma(-l/2+h+h/2,-u/2,h,20,-90,-180),{x:l/2-h/2,y:h},...Ma(-l/2-h/2,-h,h,20,0,90),...Ma(-l/2-h/2,h,h,20,-90,0),{x:l/2-h/2,y:-h},...Ma(-l/2+h+h/2,u/2,h,30,-180,-270)],m=[{x:l/2,y:-u/2-h},{x:-l/2,y:-u/2-h},...Ma(l/2,-u/2,h,20,-90,0),{x:-l/2-h,y:-h},...Ma(l/2+h*2,-h,h,20,-180,-270),...Ma(l/2+h*2,h,h,20,-90,-180),{x:-l/2-h,y:u/2},...Ma(l/2,u/2,h,20,0,90),{x:-l/2,y:u/2+h},{x:l/2-h-h/2,y:u/2+h},...Ma(-l/2+h+h/2,-u/2,h,20,-90,-180),{x:l/2-h/2,y:h},...Ma(-l/2-h/2,-h,h,20,0,90),...Ma(-l/2-h/2,h,h,20,-90,0),{x:l/2-h/2,y:-h},...Ma(-l/2+h+h/2,u/2,h,30,-180,-270)],g=je.svg(i),y=Ke(e,{fill:"none"});e.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let v=zt(d).replace("Z",""),b=g.path(v,y),S=zt(p).replace("Z",""),w=g.path(S,y),E=zt(m),_=g.path(E,{...y}),A=i.insert("g",":first-child");return A.insert(()=>_,":first-child").attr("stroke-opacity",0),A.insert(()=>b,":first-child"),A.insert(()=>w,":first-child"),A.attr("class","text"),f&&e.look!=="handDrawn"&&A.selectAll("path").attr("style",f),n&&e.look!=="handDrawn"&&A.selectAll("path").attr("style",n),A.attr("transform",`translate(${h-h/4}, 0)`),s.attr("transform",`translate(${-l/2+(e.padding??0)/2-(a.x-(a.left??0))},${-u/2+(e.padding??0)/2-(a.y-(a.top??0))})`),Xe(e,A),e.intersect=function(D){return He.polygon(e,m,D)},i}var fZ=N(()=>{"use strict";Nt();Vt();Ft();Ut();o(Ma,"generateCirclePoints");o(hZ,"curlyBraces")});async function dZ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await lt(t,e,rt(e)),s=80,l=20,u=Math.max(s,(a.width+(e.padding??0)*2)*1.25,e?.width??0),h=Math.max(l,a.height+(e.padding??0)*2,e?.height??0),f=h/2,{cssStyles:d}=e,p=je.svg(i),m=Ke(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=u,y=h,x=g-f,v=y/4,b=[{x,y:0},{x:v,y:0},{x:0,y:y/2},{x:v,y},{x,y},...qd(-x,-y/2,f,50,270,90)],T=zt(b),S=p.path(T,m),w=i.insert(()=>S,":first-child");return w.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&w.selectChildren("path").attr("style",d),n&&e.look!=="handDrawn"&&w.selectChildren("path").attr("style",n),w.attr("transform",`translate(${-u/2}, ${-h/2})`),Xe(e,w),e.intersect=function(E){return He.polygon(e,b,E)},i}var pZ=N(()=>{"use strict";Nt();Vt();Ft();Ut();o(dZ,"curvedTrapezoid")});async function mZ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await lt(t,e,rt(e)),l=Math.max(a.width+e.padding,e.width??0),u=l/2,h=u/(2.5+l/50),f=Math.max(a.height+h+e.padding,e.height??0),d,{cssStyles:p}=e;if(e.look==="handDrawn"){let m=je.svg(i),g=$De(0,0,l,f,u,h),y=GDe(0,h,l,f,u,h),x=m.path(g,Ke(e,{})),v=m.path(y,Ke(e,{fill:"none"}));d=i.insert(()=>v,":first-child"),d=i.insert(()=>x,":first-child"),d.attr("class","basic label-container"),p&&d.attr("style",p)}else{let m=FDe(0,0,l,f,u,h);d=i.insert("path",":first-child").attr("d",m).attr("class","basic label-container").attr("style",wn(p)).attr("style",n)}return d.attr("label-offset-y",h),d.attr("transform",`translate(${-l/2}, ${-(f/2+h)})`),Xe(e,d),s.attr("transform",`translate(${-(a.width/2)-(a.x-(a.left??0))}, ${-(a.height/2)+(e.padding??0)/1.5-(a.y-(a.top??0))})`),e.intersect=function(m){let g=He.rect(e,m),y=g.x-(e.x??0);if(u!=0&&(Math.abs(y)<(e.width??0)/2||Math.abs(y)==(e.width??0)/2&&Math.abs(g.y-(e.y??0))>(e.height??0)/2-h)){let x=h*h*(1-y*y/(u*u));x>0&&(x=Math.sqrt(x)),x=h-x,m.y-(e.y??0)>0&&(x=-x),g.y+=x}return g},i}var FDe,$De,GDe,gZ=N(()=>{"use strict";Nt();Vt();Ft();Ut();tr();FDe=o((t,e,r,n,i,a)=>[`M${t},${e+a}`,`a${i},${a} 0,0,0 ${r},0`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`].join(" "),"createCylinderPathD"),$De=o((t,e,r,n,i,a)=>[`M${t},${e+a}`,`M${t+r},${e+a}`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`].join(" "),"createOuterCylinderPathD"),GDe=o((t,e,r,n,i,a)=>[`M${t-r/2},${-n/2}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createInnerCylinderPathD");o(mZ,"cylinder")});async function yZ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await lt(t,e,rt(e)),l=a.width+e.padding,u=a.height+e.padding,h=u*.2,f=-l/2,d=-u/2-h/2,{cssStyles:p}=e,m=je.svg(i),g=Ke(e,{});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=[{x:f,y:d+h},{x:-f,y:d+h},{x:-f,y:-d},{x:f,y:-d},{x:f,y:d},{x:-f,y:d},{x:-f,y:d+h}],x=m.polygon(y.map(b=>[b.x,b.y]),g),v=i.insert(()=>x,":first-child");return v.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",p),n&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",n),s.attr("transform",`translate(${f+(e.padding??0)/2-(a.x-(a.left??0))}, ${d+h+(e.padding??0)/2-(a.y-(a.top??0))})`),Xe(e,v),e.intersect=function(b){return He.rect(e,b)},i}var vZ=N(()=>{"use strict";Nt();Vt();Ft();Ut();o(yZ,"dividedRectangle")});async function xZ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s}=await lt(t,e,rt(e)),u=a.width/2+s+5,h=a.width/2+s,f,{cssStyles:d}=e;if(e.look==="handDrawn"){let p=je.svg(i),m=Ke(e,{roughness:.2,strokeWidth:2.5}),g=Ke(e,{roughness:.2,strokeWidth:1.5}),y=p.circle(0,0,u*2,m),x=p.circle(0,0,h*2,g);f=i.insert("g",":first-child"),f.attr("class",wn(e.cssClasses)).attr("style",wn(d)),f.node()?.appendChild(y),f.node()?.appendChild(x)}else{f=i.insert("g",":first-child");let p=f.insert("circle",":first-child"),m=f.insert("circle");f.attr("class","basic label-container").attr("style",n),p.attr("class","outer-circle").attr("style",n).attr("r",u).attr("cx",0).attr("cy",0),m.attr("class","inner-circle").attr("style",n).attr("r",h).attr("cx",0).attr("cy",0)}return Xe(e,f),e.intersect=function(p){return X.info("DoubleCircle intersect",e,u,p),He.circle(e,u,p)},i}var bZ=N(()=>{"use strict";pt();Nt();Vt();Ft();Ut();tr();o(xZ,"doublecircle")});function TZ(t,e,{config:{themeVariables:r}}){let{labelStyles:n,nodeStyles:i}=We(e);e.label="",e.labelStyle=n;let a=t.insert("g").attr("class",rt(e)).attr("id",e.domId??e.id),s=7,{cssStyles:l}=e,u=je.svg(a),{nodeBorder:h}=r,f=Ke(e,{fillStyle:"solid"});e.look!=="handDrawn"&&(f.roughness=0);let d=u.circle(0,0,s*2,f),p=a.insert(()=>d,":first-child");return p.selectAll("path").attr("style",`fill: ${h} !important;`),l&&l.length>0&&e.look!=="handDrawn"&&p.selectAll("path").attr("style",l),i&&e.look!=="handDrawn"&&p.selectAll("path").attr("style",i),Xe(e,p),e.intersect=function(m){return X.info("filledCircle intersect",e,{radius:s,point:m}),He.circle(e,s,m)},a}var wZ=N(()=>{"use strict";Ut();pt();Vt();Ft();Nt();o(TZ,"filledCircle")});async function kZ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await lt(t,e,rt(e)),l=a.width+(e.padding??0),u=l+a.height,h=l+a.height,f=[{x:0,y:-u},{x:h,y:-u},{x:h/2,y:0}],{cssStyles:d}=e,p=je.svg(i),m=Ke(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=zt(f),y=p.path(g,m),x=i.insert(()=>y,":first-child").attr("transform",`translate(${-u/2}, ${u/2})`);return d&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",d),n&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",n),e.width=l,e.height=u,Xe(e,x),s.attr("transform",`translate(${-a.width/2-(a.x-(a.left??0))}, ${-u/2+(e.padding??0)/2+(a.y-(a.top??0))})`),e.intersect=function(v){return X.info("Triangle intersect",e,f,v),He.polygon(e,f,v)},i}var EZ=N(()=>{"use strict";pt();Nt();Vt();Ft();Ut();Nt();o(kZ,"flippedTriangle")});function SZ(t,e,{dir:r,config:{state:n,themeVariables:i}}){let{nodeStyles:a}=We(e);e.label="";let s=t.insert("g").attr("class",rt(e)).attr("id",e.domId??e.id),{cssStyles:l}=e,u=Math.max(70,e?.width??0),h=Math.max(10,e?.height??0);r==="LR"&&(u=Math.max(10,e?.width??0),h=Math.max(70,e?.height??0));let f=-1*u/2,d=-1*h/2,p=je.svg(s),m=Ke(e,{stroke:i.lineColor,fill:i.lineColor});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=p.rectangle(f,d,u,h,m),y=s.insert(()=>g,":first-child");l&&e.look!=="handDrawn"&&y.selectAll("path").attr("style",l),a&&e.look!=="handDrawn"&&y.selectAll("path").attr("style",a),Xe(e,y);let x=n?.padding??0;return e.width&&e.height&&(e.width+=x/2||0,e.height+=x/2||0),e.intersect=function(v){return He.rect(e,v)},s}var CZ=N(()=>{"use strict";Ut();Vt();Ft();Nt();o(SZ,"forkJoin")});async function AZ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let i=80,a=50,{shapeSvg:s,bbox:l}=await lt(t,e,rt(e)),u=Math.max(i,l.width+(e.padding??0)*2,e?.width??0),h=Math.max(a,l.height+(e.padding??0)*2,e?.height??0),f=h/2,{cssStyles:d}=e,p=je.svg(s),m=Ke(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=[{x:-u/2,y:-h/2},{x:u/2-f,y:-h/2},...qd(-u/2+f,0,f,50,90,270),{x:u/2-f,y:h/2},{x:-u/2,y:h/2}],y=zt(g),x=p.path(y,m),v=s.insert(()=>x,":first-child");return v.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",d),n&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",n),Xe(e,v),e.intersect=function(b){return X.info("Pill intersect",e,{radius:f,point:b}),He.polygon(e,g,b)},s}var _Z=N(()=>{"use strict";pt();Nt();Vt();Ft();Ut();o(AZ,"halfRoundedRectangle")});async function DZ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await lt(t,e,rt(e)),s=a.height+(e.padding??0),l=a.width+(e.padding??0)*2.5,{cssStyles:u}=e,h=je.svg(i),f=Ke(e,{});e.look!=="handDrawn"&&(f.roughness=0,f.fillStyle="solid");let d=l/2,p=d/6;d=d+p;let m=s/2,g=m/2,y=d-g,x=[{x:-y,y:-m},{x:0,y:-m},{x:y,y:-m},{x:d,y:0},{x:y,y:m},{x:0,y:m},{x:-y,y:m},{x:-d,y:0}],v=zt(x),b=h.path(v,f),T=i.insert(()=>b,":first-child");return T.attr("class","basic label-container"),u&&e.look!=="handDrawn"&&T.selectChildren("path").attr("style",u),n&&e.look!=="handDrawn"&&T.selectChildren("path").attr("style",n),e.width=l,e.height=s,Xe(e,T),e.intersect=function(S){return He.polygon(e,x,S)},i}var LZ=N(()=>{"use strict";Nt();Vt();Ft();Ut();o(DZ,"hexagon")});async function RZ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.label="",e.labelStyle=r;let{shapeSvg:i}=await lt(t,e,rt(e)),a=Math.max(30,e?.width??0),s=Math.max(30,e?.height??0),{cssStyles:l}=e,u=je.svg(i),h=Ke(e,{});e.look!=="handDrawn"&&(h.roughness=0,h.fillStyle="solid");let f=[{x:0,y:0},{x:a,y:0},{x:0,y:s},{x:a,y:s}],d=zt(f),p=u.path(d,h),m=i.insert(()=>p,":first-child");return m.attr("class","basic label-container"),l&&e.look!=="handDrawn"&&m.selectChildren("path").attr("style",l),n&&e.look!=="handDrawn"&&m.selectChildren("path").attr("style",n),m.attr("transform",`translate(${-a/2}, ${-s/2})`),Xe(e,m),e.intersect=function(g){return X.info("Pill intersect",e,{points:f}),He.polygon(e,f,g)},i}var NZ=N(()=>{"use strict";pt();Nt();Vt();Ft();Ut();o(RZ,"hourglass")});async function MZ(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=We(e);e.labelStyle=i;let a=e.assetHeight??48,s=e.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;e.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,label:d}=await lt(t,e,"icon-shape default"),p=e.pos==="t",m=l,g=l,{nodeBorder:y}=r,{stylesMap:x}=bc(e),v=-g/2,b=-m/2,T=e.label?8:0,S=je.svg(h),w=Ke(e,{stroke:"none",fill:"none"});e.look!=="handDrawn"&&(w.roughness=0,w.fillStyle="solid");let E=S.rectangle(v,b,g,m,w),_=Math.max(g,f.width),A=m+f.height+T,D=S.rectangle(-_/2,-A/2,_,A,{...w,fill:"transparent",stroke:"none"}),O=h.insert(()=>E,":first-child"),R=h.insert(()=>D);if(e.icon){let k=h.append("g");k.html(`<g>${await As(e.icon,{height:l,width:l,fallbackPrefix:""})}</g>`);let L=k.node().getBBox(),C=L.width,I=L.height,M=L.x,P=L.y;k.attr("transform",`translate(${-C/2-M},${p?f.height/2+T/2-I/2-P:-f.height/2-T/2-I/2-P})`),k.attr("style",`color: ${x.get("stroke")??y};`)}return d.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${p?-A/2:A/2-f.height})`),O.attr("transform",`translate(0,${p?f.height/2+T/2:-f.height/2-T/2})`),Xe(e,R),e.intersect=function(k){if(X.info("iconSquare intersect",e,k),!e.label)return He.rect(e,k);let L=e.x??0,C=e.y??0,I=e.height??0,M=[];return p?M=[{x:L-f.width/2,y:C-I/2},{x:L+f.width/2,y:C-I/2},{x:L+f.width/2,y:C-I/2+f.height+T},{x:L+g/2,y:C-I/2+f.height+T},{x:L+g/2,y:C+I/2},{x:L-g/2,y:C+I/2},{x:L-g/2,y:C-I/2+f.height+T},{x:L-f.width/2,y:C-I/2+f.height+T}]:M=[{x:L-g/2,y:C-I/2},{x:L+g/2,y:C-I/2},{x:L+g/2,y:C-I/2+m},{x:L+f.width/2,y:C-I/2+m},{x:L+f.width/2/2,y:C+I/2},{x:L-f.width/2,y:C+I/2},{x:L-f.width/2,y:C-I/2+m},{x:L-g/2,y:C-I/2+m}],He.polygon(e,M,k)},h}var IZ=N(()=>{"use strict";Ut();pt();rc();Vt();Ft();Nt();o(MZ,"icon")});async function OZ(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=We(e);e.labelStyle=i;let a=e.assetHeight??48,s=e.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;e.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,label:d}=await lt(t,e,"icon-shape default"),p=20,m=e.label?8:0,g=e.pos==="t",{nodeBorder:y,mainBkg:x}=r,{stylesMap:v}=bc(e),b=je.svg(h),T=Ke(e,{});e.look!=="handDrawn"&&(T.roughness=0,T.fillStyle="solid");let S=v.get("fill");T.stroke=S??x;let w=h.append("g");e.icon&&w.html(`<g>${await As(e.icon,{height:l,width:l,fallbackPrefix:""})}</g>`);let E=w.node().getBBox(),_=E.width,A=E.height,D=E.x,O=E.y,R=Math.max(_,A)*Math.SQRT2+p*2,k=b.circle(0,0,R,T),L=Math.max(R,f.width),C=R+f.height+m,I=b.rectangle(-L/2,-C/2,L,C,{...T,fill:"transparent",stroke:"none"}),M=h.insert(()=>k,":first-child"),P=h.insert(()=>I);return w.attr("transform",`translate(${-_/2-D},${g?f.height/2+m/2-A/2-O:-f.height/2-m/2-A/2-O})`),w.attr("style",`color: ${v.get("stroke")??y};`),d.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${g?-C/2:C/2-f.height})`),M.attr("transform",`translate(0,${g?f.height/2+m/2:-f.height/2-m/2})`),Xe(e,P),e.intersect=function(B){return X.info("iconSquare intersect",e,B),He.rect(e,B)},h}var PZ=N(()=>{"use strict";Ut();pt();rc();Vt();Ft();Nt();o(OZ,"iconCircle")});var Bs,Xd=N(()=>{"use strict";Bs=o((t,e,r,n,i)=>["M",t+i,e,"H",t+r-i,"A",i,i,0,0,1,t+r,e+i,"V",e+n-i,"A",i,i,0,0,1,t+r-i,e+n,"H",t+i,"A",i,i,0,0,1,t,e+n-i,"V",e+i,"A",i,i,0,0,1,t+i,e,"Z"].join(" "),"createRoundedRectPathD")});async function BZ(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=We(e);e.labelStyle=i;let a=e.assetHeight??48,s=e.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;e.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,halfPadding:d,label:p}=await lt(t,e,"icon-shape default"),m=e.pos==="t",g=l+d*2,y=l+d*2,{nodeBorder:x,mainBkg:v}=r,{stylesMap:b}=bc(e),T=-y/2,S=-g/2,w=e.label?8:0,E=je.svg(h),_=Ke(e,{});e.look!=="handDrawn"&&(_.roughness=0,_.fillStyle="solid");let A=b.get("fill");_.stroke=A??v;let D=E.path(Bs(T,S,y,g,5),_),O=Math.max(y,f.width),R=g+f.height+w,k=E.rectangle(-O/2,-R/2,O,R,{..._,fill:"transparent",stroke:"none"}),L=h.insert(()=>D,":first-child").attr("class","icon-shape2"),C=h.insert(()=>k);if(e.icon){let I=h.append("g");I.html(`<g>${await As(e.icon,{height:l,width:l,fallbackPrefix:""})}</g>`);let M=I.node().getBBox(),P=M.width,B=M.height,F=M.x,G=M.y;I.attr("transform",`translate(${-P/2-F},${m?f.height/2+w/2-B/2-G:-f.height/2-w/2-B/2-G})`),I.attr("style",`color: ${b.get("stroke")??x};`)}return p.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${m?-R/2:R/2-f.height})`),L.attr("transform",`translate(0,${m?f.height/2+w/2:-f.height/2-w/2})`),Xe(e,C),e.intersect=function(I){if(X.info("iconSquare intersect",e,I),!e.label)return He.rect(e,I);let M=e.x??0,P=e.y??0,B=e.height??0,F=[];return m?F=[{x:M-f.width/2,y:P-B/2},{x:M+f.width/2,y:P-B/2},{x:M+f.width/2,y:P-B/2+f.height+w},{x:M+y/2,y:P-B/2+f.height+w},{x:M+y/2,y:P+B/2},{x:M-y/2,y:P+B/2},{x:M-y/2,y:P-B/2+f.height+w},{x:M-f.width/2,y:P-B/2+f.height+w}]:F=[{x:M-y/2,y:P-B/2},{x:M+y/2,y:P-B/2},{x:M+y/2,y:P-B/2+g},{x:M+f.width/2,y:P-B/2+g},{x:M+f.width/2/2,y:P+B/2},{x:M-f.width/2,y:P+B/2},{x:M-f.width/2,y:P-B/2+g},{x:M-y/2,y:P-B/2+g}],He.polygon(e,F,I)},h}var FZ=N(()=>{"use strict";Ut();pt();rc();Vt();Ft();Xd();Nt();o(BZ,"iconRounded")});async function $Z(t,e,{config:{themeVariables:r,flowchart:n}}){let{labelStyles:i}=We(e);e.labelStyle=i;let a=e.assetHeight??48,s=e.assetWidth??48,l=Math.max(a,s),u=n?.wrappingWidth;e.width=Math.max(l,u??0);let{shapeSvg:h,bbox:f,halfPadding:d,label:p}=await lt(t,e,"icon-shape default"),m=e.pos==="t",g=l+d*2,y=l+d*2,{nodeBorder:x,mainBkg:v}=r,{stylesMap:b}=bc(e),T=-y/2,S=-g/2,w=e.label?8:0,E=je.svg(h),_=Ke(e,{});e.look!=="handDrawn"&&(_.roughness=0,_.fillStyle="solid");let A=b.get("fill");_.stroke=A??v;let D=E.path(Bs(T,S,y,g,.1),_),O=Math.max(y,f.width),R=g+f.height+w,k=E.rectangle(-O/2,-R/2,O,R,{..._,fill:"transparent",stroke:"none"}),L=h.insert(()=>D,":first-child"),C=h.insert(()=>k);if(e.icon){let I=h.append("g");I.html(`<g>${await As(e.icon,{height:l,width:l,fallbackPrefix:""})}</g>`);let M=I.node().getBBox(),P=M.width,B=M.height,F=M.x,G=M.y;I.attr("transform",`translate(${-P/2-F},${m?f.height/2+w/2-B/2-G:-f.height/2-w/2-B/2-G})`),I.attr("style",`color: ${b.get("stroke")??x};`)}return p.attr("transform",`translate(${-f.width/2-(f.x-(f.left??0))},${m?-R/2:R/2-f.height})`),L.attr("transform",`translate(0,${m?f.height/2+w/2:-f.height/2-w/2})`),Xe(e,C),e.intersect=function(I){if(X.info("iconSquare intersect",e,I),!e.label)return He.rect(e,I);let M=e.x??0,P=e.y??0,B=e.height??0,F=[];return m?F=[{x:M-f.width/2,y:P-B/2},{x:M+f.width/2,y:P-B/2},{x:M+f.width/2,y:P-B/2+f.height+w},{x:M+y/2,y:P-B/2+f.height+w},{x:M+y/2,y:P+B/2},{x:M-y/2,y:P+B/2},{x:M-y/2,y:P-B/2+f.height+w},{x:M-f.width/2,y:P-B/2+f.height+w}]:F=[{x:M-y/2,y:P-B/2},{x:M+y/2,y:P-B/2},{x:M+y/2,y:P-B/2+g},{x:M+f.width/2,y:P-B/2+g},{x:M+f.width/2/2,y:P+B/2},{x:M-f.width/2,y:P+B/2},{x:M-f.width/2,y:P-B/2+g},{x:M-y/2,y:P-B/2+g}],He.polygon(e,F,I)},h}var GZ=N(()=>{"use strict";Ut();pt();rc();Vt();Xd();Ft();Nt();o($Z,"iconSquare")});async function zZ(t,e,{config:{flowchart:r}}){let n=new Image;n.src=e?.img??"",await n.decode();let i=Number(n.naturalWidth.toString().replace("px","")),a=Number(n.naturalHeight.toString().replace("px",""));e.imageAspectRatio=i/a;let{labelStyles:s}=We(e);e.labelStyle=s;let l=r?.wrappingWidth;e.defaultWidth=r?.wrappingWidth;let u=Math.max(e.label?l??0:0,e?.assetWidth??i),h=e.constraint==="on"&&e?.assetHeight?e.assetHeight*e.imageAspectRatio:u,f=e.constraint==="on"?h/e.imageAspectRatio:e?.assetHeight??a;e.width=Math.max(h,l??0);let{shapeSvg:d,bbox:p,label:m}=await lt(t,e,"image-shape default"),g=e.pos==="t",y=-h/2,x=-f/2,v=e.label?8:0,b=je.svg(d),T=Ke(e,{});e.look!=="handDrawn"&&(T.roughness=0,T.fillStyle="solid");let S=b.rectangle(y,x,h,f,T),w=Math.max(h,p.width),E=f+p.height+v,_=b.rectangle(-w/2,-E/2,w,E,{...T,fill:"none",stroke:"none"}),A=d.insert(()=>S,":first-child"),D=d.insert(()=>_);if(e.img){let O=d.append("image");O.attr("href",e.img),O.attr("width",h),O.attr("height",f),O.attr("preserveAspectRatio","none"),O.attr("transform",`translate(${-h/2},${g?E/2-f:-E/2})`)}return m.attr("transform",`translate(${-p.width/2-(p.x-(p.left??0))},${g?-f/2-p.height/2-v/2:f/2-p.height/2+v/2})`),A.attr("transform",`translate(0,${g?p.height/2+v/2:-p.height/2-v/2})`),Xe(e,D),e.intersect=function(O){if(X.info("iconSquare intersect",e,O),!e.label)return He.rect(e,O);let R=e.x??0,k=e.y??0,L=e.height??0,C=[];return g?C=[{x:R-p.width/2,y:k-L/2},{x:R+p.width/2,y:k-L/2},{x:R+p.width/2,y:k-L/2+p.height+v},{x:R+h/2,y:k-L/2+p.height+v},{x:R+h/2,y:k+L/2},{x:R-h/2,y:k+L/2},{x:R-h/2,y:k-L/2+p.height+v},{x:R-p.width/2,y:k-L/2+p.height+v}]:C=[{x:R-h/2,y:k-L/2},{x:R+h/2,y:k-L/2},{x:R+h/2,y:k-L/2+f},{x:R+p.width/2,y:k-L/2+f},{x:R+p.width/2/2,y:k+L/2},{x:R-p.width/2,y:k+L/2},{x:R-p.width/2,y:k-L/2+f},{x:R-h/2,y:k-L/2+f}],He.polygon(e,C,O)},d}var VZ=N(()=>{"use strict";Ut();pt();Vt();Ft();Nt();o(zZ,"imageSquare")});async function UZ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await lt(t,e,rt(e)),s=Math.max(a.width+(e.padding??0)*2,e?.width??0),l=Math.max(a.height+(e.padding??0)*2,e?.height??0),u=[{x:0,y:0},{x:s,y:0},{x:s+3*l/6,y:-l},{x:-3*l/6,y:-l}],h,{cssStyles:f}=e;if(e.look==="handDrawn"){let d=je.svg(i),p=Ke(e,{}),m=zt(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=Ps(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,Xe(e,h),e.intersect=function(d){return He.polygon(e,u,d)},i}var HZ=N(()=>{"use strict";Nt();Vt();Ft();Ut();Qh();o(UZ,"inv_trapezoid")});async function jd(t,e,r){let{labelStyles:n,nodeStyles:i}=We(e);e.labelStyle=n;let{shapeSvg:a,bbox:s}=await lt(t,e,rt(e)),l=Math.max(s.width+r.labelPaddingX*2,e?.width||0),u=Math.max(s.height+r.labelPaddingY*2,e?.height||0),h=-l/2,f=-u/2,d,{rx:p,ry:m}=e,{cssStyles:g}=e;if(r?.rx&&r.ry&&(p=r.rx,m=r.ry),e.look==="handDrawn"){let y=je.svg(a),x=Ke(e,{}),v=p||m?y.path(Bs(h,f,l,u,p||0),x):y.rectangle(h,f,l,u,x);d=a.insert(()=>v,":first-child"),d.attr("class","basic label-container").attr("style",wn(g))}else d=a.insert("rect",":first-child"),d.attr("class","basic label-container").attr("style",i).attr("rx",wn(p)).attr("ry",wn(m)).attr("x",h).attr("y",f).attr("width",l).attr("height",u);return Xe(e,d),e.calcIntersect=function(y,x){return He.rect(y,x)},e.intersect=function(y){return He.rect(e,y)},a}var L2=N(()=>{"use strict";Nt();Vt();Xd();Ft();Ut();tr();o(jd,"drawRect")});async function WZ(t,e){let{shapeSvg:r,bbox:n,label:i}=await lt(t,e,"label"),a=r.insert("rect",":first-child");return a.attr("width",.1).attr("height",.1),r.attr("class","label edgeLabel"),i.attr("transform",`translate(${-(n.width/2)-(n.x-(n.left??0))}, ${-(n.height/2)-(n.y-(n.top??0))})`),Xe(e,a),e.intersect=function(u){return He.rect(e,u)},r}var qZ=N(()=>{"use strict";L2();Nt();Vt();o(WZ,"labelRect")});async function YZ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await lt(t,e,rt(e)),s=Math.max(a.width+(e.padding??0),e?.width??0),l=Math.max(a.height+(e.padding??0),e?.height??0),u=[{x:0,y:0},{x:s+3*l/6,y:0},{x:s,y:-l},{x:-(3*l)/6,y:-l}],h,{cssStyles:f}=e;if(e.look==="handDrawn"){let d=je.svg(i),p=Ke(e,{}),m=zt(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=Ps(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,Xe(e,h),e.intersect=function(d){return He.polygon(e,u,d)},i}var XZ=N(()=>{"use strict";Nt();Vt();Ft();Ut();Qh();o(YZ,"lean_left")});async function jZ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await lt(t,e,rt(e)),s=Math.max(a.width+(e.padding??0),e?.width??0),l=Math.max(a.height+(e.padding??0),e?.height??0),u=[{x:-3*l/6,y:0},{x:s,y:0},{x:s+3*l/6,y:-l},{x:0,y:-l}],h,{cssStyles:f}=e;if(e.look==="handDrawn"){let d=je.svg(i),p=Ke(e,{}),m=zt(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=Ps(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,Xe(e,h),e.intersect=function(d){return He.polygon(e,u,d)},i}var KZ=N(()=>{"use strict";Nt();Vt();Ft();Ut();Qh();o(jZ,"lean_right")});function QZ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.label="",e.labelStyle=r;let i=t.insert("g").attr("class",rt(e)).attr("id",e.domId??e.id),{cssStyles:a}=e,s=Math.max(35,e?.width??0),l=Math.max(35,e?.height??0),u=7,h=[{x:s,y:0},{x:0,y:l+u/2},{x:s-2*u,y:l+u/2},{x:0,y:2*l},{x:s,y:l-u/2},{x:2*u,y:l-u/2}],f=je.svg(i),d=Ke(e,{});e.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let p=zt(h),m=f.path(p,d),g=i.insert(()=>m,":first-child");return a&&e.look!=="handDrawn"&&g.selectAll("path").attr("style",a),n&&e.look!=="handDrawn"&&g.selectAll("path").attr("style",n),g.attr("transform",`translate(-${s/2},${-l})`),Xe(e,g),e.intersect=function(y){return X.info("lightningBolt intersect",e,y),He.polygon(e,h,y)},i}var ZZ=N(()=>{"use strict";pt();Nt();Ft();Ut();Vt();Nt();o(QZ,"lightningBolt")});async function JZ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await lt(t,e,rt(e)),l=Math.max(a.width+(e.padding??0),e.width??0),u=l/2,h=u/(2.5+l/50),f=Math.max(a.height+h+(e.padding??0),e.height??0),d=f*.1,p,{cssStyles:m}=e;if(e.look==="handDrawn"){let g=je.svg(i),y=VDe(0,0,l,f,u,h,d),x=UDe(0,h,l,f,u,h),v=Ke(e,{}),b=g.path(y,v),T=g.path(x,v);i.insert(()=>T,":first-child").attr("class","line"),p=i.insert(()=>b,":first-child"),p.attr("class","basic label-container"),m&&p.attr("style",m)}else{let g=zDe(0,0,l,f,u,h,d);p=i.insert("path",":first-child").attr("d",g).attr("class","basic label-container").attr("style",wn(m)).attr("style",n)}return p.attr("label-offset-y",h),p.attr("transform",`translate(${-l/2}, ${-(f/2+h)})`),Xe(e,p),s.attr("transform",`translate(${-(a.width/2)-(a.x-(a.left??0))}, ${-(a.height/2)+h-(a.y-(a.top??0))})`),e.intersect=function(g){let y=He.rect(e,g),x=y.x-(e.x??0);if(u!=0&&(Math.abs(x)<(e.width??0)/2||Math.abs(x)==(e.width??0)/2&&Math.abs(y.y-(e.y??0))>(e.height??0)/2-h)){let v=h*h*(1-x*x/(u*u));v>0&&(v=Math.sqrt(v)),v=h-v,g.y-(e.y??0)>0&&(v=-v),y.y+=v}return y},i}var zDe,VDe,UDe,eJ=N(()=>{"use strict";Nt();Vt();Ft();Ut();tr();zDe=o((t,e,r,n,i,a,s)=>[`M${t},${e+a}`,`a${i},${a} 0,0,0 ${r},0`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`,`M${t},${e+a+s}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createCylinderPathD"),VDe=o((t,e,r,n,i,a,s)=>[`M${t},${e+a}`,`M${t+r},${e+a}`,`a${i},${a} 0,0,0 ${-r},0`,`l0,${n}`,`a${i},${a} 0,0,0 ${r},0`,`l0,${-n}`,`M${t},${e+a+s}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createOuterCylinderPathD"),UDe=o((t,e,r,n,i,a)=>[`M${t-r/2},${-n/2}`,`a${i},${a} 0,0,0 ${r},0`].join(" "),"createInnerCylinderPathD");o(JZ,"linedCylinder")});async function tJ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await lt(t,e,rt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=u/4,f=u+h,{cssStyles:d}=e,p=je.svg(i),m=Ke(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=[{x:-l/2-l/2*.1,y:-f/2},{x:-l/2-l/2*.1,y:f/2},...Go(-l/2-l/2*.1,f/2,l/2+l/2*.1,f/2,h,.8),{x:l/2+l/2*.1,y:-f/2},{x:-l/2-l/2*.1,y:-f/2},{x:-l/2,y:-f/2},{x:-l/2,y:f/2*1.1},{x:-l/2,y:-f/2}],y=p.polygon(g.map(v=>[v.x,v.y]),m),x=i.insert(()=>y,":first-child");return x.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",d),n&&e.look!=="handDrawn"&&x.selectAll("path").attr("style",n),x.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(e.padding??0)+l/2*.1/2-(a.x-(a.left??0))},${-u/2+(e.padding??0)-h/2-(a.y-(a.top??0))})`),Xe(e,x),e.intersect=function(v){return He.polygon(e,g,v)},i}var rJ=N(()=>{"use strict";Nt();Vt();Ut();Ft();o(tJ,"linedWaveEdgedRect")});async function nJ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await lt(t,e,rt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=5,f=-l/2,d=-u/2,{cssStyles:p}=e,m=je.svg(i),g=Ke(e,{}),y=[{x:f-h,y:d+h},{x:f-h,y:d+u+h},{x:f+l-h,y:d+u+h},{x:f+l-h,y:d+u},{x:f+l,y:d+u},{x:f+l,y:d+u-h},{x:f+l+h,y:d+u-h},{x:f+l+h,y:d-h},{x:f+h,y:d-h},{x:f+h,y:d},{x:f,y:d},{x:f,y:d+h}],x=[{x:f,y:d+h},{x:f+l-h,y:d+h},{x:f+l-h,y:d+u},{x:f+l,y:d+u},{x:f+l,y:d},{x:f,y:d}];e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let v=zt(y),b=m.path(v,g),T=zt(x),S=m.path(T,{...g,fill:"none"}),w=i.insert(()=>S,":first-child");return w.insert(()=>b,":first-child"),w.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&w.selectAll("path").attr("style",p),n&&e.look!=="handDrawn"&&w.selectAll("path").attr("style",n),s.attr("transform",`translate(${-(a.width/2)-h-(a.x-(a.left??0))}, ${-(a.height/2)+h-(a.y-(a.top??0))})`),Xe(e,w),e.intersect=function(E){return He.polygon(e,y,E)},i}var iJ=N(()=>{"use strict";Nt();Ft();Ut();Vt();o(nJ,"multiRect")});async function aJ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await lt(t,e,rt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=u/4,f=u+h,d=-l/2,p=-f/2,m=5,{cssStyles:g}=e,y=Go(d-m,p+f+m,d+l-m,p+f+m,h,.8),x=y?.[y.length-1],v=[{x:d-m,y:p+m},{x:d-m,y:p+f+m},...y,{x:d+l-m,y:x.y-m},{x:d+l,y:x.y-m},{x:d+l,y:x.y-2*m},{x:d+l+m,y:x.y-2*m},{x:d+l+m,y:p-m},{x:d+m,y:p-m},{x:d+m,y:p},{x:d,y:p},{x:d,y:p+m}],b=[{x:d,y:p+m},{x:d+l-m,y:p+m},{x:d+l-m,y:x.y-m},{x:d+l,y:x.y-m},{x:d+l,y:p},{x:d,y:p}],T=je.svg(i),S=Ke(e,{});e.look!=="handDrawn"&&(S.roughness=0,S.fillStyle="solid");let w=zt(v),E=T.path(w,S),_=zt(b),A=T.path(_,S),D=i.insert(()=>E,":first-child");return D.insert(()=>A),D.attr("class","basic label-container"),g&&e.look!=="handDrawn"&&D.selectAll("path").attr("style",g),n&&e.look!=="handDrawn"&&D.selectAll("path").attr("style",n),D.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-(a.width/2)-m-(a.x-(a.left??0))}, ${-(a.height/2)+m-h/2-(a.y-(a.top??0))})`),Xe(e,D),e.intersect=function(O){return He.polygon(e,v,O)},i}var sJ=N(()=>{"use strict";Nt();Vt();Ut();Ft();o(aJ,"multiWaveEdgedRectangle")});async function oJ(t,e,{config:{themeVariables:r}}){let{labelStyles:n,nodeStyles:i}=We(e);e.labelStyle=n,e.useHtmlLabels||Qt().flowchart?.htmlLabels!==!1||(e.centerLabel=!0);let{shapeSvg:s,bbox:l,label:u}=await lt(t,e,rt(e)),h=Math.max(l.width+(e.padding??0)*2,e?.width??0),f=Math.max(l.height+(e.padding??0)*2,e?.height??0),d=-h/2,p=-f/2,{cssStyles:m}=e,g=je.svg(s),y=Ke(e,{fill:r.noteBkgColor,stroke:r.noteBorderColor});e.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let x=g.rectangle(d,p,h,f,y),v=s.insert(()=>x,":first-child");return v.attr("class","basic label-container"),m&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",m),i&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",i),u.attr("transform",`translate(${-l.width/2-(l.x-(l.left??0))}, ${-(l.height/2)-(l.y-(l.top??0))})`),Xe(e,v),e.intersect=function(b){return He.rect(e,b)},s}var lJ=N(()=>{"use strict";Ut();Vt();Ft();Nt();Wn();o(oJ,"note")});async function cJ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await lt(t,e,rt(e)),s=a.width+e.padding,l=a.height+e.padding,u=s+l,h=.5,f=[{x:u/2,y:0},{x:u,y:-u/2},{x:u/2,y:-u},{x:0,y:-u/2}],d,{cssStyles:p}=e;if(e.look==="handDrawn"){let m=je.svg(i),g=Ke(e,{}),y=HDe(0,0,u),x=m.path(y,g);d=i.insert(()=>x,":first-child").attr("transform",`translate(${-u/2+h}, ${u/2})`),p&&d.attr("style",p)}else d=Ps(i,u,u,f),d.attr("transform",`translate(${-u/2+h}, ${u/2})`);return n&&d.attr("style",n),Xe(e,d),e.calcIntersect=function(m,g){let y=m.width,x=[{x:y/2,y:0},{x:y,y:-y/2},{x:y/2,y:-y},{x:0,y:-y/2}],v=He.polygon(m,x,g);return{x:v.x-.5,y:v.y-.5}},e.intersect=function(m){return this.calcIntersect(e,m)},i}var HDe,uJ=N(()=>{"use strict";Nt();Vt();Ft();Ut();Qh();HDe=o((t,e,r)=>[`M${t+r/2},${e}`,`L${t+r},${e-r/2}`,`L${t+r/2},${e-r}`,`L${t},${e-r/2}`,"Z"].join(" "),"createDecisionBoxPathD");o(cJ,"question")});async function hJ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await lt(t,e,rt(e)),l=Math.max(a.width+(e.padding??0),e?.width??0),u=Math.max(a.height+(e.padding??0),e?.height??0),h=-l/2,f=-u/2,d=f/2,p=[{x:h+d,y:f},{x:h,y:0},{x:h+d,y:-f},{x:-h,y:-f},{x:-h,y:f}],{cssStyles:m}=e,g=je.svg(i),y=Ke(e,{});e.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let x=zt(p),v=g.path(x,y),b=i.insert(()=>v,":first-child");return b.attr("class","basic label-container"),m&&e.look!=="handDrawn"&&b.selectAll("path").attr("style",m),n&&e.look!=="handDrawn"&&b.selectAll("path").attr("style",n),b.attr("transform",`translate(${-d/2},0)`),s.attr("transform",`translate(${-d/2-a.width/2-(a.x-(a.left??0))}, ${-(a.height/2)-(a.y-(a.top??0))})`),Xe(e,b),e.intersect=function(T){return He.polygon(e,p,T)},i}var fJ=N(()=>{"use strict";Nt();Vt();Ft();Ut();o(hJ,"rect_left_inv_arrow")});function WDe(t,e){e&&t.attr("style",e)}async function qDe(t){let e=ze(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),r=e.append("xhtml:div"),n=ge(),i=t.label;t.label&&xn(t.label)&&(i=await bh(t.label.replace(Je.lineBreakRegex,`
|
||
`),n));let s='<span class="'+(t.isNode?"nodeLabel":"edgeLabel")+'" '+(t.labelStyle?'style="'+t.labelStyle+'"':"")+">"+i+"</span>";return r.html(ar(s,n)),WDe(r,t.labelStyle),r.style("display","inline-block"),r.style("padding-right","1px"),r.style("white-space","nowrap"),r.attr("xmlns","http://www.w3.org/1999/xhtml"),e.node()}var YDe,Tc,aw=N(()=>{"use strict";pr();Xt();dr();pt();tr();o(WDe,"applyStyle");o(qDe,"addHtmlLabel");YDe=o(async(t,e,r,n)=>{let i=t||"";if(typeof i=="object"&&(i=i[0]),mr(ge().flowchart.htmlLabels)){i=i.replace(/\\n|\n/g,"<br />"),X.info("vertexText"+i);let a={isNode:n,label:ea(i).replace(/fa[blrs]?:fa-[\w-]+/g,l=>`<i class='${l.replace(":"," ")}'></i>`),labelStyle:e&&e.replace("fill:","color:")};return await qDe(a)}else{let a=document.createElementNS("http://www.w3.org/2000/svg","text");a.setAttribute("style",e.replace("color:","fill:"));let s=[];typeof i=="string"?s=i.split(/\\n|\n|<br\s*\/?>/gi):Array.isArray(i)?s=i:s=[];for(let l of s){let u=document.createElementNS("http://www.w3.org/2000/svg","tspan");u.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),u.setAttribute("dy","1em"),u.setAttribute("x","0"),r?u.setAttribute("class","title-row"):u.setAttribute("class","row"),u.textContent=l.trim(),a.appendChild(u)}return a}},"createLabel"),Tc=YDe});async function dJ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let i;e.cssClasses?i="node "+e.cssClasses:i="node default";let a=t.insert("g").attr("class",i).attr("id",e.domId||e.id),s=a.insert("g"),l=a.insert("g").attr("class","label").attr("style",n),u=e.description,h=e.label,f=l.node().appendChild(await Tc(h,e.labelStyle,!0,!0)),d={width:0,height:0};if(mr(ge()?.flowchart?.htmlLabels)){let A=f.children[0],D=ze(f);d=A.getBoundingClientRect(),D.attr("width",d.width),D.attr("height",d.height)}X.info("Text 2",u);let p=u||[],m=f.getBBox(),g=l.node().appendChild(await Tc(p.join?p.join("<br/>"):p,e.labelStyle,!0,!0)),y=g.children[0],x=ze(g);d=y.getBoundingClientRect(),x.attr("width",d.width),x.attr("height",d.height);let v=(e.padding||0)/2;ze(g).attr("transform","translate( "+(d.width>m.width?0:(m.width-d.width)/2)+", "+(m.height+v+5)+")"),ze(f).attr("transform","translate( "+(d.width<m.width?0:-(m.width-d.width)/2)+", 0)"),d=l.node().getBBox(),l.attr("transform","translate("+-d.width/2+", "+(-d.height/2-v+3)+")");let b=d.width+(e.padding||0),T=d.height+(e.padding||0),S=-d.width/2-v,w=-d.height/2-v,E,_;if(e.look==="handDrawn"){let A=je.svg(a),D=Ke(e,{}),O=A.path(Bs(S,w,b,T,e.rx||0),D),R=A.line(-d.width/2-v,-d.height/2-v+m.height+v,d.width/2+v,-d.height/2-v+m.height+v,D);_=a.insert(()=>(X.debug("Rough node insert CXC",O),R),":first-child"),E=a.insert(()=>(X.debug("Rough node insert CXC",O),O),":first-child")}else E=s.insert("rect",":first-child"),_=s.insert("line"),E.attr("class","outer title-state").attr("style",n).attr("x",-d.width/2-v).attr("y",-d.height/2-v).attr("width",d.width+(e.padding||0)).attr("height",d.height+(e.padding||0)),_.attr("class","divider").attr("x1",-d.width/2-v).attr("x2",d.width/2+v).attr("y1",-d.height/2-v+m.height+v).attr("y2",-d.height/2-v+m.height+v);return Xe(e,E),e.intersect=function(A){return He.rect(e,A)},a}var pJ=N(()=>{"use strict";pr();dr();Nt();aw();Vt();Ft();Ut();Xt();Xd();pt();o(dJ,"rectWithTitle")});function sw(t,e,r,n,i,a,s){let u=(t+r)/2,h=(e+n)/2,f=Math.atan2(n-e,r-t),d=(r-t)/2,p=(n-e)/2,m=d/i,g=p/a,y=Math.sqrt(m**2+g**2);if(y>1)throw new Error("The given radii are too small to create an arc between the points.");let x=Math.sqrt(1-y**2),v=u+x*a*Math.sin(f)*(s?-1:1),b=h-x*i*Math.cos(f)*(s?-1:1),T=Math.atan2((e-b)/a,(t-v)/i),w=Math.atan2((n-b)/a,(r-v)/i)-T;s&&w<0&&(w+=2*Math.PI),!s&&w>0&&(w-=2*Math.PI);let E=[];for(let _=0;_<20;_++){let A=_/19,D=T+A*w,O=v+i*Math.cos(D),R=b+a*Math.sin(D);E.push({x:O,y:R})}return E}async function mJ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await lt(t,e,rt(e)),s=e?.padding??0,l=e?.padding??0,u=(e?.width?e?.width:a.width)+s*2,h=(e?.height?e?.height:a.height)+l*2,f=e.radius||5,d=e.taper||5,{cssStyles:p}=e,m=je.svg(i),g=Ke(e,{});e.stroke&&(g.stroke=e.stroke),e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=[{x:-u/2+d,y:-h/2},{x:u/2-d,y:-h/2},...sw(u/2-d,-h/2,u/2,-h/2+d,f,f,!0),{x:u/2,y:-h/2+d},{x:u/2,y:h/2-d},...sw(u/2,h/2-d,u/2-d,h/2,f,f,!0),{x:u/2-d,y:h/2},{x:-u/2+d,y:h/2},...sw(-u/2+d,h/2,-u/2,h/2-d,f,f,!0),{x:-u/2,y:h/2-d},{x:-u/2,y:-h/2+d},...sw(-u/2,-h/2+d,-u/2+d,-h/2,f,f,!0)],x=zt(y),v=m.path(x,g),b=i.insert(()=>v,":first-child");return b.attr("class","basic label-container outer-path"),p&&e.look!=="handDrawn"&&b.selectChildren("path").attr("style",p),n&&e.look!=="handDrawn"&&b.selectChildren("path").attr("style",n),Xe(e,b),e.intersect=function(T){return He.polygon(e,y,T)},i}var gJ=N(()=>{"use strict";Nt();Vt();Ft();Ut();o(sw,"generateArcPoints");o(mJ,"roundedRect")});async function yJ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await lt(t,e,rt(e)),l=e?.padding??0,u=Math.max(a.width+(e.padding??0)*2,e?.width??0),h=Math.max(a.height+(e.padding??0)*2,e?.height??0),f=-a.width/2-l,d=-a.height/2-l,{cssStyles:p}=e,m=je.svg(i),g=Ke(e,{});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=[{x:f,y:d},{x:f+u+8,y:d},{x:f+u+8,y:d+h},{x:f-8,y:d+h},{x:f-8,y:d},{x:f,y:d},{x:f,y:d+h}],x=m.polygon(y.map(b=>[b.x,b.y]),g),v=i.insert(()=>x,":first-child");return v.attr("class","basic label-container").attr("style",wn(p)),n&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",n),p&&e.look!=="handDrawn"&&v.selectAll("path").attr("style",n),s.attr("transform",`translate(${-u/2+4+(e.padding??0)-(a.x-(a.left??0))},${-h/2+(e.padding??0)-(a.y-(a.top??0))})`),Xe(e,v),e.intersect=function(b){return He.rect(e,b)},i}var vJ=N(()=>{"use strict";Nt();Vt();Ft();Ut();tr();o(yJ,"shadedProcess")});async function xJ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await lt(t,e,rt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=-l/2,f=-u/2,{cssStyles:d}=e,p=je.svg(i),m=Ke(e,{});e.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let g=[{x:h,y:f},{x:h,y:f+u},{x:h+l,y:f+u},{x:h+l,y:f-u/2}],y=zt(g),x=p.path(y,m),v=i.insert(()=>x,":first-child");return v.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",d),n&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",n),v.attr("transform",`translate(0, ${u/4})`),s.attr("transform",`translate(${-l/2+(e.padding??0)-(a.x-(a.left??0))}, ${-u/4+(e.padding??0)-(a.y-(a.top??0))})`),Xe(e,v),e.intersect=function(b){return He.polygon(e,g,b)},i}var bJ=N(()=>{"use strict";Nt();Vt();Ft();Ut();o(xJ,"slopedRect")});async function TJ(t,e){let r={rx:0,ry:0,classes:"",labelPaddingX:e.labelPaddingX??(e?.padding||0)*2,labelPaddingY:(e?.padding||0)*1};return jd(t,e,r)}var wJ=N(()=>{"use strict";L2();o(TJ,"squareRect")});async function kJ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await lt(t,e,rt(e)),s=a.height+e.padding,l=a.width+s/4+e.padding,u=s/2,{cssStyles:h}=e,f=je.svg(i),d=Ke(e,{});e.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let p=[{x:-l/2+u,y:-s/2},{x:l/2-u,y:-s/2},...qd(-l/2+u,0,u,50,90,270),{x:l/2-u,y:s/2},...qd(l/2-u,0,u,50,270,450)],m=zt(p),g=f.path(m,d),y=i.insert(()=>g,":first-child");return y.attr("class","basic label-container outer-path"),h&&e.look!=="handDrawn"&&y.selectChildren("path").attr("style",h),n&&e.look!=="handDrawn"&&y.selectChildren("path").attr("style",n),Xe(e,y),e.intersect=function(x){return He.polygon(e,p,x)},i}var EJ=N(()=>{"use strict";Nt();Vt();Ft();Ut();o(kJ,"stadium")});async function SJ(t,e){return jd(t,e,{rx:5,ry:5,classes:"flowchart-node"})}var CJ=N(()=>{"use strict";L2();o(SJ,"state")});function AJ(t,e,{config:{themeVariables:r}}){let{labelStyles:n,nodeStyles:i}=We(e);e.labelStyle=n;let{cssStyles:a}=e,{lineColor:s,stateBorder:l,nodeBorder:u}=r,h=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),f=je.svg(h),d=Ke(e,{});e.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let p=f.circle(0,0,14,{...d,stroke:s,strokeWidth:2}),m=l??u,g=f.circle(0,0,5,{...d,fill:m,stroke:m,strokeWidth:2,fillStyle:"solid"}),y=h.insert(()=>p,":first-child");return y.insert(()=>g),a&&y.selectAll("path").attr("style",a),i&&y.selectAll("path").attr("style",i),Xe(e,y),e.intersect=function(x){return He.circle(e,7,x)},h}var _J=N(()=>{"use strict";Ut();Vt();Ft();Nt();o(AJ,"stateEnd")});function DJ(t,e,{config:{themeVariables:r}}){let{lineColor:n}=r,i=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),a;if(e.look==="handDrawn"){let l=je.svg(i).circle(0,0,14,OQ(n));a=i.insert(()=>l),a.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14)}else a=i.insert("circle",":first-child"),a.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14);return Xe(e,a),e.intersect=function(s){return He.circle(e,7,s)},i}var LJ=N(()=>{"use strict";Ut();Vt();Ft();Nt();o(DJ,"stateStart")});async function RJ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await lt(t,e,rt(e)),s=(e?.padding||0)/2,l=a.width+e.padding,u=a.height+e.padding,h=-a.width/2-s,f=-a.height/2-s,d=[{x:0,y:0},{x:l,y:0},{x:l,y:-u},{x:0,y:-u},{x:0,y:0},{x:-8,y:0},{x:l+8,y:0},{x:l+8,y:-u},{x:-8,y:-u},{x:-8,y:0}];if(e.look==="handDrawn"){let p=je.svg(i),m=Ke(e,{}),g=p.rectangle(h-8,f,l+16,u,m),y=p.line(h,f,h,f+u,m),x=p.line(h+l,f,h+l,f+u,m);i.insert(()=>y,":first-child"),i.insert(()=>x,":first-child");let v=i.insert(()=>g,":first-child"),{cssStyles:b}=e;v.attr("class","basic label-container").attr("style",wn(b)),Xe(e,v)}else{let p=Ps(i,l,u,d);n&&p.attr("style",n),Xe(e,p)}return e.intersect=function(p){return He.polygon(e,d,p)},i}var NJ=N(()=>{"use strict";Nt();Vt();Ft();Ut();Qh();tr();o(RJ,"subroutine")});async function MJ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await lt(t,e,rt(e)),s=Math.max(a.width+(e.padding??0)*2,e?.width??0),l=Math.max(a.height+(e.padding??0)*2,e?.height??0),u=-s/2,h=-l/2,f=.2*l,d=.2*l,{cssStyles:p}=e,m=je.svg(i),g=Ke(e,{}),y=[{x:u-f/2,y:h},{x:u+s+f/2,y:h},{x:u+s+f/2,y:h+l},{x:u-f/2,y:h+l}],x=[{x:u+s-f/2,y:h+l},{x:u+s+f/2,y:h+l},{x:u+s+f/2,y:h+l-d}];e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let v=zt(y),b=m.path(v,g),T=zt(x),S=m.path(T,{...g,fillStyle:"solid"}),w=i.insert(()=>S,":first-child");return w.insert(()=>b,":first-child"),w.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&w.selectAll("path").attr("style",p),n&&e.look!=="handDrawn"&&w.selectAll("path").attr("style",n),Xe(e,w),e.intersect=function(E){return He.polygon(e,y,E)},i}var IJ=N(()=>{"use strict";Nt();Ft();Ut();Vt();o(MJ,"taggedRect")});async function OJ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await lt(t,e,rt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=u/4,f=.2*l,d=.2*u,p=u+h,{cssStyles:m}=e,g=je.svg(i),y=Ke(e,{});e.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let x=[{x:-l/2-l/2*.1,y:p/2},...Go(-l/2-l/2*.1,p/2,l/2+l/2*.1,p/2,h,.8),{x:l/2+l/2*.1,y:-p/2},{x:-l/2-l/2*.1,y:-p/2}],v=-l/2+l/2*.1,b=-p/2-d*.4,T=[{x:v+l-f,y:(b+u)*1.4},{x:v+l,y:b+u-d},{x:v+l,y:(b+u)*.9},...Go(v+l,(b+u)*1.3,v+l-f,(b+u)*1.5,-u*.03,.5)],S=zt(x),w=g.path(S,y),E=zt(T),_=g.path(E,{...y,fillStyle:"solid"}),A=i.insert(()=>_,":first-child");return A.insert(()=>w,":first-child"),A.attr("class","basic label-container"),m&&e.look!=="handDrawn"&&A.selectAll("path").attr("style",m),n&&e.look!=="handDrawn"&&A.selectAll("path").attr("style",n),A.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(e.padding??0)-(a.x-(a.left??0))},${-u/2+(e.padding??0)-h/2-(a.y-(a.top??0))})`),Xe(e,A),e.intersect=function(D){return He.polygon(e,x,D)},i}var PJ=N(()=>{"use strict";Nt();Vt();Ut();Ft();o(OJ,"taggedWaveEdgedRectangle")});async function BJ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await lt(t,e,rt(e)),s=Math.max(a.width+e.padding,e?.width||0),l=Math.max(a.height+e.padding,e?.height||0),u=-s/2,h=-l/2,f=i.insert("rect",":first-child");return f.attr("class","text").attr("style",n).attr("rx",0).attr("ry",0).attr("x",u).attr("y",h).attr("width",s).attr("height",l),Xe(e,f),e.intersect=function(d){return He.rect(e,d)},i}var FJ=N(()=>{"use strict";Nt();Vt();Ft();o(BJ,"text")});async function $J(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s,halfPadding:l}=await lt(t,e,rt(e)),u=e.look==="neo"?l*2:l,h=a.height+u,f=h/2,d=f/(2.5+h/50),p=a.width+d+u,{cssStyles:m}=e,g;if(e.look==="handDrawn"){let y=je.svg(i),x=jDe(0,0,p,h,d,f),v=KDe(0,0,p,h,d,f),b=y.path(x,Ke(e,{})),T=y.path(v,Ke(e,{fill:"none"}));g=i.insert(()=>T,":first-child"),g=i.insert(()=>b,":first-child"),g.attr("class","basic label-container"),m&&g.attr("style",m)}else{let y=XDe(0,0,p,h,d,f);g=i.insert("path",":first-child").attr("d",y).attr("class","basic label-container").attr("style",wn(m)).attr("style",n),g.attr("class","basic label-container"),m&&g.selectAll("path").attr("style",m),n&&g.selectAll("path").attr("style",n)}return g.attr("label-offset-x",d),g.attr("transform",`translate(${-p/2}, ${h/2} )`),s.attr("transform",`translate(${-(a.width/2)-d-(a.x-(a.left??0))}, ${-(a.height/2)-(a.y-(a.top??0))})`),Xe(e,g),e.intersect=function(y){let x=He.rect(e,y),v=x.y-(e.y??0);if(f!=0&&(Math.abs(v)<(e.height??0)/2||Math.abs(v)==(e.height??0)/2&&Math.abs(x.x-(e.x??0))>(e.width??0)/2-d)){let b=d*d*(1-v*v/(f*f));b!=0&&(b=Math.sqrt(Math.abs(b))),b=d-b,y.x-(e.x??0)>0&&(b=-b),x.x+=b}return x},i}var XDe,jDe,KDe,GJ=N(()=>{"use strict";Nt();Ft();Ut();Vt();tr();XDe=o((t,e,r,n,i,a)=>`M${t},${e}
|
||
a${i},${a} 0,0,1 0,${-n}
|
||
l${r},0
|
||
a${i},${a} 0,0,1 0,${n}
|
||
M${r},${-n}
|
||
a${i},${a} 0,0,0 0,${n}
|
||
l${-r},0`,"createCylinderPathD"),jDe=o((t,e,r,n,i,a)=>[`M${t},${e}`,`M${t+r},${e}`,`a${i},${a} 0,0,0 0,${-n}`,`l${-r},0`,`a${i},${a} 0,0,0 0,${n}`,`l${r},0`].join(" "),"createOuterCylinderPathD"),KDe=o((t,e,r,n,i,a)=>[`M${t+r/2},${-n/2}`,`a${i},${a} 0,0,0 0,${n}`].join(" "),"createInnerCylinderPathD");o($J,"tiltedCylinder")});async function zJ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await lt(t,e,rt(e)),s=a.width+e.padding,l=a.height+e.padding,u=[{x:-3*l/6,y:0},{x:s+3*l/6,y:0},{x:s,y:-l},{x:0,y:-l}],h,{cssStyles:f}=e;if(e.look==="handDrawn"){let d=je.svg(i),p=Ke(e,{}),m=zt(u),g=d.path(m,p);h=i.insert(()=>g,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),f&&h.attr("style",f)}else h=Ps(i,s,l,u);return n&&h.attr("style",n),e.width=s,e.height=l,Xe(e,h),e.intersect=function(d){return He.polygon(e,u,d)},i}var VJ=N(()=>{"use strict";Nt();Vt();Ft();Ut();Qh();o(zJ,"trapezoid")});async function UJ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await lt(t,e,rt(e)),s=60,l=20,u=Math.max(s,a.width+(e.padding??0)*2,e?.width??0),h=Math.max(l,a.height+(e.padding??0)*2,e?.height??0),{cssStyles:f}=e,d=je.svg(i),p=Ke(e,{});e.look!=="handDrawn"&&(p.roughness=0,p.fillStyle="solid");let m=[{x:-u/2*.8,y:-h/2},{x:u/2*.8,y:-h/2},{x:u/2,y:-h/2*.6},{x:u/2,y:h/2},{x:-u/2,y:h/2},{x:-u/2,y:-h/2*.6}],g=zt(m),y=d.path(g,p),x=i.insert(()=>y,":first-child");return x.attr("class","basic label-container"),f&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",f),n&&e.look!=="handDrawn"&&x.selectChildren("path").attr("style",n),Xe(e,x),e.intersect=function(v){return He.polygon(e,m,v)},i}var HJ=N(()=>{"use strict";Nt();Vt();Ft();Ut();o(UJ,"trapezoidalPentagon")});async function WJ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await lt(t,e,rt(e)),l=mr(ge().flowchart?.htmlLabels),u=a.width+(e.padding??0),h=u+a.height,f=u+a.height,d=[{x:0,y:0},{x:f,y:0},{x:f/2,y:-h}],{cssStyles:p}=e,m=je.svg(i),g=Ke(e,{});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=zt(d),x=m.path(y,g),v=i.insert(()=>x,":first-child").attr("transform",`translate(${-h/2}, ${h/2})`);return p&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",p),n&&e.look!=="handDrawn"&&v.selectChildren("path").attr("style",n),e.width=u,e.height=h,Xe(e,v),s.attr("transform",`translate(${-a.width/2-(a.x-(a.left??0))}, ${h/2-(a.height+(e.padding??0)/(l?2:1)-(a.y-(a.top??0)))})`),e.intersect=function(b){return X.info("Triangle intersect",e,d,b),He.polygon(e,d,b)},i}var qJ=N(()=>{"use strict";pt();Nt();Vt();Ft();Ut();Nt();dr();Xt();o(WJ,"triangle")});async function YJ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await lt(t,e,rt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=u/8,f=u+h,{cssStyles:d}=e,m=70-l,g=m>0?m/2:0,y=je.svg(i),x=Ke(e,{});e.look!=="handDrawn"&&(x.roughness=0,x.fillStyle="solid");let v=[{x:-l/2-g,y:f/2},...Go(-l/2-g,f/2,l/2+g,f/2,h,.8),{x:l/2+g,y:-f/2},{x:-l/2-g,y:-f/2}],b=zt(v),T=y.path(b,x),S=i.insert(()=>T,":first-child");return S.attr("class","basic label-container"),d&&e.look!=="handDrawn"&&S.selectAll("path").attr("style",d),n&&e.look!=="handDrawn"&&S.selectAll("path").attr("style",n),S.attr("transform",`translate(0,${-h/2})`),s.attr("transform",`translate(${-l/2+(e.padding??0)-(a.x-(a.left??0))},${-u/2+(e.padding??0)-h-(a.y-(a.top??0))})`),Xe(e,S),e.intersect=function(w){return He.polygon(e,v,w)},i}var XJ=N(()=>{"use strict";Nt();Vt();Ut();Ft();o(YJ,"waveEdgedRectangle")});async function jJ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a}=await lt(t,e,rt(e)),s=100,l=50,u=Math.max(a.width+(e.padding??0)*2,e?.width??0),h=Math.max(a.height+(e.padding??0)*2,e?.height??0),f=u/h,d=u,p=h;d>p*f?p=d/f:d=p*f,d=Math.max(d,s),p=Math.max(p,l);let m=Math.min(p*.2,p/4),g=p+m*2,{cssStyles:y}=e,x=je.svg(i),v=Ke(e,{});e.look!=="handDrawn"&&(v.roughness=0,v.fillStyle="solid");let b=[{x:-d/2,y:g/2},...Go(-d/2,g/2,d/2,g/2,m,1),{x:d/2,y:-g/2},...Go(d/2,-g/2,-d/2,-g/2,m,-1)],T=zt(b),S=x.path(T,v),w=i.insert(()=>S,":first-child");return w.attr("class","basic label-container"),y&&e.look!=="handDrawn"&&w.selectAll("path").attr("style",y),n&&e.look!=="handDrawn"&&w.selectAll("path").attr("style",n),Xe(e,w),e.intersect=function(E){return He.polygon(e,b,E)},i}var KJ=N(()=>{"use strict";Nt();Vt();Ft();Ut();o(jJ,"waveRectangle")});async function QJ(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,label:s}=await lt(t,e,rt(e)),l=Math.max(a.width+(e.padding??0)*2,e?.width??0),u=Math.max(a.height+(e.padding??0)*2,e?.height??0),h=5,f=-l/2,d=-u/2,{cssStyles:p}=e,m=je.svg(i),g=Ke(e,{}),y=[{x:f-h,y:d-h},{x:f-h,y:d+u},{x:f+l,y:d+u},{x:f+l,y:d-h}],x=`M${f-h},${d-h} L${f+l},${d-h} L${f+l},${d+u} L${f-h},${d+u} L${f-h},${d-h}
|
||
M${f-h},${d} L${f+l},${d}
|
||
M${f},${d-h} L${f},${d+u}`;e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let v=m.path(x,g),b=i.insert(()=>v,":first-child");return b.attr("transform",`translate(${h/2}, ${h/2})`),b.attr("class","basic label-container"),p&&e.look!=="handDrawn"&&b.selectAll("path").attr("style",p),n&&e.look!=="handDrawn"&&b.selectAll("path").attr("style",n),s.attr("transform",`translate(${-(a.width/2)+h/2-(a.x-(a.left??0))}, ${-(a.height/2)+h/2-(a.y-(a.top??0))})`),Xe(e,b),e.intersect=function(T){return He.polygon(e,y,T)},i}var ZJ=N(()=>{"use strict";Nt();Ft();Ut();Vt();o(QJ,"windowPane")});async function F9(t,e){let r=e;if(r.alias&&(e.label=r.alias),e.look==="handDrawn"){let{themeVariables:U}=Qt(),{background:K}=U,ne={...e,id:e.id+"-background",look:"default",cssStyles:["stroke: none",`fill: ${K}`]};await F9(t,ne)}let n=Qt();e.useHtmlLabels=n.htmlLabels;let i=n.er?.diagramPadding??10,a=n.er?.entityPadding??6,{cssStyles:s}=e,{labelStyles:l,nodeStyles:u}=We(e);if(r.attributes.length===0&&e.label){let U={rx:0,ry:0,labelPaddingX:i,labelPaddingY:i*1.5,classes:""};Ji(e.label,n)+U.labelPaddingX*2<n.er.minEntityWidth&&(e.width=n.er.minEntityWidth);let K=await jd(t,e,U);if(!mr(n.htmlLabels)){let ne=K.select("text"),j=ne.node()?.getBBox();ne.attr("transform",`translate(${-j.width/2}, 0)`)}return K}n.htmlLabels||(i*=1.25,a*=1.25);let h=rt(e);h||(h="node default");let f=t.insert("g").attr("class",h).attr("id",e.domId||e.id),d=await R2(f,e.label??"",n,0,0,["name"],l);d.height+=a;let p=0,m=[],g=[],y=0,x=0,v=0,b=0,T=!0,S=!0;for(let U of r.attributes){let K=await R2(f,U.type,n,0,p,["attribute-type"],l);y=Math.max(y,K.width+i);let ne=await R2(f,U.name,n,0,p,["attribute-name"],l);x=Math.max(x,ne.width+i);let j=await R2(f,U.keys.join(),n,0,p,["attribute-keys"],l);v=Math.max(v,j.width+i);let le=await R2(f,U.comment,n,0,p,["attribute-comment"],l);b=Math.max(b,le.width+i);let Z=Math.max(K.height,ne.height,j.height,le.height)+a;g.push({yOffset:p,rowHeight:Z}),p+=Z}let w=4;v<=i&&(T=!1,v=0,w--),b<=i&&(S=!1,b=0,w--);let E=f.node().getBBox();if(d.width+i*2-(y+x+v+b)>0){let U=d.width+i*2-(y+x+v+b);y+=U/w,x+=U/w,v>0&&(v+=U/w),b>0&&(b+=U/w)}let _=y+x+v+b,A=je.svg(f),D=Ke(e,{});e.look!=="handDrawn"&&(D.roughness=0,D.fillStyle="solid");let O=0;g.length>0&&(O=g.reduce((U,K)=>U+(K?.rowHeight??0),0));let R=Math.max(E.width+i*2,e?.width||0,_),k=Math.max((O??0)+d.height,e?.height||0),L=-R/2,C=-k/2;f.selectAll("g:not(:first-child)").each((U,K,ne)=>{let j=ze(ne[K]),le=j.attr("transform"),Z=0,ce=0;if(le){let ee=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(le);ee&&(Z=parseFloat(ee[1]),ce=parseFloat(ee[2]),j.attr("class").includes("attribute-name")?Z+=y:j.attr("class").includes("attribute-keys")?Z+=y+x:j.attr("class").includes("attribute-comment")&&(Z+=y+x+v))}j.attr("transform",`translate(${L+i/2+Z}, ${ce+C+d.height+a/2})`)}),f.select(".name").attr("transform","translate("+-d.width/2+", "+(C+a/2)+")");let I=A.rectangle(L,C,R,k,D),M=f.insert(()=>I,":first-child").attr("style",s.join("")),{themeVariables:P}=Qt(),{rowEven:B,rowOdd:F,nodeBorder:G}=P;m.push(0);for(let[U,K]of g.entries()){let j=(U+1)%2===0&&K.yOffset!==0,le=A.rectangle(L,d.height+C+K?.yOffset,R,K?.rowHeight,{...D,fill:j?B:F,stroke:G});f.insert(()=>le,"g.label").attr("style",s.join("")).attr("class",`row-rect-${j?"even":"odd"}`)}let $=A.line(L,d.height+C,R+L,d.height+C,D);f.insert(()=>$).attr("class","divider"),$=A.line(y+L,d.height+C,y+L,k+C,D),f.insert(()=>$).attr("class","divider"),T&&($=A.line(y+x+L,d.height+C,y+x+L,k+C,D),f.insert(()=>$).attr("class","divider")),S&&($=A.line(y+x+v+L,d.height+C,y+x+v+L,k+C,D),f.insert(()=>$).attr("class","divider"));for(let U of m)$=A.line(L,d.height+C+U,R+L,d.height+C+U,D),f.insert(()=>$).attr("class","divider");if(Xe(e,M),u&&e.look!=="handDrawn"){let K=u.split(";")?.filter(ne=>ne.includes("stroke"))?.map(ne=>`${ne}`).join("; ");f.selectAll("path").attr("style",K??""),f.selectAll(".row-rect-even path").attr("style",u)}return e.intersect=function(U){return He.rect(e,U)},f}async function R2(t,e,r,n=0,i=0,a=[],s=""){let l=t.insert("g").attr("class",`label ${a.join(" ")}`).attr("transform",`translate(${n}, ${i})`).attr("style",s);e!==tc(e)&&(e=tc(e),e=e.replaceAll("<","<").replaceAll(">",">"));let u=l.node().appendChild(await pi(l,e,{width:Ji(e,r)+100,style:s,useHtmlLabels:r.htmlLabels},r));if(e.includes("<")||e.includes(">")){let f=u.children[0];for(f.textContent=f.textContent.replaceAll("<","<").replaceAll(">",">");f.childNodes[0];)f=f.childNodes[0],f.textContent=f.textContent.replaceAll("<","<").replaceAll(">",">")}let h=u.getBBox();if(mr(r.htmlLabels)){let f=u.children[0];f.style.textAlign="start";let d=ze(u);h=f.getBoundingClientRect(),d.attr("width",h.width),d.attr("height",h.height)}return h}var JJ=N(()=>{"use strict";Nt();Vt();Ft();Ut();L2();Wn();$o();dr();pr();tr();o(F9,"erBox");o(R2,"addText")});async function eee(t,e,r,n,i=r.class.padding??12){let a=n?0:3,s=t.insert("g").attr("class",rt(e)).attr("id",e.domId||e.id),l=null,u=null,h=null,f=null,d=0,p=0,m=0;if(l=s.insert("g").attr("class","annotation-group text"),e.annotations.length>0){let b=e.annotations[0];await ow(l,{text:`\xAB${b}\xBB`},0),d=l.node().getBBox().height}u=s.insert("g").attr("class","label-group text"),await ow(u,e,0,["font-weight: bolder"]);let g=u.node().getBBox();p=g.height,h=s.insert("g").attr("class","members-group text");let y=0;for(let b of e.members){let T=await ow(h,b,y,[b.parseClassifier()]);y+=T+a}m=h.node().getBBox().height,m<=0&&(m=i/2),f=s.insert("g").attr("class","methods-group text");let x=0;for(let b of e.methods){let T=await ow(f,b,x,[b.parseClassifier()]);x+=T+a}let v=s.node().getBBox();if(l!==null){let b=l.node().getBBox();l.attr("transform",`translate(${-b.width/2})`)}return u.attr("transform",`translate(${-g.width/2}, ${d})`),v=s.node().getBBox(),h.attr("transform",`translate(0, ${d+p+i*2})`),v=s.node().getBBox(),f.attr("transform",`translate(0, ${d+p+(m?m+i*4:i*2)})`),v=s.node().getBBox(),{shapeSvg:s,bbox:v}}async function ow(t,e,r,n=[]){let i=t.insert("g").attr("class","label").attr("style",n.join("; ")),a=Qt(),s="useHtmlLabels"in e?e.useHtmlLabels:mr(a.htmlLabels)??!0,l="";"text"in e?l=e.text:l=e.label,!s&&l.startsWith("\\")&&(l=l.substring(1)),xn(l)&&(s=!0);let u=await pi(i,rv(ea(l)),{width:Ji(l,a)+50,classes:"markdown-node-label",useHtmlLabels:s},a),h,f=1;if(s){let d=u.children[0],p=ze(u);f=d.innerHTML.split("<br>").length,d.innerHTML.includes("</math>")&&(f+=d.innerHTML.split("<mrow>").length-1);let m=d.getElementsByTagName("img");if(m){let g=l.replace(/<img[^>]*>/g,"").trim()==="";await Promise.all([...m].map(y=>new Promise(x=>{function v(){if(y.style.display="flex",y.style.flexDirection="column",g){let b=a.fontSize?.toString()??window.getComputedStyle(document.body).fontSize,S=parseInt(b,10)*5+"px";y.style.minWidth=S,y.style.maxWidth=S}else y.style.width="100%";x(y)}o(v,"setupImage"),setTimeout(()=>{y.complete&&v()}),y.addEventListener("error",v),y.addEventListener("load",v)})))}h=d.getBoundingClientRect(),p.attr("width",h.width),p.attr("height",h.height)}else{n.includes("font-weight: bolder")&&ze(u).selectAll("tspan").attr("font-weight",""),f=u.children.length;let d=u.children[0];(u.textContent===""||u.textContent.includes(">"))&&(d.textContent=l[0]+l.substring(1).replaceAll(">",">").replaceAll("<","<").trim(),l[1]===" "&&(d.textContent=d.textContent[0]+" "+d.textContent.substring(1))),d.textContent==="undefined"&&(d.textContent=""),h=u.getBBox()}return i.attr("transform","translate(0,"+(-h.height/(2*f)+r)+")"),h.height}var tee=N(()=>{"use strict";pr();Wn();Nt();tr();Xt();$o();dr();o(eee,"textHelper");o(ow,"addText")});async function ree(t,e){let r=ge(),n=r.class.padding??12,i=n,a=e.useHtmlLabels??mr(r.htmlLabels)??!0,s=e;s.annotations=s.annotations??[],s.members=s.members??[],s.methods=s.methods??[];let{shapeSvg:l,bbox:u}=await eee(t,e,r,a,i),{labelStyles:h,nodeStyles:f}=We(e);e.labelStyle=h,e.cssStyles=s.styles||"";let d=s.styles?.join(";")||f||"";e.cssStyles||(e.cssStyles=d.replaceAll("!important","").split(";"));let p=s.members.length===0&&s.methods.length===0&&!r.class?.hideEmptyMembersBox,m=je.svg(l),g=Ke(e,{});e.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let y=u.width,x=u.height;s.members.length===0&&s.methods.length===0?x+=i:s.members.length>0&&s.methods.length===0&&(x+=i*2);let v=-y/2,b=-x/2,T=m.rectangle(v-n,b-n-(p?n:s.members.length===0&&s.methods.length===0?-n/2:0),y+2*n,x+2*n+(p?n*2:s.members.length===0&&s.methods.length===0?-n:0),g),S=l.insert(()=>T,":first-child");S.attr("class","basic label-container");let w=S.node().getBBox();l.selectAll(".text").each((D,O,R)=>{let k=ze(R[O]),L=k.attr("transform"),C=0;if(L){let B=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(L);B&&(C=parseFloat(B[2]))}let I=C+b+n-(p?n:s.members.length===0&&s.methods.length===0?-n/2:0);a||(I-=4);let M=v;(k.attr("class").includes("label-group")||k.attr("class").includes("annotation-group"))&&(M=-k.node()?.getBBox().width/2||0,l.selectAll("text").each(function(P,B,F){window.getComputedStyle(F[B]).textAnchor==="middle"&&(M=0)})),k.attr("transform",`translate(${M}, ${I})`)});let E=l.select(".annotation-group").node().getBBox().height-(p?n/2:0)||0,_=l.select(".label-group").node().getBBox().height-(p?n/2:0)||0,A=l.select(".members-group").node().getBBox().height-(p?n/2:0)||0;if(s.members.length>0||s.methods.length>0||p){let D=m.line(w.x,E+_+b+n,w.x+w.width,E+_+b+n,g);l.insert(()=>D).attr("class","divider").attr("style",d)}if(p||s.members.length>0||s.methods.length>0){let D=m.line(w.x,E+_+A+b+i*2+n,w.x+w.width,E+_+A+b+n+i*2,g);l.insert(()=>D).attr("class","divider").attr("style",d)}if(s.look!=="handDrawn"&&l.selectAll("path").attr("style",d),S.select(":nth-child(2)").attr("style",d),l.selectAll(".divider").select("path").attr("style",d),e.labelStyle?l.selectAll("span").attr("style",e.labelStyle):l.selectAll("span").attr("style",d),!a){let D=RegExp(/color\s*:\s*([^;]*)/),O=D.exec(d);if(O){let R=O[0].replace("color","fill");l.selectAll("tspan").attr("style",R)}else if(h){let R=D.exec(h);if(R){let k=R[0].replace("color","fill");l.selectAll("tspan").attr("style",k)}}}return Xe(e,S),e.intersect=function(D){return He.rect(e,D)},l}var nee=N(()=>{"use strict";Nt();Xt();pr();Ut();Ft();Vt();tee();dr();o(ree,"classBox")});async function iee(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let i=e,a=e,s=20,l=20,u="verifyMethod"in e,h=rt(e),f=t.insert("g").attr("class",h).attr("id",e.domId??e.id),d;u?d=await Mu(f,`<<${i.type}>>`,0,e.labelStyle):d=await Mu(f,"<<Element>>",0,e.labelStyle);let p=d,m=await Mu(f,i.name,p,e.labelStyle+"; font-weight: bold;");if(p+=m+l,u){let E=await Mu(f,`${i.requirementId?`ID: ${i.requirementId}`:""}`,p,e.labelStyle);p+=E;let _=await Mu(f,`${i.text?`Text: ${i.text}`:""}`,p,e.labelStyle);p+=_;let A=await Mu(f,`${i.risk?`Risk: ${i.risk}`:""}`,p,e.labelStyle);p+=A,await Mu(f,`${i.verifyMethod?`Verification: ${i.verifyMethod}`:""}`,p,e.labelStyle)}else{let E=await Mu(f,`${a.type?`Type: ${a.type}`:""}`,p,e.labelStyle);p+=E,await Mu(f,`${a.docRef?`Doc Ref: ${a.docRef}`:""}`,p,e.labelStyle)}let g=(f.node()?.getBBox().width??200)+s,y=(f.node()?.getBBox().height??200)+s,x=-g/2,v=-y/2,b=je.svg(f),T=Ke(e,{});e.look!=="handDrawn"&&(T.roughness=0,T.fillStyle="solid");let S=b.rectangle(x,v,g,y,T),w=f.insert(()=>S,":first-child");if(w.attr("class","basic label-container").attr("style",n),f.selectAll(".label").each((E,_,A)=>{let D=ze(A[_]),O=D.attr("transform"),R=0,k=0;if(O){let M=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(O);M&&(R=parseFloat(M[1]),k=parseFloat(M[2]))}let L=k-y/2,C=x+s/2;(_===0||_===1)&&(C=R),D.attr("transform",`translate(${C}, ${L+s})`)}),p>d+m+l){let E=b.line(x,v+d+m+l,x+g,v+d+m+l,T);f.insert(()=>E).attr("style",n)}return Xe(e,w),e.intersect=function(E){return He.rect(e,E)},f}async function Mu(t,e,r,n=""){if(e==="")return 0;let i=t.insert("g").attr("class","label").attr("style",n),a=ge(),s=a.htmlLabels??!0,l=await pi(i,rv(ea(e)),{width:Ji(e,a)+50,classes:"markdown-node-label",useHtmlLabels:s,style:n},a),u;if(s){let h=l.children[0],f=ze(l);u=h.getBoundingClientRect(),f.attr("width",u.width),f.attr("height",u.height)}else{let h=l.children[0];for(let f of h.children)f.textContent=f.textContent.replaceAll(">",">").replaceAll("<","<"),n&&f.setAttribute("style",n);u=l.getBBox(),u.height+=6}return i.attr("transform",`translate(${-u.width/2},${-u.height/2+r})`),u.height}var aee=N(()=>{"use strict";Nt();Vt();Ft();Ut();tr();Xt();$o();pr();o(iee,"requirementBox");o(Mu,"addText")});async function see(t,e,{config:r}){let{labelStyles:n,nodeStyles:i}=We(e);e.labelStyle=n||"";let a=10,s=e.width;e.width=(e.width??200)-10;let{shapeSvg:l,bbox:u,label:h}=await lt(t,e,rt(e)),f=e.padding||10,d="",p;"ticket"in e&&e.ticket&&r?.kanban?.ticketBaseUrl&&(d=r?.kanban?.ticketBaseUrl.replace("#TICKET#",e.ticket),p=l.insert("svg:a",":first-child").attr("class","kanban-ticket-link").attr("xlink:href",d).attr("target","_blank"));let m={useHtmlLabels:e.useHtmlLabels,labelStyle:e.labelStyle||"",width:e.width,img:e.img,padding:e.padding||8,centerLabel:!1},g,y;p?{label:g,bbox:y}=await YT(p,"ticket"in e&&e.ticket||"",m):{label:g,bbox:y}=await YT(l,"ticket"in e&&e.ticket||"",m);let{label:x,bbox:v}=await YT(l,"assigned"in e&&e.assigned||"",m);e.width=s;let b=10,T=e?.width||0,S=Math.max(y.height,v.height)/2,w=Math.max(u.height+b*2,e?.height||0)+S,E=-T/2,_=-w/2;h.attr("transform","translate("+(f-T/2)+", "+(-S-u.height/2)+")"),g.attr("transform","translate("+(f-T/2)+", "+(-S+u.height/2)+")"),x.attr("transform","translate("+(f+T/2-v.width-2*a)+", "+(-S+u.height/2)+")");let A,{rx:D,ry:O}=e,{cssStyles:R}=e;if(e.look==="handDrawn"){let k=je.svg(l),L=Ke(e,{}),C=D||O?k.path(Bs(E,_,T,w,D||0),L):k.rectangle(E,_,T,w,L);A=l.insert(()=>C,":first-child"),A.attr("class","basic label-container").attr("style",R||null)}else{A=l.insert("rect",":first-child"),A.attr("class","basic label-container __APA__").attr("style",i).attr("rx",D??5).attr("ry",O??5).attr("x",E).attr("y",_).attr("width",T).attr("height",w);let k="priority"in e&&e.priority;if(k){let L=l.append("line"),C=E+2,I=_+Math.floor((D??0)/2),M=_+w-Math.floor((D??0)/2);L.attr("x1",C).attr("y1",I).attr("x2",C).attr("y2",M).attr("stroke-width","4").attr("stroke",QDe(k))}}return Xe(e,A),e.height=w,e.intersect=function(k){return He.rect(e,k)},l}var QDe,oee=N(()=>{"use strict";Nt();Vt();Xd();Ft();Ut();QDe=o(t=>{switch(t){case"Very High":return"red";case"High":return"orange";case"Medium":return null;case"Low":return"blue";case"Very Low":return"lightblue"}},"colorFromPriority");o(see,"kanbanItem")});async function lee(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s,label:l}=await lt(t,e,rt(e)),u=a.width+10*s,h=a.height+8*s,f=.15*u,{cssStyles:d}=e,p=a.width+20,m=a.height+20,g=Math.max(u,p),y=Math.max(h,m);l.attr("transform",`translate(${-a.width/2}, ${-a.height/2})`);let x,v=`M0 0
|
||
a${f},${f} 1 0,0 ${g*.25},${-1*y*.1}
|
||
a${f},${f} 1 0,0 ${g*.25},0
|
||
a${f},${f} 1 0,0 ${g*.25},0
|
||
a${f},${f} 1 0,0 ${g*.25},${y*.1}
|
||
|
||
a${f},${f} 1 0,0 ${g*.15},${y*.33}
|
||
a${f*.8},${f*.8} 1 0,0 0,${y*.34}
|
||
a${f},${f} 1 0,0 ${-1*g*.15},${y*.33}
|
||
|
||
a${f},${f} 1 0,0 ${-1*g*.25},${y*.15}
|
||
a${f},${f} 1 0,0 ${-1*g*.25},0
|
||
a${f},${f} 1 0,0 ${-1*g*.25},0
|
||
a${f},${f} 1 0,0 ${-1*g*.25},${-1*y*.15}
|
||
|
||
a${f},${f} 1 0,0 ${-1*g*.1},${-1*y*.33}
|
||
a${f*.8},${f*.8} 1 0,0 0,${-1*y*.34}
|
||
a${f},${f} 1 0,0 ${g*.1},${-1*y*.33}
|
||
H0 V0 Z`;if(e.look==="handDrawn"){let b=je.svg(i),T=Ke(e,{}),S=b.path(v,T);x=i.insert(()=>S,":first-child"),x.attr("class","basic label-container").attr("style",wn(d))}else x=i.insert("path",":first-child").attr("class","basic label-container").attr("style",n).attr("d",v);return x.attr("transform",`translate(${-g/2}, ${-y/2})`),Xe(e,x),e.calcIntersect=function(b,T){return He.rect(b,T)},e.intersect=function(b){return X.info("Bang intersect",e,b),He.rect(e,b)},i}var cee=N(()=>{"use strict";pt();Nt();Vt();Ft();Ut();tr();o(lee,"bang")});async function uee(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s,label:l}=await lt(t,e,rt(e)),u=a.width+2*s,h=a.height+2*s,f=.15*u,d=.25*u,p=.35*u,m=.2*u,{cssStyles:g}=e,y,x=`M0 0
|
||
a${f},${f} 0 0,1 ${u*.25},${-1*u*.1}
|
||
a${p},${p} 1 0,1 ${u*.4},${-1*u*.1}
|
||
a${d},${d} 1 0,1 ${u*.35},${u*.2}
|
||
|
||
a${f},${f} 1 0,1 ${u*.15},${h*.35}
|
||
a${m},${m} 1 0,1 ${-1*u*.15},${h*.65}
|
||
|
||
a${d},${f} 1 0,1 ${-1*u*.25},${u*.15}
|
||
a${p},${p} 1 0,1 ${-1*u*.5},0
|
||
a${f},${f} 1 0,1 ${-1*u*.25},${-1*u*.15}
|
||
|
||
a${f},${f} 1 0,1 ${-1*u*.1},${-1*h*.35}
|
||
a${m},${m} 1 0,1 ${u*.1},${-1*h*.65}
|
||
H0 V0 Z`;if(e.look==="handDrawn"){let v=je.svg(i),b=Ke(e,{}),T=v.path(x,b);y=i.insert(()=>T,":first-child"),y.attr("class","basic label-container").attr("style",wn(g))}else y=i.insert("path",":first-child").attr("class","basic label-container").attr("style",n).attr("d",x);return l.attr("transform",`translate(${-a.width/2}, ${-a.height/2})`),y.attr("transform",`translate(${-u/2}, ${-h/2})`),Xe(e,y),e.calcIntersect=function(v,b){return He.rect(v,b)},e.intersect=function(v){return X.info("Cloud intersect",e,v),He.rect(e,v)},i}var hee=N(()=>{"use strict";Ut();pt();tr();Vt();Ft();Nt();o(uee,"cloud")});async function fee(t,e){let{labelStyles:r,nodeStyles:n}=We(e);e.labelStyle=r;let{shapeSvg:i,bbox:a,halfPadding:s,label:l}=await lt(t,e,rt(e)),u=a.width+8*s,h=a.height+2*s,f=5,d=`
|
||
M${-u/2} ${h/2-f}
|
||
v${-h+2*f}
|
||
q0,-${f} ${f},-${f}
|
||
h${u-2*f}
|
||
q${f},0 ${f},${f}
|
||
v${h-2*f}
|
||
q0,${f} -${f},${f}
|
||
h${-u+2*f}
|
||
q-${f},0 -${f},-${f}
|
||
Z
|
||
`,p=i.append("path").attr("id","node-"+e.id).attr("class","node-bkg node-"+e.type).attr("style",n).attr("d",d);return i.append("line").attr("class","node-line-").attr("x1",-u/2).attr("y1",h/2).attr("x2",u/2).attr("y2",h/2),l.attr("transform",`translate(${-a.width/2}, ${-a.height/2})`),i.append(()=>l.node()),Xe(e,p),e.calcIntersect=function(m,g){return He.rect(m,g)},e.intersect=function(m){return He.rect(e,m)},i}var dee=N(()=>{"use strict";Vt();Ft();Nt();o(fee,"defaultMindmapNode")});async function pee(t,e){let r={padding:e.padding??0};return iw(t,e,r)}var mee=N(()=>{"use strict";B9();o(pee,"mindmapCircle")});function gee(t){return t in $9}var ZDe,JDe,$9,G9=N(()=>{"use strict";QQ();eZ();rZ();iZ();B9();sZ();lZ();uZ();fZ();pZ();gZ();vZ();bZ();wZ();EZ();CZ();_Z();LZ();NZ();IZ();PZ();FZ();GZ();VZ();HZ();qZ();XZ();KZ();ZZ();eJ();rJ();iJ();sJ();lJ();uJ();fJ();pJ();gJ();vJ();bJ();wJ();EJ();CJ();_J();LJ();NJ();IJ();PJ();FJ();GJ();VJ();HJ();qJ();XJ();KJ();ZJ();JJ();nee();aee();oee();cee();hee();dee();mee();ZDe=[{semanticName:"Process",name:"Rectangle",shortName:"rect",description:"Standard process shape",aliases:["proc","process","rectangle"],internalAliases:["squareRect"],handler:TJ},{semanticName:"Event",name:"Rounded Rectangle",shortName:"rounded",description:"Represents an event",aliases:["event"],internalAliases:["roundedRect"],handler:mJ},{semanticName:"Terminal Point",name:"Stadium",shortName:"stadium",description:"Terminal point",aliases:["terminal","pill"],handler:kJ},{semanticName:"Subprocess",name:"Framed Rectangle",shortName:"fr-rect",description:"Subprocess",aliases:["subprocess","subproc","framed-rectangle","subroutine"],handler:RJ},{semanticName:"Database",name:"Cylinder",shortName:"cyl",description:"Database storage",aliases:["db","database","cylinder"],handler:mZ},{semanticName:"Start",name:"Circle",shortName:"circle",description:"Starting point",aliases:["circ"],handler:iw},{semanticName:"Bang",name:"Bang",shortName:"bang",description:"Bang",aliases:["bang"],handler:lee},{semanticName:"Cloud",name:"Cloud",shortName:"cloud",description:"cloud",aliases:["cloud"],handler:uee},{semanticName:"Decision",name:"Diamond",shortName:"diam",description:"Decision-making step",aliases:["decision","diamond","question"],handler:cJ},{semanticName:"Prepare Conditional",name:"Hexagon",shortName:"hex",description:"Preparation or condition step",aliases:["hexagon","prepare"],handler:DZ},{semanticName:"Data Input/Output",name:"Lean Right",shortName:"lean-r",description:"Represents input or output",aliases:["lean-right","in-out"],internalAliases:["lean_right"],handler:jZ},{semanticName:"Data Input/Output",name:"Lean Left",shortName:"lean-l",description:"Represents output or input",aliases:["lean-left","out-in"],internalAliases:["lean_left"],handler:YZ},{semanticName:"Priority Action",name:"Trapezoid Base Bottom",shortName:"trap-b",description:"Priority action",aliases:["priority","trapezoid-bottom","trapezoid"],handler:zJ},{semanticName:"Manual Operation",name:"Trapezoid Base Top",shortName:"trap-t",description:"Represents a manual task",aliases:["manual","trapezoid-top","inv-trapezoid"],internalAliases:["inv_trapezoid"],handler:UZ},{semanticName:"Stop",name:"Double Circle",shortName:"dbl-circ",description:"Represents a stop point",aliases:["double-circle"],internalAliases:["doublecircle"],handler:xZ},{semanticName:"Text Block",name:"Text Block",shortName:"text",description:"Text block",handler:BJ},{semanticName:"Card",name:"Notched Rectangle",shortName:"notch-rect",description:"Represents a card",aliases:["card","notched-rectangle"],handler:tZ},{semanticName:"Lined/Shaded Process",name:"Lined Rectangle",shortName:"lin-rect",description:"Lined process shape",aliases:["lined-rectangle","lined-process","lin-proc","shaded-process"],handler:yJ},{semanticName:"Start",name:"Small Circle",shortName:"sm-circ",description:"Small starting point",aliases:["start","small-circle"],internalAliases:["stateStart"],handler:DJ},{semanticName:"Stop",name:"Framed Circle",shortName:"fr-circ",description:"Stop point",aliases:["stop","framed-circle"],internalAliases:["stateEnd"],handler:AJ},{semanticName:"Fork/Join",name:"Filled Rectangle",shortName:"fork",description:"Fork or join in process flow",aliases:["join"],internalAliases:["forkJoin"],handler:SZ},{semanticName:"Collate",name:"Hourglass",shortName:"hourglass",description:"Represents a collate operation",aliases:["hourglass","collate"],handler:RZ},{semanticName:"Comment",name:"Curly Brace",shortName:"brace",description:"Adds a comment",aliases:["comment","brace-l"],handler:oZ},{semanticName:"Comment Right",name:"Curly Brace",shortName:"brace-r",description:"Adds a comment",handler:cZ},{semanticName:"Comment with braces on both sides",name:"Curly Braces",shortName:"braces",description:"Adds a comment",handler:hZ},{semanticName:"Com Link",name:"Lightning Bolt",shortName:"bolt",description:"Communication link",aliases:["com-link","lightning-bolt"],handler:QZ},{semanticName:"Document",name:"Document",shortName:"doc",description:"Represents a document",aliases:["doc","document"],handler:YJ},{semanticName:"Delay",name:"Half-Rounded Rectangle",shortName:"delay",description:"Represents a delay",aliases:["half-rounded-rectangle"],handler:AZ},{semanticName:"Direct Access Storage",name:"Horizontal Cylinder",shortName:"h-cyl",description:"Direct access storage",aliases:["das","horizontal-cylinder"],handler:$J},{semanticName:"Disk Storage",name:"Lined Cylinder",shortName:"lin-cyl",description:"Disk storage",aliases:["disk","lined-cylinder"],handler:JZ},{semanticName:"Display",name:"Curved Trapezoid",shortName:"curv-trap",description:"Represents a display",aliases:["curved-trapezoid","display"],handler:dZ},{semanticName:"Divided Process",name:"Divided Rectangle",shortName:"div-rect",description:"Divided process shape",aliases:["div-proc","divided-rectangle","divided-process"],handler:yZ},{semanticName:"Extract",name:"Triangle",shortName:"tri",description:"Extraction process",aliases:["extract","triangle"],handler:WJ},{semanticName:"Internal Storage",name:"Window Pane",shortName:"win-pane",description:"Internal storage",aliases:["internal-storage","window-pane"],handler:QJ},{semanticName:"Junction",name:"Filled Circle",shortName:"f-circ",description:"Junction point",aliases:["junction","filled-circle"],handler:TZ},{semanticName:"Loop Limit",name:"Trapezoidal Pentagon",shortName:"notch-pent",description:"Loop limit step",aliases:["loop-limit","notched-pentagon"],handler:UJ},{semanticName:"Manual File",name:"Flipped Triangle",shortName:"flip-tri",description:"Manual file operation",aliases:["manual-file","flipped-triangle"],handler:kZ},{semanticName:"Manual Input",name:"Sloped Rectangle",shortName:"sl-rect",description:"Manual input step",aliases:["manual-input","sloped-rectangle"],handler:xJ},{semanticName:"Multi-Document",name:"Stacked Document",shortName:"docs",description:"Multiple documents",aliases:["documents","st-doc","stacked-document"],handler:aJ},{semanticName:"Multi-Process",name:"Stacked Rectangle",shortName:"st-rect",description:"Multiple processes",aliases:["procs","processes","stacked-rectangle"],handler:nJ},{semanticName:"Stored Data",name:"Bow Tie Rectangle",shortName:"bow-rect",description:"Stored data",aliases:["stored-data","bow-tie-rectangle"],handler:JQ},{semanticName:"Summary",name:"Crossed Circle",shortName:"cross-circ",description:"Summary",aliases:["summary","crossed-circle"],handler:aZ},{semanticName:"Tagged Document",name:"Tagged Document",shortName:"tag-doc",description:"Tagged document",aliases:["tag-doc","tagged-document"],handler:OJ},{semanticName:"Tagged Process",name:"Tagged Rectangle",shortName:"tag-rect",description:"Tagged process",aliases:["tagged-rectangle","tag-proc","tagged-process"],handler:MJ},{semanticName:"Paper Tape",name:"Flag",shortName:"flag",description:"Paper tape",aliases:["paper-tape"],handler:jJ},{semanticName:"Odd",name:"Odd",shortName:"odd",description:"Odd shape",internalAliases:["rect_left_inv_arrow"],handler:hJ},{semanticName:"Lined Document",name:"Lined Document",shortName:"lin-doc",description:"Lined document",aliases:["lined-document"],handler:tJ}],JDe=o(()=>{let e=[...Object.entries({state:SJ,choice:nZ,note:oJ,rectWithTitle:dJ,labelRect:WZ,iconSquare:$Z,iconCircle:OZ,icon:MZ,iconRounded:BZ,imageSquare:zZ,anchor:KQ,kanbanItem:see,mindmapCircle:pee,defaultMindmapNode:fee,classBox:ree,erBox:F9,requirementBox:iee}),...ZDe.flatMap(r=>[r.shortName,..."aliases"in r?r.aliases:[],..."internalAliases"in r?r.internalAliases:[]].map(i=>[i,r.handler]))];return Object.fromEntries(e)},"generateShapeMap"),$9=JDe();o(gee,"isValidShape")});var eLe,lw,yee=N(()=>{"use strict";pr();b2();Xt();pt();G9();tr();dr();ui();eLe="flowchart-",lw=class{constructor(){this.vertexCounter=0;this.config=ge();this.vertices=new Map;this.edges=[];this.classes=new Map;this.subGraphs=[];this.subGraphLookup=new Map;this.tooltips=new Map;this.subCount=0;this.firstGraphFlag=!0;this.secCount=-1;this.posCrossRef=[];this.funs=[];this.setAccTitle=Cr;this.setAccDescription=Dr;this.setDiagramTitle=Or;this.getAccTitle=_r;this.getAccDescription=Lr;this.getDiagramTitle=Rr;this.funs.push(this.setupToolTips.bind(this)),this.addVertex=this.addVertex.bind(this),this.firstGraph=this.firstGraph.bind(this),this.setDirection=this.setDirection.bind(this),this.addSubGraph=this.addSubGraph.bind(this),this.addLink=this.addLink.bind(this),this.setLink=this.setLink.bind(this),this.updateLink=this.updateLink.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.destructLink=this.destructLink.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setTooltip=this.setTooltip.bind(this),this.updateLinkInterpolate=this.updateLinkInterpolate.bind(this),this.setClickFun=this.setClickFun.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.lex={firstGraph:this.firstGraph.bind(this)},this.clear(),this.setGen("gen-2")}static{o(this,"FlowDB")}sanitizeText(e){return Je.sanitizeText(e,this.config)}lookUpDomId(e){for(let r of this.vertices.values())if(r.id===e)return r.domId;return e}addVertex(e,r,n,i,a,s,l={},u){if(!e||e.trim().length===0)return;let h;if(u!==void 0){let m;u.includes(`
|
||
`)?m=u+`
|
||
`:m=`{
|
||
`+u+`
|
||
}`,h=Xh(m,{schema:Yh})}let f=this.edges.find(m=>m.id===e);if(f){let m=h;m?.animate!==void 0&&(f.animate=m.animate),m?.animation!==void 0&&(f.animation=m.animation),m?.curve!==void 0&&(f.interpolate=m.curve);return}let d,p=this.vertices.get(e);if(p===void 0&&(p={id:e,labelType:"text",domId:eLe+e+"-"+this.vertexCounter,styles:[],classes:[]},this.vertices.set(e,p)),this.vertexCounter++,r!==void 0?(this.config=ge(),d=this.sanitizeText(r.text.trim()),p.labelType=r.type,d.startsWith('"')&&d.endsWith('"')&&(d=d.substring(1,d.length-1)),p.text=d):p.text===void 0&&(p.text=e),n!==void 0&&(p.type=n),i?.forEach(m=>{p.styles.push(m)}),a?.forEach(m=>{p.classes.push(m)}),s!==void 0&&(p.dir=s),p.props===void 0?p.props=l:l!==void 0&&Object.assign(p.props,l),h!==void 0){if(h.shape){if(h.shape!==h.shape.toLowerCase()||h.shape.includes("_"))throw new Error(`No such shape: ${h.shape}. Shape names should be lowercase.`);if(!gee(h.shape))throw new Error(`No such shape: ${h.shape}.`);p.type=h?.shape}h?.label&&(p.text=h?.label),h?.icon&&(p.icon=h?.icon,!h.label?.trim()&&p.text===e&&(p.text="")),h?.form&&(p.form=h?.form),h?.pos&&(p.pos=h?.pos),h?.img&&(p.img=h?.img,!h.label?.trim()&&p.text===e&&(p.text="")),h?.constraint&&(p.constraint=h.constraint),h.w&&(p.assetWidth=Number(h.w)),h.h&&(p.assetHeight=Number(h.h))}}addSingleLink(e,r,n,i){let l={start:e,end:r,type:void 0,text:"",labelType:"text",classes:[],isUserDefinedId:!1,interpolate:this.edges.defaultInterpolate};X.info("abc78 Got edge...",l);let u=n.text;if(u!==void 0&&(l.text=this.sanitizeText(u.text.trim()),l.text.startsWith('"')&&l.text.endsWith('"')&&(l.text=l.text.substring(1,l.text.length-1)),l.labelType=u.type),n!==void 0&&(l.type=n.type,l.stroke=n.stroke,l.length=n.length>10?10:n.length),i&&!this.edges.some(h=>h.id===i))l.id=i,l.isUserDefinedId=!0;else{let h=this.edges.filter(f=>f.start===l.start&&f.end===l.end);h.length===0?l.id=Hh(l.start,l.end,{counter:0,prefix:"L"}):l.id=Hh(l.start,l.end,{counter:h.length+1,prefix:"L"})}if(this.edges.length<(this.config.maxEdges??500))X.info("Pushing edge..."),this.edges.push(l);else throw new Error(`Edge limit exceeded. ${this.edges.length} edges found, but the limit is ${this.config.maxEdges}.
|
||
|
||
Initialize mermaid with maxEdges set to a higher number to allow more edges.
|
||
You cannot set this config via configuration inside the diagram as it is a secure config.
|
||
You have to call mermaid.initialize.`)}isLinkData(e){return e!==null&&typeof e=="object"&&"id"in e&&typeof e.id=="string"}addLink(e,r,n){let i=this.isLinkData(n)?n.id.replace("@",""):void 0;X.info("addLink",e,r,i);for(let a of e)for(let s of r){let l=a===e[e.length-1],u=s===r[0];l&&u?this.addSingleLink(a,s,n,i):this.addSingleLink(a,s,n,void 0)}}updateLinkInterpolate(e,r){e.forEach(n=>{n==="default"?this.edges.defaultInterpolate=r:this.edges[n].interpolate=r})}updateLink(e,r){e.forEach(n=>{if(typeof n=="number"&&n>=this.edges.length)throw new Error(`The index ${n} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${this.edges.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);n==="default"?this.edges.defaultStyle=r:(this.edges[n].style=r,(this.edges[n]?.style?.length??0)>0&&!this.edges[n]?.style?.some(i=>i?.startsWith("fill"))&&this.edges[n]?.style?.push("fill:none"))})}addClass(e,r){let n=r.join().replace(/\\,/g,"\xA7\xA7\xA7").replace(/,/g,";").replace(/§§§/g,",").split(";");e.split(",").forEach(i=>{let a=this.classes.get(i);a===void 0&&(a={id:i,styles:[],textStyles:[]},this.classes.set(i,a)),n?.forEach(s=>{if(/color/.exec(s)){let l=s.replace("fill","bgFill");a.textStyles.push(l)}a.styles.push(s)})})}setDirection(e){this.direction=e.trim(),/.*</.exec(this.direction)&&(this.direction="RL"),/.*\^/.exec(this.direction)&&(this.direction="BT"),/.*>/.exec(this.direction)&&(this.direction="LR"),/.*v/.exec(this.direction)&&(this.direction="TB"),this.direction==="TD"&&(this.direction="TB")}setClass(e,r){for(let n of e.split(",")){let i=this.vertices.get(n);i&&i.classes.push(r);let a=this.edges.find(l=>l.id===n);a&&a.classes.push(r);let s=this.subGraphLookup.get(n);s&&s.classes.push(r)}}setTooltip(e,r){if(r!==void 0){r=this.sanitizeText(r);for(let n of e.split(","))this.tooltips.set(this.version==="gen-1"?this.lookUpDomId(n):n,r)}}setClickFun(e,r,n){let i=this.lookUpDomId(e);if(ge().securityLevel!=="loose"||r===void 0)return;let a=[];if(typeof n=="string"){a=n.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let l=0;l<a.length;l++){let u=a[l].trim();u.startsWith('"')&&u.endsWith('"')&&(u=u.substr(1,u.length-2)),a[l]=u}}a.length===0&&a.push(e);let s=this.vertices.get(e);s&&(s.haveCallback=!0,this.funs.push(()=>{let l=document.querySelector(`[id="${i}"]`);l!==null&&l.addEventListener("click",()=>{Ht.runFunc(r,...a)},!1)}))}setLink(e,r,n){e.split(",").forEach(i=>{let a=this.vertices.get(i);a!==void 0&&(a.link=Ht.formatUrl(r,this.config),a.linkTarget=n)}),this.setClass(e,"clickable")}getTooltip(e){return this.tooltips.get(e)}setClickEvent(e,r,n){e.split(",").forEach(i=>{this.setClickFun(i,r,n)}),this.setClass(e,"clickable")}bindFunctions(e){this.funs.forEach(r=>{r(e)})}getDirection(){return this.direction?.trim()}getVertices(){return this.vertices}getEdges(){return this.edges}getClasses(){return this.classes}setupToolTips(e){let r=ze(".mermaidTooltip");(r._groups||r)[0][0]===null&&(r=ze("body").append("div").attr("class","mermaidTooltip").style("opacity",0)),ze(e).select("svg").selectAll("g.node").on("mouseover",a=>{let s=ze(a.currentTarget);if(s.attr("title")===null)return;let u=a.currentTarget?.getBoundingClientRect();r.transition().duration(200).style("opacity",".9"),r.text(s.attr("title")).style("left",window.scrollX+u.left+(u.right-u.left)/2+"px").style("top",window.scrollY+u.bottom+"px"),r.html(r.html().replace(/<br\/>/g,"<br/>")),s.classed("hover",!0)}).on("mouseout",a=>{r.transition().duration(500).style("opacity",0),ze(a.currentTarget).classed("hover",!1)})}clear(e="gen-2"){this.vertices=new Map,this.classes=new Map,this.edges=[],this.funs=[this.setupToolTips.bind(this)],this.subGraphs=[],this.subGraphLookup=new Map,this.subCount=0,this.tooltips=new Map,this.firstGraphFlag=!0,this.version=e,this.config=ge(),wr()}setGen(e){this.version=e||"gen-2"}defaultStyle(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"}addSubGraph(e,r,n){let i=e.text.trim(),a=n.text;e===n&&/\s/.exec(n.text)&&(i=void 0);let l=o(p=>{let m={boolean:{},number:{},string:{}},g=[],y;return{nodeList:p.filter(function(v){let b=typeof v;return v.stmt&&v.stmt==="dir"?(y=v.value,!1):v.trim()===""?!1:b in m?m[b].hasOwnProperty(v)?!1:m[b][v]=!0:g.includes(v)?!1:g.push(v)}),dir:y}},"uniq")(r.flat()),u=l.nodeList,h=l.dir,f=ge().flowchart??{};if(h=h??(f.inheritDir?this.getDirection()??ge().direction??void 0:void 0),this.version==="gen-1")for(let p=0;p<u.length;p++)u[p]=this.lookUpDomId(u[p]);i=i??"subGraph"+this.subCount,a=a||"",a=this.sanitizeText(a),this.subCount=this.subCount+1;let d={id:i,nodes:u,title:a.trim(),classes:[],dir:h,labelType:n.type};return X.info("Adding",d.id,d.nodes,d.dir),d.nodes=this.makeUniq(d,this.subGraphs).nodes,this.subGraphs.push(d),this.subGraphLookup.set(i,d),i}getPosForId(e){for(let[r,n]of this.subGraphs.entries())if(n.id===e)return r;return-1}indexNodes2(e,r){let n=this.subGraphs[r].nodes;if(this.secCount=this.secCount+1,this.secCount>2e3)return{result:!1,count:0};if(this.posCrossRef[this.secCount]=r,this.subGraphs[r].id===e)return{result:!0,count:0};let i=0,a=1;for(;i<n.length;){let s=this.getPosForId(n[i]);if(s>=0){let l=this.indexNodes2(e,s);if(l.result)return{result:!0,count:a+l.count};a=a+l.count}i=i+1}return{result:!1,count:a}}getDepthFirstPos(e){return this.posCrossRef[e]}indexNodes(){this.secCount=-1,this.subGraphs.length>0&&this.indexNodes2("none",this.subGraphs.length-1)}getSubGraphs(){return this.subGraphs}firstGraph(){return this.firstGraphFlag?(this.firstGraphFlag=!1,!0):!1}destructStartLink(e){let r=e.trim(),n="arrow_open";switch(r[0]){case"<":n="arrow_point",r=r.slice(1);break;case"x":n="arrow_cross",r=r.slice(1);break;case"o":n="arrow_circle",r=r.slice(1);break}let i="normal";return r.includes("=")&&(i="thick"),r.includes(".")&&(i="dotted"),{type:n,stroke:i}}countChar(e,r){let n=r.length,i=0;for(let a=0;a<n;++a)r[a]===e&&++i;return i}destructEndLink(e){let r=e.trim(),n=r.slice(0,-1),i="arrow_open";switch(r.slice(-1)){case"x":i="arrow_cross",r.startsWith("x")&&(i="double_"+i,n=n.slice(1));break;case">":i="arrow_point",r.startsWith("<")&&(i="double_"+i,n=n.slice(1));break;case"o":i="arrow_circle",r.startsWith("o")&&(i="double_"+i,n=n.slice(1));break}let a="normal",s=n.length-1;n.startsWith("=")&&(a="thick"),n.startsWith("~")&&(a="invisible");let l=this.countChar(".",n);return l&&(a="dotted",s=l),{type:i,stroke:a,length:s}}destructLink(e,r){let n=this.destructEndLink(e),i;if(r){if(i=this.destructStartLink(r),i.stroke!==n.stroke)return{type:"INVALID",stroke:"INVALID"};if(i.type==="arrow_open")i.type=n.type;else{if(i.type!==n.type)return{type:"INVALID",stroke:"INVALID"};i.type="double_"+i.type}return i.type==="double_arrow"&&(i.type="double_arrow_point"),i.length=n.length,i}return n}exists(e,r){for(let n of e)if(n.nodes.includes(r))return!0;return!1}makeUniq(e,r){let n=[];return e.nodes.forEach((i,a)=>{this.exists(r,i)||n.push(e.nodes[a])}),{nodes:n}}getTypeFromVertex(e){if(e.img)return"imageSquare";if(e.icon)return e.form==="circle"?"iconCircle":e.form==="square"?"iconSquare":e.form==="rounded"?"iconRounded":"icon";switch(e.type){case"square":case void 0:return"squareRect";case"round":return"roundedRect";case"ellipse":return"ellipse";default:return e.type}}findNode(e,r){return e.find(n=>n.id===r)}destructEdgeType(e){let r="none",n="arrow_point";switch(e){case"arrow_point":case"arrow_circle":case"arrow_cross":n=e;break;case"double_arrow_point":case"double_arrow_circle":case"double_arrow_cross":r=e.replace("double_",""),n=r;break}return{arrowTypeStart:r,arrowTypeEnd:n}}addNodeFromVertex(e,r,n,i,a,s){let l=n.get(e.id),u=i.get(e.id)??!1,h=this.findNode(r,e.id);if(h)h.cssStyles=e.styles,h.cssCompiledStyles=this.getCompiledStyles(e.classes),h.cssClasses=e.classes.join(" ");else{let f={id:e.id,label:e.text,labelStyle:"",parentId:l,padding:a.flowchart?.padding||8,cssStyles:e.styles,cssCompiledStyles:this.getCompiledStyles(["default","node",...e.classes]),cssClasses:"default "+e.classes.join(" "),dir:e.dir,domId:e.domId,look:s,link:e.link,linkTarget:e.linkTarget,tooltip:this.getTooltip(e.id),icon:e.icon,pos:e.pos,img:e.img,assetWidth:e.assetWidth,assetHeight:e.assetHeight,constraint:e.constraint};u?r.push({...f,isGroup:!0,shape:"rect"}):r.push({...f,isGroup:!1,shape:this.getTypeFromVertex(e)})}}getCompiledStyles(e){let r=[];for(let n of e){let i=this.classes.get(n);i?.styles&&(r=[...r,...i.styles??[]].map(a=>a.trim())),i?.textStyles&&(r=[...r,...i.textStyles??[]].map(a=>a.trim()))}return r}getData(){let e=ge(),r=[],n=[],i=this.getSubGraphs(),a=new Map,s=new Map;for(let h=i.length-1;h>=0;h--){let f=i[h];f.nodes.length>0&&s.set(f.id,!0);for(let d of f.nodes)a.set(d,f.id)}for(let h=i.length-1;h>=0;h--){let f=i[h];r.push({id:f.id,label:f.title,labelStyle:"",parentId:a.get(f.id),padding:8,cssCompiledStyles:this.getCompiledStyles(f.classes),cssClasses:f.classes.join(" "),shape:"rect",dir:f.dir,isGroup:!0,look:e.look})}this.getVertices().forEach(h=>{this.addNodeFromVertex(h,r,a,s,e,e.look||"classic")});let u=this.getEdges();return u.forEach((h,f)=>{let{arrowTypeStart:d,arrowTypeEnd:p}=this.destructEdgeType(h.type),m=[...u.defaultStyle??[]];h.style&&m.push(...h.style);let g={id:Hh(h.start,h.end,{counter:f,prefix:"L"},h.id),isUserDefinedId:h.isUserDefinedId,start:h.start,end:h.end,type:h.type??"normal",label:h.text,labelpos:"c",thickness:h.stroke,minlen:h.length,classes:h?.stroke==="invisible"?"":"edge-thickness-normal edge-pattern-solid flowchart-link",arrowTypeStart:h?.stroke==="invisible"||h?.type==="arrow_open"?"none":d,arrowTypeEnd:h?.stroke==="invisible"||h?.type==="arrow_open"?"none":p,arrowheadStyle:"fill: #333",cssCompiledStyles:this.getCompiledStyles(h.classes),labelStyle:m,style:m,pattern:h.stroke,look:e.look,animate:h.animate,animation:h.animation,curve:h.interpolate||this.edges.defaultInterpolate||e.flowchart?.curve};n.push(g)}),{nodes:r,edges:n,other:{},config:e}}defaultConfig(){return G3.flowchart}}});var zo,Kd=N(()=>{"use strict";pr();zo=o((t,e)=>{let r;return e==="sandbox"&&(r=ze("#i"+t)),(e==="sandbox"?ze(r.nodes()[0].contentDocument.body):ze("body")).select(`[id="${t}"]`)},"getDiagramElement")});var Iu,N2=N(()=>{"use strict";Iu=o(({flowchart:t})=>{let e=t?.subGraphTitleMargin?.top??0,r=t?.subGraphTitleMargin?.bottom??0,n=e+r;return{subGraphTitleTopMargin:e,subGraphTitleBottomMargin:r,subGraphTitleTotalMargin:n}},"getSubGraphTitleMargins")});var vee,tLe,rLe,nLe,iLe,aLe,sLe,xee,Tm,bee,cw=N(()=>{"use strict";Xt();dr();pt();N2();pr();Ut();$o();x9();aw();Xd();Ft();vee=o(async(t,e)=>{X.info("Creating subgraph rect for ",e.id,e);let r=ge(),{themeVariables:n,handDrawnSeed:i}=r,{clusterBkg:a,clusterBorder:s}=n,{labelStyles:l,nodeStyles:u,borderStyles:h,backgroundStyles:f}=We(e),d=t.insert("g").attr("class","cluster "+e.cssClasses).attr("id",e.id).attr("data-look",e.look),p=mr(r.flowchart.htmlLabels),m=d.insert("g").attr("class","cluster-label "),g=await pi(m,e.label,{style:e.labelStyle,useHtmlLabels:p,isNode:!0}),y=g.getBBox();if(mr(r.flowchart.htmlLabels)){let _=g.children[0],A=ze(g);y=_.getBoundingClientRect(),A.attr("width",y.width),A.attr("height",y.height)}let x=e.width<=y.width+e.padding?y.width+e.padding:e.width;e.width<=y.width+e.padding?e.diff=(x-e.width)/2-e.padding:e.diff=-e.padding;let v=e.height,b=e.x-x/2,T=e.y-v/2;X.trace("Data ",e,JSON.stringify(e));let S;if(e.look==="handDrawn"){let _=je.svg(d),A=Ke(e,{roughness:.7,fill:a,stroke:s,fillWeight:3,seed:i}),D=_.path(Bs(b,T,x,v,0),A);S=d.insert(()=>(X.debug("Rough node insert CXC",D),D),":first-child"),S.select("path:nth-child(2)").attr("style",h.join(";")),S.select("path").attr("style",f.join(";").replace("fill","stroke"))}else S=d.insert("rect",":first-child"),S.attr("style",u).attr("rx",e.rx).attr("ry",e.ry).attr("x",b).attr("y",T).attr("width",x).attr("height",v);let{subGraphTitleTopMargin:w}=Iu(r);if(m.attr("transform",`translate(${e.x-y.width/2}, ${e.y-e.height/2+w})`),l){let _=m.select("span");_&&_.attr("style",l)}let E=S.node().getBBox();return e.offsetX=0,e.width=E.width,e.height=E.height,e.offsetY=y.height-e.padding/2,e.intersect=function(_){return jh(e,_)},{cluster:d,labelBBox:y}},"rect"),tLe=o((t,e)=>{let r=t.insert("g").attr("class","note-cluster").attr("id",e.id),n=r.insert("rect",":first-child"),i=0*e.padding,a=i/2;n.attr("rx",e.rx).attr("ry",e.ry).attr("x",e.x-e.width/2-a).attr("y",e.y-e.height/2-a).attr("width",e.width+i).attr("height",e.height+i).attr("fill","none");let s=n.node().getBBox();return e.width=s.width,e.height=s.height,e.intersect=function(l){return jh(e,l)},{cluster:r,labelBBox:{width:0,height:0}}},"noteGroup"),rLe=o(async(t,e)=>{let r=ge(),{themeVariables:n,handDrawnSeed:i}=r,{altBackground:a,compositeBackground:s,compositeTitleBackground:l,nodeBorder:u}=n,h=t.insert("g").attr("class",e.cssClasses).attr("id",e.id).attr("data-id",e.id).attr("data-look",e.look),f=h.insert("g",":first-child"),d=h.insert("g").attr("class","cluster-label"),p=h.append("rect"),m=d.node().appendChild(await Tc(e.label,e.labelStyle,void 0,!0)),g=m.getBBox();if(mr(r.flowchart.htmlLabels)){let D=m.children[0],O=ze(m);g=D.getBoundingClientRect(),O.attr("width",g.width),O.attr("height",g.height)}let y=0*e.padding,x=y/2,v=(e.width<=g.width+e.padding?g.width+e.padding:e.width)+y;e.width<=g.width+e.padding?e.diff=(v-e.width)/2-e.padding:e.diff=-e.padding;let b=e.height+y,T=e.height+y-g.height-6,S=e.x-v/2,w=e.y-b/2;e.width=v;let E=e.y-e.height/2-x+g.height+2,_;if(e.look==="handDrawn"){let D=e.cssClasses.includes("statediagram-cluster-alt"),O=je.svg(h),R=e.rx||e.ry?O.path(Bs(S,w,v,b,10),{roughness:.7,fill:l,fillStyle:"solid",stroke:u,seed:i}):O.rectangle(S,w,v,b,{seed:i});_=h.insert(()=>R,":first-child");let k=O.rectangle(S,E,v,T,{fill:D?a:s,fillStyle:D?"hachure":"solid",stroke:u,seed:i});_=h.insert(()=>R,":first-child"),p=h.insert(()=>k)}else _=f.insert("rect",":first-child"),_.attr("class","outer").attr("x",S).attr("y",w).attr("width",v).attr("height",b).attr("data-look",e.look),p.attr("class","inner").attr("x",S).attr("y",E).attr("width",v).attr("height",T);d.attr("transform",`translate(${e.x-g.width/2}, ${w+1-(mr(r.flowchart.htmlLabels)?0:3)})`);let A=_.node().getBBox();return e.height=A.height,e.offsetX=0,e.offsetY=g.height-e.padding/2,e.labelBBox=g,e.intersect=function(D){return jh(e,D)},{cluster:h,labelBBox:g}},"roundedWithTitle"),nLe=o(async(t,e)=>{X.info("Creating subgraph rect for ",e.id,e);let r=ge(),{themeVariables:n,handDrawnSeed:i}=r,{clusterBkg:a,clusterBorder:s}=n,{labelStyles:l,nodeStyles:u,borderStyles:h,backgroundStyles:f}=We(e),d=t.insert("g").attr("class","cluster "+e.cssClasses).attr("id",e.id).attr("data-look",e.look),p=mr(r.flowchart.htmlLabels),m=d.insert("g").attr("class","cluster-label "),g=await pi(m,e.label,{style:e.labelStyle,useHtmlLabels:p,isNode:!0,width:e.width}),y=g.getBBox();if(mr(r.flowchart.htmlLabels)){let _=g.children[0],A=ze(g);y=_.getBoundingClientRect(),A.attr("width",y.width),A.attr("height",y.height)}let x=e.width<=y.width+e.padding?y.width+e.padding:e.width;e.width<=y.width+e.padding?e.diff=(x-e.width)/2-e.padding:e.diff=-e.padding;let v=e.height,b=e.x-x/2,T=e.y-v/2;X.trace("Data ",e,JSON.stringify(e));let S;if(e.look==="handDrawn"){let _=je.svg(d),A=Ke(e,{roughness:.7,fill:a,stroke:s,fillWeight:4,seed:i}),D=_.path(Bs(b,T,x,v,e.rx),A);S=d.insert(()=>(X.debug("Rough node insert CXC",D),D),":first-child"),S.select("path:nth-child(2)").attr("style",h.join(";")),S.select("path").attr("style",f.join(";").replace("fill","stroke"))}else S=d.insert("rect",":first-child"),S.attr("style",u).attr("rx",e.rx).attr("ry",e.ry).attr("x",b).attr("y",T).attr("width",x).attr("height",v);let{subGraphTitleTopMargin:w}=Iu(r);if(m.attr("transform",`translate(${e.x-y.width/2}, ${e.y-e.height/2+w})`),l){let _=m.select("span");_&&_.attr("style",l)}let E=S.node().getBBox();return e.offsetX=0,e.width=E.width,e.height=E.height,e.offsetY=y.height-e.padding/2,e.intersect=function(_){return jh(e,_)},{cluster:d,labelBBox:y}},"kanbanSection"),iLe=o((t,e)=>{let r=ge(),{themeVariables:n,handDrawnSeed:i}=r,{nodeBorder:a}=n,s=t.insert("g").attr("class",e.cssClasses).attr("id",e.id).attr("data-look",e.look),l=s.insert("g",":first-child"),u=0*e.padding,h=e.width+u;e.diff=-e.padding;let f=e.height+u,d=e.x-h/2,p=e.y-f/2;e.width=h;let m;if(e.look==="handDrawn"){let x=je.svg(s).rectangle(d,p,h,f,{fill:"lightgrey",roughness:.5,strokeLineDash:[5],stroke:a,seed:i});m=s.insert(()=>x,":first-child")}else m=l.insert("rect",":first-child"),m.attr("class","divider").attr("x",d).attr("y",p).attr("width",h).attr("height",f).attr("data-look",e.look);let g=m.node().getBBox();return e.height=g.height,e.offsetX=0,e.offsetY=0,e.intersect=function(y){return jh(e,y)},{cluster:s,labelBBox:{}}},"divider"),aLe=vee,sLe={rect:vee,squareRect:aLe,roundedWithTitle:rLe,noteGroup:tLe,divider:iLe,kanbanSection:nLe},xee=new Map,Tm=o(async(t,e)=>{let r=e.shape||"rect",n=await sLe[r](t,e);return xee.set(e.id,n),n},"insertCluster"),bee=o(()=>{xee=new Map},"clear")});function uw(t,e){if(t===void 0||e===void 0)return{angle:0,deltaX:0,deltaY:0};t=Xn(t),e=Xn(e);let[r,n]=[t.x,t.y],[i,a]=[e.x,e.y],s=i-r,l=a-n;return{angle:Math.atan(l/s),deltaX:s,deltaY:l}}var Vo,Xn,hw,z9=N(()=>{"use strict";Vo={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:4};o(uw,"calculateDeltaAndAngle");Xn=o(t=>Array.isArray(t)?{x:t[0],y:t[1]}:t,"pointTransformer"),hw=o(t=>({x:o(function(e,r,n){let i=0,a=Xn(n[0]).x<Xn(n[n.length-1]).x?"left":"right";if(r===0&&Object.hasOwn(Vo,t.arrowTypeStart)){let{angle:m,deltaX:g}=uw(n[0],n[1]);i=Vo[t.arrowTypeStart]*Math.cos(m)*(g>=0?1:-1)}else if(r===n.length-1&&Object.hasOwn(Vo,t.arrowTypeEnd)){let{angle:m,deltaX:g}=uw(n[n.length-1],n[n.length-2]);i=Vo[t.arrowTypeEnd]*Math.cos(m)*(g>=0?1:-1)}let s=Math.abs(Xn(e).x-Xn(n[n.length-1]).x),l=Math.abs(Xn(e).y-Xn(n[n.length-1]).y),u=Math.abs(Xn(e).x-Xn(n[0]).x),h=Math.abs(Xn(e).y-Xn(n[0]).y),f=Vo[t.arrowTypeStart],d=Vo[t.arrowTypeEnd],p=1;if(s<d&&s>0&&l<d){let m=d+p-s;m*=a==="right"?-1:1,i-=m}if(u<f&&u>0&&h<f){let m=f+p-u;m*=a==="right"?-1:1,i+=m}return Xn(e).x+i},"x"),y:o(function(e,r,n){let i=0,a=Xn(n[0]).y<Xn(n[n.length-1]).y?"down":"up";if(r===0&&Object.hasOwn(Vo,t.arrowTypeStart)){let{angle:m,deltaY:g}=uw(n[0],n[1]);i=Vo[t.arrowTypeStart]*Math.abs(Math.sin(m))*(g>=0?1:-1)}else if(r===n.length-1&&Object.hasOwn(Vo,t.arrowTypeEnd)){let{angle:m,deltaY:g}=uw(n[n.length-1],n[n.length-2]);i=Vo[t.arrowTypeEnd]*Math.abs(Math.sin(m))*(g>=0?1:-1)}let s=Math.abs(Xn(e).y-Xn(n[n.length-1]).y),l=Math.abs(Xn(e).x-Xn(n[n.length-1]).x),u=Math.abs(Xn(e).y-Xn(n[0]).y),h=Math.abs(Xn(e).x-Xn(n[0]).x),f=Vo[t.arrowTypeStart],d=Vo[t.arrowTypeEnd],p=1;if(s<d&&s>0&&l<d){let m=d+p-s;m*=a==="up"?-1:1,i-=m}if(u<f&&u>0&&h<f){let m=f+p-u;m*=a==="up"?-1:1,i+=m}return Xn(e).y+i},"y")}),"getLineFunctionsWithOffset")});var wee,oLe,Tee,kee=N(()=>{"use strict";pt();wee=o((t,e,r,n,i,a)=>{e.arrowTypeStart&&Tee(t,"start",e.arrowTypeStart,r,n,i,a),e.arrowTypeEnd&&Tee(t,"end",e.arrowTypeEnd,r,n,i,a)},"addEdgeMarkers"),oLe={arrow_cross:{type:"cross",fill:!1},arrow_point:{type:"point",fill:!0},arrow_barb:{type:"barb",fill:!0},arrow_circle:{type:"circle",fill:!1},aggregation:{type:"aggregation",fill:!1},extension:{type:"extension",fill:!1},composition:{type:"composition",fill:!0},dependency:{type:"dependency",fill:!0},lollipop:{type:"lollipop",fill:!1},only_one:{type:"onlyOne",fill:!1},zero_or_one:{type:"zeroOrOne",fill:!1},one_or_more:{type:"oneOrMore",fill:!1},zero_or_more:{type:"zeroOrMore",fill:!1},requirement_arrow:{type:"requirement_arrow",fill:!1},requirement_contains:{type:"requirement_contains",fill:!1}},Tee=o((t,e,r,n,i,a,s)=>{let l=oLe[r];if(!l){X.warn(`Unknown arrow type: ${r}`);return}let u=l.type,f=`${i}_${a}-${u}${e==="start"?"Start":"End"}`;if(s&&s.trim()!==""){let d=s.replace(/[^\dA-Za-z]/g,"_"),p=`${f}_${d}`;if(!document.getElementById(p)){let m=document.getElementById(f);if(m){let g=m.cloneNode(!0);g.id=p,g.querySelectorAll("path, circle, line").forEach(x=>{x.setAttribute("stroke",s),l.fill&&x.setAttribute("fill",s)}),m.parentNode?.appendChild(g)}}t.attr(`marker-${e}`,`url(${n}#${p})`)}else t.attr(`marker-${e}`,`url(${n}#${f})`)},"addEdgeMarker")});function fw(t,e){ge().flowchart.htmlLabels&&t&&(t.style.width=e.length*9+"px",t.style.height="12px")}function uLe(t){let e=[],r=[];for(let n=1;n<t.length-1;n++){let i=t[n-1],a=t[n],s=t[n+1];(i.x===a.x&&a.y===s.y&&Math.abs(a.x-s.x)>5&&Math.abs(a.y-i.y)>5||i.y===a.y&&a.x===s.x&&Math.abs(a.x-i.x)>5&&Math.abs(a.y-s.y)>5)&&(e.push(a),r.push(n))}return{cornerPoints:e,cornerPointPositions:r}}var dw,fa,Cee,M2,pw,mw,lLe,cLe,Eee,See,hLe,gw,V9=N(()=>{"use strict";Xt();dr();pt();$o();tr();z9();N2();pr();Ut();aw();kee();Ft();dw=new Map,fa=new Map,Cee=o(()=>{dw.clear(),fa.clear()},"clear"),M2=o(t=>t?t.reduce((r,n)=>r+";"+n,""):"","getLabelStyles"),pw=o(async(t,e)=>{let r=mr(ge().flowchart.htmlLabels),n=await pi(t,e.label,{style:M2(e.labelStyle),useHtmlLabels:r,addSvgBackground:!0,isNode:!1});X.info("abc82",e,e.labelType);let i=t.insert("g").attr("class","edgeLabel"),a=i.insert("g").attr("class","label");a.node().appendChild(n);let s=n.getBBox();if(r){let u=n.children[0],h=ze(n);s=u.getBoundingClientRect(),h.attr("width",s.width),h.attr("height",s.height)}a.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"),dw.set(e.id,i),e.width=s.width,e.height=s.height;let l;if(e.startLabelLeft){let u=await Tc(e.startLabelLeft,M2(e.labelStyle)),h=t.insert("g").attr("class","edgeTerminals"),f=h.insert("g").attr("class","inner");l=f.node().appendChild(u);let d=u.getBBox();f.attr("transform","translate("+-d.width/2+", "+-d.height/2+")"),fa.get(e.id)||fa.set(e.id,{}),fa.get(e.id).startLeft=h,fw(l,e.startLabelLeft)}if(e.startLabelRight){let u=await Tc(e.startLabelRight,M2(e.labelStyle)),h=t.insert("g").attr("class","edgeTerminals"),f=h.insert("g").attr("class","inner");l=h.node().appendChild(u),f.node().appendChild(u);let d=u.getBBox();f.attr("transform","translate("+-d.width/2+", "+-d.height/2+")"),fa.get(e.id)||fa.set(e.id,{}),fa.get(e.id).startRight=h,fw(l,e.startLabelRight)}if(e.endLabelLeft){let u=await Tc(e.endLabelLeft,M2(e.labelStyle)),h=t.insert("g").attr("class","edgeTerminals"),f=h.insert("g").attr("class","inner");l=f.node().appendChild(u);let d=u.getBBox();f.attr("transform","translate("+-d.width/2+", "+-d.height/2+")"),h.node().appendChild(u),fa.get(e.id)||fa.set(e.id,{}),fa.get(e.id).endLeft=h,fw(l,e.endLabelLeft)}if(e.endLabelRight){let u=await Tc(e.endLabelRight,M2(e.labelStyle)),h=t.insert("g").attr("class","edgeTerminals"),f=h.insert("g").attr("class","inner");l=f.node().appendChild(u);let d=u.getBBox();f.attr("transform","translate("+-d.width/2+", "+-d.height/2+")"),h.node().appendChild(u),fa.get(e.id)||fa.set(e.id,{}),fa.get(e.id).endRight=h,fw(l,e.endLabelRight)}return n},"insertEdgeLabel");o(fw,"setTerminalWidth");mw=o((t,e)=>{X.debug("Moving label abc88 ",t.id,t.label,dw.get(t.id),e);let r=e.updatedPath?e.updatedPath:e.originalPath,n=ge(),{subGraphTitleTotalMargin:i}=Iu(n);if(t.label){let a=dw.get(t.id),s=t.x,l=t.y;if(r){let u=Ht.calcLabelPosition(r);X.debug("Moving label "+t.label+" from (",s,",",l,") to (",u.x,",",u.y,") abc88"),e.updatedPath&&(s=u.x,l=u.y)}a.attr("transform",`translate(${s}, ${l+i/2})`)}if(t.startLabelLeft){let a=fa.get(t.id).startLeft,s=t.x,l=t.y;if(r){let u=Ht.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.startLabelRight){let a=fa.get(t.id).startRight,s=t.x,l=t.y;if(r){let u=Ht.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.endLabelLeft){let a=fa.get(t.id).endLeft,s=t.x,l=t.y;if(r){let u=Ht.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.endLabelRight){let a=fa.get(t.id).endRight,s=t.x,l=t.y;if(r){let u=Ht.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}},"positionEdgeLabel"),lLe=o((t,e)=>{let r=t.x,n=t.y,i=Math.abs(e.x-r),a=Math.abs(e.y-n),s=t.width/2,l=t.height/2;return i>=s||a>=l},"outsideNode"),cLe=o((t,e,r)=>{X.debug(`intersection calc abc89:
|
||
outsidePoint: ${JSON.stringify(e)}
|
||
insidePoint : ${JSON.stringify(r)}
|
||
node : x:${t.x} y:${t.y} w:${t.width} h:${t.height}`);let n=t.x,i=t.y,a=Math.abs(n-r.x),s=t.width/2,l=r.x<e.x?s-a:s+a,u=t.height/2,h=Math.abs(e.y-r.y),f=Math.abs(e.x-r.x);if(Math.abs(i-e.y)*s>Math.abs(n-e.x)*u){let d=r.y<e.y?e.y-u-i:i-u-e.y;l=f*d/h;let p={x:r.x<e.x?r.x+l:r.x-f+l,y:r.y<e.y?r.y+h-d:r.y-h+d};return l===0&&(p.x=e.x,p.y=e.y),f===0&&(p.x=e.x),h===0&&(p.y=e.y),X.debug(`abc89 top/bottom calc, Q ${h}, q ${d}, R ${f}, r ${l}`,p),p}else{r.x<e.x?l=e.x-s-n:l=n-s-e.x;let d=h*l/f,p=r.x<e.x?r.x+f-l:r.x-f+l,m=r.y<e.y?r.y+d:r.y-d;return X.debug(`sides calc abc89, Q ${h}, q ${d}, R ${f}, r ${l}`,{_x:p,_y:m}),l===0&&(p=e.x,m=e.y),f===0&&(p=e.x),h===0&&(m=e.y),{x:p,y:m}}},"intersection"),Eee=o((t,e)=>{X.warn("abc88 cutPathAtIntersect",t,e);let r=[],n=t[0],i=!1;return t.forEach(a=>{if(X.info("abc88 checking point",a,e),!lLe(e,a)&&!i){let s=cLe(e,n,a);X.debug("abc88 inside",a,n,s),X.debug("abc88 intersection",s,e);let l=!1;r.forEach(u=>{l=l||u.x===s.x&&u.y===s.y}),r.some(u=>u.x===s.x&&u.y===s.y)?X.warn("abc88 no intersect",s,r):r.push(s),i=!0}else X.warn("abc88 outside",a,n),n=a,i||r.push(a)}),X.debug("returning points",r),r},"cutPathAtIntersect");o(uLe,"extractCornerPoints");See=o(function(t,e,r){let n=e.x-t.x,i=e.y-t.y,a=Math.sqrt(n*n+i*i),s=r/a;return{x:e.x-s*n,y:e.y-s*i}},"findAdjacentPoint"),hLe=o(function(t){let{cornerPointPositions:e}=uLe(t),r=[];for(let n=0;n<t.length;n++)if(e.includes(n)){let i=t[n-1],a=t[n+1],s=t[n],l=See(i,s,5),u=See(a,s,5),h=u.x-l.x,f=u.y-l.y;r.push(l);let d=Math.sqrt(2)*2,p={x:s.x,y:s.y};if(Math.abs(a.x-i.x)>10&&Math.abs(a.y-i.y)>=10){X.debug("Corner point fixing",Math.abs(a.x-i.x),Math.abs(a.y-i.y));let m=5;s.x===l.x?p={x:h<0?l.x-m+d:l.x+m-d,y:f<0?l.y-d:l.y+d}:p={x:h<0?l.x-d:l.x+d,y:f<0?l.y-m+d:l.y+m-d}}else X.debug("Corner point skipping fixing",Math.abs(a.x-i.x),Math.abs(a.y-i.y));r.push(p,u)}else r.push(t[n]);return r},"fixCorners"),gw=o(function(t,e,r,n,i,a,s){let{handDrawnSeed:l}=ge(),u=e.points,h=!1,f=i;var d=a;let p=[];for(let R in e.cssCompiledStyles)S2(R)||p.push(e.cssCompiledStyles[R]);d.intersect&&f.intersect&&(u=u.slice(1,e.points.length-1),u.unshift(f.intersect(u[0])),X.debug("Last point APA12",e.start,"-->",e.end,u[u.length-1],d,d.intersect(u[u.length-1])),u.push(d.intersect(u[u.length-1]))),e.toCluster&&(X.info("to cluster abc88",r.get(e.toCluster)),u=Eee(e.points,r.get(e.toCluster).node),h=!0),e.fromCluster&&(X.debug("from cluster abc88",r.get(e.fromCluster),JSON.stringify(u,null,2)),u=Eee(u.reverse(),r.get(e.fromCluster).node).reverse(),h=!0);let m=u.filter(R=>!Number.isNaN(R.y));m=hLe(m);let g=Ro;switch(g=Eu,e.curve){case"linear":g=Eu;break;case"basis":g=Ro;break;case"cardinal":g=Wv;break;case"bumpX":g=Gv;break;case"bumpY":g=zv;break;case"catmullRom":g=Xv;break;case"monotoneX":g=jv;break;case"monotoneY":g=Kv;break;case"natural":g=j0;break;case"step":g=K0;break;case"stepAfter":g=Zv;break;case"stepBefore":g=Qv;break;default:g=Ro}let{x:y,y:x}=hw(e),v=Cl().x(y).y(x).curve(g),b;switch(e.thickness){case"normal":b="edge-thickness-normal";break;case"thick":b="edge-thickness-thick";break;case"invisible":b="edge-thickness-invisible";break;default:b="edge-thickness-normal"}switch(e.pattern){case"solid":b+=" edge-pattern-solid";break;case"dotted":b+=" edge-pattern-dotted";break;case"dashed":b+=" edge-pattern-dashed";break;default:b+=" edge-pattern-solid"}let T,S=v(m),w=Array.isArray(e.style)?e.style:e.style?[e.style]:[],E=w.find(R=>R?.startsWith("stroke:"));if(e.look==="handDrawn"){let R=je.svg(t);Object.assign([],m);let k=R.path(S,{roughness:.3,seed:l});b+=" transition",T=ze(k).select("path").attr("id",e.id).attr("class"," "+b+(e.classes?" "+e.classes:"")).attr("style",w?w.reduce((C,I)=>C+";"+I,""):"");let L=T.attr("d");T.attr("d",L),t.node().appendChild(T.node())}else{let R=p.join(";"),k=w?w.reduce((I,M)=>I+M+";",""):"",L="";e.animate&&(L=" edge-animation-fast"),e.animation&&(L=" edge-animation-"+e.animation);let C=R?R+";"+k+";":k;T=t.append("path").attr("d",S).attr("id",e.id).attr("class"," "+b+(e.classes?" "+e.classes:"")+(L??"")).attr("style",C),E=C.match(/stroke:([^;]+)/)?.[1]}let _="";(ge().flowchart.arrowMarkerAbsolute||ge().state.arrowMarkerAbsolute)&&(_=du(!0)),X.info("arrowTypeStart",e.arrowTypeStart),X.info("arrowTypeEnd",e.arrowTypeEnd),wee(T,e,_,s,n,E);let A=Math.floor(u.length/2),D=u[A];Ht.isLabelCoordinateInPath(D,T.attr("d"))||(h=!0);let O={};return h&&(O.updatedPath=u),O.originalPath=e.points,O},"insertEdge")});var fLe,dLe,pLe,mLe,gLe,yLe,vLe,xLe,bLe,TLe,wLe,kLe,ELe,SLe,CLe,ALe,_Le,yw,U9=N(()=>{"use strict";pt();fLe=o((t,e,r,n)=>{e.forEach(i=>{_Le[i](t,r,n)})},"insertMarkers"),dLe=o((t,e,r)=>{X.trace("Making markers for ",r),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionStart").attr("class","marker extension "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionEnd").attr("class","marker extension "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},"extension"),pLe=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionStart").attr("class","marker composition "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionEnd").attr("class","marker composition "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"composition"),mLe=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationStart").attr("class","marker aggregation "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationEnd").attr("class","marker aggregation "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"aggregation"),gLe=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyStart").attr("class","marker dependency "+e).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyEnd").attr("class","marker dependency "+e).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"dependency"),yLe=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopStart").attr("class","marker lollipop "+e).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopEnd").attr("class","marker lollipop "+e).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},"lollipop"),vLe=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-pointEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-pointStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).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")},"point"),xLe=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-circleEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-circleStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"circle"),bLe=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-crossEnd").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-crossStart").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},"cross"),TLe=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),wLe=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-onlyOneStart").attr("class","marker onlyOne "+e).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M9,0 L9,18 M15,0 L15,18"),t.append("defs").append("marker").attr("id",r+"_"+e+"-onlyOneEnd").attr("class","marker onlyOne "+e).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M3,0 L3,18 M9,0 L9,18")},"only_one"),kLe=o((t,e,r)=>{let n=t.append("defs").append("marker").attr("id",r+"_"+e+"-zeroOrOneStart").attr("class","marker zeroOrOne "+e).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");n.append("circle").attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),n.append("path").attr("d","M9,0 L9,18");let i=t.append("defs").append("marker").attr("id",r+"_"+e+"-zeroOrOneEnd").attr("class","marker zeroOrOne "+e).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");i.append("circle").attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),i.append("path").attr("d","M21,0 L21,18")},"zero_or_one"),ELe=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-oneOrMoreStart").attr("class","marker oneOrMore "+e).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),t.append("defs").append("marker").attr("id",r+"_"+e+"-oneOrMoreEnd").attr("class","marker oneOrMore "+e).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18")},"one_or_more"),SLe=o((t,e,r)=>{let n=t.append("defs").append("marker").attr("id",r+"_"+e+"-zeroOrMoreStart").attr("class","marker zeroOrMore "+e).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");n.append("circle").attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),n.append("path").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18");let i=t.append("defs").append("marker").attr("id",r+"_"+e+"-zeroOrMoreEnd").attr("class","marker zeroOrMore "+e).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");i.append("circle").attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),i.append("path").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")},"zero_or_more"),CLe=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-requirement_arrowEnd").attr("refX",20).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("path").attr("d",`M0,0
|
||
L20,10
|
||
M20,10
|
||
L0,20`)},"requirement_arrow"),ALe=o((t,e,r)=>{let n=t.append("defs").append("marker").attr("id",r+"_"+e+"-requirement_containsStart").attr("refX",0).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("g");n.append("circle").attr("cx",10).attr("cy",10).attr("r",9).attr("fill","none"),n.append("line").attr("x1",1).attr("x2",19).attr("y1",10).attr("y2",10),n.append("line").attr("y1",1).attr("y2",19).attr("x1",10).attr("x2",10)},"requirement_contains"),_Le={extension:dLe,composition:pLe,aggregation:mLe,dependency:gLe,lollipop:yLe,point:vLe,circle:xLe,cross:bLe,barb:TLe,only_one:wLe,zero_or_one:kLe,one_or_more:ELe,zero_or_more:SLe,requirement_arrow:CLe,requirement_contains:ALe},yw=fLe});async function wm(t,e,r){let n,i;e.shape==="rect"&&(e.rx&&e.ry?e.shape="roundedRect":e.shape="squareRect");let a=e.shape?$9[e.shape]:void 0;if(!a)throw new Error(`No such shape: ${e.shape}. Please check your syntax.`);if(e.link){let s;r.config.securityLevel==="sandbox"?s="_top":e.linkTarget&&(s=e.linkTarget||"_blank"),n=t.insert("svg:a").attr("xlink:href",e.link).attr("target",s??null),i=await a(n,e,r)}else i=await a(t,e,r),n=i;return e.tooltip&&i.attr("title",e.tooltip),vw.set(e.id,n),e.haveCallback&&n.attr("class",n.attr("class")+" clickable"),n}var vw,Aee,_ee,I2,xw=N(()=>{"use strict";pt();G9();vw=new Map;o(wm,"insertNode");Aee=o((t,e)=>{vw.set(e.id,t)},"setNodeElem"),_ee=o(()=>{vw.clear()},"clear"),I2=o(t=>{let e=vw.get(t.id);X.trace("Transforming node",t.diff,t,"translate("+(t.x-t.width/2-5)+", "+t.width/2+")");let r=8,n=t.diff||0;return t.clusterNode?e.attr("transform","translate("+(t.x+n-t.width/2)+", "+(t.y-t.height/2-r)+")"):e.attr("transform","translate("+t.x+", "+t.y+")"),n},"positionNode")});var Dee,Lee=N(()=>{"use strict";Wn();dr();pt();cw();V9();U9();xw();Nt();tr();Dee={common:Je,getConfig:Qt,insertCluster:Tm,insertEdge:gw,insertEdgeLabel:pw,insertMarkers:yw,insertNode:wm,interpolateToCurve:NL,labelHelper:lt,log:X,positionEdgeLabel:mw}});function LLe(t){return typeof t=="symbol"||ai(t)&&ha(t)==DLe}var DLe,oo,Qd=N(()=>{"use strict";Cu();Io();DLe="[object Symbol]";o(LLe,"isSymbol");oo=LLe});function RLe(t,e){for(var r=-1,n=t==null?0:t.length,i=Array(n);++r<n;)i[r]=e(t[r],r,t);return i}var Fs,Zd=N(()=>{"use strict";o(RLe,"arrayMap");Fs=RLe});function Mee(t){if(typeof t=="string")return t;if(Pt(t))return Fs(t,Mee)+"";if(oo(t))return Nee?Nee.call(t):"";var e=t+"";return e=="0"&&1/t==-NLe?"-0":e}var NLe,Ree,Nee,Iee,Oee=N(()=>{"use strict";Od();Zd();Yn();Qd();NLe=1/0,Ree=Qi?Qi.prototype:void 0,Nee=Ree?Ree.toString:void 0;o(Mee,"baseToString");Iee=Mee});function ILe(t){for(var e=t.length;e--&&MLe.test(t.charAt(e)););return e}var MLe,Pee,Bee=N(()=>{"use strict";MLe=/\s/;o(ILe,"trimmedEndIndex");Pee=ILe});function PLe(t){return t&&t.slice(0,Pee(t)+1).replace(OLe,"")}var OLe,Fee,$ee=N(()=>{"use strict";Bee();OLe=/^\s+/;o(PLe,"baseTrim");Fee=PLe});function zLe(t){if(typeof t=="number")return t;if(oo(t))return Gee;if(Tn(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=Tn(e)?e+"":e}if(typeof t!="string")return t===0?t:+t;t=Fee(t);var r=FLe.test(t);return r||$Le.test(t)?GLe(t.slice(2),r?2:8):BLe.test(t)?Gee:+t}var Gee,BLe,FLe,$Le,GLe,zee,Vee=N(()=>{"use strict";$ee();io();Qd();Gee=NaN,BLe=/^[-+]0x[0-9a-f]+$/i,FLe=/^0b[01]+$/i,$Le=/^0o[0-7]+$/i,GLe=parseInt;o(zLe,"toNumber");zee=zLe});function ULe(t){if(!t)return t===0?t:0;if(t=zee(t),t===Uee||t===-Uee){var e=t<0?-1:1;return e*VLe}return t===t?t:0}var Uee,VLe,km,H9=N(()=>{"use strict";Vee();Uee=1/0,VLe=17976931348623157e292;o(ULe,"toFinite");km=ULe});function HLe(t){var e=km(t),r=e%1;return e===e?r?e-r:e:0}var wc,Em=N(()=>{"use strict";H9();o(HLe,"toInteger");wc=HLe});var WLe,bw,Hee=N(()=>{"use strict";Oh();No();WLe=Ds(fi,"WeakMap"),bw=WLe});function qLe(){}var si,W9=N(()=>{"use strict";o(qLe,"noop");si=qLe});function YLe(t,e){for(var r=-1,n=t==null?0:t.length;++r<n&&e(t[r],r,t)!==!1;);return t}var Tw,q9=N(()=>{"use strict";o(YLe,"arrayEach");Tw=YLe});function XLe(t,e,r,n){for(var i=t.length,a=r+(n?1:-1);n?a--:++a<i;)if(e(t[a],a,t))return a;return-1}var ww,Y9=N(()=>{"use strict";o(XLe,"baseFindIndex");ww=XLe});function jLe(t){return t!==t}var Wee,qee=N(()=>{"use strict";o(jLe,"baseIsNaN");Wee=jLe});function KLe(t,e,r){for(var n=r-1,i=t.length;++n<i;)if(t[n]===e)return n;return-1}var Yee,Xee=N(()=>{"use strict";o(KLe,"strictIndexOf");Yee=KLe});function QLe(t,e,r){return e===e?Yee(t,e,r):ww(t,Wee,r)}var Sm,kw=N(()=>{"use strict";Y9();qee();Xee();o(QLe,"baseIndexOf");Sm=QLe});function ZLe(t,e){var r=t==null?0:t.length;return!!r&&Sm(t,e,0)>-1}var Ew,X9=N(()=>{"use strict";kw();o(ZLe,"arrayIncludes");Ew=ZLe});var JLe,jee,Kee=N(()=>{"use strict";xL();JLe=vT(Object.keys,Object),jee=JLe});function r9e(t){if(!pc(t))return jee(t);var e=[];for(var r in Object(t))t9e.call(t,r)&&r!="constructor"&&e.push(r);return e}var e9e,t9e,Cm,Sw=N(()=>{"use strict";cm();Kee();e9e=Object.prototype,t9e=e9e.hasOwnProperty;o(r9e,"baseKeys");Cm=r9e});function n9e(t){return di(t)?kT(t):Cm(t)}var Gr,kc=N(()=>{"use strict";EL();Sw();Oo();o(n9e,"keys");Gr=n9e});var i9e,a9e,s9e,da,Qee=N(()=>{"use strict";dm();Gd();_L();Oo();cm();kc();i9e=Object.prototype,a9e=i9e.hasOwnProperty,s9e=CT(function(t,e){if(pc(e)||di(e)){Fo(e,Gr(e),t);return}for(var r in e)a9e.call(e,r)&&mc(t,r,e[r])}),da=s9e});function c9e(t,e){if(Pt(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||oo(t)?!0:l9e.test(t)||!o9e.test(t)||e!=null&&t in Object(e)}var o9e,l9e,Am,Cw=N(()=>{"use strict";Yn();Qd();o9e=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,l9e=/^\w*$/;o(c9e,"isKey");Am=c9e});function h9e(t){var e=tm(t,function(n){return r.size===u9e&&r.clear(),n}),r=e.cache;return e}var u9e,Zee,Jee=N(()=>{"use strict";fL();u9e=500;o(h9e,"memoizeCapped");Zee=h9e});var f9e,d9e,p9e,ete,tte=N(()=>{"use strict";Jee();f9e=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,d9e=/\\(\\)?/g,p9e=Zee(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(f9e,function(r,n,i,a){e.push(i?a.replace(d9e,"$1"):n||r)}),e}),ete=p9e});function m9e(t){return t==null?"":Iee(t)}var Aw,j9=N(()=>{"use strict";Oee();o(m9e,"toString");Aw=m9e});function g9e(t,e){return Pt(t)?t:Am(t,e)?[t]:ete(Aw(t))}var ef,O2=N(()=>{"use strict";Yn();Cw();tte();j9();o(g9e,"castPath");ef=g9e});function v9e(t){if(typeof t=="string"||oo(t))return t;var e=t+"";return e=="0"&&1/t==-y9e?"-0":e}var y9e,Ec,_m=N(()=>{"use strict";Qd();y9e=1/0;o(v9e,"toKey");Ec=v9e});function x9e(t,e){e=ef(e,t);for(var r=0,n=e.length;t!=null&&r<n;)t=t[Ec(e[r++])];return r&&r==n?t:void 0}var tf,P2=N(()=>{"use strict";O2();_m();o(x9e,"baseGet");tf=x9e});function b9e(t,e,r){var n=t==null?void 0:tf(t,e);return n===void 0?r:n}var rte,nte=N(()=>{"use strict";P2();o(b9e,"get");rte=b9e});function T9e(t,e){for(var r=-1,n=e.length,i=t.length;++r<n;)t[i+r]=e[r];return t}var Dm,_w=N(()=>{"use strict";o(T9e,"arrayPush");Dm=T9e});function w9e(t){return Pt(t)||_l(t)||!!(ite&&t&&t[ite])}var ite,ate,ste=N(()=>{"use strict";Od();um();Yn();ite=Qi?Qi.isConcatSpreadable:void 0;o(w9e,"isFlattenable");ate=w9e});function ote(t,e,r,n,i){var a=-1,s=t.length;for(r||(r=ate),i||(i=[]);++a<s;){var l=t[a];e>0&&r(l)?e>1?ote(l,e-1,r,n,i):Dm(i,l):n||(i[i.length]=l)}return i}var Sc,Lm=N(()=>{"use strict";_w();ste();o(ote,"baseFlatten");Sc=ote});function k9e(t){var e=t==null?0:t.length;return e?Sc(t,1):[]}var qr,Dw=N(()=>{"use strict";Lm();o(k9e,"flatten");qr=k9e});function E9e(t){return ST(ET(t,void 0,qr),t+"")}var lte,cte=N(()=>{"use strict";Dw();SL();AL();o(E9e,"flatRest");lte=E9e});function S9e(t,e,r){var n=-1,i=t.length;e<0&&(e=-e>i?0:i+e),r=r>i?i:r,r<0&&(r+=i),i=e>r?0:r-e>>>0,e>>>=0;for(var a=Array(i);++n<i;)a[n]=t[n+e];return a}var Lw,K9=N(()=>{"use strict";o(S9e,"baseSlice");Lw=S9e});function I9e(t){return M9e.test(t)}var C9e,A9e,_9e,D9e,L9e,R9e,N9e,M9e,ute,hte=N(()=>{"use strict";C9e="\\ud800-\\udfff",A9e="\\u0300-\\u036f",_9e="\\ufe20-\\ufe2f",D9e="\\u20d0-\\u20ff",L9e=A9e+_9e+D9e,R9e="\\ufe0e\\ufe0f",N9e="\\u200d",M9e=RegExp("["+N9e+C9e+L9e+R9e+"]");o(I9e,"hasUnicode");ute=I9e});function O9e(t,e,r,n){var i=-1,a=t==null?0:t.length;for(n&&a&&(r=t[++i]);++i<a;)r=e(r,t[i],i,t);return r}var fte,dte=N(()=>{"use strict";o(O9e,"arrayReduce");fte=O9e});function P9e(t,e){return t&&Fo(e,Gr(e),t)}var pte,mte=N(()=>{"use strict";Gd();kc();o(P9e,"baseAssign");pte=P9e});function B9e(t,e){return t&&Fo(e,Ls(e),t)}var gte,yte=N(()=>{"use strict";Gd();Vh();o(B9e,"baseAssignIn");gte=B9e});function F9e(t,e){for(var r=-1,n=t==null?0:t.length,i=0,a=[];++r<n;){var s=t[r];e(s,r,t)&&(a[i++]=s)}return a}var Rm,Rw=N(()=>{"use strict";o(F9e,"arrayFilter");Rm=F9e});function $9e(){return[]}var Nw,Q9=N(()=>{"use strict";o($9e,"stubArray");Nw=$9e});var G9e,z9e,vte,V9e,Nm,Mw=N(()=>{"use strict";Rw();Q9();G9e=Object.prototype,z9e=G9e.propertyIsEnumerable,vte=Object.getOwnPropertySymbols,V9e=vte?function(t){return t==null?[]:(t=Object(t),Rm(vte(t),function(e){return z9e.call(t,e)}))}:Nw,Nm=V9e});function U9e(t,e){return Fo(t,Nm(t),e)}var xte,bte=N(()=>{"use strict";Gd();Mw();o(U9e,"copySymbols");xte=U9e});var H9e,W9e,Iw,Z9=N(()=>{"use strict";_w();xT();Mw();Q9();H9e=Object.getOwnPropertySymbols,W9e=H9e?function(t){for(var e=[];t;)Dm(e,Nm(t)),t=lm(t);return e}:Nw,Iw=W9e});function q9e(t,e){return Fo(t,Iw(t),e)}var Tte,wte=N(()=>{"use strict";Gd();Z9();o(q9e,"copySymbolsIn");Tte=q9e});function Y9e(t,e,r){var n=e(t);return Pt(t)?n:Dm(n,r(t))}var Ow,J9=N(()=>{"use strict";_w();Yn();o(Y9e,"baseGetAllKeys");Ow=Y9e});function X9e(t){return Ow(t,Gr,Nm)}var B2,eR=N(()=>{"use strict";J9();Mw();kc();o(X9e,"getAllKeys");B2=X9e});function j9e(t){return Ow(t,Ls,Iw)}var Pw,tR=N(()=>{"use strict";J9();Z9();Vh();o(j9e,"getAllKeysIn");Pw=j9e});var K9e,Bw,kte=N(()=>{"use strict";Oh();No();K9e=Ds(fi,"DataView"),Bw=K9e});var Q9e,Fw,Ete=N(()=>{"use strict";Oh();No();Q9e=Ds(fi,"Promise"),Fw=Q9e});var Z9e,rf,rR=N(()=>{"use strict";Oh();No();Z9e=Ds(fi,"Set"),rf=Z9e});var Ste,J9e,Cte,Ate,_te,Dte,eRe,tRe,rRe,nRe,iRe,Jd,lo,ep=N(()=>{"use strict";kte();hT();Ete();rR();Hee();Cu();cL();Ste="[object Map]",J9e="[object Object]",Cte="[object Promise]",Ate="[object Set]",_te="[object WeakMap]",Dte="[object DataView]",eRe=Au(Bw),tRe=Au(Fh),rRe=Au(Fw),nRe=Au(rf),iRe=Au(bw),Jd=ha;(Bw&&Jd(new Bw(new ArrayBuffer(1)))!=Dte||Fh&&Jd(new Fh)!=Ste||Fw&&Jd(Fw.resolve())!=Cte||rf&&Jd(new rf)!=Ate||bw&&Jd(new bw)!=_te)&&(Jd=o(function(t){var e=ha(t),r=e==J9e?t.constructor:void 0,n=r?Au(r):"";if(n)switch(n){case eRe:return Dte;case tRe:return Ste;case rRe:return Cte;case nRe:return Ate;case iRe:return _te}return e},"getTag"));lo=Jd});function oRe(t){var e=t.length,r=new t.constructor(e);return e&&typeof t[0]=="string"&&sRe.call(t,"index")&&(r.index=t.index,r.input=t.input),r}var aRe,sRe,Lte,Rte=N(()=>{"use strict";aRe=Object.prototype,sRe=aRe.hasOwnProperty;o(oRe,"initCloneArray");Lte=oRe});function lRe(t,e){var r=e?om(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}var Nte,Mte=N(()=>{"use strict";mT();o(lRe,"cloneDataView");Nte=lRe});function uRe(t){var e=new t.constructor(t.source,cRe.exec(t));return e.lastIndex=t.lastIndex,e}var cRe,Ite,Ote=N(()=>{"use strict";cRe=/\w*$/;o(uRe,"cloneRegExp");Ite=uRe});function hRe(t){return Bte?Object(Bte.call(t)):{}}var Pte,Bte,Fte,$te=N(()=>{"use strict";Od();Pte=Qi?Qi.prototype:void 0,Bte=Pte?Pte.valueOf:void 0;o(hRe,"cloneSymbol");Fte=hRe});function RRe(t,e,r){var n=t.constructor;switch(e){case bRe:return om(t);case fRe:case dRe:return new n(+t);case TRe:return Nte(t,r);case wRe:case kRe:case ERe:case SRe:case CRe:case ARe:case _Re:case DRe:case LRe:return gT(t,r);case pRe:return new n;case mRe:case vRe:return new n(t);case gRe:return Ite(t);case yRe:return new n;case xRe:return Fte(t)}}var fRe,dRe,pRe,mRe,gRe,yRe,vRe,xRe,bRe,TRe,wRe,kRe,ERe,SRe,CRe,ARe,_Re,DRe,LRe,Gte,zte=N(()=>{"use strict";mT();Mte();Ote();$te();yL();fRe="[object Boolean]",dRe="[object Date]",pRe="[object Map]",mRe="[object Number]",gRe="[object RegExp]",yRe="[object Set]",vRe="[object String]",xRe="[object Symbol]",bRe="[object ArrayBuffer]",TRe="[object DataView]",wRe="[object Float32Array]",kRe="[object Float64Array]",ERe="[object Int8Array]",SRe="[object Int16Array]",CRe="[object Int32Array]",ARe="[object Uint8Array]",_Re="[object Uint8ClampedArray]",DRe="[object Uint16Array]",LRe="[object Uint32Array]";o(RRe,"initCloneByTag");Gte=RRe});function MRe(t){return ai(t)&&lo(t)==NRe}var NRe,Vte,Ute=N(()=>{"use strict";ep();Io();NRe="[object Map]";o(MRe,"baseIsMap");Vte=MRe});var Hte,IRe,Wte,qte=N(()=>{"use strict";Ute();$d();u2();Hte=Bo&&Bo.isMap,IRe=Hte?Po(Hte):Vte,Wte=IRe});function PRe(t){return ai(t)&&lo(t)==ORe}var ORe,Yte,Xte=N(()=>{"use strict";ep();Io();ORe="[object Set]";o(PRe,"baseIsSet");Yte=PRe});var jte,BRe,Kte,Qte=N(()=>{"use strict";Xte();$d();u2();jte=Bo&&Bo.isSet,BRe=jte?Po(jte):Yte,Kte=BRe});function $w(t,e,r,n,i,a){var s,l=e&FRe,u=e&$Re,h=e&GRe;if(r&&(s=i?r(t,n,i,a):r(t)),s!==void 0)return s;if(!Tn(t))return t;var f=Pt(t);if(f){if(s=Lte(t),!l)return yT(t,s)}else{var d=lo(t),p=d==Jte||d==WRe;if(Dl(t))return pT(t,l);if(d==ere||d==Zte||p&&!i){if(s=u||p?{}:bT(t),!l)return u?Tte(t,gte(s,t)):xte(t,pte(s,t))}else{if(!Rn[d])return i?t:{};s=Gte(t,d,l)}}a||(a=new fc);var m=a.get(t);if(m)return m;a.set(t,s),Kte(t)?t.forEach(function(x){s.add($w(x,e,r,x,t,a))}):Wte(t)&&t.forEach(function(x,v){s.set(v,$w(x,e,r,v,t,a))});var g=h?u?Pw:B2:u?Ls:Gr,y=f?void 0:g(t);return Tw(y||t,function(x,v){y&&(v=x,x=t[v]),mc(s,v,$w(x,e,r,v,t,a))}),s}var FRe,$Re,GRe,Zte,zRe,VRe,URe,HRe,Jte,WRe,qRe,YRe,ere,XRe,jRe,KRe,QRe,ZRe,JRe,eNe,tNe,rNe,nNe,iNe,aNe,sNe,oNe,lNe,cNe,Rn,Gw,nR=N(()=>{"use strict";o2();q9();dm();mte();yte();mL();vL();bte();wte();eR();tR();ep();Rte();zte();bL();Yn();fm();qte();io();Qte();kc();Vh();FRe=1,$Re=2,GRe=4,Zte="[object Arguments]",zRe="[object Array]",VRe="[object Boolean]",URe="[object Date]",HRe="[object Error]",Jte="[object Function]",WRe="[object GeneratorFunction]",qRe="[object Map]",YRe="[object Number]",ere="[object Object]",XRe="[object RegExp]",jRe="[object Set]",KRe="[object String]",QRe="[object Symbol]",ZRe="[object WeakMap]",JRe="[object ArrayBuffer]",eNe="[object DataView]",tNe="[object Float32Array]",rNe="[object Float64Array]",nNe="[object Int8Array]",iNe="[object Int16Array]",aNe="[object Int32Array]",sNe="[object Uint8Array]",oNe="[object Uint8ClampedArray]",lNe="[object Uint16Array]",cNe="[object Uint32Array]",Rn={};Rn[Zte]=Rn[zRe]=Rn[JRe]=Rn[eNe]=Rn[VRe]=Rn[URe]=Rn[tNe]=Rn[rNe]=Rn[nNe]=Rn[iNe]=Rn[aNe]=Rn[qRe]=Rn[YRe]=Rn[ere]=Rn[XRe]=Rn[jRe]=Rn[KRe]=Rn[QRe]=Rn[sNe]=Rn[oNe]=Rn[lNe]=Rn[cNe]=!0;Rn[HRe]=Rn[Jte]=Rn[ZRe]=!1;o($w,"baseClone");Gw=$w});function hNe(t){return Gw(t,uNe)}var uNe,an,iR=N(()=>{"use strict";nR();uNe=4;o(hNe,"clone");an=hNe});function pNe(t){return Gw(t,fNe|dNe)}var fNe,dNe,aR,tre=N(()=>{"use strict";nR();fNe=1,dNe=4;o(pNe,"cloneDeep");aR=pNe});function mNe(t){for(var e=-1,r=t==null?0:t.length,n=0,i=[];++e<r;){var a=t[e];a&&(i[n++]=a)}return i}var Cc,rre=N(()=>{"use strict";o(mNe,"compact");Cc=mNe});function yNe(t){return this.__data__.set(t,gNe),this}var gNe,nre,ire=N(()=>{"use strict";gNe="__lodash_hash_undefined__";o(yNe,"setCacheAdd");nre=yNe});function vNe(t){return this.__data__.has(t)}var are,sre=N(()=>{"use strict";o(vNe,"setCacheHas");are=vNe});function zw(t){var e=-1,r=t==null?0:t.length;for(this.__data__=new Bd;++e<r;)this.add(t[e])}var Mm,Vw=N(()=>{"use strict";fT();ire();sre();o(zw,"SetCache");zw.prototype.add=zw.prototype.push=nre;zw.prototype.has=are;Mm=zw});function xNe(t,e){for(var r=-1,n=t==null?0:t.length;++r<n;)if(e(t[r],r,t))return!0;return!1}var Uw,sR=N(()=>{"use strict";o(xNe,"arraySome");Uw=xNe});function bNe(t,e){return t.has(e)}var Im,Hw=N(()=>{"use strict";o(bNe,"cacheHas");Im=bNe});function kNe(t,e,r,n,i,a){var s=r&TNe,l=t.length,u=e.length;if(l!=u&&!(s&&u>l))return!1;var h=a.get(t),f=a.get(e);if(h&&f)return h==e&&f==t;var d=-1,p=!0,m=r&wNe?new Mm:void 0;for(a.set(t,e),a.set(e,t);++d<l;){var g=t[d],y=e[d];if(n)var x=s?n(y,g,d,e,t,a):n(g,y,d,t,e,a);if(x!==void 0){if(x)continue;p=!1;break}if(m){if(!Uw(e,function(v,b){if(!Im(m,b)&&(g===v||i(g,v,r,n,a)))return m.push(b)})){p=!1;break}}else if(!(g===y||i(g,y,r,n,a))){p=!1;break}}return a.delete(t),a.delete(e),p}var TNe,wNe,Ww,oR=N(()=>{"use strict";Vw();sR();Hw();TNe=1,wNe=2;o(kNe,"equalArrays");Ww=kNe});function ENe(t){var e=-1,r=Array(t.size);return t.forEach(function(n,i){r[++e]=[i,n]}),r}var ore,lre=N(()=>{"use strict";o(ENe,"mapToArray");ore=ENe});function SNe(t){var e=-1,r=Array(t.size);return t.forEach(function(n){r[++e]=n}),r}var Om,qw=N(()=>{"use strict";o(SNe,"setToArray");Om=SNe});function $Ne(t,e,r,n,i,a,s){switch(r){case FNe:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case BNe:return!(t.byteLength!=e.byteLength||!a(new sm(t),new sm(e)));case _Ne:case DNe:case NNe:return Mo(+t,+e);case LNe:return t.name==e.name&&t.message==e.message;case MNe:case ONe:return t==e+"";case RNe:var l=ore;case INe:var u=n&CNe;if(l||(l=Om),t.size!=e.size&&!u)return!1;var h=s.get(t);if(h)return h==e;n|=ANe,s.set(t,e);var f=Ww(l(t),l(e),n,i,a,s);return s.delete(t),f;case PNe:if(lR)return lR.call(t)==lR.call(e)}return!1}var CNe,ANe,_Ne,DNe,LNe,RNe,NNe,MNe,INe,ONe,PNe,BNe,FNe,cre,lR,ure,hre=N(()=>{"use strict";Od();gL();Pd();oR();lre();qw();CNe=1,ANe=2,_Ne="[object Boolean]",DNe="[object Date]",LNe="[object Error]",RNe="[object Map]",NNe="[object Number]",MNe="[object RegExp]",INe="[object Set]",ONe="[object String]",PNe="[object Symbol]",BNe="[object ArrayBuffer]",FNe="[object DataView]",cre=Qi?Qi.prototype:void 0,lR=cre?cre.valueOf:void 0;o($Ne,"equalByTag");ure=$Ne});function UNe(t,e,r,n,i,a){var s=r&GNe,l=B2(t),u=l.length,h=B2(e),f=h.length;if(u!=f&&!s)return!1;for(var d=u;d--;){var p=l[d];if(!(s?p in e:VNe.call(e,p)))return!1}var m=a.get(t),g=a.get(e);if(m&&g)return m==e&&g==t;var y=!0;a.set(t,e),a.set(e,t);for(var x=s;++d<u;){p=l[d];var v=t[p],b=e[p];if(n)var T=s?n(b,v,p,e,t,a):n(v,b,p,t,e,a);if(!(T===void 0?v===b||i(v,b,r,n,a):T)){y=!1;break}x||(x=p=="constructor")}if(y&&!x){var S=t.constructor,w=e.constructor;S!=w&&"constructor"in t&&"constructor"in e&&!(typeof S=="function"&&S instanceof S&&typeof w=="function"&&w instanceof w)&&(y=!1)}return a.delete(t),a.delete(e),y}var GNe,zNe,VNe,fre,dre=N(()=>{"use strict";eR();GNe=1,zNe=Object.prototype,VNe=zNe.hasOwnProperty;o(UNe,"equalObjects");fre=UNe});function qNe(t,e,r,n,i,a){var s=Pt(t),l=Pt(e),u=s?mre:lo(t),h=l?mre:lo(e);u=u==pre?Yw:u,h=h==pre?Yw:h;var f=u==Yw,d=h==Yw,p=u==h;if(p&&Dl(t)){if(!Dl(e))return!1;s=!0,f=!1}if(p&&!f)return a||(a=new fc),s||Gh(t)?Ww(t,e,r,n,i,a):ure(t,e,u,r,n,i,a);if(!(r&HNe)){var m=f&&gre.call(t,"__wrapped__"),g=d&&gre.call(e,"__wrapped__");if(m||g){var y=m?t.value():t,x=g?e.value():e;return a||(a=new fc),i(y,x,r,n,a)}}return p?(a||(a=new fc),fre(t,e,r,n,i,a)):!1}var HNe,pre,mre,Yw,WNe,gre,yre,vre=N(()=>{"use strict";o2();oR();hre();dre();ep();Yn();fm();h2();HNe=1,pre="[object Arguments]",mre="[object Array]",Yw="[object Object]",WNe=Object.prototype,gre=WNe.hasOwnProperty;o(qNe,"baseIsEqualDeep");yre=qNe});function xre(t,e,r,n,i){return t===e?!0:t==null||e==null||!ai(t)&&!ai(e)?t!==t&&e!==e:yre(t,e,r,n,xre,i)}var Xw,cR=N(()=>{"use strict";vre();Io();o(xre,"baseIsEqual");Xw=xre});function jNe(t,e,r,n){var i=r.length,a=i,s=!n;if(t==null)return!a;for(t=Object(t);i--;){var l=r[i];if(s&&l[2]?l[1]!==t[l[0]]:!(l[0]in t))return!1}for(;++i<a;){l=r[i];var u=l[0],h=t[u],f=l[1];if(s&&l[2]){if(h===void 0&&!(u in t))return!1}else{var d=new fc;if(n)var p=n(h,f,u,t,e,d);if(!(p===void 0?Xw(f,h,YNe|XNe,n,d):p))return!1}}return!0}var YNe,XNe,bre,Tre=N(()=>{"use strict";o2();cR();YNe=1,XNe=2;o(jNe,"baseIsMatch");bre=jNe});function KNe(t){return t===t&&!Tn(t)}var jw,uR=N(()=>{"use strict";io();o(KNe,"isStrictComparable");jw=KNe});function QNe(t){for(var e=Gr(t),r=e.length;r--;){var n=e[r],i=t[n];e[r]=[n,i,jw(i)]}return e}var wre,kre=N(()=>{"use strict";uR();kc();o(QNe,"getMatchData");wre=QNe});function ZNe(t,e){return function(r){return r==null?!1:r[t]===e&&(e!==void 0||t in Object(r))}}var Kw,hR=N(()=>{"use strict";o(ZNe,"matchesStrictComparable");Kw=ZNe});function JNe(t){var e=wre(t);return e.length==1&&e[0][2]?Kw(e[0][0],e[0][1]):function(r){return r===t||bre(r,t,e)}}var Ere,Sre=N(()=>{"use strict";Tre();kre();hR();o(JNe,"baseMatches");Ere=JNe});function eMe(t,e){return t!=null&&e in Object(t)}var Cre,Are=N(()=>{"use strict";o(eMe,"baseHasIn");Cre=eMe});function tMe(t,e,r){e=ef(e,t);for(var n=-1,i=e.length,a=!1;++n<i;){var s=Ec(e[n]);if(!(a=t!=null&&r(t,s)))break;t=t[s]}return a||++n!=i?a:(i=t==null?0:t.length,!!i&&hm(i)&&zh(s,i)&&(Pt(t)||_l(t)))}var Qw,fR=N(()=>{"use strict";O2();um();Yn();d2();TT();_m();o(tMe,"hasPath");Qw=tMe});function rMe(t,e){return t!=null&&Qw(t,e,Cre)}var Zw,dR=N(()=>{"use strict";Are();fR();o(rMe,"hasIn");Zw=rMe});function aMe(t,e){return Am(t)&&jw(e)?Kw(Ec(t),e):function(r){var n=rte(r,t);return n===void 0&&n===e?Zw(r,t):Xw(e,n,nMe|iMe)}}var nMe,iMe,_re,Dre=N(()=>{"use strict";cR();nte();dR();Cw();uR();hR();_m();nMe=1,iMe=2;o(aMe,"baseMatchesProperty");_re=aMe});function sMe(t){return function(e){return e?.[t]}}var Jw,pR=N(()=>{"use strict";o(sMe,"baseProperty");Jw=sMe});function oMe(t){return function(e){return tf(e,t)}}var Lre,Rre=N(()=>{"use strict";P2();o(oMe,"basePropertyDeep");Lre=oMe});function lMe(t){return Am(t)?Jw(Ec(t)):Lre(t)}var Nre,Mre=N(()=>{"use strict";pR();Rre();Cw();_m();o(lMe,"property");Nre=lMe});function cMe(t){return typeof t=="function"?t:t==null?Zi:typeof t=="object"?Pt(t)?_re(t[0],t[1]):Ere(t):Nre(t)}var mn,ss=N(()=>{"use strict";Sre();Dre();Du();Yn();Mre();o(cMe,"baseIteratee");mn=cMe});function uMe(t,e,r,n){for(var i=-1,a=t==null?0:t.length;++i<a;){var s=t[i];e(n,s,r(s),t)}return n}var Ire,Ore=N(()=>{"use strict";o(uMe,"arrayAggregator");Ire=uMe});function hMe(t,e){return t&&am(t,e,Gr)}var Pm,ek=N(()=>{"use strict";dT();kc();o(hMe,"baseForOwn");Pm=hMe});function fMe(t,e){return function(r,n){if(r==null)return r;if(!di(r))return t(r,n);for(var i=r.length,a=e?i:-1,s=Object(r);(e?a--:++a<i)&&n(s[a],a,s)!==!1;);return r}}var Pre,Bre=N(()=>{"use strict";Oo();o(fMe,"createBaseEach");Pre=fMe});var dMe,$s,nf=N(()=>{"use strict";ek();Bre();dMe=Pre(Pm),$s=dMe});function pMe(t,e,r,n){return $s(t,function(i,a,s){e(n,i,r(i),s)}),n}var Fre,$re=N(()=>{"use strict";nf();o(pMe,"baseAggregator");Fre=pMe});function mMe(t,e){return function(r,n){var i=Pt(r)?Ire:Fre,a=e?e():{};return i(r,t,mn(n,2),a)}}var Gre,zre=N(()=>{"use strict";Ore();$re();ss();Yn();o(mMe,"createAggregator");Gre=mMe});var gMe,tk,Vre=N(()=>{"use strict";No();gMe=o(function(){return fi.Date.now()},"now"),tk=gMe});var Ure,yMe,vMe,af,Hre=N(()=>{"use strict";pm();Pd();zd();Vh();Ure=Object.prototype,yMe=Ure.hasOwnProperty,vMe=gc(function(t,e){t=Object(t);var r=-1,n=e.length,i=n>2?e[2]:void 0;for(i&&ao(e[0],e[1],i)&&(n=1);++r<n;)for(var a=e[r],s=Ls(a),l=-1,u=s.length;++l<u;){var h=s[l],f=t[h];(f===void 0||Mo(f,Ure[h])&&!yMe.call(t,h))&&(t[h]=a[h])}return t}),af=vMe});function xMe(t,e,r){for(var n=-1,i=t==null?0:t.length;++n<i;)if(r(e,t[n]))return!0;return!1}var rk,mR=N(()=>{"use strict";o(xMe,"arrayIncludesWith");rk=xMe});function TMe(t,e,r,n){var i=-1,a=Ew,s=!0,l=t.length,u=[],h=e.length;if(!l)return u;r&&(e=Fs(e,Po(r))),n?(a=rk,s=!1):e.length>=bMe&&(a=Im,s=!1,e=new Mm(e));e:for(;++i<l;){var f=t[i],d=r==null?f:r(f);if(f=n||f!==0?f:0,s&&d===d){for(var p=h;p--;)if(e[p]===d)continue e;u.push(f)}else a(e,d,n)||u.push(f)}return u}var bMe,Wre,qre=N(()=>{"use strict";Vw();X9();mR();Zd();$d();Hw();bMe=200;o(TMe,"baseDifference");Wre=TMe});var wMe,sf,Yre=N(()=>{"use strict";qre();Lm();pm();wT();wMe=gc(function(t,e){return Fd(t)?Wre(t,Sc(e,1,Fd,!0)):[]}),sf=wMe});function kMe(t){var e=t==null?0:t.length;return e?t[e-1]:void 0}var pa,Xre=N(()=>{"use strict";o(kMe,"last");pa=kMe});function EMe(t,e,r){var n=t==null?0:t.length;return n?(e=r||e===void 0?1:wc(e),Lw(t,e<0?0:e,n)):[]}var xi,jre=N(()=>{"use strict";K9();Em();o(EMe,"drop");xi=EMe});function SMe(t,e,r){var n=t==null?0:t.length;return n?(e=r||e===void 0?1:wc(e),e=n-e,Lw(t,0,e<0?0:e)):[]}var Ou,Kre=N(()=>{"use strict";K9();Em();o(SMe,"dropRight");Ou=SMe});function CMe(t){return typeof t=="function"?t:Zi}var Bm,nk=N(()=>{"use strict";Du();o(CMe,"castFunction");Bm=CMe});function AMe(t,e){var r=Pt(t)?Tw:$s;return r(t,Bm(e))}var Ae,ik=N(()=>{"use strict";q9();nf();nk();Yn();o(AMe,"forEach");Ae=AMe});var Qre=N(()=>{"use strict";ik()});function _Me(t,e){for(var r=-1,n=t==null?0:t.length;++r<n;)if(!e(t[r],r,t))return!1;return!0}var Zre,Jre=N(()=>{"use strict";o(_Me,"arrayEvery");Zre=_Me});function DMe(t,e){var r=!0;return $s(t,function(n,i,a){return r=!!e(n,i,a),r}),r}var ene,tne=N(()=>{"use strict";nf();o(DMe,"baseEvery");ene=DMe});function LMe(t,e,r){var n=Pt(t)?Zre:ene;return r&&ao(t,e,r)&&(e=void 0),n(t,mn(e,3))}var Ia,rne=N(()=>{"use strict";Jre();tne();ss();Yn();zd();o(LMe,"every");Ia=LMe});function RMe(t,e){var r=[];return $s(t,function(n,i,a){e(n,i,a)&&r.push(n)}),r}var ak,gR=N(()=>{"use strict";nf();o(RMe,"baseFilter");ak=RMe});function NMe(t,e){var r=Pt(t)?Rm:ak;return r(t,mn(e,3))}var Yr,yR=N(()=>{"use strict";Rw();gR();ss();Yn();o(NMe,"filter");Yr=NMe});function MMe(t){return function(e,r,n){var i=Object(e);if(!di(e)){var a=mn(r,3);e=Gr(e),r=o(function(l){return a(i[l],l,i)},"predicate")}var s=t(e,r,n);return s>-1?i[a?e[s]:s]:void 0}}var nne,ine=N(()=>{"use strict";ss();Oo();kc();o(MMe,"createFind");nne=MMe});function OMe(t,e,r){var n=t==null?0:t.length;if(!n)return-1;var i=r==null?0:wc(r);return i<0&&(i=IMe(n+i,0)),ww(t,mn(e,3),i)}var IMe,ane,sne=N(()=>{"use strict";Y9();ss();Em();IMe=Math.max;o(OMe,"findIndex");ane=OMe});var PMe,os,one=N(()=>{"use strict";ine();sne();PMe=nne(ane),os=PMe});function BMe(t){return t&&t.length?t[0]:void 0}var ta,lne=N(()=>{"use strict";o(BMe,"head");ta=BMe});var cne=N(()=>{"use strict";lne()});function FMe(t,e){var r=-1,n=di(t)?Array(t.length):[];return $s(t,function(i,a,s){n[++r]=e(i,a,s)}),n}var sk,vR=N(()=>{"use strict";nf();Oo();o(FMe,"baseMap");sk=FMe});function $Me(t,e){var r=Pt(t)?Fs:sk;return r(t,mn(e,3))}var et,Fm=N(()=>{"use strict";Zd();ss();vR();Yn();o($Me,"map");et=$Me});function GMe(t,e){return Sc(et(t,e),1)}var ma,xR=N(()=>{"use strict";Lm();Fm();o(GMe,"flatMap");ma=GMe});function zMe(t,e){return t==null?t:am(t,Bm(e),Ls)}var bR,une=N(()=>{"use strict";dT();nk();Vh();o(zMe,"forIn");bR=zMe});function VMe(t,e){return t&&Pm(t,Bm(e))}var TR,hne=N(()=>{"use strict";ek();nk();o(VMe,"forOwn");TR=VMe});var UMe,HMe,WMe,wR,fne=N(()=>{"use strict";im();zre();UMe=Object.prototype,HMe=UMe.hasOwnProperty,WMe=Gre(function(t,e,r){HMe.call(t,r)?t[r].push(e):dc(t,r,[e])}),wR=WMe});function qMe(t,e){return t>e}var dne,pne=N(()=>{"use strict";o(qMe,"baseGt");dne=qMe});function jMe(t,e){return t!=null&&XMe.call(t,e)}var YMe,XMe,mne,gne=N(()=>{"use strict";YMe=Object.prototype,XMe=YMe.hasOwnProperty;o(jMe,"baseHas");mne=jMe});function KMe(t,e){return t!=null&&Qw(t,e,mne)}var Bt,yne=N(()=>{"use strict";gne();fR();o(KMe,"has");Bt=KMe});function ZMe(t){return typeof t=="string"||!Pt(t)&&ai(t)&&ha(t)==QMe}var QMe,bi,ok=N(()=>{"use strict";Cu();Yn();Io();QMe="[object String]";o(ZMe,"isString");bi=ZMe});function JMe(t,e){return Fs(e,function(r){return t[r]})}var vne,xne=N(()=>{"use strict";Zd();o(JMe,"baseValues");vne=JMe});function eIe(t){return t==null?[]:vne(t,Gr(t))}var br,kR=N(()=>{"use strict";xne();kc();o(eIe,"values");br=eIe});function rIe(t,e,r,n){t=di(t)?t:br(t),r=r&&!n?wc(r):0;var i=t.length;return r<0&&(r=tIe(i+r,0)),bi(t)?r<=i&&t.indexOf(e,r)>-1:!!i&&Sm(t,e,r)>-1}var tIe,jn,bne=N(()=>{"use strict";kw();Oo();ok();Em();kR();tIe=Math.max;o(rIe,"includes");jn=rIe});function iIe(t,e,r){var n=t==null?0:t.length;if(!n)return-1;var i=r==null?0:wc(r);return i<0&&(i=nIe(n+i,0)),Sm(t,e,i)}var nIe,lk,Tne=N(()=>{"use strict";kw();Em();nIe=Math.max;o(iIe,"indexOf");lk=iIe});function cIe(t){if(t==null)return!0;if(di(t)&&(Pt(t)||typeof t=="string"||typeof t.splice=="function"||Dl(t)||Gh(t)||_l(t)))return!t.length;var e=lo(t);if(e==aIe||e==sIe)return!t.size;if(pc(t))return!Cm(t).length;for(var r in t)if(lIe.call(t,r))return!1;return!0}var aIe,sIe,oIe,lIe,fr,ck=N(()=>{"use strict";Sw();ep();um();Yn();Oo();fm();cm();h2();aIe="[object Map]",sIe="[object Set]",oIe=Object.prototype,lIe=oIe.hasOwnProperty;o(cIe,"isEmpty");fr=cIe});function hIe(t){return ai(t)&&ha(t)==uIe}var uIe,wne,kne=N(()=>{"use strict";Cu();Io();uIe="[object RegExp]";o(hIe,"baseIsRegExp");wne=hIe});var Ene,fIe,Uo,Sne=N(()=>{"use strict";kne();$d();u2();Ene=Bo&&Bo.isRegExp,fIe=Ene?Po(Ene):wne,Uo=fIe});function dIe(t){return t===void 0}var gr,Cne=N(()=>{"use strict";o(dIe,"isUndefined");gr=dIe});function pIe(t,e){return t<e}var uk,ER=N(()=>{"use strict";o(pIe,"baseLt");uk=pIe});function mIe(t,e){var r={};return e=mn(e,3),Pm(t,function(n,i,a){dc(r,i,e(n,i,a))}),r}var tp,Ane=N(()=>{"use strict";im();ek();ss();o(mIe,"mapValues");tp=mIe});function gIe(t,e,r){for(var n=-1,i=t.length;++n<i;){var a=t[n],s=e(a);if(s!=null&&(l===void 0?s===s&&!oo(s):r(s,l)))var l=s,u=a}return u}var $m,hk=N(()=>{"use strict";Qd();o(gIe,"baseExtremum");$m=gIe});function yIe(t){return t&&t.length?$m(t,Zi,dne):void 0}var Gs,_ne=N(()=>{"use strict";hk();pne();Du();o(yIe,"max");Gs=yIe});function vIe(t){return t&&t.length?$m(t,Zi,uk):void 0}var Rl,SR=N(()=>{"use strict";hk();ER();Du();o(vIe,"min");Rl=vIe});function xIe(t,e){return t&&t.length?$m(t,mn(e,2),uk):void 0}var rp,Dne=N(()=>{"use strict";hk();ss();ER();o(xIe,"minBy");rp=xIe});function TIe(t){if(typeof t!="function")throw new TypeError(bIe);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}var bIe,Lne,Rne=N(()=>{"use strict";bIe="Expected a function";o(TIe,"negate");Lne=TIe});function wIe(t,e,r,n){if(!Tn(t))return t;e=ef(e,t);for(var i=-1,a=e.length,s=a-1,l=t;l!=null&&++i<a;){var u=Ec(e[i]),h=r;if(u==="__proto__"||u==="constructor"||u==="prototype")return t;if(i!=s){var f=l[u];h=n?n(f,u,l):void 0,h===void 0&&(h=Tn(f)?f:zh(e[i+1])?[]:{})}mc(l,u,h),l=l[u]}return t}var Nne,Mne=N(()=>{"use strict";dm();O2();d2();io();_m();o(wIe,"baseSet");Nne=wIe});function kIe(t,e,r){for(var n=-1,i=e.length,a={};++n<i;){var s=e[n],l=tf(t,s);r(l,s)&&Nne(a,ef(s,t),l)}return a}var fk,CR=N(()=>{"use strict";P2();Mne();O2();o(kIe,"basePickBy");fk=kIe});function EIe(t,e){if(t==null)return{};var r=Fs(Pw(t),function(n){return[n]});return e=mn(e),fk(t,r,function(n,i){return e(n,i[0])})}var zs,Ine=N(()=>{"use strict";Zd();ss();CR();tR();o(EIe,"pickBy");zs=EIe});function SIe(t,e){var r=t.length;for(t.sort(e);r--;)t[r]=t[r].value;return t}var One,Pne=N(()=>{"use strict";o(SIe,"baseSortBy");One=SIe});function CIe(t,e){if(t!==e){var r=t!==void 0,n=t===null,i=t===t,a=oo(t),s=e!==void 0,l=e===null,u=e===e,h=oo(e);if(!l&&!h&&!a&&t>e||a&&s&&u&&!l&&!h||n&&s&&u||!r&&u||!i)return 1;if(!n&&!a&&!h&&t<e||h&&r&&i&&!n&&!a||l&&r&&i||!s&&i||!u)return-1}return 0}var Bne,Fne=N(()=>{"use strict";Qd();o(CIe,"compareAscending");Bne=CIe});function AIe(t,e,r){for(var n=-1,i=t.criteria,a=e.criteria,s=i.length,l=r.length;++n<s;){var u=Bne(i[n],a[n]);if(u){if(n>=l)return u;var h=r[n];return u*(h=="desc"?-1:1)}}return t.index-e.index}var $ne,Gne=N(()=>{"use strict";Fne();o(AIe,"compareMultiple");$ne=AIe});function _Ie(t,e,r){e.length?e=Fs(e,function(a){return Pt(a)?function(s){return tf(s,a.length===1?a[0]:a)}:a}):e=[Zi];var n=-1;e=Fs(e,Po(mn));var i=sk(t,function(a,s,l){var u=Fs(e,function(h){return h(a)});return{criteria:u,index:++n,value:a}});return One(i,function(a,s){return $ne(a,s,r)})}var zne,Vne=N(()=>{"use strict";Zd();P2();ss();vR();Pne();$d();Gne();Du();Yn();o(_Ie,"baseOrderBy");zne=_Ie});var DIe,Une,Hne=N(()=>{"use strict";pR();DIe=Jw("length"),Une=DIe});function zIe(t){for(var e=Wne.lastIndex=0;Wne.test(t);)++e;return e}var qne,LIe,RIe,NIe,MIe,IIe,OIe,AR,_R,PIe,Yne,Xne,jne,BIe,Kne,Qne,FIe,$Ie,GIe,Wne,Zne,Jne=N(()=>{"use strict";qne="\\ud800-\\udfff",LIe="\\u0300-\\u036f",RIe="\\ufe20-\\ufe2f",NIe="\\u20d0-\\u20ff",MIe=LIe+RIe+NIe,IIe="\\ufe0e\\ufe0f",OIe="["+qne+"]",AR="["+MIe+"]",_R="\\ud83c[\\udffb-\\udfff]",PIe="(?:"+AR+"|"+_R+")",Yne="[^"+qne+"]",Xne="(?:\\ud83c[\\udde6-\\uddff]){2}",jne="[\\ud800-\\udbff][\\udc00-\\udfff]",BIe="\\u200d",Kne=PIe+"?",Qne="["+IIe+"]?",FIe="(?:"+BIe+"(?:"+[Yne,Xne,jne].join("|")+")"+Qne+Kne+")*",$Ie=Qne+Kne+FIe,GIe="(?:"+[Yne+AR+"?",AR,Xne,jne,OIe].join("|")+")",Wne=RegExp(_R+"(?="+_R+")|"+GIe+$Ie,"g");o(zIe,"unicodeSize");Zne=zIe});function VIe(t){return ute(t)?Zne(t):Une(t)}var eie,tie=N(()=>{"use strict";Hne();hte();Jne();o(VIe,"stringSize");eie=VIe});function UIe(t,e){return fk(t,e,function(r,n){return Zw(t,n)})}var rie,nie=N(()=>{"use strict";CR();dR();o(UIe,"basePick");rie=UIe});var HIe,np,iie=N(()=>{"use strict";nie();cte();HIe=lte(function(t,e){return t==null?{}:rie(t,e)}),np=HIe});function YIe(t,e,r,n){for(var i=-1,a=qIe(WIe((e-t)/(r||1)),0),s=Array(a);a--;)s[n?a:++i]=t,t+=r;return s}var WIe,qIe,aie,sie=N(()=>{"use strict";WIe=Math.ceil,qIe=Math.max;o(YIe,"baseRange");aie=YIe});function XIe(t){return function(e,r,n){return n&&typeof n!="number"&&ao(e,r,n)&&(r=n=void 0),e=km(e),r===void 0?(r=e,e=0):r=km(r),n=n===void 0?e<r?1:-1:km(n),aie(e,r,n,t)}}var oie,lie=N(()=>{"use strict";sie();zd();H9();o(XIe,"createRange");oie=XIe});var jIe,Ho,cie=N(()=>{"use strict";lie();jIe=oie(),Ho=jIe});function KIe(t,e,r,n,i){return i(t,function(a,s,l){r=n?(n=!1,a):e(r,a,s,l)}),r}var uie,hie=N(()=>{"use strict";o(KIe,"baseReduce");uie=KIe});function QIe(t,e,r){var n=Pt(t)?fte:uie,i=arguments.length<3;return n(t,mn(e,4),r,i,$s)}var Xr,DR=N(()=>{"use strict";dte();nf();ss();hie();Yn();o(QIe,"reduce");Xr=QIe});function ZIe(t,e){var r=Pt(t)?Rm:ak;return r(t,Lne(mn(e,3)))}var of,fie=N(()=>{"use strict";Rw();gR();ss();Yn();Rne();o(ZIe,"reject");of=ZIe});function tOe(t){if(t==null)return 0;if(di(t))return bi(t)?eie(t):t.length;var e=lo(t);return e==JIe||e==eOe?t.size:Cm(t).length}var JIe,eOe,LR,die=N(()=>{"use strict";Sw();ep();Oo();ok();tie();JIe="[object Map]",eOe="[object Set]";o(tOe,"size");LR=tOe});function rOe(t,e){var r;return $s(t,function(n,i,a){return r=e(n,i,a),!r}),!!r}var pie,mie=N(()=>{"use strict";nf();o(rOe,"baseSome");pie=rOe});function nOe(t,e,r){var n=Pt(t)?Uw:pie;return r&&ao(t,e,r)&&(e=void 0),n(t,mn(e,3))}var F2,gie=N(()=>{"use strict";sR();ss();mie();Yn();zd();o(nOe,"some");F2=nOe});var iOe,Ac,yie=N(()=>{"use strict";Lm();Vne();pm();zd();iOe=gc(function(t,e){if(t==null)return[];var r=e.length;return r>1&&ao(t,e[0],e[1])?e=[]:r>2&&ao(e[0],e[1],e[2])&&(e=[e[0]]),zne(t,Sc(e,1),[])}),Ac=iOe});var aOe,sOe,vie,xie=N(()=>{"use strict";rR();W9();qw();aOe=1/0,sOe=rf&&1/Om(new rf([,-0]))[1]==aOe?function(t){return new rf(t)}:si,vie=sOe});function lOe(t,e,r){var n=-1,i=Ew,a=t.length,s=!0,l=[],u=l;if(r)s=!1,i=rk;else if(a>=oOe){var h=e?null:vie(t);if(h)return Om(h);s=!1,i=Im,u=new Mm}else u=e?[]:l;e:for(;++n<a;){var f=t[n],d=e?e(f):f;if(f=r||f!==0?f:0,s&&d===d){for(var p=u.length;p--;)if(u[p]===d)continue e;e&&u.push(d),l.push(f)}else i(u,d,r)||(u!==l&&u.push(d),l.push(f))}return l}var oOe,Gm,dk=N(()=>{"use strict";Vw();X9();mR();Hw();xie();qw();oOe=200;o(lOe,"baseUniq");Gm=lOe});var cOe,RR,bie=N(()=>{"use strict";Lm();pm();dk();wT();cOe=gc(function(t){return Gm(Sc(t,1,Fd,!0))}),RR=cOe});function uOe(t){return t&&t.length?Gm(t):[]}var zm,Tie=N(()=>{"use strict";dk();o(uOe,"uniq");zm=uOe});function hOe(t,e){return t&&t.length?Gm(t,mn(e,2)):[]}var wie,kie=N(()=>{"use strict";ss();dk();o(hOe,"uniqBy");wie=hOe});function dOe(t){var e=++fOe;return Aw(t)+e}var fOe,ip,Eie=N(()=>{"use strict";j9();fOe=0;o(dOe,"uniqueId");ip=dOe});function pOe(t,e,r){for(var n=-1,i=t.length,a=e.length,s={};++n<i;){var l=n<a?e[n]:void 0;r(s,t[n],l)}return s}var Sie,Cie=N(()=>{"use strict";o(pOe,"baseZipObject");Sie=pOe});function mOe(t,e){return Sie(t||[],e||[],mc)}var pk,Aie=N(()=>{"use strict";dm();Cie();o(mOe,"zipObject");pk=mOe});var qt=N(()=>{"use strict";Qee();iR();tre();rre();CL();Hre();Yre();jre();Kre();Qre();rne();yR();one();cne();xR();Dw();ik();une();hne();fne();yne();Du();bne();Tne();Yn();ck();r2();io();Sne();ok();Cne();kc();Xre();Fm();Ane();_ne();DL();SR();Dne();W9();Vre();iie();Ine();cie();DR();fie();die();gie();yie();bie();Tie();Eie();kR();Aie();});function Die(t,e){t[e]?t[e]++:t[e]=1}function Lie(t,e){--t[e]||delete t[e]}function $2(t,e,r,n){var i=""+e,a=""+r;if(!t&&i>a){var s=i;i=a,a=s}return i+_ie+a+_ie+(gr(n)?gOe:n)}function yOe(t,e,r,n){var i=""+e,a=""+r;if(!t&&i>a){var s=i;i=a,a=s}var l={v:i,w:a};return n&&(l.name=n),l}function NR(t,e){return $2(t,e.v,e.w,e.name)}var gOe,ap,_ie,sn,mk=N(()=>{"use strict";qt();gOe="\0",ap="\0",_ie="",sn=class{static{o(this,"Graph")}constructor(e={}){this._isDirected=Object.prototype.hasOwnProperty.call(e,"directed")?e.directed:!0,this._isMultigraph=Object.prototype.hasOwnProperty.call(e,"multigraph")?e.multigraph:!1,this._isCompound=Object.prototype.hasOwnProperty.call(e,"compound")?e.compound:!1,this._label=void 0,this._defaultNodeLabelFn=Rs(void 0),this._defaultEdgeLabelFn=Rs(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[ap]={}),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(e){return this._label=e,this}graph(){return this._label}setDefaultNodeLabel(e){return Ai(e)||(e=Rs(e)),this._defaultNodeLabelFn=e,this}nodeCount(){return this._nodeCount}nodes(){return Gr(this._nodes)}sources(){var e=this;return Yr(this.nodes(),function(r){return fr(e._in[r])})}sinks(){var e=this;return Yr(this.nodes(),function(r){return fr(e._out[r])})}setNodes(e,r){var n=arguments,i=this;return Ae(e,function(a){n.length>1?i.setNode(a,r):i.setNode(a)}),this}setNode(e,r){return Object.prototype.hasOwnProperty.call(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=r),this):(this._nodes[e]=arguments.length>1?r:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=ap,this._children[e]={},this._children[ap][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)}node(e){return this._nodes[e]}hasNode(e){return Object.prototype.hasOwnProperty.call(this._nodes,e)}removeNode(e){if(Object.prototype.hasOwnProperty.call(this._nodes,e)){var r=o(n=>this.removeEdge(this._edgeObjs[n]),"removeEdge");delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],Ae(this.children(e),n=>{this.setParent(n)}),delete this._children[e]),Ae(Gr(this._in[e]),r),delete this._in[e],delete this._preds[e],Ae(Gr(this._out[e]),r),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this}setParent(e,r){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(gr(r))r=ap;else{r+="";for(var n=r;!gr(n);n=this.parent(n))if(n===e)throw new Error("Setting "+r+" as parent of "+e+" would create a cycle");this.setNode(r)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=r,this._children[r][e]=!0,this}_removeFromParentsChildList(e){delete this._children[this._parent[e]][e]}parent(e){if(this._isCompound){var r=this._parent[e];if(r!==ap)return r}}children(e){if(gr(e)&&(e=ap),this._isCompound){var r=this._children[e];if(r)return Gr(r)}else{if(e===ap)return this.nodes();if(this.hasNode(e))return[]}}predecessors(e){var r=this._preds[e];if(r)return Gr(r)}successors(e){var r=this._sucs[e];if(r)return Gr(r)}neighbors(e){var r=this.predecessors(e);if(r)return RR(r,this.successors(e))}isLeaf(e){var r;return this.isDirected()?r=this.successors(e):r=this.neighbors(e),r.length===0}filterNodes(e){var r=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});r.setGraph(this.graph());var n=this;Ae(this._nodes,function(s,l){e(l)&&r.setNode(l,s)}),Ae(this._edgeObjs,function(s){r.hasNode(s.v)&&r.hasNode(s.w)&&r.setEdge(s,n.edge(s))});var i={};function a(s){var l=n.parent(s);return l===void 0||r.hasNode(l)?(i[s]=l,l):l in i?i[l]:a(l)}return o(a,"findParent"),this._isCompound&&Ae(r.nodes(),function(s){r.setParent(s,a(s))}),r}setDefaultEdgeLabel(e){return Ai(e)||(e=Rs(e)),this._defaultEdgeLabelFn=e,this}edgeCount(){return this._edgeCount}edges(){return br(this._edgeObjs)}setPath(e,r){var n=this,i=arguments;return Xr(e,function(a,s){return i.length>1?n.setEdge(a,s,r):n.setEdge(a,s),s}),this}setEdge(){var e,r,n,i,a=!1,s=arguments[0];typeof s=="object"&&s!==null&&"v"in s?(e=s.v,r=s.w,n=s.name,arguments.length===2&&(i=arguments[1],a=!0)):(e=s,r=arguments[1],n=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),e=""+e,r=""+r,gr(n)||(n=""+n);var l=$2(this._isDirected,e,r,n);if(Object.prototype.hasOwnProperty.call(this._edgeLabels,l))return a&&(this._edgeLabels[l]=i),this;if(!gr(n)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(r),this._edgeLabels[l]=a?i:this._defaultEdgeLabelFn(e,r,n);var u=yOe(this._isDirected,e,r,n);return e=u.v,r=u.w,Object.freeze(u),this._edgeObjs[l]=u,Die(this._preds[r],e),Die(this._sucs[e],r),this._in[r][l]=u,this._out[e][l]=u,this._edgeCount++,this}edge(e,r,n){var i=arguments.length===1?NR(this._isDirected,arguments[0]):$2(this._isDirected,e,r,n);return this._edgeLabels[i]}hasEdge(e,r,n){var i=arguments.length===1?NR(this._isDirected,arguments[0]):$2(this._isDirected,e,r,n);return Object.prototype.hasOwnProperty.call(this._edgeLabels,i)}removeEdge(e,r,n){var i=arguments.length===1?NR(this._isDirected,arguments[0]):$2(this._isDirected,e,r,n),a=this._edgeObjs[i];return a&&(e=a.v,r=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],Lie(this._preds[r],e),Lie(this._sucs[e],r),delete this._in[r][i],delete this._out[e][i],this._edgeCount--),this}inEdges(e,r){var n=this._in[e];if(n){var i=br(n);return r?Yr(i,function(a){return a.v===r}):i}}outEdges(e,r){var n=this._out[e];if(n){var i=br(n);return r?Yr(i,function(a){return a.w===r}):i}}nodeEdges(e,r){var n=this.inEdges(e,r);if(n)return n.concat(this.outEdges(e,r))}};sn.prototype._nodeCount=0;sn.prototype._edgeCount=0;o(Die,"incrementOrInitEntry");o(Lie,"decrementOrRemoveEntry");o($2,"edgeArgsToId");o(yOe,"edgeArgsToObj");o(NR,"edgeObjToId")});var Wo=N(()=>{"use strict";mk()});function Rie(t){t._prev._next=t._next,t._next._prev=t._prev,delete t._next,delete t._prev}function vOe(t,e){if(t!=="_next"&&t!=="_prev")return e}var yk,Nie=N(()=>{"use strict";yk=class{static{o(this,"List")}constructor(){var e={};e._next=e._prev=e,this._sentinel=e}dequeue(){var e=this._sentinel,r=e._prev;if(r!==e)return Rie(r),r}enqueue(e){var r=this._sentinel;e._prev&&e._next&&Rie(e),e._next=r._next,r._next._prev=e,r._next=e,e._prev=r}toString(){for(var e=[],r=this._sentinel,n=r._prev;n!==r;)e.push(JSON.stringify(n,vOe)),n=n._prev;return"["+e.join(", ")+"]"}};o(Rie,"unlink");o(vOe,"filterOutLinks")});function Mie(t,e){if(t.nodeCount()<=1)return[];var r=TOe(t,e||xOe),n=bOe(r.graph,r.buckets,r.zeroIdx);return qr(et(n,function(i){return t.outEdges(i.v,i.w)}))}function bOe(t,e,r){for(var n=[],i=e[e.length-1],a=e[0],s;t.nodeCount();){for(;s=a.dequeue();)MR(t,e,r,s);for(;s=i.dequeue();)MR(t,e,r,s);if(t.nodeCount()){for(var l=e.length-2;l>0;--l)if(s=e[l].dequeue(),s){n=n.concat(MR(t,e,r,s,!0));break}}}return n}function MR(t,e,r,n,i){var a=i?[]:void 0;return Ae(t.inEdges(n.v),function(s){var l=t.edge(s),u=t.node(s.v);i&&a.push({v:s.v,w:s.w}),u.out-=l,IR(e,r,u)}),Ae(t.outEdges(n.v),function(s){var l=t.edge(s),u=s.w,h=t.node(u);h.in-=l,IR(e,r,h)}),t.removeNode(n.v),a}function TOe(t,e){var r=new sn,n=0,i=0;Ae(t.nodes(),function(l){r.setNode(l,{v:l,in:0,out:0})}),Ae(t.edges(),function(l){var u=r.edge(l.v,l.w)||0,h=e(l),f=u+h;r.setEdge(l.v,l.w,f),i=Math.max(i,r.node(l.v).out+=h),n=Math.max(n,r.node(l.w).in+=h)});var a=Ho(i+n+3).map(function(){return new yk}),s=n+1;return Ae(r.nodes(),function(l){IR(a,s,r.node(l))}),{graph:r,buckets:a,zeroIdx:s}}function IR(t,e,r){r.out?r.in?t[r.out-r.in+e].enqueue(r):t[t.length-1].enqueue(r):t[0].enqueue(r)}var xOe,Iie=N(()=>{"use strict";qt();Wo();Nie();xOe=Rs(1);o(Mie,"greedyFAS");o(bOe,"doGreedyFAS");o(MR,"removeNode");o(TOe,"buildState");o(IR,"assignBucket")});function Oie(t){var e=t.graph().acyclicer==="greedy"?Mie(t,r(t)):wOe(t);Ae(e,function(n){var i=t.edge(n);t.removeEdge(n),i.forwardName=n.name,i.reversed=!0,t.setEdge(n.w,n.v,i,ip("rev"))});function r(n){return function(i){return n.edge(i).weight}}o(r,"weightFn")}function wOe(t){var e=[],r={},n={};function i(a){Object.prototype.hasOwnProperty.call(n,a)||(n[a]=!0,r[a]=!0,Ae(t.outEdges(a),function(s){Object.prototype.hasOwnProperty.call(r,s.w)?e.push(s):i(s.w)}),delete r[a])}return o(i,"dfs"),Ae(t.nodes(),i),e}function Pie(t){Ae(t.edges(),function(e){var r=t.edge(e);if(r.reversed){t.removeEdge(e);var n=r.forwardName;delete r.reversed,delete r.forwardName,t.setEdge(e.w,e.v,r,n)}})}var OR=N(()=>{"use strict";qt();Iie();o(Oie,"run");o(wOe,"dfsFAS");o(Pie,"undo")});function _c(t,e,r,n){var i;do i=ip(n);while(t.hasNode(i));return r.dummy=e,t.setNode(i,r),i}function Fie(t){var e=new sn().setGraph(t.graph());return Ae(t.nodes(),function(r){e.setNode(r,t.node(r))}),Ae(t.edges(),function(r){var n=e.edge(r.v,r.w)||{weight:0,minlen:1},i=t.edge(r);e.setEdge(r.v,r.w,{weight:n.weight+i.weight,minlen:Math.max(n.minlen,i.minlen)})}),e}function vk(t){var e=new sn({multigraph:t.isMultigraph()}).setGraph(t.graph());return Ae(t.nodes(),function(r){t.children(r).length||e.setNode(r,t.node(r))}),Ae(t.edges(),function(r){e.setEdge(r,t.edge(r))}),e}function PR(t,e){var r=t.x,n=t.y,i=e.x-r,a=e.y-n,s=t.width/2,l=t.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");var u,h;return Math.abs(a)*s>Math.abs(i)*l?(a<0&&(l=-l),u=l*i/a,h=l):(i<0&&(s=-s),u=s,h=s*a/i),{x:r+u,y:n+h}}function lf(t){var e=et(Ho(FR(t)+1),function(){return[]});return Ae(t.nodes(),function(r){var n=t.node(r),i=n.rank;gr(i)||(e[i][n.order]=r)}),e}function $ie(t){var e=Rl(et(t.nodes(),function(r){return t.node(r).rank}));Ae(t.nodes(),function(r){var n=t.node(r);Bt(n,"rank")&&(n.rank-=e)})}function Gie(t){var e=Rl(et(t.nodes(),function(a){return t.node(a).rank})),r=[];Ae(t.nodes(),function(a){var s=t.node(a).rank-e;r[s]||(r[s]=[]),r[s].push(a)});var n=0,i=t.graph().nodeRankFactor;Ae(r,function(a,s){gr(a)&&s%i!==0?--n:n&&Ae(a,function(l){t.node(l).rank+=n})})}function BR(t,e,r,n){var i={width:0,height:0};return arguments.length>=4&&(i.rank=r,i.order=n),_c(t,"border",i,e)}function FR(t){return Gs(et(t.nodes(),function(e){var r=t.node(e).rank;if(!gr(r))return r}))}function zie(t,e){var r={lhs:[],rhs:[]};return Ae(t,function(n){e(n)?r.lhs.push(n):r.rhs.push(n)}),r}function Vie(t,e){var r=tk();try{return e()}finally{console.log(t+" time: "+(tk()-r)+"ms")}}function Uie(t,e){return e()}var Dc=N(()=>{"use strict";qt();Wo();o(_c,"addDummyNode");o(Fie,"simplify");o(vk,"asNonCompoundGraph");o(PR,"intersectRect");o(lf,"buildLayerMatrix");o($ie,"normalizeRanks");o(Gie,"removeEmptyRanks");o(BR,"addBorderNode");o(FR,"maxRank");o(zie,"partition");o(Vie,"time");o(Uie,"notime")});function Wie(t){function e(r){var n=t.children(r),i=t.node(r);if(n.length&&Ae(n,e),Object.prototype.hasOwnProperty.call(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(var a=i.minRank,s=i.maxRank+1;a<s;++a)Hie(t,"borderLeft","_bl",r,i,a),Hie(t,"borderRight","_br",r,i,a)}}o(e,"dfs"),Ae(t.children(),e)}function Hie(t,e,r,n,i,a){var s={width:0,height:0,rank:a,borderType:e},l=i[e][a-1],u=_c(t,"border",s,r);i[e][a]=u,t.setParent(u,n),l&&t.setEdge(l,u,{weight:1})}var qie=N(()=>{"use strict";qt();Dc();o(Wie,"addBorderSegments");o(Hie,"addBorderNode")});function Xie(t){var e=t.graph().rankdir.toLowerCase();(e==="lr"||e==="rl")&&Kie(t)}function jie(t){var e=t.graph().rankdir.toLowerCase();(e==="bt"||e==="rl")&&kOe(t),(e==="lr"||e==="rl")&&(EOe(t),Kie(t))}function Kie(t){Ae(t.nodes(),function(e){Yie(t.node(e))}),Ae(t.edges(),function(e){Yie(t.edge(e))})}function Yie(t){var e=t.width;t.width=t.height,t.height=e}function kOe(t){Ae(t.nodes(),function(e){$R(t.node(e))}),Ae(t.edges(),function(e){var r=t.edge(e);Ae(r.points,$R),Object.prototype.hasOwnProperty.call(r,"y")&&$R(r)})}function $R(t){t.y=-t.y}function EOe(t){Ae(t.nodes(),function(e){GR(t.node(e))}),Ae(t.edges(),function(e){var r=t.edge(e);Ae(r.points,GR),Object.prototype.hasOwnProperty.call(r,"x")&&GR(r)})}function GR(t){var e=t.x;t.x=t.y,t.y=e}var Qie=N(()=>{"use strict";qt();o(Xie,"adjust");o(jie,"undo");o(Kie,"swapWidthHeight");o(Yie,"swapWidthHeightOne");o(kOe,"reverseY");o($R,"reverseYOne");o(EOe,"swapXY");o(GR,"swapXYOne")});function Zie(t){t.graph().dummyChains=[],Ae(t.edges(),function(e){COe(t,e)})}function COe(t,e){var r=e.v,n=t.node(r).rank,i=e.w,a=t.node(i).rank,s=e.name,l=t.edge(e),u=l.labelRank;if(a!==n+1){t.removeEdge(e);var h=void 0,f,d;for(d=0,++n;n<a;++d,++n)l.points=[],h={width:0,height:0,edgeLabel:l,edgeObj:e,rank:n},f=_c(t,"edge",h,"_d"),n===u&&(h.width=l.width,h.height=l.height,h.dummy="edge-label",h.labelpos=l.labelpos),t.setEdge(r,f,{weight:l.weight},s),d===0&&t.graph().dummyChains.push(f),r=f;t.setEdge(r,i,{weight:l.weight},s)}}function Jie(t){Ae(t.graph().dummyChains,function(e){var r=t.node(e),n=r.edgeLabel,i;for(t.setEdge(r.edgeObj,n);r.dummy;)i=t.successors(e)[0],t.removeNode(e),n.points.push({x:r.x,y:r.y}),r.dummy==="edge-label"&&(n.x=r.x,n.y=r.y,n.width=r.width,n.height=r.height),e=i,r=t.node(e)})}var zR=N(()=>{"use strict";qt();Dc();o(Zie,"run");o(COe,"normalizeEdge");o(Jie,"undo")});function G2(t){var e={};function r(n){var i=t.node(n);if(Object.prototype.hasOwnProperty.call(e,n))return i.rank;e[n]=!0;var a=Rl(et(t.outEdges(n),function(s){return r(s.w)-t.edge(s).minlen}));return(a===Number.POSITIVE_INFINITY||a===void 0||a===null)&&(a=0),i.rank=a}o(r,"dfs"),Ae(t.sources(),r)}function sp(t,e){return t.node(e.w).rank-t.node(e.v).rank-t.edge(e).minlen}var xk=N(()=>{"use strict";qt();o(G2,"longestPath");o(sp,"slack")});function bk(t){var e=new sn({directed:!1}),r=t.nodes()[0],n=t.nodeCount();e.setNode(r,{});for(var i,a;AOe(e,t)<n;)i=_Oe(e,t),a=e.hasNode(i.v)?sp(t,i):-sp(t,i),DOe(e,t,a);return e}function AOe(t,e){function r(n){Ae(e.nodeEdges(n),function(i){var a=i.v,s=n===a?i.w:a;!t.hasNode(s)&&!sp(e,i)&&(t.setNode(s,{}),t.setEdge(n,s,{}),r(s))})}return o(r,"dfs"),Ae(t.nodes(),r),t.nodeCount()}function _Oe(t,e){return rp(e.edges(),function(r){if(t.hasNode(r.v)!==t.hasNode(r.w))return sp(e,r)})}function DOe(t,e,r){Ae(t.nodes(),function(n){e.node(n).rank+=r})}var VR=N(()=>{"use strict";qt();Wo();xk();o(bk,"feasibleTree");o(AOe,"tightTree");o(_Oe,"findMinSlackEdge");o(DOe,"shiftRanks")});var tae=N(()=>{"use strict"});var UR=N(()=>{"use strict"});var oXt,HR=N(()=>{"use strict";qt();UR();oXt=Rs(1)});var rae=N(()=>{"use strict";HR()});var WR=N(()=>{"use strict"});var nae=N(()=>{"use strict";WR()});var vXt,iae=N(()=>{"use strict";qt();vXt=Rs(1)});function qR(t){var e={},r={},n=[];function i(a){if(Object.prototype.hasOwnProperty.call(r,a))throw new z2;Object.prototype.hasOwnProperty.call(e,a)||(r[a]=!0,e[a]=!0,Ae(t.predecessors(a),i),delete r[a],n.push(a))}if(o(i,"visit"),Ae(t.sinks(),i),LR(e)!==t.nodeCount())throw new z2;return n}function z2(){}var YR=N(()=>{"use strict";qt();qR.CycleException=z2;o(qR,"topsort");o(z2,"CycleException");z2.prototype=new Error});var aae=N(()=>{"use strict";YR()});function Tk(t,e,r){Pt(e)||(e=[e]);var n=(t.isDirected()?t.successors:t.neighbors).bind(t),i=[],a={};return Ae(e,function(s){if(!t.hasNode(s))throw new Error("Graph does not have node: "+s);sae(t,s,r==="post",a,n,i)}),i}function sae(t,e,r,n,i,a){Object.prototype.hasOwnProperty.call(n,e)||(n[e]=!0,r||a.push(e),Ae(i(e),function(s){sae(t,s,r,n,i,a)}),r&&a.push(e))}var XR=N(()=>{"use strict";qt();o(Tk,"dfs");o(sae,"doDfs")});function jR(t,e){return Tk(t,e,"post")}var oae=N(()=>{"use strict";XR();o(jR,"postorder")});function KR(t,e){return Tk(t,e,"pre")}var lae=N(()=>{"use strict";XR();o(KR,"preorder")});var cae=N(()=>{"use strict";UR();mk()});var uae=N(()=>{"use strict";tae();HR();rae();nae();iae();aae();oae();lae();cae();WR();YR()});function uf(t){t=Fie(t),G2(t);var e=bk(t);ZR(e),QR(e,t);for(var r,n;r=pae(e);)n=mae(e,t,r),gae(e,t,r,n)}function QR(t,e){var r=jR(t,t.nodes());r=r.slice(0,r.length-1),Ae(r,function(n){IOe(t,e,n)})}function IOe(t,e,r){var n=t.node(r),i=n.parent;t.edge(r,i).cutvalue=fae(t,e,r)}function fae(t,e,r){var n=t.node(r),i=n.parent,a=!0,s=e.edge(r,i),l=0;return s||(a=!1,s=e.edge(i,r)),l=s.weight,Ae(e.nodeEdges(r),function(u){var h=u.v===r,f=h?u.w:u.v;if(f!==i){var d=h===a,p=e.edge(u).weight;if(l+=d?p:-p,POe(t,r,f)){var m=t.edge(r,f).cutvalue;l+=d?-m:m}}}),l}function ZR(t,e){arguments.length<2&&(e=t.nodes()[0]),dae(t,{},1,e)}function dae(t,e,r,n,i){var a=r,s=t.node(n);return e[n]=!0,Ae(t.neighbors(n),function(l){Object.prototype.hasOwnProperty.call(e,l)||(r=dae(t,e,r,l,n))}),s.low=a,s.lim=r++,i?s.parent=i:delete s.parent,r}function pae(t){return os(t.edges(),function(e){return t.edge(e).cutvalue<0})}function mae(t,e,r){var n=r.v,i=r.w;e.hasEdge(n,i)||(n=r.w,i=r.v);var a=t.node(n),s=t.node(i),l=a,u=!1;a.lim>s.lim&&(l=s,u=!0);var h=Yr(e.edges(),function(f){return u===hae(t,t.node(f.v),l)&&u!==hae(t,t.node(f.w),l)});return rp(h,function(f){return sp(e,f)})}function gae(t,e,r,n){var i=r.v,a=r.w;t.removeEdge(i,a),t.setEdge(n.v,n.w,{}),ZR(t),QR(t,e),OOe(t,e)}function OOe(t,e){var r=os(t.nodes(),function(i){return!e.node(i).parent}),n=KR(t,r);n=n.slice(1),Ae(n,function(i){var a=t.node(i).parent,s=e.edge(i,a),l=!1;s||(s=e.edge(a,i),l=!0),e.node(i).rank=e.node(a).rank+(l?s.minlen:-s.minlen)})}function POe(t,e,r){return t.hasEdge(e,r)}function hae(t,e,r){return r.low<=e.lim&&e.lim<=r.lim}var yae=N(()=>{"use strict";qt();uae();Dc();VR();xk();uf.initLowLimValues=ZR;uf.initCutValues=QR;uf.calcCutValue=fae;uf.leaveEdge=pae;uf.enterEdge=mae;uf.exchangeEdges=gae;o(uf,"networkSimplex");o(QR,"initCutValues");o(IOe,"assignCutValue");o(fae,"calcCutValue");o(ZR,"initLowLimValues");o(dae,"dfsAssignLowLim");o(pae,"leaveEdge");o(mae,"enterEdge");o(gae,"exchangeEdges");o(OOe,"updateRanks");o(POe,"isTreeEdge");o(hae,"isDescendant")});function JR(t){switch(t.graph().ranker){case"network-simplex":vae(t);break;case"tight-tree":FOe(t);break;case"longest-path":BOe(t);break;default:vae(t)}}function FOe(t){G2(t),bk(t)}function vae(t){uf(t)}var BOe,eN=N(()=>{"use strict";VR();yae();xk();o(JR,"rank");BOe=G2;o(FOe,"tightTreeRanker");o(vae,"networkSimplexRanker")});function xae(t){var e=_c(t,"root",{},"_root"),r=$Oe(t),n=Gs(br(r))-1,i=2*n+1;t.graph().nestingRoot=e,Ae(t.edges(),function(s){t.edge(s).minlen*=i});var a=GOe(t)+1;Ae(t.children(),function(s){bae(t,e,i,a,n,r,s)}),t.graph().nodeRankFactor=i}function bae(t,e,r,n,i,a,s){var l=t.children(s);if(!l.length){s!==e&&t.setEdge(e,s,{weight:0,minlen:r});return}var u=BR(t,"_bt"),h=BR(t,"_bb"),f=t.node(s);t.setParent(u,s),f.borderTop=u,t.setParent(h,s),f.borderBottom=h,Ae(l,function(d){bae(t,e,r,n,i,a,d);var p=t.node(d),m=p.borderTop?p.borderTop:d,g=p.borderBottom?p.borderBottom:d,y=p.borderTop?n:2*n,x=m!==g?1:i-a[s]+1;t.setEdge(u,m,{weight:y,minlen:x,nestingEdge:!0}),t.setEdge(g,h,{weight:y,minlen:x,nestingEdge:!0})}),t.parent(s)||t.setEdge(e,u,{weight:0,minlen:i+a[s]})}function $Oe(t){var e={};function r(n,i){var a=t.children(n);a&&a.length&&Ae(a,function(s){r(s,i+1)}),e[n]=i}return o(r,"dfs"),Ae(t.children(),function(n){r(n,1)}),e}function GOe(t){return Xr(t.edges(),function(e,r){return e+t.edge(r).weight},0)}function Tae(t){var e=t.graph();t.removeNode(e.nestingRoot),delete e.nestingRoot,Ae(t.edges(),function(r){var n=t.edge(r);n.nestingEdge&&t.removeEdge(r)})}var wae=N(()=>{"use strict";qt();Dc();o(xae,"run");o(bae,"dfs");o($Oe,"treeDepths");o(GOe,"sumWeights");o(Tae,"cleanup")});function kae(t,e,r){var n={},i;Ae(r,function(a){for(var s=t.parent(a),l,u;s;){if(l=t.parent(s),l?(u=n[l],n[l]=s):(u=i,i=s),u&&u!==s){e.setEdge(u,s);return}s=l}})}var Eae=N(()=>{"use strict";qt();o(kae,"addSubgraphConstraints")});function Sae(t,e,r){var n=VOe(t),i=new sn({compound:!0}).setGraph({root:n}).setDefaultNodeLabel(function(a){return t.node(a)});return Ae(t.nodes(),function(a){var s=t.node(a),l=t.parent(a);(s.rank===e||s.minRank<=e&&e<=s.maxRank)&&(i.setNode(a),i.setParent(a,l||n),Ae(t[r](a),function(u){var h=u.v===a?u.w:u.v,f=i.edge(h,a),d=gr(f)?0:f.weight;i.setEdge(h,a,{weight:t.edge(u).weight+d})}),Object.prototype.hasOwnProperty.call(s,"minRank")&&i.setNode(a,{borderLeft:s.borderLeft[e],borderRight:s.borderRight[e]}))}),i}function VOe(t){for(var e;t.hasNode(e=ip("_root")););return e}var Cae=N(()=>{"use strict";qt();Wo();o(Sae,"buildLayerGraph");o(VOe,"createRootNode")});function Aae(t,e){for(var r=0,n=1;n<e.length;++n)r+=UOe(t,e[n-1],e[n]);return r}function UOe(t,e,r){for(var n=pk(r,et(r,function(h,f){return f})),i=qr(et(e,function(h){return Ac(et(t.outEdges(h),function(f){return{pos:n[f.w],weight:t.edge(f).weight}}),"pos")})),a=1;a<r.length;)a<<=1;var s=2*a-1;a-=1;var l=et(new Array(s),function(){return 0}),u=0;return Ae(i.forEach(function(h){var f=h.pos+a;l[f]+=h.weight;for(var d=0;f>0;)f%2&&(d+=l[f+1]),f=f-1>>1,l[f]+=h.weight;u+=h.weight*d})),u}var _ae=N(()=>{"use strict";qt();o(Aae,"crossCount");o(UOe,"twoLayerCrossCount")});function Dae(t){var e={},r=Yr(t.nodes(),function(l){return!t.children(l).length}),n=Gs(et(r,function(l){return t.node(l).rank})),i=et(Ho(n+1),function(){return[]});function a(l){if(!Bt(e,l)){e[l]=!0;var u=t.node(l);i[u.rank].push(l),Ae(t.successors(l),a)}}o(a,"dfs");var s=Ac(r,function(l){return t.node(l).rank});return Ae(s,a),i}var Lae=N(()=>{"use strict";qt();o(Dae,"initOrder")});function Rae(t,e){return et(e,function(r){var n=t.inEdges(r);if(n.length){var i=Xr(n,function(a,s){var l=t.edge(s),u=t.node(s.v);return{sum:a.sum+l.weight*u.order,weight:a.weight+l.weight}},{sum:0,weight:0});return{v:r,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:r}})}var Nae=N(()=>{"use strict";qt();o(Rae,"barycenter")});function Mae(t,e){var r={};Ae(t,function(i,a){var s=r[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:a};gr(i.barycenter)||(s.barycenter=i.barycenter,s.weight=i.weight)}),Ae(e.edges(),function(i){var a=r[i.v],s=r[i.w];!gr(a)&&!gr(s)&&(s.indegree++,a.out.push(r[i.w]))});var n=Yr(r,function(i){return!i.indegree});return HOe(n)}function HOe(t){var e=[];function r(a){return function(s){s.merged||(gr(s.barycenter)||gr(a.barycenter)||s.barycenter>=a.barycenter)&&WOe(a,s)}}o(r,"handleIn");function n(a){return function(s){s.in.push(a),--s.indegree===0&&t.push(s)}}for(o(n,"handleOut");t.length;){var i=t.pop();e.push(i),Ae(i.in.reverse(),r(i)),Ae(i.out,n(i))}return et(Yr(e,function(a){return!a.merged}),function(a){return np(a,["vs","i","barycenter","weight"])})}function WOe(t,e){var r=0,n=0;t.weight&&(r+=t.barycenter*t.weight,n+=t.weight),e.weight&&(r+=e.barycenter*e.weight,n+=e.weight),t.vs=e.vs.concat(t.vs),t.barycenter=r/n,t.weight=n,t.i=Math.min(e.i,t.i),e.merged=!0}var Iae=N(()=>{"use strict";qt();o(Mae,"resolveConflicts");o(HOe,"doResolveConflicts");o(WOe,"mergeEntries")});function Pae(t,e){var r=zie(t,function(f){return Object.prototype.hasOwnProperty.call(f,"barycenter")}),n=r.lhs,i=Ac(r.rhs,function(f){return-f.i}),a=[],s=0,l=0,u=0;n.sort(qOe(!!e)),u=Oae(a,i,u),Ae(n,function(f){u+=f.vs.length,a.push(f.vs),s+=f.barycenter*f.weight,l+=f.weight,u=Oae(a,i,u)});var h={vs:qr(a)};return l&&(h.barycenter=s/l,h.weight=l),h}function Oae(t,e,r){for(var n;e.length&&(n=pa(e)).i<=r;)e.pop(),t.push(n.vs),r++;return r}function qOe(t){return function(e,r){return e.barycenter<r.barycenter?-1:e.barycenter>r.barycenter?1:t?r.i-e.i:e.i-r.i}}var Bae=N(()=>{"use strict";qt();Dc();o(Pae,"sort");o(Oae,"consumeUnsortable");o(qOe,"compareWithBias")});function tN(t,e,r,n){var i=t.children(e),a=t.node(e),s=a?a.borderLeft:void 0,l=a?a.borderRight:void 0,u={};s&&(i=Yr(i,function(g){return g!==s&&g!==l}));var h=Rae(t,i);Ae(h,function(g){if(t.children(g.v).length){var y=tN(t,g.v,r,n);u[g.v]=y,Object.prototype.hasOwnProperty.call(y,"barycenter")&&XOe(g,y)}});var f=Mae(h,r);YOe(f,u);var d=Pae(f,n);if(s&&(d.vs=qr([s,d.vs,l]),t.predecessors(s).length)){var p=t.node(t.predecessors(s)[0]),m=t.node(t.predecessors(l)[0]);Object.prototype.hasOwnProperty.call(d,"barycenter")||(d.barycenter=0,d.weight=0),d.barycenter=(d.barycenter*d.weight+p.order+m.order)/(d.weight+2),d.weight+=2}return d}function YOe(t,e){Ae(t,function(r){r.vs=qr(r.vs.map(function(n){return e[n]?e[n].vs:n}))})}function XOe(t,e){gr(t.barycenter)?(t.barycenter=e.barycenter,t.weight=e.weight):(t.barycenter=(t.barycenter*t.weight+e.barycenter*e.weight)/(t.weight+e.weight),t.weight+=e.weight)}var Fae=N(()=>{"use strict";qt();Nae();Iae();Bae();o(tN,"sortSubgraph");o(YOe,"expandSubgraphs");o(XOe,"mergeBarycenters")});function zae(t){var e=FR(t),r=$ae(t,Ho(1,e+1),"inEdges"),n=$ae(t,Ho(e-1,-1,-1),"outEdges"),i=Dae(t);Gae(t,i);for(var a=Number.POSITIVE_INFINITY,s,l=0,u=0;u<4;++l,++u){jOe(l%2?r:n,l%4>=2),i=lf(t);var h=Aae(t,i);h<a&&(u=0,s=aR(i),a=h)}Gae(t,s)}function $ae(t,e,r){return et(e,function(n){return Sae(t,n,r)})}function jOe(t,e){var r=new sn;Ae(t,function(n){var i=n.graph().root,a=tN(n,i,r,e);Ae(a.vs,function(s,l){n.node(s).order=l}),kae(n,r,a.vs)})}function Gae(t,e){Ae(e,function(r){Ae(r,function(n,i){t.node(n).order=i})})}var Vae=N(()=>{"use strict";qt();Wo();Dc();Eae();Cae();_ae();Lae();Fae();o(zae,"order");o($ae,"buildLayerGraphs");o(jOe,"sweepLayerGraphs");o(Gae,"assignOrder")});function Uae(t){var e=QOe(t);Ae(t.graph().dummyChains,function(r){for(var n=t.node(r),i=n.edgeObj,a=KOe(t,e,i.v,i.w),s=a.path,l=a.lca,u=0,h=s[u],f=!0;r!==i.w;){if(n=t.node(r),f){for(;(h=s[u])!==l&&t.node(h).maxRank<n.rank;)u++;h===l&&(f=!1)}if(!f){for(;u<s.length-1&&t.node(h=s[u+1]).minRank<=n.rank;)u++;h=s[u]}t.setParent(r,h),r=t.successors(r)[0]}})}function KOe(t,e,r,n){var i=[],a=[],s=Math.min(e[r].low,e[n].low),l=Math.max(e[r].lim,e[n].lim),u,h;u=r;do u=t.parent(u),i.push(u);while(u&&(e[u].low>s||l>e[u].lim));for(h=u,u=n;(u=t.parent(u))!==h;)a.push(u);return{path:i.concat(a.reverse()),lca:h}}function QOe(t){var e={},r=0;function n(i){var a=r;Ae(t.children(i),n),e[i]={low:a,lim:r++}}return o(n,"dfs"),Ae(t.children(),n),e}var Hae=N(()=>{"use strict";qt();o(Uae,"parentDummyChains");o(KOe,"findPath");o(QOe,"postorder")});function ZOe(t,e){var r={};function n(i,a){var s=0,l=0,u=i.length,h=pa(a);return Ae(a,function(f,d){var p=ePe(t,f),m=p?t.node(p).order:u;(p||f===h)&&(Ae(a.slice(l,d+1),function(g){Ae(t.predecessors(g),function(y){var x=t.node(y),v=x.order;(v<s||m<v)&&!(x.dummy&&t.node(g).dummy)&&Wae(r,y,g)})}),l=d+1,s=m)}),a}return o(n,"visitLayer"),Xr(e,n),r}function JOe(t,e){var r={};function n(a,s,l,u,h){var f;Ae(Ho(s,l),function(d){f=a[d],t.node(f).dummy&&Ae(t.predecessors(f),function(p){var m=t.node(p);m.dummy&&(m.order<u||m.order>h)&&Wae(r,p,f)})})}o(n,"scan");function i(a,s){var l=-1,u,h=0;return Ae(s,function(f,d){if(t.node(f).dummy==="border"){var p=t.predecessors(f);p.length&&(u=t.node(p[0]).order,n(s,h,d,l,u),h=d,l=u)}n(s,h,s.length,u,a.length)}),s}return o(i,"visitLayer"),Xr(e,i),r}function ePe(t,e){if(t.node(e).dummy)return os(t.predecessors(e),function(r){return t.node(r).dummy})}function Wae(t,e,r){if(e>r){var n=e;e=r,r=n}var i=t[e];i||(t[e]=i={}),i[r]=!0}function tPe(t,e,r){if(e>r){var n=e;e=r,r=n}return!!t[e]&&Object.prototype.hasOwnProperty.call(t[e],r)}function rPe(t,e,r,n){var i={},a={},s={};return Ae(e,function(l){Ae(l,function(u,h){i[u]=u,a[u]=u,s[u]=h})}),Ae(e,function(l){var u=-1;Ae(l,function(h){var f=n(h);if(f.length){f=Ac(f,function(y){return s[y]});for(var d=(f.length-1)/2,p=Math.floor(d),m=Math.ceil(d);p<=m;++p){var g=f[p];a[h]===h&&u<s[g]&&!tPe(r,h,g)&&(a[g]=h,a[h]=i[h]=i[g],u=s[g])}}})}),{root:i,align:a}}function nPe(t,e,r,n,i){var a={},s=iPe(t,e,r,i),l=i?"borderLeft":"borderRight";function u(d,p){for(var m=s.nodes(),g=m.pop(),y={};g;)y[g]?d(g):(y[g]=!0,m.push(g),m=m.concat(p(g))),g=m.pop()}o(u,"iterate");function h(d){a[d]=s.inEdges(d).reduce(function(p,m){return Math.max(p,a[m.v]+s.edge(m))},0)}o(h,"pass1");function f(d){var p=s.outEdges(d).reduce(function(g,y){return Math.min(g,a[y.w]-s.edge(y))},Number.POSITIVE_INFINITY),m=t.node(d);p!==Number.POSITIVE_INFINITY&&m.borderType!==l&&(a[d]=Math.max(a[d],p))}return o(f,"pass2"),u(h,s.predecessors.bind(s)),u(f,s.successors.bind(s)),Ae(n,function(d){a[d]=a[r[d]]}),a}function iPe(t,e,r,n){var i=new sn,a=t.graph(),s=lPe(a.nodesep,a.edgesep,n);return Ae(e,function(l){var u;Ae(l,function(h){var f=r[h];if(i.setNode(f),u){var d=r[u],p=i.edge(d,f);i.setEdge(d,f,Math.max(s(t,h,u),p||0))}u=h})}),i}function aPe(t,e){return rp(br(e),function(r){var n=Number.NEGATIVE_INFINITY,i=Number.POSITIVE_INFINITY;return bR(r,function(a,s){var l=cPe(t,s)/2;n=Math.max(a+l,n),i=Math.min(a-l,i)}),n-i})}function sPe(t,e){var r=br(e),n=Rl(r),i=Gs(r);Ae(["u","d"],function(a){Ae(["l","r"],function(s){var l=a+s,u=t[l],h;if(u!==e){var f=br(u);h=s==="l"?n-Rl(f):i-Gs(f),h&&(t[l]=tp(u,function(d){return d+h}))}})})}function oPe(t,e){return tp(t.ul,function(r,n){if(e)return t[e.toLowerCase()][n];var i=Ac(et(t,n));return(i[1]+i[2])/2})}function qae(t){var e=lf(t),r=Uh(ZOe(t,e),JOe(t,e)),n={},i;Ae(["u","d"],function(s){i=s==="u"?e:br(e).reverse(),Ae(["l","r"],function(l){l==="r"&&(i=et(i,function(d){return br(d).reverse()}));var u=(s==="u"?t.predecessors:t.successors).bind(t),h=rPe(t,i,r,u),f=nPe(t,i,h.root,h.align,l==="r");l==="r"&&(f=tp(f,function(d){return-d})),n[s+l]=f})});var a=aPe(t,n);return sPe(n,a),oPe(n,t.graph().align)}function lPe(t,e,r){return function(n,i,a){var s=n.node(i),l=n.node(a),u=0,h;if(u+=s.width/2,Object.prototype.hasOwnProperty.call(s,"labelpos"))switch(s.labelpos.toLowerCase()){case"l":h=-s.width/2;break;case"r":h=s.width/2;break}if(h&&(u+=r?h:-h),h=0,u+=(s.dummy?e:t)/2,u+=(l.dummy?e:t)/2,u+=l.width/2,Object.prototype.hasOwnProperty.call(l,"labelpos"))switch(l.labelpos.toLowerCase()){case"l":h=l.width/2;break;case"r":h=-l.width/2;break}return h&&(u+=r?h:-h),h=0,u}}function cPe(t,e){return t.node(e).width}var Yae=N(()=>{"use strict";qt();Wo();Dc();o(ZOe,"findType1Conflicts");o(JOe,"findType2Conflicts");o(ePe,"findOtherInnerSegmentNode");o(Wae,"addConflict");o(tPe,"hasConflict");o(rPe,"verticalAlignment");o(nPe,"horizontalCompaction");o(iPe,"buildBlockGraph");o(aPe,"findSmallestWidthAlignment");o(sPe,"alignCoordinates");o(oPe,"balance");o(qae,"positionX");o(lPe,"sep");o(cPe,"width")});function Xae(t){t=vk(t),uPe(t),TR(qae(t),function(e,r){t.node(r).x=e})}function uPe(t){var e=lf(t),r=t.graph().ranksep,n=0;Ae(e,function(i){var a=Gs(et(i,function(s){return t.node(s).height}));Ae(i,function(s){t.node(s).y=n+a/2}),n+=a+r})}var jae=N(()=>{"use strict";qt();Dc();Yae();o(Xae,"position");o(uPe,"positionY")});function V2(t,e){var r=e&&e.debugTiming?Vie:Uie;r("layout",()=>{var n=r(" buildLayoutGraph",()=>TPe(t));r(" runLayout",()=>hPe(n,r)),r(" updateInputGraph",()=>fPe(t,n))})}function hPe(t,e){e(" makeSpaceForEdgeLabels",()=>wPe(t)),e(" removeSelfEdges",()=>RPe(t)),e(" acyclic",()=>Oie(t)),e(" nestingGraph.run",()=>xae(t)),e(" rank",()=>JR(vk(t))),e(" injectEdgeLabelProxies",()=>kPe(t)),e(" removeEmptyRanks",()=>Gie(t)),e(" nestingGraph.cleanup",()=>Tae(t)),e(" normalizeRanks",()=>$ie(t)),e(" assignRankMinMax",()=>EPe(t)),e(" removeEdgeLabelProxies",()=>SPe(t)),e(" normalize.run",()=>Zie(t)),e(" parentDummyChains",()=>Uae(t)),e(" addBorderSegments",()=>Wie(t)),e(" order",()=>zae(t)),e(" insertSelfEdges",()=>NPe(t)),e(" adjustCoordinateSystem",()=>Xie(t)),e(" position",()=>Xae(t)),e(" positionSelfEdges",()=>MPe(t)),e(" removeBorderNodes",()=>LPe(t)),e(" normalize.undo",()=>Jie(t)),e(" fixupEdgeLabelCoords",()=>_Pe(t)),e(" undoCoordinateSystem",()=>jie(t)),e(" translateGraph",()=>CPe(t)),e(" assignNodeIntersects",()=>APe(t)),e(" reversePoints",()=>DPe(t)),e(" acyclic.undo",()=>Pie(t))}function fPe(t,e){Ae(t.nodes(),function(r){var n=t.node(r),i=e.node(r);n&&(n.x=i.x,n.y=i.y,e.children(r).length&&(n.width=i.width,n.height=i.height))}),Ae(t.edges(),function(r){var n=t.edge(r),i=e.edge(r);n.points=i.points,Object.prototype.hasOwnProperty.call(i,"x")&&(n.x=i.x,n.y=i.y)}),t.graph().width=e.graph().width,t.graph().height=e.graph().height}function TPe(t){var e=new sn({multigraph:!0,compound:!0}),r=nN(t.graph());return e.setGraph(Uh({},pPe,rN(r,dPe),np(r,mPe))),Ae(t.nodes(),function(n){var i=nN(t.node(n));e.setNode(n,af(rN(i,gPe),yPe)),e.setParent(n,t.parent(n))}),Ae(t.edges(),function(n){var i=nN(t.edge(n));e.setEdge(n,Uh({},xPe,rN(i,vPe),np(i,bPe)))}),e}function wPe(t){var e=t.graph();e.ranksep/=2,Ae(t.edges(),function(r){var n=t.edge(r);n.minlen*=2,n.labelpos.toLowerCase()!=="c"&&(e.rankdir==="TB"||e.rankdir==="BT"?n.width+=n.labeloffset:n.height+=n.labeloffset)})}function kPe(t){Ae(t.edges(),function(e){var r=t.edge(e);if(r.width&&r.height){var n=t.node(e.v),i=t.node(e.w),a={rank:(i.rank-n.rank)/2+n.rank,e};_c(t,"edge-proxy",a,"_ep")}})}function EPe(t){var e=0;Ae(t.nodes(),function(r){var n=t.node(r);n.borderTop&&(n.minRank=t.node(n.borderTop).rank,n.maxRank=t.node(n.borderBottom).rank,e=Gs(e,n.maxRank))}),t.graph().maxRank=e}function SPe(t){Ae(t.nodes(),function(e){var r=t.node(e);r.dummy==="edge-proxy"&&(t.edge(r.e).labelRank=r.rank,t.removeNode(e))})}function CPe(t){var e=Number.POSITIVE_INFINITY,r=0,n=Number.POSITIVE_INFINITY,i=0,a=t.graph(),s=a.marginx||0,l=a.marginy||0;function u(h){var f=h.x,d=h.y,p=h.width,m=h.height;e=Math.min(e,f-p/2),r=Math.max(r,f+p/2),n=Math.min(n,d-m/2),i=Math.max(i,d+m/2)}o(u,"getExtremes"),Ae(t.nodes(),function(h){u(t.node(h))}),Ae(t.edges(),function(h){var f=t.edge(h);Object.prototype.hasOwnProperty.call(f,"x")&&u(f)}),e-=s,n-=l,Ae(t.nodes(),function(h){var f=t.node(h);f.x-=e,f.y-=n}),Ae(t.edges(),function(h){var f=t.edge(h);Ae(f.points,function(d){d.x-=e,d.y-=n}),Object.prototype.hasOwnProperty.call(f,"x")&&(f.x-=e),Object.prototype.hasOwnProperty.call(f,"y")&&(f.y-=n)}),a.width=r-e+s,a.height=i-n+l}function APe(t){Ae(t.edges(),function(e){var r=t.edge(e),n=t.node(e.v),i=t.node(e.w),a,s;r.points?(a=r.points[0],s=r.points[r.points.length-1]):(r.points=[],a=i,s=n),r.points.unshift(PR(n,a)),r.points.push(PR(i,s))})}function _Pe(t){Ae(t.edges(),function(e){var r=t.edge(e);if(Object.prototype.hasOwnProperty.call(r,"x"))switch((r.labelpos==="l"||r.labelpos==="r")&&(r.width-=r.labeloffset),r.labelpos){case"l":r.x-=r.width/2+r.labeloffset;break;case"r":r.x+=r.width/2+r.labeloffset;break}})}function DPe(t){Ae(t.edges(),function(e){var r=t.edge(e);r.reversed&&r.points.reverse()})}function LPe(t){Ae(t.nodes(),function(e){if(t.children(e).length){var r=t.node(e),n=t.node(r.borderTop),i=t.node(r.borderBottom),a=t.node(pa(r.borderLeft)),s=t.node(pa(r.borderRight));r.width=Math.abs(s.x-a.x),r.height=Math.abs(i.y-n.y),r.x=a.x+r.width/2,r.y=n.y+r.height/2}}),Ae(t.nodes(),function(e){t.node(e).dummy==="border"&&t.removeNode(e)})}function RPe(t){Ae(t.edges(),function(e){if(e.v===e.w){var r=t.node(e.v);r.selfEdges||(r.selfEdges=[]),r.selfEdges.push({e,label:t.edge(e)}),t.removeEdge(e)}})}function NPe(t){var e=lf(t);Ae(e,function(r){var n=0;Ae(r,function(i,a){var s=t.node(i);s.order=a+n,Ae(s.selfEdges,function(l){_c(t,"selfedge",{width:l.label.width,height:l.label.height,rank:s.rank,order:a+ ++n,e:l.e,label:l.label},"_se")}),delete s.selfEdges})})}function MPe(t){Ae(t.nodes(),function(e){var r=t.node(e);if(r.dummy==="selfedge"){var n=t.node(r.e.v),i=n.x+n.width/2,a=n.y,s=r.x-i,l=n.height/2;t.setEdge(r.e,r.label),t.removeNode(e),r.label.points=[{x:i+2*s/3,y:a-l},{x:i+5*s/6,y:a-l},{x:i+s,y:a},{x:i+5*s/6,y:a+l},{x:i+2*s/3,y:a+l}],r.label.x=r.x,r.label.y=r.y}})}function rN(t,e){return tp(np(t,e),Number)}function nN(t){var e={};return Ae(t,function(r,n){e[n.toLowerCase()]=r}),e}var dPe,pPe,mPe,gPe,yPe,vPe,xPe,bPe,Kae=N(()=>{"use strict";qt();Wo();qie();Qie();OR();zR();eN();wae();Vae();Hae();jae();Dc();o(V2,"layout");o(hPe,"runLayout");o(fPe,"updateInputGraph");dPe=["nodesep","edgesep","ranksep","marginx","marginy"],pPe={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},mPe=["acyclicer","ranker","rankdir","align"],gPe=["width","height"],yPe={width:0,height:0},vPe=["minlen","weight","width","height","labeloffset"],xPe={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},bPe=["labelpos"];o(TPe,"buildLayoutGraph");o(wPe,"makeSpaceForEdgeLabels");o(kPe,"injectEdgeLabelProxies");o(EPe,"assignRankMinMax");o(SPe,"removeEdgeLabelProxies");o(CPe,"translateGraph");o(APe,"assignNodeIntersects");o(_Pe,"fixupEdgeLabelCoords");o(DPe,"reversePointsForReversedEdges");o(LPe,"removeBorderNodes");o(RPe,"removeSelfEdges");o(NPe,"insertSelfEdges");o(MPe,"positionSelfEdges");o(rN,"selectNumberAttrs");o(nN,"canonicalize")});var iN=N(()=>{"use strict";OR();Kae();zR();eN()});function qo(t){var e={options:{directed:t.isDirected(),multigraph:t.isMultigraph(),compound:t.isCompound()},nodes:IPe(t),edges:OPe(t)};return gr(t.graph())||(e.value=an(t.graph())),e}function IPe(t){return et(t.nodes(),function(e){var r=t.node(e),n=t.parent(e),i={v:e};return gr(r)||(i.value=r),gr(n)||(i.parent=n),i})}function OPe(t){return et(t.edges(),function(e){var r=t.edge(e),n={v:e.v,w:e.w};return gr(e.name)||(n.name=e.name),gr(r)||(n.value=r),n})}var aN=N(()=>{"use strict";qt();mk();o(qo,"write");o(IPe,"writeNodes");o(OPe,"writeEdges")});var Tr,op,Jae,ese,wk,PPe,tse,rse,BPe,Vm,Zae,nse,ise,ase,sse,ose=N(()=>{"use strict";pt();Wo();aN();Tr=new Map,op=new Map,Jae=new Map,ese=o(()=>{op.clear(),Jae.clear(),Tr.clear()},"clear"),wk=o((t,e)=>{let r=op.get(e)||[];return X.trace("In isDescendant",e," ",t," = ",r.includes(t)),r.includes(t)},"isDescendant"),PPe=o((t,e)=>{let r=op.get(e)||[];return X.info("Descendants of ",e," is ",r),X.info("Edge is ",t),t.v===e||t.w===e?!1:r?r.includes(t.v)||wk(t.v,e)||wk(t.w,e)||r.includes(t.w):(X.debug("Tilt, ",e,",not in descendants"),!1)},"edgeInCluster"),tse=o((t,e,r,n)=>{X.warn("Copying children of ",t,"root",n,"data",e.node(t),n);let i=e.children(t)||[];t!==n&&i.push(t),X.warn("Copying (nodes) clusterId",t,"nodes",i),i.forEach(a=>{if(e.children(a).length>0)tse(a,e,r,n);else{let s=e.node(a);X.info("cp ",a," to ",n," with parent ",t),r.setNode(a,s),n!==e.parent(a)&&(X.warn("Setting parent",a,e.parent(a)),r.setParent(a,e.parent(a))),t!==n&&a!==t?(X.debug("Setting parent",a,t),r.setParent(a,t)):(X.info("In copy ",t,"root",n,"data",e.node(t),n),X.debug("Not Setting parent for node=",a,"cluster!==rootId",t!==n,"node!==clusterId",a!==t));let l=e.edges(a);X.debug("Copying Edges",l),l.forEach(u=>{X.info("Edge",u);let h=e.edge(u.v,u.w,u.name);X.info("Edge data",h,n);try{PPe(u,n)?(X.info("Copying as ",u.v,u.w,h,u.name),r.setEdge(u.v,u.w,h,u.name),X.info("newGraph edges ",r.edges(),r.edge(r.edges()[0]))):X.info("Skipping copy of edge ",u.v,"-->",u.w," rootId: ",n," clusterId:",t)}catch(f){X.error(f)}})}X.debug("Removing node",a),e.removeNode(a)})},"copy"),rse=o((t,e)=>{let r=e.children(t),n=[...r];for(let i of r)Jae.set(i,t),n=[...n,...rse(i,e)];return n},"extractDescendants"),BPe=o((t,e,r)=>{let n=t.edges().filter(u=>u.v===e||u.w===e),i=t.edges().filter(u=>u.v===r||u.w===r),a=n.map(u=>({v:u.v===e?r:u.v,w:u.w===e?e:u.w})),s=i.map(u=>({v:u.v,w:u.w}));return a.filter(u=>s.some(h=>u.v===h.v&&u.w===h.w))},"findCommonEdges"),Vm=o((t,e,r)=>{let n=e.children(t);if(X.trace("Searching children of id ",t,n),n.length<1)return t;let i;for(let a of n){let s=Vm(a,e,r),l=BPe(e,r,s);if(s)if(l.length>0)i=s;else return s}return i},"findNonClusterChild"),Zae=o(t=>!Tr.has(t)||!Tr.get(t).externalConnections?t:Tr.has(t)?Tr.get(t).id:t,"getAnchorId"),nse=o((t,e)=>{if(!t||e>10){X.debug("Opting out, no graph ");return}else X.debug("Opting in, graph ");t.nodes().forEach(function(r){t.children(r).length>0&&(X.warn("Cluster identified",r," Replacement id in edges: ",Vm(r,t,r)),op.set(r,rse(r,t)),Tr.set(r,{id:Vm(r,t,r),clusterData:t.node(r)}))}),t.nodes().forEach(function(r){let n=t.children(r),i=t.edges();n.length>0?(X.debug("Cluster identified",r,op),i.forEach(a=>{let s=wk(a.v,r),l=wk(a.w,r);s^l&&(X.warn("Edge: ",a," leaves cluster ",r),X.warn("Descendants of XXX ",r,": ",op.get(r)),Tr.get(r).externalConnections=!0)})):X.debug("Not a cluster ",r,op)});for(let r of Tr.keys()){let n=Tr.get(r).id,i=t.parent(n);i!==r&&Tr.has(i)&&!Tr.get(i).externalConnections&&(Tr.get(r).id=i)}t.edges().forEach(function(r){let n=t.edge(r);X.warn("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(r)),X.warn("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(t.edge(r)));let i=r.v,a=r.w;if(X.warn("Fix XXX",Tr,"ids:",r.v,r.w,"Translating: ",Tr.get(r.v)," --- ",Tr.get(r.w)),Tr.get(r.v)||Tr.get(r.w)){if(X.warn("Fixing and trying - removing XXX",r.v,r.w,r.name),i=Zae(r.v),a=Zae(r.w),t.removeEdge(r.v,r.w,r.name),i!==r.v){let s=t.parent(i);Tr.get(s).externalConnections=!0,n.fromCluster=r.v}if(a!==r.w){let s=t.parent(a);Tr.get(s).externalConnections=!0,n.toCluster=r.w}X.warn("Fix Replacing with XXX",i,a,r.name),t.setEdge(i,a,n,r.name)}}),X.warn("Adjusted Graph",qo(t)),ise(t,0),X.trace(Tr)},"adjustClustersAndEdges"),ise=o((t,e)=>{if(X.warn("extractor - ",e,qo(t),t.children("D")),e>10){X.error("Bailing out");return}let r=t.nodes(),n=!1;for(let i of r){let a=t.children(i);n=n||a.length>0}if(!n){X.debug("Done, no node has children",t.nodes());return}X.debug("Nodes = ",r,e);for(let i of r)if(X.debug("Extracting node",i,Tr,Tr.has(i)&&!Tr.get(i).externalConnections,!t.parent(i),t.node(i),t.children("D")," Depth ",e),!Tr.has(i))X.debug("Not a cluster",i,e);else if(!Tr.get(i).externalConnections&&t.children(i)&&t.children(i).length>0){X.warn("Cluster without external connections, without a parent and with children",i,e);let s=t.graph().rankdir==="TB"?"LR":"TB";Tr.get(i)?.clusterData?.dir&&(s=Tr.get(i).clusterData.dir,X.warn("Fixing dir",Tr.get(i).clusterData.dir,s));let l=new sn({multigraph:!0,compound:!0}).setGraph({rankdir:s,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});X.warn("Old graph before copy",qo(t)),tse(i,t,l,i),t.setNode(i,{clusterNode:!0,id:i,clusterData:Tr.get(i).clusterData,label:Tr.get(i).label,graph:l}),X.warn("New graph after copy node: (",i,")",qo(l)),X.debug("Old graph after copy",qo(t))}else X.warn("Cluster ** ",i," **not meeting the criteria !externalConnections:",!Tr.get(i).externalConnections," no parent: ",!t.parent(i)," children ",t.children(i)&&t.children(i).length>0,t.children("D"),e),X.debug(Tr);r=t.nodes(),X.warn("New list of nodes",r);for(let i of r){let a=t.node(i);X.warn(" Now next level",i,a),a?.clusterNode&&ise(a.graph,e+1)}},"extractor"),ase=o((t,e)=>{if(e.length===0)return[];let r=Object.assign([],e);return e.forEach(n=>{let i=t.children(n),a=ase(t,i);r=[...r,...a]}),r},"sorter"),sse=o(t=>ase(t,t.children()),"sortNodesByHierarchy")});var cse={};ur(cse,{render:()=>FPe});var lse,FPe,use=N(()=>{"use strict";iN();aN();Wo();U9();Nt();ose();xw();cw();V9();pt();N2();Xt();lse=o(async(t,e,r,n,i,a)=>{X.warn("Graph in recursive render:XAX",qo(e),i);let s=e.graph().rankdir;X.trace("Dir in recursive render - dir:",s);let l=t.insert("g").attr("class","root");e.nodes()?X.info("Recursive render XXX",e.nodes()):X.info("No nodes found for",e),e.edges().length>0&&X.info("Recursive edges",e.edge(e.edges()[0]));let u=l.insert("g").attr("class","clusters"),h=l.insert("g").attr("class","edgePaths"),f=l.insert("g").attr("class","edgeLabels"),d=l.insert("g").attr("class","nodes");await Promise.all(e.nodes().map(async function(y){let x=e.node(y);if(i!==void 0){let v=JSON.parse(JSON.stringify(i.clusterData));X.trace(`Setting data for parent cluster XXX
|
||
Node.id = `,y,`
|
||
data=`,v.height,`
|
||
Parent cluster`,i.height),e.setNode(i.id,v),e.parent(y)||(X.trace("Setting parent",y,i.id),e.setParent(y,i.id,v))}if(X.info("(Insert) Node XXX"+y+": "+JSON.stringify(e.node(y))),x?.clusterNode){X.info("Cluster identified XBX",y,x.width,e.node(y));let{ranksep:v,nodesep:b}=e.graph();x.graph.setGraph({...x.graph.graph(),ranksep:v+25,nodesep:b});let T=await lse(d,x.graph,r,n,e.node(y),a),S=T.elem;Xe(x,S),x.diff=T.diff||0,X.info("New compound node after recursive render XAX",y,"width",x.width,"height",x.height),Aee(S,x)}else e.children(y).length>0?(X.trace("Cluster - the non recursive path XBX",y,x.id,x,x.width,"Graph:",e),X.trace(Vm(x.id,e)),Tr.set(x.id,{id:Vm(x.id,e),node:x})):(X.trace("Node - the non recursive path XAX",y,d,e.node(y),s),await wm(d,e.node(y),{config:a,dir:s}))})),await o(async()=>{let y=e.edges().map(async function(x){let v=e.edge(x.v,x.w,x.name);X.info("Edge "+x.v+" -> "+x.w+": "+JSON.stringify(x)),X.info("Edge "+x.v+" -> "+x.w+": ",x," ",JSON.stringify(e.edge(x))),X.info("Fix",Tr,"ids:",x.v,x.w,"Translating: ",Tr.get(x.v),Tr.get(x.w)),await pw(f,v)});await Promise.all(y)},"processEdges")(),X.info("Graph before layout:",JSON.stringify(qo(e))),X.info("############################################# XXX"),X.info("### Layout ### XXX"),X.info("############################################# XXX"),V2(e),X.info("Graph after layout:",JSON.stringify(qo(e)));let m=0,{subGraphTitleTotalMargin:g}=Iu(a);return await Promise.all(sse(e).map(async function(y){let x=e.node(y);if(X.info("Position XBX => "+y+": ("+x.x,","+x.y,") width: ",x.width," height: ",x.height),x?.clusterNode)x.y+=g,X.info("A tainted cluster node XBX1",y,x.id,x.width,x.height,x.x,x.y,e.parent(y)),Tr.get(x.id).node=x,I2(x);else if(e.children(y).length>0){X.info("A pure cluster node XBX1",y,x.id,x.x,x.y,x.width,x.height,e.parent(y)),x.height+=g,e.node(x.parentId);let v=x?.padding/2||0,b=x?.labelBBox?.height||0,T=b-v||0;X.debug("OffsetY",T,"labelHeight",b,"halfPadding",v),await Tm(u,x),Tr.get(x.id).node=x}else{let v=e.node(x.parentId);x.y+=g/2,X.info("A regular node XBX1 - using the padding",x.id,"parent",x.parentId,x.width,x.height,x.x,x.y,"offsetY",x.offsetY,"parent",v,v?.offsetY,x),I2(x)}})),e.edges().forEach(function(y){let x=e.edge(y);X.info("Edge "+y.v+" -> "+y.w+": "+JSON.stringify(x),x),x.points.forEach(S=>S.y+=g/2);let v=e.node(y.v);var b=e.node(y.w);let T=gw(h,x,Tr,r,v,b,n);mw(x,T)}),e.nodes().forEach(function(y){let x=e.node(y);X.info(y,x.type,x.diff),x.isGroup&&(m=x.diff)}),X.warn("Returning from recursive render XAX",l,m),{elem:l,diff:m}},"recursiveRender"),FPe=o(async(t,e)=>{let r=new sn({multigraph:!0,compound:!0}).setGraph({rankdir:t.direction,nodesep:t.config?.nodeSpacing||t.config?.flowchart?.nodeSpacing||t.nodeSpacing,ranksep:t.config?.rankSpacing||t.config?.flowchart?.rankSpacing||t.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),n=e.select("g");yw(n,t.markers,t.type,t.diagramId),_ee(),Cee(),bee(),ese(),t.nodes.forEach(a=>{r.setNode(a.id,{...a}),a.parentId&&r.setParent(a.id,a.parentId)}),X.debug("Edges:",t.edges),t.edges.forEach(a=>{if(a.start===a.end){let s=a.start,l=s+"---"+s+"---1",u=s+"---"+s+"---2",h=r.node(s);r.setNode(l,{domId:l,id:l,parentId:h.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),r.setParent(l,h.parentId),r.setNode(u,{domId:u,id:u,parentId:h.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),r.setParent(u,h.parentId);let f=structuredClone(a),d=structuredClone(a),p=structuredClone(a);f.label="",f.arrowTypeEnd="none",f.id=s+"-cyclic-special-1",d.arrowTypeStart="none",d.arrowTypeEnd="none",d.id=s+"-cyclic-special-mid",p.label="",h.isGroup&&(f.fromCluster=s,p.toCluster=s),p.id=s+"-cyclic-special-2",p.arrowTypeStart="none",r.setEdge(s,l,f,s+"-cyclic-special-0"),r.setEdge(l,u,d,s+"-cyclic-special-1"),r.setEdge(u,s,p,s+"-cyc<lic-special-2")}else r.setEdge(a.start,a.end,{...a},a.id)}),X.warn("Graph at first:",JSON.stringify(qo(r))),nse(r),X.warn("Graph after XAX:",JSON.stringify(qo(r)));let i=ge();await lse(n,r,t.type,t.diagramId,void 0,i)},"render")});function zi(t){"@babel/helpers - typeof";return zi=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},zi(t)}function kf(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function hse(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,n.key,n)}}function Ef(t,e,r){return e&&hse(t.prototype,e),r&&hse(t,r),Object.defineProperty(t,"prototype",{writable:!1}),t}function Loe(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Di(t,e){return GPe(t)||VPe(t,e)||$N(t,e)||HPe()}function Roe(t){return $Pe(t)||zPe(t)||$N(t)||UPe()}function $Pe(t){if(Array.isArray(t))return wN(t)}function GPe(t){if(Array.isArray(t))return t}function zPe(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function VPe(t,e){var r=t==null?null:typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(r!=null){var n=[],i=!0,a=!1,s,l;try{for(r=r.call(t);!(i=(s=r.next()).done)&&(n.push(s.value),!(e&&n.length===e));i=!0);}catch(u){a=!0,l=u}finally{try{!i&&r.return!=null&&r.return()}finally{if(a)throw l}}return n}}function $N(t,e){if(t){if(typeof t=="string")return wN(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor&&(r=t.constructor.name),r==="Map"||r==="Set")return Array.from(t);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return wN(t,e)}}function wN(t,e){(e==null||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}function UPe(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function HPe(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function uo(t,e){var r=typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=$N(t))||e&&t&&typeof t.length=="number"){r&&(t=r);var n=0,i=o(function(){},"F");return{s:i,n:o(function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},"n"),e:o(function(u){throw u},"e"),f:i}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a=!0,s=!1,l;return{s:o(function(){r=r.call(t)},"s"),n:o(function(){var u=r.next();return a=u.done,u},"n"),e:o(function(u){s=!0,l=u},"e"),f:o(function(){try{!a&&r.return!=null&&r.return()}finally{if(s)throw l}},"f")}}function dBe(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}function pBe(t,e){return e={exports:{}},t(e,e.exports),e.exports}function TBe(t){for(var e=t.length;e--&&bBe.test(t.charAt(e)););return e}function EBe(t){return t&&t.slice(0,wBe(t)+1).replace(kBe,"")}function DBe(t){var e=ABe.call(t,U2),r=t[U2];try{t[U2]=void 0;var n=!0}catch{}var i=_Be.call(t);return n&&(e?t[U2]=r:delete t[U2]),i}function MBe(t){return NBe.call(t)}function BBe(t){return t==null?t===void 0?PBe:OBe:pse&&pse in Object(t)?LBe(t):IBe(t)}function FBe(t){return t!=null&&typeof t=="object"}function zBe(t){return typeof t=="symbol"||$Be(t)&&zoe(t)==GBe}function qBe(t){if(typeof t=="number")return t;if(vx(t))return mse;if(mp(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=mp(e)?e+"":e}if(typeof t!="string")return t===0?t:+t;t=SBe(t);var r=UBe.test(t);return r||HBe.test(t)?WBe(t.slice(2),r?2:8):VBe.test(t)?mse:+t}function KBe(t,e,r){var n,i,a,s,l,u,h=0,f=!1,d=!1,p=!0;if(typeof t!="function")throw new TypeError(YBe);e=gse(e)||0,mp(r)&&(f=!!r.leading,d="maxWait"in r,a=d?XBe(gse(r.maxWait)||0,e):a,p="trailing"in r?!!r.trailing:p);function m(E){var _=n,A=i;return n=i=void 0,h=E,s=t.apply(A,_),s}o(m,"invokeFunc");function g(E){return h=E,l=setTimeout(v,e),f?m(E):s}o(g,"leadingEdge");function y(E){var _=E-u,A=E-h,D=e-_;return d?jBe(D,a-A):D}o(y,"remainingWait");function x(E){var _=E-u,A=E-h;return u===void 0||_>=e||_<0||d&&A>=a}o(x,"shouldInvoke");function v(){var E=sN();if(x(E))return b(E);l=setTimeout(v,y(E))}o(v,"timerExpired");function b(E){return l=void 0,p&&n?m(E):(n=i=void 0,s)}o(b,"trailingEdge");function T(){l!==void 0&&clearTimeout(l),h=0,n=u=i=l=void 0}o(T,"cancel");function S(){return l===void 0?s:b(sN())}o(S,"flush");function w(){var E=sN(),_=x(E);if(n=arguments,i=this,u=E,_){if(l===void 0)return g(u);if(d)return clearTimeout(l),l=setTimeout(v,e),m(u)}return l===void 0&&(l=setTimeout(v,e)),s}return o(w,"debounced"),w.cancel=T,w.flush=S,w}function lE(t,e,r,n,i,a){var s;return li(t)?s=t:s=ng[t]||ng.euclidean,e===0&&li(t)?s(i,a):s(e,r,n,i,a)}function V$e(t,e){if(cE(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||vx(t)?!0:z$e.test(t)||!G$e.test(t)||e!=null&&t in Object(e)}function X$e(t){if(!mp(t))return!1;var e=zoe(t);return e==W$e||e==q$e||e==H$e||e==Y$e}function Q$e(t){return!!Pse&&Pse in t}function tGe(t){if(t!=null){try{return eGe.call(t)}catch{}try{return t+""}catch{}}return""}function uGe(t){if(!mp(t)||Z$e(t))return!1;var e=j$e(t)?cGe:iGe;return e.test(rGe(t))}function fGe(t,e){return t?.[e]}function pGe(t,e){var r=dGe(t,e);return hGe(r)?r:void 0}function gGe(){this.__data__=hx?hx(null):{},this.size=0}function vGe(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}function kGe(t){var e=this.__data__;if(hx){var r=e[t];return r===bGe?void 0:r}return wGe.call(e,t)?e[t]:void 0}function AGe(t){var e=this.__data__;return hx?e[t]!==void 0:CGe.call(e,t)}function LGe(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=hx&&e===void 0?DGe:e,this}function og(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}function NGe(){this.__data__=[],this.size=0}function IGe(t,e){return t===e||t!==t&&e!==e}function OGe(t,e){for(var r=t.length;r--;)if(fle(t[r][0],e))return r;return-1}function FGe(t){var e=this.__data__,r=uE(e,t);if(r<0)return!1;var n=e.length-1;return r==n?e.pop():BGe.call(e,r,1),--this.size,!0}function GGe(t){var e=this.__data__,r=uE(e,t);return r<0?void 0:e[r][1]}function VGe(t){return uE(this.__data__,t)>-1}function HGe(t,e){var r=this.__data__,n=uE(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}function lg(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}function jGe(){this.size=0,this.__data__={hash:new Bse,map:new(XGe||qGe),string:new Bse}}function QGe(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}function JGe(t,e){var r=t.__data__;return ZGe(e)?r[typeof e=="string"?"string":"hash"]:r.map}function eze(t){var e=hE(this,t).delete(t);return this.size-=e?1:0,e}function rze(t){return hE(this,t).get(t)}function ize(t){return hE(this,t).has(t)}function sze(t,e){var r=hE(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this}function cg(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}function KN(t,e){if(typeof t!="function"||e!=null&&typeof e!="function")throw new TypeError(lze);var r=o(function(){var n=arguments,i=e?e.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var s=t.apply(this,n);return r.cache=a.set(i,s)||a,s},"memoized");return r.cache=new(KN.Cache||dle),r}function hze(t){var e=cze(t,function(n){return r.size===uze&&r.clear(),n}),r=e.cache;return e}function gze(t,e){for(var r=-1,n=t==null?0:t.length,i=Array(n);++r<n;)i[r]=e(t[r],r,t);return i}function gle(t){if(typeof t=="string")return t;if(cE(t))return mle(t,gle)+"";if(vx(t))return $se?$se.call(t):"";var e=t+"";return e=="0"&&1/t==-yze?"-0":e}function xze(t){return t==null?"":vze(t)}function bze(t,e){return cE(t)?t:U$e(t,e)?[t]:ple(yle(t))}function wze(t){if(typeof t=="string"||vx(t))return t;var e=t+"";return e=="0"&&1/t==-Tze?"-0":e}function kze(t,e){e=vle(e,t);for(var r=0,n=e.length;t!=null&&r<n;)t=t[QN(e[r++])];return r&&r==n?t:void 0}function Sze(t,e,r){var n=t==null?void 0:Eze(t,e);return n===void 0?r:n}function _ze(t,e,r){e=="__proto__"&&Gse?Gse(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}function Nze(t,e,r){var n=t[e];(!(Rze.call(t,e)&&fle(n,r))||r===void 0&&!(e in t))&&Dze(t,e,r)}function Pze(t,e){var r=typeof t;return e=e??Ize,!!e&&(r=="number"||r!="symbol"&&Oze.test(t))&&t>-1&&t%1==0&&t<e}function Fze(t,e,r,n){if(!mp(t))return t;e=vle(e,t);for(var i=-1,a=e.length,s=a-1,l=t;l!=null&&++i<a;){var u=QN(e[i]),h=r;if(u==="__proto__"||u==="constructor"||u==="prototype")return t;if(i!=s){var f=l[u];h=n?n(f,u,l):void 0,h===void 0&&(h=mp(f)?f:Bze(e[i+1])?[]:{})}Mze(l,u,h),l=l[u]}return t}function Gze(t,e,r){return t==null?t:$ze(t,e,r)}function Vze(t,e){var r=-1,n=t.length;for(e||(e=Array(n));++r<n;)e[r]=t[r];return e}function Hze(t){return cE(t)?mle(t,QN):vx(t)?[t]:Uze(ple(yle(t)))}function JN(t,e,r,n){for(var i=[],a=new ag,s=t.cy(),l=s.hasCompoundNodes(),u=0;u<t.length;u++){var h=t[u];r?i.push(h):l&&n(i,a,h)}for(;i.length>0;){var f=i.shift();e(f),a.add(f.id()),l&&n(i,a,f)}return t}function ble(t,e,r){if(r.isParent())for(var n=r._private.children,i=0;i<n.length;i++){var a=n[i];e.has(a.id())||t.push(a)}}function Tle(t,e,r){if(r.isChild()){var n=r._private.parent;e.has(n.id())||t.push(n)}}function cVe(t,e,r){Tle(t,e,r),ble(t,e,r)}function fN(t){return function(e){var r=this;if(e===void 0&&(e=!0),r.length!==0)if(r.isNode()&&!r.removed()){for(var n=0,i=r[0],a=i._private.edges,s=0;s<a.length;s++){var l=a[s];!e&&l.isLoop()||(n+=t(i,l))}return n}else return}}function Hm(t,e){return function(r){for(var n,i=this.nodes(),a=0;a<i.length;a++){var s=i[a],l=s[t](r);l!==void 0&&(n===void 0||e(l,n))&&(n=l)}return n}}function q2(){return!1}function Lk(){return!0}function dE(){for(var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:_Ve,e=arguments.length>1?arguments[1]:void 0,r=0;r<qse.length;r++){var n=qse[r];this[n]=t[n]||Lle[n]}this.context=e||this.context,this.listeners=[],this.emitting=0}function Ole(t,e,r){var n=r._private,i=n.styleCache=n.styleCache||[],a;return(a=i[t])!=null||(a=i[t]=e(r)),a}function pE(t,e){return t=vf(t),o(function(n){return Ole(t,e,n)},"cachedStyleFunction")}function mE(t,e){t=vf(t);var r=o(function(i){return e.call(i)},"selfFn");return o(function(){var i=this[0];if(i)return Ole(t,r,i)},"cachedPrototypeStyleFunction")}function pN(t,e){var r=t._private,n=r.data.parent?t.parents():null;if(n)for(var i=0;i<n.length;i++){var a=n[i];if(!e(a))return!1}return!0}function eM(t){var e=t.ok,r=t.edgeOkViaNode||t.ok,n=t.parentOk||t.ok;return function(){var i=this.cy();if(!i.styleEnabled())return!0;var a=this[0],s=i.hasCompoundNodes();if(a){var l=a._private;if(!e(a))return!1;if(a.isNode())return!s||pN(a,n);var u=l.source,h=l.target;return r(u)&&(!s||pN(u,r))&&(u===h||r(h)&&(!s||pN(h,r)))}}}function Xse(t){return function(){var e=arguments,r=[];if(e.length===2){var n=e[0],i=e[1];this.on(t.event,n,i)}else if(e.length===1&&li(e[0])){var a=e[0];this.on(t.event,a)}else if(e.length===0||e.length===1&&kn(e[0])){for(var s=e.length===1?e[0]:null,l=0;l<this.length;l++){var u=this[l],h=!t.ableField||u._private[t.ableField],f=u._private[t.field]!=t.value;if(t.overrideAble){var d=t.overrideAble(u);if(d!==void 0&&(h=d,!d))return this}h&&(u._private[t.field]=t.value,f&&r.push(u))}var p=this.spawn(r);p.updateStyle(),p.emit(t.event),s&&p.emit(s)}return this}}function hg(t){gf[t.field]=function(){var e=this[0];if(e){if(t.overrideField){var r=t.overrideField(e);if(r!==void 0)return r}return e._private[t.field]}},gf[t.on]=Xse({event:t.on,field:t.field,ableField:t.ableField,overrideAble:t.overrideAble,value:!0}),gf[t.off]=Xse({event:t.off,field:t.field,ableField:t.ableField,overrideAble:t.overrideAble,value:!1})}function Zse(t){return o(function(r){for(var n=[],i=0;i<this.length;i++){var a=this[i],s=a._private[t.attr];s&&n.push(s)}return this.spawn(n,!0).filter(r)},"sourceImpl")}function Jse(t){return o(function(r){var n=[],i=this._private.cy,a=t||{};Jt(r)&&(r=i.$(r));for(var s=0;s<r.length;s++)for(var l=r[s]._private.edges,u=0;u<l.length;u++){var h=l[u],f=h._private.data,d=this.hasElementWithId(f.source)&&r.hasElementWithId(f.target),p=r.hasElementWithId(f.source)&&this.hasElementWithId(f.target),m=d||p;m&&((a.thisIsSrc||a.thisIsTgt)&&(a.thisIsSrc&&!d||a.thisIsTgt&&!p)||n.push(h))}return this.spawn(n,!0)},"edgesWithImpl")}function eoe(t){var e={codirected:!1};return t=ir({},e,t),o(function(n){for(var i=[],a=this.edges(),s=t,l=0;l<a.length;l++)for(var u=a[l],h=u._private,f=h.source,d=f._private.data.id,p=h.data.target,m=f._private.edges,g=0;g<m.length;g++){var y=m[g],x=y._private.data,v=x.target,b=x.source,T=v===p&&b===d,S=d===v&&p===b;(s.codirected&&T||!s.codirected&&(T||S))&&i.push(y)}return this.spawn(i,!0).filter(n)},"parallelEdgesImpl")}function $Ve(t,e,r,n){var i=4,a=.001,s=1e-7,l=10,u=11,h=1/(u-1),f=typeof Float32Array<"u";if(arguments.length!==4)return!1;for(var d=0;d<4;++d)if(typeof arguments[d]!="number"||isNaN(arguments[d])||!isFinite(arguments[d]))return!1;t=Math.min(t,1),r=Math.min(r,1),t=Math.max(t,0),r=Math.max(r,0);var p=f?new Float32Array(u):new Array(u);function m(O,R){return 1-3*R+3*O}o(m,"A");function g(O,R){return 3*R-6*O}o(g,"B");function y(O){return 3*O}o(y,"C");function x(O,R,k){return((m(R,k)*O+g(R,k))*O+y(R))*O}o(x,"calcBezier");function v(O,R,k){return 3*m(R,k)*O*O+2*g(R,k)*O+y(R)}o(v,"getSlope");function b(O,R){for(var k=0;k<i;++k){var L=v(R,t,r);if(L===0)return R;var C=x(R,t,r)-O;R-=C/L}return R}o(b,"newtonRaphsonIterate");function T(){for(var O=0;O<u;++O)p[O]=x(O*h,t,r)}o(T,"calcSampleValues");function S(O,R,k){var L,C,I=0;do C=R+(k-R)/2,L=x(C,t,r)-O,L>0?k=C:R=C;while(Math.abs(L)>s&&++I<l);return C}o(S,"binarySubdivide");function w(O){for(var R=0,k=1,L=u-1;k!==L&&p[k]<=O;++k)R+=h;--k;var C=(O-p[k])/(p[k+1]-p[k]),I=R+C*h,M=v(I,t,r);return M>=a?b(O,I):M===0?I:S(O,R,R+h)}o(w,"getTForX");var E=!1;function _(){E=!0,(t!==e||r!==n)&&T()}o(_,"precompute");var A=o(function(R){return E||_(),t===e&&r===n?R:R===0?0:R===1?1:x(w(R),e,n)},"f");A.getControlPoints=function(){return[{x:t,y:e},{x:r,y:n}]};var D="generateBezier("+[t,e,r,n]+")";return A.toString=function(){return D},A}function toe(t,e,r,n,i){if(n===1||e===r)return r;var a=i(e,r,n);return t==null||((t.roundValue||t.color)&&(a=Math.round(a)),t.min!==void 0&&(a=Math.max(a,t.min)),t.max!==void 0&&(a=Math.min(a,t.max))),a}function roe(t,e){return t.pfValue!=null||t.value!=null?t.pfValue!=null&&(e==null||e.type.units!=="%")?t.pfValue:t.value:t}function Wm(t,e,r,n,i){var a=i!=null?i.type:null;r<0?r=0:r>1&&(r=1);var s=roe(t,i),l=roe(e,i);if(At(s)&&At(l))return toe(a,s,l,r,n);if(kn(s)&&kn(l)){for(var u=[],h=0;h<l.length;h++){var f=s[h],d=l[h];if(f!=null&&d!=null){var p=toe(a,f,d,r,n);u.push(p)}else u.push(d)}return u}}function zVe(t,e,r,n){var i=!n,a=t._private,s=e._private,l=s.easing,u=s.startTime,h=n?t:t.cy(),f=h.style();if(!s.easingImpl)if(l==null)s.easingImpl=zk.linear;else{var d;if(Jt(l)){var p=f.parse("transition-timing-function",l);d=p.value}else d=l;var m,g;Jt(d)?(m=d,g=[]):(m=d[1],g=d.slice(2).map(function(F){return+F})),g.length>0?(m==="spring"&&g.push(s.duration),s.easingImpl=zk[m].apply(null,g)):s.easingImpl=zk[m]}var y=s.easingImpl,x;if(s.duration===0?x=1:x=(r-u)/s.duration,s.applying&&(x=s.progress),x<0?x=0:x>1&&(x=1),s.delay==null){var v=s.startPosition,b=s.position;if(b&&i&&!t.locked()){var T={};Y2(v.x,b.x)&&(T.x=Wm(v.x,b.x,x,y)),Y2(v.y,b.y)&&(T.y=Wm(v.y,b.y,x,y)),t.position(T)}var S=s.startPan,w=s.pan,E=a.pan,_=w!=null&&n;_&&(Y2(S.x,w.x)&&(E.x=Wm(S.x,w.x,x,y)),Y2(S.y,w.y)&&(E.y=Wm(S.y,w.y,x,y)),t.emit("pan"));var A=s.startZoom,D=s.zoom,O=D!=null&&n;O&&(Y2(A,D)&&(a.zoom=cx(a.minZoom,Wm(A,D,x,y),a.maxZoom)),t.emit("zoom")),(_||O)&&t.emit("viewport");var R=s.style;if(R&&R.length>0&&i){for(var k=0;k<R.length;k++){var L=R[k],C=L.name,I=L,M=s.startStyle[C],P=f.properties[M.name],B=Wm(M,I,x,y,P);f.overrideBypass(t,C,B)}t.emit("style")}}return s.progress=x,x}function Y2(t,e){return t==null||e==null?!1:At(t)&&At(e)?!0:!!(t&&e)}function VVe(t,e,r,n){var i=e._private;i.started=!0,i.startTime=r-i.progress*i.duration}function noe(t,e){var r=e._private.aniEles,n=[];function i(f,d){var p=f._private,m=p.animation.current,g=p.animation.queue,y=!1;if(m.length===0){var x=g.shift();x&&m.push(x)}for(var v=o(function(E){for(var _=E.length-1;_>=0;_--){var A=E[_];A()}E.splice(0,E.length)},"callbacks"),b=m.length-1;b>=0;b--){var T=m[b],S=T._private;if(S.stopped){m.splice(b,1),S.hooked=!1,S.playing=!1,S.started=!1,v(S.frames);continue}!S.playing&&!S.applying||(S.playing&&S.applying&&(S.applying=!1),S.started||VVe(f,T,t),zVe(f,T,t,d),S.applying&&(S.applying=!1),v(S.frames),S.step!=null&&S.step(t),T.completed()&&(m.splice(b,1),S.hooked=!1,S.playing=!1,S.started=!1,v(S.completes)),y=!0)}return!d&&m.length===0&&g.length===0&&n.push(f),y}o(i,"stepOne");for(var a=!1,s=0;s<r.length;s++){var l=r[s],u=i(l);a=a||u}var h=i(e,!0);(a||h)&&(r.length>0?e.notify("draw",r):e.notify("draw")),r.unmerge(n),e.emit("step")}function Ble(t){this.options=ir({},KVe,QVe,t)}function Fle(t){this.options=ir({},ZVe,t)}function $le(t){this.options=ir({},JVe,t)}function vE(t){this.options=ir({},eUe,t),this.options.layout=this;var e=this.options.eles.nodes(),r=this.options.eles.edges(),n=r.filter(function(i){var a=i.source().data("id"),s=i.target().data("id"),l=e.some(function(h){return h.data("id")===a}),u=e.some(function(h){return h.data("id")===s});return!l||!u});this.options.eles=this.options.eles.not(n)}function zle(t){this.options=ir({},yUe,t)}function nM(t){this.options=ir({},vUe,t)}function Vle(t){this.options=ir({},xUe,t)}function Ule(t){this.options=ir({},bUe,t)}function Hle(t){this.options=t,this.notifications=0}function Yle(t,e){e.radius===0?t.lineTo(e.cx,e.cy):t.arc(e.cx,e.cy,e.radius,e.startAngle,e.endAngle,e.counterClockwise)}function aM(t,e,r,n){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0;return n===0||e.radius===0?{cx:e.x,cy:e.y,radius:0,startX:e.x,startY:e.y,stopX:e.x,stopY:e.y,startAngle:void 0,endAngle:void 0,counterClockwise:void 0}:(kUe(t,e,r,n,i),{cx:RN,cy:NN,radius:fp,startX:Wle,startY:qle,stopX:MN,stopY:IN,startAngle:Rc.ang+Math.PI/2*dp,endAngle:Yo.ang-Math.PI/2*dp,counterClockwise:Hk})}function Xle(t){var e=[];if(t!=null){for(var r=0;r<t.length;r+=2){var n=t[r],i=t[r+1];e.push({x:n,y:i})}return e}}function EUe(t,e,r){for(var n=o(function(h,f,d,p){return ra(h,f,d,p)},"qbezierAt$1"),i=e._private,a=i.rstyle.bezierPts,s=0;s<t.bezierProjPcts.length;s++){var l=t.bezierProjPcts[s];a.push({x:n(r[0],r[2],r[4],l),y:n(r[1],r[3],r[5],l)})}}function eHe(t,e){for(var r=0;r<e.length;r++){var n=e[r];t.lineTo(n.x,n.y)}}function tHe(t,e,r){for(var n,i=0;i<e.length;i++){var a=e[i];i===0&&(n=a),t.lineTo(a.x,a.y)}t.quadraticCurveTo(r.x,r.y,n.x,n.y)}function Toe(t,e,r){t.beginPath&&t.beginPath();for(var n=e,i=0;i<n.length;i++){var a=n[i];t.lineTo(a.x,a.y)}var s=r,l=r[0];t.moveTo(l.x,l.y);for(var i=1;i<s.length;i++){var a=s[i];t.lineTo(a.x,a.y)}t.closePath&&t.closePath()}function rHe(t,e,r,n,i){t.beginPath&&t.beginPath(),t.arc(r,n,i,0,Math.PI*2,!1);var a=e,s=a[0];t.moveTo(s.x,s.y);for(var l=0;l<a.length;l++){var u=a[l];t.lineTo(u.x,u.y)}t.closePath&&t.closePath()}function nHe(t,e,r,n){t.arc(e,r,n,0,Math.PI*2,!1)}function vN(t,e,r,n,i){var a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:5,s=arguments.length>6?arguments[6]:void 0;t.beginPath(),t.moveTo(e+a,r),t.lineTo(e+n-a,r),t.quadraticCurveTo(e+n,r,e+n,r+a),t.lineTo(e+n,r+i-a),t.quadraticCurveTo(e+n,r+i,e+n-a,r+i),t.lineTo(e+a,r+i),t.quadraticCurveTo(e,r+i,e,r+i-a),t.lineTo(e,r+a),t.quadraticCurveTo(e,r,e+a,r),t.closePath(),s?t.stroke():t.fill()}function woe(t,e,r){var n=t.createShader(e);if(t.shaderSource(n,r),t.compileShader(n),!t.getShaderParameter(n,t.COMPILE_STATUS))throw new Error(t.getShaderInfoLog(n));return n}function uHe(t,e,r){var n=woe(t,t.VERTEX_SHADER,e),i=woe(t,t.FRAGMENT_SHADER,r),a=t.createProgram();if(t.attachShader(a,n),t.attachShader(a,i),t.linkProgram(a),!t.getProgramParameter(a,t.LINK_STATUS))throw new Error("Could not initialize shaders");return a}function hHe(t,e,r){r===void 0&&(r=e);var n=t.makeOffscreenCanvas(e,r),i=n.context=n.getContext("2d");return n.clear=function(){return i.clearRect(0,0,n.width,n.height)},n.clear(),n}function lM(t){var e=t.pixelRatio,r=t.cy.zoom(),n=t.cy.pan();return{zoom:r*e,pan:{x:n.x*e,y:n.y*e}}}function xN(t,e,r,n,i){var a=n*r+e.x,s=i*r+e.y;return s=Math.round(t.canvasHeight-s),[a,s]}function Ok(t,e,r){var n=t[0]/255,i=t[1]/255,a=t[2]/255,s=e,l=r||new Array(4);return l[0]=n*s,l[1]=i*s,l[2]=a*s,l[3]=s,l}function Pk(t,e){var r=e||new Array(4);return r[0]=(t>>0&255)/255,r[1]=(t>>8&255)/255,r[2]=(t>>16&255)/255,r[3]=(t>>24&255)/255,r}function fHe(t){return t[0]+(t[1]<<8)+(t[2]<<16)+(t[3]<<24)}function dHe(t,e){var r=t.createTexture();return r.buffer=function(n){t.bindTexture(t.TEXTURE_2D,r),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.LINEAR_MIPMAP_NEAREST),t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,n),t.generateMipmap(t.TEXTURE_2D),t.bindTexture(t.TEXTURE_2D,null)},r.deleteTexture=function(){t.deleteTexture(r)},r}function oce(t,e){switch(e){case"float":return[1,t.FLOAT,4];case"vec2":return[2,t.FLOAT,4];case"vec3":return[3,t.FLOAT,4];case"vec4":return[4,t.FLOAT,4];case"int":return[1,t.INT,4];case"ivec2":return[2,t.INT,4]}}function lce(t,e,r){switch(e){case t.FLOAT:return new Float32Array(r);case t.INT:return new Int32Array(r)}}function pHe(t,e,r,n,i,a){switch(e){case t.FLOAT:return new Float32Array(r.buffer,a*n,i);case t.INT:return new Int32Array(r.buffer,a*n,i)}}function mHe(t,e,r,n){var i=oce(t,e),a=Di(i,2),s=a[0],l=a[1],u=lce(t,l,n),h=t.createBuffer();return t.bindBuffer(t.ARRAY_BUFFER,h),t.bufferData(t.ARRAY_BUFFER,u,t.STATIC_DRAW),l===t.FLOAT?t.vertexAttribPointer(r,s,l,!1,0,0):l===t.INT&&t.vertexAttribIPointer(r,s,l,0,0),t.enableVertexAttribArray(r),t.bindBuffer(t.ARRAY_BUFFER,null),h}function co(t,e,r,n){var i=oce(t,r),a=Di(i,3),s=a[0],l=a[1],u=a[2],h=lce(t,l,e*s),f=s*u,d=t.createBuffer();t.bindBuffer(t.ARRAY_BUFFER,d),t.bufferData(t.ARRAY_BUFFER,e*f,t.DYNAMIC_DRAW),t.enableVertexAttribArray(n),l===t.FLOAT?t.vertexAttribPointer(n,s,l,!1,f,0):l===t.INT&&t.vertexAttribIPointer(n,s,l,f,0),t.vertexAttribDivisor(n,1),t.bindBuffer(t.ARRAY_BUFFER,null);for(var p=new Array(e),m=0;m<e;m++)p[m]=pHe(t,l,h,f,s,m);return d.dataArray=h,d.stride=f,d.size=s,d.getView=function(g){return p[g]},d.setPoint=function(g,y,x){var v=p[g];v[0]=y,v[1]=x},d.bufferSubData=function(g){t.bindBuffer(t.ARRAY_BUFFER,d),g?t.bufferSubData(t.ARRAY_BUFFER,0,h,0,g*s):t.bufferSubData(t.ARRAY_BUFFER,0,h)},d}function gHe(t){var e=t.createFramebuffer();t.bindFramebuffer(t.FRAMEBUFFER,e);var r=t.createTexture();return t.bindTexture(t.TEXTURE_2D,r),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.framebufferTexture2D(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.TEXTURE_2D,r,0),t.bindFramebuffer(t.FRAMEBUFFER,null),e.setFramebufferAttachmentSizes=function(n,i){t.bindTexture(t.TEXTURE_2D,r),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,n,i,0,t.RGBA,t.UNSIGNED_BYTE,null)},e}function nx(){var t=new koe(9);return koe!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1,t}function cce(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t}function yHe(t,e,r){var n=e[0],i=e[1],a=e[2],s=e[3],l=e[4],u=e[5],h=e[6],f=e[7],d=e[8],p=r[0],m=r[1],g=r[2],y=r[3],x=r[4],v=r[5],b=r[6],T=r[7],S=r[8];return t[0]=p*n+m*s+g*h,t[1]=p*i+m*l+g*f,t[2]=p*a+m*u+g*d,t[3]=y*n+x*s+v*h,t[4]=y*i+x*l+v*f,t[5]=y*a+x*u+v*d,t[6]=b*n+T*s+S*h,t[7]=b*i+T*l+S*f,t[8]=b*a+T*u+S*d,t}function nE(t,e,r){var n=e[0],i=e[1],a=e[2],s=e[3],l=e[4],u=e[5],h=e[6],f=e[7],d=e[8],p=r[0],m=r[1];return t[0]=n,t[1]=i,t[2]=a,t[3]=s,t[4]=l,t[5]=u,t[6]=p*n+m*s+h,t[7]=p*i+m*l+f,t[8]=p*a+m*u+d,t}function uce(t,e,r){var n=e[0],i=e[1],a=e[2],s=e[3],l=e[4],u=e[5],h=e[6],f=e[7],d=e[8],p=Math.sin(r),m=Math.cos(r);return t[0]=m*n+p*s,t[1]=m*i+p*l,t[2]=m*a+p*u,t[3]=m*s-p*n,t[4]=m*l-p*i,t[5]=m*u-p*a,t[6]=h,t[7]=f,t[8]=d,t}function cM(t,e,r){var n=r[0],i=r[1];return t[0]=n*e[0],t[1]=n*e[1],t[2]=n*e[2],t[3]=i*e[3],t[4]=i*e[4],t[5]=i*e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t}function vHe(t,e,r){return t[0]=2/e,t[1]=0,t[2]=0,t[3]=0,t[4]=-2/r,t[5]=0,t[6]=-1,t[7]=1,t[8]=1,t}function THe(t,e){return t.intersection?t.intersection(e):new Set(Roe(t).filter(function(r){return e.has(r)}))}function Coe(t,e){return"rgba(".concat(t[0],", ").concat(t[1],", ").concat(t[2],", ").concat(e,")")}function SHe(t){var e=t&&t.style&&t.style.backgroundColor||"white";return Boe(e)}function CHe(t){{var e=t.render;t.render=function(a){a=a||{};var s=t.cy;t.webgl&&(s.zoom()>rce?(AHe(t),e.call(t,a)):(_He(t),dce(t,a,ix.SCREEN)))}}{var r=t.matchCanvasSize;t.matchCanvasSize=function(a){r.call(t,a),t.pickingFrameBuffer.setFramebufferAttachmentSizes(t.canvasWidth,t.canvasHeight),t.pickingFrameBuffer.needsDraw=!0}}t.findNearestElements=function(a,s,l,u){return IHe(t,a,s)};{var n=t.invalidateCachedZSortedEles;t.invalidateCachedZSortedEles=function(){n.call(t),t.pickingFrameBuffer.needsDraw=!0}}{var i=t.notify;t.notify=function(a,s){i.call(t,a,s),a==="viewport"||a==="bounds"?t.pickingFrameBuffer.needsDraw=!0:a==="background"&&t.eleDrawing.invalidate(s,{type:"node-body"})}}}function AHe(t){var e=t.data.contexts[t.WEBGL];e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT)}function _He(t){var e=o(function(n){n.save(),n.setTransform(1,0,0,1,0,0),n.clearRect(0,0,t.canvasWidth,t.canvasHeight),n.restore()},"clear");e(t.data.contexts[t.NODE]),e(t.data.contexts[t.DRAG])}function DHe(t){var e=t.canvasWidth,r=t.canvasHeight,n=lM(t),i=n.pan,a=n.zoom,s=nx();nE(s,s,[i.x,i.y]),cM(s,s,[a,a]);var l=nx();vHe(l,e,r);var u=nx();return yHe(u,l,s),u}function fce(t,e){var r=t.canvasWidth,n=t.canvasHeight,i=lM(t),a=i.pan,s=i.zoom;e.setTransform(1,0,0,1,0,0),e.clearRect(0,0,r,n),e.translate(a.x,a.y),e.scale(s,s)}function LHe(t,e){t.drawSelectionRectangle(e,function(r){return fce(t,r)})}function RHe(t){var e=t.data.contexts[t.NODE];e.save(),fce(t,e),e.strokeStyle="rgba(0, 0, 0, 0.3)",e.beginPath(),e.moveTo(-1e3,0),e.lineTo(1e3,0),e.stroke(),e.beginPath(),e.moveTo(0,-1e3),e.lineTo(0,1e3),e.stroke(),e.restore()}function NHe(t){var e=o(function(i,a,s){for(var l=i.atlasManager.getRenderTypeOpts(a),u=t.data.contexts[t.NODE],h=.125,f=l.atlasCollection.atlases,d=0;d<f.length;d++){var p=f[d],m=p.canvas,g=m.width,y=m.height,x=g*d,v=m.height*s;u.save(),u.scale(h,h),u.drawImage(m,x,v),u.strokeStyle="black",u.rect(x,v,g,y),u.stroke(),u.restore()}},"draw"),r=0;e(t.eleDrawing,"node-body",r++),e(t.eleDrawing,"node-label",r++)}function MHe(t,e,r,n,i){var a,s,l,u,h=lM(t),f=h.pan,d=h.zoom;if(n===void 0||i===void 0){var p=xN(t,f,d,e,r),m=Di(p,2),g=m[0],y=m[1],x=6;a=g-x/2,s=y-x/2,l=x,u=x}else{var v=xN(t,f,d,e,r),b=Di(v,2),T=b[0],S=b[1],w=xN(t,f,d,n,i),E=Di(w,2),_=E[0],A=E[1];a=T,s=A,l=Math.abs(_-T),u=Math.abs(A-S)}if(l===0||u===0)return[];var D=t.data.contexts[t.WEBGL];D.bindFramebuffer(D.FRAMEBUFFER,t.pickingFrameBuffer),t.pickingFrameBuffer.needsDraw&&(D.viewport(0,0,D.canvas.width,D.canvas.height),dce(t,null,ix.PICKING),t.pickingFrameBuffer.needsDraw=!1);var O=l*u,R=new Uint8Array(O*4);D.readPixels(a,s,l,u,D.RGBA,D.UNSIGNED_BYTE,R),D.bindFramebuffer(D.FRAMEBUFFER,null);for(var k=new Set,L=0;L<O;L++){var C=R.slice(L*4,L*4+4),I=fHe(C)-1;I>=0&&k.add(I)}return k}function IHe(t,e,r){var n=MHe(t,e,r),i=t.getCachedZSortedEles(),a,s,l=uo(n),u;try{for(l.s();!(u=l.n()).done;){var h=u.value,f=i[h];if(!a&&f.isNode()&&(a=f),!s&&f.isEdge()&&(s=f),a&&s)break}}catch(d){l.e(d)}finally{l.f()}return[a,s].filter(Boolean)}function dce(t,e,r){var n,i;t.webglDebug&&(i=[],n=performance.now());var a=t.eleDrawing,s=0;if(r.screen&&t.data.canvasNeedsRedraw[t.SELECT_BOX]&&LHe(t,e),t.data.canvasNeedsRedraw[t.NODE]||r.picking){var l=o(function(k,L){L+=1,k.isNode()?(a.drawTexture(k,L,"node-underlay"),a.drawTexture(k,L,"node-body"),a.drawTexture(k,L,"node-label"),a.drawTexture(k,L,"node-overlay")):(a.drawEdgeLine(k,L),a.drawEdgeArrow(k,L,"source"),a.drawEdgeArrow(k,L,"target"),a.drawTexture(k,L,"edge-label"))},"draw"),u=t.data.contexts[t.WEBGL];r.screen?(u.clearColor(0,0,0,0),u.enable(u.BLEND),u.blendFunc(u.ONE,u.ONE_MINUS_SRC_ALPHA)):u.disable(u.BLEND),u.clear(u.COLOR_BUFFER_BIT|u.DEPTH_BUFFER_BIT),u.viewport(0,0,u.canvas.width,u.canvas.height);var h=DHe(t),f=t.getCachedZSortedEles();if(s=f.length,a.startFrame(h,i,r),r.screen){for(var d=0;d<f.nondrag.length;d++)l(f.nondrag[d],d);for(var p=0;p<f.drag.length;p++)l(f.drag[p],-1)}else if(r.picking)for(var m=0;m<f.length;m++)l(f[m],m);a.endFrame(),t.data.gc&&(console.log("Garbage Collect!"),t.data.gc=!1,a.gc()),r.screen&&t.webglDebugShowAtlases&&(RHe(t),NHe(t)),t.data.canvasNeedsRedraw[t.NODE]=!1,t.data.canvasNeedsRedraw[t.DRAG]=!1}if(t.webglDebug){var g=performance.now(),y=!0,x=0,v=0,b=uo(i),T;try{for(b.s();!(T=b.n()).done;){var S=T.value;x++,v+=S.count}}catch(R){b.e(R)}finally{b.f()}var w=Math.ceil(g-n),E="".concat(s," elements, ").concat(v," rectangles, ").concat(x," batches");if(y)console.log("WebGL (".concat(r.name,") - ").concat(E));else{console.log("WebGL render (".concat(r.name,") - frame time ").concat(w,"ms")),console.log(" ".concat(E)),console.log("Texture Atlases Used:");var _=a.getAtlasDebugInfo(),A=uo(_),D;try{for(A.s();!(D=A.n()).done;){var O=D.value;console.log(" ".concat(O.type,": ").concat(O.keyCount," keys, ").concat(O.atlasCount," atlases"))}}catch(R){A.e(R)}finally{A.f()}console.log("")}}}function OHe(t,e){for(var r=atob(t),n=new ArrayBuffer(r.length),i=new Uint8Array(n),a=0;a<r.length;a++)i[a]=r.charCodeAt(a);return new Blob([n],{type:e})}function Doe(t){var e=t.indexOf(",");return t.substr(e+1)}function mce(t,e,r){var n=o(function(){return e.toDataURL(r,t.quality)},"getB64Uri");switch(t.output){case"blob-promise":return new sg(function(i,a){try{e.toBlob(function(s){s!=null?i(s):a(new Error("`canvas.toBlob()` sent a null value in its callback"))},r,t.quality)}catch(s){a(s)}});case"blob":return OHe(Doe(n()),r);case"base64":return Doe(n());case"base64uri":default:return n()}}function yce(t){var e=this,r=e.cy.window(),n=r.document;t.webgl&&(kr.CANVAS_LAYERS=e.CANVAS_LAYERS=4,console.log("webgl rendering enabled")),e.data={canvases:new Array(kr.CANVAS_LAYERS),contexts:new Array(kr.CANVAS_LAYERS),canvasNeedsRedraw:new Array(kr.CANVAS_LAYERS),bufferCanvases:new Array(kr.BUFFER_COUNT),bufferContexts:new Array(kr.CANVAS_LAYERS)};var i="-webkit-tap-highlight-color",a="rgba(0,0,0,0)";e.data.canvasContainer=n.createElement("div");var s=e.data.canvasContainer.style;e.data.canvasContainer.style[i]=a,s.position="relative",s.zIndex="0",s.overflow="hidden";var l=t.cy.container();l.appendChild(e.data.canvasContainer),l.style[i]=a;var u={"-webkit-user-select":"none","-moz-user-select":"-moz-none","user-select":"none","-webkit-tap-highlight-color":"rgba(0,0,0,0)","outline-style":"none"};eBe()&&(u["-ms-touch-action"]="none",u["touch-action"]="none");for(var h=0;h<kr.CANVAS_LAYERS;h++){var f=e.data.canvases[h]=n.createElement("canvas"),d=kr.CANVAS_TYPES[h];e.data.contexts[h]=f.getContext(d),e.data.contexts[h]||oi("Could not create canvas of type "+d),Object.keys(u).forEach(function(Q){f.style[Q]=u[Q]}),f.style.position="absolute",f.setAttribute("data-id","layer"+h),f.style.zIndex=String(kr.CANVAS_LAYERS-h),e.data.canvasContainer.appendChild(f),e.data.canvasNeedsRedraw[h]=!1}e.data.topCanvas=e.data.canvases[0],e.data.canvases[kr.NODE].setAttribute("data-id","layer"+kr.NODE+"-node"),e.data.canvases[kr.SELECT_BOX].setAttribute("data-id","layer"+kr.SELECT_BOX+"-selectbox"),e.data.canvases[kr.DRAG].setAttribute("data-id","layer"+kr.DRAG+"-drag"),e.data.canvases[kr.WEBGL]&&e.data.canvases[kr.WEBGL].setAttribute("data-id","layer"+kr.WEBGL+"-webgl");for(var h=0;h<kr.BUFFER_COUNT;h++)e.data.bufferCanvases[h]=n.createElement("canvas"),e.data.bufferContexts[h]=e.data.bufferCanvases[h].getContext("2d"),e.data.bufferCanvases[h].style.position="absolute",e.data.bufferCanvases[h].setAttribute("data-id","buffer"+h),e.data.bufferCanvases[h].style.zIndex=String(-h-1),e.data.bufferCanvases[h].style.visibility="hidden";e.pathsEnabled=!0;var p=Us(),m=o(function(ee){return{x:(ee.x1+ee.x2)/2,y:(ee.y1+ee.y2)/2}},"getBoxCenter"),g=o(function(ee){return{x:-ee.w/2,y:-ee.h/2}},"getCenterOffset"),y=o(function(ee){var te=ee[0]._private,re=te.oldBackgroundTimestamp===te.backgroundTimestamp;return!re},"backgroundTimestampHasChanged"),x=o(function(ee){return ee[0]._private.nodeKey},"getStyleKey"),v=o(function(ee){return ee[0]._private.labelStyleKey},"getLabelKey"),b=o(function(ee){return ee[0]._private.sourceLabelStyleKey},"getSourceLabelKey"),T=o(function(ee){return ee[0]._private.targetLabelStyleKey},"getTargetLabelKey"),S=o(function(ee,te,re,he,J){return e.drawElement(ee,te,re,!1,!1,J)},"drawElement"),w=o(function(ee,te,re,he,J){return e.drawElementText(ee,te,re,he,"main",J)},"drawLabel"),E=o(function(ee,te,re,he,J){return e.drawElementText(ee,te,re,he,"source",J)},"drawSourceLabel"),_=o(function(ee,te,re,he,J){return e.drawElementText(ee,te,re,he,"target",J)},"drawTargetLabel"),A=o(function(ee){return ee.boundingBox(),ee[0]._private.bodyBounds},"getElementBox"),D=o(function(ee){return ee.boundingBox(),ee[0]._private.labelBounds.main||p},"getLabelBox"),O=o(function(ee){return ee.boundingBox(),ee[0]._private.labelBounds.source||p},"getSourceLabelBox"),R=o(function(ee){return ee.boundingBox(),ee[0]._private.labelBounds.target||p},"getTargetLabelBox"),k=o(function(ee,te){return te},"isLabelVisibleAtScale"),L=o(function(ee){return m(A(ee))},"getElementRotationPoint"),C=o(function(ee,te,re){var he=ee?ee+"-":"";return{x:te.x+re.pstyle(he+"text-margin-x").pfValue,y:te.y+re.pstyle(he+"text-margin-y").pfValue}},"addTextMargin"),I=o(function(ee,te,re){var he=ee[0]._private.rscratch;return{x:he[te],y:he[re]}},"getRsPt"),M=o(function(ee){return C("",I(ee,"labelX","labelY"),ee)},"getLabelRotationPoint"),P=o(function(ee){return C("source",I(ee,"sourceLabelX","sourceLabelY"),ee)},"getSourceLabelRotationPoint"),B=o(function(ee){return C("target",I(ee,"targetLabelX","targetLabelY"),ee)},"getTargetLabelRotationPoint"),F=o(function(ee){return g(A(ee))},"getElementRotationOffset"),G=o(function(ee){return g(O(ee))},"getSourceLabelRotationOffset"),$=o(function(ee){return g(R(ee))},"getTargetLabelRotationOffset"),U=o(function(ee){var te=D(ee),re=g(D(ee));if(ee.isNode()){switch(ee.pstyle("text-halign").value){case"left":re.x=-te.w-(te.leftPad||0);break;case"right":re.x=-(te.rightPad||0);break}switch(ee.pstyle("text-valign").value){case"top":re.y=-te.h-(te.topPad||0);break;case"bottom":re.y=-(te.botPad||0);break}}return re},"getLabelRotationOffset"),K=e.data.eleTxrCache=new ex(e,{getKey:x,doesEleInvalidateKey:y,drawElement:S,getBoundingBox:A,getRotationPoint:L,getRotationOffset:F,allowEdgeTxrCaching:!1,allowParentTxrCaching:!1}),ne=e.data.lblTxrCache=new ex(e,{getKey:v,drawElement:w,getBoundingBox:D,getRotationPoint:M,getRotationOffset:U,isVisible:k}),j=e.data.slbTxrCache=new ex(e,{getKey:b,drawElement:E,getBoundingBox:O,getRotationPoint:P,getRotationOffset:G,isVisible:k}),le=e.data.tlbTxrCache=new ex(e,{getKey:T,drawElement:_,getBoundingBox:R,getRotationPoint:B,getRotationOffset:$,isVisible:k}),Z=e.data.lyrTxrCache=new nce(e);e.onUpdateEleCalcs(o(function(ee,te){K.invalidateElements(te),ne.invalidateElements(te),j.invalidateElements(te),le.invalidateElements(te),Z.invalidateElements(te);for(var re=0;re<te.length;re++){var he=te[re]._private;he.oldBackgroundTimestamp=he.backgroundTimestamp}},"invalidateTextureCaches"));var ce=o(function(ee){for(var te=0;te<ee.length;te++)Z.enqueueElementRefinement(ee[te].ele)},"refineInLayers");K.onDequeue(ce),ne.onDequeue(ce),j.onDequeue(ce),le.onDequeue(ce),t.webgl&&e.initWebgl(t,{getStyleKey:x,getLabelKey:v,drawElement:S,drawLabel:w,getElementBox:A,getLabelBox:D,getElementRotationPoint:L,getElementRotationOffset:F,getLabelRotationPoint:M,getLabelRotationOffset:U})}function bce(t,e,r){var n=r,i=o(function(A){ln("Can not register `"+e+"` for `"+t+"` since `"+A+"` already exists in the prototype and can not be overridden")},"overrideErr");if(t==="core"){if(mx.prototype[e])return i(e);mx.prototype[e]=r}else if(t==="collection"){if(va.prototype[e])return i(e);va.prototype[e]=r}else if(t==="layout"){for(var a=o(function(A){this.options=A,r.call(this,A),Vr(this._private)||(this._private={}),this._private.cy=A.cy,this._private.listeners=[],this.createEmitter()},"Layout"),s=a.prototype=Object.create(r.prototype),l=[],u=0;u<l.length;u++){var h=l[u];s[h]=s[h]||function(){return this}}s.start&&!s.run?s.run=function(){return this.start(),this}:!s.start&&s.run&&(s.start=function(){return this.run(),this});var f=r.prototype.stop;s.stop=function(){var _=this.options;if(_&&_.animate){var A=this.animations;if(A)for(var D=0;D<A.length;D++)A[D].stop()}return f?f.call(this):this.emit("layoutstop"),this},s.destroy||(s.destroy=function(){return this}),s.cy=function(){return this._private.cy};var d=o(function(A){return A._private.cy},"getCy"),p={addEventFields:o(function(A,D){D.layout=A,D.cy=d(A),D.target=A},"addEventFields"),bubble:o(function(){return!0},"bubble"),parent:o(function(A){return d(A)},"parent")};ir(s,{createEmitter:o(function(){return this._private.emitter=new dE(p,this),this},"createEmitter"),emitter:o(function(){return this._private.emitter},"emitter"),on:o(function(A,D){return this.emitter().on(A,D),this},"on"),one:o(function(A,D){return this.emitter().one(A,D),this},"one"),once:o(function(A,D){return this.emitter().one(A,D),this},"once"),removeListener:o(function(A,D){return this.emitter().removeListener(A,D),this},"removeListener"),removeAllListeners:o(function(){return this.emitter().removeAllListeners(),this},"removeAllListeners"),emit:o(function(A,D){return this.emitter().emit(A,D),this},"emit")}),on.eventAliasesOn(s),n=a}else if(t==="renderer"&&e!=="null"&&e!=="base"){var m=Tce("renderer","base"),g=m.prototype,y=r,x=r.prototype,v=o(function(){m.apply(this,arguments),y.apply(this,arguments)},"Renderer"),b=v.prototype;for(var T in g){var S=g[T],w=x[T]!=null;if(w)return i(T);b[T]=S}for(var E in x)b[E]=x[E];g.clientFunctions.forEach(function(_){b[_]=b[_]||function(){oi("Renderer does not implement `renderer."+_+"()` on its prototype")}}),n=v}else if(t==="__proto__"||t==="constructor"||t==="prototype")return oi(t+" is an illegal type to be registered, possibly lead to prototype pollutions");return Foe({map:vce,keys:[t,e],value:n})}function Tce(t,e){return $oe({map:vce,keys:[t,e]})}function GHe(t,e,r,n,i){return Foe({map:xce,keys:[t,e,r,n],value:i})}function zHe(t,e,r,n){return $oe({map:xce,keys:[t,e,r,n]})}var $i,fse,WPe,Noe,qPe,YPe,gx,Jt,li,kn,Vr,XPe,At,jPe,qk,ho,yx,Moe,GN,Ioe,KPe,yf,QPe,ZPe,JPe,eBe,ax,zN,iE,Ooe,dse,Gi,tBe,rBe,nBe,iBe,aBe,sBe,Poe,oBe,ir,lBe,cBe,uBe,hBe,Boe,fBe,Foe,$oe,mp,K2,mBe,gBe,yBe,vBe,aE,xBe,sN,bBe,wBe,kBe,SBe,CBe,tg,Goe,ABe,_Be,U2,LBe,RBe,NBe,IBe,OBe,PBe,pse,zoe,$Be,GBe,vx,mse,VBe,UBe,HBe,WBe,gse,YBe,XBe,jBe,xx,oN,Voe,QBe,Yk,Bu,Xm,Uoe,Q2,Hoe,sx,ox,ZBe,hf,kk,JBe,vf,Woe,eFe,yse,tFe,rFe,VN,qoe,Xk,vse,UN,oi,Yoe,ln,nFe,Nc,iFe,Xoe,aFe,joe,na,xf,HN,sFe,Ml,df,oFe,Mc,lFe,cFe,ag,sE,xse,lx,uFe,bx,hFe,fFe,dFe,pFe,mFe,gFe,yFe,vFe,xFe,bFe,TFe,lN,wFe,kFe,oE,Koe,jm,EFe,SFe,CFe,AFe,_Fe,Ek,WN,Qoe,gp,up,DFe,ra,Qm,LFe,cx,Us,RFe,NFe,MFe,Zoe,IFe,Bk,Fk,bse,qN,rg,OFe,Joe,ele,PFe,BFe,FFe,$Fe,GFe,zFe,Vs,Fu,VFe,jk,Kk,UFe,pp,Z2,cN,pf,ux,HFe,Sk,ls,tle,kN,yp,rle,YN,WFe,EN,qFe,YFe,Tse,Zm,wse,Jm,XFe,SN,jFe,KFe,QFe,ZFe,nle,JFe,e$e,t$e,r$e,n$e,i$e,a$e,kse,s$e,o$e,ile,Ese,Sse,l$e,c$e,H2,ng,u$e,XN,Qk,uN,ale,sle,h$e,f$e,d$e,Cse,Ase,p$e,m$e,g$e,y$e,v$e,_se,x$e,b$e,T$e,w$e,Dse,Ck,k$e,E$e,Lse,S$e,C$e,A$e,_$e,D$e,L$e,Rse,R$e,Nse,N$e,M$e,I$e,Ak,O$e,_k,P$e,ole,lle,cle,ule,$u,Mse,hle,Ise,Ose,B$e,sg,CN,vp,F$e,$$e,cE,G$e,z$e,U$e,H$e,W$e,q$e,Y$e,j$e,K$e,hN,Pse,Z$e,J$e,eGe,rGe,nGe,iGe,aGe,sGe,oGe,lGe,cGe,hGe,dGe,jN,mGe,hx,yGe,xGe,bGe,TGe,wGe,EGe,SGe,CGe,_Ge,DGe,RGe,Bse,MGe,fle,uE,PGe,BGe,$Ge,zGe,UGe,WGe,qGe,YGe,XGe,KGe,ZGe,hE,tze,nze,aze,oze,dle,lze,cze,uze,fze,dze,pze,mze,ple,mle,yze,Fse,$se,vze,yle,vle,Tze,QN,Eze,Cze,Aze,Gse,Dze,Lze,Rze,Mze,Ize,Oze,Bze,$ze,zze,Uze,Wze,qze,Yze,on,Xze,$k,zr,gn,$t,AN,jze,Kze,Qze,Um,ff,_N,Zze,Jze,eVe,tVe,rVe,xle,nVe,iVe,ZN,aVe,mi,Un,sVe,oVe,lVe,bf,Tf,mf,jo,ig,fx,wle,uVe,fE,Il,kle,Ele,zse,hVe,eg,Sf,Xo,Nl,hp,W2,Dk,dN,fVe,dVe,Sle,Cle,Vse,dx,Use,Hse,pVe,J2,Tx,Ale,mVe,gVe,yVe,vVe,xVe,bVe,TVe,wVe,kVe,Wse,EVe,SVe,CVe,_le,Dle,AVe,Lle,qse,_Ve,wf,Rle,Yse,DVe,LVe,Rk,Nle,Mle,jr,RVe,Ile,Zk,NVe,MVe,Gk,ya,ug,IVe,OVe,PVe,BVe,gf,Pa,jse,Kse,Qse,va,Mn,FVe,GVe,Nn,zk,UVe,HVe,Nk,Ple,DN,Vk,WVe,qVe,LN,Uk,Fa,tx,YVe,wx,tM,Ic,gE,rM,ga,yE,Oa,Ba,XVe,jVe,xp,px,mx,Jk,KVe,QVe,qm,ioe,ZVe,JVe,mN,eUe,tUe,rUe,nUe,iUe,aUe,Gle,sUe,oUe,lUe,aoe,cUe,uUe,eE,hUe,fUe,dUe,pUe,mUe,gUe,soe,yUe,vUe,xUe,bUe,TUe,ooe,loe,iM,Tp,tE,RN,NN,Rc,Yo,coe,uoe,dp,Hk,Pu,lp,fp,Lc,Ym,Mk,Wle,qle,MN,IN,hoe,foe,wUe,kUe,$a,kx,sM,Oc,jle,Kle,SUe,Qle,doe,poe,xE,bE,Zle,Jle,fg,Gu,Ex,moe,CUe,ece,dg,gN,tce,AUe,goe,Ik,Wk,ON,rce,_Ue,DUe,LUe,RUe,NUe,MUe,IUe,OUe,PUe,BUe,FUe,$Ue,GUe,Km,zUe,ex,Vi,VUe,rx,rE,UUe,HUe,WUe,qUe,YUe,XUe,jUe,KUe,yoe,QUe,voe,ZUe,nce,xa,xoe,JUe,ice,boe,Pc,iHe,aHe,sHe,oHe,lHe,yN,zu,ace,oM,wp,pg,sce,cs,cHe,X2,koe,ix,j2,xHe,bHe,wHe,bN,Eoe,Soe,TN,kHe,EHe,hce,Cf,Aoe,_oe,PN,BN,pce,cp,Sx,gce,PHe,kr,BHe,FHe,$He,vce,xce,FN,wce,bp,VHe,Ko,uM=N(()=>{"use strict";o(zi,"_typeof");o(kf,"_classCallCheck");o(hse,"_defineProperties");o(Ef,"_createClass");o(Loe,"_defineProperty$1");o(Di,"_slicedToArray");o(Roe,"_toConsumableArray");o($Pe,"_arrayWithoutHoles");o(GPe,"_arrayWithHoles");o(zPe,"_iterableToArray");o(VPe,"_iterableToArrayLimit");o($N,"_unsupportedIterableToArray");o(wN,"_arrayLikeToArray");o(UPe,"_nonIterableSpread");o(HPe,"_nonIterableRest");o(uo,"_createForOfIteratorHelper");$i=typeof window>"u"?null:window,fse=$i?$i.navigator:null;$i&&$i.document;WPe=zi(""),Noe=zi({}),qPe=zi(function(){}),YPe=typeof HTMLElement>"u"?"undefined":zi(HTMLElement),gx=o(function(e){return e&&e.instanceString&&li(e.instanceString)?e.instanceString():null},"instanceStr"),Jt=o(function(e){return e!=null&&zi(e)==WPe},"string"),li=o(function(e){return e!=null&&zi(e)===qPe},"fn"),kn=o(function(e){return!ho(e)&&(Array.isArray?Array.isArray(e):e!=null&&e instanceof Array)},"array"),Vr=o(function(e){return e!=null&&zi(e)===Noe&&!kn(e)&&e.constructor===Object},"plainObject"),XPe=o(function(e){return e!=null&&zi(e)===Noe},"object"),At=o(function(e){return e!=null&&zi(e)===zi(1)&&!isNaN(e)},"number"),jPe=o(function(e){return At(e)&&Math.floor(e)===e},"integer"),qk=o(function(e){if(YPe!=="undefined")return e!=null&&e instanceof HTMLElement},"htmlElement"),ho=o(function(e){return yx(e)||Moe(e)},"elementOrCollection"),yx=o(function(e){return gx(e)==="collection"&&e._private.single},"element"),Moe=o(function(e){return gx(e)==="collection"&&!e._private.single},"collection"),GN=o(function(e){return gx(e)==="core"},"core"),Ioe=o(function(e){return gx(e)==="stylesheet"},"stylesheet"),KPe=o(function(e){return gx(e)==="event"},"event"),yf=o(function(e){return e==null?!0:!!(e===""||e.match(/^\s+$/))},"emptyString"),QPe=o(function(e){return typeof HTMLElement>"u"?!1:e instanceof HTMLElement},"domElement"),ZPe=o(function(e){return Vr(e)&&At(e.x1)&&At(e.x2)&&At(e.y1)&&At(e.y2)},"boundingBox"),JPe=o(function(e){return XPe(e)&&li(e.then)},"promise"),eBe=o(function(){return fse&&fse.userAgent.match(/msie|trident|edge/i)},"ms"),ax=o(function(e,r){r||(r=o(function(){if(arguments.length===1)return arguments[0];if(arguments.length===0)return"undefined";for(var a=[],s=0;s<arguments.length;s++)a.push(arguments[s]);return a.join("$")},"keyFn"));var n=o(function i(){var a=this,s=arguments,l,u=r.apply(a,s),h=i.cache;return(l=h[u])||(l=h[u]=e.apply(a,s)),l},"memoizedFn");return n.cache={},n},"memoize"),zN=ax(function(t){return t.replace(/([A-Z])/g,function(e){return"-"+e.toLowerCase()})}),iE=ax(function(t){return t.replace(/(-\w)/g,function(e){return e[1].toUpperCase()})}),Ooe=ax(function(t,e){return t+e[0].toUpperCase()+e.substring(1)},function(t,e){return t+"$"+e}),dse=o(function(e){return yf(e)?e:e.charAt(0).toUpperCase()+e.substring(1)},"capitalize"),Gi="(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))",tBe="rgb[a]?\\(("+Gi+"[%]?)\\s*,\\s*("+Gi+"[%]?)\\s*,\\s*("+Gi+"[%]?)(?:\\s*,\\s*("+Gi+"))?\\)",rBe="rgb[a]?\\((?:"+Gi+"[%]?)\\s*,\\s*(?:"+Gi+"[%]?)\\s*,\\s*(?:"+Gi+"[%]?)(?:\\s*,\\s*(?:"+Gi+"))?\\)",nBe="hsl[a]?\\(("+Gi+")\\s*,\\s*("+Gi+"[%])\\s*,\\s*("+Gi+"[%])(?:\\s*,\\s*("+Gi+"))?\\)",iBe="hsl[a]?\\((?:"+Gi+")\\s*,\\s*(?:"+Gi+"[%])\\s*,\\s*(?:"+Gi+"[%])(?:\\s*,\\s*(?:"+Gi+"))?\\)",aBe="\\#[0-9a-fA-F]{3}",sBe="\\#[0-9a-fA-F]{6}",Poe=o(function(e,r){return e<r?-1:e>r?1:0},"ascending"),oBe=o(function(e,r){return-1*Poe(e,r)},"descending"),ir=Object.assign!=null?Object.assign.bind(Object):function(t){for(var e=arguments,r=1;r<e.length;r++){var n=e[r];if(n!=null)for(var i=Object.keys(n),a=0;a<i.length;a++){var s=i[a];t[s]=n[s]}}return t},lBe=o(function(e){if(!(!(e.length===4||e.length===7)||e[0]!=="#")){var r=e.length===4,n,i,a,s=16;return r?(n=parseInt(e[1]+e[1],s),i=parseInt(e[2]+e[2],s),a=parseInt(e[3]+e[3],s)):(n=parseInt(e[1]+e[2],s),i=parseInt(e[3]+e[4],s),a=parseInt(e[5]+e[6],s)),[n,i,a]}},"hex2tuple"),cBe=o(function(e){var r,n,i,a,s,l,u,h;function f(g,y,x){return x<0&&(x+=1),x>1&&(x-=1),x<1/6?g+(y-g)*6*x:x<1/2?y:x<2/3?g+(y-g)*(2/3-x)*6:g}o(f,"hue2rgb");var d=new RegExp("^"+nBe+"$").exec(e);if(d){if(n=parseInt(d[1]),n<0?n=(360- -1*n%360)%360:n>360&&(n=n%360),n/=360,i=parseFloat(d[2]),i<0||i>100||(i=i/100,a=parseFloat(d[3]),a<0||a>100)||(a=a/100,s=d[4],s!==void 0&&(s=parseFloat(s),s<0||s>1)))return;if(i===0)l=u=h=Math.round(a*255);else{var p=a<.5?a*(1+i):a+i-a*i,m=2*a-p;l=Math.round(255*f(m,p,n+1/3)),u=Math.round(255*f(m,p,n)),h=Math.round(255*f(m,p,n-1/3))}r=[l,u,h,s]}return r},"hsl2tuple"),uBe=o(function(e){var r,n=new RegExp("^"+tBe+"$").exec(e);if(n){r=[];for(var i=[],a=1;a<=3;a++){var s=n[a];if(s[s.length-1]==="%"&&(i[a]=!0),s=parseFloat(s),i[a]&&(s=s/100*255),s<0||s>255)return;r.push(Math.floor(s))}var l=i[1]||i[2]||i[3],u=i[1]&&i[2]&&i[3];if(l&&!u)return;var h=n[4];if(h!==void 0){if(h=parseFloat(h),h<0||h>1)return;r.push(h)}}return r},"rgb2tuple"),hBe=o(function(e){return fBe[e.toLowerCase()]},"colorname2tuple"),Boe=o(function(e){return(kn(e)?e:null)||hBe(e)||lBe(e)||uBe(e)||cBe(e)},"color2tuple"),fBe={transparent:[0,0,0,0],aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},Foe=o(function(e){for(var r=e.map,n=e.keys,i=n.length,a=0;a<i;a++){var s=n[a];if(Vr(s))throw Error("Tried to set map with object key");a<n.length-1?(r[s]==null&&(r[s]={}),r=r[s]):r[s]=e.value}},"setMap"),$oe=o(function(e){for(var r=e.map,n=e.keys,i=n.length,a=0;a<i;a++){var s=n[a];if(Vr(s))throw Error("Tried to get map with object key");if(r=r[s],r==null)return r}return r},"getMap");o(dBe,"isObject");mp=dBe,K2=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};o(pBe,"createCommonjsModule");mBe=typeof K2=="object"&&K2&&K2.Object===Object&&K2,gBe=mBe,yBe=typeof self=="object"&&self&&self.Object===Object&&self,vBe=gBe||yBe||Function("return this")(),aE=vBe,xBe=o(function(){return aE.Date.now()},"now"),sN=xBe,bBe=/\s/;o(TBe,"trimmedEndIndex");wBe=TBe,kBe=/^\s+/;o(EBe,"baseTrim");SBe=EBe,CBe=aE.Symbol,tg=CBe,Goe=Object.prototype,ABe=Goe.hasOwnProperty,_Be=Goe.toString,U2=tg?tg.toStringTag:void 0;o(DBe,"getRawTag");LBe=DBe,RBe=Object.prototype,NBe=RBe.toString;o(MBe,"objectToString");IBe=MBe,OBe="[object Null]",PBe="[object Undefined]",pse=tg?tg.toStringTag:void 0;o(BBe,"baseGetTag");zoe=BBe;o(FBe,"isObjectLike");$Be=FBe,GBe="[object Symbol]";o(zBe,"isSymbol");vx=zBe,mse=NaN,VBe=/^[-+]0x[0-9a-f]+$/i,UBe=/^0b[01]+$/i,HBe=/^0o[0-7]+$/i,WBe=parseInt;o(qBe,"toNumber");gse=qBe,YBe="Expected a function",XBe=Math.max,jBe=Math.min;o(KBe,"debounce");xx=KBe,oN=$i?$i.performance:null,Voe=oN&&oN.now?function(){return oN.now()}:function(){return Date.now()},QBe=function(){if($i){if($i.requestAnimationFrame)return function(t){$i.requestAnimationFrame(t)};if($i.mozRequestAnimationFrame)return function(t){$i.mozRequestAnimationFrame(t)};if($i.webkitRequestAnimationFrame)return function(t){$i.webkitRequestAnimationFrame(t)};if($i.msRequestAnimationFrame)return function(t){$i.msRequestAnimationFrame(t)}}return function(t){t&&setTimeout(function(){t(Voe())},1e3/60)}}(),Yk=o(function(e){return QBe(e)},"requestAnimationFrame"),Bu=Voe,Xm=9261,Uoe=65599,Q2=5381,Hoe=o(function(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Xm,n=r,i;i=e.next(),!i.done;)n=n*Uoe+i.value|0;return n},"hashIterableInts"),sx=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Xm;return r*Uoe+e|0},"hashInt"),ox=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Q2;return(r<<5)+r+e|0},"hashIntAlt"),ZBe=o(function(e,r){return e*2097152+r},"combineHashes"),hf=o(function(e){return e[0]*2097152+e[1]},"combineHashesArray"),kk=o(function(e,r){return[sx(e[0],r[0]),ox(e[1],r[1])]},"hashArrays"),JBe=o(function(e,r){var n={value:0,done:!1},i=0,a=e.length,s={next:o(function(){return i<a?n.value=e[i++]:n.done=!0,n},"next")};return Hoe(s,r)},"hashIntsArray"),vf=o(function(e,r){var n={value:0,done:!1},i=0,a=e.length,s={next:o(function(){return i<a?n.value=e.charCodeAt(i++):n.done=!0,n},"next")};return Hoe(s,r)},"hashString"),Woe=o(function(){return eFe(arguments)},"hashStrings"),eFe=o(function(e){for(var r,n=0;n<e.length;n++){var i=e[n];n===0?r=vf(i):r=vf(i,r)}return r},"hashStringsArray"),yse=!0,tFe=console.warn!=null,rFe=console.trace!=null,VN=Number.MAX_SAFE_INTEGER||9007199254740991,qoe=o(function(){return!0},"trueify"),Xk=o(function(){return!1},"falsify"),vse=o(function(){return 0},"zeroify"),UN=o(function(){},"noop"),oi=o(function(e){throw new Error(e)},"error"),Yoe=o(function(e){if(e!==void 0)yse=!!e;else return yse},"warnings"),ln=o(function(e){Yoe()&&(tFe?console.warn(e):(console.log(e),rFe&&console.trace()))},"warn"),nFe=o(function(e){return ir({},e)},"clone"),Nc=o(function(e){return e==null?e:kn(e)?e.slice():Vr(e)?nFe(e):e},"copy"),iFe=o(function(e){return e.slice()},"copyArray"),Xoe=o(function(e,r){for(r=e="";e++<36;r+=e*51&52?(e^15?8^Math.random()*(e^20?16:4):4).toString(16):"-");return r},"uuid"),aFe={},joe=o(function(){return aFe},"staticEmptyObject"),na=o(function(e){var r=Object.keys(e);return function(n){for(var i={},a=0;a<r.length;a++){var s=r[a],l=n?.[s];i[s]=l===void 0?e[s]:l}return i}},"defaults"),xf=o(function(e,r,n){for(var i=e.length-1;i>=0&&!(e[i]===r&&(e.splice(i,1),n));i--);},"removeFromArray"),HN=o(function(e){e.splice(0,e.length)},"clearArray"),sFe=o(function(e,r){for(var n=0;n<r.length;n++){var i=r[n];e.push(i)}},"push"),Ml=o(function(e,r,n){return n&&(r=Ooe(n,r)),e[r]},"getPrefixedProperty"),df=o(function(e,r,n,i){n&&(r=Ooe(n,r)),e[r]=i},"setPrefixedProperty"),oFe=function(){function t(){kf(this,t),this._obj={}}return o(t,"ObjectMap"),Ef(t,[{key:"set",value:o(function(r,n){return this._obj[r]=n,this},"set")},{key:"delete",value:o(function(r){return this._obj[r]=void 0,this},"_delete")},{key:"clear",value:o(function(){this._obj={}},"clear")},{key:"has",value:o(function(r){return this._obj[r]!==void 0},"has")},{key:"get",value:o(function(r){return this._obj[r]},"get")}]),t}(),Mc=typeof Map<"u"?Map:oFe,lFe="undefined",cFe=function(){function t(e){if(kf(this,t),this._obj=Object.create(null),this.size=0,e!=null){var r;e.instanceString!=null&&e.instanceString()===this.instanceString()?r=e.toArray():r=e;for(var n=0;n<r.length;n++)this.add(r[n])}}return o(t,"ObjectSet"),Ef(t,[{key:"instanceString",value:o(function(){return"set"},"instanceString")},{key:"add",value:o(function(r){var n=this._obj;n[r]!==1&&(n[r]=1,this.size++)},"add")},{key:"delete",value:o(function(r){var n=this._obj;n[r]===1&&(n[r]=0,this.size--)},"_delete")},{key:"clear",value:o(function(){this._obj=Object.create(null)},"clear")},{key:"has",value:o(function(r){return this._obj[r]===1},"has")},{key:"toArray",value:o(function(){var r=this;return Object.keys(this._obj).filter(function(n){return r.has(n)})},"toArray")},{key:"forEach",value:o(function(r,n){return this.toArray().forEach(r,n)},"forEach")}]),t}(),ag=(typeof Set>"u"?"undefined":zi(Set))!==lFe?Set:cFe,sE=o(function(e,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(e===void 0||r===void 0||!GN(e)){oi("An element must have a core reference and parameters set");return}var i=r.group;if(i==null&&(r.data&&r.data.source!=null&&r.data.target!=null?i="edges":i="nodes"),i!=="nodes"&&i!=="edges"){oi("An element must be of type `nodes` or `edges`; you specified `"+i+"`");return}this.length=1,this[0]=this;var a=this._private={cy:e,single:!0,data:r.data||{},position:r.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:i,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:!!r.selected,selectable:r.selectable===void 0?!0:!!r.selectable,locked:!!r.locked,grabbed:!1,grabbable:r.grabbable===void 0?!0:!!r.grabbable,pannable:r.pannable===void 0?i==="edges":!!r.pannable,active:!1,classes:new ag,animation:{current:[],queue:[]},rscratch:{},scratch:r.scratch||{},edges:[],children:[],parent:r.parent&&r.parent.isNode()?r.parent:null,traversalCache:{},backgrounding:!1,bbCache:null,bbCacheShift:{x:0,y:0},bodyBounds:null,overlayBounds:null,labelBounds:{all:null,source:null,target:null,main:null},arrowBounds:{source:null,target:null,"mid-source":null,"mid-target":null}};if(a.position.x==null&&(a.position.x=0),a.position.y==null&&(a.position.y=0),r.renderedPosition){var s=r.renderedPosition,l=e.pan(),u=e.zoom();a.position={x:(s.x-l.x)/u,y:(s.y-l.y)/u}}var h=[];kn(r.classes)?h=r.classes:Jt(r.classes)&&(h=r.classes.split(/\s+/));for(var f=0,d=h.length;f<d;f++){var p=h[f];!p||p===""||a.classes.add(p)}this.createEmitter();var m=r.style||r.css;m&&(ln("Setting a `style` bypass at element creation should be done only when absolutely necessary. Try to use the stylesheet instead."),this.style(m)),(n===void 0||n)&&this.restore()},"Element"),xse=o(function(e){return e={bfs:e.bfs||!e.dfs,dfs:e.dfs||!e.bfs},o(function(n,i,a){var s;Vr(n)&&!ho(n)&&(s=n,n=s.roots||s.root,i=s.visit,a=s.directed),a=arguments.length===2&&!li(i)?i:a,i=li(i)?i:function(){};for(var l=this._private.cy,u=n=Jt(n)?this.filter(n):n,h=[],f=[],d={},p={},m={},g=0,y,x=this.byGroup(),v=x.nodes,b=x.edges,T=0;T<u.length;T++){var S=u[T],w=S.id();S.isNode()&&(h.unshift(S),e.bfs&&(m[w]=!0,f.push(S)),p[w]=0)}for(var E=o(function(){var L=e.bfs?h.shift():h.pop(),C=L.id();if(e.dfs){if(m[C])return"continue";m[C]=!0,f.push(L)}var I=p[C],M=d[C],P=M!=null?M.source():null,B=M!=null?M.target():null,F=M==null?void 0:L.same(P)?B[0]:P[0],G=void 0;if(G=i(L,M,F,g++,I),G===!0)return y=L,"break";if(G===!1)return"break";for(var $=L.connectedEdges().filter(function(le){return(!a||le.source().same(L))&&b.has(le)}),U=0;U<$.length;U++){var K=$[U],ne=K.connectedNodes().filter(function(le){return!le.same(L)&&v.has(le)}),j=ne.id();ne.length!==0&&!m[j]&&(ne=ne[0],h.push(ne),e.bfs&&(m[j]=!0,f.push(ne)),d[j]=K,p[j]=p[C]+1)}},"_loop");h.length!==0;){var _=E();if(_!=="continue"&&_==="break")break}for(var A=l.collection(),D=0;D<f.length;D++){var O=f[D],R=d[O.id()];R!=null&&A.push(R),A.push(O)}return{path:l.collection(A),found:l.collection(y)}},"searchFn")},"defineSearch"),lx={breadthFirstSearch:xse({bfs:!0}),depthFirstSearch:xse({dfs:!0})};lx.bfs=lx.breadthFirstSearch;lx.dfs=lx.depthFirstSearch;uFe=pBe(function(t,e){(function(){var r,n,i,a,s,l,u,h,f,d,p,m,g,y,x;i=Math.floor,d=Math.min,n=o(function(v,b){return v<b?-1:v>b?1:0},"defaultCmp"),f=o(function(v,b,T,S,w){var E;if(T==null&&(T=0),w==null&&(w=n),T<0)throw new Error("lo must be non-negative");for(S==null&&(S=v.length);T<S;)E=i((T+S)/2),w(b,v[E])<0?S=E:T=E+1;return[].splice.apply(v,[T,T-T].concat(b)),b},"insort"),l=o(function(v,b,T){return T==null&&(T=n),v.push(b),y(v,0,v.length-1,T)},"heappush"),s=o(function(v,b){var T,S;return b==null&&(b=n),T=v.pop(),v.length?(S=v[0],v[0]=T,x(v,0,b)):S=T,S},"heappop"),h=o(function(v,b,T){var S;return T==null&&(T=n),S=v[0],v[0]=b,x(v,0,T),S},"heapreplace"),u=o(function(v,b,T){var S;return T==null&&(T=n),v.length&&T(v[0],b)<0&&(S=[v[0],b],b=S[0],v[0]=S[1],x(v,0,T)),b},"heappushpop"),a=o(function(v,b){var T,S,w,E,_,A;for(b==null&&(b=n),E=function(){A=[];for(var D=0,O=i(v.length/2);0<=O?D<O:D>O;0<=O?D++:D--)A.push(D);return A}.apply(this).reverse(),_=[],S=0,w=E.length;S<w;S++)T=E[S],_.push(x(v,T,b));return _},"heapify"),g=o(function(v,b,T){var S;if(T==null&&(T=n),S=v.indexOf(b),S!==-1)return y(v,0,S,T),x(v,S,T)},"updateItem"),p=o(function(v,b,T){var S,w,E,_,A;if(T==null&&(T=n),w=v.slice(0,b),!w.length)return w;for(a(w,T),A=v.slice(b),E=0,_=A.length;E<_;E++)S=A[E],u(w,S,T);return w.sort(T).reverse()},"nlargest"),m=o(function(v,b,T){var S,w,E,_,A,D,O,R,k;if(T==null&&(T=n),b*10<=v.length){if(E=v.slice(0,b).sort(T),!E.length)return E;for(w=E[E.length-1],O=v.slice(b),_=0,D=O.length;_<D;_++)S=O[_],T(S,w)<0&&(f(E,S,0,null,T),E.pop(),w=E[E.length-1]);return E}for(a(v,T),k=[],A=0,R=d(b,v.length);0<=R?A<R:A>R;0<=R?++A:--A)k.push(s(v,T));return k},"nsmallest"),y=o(function(v,b,T,S){var w,E,_;for(S==null&&(S=n),w=v[T];T>b;){if(_=T-1>>1,E=v[_],S(w,E)<0){v[T]=E,T=_;continue}break}return v[T]=w},"_siftdown"),x=o(function(v,b,T){var S,w,E,_,A;for(T==null&&(T=n),w=v.length,A=b,E=v[b],S=2*b+1;S<w;)_=S+1,_<w&&!(T(v[S],v[_])<0)&&(S=_),v[b]=v[S],b=S,S=2*b+1;return v[b]=E,y(v,A,b,T)},"_siftup"),r=function(){v.push=l,v.pop=s,v.replace=h,v.pushpop=u,v.heapify=a,v.updateItem=g,v.nlargest=p,v.nsmallest=m;function v(b){this.cmp=b??n,this.nodes=[]}return o(v,"Heap"),v.prototype.push=function(b){return l(this.nodes,b,this.cmp)},v.prototype.pop=function(){return s(this.nodes,this.cmp)},v.prototype.peek=function(){return this.nodes[0]},v.prototype.contains=function(b){return this.nodes.indexOf(b)!==-1},v.prototype.replace=function(b){return h(this.nodes,b,this.cmp)},v.prototype.pushpop=function(b){return u(this.nodes,b,this.cmp)},v.prototype.heapify=function(){return a(this.nodes,this.cmp)},v.prototype.updateItem=function(b){return g(this.nodes,b,this.cmp)},v.prototype.clear=function(){return this.nodes=[]},v.prototype.empty=function(){return this.nodes.length===0},v.prototype.size=function(){return this.nodes.length},v.prototype.clone=function(){var b;return b=new v,b.nodes=this.nodes.slice(0),b},v.prototype.toArray=function(){return this.nodes.slice(0)},v.prototype.insert=v.prototype.push,v.prototype.top=v.prototype.peek,v.prototype.front=v.prototype.peek,v.prototype.has=v.prototype.contains,v.prototype.copy=v.prototype.clone,v}(),function(v,b){return t.exports=b()}(this,function(){return r})}).call(K2)}),bx=uFe,hFe=na({root:null,weight:o(function(e){return 1},"weight"),directed:!1}),fFe={dijkstra:o(function(e){if(!Vr(e)){var r=arguments;e={root:r[0],weight:r[1],directed:r[2]}}var n=hFe(e),i=n.root,a=n.weight,s=n.directed,l=this,u=a,h=Jt(i)?this.filter(i)[0]:i[0],f={},d={},p={},m=this.byGroup(),g=m.nodes,y=m.edges;y.unmergeBy(function(I){return I.isLoop()});for(var x=o(function(M){return f[M.id()]},"getDist"),v=o(function(M,P){f[M.id()]=P,b.updateItem(M)},"setDist"),b=new bx(function(I,M){return x(I)-x(M)}),T=0;T<g.length;T++){var S=g[T];f[S.id()]=S.same(h)?0:1/0,b.push(S)}for(var w=o(function(M,P){for(var B=(s?M.edgesTo(P):M.edgesWith(P)).intersect(y),F=1/0,G,$=0;$<B.length;$++){var U=B[$],K=u(U);(K<F||!G)&&(F=K,G=U)}return{edge:G,dist:F}},"distBetween");b.size()>0;){var E=b.pop(),_=x(E),A=E.id();if(p[A]=_,_!==1/0)for(var D=E.neighborhood().intersect(g),O=0;O<D.length;O++){var R=D[O],k=R.id(),L=w(E,R),C=_+L.dist;C<x(R)&&(v(R,C),d[k]={node:E,edge:L.edge})}}return{distanceTo:o(function(M){var P=Jt(M)?g.filter(M)[0]:M[0];return p[P.id()]},"distanceTo"),pathTo:o(function(M){var P=Jt(M)?g.filter(M)[0]:M[0],B=[],F=P,G=F.id();if(P.length>0)for(B.unshift(P);d[G];){var $=d[G];B.unshift($.edge),B.unshift($.node),F=$.node,G=F.id()}return l.spawn(B)},"pathTo")}},"dijkstra")},dFe={kruskal:o(function(e){e=e||function(T){return 1};for(var r=this.byGroup(),n=r.nodes,i=r.edges,a=n.length,s=new Array(a),l=n,u=o(function(S){for(var w=0;w<s.length;w++){var E=s[w];if(E.has(S))return w}},"findSetIndex"),h=0;h<a;h++)s[h]=this.spawn(n[h]);for(var f=i.sort(function(T,S){return e(T)-e(S)}),d=0;d<f.length;d++){var p=f[d],m=p.source()[0],g=p.target()[0],y=u(m),x=u(g),v=s[y],b=s[x];y!==x&&(l.merge(p),v.merge(b),s.splice(x,1))}return l},"kruskal")},pFe=na({root:null,goal:null,weight:o(function(e){return 1},"weight"),heuristic:o(function(e){return 0},"heuristic"),directed:!1}),mFe={aStar:o(function(e){var r=this.cy(),n=pFe(e),i=n.root,a=n.goal,s=n.heuristic,l=n.directed,u=n.weight;i=r.collection(i)[0],a=r.collection(a)[0];var h=i.id(),f=a.id(),d={},p={},m={},g=new bx(function(G,$){return p[G.id()]-p[$.id()]}),y=new ag,x={},v={},b=o(function($,U){g.push($),y.add(U)},"addToOpenSet"),T,S,w=o(function(){T=g.pop(),S=T.id(),y.delete(S)},"popFromOpenSet"),E=o(function($){return y.has($)},"isInOpenSet");b(i,h),d[h]=0,p[h]=s(i);for(var _=0;g.size()>0;){if(w(),_++,S===f){for(var A=[],D=a,O=f,R=v[O];A.unshift(D),R!=null&&A.unshift(R),D=x[O],D!=null;)O=D.id(),R=v[O];return{found:!0,distance:d[S],path:this.spawn(A),steps:_}}m[S]=!0;for(var k=T._private.edges,L=0;L<k.length;L++){var C=k[L];if(this.hasElementWithId(C.id())&&!(l&&C.data("source")!==S)){var I=C.source(),M=C.target(),P=I.id()!==S?I:M,B=P.id();if(this.hasElementWithId(B)&&!m[B]){var F=d[S]+u(C);if(!E(B)){d[B]=F,p[B]=F+s(P),b(P,B),x[B]=T,v[B]=C;continue}F<d[B]&&(d[B]=F,p[B]=F+s(P),x[B]=T,v[B]=C)}}}}return{found:!1,distance:void 0,path:void 0,steps:_}},"aStar")},gFe=na({weight:o(function(e){return 1},"weight"),directed:!1}),yFe={floydWarshall:o(function(e){for(var r=this.cy(),n=gFe(e),i=n.weight,a=n.directed,s=i,l=this.byGroup(),u=l.nodes,h=l.edges,f=u.length,d=f*f,p=o(function(K){return u.indexOf(K)},"indexOf"),m=o(function(K){return u[K]},"atIndex"),g=new Array(d),y=0;y<d;y++){var x=y%f,v=(y-x)/f;v===x?g[y]=0:g[y]=1/0}for(var b=new Array(d),T=new Array(d),S=0;S<h.length;S++){var w=h[S],E=w.source()[0],_=w.target()[0];if(E!==_){var A=p(E),D=p(_),O=A*f+D,R=s(w);if(g[O]>R&&(g[O]=R,b[O]=D,T[O]=w),!a){var k=D*f+A;!a&&g[k]>R&&(g[k]=R,b[k]=A,T[k]=w)}}}for(var L=0;L<f;L++)for(var C=0;C<f;C++)for(var I=C*f+L,M=0;M<f;M++){var P=C*f+M,B=L*f+M;g[I]+g[B]<g[P]&&(g[P]=g[I]+g[B],b[P]=b[I])}var F=o(function(K){return(Jt(K)?r.filter(K):K)[0]},"getArgEle"),G=o(function(K){return p(F(K))},"indexOfArgEle"),$={distance:o(function(K,ne){var j=G(K),le=G(ne);return g[j*f+le]},"distance"),path:o(function(K,ne){var j=G(K),le=G(ne),Z=m(j);if(j===le)return Z.collection();if(b[j*f+le]==null)return r.collection();var ce=r.collection(),Q=j,ee;for(ce.merge(Z);j!==le;)Q=j,j=b[j*f+le],ee=T[Q*f+j],ce.merge(ee),ce.merge(m(j));return ce},"path")};return $},"floydWarshall")},vFe=na({weight:o(function(e){return 1},"weight"),directed:!1,root:null}),xFe={bellmanFord:o(function(e){var r=this,n=vFe(e),i=n.weight,a=n.directed,s=n.root,l=i,u=this,h=this.cy(),f=this.byGroup(),d=f.edges,p=f.nodes,m=p.length,g=new Mc,y=!1,x=[];s=h.collection(s)[0],d.unmergeBy(function(Se){return Se.isLoop()});for(var v=d.length,b=o(function(W){var Oe=g.get(W.id());return Oe||(Oe={},g.set(W.id(),Oe)),Oe},"getInfo"),T=o(function(W){return(Jt(W)?h.$(W):W)[0]},"getNodeFromTo"),S=o(function(W){return b(T(W)).dist},"distanceTo"),w=o(function(W){for(var Oe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:s,ve=T(W),Pe=[],qe=ve;;){if(qe==null)return r.spawn();var Ge=b(qe),Ne=Ge.edge,Me=Ge.pred;if(Pe.unshift(qe[0]),qe.same(Oe)&&Pe.length>0)break;Ne!=null&&Pe.unshift(Ne),qe=Me}return u.spawn(Pe)},"pathTo"),E=0;E<m;E++){var _=p[E],A=b(_);_.same(s)?A.dist=0:A.dist=1/0,A.pred=null,A.edge=null}for(var D=!1,O=o(function(W,Oe,ve,Pe,qe,Ge){var Ne=Pe.dist+Ge;Ne<qe.dist&&!ve.same(Pe.edge)&&(qe.dist=Ne,qe.pred=W,qe.edge=ve,D=!0)},"checkForEdgeReplacement"),R=1;R<m;R++){D=!1;for(var k=0;k<v;k++){var L=d[k],C=L.source(),I=L.target(),M=l(L),P=b(C),B=b(I);O(C,I,L,P,B,M),a||O(I,C,L,B,P,M)}if(!D)break}if(D)for(var F=[],G=0;G<v;G++){var $=d[G],U=$.source(),K=$.target(),ne=l($),j=b(U).dist,le=b(K).dist;if(j+ne<le||!a&&le+ne<j)if(y||(ln("Graph contains a negative weight cycle for Bellman-Ford"),y=!0),e.findNegativeWeightCycles!==!1){var Z=[];j+ne<le&&Z.push(U),!a&&le+ne<j&&Z.push(K);for(var ce=Z.length,Q=0;Q<ce;Q++){var ee=Z[Q],te=[ee];te.push(b(ee).edge);for(var re=b(ee).pred;te.indexOf(re)===-1;)te.push(re),te.push(b(re).edge),re=b(re).pred;te=te.slice(te.indexOf(re));for(var he=te[0].id(),J=0,ye=2;ye<te.length;ye+=2)te[ye].id()<he&&(he=te[ye].id(),J=ye);te=te.slice(J).concat(te.slice(0,J)),te.push(te[0]);var se=te.map(function(Se){return Se.id()}).join(",");F.indexOf(se)===-1&&(x.push(u.spawn(te)),F.push(se))}}else break}return{distanceTo:S,pathTo:w,hasNegativeWeightCycle:y,negativeWeightCycles:x}},"bellmanFord")},bFe=Math.sqrt(2),TFe=o(function(e,r,n){n.length===0&&oi("Karger-Stein must be run on a connected (sub)graph");for(var i=n[e],a=i[1],s=i[2],l=r[a],u=r[s],h=n,f=h.length-1;f>=0;f--){var d=h[f],p=d[1],m=d[2];(r[p]===l&&r[m]===u||r[p]===u&&r[m]===l)&&h.splice(f,1)}for(var g=0;g<h.length;g++){var y=h[g];y[1]===u?(h[g]=y.slice(),h[g][1]=l):y[2]===u&&(h[g]=y.slice(),h[g][2]=l)}for(var x=0;x<r.length;x++)r[x]===u&&(r[x]=l);return h},"collapse"),lN=o(function(e,r,n,i){for(;n>i;){var a=Math.floor(Math.random()*r.length);r=TFe(a,e,r),n--}return r},"contractUntil"),wFe={kargerStein:o(function(){var e=this,r=this.byGroup(),n=r.nodes,i=r.edges;i.unmergeBy(function(B){return B.isLoop()});var a=n.length,s=i.length,l=Math.ceil(Math.pow(Math.log(a)/Math.LN2,2)),u=Math.floor(a/bFe);if(a<2){oi("At least 2 nodes are required for Karger-Stein algorithm");return}for(var h=[],f=0;f<s;f++){var d=i[f];h.push([f,n.indexOf(d.source()),n.indexOf(d.target())])}for(var p=1/0,m=[],g=new Array(a),y=new Array(a),x=new Array(a),v=o(function(F,G){for(var $=0;$<a;$++)G[$]=F[$]},"copyNodesMap"),b=0;b<=l;b++){for(var T=0;T<a;T++)y[T]=T;var S=lN(y,h.slice(),a,u),w=S.slice();v(y,x);var E=lN(y,S,u,2),_=lN(x,w,u,2);E.length<=_.length&&E.length<p?(p=E.length,m=E,v(y,g)):_.length<=E.length&&_.length<p&&(p=_.length,m=_,v(x,g))}for(var A=this.spawn(m.map(function(B){return i[B[0]]})),D=this.spawn(),O=this.spawn(),R=g[0],k=0;k<g.length;k++){var L=g[k],C=n[k];L===R?D.merge(C):O.merge(C)}var I=o(function(F){var G=e.spawn();return F.forEach(function($){G.merge($),$.connectedEdges().forEach(function(U){e.contains(U)&&!A.contains(U)&&G.merge(U)})}),G},"constructComponent"),M=[I(D),I(O)],P={cut:A,components:M,partition1:D,partition2:O};return P},"kargerStein")},kFe=o(function(e){return{x:e.x,y:e.y}},"copyPosition"),oE=o(function(e,r,n){return{x:e.x*r+n.x,y:e.y*r+n.y}},"modelToRenderedPosition"),Koe=o(function(e,r,n){return{x:(e.x-n.x)/r,y:(e.y-n.y)/r}},"renderedToModelPosition"),jm=o(function(e){return{x:e[0],y:e[1]}},"array2point"),EFe=o(function(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=1/0,a=r;a<n;a++){var s=e[a];isFinite(s)&&(i=Math.min(s,i))}return i},"min"),SFe=o(function(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=-1/0,a=r;a<n;a++){var s=e[a];isFinite(s)&&(i=Math.max(s,i))}return i},"max"),CFe=o(function(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=0,a=0,s=r;s<n;s++){var l=e[s];isFinite(l)&&(i+=l,a++)}return i/a},"mean"),AFe=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;i?e=e.slice(r,n):(n<e.length&&e.splice(n,e.length-n),r>0&&e.splice(0,r));for(var l=0,u=e.length-1;u>=0;u--){var h=e[u];s?isFinite(h)||(e[u]=-1/0,l++):e.splice(u,1)}a&&e.sort(function(p,m){return p-m});var f=e.length,d=Math.floor(f/2);return f%2!==0?e[d+1+l]:(e[d-1+l]+e[d+l])/2},"median"),_Fe=o(function(e){return Math.PI*e/180},"deg2rad"),Ek=o(function(e,r){return Math.atan2(r,e)-Math.PI/2},"getAngleFromDisp"),WN=Math.log2||function(t){return Math.log(t)/Math.log(2)},Qoe=o(function(e){return e>0?1:e<0?-1:0},"signum"),gp=o(function(e,r){return Math.sqrt(up(e,r))},"dist"),up=o(function(e,r){var n=r.x-e.x,i=r.y-e.y;return n*n+i*i},"sqdist"),DFe=o(function(e){for(var r=e.length,n=0,i=0;i<r;i++)n+=e[i];for(var a=0;a<r;a++)e[a]=e[a]/n;return e},"inPlaceSumNormalize"),ra=o(function(e,r,n,i){return(1-i)*(1-i)*e+2*(1-i)*i*r+i*i*n},"qbezierAt"),Qm=o(function(e,r,n,i){return{x:ra(e.x,r.x,n.x,i),y:ra(e.y,r.y,n.y,i)}},"qbezierPtAt"),LFe=o(function(e,r,n,i){var a={x:r.x-e.x,y:r.y-e.y},s=gp(e,r),l={x:a.x/s,y:a.y/s};return n=n??0,i=i??n*s,{x:e.x+l.x*i,y:e.y+l.y*i}},"lineAt"),cx=o(function(e,r,n){return Math.max(e,Math.min(n,r))},"bound"),Us=o(function(e){if(e==null)return{x1:1/0,y1:1/0,x2:-1/0,y2:-1/0,w:0,h:0};if(e.x1!=null&&e.y1!=null){if(e.x2!=null&&e.y2!=null&&e.x2>=e.x1&&e.y2>=e.y1)return{x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2,w:e.x2-e.x1,h:e.y2-e.y1};if(e.w!=null&&e.h!=null&&e.w>=0&&e.h>=0)return{x1:e.x1,y1:e.y1,x2:e.x1+e.w,y2:e.y1+e.h,w:e.w,h:e.h}}},"makeBoundingBox"),RFe=o(function(e){return{x1:e.x1,x2:e.x2,w:e.w,y1:e.y1,y2:e.y2,h:e.h}},"copyBoundingBox"),NFe=o(function(e){e.x1=1/0,e.y1=1/0,e.x2=-1/0,e.y2=-1/0,e.w=0,e.h=0},"clearBoundingBox"),MFe=o(function(e,r,n){return{x1:e.x1+r,x2:e.x2+r,y1:e.y1+n,y2:e.y2+n,w:e.w,h:e.h}},"shiftBoundingBox"),Zoe=o(function(e,r){e.x1=Math.min(e.x1,r.x1),e.x2=Math.max(e.x2,r.x2),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,r.y1),e.y2=Math.max(e.y2,r.y2),e.h=e.y2-e.y1},"updateBoundingBox"),IFe=o(function(e,r,n){e.x1=Math.min(e.x1,r),e.x2=Math.max(e.x2,r),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,n),e.y2=Math.max(e.y2,n),e.h=e.y2-e.y1},"expandBoundingBoxByPoint"),Bk=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return e.x1-=r,e.x2+=r,e.y1-=r,e.y2+=r,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},"expandBoundingBox"),Fk=o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0],n,i,a,s;if(r.length===1)n=i=a=s=r[0];else if(r.length===2)n=a=r[0],s=i=r[1];else if(r.length===4){var l=Di(r,4);n=l[0],i=l[1],a=l[2],s=l[3]}return e.x1-=s,e.x2+=i,e.y1-=n,e.y2+=a,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},"expandBoundingBoxSides"),bse=o(function(e,r){e.x1=r.x1,e.y1=r.y1,e.x2=r.x2,e.y2=r.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1},"assignBoundingBox"),qN=o(function(e,r){return!(e.x1>r.x2||r.x1>e.x2||e.x2<r.x1||r.x2<e.x1||e.y2<r.y1||r.y2<e.y1||e.y1>r.y2||r.y1>e.y2)},"boundingBoxesIntersect"),rg=o(function(e,r,n){return e.x1<=r&&r<=e.x2&&e.y1<=n&&n<=e.y2},"inBoundingBox"),OFe=o(function(e,r){return rg(e,r.x,r.y)},"pointInBoundingBox"),Joe=o(function(e,r){return rg(e,r.x1,r.y1)&&rg(e,r.x2,r.y2)},"boundingBoxInBoundingBox"),ele=o(function(e,r,n,i,a,s,l){var u=arguments.length>7&&arguments[7]!==void 0?arguments[7]:"auto",h=u==="auto"?yp(a,s):u,f=a/2,d=s/2;h=Math.min(h,f,d);var p=h!==f,m=h!==d,g;if(p){var y=n-f+h-l,x=i-d-l,v=n+f-h+l,b=x;if(g=pf(e,r,n,i,y,x,v,b,!1),g.length>0)return g}if(m){var T=n+f+l,S=i-d+h-l,w=T,E=i+d-h+l;if(g=pf(e,r,n,i,T,S,w,E,!1),g.length>0)return g}if(p){var _=n-f+h-l,A=i+d+l,D=n+f-h+l,O=A;if(g=pf(e,r,n,i,_,A,D,O,!1),g.length>0)return g}if(m){var R=n-f-l,k=i-d+h-l,L=R,C=i+d-h+l;if(g=pf(e,r,n,i,R,k,L,C,!1),g.length>0)return g}var I;{var M=n-f+h,P=i-d+h;if(I=Z2(e,r,n,i,M,P,h+l),I.length>0&&I[0]<=M&&I[1]<=P)return[I[0],I[1]]}{var B=n+f-h,F=i-d+h;if(I=Z2(e,r,n,i,B,F,h+l),I.length>0&&I[0]>=B&&I[1]<=F)return[I[0],I[1]]}{var G=n+f-h,$=i+d-h;if(I=Z2(e,r,n,i,G,$,h+l),I.length>0&&I[0]>=G&&I[1]>=$)return[I[0],I[1]]}{var U=n-f+h,K=i+d-h;if(I=Z2(e,r,n,i,U,K,h+l),I.length>0&&I[0]<=U&&I[1]>=K)return[I[0],I[1]]}return[]},"roundRectangleIntersectLine"),PFe=o(function(e,r,n,i,a,s,l){var u=l,h=Math.min(n,a),f=Math.max(n,a),d=Math.min(i,s),p=Math.max(i,s);return h-u<=e&&e<=f+u&&d-u<=r&&r<=p+u},"inLineVicinity"),BFe=o(function(e,r,n,i,a,s,l,u,h){var f={x1:Math.min(n,l,a)-h,x2:Math.max(n,l,a)+h,y1:Math.min(i,u,s)-h,y2:Math.max(i,u,s)+h};return!(e<f.x1||e>f.x2||r<f.y1||r>f.y2)},"inBezierVicinity"),FFe=o(function(e,r,n,i){n-=i;var a=r*r-4*e*n;if(a<0)return[];var s=Math.sqrt(a),l=2*e,u=(-r+s)/l,h=(-r-s)/l;return[u,h]},"solveQuadratic"),$Fe=o(function(e,r,n,i,a){var s=1e-5;e===0&&(e=s),r/=e,n/=e,i/=e;var l,u,h,f,d,p,m,g;if(u=(3*n-r*r)/9,h=-(27*i)+r*(9*n-2*(r*r)),h/=54,l=u*u*u+h*h,a[1]=0,m=r/3,l>0){d=h+Math.sqrt(l),d=d<0?-Math.pow(-d,1/3):Math.pow(d,1/3),p=h-Math.sqrt(l),p=p<0?-Math.pow(-p,1/3):Math.pow(p,1/3),a[0]=-m+d+p,m+=(d+p)/2,a[4]=a[2]=-m,m=Math.sqrt(3)*(-p+d)/2,a[3]=m,a[5]=-m;return}if(a[5]=a[3]=0,l===0){g=h<0?-Math.pow(-h,1/3):Math.pow(h,1/3),a[0]=-m+2*g,a[4]=a[2]=-(g+m);return}u=-u,f=u*u*u,f=Math.acos(h/Math.sqrt(f)),g=2*Math.sqrt(u),a[0]=-m+g*Math.cos(f/3),a[2]=-m+g*Math.cos((f+2*Math.PI)/3),a[4]=-m+g*Math.cos((f+4*Math.PI)/3)},"solveCubic"),GFe=o(function(e,r,n,i,a,s,l,u){var h=1*n*n-4*n*a+2*n*l+4*a*a-4*a*l+l*l+i*i-4*i*s+2*i*u+4*s*s-4*s*u+u*u,f=1*9*n*a-3*n*n-3*n*l-6*a*a+3*a*l+9*i*s-3*i*i-3*i*u-6*s*s+3*s*u,d=1*3*n*n-6*n*a+n*l-n*e+2*a*a+2*a*e-l*e+3*i*i-6*i*s+i*u-i*r+2*s*s+2*s*r-u*r,p=1*n*a-n*n+n*e-a*e+i*s-i*i+i*r-s*r,m=[];$Fe(h,f,d,p,m);for(var g=1e-7,y=[],x=0;x<6;x+=2)Math.abs(m[x+1])<g&&m[x]>=0&&m[x]<=1&&y.push(m[x]);y.push(1),y.push(0);for(var v=-1,b,T,S,w=0;w<y.length;w++)b=Math.pow(1-y[w],2)*n+2*(1-y[w])*y[w]*a+y[w]*y[w]*l,T=Math.pow(1-y[w],2)*i+2*(1-y[w])*y[w]*s+y[w]*y[w]*u,S=Math.pow(b-e,2)+Math.pow(T-r,2),v>=0?S<v&&(v=S):v=S;return v},"sqdistToQuadraticBezier"),zFe=o(function(e,r,n,i,a,s){var l=[e-n,r-i],u=[a-n,s-i],h=u[0]*u[0]+u[1]*u[1],f=l[0]*l[0]+l[1]*l[1],d=l[0]*u[0]+l[1]*u[1],p=d*d/h;return d<0?f:p>h?(e-a)*(e-a)+(r-s)*(r-s):f-p},"sqdistToFiniteLine"),Vs=o(function(e,r,n){for(var i,a,s,l,u,h=0,f=0;f<n.length/2;f++)if(i=n[f*2],a=n[f*2+1],f+1<n.length/2?(s=n[(f+1)*2],l=n[(f+1)*2+1]):(s=n[(f+1-n.length/2)*2],l=n[(f+1-n.length/2)*2+1]),!(i==e&&s==e))if(i>=e&&e>=s||i<=e&&e<=s)u=(e-i)/(s-i)*(l-a)+a,u>r&&h++;else continue;return h%2!==0},"pointInsidePolygonPoints"),Fu=o(function(e,r,n,i,a,s,l,u,h){var f=new Array(n.length),d;u[0]!=null?(d=Math.atan(u[1]/u[0]),u[0]<0?d=d+Math.PI/2:d=-d-Math.PI/2):d=u;for(var p=Math.cos(-d),m=Math.sin(-d),g=0;g<f.length/2;g++)f[g*2]=s/2*(n[g*2]*p-n[g*2+1]*m),f[g*2+1]=l/2*(n[g*2+1]*p+n[g*2]*m),f[g*2]+=i,f[g*2+1]+=a;var y;if(h>0){var x=Kk(f,-h);y=jk(x)}else y=f;return Vs(e,r,y)},"pointInsidePolygon"),VFe=o(function(e,r,n,i,a,s,l,u){for(var h=new Array(n.length*2),f=0;f<u.length;f++){var d=u[f];h[f*4+0]=d.startX,h[f*4+1]=d.startY,h[f*4+2]=d.stopX,h[f*4+3]=d.stopY;var p=Math.pow(d.cx-e,2)+Math.pow(d.cy-r,2);if(p<=Math.pow(d.radius,2))return!0}return Vs(e,r,h)},"pointInsideRoundPolygon"),jk=o(function(e){for(var r=new Array(e.length/2),n,i,a,s,l,u,h,f,d=0;d<e.length/4;d++){n=e[d*4],i=e[d*4+1],a=e[d*4+2],s=e[d*4+3],d<e.length/4-1?(l=e[(d+1)*4],u=e[(d+1)*4+1],h=e[(d+1)*4+2],f=e[(d+1)*4+3]):(l=e[0],u=e[1],h=e[2],f=e[3]);var p=pf(n,i,a,s,l,u,h,f,!0);r[d*2]=p[0],r[d*2+1]=p[1]}return r},"joinLines"),Kk=o(function(e,r){for(var n=new Array(e.length*2),i,a,s,l,u=0;u<e.length/2;u++){i=e[u*2],a=e[u*2+1],u<e.length/2-1?(s=e[(u+1)*2],l=e[(u+1)*2+1]):(s=e[0],l=e[1]);var h=l-a,f=-(s-i),d=Math.sqrt(h*h+f*f),p=h/d,m=f/d;n[u*4]=i+p*r,n[u*4+1]=a+m*r,n[u*4+2]=s+p*r,n[u*4+3]=l+m*r}return n},"expandPolygon"),UFe=o(function(e,r,n,i,a,s){var l=n-e,u=i-r;l/=a,u/=s;var h=Math.sqrt(l*l+u*u),f=h-1;if(f<0)return[];var d=f/h;return[(n-e)*d+e,(i-r)*d+r]},"intersectLineEllipse"),pp=o(function(e,r,n,i,a,s,l){return e-=a,r-=s,e/=n/2+l,r/=i/2+l,e*e+r*r<=1},"checkInEllipse"),Z2=o(function(e,r,n,i,a,s,l){var u=[n-e,i-r],h=[e-a,r-s],f=u[0]*u[0]+u[1]*u[1],d=2*(h[0]*u[0]+h[1]*u[1]),p=h[0]*h[0]+h[1]*h[1]-l*l,m=d*d-4*f*p;if(m<0)return[];var g=(-d+Math.sqrt(m))/(2*f),y=(-d-Math.sqrt(m))/(2*f),x=Math.min(g,y),v=Math.max(g,y),b=[];if(x>=0&&x<=1&&b.push(x),v>=0&&v<=1&&b.push(v),b.length===0)return[];var T=b[0]*u[0]+e,S=b[0]*u[1]+r;if(b.length>1){if(b[0]==b[1])return[T,S];var w=b[1]*u[0]+e,E=b[1]*u[1]+r;return[T,S,w,E]}else return[T,S]},"intersectLineCircle"),cN=o(function(e,r,n){return r<=e&&e<=n||n<=e&&e<=r?e:e<=r&&r<=n||n<=r&&r<=e?r:n},"midOfThree"),pf=o(function(e,r,n,i,a,s,l,u,h){var f=e-a,d=n-e,p=l-a,m=r-s,g=i-r,y=u-s,x=p*m-y*f,v=d*m-g*f,b=y*d-p*g;if(b!==0){var T=x/b,S=v/b,w=.001,E=0-w,_=1+w;return E<=T&&T<=_&&E<=S&&S<=_?[e+T*d,r+T*g]:h?[e+T*d,r+T*g]:[]}else return x===0||v===0?cN(e,n,l)===l?[l,u]:cN(e,n,a)===a?[a,s]:cN(a,l,n)===n?[n,i]:[]:[]},"finiteLinesIntersect"),ux=o(function(e,r,n,i,a,s,l,u){var h=[],f,d=new Array(n.length),p=!0;s==null&&(p=!1);var m;if(p){for(var g=0;g<d.length/2;g++)d[g*2]=n[g*2]*s+i,d[g*2+1]=n[g*2+1]*l+a;if(u>0){var y=Kk(d,-u);m=jk(y)}else m=d}else m=n;for(var x,v,b,T,S=0;S<m.length/2;S++)x=m[S*2],v=m[S*2+1],S<m.length/2-1?(b=m[(S+1)*2],T=m[(S+1)*2+1]):(b=m[0],T=m[1]),f=pf(e,r,i,a,x,v,b,T),f.length!==0&&h.push(f[0],f[1]);return h},"polygonIntersectLine"),HFe=o(function(e,r,n,i,a,s,l,u,h){var f=[],d,p=new Array(n.length*2);h.forEach(function(b,T){T===0?(p[p.length-2]=b.startX,p[p.length-1]=b.startY):(p[T*4-2]=b.startX,p[T*4-1]=b.startY),p[T*4]=b.stopX,p[T*4+1]=b.stopY,d=Z2(e,r,i,a,b.cx,b.cy,b.radius),d.length!==0&&f.push(d[0],d[1])});for(var m=0;m<p.length/4;m++)d=pf(e,r,i,a,p[m*4],p[m*4+1],p[m*4+2],p[m*4+3],!1),d.length!==0&&f.push(d[0],d[1]);if(f.length>2){for(var g=[f[0],f[1]],y=Math.pow(g[0]-e,2)+Math.pow(g[1]-r,2),x=1;x<f.length/2;x++){var v=Math.pow(f[x*2]-e,2)+Math.pow(f[x*2+1]-r,2);v<=y&&(g[0]=f[x*2],g[1]=f[x*2+1],y=v)}return g}return f},"roundPolygonIntersectLine"),Sk=o(function(e,r,n){var i=[e[0]-r[0],e[1]-r[1]],a=Math.sqrt(i[0]*i[0]+i[1]*i[1]),s=(a-n)/a;return s<0&&(s=1e-5),[r[0]+s*i[0],r[1]+s*i[1]]},"shortenIntersection"),ls=o(function(e,r){var n=kN(e,r);return n=tle(n),n},"generateUnitNgonPointsFitToSquare"),tle=o(function(e){for(var r,n,i=e.length/2,a=1/0,s=1/0,l=-1/0,u=-1/0,h=0;h<i;h++)r=e[2*h],n=e[2*h+1],a=Math.min(a,r),l=Math.max(l,r),s=Math.min(s,n),u=Math.max(u,n);for(var f=2/(l-a),d=2/(u-s),p=0;p<i;p++)r=e[2*p]=e[2*p]*f,n=e[2*p+1]=e[2*p+1]*d,a=Math.min(a,r),l=Math.max(l,r),s=Math.min(s,n),u=Math.max(u,n);if(s<-1)for(var m=0;m<i;m++)n=e[2*m+1]=e[2*m+1]+(-1-s);return e},"fitPolygonToSquare"),kN=o(function(e,r){var n=1/e*2*Math.PI,i=e%2===0?Math.PI/2+n/2:Math.PI/2;i+=r;for(var a=new Array(e*2),s,l=0;l<e;l++)s=l*n+i,a[2*l]=Math.cos(s),a[2*l+1]=Math.sin(-s);return a},"generateUnitNgonPoints"),yp=o(function(e,r){return Math.min(e/4,r/4,8)},"getRoundRectangleRadius"),rle=o(function(e,r){return Math.min(e/10,r/10,8)},"getRoundPolygonRadius"),YN=o(function(){return 8},"getCutRectangleCornerLength"),WFe=o(function(e,r,n){return[e-2*r+n,2*(r-e),e]},"bezierPtsToQuadCoeff"),EN=o(function(e,r){return{heightOffset:Math.min(15,.05*r),widthOffset:Math.min(100,.25*e),ctrlPtOffsetPct:.05}},"getBarrelCurveConstants"),qFe=na({dampingFactor:.8,precision:1e-6,iterations:200,weight:o(function(e){return 1},"weight")}),YFe={pageRank:o(function(e){for(var r=qFe(e),n=r.dampingFactor,i=r.precision,a=r.iterations,s=r.weight,l=this._private.cy,u=this.byGroup(),h=u.nodes,f=u.edges,d=h.length,p=d*d,m=f.length,g=new Array(p),y=new Array(d),x=(1-n)/d,v=0;v<d;v++){for(var b=0;b<d;b++){var T=v*d+b;g[T]=0}y[v]=0}for(var S=0;S<m;S++){var w=f[S],E=w.data("source"),_=w.data("target");if(E!==_){var A=h.indexOfId(E),D=h.indexOfId(_),O=s(w),R=D*d+A;g[R]+=O,y[A]+=O}}for(var k=1/d+x,L=0;L<d;L++)if(y[L]===0)for(var C=0;C<d;C++){var I=C*d+L;g[I]=k}else for(var M=0;M<d;M++){var P=M*d+L;g[P]=g[P]/y[L]+x}for(var B=new Array(d),F=new Array(d),G,$=0;$<d;$++)B[$]=1;for(var U=0;U<a;U++){for(var K=0;K<d;K++)F[K]=0;for(var ne=0;ne<d;ne++)for(var j=0;j<d;j++){var le=ne*d+j;F[ne]+=g[le]*B[j]}DFe(F),G=B,B=F,F=G;for(var Z=0,ce=0;ce<d;ce++){var Q=G[ce]-B[ce];Z+=Q*Q}if(Z<i)break}var ee={rank:o(function(re){return re=l.collection(re)[0],B[h.indexOf(re)]},"rank")};return ee},"pageRank")},Tse=na({root:null,weight:o(function(e){return 1},"weight"),directed:!1,alpha:0}),Zm={degreeCentralityNormalized:o(function(e){e=Tse(e);var r=this.cy(),n=this.nodes(),i=n.length;if(e.directed){for(var f={},d={},p=0,m=0,g=0;g<i;g++){var y=n[g],x=y.id();e.root=y;var v=this.degreeCentrality(e);p<v.indegree&&(p=v.indegree),m<v.outdegree&&(m=v.outdegree),f[x]=v.indegree,d[x]=v.outdegree}return{indegree:o(function(T){return p==0?0:(Jt(T)&&(T=r.filter(T)),f[T.id()]/p)},"indegree"),outdegree:o(function(T){return m===0?0:(Jt(T)&&(T=r.filter(T)),d[T.id()]/m)},"outdegree")}}else{for(var a={},s=0,l=0;l<i;l++){var u=n[l];e.root=u;var h=this.degreeCentrality(e);s<h.degree&&(s=h.degree),a[u.id()]=h.degree}return{degree:o(function(T){return s===0?0:(Jt(T)&&(T=r.filter(T)),a[T.id()]/s)},"degree")}}},"degreeCentralityNormalized"),degreeCentrality:o(function(e){e=Tse(e);var r=this.cy(),n=this,i=e,a=i.root,s=i.weight,l=i.directed,u=i.alpha;if(a=r.collection(a)[0],l){for(var m=a.connectedEdges(),g=m.filter(function(E){return E.target().same(a)&&n.has(E)}),y=m.filter(function(E){return E.source().same(a)&&n.has(E)}),x=g.length,v=y.length,b=0,T=0,S=0;S<g.length;S++)b+=s(g[S]);for(var w=0;w<y.length;w++)T+=s(y[w]);return{indegree:Math.pow(x,1-u)*Math.pow(b,u),outdegree:Math.pow(v,1-u)*Math.pow(T,u)}}else{for(var h=a.connectedEdges().intersection(n),f=h.length,d=0,p=0;p<h.length;p++)d+=s(h[p]);return{degree:Math.pow(f,1-u)*Math.pow(d,u)}}},"degreeCentrality")};Zm.dc=Zm.degreeCentrality;Zm.dcn=Zm.degreeCentralityNormalised=Zm.degreeCentralityNormalized;wse=na({harmonic:!0,weight:o(function(){return 1},"weight"),directed:!1,root:null}),Jm={closenessCentralityNormalized:o(function(e){for(var r=wse(e),n=r.harmonic,i=r.weight,a=r.directed,s=this.cy(),l={},u=0,h=this.nodes(),f=this.floydWarshall({weight:i,directed:a}),d=0;d<h.length;d++){for(var p=0,m=h[d],g=0;g<h.length;g++)if(d!==g){var y=f.distance(m,h[g]);n?p+=1/y:p+=y}n||(p=1/p),u<p&&(u=p),l[m.id()]=p}return{closeness:o(function(v){return u==0?0:(Jt(v)?v=s.filter(v)[0].id():v=v.id(),l[v]/u)},"closeness")}},"closenessCentralityNormalized"),closenessCentrality:o(function(e){var r=wse(e),n=r.root,i=r.weight,a=r.directed,s=r.harmonic;n=this.filter(n)[0];for(var l=this.dijkstra({root:n,weight:i,directed:a}),u=0,h=this.nodes(),f=0;f<h.length;f++){var d=h[f];if(!d.same(n)){var p=l.distanceTo(d);s?u+=1/p:u+=p}}return s?u:1/u},"closenessCentrality")};Jm.cc=Jm.closenessCentrality;Jm.ccn=Jm.closenessCentralityNormalised=Jm.closenessCentralityNormalized;XFe=na({weight:null,directed:!1}),SN={betweennessCentrality:o(function(e){for(var r=XFe(e),n=r.directed,i=r.weight,a=i!=null,s=this.cy(),l=this.nodes(),u={},h={},f=0,d={set:o(function(T,S){h[T]=S,S>f&&(f=S)},"set"),get:o(function(T){return h[T]},"get")},p=0;p<l.length;p++){var m=l[p],g=m.id();n?u[g]=m.outgoers().nodes():u[g]=m.openNeighborhood().nodes(),d.set(g,0)}for(var y=o(function(T){for(var S=l[T].id(),w=[],E={},_={},A={},D=new bx(function(j,le){return A[j]-A[le]}),O=0;O<l.length;O++){var R=l[O].id();E[R]=[],_[R]=0,A[R]=1/0}for(_[S]=1,A[S]=0,D.push(S);!D.empty();){var k=D.pop();if(w.push(k),a)for(var L=0;L<u[k].length;L++){var C=u[k][L],I=s.getElementById(k),M=void 0;I.edgesTo(C).length>0?M=I.edgesTo(C)[0]:M=C.edgesTo(I)[0];var P=i(M);C=C.id(),A[C]>A[k]+P&&(A[C]=A[k]+P,D.nodes.indexOf(C)<0?D.push(C):D.updateItem(C),_[C]=0,E[C]=[]),A[C]==A[k]+P&&(_[C]=_[C]+_[k],E[C].push(k))}else for(var B=0;B<u[k].length;B++){var F=u[k][B].id();A[F]==1/0&&(D.push(F),A[F]=A[k]+1),A[F]==A[k]+1&&(_[F]=_[F]+_[k],E[F].push(k))}}for(var G={},$=0;$<l.length;$++)G[l[$].id()]=0;for(;w.length>0;){for(var U=w.pop(),K=0;K<E[U].length;K++){var ne=E[U][K];G[ne]=G[ne]+_[ne]/_[U]*(1+G[U])}U!=l[T].id()&&d.set(U,d.get(U)+G[U])}},"_loop"),x=0;x<l.length;x++)y(x);var v={betweenness:o(function(T){var S=s.collection(T).id();return d.get(S)},"betweenness"),betweennessNormalized:o(function(T){if(f==0)return 0;var S=s.collection(T).id();return d.get(S)/f},"betweennessNormalized")};return v.betweennessNormalised=v.betweennessNormalized,v},"betweennessCentrality")};SN.bc=SN.betweennessCentrality;jFe=na({expandFactor:2,inflateFactor:2,multFactor:1,maxIterations:20,attributes:[function(t){return 1}]}),KFe=o(function(e){return jFe(e)},"setOptions"),QFe=o(function(e,r){for(var n=0,i=0;i<r.length;i++)n+=r[i](e);return n},"getSimilarity"),ZFe=o(function(e,r,n){for(var i=0;i<r;i++)e[i*r+i]=n},"addLoops"),nle=o(function(e,r){for(var n,i=0;i<r;i++){n=0;for(var a=0;a<r;a++)n+=e[a*r+i];for(var s=0;s<r;s++)e[s*r+i]=e[s*r+i]/n}},"normalize"),JFe=o(function(e,r,n){for(var i=new Array(n*n),a=0;a<n;a++){for(var s=0;s<n;s++)i[a*n+s]=0;for(var l=0;l<n;l++)for(var u=0;u<n;u++)i[a*n+u]+=e[a*n+l]*r[l*n+u]}return i},"mmult"),e$e=o(function(e,r,n){for(var i=e.slice(0),a=1;a<n;a++)e=JFe(e,i,r);return e},"expand"),t$e=o(function(e,r,n){for(var i=new Array(r*r),a=0;a<r*r;a++)i[a]=Math.pow(e[a],n);return nle(i,r),i},"inflate"),r$e=o(function(e,r,n,i){for(var a=0;a<n;a++){var s=Math.round(e[a]*Math.pow(10,i))/Math.pow(10,i),l=Math.round(r[a]*Math.pow(10,i))/Math.pow(10,i);if(s!==l)return!1}return!0},"hasConverged"),n$e=o(function(e,r,n,i){for(var a=[],s=0;s<r;s++){for(var l=[],u=0;u<r;u++)Math.round(e[s*r+u]*1e3)/1e3>0&&l.push(n[u]);l.length!==0&&a.push(i.collection(l))}return a},"assign"),i$e=o(function(e,r){for(var n=0;n<e.length;n++)if(!r[n]||e[n].id()!==r[n].id())return!1;return!0},"isDuplicate"),a$e=o(function(e){for(var r=0;r<e.length;r++)for(var n=0;n<e.length;n++)r!=n&&i$e(e[r],e[n])&&e.splice(n,1);return e},"removeDuplicates"),kse=o(function(e){for(var r=this.nodes(),n=this.edges(),i=this.cy(),a=KFe(e),s={},l=0;l<r.length;l++)s[r[l].id()]=l;for(var u=r.length,h=u*u,f=new Array(h),d,p=0;p<h;p++)f[p]=0;for(var m=0;m<n.length;m++){var g=n[m],y=s[g.source().id()],x=s[g.target().id()],v=QFe(g,a.attributes);f[y*u+x]+=v,f[x*u+y]+=v}ZFe(f,u,a.multFactor),nle(f,u);for(var b=!0,T=0;b&&T<a.maxIterations;)b=!1,d=e$e(f,u,a.expandFactor),f=t$e(d,u,a.inflateFactor),r$e(f,d,h,4)||(b=!0),T++;var S=n$e(f,u,r,i);return S=a$e(S),S},"markovClustering"),s$e={markovClustering:kse,mcl:kse},o$e=o(function(e){return e},"identity"),ile=o(function(e,r){return Math.abs(r-e)},"absDiff"),Ese=o(function(e,r,n){return e+ile(r,n)},"addAbsDiff"),Sse=o(function(e,r,n){return e+Math.pow(n-r,2)},"addSquaredDiff"),l$e=o(function(e){return Math.sqrt(e)},"sqrt"),c$e=o(function(e,r,n){return Math.max(e,ile(r,n))},"maxAbsDiff"),H2=o(function(e,r,n,i,a){for(var s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:o$e,l=i,u,h,f=0;f<e;f++)u=r(f),h=n(f),l=a(l,u,h);return s(l)},"getDistance"),ng={euclidean:o(function(e,r,n){return e>=2?H2(e,r,n,0,Sse,l$e):H2(e,r,n,0,Ese)},"euclidean"),squaredEuclidean:o(function(e,r,n){return H2(e,r,n,0,Sse)},"squaredEuclidean"),manhattan:o(function(e,r,n){return H2(e,r,n,0,Ese)},"manhattan"),max:o(function(e,r,n){return H2(e,r,n,-1/0,c$e)},"max")};ng["squared-euclidean"]=ng.squaredEuclidean;ng.squaredeuclidean=ng.squaredEuclidean;o(lE,"clusteringDistance");u$e=na({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),XN=o(function(e){return u$e(e)},"setOptions"),Qk=o(function(e,r,n,i,a){var s=a!=="kMedoids",l=s?function(d){return n[d]}:function(d){return i[d](n)},u=o(function(p){return i[p](r)},"getQ"),h=n,f=r;return lE(e,i.length,l,u,h,f)},"getDist"),uN=o(function(e,r,n){for(var i=n.length,a=new Array(i),s=new Array(i),l=new Array(r),u=null,h=0;h<i;h++)a[h]=e.min(n[h]).value,s[h]=e.max(n[h]).value;for(var f=0;f<r;f++){u=[];for(var d=0;d<i;d++)u[d]=Math.random()*(s[d]-a[d])+a[d];l[f]=u}return l},"randomCentroids"),ale=o(function(e,r,n,i,a){for(var s=1/0,l=0,u=0;u<r.length;u++){var h=Qk(n,e,r[u],i,a);h<s&&(s=h,l=u)}return l},"classify"),sle=o(function(e,r,n){for(var i=[],a=null,s=0;s<r.length;s++)a=r[s],n[a.id()]===e&&i.push(a);return i},"buildCluster"),h$e=o(function(e,r,n){return Math.abs(r-e)<=n},"haveValuesConverged"),f$e=o(function(e,r,n){for(var i=0;i<e.length;i++)for(var a=0;a<e[i].length;a++){var s=Math.abs(e[i][a]-r[i][a]);if(s>n)return!1}return!0},"haveMatricesConverged"),d$e=o(function(e,r,n){for(var i=0;i<n;i++)if(e===r[i])return!0;return!1},"seenBefore"),Cse=o(function(e,r){var n=new Array(r);if(e.length<50)for(var i=0;i<r;i++){for(var a=e[Math.floor(Math.random()*e.length)];d$e(a,n,i);)a=e[Math.floor(Math.random()*e.length)];n[i]=a}else for(var s=0;s<r;s++)n[s]=e[Math.floor(Math.random()*e.length)];return n},"randomMedoids"),Ase=o(function(e,r,n){for(var i=0,a=0;a<r.length;a++)i+=Qk("manhattan",r[a],e,n,"kMedoids");return i},"findCost"),p$e=o(function(e){var r=this.cy(),n=this.nodes(),i=null,a=XN(e),s=new Array(a.k),l={},u;a.testMode?typeof a.testCentroids=="number"?(a.testCentroids,u=uN(n,a.k,a.attributes)):zi(a.testCentroids)==="object"?u=a.testCentroids:u=uN(n,a.k,a.attributes):u=uN(n,a.k,a.attributes);for(var h=!0,f=0;h&&f<a.maxIterations;){for(var d=0;d<n.length;d++)i=n[d],l[i.id()]=ale(i,u,a.distance,a.attributes,"kMeans");h=!1;for(var p=0;p<a.k;p++){var m=sle(p,n,l);if(m.length!==0){for(var g=a.attributes.length,y=u[p],x=new Array(g),v=new Array(g),b=0;b<g;b++){v[b]=0;for(var T=0;T<m.length;T++)i=m[T],v[b]+=a.attributes[b](i);x[b]=v[b]/m.length,h$e(x[b],y[b],a.sensitivityThreshold)||(h=!0)}u[p]=x,s[p]=r.collection(m)}}f++}return s},"kMeans"),m$e=o(function(e){var r=this.cy(),n=this.nodes(),i=null,a=XN(e),s=new Array(a.k),l,u={},h,f=new Array(a.k);a.testMode?typeof a.testCentroids=="number"||(zi(a.testCentroids)==="object"?l=a.testCentroids:l=Cse(n,a.k)):l=Cse(n,a.k);for(var d=!0,p=0;d&&p<a.maxIterations;){for(var m=0;m<n.length;m++)i=n[m],u[i.id()]=ale(i,l,a.distance,a.attributes,"kMedoids");d=!1;for(var g=0;g<l.length;g++){var y=sle(g,n,u);if(y.length!==0){f[g]=Ase(l[g],y,a.attributes);for(var x=0;x<y.length;x++)h=Ase(y[x],y,a.attributes),h<f[g]&&(f[g]=h,l[g]=y[x],d=!0);s[g]=r.collection(y)}}p++}return s},"kMedoids"),g$e=o(function(e,r,n,i,a){for(var s,l,u=0;u<r.length;u++)for(var h=0;h<e.length;h++)i[u][h]=Math.pow(n[u][h],a.m);for(var f=0;f<e.length;f++)for(var d=0;d<a.attributes.length;d++){s=0,l=0;for(var p=0;p<r.length;p++)s+=i[p][f]*a.attributes[d](r[p]),l+=i[p][f];e[f][d]=s/l}},"updateCentroids"),y$e=o(function(e,r,n,i,a){for(var s=0;s<e.length;s++)r[s]=e[s].slice();for(var l,u,h,f=2/(a.m-1),d=0;d<n.length;d++)for(var p=0;p<i.length;p++){l=0;for(var m=0;m<n.length;m++)u=Qk(a.distance,i[p],n[d],a.attributes,"cmeans"),h=Qk(a.distance,i[p],n[m],a.attributes,"cmeans"),l+=Math.pow(u/h,f);e[p][d]=1/l}},"updateMembership"),v$e=o(function(e,r,n,i){for(var a=new Array(n.k),s=0;s<a.length;s++)a[s]=[];for(var l,u,h=0;h<r.length;h++){l=-1/0,u=-1;for(var f=0;f<r[0].length;f++)r[h][f]>l&&(l=r[h][f],u=f);a[u].push(e[h])}for(var d=0;d<a.length;d++)a[d]=i.collection(a[d]);return a},"assign"),_se=o(function(e){var r=this.cy(),n=this.nodes(),i=XN(e),a,s,l,u,h;u=new Array(n.length);for(var f=0;f<n.length;f++)u[f]=new Array(i.k);l=new Array(n.length);for(var d=0;d<n.length;d++)l[d]=new Array(i.k);for(var p=0;p<n.length;p++){for(var m=0,g=0;g<i.k;g++)l[p][g]=Math.random(),m+=l[p][g];for(var y=0;y<i.k;y++)l[p][y]=l[p][y]/m}s=new Array(i.k);for(var x=0;x<i.k;x++)s[x]=new Array(i.attributes.length);h=new Array(n.length);for(var v=0;v<n.length;v++)h[v]=new Array(i.k);for(var b=!0,T=0;b&&T<i.maxIterations;)b=!1,g$e(s,n,l,h,i),y$e(l,u,s,n,i),f$e(l,u,i.sensitivityThreshold)||(b=!0),T++;return a=v$e(n,l,i,r),{clusters:a,degreeOfMembership:l}},"fuzzyCMeans"),x$e={kMeans:p$e,kMedoids:m$e,fuzzyCMeans:_se,fcm:_se},b$e=na({distance:"euclidean",linkage:"min",mode:"threshold",threshold:1/0,addDendrogram:!1,dendrogramDepth:0,attributes:[]}),T$e={single:"min",complete:"max"},w$e=o(function(e){var r=b$e(e),n=T$e[r.linkage];return n!=null&&(r.linkage=n),r},"setOptions"),Dse=o(function(e,r,n,i,a){for(var s=0,l=1/0,u,h=a.attributes,f=o(function(D,O){return lE(a.distance,h.length,function(R){return h[R](D)},function(R){return h[R](O)},D,O)},"getDist"),d=0;d<e.length;d++){var p=e[d].key,m=n[p][i[p]];m<l&&(s=p,l=m)}if(a.mode==="threshold"&&l>=a.threshold||a.mode==="dendrogram"&&e.length===1)return!1;var g=r[s],y=r[i[s]],x;a.mode==="dendrogram"?x={left:g,right:y,key:g.key}:x={value:g.value.concat(y.value),key:g.key},e[g.index]=x,e.splice(y.index,1),r[g.key]=x;for(var v=0;v<e.length;v++){var b=e[v];g.key===b.key?u=1/0:a.linkage==="min"?(u=n[g.key][b.key],n[g.key][b.key]>n[y.key][b.key]&&(u=n[y.key][b.key])):a.linkage==="max"?(u=n[g.key][b.key],n[g.key][b.key]<n[y.key][b.key]&&(u=n[y.key][b.key])):a.linkage==="mean"?u=(n[g.key][b.key]*g.size+n[y.key][b.key]*y.size)/(g.size+y.size):a.mode==="dendrogram"?u=f(b.value,g.value):u=f(b.value[0],g.value[0]),n[g.key][b.key]=n[b.key][g.key]=u}for(var T=0;T<e.length;T++){var S=e[T].key;if(i[S]===g.key||i[S]===y.key){for(var w=S,E=0;E<e.length;E++){var _=e[E].key;n[S][_]<n[S][w]&&(w=_)}i[S]=w}e[T].index=T}return g.key=y.key=g.index=y.index=null,!0},"mergeClosest"),Ck=o(function t(e,r,n){e&&(e.value?r.push(e.value):(e.left&&t(e.left,r),e.right&&t(e.right,r)))},"getAllChildren"),k$e=o(function t(e,r){if(!e)return"";if(e.left&&e.right){var n=t(e.left,r),i=t(e.right,r),a=r.add({group:"nodes",data:{id:n+","+i}});return r.add({group:"edges",data:{source:n,target:a.id()}}),r.add({group:"edges",data:{source:i,target:a.id()}}),a.id()}else if(e.value)return e.value.id()},"buildDendrogram"),E$e=o(function t(e,r,n){if(!e)return[];var i=[],a=[],s=[];return r===0?(e.left&&Ck(e.left,i),e.right&&Ck(e.right,a),s=i.concat(a),[n.collection(s)]):r===1?e.value?[n.collection(e.value)]:(e.left&&Ck(e.left,i),e.right&&Ck(e.right,a),[n.collection(i),n.collection(a)]):e.value?[n.collection(e.value)]:(e.left&&(i=t(e.left,r-1,n)),e.right&&(a=t(e.right,r-1,n)),i.concat(a))},"buildClustersFromTree"),Lse=o(function(e){for(var r=this.cy(),n=this.nodes(),i=w$e(e),a=i.attributes,s=o(function(T,S){return lE(i.distance,a.length,function(w){return a[w](T)},function(w){return a[w](S)},T,S)},"getDist"),l=[],u=[],h=[],f=[],d=0;d<n.length;d++){var p={value:i.mode==="dendrogram"?n[d]:[n[d]],key:d,index:d};l[d]=p,f[d]=p,u[d]=[],h[d]=0}for(var m=0;m<l.length;m++)for(var g=0;g<=m;g++){var y=void 0;i.mode==="dendrogram"?y=m===g?1/0:s(l[m].value,l[g].value):y=m===g?1/0:s(l[m].value[0],l[g].value[0]),u[m][g]=y,u[g][m]=y,y<u[m][h[m]]&&(h[m]=g)}for(var x=Dse(l,f,u,h,i);x;)x=Dse(l,f,u,h,i);var v;return i.mode==="dendrogram"?(v=E$e(l[0],i.dendrogramDepth,r),i.addDendrogram&&k$e(l[0],r)):(v=new Array(l.length),l.forEach(function(b,T){b.key=b.index=null,v[T]=r.collection(b.value)})),v},"hierarchicalClustering"),S$e={hierarchicalClustering:Lse,hca:Lse},C$e=na({distance:"euclidean",preference:"median",damping:.8,maxIterations:1e3,minIterations:100,attributes:[]}),A$e=o(function(e){var r=e.damping,n=e.preference;.5<=r&&r<1||oi("Damping must range on [0.5, 1). Got: ".concat(r));var i=["median","mean","min","max"];return i.some(function(a){return a===n})||At(n)||oi("Preference must be one of [".concat(i.map(function(a){return"'".concat(a,"'")}).join(", "),"] or a number. Got: ").concat(n)),C$e(e)},"setOptions"),_$e=o(function(e,r,n,i){var a=o(function(l,u){return i[u](l)},"attr");return-lE(e,i.length,function(s){return a(r,s)},function(s){return a(n,s)},r,n)},"getSimilarity"),D$e=o(function(e,r){var n=null;return r==="median"?n=AFe(e):r==="mean"?n=CFe(e):r==="min"?n=EFe(e):r==="max"?n=SFe(e):n=r,n},"getPreference"),L$e=o(function(e,r,n){for(var i=[],a=0;a<e;a++)r[a*e+a]+n[a*e+a]>0&&i.push(a);return i},"findExemplars"),Rse=o(function(e,r,n){for(var i=[],a=0;a<e;a++){for(var s=-1,l=-1/0,u=0;u<n.length;u++){var h=n[u];r[a*e+h]>l&&(s=h,l=r[a*e+h])}s>0&&i.push(s)}for(var f=0;f<n.length;f++)i[n[f]]=n[f];return i},"assignClusters"),R$e=o(function(e,r,n){for(var i=Rse(e,r,n),a=0;a<n.length;a++){for(var s=[],l=0;l<i.length;l++)i[l]===n[a]&&s.push(l);for(var u=-1,h=-1/0,f=0;f<s.length;f++){for(var d=0,p=0;p<s.length;p++)d+=r[s[p]*e+s[f]];d>h&&(u=f,h=d)}n[a]=s[u]}return i=Rse(e,r,n),i},"assign"),Nse=o(function(e){for(var r=this.cy(),n=this.nodes(),i=A$e(e),a={},s=0;s<n.length;s++)a[n[s].id()]=s;var l,u,h,f,d,p;l=n.length,u=l*l,h=new Array(u);for(var m=0;m<u;m++)h[m]=-1/0;for(var g=0;g<l;g++)for(var y=0;y<l;y++)g!==y&&(h[g*l+y]=_$e(i.distance,n[g],n[y],i.attributes));f=D$e(h,i.preference);for(var x=0;x<l;x++)h[x*l+x]=f;d=new Array(u);for(var v=0;v<u;v++)d[v]=0;p=new Array(u);for(var b=0;b<u;b++)p[b]=0;for(var T=new Array(l),S=new Array(l),w=new Array(l),E=0;E<l;E++)T[E]=0,S[E]=0,w[E]=0;for(var _=new Array(l*i.minIterations),A=0;A<_.length;A++)_[A]=0;var D;for(D=0;D<i.maxIterations;D++){for(var O=0;O<l;O++){for(var R=-1/0,k=-1/0,L=-1,C=0,I=0;I<l;I++)T[I]=d[O*l+I],C=p[O*l+I]+h[O*l+I],C>=R?(k=R,R=C,L=I):C>k&&(k=C);for(var M=0;M<l;M++)d[O*l+M]=(1-i.damping)*(h[O*l+M]-R)+i.damping*T[M];d[O*l+L]=(1-i.damping)*(h[O*l+L]-k)+i.damping*T[L]}for(var P=0;P<l;P++){for(var B=0,F=0;F<l;F++)T[F]=p[F*l+P],S[F]=Math.max(0,d[F*l+P]),B+=S[F];B-=S[P],S[P]=d[P*l+P],B+=S[P];for(var G=0;G<l;G++)p[G*l+P]=(1-i.damping)*Math.min(0,B-S[G])+i.damping*T[G];p[P*l+P]=(1-i.damping)*(B-S[P])+i.damping*T[P]}for(var $=0,U=0;U<l;U++){var K=p[U*l+U]+d[U*l+U]>0?1:0;_[D%i.minIterations*l+U]=K,$+=K}if($>0&&(D>=i.minIterations-1||D==i.maxIterations-1)){for(var ne=0,j=0;j<l;j++){w[j]=0;for(var le=0;le<i.minIterations;le++)w[j]+=_[le*l+j];(w[j]===0||w[j]===i.minIterations)&&ne++}if(ne===l)break}}for(var Z=L$e(l,d,p),ce=R$e(l,h,Z),Q={},ee=0;ee<Z.length;ee++)Q[Z[ee]]=[];for(var te=0;te<n.length;te++){var re=a[n[te].id()],he=ce[re];he!=null&&Q[he].push(n[te])}for(var J=new Array(Z.length),ye=0;ye<Z.length;ye++)J[ye]=r.collection(Q[Z[ye]]);return J},"affinityPropagation"),N$e={affinityPropagation:Nse,ap:Nse},M$e=na({root:void 0,directed:!1}),I$e={hierholzer:o(function(e){if(!Vr(e)){var r=arguments;e={root:r[0],directed:r[1]}}var n=M$e(e),i=n.root,a=n.directed,s=this,l=!1,u,h,f;i&&(f=Jt(i)?this.filter(i)[0].id():i[0].id());var d={},p={};a?s.forEach(function(b){var T=b.id();if(b.isNode()){var S=b.indegree(!0),w=b.outdegree(!0),E=S-w,_=w-S;E==1?u?l=!0:u=T:_==1?h?l=!0:h=T:(_>1||E>1)&&(l=!0),d[T]=[],b.outgoers().forEach(function(A){A.isEdge()&&d[T].push(A.id())})}else p[T]=[void 0,b.target().id()]}):s.forEach(function(b){var T=b.id();if(b.isNode()){var S=b.degree(!0);S%2&&(u?h?l=!0:h=T:u=T),d[T]=[],b.connectedEdges().forEach(function(w){return d[T].push(w.id())})}else p[T]=[b.source().id(),b.target().id()]});var m={found:!1,trail:void 0};if(l)return m;if(h&&u)if(a){if(f&&h!=f)return m;f=h}else{if(f&&h!=f&&u!=f)return m;f||(f=h)}else f||(f=s[0].id());var g=o(function(T){for(var S=T,w=[T],E,_,A;d[S].length;)E=d[S].shift(),_=p[E][0],A=p[E][1],S!=A?(d[A]=d[A].filter(function(D){return D!=E}),S=A):!a&&S!=_&&(d[_]=d[_].filter(function(D){return D!=E}),S=_),w.unshift(E),w.unshift(S);return w},"walk"),y=[],x=[];for(x=g(f);x.length!=1;)d[x[0]].length==0?(y.unshift(s.getElementById(x.shift())),y.unshift(s.getElementById(x.shift()))):x=g(x.shift()).concat(x);y.unshift(s.getElementById(x.shift()));for(var v in d)if(d[v].length)return m;return m.found=!0,m.trail=this.spawn(y,!0),m},"hierholzer")},Ak=o(function(){var e=this,r={},n=0,i=0,a=[],s=[],l={},u=o(function(p,m){for(var g=s.length-1,y=[],x=e.spawn();s[g].x!=p||s[g].y!=m;)y.push(s.pop().edge),g--;y.push(s.pop().edge),y.forEach(function(v){var b=v.connectedNodes().intersection(e);x.merge(v),b.forEach(function(T){var S=T.id(),w=T.connectedEdges().intersection(e);x.merge(T),r[S].cutVertex?x.merge(w.filter(function(E){return E.isLoop()})):x.merge(w)})}),a.push(x)},"buildComponent"),h=o(function d(p,m,g){p===g&&(i+=1),r[m]={id:n,low:n++,cutVertex:!1};var y=e.getElementById(m).connectedEdges().intersection(e);if(y.size()===0)a.push(e.spawn(e.getElementById(m)));else{var x,v,b,T;y.forEach(function(S){x=S.source().id(),v=S.target().id(),b=x===m?v:x,b!==g&&(T=S.id(),l[T]||(l[T]=!0,s.push({x:m,y:b,edge:S})),b in r?r[m].low=Math.min(r[m].low,r[b].id):(d(p,b,m),r[m].low=Math.min(r[m].low,r[b].low),r[m].id<=r[b].low&&(r[m].cutVertex=!0,u(m,b))))})}},"biconnectedSearch");e.forEach(function(d){if(d.isNode()){var p=d.id();p in r||(i=0,h(p,p),r[p].cutVertex=i>1)}});var f=Object.keys(r).filter(function(d){return r[d].cutVertex}).map(function(d){return e.getElementById(d)});return{cut:e.spawn(f),components:a}},"hopcroftTarjanBiconnected"),O$e={hopcroftTarjanBiconnected:Ak,htbc:Ak,htb:Ak,hopcroftTarjanBiconnectedComponents:Ak},_k=o(function(){var e=this,r={},n=0,i=[],a=[],s=e.spawn(e),l=o(function u(h){a.push(h),r[h]={index:n,low:n++,explored:!1};var f=e.getElementById(h).connectedEdges().intersection(e);if(f.forEach(function(y){var x=y.target().id();x!==h&&(x in r||u(x),r[x].explored||(r[h].low=Math.min(r[h].low,r[x].low)))}),r[h].index===r[h].low){for(var d=e.spawn();;){var p=a.pop();if(d.merge(e.getElementById(p)),r[p].low=r[h].index,r[p].explored=!0,p===h)break}var m=d.edgesWith(d),g=d.merge(m);i.push(g),s=s.difference(g)}},"stronglyConnectedSearch");return e.forEach(function(u){if(u.isNode()){var h=u.id();h in r||l(h)}}),{cut:s,components:i}},"tarjanStronglyConnected"),P$e={tarjanStronglyConnected:_k,tsc:_k,tscc:_k,tarjanStronglyConnectedComponents:_k},ole={};[lx,fFe,dFe,mFe,yFe,xFe,wFe,YFe,Zm,Jm,SN,s$e,x$e,S$e,N$e,I$e,O$e,P$e].forEach(function(t){ir(ole,t)});lle=0,cle=1,ule=2,$u=o(function t(e){if(!(this instanceof t))return new t(e);this.id="Thenable/1.0.7",this.state=lle,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},typeof e=="function"&&e.call(this,this.fulfill.bind(this),this.reject.bind(this))},"api");$u.prototype={fulfill:o(function(e){return Mse(this,cle,"fulfillValue",e)},"fulfill"),reject:o(function(e){return Mse(this,ule,"rejectReason",e)},"reject"),then:o(function(e,r){var n=this,i=new $u;return n.onFulfilled.push(Ose(e,i,"fulfill")),n.onRejected.push(Ose(r,i,"reject")),hle(n),i.proxy},"then")};Mse=o(function(e,r,n,i){return e.state===lle&&(e.state=r,e[n]=i,hle(e)),e},"deliver"),hle=o(function(e){e.state===cle?Ise(e,"onFulfilled",e.fulfillValue):e.state===ule&&Ise(e,"onRejected",e.rejectReason)},"execute"),Ise=o(function(e,r,n){if(e[r].length!==0){var i=e[r];e[r]=[];var a=o(function(){for(var l=0;l<i.length;l++)i[l](n)},"func");typeof setImmediate=="function"?setImmediate(a):setTimeout(a,0)}},"execute_handlers"),Ose=o(function(e,r,n){return function(i){if(typeof e!="function")r[n].call(r,i);else{var a;try{a=e(i)}catch(s){r.reject(s);return}B$e(r,a)}}},"resolver"),B$e=o(function t(e,r){if(e===r||e.proxy===r){e.reject(new TypeError("cannot resolve promise with itself"));return}var n;if(zi(r)==="object"&&r!==null||typeof r=="function")try{n=r.then}catch(a){e.reject(a);return}if(typeof n=="function"){var i=!1;try{n.call(r,function(a){i||(i=!0,a===r?e.reject(new TypeError("circular thenable chain")):t(e,a))},function(a){i||(i=!0,e.reject(a))})}catch(a){i||e.reject(a)}return}e.fulfill(r)},"resolve");$u.all=function(t){return new $u(function(e,r){for(var n=new Array(t.length),i=0,a=o(function(u,h){n[u]=h,i++,i===t.length&&e(n)},"fulfill"),s=0;s<t.length;s++)(function(l){var u=t[l],h=u!=null&&u.then!=null;if(h)u.then(function(d){a(l,d)},function(d){r(d)});else{var f=u;a(l,f)}})(s)})};$u.resolve=function(t){return new $u(function(e,r){e(t)})};$u.reject=function(t){return new $u(function(e,r){r(t)})};sg=typeof Promise<"u"?Promise:$u,CN=o(function(e,r,n){var i=GN(e),a=!i,s=this._private=ir({duration:1e3},r,n);if(s.target=e,s.style=s.style||s.css,s.started=!1,s.playing=!1,s.hooked=!1,s.applying=!1,s.progress=0,s.completes=[],s.frames=[],s.complete&&li(s.complete)&&s.completes.push(s.complete),a){var l=e.position();s.startPosition=s.startPosition||{x:l.x,y:l.y},s.startStyle=s.startStyle||e.cy().style().getAnimationStartStyle(e,s.style)}if(i){var u=e.pan();s.startPan={x:u.x,y:u.y},s.startZoom=e.zoom()}this.length=1,this[0]=this},"Animation"),vp=CN.prototype;ir(vp,{instanceString:o(function(){return"animation"},"instanceString"),hook:o(function(){var e=this._private;if(!e.hooked){var r,n=e.target._private.animation;e.queue?r=n.queue:r=n.current,r.push(this),ho(e.target)&&e.target.cy().addToAnimationPool(e.target),e.hooked=!0}return this},"hook"),play:o(function(){var e=this._private;return e.progress===1&&(e.progress=0),e.playing=!0,e.started=!1,e.stopped=!1,this.hook(),this},"play"),playing:o(function(){return this._private.playing},"playing"),apply:o(function(){var e=this._private;return e.applying=!0,e.started=!1,e.stopped=!1,this.hook(),this},"apply"),applying:o(function(){return this._private.applying},"applying"),pause:o(function(){var e=this._private;return e.playing=!1,e.started=!1,this},"pause"),stop:o(function(){var e=this._private;return e.playing=!1,e.started=!1,e.stopped=!0,this},"stop"),rewind:o(function(){return this.progress(0)},"rewind"),fastforward:o(function(){return this.progress(1)},"fastforward"),time:o(function(e){var r=this._private;return e===void 0?r.progress*r.duration:this.progress(e/r.duration)},"time"),progress:o(function(e){var r=this._private,n=r.playing;return e===void 0?r.progress:(n&&this.pause(),r.progress=e,r.started=!1,n&&this.play(),this)},"progress"),completed:o(function(){return this._private.progress===1},"completed"),reverse:o(function(){var e=this._private,r=e.playing;r&&this.pause(),e.progress=1-e.progress,e.started=!1;var n=o(function(h,f){var d=e[h];d!=null&&(e[h]=e[f],e[f]=d)},"swap");if(n("zoom","startZoom"),n("pan","startPan"),n("position","startPosition"),e.style)for(var i=0;i<e.style.length;i++){var a=e.style[i],s=a.name,l=e.startStyle[s];e.startStyle[s]=a,e.style[i]=l}return r&&this.play(),this},"reverse"),promise:o(function(e){var r=this._private,n;switch(e){case"frame":n=r.frames;break;default:case"complete":case"completed":n=r.completes}return new sg(function(i,a){n.push(function(){i()})})},"promise")});vp.complete=vp.completed;vp.run=vp.play;vp.running=vp.playing;F$e={animated:o(function(){return o(function(){var r=this,n=r.length!==void 0,i=n?r:[r],a=this._private.cy||this;if(!a.styleEnabled())return!1;var s=i[0];if(s)return s._private.animation.current.length>0},"animatedImpl")},"animated"),clearQueue:o(function(){return o(function(){var r=this,n=r.length!==void 0,i=n?r:[r],a=this._private.cy||this;if(!a.styleEnabled())return this;for(var s=0;s<i.length;s++){var l=i[s];l._private.animation.queue=[]}return this},"clearQueueImpl")},"clearQueue"),delay:o(function(){return o(function(r,n){var i=this._private.cy||this;return i.styleEnabled()?this.animate({delay:r,duration:r,complete:n}):this},"delayImpl")},"delay"),delayAnimation:o(function(){return o(function(r,n){var i=this._private.cy||this;return i.styleEnabled()?this.animation({delay:r,duration:r,complete:n}):this},"delayAnimationImpl")},"delayAnimation"),animation:o(function(){return o(function(r,n){var i=this,a=i.length!==void 0,s=a?i:[i],l=this._private.cy||this,u=!a,h=!u;if(!l.styleEnabled())return this;var f=l.style();r=ir({},r,n);var d=Object.keys(r).length===0;if(d)return new CN(s[0],r);switch(r.duration===void 0&&(r.duration=400),r.duration){case"slow":r.duration=600;break;case"fast":r.duration=200;break}if(h&&(r.style=f.getPropsList(r.style||r.css),r.css=void 0),h&&r.renderedPosition!=null){var p=r.renderedPosition,m=l.pan(),g=l.zoom();r.position=Koe(p,g,m)}if(u&&r.panBy!=null){var y=r.panBy,x=l.pan();r.pan={x:x.x+y.x,y:x.y+y.y}}var v=r.center||r.centre;if(u&&v!=null){var b=l.getCenterPan(v.eles,r.zoom);b!=null&&(r.pan=b)}if(u&&r.fit!=null){var T=r.fit,S=l.getFitViewport(T.eles||T.boundingBox,T.padding);S!=null&&(r.pan=S.pan,r.zoom=S.zoom)}if(u&&Vr(r.zoom)){var w=l.getZoomedViewport(r.zoom);w!=null?(w.zoomed&&(r.zoom=w.zoom),w.panned&&(r.pan=w.pan)):r.zoom=null}return new CN(s[0],r)},"animationImpl")},"animation"),animate:o(function(){return o(function(r,n){var i=this,a=i.length!==void 0,s=a?i:[i],l=this._private.cy||this;if(!l.styleEnabled())return this;n&&(r=ir({},r,n));for(var u=0;u<s.length;u++){var h=s[u],f=h.animated()&&(r.queue===void 0||r.queue),d=h.animation(r,f?{queue:!0}:void 0);d.play()}return this},"animateImpl")},"animate"),stop:o(function(){return o(function(r,n){var i=this,a=i.length!==void 0,s=a?i:[i],l=this._private.cy||this;if(!l.styleEnabled())return this;for(var u=0;u<s.length;u++){for(var h=s[u],f=h._private,d=f.animation.current,p=0;p<d.length;p++){var m=d[p],g=m._private;n&&(g.duration=0)}r&&(f.animation.queue=[]),n||(f.animation.current=[])}return l.notify("draw"),this},"stopImpl")},"stop")},$$e=Array.isArray,cE=$$e,G$e=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,z$e=/^\w*$/;o(V$e,"isKey");U$e=V$e,H$e="[object AsyncFunction]",W$e="[object Function]",q$e="[object GeneratorFunction]",Y$e="[object Proxy]";o(X$e,"isFunction");j$e=X$e,K$e=aE["__core-js_shared__"],hN=K$e,Pse=function(){var t=/[^.]+$/.exec(hN&&hN.keys&&hN.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();o(Q$e,"isMasked");Z$e=Q$e,J$e=Function.prototype,eGe=J$e.toString;o(tGe,"toSource");rGe=tGe,nGe=/[\\^$.*+?()[\]{}|]/g,iGe=/^\[object .+?Constructor\]$/,aGe=Function.prototype,sGe=Object.prototype,oGe=aGe.toString,lGe=sGe.hasOwnProperty,cGe=RegExp("^"+oGe.call(lGe).replace(nGe,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");o(uGe,"baseIsNative");hGe=uGe;o(fGe,"getValue$1");dGe=fGe;o(pGe,"getNative");jN=pGe,mGe=jN(Object,"create"),hx=mGe;o(gGe,"hashClear");yGe=gGe;o(vGe,"hashDelete");xGe=vGe,bGe="__lodash_hash_undefined__",TGe=Object.prototype,wGe=TGe.hasOwnProperty;o(kGe,"hashGet");EGe=kGe,SGe=Object.prototype,CGe=SGe.hasOwnProperty;o(AGe,"hashHas");_Ge=AGe,DGe="__lodash_hash_undefined__";o(LGe,"hashSet");RGe=LGe;o(og,"Hash");og.prototype.clear=yGe;og.prototype.delete=xGe;og.prototype.get=EGe;og.prototype.has=_Ge;og.prototype.set=RGe;Bse=og;o(NGe,"listCacheClear");MGe=NGe;o(IGe,"eq");fle=IGe;o(OGe,"assocIndexOf");uE=OGe,PGe=Array.prototype,BGe=PGe.splice;o(FGe,"listCacheDelete");$Ge=FGe;o(GGe,"listCacheGet");zGe=GGe;o(VGe,"listCacheHas");UGe=VGe;o(HGe,"listCacheSet");WGe=HGe;o(lg,"ListCache");lg.prototype.clear=MGe;lg.prototype.delete=$Ge;lg.prototype.get=zGe;lg.prototype.has=UGe;lg.prototype.set=WGe;qGe=lg,YGe=jN(aE,"Map"),XGe=YGe;o(jGe,"mapCacheClear");KGe=jGe;o(QGe,"isKeyable");ZGe=QGe;o(JGe,"getMapData");hE=JGe;o(eze,"mapCacheDelete");tze=eze;o(rze,"mapCacheGet");nze=rze;o(ize,"mapCacheHas");aze=ize;o(sze,"mapCacheSet");oze=sze;o(cg,"MapCache");cg.prototype.clear=KGe;cg.prototype.delete=tze;cg.prototype.get=nze;cg.prototype.has=aze;cg.prototype.set=oze;dle=cg,lze="Expected a function";o(KN,"memoize");KN.Cache=dle;cze=KN,uze=500;o(hze,"memoizeCapped");fze=hze,dze=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,pze=/\\(\\)?/g,mze=fze(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(dze,function(r,n,i,a){e.push(i?a.replace(pze,"$1"):n||r)}),e}),ple=mze;o(gze,"arrayMap");mle=gze,yze=1/0,Fse=tg?tg.prototype:void 0,$se=Fse?Fse.toString:void 0;o(gle,"baseToString");vze=gle;o(xze,"toString$1");yle=xze;o(bze,"castPath");vle=bze,Tze=1/0;o(wze,"toKey");QN=wze;o(kze,"baseGet");Eze=kze;o(Sze,"get");Cze=Sze,Aze=function(){try{var t=jN(Object,"defineProperty");return t({},"",{}),t}catch{}}(),Gse=Aze;o(_ze,"baseAssignValue");Dze=_ze,Lze=Object.prototype,Rze=Lze.hasOwnProperty;o(Nze,"assignValue");Mze=Nze,Ize=9007199254740991,Oze=/^(?:0|[1-9]\d*)$/;o(Pze,"isIndex");Bze=Pze;o(Fze,"baseSet");$ze=Fze;o(Gze,"set");zze=Gze;o(Vze,"copyArray");Uze=Vze;o(Hze,"toPath");Wze=Hze,qze={data:o(function(e){var r={field:"data",bindingEvent:"data",allowBinding:!1,allowSetting:!1,allowGetting:!1,settingEvent:"data",settingTriggersEvent:!1,triggerFnName:"trigger",immutableKeys:{},updateStyle:!1,beforeGet:o(function(i){},"beforeGet"),beforeSet:o(function(i,a){},"beforeSet"),onSet:o(function(i){},"onSet"),canSet:o(function(i){return!0},"canSet")};return e=ir({},r,e),o(function(i,a){var s=e,l=this,u=l.length!==void 0,h=u?l:[l],f=u?l[0]:l;if(Jt(i)){var d=i.indexOf(".")!==-1,p=d&&Wze(i);if(s.allowGetting&&a===void 0){var m;return f&&(s.beforeGet(f),p&&f._private[s.field][i]===void 0?m=Cze(f._private[s.field],p):m=f._private[s.field][i]),m}else if(s.allowSetting&&a!==void 0){var g=!s.immutableKeys[i];if(g){var y=Loe({},i,a);s.beforeSet(l,y);for(var x=0,v=h.length;x<v;x++){var b=h[x];s.canSet(b)&&(p&&f._private[s.field][i]===void 0?zze(b._private[s.field],p,a):b._private[s.field][i]=a)}s.updateStyle&&l.updateStyle(),s.onSet(l),s.settingTriggersEvent&&l[s.triggerFnName](s.settingEvent)}}}else if(s.allowSetting&&Vr(i)){var T=i,S,w,E=Object.keys(T);s.beforeSet(l,T);for(var _=0;_<E.length;_++){S=E[_],w=T[S];var A=!s.immutableKeys[S];if(A)for(var D=0;D<h.length;D++){var O=h[D];s.canSet(O)&&(O._private[s.field][S]=w)}}s.updateStyle&&l.updateStyle(),s.onSet(l),s.settingTriggersEvent&&l[s.triggerFnName](s.settingEvent)}else if(s.allowBinding&&li(i)){var R=i;l.on(s.bindingEvent,R)}else if(s.allowGetting&&i===void 0){var k;return f&&(s.beforeGet(f),k=f._private[s.field]),k}return l},"dataImpl")},"data"),removeData:o(function(e){var r={field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!1,immutableKeys:{}};return e=ir({},r,e),o(function(i){var a=e,s=this,l=s.length!==void 0,u=l?s:[s];if(Jt(i)){for(var h=i.split(/\s+/),f=h.length,d=0;d<f;d++){var p=h[d];if(!yf(p)){var m=!a.immutableKeys[p];if(m)for(var g=0,y=u.length;g<y;g++)u[g]._private[a.field][p]=void 0}}a.triggerEvent&&s[a.triggerFnName](a.event)}else if(i===void 0){for(var x=0,v=u.length;x<v;x++)for(var b=u[x]._private[a.field],T=Object.keys(b),S=0;S<T.length;S++){var w=T[S],E=!a.immutableKeys[w];E&&(b[w]=void 0)}a.triggerEvent&&s[a.triggerFnName](a.event)}return s},"removeDataImpl")},"removeData")},Yze={eventAliasesOn:o(function(e){var r=e;r.addListener=r.listen=r.bind=r.on,r.unlisten=r.unbind=r.off=r.removeListener,r.trigger=r.emit,r.pon=r.promiseOn=function(n,i){var a=this,s=Array.prototype.slice.call(arguments,0);return new sg(function(l,u){var h=o(function(m){a.off.apply(a,d),l(m)},"callback"),f=s.concat([h]),d=f.concat([]);a.on.apply(a,f)})}},"eventAliasesOn")},on={};[F$e,qze,Yze].forEach(function(t){ir(on,t)});Xze={animate:on.animate(),animation:on.animation(),animated:on.animated(),clearQueue:on.clearQueue(),delay:on.delay(),delayAnimation:on.delayAnimation(),stop:on.stop()},$k={classes:o(function(e){var r=this;if(e===void 0){var n=[];return r[0]._private.classes.forEach(function(g){return n.push(g)}),n}else kn(e)||(e=(e||"").match(/\S+/g)||[]);for(var i=[],a=new ag(e),s=0;s<r.length;s++){for(var l=r[s],u=l._private,h=u.classes,f=!1,d=0;d<e.length;d++){var p=e[d],m=h.has(p);if(!m){f=!0;break}}f||(f=h.size!==e.length),f&&(u.classes=a,i.push(l))}return i.length>0&&this.spawn(i).updateStyle().emit("class"),r},"classes"),addClass:o(function(e){return this.toggleClass(e,!0)},"addClass"),hasClass:o(function(e){var r=this[0];return r!=null&&r._private.classes.has(e)},"hasClass"),toggleClass:o(function(e,r){kn(e)||(e=e.match(/\S+/g)||[]);for(var n=this,i=r===void 0,a=[],s=0,l=n.length;s<l;s++)for(var u=n[s],h=u._private.classes,f=!1,d=0;d<e.length;d++){var p=e[d],m=h.has(p),g=!1;r||i&&!m?(h.add(p),g=!0):(!r||i&&m)&&(h.delete(p),g=!0),!f&&g&&(a.push(u),f=!0)}return a.length>0&&this.spawn(a).updateStyle().emit("class"),n},"toggleClass"),removeClass:o(function(e){return this.toggleClass(e,!1)},"removeClass"),flashClass:o(function(e,r){var n=this;if(r==null)r=250;else if(r===0)return n;return n.addClass(e),setTimeout(function(){n.removeClass(e)},r),n},"flashClass")};$k.className=$k.classNames=$k.classes;zr={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:`"(?:\\\\"|[^"])*"|'(?:\\\\'|[^'])*'`,number:Gi,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};zr.variable="(?:[\\w-.]|(?:\\\\"+zr.metaChar+"))+";zr.className="(?:[\\w-]|(?:\\\\"+zr.metaChar+"))+";zr.value=zr.string+"|"+zr.number;zr.id=zr.variable;(function(){var t,e,r;for(t=zr.comparatorOp.split("|"),r=0;r<t.length;r++)e=t[r],zr.comparatorOp+="|@"+e;for(t=zr.comparatorOp.split("|"),r=0;r<t.length;r++)e=t[r],!(e.indexOf("!")>=0)&&e!=="="&&(zr.comparatorOp+="|\\!"+e)})();gn=o(function(){return{checks:[]}},"newQuery"),$t={GROUP:0,COLLECTION:1,FILTER:2,DATA_COMPARE:3,DATA_EXIST:4,DATA_BOOL:5,META_COMPARE:6,STATE:7,ID:8,CLASS:9,UNDIRECTED_EDGE:10,DIRECTED_EDGE:11,NODE_SOURCE:12,NODE_TARGET:13,NODE_NEIGHBOR:14,CHILD:15,DESCENDANT:16,PARENT:17,ANCESTOR:18,COMPOUND_SPLIT:19,TRUE:20},AN=[{selector:":selected",matches:o(function(e){return e.selected()},"matches")},{selector:":unselected",matches:o(function(e){return!e.selected()},"matches")},{selector:":selectable",matches:o(function(e){return e.selectable()},"matches")},{selector:":unselectable",matches:o(function(e){return!e.selectable()},"matches")},{selector:":locked",matches:o(function(e){return e.locked()},"matches")},{selector:":unlocked",matches:o(function(e){return!e.locked()},"matches")},{selector:":visible",matches:o(function(e){return e.visible()},"matches")},{selector:":hidden",matches:o(function(e){return!e.visible()},"matches")},{selector:":transparent",matches:o(function(e){return e.transparent()},"matches")},{selector:":grabbed",matches:o(function(e){return e.grabbed()},"matches")},{selector:":free",matches:o(function(e){return!e.grabbed()},"matches")},{selector:":removed",matches:o(function(e){return e.removed()},"matches")},{selector:":inside",matches:o(function(e){return!e.removed()},"matches")},{selector:":grabbable",matches:o(function(e){return e.grabbable()},"matches")},{selector:":ungrabbable",matches:o(function(e){return!e.grabbable()},"matches")},{selector:":animated",matches:o(function(e){return e.animated()},"matches")},{selector:":unanimated",matches:o(function(e){return!e.animated()},"matches")},{selector:":parent",matches:o(function(e){return e.isParent()},"matches")},{selector:":childless",matches:o(function(e){return e.isChildless()},"matches")},{selector:":child",matches:o(function(e){return e.isChild()},"matches")},{selector:":orphan",matches:o(function(e){return e.isOrphan()},"matches")},{selector:":nonorphan",matches:o(function(e){return e.isChild()},"matches")},{selector:":compound",matches:o(function(e){return e.isNode()?e.isParent():e.source().isParent()||e.target().isParent()},"matches")},{selector:":loop",matches:o(function(e){return e.isLoop()},"matches")},{selector:":simple",matches:o(function(e){return e.isSimple()},"matches")},{selector:":active",matches:o(function(e){return e.active()},"matches")},{selector:":inactive",matches:o(function(e){return!e.active()},"matches")},{selector:":backgrounding",matches:o(function(e){return e.backgrounding()},"matches")},{selector:":nonbackgrounding",matches:o(function(e){return!e.backgrounding()},"matches")}].sort(function(t,e){return oBe(t.selector,e.selector)}),jze=function(){for(var t={},e,r=0;r<AN.length;r++)e=AN[r],t[e.selector]=e.matches;return t}(),Kze=o(function(e,r){return jze[e](r)},"stateSelectorMatches"),Qze="("+AN.map(function(t){return t.selector}).join("|")+")",Um=o(function(e){return e.replace(new RegExp("\\\\("+zr.metaChar+")","g"),function(r,n){return n})},"cleanMetaChars"),ff=o(function(e,r,n){e[e.length-1]=n},"replaceLastQuery"),_N=[{name:"group",query:!0,regex:"("+zr.group+")",populate:o(function(e,r,n){var i=Di(n,1),a=i[0];r.checks.push({type:$t.GROUP,value:a==="*"?a:a+"s"})},"populate")},{name:"state",query:!0,regex:Qze,populate:o(function(e,r,n){var i=Di(n,1),a=i[0];r.checks.push({type:$t.STATE,value:a})},"populate")},{name:"id",query:!0,regex:"\\#("+zr.id+")",populate:o(function(e,r,n){var i=Di(n,1),a=i[0];r.checks.push({type:$t.ID,value:Um(a)})},"populate")},{name:"className",query:!0,regex:"\\.("+zr.className+")",populate:o(function(e,r,n){var i=Di(n,1),a=i[0];r.checks.push({type:$t.CLASS,value:Um(a)})},"populate")},{name:"dataExists",query:!0,regex:"\\[\\s*("+zr.variable+")\\s*\\]",populate:o(function(e,r,n){var i=Di(n,1),a=i[0];r.checks.push({type:$t.DATA_EXIST,field:Um(a)})},"populate")},{name:"dataCompare",query:!0,regex:"\\[\\s*("+zr.variable+")\\s*("+zr.comparatorOp+")\\s*("+zr.value+")\\s*\\]",populate:o(function(e,r,n){var i=Di(n,3),a=i[0],s=i[1],l=i[2],u=new RegExp("^"+zr.string+"$").exec(l)!=null;u?l=l.substring(1,l.length-1):l=parseFloat(l),r.checks.push({type:$t.DATA_COMPARE,field:Um(a),operator:s,value:l})},"populate")},{name:"dataBool",query:!0,regex:"\\[\\s*("+zr.boolOp+")\\s*("+zr.variable+")\\s*\\]",populate:o(function(e,r,n){var i=Di(n,2),a=i[0],s=i[1];r.checks.push({type:$t.DATA_BOOL,field:Um(s),operator:a})},"populate")},{name:"metaCompare",query:!0,regex:"\\[\\[\\s*("+zr.meta+")\\s*("+zr.comparatorOp+")\\s*("+zr.number+")\\s*\\]\\]",populate:o(function(e,r,n){var i=Di(n,3),a=i[0],s=i[1],l=i[2];r.checks.push({type:$t.META_COMPARE,field:Um(a),operator:s,value:parseFloat(l)})},"populate")},{name:"nextQuery",separator:!0,regex:zr.separator,populate:o(function(e,r){var n=e.currentSubject,i=e.edgeCount,a=e.compoundCount,s=e[e.length-1];n!=null&&(s.subject=n,e.currentSubject=null),s.edgeCount=i,s.compoundCount=a,e.edgeCount=0,e.compoundCount=0;var l=e[e.length++]=gn();return l},"populate")},{name:"directedEdge",separator:!0,regex:zr.directedEdge,populate:o(function(e,r){if(e.currentSubject==null){var n=gn(),i=r,a=gn();return n.checks.push({type:$t.DIRECTED_EDGE,source:i,target:a}),ff(e,r,n),e.edgeCount++,a}else{var s=gn(),l=r,u=gn();return s.checks.push({type:$t.NODE_SOURCE,source:l,target:u}),ff(e,r,s),e.edgeCount++,u}},"populate")},{name:"undirectedEdge",separator:!0,regex:zr.undirectedEdge,populate:o(function(e,r){if(e.currentSubject==null){var n=gn(),i=r,a=gn();return n.checks.push({type:$t.UNDIRECTED_EDGE,nodes:[i,a]}),ff(e,r,n),e.edgeCount++,a}else{var s=gn(),l=r,u=gn();return s.checks.push({type:$t.NODE_NEIGHBOR,node:l,neighbor:u}),ff(e,r,s),u}},"populate")},{name:"child",separator:!0,regex:zr.child,populate:o(function(e,r){if(e.currentSubject==null){var n=gn(),i=gn(),a=e[e.length-1];return n.checks.push({type:$t.CHILD,parent:a,child:i}),ff(e,r,n),e.compoundCount++,i}else if(e.currentSubject===r){var s=gn(),l=e[e.length-1],u=gn(),h=gn(),f=gn(),d=gn();return s.checks.push({type:$t.COMPOUND_SPLIT,left:l,right:u,subject:h}),h.checks=r.checks,r.checks=[{type:$t.TRUE}],d.checks.push({type:$t.TRUE}),u.checks.push({type:$t.PARENT,parent:d,child:f}),ff(e,l,s),e.currentSubject=h,e.compoundCount++,f}else{var p=gn(),m=gn(),g=[{type:$t.PARENT,parent:p,child:m}];return p.checks=r.checks,r.checks=g,e.compoundCount++,m}},"populate")},{name:"descendant",separator:!0,regex:zr.descendant,populate:o(function(e,r){if(e.currentSubject==null){var n=gn(),i=gn(),a=e[e.length-1];return n.checks.push({type:$t.DESCENDANT,ancestor:a,descendant:i}),ff(e,r,n),e.compoundCount++,i}else if(e.currentSubject===r){var s=gn(),l=e[e.length-1],u=gn(),h=gn(),f=gn(),d=gn();return s.checks.push({type:$t.COMPOUND_SPLIT,left:l,right:u,subject:h}),h.checks=r.checks,r.checks=[{type:$t.TRUE}],d.checks.push({type:$t.TRUE}),u.checks.push({type:$t.ANCESTOR,ancestor:d,descendant:f}),ff(e,l,s),e.currentSubject=h,e.compoundCount++,f}else{var p=gn(),m=gn(),g=[{type:$t.ANCESTOR,ancestor:p,descendant:m}];return p.checks=r.checks,r.checks=g,e.compoundCount++,m}},"populate")},{name:"subject",modifier:!0,regex:zr.subject,populate:o(function(e,r){if(e.currentSubject!=null&&e.currentSubject!==r)return ln("Redefinition of subject in selector `"+e.toString()+"`"),!1;e.currentSubject=r;var n=e[e.length-1],i=n.checks[0],a=i==null?null:i.type;a===$t.DIRECTED_EDGE?i.type=$t.NODE_TARGET:a===$t.UNDIRECTED_EDGE&&(i.type=$t.NODE_NEIGHBOR,i.node=i.nodes[1],i.neighbor=i.nodes[0],i.nodes=null)},"populate")}];_N.forEach(function(t){return t.regexObj=new RegExp("^"+t.regex)});Zze=o(function(e){for(var r,n,i,a=0;a<_N.length;a++){var s=_N[a],l=s.name,u=e.match(s.regexObj);if(u!=null){n=u,r=s,i=l;var h=u[0];e=e.substring(h.length);break}}return{expr:r,match:n,name:i,remaining:e}},"consumeExpr"),Jze=o(function(e){var r=e.match(/^\s+/);if(r){var n=r[0];e=e.substring(n.length)}return e},"consumeWhitespace"),eVe=o(function(e){var r=this,n=r.inputText=e,i=r[0]=gn();for(r.length=1,n=Jze(n);;){var a=Zze(n);if(a.expr==null)return ln("The selector `"+e+"`is invalid"),!1;var s=a.match.slice(1),l=a.expr.populate(r,i,s);if(l===!1)return!1;if(l!=null&&(i=l),n=a.remaining,n.match(/^\s*$/))break}var u=r[r.length-1];r.currentSubject!=null&&(u.subject=r.currentSubject),u.edgeCount=r.edgeCount,u.compoundCount=r.compoundCount;for(var h=0;h<r.length;h++){var f=r[h];if(f.compoundCount>0&&f.edgeCount>0)return ln("The selector `"+e+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(f.edgeCount>1)return ln("The selector `"+e+"` is invalid because it uses multiple edge selectors"),!1;f.edgeCount===1&&ln("The selector `"+e+"` is deprecated. Edge selectors do not take effect on changes to source and target nodes after an edge is added, for performance reasons. Use a class or data selector on edges instead, updating the class or data of an edge when your app detects a change in source or target nodes.")}return!0},"parse"),tVe=o(function(){if(this.toStringCache!=null)return this.toStringCache;for(var e=o(function(f){return f??""},"clean"),r=o(function(f){return Jt(f)?'"'+f+'"':e(f)},"cleanVal"),n=o(function(f){return" "+f+" "},"space"),i=o(function(f,d){var p=f.type,m=f.value;switch(p){case $t.GROUP:{var g=e(m);return g.substring(0,g.length-1)}case $t.DATA_COMPARE:{var y=f.field,x=f.operator;return"["+y+n(e(x))+r(m)+"]"}case $t.DATA_BOOL:{var v=f.operator,b=f.field;return"["+e(v)+b+"]"}case $t.DATA_EXIST:{var T=f.field;return"["+T+"]"}case $t.META_COMPARE:{var S=f.operator,w=f.field;return"[["+w+n(e(S))+r(m)+"]]"}case $t.STATE:return m;case $t.ID:return"#"+m;case $t.CLASS:return"."+m;case $t.PARENT:case $t.CHILD:return a(f.parent,d)+n(">")+a(f.child,d);case $t.ANCESTOR:case $t.DESCENDANT:return a(f.ancestor,d)+" "+a(f.descendant,d);case $t.COMPOUND_SPLIT:{var E=a(f.left,d),_=a(f.subject,d),A=a(f.right,d);return E+(E.length>0?" ":"")+_+A}case $t.TRUE:return""}},"checkToString"),a=o(function(f,d){return f.checks.reduce(function(p,m,g){return p+(d===f&&g===0?"$":"")+i(m,d)},"")},"queryToString"),s="",l=0;l<this.length;l++){var u=this[l];s+=a(u,u.subject),this.length>1&&l<this.length-1&&(s+=", ")}return this.toStringCache=s,s},"toString"),rVe={parse:eVe,toString:tVe},xle=o(function(e,r,n){var i,a=Jt(e),s=At(e),l=Jt(n),u,h,f=!1,d=!1,p=!1;switch(r.indexOf("!")>=0&&(r=r.replace("!",""),d=!0),r.indexOf("@")>=0&&(r=r.replace("@",""),f=!0),(a||l||f)&&(u=!a&&!s?"":""+e,h=""+n),f&&(e=u=u.toLowerCase(),n=h=h.toLowerCase()),r){case"*=":i=u.indexOf(h)>=0;break;case"$=":i=u.indexOf(h,u.length-h.length)>=0;break;case"^=":i=u.indexOf(h)===0;break;case"=":i=e===n;break;case">":p=!0,i=e>n;break;case">=":p=!0,i=e>=n;break;case"<":p=!0,i=e<n;break;case"<=":p=!0,i=e<=n;break;default:i=!1;break}return d&&(e!=null||!p)&&(i=!i),i},"valCmp"),nVe=o(function(e,r){switch(r){case"?":return!!e;case"!":return!e;case"^":return e===void 0}},"boolCmp"),iVe=o(function(e){return e!==void 0},"existCmp"),ZN=o(function(e,r){return e.data(r)},"data"),aVe=o(function(e,r){return e[r]()},"meta"),mi=[],Un=o(function(e,r){return e.checks.every(function(n){return mi[n.type](n,r)})},"matches");mi[$t.GROUP]=function(t,e){var r=t.value;return r==="*"||r===e.group()};mi[$t.STATE]=function(t,e){var r=t.value;return Kze(r,e)};mi[$t.ID]=function(t,e){var r=t.value;return e.id()===r};mi[$t.CLASS]=function(t,e){var r=t.value;return e.hasClass(r)};mi[$t.META_COMPARE]=function(t,e){var r=t.field,n=t.operator,i=t.value;return xle(aVe(e,r),n,i)};mi[$t.DATA_COMPARE]=function(t,e){var r=t.field,n=t.operator,i=t.value;return xle(ZN(e,r),n,i)};mi[$t.DATA_BOOL]=function(t,e){var r=t.field,n=t.operator;return nVe(ZN(e,r),n)};mi[$t.DATA_EXIST]=function(t,e){var r=t.field;return t.operator,iVe(ZN(e,r))};mi[$t.UNDIRECTED_EDGE]=function(t,e){var r=t.nodes[0],n=t.nodes[1],i=e.source(),a=e.target();return Un(r,i)&&Un(n,a)||Un(n,i)&&Un(r,a)};mi[$t.NODE_NEIGHBOR]=function(t,e){return Un(t.node,e)&&e.neighborhood().some(function(r){return r.isNode()&&Un(t.neighbor,r)})};mi[$t.DIRECTED_EDGE]=function(t,e){return Un(t.source,e.source())&&Un(t.target,e.target())};mi[$t.NODE_SOURCE]=function(t,e){return Un(t.source,e)&&e.outgoers().some(function(r){return r.isNode()&&Un(t.target,r)})};mi[$t.NODE_TARGET]=function(t,e){return Un(t.target,e)&&e.incomers().some(function(r){return r.isNode()&&Un(t.source,r)})};mi[$t.CHILD]=function(t,e){return Un(t.child,e)&&Un(t.parent,e.parent())};mi[$t.PARENT]=function(t,e){return Un(t.parent,e)&&e.children().some(function(r){return Un(t.child,r)})};mi[$t.DESCENDANT]=function(t,e){return Un(t.descendant,e)&&e.ancestors().some(function(r){return Un(t.ancestor,r)})};mi[$t.ANCESTOR]=function(t,e){return Un(t.ancestor,e)&&e.descendants().some(function(r){return Un(t.descendant,r)})};mi[$t.COMPOUND_SPLIT]=function(t,e){return Un(t.subject,e)&&Un(t.left,e)&&Un(t.right,e)};mi[$t.TRUE]=function(){return!0};mi[$t.COLLECTION]=function(t,e){var r=t.value;return r.has(e)};mi[$t.FILTER]=function(t,e){var r=t.value;return r(e)};sVe=o(function(e){var r=this;if(r.length===1&&r[0].checks.length===1&&r[0].checks[0].type===$t.ID)return e.getElementById(r[0].checks[0].value).collection();var n=o(function(a){for(var s=0;s<r.length;s++){var l=r[s];if(Un(l,a))return!0}return!1},"selectorFunction");return r.text()==null&&(n=o(function(){return!0},"selectorFunction")),e.filter(n)},"filter"),oVe=o(function(e){for(var r=this,n=0;n<r.length;n++){var i=r[n];if(Un(i,e))return!0}return!1},"matches"),lVe={matches:oVe,filter:sVe},bf=o(function(e){this.inputText=e,this.currentSubject=null,this.compoundCount=0,this.edgeCount=0,this.length=0,e==null||Jt(e)&&e.match(/^\s*$/)||(ho(e)?this.addQuery({checks:[{type:$t.COLLECTION,value:e.collection()}]}):li(e)?this.addQuery({checks:[{type:$t.FILTER,value:e}]}):Jt(e)?this.parse(e)||(this.invalid=!0):oi("A selector must be created from a string; found "))},"Selector"),Tf=bf.prototype;[rVe,lVe].forEach(function(t){return ir(Tf,t)});Tf.text=function(){return this.inputText};Tf.size=function(){return this.length};Tf.eq=function(t){return this[t]};Tf.sameText=function(t){return!this.invalid&&!t.invalid&&this.text()===t.text()};Tf.addQuery=function(t){this[this.length++]=t};Tf.selector=Tf.toString;mf={allAre:o(function(e){var r=new bf(e);return this.every(function(n){return r.matches(n)})},"allAre"),is:o(function(e){var r=new bf(e);return this.some(function(n){return r.matches(n)})},"is"),some:o(function(e,r){for(var n=0;n<this.length;n++){var i=r?e.apply(r,[this[n],n,this]):e(this[n],n,this);if(i)return!0}return!1},"some"),every:o(function(e,r){for(var n=0;n<this.length;n++){var i=r?e.apply(r,[this[n],n,this]):e(this[n],n,this);if(!i)return!1}return!0},"every"),same:o(function(e){if(this===e)return!0;e=this.cy().collection(e);var r=this.length,n=e.length;return r!==n?!1:r===1?this[0]===e[0]:this.every(function(i){return e.hasElementWithId(i.id())})},"same"),anySame:o(function(e){return e=this.cy().collection(e),this.some(function(r){return e.hasElementWithId(r.id())})},"anySame"),allAreNeighbors:o(function(e){e=this.cy().collection(e);var r=this.neighborhood();return e.every(function(n){return r.hasElementWithId(n.id())})},"allAreNeighbors"),contains:o(function(e){e=this.cy().collection(e);var r=this;return e.every(function(n){return r.hasElementWithId(n.id())})},"contains")};mf.allAreNeighbours=mf.allAreNeighbors;mf.has=mf.contains;mf.equal=mf.equals=mf.same;jo=o(function(e,r){return o(function(i,a,s,l){var u=i,h=this,f;if(u==null?f="":ho(u)&&u.length===1&&(f=u.id()),h.length===1&&f){var d=h[0]._private,p=d.traversalCache=d.traversalCache||{},m=p[r]=p[r]||[],g=vf(f),y=m[g];return y||(m[g]=e.call(h,i,a,s,l))}else return e.call(h,i,a,s,l)},"traversalCache")},"cache"),ig={parent:o(function(e){var r=[];if(this.length===1){var n=this[0]._private.parent;if(n)return n}for(var i=0;i<this.length;i++){var a=this[i],s=a._private.parent;s&&r.push(s)}return this.spawn(r,!0).filter(e)},"parent"),parents:o(function(e){for(var r=[],n=this.parent();n.nonempty();){for(var i=0;i<n.length;i++){var a=n[i];r.push(a)}n=n.parent()}return this.spawn(r,!0).filter(e)},"parents"),commonAncestors:o(function(e){for(var r,n=0;n<this.length;n++){var i=this[n],a=i.parents();r=r||a,r=r.intersect(a)}return r.filter(e)},"commonAncestors"),orphans:o(function(e){return this.stdFilter(function(r){return r.isOrphan()}).filter(e)},"orphans"),nonorphans:o(function(e){return this.stdFilter(function(r){return r.isChild()}).filter(e)},"nonorphans"),children:jo(function(t){for(var e=[],r=0;r<this.length;r++)for(var n=this[r],i=n._private.children,a=0;a<i.length;a++)e.push(i[a]);return this.spawn(e,!0).filter(t)},"children"),siblings:o(function(e){return this.parent().children().not(this).filter(e)},"siblings"),isParent:o(function(){var e=this[0];if(e)return e.isNode()&&e._private.children.length!==0},"isParent"),isChildless:o(function(){var e=this[0];if(e)return e.isNode()&&e._private.children.length===0},"isChildless"),isChild:o(function(){var e=this[0];if(e)return e.isNode()&&e._private.parent!=null},"isChild"),isOrphan:o(function(){var e=this[0];if(e)return e.isNode()&&e._private.parent==null},"isOrphan"),descendants:o(function(e){var r=[];function n(i){for(var a=0;a<i.length;a++){var s=i[a];r.push(s),s.children().nonempty()&&n(s.children())}}return o(n,"add"),n(this.children()),this.spawn(r,!0).filter(e)},"descendants")};o(JN,"forEachCompound");o(ble,"addChildren");ig.forEachDown=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return JN(this,t,e,ble)};o(Tle,"addParent");ig.forEachUp=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return JN(this,t,e,Tle)};o(cVe,"addParentAndChildren");ig.forEachUpAndDown=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return JN(this,t,e,cVe)};ig.ancestors=ig.parents;fx=wle={data:on.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),removeData:on.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:on.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:on.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:on.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:on.removeData({field:"rscratch",triggerEvent:!1}),id:o(function(){var e=this[0];if(e)return e._private.data.id},"id")};fx.attr=fx.data;fx.removeAttr=fx.removeData;uVe=wle,fE={};o(fN,"defineDegreeFunction");ir(fE,{degree:fN(function(t,e){return e.source().same(e.target())?2:1}),indegree:fN(function(t,e){return e.target().same(t)?1:0}),outdegree:fN(function(t,e){return e.source().same(t)?1:0})});o(Hm,"defineDegreeBoundsFunction");ir(fE,{minDegree:Hm("degree",function(t,e){return t<e}),maxDegree:Hm("degree",function(t,e){return t>e}),minIndegree:Hm("indegree",function(t,e){return t<e}),maxIndegree:Hm("indegree",function(t,e){return t>e}),minOutdegree:Hm("outdegree",function(t,e){return t<e}),maxOutdegree:Hm("outdegree",function(t,e){return t>e})});ir(fE,{totalDegree:o(function(e){for(var r=0,n=this.nodes(),i=0;i<n.length;i++)r+=n[i].degree(e);return r},"totalDegree")});Ele=o(function(e,r,n){for(var i=0;i<e.length;i++){var a=e[i];if(!a.locked()){var s=a._private.position,l={x:r.x!=null?r.x-s.x:0,y:r.y!=null?r.y-s.y:0};a.isParent()&&!(l.x===0&&l.y===0)&&a.children().shift(l,n),a.dirtyBoundingBoxCache()}}},"beforePositionSet"),zse={field:"position",bindingEvent:"position",allowBinding:!0,allowSetting:!0,settingEvent:"position",settingTriggersEvent:!0,triggerFnName:"emitAndNotify",allowGetting:!0,validKeys:["x","y"],beforeGet:o(function(e){e.updateCompoundBounds()},"beforeGet"),beforeSet:o(function(e,r){Ele(e,r,!1)},"beforeSet"),onSet:o(function(e){e.dirtyCompoundBoundsCache()},"onSet"),canSet:o(function(e){return!e.locked()},"canSet")};Il=kle={position:on.data(zse),silentPosition:on.data(ir({},zse,{allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!1,beforeSet:o(function(e,r){Ele(e,r,!0)},"beforeSet"),onSet:o(function(e){e.dirtyCompoundBoundsCache()},"onSet")})),positions:o(function(e,r){if(Vr(e))r?this.silentPosition(e):this.position(e);else if(li(e)){var n=e,i=this.cy();i.startBatch();for(var a=0;a<this.length;a++){var s=this[a],l=void 0;(l=n(s,a))&&(r?s.silentPosition(l):s.position(l))}i.endBatch()}return this},"positions"),silentPositions:o(function(e){return this.positions(e,!0)},"silentPositions"),shift:o(function(e,r,n){var i;if(Vr(e)?(i={x:At(e.x)?e.x:0,y:At(e.y)?e.y:0},n=r):Jt(e)&&At(r)&&(i={x:0,y:0},i[e]=r),i!=null){var a=this.cy();a.startBatch();for(var s=0;s<this.length;s++){var l=this[s];if(!(a.hasCompoundNodes()&&l.isChild()&&l.ancestors().anySame(this))){var u=l.position(),h={x:u.x+i.x,y:u.y+i.y};n?l.silentPosition(h):l.position(h)}}a.endBatch()}return this},"shift"),silentShift:o(function(e,r){return Vr(e)?this.shift(e,!0):Jt(e)&&At(r)&&this.shift(e,r,!0),this},"silentShift"),renderedPosition:o(function(e,r){var n=this[0],i=this.cy(),a=i.zoom(),s=i.pan(),l=Vr(e)?e:void 0,u=l!==void 0||r!==void 0&&Jt(e);if(n&&n.isNode())if(u)for(var h=0;h<this.length;h++){var f=this[h];r!==void 0?f.position(e,(r-s[e])/a):l!==void 0&&f.position(Koe(l,a,s))}else{var d=n.position();return l=oE(d,a,s),e===void 0?l:l[e]}else if(!u)return;return this},"renderedPosition"),relativePosition:o(function(e,r){var n=this[0],i=this.cy(),a=Vr(e)?e:void 0,s=a!==void 0||r!==void 0&&Jt(e),l=i.hasCompoundNodes();if(n&&n.isNode())if(s)for(var u=0;u<this.length;u++){var h=this[u],f=l?h.parent():null,d=f&&f.length>0,p=d;d&&(f=f[0]);var m=p?f.position():{x:0,y:0};r!==void 0?h.position(e,r+m[e]):a!==void 0&&h.position({x:a.x+m.x,y:a.y+m.y})}else{var g=n.position(),y=l?n.parent():null,x=y&&y.length>0,v=x;x&&(y=y[0]);var b=v?y.position():{x:0,y:0};return a={x:g.x-b.x,y:g.y-b.y},e===void 0?a:a[e]}else if(!s)return;return this},"relativePosition")};Il.modelPosition=Il.point=Il.position;Il.modelPositions=Il.points=Il.positions;Il.renderedPoint=Il.renderedPosition;Il.relativePoint=Il.relativePosition;hVe=kle;eg=Sf={};Sf.renderedBoundingBox=function(t){var e=this.boundingBox(t),r=this.cy(),n=r.zoom(),i=r.pan(),a=e.x1*n+i.x,s=e.x2*n+i.x,l=e.y1*n+i.y,u=e.y2*n+i.y;return{x1:a,x2:s,y1:l,y2:u,w:s-a,h:u-l}};Sf.dirtyCompoundBoundsCache=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,e=this.cy();return!e.styleEnabled()||!e.hasCompoundNodes()?this:(this.forEachUp(function(r){if(r.isParent()){var n=r._private;n.compoundBoundsClean=!1,n.bbCache=null,t||r.emitAndNotify("bounds")}}),this)};Sf.updateCompoundBounds=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,e=this.cy();if(!e.styleEnabled()||!e.hasCompoundNodes())return this;if(!t&&e.batching())return this;function r(s){if(!s.isParent())return;var l=s._private,u=s.children(),h=s.pstyle("compound-sizing-wrt-labels").value==="include",f={width:{val:s.pstyle("min-width").pfValue,left:s.pstyle("min-width-bias-left"),right:s.pstyle("min-width-bias-right")},height:{val:s.pstyle("min-height").pfValue,top:s.pstyle("min-height-bias-top"),bottom:s.pstyle("min-height-bias-bottom")}},d=u.boundingBox({includeLabels:h,includeOverlays:!1,useCache:!1}),p=l.position;(d.w===0||d.h===0)&&(d={w:s.pstyle("width").pfValue,h:s.pstyle("height").pfValue},d.x1=p.x-d.w/2,d.x2=p.x+d.w/2,d.y1=p.y-d.h/2,d.y2=p.y+d.h/2);function m(D,O,R){var k=0,L=0,C=O+R;return D>0&&C>0&&(k=O/C*D,L=R/C*D),{biasDiff:k,biasComplementDiff:L}}o(m,"computeBiasValues");function g(D,O,R,k){if(R.units==="%")switch(k){case"width":return D>0?R.pfValue*D:0;case"height":return O>0?R.pfValue*O:0;case"average":return D>0&&O>0?R.pfValue*(D+O)/2:0;case"min":return D>0&&O>0?D>O?R.pfValue*O:R.pfValue*D:0;case"max":return D>0&&O>0?D>O?R.pfValue*D:R.pfValue*O:0;default:return 0}else return R.units==="px"?R.pfValue:0}o(g,"computePaddingValues");var y=f.width.left.value;f.width.left.units==="px"&&f.width.val>0&&(y=y*100/f.width.val);var x=f.width.right.value;f.width.right.units==="px"&&f.width.val>0&&(x=x*100/f.width.val);var v=f.height.top.value;f.height.top.units==="px"&&f.height.val>0&&(v=v*100/f.height.val);var b=f.height.bottom.value;f.height.bottom.units==="px"&&f.height.val>0&&(b=b*100/f.height.val);var T=m(f.width.val-d.w,y,x),S=T.biasDiff,w=T.biasComplementDiff,E=m(f.height.val-d.h,v,b),_=E.biasDiff,A=E.biasComplementDiff;l.autoPadding=g(d.w,d.h,s.pstyle("padding"),s.pstyle("padding-relative-to").value),l.autoWidth=Math.max(d.w,f.width.val),p.x=(-S+d.x1+d.x2+w)/2,l.autoHeight=Math.max(d.h,f.height.val),p.y=(-_+d.y1+d.y2+A)/2}o(r,"update");for(var n=0;n<this.length;n++){var i=this[n],a=i._private;(!a.compoundBoundsClean||t)&&(r(i),e.batching()||(a.compoundBoundsClean=!0))}return this};Xo=o(function(e){return e===1/0||e===-1/0?0:e},"noninf"),Nl=o(function(e,r,n,i,a){i-r===0||a-n===0||r==null||n==null||i==null||a==null||(e.x1=r<e.x1?r:e.x1,e.x2=i>e.x2?i:e.x2,e.y1=n<e.y1?n:e.y1,e.y2=a>e.y2?a:e.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1)},"updateBounds"),hp=o(function(e,r){return r==null?e:Nl(e,r.x1,r.y1,r.x2,r.y2)},"updateBoundsFromBox"),W2=o(function(e,r,n){return Ml(e,r,n)},"prefixedProperty"),Dk=o(function(e,r,n){if(!r.cy().headless()){var i=r._private,a=i.rstyle,s=a.arrowWidth/2,l=r.pstyle(n+"-arrow-shape").value,u,h;if(l!=="none"){n==="source"?(u=a.srcX,h=a.srcY):n==="target"?(u=a.tgtX,h=a.tgtY):(u=a.midX,h=a.midY);var f=i.arrowBounds=i.arrowBounds||{},d=f[n]=f[n]||{};d.x1=u-s,d.y1=h-s,d.x2=u+s,d.y2=h+s,d.w=d.x2-d.x1,d.h=d.y2-d.y1,Bk(d,1),Nl(e,d.x1,d.y1,d.x2,d.y2)}}},"updateBoundsFromArrow"),dN=o(function(e,r,n){if(!r.cy().headless()){var i;n?i=n+"-":i="";var a=r._private,s=a.rstyle,l=r.pstyle(i+"label").strValue;if(l){var u=r.pstyle("text-halign"),h=r.pstyle("text-valign"),f=W2(s,"labelWidth",n),d=W2(s,"labelHeight",n),p=W2(s,"labelX",n),m=W2(s,"labelY",n),g=r.pstyle(i+"text-margin-x").pfValue,y=r.pstyle(i+"text-margin-y").pfValue,x=r.isEdge(),v=r.pstyle(i+"text-rotation"),b=r.pstyle("text-outline-width").pfValue,T=r.pstyle("text-border-width").pfValue,S=T/2,w=r.pstyle("text-background-padding").pfValue,E=2,_=d,A=f,D=A/2,O=_/2,R,k,L,C;if(x)R=p-D,k=p+D,L=m-O,C=m+O;else{switch(u.value){case"left":R=p-A,k=p;break;case"center":R=p-D,k=p+D;break;case"right":R=p,k=p+A;break}switch(h.value){case"top":L=m-_,C=m;break;case"center":L=m-O,C=m+O;break;case"bottom":L=m,C=m+_;break}}var I=g-Math.max(b,S)-w-E,M=g+Math.max(b,S)+w+E,P=y-Math.max(b,S)-w-E,B=y+Math.max(b,S)+w+E;R+=I,k+=M,L+=P,C+=B;var F=n||"main",G=a.labelBounds,$=G[F]=G[F]||{};$.x1=R,$.y1=L,$.x2=k,$.y2=C,$.w=k-R,$.h=C-L,$.leftPad=I,$.rightPad=M,$.topPad=P,$.botPad=B;var U=x&&v.strValue==="autorotate",K=v.pfValue!=null&&v.pfValue!==0;if(U||K){var ne=U?W2(a.rstyle,"labelAngle",n):v.pfValue,j=Math.cos(ne),le=Math.sin(ne),Z=(R+k)/2,ce=(L+C)/2;if(!x){switch(u.value){case"left":Z=k;break;case"right":Z=R;break}switch(h.value){case"top":ce=C;break;case"bottom":ce=L;break}}var Q=o(function(Se,W){return Se=Se-Z,W=W-ce,{x:Se*j-W*le+Z,y:Se*le+W*j+ce}},"rotate"),ee=Q(R,L),te=Q(R,C),re=Q(k,L),he=Q(k,C);R=Math.min(ee.x,te.x,re.x,he.x),k=Math.max(ee.x,te.x,re.x,he.x),L=Math.min(ee.y,te.y,re.y,he.y),C=Math.max(ee.y,te.y,re.y,he.y)}var J=F+"Rot",ye=G[J]=G[J]||{};ye.x1=R,ye.y1=L,ye.x2=k,ye.y2=C,ye.w=k-R,ye.h=C-L,Nl(e,R,L,k,C),Nl(a.labelBounds.all,R,L,k,C)}return e}},"updateBoundsFromLabel"),fVe=o(function(e,r){if(!r.cy().headless()){var n=r.pstyle("outline-opacity").value,i=r.pstyle("outline-width").value;if(n>0&&i>0){var a=r.pstyle("outline-offset").value,s=r.pstyle("shape").value,l=i+a,u=(e.w+l*2)/e.w,h=(e.h+l*2)/e.h,f=0,d=0;["diamond","pentagon","round-triangle"].includes(s)?(u=(e.w+l*2.4)/e.w,d=-l/3.6):["concave-hexagon","rhomboid","right-rhomboid"].includes(s)?u=(e.w+l*2.4)/e.w:s==="star"?(u=(e.w+l*2.8)/e.w,h=(e.h+l*2.6)/e.h,d=-l/3.8):s==="triangle"?(u=(e.w+l*2.8)/e.w,h=(e.h+l*2.4)/e.h,d=-l/1.4):s==="vee"&&(u=(e.w+l*4.4)/e.w,h=(e.h+l*3.8)/e.h,d=-l*.5);var p=e.h*h-e.h,m=e.w*u-e.w;if(Fk(e,[Math.ceil(p/2),Math.ceil(m/2)]),f!=0||d!==0){var g=MFe(e,f,d);Zoe(e,g)}}}},"updateBoundsFromOutline"),dVe=o(function(e,r){var n=e._private.cy,i=n.styleEnabled(),a=n.headless(),s=Us(),l=e._private,u=e.isNode(),h=e.isEdge(),f,d,p,m,g,y,x=l.rstyle,v=u&&i?e.pstyle("bounds-expansion").pfValue:[0],b=o(function(se){return se.pstyle("display").value!=="none"},"isDisplayed"),T=!i||b(e)&&(!h||b(e.source())&&b(e.target()));if(T){var S=0,w=0;i&&r.includeOverlays&&(S=e.pstyle("overlay-opacity").value,S!==0&&(w=e.pstyle("overlay-padding").value));var E=0,_=0;i&&r.includeUnderlays&&(E=e.pstyle("underlay-opacity").value,E!==0&&(_=e.pstyle("underlay-padding").value));var A=Math.max(w,_),D=0,O=0;if(i&&(D=e.pstyle("width").pfValue,O=D/2),u&&r.includeNodes){var R=e.position();g=R.x,y=R.y;var k=e.outerWidth(),L=k/2,C=e.outerHeight(),I=C/2;f=g-L,d=g+L,p=y-I,m=y+I,Nl(s,f,p,d,m),i&&r.includeOutlines&&fVe(s,e)}else if(h&&r.includeEdges)if(i&&!a){var M=e.pstyle("curve-style").strValue;if(f=Math.min(x.srcX,x.midX,x.tgtX),d=Math.max(x.srcX,x.midX,x.tgtX),p=Math.min(x.srcY,x.midY,x.tgtY),m=Math.max(x.srcY,x.midY,x.tgtY),f-=O,d+=O,p-=O,m+=O,Nl(s,f,p,d,m),M==="haystack"){var P=x.haystackPts;if(P&&P.length===2){if(f=P[0].x,p=P[0].y,d=P[1].x,m=P[1].y,f>d){var B=f;f=d,d=B}if(p>m){var F=p;p=m,m=F}Nl(s,f-O,p-O,d+O,m+O)}}else if(M==="bezier"||M==="unbundled-bezier"||M.endsWith("segments")||M.endsWith("taxi")){var G;switch(M){case"bezier":case"unbundled-bezier":G=x.bezierPts;break;case"segments":case"taxi":case"round-segments":case"round-taxi":G=x.linePts;break}if(G!=null)for(var $=0;$<G.length;$++){var U=G[$];f=U.x-O,d=U.x+O,p=U.y-O,m=U.y+O,Nl(s,f,p,d,m)}}}else{var K=e.source(),ne=K.position(),j=e.target(),le=j.position();if(f=ne.x,d=le.x,p=ne.y,m=le.y,f>d){var Z=f;f=d,d=Z}if(p>m){var ce=p;p=m,m=ce}f-=O,d+=O,p-=O,m+=O,Nl(s,f,p,d,m)}if(i&&r.includeEdges&&h&&(Dk(s,e,"mid-source"),Dk(s,e,"mid-target"),Dk(s,e,"source"),Dk(s,e,"target")),i){var Q=e.pstyle("ghost").value==="yes";if(Q){var ee=e.pstyle("ghost-offset-x").pfValue,te=e.pstyle("ghost-offset-y").pfValue;Nl(s,s.x1+ee,s.y1+te,s.x2+ee,s.y2+te)}}var re=l.bodyBounds=l.bodyBounds||{};bse(re,s),Fk(re,v),Bk(re,1),i&&(f=s.x1,d=s.x2,p=s.y1,m=s.y2,Nl(s,f-A,p-A,d+A,m+A));var he=l.overlayBounds=l.overlayBounds||{};bse(he,s),Fk(he,v),Bk(he,1);var J=l.labelBounds=l.labelBounds||{};J.all!=null?NFe(J.all):J.all=Us(),i&&r.includeLabels&&(r.includeMainLabels&&dN(s,e,null),h&&(r.includeSourceLabels&&dN(s,e,"source"),r.includeTargetLabels&&dN(s,e,"target")))}return s.x1=Xo(s.x1),s.y1=Xo(s.y1),s.x2=Xo(s.x2),s.y2=Xo(s.y2),s.w=Xo(s.x2-s.x1),s.h=Xo(s.y2-s.y1),s.w>0&&s.h>0&&T&&(Fk(s,v),Bk(s,1)),s},"boundingBoxImpl"),Sle=o(function(e){var r=0,n=o(function(s){return(s?1:0)<<r++},"tf"),i=0;return i+=n(e.incudeNodes),i+=n(e.includeEdges),i+=n(e.includeLabels),i+=n(e.includeMainLabels),i+=n(e.includeSourceLabels),i+=n(e.includeTargetLabels),i+=n(e.includeOverlays),i+=n(e.includeOutlines),i},"getKey"),Cle=o(function(e){if(e.isEdge()){var r=e.source().position(),n=e.target().position(),i=o(function(s){return Math.round(s)},"r");return JBe([i(r.x),i(r.y),i(n.x),i(n.y)])}else return 0},"getBoundingBoxPosKey"),Vse=o(function(e,r){var n=e._private,i,a=e.isEdge(),s=r==null?Use:Sle(r),l=s===Use,u=Cle(e),h=n.bbCachePosKey===u,f=r.useCache&&h,d=o(function(y){return y._private.bbCache==null||y._private.styleDirty},"isDirty"),p=!f||d(e)||a&&(d(e.source())||d(e.target()));if(p?(h||e.recalculateRenderedStyle(f),i=dVe(e,dx),n.bbCache=i,n.bbCachePosKey=u):i=n.bbCache,!l){var m=e.isNode();i=Us(),(r.includeNodes&&m||r.includeEdges&&!m)&&(r.includeOverlays?hp(i,n.overlayBounds):hp(i,n.bodyBounds)),r.includeLabels&&(r.includeMainLabels&&(!a||r.includeSourceLabels&&r.includeTargetLabels)?hp(i,n.labelBounds.all):(r.includeMainLabels&&hp(i,n.labelBounds.mainRot),r.includeSourceLabels&&hp(i,n.labelBounds.sourceRot),r.includeTargetLabels&&hp(i,n.labelBounds.targetRot))),i.w=i.x2-i.x1,i.h=i.y2-i.y1}return i},"cachedBoundingBoxImpl"),dx={includeNodes:!0,includeEdges:!0,includeLabels:!0,includeMainLabels:!0,includeSourceLabels:!0,includeTargetLabels:!0,includeOverlays:!0,includeUnderlays:!0,includeOutlines:!0,useCache:!0},Use=Sle(dx),Hse=na(dx);Sf.boundingBox=function(t){var e;if(this.length===1&&this[0]._private.bbCache!=null&&!this[0]._private.styleDirty&&(t===void 0||t.useCache===void 0||t.useCache===!0))t===void 0?t=dx:t=Hse(t),e=Vse(this[0],t);else{e=Us(),t=t||dx;var r=Hse(t),n=this,i=n.cy(),a=i.styleEnabled();if(a)for(var s=0;s<n.length;s++){var l=n[s],u=l._private,h=Cle(l),f=u.bbCachePosKey===h,d=r.useCache&&f&&!u.styleDirty;l.recalculateRenderedStyle(d)}this.updateCompoundBounds(!t.useCache);for(var p=0;p<n.length;p++){var m=n[p];hp(e,Vse(m,r))}}return e.x1=Xo(e.x1),e.y1=Xo(e.y1),e.x2=Xo(e.x2),e.y2=Xo(e.y2),e.w=Xo(e.x2-e.x1),e.h=Xo(e.y2-e.y1),e};Sf.dirtyBoundingBoxCache=function(){for(var t=0;t<this.length;t++){var e=this[t]._private;e.bbCache=null,e.bbCachePosKey=null,e.bodyBounds=null,e.overlayBounds=null,e.labelBounds.all=null,e.labelBounds.source=null,e.labelBounds.target=null,e.labelBounds.main=null,e.labelBounds.sourceRot=null,e.labelBounds.targetRot=null,e.labelBounds.mainRot=null,e.arrowBounds.source=null,e.arrowBounds.target=null,e.arrowBounds["mid-source"]=null,e.arrowBounds["mid-target"]=null}return this.emitAndNotify("bounds"),this};Sf.boundingBoxAt=function(t){var e=this.nodes(),r=this.cy(),n=r.hasCompoundNodes(),i=r.collection();if(n&&(i=e.filter(function(h){return h.isParent()}),e=e.not(i)),Vr(t)){var a=t;t=o(function(){return a},"fn")}var s=o(function(f,d){return f._private.bbAtOldPos=t(f,d)},"storeOldPos"),l=o(function(f){return f._private.bbAtOldPos},"getOldPos");r.startBatch(),e.forEach(s).silentPositions(t),n&&(i.dirtyCompoundBoundsCache(),i.dirtyBoundingBoxCache(),i.updateCompoundBounds(!0));var u=RFe(this.boundingBox({useCache:!1}));return e.silentPositions(l),n&&(i.dirtyCompoundBoundsCache(),i.dirtyBoundingBoxCache(),i.updateCompoundBounds(!0)),r.endBatch(),u};eg.boundingbox=eg.bb=eg.boundingBox;eg.renderedBoundingbox=eg.renderedBoundingBox;pVe=Sf;J2=Tx={};Ale=o(function(e){e.uppercaseName=dse(e.name),e.autoName="auto"+e.uppercaseName,e.labelName="label"+e.uppercaseName,e.outerName="outer"+e.uppercaseName,e.uppercaseOuterName=dse(e.outerName),J2[e.name]=o(function(){var n=this[0],i=n._private,a=i.cy,s=a._private.styleEnabled;if(n)if(s){if(n.isParent())return n.updateCompoundBounds(),i[e.autoName]||0;var l=n.pstyle(e.name);switch(l.strValue){case"label":return n.recalculateRenderedStyle(),i.rstyle[e.labelName]||0;default:return l.pfValue}}else return 1},"dimImpl"),J2["outer"+e.uppercaseName]=o(function(){var n=this[0],i=n._private,a=i.cy,s=a._private.styleEnabled;if(n)if(s){var l=n[e.name](),u=n.pstyle("border-width").pfValue,h=2*n.padding();return l+u+h}else return 1},"outerDimImpl"),J2["rendered"+e.uppercaseName]=o(function(){var n=this[0];if(n){var i=n[e.name]();return i*this.cy().zoom()}},"renderedDimImpl"),J2["rendered"+e.uppercaseOuterName]=o(function(){var n=this[0];if(n){var i=n[e.outerName]();return i*this.cy().zoom()}},"renderedOuterDimImpl")},"defineDimFns");Ale({name:"width"});Ale({name:"height"});Tx.padding=function(){var t=this[0],e=t._private;return t.isParent()?(t.updateCompoundBounds(),e.autoPadding!==void 0?e.autoPadding:t.pstyle("padding").pfValue):t.pstyle("padding").pfValue};Tx.paddedHeight=function(){var t=this[0];return t.height()+2*t.padding()};Tx.paddedWidth=function(){var t=this[0];return t.width()+2*t.padding()};mVe=Tx,gVe=o(function(e,r){if(e.isEdge())return r(e)},"ifEdge"),yVe=o(function(e,r){if(e.isEdge()){var n=e.cy();return oE(r(e),n.zoom(),n.pan())}},"ifEdgeRenderedPosition"),vVe=o(function(e,r){if(e.isEdge()){var n=e.cy(),i=n.pan(),a=n.zoom();return r(e).map(function(s){return oE(s,a,i)})}},"ifEdgeRenderedPositions"),xVe=o(function(e){return e.renderer().getControlPoints(e)},"controlPoints"),bVe=o(function(e){return e.renderer().getSegmentPoints(e)},"segmentPoints"),TVe=o(function(e){return e.renderer().getSourceEndpoint(e)},"sourceEndpoint"),wVe=o(function(e){return e.renderer().getTargetEndpoint(e)},"targetEndpoint"),kVe=o(function(e){return e.renderer().getEdgeMidpoint(e)},"midpoint"),Wse={controlPoints:{get:xVe,mult:!0},segmentPoints:{get:bVe,mult:!0},sourceEndpoint:{get:TVe},targetEndpoint:{get:wVe},midpoint:{get:kVe}},EVe=o(function(e){return"rendered"+e[0].toUpperCase()+e.substr(1)},"renderedName"),SVe=Object.keys(Wse).reduce(function(t,e){var r=Wse[e],n=EVe(e);return t[e]=function(){return gVe(this,r.get)},r.mult?t[n]=function(){return vVe(this,r.get)}:t[n]=function(){return yVe(this,r.get)},t},{}),CVe=ir({},hVe,pVe,mVe,SVe);_le=o(function(e,r){this.recycle(e,r)},"Event");o(q2,"returnFalse");o(Lk,"returnTrue");_le.prototype={instanceString:o(function(){return"event"},"instanceString"),recycle:o(function(e,r){if(this.isImmediatePropagationStopped=this.isPropagationStopped=this.isDefaultPrevented=q2,e!=null&&e.preventDefault?(this.type=e.type,this.isDefaultPrevented=e.defaultPrevented?Lk:q2):e!=null&&e.type?r=e:this.type=e,r!=null&&(this.originalEvent=r.originalEvent,this.type=r.type!=null?r.type:this.type,this.cy=r.cy,this.target=r.target,this.position=r.position,this.renderedPosition=r.renderedPosition,this.namespace=r.namespace,this.layout=r.layout),this.cy!=null&&this.position!=null&&this.renderedPosition==null){var n=this.position,i=this.cy.zoom(),a=this.cy.pan();this.renderedPosition={x:n.x*i+a.x,y:n.y*i+a.y}}this.timeStamp=e&&e.timeStamp||Date.now()},"recycle"),preventDefault:o(function(){this.isDefaultPrevented=Lk;var e=this.originalEvent;e&&e.preventDefault&&e.preventDefault()},"preventDefault"),stopPropagation:o(function(){this.isPropagationStopped=Lk;var e=this.originalEvent;e&&e.stopPropagation&&e.stopPropagation()},"stopPropagation"),stopImmediatePropagation:o(function(){this.isImmediatePropagationStopped=Lk,this.stopPropagation()},"stopImmediatePropagation"),isDefaultPrevented:q2,isPropagationStopped:q2,isImmediatePropagationStopped:q2};Dle=/^([^.]+)(\.(?:[^.]+))?$/,AVe=".*",Lle={qualifierCompare:o(function(e,r){return e===r},"qualifierCompare"),eventMatches:o(function(){return!0},"eventMatches"),addEventFields:o(function(){},"addEventFields"),callbackContext:o(function(e){return e},"callbackContext"),beforeEmit:o(function(){},"beforeEmit"),afterEmit:o(function(){},"afterEmit"),bubble:o(function(){return!1},"bubble"),parent:o(function(){return null},"parent"),context:null},qse=Object.keys(Lle),_Ve={};o(dE,"Emitter");wf=dE.prototype,Rle=o(function(e,r,n,i,a,s,l){li(i)&&(a=i,i=null),l&&(s==null?s=l:s=ir({},s,l));for(var u=kn(n)?n:n.split(/\s+/),h=0;h<u.length;h++){var f=u[h];if(!yf(f)){var d=f.match(Dle);if(d){var p=d[1],m=d[2]?d[2]:null,g=r(e,f,p,m,i,a,s);if(g===!1)break}}}},"forEachEvent"),Yse=o(function(e,r){return e.addEventFields(e.context,r),new _le(r.type,r)},"makeEventObj"),DVe=o(function(e,r,n){if(KPe(n)){r(e,n);return}else if(Vr(n)){r(e,Yse(e,n));return}for(var i=kn(n)?n:n.split(/\s+/),a=0;a<i.length;a++){var s=i[a];if(!yf(s)){var l=s.match(Dle);if(l){var u=l[1],h=l[2]?l[2]:null,f=Yse(e,{type:u,namespace:h,target:e.context});r(e,f)}}}},"forEachEventObj");wf.on=wf.addListener=function(t,e,r,n,i){return Rle(this,function(a,s,l,u,h,f,d){li(f)&&a.listeners.push({event:s,callback:f,type:l,namespace:u,qualifier:h,conf:d})},t,e,r,n,i),this};wf.one=function(t,e,r,n){return this.on(t,e,r,n,{one:!0})};wf.removeListener=wf.off=function(t,e,r,n){var i=this;this.emitting!==0&&(this.listeners=iFe(this.listeners));for(var a=this.listeners,s=o(function(h){var f=a[h];Rle(i,function(d,p,m,g,y,x){if((f.type===m||t==="*")&&(!g&&f.namespace!==".*"||f.namespace===g)&&(!y||d.qualifierCompare(f.qualifier,y))&&(!x||f.callback===x))return a.splice(h,1),!1},t,e,r,n)},"_loop"),l=a.length-1;l>=0;l--)s(l);return this};wf.removeAllListeners=function(){return this.removeListener("*")};wf.emit=wf.trigger=function(t,e,r){var n=this.listeners,i=n.length;return this.emitting++,kn(e)||(e=[e]),DVe(this,function(a,s){r!=null&&(n=[{event:s.event,type:s.type,namespace:s.namespace,callback:r}],i=n.length);for(var l=o(function(f){var d=n[f];if(d.type===s.type&&(!d.namespace||d.namespace===s.namespace||d.namespace===AVe)&&a.eventMatches(a.context,d,s)){var p=[s];e!=null&&sFe(p,e),a.beforeEmit(a.context,d,s),d.conf&&d.conf.one&&(a.listeners=a.listeners.filter(function(y){return y!==d}));var m=a.callbackContext(a.context,d,s),g=d.callback.apply(m,p);a.afterEmit(a.context,d,s),g===!1&&(s.stopPropagation(),s.preventDefault())}},"_loop2"),u=0;u<i;u++)l(u);a.bubble(a.context)&&!s.isPropagationStopped()&&a.parent(a.context).emit(s,e)},t),this.emitting--,this};LVe={qualifierCompare:o(function(e,r){return e==null||r==null?e==null&&r==null:e.sameText(r)},"qualifierCompare"),eventMatches:o(function(e,r,n){var i=r.qualifier;return i!=null?e!==n.target&&yx(n.target)&&i.matches(n.target):!0},"eventMatches"),addEventFields:o(function(e,r){r.cy=e.cy(),r.target=e},"addEventFields"),callbackContext:o(function(e,r,n){return r.qualifier!=null?n.target:e},"callbackContext"),beforeEmit:o(function(e,r){r.conf&&r.conf.once&&r.conf.onceCollection.removeListener(r.event,r.qualifier,r.callback)},"beforeEmit"),bubble:o(function(){return!0},"bubble"),parent:o(function(e){return e.isChild()?e.parent():e.cy()},"parent")},Rk=o(function(e){return Jt(e)?new bf(e):e},"argSelector"),Nle={createEmitter:o(function(){for(var e=0;e<this.length;e++){var r=this[e],n=r._private;n.emitter||(n.emitter=new dE(LVe,r))}return this},"createEmitter"),emitter:o(function(){return this._private.emitter},"emitter"),on:o(function(e,r,n){for(var i=Rk(r),a=0;a<this.length;a++){var s=this[a];s.emitter().on(e,i,n)}return this},"on"),removeListener:o(function(e,r,n){for(var i=Rk(r),a=0;a<this.length;a++){var s=this[a];s.emitter().removeListener(e,i,n)}return this},"removeListener"),removeAllListeners:o(function(){for(var e=0;e<this.length;e++){var r=this[e];r.emitter().removeAllListeners()}return this},"removeAllListeners"),one:o(function(e,r,n){for(var i=Rk(r),a=0;a<this.length;a++){var s=this[a];s.emitter().one(e,i,n)}return this},"one"),once:o(function(e,r,n){for(var i=Rk(r),a=0;a<this.length;a++){var s=this[a];s.emitter().on(e,i,n,{once:!0,onceCollection:this})}},"once"),emit:o(function(e,r){for(var n=0;n<this.length;n++){var i=this[n];i.emitter().emit(e,r)}return this},"emit"),emitAndNotify:o(function(e,r){if(this.length!==0)return this.cy().notify(e,this),this.emit(e,r),this},"emitAndNotify")};on.eventAliasesOn(Nle);Mle={nodes:o(function(e){return this.filter(function(r){return r.isNode()}).filter(e)},"nodes"),edges:o(function(e){return this.filter(function(r){return r.isEdge()}).filter(e)},"edges"),byGroup:o(function(){for(var e=this.spawn(),r=this.spawn(),n=0;n<this.length;n++){var i=this[n];i.isNode()?e.push(i):r.push(i)}return{nodes:e,edges:r}},"byGroup"),filter:o(function(e,r){if(e===void 0)return this;if(Jt(e)||ho(e))return new bf(e).filter(this);if(li(e)){for(var n=this.spawn(),i=this,a=0;a<i.length;a++){var s=i[a],l=r?e.apply(r,[s,a,i]):e(s,a,i);l&&n.push(s)}return n}return this.spawn()},"filter"),not:o(function(e){if(e){Jt(e)&&(e=this.filter(e));for(var r=this.spawn(),n=0;n<this.length;n++){var i=this[n],a=e.has(i);a||r.push(i)}return r}else return this},"not"),absoluteComplement:o(function(){var e=this.cy();return e.mutableElements().not(this)},"absoluteComplement"),intersect:o(function(e){if(Jt(e)){var r=e;return this.filter(r)}for(var n=this.spawn(),i=this,a=e,s=this.length<e.length,l=s?i:a,u=s?a:i,h=0;h<l.length;h++){var f=l[h];u.has(f)&&n.push(f)}return n},"intersect"),xor:o(function(e){var r=this._private.cy;Jt(e)&&(e=r.$(e));var n=this.spawn(),i=this,a=e,s=o(function(u,h){for(var f=0;f<u.length;f++){var d=u[f],p=d._private.data.id,m=h.hasElementWithId(p);m||n.push(d)}},"add");return s(i,a),s(a,i),n},"xor"),diff:o(function(e){var r=this._private.cy;Jt(e)&&(e=r.$(e));var n=this.spawn(),i=this.spawn(),a=this.spawn(),s=this,l=e,u=o(function(f,d,p){for(var m=0;m<f.length;m++){var g=f[m],y=g._private.data.id,x=d.hasElementWithId(y);x?a.merge(g):p.push(g)}},"add");return u(s,l,n),u(l,s,i),{left:n,right:i,both:a}},"diff"),add:o(function(e){var r=this._private.cy;if(!e)return this;if(Jt(e)){var n=e;e=r.mutableElements().filter(n)}for(var i=this.spawnSelf(),a=0;a<e.length;a++){var s=e[a],l=!this.has(s);l&&i.push(s)}return i},"add"),merge:o(function(e){var r=this._private,n=r.cy;if(!e)return this;if(e&&Jt(e)){var i=e;e=n.mutableElements().filter(i)}for(var a=r.map,s=0;s<e.length;s++){var l=e[s],u=l._private.data.id,h=!a.has(u);if(h){var f=this.length++;this[f]=l,a.set(u,{ele:l,index:f})}}return this},"merge"),unmergeAt:o(function(e){var r=this[e],n=r.id(),i=this._private,a=i.map;this[e]=void 0,a.delete(n);var s=e===this.length-1;if(this.length>1&&!s){var l=this.length-1,u=this[l],h=u._private.data.id;this[l]=void 0,this[e]=u,a.set(h,{ele:u,index:e})}return this.length--,this},"unmergeAt"),unmergeOne:o(function(e){e=e[0];var r=this._private,n=e._private.data.id,i=r.map,a=i.get(n);if(!a)return this;var s=a.index;return this.unmergeAt(s),this},"unmergeOne"),unmerge:o(function(e){var r=this._private.cy;if(!e)return this;if(e&&Jt(e)){var n=e;e=r.mutableElements().filter(n)}for(var i=0;i<e.length;i++)this.unmergeOne(e[i]);return this},"unmerge"),unmergeBy:o(function(e){for(var r=this.length-1;r>=0;r--){var n=this[r];e(n)&&this.unmergeAt(r)}return this},"unmergeBy"),map:o(function(e,r){for(var n=[],i=this,a=0;a<i.length;a++){var s=i[a],l=r?e.apply(r,[s,a,i]):e(s,a,i);n.push(l)}return n},"map"),reduce:o(function(e,r){for(var n=r,i=this,a=0;a<i.length;a++)n=e(n,i[a],a,i);return n},"reduce"),max:o(function(e,r){for(var n=-1/0,i,a=this,s=0;s<a.length;s++){var l=a[s],u=r?e.apply(r,[l,s,a]):e(l,s,a);u>n&&(n=u,i=l)}return{value:n,ele:i}},"max"),min:o(function(e,r){for(var n=1/0,i,a=this,s=0;s<a.length;s++){var l=a[s],u=r?e.apply(r,[l,s,a]):e(l,s,a);u<n&&(n=u,i=l)}return{value:n,ele:i}},"min")},jr=Mle;jr.u=jr["|"]=jr["+"]=jr.union=jr.or=jr.add;jr["\\"]=jr["!"]=jr["-"]=jr.difference=jr.relativeComplement=jr.subtract=jr.not;jr.n=jr["&"]=jr["."]=jr.and=jr.intersection=jr.intersect;jr["^"]=jr["(+)"]=jr["(-)"]=jr.symmetricDifference=jr.symdiff=jr.xor;jr.fnFilter=jr.filterFn=jr.stdFilter=jr.filter;jr.complement=jr.abscomp=jr.absoluteComplement;RVe={isNode:o(function(){return this.group()==="nodes"},"isNode"),isEdge:o(function(){return this.group()==="edges"},"isEdge"),isLoop:o(function(){return this.isEdge()&&this.source()[0]===this.target()[0]},"isLoop"),isSimple:o(function(){return this.isEdge()&&this.source()[0]!==this.target()[0]},"isSimple"),group:o(function(){var e=this[0];if(e)return e._private.group},"group")},Ile=o(function(e,r){var n=e.cy(),i=n.hasCompoundNodes();function a(f){var d=f.pstyle("z-compound-depth");return d.value==="auto"?i?f.zDepth():0:d.value==="bottom"?-1:d.value==="top"?VN:0}o(a,"getDepth");var s=a(e)-a(r);if(s!==0)return s;function l(f){var d=f.pstyle("z-index-compare");return d.value==="auto"&&f.isNode()?1:0}o(l,"getEleDepth");var u=l(e)-l(r);if(u!==0)return u;var h=e.pstyle("z-index").value-r.pstyle("z-index").value;return h!==0?h:e.poolIndex()-r.poolIndex()},"zIndexSort"),Zk={forEach:o(function(e,r){if(li(e))for(var n=this.length,i=0;i<n;i++){var a=this[i],s=r?e.apply(r,[a,i,this]):e(a,i,this);if(s===!1)break}return this},"forEach"),toArray:o(function(){for(var e=[],r=0;r<this.length;r++)e.push(this[r]);return e},"toArray"),slice:o(function(e,r){var n=[],i=this.length;r==null&&(r=i),e==null&&(e=0),e<0&&(e=i+e),r<0&&(r=i+r);for(var a=e;a>=0&&a<r&&a<i;a++)n.push(this[a]);return this.spawn(n)},"slice"),size:o(function(){return this.length},"size"),eq:o(function(e){return this[e]||this.spawn()},"eq"),first:o(function(){return this[0]||this.spawn()},"first"),last:o(function(){return this[this.length-1]||this.spawn()},"last"),empty:o(function(){return this.length===0},"empty"),nonempty:o(function(){return!this.empty()},"nonempty"),sort:o(function(e){if(!li(e))return this;var r=this.toArray().sort(e);return this.spawn(r)},"sort"),sortByZIndex:o(function(){return this.sort(Ile)},"sortByZIndex"),zDepth:o(function(){var e=this[0];if(e){var r=e._private,n=r.group;if(n==="nodes"){var i=r.data.parent?e.parents().size():0;return e.isParent()?i:VN-1}else{var a=r.source,s=r.target,l=a.zDepth(),u=s.zDepth();return Math.max(l,u,0)}}},"zDepth")};Zk.each=Zk.forEach;NVe=o(function(){var e="undefined",r=(typeof Symbol>"u"?"undefined":zi(Symbol))!=e&&zi(Symbol.iterator)!=e;r&&(Zk[Symbol.iterator]=function(){var n=this,i={value:void 0,done:!1},a=0,s=this.length;return Loe({next:o(function(){return a<s?i.value=n[a++]:(i.value=void 0,i.done=!0),i},"next")},Symbol.iterator,function(){return this})})},"defineSymbolIterator");NVe();MVe=na({nodeDimensionsIncludeLabels:!1}),Gk={layoutDimensions:o(function(e){e=MVe(e);var r;if(!this.takesUpSpace())r={w:0,h:0};else if(e.nodeDimensionsIncludeLabels){var n=this.boundingBox();r={w:n.w,h:n.h}}else r={w:this.outerWidth(),h:this.outerHeight()};return(r.w===0||r.h===0)&&(r.w=r.h=1),r},"layoutDimensions"),layoutPositions:o(function(e,r,n){var i=this.nodes().filter(function(w){return!w.isParent()}),a=this.cy(),s=r.eles,l=o(function(E){return E.id()},"getMemoizeKey"),u=ax(n,l);e.emit({type:"layoutstart",layout:e}),e.animations=[];var h=o(function(E,_,A){var D={x:_.x1+_.w/2,y:_.y1+_.h/2},O={x:(A.x-D.x)*E,y:(A.y-D.y)*E};return{x:D.x+O.x,y:D.y+O.y}},"calculateSpacing"),f=r.spacingFactor&&r.spacingFactor!==1,d=o(function(){if(!f)return null;for(var E=Us(),_=0;_<i.length;_++){var A=i[_],D=u(A,_);IFe(E,D.x,D.y)}return E},"spacingBb"),p=d(),m=ax(function(w,E){var _=u(w,E);if(f){var A=Math.abs(r.spacingFactor);_=h(A,p,_)}return r.transform!=null&&(_=r.transform(w,_)),_},l);if(r.animate){for(var g=0;g<i.length;g++){var y=i[g],x=m(y,g),v=r.animateFilter==null||r.animateFilter(y,g);if(v){var b=y.animation({position:x,duration:r.animationDuration,easing:r.animationEasing});e.animations.push(b)}else y.position(x)}if(r.fit){var T=a.animation({fit:{boundingBox:s.boundingBoxAt(m),padding:r.padding},duration:r.animationDuration,easing:r.animationEasing});e.animations.push(T)}else if(r.zoom!==void 0&&r.pan!==void 0){var S=a.animation({zoom:r.zoom,pan:r.pan,duration:r.animationDuration,easing:r.animationEasing});e.animations.push(S)}e.animations.forEach(function(w){return w.play()}),e.one("layoutready",r.ready),e.emit({type:"layoutready",layout:e}),sg.all(e.animations.map(function(w){return w.promise()})).then(function(){e.one("layoutstop",r.stop),e.emit({type:"layoutstop",layout:e})})}else i.positions(m),r.fit&&a.fit(r.eles,r.padding),r.zoom!=null&&a.zoom(r.zoom),r.pan&&a.pan(r.pan),e.one("layoutready",r.ready),e.emit({type:"layoutready",layout:e}),e.one("layoutstop",r.stop),e.emit({type:"layoutstop",layout:e});return this},"layoutPositions"),layout:o(function(e){var r=this.cy();return r.makeLayout(ir({},e,{eles:this}))},"layout")};Gk.createLayout=Gk.makeLayout=Gk.layout;o(Ole,"styleCache");o(pE,"cacheStyleFunction");o(mE,"cachePrototypeStyleFunction");ya={recalculateRenderedStyle:o(function(e){var r=this.cy(),n=r.renderer(),i=r.styleEnabled();return n&&i&&n.recalculateRenderedStyle(this,e),this},"recalculateRenderedStyle"),dirtyStyleCache:o(function(){var e=this.cy(),r=o(function(a){return a._private.styleCache=null},"dirty");if(e.hasCompoundNodes()){var n;n=this.spawnSelf().merge(this.descendants()).merge(this.parents()),n.merge(n.connectedEdges()),n.forEach(r)}else this.forEach(function(i){r(i),i.connectedEdges().forEach(r)});return this},"dirtyStyleCache"),updateStyle:o(function(e){var r=this._private.cy;if(!r.styleEnabled())return this;if(r.batching()){var n=r._private.batchStyleEles;return n.merge(this),this}var i=r.hasCompoundNodes(),a=this;e=!!(e||e===void 0),i&&(a=this.spawnSelf().merge(this.descendants()).merge(this.parents()));var s=a;return e?s.emitAndNotify("style"):s.emit("style"),a.forEach(function(l){return l._private.styleDirty=!0}),this},"updateStyle"),cleanStyle:o(function(){var e=this.cy();if(e.styleEnabled())for(var r=0;r<this.length;r++){var n=this[r];n._private.styleDirty&&(n._private.styleDirty=!1,e.style().apply(n))}},"cleanStyle"),parsedStyle:o(function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,n=this[0],i=n.cy();if(i.styleEnabled()&&n){n._private.styleDirty&&(n._private.styleDirty=!1,i.style().apply(n));var a=n._private.style[e];return a??(r?i.style().getDefaultProperty(e):null)}},"parsedStyle"),numericStyle:o(function(e){var r=this[0];if(r.cy().styleEnabled()&&r){var n=r.pstyle(e);return n.pfValue!==void 0?n.pfValue:n.value}},"numericStyle"),numericStyleUnits:o(function(e){var r=this[0];if(r.cy().styleEnabled()&&r)return r.pstyle(e).units},"numericStyleUnits"),renderedStyle:o(function(e){var r=this.cy();if(!r.styleEnabled())return this;var n=this[0];if(n)return r.style().getRenderedStyle(n,e)},"renderedStyle"),style:o(function(e,r){var n=this.cy();if(!n.styleEnabled())return this;var i=!1,a=n.style();if(Vr(e)){var s=e;a.applyBypass(this,s,i),this.emitAndNotify("style")}else if(Jt(e))if(r===void 0){var l=this[0];return l?a.getStylePropertyValue(l,e):void 0}else a.applyBypass(this,e,r,i),this.emitAndNotify("style");else if(e===void 0){var u=this[0];return u?a.getRawStyle(u):void 0}return this},"style"),removeStyle:o(function(e){var r=this.cy();if(!r.styleEnabled())return this;var n=!1,i=r.style(),a=this;if(e===void 0)for(var s=0;s<a.length;s++){var l=a[s];i.removeAllBypasses(l,n)}else{e=e.split(/\s+/);for(var u=0;u<a.length;u++){var h=a[u];i.removeBypasses(h,e,n)}}return this.emitAndNotify("style"),this},"removeStyle"),show:o(function(){return this.css("display","element"),this},"show"),hide:o(function(){return this.css("display","none"),this},"hide"),effectiveOpacity:o(function(){var e=this.cy();if(!e.styleEnabled())return 1;var r=e.hasCompoundNodes(),n=this[0];if(n){var i=n._private,a=n.pstyle("opacity").value;if(!r)return a;var s=i.data.parent?n.parents():null;if(s)for(var l=0;l<s.length;l++){var u=s[l],h=u.pstyle("opacity").value;a=h*a}return a}},"effectiveOpacity"),transparent:o(function(){var e=this.cy();if(!e.styleEnabled())return!1;var r=this[0],n=r.cy().hasCompoundNodes();if(r)return n?r.effectiveOpacity()===0:r.pstyle("opacity").value===0},"transparent"),backgrounding:o(function(){var e=this.cy();if(!e.styleEnabled())return!1;var r=this[0];return!!r._private.backgrounding},"backgrounding")};o(pN,"checkCompound");o(eM,"defineDerivedStateFunction");ug=pE("eleTakesUpSpace",function(t){return t.pstyle("display").value==="element"&&t.width()!==0&&(t.isNode()?t.height()!==0:!0)});ya.takesUpSpace=mE("takesUpSpace",eM({ok:ug}));IVe=pE("eleInteractive",function(t){return t.pstyle("events").value==="yes"&&t.pstyle("visibility").value==="visible"&&ug(t)}),OVe=pE("parentInteractive",function(t){return t.pstyle("visibility").value==="visible"&&ug(t)});ya.interactive=mE("interactive",eM({ok:IVe,parentOk:OVe,edgeOkViaNode:ug}));ya.noninteractive=function(){var t=this[0];if(t)return!t.interactive()};PVe=pE("eleVisible",function(t){return t.pstyle("visibility").value==="visible"&&t.pstyle("opacity").pfValue!==0&&ug(t)}),BVe=ug;ya.visible=mE("visible",eM({ok:PVe,edgeOkViaNode:BVe}));ya.hidden=function(){var t=this[0];if(t)return!t.visible()};ya.isBundledBezier=mE("isBundledBezier",function(){return this.cy().styleEnabled()?!this.removed()&&this.pstyle("curve-style").value==="bezier"&&this.takesUpSpace():!1});ya.bypass=ya.css=ya.style;ya.renderedCss=ya.renderedStyle;ya.removeBypass=ya.removeCss=ya.removeStyle;ya.pstyle=ya.parsedStyle;gf={};o(Xse,"defineSwitchFunction");o(hg,"defineSwitchSet");hg({field:"locked",overrideField:o(function(e){return e.cy().autolock()?!0:void 0},"overrideField"),on:"lock",off:"unlock"});hg({field:"grabbable",overrideField:o(function(e){return e.cy().autoungrabify()||e.pannable()?!1:void 0},"overrideField"),on:"grabify",off:"ungrabify"});hg({field:"selected",ableField:"selectable",overrideAble:o(function(e){return e.cy().autounselectify()?!1:void 0},"overrideAble"),on:"select",off:"unselect"});hg({field:"selectable",overrideField:o(function(e){return e.cy().autounselectify()?!1:void 0},"overrideField"),on:"selectify",off:"unselectify"});gf.deselect=gf.unselect;gf.grabbed=function(){var t=this[0];if(t)return t._private.grabbed};hg({field:"active",on:"activate",off:"unactivate"});hg({field:"pannable",on:"panify",off:"unpanify"});gf.inactive=function(){var t=this[0];if(t)return!t._private.active};Pa={},jse=o(function(e){return o(function(n){for(var i=this,a=[],s=0;s<i.length;s++){var l=i[s];if(l.isNode()){for(var u=!1,h=l.connectedEdges(),f=0;f<h.length;f++){var d=h[f],p=d.source(),m=d.target();if(e.noIncomingEdges&&m===l&&p!==l||e.noOutgoingEdges&&p===l&&m!==l){u=!0;break}}u||a.push(l)}}return this.spawn(a,!0).filter(n)},"dagExtremityImpl")},"defineDagExtremity"),Kse=o(function(e){return function(r){for(var n=this,i=[],a=0;a<n.length;a++){var s=n[a];if(s.isNode())for(var l=s.connectedEdges(),u=0;u<l.length;u++){var h=l[u],f=h.source(),d=h.target();e.outgoing&&f===s?(i.push(h),i.push(d)):e.incoming&&d===s&&(i.push(h),i.push(f))}}return this.spawn(i,!0).filter(r)}},"defineDagOneHop"),Qse=o(function(e){return function(r){for(var n=this,i=[],a={};;){var s=e.outgoing?n.outgoers():n.incomers();if(s.length===0)break;for(var l=!1,u=0;u<s.length;u++){var h=s[u],f=h.id();a[f]||(a[f]=!0,i.push(h),l=!0)}if(!l)break;n=s}return this.spawn(i,!0).filter(r)}},"defineDagAllHops");Pa.clearTraversalCache=function(){for(var t=0;t<this.length;t++)this[t]._private.traversalCache=null};ir(Pa,{roots:jse({noIncomingEdges:!0}),leaves:jse({noOutgoingEdges:!0}),outgoers:jo(Kse({outgoing:!0}),"outgoers"),successors:Qse({outgoing:!0}),incomers:jo(Kse({incoming:!0}),"incomers"),predecessors:Qse({incoming:!0})});ir(Pa,{neighborhood:jo(function(t){for(var e=[],r=this.nodes(),n=0;n<r.length;n++)for(var i=r[n],a=i.connectedEdges(),s=0;s<a.length;s++){var l=a[s],u=l.source(),h=l.target(),f=i===u?h:u;f.length>0&&e.push(f[0]),e.push(l[0])}return this.spawn(e,!0).filter(t)},"neighborhood"),closedNeighborhood:o(function(e){return this.neighborhood().add(this).filter(e)},"closedNeighborhood"),openNeighborhood:o(function(e){return this.neighborhood(e)},"openNeighborhood")});Pa.neighbourhood=Pa.neighborhood;Pa.closedNeighbourhood=Pa.closedNeighborhood;Pa.openNeighbourhood=Pa.openNeighborhood;ir(Pa,{source:jo(o(function(e){var r=this[0],n;return r&&(n=r._private.source||r.cy().collection()),n&&e?n.filter(e):n},"sourceImpl"),"source"),target:jo(o(function(e){var r=this[0],n;return r&&(n=r._private.target||r.cy().collection()),n&&e?n.filter(e):n},"targetImpl"),"target"),sources:Zse({attr:"source"}),targets:Zse({attr:"target"})});o(Zse,"defineSourceFunction");ir(Pa,{edgesWith:jo(Jse(),"edgesWith"),edgesTo:jo(Jse({thisIsSrc:!0}),"edgesTo")});o(Jse,"defineEdgesWithFunction");ir(Pa,{connectedEdges:jo(function(t){for(var e=[],r=this,n=0;n<r.length;n++){var i=r[n];if(i.isNode())for(var a=i._private.edges,s=0;s<a.length;s++){var l=a[s];e.push(l)}}return this.spawn(e,!0).filter(t)},"connectedEdges"),connectedNodes:jo(function(t){for(var e=[],r=this,n=0;n<r.length;n++){var i=r[n];i.isEdge()&&(e.push(i.source()[0]),e.push(i.target()[0]))}return this.spawn(e,!0).filter(t)},"connectedNodes"),parallelEdges:jo(eoe(),"parallelEdges"),codirectedEdges:jo(eoe({codirected:!0}),"codirectedEdges")});o(eoe,"defineParallelEdgesFunction");ir(Pa,{components:o(function(e){var r=this,n=r.cy(),i=n.collection(),a=e==null?r.nodes():e.nodes(),s=[];e!=null&&a.empty()&&(a=e.sources());var l=o(function(f,d){i.merge(f),a.unmerge(f),d.merge(f)},"visitInComponent");if(a.empty())return r.spawn();var u=o(function(){var f=n.collection();s.push(f);var d=a[0];l(d,f),r.bfs({directed:!1,roots:d,visit:o(function(m){return l(m,f)},"visit")}),f.forEach(function(p){p.connectedEdges().forEach(function(m){r.has(m)&&f.has(m.source())&&f.has(m.target())&&f.merge(m)})})},"_loop");do u();while(a.length>0);return s},"components"),component:o(function(){var e=this[0];return e.cy().mutableElements().components(e)[0]},"component")});Pa.componentsOf=Pa.components;va=o(function(e,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(e===void 0){oi("A collection must have a reference to the core");return}var a=new Mc,s=!1;if(!r)r=[];else if(r.length>0&&Vr(r[0])&&!yx(r[0])){s=!0;for(var l=[],u=new ag,h=0,f=r.length;h<f;h++){var d=r[h];d.data==null&&(d.data={});var p=d.data;if(p.id==null)p.id=Xoe();else if(e.hasElementWithId(p.id)||u.has(p.id))continue;var m=new sE(e,d,!1);l.push(m),u.add(p.id)}r=l}this.length=0;for(var g=0,y=r.length;g<y;g++){var x=r[g][0];if(x!=null){var v=x._private.data.id;(!n||!a.has(v))&&(n&&a.set(v,{index:this.length,ele:x}),this[this.length]=x,this.length++)}}this._private={eles:this,cy:e,get map(){return this.lazyMap==null&&this.rebuildMap(),this.lazyMap},set map(b){this.lazyMap=b},rebuildMap:o(function(){for(var T=this.lazyMap=new Mc,S=this.eles,w=0;w<S.length;w++){var E=S[w];T.set(E.id(),{index:w,ele:E})}},"rebuildMap")},n&&(this._private.map=a),s&&!i&&this.restore()},"Collection"),Mn=sE.prototype=va.prototype=Object.create(Array.prototype);Mn.instanceString=function(){return"collection"};Mn.spawn=function(t,e){return new va(this.cy(),t,e)};Mn.spawnSelf=function(){return this.spawn(this)};Mn.cy=function(){return this._private.cy};Mn.renderer=function(){return this._private.cy.renderer()};Mn.element=function(){return this[0]};Mn.collection=function(){return Moe(this)?this:new va(this._private.cy,[this])};Mn.unique=function(){return new va(this._private.cy,this,!0)};Mn.hasElementWithId=function(t){return t=""+t,this._private.map.has(t)};Mn.getElementById=function(t){t=""+t;var e=this._private.cy,r=this._private.map.get(t);return r?r.ele:new va(e)};Mn.$id=Mn.getElementById;Mn.poolIndex=function(){var t=this._private.cy,e=t._private.elements,r=this[0]._private.data.id;return e._private.map.get(r).index};Mn.indexOf=function(t){var e=t[0]._private.data.id;return this._private.map.get(e).index};Mn.indexOfId=function(t){return t=""+t,this._private.map.get(t).index};Mn.json=function(t){var e=this.element(),r=this.cy();if(e==null&&t)return this;if(e!=null){var n=e._private;if(Vr(t)){if(r.startBatch(),t.data){e.data(t.data);var i=n.data;if(e.isEdge()){var a=!1,s={},l=t.data.source,u=t.data.target;l!=null&&l!=i.source&&(s.source=""+l,a=!0),u!=null&&u!=i.target&&(s.target=""+u,a=!0),a&&(e=e.move(s))}else{var h="parent"in t.data,f=t.data.parent;h&&(f!=null||i.parent!=null)&&f!=i.parent&&(f===void 0&&(f=null),f!=null&&(f=""+f),e=e.move({parent:f}))}}t.position&&e.position(t.position);var d=o(function(y,x,v){var b=t[y];b!=null&&b!==n[y]&&(b?e[x]():e[v]())},"checkSwitch");return d("removed","remove","restore"),d("selected","select","unselect"),d("selectable","selectify","unselectify"),d("locked","lock","unlock"),d("grabbable","grabify","ungrabify"),d("pannable","panify","unpanify"),t.classes!=null&&e.classes(t.classes),r.endBatch(),this}else if(t===void 0){var p={data:Nc(n.data),position:Nc(n.position),group:n.group,removed:n.removed,selected:n.selected,selectable:n.selectable,locked:n.locked,grabbable:n.grabbable,pannable:n.pannable,classes:null};p.classes="";var m=0;return n.classes.forEach(function(g){return p.classes+=m++===0?g:" "+g}),p}}};Mn.jsons=function(){for(var t=[],e=0;e<this.length;e++){var r=this[e],n=r.json();t.push(n)}return t};Mn.clone=function(){for(var t=this.cy(),e=[],r=0;r<this.length;r++){var n=this[r],i=n.json(),a=new sE(t,i,!1);e.push(a)}return new va(t,e)};Mn.copy=Mn.clone;Mn.restore=function(){for(var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=this,n=r.cy(),i=n._private,a=[],s=[],l,u=0,h=r.length;u<h;u++){var f=r[u];e&&!f.removed()||(f.isNode()?a.push(f):s.push(f))}l=a.concat(s);var d,p=o(function(){l.splice(d,1),d--},"removeFromElements");for(d=0;d<l.length;d++){var m=l[d],g=m._private,y=g.data;if(m.clearTraversalCache(),!(!e&&!g.removed)){if(y.id===void 0)y.id=Xoe();else if(At(y.id))y.id=""+y.id;else if(yf(y.id)||!Jt(y.id)){oi("Can not create element with invalid string ID `"+y.id+"`"),p();continue}else if(n.hasElementWithId(y.id)){oi("Can not create second element with ID `"+y.id+"`"),p();continue}}var x=y.id;if(m.isNode()){var v=g.position;v.x==null&&(v.x=0),v.y==null&&(v.y=0)}if(m.isEdge()){for(var b=m,T=["source","target"],S=T.length,w=!1,E=0;E<S;E++){var _=T[E],A=y[_];At(A)&&(A=y[_]=""+y[_]),A==null||A===""?(oi("Can not create edge `"+x+"` with unspecified "+_),w=!0):n.hasElementWithId(A)||(oi("Can not create edge `"+x+"` with nonexistant "+_+" `"+A+"`"),w=!0)}if(w){p();continue}var D=n.getElementById(y.source),O=n.getElementById(y.target);D.same(O)?D._private.edges.push(b):(D._private.edges.push(b),O._private.edges.push(b)),b._private.source=D,b._private.target=O}g.map=new Mc,g.map.set(x,{ele:m,index:0}),g.removed=!1,e&&n.addToPool(m)}for(var R=0;R<a.length;R++){var k=a[R],L=k._private.data;At(L.parent)&&(L.parent=""+L.parent);var C=L.parent,I=C!=null;if(I||k._private.parent){var M=k._private.parent?n.collection().merge(k._private.parent):n.getElementById(C);if(M.empty())L.parent=void 0;else if(M[0].removed())ln("Node added with missing parent, reference to parent removed"),L.parent=void 0,k._private.parent=null;else{for(var P=!1,B=M;!B.empty();){if(k.same(B)){P=!0,L.parent=void 0;break}B=B.parent()}P||(M[0]._private.children.push(k),k._private.parent=M[0],i.hasCompoundNodes=!0)}}}if(l.length>0){for(var F=l.length===r.length?r:new va(n,l),G=0;G<F.length;G++){var $=F[G];$.isNode()||($.parallelEdges().clearTraversalCache(),$.source().clearTraversalCache(),$.target().clearTraversalCache())}var U;i.hasCompoundNodes?U=n.collection().merge(F).merge(F.connectedNodes()).merge(F.parent()):U=F,U.dirtyCompoundBoundsCache().dirtyBoundingBoxCache().updateStyle(t),t?F.emitAndNotify("add"):e&&F.emit("add")}return r};Mn.removed=function(){var t=this[0];return t&&t._private.removed};Mn.inside=function(){var t=this[0];return t&&!t._private.removed};Mn.remove=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=this,n=[],i={},a=r._private.cy;function s(C){for(var I=C._private.edges,M=0;M<I.length;M++)u(I[M])}o(s,"addConnectedEdges");function l(C){for(var I=C._private.children,M=0;M<I.length;M++)u(I[M])}o(l,"addChildren");function u(C){var I=i[C.id()];e&&C.removed()||I||(i[C.id()]=!0,C.isNode()?(n.push(C),s(C),l(C)):n.unshift(C))}o(u,"add");for(var h=0,f=r.length;h<f;h++){var d=r[h];u(d)}function p(C,I){var M=C._private.edges;xf(M,I),C.clearTraversalCache()}o(p,"removeEdgeRef");function m(C){C.clearTraversalCache()}o(m,"removeParallelRef");var g=[];g.ids={};function y(C,I){I=I[0],C=C[0];var M=C._private.children,P=C.id();xf(M,I),I._private.parent=null,g.ids[P]||(g.ids[P]=!0,g.push(C))}o(y,"removeChildRef"),r.dirtyCompoundBoundsCache(),e&&a.removeFromPool(n);for(var x=0;x<n.length;x++){var v=n[x];if(v.isEdge()){var b=v.source()[0],T=v.target()[0];p(b,v),p(T,v);for(var S=v.parallelEdges(),w=0;w<S.length;w++){var E=S[w];m(E),E.isBundledBezier()&&E.dirtyBoundingBoxCache()}}else{var _=v.parent();_.length!==0&&y(_,v)}e&&(v._private.removed=!0)}var A=a._private.elements;a._private.hasCompoundNodes=!1;for(var D=0;D<A.length;D++){var O=A[D];if(O.isParent()){a._private.hasCompoundNodes=!0;break}}var R=new va(this.cy(),n);R.size()>0&&(t?R.emitAndNotify("remove"):e&&R.emit("remove"));for(var k=0;k<g.length;k++){var L=g[k];(!e||!L.removed())&&L.updateStyle()}return R};Mn.move=function(t){var e=this._private.cy,r=this,n=!1,i=!1,a=o(function(g){return g==null?g:""+g},"toString");if(t.source!==void 0||t.target!==void 0){var s=a(t.source),l=a(t.target),u=s!=null&&e.hasElementWithId(s),h=l!=null&&e.hasElementWithId(l);(u||h)&&(e.batch(function(){r.remove(n,i),r.emitAndNotify("moveout");for(var m=0;m<r.length;m++){var g=r[m],y=g._private.data;g.isEdge()&&(u&&(y.source=s),h&&(y.target=l))}r.restore(n,i)}),r.emitAndNotify("move"))}else if(t.parent!==void 0){var f=a(t.parent),d=f===null||e.hasElementWithId(f);if(d){var p=f===null?void 0:f;e.batch(function(){var m=r.remove(n,i);m.emitAndNotify("moveout");for(var g=0;g<r.length;g++){var y=r[g],x=y._private.data;y.isNode()&&(x.parent=p)}m.restore(n,i)}),r.emitAndNotify("move")}}return this};[ole,Xze,$k,mf,ig,uVe,fE,CVe,Nle,Mle,RVe,Zk,Gk,ya,gf,Pa].forEach(function(t){ir(Mn,t)});FVe={add:o(function(e){var r,n=this;if(ho(e)){var i=e;if(i._private.cy===n)r=i.restore();else{for(var a=[],s=0;s<i.length;s++){var l=i[s];a.push(l.json())}r=new va(n,a)}}else if(kn(e)){var u=e;r=new va(n,u)}else if(Vr(e)&&(kn(e.nodes)||kn(e.edges))){for(var h=e,f=[],d=["nodes","edges"],p=0,m=d.length;p<m;p++){var g=d[p],y=h[g];if(kn(y))for(var x=0,v=y.length;x<v;x++){var b=ir({group:g},y[x]);f.push(b)}}r=new va(n,f)}else{var T=e;r=new sE(n,T).collection()}return r},"add"),remove:o(function(e){if(!ho(e)){if(Jt(e)){var r=e;e=this.$(r)}}return e.remove()},"remove")};o($Ve,"generateCubicBezier");GVe=function(){function t(n){return-n.tension*n.x-n.friction*n.v}o(t,"springAccelerationForState");function e(n,i,a){var s={x:n.x+a.dx*i,v:n.v+a.dv*i,tension:n.tension,friction:n.friction};return{dx:s.v,dv:t(s)}}o(e,"springEvaluateStateWithDerivative");function r(n,i){var a={dx:n.v,dv:t(n)},s=e(n,i*.5,a),l=e(n,i*.5,s),u=e(n,i,l),h=1/6*(a.dx+2*(s.dx+l.dx)+u.dx),f=1/6*(a.dv+2*(s.dv+l.dv)+u.dv);return n.x=n.x+h*i,n.v=n.v+f*i,n}return o(r,"springIntegrateState"),o(function n(i,a,s){var l={x:-1,v:0,tension:null,friction:null},u=[0],h=0,f=1/1e4,d=16/1e3,p,m,g;for(i=parseFloat(i)||500,a=parseFloat(a)||20,s=s||null,l.tension=i,l.friction=a,p=s!==null,p?(h=n(i,a),m=h/s*d):m=d;g=r(g||l,m),u.push(1+g.x),h+=16,Math.abs(g.x)>f&&Math.abs(g.v)>f;);return p?function(y){return u[y*(u.length-1)|0]}:h},"springRK4Factory")}(),Nn=o(function(e,r,n,i){var a=$Ve(e,r,n,i);return function(s,l,u){return s+(l-s)*a(u)}},"cubicBezier"),zk={linear:o(function(e,r,n){return e+(r-e)*n},"linear"),ease:Nn(.25,.1,.25,1),"ease-in":Nn(.42,0,1,1),"ease-out":Nn(0,0,.58,1),"ease-in-out":Nn(.42,0,.58,1),"ease-in-sine":Nn(.47,0,.745,.715),"ease-out-sine":Nn(.39,.575,.565,1),"ease-in-out-sine":Nn(.445,.05,.55,.95),"ease-in-quad":Nn(.55,.085,.68,.53),"ease-out-quad":Nn(.25,.46,.45,.94),"ease-in-out-quad":Nn(.455,.03,.515,.955),"ease-in-cubic":Nn(.55,.055,.675,.19),"ease-out-cubic":Nn(.215,.61,.355,1),"ease-in-out-cubic":Nn(.645,.045,.355,1),"ease-in-quart":Nn(.895,.03,.685,.22),"ease-out-quart":Nn(.165,.84,.44,1),"ease-in-out-quart":Nn(.77,0,.175,1),"ease-in-quint":Nn(.755,.05,.855,.06),"ease-out-quint":Nn(.23,1,.32,1),"ease-in-out-quint":Nn(.86,0,.07,1),"ease-in-expo":Nn(.95,.05,.795,.035),"ease-out-expo":Nn(.19,1,.22,1),"ease-in-out-expo":Nn(1,0,0,1),"ease-in-circ":Nn(.6,.04,.98,.335),"ease-out-circ":Nn(.075,.82,.165,1),"ease-in-out-circ":Nn(.785,.135,.15,.86),spring:o(function(e,r,n){if(n===0)return zk.linear;var i=GVe(e,r,n);return function(a,s,l){return a+(s-a)*i(l)}},"spring"),"cubic-bezier":Nn};o(toe,"getEasedValue");o(roe,"getValue");o(Wm,"ease");o(zVe,"step$1");o(Y2,"valid");o(VVe,"startAnimation");o(noe,"stepAll");UVe={animate:on.animate(),animation:on.animation(),animated:on.animated(),clearQueue:on.clearQueue(),delay:on.delay(),delayAnimation:on.delayAnimation(),stop:on.stop(),addToAnimationPool:o(function(e){var r=this;r.styleEnabled()&&r._private.aniEles.merge(e)},"addToAnimationPool"),stopAnimationLoop:o(function(){this._private.animationsRunning=!1},"stopAnimationLoop"),startAnimationLoop:o(function(){var e=this;if(e._private.animationsRunning=!0,!e.styleEnabled())return;function r(){e._private.animationsRunning&&Yk(o(function(a){noe(a,e),r()},"animationStep"))}o(r,"headlessStep");var n=e.renderer();n&&n.beforeRender?n.beforeRender(o(function(a,s){noe(s,e)},"rendererAnimationStep"),n.beforeRenderPriorities.animations):r()},"startAnimationLoop")},HVe={qualifierCompare:o(function(e,r){return e==null||r==null?e==null&&r==null:e.sameText(r)},"qualifierCompare"),eventMatches:o(function(e,r,n){var i=r.qualifier;return i!=null?e!==n.target&&yx(n.target)&&i.matches(n.target):!0},"eventMatches"),addEventFields:o(function(e,r){r.cy=e,r.target=e},"addEventFields"),callbackContext:o(function(e,r,n){return r.qualifier!=null?n.target:e},"callbackContext")},Nk=o(function(e){return Jt(e)?new bf(e):e},"argSelector"),Ple={createEmitter:o(function(){var e=this._private;return e.emitter||(e.emitter=new dE(HVe,this)),this},"createEmitter"),emitter:o(function(){return this._private.emitter},"emitter"),on:o(function(e,r,n){return this.emitter().on(e,Nk(r),n),this},"on"),removeListener:o(function(e,r,n){return this.emitter().removeListener(e,Nk(r),n),this},"removeListener"),removeAllListeners:o(function(){return this.emitter().removeAllListeners(),this},"removeAllListeners"),one:o(function(e,r,n){return this.emitter().one(e,Nk(r),n),this},"one"),once:o(function(e,r,n){return this.emitter().one(e,Nk(r),n),this},"once"),emit:o(function(e,r){return this.emitter().emit(e,r),this},"emit"),emitAndNotify:o(function(e,r){return this.emit(e),this.notify(e,r),this},"emitAndNotify")};on.eventAliasesOn(Ple);DN={png:o(function(e){var r=this._private.renderer;return e=e||{},r.png(e)},"png"),jpg:o(function(e){var r=this._private.renderer;return e=e||{},e.bg=e.bg||"#fff",r.jpg(e)},"jpg")};DN.jpeg=DN.jpg;Vk={layout:o(function(e){var r=this;if(e==null){oi("Layout options must be specified to make a layout");return}if(e.name==null){oi("A `name` must be specified to make a layout");return}var n=e.name,i=r.extension("layout",n);if(i==null){oi("No such layout `"+n+"` found. Did you forget to import it and `cytoscape.use()` it?");return}var a;Jt(e.eles)?a=r.$(e.eles):a=e.eles!=null?e.eles:r.$();var s=new i(ir({},e,{cy:r,eles:a}));return s},"layout")};Vk.createLayout=Vk.makeLayout=Vk.layout;WVe={notify:o(function(e,r){var n=this._private;if(this.batching()){n.batchNotifications=n.batchNotifications||{};var i=n.batchNotifications[e]=n.batchNotifications[e]||this.collection();r!=null&&i.merge(r);return}if(n.notificationsEnabled){var a=this.renderer();this.destroyed()||!a||a.notify(e,r)}},"notify"),notifications:o(function(e){var r=this._private;return e===void 0?r.notificationsEnabled:(r.notificationsEnabled=!!e,this)},"notifications"),noNotifications:o(function(e){this.notifications(!1),e(),this.notifications(!0)},"noNotifications"),batching:o(function(){return this._private.batchCount>0},"batching"),startBatch:o(function(){var e=this._private;return e.batchCount==null&&(e.batchCount=0),e.batchCount===0&&(e.batchStyleEles=this.collection(),e.batchNotifications={}),e.batchCount++,this},"startBatch"),endBatch:o(function(){var e=this._private;if(e.batchCount===0)return this;if(e.batchCount--,e.batchCount===0){e.batchStyleEles.updateStyle();var r=this.renderer();Object.keys(e.batchNotifications).forEach(function(n){var i=e.batchNotifications[n];i.empty()?r.notify(n):r.notify(n,i)})}return this},"endBatch"),batch:o(function(e){return this.startBatch(),e(),this.endBatch(),this},"batch"),batchData:o(function(e){var r=this;return this.batch(function(){for(var n=Object.keys(e),i=0;i<n.length;i++){var a=n[i],s=e[a],l=r.getElementById(a);l.data(s)}})},"batchData")},qVe=na({hideEdgesOnViewport:!1,textureOnViewport:!1,motionBlur:!1,motionBlurOpacity:.05,pixelRatio:void 0,desktopTapThreshold:4,touchTapThreshold:8,wheelSensitivity:1,debug:!1,showFps:!1,webgl:!1,webglDebug:!1,webglDebugShowAtlases:!1,webglTexSize:2048,webglTexRows:12,webglBatchSize:2048,webglTexPerBatch:14,webglBgColor:[255,255,255]}),LN={renderTo:o(function(e,r,n,i){var a=this._private.renderer;return a.renderTo(e,r,n,i),this},"renderTo"),renderer:o(function(){return this._private.renderer},"renderer"),forceRender:o(function(){return this.notify("draw"),this},"forceRender"),resize:o(function(){return this.invalidateSize(),this.emitAndNotify("resize"),this},"resize"),initRenderer:o(function(e){var r=this,n=r.extension("renderer",e.name);if(n==null){oi("Can not initialise: No such renderer `".concat(e.name,"` found. Did you forget to import it and `cytoscape.use()` it?"));return}e.wheelSensitivity!==void 0&&ln("You have set a custom wheel sensitivity. This will make your app zoom unnaturally when using mainstream mice. You should change this value from the default only if you can guarantee that all your users will use the same hardware and OS configuration as your current machine.");var i=qVe(e);i.cy=r,r._private.renderer=new n(i),this.notify("init")},"initRenderer"),destroyRenderer:o(function(){var e=this;e.notify("destroy");var r=e.container();if(r)for(r._cyreg=null;r.childNodes.length>0;)r.removeChild(r.childNodes[0]);e._private.renderer=null,e.mutableElements().forEach(function(n){var i=n._private;i.rscratch={},i.rstyle={},i.animation.current=[],i.animation.queue=[]})},"destroyRenderer"),onRender:o(function(e){return this.on("render",e)},"onRender"),offRender:o(function(e){return this.off("render",e)},"offRender")};LN.invalidateDimensions=LN.resize;Uk={collection:o(function(e,r){return Jt(e)?this.$(e):ho(e)?e.collection():kn(e)?(r||(r={}),new va(this,e,r.unique,r.removed)):new va(this)},"collection"),nodes:o(function(e){var r=this.$(function(n){return n.isNode()});return e?r.filter(e):r},"nodes"),edges:o(function(e){var r=this.$(function(n){return n.isEdge()});return e?r.filter(e):r},"edges"),$:o(function(e){var r=this._private.elements;return e?r.filter(e):r.spawnSelf()},"$"),mutableElements:o(function(){return this._private.elements},"mutableElements")};Uk.elements=Uk.filter=Uk.$;Fa={},tx="t",YVe="f";Fa.apply=function(t){for(var e=this,r=e._private,n=r.cy,i=n.collection(),a=0;a<t.length;a++){var s=t[a],l=e.getContextMeta(s);if(!l.empty){var u=e.getContextStyle(l),h=e.applyContextStyle(l,u,s);s._private.appliedInitStyle?e.updateTransitions(s,h.diffProps):s._private.appliedInitStyle=!0;var f=e.updateStyleHints(s);f&&i.push(s)}}return i};Fa.getPropertiesDiff=function(t,e){var r=this,n=r._private.propDiffs=r._private.propDiffs||{},i=t+"-"+e,a=n[i];if(a)return a;for(var s=[],l={},u=0;u<r.length;u++){var h=r[u],f=t[u]===tx,d=e[u]===tx,p=f!==d,m=h.mappedProperties.length>0;if(p||d&&m){var g=void 0;p&&m||p?g=h.properties:m&&(g=h.mappedProperties);for(var y=0;y<g.length;y++){for(var x=g[y],v=x.name,b=!1,T=u+1;T<r.length;T++){var S=r[T],w=e[T]===tx;if(w&&(b=S.properties[x.name]!=null,b))break}!l[v]&&!b&&(l[v]=!0,s.push(v))}}}return n[i]=s,s};Fa.getContextMeta=function(t){for(var e=this,r="",n,i=t._private.styleCxtKey||"",a=0;a<e.length;a++){var s=e[a],l=s.selector&&s.selector.matches(t);l?r+=tx:r+=YVe}return n=e.getPropertiesDiff(i,r),t._private.styleCxtKey=r,{key:r,diffPropNames:n,empty:n.length===0}};Fa.getContextStyle=function(t){var e=t.key,r=this,n=this._private.contextStyles=this._private.contextStyles||{};if(n[e])return n[e];for(var i={_private:{key:e}},a=0;a<r.length;a++){var s=r[a],l=e[a]===tx;if(l)for(var u=0;u<s.properties.length;u++){var h=s.properties[u];i[h.name]=h}}return n[e]=i,i};Fa.applyContextStyle=function(t,e,r){for(var n=this,i=t.diffPropNames,a={},s=n.types,l=0;l<i.length;l++){var u=i[l],h=e[u],f=r.pstyle(u);if(!h)if(f)f.bypass?h={name:u,deleteBypassed:!0}:h={name:u,delete:!0};else continue;if(f!==h){if(h.mapped===s.fn&&f!=null&&f.mapping!=null&&f.mapping.value===h.value){var d=f.mapping,p=d.fnValue=h.value(r);if(p===d.prevFnValue)continue}var m=a[u]={prev:f};n.applyParsedProperty(r,h),m.next=r.pstyle(u),m.next&&m.next.bypass&&(m.next=m.next.bypassed)}}return{diffProps:a}};Fa.updateStyleHints=function(t){var e=t._private,r=this,n=r.propertyGroupNames,i=r.propertyGroupKeys,a=o(function(te,re,he){return r.getPropertiesHash(te,re,he)},"propHash"),s=e.styleKey;if(t.removed())return!1;var l=e.group==="nodes",u=t._private.style;n=Object.keys(u);for(var h=0;h<i.length;h++){var f=i[h];e.styleKeys[f]=[Xm,Q2]}for(var d=o(function(te,re){return e.styleKeys[re][0]=sx(te,e.styleKeys[re][0])},"updateGrKey1"),p=o(function(te,re){return e.styleKeys[re][1]=ox(te,e.styleKeys[re][1])},"updateGrKey2"),m=o(function(te,re){d(te,re),p(te,re)},"updateGrKey"),g=o(function(te,re){for(var he=0;he<te.length;he++){var J=te.charCodeAt(he);d(J,re),p(J,re)}},"updateGrKeyWStr"),y=2e9,x=o(function(te){return-128<te&&te<128&&Math.floor(te)!==te?y-(te*1024|0):te},"cleanNum"),v=0;v<n.length;v++){var b=n[v],T=u[b];if(T!=null){var S=this.properties[b],w=S.type,E=S.groupKey,_=void 0;S.hashOverride!=null?_=S.hashOverride(t,T):T.pfValue!=null&&(_=T.pfValue);var A=S.enums==null?T.value:null,D=_!=null,O=A!=null,R=D||O,k=T.units;if(w.number&&R&&!w.multiple){var L=D?_:A;m(x(L),E),!D&&k!=null&&g(k,E)}else g(T.strValue,E)}}for(var C=[Xm,Q2],I=0;I<i.length;I++){var M=i[I],P=e.styleKeys[M];C[0]=sx(P[0],C[0]),C[1]=ox(P[1],C[1])}e.styleKey=ZBe(C[0],C[1]);var B=e.styleKeys;e.labelDimsKey=hf(B.labelDimensions);var F=a(t,["label"],B.labelDimensions);if(e.labelKey=hf(F),e.labelStyleKey=hf(kk(B.commonLabel,F)),!l){var G=a(t,["source-label"],B.labelDimensions);e.sourceLabelKey=hf(G),e.sourceLabelStyleKey=hf(kk(B.commonLabel,G));var $=a(t,["target-label"],B.labelDimensions);e.targetLabelKey=hf($),e.targetLabelStyleKey=hf(kk(B.commonLabel,$))}if(l){var U=e.styleKeys,K=U.nodeBody,ne=U.nodeBorder,j=U.nodeOutline,le=U.backgroundImage,Z=U.compound,ce=U.pie,Q=[K,ne,j,le,Z,ce].filter(function(ee){return ee!=null}).reduce(kk,[Xm,Q2]);e.nodeKey=hf(Q),e.hasPie=ce!=null&&ce[0]!==Xm&&ce[1]!==Q2}return s!==e.styleKey};Fa.clearStyleHints=function(t){var e=t._private;e.styleCxtKey="",e.styleKeys={},e.styleKey=null,e.labelKey=null,e.labelStyleKey=null,e.sourceLabelKey=null,e.sourceLabelStyleKey=null,e.targetLabelKey=null,e.targetLabelStyleKey=null,e.nodeKey=null,e.hasPie=null};Fa.applyParsedProperty=function(t,e){var r=this,n=e,i=t._private.style,a,s=r.types,l=r.properties[n.name].type,u=n.bypass,h=i[n.name],f=h&&h.bypass,d=t._private,p="mapping",m=o(function(K){return K==null?null:K.pfValue!=null?K.pfValue:K.value},"getVal"),g=o(function(){var K=m(h),ne=m(n);r.checkTriggers(t,n.name,K,ne)},"checkTriggers");if(e.name==="curve-style"&&t.isEdge()&&(e.value!=="bezier"&&t.isLoop()||e.value==="haystack"&&(t.source().isParent()||t.target().isParent()))&&(n=e=this.parse(e.name,"bezier",u)),n.delete)return i[n.name]=void 0,g(),!0;if(n.deleteBypassed)return h?h.bypass?(h.bypassed=void 0,g(),!0):!1:(g(),!0);if(n.deleteBypass)return h?h.bypass?(i[n.name]=h.bypassed,g(),!0):!1:(g(),!0);var y=o(function(){ln("Do not assign mappings to elements without corresponding data (i.e. ele `"+t.id()+"` has no mapping for property `"+n.name+"` with data field `"+n.field+"`); try a `["+n.field+"]` selector to limit scope to elements with `"+n.field+"` defined")},"printMappingErr");switch(n.mapped){case s.mapData:{for(var x=n.field.split("."),v=d.data,b=0;b<x.length&&v;b++){var T=x[b];v=v[T]}if(v==null)return y(),!1;var S;if(At(v)){var w=n.fieldMax-n.fieldMin;w===0?S=0:S=(v-n.fieldMin)/w}else return ln("Do not use continuous mappers without specifying numeric data (i.e. `"+n.field+": "+v+"` for `"+t.id()+"` is non-numeric)"),!1;if(S<0?S=0:S>1&&(S=1),l.color){var E=n.valueMin[0],_=n.valueMax[0],A=n.valueMin[1],D=n.valueMax[1],O=n.valueMin[2],R=n.valueMax[2],k=n.valueMin[3]==null?1:n.valueMin[3],L=n.valueMax[3]==null?1:n.valueMax[3],C=[Math.round(E+(_-E)*S),Math.round(A+(D-A)*S),Math.round(O+(R-O)*S),Math.round(k+(L-k)*S)];a={bypass:n.bypass,name:n.name,value:C,strValue:"rgb("+C[0]+", "+C[1]+", "+C[2]+")"}}else if(l.number){var I=n.valueMin+(n.valueMax-n.valueMin)*S;a=this.parse(n.name,I,n.bypass,p)}else return!1;if(!a)return y(),!1;a.mapping=n,n=a;break}case s.data:{for(var M=n.field.split("."),P=d.data,B=0;B<M.length&&P;B++){var F=M[B];P=P[F]}if(P!=null&&(a=this.parse(n.name,P,n.bypass,p)),!a)return y(),!1;a.mapping=n,n=a;break}case s.fn:{var G=n.value,$=n.fnValue!=null?n.fnValue:G(t);if(n.prevFnValue=$,$==null)return ln("Custom function mappers may not return null (i.e. `"+n.name+"` for ele `"+t.id()+"` is null)"),!1;if(a=this.parse(n.name,$,n.bypass,p),!a)return ln("Custom function mappers may not return invalid values for the property type (i.e. `"+n.name+"` for ele `"+t.id()+"` is invalid)"),!1;a.mapping=Nc(n),n=a;break}case void 0:break;default:return!1}return u?(f?n.bypassed=h.bypassed:n.bypassed=h,i[n.name]=n):f?h.bypassed=n:i[n.name]=n,g(),!0};Fa.cleanElements=function(t,e){for(var r=0;r<t.length;r++){var n=t[r];if(this.clearStyleHints(n),n.dirtyCompoundBoundsCache(),n.dirtyBoundingBoxCache(),!e)n._private.style={};else for(var i=n._private.style,a=Object.keys(i),s=0;s<a.length;s++){var l=a[s],u=i[l];u!=null&&(u.bypass?u.bypassed=null:i[l]=null)}}};Fa.update=function(){var t=this._private.cy,e=t.mutableElements();e.updateStyle()};Fa.updateTransitions=function(t,e){var r=this,n=t._private,i=t.pstyle("transition-property").value,a=t.pstyle("transition-duration").pfValue,s=t.pstyle("transition-delay").pfValue;if(i.length>0&&a>0){for(var l={},u=!1,h=0;h<i.length;h++){var f=i[h],d=t.pstyle(f),p=e[f];if(p){var m=p.prev,g=m,y=p.next!=null?p.next:d,x=!1,v=void 0,b=1e-6;g&&(At(g.pfValue)&&At(y.pfValue)?(x=y.pfValue-g.pfValue,v=g.pfValue+b*x):At(g.value)&&At(y.value)?(x=y.value-g.value,v=g.value+b*x):kn(g.value)&&kn(y.value)&&(x=g.value[0]!==y.value[0]||g.value[1]!==y.value[1]||g.value[2]!==y.value[2],v=g.strValue),x&&(l[f]=y.strValue,this.applyBypass(t,f,v),u=!0))}}if(!u)return;n.transitioning=!0,new sg(function(T){s>0?t.delayAnimation(s).play().promise().then(T):T()}).then(function(){return t.animation({style:l,duration:a,easing:t.pstyle("transition-timing-function").value,queue:!1}).play().promise()}).then(function(){r.removeBypasses(t,i),t.emitAndNotify("style"),n.transitioning=!1})}else n.transitioning&&(this.removeBypasses(t,i),t.emitAndNotify("style"),n.transitioning=!1)};Fa.checkTrigger=function(t,e,r,n,i,a){var s=this.properties[e],l=i(s);l!=null&&l(r,n)&&a(s)};Fa.checkZOrderTrigger=function(t,e,r,n){var i=this;this.checkTrigger(t,e,r,n,function(a){return a.triggersZOrder},function(){i._private.cy.notify("zorder",t)})};Fa.checkBoundsTrigger=function(t,e,r,n){this.checkTrigger(t,e,r,n,function(i){return i.triggersBounds},function(i){t.dirtyCompoundBoundsCache(),t.dirtyBoundingBoxCache(),i.triggersBoundsOfParallelBeziers&&e==="curve-style"&&(r==="bezier"||n==="bezier")&&t.parallelEdges().forEach(function(a){a.dirtyBoundingBoxCache()}),i.triggersBoundsOfConnectedEdges&&e==="display"&&(r==="none"||n==="none")&&t.connectedEdges().forEach(function(a){a.dirtyBoundingBoxCache()})})};Fa.checkTriggers=function(t,e,r,n){t.dirtyStyleCache(),this.checkZOrderTrigger(t,e,r,n),this.checkBoundsTrigger(t,e,r,n)};wx={};wx.applyBypass=function(t,e,r,n){var i=this,a=[],s=!0;if(e==="*"||e==="**"){if(r!==void 0)for(var l=0;l<i.properties.length;l++){var u=i.properties[l],h=u.name,f=this.parse(h,r,!0);f&&a.push(f)}}else if(Jt(e)){var d=this.parse(e,r,!0);d&&a.push(d)}else if(Vr(e)){var p=e;n=r;for(var m=Object.keys(p),g=0;g<m.length;g++){var y=m[g],x=p[y];if(x===void 0&&(x=p[iE(y)]),x!==void 0){var v=this.parse(y,x,!0);v&&a.push(v)}}}else return!1;if(a.length===0)return!1;for(var b=!1,T=0;T<t.length;T++){for(var S=t[T],w={},E=void 0,_=0;_<a.length;_++){var A=a[_];if(n){var D=S.pstyle(A.name);E=w[A.name]={prev:D}}b=this.applyParsedProperty(S,Nc(A))||b,n&&(E.next=S.pstyle(A.name))}b&&this.updateStyleHints(S),n&&this.updateTransitions(S,w,s)}return b};wx.overrideBypass=function(t,e,r){e=zN(e);for(var n=0;n<t.length;n++){var i=t[n],a=i._private.style[e],s=this.properties[e].type,l=s.color,u=s.mutiple,h=a?a.pfValue!=null?a.pfValue:a.value:null;!a||!a.bypass?this.applyBypass(i,e,r):(a.value=r,a.pfValue!=null&&(a.pfValue=r),l?a.strValue="rgb("+r.join(",")+")":u?a.strValue=r.join(" "):a.strValue=""+r,this.updateStyleHints(i)),this.checkTriggers(i,e,h,r)}};wx.removeAllBypasses=function(t,e){return this.removeBypasses(t,this.propertyNames,e)};wx.removeBypasses=function(t,e,r){for(var n=!0,i=0;i<t.length;i++){for(var a=t[i],s={},l=0;l<e.length;l++){var u=e[l],h=this.properties[u],f=a.pstyle(h.name);if(!(!f||!f.bypass)){var d="",p=this.parse(u,d,!0),m=s[h.name]={prev:f};this.applyParsedProperty(a,p),m.next=a.pstyle(h.name)}}this.updateStyleHints(a),r&&this.updateTransitions(a,s,n)}};tM={};tM.getEmSizeInPixels=function(){var t=this.containerCss("font-size");return t!=null?parseFloat(t):1};tM.containerCss=function(t){var e=this._private.cy,r=e.container(),n=e.window();if(n&&r&&n.getComputedStyle)return n.getComputedStyle(r).getPropertyValue(t)};Ic={};Ic.getRenderedStyle=function(t,e){return e?this.getStylePropertyValue(t,e,!0):this.getRawStyle(t,!0)};Ic.getRawStyle=function(t,e){var r=this;if(t=t[0],t){for(var n={},i=0;i<r.properties.length;i++){var a=r.properties[i],s=r.getStylePropertyValue(t,a.name,e);s!=null&&(n[a.name]=s,n[iE(a.name)]=s)}return n}};Ic.getIndexedStyle=function(t,e,r,n){var i=t.pstyle(e)[r][n];return i??t.cy().style().getDefaultProperty(e)[r][0]};Ic.getStylePropertyValue=function(t,e,r){var n=this;if(t=t[0],t){var i=n.properties[e];i.alias&&(i=i.pointsTo);var a=i.type,s=t.pstyle(i.name);if(s){var l=s.value,u=s.units,h=s.strValue;if(r&&a.number&&l!=null&&At(l)){var f=t.cy().zoom(),d=o(function(x){return x*f},"getRenderedValue"),p=o(function(x,v){return d(x)+v},"getValueStringWithUnits"),m=kn(l),g=m?u.every(function(y){return y!=null}):u!=null;return g?m?l.map(function(y,x){return p(y,u[x])}).join(" "):p(l,u):m?l.map(function(y){return Jt(y)?y:""+d(y)}).join(" "):""+d(l)}else if(h!=null)return h}return null}};Ic.getAnimationStartStyle=function(t,e){for(var r={},n=0;n<e.length;n++){var i=e[n],a=i.name,s=t.pstyle(a);s!==void 0&&(Vr(s)?s=this.parse(a,s.strValue):s=this.parse(a,s)),s&&(r[a]=s)}return r};Ic.getPropsList=function(t){var e=this,r=[],n=t,i=e.properties;if(n)for(var a=Object.keys(n),s=0;s<a.length;s++){var l=a[s],u=n[l],h=i[l]||i[zN(l)],f=this.parse(h.name,u);f&&r.push(f)}return r};Ic.getNonDefaultPropertiesHash=function(t,e,r){var n=r.slice(),i,a,s,l,u,h;for(u=0;u<e.length;u++)if(i=e[u],a=t.pstyle(i,!1),a!=null)if(a.pfValue!=null)n[0]=sx(l,n[0]),n[1]=ox(l,n[1]);else for(s=a.strValue,h=0;h<s.length;h++)l=s.charCodeAt(h),n[0]=sx(l,n[0]),n[1]=ox(l,n[1]);return n};Ic.getPropertiesHash=Ic.getNonDefaultPropertiesHash;gE={};gE.appendFromJson=function(t){for(var e=this,r=0;r<t.length;r++){var n=t[r],i=n.selector,a=n.style||n.css,s=Object.keys(a);e.selector(i);for(var l=0;l<s.length;l++){var u=s[l],h=a[u];e.css(u,h)}}return e};gE.fromJson=function(t){var e=this;return e.resetToDefault(),e.appendFromJson(t),e};gE.json=function(){for(var t=[],e=this.defaultLength;e<this.length;e++){for(var r=this[e],n=r.selector,i=r.properties,a={},s=0;s<i.length;s++){var l=i[s];a[l.name]=l.strValue}t.push({selector:n?n.toString():"core",style:a})}return t};rM={};rM.appendFromString=function(t){var e=this,r=this,n=""+t,i,a,s;n=n.replace(/[/][*](\s|.)+?[*][/]/g,"");function l(){n.length>i.length?n=n.substr(i.length):n=""}o(l,"removeSelAndBlockFromRemaining");function u(){a.length>s.length?a=a.substr(s.length):a=""}for(o(u,"removePropAndValFromRem");;){var h=n.match(/^\s*$/);if(h)break;var f=n.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!f){ln("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+n);break}i=f[0];var d=f[1];if(d!=="core"){var p=new bf(d);if(p.invalid){ln("Skipping parsing of block: Invalid selector found in string stylesheet: "+d),l();continue}}var m=f[2],g=!1;a=m;for(var y=[];;){var x=a.match(/^\s*$/);if(x)break;var v=a.match(/^\s*(.+?)\s*:\s*(.+?)(?:\s*;|\s*$)/);if(!v){ln("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+m),g=!0;break}s=v[0];var b=v[1],T=v[2],S=e.properties[b];if(!S){ln("Skipping property: Invalid property name in: "+s),u();continue}var w=r.parse(b,T);if(!w){ln("Skipping property: Invalid property definition in: "+s),u();continue}y.push({name:b,val:T}),u()}if(g){l();break}r.selector(d);for(var E=0;E<y.length;E++){var _=y[E];r.css(_.name,_.val)}l()}return r};rM.fromString=function(t){var e=this;return e.resetToDefault(),e.appendFromString(t),e};ga={};(function(){var t=Gi,e=rBe,r=iBe,n=aBe,i=sBe,a=o(function(Q){return"^"+Q+"\\s*\\(\\s*([\\w\\.]+)\\s*\\)$"},"data"),s=o(function(Q){var ee=t+"|\\w+|"+e+"|"+r+"|"+n+"|"+i;return"^"+Q+"\\s*\\(([\\w\\.]+)\\s*\\,\\s*("+t+")\\s*\\,\\s*("+t+")\\s*,\\s*("+ee+")\\s*\\,\\s*("+ee+")\\)$"},"mapData"),l=[`^url\\s*\\(\\s*['"]?(.+?)['"]?\\s*\\)$`,"^(none)$","^(.+)$"];ga.types={time:{number:!0,min:0,units:"s|ms",implicitUnits:"ms"},percent:{number:!0,min:0,max:100,units:"%",implicitUnits:"%"},percentages:{number:!0,min:0,max:100,units:"%",implicitUnits:"%",multiple:!0},zeroOneNumber:{number:!0,min:0,max:1,unitless:!0},zeroOneNumbers:{number:!0,min:0,max:1,unitless:!0,multiple:!0},nOneOneNumber:{number:!0,min:-1,max:1,unitless:!0},nonNegativeInt:{number:!0,min:0,integer:!0,unitless:!0},nonNegativeNumber:{number:!0,min:0,unitless:!0},position:{enums:["parent","origin"]},nodeSize:{number:!0,min:0,enums:["label"]},number:{number:!0,unitless:!0},numbers:{number:!0,unitless:!0,multiple:!0},positiveNumber:{number:!0,unitless:!0,min:0,strictMin:!0},size:{number:!0,min:0},bidirectionalSize:{number:!0},bidirectionalSizeMaybePercent:{number:!0,allowPercent:!0},bidirectionalSizes:{number:!0,multiple:!0},sizeMaybePercent:{number:!0,min:0,allowPercent:!0},axisDirection:{enums:["horizontal","leftward","rightward","vertical","upward","downward","auto"]},paddingRelativeTo:{enums:["width","height","average","min","max"]},bgWH:{number:!0,min:0,allowPercent:!0,enums:["auto"],multiple:!0},bgPos:{number:!0,allowPercent:!0,multiple:!0},bgRelativeTo:{enums:["inner","include-padding"],multiple:!0},bgRepeat:{enums:["repeat","repeat-x","repeat-y","no-repeat"],multiple:!0},bgFit:{enums:["none","contain","cover"],multiple:!0},bgCrossOrigin:{enums:["anonymous","use-credentials","null"],multiple:!0},bgClip:{enums:["none","node"],multiple:!0},bgContainment:{enums:["inside","over"],multiple:!0},color:{color:!0},colors:{color:!0,multiple:!0},fill:{enums:["solid","linear-gradient","radial-gradient"]},bool:{enums:["yes","no"]},bools:{enums:["yes","no"],multiple:!0},lineStyle:{enums:["solid","dotted","dashed"]},lineCap:{enums:["butt","round","square"]},linePosition:{enums:["center","inside","outside"]},lineJoin:{enums:["round","bevel","miter"]},borderStyle:{enums:["solid","dotted","dashed","double"]},curveStyle:{enums:["bezier","unbundled-bezier","haystack","segments","straight","straight-triangle","taxi","round-segments","round-taxi"]},radiusType:{enums:["arc-radius","influence-radius"],multiple:!0},fontFamily:{regex:'^([\\w- \\"]+(?:\\s*,\\s*[\\w- \\"]+)*)$'},fontStyle:{enums:["italic","normal","oblique"]},fontWeight:{enums:["normal","bold","bolder","lighter","100","200","300","400","500","600","800","900",100,200,300,400,500,600,700,800,900]},textDecoration:{enums:["none","underline","overline","line-through"]},textTransform:{enums:["none","uppercase","lowercase"]},textWrap:{enums:["none","wrap","ellipsis"]},textOverflowWrap:{enums:["whitespace","anywhere"]},textBackgroundShape:{enums:["rectangle","roundrectangle","round-rectangle"]},nodeShape:{enums:["rectangle","roundrectangle","round-rectangle","cutrectangle","cut-rectangle","bottomroundrectangle","bottom-round-rectangle","barrel","ellipse","triangle","round-triangle","square","pentagon","round-pentagon","hexagon","round-hexagon","concavehexagon","concave-hexagon","heptagon","round-heptagon","octagon","round-octagon","tag","round-tag","star","diamond","round-diamond","vee","rhomboid","right-rhomboid","polygon"]},overlayShape:{enums:["roundrectangle","round-rectangle","ellipse"]},cornerRadius:{number:!0,min:0,units:"px|em",implicitUnits:"px",enums:["auto"]},compoundIncludeLabels:{enums:["include","exclude"]},arrowShape:{enums:["tee","triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","square","circle","diamond","chevron","none"]},arrowFill:{enums:["filled","hollow"]},arrowWidth:{number:!0,units:"%|px|em",implicitUnits:"px",enums:["match-line"]},display:{enums:["element","none"]},visibility:{enums:["hidden","visible"]},zCompoundDepth:{enums:["bottom","orphan","auto","top"]},zIndexCompare:{enums:["auto","manual"]},valign:{enums:["top","center","bottom"]},halign:{enums:["left","center","right"]},justification:{enums:["left","center","right","auto"]},text:{string:!0},data:{mapping:!0,regex:a("data")},layoutData:{mapping:!0,regex:a("layoutData")},scratch:{mapping:!0,regex:a("scratch")},mapData:{mapping:!0,regex:s("mapData")},mapLayoutData:{mapping:!0,regex:s("mapLayoutData")},mapScratch:{mapping:!0,regex:s("mapScratch")},fn:{mapping:!0,fn:!0},url:{regexes:l,singleRegexMatchValue:!0},urls:{regexes:l,singleRegexMatchValue:!0,multiple:!0},propList:{propList:!0},angle:{number:!0,units:"deg|rad",implicitUnits:"rad"},textRotation:{number:!0,units:"deg|rad",implicitUnits:"rad",enums:["none","autorotate"]},polygonPointList:{number:!0,multiple:!0,evenMultiple:!0,min:-1,max:1,unitless:!0},edgeDistances:{enums:["intersection","node-position","endpoints"]},edgeEndpoint:{number:!0,multiple:!0,units:"%|px|em|deg|rad",implicitUnits:"px",enums:["inside-to-node","outside-to-node","outside-to-node-or-label","outside-to-line","outside-to-line-or-label"],singleEnum:!0,validate:o(function(Q,ee){switch(Q.length){case 2:return ee[0]!=="deg"&&ee[0]!=="rad"&&ee[1]!=="deg"&&ee[1]!=="rad";case 1:return Jt(Q[0])||ee[0]==="deg"||ee[0]==="rad";default:return!1}},"validate")},easing:{regexes:["^(spring)\\s*\\(\\s*("+t+")\\s*,\\s*("+t+")\\s*\\)$","^(cubic-bezier)\\s*\\(\\s*("+t+")\\s*,\\s*("+t+")\\s*,\\s*("+t+")\\s*,\\s*("+t+")\\s*\\)$"],enums:["linear","ease","ease-in","ease-out","ease-in-out","ease-in-sine","ease-out-sine","ease-in-out-sine","ease-in-quad","ease-out-quad","ease-in-out-quad","ease-in-cubic","ease-out-cubic","ease-in-out-cubic","ease-in-quart","ease-out-quart","ease-in-out-quart","ease-in-quint","ease-out-quint","ease-in-out-quint","ease-in-expo","ease-out-expo","ease-in-out-expo","ease-in-circ","ease-out-circ","ease-in-out-circ"]},gradientDirection:{enums:["to-bottom","to-top","to-left","to-right","to-bottom-right","to-bottom-left","to-top-right","to-top-left","to-right-bottom","to-left-bottom","to-right-top","to-left-top"]},boundsExpansion:{number:!0,multiple:!0,min:0,validate:o(function(Q){var ee=Q.length;return ee===1||ee===2||ee===4},"validate")}};var u={zeroNonZero:o(function(Q,ee){return(Q==null||ee==null)&&Q!==ee||Q==0&&ee!=0?!0:Q!=0&&ee==0},"zeroNonZero"),any:o(function(Q,ee){return Q!=ee},"any"),emptyNonEmpty:o(function(Q,ee){var te=yf(Q),re=yf(ee);return te&&!re||!te&&re},"emptyNonEmpty")},h=ga.types,f=[{name:"label",type:h.text,triggersBounds:u.any,triggersZOrder:u.emptyNonEmpty},{name:"text-rotation",type:h.textRotation,triggersBounds:u.any},{name:"text-margin-x",type:h.bidirectionalSize,triggersBounds:u.any},{name:"text-margin-y",type:h.bidirectionalSize,triggersBounds:u.any}],d=[{name:"source-label",type:h.text,triggersBounds:u.any},{name:"source-text-rotation",type:h.textRotation,triggersBounds:u.any},{name:"source-text-margin-x",type:h.bidirectionalSize,triggersBounds:u.any},{name:"source-text-margin-y",type:h.bidirectionalSize,triggersBounds:u.any},{name:"source-text-offset",type:h.size,triggersBounds:u.any}],p=[{name:"target-label",type:h.text,triggersBounds:u.any},{name:"target-text-rotation",type:h.textRotation,triggersBounds:u.any},{name:"target-text-margin-x",type:h.bidirectionalSize,triggersBounds:u.any},{name:"target-text-margin-y",type:h.bidirectionalSize,triggersBounds:u.any},{name:"target-text-offset",type:h.size,triggersBounds:u.any}],m=[{name:"font-family",type:h.fontFamily,triggersBounds:u.any},{name:"font-style",type:h.fontStyle,triggersBounds:u.any},{name:"font-weight",type:h.fontWeight,triggersBounds:u.any},{name:"font-size",type:h.size,triggersBounds:u.any},{name:"text-transform",type:h.textTransform,triggersBounds:u.any},{name:"text-wrap",type:h.textWrap,triggersBounds:u.any},{name:"text-overflow-wrap",type:h.textOverflowWrap,triggersBounds:u.any},{name:"text-max-width",type:h.size,triggersBounds:u.any},{name:"text-outline-width",type:h.size,triggersBounds:u.any},{name:"line-height",type:h.positiveNumber,triggersBounds:u.any}],g=[{name:"text-valign",type:h.valign,triggersBounds:u.any},{name:"text-halign",type:h.halign,triggersBounds:u.any},{name:"color",type:h.color},{name:"text-outline-color",type:h.color},{name:"text-outline-opacity",type:h.zeroOneNumber},{name:"text-background-color",type:h.color},{name:"text-background-opacity",type:h.zeroOneNumber},{name:"text-background-padding",type:h.size,triggersBounds:u.any},{name:"text-border-opacity",type:h.zeroOneNumber},{name:"text-border-color",type:h.color},{name:"text-border-width",type:h.size,triggersBounds:u.any},{name:"text-border-style",type:h.borderStyle,triggersBounds:u.any},{name:"text-background-shape",type:h.textBackgroundShape,triggersBounds:u.any},{name:"text-justification",type:h.justification}],y=[{name:"events",type:h.bool,triggersZOrder:u.any},{name:"text-events",type:h.bool,triggersZOrder:u.any}],x=[{name:"display",type:h.display,triggersZOrder:u.any,triggersBounds:u.any,triggersBoundsOfConnectedEdges:!0},{name:"visibility",type:h.visibility,triggersZOrder:u.any},{name:"opacity",type:h.zeroOneNumber,triggersZOrder:u.zeroNonZero},{name:"text-opacity",type:h.zeroOneNumber},{name:"min-zoomed-font-size",type:h.size},{name:"z-compound-depth",type:h.zCompoundDepth,triggersZOrder:u.any},{name:"z-index-compare",type:h.zIndexCompare,triggersZOrder:u.any},{name:"z-index",type:h.number,triggersZOrder:u.any}],v=[{name:"overlay-padding",type:h.size,triggersBounds:u.any},{name:"overlay-color",type:h.color},{name:"overlay-opacity",type:h.zeroOneNumber,triggersBounds:u.zeroNonZero},{name:"overlay-shape",type:h.overlayShape,triggersBounds:u.any},{name:"overlay-corner-radius",type:h.cornerRadius}],b=[{name:"underlay-padding",type:h.size,triggersBounds:u.any},{name:"underlay-color",type:h.color},{name:"underlay-opacity",type:h.zeroOneNumber,triggersBounds:u.zeroNonZero},{name:"underlay-shape",type:h.overlayShape,triggersBounds:u.any},{name:"underlay-corner-radius",type:h.cornerRadius}],T=[{name:"transition-property",type:h.propList},{name:"transition-duration",type:h.time},{name:"transition-delay",type:h.time},{name:"transition-timing-function",type:h.easing}],S=o(function(Q,ee){return ee.value==="label"?-Q.poolIndex():ee.pfValue},"nodeSizeHashOverride"),w=[{name:"height",type:h.nodeSize,triggersBounds:u.any,hashOverride:S},{name:"width",type:h.nodeSize,triggersBounds:u.any,hashOverride:S},{name:"shape",type:h.nodeShape,triggersBounds:u.any},{name:"shape-polygon-points",type:h.polygonPointList,triggersBounds:u.any},{name:"corner-radius",type:h.cornerRadius},{name:"background-color",type:h.color},{name:"background-fill",type:h.fill},{name:"background-opacity",type:h.zeroOneNumber},{name:"background-blacken",type:h.nOneOneNumber},{name:"background-gradient-stop-colors",type:h.colors},{name:"background-gradient-stop-positions",type:h.percentages},{name:"background-gradient-direction",type:h.gradientDirection},{name:"padding",type:h.sizeMaybePercent,triggersBounds:u.any},{name:"padding-relative-to",type:h.paddingRelativeTo,triggersBounds:u.any},{name:"bounds-expansion",type:h.boundsExpansion,triggersBounds:u.any}],E=[{name:"border-color",type:h.color},{name:"border-opacity",type:h.zeroOneNumber},{name:"border-width",type:h.size,triggersBounds:u.any},{name:"border-style",type:h.borderStyle},{name:"border-cap",type:h.lineCap},{name:"border-join",type:h.lineJoin},{name:"border-dash-pattern",type:h.numbers},{name:"border-dash-offset",type:h.number},{name:"border-position",type:h.linePosition}],_=[{name:"outline-color",type:h.color},{name:"outline-opacity",type:h.zeroOneNumber},{name:"outline-width",type:h.size,triggersBounds:u.any},{name:"outline-style",type:h.borderStyle},{name:"outline-offset",type:h.size,triggersBounds:u.any}],A=[{name:"background-image",type:h.urls},{name:"background-image-crossorigin",type:h.bgCrossOrigin},{name:"background-image-opacity",type:h.zeroOneNumbers},{name:"background-image-containment",type:h.bgContainment},{name:"background-image-smoothing",type:h.bools},{name:"background-position-x",type:h.bgPos},{name:"background-position-y",type:h.bgPos},{name:"background-width-relative-to",type:h.bgRelativeTo},{name:"background-height-relative-to",type:h.bgRelativeTo},{name:"background-repeat",type:h.bgRepeat},{name:"background-fit",type:h.bgFit},{name:"background-clip",type:h.bgClip},{name:"background-width",type:h.bgWH},{name:"background-height",type:h.bgWH},{name:"background-offset-x",type:h.bgPos},{name:"background-offset-y",type:h.bgPos}],D=[{name:"position",type:h.position,triggersBounds:u.any},{name:"compound-sizing-wrt-labels",type:h.compoundIncludeLabels,triggersBounds:u.any},{name:"min-width",type:h.size,triggersBounds:u.any},{name:"min-width-bias-left",type:h.sizeMaybePercent,triggersBounds:u.any},{name:"min-width-bias-right",type:h.sizeMaybePercent,triggersBounds:u.any},{name:"min-height",type:h.size,triggersBounds:u.any},{name:"min-height-bias-top",type:h.sizeMaybePercent,triggersBounds:u.any},{name:"min-height-bias-bottom",type:h.sizeMaybePercent,triggersBounds:u.any}],O=[{name:"line-style",type:h.lineStyle},{name:"line-color",type:h.color},{name:"line-fill",type:h.fill},{name:"line-cap",type:h.lineCap},{name:"line-opacity",type:h.zeroOneNumber},{name:"line-dash-pattern",type:h.numbers},{name:"line-dash-offset",type:h.number},{name:"line-outline-width",type:h.size},{name:"line-outline-color",type:h.color},{name:"line-gradient-stop-colors",type:h.colors},{name:"line-gradient-stop-positions",type:h.percentages},{name:"curve-style",type:h.curveStyle,triggersBounds:u.any,triggersBoundsOfParallelBeziers:!0},{name:"haystack-radius",type:h.zeroOneNumber,triggersBounds:u.any},{name:"source-endpoint",type:h.edgeEndpoint,triggersBounds:u.any},{name:"target-endpoint",type:h.edgeEndpoint,triggersBounds:u.any},{name:"control-point-step-size",type:h.size,triggersBounds:u.any},{name:"control-point-distances",type:h.bidirectionalSizes,triggersBounds:u.any},{name:"control-point-weights",type:h.numbers,triggersBounds:u.any},{name:"segment-distances",type:h.bidirectionalSizes,triggersBounds:u.any},{name:"segment-weights",type:h.numbers,triggersBounds:u.any},{name:"segment-radii",type:h.numbers,triggersBounds:u.any},{name:"radius-type",type:h.radiusType,triggersBounds:u.any},{name:"taxi-turn",type:h.bidirectionalSizeMaybePercent,triggersBounds:u.any},{name:"taxi-turn-min-distance",type:h.size,triggersBounds:u.any},{name:"taxi-direction",type:h.axisDirection,triggersBounds:u.any},{name:"taxi-radius",type:h.number,triggersBounds:u.any},{name:"edge-distances",type:h.edgeDistances,triggersBounds:u.any},{name:"arrow-scale",type:h.positiveNumber,triggersBounds:u.any},{name:"loop-direction",type:h.angle,triggersBounds:u.any},{name:"loop-sweep",type:h.angle,triggersBounds:u.any},{name:"source-distance-from-node",type:h.size,triggersBounds:u.any},{name:"target-distance-from-node",type:h.size,triggersBounds:u.any}],R=[{name:"ghost",type:h.bool,triggersBounds:u.any},{name:"ghost-offset-x",type:h.bidirectionalSize,triggersBounds:u.any},{name:"ghost-offset-y",type:h.bidirectionalSize,triggersBounds:u.any},{name:"ghost-opacity",type:h.zeroOneNumber}],k=[{name:"selection-box-color",type:h.color},{name:"selection-box-opacity",type:h.zeroOneNumber},{name:"selection-box-border-color",type:h.color},{name:"selection-box-border-width",type:h.size},{name:"active-bg-color",type:h.color},{name:"active-bg-opacity",type:h.zeroOneNumber},{name:"active-bg-size",type:h.size},{name:"outside-texture-bg-color",type:h.color},{name:"outside-texture-bg-opacity",type:h.zeroOneNumber}],L=[];ga.pieBackgroundN=16,L.push({name:"pie-size",type:h.sizeMaybePercent});for(var C=1;C<=ga.pieBackgroundN;C++)L.push({name:"pie-"+C+"-background-color",type:h.color}),L.push({name:"pie-"+C+"-background-size",type:h.percent}),L.push({name:"pie-"+C+"-background-opacity",type:h.zeroOneNumber});var I=[],M=ga.arrowPrefixes=["source","mid-source","target","mid-target"];[{name:"arrow-shape",type:h.arrowShape,triggersBounds:u.any},{name:"arrow-color",type:h.color},{name:"arrow-fill",type:h.arrowFill},{name:"arrow-width",type:h.arrowWidth}].forEach(function(ce){M.forEach(function(Q){var ee=Q+"-"+ce.name,te=ce.type,re=ce.triggersBounds;I.push({name:ee,type:te,triggersBounds:re})})},{});var P=ga.properties=[].concat(y,T,x,v,b,R,g,m,f,d,p,w,E,_,A,L,D,O,I,k),B=ga.propertyGroups={behavior:y,transition:T,visibility:x,overlay:v,underlay:b,ghost:R,commonLabel:g,labelDimensions:m,mainLabel:f,sourceLabel:d,targetLabel:p,nodeBody:w,nodeBorder:E,nodeOutline:_,backgroundImage:A,pie:L,compound:D,edgeLine:O,edgeArrow:I,core:k},F=ga.propertyGroupNames={},G=ga.propertyGroupKeys=Object.keys(B);G.forEach(function(ce){F[ce]=B[ce].map(function(Q){return Q.name}),B[ce].forEach(function(Q){return Q.groupKey=ce})});var $=ga.aliases=[{name:"content",pointsTo:"label"},{name:"control-point-distance",pointsTo:"control-point-distances"},{name:"control-point-weight",pointsTo:"control-point-weights"},{name:"segment-distance",pointsTo:"segment-distances"},{name:"segment-weight",pointsTo:"segment-weights"},{name:"segment-radius",pointsTo:"segment-radii"},{name:"edge-text-rotation",pointsTo:"text-rotation"},{name:"padding-left",pointsTo:"padding"},{name:"padding-right",pointsTo:"padding"},{name:"padding-top",pointsTo:"padding"},{name:"padding-bottom",pointsTo:"padding"}];ga.propertyNames=P.map(function(ce){return ce.name});for(var U=0;U<P.length;U++){var K=P[U];P[K.name]=K}for(var ne=0;ne<$.length;ne++){var j=$[ne],le=P[j.pointsTo],Z={name:j.name,alias:!0,pointsTo:le};P.push(Z),P[j.name]=Z}})();ga.getDefaultProperty=function(t){return this.getDefaultProperties()[t]};ga.getDefaultProperties=function(){var t=this._private;if(t.defaultProperties!=null)return t.defaultProperties;for(var e=ir({"selection-box-color":"#ddd","selection-box-opacity":.65,"selection-box-border-color":"#aaa","selection-box-border-width":1,"active-bg-color":"black","active-bg-opacity":.15,"active-bg-size":30,"outside-texture-bg-color":"#000","outside-texture-bg-opacity":.125,events:"yes","text-events":"no","text-valign":"top","text-halign":"center","text-justification":"auto","line-height":1,color:"#000","text-outline-color":"#000","text-outline-width":0,"text-outline-opacity":1,"text-opacity":1,"text-decoration":"none","text-transform":"none","text-wrap":"none","text-overflow-wrap":"whitespace","text-max-width":9999,"text-background-color":"#000","text-background-opacity":0,"text-background-shape":"rectangle","text-background-padding":0,"text-border-opacity":0,"text-border-width":0,"text-border-style":"solid","text-border-color":"#000","font-family":"Helvetica Neue, Helvetica, sans-serif","font-style":"normal","font-weight":"normal","font-size":16,"min-zoomed-font-size":0,"text-rotation":"none","source-text-rotation":"none","target-text-rotation":"none",visibility:"visible",display:"element",opacity:1,"z-compound-depth":"auto","z-index-compare":"auto","z-index":0,label:"","text-margin-x":0,"text-margin-y":0,"source-label":"","source-text-offset":0,"source-text-margin-x":0,"source-text-margin-y":0,"target-label":"","target-text-offset":0,"target-text-margin-x":0,"target-text-margin-y":0,"overlay-opacity":0,"overlay-color":"#000","overlay-padding":10,"overlay-shape":"round-rectangle","overlay-corner-radius":"auto","underlay-opacity":0,"underlay-color":"#000","underlay-padding":10,"underlay-shape":"round-rectangle","underlay-corner-radius":"auto","transition-property":"none","transition-duration":0,"transition-delay":0,"transition-timing-function":"linear","background-blacken":0,"background-color":"#999","background-fill":"solid","background-opacity":1,"background-image":"none","background-image-crossorigin":"anonymous","background-image-opacity":1,"background-image-containment":"inside","background-image-smoothing":"yes","background-position-x":"50%","background-position-y":"50%","background-offset-x":0,"background-offset-y":0,"background-width-relative-to":"include-padding","background-height-relative-to":"include-padding","background-repeat":"no-repeat","background-fit":"none","background-clip":"node","background-width":"auto","background-height":"auto","border-color":"#000","border-opacity":1,"border-width":0,"border-style":"solid","border-dash-pattern":[4,2],"border-dash-offset":0,"border-cap":"butt","border-join":"miter","border-position":"center","outline-color":"#999","outline-opacity":1,"outline-width":0,"outline-offset":0,"outline-style":"solid",height:30,width:30,shape:"ellipse","shape-polygon-points":"-1, -1, 1, -1, 1, 1, -1, 1","corner-radius":"auto","bounds-expansion":0,"background-gradient-direction":"to-bottom","background-gradient-stop-colors":"#999","background-gradient-stop-positions":"0%",ghost:"no","ghost-offset-y":0,"ghost-offset-x":0,"ghost-opacity":0,padding:0,"padding-relative-to":"width",position:"origin","compound-sizing-wrt-labels":"include","min-width":0,"min-width-bias-left":0,"min-width-bias-right":0,"min-height":0,"min-height-bias-top":0,"min-height-bias-bottom":0},{"pie-size":"100%"},[{name:"pie-{{i}}-background-color",value:"black"},{name:"pie-{{i}}-background-size",value:"0%"},{name:"pie-{{i}}-background-opacity",value:1}].reduce(function(u,h){for(var f=1;f<=ga.pieBackgroundN;f++){var d=h.name.replace("{{i}}",f),p=h.value;u[d]=p}return u},{}),{"line-style":"solid","line-color":"#999","line-fill":"solid","line-cap":"butt","line-opacity":1,"line-outline-width":0,"line-outline-color":"#000","line-gradient-stop-colors":"#999","line-gradient-stop-positions":"0%","control-point-step-size":40,"control-point-weights":.5,"segment-weights":.5,"segment-distances":20,"segment-radii":15,"radius-type":"arc-radius","taxi-turn":"50%","taxi-radius":15,"taxi-turn-min-distance":10,"taxi-direction":"auto","edge-distances":"intersection","curve-style":"haystack","haystack-radius":0,"arrow-scale":1,"loop-direction":"-45deg","loop-sweep":"-90deg","source-distance-from-node":0,"target-distance-from-node":0,"source-endpoint":"outside-to-node","target-endpoint":"outside-to-node","line-dash-pattern":[6,3],"line-dash-offset":0},[{name:"arrow-shape",value:"none"},{name:"arrow-color",value:"#999"},{name:"arrow-fill",value:"filled"},{name:"arrow-width",value:1}].reduce(function(u,h){return ga.arrowPrefixes.forEach(function(f){var d=f+"-"+h.name,p=h.value;u[d]=p}),u},{})),r={},n=0;n<this.properties.length;n++){var i=this.properties[n];if(!i.pointsTo){var a=i.name,s=e[a],l=this.parse(a,s);r[a]=l}}return t.defaultProperties=r,t.defaultProperties};ga.addDefaultStylesheet=function(){this.selector(":parent").css({shape:"rectangle",padding:10,"background-color":"#eee","border-color":"#ccc","border-width":1}).selector("edge").css({width:3}).selector(":loop").css({"curve-style":"bezier"}).selector("edge:compound").css({"curve-style":"bezier","source-endpoint":"outside-to-line","target-endpoint":"outside-to-line"}).selector(":selected").css({"background-color":"#0169D9","line-color":"#0169D9","source-arrow-color":"#0169D9","target-arrow-color":"#0169D9","mid-source-arrow-color":"#0169D9","mid-target-arrow-color":"#0169D9"}).selector(":parent:selected").css({"background-color":"#CCE1F9","border-color":"#aec8e5"}).selector(":active").css({"overlay-color":"black","overlay-padding":10,"overlay-opacity":.25}),this.defaultLength=this.length};yE={};yE.parse=function(t,e,r,n){var i=this;if(li(e))return i.parseImplWarn(t,e,r,n);var a=n==="mapping"||n===!0||n===!1||n==null?"dontcare":n,s=r?"t":"f",l=""+e,u=Woe(t,l,s,a),h=i.propCache=i.propCache||[],f;return(f=h[u])||(f=h[u]=i.parseImplWarn(t,e,r,n)),(r||n==="mapping")&&(f=Nc(f),f&&(f.value=Nc(f.value))),f};yE.parseImplWarn=function(t,e,r,n){var i=this.parseImpl(t,e,r,n);return!i&&e!=null&&ln("The style property `".concat(t,": ").concat(e,"` is invalid")),i&&(i.name==="width"||i.name==="height")&&e==="label"&&ln("The style value of `label` is deprecated for `"+i.name+"`"),i};yE.parseImpl=function(t,e,r,n){var i=this;t=zN(t);var a=i.properties[t],s=e,l=i.types;if(!a||e===void 0)return null;a.alias&&(a=a.pointsTo,t=a.name);var u=Jt(e);u&&(e=e.trim());var h=a.type;if(!h)return null;if(r&&(e===""||e===null))return{name:t,value:e,bypass:!0,deleteBypass:!0};if(li(e))return{name:t,value:e,strValue:"fn",mapped:l.fn,bypass:r};var f,d;if(!(!u||n||e.length<7||e[1]!=="a")){if(e.length>=7&&e[0]==="d"&&(f=new RegExp(l.data.regex).exec(e))){if(r)return!1;var p=l.data;return{name:t,value:f,strValue:""+e,mapped:p,field:f[1],bypass:r}}else if(e.length>=10&&e[0]==="m"&&(d=new RegExp(l.mapData.regex).exec(e))){if(r||h.multiple)return!1;var m=l.mapData;if(!(h.color||h.number))return!1;var g=this.parse(t,d[4]);if(!g||g.mapped)return!1;var y=this.parse(t,d[5]);if(!y||y.mapped)return!1;if(g.pfValue===y.pfValue||g.strValue===y.strValue)return ln("`"+t+": "+e+"` is not a valid mapper because the output range is zero; converting to `"+t+": "+g.strValue+"`"),this.parse(t,g.strValue);if(h.color){var x=g.value,v=y.value,b=x[0]===v[0]&&x[1]===v[1]&&x[2]===v[2]&&(x[3]===v[3]||(x[3]==null||x[3]===1)&&(v[3]==null||v[3]===1));if(b)return!1}return{name:t,value:d,strValue:""+e,mapped:m,field:d[1],fieldMin:parseFloat(d[2]),fieldMax:parseFloat(d[3]),valueMin:g.value,valueMax:y.value,bypass:r}}}if(h.multiple&&n!=="multiple"){var T;if(u?T=e.split(/\s+/):kn(e)?T=e:T=[e],h.evenMultiple&&T.length%2!==0)return null;for(var S=[],w=[],E=[],_="",A=!1,D=0;D<T.length;D++){var O=i.parse(t,T[D],r,"multiple");A=A||Jt(O.value),S.push(O.value),E.push(O.pfValue!=null?O.pfValue:O.value),w.push(O.units),_+=(D>0?" ":"")+O.strValue}return h.validate&&!h.validate(S,w)?null:h.singleEnum&&A?S.length===1&&Jt(S[0])?{name:t,value:S[0],strValue:S[0],bypass:r}:null:{name:t,value:S,pfValue:E,strValue:_,bypass:r,units:w}}var R=o(function(){for(var Q=0;Q<h.enums.length;Q++){var ee=h.enums[Q];if(ee===e)return{name:t,value:e,strValue:""+e,bypass:r}}return null},"checkEnums");if(h.number){var k,L="px";if(h.units&&(k=h.units),h.implicitUnits&&(L=h.implicitUnits),!h.unitless)if(u){var C="px|em"+(h.allowPercent?"|\\%":"");k&&(C=k);var I=e.match("^("+Gi+")("+C+")?$");I&&(e=I[1],k=I[2]||L)}else(!k||h.implicitUnits)&&(k=L);if(e=parseFloat(e),isNaN(e)&&h.enums===void 0)return null;if(isNaN(e)&&h.enums!==void 0)return e=s,R();if(h.integer&&!jPe(e)||h.min!==void 0&&(e<h.min||h.strictMin&&e===h.min)||h.max!==void 0&&(e>h.max||h.strictMax&&e===h.max))return null;var M={name:t,value:e,strValue:""+e+(k||""),units:k,bypass:r};return h.unitless||k!=="px"&&k!=="em"?M.pfValue=e:M.pfValue=k==="px"||!k?e:this.getEmSizeInPixels()*e,(k==="ms"||k==="s")&&(M.pfValue=k==="ms"?e:1e3*e),(k==="deg"||k==="rad")&&(M.pfValue=k==="rad"?e:_Fe(e)),k==="%"&&(M.pfValue=e/100),M}else if(h.propList){var P=[],B=""+e;if(B!=="none"){for(var F=B.split(/\s*,\s*|\s+/),G=0;G<F.length;G++){var $=F[G].trim();i.properties[$]?P.push($):ln("`"+$+"` is not a valid property name")}if(P.length===0)return null}return{name:t,value:P,strValue:P.length===0?"none":P.join(" "),bypass:r}}else if(h.color){var U=Boe(e);return U?{name:t,value:U,pfValue:U,strValue:"rgb("+U[0]+","+U[1]+","+U[2]+")",bypass:r}:null}else if(h.regex||h.regexes){if(h.enums){var K=R();if(K)return K}for(var ne=h.regexes?h.regexes:[h.regex],j=0;j<ne.length;j++){var le=new RegExp(ne[j]),Z=le.exec(e);if(Z)return{name:t,value:h.singleRegexMatchValue?Z[1]:Z,strValue:""+e,bypass:r}}return null}else return h.string?{name:t,value:""+e,strValue:""+e,bypass:r}:h.enums?R():null};Oa=o(function t(e){if(!(this instanceof t))return new t(e);if(!GN(e)){oi("A style must have a core reference");return}this._private={cy:e,coreStyle:{}},this.length=0,this.resetToDefault()},"Style"),Ba=Oa.prototype;Ba.instanceString=function(){return"style"};Ba.clear=function(){for(var t=this._private,e=t.cy,r=e.elements(),n=0;n<this.length;n++)this[n]=void 0;return this.length=0,t.contextStyles={},t.propDiffs={},this.cleanElements(r,!0),r.forEach(function(i){var a=i[0]._private;a.styleDirty=!0,a.appliedInitStyle=!1}),this};Ba.resetToDefault=function(){return this.clear(),this.addDefaultStylesheet(),this};Ba.core=function(t){return this._private.coreStyle[t]||this.getDefaultProperty(t)};Ba.selector=function(t){var e=t==="core"?null:new bf(t),r=this.length++;return this[r]={selector:e,properties:[],mappedProperties:[],index:r},this};Ba.css=function(){var t=this,e=arguments;if(e.length===1)for(var r=e[0],n=0;n<t.properties.length;n++){var i=t.properties[n],a=r[i.name];a===void 0&&(a=r[iE(i.name)]),a!==void 0&&this.cssRule(i.name,a)}else e.length===2&&this.cssRule(e[0],e[1]);return this};Ba.style=Ba.css;Ba.cssRule=function(t,e){var r=this.parse(t,e);if(r){var n=this.length-1;this[n].properties.push(r),this[n].properties[r.name]=r,r.name.match(/pie-(\d+)-background-size/)&&r.value&&(this._private.hasPie=!0),r.mapped&&this[n].mappedProperties.push(r);var i=!this[n].selector;i&&(this._private.coreStyle[r.name]=r)}return this};Ba.append=function(t){return Ioe(t)?t.appendToStyle(this):kn(t)?this.appendFromJson(t):Jt(t)&&this.appendFromString(t),this};Oa.fromJson=function(t,e){var r=new Oa(t);return r.fromJson(e),r};Oa.fromString=function(t,e){return new Oa(t).fromString(e)};[Fa,wx,tM,Ic,gE,rM,ga,yE].forEach(function(t){ir(Ba,t)});Oa.types=Ba.types;Oa.properties=Ba.properties;Oa.propertyGroups=Ba.propertyGroups;Oa.propertyGroupNames=Ba.propertyGroupNames;Oa.propertyGroupKeys=Ba.propertyGroupKeys;XVe={style:o(function(e){if(e){var r=this.setStyle(e);r.update()}return this._private.style},"style"),setStyle:o(function(e){var r=this._private;return Ioe(e)?r.style=e.generateStyle(this):kn(e)?r.style=Oa.fromJson(this,e):Jt(e)?r.style=Oa.fromString(this,e):r.style=Oa(this),r.style},"setStyle"),updateStyle:o(function(){this.mutableElements().updateStyle()},"updateStyle")},jVe="single",xp={autolock:o(function(e){if(e!==void 0)this._private.autolock=!!e;else return this._private.autolock;return this},"autolock"),autoungrabify:o(function(e){if(e!==void 0)this._private.autoungrabify=!!e;else return this._private.autoungrabify;return this},"autoungrabify"),autounselectify:o(function(e){if(e!==void 0)this._private.autounselectify=!!e;else return this._private.autounselectify;return this},"autounselectify"),selectionType:o(function(e){var r=this._private;if(r.selectionType==null&&(r.selectionType=jVe),e!==void 0)(e==="additive"||e==="single")&&(r.selectionType=e);else return r.selectionType;return this},"selectionType"),panningEnabled:o(function(e){if(e!==void 0)this._private.panningEnabled=!!e;else return this._private.panningEnabled;return this},"panningEnabled"),userPanningEnabled:o(function(e){if(e!==void 0)this._private.userPanningEnabled=!!e;else return this._private.userPanningEnabled;return this},"userPanningEnabled"),zoomingEnabled:o(function(e){if(e!==void 0)this._private.zoomingEnabled=!!e;else return this._private.zoomingEnabled;return this},"zoomingEnabled"),userZoomingEnabled:o(function(e){if(e!==void 0)this._private.userZoomingEnabled=!!e;else return this._private.userZoomingEnabled;return this},"userZoomingEnabled"),boxSelectionEnabled:o(function(e){if(e!==void 0)this._private.boxSelectionEnabled=!!e;else return this._private.boxSelectionEnabled;return this},"boxSelectionEnabled"),pan:o(function(){var e=arguments,r=this._private.pan,n,i,a,s,l;switch(e.length){case 0:return r;case 1:if(Jt(e[0]))return n=e[0],r[n];if(Vr(e[0])){if(!this._private.panningEnabled)return this;a=e[0],s=a.x,l=a.y,At(s)&&(r.x=s),At(l)&&(r.y=l),this.emit("pan viewport")}break;case 2:if(!this._private.panningEnabled)return this;n=e[0],i=e[1],(n==="x"||n==="y")&&At(i)&&(r[n]=i),this.emit("pan viewport");break}return this.notify("viewport"),this},"pan"),panBy:o(function(e,r){var n=arguments,i=this._private.pan,a,s,l,u,h;if(!this._private.panningEnabled)return this;switch(n.length){case 1:Vr(e)&&(l=n[0],u=l.x,h=l.y,At(u)&&(i.x+=u),At(h)&&(i.y+=h),this.emit("pan viewport"));break;case 2:a=e,s=r,(a==="x"||a==="y")&&At(s)&&(i[a]+=s),this.emit("pan viewport");break}return this.notify("viewport"),this},"panBy"),gc:o(function(){this.notify("gc")},"gc"),fit:o(function(e,r){var n=this.getFitViewport(e,r);if(n){var i=this._private;i.zoom=n.zoom,i.pan=n.pan,this.emit("pan zoom viewport"),this.notify("viewport")}return this},"fit"),getFitViewport:o(function(e,r){if(At(e)&&r===void 0&&(r=e,e=void 0),!(!this._private.panningEnabled||!this._private.zoomingEnabled)){var n;if(Jt(e)){var i=e;e=this.$(i)}else if(ZPe(e)){var a=e;n={x1:a.x1,y1:a.y1,x2:a.x2,y2:a.y2},n.w=n.x2-n.x1,n.h=n.y2-n.y1}else ho(e)||(e=this.mutableElements());if(!(ho(e)&&e.empty())){n=n||e.boundingBox();var s=this.width(),l=this.height(),u;if(r=At(r)?r:0,!isNaN(s)&&!isNaN(l)&&s>0&&l>0&&!isNaN(n.w)&&!isNaN(n.h)&&n.w>0&&n.h>0){u=Math.min((s-2*r)/n.w,(l-2*r)/n.h),u=u>this._private.maxZoom?this._private.maxZoom:u,u=u<this._private.minZoom?this._private.minZoom:u;var h={x:(s-u*(n.x1+n.x2))/2,y:(l-u*(n.y1+n.y2))/2};return{zoom:u,pan:h}}}}},"getFitViewport"),zoomRange:o(function(e,r){var n=this._private;if(r==null){var i=e;e=i.min,r=i.max}return At(e)&&At(r)&&e<=r?(n.minZoom=e,n.maxZoom=r):At(e)&&r===void 0&&e<=n.maxZoom?n.minZoom=e:At(r)&&e===void 0&&r>=n.minZoom&&(n.maxZoom=r),this},"zoomRange"),minZoom:o(function(e){return e===void 0?this._private.minZoom:this.zoomRange({min:e})},"minZoom"),maxZoom:o(function(e){return e===void 0?this._private.maxZoom:this.zoomRange({max:e})},"maxZoom"),getZoomedViewport:o(function(e){var r=this._private,n=r.pan,i=r.zoom,a,s,l=!1;if(r.zoomingEnabled||(l=!0),At(e)?s=e:Vr(e)&&(s=e.level,e.position!=null?a=oE(e.position,i,n):e.renderedPosition!=null&&(a=e.renderedPosition),a!=null&&!r.panningEnabled&&(l=!0)),s=s>r.maxZoom?r.maxZoom:s,s=s<r.minZoom?r.minZoom:s,l||!At(s)||s===i||a!=null&&(!At(a.x)||!At(a.y)))return null;if(a!=null){var u=n,h=i,f=s,d={x:-f/h*(a.x-u.x)+a.x,y:-f/h*(a.y-u.y)+a.y};return{zoomed:!0,panned:!0,zoom:f,pan:d}}else return{zoomed:!0,panned:!1,zoom:s,pan:n}},"getZoomedViewport"),zoom:o(function(e){if(e===void 0)return this._private.zoom;var r=this.getZoomedViewport(e),n=this._private;return r==null||!r.zoomed?this:(n.zoom=r.zoom,r.panned&&(n.pan.x=r.pan.x,n.pan.y=r.pan.y),this.emit("zoom"+(r.panned?" pan":"")+" viewport"),this.notify("viewport"),this)},"zoom"),viewport:o(function(e){var r=this._private,n=!0,i=!0,a=[],s=!1,l=!1;if(!e)return this;if(At(e.zoom)||(n=!1),Vr(e.pan)||(i=!1),!n&&!i)return this;if(n){var u=e.zoom;u<r.minZoom||u>r.maxZoom||!r.zoomingEnabled?s=!0:(r.zoom=u,a.push("zoom"))}if(i&&(!s||!e.cancelOnFailedZoom)&&r.panningEnabled){var h=e.pan;At(h.x)&&(r.pan.x=h.x,l=!1),At(h.y)&&(r.pan.y=h.y,l=!1),l||a.push("pan")}return a.length>0&&(a.push("viewport"),this.emit(a.join(" ")),this.notify("viewport")),this},"viewport"),center:o(function(e){var r=this.getCenterPan(e);return r&&(this._private.pan=r,this.emit("pan viewport"),this.notify("viewport")),this},"center"),getCenterPan:o(function(e,r){if(this._private.panningEnabled){if(Jt(e)){var n=e;e=this.mutableElements().filter(n)}else ho(e)||(e=this.mutableElements());if(e.length!==0){var i=e.boundingBox(),a=this.width(),s=this.height();r=r===void 0?this._private.zoom:r;var l={x:(a-r*(i.x1+i.x2))/2,y:(s-r*(i.y1+i.y2))/2};return l}}},"getCenterPan"),reset:o(function(){return!this._private.panningEnabled||!this._private.zoomingEnabled?this:(this.viewport({pan:{x:0,y:0},zoom:1}),this)},"reset"),invalidateSize:o(function(){this._private.sizeCache=null},"invalidateSize"),size:o(function(){var e=this._private,r=e.container,n=this;return e.sizeCache=e.sizeCache||(r?function(){var i=n.window().getComputedStyle(r),a=o(function(l){return parseFloat(i.getPropertyValue(l))},"val");return{width:r.clientWidth-a("padding-left")-a("padding-right"),height:r.clientHeight-a("padding-top")-a("padding-bottom")}}():{width:1,height:1})},"size"),width:o(function(){return this.size().width},"width"),height:o(function(){return this.size().height},"height"),extent:o(function(){var e=this._private.pan,r=this._private.zoom,n=this.renderedExtent(),i={x1:(n.x1-e.x)/r,x2:(n.x2-e.x)/r,y1:(n.y1-e.y)/r,y2:(n.y2-e.y)/r};return i.w=i.x2-i.x1,i.h=i.y2-i.y1,i},"extent"),renderedExtent:o(function(){var e=this.width(),r=this.height();return{x1:0,y1:0,x2:e,y2:r,w:e,h:r}},"renderedExtent"),multiClickDebounceTime:o(function(e){if(e)this._private.multiClickDebounceTime=e;else return this._private.multiClickDebounceTime;return this},"multiClickDebounceTime")};xp.centre=xp.center;xp.autolockNodes=xp.autolock;xp.autoungrabifyNodes=xp.autoungrabify;px={data:on.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:on.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:on.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:on.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};px.attr=px.data;px.removeAttr=px.removeData;mx=o(function(e){var r=this;e=ir({},e);var n=e.container;n&&!qk(n)&&qk(n[0])&&(n=n[0]);var i=n?n._cyreg:null;i=i||{},i&&i.cy&&(i.cy.destroy(),i={});var a=i.readies=i.readies||[];n&&(n._cyreg=i),i.cy=r;var s=$i!==void 0&&n!==void 0&&!e.headless,l=e;l.layout=ir({name:s?"grid":"null"},l.layout),l.renderer=ir({name:s?"canvas":"null"},l.renderer);var u=o(function(g,y,x){return y!==void 0?y:x!==void 0?x:g},"defVal"),h=this._private={container:n,ready:!1,options:l,elements:new va(this),listeners:[],aniEles:new va(this),data:l.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:1e-50,maxZoom:1e50,zoomingEnabled:u(!0,l.zoomingEnabled),userZoomingEnabled:u(!0,l.userZoomingEnabled),panningEnabled:u(!0,l.panningEnabled),userPanningEnabled:u(!0,l.userPanningEnabled),boxSelectionEnabled:u(!0,l.boxSelectionEnabled),autolock:u(!1,l.autolock,l.autolockNodes),autoungrabify:u(!1,l.autoungrabify,l.autoungrabifyNodes),autounselectify:u(!1,l.autounselectify),styleEnabled:l.styleEnabled===void 0?s:l.styleEnabled,zoom:At(l.zoom)?l.zoom:1,pan:{x:Vr(l.pan)&&At(l.pan.x)?l.pan.x:0,y:Vr(l.pan)&&At(l.pan.y)?l.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1,multiClickDebounceTime:u(250,l.multiClickDebounceTime)};this.createEmitter(),this.selectionType(l.selectionType),this.zoomRange({min:l.minZoom,max:l.maxZoom});var f=o(function(g,y){var x=g.some(JPe);if(x)return sg.all(g).then(y);y(g)},"loadExtData");h.styleEnabled&&r.setStyle([]);var d=ir({},l,l.renderer);r.initRenderer(d);var p=o(function(g,y,x){r.notifications(!1);var v=r.mutableElements();v.length>0&&v.remove(),g!=null&&(Vr(g)||kn(g))&&r.add(g),r.one("layoutready",function(T){r.notifications(!0),r.emit(T),r.one("load",y),r.emitAndNotify("load")}).one("layoutstop",function(){r.one("done",x),r.emit("done")});var b=ir({},r._private.options.layout);b.eles=r.elements(),r.layout(b).run()},"setElesAndLayout");f([l.style,l.elements],function(m){var g=m[0],y=m[1];h.styleEnabled&&r.style().append(g),p(y,function(){r.startAnimationLoop(),h.ready=!0,li(l.ready)&&r.on("ready",l.ready);for(var x=0;x<a.length;x++){var v=a[x];r.on("ready",v)}i&&(i.readies=[]),r.emit("ready")},l.done)})},"Core"),Jk=mx.prototype;ir(Jk,{instanceString:o(function(){return"core"},"instanceString"),isReady:o(function(){return this._private.ready},"isReady"),destroyed:o(function(){return this._private.destroyed},"destroyed"),ready:o(function(e){return this.isReady()?this.emitter().emit("ready",[],e):this.on("ready",e),this},"ready"),destroy:o(function(){var e=this;if(!e.destroyed())return e.stopAnimationLoop(),e.destroyRenderer(),this.emit("destroy"),e._private.destroyed=!0,e},"destroy"),hasElementWithId:o(function(e){return this._private.elements.hasElementWithId(e)},"hasElementWithId"),getElementById:o(function(e){return this._private.elements.getElementById(e)},"getElementById"),hasCompoundNodes:o(function(){return this._private.hasCompoundNodes},"hasCompoundNodes"),headless:o(function(){return this._private.renderer.isHeadless()},"headless"),styleEnabled:o(function(){return this._private.styleEnabled},"styleEnabled"),addToPool:o(function(e){return this._private.elements.merge(e),this},"addToPool"),removeFromPool:o(function(e){return this._private.elements.unmerge(e),this},"removeFromPool"),container:o(function(){return this._private.container||null},"container"),window:o(function(){var e=this._private.container;if(e==null)return $i;var r=this._private.container.ownerDocument;return r===void 0||r==null?$i:r.defaultView||$i},"window"),mount:o(function(e){if(e!=null){var r=this,n=r._private,i=n.options;return!qk(e)&&qk(e[0])&&(e=e[0]),r.stopAnimationLoop(),r.destroyRenderer(),n.container=e,n.styleEnabled=!0,r.invalidateSize(),r.initRenderer(ir({},i,i.renderer,{name:i.renderer.name==="null"?"canvas":i.renderer.name})),r.startAnimationLoop(),r.style(i.style),r.emit("mount"),r}},"mount"),unmount:o(function(){var e=this;return e.stopAnimationLoop(),e.destroyRenderer(),e.initRenderer({name:"null"}),e.emit("unmount"),e},"unmount"),options:o(function(){return Nc(this._private.options)},"options"),json:o(function(e){var r=this,n=r._private,i=r.mutableElements(),a=o(function(S){return r.getElementById(S.id())},"getFreshRef");if(Vr(e)){if(r.startBatch(),e.elements){var s={},l=o(function(S,w){for(var E=[],_=[],A=0;A<S.length;A++){var D=S[A];if(!D.data.id){ln("cy.json() cannot handle elements without an ID attribute");continue}var O=""+D.data.id,R=r.getElementById(O);s[O]=!0,R.length!==0?_.push({ele:R,json:D}):(w&&(D.group=w),E.push(D))}r.add(E);for(var k=0;k<_.length;k++){var L=_[k],C=L.ele,I=L.json;C.json(I)}},"updateEles");if(kn(e.elements))l(e.elements);else for(var u=["nodes","edges"],h=0;h<u.length;h++){var f=u[h],d=e.elements[f];kn(d)&&l(d,f)}var p=r.collection();i.filter(function(T){return!s[T.id()]}).forEach(function(T){T.isParent()?p.merge(T):T.remove()}),p.forEach(function(T){return T.children().move({parent:null})}),p.forEach(function(T){return a(T).remove()})}e.style&&r.style(e.style),e.zoom!=null&&e.zoom!==n.zoom&&r.zoom(e.zoom),e.pan&&(e.pan.x!==n.pan.x||e.pan.y!==n.pan.y)&&r.pan(e.pan),e.data&&r.data(e.data);for(var m=["minZoom","maxZoom","zoomingEnabled","userZoomingEnabled","panningEnabled","userPanningEnabled","boxSelectionEnabled","autolock","autoungrabify","autounselectify","multiClickDebounceTime"],g=0;g<m.length;g++){var y=m[g];e[y]!=null&&r[y](e[y])}return r.endBatch(),this}else{var x=!!e,v={};x?v.elements=this.elements().map(function(T){return T.json()}):(v.elements={},i.forEach(function(T){var S=T.group();v.elements[S]||(v.elements[S]=[]),v.elements[S].push(T.json())})),this._private.styleEnabled&&(v.style=r.style().json()),v.data=Nc(r.data());var b=n.options;return v.zoomingEnabled=n.zoomingEnabled,v.userZoomingEnabled=n.userZoomingEnabled,v.zoom=n.zoom,v.minZoom=n.minZoom,v.maxZoom=n.maxZoom,v.panningEnabled=n.panningEnabled,v.userPanningEnabled=n.userPanningEnabled,v.pan=Nc(n.pan),v.boxSelectionEnabled=n.boxSelectionEnabled,v.renderer=Nc(b.renderer),v.hideEdgesOnViewport=b.hideEdgesOnViewport,v.textureOnViewport=b.textureOnViewport,v.wheelSensitivity=b.wheelSensitivity,v.motionBlur=b.motionBlur,v.multiClickDebounceTime=b.multiClickDebounceTime,v}},"json")});Jk.$id=Jk.getElementById;[FVe,UVe,Ple,DN,Vk,WVe,LN,Uk,XVe,xp,px].forEach(function(t){ir(Jk,t)});KVe={fit:!0,directed:!1,padding:30,circle:!1,grid:!1,spacingFactor:1.75,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,roots:void 0,depthSort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(e,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(e,r){return r},"transform")},QVe={maximal:!1,acyclic:!1},qm=o(function(e){return e.scratch("breadthfirst")},"getInfo"),ioe=o(function(e,r){return e.scratch("breadthfirst",r)},"setInfo");o(Ble,"BreadthFirstLayout");Ble.prototype.run=function(){var t=this.options,e=t.cy,r=t.eles,n=r.nodes().filter(function(W){return W.isChildless()}),i=r,a=t.directed,s=t.acyclic||t.maximal||t.maximalAdjustments>0,l=!!t.boundingBox,u=e.extent(),h=Us(l?t.boundingBox:{x1:u.x1,y1:u.y1,w:u.w,h:u.h}),f;if(ho(t.roots))f=t.roots;else if(kn(t.roots)){for(var d=[],p=0;p<t.roots.length;p++){var m=t.roots[p],g=e.getElementById(m);d.push(g)}f=e.collection(d)}else if(Jt(t.roots))f=e.$(t.roots);else if(a)f=n.roots();else{var y=r.components();f=e.collection();for(var x=o(function(Oe){var ve=y[Oe],Pe=ve.maxDegree(!1),qe=ve.filter(function(Ge){return Ge.degree(!1)===Pe});f=f.add(qe)},"_loop"),v=0;v<y.length;v++)x(v)}var b=[],T={},S=o(function(Oe,ve){b[ve]==null&&(b[ve]=[]);var Pe=b[ve].length;b[ve].push(Oe),ioe(Oe,{index:Pe,depth:ve})},"addToDepth"),w=o(function(Oe,ve){var Pe=qm(Oe),qe=Pe.depth,Ge=Pe.index;b[qe][Ge]=null,Oe.isChildless()&&S(Oe,ve)},"changeDepth");i.bfs({roots:f,directed:t.directed,visit:o(function(Oe,ve,Pe,qe,Ge){var Ne=Oe[0],Me=Ne.id();Ne.isChildless()&&S(Ne,Ge),T[Me]=!0},"visit")});for(var E=[],_=0;_<n.length;_++){var A=n[_];T[A.id()]||E.push(A)}var D=o(function(Oe){for(var ve=b[Oe],Pe=0;Pe<ve.length;Pe++){var qe=ve[Pe];if(qe==null){ve.splice(Pe,1),Pe--;continue}ioe(qe,{depth:Oe,index:Pe})}},"assignDepthsAt"),O=o(function(Oe,ve){for(var Pe=qm(Oe),qe=Oe.incomers().filter(function(ae){return ae.isNode()&&r.has(ae)}),Ge=-1,Ne=Oe.id(),Me=0;Me<qe.length;Me++){var be=qe[Me],q=qm(be);Ge=Math.max(Ge,q.depth)}if(Pe.depth<=Ge){if(!t.acyclic&&ve[Ne])return null;var fe=Ge+1;return w(Oe,fe),ve[Ne]=fe,!0}return!1},"adjustMaximally");if(a&&s){var R=[],k={},L=o(function(Oe){return R.push(Oe)},"enqueue"),C=o(function(){return R.shift()},"dequeue");for(n.forEach(function(W){return R.push(W)});R.length>0;){var I=C(),M=O(I,k);if(M)I.outgoers().filter(function(W){return W.isNode()&&r.has(W)}).forEach(L);else if(M===null){ln("Detected double maximal shift for node `"+I.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}var P=0;if(t.avoidOverlap)for(var B=0;B<n.length;B++){var F=n[B],G=F.layoutDimensions(t),$=G.w,U=G.h;P=Math.max(P,$,U)}var K={},ne=o(function(Oe){if(K[Oe.id()])return K[Oe.id()];for(var ve=qm(Oe).depth,Pe=Oe.neighborhood(),qe=0,Ge=0,Ne=0;Ne<Pe.length;Ne++){var Me=Pe[Ne];if(!(Me.isEdge()||Me.isParent()||!n.has(Me))){var be=qm(Me);if(be!=null){var q=be.index,fe=be.depth;if(!(q==null||fe==null)){var ae=b[fe].length;fe<ve&&(qe+=q/ae,Ge++)}}}}return Ge=Math.max(1,Ge),qe=qe/Ge,Ge===0&&(qe=0),K[Oe.id()]=qe,qe},"getWeightedPercent"),j=o(function(Oe,ve){var Pe=ne(Oe),qe=ne(ve),Ge=Pe-qe;return Ge===0?Poe(Oe.id(),ve.id()):Ge},"sortFn");t.depthSort!==void 0&&(j=t.depthSort);for(var le=b.length,Z=0;Z<le;Z++)b[Z].sort(j),D(Z);for(var ce=[],Q=0;Q<E.length;Q++)ce.push(E[Q]);var ee=o(function(){for(var Oe=0;Oe<le;Oe++)D(Oe)},"assignDepths");ce.length&&(b.unshift(ce),le=b.length,ee());for(var te=0,re=0;re<le;re++)te=Math.max(b[re].length,te);var he={x:h.x1+h.w/2,y:h.y1+h.h/2},J=n.reduce(function(W,Oe){return function(ve){return{w:W.w===-1?ve.w:(W.w+ve.w)/2,h:W.h===-1?ve.h:(W.h+ve.h)/2}}(Oe.boundingBox({includeLabels:t.nodeDimensionsIncludeLabels}))},{w:-1,h:-1}),ye=Math.max(le===1?0:l?(h.h-t.padding*2-J.h)/(le-1):(h.h-t.padding*2-J.h)/(le+1),P),se=b.reduce(function(W,Oe){return Math.max(W,Oe.length)},0),Se=o(function(Oe){var ve=qm(Oe),Pe=ve.depth,qe=ve.index;if(t.circle){var Ge=Math.min(h.w/2/le,h.h/2/le);Ge=Math.max(Ge,P);var Ne=Ge*Pe+Ge-(le>0&&b[0].length<=3?Ge/2:0),Me=2*Math.PI/b[Pe].length*qe;return Pe===0&&b[0].length===1&&(Ne=1),{x:he.x+Ne*Math.cos(Me),y:he.y+Ne*Math.sin(Me)}}else{var be=b[Pe].length,q=Math.max(be===1?0:l?(h.w-t.padding*2-J.w)/((t.grid?se:be)-1):(h.w-t.padding*2-J.w)/((t.grid?se:be)+1),P),fe={x:he.x+(qe+1-(be+1)/2)*q,y:he.y+(Pe+1-(le+1)/2)*ye};return fe}},"getPosition");return r.nodes().layoutPositions(this,t,Se),this};ZVe={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,radius:void 0,startAngle:3/2*Math.PI,sweep:void 0,clockwise:!0,sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(e,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(e,r){return r},"transform")};o(Fle,"CircleLayout");Fle.prototype.run=function(){var t=this.options,e=t,r=t.cy,n=e.eles,i=e.counterclockwise!==void 0?!e.counterclockwise:e.clockwise,a=n.nodes().not(":parent");e.sort&&(a=a.sort(e.sort));for(var s=Us(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()}),l={x:s.x1+s.w/2,y:s.y1+s.h/2},u=e.sweep===void 0?2*Math.PI-2*Math.PI/a.length:e.sweep,h=u/Math.max(1,a.length-1),f,d=0,p=0;p<a.length;p++){var m=a[p],g=m.layoutDimensions(e),y=g.w,x=g.h;d=Math.max(d,y,x)}if(At(e.radius)?f=e.radius:a.length<=1?f=0:f=Math.min(s.h,s.w)/2-d,a.length>1&&e.avoidOverlap){d*=1.75;var v=Math.cos(h)-Math.cos(0),b=Math.sin(h)-Math.sin(0),T=Math.sqrt(d*d/(v*v+b*b));f=Math.max(T,f)}var S=o(function(E,_){var A=e.startAngle+_*h*(i?1:-1),D=f*Math.cos(A),O=f*Math.sin(A),R={x:l.x+D,y:l.y+O};return R},"getPos");return n.nodes().layoutPositions(this,e,S),this};JVe={fit:!0,padding:30,startAngle:3/2*Math.PI,sweep:void 0,clockwise:!0,equidistant:!1,minNodeSpacing:10,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,height:void 0,width:void 0,spacingFactor:void 0,concentric:o(function(e){return e.degree()},"concentric"),levelWidth:o(function(e){return e.maxDegree()/4},"levelWidth"),animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(e,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(e,r){return r},"transform")};o($le,"ConcentricLayout");$le.prototype.run=function(){for(var t=this.options,e=t,r=e.counterclockwise!==void 0?!e.counterclockwise:e.clockwise,n=t.cy,i=e.eles,a=i.nodes().not(":parent"),s=Us(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:n.width(),h:n.height()}),l={x:s.x1+s.w/2,y:s.y1+s.h/2},u=[],h=0,f=0;f<a.length;f++){var d=a[f],p=void 0;p=e.concentric(d),u.push({value:p,node:d}),d._private.scratch.concentric=p}a.updateStyle();for(var m=0;m<a.length;m++){var g=a[m],y=g.layoutDimensions(e);h=Math.max(h,y.w,y.h)}u.sort(function(J,ye){return ye.value-J.value});for(var x=e.levelWidth(a),v=[[]],b=v[0],T=0;T<u.length;T++){var S=u[T];if(b.length>0){var w=Math.abs(b[0].value-S.value);w>=x&&(b=[],v.push(b))}b.push(S)}var E=h+e.minNodeSpacing;if(!e.avoidOverlap){var _=v.length>0&&v[0].length>1,A=Math.min(s.w,s.h)/2-E,D=A/(v.length+_?1:0);E=Math.min(E,D)}for(var O=0,R=0;R<v.length;R++){var k=v[R],L=e.sweep===void 0?2*Math.PI-2*Math.PI/k.length:e.sweep,C=k.dTheta=L/Math.max(1,k.length-1);if(k.length>1&&e.avoidOverlap){var I=Math.cos(C)-Math.cos(0),M=Math.sin(C)-Math.sin(0),P=Math.sqrt(E*E/(I*I+M*M));O=Math.max(P,O)}k.r=O,O+=E}if(e.equidistant){for(var B=0,F=0,G=0;G<v.length;G++){var $=v[G],U=$.r-F;B=Math.max(B,U)}F=0;for(var K=0;K<v.length;K++){var ne=v[K];K===0&&(F=ne.r),ne.r=F,F+=B}}for(var j={},le=0;le<v.length;le++)for(var Z=v[le],ce=Z.dTheta,Q=Z.r,ee=0;ee<Z.length;ee++){var te=Z[ee],re=e.startAngle+(r?1:-1)*ce*ee,he={x:l.x+Q*Math.cos(re),y:l.y+Q*Math.sin(re)};j[te.node.id()]=he}return i.nodes().layoutPositions(this,e,function(J){var ye=J.id();return j[ye]}),this};eUe={ready:o(function(){},"ready"),stop:o(function(){},"stop"),animate:!0,animationEasing:void 0,animationDuration:void 0,animateFilter:o(function(e,r){return!0},"animateFilter"),animationThreshold:250,refresh:20,fit:!0,padding:30,boundingBox:void 0,nodeDimensionsIncludeLabels:!1,randomize:!1,componentSpacing:40,nodeRepulsion:o(function(e){return 2048},"nodeRepulsion"),nodeOverlap:4,idealEdgeLength:o(function(e){return 32},"idealEdgeLength"),edgeElasticity:o(function(e){return 32},"edgeElasticity"),nestingFactor:1.2,gravity:1,numIter:1e3,initialTemp:1e3,coolingFactor:.99,minTemp:1};o(vE,"CoseLayout");vE.prototype.run=function(){var t=this.options,e=t.cy,r=this;r.stopped=!1,(t.animate===!0||t.animate===!1)&&r.emit({type:"layoutstart",layout:r}),t.debug===!0?mN=!0:mN=!1;var n=tUe(e,r,t);mN&&iUe(n),t.randomize&&aUe(n);var i=Bu(),a=o(function(){sUe(n,e,t),t.fit===!0&&e.fit(t.padding)},"refresh"),s=o(function(p){return!(r.stopped||p>=t.numIter||(oUe(n,t),n.temperature=n.temperature*t.coolingFactor,n.temperature<t.minTemp))},"mainLoop"),l=o(function(){if(t.animate===!0||t.animate===!1)a(),r.one("layoutstop",t.stop),r.emit({type:"layoutstop",layout:r});else{var p=t.eles.nodes(),m=Gle(n,t,p);p.layoutPositions(r,t,m)}},"done"),u=0,h=!0;if(t.animate===!0){var f=o(function d(){for(var p=0;h&&p<t.refresh;)h=s(u),u++,p++;if(!h)soe(n,t),l();else{var m=Bu();m-i>=t.animationThreshold&&a(),Yk(d)}},"frame");f()}else{for(;h;)h=s(u),u++;soe(n,t),l()}return this};vE.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this};vE.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};tUe=o(function(e,r,n){for(var i=n.eles.edges(),a=n.eles.nodes(),s=Us(n.boundingBox?n.boundingBox:{x1:0,y1:0,w:e.width(),h:e.height()}),l={isCompound:e.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:a.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:i.size(),temperature:n.initialTemp,clientWidth:s.w,clientHeight:s.h,boundingBox:s},u=n.eles.components(),h={},f=0;f<u.length;f++)for(var d=u[f],p=0;p<d.length;p++){var m=d[p];h[m.id()]=f}for(var f=0;f<l.nodeSize;f++){var g=a[f],y=g.layoutDimensions(n),x={};x.isLocked=g.locked(),x.id=g.data("id"),x.parentId=g.data("parent"),x.cmptId=h[g.id()],x.children=[],x.positionX=g.position("x"),x.positionY=g.position("y"),x.offsetX=0,x.offsetY=0,x.height=y.w,x.width=y.h,x.maxX=x.positionX+x.width/2,x.minX=x.positionX-x.width/2,x.maxY=x.positionY+x.height/2,x.minY=x.positionY-x.height/2,x.padLeft=parseFloat(g.style("padding")),x.padRight=parseFloat(g.style("padding")),x.padTop=parseFloat(g.style("padding")),x.padBottom=parseFloat(g.style("padding")),x.nodeRepulsion=li(n.nodeRepulsion)?n.nodeRepulsion(g):n.nodeRepulsion,l.layoutNodes.push(x),l.idToIndex[x.id]=f}for(var v=[],b=0,T=-1,S=[],f=0;f<l.nodeSize;f++){var g=l.layoutNodes[f],w=g.parentId;w!=null?l.layoutNodes[l.idToIndex[w]].children.push(g.id):(v[++T]=g.id,S.push(g.id))}for(l.graphSet.push(S);b<=T;){var E=v[b++],_=l.idToIndex[E],m=l.layoutNodes[_],A=m.children;if(A.length>0){l.graphSet.push(A);for(var f=0;f<A.length;f++)v[++T]=A[f]}}for(var f=0;f<l.graphSet.length;f++)for(var D=l.graphSet[f],p=0;p<D.length;p++){var O=l.idToIndex[D[p]];l.indexToGraph[O]=f}for(var f=0;f<l.edgeSize;f++){var R=i[f],k={};k.id=R.data("id"),k.sourceId=R.data("source"),k.targetId=R.data("target");var L=li(n.idealEdgeLength)?n.idealEdgeLength(R):n.idealEdgeLength,C=li(n.edgeElasticity)?n.edgeElasticity(R):n.edgeElasticity,I=l.idToIndex[k.sourceId],M=l.idToIndex[k.targetId],P=l.indexToGraph[I],B=l.indexToGraph[M];if(P!=B){for(var F=rUe(k.sourceId,k.targetId,l),G=l.graphSet[F],$=0,x=l.layoutNodes[I];G.indexOf(x.id)===-1;)x=l.layoutNodes[l.idToIndex[x.parentId]],$++;for(x=l.layoutNodes[M];G.indexOf(x.id)===-1;)x=l.layoutNodes[l.idToIndex[x.parentId]],$++;L*=$*n.nestingFactor}k.idealLength=L,k.elasticity=C,l.layoutEdges.push(k)}return l},"createLayoutInfo"),rUe=o(function(e,r,n){var i=nUe(e,r,0,n);return 2>i.count?0:i.graph},"findLCA"),nUe=o(function t(e,r,n,i){var a=i.graphSet[n];if(-1<a.indexOf(e)&&-1<a.indexOf(r))return{count:2,graph:n};for(var s=0,l=0;l<a.length;l++){var u=a[l],h=i.idToIndex[u],f=i.layoutNodes[h].children;if(f.length!==0){var d=i.indexToGraph[i.idToIndex[f[0]]],p=t(e,r,d,i);if(p.count!==0)if(p.count===1){if(s++,s===2)break}else return p}}return{count:s,graph:n}},"findLCA_aux"),aUe=o(function(e,r){for(var n=e.clientWidth,i=e.clientHeight,a=0;a<e.nodeSize;a++){var s=e.layoutNodes[a];s.children.length===0&&!s.isLocked&&(s.positionX=Math.random()*n,s.positionY=Math.random()*i)}},"randomizePositions"),Gle=o(function(e,r,n){var i=e.boundingBox,a={x1:1/0,x2:-1/0,y1:1/0,y2:-1/0};return r.boundingBox&&(n.forEach(function(s){var l=e.layoutNodes[e.idToIndex[s.data("id")]];a.x1=Math.min(a.x1,l.positionX),a.x2=Math.max(a.x2,l.positionX),a.y1=Math.min(a.y1,l.positionY),a.y2=Math.max(a.y2,l.positionY)}),a.w=a.x2-a.x1,a.h=a.y2-a.y1),function(s,l){var u=e.layoutNodes[e.idToIndex[s.data("id")]];if(r.boundingBox){var h=(u.positionX-a.x1)/a.w,f=(u.positionY-a.y1)/a.h;return{x:i.x1+h*i.w,y:i.y1+f*i.h}}else return{x:u.positionX,y:u.positionY}}},"getScaleInBoundsFn"),sUe=o(function(e,r,n){var i=n.layout,a=n.eles.nodes(),s=Gle(e,n,a);a.positions(s),e.ready!==!0&&(e.ready=!0,i.one("layoutready",n.ready),i.emit({type:"layoutready",layout:this}))},"refreshPositions"),oUe=o(function(e,r,n){lUe(e,r),hUe(e),fUe(e,r),dUe(e),pUe(e)},"step"),lUe=o(function(e,r){for(var n=0;n<e.graphSet.length;n++)for(var i=e.graphSet[n],a=i.length,s=0;s<a;s++)for(var l=e.layoutNodes[e.idToIndex[i[s]]],u=s+1;u<a;u++){var h=e.layoutNodes[e.idToIndex[i[u]]];cUe(l,h,e,r)}},"calculateNodeForces"),aoe=o(function(e){return-e+2*e*Math.random()},"randomDistance"),cUe=o(function(e,r,n,i){var a=e.cmptId,s=r.cmptId;if(!(a!==s&&!n.isCompound)){var l=r.positionX-e.positionX,u=r.positionY-e.positionY,h=1;l===0&&u===0&&(l=aoe(h),u=aoe(h));var f=uUe(e,r,l,u);if(f>0)var d=i.nodeOverlap*f,p=Math.sqrt(l*l+u*u),m=d*l/p,g=d*u/p;else var y=eE(e,l,u),x=eE(r,-1*l,-1*u),v=x.x-y.x,b=x.y-y.y,T=v*v+b*b,p=Math.sqrt(T),d=(e.nodeRepulsion+r.nodeRepulsion)/T,m=d*v/p,g=d*b/p;e.isLocked||(e.offsetX-=m,e.offsetY-=g),r.isLocked||(r.offsetX+=m,r.offsetY+=g)}},"nodeRepulsion"),uUe=o(function(e,r,n,i){if(n>0)var a=e.maxX-r.minX;else var a=r.maxX-e.minX;if(i>0)var s=e.maxY-r.minY;else var s=r.maxY-e.minY;return a>=0&&s>=0?Math.sqrt(a*a+s*s):0},"nodesOverlap"),eE=o(function(e,r,n){var i=e.positionX,a=e.positionY,s=e.height||1,l=e.width||1,u=n/r,h=s/l,f={};return r===0&&0<n||r===0&&0>n?(f.x=i,f.y=a+s/2,f):0<r&&-1*h<=u&&u<=h?(f.x=i+l/2,f.y=a+l*n/2/r,f):0>r&&-1*h<=u&&u<=h?(f.x=i-l/2,f.y=a-l*n/2/r,f):0<n&&(u<=-1*h||u>=h)?(f.x=i+s*r/2/n,f.y=a+s/2,f):(0>n&&(u<=-1*h||u>=h)&&(f.x=i-s*r/2/n,f.y=a-s/2),f)},"findClippingPoint"),hUe=o(function(e,r){for(var n=0;n<e.edgeSize;n++){var i=e.layoutEdges[n],a=e.idToIndex[i.sourceId],s=e.layoutNodes[a],l=e.idToIndex[i.targetId],u=e.layoutNodes[l],h=u.positionX-s.positionX,f=u.positionY-s.positionY;if(!(h===0&&f===0)){var d=eE(s,h,f),p=eE(u,-1*h,-1*f),m=p.x-d.x,g=p.y-d.y,y=Math.sqrt(m*m+g*g),x=Math.pow(i.idealLength-y,2)/i.elasticity;if(y!==0)var v=x*m/y,b=x*g/y;else var v=0,b=0;s.isLocked||(s.offsetX+=v,s.offsetY+=b),u.isLocked||(u.offsetX-=v,u.offsetY-=b)}}},"calculateEdgeForces"),fUe=o(function(e,r){if(r.gravity!==0)for(var n=1,i=0;i<e.graphSet.length;i++){var a=e.graphSet[i],s=a.length;if(i===0)var l=e.clientHeight/2,u=e.clientWidth/2;else var h=e.layoutNodes[e.idToIndex[a[0]]],f=e.layoutNodes[e.idToIndex[h.parentId]],l=f.positionX,u=f.positionY;for(var d=0;d<s;d++){var p=e.layoutNodes[e.idToIndex[a[d]]];if(!p.isLocked){var m=l-p.positionX,g=u-p.positionY,y=Math.sqrt(m*m+g*g);if(y>n){var x=r.gravity*m/y,v=r.gravity*g/y;p.offsetX+=x,p.offsetY+=v}}}}},"calculateGravityForces"),dUe=o(function(e,r){var n=[],i=0,a=-1;for(n.push.apply(n,e.graphSet[0]),a+=e.graphSet[0].length;i<=a;){var s=n[i++],l=e.idToIndex[s],u=e.layoutNodes[l],h=u.children;if(0<h.length&&!u.isLocked){for(var f=u.offsetX,d=u.offsetY,p=0;p<h.length;p++){var m=e.layoutNodes[e.idToIndex[h[p]]];m.offsetX+=f,m.offsetY+=d,n[++a]=h[p]}u.offsetX=0,u.offsetY=0}}},"propagateForces"),pUe=o(function(e,r){for(var n=0;n<e.nodeSize;n++){var i=e.layoutNodes[n];0<i.children.length&&(i.maxX=void 0,i.minX=void 0,i.maxY=void 0,i.minY=void 0)}for(var n=0;n<e.nodeSize;n++){var i=e.layoutNodes[n];if(!(0<i.children.length||i.isLocked)){var a=mUe(i.offsetX,i.offsetY,e.temperature);i.positionX+=a.x,i.positionY+=a.y,i.offsetX=0,i.offsetY=0,i.minX=i.positionX-i.width,i.maxX=i.positionX+i.width,i.minY=i.positionY-i.height,i.maxY=i.positionY+i.height,gUe(i,e)}}for(var n=0;n<e.nodeSize;n++){var i=e.layoutNodes[n];0<i.children.length&&!i.isLocked&&(i.positionX=(i.maxX+i.minX)/2,i.positionY=(i.maxY+i.minY)/2,i.width=i.maxX-i.minX,i.height=i.maxY-i.minY)}},"updatePositions"),mUe=o(function(e,r,n){var i=Math.sqrt(e*e+r*r);if(i>n)var a={x:n*e/i,y:n*r/i};else var a={x:e,y:r};return a},"limitForce"),gUe=o(function t(e,r){var n=e.parentId;if(n!=null){var i=r.layoutNodes[r.idToIndex[n]],a=!1;if((i.maxX==null||e.maxX+i.padRight>i.maxX)&&(i.maxX=e.maxX+i.padRight,a=!0),(i.minX==null||e.minX-i.padLeft<i.minX)&&(i.minX=e.minX-i.padLeft,a=!0),(i.maxY==null||e.maxY+i.padBottom>i.maxY)&&(i.maxY=e.maxY+i.padBottom,a=!0),(i.minY==null||e.minY-i.padTop<i.minY)&&(i.minY=e.minY-i.padTop,a=!0),a)return t(i,r)}},"updateAncestryBoundaries"),soe=o(function(e,r){for(var n=e.layoutNodes,i=[],a=0;a<n.length;a++){var s=n[a],l=s.cmptId,u=i[l]=i[l]||[];u.push(s)}for(var h=0,a=0;a<i.length;a++){var f=i[a];if(f){f.x1=1/0,f.x2=-1/0,f.y1=1/0,f.y2=-1/0;for(var d=0;d<f.length;d++){var p=f[d];f.x1=Math.min(f.x1,p.positionX-p.width/2),f.x2=Math.max(f.x2,p.positionX+p.width/2),f.y1=Math.min(f.y1,p.positionY-p.height/2),f.y2=Math.max(f.y2,p.positionY+p.height/2)}f.w=f.x2-f.x1,f.h=f.y2-f.y1,h+=f.w*f.h}}i.sort(function(b,T){return T.w*T.h-b.w*b.h});for(var m=0,g=0,y=0,x=0,v=Math.sqrt(h)*e.clientWidth/e.clientHeight,a=0;a<i.length;a++){var f=i[a];if(f){for(var d=0;d<f.length;d++){var p=f[d];p.isLocked||(p.positionX+=m-f.x1,p.positionY+=g-f.y1)}m+=f.w+r.componentSpacing,y+=f.w+r.componentSpacing,x=Math.max(x,f.h),y>v&&(g+=x+r.componentSpacing,m=0,y=0,x=0)}}},"separateComponents"),yUe={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,avoidOverlapPadding:10,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,condense:!1,rows:void 0,cols:void 0,position:o(function(e){},"position"),sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(e,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(e,r){return r},"transform")};o(zle,"GridLayout");zle.prototype.run=function(){var t=this.options,e=t,r=t.cy,n=e.eles,i=n.nodes().not(":parent");e.sort&&(i=i.sort(e.sort));var a=Us(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()});if(a.h===0||a.w===0)n.nodes().layoutPositions(this,e,function(K){return{x:a.x1,y:a.y1}});else{var s=i.size(),l=Math.sqrt(s*a.h/a.w),u=Math.round(l),h=Math.round(a.w/a.h*l),f=o(function(ne){if(ne==null)return Math.min(u,h);var j=Math.min(u,h);j==u?u=ne:h=ne},"small"),d=o(function(ne){if(ne==null)return Math.max(u,h);var j=Math.max(u,h);j==u?u=ne:h=ne},"large"),p=e.rows,m=e.cols!=null?e.cols:e.columns;if(p!=null&&m!=null)u=p,h=m;else if(p!=null&&m==null)u=p,h=Math.ceil(s/u);else if(p==null&&m!=null)h=m,u=Math.ceil(s/h);else if(h*u>s){var g=f(),y=d();(g-1)*y>=s?f(g-1):(y-1)*g>=s&&d(y-1)}else for(;h*u<s;){var x=f(),v=d();(v+1)*x>=s?d(v+1):f(x+1)}var b=a.w/h,T=a.h/u;if(e.condense&&(b=0,T=0),e.avoidOverlap)for(var S=0;S<i.length;S++){var w=i[S],E=w._private.position;(E.x==null||E.y==null)&&(E.x=0,E.y=0);var _=w.layoutDimensions(e),A=e.avoidOverlapPadding,D=_.w+A,O=_.h+A;b=Math.max(b,D),T=Math.max(T,O)}for(var R={},k=o(function(ne,j){return!!R["c-"+ne+"-"+j]},"used"),L=o(function(ne,j){R["c-"+ne+"-"+j]=!0},"use"),C=0,I=0,M=o(function(){I++,I>=h&&(I=0,C++)},"moveToNextCell"),P={},B=0;B<i.length;B++){var F=i[B],G=e.position(F);if(G&&(G.row!==void 0||G.col!==void 0)){var $={row:G.row,col:G.col};if($.col===void 0)for($.col=0;k($.row,$.col);)$.col++;else if($.row===void 0)for($.row=0;k($.row,$.col);)$.row++;P[F.id()]=$,L($.row,$.col)}}var U=o(function(ne,j){var le,Z;if(ne.locked()||ne.isParent())return!1;var ce=P[ne.id()];if(ce)le=ce.col*b+b/2+a.x1,Z=ce.row*T+T/2+a.y1;else{for(;k(C,I);)M();le=I*b+b/2+a.x1,Z=C*T+T/2+a.y1,L(C,I),M()}return{x:le,y:Z}},"getPos");i.layoutPositions(this,e,U)}return this};vUe={ready:o(function(){},"ready"),stop:o(function(){},"stop")};o(nM,"NullLayout");nM.prototype.run=function(){var t=this.options,e=t.eles,r=this;return t.cy,r.emit("layoutstart"),e.nodes().positions(function(){return{x:0,y:0}}),r.one("layoutready",t.ready),r.emit("layoutready"),r.one("layoutstop",t.stop),r.emit("layoutstop"),this};nM.prototype.stop=function(){return this};xUe={positions:void 0,zoom:void 0,pan:void 0,fit:!0,padding:30,spacingFactor:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(e,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(e,r){return r},"transform")};o(Vle,"PresetLayout");Vle.prototype.run=function(){var t=this.options,e=t.eles,r=e.nodes(),n=li(t.positions);function i(a){if(t.positions==null)return kFe(a.position());if(n)return t.positions(a);var s=t.positions[a._private.data.id];return s??null}return o(i,"getPosition"),r.layoutPositions(this,t,function(a,s){var l=i(a);return a.locked()||l==null?!1:l}),this};bUe={fit:!0,padding:30,boundingBox:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:o(function(e,r){return!0},"animateFilter"),ready:void 0,stop:void 0,transform:o(function(e,r){return r},"transform")};o(Ule,"RandomLayout");Ule.prototype.run=function(){var t=this.options,e=t.cy,r=t.eles,n=Us(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:e.width(),h:e.height()}),i=o(function(s,l){return{x:n.x1+Math.round(Math.random()*n.w),y:n.y1+Math.round(Math.random()*n.h)}},"getPos");return r.nodes().layoutPositions(this,t,i),this};TUe=[{name:"breadthfirst",impl:Ble},{name:"circle",impl:Fle},{name:"concentric",impl:$le},{name:"cose",impl:vE},{name:"grid",impl:zle},{name:"null",impl:nM},{name:"preset",impl:Vle},{name:"random",impl:Ule}];o(Hle,"NullRenderer");ooe=o(function(){},"noop"),loe=o(function(){throw new Error("A headless instance can not render images")},"throwImgErr");Hle.prototype={recalculateRenderedStyle:ooe,notify:o(function(){this.notifications++},"notify"),init:ooe,isHeadless:o(function(){return!0},"isHeadless"),png:loe,jpg:loe};iM={};iM.arrowShapeWidth=.3;iM.registerArrowShapes=function(){var t=this.arrowShapes={},e=this,r=o(function(h,f,d,p,m,g,y){var x=m.x-d/2-y,v=m.x+d/2+y,b=m.y-d/2-y,T=m.y+d/2+y,S=x<=h&&h<=v&&b<=f&&f<=T;return S},"bbCollide"),n=o(function(h,f,d,p,m){var g=h*Math.cos(p)-f*Math.sin(p),y=h*Math.sin(p)+f*Math.cos(p),x=g*d,v=y*d,b=x+m.x,T=v+m.y;return{x:b,y:T}},"transform"),i=o(function(h,f,d,p){for(var m=[],g=0;g<h.length;g+=2){var y=h[g],x=h[g+1];m.push(n(y,x,f,d,p))}return m},"transformPoints"),a=o(function(h){for(var f=[],d=0;d<h.length;d++){var p=h[d];f.push(p.x,p.y)}return f},"pointsToArr"),s=o(function(h){return h.pstyle("width").pfValue*h.pstyle("arrow-scale").pfValue*2},"standardGap"),l=o(function(h,f){Jt(f)&&(f=t[f]),t[h]=ir({name:h,points:[-.15,-.3,.15,-.3,.15,.3,-.15,.3],collide:o(function(p,m,g,y,x,v){var b=a(i(this.points,g+2*v,y,x)),T=Vs(p,m,b);return T},"collide"),roughCollide:r,draw:o(function(p,m,g,y){var x=i(this.points,m,g,y);e.arrowShapeImpl("polygon")(p,x)},"draw"),spacing:o(function(p){return 0},"spacing"),gap:s},f)},"defineArrowShape");l("none",{collide:Xk,roughCollide:Xk,draw:UN,spacing:vse,gap:vse}),l("triangle",{points:[-.15,-.3,0,0,.15,-.3]}),l("arrow","triangle"),l("triangle-backcurve",{points:t.triangle.points,controlPoint:[0,-.15],roughCollide:r,draw:o(function(h,f,d,p,m){var g=i(this.points,f,d,p),y=this.controlPoint,x=n(y[0],y[1],f,d,p);e.arrowShapeImpl(this.name)(h,g,x)},"draw"),gap:o(function(h){return s(h)*.8},"gap")}),l("triangle-tee",{points:[0,0,.15,-.3,-.15,-.3,0,0],pointsTee:[-.15,-.4,-.15,-.5,.15,-.5,.15,-.4],collide:o(function(h,f,d,p,m,g,y){var x=a(i(this.points,d+2*y,p,m)),v=a(i(this.pointsTee,d+2*y,p,m)),b=Vs(h,f,x)||Vs(h,f,v);return b},"collide"),draw:o(function(h,f,d,p,m){var g=i(this.points,f,d,p),y=i(this.pointsTee,f,d,p);e.arrowShapeImpl(this.name)(h,g,y)},"draw")}),l("circle-triangle",{radius:.15,pointsTr:[0,-.15,.15,-.45,-.15,-.45,0,-.15],collide:o(function(h,f,d,p,m,g,y){var x=m,v=Math.pow(x.x-h,2)+Math.pow(x.y-f,2)<=Math.pow((d+2*y)*this.radius,2),b=a(i(this.points,d+2*y,p,m));return Vs(h,f,b)||v},"collide"),draw:o(function(h,f,d,p,m){var g=i(this.pointsTr,f,d,p);e.arrowShapeImpl(this.name)(h,g,p.x,p.y,this.radius*f)},"draw"),spacing:o(function(h){return e.getArrowWidth(h.pstyle("width").pfValue,h.pstyle("arrow-scale").value)*this.radius},"spacing")}),l("triangle-cross",{points:[0,0,.15,-.3,-.15,-.3,0,0],baseCrossLinePts:[-.15,-.4,-.15,-.4,.15,-.4,.15,-.4],crossLinePts:o(function(h,f){var d=this.baseCrossLinePts.slice(),p=f/h,m=3,g=5;return d[m]=d[m]-p,d[g]=d[g]-p,d},"crossLinePts"),collide:o(function(h,f,d,p,m,g,y){var x=a(i(this.points,d+2*y,p,m)),v=a(i(this.crossLinePts(d,g),d+2*y,p,m)),b=Vs(h,f,x)||Vs(h,f,v);return b},"collide"),draw:o(function(h,f,d,p,m){var g=i(this.points,f,d,p),y=i(this.crossLinePts(f,m),f,d,p);e.arrowShapeImpl(this.name)(h,g,y)},"draw")}),l("vee",{points:[-.15,-.3,0,0,.15,-.3,0,-.15],gap:o(function(h){return s(h)*.525},"gap")}),l("circle",{radius:.15,collide:o(function(h,f,d,p,m,g,y){var x=m,v=Math.pow(x.x-h,2)+Math.pow(x.y-f,2)<=Math.pow((d+2*y)*this.radius,2);return v},"collide"),draw:o(function(h,f,d,p,m){e.arrowShapeImpl(this.name)(h,p.x,p.y,this.radius*f)},"draw"),spacing:o(function(h){return e.getArrowWidth(h.pstyle("width").pfValue,h.pstyle("arrow-scale").value)*this.radius},"spacing")}),l("tee",{points:[-.15,0,-.15,-.1,.15,-.1,.15,0],spacing:o(function(h){return 1},"spacing"),gap:o(function(h){return 1},"gap")}),l("square",{points:[-.15,0,.15,0,.15,-.3,-.15,-.3]}),l("diamond",{points:[-.15,-.15,0,-.3,.15,-.15,0,0],gap:o(function(h){return h.pstyle("width").pfValue*h.pstyle("arrow-scale").value},"gap")}),l("chevron",{points:[0,0,-.15,-.15,-.1,-.2,0,-.1,.1,-.2,.15,-.15],gap:o(function(h){return .95*h.pstyle("width").pfValue*h.pstyle("arrow-scale").value},"gap")})};Tp={};Tp.projectIntoViewport=function(t,e){var r=this.cy,n=this.findContainerClientCoords(),i=n[0],a=n[1],s=n[4],l=r.pan(),u=r.zoom(),h=((t-i)/s-l.x)/u,f=((e-a)/s-l.y)/u;return[h,f]};Tp.findContainerClientCoords=function(){if(this.containerBB)return this.containerBB;var t=this.container,e=t.getBoundingClientRect(),r=this.cy.window().getComputedStyle(t),n=o(function(v){return parseFloat(r.getPropertyValue(v))},"styleValue"),i={left:n("padding-left"),right:n("padding-right"),top:n("padding-top"),bottom:n("padding-bottom")},a={left:n("border-left-width"),right:n("border-right-width"),top:n("border-top-width"),bottom:n("border-bottom-width")},s=t.clientWidth,l=t.clientHeight,u=i.left+i.right,h=i.top+i.bottom,f=a.left+a.right,d=e.width/(s+f),p=s-u,m=l-h,g=e.left+i.left+a.left,y=e.top+i.top+a.top;return this.containerBB=[g,y,p,m,d]};Tp.invalidateContainerClientCoordsCache=function(){this.containerBB=null};Tp.findNearestElement=function(t,e,r,n){return this.findNearestElements(t,e,r,n)[0]};Tp.findNearestElements=function(t,e,r,n){var i=this,a=this,s=a.getCachedZSortedEles(),l=[],u=a.cy.zoom(),h=a.cy.hasCompoundNodes(),f=(n?24:8)/u,d=(n?8:2)/u,p=(n?8:2)/u,m=1/0,g,y;r&&(s=s.interactive);function x(_,A){if(_.isNode()){if(y)return;y=_,l.push(_)}if(_.isEdge()&&(A==null||A<m))if(g){if(g.pstyle("z-compound-depth").value===_.pstyle("z-compound-depth").value&&g.pstyle("z-compound-depth").value===_.pstyle("z-compound-depth").value){for(var D=0;D<l.length;D++)if(l[D].isEdge()){l[D]=_,g=_,m=A??m;break}}}else l.push(_),g=_,m=A??m}o(x,"addEle");function v(_){var A=_.outerWidth()+2*d,D=_.outerHeight()+2*d,O=A/2,R=D/2,k=_.position(),L=_.pstyle("corner-radius").value==="auto"?"auto":_.pstyle("corner-radius").pfValue,C=_._private.rscratch;if(k.x-O<=t&&t<=k.x+O&&k.y-R<=e&&e<=k.y+R){var I=a.nodeShapes[i.getNodeShape(_)];if(I.checkPoint(t,e,0,A,D,k.x,k.y,L,C))return x(_,0),!0}}o(v,"checkNode");function b(_){var A=_._private,D=A.rscratch,O=_.pstyle("width").pfValue,R=_.pstyle("arrow-scale").value,k=O/2+f,L=k*k,C=k*2,B=A.source,F=A.target,I;if(D.edgeType==="segments"||D.edgeType==="straight"||D.edgeType==="haystack"){for(var M=D.allpts,P=0;P+3<M.length;P+=2)if(PFe(t,e,M[P],M[P+1],M[P+2],M[P+3],C)&&L>(I=zFe(t,e,M[P],M[P+1],M[P+2],M[P+3])))return x(_,I),!0}else if(D.edgeType==="bezier"||D.edgeType==="multibezier"||D.edgeType==="self"||D.edgeType==="compound"){for(var M=D.allpts,P=0;P+5<D.allpts.length;P+=4)if(BFe(t,e,M[P],M[P+1],M[P+2],M[P+3],M[P+4],M[P+5],C)&&L>(I=GFe(t,e,M[P],M[P+1],M[P+2],M[P+3],M[P+4],M[P+5])))return x(_,I),!0}for(var B=B||A.source,F=F||A.target,G=i.getArrowWidth(O,R),$=[{name:"source",x:D.arrowStartX,y:D.arrowStartY,angle:D.srcArrowAngle},{name:"target",x:D.arrowEndX,y:D.arrowEndY,angle:D.tgtArrowAngle},{name:"mid-source",x:D.midX,y:D.midY,angle:D.midsrcArrowAngle},{name:"mid-target",x:D.midX,y:D.midY,angle:D.midtgtArrowAngle}],P=0;P<$.length;P++){var U=$[P],K=a.arrowShapes[_.pstyle(U.name+"-arrow-shape").value],ne=_.pstyle("width").pfValue;if(K.roughCollide(t,e,G,U.angle,{x:U.x,y:U.y},ne,f)&&K.collide(t,e,G,U.angle,{x:U.x,y:U.y},ne,f))return x(_),!0}h&&l.length>0&&(v(B),v(F))}o(b,"checkEdge");function T(_,A,D){return Ml(_,A,D)}o(T,"preprop");function S(_,A){var D=_._private,O=p,R;A?R=A+"-":R="",_.boundingBox();var k=D.labelBounds[A||"main"],L=_.pstyle(R+"label").value,C=_.pstyle("text-events").strValue==="yes";if(!(!C||!L)){var I=T(D.rscratch,"labelX",A),M=T(D.rscratch,"labelY",A),P=T(D.rscratch,"labelAngle",A),B=_.pstyle(R+"text-margin-x").pfValue,F=_.pstyle(R+"text-margin-y").pfValue,G=k.x1-O-B,$=k.x2+O-B,U=k.y1-O-F,K=k.y2+O-F;if(P){var ne=Math.cos(P),j=Math.sin(P),le=o(function(he,J){return he=he-I,J=J-M,{x:he*ne-J*j+I,y:he*j+J*ne+M}},"rotate"),Z=le(G,U),ce=le(G,K),Q=le($,U),ee=le($,K),te=[Z.x+B,Z.y+F,Q.x+B,Q.y+F,ee.x+B,ee.y+F,ce.x+B,ce.y+F];if(Vs(t,e,te))return x(_),!0}else if(rg(k,t,e))return x(_),!0}}o(S,"checkLabel");for(var w=s.length-1;w>=0;w--){var E=s[w];E.isNode()?v(E)||S(E):b(E)||S(E)||S(E,"source")||S(E,"target")}return l};Tp.getAllInBox=function(t,e,r,n){var i=this.getCachedZSortedEles().interactive,a=[],s=Math.min(t,r),l=Math.max(t,r),u=Math.min(e,n),h=Math.max(e,n);t=s,r=l,e=u,n=h;for(var f=Us({x1:t,y1:e,x2:r,y2:n}),d=0;d<i.length;d++){var p=i[d];if(p.isNode()){var m=p,g=m.boundingBox({includeNodes:!0,includeEdges:!1,includeLabels:!1});qN(f,g)&&!Joe(g,f)&&a.push(m)}else{var y=p,x=y._private,v=x.rscratch;if(v.startX!=null&&v.startY!=null&&!rg(f,v.startX,v.startY)||v.endX!=null&&v.endY!=null&&!rg(f,v.endX,v.endY))continue;if(v.edgeType==="bezier"||v.edgeType==="multibezier"||v.edgeType==="self"||v.edgeType==="compound"||v.edgeType==="segments"||v.edgeType==="haystack"){for(var b=x.rstyle.bezierPts||x.rstyle.linePts||x.rstyle.haystackPts,T=!0,S=0;S<b.length;S++)if(!OFe(f,b[S])){T=!1;break}T&&a.push(y)}else(v.edgeType==="haystack"||v.edgeType==="straight")&&a.push(y)}}return a};tE={};tE.calculateArrowAngles=function(t){var e=t._private.rscratch,r=e.edgeType==="haystack",n=e.edgeType==="bezier",i=e.edgeType==="multibezier",a=e.edgeType==="segments",s=e.edgeType==="compound",l=e.edgeType==="self",u,h,f,d,p,m,v,b;if(r?(f=e.haystackPts[0],d=e.haystackPts[1],p=e.haystackPts[2],m=e.haystackPts[3]):(f=e.arrowStartX,d=e.arrowStartY,p=e.arrowEndX,m=e.arrowEndY),v=e.midX,b=e.midY,a)u=f-e.segpts[0],h=d-e.segpts[1];else if(i||s||l||n){var g=e.allpts,y=ra(g[0],g[2],g[4],.1),x=ra(g[1],g[3],g[5],.1);u=f-y,h=d-x}else u=f-v,h=d-b;e.srcArrowAngle=Ek(u,h);var v=e.midX,b=e.midY;if(r&&(v=(f+p)/2,b=(d+m)/2),u=p-f,h=m-d,a){var g=e.allpts;if(g.length/2%2===0){var T=g.length/2,S=T-2;u=g[T]-g[S],h=g[T+1]-g[S+1]}else if(e.isRound)u=e.midVector[1],h=-e.midVector[0];else{var T=g.length/2-1,S=T-2;u=g[T]-g[S],h=g[T+1]-g[S+1]}}else if(i||s||l){var g=e.allpts,w=e.ctrlpts,E,_,A,D;if(w.length/2%2===0){var O=g.length/2-1,R=O+2,k=R+2;E=ra(g[O],g[R],g[k],0),_=ra(g[O+1],g[R+1],g[k+1],0),A=ra(g[O],g[R],g[k],1e-4),D=ra(g[O+1],g[R+1],g[k+1],1e-4)}else{var R=g.length/2-1,O=R-2,k=R+2;E=ra(g[O],g[R],g[k],.4999),_=ra(g[O+1],g[R+1],g[k+1],.4999),A=ra(g[O],g[R],g[k],.5),D=ra(g[O+1],g[R+1],g[k+1],.5)}u=A-E,h=D-_}if(e.midtgtArrowAngle=Ek(u,h),e.midDispX=u,e.midDispY=h,u*=-1,h*=-1,a){var g=e.allpts;if(g.length/2%2!==0){if(!e.isRound){var T=g.length/2-1,L=T+2;u=-(g[L]-g[T]),h=-(g[L+1]-g[T+1])}}}if(e.midsrcArrowAngle=Ek(u,h),a)u=p-e.segpts[e.segpts.length-2],h=m-e.segpts[e.segpts.length-1];else if(i||s||l||n){var g=e.allpts,C=g.length,y=ra(g[C-6],g[C-4],g[C-2],.9),x=ra(g[C-5],g[C-3],g[C-1],.9);u=p-y,h=m-x}else u=p-v,h=m-b;e.tgtArrowAngle=Ek(u,h)};tE.getArrowWidth=tE.getArrowHeight=function(t,e){var r=this.arrowWidthCache=this.arrowWidthCache||{},n=r[t+", "+e];return n||(n=Math.max(Math.pow(t*13.37,.9),29)*e,r[t+", "+e]=n,n)};Rc={},Yo={},foe=o(function(e,r,n){n.x=r.x-e.x,n.y=r.y-e.y,n.len=Math.sqrt(n.x*n.x+n.y*n.y),n.nx=n.x/n.len,n.ny=n.y/n.len,n.ang=Math.atan2(n.ny,n.nx)},"asVec"),wUe=o(function(e,r){r.x=e.x*-1,r.y=e.y*-1,r.nx=e.nx*-1,r.ny=e.ny*-1,r.ang=e.ang>0?-(Math.PI-e.ang):Math.PI+e.ang},"invertVec"),kUe=o(function(e,r,n,i,a){if(e!==hoe?foe(r,e,Rc):wUe(Yo,Rc),foe(r,n,Yo),coe=Rc.nx*Yo.ny-Rc.ny*Yo.nx,uoe=Rc.nx*Yo.nx-Rc.ny*-Yo.ny,Pu=Math.asin(Math.max(-1,Math.min(1,coe))),Math.abs(Pu)<1e-6){RN=r.x,NN=r.y,fp=Ym=0;return}dp=1,Hk=!1,uoe<0?Pu<0?Pu=Math.PI+Pu:(Pu=Math.PI-Pu,dp=-1,Hk=!0):Pu>0&&(dp=-1,Hk=!0),r.radius!==void 0?Ym=r.radius:Ym=i,lp=Pu/2,Mk=Math.min(Rc.len/2,Yo.len/2),a?(Lc=Math.abs(Math.cos(lp)*Ym/Math.sin(lp)),Lc>Mk?(Lc=Mk,fp=Math.abs(Lc*Math.sin(lp)/Math.cos(lp))):fp=Ym):(Lc=Math.min(Mk,Ym),fp=Math.abs(Lc*Math.sin(lp)/Math.cos(lp))),MN=r.x+Yo.nx*Lc,IN=r.y+Yo.ny*Lc,RN=MN-Yo.ny*fp*dp,NN=IN+Yo.nx*fp*dp,Wle=r.x+Rc.nx*Lc,qle=r.y+Rc.ny*Lc,hoe=r},"calcCornerArc");o(Yle,"drawPreparedRoundCorner");o(aM,"getRoundCorner");$a={};$a.findMidptPtsEtc=function(t,e){var r=e.posPts,n=e.intersectionPts,i=e.vectorNormInverse,a,s=t.pstyle("source-endpoint"),l=t.pstyle("target-endpoint"),u=s.units!=null&&l.units!=null,h=o(function(w,E,_,A){var D=A-E,O=_-w,R=Math.sqrt(O*O+D*D);return{x:-D/R,y:O/R}},"recalcVectorNormInverse"),f=t.pstyle("edge-distances").value;switch(f){case"node-position":a=r;break;case"intersection":a=n;break;case"endpoints":{if(u){var d=this.manualEndptToPx(t.source()[0],s),p=Di(d,2),m=p[0],g=p[1],y=this.manualEndptToPx(t.target()[0],l),x=Di(y,2),v=x[0],b=x[1],T={x1:m,y1:g,x2:v,y2:b};i=h(m,g,v,b),a=T}else ln("Edge ".concat(t.id()," has edge-distances:endpoints specified without manual endpoints specified via source-endpoint and target-endpoint. Falling back on edge-distances:intersection (default).")),a=n;break}}return{midptPts:a,vectorNormInverse:i}};$a.findHaystackPoints=function(t){for(var e=0;e<t.length;e++){var r=t[e],n=r._private,i=n.rscratch;if(!i.haystack){var a=Math.random()*2*Math.PI;i.source={x:Math.cos(a),y:Math.sin(a)},a=Math.random()*2*Math.PI,i.target={x:Math.cos(a),y:Math.sin(a)}}var s=n.source,l=n.target,u=s.position(),h=l.position(),f=s.width(),d=l.width(),p=s.height(),m=l.height(),g=r.pstyle("haystack-radius").value,y=g/2;i.haystackPts=i.allpts=[i.source.x*f*y+u.x,i.source.y*p*y+u.y,i.target.x*d*y+h.x,i.target.y*m*y+h.y],i.midX=(i.allpts[0]+i.allpts[2])/2,i.midY=(i.allpts[1]+i.allpts[3])/2,i.edgeType="haystack",i.haystack=!0,this.storeEdgeProjections(r),this.calculateArrowAngles(r),this.recalculateEdgeLabelProjections(r),this.calculateLabelAngles(r)}};$a.findSegmentsPoints=function(t,e){var r=t._private.rscratch,n=t.pstyle("segment-weights"),i=t.pstyle("segment-distances"),a=t.pstyle("segment-radii"),s=t.pstyle("radius-type"),l=Math.min(n.pfValue.length,i.pfValue.length),u=a.pfValue[a.pfValue.length-1],h=s.pfValue[s.pfValue.length-1];r.edgeType="segments",r.segpts=[],r.radii=[],r.isArcRadius=[];for(var f=0;f<l;f++){var d=n.pfValue[f],p=i.pfValue[f],m=1-d,g=d,y=this.findMidptPtsEtc(t,e),x=y.midptPts,v=y.vectorNormInverse,b={x:x.x1*m+x.x2*g,y:x.y1*m+x.y2*g};r.segpts.push(b.x+v.x*p,b.y+v.y*p),r.radii.push(a.pfValue[f]!==void 0?a.pfValue[f]:u),r.isArcRadius.push((s.pfValue[f]!==void 0?s.pfValue[f]:h)==="arc-radius")}};$a.findLoopPoints=function(t,e,r,n){var i=t._private.rscratch,a=e.dirCounts,s=e.srcPos,l=t.pstyle("control-point-distances"),u=l?l.pfValue[0]:void 0,h=t.pstyle("loop-direction").pfValue,f=t.pstyle("loop-sweep").pfValue,d=t.pstyle("control-point-step-size").pfValue;i.edgeType="self";var p=r,m=d;n&&(p=0,m=u);var g=h-Math.PI/2,y=g-f/2,x=g+f/2,v=h+"_"+f;p=a[v]===void 0?a[v]=0:++a[v],i.ctrlpts=[s.x+Math.cos(y)*1.4*m*(p/3+1),s.y+Math.sin(y)*1.4*m*(p/3+1),s.x+Math.cos(x)*1.4*m*(p/3+1),s.y+Math.sin(x)*1.4*m*(p/3+1)]};$a.findCompoundLoopPoints=function(t,e,r,n){var i=t._private.rscratch;i.edgeType="compound";var a=e.srcPos,s=e.tgtPos,l=e.srcW,u=e.srcH,h=e.tgtW,f=e.tgtH,d=t.pstyle("control-point-step-size").pfValue,p=t.pstyle("control-point-distances"),m=p?p.pfValue[0]:void 0,g=r,y=d;n&&(g=0,y=m);var x=50,v={x:a.x-l/2,y:a.y-u/2},b={x:s.x-h/2,y:s.y-f/2},T={x:Math.min(v.x,b.x),y:Math.min(v.y,b.y)},S=.5,w=Math.max(S,Math.log(l*.01)),E=Math.max(S,Math.log(h*.01));i.ctrlpts=[T.x,T.y-(1+Math.pow(x,1.12)/100)*y*(g/3+1)*w,T.x-(1+Math.pow(x,1.12)/100)*y*(g/3+1)*E,T.y]};$a.findStraightEdgePoints=function(t){t._private.rscratch.edgeType="straight"};$a.findBezierPoints=function(t,e,r,n,i){var a=t._private.rscratch,s=t.pstyle("control-point-step-size").pfValue,l=t.pstyle("control-point-distances"),u=t.pstyle("control-point-weights"),h=l&&u?Math.min(l.value.length,u.value.length):1,f=l?l.pfValue[0]:void 0,d=u.value[0],p=n;a.edgeType=p?"multibezier":"bezier",a.ctrlpts=[];for(var m=0;m<h;m++){var g=(.5-e.eles.length/2+r)*s*(i?-1:1),y=void 0,x=Qoe(g);p&&(f=l?l.pfValue[m]:s,d=u.value[m]),n?y=f:y=f!==void 0?x*f:void 0;var v=y!==void 0?y:g,b=1-d,T=d,S=this.findMidptPtsEtc(t,e),w=S.midptPts,E=S.vectorNormInverse,_={x:w.x1*b+w.x2*T,y:w.y1*b+w.y2*T};a.ctrlpts.push(_.x+E.x*v,_.y+E.y*v)}};$a.findTaxiPoints=function(t,e){var r=t._private.rscratch;r.edgeType="segments";var n="vertical",i="horizontal",a="leftward",s="rightward",l="downward",u="upward",h="auto",f=e.posPts,d=e.srcW,p=e.srcH,m=e.tgtW,g=e.tgtH,y=t.pstyle("edge-distances").value,x=y!=="node-position",v=t.pstyle("taxi-direction").value,b=v,T=t.pstyle("taxi-turn"),S=T.units==="%",w=T.pfValue,E=w<0,_=t.pstyle("taxi-turn-min-distance").pfValue,A=x?(d+m)/2:0,D=x?(p+g)/2:0,O=f.x2-f.x1,R=f.y2-f.y1,k=o(function(Y,de){return Y>0?Math.max(Y-de,0):Math.min(Y+de,0)},"subDWH"),L=k(O,A),C=k(R,D),I=!1;b===h?v=Math.abs(L)>Math.abs(C)?i:n:b===u||b===l?(v=n,I=!0):(b===a||b===s)&&(v=i,I=!0);var M=v===n,P=M?C:L,B=M?R:O,F=Qoe(B),G=!1;!(I&&(S||E))&&(b===l&&B<0||b===u&&B>0||b===a&&B>0||b===s&&B<0)&&(F*=-1,P=F*Math.abs(P),G=!0);var $;if(S){var U=w<0?1+w:w;$=U*P}else{var K=w<0?P:0;$=K+w*F}var ne=o(function(Y){return Math.abs(Y)<_||Math.abs(Y)>=Math.abs(P)},"getIsTooClose"),j=ne($),le=ne(Math.abs(P)-Math.abs($)),Z=j||le;if(Z&&!G)if(M){var ce=Math.abs(B)<=p/2,Q=Math.abs(O)<=m/2;if(ce){var ee=(f.x1+f.x2)/2,te=f.y1,re=f.y2;r.segpts=[ee,te,ee,re]}else if(Q){var he=(f.y1+f.y2)/2,J=f.x1,ye=f.x2;r.segpts=[J,he,ye,he]}else r.segpts=[f.x1,f.y2]}else{var se=Math.abs(B)<=d/2,Se=Math.abs(R)<=g/2;if(se){var W=(f.y1+f.y2)/2,Oe=f.x1,ve=f.x2;r.segpts=[Oe,W,ve,W]}else if(Se){var Pe=(f.x1+f.x2)/2,qe=f.y1,Ge=f.y2;r.segpts=[Pe,qe,Pe,Ge]}else r.segpts=[f.x2,f.y1]}else if(M){var Ne=f.y1+$+(x?p/2*F:0),Me=f.x1,be=f.x2;r.segpts=[Me,Ne,be,Ne]}else{var q=f.x1+$+(x?d/2*F:0),fe=f.y1,ae=f.y2;r.segpts=[q,fe,q,ae]}if(r.isRound){var oe=t.pstyle("taxi-radius").value,V=t.pstyle("radius-type").value[0]==="arc-radius";r.radii=new Array(r.segpts.length/2).fill(oe),r.isArcRadius=new Array(r.segpts.length/2).fill(V)}};$a.tryToCorrectInvalidPoints=function(t,e){var r=t._private.rscratch;if(r.edgeType==="bezier"){var n=e.srcPos,i=e.tgtPos,a=e.srcW,s=e.srcH,l=e.tgtW,u=e.tgtH,h=e.srcShape,f=e.tgtShape,d=e.srcCornerRadius,p=e.tgtCornerRadius,m=e.srcRs,g=e.tgtRs,y=!At(r.startX)||!At(r.startY),x=!At(r.arrowStartX)||!At(r.arrowStartY),v=!At(r.endX)||!At(r.endY),b=!At(r.arrowEndX)||!At(r.arrowEndY),T=3,S=this.getArrowWidth(t.pstyle("width").pfValue,t.pstyle("arrow-scale").value)*this.arrowShapeWidth,w=T*S,E=gp({x:r.ctrlpts[0],y:r.ctrlpts[1]},{x:r.startX,y:r.startY}),_=E<w,A=gp({x:r.ctrlpts[0],y:r.ctrlpts[1]},{x:r.endX,y:r.endY}),D=A<w,O=!1;if(y||x||_){O=!0;var R={x:r.ctrlpts[0]-n.x,y:r.ctrlpts[1]-n.y},k=Math.sqrt(R.x*R.x+R.y*R.y),L={x:R.x/k,y:R.y/k},C=Math.max(a,s),I={x:r.ctrlpts[0]+L.x*2*C,y:r.ctrlpts[1]+L.y*2*C},M=h.intersectLine(n.x,n.y,a,s,I.x,I.y,0,d,m);_?(r.ctrlpts[0]=r.ctrlpts[0]+L.x*(w-E),r.ctrlpts[1]=r.ctrlpts[1]+L.y*(w-E)):(r.ctrlpts[0]=M[0]+L.x*w,r.ctrlpts[1]=M[1]+L.y*w)}if(v||b||D){O=!0;var P={x:r.ctrlpts[0]-i.x,y:r.ctrlpts[1]-i.y},B=Math.sqrt(P.x*P.x+P.y*P.y),F={x:P.x/B,y:P.y/B},G=Math.max(a,s),$={x:r.ctrlpts[0]+F.x*2*G,y:r.ctrlpts[1]+F.y*2*G},U=f.intersectLine(i.x,i.y,l,u,$.x,$.y,0,p,g);D?(r.ctrlpts[0]=r.ctrlpts[0]+F.x*(w-A),r.ctrlpts[1]=r.ctrlpts[1]+F.y*(w-A)):(r.ctrlpts[0]=U[0]+F.x*w,r.ctrlpts[1]=U[1]+F.y*w)}O&&this.findEndpoints(t)}};$a.storeAllpts=function(t){var e=t._private.rscratch;if(e.edgeType==="multibezier"||e.edgeType==="bezier"||e.edgeType==="self"||e.edgeType==="compound"){e.allpts=[],e.allpts.push(e.startX,e.startY);for(var r=0;r+1<e.ctrlpts.length;r+=2)e.allpts.push(e.ctrlpts[r],e.ctrlpts[r+1]),r+3<e.ctrlpts.length&&e.allpts.push((e.ctrlpts[r]+e.ctrlpts[r+2])/2,(e.ctrlpts[r+1]+e.ctrlpts[r+3])/2);e.allpts.push(e.endX,e.endY);var n,i;e.ctrlpts.length/2%2===0?(n=e.allpts.length/2-1,e.midX=e.allpts[n],e.midY=e.allpts[n+1]):(n=e.allpts.length/2-3,i=.5,e.midX=ra(e.allpts[n],e.allpts[n+2],e.allpts[n+4],i),e.midY=ra(e.allpts[n+1],e.allpts[n+3],e.allpts[n+5],i))}else if(e.edgeType==="straight")e.allpts=[e.startX,e.startY,e.endX,e.endY],e.midX=(e.startX+e.endX+e.arrowStartX+e.arrowEndX)/4,e.midY=(e.startY+e.endY+e.arrowStartY+e.arrowEndY)/4;else if(e.edgeType==="segments"){if(e.allpts=[],e.allpts.push(e.startX,e.startY),e.allpts.push.apply(e.allpts,e.segpts),e.allpts.push(e.endX,e.endY),e.isRound){e.roundCorners=[];for(var a=2;a+3<e.allpts.length;a+=2){var s=e.radii[a/2-1],l=e.isArcRadius[a/2-1];e.roundCorners.push(aM({x:e.allpts[a-2],y:e.allpts[a-1]},{x:e.allpts[a],y:e.allpts[a+1],radius:s},{x:e.allpts[a+2],y:e.allpts[a+3]},s,l))}}if(e.segpts.length%4===0){var u=e.segpts.length/2,h=u-2;e.midX=(e.segpts[h]+e.segpts[u])/2,e.midY=(e.segpts[h+1]+e.segpts[u+1])/2}else{var f=e.segpts.length/2-1;if(!e.isRound)e.midX=e.segpts[f],e.midY=e.segpts[f+1];else{var d={x:e.segpts[f],y:e.segpts[f+1]},p=e.roundCorners[f/2],m=[d.x-p.cx,d.y-p.cy],g=p.radius/Math.sqrt(Math.pow(m[0],2)+Math.pow(m[1],2));m=m.map(function(y){return y*g}),e.midX=p.cx+m[0],e.midY=p.cy+m[1],e.midVector=m}}}};$a.checkForInvalidEdgeWarning=function(t){var e=t[0]._private.rscratch;e.nodesOverlap||At(e.startX)&&At(e.startY)&&At(e.endX)&&At(e.endY)?e.loggedErr=!1:e.loggedErr||(e.loggedErr=!0,ln("Edge `"+t.id()+"` has invalid endpoints and so it is impossible to draw. Adjust your edge style (e.g. control points) accordingly or use an alternative edge type. This is expected behaviour when the source node and the target node overlap."))};$a.findEdgeControlPoints=function(t){var e=this;if(!(!t||t.length===0)){for(var r=this,n=r.cy,i=n.hasCompoundNodes(),a={map:new Mc,get:o(function(_){var A=this.map.get(_[0]);return A!=null?A.get(_[1]):null},"get"),set:o(function(_,A){var D=this.map.get(_[0]);D==null&&(D=new Mc,this.map.set(_[0],D)),D.set(_[1],A)},"set")},s=[],l=[],u=0;u<t.length;u++){var h=t[u],f=h._private,d=h.pstyle("curve-style").value;if(!(h.removed()||!h.takesUpSpace())){if(d==="haystack"){l.push(h);continue}var p=d==="unbundled-bezier"||d.endsWith("segments")||d==="straight"||d==="straight-triangle"||d.endsWith("taxi"),m=d==="unbundled-bezier"||d==="bezier",g=f.source,y=f.target,x=g.poolIndex(),v=y.poolIndex(),b=[x,v].sort(),T=a.get(b);T==null&&(T={eles:[]},a.set(b,T),s.push(b)),T.eles.push(h),p&&(T.hasUnbundled=!0),m&&(T.hasBezier=!0)}}for(var S=o(function(_){var A=s[_],D=a.get(A),O=void 0;if(!D.hasUnbundled){var R=D.eles[0].parallelEdges().filter(function(q){return q.isBundledBezier()});HN(D.eles),R.forEach(function(q){return D.eles.push(q)}),D.eles.sort(function(q,fe){return q.poolIndex()-fe.poolIndex()})}var k=D.eles[0],L=k.source(),C=k.target();if(L.poolIndex()>C.poolIndex()){var I=L;L=C,C=I}var M=D.srcPos=L.position(),P=D.tgtPos=C.position(),B=D.srcW=L.outerWidth(),F=D.srcH=L.outerHeight(),G=D.tgtW=C.outerWidth(),$=D.tgtH=C.outerHeight(),U=D.srcShape=r.nodeShapes[e.getNodeShape(L)],K=D.tgtShape=r.nodeShapes[e.getNodeShape(C)],ne=D.srcCornerRadius=L.pstyle("corner-radius").value==="auto"?"auto":L.pstyle("corner-radius").pfValue,j=D.tgtCornerRadius=C.pstyle("corner-radius").value==="auto"?"auto":C.pstyle("corner-radius").pfValue,le=D.tgtRs=C._private.rscratch,Z=D.srcRs=L._private.rscratch;D.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var ce=0;ce<D.eles.length;ce++){var Q=D.eles[ce],ee=Q[0]._private.rscratch,te=Q.pstyle("curve-style").value,re=te==="unbundled-bezier"||te.endsWith("segments")||te.endsWith("taxi"),he=!L.same(Q.source());if(!D.calculatedIntersection&&L!==C&&(D.hasBezier||D.hasUnbundled)){D.calculatedIntersection=!0;var J=U.intersectLine(M.x,M.y,B,F,P.x,P.y,0,ne,Z),ye=D.srcIntn=J,se=K.intersectLine(P.x,P.y,G,$,M.x,M.y,0,j,le),Se=D.tgtIntn=se,W=D.intersectionPts={x1:J[0],x2:se[0],y1:J[1],y2:se[1]},Oe=D.posPts={x1:M.x,x2:P.x,y1:M.y,y2:P.y},ve=se[1]-J[1],Pe=se[0]-J[0],qe=Math.sqrt(Pe*Pe+ve*ve),Ge=D.vector={x:Pe,y:ve},Ne=D.vectorNorm={x:Ge.x/qe,y:Ge.y/qe},Me={x:-Ne.y,y:Ne.x};D.nodesOverlap=!At(qe)||K.checkPoint(J[0],J[1],0,G,$,P.x,P.y,j,le)||U.checkPoint(se[0],se[1],0,B,F,M.x,M.y,ne,Z),D.vectorNormInverse=Me,O={nodesOverlap:D.nodesOverlap,dirCounts:D.dirCounts,calculatedIntersection:!0,hasBezier:D.hasBezier,hasUnbundled:D.hasUnbundled,eles:D.eles,srcPos:P,srcRs:le,tgtPos:M,tgtRs:Z,srcW:G,srcH:$,tgtW:B,tgtH:F,srcIntn:Se,tgtIntn:ye,srcShape:K,tgtShape:U,posPts:{x1:Oe.x2,y1:Oe.y2,x2:Oe.x1,y2:Oe.y1},intersectionPts:{x1:W.x2,y1:W.y2,x2:W.x1,y2:W.y1},vector:{x:-Ge.x,y:-Ge.y},vectorNorm:{x:-Ne.x,y:-Ne.y},vectorNormInverse:{x:-Me.x,y:-Me.y}}}var be=he?O:D;ee.nodesOverlap=be.nodesOverlap,ee.srcIntn=be.srcIntn,ee.tgtIntn=be.tgtIntn,ee.isRound=te.startsWith("round"),i&&(L.isParent()||L.isChild()||C.isParent()||C.isChild())&&(L.parents().anySame(C)||C.parents().anySame(L)||L.same(C)&&L.isParent())?e.findCompoundLoopPoints(Q,be,ce,re):L===C?e.findLoopPoints(Q,be,ce,re):te.endsWith("segments")?e.findSegmentsPoints(Q,be):te.endsWith("taxi")?e.findTaxiPoints(Q,be):te==="straight"||!re&&D.eles.length%2===1&&ce===Math.floor(D.eles.length/2)?e.findStraightEdgePoints(Q):e.findBezierPoints(Q,be,ce,re,he),e.findEndpoints(Q),e.tryToCorrectInvalidPoints(Q,be),e.checkForInvalidEdgeWarning(Q),e.storeAllpts(Q),e.storeEdgeProjections(Q),e.calculateArrowAngles(Q),e.recalculateEdgeLabelProjections(Q),e.calculateLabelAngles(Q)}},"_loop"),w=0;w<s.length;w++)S(w);this.findHaystackPoints(l)}};o(Xle,"getPts");$a.getSegmentPoints=function(t){var e=t[0]._private.rscratch;this.recalculateRenderedStyle(t);var r=e.edgeType;if(r==="segments")return Xle(e.segpts)};$a.getControlPoints=function(t){var e=t[0]._private.rscratch;this.recalculateRenderedStyle(t);var r=e.edgeType;if(r==="bezier"||r==="multibezier"||r==="self"||r==="compound")return Xle(e.ctrlpts)};$a.getEdgeMidpoint=function(t){var e=t[0]._private.rscratch;return this.recalculateRenderedStyle(t),{x:e.midX,y:e.midY}};kx={};kx.manualEndptToPx=function(t,e){var r=this,n=t.position(),i=t.outerWidth(),a=t.outerHeight(),s=t._private.rscratch;if(e.value.length===2){var l=[e.pfValue[0],e.pfValue[1]];return e.units[0]==="%"&&(l[0]=l[0]*i),e.units[1]==="%"&&(l[1]=l[1]*a),l[0]+=n.x,l[1]+=n.y,l}else{var u=e.pfValue[0];u=-Math.PI/2+u;var h=2*Math.max(i,a),f=[n.x+Math.cos(u)*h,n.y+Math.sin(u)*h];return r.nodeShapes[this.getNodeShape(t)].intersectLine(n.x,n.y,i,a,f[0],f[1],0,t.pstyle("corner-radius").value==="auto"?"auto":t.pstyle("corner-radius").pfValue,s)}};kx.findEndpoints=function(t){var e=this,r,n=t.source()[0],i=t.target()[0],a=n.position(),s=i.position(),l=t.pstyle("target-arrow-shape").value,u=t.pstyle("source-arrow-shape").value,h=t.pstyle("target-distance-from-node").pfValue,f=t.pstyle("source-distance-from-node").pfValue,d=n._private.rscratch,p=i._private.rscratch,m=t.pstyle("curve-style").value,g=t._private.rscratch,y=g.edgeType,x=m==="taxi",v=y==="self"||y==="compound",b=y==="bezier"||y==="multibezier"||v,T=y!=="bezier",S=y==="straight"||y==="segments",w=y==="segments",E=b||T||S,_=v||x,A=t.pstyle("source-endpoint"),D=_?"outside-to-node":A.value,O=n.pstyle("corner-radius").value==="auto"?"auto":n.pstyle("corner-radius").pfValue,R=t.pstyle("target-endpoint"),k=_?"outside-to-node":R.value,L=i.pstyle("corner-radius").value==="auto"?"auto":i.pstyle("corner-radius").pfValue;g.srcManEndpt=A,g.tgtManEndpt=R;var C,I,M,P;if(b){var B=[g.ctrlpts[0],g.ctrlpts[1]],F=T?[g.ctrlpts[g.ctrlpts.length-2],g.ctrlpts[g.ctrlpts.length-1]]:B;C=F,I=B}else if(S){var G=w?g.segpts.slice(0,2):[s.x,s.y],$=w?g.segpts.slice(g.segpts.length-2):[a.x,a.y];C=$,I=G}if(k==="inside-to-node")r=[s.x,s.y];else if(R.units)r=this.manualEndptToPx(i,R);else if(k==="outside-to-line")r=g.tgtIntn;else if(k==="outside-to-node"||k==="outside-to-node-or-label"?M=C:(k==="outside-to-line"||k==="outside-to-line-or-label")&&(M=[a.x,a.y]),r=e.nodeShapes[this.getNodeShape(i)].intersectLine(s.x,s.y,i.outerWidth(),i.outerHeight(),M[0],M[1],0,L,p),k==="outside-to-node-or-label"||k==="outside-to-line-or-label"){var U=i._private.rscratch,K=U.labelWidth,ne=U.labelHeight,j=U.labelX,le=U.labelY,Z=K/2,ce=ne/2,Q=i.pstyle("text-valign").value;Q==="top"?le-=ce:Q==="bottom"&&(le+=ce);var ee=i.pstyle("text-halign").value;ee==="left"?j-=Z:ee==="right"&&(j+=Z);var te=ux(M[0],M[1],[j-Z,le-ce,j+Z,le-ce,j+Z,le+ce,j-Z,le+ce],s.x,s.y);if(te.length>0){var re=a,he=up(re,jm(r)),J=up(re,jm(te)),ye=he;if(J<he&&(r=te,ye=J),te.length>2){var se=up(re,{x:te[2],y:te[3]});se<ye&&(r=[te[2],te[3]])}}}var Se=Sk(r,C,e.arrowShapes[l].spacing(t)+h),W=Sk(r,C,e.arrowShapes[l].gap(t)+h);if(g.endX=W[0],g.endY=W[1],g.arrowEndX=Se[0],g.arrowEndY=Se[1],D==="inside-to-node")r=[a.x,a.y];else if(A.units)r=this.manualEndptToPx(n,A);else if(D==="outside-to-line")r=g.srcIntn;else if(D==="outside-to-node"||D==="outside-to-node-or-label"?P=I:(D==="outside-to-line"||D==="outside-to-line-or-label")&&(P=[s.x,s.y]),r=e.nodeShapes[this.getNodeShape(n)].intersectLine(a.x,a.y,n.outerWidth(),n.outerHeight(),P[0],P[1],0,O,d),D==="outside-to-node-or-label"||D==="outside-to-line-or-label"){var Oe=n._private.rscratch,ve=Oe.labelWidth,Pe=Oe.labelHeight,qe=Oe.labelX,Ge=Oe.labelY,Ne=ve/2,Me=Pe/2,be=n.pstyle("text-valign").value;be==="top"?Ge-=Me:be==="bottom"&&(Ge+=Me);var q=n.pstyle("text-halign").value;q==="left"?qe-=Ne:q==="right"&&(qe+=Ne);var fe=ux(P[0],P[1],[qe-Ne,Ge-Me,qe+Ne,Ge-Me,qe+Ne,Ge+Me,qe-Ne,Ge+Me],a.x,a.y);if(fe.length>0){var ae=s,oe=up(ae,jm(r)),V=up(ae,jm(fe)),xe=oe;if(V<oe&&(r=[fe[0],fe[1]],xe=V),fe.length>2){var Y=up(ae,{x:fe[2],y:fe[3]});Y<xe&&(r=[fe[2],fe[3]])}}}var de=Sk(r,I,e.arrowShapes[u].spacing(t)+f),me=Sk(r,I,e.arrowShapes[u].gap(t)+f);g.startX=me[0],g.startY=me[1],g.arrowStartX=de[0],g.arrowStartY=de[1],E&&(!At(g.startX)||!At(g.startY)||!At(g.endX)||!At(g.endY)?g.badLine=!0:g.badLine=!1)};kx.getSourceEndpoint=function(t){var e=t[0]._private.rscratch;switch(this.recalculateRenderedStyle(t),e.edgeType){case"haystack":return{x:e.haystackPts[0],y:e.haystackPts[1]};default:return{x:e.arrowStartX,y:e.arrowStartY}}};kx.getTargetEndpoint=function(t){var e=t[0]._private.rscratch;switch(this.recalculateRenderedStyle(t),e.edgeType){case"haystack":return{x:e.haystackPts[2],y:e.haystackPts[3]};default:return{x:e.arrowEndX,y:e.arrowEndY}}};sM={};o(EUe,"pushBezierPts");sM.storeEdgeProjections=function(t){var e=t._private,r=e.rscratch,n=r.edgeType;if(e.rstyle.bezierPts=null,e.rstyle.linePts=null,e.rstyle.haystackPts=null,n==="multibezier"||n==="bezier"||n==="self"||n==="compound"){e.rstyle.bezierPts=[];for(var i=0;i+5<r.allpts.length;i+=4)EUe(this,t,r.allpts.slice(i,i+6))}else if(n==="segments")for(var a=e.rstyle.linePts=[],i=0;i+1<r.allpts.length;i+=2)a.push({x:r.allpts[i],y:r.allpts[i+1]});else if(n==="haystack"){var s=r.haystackPts;e.rstyle.haystackPts=[{x:s[0],y:s[1]},{x:s[2],y:s[3]}]}e.rstyle.arrowWidth=this.getArrowWidth(t.pstyle("width").pfValue,t.pstyle("arrow-scale").value)*this.arrowShapeWidth};sM.recalculateEdgeProjections=function(t){this.findEdgeControlPoints(t)};Oc={};Oc.recalculateNodeLabelProjection=function(t){var e=t.pstyle("label").strValue;if(!yf(e)){var r,n,i=t._private,a=t.width(),s=t.height(),l=t.padding(),u=t.position(),h=t.pstyle("text-halign").strValue,f=t.pstyle("text-valign").strValue,d=i.rscratch,p=i.rstyle;switch(h){case"left":r=u.x-a/2-l;break;case"right":r=u.x+a/2+l;break;default:r=u.x}switch(f){case"top":n=u.y-s/2-l;break;case"bottom":n=u.y+s/2+l;break;default:n=u.y}d.labelX=r,d.labelY=n,p.labelX=r,p.labelY=n,this.calculateLabelAngles(t),this.applyLabelDimensions(t)}};jle=o(function(e,r){var n=Math.atan(r/e);return e===0&&n<0&&(n=n*-1),n},"lineAngleFromDelta"),Kle=o(function(e,r){var n=r.x-e.x,i=r.y-e.y;return jle(n,i)},"lineAngle"),SUe=o(function(e,r,n,i){var a=cx(0,i-.001,1),s=cx(0,i+.001,1),l=Qm(e,r,n,a),u=Qm(e,r,n,s);return Kle(l,u)},"bezierAngle");Oc.recalculateEdgeLabelProjections=function(t){var e,r=t._private,n=r.rscratch,i=this,a={mid:t.pstyle("label").strValue,source:t.pstyle("source-label").strValue,target:t.pstyle("target-label").strValue};if(a.mid||a.source||a.target){e={x:n.midX,y:n.midY};var s=o(function(d,p,m){df(r.rscratch,d,p,m),df(r.rstyle,d,p,m)},"setRs");s("labelX",null,e.x),s("labelY",null,e.y);var l=jle(n.midDispX,n.midDispY);s("labelAutoAngle",null,l);var u=o(function f(){if(f.cache)return f.cache;for(var d=[],p=0;p+5<n.allpts.length;p+=4){var m={x:n.allpts[p],y:n.allpts[p+1]},g={x:n.allpts[p+2],y:n.allpts[p+3]},y={x:n.allpts[p+4],y:n.allpts[p+5]};d.push({p0:m,p1:g,p2:y,startDist:0,length:0,segments:[]})}var x=r.rstyle.bezierPts,v=i.bezierProjPcts.length;function b(_,A,D,O,R){var k=gp(A,D),L=_.segments[_.segments.length-1],C={p0:A,p1:D,t0:O,t1:R,startDist:L?L.startDist+L.length:0,length:k};_.segments.push(C),_.length+=k}o(b,"addSegment");for(var T=0;T<d.length;T++){var S=d[T],w=d[T-1];w&&(S.startDist=w.startDist+w.length),b(S,S.p0,x[T*v],0,i.bezierProjPcts[0]);for(var E=0;E<v-1;E++)b(S,x[T*v+E],x[T*v+E+1],i.bezierProjPcts[E],i.bezierProjPcts[E+1]);b(S,x[T*v+v-1],S.p2,i.bezierProjPcts[v-1],1)}return f.cache=d},"createControlPointInfo"),h=o(function(d){var p,m=d==="source";if(a[d]){var g=t.pstyle(d+"-text-offset").pfValue;switch(n.edgeType){case"self":case"compound":case"bezier":case"multibezier":{for(var y=u(),x,v=0,b=0,T=0;T<y.length;T++){for(var S=y[m?T:y.length-1-T],w=0;w<S.segments.length;w++){var E=S.segments[m?w:S.segments.length-1-w],_=T===y.length-1&&w===S.segments.length-1;if(v=b,b+=E.length,b>=g||_){x={cp:S,segment:E};break}}if(x)break}var A=x.cp,D=x.segment,O=(g-v)/D.length,R=D.t1-D.t0,k=m?D.t0+R*O:D.t1-R*O;k=cx(0,k,1),e=Qm(A.p0,A.p1,A.p2,k),p=SUe(A.p0,A.p1,A.p2,k);break}case"straight":case"segments":case"haystack":{for(var L=0,C,I,M,P,B=n.allpts.length,F=0;F+3<B&&(m?(M={x:n.allpts[F],y:n.allpts[F+1]},P={x:n.allpts[F+2],y:n.allpts[F+3]}):(M={x:n.allpts[B-2-F],y:n.allpts[B-1-F]},P={x:n.allpts[B-4-F],y:n.allpts[B-3-F]}),C=gp(M,P),I=L,L+=C,!(L>=g));F+=2);var G=g-I,$=G/C;$=cx(0,$,1),e=LFe(M,P,$),p=Kle(M,P);break}}s("labelX",d,e.x),s("labelY",d,e.y),s("labelAutoAngle",d,p)}},"calculateEndProjection");h("source"),h("target"),this.applyLabelDimensions(t)}};Oc.applyLabelDimensions=function(t){this.applyPrefixedLabelDimensions(t),t.isEdge()&&(this.applyPrefixedLabelDimensions(t,"source"),this.applyPrefixedLabelDimensions(t,"target"))};Oc.applyPrefixedLabelDimensions=function(t,e){var r=t._private,n=this.getLabelText(t,e),i=this.calculateLabelDimensions(t,n),a=t.pstyle("line-height").pfValue,s=t.pstyle("text-wrap").strValue,l=Ml(r.rscratch,"labelWrapCachedLines",e)||[],u=s!=="wrap"?1:Math.max(l.length,1),h=i.height/u,f=h*a,d=i.width,p=i.height+(u-1)*(a-1)*h;df(r.rstyle,"labelWidth",e,d),df(r.rscratch,"labelWidth",e,d),df(r.rstyle,"labelHeight",e,p),df(r.rscratch,"labelHeight",e,p),df(r.rscratch,"labelLineHeight",e,f)};Oc.getLabelText=function(t,e){var r=t._private,n=e?e+"-":"",i=t.pstyle(n+"label").strValue,a=t.pstyle("text-transform").value,s=o(function(K,ne){return ne?(df(r.rscratch,K,e,ne),ne):Ml(r.rscratch,K,e)},"rscratch");if(!i)return"";a=="none"||(a=="uppercase"?i=i.toUpperCase():a=="lowercase"&&(i=i.toLowerCase()));var l=t.pstyle("text-wrap").value;if(l==="wrap"){var u=s("labelKey");if(u!=null&&s("labelWrapKey")===u)return s("labelWrapCachedText");for(var h="\u200B",f=i.split(`
|
||
`),d=t.pstyle("text-max-width").pfValue,p=t.pstyle("text-overflow-wrap").value,m=p==="anywhere",g=[],y=/[\s\u200b]+|$/g,x=0;x<f.length;x++){var v=f[x],b=this.calculateLabelDimensions(t,v),T=b.width;if(m){var S=v.split("").join(h);v=S}if(T>d){var w=v.matchAll(y),E="",_=0,A=uo(w),D;try{for(A.s();!(D=A.n()).done;){var O=D.value,R=O[0],k=v.substring(_,O.index);_=O.index+R.length;var L=E.length===0?k:E+k+R,C=this.calculateLabelDimensions(t,L),I=C.width;I<=d?E+=k+R:(E&&g.push(E),E=k+R)}}catch(U){A.e(U)}finally{A.f()}E.match(/^[\s\u200b]+$/)||g.push(E)}else g.push(v)}s("labelWrapCachedLines",g),i=s("labelWrapCachedText",g.join(`
|
||
`)),s("labelWrapKey",u)}else if(l==="ellipsis"){var M=t.pstyle("text-max-width").pfValue,P="",B="\u2026",F=!1;if(this.calculateLabelDimensions(t,i).width<M)return i;for(var G=0;G<i.length;G++){var $=this.calculateLabelDimensions(t,P+i[G]+B).width;if($>M)break;P+=i[G],G===i.length-1&&(F=!0)}return F||(P+=B),P}return i};Oc.getLabelJustification=function(t){var e=t.pstyle("text-justification").strValue,r=t.pstyle("text-halign").strValue;if(e==="auto")if(t.isNode())switch(r){case"left":return"right";case"right":return"left";default:return"center"}else return"center";else return e};Oc.calculateLabelDimensions=function(t,e){var r=this,n=r.cy.window(),i=n.document,a=vf(e,t._private.labelDimsKey),s=r.labelDimCache||(r.labelDimCache=[]),l=s[a];if(l!=null)return l;var u=0,h=t.pstyle("font-style").strValue,f=t.pstyle("font-size").pfValue,d=t.pstyle("font-family").strValue,p=t.pstyle("font-weight").strValue,m=this.labelCalcCanvas,g=this.labelCalcCanvasContext;if(!m){m=this.labelCalcCanvas=i.createElement("canvas"),g=this.labelCalcCanvasContext=m.getContext("2d");var y=m.style;y.position="absolute",y.left="-9999px",y.top="-9999px",y.zIndex="-1",y.visibility="hidden",y.pointerEvents="none"}g.font="".concat(h," ").concat(p," ").concat(f,"px ").concat(d);for(var x=0,v=0,b=e.split(`
|
||
`),T=0;T<b.length;T++){var S=b[T],w=g.measureText(S),E=Math.ceil(w.width),_=f;x=Math.max(E,x),v+=_}return x+=u,v+=u,s[a]={width:x,height:v}};Oc.calculateLabelAngle=function(t,e){var r=t._private,n=r.rscratch,i=t.isEdge(),a=e?e+"-":"",s=t.pstyle(a+"text-rotation"),l=s.strValue;return l==="none"?0:i&&l==="autorotate"?n.labelAutoAngle:l==="autorotate"?0:s.pfValue};Oc.calculateLabelAngles=function(t){var e=this,r=t.isEdge(),n=t._private,i=n.rscratch;i.labelAngle=e.calculateLabelAngle(t),r&&(i.sourceLabelAngle=e.calculateLabelAngle(t,"source"),i.targetLabelAngle=e.calculateLabelAngle(t,"target"))};Qle={},doe=28,poe=!1;Qle.getNodeShape=function(t){var e=this,r=t.pstyle("shape").value;if(r==="cutrectangle"&&(t.width()<doe||t.height()<doe))return poe||(ln("The `cutrectangle` node shape can not be used at small sizes so `rectangle` is used instead"),poe=!0),"rectangle";if(t.isParent())return r==="rectangle"||r==="roundrectangle"||r==="round-rectangle"||r==="cutrectangle"||r==="cut-rectangle"||r==="barrel"?r:"rectangle";if(r==="polygon"){var n=t.pstyle("shape-polygon-points").value;return e.nodeShapes.makePolygon(n).name}return r};xE={};xE.registerCalculationListeners=function(){var t=this.cy,e=t.collection(),r=this,n=o(function(s){var l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e.merge(s),l)for(var u=0;u<s.length;u++){var h=s[u],f=h._private,d=f.rstyle;d.clean=!1,d.cleanConnected=!1}},"enqueue");r.binder(t).on("bounds.* dirty.*",o(function(s){var l=s.target;n(l)},"onDirtyBounds")).on("style.* background.*",o(function(s){var l=s.target;n(l,!1)},"onDirtyStyle"));var i=o(function(s){if(s){var l=r.onUpdateEleCalcsFns;e.cleanStyle();for(var u=0;u<e.length;u++){var h=e[u],f=h._private.rstyle;h.isNode()&&!f.cleanConnected&&(n(h.connectedEdges()),f.cleanConnected=!0)}if(l)for(var d=0;d<l.length;d++){var p=l[d];p(s,e)}r.recalculateRenderedStyle(e),e=t.collection()}},"updateEleCalcs");r.flushRenderedStyleQueue=function(){i(!0)},r.beforeRender(i,r.beforeRenderPriorities.eleCalcs)};xE.onUpdateEleCalcs=function(t){var e=this.onUpdateEleCalcsFns=this.onUpdateEleCalcsFns||[];e.push(t)};xE.recalculateRenderedStyle=function(t,e){var r=o(function(S){return S._private.rstyle.cleanConnected},"isCleanConnected"),n=[],i=[];if(!this.destroyed){e===void 0&&(e=!0);for(var a=0;a<t.length;a++){var s=t[a],l=s._private,u=l.rstyle;s.isEdge()&&(!r(s.source())||!r(s.target()))&&(u.clean=!1),!(e&&u.clean||s.removed())&&s.pstyle("display").value!=="none"&&(l.group==="nodes"?i.push(s):n.push(s),u.clean=!0)}for(var h=0;h<i.length;h++){var f=i[h],d=f._private,p=d.rstyle,m=f.position();this.recalculateNodeLabelProjection(f),p.nodeX=m.x,p.nodeY=m.y,p.nodeW=f.pstyle("width").pfValue,p.nodeH=f.pstyle("height").pfValue}this.recalculateEdgeProjections(n);for(var g=0;g<n.length;g++){var y=n[g],x=y._private,v=x.rstyle,b=x.rscratch;v.srcX=b.arrowStartX,v.srcY=b.arrowStartY,v.tgtX=b.arrowEndX,v.tgtY=b.arrowEndY,v.midX=b.midX,v.midY=b.midY,v.labelAngle=b.labelAngle,v.sourceLabelAngle=b.sourceLabelAngle,v.targetLabelAngle=b.targetLabelAngle}}};bE={};bE.updateCachedGrabbedEles=function(){var t=this.cachedZSortedEles;if(t){t.drag=[],t.nondrag=[];for(var e=[],r=0;r<t.length;r++){var n=t[r],i=n._private.rscratch;n.grabbed()&&!n.isParent()?e.push(n):i.inDragLayer?t.drag.push(n):t.nondrag.push(n)}for(var r=0;r<e.length;r++){var n=e[r];t.drag.push(n)}}};bE.invalidateCachedZSortedEles=function(){this.cachedZSortedEles=null};bE.getCachedZSortedEles=function(t){if(t||!this.cachedZSortedEles){var e=this.cy.mutableElements().toArray();e.sort(Ile),e.interactive=e.filter(function(r){return r.interactive()}),this.cachedZSortedEles=e,this.updateCachedGrabbedEles()}else e=this.cachedZSortedEles;return e};Zle={};[Tp,tE,$a,kx,sM,Oc,Qle,xE,bE].forEach(function(t){ir(Zle,t)});Jle={};Jle.getCachedImage=function(t,e,r){var n=this,i=n.imageCache=n.imageCache||{},a=i[t];if(a)return a.image.complete||a.image.addEventListener("load",r),a.image;a=i[t]=i[t]||{};var s=a.image=new Image;s.addEventListener("load",r),s.addEventListener("error",function(){s.error=!0});var l="data:",u=t.substring(0,l.length).toLowerCase()===l;return u||(e=e==="null"?null:e,s.crossOrigin=e),s.src=t,s};fg={};fg.registerBinding=function(t,e,r,n){var i=Array.prototype.slice.apply(arguments,[1]);if(Array.isArray(t)){for(var a=[],s=0;s<t.length;s++){var l=t[s];if(l!==void 0){var u=this.binder(l);a.push(u.on.apply(u,i))}}return a}var u=this.binder(t);return u.on.apply(u,i)};fg.binder=function(t){var e=this,r=e.cy.window(),n=t===r||t===r.document||t===r.document.body||QPe(t);if(e.supportsPassiveEvents==null){var i=!1;try{var a=Object.defineProperty({},"passive",{get:o(function(){return i=!0,!0},"get")});r.addEventListener("test",null,a)}catch{}e.supportsPassiveEvents=i}var s=o(function(u,h,f){var d=Array.prototype.slice.call(arguments);return n&&e.supportsPassiveEvents&&(d[2]={capture:f??!1,passive:!1,once:!1}),e.bindings.push({target:t,args:d}),(t.addEventListener||t.on).apply(t,d),this},"on");return{on:s,addEventListener:s,addListener:s,bind:s}};fg.nodeIsDraggable=function(t){return t&&t.isNode()&&!t.locked()&&t.grabbable()};fg.nodeIsGrabbable=function(t){return this.nodeIsDraggable(t)&&t.interactive()};fg.load=function(){var t=this,e=t.cy.window(),r=o(function(q){return q.selected()},"isSelected"),n=o(function(q){var fe=q.getRootNode();if(fe&&fe.nodeType===11&&fe.host!==void 0)return fe},"getShadowRoot"),i=o(function(q,fe,ae,oe){q==null&&(q=t.cy);for(var V=0;V<fe.length;V++){var xe=fe[V];q.emit({originalEvent:ae,type:xe,position:oe})}},"triggerEvents"),a=o(function(q){return q.shiftKey||q.metaKey||q.ctrlKey},"isMultSelKeyDown"),s=o(function(q,fe){var ae=!0;if(t.cy.hasCompoundNodes()&&q&&q.pannable())for(var oe=0;fe&&oe<fe.length;oe++){var q=fe[oe];if(q.isNode()&&q.isParent()&&!q.pannable()){ae=!1;break}}else ae=!0;return ae},"allowPanningPassthrough"),l=o(function(q){q[0]._private.grabbed=!0},"setGrabbed"),u=o(function(q){q[0]._private.grabbed=!1},"setFreed"),h=o(function(q){q[0]._private.rscratch.inDragLayer=!0},"setInDragLayer"),f=o(function(q){q[0]._private.rscratch.inDragLayer=!1},"setOutDragLayer"),d=o(function(q){q[0]._private.rscratch.isGrabTarget=!0},"setGrabTarget"),p=o(function(q){q[0]._private.rscratch.isGrabTarget=!1},"removeGrabTarget"),m=o(function(q,fe){var ae=fe.addToList,oe=ae.has(q);!oe&&q.grabbable()&&!q.locked()&&(ae.merge(q),l(q))},"addToDragList"),g=o(function(q,fe){if(q.cy().hasCompoundNodes()&&!(fe.inDragLayer==null&&fe.addToList==null)){var ae=q.descendants();fe.inDragLayer&&(ae.forEach(h),ae.connectedEdges().forEach(h)),fe.addToList&&m(ae,fe)}},"addDescendantsToDrag"),y=o(function(q,fe){fe=fe||{};var ae=q.cy().hasCompoundNodes();fe.inDragLayer&&(q.forEach(h),q.neighborhood().stdFilter(function(oe){return!ae||oe.isEdge()}).forEach(h)),fe.addToList&&q.forEach(function(oe){m(oe,fe)}),g(q,fe),b(q,{inDragLayer:fe.inDragLayer}),t.updateCachedGrabbedEles()},"addNodesToDrag"),x=y,v=o(function(q){q&&(t.getCachedZSortedEles().forEach(function(fe){u(fe),f(fe),p(fe)}),t.updateCachedGrabbedEles())},"freeDraggedElements"),b=o(function(q,fe){if(!(fe.inDragLayer==null&&fe.addToList==null)&&q.cy().hasCompoundNodes()){var ae=q.ancestors().orphans();if(!ae.same(q)){var oe=ae.descendants().spawnSelf().merge(ae).unmerge(q).unmerge(q.descendants()),V=oe.connectedEdges();fe.inDragLayer&&(V.forEach(h),oe.forEach(h)),fe.addToList&&oe.forEach(function(xe){m(xe,fe)})}}},"updateAncestorsInDragLayer"),T=o(function(){document.activeElement!=null&&document.activeElement.blur!=null&&document.activeElement.blur()},"blurActiveDomElement"),S=typeof MutationObserver<"u",w=typeof ResizeObserver<"u";S?(t.removeObserver=new MutationObserver(function(be){for(var q=0;q<be.length;q++){var fe=be[q],ae=fe.removedNodes;if(ae)for(var oe=0;oe<ae.length;oe++){var V=ae[oe];if(V===t.container){t.destroy();break}}}}),t.container.parentNode&&t.removeObserver.observe(t.container.parentNode,{childList:!0})):t.registerBinding(t.container,"DOMNodeRemoved",function(be){t.destroy()});var E=xx(function(){t.cy.resize()},100);S&&(t.styleObserver=new MutationObserver(E),t.styleObserver.observe(t.container,{attributes:!0})),t.registerBinding(e,"resize",E),w&&(t.resizeObserver=new ResizeObserver(E),t.resizeObserver.observe(t.container));var _=o(function(q,fe){for(;q!=null;)fe(q),q=q.parentNode},"forEachUp"),A=o(function(){t.invalidateContainerClientCoordsCache()},"invalidateCoords");_(t.container,function(be){t.registerBinding(be,"transitionend",A),t.registerBinding(be,"animationend",A),t.registerBinding(be,"scroll",A)}),t.registerBinding(t.container,"contextmenu",function(be){be.preventDefault()});var D=o(function(){return t.selection[4]!==0},"inBoxSelection"),O=o(function(q){for(var fe=t.findContainerClientCoords(),ae=fe[0],oe=fe[1],V=fe[2],xe=fe[3],Y=q.touches?q.touches:[q],de=!1,me=0;me<Y.length;me++){var Be=Y[me];if(ae<=Be.clientX&&Be.clientX<=ae+V&&oe<=Be.clientY&&Be.clientY<=oe+xe){de=!0;break}}if(!de)return!1;for(var _e=t.container,Te=q.target,Ue=Te.parentNode,De=!1;Ue;){if(Ue===_e){De=!0;break}Ue=Ue.parentNode}return!!De},"eventInContainer");t.registerBinding(t.container,"mousedown",o(function(q){if(O(q)&&!(t.hoverData.which===1&&q.which!==1)){q.preventDefault(),T(),t.hoverData.capture=!0,t.hoverData.which=q.which;var fe=t.cy,ae=[q.clientX,q.clientY],oe=t.projectIntoViewport(ae[0],ae[1]),V=t.selection,xe=t.findNearestElements(oe[0],oe[1],!0,!1),Y=xe[0],de=t.dragData.possibleDragElements;t.hoverData.mdownPos=oe,t.hoverData.mdownGPos=ae;var me=o(function(){t.hoverData.tapholdCancelled=!1,clearTimeout(t.hoverData.tapholdTimeout),t.hoverData.tapholdTimeout=setTimeout(function(){if(!t.hoverData.tapholdCancelled){var Qe=t.hoverData.down;Qe?Qe.emit({originalEvent:q,type:"taphold",position:{x:oe[0],y:oe[1]}}):fe.emit({originalEvent:q,type:"taphold",position:{x:oe[0],y:oe[1]}})}},t.tapholdDuration)},"checkForTaphold");if(q.which==3){t.hoverData.cxtStarted=!0;var Be={originalEvent:q,type:"cxttapstart",position:{x:oe[0],y:oe[1]}};Y?(Y.activate(),Y.emit(Be),t.hoverData.down=Y):fe.emit(Be),t.hoverData.downTime=new Date().getTime(),t.hoverData.cxtDragged=!1}else if(q.which==1){Y&&Y.activate();{if(Y!=null&&t.nodeIsGrabbable(Y)){var _e=o(function(Qe){return{originalEvent:q,type:Qe,position:{x:oe[0],y:oe[1]}}},"makeEvent"),Te=o(function(Qe){Qe.emit(_e("grab"))},"triggerGrab");if(d(Y),!Y.selected())de=t.dragData.possibleDragElements=fe.collection(),x(Y,{addToList:de}),Y.emit(_e("grabon")).emit(_e("grab"));else{de=t.dragData.possibleDragElements=fe.collection();var Ue=fe.$(function(De){return De.isNode()&&De.selected()&&t.nodeIsGrabbable(De)});y(Ue,{addToList:de}),Y.emit(_e("grabon")),Ue.forEach(Te)}t.redrawHint("eles",!0),t.redrawHint("drag",!0)}t.hoverData.down=Y,t.hoverData.downs=xe,t.hoverData.downTime=new Date().getTime()}i(Y,["mousedown","tapstart","vmousedown"],q,{x:oe[0],y:oe[1]}),Y==null?(V[4]=1,t.data.bgActivePosistion={x:oe[0],y:oe[1]},t.redrawHint("select",!0),t.redraw()):Y.pannable()&&(V[4]=1),me()}V[0]=V[2]=oe[0],V[1]=V[3]=oe[1]}},"mousedownHandler"),!1);var R=n(t.container);t.registerBinding([e,R],"mousemove",o(function(q){var fe=t.hoverData.capture;if(!(!fe&&!O(q))){var ae=!1,oe=t.cy,V=oe.zoom(),xe=[q.clientX,q.clientY],Y=t.projectIntoViewport(xe[0],xe[1]),de=t.hoverData.mdownPos,me=t.hoverData.mdownGPos,Be=t.selection,_e=null;!t.hoverData.draggingEles&&!t.hoverData.dragging&&!t.hoverData.selecting&&(_e=t.findNearestElement(Y[0],Y[1],!0,!1));var Te=t.hoverData.last,Ue=t.hoverData.down,De=[Y[0]-Be[2],Y[1]-Be[3]],Qe=t.dragData.possibleDragElements,ot;if(me){var Gt=xe[0]-me[0],Ze=Gt*Gt,Ve=xe[1]-me[1],ht=Ve*Ve,Ye=Ze+ht;t.hoverData.isOverThresholdDrag=ot=Ye>=t.desktopTapThreshold2}var ct=a(q);ot&&(t.hoverData.tapholdCancelled=!0);var Yt=o(function(){var kt=t.hoverData.dragDelta=t.hoverData.dragDelta||[];kt.length===0?(kt.push(De[0]),kt.push(De[1])):(kt[0]+=De[0],kt[1]+=De[1])},"updateDragDelta");ae=!0,i(_e,["mousemove","vmousemove","tapdrag"],q,{x:Y[0],y:Y[1]});var Tt=o(function(){t.data.bgActivePosistion=void 0,t.hoverData.selecting||oe.emit({originalEvent:q,type:"boxstart",position:{x:Y[0],y:Y[1]}}),Be[4]=1,t.hoverData.selecting=!0,t.redrawHint("select",!0),t.redraw()},"goIntoBoxMode");if(t.hoverData.which===3){if(ot){var Mt={originalEvent:q,type:"cxtdrag",position:{x:Y[0],y:Y[1]}};Ue?Ue.emit(Mt):oe.emit(Mt),t.hoverData.cxtDragged=!0,(!t.hoverData.cxtOver||_e!==t.hoverData.cxtOver)&&(t.hoverData.cxtOver&&t.hoverData.cxtOver.emit({originalEvent:q,type:"cxtdragout",position:{x:Y[0],y:Y[1]}}),t.hoverData.cxtOver=_e,_e&&_e.emit({originalEvent:q,type:"cxtdragover",position:{x:Y[0],y:Y[1]}}))}}else if(t.hoverData.dragging){if(ae=!0,oe.panningEnabled()&&oe.userPanningEnabled()){var bt;if(t.hoverData.justStartedPan){var ft=t.hoverData.mdownPos;bt={x:(Y[0]-ft[0])*V,y:(Y[1]-ft[1])*V},t.hoverData.justStartedPan=!1}else bt={x:De[0]*V,y:De[1]*V};oe.panBy(bt),oe.emit("dragpan"),t.hoverData.dragged=!0}Y=t.projectIntoViewport(q.clientX,q.clientY)}else if(Be[4]==1&&(Ue==null||Ue.pannable())){if(ot){if(!t.hoverData.dragging&&oe.boxSelectionEnabled()&&(ct||!oe.panningEnabled()||!oe.userPanningEnabled()))Tt();else if(!t.hoverData.selecting&&oe.panningEnabled()&&oe.userPanningEnabled()){var St=s(Ue,t.hoverData.downs);St&&(t.hoverData.dragging=!0,t.hoverData.justStartedPan=!0,Be[4]=0,t.data.bgActivePosistion=jm(de),t.redrawHint("select",!0),t.redraw())}Ue&&Ue.pannable()&&Ue.active()&&Ue.unactivate()}}else{if(Ue&&Ue.pannable()&&Ue.active()&&Ue.unactivate(),(!Ue||!Ue.grabbed())&&_e!=Te&&(Te&&i(Te,["mouseout","tapdragout"],q,{x:Y[0],y:Y[1]}),_e&&i(_e,["mouseover","tapdragover"],q,{x:Y[0],y:Y[1]}),t.hoverData.last=_e),Ue)if(ot){if(oe.boxSelectionEnabled()&&ct)Ue&&Ue.grabbed()&&(v(Qe),Ue.emit("freeon"),Qe.emit("free"),t.dragData.didDrag&&(Ue.emit("dragfreeon"),Qe.emit("dragfree"))),Tt();else if(Ue&&Ue.grabbed()&&t.nodeIsDraggable(Ue)){var dt=!t.dragData.didDrag;dt&&t.redrawHint("eles",!0),t.dragData.didDrag=!0,t.hoverData.draggingEles||y(Qe,{inDragLayer:!0});var vt={x:0,y:0};if(At(De[0])&&At(De[1])&&(vt.x+=De[0],vt.y+=De[1],dt)){var at=t.hoverData.dragDelta;at&&At(at[0])&&At(at[1])&&(vt.x+=at[0],vt.y+=at[1])}t.hoverData.draggingEles=!0,Qe.silentShift(vt).emit("position drag"),t.redrawHint("drag",!0),t.redraw()}}else Yt();ae=!0}if(Be[2]=Y[0],Be[3]=Y[1],ae)return q.stopPropagation&&q.stopPropagation(),q.preventDefault&&q.preventDefault(),!1}},"mousemoveHandler"),!1);var k,L,C;t.registerBinding(e,"mouseup",o(function(q){if(!(t.hoverData.which===1&&q.which!==1&&t.hoverData.capture)){var fe=t.hoverData.capture;if(fe){t.hoverData.capture=!1;var ae=t.cy,oe=t.projectIntoViewport(q.clientX,q.clientY),V=t.selection,xe=t.findNearestElement(oe[0],oe[1],!0,!1),Y=t.dragData.possibleDragElements,de=t.hoverData.down,me=a(q);if(t.data.bgActivePosistion&&(t.redrawHint("select",!0),t.redraw()),t.hoverData.tapholdCancelled=!0,t.data.bgActivePosistion=void 0,de&&de.unactivate(),t.hoverData.which===3){var Be={originalEvent:q,type:"cxttapend",position:{x:oe[0],y:oe[1]}};if(de?de.emit(Be):ae.emit(Be),!t.hoverData.cxtDragged){var _e={originalEvent:q,type:"cxttap",position:{x:oe[0],y:oe[1]}};de?de.emit(_e):ae.emit(_e)}t.hoverData.cxtDragged=!1,t.hoverData.which=null}else if(t.hoverData.which===1){if(i(xe,["mouseup","tapend","vmouseup"],q,{x:oe[0],y:oe[1]}),!t.dragData.didDrag&&!t.hoverData.dragged&&!t.hoverData.selecting&&!t.hoverData.isOverThresholdDrag&&(i(de,["click","tap","vclick"],q,{x:oe[0],y:oe[1]}),L=!1,q.timeStamp-C<=ae.multiClickDebounceTime()?(k&&clearTimeout(k),L=!0,C=null,i(de,["dblclick","dbltap","vdblclick"],q,{x:oe[0],y:oe[1]})):(k=setTimeout(function(){L||i(de,["oneclick","onetap","voneclick"],q,{x:oe[0],y:oe[1]})},ae.multiClickDebounceTime()),C=q.timeStamp)),de==null&&!t.dragData.didDrag&&!t.hoverData.selecting&&!t.hoverData.dragged&&!a(q)&&(ae.$(r).unselect(["tapunselect"]),Y.length>0&&t.redrawHint("eles",!0),t.dragData.possibleDragElements=Y=ae.collection()),xe==de&&!t.dragData.didDrag&&!t.hoverData.selecting&&xe!=null&&xe._private.selectable&&(t.hoverData.dragging||(ae.selectionType()==="additive"||me?xe.selected()?xe.unselect(["tapunselect"]):xe.select(["tapselect"]):me||(ae.$(r).unmerge(xe).unselect(["tapunselect"]),xe.select(["tapselect"]))),t.redrawHint("eles",!0)),t.hoverData.selecting){var Te=ae.collection(t.getAllInBox(V[0],V[1],V[2],V[3]));t.redrawHint("select",!0),Te.length>0&&t.redrawHint("eles",!0),ae.emit({type:"boxend",originalEvent:q,position:{x:oe[0],y:oe[1]}});var Ue=o(function(ot){return ot.selectable()&&!ot.selected()},"eleWouldBeSelected");ae.selectionType()==="additive"||me||ae.$(r).unmerge(Te).unselect(),Te.emit("box").stdFilter(Ue).select().emit("boxselect"),t.redraw()}if(t.hoverData.dragging&&(t.hoverData.dragging=!1,t.redrawHint("select",!0),t.redrawHint("eles",!0),t.redraw()),!V[4]){t.redrawHint("drag",!0),t.redrawHint("eles",!0);var De=de&&de.grabbed();v(Y),De&&(de.emit("freeon"),Y.emit("free"),t.dragData.didDrag&&(de.emit("dragfreeon"),Y.emit("dragfree")))}}V[4]=0,t.hoverData.down=null,t.hoverData.cxtStarted=!1,t.hoverData.draggingEles=!1,t.hoverData.selecting=!1,t.hoverData.isOverThresholdDrag=!1,t.dragData.didDrag=!1,t.hoverData.dragged=!1,t.hoverData.dragDelta=[],t.hoverData.mdownPos=null,t.hoverData.mdownGPos=null,t.hoverData.which=null}}},"mouseupHandler"),!1);var I=o(function(q){if(!t.scrollingPage){var fe=t.cy,ae=fe.zoom(),oe=fe.pan(),V=t.projectIntoViewport(q.clientX,q.clientY),xe=[V[0]*ae+oe.x,V[1]*ae+oe.y];if(t.hoverData.draggingEles||t.hoverData.dragging||t.hoverData.cxtStarted||D()){q.preventDefault();return}if(fe.panningEnabled()&&fe.userPanningEnabled()&&fe.zoomingEnabled()&&fe.userZoomingEnabled()){q.preventDefault(),t.data.wheelZooming=!0,clearTimeout(t.data.wheelTimeout),t.data.wheelTimeout=setTimeout(function(){t.data.wheelZooming=!1,t.redrawHint("eles",!0),t.redraw()},150);var Y;q.deltaY!=null?Y=q.deltaY/-250:q.wheelDeltaY!=null?Y=q.wheelDeltaY/1e3:Y=q.wheelDelta/1e3,Y=Y*t.wheelSensitivity;var de=q.deltaMode===1;de&&(Y*=33);var me=fe.zoom()*Math.pow(10,Y);q.type==="gesturechange"&&(me=t.gestureStartZoom*q.scale),fe.zoom({level:me,renderedPosition:{x:xe[0],y:xe[1]}}),fe.emit(q.type==="gesturechange"?"pinchzoom":"scrollzoom")}}},"wheelHandler");t.registerBinding(t.container,"wheel",I,!0),t.registerBinding(e,"scroll",o(function(q){t.scrollingPage=!0,clearTimeout(t.scrollingPageTimeout),t.scrollingPageTimeout=setTimeout(function(){t.scrollingPage=!1},250)},"scrollHandler"),!0),t.registerBinding(t.container,"gesturestart",o(function(q){t.gestureStartZoom=t.cy.zoom(),t.hasTouchStarted||q.preventDefault()},"gestureStartHandler"),!0),t.registerBinding(t.container,"gesturechange",function(be){t.hasTouchStarted||I(be)},!0),t.registerBinding(t.container,"mouseout",o(function(q){var fe=t.projectIntoViewport(q.clientX,q.clientY);t.cy.emit({originalEvent:q,type:"mouseout",position:{x:fe[0],y:fe[1]}})},"mouseOutHandler"),!1),t.registerBinding(t.container,"mouseover",o(function(q){var fe=t.projectIntoViewport(q.clientX,q.clientY);t.cy.emit({originalEvent:q,type:"mouseover",position:{x:fe[0],y:fe[1]}})},"mouseOverHandler"),!1);var M,P,B,F,G,$,U,K,ne,j,le,Z,ce,Q=o(function(q,fe,ae,oe){return Math.sqrt((ae-q)*(ae-q)+(oe-fe)*(oe-fe))},"distance"),ee=o(function(q,fe,ae,oe){return(ae-q)*(ae-q)+(oe-fe)*(oe-fe)},"distanceSq"),te;t.registerBinding(t.container,"touchstart",te=o(function(q){if(t.hasTouchStarted=!0,!!O(q)){T(),t.touchData.capture=!0,t.data.bgActivePosistion=void 0;var fe=t.cy,ae=t.touchData.now,oe=t.touchData.earlier;if(q.touches[0]){var V=t.projectIntoViewport(q.touches[0].clientX,q.touches[0].clientY);ae[0]=V[0],ae[1]=V[1]}if(q.touches[1]){var V=t.projectIntoViewport(q.touches[1].clientX,q.touches[1].clientY);ae[2]=V[0],ae[3]=V[1]}if(q.touches[2]){var V=t.projectIntoViewport(q.touches[2].clientX,q.touches[2].clientY);ae[4]=V[0],ae[5]=V[1]}if(q.touches[1]){t.touchData.singleTouchMoved=!0,v(t.dragData.touchDragEles);var xe=t.findContainerClientCoords();ne=xe[0],j=xe[1],le=xe[2],Z=xe[3],M=q.touches[0].clientX-ne,P=q.touches[0].clientY-j,B=q.touches[1].clientX-ne,F=q.touches[1].clientY-j,ce=0<=M&&M<=le&&0<=B&&B<=le&&0<=P&&P<=Z&&0<=F&&F<=Z;var Y=fe.pan(),de=fe.zoom();G=Q(M,P,B,F),$=ee(M,P,B,F),U=[(M+B)/2,(P+F)/2],K=[(U[0]-Y.x)/de,(U[1]-Y.y)/de];var me=200,Be=me*me;if($<Be&&!q.touches[2]){var _e=t.findNearestElement(ae[0],ae[1],!0,!0),Te=t.findNearestElement(ae[2],ae[3],!0,!0);_e&&_e.isNode()?(_e.activate().emit({originalEvent:q,type:"cxttapstart",position:{x:ae[0],y:ae[1]}}),t.touchData.start=_e):Te&&Te.isNode()?(Te.activate().emit({originalEvent:q,type:"cxttapstart",position:{x:ae[0],y:ae[1]}}),t.touchData.start=Te):fe.emit({originalEvent:q,type:"cxttapstart",position:{x:ae[0],y:ae[1]}}),t.touchData.start&&(t.touchData.start._private.grabbed=!1),t.touchData.cxt=!0,t.touchData.cxtDragged=!1,t.data.bgActivePosistion=void 0,t.redraw();return}}if(q.touches[2])fe.boxSelectionEnabled()&&q.preventDefault();else if(!q.touches[1]){if(q.touches[0]){var Ue=t.findNearestElements(ae[0],ae[1],!0,!0),De=Ue[0];if(De!=null&&(De.activate(),t.touchData.start=De,t.touchData.starts=Ue,t.nodeIsGrabbable(De))){var Qe=t.dragData.touchDragEles=fe.collection(),ot=null;t.redrawHint("eles",!0),t.redrawHint("drag",!0),De.selected()?(ot=fe.$(function(Ye){return Ye.selected()&&t.nodeIsGrabbable(Ye)}),y(ot,{addToList:Qe})):x(De,{addToList:Qe}),d(De);var Gt=o(function(ct){return{originalEvent:q,type:ct,position:{x:ae[0],y:ae[1]}}},"makeEvent");De.emit(Gt("grabon")),ot?ot.forEach(function(Ye){Ye.emit(Gt("grab"))}):De.emit(Gt("grab"))}i(De,["touchstart","tapstart","vmousedown"],q,{x:ae[0],y:ae[1]}),De==null&&(t.data.bgActivePosistion={x:V[0],y:V[1]},t.redrawHint("select",!0),t.redraw()),t.touchData.singleTouchMoved=!1,t.touchData.singleTouchStartTime=+new Date,clearTimeout(t.touchData.tapholdTimeout),t.touchData.tapholdTimeout=setTimeout(function(){t.touchData.singleTouchMoved===!1&&!t.pinching&&!t.touchData.selecting&&i(t.touchData.start,["taphold"],q,{x:ae[0],y:ae[1]})},t.tapholdDuration)}}if(q.touches.length>=1){for(var Ze=t.touchData.startPosition=[null,null,null,null,null,null],Ve=0;Ve<ae.length;Ve++)Ze[Ve]=oe[Ve]=ae[Ve];var ht=q.touches[0];t.touchData.startGPosition=[ht.clientX,ht.clientY]}}},"touchstartHandler"),!1);var re;t.registerBinding(e,"touchmove",re=o(function(q){var fe=t.touchData.capture;if(!(!fe&&!O(q))){var ae=t.selection,oe=t.cy,V=t.touchData.now,xe=t.touchData.earlier,Y=oe.zoom();if(q.touches[0]){var de=t.projectIntoViewport(q.touches[0].clientX,q.touches[0].clientY);V[0]=de[0],V[1]=de[1]}if(q.touches[1]){var de=t.projectIntoViewport(q.touches[1].clientX,q.touches[1].clientY);V[2]=de[0],V[3]=de[1]}if(q.touches[2]){var de=t.projectIntoViewport(q.touches[2].clientX,q.touches[2].clientY);V[4]=de[0],V[5]=de[1]}var me=t.touchData.startGPosition,Be;if(fe&&q.touches[0]&&me){for(var _e=[],Te=0;Te<V.length;Te++)_e[Te]=V[Te]-xe[Te];var Ue=q.touches[0].clientX-me[0],De=Ue*Ue,Qe=q.touches[0].clientY-me[1],ot=Qe*Qe,Gt=De+ot;Be=Gt>=t.touchTapThreshold2}if(fe&&t.touchData.cxt){q.preventDefault();var Ze=q.touches[0].clientX-ne,Ve=q.touches[0].clientY-j,ht=q.touches[1].clientX-ne,Ye=q.touches[1].clientY-j,ct=ee(Ze,Ve,ht,Ye),Yt=ct/$,Tt=150,Mt=Tt*Tt,bt=1.5,ft=bt*bt;if(Yt>=ft||ct>=Mt){t.touchData.cxt=!1,t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);var St={originalEvent:q,type:"cxttapend",position:{x:V[0],y:V[1]}};t.touchData.start?(t.touchData.start.unactivate().emit(St),t.touchData.start=null):oe.emit(St)}}if(fe&&t.touchData.cxt){var St={originalEvent:q,type:"cxtdrag",position:{x:V[0],y:V[1]}};t.data.bgActivePosistion=void 0,t.redrawHint("select",!0),t.touchData.start?t.touchData.start.emit(St):oe.emit(St),t.touchData.start&&(t.touchData.start._private.grabbed=!1),t.touchData.cxtDragged=!0;var dt=t.findNearestElement(V[0],V[1],!0,!0);(!t.touchData.cxtOver||dt!==t.touchData.cxtOver)&&(t.touchData.cxtOver&&t.touchData.cxtOver.emit({originalEvent:q,type:"cxtdragout",position:{x:V[0],y:V[1]}}),t.touchData.cxtOver=dt,dt&&dt.emit({originalEvent:q,type:"cxtdragover",position:{x:V[0],y:V[1]}}))}else if(fe&&q.touches[2]&&oe.boxSelectionEnabled())q.preventDefault(),t.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,t.touchData.selecting||oe.emit({originalEvent:q,type:"boxstart",position:{x:V[0],y:V[1]}}),t.touchData.selecting=!0,t.touchData.didSelect=!0,ae[4]=1,!ae||ae.length===0||ae[0]===void 0?(ae[0]=(V[0]+V[2]+V[4])/3,ae[1]=(V[1]+V[3]+V[5])/3,ae[2]=(V[0]+V[2]+V[4])/3+1,ae[3]=(V[1]+V[3]+V[5])/3+1):(ae[2]=(V[0]+V[2]+V[4])/3,ae[3]=(V[1]+V[3]+V[5])/3),t.redrawHint("select",!0),t.redraw();else if(fe&&q.touches[1]&&!t.touchData.didSelect&&oe.zoomingEnabled()&&oe.panningEnabled()&&oe.userZoomingEnabled()&&oe.userPanningEnabled()){q.preventDefault(),t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);var vt=t.dragData.touchDragEles;if(vt){t.redrawHint("drag",!0);for(var at=0;at<vt.length;at++){var pn=vt[at]._private;pn.grabbed=!1,pn.rscratch.inDragLayer=!1}}var kt=t.touchData.start,Ze=q.touches[0].clientX-ne,Ve=q.touches[0].clientY-j,ht=q.touches[1].clientX-ne,Ye=q.touches[1].clientY-j,Fn=Q(Ze,Ve,ht,Ye),tn=Fn/G;if(ce){var Nr=Ze-M,Mr=Ve-P,$n=ht-B,Dt=Ye-F,Ce=(Nr+$n)/2,nt=(Mr+Dt)/2,Ct=oe.zoom(),yr=Ct*tn,rn=oe.pan(),yn=K[0]*Ct+rn.x,Zr=K[1]*Ct+rn.y,Mi={x:-yr/Ct*(yn-rn.x-Ce)+yn,y:-yr/Ct*(Zr-rn.y-nt)+Zr};if(kt&&kt.active()){var vt=t.dragData.touchDragEles;v(vt),t.redrawHint("drag",!0),t.redrawHint("eles",!0),kt.unactivate().emit("freeon"),vt.emit("free"),t.dragData.didDrag&&(kt.emit("dragfreeon"),vt.emit("dragfree"))}oe.viewport({zoom:yr,pan:Mi,cancelOnFailedZoom:!0}),oe.emit("pinchzoom"),G=Fn,M=Ze,P=Ve,B=ht,F=Ye,t.pinching=!0}if(q.touches[0]){var de=t.projectIntoViewport(q.touches[0].clientX,q.touches[0].clientY);V[0]=de[0],V[1]=de[1]}if(q.touches[1]){var de=t.projectIntoViewport(q.touches[1].clientX,q.touches[1].clientY);V[2]=de[0],V[3]=de[1]}if(q.touches[2]){var de=t.projectIntoViewport(q.touches[2].clientX,q.touches[2].clientY);V[4]=de[0],V[5]=de[1]}}else if(q.touches[0]&&!t.touchData.didSelect){var ti=t.touchData.start,An=t.touchData.last,dt;if(!t.hoverData.draggingEles&&!t.swipePanning&&(dt=t.findNearestElement(V[0],V[1],!0,!0)),fe&&ti!=null&&q.preventDefault(),fe&&ti!=null&&t.nodeIsDraggable(ti))if(Be){var vt=t.dragData.touchDragEles,Hr=!t.dragData.didDrag;Hr&&y(vt,{inDragLayer:!0}),t.dragData.didDrag=!0;var tt={x:0,y:0};if(At(_e[0])&&At(_e[1])&&(tt.x+=_e[0],tt.y+=_e[1],Hr)){t.redrawHint("eles",!0);var yt=t.touchData.dragDelta;yt&&At(yt[0])&&At(yt[1])&&(tt.x+=yt[0],tt.y+=yt[1])}t.hoverData.draggingEles=!0,vt.silentShift(tt).emit("position drag"),t.redrawHint("drag",!0),t.touchData.startPosition[0]==xe[0]&&t.touchData.startPosition[1]==xe[1]&&t.redrawHint("eles",!0),t.redraw()}else{var yt=t.touchData.dragDelta=t.touchData.dragDelta||[];yt.length===0?(yt.push(_e[0]),yt.push(_e[1])):(yt[0]+=_e[0],yt[1]+=_e[1])}if(i(ti||dt,["touchmove","tapdrag","vmousemove"],q,{x:V[0],y:V[1]}),(!ti||!ti.grabbed())&&dt!=An&&(An&&An.emit({originalEvent:q,type:"tapdragout",position:{x:V[0],y:V[1]}}),dt&&dt.emit({originalEvent:q,type:"tapdragover",position:{x:V[0],y:V[1]}})),t.touchData.last=dt,fe)for(var at=0;at<V.length;at++)V[at]&&t.touchData.startPosition[at]&&Be&&(t.touchData.singleTouchMoved=!0);if(fe&&(ti==null||ti.pannable())&&oe.panningEnabled()&&oe.userPanningEnabled()){var Kt=s(ti,t.touchData.starts);Kt&&(q.preventDefault(),t.data.bgActivePosistion||(t.data.bgActivePosistion=jm(t.touchData.startPosition)),t.swipePanning?(oe.panBy({x:_e[0]*Y,y:_e[1]*Y}),oe.emit("dragpan")):Be&&(t.swipePanning=!0,oe.panBy({x:Ue*Y,y:Qe*Y}),oe.emit("dragpan"),ti&&(ti.unactivate(),t.redrawHint("select",!0),t.touchData.start=null)));var de=t.projectIntoViewport(q.touches[0].clientX,q.touches[0].clientY);V[0]=de[0],V[1]=de[1]}}for(var Te=0;Te<V.length;Te++)xe[Te]=V[Te];fe&&q.touches.length>0&&!t.hoverData.draggingEles&&!t.swipePanning&&t.data.bgActivePosistion!=null&&(t.data.bgActivePosistion=void 0,t.redrawHint("select",!0),t.redraw())}},"touchmoveHandler"),!1);var he;t.registerBinding(e,"touchcancel",he=o(function(q){var fe=t.touchData.start;t.touchData.capture=!1,fe&&fe.unactivate()},"touchcancelHandler"));var J,ye,se,Se;if(t.registerBinding(e,"touchend",J=o(function(q){var fe=t.touchData.start,ae=t.touchData.capture;if(ae)q.touches.length===0&&(t.touchData.capture=!1),q.preventDefault();else return;var oe=t.selection;t.swipePanning=!1,t.hoverData.draggingEles=!1;var V=t.cy,xe=V.zoom(),Y=t.touchData.now,de=t.touchData.earlier;if(q.touches[0]){var me=t.projectIntoViewport(q.touches[0].clientX,q.touches[0].clientY);Y[0]=me[0],Y[1]=me[1]}if(q.touches[1]){var me=t.projectIntoViewport(q.touches[1].clientX,q.touches[1].clientY);Y[2]=me[0],Y[3]=me[1]}if(q.touches[2]){var me=t.projectIntoViewport(q.touches[2].clientX,q.touches[2].clientY);Y[4]=me[0],Y[5]=me[1]}fe&&fe.unactivate();var Be;if(t.touchData.cxt){if(Be={originalEvent:q,type:"cxttapend",position:{x:Y[0],y:Y[1]}},fe?fe.emit(Be):V.emit(Be),!t.touchData.cxtDragged){var _e={originalEvent:q,type:"cxttap",position:{x:Y[0],y:Y[1]}};fe?fe.emit(_e):V.emit(_e)}t.touchData.start&&(t.touchData.start._private.grabbed=!1),t.touchData.cxt=!1,t.touchData.start=null,t.redraw();return}if(!q.touches[2]&&V.boxSelectionEnabled()&&t.touchData.selecting){t.touchData.selecting=!1;var Te=V.collection(t.getAllInBox(oe[0],oe[1],oe[2],oe[3]));oe[0]=void 0,oe[1]=void 0,oe[2]=void 0,oe[3]=void 0,oe[4]=0,t.redrawHint("select",!0),V.emit({type:"boxend",originalEvent:q,position:{x:Y[0],y:Y[1]}});var Ue=o(function(Mt){return Mt.selectable()&&!Mt.selected()},"eleWouldBeSelected");Te.emit("box").stdFilter(Ue).select().emit("boxselect"),Te.nonempty()&&t.redrawHint("eles",!0),t.redraw()}if(fe?.unactivate(),q.touches[2])t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);else if(!q.touches[1]){if(!q.touches[0]){if(!q.touches[0]){t.data.bgActivePosistion=void 0,t.redrawHint("select",!0);var De=t.dragData.touchDragEles;if(fe!=null){var Qe=fe._private.grabbed;v(De),t.redrawHint("drag",!0),t.redrawHint("eles",!0),Qe&&(fe.emit("freeon"),De.emit("free"),t.dragData.didDrag&&(fe.emit("dragfreeon"),De.emit("dragfree"))),i(fe,["touchend","tapend","vmouseup","tapdragout"],q,{x:Y[0],y:Y[1]}),fe.unactivate(),t.touchData.start=null}else{var ot=t.findNearestElement(Y[0],Y[1],!0,!0);i(ot,["touchend","tapend","vmouseup","tapdragout"],q,{x:Y[0],y:Y[1]})}var Gt=t.touchData.startPosition[0]-Y[0],Ze=Gt*Gt,Ve=t.touchData.startPosition[1]-Y[1],ht=Ve*Ve,Ye=Ze+ht,ct=Ye*xe*xe;t.touchData.singleTouchMoved||(fe||V.$(":selected").unselect(["tapunselect"]),i(fe,["tap","vclick"],q,{x:Y[0],y:Y[1]}),ye=!1,q.timeStamp-Se<=V.multiClickDebounceTime()?(se&&clearTimeout(se),ye=!0,Se=null,i(fe,["dbltap","vdblclick"],q,{x:Y[0],y:Y[1]})):(se=setTimeout(function(){ye||i(fe,["onetap","voneclick"],q,{x:Y[0],y:Y[1]})},V.multiClickDebounceTime()),Se=q.timeStamp)),fe!=null&&!t.dragData.didDrag&&fe._private.selectable&&ct<t.touchTapThreshold2&&!t.pinching&&(V.selectionType()==="single"?(V.$(r).unmerge(fe).unselect(["tapunselect"]),fe.select(["tapselect"])):fe.selected()?fe.unselect(["tapunselect"]):fe.select(["tapselect"]),t.redrawHint("eles",!0)),t.touchData.singleTouchMoved=!0}}}for(var Yt=0;Yt<Y.length;Yt++)de[Yt]=Y[Yt];t.dragData.didDrag=!1,q.touches.length===0&&(t.touchData.dragDelta=[],t.touchData.startPosition=[null,null,null,null,null,null],t.touchData.startGPosition=null,t.touchData.didSelect=!1),q.touches.length<2&&(q.touches.length===1&&(t.touchData.startGPosition=[q.touches[0].clientX,q.touches[0].clientY]),t.pinching=!1,t.redrawHint("eles",!0),t.redraw())},"touchendHandler"),!1),typeof TouchEvent>"u"){var W=[],Oe=o(function(q){return{clientX:q.clientX,clientY:q.clientY,force:1,identifier:q.pointerId,pageX:q.pageX,pageY:q.pageY,radiusX:q.width/2,radiusY:q.height/2,screenX:q.screenX,screenY:q.screenY,target:q.target}},"makeTouch"),ve=o(function(q){return{event:q,touch:Oe(q)}},"makePointer"),Pe=o(function(q){W.push(ve(q))},"addPointer"),qe=o(function(q){for(var fe=0;fe<W.length;fe++){var ae=W[fe];if(ae.event.pointerId===q.pointerId){W.splice(fe,1);return}}},"removePointer"),Ge=o(function(q){var fe=W.filter(function(ae){return ae.event.pointerId===q.pointerId})[0];fe.event=q,fe.touch=Oe(q)},"updatePointer"),Ne=o(function(q){q.touches=W.map(function(fe){return fe.touch})},"addTouchesToEvent"),Me=o(function(q){return q.pointerType==="mouse"||q.pointerType===4},"pointerIsMouse");t.registerBinding(t.container,"pointerdown",function(be){Me(be)||(be.preventDefault(),Pe(be),Ne(be),te(be))}),t.registerBinding(t.container,"pointerup",function(be){Me(be)||(qe(be),Ne(be),J(be))}),t.registerBinding(t.container,"pointercancel",function(be){Me(be)||(qe(be),Ne(be),he(be))}),t.registerBinding(t.container,"pointermove",function(be){Me(be)||(be.preventDefault(),Ge(be),Ne(be),re(be))})}};Gu={};Gu.generatePolygon=function(t,e){return this.nodeShapes[t]={renderer:this,name:t,points:e,draw:o(function(n,i,a,s,l,u){this.renderer.nodeShapeImpl("polygon",n,i,a,s,l,this.points)},"draw"),intersectLine:o(function(n,i,a,s,l,u,h,f){return ux(l,u,this.points,n,i,a/2,s/2,h)},"intersectLine"),checkPoint:o(function(n,i,a,s,l,u,h,f){return Fu(n,i,this.points,u,h,s,l,[0,-1],a)},"checkPoint")}};Gu.generateEllipse=function(){return this.nodeShapes.ellipse={renderer:this,name:"ellipse",draw:o(function(e,r,n,i,a,s){this.renderer.nodeShapeImpl(this.name,e,r,n,i,a)},"draw"),intersectLine:o(function(e,r,n,i,a,s,l,u){return UFe(a,s,e,r,n/2+l,i/2+l)},"intersectLine"),checkPoint:o(function(e,r,n,i,a,s,l,u){return pp(e,r,i,a,s,l,n)},"checkPoint")}};Gu.generateRoundPolygon=function(t,e){return this.nodeShapes[t]={renderer:this,name:t,points:e,getOrCreateCorners:o(function(n,i,a,s,l,u,h){if(u[h]!==void 0&&u[h+"-cx"]===n&&u[h+"-cy"]===i)return u[h];u[h]=new Array(e.length/2),u[h+"-cx"]=n,u[h+"-cy"]=i;var f=a/2,d=s/2;l=l==="auto"?rle(a,s):l;for(var p=new Array(e.length/2),m=0;m<e.length/2;m++)p[m]={x:n+f*e[m*2],y:i+d*e[m*2+1]};var g,y,x,v,b=p.length;for(y=p[b-1],g=0;g<b;g++)x=p[g%b],v=p[(g+1)%b],u[h][g]=aM(y,x,v,l),y=x,x=v;return u[h]},"getOrCreateCorners"),draw:o(function(n,i,a,s,l,u,h){this.renderer.nodeShapeImpl("round-polygon",n,i,a,s,l,this.points,this.getOrCreateCorners(i,a,s,l,u,h,"drawCorners"))},"draw"),intersectLine:o(function(n,i,a,s,l,u,h,f,d){return HFe(l,u,this.points,n,i,a,s,h,this.getOrCreateCorners(n,i,a,s,f,d,"corners"))},"intersectLine"),checkPoint:o(function(n,i,a,s,l,u,h,f,d){return VFe(n,i,this.points,u,h,s,l,this.getOrCreateCorners(u,h,s,l,f,d,"corners"))},"checkPoint")}};Gu.generateRoundRectangle=function(){return this.nodeShapes["round-rectangle"]=this.nodeShapes.roundrectangle={renderer:this,name:"round-rectangle",points:ls(4,0),draw:o(function(e,r,n,i,a,s){this.renderer.nodeShapeImpl(this.name,e,r,n,i,a,this.points,s)},"draw"),intersectLine:o(function(e,r,n,i,a,s,l,u){return ele(a,s,e,r,n,i,l,u)},"intersectLine"),checkPoint:o(function(e,r,n,i,a,s,l,u){var h=i/2,f=a/2;u=u==="auto"?yp(i,a):u,u=Math.min(h,f,u);var d=u*2;return!!(Fu(e,r,this.points,s,l,i,a-d,[0,-1],n)||Fu(e,r,this.points,s,l,i-d,a,[0,-1],n)||pp(e,r,d,d,s-h+u,l-f+u,n)||pp(e,r,d,d,s+h-u,l-f+u,n)||pp(e,r,d,d,s+h-u,l+f-u,n)||pp(e,r,d,d,s-h+u,l+f-u,n))},"checkPoint")}};Gu.generateCutRectangle=function(){return this.nodeShapes["cut-rectangle"]=this.nodeShapes.cutrectangle={renderer:this,name:"cut-rectangle",cornerLength:YN(),points:ls(4,0),draw:o(function(e,r,n,i,a,s){this.renderer.nodeShapeImpl(this.name,e,r,n,i,a,null,s)},"draw"),generateCutTrianglePts:o(function(e,r,n,i,a){var s=a==="auto"?this.cornerLength:a,l=r/2,u=e/2,h=n-u,f=n+u,d=i-l,p=i+l;return{topLeft:[h,d+s,h+s,d,h+s,d+s],topRight:[f-s,d,f,d+s,f-s,d+s],bottomRight:[f,p-s,f-s,p,f-s,p-s],bottomLeft:[h+s,p,h,p-s,h+s,p-s]}},"generateCutTrianglePts"),intersectLine:o(function(e,r,n,i,a,s,l,u){var h=this.generateCutTrianglePts(n+2*l,i+2*l,e,r,u),f=[].concat.apply([],[h.topLeft.splice(0,4),h.topRight.splice(0,4),h.bottomRight.splice(0,4),h.bottomLeft.splice(0,4)]);return ux(a,s,f,e,r)},"intersectLine"),checkPoint:o(function(e,r,n,i,a,s,l,u){var h=u==="auto"?this.cornerLength:u;if(Fu(e,r,this.points,s,l,i,a-2*h,[0,-1],n)||Fu(e,r,this.points,s,l,i-2*h,a,[0,-1],n))return!0;var f=this.generateCutTrianglePts(i,a,s,l);return Vs(e,r,f.topLeft)||Vs(e,r,f.topRight)||Vs(e,r,f.bottomRight)||Vs(e,r,f.bottomLeft)},"checkPoint")}};Gu.generateBarrel=function(){return this.nodeShapes.barrel={renderer:this,name:"barrel",points:ls(4,0),draw:o(function(e,r,n,i,a,s){this.renderer.nodeShapeImpl(this.name,e,r,n,i,a)},"draw"),intersectLine:o(function(e,r,n,i,a,s,l,u){var h=.15,f=.5,d=.85,p=this.generateBarrelBezierPts(n+2*l,i+2*l,e,r),m=o(function(x){var v=Qm({x:x[0],y:x[1]},{x:x[2],y:x[3]},{x:x[4],y:x[5]},h),b=Qm({x:x[0],y:x[1]},{x:x[2],y:x[3]},{x:x[4],y:x[5]},f),T=Qm({x:x[0],y:x[1]},{x:x[2],y:x[3]},{x:x[4],y:x[5]},d);return[x[0],x[1],v.x,v.y,b.x,b.y,T.x,T.y,x[4],x[5]]},"approximateBarrelCurvePts"),g=[].concat(m(p.topLeft),m(p.topRight),m(p.bottomRight),m(p.bottomLeft));return ux(a,s,g,e,r)},"intersectLine"),generateBarrelBezierPts:o(function(e,r,n,i){var a=r/2,s=e/2,l=n-s,u=n+s,h=i-a,f=i+a,d=EN(e,r),p=d.heightOffset,m=d.widthOffset,g=d.ctrlPtOffsetPct*e,y={topLeft:[l,h+p,l+g,h,l+m,h],topRight:[u-m,h,u-g,h,u,h+p],bottomRight:[u,f-p,u-g,f,u-m,f],bottomLeft:[l+m,f,l+g,f,l,f-p]};return y.topLeft.isTop=!0,y.topRight.isTop=!0,y.bottomLeft.isBottom=!0,y.bottomRight.isBottom=!0,y},"generateBarrelBezierPts"),checkPoint:o(function(e,r,n,i,a,s,l,u){var h=EN(i,a),f=h.heightOffset,d=h.widthOffset;if(Fu(e,r,this.points,s,l,i,a-2*f,[0,-1],n)||Fu(e,r,this.points,s,l,i-2*d,a,[0,-1],n))return!0;for(var p=this.generateBarrelBezierPts(i,a,s,l),m=o(function(A,D,O){var R=O[4],k=O[2],L=O[0],C=O[5],I=O[1],M=Math.min(R,L),P=Math.max(R,L),B=Math.min(C,I),F=Math.max(C,I);if(M<=A&&A<=P&&B<=D&&D<=F){var G=WFe(R,k,L),$=FFe(G[0],G[1],G[2],A),U=$.filter(function(K){return 0<=K&&K<=1});if(U.length>0)return U[0]}return null},"getCurveT"),g=Object.keys(p),y=0;y<g.length;y++){var x=g[y],v=p[x],b=m(e,r,v);if(b!=null){var T=v[5],S=v[3],w=v[1],E=ra(T,S,w,b);if(v.isTop&&E<=r||v.isBottom&&r<=E)return!0}}return!1},"checkPoint")}};Gu.generateBottomRoundrectangle=function(){return this.nodeShapes["bottom-round-rectangle"]=this.nodeShapes.bottomroundrectangle={renderer:this,name:"bottom-round-rectangle",points:ls(4,0),draw:o(function(e,r,n,i,a,s){this.renderer.nodeShapeImpl(this.name,e,r,n,i,a,this.points,s)},"draw"),intersectLine:o(function(e,r,n,i,a,s,l,u){var h=e-(n/2+l),f=r-(i/2+l),d=f,p=e+(n/2+l),m=pf(a,s,e,r,h,f,p,d,!1);return m.length>0?m:ele(a,s,e,r,n,i,l,u)},"intersectLine"),checkPoint:o(function(e,r,n,i,a,s,l,u){u=u==="auto"?yp(i,a):u;var h=2*u;if(Fu(e,r,this.points,s,l,i,a-h,[0,-1],n)||Fu(e,r,this.points,s,l,i-h,a,[0,-1],n))return!0;var f=i/2+2*n,d=a/2+2*n,p=[s-f,l-d,s-f,l,s+f,l,s+f,l-d];return!!(Vs(e,r,p)||pp(e,r,h,h,s+i/2-u,l+a/2-u,n)||pp(e,r,h,h,s-i/2+u,l+a/2-u,n))},"checkPoint")}};Gu.registerNodeShapes=function(){var t=this.nodeShapes={},e=this;this.generateEllipse(),this.generatePolygon("triangle",ls(3,0)),this.generateRoundPolygon("round-triangle",ls(3,0)),this.generatePolygon("rectangle",ls(4,0)),t.square=t.rectangle,this.generateRoundRectangle(),this.generateCutRectangle(),this.generateBarrel(),this.generateBottomRoundrectangle();{var r=[0,1,1,0,0,-1,-1,0];this.generatePolygon("diamond",r),this.generateRoundPolygon("round-diamond",r)}this.generatePolygon("pentagon",ls(5,0)),this.generateRoundPolygon("round-pentagon",ls(5,0)),this.generatePolygon("hexagon",ls(6,0)),this.generateRoundPolygon("round-hexagon",ls(6,0)),this.generatePolygon("heptagon",ls(7,0)),this.generateRoundPolygon("round-heptagon",ls(7,0)),this.generatePolygon("octagon",ls(8,0)),this.generateRoundPolygon("round-octagon",ls(8,0));var n=new Array(20);{var i=kN(5,0),a=kN(5,Math.PI/5),s=.5*(3-Math.sqrt(5));s*=1.57;for(var l=0;l<a.length/2;l++)a[l*2]*=s,a[l*2+1]*=s;for(var l=0;l<20/4;l++)n[l*4]=i[l*2],n[l*4+1]=i[l*2+1],n[l*4+2]=a[l*2],n[l*4+3]=a[l*2+1]}n=tle(n),this.generatePolygon("star",n),this.generatePolygon("vee",[-1,-1,0,-.333,1,-1,0,1]),this.generatePolygon("rhomboid",[-1,-1,.333,-1,1,1,-.333,1]),this.generatePolygon("right-rhomboid",[-.333,-1,1,-1,.333,1,-1,1]),this.nodeShapes.concavehexagon=this.generatePolygon("concave-hexagon",[-1,-.95,-.75,0,-1,.95,1,.95,.75,0,1,-.95]);{var u=[-1,-1,.25,-1,1,0,.25,1,-1,1];this.generatePolygon("tag",u),this.generateRoundPolygon("round-tag",u)}t.makePolygon=function(h){var f=h.join("$"),d="polygon-"+f,p;return(p=this[d])?p:e.generatePolygon(d,h)}};Ex={};Ex.timeToRender=function(){return this.redrawTotalTime/this.redrawCount};Ex.redraw=function(t){t=t||joe();var e=this;e.averageRedrawTime===void 0&&(e.averageRedrawTime=0),e.lastRedrawTime===void 0&&(e.lastRedrawTime=0),e.lastDrawTime===void 0&&(e.lastDrawTime=0),e.requestedFrame=!0,e.renderOptions=t};Ex.beforeRender=function(t,e){if(!this.destroyed){e==null&&oi("Priority is not optional for beforeRender");var r=this.beforeRenderCallbacks;r.push({fn:t,priority:e}),r.sort(function(n,i){return i.priority-n.priority})}};moe=o(function(e,r,n){for(var i=e.beforeRenderCallbacks,a=0;a<i.length;a++)i[a].fn(r,n)},"beforeRenderCallbacks");Ex.startRenderLoop=function(){var t=this,e=t.cy;if(!t.renderLoopStarted){t.renderLoopStarted=!0;var r=o(function n(i){if(!t.destroyed){if(!e.batching())if(t.requestedFrame&&!t.skipFrame){moe(t,!0,i);var a=Bu();t.render(t.renderOptions);var s=t.lastDrawTime=Bu();t.averageRedrawTime===void 0&&(t.averageRedrawTime=s-a),t.redrawCount===void 0&&(t.redrawCount=0),t.redrawCount++,t.redrawTotalTime===void 0&&(t.redrawTotalTime=0);var l=s-a;t.redrawTotalTime+=l,t.lastRedrawTime=l,t.averageRedrawTime=t.averageRedrawTime/2+l/2,t.requestedFrame=!1}else moe(t,!1,i);t.skipFrame=!1,Yk(n)}},"renderFn");Yk(r)}};CUe=o(function(e){this.init(e)},"BaseRenderer"),ece=CUe,dg=ece.prototype;dg.clientFunctions=["redrawHint","render","renderTo","matchCanvasSize","nodeShapeImpl","arrowShapeImpl"];dg.init=function(t){var e=this;e.options=t,e.cy=t.cy;var r=e.container=t.cy.container(),n=e.cy.window();if(n){var i=n.document,a=i.head,s="__________cytoscape_stylesheet",l="__________cytoscape_container",u=i.getElementById(s)!=null;if(r.className.indexOf(l)<0&&(r.className=(r.className||"")+" "+l),!u){var h=i.createElement("style");h.id=s,h.textContent="."+l+" { position: relative; }",a.insertBefore(h,a.children[0])}var f=n.getComputedStyle(r),d=f.getPropertyValue("position");d==="static"&&ln("A Cytoscape container has style position:static and so can not use UI extensions properly")}e.selection=[void 0,void 0,void 0,void 0,0],e.bezierProjPcts=[.05,.225,.4,.5,.6,.775,.95],e.hoverData={down:null,last:null,downTime:null,triggerMode:null,dragging:!1,initialPan:[null,null],capture:!1},e.dragData={possibleDragElements:[]},e.touchData={start:null,capture:!1,startPosition:[null,null,null,null,null,null],singleTouchStartTime:null,singleTouchMoved:!0,now:[null,null,null,null,null,null],earlier:[null,null,null,null,null,null]},e.redraws=0,e.showFps=t.showFps,e.debug=t.debug,e.webgl=t.webgl,e.hideEdgesOnViewport=t.hideEdgesOnViewport,e.textureOnViewport=t.textureOnViewport,e.wheelSensitivity=t.wheelSensitivity,e.motionBlurEnabled=t.motionBlur,e.forcedPixelRatio=At(t.pixelRatio)?t.pixelRatio:null,e.motionBlur=t.motionBlur,e.motionBlurOpacity=t.motionBlurOpacity,e.motionBlurTransparency=1-e.motionBlurOpacity,e.motionBlurPxRatio=1,e.mbPxRBlurry=1,e.minMbLowQualFrames=4,e.fullQualityMb=!1,e.clearedForMotionBlur=[],e.desktopTapThreshold=t.desktopTapThreshold,e.desktopTapThreshold2=t.desktopTapThreshold*t.desktopTapThreshold,e.touchTapThreshold=t.touchTapThreshold,e.touchTapThreshold2=t.touchTapThreshold*t.touchTapThreshold,e.tapholdDuration=500,e.bindings=[],e.beforeRenderCallbacks=[],e.beforeRenderPriorities={animations:400,eleCalcs:300,eleTxrDeq:200,lyrTxrDeq:150,lyrTxrSkip:100},e.registerNodeShapes(),e.registerArrowShapes(),e.registerCalculationListeners()};dg.notify=function(t,e){var r=this,n=r.cy;if(!this.destroyed){if(t==="init"){r.load();return}if(t==="destroy"){r.destroy();return}(t==="add"||t==="remove"||t==="move"&&n.hasCompoundNodes()||t==="load"||t==="zorder"||t==="mount")&&r.invalidateCachedZSortedEles(),t==="viewport"&&r.redrawHint("select",!0),t==="gc"&&r.redrawHint("gc",!0),(t==="load"||t==="resize"||t==="mount")&&(r.invalidateContainerClientCoordsCache(),r.matchCanvasSize(r.container)),r.redrawHint("eles",!0),r.redrawHint("drag",!0),this.startRenderLoop(),this.redraw()}};dg.destroy=function(){var t=this;t.destroyed=!0,t.cy.stopAnimationLoop();for(var e=0;e<t.bindings.length;e++){var r=t.bindings[e],n=r,i=n.target;(i.off||i.removeEventListener).apply(i,n.args)}if(t.bindings=[],t.beforeRenderCallbacks=[],t.onUpdateEleCalcsFns=[],t.removeObserver&&t.removeObserver.disconnect(),t.styleObserver&&t.styleObserver.disconnect(),t.resizeObserver&&t.resizeObserver.disconnect(),t.labelCalcDiv)try{document.body.removeChild(t.labelCalcDiv)}catch{}};dg.isHeadless=function(){return!1};[iM,Zle,Jle,fg,Gu,Ex].forEach(function(t){ir(dg,t)});gN=1e3/60,tce={setupDequeueing:o(function(e){return o(function(){var n=this,i=this.renderer;if(!n.dequeueingSetup){n.dequeueingSetup=!0;var a=xx(function(){i.redrawHint("eles",!0),i.redrawHint("drag",!0),i.redraw()},e.deqRedrawThreshold),s=o(function(h,f){var d=Bu(),p=i.averageRedrawTime,m=i.lastRedrawTime,g=[],y=i.cy.extent(),x=i.getPixelRatio();for(h||i.flushRenderedStyleQueue();;){var v=Bu(),b=v-d,T=v-f;if(m<gN){var S=gN-(h?p:0);if(T>=e.deqFastCost*S)break}else if(h){if(b>=e.deqCost*m||b>=e.deqAvgCost*p)break}else if(T>=e.deqNoDrawCost*gN)break;var w=e.deq(n,x,y);if(w.length>0)for(var E=0;E<w.length;E++)g.push(w[E]);else break}g.length>0&&(e.onDeqd(n,g),!h&&e.shouldRedraw(n,g,x,y)&&a())},"dequeue"),l=e.priority||UN;i.beforeRender(s,l(n))}},"setupDequeueingImpl")},"setupDequeueing")},AUe=function(){function t(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Xk;kf(this,t),this.idsByKey=new Mc,this.keyForId=new Mc,this.cachesByLvl=new Mc,this.lvls=[],this.getKey=e,this.doesEleInvalidateKey=r}return o(t,"ElementTextureCacheLookup"),Ef(t,[{key:"getIdsFor",value:o(function(r){r==null&&oi("Can not get id list for null key");var n=this.idsByKey,i=this.idsByKey.get(r);return i||(i=new ag,n.set(r,i)),i},"getIdsFor")},{key:"addIdForKey",value:o(function(r,n){r!=null&&this.getIdsFor(r).add(n)},"addIdForKey")},{key:"deleteIdForKey",value:o(function(r,n){r!=null&&this.getIdsFor(r).delete(n)},"deleteIdForKey")},{key:"getNumberOfIdsForKey",value:o(function(r){return r==null?0:this.getIdsFor(r).size},"getNumberOfIdsForKey")},{key:"updateKeyMappingFor",value:o(function(r){var n=r.id(),i=this.keyForId.get(n),a=this.getKey(r);this.deleteIdForKey(i,n),this.addIdForKey(a,n),this.keyForId.set(n,a)},"updateKeyMappingFor")},{key:"deleteKeyMappingFor",value:o(function(r){var n=r.id(),i=this.keyForId.get(n);this.deleteIdForKey(i,n),this.keyForId.delete(n)},"deleteKeyMappingFor")},{key:"keyHasChangedFor",value:o(function(r){var n=r.id(),i=this.keyForId.get(n),a=this.getKey(r);return i!==a},"keyHasChangedFor")},{key:"isInvalid",value:o(function(r){return this.keyHasChangedFor(r)||this.doesEleInvalidateKey(r)},"isInvalid")},{key:"getCachesAt",value:o(function(r){var n=this.cachesByLvl,i=this.lvls,a=n.get(r);return a||(a=new Mc,n.set(r,a),i.push(r)),a},"getCachesAt")},{key:"getCache",value:o(function(r,n){return this.getCachesAt(n).get(r)},"getCache")},{key:"get",value:o(function(r,n){var i=this.getKey(r),a=this.getCache(i,n);return a!=null&&this.updateKeyMappingFor(r),a},"get")},{key:"getForCachedKey",value:o(function(r,n){var i=this.keyForId.get(r.id()),a=this.getCache(i,n);return a},"getForCachedKey")},{key:"hasCache",value:o(function(r,n){return this.getCachesAt(n).has(r)},"hasCache")},{key:"has",value:o(function(r,n){var i=this.getKey(r);return this.hasCache(i,n)},"has")},{key:"setCache",value:o(function(r,n,i){i.key=r,this.getCachesAt(n).set(r,i)},"setCache")},{key:"set",value:o(function(r,n,i){var a=this.getKey(r);this.setCache(a,n,i),this.updateKeyMappingFor(r)},"set")},{key:"deleteCache",value:o(function(r,n){this.getCachesAt(n).delete(r)},"deleteCache")},{key:"delete",value:o(function(r,n){var i=this.getKey(r);this.deleteCache(i,n)},"_delete")},{key:"invalidateKey",value:o(function(r){var n=this;this.lvls.forEach(function(i){return n.deleteCache(r,i)})},"invalidateKey")},{key:"invalidate",value:o(function(r){var n=r.id(),i=this.keyForId.get(n);this.deleteKeyMappingFor(r);var a=this.doesEleInvalidateKey(r);return a&&this.invalidateKey(i),a||this.getNumberOfIdsForKey(i)===0},"invalidate")}]),t}(),goe=25,Ik=50,Wk=-4,ON=3,rce=7.99,_Ue=8,DUe=1024,LUe=1024,RUe=1024,NUe=.2,MUe=.8,IUe=10,OUe=.15,PUe=.1,BUe=.9,FUe=.9,$Ue=100,GUe=1,Km={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},zUe=na({getKey:null,doesEleInvalidateKey:Xk,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:qoe,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),ex=o(function(e,r){var n=this;n.renderer=e,n.onDequeues=[];var i=zUe(r);ir(n,i),n.lookup=new AUe(i.getKey,i.doesEleInvalidateKey),n.setupDequeueing()},"ElementTextureCache"),Vi=ex.prototype;Vi.reasons=Km;Vi.getTextureQueue=function(t){var e=this;return e.eleImgCaches=e.eleImgCaches||{},e.eleImgCaches[t]=e.eleImgCaches[t]||[]};Vi.getRetiredTextureQueue=function(t){var e=this,r=e.eleImgCaches.retired=e.eleImgCaches.retired||{},n=r[t]=r[t]||[];return n};Vi.getElementQueue=function(){var t=this,e=t.eleCacheQueue=t.eleCacheQueue||new bx(function(r,n){return n.reqs-r.reqs});return e};Vi.getElementKeyToQueue=function(){var t=this,e=t.eleKeyToCacheQueue=t.eleKeyToCacheQueue||{};return e};Vi.getElement=function(t,e,r,n,i){var a=this,s=this.renderer,l=s.cy.zoom(),u=this.lookup;if(!e||e.w===0||e.h===0||isNaN(e.w)||isNaN(e.h)||!t.visible()||t.removed()||!a.allowEdgeTxrCaching&&t.isEdge()||!a.allowParentTxrCaching&&t.isParent())return null;if(n==null&&(n=Math.ceil(WN(l*r))),n<Wk)n=Wk;else if(l>=rce||n>ON)return null;var h=Math.pow(2,n),f=e.h*h,d=e.w*h,p=s.eleTextBiggerThanMin(t,h);if(!this.isVisible(t,p))return null;var m=u.get(t,n);if(m&&m.invalidated&&(m.invalidated=!1,m.texture.invalidatedWidth-=m.width),m)return m;var g;if(f<=goe?g=goe:f<=Ik?g=Ik:g=Math.ceil(f/Ik)*Ik,f>RUe||d>LUe)return null;var y=a.getTextureQueue(g),x=y[y.length-2],v=o(function(){return a.recycleTexture(g,d)||a.addTexture(g,d)},"addNewTxr");x||(x=y[y.length-1]),x||(x=v()),x.width-x.usedWidth<d&&(x=v());for(var b=o(function(M){return M&&M.scaledLabelShown===p},"scalableFrom"),T=i&&i===Km.dequeue,S=i&&i===Km.highQuality,w=i&&i===Km.downscale,E,_=n+1;_<=ON;_++){var A=u.get(t,_);if(A){E=A;break}}var D=E&&E.level===n+1?E:null,O=o(function(){x.context.drawImage(D.texture.canvas,D.x,0,D.width,D.height,x.usedWidth,0,d,f)},"downscale");if(x.context.setTransform(1,0,0,1,0,0),x.context.clearRect(x.usedWidth,0,d,g),b(D))O();else if(b(E))if(S){for(var R=E.level;R>n;R--)D=a.getElement(t,e,r,R,Km.downscale);O()}else return a.queueElement(t,E.level-1),E;else{var k;if(!T&&!S&&!w)for(var L=n-1;L>=Wk;L--){var C=u.get(t,L);if(C){k=C;break}}if(b(k))return a.queueElement(t,n),k;x.context.translate(x.usedWidth,0),x.context.scale(h,h),this.drawElement(x.context,t,e,p,!1),x.context.scale(1/h,1/h),x.context.translate(-x.usedWidth,0)}return m={x:x.usedWidth,texture:x,level:n,scale:h,width:d,height:f,scaledLabelShown:p},x.usedWidth+=Math.ceil(d+_Ue),x.eleCaches.push(m),u.set(t,n,m),a.checkTextureFullness(x),m};Vi.invalidateElements=function(t){for(var e=0;e<t.length;e++)this.invalidateElement(t[e])};Vi.invalidateElement=function(t){var e=this,r=e.lookup,n=[],i=r.isInvalid(t);if(i){for(var a=Wk;a<=ON;a++){var s=r.getForCachedKey(t,a);s&&n.push(s)}var l=r.invalidate(t);if(l)for(var u=0;u<n.length;u++){var h=n[u],f=h.texture;f.invalidatedWidth+=h.width,h.invalidated=!0,e.checkTextureUtility(f)}e.removeFromQueue(t)}};Vi.checkTextureUtility=function(t){t.invalidatedWidth>=NUe*t.width&&this.retireTexture(t)};Vi.checkTextureFullness=function(t){var e=this,r=e.getTextureQueue(t.height);t.usedWidth/t.width>MUe&&t.fullnessChecks>=IUe?xf(r,t):t.fullnessChecks++};Vi.retireTexture=function(t){var e=this,r=t.height,n=e.getTextureQueue(r),i=this.lookup;xf(n,t),t.retired=!0;for(var a=t.eleCaches,s=0;s<a.length;s++){var l=a[s];i.deleteCache(l.key,l.level)}HN(a);var u=e.getRetiredTextureQueue(r);u.push(t)};Vi.addTexture=function(t,e){var r=this,n=r.getTextureQueue(t),i={};return n.push(i),i.eleCaches=[],i.height=t,i.width=Math.max(DUe,e),i.usedWidth=0,i.invalidatedWidth=0,i.fullnessChecks=0,i.canvas=r.renderer.makeOffscreenCanvas(i.width,i.height),i.context=i.canvas.getContext("2d"),i};Vi.recycleTexture=function(t,e){for(var r=this,n=r.getTextureQueue(t),i=r.getRetiredTextureQueue(t),a=0;a<i.length;a++){var s=i[a];if(s.width>=e)return s.retired=!1,s.usedWidth=0,s.invalidatedWidth=0,s.fullnessChecks=0,HN(s.eleCaches),s.context.setTransform(1,0,0,1,0,0),s.context.clearRect(0,0,s.width,s.height),xf(i,s),n.push(s),s}};Vi.queueElement=function(t,e){var r=this,n=r.getElementQueue(),i=r.getElementKeyToQueue(),a=this.getKey(t),s=i[a];if(s)s.level=Math.max(s.level,e),s.eles.merge(t),s.reqs++,n.updateItem(s);else{var l={eles:t.spawn().merge(t),level:e,reqs:1,key:a};n.push(l),i[a]=l}};Vi.dequeue=function(t){for(var e=this,r=e.getElementQueue(),n=e.getElementKeyToQueue(),i=[],a=e.lookup,s=0;s<GUe&&r.size()>0;s++){var l=r.pop(),u=l.key,h=l.eles[0],f=a.hasCache(h,l.level);if(n[u]=null,f)continue;i.push(l);var d=e.getBoundingBox(h);e.getElement(h,d,t,l.level,Km.dequeue)}return i};Vi.removeFromQueue=function(t){var e=this,r=e.getElementQueue(),n=e.getElementKeyToQueue(),i=this.getKey(t),a=n[i];a!=null&&(a.eles.length===1?(a.reqs=VN,r.updateItem(a),r.pop(),n[i]=null):a.eles.unmerge(t))};Vi.onDequeue=function(t){this.onDequeues.push(t)};Vi.offDequeue=function(t){xf(this.onDequeues,t)};Vi.setupDequeueing=tce.setupDequeueing({deqRedrawThreshold:$Ue,deqCost:OUe,deqAvgCost:PUe,deqNoDrawCost:BUe,deqFastCost:FUe,deq:o(function(e,r,n){return e.dequeue(r,n)},"deq"),onDeqd:o(function(e,r){for(var n=0;n<e.onDequeues.length;n++){var i=e.onDequeues[n];i(r)}},"onDeqd"),shouldRedraw:o(function(e,r,n,i){for(var a=0;a<r.length;a++)for(var s=r[a].eles,l=0;l<s.length;l++){var u=s[l].boundingBox();if(qN(u,i))return!0}return!1},"shouldRedraw"),priority:o(function(e){return e.renderer.beforeRenderPriorities.eleTxrDeq},"priority")});VUe=1,rx=-4,rE=2,UUe=3.99,HUe=50,WUe=50,qUe=.15,YUe=.1,XUe=.9,jUe=.9,KUe=1,yoe=250,QUe=4e3*4e3,voe=32767,ZUe=!0,nce=o(function(e){var r=this,n=r.renderer=e,i=n.cy;r.layersByLevel={},r.firstGet=!0,r.lastInvalidationTime=Bu()-2*yoe,r.skipping=!1,r.eleTxrDeqs=i.collection(),r.scheduleElementRefinement=xx(function(){r.refineElementTextures(r.eleTxrDeqs),r.eleTxrDeqs.unmerge(r.eleTxrDeqs)},WUe),n.beforeRender(function(s,l){l-r.lastInvalidationTime<=yoe?r.skipping=!0:r.skipping=!1},n.beforeRenderPriorities.lyrTxrSkip);var a=o(function(l,u){return u.reqs-l.reqs},"qSort");r.layersQueue=new bx(a),r.setupDequeueing()},"LayeredTextureCache"),xa=nce.prototype,xoe=0,JUe=Math.pow(2,53)-1;xa.makeLayer=function(t,e){var r=Math.pow(2,e),n=Math.ceil(t.w*r),i=Math.ceil(t.h*r),a=this.renderer.makeOffscreenCanvas(n,i),s={id:xoe=++xoe%JUe,bb:t,level:e,width:n,height:i,canvas:a,context:a.getContext("2d"),eles:[],elesQueue:[],reqs:0},l=s.context,u=-s.bb.x1,h=-s.bb.y1;return l.scale(r,r),l.translate(u,h),s};xa.getLayers=function(t,e,r){var n=this,i=n.renderer,a=i.cy,s=a.zoom(),l=n.firstGet;if(n.firstGet=!1,r==null){if(r=Math.ceil(WN(s*e)),r<rx)r=rx;else if(s>=UUe||r>rE)return null}n.validateLayersElesOrdering(r,t);var u=n.layersByLevel,h=Math.pow(2,r),f=u[r]=u[r]||[],d,p=n.levelIsComplete(r,t),m,g=o(function(){var O=o(function(I){if(n.validateLayersElesOrdering(I,t),n.levelIsComplete(I,t))return m=u[I],!0},"canUseAsTmpLvl"),R=o(function(I){if(!m)for(var M=r+I;rx<=M&&M<=rE&&!O(M);M+=I);},"checkLvls");R(1),R(-1);for(var k=f.length-1;k>=0;k--){var L=f[k];L.invalid&&xf(f,L)}},"checkTempLevels");if(!p)g();else return f;var y=o(function(){if(!d){d=Us();for(var O=0;O<t.length;O++)Zoe(d,t[O].boundingBox())}return d},"getBb"),x=o(function(O){O=O||{};var R=O.after;y();var k=Math.ceil(d.w*h),L=Math.ceil(d.h*h);if(k>voe||L>voe)return null;var C=k*L;if(C>QUe)return null;var I=n.makeLayer(d,r);if(R!=null){var M=f.indexOf(R)+1;f.splice(M,0,I)}else(O.insert===void 0||O.insert)&&f.unshift(I);return I},"makeLayer");if(n.skipping&&!l)return null;for(var v=null,b=t.length/VUe,T=!l,S=0;S<t.length;S++){var w=t[S],E=w._private.rscratch,_=E.imgLayerCaches=E.imgLayerCaches||{},A=_[r];if(A){v=A;continue}if((!v||v.eles.length>=b||!Joe(v.bb,w.boundingBox()))&&(v=x({insert:!0,after:v}),!v))return null;m||T?n.queueLayer(v,w):n.drawEleInLayer(v,w,r,e),v.eles.push(w),_[r]=v}return m||(T?null:f)};xa.getEleLevelForLayerLevel=function(t,e){return t};xa.drawEleInLayer=function(t,e,r,n){var i=this,a=this.renderer,s=t.context,l=e.boundingBox();l.w===0||l.h===0||!e.visible()||(r=i.getEleLevelForLayerLevel(r,n),a.setImgSmoothing(s,!1),a.drawCachedElement(s,e,null,null,r,ZUe),a.setImgSmoothing(s,!0))};xa.levelIsComplete=function(t,e){var r=this,n=r.layersByLevel[t];if(!n||n.length===0)return!1;for(var i=0,a=0;a<n.length;a++){var s=n[a];if(s.reqs>0||s.invalid)return!1;i+=s.eles.length}return i===e.length};xa.validateLayersElesOrdering=function(t,e){var r=this.layersByLevel[t];if(r)for(var n=0;n<r.length;n++){for(var i=r[n],a=-1,s=0;s<e.length;s++)if(i.eles[0]===e[s]){a=s;break}if(a<0){this.invalidateLayer(i);continue}for(var l=a,s=0;s<i.eles.length;s++)if(i.eles[s]!==e[l+s]){this.invalidateLayer(i);break}}};xa.updateElementsInLayers=function(t,e){for(var r=this,n=yx(t[0]),i=0;i<t.length;i++)for(var a=n?null:t[i],s=n?t[i]:t[i].ele,l=s._private.rscratch,u=l.imgLayerCaches=l.imgLayerCaches||{},h=rx;h<=rE;h++){var f=u[h];f&&(a&&r.getEleLevelForLayerLevel(f.level)!==a.level||e(f,s,a))}};xa.haveLayers=function(){for(var t=this,e=!1,r=rx;r<=rE;r++){var n=t.layersByLevel[r];if(n&&n.length>0){e=!0;break}}return e};xa.invalidateElements=function(t){var e=this;t.length!==0&&(e.lastInvalidationTime=Bu(),!(t.length===0||!e.haveLayers())&&e.updateElementsInLayers(t,o(function(n,i,a){e.invalidateLayer(n)},"invalAssocLayers")))};xa.invalidateLayer=function(t){if(this.lastInvalidationTime=Bu(),!t.invalid){var e=t.level,r=t.eles,n=this.layersByLevel[e];xf(n,t),t.elesQueue=[],t.invalid=!0,t.replacement&&(t.replacement.invalid=!0);for(var i=0;i<r.length;i++){var a=r[i]._private.rscratch.imgLayerCaches;a&&(a[e]=null)}}};xa.refineElementTextures=function(t){var e=this;e.updateElementsInLayers(t,o(function(n,i,a){var s=n.replacement;if(s||(s=n.replacement=e.makeLayer(n.bb,n.level),s.replaces=n,s.eles=n.eles),!s.reqs)for(var l=0;l<s.eles.length;l++)e.queueLayer(s,s.eles[l])},"refineEachEle"))};xa.enqueueElementRefinement=function(t){this.eleTxrDeqs.merge(t),this.scheduleElementRefinement()};xa.queueLayer=function(t,e){var r=this,n=r.layersQueue,i=t.elesQueue,a=i.hasId=i.hasId||{};if(!t.replacement){if(e){if(a[e.id()])return;i.push(e),a[e.id()]=!0}t.reqs?(t.reqs++,n.updateItem(t)):(t.reqs=1,n.push(t))}};xa.dequeue=function(t){for(var e=this,r=e.layersQueue,n=[],i=0;i<KUe&&r.size()!==0;){var a=r.peek();if(a.replacement){r.pop();continue}if(a.replaces&&a!==a.replaces.replacement){r.pop();continue}if(a.invalid){r.pop();continue}var s=a.elesQueue.shift();s&&(e.drawEleInLayer(a,s,a.level,t),i++),n.length===0&&n.push(!0),a.elesQueue.length===0&&(r.pop(),a.reqs=0,a.replaces&&e.applyLayerReplacement(a),e.requestRedraw())}return n};xa.applyLayerReplacement=function(t){var e=this,r=e.layersByLevel[t.level],n=t.replaces,i=r.indexOf(n);if(!(i<0||n.invalid)){r[i]=t;for(var a=0;a<t.eles.length;a++){var s=t.eles[a]._private,l=s.imgLayerCaches=s.imgLayerCaches||{};l&&(l[t.level]=t)}e.requestRedraw()}};xa.requestRedraw=xx(function(){var t=this.renderer;t.redrawHint("eles",!0),t.redrawHint("drag",!0),t.redraw()},100);xa.setupDequeueing=tce.setupDequeueing({deqRedrawThreshold:HUe,deqCost:qUe,deqAvgCost:YUe,deqNoDrawCost:XUe,deqFastCost:jUe,deq:o(function(e,r){return e.dequeue(r)},"deq"),onDeqd:UN,shouldRedraw:qoe,priority:o(function(e){return e.renderer.beforeRenderPriorities.lyrTxrDeq},"priority")});ice={};o(eHe,"polygon");o(tHe,"triangleBackcurve");o(Toe,"triangleTee");o(rHe,"circleTriangle");o(nHe,"circle");ice.arrowShapeImpl=function(t){return(boe||(boe={polygon:eHe,"triangle-backcurve":tHe,"triangle-tee":Toe,"circle-triangle":rHe,"triangle-cross":Toe,circle:nHe}))[t]};Pc={};Pc.drawElement=function(t,e,r,n,i,a){var s=this;e.isNode()?s.drawNode(t,e,r,n,i,a):s.drawEdge(t,e,r,n,i,a)};Pc.drawElementOverlay=function(t,e){var r=this;e.isNode()?r.drawNodeOverlay(t,e):r.drawEdgeOverlay(t,e)};Pc.drawElementUnderlay=function(t,e){var r=this;e.isNode()?r.drawNodeUnderlay(t,e):r.drawEdgeUnderlay(t,e)};Pc.drawCachedElementPortion=function(t,e,r,n,i,a,s,l){var u=this,h=r.getBoundingBox(e);if(!(h.w===0||h.h===0)){var f=r.getElement(e,h,n,i,a);if(f!=null){var d=l(u,e);if(d===0)return;var p=s(u,e),m=h.x1,g=h.y1,y=h.w,x=h.h,v,b,T,S,w;if(p!==0){var E=r.getRotationPoint(e);T=E.x,S=E.y,t.translate(T,S),t.rotate(p),w=u.getImgSmoothing(t),w||u.setImgSmoothing(t,!0);var _=r.getRotationOffset(e);v=_.x,b=_.y}else v=m,b=g;var A;d!==1&&(A=t.globalAlpha,t.globalAlpha=A*d),t.drawImage(f.texture.canvas,f.x,0,f.width,f.height,v,b,y,x),d!==1&&(t.globalAlpha=A),p!==0&&(t.rotate(-p),t.translate(-T,-S),w||u.setImgSmoothing(t,!1))}else r.drawElement(t,e)}};iHe=o(function(){return 0},"getZeroRotation"),aHe=o(function(e,r){return e.getTextAngle(r,null)},"getLabelRotation"),sHe=o(function(e,r){return e.getTextAngle(r,"source")},"getSourceLabelRotation"),oHe=o(function(e,r){return e.getTextAngle(r,"target")},"getTargetLabelRotation"),lHe=o(function(e,r){return r.effectiveOpacity()},"getOpacity"),yN=o(function(e,r){return r.pstyle("text-opacity").pfValue*r.effectiveOpacity()},"getTextOpacity");Pc.drawCachedElement=function(t,e,r,n,i,a){var s=this,l=s.data,u=l.eleTxrCache,h=l.lblTxrCache,f=l.slbTxrCache,d=l.tlbTxrCache,p=e.boundingBox(),m=a===!0?u.reasons.highQuality:null;if(!(p.w===0||p.h===0||!e.visible())&&(!n||qN(p,n))){var g=e.isEdge(),y=e.element()._private.rscratch.badLine;s.drawElementUnderlay(t,e),s.drawCachedElementPortion(t,e,u,r,i,m,iHe,lHe),(!g||!y)&&s.drawCachedElementPortion(t,e,h,r,i,m,aHe,yN),g&&!y&&(s.drawCachedElementPortion(t,e,f,r,i,m,sHe,yN),s.drawCachedElementPortion(t,e,d,r,i,m,oHe,yN)),s.drawElementOverlay(t,e)}};Pc.drawElements=function(t,e){for(var r=this,n=0;n<e.length;n++){var i=e[n];r.drawElement(t,i)}};Pc.drawCachedElements=function(t,e,r,n){for(var i=this,a=0;a<e.length;a++){var s=e[a];i.drawCachedElement(t,s,r,n)}};Pc.drawCachedNodes=function(t,e,r,n){for(var i=this,a=0;a<e.length;a++){var s=e[a];s.isNode()&&i.drawCachedElement(t,s,r,n)}};Pc.drawLayeredElements=function(t,e,r,n){var i=this,a=i.data.lyrTxrCache.getLayers(e,r);if(a)for(var s=0;s<a.length;s++){var l=a[s],u=l.bb;u.w===0||u.h===0||t.drawImage(l.canvas,u.x1,u.y1,u.w,u.h)}else i.drawCachedElements(t,e,r,n)};zu={};zu.drawEdge=function(t,e,r){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,s=this,l=e._private.rscratch;if(!(a&&!e.visible())&&!(l.badLine||l.allpts==null||isNaN(l.allpts[0]))){var u;r&&(u=r,t.translate(-u.x1,-u.y1));var h=a?e.pstyle("opacity").value:1,f=a?e.pstyle("line-opacity").value:1,d=e.pstyle("curve-style").value,p=e.pstyle("line-style").value,m=e.pstyle("width").pfValue,g=e.pstyle("line-cap").value,y=e.pstyle("line-outline-width").value,x=e.pstyle("line-outline-color").value,v=h*f,b=h*f,T=o(function(){var I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:v;d==="straight-triangle"?(s.eleStrokeStyle(t,e,I),s.drawEdgeTrianglePath(e,t,l.allpts)):(t.lineWidth=m,t.lineCap=g,s.eleStrokeStyle(t,e,I),s.drawEdgePath(e,t,l.allpts,p),t.lineCap="butt")},"drawLine"),S=o(function(){var I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:v;if(t.lineWidth=m+y,t.lineCap=g,y>0)s.colorStrokeStyle(t,x[0],x[1],x[2],I);else{t.lineCap="butt";return}d==="straight-triangle"?s.drawEdgeTrianglePath(e,t,l.allpts):(s.drawEdgePath(e,t,l.allpts,p),t.lineCap="butt")},"drawLineOutline"),w=o(function(){i&&s.drawEdgeOverlay(t,e)},"drawOverlay"),E=o(function(){i&&s.drawEdgeUnderlay(t,e)},"drawUnderlay"),_=o(function(){var I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:b;s.drawArrowheads(t,e,I)},"drawArrows"),A=o(function(){s.drawElementText(t,e,null,n)},"drawText");t.lineJoin="round";var D=e.pstyle("ghost").value==="yes";if(D){var O=e.pstyle("ghost-offset-x").pfValue,R=e.pstyle("ghost-offset-y").pfValue,k=e.pstyle("ghost-opacity").value,L=v*k;t.translate(O,R),T(L),_(L),t.translate(-O,-R)}else S();E(),T(),_(),w(),A(),r&&t.translate(u.x1,u.y1)}};ace=o(function(e){if(!["overlay","underlay"].includes(e))throw new Error("Invalid state");return function(r,n){if(n.visible()){var i=n.pstyle("".concat(e,"-opacity")).value;if(i!==0){var a=this,s=a.usePaths(),l=n._private.rscratch,u=n.pstyle("".concat(e,"-padding")).pfValue,h=2*u,f=n.pstyle("".concat(e,"-color")).value;r.lineWidth=h,l.edgeType==="self"&&!s?r.lineCap="butt":r.lineCap="round",a.colorStrokeStyle(r,f[0],f[1],f[2],i),a.drawEdgePath(n,r,l.allpts,"solid")}}}},"drawEdgeOverlayUnderlay");zu.drawEdgeOverlay=ace("overlay");zu.drawEdgeUnderlay=ace("underlay");zu.drawEdgePath=function(t,e,r,n){var i=t._private.rscratch,a=e,s,l=!1,u=this.usePaths(),h=t.pstyle("line-dash-pattern").pfValue,f=t.pstyle("line-dash-offset").pfValue;if(u){var d=r.join("$"),p=i.pathCacheKey&&i.pathCacheKey===d;p?(s=e=i.pathCache,l=!0):(s=e=new Path2D,i.pathCacheKey=d,i.pathCache=s)}if(a.setLineDash)switch(n){case"dotted":a.setLineDash([1,1]);break;case"dashed":a.setLineDash(h),a.lineDashOffset=f;break;case"solid":a.setLineDash([]);break}if(!l&&!i.badLine)switch(e.beginPath&&e.beginPath(),e.moveTo(r[0],r[1]),i.edgeType){case"bezier":case"self":case"compound":case"multibezier":for(var m=2;m+3<r.length;m+=4)e.quadraticCurveTo(r[m],r[m+1],r[m+2],r[m+3]);break;case"straight":case"haystack":for(var g=2;g+1<r.length;g+=2)e.lineTo(r[g],r[g+1]);break;case"segments":if(i.isRound){var y=uo(i.roundCorners),x;try{for(y.s();!(x=y.n()).done;){var v=x.value;Yle(e,v)}}catch(T){y.e(T)}finally{y.f()}e.lineTo(r[r.length-2],r[r.length-1])}else for(var b=2;b+1<r.length;b+=2)e.lineTo(r[b],r[b+1]);break}e=a,u?e.stroke(s):e.stroke(),e.setLineDash&&e.setLineDash([])};zu.drawEdgeTrianglePath=function(t,e,r){e.fillStyle=e.strokeStyle;for(var n=t.pstyle("width").pfValue,i=0;i+1<r.length;i+=2){var a=[r[i+2]-r[i],r[i+3]-r[i+1]],s=Math.sqrt(a[0]*a[0]+a[1]*a[1]),l=[a[1]/s,-a[0]/s],u=[l[0]*n/2,l[1]*n/2];e.beginPath(),e.moveTo(r[i]-u[0],r[i+1]-u[1]),e.lineTo(r[i]+u[0],r[i+1]+u[1]),e.lineTo(r[i+2],r[i+3]),e.closePath(),e.fill()}};zu.drawArrowheads=function(t,e,r){var n=e._private.rscratch,i=n.edgeType==="haystack";i||this.drawArrowhead(t,e,"source",n.arrowStartX,n.arrowStartY,n.srcArrowAngle,r),this.drawArrowhead(t,e,"mid-target",n.midX,n.midY,n.midtgtArrowAngle,r),this.drawArrowhead(t,e,"mid-source",n.midX,n.midY,n.midsrcArrowAngle,r),i||this.drawArrowhead(t,e,"target",n.arrowEndX,n.arrowEndY,n.tgtArrowAngle,r)};zu.drawArrowhead=function(t,e,r,n,i,a,s){if(!(isNaN(n)||n==null||isNaN(i)||i==null||isNaN(a)||a==null)){var l=this,u=e.pstyle(r+"-arrow-shape").value;if(u!=="none"){var h=e.pstyle(r+"-arrow-fill").value==="hollow"?"both":"filled",f=e.pstyle(r+"-arrow-fill").value,d=e.pstyle("width").pfValue,p=e.pstyle(r+"-arrow-width"),m=p.value==="match-line"?d:p.pfValue;p.units==="%"&&(m*=d);var g=e.pstyle("opacity").value;s===void 0&&(s=g);var y=t.globalCompositeOperation;(s!==1||f==="hollow")&&(t.globalCompositeOperation="destination-out",l.colorFillStyle(t,255,255,255,1),l.colorStrokeStyle(t,255,255,255,1),l.drawArrowShape(e,t,h,d,u,m,n,i,a),t.globalCompositeOperation=y);var x=e.pstyle(r+"-arrow-color").value;l.colorFillStyle(t,x[0],x[1],x[2],s),l.colorStrokeStyle(t,x[0],x[1],x[2],s),l.drawArrowShape(e,t,f,d,u,m,n,i,a)}}};zu.drawArrowShape=function(t,e,r,n,i,a,s,l,u){var h=this,f=this.usePaths()&&i!=="triangle-cross",d=!1,p,m=e,g={x:s,y:l},y=t.pstyle("arrow-scale").value,x=this.getArrowWidth(n,y),v=h.arrowShapes[i];if(f){var b=h.arrowPathCache=h.arrowPathCache||[],T=vf(i),S=b[T];S!=null?(p=e=S,d=!0):(p=e=new Path2D,b[T]=p)}d||(e.beginPath&&e.beginPath(),f?v.draw(e,1,0,{x:0,y:0},1):v.draw(e,x,u,g,n),e.closePath&&e.closePath()),e=m,f&&(e.translate(s,l),e.rotate(u),e.scale(x,x)),(r==="filled"||r==="both")&&(f?e.fill(p):e.fill()),(r==="hollow"||r==="both")&&(e.lineWidth=a/(f?x:1),e.lineJoin="miter",f?e.stroke(p):e.stroke()),f&&(e.scale(1/x,1/x),e.rotate(-u),e.translate(-s,-l))};oM={};oM.safeDrawImage=function(t,e,r,n,i,a,s,l,u,h){if(!(i<=0||a<=0||u<=0||h<=0))try{t.drawImage(e,r,n,i,a,s,l,u,h)}catch(f){ln(f)}};oM.drawInscribedImage=function(t,e,r,n,i){var a=this,s=r.position(),l=s.x,u=s.y,h=r.cy().style(),f=h.getIndexedStyle.bind(h),d=f(r,"background-fit","value",n),p=f(r,"background-repeat","value",n),m=r.width(),g=r.height(),y=r.padding()*2,x=m+(f(r,"background-width-relative-to","value",n)==="inner"?0:y),v=g+(f(r,"background-height-relative-to","value",n)==="inner"?0:y),b=r._private.rscratch,T=f(r,"background-clip","value",n),S=T==="node",w=f(r,"background-image-opacity","value",n)*i,E=f(r,"background-image-smoothing","value",n),_=r.pstyle("corner-radius").value;_!=="auto"&&(_=r.pstyle("corner-radius").pfValue);var A=e.width||e.cachedW,D=e.height||e.cachedH;(A==null||D==null)&&(document.body.appendChild(e),A=e.cachedW=e.width||e.offsetWidth,D=e.cachedH=e.height||e.offsetHeight,document.body.removeChild(e));var O=A,R=D;if(f(r,"background-width","value",n)!=="auto"&&(f(r,"background-width","units",n)==="%"?O=f(r,"background-width","pfValue",n)*x:O=f(r,"background-width","pfValue",n)),f(r,"background-height","value",n)!=="auto"&&(f(r,"background-height","units",n)==="%"?R=f(r,"background-height","pfValue",n)*v:R=f(r,"background-height","pfValue",n)),!(O===0||R===0)){if(d==="contain"){var k=Math.min(x/O,v/R);O*=k,R*=k}else if(d==="cover"){var k=Math.max(x/O,v/R);O*=k,R*=k}var L=l-x/2,C=f(r,"background-position-x","units",n),I=f(r,"background-position-x","pfValue",n);C==="%"?L+=(x-O)*I:L+=I;var M=f(r,"background-offset-x","units",n),P=f(r,"background-offset-x","pfValue",n);M==="%"?L+=(x-O)*P:L+=P;var B=u-v/2,F=f(r,"background-position-y","units",n),G=f(r,"background-position-y","pfValue",n);F==="%"?B+=(v-R)*G:B+=G;var $=f(r,"background-offset-y","units",n),U=f(r,"background-offset-y","pfValue",n);$==="%"?B+=(v-R)*U:B+=U,b.pathCache&&(L-=l,B-=u,l=0,u=0);var K=t.globalAlpha;t.globalAlpha=w;var ne=a.getImgSmoothing(t),j=!1;if(E==="no"&&ne?(a.setImgSmoothing(t,!1),j=!0):E==="yes"&&!ne&&(a.setImgSmoothing(t,!0),j=!0),p==="no-repeat")S&&(t.save(),b.pathCache?t.clip(b.pathCache):(a.nodeShapes[a.getNodeShape(r)].draw(t,l,u,x,v,_,b),t.clip())),a.safeDrawImage(t,e,0,0,A,D,L,B,O,R),S&&t.restore();else{var le=t.createPattern(e,p);t.fillStyle=le,a.nodeShapes[a.getNodeShape(r)].draw(t,l,u,x,v,_,b),t.translate(L,B),t.fill(),t.translate(-L,-B)}t.globalAlpha=K,j&&a.setImgSmoothing(t,ne)}};wp={};wp.eleTextBiggerThanMin=function(t,e){if(!e){var r=t.cy().zoom(),n=this.getPixelRatio(),i=Math.ceil(WN(r*n));e=Math.pow(2,i)}var a=t.pstyle("font-size").pfValue*e,s=t.pstyle("min-zoomed-font-size").pfValue;return!(a<s)};wp.drawElementText=function(t,e,r,n,i){var a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,s=this;if(n==null){if(a&&!s.eleTextBiggerThanMin(e))return}else if(n===!1)return;if(e.isNode()){var l=e.pstyle("label");if(!l||!l.value)return;var u=s.getLabelJustification(e);t.textAlign=u,t.textBaseline="bottom"}else{var h=e.element()._private.rscratch.badLine,f=e.pstyle("label"),d=e.pstyle("source-label"),p=e.pstyle("target-label");if(h||(!f||!f.value)&&(!d||!d.value)&&(!p||!p.value))return;t.textAlign="center",t.textBaseline="bottom"}var m=!r,g;r&&(g=r,t.translate(-g.x1,-g.y1)),i==null?(s.drawText(t,e,null,m,a),e.isEdge()&&(s.drawText(t,e,"source",m,a),s.drawText(t,e,"target",m,a))):s.drawText(t,e,i,m,a),r&&t.translate(g.x1,g.y1)};wp.getFontCache=function(t){var e;this.fontCaches=this.fontCaches||[];for(var r=0;r<this.fontCaches.length;r++)if(e=this.fontCaches[r],e.context===t)return e;return e={context:t},this.fontCaches.push(e),e};wp.setupTextStyle=function(t,e){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,n=e.pstyle("font-style").strValue,i=e.pstyle("font-size").pfValue+"px",a=e.pstyle("font-family").strValue,s=e.pstyle("font-weight").strValue,l=r?e.effectiveOpacity()*e.pstyle("text-opacity").value:1,u=e.pstyle("text-outline-opacity").value*l,h=e.pstyle("color").value,f=e.pstyle("text-outline-color").value;t.font=n+" "+s+" "+i+" "+a,t.lineJoin="round",this.colorFillStyle(t,h[0],h[1],h[2],l),this.colorStrokeStyle(t,f[0],f[1],f[2],u)};o(vN,"roundRect");wp.getTextAngle=function(t,e){var r,n=t._private,i=n.rscratch,a=e?e+"-":"",s=t.pstyle(a+"text-rotation");if(s.strValue==="autorotate"){var l=Ml(i,"labelAngle",e);r=t.isEdge()?l:0}else s.strValue==="none"?r=0:r=s.pfValue;return r};wp.drawText=function(t,e,r){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=e._private,s=a.rscratch,l=i?e.effectiveOpacity():1;if(!(i&&(l===0||e.pstyle("text-opacity").value===0))){r==="main"&&(r=null);var u=Ml(s,"labelX",r),h=Ml(s,"labelY",r),f,d,p=this.getLabelText(e,r);if(p!=null&&p!==""&&!isNaN(u)&&!isNaN(h)){this.setupTextStyle(t,e,i);var m=r?r+"-":"",g=Ml(s,"labelWidth",r),y=Ml(s,"labelHeight",r),x=e.pstyle(m+"text-margin-x").pfValue,v=e.pstyle(m+"text-margin-y").pfValue,b=e.isEdge(),T=e.pstyle("text-halign").value,S=e.pstyle("text-valign").value;b&&(T="center",S="center"),u+=x,h+=v;var w;switch(n?w=this.getTextAngle(e,r):w=0,w!==0&&(f=u,d=h,t.translate(f,d),t.rotate(w),u=0,h=0),S){case"top":break;case"center":h+=y/2;break;case"bottom":h+=y;break}var E=e.pstyle("text-background-opacity").value,_=e.pstyle("text-border-opacity").value,A=e.pstyle("text-border-width").pfValue,D=e.pstyle("text-background-padding").pfValue,O=e.pstyle("text-background-shape").strValue,R=O.indexOf("round")===0,k=2;if(E>0||A>0&&_>0){var L=u-D;switch(T){case"left":L-=g;break;case"center":L-=g/2;break}var C=h-y-D,I=g+2*D,M=y+2*D;if(E>0){var P=t.fillStyle,B=e.pstyle("text-background-color").value;t.fillStyle="rgba("+B[0]+","+B[1]+","+B[2]+","+E*l+")",R?vN(t,L,C,I,M,k):t.fillRect(L,C,I,M),t.fillStyle=P}if(A>0&&_>0){var F=t.strokeStyle,G=t.lineWidth,$=e.pstyle("text-border-color").value,U=e.pstyle("text-border-style").value;if(t.strokeStyle="rgba("+$[0]+","+$[1]+","+$[2]+","+_*l+")",t.lineWidth=A,t.setLineDash)switch(U){case"dotted":t.setLineDash([1,1]);break;case"dashed":t.setLineDash([4,2]);break;case"double":t.lineWidth=A/4,t.setLineDash([]);break;case"solid":t.setLineDash([]);break}if(R?vN(t,L,C,I,M,k,"stroke"):t.strokeRect(L,C,I,M),U==="double"){var K=A/2;R?vN(t,L+K,C+K,I-K*2,M-K*2,k,"stroke"):t.strokeRect(L+K,C+K,I-K*2,M-K*2)}t.setLineDash&&t.setLineDash([]),t.lineWidth=G,t.strokeStyle=F}}var ne=2*e.pstyle("text-outline-width").pfValue;if(ne>0&&(t.lineWidth=ne),e.pstyle("text-wrap").value==="wrap"){var j=Ml(s,"labelWrapCachedLines",r),le=Ml(s,"labelLineHeight",r),Z=g/2,ce=this.getLabelJustification(e);switch(ce==="auto"||(T==="left"?ce==="left"?u+=-g:ce==="center"&&(u+=-Z):T==="center"?ce==="left"?u+=-Z:ce==="right"&&(u+=Z):T==="right"&&(ce==="center"?u+=Z:ce==="right"&&(u+=g))),S){case"top":h-=(j.length-1)*le;break;case"center":case"bottom":h-=(j.length-1)*le;break}for(var Q=0;Q<j.length;Q++)ne>0&&t.strokeText(j[Q],u,h),t.fillText(j[Q],u,h),h+=le}else ne>0&&t.strokeText(p,u,h),t.fillText(p,u,h);w!==0&&(t.rotate(-w),t.translate(-f,-d))}}};pg={};pg.drawNode=function(t,e,r){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,s=this,l,u,h=e._private,f=h.rscratch,d=e.position();if(!(!At(d.x)||!At(d.y))&&!(a&&!e.visible())){var p=a?e.effectiveOpacity():1,m=s.usePaths(),g,y=!1,x=e.padding();l=e.width()+2*x,u=e.height()+2*x;var v;r&&(v=r,t.translate(-v.x1,-v.y1));for(var b=e.pstyle("background-image"),T=b.value,S=new Array(T.length),w=new Array(T.length),E=0,_=0;_<T.length;_++){var A=T[_],D=S[_]=A!=null&&A!=="none";if(D){var O=e.cy().style().getIndexedStyle(e,"background-image-crossorigin","value",_);E++,w[_]=s.getCachedImage(A,O,function(){h.backgroundTimestamp=Date.now(),e.emitAndNotify("background")})}}var R=e.pstyle("background-blacken").value,k=e.pstyle("border-width").pfValue,L=e.pstyle("background-opacity").value*p,C=e.pstyle("border-color").value,I=e.pstyle("border-style").value,M=e.pstyle("border-join").value,P=e.pstyle("border-cap").value,B=e.pstyle("border-position").value,F=e.pstyle("border-dash-pattern").pfValue,G=e.pstyle("border-dash-offset").pfValue,$=e.pstyle("border-opacity").value*p,U=e.pstyle("outline-width").pfValue,K=e.pstyle("outline-color").value,ne=e.pstyle("outline-style").value,j=e.pstyle("outline-opacity").value*p,le=e.pstyle("outline-offset").value,Z=e.pstyle("corner-radius").value;Z!=="auto"&&(Z=e.pstyle("corner-radius").pfValue);var ce=o(function(){var oe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:L;s.eleFillStyle(t,e,oe)},"setupShapeColor"),Q=o(function(){var oe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:$;s.colorStrokeStyle(t,C[0],C[1],C[2],oe)},"setupBorderColor"),ee=o(function(){var oe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:j;s.colorStrokeStyle(t,K[0],K[1],K[2],oe)},"setupOutlineColor"),te=o(function(oe,V,xe,Y){var de=s.nodePathCache=s.nodePathCache||[],me=Woe(xe==="polygon"?xe+","+Y.join(","):xe,""+V,""+oe,""+Z),Be=de[me],_e,Te=!1;return Be!=null?(_e=Be,Te=!0,f.pathCache=_e):(_e=new Path2D,de[me]=f.pathCache=_e),{path:_e,cacheHit:Te}},"getPath"),re=e.pstyle("shape").strValue,he=e.pstyle("shape-polygon-points").pfValue;if(m){t.translate(d.x,d.y);var J=te(l,u,re,he);g=J.path,y=J.cacheHit}var ye=o(function(){if(!y){var oe=d;m&&(oe={x:0,y:0}),s.nodeShapes[s.getNodeShape(e)].draw(g||t,oe.x,oe.y,l,u,Z,f)}m?t.fill(g):t.fill()},"drawShape"),se=o(function(){for(var oe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:p,V=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,xe=h.backgrounding,Y=0,de=0;de<w.length;de++){var me=e.cy().style().getIndexedStyle(e,"background-image-containment","value",de);if(V&&me==="over"||!V&&me==="inside"){Y++;continue}S[de]&&w[de].complete&&!w[de].error&&(Y++,s.drawInscribedImage(t,w[de],e,de,oe))}h.backgrounding=Y!==E,xe!==h.backgrounding&&e.updateStyle(!1)},"drawImages"),Se=o(function(){var oe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,V=arguments.length>1&&arguments[1]!==void 0?arguments[1]:p;s.hasPie(e)&&(s.drawPie(t,e,V),oe&&(m||s.nodeShapes[s.getNodeShape(e)].draw(t,d.x,d.y,l,u,Z,f)))},"drawPie"),W=o(function(){var oe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:p,V=(R>0?R:-R)*oe,xe=R>0?0:255;R!==0&&(s.colorFillStyle(t,xe,xe,xe,V),m?t.fill(g):t.fill())},"darken"),Oe=o(function(){if(k>0){if(t.lineWidth=k,t.lineCap=P,t.lineJoin=M,t.setLineDash)switch(I){case"dotted":t.setLineDash([1,1]);break;case"dashed":t.setLineDash(F),t.lineDashOffset=G;break;case"solid":case"double":t.setLineDash([]);break}if(B!=="center"){if(t.save(),t.lineWidth*=2,B==="inside")m?t.clip(g):t.clip();else{var oe=new Path2D;oe.rect(-l/2-k,-u/2-k,l+2*k,u+2*k),oe.addPath(g),t.clip(oe,"evenodd")}m?t.stroke(g):t.stroke(),t.restore()}else m?t.stroke(g):t.stroke();if(I==="double"){t.lineWidth=k/3;var V=t.globalCompositeOperation;t.globalCompositeOperation="destination-out",m?t.stroke(g):t.stroke(),t.globalCompositeOperation=V}t.setLineDash&&t.setLineDash([])}},"drawBorder"),ve=o(function(){if(U>0){if(t.lineWidth=U,t.lineCap="butt",t.setLineDash)switch(ne){case"dotted":t.setLineDash([1,1]);break;case"dashed":t.setLineDash([4,2]);break;case"solid":case"double":t.setLineDash([]);break}var oe=d;m&&(oe={x:0,y:0});var V=s.getNodeShape(e),xe=k;B==="inside"&&(xe=0),B==="outside"&&(xe*=2);var Y=(l+xe+(U+le))/l,de=(u+xe+(U+le))/u,me=l*Y,Be=u*de,_e=s.nodeShapes[V].points,Te;if(m){var Ue=te(me,Be,V,_e);Te=Ue.path}if(V==="ellipse")s.drawEllipsePath(Te||t,oe.x,oe.y,me,Be);else if(["round-diamond","round-heptagon","round-hexagon","round-octagon","round-pentagon","round-polygon","round-triangle","round-tag"].includes(V)){var De=0,Qe=0,ot=0;V==="round-diamond"?De=(xe+le+U)*1.4:V==="round-heptagon"?(De=(xe+le+U)*1.075,ot=-(xe/2+le+U)/35):V==="round-hexagon"?De=(xe+le+U)*1.12:V==="round-pentagon"?(De=(xe+le+U)*1.13,ot=-(xe/2+le+U)/15):V==="round-tag"?(De=(xe+le+U)*1.12,Qe=(xe/2+U+le)*.07):V==="round-triangle"&&(De=(xe+le+U)*(Math.PI/2),ot=-(xe+le/2+U)/Math.PI),De!==0&&(Y=(l+De)/l,me=l*Y,["round-hexagon","round-tag"].includes(V)||(de=(u+De)/u,Be=u*de)),Z=Z==="auto"?rle(me,Be):Z;for(var Gt=me/2,Ze=Be/2,Ve=Z+(xe+U+le)/2,ht=new Array(_e.length/2),Ye=new Array(_e.length/2),ct=0;ct<_e.length/2;ct++)ht[ct]={x:oe.x+Qe+Gt*_e[ct*2],y:oe.y+ot+Ze*_e[ct*2+1]};var Yt,Tt,Mt,bt,ft=ht.length;for(Tt=ht[ft-1],Yt=0;Yt<ft;Yt++)Mt=ht[Yt%ft],bt=ht[(Yt+1)%ft],Ye[Yt]=aM(Tt,Mt,bt,Ve),Tt=Mt,Mt=bt;s.drawRoundPolygonPath(Te||t,oe.x+Qe,oe.y+ot,l*Y,u*de,_e,Ye)}else if(["roundrectangle","round-rectangle"].includes(V))Z=Z==="auto"?yp(me,Be):Z,s.drawRoundRectanglePath(Te||t,oe.x,oe.y,me,Be,Z+(xe+U+le)/2);else if(["cutrectangle","cut-rectangle"].includes(V))Z=Z==="auto"?YN():Z,s.drawCutRectanglePath(Te||t,oe.x,oe.y,me,Be,null,Z+(xe+U+le)/4);else if(["bottomroundrectangle","bottom-round-rectangle"].includes(V))Z=Z==="auto"?yp(me,Be):Z,s.drawBottomRoundRectanglePath(Te||t,oe.x,oe.y,me,Be,Z+(xe+U+le)/2);else if(V==="barrel")s.drawBarrelPath(Te||t,oe.x,oe.y,me,Be);else if(V.startsWith("polygon")||["rhomboid","right-rhomboid","round-tag","tag","vee"].includes(V)){var St=(xe+U+le)/l;_e=jk(Kk(_e,St)),s.drawPolygonPath(Te||t,oe.x,oe.y,l,u,_e)}else{var dt=(xe+U+le)/l;_e=jk(Kk(_e,-dt)),s.drawPolygonPath(Te||t,oe.x,oe.y,l,u,_e)}if(m?t.stroke(Te):t.stroke(),ne==="double"){t.lineWidth=xe/3;var vt=t.globalCompositeOperation;t.globalCompositeOperation="destination-out",m?t.stroke(Te):t.stroke(),t.globalCompositeOperation=vt}t.setLineDash&&t.setLineDash([])}},"drawOutline"),Pe=o(function(){i&&s.drawNodeOverlay(t,e,d,l,u)},"drawOverlay"),qe=o(function(){i&&s.drawNodeUnderlay(t,e,d,l,u)},"drawUnderlay"),Ge=o(function(){s.drawElementText(t,e,null,n)},"drawText"),Ne=e.pstyle("ghost").value==="yes";if(Ne){var Me=e.pstyle("ghost-offset-x").pfValue,be=e.pstyle("ghost-offset-y").pfValue,q=e.pstyle("ghost-opacity").value,fe=q*p;t.translate(Me,be),ee(),ve(),ce(q*L),ye(),se(fe,!0),Q(q*$),Oe(),Se(R!==0||k!==0),se(fe,!1),W(fe),t.translate(-Me,-be)}m&&t.translate(-d.x,-d.y),qe(),m&&t.translate(d.x,d.y),ee(),ve(),ce(),ye(),se(p,!0),Q(),Oe(),Se(R!==0||k!==0),se(p,!1),W(),m&&t.translate(-d.x,-d.y),Ge(),Pe(),r&&t.translate(v.x1,v.y1)}};sce=o(function(e){if(!["overlay","underlay"].includes(e))throw new Error("Invalid state");return function(r,n,i,a,s){var l=this;if(n.visible()){var u=n.pstyle("".concat(e,"-padding")).pfValue,h=n.pstyle("".concat(e,"-opacity")).value,f=n.pstyle("".concat(e,"-color")).value,d=n.pstyle("".concat(e,"-shape")).value,p=n.pstyle("".concat(e,"-corner-radius")).value;if(h>0){if(i=i||n.position(),a==null||s==null){var m=n.padding();a=n.width()+2*m,s=n.height()+2*m}l.colorFillStyle(r,f[0],f[1],f[2],h),l.nodeShapes[d].draw(r,i.x,i.y,a+u*2,s+u*2,p),r.fill()}}}},"drawNodeOverlayUnderlay");pg.drawNodeOverlay=sce("overlay");pg.drawNodeUnderlay=sce("underlay");pg.hasPie=function(t){return t=t[0],t._private.hasPie};pg.drawPie=function(t,e,r,n){e=e[0],n=n||e.position();var i=e.cy().style(),a=e.pstyle("pie-size"),s=n.x,l=n.y,u=e.width(),h=e.height(),f=Math.min(u,h)/2,d=0,p=this.usePaths();p&&(s=0,l=0),a.units==="%"?f=f*a.pfValue:a.pfValue!==void 0&&(f=a.pfValue/2);for(var m=1;m<=i.pieBackgroundN;m++){var g=e.pstyle("pie-"+m+"-background-size").value,y=e.pstyle("pie-"+m+"-background-color").value,x=e.pstyle("pie-"+m+"-background-opacity").value*r,v=g/100;v+d>1&&(v=1-d);var b=1.5*Math.PI+2*Math.PI*d,T=2*Math.PI*v,S=b+T;g===0||d>=1||d+v>1||(t.beginPath(),t.moveTo(s,l),t.arc(s,l,f,b,S),t.closePath(),this.colorFillStyle(t,y[0],y[1],y[2],x),t.fill(),d+=v)}};cs={},cHe=100;cs.getPixelRatio=function(){var t=this.data.contexts[0];if(this.forcedPixelRatio!=null)return this.forcedPixelRatio;var e=this.cy.window(),r=t.backingStorePixelRatio||t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return(e.devicePixelRatio||1)/r};cs.paintCache=function(t){for(var e=this.paintCaches=this.paintCaches||[],r=!0,n,i=0;i<e.length;i++)if(n=e[i],n.context===t){r=!1;break}return r&&(n={context:t},e.push(n)),n};cs.createGradientStyleFor=function(t,e,r,n,i){var a,s=this.usePaths(),l=r.pstyle(e+"-gradient-stop-colors").value,u=r.pstyle(e+"-gradient-stop-positions").pfValue;if(n==="radial-gradient")if(r.isEdge()){var h=r.sourceEndpoint(),f=r.targetEndpoint(),d=r.midpoint(),p=gp(h,d),m=gp(f,d);a=t.createRadialGradient(d.x,d.y,0,d.x,d.y,Math.max(p,m))}else{var g=s?{x:0,y:0}:r.position(),y=r.paddedWidth(),x=r.paddedHeight();a=t.createRadialGradient(g.x,g.y,0,g.x,g.y,Math.max(y,x))}else if(r.isEdge()){var v=r.sourceEndpoint(),b=r.targetEndpoint();a=t.createLinearGradient(v.x,v.y,b.x,b.y)}else{var T=s?{x:0,y:0}:r.position(),S=r.paddedWidth(),w=r.paddedHeight(),E=S/2,_=w/2,A=r.pstyle("background-gradient-direction").value;switch(A){case"to-bottom":a=t.createLinearGradient(T.x,T.y-_,T.x,T.y+_);break;case"to-top":a=t.createLinearGradient(T.x,T.y+_,T.x,T.y-_);break;case"to-left":a=t.createLinearGradient(T.x+E,T.y,T.x-E,T.y);break;case"to-right":a=t.createLinearGradient(T.x-E,T.y,T.x+E,T.y);break;case"to-bottom-right":case"to-right-bottom":a=t.createLinearGradient(T.x-E,T.y-_,T.x+E,T.y+_);break;case"to-top-right":case"to-right-top":a=t.createLinearGradient(T.x-E,T.y+_,T.x+E,T.y-_);break;case"to-bottom-left":case"to-left-bottom":a=t.createLinearGradient(T.x+E,T.y-_,T.x-E,T.y+_);break;case"to-top-left":case"to-left-top":a=t.createLinearGradient(T.x+E,T.y+_,T.x-E,T.y-_);break}}if(!a)return null;for(var D=u.length===l.length,O=l.length,R=0;R<O;R++)a.addColorStop(D?u[R]:R/(O-1),"rgba("+l[R][0]+","+l[R][1]+","+l[R][2]+","+i+")");return a};cs.gradientFillStyle=function(t,e,r,n){var i=this.createGradientStyleFor(t,"background",e,r,n);if(!i)return null;t.fillStyle=i};cs.colorFillStyle=function(t,e,r,n,i){t.fillStyle="rgba("+e+","+r+","+n+","+i+")"};cs.eleFillStyle=function(t,e,r){var n=e.pstyle("background-fill").value;if(n==="linear-gradient"||n==="radial-gradient")this.gradientFillStyle(t,e,n,r);else{var i=e.pstyle("background-color").value;this.colorFillStyle(t,i[0],i[1],i[2],r)}};cs.gradientStrokeStyle=function(t,e,r,n){var i=this.createGradientStyleFor(t,"line",e,r,n);if(!i)return null;t.strokeStyle=i};cs.colorStrokeStyle=function(t,e,r,n,i){t.strokeStyle="rgba("+e+","+r+","+n+","+i+")"};cs.eleStrokeStyle=function(t,e,r){var n=e.pstyle("line-fill").value;if(n==="linear-gradient"||n==="radial-gradient")this.gradientStrokeStyle(t,e,n,r);else{var i=e.pstyle("line-color").value;this.colorStrokeStyle(t,i[0],i[1],i[2],r)}};cs.matchCanvasSize=function(t){var e=this,r=e.data,n=e.findContainerClientCoords(),i=n[2],a=n[3],s=e.getPixelRatio(),l=e.motionBlurPxRatio;(t===e.data.bufferCanvases[e.MOTIONBLUR_BUFFER_NODE]||t===e.data.bufferCanvases[e.MOTIONBLUR_BUFFER_DRAG])&&(s=l);var u=i*s,h=a*s,f;if(!(u===e.canvasWidth&&h===e.canvasHeight)){e.fontCaches=null;var d=r.canvasContainer;d.style.width=i+"px",d.style.height=a+"px";for(var p=0;p<e.CANVAS_LAYERS;p++)f=r.canvases[p],f.width=u,f.height=h,f.style.width=i+"px",f.style.height=a+"px";for(var p=0;p<e.BUFFER_COUNT;p++)f=r.bufferCanvases[p],f.width=u,f.height=h,f.style.width=i+"px",f.style.height=a+"px";e.textureMult=1,s<=1&&(f=r.bufferCanvases[e.TEXTURE_BUFFER],e.textureMult=2,f.width=u*e.textureMult,f.height=h*e.textureMult),e.canvasWidth=u,e.canvasHeight=h,e.pixelRatio=s}};cs.renderTo=function(t,e,r,n){this.render({forcedContext:t,forcedZoom:e,forcedPan:r,drawAllLayers:!0,forcedPxRatio:n})};cs.clearCanvas=function(){var t=this,e=t.data;function r(n){n.clearRect(0,0,t.canvasWidth,t.canvasHeight)}o(r,"clear"),r(e.contexts[t.NODE]),r(e.contexts[t.DRAG])};cs.render=function(t){var e=this;t=t||joe();var r=e.cy,n=t.forcedContext,i=t.drawAllLayers,a=t.drawOnlyNodeLayer,s=t.forcedZoom,l=t.forcedPan,u=t.forcedPxRatio===void 0?this.getPixelRatio():t.forcedPxRatio,h=e.data,f=h.canvasNeedsRedraw,d=e.textureOnViewport&&!n&&(e.pinching||e.hoverData.dragging||e.swipePanning||e.data.wheelZooming),p=t.motionBlur!==void 0?t.motionBlur:e.motionBlur,m=e.motionBlurPxRatio,g=r.hasCompoundNodes(),y=e.hoverData.draggingEles,x=!!(e.hoverData.selecting||e.touchData.selecting);p=p&&!n&&e.motionBlurEnabled&&!x;var v=p;n||(e.prevPxRatio!==u&&(e.invalidateContainerClientCoordsCache(),e.matchCanvasSize(e.container),e.redrawHint("eles",!0),e.redrawHint("drag",!0)),e.prevPxRatio=u),!n&&e.motionBlurTimeout&&clearTimeout(e.motionBlurTimeout),p&&(e.mbFrames==null&&(e.mbFrames=0),e.mbFrames++,e.mbFrames<3&&(v=!1),e.mbFrames>e.minMbLowQualFrames&&(e.motionBlurPxRatio=e.mbPxRBlurry)),e.clearingMotionBlur&&(e.motionBlurPxRatio=1),e.textureDrawLastFrame&&!d&&(f[e.NODE]=!0,f[e.SELECT_BOX]=!0);var b=r.style(),T=r.zoom(),S=s!==void 0?s:T,w=r.pan(),E={x:w.x,y:w.y},_={zoom:T,pan:{x:w.x,y:w.y}},A=e.prevViewport,D=A===void 0||_.zoom!==A.zoom||_.pan.x!==A.pan.x||_.pan.y!==A.pan.y;!D&&!(y&&!g)&&(e.motionBlurPxRatio=1),l&&(E=l),S*=u,E.x*=u,E.y*=u;var O=e.getCachedZSortedEles();function R(Q,ee,te,re,he){var J=Q.globalCompositeOperation;Q.globalCompositeOperation="destination-out",e.colorFillStyle(Q,255,255,255,e.motionBlurTransparency),Q.fillRect(ee,te,re,he),Q.globalCompositeOperation=J}o(R,"mbclear");function k(Q,ee){var te,re,he,J;!e.clearingMotionBlur&&(Q===h.bufferContexts[e.MOTIONBLUR_BUFFER_NODE]||Q===h.bufferContexts[e.MOTIONBLUR_BUFFER_DRAG])?(te={x:w.x*m,y:w.y*m},re=T*m,he=e.canvasWidth*m,J=e.canvasHeight*m):(te=E,re=S,he=e.canvasWidth,J=e.canvasHeight),Q.setTransform(1,0,0,1,0,0),ee==="motionBlur"?R(Q,0,0,he,J):!n&&(ee===void 0||ee)&&Q.clearRect(0,0,he,J),i||(Q.translate(te.x,te.y),Q.scale(re,re)),l&&Q.translate(l.x,l.y),s&&Q.scale(s,s)}if(o(k,"setContextTransform"),d||(e.textureDrawLastFrame=!1),d){if(e.textureDrawLastFrame=!0,!e.textureCache){e.textureCache={},e.textureCache.bb=r.mutableElements().boundingBox(),e.textureCache.texture=e.data.bufferCanvases[e.TEXTURE_BUFFER];var L=e.data.bufferContexts[e.TEXTURE_BUFFER];L.setTransform(1,0,0,1,0,0),L.clearRect(0,0,e.canvasWidth*e.textureMult,e.canvasHeight*e.textureMult),e.render({forcedContext:L,drawOnlyNodeLayer:!0,forcedPxRatio:u*e.textureMult});var _=e.textureCache.viewport={zoom:r.zoom(),pan:r.pan(),width:e.canvasWidth,height:e.canvasHeight};_.mpan={x:(0-_.pan.x)/_.zoom,y:(0-_.pan.y)/_.zoom}}f[e.DRAG]=!1,f[e.NODE]=!1;var C=h.contexts[e.NODE],I=e.textureCache.texture,_=e.textureCache.viewport;C.setTransform(1,0,0,1,0,0),p?R(C,0,0,_.width,_.height):C.clearRect(0,0,_.width,_.height);var M=b.core("outside-texture-bg-color").value,P=b.core("outside-texture-bg-opacity").value;e.colorFillStyle(C,M[0],M[1],M[2],P),C.fillRect(0,0,_.width,_.height);var T=r.zoom();k(C,!1),C.clearRect(_.mpan.x,_.mpan.y,_.width/_.zoom/u,_.height/_.zoom/u),C.drawImage(I,_.mpan.x,_.mpan.y,_.width/_.zoom/u,_.height/_.zoom/u)}else e.textureOnViewport&&!n&&(e.textureCache=null);var B=r.extent(),F=e.pinching||e.hoverData.dragging||e.swipePanning||e.data.wheelZooming||e.hoverData.draggingEles||e.cy.animated(),G=e.hideEdgesOnViewport&&F,$=[];if($[e.NODE]=!f[e.NODE]&&p&&!e.clearedForMotionBlur[e.NODE]||e.clearingMotionBlur,$[e.NODE]&&(e.clearedForMotionBlur[e.NODE]=!0),$[e.DRAG]=!f[e.DRAG]&&p&&!e.clearedForMotionBlur[e.DRAG]||e.clearingMotionBlur,$[e.DRAG]&&(e.clearedForMotionBlur[e.DRAG]=!0),f[e.NODE]||i||a||$[e.NODE]){var U=p&&!$[e.NODE]&&m!==1,C=n||(U?e.data.bufferContexts[e.MOTIONBLUR_BUFFER_NODE]:h.contexts[e.NODE]),K=p&&!U?"motionBlur":void 0;k(C,K),G?e.drawCachedNodes(C,O.nondrag,u,B):e.drawLayeredElements(C,O.nondrag,u,B),e.debug&&e.drawDebugPoints(C,O.nondrag),!i&&!p&&(f[e.NODE]=!1)}if(!a&&(f[e.DRAG]||i||$[e.DRAG])){var U=p&&!$[e.DRAG]&&m!==1,C=n||(U?e.data.bufferContexts[e.MOTIONBLUR_BUFFER_DRAG]:h.contexts[e.DRAG]);k(C,p&&!U?"motionBlur":void 0),G?e.drawCachedNodes(C,O.drag,u,B):e.drawCachedElements(C,O.drag,u,B),e.debug&&e.drawDebugPoints(C,O.drag),!i&&!p&&(f[e.DRAG]=!1)}if(this.drawSelectionRectangle(t,k),p&&m!==1){var ne=h.contexts[e.NODE],j=e.data.bufferCanvases[e.MOTIONBLUR_BUFFER_NODE],le=h.contexts[e.DRAG],Z=e.data.bufferCanvases[e.MOTIONBLUR_BUFFER_DRAG],ce=o(function(ee,te,re){ee.setTransform(1,0,0,1,0,0),re||!v?ee.clearRect(0,0,e.canvasWidth,e.canvasHeight):R(ee,0,0,e.canvasWidth,e.canvasHeight);var he=m;ee.drawImage(te,0,0,e.canvasWidth*he,e.canvasHeight*he,0,0,e.canvasWidth,e.canvasHeight)},"drawMotionBlur");(f[e.NODE]||$[e.NODE])&&(ce(ne,j,$[e.NODE]),f[e.NODE]=!1),(f[e.DRAG]||$[e.DRAG])&&(ce(le,Z,$[e.DRAG]),f[e.DRAG]=!1)}e.prevViewport=_,e.clearingMotionBlur&&(e.clearingMotionBlur=!1,e.motionBlurCleared=!0,e.motionBlur=!0),p&&(e.motionBlurTimeout=setTimeout(function(){e.motionBlurTimeout=null,e.clearedForMotionBlur[e.NODE]=!1,e.clearedForMotionBlur[e.DRAG]=!1,e.motionBlur=!1,e.clearingMotionBlur=!d,e.mbFrames=0,f[e.NODE]=!0,f[e.DRAG]=!0,e.redraw()},cHe)),n||r.emit("render")};cs.drawSelectionRectangle=function(t,e){var r=this,n=r.cy,i=r.data,a=n.style(),s=t.drawOnlyNodeLayer,l=t.drawAllLayers,u=i.canvasNeedsRedraw,h=t.forcedContext;if(r.showFps||!s&&u[r.SELECT_BOX]&&!l){var f=h||i.contexts[r.SELECT_BOX];if(e(f),r.selection[4]==1&&(r.hoverData.selecting||r.touchData.selecting)){var d=r.cy.zoom(),p=a.core("selection-box-border-width").value/d;f.lineWidth=p,f.fillStyle="rgba("+a.core("selection-box-color").value[0]+","+a.core("selection-box-color").value[1]+","+a.core("selection-box-color").value[2]+","+a.core("selection-box-opacity").value+")",f.fillRect(r.selection[0],r.selection[1],r.selection[2]-r.selection[0],r.selection[3]-r.selection[1]),p>0&&(f.strokeStyle="rgba("+a.core("selection-box-border-color").value[0]+","+a.core("selection-box-border-color").value[1]+","+a.core("selection-box-border-color").value[2]+","+a.core("selection-box-opacity").value+")",f.strokeRect(r.selection[0],r.selection[1],r.selection[2]-r.selection[0],r.selection[3]-r.selection[1]))}if(i.bgActivePosistion&&!r.hoverData.selecting){var d=r.cy.zoom(),m=i.bgActivePosistion;f.fillStyle="rgba("+a.core("active-bg-color").value[0]+","+a.core("active-bg-color").value[1]+","+a.core("active-bg-color").value[2]+","+a.core("active-bg-opacity").value+")",f.beginPath(),f.arc(m.x,m.y,a.core("active-bg-size").pfValue/d,0,2*Math.PI),f.fill()}var g=r.lastRedrawTime;if(r.showFps&&g){g=Math.round(g);var y=Math.round(1e3/g),x="1 frame = "+g+" ms = "+y+" fps";if(f.setTransform(1,0,0,1,0,0),f.fillStyle="rgba(255, 0, 0, 0.75)",f.strokeStyle="rgba(255, 0, 0, 0.75)",f.font="30px Arial",!X2){var v=f.measureText(x);X2=v.actualBoundingBoxAscent}f.fillText(x,0,X2);var b=60;f.strokeRect(0,X2+10,250,20),f.fillRect(0,X2+10,250*Math.min(y/b,1),20)}l||(u[r.SELECT_BOX]=!1)}};o(woe,"compileShader");o(uHe,"createProgram");o(hHe,"createTextureCanvas");o(lM,"getEffectivePanZoom");o(xN,"modelToRenderedPosition");o(Ok,"toWebGLColor");o(Pk,"indexToVec4");o(fHe,"vec4ToIndex");o(dHe,"createTexture");o(oce,"getTypeInfo");o(lce,"createTypedArray");o(pHe,"createTypedArrayView");o(mHe,"createBufferStaticDraw");o(co,"createBufferDynamicDraw");o(gHe,"createPickingFrameBuffer");koe=typeof Float32Array<"u"?Float32Array:Array;Math.hypot||(Math.hypot=function(){for(var t=0,e=arguments.length;e--;)t+=arguments[e]*arguments[e];return Math.sqrt(t)});o(nx,"create");o(cce,"identity");o(yHe,"multiply");o(nE,"translate");o(uce,"rotate");o(cM,"scale");o(vHe,"projection");ix={SCREEN:{name:"screen",screen:!0},PICKING:{name:"picking",picking:!0}},j2=na({getKey:null,drawElement:null,getBoundingBox:null,getRotation:null,getRotationPoint:null,getRotationOffset:null,isVisible:null,getPadding:null}),xHe=function(){function t(e,r){kf(this,t),this.debugID=Math.floor(Math.random()*1e4),this.r=e,this.atlasSize=r.webglTexSize,this.rows=r.webglTexRows,this.enableWrapping=r.enableWrapping,this.texHeight=Math.floor(this.atlasSize/this.rows),this.maxTexWidth=this.atlasSize,this.texture=null,this.canvas=null,this.needsBuffer=!0,this.freePointer={x:0,row:0},this.keyToLocation=new Map,this.canvas=r.createTextureCanvas(e,this.atlasSize,this.atlasSize),this.scratch=r.createTextureCanvas(e,this.atlasSize,this.texHeight,"scratch")}return o(t,"Atlas"),Ef(t,[{key:"getKeys",value:o(function(){return new Set(this.keyToLocation.keys())},"getKeys")},{key:"getScale",value:o(function(r){var n=r.w,i=r.h,a=this.texHeight,s=this.maxTexWidth,l=a/i,u=n*l,h=i*l;return u>s&&(l=s/n,u=n*l,h=i*l),{scale:l,texW:u,texH:h}},"getScale")},{key:"draw",value:o(function(r,n,i){var a=this,s=this.atlasSize,l=this.rows,u=this.texHeight,h=this.getScale(n),f=h.scale,d=h.texW,p=h.texH,m=[null,null],g=o(function(T,S){if(i&&S){var w=S.context,E=T.x,_=T.row,A=E,D=u*_;w.save(),w.translate(A,D),w.scale(f,f),i(w,n),w.restore()}},"drawAt"),y=o(function(){g(a.freePointer,a.canvas),m[0]={x:a.freePointer.x,y:a.freePointer.row*u,w:d,h:p},m[1]={x:a.freePointer.x+d,y:a.freePointer.row*u,w:0,h:p},a.freePointer.x+=d,a.freePointer.x==s&&(a.freePointer.x=0,a.freePointer.row++)},"drawNormal"),x=o(function(){var T=a.scratch,S=a.canvas;T.clear(),g({x:0,row:0},T);var w=s-a.freePointer.x,E=d-w,_=u;{var A=a.freePointer.x,D=a.freePointer.row*u,O=w;S.context.drawImage(T,0,0,O,_,A,D,O,_),m[0]={x:A,y:D,w:O,h:p}}{var R=w,k=(a.freePointer.row+1)*u,L=E;S&&S.context.drawImage(T,R,0,L,_,0,k,L,_),m[1]={x:0,y:k,w:L,h:p}}a.freePointer.x=E,a.freePointer.row++},"drawWrapped"),v=o(function(){a.freePointer.x=0,a.freePointer.row++},"moveToStartOfNextRow");if(this.freePointer.x+d<=s)y();else{if(this.freePointer.row>=l-1)return!1;this.freePointer.x===s?(v(),y()):this.enableWrapping?x():(v(),y())}return this.keyToLocation.set(r,m),this.needsBuffer=!0,m},"draw")},{key:"getOffsets",value:o(function(r){return this.keyToLocation.get(r)},"getOffsets")},{key:"isEmpty",value:o(function(){return this.freePointer.x===0&&this.freePointer.row===0},"isEmpty")},{key:"canFit",value:o(function(r){var n=this.atlasSize,i=this.rows,a=this.getScale(r),s=a.texW;return this.freePointer.x+s>n?this.freePointer.row<i-1:!0},"canFit")},{key:"bufferIfNeeded",value:o(function(r){this.texture||(this.texture=dHe(r,this.debugID)),this.needsBuffer&&(this.texture.buffer(this.canvas),this.needsBuffer=!1)},"bufferIfNeeded")},{key:"dispose",value:o(function(){this.texture&&(this.texture.deleteTexture(),this.texture=null,this.needsBuffer=!0)},"dispose")}]),t}(),bHe=function(){function t(e,r){kf(this,t),this.r=e,this.opts=r,this.keyToIds=new Map,this.idToKey=new Map,this.atlases=[],this.styleKeyToAtlas=new Map,this.styleKeyNeedsRedraw=new Set,this.forceGC=!1}return o(t,"AtlasCollection"),Ef(t,[{key:"getKeys",value:o(function(){return new Set(this.styleKeyToAtlas.keys())},"getKeys")},{key:"getIdsFor",value:o(function(r){var n=this.keyToIds.get(r);return n||(n=new Set,this.keyToIds.set(r,n)),n},"getIdsFor")},{key:"_createAtlas",value:o(function(){var r=this.r,n=this.opts;return new xHe(r,n)},"_createAtlas")},{key:"_getScratchCanvas",value:o(function(){if(!this.scratch){var r=this.r,n=this.opts,i=n.webglTexSize,a=Math.floor(i/n.webglTexRows);this.scratch=n.createTextureCanvas(r,i,a,"scratch")}return this.scratch},"_getScratchCanvas")},{key:"draw",value:o(function(r,n,i,a){if(this.styleKeyNeedsRedraw.has(n)){this.styleKeyNeedsRedraw.delete(n),this.deleteKey(r,n);var s=this.styleKeyToAtlas.get(n);s&&(s.forceGC=!0),this.styleKeyToAtlas.delete(n)}var l=this.styleKeyToAtlas.get(n);return l||(l=this.atlases[this.atlases.length-1],(!l||!l.canFit(i))&&(l=this._createAtlas(),this.atlases.push(l)),l.draw(n,i,a),this.styleKeyToAtlas.set(n,l),this.getIdsFor(n).add(r),this.idToKey.set(r,n)),l},"draw")},{key:"getAtlas",value:o(function(r){return this.styleKeyToAtlas.get(r)},"getAtlas")},{key:"hasAtlas",value:o(function(r){return this.styleKeyToAtlas.has(r)},"hasAtlas")},{key:"deleteKey",value:o(function(r,n){this.idToKey.delete(r),this.getIdsFor(n).delete(r)},"deleteKey")},{key:"checkKeyIsInvalid",value:o(function(r,n){if(!this.idToKey.has(r))return!1;var i=this.idToKey.get(r);return i!=n?(this.deleteKey(r,i),!0):!1},"checkKeyIsInvalid")},{key:"_getKeysToCollect",value:o(function(){var r=new Set,n=uo(this.styleKeyToAtlas.keys()),i;try{for(n.s();!(i=n.n()).done;){var a=i.value;this.getIdsFor(a).size==0&&r.add(a)}}catch(s){n.e(s)}finally{n.f()}return r},"_getKeysToCollect")},{key:"gc",value:o(function(){var r=this,n=this.atlases.some(function(p){return p.forceGC}),i=this._getKeysToCollect();if(i.size===0&&!n){console.log("nothing to garbage collect");return}var a=[],s=new Map,l=null,u=uo(this.atlases),h;try{var f=o(function(){var m=h.value,g=m.getKeys(),y=THe(i,g);if(y.size===0&&!m.forceGC)return a.push(m),g.forEach(function(_){return s.set(_,m)}),"continue";l||(l=r._createAtlas(),a.push(l));var x=uo(g),v;try{for(x.s();!(v=x.n()).done;){var b=v.value;if(!y.has(b)){var T=m.getOffsets(b),S=Di(T,2),w=S[0],E=S[1];l.canFit({w:w.w+E.w,h:w.h})||(l=r._createAtlas(),a.push(l)),r._copyTextureToNewAtlas(b,m,l),s.set(b,l)}}}catch(_){x.e(_)}finally{x.f()}},"_loop");for(u.s();!(h=u.n()).done;)var d=f()}catch(p){u.e(p)}finally{u.f()}this.atlases=a,this.styleKeyToAtlas=s},"gc")},{key:"_copyTextureToNewAtlas",value:o(function(r,n,i){var a=n.getOffsets(r),s=Di(a,2),l=s[0],u=s[1];if(u.w===0)i.draw(r,l,function(p){p.drawImage(n.canvas,l.x,l.y,l.w,l.h,0,0,l.w,l.h)});else{var h=this._getScratchCanvas();h.clear(),h.context.drawImage(n.canvas,l.x,l.y,l.w,l.h,0,0,l.w,l.h),h.context.drawImage(n.canvas,u.x,u.y,u.w,u.h,l.w,0,u.w,u.h);var f=l.w+u.w,d=l.h;i.draw(r,{w:f,h:d},function(p){p.drawImage(h,0,0,f,d,0,0,f,d)})}},"_copyTextureToNewAtlas")},{key:"getCounts",value:o(function(){return{keyCount:this.styleKeyToAtlas.size,atlasCount:new Set(this.styleKeyToAtlas.values()).size}},"getCounts")}]),t}();o(THe,"intersection");wHe=function(){function t(e,r){kf(this,t),this.r=e;var n=r;this.globalOptions=n,this.maxAtlases=n.webglTexPerBatch,this.atlasSize=n.webglTexSize,this.renderTypes=new Map,this.maxAtlasesPerBatch=r.webglTexPerBatch,this.batchAtlases=[],this._cacheScratchCanvas(n)}return o(t,"AtlasManager"),Ef(t,[{key:"_cacheScratchCanvas",value:o(function(r){var n=-1,i=-1,a=null,s=r.createTextureCanvas;r.createTextureCanvas=function(l,u,h,f){return f?((!a||u!=n||h!=i)&&(n=u,i=h,a=s(l,u,h)),a):s(l,u,h)}},"_cacheScratchCanvas")},{key:"addRenderType",value:o(function(r,n){var i=new bHe(this.r,this.globalOptions),a=n;this.renderTypes.set(r,ir({type:r,atlasCollection:i},a))},"addRenderType")},{key:"getRenderTypes",value:o(function(){return Roe(this.renderTypes.values())},"getRenderTypes")},{key:"getRenderTypeOpts",value:o(function(r){return this.renderTypes.get(r)},"getRenderTypeOpts")},{key:"invalidate",value:o(function(r){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=n.forceRedraw,a=i===void 0?!1:i,s=n.filterEle,l=s===void 0?function(){return!0}:s,u=n.filterType,h=u===void 0?function(){return!0}:u,f=!1,d=uo(r),p;try{for(d.s();!(p=d.n()).done;){var m=p.value;if(l(m)){var g=m.id(),y=uo(this.getRenderTypes()),x;try{for(y.s();!(x=y.n()).done;){var v=x.value;if(h(v.type)){var b=v.getKey(m);a?(v.atlasCollection.deleteKey(g,b),v.atlasCollection.styleKeyNeedsRedraw.add(b),f=!0):f|=v.atlasCollection.checkKeyIsInvalid(g,b)}}}catch(T){y.e(T)}finally{y.f()}}}}catch(T){d.e(T)}finally{d.f()}return f},"invalidate")},{key:"gc",value:o(function(){var r=uo(this.getRenderTypes()),n;try{for(r.s();!(n=r.n()).done;){var i=n.value;i.atlasCollection.gc()}}catch(a){r.e(a)}finally{r.f()}},"gc")},{key:"isRenderable",value:o(function(r,n){var i=this.getRenderTypeOpts(n);return i&&i.isVisible(r)},"isRenderable")},{key:"startBatch",value:o(function(){this.batchAtlases=[]},"startBatch")},{key:"getAtlasCount",value:o(function(){return this.batchAtlases.length},"getAtlasCount")},{key:"getAtlases",value:o(function(){return this.batchAtlases},"getAtlases")},{key:"getOrCreateAtlas",value:o(function(r,n,i){var a=this.renderTypes.get(i),s=a.getKey(r),l=r.id();return a.atlasCollection.draw(l,s,n,function(u){a.drawElement(u,r,n,!0,!0)})},"getOrCreateAtlas")},{key:"getAtlasIndexForBatch",value:o(function(r){var n=this.batchAtlases.indexOf(r);if(n<0){if(this.batchAtlases.length===this.maxAtlasesPerBatch)return;this.batchAtlases.push(r),n=this.batchAtlases.length-1}return n},"getAtlasIndexForBatch")},{key:"getIndexArray",value:o(function(){return Array.from({length:this.maxAtlases},function(r,n){return n})},"getIndexArray")},{key:"getAtlasInfo",value:o(function(r,n){var i=this.renderTypes.get(n),a=i.getBoundingBox(r),s=this.getOrCreateAtlas(r,a,n),l=this.getAtlasIndexForBatch(s);if(l!==void 0){var u=i.getKey(r),h=s.getOffsets(u),f=Di(h,2),d=f[0],p=f[1];return{atlasID:l,tex:d,tex1:d,tex2:p,bb:a,type:n,styleKey:u}}},"getAtlasInfo")},{key:"canAddToCurrentBatch",value:o(function(r,n){if(this.batchAtlases.length===this.maxAtlasesPerBatch){var i=this.renderTypes.get(n),a=i.getKey(r),s=i.atlasCollection.getAtlas(a);return s&&this.batchAtlases.includes(s)}return!0},"canAddToCurrentBatch")},{key:"setTransformMatrix",value:o(function(r,n,i){var a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,s=n.bb,l=n.type,u=n.tex1,h=n.tex2,f=this.getRenderTypeOpts(l),d=f.getPadding?f.getPadding(i):0,p=u.w/(u.w+h.w);a||(p=1-p);var m=this.getAdjustedBB(s,d,a,p),g,y;cce(r);var x=f.getRotation?f.getRotation(i):0;if(x!==0){var v=f.getRotationPoint(i),b=v.x,T=v.y;nE(r,r,[b,T]),uce(r,r,x);var S=f.getRotationOffset(i);g=S.x+m.xOffset,y=S.y}else g=m.x1,y=m.y1;nE(r,r,[g,y]),cM(r,r,[m.w,m.h])},"setTransformMatrix")},{key:"getTransformMatrix",value:o(function(r,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,a=nx();return this.setTransformMatrix(a,r,n,i),a},"getTransformMatrix")},{key:"getAdjustedBB",value:o(function(r,n,i,a){var s=r.x1,l=r.y1,u=r.w,h=r.h;n&&(s-=n,l-=n,u+=2*n,h+=2*n);var f=0,d=u*a;return i&&a<1?u=d:!i&&a<1&&(f=u-d,s+=f,u=d),{x1:s,y1:l,w:u,h,xOffset:f}},"getAdjustedBB")},{key:"getDebugInfo",value:o(function(){var r=[],n=uo(this.renderTypes),i;try{for(n.s();!(i=n.n()).done;){var a=Di(i.value,2),s=a[0],l=a[1],u=l.atlasCollection.getCounts(),h=u.keyCount,f=u.atlasCount;r.push({type:s,keyCount:h,atlasCount:f})}}catch(d){n.e(d)}finally{n.f()}return r},"getDebugInfo")}]),t}(),bN=0,Eoe=1,Soe=2,TN=3,kHe=function(){function t(e,r,n){kf(this,t),this.r=e,this.gl=r,this.maxInstances=n.webglBatchSize,this.maxAtlases=n.webglTexPerBatch,this.atlasSize=n.webglTexSize,this.bgColor=n.bgColor,n.enableWrapping=!0,n.createTextureCanvas=hHe,this.atlasManager=new wHe(e,n),this.program=this.createShaderProgram(ix.SCREEN),this.pickingProgram=this.createShaderProgram(ix.PICKING),this.vao=this.createVAO(),this.debugInfo=[]}return o(t,"ElementDrawingWebGL"),Ef(t,[{key:"addTextureRenderType",value:o(function(r,n){this.atlasManager.addRenderType(r,n)},"addTextureRenderType")},{key:"invalidate",value:o(function(r){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=n.type,a=this.atlasManager;return i?a.invalidate(r,{filterType:o(function(l){return l===i},"filterType"),forceRedraw:!0}):a.invalidate(r)},"invalidate")},{key:"gc",value:o(function(){this.atlasManager.gc()},"gc")},{key:"createShaderProgram",value:o(function(r){var n=this.gl,i=`#version 300 es
|
||
precision highp float;
|
||
|
||
uniform mat3 uPanZoomMatrix;
|
||
uniform int uAtlasSize;
|
||
|
||
// instanced
|
||
in vec2 aPosition;
|
||
|
||
// what are we rendering?
|
||
in int aVertType;
|
||
|
||
// for picking
|
||
in vec4 aIndex;
|
||
|
||
// For textures
|
||
in int aAtlasId; // which shader unit/atlas to use
|
||
in vec4 aTex1; // x/y/w/h of texture in atlas
|
||
in vec4 aTex2;
|
||
|
||
// for any transforms that are needed
|
||
in vec4 aScaleRotate1; // vectors use fewer attributes than matrices
|
||
in vec2 aTranslate1;
|
||
in vec4 aScaleRotate2;
|
||
in vec2 aTranslate2;
|
||
|
||
// for edges
|
||
in vec4 aPointAPointB;
|
||
in vec4 aPointCPointD;
|
||
in float aLineWidth;
|
||
in vec4 aEdgeColor;
|
||
|
||
out vec2 vTexCoord;
|
||
out vec4 vEdgeColor;
|
||
flat out int vAtlasId;
|
||
flat out vec4 vIndex;
|
||
flat out int vVertType;
|
||
|
||
void main(void) {
|
||
int vid = gl_VertexID;
|
||
vec2 position = aPosition;
|
||
|
||
if(aVertType == `.concat(bN,`) {
|
||
float texX;
|
||
float texY;
|
||
float texW;
|
||
float texH;
|
||
mat3 texMatrix;
|
||
|
||
int vid = gl_VertexID;
|
||
if(vid <= 5) {
|
||
texX = aTex1.x;
|
||
texY = aTex1.y;
|
||
texW = aTex1.z;
|
||
texH = aTex1.w;
|
||
texMatrix = mat3(
|
||
vec3(aScaleRotate1.xy, 0.0),
|
||
vec3(aScaleRotate2.zw, 0.0),
|
||
vec3(aTranslate1, 1.0)
|
||
);
|
||
} else {
|
||
texX = aTex2.x;
|
||
texY = aTex2.y;
|
||
texW = aTex2.z;
|
||
texH = aTex2.w;
|
||
texMatrix = mat3(
|
||
vec3(aScaleRotate2.xy, 0.0),
|
||
vec3(aScaleRotate2.zw, 0.0),
|
||
vec3(aTranslate2, 1.0)
|
||
);
|
||
}
|
||
|
||
if(vid == 1 || vid == 2 || vid == 4 || vid == 7 || vid == 8 || vid == 10) {
|
||
texX += texW;
|
||
}
|
||
if(vid == 2 || vid == 4 || vid == 5 || vid == 8 || vid == 10 || vid == 11) {
|
||
texY += texH;
|
||
}
|
||
|
||
float d = float(uAtlasSize);
|
||
vTexCoord = vec2(texX / d, texY / d); // tex coords must be between 0 and 1
|
||
|
||
gl_Position = vec4(uPanZoomMatrix * texMatrix * vec3(position, 1.0), 1.0);
|
||
}
|
||
else if(aVertType == `).concat(Eoe,` && vid < 6) {
|
||
vec2 source = aPointAPointB.xy;
|
||
vec2 target = aPointAPointB.zw;
|
||
|
||
// adjust the geometry so that the line is centered on the edge
|
||
position.y = position.y - 0.5;
|
||
|
||
vec2 xBasis = target - source;
|
||
vec2 yBasis = normalize(vec2(-xBasis.y, xBasis.x));
|
||
vec2 point = source + xBasis * position.x + yBasis * aLineWidth * position.y;
|
||
|
||
gl_Position = vec4(uPanZoomMatrix * vec3(point, 1.0), 1.0);
|
||
vEdgeColor = aEdgeColor;
|
||
}
|
||
else if(aVertType == `).concat(Soe,` && vid < 6) {
|
||
vec2 pointA = aPointAPointB.xy;
|
||
vec2 pointB = aPointAPointB.zw;
|
||
vec2 pointC = aPointCPointD.xy;
|
||
vec2 pointD = aPointCPointD.zw;
|
||
|
||
// adjust the geometry so that the line is centered on the edge
|
||
position.y = position.y - 0.5;
|
||
|
||
vec2 p0 = pointA;
|
||
vec2 p1 = pointB;
|
||
vec2 p2 = pointC;
|
||
vec2 pos = position;
|
||
if(position.x == 1.0) {
|
||
p0 = pointD;
|
||
p1 = pointC;
|
||
p2 = pointB;
|
||
pos = vec2(0.0, -position.y);
|
||
}
|
||
|
||
vec2 p01 = p1 - p0;
|
||
vec2 p12 = p2 - p1;
|
||
vec2 p21 = p1 - p2;
|
||
|
||
// Find the normal vector.
|
||
vec2 tangent = normalize(normalize(p12) + normalize(p01));
|
||
vec2 normal = vec2(-tangent.y, tangent.x);
|
||
|
||
// Find the vector perpendicular to p0 -> p1.
|
||
vec2 p01Norm = normalize(vec2(-p01.y, p01.x));
|
||
|
||
// Determine the bend direction.
|
||
float sigma = sign(dot(p01 + p21, normal));
|
||
float width = aLineWidth;
|
||
|
||
if(sign(pos.y) == -sigma) {
|
||
// This is an intersecting vertex. Adjust the position so that there's no overlap.
|
||
vec2 point = 0.5 * width * normal * -sigma / dot(normal, p01Norm);
|
||
gl_Position = vec4(uPanZoomMatrix * vec3(p1 + point, 1.0), 1.0);
|
||
} else {
|
||
// This is a non-intersecting vertex. Treat it like a mitre join.
|
||
vec2 point = 0.5 * width * normal * sigma * dot(normal, p01Norm);
|
||
gl_Position = vec4(uPanZoomMatrix * vec3(p1 + point, 1.0), 1.0);
|
||
}
|
||
|
||
vEdgeColor = aEdgeColor;
|
||
}
|
||
else if(aVertType == `).concat(TN,` && vid < 3) {
|
||
// massage the first triangle into an edge arrow
|
||
if(vid == 0)
|
||
position = vec2(-0.15, -0.3);
|
||
if(vid == 1)
|
||
position = vec2( 0.0, 0.0);
|
||
if(vid == 2)
|
||
position = vec2( 0.15, -0.3);
|
||
|
||
mat3 transform = mat3(
|
||
vec3(aScaleRotate1.xy, 0.0),
|
||
vec3(aScaleRotate1.zw, 0.0),
|
||
vec3(aTranslate1, 1.0)
|
||
);
|
||
gl_Position = vec4(uPanZoomMatrix * transform * vec3(position, 1.0), 1.0);
|
||
vEdgeColor = aEdgeColor;
|
||
} else {
|
||
gl_Position = vec4(2.0, 0.0, 0.0, 1.0); // discard vertex by putting it outside webgl clip space
|
||
}
|
||
|
||
vAtlasId = aAtlasId;
|
||
vIndex = aIndex;
|
||
vVertType = aVertType;
|
||
}
|
||
`),a=this.atlasManager.getIndexArray(),s=`#version 300 es
|
||
precision highp float;
|
||
|
||
// define texture unit for each node in the batch
|
||
`.concat(a.map(function(h){return"uniform sampler2D uTexture".concat(h,";")}).join(`
|
||
`),`
|
||
|
||
uniform vec4 uBGColor;
|
||
|
||
in vec2 vTexCoord;
|
||
in vec4 vEdgeColor;
|
||
flat in int vAtlasId;
|
||
flat in vec4 vIndex;
|
||
flat in int vVertType;
|
||
|
||
out vec4 outColor;
|
||
|
||
void main(void) {
|
||
if(vVertType == `).concat(bN,`) {
|
||
`).concat(a.map(function(h){return"if(vAtlasId == ".concat(h,") outColor = texture(uTexture").concat(h,", vTexCoord);")}).join(`
|
||
else `),`
|
||
} else if(vVertType == `).concat(TN,`) {
|
||
// blend arrow color with background (using premultiplied alpha)
|
||
outColor.rgb = vEdgeColor.rgb + (uBGColor.rgb * (1.0 - vEdgeColor.a));
|
||
outColor.a = 1.0; // make opaque, masks out line under arrow
|
||
} else {
|
||
outColor = vEdgeColor;
|
||
}
|
||
|
||
`).concat(r.picking?`if(outColor.a == 0.0) discard;
|
||
else outColor = vIndex;`:"",`
|
||
}
|
||
`),l=uHe(n,i,s);l.aPosition=n.getAttribLocation(l,"aPosition"),l.aIndex=n.getAttribLocation(l,"aIndex"),l.aVertType=n.getAttribLocation(l,"aVertType"),l.aAtlasId=n.getAttribLocation(l,"aAtlasId"),l.aTex1=n.getAttribLocation(l,"aTex1"),l.aTex2=n.getAttribLocation(l,"aTex2"),l.aScaleRotate1=n.getAttribLocation(l,"aScaleRotate1"),l.aTranslate1=n.getAttribLocation(l,"aTranslate1"),l.aScaleRotate2=n.getAttribLocation(l,"aScaleRotate2"),l.aTranslate2=n.getAttribLocation(l,"aTranslate2"),l.aPointAPointB=n.getAttribLocation(l,"aPointAPointB"),l.aPointCPointD=n.getAttribLocation(l,"aPointCPointD"),l.aLineWidth=n.getAttribLocation(l,"aLineWidth"),l.aEdgeColor=n.getAttribLocation(l,"aEdgeColor"),l.uPanZoomMatrix=n.getUniformLocation(l,"uPanZoomMatrix"),l.uAtlasSize=n.getUniformLocation(l,"uAtlasSize"),l.uBGColor=n.getUniformLocation(l,"uBGColor"),l.uTextures=[];for(var u=0;u<this.atlasManager.maxAtlases;u++)l.uTextures.push(n.getUniformLocation(l,"uTexture".concat(u)));return l},"createShaderProgram")},{key:"createVAO",value:o(function(){var r=[0,0,1,0,1,1,0,0,1,1,0,1],n=[].concat(r,r);this.vertexCount=n.length/2;var i=this.maxInstances,a=this.gl,s=this.program,l=a.createVertexArray();return a.bindVertexArray(l),mHe(a,"vec2",s.aPosition,n),this.indexBuffer=co(a,i,"vec4",s.aIndex),this.vertTypeBuffer=co(a,i,"int",s.aVertType),this.atlasIdBuffer=co(a,i,"int",s.aAtlasId),this.tex1Buffer=co(a,i,"vec4",s.aTex1),this.tex2Buffer=co(a,i,"vec4",s.aTex2),this.scaleRotate1Buffer=co(a,i,"vec4",s.aScaleRotate1),this.translate1Buffer=co(a,i,"vec2",s.aTranslate1),this.scaleRotate2Buffer=co(a,i,"vec4",s.aScaleRotate2),this.translate2Buffer=co(a,i,"vec2",s.aTranslate2),this.pointAPointBBuffer=co(a,i,"vec4",s.aPointAPointB),this.pointCPointDBuffer=co(a,i,"vec4",s.aPointCPointD),this.lineWidthBuffer=co(a,i,"float",s.aLineWidth),this.edgeColorBuffer=co(a,i,"vec4",s.aEdgeColor),a.bindVertexArray(null),l},"createVAO")},{key:"buffers",get:o(function(){var r=this;return this._buffers||(this._buffers=Object.keys(this).filter(function(n){return n.endsWith("Buffer")}).map(function(n){return r[n]})),this._buffers},"get")},{key:"startFrame",value:o(function(r,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ix.SCREEN;this.panZoomMatrix=r,this.debugInfo=n,this.renderTarget=i,this.startBatch()},"startFrame")},{key:"startBatch",value:o(function(){this.instanceCount=0,this.atlasManager.startBatch()},"startBatch")},{key:"endFrame",value:o(function(){this.endBatch()},"endFrame")},{key:"getTempMatrix",value:o(function(){return this.tempMatrix=this.tempMatrix||nx()},"getTempMatrix")},{key:"drawTexture",value:o(function(r,n,i){var a=this.atlasManager;if(a.isRenderable(r,i)){a.canAddToCurrentBatch(r,i)||this.endBatch();var s=this.instanceCount;this.vertTypeBuffer.getView(s)[0]=bN;var l=this.indexBuffer.getView(s);Pk(n,l);var u=a.getAtlasInfo(r,i,u),h=u.atlasID,f=u.tex1,d=u.tex2,p=this.atlasIdBuffer.getView(s);p[0]=h;var m=this.tex1Buffer.getView(s);m[0]=f.x,m[1]=f.y,m[2]=f.w,m[3]=f.h;var g=this.tex2Buffer.getView(s);g[0]=d.x,g[1]=d.y,g[2]=d.w,g[3]=d.h;for(var y=this.getTempMatrix(),x=0,v=[1,2];x<v.length;x++){var b=v[x];a.setTransformMatrix(y,u,r,b===1);var T=this["scaleRotate".concat(b,"Buffer")].getView(s);T[0]=y[0],T[1]=y[1],T[2]=y[3],T[3]=y[4];var S=this["translate".concat(b,"Buffer")].getView(s);S[0]=y[6],S[1]=y[7]}this.instanceCount++,this.instanceCount>=this.maxInstances&&this.endBatch()}},"drawTexture")},{key:"drawEdgeArrow",value:o(function(r,n,i){var a=r._private.rscratch,s,l,u;if(i==="source"?(s=a.arrowStartX,l=a.arrowStartY,u=a.srcArrowAngle):(s=a.arrowEndX,l=a.arrowEndY,u=a.tgtArrowAngle),!(isNaN(s)||s==null||isNaN(l)||l==null||isNaN(u)||u==null)){var h=r.pstyle(i+"-arrow-shape").value;if(h!=="none"){var f=r.pstyle(i+"-arrow-color").value,d=r.pstyle("opacity").value,p=r.pstyle("line-opacity").value,m=d*p,g=r.pstyle("width").pfValue,y=r.pstyle("arrow-scale").value,x=this.r.getArrowWidth(g,y),v=this.getTempMatrix();cce(v),nE(v,v,[s,l]),cM(v,v,[x,x]),uce(v,v,u);var b=this.instanceCount;this.vertTypeBuffer.getView(b)[0]=TN;var T=this.indexBuffer.getView(b);Pk(n,T);var S=this.edgeColorBuffer.getView(b);Ok(f,m,S);var w=this.scaleRotate1Buffer.getView(b);w[0]=v[0],w[1]=v[1],w[2]=v[3],w[3]=v[4];var E=this.translate1Buffer.getView(b);E[0]=v[6],E[1]=v[7],this.instanceCount++,this.instanceCount>=this.maxInstances&&this.endBatch()}}},"drawEdgeArrow")},{key:"drawEdgeLine",value:o(function(r,n){var i=r.pstyle("opacity").value,a=r.pstyle("line-opacity").value,s=r.pstyle("width").pfValue,l=r.pstyle("line-color").value,u=i*a,h=this.getEdgePoints(r);if(h.length/2+this.instanceCount>this.maxInstances&&this.endBatch(),h.length==4){var f=this.instanceCount;this.vertTypeBuffer.getView(f)[0]=Eoe;var d=this.indexBuffer.getView(f);Pk(n,d);var p=this.edgeColorBuffer.getView(f);Ok(l,u,p);var m=this.lineWidthBuffer.getView(f);m[0]=s;var g=this.pointAPointBBuffer.getView(f);g[0]=h[0],g[1]=h[1],g[2]=h[2],g[3]=h[3],this.instanceCount++,this.instanceCount>=this.maxInstances&&this.endBatch()}else for(var y=0;y<h.length-2;y+=2){var x=this.instanceCount;this.vertTypeBuffer.getView(x)[0]=Soe;var v=this.indexBuffer.getView(x);Pk(n,v);var b=this.edgeColorBuffer.getView(x);Ok(l,u,b);var T=this.lineWidthBuffer.getView(x);T[0]=s;var S=h[y-2],w=h[y-1],E=h[y],_=h[y+1],A=h[y+2],D=h[y+3],O=h[y+4],R=h[y+5];y==0&&(S=2*E-A+.001,w=2*_-D+.001),y==h.length-4&&(O=2*A-E+.001,R=2*D-_+.001);var k=this.pointAPointBBuffer.getView(x);k[0]=S,k[1]=w,k[2]=E,k[3]=_;var L=this.pointCPointDBuffer.getView(x);L[0]=A,L[1]=D,L[2]=O,L[3]=R,this.instanceCount++,this.instanceCount>=this.maxInstances&&this.endBatch()}},"drawEdgeLine")},{key:"getEdgePoints",value:o(function(r){var n=r._private.rscratch,i=n.allpts;if(i.length==4)return i;var a=this.getNumSegments(r);return this.getCurveSegmentPoints(i,a)},"getEdgePoints")},{key:"getNumSegments",value:o(function(r){var n=15;return Math.min(Math.max(n,5),this.maxInstances)},"getNumSegments")},{key:"getCurveSegmentPoints",value:o(function(r,n){if(r.length==4)return r;for(var i=Array((n+1)*2),a=0;a<=n;a++)if(a==0)i[0]=r[0],i[1]=r[1];else if(a==n)i[a*2]=r[r.length-2],i[a*2+1]=r[r.length-1];else{var s=a/n;this.setCurvePoint(r,s,i,a*2)}return i},"getCurveSegmentPoints")},{key:"setCurvePoint",value:o(function(r,n,i,a){if(r.length<=2)i[a]=r[0],i[a+1]=r[1];else{for(var s=Array(r.length-2),l=0;l<s.length;l+=2){var u=(1-n)*r[l]+n*r[l+2],h=(1-n)*r[l+1]+n*r[l+3];s[l]=u,s[l+1]=h}return this.setCurvePoint(s,n,i,a)}},"setCurvePoint")},{key:"endBatch",value:o(function(){var r=this.gl,n=this.vao,i=this.vertexCount,a=this.instanceCount;if(a!==0){var s=this.renderTarget.picking?this.pickingProgram:this.program;r.useProgram(s),r.bindVertexArray(n);var l=uo(this.buffers),u;try{for(l.s();!(u=l.n()).done;){var h=u.value;h.bufferSubData(a)}}catch(g){l.e(g)}finally{l.f()}for(var f=this.atlasManager.getAtlases(),d=0;d<f.length;d++)f[d].bufferIfNeeded(r);for(var p=0;p<f.length;p++)r.activeTexture(r.TEXTURE0+p),r.bindTexture(r.TEXTURE_2D,f[p].texture),r.uniform1i(s.uTextures[p],p);r.uniformMatrix3fv(s.uPanZoomMatrix,!1,this.panZoomMatrix),r.uniform1i(s.uAtlasSize,this.atlasManager.atlasSize);var m=Ok(this.bgColor,1);r.uniform4fv(s.uBGColor,m),r.drawArraysInstanced(r.TRIANGLES,0,i,a),r.bindVertexArray(null),r.bindTexture(r.TEXTURE_2D,null),this.debugInfo&&this.debugInfo.push({count:a,atlasCount:f.length}),this.startBatch()}},"endBatch")},{key:"getDebugInfo",value:o(function(){return this.debugInfo},"getDebugInfo")},{key:"getAtlasDebugInfo",value:o(function(){return this.atlasManager.getDebugInfo()},"getAtlasDebugInfo")}]),t}();o(Coe,"fillStyle");EHe=function(){function t(e){kf(this,t),this.r=e}return o(t,"OverlayUnderlayRenderer"),Ef(t,[{key:"getStyleKey",value:o(function(r,n){var i=this.getStyle(r,n),a=i.shape,s=i.opacity,l=i.color;if(!a)return null;var u=n.width(),h=n.height(),f=Coe(l,s);return vf("".concat(a,"-").concat(u,"-").concat(h,"-").concat(f))},"getStyleKey")},{key:"isVisible",value:o(function(r,n){var i=n.pstyle("".concat(r,"-opacity")).value;return i>0},"isVisible")},{key:"getStyle",value:o(function(r,n){var i=n.pstyle("".concat(r,"-opacity")).value,a=n.pstyle("".concat(r,"-color")).value,s=n.pstyle("".concat(r,"-shape")).value;return{opacity:i,color:a,shape:s}},"getStyle")},{key:"getPadding",value:o(function(r,n){return n.pstyle("".concat(r,"-padding")).pfValue},"getPadding")},{key:"draw",value:o(function(r,n,i,a){if(this.isVisible(r,i)){var s=this.r,l=a.w,u=a.h,h=l/2,f=u/2,d=this.getStyle(r,i),p=d.shape,m=d.color,g=d.opacity;n.save(),n.fillStyle=Coe(m,g),p==="round-rectangle"||p==="roundrectangle"?s.drawRoundRectanglePath(n,h,f,l,u,"auto"):p==="ellipse"&&s.drawEllipsePath(n,h,f,l,u),n.fill(),n.restore()}},"draw")}]),t}();o(SHe,"getBGColor");hce={};hce.initWebgl=function(t,e){var r=this,n=r.data.contexts[r.WEBGL],i=t.cy.container();t.bgColor=SHe(i),t.webglTexSize=Math.min(t.webglTexSize,n.getParameter(n.MAX_TEXTURE_SIZE)),t.webglTexRows=Math.min(t.webglTexRows,54),t.webglBatchSize=Math.min(t.webglBatchSize,16384),t.webglTexPerBatch=Math.min(t.webglTexPerBatch,n.getParameter(n.MAX_TEXTURE_IMAGE_UNITS)),r.webglDebug=t.webglDebug,r.webglDebugShowAtlases=t.webglDebugShowAtlases,console.log("max texture units",n.getParameter(n.MAX_TEXTURE_IMAGE_UNITS)),console.log("max texture size",n.getParameter(n.MAX_TEXTURE_SIZE)),console.log("webgl options",t),r.pickingFrameBuffer=gHe(n),r.pickingFrameBuffer.needsDraw=!0;var a=o(function(f){return r.getTextAngle(f,null)},"getLabelRotation"),s=o(function(f){var d=f.pstyle("label");return d&&d.value},"isLabelVisible");r.eleDrawing=new kHe(r,n,t);var l=new EHe(r);r.eleDrawing.addTextureRenderType("node-body",j2({getKey:e.getStyleKey,getBoundingBox:e.getElementBox,drawElement:e.drawElement,isVisible:o(function(f){return f.visible()},"isVisible")})),r.eleDrawing.addTextureRenderType("node-label",j2({getKey:e.getLabelKey,getBoundingBox:e.getLabelBox,drawElement:e.drawLabel,getRotation:a,getRotationPoint:e.getLabelRotationPoint,getRotationOffset:e.getLabelRotationOffset,isVisible:s})),r.eleDrawing.addTextureRenderType("node-overlay",j2({getBoundingBox:e.getElementBox,getKey:o(function(f){return l.getStyleKey("overlay",f)},"getKey"),drawElement:o(function(f,d,p){return l.draw("overlay",f,d,p)},"drawElement"),isVisible:o(function(f){return l.isVisible("overlay",f)},"isVisible"),getPadding:o(function(f){return l.getPadding("overlay",f)},"getPadding")})),r.eleDrawing.addTextureRenderType("node-underlay",j2({getBoundingBox:e.getElementBox,getKey:o(function(f){return l.getStyleKey("underlay",f)},"getKey"),drawElement:o(function(f,d,p){return l.draw("underlay",f,d,p)},"drawElement"),isVisible:o(function(f){return l.isVisible("underlay",f)},"isVisible"),getPadding:o(function(f){return l.getPadding("underlay",f)},"getPadding")})),r.eleDrawing.addTextureRenderType("edge-label",j2({getKey:e.getLabelKey,getBoundingBox:e.getLabelBox,drawElement:e.drawLabel,getRotation:a,getRotationPoint:e.getLabelRotationPoint,getRotationOffset:e.getLabelRotationOffset,isVisible:s}));var u=xx(function(){console.log("garbage collect flag set"),r.data.gc=!0},1e4);r.onUpdateEleCalcs(function(h,f){var d=!1;f&&f.length>0&&(d|=r.eleDrawing.invalidate(f)),d&&u()}),CHe(r)};o(CHe,"overrideCanvasRendererFunctions");o(AHe,"clearWebgl");o(_He,"clearCanvas");o(DHe,"createPanZoomMatrix");o(fce,"setContextTransform");o(LHe,"drawSelectionRectangle");o(RHe,"drawAxes");o(NHe,"drawAtlases");o(MHe,"getPickingIndexes");o(IHe,"findNearestElementsWebgl");o(dce,"renderWebgl");Cf={};Cf.drawPolygonPath=function(t,e,r,n,i,a){var s=n/2,l=i/2;t.beginPath&&t.beginPath(),t.moveTo(e+s*a[0],r+l*a[1]);for(var u=1;u<a.length/2;u++)t.lineTo(e+s*a[u*2],r+l*a[u*2+1]);t.closePath()};Cf.drawRoundPolygonPath=function(t,e,r,n,i,a,s){s.forEach(function(l){return Yle(t,l)}),t.closePath()};Cf.drawRoundRectanglePath=function(t,e,r,n,i,a){var s=n/2,l=i/2,u=a==="auto"?yp(n,i):Math.min(a,l,s);t.beginPath&&t.beginPath(),t.moveTo(e,r-l),t.arcTo(e+s,r-l,e+s,r,u),t.arcTo(e+s,r+l,e,r+l,u),t.arcTo(e-s,r+l,e-s,r,u),t.arcTo(e-s,r-l,e,r-l,u),t.lineTo(e,r-l),t.closePath()};Cf.drawBottomRoundRectanglePath=function(t,e,r,n,i,a){var s=n/2,l=i/2,u=a==="auto"?yp(n,i):a;t.beginPath&&t.beginPath(),t.moveTo(e,r-l),t.lineTo(e+s,r-l),t.lineTo(e+s,r),t.arcTo(e+s,r+l,e,r+l,u),t.arcTo(e-s,r+l,e-s,r,u),t.lineTo(e-s,r-l),t.lineTo(e,r-l),t.closePath()};Cf.drawCutRectanglePath=function(t,e,r,n,i,a,s){var l=n/2,u=i/2,h=s==="auto"?YN():s;t.beginPath&&t.beginPath(),t.moveTo(e-l+h,r-u),t.lineTo(e+l-h,r-u),t.lineTo(e+l,r-u+h),t.lineTo(e+l,r+u-h),t.lineTo(e+l-h,r+u),t.lineTo(e-l+h,r+u),t.lineTo(e-l,r+u-h),t.lineTo(e-l,r-u+h),t.closePath()};Cf.drawBarrelPath=function(t,e,r,n,i){var a=n/2,s=i/2,l=e-a,u=e+a,h=r-s,f=r+s,d=EN(n,i),p=d.widthOffset,m=d.heightOffset,g=d.ctrlPtOffsetPct*p;t.beginPath&&t.beginPath(),t.moveTo(l,h+m),t.lineTo(l,f-m),t.quadraticCurveTo(l+g,f,l+p,f),t.lineTo(u-p,f),t.quadraticCurveTo(u-g,f,u,f-m),t.lineTo(u,h+m),t.quadraticCurveTo(u-g,h,u-p,h),t.lineTo(l+p,h),t.quadraticCurveTo(l+g,h,l,h+m),t.closePath()};Aoe=Math.sin(0),_oe=Math.cos(0),PN={},BN={},pce=Math.PI/40;for(cp=0*Math.PI;cp<2*Math.PI;cp+=pce)PN[cp]=Math.sin(cp),BN[cp]=Math.cos(cp);Cf.drawEllipsePath=function(t,e,r,n,i){if(t.beginPath&&t.beginPath(),t.ellipse)t.ellipse(e,r,n/2,i/2,0,0,2*Math.PI);else for(var a,s,l=n/2,u=i/2,h=0*Math.PI;h<2*Math.PI;h+=pce)a=e-l*PN[h]*Aoe+l*BN[h]*_oe,s=r+u*BN[h]*Aoe+u*PN[h]*_oe,h===0?t.moveTo(a,s):t.lineTo(a,s);t.closePath()};Sx={};Sx.createBuffer=function(t,e){var r=document.createElement("canvas");return r.width=t,r.height=e,[r,r.getContext("2d")]};Sx.bufferCanvasImage=function(t){var e=this.cy,r=e.mutableElements(),n=r.boundingBox(),i=this.findContainerClientCoords(),a=t.full?Math.ceil(n.w):i[2],s=t.full?Math.ceil(n.h):i[3],l=At(t.maxWidth)||At(t.maxHeight),u=this.getPixelRatio(),h=1;if(t.scale!==void 0)a*=t.scale,s*=t.scale,h=t.scale;else if(l){var f=1/0,d=1/0;At(t.maxWidth)&&(f=h*t.maxWidth/a),At(t.maxHeight)&&(d=h*t.maxHeight/s),h=Math.min(f,d),a*=h,s*=h}l||(a*=u,s*=u,h*=u);var p=document.createElement("canvas");p.width=a,p.height=s,p.style.width=a+"px",p.style.height=s+"px";var m=p.getContext("2d");if(a>0&&s>0){m.clearRect(0,0,a,s),m.globalCompositeOperation="source-over";var g=this.getCachedZSortedEles();if(t.full)m.translate(-n.x1*h,-n.y1*h),m.scale(h,h),this.drawElements(m,g),m.scale(1/h,1/h),m.translate(n.x1*h,n.y1*h);else{var y=e.pan(),x={x:y.x*h,y:y.y*h};h*=e.zoom(),m.translate(x.x,x.y),m.scale(h,h),this.drawElements(m,g),m.scale(1/h,1/h),m.translate(-x.x,-x.y)}t.bg&&(m.globalCompositeOperation="destination-over",m.fillStyle=t.bg,m.rect(0,0,a,s),m.fill())}return p};o(OHe,"b64ToBlob");o(Doe,"b64UriToB64");o(mce,"output");Sx.png=function(t){return mce(t,this.bufferCanvasImage(t),"image/png")};Sx.jpg=function(t){return mce(t,this.bufferCanvasImage(t),"image/jpeg")};gce={};gce.nodeShapeImpl=function(t,e,r,n,i,a,s,l){switch(t){case"ellipse":return this.drawEllipsePath(e,r,n,i,a);case"polygon":return this.drawPolygonPath(e,r,n,i,a,s);case"round-polygon":return this.drawRoundPolygonPath(e,r,n,i,a,s,l);case"roundrectangle":case"round-rectangle":return this.drawRoundRectanglePath(e,r,n,i,a,l);case"cutrectangle":case"cut-rectangle":return this.drawCutRectanglePath(e,r,n,i,a,s,l);case"bottomroundrectangle":case"bottom-round-rectangle":return this.drawBottomRoundRectanglePath(e,r,n,i,a,l);case"barrel":return this.drawBarrelPath(e,r,n,i,a)}};PHe=yce,kr=yce.prototype;kr.CANVAS_LAYERS=3;kr.SELECT_BOX=0;kr.DRAG=1;kr.NODE=2;kr.WEBGL=3;kr.CANVAS_TYPES=["2d","2d","2d","webgl2"];kr.BUFFER_COUNT=3;kr.TEXTURE_BUFFER=0;kr.MOTIONBLUR_BUFFER_NODE=1;kr.MOTIONBLUR_BUFFER_DRAG=2;o(yce,"CanvasRenderer");kr.redrawHint=function(t,e){var r=this;switch(t){case"eles":r.data.canvasNeedsRedraw[kr.NODE]=e;break;case"drag":r.data.canvasNeedsRedraw[kr.DRAG]=e;break;case"select":r.data.canvasNeedsRedraw[kr.SELECT_BOX]=e;break;case"gc":r.data.gc=!0;break}};BHe=typeof Path2D<"u";kr.path2dEnabled=function(t){if(t===void 0)return this.pathsEnabled;this.pathsEnabled=!!t};kr.usePaths=function(){return BHe&&this.pathsEnabled};kr.setImgSmoothing=function(t,e){t.imageSmoothingEnabled!=null?t.imageSmoothingEnabled=e:(t.webkitImageSmoothingEnabled=e,t.mozImageSmoothingEnabled=e,t.msImageSmoothingEnabled=e)};kr.getImgSmoothing=function(t){return t.imageSmoothingEnabled!=null?t.imageSmoothingEnabled:t.webkitImageSmoothingEnabled||t.mozImageSmoothingEnabled||t.msImageSmoothingEnabled};kr.makeOffscreenCanvas=function(t,e){var r;if((typeof OffscreenCanvas>"u"?"undefined":zi(OffscreenCanvas))!=="undefined")r=new OffscreenCanvas(t,e);else{var n=this.cy.window(),i=n.document;r=i.createElement("canvas"),r.width=t,r.height=e}return r};[ice,Pc,zu,oM,wp,pg,cs,hce,Cf,Sx,gce].forEach(function(t){ir(kr,t)});FHe=[{name:"null",impl:Hle},{name:"base",impl:ece},{name:"canvas",impl:PHe}],$He=[{type:"layout",extensions:TUe},{type:"renderer",extensions:FHe}],vce={},xce={};o(bce,"setExtension");o(Tce,"getExtension");o(GHe,"setModule");o(zHe,"getModule");FN=o(function(){if(arguments.length===2)return Tce.apply(null,arguments);if(arguments.length===3)return bce.apply(null,arguments);if(arguments.length===4)return zHe.apply(null,arguments);if(arguments.length===5)return GHe.apply(null,arguments);oi("Invalid extension access syntax")},"extension");mx.prototype.extension=FN;$He.forEach(function(t){t.extensions.forEach(function(e){bce(t.type,e.name,e.impl)})});wce=o(function t(){if(!(this instanceof t))return new t;this.length=0},"Stylesheet"),bp=wce.prototype;bp.instanceString=function(){return"stylesheet"};bp.selector=function(t){var e=this.length++;return this[e]={selector:t,properties:[]},this};bp.css=function(t,e){var r=this.length-1;if(Jt(t))this[r].properties.push({name:t,value:e});else if(Vr(t))for(var n=t,i=Object.keys(n),a=0;a<i.length;a++){var s=i[a],l=n[s];if(l!=null){var u=Oa.properties[s]||Oa.properties[iE(s)];if(u!=null){var h=u.name,f=l;this[r].properties.push({name:h,value:f})}}}return this};bp.style=bp.css;bp.generateStyle=function(t){var e=new Oa(t);return this.appendToStyle(e)};bp.appendToStyle=function(t){for(var e=0;e<this.length;e++){var r=this[e],n=r.selector,i=r.properties;t.selector(n);for(var a=0;a<i.length;a++){var s=i[a];t.css(s.name,s.value)}}return t};VHe="3.31.0",Ko=o(function(e){if(e===void 0&&(e={}),Vr(e))return new mx(e);if(Jt(e))return FN.apply(FN,arguments)},"cytoscape");Ko.use=function(t){var e=Array.prototype.slice.call(arguments,1);return e.unshift(Ko),t.apply(null,e),this};Ko.warnings=function(t){return Yoe(t)};Ko.version=VHe;Ko.stylesheet=Ko.Stylesheet=wce});var fM=Aa((Cx,hM)=>{"use strict";o(function(e,r){typeof Cx=="object"&&typeof hM=="object"?hM.exports=r():typeof define=="function"&&define.amd?define([],r):typeof Cx=="object"?Cx.layoutBase=r():e.layoutBase=r()},"webpackUniversalModuleDefinition")(Cx,function(){return function(t){var e={};function r(n){if(e[n])return e[n].exports;var i=e[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return o(r,"__webpack_require__"),r.m=t,r.c=e,r.i=function(n){return n},r.d=function(n,i,a){r.o(n,i)||Object.defineProperty(n,i,{configurable:!1,enumerable:!0,get:a})},r.n=function(n){var i=n&&n.__esModule?o(function(){return n.default},"getDefault"):o(function(){return n},"getModuleExports");return r.d(i,"a",i),i},r.o=function(n,i){return Object.prototype.hasOwnProperty.call(n,i)},r.p="",r(r.s=26)}([function(t,e,r){"use strict";function n(){}o(n,"LayoutConstants"),n.QUALITY=1,n.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,n.DEFAULT_INCREMENTAL=!1,n.DEFAULT_ANIMATION_ON_LAYOUT=!0,n.DEFAULT_ANIMATION_DURING_LAYOUT=!1,n.DEFAULT_ANIMATION_PERIOD=50,n.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,n.DEFAULT_GRAPH_MARGIN=15,n.NODE_DIMENSIONS_INCLUDE_LABELS=!1,n.SIMPLE_NODE_SIZE=40,n.SIMPLE_NODE_HALF_SIZE=n.SIMPLE_NODE_SIZE/2,n.EMPTY_COMPOUND_NODE_SIZE=40,n.MIN_EDGE_LENGTH=1,n.WORLD_BOUNDARY=1e6,n.INITIAL_WORLD_BOUNDARY=n.WORLD_BOUNDARY/1e3,n.WORLD_CENTER_X=1200,n.WORLD_CENTER_Y=900,t.exports=n},function(t,e,r){"use strict";var n=r(2),i=r(8),a=r(9);function s(u,h,f){n.call(this,f),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=f,this.bendpoints=[],this.source=u,this.target=h}o(s,"LEdge"),s.prototype=Object.create(n.prototype);for(var l in n)s[l]=n[l];s.prototype.getSource=function(){return this.source},s.prototype.getTarget=function(){return this.target},s.prototype.isInterGraph=function(){return this.isInterGraph},s.prototype.getLength=function(){return this.length},s.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},s.prototype.getBendpoints=function(){return this.bendpoints},s.prototype.getLca=function(){return this.lca},s.prototype.getSourceInLca=function(){return this.sourceInLca},s.prototype.getTargetInLca=function(){return this.targetInLca},s.prototype.getOtherEnd=function(u){if(this.source===u)return this.target;if(this.target===u)return this.source;throw"Node is not incident with this edge"},s.prototype.getOtherEndInGraph=function(u,h){for(var f=this.getOtherEnd(u),d=h.getGraphManager().getRoot();;){if(f.getOwner()==h)return f;if(f.getOwner()==d)break;f=f.getOwner().getParent()}return null},s.prototype.updateLength=function(){var u=new Array(4);this.isOverlapingSourceAndTarget=i.getIntersection(this.target.getRect(),this.source.getRect(),u),this.isOverlapingSourceAndTarget||(this.lengthX=u[0]-u[2],this.lengthY=u[1]-u[3],Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY))},s.prototype.updateLengthSimple=function(){this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},t.exports=s},function(t,e,r){"use strict";function n(i){this.vGraphObject=i}o(n,"LGraphObject"),t.exports=n},function(t,e,r){"use strict";var n=r(2),i=r(10),a=r(13),s=r(0),l=r(16),u=r(4);function h(d,p,m,g){m==null&&g==null&&(g=p),n.call(this,g),d.graphManager!=null&&(d=d.graphManager),this.estimatedSize=i.MIN_VALUE,this.inclusionTreeDepth=i.MAX_VALUE,this.vGraphObject=g,this.edges=[],this.graphManager=d,m!=null&&p!=null?this.rect=new a(p.x,p.y,m.width,m.height):this.rect=new a}o(h,"LNode"),h.prototype=Object.create(n.prototype);for(var f in n)h[f]=n[f];h.prototype.getEdges=function(){return this.edges},h.prototype.getChild=function(){return this.child},h.prototype.getOwner=function(){return this.owner},h.prototype.getWidth=function(){return this.rect.width},h.prototype.setWidth=function(d){this.rect.width=d},h.prototype.getHeight=function(){return this.rect.height},h.prototype.setHeight=function(d){this.rect.height=d},h.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},h.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},h.prototype.getCenter=function(){return new u(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},h.prototype.getLocation=function(){return new u(this.rect.x,this.rect.y)},h.prototype.getRect=function(){return this.rect},h.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},h.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},h.prototype.setRect=function(d,p){this.rect.x=d.x,this.rect.y=d.y,this.rect.width=p.width,this.rect.height=p.height},h.prototype.setCenter=function(d,p){this.rect.x=d-this.rect.width/2,this.rect.y=p-this.rect.height/2},h.prototype.setLocation=function(d,p){this.rect.x=d,this.rect.y=p},h.prototype.moveBy=function(d,p){this.rect.x+=d,this.rect.y+=p},h.prototype.getEdgeListToNode=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(y.target==d){if(y.source!=g)throw"Incorrect edge source!";p.push(y)}}),p},h.prototype.getEdgesBetween=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(!(y.source==g||y.target==g))throw"Incorrect edge source and/or target";(y.target==d||y.source==d)&&p.push(y)}),p},h.prototype.getNeighborsList=function(){var d=new Set,p=this;return p.edges.forEach(function(m){if(m.source==p)d.add(m.target);else{if(m.target!=p)throw"Incorrect incidency!";d.add(m.source)}}),d},h.prototype.withChildren=function(){var d=new Set,p,m;if(d.add(this),this.child!=null)for(var g=this.child.getNodes(),y=0;y<g.length;y++)p=g[y],m=p.withChildren(),m.forEach(function(x){d.add(x)});return d},h.prototype.getNoOfChildren=function(){var d=0,p;if(this.child==null)d=1;else for(var m=this.child.getNodes(),g=0;g<m.length;g++)p=m[g],d+=p.getNoOfChildren();return d==0&&(d=1),d},h.prototype.getEstimatedSize=function(){if(this.estimatedSize==i.MIN_VALUE)throw"assert failed";return this.estimatedSize},h.prototype.calcEstimatedSize=function(){return this.child==null?this.estimatedSize=(this.rect.width+this.rect.height)/2:(this.estimatedSize=this.child.calcEstimatedSize(),this.rect.width=this.estimatedSize,this.rect.height=this.estimatedSize,this.estimatedSize)},h.prototype.scatter=function(){var d,p,m=-s.INITIAL_WORLD_BOUNDARY,g=s.INITIAL_WORLD_BOUNDARY;d=s.WORLD_CENTER_X+l.nextDouble()*(g-m)+m;var y=-s.INITIAL_WORLD_BOUNDARY,x=s.INITIAL_WORLD_BOUNDARY;p=s.WORLD_CENTER_Y+l.nextDouble()*(x-y)+y,this.rect.x=d,this.rect.y=p},h.prototype.updateBounds=function(){if(this.getChild()==null)throw"assert failed";if(this.getChild().getNodes().length!=0){var d=this.getChild();if(d.updateBounds(!0),this.rect.x=d.getLeft(),this.rect.y=d.getTop(),this.setWidth(d.getRight()-d.getLeft()),this.setHeight(d.getBottom()-d.getTop()),s.NODE_DIMENSIONS_INCLUDE_LABELS){var p=d.getRight()-d.getLeft(),m=d.getBottom()-d.getTop();this.labelWidth>p&&(this.rect.x-=(this.labelWidth-p)/2,this.setWidth(this.labelWidth)),this.labelHeight>m&&(this.labelPos=="center"?this.rect.y-=(this.labelHeight-m)/2:this.labelPos=="top"&&(this.rect.y-=this.labelHeight-m),this.setHeight(this.labelHeight))}}},h.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==i.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},h.prototype.transform=function(d){var p=this.rect.x;p>s.WORLD_BOUNDARY?p=s.WORLD_BOUNDARY:p<-s.WORLD_BOUNDARY&&(p=-s.WORLD_BOUNDARY);var m=this.rect.y;m>s.WORLD_BOUNDARY?m=s.WORLD_BOUNDARY:m<-s.WORLD_BOUNDARY&&(m=-s.WORLD_BOUNDARY);var g=new u(p,m),y=d.inverseTransformPoint(g);this.setLocation(y.x,y.y)},h.prototype.getLeft=function(){return this.rect.x},h.prototype.getRight=function(){return this.rect.x+this.rect.width},h.prototype.getTop=function(){return this.rect.y},h.prototype.getBottom=function(){return this.rect.y+this.rect.height},h.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},t.exports=h},function(t,e,r){"use strict";function n(i,a){i==null&&a==null?(this.x=0,this.y=0):(this.x=i,this.y=a)}o(n,"PointD"),n.prototype.getX=function(){return this.x},n.prototype.getY=function(){return this.y},n.prototype.setX=function(i){this.x=i},n.prototype.setY=function(i){this.y=i},n.prototype.getDifference=function(i){return new DimensionD(this.x-i.x,this.y-i.y)},n.prototype.getCopy=function(){return new n(this.x,this.y)},n.prototype.translate=function(i){return this.x+=i.width,this.y+=i.height,this},t.exports=n},function(t,e,r){"use strict";var n=r(2),i=r(10),a=r(0),s=r(6),l=r(3),u=r(1),h=r(13),f=r(12),d=r(11);function p(g,y,x){n.call(this,x),this.estimatedSize=i.MIN_VALUE,this.margin=a.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=g,y!=null&&y instanceof s?this.graphManager=y:y!=null&&y instanceof Layout&&(this.graphManager=y.graphManager)}o(p,"LGraph"),p.prototype=Object.create(n.prototype);for(var m in n)p[m]=n[m];p.prototype.getNodes=function(){return this.nodes},p.prototype.getEdges=function(){return this.edges},p.prototype.getGraphManager=function(){return this.graphManager},p.prototype.getParent=function(){return this.parent},p.prototype.getLeft=function(){return this.left},p.prototype.getRight=function(){return this.right},p.prototype.getTop=function(){return this.top},p.prototype.getBottom=function(){return this.bottom},p.prototype.isConnected=function(){return this.isConnected},p.prototype.add=function(g,y,x){if(y==null&&x==null){var v=g;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(v)>-1)throw"Node already in graph!";return v.owner=this,this.getNodes().push(v),v}else{var b=g;if(!(this.getNodes().indexOf(y)>-1&&this.getNodes().indexOf(x)>-1))throw"Source or target not in graph!";if(!(y.owner==x.owner&&y.owner==this))throw"Both owners must be this graph!";return y.owner!=x.owner?null:(b.source=y,b.target=x,b.isInterGraph=!1,this.getEdges().push(b),y.edges.push(b),x!=y&&x.edges.push(b),b)}},p.prototype.remove=function(g){var y=g;if(g instanceof l){if(y==null)throw"Node is null!";if(!(y.owner!=null&&y.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var x=y.edges.slice(),v,b=x.length,T=0;T<b;T++)v=x[T],v.isInterGraph?this.graphManager.remove(v):v.source.owner.remove(v);var S=this.nodes.indexOf(y);if(S==-1)throw"Node not in owner node list!";this.nodes.splice(S,1)}else if(g instanceof u){var v=g;if(v==null)throw"Edge is null!";if(!(v.source!=null&&v.target!=null))throw"Source and/or target is null!";if(!(v.source.owner!=null&&v.target.owner!=null&&v.source.owner==this&&v.target.owner==this))throw"Source and/or target owner is invalid!";var w=v.source.edges.indexOf(v),E=v.target.edges.indexOf(v);if(!(w>-1&&E>-1))throw"Source and/or target doesn't know this edge!";v.source.edges.splice(w,1),v.target!=v.source&&v.target.edges.splice(E,1);var S=v.source.owner.getEdges().indexOf(v);if(S==-1)throw"Not in owner's edge list!";v.source.owner.getEdges().splice(S,1)}},p.prototype.updateLeftTop=function(){for(var g=i.MAX_VALUE,y=i.MAX_VALUE,x,v,b,T=this.getNodes(),S=T.length,w=0;w<S;w++){var E=T[w];x=E.getTop(),v=E.getLeft(),g>x&&(g=x),y>v&&(y=v)}return g==i.MAX_VALUE?null:(T[0].getParent().paddingLeft!=null?b=T[0].getParent().paddingLeft:b=this.margin,this.left=y-b,this.top=g-b,new f(this.left,this.top))},p.prototype.updateBounds=function(g){for(var y=i.MAX_VALUE,x=-i.MAX_VALUE,v=i.MAX_VALUE,b=-i.MAX_VALUE,T,S,w,E,_,A=this.nodes,D=A.length,O=0;O<D;O++){var R=A[O];g&&R.child!=null&&R.updateBounds(),T=R.getLeft(),S=R.getRight(),w=R.getTop(),E=R.getBottom(),y>T&&(y=T),x<S&&(x=S),v>w&&(v=w),b<E&&(b=E)}var k=new h(y,v,x-y,b-v);y==i.MAX_VALUE&&(this.left=this.parent.getLeft(),this.right=this.parent.getRight(),this.top=this.parent.getTop(),this.bottom=this.parent.getBottom()),A[0].getParent().paddingLeft!=null?_=A[0].getParent().paddingLeft:_=this.margin,this.left=k.x-_,this.right=k.x+k.width+_,this.top=k.y-_,this.bottom=k.y+k.height+_},p.calculateBounds=function(g){for(var y=i.MAX_VALUE,x=-i.MAX_VALUE,v=i.MAX_VALUE,b=-i.MAX_VALUE,T,S,w,E,_=g.length,A=0;A<_;A++){var D=g[A];T=D.getLeft(),S=D.getRight(),w=D.getTop(),E=D.getBottom(),y>T&&(y=T),x<S&&(x=S),v>w&&(v=w),b<E&&(b=E)}var O=new h(y,v,x-y,b-v);return O},p.prototype.getInclusionTreeDepth=function(){return this==this.graphManager.getRoot()?1:this.parent.getInclusionTreeDepth()},p.prototype.getEstimatedSize=function(){if(this.estimatedSize==i.MIN_VALUE)throw"assert failed";return this.estimatedSize},p.prototype.calcEstimatedSize=function(){for(var g=0,y=this.nodes,x=y.length,v=0;v<x;v++){var b=y[v];g+=b.calcEstimatedSize()}return g==0?this.estimatedSize=a.EMPTY_COMPOUND_NODE_SIZE:this.estimatedSize=g/Math.sqrt(this.nodes.length),this.estimatedSize},p.prototype.updateConnected=function(){var g=this;if(this.nodes.length==0){this.isConnected=!0;return}var y=new d,x=new Set,v=this.nodes[0],b,T,S=v.withChildren();for(S.forEach(function(O){y.push(O),x.add(O)});y.length!==0;){v=y.shift(),b=v.getEdges();for(var w=b.length,E=0;E<w;E++){var _=b[E];if(T=_.getOtherEndInGraph(v,this),T!=null&&!x.has(T)){var A=T.withChildren();A.forEach(function(O){y.push(O),x.add(O)})}}}if(this.isConnected=!1,x.size>=this.nodes.length){var D=0;x.forEach(function(O){O.owner==g&&D++}),D==this.nodes.length&&(this.isConnected=!0)}},t.exports=p},function(t,e,r){"use strict";var n,i=r(1);function a(s){n=r(5),this.layout=s,this.graphs=[],this.edges=[]}o(a,"LGraphManager"),a.prototype.addRoot=function(){var s=this.layout.newGraph(),l=this.layout.newNode(null),u=this.add(s,l);return this.setRootGraph(u),this.rootGraph},a.prototype.add=function(s,l,u,h,f){if(u==null&&h==null&&f==null){if(s==null)throw"Graph is null!";if(l==null)throw"Parent node is null!";if(this.graphs.indexOf(s)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(s),s.parent!=null)throw"Already has a parent!";if(l.child!=null)throw"Already has a child!";return s.parent=l,l.child=s,s}else{f=u,h=l,u=s;var d=h.getOwner(),p=f.getOwner();if(!(d!=null&&d.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(p!=null&&p.getGraphManager()==this))throw"Target not in this graph mgr!";if(d==p)return u.isInterGraph=!1,d.add(u,h,f);if(u.isInterGraph=!0,u.source=h,u.target=f,this.edges.indexOf(u)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(u),!(u.source!=null&&u.target!=null))throw"Edge source and/or target is null!";if(!(u.source.edges.indexOf(u)==-1&&u.target.edges.indexOf(u)==-1))throw"Edge already in source and/or target incidency list!";return u.source.edges.push(u),u.target.edges.push(u),u}},a.prototype.remove=function(s){if(s instanceof n){var l=s;if(l.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(l==this.rootGraph||l.parent!=null&&l.parent.graphManager==this))throw"Invalid parent node!";var u=[];u=u.concat(l.getEdges());for(var h,f=u.length,d=0;d<f;d++)h=u[d],l.remove(h);var p=[];p=p.concat(l.getNodes());var m;f=p.length;for(var d=0;d<f;d++)m=p[d],l.remove(m);l==this.rootGraph&&this.setRootGraph(null);var g=this.graphs.indexOf(l);this.graphs.splice(g,1),l.parent=null}else if(s instanceof i){if(h=s,h==null)throw"Edge is null!";if(!h.isInterGraph)throw"Not an inter-graph edge!";if(!(h.source!=null&&h.target!=null))throw"Source and/or target is null!";if(!(h.source.edges.indexOf(h)!=-1&&h.target.edges.indexOf(h)!=-1))throw"Source and/or target doesn't know this edge!";var g=h.source.edges.indexOf(h);if(h.source.edges.splice(g,1),g=h.target.edges.indexOf(h),h.target.edges.splice(g,1),!(h.source.owner!=null&&h.source.owner.getGraphManager()!=null))throw"Edge owner graph or owner graph manager is null!";if(h.source.owner.getGraphManager().edges.indexOf(h)==-1)throw"Not in owner graph manager's edge list!";var g=h.source.owner.getGraphManager().edges.indexOf(h);h.source.owner.getGraphManager().edges.splice(g,1)}},a.prototype.updateBounds=function(){this.rootGraph.updateBounds(!0)},a.prototype.getGraphs=function(){return this.graphs},a.prototype.getAllNodes=function(){if(this.allNodes==null){for(var s=[],l=this.getGraphs(),u=l.length,h=0;h<u;h++)s=s.concat(l[h].getNodes());this.allNodes=s}return this.allNodes},a.prototype.resetAllNodes=function(){this.allNodes=null},a.prototype.resetAllEdges=function(){this.allEdges=null},a.prototype.resetAllNodesToApplyGravitation=function(){this.allNodesToApplyGravitation=null},a.prototype.getAllEdges=function(){if(this.allEdges==null){for(var s=[],l=this.getGraphs(),u=l.length,h=0;h<l.length;h++)s=s.concat(l[h].getEdges());s=s.concat(this.edges),this.allEdges=s}return this.allEdges},a.prototype.getAllNodesToApplyGravitation=function(){return this.allNodesToApplyGravitation},a.prototype.setAllNodesToApplyGravitation=function(s){if(this.allNodesToApplyGravitation!=null)throw"assert failed";this.allNodesToApplyGravitation=s},a.prototype.getRoot=function(){return this.rootGraph},a.prototype.setRootGraph=function(s){if(s.getGraphManager()!=this)throw"Root not in this graph mgr!";this.rootGraph=s,s.parent==null&&(s.parent=this.layout.newNode("Root node"))},a.prototype.getLayout=function(){return this.layout},a.prototype.isOneAncestorOfOther=function(s,l){if(!(s!=null&&l!=null))throw"assert failed";if(s==l)return!0;var u=s.getOwner(),h;do{if(h=u.getParent(),h==null)break;if(h==l)return!0;if(u=h.getOwner(),u==null)break}while(!0);u=l.getOwner();do{if(h=u.getParent(),h==null)break;if(h==s)return!0;if(u=h.getOwner(),u==null)break}while(!0);return!1},a.prototype.calcLowestCommonAncestors=function(){for(var s,l,u,h,f,d=this.getAllEdges(),p=d.length,m=0;m<p;m++){if(s=d[m],l=s.source,u=s.target,s.lca=null,s.sourceInLca=l,s.targetInLca=u,l==u){s.lca=l.getOwner();continue}for(h=l.getOwner();s.lca==null;){for(s.targetInLca=u,f=u.getOwner();s.lca==null;){if(f==h){s.lca=f;break}if(f==this.rootGraph)break;if(s.lca!=null)throw"assert failed";s.targetInLca=f.getParent(),f=s.targetInLca.getOwner()}if(h==this.rootGraph)break;s.lca==null&&(s.sourceInLca=h.getParent(),h=s.sourceInLca.getOwner())}if(s.lca==null)throw"assert failed"}},a.prototype.calcLowestCommonAncestor=function(s,l){if(s==l)return s.getOwner();var u=s.getOwner();do{if(u==null)break;var h=l.getOwner();do{if(h==null)break;if(h==u)return h;h=h.getParent().getOwner()}while(!0);u=u.getParent().getOwner()}while(!0);return u},a.prototype.calcInclusionTreeDepths=function(s,l){s==null&&l==null&&(s=this.rootGraph,l=1);for(var u,h=s.getNodes(),f=h.length,d=0;d<f;d++)u=h[d],u.inclusionTreeDepth=l,u.child!=null&&this.calcInclusionTreeDepths(u.child,l+1)},a.prototype.includesInvalidEdge=function(){for(var s,l=this.edges.length,u=0;u<l;u++)if(s=this.edges[u],this.isOneAncestorOfOther(s.source,s.target))return!0;return!1},t.exports=a},function(t,e,r){"use strict";var n=r(0);function i(){}o(i,"FDLayoutConstants");for(var a in n)i[a]=n[a];i.MAX_ITERATIONS=2500,i.DEFAULT_EDGE_LENGTH=50,i.DEFAULT_SPRING_STRENGTH=.45,i.DEFAULT_REPULSION_STRENGTH=4500,i.DEFAULT_GRAVITY_STRENGTH=.4,i.DEFAULT_COMPOUND_GRAVITY_STRENGTH=1,i.DEFAULT_GRAVITY_RANGE_FACTOR=3.8,i.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=1.5,i.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION=!0,i.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION=!0,i.DEFAULT_COOLING_FACTOR_INCREMENTAL=.3,i.COOLING_ADAPTATION_FACTOR=.33,i.ADAPTATION_LOWER_NODE_LIMIT=1e3,i.ADAPTATION_UPPER_NODE_LIMIT=5e3,i.MAX_NODE_DISPLACEMENT_INCREMENTAL=100,i.MAX_NODE_DISPLACEMENT=i.MAX_NODE_DISPLACEMENT_INCREMENTAL*3,i.MIN_REPULSION_DIST=i.DEFAULT_EDGE_LENGTH/10,i.CONVERGENCE_CHECK_PERIOD=100,i.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=.1,i.MIN_EDGE_LENGTH=1,i.GRID_CALCULATION_CHECK_PERIOD=10,t.exports=i},function(t,e,r){"use strict";var n=r(12);function i(){}o(i,"IGeometry"),i.calcSeparationAmount=function(a,s,l,u){if(!a.intersects(s))throw"assert failed";var h=new Array(2);this.decideDirectionsForOverlappingNodes(a,s,h),l[0]=Math.min(a.getRight(),s.getRight())-Math.max(a.x,s.x),l[1]=Math.min(a.getBottom(),s.getBottom())-Math.max(a.y,s.y),a.getX()<=s.getX()&&a.getRight()>=s.getRight()?l[0]+=Math.min(s.getX()-a.getX(),a.getRight()-s.getRight()):s.getX()<=a.getX()&&s.getRight()>=a.getRight()&&(l[0]+=Math.min(a.getX()-s.getX(),s.getRight()-a.getRight())),a.getY()<=s.getY()&&a.getBottom()>=s.getBottom()?l[1]+=Math.min(s.getY()-a.getY(),a.getBottom()-s.getBottom()):s.getY()<=a.getY()&&s.getBottom()>=a.getBottom()&&(l[1]+=Math.min(a.getY()-s.getY(),s.getBottom()-a.getBottom()));var f=Math.abs((s.getCenterY()-a.getCenterY())/(s.getCenterX()-a.getCenterX()));s.getCenterY()===a.getCenterY()&&s.getCenterX()===a.getCenterX()&&(f=1);var d=f*l[0],p=l[1]/f;l[0]<p?p=l[0]:d=l[1],l[0]=-1*h[0]*(p/2+u),l[1]=-1*h[1]*(d/2+u)},i.decideDirectionsForOverlappingNodes=function(a,s,l){a.getCenterX()<s.getCenterX()?l[0]=-1:l[0]=1,a.getCenterY()<s.getCenterY()?l[1]=-1:l[1]=1},i.getIntersection2=function(a,s,l){var u=a.getCenterX(),h=a.getCenterY(),f=s.getCenterX(),d=s.getCenterY();if(a.intersects(s))return l[0]=u,l[1]=h,l[2]=f,l[3]=d,!0;var p=a.getX(),m=a.getY(),g=a.getRight(),y=a.getX(),x=a.getBottom(),v=a.getRight(),b=a.getWidthHalf(),T=a.getHeightHalf(),S=s.getX(),w=s.getY(),E=s.getRight(),_=s.getX(),A=s.getBottom(),D=s.getRight(),O=s.getWidthHalf(),R=s.getHeightHalf(),k=!1,L=!1;if(u===f){if(h>d)return l[0]=u,l[1]=m,l[2]=f,l[3]=A,!1;if(h<d)return l[0]=u,l[1]=x,l[2]=f,l[3]=w,!1}else if(h===d){if(u>f)return l[0]=p,l[1]=h,l[2]=E,l[3]=d,!1;if(u<f)return l[0]=g,l[1]=h,l[2]=S,l[3]=d,!1}else{var C=a.height/a.width,I=s.height/s.width,M=(d-h)/(f-u),P=void 0,B=void 0,F=void 0,G=void 0,$=void 0,U=void 0;if(-C===M?u>f?(l[0]=y,l[1]=x,k=!0):(l[0]=g,l[1]=m,k=!0):C===M&&(u>f?(l[0]=p,l[1]=m,k=!0):(l[0]=v,l[1]=x,k=!0)),-I===M?f>u?(l[2]=_,l[3]=A,L=!0):(l[2]=E,l[3]=w,L=!0):I===M&&(f>u?(l[2]=S,l[3]=w,L=!0):(l[2]=D,l[3]=A,L=!0)),k&&L)return!1;if(u>f?h>d?(P=this.getCardinalDirection(C,M,4),B=this.getCardinalDirection(I,M,2)):(P=this.getCardinalDirection(-C,M,3),B=this.getCardinalDirection(-I,M,1)):h>d?(P=this.getCardinalDirection(-C,M,1),B=this.getCardinalDirection(-I,M,3)):(P=this.getCardinalDirection(C,M,2),B=this.getCardinalDirection(I,M,4)),!k)switch(P){case 1:G=m,F=u+-T/M,l[0]=F,l[1]=G;break;case 2:F=v,G=h+b*M,l[0]=F,l[1]=G;break;case 3:G=x,F=u+T/M,l[0]=F,l[1]=G;break;case 4:F=y,G=h+-b*M,l[0]=F,l[1]=G;break}if(!L)switch(B){case 1:U=w,$=f+-R/M,l[2]=$,l[3]=U;break;case 2:$=D,U=d+O*M,l[2]=$,l[3]=U;break;case 3:U=A,$=f+R/M,l[2]=$,l[3]=U;break;case 4:$=_,U=d+-O*M,l[2]=$,l[3]=U;break}}return!1},i.getCardinalDirection=function(a,s,l){return a>s?l:1+l%4},i.getIntersection=function(a,s,l,u){if(u==null)return this.getIntersection2(a,s,l);var h=a.x,f=a.y,d=s.x,p=s.y,m=l.x,g=l.y,y=u.x,x=u.y,v=void 0,b=void 0,T=void 0,S=void 0,w=void 0,E=void 0,_=void 0,A=void 0,D=void 0;return T=p-f,w=h-d,_=d*f-h*p,S=x-g,E=m-y,A=y*g-m*x,D=T*E-S*w,D===0?null:(v=(w*A-E*_)/D,b=(S*_-T*A)/D,new n(v,b))},i.angleOfVector=function(a,s,l,u){var h=void 0;return a!==l?(h=Math.atan((u-s)/(l-a)),l<a?h+=Math.PI:u<s&&(h+=this.TWO_PI)):u<s?h=this.ONE_AND_HALF_PI:h=this.HALF_PI,h},i.doIntersect=function(a,s,l,u){var h=a.x,f=a.y,d=s.x,p=s.y,m=l.x,g=l.y,y=u.x,x=u.y,v=(d-h)*(x-g)-(y-m)*(p-f);if(v===0)return!1;var b=((x-g)*(y-h)+(m-y)*(x-f))/v,T=((f-p)*(y-h)+(d-h)*(x-f))/v;return 0<b&&b<1&&0<T&&T<1},i.HALF_PI=.5*Math.PI,i.ONE_AND_HALF_PI=1.5*Math.PI,i.TWO_PI=2*Math.PI,i.THREE_PI=3*Math.PI,t.exports=i},function(t,e,r){"use strict";function n(){}o(n,"IMath"),n.sign=function(i){return i>0?1:i<0?-1:0},n.floor=function(i){return i<0?Math.ceil(i):Math.floor(i)},n.ceil=function(i){return i<0?Math.floor(i):Math.ceil(i)},t.exports=n},function(t,e,r){"use strict";function n(){}o(n,"Integer"),n.MAX_VALUE=2147483647,n.MIN_VALUE=-2147483648,t.exports=n},function(t,e,r){"use strict";var n=function(){function h(f,d){for(var p=0;p<d.length;p++){var m=d[p];m.enumerable=m.enumerable||!1,m.configurable=!0,"value"in m&&(m.writable=!0),Object.defineProperty(f,m.key,m)}}return o(h,"defineProperties"),function(f,d,p){return d&&h(f.prototype,d),p&&h(f,p),f}}();function i(h,f){if(!(h instanceof f))throw new TypeError("Cannot call a class as a function")}o(i,"_classCallCheck");var a=o(function(f){return{value:f,next:null,prev:null}},"nodeFrom"),s=o(function(f,d,p,m){return f!==null?f.next=d:m.head=d,p!==null?p.prev=d:m.tail=d,d.prev=f,d.next=p,m.length++,d},"add"),l=o(function(f,d){var p=f.prev,m=f.next;return p!==null?p.next=m:d.head=m,m!==null?m.prev=p:d.tail=p,f.prev=f.next=null,d.length--,f},"_remove"),u=function(){function h(f){var d=this;i(this,h),this.length=0,this.head=null,this.tail=null,f?.forEach(function(p){return d.push(p)})}return o(h,"LinkedList"),n(h,[{key:"size",value:o(function(){return this.length},"size")},{key:"insertBefore",value:o(function(d,p){return s(p.prev,a(d),p,this)},"insertBefore")},{key:"insertAfter",value:o(function(d,p){return s(p,a(d),p.next,this)},"insertAfter")},{key:"insertNodeBefore",value:o(function(d,p){return s(p.prev,d,p,this)},"insertNodeBefore")},{key:"insertNodeAfter",value:o(function(d,p){return s(p,d,p.next,this)},"insertNodeAfter")},{key:"push",value:o(function(d){return s(this.tail,a(d),null,this)},"push")},{key:"unshift",value:o(function(d){return s(null,a(d),this.head,this)},"unshift")},{key:"remove",value:o(function(d){return l(d,this)},"remove")},{key:"pop",value:o(function(){return l(this.tail,this).value},"pop")},{key:"popNode",value:o(function(){return l(this.tail,this)},"popNode")},{key:"shift",value:o(function(){return l(this.head,this).value},"shift")},{key:"shiftNode",value:o(function(){return l(this.head,this)},"shiftNode")},{key:"get_object_at",value:o(function(d){if(d<=this.length()){for(var p=1,m=this.head;p<d;)m=m.next,p++;return m.value}},"get_object_at")},{key:"set_object_at",value:o(function(d,p){if(d<=this.length()){for(var m=1,g=this.head;m<d;)g=g.next,m++;g.value=p}},"set_object_at")}]),h}();t.exports=u},function(t,e,r){"use strict";function n(i,a,s){this.x=null,this.y=null,i==null&&a==null&&s==null?(this.x=0,this.y=0):typeof i=="number"&&typeof a=="number"&&s==null?(this.x=i,this.y=a):i.constructor.name=="Point"&&a==null&&s==null&&(s=i,this.x=s.x,this.y=s.y)}o(n,"Point"),n.prototype.getX=function(){return this.x},n.prototype.getY=function(){return this.y},n.prototype.getLocation=function(){return new n(this.x,this.y)},n.prototype.setLocation=function(i,a,s){i.constructor.name=="Point"&&a==null&&s==null?(s=i,this.setLocation(s.x,s.y)):typeof i=="number"&&typeof a=="number"&&s==null&&(parseInt(i)==i&&parseInt(a)==a?this.move(i,a):(this.x=Math.floor(i+.5),this.y=Math.floor(a+.5)))},n.prototype.move=function(i,a){this.x=i,this.y=a},n.prototype.translate=function(i,a){this.x+=i,this.y+=a},n.prototype.equals=function(i){if(i.constructor.name=="Point"){var a=i;return this.x==a.x&&this.y==a.y}return this==i},n.prototype.toString=function(){return new n().constructor.name+"[x="+this.x+",y="+this.y+"]"},t.exports=n},function(t,e,r){"use strict";function n(i,a,s,l){this.x=0,this.y=0,this.width=0,this.height=0,i!=null&&a!=null&&s!=null&&l!=null&&(this.x=i,this.y=a,this.width=s,this.height=l)}o(n,"RectangleD"),n.prototype.getX=function(){return this.x},n.prototype.setX=function(i){this.x=i},n.prototype.getY=function(){return this.y},n.prototype.setY=function(i){this.y=i},n.prototype.getWidth=function(){return this.width},n.prototype.setWidth=function(i){this.width=i},n.prototype.getHeight=function(){return this.height},n.prototype.setHeight=function(i){this.height=i},n.prototype.getRight=function(){return this.x+this.width},n.prototype.getBottom=function(){return this.y+this.height},n.prototype.intersects=function(i){return!(this.getRight()<i.x||this.getBottom()<i.y||i.getRight()<this.x||i.getBottom()<this.y)},n.prototype.getCenterX=function(){return this.x+this.width/2},n.prototype.getMinX=function(){return this.getX()},n.prototype.getMaxX=function(){return this.getX()+this.width},n.prototype.getCenterY=function(){return this.y+this.height/2},n.prototype.getMinY=function(){return this.getY()},n.prototype.getMaxY=function(){return this.getY()+this.height},n.prototype.getWidthHalf=function(){return this.width/2},n.prototype.getHeightHalf=function(){return this.height/2},t.exports=n},function(t,e,r){"use strict";var n=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(a){return typeof a}:function(a){return a&&typeof Symbol=="function"&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a};function i(){}o(i,"UniqueIDGeneretor"),i.lastID=0,i.createID=function(a){return i.isPrimitive(a)?a:(a.uniqueID!=null||(a.uniqueID=i.getString(),i.lastID++),a.uniqueID)},i.getString=function(a){return a==null&&(a=i.lastID),"Object#"+a},i.isPrimitive=function(a){var s=typeof a>"u"?"undefined":n(a);return a==null||s!="object"&&s!="function"},t.exports=i},function(t,e,r){"use strict";function n(m){if(Array.isArray(m)){for(var g=0,y=Array(m.length);g<m.length;g++)y[g]=m[g];return y}else return Array.from(m)}o(n,"_toConsumableArray");var i=r(0),a=r(6),s=r(3),l=r(1),u=r(5),h=r(4),f=r(17),d=r(27);function p(m){d.call(this),this.layoutQuality=i.QUALITY,this.createBendsAsNeeded=i.DEFAULT_CREATE_BENDS_AS_NEEDED,this.incremental=i.DEFAULT_INCREMENTAL,this.animationOnLayout=i.DEFAULT_ANIMATION_ON_LAYOUT,this.animationDuringLayout=i.DEFAULT_ANIMATION_DURING_LAYOUT,this.animationPeriod=i.DEFAULT_ANIMATION_PERIOD,this.uniformLeafNodeSizes=i.DEFAULT_UNIFORM_LEAF_NODE_SIZES,this.edgeToDummyNodes=new Map,this.graphManager=new a(this),this.isLayoutFinished=!1,this.isSubLayout=!1,this.isRemoteUse=!1,m!=null&&(this.isRemoteUse=m)}o(p,"Layout"),p.RANDOM_SEED=1,p.prototype=Object.create(d.prototype),p.prototype.getGraphManager=function(){return this.graphManager},p.prototype.getAllNodes=function(){return this.graphManager.getAllNodes()},p.prototype.getAllEdges=function(){return this.graphManager.getAllEdges()},p.prototype.getAllNodesToApplyGravitation=function(){return this.graphManager.getAllNodesToApplyGravitation()},p.prototype.newGraphManager=function(){var m=new a(this);return this.graphManager=m,m},p.prototype.newGraph=function(m){return new u(null,this.graphManager,m)},p.prototype.newNode=function(m){return new s(this.graphManager,m)},p.prototype.newEdge=function(m){return new l(null,null,m)},p.prototype.checkLayoutSuccess=function(){return this.graphManager.getRoot()==null||this.graphManager.getRoot().getNodes().length==0||this.graphManager.includesInvalidEdge()},p.prototype.runLayout=function(){this.isLayoutFinished=!1,this.tilingPreLayout&&this.tilingPreLayout(),this.initParameters();var m;return this.checkLayoutSuccess()?m=!1:m=this.layout(),i.ANIMATE==="during"?!1:(m&&(this.isSubLayout||this.doPostLayout()),this.tilingPostLayout&&this.tilingPostLayout(),this.isLayoutFinished=!0,m)},p.prototype.doPostLayout=function(){this.incremental||this.transform(),this.update()},p.prototype.update2=function(){if(this.createBendsAsNeeded&&(this.createBendpointsFromDummyNodes(),this.graphManager.resetAllEdges()),!this.isRemoteUse){for(var m,g=this.graphManager.getAllEdges(),y=0;y<g.length;y++)m=g[y];for(var x,v=this.graphManager.getRoot().getNodes(),y=0;y<v.length;y++)x=v[y];this.update(this.graphManager.getRoot())}},p.prototype.update=function(m){if(m==null)this.update2();else if(m instanceof s){var g=m;if(g.getChild()!=null)for(var y=g.getChild().getNodes(),x=0;x<y.length;x++)update(y[x]);if(g.vGraphObject!=null){var v=g.vGraphObject;v.update(g)}}else if(m instanceof l){var b=m;if(b.vGraphObject!=null){var T=b.vGraphObject;T.update(b)}}else if(m instanceof u){var S=m;if(S.vGraphObject!=null){var w=S.vGraphObject;w.update(S)}}},p.prototype.initParameters=function(){this.isSubLayout||(this.layoutQuality=i.QUALITY,this.animationDuringLayout=i.DEFAULT_ANIMATION_DURING_LAYOUT,this.animationPeriod=i.DEFAULT_ANIMATION_PERIOD,this.animationOnLayout=i.DEFAULT_ANIMATION_ON_LAYOUT,this.incremental=i.DEFAULT_INCREMENTAL,this.createBendsAsNeeded=i.DEFAULT_CREATE_BENDS_AS_NEEDED,this.uniformLeafNodeSizes=i.DEFAULT_UNIFORM_LEAF_NODE_SIZES),this.animationDuringLayout&&(this.animationOnLayout=!1)},p.prototype.transform=function(m){if(m==null)this.transform(new h(0,0));else{var g=new f,y=this.graphManager.getRoot().updateLeftTop();if(y!=null){g.setWorldOrgX(m.x),g.setWorldOrgY(m.y),g.setDeviceOrgX(y.x),g.setDeviceOrgY(y.y);for(var x=this.getAllNodes(),v,b=0;b<x.length;b++)v=x[b],v.transform(g)}}},p.prototype.positionNodesRandomly=function(m){if(m==null)this.positionNodesRandomly(this.getGraphManager().getRoot()),this.getGraphManager().getRoot().updateBounds(!0);else for(var g,y,x=m.getNodes(),v=0;v<x.length;v++)g=x[v],y=g.getChild(),y==null||y.getNodes().length==0?g.scatter():(this.positionNodesRandomly(y),g.updateBounds())},p.prototype.getFlatForest=function(){for(var m=[],g=!0,y=this.graphManager.getRoot().getNodes(),x=!0,v=0;v<y.length;v++)y[v].getChild()!=null&&(x=!1);if(!x)return m;var b=new Set,T=[],S=new Map,w=[];for(w=w.concat(y);w.length>0&&g;){for(T.push(w[0]);T.length>0&&g;){var E=T[0];T.splice(0,1),b.add(E);for(var _=E.getEdges(),v=0;v<_.length;v++){var A=_[v].getOtherEnd(E);if(S.get(E)!=A)if(!b.has(A))T.push(A),S.set(A,E);else{g=!1;break}}}if(!g)m=[];else{var D=[].concat(n(b));m.push(D);for(var v=0;v<D.length;v++){var O=D[v],R=w.indexOf(O);R>-1&&w.splice(R,1)}b=new Set,S=new Map}}return m},p.prototype.createDummyNodesForBendpoints=function(m){for(var g=[],y=m.source,x=this.graphManager.calcLowestCommonAncestor(m.source,m.target),v=0;v<m.bendpoints.length;v++){var b=this.newNode(null);b.setRect(new Point(0,0),new Dimension(1,1)),x.add(b);var T=this.newEdge(null);this.graphManager.add(T,y,b),g.add(b),y=b}var T=this.newEdge(null);return this.graphManager.add(T,y,m.target),this.edgeToDummyNodes.set(m,g),m.isInterGraph()?this.graphManager.remove(m):x.remove(m),g},p.prototype.createBendpointsFromDummyNodes=function(){var m=[];m=m.concat(this.graphManager.getAllEdges()),m=[].concat(n(this.edgeToDummyNodes.keys())).concat(m);for(var g=0;g<m.length;g++){var y=m[g];if(y.bendpoints.length>0){for(var x=this.edgeToDummyNodes.get(y),v=0;v<x.length;v++){var b=x[v],T=new h(b.getCenterX(),b.getCenterY()),S=y.bendpoints.get(v);S.x=T.x,S.y=T.y,b.getOwner().remove(b)}this.graphManager.add(y,y.source,y.target)}}},p.transform=function(m,g,y,x){if(y!=null&&x!=null){var v=g;if(m<=50){var b=g/y;v-=(g-b)/50*(50-m)}else{var T=g*x;v+=(T-g)/50*(m-50)}return v}else{var S,w;return m<=50?(S=9*g/500,w=g/10):(S=9*g/50,w=-8*g),S*m+w}},p.findCenterOfTree=function(m){var g=[];g=g.concat(m);var y=[],x=new Map,v=!1,b=null;(g.length==1||g.length==2)&&(v=!0,b=g[0]);for(var T=0;T<g.length;T++){var S=g[T],w=S.getNeighborsList().size;x.set(S,S.getNeighborsList().size),w==1&&y.push(S)}var E=[];for(E=E.concat(y);!v;){var _=[];_=_.concat(E),E=[];for(var T=0;T<g.length;T++){var S=g[T],A=g.indexOf(S);A>=0&&g.splice(A,1);var D=S.getNeighborsList();D.forEach(function(k){if(y.indexOf(k)<0){var L=x.get(k),C=L-1;C==1&&E.push(k),x.set(k,C)}})}y=y.concat(E),(g.length==1||g.length==2)&&(v=!0,b=g[0])}return b},p.prototype.setGraphManager=function(m){this.graphManager=m},t.exports=p},function(t,e,r){"use strict";function n(){}o(n,"RandomSeed"),n.seed=1,n.x=0,n.nextDouble=function(){return n.x=Math.sin(n.seed++)*1e4,n.x-Math.floor(n.x)},t.exports=n},function(t,e,r){"use strict";var n=r(4);function i(a,s){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}o(i,"Transform"),i.prototype.getWorldOrgX=function(){return this.lworldOrgX},i.prototype.setWorldOrgX=function(a){this.lworldOrgX=a},i.prototype.getWorldOrgY=function(){return this.lworldOrgY},i.prototype.setWorldOrgY=function(a){this.lworldOrgY=a},i.prototype.getWorldExtX=function(){return this.lworldExtX},i.prototype.setWorldExtX=function(a){this.lworldExtX=a},i.prototype.getWorldExtY=function(){return this.lworldExtY},i.prototype.setWorldExtY=function(a){this.lworldExtY=a},i.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},i.prototype.setDeviceOrgX=function(a){this.ldeviceOrgX=a},i.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},i.prototype.setDeviceOrgY=function(a){this.ldeviceOrgY=a},i.prototype.getDeviceExtX=function(){return this.ldeviceExtX},i.prototype.setDeviceExtX=function(a){this.ldeviceExtX=a},i.prototype.getDeviceExtY=function(){return this.ldeviceExtY},i.prototype.setDeviceExtY=function(a){this.ldeviceExtY=a},i.prototype.transformX=function(a){var s=0,l=this.lworldExtX;return l!=0&&(s=this.ldeviceOrgX+(a-this.lworldOrgX)*this.ldeviceExtX/l),s},i.prototype.transformY=function(a){var s=0,l=this.lworldExtY;return l!=0&&(s=this.ldeviceOrgY+(a-this.lworldOrgY)*this.ldeviceExtY/l),s},i.prototype.inverseTransformX=function(a){var s=0,l=this.ldeviceExtX;return l!=0&&(s=this.lworldOrgX+(a-this.ldeviceOrgX)*this.lworldExtX/l),s},i.prototype.inverseTransformY=function(a){var s=0,l=this.ldeviceExtY;return l!=0&&(s=this.lworldOrgY+(a-this.ldeviceOrgY)*this.lworldExtY/l),s},i.prototype.inverseTransformPoint=function(a){var s=new n(this.inverseTransformX(a.x),this.inverseTransformY(a.y));return s},t.exports=i},function(t,e,r){"use strict";function n(d){if(Array.isArray(d)){for(var p=0,m=Array(d.length);p<d.length;p++)m[p]=d[p];return m}else return Array.from(d)}o(n,"_toConsumableArray");var i=r(15),a=r(7),s=r(0),l=r(8),u=r(9);function h(){i.call(this),this.useSmartIdealEdgeLengthCalculation=a.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.idealEdgeLength=a.DEFAULT_EDGE_LENGTH,this.springConstant=a.DEFAULT_SPRING_STRENGTH,this.repulsionConstant=a.DEFAULT_REPULSION_STRENGTH,this.gravityConstant=a.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=a.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=a.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=a.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.displacementThresholdPerNode=3*a.DEFAULT_EDGE_LENGTH/100,this.coolingFactor=a.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.initialCoolingFactor=a.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.totalDisplacement=0,this.oldTotalDisplacement=0,this.maxIterations=a.MAX_ITERATIONS}o(h,"FDLayout"),h.prototype=Object.create(i.prototype);for(var f in i)h[f]=i[f];h.prototype.initParameters=function(){i.prototype.initParameters.call(this,arguments),this.totalIterations=0,this.notAnimatedIterations=0,this.useFRGridVariant=a.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION,this.grid=[]},h.prototype.calcIdealEdgeLengths=function(){for(var d,p,m,g,y,x,v=this.getGraphManager().getAllEdges(),b=0;b<v.length;b++)d=v[b],d.idealLength=this.idealEdgeLength,d.isInterGraph&&(m=d.getSource(),g=d.getTarget(),y=d.getSourceInLca().getEstimatedSize(),x=d.getTargetInLca().getEstimatedSize(),this.useSmartIdealEdgeLengthCalculation&&(d.idealLength+=y+x-2*s.SIMPLE_NODE_SIZE),p=d.getLca().getInclusionTreeDepth(),d.idealLength+=a.DEFAULT_EDGE_LENGTH*a.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR*(m.getInclusionTreeDepth()+g.getInclusionTreeDepth()-2*p))},h.prototype.initSpringEmbedder=function(){var d=this.getAllNodes().length;this.incremental?(d>a.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*a.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-a.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT_INCREMENTAL):(d>a.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(a.COOLING_ADAPTATION_FACTOR,1-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*(1-a.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},h.prototype.calcSpringForces=function(){for(var d=this.getAllEdges(),p,m=0;m<d.length;m++)p=d[m],this.calcSpringForce(p,p.idealLength)},h.prototype.calcRepulsionForces=function(){var d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,m,g,y,x,v=this.getAllNodes(),b;if(this.useFRGridVariant)for(this.totalIterations%a.GRID_CALCULATION_CHECK_PERIOD==1&&d&&this.updateGrid(),b=new Set,m=0;m<v.length;m++)y=v[m],this.calculateRepulsionForceOfANode(y,b,d,p),b.add(y);else for(m=0;m<v.length;m++)for(y=v[m],g=m+1;g<v.length;g++)x=v[g],y.getOwner()==x.getOwner()&&this.calcRepulsionForce(y,x)},h.prototype.calcGravitationalForces=function(){for(var d,p=this.getAllNodesToApplyGravitation(),m=0;m<p.length;m++)d=p[m],this.calcGravitationalForce(d)},h.prototype.moveNodes=function(){for(var d=this.getAllNodes(),p,m=0;m<d.length;m++)p=d[m],p.move()},h.prototype.calcSpringForce=function(d,p){var m=d.getSource(),g=d.getTarget(),y,x,v,b;if(this.uniformLeafNodeSizes&&m.getChild()==null&&g.getChild()==null)d.updateLengthSimple();else if(d.updateLength(),d.isOverlapingSourceAndTarget)return;y=d.getLength(),y!=0&&(x=this.springConstant*(y-p),v=x*(d.lengthX/y),b=x*(d.lengthY/y),m.springForceX+=v,m.springForceY+=b,g.springForceX-=v,g.springForceY-=b)},h.prototype.calcRepulsionForce=function(d,p){var m=d.getRect(),g=p.getRect(),y=new Array(2),x=new Array(4),v,b,T,S,w,E,_;if(m.intersects(g)){l.calcSeparationAmount(m,g,y,a.DEFAULT_EDGE_LENGTH/2),E=2*y[0],_=2*y[1];var A=d.noOfChildren*p.noOfChildren/(d.noOfChildren+p.noOfChildren);d.repulsionForceX-=A*E,d.repulsionForceY-=A*_,p.repulsionForceX+=A*E,p.repulsionForceY+=A*_}else this.uniformLeafNodeSizes&&d.getChild()==null&&p.getChild()==null?(v=g.getCenterX()-m.getCenterX(),b=g.getCenterY()-m.getCenterY()):(l.getIntersection(m,g,x),v=x[2]-x[0],b=x[3]-x[1]),Math.abs(v)<a.MIN_REPULSION_DIST&&(v=u.sign(v)*a.MIN_REPULSION_DIST),Math.abs(b)<a.MIN_REPULSION_DIST&&(b=u.sign(b)*a.MIN_REPULSION_DIST),T=v*v+b*b,S=Math.sqrt(T),w=this.repulsionConstant*d.noOfChildren*p.noOfChildren/T,E=w*v/S,_=w*b/S,d.repulsionForceX-=E,d.repulsionForceY-=_,p.repulsionForceX+=E,p.repulsionForceY+=_},h.prototype.calcGravitationalForce=function(d){var p,m,g,y,x,v,b,T;p=d.getOwner(),m=(p.getRight()+p.getLeft())/2,g=(p.getTop()+p.getBottom())/2,y=d.getCenterX()-m,x=d.getCenterY()-g,v=Math.abs(y)+d.getWidth()/2,b=Math.abs(x)+d.getHeight()/2,d.getOwner()==this.graphManager.getRoot()?(T=p.getEstimatedSize()*this.gravityRangeFactor,(v>T||b>T)&&(d.gravitationForceX=-this.gravityConstant*y,d.gravitationForceY=-this.gravityConstant*x)):(T=p.getEstimatedSize()*this.compoundGravityRangeFactor,(v>T||b>T)&&(d.gravitationForceX=-this.gravityConstant*y*this.compoundGravityConstant,d.gravitationForceY=-this.gravityConstant*x*this.compoundGravityConstant))},h.prototype.isConverged=function(){var d,p=!1;return this.totalIterations>this.maxIterations/3&&(p=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),d=this.totalDisplacement<this.totalDisplacementThreshold,this.oldTotalDisplacement=this.totalDisplacement,d||p},h.prototype.animate=function(){this.animationDuringLayout&&!this.isSubLayout&&(this.notAnimatedIterations==this.animationPeriod?(this.update(),this.notAnimatedIterations=0):this.notAnimatedIterations++)},h.prototype.calcNoOfChildrenForAllNodes=function(){for(var d,p=this.graphManager.getAllNodes(),m=0;m<p.length;m++)d=p[m],d.noOfChildren=d.getNoOfChildren()},h.prototype.calcGrid=function(d){var p=0,m=0;p=parseInt(Math.ceil((d.getRight()-d.getLeft())/this.repulsionRange)),m=parseInt(Math.ceil((d.getBottom()-d.getTop())/this.repulsionRange));for(var g=new Array(p),y=0;y<p;y++)g[y]=new Array(m);for(var y=0;y<p;y++)for(var x=0;x<m;x++)g[y][x]=new Array;return g},h.prototype.addNodeToGrid=function(d,p,m){var g=0,y=0,x=0,v=0;g=parseInt(Math.floor((d.getRect().x-p)/this.repulsionRange)),y=parseInt(Math.floor((d.getRect().width+d.getRect().x-p)/this.repulsionRange)),x=parseInt(Math.floor((d.getRect().y-m)/this.repulsionRange)),v=parseInt(Math.floor((d.getRect().height+d.getRect().y-m)/this.repulsionRange));for(var b=g;b<=y;b++)for(var T=x;T<=v;T++)this.grid[b][T].push(d),d.setGridCoordinates(g,y,x,v)},h.prototype.updateGrid=function(){var d,p,m=this.getAllNodes();for(this.grid=this.calcGrid(this.graphManager.getRoot()),d=0;d<m.length;d++)p=m[d],this.addNodeToGrid(p,this.graphManager.getRoot().getLeft(),this.graphManager.getRoot().getTop())},h.prototype.calculateRepulsionForceOfANode=function(d,p,m,g){if(this.totalIterations%a.GRID_CALCULATION_CHECK_PERIOD==1&&m||g){var y=new Set;d.surrounding=new Array;for(var x,v=this.grid,b=d.startX-1;b<d.finishX+2;b++)for(var T=d.startY-1;T<d.finishY+2;T++)if(!(b<0||T<0||b>=v.length||T>=v[0].length)){for(var S=0;S<v[b][T].length;S++)if(x=v[b][T][S],!(d.getOwner()!=x.getOwner()||d==x)&&!p.has(x)&&!y.has(x)){var w=Math.abs(d.getCenterX()-x.getCenterX())-(d.getWidth()/2+x.getWidth()/2),E=Math.abs(d.getCenterY()-x.getCenterY())-(d.getHeight()/2+x.getHeight()/2);w<=this.repulsionRange&&E<=this.repulsionRange&&y.add(x)}}d.surrounding=[].concat(n(y))}for(b=0;b<d.surrounding.length;b++)this.calcRepulsionForce(d,d.surrounding[b])},h.prototype.calcRepulsionRange=function(){return 0},t.exports=h},function(t,e,r){"use strict";var n=r(1),i=r(7);function a(l,u,h){n.call(this,l,u,h),this.idealLength=i.DEFAULT_EDGE_LENGTH}o(a,"FDLayoutEdge"),a.prototype=Object.create(n.prototype);for(var s in n)a[s]=n[s];t.exports=a},function(t,e,r){"use strict";var n=r(3);function i(s,l,u,h){n.call(this,s,l,u,h),this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0,this.startX=0,this.finishX=0,this.startY=0,this.finishY=0,this.surrounding=[]}o(i,"FDLayoutNode"),i.prototype=Object.create(n.prototype);for(var a in n)i[a]=n[a];i.prototype.setGridCoordinates=function(s,l,u,h){this.startX=s,this.finishX=l,this.startY=u,this.finishY=h},t.exports=i},function(t,e,r){"use strict";function n(i,a){this.width=0,this.height=0,i!==null&&a!==null&&(this.height=a,this.width=i)}o(n,"DimensionD"),n.prototype.getWidth=function(){return this.width},n.prototype.setWidth=function(i){this.width=i},n.prototype.getHeight=function(){return this.height},n.prototype.setHeight=function(i){this.height=i},t.exports=n},function(t,e,r){"use strict";var n=r(14);function i(){this.map={},this.keys=[]}o(i,"HashMap"),i.prototype.put=function(a,s){var l=n.createID(a);this.contains(l)||(this.map[l]=s,this.keys.push(a))},i.prototype.contains=function(a){var s=n.createID(a);return this.map[a]!=null},i.prototype.get=function(a){var s=n.createID(a);return this.map[s]},i.prototype.keySet=function(){return this.keys},t.exports=i},function(t,e,r){"use strict";var n=r(14);function i(){this.set={}}o(i,"HashSet"),i.prototype.add=function(a){var s=n.createID(a);this.contains(s)||(this.set[s]=a)},i.prototype.remove=function(a){delete this.set[n.createID(a)]},i.prototype.clear=function(){this.set={}},i.prototype.contains=function(a){return this.set[n.createID(a)]==a},i.prototype.isEmpty=function(){return this.size()===0},i.prototype.size=function(){return Object.keys(this.set).length},i.prototype.addAllTo=function(a){for(var s=Object.keys(this.set),l=s.length,u=0;u<l;u++)a.push(this.set[s[u]])},i.prototype.size=function(){return Object.keys(this.set).length},i.prototype.addAll=function(a){for(var s=a.length,l=0;l<s;l++){var u=a[l];this.add(u)}},t.exports=i},function(t,e,r){"use strict";var n=function(){function l(u,h){for(var f=0;f<h.length;f++){var d=h[f];d.enumerable=d.enumerable||!1,d.configurable=!0,"value"in d&&(d.writable=!0),Object.defineProperty(u,d.key,d)}}return o(l,"defineProperties"),function(u,h,f){return h&&l(u.prototype,h),f&&l(u,f),u}}();function i(l,u){if(!(l instanceof u))throw new TypeError("Cannot call a class as a function")}o(i,"_classCallCheck");var a=r(11),s=function(){function l(u,h){i(this,l),(h!==null||h!==void 0)&&(this.compareFunction=this._defaultCompareFunction);var f=void 0;u instanceof a?f=u.size():f=u.length,this._quicksort(u,0,f-1)}return o(l,"Quicksort"),n(l,[{key:"_quicksort",value:o(function(h,f,d){if(f<d){var p=this._partition(h,f,d);this._quicksort(h,f,p),this._quicksort(h,p+1,d)}},"_quicksort")},{key:"_partition",value:o(function(h,f,d){for(var p=this._get(h,f),m=f,g=d;;){for(;this.compareFunction(p,this._get(h,g));)g--;for(;this.compareFunction(this._get(h,m),p);)m++;if(m<g)this._swap(h,m,g),m++,g--;else return g}},"_partition")},{key:"_get",value:o(function(h,f){return h instanceof a?h.get_object_at(f):h[f]},"_get")},{key:"_set",value:o(function(h,f,d){h instanceof a?h.set_object_at(f,d):h[f]=d},"_set")},{key:"_swap",value:o(function(h,f,d){var p=this._get(h,f);this._set(h,f,this._get(h,d)),this._set(h,d,p)},"_swap")},{key:"_defaultCompareFunction",value:o(function(h,f){return f>h},"_defaultCompareFunction")}]),l}();t.exports=s},function(t,e,r){"use strict";var n=function(){function s(l,u){for(var h=0;h<u.length;h++){var f=u[h];f.enumerable=f.enumerable||!1,f.configurable=!0,"value"in f&&(f.writable=!0),Object.defineProperty(l,f.key,f)}}return o(s,"defineProperties"),function(l,u,h){return u&&s(l.prototype,u),h&&s(l,h),l}}();function i(s,l){if(!(s instanceof l))throw new TypeError("Cannot call a class as a function")}o(i,"_classCallCheck");var a=function(){function s(l,u){var h=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,f=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,d=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;i(this,s),this.sequence1=l,this.sequence2=u,this.match_score=h,this.mismatch_penalty=f,this.gap_penalty=d,this.iMax=l.length+1,this.jMax=u.length+1,this.grid=new Array(this.iMax);for(var p=0;p<this.iMax;p++){this.grid[p]=new Array(this.jMax);for(var m=0;m<this.jMax;m++)this.grid[p][m]=0}this.tracebackGrid=new Array(this.iMax);for(var g=0;g<this.iMax;g++){this.tracebackGrid[g]=new Array(this.jMax);for(var y=0;y<this.jMax;y++)this.tracebackGrid[g][y]=[null,null,null]}this.alignments=[],this.score=-1,this.computeGrids()}return o(s,"NeedlemanWunsch"),n(s,[{key:"getScore",value:o(function(){return this.score},"getScore")},{key:"getAlignments",value:o(function(){return this.alignments},"getAlignments")},{key:"computeGrids",value:o(function(){for(var u=1;u<this.jMax;u++)this.grid[0][u]=this.grid[0][u-1]+this.gap_penalty,this.tracebackGrid[0][u]=[!1,!1,!0];for(var h=1;h<this.iMax;h++)this.grid[h][0]=this.grid[h-1][0]+this.gap_penalty,this.tracebackGrid[h][0]=[!1,!0,!1];for(var f=1;f<this.iMax;f++)for(var d=1;d<this.jMax;d++){var p=void 0;this.sequence1[f-1]===this.sequence2[d-1]?p=this.grid[f-1][d-1]+this.match_score:p=this.grid[f-1][d-1]+this.mismatch_penalty;var m=this.grid[f-1][d]+this.gap_penalty,g=this.grid[f][d-1]+this.gap_penalty,y=[p,m,g],x=this.arrayAllMaxIndexes(y);this.grid[f][d]=y[x[0]],this.tracebackGrid[f][d]=[x.includes(0),x.includes(1),x.includes(2)]}this.score=this.grid[this.iMax-1][this.jMax-1]},"computeGrids")},{key:"alignmentTraceback",value:o(function(){var u=[];for(u.push({pos:[this.sequence1.length,this.sequence2.length],seq1:"",seq2:""});u[0];){var h=u[0],f=this.tracebackGrid[h.pos[0]][h.pos[1]];f[0]&&u.push({pos:[h.pos[0]-1,h.pos[1]-1],seq1:this.sequence1[h.pos[0]-1]+h.seq1,seq2:this.sequence2[h.pos[1]-1]+h.seq2}),f[1]&&u.push({pos:[h.pos[0]-1,h.pos[1]],seq1:this.sequence1[h.pos[0]-1]+h.seq1,seq2:"-"+h.seq2}),f[2]&&u.push({pos:[h.pos[0],h.pos[1]-1],seq1:"-"+h.seq1,seq2:this.sequence2[h.pos[1]-1]+h.seq2}),h.pos[0]===0&&h.pos[1]===0&&this.alignments.push({sequence1:h.seq1,sequence2:h.seq2}),u.shift()}return this.alignments},"alignmentTraceback")},{key:"getAllIndexes",value:o(function(u,h){for(var f=[],d=-1;(d=u.indexOf(h,d+1))!==-1;)f.push(d);return f},"getAllIndexes")},{key:"arrayAllMaxIndexes",value:o(function(u){return this.getAllIndexes(u,Math.max.apply(null,u))},"arrayAllMaxIndexes")}]),s}();t.exports=a},function(t,e,r){"use strict";var n=o(function(){},"layoutBase");n.FDLayout=r(18),n.FDLayoutConstants=r(7),n.FDLayoutEdge=r(19),n.FDLayoutNode=r(20),n.DimensionD=r(21),n.HashMap=r(22),n.HashSet=r(23),n.IGeometry=r(8),n.IMath=r(9),n.Integer=r(10),n.Point=r(12),n.PointD=r(4),n.RandomSeed=r(16),n.RectangleD=r(13),n.Transform=r(17),n.UniqueIDGeneretor=r(14),n.Quicksort=r(24),n.LinkedList=r(11),n.LGraphObject=r(2),n.LGraph=r(5),n.LEdge=r(1),n.LGraphManager=r(6),n.LNode=r(3),n.Layout=r(15),n.LayoutConstants=r(0),n.NeedlemanWunsch=r(25),t.exports=n},function(t,e,r){"use strict";function n(){this.listeners=[]}o(n,"Emitter");var i=n.prototype;i.addListener=function(a,s){this.listeners.push({event:a,callback:s})},i.removeListener=function(a,s){for(var l=this.listeners.length;l>=0;l--){var u=this.listeners[l];u.event===a&&u.callback===s&&this.listeners.splice(l,1)}},i.emit=function(a,s){for(var l=0;l<this.listeners.length;l++){var u=this.listeners[l];a===u.event&&u.callback(s)}},t.exports=n}])})});var pM=Aa((Ax,dM)=>{"use strict";o(function(e,r){typeof Ax=="object"&&typeof dM=="object"?dM.exports=r(fM()):typeof define=="function"&&define.amd?define(["layout-base"],r):typeof Ax=="object"?Ax.coseBase=r(fM()):e.coseBase=r(e.layoutBase)},"webpackUniversalModuleDefinition")(Ax,function(t){return function(e){var r={};function n(i){if(r[i])return r[i].exports;var a=r[i]={i,l:!1,exports:{}};return e[i].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return o(n,"__webpack_require__"),n.m=e,n.c=r,n.i=function(i){return i},n.d=function(i,a,s){n.o(i,a)||Object.defineProperty(i,a,{configurable:!1,enumerable:!0,get:s})},n.n=function(i){var a=i&&i.__esModule?o(function(){return i.default},"getDefault"):o(function(){return i},"getModuleExports");return n.d(a,"a",a),a},n.o=function(i,a){return Object.prototype.hasOwnProperty.call(i,a)},n.p="",n(n.s=7)}([function(e,r){e.exports=t},function(e,r,n){"use strict";var i=n(0).FDLayoutConstants;function a(){}o(a,"CoSEConstants");for(var s in i)a[s]=i[s];a.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,a.DEFAULT_RADIAL_SEPARATION=i.DEFAULT_EDGE_LENGTH,a.DEFAULT_COMPONENT_SEPERATION=60,a.TILE=!0,a.TILING_PADDING_VERTICAL=10,a.TILING_PADDING_HORIZONTAL=10,a.TREE_REDUCTION_ON_INCREMENTAL=!1,e.exports=a},function(e,r,n){"use strict";var i=n(0).FDLayoutEdge;function a(l,u,h){i.call(this,l,u,h)}o(a,"CoSEEdge"),a.prototype=Object.create(i.prototype);for(var s in i)a[s]=i[s];e.exports=a},function(e,r,n){"use strict";var i=n(0).LGraph;function a(l,u,h){i.call(this,l,u,h)}o(a,"CoSEGraph"),a.prototype=Object.create(i.prototype);for(var s in i)a[s]=i[s];e.exports=a},function(e,r,n){"use strict";var i=n(0).LGraphManager;function a(l){i.call(this,l)}o(a,"CoSEGraphManager"),a.prototype=Object.create(i.prototype);for(var s in i)a[s]=i[s];e.exports=a},function(e,r,n){"use strict";var i=n(0).FDLayoutNode,a=n(0).IMath;function s(u,h,f,d){i.call(this,u,h,f,d)}o(s,"CoSENode"),s.prototype=Object.create(i.prototype);for(var l in i)s[l]=i[l];s.prototype.move=function(){var u=this.graphManager.getLayout();this.displacementX=u.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY=u.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren,Math.abs(this.displacementX)>u.coolingFactor*u.maxNodeDisplacement&&(this.displacementX=u.coolingFactor*u.maxNodeDisplacement*a.sign(this.displacementX)),Math.abs(this.displacementY)>u.coolingFactor*u.maxNodeDisplacement&&(this.displacementY=u.coolingFactor*u.maxNodeDisplacement*a.sign(this.displacementY)),this.child==null?this.moveBy(this.displacementX,this.displacementY):this.child.getNodes().length==0?this.moveBy(this.displacementX,this.displacementY):this.propogateDisplacementToChildren(this.displacementX,this.displacementY),u.totalDisplacement+=Math.abs(this.displacementX)+Math.abs(this.displacementY),this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0},s.prototype.propogateDisplacementToChildren=function(u,h){for(var f=this.getChild().getNodes(),d,p=0;p<f.length;p++)d=f[p],d.getChild()==null?(d.moveBy(u,h),d.displacementX+=u,d.displacementY+=h):d.propogateDisplacementToChildren(u,h)},s.prototype.setPred1=function(u){this.pred1=u},s.prototype.getPred1=function(){return pred1},s.prototype.getPred2=function(){return pred2},s.prototype.setNext=function(u){this.next=u},s.prototype.getNext=function(){return next},s.prototype.setProcessed=function(u){this.processed=u},s.prototype.isProcessed=function(){return processed},e.exports=s},function(e,r,n){"use strict";var i=n(0).FDLayout,a=n(4),s=n(3),l=n(5),u=n(2),h=n(1),f=n(0).FDLayoutConstants,d=n(0).LayoutConstants,p=n(0).Point,m=n(0).PointD,g=n(0).Layout,y=n(0).Integer,x=n(0).IGeometry,v=n(0).LGraph,b=n(0).Transform;function T(){i.call(this),this.toBeTiled={}}o(T,"CoSELayout"),T.prototype=Object.create(i.prototype);for(var S in i)T[S]=i[S];T.prototype.newGraphManager=function(){var w=new a(this);return this.graphManager=w,w},T.prototype.newGraph=function(w){return new s(null,this.graphManager,w)},T.prototype.newNode=function(w){return new l(this.graphManager,w)},T.prototype.newEdge=function(w){return new u(null,null,w)},T.prototype.initParameters=function(){i.prototype.initParameters.call(this,arguments),this.isSubLayout||(h.DEFAULT_EDGE_LENGTH<10?this.idealEdgeLength=10:this.idealEdgeLength=h.DEFAULT_EDGE_LENGTH,this.useSmartIdealEdgeLengthCalculation=h.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.springConstant=f.DEFAULT_SPRING_STRENGTH,this.repulsionConstant=f.DEFAULT_REPULSION_STRENGTH,this.gravityConstant=f.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=f.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=f.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=f.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.prunedNodesAll=[],this.growTreeIterations=0,this.afterGrowthIterations=0,this.isTreeGrowing=!1,this.isGrowthFinished=!1,this.coolingCycle=0,this.maxCoolingCycle=this.maxIterations/f.CONVERGENCE_CHECK_PERIOD,this.finalTemperature=f.CONVERGENCE_CHECK_PERIOD/this.maxIterations,this.coolingAdjuster=1)},T.prototype.layout=function(){var w=d.DEFAULT_CREATE_BENDS_AS_NEEDED;return w&&(this.createBendpoints(),this.graphManager.resetAllEdges()),this.level=0,this.classicLayout()},T.prototype.classicLayout=function(){if(this.nodesWithGravity=this.calculateNodesToApplyGravitationTo(),this.graphManager.setAllNodesToApplyGravitation(this.nodesWithGravity),this.calcNoOfChildrenForAllNodes(),this.graphManager.calcLowestCommonAncestors(),this.graphManager.calcInclusionTreeDepths(),this.graphManager.getRoot().calcEstimatedSize(),this.calcIdealEdgeLengths(),this.incremental){if(h.TREE_REDUCTION_ON_INCREMENTAL){this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var E=new Set(this.getAllNodes()),_=this.nodesWithGravity.filter(function(O){return E.has(O)});this.graphManager.setAllNodesToApplyGravitation(_)}}else{var w=this.getFlatForest();if(w.length>0)this.positionNodesRadially(w);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var E=new Set(this.getAllNodes()),_=this.nodesWithGravity.filter(function(A){return E.has(A)});this.graphManager.setAllNodesToApplyGravitation(_),this.positionNodesRandomly()}}return this.initSpringEmbedder(),this.runSpringEmbedder(),!0},T.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%f.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var w=new Set(this.getAllNodes()),E=this.nodesWithGravity.filter(function(D){return w.has(D)});this.graphManager.setAllNodesToApplyGravitation(E),this.graphManager.updateBounds(),this.updateGrid(),this.coolingFactor=f.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),this.coolingFactor=f.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var _=!this.isTreeGrowing&&!this.isGrowthFinished,A=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(_,A),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},T.prototype.getPositionsData=function(){for(var w=this.graphManager.getAllNodes(),E={},_=0;_<w.length;_++){var A=w[_].rect,D=w[_].id;E[D]={id:D,x:A.getCenterX(),y:A.getCenterY(),w:A.width,h:A.height}}return E},T.prototype.runSpringEmbedder=function(){this.initialAnimationPeriod=25,this.animationPeriod=this.initialAnimationPeriod;var w=!1;if(f.ANIMATE==="during")this.emit("layoutstarted");else{for(;!w;)w=this.tick();this.graphManager.updateBounds()}},T.prototype.calculateNodesToApplyGravitationTo=function(){var w=[],E,_=this.graphManager.getGraphs(),A=_.length,D;for(D=0;D<A;D++)E=_[D],E.updateConnected(),E.isConnected||(w=w.concat(E.getNodes()));return w},T.prototype.createBendpoints=function(){var w=[];w=w.concat(this.graphManager.getAllEdges());var E=new Set,_;for(_=0;_<w.length;_++){var A=w[_];if(!E.has(A)){var D=A.getSource(),O=A.getTarget();if(D==O)A.getBendpoints().push(new m),A.getBendpoints().push(new m),this.createDummyNodesForBendpoints(A),E.add(A);else{var R=[];if(R=R.concat(D.getEdgeListToNode(O)),R=R.concat(O.getEdgeListToNode(D)),!E.has(R[0])){if(R.length>1){var k;for(k=0;k<R.length;k++){var L=R[k];L.getBendpoints().push(new m),this.createDummyNodesForBendpoints(L)}}R.forEach(function(C){E.add(C)})}}}if(E.size==w.length)break}},T.prototype.positionNodesRadially=function(w){for(var E=new p(0,0),_=Math.ceil(Math.sqrt(w.length)),A=0,D=0,O=0,R=new m(0,0),k=0;k<w.length;k++){k%_==0&&(O=0,D=A,k!=0&&(D+=h.DEFAULT_COMPONENT_SEPERATION),A=0);var L=w[k],C=g.findCenterOfTree(L);E.x=O,E.y=D,R=T.radialLayout(L,C,E),R.y>A&&(A=Math.floor(R.y)),O=Math.floor(R.x+h.DEFAULT_COMPONENT_SEPERATION)}this.transform(new m(d.WORLD_CENTER_X-R.x/2,d.WORLD_CENTER_Y-R.y/2))},T.radialLayout=function(w,E,_){var A=Math.max(this.maxDiagonalInTree(w),h.DEFAULT_RADIAL_SEPARATION);T.branchRadialLayout(E,null,0,359,0,A);var D=v.calculateBounds(w),O=new b;O.setDeviceOrgX(D.getMinX()),O.setDeviceOrgY(D.getMinY()),O.setWorldOrgX(_.x),O.setWorldOrgY(_.y);for(var R=0;R<w.length;R++){var k=w[R];k.transform(O)}var L=new m(D.getMaxX(),D.getMaxY());return O.inverseTransformPoint(L)},T.branchRadialLayout=function(w,E,_,A,D,O){var R=(A-_+1)/2;R<0&&(R+=180);var k=(R+_)%360,L=k*x.TWO_PI/360,C=Math.cos(L),I=D*Math.cos(L),M=D*Math.sin(L);w.setCenter(I,M);var P=[];P=P.concat(w.getEdges());var B=P.length;E!=null&&B--;for(var F=0,G=P.length,$,U=w.getEdgesBetween(E);U.length>1;){var K=U[0];U.splice(0,1);var ne=P.indexOf(K);ne>=0&&P.splice(ne,1),G--,B--}E!=null?$=(P.indexOf(U[0])+1)%G:$=0;for(var j=Math.abs(A-_)/B,le=$;F!=B;le=++le%G){var Z=P[le].getOtherEnd(w);if(Z!=E){var ce=(_+F*j)%360,Q=(ce+j)%360;T.branchRadialLayout(Z,w,ce,Q,D+O,O),F++}}},T.maxDiagonalInTree=function(w){for(var E=y.MIN_VALUE,_=0;_<w.length;_++){var A=w[_],D=A.getDiagonal();D>E&&(E=D)}return E},T.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},T.prototype.groupZeroDegreeMembers=function(){var w=this,E={};this.memberGroups={},this.idToDummyNode={};for(var _=[],A=this.graphManager.getAllNodes(),D=0;D<A.length;D++){var O=A[D],R=O.getParent();this.getNodeDegreeWithChildren(O)===0&&(R.id==null||!this.getToBeTiled(R))&&_.push(O)}for(var D=0;D<_.length;D++){var O=_[D],k=O.getParent().id;typeof E[k]>"u"&&(E[k]=[]),E[k]=E[k].concat(O)}Object.keys(E).forEach(function(L){if(E[L].length>1){var C="DummyCompound_"+L;w.memberGroups[C]=E[L];var I=E[L][0].getParent(),M=new l(w.graphManager);M.id=C,M.paddingLeft=I.paddingLeft||0,M.paddingRight=I.paddingRight||0,M.paddingBottom=I.paddingBottom||0,M.paddingTop=I.paddingTop||0,w.idToDummyNode[C]=M;var P=w.getGraphManager().add(w.newGraph(),M),B=I.getChild();B.add(M);for(var F=0;F<E[L].length;F++){var G=E[L][F];B.remove(G),P.add(G)}}})},T.prototype.clearCompounds=function(){var w={},E={};this.performDFSOnCompounds();for(var _=0;_<this.compoundOrder.length;_++)E[this.compoundOrder[_].id]=this.compoundOrder[_],w[this.compoundOrder[_].id]=[].concat(this.compoundOrder[_].getChild().getNodes()),this.graphManager.remove(this.compoundOrder[_].getChild()),this.compoundOrder[_].child=null;this.graphManager.resetAllNodes(),this.tileCompoundMembers(w,E)},T.prototype.clearZeroDegreeMembers=function(){var w=this,E=this.tiledZeroDegreePack=[];Object.keys(this.memberGroups).forEach(function(_){var A=w.idToDummyNode[_];E[_]=w.tileNodes(w.memberGroups[_],A.paddingLeft+A.paddingRight),A.rect.width=E[_].width,A.rect.height=E[_].height})},T.prototype.repopulateCompounds=function(){for(var w=this.compoundOrder.length-1;w>=0;w--){var E=this.compoundOrder[w],_=E.id,A=E.paddingLeft,D=E.paddingTop;this.adjustLocations(this.tiledMemberPack[_],E.rect.x,E.rect.y,A,D)}},T.prototype.repopulateZeroDegreeMembers=function(){var w=this,E=this.tiledZeroDegreePack;Object.keys(E).forEach(function(_){var A=w.idToDummyNode[_],D=A.paddingLeft,O=A.paddingTop;w.adjustLocations(E[_],A.rect.x,A.rect.y,D,O)})},T.prototype.getToBeTiled=function(w){var E=w.id;if(this.toBeTiled[E]!=null)return this.toBeTiled[E];var _=w.getChild();if(_==null)return this.toBeTiled[E]=!1,!1;for(var A=_.getNodes(),D=0;D<A.length;D++){var O=A[D];if(this.getNodeDegree(O)>0)return this.toBeTiled[E]=!1,!1;if(O.getChild()==null){this.toBeTiled[O.id]=!1;continue}if(!this.getToBeTiled(O))return this.toBeTiled[E]=!1,!1}return this.toBeTiled[E]=!0,!0},T.prototype.getNodeDegree=function(w){for(var E=w.id,_=w.getEdges(),A=0,D=0;D<_.length;D++){var O=_[D];O.getSource().id!==O.getTarget().id&&(A=A+1)}return A},T.prototype.getNodeDegreeWithChildren=function(w){var E=this.getNodeDegree(w);if(w.getChild()==null)return E;for(var _=w.getChild().getNodes(),A=0;A<_.length;A++){var D=_[A];E+=this.getNodeDegreeWithChildren(D)}return E},T.prototype.performDFSOnCompounds=function(){this.compoundOrder=[],this.fillCompexOrderByDFS(this.graphManager.getRoot().getNodes())},T.prototype.fillCompexOrderByDFS=function(w){for(var E=0;E<w.length;E++){var _=w[E];_.getChild()!=null&&this.fillCompexOrderByDFS(_.getChild().getNodes()),this.getToBeTiled(_)&&this.compoundOrder.push(_)}},T.prototype.adjustLocations=function(w,E,_,A,D){E+=A,_+=D;for(var O=E,R=0;R<w.rows.length;R++){var k=w.rows[R];E=O;for(var L=0,C=0;C<k.length;C++){var I=k[C];I.rect.x=E,I.rect.y=_,E+=I.rect.width+w.horizontalPadding,I.rect.height>L&&(L=I.rect.height)}_+=L+w.verticalPadding}},T.prototype.tileCompoundMembers=function(w,E){var _=this;this.tiledMemberPack=[],Object.keys(w).forEach(function(A){var D=E[A];_.tiledMemberPack[A]=_.tileNodes(w[A],D.paddingLeft+D.paddingRight),D.rect.width=_.tiledMemberPack[A].width,D.rect.height=_.tiledMemberPack[A].height})},T.prototype.tileNodes=function(w,E){var _=h.TILING_PADDING_VERTICAL,A=h.TILING_PADDING_HORIZONTAL,D={rows:[],rowWidth:[],rowHeight:[],width:0,height:E,verticalPadding:_,horizontalPadding:A};w.sort(function(k,L){return k.rect.width*k.rect.height>L.rect.width*L.rect.height?-1:k.rect.width*k.rect.height<L.rect.width*L.rect.height?1:0});for(var O=0;O<w.length;O++){var R=w[O];D.rows.length==0?this.insertNodeToRow(D,R,0,E):this.canAddHorizontal(D,R.rect.width,R.rect.height)?this.insertNodeToRow(D,R,this.getShortestRowIndex(D),E):this.insertNodeToRow(D,R,D.rows.length,E),this.shiftToLastRow(D)}return D},T.prototype.insertNodeToRow=function(w,E,_,A){var D=A;if(_==w.rows.length){var O=[];w.rows.push(O),w.rowWidth.push(D),w.rowHeight.push(0)}var R=w.rowWidth[_]+E.rect.width;w.rows[_].length>0&&(R+=w.horizontalPadding),w.rowWidth[_]=R,w.width<R&&(w.width=R);var k=E.rect.height;_>0&&(k+=w.verticalPadding);var L=0;k>w.rowHeight[_]&&(L=w.rowHeight[_],w.rowHeight[_]=k,L=w.rowHeight[_]-L),w.height+=L,w.rows[_].push(E)},T.prototype.getShortestRowIndex=function(w){for(var E=-1,_=Number.MAX_VALUE,A=0;A<w.rows.length;A++)w.rowWidth[A]<_&&(E=A,_=w.rowWidth[A]);return E},T.prototype.getLongestRowIndex=function(w){for(var E=-1,_=Number.MIN_VALUE,A=0;A<w.rows.length;A++)w.rowWidth[A]>_&&(E=A,_=w.rowWidth[A]);return E},T.prototype.canAddHorizontal=function(w,E,_){var A=this.getShortestRowIndex(w);if(A<0)return!0;var D=w.rowWidth[A];if(D+w.horizontalPadding+E<=w.width)return!0;var O=0;w.rowHeight[A]<_&&A>0&&(O=_+w.verticalPadding-w.rowHeight[A]);var R;w.width-D>=E+w.horizontalPadding?R=(w.height+O)/(D+E+w.horizontalPadding):R=(w.height+O)/w.width,O=_+w.verticalPadding;var k;return w.width<E?k=(w.height+O)/E:k=(w.height+O)/w.width,k<1&&(k=1/k),R<1&&(R=1/R),R<k},T.prototype.shiftToLastRow=function(w){var E=this.getLongestRowIndex(w),_=w.rowWidth.length-1,A=w.rows[E],D=A[A.length-1],O=D.width+w.horizontalPadding;if(w.width-w.rowWidth[_]>O&&E!=_){A.splice(-1,1),w.rows[_].push(D),w.rowWidth[E]=w.rowWidth[E]-O,w.rowWidth[_]=w.rowWidth[_]+O,w.width=w.rowWidth[instance.getLongestRowIndex(w)];for(var R=Number.MIN_VALUE,k=0;k<A.length;k++)A[k].height>R&&(R=A[k].height);E>0&&(R+=w.verticalPadding);var L=w.rowHeight[E]+w.rowHeight[_];w.rowHeight[E]=R,w.rowHeight[_]<D.height+w.verticalPadding&&(w.rowHeight[_]=D.height+w.verticalPadding);var C=w.rowHeight[E]+w.rowHeight[_];w.height+=C-L,this.shiftToLastRow(w)}},T.prototype.tilingPreLayout=function(){h.TILE&&(this.groupZeroDegreeMembers(),this.clearCompounds(),this.clearZeroDegreeMembers())},T.prototype.tilingPostLayout=function(){h.TILE&&(this.repopulateZeroDegreeMembers(),this.repopulateCompounds())},T.prototype.reduceTrees=function(){for(var w=[],E=!0,_;E;){var A=this.graphManager.getAllNodes(),D=[];E=!1;for(var O=0;O<A.length;O++)_=A[O],_.getEdges().length==1&&!_.getEdges()[0].isInterGraph&&_.getChild()==null&&(D.push([_,_.getEdges()[0],_.getOwner()]),E=!0);if(E==!0){for(var R=[],k=0;k<D.length;k++)D[k][0].getEdges().length==1&&(R.push(D[k]),D[k][0].getOwner().remove(D[k][0]));w.push(R),this.graphManager.resetAllNodes(),this.graphManager.resetAllEdges()}}this.prunedNodesAll=w},T.prototype.growTree=function(w){for(var E=w.length,_=w[E-1],A,D=0;D<_.length;D++)A=_[D],this.findPlaceforPrunedNode(A),A[2].add(A[0]),A[2].add(A[1],A[1].source,A[1].target);w.splice(w.length-1,1),this.graphManager.resetAllNodes(),this.graphManager.resetAllEdges()},T.prototype.findPlaceforPrunedNode=function(w){var E,_,A=w[0];A==w[1].source?_=w[1].target:_=w[1].source;var D=_.startX,O=_.finishX,R=_.startY,k=_.finishY,L=0,C=0,I=0,M=0,P=[L,I,C,M];if(R>0)for(var B=D;B<=O;B++)P[0]+=this.grid[B][R-1].length+this.grid[B][R].length-1;if(O<this.grid.length-1)for(var B=R;B<=k;B++)P[1]+=this.grid[O+1][B].length+this.grid[O][B].length-1;if(k<this.grid[0].length-1)for(var B=D;B<=O;B++)P[2]+=this.grid[B][k+1].length+this.grid[B][k].length-1;if(D>0)for(var B=R;B<=k;B++)P[3]+=this.grid[D-1][B].length+this.grid[D][B].length-1;for(var F=y.MAX_VALUE,G,$,U=0;U<P.length;U++)P[U]<F?(F=P[U],G=1,$=U):P[U]==F&&G++;if(G==3&&F==0)P[0]==0&&P[1]==0&&P[2]==0?E=1:P[0]==0&&P[1]==0&&P[3]==0?E=0:P[0]==0&&P[2]==0&&P[3]==0?E=3:P[1]==0&&P[2]==0&&P[3]==0&&(E=2);else if(G==2&&F==0){var K=Math.floor(Math.random()*2);P[0]==0&&P[1]==0?K==0?E=0:E=1:P[0]==0&&P[2]==0?K==0?E=0:E=2:P[0]==0&&P[3]==0?K==0?E=0:E=3:P[1]==0&&P[2]==0?K==0?E=1:E=2:P[1]==0&&P[3]==0?K==0?E=1:E=3:K==0?E=2:E=3}else if(G==4&&F==0){var K=Math.floor(Math.random()*4);E=K}else E=$;E==0?A.setCenter(_.getCenterX(),_.getCenterY()-_.getHeight()/2-f.DEFAULT_EDGE_LENGTH-A.getHeight()/2):E==1?A.setCenter(_.getCenterX()+_.getWidth()/2+f.DEFAULT_EDGE_LENGTH+A.getWidth()/2,_.getCenterY()):E==2?A.setCenter(_.getCenterX(),_.getCenterY()+_.getHeight()/2+f.DEFAULT_EDGE_LENGTH+A.getHeight()/2):A.setCenter(_.getCenterX()-_.getWidth()/2-f.DEFAULT_EDGE_LENGTH-A.getWidth()/2,_.getCenterY())},e.exports=T},function(e,r,n){"use strict";var i={};i.layoutBase=n(0),i.CoSEConstants=n(1),i.CoSEEdge=n(2),i.CoSEGraph=n(3),i.CoSEGraphManager=n(4),i.CoSELayout=n(6),i.CoSENode=n(5),e.exports=i}])})});var kce=Aa((_x,mM)=>{"use strict";o(function(e,r){typeof _x=="object"&&typeof mM=="object"?mM.exports=r(pM()):typeof define=="function"&&define.amd?define(["cose-base"],r):typeof _x=="object"?_x.cytoscapeCoseBilkent=r(pM()):e.cytoscapeCoseBilkent=r(e.coseBase)},"webpackUniversalModuleDefinition")(_x,function(t){return function(e){var r={};function n(i){if(r[i])return r[i].exports;var a=r[i]={i,l:!1,exports:{}};return e[i].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return o(n,"__webpack_require__"),n.m=e,n.c=r,n.i=function(i){return i},n.d=function(i,a,s){n.o(i,a)||Object.defineProperty(i,a,{configurable:!1,enumerable:!0,get:s})},n.n=function(i){var a=i&&i.__esModule?o(function(){return i.default},"getDefault"):o(function(){return i},"getModuleExports");return n.d(a,"a",a),a},n.o=function(i,a){return Object.prototype.hasOwnProperty.call(i,a)},n.p="",n(n.s=1)}([function(e,r){e.exports=t},function(e,r,n){"use strict";var i=n(0).layoutBase.LayoutConstants,a=n(0).layoutBase.FDLayoutConstants,s=n(0).CoSEConstants,l=n(0).CoSELayout,u=n(0).CoSENode,h=n(0).layoutBase.PointD,f=n(0).layoutBase.DimensionD,d={ready:o(function(){},"ready"),stop:o(function(){},"stop"),quality:"default",nodeDimensionsIncludeLabels:!1,refresh:30,fit:!0,padding:10,randomize:!0,nodeRepulsion:4500,idealEdgeLength:50,edgeElasticity:.45,nestingFactor:.1,gravity:.25,numIter:2500,tile:!0,animate:"end",animationDuration:500,tilingPaddingVertical:10,tilingPaddingHorizontal:10,gravityRangeCompound:1.5,gravityCompound:1,gravityRange:3.8,initialEnergyOnIncremental:.5};function p(x,v){var b={};for(var T in x)b[T]=x[T];for(var T in v)b[T]=v[T];return b}o(p,"extend");function m(x){this.options=p(d,x),g(this.options)}o(m,"_CoSELayout");var g=o(function(v){v.nodeRepulsion!=null&&(s.DEFAULT_REPULSION_STRENGTH=a.DEFAULT_REPULSION_STRENGTH=v.nodeRepulsion),v.idealEdgeLength!=null&&(s.DEFAULT_EDGE_LENGTH=a.DEFAULT_EDGE_LENGTH=v.idealEdgeLength),v.edgeElasticity!=null&&(s.DEFAULT_SPRING_STRENGTH=a.DEFAULT_SPRING_STRENGTH=v.edgeElasticity),v.nestingFactor!=null&&(s.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=a.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=v.nestingFactor),v.gravity!=null&&(s.DEFAULT_GRAVITY_STRENGTH=a.DEFAULT_GRAVITY_STRENGTH=v.gravity),v.numIter!=null&&(s.MAX_ITERATIONS=a.MAX_ITERATIONS=v.numIter),v.gravityRange!=null&&(s.DEFAULT_GRAVITY_RANGE_FACTOR=a.DEFAULT_GRAVITY_RANGE_FACTOR=v.gravityRange),v.gravityCompound!=null&&(s.DEFAULT_COMPOUND_GRAVITY_STRENGTH=a.DEFAULT_COMPOUND_GRAVITY_STRENGTH=v.gravityCompound),v.gravityRangeCompound!=null&&(s.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=a.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=v.gravityRangeCompound),v.initialEnergyOnIncremental!=null&&(s.DEFAULT_COOLING_FACTOR_INCREMENTAL=a.DEFAULT_COOLING_FACTOR_INCREMENTAL=v.initialEnergyOnIncremental),v.quality=="draft"?i.QUALITY=0:v.quality=="proof"?i.QUALITY=2:i.QUALITY=1,s.NODE_DIMENSIONS_INCLUDE_LABELS=a.NODE_DIMENSIONS_INCLUDE_LABELS=i.NODE_DIMENSIONS_INCLUDE_LABELS=v.nodeDimensionsIncludeLabels,s.DEFAULT_INCREMENTAL=a.DEFAULT_INCREMENTAL=i.DEFAULT_INCREMENTAL=!v.randomize,s.ANIMATE=a.ANIMATE=i.ANIMATE=v.animate,s.TILE=v.tile,s.TILING_PADDING_VERTICAL=typeof v.tilingPaddingVertical=="function"?v.tilingPaddingVertical.call():v.tilingPaddingVertical,s.TILING_PADDING_HORIZONTAL=typeof v.tilingPaddingHorizontal=="function"?v.tilingPaddingHorizontal.call():v.tilingPaddingHorizontal},"getUserOptions");m.prototype.run=function(){var x,v,b=this.options,T=this.idToLNode={},S=this.layout=new l,w=this;w.stopped=!1,this.cy=this.options.cy,this.cy.trigger({type:"layoutstart",layout:this});var E=S.newGraphManager();this.gm=E;var _=this.options.eles.nodes(),A=this.options.eles.edges();this.root=E.addRoot(),this.processChildrenList(this.root,this.getTopMostNodes(_),S);for(var D=0;D<A.length;D++){var O=A[D],R=this.idToLNode[O.data("source")],k=this.idToLNode[O.data("target")];if(R!==k&&R.getEdgesBetween(k).length==0){var L=E.add(S.newEdge(),R,k);L.id=O.id()}}var C=o(function(P,B){typeof P=="number"&&(P=B);var F=P.data("id"),G=w.idToLNode[F];return{x:G.getRect().getCenterX(),y:G.getRect().getCenterY()}},"getPositions"),I=o(function M(){for(var P=o(function(){b.fit&&b.cy.fit(b.eles,b.padding),x||(x=!0,w.cy.one("layoutready",b.ready),w.cy.trigger({type:"layoutready",layout:w}))},"afterReposition"),B=w.options.refresh,F,G=0;G<B&&!F;G++)F=w.stopped||w.layout.tick();if(F){S.checkLayoutSuccess()&&!S.isSubLayout&&S.doPostLayout(),S.tilingPostLayout&&S.tilingPostLayout(),S.isLayoutFinished=!0,w.options.eles.nodes().positions(C),P(),w.cy.one("layoutstop",w.options.stop),w.cy.trigger({type:"layoutstop",layout:w}),v&&cancelAnimationFrame(v),x=!1;return}var $=w.layout.getPositionsData();b.eles.nodes().positions(function(U,K){if(typeof U=="number"&&(U=K),!U.isParent()){for(var ne=U.id(),j=$[ne],le=U;j==null&&(j=$[le.data("parent")]||$["DummyCompound_"+le.data("parent")],$[ne]=j,le=le.parent()[0],le!=null););return j!=null?{x:j.x,y:j.y}:{x:U.position("x"),y:U.position("y")}}}),P(),v=requestAnimationFrame(M)},"iterateAnimated");return S.addListener("layoutstarted",function(){w.options.animate==="during"&&(v=requestAnimationFrame(I))}),S.runLayout(),this.options.animate!=="during"&&(w.options.eles.nodes().not(":parent").layoutPositions(w,w.options,C),x=!1),this},m.prototype.getTopMostNodes=function(x){for(var v={},b=0;b<x.length;b++)v[x[b].id()]=!0;var T=x.filter(function(S,w){typeof S=="number"&&(S=w);for(var E=S.parent()[0];E!=null;){if(v[E.id()])return!1;E=E.parent()[0]}return!0});return T},m.prototype.processChildrenList=function(x,v,b){for(var T=v.length,S=0;S<T;S++){var w=v[S],E=w.children(),_,A=w.layoutDimensions({nodeDimensionsIncludeLabels:this.options.nodeDimensionsIncludeLabels});if(w.outerWidth()!=null&&w.outerHeight()!=null?_=x.add(new u(b.graphManager,new h(w.position("x")-A.w/2,w.position("y")-A.h/2),new f(parseFloat(A.w),parseFloat(A.h)))):_=x.add(new u(this.graphManager)),_.id=w.data("id"),_.paddingLeft=parseInt(w.css("padding")),_.paddingTop=parseInt(w.css("padding")),_.paddingRight=parseInt(w.css("padding")),_.paddingBottom=parseInt(w.css("padding")),this.options.nodeDimensionsIncludeLabels&&w.isParent()){var D=w.boundingBox({includeLabels:!0,includeNodes:!1}).w,O=w.boundingBox({includeLabels:!0,includeNodes:!1}).h,R=w.css("text-halign");_.labelWidth=D,_.labelHeight=O,_.labelPos=R}if(this.idToLNode[w.data("id")]=_,isNaN(_.rect.x)&&(_.rect.x=0),isNaN(_.rect.y)&&(_.rect.y=0),E!=null&&E.length>0){var k;k=b.getGraphManager().add(b.newGraph(),_),this.processChildrenList(k,E,b)}}},m.prototype.stop=function(){return this.stopped=!0,this};var y=o(function(v){v("layout","cose-bilkent",m)},"register");typeof cytoscape<"u"&&y(cytoscape),e.exports=y}])})});function UHe(t,e){t.forEach(r=>{let n={id:r.id,labelText:r.label,height:r.height,width:r.width,padding:r.padding??0};Object.keys(r).forEach(i=>{["id","label","height","width","padding","x","y"].includes(i)||(n[i]=r[i])}),e.add({group:"nodes",data:n,position:{x:r.x??0,y:r.y??0}})})}function HHe(t,e){t.forEach(r=>{let n={id:r.id,source:r.start,target:r.end};Object.keys(r).forEach(i=>{["id","start","end"].includes(i)||(n[i]=r[i])}),e.add({group:"edges",data:n})})}function Sce(t){return new Promise(e=>{let r=ze("body").append("div").attr("id","cy").attr("style","display:none"),n=Ko({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});r.remove(),UHe(t.nodes,n),HHe(t.edges,n),n.nodes().forEach(function(a){a.layoutDimensions=()=>{let s=a.data();return{w:s.width,h:s.height}}});let i={name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1};n.layout(i).run(),n.ready(a=>{X.info("Cytoscape ready",a),e(n)})})}function Cce(t){return t.nodes().map(e=>{let r=e.data(),n=e.position(),i={id:r.id,x:n.x,y:n.y};return Object.keys(r).forEach(a=>{a!=="id"&&(i[a]=r[a])}),i})}function Ace(t){return t.edges().map(e=>{let r=e.data(),n=e._private.rscratch,i={id:r.id,source:r.source,target:r.target,startX:n.startX,startY:n.startY,midX:n.midX,midY:n.midY,endX:n.endX,endY:n.endY};return Object.keys(r).forEach(a=>{["id","source","target"].includes(a)||(i[a]=r[a])}),i})}var Ece,_ce=N(()=>{"use strict";uM();Ece=ja(kce(),1);pr();pt();Ko.use(Ece.default);o(UHe,"addNodes");o(HHe,"addEdges");o(Sce,"createCytoscapeInstance");o(Cce,"extractPositionedNodes");o(Ace,"extractPositionedEdges")});async function Dce(t,e){X.debug("Starting cose-bilkent layout algorithm");try{WHe(t);let r=await Sce(t),n=Cce(r),i=Ace(r);return X.debug(`Layout completed: ${n.length} nodes, ${i.length} edges`),{nodes:n,edges:i}}catch(r){throw X.error("Error in cose-bilkent layout algorithm:",r),r}}function WHe(t){if(!t)throw new Error("Layout data is required");if(!t.config)throw new Error("Configuration is required in layout data");if(!t.rootNode)throw new Error("Root node is required");if(!t.nodes||!Array.isArray(t.nodes))throw new Error("No nodes found in layout data");if(!Array.isArray(t.edges))throw new Error("Edges array is required in layout data");return!0}var Lce=N(()=>{"use strict";pt();_ce();o(Dce,"executeCoseBilkentLayout");o(WHe,"validateLayoutData")});var Rce,Nce=N(()=>{"use strict";Lce();Rce=o(async(t,e,{insertCluster:r,insertEdge:n,insertEdgeLabel:i,insertMarkers:a,insertNode:s,log:l,positionEdgeLabel:u},{algorithm:h})=>{let f={},d={},p=e.select("g");a(p,t.markers,t.type,t.diagramId);let m=p.insert("g").attr("class","subgraphs"),g=p.insert("g").attr("class","edgePaths"),y=p.insert("g").attr("class","edgeLabels"),x=p.insert("g").attr("class","nodes");l.debug("Inserting nodes into DOM for dimension calculation"),await Promise.all(t.nodes.map(async T=>{if(T.isGroup){let S={...T};d[T.id]=S,f[T.id]=S,await r(m,T)}else{let S={...T};f[T.id]=S;let w=await s(x,T,{config:t.config,dir:t.direction||"TB"}),E=w.node().getBBox();S.width=E.width,S.height=E.height,S.domId=w,l.debug(`Node ${T.id} dimensions: ${E.width}x${E.height}`)}})),l.debug("Running cose-bilkent layout algorithm");let v={...t,nodes:t.nodes.map(T=>{let S=f[T.id];return{...T,width:S.width,height:S.height}})},b=await Dce(v,t.config);l.debug("Positioning nodes based on layout results"),b.nodes.forEach(T=>{let S=f[T.id];S?.domId&&(S.domId.attr("transform",`translate(${T.x}, ${T.y})`),S.x=T.x,S.y=T.y,l.debug(`Positioned node ${S.id} at center (${T.x}, ${T.y})`))}),b.edges.forEach(T=>{let S=t.edges.find(w=>w.id===T.id);S&&(S.points=[{x:T.startX,y:T.startY},{x:T.midX,y:T.midY},{x:T.endX,y:T.endY}])}),l.debug("Inserting and positioning edges"),await Promise.all(t.edges.map(async T=>{let S=await i(y,T),w=f[T.start??""],E=f[T.end??""];if(w&&E){let _=b.edges.find(A=>A.id===T.id);if(_){l.debug("APA01 positionedEdge",_);let A={...T},D=n(g,A,d,t.type,w,E,t.diagramId);u(A,D)}else{let A={...T,points:[{x:w.x||0,y:w.y||0},{x:E.x||0,y:E.y||0}]},D=n(g,A,d,t.type,w,E,t.diagramId);u(A,D)}}})),l.debug("Cose-bilkent rendering completed")},"render")});var Mce={};ur(Mce,{render:()=>qHe});var qHe,Ice=N(()=>{"use strict";Nce();qHe=Rce});var Dx,gM,YHe,Qo,Bc,Af=N(()=>{"use strict";Lee();pt();Dx={},gM=o(t=>{for(let e of t)Dx[e.name]=e},"registerLayoutLoaders"),YHe=o(()=>{gM([{name:"dagre",loader:o(async()=>await Promise.resolve().then(()=>(use(),cse)),"loader")},{name:"cose-bilkent",loader:o(async()=>await Promise.resolve().then(()=>(Ice(),Mce)),"loader")}])},"registerDefaultLayoutLoaders");YHe();Qo=o(async(t,e)=>{if(!(t.layoutAlgorithm in Dx))throw new Error(`Unknown layout algorithm: ${t.layoutAlgorithm}`);let r=Dx[t.layoutAlgorithm];return(await r.loader()).render(t,e,Dee,{algorithm:r.algorithm})},"render"),Bc=o((t="",{fallback:e="dagre"}={})=>{if(t in Dx)return t;if(e in Dx)return X.warn(`Layout algorithm ${t} is not registered. Using ${e} as fallback.`),e;throw new Error(`Both layout algorithms ${t} and ${e} are not registered.`)},"getRegisteredLayoutAlgorithm")});var Hs,XHe,jHe,_f=N(()=>{"use strict";Ci();pt();Hs=o((t,e,r,n)=>{t.attr("class",r);let{width:i,height:a,x:s,y:l}=XHe(t,e);fn(t,a,i,n);let u=jHe(s,l,i,a,e);t.attr("viewBox",u),X.debug(`viewBox configured: ${u} with padding: ${e}`)},"setupViewPortForSVG"),XHe=o((t,e)=>{let r=t.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:r.width+e*2,height:r.height+e*2,x:r.x,y:r.y}},"calculateDimensionsWithPadding"),jHe=o((t,e,r,n,i)=>`${t-i} ${e-i} ${r} ${n}`,"createViewBox")});var KHe,QHe,Oce,Pce=N(()=>{"use strict";pr();Xt();pt();Kd();Af();_f();tr();KHe=o(function(t,e){return e.db.getClasses()},"getClasses"),QHe=o(async function(t,e,r,n){X.info("REF0:"),X.info("Drawing state diagram (v2)",e);let{securityLevel:i,flowchart:a,layout:s}=ge(),l;i==="sandbox"&&(l=ze("#i"+e));let u=i==="sandbox"?l.nodes()[0].contentDocument:document;X.debug("Before getData: ");let h=n.db.getData();X.debug("Data: ",h);let f=zo(e,i),d=n.db.getDirection();h.type=n.type,h.layoutAlgorithm=Bc(s),h.layoutAlgorithm==="dagre"&&s==="elk"&&X.warn("flowchart-elk was moved to an external package in Mermaid v11. Please refer [release notes](https://github.com/mermaid-js/mermaid/releases/tag/v11.0.0) for more details. This diagram will be rendered using `dagre` layout as a fallback."),h.direction=d,h.nodeSpacing=a?.nodeSpacing||50,h.rankSpacing=a?.rankSpacing||50,h.markers=["point","circle","cross"],h.diagramId=e,X.debug("REF1:",h),await Qo(h,f);let p=h.config.flowchart?.diagramPadding??8;Ht.insertTitle(f,"flowchartTitleText",a?.titleTopMargin||0,n.db.getDiagramTitle()),Hs(f,p,"flowchart",a?.useMaxWidth||!1);for(let m of h.nodes){let g=ze(`#${e} [id="${m.id}"]`);if(!g||!m.link)continue;let y=u.createElementNS("http://www.w3.org/2000/svg","a");y.setAttributeNS("http://www.w3.org/2000/svg","class",m.cssClasses),y.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),i==="sandbox"?y.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):m.linkTarget&&y.setAttributeNS("http://www.w3.org/2000/svg","target",m.linkTarget);let x=g.insert(function(){return y},":first-child"),v=g.select(".label-container");v&&x.append(function(){return v.node()});let b=g.select(".label");b&&x.append(function(){return b.node()})}},"draw"),Oce={getClasses:KHe,draw:QHe}});var yM,vM,Bce=N(()=>{"use strict";yM=function(){var t=o(function(Hr,tt,yt,Kt){for(yt=yt||{},Kt=Hr.length;Kt--;yt[Hr[Kt]]=tt);return yt},"o"),e=[1,4],r=[1,3],n=[1,5],i=[1,8,9,10,11,27,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124],a=[2,2],s=[1,13],l=[1,14],u=[1,15],h=[1,16],f=[1,23],d=[1,25],p=[1,26],m=[1,27],g=[1,49],y=[1,48],x=[1,29],v=[1,30],b=[1,31],T=[1,32],S=[1,33],w=[1,44],E=[1,46],_=[1,42],A=[1,47],D=[1,43],O=[1,50],R=[1,45],k=[1,51],L=[1,52],C=[1,34],I=[1,35],M=[1,36],P=[1,37],B=[1,57],F=[1,8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124],G=[1,61],$=[1,60],U=[1,62],K=[8,9,11,75,77,78],ne=[1,78],j=[1,91],le=[1,96],Z=[1,95],ce=[1,92],Q=[1,88],ee=[1,94],te=[1,90],re=[1,97],he=[1,93],J=[1,98],ye=[1,89],se=[8,9,10,11,40,75,77,78],Se=[8,9,10,11,40,46,75,77,78],W=[8,9,10,11,29,40,44,46,48,50,52,54,56,58,60,63,65,67,68,70,75,77,78,89,102,105,106,109,111,114,115,116],Oe=[8,9,11,44,60,75,77,78,89,102,105,106,109,111,114,115,116],ve=[44,60,89,102,105,106,109,111,114,115,116],Pe=[1,121],qe=[1,122],Ge=[1,124],Ne=[1,123],Me=[44,60,62,74,89,102,105,106,109,111,114,115,116],be=[1,133],q=[1,147],fe=[1,148],ae=[1,149],oe=[1,150],V=[1,135],xe=[1,137],Y=[1,141],de=[1,142],me=[1,143],Be=[1,144],_e=[1,145],Te=[1,146],Ue=[1,151],De=[1,152],Qe=[1,131],ot=[1,132],Gt=[1,139],Ze=[1,134],Ve=[1,138],ht=[1,136],Ye=[8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124],ct=[1,154],Yt=[1,156],Tt=[8,9,11],Mt=[8,9,10,11,14,44,60,89,105,106,109,111,114,115,116],bt=[1,176],ft=[1,172],St=[1,173],dt=[1,177],vt=[1,174],at=[1,175],pn=[77,116,119],kt=[8,9,10,11,12,14,27,29,32,44,60,75,84,85,86,87,88,89,90,105,109,111,114,115,116],Fn=[10,106],tn=[31,49,51,53,55,57,62,64,66,67,69,71,116,117,118],Nr=[1,247],Mr=[1,245],$n=[1,249],Dt=[1,243],Ce=[1,244],nt=[1,246],Ct=[1,248],yr=[1,250],rn=[1,268],yn=[8,9,11,106],Zr=[8,9,10,11,60,84,105,106,109,110,111,112],Mi={trace:o(function(){},"trace"),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,shapeData:39,SHAPE_DATA:40,link:41,node:42,styledVertex:43,AMP:44,vertex:45,STYLE_SEPARATOR:46,idString:47,DOUBLECIRCLESTART:48,DOUBLECIRCLEEND:49,PS:50,PE:51,"(-":52,"-)":53,STADIUMSTART:54,STADIUMEND:55,SUBROUTINESTART:56,SUBROUTINEEND:57,VERTEX_WITH_PROPS_START:58,"NODE_STRING[field]":59,COLON:60,"NODE_STRING[value]":61,PIPE:62,CYLINDERSTART:63,CYLINDEREND:64,DIAMOND_START:65,DIAMOND_STOP:66,TAGEND:67,TRAPSTART:68,TRAPEND:69,INVTRAPSTART:70,INVTRAPEND:71,linkStatement:72,arrowText:73,TESTSTR:74,START_LINK:75,edgeText:76,LINK:77,LINK_ID:78,edgeTextToken:79,STR:80,MD_STR:81,textToken:82,keywords:83,STYLE:84,LINKSTYLE:85,CLASSDEF:86,CLASS:87,CLICK:88,DOWN:89,UP:90,textNoTagsToken:91,stylesOpt:92,"idString[vertex]":93,"idString[class]":94,CALLBACKNAME:95,CALLBACKARGS:96,HREF:97,LINK_TARGET:98,"STR[link]":99,"STR[tooltip]":100,alphaNum:101,DEFAULT:102,numList:103,INTERPOLATE:104,NUM:105,COMMA:106,style:107,styleComponent:108,NODE_STRING:109,UNIT:110,BRKT:111,PCT:112,idStringToken:113,MINUS:114,MULT:115,UNICODE_TEXT:116,TEXT:117,TAGSTART:118,EDGE_TEXT:119,alphaNumToken:120,direction_tb:121,direction_bt:122,direction_rl:123,direction_lr:124,$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",40:"SHAPE_DATA",44:"AMP",46:"STYLE_SEPARATOR",48:"DOUBLECIRCLESTART",49:"DOUBLECIRCLEEND",50:"PS",51:"PE",52:"(-",53:"-)",54:"STADIUMSTART",55:"STADIUMEND",56:"SUBROUTINESTART",57:"SUBROUTINEEND",58:"VERTEX_WITH_PROPS_START",59:"NODE_STRING[field]",60:"COLON",61:"NODE_STRING[value]",62:"PIPE",63:"CYLINDERSTART",64:"CYLINDEREND",65:"DIAMOND_START",66:"DIAMOND_STOP",67:"TAGEND",68:"TRAPSTART",69:"TRAPEND",70:"INVTRAPSTART",71:"INVTRAPEND",74:"TESTSTR",75:"START_LINK",77:"LINK",78:"LINK_ID",80:"STR",81:"MD_STR",84:"STYLE",85:"LINKSTYLE",86:"CLASSDEF",87:"CLASS",88:"CLICK",89:"DOWN",90:"UP",93:"idString[vertex]",94:"idString[class]",95:"CALLBACKNAME",96:"CALLBACKARGS",97:"HREF",98:"LINK_TARGET",99:"STR[link]",100:"STR[tooltip]",102:"DEFAULT",104:"INTERPOLATE",105:"NUM",106:"COMMA",109:"NODE_STRING",110:"UNIT",111:"BRKT",112:"PCT",114:"MINUS",115:"MULT",116:"UNICODE_TEXT",117:"TEXT",118:"TAGSTART",119:"EDGE_TEXT",121:"direction_tb",122:"direction_bt",123:"direction_rl",124:"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],[39,2],[39,1],[20,4],[20,3],[20,4],[20,2],[20,2],[20,1],[42,1],[42,6],[42,5],[43,1],[43,3],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,8],[45,4],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,4],[45,4],[45,1],[41,2],[41,3],[41,3],[41,1],[41,3],[41,4],[76,1],[76,2],[76,1],[76,1],[72,1],[72,2],[73,3],[30,1],[30,2],[30,1],[30,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,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],[103,1],[103,3],[92,1],[92,3],[107,1],[107,2],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[82,1],[82,1],[82,1],[82,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[79,1],[79,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[47,1],[47,2],[101,1],[101,2],[33,1],[33,1],[33,1],[33,1]],performAction:o(function(tt,yt,Kt,ut,_n,pe,ed){var we=pe.length-1;switch(_n){case 2:this.$=[];break;case 3:(!Array.isArray(pe[we])||pe[we].length>0)&&pe[we-1].push(pe[we]),this.$=pe[we-1];break;case 4:case 183:this.$=pe[we];break;case 11:ut.setDirection("TB"),this.$="TB";break;case 12:ut.setDirection(pe[we-1]),this.$=pe[we-1];break;case 27:this.$=pe[we-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=ut.addSubGraph(pe[we-6],pe[we-1],pe[we-4]);break;case 34:this.$=ut.addSubGraph(pe[we-3],pe[we-1],pe[we-3]);break;case 35:this.$=ut.addSubGraph(void 0,pe[we-1],void 0);break;case 37:this.$=pe[we].trim(),ut.setAccTitle(this.$);break;case 38:case 39:this.$=pe[we].trim(),ut.setAccDescription(this.$);break;case 43:this.$=pe[we-1]+pe[we];break;case 44:this.$=pe[we];break;case 45:ut.addVertex(pe[we-1][pe[we-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,pe[we]),ut.addLink(pe[we-3].stmt,pe[we-1],pe[we-2]),this.$={stmt:pe[we-1],nodes:pe[we-1].concat(pe[we-3].nodes)};break;case 46:ut.addLink(pe[we-2].stmt,pe[we],pe[we-1]),this.$={stmt:pe[we],nodes:pe[we].concat(pe[we-2].nodes)};break;case 47:ut.addLink(pe[we-3].stmt,pe[we-1],pe[we-2]),this.$={stmt:pe[we-1],nodes:pe[we-1].concat(pe[we-3].nodes)};break;case 48:this.$={stmt:pe[we-1],nodes:pe[we-1]};break;case 49:ut.addVertex(pe[we-1][pe[we-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,pe[we]),this.$={stmt:pe[we-1],nodes:pe[we-1],shapeData:pe[we]};break;case 50:this.$={stmt:pe[we],nodes:pe[we]};break;case 51:this.$=[pe[we]];break;case 52:ut.addVertex(pe[we-5][pe[we-5].length-1],void 0,void 0,void 0,void 0,void 0,void 0,pe[we-4]),this.$=pe[we-5].concat(pe[we]);break;case 53:this.$=pe[we-4].concat(pe[we]);break;case 54:this.$=pe[we];break;case 55:this.$=pe[we-2],ut.setClass(pe[we-2],pe[we]);break;case 56:this.$=pe[we-3],ut.addVertex(pe[we-3],pe[we-1],"square");break;case 57:this.$=pe[we-3],ut.addVertex(pe[we-3],pe[we-1],"doublecircle");break;case 58:this.$=pe[we-5],ut.addVertex(pe[we-5],pe[we-2],"circle");break;case 59:this.$=pe[we-3],ut.addVertex(pe[we-3],pe[we-1],"ellipse");break;case 60:this.$=pe[we-3],ut.addVertex(pe[we-3],pe[we-1],"stadium");break;case 61:this.$=pe[we-3],ut.addVertex(pe[we-3],pe[we-1],"subroutine");break;case 62:this.$=pe[we-7],ut.addVertex(pe[we-7],pe[we-1],"rect",void 0,void 0,void 0,Object.fromEntries([[pe[we-5],pe[we-3]]]));break;case 63:this.$=pe[we-3],ut.addVertex(pe[we-3],pe[we-1],"cylinder");break;case 64:this.$=pe[we-3],ut.addVertex(pe[we-3],pe[we-1],"round");break;case 65:this.$=pe[we-3],ut.addVertex(pe[we-3],pe[we-1],"diamond");break;case 66:this.$=pe[we-5],ut.addVertex(pe[we-5],pe[we-2],"hexagon");break;case 67:this.$=pe[we-3],ut.addVertex(pe[we-3],pe[we-1],"odd");break;case 68:this.$=pe[we-3],ut.addVertex(pe[we-3],pe[we-1],"trapezoid");break;case 69:this.$=pe[we-3],ut.addVertex(pe[we-3],pe[we-1],"inv_trapezoid");break;case 70:this.$=pe[we-3],ut.addVertex(pe[we-3],pe[we-1],"lean_right");break;case 71:this.$=pe[we-3],ut.addVertex(pe[we-3],pe[we-1],"lean_left");break;case 72:this.$=pe[we],ut.addVertex(pe[we]);break;case 73:pe[we-1].text=pe[we],this.$=pe[we-1];break;case 74:case 75:pe[we-2].text=pe[we-1],this.$=pe[we-2];break;case 76:this.$=pe[we];break;case 77:var ki=ut.destructLink(pe[we],pe[we-2]);this.$={type:ki.type,stroke:ki.stroke,length:ki.length,text:pe[we-1]};break;case 78:var ki=ut.destructLink(pe[we],pe[we-2]);this.$={type:ki.type,stroke:ki.stroke,length:ki.length,text:pe[we-1],id:pe[we-3]};break;case 79:this.$={text:pe[we],type:"text"};break;case 80:this.$={text:pe[we-1].text+""+pe[we],type:pe[we-1].type};break;case 81:this.$={text:pe[we],type:"string"};break;case 82:this.$={text:pe[we],type:"markdown"};break;case 83:var ki=ut.destructLink(pe[we]);this.$={type:ki.type,stroke:ki.stroke,length:ki.length};break;case 84:var ki=ut.destructLink(pe[we]);this.$={type:ki.type,stroke:ki.stroke,length:ki.length,id:pe[we-1]};break;case 85:this.$=pe[we-1];break;case 86:this.$={text:pe[we],type:"text"};break;case 87:this.$={text:pe[we-1].text+""+pe[we],type:pe[we-1].type};break;case 88:this.$={text:pe[we],type:"string"};break;case 89:case 104:this.$={text:pe[we],type:"markdown"};break;case 101:this.$={text:pe[we],type:"text"};break;case 102:this.$={text:pe[we-1].text+""+pe[we],type:pe[we-1].type};break;case 103:this.$={text:pe[we],type:"text"};break;case 105:this.$=pe[we-4],ut.addClass(pe[we-2],pe[we]);break;case 106:this.$=pe[we-4],ut.setClass(pe[we-2],pe[we]);break;case 107:case 115:this.$=pe[we-1],ut.setClickEvent(pe[we-1],pe[we]);break;case 108:case 116:this.$=pe[we-3],ut.setClickEvent(pe[we-3],pe[we-2]),ut.setTooltip(pe[we-3],pe[we]);break;case 109:this.$=pe[we-2],ut.setClickEvent(pe[we-2],pe[we-1],pe[we]);break;case 110:this.$=pe[we-4],ut.setClickEvent(pe[we-4],pe[we-3],pe[we-2]),ut.setTooltip(pe[we-4],pe[we]);break;case 111:this.$=pe[we-2],ut.setLink(pe[we-2],pe[we]);break;case 112:this.$=pe[we-4],ut.setLink(pe[we-4],pe[we-2]),ut.setTooltip(pe[we-4],pe[we]);break;case 113:this.$=pe[we-4],ut.setLink(pe[we-4],pe[we-2],pe[we]);break;case 114:this.$=pe[we-6],ut.setLink(pe[we-6],pe[we-4],pe[we]),ut.setTooltip(pe[we-6],pe[we-2]);break;case 117:this.$=pe[we-1],ut.setLink(pe[we-1],pe[we]);break;case 118:this.$=pe[we-3],ut.setLink(pe[we-3],pe[we-2]),ut.setTooltip(pe[we-3],pe[we]);break;case 119:this.$=pe[we-3],ut.setLink(pe[we-3],pe[we-2],pe[we]);break;case 120:this.$=pe[we-5],ut.setLink(pe[we-5],pe[we-4],pe[we]),ut.setTooltip(pe[we-5],pe[we-2]);break;case 121:this.$=pe[we-4],ut.addVertex(pe[we-2],void 0,void 0,pe[we]);break;case 122:this.$=pe[we-4],ut.updateLink([pe[we-2]],pe[we]);break;case 123:this.$=pe[we-4],ut.updateLink(pe[we-2],pe[we]);break;case 124:this.$=pe[we-8],ut.updateLinkInterpolate([pe[we-6]],pe[we-2]),ut.updateLink([pe[we-6]],pe[we]);break;case 125:this.$=pe[we-8],ut.updateLinkInterpolate(pe[we-6],pe[we-2]),ut.updateLink(pe[we-6],pe[we]);break;case 126:this.$=pe[we-6],ut.updateLinkInterpolate([pe[we-4]],pe[we]);break;case 127:this.$=pe[we-6],ut.updateLinkInterpolate(pe[we-4],pe[we]);break;case 128:case 130:this.$=[pe[we]];break;case 129:case 131:pe[we-2].push(pe[we]),this.$=pe[we-2];break;case 133:this.$=pe[we-1]+pe[we];break;case 181:this.$=pe[we];break;case 182:this.$=pe[we-1]+""+pe[we];break;case 184:this.$=pe[we-1]+""+pe[we];break;case 185:this.$={stmt:"dir",value:"TB"};break;case 186:this.$={stmt:"dir",value:"BT"};break;case 187:this.$={stmt:"dir",value:"RL"};break;case 188:this.$={stmt:"dir",value:"LR"};break}},"anonymous"),table:[{3:1,4:2,9:e,10:r,12:n},{1:[3]},t(i,a,{5:6}),{4:7,9:e,10:r,12:n},{4:8,9:e,10:r,12:n},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,84:x,85:v,86:b,87:T,88:S,89:w,102:E,105:_,106:A,109:D,111:O,113:41,114:R,115:k,116:L,121:C,122:I,123:M,124:P},t(i,[2,9]),t(i,[2,10]),t(i,[2,11]),{8:[1,54],9:[1,55],10:B,15:53,18:56},t(F,[2,3]),t(F,[2,4]),t(F,[2,5]),t(F,[2,6]),t(F,[2,7]),t(F,[2,8]),{8:G,9:$,11:U,21:58,41:59,72:63,75:[1,64],77:[1,66],78:[1,65]},{8:G,9:$,11:U,21:67},{8:G,9:$,11:U,21:68},{8:G,9:$,11:U,21:69},{8:G,9:$,11:U,21:70},{8:G,9:$,11:U,21:71},{8:G,9:$,10:[1,72],11:U,21:73},t(F,[2,36]),{35:[1,74]},{37:[1,75]},t(F,[2,39]),t(K,[2,50],{18:76,39:77,10:B,40:ne}),{10:[1,79]},{10:[1,80]},{10:[1,81]},{10:[1,82]},{14:j,44:le,60:Z,80:[1,86],89:ce,95:[1,83],97:[1,84],101:85,105:Q,106:ee,109:te,111:re,114:he,115:J,116:ye,120:87},t(F,[2,185]),t(F,[2,186]),t(F,[2,187]),t(F,[2,188]),t(se,[2,51]),t(se,[2,54],{46:[1,99]}),t(Se,[2,72],{113:112,29:[1,100],44:g,48:[1,101],50:[1,102],52:[1,103],54:[1,104],56:[1,105],58:[1,106],60:y,63:[1,107],65:[1,108],67:[1,109],68:[1,110],70:[1,111],89:w,102:E,105:_,106:A,109:D,111:O,114:R,115:k,116:L}),t(W,[2,181]),t(W,[2,142]),t(W,[2,143]),t(W,[2,144]),t(W,[2,145]),t(W,[2,146]),t(W,[2,147]),t(W,[2,148]),t(W,[2,149]),t(W,[2,150]),t(W,[2,151]),t(W,[2,152]),t(i,[2,12]),t(i,[2,18]),t(i,[2,19]),{9:[1,113]},t(Oe,[2,26],{18:114,10:B}),t(F,[2,27]),{42:115,43:38,44:g,45:39,47:40,60:y,89:w,102:E,105:_,106:A,109:D,111:O,113:41,114:R,115:k,116:L},t(F,[2,40]),t(F,[2,41]),t(F,[2,42]),t(ve,[2,76],{73:116,62:[1,118],74:[1,117]}),{76:119,79:120,80:Pe,81:qe,116:Ge,119:Ne},{75:[1,125],77:[1,126]},t(Me,[2,83]),t(F,[2,28]),t(F,[2,29]),t(F,[2,30]),t(F,[2,31]),t(F,[2,32]),{10:be,12:q,14:fe,27:ae,28:127,32:oe,44:V,60:xe,75:Y,80:[1,129],81:[1,130],83:140,84:de,85:me,86:Be,87:_e,88:Te,89:Ue,90:De,91:128,105:Qe,109:ot,111:Gt,114:Ze,115:Ve,116:ht},t(Ye,a,{5:153}),t(F,[2,37]),t(F,[2,38]),t(K,[2,48],{44:ct}),t(K,[2,49],{18:155,10:B,40:Yt}),t(se,[2,44]),{44:g,47:157,60:y,89:w,102:E,105:_,106:A,109:D,111:O,113:41,114:R,115:k,116:L},{102:[1,158],103:159,105:[1,160]},{44:g,47:161,60:y,89:w,102:E,105:_,106:A,109:D,111:O,113:41,114:R,115:k,116:L},{44:g,47:162,60:y,89:w,102:E,105:_,106:A,109:D,111:O,113:41,114:R,115:k,116:L},t(Tt,[2,107],{10:[1,163],96:[1,164]}),{80:[1,165]},t(Tt,[2,115],{120:167,10:[1,166],14:j,44:le,60:Z,89:ce,105:Q,106:ee,109:te,111:re,114:he,115:J,116:ye}),t(Tt,[2,117],{10:[1,168]}),t(Mt,[2,183]),t(Mt,[2,170]),t(Mt,[2,171]),t(Mt,[2,172]),t(Mt,[2,173]),t(Mt,[2,174]),t(Mt,[2,175]),t(Mt,[2,176]),t(Mt,[2,177]),t(Mt,[2,178]),t(Mt,[2,179]),t(Mt,[2,180]),{44:g,47:169,60:y,89:w,102:E,105:_,106:A,109:D,111:O,113:41,114:R,115:k,116:L},{30:170,67:bt,80:ft,81:St,82:171,116:dt,117:vt,118:at},{30:178,67:bt,80:ft,81:St,82:171,116:dt,117:vt,118:at},{30:180,50:[1,179],67:bt,80:ft,81:St,82:171,116:dt,117:vt,118:at},{30:181,67:bt,80:ft,81:St,82:171,116:dt,117:vt,118:at},{30:182,67:bt,80:ft,81:St,82:171,116:dt,117:vt,118:at},{30:183,67:bt,80:ft,81:St,82:171,116:dt,117:vt,118:at},{109:[1,184]},{30:185,67:bt,80:ft,81:St,82:171,116:dt,117:vt,118:at},{30:186,65:[1,187],67:bt,80:ft,81:St,82:171,116:dt,117:vt,118:at},{30:188,67:bt,80:ft,81:St,82:171,116:dt,117:vt,118:at},{30:189,67:bt,80:ft,81:St,82:171,116:dt,117:vt,118:at},{30:190,67:bt,80:ft,81:St,82:171,116:dt,117:vt,118:at},t(W,[2,182]),t(i,[2,20]),t(Oe,[2,25]),t(K,[2,46],{39:191,18:192,10:B,40:ne}),t(ve,[2,73],{10:[1,193]}),{10:[1,194]},{30:195,67:bt,80:ft,81:St,82:171,116:dt,117:vt,118:at},{77:[1,196],79:197,116:Ge,119:Ne},t(pn,[2,79]),t(pn,[2,81]),t(pn,[2,82]),t(pn,[2,168]),t(pn,[2,169]),{76:198,79:120,80:Pe,81:qe,116:Ge,119:Ne},t(Me,[2,84]),{8:G,9:$,10:be,11:U,12:q,14:fe,21:200,27:ae,29:[1,199],32:oe,44:V,60:xe,75:Y,83:140,84:de,85:me,86:Be,87:_e,88:Te,89:Ue,90:De,91:201,105:Qe,109:ot,111:Gt,114:Ze,115:Ve,116:ht},t(kt,[2,101]),t(kt,[2,103]),t(kt,[2,104]),t(kt,[2,157]),t(kt,[2,158]),t(kt,[2,159]),t(kt,[2,160]),t(kt,[2,161]),t(kt,[2,162]),t(kt,[2,163]),t(kt,[2,164]),t(kt,[2,165]),t(kt,[2,166]),t(kt,[2,167]),t(kt,[2,90]),t(kt,[2,91]),t(kt,[2,92]),t(kt,[2,93]),t(kt,[2,94]),t(kt,[2,95]),t(kt,[2,96]),t(kt,[2,97]),t(kt,[2,98]),t(kt,[2,99]),t(kt,[2,100]),{6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,202],33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,84:x,85:v,86:b,87:T,88:S,89:w,102:E,105:_,106:A,109:D,111:O,113:41,114:R,115:k,116:L,121:C,122:I,123:M,124:P},{10:B,18:203},{44:[1,204]},t(se,[2,43]),{10:[1,205],44:g,60:y,89:w,102:E,105:_,106:A,109:D,111:O,113:112,114:R,115:k,116:L},{10:[1,206]},{10:[1,207],106:[1,208]},t(Fn,[2,128]),{10:[1,209],44:g,60:y,89:w,102:E,105:_,106:A,109:D,111:O,113:112,114:R,115:k,116:L},{10:[1,210],44:g,60:y,89:w,102:E,105:_,106:A,109:D,111:O,113:112,114:R,115:k,116:L},{80:[1,211]},t(Tt,[2,109],{10:[1,212]}),t(Tt,[2,111],{10:[1,213]}),{80:[1,214]},t(Mt,[2,184]),{80:[1,215],98:[1,216]},t(se,[2,55],{113:112,44:g,60:y,89:w,102:E,105:_,106:A,109:D,111:O,114:R,115:k,116:L}),{31:[1,217],67:bt,82:218,116:dt,117:vt,118:at},t(tn,[2,86]),t(tn,[2,88]),t(tn,[2,89]),t(tn,[2,153]),t(tn,[2,154]),t(tn,[2,155]),t(tn,[2,156]),{49:[1,219],67:bt,82:218,116:dt,117:vt,118:at},{30:220,67:bt,80:ft,81:St,82:171,116:dt,117:vt,118:at},{51:[1,221],67:bt,82:218,116:dt,117:vt,118:at},{53:[1,222],67:bt,82:218,116:dt,117:vt,118:at},{55:[1,223],67:bt,82:218,116:dt,117:vt,118:at},{57:[1,224],67:bt,82:218,116:dt,117:vt,118:at},{60:[1,225]},{64:[1,226],67:bt,82:218,116:dt,117:vt,118:at},{66:[1,227],67:bt,82:218,116:dt,117:vt,118:at},{30:228,67:bt,80:ft,81:St,82:171,116:dt,117:vt,118:at},{31:[1,229],67:bt,82:218,116:dt,117:vt,118:at},{67:bt,69:[1,230],71:[1,231],82:218,116:dt,117:vt,118:at},{67:bt,69:[1,233],71:[1,232],82:218,116:dt,117:vt,118:at},t(K,[2,45],{18:155,10:B,40:Yt}),t(K,[2,47],{44:ct}),t(ve,[2,75]),t(ve,[2,74]),{62:[1,234],67:bt,82:218,116:dt,117:vt,118:at},t(ve,[2,77]),t(pn,[2,80]),{77:[1,235],79:197,116:Ge,119:Ne},{30:236,67:bt,80:ft,81:St,82:171,116:dt,117:vt,118:at},t(Ye,a,{5:237}),t(kt,[2,102]),t(F,[2,35]),{43:238,44:g,45:39,47:40,60:y,89:w,102:E,105:_,106:A,109:D,111:O,113:41,114:R,115:k,116:L},{10:B,18:239},{10:Nr,60:Mr,84:$n,92:240,105:Dt,107:241,108:242,109:Ce,110:nt,111:Ct,112:yr},{10:Nr,60:Mr,84:$n,92:251,104:[1,252],105:Dt,107:241,108:242,109:Ce,110:nt,111:Ct,112:yr},{10:Nr,60:Mr,84:$n,92:253,104:[1,254],105:Dt,107:241,108:242,109:Ce,110:nt,111:Ct,112:yr},{105:[1,255]},{10:Nr,60:Mr,84:$n,92:256,105:Dt,107:241,108:242,109:Ce,110:nt,111:Ct,112:yr},{44:g,47:257,60:y,89:w,102:E,105:_,106:A,109:D,111:O,113:41,114:R,115:k,116:L},t(Tt,[2,108]),{80:[1,258]},{80:[1,259],98:[1,260]},t(Tt,[2,116]),t(Tt,[2,118],{10:[1,261]}),t(Tt,[2,119]),t(Se,[2,56]),t(tn,[2,87]),t(Se,[2,57]),{51:[1,262],67:bt,82:218,116:dt,117:vt,118:at},t(Se,[2,64]),t(Se,[2,59]),t(Se,[2,60]),t(Se,[2,61]),{109:[1,263]},t(Se,[2,63]),t(Se,[2,65]),{66:[1,264],67:bt,82:218,116:dt,117:vt,118:at},t(Se,[2,67]),t(Se,[2,68]),t(Se,[2,70]),t(Se,[2,69]),t(Se,[2,71]),t([10,44,60,89,102,105,106,109,111,114,115,116],[2,85]),t(ve,[2,78]),{31:[1,265],67:bt,82:218,116:dt,117:vt,118:at},{6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,266],33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,84:x,85:v,86:b,87:T,88:S,89:w,102:E,105:_,106:A,109:D,111:O,113:41,114:R,115:k,116:L,121:C,122:I,123:M,124:P},t(se,[2,53]),{43:267,44:g,45:39,47:40,60:y,89:w,102:E,105:_,106:A,109:D,111:O,113:41,114:R,115:k,116:L},t(Tt,[2,121],{106:rn}),t(yn,[2,130],{108:269,10:Nr,60:Mr,84:$n,105:Dt,109:Ce,110:nt,111:Ct,112:yr}),t(Zr,[2,132]),t(Zr,[2,134]),t(Zr,[2,135]),t(Zr,[2,136]),t(Zr,[2,137]),t(Zr,[2,138]),t(Zr,[2,139]),t(Zr,[2,140]),t(Zr,[2,141]),t(Tt,[2,122],{106:rn}),{10:[1,270]},t(Tt,[2,123],{106:rn}),{10:[1,271]},t(Fn,[2,129]),t(Tt,[2,105],{106:rn}),t(Tt,[2,106],{113:112,44:g,60:y,89:w,102:E,105:_,106:A,109:D,111:O,114:R,115:k,116:L}),t(Tt,[2,110]),t(Tt,[2,112],{10:[1,272]}),t(Tt,[2,113]),{98:[1,273]},{51:[1,274]},{62:[1,275]},{66:[1,276]},{8:G,9:$,11:U,21:277},t(F,[2,34]),t(se,[2,52]),{10:Nr,60:Mr,84:$n,105:Dt,107:278,108:242,109:Ce,110:nt,111:Ct,112:yr},t(Zr,[2,133]),{14:j,44:le,60:Z,89:ce,101:279,105:Q,106:ee,109:te,111:re,114:he,115:J,116:ye,120:87},{14:j,44:le,60:Z,89:ce,101:280,105:Q,106:ee,109:te,111:re,114:he,115:J,116:ye,120:87},{98:[1,281]},t(Tt,[2,120]),t(Se,[2,58]),{30:282,67:bt,80:ft,81:St,82:171,116:dt,117:vt,118:at},t(Se,[2,66]),t(Ye,a,{5:283}),t(yn,[2,131],{108:269,10:Nr,60:Mr,84:$n,105:Dt,109:Ce,110:nt,111:Ct,112:yr}),t(Tt,[2,126],{120:167,10:[1,284],14:j,44:le,60:Z,89:ce,105:Q,106:ee,109:te,111:re,114:he,115:J,116:ye}),t(Tt,[2,127],{120:167,10:[1,285],14:j,44:le,60:Z,89:ce,105:Q,106:ee,109:te,111:re,114:he,115:J,116:ye}),t(Tt,[2,114]),{31:[1,286],67:bt,82:218,116:dt,117:vt,118:at},{6:11,7:12,8:s,9:l,10:u,11:h,20:17,22:18,23:19,24:20,25:21,26:22,27:f,32:[1,287],33:24,34:d,36:p,38:m,42:28,43:38,44:g,45:39,47:40,60:y,84:x,85:v,86:b,87:T,88:S,89:w,102:E,105:_,106:A,109:D,111:O,113:41,114:R,115:k,116:L,121:C,122:I,123:M,124:P},{10:Nr,60:Mr,84:$n,92:288,105:Dt,107:241,108:242,109:Ce,110:nt,111:Ct,112:yr},{10:Nr,60:Mr,84:$n,92:289,105:Dt,107:241,108:242,109:Ce,110:nt,111:Ct,112:yr},t(Se,[2,62]),t(F,[2,33]),t(Tt,[2,124],{106:rn}),t(Tt,[2,125],{106:rn})],defaultActions:{},parseError:o(function(tt,yt){if(yt.recoverable)this.trace(tt);else{var Kt=new Error(tt);throw Kt.hash=yt,Kt}},"parseError"),parse:o(function(tt){var yt=this,Kt=[0],ut=[],_n=[null],pe=[],ed=this.table,we="",ki=0,v$=0,x$=0,fbe=2,b$=1,dbe=pe.slice.call(arguments,1),qi=Object.create(this.lexer),td={yy:{}};for(var HC in this.yy)Object.prototype.hasOwnProperty.call(this.yy,HC)&&(td.yy[HC]=this.yy[HC]);qi.setInput(tt,td.yy),td.yy.lexer=qi,td.yy.parser=this,typeof qi.yylloc>"u"&&(qi.yylloc={});var WC=qi.yylloc;pe.push(WC);var pbe=qi.options&&qi.options.ranges;typeof td.yy.parseError=="function"?this.parseError=td.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Iit(Ks){Kt.length=Kt.length-2*Ks,_n.length=_n.length-Ks,pe.length=pe.length-Ks}o(Iit,"popStack");function mbe(){var Ks;return Ks=ut.pop()||qi.lex()||b$,typeof Ks!="number"&&(Ks instanceof Array&&(ut=Ks,Ks=ut.pop()),Ks=yt.symbols_[Ks]||Ks),Ks}o(mbe,"lex");for(var Xa,qC,rd,wo,Oit,YC,f0={},V4,ru,T$,U4;;){if(rd=Kt[Kt.length-1],this.defaultActions[rd]?wo=this.defaultActions[rd]:((Xa===null||typeof Xa>"u")&&(Xa=mbe()),wo=ed[rd]&&ed[rd][Xa]),typeof wo>"u"||!wo.length||!wo[0]){var XC="";U4=[];for(V4 in ed[rd])this.terminals_[V4]&&V4>fbe&&U4.push("'"+this.terminals_[V4]+"'");qi.showPosition?XC="Parse error on line "+(ki+1)+`:
|
||
`+qi.showPosition()+`
|
||
Expecting `+U4.join(", ")+", got '"+(this.terminals_[Xa]||Xa)+"'":XC="Parse error on line "+(ki+1)+": Unexpected "+(Xa==b$?"end of input":"'"+(this.terminals_[Xa]||Xa)+"'"),this.parseError(XC,{text:qi.match,token:this.terminals_[Xa]||Xa,line:qi.yylineno,loc:WC,expected:U4})}if(wo[0]instanceof Array&&wo.length>1)throw new Error("Parse Error: multiple actions possible at state: "+rd+", token: "+Xa);switch(wo[0]){case 1:Kt.push(Xa),_n.push(qi.yytext),pe.push(qi.yylloc),Kt.push(wo[1]),Xa=null,qC?(Xa=qC,qC=null):(v$=qi.yyleng,we=qi.yytext,ki=qi.yylineno,WC=qi.yylloc,x$>0&&x$--);break;case 2:if(ru=this.productions_[wo[1]][1],f0.$=_n[_n.length-ru],f0._$={first_line:pe[pe.length-(ru||1)].first_line,last_line:pe[pe.length-1].last_line,first_column:pe[pe.length-(ru||1)].first_column,last_column:pe[pe.length-1].last_column},pbe&&(f0._$.range=[pe[pe.length-(ru||1)].range[0],pe[pe.length-1].range[1]]),YC=this.performAction.apply(f0,[we,v$,ki,td.yy,wo[1],_n,pe].concat(dbe)),typeof YC<"u")return YC;ru&&(Kt=Kt.slice(0,-1*ru*2),_n=_n.slice(0,-1*ru),pe=pe.slice(0,-1*ru)),Kt.push(this.productions_[wo[1]][0]),_n.push(f0.$),pe.push(f0._$),T$=ed[Kt[Kt.length-2]][Kt[Kt.length-1]],Kt.push(T$);break;case 3:return!0}}return!0},"parse")},ti=function(){var Hr={EOF:1,parseError:o(function(yt,Kt){if(this.yy.parser)this.yy.parser.parseError(yt,Kt);else throw new Error(yt)},"parseError"),setInput:o(function(tt,yt){return this.yy=yt||this.yy||{},this._input=tt,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},"setInput"),input:o(function(){var tt=this._input[0];this.yytext+=tt,this.yyleng++,this.offset++,this.match+=tt,this.matched+=tt;var yt=tt.match(/(?:\r\n?|\n).*/g);return yt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),tt},"input"),unput:o(function(tt){var yt=tt.length,Kt=tt.split(/(?:\r\n?|\n)/g);this._input=tt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-yt),this.offset-=yt;var ut=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),Kt.length-1&&(this.yylineno-=Kt.length-1);var _n=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:Kt?(Kt.length===ut.length?this.yylloc.first_column:0)+ut[ut.length-Kt.length].length-Kt[0].length:this.yylloc.first_column-yt},this.options.ranges&&(this.yylloc.range=[_n[0],_n[0]+this.yyleng-yt]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(tt){this.unput(this.match.slice(tt))},"less"),pastInput:o(function(){var tt=this.matched.substr(0,this.matched.length-this.match.length);return(tt.length>20?"...":"")+tt.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var tt=this.match;return tt.length<20&&(tt+=this._input.substr(0,20-tt.length)),(tt.substr(0,20)+(tt.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var tt=this.pastInput(),yt=new Array(tt.length+1).join("-");return tt+this.upcomingInput()+`
|
||
`+yt+"^"},"showPosition"),test_match:o(function(tt,yt){var Kt,ut,_n;if(this.options.backtrack_lexer&&(_n={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&&(_n.yylloc.range=this.yylloc.range.slice(0))),ut=tt[0].match(/(?:\r\n?|\n).*/g),ut&&(this.yylineno+=ut.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ut?ut[ut.length-1].length-ut[ut.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+tt[0].length},this.yytext+=tt[0],this.match+=tt[0],this.matches=tt,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(tt[0].length),this.matched+=tt[0],Kt=this.performAction.call(this,this.yy,this,yt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Kt)return Kt;if(this._backtrack){for(var pe in _n)this[pe]=_n[pe];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var tt,yt,Kt,ut;this._more||(this.yytext="",this.match="");for(var _n=this._currentRules(),pe=0;pe<_n.length;pe++)if(Kt=this._input.match(this.rules[_n[pe]]),Kt&&(!yt||Kt[0].length>yt[0].length)){if(yt=Kt,ut=pe,this.options.backtrack_lexer){if(tt=this.test_match(Kt,_n[pe]),tt!==!1)return tt;if(this._backtrack){yt=!1;continue}else return!1}else if(!this.options.flex)break}return yt?(tt=this.test_match(yt,_n[ut]),tt!==!1?tt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var yt=this.next();return yt||this.lex()},"lex"),begin:o(function(yt){this.conditionStack.push(yt)},"begin"),popState:o(function(){var yt=this.conditionStack.length-1;return yt>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(yt){return yt=this.conditionStack.length-1-Math.abs(yt||0),yt>=0?this.conditionStack[yt]:"INITIAL"},"topState"),pushState:o(function(yt){this.begin(yt)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(yt,Kt,ut,_n){var pe=_n;switch(ut){case 0:return this.begin("acc_title"),34;break;case 1:return this.popState(),"acc_title_value";break;case 2:return this.begin("acc_descr"),36;break;case 3:return this.popState(),"acc_descr_value";break;case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return this.pushState("shapeData"),Kt.yytext="",40;break;case 8:return this.pushState("shapeDataStr"),40;break;case 9:return this.popState(),40;break;case 10:let ed=/\n\s*/g;return Kt.yytext=Kt.yytext.replace(ed,"<br/>"),40;break;case 11:return 40;case 12:this.popState();break;case 13:this.begin("callbackname");break;case 14:this.popState();break;case 15:this.popState(),this.begin("callbackargs");break;case 16:return 95;case 17:this.popState();break;case 18:return 96;case 19:return"MD_STR";case 20:this.popState();break;case 21:this.begin("md_string");break;case 22:return"STR";case 23:this.popState();break;case 24:this.pushState("string");break;case 25:return 84;case 26:return 102;case 27:return 85;case 28:return 104;case 29:return 86;case 30:return 87;case 31:return 97;case 32:this.begin("click");break;case 33:this.popState();break;case 34:return 88;case 35:return yt.lex.firstGraph()&&this.begin("dir"),12;break;case 36:return yt.lex.firstGraph()&&this.begin("dir"),12;break;case 37:return yt.lex.firstGraph()&&this.begin("dir"),12;break;case 38:return 27;case 39:return 32;case 40:return 98;case 41:return 98;case 42:return 98;case 43:return 98;case 44:return this.popState(),13;break;case 45:return this.popState(),14;break;case 46:return this.popState(),14;break;case 47:return this.popState(),14;break;case 48:return this.popState(),14;break;case 49:return this.popState(),14;break;case 50:return this.popState(),14;break;case 51:return this.popState(),14;break;case 52:return this.popState(),14;break;case 53:return this.popState(),14;break;case 54:return this.popState(),14;break;case 55:return 121;case 56:return 122;case 57:return 123;case 58:return 124;case 59:return 78;case 60:return 105;case 61:return 111;case 62:return 46;case 63:return 60;case 64:return 44;case 65:return 8;case 66:return 106;case 67:return 115;case 68:return this.popState(),77;break;case 69:return this.pushState("edgeText"),75;break;case 70:return 119;case 71:return this.popState(),77;break;case 72:return this.pushState("thickEdgeText"),75;break;case 73:return 119;case 74:return this.popState(),77;break;case 75:return this.pushState("dottedEdgeText"),75;break;case 76:return 119;case 77:return 77;case 78:return this.popState(),53;break;case 79:return"TEXT";case 80:return this.pushState("ellipseText"),52;break;case 81:return this.popState(),55;break;case 82:return this.pushState("text"),54;break;case 83:return this.popState(),57;break;case 84:return this.pushState("text"),56;break;case 85:return 58;case 86:return this.pushState("text"),67;break;case 87:return this.popState(),64;break;case 88:return this.pushState("text"),63;break;case 89:return this.popState(),49;break;case 90:return this.pushState("text"),48;break;case 91:return this.popState(),69;break;case 92:return this.popState(),71;break;case 93:return 117;case 94:return this.pushState("trapText"),68;break;case 95:return this.pushState("trapText"),70;break;case 96:return 118;case 97:return 67;case 98:return 90;case 99:return"SEP";case 100:return 89;case 101:return 115;case 102:return 111;case 103:return 44;case 104:return 109;case 105:return 114;case 106:return 116;case 107:return this.popState(),62;break;case 108:return this.pushState("text"),62;break;case 109:return this.popState(),51;break;case 110:return this.pushState("text"),50;break;case 111:return this.popState(),31;break;case 112:return this.pushState("text"),29;break;case 113:return this.popState(),66;break;case 114:return this.pushState("text"),65;break;case 115:return"TEXT";case 116:return"QUOTE";case 117:return 9;case 118:return 10;case 119:return 11}},"anonymous"),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]*)/,/^(?:[^\s\"]+@(?=[^\{\"]))/,/^(?:[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:{shapeDataEndBracket:{rules:[21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},shapeDataStr:{rules:[9,10,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},shapeData:{rules:[8,11,12,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},callbackargs:{rules:[17,18,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},callbackname:{rules:[14,15,16,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},href:{rules:[21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},click:{rules:[21,24,33,34,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},dottedEdgeText:{rules:[21,24,74,76,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},thickEdgeText:{rules:[21,24,71,73,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},edgeText:{rules:[21,24,68,70,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},trapText:{rules:[21,24,77,80,82,84,88,90,91,92,93,94,95,108,110,112,114],inclusive:!1},ellipseText:{rules:[21,24,77,78,79,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},text:{rules:[21,24,77,80,81,82,83,84,87,88,89,90,94,95,107,108,109,110,111,112,113,114,115],inclusive:!1},vertex:{rules:[21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},dir:{rules:[21,24,44,45,46,47,48,49,50,51,52,53,54,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},acc_descr_multiline:{rules:[5,6,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},acc_descr:{rules:[3,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},acc_title:{rules:[1,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},md_string:{rules:[19,20,21,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},string:{rules:[21,22,23,24,77,80,82,84,88,90,94,95,108,110,112,114],inclusive:!1},INITIAL:{rules:[0,2,4,7,13,21,24,25,26,27,28,29,30,31,32,35,36,37,38,39,40,41,42,43,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,71,72,74,75,77,80,82,84,85,86,88,90,94,95,96,97,98,99,100,101,102,103,104,105,106,108,110,112,114,116,117,118,119],inclusive:!0}}};return Hr}();Mi.lexer=ti;function An(){this.yy={}}return o(An,"Parser"),An.prototype=Mi,Mi.Parser=An,new An}();yM.parser=yM;vM=yM});var Fce,$ce,Gce=N(()=>{"use strict";Bce();Fce=Object.assign({},vM);Fce.parse=t=>{let e=t.replace(/}\s*\n/g,`}
|
||
`);return vM.parse(e)};$ce=Fce});var Fc,mg=N(()=>{"use strict";Fc=o(()=>`
|
||
/* Font Awesome icon styling - consolidated */
|
||
.label-icon {
|
||
display: inline-block;
|
||
height: 1em;
|
||
overflow: visible;
|
||
vertical-align: -0.125em;
|
||
}
|
||
|
||
.node .label-icon path {
|
||
fill: currentColor;
|
||
stroke: revert;
|
||
stroke-width: revert;
|
||
}
|
||
`,"getIconStyles")});var ZHe,JHe,zce,Vce=N(()=>{"use strict";Qs();mg();ZHe=o((t,e)=>{let r=id,n=r(t,"r"),i=r(t,"g"),a=r(t,"b");return Ka(n,i,a,e)},"fade"),JHe=o(t=>`.label {
|
||
font-family: ${t.fontFamily};
|
||
color: ${t.nodeTextColor||t.textColor};
|
||
}
|
||
.cluster-label text {
|
||
fill: ${t.titleColor};
|
||
}
|
||
.cluster-label span {
|
||
color: ${t.titleColor};
|
||
}
|
||
.cluster-label span p {
|
||
background-color: transparent;
|
||
}
|
||
|
||
.label text,span {
|
||
fill: ${t.nodeTextColor||t.textColor};
|
||
color: ${t.nodeTextColor||t.textColor};
|
||
}
|
||
|
||
.node rect,
|
||
.node circle,
|
||
.node ellipse,
|
||
.node polygon,
|
||
.node path {
|
||
fill: ${t.mainBkg};
|
||
stroke: ${t.nodeBorder};
|
||
stroke-width: 1px;
|
||
}
|
||
.rough-node .label text , .node .label text, .image-shape .label, .icon-shape .label {
|
||
text-anchor: middle;
|
||
}
|
||
// .flowchart-label .text-outer-tspan {
|
||
// text-anchor: middle;
|
||
// }
|
||
// .flowchart-label .text-inner-tspan {
|
||
// text-anchor: start;
|
||
// }
|
||
|
||
.node .katex path {
|
||
fill: #000;
|
||
stroke: #000;
|
||
stroke-width: 1px;
|
||
}
|
||
|
||
.rough-node .label,.node .label, .image-shape .label, .icon-shape .label {
|
||
text-align: center;
|
||
}
|
||
.node.clickable {
|
||
cursor: pointer;
|
||
}
|
||
|
||
|
||
.root .anchor path {
|
||
fill: ${t.lineColor} !important;
|
||
stroke-width: 0;
|
||
stroke: ${t.lineColor};
|
||
}
|
||
|
||
.arrowheadPath {
|
||
fill: ${t.arrowheadColor};
|
||
}
|
||
|
||
.edgePath .path {
|
||
stroke: ${t.lineColor};
|
||
stroke-width: 2.0px;
|
||
}
|
||
|
||
.flowchart-link {
|
||
stroke: ${t.lineColor};
|
||
fill: none;
|
||
}
|
||
|
||
.edgeLabel {
|
||
background-color: ${t.edgeLabelBackground};
|
||
p {
|
||
background-color: ${t.edgeLabelBackground};
|
||
}
|
||
rect {
|
||
opacity: 0.5;
|
||
background-color: ${t.edgeLabelBackground};
|
||
fill: ${t.edgeLabelBackground};
|
||
}
|
||
text-align: center;
|
||
}
|
||
|
||
/* For html labels only */
|
||
.labelBkg {
|
||
background-color: ${ZHe(t.edgeLabelBackground,.5)};
|
||
// background-color:
|
||
}
|
||
|
||
.cluster rect {
|
||
fill: ${t.clusterBkg};
|
||
stroke: ${t.clusterBorder};
|
||
stroke-width: 1px;
|
||
}
|
||
|
||
.cluster text {
|
||
fill: ${t.titleColor};
|
||
}
|
||
|
||
.cluster span {
|
||
color: ${t.titleColor};
|
||
}
|
||
/* .cluster div {
|
||
color: ${t.titleColor};
|
||
} */
|
||
|
||
div.mermaidTooltip {
|
||
position: absolute;
|
||
text-align: center;
|
||
max-width: 200px;
|
||
padding: 2px;
|
||
font-family: ${t.fontFamily};
|
||
font-size: 12px;
|
||
background: ${t.tertiaryColor};
|
||
border: 1px solid ${t.border2};
|
||
border-radius: 2px;
|
||
pointer-events: none;
|
||
z-index: 100;
|
||
}
|
||
|
||
.flowchartTitleText {
|
||
text-anchor: middle;
|
||
font-size: 18px;
|
||
fill: ${t.textColor};
|
||
}
|
||
|
||
rect.text {
|
||
fill: none;
|
||
stroke-width: 0;
|
||
}
|
||
|
||
.icon-shape, .image-shape {
|
||
background-color: ${t.edgeLabelBackground};
|
||
p {
|
||
background-color: ${t.edgeLabelBackground};
|
||
padding: 2px;
|
||
}
|
||
rect {
|
||
opacity: 0.5;
|
||
background-color: ${t.edgeLabelBackground};
|
||
fill: ${t.edgeLabelBackground};
|
||
}
|
||
text-align: center;
|
||
}
|
||
${Fc()}
|
||
`,"getStyles"),zce=JHe});var TE={};ur(TE,{diagram:()=>eWe});var eWe,wE=N(()=>{"use strict";Xt();yee();Pce();Gce();Vce();eWe={parser:$ce,get db(){return new lw},renderer:Oce,styles:zce,init:o(t=>{t.flowchart||(t.flowchart={}),t.layout&&tv({layout:t.layout}),t.flowchart.arrowMarkerAbsolute=t.arrowMarkerAbsolute,tv({flowchart:{arrowMarkerAbsolute:t.arrowMarkerAbsolute}})},"init")}});var xM,Yce,Xce=N(()=>{"use strict";xM=function(){var t=o(function(re,he,J,ye){for(J=J||{},ye=re.length;ye--;J[re[ye]]=he);return J},"o"),e=[6,8,10,22,24,26,28,33,34,35,36,37,40,43,44,50],r=[1,10],n=[1,11],i=[1,12],a=[1,13],s=[1,20],l=[1,21],u=[1,22],h=[1,23],f=[1,24],d=[1,19],p=[1,25],m=[1,26],g=[1,18],y=[1,33],x=[1,34],v=[1,35],b=[1,36],T=[1,37],S=[6,8,10,13,15,17,20,21,22,24,26,28,33,34,35,36,37,40,43,44,50,63,64,65,66,67],w=[1,42],E=[1,43],_=[1,52],A=[40,50,68,69],D=[1,63],O=[1,61],R=[1,58],k=[1,62],L=[1,64],C=[6,8,10,13,17,22,24,26,28,33,34,35,36,37,40,41,42,43,44,48,49,50,63,64,65,66,67],I=[63,64,65,66,67],M=[1,81],P=[1,80],B=[1,78],F=[1,79],G=[6,10,42,47],$=[6,10,13,41,42,47,48,49],U=[1,89],K=[1,88],ne=[1,87],j=[19,56],le=[1,98],Z=[1,97],ce=[19,56,58,60],Q={trace:o(function(){},"trace"),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,COLON:13,role:14,STYLE_SEPARATOR:15,idList:16,BLOCK_START:17,attributes:18,BLOCK_STOP:19,SQS:20,SQE:21,title:22,title_value:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,direction:29,classDefStatement:30,classStatement:31,styleStatement:32,direction_tb:33,direction_bt:34,direction_rl:35,direction_lr:36,CLASSDEF:37,stylesOpt:38,separator:39,UNICODE_TEXT:40,STYLE_TEXT:41,COMMA:42,CLASS:43,STYLE:44,style:45,styleComponent:46,SEMI:47,NUM:48,BRKT:49,ENTITY_NAME:50,attribute:51,attributeType:52,attributeName:53,attributeKeyTypeList:54,attributeComment:55,ATTRIBUTE_WORD:56,attributeKeyType:57,",":58,ATTRIBUTE_KEY:59,COMMENT:60,cardinality:61,relType:62,ZERO_OR_ONE:63,ZERO_OR_MORE:64,ONE_OR_MORE:65,ONLY_ONE:66,MD_PARENT:67,NON_IDENTIFYING:68,IDENTIFYING:69,WORD:70,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:"COLON",15:"STYLE_SEPARATOR",17:"BLOCK_START",19:"BLOCK_STOP",20:"SQS",21:"SQE",22:"title",23:"title_value",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"direction_tb",34:"direction_bt",35:"direction_rl",36:"direction_lr",37:"CLASSDEF",40:"UNICODE_TEXT",41:"STYLE_TEXT",42:"COMMA",43:"CLASS",44:"STYLE",47:"SEMI",48:"NUM",49:"BRKT",50:"ENTITY_NAME",56:"ATTRIBUTE_WORD",58:",",59:"ATTRIBUTE_KEY",60:"COMMENT",63:"ZERO_OR_ONE",64:"ZERO_OR_MORE",65:"ONE_OR_MORE",66:"ONLY_ONE",67:"MD_PARENT",68:"NON_IDENTIFYING",69:"IDENTIFYING",70:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,9],[9,7],[9,7],[9,4],[9,6],[9,3],[9,5],[9,1],[9,3],[9,7],[9,9],[9,6],[9,8],[9,4],[9,6],[9,2],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[9,1],[29,1],[29,1],[29,1],[29,1],[30,4],[16,1],[16,1],[16,3],[16,3],[31,3],[32,4],[38,1],[38,3],[45,1],[45,2],[39,1],[39,1],[39,1],[46,1],[46,1],[46,1],[46,1],[11,1],[11,1],[18,1],[18,2],[51,2],[51,3],[51,3],[51,4],[52,1],[53,1],[54,1],[54,3],[57,1],[55,1],[12,3],[61,1],[61,1],[61,1],[61,1],[61,1],[62,1],[62,1],[14,1],[14,1],[14,1]],performAction:o(function(he,J,ye,se,Se,W,Oe){var ve=W.length-1;switch(Se){case 1:break;case 2:this.$=[];break;case 3:W[ve-1].push(W[ve]),this.$=W[ve-1];break;case 4:case 5:this.$=W[ve];break;case 6:case 7:this.$=[];break;case 8:se.addEntity(W[ve-4]),se.addEntity(W[ve-2]),se.addRelationship(W[ve-4],W[ve],W[ve-2],W[ve-3]);break;case 9:se.addEntity(W[ve-8]),se.addEntity(W[ve-4]),se.addRelationship(W[ve-8],W[ve],W[ve-4],W[ve-5]),se.setClass([W[ve-8]],W[ve-6]),se.setClass([W[ve-4]],W[ve-2]);break;case 10:se.addEntity(W[ve-6]),se.addEntity(W[ve-2]),se.addRelationship(W[ve-6],W[ve],W[ve-2],W[ve-3]),se.setClass([W[ve-6]],W[ve-4]);break;case 11:se.addEntity(W[ve-6]),se.addEntity(W[ve-4]),se.addRelationship(W[ve-6],W[ve],W[ve-4],W[ve-5]),se.setClass([W[ve-4]],W[ve-2]);break;case 12:se.addEntity(W[ve-3]),se.addAttributes(W[ve-3],W[ve-1]);break;case 13:se.addEntity(W[ve-5]),se.addAttributes(W[ve-5],W[ve-1]),se.setClass([W[ve-5]],W[ve-3]);break;case 14:se.addEntity(W[ve-2]);break;case 15:se.addEntity(W[ve-4]),se.setClass([W[ve-4]],W[ve-2]);break;case 16:se.addEntity(W[ve]);break;case 17:se.addEntity(W[ve-2]),se.setClass([W[ve-2]],W[ve]);break;case 18:se.addEntity(W[ve-6],W[ve-4]),se.addAttributes(W[ve-6],W[ve-1]);break;case 19:se.addEntity(W[ve-8],W[ve-6]),se.addAttributes(W[ve-8],W[ve-1]),se.setClass([W[ve-8]],W[ve-3]);break;case 20:se.addEntity(W[ve-5],W[ve-3]);break;case 21:se.addEntity(W[ve-7],W[ve-5]),se.setClass([W[ve-7]],W[ve-2]);break;case 22:se.addEntity(W[ve-3],W[ve-1]);break;case 23:se.addEntity(W[ve-5],W[ve-3]),se.setClass([W[ve-5]],W[ve]);break;case 24:case 25:this.$=W[ve].trim(),se.setAccTitle(this.$);break;case 26:case 27:this.$=W[ve].trim(),se.setAccDescription(this.$);break;case 32:se.setDirection("TB");break;case 33:se.setDirection("BT");break;case 34:se.setDirection("RL");break;case 35:se.setDirection("LR");break;case 36:this.$=W[ve-3],se.addClass(W[ve-2],W[ve-1]);break;case 37:case 38:case 56:case 64:this.$=[W[ve]];break;case 39:case 40:this.$=W[ve-2].concat([W[ve]]);break;case 41:this.$=W[ve-2],se.setClass(W[ve-1],W[ve]);break;case 42:this.$=W[ve-3],se.addCssStyles(W[ve-2],W[ve-1]);break;case 43:this.$=[W[ve]];break;case 44:W[ve-2].push(W[ve]),this.$=W[ve-2];break;case 46:this.$=W[ve-1]+W[ve];break;case 54:case 76:case 77:this.$=W[ve].replace(/"/g,"");break;case 55:case 78:this.$=W[ve];break;case 57:W[ve].push(W[ve-1]),this.$=W[ve];break;case 58:this.$={type:W[ve-1],name:W[ve]};break;case 59:this.$={type:W[ve-2],name:W[ve-1],keys:W[ve]};break;case 60:this.$={type:W[ve-2],name:W[ve-1],comment:W[ve]};break;case 61:this.$={type:W[ve-3],name:W[ve-2],keys:W[ve-1],comment:W[ve]};break;case 62:case 63:case 66:this.$=W[ve];break;case 65:W[ve-2].push(W[ve]),this.$=W[ve-2];break;case 67:this.$=W[ve].replace(/"/g,"");break;case 68:this.$={cardA:W[ve],relType:W[ve-1],cardB:W[ve-2]};break;case 69:this.$=se.Cardinality.ZERO_OR_ONE;break;case 70:this.$=se.Cardinality.ZERO_OR_MORE;break;case 71:this.$=se.Cardinality.ONE_OR_MORE;break;case 72:this.$=se.Cardinality.ONLY_ONE;break;case 73:this.$=se.Cardinality.MD_PARENT;break;case 74:this.$=se.Identification.NON_IDENTIFYING;break;case 75:this.$=se.Identification.IDENTIFYING;break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,22:r,24:n,26:i,28:a,29:14,30:15,31:16,32:17,33:s,34:l,35:u,36:h,37:f,40:d,43:p,44:m,50:g},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:27,11:9,22:r,24:n,26:i,28:a,29:14,30:15,31:16,32:17,33:s,34:l,35:u,36:h,37:f,40:d,43:p,44:m,50:g},t(e,[2,5]),t(e,[2,6]),t(e,[2,16],{12:28,61:32,15:[1,29],17:[1,30],20:[1,31],63:y,64:x,65:v,66:b,67:T}),{23:[1,38]},{25:[1,39]},{27:[1,40]},t(e,[2,27]),t(e,[2,28]),t(e,[2,29]),t(e,[2,30]),t(e,[2,31]),t(S,[2,54]),t(S,[2,55]),t(e,[2,32]),t(e,[2,33]),t(e,[2,34]),t(e,[2,35]),{16:41,40:w,41:E},{16:44,40:w,41:E},{16:45,40:w,41:E},t(e,[2,4]),{11:46,40:d,50:g},{16:47,40:w,41:E},{18:48,19:[1,49],51:50,52:51,56:_},{11:53,40:d,50:g},{62:54,68:[1,55],69:[1,56]},t(A,[2,69]),t(A,[2,70]),t(A,[2,71]),t(A,[2,72]),t(A,[2,73]),t(e,[2,24]),t(e,[2,25]),t(e,[2,26]),{13:D,38:57,41:O,42:R,45:59,46:60,48:k,49:L},t(C,[2,37]),t(C,[2,38]),{16:65,40:w,41:E,42:R},{13:D,38:66,41:O,42:R,45:59,46:60,48:k,49:L},{13:[1,67],15:[1,68]},t(e,[2,17],{61:32,12:69,17:[1,70],42:R,63:y,64:x,65:v,66:b,67:T}),{19:[1,71]},t(e,[2,14]),{18:72,19:[2,56],51:50,52:51,56:_},{53:73,56:[1,74]},{56:[2,62]},{21:[1,75]},{61:76,63:y,64:x,65:v,66:b,67:T},t(I,[2,74]),t(I,[2,75]),{6:M,10:P,39:77,42:B,47:F},{40:[1,82],41:[1,83]},t(G,[2,43],{46:84,13:D,41:O,48:k,49:L}),t($,[2,45]),t($,[2,50]),t($,[2,51]),t($,[2,52]),t($,[2,53]),t(e,[2,41],{42:R}),{6:M,10:P,39:85,42:B,47:F},{14:86,40:U,50:K,70:ne},{16:90,40:w,41:E},{11:91,40:d,50:g},{18:92,19:[1,93],51:50,52:51,56:_},t(e,[2,12]),{19:[2,57]},t(j,[2,58],{54:94,55:95,57:96,59:le,60:Z}),t([19,56,59,60],[2,63]),t(e,[2,22],{15:[1,100],17:[1,99]}),t([40,50],[2,68]),t(e,[2,36]),{13:D,41:O,45:101,46:60,48:k,49:L},t(e,[2,47]),t(e,[2,48]),t(e,[2,49]),t(C,[2,39]),t(C,[2,40]),t($,[2,46]),t(e,[2,42]),t(e,[2,8]),t(e,[2,76]),t(e,[2,77]),t(e,[2,78]),{13:[1,102],42:R},{13:[1,104],15:[1,103]},{19:[1,105]},t(e,[2,15]),t(j,[2,59],{55:106,58:[1,107],60:Z}),t(j,[2,60]),t(ce,[2,64]),t(j,[2,67]),t(ce,[2,66]),{18:108,19:[1,109],51:50,52:51,56:_},{16:110,40:w,41:E},t(G,[2,44],{46:84,13:D,41:O,48:k,49:L}),{14:111,40:U,50:K,70:ne},{16:112,40:w,41:E},{14:113,40:U,50:K,70:ne},t(e,[2,13]),t(j,[2,61]),{57:114,59:le},{19:[1,115]},t(e,[2,20]),t(e,[2,23],{17:[1,116],42:R}),t(e,[2,11]),{13:[1,117],42:R},t(e,[2,10]),t(ce,[2,65]),t(e,[2,18]),{18:118,19:[1,119],51:50,52:51,56:_},{14:120,40:U,50:K,70:ne},{19:[1,121]},t(e,[2,21]),t(e,[2,9]),t(e,[2,19])],defaultActions:{52:[2,62],72:[2,57]},parseError:o(function(he,J){if(J.recoverable)this.trace(he);else{var ye=new Error(he);throw ye.hash=J,ye}},"parseError"),parse:o(function(he){var J=this,ye=[0],se=[],Se=[null],W=[],Oe=this.table,ve="",Pe=0,qe=0,Ge=0,Ne=2,Me=1,be=W.slice.call(arguments,1),q=Object.create(this.lexer),fe={yy:{}};for(var ae in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ae)&&(fe.yy[ae]=this.yy[ae]);q.setInput(he,fe.yy),fe.yy.lexer=q,fe.yy.parser=this,typeof q.yylloc>"u"&&(q.yylloc={});var oe=q.yylloc;W.push(oe);var V=q.options&&q.options.ranges;typeof fe.yy.parseError=="function"?this.parseError=fe.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function xe(ht){ye.length=ye.length-2*ht,Se.length=Se.length-ht,W.length=W.length-ht}o(xe,"popStack");function Y(){var ht;return ht=se.pop()||q.lex()||Me,typeof ht!="number"&&(ht instanceof Array&&(se=ht,ht=se.pop()),ht=J.symbols_[ht]||ht),ht}o(Y,"lex");for(var de,me,Be,_e,Te,Ue,De={},Qe,ot,Gt,Ze;;){if(Be=ye[ye.length-1],this.defaultActions[Be]?_e=this.defaultActions[Be]:((de===null||typeof de>"u")&&(de=Y()),_e=Oe[Be]&&Oe[Be][de]),typeof _e>"u"||!_e.length||!_e[0]){var Ve="";Ze=[];for(Qe in Oe[Be])this.terminals_[Qe]&&Qe>Ne&&Ze.push("'"+this.terminals_[Qe]+"'");q.showPosition?Ve="Parse error on line "+(Pe+1)+`:
|
||
`+q.showPosition()+`
|
||
Expecting `+Ze.join(", ")+", got '"+(this.terminals_[de]||de)+"'":Ve="Parse error on line "+(Pe+1)+": Unexpected "+(de==Me?"end of input":"'"+(this.terminals_[de]||de)+"'"),this.parseError(Ve,{text:q.match,token:this.terminals_[de]||de,line:q.yylineno,loc:oe,expected:Ze})}if(_e[0]instanceof Array&&_e.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Be+", token: "+de);switch(_e[0]){case 1:ye.push(de),Se.push(q.yytext),W.push(q.yylloc),ye.push(_e[1]),de=null,me?(de=me,me=null):(qe=q.yyleng,ve=q.yytext,Pe=q.yylineno,oe=q.yylloc,Ge>0&&Ge--);break;case 2:if(ot=this.productions_[_e[1]][1],De.$=Se[Se.length-ot],De._$={first_line:W[W.length-(ot||1)].first_line,last_line:W[W.length-1].last_line,first_column:W[W.length-(ot||1)].first_column,last_column:W[W.length-1].last_column},V&&(De._$.range=[W[W.length-(ot||1)].range[0],W[W.length-1].range[1]]),Ue=this.performAction.apply(De,[ve,qe,Pe,fe.yy,_e[1],Se,W].concat(be)),typeof Ue<"u")return Ue;ot&&(ye=ye.slice(0,-1*ot*2),Se=Se.slice(0,-1*ot),W=W.slice(0,-1*ot)),ye.push(this.productions_[_e[1]][0]),Se.push(De.$),W.push(De._$),Gt=Oe[ye[ye.length-2]][ye[ye.length-1]],ye.push(Gt);break;case 3:return!0}}return!0},"parse")},ee=function(){var re={EOF:1,parseError:o(function(J,ye){if(this.yy.parser)this.yy.parser.parseError(J,ye);else throw new Error(J)},"parseError"),setInput:o(function(he,J){return this.yy=J||this.yy||{},this._input=he,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},"setInput"),input:o(function(){var he=this._input[0];this.yytext+=he,this.yyleng++,this.offset++,this.match+=he,this.matched+=he;var J=he.match(/(?:\r\n?|\n).*/g);return J?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),he},"input"),unput:o(function(he){var J=he.length,ye=he.split(/(?:\r\n?|\n)/g);this._input=he+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-J),this.offset-=J;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),ye.length-1&&(this.yylineno-=ye.length-1);var Se=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:ye?(ye.length===se.length?this.yylloc.first_column:0)+se[se.length-ye.length].length-ye[0].length:this.yylloc.first_column-J},this.options.ranges&&(this.yylloc.range=[Se[0],Se[0]+this.yyleng-J]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(he){this.unput(this.match.slice(he))},"less"),pastInput:o(function(){var he=this.matched.substr(0,this.matched.length-this.match.length);return(he.length>20?"...":"")+he.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var he=this.match;return he.length<20&&(he+=this._input.substr(0,20-he.length)),(he.substr(0,20)+(he.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var he=this.pastInput(),J=new Array(he.length+1).join("-");return he+this.upcomingInput()+`
|
||
`+J+"^"},"showPosition"),test_match:o(function(he,J){var ye,se,Se;if(this.options.backtrack_lexer&&(Se={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&&(Se.yylloc.range=this.yylloc.range.slice(0))),se=he[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+he[0].length},this.yytext+=he[0],this.match+=he[0],this.matches=he,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(he[0].length),this.matched+=he[0],ye=this.performAction.call(this,this.yy,this,J,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ye)return ye;if(this._backtrack){for(var W in Se)this[W]=Se[W];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var he,J,ye,se;this._more||(this.yytext="",this.match="");for(var Se=this._currentRules(),W=0;W<Se.length;W++)if(ye=this._input.match(this.rules[Se[W]]),ye&&(!J||ye[0].length>J[0].length)){if(J=ye,se=W,this.options.backtrack_lexer){if(he=this.test_match(ye,Se[W]),he!==!1)return he;if(this._backtrack){J=!1;continue}else return!1}else if(!this.options.flex)break}return J?(he=this.test_match(J,Se[se]),he!==!1?he:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var J=this.next();return J||this.lex()},"lex"),begin:o(function(J){this.conditionStack.push(J)},"begin"),popState:o(function(){var J=this.conditionStack.length-1;return J>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(J){return J=this.conditionStack.length-1-Math.abs(J||0),J>=0?this.conditionStack[J]:"INITIAL"},"topState"),pushState:o(function(J){this.begin(J)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(J,ye,se,Se){var W=Se;switch(se){case 0:return this.begin("acc_title"),24;break;case 1:return this.popState(),"acc_title_value";break;case 2:return this.begin("acc_descr"),26;break;case 3:return this.popState(),"acc_descr_value";break;case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return 33;case 8:return 34;case 9:return 35;case 10:return 36;case 11:return 10;case 12:break;case 13:return 8;case 14:return 50;case 15:return 70;case 16:return 4;case 17:return this.begin("block"),17;break;case 18:return 49;case 19:return 49;case 20:return 42;case 21:return 15;case 22:return 13;case 23:break;case 24:return 59;case 25:return 56;case 26:return 56;case 27:return 60;case 28:break;case 29:return this.popState(),19;break;case 30:return ye.yytext[0];case 31:return 20;case 32:return 21;case 33:return this.begin("style"),44;break;case 34:return this.popState(),10;break;case 35:break;case 36:return 13;case 37:return 42;case 38:return 49;case 39:return this.begin("style"),37;break;case 40:return 43;case 41:return 63;case 42:return 65;case 43:return 65;case 44:return 65;case 45:return 63;case 46:return 63;case 47:return 64;case 48:return 64;case 49:return 64;case 50:return 64;case 51:return 64;case 52:return 65;case 53:return 64;case 54:return 65;case 55:return 66;case 56:return 66;case 57:return 66;case 58:return 66;case 59:return 63;case 60:return 64;case 61:return 65;case 62:return 67;case 63:return 68;case 64:return 69;case 65:return 69;case 66:return 68;case 67:return 68;case 68:return 68;case 69:return 41;case 70:return 47;case 71:return 40;case 72:return 48;case 73:return ye.yytext[0];case 74:return 6}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:#)/i,/^(?:#)/i,/^(?:,)/i,/^(?::::)/i,/^(?::)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:([^\s]*)[~].*[~]([^\s]*))/i,/^(?:([\*A-Za-z_\u00C0-\uFFFF][A-Za-z0-9\-\_\[\]\(\)\u00C0-\uFFFF\*]*))/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:style\b)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?::)/i,/^(?:,)/i,/^(?:#)/i,/^(?:classDef\b)/i,/^(?:class\b)/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,/^(?:([^\x00-\x7F]|\w|-|\*)+)/i,/^(?:;)/i,/^(?:([^\x00-\x7F]|\w|-|\*)+)/i,/^(?:[0-9])/i,/^(?:.)/i,/^(?:$)/i],conditions:{style:{rules:[34,35,36,37,38,69,70],inclusive:!1},acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},block:{rules:[23,24,25,26,27,28,29,30],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,31,32,33,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,65,66,67,68,71,72,73,74],inclusive:!0}}};return re}();Q.lexer=ee;function te(){this.yy={}}return o(te,"Parser"),te.prototype=Q,Q.Parser=te,new te}();xM.parser=xM;Yce=xM});var kE,jce=N(()=>{"use strict";pt();Xt();ui();tr();kE=class{constructor(){this.entities=new Map;this.relationships=[];this.classes=new Map;this.direction="TB";this.Cardinality={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"};this.Identification={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"};this.setAccTitle=Cr;this.getAccTitle=_r;this.setAccDescription=Dr;this.getAccDescription=Lr;this.setDiagramTitle=Or;this.getDiagramTitle=Rr;this.getConfig=o(()=>ge().er,"getConfig");this.clear(),this.addEntity=this.addEntity.bind(this),this.addAttributes=this.addAttributes.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setDirection=this.setDirection.bind(this),this.addCssStyles=this.addCssStyles.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this)}static{o(this,"ErDB")}addEntity(e,r=""){return this.entities.has(e)?!this.entities.get(e)?.alias&&r&&(this.entities.get(e).alias=r,X.info(`Add alias '${r}' to entity '${e}'`)):(this.entities.set(e,{id:`entity-${e}-${this.entities.size}`,label:e,attributes:[],alias:r,shape:"erBox",look:ge().look??"default",cssClasses:"default",cssStyles:[]}),X.info("Added new entity :",e)),this.entities.get(e)}getEntity(e){return this.entities.get(e)}getEntities(){return this.entities}getClasses(){return this.classes}addAttributes(e,r){let n=this.addEntity(e),i;for(i=r.length-1;i>=0;i--)r[i].keys||(r[i].keys=[]),r[i].comment||(r[i].comment=""),n.attributes.push(r[i]),X.debug("Added attribute ",r[i].name)}addRelationship(e,r,n,i){let a=this.entities.get(e),s=this.entities.get(n);if(!a||!s)return;let l={entityA:a.id,roleA:r,entityB:s.id,relSpec:i};this.relationships.push(l),X.debug("Added new relationship :",l)}getRelationships(){return this.relationships}getDirection(){return this.direction}setDirection(e){this.direction=e}getCompiledStyles(e){let r=[];for(let n of e){let i=this.classes.get(n);i?.styles&&(r=[...r,...i.styles??[]].map(a=>a.trim())),i?.textStyles&&(r=[...r,...i.textStyles??[]].map(a=>a.trim()))}return r}addCssStyles(e,r){for(let n of e){let i=this.entities.get(n);if(!r||!i)return;for(let a of r)i.cssStyles.push(a)}}addClass(e,r){e.forEach(n=>{let i=this.classes.get(n);i===void 0&&(i={id:n,styles:[],textStyles:[]},this.classes.set(n,i)),r&&r.forEach(function(a){if(/color/.exec(a)){let s=a.replace("fill","bgFill");i.textStyles.push(s)}i.styles.push(a)})})}setClass(e,r){for(let n of e){let i=this.entities.get(n);if(i)for(let a of r)i.cssClasses+=" "+a}}clear(){this.entities=new Map,this.classes=new Map,this.relationships=[],wr()}getData(){let e=[],r=[],n=ge();for(let a of this.entities.keys()){let s=this.entities.get(a);s&&(s.cssCompiledStyles=this.getCompiledStyles(s.cssClasses.split(" ")),e.push(s))}let i=0;for(let a of this.relationships){let s={id:Hh(a.entityA,a.entityB,{prefix:"id",counter:i++}),type:"normal",curve:"basis",start:a.entityA,end:a.entityB,label:a.roleA,labelpos:"c",thickness:"normal",classes:"relationshipLine",arrowTypeStart:a.relSpec.cardB.toLowerCase(),arrowTypeEnd:a.relSpec.cardA.toLowerCase(),pattern:a.relSpec.relType=="IDENTIFYING"?"solid":"dashed",look:n.look};r.push(s)}return{nodes:e,edges:r,other:{},config:n,direction:"TB"}}}});var bM={};ur(bM,{draw:()=>oWe});var oWe,Kce=N(()=>{"use strict";Xt();pt();Kd();Af();_f();tr();pr();oWe=o(async function(t,e,r,n){X.info("REF0:"),X.info("Drawing er diagram (unified)",e);let{securityLevel:i,er:a,layout:s}=ge(),l=n.db.getData(),u=zo(e,i);l.type=n.type,l.layoutAlgorithm=Bc(s),l.config.flowchart.nodeSpacing=a?.nodeSpacing||140,l.config.flowchart.rankSpacing=a?.rankSpacing||80,l.direction=n.db.getDirection(),l.markers=["only_one","zero_or_one","one_or_more","zero_or_more"],l.diagramId=e,await Qo(l,u),l.layoutAlgorithm==="elk"&&u.select(".edges").lower();let h=u.selectAll('[id*="-background"]');Array.from(h).length>0&&h.each(function(){let d=ze(this),m=d.attr("id").replace("-background",""),g=u.select(`#${CSS.escape(m)}`);if(!g.empty()){let y=g.attr("transform");d.attr("transform",y)}});let f=8;Ht.insertTitle(u,"erDiagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),Hs(u,f,"erDiagram",a?.useMaxWidth??!0)},"draw")});var lWe,cWe,Qce,Zce=N(()=>{"use strict";Qs();lWe=o((t,e)=>{let r=id,n=r(t,"r"),i=r(t,"g"),a=r(t,"b");return Ka(n,i,a,e)},"fade"),cWe=o(t=>`
|
||
.entityBox {
|
||
fill: ${t.mainBkg};
|
||
stroke: ${t.nodeBorder};
|
||
}
|
||
|
||
.relationshipLabelBox {
|
||
fill: ${t.tertiaryColor};
|
||
opacity: 0.7;
|
||
background-color: ${t.tertiaryColor};
|
||
rect {
|
||
opacity: 0.5;
|
||
}
|
||
}
|
||
|
||
.labelBkg {
|
||
background-color: ${lWe(t.tertiaryColor,.5)};
|
||
}
|
||
|
||
.edgeLabel .label {
|
||
fill: ${t.nodeBorder};
|
||
font-size: 14px;
|
||
}
|
||
|
||
.label {
|
||
font-family: ${t.fontFamily};
|
||
color: ${t.nodeTextColor||t.textColor};
|
||
}
|
||
|
||
.edge-pattern-dashed {
|
||
stroke-dasharray: 8,8;
|
||
}
|
||
|
||
.node rect,
|
||
.node circle,
|
||
.node ellipse,
|
||
.node polygon
|
||
{
|
||
fill: ${t.mainBkg};
|
||
stroke: ${t.nodeBorder};
|
||
stroke-width: 1px;
|
||
}
|
||
|
||
.relationshipLine {
|
||
stroke: ${t.lineColor};
|
||
stroke-width: 1;
|
||
fill: none;
|
||
}
|
||
|
||
.marker {
|
||
fill: none !important;
|
||
stroke: ${t.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
`,"getStyles"),Qce=cWe});var Jce={};ur(Jce,{diagram:()=>uWe});var uWe,eue=N(()=>{"use strict";Xce();jce();Kce();Zce();uWe={parser:Yce,get db(){return new kE},renderer:bM,styles:Qce}});function ci(t){return typeof t=="object"&&t!==null&&typeof t.$type=="string"}function ba(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"}function TM(t){return typeof t=="object"&&t!==null&&typeof t.name=="string"&&typeof t.type=="string"&&typeof t.path=="string"}function Ep(t){return typeof t=="object"&&t!==null&&ci(t.container)&&ba(t.reference)&&typeof t.message=="string"}function Ol(t){return typeof t=="object"&&t!==null&&Array.isArray(t.content)}function Df(t){return typeof t=="object"&&t!==null&&typeof t.tokenType=="object"}function Lx(t){return Ol(t)&&typeof t.fullText=="string"}var kp,Pl=N(()=>{"use strict";o(ci,"isAstNode");o(ba,"isReference");o(TM,"isAstNodeDescription");o(Ep,"isLinkingError");kp=class{static{o(this,"AbstractAstReflection")}constructor(){this.subtypes={},this.allSubtypes={}}isInstance(e,r){return ci(e)&&this.isSubtype(e.$type,r)}isSubtype(e,r){if(e===r)return!0;let n=this.subtypes[e];n||(n=this.subtypes[e]={});let i=n[r];if(i!==void 0)return i;{let a=this.computeIsSubtype(e,r);return n[r]=a,a}}getAllSubTypes(e){let r=this.allSubtypes[e];if(r)return r;{let n=this.getAllTypes(),i=[];for(let a of n)this.isSubtype(a,e)&&i.push(a);return this.allSubtypes[e]=i,i}}};o(Ol,"isCompositeCstNode");o(Df,"isLeafCstNode");o(Lx,"isRootCstNode")});function pWe(t){return typeof t=="string"?t:typeof t>"u"?"undefined":typeof t.toString=="function"?t.toString():Object.prototype.toString.call(t)}function EE(t){return!!t&&typeof t[Symbol.iterator]=="function"}function en(...t){if(t.length===1){let e=t[0];if(e instanceof fo)return e;if(EE(e))return new fo(()=>e[Symbol.iterator](),r=>r.next());if(typeof e.length=="number")return new fo(()=>({index:0}),r=>r.index<e.length?{done:!1,value:e[r.index++]}:Ga)}return t.length>1?new fo(()=>({collIndex:0,arrIndex:0}),e=>{do{if(e.iterator){let r=e.iterator.next();if(!r.done)return r;e.iterator=void 0}if(e.array){if(e.arrIndex<e.array.length)return{done:!1,value:e.array[e.arrIndex++]};e.array=void 0,e.arrIndex=0}if(e.collIndex<t.length){let r=t[e.collIndex++];EE(r)?e.iterator=r[Symbol.iterator]():r&&typeof r.length=="number"&&(e.array=r)}}while(e.iterator||e.array||e.collIndex<t.length);return Ga}):Rx}var fo,Rx,Ga,$c,gg,Ws=N(()=>{"use strict";fo=class t{static{o(this,"StreamImpl")}constructor(e,r){this.startFn=e,this.nextFn=r}iterator(){let e={state:this.startFn(),next:o(()=>this.nextFn(e.state),"next"),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){let e=this.iterator(),r=0,n=e.next();for(;!n.done;)r++,n=e.next();return r}toArray(){let e=[],r=this.iterator(),n;do n=r.next(),n.value!==void 0&&e.push(n.value);while(!n.done);return e}toSet(){return new Set(this)}toMap(e,r){let n=this.map(i=>[e?e(i):i,r?r(i):i]);return new Map(n)}toString(){return this.join()}concat(e){return new t(()=>({first:this.startFn(),firstDone:!1,iterator:e[Symbol.iterator]()}),r=>{let n;if(!r.firstDone){do if(n=this.nextFn(r.first),!n.done)return n;while(!n.done);r.firstDone=!0}do if(n=r.iterator.next(),!n.done)return n;while(!n.done);return Ga})}join(e=","){let r=this.iterator(),n="",i,a=!1;do i=r.next(),i.done||(a&&(n+=e),n+=pWe(i.value)),a=!0;while(!i.done);return n}indexOf(e,r=0){let n=this.iterator(),i=0,a=n.next();for(;!a.done;){if(i>=r&&a.value===e)return i;a=n.next(),i++}return-1}every(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(!e(n.value))return!1;n=r.next()}return!0}some(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(e(n.value))return!0;n=r.next()}return!1}forEach(e){let r=this.iterator(),n=0,i=r.next();for(;!i.done;)e(i.value,n),i=r.next(),n++}map(e){return new t(this.startFn,r=>{let{done:n,value:i}=this.nextFn(r);return n?Ga:{done:!1,value:e(i)}})}filter(e){return new t(this.startFn,r=>{let n;do if(n=this.nextFn(r),!n.done&&e(n.value))return n;while(!n.done);return Ga})}nonNullable(){return this.filter(e=>e!=null)}reduce(e,r){let n=this.iterator(),i=r,a=n.next();for(;!a.done;)i===void 0?i=a.value:i=e(i,a.value),a=n.next();return i}reduceRight(e,r){return this.recursiveReduce(this.iterator(),e,r)}recursiveReduce(e,r,n){let i=e.next();if(i.done)return n;let a=this.recursiveReduce(e,r,n);return a===void 0?i.value:r(a,i.value)}find(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(e(n.value))return n.value;n=r.next()}}findIndex(e){let r=this.iterator(),n=0,i=r.next();for(;!i.done;){if(e(i.value))return n;i=r.next(),n++}return-1}includes(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(n.value===e)return!0;n=r.next()}return!1}flatMap(e){return new t(()=>({this:this.startFn()}),r=>{do{if(r.iterator){let a=r.iterator.next();if(a.done)r.iterator=void 0;else return a}let{done:n,value:i}=this.nextFn(r.this);if(!n){let a=e(i);if(EE(a))r.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}}while(r.iterator);return Ga})}flat(e){if(e===void 0&&(e=1),e<=0)return this;let r=e>1?this.flat(e-1):this;return new t(()=>({this:r.startFn()}),n=>{do{if(n.iterator){let s=n.iterator.next();if(s.done)n.iterator=void 0;else return s}let{done:i,value:a}=r.nextFn(n.this);if(!i)if(EE(a))n.iterator=a[Symbol.iterator]();else return{done:!1,value:a}}while(n.iterator);return Ga})}head(){let r=this.iterator().next();if(!r.done)return r.value}tail(e=1){return new t(()=>{let r=this.startFn();for(let n=0;n<e;n++)if(this.nextFn(r).done)return r;return r},this.nextFn)}limit(e){return new t(()=>({size:0,state:this.startFn()}),r=>(r.size++,r.size>e?Ga:this.nextFn(r.state)))}distinct(e){return new t(()=>({set:new Set,internalState:this.startFn()}),r=>{let n;do if(n=this.nextFn(r.internalState),!n.done){let i=e?e(n.value):n.value;if(!r.set.has(i))return r.set.add(i),n}while(!n.done);return Ga})}exclude(e,r){let n=new Set;for(let i of e){let a=r?r(i):i;n.add(a)}return this.filter(i=>{let a=r?r(i):i;return!n.has(a)})}};o(pWe,"toString");o(EE,"isIterable");Rx=new fo(()=>{},()=>Ga),Ga=Object.freeze({done:!0,value:void 0});o(en,"stream");$c=class extends fo{static{o(this,"TreeStreamImpl")}constructor(e,r,n){super(()=>({iterators:n?.includeRoot?[[e][Symbol.iterator]()]:[r(e)[Symbol.iterator]()],pruned:!1}),i=>{for(i.pruned&&(i.iterators.pop(),i.pruned=!1);i.iterators.length>0;){let s=i.iterators[i.iterators.length-1].next();if(s.done)i.iterators.pop();else return i.iterators.push(r(s.value)[Symbol.iterator]()),s}return Ga})}iterator(){let e={state:this.startFn(),next:o(()=>this.nextFn(e.state),"next"),prune:o(()=>{e.state.pruned=!0},"prune"),[Symbol.iterator]:()=>e};return e}};(function(t){function e(a){return a.reduce((s,l)=>s+l,0)}o(e,"sum"),t.sum=e;function r(a){return a.reduce((s,l)=>s*l,0)}o(r,"product"),t.product=r;function n(a){return a.reduce((s,l)=>Math.min(s,l))}o(n,"min"),t.min=n;function i(a){return a.reduce((s,l)=>Math.max(s,l))}o(i,"max"),t.max=i})(gg||(gg={}))});var CE={};ur(CE,{DefaultNameRegexp:()=>SE,RangeComparison:()=>Gc,compareRange:()=>iue,findCommentNode:()=>SM,findDeclarationNodeAtOffset:()=>gWe,findLeafNodeAtOffset:()=>CM,findLeafNodeBeforeOffset:()=>aue,flattenCst:()=>mWe,getInteriorNodes:()=>xWe,getNextNode:()=>yWe,getPreviousNode:()=>oue,getStartlineNode:()=>vWe,inRange:()=>EM,isChildNode:()=>kM,isCommentNode:()=>wM,streamCst:()=>Sp,toDocumentSegment:()=>Cp,tokenToRange:()=>yg});function Sp(t){return new $c(t,e=>Ol(e)?e.content:[],{includeRoot:!0})}function mWe(t){return Sp(t).filter(Df)}function kM(t,e){for(;t.container;)if(t=t.container,t===e)return!0;return!1}function yg(t){return{start:{character:t.startColumn-1,line:t.startLine-1},end:{character:t.endColumn,line:t.endLine-1}}}function Cp(t){if(!t)return;let{offset:e,end:r,range:n}=t;return{range:n,offset:e,end:r,length:r-e}}function iue(t,e){if(t.end.line<e.start.line||t.end.line===e.start.line&&t.end.character<=e.start.character)return Gc.Before;if(t.start.line>e.end.line||t.start.line===e.end.line&&t.start.character>=e.end.character)return Gc.After;let r=t.start.line>e.start.line||t.start.line===e.start.line&&t.start.character>=e.start.character,n=t.end.line<e.end.line||t.end.line===e.end.line&&t.end.character<=e.end.character;return r&&n?Gc.Inside:r?Gc.OverlapBack:n?Gc.OverlapFront:Gc.Outside}function EM(t,e){return iue(t,e)>Gc.After}function gWe(t,e,r=SE){if(t){if(e>0){let n=e-t.offset,i=t.text.charAt(n);r.test(i)||e--}return CM(t,e)}}function SM(t,e){if(t){let r=oue(t,!0);if(r&&wM(r,e))return r;if(Lx(t)){let n=t.content.findIndex(i=>!i.hidden);for(let i=n-1;i>=0;i--){let a=t.content[i];if(wM(a,e))return a}}}}function wM(t,e){return Df(t)&&e.includes(t.tokenType.name)}function CM(t,e){if(Df(t))return t;if(Ol(t)){let r=sue(t,e,!1);if(r)return CM(r,e)}}function aue(t,e){if(Df(t))return t;if(Ol(t)){let r=sue(t,e,!0);if(r)return aue(r,e)}}function sue(t,e,r){let n=0,i=t.content.length-1,a;for(;n<=i;){let s=Math.floor((n+i)/2),l=t.content[s];if(l.offset<=e&&l.end>e)return l;l.end<=e?(a=r?l:void 0,n=s+1):i=s-1}return a}function oue(t,e=!0){for(;t.container;){let r=t.container,n=r.content.indexOf(t);for(;n>0;){n--;let i=r.content[n];if(e||!i.hidden)return i}t=r}}function yWe(t,e=!0){for(;t.container;){let r=t.container,n=r.content.indexOf(t),i=r.content.length-1;for(;n<i;){n++;let a=r.content[n];if(e||!a.hidden)return a}t=r}}function vWe(t){if(t.range.start.character===0)return t;let e=t.range.start.line,r=t,n;for(;t.container;){let i=t.container,a=n??i.content.indexOf(t);if(a===0?(t=i,n=void 0):(n=a-1,t=i.content[n]),t.range.start.line!==e)break;r=t}return r}function xWe(t,e){let r=bWe(t,e);return r?r.parent.content.slice(r.a+1,r.b):[]}function bWe(t,e){let r=nue(t),n=nue(e),i;for(let a=0;a<r.length&&a<n.length;a++){let s=r[a],l=n[a];if(s.parent===l.parent)i={parent:s.parent,a:s.index,b:l.index};else break}return i}function nue(t){let e=[];for(;t.container;){let r=t.container,n=r.content.indexOf(t);e.push({parent:r,index:n}),t=r}return e.reverse()}var Gc,SE,Bl=N(()=>{"use strict";Pl();Ws();o(Sp,"streamCst");o(mWe,"flattenCst");o(kM,"isChildNode");o(yg,"tokenToRange");o(Cp,"toDocumentSegment");(function(t){t[t.Before=0]="Before",t[t.After=1]="After",t[t.OverlapFront=2]="OverlapFront",t[t.OverlapBack=3]="OverlapBack",t[t.Inside=4]="Inside",t[t.Outside=5]="Outside"})(Gc||(Gc={}));o(iue,"compareRange");o(EM,"inRange");SE=/^[\w\p{L}]$/u;o(gWe,"findDeclarationNodeAtOffset");o(SM,"findCommentNode");o(wM,"isCommentNode");o(CM,"findLeafNodeAtOffset");o(aue,"findLeafNodeBeforeOffset");o(sue,"binarySearch");o(oue,"getPreviousNode");o(yWe,"getNextNode");o(vWe,"getStartlineNode");o(xWe,"getInteriorNodes");o(bWe,"getCommonParent");o(nue,"getParentChain")});function zc(t){throw new Error("Error! The input value was not handled.")}var Ap,AE=N(()=>{"use strict";Ap=class extends Error{static{o(this,"ErrorWithLocation")}constructor(e,r){super(e?`${r} at ${e.range.start.line}:${e.range.start.character}`:r)}};o(zc,"assertUnreachable")});var Gx={};ur(Gx,{AbstractElement:()=>bg,AbstractRule:()=>vg,AbstractType:()=>xg,Action:()=>$g,Alternatives:()=>Gg,ArrayLiteral:()=>Tg,ArrayType:()=>wg,Assignment:()=>zg,BooleanLiteral:()=>kg,CharacterRange:()=>Vg,Condition:()=>Nx,Conjunction:()=>Eg,CrossReference:()=>Ug,Disjunction:()=>Sg,EndOfFile:()=>Hg,Grammar:()=>Cg,GrammarImport:()=>Ix,Group:()=>Wg,InferredType:()=>Ag,Interface:()=>_g,Keyword:()=>qg,LangiumGrammarAstReflection:()=>r1,LangiumGrammarTerminals:()=>TWe,NamedArgument:()=>Ox,NegatedToken:()=>Yg,Negation:()=>Dg,NumberLiteral:()=>Lg,Parameter:()=>Rg,ParameterReference:()=>Ng,ParserRule:()=>Mg,ReferenceType:()=>Ig,RegexToken:()=>Xg,ReturnType:()=>Px,RuleCall:()=>jg,SimpleType:()=>Og,StringLiteral:()=>Pg,TerminalAlternatives:()=>Kg,TerminalGroup:()=>Qg,TerminalRule:()=>_p,TerminalRuleCall:()=>Zg,Type:()=>Bg,TypeAttribute:()=>Bx,TypeDefinition:()=>_E,UnionType:()=>Fg,UnorderedGroup:()=>Jg,UntilToken:()=>e1,ValueLiteral:()=>Mx,Wildcard:()=>t1,isAbstractElement:()=>Fx,isAbstractRule:()=>wWe,isAbstractType:()=>kWe,isAction:()=>Vu,isAlternatives:()=>NE,isArrayLiteral:()=>_We,isArrayType:()=>AM,isAssignment:()=>Fl,isBooleanLiteral:()=>_M,isCharacterRange:()=>PM,isCondition:()=>EWe,isConjunction:()=>DM,isCrossReference:()=>Dp,isDisjunction:()=>LM,isEndOfFile:()=>BM,isFeatureName:()=>SWe,isGrammar:()=>DWe,isGrammarImport:()=>LWe,isGroup:()=>Lf,isInferredType:()=>DE,isInterface:()=>LE,isKeyword:()=>Zo,isNamedArgument:()=>RWe,isNegatedToken:()=>FM,isNegation:()=>RM,isNumberLiteral:()=>NWe,isParameter:()=>MWe,isParameterReference:()=>NM,isParserRule:()=>za,isPrimitiveType:()=>lue,isReferenceType:()=>MM,isRegexToken:()=>$M,isReturnType:()=>IM,isRuleCall:()=>$l,isSimpleType:()=>RE,isStringLiteral:()=>IWe,isTerminalAlternatives:()=>GM,isTerminalGroup:()=>zM,isTerminalRule:()=>po,isTerminalRuleCall:()=>ME,isType:()=>$x,isTypeAttribute:()=>OWe,isTypeDefinition:()=>CWe,isUnionType:()=>OM,isUnorderedGroup:()=>IE,isUntilToken:()=>VM,isValueLiteral:()=>AWe,isWildcard:()=>UM,reflection:()=>hr});function wWe(t){return hr.isInstance(t,vg)}function kWe(t){return hr.isInstance(t,xg)}function EWe(t){return hr.isInstance(t,Nx)}function SWe(t){return lue(t)||t==="current"||t==="entry"||t==="extends"||t==="false"||t==="fragment"||t==="grammar"||t==="hidden"||t==="import"||t==="interface"||t==="returns"||t==="terminal"||t==="true"||t==="type"||t==="infer"||t==="infers"||t==="with"||typeof t=="string"&&/\^?[_a-zA-Z][\w_]*/.test(t)}function lue(t){return t==="string"||t==="number"||t==="boolean"||t==="Date"||t==="bigint"}function CWe(t){return hr.isInstance(t,_E)}function AWe(t){return hr.isInstance(t,Mx)}function Fx(t){return hr.isInstance(t,bg)}function _We(t){return hr.isInstance(t,Tg)}function AM(t){return hr.isInstance(t,wg)}function _M(t){return hr.isInstance(t,kg)}function DM(t){return hr.isInstance(t,Eg)}function LM(t){return hr.isInstance(t,Sg)}function DWe(t){return hr.isInstance(t,Cg)}function LWe(t){return hr.isInstance(t,Ix)}function DE(t){return hr.isInstance(t,Ag)}function LE(t){return hr.isInstance(t,_g)}function RWe(t){return hr.isInstance(t,Ox)}function RM(t){return hr.isInstance(t,Dg)}function NWe(t){return hr.isInstance(t,Lg)}function MWe(t){return hr.isInstance(t,Rg)}function NM(t){return hr.isInstance(t,Ng)}function za(t){return hr.isInstance(t,Mg)}function MM(t){return hr.isInstance(t,Ig)}function IM(t){return hr.isInstance(t,Px)}function RE(t){return hr.isInstance(t,Og)}function IWe(t){return hr.isInstance(t,Pg)}function po(t){return hr.isInstance(t,_p)}function $x(t){return hr.isInstance(t,Bg)}function OWe(t){return hr.isInstance(t,Bx)}function OM(t){return hr.isInstance(t,Fg)}function Vu(t){return hr.isInstance(t,$g)}function NE(t){return hr.isInstance(t,Gg)}function Fl(t){return hr.isInstance(t,zg)}function PM(t){return hr.isInstance(t,Vg)}function Dp(t){return hr.isInstance(t,Ug)}function BM(t){return hr.isInstance(t,Hg)}function Lf(t){return hr.isInstance(t,Wg)}function Zo(t){return hr.isInstance(t,qg)}function FM(t){return hr.isInstance(t,Yg)}function $M(t){return hr.isInstance(t,Xg)}function $l(t){return hr.isInstance(t,jg)}function GM(t){return hr.isInstance(t,Kg)}function zM(t){return hr.isInstance(t,Qg)}function ME(t){return hr.isInstance(t,Zg)}function IE(t){return hr.isInstance(t,Jg)}function VM(t){return hr.isInstance(t,e1)}function UM(t){return hr.isInstance(t,t1)}var TWe,vg,xg,Nx,_E,Mx,bg,Tg,wg,kg,Eg,Sg,Cg,Ix,Ag,_g,Ox,Dg,Lg,Rg,Ng,Mg,Ig,Px,Og,Pg,_p,Bg,Bx,Fg,$g,Gg,zg,Vg,Ug,Hg,Wg,qg,Yg,Xg,jg,Kg,Qg,Zg,Jg,e1,t1,r1,hr,Vc=N(()=>{"use strict";Pl();TWe={ID:/\^?[_a-zA-Z][\w_]*/,STRING:/"(\\.|[^"\\])*"|'(\\.|[^'\\])*'/,NUMBER:/NaN|-?((\d*\.\d+|\d+)([Ee][+-]?\d+)?|Infinity)/,RegexLiteral:/\/(?![*+?])(?:[^\r\n\[/\\]|\\.|\[(?:[^\r\n\]\\]|\\.)*\])+\/[a-z]*/,WS:/\s+/,ML_COMMENT:/\/\*[\s\S]*?\*\//,SL_COMMENT:/\/\/[^\n\r]*/},vg="AbstractRule";o(wWe,"isAbstractRule");xg="AbstractType";o(kWe,"isAbstractType");Nx="Condition";o(EWe,"isCondition");o(SWe,"isFeatureName");o(lue,"isPrimitiveType");_E="TypeDefinition";o(CWe,"isTypeDefinition");Mx="ValueLiteral";o(AWe,"isValueLiteral");bg="AbstractElement";o(Fx,"isAbstractElement");Tg="ArrayLiteral";o(_We,"isArrayLiteral");wg="ArrayType";o(AM,"isArrayType");kg="BooleanLiteral";o(_M,"isBooleanLiteral");Eg="Conjunction";o(DM,"isConjunction");Sg="Disjunction";o(LM,"isDisjunction");Cg="Grammar";o(DWe,"isGrammar");Ix="GrammarImport";o(LWe,"isGrammarImport");Ag="InferredType";o(DE,"isInferredType");_g="Interface";o(LE,"isInterface");Ox="NamedArgument";o(RWe,"isNamedArgument");Dg="Negation";o(RM,"isNegation");Lg="NumberLiteral";o(NWe,"isNumberLiteral");Rg="Parameter";o(MWe,"isParameter");Ng="ParameterReference";o(NM,"isParameterReference");Mg="ParserRule";o(za,"isParserRule");Ig="ReferenceType";o(MM,"isReferenceType");Px="ReturnType";o(IM,"isReturnType");Og="SimpleType";o(RE,"isSimpleType");Pg="StringLiteral";o(IWe,"isStringLiteral");_p="TerminalRule";o(po,"isTerminalRule");Bg="Type";o($x,"isType");Bx="TypeAttribute";o(OWe,"isTypeAttribute");Fg="UnionType";o(OM,"isUnionType");$g="Action";o(Vu,"isAction");Gg="Alternatives";o(NE,"isAlternatives");zg="Assignment";o(Fl,"isAssignment");Vg="CharacterRange";o(PM,"isCharacterRange");Ug="CrossReference";o(Dp,"isCrossReference");Hg="EndOfFile";o(BM,"isEndOfFile");Wg="Group";o(Lf,"isGroup");qg="Keyword";o(Zo,"isKeyword");Yg="NegatedToken";o(FM,"isNegatedToken");Xg="RegexToken";o($M,"isRegexToken");jg="RuleCall";o($l,"isRuleCall");Kg="TerminalAlternatives";o(GM,"isTerminalAlternatives");Qg="TerminalGroup";o(zM,"isTerminalGroup");Zg="TerminalRuleCall";o(ME,"isTerminalRuleCall");Jg="UnorderedGroup";o(IE,"isUnorderedGroup");e1="UntilToken";o(VM,"isUntilToken");t1="Wildcard";o(UM,"isWildcard");r1=class extends kp{static{o(this,"LangiumGrammarAstReflection")}getAllTypes(){return[bg,vg,xg,$g,Gg,Tg,wg,zg,kg,Vg,Nx,Eg,Ug,Sg,Hg,Cg,Ix,Wg,Ag,_g,qg,Ox,Yg,Dg,Lg,Rg,Ng,Mg,Ig,Xg,Px,jg,Og,Pg,Kg,Qg,_p,Zg,Bg,Bx,_E,Fg,Jg,e1,Mx,t1]}computeIsSubtype(e,r){switch(e){case $g:case Gg:case zg:case Vg:case Ug:case Hg:case Wg:case qg:case Yg:case Xg:case jg:case Kg:case Qg:case Zg:case Jg:case e1:case t1:return this.isSubtype(bg,r);case Tg:case Lg:case Pg:return this.isSubtype(Mx,r);case wg:case Ig:case Og:case Fg:return this.isSubtype(_E,r);case kg:return this.isSubtype(Nx,r)||this.isSubtype(Mx,r);case Eg:case Sg:case Dg:case Ng:return this.isSubtype(Nx,r);case Ag:case _g:case Bg:return this.isSubtype(xg,r);case Mg:return this.isSubtype(vg,r)||this.isSubtype(xg,r);case _p:return this.isSubtype(vg,r);default:return!1}}getReferenceType(e){let r=`${e.container.$type}:${e.property}`;switch(r){case"Action:type":case"CrossReference:type":case"Interface:superTypes":case"ParserRule:returnType":case"SimpleType:typeRef":return xg;case"Grammar:hiddenTokens":case"ParserRule:hiddenTokens":case"RuleCall:rule":return vg;case"Grammar:usedGrammars":return Cg;case"NamedArgument:parameter":case"ParameterReference:parameter":return Rg;case"TerminalRuleCall:rule":return _p;default:throw new Error(`${r} is not a valid reference id.`)}}getTypeMetaData(e){switch(e){case bg:return{name:bg,properties:[{name:"cardinality"},{name:"lookahead"}]};case Tg:return{name:Tg,properties:[{name:"elements",defaultValue:[]}]};case wg:return{name:wg,properties:[{name:"elementType"}]};case kg:return{name:kg,properties:[{name:"true",defaultValue:!1}]};case Eg:return{name:Eg,properties:[{name:"left"},{name:"right"}]};case Sg:return{name:Sg,properties:[{name:"left"},{name:"right"}]};case Cg:return{name:Cg,properties:[{name:"definesHiddenTokens",defaultValue:!1},{name:"hiddenTokens",defaultValue:[]},{name:"imports",defaultValue:[]},{name:"interfaces",defaultValue:[]},{name:"isDeclared",defaultValue:!1},{name:"name"},{name:"rules",defaultValue:[]},{name:"types",defaultValue:[]},{name:"usedGrammars",defaultValue:[]}]};case Ix:return{name:Ix,properties:[{name:"path"}]};case Ag:return{name:Ag,properties:[{name:"name"}]};case _g:return{name:_g,properties:[{name:"attributes",defaultValue:[]},{name:"name"},{name:"superTypes",defaultValue:[]}]};case Ox:return{name:Ox,properties:[{name:"calledByName",defaultValue:!1},{name:"parameter"},{name:"value"}]};case Dg:return{name:Dg,properties:[{name:"value"}]};case Lg:return{name:Lg,properties:[{name:"value"}]};case Rg:return{name:Rg,properties:[{name:"name"}]};case Ng:return{name:Ng,properties:[{name:"parameter"}]};case Mg:return{name:Mg,properties:[{name:"dataType"},{name:"definesHiddenTokens",defaultValue:!1},{name:"definition"},{name:"entry",defaultValue:!1},{name:"fragment",defaultValue:!1},{name:"hiddenTokens",defaultValue:[]},{name:"inferredType"},{name:"name"},{name:"parameters",defaultValue:[]},{name:"returnType"},{name:"wildcard",defaultValue:!1}]};case Ig:return{name:Ig,properties:[{name:"referenceType"}]};case Px:return{name:Px,properties:[{name:"name"}]};case Og:return{name:Og,properties:[{name:"primitiveType"},{name:"stringType"},{name:"typeRef"}]};case Pg:return{name:Pg,properties:[{name:"value"}]};case _p:return{name:_p,properties:[{name:"definition"},{name:"fragment",defaultValue:!1},{name:"hidden",defaultValue:!1},{name:"name"},{name:"type"}]};case Bg:return{name:Bg,properties:[{name:"name"},{name:"type"}]};case Bx:return{name:Bx,properties:[{name:"defaultValue"},{name:"isOptional",defaultValue:!1},{name:"name"},{name:"type"}]};case Fg:return{name:Fg,properties:[{name:"types",defaultValue:[]}]};case $g:return{name:$g,properties:[{name:"cardinality"},{name:"feature"},{name:"inferredType"},{name:"lookahead"},{name:"operator"},{name:"type"}]};case Gg:return{name:Gg,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case zg:return{name:zg,properties:[{name:"cardinality"},{name:"feature"},{name:"lookahead"},{name:"operator"},{name:"terminal"}]};case Vg:return{name:Vg,properties:[{name:"cardinality"},{name:"left"},{name:"lookahead"},{name:"right"}]};case Ug:return{name:Ug,properties:[{name:"cardinality"},{name:"deprecatedSyntax",defaultValue:!1},{name:"lookahead"},{name:"terminal"},{name:"type"}]};case Hg:return{name:Hg,properties:[{name:"cardinality"},{name:"lookahead"}]};case Wg:return{name:Wg,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"guardCondition"},{name:"lookahead"}]};case qg:return{name:qg,properties:[{name:"cardinality"},{name:"lookahead"},{name:"value"}]};case Yg:return{name:Yg,properties:[{name:"cardinality"},{name:"lookahead"},{name:"terminal"}]};case Xg:return{name:Xg,properties:[{name:"cardinality"},{name:"lookahead"},{name:"regex"}]};case jg:return{name:jg,properties:[{name:"arguments",defaultValue:[]},{name:"cardinality"},{name:"lookahead"},{name:"rule"}]};case Kg:return{name:Kg,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case Qg:return{name:Qg,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case Zg:return{name:Zg,properties:[{name:"cardinality"},{name:"lookahead"},{name:"rule"}]};case Jg:return{name:Jg,properties:[{name:"cardinality"},{name:"elements",defaultValue:[]},{name:"lookahead"}]};case e1:return{name:e1,properties:[{name:"cardinality"},{name:"lookahead"},{name:"terminal"}]};case t1:return{name:t1,properties:[{name:"cardinality"},{name:"lookahead"}]};default:return{name:e,properties:[]}}}},hr=new r1});var PE={};ur(PE,{assignMandatoryProperties:()=>qM,copyAstNode:()=>WM,findLocalReferences:()=>BWe,findRootNode:()=>zx,getContainerOfType:()=>Lp,getDocument:()=>Va,hasContainerOfType:()=>PWe,linkContentToContainer:()=>OE,streamAllContents:()=>Uc,streamAst:()=>Jo,streamContents:()=>Vx,streamReferences:()=>n1});function OE(t){for(let[e,r]of Object.entries(t))e.startsWith("$")||(Array.isArray(r)?r.forEach((n,i)=>{ci(n)&&(n.$container=t,n.$containerProperty=e,n.$containerIndex=i)}):ci(r)&&(r.$container=t,r.$containerProperty=e))}function Lp(t,e){let r=t;for(;r;){if(e(r))return r;r=r.$container}}function PWe(t,e){let r=t;for(;r;){if(e(r))return!0;r=r.$container}return!1}function Va(t){let r=zx(t).$document;if(!r)throw new Error("AST node has no document.");return r}function zx(t){for(;t.$container;)t=t.$container;return t}function Vx(t,e){if(!t)throw new Error("Node must be an AstNode.");let r=e?.range;return new fo(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),n=>{for(;n.keyIndex<n.keys.length;){let i=n.keys[n.keyIndex];if(!i.startsWith("$")){let a=t[i];if(ci(a)){if(n.keyIndex++,HM(a,r))return{done:!1,value:a}}else if(Array.isArray(a)){for(;n.arrayIndex<a.length;){let s=n.arrayIndex++,l=a[s];if(ci(l)&&HM(l,r))return{done:!1,value:l}}n.arrayIndex=0}}n.keyIndex++}return Ga})}function Uc(t,e){if(!t)throw new Error("Root node must be an AstNode.");return new $c(t,r=>Vx(r,e))}function Jo(t,e){if(t){if(e?.range&&!HM(t,e.range))return new $c(t,()=>[])}else throw new Error("Root node must be an AstNode.");return new $c(t,r=>Vx(r,e),{includeRoot:!0})}function HM(t,e){var r;if(!e)return!0;let n=(r=t.$cstNode)===null||r===void 0?void 0:r.range;return n?EM(n,e):!1}function n1(t){return new fo(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),e=>{for(;e.keyIndex<e.keys.length;){let r=e.keys[e.keyIndex];if(!r.startsWith("$")){let n=t[r];if(ba(n))return e.keyIndex++,{done:!1,value:{reference:n,container:t,property:r}};if(Array.isArray(n)){for(;e.arrayIndex<n.length;){let i=e.arrayIndex++,a=n[i];if(ba(a))return{done:!1,value:{reference:a,container:t,property:r,index:i}}}e.arrayIndex=0}}e.keyIndex++}return Ga})}function BWe(t,e=Va(t).parseResult.value){let r=[];return Jo(e).forEach(n=>{n1(n).forEach(i=>{i.reference.ref===t&&r.push(i.reference)})}),en(r)}function qM(t,e){let r=t.getTypeMetaData(e.$type),n=e;for(let i of r.properties)i.defaultValue!==void 0&&n[i.name]===void 0&&(n[i.name]=cue(i.defaultValue))}function cue(t){return Array.isArray(t)?[...t.map(cue)]:t}function WM(t,e){let r={$type:t.$type};for(let[n,i]of Object.entries(t))if(!n.startsWith("$"))if(ci(i))r[n]=WM(i,e);else if(ba(i))r[n]=e(r,n,i.$refNode,i.$refText);else if(Array.isArray(i)){let a=[];for(let s of i)ci(s)?a.push(WM(s,e)):ba(s)?a.push(e(r,n,s.$refNode,s.$refText)):a.push(s);r[n]=a}else r[n]=i;return OE(r),r}var us=N(()=>{"use strict";Pl();Ws();Bl();o(OE,"linkContentToContainer");o(Lp,"getContainerOfType");o(PWe,"hasContainerOfType");o(Va,"getDocument");o(zx,"findRootNode");o(Vx,"streamContents");o(Uc,"streamAllContents");o(Jo,"streamAst");o(HM,"isAstNodeInRange");o(n1,"streamReferences");o(BWe,"findLocalReferences");o(qM,"assignMandatoryProperties");o(cue,"copyDefaultValue");o(WM,"copyAstNode")});function or(t){return t.charCodeAt(0)}function BE(t,e){Array.isArray(t)?t.forEach(function(r){e.push(r)}):e.push(t)}function i1(t,e){if(t[e]===!0)throw"duplicate flag "+e;let r=t[e];t[e]=!0}function Rp(t){if(t===void 0)throw Error("Internal Error - Should never get here!");return!0}function Ux(){throw Error("Internal Error - Should never get here!")}function YM(t){return t.type==="Character"}var XM=N(()=>{"use strict";o(or,"cc");o(BE,"insertToSet");o(i1,"addFlag");o(Rp,"ASSERT_EXISTS");o(Ux,"ASSERT_NEVER_REACH_HERE");o(YM,"isCharacter")});var Hx,Wx,jM,uue=N(()=>{"use strict";XM();Hx=[];for(let t=or("0");t<=or("9");t++)Hx.push(t);Wx=[or("_")].concat(Hx);for(let t=or("a");t<=or("z");t++)Wx.push(t);for(let t=or("A");t<=or("Z");t++)Wx.push(t);jM=[or(" "),or("\f"),or(`
|
||
`),or("\r"),or(" "),or("\v"),or(" "),or("\xA0"),or("\u1680"),or("\u2000"),or("\u2001"),or("\u2002"),or("\u2003"),or("\u2004"),or("\u2005"),or("\u2006"),or("\u2007"),or("\u2008"),or("\u2009"),or("\u200A"),or("\u2028"),or("\u2029"),or("\u202F"),or("\u205F"),or("\u3000"),or("\uFEFF")]});var FWe,FE,$We,Np,hue=N(()=>{"use strict";XM();uue();FWe=/[0-9a-fA-F]/,FE=/[0-9]/,$We=/[1-9]/,Np=class{static{o(this,"RegExpParser")}constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(e){this.idx=e.idx,this.input=e.input,this.groupIdx=e.groupIdx}pattern(e){this.idx=0,this.input=e,this.groupIdx=0,this.consumeChar("/");let r=this.disjunction();this.consumeChar("/");let n={type:"Flags",loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":i1(n,"global");break;case"i":i1(n,"ignoreCase");break;case"m":i1(n,"multiLine");break;case"u":i1(n,"unicode");break;case"y":i1(n,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:n,value:r,loc:this.loc(0)}}disjunction(){let e=[],r=this.idx;for(e.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(r)}}alternative(){let e=[],r=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(r)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){let e=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(e)};case"$":return{type:"EndAnchor",loc:this.loc(e)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(e)};case"B":return{type:"NonWordBoundary",loc:this.loc(e)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let r;switch(this.popChar()){case"=":r="Lookahead";break;case"!":r="NegativeLookahead";break}Rp(r);let n=this.disjunction();return this.consumeChar(")"),{type:r,value:n,loc:this.loc(e)}}return Ux()}quantifier(e=!1){let r,n=this.idx;switch(this.popChar()){case"*":r={atLeast:0,atMost:1/0};break;case"+":r={atLeast:1,atMost:1/0};break;case"?":r={atLeast:0,atMost:1};break;case"{":let i=this.integerIncludingZero();switch(this.popChar()){case"}":r={atLeast:i,atMost:i};break;case",":let a;this.isDigit()?(a=this.integerIncludingZero(),r={atLeast:i,atMost:a}):r={atLeast:i,atMost:1/0},this.consumeChar("}");break}if(e===!0&&r===void 0)return;Rp(r);break}if(!(e===!0&&r===void 0)&&Rp(r))return this.peekChar(0)==="?"?(this.consumeChar("?"),r.greedy=!1):r.greedy=!0,r.type="Quantifier",r.loc=this.loc(n),r}atom(){let e,r=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group();break}return e===void 0&&this.isPatternCharacter()&&(e=this.patternCharacter()),Rp(e)?(e.loc=this.loc(r),this.isQuantifier()&&(e.quantifier=this.quantifier()),e):Ux()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[or(`
|
||
`),or("\r"),or("\u2028"),or("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let e,r=!1;switch(this.popChar()){case"d":e=Hx;break;case"D":e=Hx,r=!0;break;case"s":e=jM;break;case"S":e=jM,r=!0;break;case"w":e=Wx;break;case"W":e=Wx,r=!0;break}return Rp(e)?{type:"Set",value:e,complement:r}:Ux()}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=or("\f");break;case"n":e=or(`
|
||
`);break;case"r":e=or("\r");break;case"t":e=or(" ");break;case"v":e=or("\v");break}return Rp(e)?{type:"Character",value:e}:Ux()}controlLetterEscapeAtom(){this.consumeChar("c");let e=this.popChar();if(/[a-zA-Z]/.test(e)===!1)throw Error("Invalid ");return{type:"Character",value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:or("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){let e=this.popChar();return{type:"Character",value:or(e)}}classPatternCharacterAtom(){switch(this.peekChar()){case`
|
||
`:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:let e=this.popChar();return{type:"Character",value:or(e)}}}characterClass(){let e=[],r=!1;for(this.consumeChar("["),this.peekChar(0)==="^"&&(this.consumeChar("^"),r=!0);this.isClassAtom();){let n=this.classAtom(),i=n.type==="Character";if(YM(n)&&this.isRangeDash()){this.consumeChar("-");let a=this.classAtom(),s=a.type==="Character";if(YM(a)){if(a.value<n.value)throw Error("Range out of order in character class");e.push({from:n.value,to:a.value})}else BE(n.value,e),e.push(or("-")),BE(a.value,e)}else BE(n.value,e)}return this.consumeChar("]"),{type:"Set",complement:r,value:e}}classAtom(){switch(this.peekChar()){case"]":case`
|
||
`:case"\r":case"\u2028":case"\u2029":throw Error("TBD");case"\\":return this.classEscape();default:return this.classPatternCharacterAtom()}}classEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"b":return this.consumeChar("b"),{type:"Character",value:or("\b")};case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}group(){let e=!0;switch(this.consumeChar("("),this.peekChar(0)){case"?":this.consumeChar("?"),this.consumeChar(":"),e=!1;break;default:this.groupIdx++;break}let r=this.disjunction();this.consumeChar(")");let n={type:"Group",capturing:e,value:r};return e&&(n.idx=this.groupIdx),n}positiveInteger(){let e=this.popChar();if($We.test(e)===!1)throw Error("Expecting a positive integer");for(;FE.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}integerIncludingZero(){let e=this.popChar();if(FE.test(e)===!1)throw Error("Expecting an integer");for(;FE.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}patternCharacter(){let e=this.popChar();switch(e){case`
|
||
`:case"\r":case"\u2028":case"\u2029":case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":throw Error("TBD");default:return{type:"Character",value:or(e)}}}isRegExpFlag(){switch(this.peekChar(0)){case"g":case"i":case"m":case"u":case"y":return!0;default:return!1}}isRangeDash(){return this.peekChar()==="-"&&this.isClassAtom(1)}isDigit(){return FE.test(this.peekChar(0))}isClassAtom(e=0){switch(this.peekChar(e)){case"]":case`
|
||
`:case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}isTerm(){return this.isAtom()||this.isAssertion()}isAtom(){if(this.isPatternCharacter())return!0;switch(this.peekChar(0)){case".":case"\\":case"[":case"(":return!0;default:return!1}}isAssertion(){switch(this.peekChar(0)){case"^":case"$":return!0;case"\\":switch(this.peekChar(1)){case"b":case"B":return!0;default:return!1}case"(":return this.peekChar(1)==="?"&&(this.peekChar(2)==="="||this.peekChar(2)==="!");default:return!1}}isQuantifier(){let e=this.saveState();try{return this.quantifier(!0)!==void 0}catch{return!1}finally{this.restoreState(e)}}isPatternCharacter(){switch(this.peekChar()){case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":case"/":case`
|
||
`:case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}parseHexDigits(e){let r="";for(let i=0;i<e;i++){let a=this.popChar();if(FWe.test(a)===!1)throw Error("Expecting a HexDecimal digits");r+=a}return{type:"Character",value:parseInt(r,16)}}peekChar(e=0){return this.input[this.idx+e]}popChar(){let e=this.peekChar(0);return this.consumeChar(void 0),e}consumeChar(e){if(e!==void 0&&this.input[this.idx]!==e)throw Error("Expected: '"+e+"' but found: '"+this.input[this.idx]+"' at offset: "+this.idx);if(this.idx>=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(e){return{begin:e,end:this.idx}}}});var Hc,fue=N(()=>{"use strict";Hc=class{static{o(this,"BaseRegExpVisitor")}visitChildren(e){for(let r in e){let n=e[r];e.hasOwnProperty(r)&&(n.type!==void 0?this.visit(n):Array.isArray(n)&&n.forEach(i=>{this.visit(i)},this))}}visit(e){switch(e.type){case"Pattern":this.visitPattern(e);break;case"Flags":this.visitFlags(e);break;case"Disjunction":this.visitDisjunction(e);break;case"Alternative":this.visitAlternative(e);break;case"StartAnchor":this.visitStartAnchor(e);break;case"EndAnchor":this.visitEndAnchor(e);break;case"WordBoundary":this.visitWordBoundary(e);break;case"NonWordBoundary":this.visitNonWordBoundary(e);break;case"Lookahead":this.visitLookahead(e);break;case"NegativeLookahead":this.visitNegativeLookahead(e);break;case"Character":this.visitCharacter(e);break;case"Set":this.visitSet(e);break;case"Group":this.visitGroup(e);break;case"GroupBackReference":this.visitGroupBackReference(e);break;case"Quantifier":this.visitQuantifier(e);break}this.visitChildren(e)}visitPattern(e){}visitFlags(e){}visitDisjunction(e){}visitAlternative(e){}visitStartAnchor(e){}visitEndAnchor(e){}visitWordBoundary(e){}visitNonWordBoundary(e){}visitLookahead(e){}visitNegativeLookahead(e){}visitCharacter(e){}visitSet(e){}visitGroup(e){}visitGroupBackReference(e){}visitQuantifier(e){}}});var qx=N(()=>{"use strict";hue();fue()});var $E={};ur($E,{NEWLINE_REGEXP:()=>QM,escapeRegExp:()=>Ip,getCaseInsensitivePattern:()=>JM,getTerminalParts:()=>GWe,isMultilineComment:()=>ZM,isWhitespace:()=>a1,partialMatches:()=>eI,partialRegExp:()=>mue,whitespaceCharacters:()=>pue});function GWe(t){try{typeof t!="string"&&(t=t.source),t=`/${t}/`;let e=due.pattern(t),r=[];for(let n of e.value.value)Mp.reset(t),Mp.visit(n),r.push({start:Mp.startRegexp,end:Mp.endRegex});return r}catch{return[]}}function ZM(t){try{return typeof t=="string"&&(t=new RegExp(t)),t=t.toString(),Mp.reset(t),Mp.visit(due.pattern(t)),Mp.multiline}catch{return!1}}function a1(t){let e=typeof t=="string"?new RegExp(t):t;return pue.some(r=>e.test(r))}function Ip(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function JM(t){return Array.prototype.map.call(t,e=>/\w/.test(e)?`[${e.toLowerCase()}${e.toUpperCase()}]`:Ip(e)).join("")}function eI(t,e){let r=mue(t),n=e.match(r);return!!n&&n[0].length>0}function mue(t){typeof t=="string"&&(t=new RegExp(t));let e=t,r=t.source,n=0;function i(){let a="",s;function l(h){a+=r.substr(n,h),n+=h}o(l,"appendRaw");function u(h){a+="(?:"+r.substr(n,h)+"|$)",n+=h}for(o(u,"appendOptional");n<r.length;)switch(r[n]){case"\\":switch(r[n+1]){case"c":u(3);break;case"x":u(4);break;case"u":e.unicode?r[n+2]==="{"?u(r.indexOf("}",n)-n+1):u(6):u(2);break;case"p":case"P":e.unicode?u(r.indexOf("}",n)-n+1):u(2);break;case"k":u(r.indexOf(">",n)-n+1);break;default:u(2);break}break;case"[":s=/\[(?:\\.|.)*?\]/g,s.lastIndex=n,s=s.exec(r)||[],u(s[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":l(1);break;case"{":s=/\{\d+,?\d*\}/g,s.lastIndex=n,s=s.exec(r),s?l(s[0].length):u(1);break;case"(":if(r[n+1]==="?")switch(r[n+2]){case":":a+="(?:",n+=3,a+=i()+"|$)";break;case"=":a+="(?=",n+=3,a+=i()+")";break;case"!":s=n,n+=3,i(),a+=r.substr(s,n-s);break;case"<":switch(r[n+3]){case"=":case"!":s=n,n+=4,i(),a+=r.substr(s,n-s);break;default:l(r.indexOf(">",n)-n+1),a+=i()+"|$)";break}break}else l(1),a+=i()+"|$)";break;case")":return++n,a;default:u(1);break}return a}return o(i,"process"),new RegExp(i(),t.flags)}var QM,due,KM,Mp,pue,s1=N(()=>{"use strict";qx();QM=/\r?\n/gm,due=new Np,KM=class extends Hc{static{o(this,"TerminalRegExpVisitor")}constructor(){super(...arguments),this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(e){this.multiline=!1,this.regex=e,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(e){e.quantifier&&(this.isStarting=!1,this.endRegexpStack=[])}visitCharacter(e){let r=String.fromCharCode(e.value);if(!this.multiline&&r===`
|
||
`&&(this.multiline=!0),e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let n=Ip(r);this.endRegexpStack.push(n),this.isStarting&&(this.startRegexp+=n)}}visitSet(e){if(!this.multiline){let r=this.regex.substring(e.loc.begin,e.loc.end),n=new RegExp(r);this.multiline=!!`
|
||
`.match(n)}if(e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let r=this.regex.substring(e.loc.begin,e.loc.end);this.endRegexpStack.push(r),this.isStarting&&(this.startRegexp+=r)}}visitChildren(e){e.type==="Group"&&e.quantifier||super.visitChildren(e)}},Mp=new KM;o(GWe,"getTerminalParts");o(ZM,"isMultilineComment");pue=`\f
|
||
\r \v \xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF`.split("");o(a1,"isWhitespace");o(Ip,"escapeRegExp");o(JM,"getCaseInsensitivePattern");o(eI,"partialMatches");o(mue,"partialRegExp")});var zE={};ur(zE,{findAssignment:()=>cI,findNameAssignment:()=>GE,findNodeForKeyword:()=>oI,findNodeForProperty:()=>Xx,findNodesForKeyword:()=>zWe,findNodesForKeywordInternal:()=>lI,findNodesForProperty:()=>aI,getActionAtElement:()=>bue,getActionType:()=>wue,getAllReachableRules:()=>Yx,getCrossReferenceTerminal:()=>nI,getEntryRule:()=>gue,getExplicitRuleType:()=>o1,getHiddenRules:()=>yue,getRuleType:()=>uI,getRuleTypeName:()=>qWe,getTypeName:()=>Kx,isArrayCardinality:()=>UWe,isArrayOperator:()=>HWe,isCommentTerminal:()=>iI,isDataType:()=>WWe,isDataTypeRule:()=>jx,isOptionalCardinality:()=>VWe,terminalRegex:()=>l1});function gue(t){return t.rules.find(e=>za(e)&&e.entry)}function yue(t){return t.rules.filter(e=>po(e)&&e.hidden)}function Yx(t,e){let r=new Set,n=gue(t);if(!n)return new Set(t.rules);let i=[n].concat(yue(t));for(let s of i)vue(s,r,e);let a=new Set;for(let s of t.rules)(r.has(s.name)||po(s)&&s.hidden)&&a.add(s);return a}function vue(t,e,r){e.add(t.name),Uc(t).forEach(n=>{if($l(n)||r&&ME(n)){let i=n.rule.ref;i&&!e.has(i.name)&&vue(i,e,r)}})}function nI(t){if(t.terminal)return t.terminal;if(t.type.ref){let e=GE(t.type.ref);return e?.terminal}}function iI(t){return t.hidden&&!a1(l1(t))}function aI(t,e){return!t||!e?[]:sI(t,e,t.astNode,!0)}function Xx(t,e,r){if(!t||!e)return;let n=sI(t,e,t.astNode,!0);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}function sI(t,e,r,n){if(!n){let i=Lp(t.grammarSource,Fl);if(i&&i.feature===e)return[t]}return Ol(t)&&t.astNode===r?t.content.flatMap(i=>sI(i,e,r,!1)):[]}function zWe(t,e){return t?lI(t,e,t?.astNode):[]}function oI(t,e,r){if(!t)return;let n=lI(t,e,t?.astNode);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}function lI(t,e,r){if(t.astNode!==r)return[];if(Zo(t.grammarSource)&&t.grammarSource.value===e)return[t];let n=Sp(t).iterator(),i,a=[];do if(i=n.next(),!i.done){let s=i.value;s.astNode===r?Zo(s.grammarSource)&&s.grammarSource.value===e&&a.push(s):n.prune()}while(!i.done);return a}function cI(t){var e;let r=t.astNode;for(;r===((e=t.container)===null||e===void 0?void 0:e.astNode);){let n=Lp(t.grammarSource,Fl);if(n)return n;t=t.container}}function GE(t){let e=t;return DE(e)&&(Vu(e.$container)?e=e.$container.$container:za(e.$container)?e=e.$container:zc(e.$container)),xue(t,e,new Map)}function xue(t,e,r){var n;function i(a,s){let l;return Lp(a,Fl)||(l=xue(s,s,r)),r.set(t,l),l}if(o(i,"go"),r.has(t))return r.get(t);r.set(t,void 0);for(let a of Uc(e)){if(Fl(a)&&a.feature.toLowerCase()==="name")return r.set(t,a),a;if($l(a)&&za(a.rule.ref))return i(a,a.rule.ref);if(RE(a)&&(!((n=a.typeRef)===null||n===void 0)&&n.ref))return i(a,a.typeRef.ref)}}function bue(t){let e=t.$container;if(Lf(e)){let r=e.elements,n=r.indexOf(t);for(let i=n-1;i>=0;i--){let a=r[i];if(Vu(a))return a;{let s=Uc(r[i]).find(Vu);if(s)return s}}}if(Fx(e))return bue(e)}function VWe(t,e){return t==="?"||t==="*"||Lf(e)&&!!e.guardCondition}function UWe(t){return t==="*"||t==="+"}function HWe(t){return t==="+="}function jx(t){return Tue(t,new Set)}function Tue(t,e){if(e.has(t))return!0;e.add(t);for(let r of Uc(t))if($l(r)){if(!r.rule.ref||za(r.rule.ref)&&!Tue(r.rule.ref,e))return!1}else{if(Fl(r))return!1;if(Vu(r))return!1}return!!t.definition}function WWe(t){return rI(t.type,new Set)}function rI(t,e){if(e.has(t))return!0;if(e.add(t),AM(t))return!1;if(MM(t))return!1;if(OM(t))return t.types.every(r=>rI(r,e));if(RE(t)){if(t.primitiveType!==void 0)return!0;if(t.stringType!==void 0)return!0;if(t.typeRef!==void 0){let r=t.typeRef.ref;return $x(r)?rI(r.type,e):!1}else return!1}else return!1}function o1(t){if(t.inferredType)return t.inferredType.name;if(t.dataType)return t.dataType;if(t.returnType){let e=t.returnType.ref;if(e){if(za(e))return e.name;if(LE(e)||$x(e))return e.name}}}function Kx(t){var e;if(za(t))return jx(t)?t.name:(e=o1(t))!==null&&e!==void 0?e:t.name;if(LE(t)||$x(t)||IM(t))return t.name;if(Vu(t)){let r=wue(t);if(r)return r}else if(DE(t))return t.name;throw new Error("Cannot get name of Unknown Type")}function wue(t){var e;if(t.inferredType)return t.inferredType.name;if(!((e=t.type)===null||e===void 0)&&e.ref)return Kx(t.type.ref)}function qWe(t){var e,r,n;return po(t)?(r=(e=t.type)===null||e===void 0?void 0:e.name)!==null&&r!==void 0?r:"string":jx(t)?t.name:(n=o1(t))!==null&&n!==void 0?n:t.name}function uI(t){var e,r,n;return po(t)?(r=(e=t.type)===null||e===void 0?void 0:e.name)!==null&&r!==void 0?r:"string":(n=o1(t))!==null&&n!==void 0?n:t.name}function l1(t){let e={s:!1,i:!1,u:!1},r=c1(t.definition,e),n=Object.entries(e).filter(([,i])=>i).map(([i])=>i).join("");return new RegExp(r,n)}function c1(t,e){if(GM(t))return YWe(t);if(zM(t))return XWe(t);if(PM(t))return QWe(t);if(ME(t)){let r=t.rule.ref;if(!r)throw new Error("Missing rule reference.");return Uu(c1(r.definition),{cardinality:t.cardinality,lookahead:t.lookahead})}else{if(FM(t))return KWe(t);if(VM(t))return jWe(t);if($M(t)){let r=t.regex.lastIndexOf("/"),n=t.regex.substring(1,r),i=t.regex.substring(r+1);return e&&(e.i=i.includes("i"),e.s=i.includes("s"),e.u=i.includes("u")),Uu(n,{cardinality:t.cardinality,lookahead:t.lookahead,wrap:!1})}else{if(UM(t))return Uu(hI,{cardinality:t.cardinality,lookahead:t.lookahead});throw new Error(`Invalid terminal element: ${t?.$type}`)}}}function YWe(t){return Uu(t.elements.map(e=>c1(e)).join("|"),{cardinality:t.cardinality,lookahead:t.lookahead})}function XWe(t){return Uu(t.elements.map(e=>c1(e)).join(""),{cardinality:t.cardinality,lookahead:t.lookahead})}function jWe(t){return Uu(`${hI}*?${c1(t.terminal)}`,{cardinality:t.cardinality,lookahead:t.lookahead})}function KWe(t){return Uu(`(?!${c1(t.terminal)})${hI}*?`,{cardinality:t.cardinality,lookahead:t.lookahead})}function QWe(t){return t.right?Uu(`[${tI(t.left)}-${tI(t.right)}]`,{cardinality:t.cardinality,lookahead:t.lookahead,wrap:!1}):Uu(tI(t.left),{cardinality:t.cardinality,lookahead:t.lookahead,wrap:!1})}function tI(t){return Ip(t.value)}function Uu(t,e){var r;return(e.wrap!==!1||e.lookahead)&&(t=`(${(r=e.lookahead)!==null&&r!==void 0?r:""}${t})`),e.cardinality?`${t}${e.cardinality}`:t}var hI,Gl=N(()=>{"use strict";AE();Vc();Pl();us();Bl();s1();o(gue,"getEntryRule");o(yue,"getHiddenRules");o(Yx,"getAllReachableRules");o(vue,"ruleDfs");o(nI,"getCrossReferenceTerminal");o(iI,"isCommentTerminal");o(aI,"findNodesForProperty");o(Xx,"findNodeForProperty");o(sI,"findNodesForPropertyInternal");o(zWe,"findNodesForKeyword");o(oI,"findNodeForKeyword");o(lI,"findNodesForKeywordInternal");o(cI,"findAssignment");o(GE,"findNameAssignment");o(xue,"findNameAssignmentInternal");o(bue,"getActionAtElement");o(VWe,"isOptionalCardinality");o(UWe,"isArrayCardinality");o(HWe,"isArrayOperator");o(jx,"isDataTypeRule");o(Tue,"isDataTypeRuleInternal");o(WWe,"isDataType");o(rI,"isDataTypeInternal");o(o1,"getExplicitRuleType");o(Kx,"getTypeName");o(wue,"getActionType");o(qWe,"getRuleTypeName");o(uI,"getRuleType");o(l1,"terminalRegex");hI=/[\s\S]/.source;o(c1,"abstractElementToRegex");o(YWe,"terminalAlternativesToRegex");o(XWe,"terminalGroupToRegex");o(jWe,"untilTokenToRegex");o(KWe,"negateTokenToRegex");o(QWe,"characterRangeToRegex");o(tI,"keywordToRegex");o(Uu,"withCardinality")});function fI(t){let e=[],r=t.Grammar;for(let n of r.rules)po(n)&&iI(n)&&ZM(l1(n))&&e.push(n.name);return{multilineCommentRules:e,nameRegexp:SE}}var dI=N(()=>{"use strict";Bl();Gl();s1();Vc();o(fI,"createGrammarConfig")});var pI=N(()=>{"use strict"});function u1(t){console&&console.error&&console.error(`Error: ${t}`)}function Qx(t){console&&console.warn&&console.warn(`Warning: ${t}`)}var kue=N(()=>{"use strict";o(u1,"PRINT_ERROR");o(Qx,"PRINT_WARNING")});function Zx(t){let e=new Date().getTime(),r=t();return{time:new Date().getTime()-e,value:r}}var Eue=N(()=>{"use strict";o(Zx,"timer")});function Jx(t){function e(){}o(e,"FakeConstructor"),e.prototype=t;let r=new e;function n(){return typeof r.bar}return o(n,"fakeAccess"),n(),n(),t;(0,eval)(t)}var Sue=N(()=>{"use strict";o(Jx,"toFastProperties")});var h1=N(()=>{"use strict";kue();Eue();Sue()});function ZWe(t){return JWe(t)?t.LABEL:t.name}function JWe(t){return bi(t.LABEL)&&t.LABEL!==""}function VE(t){return et(t,f1)}function f1(t){function e(r){return et(r,f1)}if(o(e,"convertDefinition"),t instanceof cn){let r={type:"NonTerminal",name:t.nonTerminalName,idx:t.idx};return bi(t.label)&&(r.label=t.label),r}else{if(t instanceof In)return{type:"Alternative",definition:e(t.definition)};if(t instanceof un)return{type:"Option",idx:t.idx,definition:e(t.definition)};if(t instanceof On)return{type:"RepetitionMandatory",idx:t.idx,definition:e(t.definition)};if(t instanceof Pn)return{type:"RepetitionMandatoryWithSeparator",idx:t.idx,separator:f1(new Er({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof En)return{type:"RepetitionWithSeparator",idx:t.idx,separator:f1(new Er({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof Pr)return{type:"Repetition",idx:t.idx,definition:e(t.definition)};if(t instanceof Sn)return{type:"Alternation",idx:t.idx,definition:e(t.definition)};if(t instanceof Er){let r={type:"Terminal",name:t.terminalType.name,label:ZWe(t.terminalType),idx:t.idx};bi(t.label)&&(r.terminalLabel=t.label);let n=t.terminalType.PATTERN;return t.terminalType.PATTERN&&(r.pattern=Uo(n)?n.source:n),r}else{if(t instanceof hs)return{type:"Rule",name:t.name,orgText:t.orgText,definition:e(t.definition)};throw Error("non exhaustive match")}}}var mo,cn,hs,In,un,On,Pn,Pr,En,Sn,Er,UE=N(()=>{"use strict";qt();o(ZWe,"tokenLabel");o(JWe,"hasTokenLabel");mo=class{static{o(this,"AbstractProduction")}get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),Ae(this.definition,r=>{r.accept(e)})}},cn=class extends mo{static{o(this,"NonTerminal")}constructor(e){super([]),this.idx=1,da(this,zs(e,r=>r!==void 0))}set definition(e){}get definition(){return this.referencedRule!==void 0?this.referencedRule.definition:[]}accept(e){e.visit(this)}},hs=class extends mo{static{o(this,"Rule")}constructor(e){super(e.definition),this.orgText="",da(this,zs(e,r=>r!==void 0))}},In=class extends mo{static{o(this,"Alternative")}constructor(e){super(e.definition),this.ignoreAmbiguities=!1,da(this,zs(e,r=>r!==void 0))}},un=class extends mo{static{o(this,"Option")}constructor(e){super(e.definition),this.idx=1,da(this,zs(e,r=>r!==void 0))}},On=class extends mo{static{o(this,"RepetitionMandatory")}constructor(e){super(e.definition),this.idx=1,da(this,zs(e,r=>r!==void 0))}},Pn=class extends mo{static{o(this,"RepetitionMandatoryWithSeparator")}constructor(e){super(e.definition),this.idx=1,da(this,zs(e,r=>r!==void 0))}},Pr=class extends mo{static{o(this,"Repetition")}constructor(e){super(e.definition),this.idx=1,da(this,zs(e,r=>r!==void 0))}},En=class extends mo{static{o(this,"RepetitionWithSeparator")}constructor(e){super(e.definition),this.idx=1,da(this,zs(e,r=>r!==void 0))}},Sn=class extends mo{static{o(this,"Alternation")}get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){super(e.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,da(this,zs(e,r=>r!==void 0))}},Er=class{static{o(this,"Terminal")}constructor(e){this.idx=1,da(this,zs(e,r=>r!==void 0))}accept(e){e.visit(this)}};o(VE,"serializeGrammar");o(f1,"serializeProduction")});var fs,Cue=N(()=>{"use strict";UE();fs=class{static{o(this,"GAstVisitor")}visit(e){let r=e;switch(r.constructor){case cn:return this.visitNonTerminal(r);case In:return this.visitAlternative(r);case un:return this.visitOption(r);case On:return this.visitRepetitionMandatory(r);case Pn:return this.visitRepetitionMandatoryWithSeparator(r);case En:return this.visitRepetitionWithSeparator(r);case Pr:return this.visitRepetition(r);case Sn:return this.visitAlternation(r);case Er:return this.visitTerminal(r);case hs:return this.visitRule(r);default:throw Error("non exhaustive match")}}visitNonTerminal(e){}visitAlternative(e){}visitOption(e){}visitRepetition(e){}visitRepetitionMandatory(e){}visitRepetitionMandatoryWithSeparator(e){}visitRepetitionWithSeparator(e){}visitAlternation(e){}visitTerminal(e){}visitRule(e){}}});function mI(t){return t instanceof In||t instanceof un||t instanceof Pr||t instanceof On||t instanceof Pn||t instanceof En||t instanceof Er||t instanceof hs}function Op(t,e=[]){return t instanceof un||t instanceof Pr||t instanceof En?!0:t instanceof Sn?F2(t.definition,n=>Op(n,e)):t instanceof cn&&jn(e,t)?!1:t instanceof mo?(t instanceof cn&&e.push(t),Ia(t.definition,n=>Op(n,e))):!1}function gI(t){return t instanceof Sn}function qs(t){if(t instanceof cn)return"SUBRULE";if(t instanceof un)return"OPTION";if(t instanceof Sn)return"OR";if(t instanceof On)return"AT_LEAST_ONE";if(t instanceof Pn)return"AT_LEAST_ONE_SEP";if(t instanceof En)return"MANY_SEP";if(t instanceof Pr)return"MANY";if(t instanceof Er)return"CONSUME";throw Error("non exhaustive match")}var Aue=N(()=>{"use strict";qt();UE();o(mI,"isSequenceProd");o(Op,"isOptionalProd");o(gI,"isBranchingProd");o(qs,"getProductionDslName")});var ds=N(()=>{"use strict";UE();Cue();Aue()});function _ue(t,e,r){return[new un({definition:[new Er({terminalType:t.separator})].concat(t.definition)})].concat(e,r)}var Hu,HE=N(()=>{"use strict";qt();ds();Hu=class{static{o(this,"RestWalker")}walk(e,r=[]){Ae(e.definition,(n,i)=>{let a=xi(e.definition,i+1);if(n instanceof cn)this.walkProdRef(n,a,r);else if(n instanceof Er)this.walkTerminal(n,a,r);else if(n instanceof In)this.walkFlat(n,a,r);else if(n instanceof un)this.walkOption(n,a,r);else if(n instanceof On)this.walkAtLeastOne(n,a,r);else if(n instanceof Pn)this.walkAtLeastOneSep(n,a,r);else if(n instanceof En)this.walkManySep(n,a,r);else if(n instanceof Pr)this.walkMany(n,a,r);else if(n instanceof Sn)this.walkOr(n,a,r);else throw Error("non exhaustive match")})}walkTerminal(e,r,n){}walkProdRef(e,r,n){}walkFlat(e,r,n){let i=r.concat(n);this.walk(e,i)}walkOption(e,r,n){let i=r.concat(n);this.walk(e,i)}walkAtLeastOne(e,r,n){let i=[new un({definition:e.definition})].concat(r,n);this.walk(e,i)}walkAtLeastOneSep(e,r,n){let i=_ue(e,r,n);this.walk(e,i)}walkMany(e,r,n){let i=[new un({definition:e.definition})].concat(r,n);this.walk(e,i)}walkManySep(e,r,n){let i=_ue(e,r,n);this.walk(e,i)}walkOr(e,r,n){let i=r.concat(n);Ae(e.definition,a=>{let s=new In({definition:[a]});this.walk(s,i)})}};o(_ue,"restForRepetitionWithSeparator")});function Pp(t){if(t instanceof cn)return Pp(t.referencedRule);if(t instanceof Er)return rqe(t);if(mI(t))return eqe(t);if(gI(t))return tqe(t);throw Error("non exhaustive match")}function eqe(t){let e=[],r=t.definition,n=0,i=r.length>n,a,s=!0;for(;i&&s;)a=r[n],s=Op(a),e=e.concat(Pp(a)),n=n+1,i=r.length>n;return zm(e)}function tqe(t){let e=et(t.definition,r=>Pp(r));return zm(qr(e))}function rqe(t){return[t.terminalType]}var yI=N(()=>{"use strict";qt();ds();o(Pp,"first");o(eqe,"firstForSequence");o(tqe,"firstForBranching");o(rqe,"firstForTerminal")});var WE,vI=N(()=>{"use strict";WE="_~IN~_"});function Due(t){let e={};return Ae(t,r=>{let n=new xI(r).startWalking();da(e,n)}),e}function nqe(t,e){return t.name+e+WE}var xI,Lue=N(()=>{"use strict";HE();yI();qt();vI();ds();xI=class extends Hu{static{o(this,"ResyncFollowsWalker")}constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,r,n){}walkProdRef(e,r,n){let i=nqe(e.referencedRule,e.idx)+this.topProd.name,a=r.concat(n),s=new In({definition:a}),l=Pp(s);this.follows[i]=l}};o(Due,"computeAllProdsFollows");o(nqe,"buildBetweenProdsFollowPrefix")});function d1(t){let e=t.toString();if(qE.hasOwnProperty(e))return qE[e];{let r=iqe.pattern(e);return qE[e]=r,r}}function Rue(){qE={}}var qE,iqe,YE=N(()=>{"use strict";qx();qE={},iqe=new Np;o(d1,"getRegExpAst");o(Rue,"clearRegExpParserCache")});function Iue(t,e=!1){try{let r=d1(t);return bI(r.value,{},r.flags.ignoreCase)}catch(r){if(r.message===Mue)e&&Qx(`${eb} Unable to optimize: < ${t.toString()} >
|
||
Complement Sets cannot be automatically optimized.
|
||
This will disable the lexer's first char optimizations.
|
||
See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{let n="";e&&(n=`
|
||
This will disable the lexer's first char optimizations.
|
||
See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`),u1(`${eb}
|
||
Failed parsing: < ${t.toString()} >
|
||
Using the @chevrotain/regexp-to-ast library
|
||
Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+n)}}return[]}function bI(t,e,r){switch(t.type){case"Disjunction":for(let i=0;i<t.value.length;i++)bI(t.value[i],e,r);break;case"Alternative":let n=t.value;for(let i=0;i<n.length;i++){let a=n[i];switch(a.type){case"EndAnchor":case"GroupBackReference":case"Lookahead":case"NegativeLookahead":case"StartAnchor":case"WordBoundary":case"NonWordBoundary":continue}let s=a;switch(s.type){case"Character":XE(s.value,e,r);break;case"Set":if(s.complement===!0)throw Error(Mue);Ae(s.value,u=>{if(typeof u=="number")XE(u,e,r);else{let h=u;if(r===!0)for(let f=h.from;f<=h.to;f++)XE(f,e,r);else{for(let f=h.from;f<=h.to&&f<p1;f++)XE(f,e,r);if(h.to>=p1){let f=h.from>=p1?h.from:p1,d=h.to,p=Wc(f),m=Wc(d);for(let g=p;g<=m;g++)e[g]=g}}}});break;case"Group":bI(s.value,e,r);break;default:throw Error("Non Exhaustive Match")}let l=s.quantifier!==void 0&&s.quantifier.atLeast===0;if(s.type==="Group"&&TI(s)===!1||s.type!=="Group"&&l===!1)break}break;default:throw Error("non exhaustive match!")}return br(e)}function XE(t,e,r){let n=Wc(t);e[n]=n,r===!0&&aqe(t,e)}function aqe(t,e){let r=String.fromCharCode(t),n=r.toUpperCase();if(n!==r){let i=Wc(n.charCodeAt(0));e[i]=i}else{let i=r.toLowerCase();if(i!==r){let a=Wc(i.charCodeAt(0));e[a]=a}}}function Nue(t,e){return os(t.value,r=>{if(typeof r=="number")return jn(e,r);{let n=r;return os(e,i=>n.from<=i&&i<=n.to)!==void 0}})}function TI(t){let e=t.quantifier;return e&&e.atLeast===0?!0:t.value?Pt(t.value)?Ia(t.value,TI):TI(t.value):!1}function jE(t,e){if(e instanceof RegExp){let r=d1(e),n=new wI(t);return n.visit(r),n.found}else return os(e,r=>jn(t,r.charCodeAt(0)))!==void 0}var Mue,eb,wI,Oue=N(()=>{"use strict";qx();qt();h1();YE();kI();Mue="Complement Sets are not supported for first char optimization",eb=`Unable to use "first char" lexer optimizations:
|
||
`;o(Iue,"getOptimizedStartCodesIndices");o(bI,"firstCharOptimizedIndices");o(XE,"addOptimizedIdxToResult");o(aqe,"handleIgnoreCase");o(Nue,"findCode");o(TI,"isWholeOptional");wI=class extends Hc{static{o(this,"CharCodeFinder")}constructor(e){super(),this.targetCharCodes=e,this.found=!1}visitChildren(e){if(this.found!==!0){switch(e.type){case"Lookahead":this.visitLookahead(e);return;case"NegativeLookahead":this.visitNegativeLookahead(e);return}super.visitChildren(e)}}visitCharacter(e){jn(this.targetCharCodes,e.value)&&(this.found=!0)}visitSet(e){e.complement?Nue(e,this.targetCharCodes)===void 0&&(this.found=!0):Nue(e,this.targetCharCodes)!==void 0&&(this.found=!0)}};o(jE,"canMatchCharCode")});function Fue(t,e){e=af(e,{useSticky:SI,debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",`
|
||
`],tracer:o((b,T)=>T(),"tracer")});let r=e.tracer;r("initCharCodeToOptimizedIndexMap",()=>{kqe()});let n;r("Reject Lexer.NA",()=>{n=of(t,b=>b[Bp]===Qn.NA)});let i=!1,a;r("Transform Patterns",()=>{i=!1,a=et(n,b=>{let T=b[Bp];if(Uo(T)){let S=T.source;return S.length===1&&S!=="^"&&S!=="$"&&S!=="."&&!T.ignoreCase?S:S.length===2&&S[0]==="\\"&&!jn(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],S[1])?S[1]:e.useSticky?Bue(T):Pue(T)}else{if(Ai(T))return i=!0,{exec:T};if(typeof T=="object")return i=!0,T;if(typeof T=="string"){if(T.length===1)return T;{let S=T.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),w=new RegExp(S);return e.useSticky?Bue(w):Pue(w)}}else throw Error("non exhaustive match")}})});let s,l,u,h,f;r("misc mapping",()=>{s=et(n,b=>b.tokenTypeIdx),l=et(n,b=>{let T=b.GROUP;if(T!==Qn.SKIPPED){if(bi(T))return T;if(gr(T))return!1;throw Error("non exhaustive match")}}),u=et(n,b=>{let T=b.LONGER_ALT;if(T)return Pt(T)?et(T,w=>lk(n,w)):[lk(n,T)]}),h=et(n,b=>b.PUSH_MODE),f=et(n,b=>Bt(b,"POP_MODE"))});let d;r("Line Terminator Handling",()=>{let b=que(e.lineTerminatorCharacters);d=et(n,T=>!1),e.positionTracking!=="onlyOffset"&&(d=et(n,T=>Bt(T,"LINE_BREAKS")?!!T.LINE_BREAKS:Wue(T,b)===!1&&jE(b,T.PATTERN)))});let p,m,g,y;r("Misc Mapping #2",()=>{p=et(n,Uue),m=et(a,Tqe),g=Xr(n,(b,T)=>{let S=T.GROUP;return bi(S)&&S!==Qn.SKIPPED&&(b[S]=[]),b},{}),y=et(a,(b,T)=>({pattern:a[T],longerAlt:u[T],canLineTerminator:d[T],isCustom:p[T],short:m[T],group:l[T],push:h[T],pop:f[T],tokenTypeIdx:s[T],tokenType:n[T]}))});let x=!0,v=[];return e.safeMode||r("First Char Optimization",()=>{v=Xr(n,(b,T,S)=>{if(typeof T.PATTERN=="string"){let w=T.PATTERN.charCodeAt(0),E=Wc(w);EI(b,E,y[S])}else if(Pt(T.START_CHARS_HINT)){let w;Ae(T.START_CHARS_HINT,E=>{let _=typeof E=="string"?E.charCodeAt(0):E,A=Wc(_);w!==A&&(w=A,EI(b,A,y[S]))})}else if(Uo(T.PATTERN))if(T.PATTERN.unicode)x=!1,e.ensureOptimizations&&u1(`${eb} Unable to analyze < ${T.PATTERN.toString()} > pattern.
|
||
The regexp unicode flag is not currently supported by the regexp-to-ast library.
|
||
This will disable the lexer's first char optimizations.
|
||
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{let w=Iue(T.PATTERN,e.ensureOptimizations);fr(w)&&(x=!1),Ae(w,E=>{EI(b,E,y[S])})}else e.ensureOptimizations&&u1(`${eb} TokenType: <${T.name}> is using a custom token pattern without providing <start_chars_hint> parameter.
|
||
This will disable the lexer's first char optimizations.
|
||
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),x=!1;return b},[])}),{emptyGroups:g,patternIdxToConfig:y,charCodeToPatternIdxToConfig:v,hasCustom:i,canBeOptimized:x}}function $ue(t,e){let r=[],n=oqe(t);r=r.concat(n.errors);let i=lqe(n.valid),a=i.valid;return r=r.concat(i.errors),r=r.concat(sqe(a)),r=r.concat(gqe(a)),r=r.concat(yqe(a,e)),r=r.concat(vqe(a)),r}function sqe(t){let e=[],r=Yr(t,n=>Uo(n[Bp]));return e=e.concat(uqe(r)),e=e.concat(dqe(r)),e=e.concat(pqe(r)),e=e.concat(mqe(r)),e=e.concat(hqe(r)),e}function oqe(t){let e=Yr(t,i=>!Bt(i,Bp)),r=et(e,i=>({message:"Token Type: ->"+i.name+"<- missing static 'PATTERN' property",type:Kn.MISSING_PATTERN,tokenTypes:[i]})),n=sf(t,e);return{errors:r,valid:n}}function lqe(t){let e=Yr(t,i=>{let a=i[Bp];return!Uo(a)&&!Ai(a)&&!Bt(a,"exec")&&!bi(a)}),r=et(e,i=>({message:"Token Type: ->"+i.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:Kn.INVALID_PATTERN,tokenTypes:[i]})),n=sf(t,e);return{errors:r,valid:n}}function uqe(t){class e extends Hc{static{o(this,"EndAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitEndAnchor(a){this.found=!0}}let r=Yr(t,i=>{let a=i.PATTERN;try{let s=d1(a),l=new e;return l.visit(s),l.found}catch{return cqe.test(a.source)}});return et(r,i=>({message:`Unexpected RegExp Anchor Error:
|
||
Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain end of input anchor '$'
|
||
See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:Kn.EOI_ANCHOR_FOUND,tokenTypes:[i]}))}function hqe(t){let e=Yr(t,n=>n.PATTERN.test(""));return et(e,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' must not match an empty string",type:Kn.EMPTY_MATCH_PATTERN,tokenTypes:[n]}))}function dqe(t){class e extends Hc{static{o(this,"StartAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitStartAnchor(a){this.found=!0}}let r=Yr(t,i=>{let a=i.PATTERN;try{let s=d1(a),l=new e;return l.visit(s),l.found}catch{return fqe.test(a.source)}});return et(r,i=>({message:`Unexpected RegExp Anchor Error:
|
||
Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain start of input anchor '^'
|
||
See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:Kn.SOI_ANCHOR_FOUND,tokenTypes:[i]}))}function pqe(t){let e=Yr(t,n=>{let i=n[Bp];return i instanceof RegExp&&(i.multiline||i.global)});return et(e,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:Kn.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[n]}))}function mqe(t){let e=[],r=et(t,a=>Xr(t,(s,l)=>(a.PATTERN.source===l.PATTERN.source&&!jn(e,l)&&l.PATTERN!==Qn.NA&&(e.push(l),s.push(l)),s),[]));r=Cc(r);let n=Yr(r,a=>a.length>1);return et(n,a=>{let s=et(a,u=>u.name);return{message:`The same RegExp pattern ->${ta(a).PATTERN}<-has been used in all of the following Token Types: ${s.join(", ")} <-`,type:Kn.DUPLICATE_PATTERNS_FOUND,tokenTypes:a}})}function gqe(t){let e=Yr(t,n=>{if(!Bt(n,"GROUP"))return!1;let i=n.GROUP;return i!==Qn.SKIPPED&&i!==Qn.NA&&!bi(i)});return et(e,n=>({message:"Token Type: ->"+n.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:Kn.INVALID_GROUP_TYPE_FOUND,tokenTypes:[n]}))}function yqe(t,e){let r=Yr(t,i=>i.PUSH_MODE!==void 0&&!jn(e,i.PUSH_MODE));return et(r,i=>({message:`Token Type: ->${i.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${i.PUSH_MODE}<-which does not exist`,type:Kn.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[i]}))}function vqe(t){let e=[],r=Xr(t,(n,i,a)=>{let s=i.PATTERN;return s===Qn.NA||(bi(s)?n.push({str:s,idx:a,tokenType:i}):Uo(s)&&bqe(s)&&n.push({str:s.source,idx:a,tokenType:i})),n},[]);return Ae(t,(n,i)=>{Ae(r,({str:a,idx:s,tokenType:l})=>{if(i<s&&xqe(a,n.PATTERN)){let u=`Token: ->${l.name}<- can never be matched.
|
||
Because it appears AFTER the Token Type ->${n.name}<-in the lexer's definition.
|
||
See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;e.push({message:u,type:Kn.UNREACHABLE_PATTERN,tokenTypes:[n,l]})}})}),e}function xqe(t,e){if(Uo(e)){let r=e.exec(t);return r!==null&&r.index===0}else{if(Ai(e))return e(t,0,[],{});if(Bt(e,"exec"))return e.exec(t,0,[],{});if(typeof e=="string")return e===t;throw Error("non exhaustive match")}}function bqe(t){return os([".","\\","[","]","|","^","$","(",")","?","*","+","{"],r=>t.source.indexOf(r)!==-1)===void 0}function Pue(t){let e=t.ignoreCase?"i":"";return new RegExp(`^(?:${t.source})`,e)}function Bue(t){let e=t.ignoreCase?"iy":"y";return new RegExp(`${t.source}`,e)}function Gue(t,e,r){let n=[];return Bt(t,m1)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+m1+`> property in its definition
|
||
`,type:Kn.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),Bt(t,KE)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+KE+`> property in its definition
|
||
`,type:Kn.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),Bt(t,KE)&&Bt(t,m1)&&!Bt(t.modes,t.defaultMode)&&n.push({message:`A MultiMode Lexer cannot be initialized with a ${m1}: <${t.defaultMode}>which does not exist
|
||
`,type:Kn.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),Bt(t,KE)&&Ae(t.modes,(i,a)=>{Ae(i,(s,l)=>{if(gr(s))n.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${a}> at index: <${l}>
|
||
`,type:Kn.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if(Bt(s,"LONGER_ALT")){let u=Pt(s.LONGER_ALT)?s.LONGER_ALT:[s.LONGER_ALT];Ae(u,h=>{!gr(h)&&!jn(i,h)&&n.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${h.name}> on token <${s.name}> outside of mode <${a}>
|
||
`,type:Kn.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})}})}),n}function zue(t,e,r){let n=[],i=!1,a=Cc(qr(br(t.modes))),s=of(a,u=>u[Bp]===Qn.NA),l=que(r);return e&&Ae(s,u=>{let h=Wue(u,l);if(h!==!1){let d={message:wqe(u,h),type:h.issue,tokenType:u};n.push(d)}else Bt(u,"LINE_BREAKS")?u.LINE_BREAKS===!0&&(i=!0):jE(l,u.PATTERN)&&(i=!0)}),e&&!i&&n.push({message:`Warning: No LINE_BREAKS Found.
|
||
This Lexer has been defined to track line and column information,
|
||
But none of the Token Types can be identified as matching a line terminator.
|
||
See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS
|
||
for details.`,type:Kn.NO_LINE_BREAKS_FLAGS}),n}function Vue(t){let e={},r=Gr(t);return Ae(r,n=>{let i=t[n];if(Pt(i))e[n]=[];else throw Error("non exhaustive match")}),e}function Uue(t){let e=t.PATTERN;if(Uo(e))return!1;if(Ai(e))return!0;if(Bt(e,"exec"))return!0;if(bi(e))return!1;throw Error("non exhaustive match")}function Tqe(t){return bi(t)&&t.length===1?t.charCodeAt(0):!1}function Wue(t,e){if(Bt(t,"LINE_BREAKS"))return!1;if(Uo(t.PATTERN)){try{jE(e,t.PATTERN)}catch(r){return{issue:Kn.IDENTIFY_TERMINATOR,errMsg:r.message}}return!1}else{if(bi(t.PATTERN))return!1;if(Uue(t))return{issue:Kn.CUSTOM_LINE_BREAK};throw Error("non exhaustive match")}}function wqe(t,e){if(e.issue===Kn.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern.
|
||
The problem is in the <${t.name}> Token Type
|
||
Root cause: ${e.errMsg}.
|
||
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(e.issue===Kn.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the <line_breaks> option.
|
||
The problem is in the <${t.name}> Token Type
|
||
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}function que(t){return et(t,r=>bi(r)?r.charCodeAt(0):r)}function EI(t,e,r){t[e]===void 0?t[e]=[r]:t[e].push(r)}function Wc(t){return t<p1?t:QE[t]}function kqe(){if(fr(QE)){QE=new Array(65536);for(let t=0;t<65536;t++)QE[t]=t>255?255+~~(t/255):t}}var Bp,m1,KE,SI,cqe,fqe,Hue,p1,QE,kI=N(()=>{"use strict";qx();tb();qt();h1();Oue();YE();Bp="PATTERN",m1="defaultMode",KE="modes",SI=typeof new RegExp("(?:)").sticky=="boolean";o(Fue,"analyzeTokenTypes");o($ue,"validatePatterns");o(sqe,"validateRegExpPattern");o(oqe,"findMissingPatterns");o(lqe,"findInvalidPatterns");cqe=/[^\\][$]/;o(uqe,"findEndOfInputAnchor");o(hqe,"findEmptyMatchRegExps");fqe=/[^\\[][\^]|^\^/;o(dqe,"findStartOfInputAnchor");o(pqe,"findUnsupportedFlags");o(mqe,"findDuplicatePatterns");o(gqe,"findInvalidGroupType");o(yqe,"findModesThatDoNotExist");o(vqe,"findUnreachablePatterns");o(xqe,"testTokenType");o(bqe,"noMetaChar");o(Pue,"addStartOfInput");o(Bue,"addStickyFlag");o(Gue,"performRuntimeChecks");o(zue,"performWarningRuntimeChecks");o(Vue,"cloneEmptyGroups");o(Uue,"isCustomPattern");o(Tqe,"isShortPattern");Hue={test:o(function(t){let e=t.length;for(let r=this.lastIndex;r<e;r++){let n=t.charCodeAt(r);if(n===10)return this.lastIndex=r+1,!0;if(n===13)return t.charCodeAt(r+1)===10?this.lastIndex=r+2:this.lastIndex=r+1,!0}return!1},"test"),lastIndex:0};o(Wue,"checkLineBreaksIssues");o(wqe,"buildLineBreakIssueMessage");o(que,"getCharCodes");o(EI,"addToMapOfArrays");p1=256,QE=[];o(Wc,"charCodeToOptimizedIndex");o(kqe,"initCharCodeToOptimizedIndexMap")});function Wu(t,e){let r=t.tokenTypeIdx;return r===e.tokenTypeIdx?!0:e.isParent===!0&&e.categoryMatchesMap[r]===!0}function g1(t,e){return t.tokenTypeIdx===e.tokenTypeIdx}function qu(t){let e=Eqe(t);Sqe(e),Aqe(e),Cqe(e),Ae(e,r=>{r.isParent=r.categoryMatches.length>0})}function Eqe(t){let e=an(t),r=t,n=!0;for(;n;){r=Cc(qr(et(r,a=>a.CATEGORIES)));let i=sf(r,e);e=e.concat(i),fr(i)?n=!1:r=i}return e}function Sqe(t){Ae(t,e=>{CI(e)||(jue[Yue]=e,e.tokenTypeIdx=Yue++),Xue(e)&&!Pt(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),Xue(e)||(e.CATEGORIES=[]),_qe(e)||(e.categoryMatches=[]),Dqe(e)||(e.categoryMatchesMap={})})}function Cqe(t){Ae(t,e=>{e.categoryMatches=[],Ae(e.categoryMatchesMap,(r,n)=>{e.categoryMatches.push(jue[n].tokenTypeIdx)})})}function Aqe(t){Ae(t,e=>{Kue([],e)})}function Kue(t,e){Ae(t,r=>{e.categoryMatchesMap[r.tokenTypeIdx]=!0}),Ae(e.CATEGORIES,r=>{let n=t.concat(e);jn(n,r)||Kue(n,r)})}function CI(t){return Bt(t,"tokenTypeIdx")}function Xue(t){return Bt(t,"CATEGORIES")}function _qe(t){return Bt(t,"categoryMatches")}function Dqe(t){return Bt(t,"categoryMatchesMap")}function Que(t){return Bt(t,"tokenTypeIdx")}var Yue,jue,Fp=N(()=>{"use strict";qt();o(Wu,"tokenStructuredMatcher");o(g1,"tokenStructuredMatcherNoCategories");Yue=1,jue={};o(qu,"augmentTokenTypes");o(Eqe,"expandCategories");o(Sqe,"assignTokenDefaultProps");o(Cqe,"assignCategoriesTokensProp");o(Aqe,"assignCategoriesMapProp");o(Kue,"singleAssignCategoriesToksMap");o(CI,"hasShortKeyProperty");o(Xue,"hasCategoriesProperty");o(_qe,"hasExtendingTokensTypesProperty");o(Dqe,"hasExtendingTokensTypesMapProperty");o(Que,"isTokenType")});var y1,AI=N(()=>{"use strict";y1={buildUnableToPopLexerModeMessage(t){return`Unable to pop Lexer Mode after encountering Token ->${t.image}<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(t,e,r,n,i){return`unexpected character: ->${t.charAt(e)}<- at offset: ${e}, skipped ${r} characters.`}}});var Kn,rb,Qn,tb=N(()=>{"use strict";kI();qt();h1();Fp();AI();YE();(function(t){t[t.MISSING_PATTERN=0]="MISSING_PATTERN",t[t.INVALID_PATTERN=1]="INVALID_PATTERN",t[t.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",t[t.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",t[t.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",t[t.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",t[t.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",t[t.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",t[t.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",t[t.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",t[t.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",t[t.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",t[t.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",t[t.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",t[t.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",t[t.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",t[t.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",t[t.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"})(Kn||(Kn={}));rb={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[`
|
||
`,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:y1,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(rb);Qn=class{static{o(this,"Lexer")}constructor(e,r=rb){if(this.lexerDefinition=e,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},this.TRACE_INIT=(i,a)=>{if(this.traceInitPerf===!0){this.traceInitIndent++;let s=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${s}--> <${i}>`);let{time:l,value:u}=Zx(a),h=l>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&h(`${s}<-- <${i}> time: ${l}ms`),this.traceInitIndent--,u}else return a()},typeof r=="boolean")throw Error(`The second argument to the Lexer constructor is now an ILexerConfig Object.
|
||
a boolean 2nd argument is no longer supported`);this.config=da({},rb,r);let n=this.config.traceInitPerf;n===!0?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):typeof n=="number"&&(this.traceInitMaxIdent=n,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let i,a=!0;this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===rb.lineTerminatorsPattern)this.config.lineTerminatorsPattern=Hue;else if(this.config.lineTerminatorCharacters===rb.lineTerminatorCharacters)throw Error(`Error: Missing <lineTerminatorCharacters> property on the Lexer config.
|
||
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS`);if(r.safeMode&&r.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');this.trackStartLines=/full|onlyStart/i.test(this.config.positionTracking),this.trackEndLines=/full/i.test(this.config.positionTracking),Pt(e)?i={modes:{defaultMode:an(e)},defaultMode:m1}:(a=!1,i=an(e))}),this.config.skipValidations===!1&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(Gue(i,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(zue(i,this.trackStartLines,this.config.lineTerminatorCharacters))})),i.modes=i.modes?i.modes:{},Ae(i.modes,(l,u)=>{i.modes[u]=of(l,h=>gr(h))});let s=Gr(i.modes);if(Ae(i.modes,(l,u)=>{this.TRACE_INIT(`Mode: <${u}> processing`,()=>{if(this.modes.push(u),this.config.skipValidations===!1&&this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat($ue(l,s))}),fr(this.lexerDefinitionErrors)){qu(l);let h;this.TRACE_INIT("analyzeTokenTypes",()=>{h=Fue(l,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:r.positionTracking,ensureOptimizations:r.ensureOptimizations,safeMode:r.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[u]=h.patternIdxToConfig,this.charCodeToPatternIdxToConfig[u]=h.charCodeToPatternIdxToConfig,this.emptyGroups=da({},this.emptyGroups,h.emptyGroups),this.hasCustom=h.hasCustom||this.hasCustom,this.canModeBeOptimized[u]=h.canBeOptimized}})}),this.defaultMode=i.defaultMode,!fr(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling){let u=et(this.lexerDefinitionErrors,h=>h.message).join(`-----------------------
|
||
`);throw new Error(`Errors detected in definition of Lexer:
|
||
`+u)}Ae(this.lexerDefinitionWarning,l=>{Qx(l.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(SI?(this.chopInput=Zi,this.match=this.matchWithTest):(this.updateLastIndex=si,this.match=this.matchWithExec),a&&(this.handleModes=si),this.trackStartLines===!1&&(this.computeNewColumn=Zi),this.trackEndLines===!1&&(this.updateTokenEndLineColumnLocation=si),/full/i.test(this.config.positionTracking))this.createTokenInstance=this.createFullToken;else if(/onlyStart/i.test(this.config.positionTracking))this.createTokenInstance=this.createStartOnlyToken;else if(/onlyOffset/i.test(this.config.positionTracking))this.createTokenInstance=this.createOffsetOnlyToken;else throw Error(`Invalid <positionTracking> config option: "${this.config.positionTracking}"`);this.hasCustom?(this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom):(this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom)}),this.TRACE_INIT("Failed Optimization Warnings",()=>{let l=Xr(this.canModeBeOptimized,(u,h,f)=>(h===!1&&u.push(f),u),[]);if(r.ensureOptimizations&&!fr(l))throw Error(`Lexer Modes: < ${l.join(", ")} > cannot be optimized.
|
||
Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode.
|
||
Or inspect the console log for details on how to resolve these issues.`)}),this.TRACE_INIT("clearRegExpParserCache",()=>{Rue()}),this.TRACE_INIT("toFastProperties",()=>{Jx(this)})})}tokenize(e,r=this.defaultMode){if(!fr(this.lexerDefinitionErrors)){let i=et(this.lexerDefinitionErrors,a=>a.message).join(`-----------------------
|
||
`);throw new Error(`Unable to Tokenize because Errors detected in definition of Lexer:
|
||
`+i)}return this.tokenizeInternal(e,r)}tokenizeInternal(e,r){let n,i,a,s,l,u,h,f,d,p,m,g,y,x,v,b,T=e,S=T.length,w=0,E=0,_=this.hasCustom?0:Math.floor(e.length/10),A=new Array(_),D=[],O=this.trackStartLines?1:void 0,R=this.trackStartLines?1:void 0,k=Vue(this.emptyGroups),L=this.trackStartLines,C=this.config.lineTerminatorsPattern,I=0,M=[],P=[],B=[],F=[];Object.freeze(F);let G;function $(){return M}o($,"getPossiblePatternsSlow");function U(Z){let ce=Wc(Z),Q=P[ce];return Q===void 0?F:Q}o(U,"getPossiblePatternsOptimized");let K=o(Z=>{if(B.length===1&&Z.tokenType.PUSH_MODE===void 0){let ce=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(Z);D.push({offset:Z.startOffset,line:Z.startLine,column:Z.startColumn,length:Z.image.length,message:ce})}else{B.pop();let ce=pa(B);M=this.patternIdxToConfig[ce],P=this.charCodeToPatternIdxToConfig[ce],I=M.length;let Q=this.canModeBeOptimized[ce]&&this.config.safeMode===!1;P&&Q?G=U:G=$}},"pop_mode");function ne(Z){B.push(Z),P=this.charCodeToPatternIdxToConfig[Z],M=this.patternIdxToConfig[Z],I=M.length,I=M.length;let ce=this.canModeBeOptimized[Z]&&this.config.safeMode===!1;P&&ce?G=U:G=$}o(ne,"push_mode"),ne.call(this,r);let j,le=this.config.recoveryEnabled;for(;w<S;){u=null;let Z=T.charCodeAt(w),ce=G(Z),Q=ce.length;for(n=0;n<Q;n++){j=ce[n];let ee=j.pattern;h=null;let te=j.short;if(te!==!1?Z===te&&(u=ee):j.isCustom===!0?(b=ee.exec(T,w,A,k),b!==null?(u=b[0],b.payload!==void 0&&(h=b.payload)):u=null):(this.updateLastIndex(ee,w),u=this.match(ee,e,w)),u!==null){if(l=j.longerAlt,l!==void 0){let re=l.length;for(a=0;a<re;a++){let he=M[l[a]],J=he.pattern;if(f=null,he.isCustom===!0?(b=J.exec(T,w,A,k),b!==null?(s=b[0],b.payload!==void 0&&(f=b.payload)):s=null):(this.updateLastIndex(J,w),s=this.match(J,e,w)),s&&s.length>u.length){u=s,h=f,j=he;break}}}break}}if(u!==null){if(d=u.length,p=j.group,p!==void 0&&(m=j.tokenTypeIdx,g=this.createTokenInstance(u,w,m,j.tokenType,O,R,d),this.handlePayload(g,h),p===!1?E=this.addToken(A,E,g):k[p].push(g)),e=this.chopInput(e,d),w=w+d,R=this.computeNewColumn(R,d),L===!0&&j.canLineTerminator===!0){let ee=0,te,re;C.lastIndex=0;do te=C.test(u),te===!0&&(re=C.lastIndex-1,ee++);while(te===!0);ee!==0&&(O=O+ee,R=d-re,this.updateTokenEndLineColumnLocation(g,p,re,ee,O,R,d))}this.handleModes(j,K,ne,g)}else{let ee=w,te=O,re=R,he=le===!1;for(;he===!1&&w<S;)for(e=this.chopInput(e,1),w++,i=0;i<I;i++){let J=M[i],ye=J.pattern,se=J.short;if(se!==!1?T.charCodeAt(w)===se&&(he=!0):J.isCustom===!0?he=ye.exec(T,w,A,k)!==null:(this.updateLastIndex(ye,w),he=ye.exec(e)!==null),he===!0)break}if(y=w-ee,R=this.computeNewColumn(R,y),v=this.config.errorMessageProvider.buildUnexpectedCharactersMessage(T,ee,y,te,re),D.push({offset:ee,line:te,column:re,length:y,message:v}),le===!1)break}}return this.hasCustom||(A.length=E),{tokens:A,groups:k,errors:D}}handleModes(e,r,n,i){if(e.pop===!0){let a=e.push;r(i),a!==void 0&&n.call(this,a)}else e.push!==void 0&&n.call(this,e.push)}chopInput(e,r){return e.substring(r)}updateLastIndex(e,r){e.lastIndex=r}updateTokenEndLineColumnLocation(e,r,n,i,a,s,l){let u,h;r!==void 0&&(u=n===l-1,h=u?-1:0,i===1&&u===!0||(e.endLine=a+h,e.endColumn=s-1+-h))}computeNewColumn(e,r){return e+r}createOffsetOnlyToken(e,r,n,i){return{image:e,startOffset:r,tokenTypeIdx:n,tokenType:i}}createStartOnlyToken(e,r,n,i,a,s){return{image:e,startOffset:r,startLine:a,startColumn:s,tokenTypeIdx:n,tokenType:i}}createFullToken(e,r,n,i,a,s,l){return{image:e,startOffset:r,endOffset:r+l-1,startLine:a,endLine:a,startColumn:s,endColumn:s+l-1,tokenTypeIdx:n,tokenType:i}}addTokenUsingPush(e,r,n){return e.push(n),r}addTokenUsingMemberAccess(e,r,n){return e[r]=n,r++,r}handlePayloadNoCustom(e,r){}handlePayloadWithCustom(e,r){r!==null&&(e.payload=r)}matchWithTest(e,r,n){return e.test(r)===!0?r.substring(n,e.lastIndex):null}matchWithExec(e,r){let n=e.exec(r);return n!==null?n[0]:null}};Qn.SKIPPED="This marks a skipped Token pattern, this means each token identified by it willbe consumed and then thrown into oblivion, this can be used to for example to completely ignore whitespace.";Qn.NA=/NOT_APPLICABLE/});function Yu(t){return _I(t)?t.LABEL:t.name}function _I(t){return bi(t.LABEL)&&t.LABEL!==""}function Rf(t){return Rqe(t)}function Rqe(t){let e=t.pattern,r={};if(r.name=t.name,gr(e)||(r.PATTERN=e),Bt(t,Lqe))throw`The parent property is no longer supported.
|
||
See: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details.`;return Bt(t,Zue)&&(r.CATEGORIES=t[Zue]),qu([r]),Bt(t,Jue)&&(r.LABEL=t[Jue]),Bt(t,ehe)&&(r.GROUP=t[ehe]),Bt(t,rhe)&&(r.POP_MODE=t[rhe]),Bt(t,the)&&(r.PUSH_MODE=t[the]),Bt(t,nhe)&&(r.LONGER_ALT=t[nhe]),Bt(t,ihe)&&(r.LINE_BREAKS=t[ihe]),Bt(t,ahe)&&(r.START_CHARS_HINT=t[ahe]),r}function Xu(t,e,r,n,i,a,s,l){return{image:e,startOffset:r,endOffset:n,startLine:i,endLine:a,startColumn:s,endColumn:l,tokenTypeIdx:t.tokenTypeIdx,tokenType:t}}function nb(t,e){return Wu(t,e)}var Lqe,Zue,Jue,ehe,the,rhe,nhe,ihe,ahe,go,$p=N(()=>{"use strict";qt();tb();Fp();o(Yu,"tokenLabel");o(_I,"hasTokenLabel");Lqe="parent",Zue="categories",Jue="label",ehe="group",the="push_mode",rhe="pop_mode",nhe="longer_alt",ihe="line_breaks",ahe="start_chars_hint";o(Rf,"createToken");o(Rqe,"createTokenInternal");go=Rf({name:"EOF",pattern:Qn.NA});qu([go]);o(Xu,"createTokenInstance");o(nb,"tokenMatcher")});var ju,she,zl,v1=N(()=>{"use strict";$p();qt();ds();ju={buildMismatchTokenMessage({expected:t,actual:e,previous:r,ruleName:n}){return`Expecting ${_I(t)?`--> ${Yu(t)} <--`:`token of type --> ${t.name} <--`} but found --> '${e.image}' <--`},buildNotAllInputParsedMessage({firstRedundant:t,ruleName:e}){return"Redundant input, expecting EOF but found: "+t.image},buildNoViableAltMessage({expectedPathsPerAlt:t,actual:e,previous:r,customUserDescription:n,ruleName:i}){let a="Expecting: ",l=`
|
||
but found: '`+ta(e).image+"'";if(n)return a+n+l;{let u=Xr(t,(p,m)=>p.concat(m),[]),h=et(u,p=>`[${et(p,m=>Yu(m)).join(", ")}]`),d=`one of these possible Token sequences:
|
||
${et(h,(p,m)=>` ${m+1}. ${p}`).join(`
|
||
`)}`;return a+d+l}},buildEarlyExitMessage({expectedIterationPaths:t,actual:e,customUserDescription:r,ruleName:n}){let i="Expecting: ",s=`
|
||
but found: '`+ta(e).image+"'";if(r)return i+r+s;{let u=`expecting at least one iteration which starts with one of these possible Token sequences::
|
||
<${et(t,h=>`[${et(h,f=>Yu(f)).join(",")}]`).join(" ,")}>`;return i+u+s}}};Object.freeze(ju);she={buildRuleNotFoundError(t,e){return"Invalid grammar, reference to a rule which is not defined: ->"+e.nonTerminalName+`<-
|
||
inside top level rule: ->`+t.name+"<-"}},zl={buildDuplicateFoundError(t,e){function r(f){return f instanceof Er?f.terminalType.name:f instanceof cn?f.nonTerminalName:""}o(r,"getExtraProductionArgument");let n=t.name,i=ta(e),a=i.idx,s=qs(i),l=r(i),u=a>0,h=`->${s}${u?a:""}<- ${l?`with argument: ->${l}<-`:""}
|
||
appears more than once (${e.length} times) in the top level rule: ->${n}<-.
|
||
For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES
|
||
`;return h=h.replace(/[ \t]+/g," "),h=h.replace(/\s\s+/g,`
|
||
`),h},buildNamespaceConflictError(t){return`Namespace conflict found in grammar.
|
||
The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${t.name}>.
|
||
To resolve this make sure each Terminal and Non-Terminal names are unique
|
||
This is easy to accomplish by using the convention that Terminal names start with an uppercase letter
|
||
and Non-Terminal names start with a lower case letter.`},buildAlternationPrefixAmbiguityError(t){let e=et(t.prefixPath,i=>Yu(i)).join(", "),r=t.alternation.idx===0?"":t.alternation.idx;return`Ambiguous alternatives: <${t.ambiguityIndices.join(" ,")}> due to common lookahead prefix
|
||
in <OR${r}> inside <${t.topLevelRule.name}> Rule,
|
||
<${e}> may appears as a prefix path in all these alternatives.
|
||
See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX
|
||
For Further details.`},buildAlternationAmbiguityError(t){let e=et(t.prefixPath,i=>Yu(i)).join(", "),r=t.alternation.idx===0?"":t.alternation.idx,n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(" ,")}> in <OR${r}> inside <${t.topLevelRule.name}> Rule,
|
||
<${e}> may appears as a prefix path in all these alternatives.
|
||
`;return n=n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
|
||
For Further details.`,n},buildEmptyRepetitionError(t){let e=qs(t.repetition);return t.repetition.idx!==0&&(e+=t.repetition.idx),`The repetition <${e}> within Rule <${t.topLevelRule.name}> can never consume any tokens.
|
||
This could lead to an infinite loop.`},buildTokenNameError(t){return"deprecated"},buildEmptyAlternationError(t){return`Ambiguous empty alternative: <${t.emptyChoiceIdx+1}> in <OR${t.alternation.idx}> inside <${t.topLevelRule.name}> Rule.
|
||
Only the last alternative may be an empty alternative.`},buildTooManyAlternativesError(t){return`An Alternation cannot have more than 256 alternatives:
|
||
<OR${t.alternation.idx}> inside <${t.topLevelRule.name}> Rule.
|
||
has ${t.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(t){let e=t.topLevelRule.name,r=et(t.leftRecursionPath,a=>a.name),n=`${e} --> ${r.concat([e]).join(" --> ")}`;return`Left Recursion found in grammar.
|
||
rule: <${e}> can be invoked from itself (directly or indirectly)
|
||
without consuming any Tokens. The grammar path that causes this is:
|
||
${n}
|
||
To fix this refactor your grammar to remove the left recursion.
|
||
see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError(t){return"deprecated"},buildDuplicateRuleNameError(t){let e;return t.topLevelRule instanceof hs?e=t.topLevelRule.name:e=t.topLevelRule,`Duplicate definition, rule: ->${e}<- is already defined in the grammar: ->${t.grammarName}<-`}}});function ohe(t,e){let r=new DI(t,e);return r.resolveRefs(),r.errors}var DI,lhe=N(()=>{"use strict";Ys();qt();ds();o(ohe,"resolveGrammar");DI=class extends fs{static{o(this,"GastRefResolverVisitor")}constructor(e,r){super(),this.nameToTopRule=e,this.errMsgProvider=r,this.errors=[]}resolveRefs(){Ae(br(this.nameToTopRule),e=>{this.currTopLevel=e,e.accept(this)})}visitNonTerminal(e){let r=this.nameToTopRule[e.nonTerminalName];if(r)e.referencedRule=r;else{let n=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,e);this.errors.push({message:n,type:Ui.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:e.nonTerminalName})}}}});function tS(t,e,r=[]){r=an(r);let n=[],i=0;function a(l){return l.concat(xi(t,i+1))}o(a,"remainingPathWith");function s(l){let u=tS(a(l),e,r);return n.concat(u)}for(o(s,"getAlternativesForProd");r.length<e&&i<t.length;){let l=t[i];if(l instanceof In)return s(l.definition);if(l instanceof cn)return s(l.definition);if(l instanceof un)n=s(l.definition);else if(l instanceof On){let u=l.definition.concat([new Pr({definition:l.definition})]);return s(u)}else if(l instanceof Pn){let u=[new In({definition:l.definition}),new Pr({definition:[new Er({terminalType:l.separator})].concat(l.definition)})];return s(u)}else if(l instanceof En){let u=l.definition.concat([new Pr({definition:[new Er({terminalType:l.separator})].concat(l.definition)})]);n=s(u)}else if(l instanceof Pr){let u=l.definition.concat([new Pr({definition:l.definition})]);n=s(u)}else{if(l instanceof Sn)return Ae(l.definition,u=>{fr(u.definition)===!1&&(n=s(u.definition))}),n;if(l instanceof Er)r.push(l.terminalType);else throw Error("non exhaustive match")}i++}return n.push({partialPath:r,suffixDef:xi(t,i)}),n}function rS(t,e,r,n){let i="EXIT_NONE_TERMINAL",a=[i],s="EXIT_ALTERNATIVE",l=!1,u=e.length,h=u-n-1,f=[],d=[];for(d.push({idx:-1,def:t,ruleStack:[],occurrenceStack:[]});!fr(d);){let p=d.pop();if(p===s){l&&pa(d).idx<=h&&d.pop();continue}let m=p.def,g=p.idx,y=p.ruleStack,x=p.occurrenceStack;if(fr(m))continue;let v=m[0];if(v===i){let b={idx:g,def:xi(m),ruleStack:Ou(y),occurrenceStack:Ou(x)};d.push(b)}else if(v instanceof Er)if(g<u-1){let b=g+1,T=e[b];if(r(T,v.terminalType)){let S={idx:b,def:xi(m),ruleStack:y,occurrenceStack:x};d.push(S)}}else if(g===u-1)f.push({nextTokenType:v.terminalType,nextTokenOccurrence:v.idx,ruleStack:y,occurrenceStack:x}),l=!0;else throw Error("non exhaustive match");else if(v instanceof cn){let b=an(y);b.push(v.nonTerminalName);let T=an(x);T.push(v.idx);let S={idx:g,def:v.definition.concat(a,xi(m)),ruleStack:b,occurrenceStack:T};d.push(S)}else if(v instanceof un){let b={idx:g,def:xi(m),ruleStack:y,occurrenceStack:x};d.push(b),d.push(s);let T={idx:g,def:v.definition.concat(xi(m)),ruleStack:y,occurrenceStack:x};d.push(T)}else if(v instanceof On){let b=new Pr({definition:v.definition,idx:v.idx}),T=v.definition.concat([b],xi(m)),S={idx:g,def:T,ruleStack:y,occurrenceStack:x};d.push(S)}else if(v instanceof Pn){let b=new Er({terminalType:v.separator}),T=new Pr({definition:[b].concat(v.definition),idx:v.idx}),S=v.definition.concat([T],xi(m)),w={idx:g,def:S,ruleStack:y,occurrenceStack:x};d.push(w)}else if(v instanceof En){let b={idx:g,def:xi(m),ruleStack:y,occurrenceStack:x};d.push(b),d.push(s);let T=new Er({terminalType:v.separator}),S=new Pr({definition:[T].concat(v.definition),idx:v.idx}),w=v.definition.concat([S],xi(m)),E={idx:g,def:w,ruleStack:y,occurrenceStack:x};d.push(E)}else if(v instanceof Pr){let b={idx:g,def:xi(m),ruleStack:y,occurrenceStack:x};d.push(b),d.push(s);let T=new Pr({definition:v.definition,idx:v.idx}),S=v.definition.concat([T],xi(m)),w={idx:g,def:S,ruleStack:y,occurrenceStack:x};d.push(w)}else if(v instanceof Sn)for(let b=v.definition.length-1;b>=0;b--){let T=v.definition[b],S={idx:g,def:T.definition.concat(xi(m)),ruleStack:y,occurrenceStack:x};d.push(S),d.push(s)}else if(v instanceof In)d.push({idx:g,def:v.definition.concat(xi(m)),ruleStack:y,occurrenceStack:x});else if(v instanceof hs)d.push(Nqe(v,g,y,x));else throw Error("non exhaustive match")}return f}function Nqe(t,e,r,n){let i=an(r);i.push(t.name);let a=an(n);return a.push(1),{idx:e,def:t.definition,ruleStack:i,occurrenceStack:a}}var LI,ZE,x1,JE,ib,eS,ab,sb=N(()=>{"use strict";qt();yI();HE();ds();LI=class extends Hu{static{o(this,"AbstractNextPossibleTokensWalker")}constructor(e,r){super(),this.topProd=e,this.path=r,this.possibleTokTypes=[],this.nextProductionName="",this.nextProductionOccurrence=0,this.found=!1,this.isAtEndOfPath=!1}startWalking(){if(this.found=!1,this.path.ruleStack[0]!==this.topProd.name)throw Error("The path does not start with the walker's top Rule!");return this.ruleStack=an(this.path.ruleStack).reverse(),this.occurrenceStack=an(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(e,r=[]){this.found||super.walk(e,r)}walkProdRef(e,r,n){if(e.referencedRule.name===this.nextProductionName&&e.idx===this.nextProductionOccurrence){let i=r.concat(n);this.updateExpectedNext(),this.walk(e.referencedRule,i)}}updateExpectedNext(){fr(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}},ZE=class extends LI{static{o(this,"NextAfterTokenWalker")}constructor(e,r){super(e,r),this.path=r,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(e,r,n){if(this.isAtEndOfPath&&e.terminalType.name===this.nextTerminalName&&e.idx===this.nextTerminalOccurrence&&!this.found){let i=r.concat(n),a=new In({definition:i});this.possibleTokTypes=Pp(a),this.found=!0}}},x1=class extends Hu{static{o(this,"AbstractNextTerminalAfterProductionWalker")}constructor(e,r){super(),this.topRule=e,this.occurrence=r,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}},JE=class extends x1{static{o(this,"NextTerminalAfterManyWalker")}walkMany(e,r,n){if(e.idx===this.occurrence){let i=ta(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof Er&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkMany(e,r,n)}},ib=class extends x1{static{o(this,"NextTerminalAfterManySepWalker")}walkManySep(e,r,n){if(e.idx===this.occurrence){let i=ta(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof Er&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkManySep(e,r,n)}},eS=class extends x1{static{o(this,"NextTerminalAfterAtLeastOneWalker")}walkAtLeastOne(e,r,n){if(e.idx===this.occurrence){let i=ta(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof Er&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOne(e,r,n)}},ab=class extends x1{static{o(this,"NextTerminalAfterAtLeastOneSepWalker")}walkAtLeastOneSep(e,r,n){if(e.idx===this.occurrence){let i=ta(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof Er&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOneSep(e,r,n)}};o(tS,"possiblePathsFrom");o(rS,"nextPossibleTokensAfter");o(Nqe,"expandTopLevelRule")});function ob(t){if(t instanceof un||t==="Option")return Zn.OPTION;if(t instanceof Pr||t==="Repetition")return Zn.REPETITION;if(t instanceof On||t==="RepetitionMandatory")return Zn.REPETITION_MANDATORY;if(t instanceof Pn||t==="RepetitionMandatoryWithSeparator")return Zn.REPETITION_MANDATORY_WITH_SEPARATOR;if(t instanceof En||t==="RepetitionWithSeparator")return Zn.REPETITION_WITH_SEPARATOR;if(t instanceof Sn||t==="Alternation")return Zn.ALTERNATION;throw Error("non exhaustive match")}function iS(t){let{occurrence:e,rule:r,prodType:n,maxLookahead:i}=t,a=ob(n);return a===Zn.ALTERNATION?b1(e,r,i):T1(e,r,a,i)}function uhe(t,e,r,n,i,a){let s=b1(t,e,r),l=ghe(s)?g1:Wu;return a(s,n,l,i)}function hhe(t,e,r,n,i,a){let s=T1(t,e,i,r),l=ghe(s)?g1:Wu;return a(s[0],l,n)}function fhe(t,e,r,n){let i=t.length,a=Ia(t,s=>Ia(s,l=>l.length===1));if(e)return function(s){let l=et(s,u=>u.GATE);for(let u=0;u<i;u++){let h=t[u],f=h.length,d=l[u];if(!(d!==void 0&&d.call(this)===!1))e:for(let p=0;p<f;p++){let m=h[p],g=m.length;for(let y=0;y<g;y++){let x=this.LA(y+1);if(r(x,m[y])===!1)continue e}return u}}};if(a&&!n){let s=et(t,u=>qr(u)),l=Xr(s,(u,h,f)=>(Ae(h,d=>{Bt(u,d.tokenTypeIdx)||(u[d.tokenTypeIdx]=f),Ae(d.categoryMatches,p=>{Bt(u,p)||(u[p]=f)})}),u),{});return function(){let u=this.LA(1);return l[u.tokenTypeIdx]}}else return function(){for(let s=0;s<i;s++){let l=t[s],u=l.length;e:for(let h=0;h<u;h++){let f=l[h],d=f.length;for(let p=0;p<d;p++){let m=this.LA(p+1);if(r(m,f[p])===!1)continue e}return s}}}}function dhe(t,e,r){let n=Ia(t,a=>a.length===1),i=t.length;if(n&&!r){let a=qr(t);if(a.length===1&&fr(a[0].categoryMatches)){let l=a[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===l}}else{let s=Xr(a,(l,u,h)=>(l[u.tokenTypeIdx]=!0,Ae(u.categoryMatches,f=>{l[f]=!0}),l),[]);return function(){let l=this.LA(1);return s[l.tokenTypeIdx]===!0}}}else return function(){e:for(let a=0;a<i;a++){let s=t[a],l=s.length;for(let u=0;u<l;u++){let h=this.LA(u+1);if(e(h,s[u])===!1)continue e}return!0}return!1}}function che(t){let e=new Array(t);for(let r=0;r<t;r++)e[r]=[];return e}function RI(t){let e=[""];for(let r=0;r<t.length;r++){let n=t[r],i=[];for(let a=0;a<e.length;a++){let s=e[a];i.push(s+"_"+n.tokenTypeIdx);for(let l=0;l<n.categoryMatches.length;l++){let u="_"+n.categoryMatches[l];i.push(s+u)}}e=i}return e}function Mqe(t,e,r){for(let n=0;n<t.length;n++){if(n===r)continue;let i=t[n];for(let a=0;a<e.length;a++){let s=e[a];if(i[s]===!0)return!1}}return!0}function phe(t,e){let r=et(t,s=>tS([s],1)),n=che(r.length),i=et(r,s=>{let l={};return Ae(s,u=>{let h=RI(u.partialPath);Ae(h,f=>{l[f]=!0})}),l}),a=r;for(let s=1;s<=e;s++){let l=a;a=che(l.length);for(let u=0;u<l.length;u++){let h=l[u];for(let f=0;f<h.length;f++){let d=h[f].partialPath,p=h[f].suffixDef,m=RI(d);if(Mqe(i,m,u)||fr(p)||d.length===e){let y=n[u];if(aS(y,d)===!1){y.push(d);for(let x=0;x<m.length;x++){let v=m[x];i[u][v]=!0}}}else{let y=tS(p,s+1,d);a[u]=a[u].concat(y),Ae(y,x=>{let v=RI(x.partialPath);Ae(v,b=>{i[u][b]=!0})})}}}}return n}function b1(t,e,r,n){let i=new nS(t,Zn.ALTERNATION,n);return e.accept(i),phe(i.result,r)}function T1(t,e,r,n){let i=new nS(t,r);e.accept(i);let a=i.result,l=new NI(e,t,r).startWalking(),u=new In({definition:a}),h=new In({definition:l});return phe([u,h],n)}function aS(t,e){e:for(let r=0;r<t.length;r++){let n=t[r];if(n.length===e.length){for(let i=0;i<n.length;i++){let a=e[i],s=n[i];if((a===s||s.categoryMatchesMap[a.tokenTypeIdx]!==void 0)===!1)continue e}return!0}}return!1}function mhe(t,e){return t.length<e.length&&Ia(t,(r,n)=>{let i=e[n];return r===i||i.categoryMatchesMap[r.tokenTypeIdx]})}function ghe(t){return Ia(t,e=>Ia(e,r=>Ia(r,n=>fr(n.categoryMatches))))}var Zn,NI,nS,w1=N(()=>{"use strict";qt();sb();HE();Fp();ds();(function(t){t[t.OPTION=0]="OPTION",t[t.REPETITION=1]="REPETITION",t[t.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",t[t.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",t[t.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",t[t.ALTERNATION=5]="ALTERNATION"})(Zn||(Zn={}));o(ob,"getProdType");o(iS,"getLookaheadPaths");o(uhe,"buildLookaheadFuncForOr");o(hhe,"buildLookaheadFuncForOptionalProd");o(fhe,"buildAlternativesLookAheadFunc");o(dhe,"buildSingleAlternativeLookaheadFunction");NI=class extends Hu{static{o(this,"RestDefinitionFinderWalker")}constructor(e,r,n){super(),this.topProd=e,this.targetOccurrence=r,this.targetProdType=n}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(e,r,n,i){return e.idx===this.targetOccurrence&&this.targetProdType===r?(this.restDef=n.concat(i),!0):!1}walkOption(e,r,n){this.checkIsTarget(e,Zn.OPTION,r,n)||super.walkOption(e,r,n)}walkAtLeastOne(e,r,n){this.checkIsTarget(e,Zn.REPETITION_MANDATORY,r,n)||super.walkOption(e,r,n)}walkAtLeastOneSep(e,r,n){this.checkIsTarget(e,Zn.REPETITION_MANDATORY_WITH_SEPARATOR,r,n)||super.walkOption(e,r,n)}walkMany(e,r,n){this.checkIsTarget(e,Zn.REPETITION,r,n)||super.walkOption(e,r,n)}walkManySep(e,r,n){this.checkIsTarget(e,Zn.REPETITION_WITH_SEPARATOR,r,n)||super.walkOption(e,r,n)}},nS=class extends fs{static{o(this,"InsideDefinitionFinderVisitor")}constructor(e,r,n){super(),this.targetOccurrence=e,this.targetProdType=r,this.targetRef=n,this.result=[]}checkIsTarget(e,r){e.idx===this.targetOccurrence&&this.targetProdType===r&&(this.targetRef===void 0||e===this.targetRef)&&(this.result=e.definition)}visitOption(e){this.checkIsTarget(e,Zn.OPTION)}visitRepetition(e){this.checkIsTarget(e,Zn.REPETITION)}visitRepetitionMandatory(e){this.checkIsTarget(e,Zn.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(e){this.checkIsTarget(e,Zn.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(e){this.checkIsTarget(e,Zn.REPETITION_WITH_SEPARATOR)}visitAlternation(e){this.checkIsTarget(e,Zn.ALTERNATION)}};o(che,"initializeArrayOfArrays");o(RI,"pathToHashKeys");o(Mqe,"isUniquePrefixHash");o(phe,"lookAheadSequenceFromAlternatives");o(b1,"getLookaheadPathsForOr");o(T1,"getLookaheadPathsForOptionalProd");o(aS,"containsPath");o(mhe,"isStrictPrefixOfPath");o(ghe,"areTokenCategoriesNotUsed")});function yhe(t){let e=t.lookaheadStrategy.validate({rules:t.rules,tokenTypes:t.tokenTypes,grammarName:t.grammarName});return et(e,r=>Object.assign({type:Ui.CUSTOM_LOOKAHEAD_VALIDATION},r))}function vhe(t,e,r,n){let i=ma(t,u=>Iqe(u,r)),a=Gqe(t,e,r),s=ma(t,u=>Bqe(u,r)),l=ma(t,u=>Pqe(u,t,n,r));return i.concat(a,s,l)}function Iqe(t,e){let r=new MI;t.accept(r);let n=r.allProductions,i=wR(n,Oqe),a=zs(i,l=>l.length>1);return et(br(a),l=>{let u=ta(l),h=e.buildDuplicateFoundError(t,l),f=qs(u),d={message:h,type:Ui.DUPLICATE_PRODUCTIONS,ruleName:t.name,dslName:f,occurrence:u.idx},p=xhe(u);return p&&(d.parameter=p),d})}function Oqe(t){return`${qs(t)}_#_${t.idx}_#_${xhe(t)}`}function xhe(t){return t instanceof Er?t.terminalType.name:t instanceof cn?t.nonTerminalName:""}function Pqe(t,e,r,n){let i=[];if(Xr(e,(s,l)=>l.name===t.name?s+1:s,0)>1){let s=n.buildDuplicateRuleNameError({topLevelRule:t,grammarName:r});i.push({message:s,type:Ui.DUPLICATE_RULE_NAME,ruleName:t.name})}return i}function bhe(t,e,r){let n=[],i;return jn(e,t)||(i=`Invalid rule override, rule: ->${t}<- cannot be overridden in the grammar: ->${r}<-as it is not defined in any of the super grammars `,n.push({message:i,type:Ui.INVALID_RULE_OVERRIDE,ruleName:t})),n}function OI(t,e,r,n=[]){let i=[],a=sS(e.definition);if(fr(a))return[];{let s=t.name;jn(a,t)&&i.push({message:r.buildLeftRecursionError({topLevelRule:t,leftRecursionPath:n}),type:Ui.LEFT_RECURSION,ruleName:s});let u=sf(a,n.concat([t])),h=ma(u,f=>{let d=an(n);return d.push(f),OI(t,f,r,d)});return i.concat(h)}}function sS(t){let e=[];if(fr(t))return e;let r=ta(t);if(r instanceof cn)e.push(r.referencedRule);else if(r instanceof In||r instanceof un||r instanceof On||r instanceof Pn||r instanceof En||r instanceof Pr)e=e.concat(sS(r.definition));else if(r instanceof Sn)e=qr(et(r.definition,a=>sS(a.definition)));else if(!(r instanceof Er))throw Error("non exhaustive match");let n=Op(r),i=t.length>1;if(n&&i){let a=xi(t);return e.concat(sS(a))}else return e}function The(t,e){let r=new lb;t.accept(r);let n=r.alternations;return ma(n,a=>{let s=Ou(a.definition);return ma(s,(l,u)=>{let h=rS([l],[],Wu,1);return fr(h)?[{message:e.buildEmptyAlternationError({topLevelRule:t,alternation:a,emptyChoiceIdx:u}),type:Ui.NONE_LAST_EMPTY_ALT,ruleName:t.name,occurrence:a.idx,alternative:u+1}]:[]})})}function whe(t,e,r){let n=new lb;t.accept(n);let i=n.alternations;return i=of(i,s=>s.ignoreAmbiguities===!0),ma(i,s=>{let l=s.idx,u=s.maxLookahead||e,h=b1(l,t,u,s),f=Fqe(h,s,t,r),d=$qe(h,s,t,r);return f.concat(d)})}function Bqe(t,e){let r=new lb;t.accept(r);let n=r.alternations;return ma(n,a=>a.definition.length>255?[{message:e.buildTooManyAlternativesError({topLevelRule:t,alternation:a}),type:Ui.TOO_MANY_ALTS,ruleName:t.name,occurrence:a.idx}]:[])}function khe(t,e,r){let n=[];return Ae(t,i=>{let a=new II;i.accept(a);let s=a.allProductions;Ae(s,l=>{let u=ob(l),h=l.maxLookahead||e,f=l.idx,p=T1(f,i,u,h)[0];if(fr(qr(p))){let m=r.buildEmptyRepetitionError({topLevelRule:i,repetition:l});n.push({message:m,type:Ui.NO_NON_EMPTY_LOOKAHEAD,ruleName:i.name})}})}),n}function Fqe(t,e,r,n){let i=[],a=Xr(t,(l,u,h)=>(e.definition[h].ignoreAmbiguities===!0||Ae(u,f=>{let d=[h];Ae(t,(p,m)=>{h!==m&&aS(p,f)&&e.definition[m].ignoreAmbiguities!==!0&&d.push(m)}),d.length>1&&!aS(i,f)&&(i.push(f),l.push({alts:d,path:f}))}),l),[]);return et(a,l=>{let u=et(l.alts,f=>f+1);return{message:n.buildAlternationAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:u,prefixPath:l.path}),type:Ui.AMBIGUOUS_ALTS,ruleName:r.name,occurrence:e.idx,alternatives:l.alts}})}function $qe(t,e,r,n){let i=Xr(t,(s,l,u)=>{let h=et(l,f=>({idx:u,path:f}));return s.concat(h)},[]);return Cc(ma(i,s=>{if(e.definition[s.idx].ignoreAmbiguities===!0)return[];let u=s.idx,h=s.path,f=Yr(i,p=>e.definition[p.idx].ignoreAmbiguities!==!0&&p.idx<u&&mhe(p.path,h));return et(f,p=>{let m=[p.idx+1,u+1],g=e.idx===0?"":e.idx;return{message:n.buildAlternationPrefixAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:m,prefixPath:p.path}),type:Ui.AMBIGUOUS_PREFIX_ALTS,ruleName:r.name,occurrence:g,alternatives:m}})}))}function Gqe(t,e,r){let n=[],i=et(e,a=>a.name);return Ae(t,a=>{let s=a.name;if(jn(i,s)){let l=r.buildNamespaceConflictError(a);n.push({message:l,type:Ui.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:s})}}),n}var MI,lb,II,cb=N(()=>{"use strict";qt();Ys();ds();w1();sb();Fp();o(yhe,"validateLookahead");o(vhe,"validateGrammar");o(Iqe,"validateDuplicateProductions");o(Oqe,"identifyProductionForDuplicates");o(xhe,"getExtraProductionArgument");MI=class extends fs{static{o(this,"OccurrenceValidationCollector")}constructor(){super(...arguments),this.allProductions=[]}visitNonTerminal(e){this.allProductions.push(e)}visitOption(e){this.allProductions.push(e)}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}visitAlternation(e){this.allProductions.push(e)}visitTerminal(e){this.allProductions.push(e)}};o(Pqe,"validateRuleDoesNotAlreadyExist");o(bhe,"validateRuleIsOverridden");o(OI,"validateNoLeftRecursion");o(sS,"getFirstNoneTerminal");lb=class extends fs{static{o(this,"OrCollector")}constructor(){super(...arguments),this.alternations=[]}visitAlternation(e){this.alternations.push(e)}};o(The,"validateEmptyOrAlternative");o(whe,"validateAmbiguousAlternationAlternatives");II=class extends fs{static{o(this,"RepetitionCollector")}constructor(){super(...arguments),this.allProductions=[]}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}};o(Bqe,"validateTooManyAlts");o(khe,"validateSomeNonEmptyLookaheadPath");o(Fqe,"checkAlternativesAmbiguities");o($qe,"checkPrefixAlternativesAmbiguities");o(Gqe,"checkTerminalAndNoneTerminalsNameSpace")});function Ehe(t){let e=af(t,{errMsgProvider:she}),r={};return Ae(t.rules,n=>{r[n.name]=n}),ohe(r,e.errMsgProvider)}function She(t){return t=af(t,{errMsgProvider:zl}),vhe(t.rules,t.tokenTypes,t.errMsgProvider,t.grammarName)}var Che=N(()=>{"use strict";qt();lhe();cb();v1();o(Ehe,"resolveGrammar");o(She,"validateGrammar")});function Nf(t){return jn(Rhe,t.name)}var Ahe,_he,Dhe,Lhe,Rhe,k1,Gp,ub,hb,fb,E1=N(()=>{"use strict";qt();Ahe="MismatchedTokenException",_he="NoViableAltException",Dhe="EarlyExitException",Lhe="NotAllInputParsedException",Rhe=[Ahe,_he,Dhe,Lhe];Object.freeze(Rhe);o(Nf,"isRecognitionException");k1=class extends Error{static{o(this,"RecognitionException")}constructor(e,r){super(e),this.token=r,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},Gp=class extends k1{static{o(this,"MismatchedTokenException")}constructor(e,r,n){super(e,r),this.previousToken=n,this.name=Ahe}},ub=class extends k1{static{o(this,"NoViableAltException")}constructor(e,r,n){super(e,r),this.previousToken=n,this.name=_he}},hb=class extends k1{static{o(this,"NotAllInputParsedException")}constructor(e,r){super(e,r),this.name=Lhe}},fb=class extends k1{static{o(this,"EarlyExitException")}constructor(e,r,n){super(e,r),this.previousToken=n,this.name=Dhe}}});function zqe(t,e,r,n,i,a,s){let l=this.getKeyForAutomaticLookahead(n,i),u=this.firstAfterRepMap[l];if(u===void 0){let p=this.getCurrRuleFullName(),m=this.getGAstProductions()[p];u=new a(m,i).startWalking(),this.firstAfterRepMap[l]=u}let h=u.token,f=u.occurrence,d=u.isEndOfRule;this.RULE_STACK.length===1&&d&&h===void 0&&(h=go,f=1),!(h===void 0||f===void 0)&&this.shouldInRepetitionRecoveryBeTried(h,f,s)&&this.tryInRepetitionRecovery(t,e,r,h)}var PI,FI,BI,oS,$I=N(()=>{"use strict";$p();qt();E1();vI();Ys();PI={},FI="InRuleRecoveryException",BI=class extends Error{static{o(this,"InRuleRecoveryException")}constructor(e){super(e),this.name=FI}},oS=class{static{o(this,"Recoverable")}initRecoverable(e){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=Bt(e,"recoveryEnabled")?e.recoveryEnabled:ps.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=zqe)}getTokenToInsert(e){let r=Xu(e,"",NaN,NaN,NaN,NaN,NaN,NaN);return r.isInsertedInRecovery=!0,r}canTokenTypeBeInsertedInRecovery(e){return!0}canTokenTypeBeDeletedInRecovery(e){return!0}tryInRepetitionRecovery(e,r,n,i){let a=this.findReSyncTokenType(),s=this.exportLexerState(),l=[],u=!1,h=this.LA(1),f=this.LA(1),d=o(()=>{let p=this.LA(0),m=this.errorMessageProvider.buildMismatchTokenMessage({expected:i,actual:h,previous:p,ruleName:this.getCurrRuleFullName()}),g=new Gp(m,h,this.LA(0));g.resyncedTokens=Ou(l),this.SAVE_ERROR(g)},"generateErrorMessage");for(;!u;)if(this.tokenMatcher(f,i)){d();return}else if(n.call(this)){d(),e.apply(this,r);return}else this.tokenMatcher(f,a)?u=!0:(f=this.SKIP_TOKEN(),this.addToResyncTokens(f,l));this.importLexerState(s)}shouldInRepetitionRecoveryBeTried(e,r,n){return!(n===!1||this.tokenMatcher(this.LA(1),e)||this.isBackTracking()||this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,r)))}getFollowsForInRuleRecovery(e,r){let n=this.getCurrentGrammarPath(e,r);return this.getNextPossibleTokenTypes(n)}tryInRuleRecovery(e,r){if(this.canRecoverWithSingleTokenInsertion(e,r))return this.getTokenToInsert(e);if(this.canRecoverWithSingleTokenDeletion(e)){let n=this.SKIP_TOKEN();return this.consumeToken(),n}throw new BI("sad sad panda")}canPerformInRuleRecovery(e,r){return this.canRecoverWithSingleTokenInsertion(e,r)||this.canRecoverWithSingleTokenDeletion(e)}canRecoverWithSingleTokenInsertion(e,r){if(!this.canTokenTypeBeInsertedInRecovery(e)||fr(r))return!1;let n=this.LA(1);return os(r,a=>this.tokenMatcher(n,a))!==void 0}canRecoverWithSingleTokenDeletion(e){return this.canTokenTypeBeDeletedInRecovery(e)?this.tokenMatcher(this.LA(2),e):!1}isInCurrentRuleReSyncSet(e){let r=this.getCurrFollowKey(),n=this.getFollowSetFromFollowKey(r);return jn(n,e)}findReSyncTokenType(){let e=this.flattenFollowSet(),r=this.LA(1),n=2;for(;;){let i=os(e,a=>nb(r,a));if(i!==void 0)return i;r=this.LA(n),n++}}getCurrFollowKey(){if(this.RULE_STACK.length===1)return PI;let e=this.getLastExplicitRuleShortName(),r=this.getLastExplicitRuleOccurrenceIndex(),n=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:r,inRule:this.shortRuleNameToFullName(n)}}buildFullFollowKeyStack(){let e=this.RULE_STACK,r=this.RULE_OCCURRENCE_STACK;return et(e,(n,i)=>i===0?PI:{ruleName:this.shortRuleNameToFullName(n),idxInCallingRule:r[i],inRule:this.shortRuleNameToFullName(e[i-1])})}flattenFollowSet(){let e=et(this.buildFullFollowKeyStack(),r=>this.getFollowSetFromFollowKey(r));return qr(e)}getFollowSetFromFollowKey(e){if(e===PI)return[go];let r=e.ruleName+e.idxInCallingRule+WE+e.inRule;return this.resyncFollows[r]}addToResyncTokens(e,r){return this.tokenMatcher(e,go)||r.push(e),r}reSyncTo(e){let r=[],n=this.LA(1);for(;this.tokenMatcher(n,e)===!1;)n=this.SKIP_TOKEN(),this.addToResyncTokens(n,r);return Ou(r)}attemptInRepetitionRecovery(e,r,n,i,a,s,l){}getCurrentGrammarPath(e,r){let n=this.getHumanReadableRuleStack(),i=an(this.RULE_OCCURRENCE_STACK);return{ruleStack:n,occurrenceStack:i,lastTok:e,lastTokOccurrence:r}}getHumanReadableRuleStack(){return et(this.RULE_STACK,e=>this.shortRuleNameToFullName(e))}};o(zqe,"attemptInRepetitionRecovery")});function lS(t,e,r){return r|e|t}var cS=N(()=>{"use strict";o(lS,"getKeyForAutomaticLookahead")});var Ku,GI=N(()=>{"use strict";qt();v1();Ys();cb();w1();Ku=class{static{o(this,"LLkLookaheadStrategy")}constructor(e){var r;this.maxLookahead=(r=e?.maxLookahead)!==null&&r!==void 0?r:ps.maxLookahead}validate(e){let r=this.validateNoLeftRecursion(e.rules);if(fr(r)){let n=this.validateEmptyOrAlternatives(e.rules),i=this.validateAmbiguousAlternationAlternatives(e.rules,this.maxLookahead),a=this.validateSomeNonEmptyLookaheadPath(e.rules,this.maxLookahead);return[...r,...n,...i,...a]}return r}validateNoLeftRecursion(e){return ma(e,r=>OI(r,r,zl))}validateEmptyOrAlternatives(e){return ma(e,r=>The(r,zl))}validateAmbiguousAlternationAlternatives(e,r){return ma(e,n=>whe(n,r,zl))}validateSomeNonEmptyLookaheadPath(e,r){return khe(e,r,zl)}buildLookaheadForAlternation(e){return uhe(e.prodOccurrence,e.rule,e.maxLookahead,e.hasPredicates,e.dynamicTokensEnabled,fhe)}buildLookaheadForOptional(e){return hhe(e.prodOccurrence,e.rule,e.maxLookahead,e.dynamicTokensEnabled,ob(e.prodType),dhe)}}});function Vqe(t){uS.reset(),t.accept(uS);let e=uS.dslMethods;return uS.reset(),e}var hS,zI,uS,Nhe=N(()=>{"use strict";qt();Ys();cS();ds();GI();hS=class{static{o(this,"LooksAhead")}initLooksAhead(e){this.dynamicTokensEnabled=Bt(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:ps.dynamicTokensEnabled,this.maxLookahead=Bt(e,"maxLookahead")?e.maxLookahead:ps.maxLookahead,this.lookaheadStrategy=Bt(e,"lookaheadStrategy")?e.lookaheadStrategy:new Ku({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(e){Ae(e,r=>{this.TRACE_INIT(`${r.name} Rule Lookahead`,()=>{let{alternation:n,repetition:i,option:a,repetitionMandatory:s,repetitionMandatoryWithSeparator:l,repetitionWithSeparator:u}=Vqe(r);Ae(n,h=>{let f=h.idx===0?"":h.idx;this.TRACE_INIT(`${qs(h)}${f}`,()=>{let d=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:h.idx,rule:r,maxLookahead:h.maxLookahead||this.maxLookahead,hasPredicates:h.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),p=lS(this.fullRuleNameToShort[r.name],256,h.idx);this.setLaFuncCache(p,d)})}),Ae(i,h=>{this.computeLookaheadFunc(r,h.idx,768,"Repetition",h.maxLookahead,qs(h))}),Ae(a,h=>{this.computeLookaheadFunc(r,h.idx,512,"Option",h.maxLookahead,qs(h))}),Ae(s,h=>{this.computeLookaheadFunc(r,h.idx,1024,"RepetitionMandatory",h.maxLookahead,qs(h))}),Ae(l,h=>{this.computeLookaheadFunc(r,h.idx,1536,"RepetitionMandatoryWithSeparator",h.maxLookahead,qs(h))}),Ae(u,h=>{this.computeLookaheadFunc(r,h.idx,1280,"RepetitionWithSeparator",h.maxLookahead,qs(h))})})})}computeLookaheadFunc(e,r,n,i,a,s){this.TRACE_INIT(`${s}${r===0?"":r}`,()=>{let l=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:r,rule:e,maxLookahead:a||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:i}),u=lS(this.fullRuleNameToShort[e.name],n,r);this.setLaFuncCache(u,l)})}getKeyForAutomaticLookahead(e,r){let n=this.getLastExplicitRuleShortName();return lS(n,e,r)}getLaFuncFromCache(e){return this.lookAheadFuncsCache.get(e)}setLaFuncCache(e,r){this.lookAheadFuncsCache.set(e,r)}},zI=class extends fs{static{o(this,"DslMethodsCollectorVisitor")}constructor(){super(...arguments),this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(e){this.dslMethods.option.push(e)}visitRepetitionWithSeparator(e){this.dslMethods.repetitionWithSeparator.push(e)}visitRepetitionMandatory(e){this.dslMethods.repetitionMandatory.push(e)}visitRepetitionMandatoryWithSeparator(e){this.dslMethods.repetitionMandatoryWithSeparator.push(e)}visitRepetition(e){this.dslMethods.repetition.push(e)}visitAlternation(e){this.dslMethods.alternation.push(e)}},uS=new zI;o(Vqe,"collectMethods")});function HI(t,e){isNaN(t.startOffset)===!0?(t.startOffset=e.startOffset,t.endOffset=e.endOffset):t.endOffset<e.endOffset&&(t.endOffset=e.endOffset)}function WI(t,e){isNaN(t.startOffset)===!0?(t.startOffset=e.startOffset,t.startColumn=e.startColumn,t.startLine=e.startLine,t.endOffset=e.endOffset,t.endColumn=e.endColumn,t.endLine=e.endLine):t.endOffset<e.endOffset&&(t.endOffset=e.endOffset,t.endColumn=e.endColumn,t.endLine=e.endLine)}function Mhe(t,e,r){t.children[r]===void 0?t.children[r]=[e]:t.children[r].push(e)}function Ihe(t,e,r){t.children[e]===void 0?t.children[e]=[r]:t.children[e].push(r)}var Ohe=N(()=>{"use strict";o(HI,"setNodeLocationOnlyOffset");o(WI,"setNodeLocationFull");o(Mhe,"addTerminalToCst");o(Ihe,"addNoneTerminalToCst")});function qI(t,e){Object.defineProperty(t,Uqe,{enumerable:!1,configurable:!0,writable:!1,value:e})}var Uqe,Phe=N(()=>{"use strict";Uqe="name";o(qI,"defineNameProp")});function Hqe(t,e){let r=Gr(t),n=r.length;for(let i=0;i<n;i++){let a=r[i],s=t[a],l=s.length;for(let u=0;u<l;u++){let h=s[u];h.tokenTypeIdx===void 0&&this[h.name](h.children,e)}}}function Bhe(t,e){let r=o(function(){},"derivedConstructor");qI(r,t+"BaseSemantics");let n={visit:o(function(i,a){if(Pt(i)&&(i=i[0]),!gr(i))return this[i.name](i.children,a)},"visit"),validateVisitor:o(function(){let i=Wqe(this,e);if(!fr(i)){let a=et(i,s=>s.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>:
|
||
${a.join(`
|
||
|
||
`).replace(/\n/g,`
|
||
`)}`)}},"validateVisitor")};return r.prototype=n,r.prototype.constructor=r,r._RULE_NAMES=e,r}function Fhe(t,e,r){let n=o(function(){},"derivedConstructor");qI(n,t+"BaseSemanticsWithDefaults");let i=Object.create(r.prototype);return Ae(e,a=>{i[a]=Hqe}),n.prototype=i,n.prototype.constructor=n,n}function Wqe(t,e){return qqe(t,e)}function qqe(t,e){let r=Yr(e,i=>Ai(t[i])===!1),n=et(r,i=>({msg:`Missing visitor method: <${i}> on ${t.constructor.name} CST Visitor.`,type:YI.MISSING_METHOD,methodName:i}));return Cc(n)}var YI,$he=N(()=>{"use strict";qt();Phe();o(Hqe,"defaultVisit");o(Bhe,"createBaseSemanticVisitorConstructor");o(Fhe,"createBaseVisitorConstructorWithDefaults");(function(t){t[t.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",t[t.MISSING_METHOD=1]="MISSING_METHOD"})(YI||(YI={}));o(Wqe,"validateVisitor");o(qqe,"validateMissingCstMethods")});var mS,Ghe=N(()=>{"use strict";Ohe();qt();$he();Ys();mS=class{static{o(this,"TreeBuilder")}initTreeBuilder(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=Bt(e,"nodeLocationTracking")?e.nodeLocationTracking:ps.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=si,this.cstFinallyStateUpdate=si,this.cstPostTerminal=si,this.cstPostNonTerminal=si,this.cstPostRule=si;else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=WI,this.setNodeLocationFromNode=WI,this.cstPostRule=si,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=si,this.setNodeLocationFromNode=si,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=HI,this.setNodeLocationFromNode=HI,this.cstPostRule=si,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=si,this.setNodeLocationFromNode=si,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=si,this.setNodeLocationFromNode=si,this.cstPostRule=si,this.setInitialNodeLocation=si;else throw Error(`Invalid <nodeLocationTracking> config option: "${e.nodeLocationTracking}"`)}setInitialNodeLocationOnlyOffsetRecovery(e){e.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(e){e.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(e){e.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(e){let r=this.LA(1);e.location={startOffset:r.startOffset,startLine:r.startLine,startColumn:r.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(e){let r={name:e,children:Object.create(null)};this.setInitialNodeLocation(r),this.CST_STACK.push(r)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(e){let r=this.LA(0),n=e.location;n.startOffset<=r.startOffset?(n.endOffset=r.endOffset,n.endLine=r.endLine,n.endColumn=r.endColumn):(n.startOffset=NaN,n.startLine=NaN,n.startColumn=NaN)}cstPostRuleOnlyOffset(e){let r=this.LA(0),n=e.location;n.startOffset<=r.startOffset?n.endOffset=r.endOffset:n.startOffset=NaN}cstPostTerminal(e,r){let n=this.CST_STACK[this.CST_STACK.length-1];Mhe(n,r,e),this.setNodeLocationFromToken(n.location,r)}cstPostNonTerminal(e,r){let n=this.CST_STACK[this.CST_STACK.length-1];Ihe(n,r,e),this.setNodeLocationFromNode(n.location,e.location)}getBaseCstVisitorConstructor(){if(gr(this.baseCstVisitorConstructor)){let e=Bhe(this.className,Gr(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(gr(this.baseCstVisitorWithDefaultsConstructor)){let e=Fhe(this.className,Gr(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){let e=this.RULE_STACK;return e[e.length-1]}getPreviousExplicitRuleShortName(){let e=this.RULE_STACK;return e[e.length-2]}getLastExplicitRuleOccurrenceIndex(){let e=this.RULE_OCCURRENCE_STACK;return e[e.length-1]}}});var gS,zhe=N(()=>{"use strict";Ys();gS=class{static{o(this,"LexerAdapter")}initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(e){if(this.selfAnalysisDone!==!0)throw Error("Missing <performSelfAnalysis> invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=e,this.tokVectorLength=e.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVector.length-2?(this.consumeToken(),this.LA(1)):S1}LA(e){let r=this.currIdx+e;return r<0||this.tokVectorLength<=r?S1:this.tokVector[r]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(e){this.currIdx=e}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVector.length-1}getLexerPosition(){return this.exportLexerState()}}});var yS,Vhe=N(()=>{"use strict";qt();E1();Ys();v1();cb();ds();yS=class{static{o(this,"RecognizerApi")}ACTION(e){return e.call(this)}consume(e,r,n){return this.consumeInternal(r,e,n)}subrule(e,r,n){return this.subruleInternal(r,e,n)}option(e,r){return this.optionInternal(r,e)}or(e,r){return this.orInternal(r,e)}many(e,r){return this.manyInternal(e,r)}atLeastOne(e,r){return this.atLeastOneInternal(e,r)}CONSUME(e,r){return this.consumeInternal(e,0,r)}CONSUME1(e,r){return this.consumeInternal(e,1,r)}CONSUME2(e,r){return this.consumeInternal(e,2,r)}CONSUME3(e,r){return this.consumeInternal(e,3,r)}CONSUME4(e,r){return this.consumeInternal(e,4,r)}CONSUME5(e,r){return this.consumeInternal(e,5,r)}CONSUME6(e,r){return this.consumeInternal(e,6,r)}CONSUME7(e,r){return this.consumeInternal(e,7,r)}CONSUME8(e,r){return this.consumeInternal(e,8,r)}CONSUME9(e,r){return this.consumeInternal(e,9,r)}SUBRULE(e,r){return this.subruleInternal(e,0,r)}SUBRULE1(e,r){return this.subruleInternal(e,1,r)}SUBRULE2(e,r){return this.subruleInternal(e,2,r)}SUBRULE3(e,r){return this.subruleInternal(e,3,r)}SUBRULE4(e,r){return this.subruleInternal(e,4,r)}SUBRULE5(e,r){return this.subruleInternal(e,5,r)}SUBRULE6(e,r){return this.subruleInternal(e,6,r)}SUBRULE7(e,r){return this.subruleInternal(e,7,r)}SUBRULE8(e,r){return this.subruleInternal(e,8,r)}SUBRULE9(e,r){return this.subruleInternal(e,9,r)}OPTION(e){return this.optionInternal(e,0)}OPTION1(e){return this.optionInternal(e,1)}OPTION2(e){return this.optionInternal(e,2)}OPTION3(e){return this.optionInternal(e,3)}OPTION4(e){return this.optionInternal(e,4)}OPTION5(e){return this.optionInternal(e,5)}OPTION6(e){return this.optionInternal(e,6)}OPTION7(e){return this.optionInternal(e,7)}OPTION8(e){return this.optionInternal(e,8)}OPTION9(e){return this.optionInternal(e,9)}OR(e){return this.orInternal(e,0)}OR1(e){return this.orInternal(e,1)}OR2(e){return this.orInternal(e,2)}OR3(e){return this.orInternal(e,3)}OR4(e){return this.orInternal(e,4)}OR5(e){return this.orInternal(e,5)}OR6(e){return this.orInternal(e,6)}OR7(e){return this.orInternal(e,7)}OR8(e){return this.orInternal(e,8)}OR9(e){return this.orInternal(e,9)}MANY(e){this.manyInternal(0,e)}MANY1(e){this.manyInternal(1,e)}MANY2(e){this.manyInternal(2,e)}MANY3(e){this.manyInternal(3,e)}MANY4(e){this.manyInternal(4,e)}MANY5(e){this.manyInternal(5,e)}MANY6(e){this.manyInternal(6,e)}MANY7(e){this.manyInternal(7,e)}MANY8(e){this.manyInternal(8,e)}MANY9(e){this.manyInternal(9,e)}MANY_SEP(e){this.manySepFirstInternal(0,e)}MANY_SEP1(e){this.manySepFirstInternal(1,e)}MANY_SEP2(e){this.manySepFirstInternal(2,e)}MANY_SEP3(e){this.manySepFirstInternal(3,e)}MANY_SEP4(e){this.manySepFirstInternal(4,e)}MANY_SEP5(e){this.manySepFirstInternal(5,e)}MANY_SEP6(e){this.manySepFirstInternal(6,e)}MANY_SEP7(e){this.manySepFirstInternal(7,e)}MANY_SEP8(e){this.manySepFirstInternal(8,e)}MANY_SEP9(e){this.manySepFirstInternal(9,e)}AT_LEAST_ONE(e){this.atLeastOneInternal(0,e)}AT_LEAST_ONE1(e){return this.atLeastOneInternal(1,e)}AT_LEAST_ONE2(e){this.atLeastOneInternal(2,e)}AT_LEAST_ONE3(e){this.atLeastOneInternal(3,e)}AT_LEAST_ONE4(e){this.atLeastOneInternal(4,e)}AT_LEAST_ONE5(e){this.atLeastOneInternal(5,e)}AT_LEAST_ONE6(e){this.atLeastOneInternal(6,e)}AT_LEAST_ONE7(e){this.atLeastOneInternal(7,e)}AT_LEAST_ONE8(e){this.atLeastOneInternal(8,e)}AT_LEAST_ONE9(e){this.atLeastOneInternal(9,e)}AT_LEAST_ONE_SEP(e){this.atLeastOneSepFirstInternal(0,e)}AT_LEAST_ONE_SEP1(e){this.atLeastOneSepFirstInternal(1,e)}AT_LEAST_ONE_SEP2(e){this.atLeastOneSepFirstInternal(2,e)}AT_LEAST_ONE_SEP3(e){this.atLeastOneSepFirstInternal(3,e)}AT_LEAST_ONE_SEP4(e){this.atLeastOneSepFirstInternal(4,e)}AT_LEAST_ONE_SEP5(e){this.atLeastOneSepFirstInternal(5,e)}AT_LEAST_ONE_SEP6(e){this.atLeastOneSepFirstInternal(6,e)}AT_LEAST_ONE_SEP7(e){this.atLeastOneSepFirstInternal(7,e)}AT_LEAST_ONE_SEP8(e){this.atLeastOneSepFirstInternal(8,e)}AT_LEAST_ONE_SEP9(e){this.atLeastOneSepFirstInternal(9,e)}RULE(e,r,n=C1){if(jn(this.definedRulesNames,e)){let s={message:zl.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),type:Ui.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(s)}this.definedRulesNames.push(e);let i=this.defineRule(e,r,n);return this[e]=i,i}OVERRIDE_RULE(e,r,n=C1){let i=bhe(e,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(i);let a=this.defineRule(e,r,n);return this[e]=a,a}BACKTRACK(e,r){return function(){this.isBackTrackingStack.push(1);let n=this.saveRecogState();try{return e.apply(this,r),!0}catch(i){if(Nf(i))return!1;throw i}finally{this.reloadRecogState(n),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return VE(br(this.gastProductionsCache))}}});var vS,Uhe=N(()=>{"use strict";qt();cS();E1();w1();sb();Ys();$I();$p();Fp();vS=class{static{o(this,"RecognizerEngine")}initRecognizerEngine(e,r){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=g1,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},Bt(r,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a <serializedGrammar> property.
|
||
See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0
|
||
For Further details.`);if(Pt(e)){if(fr(e))throw Error(`A Token Vocabulary cannot be empty.
|
||
Note that the first argument for the parser constructor
|
||
is no longer a Token vector (since v4.0).`);if(typeof e[0].startOffset=="number")throw Error(`The Parser constructor no longer accepts a token vector as the first argument.
|
||
See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0
|
||
For Further details.`)}if(Pt(e))this.tokensMap=Xr(e,(a,s)=>(a[s.name]=s,a),{});else if(Bt(e,"modes")&&Ia(qr(br(e.modes)),Que)){let a=qr(br(e.modes)),s=zm(a);this.tokensMap=Xr(s,(l,u)=>(l[u.name]=u,l),{})}else if(Tn(e))this.tokensMap=an(e);else throw new Error("<tokensDictionary> argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=go;let n=Bt(e,"modes")?qr(br(e.modes)):br(e),i=Ia(n,a=>fr(a.categoryMatches));this.tokenMatcher=i?g1:Wu,qu(br(this.tokensMap))}defineRule(e,r,n){if(this.selfAnalysisDone)throw Error(`Grammar rule <${e}> may not be defined after the 'performSelfAnalysis' method has been called'
|
||
Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);let i=Bt(n,"resyncEnabled")?n.resyncEnabled:C1.resyncEnabled,a=Bt(n,"recoveryValueFunc")?n.recoveryValueFunc:C1.recoveryValueFunc,s=this.ruleShortNameIdx<<12;this.ruleShortNameIdx++,this.shortRuleNameToFull[s]=e,this.fullRuleNameToShort[e]=s;let l;return this.outputCst===!0?l=o(function(...f){try{this.ruleInvocationStateUpdate(s,e,this.subruleIdx),r.apply(this,f);let d=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(d),d}catch(d){return this.invokeRuleCatch(d,i,a)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTry"):l=o(function(...f){try{return this.ruleInvocationStateUpdate(s,e,this.subruleIdx),r.apply(this,f)}catch(d){return this.invokeRuleCatch(d,i,a)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTryCst"),Object.assign(l,{ruleName:e,originalGrammarAction:r})}invokeRuleCatch(e,r,n){let i=this.RULE_STACK.length===1,a=r&&!this.isBackTracking()&&this.recoveryEnabled;if(Nf(e)){let s=e;if(a){let l=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(l))if(s.resyncedTokens=this.reSyncTo(l),this.outputCst){let u=this.CST_STACK[this.CST_STACK.length-1];return u.recoveredNode=!0,u}else return n(e);else{if(this.outputCst){let u=this.CST_STACK[this.CST_STACK.length-1];u.recoveredNode=!0,s.partialCstResult=u}throw s}}else{if(i)return this.moveToTerminatedState(),n(e);throw s}}else throw e}optionInternal(e,r){let n=this.getKeyForAutomaticLookahead(512,r);return this.optionInternalLogic(e,r,n)}optionInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof e!="function"){a=e.DEF;let s=e.GATE;if(s!==void 0){let l=i;i=o(()=>s.call(this)&&l.call(this),"lookAheadFunc")}}else a=e;if(i.call(this)===!0)return a.call(this)}atLeastOneInternal(e,r){let n=this.getKeyForAutomaticLookahead(1024,e);return this.atLeastOneInternalLogic(e,r,n)}atLeastOneInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof r!="function"){a=r.DEF;let s=r.GATE;if(s!==void 0){let l=i;i=o(()=>s.call(this)&&l.call(this),"lookAheadFunc")}}else a=r;if(i.call(this)===!0){let s=this.doSingleRepetition(a);for(;i.call(this)===!0&&s===!0;)s=this.doSingleRepetition(a)}else throw this.raiseEarlyExitException(e,Zn.REPETITION_MANDATORY,r.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,r],i,1024,e,eS)}atLeastOneSepFirstInternal(e,r){let n=this.getKeyForAutomaticLookahead(1536,e);this.atLeastOneSepFirstInternalLogic(e,r,n)}atLeastOneSepFirstInternalLogic(e,r,n){let i=r.DEF,a=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);let l=o(()=>this.tokenMatcher(this.LA(1),a),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA(1),a)===!0;)this.CONSUME(a),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,a,l,i,ab],l,1536,e,ab)}else throw this.raiseEarlyExitException(e,Zn.REPETITION_MANDATORY_WITH_SEPARATOR,r.ERR_MSG)}manyInternal(e,r){let n=this.getKeyForAutomaticLookahead(768,e);return this.manyInternalLogic(e,r,n)}manyInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),a;if(typeof r!="function"){a=r.DEF;let l=r.GATE;if(l!==void 0){let u=i;i=o(()=>l.call(this)&&u.call(this),"lookaheadFunction")}}else a=r;let s=!0;for(;i.call(this)===!0&&s===!0;)s=this.doSingleRepetition(a);this.attemptInRepetitionRecovery(this.manyInternal,[e,r],i,768,e,JE,s)}manySepFirstInternal(e,r){let n=this.getKeyForAutomaticLookahead(1280,e);this.manySepFirstInternalLogic(e,r,n)}manySepFirstInternalLogic(e,r,n){let i=r.DEF,a=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);let l=o(()=>this.tokenMatcher(this.LA(1),a),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA(1),a)===!0;)this.CONSUME(a),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,a,l,i,ib],l,1280,e,ib)}}repetitionSepSecondInternal(e,r,n,i,a){for(;n();)this.CONSUME(r),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,r,n,i,a],n,1536,e,a)}doSingleRepetition(e){let r=this.getLexerPosition();return e.call(this),this.getLexerPosition()>r}orInternal(e,r){let n=this.getKeyForAutomaticLookahead(256,r),i=Pt(e)?e:e.DEF,s=this.getLaFuncFromCache(n).call(this,i);if(s!==void 0)return i[s].ALT.call(this);this.raiseNoAltException(r,e.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){let e=this.LA(1),r=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:e,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new hb(r,e))}}subruleInternal(e,r,n){let i;try{let a=n!==void 0?n.ARGS:void 0;return this.subruleIdx=r,i=e.apply(this,a),this.cstPostNonTerminal(i,n!==void 0&&n.LABEL!==void 0?n.LABEL:e.ruleName),i}catch(a){throw this.subruleInternalError(a,n,e.ruleName)}}subruleInternalError(e,r,n){throw Nf(e)&&e.partialCstResult!==void 0&&(this.cstPostNonTerminal(e.partialCstResult,r!==void 0&&r.LABEL!==void 0?r.LABEL:n),delete e.partialCstResult),e}consumeInternal(e,r,n){let i;try{let a=this.LA(1);this.tokenMatcher(a,e)===!0?(this.consumeToken(),i=a):this.consumeInternalError(e,a,n)}catch(a){i=this.consumeInternalRecovery(e,r,a)}return this.cstPostTerminal(n!==void 0&&n.LABEL!==void 0?n.LABEL:e.name,i),i}consumeInternalError(e,r,n){let i,a=this.LA(0);throw n!==void 0&&n.ERR_MSG?i=n.ERR_MSG:i=this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:r,previous:a,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new Gp(i,r,a))}consumeInternalRecovery(e,r,n){if(this.recoveryEnabled&&n.name==="MismatchedTokenException"&&!this.isBackTracking()){let i=this.getFollowsForInRuleRecovery(e,r);try{return this.tryInRuleRecovery(e,i)}catch(a){throw a.name===FI?n:a}}else throw n}saveRecogState(){let e=this.errors,r=an(this.RULE_STACK);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:r,CST_STACK:this.CST_STACK}}reloadRecogState(e){this.errors=e.errors,this.importLexerState(e.lexerState),this.RULE_STACK=e.RULE_STACK}ruleInvocationStateUpdate(e,r,n){this.RULE_OCCURRENCE_STACK.push(n),this.RULE_STACK.push(e),this.cstInvocationStateUpdate(r)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){let e=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[e]}shortRuleNameToFullName(e){return this.shortRuleNameToFull[e]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),go)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}}});var xS,Hhe=N(()=>{"use strict";E1();qt();w1();Ys();xS=class{static{o(this,"ErrorHandler")}initErrorHandler(e){this._errors=[],this.errorMessageProvider=Bt(e,"errorMessageProvider")?e.errorMessageProvider:ps.errorMessageProvider}SAVE_ERROR(e){if(Nf(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:an(this.RULE_OCCURRENCE_STACK)},this._errors.push(e),e;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return an(this._errors)}set errors(e){this._errors=e}raiseEarlyExitException(e,r,n){let i=this.getCurrRuleFullName(),a=this.getGAstProductions()[i],l=T1(e,a,r,this.maxLookahead)[0],u=[];for(let f=1;f<=this.maxLookahead;f++)u.push(this.LA(f));let h=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:l,actual:u,previous:this.LA(0),customUserDescription:n,ruleName:i});throw this.SAVE_ERROR(new fb(h,this.LA(1),this.LA(0)))}raiseNoAltException(e,r){let n=this.getCurrRuleFullName(),i=this.getGAstProductions()[n],a=b1(e,i,this.maxLookahead),s=[];for(let h=1;h<=this.maxLookahead;h++)s.push(this.LA(h));let l=this.LA(0),u=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:a,actual:s,previous:l,customUserDescription:r,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new ub(u,this.LA(1),l))}}});var bS,Whe=N(()=>{"use strict";sb();qt();bS=class{static{o(this,"ContentAssist")}initContentAssist(){}computeContentAssist(e,r){let n=this.gastProductionsCache[e];if(gr(n))throw Error(`Rule ->${e}<- does not exist in this grammar.`);return rS([n],r,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(e){let r=ta(e.ruleStack),i=this.getGAstProductions()[r];return new ZE(i,e).startWalking()}}});function pb(t,e,r,n=!1){wS(r);let i=pa(this.recordingProdStack),a=Ai(e)?e:e.DEF,s=new t({definition:[],idx:r});return n&&(s.separator=e.SEP),Bt(e,"MAX_LOOKAHEAD")&&(s.maxLookahead=e.MAX_LOOKAHEAD),this.recordingProdStack.push(s),a.call(this),i.definition.push(s),this.recordingProdStack.pop(),kS}function jqe(t,e){wS(e);let r=pa(this.recordingProdStack),n=Pt(t)===!1,i=n===!1?t:t.DEF,a=new Sn({definition:[],idx:e,ignoreAmbiguities:n&&t.IGNORE_AMBIGUITIES===!0});Bt(t,"MAX_LOOKAHEAD")&&(a.maxLookahead=t.MAX_LOOKAHEAD);let s=F2(i,l=>Ai(l.GATE));return a.hasPredicates=s,r.definition.push(a),Ae(i,l=>{let u=new In({definition:[]});a.definition.push(u),Bt(l,"IGNORE_AMBIGUITIES")?u.ignoreAmbiguities=l.IGNORE_AMBIGUITIES:Bt(l,"GATE")&&(u.ignoreAmbiguities=!0),this.recordingProdStack.push(u),l.ALT.call(this),this.recordingProdStack.pop()}),kS}function Xhe(t){return t===0?"":`${t}`}function wS(t){if(t<0||t>Yhe){let e=new Error(`Invalid DSL Method idx value: <${t}>
|
||
Idx value must be a none negative value smaller than ${Yhe+1}`);throw e.KNOWN_RECORDER_ERROR=!0,e}}var kS,qhe,Yhe,jhe,Khe,Xqe,TS,Qhe=N(()=>{"use strict";qt();ds();tb();Fp();$p();Ys();cS();kS={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(kS);qhe=!0,Yhe=Math.pow(2,8)-1,jhe=Rf({name:"RECORDING_PHASE_TOKEN",pattern:Qn.NA});qu([jhe]);Khe=Xu(jhe,`This IToken indicates the Parser is in Recording Phase
|
||
See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,-1,-1,-1,-1,-1,-1);Object.freeze(Khe);Xqe={name:`This CSTNode indicates the Parser is in Recording Phase
|
||
See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},TS=class{static{o(this,"GastRecorder")}initGastRecorder(e){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",()=>{for(let e=0;e<10;e++){let r=e>0?e:"";this[`CONSUME${r}`]=function(n,i){return this.consumeInternalRecord(n,e,i)},this[`SUBRULE${r}`]=function(n,i){return this.subruleInternalRecord(n,e,i)},this[`OPTION${r}`]=function(n){return this.optionInternalRecord(n,e)},this[`OR${r}`]=function(n){return this.orInternalRecord(n,e)},this[`MANY${r}`]=function(n){this.manyInternalRecord(e,n)},this[`MANY_SEP${r}`]=function(n){this.manySepFirstInternalRecord(e,n)},this[`AT_LEAST_ONE${r}`]=function(n){this.atLeastOneInternalRecord(e,n)},this[`AT_LEAST_ONE_SEP${r}`]=function(n){this.atLeastOneSepFirstInternalRecord(e,n)}}this.consume=function(e,r,n){return this.consumeInternalRecord(r,e,n)},this.subrule=function(e,r,n){return this.subruleInternalRecord(r,e,n)},this.option=function(e,r){return this.optionInternalRecord(r,e)},this.or=function(e,r){return this.orInternalRecord(r,e)},this.many=function(e,r){this.manyInternalRecord(e,r)},this.atLeastOne=function(e,r){this.atLeastOneInternalRecord(e,r)},this.ACTION=this.ACTION_RECORD,this.BACKTRACK=this.BACKTRACK_RECORD,this.LA=this.LA_RECORD})}disableRecording(){this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",()=>{let e=this;for(let r=0;r<10;r++){let n=r>0?r:"";delete e[`CONSUME${n}`],delete e[`SUBRULE${n}`],delete e[`OPTION${n}`],delete e[`OR${n}`],delete e[`MANY${n}`],delete e[`MANY_SEP${n}`],delete e[`AT_LEAST_ONE${n}`],delete e[`AT_LEAST_ONE_SEP${n}`]}delete e.consume,delete e.subrule,delete e.option,delete e.or,delete e.many,delete e.atLeastOne,delete e.ACTION,delete e.BACKTRACK,delete e.LA})}ACTION_RECORD(e){}BACKTRACK_RECORD(e,r){return()=>!0}LA_RECORD(e){return S1}topLevelRuleRecord(e,r){try{let n=new hs({definition:[],name:e});return n.name=e,this.recordingProdStack.push(n),r.call(this),this.recordingProdStack.pop(),n}catch(n){if(n.KNOWN_RECORDER_ERROR!==!0)try{n.message=n.message+`
|
||
This error was thrown during the "grammar recording phase" For more info see:
|
||
https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch{throw n}throw n}}optionInternalRecord(e,r){return pb.call(this,un,e,r)}atLeastOneInternalRecord(e,r){pb.call(this,On,r,e)}atLeastOneSepFirstInternalRecord(e,r){pb.call(this,Pn,r,e,qhe)}manyInternalRecord(e,r){pb.call(this,Pr,r,e)}manySepFirstInternalRecord(e,r){pb.call(this,En,r,e,qhe)}orInternalRecord(e,r){return jqe.call(this,e,r)}subruleInternalRecord(e,r,n){if(wS(r),!e||Bt(e,"ruleName")===!1){let l=new Error(`<SUBRULE${Xhe(r)}> argument is invalid expecting a Parser method reference but got: <${JSON.stringify(e)}>
|
||
inside top level rule: <${this.recordingProdStack[0].name}>`);throw l.KNOWN_RECORDER_ERROR=!0,l}let i=pa(this.recordingProdStack),a=e.ruleName,s=new cn({idx:r,nonTerminalName:a,label:n?.LABEL,referencedRule:void 0});return i.definition.push(s),this.outputCst?Xqe:kS}consumeInternalRecord(e,r,n){if(wS(r),!CI(e)){let s=new Error(`<CONSUME${Xhe(r)}> argument is invalid expecting a TokenType reference but got: <${JSON.stringify(e)}>
|
||
inside top level rule: <${this.recordingProdStack[0].name}>`);throw s.KNOWN_RECORDER_ERROR=!0,s}let i=pa(this.recordingProdStack),a=new Er({idx:r,terminalType:e,label:n?.LABEL});return i.definition.push(a),Khe}};o(pb,"recordProd");o(jqe,"recordOrProd");o(Xhe,"getIdxSuffix");o(wS,"assertMethodIdxIsValid")});var ES,Zhe=N(()=>{"use strict";qt();h1();Ys();ES=class{static{o(this,"PerformanceTracer")}initPerformanceTracer(e){if(Bt(e,"traceInitPerf")){let r=e.traceInitPerf,n=typeof r=="number";this.traceInitMaxIdent=n?r:1/0,this.traceInitPerf=n?r>0:r}else this.traceInitMaxIdent=0,this.traceInitPerf=ps.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(e,r){if(this.traceInitPerf===!0){this.traceInitIndent++;let n=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${n}--> <${e}>`);let{time:i,value:a}=Zx(r),s=i>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&s(`${n}<-- <${e}> time: ${i}ms`),this.traceInitIndent--,a}else return r()}}});function Jhe(t,e){e.forEach(r=>{let n=r.prototype;Object.getOwnPropertyNames(n).forEach(i=>{if(i==="constructor")return;let a=Object.getOwnPropertyDescriptor(n,i);a&&(a.get||a.set)?Object.defineProperty(t.prototype,i,a):t.prototype[i]=r.prototype[i]})})}var efe=N(()=>{"use strict";o(Jhe,"applyMixins")});function SS(t=void 0){return function(){return t}}var S1,ps,C1,Ui,mb,gb,Ys=N(()=>{"use strict";qt();h1();Lue();$p();v1();Che();$I();Nhe();Ghe();zhe();Vhe();Uhe();Hhe();Whe();Qhe();Zhe();efe();cb();S1=Xu(go,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(S1);ps=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:ju,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),C1=Object.freeze({recoveryValueFunc:o(()=>{},"recoveryValueFunc"),resyncEnabled:!0});(function(t){t[t.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",t[t.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",t[t.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",t[t.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",t[t.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",t[t.LEFT_RECURSION=5]="LEFT_RECURSION",t[t.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",t[t.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",t[t.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",t[t.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",t[t.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",t[t.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",t[t.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",t[t.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION"})(Ui||(Ui={}));o(SS,"EMPTY_ALT");mb=class t{static{o(this,"Parser")}static performSelfAnalysis(e){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let e;this.selfAnalysisDone=!0;let r=this.className;this.TRACE_INIT("toFastProps",()=>{Jx(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),Ae(this.definedRulesNames,i=>{let s=this[i].originalGrammarAction,l;this.TRACE_INIT(`${i} Rule`,()=>{l=this.topLevelRuleRecord(i,s)}),this.gastProductionsCache[i]=l})}finally{this.disableRecording()}});let n=[];if(this.TRACE_INIT("Grammar Resolving",()=>{n=Ehe({rules:br(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(n)}),this.TRACE_INIT("Grammar Validations",()=>{if(fr(n)&&this.skipValidations===!1){let i=She({rules:br(this.gastProductionsCache),tokenTypes:br(this.tokensMap),errMsgProvider:zl,grammarName:r}),a=yhe({lookaheadStrategy:this.lookaheadStrategy,rules:br(this.gastProductionsCache),tokenTypes:br(this.tokensMap),grammarName:r});this.definitionErrors=this.definitionErrors.concat(i,a)}}),fr(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{let i=Due(br(this.gastProductionsCache));this.resyncFollows=i}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var i,a;(a=(i=this.lookaheadStrategy).initialize)===null||a===void 0||a.call(i,{rules:br(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(br(this.gastProductionsCache))})),!t.DEFER_DEFINITION_ERRORS_HANDLING&&!fr(this.definitionErrors))throw e=et(this.definitionErrors,i=>i.message),new Error(`Parser Definition Errors detected:
|
||
${e.join(`
|
||
-------------------------------
|
||
`)}`)})}constructor(e,r){this.definitionErrors=[],this.selfAnalysisDone=!1;let n=this;if(n.initErrorHandler(r),n.initLexerAdapter(),n.initLooksAhead(r),n.initRecognizerEngine(e,r),n.initRecoverable(r),n.initTreeBuilder(r),n.initContentAssist(),n.initGastRecorder(r),n.initPerformanceTracer(r),Bt(r,"ignoredIssues"))throw new Error(`The <ignoredIssues> IParserConfig property has been deprecated.
|
||
Please use the <IGNORE_AMBIGUITIES> flag on the relevant DSL method instead.
|
||
See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES
|
||
For further details.`);this.skipValidations=Bt(r,"skipValidations")?r.skipValidations:ps.skipValidations}};mb.DEFER_DEFINITION_ERRORS_HANDLING=!1;Jhe(mb,[oS,hS,mS,gS,vS,yS,xS,bS,TS,ES]);gb=class extends mb{static{o(this,"EmbeddedActionsParser")}constructor(e,r=ps){let n=an(r);n.outputCst=!1,super(e,n)}}});var tfe=N(()=>{"use strict";ds()});var rfe=N(()=>{"use strict"});var nfe=N(()=>{"use strict";tfe();rfe()});var ife=N(()=>{"use strict";pI()});var Mf=N(()=>{"use strict";pI();Ys();tb();$p();w1();GI();v1();E1();AI();ds();ds();nfe();ife()});function zp(t,e,r){return`${t.name}_${e}_${r}`}function lfe(t){let e={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};rYe(e,t);let r=t.length;for(let n=0;n<r;n++){let i=t[n],a=Vp(e,i,i);a!==void 0&&dYe(e,i,a)}return e}function rYe(t,e){let r=e.length;for(let n=0;n<r;n++){let i=e[n],a=ia(t,i,void 0,{type:Qqe}),s=ia(t,i,void 0,{type:D1});a.stop=s,t.ruleToStartState.set(i,a),t.ruleToStopState.set(i,s)}}function cfe(t,e,r){return r instanceof Er?jI(t,e,r.terminalType,r):r instanceof cn?fYe(t,e,r):r instanceof Sn?oYe(t,e,r):r instanceof un?lYe(t,e,r):r instanceof Pr?nYe(t,e,r):r instanceof En?iYe(t,e,r):r instanceof On?aYe(t,e,r):r instanceof Pn?sYe(t,e,r):Vp(t,e,r)}function nYe(t,e,r){let n=ia(t,e,r,{type:sfe});Of(t,n);let i=L1(t,e,n,r,Vp(t,e,r));return hfe(t,e,r,i)}function iYe(t,e,r){let n=ia(t,e,r,{type:sfe});Of(t,n);let i=L1(t,e,n,r,Vp(t,e,r)),a=jI(t,e,r.separator,r);return hfe(t,e,r,i,a)}function aYe(t,e,r){let n=ia(t,e,r,{type:afe});Of(t,n);let i=L1(t,e,n,r,Vp(t,e,r));return ufe(t,e,r,i)}function sYe(t,e,r){let n=ia(t,e,r,{type:afe});Of(t,n);let i=L1(t,e,n,r,Vp(t,e,r)),a=jI(t,e,r.separator,r);return ufe(t,e,r,i,a)}function oYe(t,e,r){let n=ia(t,e,r,{type:If});Of(t,n);let i=et(r.definition,s=>cfe(t,e,s));return L1(t,e,n,r,...i)}function lYe(t,e,r){let n=ia(t,e,r,{type:If});Of(t,n);let i=L1(t,e,n,r,Vp(t,e,r));return cYe(t,e,r,i)}function Vp(t,e,r){let n=Yr(et(r.definition,i=>cfe(t,e,i)),i=>i!==void 0);return n.length===1?n[0]:n.length===0?void 0:hYe(t,n)}function ufe(t,e,r,n,i){let a=n.left,s=n.right,l=ia(t,e,r,{type:tYe});Of(t,l);let u=ia(t,e,r,{type:ofe});return a.loopback=l,u.loopback=l,t.decisionMap[zp(e,i?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",r.idx)]=l,Li(s,l),i===void 0?(Li(l,a),Li(l,u)):(Li(l,u),Li(l,i.left),Li(i.right,a)),{left:a,right:u}}function hfe(t,e,r,n,i){let a=n.left,s=n.right,l=ia(t,e,r,{type:eYe});Of(t,l);let u=ia(t,e,r,{type:ofe}),h=ia(t,e,r,{type:Jqe});return l.loopback=h,u.loopback=h,Li(l,a),Li(l,u),Li(s,h),i!==void 0?(Li(h,u),Li(h,i.left),Li(i.right,a)):Li(h,l),t.decisionMap[zp(e,i?"RepetitionWithSeparator":"Repetition",r.idx)]=l,{left:l,right:u}}function cYe(t,e,r,n){let i=n.left,a=n.right;return Li(i,a),t.decisionMap[zp(e,"Option",r.idx)]=i,n}function Of(t,e){return t.decisionStates.push(e),e.decision=t.decisionStates.length-1,e.decision}function L1(t,e,r,n,...i){let a=ia(t,e,n,{type:Zqe,start:r});r.end=a;for(let l of i)l!==void 0?(Li(r,l.left),Li(l.right,a)):Li(r,a);let s={left:r,right:a};return t.decisionMap[zp(e,uYe(n),n.idx)]=r,s}function uYe(t){if(t instanceof Sn)return"Alternation";if(t instanceof un)return"Option";if(t instanceof Pr)return"Repetition";if(t instanceof En)return"RepetitionWithSeparator";if(t instanceof On)return"RepetitionMandatory";if(t instanceof Pn)return"RepetitionMandatoryWithSeparator";throw new Error("Invalid production type encountered")}function hYe(t,e){let r=e.length;for(let a=0;a<r-1;a++){let s=e[a],l;s.left.transitions.length===1&&(l=s.left.transitions[0]);let u=l instanceof _1,h=l,f=e[a+1].left;s.left.type===If&&s.right.type===If&&l!==void 0&&(u&&h.followState===s.right||l.target===s.right)?(u?h.followState=f:l.target=f,pYe(t,s.right)):Li(s.right,f)}let n=e[0],i=e[r-1];return{left:n.left,right:i.right}}function jI(t,e,r,n){let i=ia(t,e,n,{type:If}),a=ia(t,e,n,{type:If});return KI(i,new A1(a,r)),{left:i,right:a}}function fYe(t,e,r){let n=r.referencedRule,i=t.ruleToStartState.get(n),a=ia(t,e,r,{type:If}),s=ia(t,e,r,{type:If}),l=new _1(i,n,s);return KI(a,l),{left:a,right:s}}function dYe(t,e,r){let n=t.ruleToStartState.get(e);Li(n,r.left);let i=t.ruleToStopState.get(e);return Li(r.right,i),{left:n,right:i}}function Li(t,e){let r=new vb(e);KI(t,r)}function ia(t,e,r,n){let i=Object.assign({atn:t,production:r,epsilonOnlyTransitions:!1,rule:e,transitions:[],nextTokenWithinRule:[],stateNumber:t.states.length},n);return t.states.push(i),i}function KI(t,e){t.transitions.length===0&&(t.epsilonOnlyTransitions=e.isEpsilon()),t.transitions.push(e)}function pYe(t,e){t.states.splice(t.states.indexOf(e),1)}var If,Qqe,afe,sfe,D1,Zqe,Jqe,eYe,tYe,ofe,yb,A1,vb,_1,ffe=N(()=>{"use strict";Fm();yR();Mf();o(zp,"buildATNKey");If=1,Qqe=2,afe=4,sfe=5,D1=7,Zqe=8,Jqe=9,eYe=10,tYe=11,ofe=12,yb=class{static{o(this,"AbstractTransition")}constructor(e){this.target=e}isEpsilon(){return!1}},A1=class extends yb{static{o(this,"AtomTransition")}constructor(e,r){super(e),this.tokenType=r}},vb=class extends yb{static{o(this,"EpsilonTransition")}constructor(e){super(e)}isEpsilon(){return!0}},_1=class extends yb{static{o(this,"RuleTransition")}constructor(e,r,n){super(e),this.rule=r,this.followState=n}isEpsilon(){return!0}};o(lfe,"createATN");o(rYe,"createRuleStartAndStopATNStates");o(cfe,"atom");o(nYe,"repetition");o(iYe,"repetitionSep");o(aYe,"repetitionMandatory");o(sYe,"repetitionMandatorySep");o(oYe,"alternation");o(lYe,"option");o(Vp,"block");o(ufe,"plus");o(hfe,"star");o(cYe,"optional");o(Of,"defineDecisionState");o(L1,"makeAlts");o(uYe,"getProdType");o(hYe,"makeBlock");o(jI,"tokenRef");o(fYe,"ruleRef");o(dYe,"buildRuleHandle");o(Li,"epsilon");o(ia,"newState");o(KI,"addTransition");o(pYe,"removeState")});function QI(t,e=!0){return`${e?`a${t.alt}`:""}s${t.state.stateNumber}:${t.stack.map(r=>r.stateNumber.toString()).join("_")}`}var xb,R1,dfe=N(()=>{"use strict";Fm();xb={},R1=class{static{o(this,"ATNConfigSet")}constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(e){let r=QI(e);r in this.map||(this.map[r]=this.configs.length,this.configs.push(e))}get elements(){return this.configs}get alts(){return et(this.configs,e=>e.alt)}get key(){let e="";for(let r in this.map)e+=r+":";return e}};o(QI,"getATNConfigKey")});function mYe(t,e){let r={};return n=>{let i=n.toString(),a=r[i];return a!==void 0||(a={atnStartState:t,decision:e,states:{}},r[i]=a),a}}function mfe(t,e=!0){let r=new Set;for(let n of t){let i=new Set;for(let a of n){if(a===void 0){if(e)break;return!1}let s=[a.tokenTypeIdx].concat(a.categoryMatches);for(let l of s)if(r.has(l)){if(!i.has(l))return!1}else r.add(l),i.add(l)}}return!0}function gYe(t){let e=t.decisionStates.length,r=Array(e);for(let n=0;n<e;n++)r[n]=mYe(t.decisionStates[n],n);return r}function ZI(t,e,r,n){let i=t[e](r),a=i.start;if(a===void 0){let l=AYe(i.atnStartState);a=vfe(i,yfe(l)),i.start=a}return yYe.apply(this,[i,a,r,n])}function yYe(t,e,r,n){let i=e,a=1,s=[],l=this.LA(a++);for(;;){let u=kYe(i,l);if(u===void 0&&(u=vYe.apply(this,[t,i,l,a,r,n])),u===xb)return wYe(s,i,l);if(u.isAcceptState===!0)return u.prediction;i=u,s.push(l),l=this.LA(a++)}}function vYe(t,e,r,n,i,a){let s=EYe(e.configs,r,i);if(s.size===0)return gfe(t,e,r,xb),xb;let l=yfe(s),u=CYe(s,i);if(u!==void 0)l.isAcceptState=!0,l.prediction=u,l.configs.uniqueAlt=u;else if(RYe(s)){let h=Rl(s.alts);l.isAcceptState=!0,l.prediction=h,l.configs.uniqueAlt=h,xYe.apply(this,[t,n,s.alts,a])}return l=gfe(t,e,r,l),l}function xYe(t,e,r,n){let i=[];for(let h=1;h<=e;h++)i.push(this.LA(h).tokenType);let a=t.atnStartState,s=a.rule,l=a.production,u=bYe({topLevelRule:s,ambiguityIndices:r,production:l,prefixPath:i});n(u)}function bYe(t){let e=et(t.prefixPath,i=>Yu(i)).join(", "),r=t.production.idx===0?"":t.production.idx,n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(", ")}> in <${TYe(t.production)}${r}> inside <${t.topLevelRule.name}> Rule,
|
||
<${e}> may appears as a prefix path in all these alternatives.
|
||
`;return n=n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
|
||
For Further details.`,n}function TYe(t){if(t instanceof cn)return"SUBRULE";if(t instanceof un)return"OPTION";if(t instanceof Sn)return"OR";if(t instanceof On)return"AT_LEAST_ONE";if(t instanceof Pn)return"AT_LEAST_ONE_SEP";if(t instanceof En)return"MANY_SEP";if(t instanceof Pr)return"MANY";if(t instanceof Er)return"CONSUME";throw Error("non exhaustive match")}function wYe(t,e,r){let n=ma(e.configs.elements,a=>a.state.transitions),i=wie(n.filter(a=>a instanceof A1).map(a=>a.tokenType),a=>a.tokenTypeIdx);return{actualToken:r,possibleTokenTypes:i,tokenPath:t}}function kYe(t,e){return t.edges[e.tokenTypeIdx]}function EYe(t,e,r){let n=new R1,i=[];for(let s of t.elements){if(r.is(s.alt)===!1)continue;if(s.state.type===D1){i.push(s);continue}let l=s.state.transitions.length;for(let u=0;u<l;u++){let h=s.state.transitions[u],f=SYe(h,e);f!==void 0&&n.add({state:f,alt:s.alt,stack:s.stack})}}let a;if(i.length===0&&n.size===1&&(a=n),a===void 0){a=new R1;for(let s of n.elements)AS(s,a)}if(i.length>0&&!DYe(a))for(let s of i)a.add(s);return a}function SYe(t,e){if(t instanceof A1&&nb(e,t.tokenType))return t.target}function CYe(t,e){let r;for(let n of t.elements)if(e.is(n.alt)===!0){if(r===void 0)r=n.alt;else if(r!==n.alt)return}return r}function yfe(t){return{configs:t,edges:{},isAcceptState:!1,prediction:-1}}function gfe(t,e,r,n){return n=vfe(t,n),e.edges[r.tokenTypeIdx]=n,n}function vfe(t,e){if(e===xb)return e;let r=e.configs.key,n=t.states[r];return n!==void 0?n:(e.configs.finalize(),t.states[r]=e,e)}function AYe(t){let e=new R1,r=t.transitions.length;for(let n=0;n<r;n++){let a={state:t.transitions[n].target,alt:n,stack:[]};AS(a,e)}return e}function AS(t,e){let r=t.state;if(r.type===D1){if(t.stack.length>0){let i=[...t.stack],s={state:i.pop(),alt:t.alt,stack:i};AS(s,e)}else e.add(t);return}r.epsilonOnlyTransitions||e.add(t);let n=r.transitions.length;for(let i=0;i<n;i++){let a=r.transitions[i],s=_Ye(t,a);s!==void 0&&AS(s,e)}}function _Ye(t,e){if(e instanceof vb)return{state:e.target,alt:t.alt,stack:t.stack};if(e instanceof _1){let r=[...t.stack,e.followState];return{state:e.target,alt:t.alt,stack:r}}}function DYe(t){for(let e of t.elements)if(e.state.type===D1)return!0;return!1}function LYe(t){for(let e of t.elements)if(e.state.type!==D1)return!1;return!0}function RYe(t){if(LYe(t))return!0;let e=NYe(t.elements);return MYe(e)&&!IYe(e)}function NYe(t){let e=new Map;for(let r of t){let n=QI(r,!1),i=e.get(n);i===void 0&&(i={},e.set(n,i)),i[r.alt]=!0}return e}function MYe(t){for(let e of Array.from(t.values()))if(Object.keys(e).length>1)return!0;return!1}function IYe(t){for(let e of Array.from(t.values()))if(Object.keys(e).length===1)return!0;return!1}var CS,pfe,bb,xfe=N(()=>{"use strict";Mf();ffe();dfe();SR();xR();kie();Fm();Dw();ik();ck();DR();o(mYe,"createDFACache");CS=class{static{o(this,"PredicateSet")}constructor(){this.predicates=[]}is(e){return e>=this.predicates.length||this.predicates[e]}set(e,r){this.predicates[e]=r}toString(){let e="",r=this.predicates.length;for(let n=0;n<r;n++)e+=this.predicates[n]===!0?"1":"0";return e}},pfe=new CS,bb=class extends Ku{static{o(this,"LLStarLookaheadStrategy")}constructor(e){var r;super(),this.logging=(r=e?.logging)!==null&&r!==void 0?r:n=>console.log(n)}initialize(e){this.atn=lfe(e.rules),this.dfas=gYe(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(e){let{prodOccurrence:r,rule:n,hasPredicates:i,dynamicTokensEnabled:a}=e,s=this.dfas,l=this.logging,u=zp(n,"Alternation",r),f=this.atn.decisionMap[u].decision,d=et(iS({maxLookahead:1,occurrence:r,prodType:"Alternation",rule:n}),p=>et(p,m=>m[0]));if(mfe(d,!1)&&!a){let p=Xr(d,(m,g,y)=>(Ae(g,x=>{x&&(m[x.tokenTypeIdx]=y,Ae(x.categoryMatches,v=>{m[v]=y}))}),m),{});return i?function(m){var g;let y=this.LA(1),x=p[y.tokenTypeIdx];if(m!==void 0&&x!==void 0){let v=(g=m[x])===null||g===void 0?void 0:g.GATE;if(v!==void 0&&v.call(this)===!1)return}return x}:function(){let m=this.LA(1);return p[m.tokenTypeIdx]}}else return i?function(p){let m=new CS,g=p===void 0?0:p.length;for(let x=0;x<g;x++){let v=p?.[x].GATE;m.set(x,v===void 0||v.call(this))}let y=ZI.call(this,s,f,m,l);return typeof y=="number"?y:void 0}:function(){let p=ZI.call(this,s,f,pfe,l);return typeof p=="number"?p:void 0}}buildLookaheadForOptional(e){let{prodOccurrence:r,rule:n,prodType:i,dynamicTokensEnabled:a}=e,s=this.dfas,l=this.logging,u=zp(n,i,r),f=this.atn.decisionMap[u].decision,d=et(iS({maxLookahead:1,occurrence:r,prodType:i,rule:n}),p=>et(p,m=>m[0]));if(mfe(d)&&d[0][0]&&!a){let p=d[0],m=qr(p);if(m.length===1&&fr(m[0].categoryMatches)){let y=m[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===y}}else{let g=Xr(m,(y,x)=>(x!==void 0&&(y[x.tokenTypeIdx]=!0,Ae(x.categoryMatches,v=>{y[v]=!0})),y),{});return function(){let y=this.LA(1);return g[y.tokenTypeIdx]===!0}}}return function(){let p=ZI.call(this,s,f,pfe,l);return typeof p=="object"?!1:p===0}}};o(mfe,"isLL1Sequence");o(gYe,"initATNSimulator");o(ZI,"adaptivePredict");o(yYe,"performLookahead");o(vYe,"computeLookaheadTarget");o(xYe,"reportLookaheadAmbiguity");o(bYe,"buildAmbiguityError");o(TYe,"getProductionDslName");o(wYe,"buildAdaptivePredictError");o(kYe,"getExistingTargetState");o(EYe,"computeReachSet");o(SYe,"getReachableTarget");o(CYe,"getUniqueAlt");o(yfe,"newDFAState");o(gfe,"addDFAEdge");o(vfe,"addDFAState");o(AYe,"computeStartState");o(AS,"closure");o(_Ye,"getEpsilonTarget");o(DYe,"hasConfigInRuleStopState");o(LYe,"allConfigsInRuleStopStates");o(RYe,"hasConflictTerminatingPrediction");o(NYe,"getConflictingAltSets");o(MYe,"hasConflictingAltSet");o(IYe,"hasStateAssociatedWithOneAlt")});var bfe=N(()=>{"use strict";xfe()});var Tfe,JI,wfe,_S,Kr,Br,DS,kfe,eO,Efe,Sfe,Cfe,Afe,tO,_fe,Dfe,Lfe,LS,N1,M1,rO,I1,Rfe,nO,iO,aO,sO,oO,Nfe,Mfe,lO,Ife,cO,Tb,Ofe,Pfe,Bfe,Ffe,$fe,Gfe,zfe,Vfe,RS,Ufe,Hfe,Wfe,qfe,Yfe,Xfe,jfe,Kfe,Qfe,Zfe,Jfe,NS,ede,tde,rde,nde,ide,ade,sde,ode,lde,cde,ude,hde,fde,uO,hO,dde,pde,mde,gde,yde,vde,xde,bde,Tde,fO,$e,dO=N(()=>{"use strict";(function(t){function e(r){return typeof r=="string"}o(e,"is"),t.is=e})(Tfe||(Tfe={}));(function(t){function e(r){return typeof r=="string"}o(e,"is"),t.is=e})(JI||(JI={}));(function(t){t.MIN_VALUE=-2147483648,t.MAX_VALUE=2147483647;function e(r){return typeof r=="number"&&t.MIN_VALUE<=r&&r<=t.MAX_VALUE}o(e,"is"),t.is=e})(wfe||(wfe={}));(function(t){t.MIN_VALUE=0,t.MAX_VALUE=2147483647;function e(r){return typeof r=="number"&&t.MIN_VALUE<=r&&r<=t.MAX_VALUE}o(e,"is"),t.is=e})(_S||(_S={}));(function(t){function e(n,i){return n===Number.MAX_VALUE&&(n=_S.MAX_VALUE),i===Number.MAX_VALUE&&(i=_S.MAX_VALUE),{line:n,character:i}}o(e,"create"),t.create=e;function r(n){let i=n;return $e.objectLiteral(i)&&$e.uinteger(i.line)&&$e.uinteger(i.character)}o(r,"is"),t.is=r})(Kr||(Kr={}));(function(t){function e(n,i,a,s){if($e.uinteger(n)&&$e.uinteger(i)&&$e.uinteger(a)&&$e.uinteger(s))return{start:Kr.create(n,i),end:Kr.create(a,s)};if(Kr.is(n)&&Kr.is(i))return{start:n,end:i};throw new Error(`Range#create called with invalid arguments[${n}, ${i}, ${a}, ${s}]`)}o(e,"create"),t.create=e;function r(n){let i=n;return $e.objectLiteral(i)&&Kr.is(i.start)&&Kr.is(i.end)}o(r,"is"),t.is=r})(Br||(Br={}));(function(t){function e(n,i){return{uri:n,range:i}}o(e,"create"),t.create=e;function r(n){let i=n;return $e.objectLiteral(i)&&Br.is(i.range)&&($e.string(i.uri)||$e.undefined(i.uri))}o(r,"is"),t.is=r})(DS||(DS={}));(function(t){function e(n,i,a,s){return{targetUri:n,targetRange:i,targetSelectionRange:a,originSelectionRange:s}}o(e,"create"),t.create=e;function r(n){let i=n;return $e.objectLiteral(i)&&Br.is(i.targetRange)&&$e.string(i.targetUri)&&Br.is(i.targetSelectionRange)&&(Br.is(i.originSelectionRange)||$e.undefined(i.originSelectionRange))}o(r,"is"),t.is=r})(kfe||(kfe={}));(function(t){function e(n,i,a,s){return{red:n,green:i,blue:a,alpha:s}}o(e,"create"),t.create=e;function r(n){let i=n;return $e.objectLiteral(i)&&$e.numberRange(i.red,0,1)&&$e.numberRange(i.green,0,1)&&$e.numberRange(i.blue,0,1)&&$e.numberRange(i.alpha,0,1)}o(r,"is"),t.is=r})(eO||(eO={}));(function(t){function e(n,i){return{range:n,color:i}}o(e,"create"),t.create=e;function r(n){let i=n;return $e.objectLiteral(i)&&Br.is(i.range)&&eO.is(i.color)}o(r,"is"),t.is=r})(Efe||(Efe={}));(function(t){function e(n,i,a){return{label:n,textEdit:i,additionalTextEdits:a}}o(e,"create"),t.create=e;function r(n){let i=n;return $e.objectLiteral(i)&&$e.string(i.label)&&($e.undefined(i.textEdit)||M1.is(i))&&($e.undefined(i.additionalTextEdits)||$e.typedArray(i.additionalTextEdits,M1.is))}o(r,"is"),t.is=r})(Sfe||(Sfe={}));(function(t){t.Comment="comment",t.Imports="imports",t.Region="region"})(Cfe||(Cfe={}));(function(t){function e(n,i,a,s,l,u){let h={startLine:n,endLine:i};return $e.defined(a)&&(h.startCharacter=a),$e.defined(s)&&(h.endCharacter=s),$e.defined(l)&&(h.kind=l),$e.defined(u)&&(h.collapsedText=u),h}o(e,"create"),t.create=e;function r(n){let i=n;return $e.objectLiteral(i)&&$e.uinteger(i.startLine)&&$e.uinteger(i.startLine)&&($e.undefined(i.startCharacter)||$e.uinteger(i.startCharacter))&&($e.undefined(i.endCharacter)||$e.uinteger(i.endCharacter))&&($e.undefined(i.kind)||$e.string(i.kind))}o(r,"is"),t.is=r})(Afe||(Afe={}));(function(t){function e(n,i){return{location:n,message:i}}o(e,"create"),t.create=e;function r(n){let i=n;return $e.defined(i)&&DS.is(i.location)&&$e.string(i.message)}o(r,"is"),t.is=r})(tO||(tO={}));(function(t){t.Error=1,t.Warning=2,t.Information=3,t.Hint=4})(_fe||(_fe={}));(function(t){t.Unnecessary=1,t.Deprecated=2})(Dfe||(Dfe={}));(function(t){function e(r){let n=r;return $e.objectLiteral(n)&&$e.string(n.href)}o(e,"is"),t.is=e})(Lfe||(Lfe={}));(function(t){function e(n,i,a,s,l,u){let h={range:n,message:i};return $e.defined(a)&&(h.severity=a),$e.defined(s)&&(h.code=s),$e.defined(l)&&(h.source=l),$e.defined(u)&&(h.relatedInformation=u),h}o(e,"create"),t.create=e;function r(n){var i;let a=n;return $e.defined(a)&&Br.is(a.range)&&$e.string(a.message)&&($e.number(a.severity)||$e.undefined(a.severity))&&($e.integer(a.code)||$e.string(a.code)||$e.undefined(a.code))&&($e.undefined(a.codeDescription)||$e.string((i=a.codeDescription)===null||i===void 0?void 0:i.href))&&($e.string(a.source)||$e.undefined(a.source))&&($e.undefined(a.relatedInformation)||$e.typedArray(a.relatedInformation,tO.is))}o(r,"is"),t.is=r})(LS||(LS={}));(function(t){function e(n,i,...a){let s={title:n,command:i};return $e.defined(a)&&a.length>0&&(s.arguments=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return $e.defined(i)&&$e.string(i.title)&&$e.string(i.command)}o(r,"is"),t.is=r})(N1||(N1={}));(function(t){function e(a,s){return{range:a,newText:s}}o(e,"replace"),t.replace=e;function r(a,s){return{range:{start:a,end:a},newText:s}}o(r,"insert"),t.insert=r;function n(a){return{range:a,newText:""}}o(n,"del"),t.del=n;function i(a){let s=a;return $e.objectLiteral(s)&&$e.string(s.newText)&&Br.is(s.range)}o(i,"is"),t.is=i})(M1||(M1={}));(function(t){function e(n,i,a){let s={label:n};return i!==void 0&&(s.needsConfirmation=i),a!==void 0&&(s.description=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return $e.objectLiteral(i)&&$e.string(i.label)&&($e.boolean(i.needsConfirmation)||i.needsConfirmation===void 0)&&($e.string(i.description)||i.description===void 0)}o(r,"is"),t.is=r})(rO||(rO={}));(function(t){function e(r){let n=r;return $e.string(n)}o(e,"is"),t.is=e})(I1||(I1={}));(function(t){function e(a,s,l){return{range:a,newText:s,annotationId:l}}o(e,"replace"),t.replace=e;function r(a,s,l){return{range:{start:a,end:a},newText:s,annotationId:l}}o(r,"insert"),t.insert=r;function n(a,s){return{range:a,newText:"",annotationId:s}}o(n,"del"),t.del=n;function i(a){let s=a;return M1.is(s)&&(rO.is(s.annotationId)||I1.is(s.annotationId))}o(i,"is"),t.is=i})(Rfe||(Rfe={}));(function(t){function e(n,i){return{textDocument:n,edits:i}}o(e,"create"),t.create=e;function r(n){let i=n;return $e.defined(i)&&lO.is(i.textDocument)&&Array.isArray(i.edits)}o(r,"is"),t.is=r})(nO||(nO={}));(function(t){function e(n,i,a){let s={kind:"create",uri:n};return i!==void 0&&(i.overwrite!==void 0||i.ignoreIfExists!==void 0)&&(s.options=i),a!==void 0&&(s.annotationId=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return i&&i.kind==="create"&&$e.string(i.uri)&&(i.options===void 0||(i.options.overwrite===void 0||$e.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||$e.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||I1.is(i.annotationId))}o(r,"is"),t.is=r})(iO||(iO={}));(function(t){function e(n,i,a,s){let l={kind:"rename",oldUri:n,newUri:i};return a!==void 0&&(a.overwrite!==void 0||a.ignoreIfExists!==void 0)&&(l.options=a),s!==void 0&&(l.annotationId=s),l}o(e,"create"),t.create=e;function r(n){let i=n;return i&&i.kind==="rename"&&$e.string(i.oldUri)&&$e.string(i.newUri)&&(i.options===void 0||(i.options.overwrite===void 0||$e.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||$e.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||I1.is(i.annotationId))}o(r,"is"),t.is=r})(aO||(aO={}));(function(t){function e(n,i,a){let s={kind:"delete",uri:n};return i!==void 0&&(i.recursive!==void 0||i.ignoreIfNotExists!==void 0)&&(s.options=i),a!==void 0&&(s.annotationId=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return i&&i.kind==="delete"&&$e.string(i.uri)&&(i.options===void 0||(i.options.recursive===void 0||$e.boolean(i.options.recursive))&&(i.options.ignoreIfNotExists===void 0||$e.boolean(i.options.ignoreIfNotExists)))&&(i.annotationId===void 0||I1.is(i.annotationId))}o(r,"is"),t.is=r})(sO||(sO={}));(function(t){function e(r){let n=r;return n&&(n.changes!==void 0||n.documentChanges!==void 0)&&(n.documentChanges===void 0||n.documentChanges.every(i=>$e.string(i.kind)?iO.is(i)||aO.is(i)||sO.is(i):nO.is(i)))}o(e,"is"),t.is=e})(oO||(oO={}));(function(t){function e(n){return{uri:n}}o(e,"create"),t.create=e;function r(n){let i=n;return $e.defined(i)&&$e.string(i.uri)}o(r,"is"),t.is=r})(Nfe||(Nfe={}));(function(t){function e(n,i){return{uri:n,version:i}}o(e,"create"),t.create=e;function r(n){let i=n;return $e.defined(i)&&$e.string(i.uri)&&$e.integer(i.version)}o(r,"is"),t.is=r})(Mfe||(Mfe={}));(function(t){function e(n,i){return{uri:n,version:i}}o(e,"create"),t.create=e;function r(n){let i=n;return $e.defined(i)&&$e.string(i.uri)&&(i.version===null||$e.integer(i.version))}o(r,"is"),t.is=r})(lO||(lO={}));(function(t){function e(n,i,a,s){return{uri:n,languageId:i,version:a,text:s}}o(e,"create"),t.create=e;function r(n){let i=n;return $e.defined(i)&&$e.string(i.uri)&&$e.string(i.languageId)&&$e.integer(i.version)&&$e.string(i.text)}o(r,"is"),t.is=r})(Ife||(Ife={}));(function(t){t.PlainText="plaintext",t.Markdown="markdown";function e(r){let n=r;return n===t.PlainText||n===t.Markdown}o(e,"is"),t.is=e})(cO||(cO={}));(function(t){function e(r){let n=r;return $e.objectLiteral(r)&&cO.is(n.kind)&&$e.string(n.value)}o(e,"is"),t.is=e})(Tb||(Tb={}));(function(t){t.Text=1,t.Method=2,t.Function=3,t.Constructor=4,t.Field=5,t.Variable=6,t.Class=7,t.Interface=8,t.Module=9,t.Property=10,t.Unit=11,t.Value=12,t.Enum=13,t.Keyword=14,t.Snippet=15,t.Color=16,t.File=17,t.Reference=18,t.Folder=19,t.EnumMember=20,t.Constant=21,t.Struct=22,t.Event=23,t.Operator=24,t.TypeParameter=25})(Ofe||(Ofe={}));(function(t){t.PlainText=1,t.Snippet=2})(Pfe||(Pfe={}));(function(t){t.Deprecated=1})(Bfe||(Bfe={}));(function(t){function e(n,i,a){return{newText:n,insert:i,replace:a}}o(e,"create"),t.create=e;function r(n){let i=n;return i&&$e.string(i.newText)&&Br.is(i.insert)&&Br.is(i.replace)}o(r,"is"),t.is=r})(Ffe||(Ffe={}));(function(t){t.asIs=1,t.adjustIndentation=2})($fe||($fe={}));(function(t){function e(r){let n=r;return n&&($e.string(n.detail)||n.detail===void 0)&&($e.string(n.description)||n.description===void 0)}o(e,"is"),t.is=e})(Gfe||(Gfe={}));(function(t){function e(r){return{label:r}}o(e,"create"),t.create=e})(zfe||(zfe={}));(function(t){function e(r,n){return{items:r||[],isIncomplete:!!n}}o(e,"create"),t.create=e})(Vfe||(Vfe={}));(function(t){function e(n){return n.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}o(e,"fromPlainText"),t.fromPlainText=e;function r(n){let i=n;return $e.string(i)||$e.objectLiteral(i)&&$e.string(i.language)&&$e.string(i.value)}o(r,"is"),t.is=r})(RS||(RS={}));(function(t){function e(r){let n=r;return!!n&&$e.objectLiteral(n)&&(Tb.is(n.contents)||RS.is(n.contents)||$e.typedArray(n.contents,RS.is))&&(r.range===void 0||Br.is(r.range))}o(e,"is"),t.is=e})(Ufe||(Ufe={}));(function(t){function e(r,n){return n?{label:r,documentation:n}:{label:r}}o(e,"create"),t.create=e})(Hfe||(Hfe={}));(function(t){function e(r,n,...i){let a={label:r};return $e.defined(n)&&(a.documentation=n),$e.defined(i)?a.parameters=i:a.parameters=[],a}o(e,"create"),t.create=e})(Wfe||(Wfe={}));(function(t){t.Text=1,t.Read=2,t.Write=3})(qfe||(qfe={}));(function(t){function e(r,n){let i={range:r};return $e.number(n)&&(i.kind=n),i}o(e,"create"),t.create=e})(Yfe||(Yfe={}));(function(t){t.File=1,t.Module=2,t.Namespace=3,t.Package=4,t.Class=5,t.Method=6,t.Property=7,t.Field=8,t.Constructor=9,t.Enum=10,t.Interface=11,t.Function=12,t.Variable=13,t.Constant=14,t.String=15,t.Number=16,t.Boolean=17,t.Array=18,t.Object=19,t.Key=20,t.Null=21,t.EnumMember=22,t.Struct=23,t.Event=24,t.Operator=25,t.TypeParameter=26})(Xfe||(Xfe={}));(function(t){t.Deprecated=1})(jfe||(jfe={}));(function(t){function e(r,n,i,a,s){let l={name:r,kind:n,location:{uri:a,range:i}};return s&&(l.containerName=s),l}o(e,"create"),t.create=e})(Kfe||(Kfe={}));(function(t){function e(r,n,i,a){return a!==void 0?{name:r,kind:n,location:{uri:i,range:a}}:{name:r,kind:n,location:{uri:i}}}o(e,"create"),t.create=e})(Qfe||(Qfe={}));(function(t){function e(n,i,a,s,l,u){let h={name:n,detail:i,kind:a,range:s,selectionRange:l};return u!==void 0&&(h.children=u),h}o(e,"create"),t.create=e;function r(n){let i=n;return i&&$e.string(i.name)&&$e.number(i.kind)&&Br.is(i.range)&&Br.is(i.selectionRange)&&(i.detail===void 0||$e.string(i.detail))&&(i.deprecated===void 0||$e.boolean(i.deprecated))&&(i.children===void 0||Array.isArray(i.children))&&(i.tags===void 0||Array.isArray(i.tags))}o(r,"is"),t.is=r})(Zfe||(Zfe={}));(function(t){t.Empty="",t.QuickFix="quickfix",t.Refactor="refactor",t.RefactorExtract="refactor.extract",t.RefactorInline="refactor.inline",t.RefactorRewrite="refactor.rewrite",t.Source="source",t.SourceOrganizeImports="source.organizeImports",t.SourceFixAll="source.fixAll"})(Jfe||(Jfe={}));(function(t){t.Invoked=1,t.Automatic=2})(NS||(NS={}));(function(t){function e(n,i,a){let s={diagnostics:n};return i!=null&&(s.only=i),a!=null&&(s.triggerKind=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return $e.defined(i)&&$e.typedArray(i.diagnostics,LS.is)&&(i.only===void 0||$e.typedArray(i.only,$e.string))&&(i.triggerKind===void 0||i.triggerKind===NS.Invoked||i.triggerKind===NS.Automatic)}o(r,"is"),t.is=r})(ede||(ede={}));(function(t){function e(n,i,a){let s={title:n},l=!0;return typeof i=="string"?(l=!1,s.kind=i):N1.is(i)?s.command=i:s.edit=i,l&&a!==void 0&&(s.kind=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return i&&$e.string(i.title)&&(i.diagnostics===void 0||$e.typedArray(i.diagnostics,LS.is))&&(i.kind===void 0||$e.string(i.kind))&&(i.edit!==void 0||i.command!==void 0)&&(i.command===void 0||N1.is(i.command))&&(i.isPreferred===void 0||$e.boolean(i.isPreferred))&&(i.edit===void 0||oO.is(i.edit))}o(r,"is"),t.is=r})(tde||(tde={}));(function(t){function e(n,i){let a={range:n};return $e.defined(i)&&(a.data=i),a}o(e,"create"),t.create=e;function r(n){let i=n;return $e.defined(i)&&Br.is(i.range)&&($e.undefined(i.command)||N1.is(i.command))}o(r,"is"),t.is=r})(rde||(rde={}));(function(t){function e(n,i){return{tabSize:n,insertSpaces:i}}o(e,"create"),t.create=e;function r(n){let i=n;return $e.defined(i)&&$e.uinteger(i.tabSize)&&$e.boolean(i.insertSpaces)}o(r,"is"),t.is=r})(nde||(nde={}));(function(t){function e(n,i,a){return{range:n,target:i,data:a}}o(e,"create"),t.create=e;function r(n){let i=n;return $e.defined(i)&&Br.is(i.range)&&($e.undefined(i.target)||$e.string(i.target))}o(r,"is"),t.is=r})(ide||(ide={}));(function(t){function e(n,i){return{range:n,parent:i}}o(e,"create"),t.create=e;function r(n){let i=n;return $e.objectLiteral(i)&&Br.is(i.range)&&(i.parent===void 0||t.is(i.parent))}o(r,"is"),t.is=r})(ade||(ade={}));(function(t){t.namespace="namespace",t.type="type",t.class="class",t.enum="enum",t.interface="interface",t.struct="struct",t.typeParameter="typeParameter",t.parameter="parameter",t.variable="variable",t.property="property",t.enumMember="enumMember",t.event="event",t.function="function",t.method="method",t.macro="macro",t.keyword="keyword",t.modifier="modifier",t.comment="comment",t.string="string",t.number="number",t.regexp="regexp",t.operator="operator",t.decorator="decorator"})(sde||(sde={}));(function(t){t.declaration="declaration",t.definition="definition",t.readonly="readonly",t.static="static",t.deprecated="deprecated",t.abstract="abstract",t.async="async",t.modification="modification",t.documentation="documentation",t.defaultLibrary="defaultLibrary"})(ode||(ode={}));(function(t){function e(r){let n=r;return $e.objectLiteral(n)&&(n.resultId===void 0||typeof n.resultId=="string")&&Array.isArray(n.data)&&(n.data.length===0||typeof n.data[0]=="number")}o(e,"is"),t.is=e})(lde||(lde={}));(function(t){function e(n,i){return{range:n,text:i}}o(e,"create"),t.create=e;function r(n){let i=n;return i!=null&&Br.is(i.range)&&$e.string(i.text)}o(r,"is"),t.is=r})(cde||(cde={}));(function(t){function e(n,i,a){return{range:n,variableName:i,caseSensitiveLookup:a}}o(e,"create"),t.create=e;function r(n){let i=n;return i!=null&&Br.is(i.range)&&$e.boolean(i.caseSensitiveLookup)&&($e.string(i.variableName)||i.variableName===void 0)}o(r,"is"),t.is=r})(ude||(ude={}));(function(t){function e(n,i){return{range:n,expression:i}}o(e,"create"),t.create=e;function r(n){let i=n;return i!=null&&Br.is(i.range)&&($e.string(i.expression)||i.expression===void 0)}o(r,"is"),t.is=r})(hde||(hde={}));(function(t){function e(n,i){return{frameId:n,stoppedLocation:i}}o(e,"create"),t.create=e;function r(n){let i=n;return $e.defined(i)&&Br.is(n.stoppedLocation)}o(r,"is"),t.is=r})(fde||(fde={}));(function(t){t.Type=1,t.Parameter=2;function e(r){return r===1||r===2}o(e,"is"),t.is=e})(uO||(uO={}));(function(t){function e(n){return{value:n}}o(e,"create"),t.create=e;function r(n){let i=n;return $e.objectLiteral(i)&&(i.tooltip===void 0||$e.string(i.tooltip)||Tb.is(i.tooltip))&&(i.location===void 0||DS.is(i.location))&&(i.command===void 0||N1.is(i.command))}o(r,"is"),t.is=r})(hO||(hO={}));(function(t){function e(n,i,a){let s={position:n,label:i};return a!==void 0&&(s.kind=a),s}o(e,"create"),t.create=e;function r(n){let i=n;return $e.objectLiteral(i)&&Kr.is(i.position)&&($e.string(i.label)||$e.typedArray(i.label,hO.is))&&(i.kind===void 0||uO.is(i.kind))&&i.textEdits===void 0||$e.typedArray(i.textEdits,M1.is)&&(i.tooltip===void 0||$e.string(i.tooltip)||Tb.is(i.tooltip))&&(i.paddingLeft===void 0||$e.boolean(i.paddingLeft))&&(i.paddingRight===void 0||$e.boolean(i.paddingRight))}o(r,"is"),t.is=r})(dde||(dde={}));(function(t){function e(r){return{kind:"snippet",value:r}}o(e,"createSnippet"),t.createSnippet=e})(pde||(pde={}));(function(t){function e(r,n,i,a){return{insertText:r,filterText:n,range:i,command:a}}o(e,"create"),t.create=e})(mde||(mde={}));(function(t){function e(r){return{items:r}}o(e,"create"),t.create=e})(gde||(gde={}));(function(t){t.Invoked=0,t.Automatic=1})(yde||(yde={}));(function(t){function e(r,n){return{range:r,text:n}}o(e,"create"),t.create=e})(vde||(vde={}));(function(t){function e(r,n){return{triggerKind:r,selectedCompletionInfo:n}}o(e,"create"),t.create=e})(xde||(xde={}));(function(t){function e(r){let n=r;return $e.objectLiteral(n)&&JI.is(n.uri)&&$e.string(n.name)}o(e,"is"),t.is=e})(bde||(bde={}));(function(t){function e(a,s,l,u){return new fO(a,s,l,u)}o(e,"create"),t.create=e;function r(a){let s=a;return!!($e.defined(s)&&$e.string(s.uri)&&($e.undefined(s.languageId)||$e.string(s.languageId))&&$e.uinteger(s.lineCount)&&$e.func(s.getText)&&$e.func(s.positionAt)&&$e.func(s.offsetAt))}o(r,"is"),t.is=r;function n(a,s){let l=a.getText(),u=i(s,(f,d)=>{let p=f.range.start.line-d.range.start.line;return p===0?f.range.start.character-d.range.start.character:p}),h=l.length;for(let f=u.length-1;f>=0;f--){let d=u[f],p=a.offsetAt(d.range.start),m=a.offsetAt(d.range.end);if(m<=h)l=l.substring(0,p)+d.newText+l.substring(m,l.length);else throw new Error("Overlapping edit");h=p}return l}o(n,"applyEdits"),t.applyEdits=n;function i(a,s){if(a.length<=1)return a;let l=a.length/2|0,u=a.slice(0,l),h=a.slice(l);i(u,s),i(h,s);let f=0,d=0,p=0;for(;f<u.length&&d<h.length;)s(u[f],h[d])<=0?a[p++]=u[f++]:a[p++]=h[d++];for(;f<u.length;)a[p++]=u[f++];for(;d<h.length;)a[p++]=h[d++];return a}o(i,"mergeSort")})(Tde||(Tde={}));fO=class{static{o(this,"FullTextDocument")}constructor(e,r,n,i){this._uri=e,this._languageId=r,this._version=n,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let r=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(r,n)}return this._content}update(e,r){this._content=e.text,this._version=r,this._lineOffsets=void 0}getLineOffsets(){if(this._lineOffsets===void 0){let e=[],r=this._content,n=!0;for(let i=0;i<r.length;i++){n&&(e.push(i),n=!1);let a=r.charAt(i);n=a==="\r"||a===`
|
||
`,a==="\r"&&i+1<r.length&&r.charAt(i+1)===`
|
||
`&&i++}n&&r.length>0&&e.push(r.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let r=this.getLineOffsets(),n=0,i=r.length;if(i===0)return Kr.create(0,e);for(;n<i;){let s=Math.floor((n+i)/2);r[s]>e?i=s:n=s+1}let a=n-1;return Kr.create(a,e-r[a])}offsetAt(e){let r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;let n=r[e.line],i=e.line+1<r.length?r[e.line+1]:this._content.length;return Math.max(Math.min(n+e.character,i),n)}get lineCount(){return this.getLineOffsets().length}};(function(t){let e=Object.prototype.toString;function r(m){return typeof m<"u"}o(r,"defined"),t.defined=r;function n(m){return typeof m>"u"}o(n,"undefined"),t.undefined=n;function i(m){return m===!0||m===!1}o(i,"boolean"),t.boolean=i;function a(m){return e.call(m)==="[object String]"}o(a,"string"),t.string=a;function s(m){return e.call(m)==="[object Number]"}o(s,"number"),t.number=s;function l(m,g,y){return e.call(m)==="[object Number]"&&g<=m&&m<=y}o(l,"numberRange"),t.numberRange=l;function u(m){return e.call(m)==="[object Number]"&&-2147483648<=m&&m<=2147483647}o(u,"integer"),t.integer=u;function h(m){return e.call(m)==="[object Number]"&&0<=m&&m<=2147483647}o(h,"uinteger"),t.uinteger=h;function f(m){return e.call(m)==="[object Function]"}o(f,"func"),t.func=f;function d(m){return m!==null&&typeof m=="object"}o(d,"objectLiteral"),t.objectLiteral=d;function p(m,g){return Array.isArray(m)&&m.every(g)}o(p,"typedArray"),t.typedArray=p})($e||($e={}))});var wb,kb,Up,Hp,pO,O1,MS=N(()=>{"use strict";dO();Bl();wb=class{static{o(this,"CstNodeBuilder")}constructor(){this.nodeStack=[]}get current(){var e;return(e=this.nodeStack[this.nodeStack.length-1])!==null&&e!==void 0?e:this.rootNode}buildRootNode(e){return this.rootNode=new O1(e),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(e){let r=new Hp;return r.grammarSource=e,r.root=this.rootNode,this.current.content.push(r),this.nodeStack.push(r),r}buildLeafNode(e,r){let n=new Up(e.startOffset,e.image.length,yg(e),e.tokenType,!r);return n.grammarSource=r,n.root=this.rootNode,this.current.content.push(n),n}removeNode(e){let r=e.container;if(r){let n=r.content.indexOf(e);n>=0&&r.content.splice(n,1)}}addHiddenNodes(e){let r=[];for(let a of e){let s=new Up(a.startOffset,a.image.length,yg(a),a.tokenType,!0);s.root=this.rootNode,r.push(s)}let n=this.current,i=!1;if(n.content.length>0){n.content.push(...r);return}for(;n.container;){let a=n.container.content.indexOf(n);if(a>0){n.container.content.splice(a,0,...r),i=!0;break}n=n.container}i||this.rootNode.content.unshift(...r)}construct(e){let r=this.current;typeof e.$type=="string"&&(this.current.astNode=e),e.$cstNode=r;let n=this.nodeStack.pop();n?.content.length===0&&this.removeNode(n)}},kb=class{static{o(this,"AbstractCstNode")}get parent(){return this.container}get feature(){return this.grammarSource}get hidden(){return!1}get astNode(){var e,r;let n=typeof((e=this._astNode)===null||e===void 0?void 0:e.$type)=="string"?this._astNode:(r=this.container)===null||r===void 0?void 0:r.astNode;if(!n)throw new Error("This node has no associated AST element");return n}set astNode(e){this._astNode=e}get element(){return this.astNode}get text(){return this.root.fullText.substring(this.offset,this.end)}},Up=class extends kb{static{o(this,"LeafCstNodeImpl")}get offset(){return this._offset}get length(){return this._length}get end(){return this._offset+this._length}get hidden(){return this._hidden}get tokenType(){return this._tokenType}get range(){return this._range}constructor(e,r,n,i,a=!1){super(),this._hidden=a,this._offset=e,this._tokenType=i,this._length=r,this._range=n}},Hp=class extends kb{static{o(this,"CompositeCstNodeImpl")}constructor(){super(...arguments),this.content=new pO(this)}get children(){return this.content}get offset(){var e,r;return(r=(e=this.firstNonHiddenNode)===null||e===void 0?void 0:e.offset)!==null&&r!==void 0?r:0}get length(){return this.end-this.offset}get end(){var e,r;return(r=(e=this.lastNonHiddenNode)===null||e===void 0?void 0:e.end)!==null&&r!==void 0?r:0}get range(){let e=this.firstNonHiddenNode,r=this.lastNonHiddenNode;if(e&&r){if(this._rangeCache===void 0){let{range:n}=e,{range:i}=r;this._rangeCache={start:n.start,end:i.end.line<n.start.line?n.start:i.end}}return this._rangeCache}else return{start:Kr.create(0,0),end:Kr.create(0,0)}}get firstNonHiddenNode(){for(let e of this.content)if(!e.hidden)return e;return this.content[0]}get lastNonHiddenNode(){for(let e=this.content.length-1;e>=0;e--){let r=this.content[e];if(!r.hidden)return r}return this.content[this.content.length-1]}},pO=class t extends Array{static{o(this,"CstNodeContainer")}constructor(e){super(),this.parent=e,Object.setPrototypeOf(this,t.prototype)}push(...e){return this.addParents(e),super.push(...e)}unshift(...e){return this.addParents(e),super.unshift(...e)}splice(e,r,...n){return this.addParents(n),super.splice(e,r,...n)}addParents(e){for(let r of e)r.container=this.parent}},O1=class extends Hp{static{o(this,"RootCstNodeImpl")}get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(e){super(),this._text="",this._text=e??""}}});function mO(t){return t.$type===IS}var IS,wde,kde,Eb,Sb,OS,P1,Cb,OYe,gO,Ab=N(()=>{"use strict";Mf();bfe();Vc();Gl();us();MS();IS=Symbol("Datatype");o(mO,"isDataTypeNode");wde="\u200B",kde=o(t=>t.endsWith(wde)?t:t+wde,"withRuleSuffix"),Eb=class{static{o(this,"AbstractLangiumParser")}constructor(e){this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=e.parser.Lexer;let r=this.lexer.definition,n=e.LanguageMetaData.mode==="production";this.wrapper=new gO(r,Object.assign(Object.assign({},e.parser.ParserConfig),{skipValidations:n,errorMessageProvider:e.parser.ParserErrorMessageProvider}))}alternatives(e,r){this.wrapper.wrapOr(e,r)}optional(e,r){this.wrapper.wrapOption(e,r)}many(e,r){this.wrapper.wrapMany(e,r)}atLeastOne(e,r){this.wrapper.wrapAtLeastOne(e,r)}getRule(e){return this.allRules.get(e)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}},Sb=class extends Eb{static{o(this,"LangiumParser")}get current(){return this.stack[this.stack.length-1]}constructor(e){super(e),this.nodeBuilder=new wb,this.stack=[],this.assignmentMap=new Map,this.linker=e.references.Linker,this.converter=e.parser.ValueConverter,this.astReflection=e.shared.AstReflection}rule(e,r){let n=this.computeRuleType(e),i=this.wrapper.DEFINE_RULE(kde(e.name),this.startImplementation(n,r).bind(this));return this.allRules.set(e.name,i),e.entry&&(this.mainRule=i),i}computeRuleType(e){if(!e.fragment){if(jx(e))return IS;{let r=o1(e);return r??e.name}}}parse(e,r={}){this.nodeBuilder.buildRootNode(e);let n=this.lexerResult=this.lexer.tokenize(e);this.wrapper.input=n.tokens;let i=r.rule?this.allRules.get(r.rule):this.mainRule;if(!i)throw new Error(r.rule?`No rule found with name '${r.rule}'`:"No main rule available.");let a=i.call(this.wrapper,{});return this.nodeBuilder.addHiddenNodes(n.hidden),this.unorderedGroups.clear(),this.lexerResult=void 0,{value:a,lexerErrors:n.errors,lexerReport:n.report,parserErrors:this.wrapper.errors}}startImplementation(e,r){return n=>{let i=!this.isRecording()&&e!==void 0;if(i){let s={$type:e};this.stack.push(s),e===IS&&(s.value="")}let a;try{a=r(n)}catch{a=void 0}return a===void 0&&i&&(a=this.construct()),a}}extractHiddenTokens(e){let r=this.lexerResult.hidden;if(!r.length)return[];let n=e.startOffset;for(let i=0;i<r.length;i++)if(r[i].startOffset>n)return r.splice(0,i);return r.splice(0,r.length)}consume(e,r,n){let i=this.wrapper.wrapConsume(e,r);if(!this.isRecording()&&this.isValidToken(i)){let a=this.extractHiddenTokens(i);this.nodeBuilder.addHiddenNodes(a);let s=this.nodeBuilder.buildLeafNode(i,n),{assignment:l,isCrossRef:u}=this.getAssignment(n),h=this.current;if(l){let f=Zo(n)?i.image:this.converter.convert(i.image,s);this.assign(l.operator,l.feature,f,s,u)}else if(mO(h)){let f=i.image;Zo(n)||(f=this.converter.convert(f,s).toString()),h.value+=f}}}isValidToken(e){return!e.isInsertedInRecovery&&!isNaN(e.startOffset)&&typeof e.endOffset=="number"&&!isNaN(e.endOffset)}subrule(e,r,n,i,a){let s;!this.isRecording()&&!n&&(s=this.nodeBuilder.buildCompositeNode(i));let l=this.wrapper.wrapSubrule(e,r,a);!this.isRecording()&&s&&s.length>0&&this.performSubruleAssignment(l,i,s)}performSubruleAssignment(e,r,n){let{assignment:i,isCrossRef:a}=this.getAssignment(r);if(i)this.assign(i.operator,i.feature,e,n,a);else if(!i){let s=this.current;if(mO(s))s.value+=e.toString();else if(typeof e=="object"&&e){let u=this.assignWithoutOverride(e,s);this.stack.pop(),this.stack.push(u)}}}action(e,r){if(!this.isRecording()){let n=this.current;if(r.feature&&r.operator){n=this.construct(),this.nodeBuilder.removeNode(n.$cstNode),this.nodeBuilder.buildCompositeNode(r).content.push(n.$cstNode);let a={$type:e};this.stack.push(a),this.assign(r.operator,r.feature,n,n.$cstNode,!1)}else n.$type=e}}construct(){if(this.isRecording())return;let e=this.current;return OE(e),this.nodeBuilder.construct(e),this.stack.pop(),mO(e)?this.converter.convert(e.value,e.$cstNode):(qM(this.astReflection,e),e)}getAssignment(e){if(!this.assignmentMap.has(e)){let r=Lp(e,Fl);this.assignmentMap.set(e,{assignment:r,isCrossRef:r?Dp(r.terminal):!1})}return this.assignmentMap.get(e)}assign(e,r,n,i,a){let s=this.current,l;switch(a&&typeof n=="string"?l=this.linker.buildReference(s,r,i,n):l=n,e){case"=":{s[r]=l;break}case"?=":{s[r]=!0;break}case"+=":Array.isArray(s[r])||(s[r]=[]),s[r].push(l)}}assignWithoutOverride(e,r){for(let[i,a]of Object.entries(r)){let s=e[i];s===void 0?e[i]=a:Array.isArray(s)&&Array.isArray(a)&&(a.push(...s),e[i]=a)}let n=e.$cstNode;return n&&(n.astNode=void 0,e.$cstNode=void 0),e}get definitionErrors(){return this.wrapper.definitionErrors}},OS=class{static{o(this,"AbstractParserErrorMessageProvider")}buildMismatchTokenMessage(e){return ju.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return ju.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return ju.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return ju.buildEarlyExitMessage(e)}},P1=class extends OS{static{o(this,"LangiumParserErrorMessageProvider")}buildMismatchTokenMessage({expected:e,actual:r}){return`Expecting ${e.LABEL?"`"+e.LABEL+"`":e.name.endsWith(":KW")?`keyword '${e.name.substring(0,e.name.length-3)}'`:`token of type '${e.name}'`} but found \`${r.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:e}){return`Expecting end of file but found \`${e.image}\`.`}},Cb=class extends Eb{static{o(this,"LangiumCompletionParser")}constructor(){super(...arguments),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(e){this.resetState();let r=this.lexer.tokenize(e,{mode:"partial"});return this.tokens=r.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(e,r){let n=this.wrapper.DEFINE_RULE(kde(e.name),this.startImplementation(r).bind(this));return this.allRules.set(e.name,n),e.entry&&(this.mainRule=n),n}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(e){return r=>{let n=this.keepStackSize();try{e(r)}finally{this.resetStackSize(n)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){let e=this.elementStack.length;return this.stackSize=e,e}resetStackSize(e){this.removeUnexpectedElements(),this.stackSize=e}consume(e,r,n){this.wrapper.wrapConsume(e,r),this.isRecording()||(this.lastElementStack=[...this.elementStack,n],this.nextTokenIndex=this.currIdx+1)}subrule(e,r,n,i,a){this.before(i),this.wrapper.wrapSubrule(e,r,a),this.after(i)}before(e){this.isRecording()||this.elementStack.push(e)}after(e){if(!this.isRecording()){let r=this.elementStack.lastIndexOf(e);r>=0&&this.elementStack.splice(r)}}get currIdx(){return this.wrapper.currIdx}},OYe={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new P1},gO=class extends gb{static{o(this,"ChevrotainWrapper")}constructor(e,r){let n=r&&"maxLookahead"in r;super(e,Object.assign(Object.assign(Object.assign({},OYe),{lookaheadStrategy:n?new Ku({maxLookahead:r.maxLookahead}):new bb({logging:r.skipValidations?()=>{}:void 0})}),r))}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(e,r){return this.RULE(e,r)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(e,r){return this.consume(e,r)}wrapSubrule(e,r,n){return this.subrule(e,r,{ARGS:[n]})}wrapOr(e,r){this.or(e,r)}wrapOption(e,r){this.option(e,r)}wrapMany(e,r){this.many(e,r)}wrapAtLeastOne(e,r){this.atLeastOne(e,r)}}});function _b(t,e,r){return PYe({parser:e,tokens:r,ruleNames:new Map},t),e}function PYe(t,e){let r=Yx(e,!1),n=en(e.rules).filter(za).filter(i=>r.has(i));for(let i of n){let a=Object.assign(Object.assign({},t),{consume:1,optional:1,subrule:1,many:1,or:1});t.parser.rule(i,Wp(a,i.definition))}}function Wp(t,e,r=!1){let n;if(Zo(e))n=UYe(t,e);else if(Vu(e))n=BYe(t,e);else if(Fl(e))n=Wp(t,e.terminal);else if(Dp(e))n=Ede(t,e);else if($l(e))n=FYe(t,e);else if(NE(e))n=GYe(t,e);else if(IE(e))n=zYe(t,e);else if(Lf(e))n=VYe(t,e);else if(BM(e)){let i=t.consume++;n=o(()=>t.parser.consume(i,go,e),"method")}else throw new Ap(e.$cstNode,`Unexpected element type: ${e.$type}`);return Sde(t,r?void 0:PS(e),n,e.cardinality)}function BYe(t,e){let r=Kx(e);return()=>t.parser.action(r,e)}function FYe(t,e){let r=e.rule.ref;if(za(r)){let n=t.subrule++,i=r.fragment,a=e.arguments.length>0?$Ye(r,e.arguments):()=>({});return s=>t.parser.subrule(n,Cde(t,r),i,e,a(s))}else if(po(r)){let n=t.consume++,i=yO(t,r.name);return()=>t.parser.consume(n,i,e)}else if(r)zc(r);else throw new Ap(e.$cstNode,`Undefined rule: ${e.rule.$refText}`)}function $Ye(t,e){let r=e.map(n=>Qu(n.value));return n=>{let i={};for(let a=0;a<r.length;a++){let s=t.parameters[a],l=r[a];i[s.name]=l(n)}return i}}function Qu(t){if(LM(t)){let e=Qu(t.left),r=Qu(t.right);return n=>e(n)||r(n)}else if(DM(t)){let e=Qu(t.left),r=Qu(t.right);return n=>e(n)&&r(n)}else if(RM(t)){let e=Qu(t.value);return r=>!e(r)}else if(NM(t)){let e=t.parameter.ref.name;return r=>r!==void 0&&r[e]===!0}else if(_M(t)){let e=!!t.true;return()=>e}zc(t)}function GYe(t,e){if(e.elements.length===1)return Wp(t,e.elements[0]);{let r=[];for(let i of e.elements){let a={ALT:Wp(t,i,!0)},s=PS(i);s&&(a.GATE=Qu(s)),r.push(a)}let n=t.or++;return i=>t.parser.alternatives(n,r.map(a=>{let s={ALT:o(()=>a.ALT(i),"ALT")},l=a.GATE;return l&&(s.GATE=()=>l(i)),s}))}}function zYe(t,e){if(e.elements.length===1)return Wp(t,e.elements[0]);let r=[];for(let l of e.elements){let u={ALT:Wp(t,l,!0)},h=PS(l);h&&(u.GATE=Qu(h)),r.push(u)}let n=t.or++,i=o((l,u)=>{let h=u.getRuleStack().join("-");return`uGroup_${l}_${h}`},"idFunc"),a=o(l=>t.parser.alternatives(n,r.map((u,h)=>{let f={ALT:o(()=>!0,"ALT")},d=t.parser;f.ALT=()=>{if(u.ALT(l),!d.isRecording()){let m=i(n,d);d.unorderedGroups.get(m)||d.unorderedGroups.set(m,[]);let g=d.unorderedGroups.get(m);typeof g?.[h]>"u"&&(g[h]=!0)}};let p=u.GATE;return p?f.GATE=()=>p(l):f.GATE=()=>{let m=d.unorderedGroups.get(i(n,d));return!m?.[h]},f})),"alternatives"),s=Sde(t,PS(e),a,"*");return l=>{s(l),t.parser.isRecording()||t.parser.unorderedGroups.delete(i(n,t.parser))}}function VYe(t,e){let r=e.elements.map(n=>Wp(t,n));return n=>r.forEach(i=>i(n))}function PS(t){if(Lf(t))return t.guardCondition}function Ede(t,e,r=e.terminal){if(r)if($l(r)&&za(r.rule.ref)){let n=r.rule.ref,i=t.subrule++;return a=>t.parser.subrule(i,Cde(t,n),!1,e,a)}else if($l(r)&&po(r.rule.ref)){let n=t.consume++,i=yO(t,r.rule.ref.name);return()=>t.parser.consume(n,i,e)}else if(Zo(r)){let n=t.consume++,i=yO(t,r.value);return()=>t.parser.consume(n,i,e)}else throw new Error("Could not build cross reference parser");else{if(!e.type.ref)throw new Error("Could not resolve reference to type: "+e.type.$refText);let n=GE(e.type.ref),i=n?.terminal;if(!i)throw new Error("Could not find name assignment for type: "+Kx(e.type.ref));return Ede(t,e,i)}}function UYe(t,e){let r=t.consume++,n=t.tokens[e.value];if(!n)throw new Error("Could not find token for keyword: "+e.value);return()=>t.parser.consume(r,n,e)}function Sde(t,e,r,n){let i=e&&Qu(e);if(!n)if(i){let a=t.or++;return s=>t.parser.alternatives(a,[{ALT:o(()=>r(s),"ALT"),GATE:o(()=>i(s),"GATE")},{ALT:SS(),GATE:o(()=>!i(s),"GATE")}])}else return r;if(n==="*"){let a=t.many++;return s=>t.parser.many(a,{DEF:o(()=>r(s),"DEF"),GATE:i?()=>i(s):void 0})}else if(n==="+"){let a=t.many++;if(i){let s=t.or++;return l=>t.parser.alternatives(s,[{ALT:o(()=>t.parser.atLeastOne(a,{DEF:o(()=>r(l),"DEF")}),"ALT"),GATE:o(()=>i(l),"GATE")},{ALT:SS(),GATE:o(()=>!i(l),"GATE")}])}else return s=>t.parser.atLeastOne(a,{DEF:o(()=>r(s),"DEF")})}else if(n==="?"){let a=t.optional++;return s=>t.parser.optional(a,{DEF:o(()=>r(s),"DEF"),GATE:i?()=>i(s):void 0})}else zc(n)}function Cde(t,e){let r=HYe(t,e),n=t.parser.getRule(r);if(!n)throw new Error(`Rule "${r}" not found."`);return n}function HYe(t,e){if(za(e))return e.name;if(t.ruleNames.has(e))return t.ruleNames.get(e);{let r=e,n=r.$container,i=e.$type;for(;!za(n);)(Lf(n)||NE(n)||IE(n))&&(i=n.elements.indexOf(r).toString()+":"+i),r=n,n=n.$container;return i=n.name+":"+i,t.ruleNames.set(e,i),i}}function yO(t,e){let r=t.tokens[e];if(!r)throw new Error(`Token "${e}" not found."`);return r}var BS=N(()=>{"use strict";Mf();Vc();AE();Ws();Gl();o(_b,"createParser");o(PYe,"buildRules");o(Wp,"buildElement");o(BYe,"buildAction");o(FYe,"buildRuleCall");o($Ye,"buildRuleCallPredicate");o(Qu,"buildPredicate");o(GYe,"buildAlternatives");o(zYe,"buildUnorderedGroup");o(VYe,"buildGroup");o(PS,"getGuardCondition");o(Ede,"buildCrossReference");o(UYe,"buildKeyword");o(Sde,"wrap");o(Cde,"getRule");o(HYe,"getRuleName");o(yO,"getToken")});function vO(t){let e=t.Grammar,r=t.parser.Lexer,n=new Cb(t);return _b(e,n,r.definition),n.finalize(),n}var xO=N(()=>{"use strict";Ab();BS();o(vO,"createCompletionParser")});function bO(t){let e=Ade(t);return e.finalize(),e}function Ade(t){let e=t.Grammar,r=t.parser.Lexer,n=new Sb(t);return _b(e,n,r.definition)}var TO=N(()=>{"use strict";Ab();BS();o(bO,"createLangiumParser");o(Ade,"prepareLangiumParser")});var Zu,FS=N(()=>{"use strict";Mf();Vc();us();Gl();s1();Ws();Zu=class{static{o(this,"DefaultTokenBuilder")}constructor(){this.diagnostics=[]}buildTokens(e,r){let n=en(Yx(e,!1)),i=this.buildTerminalTokens(n),a=this.buildKeywordTokens(n,i,r);return i.forEach(s=>{let l=s.PATTERN;typeof l=="object"&&l&&"test"in l&&a1(l)?a.unshift(s):a.push(s)}),a}flushLexingReport(e){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){let e=[...this.diagnostics];return this.diagnostics=[],e}buildTerminalTokens(e){return e.filter(po).filter(r=>!r.fragment).map(r=>this.buildTerminalToken(r)).toArray()}buildTerminalToken(e){let r=l1(e),n=this.requiresCustomPattern(r)?this.regexPatternFunction(r):r,i={name:e.name,PATTERN:n};return typeof n=="function"&&(i.LINE_BREAKS=!0),e.hidden&&(i.GROUP=a1(r)?Qn.SKIPPED:"hidden"),i}requiresCustomPattern(e){return e.flags.includes("u")||e.flags.includes("s")?!0:!!(e.source.includes("?<=")||e.source.includes("?<!"))}regexPatternFunction(e){let r=new RegExp(e,e.flags+"y");return(n,i)=>(r.lastIndex=i,r.exec(n))}buildKeywordTokens(e,r,n){return e.filter(za).flatMap(i=>Uc(i).filter(Zo)).distinct(i=>i.value).toArray().sort((i,a)=>a.value.length-i.value.length).map(i=>this.buildKeywordToken(i,r,!!n?.caseInsensitive))}buildKeywordToken(e,r,n){let i=this.buildKeywordPattern(e,n),a={name:e.value,PATTERN:i,LONGER_ALT:this.findLongerAlt(e,r)};return typeof i=="function"&&(a.LINE_BREAKS=!0),a}buildKeywordPattern(e,r){return r?new RegExp(JM(e.value)):e.value}findLongerAlt(e,r){return r.reduce((n,i)=>{let a=i?.PATTERN;return a?.source&&eI("^"+a.source+"$",e.value)&&n.push(i),n},[])}}});var qp,qc,wO=N(()=>{"use strict";Vc();Gl();qp=class{static{o(this,"DefaultValueConverter")}convert(e,r){let n=r.grammarSource;if(Dp(n)&&(n=nI(n)),$l(n)){let i=n.rule.ref;if(!i)throw new Error("This cst node was not parsed by a rule.");return this.runConverter(i,e,r)}return e}runConverter(e,r,n){var i;switch(e.name.toUpperCase()){case"INT":return qc.convertInt(r);case"STRING":return qc.convertString(r);case"ID":return qc.convertID(r)}switch((i=uI(e))===null||i===void 0?void 0:i.toLowerCase()){case"number":return qc.convertNumber(r);case"boolean":return qc.convertBoolean(r);case"bigint":return qc.convertBigint(r);case"date":return qc.convertDate(r);default:return r}}};(function(t){function e(h){let f="";for(let d=1;d<h.length-1;d++){let p=h.charAt(d);if(p==="\\"){let m=h.charAt(++d);f+=r(m)}else f+=p}return f}o(e,"convertString"),t.convertString=e;function r(h){switch(h){case"b":return"\b";case"f":return"\f";case"n":return`
|
||
`;case"r":return"\r";case"t":return" ";case"v":return"\v";case"0":return"\0";default:return h}}o(r,"convertEscapeCharacter");function n(h){return h.charAt(0)==="^"?h.substring(1):h}o(n,"convertID"),t.convertID=n;function i(h){return parseInt(h)}o(i,"convertInt"),t.convertInt=i;function a(h){return BigInt(h)}o(a,"convertBigint"),t.convertBigint=a;function s(h){return new Date(h)}o(s,"convertDate"),t.convertDate=s;function l(h){return Number(h)}o(l,"convertNumber"),t.convertNumber=l;function u(h){return h.toLowerCase()==="true"}o(u,"convertBoolean"),t.convertBoolean=u})(qc||(qc={}))});var CO=Aa(SO=>{"use strict";Object.defineProperty(SO,"__esModule",{value:!0});var kO;function EO(){if(kO===void 0)throw new Error("No runtime abstraction layer installed");return kO}o(EO,"RAL");(function(t){function e(r){if(r===void 0)throw new Error("No runtime abstraction layer provided");kO=r}o(e,"install"),t.install=e})(EO||(EO={}));SO.default=EO});var Lde=Aa(Ua=>{"use strict";Object.defineProperty(Ua,"__esModule",{value:!0});Ua.stringArray=Ua.array=Ua.func=Ua.error=Ua.number=Ua.string=Ua.boolean=void 0;function WYe(t){return t===!0||t===!1}o(WYe,"boolean");Ua.boolean=WYe;function _de(t){return typeof t=="string"||t instanceof String}o(_de,"string");Ua.string=_de;function qYe(t){return typeof t=="number"||t instanceof Number}o(qYe,"number");Ua.number=qYe;function YYe(t){return t instanceof Error}o(YYe,"error");Ua.error=YYe;function XYe(t){return typeof t=="function"}o(XYe,"func");Ua.func=XYe;function Dde(t){return Array.isArray(t)}o(Dde,"array");Ua.array=Dde;function jYe(t){return Dde(t)&&t.every(e=>_de(e))}o(jYe,"stringArray");Ua.stringArray=jYe});var _O=Aa(B1=>{"use strict";Object.defineProperty(B1,"__esModule",{value:!0});B1.Emitter=B1.Event=void 0;var KYe=CO(),Rde;(function(t){let e={dispose(){}};t.None=function(){return e}})(Rde||(B1.Event=Rde={}));var AO=class{static{o(this,"CallbackList")}add(e,r=null,n){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(e),this._contexts.push(r),Array.isArray(n)&&n.push({dispose:o(()=>this.remove(e,r),"dispose")})}remove(e,r=null){if(!this._callbacks)return;let n=!1;for(let i=0,a=this._callbacks.length;i<a;i++)if(this._callbacks[i]===e)if(this._contexts[i]===r){this._callbacks.splice(i,1),this._contexts.splice(i,1);return}else n=!0;if(n)throw new Error("When adding a listener with a context, you should remove it with the same context")}invoke(...e){if(!this._callbacks)return[];let r=[],n=this._callbacks.slice(0),i=this._contexts.slice(0);for(let a=0,s=n.length;a<s;a++)try{r.push(n[a].apply(i[a],e))}catch(l){(0,KYe.default)().console.error(l)}return r}isEmpty(){return!this._callbacks||this._callbacks.length===0}dispose(){this._callbacks=void 0,this._contexts=void 0}},$S=class t{static{o(this,"Emitter")}constructor(e){this._options=e}get event(){return this._event||(this._event=(e,r,n)=>{this._callbacks||(this._callbacks=new AO),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(e,r);let i={dispose:o(()=>{this._callbacks&&(this._callbacks.remove(e,r),i.dispose=t._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))},"dispose")};return Array.isArray(n)&&n.push(i),i}),this._event}fire(e){this._callbacks&&this._callbacks.invoke.call(this._callbacks,e)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}};B1.Emitter=$S;$S._noop=function(){}});var Nde=Aa(F1=>{"use strict";Object.defineProperty(F1,"__esModule",{value:!0});F1.CancellationTokenSource=F1.CancellationToken=void 0;var QYe=CO(),ZYe=Lde(),DO=_O(),GS;(function(t){t.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:DO.Event.None}),t.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:DO.Event.None});function e(r){let n=r;return n&&(n===t.None||n===t.Cancelled||ZYe.boolean(n.isCancellationRequested)&&!!n.onCancellationRequested)}o(e,"is"),t.is=e})(GS||(F1.CancellationToken=GS={}));var JYe=Object.freeze(function(t,e){let r=(0,QYe.default)().timer.setTimeout(t.bind(e),0);return{dispose(){r.dispose()}}}),zS=class{static{o(this,"MutableToken")}constructor(){this._isCancelled=!1}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?JYe:(this._emitter||(this._emitter=new DO.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}},LO=class{static{o(this,"CancellationTokenSource")}get token(){return this._token||(this._token=new zS),this._token}cancel(){this._token?this._token.cancel():this._token=GS.Cancelled}dispose(){this._token?this._token instanceof zS&&this._token.dispose():this._token=GS.None}};F1.CancellationTokenSource=LO});var vr={};var el=N(()=>{"use strict";Sr(vr,ja(Nde(),1))});function RO(){return new Promise(t=>{typeof setImmediate>"u"?setTimeout(t,0):setImmediate(t)})}function US(){return VS=performance.now(),new vr.CancellationTokenSource}function Ide(t){Mde=t}function Xc(t){return t===Yc}async function Ti(t){if(t===vr.CancellationToken.None)return;let e=performance.now();if(e-VS>=Mde&&(VS=e,await RO(),VS=performance.now()),t.isCancellationRequested)throw Yc}var VS,Mde,Yc,ms,tl=N(()=>{"use strict";el();o(RO,"delayNextTick");VS=0,Mde=10;o(US,"startCancelableOperation");o(Ide,"setInterruptionPeriod");Yc=Symbol("OperationCancelled");o(Xc,"isOperationCancelled");o(Ti,"interruptAndCheck");ms=class{static{o(this,"Deferred")}constructor(){this.promise=new Promise((e,r)=>{this.resolve=n=>(e(n),this),this.reject=n=>(r(n),this)})}}});function NO(t,e){if(t.length<=1)return t;let r=t.length/2|0,n=t.slice(0,r),i=t.slice(r);NO(n,e),NO(i,e);let a=0,s=0,l=0;for(;a<n.length&&s<i.length;)e(n[a],i[s])<=0?t[l++]=n[a++]:t[l++]=i[s++];for(;a<n.length;)t[l++]=n[a++];for(;s<i.length;)t[l++]=i[s++];return t}function Ode(t,e,r=0){let n=e?[r]:[];for(let i=0;i<t.length;i++){let a=t.charCodeAt(i);Pde(a)&&(a===13&&i+1<t.length&&t.charCodeAt(i+1)===10&&i++,n.push(r+i+1))}return n}function Pde(t){return t===13||t===10}function Bde(t){let e=t.start,r=t.end;return e.line>r.line||e.line===r.line&&e.character>r.character?{start:r,end:e}:t}function eXe(t){let e=Bde(t.range);return e!==t.range?{newText:t.newText,range:e}:t}var HS,$1,Fde=N(()=>{"use strict";HS=class t{static{o(this,"FullTextDocument")}constructor(e,r,n,i){this._uri=e,this._languageId=r,this._version=n,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let r=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(r,n)}return this._content}update(e,r){for(let n of e)if(t.isIncremental(n)){let i=Bde(n.range),a=this.offsetAt(i.start),s=this.offsetAt(i.end);this._content=this._content.substring(0,a)+n.text+this._content.substring(s,this._content.length);let l=Math.max(i.start.line,0),u=Math.max(i.end.line,0),h=this._lineOffsets,f=Ode(n.text,!1,a);if(u-l===f.length)for(let p=0,m=f.length;p<m;p++)h[p+l+1]=f[p];else f.length<1e4?h.splice(l+1,u-l,...f):this._lineOffsets=h=h.slice(0,l+1).concat(f,h.slice(u+1));let d=n.text.length-(s-a);if(d!==0)for(let p=l+1+f.length,m=h.length;p<m;p++)h[p]=h[p]+d}else if(t.isFull(n))this._content=n.text,this._lineOffsets=void 0;else throw new Error("Unknown change event received");this._version=r}getLineOffsets(){return this._lineOffsets===void 0&&(this._lineOffsets=Ode(this._content,!0)),this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let r=this.getLineOffsets(),n=0,i=r.length;if(i===0)return{line:0,character:e};for(;n<i;){let s=Math.floor((n+i)/2);r[s]>e?i=s:n=s+1}let a=n-1;return e=this.ensureBeforeEOL(e,r[a]),{line:a,character:e-r[a]}}offsetAt(e){let r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;let n=r[e.line];if(e.character<=0)return n;let i=e.line+1<r.length?r[e.line+1]:this._content.length,a=Math.min(n+e.character,i);return this.ensureBeforeEOL(a,n)}ensureBeforeEOL(e,r){for(;e>r&&Pde(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){let r=e;return r!=null&&typeof r.text=="string"&&r.range!==void 0&&(r.rangeLength===void 0||typeof r.rangeLength=="number")}static isFull(e){let r=e;return r!=null&&typeof r.text=="string"&&r.range===void 0&&r.rangeLength===void 0}};(function(t){function e(i,a,s,l){return new HS(i,a,s,l)}o(e,"create"),t.create=e;function r(i,a,s){if(i instanceof HS)return i.update(a,s),i;throw new Error("TextDocument.update: document must be created by TextDocument.create")}o(r,"update"),t.update=r;function n(i,a){let s=i.getText(),l=NO(a.map(eXe),(f,d)=>{let p=f.range.start.line-d.range.start.line;return p===0?f.range.start.character-d.range.start.character:p}),u=0,h=[];for(let f of l){let d=i.offsetAt(f.range.start);if(d<u)throw new Error("Overlapping edit");d>u&&h.push(s.substring(u,d)),f.newText.length&&h.push(f.newText),u=i.offsetAt(f.range.end)}return h.push(s.substr(u)),h.join("")}o(n,"applyEdits"),t.applyEdits=n})($1||($1={}));o(NO,"mergeSort");o(Ode,"computeLineOffsets");o(Pde,"isEOL");o(Bde,"getWellformedRange");o(eXe,"getWellformedEdit")});var $de,gs,G1,MO=N(()=>{"use strict";(()=>{"use strict";var t={470:i=>{function a(u){if(typeof u!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(u))}o(a,"e");function s(u,h){for(var f,d="",p=0,m=-1,g=0,y=0;y<=u.length;++y){if(y<u.length)f=u.charCodeAt(y);else{if(f===47)break;f=47}if(f===47){if(!(m===y-1||g===1))if(m!==y-1&&g===2){if(d.length<2||p!==2||d.charCodeAt(d.length-1)!==46||d.charCodeAt(d.length-2)!==46){if(d.length>2){var x=d.lastIndexOf("/");if(x!==d.length-1){x===-1?(d="",p=0):p=(d=d.slice(0,x)).length-1-d.lastIndexOf("/"),m=y,g=0;continue}}else if(d.length===2||d.length===1){d="",p=0,m=y,g=0;continue}}h&&(d.length>0?d+="/..":d="..",p=2)}else d.length>0?d+="/"+u.slice(m+1,y):d=u.slice(m+1,y),p=y-m-1;m=y,g=0}else f===46&&g!==-1?++g:g=-1}return d}o(s,"r");var l={resolve:o(function(){for(var u,h="",f=!1,d=arguments.length-1;d>=-1&&!f;d--){var p;d>=0?p=arguments[d]:(u===void 0&&(u=process.cwd()),p=u),a(p),p.length!==0&&(h=p+"/"+h,f=p.charCodeAt(0)===47)}return h=s(h,!f),f?h.length>0?"/"+h:"/":h.length>0?h:"."},"resolve"),normalize:o(function(u){if(a(u),u.length===0)return".";var h=u.charCodeAt(0)===47,f=u.charCodeAt(u.length-1)===47;return(u=s(u,!h)).length!==0||h||(u="."),u.length>0&&f&&(u+="/"),h?"/"+u:u},"normalize"),isAbsolute:o(function(u){return a(u),u.length>0&&u.charCodeAt(0)===47},"isAbsolute"),join:o(function(){if(arguments.length===0)return".";for(var u,h=0;h<arguments.length;++h){var f=arguments[h];a(f),f.length>0&&(u===void 0?u=f:u+="/"+f)}return u===void 0?".":l.normalize(u)},"join"),relative:o(function(u,h){if(a(u),a(h),u===h||(u=l.resolve(u))===(h=l.resolve(h)))return"";for(var f=1;f<u.length&&u.charCodeAt(f)===47;++f);for(var d=u.length,p=d-f,m=1;m<h.length&&h.charCodeAt(m)===47;++m);for(var g=h.length-m,y=p<g?p:g,x=-1,v=0;v<=y;++v){if(v===y){if(g>y){if(h.charCodeAt(m+v)===47)return h.slice(m+v+1);if(v===0)return h.slice(m+v)}else p>y&&(u.charCodeAt(f+v)===47?x=v:v===0&&(x=0));break}var b=u.charCodeAt(f+v);if(b!==h.charCodeAt(m+v))break;b===47&&(x=v)}var T="";for(v=f+x+1;v<=d;++v)v!==d&&u.charCodeAt(v)!==47||(T.length===0?T+="..":T+="/..");return T.length>0?T+h.slice(m+x):(m+=x,h.charCodeAt(m)===47&&++m,h.slice(m))},"relative"),_makeLong:o(function(u){return u},"_makeLong"),dirname:o(function(u){if(a(u),u.length===0)return".";for(var h=u.charCodeAt(0),f=h===47,d=-1,p=!0,m=u.length-1;m>=1;--m)if((h=u.charCodeAt(m))===47){if(!p){d=m;break}}else p=!1;return d===-1?f?"/":".":f&&d===1?"//":u.slice(0,d)},"dirname"),basename:o(function(u,h){if(h!==void 0&&typeof h!="string")throw new TypeError('"ext" argument must be a string');a(u);var f,d=0,p=-1,m=!0;if(h!==void 0&&h.length>0&&h.length<=u.length){if(h.length===u.length&&h===u)return"";var g=h.length-1,y=-1;for(f=u.length-1;f>=0;--f){var x=u.charCodeAt(f);if(x===47){if(!m){d=f+1;break}}else y===-1&&(m=!1,y=f+1),g>=0&&(x===h.charCodeAt(g)?--g==-1&&(p=f):(g=-1,p=y))}return d===p?p=y:p===-1&&(p=u.length),u.slice(d,p)}for(f=u.length-1;f>=0;--f)if(u.charCodeAt(f)===47){if(!m){d=f+1;break}}else p===-1&&(m=!1,p=f+1);return p===-1?"":u.slice(d,p)},"basename"),extname:o(function(u){a(u);for(var h=-1,f=0,d=-1,p=!0,m=0,g=u.length-1;g>=0;--g){var y=u.charCodeAt(g);if(y!==47)d===-1&&(p=!1,d=g+1),y===46?h===-1?h=g:m!==1&&(m=1):h!==-1&&(m=-1);else if(!p){f=g+1;break}}return h===-1||d===-1||m===0||m===1&&h===d-1&&h===f+1?"":u.slice(h,d)},"extname"),format:o(function(u){if(u===null||typeof u!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof u);return function(h,f){var d=f.dir||f.root,p=f.base||(f.name||"")+(f.ext||"");return d?d===f.root?d+p:d+"/"+p:p}(0,u)},"format"),parse:o(function(u){a(u);var h={root:"",dir:"",base:"",ext:"",name:""};if(u.length===0)return h;var f,d=u.charCodeAt(0),p=d===47;p?(h.root="/",f=1):f=0;for(var m=-1,g=0,y=-1,x=!0,v=u.length-1,b=0;v>=f;--v)if((d=u.charCodeAt(v))!==47)y===-1&&(x=!1,y=v+1),d===46?m===-1?m=v:b!==1&&(b=1):m!==-1&&(b=-1);else if(!x){g=v+1;break}return m===-1||y===-1||b===0||b===1&&m===y-1&&m===g+1?y!==-1&&(h.base=h.name=g===0&&p?u.slice(1,y):u.slice(g,y)):(g===0&&p?(h.name=u.slice(1,m),h.base=u.slice(1,y)):(h.name=u.slice(g,m),h.base=u.slice(g,y)),h.ext=u.slice(m,y)),g>0?h.dir=u.slice(0,g-1):p&&(h.dir="/"),h},"parse"),sep:"/",delimiter:":",win32:null,posix:null};l.posix=l,i.exports=l}},e={};function r(i){var a=e[i];if(a!==void 0)return a.exports;var s=e[i]={exports:{}};return t[i](s,s.exports,r),s.exports}o(r,"r"),r.d=(i,a)=>{for(var s in a)r.o(a,s)&&!r.o(i,s)&&Object.defineProperty(i,s,{enumerable:!0,get:a[s]})},r.o=(i,a)=>Object.prototype.hasOwnProperty.call(i,a),r.r=i=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(i,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(i,"__esModule",{value:!0})};var n={};(()=>{let i;r.r(n),r.d(n,{URI:o(()=>p,"URI"),Utils:o(()=>O,"Utils")}),typeof process=="object"?i=process.platform==="win32":typeof navigator=="object"&&(i=navigator.userAgent.indexOf("Windows")>=0);let a=/^\w[\w\d+.-]*$/,s=/^\//,l=/^\/\//;function u(R,k){if(!R.scheme&&k)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${R.authority}", path: "${R.path}", query: "${R.query}", fragment: "${R.fragment}"}`);if(R.scheme&&!a.test(R.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(R.path){if(R.authority){if(!s.test(R.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(l.test(R.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}o(u,"s");let h="",f="/",d=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class p{static{o(this,"f")}static isUri(k){return k instanceof p||!!k&&typeof k.authority=="string"&&typeof k.fragment=="string"&&typeof k.path=="string"&&typeof k.query=="string"&&typeof k.scheme=="string"&&typeof k.fsPath=="string"&&typeof k.with=="function"&&typeof k.toString=="function"}scheme;authority;path;query;fragment;constructor(k,L,C,I,M,P=!1){typeof k=="object"?(this.scheme=k.scheme||h,this.authority=k.authority||h,this.path=k.path||h,this.query=k.query||h,this.fragment=k.fragment||h):(this.scheme=function(B,F){return B||F?B:"file"}(k,P),this.authority=L||h,this.path=function(B,F){switch(B){case"https":case"http":case"file":F?F[0]!==f&&(F=f+F):F=f}return F}(this.scheme,C||h),this.query=I||h,this.fragment=M||h,u(this,P))}get fsPath(){return b(this,!1)}with(k){if(!k)return this;let{scheme:L,authority:C,path:I,query:M,fragment:P}=k;return L===void 0?L=this.scheme:L===null&&(L=h),C===void 0?C=this.authority:C===null&&(C=h),I===void 0?I=this.path:I===null&&(I=h),M===void 0?M=this.query:M===null&&(M=h),P===void 0?P=this.fragment:P===null&&(P=h),L===this.scheme&&C===this.authority&&I===this.path&&M===this.query&&P===this.fragment?this:new g(L,C,I,M,P)}static parse(k,L=!1){let C=d.exec(k);return C?new g(C[2]||h,E(C[4]||h),E(C[5]||h),E(C[7]||h),E(C[9]||h),L):new g(h,h,h,h,h)}static file(k){let L=h;if(i&&(k=k.replace(/\\/g,f)),k[0]===f&&k[1]===f){let C=k.indexOf(f,2);C===-1?(L=k.substring(2),k=f):(L=k.substring(2,C),k=k.substring(C)||f)}return new g("file",L,k,h,h)}static from(k){let L=new g(k.scheme,k.authority,k.path,k.query,k.fragment);return u(L,!0),L}toString(k=!1){return T(this,k)}toJSON(){return this}static revive(k){if(k){if(k instanceof p)return k;{let L=new g(k);return L._formatted=k.external,L._fsPath=k._sep===m?k.fsPath:null,L}}return k}}let m=i?1:void 0;class g extends p{static{o(this,"l")}_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=b(this,!1)),this._fsPath}toString(k=!1){return k?T(this,!0):(this._formatted||(this._formatted=T(this,!1)),this._formatted)}toJSON(){let k={$mid:1};return this._fsPath&&(k.fsPath=this._fsPath,k._sep=m),this._formatted&&(k.external=this._formatted),this.path&&(k.path=this.path),this.scheme&&(k.scheme=this.scheme),this.authority&&(k.authority=this.authority),this.query&&(k.query=this.query),this.fragment&&(k.fragment=this.fragment),k}}let y={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function x(R,k,L){let C,I=-1;for(let M=0;M<R.length;M++){let P=R.charCodeAt(M);if(P>=97&&P<=122||P>=65&&P<=90||P>=48&&P<=57||P===45||P===46||P===95||P===126||k&&P===47||L&&P===91||L&&P===93||L&&P===58)I!==-1&&(C+=encodeURIComponent(R.substring(I,M)),I=-1),C!==void 0&&(C+=R.charAt(M));else{C===void 0&&(C=R.substr(0,M));let B=y[P];B!==void 0?(I!==-1&&(C+=encodeURIComponent(R.substring(I,M)),I=-1),C+=B):I===-1&&(I=M)}}return I!==-1&&(C+=encodeURIComponent(R.substring(I))),C!==void 0?C:R}o(x,"d");function v(R){let k;for(let L=0;L<R.length;L++){let C=R.charCodeAt(L);C===35||C===63?(k===void 0&&(k=R.substr(0,L)),k+=y[C]):k!==void 0&&(k+=R[L])}return k!==void 0?k:R}o(v,"p");function b(R,k){let L;return L=R.authority&&R.path.length>1&&R.scheme==="file"?`//${R.authority}${R.path}`:R.path.charCodeAt(0)===47&&(R.path.charCodeAt(1)>=65&&R.path.charCodeAt(1)<=90||R.path.charCodeAt(1)>=97&&R.path.charCodeAt(1)<=122)&&R.path.charCodeAt(2)===58?k?R.path.substr(1):R.path[1].toLowerCase()+R.path.substr(2):R.path,i&&(L=L.replace(/\//g,"\\")),L}o(b,"m");function T(R,k){let L=k?v:x,C="",{scheme:I,authority:M,path:P,query:B,fragment:F}=R;if(I&&(C+=I,C+=":"),(M||I==="file")&&(C+=f,C+=f),M){let G=M.indexOf("@");if(G!==-1){let $=M.substr(0,G);M=M.substr(G+1),G=$.lastIndexOf(":"),G===-1?C+=L($,!1,!1):(C+=L($.substr(0,G),!1,!1),C+=":",C+=L($.substr(G+1),!1,!0)),C+="@"}M=M.toLowerCase(),G=M.lastIndexOf(":"),G===-1?C+=L(M,!1,!0):(C+=L(M.substr(0,G),!1,!0),C+=M.substr(G))}if(P){if(P.length>=3&&P.charCodeAt(0)===47&&P.charCodeAt(2)===58){let G=P.charCodeAt(1);G>=65&&G<=90&&(P=`/${String.fromCharCode(G+32)}:${P.substr(3)}`)}else if(P.length>=2&&P.charCodeAt(1)===58){let G=P.charCodeAt(0);G>=65&&G<=90&&(P=`${String.fromCharCode(G+32)}:${P.substr(2)}`)}C+=L(P,!0,!1)}return B&&(C+="?",C+=L(B,!1,!1)),F&&(C+="#",C+=k?F:x(F,!1,!1)),C}o(T,"y");function S(R){try{return decodeURIComponent(R)}catch{return R.length>3?R.substr(0,3)+S(R.substr(3)):R}}o(S,"v");let w=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function E(R){return R.match(w)?R.replace(w,k=>S(k)):R}o(E,"C");var _=r(470);let A=_.posix||_,D="/";var O;(function(R){R.joinPath=function(k,...L){return k.with({path:A.join(k.path,...L)})},R.resolvePath=function(k,...L){let C=k.path,I=!1;C[0]!==D&&(C=D+C,I=!0);let M=A.resolve(C,...L);return I&&M[0]===D&&!k.authority&&(M=M.substring(1)),k.with({path:M})},R.dirname=function(k){if(k.path.length===0||k.path===D)return k;let L=A.dirname(k.path);return L.length===1&&L.charCodeAt(0)===46&&(L=""),k.with({path:L})},R.basename=function(k){return A.basename(k.path)},R.extname=function(k){return A.extname(k.path)}})(O||(O={}))})(),$de=n})();({URI:gs,Utils:G1}=$de)});var ys,jc=N(()=>{"use strict";MO();(function(t){t.basename=G1.basename,t.dirname=G1.dirname,t.extname=G1.extname,t.joinPath=G1.joinPath,t.resolvePath=G1.resolvePath;function e(i,a){return i?.toString()===a?.toString()}o(e,"equals"),t.equals=e;function r(i,a){let s=typeof i=="string"?i:i.path,l=typeof a=="string"?a:a.path,u=s.split("/").filter(m=>m.length>0),h=l.split("/").filter(m=>m.length>0),f=0;for(;f<u.length&&u[f]===h[f];f++);let d="../".repeat(u.length-f),p=h.slice(f).join("/");return d+p}o(r,"relative"),t.relative=r;function n(i){return gs.parse(i.toString()).toString()}o(n,"normalize"),t.normalize=n})(ys||(ys={}))});var Cn,Db,Lb,z1=N(()=>{"use strict";Fde();z1();el();Ws();jc();(function(t){t[t.Changed=0]="Changed",t[t.Parsed=1]="Parsed",t[t.IndexedContent=2]="IndexedContent",t[t.ComputedScopes=3]="ComputedScopes",t[t.Linked=4]="Linked",t[t.IndexedReferences=5]="IndexedReferences",t[t.Validated=6]="Validated"})(Cn||(Cn={}));Db=class{static{o(this,"DefaultLangiumDocumentFactory")}constructor(e){this.serviceRegistry=e.ServiceRegistry,this.textDocuments=e.workspace.TextDocuments,this.fileSystemProvider=e.workspace.FileSystemProvider}async fromUri(e,r=vr.CancellationToken.None){let n=await this.fileSystemProvider.readFile(e);return this.createAsync(e,n,r)}fromTextDocument(e,r,n){return r=r??gs.parse(e.uri),vr.CancellationToken.is(n)?this.createAsync(r,e,n):this.create(r,e,n)}fromString(e,r,n){return vr.CancellationToken.is(n)?this.createAsync(r,e,n):this.create(r,e,n)}fromModel(e,r){return this.create(r,{$model:e})}create(e,r,n){if(typeof r=="string"){let i=this.parse(e,r,n);return this.createLangiumDocument(i,e,void 0,r)}else if("$model"in r){let i={value:r.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(i,e)}else{let i=this.parse(e,r.getText(),n);return this.createLangiumDocument(i,e,r)}}async createAsync(e,r,n){if(typeof r=="string"){let i=await this.parseAsync(e,r,n);return this.createLangiumDocument(i,e,void 0,r)}else{let i=await this.parseAsync(e,r.getText(),n);return this.createLangiumDocument(i,e,r)}}createLangiumDocument(e,r,n,i){let a;if(n)a={parseResult:e,uri:r,state:Cn.Parsed,references:[],textDocument:n};else{let s=this.createTextDocumentGetter(r,i);a={parseResult:e,uri:r,state:Cn.Parsed,references:[],get textDocument(){return s()}}}return e.value.$document=a,a}async update(e,r){var n,i;let a=(n=e.parseResult.value.$cstNode)===null||n===void 0?void 0:n.root.fullText,s=(i=this.textDocuments)===null||i===void 0?void 0:i.get(e.uri.toString()),l=s?s.getText():await this.fileSystemProvider.readFile(e.uri);if(s)Object.defineProperty(e,"textDocument",{value:s});else{let u=this.createTextDocumentGetter(e.uri,l);Object.defineProperty(e,"textDocument",{get:u})}return a!==l&&(e.parseResult=await this.parseAsync(e.uri,l,r),e.parseResult.value.$document=e),e.state=Cn.Parsed,e}parse(e,r,n){return this.serviceRegistry.getServices(e).parser.LangiumParser.parse(r,n)}parseAsync(e,r,n){return this.serviceRegistry.getServices(e).parser.AsyncParser.parse(r,n)}createTextDocumentGetter(e,r){let n=this.serviceRegistry,i;return()=>i??(i=$1.create(e.toString(),n.getServices(e).LanguageMetaData.languageId,0,r??""))}},Lb=class{static{o(this,"DefaultLangiumDocuments")}constructor(e){this.documentMap=new Map,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.serviceRegistry=e.ServiceRegistry}get all(){return en(this.documentMap.values())}addDocument(e){let r=e.uri.toString();if(this.documentMap.has(r))throw new Error(`A document with the URI '${r}' is already present.`);this.documentMap.set(r,e)}getDocument(e){let r=e.toString();return this.documentMap.get(r)}async getOrCreateDocument(e,r){let n=this.getDocument(e);return n||(n=await this.langiumDocumentFactory.fromUri(e,r),this.addDocument(n),n)}createDocument(e,r,n){if(n)return this.langiumDocumentFactory.fromString(r,e,n).then(i=>(this.addDocument(i),i));{let i=this.langiumDocumentFactory.fromString(r,e);return this.addDocument(i),i}}hasDocument(e){return this.documentMap.has(e.toString())}invalidateDocument(e){let r=e.toString(),n=this.documentMap.get(r);return n&&(this.serviceRegistry.getServices(e).references.Linker.unlink(n),n.state=Cn.Changed,n.precomputedScopes=void 0,n.diagnostics=void 0),n}deleteDocument(e){let r=e.toString(),n=this.documentMap.get(r);return n&&(n.state=Cn.Changed,this.documentMap.delete(r)),n}}});var IO,Rb,OO=N(()=>{"use strict";el();Pl();us();tl();z1();IO=Symbol("ref_resolving"),Rb=class{static{o(this,"DefaultLinker")}constructor(e){this.reflection=e.shared.AstReflection,this.langiumDocuments=()=>e.shared.workspace.LangiumDocuments,this.scopeProvider=e.references.ScopeProvider,this.astNodeLocator=e.workspace.AstNodeLocator}async link(e,r=vr.CancellationToken.None){for(let n of Jo(e.parseResult.value))await Ti(r),n1(n).forEach(i=>this.doLink(i,e))}doLink(e,r){var n;let i=e.reference;if(i._ref===void 0){i._ref=IO;try{let a=this.getCandidate(e);if(Ep(a))i._ref=a;else if(i._nodeDescription=a,this.langiumDocuments().hasDocument(a.documentUri)){let s=this.loadAstNode(a);i._ref=s??this.createLinkingError(e,a)}else i._ref=void 0}catch(a){console.error(`An error occurred while resolving reference to '${i.$refText}':`,a);let s=(n=a.message)!==null&&n!==void 0?n:String(a);i._ref=Object.assign(Object.assign({},e),{message:`An error occurred while resolving reference to '${i.$refText}': ${s}`})}r.references.push(i)}}unlink(e){for(let r of e.references)delete r._ref,delete r._nodeDescription;e.references=[]}getCandidate(e){let n=this.scopeProvider.getScope(e).getElement(e.reference.$refText);return n??this.createLinkingError(e)}buildReference(e,r,n,i){let a=this,s={$refNode:n,$refText:i,get ref(){var l;if(ci(this._ref))return this._ref;if(TM(this._nodeDescription)){let u=a.loadAstNode(this._nodeDescription);this._ref=u??a.createLinkingError({reference:s,container:e,property:r},this._nodeDescription)}else if(this._ref===void 0){this._ref=IO;let u=zx(e).$document,h=a.getLinkedNode({reference:s,container:e,property:r});if(h.error&&u&&u.state<Cn.ComputedScopes)return this._ref=void 0;this._ref=(l=h.node)!==null&&l!==void 0?l:h.error,this._nodeDescription=h.descr,u?.references.push(this)}else if(this._ref===IO)throw new Error(`Cyclic reference resolution detected: ${a.astNodeLocator.getAstNodePath(e)}/${r} (symbol '${i}')`);return ci(this._ref)?this._ref:void 0},get $nodeDescription(){return this._nodeDescription},get error(){return Ep(this._ref)?this._ref:void 0}};return s}getLinkedNode(e){var r;try{let n=this.getCandidate(e);if(Ep(n))return{error:n};let i=this.loadAstNode(n);return i?{node:i,descr:n}:{descr:n,error:this.createLinkingError(e,n)}}catch(n){console.error(`An error occurred while resolving reference to '${e.reference.$refText}':`,n);let i=(r=n.message)!==null&&r!==void 0?r:String(n);return{error:Object.assign(Object.assign({},e),{message:`An error occurred while resolving reference to '${e.reference.$refText}': ${i}`})}}}loadAstNode(e){if(e.node)return e.node;let r=this.langiumDocuments().getDocument(e.documentUri);if(r)return this.astNodeLocator.getAstNode(r.parseResult.value,e.path)}createLinkingError(e,r){let n=zx(e.container).$document;n&&n.state<Cn.ComputedScopes&&console.warn(`Attempted reference resolution before document reached ComputedScopes state (${n.uri}).`);let i=this.reflection.getReferenceType(e);return Object.assign(Object.assign({},e),{message:`Could not resolve reference to ${i} named '${e.reference.$refText}'.`,targetDescription:r})}}});function Gde(t){return typeof t.name=="string"}var Nb,PO=N(()=>{"use strict";Gl();o(Gde,"isNamed");Nb=class{static{o(this,"DefaultNameProvider")}getName(e){if(Gde(e))return e.name}getNameNode(e){return Xx(e.$cstNode,"name")}}});var Mb,BO=N(()=>{"use strict";Gl();Pl();us();Bl();Ws();jc();Mb=class{static{o(this,"DefaultReferences")}constructor(e){this.nameProvider=e.references.NameProvider,this.index=e.shared.workspace.IndexManager,this.nodeLocator=e.workspace.AstNodeLocator}findDeclaration(e){if(e){let r=cI(e),n=e.astNode;if(r&&n){let i=n[r.feature];if(ba(i))return i.ref;if(Array.isArray(i)){for(let a of i)if(ba(a)&&a.$refNode&&a.$refNode.offset<=e.offset&&a.$refNode.end>=e.end)return a.ref}}if(n){let i=this.nameProvider.getNameNode(n);if(i&&(i===e||kM(e,i)))return n}}}findDeclarationNode(e){let r=this.findDeclaration(e);if(r?.$cstNode){let n=this.nameProvider.getNameNode(r);return n??r.$cstNode}}findReferences(e,r){let n=[];if(r.includeDeclaration){let a=this.getReferenceToSelf(e);a&&n.push(a)}let i=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e));return r.documentUri&&(i=i.filter(a=>ys.equals(a.sourceUri,r.documentUri))),n.push(...i),en(n)}getReferenceToSelf(e){let r=this.nameProvider.getNameNode(e);if(r){let n=Va(e),i=this.nodeLocator.getAstNodePath(e);return{sourceUri:n.uri,sourcePath:i,targetUri:n.uri,targetPath:i,segment:Cp(r),local:!0}}}}});var Vl,Yp,V1=N(()=>{"use strict";Ws();Vl=class{static{o(this,"MultiMap")}constructor(e){if(this.map=new Map,e)for(let[r,n]of e)this.add(r,n)}get size(){return gg.sum(en(this.map.values()).map(e=>e.length))}clear(){this.map.clear()}delete(e,r){if(r===void 0)return this.map.delete(e);{let n=this.map.get(e);if(n){let i=n.indexOf(r);if(i>=0)return n.length===1?this.map.delete(e):n.splice(i,1),!0}return!1}}get(e){var r;return(r=this.map.get(e))!==null&&r!==void 0?r:[]}has(e,r){if(r===void 0)return this.map.has(e);{let n=this.map.get(e);return n?n.indexOf(r)>=0:!1}}add(e,r){return this.map.has(e)?this.map.get(e).push(r):this.map.set(e,[r]),this}addAll(e,r){return this.map.has(e)?this.map.get(e).push(...r):this.map.set(e,Array.from(r)),this}forEach(e){this.map.forEach((r,n)=>r.forEach(i=>e(i,n,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return en(this.map.entries()).flatMap(([e,r])=>r.map(n=>[e,n]))}keys(){return en(this.map.keys())}values(){return en(this.map.values()).flat()}entriesGroupedByKey(){return en(this.map.entries())}},Yp=class{static{o(this,"BiMap")}get size(){return this.map.size}constructor(e){if(this.map=new Map,this.inverse=new Map,e)for(let[r,n]of e)this.set(r,n)}clear(){this.map.clear(),this.inverse.clear()}set(e,r){return this.map.set(e,r),this.inverse.set(r,e),this}get(e){return this.map.get(e)}getKey(e){return this.inverse.get(e)}delete(e){let r=this.map.get(e);return r!==void 0?(this.map.delete(e),this.inverse.delete(r),!0):!1}}});var Ib,FO=N(()=>{"use strict";el();us();V1();tl();Ib=class{static{o(this,"DefaultScopeComputation")}constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}async computeExports(e,r=vr.CancellationToken.None){return this.computeExportsForNode(e.parseResult.value,e,void 0,r)}async computeExportsForNode(e,r,n=Vx,i=vr.CancellationToken.None){let a=[];this.exportNode(e,a,r);for(let s of n(e))await Ti(i),this.exportNode(s,a,r);return a}exportNode(e,r,n){let i=this.nameProvider.getName(e);i&&r.push(this.descriptions.createDescription(e,i,n))}async computeLocalScopes(e,r=vr.CancellationToken.None){let n=e.parseResult.value,i=new Vl;for(let a of Uc(n))await Ti(r),this.processNode(a,e,i);return i}processNode(e,r,n){let i=e.$container;if(i){let a=this.nameProvider.getName(e);a&&n.add(i,this.descriptions.createDescription(e,a,r))}}}});var U1,Ob,tXe,$O=N(()=>{"use strict";Ws();U1=class{static{o(this,"StreamScope")}constructor(e,r,n){var i;this.elements=e,this.outerScope=r,this.caseInsensitive=(i=n?.caseInsensitive)!==null&&i!==void 0?i:!1}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(e){let r=this.caseInsensitive?this.elements.find(n=>n.name.toLowerCase()===e.toLowerCase()):this.elements.find(n=>n.name===e);if(r)return r;if(this.outerScope)return this.outerScope.getElement(e)}},Ob=class{static{o(this,"MapScope")}constructor(e,r,n){var i;this.elements=new Map,this.caseInsensitive=(i=n?.caseInsensitive)!==null&&i!==void 0?i:!1;for(let a of e){let s=this.caseInsensitive?a.name.toLowerCase():a.name;this.elements.set(s,a)}this.outerScope=r}getElement(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r);if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getAllElements(){let e=en(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},tXe={getElement(){},getAllElements(){return Rx}}});var H1,Pb,Xp,WS,W1,qS=N(()=>{"use strict";H1=class{static{o(this,"DisposableCache")}constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(e){this.toDispose.push(e)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach(e=>e.dispose())}throwIfDisposed(){if(this.isDisposed)throw new Error("This cache has already been disposed")}},Pb=class extends H1{static{o(this,"SimpleCache")}constructor(){super(...arguments),this.cache=new Map}has(e){return this.throwIfDisposed(),this.cache.has(e)}set(e,r){this.throwIfDisposed(),this.cache.set(e,r)}get(e,r){if(this.throwIfDisposed(),this.cache.has(e))return this.cache.get(e);if(r){let n=r();return this.cache.set(e,n),n}else return}delete(e){return this.throwIfDisposed(),this.cache.delete(e)}clear(){this.throwIfDisposed(),this.cache.clear()}},Xp=class extends H1{static{o(this,"ContextCache")}constructor(e){super(),this.cache=new Map,this.converter=e??(r=>r)}has(e,r){return this.throwIfDisposed(),this.cacheForContext(e).has(r)}set(e,r,n){this.throwIfDisposed(),this.cacheForContext(e).set(r,n)}get(e,r,n){this.throwIfDisposed();let i=this.cacheForContext(e);if(i.has(r))return i.get(r);if(n){let a=n();return i.set(r,a),a}else return}delete(e,r){return this.throwIfDisposed(),this.cacheForContext(e).delete(r)}clear(e){if(this.throwIfDisposed(),e){let r=this.converter(e);this.cache.delete(r)}else this.cache.clear()}cacheForContext(e){let r=this.converter(e),n=this.cache.get(r);return n||(n=new Map,this.cache.set(r,n)),n}},WS=class extends Xp{static{o(this,"DocumentCache")}constructor(e,r){super(n=>n.toString()),r?(this.toDispose.push(e.workspace.DocumentBuilder.onDocumentPhase(r,n=>{this.clear(n.uri.toString())})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{for(let a of i)this.clear(a)}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{let a=n.concat(i);for(let s of a)this.clear(s)}))}},W1=class extends Pb{static{o(this,"WorkspaceCache")}constructor(e,r){super(),r?(this.toDispose.push(e.workspace.DocumentBuilder.onBuildPhase(r,()=>{this.clear()})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{i.length>0&&this.clear()}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}}});var Bb,GO=N(()=>{"use strict";$O();us();Ws();qS();Bb=class{static{o(this,"DefaultScopeProvider")}constructor(e){this.reflection=e.shared.AstReflection,this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider,this.indexManager=e.shared.workspace.IndexManager,this.globalScopeCache=new W1(e.shared)}getScope(e){let r=[],n=this.reflection.getReferenceType(e),i=Va(e.container).precomputedScopes;if(i){let s=e.container;do{let l=i.get(s);l.length>0&&r.push(en(l).filter(u=>this.reflection.isSubtype(u.type,n))),s=s.$container}while(s)}let a=this.getGlobalScope(n,e);for(let s=r.length-1;s>=0;s--)a=this.createScope(r[s],a);return a}createScope(e,r,n){return new U1(en(e),r,n)}createScopeForNodes(e,r,n){let i=en(e).map(a=>{let s=this.nameProvider.getName(a);if(s)return this.descriptions.createDescription(a,s)}).nonNullable();return new U1(i,r,n)}getGlobalScope(e,r){return this.globalScopeCache.get(e,()=>new Ob(this.indexManager.allElements(e)))}}});function zO(t){return typeof t.$comment=="string"}function zde(t){return typeof t=="object"&&!!t&&("$ref"in t||"$error"in t)}var Fb,YS=N(()=>{"use strict";MO();Pl();us();Gl();o(zO,"isAstNodeWithComment");o(zde,"isIntermediateReference");Fb=class{static{o(this,"DefaultJsonSerializer")}constructor(e){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=e.shared.workspace.LangiumDocuments,this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider,this.commentProvider=e.documentation.CommentProvider}serialize(e,r){let n=r??{},i=r?.replacer,a=o((l,u)=>this.replacer(l,u,n),"defaultReplacer"),s=i?(l,u)=>i(l,u,a):a;try{return this.currentDocument=Va(e),JSON.stringify(e,s,r?.space)}finally{this.currentDocument=void 0}}deserialize(e,r){let n=r??{},i=JSON.parse(e);return this.linkNode(i,i,n),i}replacer(e,r,{refText:n,sourceText:i,textRegions:a,comments:s,uriConverter:l}){var u,h,f,d;if(!this.ignoreProperties.has(e))if(ba(r)){let p=r.ref,m=n?r.$refText:void 0;if(p){let g=Va(p),y="";this.currentDocument&&this.currentDocument!==g&&(l?y=l(g.uri,r):y=g.uri.toString());let x=this.astNodeLocator.getAstNodePath(p);return{$ref:`${y}#${x}`,$refText:m}}else return{$error:(h=(u=r.error)===null||u===void 0?void 0:u.message)!==null&&h!==void 0?h:"Could not resolve reference",$refText:m}}else if(ci(r)){let p;if(a&&(p=this.addAstNodeRegionWithAssignmentsTo(Object.assign({},r)),(!e||r.$document)&&p?.$textRegion&&(p.$textRegion.documentURI=(f=this.currentDocument)===null||f===void 0?void 0:f.uri.toString())),i&&!e&&(p??(p=Object.assign({},r)),p.$sourceText=(d=r.$cstNode)===null||d===void 0?void 0:d.text),s){p??(p=Object.assign({},r));let m=this.commentProvider.getComment(r);m&&(p.$comment=m.replace(/\r/g,""))}return p??r}else return r}addAstNodeRegionWithAssignmentsTo(e){let r=o(n=>({offset:n.offset,end:n.end,length:n.length,range:n.range}),"createDocumentSegment");if(e.$cstNode){let n=e.$textRegion=r(e.$cstNode),i=n.assignments={};return Object.keys(e).filter(a=>!a.startsWith("$")).forEach(a=>{let s=aI(e.$cstNode,a).map(r);s.length!==0&&(i[a]=s)}),e}}linkNode(e,r,n,i,a,s){for(let[u,h]of Object.entries(e))if(Array.isArray(h))for(let f=0;f<h.length;f++){let d=h[f];zde(d)?h[f]=this.reviveReference(e,u,r,d,n):ci(d)&&this.linkNode(d,r,n,e,u,f)}else zde(h)?e[u]=this.reviveReference(e,u,r,h,n):ci(h)&&this.linkNode(h,r,n,e,u);let l=e;l.$container=i,l.$containerProperty=a,l.$containerIndex=s}reviveReference(e,r,n,i,a){let s=i.$refText,l=i.$error;if(i.$ref){let u=this.getRefNode(n,i.$ref,a.uriConverter);if(ci(u))return s||(s=this.nameProvider.getName(u)),{$refText:s??"",ref:u};l=u}if(l){let u={$refText:s??""};return u.error={container:e,property:r,message:l,reference:u},u}else return}getRefNode(e,r,n){try{let i=r.indexOf("#");if(i===0){let u=this.astNodeLocator.getAstNode(e,r.substring(1));return u||"Could not resolve path: "+r}if(i<0){let u=n?n(r):gs.parse(r),h=this.langiumDocuments.getDocument(u);return h?h.parseResult.value:"Could not find document for URI: "+r}let a=n?n(r.substring(0,i)):gs.parse(r.substring(0,i)),s=this.langiumDocuments.getDocument(a);if(!s)return"Could not find document for URI: "+r;if(i===r.length-1)return s.parseResult.value;let l=this.astNodeLocator.getAstNode(s.parseResult.value,r.substring(i+1));return l||"Could not resolve URI: "+r}catch(i){return String(i)}}}});var $b,VO=N(()=>{"use strict";jc();$b=class{static{o(this,"DefaultServiceRegistry")}get map(){return this.fileExtensionMap}constructor(e){this.languageIdMap=new Map,this.fileExtensionMap=new Map,this.textDocuments=e?.workspace.TextDocuments}register(e){let r=e.LanguageMetaData;for(let n of r.fileExtensions)this.fileExtensionMap.has(n)&&console.warn(`The file extension ${n} is used by multiple languages. It is now assigned to '${r.languageId}'.`),this.fileExtensionMap.set(n,e);this.languageIdMap.set(r.languageId,e),this.languageIdMap.size===1?this.singleton=e:this.singleton=void 0}getServices(e){var r,n;if(this.singleton!==void 0)return this.singleton;if(this.languageIdMap.size===0)throw new Error("The service registry is empty. Use `register` to register the services of a language.");let i=(n=(r=this.textDocuments)===null||r===void 0?void 0:r.get(e))===null||n===void 0?void 0:n.languageId;if(i!==void 0){let l=this.languageIdMap.get(i);if(l)return l}let a=ys.extname(e),s=this.fileExtensionMap.get(a);if(!s)throw i?new Error(`The service registry contains no services for the extension '${a}' for language '${i}'.`):new Error(`The service registry contains no services for the extension '${a}'.`);return s}hasServices(e){try{return this.getServices(e),!0}catch{return!1}}get all(){return Array.from(this.languageIdMap.values())}}});function jp(t){return{code:t}}var q1,Gb,zb=N(()=>{"use strict";yo();V1();tl();Ws();o(jp,"diagnosticData");(function(t){t.all=["fast","slow","built-in"]})(q1||(q1={}));Gb=class{static{o(this,"ValidationRegistry")}constructor(e){this.entries=new Vl,this.entriesBefore=[],this.entriesAfter=[],this.reflection=e.shared.AstReflection}register(e,r=this,n="fast"){if(n==="built-in")throw new Error("The 'built-in' category is reserved for lexer, parser, and linker errors.");for(let[i,a]of Object.entries(e)){let s=a;if(Array.isArray(s))for(let l of s){let u={check:this.wrapValidationException(l,r),category:n};this.addEntry(i,u)}else if(typeof s=="function"){let l={check:this.wrapValidationException(s,r),category:n};this.addEntry(i,l)}else zc(s)}}wrapValidationException(e,r){return async(n,i,a)=>{await this.handleException(()=>e.call(r,n,i,a),"An error occurred during validation",i,n)}}async handleException(e,r,n,i){try{await e()}catch(a){if(Xc(a))throw a;console.error(`${r}:`,a),a instanceof Error&&a.stack&&console.error(a.stack);let s=a instanceof Error?a.message:String(a);n("error",`${r}: ${s}`,{node:i})}}addEntry(e,r){if(e==="AstNode"){this.entries.add("AstNode",r);return}for(let n of this.reflection.getAllSubTypes(e))this.entries.add(n,r)}getChecks(e,r){let n=en(this.entries.get(e)).concat(this.entries.get("AstNode"));return r&&(n=n.filter(i=>r.includes(i.category))),n.map(i=>i.check)}registerBeforeDocument(e,r=this){this.entriesBefore.push(this.wrapPreparationException(e,"An error occurred during set-up of the validation",r))}registerAfterDocument(e,r=this){this.entriesAfter.push(this.wrapPreparationException(e,"An error occurred during tear-down of the validation",r))}wrapPreparationException(e,r,n){return async(i,a,s,l)=>{await this.handleException(()=>e.call(n,i,a,s,l),r,a,i)}}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}}});function Vde(t){if(t.range)return t.range;let e;return typeof t.property=="string"?e=Xx(t.node.$cstNode,t.property,t.index):typeof t.keyword=="string"&&(e=oI(t.node.$cstNode,t.keyword,t.index)),e??(e=t.node.$cstNode),e?e.range:{start:{line:0,character:0},end:{line:0,character:0}}}function XS(t){switch(t){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw new Error("Invalid diagnostic severity: "+t)}}function Ude(t){switch(t){case"error":return jp(rl.LexingError);case"warning":return jp(rl.LexingWarning);case"info":return jp(rl.LexingInfo);case"hint":return jp(rl.LexingHint);default:throw new Error("Invalid diagnostic severity: "+t)}}var Vb,rl,UO=N(()=>{"use strict";el();Gl();us();Bl();tl();zb();Vb=class{static{o(this,"DefaultDocumentValidator")}constructor(e){this.validationRegistry=e.validation.ValidationRegistry,this.metadata=e.LanguageMetaData}async validateDocument(e,r={},n=vr.CancellationToken.None){let i=e.parseResult,a=[];if(await Ti(n),(!r.categories||r.categories.includes("built-in"))&&(this.processLexingErrors(i,a,r),r.stopAfterLexingErrors&&a.some(s=>{var l;return((l=s.data)===null||l===void 0?void 0:l.code)===rl.LexingError})||(this.processParsingErrors(i,a,r),r.stopAfterParsingErrors&&a.some(s=>{var l;return((l=s.data)===null||l===void 0?void 0:l.code)===rl.ParsingError}))||(this.processLinkingErrors(e,a,r),r.stopAfterLinkingErrors&&a.some(s=>{var l;return((l=s.data)===null||l===void 0?void 0:l.code)===rl.LinkingError}))))return a;try{a.push(...await this.validateAst(i.value,r,n))}catch(s){if(Xc(s))throw s;console.error("An error occurred during validation:",s)}return await Ti(n),a}processLexingErrors(e,r,n){var i,a,s;let l=[...e.lexerErrors,...(a=(i=e.lexerReport)===null||i===void 0?void 0:i.diagnostics)!==null&&a!==void 0?a:[]];for(let u of l){let h=(s=u.severity)!==null&&s!==void 0?s:"error",f={severity:XS(h),range:{start:{line:u.line-1,character:u.column-1},end:{line:u.line-1,character:u.column+u.length-1}},message:u.message,data:Ude(h),source:this.getSource()};r.push(f)}}processParsingErrors(e,r,n){for(let i of e.parserErrors){let a;if(isNaN(i.token.startOffset)){if("previousToken"in i){let s=i.previousToken;if(isNaN(s.startOffset)){let l={line:0,character:0};a={start:l,end:l}}else{let l={line:s.endLine-1,character:s.endColumn};a={start:l,end:l}}}}else a=yg(i.token);if(a){let s={severity:XS("error"),range:a,message:i.message,data:jp(rl.ParsingError),source:this.getSource()};r.push(s)}}}processLinkingErrors(e,r,n){for(let i of e.references){let a=i.error;if(a){let s={node:a.container,property:a.property,index:a.index,data:{code:rl.LinkingError,containerType:a.container.$type,property:a.property,refText:a.reference.$refText}};r.push(this.toDiagnostic("error",a.message,s))}}}async validateAst(e,r,n=vr.CancellationToken.None){let i=[],a=o((s,l,u)=>{i.push(this.toDiagnostic(s,l,u))},"acceptor");return await this.validateAstBefore(e,r,a,n),await this.validateAstNodes(e,r,a,n),await this.validateAstAfter(e,r,a,n),i}async validateAstBefore(e,r,n,i=vr.CancellationToken.None){var a;let s=this.validationRegistry.checksBefore;for(let l of s)await Ti(i),await l(e,n,(a=r.categories)!==null&&a!==void 0?a:[],i)}async validateAstNodes(e,r,n,i=vr.CancellationToken.None){await Promise.all(Jo(e).map(async a=>{await Ti(i);let s=this.validationRegistry.getChecks(a.$type,r.categories);for(let l of s)await l(a,n,i)}))}async validateAstAfter(e,r,n,i=vr.CancellationToken.None){var a;let s=this.validationRegistry.checksAfter;for(let l of s)await Ti(i),await l(e,n,(a=r.categories)!==null&&a!==void 0?a:[],i)}toDiagnostic(e,r,n){return{message:r,range:Vde(n),severity:XS(e),code:n.code,codeDescription:n.codeDescription,tags:n.tags,relatedInformation:n.relatedInformation,data:n.data,source:this.getSource()}}getSource(){return this.metadata.languageId}};o(Vde,"getDiagnosticRange");o(XS,"toDiagnosticSeverity");o(Ude,"toDiagnosticData");(function(t){t.LexingError="lexing-error",t.LexingWarning="lexing-warning",t.LexingInfo="lexing-info",t.LexingHint="lexing-hint",t.ParsingError="parsing-error",t.LinkingError="linking-error"})(rl||(rl={}))});var Ub,Hb,HO=N(()=>{"use strict";el();Pl();us();Bl();tl();jc();Ub=class{static{o(this,"DefaultAstNodeDescriptionProvider")}constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,r,n){let i=n??Va(e);r??(r=this.nameProvider.getName(e));let a=this.astNodeLocator.getAstNodePath(e);if(!r)throw new Error(`Node at path ${a} has no name.`);let s,l=o(()=>{var u;return s??(s=Cp((u=this.nameProvider.getNameNode(e))!==null&&u!==void 0?u:e.$cstNode))},"nameSegmentGetter");return{node:e,name:r,get nameSegment(){return l()},selectionSegment:Cp(e.$cstNode),type:e.$type,documentUri:i.uri,path:a}}},Hb=class{static{o(this,"DefaultReferenceDescriptionProvider")}constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}async createDescriptions(e,r=vr.CancellationToken.None){let n=[],i=e.parseResult.value;for(let a of Jo(i))await Ti(r),n1(a).filter(s=>!Ep(s)).forEach(s=>{let l=this.createDescription(s);l&&n.push(l)});return n}createDescription(e){let r=e.reference.$nodeDescription,n=e.reference.$refNode;if(!r||!n)return;let i=Va(e.container).uri;return{sourceUri:i,sourcePath:this.nodeLocator.getAstNodePath(e.container),targetUri:r.documentUri,targetPath:r.path,segment:Cp(n),local:ys.equals(r.documentUri,i)}}}});var Wb,WO=N(()=>{"use strict";Wb=class{static{o(this,"DefaultAstNodeLocator")}constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(e){if(e.$container){let r=this.getAstNodePath(e.$container),n=this.getPathSegment(e);return r+this.segmentSeparator+n}return""}getPathSegment({$containerProperty:e,$containerIndex:r}){if(!e)throw new Error("Missing '$containerProperty' in AST node.");return r!==void 0?e+this.indexSeparator+r:e}getAstNode(e,r){return r.split(this.segmentSeparator).reduce((i,a)=>{if(!i||a.length===0)return i;let s=a.indexOf(this.indexSeparator);if(s>0){let l=a.substring(0,s),u=parseInt(a.substring(s+1)),h=i[l];return h?.[u]}return i[a]},e)}}});var Jn={};var jS=N(()=>{"use strict";Sr(Jn,ja(_O(),1))});var qb,qO=N(()=>{"use strict";jS();tl();qb=class{static{o(this,"DefaultConfigurationProvider")}constructor(e){this._ready=new ms,this.settings={},this.workspaceConfig=!1,this.onConfigurationSectionUpdateEmitter=new Jn.Emitter,this.serviceRegistry=e.ServiceRegistry}get ready(){return this._ready.promise}initialize(e){var r,n;this.workspaceConfig=(n=(r=e.capabilities.workspace)===null||r===void 0?void 0:r.configuration)!==null&&n!==void 0?n:!1}async initialized(e){if(this.workspaceConfig){if(e.register){let r=this.serviceRegistry.all;e.register({section:r.map(n=>this.toSectionName(n.LanguageMetaData.languageId))})}if(e.fetchConfiguration){let r=this.serviceRegistry.all.map(i=>({section:this.toSectionName(i.LanguageMetaData.languageId)})),n=await e.fetchConfiguration(r);r.forEach((i,a)=>{this.updateSectionConfiguration(i.section,n[a])})}}this._ready.resolve()}updateConfiguration(e){e.settings&&Object.keys(e.settings).forEach(r=>{let n=e.settings[r];this.updateSectionConfiguration(r,n),this.onConfigurationSectionUpdateEmitter.fire({section:r,configuration:n})})}updateSectionConfiguration(e,r){this.settings[e]=r}async getConfiguration(e,r){await this.ready;let n=this.toSectionName(e);if(this.settings[n])return this.settings[n][r]}toSectionName(e){return`${e}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}}});var Pf,YO=N(()=>{"use strict";(function(t){function e(r){return{dispose:o(async()=>await r(),"dispose")}}o(e,"create"),t.create=e})(Pf||(Pf={}))});var Yb,XO=N(()=>{"use strict";el();YO();V1();tl();Ws();zb();z1();Yb=class{static{o(this,"DefaultDocumentBuilder")}constructor(e){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new Vl,this.documentPhaseListeners=new Vl,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=Cn.Changed,this.langiumDocuments=e.workspace.LangiumDocuments,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.textDocuments=e.workspace.TextDocuments,this.indexManager=e.workspace.IndexManager,this.serviceRegistry=e.ServiceRegistry}async build(e,r={},n=vr.CancellationToken.None){var i,a;for(let s of e){let l=s.uri.toString();if(s.state===Cn.Validated){if(typeof r.validation=="boolean"&&r.validation)s.state=Cn.IndexedReferences,s.diagnostics=void 0,this.buildState.delete(l);else if(typeof r.validation=="object"){let u=this.buildState.get(l),h=(i=u?.result)===null||i===void 0?void 0:i.validationChecks;if(h){let d=((a=r.validation.categories)!==null&&a!==void 0?a:q1.all).filter(p=>!h.includes(p));d.length>0&&(this.buildState.set(l,{completed:!1,options:{validation:Object.assign(Object.assign({},r.validation),{categories:d})},result:u.result}),s.state=Cn.IndexedReferences)}}}else this.buildState.delete(l)}this.currentState=Cn.Changed,await this.emitUpdate(e.map(s=>s.uri),[]),await this.buildDocuments(e,r,n)}async update(e,r,n=vr.CancellationToken.None){this.currentState=Cn.Changed;for(let s of r)this.langiumDocuments.deleteDocument(s),this.buildState.delete(s.toString()),this.indexManager.remove(s);for(let s of e){if(!this.langiumDocuments.invalidateDocument(s)){let u=this.langiumDocumentFactory.fromModel({$type:"INVALID"},s);u.state=Cn.Changed,this.langiumDocuments.addDocument(u)}this.buildState.delete(s.toString())}let i=en(e).concat(r).map(s=>s.toString()).toSet();this.langiumDocuments.all.filter(s=>!i.has(s.uri.toString())&&this.shouldRelink(s,i)).forEach(s=>{this.serviceRegistry.getServices(s.uri).references.Linker.unlink(s),s.state=Math.min(s.state,Cn.ComputedScopes),s.diagnostics=void 0}),await this.emitUpdate(e,r),await Ti(n);let a=this.sortDocuments(this.langiumDocuments.all.filter(s=>{var l;return s.state<Cn.Linked||!(!((l=this.buildState.get(s.uri.toString()))===null||l===void 0)&&l.completed)}).toArray());await this.buildDocuments(a,this.updateBuildOptions,n)}async emitUpdate(e,r){await Promise.all(this.updateListeners.map(n=>n(e,r)))}sortDocuments(e){let r=0,n=e.length-1;for(;r<n;){for(;r<e.length&&this.hasTextDocument(e[r]);)r++;for(;n>=0&&!this.hasTextDocument(e[n]);)n--;r<n&&([e[r],e[n]]=[e[n],e[r]])}return e}hasTextDocument(e){var r;return!!(!((r=this.textDocuments)===null||r===void 0)&&r.get(e.uri))}shouldRelink(e,r){return e.references.some(n=>n.error!==void 0)?!0:this.indexManager.isAffected(e,r)}onUpdate(e){return this.updateListeners.push(e),Pf.create(()=>{let r=this.updateListeners.indexOf(e);r>=0&&this.updateListeners.splice(r,1)})}async buildDocuments(e,r,n){this.prepareBuild(e,r),await this.runCancelable(e,Cn.Parsed,n,a=>this.langiumDocumentFactory.update(a,n)),await this.runCancelable(e,Cn.IndexedContent,n,a=>this.indexManager.updateContent(a,n)),await this.runCancelable(e,Cn.ComputedScopes,n,async a=>{let s=this.serviceRegistry.getServices(a.uri).references.ScopeComputation;a.precomputedScopes=await s.computeLocalScopes(a,n)}),await this.runCancelable(e,Cn.Linked,n,a=>this.serviceRegistry.getServices(a.uri).references.Linker.link(a,n)),await this.runCancelable(e,Cn.IndexedReferences,n,a=>this.indexManager.updateReferences(a,n));let i=e.filter(a=>this.shouldValidate(a));await this.runCancelable(i,Cn.Validated,n,a=>this.validate(a,n));for(let a of e){let s=this.buildState.get(a.uri.toString());s&&(s.completed=!0)}}prepareBuild(e,r){for(let n of e){let i=n.uri.toString(),a=this.buildState.get(i);(!a||a.completed)&&this.buildState.set(i,{completed:!1,options:r,result:a?.result})}}async runCancelable(e,r,n,i){let a=e.filter(l=>l.state<r);for(let l of a)await Ti(n),await i(l),l.state=r,await this.notifyDocumentPhase(l,r,n);let s=e.filter(l=>l.state===r);await this.notifyBuildPhase(s,r,n),this.currentState=r}onBuildPhase(e,r){return this.buildPhaseListeners.add(e,r),Pf.create(()=>{this.buildPhaseListeners.delete(e,r)})}onDocumentPhase(e,r){return this.documentPhaseListeners.add(e,r),Pf.create(()=>{this.documentPhaseListeners.delete(e,r)})}waitUntil(e,r,n){let i;if(r&&"path"in r?i=r:n=r,n??(n=vr.CancellationToken.None),i){let a=this.langiumDocuments.getDocument(i);if(a&&a.state>e)return Promise.resolve(i)}return this.currentState>=e?Promise.resolve(void 0):n.isCancellationRequested?Promise.reject(Yc):new Promise((a,s)=>{let l=this.onBuildPhase(e,()=>{if(l.dispose(),u.dispose(),i){let h=this.langiumDocuments.getDocument(i);a(h?.uri)}else a(void 0)}),u=n.onCancellationRequested(()=>{l.dispose(),u.dispose(),s(Yc)})})}async notifyDocumentPhase(e,r,n){let a=this.documentPhaseListeners.get(r).slice();for(let s of a)try{await s(e,n)}catch(l){if(!Xc(l))throw l}}async notifyBuildPhase(e,r,n){if(e.length===0)return;let a=this.buildPhaseListeners.get(r).slice();for(let s of a)await Ti(n),await s(e,n)}shouldValidate(e){return!!this.getBuildOptions(e).validation}async validate(e,r){var n,i;let a=this.serviceRegistry.getServices(e.uri).validation.DocumentValidator,s=this.getBuildOptions(e).validation,l=typeof s=="object"?s:void 0,u=await a.validateDocument(e,l,r);e.diagnostics?e.diagnostics.push(...u):e.diagnostics=u;let h=this.buildState.get(e.uri.toString());if(h){(n=h.result)!==null&&n!==void 0||(h.result={});let f=(i=l?.categories)!==null&&i!==void 0?i:q1.all;h.result.validationChecks?h.result.validationChecks.push(...f):h.result.validationChecks=[...f]}}getBuildOptions(e){var r,n;return(n=(r=this.buildState.get(e.uri.toString()))===null||r===void 0?void 0:r.options)!==null&&n!==void 0?n:{}}}});var Xb,jO=N(()=>{"use strict";us();qS();el();Ws();jc();Xb=class{static{o(this,"DefaultIndexManager")}constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new Xp,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,r){let n=Va(e).uri,i=[];return this.referenceIndex.forEach(a=>{a.forEach(s=>{ys.equals(s.targetUri,n)&&s.targetPath===r&&i.push(s)})}),en(i)}allElements(e,r){let n=en(this.symbolIndex.keys());return r&&(n=n.filter(i=>!r||r.has(i))),n.map(i=>this.getFileDescriptions(i,e)).flat()}getFileDescriptions(e,r){var n;return r?this.symbolByTypeIndex.get(e,r,()=>{var a;return((a=this.symbolIndex.get(e))!==null&&a!==void 0?a:[]).filter(l=>this.astReflection.isSubtype(l.type,r))}):(n=this.symbolIndex.get(e))!==null&&n!==void 0?n:[]}remove(e){let r=e.toString();this.symbolIndex.delete(r),this.symbolByTypeIndex.clear(r),this.referenceIndex.delete(r)}async updateContent(e,r=vr.CancellationToken.None){let i=await this.serviceRegistry.getServices(e.uri).references.ScopeComputation.computeExports(e,r),a=e.uri.toString();this.symbolIndex.set(a,i),this.symbolByTypeIndex.clear(a)}async updateReferences(e,r=vr.CancellationToken.None){let i=await this.serviceRegistry.getServices(e.uri).workspace.ReferenceDescriptionProvider.createDescriptions(e,r);this.referenceIndex.set(e.uri.toString(),i)}isAffected(e,r){let n=this.referenceIndex.get(e.uri.toString());return n?n.some(i=>!i.local&&r.has(i.targetUri.toString())):!1}}});var jb,KO=N(()=>{"use strict";el();tl();jc();jb=class{static{o(this,"DefaultWorkspaceManager")}constructor(e){this.initialBuildOptions={},this._ready=new ms,this.serviceRegistry=e.ServiceRegistry,this.langiumDocuments=e.workspace.LangiumDocuments,this.documentBuilder=e.workspace.DocumentBuilder,this.fileSystemProvider=e.workspace.FileSystemProvider,this.mutex=e.workspace.WorkspaceLock}get ready(){return this._ready.promise}get workspaceFolders(){return this.folders}initialize(e){var r;this.folders=(r=e.workspaceFolders)!==null&&r!==void 0?r:void 0}initialized(e){return this.mutex.write(r=>{var n;return this.initializeWorkspace((n=this.folders)!==null&&n!==void 0?n:[],r)})}async initializeWorkspace(e,r=vr.CancellationToken.None){let n=await this.performStartup(e);await Ti(r),await this.documentBuilder.build(n,this.initialBuildOptions,r)}async performStartup(e){let r=this.serviceRegistry.all.flatMap(a=>a.LanguageMetaData.fileExtensions),n=[],i=o(a=>{n.push(a),this.langiumDocuments.hasDocument(a.uri)||this.langiumDocuments.addDocument(a)},"collector");return await this.loadAdditionalDocuments(e,i),await Promise.all(e.map(a=>[a,this.getRootFolder(a)]).map(async a=>this.traverseFolder(...a,r,i))),this._ready.resolve(),n}loadAdditionalDocuments(e,r){return Promise.resolve()}getRootFolder(e){return gs.parse(e.uri)}async traverseFolder(e,r,n,i){let a=await this.fileSystemProvider.readDirectory(r);await Promise.all(a.map(async s=>{if(this.includeEntry(e,s,n)){if(s.isDirectory)await this.traverseFolder(e,s.uri,n,i);else if(s.isFile){let l=await this.langiumDocuments.getOrCreateDocument(s.uri);i(l)}}}))}includeEntry(e,r,n){let i=ys.basename(r.uri);if(i.startsWith("."))return!1;if(r.isDirectory)return i!=="node_modules"&&i!=="out";if(r.isFile){let a=ys.extname(r.uri);return n.includes(a)}return!1}}});function QS(t){return Array.isArray(t)&&(t.length===0||"name"in t[0])}function ZO(t){return t&&"modes"in t&&"defaultMode"in t}function QO(t){return!QS(t)&&!ZO(t)}var Kb,KS,Kp,ZS=N(()=>{"use strict";Mf();Kb=class{static{o(this,"DefaultLexerErrorMessageProvider")}buildUnexpectedCharactersMessage(e,r,n,i,a){return y1.buildUnexpectedCharactersMessage(e,r,n,i,a)}buildUnableToPopLexerModeMessage(e){return y1.buildUnableToPopLexerModeMessage(e)}},KS={mode:"full"},Kp=class{static{o(this,"DefaultLexer")}constructor(e){this.errorMessageProvider=e.parser.LexerErrorMessageProvider,this.tokenBuilder=e.parser.TokenBuilder;let r=this.tokenBuilder.buildTokens(e.Grammar,{caseInsensitive:e.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(r);let n=QO(r)?Object.values(r):r,i=e.LanguageMetaData.mode==="production";this.chevrotainLexer=new Qn(n,{positionTracking:"full",skipValidations:i,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(e,r=KS){var n,i,a;let s=this.chevrotainLexer.tokenize(e);return{tokens:s.tokens,errors:s.errors,hidden:(n=s.groups.hidden)!==null&&n!==void 0?n:[],report:(a=(i=this.tokenBuilder).flushLexingReport)===null||a===void 0?void 0:a.call(i,e)}}toTokenTypeDictionary(e){if(QO(e))return e;let r=ZO(e)?Object.values(e.modes).flat():e,n={};return r.forEach(i=>n[i.name]=i),n}};o(QS,"isTokenTypeArray");o(ZO,"isIMultiModeLexerDefinition");o(QO,"isTokenTypeDictionary")});function tP(t,e,r){let n,i;typeof t=="string"?(i=e,n=r):(i=t.range.start,n=e),i||(i=Kr.create(0,0));let a=qde(t),s=nP(n),l=nXe({lines:a,position:i,options:s});return lXe({index:0,tokens:l,position:i})}function rP(t,e){let r=nP(e),n=qde(t);if(n.length===0)return!1;let i=n[0],a=n[n.length-1],s=r.start,l=r.end;return!!s?.exec(i)&&!!l?.exec(a)}function qde(t){let e="";return typeof t=="string"?e=t:e=t.text,e.split(QM)}function nXe(t){var e,r,n;let i=[],a=t.position.line,s=t.position.character;for(let l=0;l<t.lines.length;l++){let u=l===0,h=l===t.lines.length-1,f=t.lines[l],d=0;if(u&&t.options.start){let m=(e=t.options.start)===null||e===void 0?void 0:e.exec(f);m&&(d=m.index+m[0].length)}else{let m=(r=t.options.line)===null||r===void 0?void 0:r.exec(f);m&&(d=m.index+m[0].length)}if(h){let m=(n=t.options.end)===null||n===void 0?void 0:n.exec(f);m&&(f=f.substring(0,m.index))}if(f=f.substring(0,oXe(f)),eP(f,d)>=f.length){if(i.length>0){let m=Kr.create(a,s);i.push({type:"break",content:"",range:Br.create(m,m)})}}else{Hde.lastIndex=d;let m=Hde.exec(f);if(m){let g=m[0],y=m[1],x=Kr.create(a,s+d),v=Kr.create(a,s+d+g.length);i.push({type:"tag",content:y,range:Br.create(x,v)}),d+=g.length,d=eP(f,d)}if(d<f.length){let g=f.substring(d),y=Array.from(g.matchAll(rXe));i.push(...iXe(y,g,a,s+d))}}a++,s=0}return i.length>0&&i[i.length-1].type==="break"?i.slice(0,-1):i}function iXe(t,e,r,n){let i=[];if(t.length===0){let a=Kr.create(r,n),s=Kr.create(r,n+e.length);i.push({type:"text",content:e,range:Br.create(a,s)})}else{let a=0;for(let l of t){let u=l.index,h=e.substring(a,u);h.length>0&&i.push({type:"text",content:e.substring(a,u),range:Br.create(Kr.create(r,a+n),Kr.create(r,u+n))});let f=h.length+1,d=l[1];if(i.push({type:"inline-tag",content:d,range:Br.create(Kr.create(r,a+f+n),Kr.create(r,a+f+d.length+n))}),f+=d.length,l.length===4){f+=l[2].length;let p=l[3];i.push({type:"text",content:p,range:Br.create(Kr.create(r,a+f+n),Kr.create(r,a+f+p.length+n))})}else i.push({type:"text",content:"",range:Br.create(Kr.create(r,a+f+n),Kr.create(r,a+f+n))});a=u+l[0].length}let s=e.substring(a);s.length>0&&i.push({type:"text",content:s,range:Br.create(Kr.create(r,a+n),Kr.create(r,a+n+s.length))})}return i}function eP(t,e){let r=t.substring(e).match(aXe);return r?e+r.index:t.length}function oXe(t){let e=t.match(sXe);if(e&&typeof e.index=="number")return e.index}function lXe(t){var e,r,n,i;let a=Kr.create(t.position.line,t.position.character);if(t.tokens.length===0)return new JS([],Br.create(a,a));let s=[];for(;t.index<t.tokens.length;){let h=cXe(t,s[s.length-1]);h&&s.push(h)}let l=(r=(e=s[0])===null||e===void 0?void 0:e.range.start)!==null&&r!==void 0?r:a,u=(i=(n=s[s.length-1])===null||n===void 0?void 0:n.range.end)!==null&&i!==void 0?i:a;return new JS(s,Br.create(l,u))}function cXe(t,e){let r=t.tokens[t.index];if(r.type==="tag")return Xde(t,!1);if(r.type==="text"||r.type==="inline-tag")return Yde(t);uXe(r,e),t.index++}function uXe(t,e){if(e){let r=new e6("",t.range);"inlines"in e?e.inlines.push(r):e.content.inlines.push(r)}}function Yde(t){let e=t.tokens[t.index],r=e,n=e,i=[];for(;e&&e.type!=="break"&&e.type!=="tag";)i.push(hXe(t)),n=e,e=t.tokens[t.index];return new Zb(i,Br.create(r.range.start,n.range.end))}function hXe(t){return t.tokens[t.index].type==="inline-tag"?Xde(t,!0):jde(t)}function Xde(t,e){let r=t.tokens[t.index++],n=r.content.substring(1),i=t.tokens[t.index];if(i?.type==="text")if(e){let a=jde(t);return new Qb(n,new Zb([a],a.range),e,Br.create(r.range.start,a.range.end))}else{let a=Yde(t);return new Qb(n,a,e,Br.create(r.range.start,a.range.end))}else{let a=r.range;return new Qb(n,new Zb([],a),e,a)}}function jde(t){let e=t.tokens[t.index++];return new e6(e.content,e.range)}function nP(t){if(!t)return nP({start:"/**",end:"*/",line:"*"});let{start:e,end:r,line:n}=t;return{start:JO(e,!0),end:JO(r,!1),line:JO(n,!0)}}function JO(t,e){if(typeof t=="string"||typeof t=="object"){let r=typeof t=="string"?Ip(t):t.source;return e?new RegExp(`^\\s*${r}`):new RegExp(`\\s*${r}\\s*$`)}else return t}function fXe(t,e,r){var n,i;if(t==="linkplain"||t==="linkcode"||t==="link"){let a=e.indexOf(" "),s=e;if(a>0){let u=eP(e,a);s=e.substring(u),e=e.substring(0,a)}return(t==="linkcode"||t==="link"&&r.link==="code")&&(s=`\`${s}\``),(i=(n=r.renderLink)===null||n===void 0?void 0:n.call(r,e,s))!==null&&i!==void 0?i:dXe(e,s)}}function dXe(t,e){try{return gs.parse(t,!0),`[${e}](${t})`}catch{return t}}function Wde(t){return t.endsWith(`
|
||
`)?`
|
||
`:`
|
||
|
||
`}var Hde,rXe,aXe,sXe,JS,Qb,Zb,e6,iP=N(()=>{"use strict";dO();s1();jc();o(tP,"parseJSDoc");o(rP,"isJSDoc");o(qde,"getLines");Hde=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,rXe=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;o(nXe,"tokenize");o(iXe,"buildInlineTokens");aXe=/\S/,sXe=/\s*$/;o(eP,"skipWhitespace");o(oXe,"lastCharacter");o(lXe,"parseJSDocComment");o(cXe,"parseJSDocElement");o(uXe,"appendEmptyLine");o(Yde,"parseJSDocText");o(hXe,"parseJSDocInline");o(Xde,"parseJSDocTag");o(jde,"parseJSDocLine");o(nP,"normalizeOptions");o(JO,"normalizeOption");JS=class{static{o(this,"JSDocCommentImpl")}constructor(e,r){this.elements=e,this.range=r}getTag(e){return this.getAllTags().find(r=>r.name===e)}getTags(e){return this.getAllTags().filter(r=>r.name===e)}getAllTags(){return this.elements.filter(e=>"name"in e)}toString(){let e="";for(let r of this.elements)if(e.length===0)e=r.toString();else{let n=r.toString();e+=Wde(e)+n}return e.trim()}toMarkdown(e){let r="";for(let n of this.elements)if(r.length===0)r=n.toMarkdown(e);else{let i=n.toMarkdown(e);r+=Wde(r)+i}return r.trim()}},Qb=class{static{o(this,"JSDocTagImpl")}constructor(e,r,n,i){this.name=e,this.content=r,this.inline=n,this.range=i}toString(){let e=`@${this.name}`,r=this.content.toString();return this.content.inlines.length===1?e=`${e} ${r}`:this.content.inlines.length>1&&(e=`${e}
|
||
${r}`),this.inline?`{${e}}`:e}toMarkdown(e){var r,n;return(n=(r=e?.renderTag)===null||r===void 0?void 0:r.call(e,this))!==null&&n!==void 0?n:this.toMarkdownDefault(e)}toMarkdownDefault(e){let r=this.content.toMarkdown(e);if(this.inline){let a=fXe(this.name,r,e??{});if(typeof a=="string")return a}let n="";e?.tag==="italic"||e?.tag===void 0?n="*":e?.tag==="bold"?n="**":e?.tag==="bold-italic"&&(n="***");let i=`${n}@${this.name}${n}`;return this.content.inlines.length===1?i=`${i} \u2014 ${r}`:this.content.inlines.length>1&&(i=`${i}
|
||
${r}`),this.inline?`{${i}}`:i}};o(fXe,"renderInlineTag");o(dXe,"renderLinkDefault");Zb=class{static{o(this,"JSDocTextImpl")}constructor(e,r){this.inlines=e,this.range=r}toString(){let e="";for(let r=0;r<this.inlines.length;r++){let n=this.inlines[r],i=this.inlines[r+1];e+=n.toString(),i&&i.range.start.line>n.range.start.line&&(e+=`
|
||
`)}return e}toMarkdown(e){let r="";for(let n=0;n<this.inlines.length;n++){let i=this.inlines[n],a=this.inlines[n+1];r+=i.toMarkdown(e),a&&a.range.start.line>i.range.start.line&&(r+=`
|
||
`)}return r}},e6=class{static{o(this,"JSDocLineImpl")}constructor(e,r){this.text=e,this.range=r}toString(){return this.text}toMarkdown(){return this.text}};o(Wde,"fillNewlines")});var Jb,aP=N(()=>{"use strict";us();iP();Jb=class{static{o(this,"JSDocDocumentationProvider")}constructor(e){this.indexManager=e.shared.workspace.IndexManager,this.commentProvider=e.documentation.CommentProvider}getDocumentation(e){let r=this.commentProvider.getComment(e);if(r&&rP(r))return tP(r).toMarkdown({renderLink:o((i,a)=>this.documentationLinkRenderer(e,i,a),"renderLink"),renderTag:o(i=>this.documentationTagRenderer(e,i),"renderTag")})}documentationLinkRenderer(e,r,n){var i;let a=(i=this.findNameInPrecomputedScopes(e,r))!==null&&i!==void 0?i:this.findNameInGlobalScope(e,r);if(a&&a.nameSegment){let s=a.nameSegment.range.start.line+1,l=a.nameSegment.range.start.character+1,u=a.documentUri.with({fragment:`L${s},${l}`});return`[${n}](${u.toString()})`}else return}documentationTagRenderer(e,r){}findNameInPrecomputedScopes(e,r){let i=Va(e).precomputedScopes;if(!i)return;let a=e;do{let l=i.get(a).find(u=>u.name===r);if(l)return l;a=a.$container}while(a)}findNameInGlobalScope(e,r){return this.indexManager.allElements().find(i=>i.name===r)}}});var e4,sP=N(()=>{"use strict";YS();Bl();e4=class{static{o(this,"DefaultCommentProvider")}constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){var r;return zO(e)?e.$comment:(r=SM(e.$cstNode,this.grammarConfig().multilineCommentRules))===null||r===void 0?void 0:r.text}}});var t4,oP,lP,cP=N(()=>{"use strict";tl();jS();t4=class{static{o(this,"DefaultAsyncParser")}constructor(e){this.syncParser=e.parser.LangiumParser}parse(e,r){return Promise.resolve(this.syncParser.parse(e))}},oP=class{static{o(this,"AbstractThreadedAsyncParser")}constructor(e){this.threadCount=8,this.terminationDelay=200,this.workerPool=[],this.queue=[],this.hydrator=e.serializer.Hydrator}initializeWorkers(){for(;this.workerPool.length<this.threadCount;){let e=this.createWorker();e.onReady(()=>{if(this.queue.length>0){let r=this.queue.shift();r&&(e.lock(),r.resolve(e))}}),this.workerPool.push(e)}}async parse(e,r){let n=await this.acquireParserWorker(r),i=new ms,a,s=r.onCancellationRequested(()=>{a=setTimeout(()=>{this.terminateWorker(n)},this.terminationDelay)});return n.parse(e).then(l=>{let u=this.hydrator.hydrate(l);i.resolve(u)}).catch(l=>{i.reject(l)}).finally(()=>{s.dispose(),clearTimeout(a)}),i.promise}terminateWorker(e){e.terminate();let r=this.workerPool.indexOf(e);r>=0&&this.workerPool.splice(r,1)}async acquireParserWorker(e){this.initializeWorkers();for(let n of this.workerPool)if(n.ready)return n.lock(),n;let r=new ms;return e.onCancellationRequested(()=>{let n=this.queue.indexOf(r);n>=0&&this.queue.splice(n,1),r.reject(Yc)}),this.queue.push(r),r.promise}},lP=class{static{o(this,"ParserWorker")}get ready(){return this._ready}get onReady(){return this.onReadyEmitter.event}constructor(e,r,n,i){this.onReadyEmitter=new Jn.Emitter,this.deferred=new ms,this._ready=!0,this._parsing=!1,this.sendMessage=e,this._terminate=i,r(a=>{let s=a;this.deferred.resolve(s),this.unlock()}),n(a=>{this.deferred.reject(a),this.unlock()})}terminate(){this.deferred.reject(Yc),this._terminate()}lock(){this._ready=!1}unlock(){this._parsing=!1,this._ready=!0,this.onReadyEmitter.fire()}parse(e){if(this._parsing)throw new Error("Parser worker is busy");return this._parsing=!0,this.deferred=new ms,this.sendMessage(e),this.deferred.promise}}});var r4,uP=N(()=>{"use strict";el();tl();r4=class{static{o(this,"DefaultWorkspaceLock")}constructor(){this.previousTokenSource=new vr.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(e){this.cancelWrite();let r=US();return this.previousTokenSource=r,this.enqueue(this.writeQueue,e,r.token)}read(e){return this.enqueue(this.readQueue,e)}enqueue(e,r,n=vr.CancellationToken.None){let i=new ms,a={action:r,deferred:i,cancellationToken:n};return e.push(a),this.performNextOperation(),i.promise}async performNextOperation(){if(!this.done)return;let e=[];if(this.writeQueue.length>0)e.push(this.writeQueue.shift());else if(this.readQueue.length>0)e.push(...this.readQueue.splice(0,this.readQueue.length));else return;this.done=!1,await Promise.all(e.map(async({action:r,deferred:n,cancellationToken:i})=>{try{let a=await Promise.resolve().then(()=>r(i));n.resolve(a)}catch(a){Xc(a)?n.resolve(void 0):n.reject(a)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}}});var n4,hP=N(()=>{"use strict";MS();Vc();Pl();us();V1();Bl();n4=class{static{o(this,"DefaultHydrator")}constructor(e){this.grammarElementIdMap=new Yp,this.tokenTypeIdMap=new Yp,this.grammar=e.Grammar,this.lexer=e.parser.Lexer,this.linker=e.references.Linker}dehydrate(e){return{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport?this.dehydrateLexerReport(e.lexerReport):void 0,parserErrors:e.parserErrors.map(r=>Object.assign(Object.assign({},r),{message:r.message})),value:this.dehydrateAstNode(e.value,this.createDehyrationContext(e.value))}}dehydrateLexerReport(e){return e}createDehyrationContext(e){let r=new Map,n=new Map;for(let i of Jo(e))r.set(i,{});if(e.$cstNode)for(let i of Sp(e.$cstNode))n.set(i,{});return{astNodes:r,cstNodes:n}}dehydrateAstNode(e,r){let n=r.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode!==void 0&&(n.$cstNode=this.dehydrateCstNode(e.$cstNode,r));for(let[i,a]of Object.entries(e))if(!i.startsWith("$"))if(Array.isArray(a)){let s=[];n[i]=s;for(let l of a)ci(l)?s.push(this.dehydrateAstNode(l,r)):ba(l)?s.push(this.dehydrateReference(l,r)):s.push(l)}else ci(a)?n[i]=this.dehydrateAstNode(a,r):ba(a)?n[i]=this.dehydrateReference(a,r):a!==void 0&&(n[i]=a);return n}dehydrateReference(e,r){let n={};return n.$refText=e.$refText,e.$refNode&&(n.$refNode=r.cstNodes.get(e.$refNode)),n}dehydrateCstNode(e,r){let n=r.cstNodes.get(e);return Lx(e)?n.fullText=e.fullText:n.grammarSource=this.getGrammarElementId(e.grammarSource),n.hidden=e.hidden,n.astNode=r.astNodes.get(e.astNode),Ol(e)?n.content=e.content.map(i=>this.dehydrateCstNode(i,r)):Df(e)&&(n.tokenType=e.tokenType.name,n.offset=e.offset,n.length=e.length,n.startLine=e.range.start.line,n.startColumn=e.range.start.character,n.endLine=e.range.end.line,n.endColumn=e.range.end.character),n}hydrate(e){let r=e.value,n=this.createHydrationContext(r);return"$cstNode"in r&&this.hydrateCstNode(r.$cstNode,n),{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport,parserErrors:e.parserErrors,value:this.hydrateAstNode(r,n)}}createHydrationContext(e){let r=new Map,n=new Map;for(let a of Jo(e))r.set(a,{});let i;if(e.$cstNode)for(let a of Sp(e.$cstNode)){let s;"fullText"in a?(s=new O1(a.fullText),i=s):"content"in a?s=new Hp:"tokenType"in a&&(s=this.hydrateCstLeafNode(a)),s&&(n.set(a,s),s.root=i)}return{astNodes:r,cstNodes:n}}hydrateAstNode(e,r){let n=r.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode&&(n.$cstNode=r.cstNodes.get(e.$cstNode));for(let[i,a]of Object.entries(e))if(!i.startsWith("$"))if(Array.isArray(a)){let s=[];n[i]=s;for(let l of a)ci(l)?s.push(this.setParent(this.hydrateAstNode(l,r),n)):ba(l)?s.push(this.hydrateReference(l,n,i,r)):s.push(l)}else ci(a)?n[i]=this.setParent(this.hydrateAstNode(a,r),n):ba(a)?n[i]=this.hydrateReference(a,n,i,r):a!==void 0&&(n[i]=a);return n}setParent(e,r){return e.$container=r,e}hydrateReference(e,r,n,i){return this.linker.buildReference(r,n,i.cstNodes.get(e.$refNode),e.$refText)}hydrateCstNode(e,r,n=0){let i=r.cstNodes.get(e);if(typeof e.grammarSource=="number"&&(i.grammarSource=this.getGrammarElement(e.grammarSource)),i.astNode=r.astNodes.get(e.astNode),Ol(i))for(let a of e.content){let s=this.hydrateCstNode(a,r,n++);i.content.push(s)}return i}hydrateCstLeafNode(e){let r=this.getTokenType(e.tokenType),n=e.offset,i=e.length,a=e.startLine,s=e.startColumn,l=e.endLine,u=e.endColumn,h=e.hidden;return new Up(n,i,{start:{line:a,character:s},end:{line:l,character:u}},r,h)}getTokenType(e){return this.lexer.definition[e]}getGrammarElementId(e){if(e)return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(e)}getGrammarElement(e){return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.getKey(e)}createGrammarElementIdMap(){let e=0;for(let r of Jo(this.grammar))Fx(r)&&this.grammarElementIdMap.set(r,e++)}}});function Ta(t){return{documentation:{CommentProvider:o(e=>new e4(e),"CommentProvider"),DocumentationProvider:o(e=>new Jb(e),"DocumentationProvider")},parser:{AsyncParser:o(e=>new t4(e),"AsyncParser"),GrammarConfig:o(e=>fI(e),"GrammarConfig"),LangiumParser:o(e=>bO(e),"LangiumParser"),CompletionParser:o(e=>vO(e),"CompletionParser"),ValueConverter:o(()=>new qp,"ValueConverter"),TokenBuilder:o(()=>new Zu,"TokenBuilder"),Lexer:o(e=>new Kp(e),"Lexer"),ParserErrorMessageProvider:o(()=>new P1,"ParserErrorMessageProvider"),LexerErrorMessageProvider:o(()=>new Kb,"LexerErrorMessageProvider")},workspace:{AstNodeLocator:o(()=>new Wb,"AstNodeLocator"),AstNodeDescriptionProvider:o(e=>new Ub(e),"AstNodeDescriptionProvider"),ReferenceDescriptionProvider:o(e=>new Hb(e),"ReferenceDescriptionProvider")},references:{Linker:o(e=>new Rb(e),"Linker"),NameProvider:o(()=>new Nb,"NameProvider"),ScopeProvider:o(e=>new Bb(e),"ScopeProvider"),ScopeComputation:o(e=>new Ib(e),"ScopeComputation"),References:o(e=>new Mb(e),"References")},serializer:{Hydrator:o(e=>new n4(e),"Hydrator"),JsonSerializer:o(e=>new Fb(e),"JsonSerializer")},validation:{DocumentValidator:o(e=>new Vb(e),"DocumentValidator"),ValidationRegistry:o(e=>new Gb(e),"ValidationRegistry")},shared:o(()=>t.shared,"shared")}}function wa(t){return{ServiceRegistry:o(e=>new $b(e),"ServiceRegistry"),workspace:{LangiumDocuments:o(e=>new Lb(e),"LangiumDocuments"),LangiumDocumentFactory:o(e=>new Db(e),"LangiumDocumentFactory"),DocumentBuilder:o(e=>new Yb(e),"DocumentBuilder"),IndexManager:o(e=>new Xb(e),"IndexManager"),WorkspaceManager:o(e=>new jb(e),"WorkspaceManager"),FileSystemProvider:o(e=>t.fileSystemProvider(e),"FileSystemProvider"),WorkspaceLock:o(()=>new r4,"WorkspaceLock"),ConfigurationProvider:o(e=>new qb(e),"ConfigurationProvider")}}}var fP=N(()=>{"use strict";dI();xO();TO();FS();wO();OO();PO();BO();FO();GO();YS();VO();UO();zb();HO();WO();qO();XO();z1();jO();KO();ZS();aP();sP();Ab();cP();uP();hP();o(Ta,"createDefaultCoreModule");o(wa,"createDefaultSharedCoreModule")});function Hn(t,e,r,n,i,a,s,l,u){let h=[t,e,r,n,i,a,s,l,u].reduce(t6,{});return epe(h)}function Jde(t){if(t&&t[Zde])for(let e of Object.values(t))Jde(e);return t}function epe(t,e){let r=new Proxy({},{deleteProperty:o(()=>!1,"deleteProperty"),set:o(()=>{throw new Error("Cannot set property on injected service container")},"set"),get:o((n,i)=>i===Zde?!0:Qde(n,i,t,e||r),"get"),getOwnPropertyDescriptor:o((n,i)=>(Qde(n,i,t,e||r),Object.getOwnPropertyDescriptor(n,i)),"getOwnPropertyDescriptor"),has:o((n,i)=>i in t,"has"),ownKeys:o(()=>[...Object.getOwnPropertyNames(t)],"ownKeys")});return r}function Qde(t,e,r,n){if(e in t){if(t[e]instanceof Error)throw new Error("Construction failure. Please make sure that your dependencies are constructable.",{cause:t[e]});if(t[e]===Kde)throw new Error('Cycle detected. Please make "'+String(e)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return t[e]}else if(e in r){let i=r[e];t[e]=Kde;try{t[e]=typeof i=="function"?i(n):epe(i,n)}catch(a){throw t[e]=a instanceof Error?a:void 0,a}return t[e]}else return}function t6(t,e){if(e){for(let[r,n]of Object.entries(e))if(n!==void 0){let i=t[r];i!==null&&n!==null&&typeof i=="object"&&typeof n=="object"?t[r]=t6(i,n):t[r]=n}}return t}var dP,Zde,Kde,pP=N(()=>{"use strict";(function(t){t.merge=(e,r)=>t6(t6({},e),r)})(dP||(dP={}));o(Hn,"inject");Zde=Symbol("isProxy");o(Jde,"eagerLoad");o(epe,"_inject");Kde=Symbol();o(Qde,"_resolve");o(t6,"_merge")});var tpe=N(()=>{"use strict"});var rpe=N(()=>{"use strict";sP();aP();iP()});var npe=N(()=>{"use strict"});var ipe=N(()=>{"use strict";dI();npe()});var mP,Qp,r6,gP,ape=N(()=>{"use strict";Mf();FS();ZS();mP={indentTokenName:"INDENT",dedentTokenName:"DEDENT",whitespaceTokenName:"WS",ignoreIndentationDelimiters:[]};(function(t){t.REGULAR="indentation-sensitive",t.IGNORE_INDENTATION="ignore-indentation"})(Qp||(Qp={}));r6=class extends Zu{static{o(this,"IndentationAwareTokenBuilder")}constructor(e=mP){super(),this.indentationStack=[0],this.whitespaceRegExp=/[ \t]+/y,this.options=Object.assign(Object.assign({},mP),e),this.indentTokenType=Rf({name:this.options.indentTokenName,pattern:this.indentMatcher.bind(this),line_breaks:!1}),this.dedentTokenType=Rf({name:this.options.dedentTokenName,pattern:this.dedentMatcher.bind(this),line_breaks:!1})}buildTokens(e,r){let n=super.buildTokens(e,r);if(!QS(n))throw new Error("Invalid tokens built by default builder");let{indentTokenName:i,dedentTokenName:a,whitespaceTokenName:s,ignoreIndentationDelimiters:l}=this.options,u,h,f,d=[];for(let p of n){for(let[m,g]of l)p.name===m?p.PUSH_MODE=Qp.IGNORE_INDENTATION:p.name===g&&(p.POP_MODE=!0);p.name===a?u=p:p.name===i?h=p:p.name===s?f=p:d.push(p)}if(!u||!h||!f)throw new Error("Some indentation/whitespace tokens not found!");return l.length>0?{modes:{[Qp.REGULAR]:[u,h,...d,f],[Qp.IGNORE_INDENTATION]:[...d,f]},defaultMode:Qp.REGULAR}:[u,h,f,...d]}flushLexingReport(e){let r=super.flushLexingReport(e);return Object.assign(Object.assign({},r),{remainingDedents:this.flushRemainingDedents(e)})}isStartOfLine(e,r){return r===0||`\r
|
||
`.includes(e[r-1])}matchWhitespace(e,r,n,i){var a;this.whitespaceRegExp.lastIndex=r;let s=this.whitespaceRegExp.exec(e);return{currIndentLevel:(a=s?.[0].length)!==null&&a!==void 0?a:0,prevIndentLevel:this.indentationStack.at(-1),match:s}}createIndentationTokenInstance(e,r,n,i){let a=this.getLineNumber(r,i);return Xu(e,n,i,i+n.length,a,a,1,n.length)}getLineNumber(e,r){return e.substring(0,r).split(/\r\n|\r|\n/).length}indentMatcher(e,r,n,i){if(!this.isStartOfLine(e,r))return null;let{currIndentLevel:a,prevIndentLevel:s,match:l}=this.matchWhitespace(e,r,n,i);return a<=s?null:(this.indentationStack.push(a),l)}dedentMatcher(e,r,n,i){var a,s,l,u;if(!this.isStartOfLine(e,r))return null;let{currIndentLevel:h,prevIndentLevel:f,match:d}=this.matchWhitespace(e,r,n,i);if(h>=f)return null;let p=this.indentationStack.lastIndexOf(h);if(p===-1)return this.diagnostics.push({severity:"error",message:`Invalid dedent level ${h} at offset: ${r}. Current indentation stack: ${this.indentationStack}`,offset:r,length:(s=(a=d?.[0])===null||a===void 0?void 0:a.length)!==null&&s!==void 0?s:0,line:this.getLineNumber(e,r),column:1}),null;let m=this.indentationStack.length-p-1,g=(u=(l=e.substring(0,r).match(/[\r\n]+$/))===null||l===void 0?void 0:l[0].length)!==null&&u!==void 0?u:1;for(let y=0;y<m;y++){let x=this.createIndentationTokenInstance(this.dedentTokenType,e,"",r-(g-1));n.push(x),this.indentationStack.pop()}return null}buildTerminalToken(e){let r=super.buildTerminalToken(e),{indentTokenName:n,dedentTokenName:i,whitespaceTokenName:a}=this.options;return r.name===n?this.indentTokenType:r.name===i?this.dedentTokenType:r.name===a?Rf({name:a,pattern:this.whitespaceRegExp,group:Qn.SKIPPED}):r}flushRemainingDedents(e){let r=[];for(;this.indentationStack.length>1;)r.push(this.createIndentationTokenInstance(this.dedentTokenType,e,"",e.length)),this.indentationStack.pop();return this.indentationStack=[0],r}},gP=class extends Kp{static{o(this,"IndentationAwareLexer")}constructor(e){if(super(e),e.parser.TokenBuilder instanceof r6)this.indentationTokenBuilder=e.parser.TokenBuilder;else throw new Error("IndentationAwareLexer requires an accompanying IndentationAwareTokenBuilder")}tokenize(e,r=KS){let n=super.tokenize(e),i=n.report;r?.mode==="full"&&n.tokens.push(...i.remainingDedents),i.remainingDedents=[];let{indentTokenType:a,dedentTokenType:s}=this.indentationTokenBuilder,l=a.tokenTypeIdx,u=s.tokenTypeIdx,h=[],f=n.tokens.length-1;for(let d=0;d<f;d++){let p=n.tokens[d],m=n.tokens[d+1];if(p.tokenTypeIdx===l&&m.tokenTypeIdx===u){d++;continue}h.push(p)}return f>=0&&h.push(n.tokens[f]),n.tokens=h,n}}});var spe=N(()=>{"use strict"});var ope=N(()=>{"use strict";cP();xO();MS();ape();TO();Ab();ZS();BS();spe();FS();wO()});var lpe=N(()=>{"use strict";OO();PO();BO();$O();FO();GO()});var cpe=N(()=>{"use strict";hP();YS()});var n6,ka,yP=N(()=>{"use strict";n6=class{static{o(this,"EmptyFileSystemProvider")}readFile(){throw new Error("No file system is available.")}async readDirectory(){return[]}},ka={fileSystemProvider:o(()=>new n6,"fileSystemProvider")}});function gXe(){let t=Hn(wa(ka),mXe),e=Hn(Ta({shared:t}),pXe);return t.ServiceRegistry.register(e),e}function Kc(t){var e;let r=gXe(),n=r.serializer.JsonSerializer.deserialize(t);return r.shared.workspace.LangiumDocumentFactory.fromModel(n,gs.parse(`memory://${(e=n.name)!==null&&e!==void 0?e:"grammar"}.langium`)),n}var pXe,mXe,upe=N(()=>{"use strict";fP();pP();Vc();yP();jc();pXe={Grammar:o(()=>{},"Grammar"),LanguageMetaData:o(()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"}),"LanguageMetaData")},mXe={AstReflection:o(()=>new r1,"AstReflection")};o(gXe,"createMinimalGrammarServices");o(Kc,"loadGrammarFromJson")});var Ur={};ur(Ur,{AstUtils:()=>PE,BiMap:()=>Yp,Cancellation:()=>vr,ContextCache:()=>Xp,CstUtils:()=>CE,DONE_RESULT:()=>Ga,Deferred:()=>ms,Disposable:()=>Pf,DisposableCache:()=>H1,DocumentCache:()=>WS,EMPTY_STREAM:()=>Rx,ErrorWithLocation:()=>Ap,GrammarUtils:()=>zE,MultiMap:()=>Vl,OperationCancelled:()=>Yc,Reduction:()=>gg,RegExpUtils:()=>$E,SimpleCache:()=>Pb,StreamImpl:()=>fo,TreeStreamImpl:()=>$c,URI:()=>gs,UriUtils:()=>ys,WorkspaceCache:()=>W1,assertUnreachable:()=>zc,delayNextTick:()=>RO,interruptAndCheck:()=>Ti,isOperationCancelled:()=>Xc,loadGrammarFromJson:()=>Kc,setInterruptionPeriod:()=>Ide,startCancelableOperation:()=>US,stream:()=>en});var hpe=N(()=>{"use strict";qS();jS();Sr(Ur,Jn);V1();YO();AE();upe();tl();Ws();jc();us();el();Bl();Gl();s1()});var fpe=N(()=>{"use strict";UO();zb()});var dpe=N(()=>{"use strict";HO();WO();qO();XO();z1();yP();jO();uP();KO()});var Ea={};ur(Ea,{AbstractAstReflection:()=>kp,AbstractCstNode:()=>kb,AbstractLangiumParser:()=>Eb,AbstractParserErrorMessageProvider:()=>OS,AbstractThreadedAsyncParser:()=>oP,AstUtils:()=>PE,BiMap:()=>Yp,Cancellation:()=>vr,CompositeCstNodeImpl:()=>Hp,ContextCache:()=>Xp,CstNodeBuilder:()=>wb,CstUtils:()=>CE,DEFAULT_TOKENIZE_OPTIONS:()=>KS,DONE_RESULT:()=>Ga,DatatypeSymbol:()=>IS,DefaultAstNodeDescriptionProvider:()=>Ub,DefaultAstNodeLocator:()=>Wb,DefaultAsyncParser:()=>t4,DefaultCommentProvider:()=>e4,DefaultConfigurationProvider:()=>qb,DefaultDocumentBuilder:()=>Yb,DefaultDocumentValidator:()=>Vb,DefaultHydrator:()=>n4,DefaultIndexManager:()=>Xb,DefaultJsonSerializer:()=>Fb,DefaultLangiumDocumentFactory:()=>Db,DefaultLangiumDocuments:()=>Lb,DefaultLexer:()=>Kp,DefaultLexerErrorMessageProvider:()=>Kb,DefaultLinker:()=>Rb,DefaultNameProvider:()=>Nb,DefaultReferenceDescriptionProvider:()=>Hb,DefaultReferences:()=>Mb,DefaultScopeComputation:()=>Ib,DefaultScopeProvider:()=>Bb,DefaultServiceRegistry:()=>$b,DefaultTokenBuilder:()=>Zu,DefaultValueConverter:()=>qp,DefaultWorkspaceLock:()=>r4,DefaultWorkspaceManager:()=>jb,Deferred:()=>ms,Disposable:()=>Pf,DisposableCache:()=>H1,DocumentCache:()=>WS,DocumentState:()=>Cn,DocumentValidator:()=>rl,EMPTY_SCOPE:()=>tXe,EMPTY_STREAM:()=>Rx,EmptyFileSystem:()=>ka,EmptyFileSystemProvider:()=>n6,ErrorWithLocation:()=>Ap,GrammarAST:()=>Gx,GrammarUtils:()=>zE,IndentationAwareLexer:()=>gP,IndentationAwareTokenBuilder:()=>r6,JSDocDocumentationProvider:()=>Jb,LangiumCompletionParser:()=>Cb,LangiumParser:()=>Sb,LangiumParserErrorMessageProvider:()=>P1,LeafCstNodeImpl:()=>Up,LexingMode:()=>Qp,MapScope:()=>Ob,Module:()=>dP,MultiMap:()=>Vl,OperationCancelled:()=>Yc,ParserWorker:()=>lP,Reduction:()=>gg,RegExpUtils:()=>$E,RootCstNodeImpl:()=>O1,SimpleCache:()=>Pb,StreamImpl:()=>fo,StreamScope:()=>U1,TextDocument:()=>$1,TreeStreamImpl:()=>$c,URI:()=>gs,UriUtils:()=>ys,ValidationCategory:()=>q1,ValidationRegistry:()=>Gb,ValueConverter:()=>qc,WorkspaceCache:()=>W1,assertUnreachable:()=>zc,createCompletionParser:()=>vO,createDefaultCoreModule:()=>Ta,createDefaultSharedCoreModule:()=>wa,createGrammarConfig:()=>fI,createLangiumParser:()=>bO,createParser:()=>_b,delayNextTick:()=>RO,diagnosticData:()=>jp,eagerLoad:()=>Jde,getDiagnosticRange:()=>Vde,indentationBuilderDefaultOptions:()=>mP,inject:()=>Hn,interruptAndCheck:()=>Ti,isAstNode:()=>ci,isAstNodeDescription:()=>TM,isAstNodeWithComment:()=>zO,isCompositeCstNode:()=>Ol,isIMultiModeLexerDefinition:()=>ZO,isJSDoc:()=>rP,isLeafCstNode:()=>Df,isLinkingError:()=>Ep,isNamed:()=>Gde,isOperationCancelled:()=>Xc,isReference:()=>ba,isRootCstNode:()=>Lx,isTokenTypeArray:()=>QS,isTokenTypeDictionary:()=>QO,loadGrammarFromJson:()=>Kc,parseJSDoc:()=>tP,prepareLangiumParser:()=>Ade,setInterruptionPeriod:()=>Ide,startCancelableOperation:()=>US,stream:()=>en,toDiagnosticData:()=>Ude,toDiagnosticSeverity:()=>XS});var yo=N(()=>{"use strict";fP();pP();VO();tpe();Pl();rpe();ipe();ope();lpe();cpe();hpe();Sr(Ea,Ur);fpe();dpe();Vc()});function Tpe(t){return Ul.isInstance(t,i4)}function wpe(t){return Ul.isInstance(t,Y1)}function kpe(t){return Ul.isInstance(t,X1)}function Epe(t){return Ul.isInstance(t,j1)}function Spe(t){return Ul.isInstance(t,a4)}function Cpe(t){return Ul.isInstance(t,K1)}function Ape(t){return Ul.isInstance(t,s4)}function _pe(t){return Ul.isInstance(t,o4)}function Dpe(t){return Ul.isInstance(t,l4)}function Lpe(t){return Ul.isInstance(t,c4)}function Rpe(t){return Ul.isInstance(t,u4)}var yXe,xt,AP,i4,i6,Y1,a6,s6,vP,X1,xP,bP,TP,j1,wP,a4,o6,kP,K1,EP,s4,o4,l4,c4,h6,SP,u4,CP,l6,c6,u6,Npe,Ul,ppe,vXe,mpe,xXe,gpe,bXe,ype,TXe,vpe,wXe,xpe,kXe,bpe,EXe,SXe,CXe,AXe,_Xe,DXe,LXe,RXe,vs,_P,DP,LP,RP,NP,MP,IP,NXe,MXe,IXe,OXe,Bf,Ju,Ha,PXe,Wa=N(()=>{"use strict";yo();yo();yo();yo();yXe=Object.defineProperty,xt=o((t,e)=>yXe(t,"name",{value:e,configurable:!0}),"__name"),AP="Statement",i4="Architecture";o(Tpe,"isArchitecture");xt(Tpe,"isArchitecture");i6="Axis",Y1="Branch";o(wpe,"isBranch");xt(wpe,"isBranch");a6="Checkout",s6="CherryPicking",vP="ClassDefStatement",X1="Commit";o(kpe,"isCommit");xt(kpe,"isCommit");xP="Curve",bP="Edge",TP="Entry",j1="GitGraph";o(Epe,"isGitGraph");xt(Epe,"isGitGraph");wP="Group",a4="Info";o(Spe,"isInfo");xt(Spe,"isInfo");o6="Item",kP="Junction",K1="Merge";o(Cpe,"isMerge");xt(Cpe,"isMerge");EP="Option",s4="Packet";o(Ape,"isPacket");xt(Ape,"isPacket");o4="PacketBlock";o(_pe,"isPacketBlock");xt(_pe,"isPacketBlock");l4="Pie";o(Dpe,"isPie");xt(Dpe,"isPie");c4="PieSection";o(Lpe,"isPieSection");xt(Lpe,"isPieSection");h6="Radar",SP="Service",u4="Treemap";o(Rpe,"isTreemap");xt(Rpe,"isTreemap");CP="TreemapRow",l6="Direction",c6="Leaf",u6="Section",Npe=class extends kp{static{o(this,"MermaidAstReflection")}static{xt(this,"MermaidAstReflection")}getAllTypes(){return[i4,i6,Y1,a6,s6,vP,X1,xP,l6,bP,TP,j1,wP,a4,o6,kP,c6,K1,EP,s4,o4,l4,c4,h6,u6,SP,AP,u4,CP]}computeIsSubtype(t,e){switch(t){case Y1:case a6:case s6:case X1:case K1:return this.isSubtype(AP,e);case l6:return this.isSubtype(j1,e);case c6:case u6:return this.isSubtype(o6,e);default:return!1}}getReferenceType(t){let e=`${t.container.$type}:${t.property}`;switch(e){case"Entry:axis":return i6;default:throw new Error(`${e} is not a valid reference id.`)}}getTypeMetaData(t){switch(t){case i4:return{name:i4,properties:[{name:"accDescr"},{name:"accTitle"},{name:"edges",defaultValue:[]},{name:"groups",defaultValue:[]},{name:"junctions",defaultValue:[]},{name:"services",defaultValue:[]},{name:"title"}]};case i6:return{name:i6,properties:[{name:"label"},{name:"name"}]};case Y1:return{name:Y1,properties:[{name:"name"},{name:"order"}]};case a6:return{name:a6,properties:[{name:"branch"}]};case s6:return{name:s6,properties:[{name:"id"},{name:"parent"},{name:"tags",defaultValue:[]}]};case vP:return{name:vP,properties:[{name:"className"},{name:"styleText"}]};case X1:return{name:X1,properties:[{name:"id"},{name:"message"},{name:"tags",defaultValue:[]},{name:"type"}]};case xP:return{name:xP,properties:[{name:"entries",defaultValue:[]},{name:"label"},{name:"name"}]};case bP:return{name:bP,properties:[{name:"lhsDir"},{name:"lhsGroup",defaultValue:!1},{name:"lhsId"},{name:"lhsInto",defaultValue:!1},{name:"rhsDir"},{name:"rhsGroup",defaultValue:!1},{name:"rhsId"},{name:"rhsInto",defaultValue:!1},{name:"title"}]};case TP:return{name:TP,properties:[{name:"axis"},{name:"value"}]};case j1:return{name:j1,properties:[{name:"accDescr"},{name:"accTitle"},{name:"statements",defaultValue:[]},{name:"title"}]};case wP:return{name:wP,properties:[{name:"icon"},{name:"id"},{name:"in"},{name:"title"}]};case a4:return{name:a4,properties:[{name:"accDescr"},{name:"accTitle"},{name:"title"}]};case o6:return{name:o6,properties:[{name:"classSelector"},{name:"name"}]};case kP:return{name:kP,properties:[{name:"id"},{name:"in"}]};case K1:return{name:K1,properties:[{name:"branch"},{name:"id"},{name:"tags",defaultValue:[]},{name:"type"}]};case EP:return{name:EP,properties:[{name:"name"},{name:"value",defaultValue:!1}]};case s4:return{name:s4,properties:[{name:"accDescr"},{name:"accTitle"},{name:"blocks",defaultValue:[]},{name:"title"}]};case o4:return{name:o4,properties:[{name:"bits"},{name:"end"},{name:"label"},{name:"start"}]};case l4:return{name:l4,properties:[{name:"accDescr"},{name:"accTitle"},{name:"sections",defaultValue:[]},{name:"showData",defaultValue:!1},{name:"title"}]};case c4:return{name:c4,properties:[{name:"label"},{name:"value"}]};case h6:return{name:h6,properties:[{name:"accDescr"},{name:"accTitle"},{name:"axes",defaultValue:[]},{name:"curves",defaultValue:[]},{name:"options",defaultValue:[]},{name:"title"}]};case SP:return{name:SP,properties:[{name:"icon"},{name:"iconText"},{name:"id"},{name:"in"},{name:"title"}]};case u4:return{name:u4,properties:[{name:"accDescr"},{name:"accTitle"},{name:"title"},{name:"TreemapRows",defaultValue:[]}]};case CP:return{name:CP,properties:[{name:"indent"},{name:"item"}]};case l6:return{name:l6,properties:[{name:"accDescr"},{name:"accTitle"},{name:"dir"},{name:"statements",defaultValue:[]},{name:"title"}]};case c6:return{name:c6,properties:[{name:"classSelector"},{name:"name"},{name:"value"}]};case u6:return{name:u6,properties:[{name:"classSelector"},{name:"name"}]};default:return{name:t,properties:[]}}}},Ul=new Npe,vXe=xt(()=>ppe??(ppe=Kc(`{"$type":"Grammar","isDeclared":true,"name":"Info","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Info","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"info"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"showInfo"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"?"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@7"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"InfoGrammar"),xXe=xt(()=>mpe??(mpe=Kc(`{"$type":"Grammar","isDeclared":true,"name":"Packet","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Packet","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"packet"},{"$type":"Keyword","value":"packet-beta"}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"PacketBlock","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"start","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"end","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}],"cardinality":"?"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"+"},{"$type":"Assignment","feature":"bits","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]}]},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@9"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"PacketGrammar"),bXe=xt(()=>gpe??(gpe=Kc(`{"$type":"Grammar","isDeclared":true,"name":"Pie","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Pie","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"pie"},{"$type":"Assignment","feature":"showData","operator":"?=","terminal":{"$type":"Keyword","value":"showData"},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"PieSection","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"FLOAT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?(0|[1-9][0-9]*)(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@2"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@3"}}]},"fragment":false,"hidden":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"PieGrammar"),TXe=xt(()=>ype??(ype=Kc(`{"$type":"Grammar","isDeclared":true,"name":"Architecture","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Architecture","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"groups","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"services","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"junctions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"edges","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"LeftPort","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"RightPort","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Arrow","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Assignment","feature":"lhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"--"},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"}}]},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"}}]},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/"},"fragment":false,"hidden":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@18"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@19"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[[\\\\w ]+\\\\]/"},"fragment":false,"hidden":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"ArchitectureGrammar"),wXe=xt(()=>vpe??(vpe=Kc(`{"$type":"Grammar","isDeclared":true,"name":"GitGraph","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"GitGraph","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Keyword","value":":"}]},{"$type":"Keyword","value":"gitGraph:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Keyword","value":":"}]}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"Assignment","feature":"statements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Direction","definition":{"$type":"Assignment","feature":"dir","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"LR"},{"$type":"Keyword","value":"TB"},{"$type":"Keyword","value":"BT"}]}},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Commit","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"commit"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"msg:","cardinality":"?"},{"$type":"Assignment","feature":"message","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Branch","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"branch"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"order:"},{"$type":"Assignment","feature":"order","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Merge","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"merge"},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Checkout","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"checkout"},{"$type":"Keyword","value":"switch"}]},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"CherryPicking","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"cherry-pick"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"parent:"},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@14"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false},{"$type":"TerminalRule","name":"REFERENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\w([-\\\\./\\\\w]*[-\\\\w])?/"},"fragment":false,"hidden":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[],"types":[],"usedGrammars":[]}`)),"GitGraphGrammar"),kXe=xt(()=>xpe??(xpe=Kc(`{"$type":"Grammar","isDeclared":true,"name":"Radar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Radar","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":"radar-beta:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":":"}]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},{"$type":"Group","elements":[{"$type":"Keyword","value":"axis"},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"curve"},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Label","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Axis","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Curve","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Keyword","value":"}"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"Entries","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"DetailedEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"axis","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@2"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},"deprecatedSyntax":false}},{"$type":"Keyword","value":":","cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"NumberEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Option","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"showLegend"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"ticks"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"max"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"min"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"graticule"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"GRATICULE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"circle"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"polygon"}}]},"fragment":false,"hidden":false},{"$type":"ParserRule","fragment":true,"name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"}},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@16"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"interfaces":[{"$type":"Interface","name":"Entry","attributes":[{"$type":"TypeAttribute","name":"axis","isOptional":true,"type":{"$type":"ReferenceType","referenceType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@2"}}}},{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}],"superTypes":[]}],"definesHiddenTokens":false,"hiddenTokens":[],"types":[],"usedGrammars":[]}`)),"RadarGrammar"),EXe=xt(()=>bpe??(bpe=Kc(`{"$type":"Grammar","isDeclared":true,"name":"Treemap","rules":[{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"Treemap","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]},{"$type":"Assignment","feature":"TreemapRows","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}],"cardinality":"*"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"TREEMAP_KEYWORD","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap-beta"}},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap"}}]},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"CLASS_DEF","definition":{"$type":"RegexToken","regex":"/classDef\\\\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\\\\s+([^;\\\\r\\\\n]*))?(?:;)?/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STYLE_SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":::"}},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":"}},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"COMMA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":","}},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false},{"$type":"ParserRule","name":"TreemapRow","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"item","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"ClassDef","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Item","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Section","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"Leaf","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID2","definition":{"$type":"RegexToken","regex":"/[a-zA-Z_][a-zA-Z0-9_]*/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER2","definition":{"$type":"RegexToken","regex":"/[0-9_\\\\.\\\\,]+/"},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"MyNumber","dataType":"number","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"STRING2","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|'[^']*'/"},"fragment":false,"hidden":false}],"interfaces":[{"$type":"Interface","name":"Item","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"classSelector","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"Section","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[]},{"$type":"Interface","name":"Leaf","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}]},{"$type":"Interface","name":"ClassDefStatement","attributes":[{"$type":"TypeAttribute","name":"className","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"styleText","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"Treemap","attributes":[{"$type":"TypeAttribute","name":"TreemapRows","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@14"}}},"isOptional":false},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"definesHiddenTokens":false,"hiddenTokens":[],"imports":[],"types":[],"usedGrammars":[],"$comment":"/**\\n * Treemap grammar for Langium\\n * Converted from mindmap grammar\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treemap keyword, allowing for empty lines and comments before the\\n * treemap declaration.\\n */"}`)),"TreemapGrammar"),SXe={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},CXe={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},AXe={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},_Xe={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},DXe={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},LXe={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},RXe={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},vs={AstReflection:xt(()=>new Npe,"AstReflection")},_P={Grammar:xt(()=>vXe(),"Grammar"),LanguageMetaData:xt(()=>SXe,"LanguageMetaData"),parser:{}},DP={Grammar:xt(()=>xXe(),"Grammar"),LanguageMetaData:xt(()=>CXe,"LanguageMetaData"),parser:{}},LP={Grammar:xt(()=>bXe(),"Grammar"),LanguageMetaData:xt(()=>AXe,"LanguageMetaData"),parser:{}},RP={Grammar:xt(()=>TXe(),"Grammar"),LanguageMetaData:xt(()=>_Xe,"LanguageMetaData"),parser:{}},NP={Grammar:xt(()=>wXe(),"Grammar"),LanguageMetaData:xt(()=>DXe,"LanguageMetaData"),parser:{}},MP={Grammar:xt(()=>kXe(),"Grammar"),LanguageMetaData:xt(()=>LXe,"LanguageMetaData"),parser:{}},IP={Grammar:xt(()=>EXe(),"Grammar"),LanguageMetaData:xt(()=>RXe,"LanguageMetaData"),parser:{}},NXe=/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,MXe=/accTitle[\t ]*:([^\n\r]*)/,IXe=/title([\t ][^\n\r]*|)/,OXe={ACC_DESCR:NXe,ACC_TITLE:MXe,TITLE:IXe},Bf=class extends qp{static{o(this,"AbstractMermaidValueConverter")}static{xt(this,"AbstractMermaidValueConverter")}runConverter(t,e,r){let n=this.runCommonConverter(t,e,r);return n===void 0&&(n=this.runCustomConverter(t,e,r)),n===void 0?super.runConverter(t,e,r):n}runCommonConverter(t,e,r){let n=OXe[t.name];if(n===void 0)return;let i=n.exec(e);if(i!==null){if(i[1]!==void 0)return i[1].trim().replace(/[\t ]{2,}/gm," ");if(i[2]!==void 0)return i[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,`
|
||
`)}}},Ju=class extends Bf{static{o(this,"CommonValueConverter")}static{xt(this,"CommonValueConverter")}runCustomConverter(t,e,r){}},Ha=class extends Zu{static{o(this,"AbstractMermaidTokenBuilder")}static{xt(this,"AbstractMermaidTokenBuilder")}constructor(t){super(),this.keywords=new Set(t)}buildKeywordTokens(t,e,r){let n=super.buildKeywordTokens(t,e,r);return n.forEach(i=>{this.keywords.has(i.name)&&i.PATTERN!==void 0&&(i.PATTERN=new RegExp(i.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),n}},PXe=class extends Ha{static{o(this,"CommonTokenBuilder")}static{xt(this,"CommonTokenBuilder")}}});function d6(t=ka){let e=Hn(wa(t),vs),r=Hn(Ta({shared:e}),NP,f6);return e.ServiceRegistry.register(r),{shared:e,GitGraph:r}}var BXe,f6,OP=N(()=>{"use strict";Wa();yo();BXe=class extends Ha{static{o(this,"GitGraphTokenBuilder")}static{xt(this,"GitGraphTokenBuilder")}constructor(){super(["gitGraph"])}},f6={parser:{TokenBuilder:xt(()=>new BXe,"TokenBuilder"),ValueConverter:xt(()=>new Ju,"ValueConverter")}};o(d6,"createGitGraphServices");xt(d6,"createGitGraphServices")});function m6(t=ka){let e=Hn(wa(t),vs),r=Hn(Ta({shared:e}),_P,p6);return e.ServiceRegistry.register(r),{shared:e,Info:r}}var FXe,p6,PP=N(()=>{"use strict";Wa();yo();FXe=class extends Ha{static{o(this,"InfoTokenBuilder")}static{xt(this,"InfoTokenBuilder")}constructor(){super(["info","showInfo"])}},p6={parser:{TokenBuilder:xt(()=>new FXe,"TokenBuilder"),ValueConverter:xt(()=>new Ju,"ValueConverter")}};o(m6,"createInfoServices");xt(m6,"createInfoServices")});function y6(t=ka){let e=Hn(wa(t),vs),r=Hn(Ta({shared:e}),DP,g6);return e.ServiceRegistry.register(r),{shared:e,Packet:r}}var $Xe,g6,BP=N(()=>{"use strict";Wa();yo();$Xe=class extends Ha{static{o(this,"PacketTokenBuilder")}static{xt(this,"PacketTokenBuilder")}constructor(){super(["packet"])}},g6={parser:{TokenBuilder:xt(()=>new $Xe,"TokenBuilder"),ValueConverter:xt(()=>new Ju,"ValueConverter")}};o(y6,"createPacketServices");xt(y6,"createPacketServices")});function x6(t=ka){let e=Hn(wa(t),vs),r=Hn(Ta({shared:e}),LP,v6);return e.ServiceRegistry.register(r),{shared:e,Pie:r}}var GXe,zXe,v6,FP=N(()=>{"use strict";Wa();yo();GXe=class extends Ha{static{o(this,"PieTokenBuilder")}static{xt(this,"PieTokenBuilder")}constructor(){super(["pie","showData"])}},zXe=class extends Bf{static{o(this,"PieValueConverter")}static{xt(this,"PieValueConverter")}runCustomConverter(t,e,r){if(t.name==="PIE_SECTION_LABEL")return e.replace(/"/g,"").trim()}},v6={parser:{TokenBuilder:xt(()=>new GXe,"TokenBuilder"),ValueConverter:xt(()=>new zXe,"ValueConverter")}};o(x6,"createPieServices");xt(x6,"createPieServices")});function T6(t=ka){let e=Hn(wa(t),vs),r=Hn(Ta({shared:e}),RP,b6);return e.ServiceRegistry.register(r),{shared:e,Architecture:r}}var VXe,UXe,b6,$P=N(()=>{"use strict";Wa();yo();VXe=class extends Ha{static{o(this,"ArchitectureTokenBuilder")}static{xt(this,"ArchitectureTokenBuilder")}constructor(){super(["architecture"])}},UXe=class extends Bf{static{o(this,"ArchitectureValueConverter")}static{xt(this,"ArchitectureValueConverter")}runCustomConverter(t,e,r){if(t.name==="ARCH_ICON")return e.replace(/[()]/g,"").trim();if(t.name==="ARCH_TEXT_ICON")return e.replace(/["()]/g,"");if(t.name==="ARCH_TITLE")return e.replace(/[[\]]/g,"").trim()}},b6={parser:{TokenBuilder:xt(()=>new VXe,"TokenBuilder"),ValueConverter:xt(()=>new UXe,"ValueConverter")}};o(T6,"createArchitectureServices");xt(T6,"createArchitectureServices")});function k6(t=ka){let e=Hn(wa(t),vs),r=Hn(Ta({shared:e}),MP,w6);return e.ServiceRegistry.register(r),{shared:e,Radar:r}}var HXe,w6,GP=N(()=>{"use strict";Wa();yo();HXe=class extends Ha{static{o(this,"RadarTokenBuilder")}static{xt(this,"RadarTokenBuilder")}constructor(){super(["radar-beta"])}},w6={parser:{TokenBuilder:xt(()=>new HXe,"TokenBuilder"),ValueConverter:xt(()=>new Ju,"ValueConverter")}};o(k6,"createRadarServices");xt(k6,"createRadarServices")});function Mpe(t){let e=t.validation.TreemapValidator,r=t.validation.ValidationRegistry;if(r){let n={Treemap:e.checkSingleRoot.bind(e)};r.register(n,e)}}function S6(t=ka){let e=Hn(wa(t),vs),r=Hn(Ta({shared:e}),IP,E6);return e.ServiceRegistry.register(r),Mpe(r),{shared:e,Treemap:r}}var WXe,qXe,YXe,XXe,E6,zP=N(()=>{"use strict";Wa();yo();WXe=class extends Ha{static{o(this,"TreemapTokenBuilder")}static{xt(this,"TreemapTokenBuilder")}constructor(){super(["treemap"])}},qXe=/classDef\s+([A-Z_a-z]\w+)(?:\s+([^\n\r;]*))?;?/,YXe=class extends Bf{static{o(this,"TreemapValueConverter")}static{xt(this,"TreemapValueConverter")}runCustomConverter(t,e,r){if(t.name==="NUMBER2")return parseFloat(e.replace(/,/g,""));if(t.name==="SEPARATOR")return e.substring(1,e.length-1);if(t.name==="STRING2")return e.substring(1,e.length-1);if(t.name==="INDENTATION")return e.length;if(t.name==="ClassDef"){if(typeof e!="string")return e;let n=qXe.exec(e);if(n)return{$type:"ClassDefStatement",className:n[1],styleText:n[2]||void 0}}}};o(Mpe,"registerValidationChecks");xt(Mpe,"registerValidationChecks");XXe=class{static{o(this,"TreemapValidator")}static{xt(this,"TreemapValidator")}checkSingleRoot(t,e){let r;for(let n of t.TreemapRows)n.item&&(r===void 0&&n.indent===void 0?r=0:n.indent===void 0?e("error","Multiple root nodes are not allowed in a treemap.",{node:n,property:"item"}):r!==void 0&&r>=parseInt(n.indent,10)&&e("error","Multiple root nodes are not allowed in a treemap.",{node:n,property:"item"}))}},E6={parser:{TokenBuilder:xt(()=>new WXe,"TokenBuilder"),ValueConverter:xt(()=>new YXe,"ValueConverter")},validation:{TreemapValidator:xt(()=>new XXe,"TreemapValidator")}};o(S6,"createTreemapServices");xt(S6,"createTreemapServices")});var Ipe={};ur(Ipe,{InfoModule:()=>p6,createInfoServices:()=>m6});var Ope=N(()=>{"use strict";PP();Wa()});var Ppe={};ur(Ppe,{PacketModule:()=>g6,createPacketServices:()=>y6});var Bpe=N(()=>{"use strict";BP();Wa()});var Fpe={};ur(Fpe,{PieModule:()=>v6,createPieServices:()=>x6});var $pe=N(()=>{"use strict";FP();Wa()});var Gpe={};ur(Gpe,{ArchitectureModule:()=>b6,createArchitectureServices:()=>T6});var zpe=N(()=>{"use strict";$P();Wa()});var Vpe={};ur(Vpe,{GitGraphModule:()=>f6,createGitGraphServices:()=>d6});var Upe=N(()=>{"use strict";OP();Wa()});var Hpe={};ur(Hpe,{RadarModule:()=>w6,createRadarServices:()=>k6});var Wpe=N(()=>{"use strict";GP();Wa()});var qpe={};ur(qpe,{TreemapModule:()=>E6,createTreemapServices:()=>S6});var Ype=N(()=>{"use strict";zP();Wa()});async function xs(t,e){let r=jXe[t];if(!r)throw new Error(`Unknown diagram type: ${t}`);eh[t]||await r();let i=eh[t].parse(e);if(i.lexerErrors.length>0||i.parserErrors.length>0)throw new KXe(i);return i.value}var eh,jXe,KXe,Ff=N(()=>{"use strict";OP();PP();BP();FP();$P();GP();zP();Wa();eh={},jXe={info:xt(async()=>{let{createInfoServices:t}=await Promise.resolve().then(()=>(Ope(),Ipe)),e=t().Info.parser.LangiumParser;eh.info=e},"info"),packet:xt(async()=>{let{createPacketServices:t}=await Promise.resolve().then(()=>(Bpe(),Ppe)),e=t().Packet.parser.LangiumParser;eh.packet=e},"packet"),pie:xt(async()=>{let{createPieServices:t}=await Promise.resolve().then(()=>($pe(),Fpe)),e=t().Pie.parser.LangiumParser;eh.pie=e},"pie"),architecture:xt(async()=>{let{createArchitectureServices:t}=await Promise.resolve().then(()=>(zpe(),Gpe)),e=t().Architecture.parser.LangiumParser;eh.architecture=e},"architecture"),gitGraph:xt(async()=>{let{createGitGraphServices:t}=await Promise.resolve().then(()=>(Upe(),Vpe)),e=t().GitGraph.parser.LangiumParser;eh.gitGraph=e},"gitGraph"),radar:xt(async()=>{let{createRadarServices:t}=await Promise.resolve().then(()=>(Wpe(),Hpe)),e=t().Radar.parser.LangiumParser;eh.radar=e},"radar"),treemap:xt(async()=>{let{createTreemapServices:t}=await Promise.resolve().then(()=>(Ype(),qpe)),e=t().Treemap.parser.LangiumParser;eh.treemap=e},"treemap")};o(xs,"parse");xt(xs,"parse");KXe=class extends Error{static{o(this,"MermaidParseError")}constructor(t){let e=t.lexerErrors.map(n=>n.message).join(`
|
||
`),r=t.parserErrors.map(n=>n.message).join(`
|
||
`);super(`Parsing failed: ${e} ${r}`),this.result=t}static{xt(this,"MermaidParseError")}}});function nl(t,e){t.accDescr&&e.setAccDescription?.(t.accDescr),t.accTitle&&e.setAccTitle?.(t.accTitle),t.title&&e.setDiagramTitle?.(t.title)}var Zp=N(()=>{"use strict";o(nl,"populateCommonDb")});var Qr,C6=N(()=>{"use strict";Qr={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4}});var Q1,VP=N(()=>{"use strict";Q1=class{constructor(e){this.init=e;this.records=this.init()}static{o(this,"ImperativeState")}reset(){this.records=this.init()}}});function UP(){return PL({length:7})}function ZXe(t,e){let r=Object.create(null);return t.reduce((n,i)=>{let a=e(i);return r[a]||(r[a]=!0,n.push(i)),n},[])}function Xpe(t,e,r){let n=t.indexOf(e);n===-1?t.push(r):t.splice(n,1,r)}function Kpe(t){let e=t.reduce((i,a)=>i.seq>a.seq?i:a,t[0]),r="";t.forEach(function(i){i===e?r+=" *":r+=" |"});let n=[r,e.id,e.seq];for(let i in _t.records.branches)_t.records.branches.get(i)===e.id&&n.push(i);if(X.debug(n.join(" ")),e.parents&&e.parents.length==2&&e.parents[0]&&e.parents[1]){let i=_t.records.commits.get(e.parents[0]);Xpe(t,e,i),e.parents[1]&&t.push(_t.records.commits.get(e.parents[1]))}else{if(e.parents.length==0)return;if(e.parents[0]){let i=_t.records.commits.get(e.parents[0]);Xpe(t,e,i)}}t=ZXe(t,i=>i.id),Kpe(t)}var QXe,Jp,_t,JXe,eje,tje,rje,nje,ije,aje,jpe,sje,oje,lje,cje,uje,Qpe,hje,fje,dje,A6,HP=N(()=>{"use strict";pt();tr();Wn();dr();ui();C6();VP();_a();QXe=lr.gitGraph,Jp=o(()=>Vn({...QXe,...Qt().gitGraph}),"getConfig"),_t=new Q1(()=>{let t=Jp(),e=t.mainBranchName,r=t.mainBranchOrder;return{mainBranchName:e,commits:new Map,head:null,branchConfig:new Map([[e,{name:e,order:r}]]),branches:new Map([[e,null]]),currBranch:e,direction:"LR",seq:0,options:{}}});o(UP,"getID");o(ZXe,"uniqBy");JXe=o(function(t){_t.records.direction=t},"setDirection"),eje=o(function(t){X.debug("options str",t),t=t?.trim(),t=t||"{}";try{_t.records.options=JSON.parse(t)}catch(e){X.error("error while parsing gitGraph options",e.message)}},"setOptions"),tje=o(function(){return _t.records.options},"getOptions"),rje=o(function(t){let e=t.msg,r=t.id,n=t.type,i=t.tags;X.info("commit",e,r,n,i),X.debug("Entering commit:",e,r,n,i);let a=Jp();r=Je.sanitizeText(r,a),e=Je.sanitizeText(e,a),i=i?.map(l=>Je.sanitizeText(l,a));let s={id:r||_t.records.seq+"-"+UP(),message:e,seq:_t.records.seq++,type:n??Qr.NORMAL,tags:i??[],parents:_t.records.head==null?[]:[_t.records.head.id],branch:_t.records.currBranch};_t.records.head=s,X.info("main branch",a.mainBranchName),_t.records.commits.has(s.id)&&X.warn(`Commit ID ${s.id} already exists`),_t.records.commits.set(s.id,s),_t.records.branches.set(_t.records.currBranch,s.id),X.debug("in pushCommit "+s.id)},"commit"),nje=o(function(t){let e=t.name,r=t.order;if(e=Je.sanitizeText(e,Jp()),_t.records.branches.has(e))throw 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 ${e}")`);_t.records.branches.set(e,_t.records.head!=null?_t.records.head.id:null),_t.records.branchConfig.set(e,{name:e,order:r}),jpe(e),X.debug("in createBranch")},"branch"),ije=o(t=>{let e=t.branch,r=t.id,n=t.type,i=t.tags,a=Jp();e=Je.sanitizeText(e,a),r&&(r=Je.sanitizeText(r,a));let s=_t.records.branches.get(_t.records.currBranch),l=_t.records.branches.get(e),u=s?_t.records.commits.get(s):void 0,h=l?_t.records.commits.get(l):void 0;if(u&&h&&u.branch===e)throw new Error(`Cannot merge branch '${e}' into itself.`);if(_t.records.currBranch===e){let p=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["branch abc"]},p}if(u===void 0||!u){let p=new Error(`Incorrect usage of "merge". Current branch (${_t.records.currBranch})has no commits`);throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["commit"]},p}if(!_t.records.branches.has(e)){let p=new Error('Incorrect usage of "merge". Branch to be merged ('+e+") does not exist");throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:[`branch ${e}`]},p}if(h===void 0||!h){let p=new Error('Incorrect usage of "merge". Branch to be merged ('+e+") has no commits");throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:['"commit"']},p}if(u===h){let p=new Error('Incorrect usage of "merge". Both branches have same head');throw p.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["branch abc"]},p}if(r&&_t.records.commits.has(r)){let p=new Error('Incorrect usage of "merge". Commit with id:'+r+" already exists, use different custom id");throw p.hash={text:`merge ${e} ${r} ${n} ${i?.join(" ")}`,token:`merge ${e} ${r} ${n} ${i?.join(" ")}`,expected:[`merge ${e} ${r}_UNIQUE ${n} ${i?.join(" ")}`]},p}let f=l||"",d={id:r||`${_t.records.seq}-${UP()}`,message:`merged branch ${e} into ${_t.records.currBranch}`,seq:_t.records.seq++,parents:_t.records.head==null?[]:[_t.records.head.id,f],branch:_t.records.currBranch,type:Qr.MERGE,customType:n,customId:!!r,tags:i??[]};_t.records.head=d,_t.records.commits.set(d.id,d),_t.records.branches.set(_t.records.currBranch,d.id),X.debug(_t.records.branches),X.debug("in mergeBranch")},"merge"),aje=o(function(t){let e=t.id,r=t.targetId,n=t.tags,i=t.parent;X.debug("Entering cherryPick:",e,r,n);let a=Jp();if(e=Je.sanitizeText(e,a),r=Je.sanitizeText(r,a),n=n?.map(u=>Je.sanitizeText(u,a)),i=Je.sanitizeText(i,a),!e||!_t.records.commits.has(e)){let u=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw u.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},u}let s=_t.records.commits.get(e);if(s===void 0||!s)throw new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');if(i&&!(Array.isArray(s.parents)&&s.parents.includes(i)))throw new Error("Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.");let l=s.branch;if(s.type===Qr.MERGE&&!i)throw new Error("Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.");if(!r||!_t.records.commits.has(r)){if(l===_t.records.currBranch){let d=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw d.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},d}let u=_t.records.branches.get(_t.records.currBranch);if(u===void 0||!u){let d=new Error(`Incorrect usage of "cherry-pick". Current branch (${_t.records.currBranch})has no commits`);throw d.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},d}let h=_t.records.commits.get(u);if(h===void 0||!h){let d=new Error(`Incorrect usage of "cherry-pick". Current branch (${_t.records.currBranch})has no commits`);throw d.hash={text:`cherryPick ${e} ${r}`,token:`cherryPick ${e} ${r}`,expected:["cherry-pick abc"]},d}let f={id:_t.records.seq+"-"+UP(),message:`cherry-picked ${s?.message} into ${_t.records.currBranch}`,seq:_t.records.seq++,parents:_t.records.head==null?[]:[_t.records.head.id,s.id],branch:_t.records.currBranch,type:Qr.CHERRY_PICK,tags:n?n.filter(Boolean):[`cherry-pick:${s.id}${s.type===Qr.MERGE?`|parent:${i}`:""}`]};_t.records.head=f,_t.records.commits.set(f.id,f),_t.records.branches.set(_t.records.currBranch,f.id),X.debug(_t.records.branches),X.debug("in cherryPick")}},"cherryPick"),jpe=o(function(t){if(t=Je.sanitizeText(t,Jp()),_t.records.branches.has(t)){_t.records.currBranch=t;let e=_t.records.branches.get(_t.records.currBranch);e===void 0||!e?_t.records.head=null:_t.records.head=_t.records.commits.get(e)??null}else{let e=new Error(`Trying to checkout branch which is not yet created. (Help try using "branch ${t}")`);throw e.hash={text:`checkout ${t}`,token:`checkout ${t}`,expected:[`branch ${t}`]},e}},"checkout");o(Xpe,"upsert");o(Kpe,"prettyPrintCommitHistory");sje=o(function(){X.debug(_t.records.commits);let t=Qpe()[0];Kpe([t])},"prettyPrint"),oje=o(function(){_t.reset(),wr()},"clear"),lje=o(function(){return[..._t.records.branchConfig.values()].map((e,r)=>e.order!==null&&e.order!==void 0?e:{...e,order:parseFloat(`0.${r}`)}).sort((e,r)=>(e.order??0)-(r.order??0)).map(({name:e})=>({name:e}))},"getBranchesAsObjArray"),cje=o(function(){return _t.records.branches},"getBranches"),uje=o(function(){return _t.records.commits},"getCommits"),Qpe=o(function(){let t=[..._t.records.commits.values()];return t.forEach(function(e){X.debug(e.id)}),t.sort((e,r)=>e.seq-r.seq),t},"getCommitsArray"),hje=o(function(){return _t.records.currBranch},"getCurrentBranch"),fje=o(function(){return _t.records.direction},"getDirection"),dje=o(function(){return _t.records.head},"getHead"),A6={commitType:Qr,getConfig:Jp,setDirection:JXe,setOptions:eje,getOptions:tje,commit:rje,branch:nje,merge:ije,cherryPick:aje,checkout:jpe,prettyPrint:sje,clear:oje,getBranchesAsObjArray:lje,getBranches:cje,getCommits:uje,getCommitsArray:Qpe,getCurrentBranch:hje,getDirection:fje,getHead:dje,setAccTitle:Cr,getAccTitle:_r,getAccDescription:Lr,setAccDescription:Dr,setDiagramTitle:Or,getDiagramTitle:Rr}});var pje,mje,gje,yje,vje,xje,bje,Zpe,Jpe=N(()=>{"use strict";Ff();pt();Zp();HP();C6();pje=o((t,e)=>{nl(t,e),t.dir&&e.setDirection(t.dir);for(let r of t.statements)mje(r,e)},"populate"),mje=o((t,e)=>{let n={Commit:o(i=>e.commit(gje(i)),"Commit"),Branch:o(i=>e.branch(yje(i)),"Branch"),Merge:o(i=>e.merge(vje(i)),"Merge"),Checkout:o(i=>e.checkout(xje(i)),"Checkout"),CherryPicking:o(i=>e.cherryPick(bje(i)),"CherryPicking")}[t.$type];n?n(t):X.error(`Unknown statement type: ${t.$type}`)},"parseStatement"),gje=o(t=>({id:t.id,msg:t.message??"",type:t.type!==void 0?Qr[t.type]:Qr.NORMAL,tags:t.tags??void 0}),"parseCommit"),yje=o(t=>({name:t.name,order:t.order??0}),"parseBranch"),vje=o(t=>({branch:t.branch,id:t.id??"",type:t.type!==void 0?Qr[t.type]:void 0,tags:t.tags??void 0}),"parseMerge"),xje=o(t=>t.branch,"parseCheckout"),bje=o(t=>({id:t.id,targetId:"",tags:t.tags?.length===0?void 0:t.tags,parent:t.parent}),"parseCherryPicking"),Zpe={parse:o(async t=>{let e=await xs("gitGraph",t);X.debug(e),pje(e,A6)},"parse")}});var Tje,il,Gf,zf,Qc,th,e0,Xs,js,_6,h4,D6,$f,Fr,wje,t0e,r0e,kje,Eje,Sje,Cje,Aje,_je,Dje,Lje,Rje,Nje,Mje,Ije,e0e,Oje,f4,Pje,Bje,Fje,$je,Gje,n0e,i0e=N(()=>{"use strict";pr();Xt();pt();tr();C6();Tje=ge(),il=Tje?.gitGraph,Gf=10,zf=40,Qc=4,th=2,e0=8,Xs=new Map,js=new Map,_6=30,h4=new Map,D6=[],$f=0,Fr="LR",wje=o(()=>{Xs.clear(),js.clear(),h4.clear(),$f=0,D6=[],Fr="LR"},"clear"),t0e=o(t=>{let e=document.createElementNS("http://www.w3.org/2000/svg","text");return(typeof t=="string"?t.split(/\\n|\n|<br\s*\/?>/gi):t).forEach(n=>{let i=document.createElementNS("http://www.w3.org/2000/svg","tspan");i.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),i.setAttribute("dy","1em"),i.setAttribute("x","0"),i.setAttribute("class","row"),i.textContent=n.trim(),e.appendChild(i)}),e},"drawText"),r0e=o(t=>{let e,r,n;return Fr==="BT"?(r=o((i,a)=>i<=a,"comparisonFunc"),n=1/0):(r=o((i,a)=>i>=a,"comparisonFunc"),n=0),t.forEach(i=>{let a=Fr==="TB"||Fr=="BT"?js.get(i)?.y:js.get(i)?.x;a!==void 0&&r(a,n)&&(e=i,n=a)}),e},"findClosestParent"),kje=o(t=>{let e="",r=1/0;return t.forEach(n=>{let i=js.get(n).y;i<=r&&(e=n,r=i)}),e||void 0},"findClosestParentBT"),Eje=o((t,e,r)=>{let n=r,i=r,a=[];t.forEach(s=>{let l=e.get(s);if(!l)throw new Error(`Commit not found for key ${s}`);l.parents.length?(n=Cje(l),i=Math.max(n,i)):a.push(l),Aje(l,n)}),n=i,a.forEach(s=>{_je(s,n,r)}),t.forEach(s=>{let l=e.get(s);if(l?.parents.length){let u=kje(l.parents);n=js.get(u).y-zf,n<=i&&(i=n);let h=Xs.get(l.branch).pos,f=n-Gf;js.set(l.id,{x:h,y:f})}})},"setParallelBTPos"),Sje=o(t=>{let e=r0e(t.parents.filter(n=>n!==null));if(!e)throw new Error(`Closest parent not found for commit ${t.id}`);let r=js.get(e)?.y;if(r===void 0)throw new Error(`Closest parent position not found for commit ${t.id}`);return r},"findClosestParentPos"),Cje=o(t=>Sje(t)+zf,"calculateCommitPosition"),Aje=o((t,e)=>{let r=Xs.get(t.branch);if(!r)throw new Error(`Branch not found for commit ${t.id}`);let n=r.pos,i=e+Gf;return js.set(t.id,{x:n,y:i}),{x:n,y:i}},"setCommitPosition"),_je=o((t,e,r)=>{let n=Xs.get(t.branch);if(!n)throw new Error(`Branch not found for commit ${t.id}`);let i=e+r,a=n.pos;js.set(t.id,{x:a,y:i})},"setRootPosition"),Dje=o((t,e,r,n,i,a)=>{if(a===Qr.HIGHLIGHT)t.append("rect").attr("x",r.x-10).attr("y",r.y-10).attr("width",20).attr("height",20).attr("class",`commit ${e.id} commit-highlight${i%e0} ${n}-outer`),t.append("rect").attr("x",r.x-6).attr("y",r.y-6).attr("width",12).attr("height",12).attr("class",`commit ${e.id} commit${i%e0} ${n}-inner`);else if(a===Qr.CHERRY_PICK)t.append("circle").attr("cx",r.x).attr("cy",r.y).attr("r",10).attr("class",`commit ${e.id} ${n}`),t.append("circle").attr("cx",r.x-3).attr("cy",r.y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${e.id} ${n}`),t.append("circle").attr("cx",r.x+3).attr("cy",r.y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${e.id} ${n}`),t.append("line").attr("x1",r.x+3).attr("y1",r.y+1).attr("x2",r.x).attr("y2",r.y-5).attr("stroke","#fff").attr("class",`commit ${e.id} ${n}`),t.append("line").attr("x1",r.x-3).attr("y1",r.y+1).attr("x2",r.x).attr("y2",r.y-5).attr("stroke","#fff").attr("class",`commit ${e.id} ${n}`);else{let s=t.append("circle");if(s.attr("cx",r.x),s.attr("cy",r.y),s.attr("r",e.type===Qr.MERGE?9:10),s.attr("class",`commit ${e.id} commit${i%e0}`),a===Qr.MERGE){let l=t.append("circle");l.attr("cx",r.x),l.attr("cy",r.y),l.attr("r",6),l.attr("class",`commit ${n} ${e.id} commit${i%e0}`)}a===Qr.REVERSE&&t.append("path").attr("d",`M ${r.x-5},${r.y-5}L${r.x+5},${r.y+5}M${r.x-5},${r.y+5}L${r.x+5},${r.y-5}`).attr("class",`commit ${n} ${e.id} commit${i%e0}`)}},"drawCommitBullet"),Lje=o((t,e,r,n)=>{if(e.type!==Qr.CHERRY_PICK&&(e.customId&&e.type===Qr.MERGE||e.type!==Qr.MERGE)&&il?.showCommitLabel){let i=t.append("g"),a=i.insert("rect").attr("class","commit-label-bkg"),s=i.append("text").attr("x",n).attr("y",r.y+25).attr("class","commit-label").text(e.id),l=s.node()?.getBBox();if(l&&(a.attr("x",r.posWithOffset-l.width/2-th).attr("y",r.y+13.5).attr("width",l.width+2*th).attr("height",l.height+2*th),Fr==="TB"||Fr==="BT"?(a.attr("x",r.x-(l.width+4*Qc+5)).attr("y",r.y-12),s.attr("x",r.x-(l.width+4*Qc)).attr("y",r.y+l.height-12)):s.attr("x",r.posWithOffset-l.width/2),il.rotateCommitLabel))if(Fr==="TB"||Fr==="BT")s.attr("transform","rotate(-45, "+r.x+", "+r.y+")"),a.attr("transform","rotate(-45, "+r.x+", "+r.y+")");else{let u=-7.5-(l.width+10)/25*9.5,h=10+l.width/25*8.5;i.attr("transform","translate("+u+", "+h+") rotate(-45, "+n+", "+r.y+")")}}},"drawCommitLabel"),Rje=o((t,e,r,n)=>{if(e.tags.length>0){let i=0,a=0,s=0,l=[];for(let u of e.tags.reverse()){let h=t.insert("polygon"),f=t.append("circle"),d=t.append("text").attr("y",r.y-16-i).attr("class","tag-label").text(u),p=d.node()?.getBBox();if(!p)throw new Error("Tag bbox not found");a=Math.max(a,p.width),s=Math.max(s,p.height),d.attr("x",r.posWithOffset-p.width/2),l.push({tag:d,hole:f,rect:h,yOffset:i}),i+=20}for(let{tag:u,hole:h,rect:f,yOffset:d}of l){let p=s/2,m=r.y-19.2-d;if(f.attr("class","tag-label-bkg").attr("points",`
|
||
${n-a/2-Qc/2},${m+th}
|
||
${n-a/2-Qc/2},${m-th}
|
||
${r.posWithOffset-a/2-Qc},${m-p-th}
|
||
${r.posWithOffset+a/2+Qc},${m-p-th}
|
||
${r.posWithOffset+a/2+Qc},${m+p+th}
|
||
${r.posWithOffset-a/2-Qc},${m+p+th}`),h.attr("cy",m).attr("cx",n-a/2+Qc/2).attr("r",1.5).attr("class","tag-hole"),Fr==="TB"||Fr==="BT"){let g=n+d;f.attr("class","tag-label-bkg").attr("points",`
|
||
${r.x},${g+2}
|
||
${r.x},${g-2}
|
||
${r.x+Gf},${g-p-2}
|
||
${r.x+Gf+a+4},${g-p-2}
|
||
${r.x+Gf+a+4},${g+p+2}
|
||
${r.x+Gf},${g+p+2}`).attr("transform","translate(12,12) rotate(45, "+r.x+","+n+")"),h.attr("cx",r.x+Qc/2).attr("cy",g).attr("transform","translate(12,12) rotate(45, "+r.x+","+n+")"),u.attr("x",r.x+5).attr("y",g+3).attr("transform","translate(14,14) rotate(45, "+r.x+","+n+")")}}}},"drawCommitTags"),Nje=o(t=>{switch(t.customType??t.type){case Qr.NORMAL:return"commit-normal";case Qr.REVERSE:return"commit-reverse";case Qr.HIGHLIGHT:return"commit-highlight";case Qr.MERGE:return"commit-merge";case Qr.CHERRY_PICK:return"commit-cherry-pick";default:return"commit-normal"}},"getCommitClassType"),Mje=o((t,e,r,n)=>{let i={x:0,y:0};if(t.parents.length>0){let a=r0e(t.parents);if(a){let s=n.get(a)??i;return e==="TB"?s.y+zf:e==="BT"?(n.get(t.id)??i).y-zf:s.x+zf}}else return e==="TB"?_6:e==="BT"?(n.get(t.id)??i).y-zf:0;return 0},"calculatePosition"),Ije=o((t,e,r)=>{let n=Fr==="BT"&&r?e:e+Gf,i=Fr==="TB"||Fr==="BT"?n:Xs.get(t.branch)?.pos,a=Fr==="TB"||Fr==="BT"?Xs.get(t.branch)?.pos:n;if(a===void 0||i===void 0)throw new Error(`Position were undefined for commit ${t.id}`);return{x:a,y:i,posWithOffset:n}},"getCommitPosition"),e0e=o((t,e,r)=>{if(!il)throw new Error("GitGraph config not found");let n=t.append("g").attr("class","commit-bullets"),i=t.append("g").attr("class","commit-labels"),a=Fr==="TB"||Fr==="BT"?_6:0,s=[...e.keys()],l=il?.parallelCommits??!1,u=o((f,d)=>{let p=e.get(f)?.seq,m=e.get(d)?.seq;return p!==void 0&&m!==void 0?p-m:0},"sortKeys"),h=s.sort(u);Fr==="BT"&&(l&&Eje(h,e,a),h=h.reverse()),h.forEach(f=>{let d=e.get(f);if(!d)throw new Error(`Commit not found for key ${f}`);l&&(a=Mje(d,Fr,a,js));let p=Ije(d,a,l);if(r){let m=Nje(d),g=d.customType??d.type,y=Xs.get(d.branch)?.index??0;Dje(n,d,p,m,y,g),Lje(i,d,p,a),Rje(i,d,p,a)}Fr==="TB"||Fr==="BT"?js.set(d.id,{x:p.x,y:p.posWithOffset}):js.set(d.id,{x:p.posWithOffset,y:p.y}),a=Fr==="BT"&&l?a+zf:a+zf+Gf,a>$f&&($f=a)})},"drawCommits"),Oje=o((t,e,r,n,i)=>{let s=(Fr==="TB"||Fr==="BT"?r.x<n.x:r.y<n.y)?e.branch:t.branch,l=o(h=>h.branch===s,"isOnBranchToGetCurve"),u=o(h=>h.seq>t.seq&&h.seq<e.seq,"isBetweenCommits");return[...i.values()].some(h=>u(h)&&l(h))},"shouldRerouteArrow"),f4=o((t,e,r=0)=>{let n=t+Math.abs(t-e)/2;if(r>5)return n;if(D6.every(s=>Math.abs(s-n)>=10))return D6.push(n),n;let a=Math.abs(t-e);return f4(t,e-a/5,r+1)},"findLane"),Pje=o((t,e,r,n)=>{let i=js.get(e.id),a=js.get(r.id);if(i===void 0||a===void 0)throw new Error(`Commit positions not found for commits ${e.id} and ${r.id}`);let s=Oje(e,r,i,a,n),l="",u="",h=0,f=0,d=Xs.get(r.branch)?.index;r.type===Qr.MERGE&&e.id!==r.parents[0]&&(d=Xs.get(e.branch)?.index);let p;if(s){l="A 10 10, 0, 0, 0,",u="A 10 10, 0, 0, 1,",h=10,f=10;let m=i.y<a.y?f4(i.y,a.y):f4(a.y,i.y),g=i.x<a.x?f4(i.x,a.x):f4(a.x,i.x);Fr==="TB"?i.x<a.x?p=`M ${i.x} ${i.y} L ${g-h} ${i.y} ${u} ${g} ${i.y+f} L ${g} ${a.y-h} ${l} ${g+f} ${a.y} L ${a.x} ${a.y}`:(d=Xs.get(e.branch)?.index,p=`M ${i.x} ${i.y} L ${g+h} ${i.y} ${l} ${g} ${i.y+f} L ${g} ${a.y-h} ${u} ${g-f} ${a.y} L ${a.x} ${a.y}`):Fr==="BT"?i.x<a.x?p=`M ${i.x} ${i.y} L ${g-h} ${i.y} ${l} ${g} ${i.y-f} L ${g} ${a.y+h} ${u} ${g+f} ${a.y} L ${a.x} ${a.y}`:(d=Xs.get(e.branch)?.index,p=`M ${i.x} ${i.y} L ${g+h} ${i.y} ${u} ${g} ${i.y-f} L ${g} ${a.y+h} ${l} ${g-f} ${a.y} L ${a.x} ${a.y}`):i.y<a.y?p=`M ${i.x} ${i.y} L ${i.x} ${m-h} ${l} ${i.x+f} ${m} L ${a.x-h} ${m} ${u} ${a.x} ${m+f} L ${a.x} ${a.y}`:(d=Xs.get(e.branch)?.index,p=`M ${i.x} ${i.y} L ${i.x} ${m+h} ${u} ${i.x+f} ${m} L ${a.x-h} ${m} ${l} ${a.x} ${m-f} L ${a.x} ${a.y}`)}else l="A 20 20, 0, 0, 0,",u="A 20 20, 0, 0, 1,",h=20,f=20,Fr==="TB"?(i.x<a.x&&(r.type===Qr.MERGE&&e.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${i.x} ${a.y-h} ${l} ${i.x+f} ${a.y} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${a.x-h} ${i.y} ${u} ${a.x} ${i.y+f} L ${a.x} ${a.y}`),i.x>a.x&&(l="A 20 20, 0, 0, 0,",u="A 20 20, 0, 0, 1,",h=20,f=20,r.type===Qr.MERGE&&e.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${i.x} ${a.y-h} ${u} ${i.x-f} ${a.y} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${a.x+h} ${i.y} ${l} ${a.x} ${i.y+f} L ${a.x} ${a.y}`),i.x===a.x&&(p=`M ${i.x} ${i.y} L ${a.x} ${a.y}`)):Fr==="BT"?(i.x<a.x&&(r.type===Qr.MERGE&&e.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${i.x} ${a.y+h} ${u} ${i.x+f} ${a.y} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${a.x-h} ${i.y} ${l} ${a.x} ${i.y-f} L ${a.x} ${a.y}`),i.x>a.x&&(l="A 20 20, 0, 0, 0,",u="A 20 20, 0, 0, 1,",h=20,f=20,r.type===Qr.MERGE&&e.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${i.x} ${a.y+h} ${l} ${i.x-f} ${a.y} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${a.x-h} ${i.y} ${l} ${a.x} ${i.y-f} L ${a.x} ${a.y}`),i.x===a.x&&(p=`M ${i.x} ${i.y} L ${a.x} ${a.y}`)):(i.y<a.y&&(r.type===Qr.MERGE&&e.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${a.x-h} ${i.y} ${u} ${a.x} ${i.y+f} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${i.x} ${a.y-h} ${l} ${i.x+f} ${a.y} L ${a.x} ${a.y}`),i.y>a.y&&(r.type===Qr.MERGE&&e.id!==r.parents[0]?p=`M ${i.x} ${i.y} L ${a.x-h} ${i.y} ${l} ${a.x} ${i.y-f} L ${a.x} ${a.y}`:p=`M ${i.x} ${i.y} L ${i.x} ${a.y+h} ${u} ${i.x+f} ${a.y} L ${a.x} ${a.y}`),i.y===a.y&&(p=`M ${i.x} ${i.y} L ${a.x} ${a.y}`));if(p===void 0)throw new Error("Line definition not found");t.append("path").attr("d",p).attr("class","arrow arrow"+d%e0)},"drawArrow"),Bje=o((t,e)=>{let r=t.append("g").attr("class","commit-arrows");[...e.keys()].forEach(n=>{let i=e.get(n);i.parents&&i.parents.length>0&&i.parents.forEach(a=>{Pje(r,e.get(a),i,e)})})},"drawArrows"),Fje=o((t,e)=>{let r=t.append("g");e.forEach((n,i)=>{let a=i%e0,s=Xs.get(n.name)?.pos;if(s===void 0)throw new Error(`Position not found for branch ${n.name}`);let l=r.append("line");l.attr("x1",0),l.attr("y1",s),l.attr("x2",$f),l.attr("y2",s),l.attr("class","branch branch"+a),Fr==="TB"?(l.attr("y1",_6),l.attr("x1",s),l.attr("y2",$f),l.attr("x2",s)):Fr==="BT"&&(l.attr("y1",$f),l.attr("x1",s),l.attr("y2",_6),l.attr("x2",s)),D6.push(s);let u=n.name,h=t0e(u),f=r.insert("rect"),p=r.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+a);p.node().appendChild(h);let m=h.getBBox();f.attr("class","branchLabelBkg label"+a).attr("rx",4).attr("ry",4).attr("x",-m.width-4-(il?.rotateCommitLabel===!0?30:0)).attr("y",-m.height/2+8).attr("width",m.width+18).attr("height",m.height+4),p.attr("transform","translate("+(-m.width-14-(il?.rotateCommitLabel===!0?30:0))+", "+(s-m.height/2-1)+")"),Fr==="TB"?(f.attr("x",s-m.width/2-10).attr("y",0),p.attr("transform","translate("+(s-m.width/2-5)+", 0)")):Fr==="BT"?(f.attr("x",s-m.width/2-10).attr("y",$f),p.attr("transform","translate("+(s-m.width/2-5)+", "+$f+")")):f.attr("transform","translate(-19, "+(s-m.height/2)+")")})},"drawBranches"),$je=o(function(t,e,r,n,i){return Xs.set(t,{pos:e,index:r}),e+=50+(i?40:0)+(Fr==="TB"||Fr==="BT"?n.width/2:0),e},"setBranchPosition"),Gje=o(function(t,e,r,n){if(wje(),X.debug("in gitgraph renderer",t+`
|
||
`,"id:",e,r),!il)throw new Error("GitGraph config not found");let i=il.rotateCommitLabel??!1,a=n.db;h4=a.getCommits();let s=a.getBranchesAsObjArray();Fr=a.getDirection();let l=ze(`[id="${e}"]`),u=0;s.forEach((h,f)=>{let d=t0e(h.name),p=l.append("g"),m=p.insert("g").attr("class","branchLabel"),g=m.insert("g").attr("class","label branch-label");g.node()?.appendChild(d);let y=d.getBBox();u=$je(h.name,u,f,y,i),g.remove(),m.remove(),p.remove()}),e0e(l,h4,!1),il.showBranches&&Fje(l,s),Bje(l,h4),e0e(l,h4,!0),Ht.insertTitle(l,"gitTitleText",il.titleTopMargin??0,a.getDiagramTitle()),NA(void 0,l,il.diagramPadding,il.useMaxWidth)},"draw"),n0e={draw:Gje}});var zje,a0e,s0e=N(()=>{"use strict";zje=o(t=>`
|
||
.commit-id,
|
||
.commit-msg,
|
||
.branch-label {
|
||
fill: lightgrey;
|
||
color: lightgrey;
|
||
font-family: 'trebuchet ms', verdana, arial, sans-serif;
|
||
font-family: var(--mermaid-font-family);
|
||
}
|
||
${[0,1,2,3,4,5,6,7].map(e=>`
|
||
.branch-label${e} { fill: ${t["gitBranchLabel"+e]}; }
|
||
.commit${e} { stroke: ${t["git"+e]}; fill: ${t["git"+e]}; }
|
||
.commit-highlight${e} { stroke: ${t["gitInv"+e]}; fill: ${t["gitInv"+e]}; }
|
||
.label${e} { fill: ${t["git"+e]}; }
|
||
.arrow${e} { stroke: ${t["git"+e]}; }
|
||
`).join(`
|
||
`)}
|
||
|
||
.branch {
|
||
stroke-width: 1;
|
||
stroke: ${t.lineColor};
|
||
stroke-dasharray: 2;
|
||
}
|
||
.commit-label { font-size: ${t.commitLabelFontSize}; fill: ${t.commitLabelColor};}
|
||
.commit-label-bkg { font-size: ${t.commitLabelFontSize}; fill: ${t.commitLabelBackground}; opacity: 0.5; }
|
||
.tag-label { font-size: ${t.tagLabelFontSize}; fill: ${t.tagLabelColor};}
|
||
.tag-label-bkg { fill: ${t.tagLabelBackground}; stroke: ${t.tagLabelBorder}; }
|
||
.tag-hole { fill: ${t.textColor}; }
|
||
|
||
.commit-merge {
|
||
stroke: ${t.primaryColor};
|
||
fill: ${t.primaryColor};
|
||
}
|
||
.commit-reverse {
|
||
stroke: ${t.primaryColor};
|
||
fill: ${t.primaryColor};
|
||
stroke-width: 3;
|
||
}
|
||
.commit-highlight-outer {
|
||
}
|
||
.commit-highlight-inner {
|
||
stroke: ${t.primaryColor};
|
||
fill: ${t.primaryColor};
|
||
}
|
||
|
||
.arrow { stroke-width: 8; stroke-linecap: round; fill: none}
|
||
.gitTitleText {
|
||
text-anchor: middle;
|
||
font-size: 18px;
|
||
fill: ${t.textColor};
|
||
}
|
||
`,"getStyles"),a0e=zje});var o0e={};ur(o0e,{diagram:()=>Vje});var Vje,l0e=N(()=>{"use strict";Jpe();HP();i0e();s0e();Vje={parser:Zpe,db:A6,renderer:n0e,styles:a0e}});var WP,h0e,f0e=N(()=>{"use strict";WP=function(){var t=o(function(L,C,I,M){for(I=I||{},M=L.length;M--;I[L[M]]=C);return I},"o"),e=[6,8,10,12,13,14,15,16,17,18,20,21,22,23,24,25,26,27,28,29,30,31,33,35,36,38,40],r=[1,26],n=[1,27],i=[1,28],a=[1,29],s=[1,30],l=[1,31],u=[1,32],h=[1,33],f=[1,34],d=[1,9],p=[1,10],m=[1,11],g=[1,12],y=[1,13],x=[1,14],v=[1,15],b=[1,16],T=[1,19],S=[1,20],w=[1,21],E=[1,22],_=[1,23],A=[1,25],D=[1,35],O={trace:o(function(){},"trace"),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,weekend:19,weekend_friday:20,weekend_saturday:21,dateFormat:22,inclusiveEndDates:23,topAxis:24,axisFormat:25,tickInterval:26,excludes:27,includes:28,todayMarker:29,title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,section:36,clickStatement:37,taskTxt:38,taskData:39,click:40,callbackname:41,callbackargs:42,href:43,clickStatementDebug:44,$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",20:"weekend_friday",21:"weekend_saturday",22:"dateFormat",23:"inclusiveEndDates",24:"topAxis",25:"axisFormat",26:"tickInterval",27:"excludes",28:"includes",29:"todayMarker",30:"title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"section",38:"taskTxt",39:"taskData",40:"click",41:"callbackname",42:"callbackargs",43:"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],[19,1],[19,1],[9,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],[37,2],[37,3],[37,3],[37,4],[37,3],[37,4],[37,2],[44,2],[44,3],[44,3],[44,4],[44,3],[44,4],[44,2]],performAction:o(function(C,I,M,P,B,F,G){var $=F.length-1;switch(B){case 1:return F[$-1];case 2:this.$=[];break;case 3:F[$-1].push(F[$]),this.$=F[$-1];break;case 4:case 5:this.$=F[$];break;case 6:case 7:this.$=[];break;case 8:P.setWeekday("monday");break;case 9:P.setWeekday("tuesday");break;case 10:P.setWeekday("wednesday");break;case 11:P.setWeekday("thursday");break;case 12:P.setWeekday("friday");break;case 13:P.setWeekday("saturday");break;case 14:P.setWeekday("sunday");break;case 15:P.setWeekend("friday");break;case 16:P.setWeekend("saturday");break;case 17:P.setDateFormat(F[$].substr(11)),this.$=F[$].substr(11);break;case 18:P.enableInclusiveEndDates(),this.$=F[$].substr(18);break;case 19:P.TopAxis(),this.$=F[$].substr(8);break;case 20:P.setAxisFormat(F[$].substr(11)),this.$=F[$].substr(11);break;case 21:P.setTickInterval(F[$].substr(13)),this.$=F[$].substr(13);break;case 22:P.setExcludes(F[$].substr(9)),this.$=F[$].substr(9);break;case 23:P.setIncludes(F[$].substr(9)),this.$=F[$].substr(9);break;case 24:P.setTodayMarker(F[$].substr(12)),this.$=F[$].substr(12);break;case 27:P.setDiagramTitle(F[$].substr(6)),this.$=F[$].substr(6);break;case 28:this.$=F[$].trim(),P.setAccTitle(this.$);break;case 29:case 30:this.$=F[$].trim(),P.setAccDescription(this.$);break;case 31:P.addSection(F[$].substr(8)),this.$=F[$].substr(8);break;case 33:P.addTask(F[$-1],F[$]),this.$="task";break;case 34:this.$=F[$-1],P.setClickEvent(F[$-1],F[$],null);break;case 35:this.$=F[$-2],P.setClickEvent(F[$-2],F[$-1],F[$]);break;case 36:this.$=F[$-2],P.setClickEvent(F[$-2],F[$-1],null),P.setLink(F[$-2],F[$]);break;case 37:this.$=F[$-3],P.setClickEvent(F[$-3],F[$-2],F[$-1]),P.setLink(F[$-3],F[$]);break;case 38:this.$=F[$-2],P.setClickEvent(F[$-2],F[$],null),P.setLink(F[$-2],F[$-1]);break;case 39:this.$=F[$-3],P.setClickEvent(F[$-3],F[$-1],F[$]),P.setLink(F[$-3],F[$-2]);break;case 40:this.$=F[$-1],P.setLink(F[$-1],F[$]);break;case 41:case 47:this.$=F[$-1]+" "+F[$];break;case 42:case 43:case 45:this.$=F[$-2]+" "+F[$-1]+" "+F[$];break;case 44:case 46:this.$=F[$-3]+" "+F[$-2]+" "+F[$-1]+" "+F[$];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:17,12:r,13:n,14:i,15:a,16:s,17:l,18:u,19:18,20:h,21:f,22:d,23:p,24:m,25:g,26:y,27:x,28:v,29:b,30:T,31:S,33:w,35:E,36:_,37:24,38:A,40:D},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:36,11:17,12:r,13:n,14:i,15:a,16:s,17:l,18:u,19:18,20:h,21:f,22:d,23:p,24:m,25:g,26:y,27:x,28:v,29:b,30:T,31:S,33:w,35:E,36:_,37:24,38:A,40:D},t(e,[2,5]),t(e,[2,6]),t(e,[2,17]),t(e,[2,18]),t(e,[2,19]),t(e,[2,20]),t(e,[2,21]),t(e,[2,22]),t(e,[2,23]),t(e,[2,24]),t(e,[2,25]),t(e,[2,26]),t(e,[2,27]),{32:[1,37]},{34:[1,38]},t(e,[2,30]),t(e,[2,31]),t(e,[2,32]),{39:[1,39]},t(e,[2,8]),t(e,[2,9]),t(e,[2,10]),t(e,[2,11]),t(e,[2,12]),t(e,[2,13]),t(e,[2,14]),t(e,[2,15]),t(e,[2,16]),{41:[1,40],43:[1,41]},t(e,[2,4]),t(e,[2,28]),t(e,[2,29]),t(e,[2,33]),t(e,[2,34],{42:[1,42],43:[1,43]}),t(e,[2,40],{41:[1,44]}),t(e,[2,35],{43:[1,45]}),t(e,[2,36]),t(e,[2,38],{42:[1,46]}),t(e,[2,37]),t(e,[2,39])],defaultActions:{},parseError:o(function(C,I){if(I.recoverable)this.trace(C);else{var M=new Error(C);throw M.hash=I,M}},"parseError"),parse:o(function(C){var I=this,M=[0],P=[],B=[null],F=[],G=this.table,$="",U=0,K=0,ne=0,j=2,le=1,Z=F.slice.call(arguments,1),ce=Object.create(this.lexer),Q={yy:{}};for(var ee in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ee)&&(Q.yy[ee]=this.yy[ee]);ce.setInput(C,Q.yy),Q.yy.lexer=ce,Q.yy.parser=this,typeof ce.yylloc>"u"&&(ce.yylloc={});var te=ce.yylloc;F.push(te);var re=ce.options&&ce.options.ranges;typeof Q.yy.parseError=="function"?this.parseError=Q.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function he(q){M.length=M.length-2*q,B.length=B.length-q,F.length=F.length-q}o(he,"popStack");function J(){var q;return q=P.pop()||ce.lex()||le,typeof q!="number"&&(q instanceof Array&&(P=q,q=P.pop()),q=I.symbols_[q]||q),q}o(J,"lex");for(var ye,se,Se,W,Oe,ve,Pe={},qe,Ge,Ne,Me;;){if(Se=M[M.length-1],this.defaultActions[Se]?W=this.defaultActions[Se]:((ye===null||typeof ye>"u")&&(ye=J()),W=G[Se]&&G[Se][ye]),typeof W>"u"||!W.length||!W[0]){var be="";Me=[];for(qe in G[Se])this.terminals_[qe]&&qe>j&&Me.push("'"+this.terminals_[qe]+"'");ce.showPosition?be="Parse error on line "+(U+1)+`:
|
||
`+ce.showPosition()+`
|
||
Expecting `+Me.join(", ")+", got '"+(this.terminals_[ye]||ye)+"'":be="Parse error on line "+(U+1)+": Unexpected "+(ye==le?"end of input":"'"+(this.terminals_[ye]||ye)+"'"),this.parseError(be,{text:ce.match,token:this.terminals_[ye]||ye,line:ce.yylineno,loc:te,expected:Me})}if(W[0]instanceof Array&&W.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Se+", token: "+ye);switch(W[0]){case 1:M.push(ye),B.push(ce.yytext),F.push(ce.yylloc),M.push(W[1]),ye=null,se?(ye=se,se=null):(K=ce.yyleng,$=ce.yytext,U=ce.yylineno,te=ce.yylloc,ne>0&&ne--);break;case 2:if(Ge=this.productions_[W[1]][1],Pe.$=B[B.length-Ge],Pe._$={first_line:F[F.length-(Ge||1)].first_line,last_line:F[F.length-1].last_line,first_column:F[F.length-(Ge||1)].first_column,last_column:F[F.length-1].last_column},re&&(Pe._$.range=[F[F.length-(Ge||1)].range[0],F[F.length-1].range[1]]),ve=this.performAction.apply(Pe,[$,K,U,Q.yy,W[1],B,F].concat(Z)),typeof ve<"u")return ve;Ge&&(M=M.slice(0,-1*Ge*2),B=B.slice(0,-1*Ge),F=F.slice(0,-1*Ge)),M.push(this.productions_[W[1]][0]),B.push(Pe.$),F.push(Pe._$),Ne=G[M[M.length-2]][M[M.length-1]],M.push(Ne);break;case 3:return!0}}return!0},"parse")},R=function(){var L={EOF:1,parseError:o(function(I,M){if(this.yy.parser)this.yy.parser.parseError(I,M);else throw new Error(I)},"parseError"),setInput:o(function(C,I){return this.yy=I||this.yy||{},this._input=C,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},"setInput"),input:o(function(){var C=this._input[0];this.yytext+=C,this.yyleng++,this.offset++,this.match+=C,this.matched+=C;var I=C.match(/(?:\r\n?|\n).*/g);return I?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),C},"input"),unput:o(function(C){var I=C.length,M=C.split(/(?:\r\n?|\n)/g);this._input=C+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-I),this.offset-=I;var P=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),M.length-1&&(this.yylineno-=M.length-1);var B=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:M?(M.length===P.length?this.yylloc.first_column:0)+P[P.length-M.length].length-M[0].length:this.yylloc.first_column-I},this.options.ranges&&(this.yylloc.range=[B[0],B[0]+this.yyleng-I]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(C){this.unput(this.match.slice(C))},"less"),pastInput:o(function(){var C=this.matched.substr(0,this.matched.length-this.match.length);return(C.length>20?"...":"")+C.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var C=this.match;return C.length<20&&(C+=this._input.substr(0,20-C.length)),(C.substr(0,20)+(C.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var C=this.pastInput(),I=new Array(C.length+1).join("-");return C+this.upcomingInput()+`
|
||
`+I+"^"},"showPosition"),test_match:o(function(C,I){var M,P,B;if(this.options.backtrack_lexer&&(B={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&&(B.yylloc.range=this.yylloc.range.slice(0))),P=C[0].match(/(?:\r\n?|\n).*/g),P&&(this.yylineno+=P.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:P?P[P.length-1].length-P[P.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+C[0].length},this.yytext+=C[0],this.match+=C[0],this.matches=C,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(C[0].length),this.matched+=C[0],M=this.performAction.call(this,this.yy,this,I,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),M)return M;if(this._backtrack){for(var F in B)this[F]=B[F];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var C,I,M,P;this._more||(this.yytext="",this.match="");for(var B=this._currentRules(),F=0;F<B.length;F++)if(M=this._input.match(this.rules[B[F]]),M&&(!I||M[0].length>I[0].length)){if(I=M,P=F,this.options.backtrack_lexer){if(C=this.test_match(M,B[F]),C!==!1)return C;if(this._backtrack){I=!1;continue}else return!1}else if(!this.options.flex)break}return I?(C=this.test_match(I,B[P]),C!==!1?C:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var I=this.next();return I||this.lex()},"lex"),begin:o(function(I){this.conditionStack.push(I)},"begin"),popState:o(function(){var I=this.conditionStack.length-1;return I>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(I){return I=this.conditionStack.length-1-Math.abs(I||0),I>=0?this.conditionStack[I]:"INITIAL"},"topState"),pushState:o(function(I){this.begin(I)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(I,M,P,B){var F=B;switch(P){case 0:return this.begin("open_directive"),"open_directive";break;case 1:return this.begin("acc_title"),31;break;case 2:return this.popState(),"acc_title_value";break;case 3:return this.begin("acc_descr"),33;break;case 4:return this.popState(),"acc_descr_value";break;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 43;case 17:this.begin("callbackname");break;case 18:this.popState();break;case 19:this.popState(),this.begin("callbackargs");break;case 20:return 41;case 21:this.popState();break;case 22:return 42;case 23:this.begin("click");break;case 24:this.popState();break;case 25:return 40;case 26:return 4;case 27:return 22;case 28:return 23;case 29:return 24;case 30:return 25;case 31:return 26;case 32:return 28;case 33:return 27;case 34:return 29;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 20;case 43:return 21;case 44:return"date";case 45:return 30;case 46:return"accDescription";case 47:return 36;case 48:return 38;case 49:return 39;case 50:return":";case 51:return 6;case 52:return"INVALID"}},"anonymous"),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,/^(?:weekend\s+friday\b)/i,/^(?:weekend\s+saturday\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,51,52],inclusive:!0}}};return L}();O.lexer=R;function k(){this.yy={}}return o(k,"Parser"),k.prototype=O,O.Parser=k,new k}();WP.parser=WP;h0e=WP});var d0e=Aa((qP,YP)=>{"use strict";(function(t,e){typeof qP=="object"&&typeof YP<"u"?YP.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_isoWeek=e()})(qP,function(){"use strict";var t="day";return function(e,r,n){var i=o(function(l){return l.add(4-l.isoWeekday(),t)},"a"),a=r.prototype;a.isoWeekYear=function(){return i(this).year()},a.isoWeek=function(l){if(!this.$utils().u(l))return this.add(7*(l-this.isoWeek()),t);var u,h,f,d,p=i(this),m=(u=this.isoWeekYear(),h=this.$u,f=(h?n.utc:n)().year(u).startOf("year"),d=4-f.isoWeekday(),f.isoWeekday()>4&&(d+=7),f.add(d,t));return p.diff(m,"week")+1},a.isoWeekday=function(l){return this.$utils().u(l)?this.day()||7:this.day(this.day()%7?l:l-7)};var s=a.startOf;a.startOf=function(l,u){var h=this.$utils(),f=!!h.u(u)||u;return h.p(l)==="isoweek"?f?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):s.bind(this)(l,u)}}})});var p0e=Aa((XP,jP)=>{"use strict";(function(t,e){typeof XP=="object"&&typeof jP<"u"?jP.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_customParseFormat=e()})(XP,function(){"use strict";var t={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"},e=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,r=/\d/,n=/\d\d/,i=/\d\d?/,a=/\d*[^-_:/,()\s\d]+/,s={},l=o(function(g){return(g=+g)+(g>68?1900:2e3)},"a"),u=o(function(g){return function(y){this[g]=+y}},"f"),h=[/[+-]\d\d:?(\d\d)?|Z/,function(g){(this.zone||(this.zone={})).offset=function(y){if(!y||y==="Z")return 0;var x=y.match(/([+-]|\d\d)/g),v=60*x[1]+(+x[2]||0);return v===0?0:x[0]==="+"?-v:v}(g)}],f=o(function(g){var y=s[g];return y&&(y.indexOf?y:y.s.concat(y.f))},"u"),d=o(function(g,y){var x,v=s.meridiem;if(v){for(var b=1;b<=24;b+=1)if(g.indexOf(v(b,0,y))>-1){x=b>12;break}}else x=g===(y?"pm":"PM");return x},"d"),p={A:[a,function(g){this.afternoon=d(g,!1)}],a:[a,function(g){this.afternoon=d(g,!0)}],Q:[r,function(g){this.month=3*(g-1)+1}],S:[r,function(g){this.milliseconds=100*+g}],SS:[n,function(g){this.milliseconds=10*+g}],SSS:[/\d{3}/,function(g){this.milliseconds=+g}],s:[i,u("seconds")],ss:[i,u("seconds")],m:[i,u("minutes")],mm:[i,u("minutes")],H:[i,u("hours")],h:[i,u("hours")],HH:[i,u("hours")],hh:[i,u("hours")],D:[i,u("day")],DD:[n,u("day")],Do:[a,function(g){var y=s.ordinal,x=g.match(/\d+/);if(this.day=x[0],y)for(var v=1;v<=31;v+=1)y(v).replace(/\[|\]/g,"")===g&&(this.day=v)}],w:[i,u("week")],ww:[n,u("week")],M:[i,u("month")],MM:[n,u("month")],MMM:[a,function(g){var y=f("months"),x=(f("monthsShort")||y.map(function(v){return v.slice(0,3)})).indexOf(g)+1;if(x<1)throw new Error;this.month=x%12||x}],MMMM:[a,function(g){var y=f("months").indexOf(g)+1;if(y<1)throw new Error;this.month=y%12||y}],Y:[/[+-]?\d+/,u("year")],YY:[n,function(g){this.year=l(g)}],YYYY:[/\d{4}/,u("year")],Z:h,ZZ:h};function m(g){var y,x;y=g,x=s&&s.formats;for(var v=(g=y.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(A,D,O){var R=O&&O.toUpperCase();return D||x[O]||t[O]||x[R].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(k,L,C){return L||C.slice(1)})})).match(e),b=v.length,T=0;T<b;T+=1){var S=v[T],w=p[S],E=w&&w[0],_=w&&w[1];v[T]=_?{regex:E,parser:_}:S.replace(/^\[|\]$/g,"")}return function(A){for(var D={},O=0,R=0;O<b;O+=1){var k=v[O];if(typeof k=="string")R+=k.length;else{var L=k.regex,C=k.parser,I=A.slice(R),M=L.exec(I)[0];C.call(D,M),A=A.replace(M,"")}}return function(P){var B=P.afternoon;if(B!==void 0){var F=P.hours;B?F<12&&(P.hours+=12):F===12&&(P.hours=0),delete P.afternoon}}(D),D}}return o(m,"l"),function(g,y,x){x.p.customParseFormat=!0,g&&g.parseTwoDigitYear&&(l=g.parseTwoDigitYear);var v=y.prototype,b=v.parse;v.parse=function(T){var S=T.date,w=T.utc,E=T.args;this.$u=w;var _=E[1];if(typeof _=="string"){var A=E[2]===!0,D=E[3]===!0,O=A||D,R=E[2];D&&(R=E[2]),s=this.$locale(),!A&&R&&(s=x.Ls[R]),this.$d=function(I,M,P,B){try{if(["x","X"].indexOf(M)>-1)return new Date((M==="X"?1e3:1)*I);var F=m(M)(I),G=F.year,$=F.month,U=F.day,K=F.hours,ne=F.minutes,j=F.seconds,le=F.milliseconds,Z=F.zone,ce=F.week,Q=new Date,ee=U||(G||$?1:Q.getDate()),te=G||Q.getFullYear(),re=0;G&&!$||(re=$>0?$-1:Q.getMonth());var he,J=K||0,ye=ne||0,se=j||0,Se=le||0;return Z?new Date(Date.UTC(te,re,ee,J,ye,se,Se+60*Z.offset*1e3)):P?new Date(Date.UTC(te,re,ee,J,ye,se,Se)):(he=new Date(te,re,ee,J,ye,se,Se),ce&&(he=B(he).week(ce).toDate()),he)}catch{return new Date("")}}(S,_,w,x),this.init(),R&&R!==!0&&(this.$L=this.locale(R).$L),O&&S!=this.format(_)&&(this.$d=new Date("")),s={}}else if(_ instanceof Array)for(var k=_.length,L=1;L<=k;L+=1){E[1]=_[L-1];var C=x.apply(this,E);if(C.isValid()){this.$d=C.$d,this.$L=C.$L,this.init();break}L===k&&(this.$d=new Date(""))}else b.call(this,T)}}})});var m0e=Aa((KP,QP)=>{"use strict";(function(t,e){typeof KP=="object"&&typeof QP<"u"?QP.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_advancedFormat=e()})(KP,function(){"use strict";return function(t,e){var r=e.prototype,n=r.format;r.format=function(i){var a=this,s=this.$locale();if(!this.isValid())return n.bind(this)(i);var l=this.$utils(),u=(i||"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(h){switch(h){case"Q":return Math.ceil((a.$M+1)/3);case"Do":return s.ordinal(a.$D);case"gggg":return a.weekYear();case"GGGG":return a.isoWeekYear();case"wo":return s.ordinal(a.week(),"W");case"w":case"ww":return l.s(a.week(),h==="w"?1:2,"0");case"W":case"WW":return l.s(a.isoWeek(),h==="W"?1:2,"0");case"k":case"kk":return l.s(String(a.$H===0?24:a.$H),h==="k"?1:2,"0");case"X":return Math.floor(a.$d.getTime()/1e3);case"x":return a.$d.getTime();case"z":return"["+a.offsetName()+"]";case"zzz":return"["+a.offsetName("long")+"]";default:return h}});return n.bind(this)(u)}}})});function R0e(t,e,r){let n=!0;for(;n;)n=!1,r.forEach(function(i){let a="^\\s*"+i+"\\s*$",s=new RegExp(a);t[0].match(s)&&(e[i]=!0,t.shift(1),n=!0)})}var v0e,vo,x0e,b0e,T0e,g0e,Zc,tB,rB,nB,d4,p4,iB,aB,N6,J1,sB,w0e,oB,m4,lB,cB,M6,ZP,qje,Yje,Xje,jje,Kje,Qje,Zje,Jje,eKe,tKe,rKe,nKe,iKe,aKe,sKe,oKe,lKe,cKe,uKe,hKe,fKe,dKe,pKe,k0e,mKe,gKe,yKe,E0e,vKe,JP,S0e,C0e,L6,Z1,xKe,bKe,eB,R6,Hi,A0e,TKe,t0,wKe,y0e,kKe,_0e,EKe,D0e,SKe,CKe,L0e,N0e=N(()=>{"use strict";v0e=ja(Q0(),1),vo=ja(Y4(),1),x0e=ja(d0e(),1),b0e=ja(p0e(),1),T0e=ja(m0e(),1);pt();Xt();tr();ui();vo.default.extend(x0e.default);vo.default.extend(b0e.default);vo.default.extend(T0e.default);g0e={friday:5,saturday:6},Zc="",tB="",nB="",d4=[],p4=[],iB=new Map,aB=[],N6=[],J1="",sB="",w0e=["active","done","crit","milestone","vert"],oB=[],m4=!1,lB=!1,cB="sunday",M6="saturday",ZP=0,qje=o(function(){aB=[],N6=[],J1="",oB=[],L6=0,eB=void 0,R6=void 0,Hi=[],Zc="",tB="",sB="",rB=void 0,nB="",d4=[],p4=[],m4=!1,lB=!1,ZP=0,iB=new Map,wr(),cB="sunday",M6="saturday"},"clear"),Yje=o(function(t){tB=t},"setAxisFormat"),Xje=o(function(){return tB},"getAxisFormat"),jje=o(function(t){rB=t},"setTickInterval"),Kje=o(function(){return rB},"getTickInterval"),Qje=o(function(t){nB=t},"setTodayMarker"),Zje=o(function(){return nB},"getTodayMarker"),Jje=o(function(t){Zc=t},"setDateFormat"),eKe=o(function(){m4=!0},"enableInclusiveEndDates"),tKe=o(function(){return m4},"endDatesAreInclusive"),rKe=o(function(){lB=!0},"enableTopAxis"),nKe=o(function(){return lB},"topAxisEnabled"),iKe=o(function(t){sB=t},"setDisplayMode"),aKe=o(function(){return sB},"getDisplayMode"),sKe=o(function(){return Zc},"getDateFormat"),oKe=o(function(t){d4=t.toLowerCase().split(/[\s,]+/)},"setIncludes"),lKe=o(function(){return d4},"getIncludes"),cKe=o(function(t){p4=t.toLowerCase().split(/[\s,]+/)},"setExcludes"),uKe=o(function(){return p4},"getExcludes"),hKe=o(function(){return iB},"getLinks"),fKe=o(function(t){J1=t,aB.push(t)},"addSection"),dKe=o(function(){return aB},"getSections"),pKe=o(function(){let t=y0e(),e=10,r=0;for(;!t&&r<e;)t=y0e(),r++;return N6=Hi,N6},"getTasks"),k0e=o(function(t,e,r,n){let i=t.format(e.trim()),a=t.format("YYYY-MM-DD");return n.includes(i)||n.includes(a)?!1:r.includes("weekends")&&(t.isoWeekday()===g0e[M6]||t.isoWeekday()===g0e[M6]+1)||r.includes(t.format("dddd").toLowerCase())?!0:r.includes(i)||r.includes(a)},"isInvalidDate"),mKe=o(function(t){cB=t},"setWeekday"),gKe=o(function(){return cB},"getWeekday"),yKe=o(function(t){M6=t},"setWeekend"),E0e=o(function(t,e,r,n){if(!r.length||t.manualEndTime)return;let i;t.startTime instanceof Date?i=(0,vo.default)(t.startTime):i=(0,vo.default)(t.startTime,e,!0),i=i.add(1,"d");let a;t.endTime instanceof Date?a=(0,vo.default)(t.endTime):a=(0,vo.default)(t.endTime,e,!0);let[s,l]=vKe(i,a,e,r,n);t.endTime=s.toDate(),t.renderEndTime=l},"checkTaskDates"),vKe=o(function(t,e,r,n,i){let a=!1,s=null;for(;t<=e;)a||(s=e.toDate()),a=k0e(t,r,n,i),a&&(e=e.add(1,"d")),t=t.add(1,"d");return[e,s]},"fixTaskDates"),JP=o(function(t,e,r){r=r.trim();let i=/^after\s+(?<ids>[\d\w- ]+)/.exec(r);if(i!==null){let s=null;for(let u of i.groups.ids.split(" ")){let h=t0(u);h!==void 0&&(!s||h.endTime>s.endTime)&&(s=h)}if(s)return s.endTime;let l=new Date;return l.setHours(0,0,0,0),l}let a=(0,vo.default)(r,e.trim(),!0);if(a.isValid())return a.toDate();{X.debug("Invalid date:"+r),X.debug("With date format:"+e.trim());let s=new Date(r);if(s===void 0||isNaN(s.getTime())||s.getFullYear()<-1e4||s.getFullYear()>1e4)throw new Error("Invalid date:"+r);return s}},"getStartDate"),S0e=o(function(t){let e=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(t.trim());return e!==null?[Number.parseFloat(e[1]),e[2]]:[NaN,"ms"]},"parseDuration"),C0e=o(function(t,e,r,n=!1){r=r.trim();let a=/^until\s+(?<ids>[\d\w- ]+)/.exec(r);if(a!==null){let f=null;for(let p of a.groups.ids.split(" ")){let m=t0(p);m!==void 0&&(!f||m.startTime<f.startTime)&&(f=m)}if(f)return f.startTime;let d=new Date;return d.setHours(0,0,0,0),d}let s=(0,vo.default)(r,e.trim(),!0);if(s.isValid())return n&&(s=s.add(1,"d")),s.toDate();let l=(0,vo.default)(t),[u,h]=S0e(r);if(!Number.isNaN(u)){let f=l.add(u,h);f.isValid()&&(l=f)}return l.toDate()},"getEndDate"),L6=0,Z1=o(function(t){return t===void 0?(L6=L6+1,"task"+L6):t},"parseId"),xKe=o(function(t,e){let r;e.substr(0,1)===":"?r=e.substr(1,e.length):r=e;let n=r.split(","),i={};R0e(n,i,w0e);for(let s=0;s<n.length;s++)n[s]=n[s].trim();let a="";switch(n.length){case 1:i.id=Z1(),i.startTime=t.endTime,a=n[0];break;case 2:i.id=Z1(),i.startTime=JP(void 0,Zc,n[0]),a=n[1];break;case 3:i.id=Z1(n[0]),i.startTime=JP(void 0,Zc,n[1]),a=n[2];break;default:}return a&&(i.endTime=C0e(i.startTime,Zc,a,m4),i.manualEndTime=(0,vo.default)(a,"YYYY-MM-DD",!0).isValid(),E0e(i,Zc,p4,d4)),i},"compileData"),bKe=o(function(t,e){let r;e.substr(0,1)===":"?r=e.substr(1,e.length):r=e;let n=r.split(","),i={};R0e(n,i,w0e);for(let a=0;a<n.length;a++)n[a]=n[a].trim();switch(n.length){case 1:i.id=Z1(),i.startTime={type:"prevTaskEnd",id:t},i.endTime={data:n[0]};break;case 2:i.id=Z1(),i.startTime={type:"getStartDate",startData:n[0]},i.endTime={data:n[1]};break;case 3:i.id=Z1(n[0]),i.startTime={type:"getStartDate",startData:n[1]},i.endTime={data:n[2]};break;default:}return i},"parseData"),Hi=[],A0e={},TKe=o(function(t,e){let r={section:J1,type:J1,processed:!1,manualEndTime:!1,renderEndTime:null,raw:{data:e},task:t,classes:[]},n=bKe(R6,e);r.raw.startTime=n.startTime,r.raw.endTime=n.endTime,r.id=n.id,r.prevTaskId=R6,r.active=n.active,r.done=n.done,r.crit=n.crit,r.milestone=n.milestone,r.vert=n.vert,r.order=ZP,ZP++;let i=Hi.push(r);R6=r.id,A0e[r.id]=i-1},"addTask"),t0=o(function(t){let e=A0e[t];return Hi[e]},"findTaskById"),wKe=o(function(t,e){let r={section:J1,type:J1,description:t,task:t,classes:[]},n=xKe(eB,e);r.startTime=n.startTime,r.endTime=n.endTime,r.id=n.id,r.active=n.active,r.done=n.done,r.crit=n.crit,r.milestone=n.milestone,r.vert=n.vert,eB=r,N6.push(r)},"addTaskOrg"),y0e=o(function(){let t=o(function(r){let n=Hi[r],i="";switch(Hi[r].raw.startTime.type){case"prevTaskEnd":{let a=t0(n.prevTaskId);n.startTime=a.endTime;break}case"getStartDate":i=JP(void 0,Zc,Hi[r].raw.startTime.startData),i&&(Hi[r].startTime=i);break}return Hi[r].startTime&&(Hi[r].endTime=C0e(Hi[r].startTime,Zc,Hi[r].raw.endTime.data,m4),Hi[r].endTime&&(Hi[r].processed=!0,Hi[r].manualEndTime=(0,vo.default)(Hi[r].raw.endTime.data,"YYYY-MM-DD",!0).isValid(),E0e(Hi[r],Zc,p4,d4))),Hi[r].processed},"compileTask"),e=!0;for(let[r,n]of Hi.entries())t(r),e=e&&n.processed;return e},"compileTasks"),kKe=o(function(t,e){let r=e;ge().securityLevel!=="loose"&&(r=(0,v0e.sanitizeUrl)(e)),t.split(",").forEach(function(n){t0(n)!==void 0&&(D0e(n,()=>{window.open(r,"_self")}),iB.set(n,r))}),_0e(t,"clickable")},"setLink"),_0e=o(function(t,e){t.split(",").forEach(function(r){let n=t0(r);n!==void 0&&n.classes.push(e)})},"setClass"),EKe=o(function(t,e,r){if(ge().securityLevel!=="loose"||e===void 0)return;let n=[];if(typeof r=="string"){n=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let a=0;a<n.length;a++){let s=n[a].trim();s.startsWith('"')&&s.endsWith('"')&&(s=s.substr(1,s.length-2)),n[a]=s}}n.length===0&&n.push(t),t0(t)!==void 0&&D0e(t,()=>{Ht.runFunc(e,...n)})},"setClickFun"),D0e=o(function(t,e){oB.push(function(){let r=document.querySelector(`[id="${t}"]`);r!==null&&r.addEventListener("click",function(){e()})},function(){let r=document.querySelector(`[id="${t}-text"]`);r!==null&&r.addEventListener("click",function(){e()})})},"pushFun"),SKe=o(function(t,e,r){t.split(",").forEach(function(n){EKe(n,e,r)}),_0e(t,"clickable")},"setClickEvent"),CKe=o(function(t){oB.forEach(function(e){e(t)})},"bindFunctions"),L0e={getConfig:o(()=>ge().gantt,"getConfig"),clear:qje,setDateFormat:Jje,getDateFormat:sKe,enableInclusiveEndDates:eKe,endDatesAreInclusive:tKe,enableTopAxis:rKe,topAxisEnabled:nKe,setAxisFormat:Yje,getAxisFormat:Xje,setTickInterval:jje,getTickInterval:Kje,setTodayMarker:Qje,getTodayMarker:Zje,setAccTitle:Cr,getAccTitle:_r,setDiagramTitle:Or,getDiagramTitle:Rr,setDisplayMode:iKe,getDisplayMode:aKe,setAccDescription:Dr,getAccDescription:Lr,addSection:fKe,getSections:dKe,getTasks:pKe,addTask:TKe,findTaskById:t0,addTaskOrg:wKe,setIncludes:oKe,getIncludes:lKe,setExcludes:cKe,getExcludes:uKe,setClickEvent:SKe,setLink:kKe,getLinks:hKe,bindFunctions:CKe,parseDuration:S0e,isInvalidDate:k0e,setWeekday:mKe,getWeekday:gKe,setWeekend:yKe};o(R0e,"getTaskTags")});var I6,AKe,M0e,_Ke,rh,DKe,I0e,O0e=N(()=>{"use strict";I6=ja(Y4(),1);pt();pr();dr();Xt();Ci();AKe=o(function(){X.debug("Something is calling, setConf, remove the call")},"setConf"),M0e={monday:Rh,tuesday:O5,wednesday:P5,thursday:hc,friday:B5,saturday:F5,sunday:wl},_Ke=o((t,e)=>{let r=[...t].map(()=>-1/0),n=[...t].sort((a,s)=>a.startTime-s.startTime||a.order-s.order),i=0;for(let a of n)for(let s=0;s<r.length;s++)if(a.startTime>=r[s]){r[s]=a.endTime,a.order=s+e,s>i&&(i=s);break}return i},"getMaxIntersections"),DKe=o(function(t,e,r,n){let i=ge().gantt,a=ge().securityLevel,s;a==="sandbox"&&(s=ze("#i"+e));let l=a==="sandbox"?ze(s.nodes()[0].contentDocument.body):ze("body"),u=a==="sandbox"?s.nodes()[0].contentDocument:document,h=u.getElementById(e);rh=h.parentElement.offsetWidth,rh===void 0&&(rh=1200),i.useWidth!==void 0&&(rh=i.useWidth);let f=n.db.getTasks(),d=[];for(let A of f)d.push(A.type);d=_(d);let p={},m=2*i.topPadding;if(n.db.getDisplayMode()==="compact"||i.displayMode==="compact"){let A={};for(let O of f)A[O.section]===void 0?A[O.section]=[O]:A[O.section].push(O);let D=0;for(let O of Object.keys(A)){let R=_Ke(A[O],D)+1;D+=R,m+=R*(i.barHeight+i.barGap),p[O]=R}}else{m+=f.length*(i.barHeight+i.barGap);for(let A of d)p[A]=f.filter(D=>D.type===A).length}h.setAttribute("viewBox","0 0 "+rh+" "+m);let g=l.select(`[id="${e}"]`),y=z5().domain([q3(f,function(A){return A.startTime}),W3(f,function(A){return A.endTime})]).rangeRound([0,rh-i.leftPadding-i.rightPadding]);function x(A,D){let O=A.startTime,R=D.startTime,k=0;return O>R?k=1:O<R&&(k=-1),k}o(x,"taskCompare"),f.sort(x),v(f,rh,m),fn(g,m,rh,i.useMaxWidth),g.append("text").text(n.db.getDiagramTitle()).attr("x",rh/2).attr("y",i.titleTopMargin).attr("class","titleText");function v(A,D,O){let R=i.barHeight,k=R+i.barGap,L=i.topPadding,C=i.leftPadding,I=Tl().domain([0,d.length]).range(["#00B9FA","#F95002"]).interpolate(u_);T(k,L,C,D,O,A,n.db.getExcludes(),n.db.getIncludes()),S(C,L,D,O),b(A,k,L,C,R,I,D,O),w(k,L,C,R,I),E(C,L,D,O)}o(v,"makeGantt");function b(A,D,O,R,k,L,C){A.sort((G,$)=>G.vert===$.vert?0:G.vert?1:-1);let M=[...new Set(A.map(G=>G.order))].map(G=>A.find($=>$.order===G));g.append("g").selectAll("rect").data(M).enter().append("rect").attr("x",0).attr("y",function(G,$){return $=G.order,$*D+O-2}).attr("width",function(){return C-i.rightPadding/2}).attr("height",D).attr("class",function(G){for(let[$,U]of d.entries())if(G.type===U)return"section section"+$%i.numberSectionStyles;return"section section0"}).enter();let P=g.append("g").selectAll("rect").data(A).enter(),B=n.db.getLinks();if(P.append("rect").attr("id",function(G){return G.id}).attr("rx",3).attr("ry",3).attr("x",function(G){return G.milestone?y(G.startTime)+R+.5*(y(G.endTime)-y(G.startTime))-.5*k:y(G.startTime)+R}).attr("y",function(G,$){return $=G.order,G.vert?i.gridLineStartPadding:$*D+O}).attr("width",function(G){return G.milestone?k:G.vert?.08*k:y(G.renderEndTime||G.endTime)-y(G.startTime)}).attr("height",function(G){return G.vert?f.length*(i.barHeight+i.barGap)+i.barHeight*2:k}).attr("transform-origin",function(G,$){return $=G.order,(y(G.startTime)+R+.5*(y(G.endTime)-y(G.startTime))).toString()+"px "+($*D+O+.5*k).toString()+"px"}).attr("class",function(G){let $="task",U="";G.classes.length>0&&(U=G.classes.join(" "));let K=0;for(let[j,le]of d.entries())G.type===le&&(K=j%i.numberSectionStyles);let ne="";return G.active?G.crit?ne+=" activeCrit":ne=" active":G.done?G.crit?ne=" doneCrit":ne=" done":G.crit&&(ne+=" crit"),ne.length===0&&(ne=" task"),G.milestone&&(ne=" milestone "+ne),G.vert&&(ne=" vert "+ne),ne+=K,ne+=" "+U,$+ne}),P.append("text").attr("id",function(G){return G.id+"-text"}).text(function(G){return G.task}).attr("font-size",i.fontSize).attr("x",function(G){let $=y(G.startTime),U=y(G.renderEndTime||G.endTime);if(G.milestone&&($+=.5*(y(G.endTime)-y(G.startTime))-.5*k,U=$+k),G.vert)return y(G.startTime)+R;let K=this.getBBox().width;return K>U-$?U+K+1.5*i.leftPadding>C?$+R-5:U+R+5:(U-$)/2+$+R}).attr("y",function(G,$){return G.vert?i.gridLineStartPadding+f.length*(i.barHeight+i.barGap)+60:($=G.order,$*D+i.barHeight/2+(i.fontSize/2-2)+O)}).attr("text-height",k).attr("class",function(G){let $=y(G.startTime),U=y(G.endTime);G.milestone&&(U=$+k);let K=this.getBBox().width,ne="";G.classes.length>0&&(ne=G.classes.join(" "));let j=0;for(let[Z,ce]of d.entries())G.type===ce&&(j=Z%i.numberSectionStyles);let le="";return G.active&&(G.crit?le="activeCritText"+j:le="activeText"+j),G.done?G.crit?le=le+" doneCritText"+j:le=le+" doneText"+j:G.crit&&(le=le+" critText"+j),G.milestone&&(le+=" milestoneText"),G.vert&&(le+=" vertText"),K>U-$?U+K+1.5*i.leftPadding>C?ne+" taskTextOutsideLeft taskTextOutside"+j+" "+le:ne+" taskTextOutsideRight taskTextOutside"+j+" "+le+" width-"+K:ne+" taskText taskText"+j+" "+le+" width-"+K}),ge().securityLevel==="sandbox"){let G;G=ze("#i"+e);let $=G.nodes()[0].contentDocument;P.filter(function(U){return B.has(U.id)}).each(function(U){var K=$.querySelector("#"+U.id),ne=$.querySelector("#"+U.id+"-text");let j=K.parentNode;var le=$.createElement("a");le.setAttribute("xlink:href",B.get(U.id)),le.setAttribute("target","_top"),j.appendChild(le),le.appendChild(K),le.appendChild(ne)})}}o(b,"drawRects");function T(A,D,O,R,k,L,C,I){if(C.length===0&&I.length===0)return;let M,P;for(let{startTime:K,endTime:ne}of L)(M===void 0||K<M)&&(M=K),(P===void 0||ne>P)&&(P=ne);if(!M||!P)return;if((0,I6.default)(P).diff((0,I6.default)(M),"year")>5){X.warn("The difference between the min and max time is more than 5 years. This will cause performance issues. Skipping drawing exclude days.");return}let B=n.db.getDateFormat(),F=[],G=null,$=(0,I6.default)(M);for(;$.valueOf()<=P;)n.db.isInvalidDate($,B,C,I)?G?G.end=$:G={start:$,end:$}:G&&(F.push(G),G=null),$=$.add(1,"d");g.append("g").selectAll("rect").data(F).enter().append("rect").attr("id",K=>"exclude-"+K.start.format("YYYY-MM-DD")).attr("x",K=>y(K.start.startOf("day"))+O).attr("y",i.gridLineStartPadding).attr("width",K=>y(K.end.endOf("day"))-y(K.start.startOf("day"))).attr("height",k-D-i.gridLineStartPadding).attr("transform-origin",function(K,ne){return(y(K.start)+O+.5*(y(K.end)-y(K.start))).toString()+"px "+(ne*A+.5*k).toString()+"px"}).attr("class","exclude-range")}o(T,"drawExcludeDays");function S(A,D,O,R){let k=n.db.getDateFormat(),L=n.db.getAxisFormat(),C;L?C=L:k==="D"?C="%d":C=i.axisFormat??"%Y-%m-%d";let I=WA(y).tickSize(-R+D+i.gridLineStartPadding).tickFormat(Nd(C)),P=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(n.db.getTickInterval()||i.tickInterval);if(P!==null){let B=P[1],F=P[2],G=n.db.getWeekday()||i.weekday;switch(F){case"millisecond":I.ticks(cc.every(B));break;case"second":I.ticks(to.every(B));break;case"minute":I.ticks(Tu.every(B));break;case"hour":I.ticks(wu.every(B));break;case"day":I.ticks(Lo.every(B));break;case"week":I.ticks(M0e[G].every(B));break;case"month":I.ticks(ku.every(B));break}}if(g.append("g").attr("class","grid").attr("transform","translate("+A+", "+(R-50)+")").call(I).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),n.db.topAxisEnabled()||i.topAxis){let B=HA(y).tickSize(-R+D+i.gridLineStartPadding).tickFormat(Nd(C));if(P!==null){let F=P[1],G=P[2],$=n.db.getWeekday()||i.weekday;switch(G){case"millisecond":B.ticks(cc.every(F));break;case"second":B.ticks(to.every(F));break;case"minute":B.ticks(Tu.every(F));break;case"hour":B.ticks(wu.every(F));break;case"day":B.ticks(Lo.every(F));break;case"week":B.ticks(M0e[$].every(F));break;case"month":B.ticks(ku.every(F));break}}g.append("g").attr("class","grid").attr("transform","translate("+A+", "+D+")").call(B).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}o(S,"makeGrid");function w(A,D){let O=0,R=Object.keys(p).map(k=>[k,p[k]]);g.append("g").selectAll("text").data(R).enter().append(function(k){let L=k[0].split(Je.lineBreakRegex),C=-(L.length-1)/2,I=u.createElementNS("http://www.w3.org/2000/svg","text");I.setAttribute("dy",C+"em");for(let[M,P]of L.entries()){let B=u.createElementNS("http://www.w3.org/2000/svg","tspan");B.setAttribute("alignment-baseline","central"),B.setAttribute("x","10"),M>0&&B.setAttribute("dy","1em"),B.textContent=P,I.appendChild(B)}return I}).attr("x",10).attr("y",function(k,L){if(L>0)for(let C=0;C<L;C++)return O+=R[L-1][1],k[1]*A/2+O*A+D;else return k[1]*A/2+D}).attr("font-size",i.sectionFontSize).attr("class",function(k){for(let[L,C]of d.entries())if(k[0]===C)return"sectionTitle sectionTitle"+L%i.numberSectionStyles;return"sectionTitle"})}o(w,"vertLabels");function E(A,D,O,R){let k=n.db.getTodayMarker();if(k==="off")return;let L=g.append("g").attr("class","today"),C=new Date,I=L.append("line");I.attr("x1",y(C)+A).attr("x2",y(C)+A).attr("y1",i.titleTopMargin).attr("y2",R-i.titleTopMargin).attr("class","today"),k!==""&&I.attr("style",k.replace(/,/g,";"))}o(E,"drawToday");function _(A){let D={},O=[];for(let R=0,k=A.length;R<k;++R)Object.prototype.hasOwnProperty.call(D,A[R])||(D[A[R]]=!0,O.push(A[R]));return O}o(_,"checkUnique")},"draw"),I0e={setConf:AKe,draw:DKe}});var LKe,P0e,B0e=N(()=>{"use strict";LKe=o(t=>`
|
||
.mermaid-main-font {
|
||
font-family: ${t.fontFamily};
|
||
}
|
||
|
||
.exclude-range {
|
||
fill: ${t.excludeBkgColor};
|
||
}
|
||
|
||
.section {
|
||
stroke: none;
|
||
opacity: 0.2;
|
||
}
|
||
|
||
.section0 {
|
||
fill: ${t.sectionBkgColor};
|
||
}
|
||
|
||
.section2 {
|
||
fill: ${t.sectionBkgColor2};
|
||
}
|
||
|
||
.section1,
|
||
.section3 {
|
||
fill: ${t.altSectionBkgColor};
|
||
opacity: 0.2;
|
||
}
|
||
|
||
.sectionTitle0 {
|
||
fill: ${t.titleColor};
|
||
}
|
||
|
||
.sectionTitle1 {
|
||
fill: ${t.titleColor};
|
||
}
|
||
|
||
.sectionTitle2 {
|
||
fill: ${t.titleColor};
|
||
}
|
||
|
||
.sectionTitle3 {
|
||
fill: ${t.titleColor};
|
||
}
|
||
|
||
.sectionTitle {
|
||
text-anchor: start;
|
||
font-family: ${t.fontFamily};
|
||
}
|
||
|
||
|
||
/* Grid and axis */
|
||
|
||
.grid .tick {
|
||
stroke: ${t.gridColor};
|
||
opacity: 0.8;
|
||
shape-rendering: crispEdges;
|
||
}
|
||
|
||
.grid .tick text {
|
||
font-family: ${t.fontFamily};
|
||
fill: ${t.textColor};
|
||
}
|
||
|
||
.grid path {
|
||
stroke-width: 0;
|
||
}
|
||
|
||
|
||
/* Today line */
|
||
|
||
.today {
|
||
fill: none;
|
||
stroke: ${t.todayLineColor};
|
||
stroke-width: 2px;
|
||
}
|
||
|
||
|
||
/* Task styling */
|
||
|
||
/* Default task */
|
||
|
||
.task {
|
||
stroke-width: 2;
|
||
}
|
||
|
||
.taskText {
|
||
text-anchor: middle;
|
||
font-family: ${t.fontFamily};
|
||
}
|
||
|
||
.taskTextOutsideRight {
|
||
fill: ${t.taskTextDarkColor};
|
||
text-anchor: start;
|
||
font-family: ${t.fontFamily};
|
||
}
|
||
|
||
.taskTextOutsideLeft {
|
||
fill: ${t.taskTextDarkColor};
|
||
text-anchor: end;
|
||
}
|
||
|
||
|
||
/* Special case clickable */
|
||
|
||
.task.clickable {
|
||
cursor: pointer;
|
||
}
|
||
|
||
.taskText.clickable {
|
||
cursor: pointer;
|
||
fill: ${t.taskTextClickableColor} !important;
|
||
font-weight: bold;
|
||
}
|
||
|
||
.taskTextOutsideLeft.clickable {
|
||
cursor: pointer;
|
||
fill: ${t.taskTextClickableColor} !important;
|
||
font-weight: bold;
|
||
}
|
||
|
||
.taskTextOutsideRight.clickable {
|
||
cursor: pointer;
|
||
fill: ${t.taskTextClickableColor} !important;
|
||
font-weight: bold;
|
||
}
|
||
|
||
|
||
/* Specific task settings for the sections*/
|
||
|
||
.taskText0,
|
||
.taskText1,
|
||
.taskText2,
|
||
.taskText3 {
|
||
fill: ${t.taskTextColor};
|
||
}
|
||
|
||
.task0,
|
||
.task1,
|
||
.task2,
|
||
.task3 {
|
||
fill: ${t.taskBkgColor};
|
||
stroke: ${t.taskBorderColor};
|
||
}
|
||
|
||
.taskTextOutside0,
|
||
.taskTextOutside2
|
||
{
|
||
fill: ${t.taskTextOutsideColor};
|
||
}
|
||
|
||
.taskTextOutside1,
|
||
.taskTextOutside3 {
|
||
fill: ${t.taskTextOutsideColor};
|
||
}
|
||
|
||
|
||
/* Active task */
|
||
|
||
.active0,
|
||
.active1,
|
||
.active2,
|
||
.active3 {
|
||
fill: ${t.activeTaskBkgColor};
|
||
stroke: ${t.activeTaskBorderColor};
|
||
}
|
||
|
||
.activeText0,
|
||
.activeText1,
|
||
.activeText2,
|
||
.activeText3 {
|
||
fill: ${t.taskTextDarkColor} !important;
|
||
}
|
||
|
||
|
||
/* Completed task */
|
||
|
||
.done0,
|
||
.done1,
|
||
.done2,
|
||
.done3 {
|
||
stroke: ${t.doneTaskBorderColor};
|
||
fill: ${t.doneTaskBkgColor};
|
||
stroke-width: 2;
|
||
}
|
||
|
||
.doneText0,
|
||
.doneText1,
|
||
.doneText2,
|
||
.doneText3 {
|
||
fill: ${t.taskTextDarkColor} !important;
|
||
}
|
||
|
||
|
||
/* Tasks on the critical line */
|
||
|
||
.crit0,
|
||
.crit1,
|
||
.crit2,
|
||
.crit3 {
|
||
stroke: ${t.critBorderColor};
|
||
fill: ${t.critBkgColor};
|
||
stroke-width: 2;
|
||
}
|
||
|
||
.activeCrit0,
|
||
.activeCrit1,
|
||
.activeCrit2,
|
||
.activeCrit3 {
|
||
stroke: ${t.critBorderColor};
|
||
fill: ${t.activeTaskBkgColor};
|
||
stroke-width: 2;
|
||
}
|
||
|
||
.doneCrit0,
|
||
.doneCrit1,
|
||
.doneCrit2,
|
||
.doneCrit3 {
|
||
stroke: ${t.critBorderColor};
|
||
fill: ${t.doneTaskBkgColor};
|
||
stroke-width: 2;
|
||
cursor: pointer;
|
||
shape-rendering: crispEdges;
|
||
}
|
||
|
||
.milestone {
|
||
transform: rotate(45deg) scale(0.8,0.8);
|
||
}
|
||
|
||
.milestoneText {
|
||
font-style: italic;
|
||
}
|
||
.doneCritText0,
|
||
.doneCritText1,
|
||
.doneCritText2,
|
||
.doneCritText3 {
|
||
fill: ${t.taskTextDarkColor} !important;
|
||
}
|
||
|
||
.vert {
|
||
stroke: ${t.vertLineColor};
|
||
}
|
||
|
||
.vertText {
|
||
font-size: 15px;
|
||
text-anchor: middle;
|
||
fill: ${t.vertLineColor} !important;
|
||
}
|
||
|
||
.activeCritText0,
|
||
.activeCritText1,
|
||
.activeCritText2,
|
||
.activeCritText3 {
|
||
fill: ${t.taskTextDarkColor} !important;
|
||
}
|
||
|
||
.titleText {
|
||
text-anchor: middle;
|
||
font-size: 18px;
|
||
fill: ${t.titleColor||t.textColor};
|
||
font-family: ${t.fontFamily};
|
||
}
|
||
`,"getStyles"),P0e=LKe});var F0e={};ur(F0e,{diagram:()=>RKe});var RKe,$0e=N(()=>{"use strict";f0e();N0e();O0e();B0e();RKe={parser:h0e,db:L0e,renderer:I0e,styles:P0e}});var V0e,U0e=N(()=>{"use strict";Ff();pt();V0e={parse:o(async t=>{let e=await xs("info",t);X.debug(e)},"parse")}});var g4,uB=N(()=>{g4={name:"mermaid",version:"11.11.0",description:"Markdown-ish syntax for generating flowcharts, mindmaps, sequence diagrams, class diagrams, gantt charts, git graphs and more.",type:"module",module:"./dist/mermaid.core.mjs",types:"./dist/mermaid.d.ts",exports:{".":{types:"./dist/mermaid.d.ts",import:"./dist/mermaid.core.mjs",default:"./dist/mermaid.core.mjs"},"./*":"./*"},keywords:["diagram","markdown","flowchart","sequence diagram","gantt","class diagram","git graph","mindmap","packet diagram","c4 diagram","er diagram","pie chart","pie diagram","quadrant chart","requirement diagram","graph"],scripts:{clean:"rimraf dist",dev:"pnpm -w dev","docs:code":"typedoc src/defaultConfig.ts src/config.ts src/mermaid.ts && prettier --write ./src/docs/config/setup","docs:build":"rimraf ../../docs && pnpm docs:code && pnpm docs:spellcheck && tsx scripts/docs.cli.mts","docs:verify":"pnpm docs:code && pnpm docs:spellcheck && tsx scripts/docs.cli.mts --verify","docs:pre:vitepress":"pnpm --filter ./src/docs prefetch && rimraf src/vitepress && pnpm docs:code && tsx scripts/docs.cli.mts --vitepress && pnpm --filter ./src/vitepress install --no-frozen-lockfile --ignore-scripts","docs:build:vitepress":"pnpm docs:pre:vitepress && (cd src/vitepress && pnpm run build) && cpy --flat src/docs/landing/ ./src/vitepress/.vitepress/dist/landing","docs:dev":'pnpm docs:pre:vitepress && concurrently "pnpm --filter ./src/vitepress dev" "tsx scripts/docs.cli.mts --watch --vitepress"',"docs:dev:docker":'pnpm docs:pre:vitepress && concurrently "pnpm --filter ./src/vitepress dev:docker" "tsx scripts/docs.cli.mts --watch --vitepress"',"docs:serve":"pnpm docs:build:vitepress && vitepress serve src/vitepress","docs:spellcheck":'cspell "src/docs/**/*.md"',"docs:release-version":"tsx scripts/update-release-version.mts","docs:verify-version":"tsx scripts/update-release-version.mts --verify","types:build-config":"tsx scripts/create-types-from-json-schema.mts","types:verify-config":"tsx scripts/create-types-from-json-schema.mts --verify",checkCircle:"npx madge --circular ./src",prepublishOnly:"pnpm docs:verify-version"},repository:{type:"git",url:"https://github.com/mermaid-js/mermaid"},author:"Knut Sveidqvist",license:"MIT",standard:{ignore:["**/parser/*.js","dist/**/*.js","cypress/**/*.js"],globals:["page"]},dependencies:{"@braintree/sanitize-url":"^7.0.4","@iconify/utils":"^3.0.1","@mermaid-js/parser":"workspace:^","@types/d3":"^7.4.3",cytoscape:"^3.29.3","cytoscape-cose-bilkent":"^4.1.0","cytoscape-fcose":"^2.2.0",d3:"^7.9.0","d3-sankey":"^0.12.3","dagre-d3-es":"7.0.11",dayjs:"^1.11.13",dompurify:"^3.2.5",katex:"^0.16.22",khroma:"^2.1.0","lodash-es":"^4.17.21",marked:"^15.0.7",roughjs:"^4.6.6",stylis:"^4.3.6","ts-dedent":"^2.2.0",uuid:"^11.1.0"},devDependencies:{"@adobe/jsonschema2md":"^8.0.2","@iconify/types":"^2.0.0","@types/cytoscape":"^3.21.9","@types/cytoscape-fcose":"^2.2.4","@types/d3-sankey":"^0.12.4","@types/d3-scale":"^4.0.9","@types/d3-scale-chromatic":"^3.1.0","@types/d3-selection":"^3.0.11","@types/d3-shape":"^3.1.7","@types/jsdom":"^21.1.7","@types/katex":"^0.16.7","@types/lodash-es":"^4.17.12","@types/micromatch":"^4.0.9","@types/stylis":"^4.2.7","@types/uuid":"^10.0.0",ajv:"^8.17.1",canvas:"^3.1.0",chokidar:"3.6.0",concurrently:"^9.1.2","csstree-validator":"^4.0.1",globby:"^14.0.2",jison:"^0.4.18","js-base64":"^3.7.7",jsdom:"^26.1.0","json-schema-to-typescript":"^15.0.4",micromatch:"^4.0.8","path-browserify":"^1.0.1",prettier:"^3.5.2",remark:"^15.0.1","remark-frontmatter":"^5.0.0","remark-gfm":"^4.0.1",rimraf:"^6.0.1","start-server-and-test":"^2.0.10","type-fest":"^4.35.0",typedoc:"^0.28.9","typedoc-plugin-markdown":"^4.8.0",typescript:"~5.7.3","unist-util-flatmap":"^1.0.0","unist-util-visit":"^5.0.0",vitepress:"^1.0.2","vitepress-plugin-search":"1.0.4-alpha.22"},files:["dist/","README.md"],publishConfig:{access:"public"}}});var PKe,BKe,H0e,W0e=N(()=>{"use strict";uB();PKe={version:g4.version+""},BKe=o(()=>PKe.version,"getVersion"),H0e={getVersion:BKe}});var aa,Jc=N(()=>{"use strict";pr();Xt();aa=o(t=>{let{securityLevel:e}=ge(),r=ze("body");if(e==="sandbox"){let a=ze(`#i${t}`).node()?.contentDocument??document;r=ze(a.body)}return r.select(`#${t}`)},"selectSvgElement")});var FKe,q0e,Y0e=N(()=>{"use strict";pt();Jc();Ci();FKe=o((t,e,r)=>{X.debug(`rendering info diagram
|
||
`+t);let n=aa(e);fn(n,100,400,!0),n.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${r}`)},"draw"),q0e={draw:FKe}});var X0e={};ur(X0e,{diagram:()=>$Ke});var $Ke,j0e=N(()=>{"use strict";U0e();W0e();Y0e();$Ke={parser:V0e,db:H0e,renderer:q0e}});var Z0e,hB,O6,fB,VKe,UKe,HKe,WKe,qKe,YKe,XKe,P6,dB=N(()=>{"use strict";pt();ui();_a();Z0e=lr.pie,hB={sections:new Map,showData:!1,config:Z0e},O6=hB.sections,fB=hB.showData,VKe=structuredClone(Z0e),UKe=o(()=>structuredClone(VKe),"getConfig"),HKe=o(()=>{O6=new Map,fB=hB.showData,wr()},"clear"),WKe=o(({label:t,value:e})=>{if(e<0)throw new Error(`"${t}" has invalid value: ${e}. Negative values are not allowed in pie charts. All slice values must be >= 0.`);O6.has(t)||(O6.set(t,e),X.debug(`added new section: ${t}, with value: ${e}`))},"addSection"),qKe=o(()=>O6,"getSections"),YKe=o(t=>{fB=t},"setShowData"),XKe=o(()=>fB,"getShowData"),P6={getConfig:UKe,clear:HKe,setDiagramTitle:Or,getDiagramTitle:Rr,setAccTitle:Cr,getAccTitle:_r,setAccDescription:Dr,getAccDescription:Lr,addSection:WKe,getSections:qKe,setShowData:YKe,getShowData:XKe}});var jKe,J0e,eme=N(()=>{"use strict";Ff();pt();Zp();dB();jKe=o((t,e)=>{nl(t,e),e.setShowData(t.showData),t.sections.map(e.addSection)},"populateDb"),J0e={parse:o(async t=>{let e=await xs("pie",t);X.debug(e),jKe(e,P6)},"parse")}});var KKe,tme,rme=N(()=>{"use strict";KKe=o(t=>`
|
||
.pieCircle{
|
||
stroke: ${t.pieStrokeColor};
|
||
stroke-width : ${t.pieStrokeWidth};
|
||
opacity : ${t.pieOpacity};
|
||
}
|
||
.pieOuterCircle{
|
||
stroke: ${t.pieOuterStrokeColor};
|
||
stroke-width: ${t.pieOuterStrokeWidth};
|
||
fill: none;
|
||
}
|
||
.pieTitleText {
|
||
text-anchor: middle;
|
||
font-size: ${t.pieTitleTextSize};
|
||
fill: ${t.pieTitleTextColor};
|
||
font-family: ${t.fontFamily};
|
||
}
|
||
.slice {
|
||
font-family: ${t.fontFamily};
|
||
fill: ${t.pieSectionTextColor};
|
||
font-size:${t.pieSectionTextSize};
|
||
// fill: white;
|
||
}
|
||
.legend text {
|
||
fill: ${t.pieLegendTextColor};
|
||
font-family: ${t.fontFamily};
|
||
font-size: ${t.pieLegendTextSize};
|
||
}
|
||
`,"getStyles"),tme=KKe});var QKe,ZKe,nme,ime=N(()=>{"use strict";pr();Xt();pt();Jc();Ci();tr();QKe=o(t=>{let e=[...t.values()].reduce((i,a)=>i+a,0),r=[...t.entries()].map(([i,a])=>({label:i,value:a})).filter(i=>i.value/e*100>=1).sort((i,a)=>a.value-i.value);return Y5().value(i=>i.value)(r)},"createPieArcs"),ZKe=o((t,e,r,n)=>{X.debug(`rendering pie chart
|
||
`+t);let i=n.db,a=ge(),s=Vn(i.getConfig(),a.pie),l=40,u=18,h=4,f=450,d=f,p=aa(e),m=p.append("g");m.attr("transform","translate("+d/2+","+f/2+")");let{themeVariables:g}=a,[y]=yc(g.pieOuterStrokeWidth);y??=2;let x=s.textPosition,v=Math.min(d,f)/2-l,b=Sl().innerRadius(0).outerRadius(v),T=Sl().innerRadius(v*x).outerRadius(v*x);m.append("circle").attr("cx",0).attr("cy",0).attr("r",v+y/2).attr("class","pieOuterCircle");let S=i.getSections(),w=QKe(S),E=[g.pie1,g.pie2,g.pie3,g.pie4,g.pie5,g.pie6,g.pie7,g.pie8,g.pie9,g.pie10,g.pie11,g.pie12],_=0;S.forEach(C=>{_+=C});let A=w.filter(C=>(C.data.value/_*100).toFixed(0)!=="0"),D=eo(E);m.selectAll("mySlices").data(A).enter().append("path").attr("d",b).attr("fill",C=>D(C.data.label)).attr("class","pieCircle"),m.selectAll("mySlices").data(A).enter().append("text").text(C=>(C.data.value/_*100).toFixed(0)+"%").attr("transform",C=>"translate("+T.centroid(C)+")").style("text-anchor","middle").attr("class","slice"),m.append("text").text(i.getDiagramTitle()).attr("x",0).attr("y",-(f-50)/2).attr("class","pieTitleText");let O=[...S.entries()].map(([C,I])=>({label:C,value:I})),R=m.selectAll(".legend").data(O).enter().append("g").attr("class","legend").attr("transform",(C,I)=>{let M=u+h,P=M*O.length/2,B=12*u,F=I*M-P;return"translate("+B+","+F+")"});R.append("rect").attr("width",u).attr("height",u).style("fill",C=>D(C.label)).style("stroke",C=>D(C.label)),R.append("text").attr("x",u+h).attr("y",u-h).text(C=>i.getShowData()?`${C.label} [${C.value}]`:C.label);let k=Math.max(...R.selectAll("text").nodes().map(C=>C?.getBoundingClientRect().width??0)),L=d+l+u+h+k;p.attr("viewBox",`0 0 ${L} ${f}`),fn(p,f,L,s.useMaxWidth)},"draw"),nme={draw:ZKe}});var ame={};ur(ame,{diagram:()=>JKe});var JKe,sme=N(()=>{"use strict";eme();dB();rme();ime();JKe={parser:J0e,db:P6,renderer:nme,styles:tme}});var pB,cme,ume=N(()=>{"use strict";pB=function(){var t=o(function(xe,Y,de,me){for(de=de||{},me=xe.length;me--;de[xe[me]]=Y);return de},"o"),e=[1,3],r=[1,4],n=[1,5],i=[1,6],a=[1,7],s=[1,4,5,10,12,13,14,18,25,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],l=[1,4,5,10,12,13,14,18,25,28,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],u=[55,56,57],h=[2,36],f=[1,37],d=[1,36],p=[1,38],m=[1,35],g=[1,43],y=[1,41],x=[1,14],v=[1,23],b=[1,18],T=[1,19],S=[1,20],w=[1,21],E=[1,22],_=[1,24],A=[1,25],D=[1,26],O=[1,27],R=[1,28],k=[1,29],L=[1,32],C=[1,33],I=[1,34],M=[1,39],P=[1,40],B=[1,42],F=[1,44],G=[1,62],$=[1,61],U=[4,5,8,10,12,13,14,18,44,47,49,55,56,57,63,64,65,66,67],K=[1,65],ne=[1,66],j=[1,67],le=[1,68],Z=[1,69],ce=[1,70],Q=[1,71],ee=[1,72],te=[1,73],re=[1,74],he=[1,75],J=[1,76],ye=[4,5,6,7,8,9,10,11,12,13,14,15,18],se=[1,90],Se=[1,91],W=[1,92],Oe=[1,99],ve=[1,93],Pe=[1,96],qe=[1,94],Ge=[1,95],Ne=[1,97],Me=[1,98],be=[1,102],q=[10,55,56,57],fe=[4,5,6,8,10,11,13,17,18,19,20,55,56,57],ae={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,idStringToken:3,ALPHA:4,NUM:5,NODE_STRING:6,DOWN:7,MINUS:8,DEFAULT:9,COMMA:10,COLON:11,AMP:12,BRKT:13,MULT:14,UNICODE_TEXT:15,styleComponent:16,UNIT:17,SPACE:18,STYLE:19,PCT:20,idString:21,style:22,stylesOpt:23,classDefStatement:24,CLASSDEF:25,start:26,eol:27,QUADRANT:28,document:29,line:30,statement:31,axisDetails:32,quadrantDetails:33,points:34,title:35,title_value:36,acc_title:37,acc_title_value:38,acc_descr:39,acc_descr_value:40,acc_descr_multiline_value:41,section:42,text:43,point_start:44,point_x:45,point_y:46,class_name:47,"X-AXIS":48,"AXIS-TEXT-DELIMITER":49,"Y-AXIS":50,QUADRANT_1:51,QUADRANT_2:52,QUADRANT_3:53,QUADRANT_4:54,NEWLINE:55,SEMI:56,EOF:57,alphaNumToken:58,textNoTagsToken:59,STR:60,MD_STR:61,alphaNum:62,PUNCTUATION:63,PLUS:64,EQUALS:65,DOT:66,UNDERSCORE:67,$accept:0,$end:1},terminals_:{2:"error",4:"ALPHA",5:"NUM",6:"NODE_STRING",7:"DOWN",8:"MINUS",9:"DEFAULT",10:"COMMA",11:"COLON",12:"AMP",13:"BRKT",14:"MULT",15:"UNICODE_TEXT",17:"UNIT",18:"SPACE",19:"STYLE",20:"PCT",25:"CLASSDEF",28:"QUADRANT",35:"title",36:"title_value",37:"acc_title",38:"acc_title_value",39:"acc_descr",40:"acc_descr_value",41:"acc_descr_multiline_value",42:"section",44:"point_start",45:"point_x",46:"point_y",47:"class_name",48:"X-AXIS",49:"AXIS-TEXT-DELIMITER",50:"Y-AXIS",51:"QUADRANT_1",52:"QUADRANT_2",53:"QUADRANT_3",54:"QUADRANT_4",55:"NEWLINE",56:"SEMI",57:"EOF",60:"STR",61:"MD_STR",63:"PUNCTUATION",64:"PLUS",65:"EQUALS",66:"DOT",67:"UNDERSCORE"},productions_:[0,[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[21,1],[21,2],[22,1],[22,2],[23,1],[23,3],[24,5],[26,2],[26,2],[26,2],[29,0],[29,2],[30,2],[31,0],[31,1],[31,2],[31,1],[31,1],[31,1],[31,2],[31,2],[31,2],[31,1],[31,1],[34,4],[34,5],[34,5],[34,6],[32,4],[32,3],[32,2],[32,4],[32,3],[32,2],[33,2],[33,2],[33,2],[33,2],[27,1],[27,1],[27,1],[43,1],[43,2],[43,1],[43,1],[62,1],[62,2],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[59,1],[59,1],[59,1]],performAction:o(function(Y,de,me,Be,_e,Te,Ue){var De=Te.length-1;switch(_e){case 23:this.$=Te[De];break;case 24:this.$=Te[De-1]+""+Te[De];break;case 26:this.$=Te[De-1]+Te[De];break;case 27:this.$=[Te[De].trim()];break;case 28:Te[De-2].push(Te[De].trim()),this.$=Te[De-2];break;case 29:this.$=Te[De-4],Be.addClass(Te[De-2],Te[De]);break;case 37:this.$=[];break;case 42:this.$=Te[De].trim(),Be.setDiagramTitle(this.$);break;case 43:this.$=Te[De].trim(),Be.setAccTitle(this.$);break;case 44:case 45:this.$=Te[De].trim(),Be.setAccDescription(this.$);break;case 46:Be.addSection(Te[De].substr(8)),this.$=Te[De].substr(8);break;case 47:Be.addPoint(Te[De-3],"",Te[De-1],Te[De],[]);break;case 48:Be.addPoint(Te[De-4],Te[De-3],Te[De-1],Te[De],[]);break;case 49:Be.addPoint(Te[De-4],"",Te[De-2],Te[De-1],Te[De]);break;case 50:Be.addPoint(Te[De-5],Te[De-4],Te[De-2],Te[De-1],Te[De]);break;case 51:Be.setXAxisLeftText(Te[De-2]),Be.setXAxisRightText(Te[De]);break;case 52:Te[De-1].text+=" \u27F6 ",Be.setXAxisLeftText(Te[De-1]);break;case 53:Be.setXAxisLeftText(Te[De]);break;case 54:Be.setYAxisBottomText(Te[De-2]),Be.setYAxisTopText(Te[De]);break;case 55:Te[De-1].text+=" \u27F6 ",Be.setYAxisBottomText(Te[De-1]);break;case 56:Be.setYAxisBottomText(Te[De]);break;case 57:Be.setQuadrant1Text(Te[De]);break;case 58:Be.setQuadrant2Text(Te[De]);break;case 59:Be.setQuadrant3Text(Te[De]);break;case 60:Be.setQuadrant4Text(Te[De]);break;case 64:this.$={text:Te[De],type:"text"};break;case 65:this.$={text:Te[De-1].text+""+Te[De],type:Te[De-1].type};break;case 66:this.$={text:Te[De],type:"text"};break;case 67:this.$={text:Te[De],type:"markdown"};break;case 68:this.$=Te[De];break;case 69:this.$=Te[De-1]+""+Te[De];break}},"anonymous"),table:[{18:e,26:1,27:2,28:r,55:n,56:i,57:a},{1:[3]},{18:e,26:8,27:2,28:r,55:n,56:i,57:a},{18:e,26:9,27:2,28:r,55:n,56:i,57:a},t(s,[2,33],{29:10}),t(l,[2,61]),t(l,[2,62]),t(l,[2,63]),{1:[2,30]},{1:[2,31]},t(u,h,{30:11,31:12,24:13,32:15,33:16,34:17,43:30,58:31,1:[2,32],4:f,5:d,10:p,12:m,13:g,14:y,18:x,25:v,35:b,37:T,39:S,41:w,42:E,48:_,50:A,51:D,52:O,53:R,54:k,60:L,61:C,63:I,64:M,65:P,66:B,67:F}),t(s,[2,34]),{27:45,55:n,56:i,57:a},t(u,[2,37]),t(u,h,{24:13,32:15,33:16,34:17,43:30,58:31,31:46,4:f,5:d,10:p,12:m,13:g,14:y,18:x,25:v,35:b,37:T,39:S,41:w,42:E,48:_,50:A,51:D,52:O,53:R,54:k,60:L,61:C,63:I,64:M,65:P,66:B,67:F}),t(u,[2,39]),t(u,[2,40]),t(u,[2,41]),{36:[1,47]},{38:[1,48]},{40:[1,49]},t(u,[2,45]),t(u,[2,46]),{18:[1,50]},{4:f,5:d,10:p,12:m,13:g,14:y,43:51,58:31,60:L,61:C,63:I,64:M,65:P,66:B,67:F},{4:f,5:d,10:p,12:m,13:g,14:y,43:52,58:31,60:L,61:C,63:I,64:M,65:P,66:B,67:F},{4:f,5:d,10:p,12:m,13:g,14:y,43:53,58:31,60:L,61:C,63:I,64:M,65:P,66:B,67:F},{4:f,5:d,10:p,12:m,13:g,14:y,43:54,58:31,60:L,61:C,63:I,64:M,65:P,66:B,67:F},{4:f,5:d,10:p,12:m,13:g,14:y,43:55,58:31,60:L,61:C,63:I,64:M,65:P,66:B,67:F},{4:f,5:d,10:p,12:m,13:g,14:y,43:56,58:31,60:L,61:C,63:I,64:M,65:P,66:B,67:F},{4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:$,44:[1,57],47:[1,58],58:60,59:59,63:I,64:M,65:P,66:B,67:F},t(U,[2,64]),t(U,[2,66]),t(U,[2,67]),t(U,[2,70]),t(U,[2,71]),t(U,[2,72]),t(U,[2,73]),t(U,[2,74]),t(U,[2,75]),t(U,[2,76]),t(U,[2,77]),t(U,[2,78]),t(U,[2,79]),t(U,[2,80]),t(s,[2,35]),t(u,[2,38]),t(u,[2,42]),t(u,[2,43]),t(u,[2,44]),{3:64,4:K,5:ne,6:j,7:le,8:Z,9:ce,10:Q,11:ee,12:te,13:re,14:he,15:J,21:63},t(u,[2,53],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:$,49:[1,77],63:I,64:M,65:P,66:B,67:F}),t(u,[2,56],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:$,49:[1,78],63:I,64:M,65:P,66:B,67:F}),t(u,[2,57],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:$,63:I,64:M,65:P,66:B,67:F}),t(u,[2,58],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:$,63:I,64:M,65:P,66:B,67:F}),t(u,[2,59],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:$,63:I,64:M,65:P,66:B,67:F}),t(u,[2,60],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:$,63:I,64:M,65:P,66:B,67:F}),{45:[1,79]},{44:[1,80]},t(U,[2,65]),t(U,[2,81]),t(U,[2,82]),t(U,[2,83]),{3:82,4:K,5:ne,6:j,7:le,8:Z,9:ce,10:Q,11:ee,12:te,13:re,14:he,15:J,18:[1,81]},t(ye,[2,23]),t(ye,[2,1]),t(ye,[2,2]),t(ye,[2,3]),t(ye,[2,4]),t(ye,[2,5]),t(ye,[2,6]),t(ye,[2,7]),t(ye,[2,8]),t(ye,[2,9]),t(ye,[2,10]),t(ye,[2,11]),t(ye,[2,12]),t(u,[2,52],{58:31,43:83,4:f,5:d,10:p,12:m,13:g,14:y,60:L,61:C,63:I,64:M,65:P,66:B,67:F}),t(u,[2,55],{58:31,43:84,4:f,5:d,10:p,12:m,13:g,14:y,60:L,61:C,63:I,64:M,65:P,66:B,67:F}),{46:[1,85]},{45:[1,86]},{4:se,5:Se,6:W,8:Oe,11:ve,13:Pe,16:89,17:qe,18:Ge,19:Ne,20:Me,22:88,23:87},t(ye,[2,24]),t(u,[2,51],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:$,63:I,64:M,65:P,66:B,67:F}),t(u,[2,54],{59:59,58:60,4:f,5:d,8:G,10:p,12:m,13:g,14:y,18:$,63:I,64:M,65:P,66:B,67:F}),t(u,[2,47],{22:88,16:89,23:100,4:se,5:Se,6:W,8:Oe,11:ve,13:Pe,17:qe,18:Ge,19:Ne,20:Me}),{46:[1,101]},t(u,[2,29],{10:be}),t(q,[2,27],{16:103,4:se,5:Se,6:W,8:Oe,11:ve,13:Pe,17:qe,18:Ge,19:Ne,20:Me}),t(fe,[2,25]),t(fe,[2,13]),t(fe,[2,14]),t(fe,[2,15]),t(fe,[2,16]),t(fe,[2,17]),t(fe,[2,18]),t(fe,[2,19]),t(fe,[2,20]),t(fe,[2,21]),t(fe,[2,22]),t(u,[2,49],{10:be}),t(u,[2,48],{22:88,16:89,23:104,4:se,5:Se,6:W,8:Oe,11:ve,13:Pe,17:qe,18:Ge,19:Ne,20:Me}),{4:se,5:Se,6:W,8:Oe,11:ve,13:Pe,16:89,17:qe,18:Ge,19:Ne,20:Me,22:105},t(fe,[2,26]),t(u,[2,50],{10:be}),t(q,[2,28],{16:103,4:se,5:Se,6:W,8:Oe,11:ve,13:Pe,17:qe,18:Ge,19:Ne,20:Me})],defaultActions:{8:[2,30],9:[2,31]},parseError:o(function(Y,de){if(de.recoverable)this.trace(Y);else{var me=new Error(Y);throw me.hash=de,me}},"parseError"),parse:o(function(Y){var de=this,me=[0],Be=[],_e=[null],Te=[],Ue=this.table,De="",Qe=0,ot=0,Gt=0,Ze=2,Ve=1,ht=Te.slice.call(arguments,1),Ye=Object.create(this.lexer),ct={yy:{}};for(var Yt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Yt)&&(ct.yy[Yt]=this.yy[Yt]);Ye.setInput(Y,ct.yy),ct.yy.lexer=Ye,ct.yy.parser=this,typeof Ye.yylloc>"u"&&(Ye.yylloc={});var Tt=Ye.yylloc;Te.push(Tt);var Mt=Ye.options&&Ye.options.ranges;typeof ct.yy.parseError=="function"?this.parseError=ct.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function bt(Ce){me.length=me.length-2*Ce,_e.length=_e.length-Ce,Te.length=Te.length-Ce}o(bt,"popStack");function ft(){var Ce;return Ce=Be.pop()||Ye.lex()||Ve,typeof Ce!="number"&&(Ce instanceof Array&&(Be=Ce,Ce=Be.pop()),Ce=de.symbols_[Ce]||Ce),Ce}o(ft,"lex");for(var St,dt,vt,at,pn,kt,Fn={},tn,Nr,Mr,$n;;){if(vt=me[me.length-1],this.defaultActions[vt]?at=this.defaultActions[vt]:((St===null||typeof St>"u")&&(St=ft()),at=Ue[vt]&&Ue[vt][St]),typeof at>"u"||!at.length||!at[0]){var Dt="";$n=[];for(tn in Ue[vt])this.terminals_[tn]&&tn>Ze&&$n.push("'"+this.terminals_[tn]+"'");Ye.showPosition?Dt="Parse error on line "+(Qe+1)+`:
|
||
`+Ye.showPosition()+`
|
||
Expecting `+$n.join(", ")+", got '"+(this.terminals_[St]||St)+"'":Dt="Parse error on line "+(Qe+1)+": Unexpected "+(St==Ve?"end of input":"'"+(this.terminals_[St]||St)+"'"),this.parseError(Dt,{text:Ye.match,token:this.terminals_[St]||St,line:Ye.yylineno,loc:Tt,expected:$n})}if(at[0]instanceof Array&&at.length>1)throw new Error("Parse Error: multiple actions possible at state: "+vt+", token: "+St);switch(at[0]){case 1:me.push(St),_e.push(Ye.yytext),Te.push(Ye.yylloc),me.push(at[1]),St=null,dt?(St=dt,dt=null):(ot=Ye.yyleng,De=Ye.yytext,Qe=Ye.yylineno,Tt=Ye.yylloc,Gt>0&&Gt--);break;case 2:if(Nr=this.productions_[at[1]][1],Fn.$=_e[_e.length-Nr],Fn._$={first_line:Te[Te.length-(Nr||1)].first_line,last_line:Te[Te.length-1].last_line,first_column:Te[Te.length-(Nr||1)].first_column,last_column:Te[Te.length-1].last_column},Mt&&(Fn._$.range=[Te[Te.length-(Nr||1)].range[0],Te[Te.length-1].range[1]]),kt=this.performAction.apply(Fn,[De,ot,Qe,ct.yy,at[1],_e,Te].concat(ht)),typeof kt<"u")return kt;Nr&&(me=me.slice(0,-1*Nr*2),_e=_e.slice(0,-1*Nr),Te=Te.slice(0,-1*Nr)),me.push(this.productions_[at[1]][0]),_e.push(Fn.$),Te.push(Fn._$),Mr=Ue[me[me.length-2]][me[me.length-1]],me.push(Mr);break;case 3:return!0}}return!0},"parse")},oe=function(){var xe={EOF:1,parseError:o(function(de,me){if(this.yy.parser)this.yy.parser.parseError(de,me);else throw new Error(de)},"parseError"),setInput:o(function(Y,de){return this.yy=de||this.yy||{},this._input=Y,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},"setInput"),input:o(function(){var Y=this._input[0];this.yytext+=Y,this.yyleng++,this.offset++,this.match+=Y,this.matched+=Y;var de=Y.match(/(?:\r\n?|\n).*/g);return de?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Y},"input"),unput:o(function(Y){var de=Y.length,me=Y.split(/(?:\r\n?|\n)/g);this._input=Y+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-de),this.offset-=de;var Be=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),me.length-1&&(this.yylineno-=me.length-1);var _e=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:me?(me.length===Be.length?this.yylloc.first_column:0)+Be[Be.length-me.length].length-me[0].length:this.yylloc.first_column-de},this.options.ranges&&(this.yylloc.range=[_e[0],_e[0]+this.yyleng-de]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(Y){this.unput(this.match.slice(Y))},"less"),pastInput:o(function(){var Y=this.matched.substr(0,this.matched.length-this.match.length);return(Y.length>20?"...":"")+Y.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var Y=this.match;return Y.length<20&&(Y+=this._input.substr(0,20-Y.length)),(Y.substr(0,20)+(Y.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var Y=this.pastInput(),de=new Array(Y.length+1).join("-");return Y+this.upcomingInput()+`
|
||
`+de+"^"},"showPosition"),test_match:o(function(Y,de){var me,Be,_e;if(this.options.backtrack_lexer&&(_e={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&&(_e.yylloc.range=this.yylloc.range.slice(0))),Be=Y[0].match(/(?:\r\n?|\n).*/g),Be&&(this.yylineno+=Be.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Be?Be[Be.length-1].length-Be[Be.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Y[0].length},this.yytext+=Y[0],this.match+=Y[0],this.matches=Y,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(Y[0].length),this.matched+=Y[0],me=this.performAction.call(this,this.yy,this,de,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),me)return me;if(this._backtrack){for(var Te in _e)this[Te]=_e[Te];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Y,de,me,Be;this._more||(this.yytext="",this.match="");for(var _e=this._currentRules(),Te=0;Te<_e.length;Te++)if(me=this._input.match(this.rules[_e[Te]]),me&&(!de||me[0].length>de[0].length)){if(de=me,Be=Te,this.options.backtrack_lexer){if(Y=this.test_match(me,_e[Te]),Y!==!1)return Y;if(this._backtrack){de=!1;continue}else return!1}else if(!this.options.flex)break}return de?(Y=this.test_match(de,_e[Be]),Y!==!1?Y:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var de=this.next();return de||this.lex()},"lex"),begin:o(function(de){this.conditionStack.push(de)},"begin"),popState:o(function(){var de=this.conditionStack.length-1;return de>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(de){return de=this.conditionStack.length-1-Math.abs(de||0),de>=0?this.conditionStack[de]:"INITIAL"},"topState"),pushState:o(function(de){this.begin(de)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(de,me,Be,_e){var Te=_e;switch(Be){case 0:break;case 1:break;case 2:return 55;case 3:break;case 4:return this.begin("title"),35;break;case 5:return this.popState(),"title_value";break;case 6:return this.begin("acc_title"),37;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),39;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 48;case 14:return 50;case 15:return 49;case 16:return 51;case 17:return 52;case 18:return 53;case 19:return 54;case 20:return 25;case 21:this.begin("md_string");break;case 22:return"MD_STR";case 23:this.popState();break;case 24:this.begin("string");break;case 25:this.popState();break;case 26:return"STR";case 27:this.begin("class_name");break;case 28:return this.popState(),47;break;case 29:return this.begin("point_start"),44;break;case 30:return this.begin("point_x"),45;break;case 31:this.popState();break;case 32:this.popState(),this.begin("point_y");break;case 33:return this.popState(),46;break;case 34:return 28;case 35:return 4;case 36:return 11;case 37:return 64;case 38:return 10;case 39:return 65;case 40:return 65;case 41:return 14;case 42:return 13;case 43:return 67;case 44:return 66;case 45:return 12;case 46:return 8;case 47:return 5;case 48:return 18;case 49:return 56;case 50:return 63;case 51:return 57}},"anonymous"),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,/^(?:classDef\b)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?::::)/i,/^(?:^\w+)/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:{class_name:{rules:[28],inclusive:!1},point_y:{rules:[33],inclusive:!1},point_x:{rules:[32],inclusive:!1},point_start:{rules:[30,31],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:[22,23],inclusive:!1},string:{rules:[25,26],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,6,8,10,13,14,15,16,17,18,19,20,21,24,27,29,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],inclusive:!0}}};return xe}();ae.lexer=oe;function V(){this.yy={}}return o(V,"Parser"),V.prototype=ae,ae.Parser=V,new V}();pB.parser=pB;cme=pB});var bs,B6,hme=N(()=>{"use strict";pr();_a();pt();My();bs=fh(),B6=class{constructor(){this.classes=new Map;this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData()}static{o(this,"QuadrantBuilder")}getDefaultData(){return{titleText:"",quadrant1Text:"",quadrant2Text:"",quadrant3Text:"",quadrant4Text:"",xAxisLeftText:"",xAxisRightText:"",yAxisBottomText:"",yAxisTopText:"",points:[]}}getDefaultConfig(){return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:lr.quadrantChart?.chartWidth||500,chartWidth:lr.quadrantChart?.chartHeight||500,titlePadding:lr.quadrantChart?.titlePadding||10,titleFontSize:lr.quadrantChart?.titleFontSize||20,quadrantPadding:lr.quadrantChart?.quadrantPadding||5,xAxisLabelPadding:lr.quadrantChart?.xAxisLabelPadding||5,yAxisLabelPadding:lr.quadrantChart?.yAxisLabelPadding||5,xAxisLabelFontSize:lr.quadrantChart?.xAxisLabelFontSize||16,yAxisLabelFontSize:lr.quadrantChart?.yAxisLabelFontSize||16,quadrantLabelFontSize:lr.quadrantChart?.quadrantLabelFontSize||16,quadrantTextTopPadding:lr.quadrantChart?.quadrantTextTopPadding||5,pointTextPadding:lr.quadrantChart?.pointTextPadding||5,pointLabelFontSize:lr.quadrantChart?.pointLabelFontSize||12,pointRadius:lr.quadrantChart?.pointRadius||5,xAxisPosition:lr.quadrantChart?.xAxisPosition||"top",yAxisPosition:lr.quadrantChart?.yAxisPosition||"left",quadrantInternalBorderStrokeWidth:lr.quadrantChart?.quadrantInternalBorderStrokeWidth||1,quadrantExternalBorderStrokeWidth:lr.quadrantChart?.quadrantExternalBorderStrokeWidth||2}}getDefaultThemeConfig(){return{quadrant1Fill:bs.quadrant1Fill,quadrant2Fill:bs.quadrant2Fill,quadrant3Fill:bs.quadrant3Fill,quadrant4Fill:bs.quadrant4Fill,quadrant1TextFill:bs.quadrant1TextFill,quadrant2TextFill:bs.quadrant2TextFill,quadrant3TextFill:bs.quadrant3TextFill,quadrant4TextFill:bs.quadrant4TextFill,quadrantPointFill:bs.quadrantPointFill,quadrantPointTextFill:bs.quadrantPointTextFill,quadrantXAxisTextFill:bs.quadrantXAxisTextFill,quadrantYAxisTextFill:bs.quadrantYAxisTextFill,quadrantTitleFill:bs.quadrantTitleFill,quadrantInternalBorderStrokeFill:bs.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:bs.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),this.classes=new Map,X.info("clear called")}setData(e){this.data={...this.data,...e}}addPoints(e){this.data.points=[...e,...this.data.points]}addClass(e,r){this.classes.set(e,r)}setConfig(e){X.trace("setConfig called with: ",e),this.config={...this.config,...e}}setThemeConfig(e){X.trace("setThemeConfig called with: ",e),this.themeConfig={...this.themeConfig,...e}}calculateSpace(e,r,n,i){let a=this.config.xAxisLabelPadding*2+this.config.xAxisLabelFontSize,s={top:e==="top"&&r?a:0,bottom:e==="bottom"&&r?a:0},l=this.config.yAxisLabelPadding*2+this.config.yAxisLabelFontSize,u={left:this.config.yAxisPosition==="left"&&n?l:0,right:this.config.yAxisPosition==="right"&&n?l:0},h=this.config.titleFontSize+this.config.titlePadding*2,f={top:i?h:0},d=this.config.quadrantPadding+u.left,p=this.config.quadrantPadding+s.top+f.top,m=this.config.chartWidth-this.config.quadrantPadding*2-u.left-u.right,g=this.config.chartHeight-this.config.quadrantPadding*2-s.top-s.bottom-f.top,y=m/2,x=g/2;return{xAxisSpace:s,yAxisSpace:u,titleSpace:f,quadrantSpace:{quadrantLeft:d,quadrantTop:p,quadrantWidth:m,quadrantHalfWidth:y,quadrantHeight:g,quadrantHalfHeight:x}}}getAxisLabels(e,r,n,i){let{quadrantSpace:a,titleSpace:s}=i,{quadrantHalfHeight:l,quadrantHeight:u,quadrantLeft:h,quadrantHalfWidth:f,quadrantTop:d,quadrantWidth:p}=a,m=!!this.data.xAxisRightText,g=!!this.data.yAxisTopText,y=[];return this.data.xAxisLeftText&&r&&y.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:h+(m?f/2:0),y:e==="top"?this.config.xAxisLabelPadding+s.top:this.config.xAxisLabelPadding+d+u+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:m?"center":"left",horizontalPos:"top",rotation:0}),this.data.xAxisRightText&&r&&y.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:h+f+(m?f/2:0),y:e==="top"?this.config.xAxisLabelPadding+s.top:this.config.xAxisLabelPadding+d+u+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:m?"center":"left",horizontalPos:"top",rotation:0}),this.data.yAxisBottomText&&n&&y.push({text:this.data.yAxisBottomText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+h+p+this.config.quadrantPadding,y:d+u-(g?l/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:g?"center":"left",horizontalPos:"top",rotation:-90}),this.data.yAxisTopText&&n&&y.push({text:this.data.yAxisTopText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+h+p+this.config.quadrantPadding,y:d+l-(g?l/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:g?"center":"left",horizontalPos:"top",rotation:-90}),y}getQuadrants(e){let{quadrantSpace:r}=e,{quadrantHalfHeight:n,quadrantLeft:i,quadrantHalfWidth:a,quadrantTop:s}=r,l=[{text:{text:this.data.quadrant1Text,fill:this.themeConfig.quadrant1TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:i+a,y:s,width:a,height:n,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:i,y:s,width:a,height:n,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:i,y:s+n,width:a,height:n,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:i+a,y:s+n,width:a,height:n,fill:this.themeConfig.quadrant4Fill}];for(let u of l)u.text.x=u.x+u.width/2,this.data.points.length===0?(u.text.y=u.y+u.height/2,u.text.horizontalPos="middle"):(u.text.y=u.y+this.config.quadrantTextTopPadding,u.text.horizontalPos="top");return l}getQuadrantPoints(e){let{quadrantSpace:r}=e,{quadrantHeight:n,quadrantLeft:i,quadrantTop:a,quadrantWidth:s}=r,l=Tl().domain([0,1]).range([i,s+i]),u=Tl().domain([0,1]).range([n+a,a]);return this.data.points.map(f=>{let d=this.classes.get(f.className);return d&&(f={...d,...f}),{x:l(f.x),y:u(f.y),fill:f.color??this.themeConfig.quadrantPointFill,radius:f.radius??this.config.pointRadius,text:{text:f.text,fill:this.themeConfig.quadrantPointTextFill,x:l(f.x),y:u(f.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0},strokeColor:f.strokeColor??this.themeConfig.quadrantPointFill,strokeWidth:f.strokeWidth??"0px"}})}getBorders(e){let r=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:n}=e,{quadrantHalfHeight:i,quadrantHeight:a,quadrantLeft:s,quadrantHalfWidth:l,quadrantTop:u,quadrantWidth:h}=n;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s-r,y1:u,x2:s+h+r,y2:u},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s+h,y1:u+r,x2:s+h,y2:u+a-r},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s-r,y1:u+a,x2:s+h+r,y2:u+a},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:s,y1:u+r,x2:s,y2:u+a-r},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:s+l,y1:u+r,x2:s+l,y2:u+a-r},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:s+r,y1:u+i,x2:s+h-r,y2:u+i}]}getTitle(e){if(e)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(){let e=this.config.showXAxis&&!!(this.data.xAxisLeftText||this.data.xAxisRightText),r=this.config.showYAxis&&!!(this.data.yAxisTopText||this.data.yAxisBottomText),n=this.config.showTitle&&!!this.data.titleText,i=this.data.points.length>0?"bottom":this.config.xAxisPosition,a=this.calculateSpace(i,e,r,n);return{points:this.getQuadrantPoints(a),quadrants:this.getQuadrants(a),axisLabels:this.getAxisLabels(i,e,r,a),borderLines:this.getBorders(a),title:this.getTitle(n)}}}});function mB(t){return!/^#?([\dA-Fa-f]{6}|[\dA-Fa-f]{3})$/.test(t)}function fme(t){return!/^\d+$/.test(t)}function dme(t){return!/^\d+px$/.test(t)}var r0,pme=N(()=>{"use strict";r0=class extends Error{static{o(this,"InvalidStyleError")}constructor(e,r,n){super(`value for ${e} ${r} is invalid, please use a valid ${n}`),this.name="InvalidStyleError"}};o(mB,"validateHexCode");o(fme,"validateNumber");o(dme,"validateSizeInPixels")});function nh(t){return ar(t.trim(),rQe)}function nQe(t){Sa.setData({quadrant1Text:nh(t.text)})}function iQe(t){Sa.setData({quadrant2Text:nh(t.text)})}function aQe(t){Sa.setData({quadrant3Text:nh(t.text)})}function sQe(t){Sa.setData({quadrant4Text:nh(t.text)})}function oQe(t){Sa.setData({xAxisLeftText:nh(t.text)})}function lQe(t){Sa.setData({xAxisRightText:nh(t.text)})}function cQe(t){Sa.setData({yAxisTopText:nh(t.text)})}function uQe(t){Sa.setData({yAxisBottomText:nh(t.text)})}function gB(t){let e={};for(let r of t){let[n,i]=r.trim().split(/\s*:\s*/);if(n==="radius"){if(fme(i))throw new r0(n,i,"number");e.radius=parseInt(i)}else if(n==="color"){if(mB(i))throw new r0(n,i,"hex code");e.color=i}else if(n==="stroke-color"){if(mB(i))throw new r0(n,i,"hex code");e.strokeColor=i}else if(n==="stroke-width"){if(dme(i))throw new r0(n,i,"number of pixels (eg. 10px)");e.strokeWidth=i}else throw new Error(`style named ${n} is not supported.`)}return e}function hQe(t,e,r,n,i){let a=gB(i);Sa.addPoints([{x:r,y:n,text:nh(t.text),className:e,...a}])}function fQe(t,e){Sa.addClass(t,gB(e))}function dQe(t){Sa.setConfig({chartWidth:t})}function pQe(t){Sa.setConfig({chartHeight:t})}function mQe(){let t=ge(),{themeVariables:e,quadrantChart:r}=t;return r&&Sa.setConfig(r),Sa.setThemeConfig({quadrant1Fill:e.quadrant1Fill,quadrant2Fill:e.quadrant2Fill,quadrant3Fill:e.quadrant3Fill,quadrant4Fill:e.quadrant4Fill,quadrant1TextFill:e.quadrant1TextFill,quadrant2TextFill:e.quadrant2TextFill,quadrant3TextFill:e.quadrant3TextFill,quadrant4TextFill:e.quadrant4TextFill,quadrantPointFill:e.quadrantPointFill,quadrantPointTextFill:e.quadrantPointTextFill,quadrantXAxisTextFill:e.quadrantXAxisTextFill,quadrantYAxisTextFill:e.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:e.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:e.quadrantInternalBorderStrokeFill,quadrantTitleFill:e.quadrantTitleFill}),Sa.setData({titleText:Rr()}),Sa.build()}var rQe,Sa,gQe,mme,gme=N(()=>{"use strict";Xt();dr();ui();hme();pme();rQe=ge();o(nh,"textSanitizer");Sa=new B6;o(nQe,"setQuadrant1Text");o(iQe,"setQuadrant2Text");o(aQe,"setQuadrant3Text");o(sQe,"setQuadrant4Text");o(oQe,"setXAxisLeftText");o(lQe,"setXAxisRightText");o(cQe,"setYAxisTopText");o(uQe,"setYAxisBottomText");o(gB,"parseStyles");o(hQe,"addPoint");o(fQe,"addClass");o(dQe,"setWidth");o(pQe,"setHeight");o(mQe,"getQuadrantData");gQe=o(function(){Sa.clear(),wr()},"clear"),mme={setWidth:dQe,setHeight:pQe,setQuadrant1Text:nQe,setQuadrant2Text:iQe,setQuadrant3Text:aQe,setQuadrant4Text:sQe,setXAxisLeftText:oQe,setXAxisRightText:lQe,setYAxisTopText:cQe,setYAxisBottomText:uQe,parseStyles:gB,addPoint:hQe,addClass:fQe,getQuadrantData:mQe,clear:gQe,setAccTitle:Cr,getAccTitle:_r,setDiagramTitle:Or,getDiagramTitle:Rr,getAccDescription:Lr,setAccDescription:Dr}});var yQe,yme,vme=N(()=>{"use strict";pr();Xt();pt();Ci();yQe=o((t,e,r,n)=>{function i(A){return A==="top"?"hanging":"middle"}o(i,"getDominantBaseLine");function a(A){return A==="left"?"start":"middle"}o(a,"getTextAnchor");function s(A){return`translate(${A.x}, ${A.y}) rotate(${A.rotation||0})`}o(s,"getTransformation");let l=ge();X.debug(`Rendering quadrant chart
|
||
`+t);let u=l.securityLevel,h;u==="sandbox"&&(h=ze("#i"+e));let d=(u==="sandbox"?ze(h.nodes()[0].contentDocument.body):ze("body")).select(`[id="${e}"]`),p=d.append("g").attr("class","main"),m=l.quadrantChart?.chartWidth??500,g=l.quadrantChart?.chartHeight??500;fn(d,g,m,l.quadrantChart?.useMaxWidth??!0),d.attr("viewBox","0 0 "+m+" "+g),n.db.setHeight(g),n.db.setWidth(m);let y=n.db.getQuadrantData(),x=p.append("g").attr("class","quadrants"),v=p.append("g").attr("class","border"),b=p.append("g").attr("class","data-points"),T=p.append("g").attr("class","labels"),S=p.append("g").attr("class","title");y.title&&S.append("text").attr("x",0).attr("y",0).attr("fill",y.title.fill).attr("font-size",y.title.fontSize).attr("dominant-baseline",i(y.title.horizontalPos)).attr("text-anchor",a(y.title.verticalPos)).attr("transform",s(y.title)).text(y.title.text),y.borderLines&&v.selectAll("line").data(y.borderLines).enter().append("line").attr("x1",A=>A.x1).attr("y1",A=>A.y1).attr("x2",A=>A.x2).attr("y2",A=>A.y2).style("stroke",A=>A.strokeFill).style("stroke-width",A=>A.strokeWidth);let w=x.selectAll("g.quadrant").data(y.quadrants).enter().append("g").attr("class","quadrant");w.append("rect").attr("x",A=>A.x).attr("y",A=>A.y).attr("width",A=>A.width).attr("height",A=>A.height).attr("fill",A=>A.fill),w.append("text").attr("x",0).attr("y",0).attr("fill",A=>A.text.fill).attr("font-size",A=>A.text.fontSize).attr("dominant-baseline",A=>i(A.text.horizontalPos)).attr("text-anchor",A=>a(A.text.verticalPos)).attr("transform",A=>s(A.text)).text(A=>A.text.text),T.selectAll("g.label").data(y.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text(A=>A.text).attr("fill",A=>A.fill).attr("font-size",A=>A.fontSize).attr("dominant-baseline",A=>i(A.horizontalPos)).attr("text-anchor",A=>a(A.verticalPos)).attr("transform",A=>s(A));let _=b.selectAll("g.data-point").data(y.points).enter().append("g").attr("class","data-point");_.append("circle").attr("cx",A=>A.x).attr("cy",A=>A.y).attr("r",A=>A.radius).attr("fill",A=>A.fill).attr("stroke",A=>A.strokeColor).attr("stroke-width",A=>A.strokeWidth),_.append("text").attr("x",0).attr("y",0).text(A=>A.text.text).attr("fill",A=>A.text.fill).attr("font-size",A=>A.text.fontSize).attr("dominant-baseline",A=>i(A.text.horizontalPos)).attr("text-anchor",A=>a(A.text.verticalPos)).attr("transform",A=>s(A.text))},"draw"),yme={draw:yQe}});var xme={};ur(xme,{diagram:()=>vQe});var vQe,bme=N(()=>{"use strict";ume();gme();vme();vQe={parser:cme,db:mme,renderer:yme,styles:o(()=>"","styles")}});var yB,kme,Eme=N(()=>{"use strict";yB=function(){var t=o(function(I,M,P,B){for(P=P||{},B=I.length;B--;P[I[B]]=M);return P},"o"),e=[1,10,12,14,16,18,19,21,23],r=[2,6],n=[1,3],i=[1,5],a=[1,6],s=[1,7],l=[1,5,10,12,14,16,18,19,21,23,34,35,36],u=[1,25],h=[1,26],f=[1,28],d=[1,29],p=[1,30],m=[1,31],g=[1,32],y=[1,33],x=[1,34],v=[1,35],b=[1,36],T=[1,37],S=[1,43],w=[1,42],E=[1,47],_=[1,50],A=[1,10,12,14,16,18,19,21,23,34,35,36],D=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],O=[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],R=[1,64],k={trace:o(function(){},"trace"),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:o(function(M,P,B,F,G,$,U){var K=$.length-1;switch(G){case 5:F.setOrientation($[K]);break;case 9:F.setDiagramTitle($[K].text.trim());break;case 12:F.setLineData({text:"",type:"text"},$[K]);break;case 13:F.setLineData($[K-1],$[K]);break;case 14:F.setBarData({text:"",type:"text"},$[K]);break;case 15:F.setBarData($[K-1],$[K]);break;case 16:this.$=$[K].trim(),F.setAccTitle(this.$);break;case 17:case 18:this.$=$[K].trim(),F.setAccDescription(this.$);break;case 19:this.$=$[K-1];break;case 20:this.$=[Number($[K-2]),...$[K]];break;case 21:this.$=[Number($[K])];break;case 22:F.setXAxisTitle($[K]);break;case 23:F.setXAxisTitle($[K-1]);break;case 24:F.setXAxisTitle({type:"text",text:""});break;case 25:F.setXAxisBand($[K]);break;case 26:F.setXAxisRangeData(Number($[K-2]),Number($[K]));break;case 27:this.$=$[K-1];break;case 28:this.$=[$[K-2],...$[K]];break;case 29:this.$=[$[K]];break;case 30:F.setYAxisTitle($[K]);break;case 31:F.setYAxisTitle($[K-1]);break;case 32:F.setYAxisTitle({type:"text",text:""});break;case 33:F.setYAxisRangeData(Number($[K-2]),Number($[K]));break;case 37:this.$={text:$[K],type:"text"};break;case 38:this.$={text:$[K],type:"text"};break;case 39:this.$={text:$[K],type:"markdown"};break;case 40:this.$=$[K];break;case 41:this.$=$[K-1]+""+$[K];break}},"anonymous"),table:[t(e,r,{3:1,4:2,7:4,5:n,34:i,35:a,36:s}),{1:[3]},t(e,r,{4:2,7:4,3:8,5:n,34:i,35:a,36:s}),t(e,r,{4:2,7:4,6:9,3:10,5:n,8:[1,11],34:i,35:a,36:s}),{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]},t(l,[2,34]),t(l,[2,35]),t(l,[2,36]),{1:[2,1]},t(e,r,{4:2,7:4,3:21,5:n,34:i,35:a,36:s}),{1:[2,3]},t(l,[2,5]),t(e,[2,7],{4:22,34:i,35:a,36:s}),{11:23,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:x,48:v,49:b,50:T},{11:39,13:38,24:S,27:w,29:40,30:41,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:x,48:v,49:b,50:T},{11:45,15:44,27:E,33:46,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:x,48:v,49:b,50:T},{11:49,17:48,24:_,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:x,48:v,49:b,50:T},{11:52,17:51,24:_,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:x,48:v,49:b,50:T},{20:[1,53]},{22:[1,54]},t(A,[2,18]),{1:[2,2]},t(A,[2,8]),t(A,[2,9]),t(D,[2,37],{40:55,41:f,42:d,43:p,44:m,45:g,46:y,47:x,48:v,49:b,50:T}),t(D,[2,38]),t(D,[2,39]),t(O,[2,40]),t(O,[2,42]),t(O,[2,43]),t(O,[2,44]),t(O,[2,45]),t(O,[2,46]),t(O,[2,47]),t(O,[2,48]),t(O,[2,49]),t(O,[2,50]),t(O,[2,51]),t(A,[2,10]),t(A,[2,22],{30:41,29:56,24:S,27:w}),t(A,[2,24]),t(A,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:x,48:v,49:b,50:T},t(A,[2,11]),t(A,[2,30],{33:60,27:E}),t(A,[2,32]),{31:[1,61]},t(A,[2,12]),{17:62,24:_},{25:63,27:R},t(A,[2,14]),{17:65,24:_},t(A,[2,16]),t(A,[2,17]),t(O,[2,41]),t(A,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},t(A,[2,31]),{27:[1,69]},t(A,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},t(A,[2,15]),t(A,[2,26]),t(A,[2,27]),{11:59,32:72,37:24,38:u,39:h,40:27,41:f,42:d,43:p,44:m,45:g,46:y,47:x,48:v,49:b,50:T},t(A,[2,33]),t(A,[2,19]),{25:73,27:R},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:o(function(M,P){if(P.recoverable)this.trace(M);else{var B=new Error(M);throw B.hash=P,B}},"parseError"),parse:o(function(M){var P=this,B=[0],F=[],G=[null],$=[],U=this.table,K="",ne=0,j=0,le=0,Z=2,ce=1,Q=$.slice.call(arguments,1),ee=Object.create(this.lexer),te={yy:{}};for(var re in this.yy)Object.prototype.hasOwnProperty.call(this.yy,re)&&(te.yy[re]=this.yy[re]);ee.setInput(M,te.yy),te.yy.lexer=ee,te.yy.parser=this,typeof ee.yylloc>"u"&&(ee.yylloc={});var he=ee.yylloc;$.push(he);var J=ee.options&&ee.options.ranges;typeof te.yy.parseError=="function"?this.parseError=te.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ye(ae){B.length=B.length-2*ae,G.length=G.length-ae,$.length=$.length-ae}o(ye,"popStack");function se(){var ae;return ae=F.pop()||ee.lex()||ce,typeof ae!="number"&&(ae instanceof Array&&(F=ae,ae=F.pop()),ae=P.symbols_[ae]||ae),ae}o(se,"lex");for(var Se,W,Oe,ve,Pe,qe,Ge={},Ne,Me,be,q;;){if(Oe=B[B.length-1],this.defaultActions[Oe]?ve=this.defaultActions[Oe]:((Se===null||typeof Se>"u")&&(Se=se()),ve=U[Oe]&&U[Oe][Se]),typeof ve>"u"||!ve.length||!ve[0]){var fe="";q=[];for(Ne in U[Oe])this.terminals_[Ne]&&Ne>Z&&q.push("'"+this.terminals_[Ne]+"'");ee.showPosition?fe="Parse error on line "+(ne+1)+`:
|
||
`+ee.showPosition()+`
|
||
Expecting `+q.join(", ")+", got '"+(this.terminals_[Se]||Se)+"'":fe="Parse error on line "+(ne+1)+": Unexpected "+(Se==ce?"end of input":"'"+(this.terminals_[Se]||Se)+"'"),this.parseError(fe,{text:ee.match,token:this.terminals_[Se]||Se,line:ee.yylineno,loc:he,expected:q})}if(ve[0]instanceof Array&&ve.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Oe+", token: "+Se);switch(ve[0]){case 1:B.push(Se),G.push(ee.yytext),$.push(ee.yylloc),B.push(ve[1]),Se=null,W?(Se=W,W=null):(j=ee.yyleng,K=ee.yytext,ne=ee.yylineno,he=ee.yylloc,le>0&&le--);break;case 2:if(Me=this.productions_[ve[1]][1],Ge.$=G[G.length-Me],Ge._$={first_line:$[$.length-(Me||1)].first_line,last_line:$[$.length-1].last_line,first_column:$[$.length-(Me||1)].first_column,last_column:$[$.length-1].last_column},J&&(Ge._$.range=[$[$.length-(Me||1)].range[0],$[$.length-1].range[1]]),qe=this.performAction.apply(Ge,[K,j,ne,te.yy,ve[1],G,$].concat(Q)),typeof qe<"u")return qe;Me&&(B=B.slice(0,-1*Me*2),G=G.slice(0,-1*Me),$=$.slice(0,-1*Me)),B.push(this.productions_[ve[1]][0]),G.push(Ge.$),$.push(Ge._$),be=U[B[B.length-2]][B[B.length-1]],B.push(be);break;case 3:return!0}}return!0},"parse")},L=function(){var I={EOF:1,parseError:o(function(P,B){if(this.yy.parser)this.yy.parser.parseError(P,B);else throw new Error(P)},"parseError"),setInput:o(function(M,P){return this.yy=P||this.yy||{},this._input=M,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},"setInput"),input:o(function(){var M=this._input[0];this.yytext+=M,this.yyleng++,this.offset++,this.match+=M,this.matched+=M;var P=M.match(/(?:\r\n?|\n).*/g);return P?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),M},"input"),unput:o(function(M){var P=M.length,B=M.split(/(?:\r\n?|\n)/g);this._input=M+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-P),this.offset-=P;var F=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),B.length-1&&(this.yylineno-=B.length-1);var G=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:B?(B.length===F.length?this.yylloc.first_column:0)+F[F.length-B.length].length-B[0].length:this.yylloc.first_column-P},this.options.ranges&&(this.yylloc.range=[G[0],G[0]+this.yyleng-P]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(M){this.unput(this.match.slice(M))},"less"),pastInput:o(function(){var M=this.matched.substr(0,this.matched.length-this.match.length);return(M.length>20?"...":"")+M.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var M=this.match;return M.length<20&&(M+=this._input.substr(0,20-M.length)),(M.substr(0,20)+(M.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var M=this.pastInput(),P=new Array(M.length+1).join("-");return M+this.upcomingInput()+`
|
||
`+P+"^"},"showPosition"),test_match:o(function(M,P){var B,F,G;if(this.options.backtrack_lexer&&(G={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&&(G.yylloc.range=this.yylloc.range.slice(0))),F=M[0].match(/(?:\r\n?|\n).*/g),F&&(this.yylineno+=F.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:F?F[F.length-1].length-F[F.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+M[0].length},this.yytext+=M[0],this.match+=M[0],this.matches=M,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(M[0].length),this.matched+=M[0],B=this.performAction.call(this,this.yy,this,P,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),B)return B;if(this._backtrack){for(var $ in G)this[$]=G[$];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var M,P,B,F;this._more||(this.yytext="",this.match="");for(var G=this._currentRules(),$=0;$<G.length;$++)if(B=this._input.match(this.rules[G[$]]),B&&(!P||B[0].length>P[0].length)){if(P=B,F=$,this.options.backtrack_lexer){if(M=this.test_match(B,G[$]),M!==!1)return M;if(this._backtrack){P=!1;continue}else return!1}else if(!this.options.flex)break}return P?(M=this.test_match(P,G[F]),M!==!1?M:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var P=this.next();return P||this.lex()},"lex"),begin:o(function(P){this.conditionStack.push(P)},"begin"),popState:o(function(){var P=this.conditionStack.length-1;return P>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(P){return P=this.conditionStack.length-1-Math.abs(P||0),P>=0?this.conditionStack[P]:"INITIAL"},"topState"),pushState:o(function(P){this.begin(P)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(P,B,F,G){var $=G;switch(F){case 0:break;case 1:break;case 2:return this.popState(),34;break;case 3:return this.popState(),34;break;case 4:return 34;case 5:break;case 6:return 10;case 7:return this.pushState("acc_title"),19;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.pushState("acc_descr"),21;break;case 10:return this.popState(),"acc_descr_value";break;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 5;case 16:return 8;case 17:return this.pushState("axis_data"),"X_AXIS";break;case 18:return this.pushState("axis_data"),"Y_AXIS";break;case 19:return this.pushState("axis_band_data"),24;break;case 20:return 31;case 21:return this.pushState("data"),16;break;case 22:return this.pushState("data"),18;break;case 23:return this.pushState("data_inner"),24;break;case 24:return 27;case 25:return this.popState(),26;break;case 26:this.popState();break;case 27:this.pushState("string");break;case 28:this.popState();break;case 29:return"STR";case 30:return 24;case 31:return 26;case 32:return 43;case 33:return"COLON";case 34:return 44;case 35:return 28;case 36:return 45;case 37:return 46;case 38:return 48;case 39:return 50;case 40:return 47;case 41:return 41;case 42:return 49;case 43:return 42;case 44:break;case 45:return 35;case 46:return 36}},"anonymous"),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,/^(?:xychart\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,18,21,22,24,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},data:{rules:[0,1,3,4,5,6,7,9,11,14,15,16,17,18,21,22,23,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},axis_band_data:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},axis_data:{rules:[0,1,2,4,5,6,7,9,11,14,15,16,17,18,19,20,21,22,24,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],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:[28,29],inclusive:!1},INITIAL:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0}}};return I}();k.lexer=L;function C(){this.yy={}}return o(C,"Parser"),C.prototype=k,k.Parser=C,new C}();yB.parser=yB;kme=yB});function vB(t){return t.type==="bar"}function F6(t){return t.type==="band"}function ey(t){return t.type==="linear"}var $6=N(()=>{"use strict";o(vB,"isBarPlot");o(F6,"isBandAxisData");o(ey,"isLinearAxisData")});var ty,xB=N(()=>{"use strict";$o();ty=class{constructor(e){this.parentGroup=e}static{o(this,"TextDimensionCalculatorWithFont")}getMaxDimension(e,r){if(!this.parentGroup)return{width:e.reduce((a,s)=>Math.max(s.length,a),0)*r,height:r};let n={width:0,height:0},i=this.parentGroup.append("g").attr("visibility","hidden").attr("font-size",r);for(let a of e){let s=SQ(i,1,a),l=s?s.width:a.length*r,u=s?s.height:r;n.width=Math.max(n.width,l),n.height=Math.max(n.height,u)}return i.remove(),n}}});var ry,bB=N(()=>{"use strict";ry=class{constructor(e,r,n,i){this.axisConfig=e;this.title=r;this.textDimensionCalculator=n;this.axisThemeConfig=i;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"}static{o(this,"BaseAxis")}setRange(e){this.range=e,this.axisPosition==="left"||this.axisPosition==="right"?this.boundingRect.height=e[1]-e[0]:this.boundingRect.width=e[1]-e[0],this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(e){this.axisPosition=e,this.setRange(this.range)}getTickDistance(){let e=this.getRange();return Math.abs(e[0]-e[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map(e=>e.toString()),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){.7*this.getTickDistance()>this.outerPadding*2&&(this.outerPadding=Math.floor(.7*this.getTickDistance()/2)),this.recalculateScale()}calculateSpaceIfDrawnHorizontally(e){let r=e.height;if(this.axisConfig.showAxisLine&&r>this.axisConfig.axisLineWidth&&(r-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let n=this.getLabelDimension(),i=.2*e.width;this.outerPadding=Math.min(n.width/2,i);let a=n.height+this.axisConfig.labelPadding*2;this.labelTextHeight=n.height,a<=r&&(r-=a,this.showLabel=!0)}if(this.axisConfig.showTick&&r>=this.axisConfig.tickLength&&(this.showTick=!0,r-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let n=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),i=n.height+this.axisConfig.titlePadding*2;this.titleTextHeight=n.height,i<=r&&(r-=i,this.showTitle=!0)}this.boundingRect.width=e.width,this.boundingRect.height=e.height-r}calculateSpaceIfDrawnVertical(e){let r=e.width;if(this.axisConfig.showAxisLine&&r>this.axisConfig.axisLineWidth&&(r-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let n=this.getLabelDimension(),i=.2*e.height;this.outerPadding=Math.min(n.height/2,i);let a=n.width+this.axisConfig.labelPadding*2;a<=r&&(r-=a,this.showLabel=!0)}if(this.axisConfig.showTick&&r>=this.axisConfig.tickLength&&(this.showTick=!0,r-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let n=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),i=n.height+this.axisConfig.titlePadding*2;this.titleTextHeight=n.height,i<=r&&(r-=i,this.showTitle=!0)}this.boundingRect.width=e.width-r,this.boundingRect.height=e.height}calculateSpace(e){return this.axisPosition==="left"||this.axisPosition==="right"?this.calculateSpaceIfDrawnVertical(e):this.calculateSpaceIfDrawnHorizontally(e),this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}getDrawableElementsForLeftAxis(){let e=[];if(this.showAxisLine){let r=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;e.push({type:"path",groupTexts:["left-axis","axisl-line"],data:[{path:`M ${r},${this.boundingRect.y} L ${r},${this.boundingRect.y+this.boundingRect.height} `,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:"text",groupTexts:["left-axis","label"],data:this.getTickValues().map(r=>({text:r.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(r),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"middle",horizontalPos:"right"}))}),this.showTick){let r=this.boundingRect.x+this.boundingRect.width-(this.showAxisLine?this.axisConfig.axisLineWidth:0);e.push({type:"path",groupTexts:["left-axis","ticks"],data:this.getTickValues().map(n=>({path:`M ${r},${this.getScaleValue(n)} L ${r-this.axisConfig.tickLength},${this.getScaleValue(n)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.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"}]}),e}getDrawableElementsForBottomAxis(){let e=[];if(this.showAxisLine){let r=this.boundingRect.y+this.axisConfig.axisLineWidth/2;e.push({type:"path",groupTexts:["bottom-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${r} L ${this.boundingRect.x+this.boundingRect.width},${r}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:"text",groupTexts:["bottom-axis","label"],data:this.getTickValues().map(r=>({text:r.toString(),x:this.getScaleValue(r),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){let r=this.boundingRect.y+(this.showAxisLine?this.axisConfig.axisLineWidth:0);e.push({type:"path",groupTexts:["bottom-axis","ticks"],data:this.getTickValues().map(n=>({path:`M ${this.getScaleValue(n)},${r} L ${this.getScaleValue(n)},${r+this.axisConfig.tickLength}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.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"}]}),e}getDrawableElementsForTopAxis(){let e=[];if(this.showAxisLine){let r=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;e.push({type:"path",groupTexts:["top-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${r} L ${this.boundingRect.x+this.boundingRect.width},${r}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:"text",groupTexts:["top-axis","label"],data:this.getTickValues().map(r=>({text:r.toString(),x:this.getScaleValue(r),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){let r=this.boundingRect.y;e.push({type:"path",groupTexts:["top-axis","ticks"],data:this.getTickValues().map(n=>({path:`M ${this.getScaleValue(n)},${r+this.boundingRect.height-(this.showAxisLine?this.axisConfig.axisLineWidth:0)} L ${this.getScaleValue(n)},${r+this.boundingRect.height-this.axisConfig.tickLength-(this.showAxisLine?this.axisConfig.axisLineWidth:0)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.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"}]}),e}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():[]}}});var G6,Sme=N(()=>{"use strict";pr();pt();bB();G6=class extends ry{static{o(this,"BandAxis")}constructor(e,r,n,i,a){super(e,i,a,r),this.categories=n,this.scale=z0().domain(this.categories).range(this.getRange())}setRange(e){super.setRange(e)}recalculateScale(){this.scale=z0().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(.5),X.trace("BandAxis axis final categories, range: ",this.categories,this.getRange())}getTickValues(){return this.categories}getScaleValue(e){return this.scale(e)??this.getRange()[0]}}});var z6,Cme=N(()=>{"use strict";pr();bB();z6=class extends ry{static{o(this,"LinearAxis")}constructor(e,r,n,i,a){super(e,i,a,r),this.domain=n,this.scale=Tl().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){let e=[...this.domain];this.axisPosition==="left"&&e.reverse(),this.scale=Tl().domain(e).range(this.getRange())}getScaleValue(e){return this.scale(e)}}});function TB(t,e,r,n){let i=new ty(n);return F6(t)?new G6(e,r,t.categories,t.title,i):new z6(e,r,[t.min,t.max],t.title,i)}var Ame=N(()=>{"use strict";$6();xB();Sme();Cme();o(TB,"getAxis")});function _me(t,e,r,n){let i=new ty(n);return new wB(i,t,e,r)}var wB,Dme=N(()=>{"use strict";xB();wB=class{constructor(e,r,n,i){this.textDimensionCalculator=e;this.chartConfig=r;this.chartData=n;this.chartThemeConfig=i;this.boundingRect={x:0,y:0,width:0,height:0},this.showChartTitle=!1}static{o(this,"ChartTitle")}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}calculateSpace(e){let r=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),n=Math.max(r.width,e.width),i=r.height+2*this.chartConfig.titlePadding;return r.width<=n&&r.height<=i&&this.chartConfig.showTitle&&this.chartData.title&&(this.boundingRect.width=n,this.boundingRect.height=i,this.showChartTitle=!0),{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){let e=[];return this.showChartTitle&&e.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}]}),e}};o(_me,"getChartTitleComponent")});var V6,Lme=N(()=>{"use strict";pr();V6=class{constructor(e,r,n,i,a){this.plotData=e;this.xAxis=r;this.yAxis=n;this.orientation=i;this.plotIndex=a}static{o(this,"LinePlot")}getDrawableElement(){let e=this.plotData.data.map(n=>[this.xAxis.getScaleValue(n[0]),this.yAxis.getScaleValue(n[1])]),r;return this.orientation==="horizontal"?r=Cl().y(n=>n[0]).x(n=>n[1])(e):r=Cl().x(n=>n[0]).y(n=>n[1])(e),r?[{groupTexts:["plot",`line-plot-${this.plotIndex}`],type:"path",data:[{path:r,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}]:[]}}});var U6,Rme=N(()=>{"use strict";U6=class{constructor(e,r,n,i,a,s){this.barData=e;this.boundingRect=r;this.xAxis=n;this.yAxis=i;this.orientation=a;this.plotIndex=s}static{o(this,"BarPlot")}getDrawableElement(){let e=this.barData.data.map(a=>[this.xAxis.getScaleValue(a[0]),this.yAxis.getScaleValue(a[1])]),n=Math.min(this.xAxis.getAxisOuterPadding()*2,this.xAxis.getTickDistance())*(1-.05),i=n/2;return this.orientation==="horizontal"?[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:e.map(a=>({x:this.boundingRect.x,y:a[0]-i,height:n,width:a[1]-this.boundingRect.x,fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]:[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:e.map(a=>({x:a[0]-i,y:a[1],width:n,height:this.boundingRect.y+this.boundingRect.height-a[1],fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]}}});function Nme(t,e,r){return new kB(t,e,r)}var kB,Mme=N(()=>{"use strict";Lme();Rme();kB=class{constructor(e,r,n){this.chartConfig=e;this.chartData=r;this.chartThemeConfig=n;this.boundingRect={x:0,y:0,width:0,height:0}}static{o(this,"BasePlot")}setAxes(e,r){this.xAxis=e,this.yAxis=r}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}calculateSpace(e){return this.boundingRect.width=e.width,this.boundingRect.height=e.height,{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){if(!(this.xAxis&&this.yAxis))throw Error("Axes must be passed to render Plots");let e=[];for(let[r,n]of this.chartData.plots.entries())switch(n.type){case"line":{let i=new V6(n,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,r);e.push(...i.getDrawableElement())}break;case"bar":{let i=new U6(n,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,r);e.push(...i.getDrawableElement())}break}return e}};o(Nme,"getPlotComponent")});var H6,Ime=N(()=>{"use strict";Ame();Dme();Mme();$6();H6=class{constructor(e,r,n,i){this.chartConfig=e;this.chartData=r;this.componentStore={title:_me(e,r,n,i),plot:Nme(e,r,n),xAxis:TB(r.xAxis,e.xAxis,{titleColor:n.xAxisTitleColor,labelColor:n.xAxisLabelColor,tickColor:n.xAxisTickColor,axisLineColor:n.xAxisLineColor},i),yAxis:TB(r.yAxis,e.yAxis,{titleColor:n.yAxisTitleColor,labelColor:n.yAxisLabelColor,tickColor:n.yAxisTickColor,axisLineColor:n.yAxisLineColor},i)}}static{o(this,"Orchestrator")}calculateVerticalSpace(){let e=this.chartConfig.width,r=this.chartConfig.height,n=0,i=0,a=Math.floor(e*this.chartConfig.plotReservedSpacePercent/100),s=Math.floor(r*this.chartConfig.plotReservedSpacePercent/100),l=this.componentStore.plot.calculateSpace({width:a,height:s});e-=l.width,r-=l.height,l=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:r}),i=l.height,r-=l.height,this.componentStore.xAxis.setAxisPosition("bottom"),l=this.componentStore.xAxis.calculateSpace({width:e,height:r}),r-=l.height,this.componentStore.yAxis.setAxisPosition("left"),l=this.componentStore.yAxis.calculateSpace({width:e,height:r}),n=l.width,e-=l.width,e>0&&(a+=e,e=0),r>0&&(s+=r,r=0),this.componentStore.plot.calculateSpace({width:a,height:s}),this.componentStore.plot.setBoundingBoxXY({x:n,y:i}),this.componentStore.xAxis.setRange([n,n+a]),this.componentStore.xAxis.setBoundingBoxXY({x:n,y:i+s}),this.componentStore.yAxis.setRange([i,i+s]),this.componentStore.yAxis.setBoundingBoxXY({x:0,y:i}),this.chartData.plots.some(u=>vB(u))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizontalSpace(){let e=this.chartConfig.width,r=this.chartConfig.height,n=0,i=0,a=0,s=Math.floor(e*this.chartConfig.plotReservedSpacePercent/100),l=Math.floor(r*this.chartConfig.plotReservedSpacePercent/100),u=this.componentStore.plot.calculateSpace({width:s,height:l});e-=u.width,r-=u.height,u=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:r}),n=u.height,r-=u.height,this.componentStore.xAxis.setAxisPosition("left"),u=this.componentStore.xAxis.calculateSpace({width:e,height:r}),e-=u.width,i=u.width,this.componentStore.yAxis.setAxisPosition("top"),u=this.componentStore.yAxis.calculateSpace({width:e,height:r}),r-=u.height,a=n+u.height,e>0&&(s+=e,e=0),r>0&&(l+=r,r=0),this.componentStore.plot.calculateSpace({width:s,height:l}),this.componentStore.plot.setBoundingBoxXY({x:i,y:a}),this.componentStore.yAxis.setRange([i,i+s]),this.componentStore.yAxis.setBoundingBoxXY({x:i,y:n}),this.componentStore.xAxis.setRange([a,a+l]),this.componentStore.xAxis.setBoundingBoxXY({x:0,y:a}),this.chartData.plots.some(h=>vB(h))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){this.chartConfig.chartOrientation==="horizontal"?this.calculateHorizontalSpace():this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();let e=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(let r of Object.values(this.componentStore))e.push(...r.getDrawableElements());return e}}});var W6,Ome=N(()=>{"use strict";Ime();W6=class{static{o(this,"XYChartBuilder")}static build(e,r,n,i){return new H6(e,r,n,i).getDrawableElement()}}});function Bme(){let t=fh(),e=Qt();return Vn(t.xyChart,e.themeVariables.xyChart)}function Fme(){let t=Qt();return Vn(lr.xyChart,t.xyChart)}function $me(){return{yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]}}function CB(t){let e=Qt();return ar(t.trim(),e)}function wQe(t){Pme=t}function kQe(t){t==="horizontal"?v4.chartOrientation="horizontal":v4.chartOrientation="vertical"}function EQe(t){hn.xAxis.title=CB(t.text)}function Gme(t,e){hn.xAxis={type:"linear",title:hn.xAxis.title,min:t,max:e},q6=!0}function SQe(t){hn.xAxis={type:"band",title:hn.xAxis.title,categories:t.map(e=>CB(e.text))},q6=!0}function CQe(t){hn.yAxis.title=CB(t.text)}function AQe(t,e){hn.yAxis={type:"linear",title:hn.yAxis.title,min:t,max:e},SB=!0}function _Qe(t){let e=Math.min(...t),r=Math.max(...t),n=ey(hn.yAxis)?hn.yAxis.min:1/0,i=ey(hn.yAxis)?hn.yAxis.max:-1/0;hn.yAxis={type:"linear",title:hn.yAxis.title,min:Math.min(n,e),max:Math.max(i,r)}}function zme(t){let e=[];if(t.length===0)return e;if(!q6){let r=ey(hn.xAxis)?hn.xAxis.min:1/0,n=ey(hn.xAxis)?hn.xAxis.max:-1/0;Gme(Math.min(r,1),Math.max(n,t.length))}if(SB||_Qe(t),F6(hn.xAxis)&&(e=hn.xAxis.categories.map((r,n)=>[r,t[n]])),ey(hn.xAxis)){let r=hn.xAxis.min,n=hn.xAxis.max,i=(n-r)/(t.length-1),a=[];for(let s=r;s<=n;s+=i)a.push(`${s}`);e=a.map((s,l)=>[s,t[l]])}return e}function Vme(t){return EB[t===0?0:t%EB.length]}function DQe(t,e){let r=zme(e);hn.plots.push({type:"line",strokeFill:Vme(y4),strokeWidth:2,data:r}),y4++}function LQe(t,e){let r=zme(e);hn.plots.push({type:"bar",fill:Vme(y4),data:r}),y4++}function RQe(){if(hn.plots.length===0)throw Error("No Plot to render, please provide a plot with some data");return hn.title=Rr(),W6.build(v4,hn,x4,Pme)}function NQe(){return x4}function MQe(){return v4}function IQe(){return hn}var y4,Pme,v4,x4,hn,EB,q6,SB,OQe,Ume,Hme=N(()=>{"use strict";Wn();_a();My();tr();dr();ui();Ome();$6();y4=0,v4=Fme(),x4=Bme(),hn=$me(),EB=x4.plotColorPalette.split(",").map(t=>t.trim()),q6=!1,SB=!1;o(Bme,"getChartDefaultThemeConfig");o(Fme,"getChartDefaultConfig");o($me,"getChartDefaultData");o(CB,"textSanitizer");o(wQe,"setTmpSVGG");o(kQe,"setOrientation");o(EQe,"setXAxisTitle");o(Gme,"setXAxisRangeData");o(SQe,"setXAxisBand");o(CQe,"setYAxisTitle");o(AQe,"setYAxisRangeData");o(_Qe,"setYAxisRangeFromPlotData");o(zme,"transformDataWithoutCategory");o(Vme,"getPlotColorFromPalette");o(DQe,"setLineData");o(LQe,"setBarData");o(RQe,"getDrawableElem");o(NQe,"getChartThemeConfig");o(MQe,"getChartConfig");o(IQe,"getXYChartData");OQe=o(function(){wr(),y4=0,v4=Fme(),hn=$me(),x4=Bme(),EB=x4.plotColorPalette.split(",").map(t=>t.trim()),q6=!1,SB=!1},"clear"),Ume={getDrawableElem:RQe,clear:OQe,setAccTitle:Cr,getAccTitle:_r,setDiagramTitle:Or,getDiagramTitle:Rr,getAccDescription:Lr,setAccDescription:Dr,setOrientation:kQe,setXAxisTitle:EQe,setXAxisRangeData:Gme,setXAxisBand:SQe,setYAxisTitle:CQe,setYAxisRangeData:AQe,setLineData:DQe,setBarData:LQe,setTmpSVGG:wQe,getChartThemeConfig:NQe,getChartConfig:MQe,getXYChartData:IQe}});var PQe,Wme,qme=N(()=>{"use strict";pt();Jc();Ci();PQe=o((t,e,r,n)=>{let i=n.db,a=i.getChartThemeConfig(),s=i.getChartConfig(),l=i.getXYChartData().plots[0].data.map(T=>T[1]);function u(T){return T==="top"?"text-before-edge":"middle"}o(u,"getDominantBaseLine");function h(T){return T==="left"?"start":T==="right"?"end":"middle"}o(h,"getTextAnchor");function f(T){return`translate(${T.x}, ${T.y}) rotate(${T.rotation||0})`}o(f,"getTextTransformation"),X.debug(`Rendering xychart chart
|
||
`+t);let d=aa(e),p=d.append("g").attr("class","main"),m=p.append("rect").attr("width",s.width).attr("height",s.height).attr("class","background");fn(d,s.height,s.width,!0),d.attr("viewBox",`0 0 ${s.width} ${s.height}`),m.attr("fill",a.backgroundColor),i.setTmpSVGG(d.append("g").attr("class","mermaid-tmp-group"));let g=i.getDrawableElem(),y={};function x(T){let S=p,w="";for(let[E]of T.entries()){let _=p;E>0&&y[w]&&(_=y[w]),w+=T[E],S=y[w],S||(S=y[w]=_.append("g").attr("class",T[E]))}return S}o(x,"getGroup");for(let T of g){if(T.data.length===0)continue;let S=x(T.groupTexts);switch(T.type){case"rect":if(S.selectAll("rect").data(T.data).enter().append("rect").attr("x",w=>w.x).attr("y",w=>w.y).attr("width",w=>w.width).attr("height",w=>w.height).attr("fill",w=>w.fill).attr("stroke",w=>w.strokeFill).attr("stroke-width",w=>w.strokeWidth),s.showDataLabel)if(s.chartOrientation==="horizontal"){let _=function(O,R){let{data:k,label:L}=O;return R*L.length*.7<=k.width-10};var v=_;o(_,"fitsHorizontally");let w=.7,E=T.data.map((O,R)=>({data:O,label:l[R].toString()})).filter(O=>O.data.width>0&&O.data.height>0),A=E.map(O=>{let{data:R}=O,k=R.height*.7;for(;!_(O,k)&&k>0;)k-=1;return k}),D=Math.floor(Math.min(...A));S.selectAll("text").data(E).enter().append("text").attr("x",O=>O.data.x+O.data.width-10).attr("y",O=>O.data.y+O.data.height/2).attr("text-anchor","end").attr("dominant-baseline","middle").attr("fill","black").attr("font-size",`${D}px`).text(O=>O.label)}else{let _=function(O,R,k){let{data:L,label:C}=O,M=R*C.length*.7,P=L.x+L.width/2,B=P-M/2,F=P+M/2,G=B>=L.x&&F<=L.x+L.width,$=L.y+k+R<=L.y+L.height;return G&&$};var b=_;o(_,"fitsInBar");let w=10,E=T.data.map((O,R)=>({data:O,label:l[R].toString()})).filter(O=>O.data.width>0&&O.data.height>0),A=E.map(O=>{let{data:R,label:k}=O,L=R.width/(k.length*.7);for(;!_(O,L,10)&&L>0;)L-=1;return L}),D=Math.floor(Math.min(...A));S.selectAll("text").data(E).enter().append("text").attr("x",O=>O.data.x+O.data.width/2).attr("y",O=>O.data.y+10).attr("text-anchor","middle").attr("dominant-baseline","hanging").attr("fill","black").attr("font-size",`${D}px`).text(O=>O.label)}break;case"text":S.selectAll("text").data(T.data).enter().append("text").attr("x",0).attr("y",0).attr("fill",w=>w.fill).attr("font-size",w=>w.fontSize).attr("dominant-baseline",w=>u(w.verticalPos)).attr("text-anchor",w=>h(w.horizontalPos)).attr("transform",w=>f(w)).text(w=>w.text);break;case"path":S.selectAll("path").data(T.data).enter().append("path").attr("d",w=>w.path).attr("fill",w=>w.fill?w.fill:"none").attr("stroke",w=>w.strokeFill).attr("stroke-width",w=>w.strokeWidth);break}}},"draw"),Wme={draw:PQe}});var Yme={};ur(Yme,{diagram:()=>BQe});var BQe,Xme=N(()=>{"use strict";Eme();Hme();qme();BQe={parser:kme,db:Ume,renderer:Wme}});var AB,Qme,Zme=N(()=>{"use strict";AB=function(){var t=o(function(ae,oe,V,xe){for(V=V||{},xe=ae.length;xe--;V[ae[xe]]=oe);return V},"o"),e=[1,3],r=[1,4],n=[1,5],i=[1,6],a=[5,6,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],s=[1,22],l=[2,7],u=[1,26],h=[1,27],f=[1,28],d=[1,29],p=[1,33],m=[1,34],g=[1,35],y=[1,36],x=[1,37],v=[1,38],b=[1,24],T=[1,31],S=[1,32],w=[1,30],E=[1,39],_=[1,40],A=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],D=[1,61],O=[89,90],R=[5,8,9,11,13,21,22,23,24,27,29,41,42,43,44,45,46,54,61,63,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],k=[27,29],L=[1,70],C=[1,71],I=[1,72],M=[1,73],P=[1,74],B=[1,75],F=[1,76],G=[1,83],$=[1,80],U=[1,84],K=[1,85],ne=[1,86],j=[1,87],le=[1,88],Z=[1,89],ce=[1,90],Q=[1,91],ee=[1,92],te=[5,8,9,11,13,21,22,23,24,27,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],re=[63,64],he=[1,101],J=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,76,77,89,90],ye=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],se=[1,110],Se=[1,106],W=[1,107],Oe=[1,108],ve=[1,109],Pe=[1,111],qe=[1,116],Ge=[1,117],Ne=[1,114],Me=[1,115],be={trace:o(function(){},"trace"),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,direction:17,styleStatement:18,classDefStatement:19,classStatement:20,direction_tb:21,direction_bt:22,direction_rl:23,direction_lr:24,requirementType:25,requirementName:26,STRUCT_START:27,requirementBody:28,STYLE_SEPARATOR:29,idList:30,ID:31,COLONSEP:32,id:33,TEXT:34,text:35,RISK:36,riskLevel:37,VERIFYMTHD:38,verifyType:39,STRUCT_STOP:40,REQUIREMENT:41,FUNCTIONAL_REQUIREMENT:42,INTERFACE_REQUIREMENT:43,PERFORMANCE_REQUIREMENT:44,PHYSICAL_REQUIREMENT:45,DESIGN_CONSTRAINT:46,LOW_RISK:47,MED_RISK:48,HIGH_RISK:49,VERIFY_ANALYSIS:50,VERIFY_DEMONSTRATION:51,VERIFY_INSPECTION:52,VERIFY_TEST:53,ELEMENT:54,elementName:55,elementBody:56,TYPE:57,type:58,DOCREF:59,ref:60,END_ARROW_L:61,relationship:62,LINE:63,END_ARROW_R:64,CONTAINS:65,COPIES:66,DERIVES:67,SATISFIES:68,VERIFIES:69,REFINES:70,TRACES:71,CLASSDEF:72,stylesOpt:73,CLASS:74,ALPHA:75,COMMA:76,STYLE:77,style:78,styleComponent:79,NUM:80,COLON:81,UNIT:82,SPACE:83,BRKT:84,PCT:85,MINUS:86,LABEL:87,SEMICOLON:88,unqString:89,qString:90,$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",21:"direction_tb",22:"direction_bt",23:"direction_rl",24:"direction_lr",27:"STRUCT_START",29:"STYLE_SEPARATOR",31:"ID",32:"COLONSEP",34:"TEXT",36:"RISK",38:"VERIFYMTHD",40:"STRUCT_STOP",41:"REQUIREMENT",42:"FUNCTIONAL_REQUIREMENT",43:"INTERFACE_REQUIREMENT",44:"PERFORMANCE_REQUIREMENT",45:"PHYSICAL_REQUIREMENT",46:"DESIGN_CONSTRAINT",47:"LOW_RISK",48:"MED_RISK",49:"HIGH_RISK",50:"VERIFY_ANALYSIS",51:"VERIFY_DEMONSTRATION",52:"VERIFY_INSPECTION",53:"VERIFY_TEST",54:"ELEMENT",57:"TYPE",59:"DOCREF",61:"END_ARROW_L",63:"LINE",64:"END_ARROW_R",65:"CONTAINS",66:"COPIES",67:"DERIVES",68:"SATISFIES",69:"VERIFIES",70:"REFINES",71:"TRACES",72:"CLASSDEF",74:"CLASS",75:"ALPHA",76:"COMMA",77:"STYLE",80:"NUM",81:"COLON",82:"UNIT",83:"SPACE",84:"BRKT",85:"PCT",86:"MINUS",87:"LABEL",88:"SEMICOLON",89:"unqString",90:"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],[7,2],[7,2],[7,2],[7,2],[17,1],[17,1],[17,1],[17,1],[14,5],[14,7],[28,5],[28,5],[28,5],[28,5],[28,2],[28,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[37,1],[37,1],[37,1],[39,1],[39,1],[39,1],[39,1],[15,5],[15,7],[56,5],[56,5],[56,2],[56,1],[16,5],[16,5],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[19,3],[20,3],[20,3],[30,1],[30,3],[30,1],[30,3],[18,3],[73,1],[73,3],[78,1],[78,2],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[26,1],[26,1],[33,1],[33,1],[35,1],[35,1],[55,1],[55,1],[58,1],[58,1],[60,1],[60,1]],performAction:o(function(oe,V,xe,Y,de,me,Be){var _e=me.length-1;switch(de){case 4:this.$=me[_e].trim(),Y.setAccTitle(this.$);break;case 5:case 6:this.$=me[_e].trim(),Y.setAccDescription(this.$);break;case 7:this.$=[];break;case 17:Y.setDirection("TB");break;case 18:Y.setDirection("BT");break;case 19:Y.setDirection("RL");break;case 20:Y.setDirection("LR");break;case 21:Y.addRequirement(me[_e-3],me[_e-4]);break;case 22:Y.addRequirement(me[_e-5],me[_e-6]),Y.setClass([me[_e-5]],me[_e-3]);break;case 23:Y.setNewReqId(me[_e-2]);break;case 24:Y.setNewReqText(me[_e-2]);break;case 25:Y.setNewReqRisk(me[_e-2]);break;case 26:Y.setNewReqVerifyMethod(me[_e-2]);break;case 29:this.$=Y.RequirementType.REQUIREMENT;break;case 30:this.$=Y.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 31:this.$=Y.RequirementType.INTERFACE_REQUIREMENT;break;case 32:this.$=Y.RequirementType.PERFORMANCE_REQUIREMENT;break;case 33:this.$=Y.RequirementType.PHYSICAL_REQUIREMENT;break;case 34:this.$=Y.RequirementType.DESIGN_CONSTRAINT;break;case 35:this.$=Y.RiskLevel.LOW_RISK;break;case 36:this.$=Y.RiskLevel.MED_RISK;break;case 37:this.$=Y.RiskLevel.HIGH_RISK;break;case 38:this.$=Y.VerifyType.VERIFY_ANALYSIS;break;case 39:this.$=Y.VerifyType.VERIFY_DEMONSTRATION;break;case 40:this.$=Y.VerifyType.VERIFY_INSPECTION;break;case 41:this.$=Y.VerifyType.VERIFY_TEST;break;case 42:Y.addElement(me[_e-3]);break;case 43:Y.addElement(me[_e-5]),Y.setClass([me[_e-5]],me[_e-3]);break;case 44:Y.setNewElementType(me[_e-2]);break;case 45:Y.setNewElementDocRef(me[_e-2]);break;case 48:Y.addRelationship(me[_e-2],me[_e],me[_e-4]);break;case 49:Y.addRelationship(me[_e-2],me[_e-4],me[_e]);break;case 50:this.$=Y.Relationships.CONTAINS;break;case 51:this.$=Y.Relationships.COPIES;break;case 52:this.$=Y.Relationships.DERIVES;break;case 53:this.$=Y.Relationships.SATISFIES;break;case 54:this.$=Y.Relationships.VERIFIES;break;case 55:this.$=Y.Relationships.REFINES;break;case 56:this.$=Y.Relationships.TRACES;break;case 57:this.$=me[_e-2],Y.defineClass(me[_e-1],me[_e]);break;case 58:Y.setClass(me[_e-1],me[_e]);break;case 59:Y.setClass([me[_e-2]],me[_e]);break;case 60:case 62:this.$=[me[_e]];break;case 61:case 63:this.$=me[_e-2].concat([me[_e]]);break;case 64:this.$=me[_e-2],Y.setCssStyle(me[_e-1],me[_e]);break;case 65:this.$=[me[_e]];break;case 66:me[_e-2].push(me[_e]),this.$=me[_e-2];break;case 68:this.$=me[_e-1]+me[_e];break}},"anonymous"),table:[{3:1,4:2,6:e,9:r,11:n,13:i},{1:[3]},{3:8,4:2,5:[1,7],6:e,9:r,11:n,13:i},{5:[1,9]},{10:[1,10]},{12:[1,11]},t(a,[2,6]),{3:12,4:2,6:e,9:r,11:n,13:i},{1:[2,2]},{4:17,5:s,7:13,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:x,46:v,54:b,72:T,74:S,77:w,89:E,90:_},t(a,[2,4]),t(a,[2,5]),{1:[2,1]},{8:[1,41]},{4:17,5:s,7:42,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:x,46:v,54:b,72:T,74:S,77:w,89:E,90:_},{4:17,5:s,7:43,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:x,46:v,54:b,72:T,74:S,77:w,89:E,90:_},{4:17,5:s,7:44,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:x,46:v,54:b,72:T,74:S,77:w,89:E,90:_},{4:17,5:s,7:45,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:x,46:v,54:b,72:T,74:S,77:w,89:E,90:_},{4:17,5:s,7:46,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:x,46:v,54:b,72:T,74:S,77:w,89:E,90:_},{4:17,5:s,7:47,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:x,46:v,54:b,72:T,74:S,77:w,89:E,90:_},{4:17,5:s,7:48,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:x,46:v,54:b,72:T,74:S,77:w,89:E,90:_},{4:17,5:s,7:49,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:x,46:v,54:b,72:T,74:S,77:w,89:E,90:_},{4:17,5:s,7:50,8:l,9:r,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:u,22:h,23:f,24:d,25:23,33:25,41:p,42:m,43:g,44:y,45:x,46:v,54:b,72:T,74:S,77:w,89:E,90:_},{26:51,89:[1,52],90:[1,53]},{55:54,89:[1,55],90:[1,56]},{29:[1,59],61:[1,57],63:[1,58]},t(A,[2,17]),t(A,[2,18]),t(A,[2,19]),t(A,[2,20]),{30:60,33:62,75:D,89:E,90:_},{30:63,33:62,75:D,89:E,90:_},{30:64,33:62,75:D,89:E,90:_},t(O,[2,29]),t(O,[2,30]),t(O,[2,31]),t(O,[2,32]),t(O,[2,33]),t(O,[2,34]),t(R,[2,81]),t(R,[2,82]),{1:[2,3]},{8:[2,8]},{8:[2,9]},{8:[2,10]},{8:[2,11]},{8:[2,12]},{8:[2,13]},{8:[2,14]},{8:[2,15]},{8:[2,16]},{27:[1,65],29:[1,66]},t(k,[2,79]),t(k,[2,80]),{27:[1,67],29:[1,68]},t(k,[2,85]),t(k,[2,86]),{62:69,65:L,66:C,67:I,68:M,69:P,70:B,71:F},{62:77,65:L,66:C,67:I,68:M,69:P,70:B,71:F},{30:78,33:62,75:D,89:E,90:_},{73:79,75:G,76:$,78:81,79:82,80:U,81:K,82:ne,83:j,84:le,85:Z,86:ce,87:Q,88:ee},t(te,[2,60]),t(te,[2,62]),{73:93,75:G,76:$,78:81,79:82,80:U,81:K,82:ne,83:j,84:le,85:Z,86:ce,87:Q,88:ee},{30:94,33:62,75:D,76:$,89:E,90:_},{5:[1,95]},{30:96,33:62,75:D,89:E,90:_},{5:[1,97]},{30:98,33:62,75:D,89:E,90:_},{63:[1,99]},t(re,[2,50]),t(re,[2,51]),t(re,[2,52]),t(re,[2,53]),t(re,[2,54]),t(re,[2,55]),t(re,[2,56]),{64:[1,100]},t(A,[2,59],{76:$}),t(A,[2,64],{76:he}),{33:103,75:[1,102],89:E,90:_},t(J,[2,65],{79:104,75:G,80:U,81:K,82:ne,83:j,84:le,85:Z,86:ce,87:Q,88:ee}),t(ye,[2,67]),t(ye,[2,69]),t(ye,[2,70]),t(ye,[2,71]),t(ye,[2,72]),t(ye,[2,73]),t(ye,[2,74]),t(ye,[2,75]),t(ye,[2,76]),t(ye,[2,77]),t(ye,[2,78]),t(A,[2,57],{76:he}),t(A,[2,58],{76:$}),{5:se,28:105,31:Se,34:W,36:Oe,38:ve,40:Pe},{27:[1,112],76:$},{5:qe,40:Ge,56:113,57:Ne,59:Me},{27:[1,118],76:$},{33:119,89:E,90:_},{33:120,89:E,90:_},{75:G,78:121,79:82,80:U,81:K,82:ne,83:j,84:le,85:Z,86:ce,87:Q,88:ee},t(te,[2,61]),t(te,[2,63]),t(ye,[2,68]),t(A,[2,21]),{32:[1,122]},{32:[1,123]},{32:[1,124]},{32:[1,125]},{5:se,28:126,31:Se,34:W,36:Oe,38:ve,40:Pe},t(A,[2,28]),{5:[1,127]},t(A,[2,42]),{32:[1,128]},{32:[1,129]},{5:qe,40:Ge,56:130,57:Ne,59:Me},t(A,[2,47]),{5:[1,131]},t(A,[2,48]),t(A,[2,49]),t(J,[2,66],{79:104,75:G,80:U,81:K,82:ne,83:j,84:le,85:Z,86:ce,87:Q,88:ee}),{33:132,89:E,90:_},{35:133,89:[1,134],90:[1,135]},{37:136,47:[1,137],48:[1,138],49:[1,139]},{39:140,50:[1,141],51:[1,142],52:[1,143],53:[1,144]},t(A,[2,27]),{5:se,28:145,31:Se,34:W,36:Oe,38:ve,40:Pe},{58:146,89:[1,147],90:[1,148]},{60:149,89:[1,150],90:[1,151]},t(A,[2,46]),{5:qe,40:Ge,56:152,57:Ne,59:Me},{5:[1,153]},{5:[1,154]},{5:[2,83]},{5:[2,84]},{5:[1,155]},{5:[2,35]},{5:[2,36]},{5:[2,37]},{5:[1,156]},{5:[2,38]},{5:[2,39]},{5:[2,40]},{5:[2,41]},t(A,[2,22]),{5:[1,157]},{5:[2,87]},{5:[2,88]},{5:[1,158]},{5:[2,89]},{5:[2,90]},t(A,[2,43]),{5:se,28:159,31:Se,34:W,36:Oe,38:ve,40:Pe},{5:se,28:160,31:Se,34:W,36:Oe,38:ve,40:Pe},{5:se,28:161,31:Se,34:W,36:Oe,38:ve,40:Pe},{5:se,28:162,31:Se,34:W,36:Oe,38:ve,40:Pe},{5:qe,40:Ge,56:163,57:Ne,59:Me},{5:qe,40:Ge,56:164,57:Ne,59:Me},t(A,[2,23]),t(A,[2,24]),t(A,[2,25]),t(A,[2,26]),t(A,[2,44]),t(A,[2,45])],defaultActions:{8:[2,2],12:[2,1],41:[2,3],42:[2,8],43:[2,9],44:[2,10],45:[2,11],46:[2,12],47:[2,13],48:[2,14],49:[2,15],50:[2,16],134:[2,83],135:[2,84],137:[2,35],138:[2,36],139:[2,37],141:[2,38],142:[2,39],143:[2,40],144:[2,41],147:[2,87],148:[2,88],150:[2,89],151:[2,90]},parseError:o(function(oe,V){if(V.recoverable)this.trace(oe);else{var xe=new Error(oe);throw xe.hash=V,xe}},"parseError"),parse:o(function(oe){var V=this,xe=[0],Y=[],de=[null],me=[],Be=this.table,_e="",Te=0,Ue=0,De=0,Qe=2,ot=1,Gt=me.slice.call(arguments,1),Ze=Object.create(this.lexer),Ve={yy:{}};for(var ht in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ht)&&(Ve.yy[ht]=this.yy[ht]);Ze.setInput(oe,Ve.yy),Ve.yy.lexer=Ze,Ve.yy.parser=this,typeof Ze.yylloc>"u"&&(Ze.yylloc={});var Ye=Ze.yylloc;me.push(Ye);var ct=Ze.options&&Ze.options.ranges;typeof Ve.yy.parseError=="function"?this.parseError=Ve.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Yt(Mr){xe.length=xe.length-2*Mr,de.length=de.length-Mr,me.length=me.length-Mr}o(Yt,"popStack");function Tt(){var Mr;return Mr=Y.pop()||Ze.lex()||ot,typeof Mr!="number"&&(Mr instanceof Array&&(Y=Mr,Mr=Y.pop()),Mr=V.symbols_[Mr]||Mr),Mr}o(Tt,"lex");for(var Mt,bt,ft,St,dt,vt,at={},pn,kt,Fn,tn;;){if(ft=xe[xe.length-1],this.defaultActions[ft]?St=this.defaultActions[ft]:((Mt===null||typeof Mt>"u")&&(Mt=Tt()),St=Be[ft]&&Be[ft][Mt]),typeof St>"u"||!St.length||!St[0]){var Nr="";tn=[];for(pn in Be[ft])this.terminals_[pn]&&pn>Qe&&tn.push("'"+this.terminals_[pn]+"'");Ze.showPosition?Nr="Parse error on line "+(Te+1)+`:
|
||
`+Ze.showPosition()+`
|
||
Expecting `+tn.join(", ")+", got '"+(this.terminals_[Mt]||Mt)+"'":Nr="Parse error on line "+(Te+1)+": Unexpected "+(Mt==ot?"end of input":"'"+(this.terminals_[Mt]||Mt)+"'"),this.parseError(Nr,{text:Ze.match,token:this.terminals_[Mt]||Mt,line:Ze.yylineno,loc:Ye,expected:tn})}if(St[0]instanceof Array&&St.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ft+", token: "+Mt);switch(St[0]){case 1:xe.push(Mt),de.push(Ze.yytext),me.push(Ze.yylloc),xe.push(St[1]),Mt=null,bt?(Mt=bt,bt=null):(Ue=Ze.yyleng,_e=Ze.yytext,Te=Ze.yylineno,Ye=Ze.yylloc,De>0&&De--);break;case 2:if(kt=this.productions_[St[1]][1],at.$=de[de.length-kt],at._$={first_line:me[me.length-(kt||1)].first_line,last_line:me[me.length-1].last_line,first_column:me[me.length-(kt||1)].first_column,last_column:me[me.length-1].last_column},ct&&(at._$.range=[me[me.length-(kt||1)].range[0],me[me.length-1].range[1]]),vt=this.performAction.apply(at,[_e,Ue,Te,Ve.yy,St[1],de,me].concat(Gt)),typeof vt<"u")return vt;kt&&(xe=xe.slice(0,-1*kt*2),de=de.slice(0,-1*kt),me=me.slice(0,-1*kt)),xe.push(this.productions_[St[1]][0]),de.push(at.$),me.push(at._$),Fn=Be[xe[xe.length-2]][xe[xe.length-1]],xe.push(Fn);break;case 3:return!0}}return!0},"parse")},q=function(){var ae={EOF:1,parseError:o(function(V,xe){if(this.yy.parser)this.yy.parser.parseError(V,xe);else throw new Error(V)},"parseError"),setInput:o(function(oe,V){return this.yy=V||this.yy||{},this._input=oe,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},"setInput"),input:o(function(){var oe=this._input[0];this.yytext+=oe,this.yyleng++,this.offset++,this.match+=oe,this.matched+=oe;var V=oe.match(/(?:\r\n?|\n).*/g);return V?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),oe},"input"),unput:o(function(oe){var V=oe.length,xe=oe.split(/(?:\r\n?|\n)/g);this._input=oe+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-V),this.offset-=V;var Y=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),xe.length-1&&(this.yylineno-=xe.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:xe?(xe.length===Y.length?this.yylloc.first_column:0)+Y[Y.length-xe.length].length-xe[0].length:this.yylloc.first_column-V},this.options.ranges&&(this.yylloc.range=[de[0],de[0]+this.yyleng-V]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(oe){this.unput(this.match.slice(oe))},"less"),pastInput:o(function(){var oe=this.matched.substr(0,this.matched.length-this.match.length);return(oe.length>20?"...":"")+oe.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var oe=this.match;return oe.length<20&&(oe+=this._input.substr(0,20-oe.length)),(oe.substr(0,20)+(oe.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var oe=this.pastInput(),V=new Array(oe.length+1).join("-");return oe+this.upcomingInput()+`
|
||
`+V+"^"},"showPosition"),test_match:o(function(oe,V){var xe,Y,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))),Y=oe[0].match(/(?:\r\n?|\n).*/g),Y&&(this.yylineno+=Y.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Y?Y[Y.length-1].length-Y[Y.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+oe[0].length},this.yytext+=oe[0],this.match+=oe[0],this.matches=oe,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(oe[0].length),this.matched+=oe[0],xe=this.performAction.call(this,this.yy,this,V,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),xe)return xe;if(this._backtrack){for(var me in de)this[me]=de[me];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var oe,V,xe,Y;this._more||(this.yytext="",this.match="");for(var de=this._currentRules(),me=0;me<de.length;me++)if(xe=this._input.match(this.rules[de[me]]),xe&&(!V||xe[0].length>V[0].length)){if(V=xe,Y=me,this.options.backtrack_lexer){if(oe=this.test_match(xe,de[me]),oe!==!1)return oe;if(this._backtrack){V=!1;continue}else return!1}else if(!this.options.flex)break}return V?(oe=this.test_match(V,de[Y]),oe!==!1?oe:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var V=this.next();return V||this.lex()},"lex"),begin:o(function(V){this.conditionStack.push(V)},"begin"),popState:o(function(){var V=this.conditionStack.length-1;return V>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(V){return V=this.conditionStack.length-1-Math.abs(V||0),V>=0?this.conditionStack[V]:"INITIAL"},"topState"),pushState:o(function(V){this.begin(V)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(V,xe,Y,de){var me=de;switch(Y){case 0:return"title";case 1:return this.begin("acc_title"),9;break;case 2:return this.popState(),"acc_title_value";break;case 3:return this.begin("acc_descr"),11;break;case 4:return this.popState(),"acc_descr_value";break;case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:return 21;case 9:return 22;case 10:return 23;case 11:return 24;case 12:return 5;case 13:break;case 14:break;case 15:break;case 16:return 8;case 17:return 6;case 18:return 27;case 19:return 40;case 20:return 29;case 21:return 32;case 22:return 31;case 23:return 34;case 24:return 36;case 25:return 38;case 26:return 41;case 27:return 42;case 28:return 43;case 29:return 44;case 30:return 45;case 31:return 46;case 32:return 47;case 33:return 48;case 34:return 49;case 35:return 50;case 36:return 51;case 37:return 52;case 38:return 53;case 39:return 54;case 40:return 65;case 41:return 66;case 42:return 67;case 43:return 68;case 44:return 69;case 45:return 70;case 46:return 71;case 47:return 57;case 48:return 59;case 49:return this.begin("style"),77;break;case 50:return 75;case 51:return 81;case 52:return 88;case 53:return"PERCENT";case 54:return 86;case 55:return 84;case 56:break;case 57:this.begin("string");break;case 58:this.popState();break;case 59:return this.begin("style"),72;break;case 60:return this.begin("style"),74;break;case 61:return 61;case 62:return 64;case 63:return 63;case 64:this.begin("string");break;case 65:this.popState();break;case 66:return"qString";case 67:return xe.yytext=xe.yytext.trim(),89;break;case 68:return 75;case 69:return 80;case 70:return 76}},"anonymous"),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,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/i,/^(?::{3})/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,/^(?:style\b)/i,/^(?:\w+)/i,/^(?::)/i,/^(?:;)/i,/^(?:%)/i,/^(?:-)/i,/^(?:#)/i,/^(?: )/i,/^(?:["])/i,/^(?:\n)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^:,\r\n\{\<\>\-\=]*)/i,/^(?:\w+)/i,/^(?:[0-9]+)/i,/^(?:,)/i],conditions:{acc_descr_multiline:{rules:[6,7,68,69,70],inclusive:!1},acc_descr:{rules:[4,68,69,70],inclusive:!1},acc_title:{rules:[2,68,69,70],inclusive:!1},style:{rules:[50,51,52,53,54,55,56,57,58,68,69,70],inclusive:!1},unqString:{rules:[68,69,70],inclusive:!1},token:{rules:[68,69,70],inclusive:!1},string:{rules:[65,66,68,69,70],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,48,49,59,60,61,62,63,64,67,68,69,70],inclusive:!0}}};return ae}();be.lexer=q;function fe(){this.yy={}}return o(fe,"Parser"),fe.prototype=be,be.Parser=fe,new fe}();AB.parser=AB;Qme=AB});var Y6,Jme=N(()=>{"use strict";Xt();pt();ui();Y6=class{constructor(){this.relations=[];this.latestRequirement=this.getInitialRequirement();this.requirements=new Map;this.latestElement=this.getInitialElement();this.elements=new Map;this.classes=new Map;this.direction="TB";this.RequirementType={REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"};this.RiskLevel={LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"};this.VerifyType={VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"};this.Relationships={CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"};this.setAccTitle=Cr;this.getAccTitle=_r;this.setAccDescription=Dr;this.getAccDescription=Lr;this.setDiagramTitle=Or;this.getDiagramTitle=Rr;this.getConfig=o(()=>ge().requirement,"getConfig");this.clear(),this.setDirection=this.setDirection.bind(this),this.addRequirement=this.addRequirement.bind(this),this.setNewReqId=this.setNewReqId.bind(this),this.setNewReqRisk=this.setNewReqRisk.bind(this),this.setNewReqText=this.setNewReqText.bind(this),this.setNewReqVerifyMethod=this.setNewReqVerifyMethod.bind(this),this.addElement=this.addElement.bind(this),this.setNewElementType=this.setNewElementType.bind(this),this.setNewElementDocRef=this.setNewElementDocRef.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setCssStyle=this.setCssStyle.bind(this),this.setClass=this.setClass.bind(this),this.defineClass=this.defineClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this)}static{o(this,"RequirementDB")}getDirection(){return this.direction}setDirection(e){this.direction=e}resetLatestRequirement(){this.latestRequirement=this.getInitialRequirement()}resetLatestElement(){this.latestElement=this.getInitialElement()}getInitialRequirement(){return{requirementId:"",text:"",risk:"",verifyMethod:"",name:"",type:"",cssStyles:[],classes:["default"]}}getInitialElement(){return{name:"",type:"",docRef:"",cssStyles:[],classes:["default"]}}addRequirement(e,r){return this.requirements.has(e)||this.requirements.set(e,{name:e,type:r,requirementId:this.latestRequirement.requirementId,text:this.latestRequirement.text,risk:this.latestRequirement.risk,verifyMethod:this.latestRequirement.verifyMethod,cssStyles:[],classes:["default"]}),this.resetLatestRequirement(),this.requirements.get(e)}getRequirements(){return this.requirements}setNewReqId(e){this.latestRequirement!==void 0&&(this.latestRequirement.requirementId=e)}setNewReqText(e){this.latestRequirement!==void 0&&(this.latestRequirement.text=e)}setNewReqRisk(e){this.latestRequirement!==void 0&&(this.latestRequirement.risk=e)}setNewReqVerifyMethod(e){this.latestRequirement!==void 0&&(this.latestRequirement.verifyMethod=e)}addElement(e){return this.elements.has(e)||(this.elements.set(e,{name:e,type:this.latestElement.type,docRef:this.latestElement.docRef,cssStyles:[],classes:["default"]}),X.info("Added new element: ",e)),this.resetLatestElement(),this.elements.get(e)}getElements(){return this.elements}setNewElementType(e){this.latestElement!==void 0&&(this.latestElement.type=e)}setNewElementDocRef(e){this.latestElement!==void 0&&(this.latestElement.docRef=e)}addRelationship(e,r,n){this.relations.push({type:e,src:r,dst:n})}getRelationships(){return this.relations}clear(){this.relations=[],this.resetLatestRequirement(),this.requirements=new Map,this.resetLatestElement(),this.elements=new Map,this.classes=new Map,wr()}setCssStyle(e,r){for(let n of e){let i=this.requirements.get(n)??this.elements.get(n);if(!r||!i)return;for(let a of r)a.includes(",")?i.cssStyles.push(...a.split(",")):i.cssStyles.push(a)}}setClass(e,r){for(let n of e){let i=this.requirements.get(n)??this.elements.get(n);if(i)for(let a of r){i.classes.push(a);let s=this.classes.get(a)?.styles;s&&i.cssStyles.push(...s)}}}defineClass(e,r){for(let n of e){let i=this.classes.get(n);i===void 0&&(i={id:n,styles:[],textStyles:[]},this.classes.set(n,i)),r&&r.forEach(function(a){if(/color/.exec(a)){let s=a.replace("fill","bgFill");i.textStyles.push(s)}i.styles.push(a)}),this.requirements.forEach(a=>{a.classes.includes(n)&&a.cssStyles.push(...r.flatMap(s=>s.split(",")))}),this.elements.forEach(a=>{a.classes.includes(n)&&a.cssStyles.push(...r.flatMap(s=>s.split(",")))})}}getClasses(){return this.classes}getData(){let e=ge(),r=[],n=[];for(let i of this.requirements.values()){let a=i;a.id=i.name,a.cssStyles=i.cssStyles,a.cssClasses=i.classes.join(" "),a.shape="requirementBox",a.look=e.look,r.push(a)}for(let i of this.elements.values()){let a=i;a.shape="requirementBox",a.look=e.look,a.id=i.name,a.cssStyles=i.cssStyles,a.cssClasses=i.classes.join(" "),r.push(a)}for(let i of this.relations){let a=0,s=i.type===this.Relationships.CONTAINS,l={id:`${i.src}-${i.dst}-${a}`,start:this.requirements.get(i.src)?.name??this.elements.get(i.src)?.name,end:this.requirements.get(i.dst)?.name??this.elements.get(i.dst)?.name,label:`<<${i.type}>>`,classes:"relationshipLine",style:["fill:none",s?"":"stroke-dasharray: 10,7"],labelpos:"c",thickness:"normal",type:"normal",pattern:s?"normal":"dashed",arrowTypeStart:s?"requirement_contains":"",arrowTypeEnd:s?"":"requirement_arrow",look:e.look};n.push(l),a++}return{nodes:r,edges:n,other:{},config:e,direction:this.getDirection()}}}});var zQe,ege,tge=N(()=>{"use strict";zQe=o(t=>`
|
||
|
||
marker {
|
||
fill: ${t.relationColor};
|
||
stroke: ${t.relationColor};
|
||
}
|
||
|
||
marker.cross {
|
||
stroke: ${t.lineColor};
|
||
}
|
||
|
||
svg {
|
||
font-family: ${t.fontFamily};
|
||
font-size: ${t.fontSize};
|
||
}
|
||
|
||
.reqBox {
|
||
fill: ${t.requirementBackground};
|
||
fill-opacity: 1.0;
|
||
stroke: ${t.requirementBorderColor};
|
||
stroke-width: ${t.requirementBorderSize};
|
||
}
|
||
|
||
.reqTitle, .reqLabel{
|
||
fill: ${t.requirementTextColor};
|
||
}
|
||
.reqLabelBox {
|
||
fill: ${t.relationLabelBackground};
|
||
fill-opacity: 1.0;
|
||
}
|
||
|
||
.req-title-line {
|
||
stroke: ${t.requirementBorderColor};
|
||
stroke-width: ${t.requirementBorderSize};
|
||
}
|
||
.relationshipLine {
|
||
stroke: ${t.relationColor};
|
||
stroke-width: 1;
|
||
}
|
||
.relationshipLabel {
|
||
fill: ${t.relationLabelColor};
|
||
}
|
||
.divider {
|
||
stroke: ${t.nodeBorder};
|
||
stroke-width: 1;
|
||
}
|
||
.label {
|
||
font-family: ${t.fontFamily};
|
||
color: ${t.nodeTextColor||t.textColor};
|
||
}
|
||
.label text,span {
|
||
fill: ${t.nodeTextColor||t.textColor};
|
||
color: ${t.nodeTextColor||t.textColor};
|
||
}
|
||
.labelBkg {
|
||
background-color: ${t.edgeLabelBackground};
|
||
}
|
||
|
||
`,"getStyles"),ege=zQe});var _B={};ur(_B,{draw:()=>VQe});var VQe,rge=N(()=>{"use strict";Xt();pt();Kd();Af();_f();tr();VQe=o(async function(t,e,r,n){X.info("REF0:"),X.info("Drawing requirement diagram (unified)",e);let{securityLevel:i,state:a,layout:s}=ge(),l=n.db.getData(),u=zo(e,i);l.type=n.type,l.layoutAlgorithm=Bc(s),l.nodeSpacing=a?.nodeSpacing??50,l.rankSpacing=a?.rankSpacing??50,l.markers=["requirement_contains","requirement_arrow"],l.diagramId=e,await Qo(l,u);let h=8;Ht.insertTitle(u,"requirementDiagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),Hs(u,h,"requirementDiagram",a?.useMaxWidth??!0)},"draw")});var nge={};ur(nge,{diagram:()=>UQe});var UQe,ige=N(()=>{"use strict";Zme();Jme();tge();rge();UQe={parser:Qme,get db(){return new Y6},renderer:_B,styles:ege}});var DB,oge,lge=N(()=>{"use strict";DB=function(){var t=o(function(ee,te,re,he){for(re=re||{},he=ee.length;he--;re[ee[he]]=te);return re},"o"),e=[1,2],r=[1,3],n=[1,4],i=[2,4],a=[1,9],s=[1,11],l=[1,13],u=[1,14],h=[1,16],f=[1,17],d=[1,18],p=[1,24],m=[1,25],g=[1,26],y=[1,27],x=[1,28],v=[1,29],b=[1,30],T=[1,31],S=[1,32],w=[1,33],E=[1,34],_=[1,35],A=[1,36],D=[1,37],O=[1,38],R=[1,39],k=[1,41],L=[1,42],C=[1,43],I=[1,44],M=[1,45],P=[1,46],B=[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,55,60,61,62,63,71],F=[2,71],G=[4,5,16,50,52,53],$=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,55,60,61,62,63,71],U=[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,55,60,61,62,63,71],K=[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,55,60,61,62,63,71],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,55,60,61,62,63,71],j=[69,70,71],le=[1,127],Z={trace:o(function(){},"trace"),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,actor_with_config:54,note:55,placement:56,text2:57,over:58,actor_pair:59,links:60,link:61,properties:62,details:63,spaceList:64,",":65,left_of:66,right_of:67,signaltype:68,"+":69,"-":70,ACTOR:71,config_object:72,CONFIG_START:73,CONFIG_CONTENT:74,CONFIG_END:75,SOLID_OPEN_ARROW:76,DOTTED_OPEN_ARROW:77,SOLID_ARROW:78,BIDIRECTIONAL_SOLID_ARROW:79,DOTTED_ARROW:80,BIDIRECTIONAL_DOTTED_ARROW:81,SOLID_CROSS:82,DOTTED_CROSS:83,SOLID_POINT:84,DOTTED_POINT:85,TXT:86,$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",55:"note",58:"over",60:"links",61:"link",62:"properties",63:"details",65:",",66:"left_of",67:"right_of",69:"+",70:"-",71:"ACTOR",73:"CONFIG_START",74:"CONFIG_CONTENT",75:"CONFIG_END",76:"SOLID_OPEN_ARROW",77:"DOTTED_OPEN_ARROW",78:"SOLID_ARROW",79:"BIDIRECTIONAL_SOLID_ARROW",80:"DOTTED_ARROW",81:"BIDIRECTIONAL_DOTTED_ARROW",82:"SOLID_CROSS",83:"DOTTED_CROSS",84:"SOLID_POINT",85:"DOTTED_POINT",86:"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],[12,3],[24,4],[24,4],[25,3],[26,3],[27,3],[28,3],[64,2],[64,1],[59,3],[59,1],[56,1],[56,1],[17,5],[17,5],[17,4],[54,2],[72,3],[22,1],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[68,1],[57,1]],performAction:o(function(te,re,he,J,ye,se,Se){var W=se.length-1;switch(ye){case 3:return J.apply(se[W]),se[W];break;case 4:case 9:this.$=[];break;case 5:case 10:se[W-1].push(se[W]),this.$=se[W-1];break;case 6:case 7:case 11:case 12:this.$=se[W];break;case 8:case 13:this.$=[];break;case 15:se[W].type="createParticipant",this.$=se[W];break;case 16:se[W-1].unshift({type:"boxStart",boxData:J.parseBoxData(se[W-2])}),se[W-1].push({type:"boxEnd",boxText:se[W-2]}),this.$=se[W-1];break;case 18:this.$={type:"sequenceIndex",sequenceIndex:Number(se[W-2]),sequenceIndexStep:Number(se[W-1]),sequenceVisible:!0,signalType:J.LINETYPE.AUTONUMBER};break;case 19:this.$={type:"sequenceIndex",sequenceIndex:Number(se[W-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:J.LINETYPE.AUTONUMBER};break;case 20:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:J.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:J.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"activeStart",signalType:J.LINETYPE.ACTIVE_START,actor:se[W-1].actor};break;case 23:this.$={type:"activeEnd",signalType:J.LINETYPE.ACTIVE_END,actor:se[W-1].actor};break;case 29:J.setDiagramTitle(se[W].substring(6)),this.$=se[W].substring(6);break;case 30:J.setDiagramTitle(se[W].substring(7)),this.$=se[W].substring(7);break;case 31:this.$=se[W].trim(),J.setAccTitle(this.$);break;case 32:case 33:this.$=se[W].trim(),J.setAccDescription(this.$);break;case 34:se[W-1].unshift({type:"loopStart",loopText:J.parseMessage(se[W-2]),signalType:J.LINETYPE.LOOP_START}),se[W-1].push({type:"loopEnd",loopText:se[W-2],signalType:J.LINETYPE.LOOP_END}),this.$=se[W-1];break;case 35:se[W-1].unshift({type:"rectStart",color:J.parseMessage(se[W-2]),signalType:J.LINETYPE.RECT_START}),se[W-1].push({type:"rectEnd",color:J.parseMessage(se[W-2]),signalType:J.LINETYPE.RECT_END}),this.$=se[W-1];break;case 36:se[W-1].unshift({type:"optStart",optText:J.parseMessage(se[W-2]),signalType:J.LINETYPE.OPT_START}),se[W-1].push({type:"optEnd",optText:J.parseMessage(se[W-2]),signalType:J.LINETYPE.OPT_END}),this.$=se[W-1];break;case 37:se[W-1].unshift({type:"altStart",altText:J.parseMessage(se[W-2]),signalType:J.LINETYPE.ALT_START}),se[W-1].push({type:"altEnd",signalType:J.LINETYPE.ALT_END}),this.$=se[W-1];break;case 38:se[W-1].unshift({type:"parStart",parText:J.parseMessage(se[W-2]),signalType:J.LINETYPE.PAR_START}),se[W-1].push({type:"parEnd",signalType:J.LINETYPE.PAR_END}),this.$=se[W-1];break;case 39:se[W-1].unshift({type:"parStart",parText:J.parseMessage(se[W-2]),signalType:J.LINETYPE.PAR_OVER_START}),se[W-1].push({type:"parEnd",signalType:J.LINETYPE.PAR_END}),this.$=se[W-1];break;case 40:se[W-1].unshift({type:"criticalStart",criticalText:J.parseMessage(se[W-2]),signalType:J.LINETYPE.CRITICAL_START}),se[W-1].push({type:"criticalEnd",signalType:J.LINETYPE.CRITICAL_END}),this.$=se[W-1];break;case 41:se[W-1].unshift({type:"breakStart",breakText:J.parseMessage(se[W-2]),signalType:J.LINETYPE.BREAK_START}),se[W-1].push({type:"breakEnd",optText:J.parseMessage(se[W-2]),signalType:J.LINETYPE.BREAK_END}),this.$=se[W-1];break;case 43:this.$=se[W-3].concat([{type:"option",optionText:J.parseMessage(se[W-1]),signalType:J.LINETYPE.CRITICAL_OPTION},se[W]]);break;case 45:this.$=se[W-3].concat([{type:"and",parText:J.parseMessage(se[W-1]),signalType:J.LINETYPE.PAR_AND},se[W]]);break;case 47:this.$=se[W-3].concat([{type:"else",altText:J.parseMessage(se[W-1]),signalType:J.LINETYPE.ALT_ELSE},se[W]]);break;case 48:se[W-3].draw="participant",se[W-3].type="addParticipant",se[W-3].description=J.parseMessage(se[W-1]),this.$=se[W-3];break;case 49:se[W-1].draw="participant",se[W-1].type="addParticipant",this.$=se[W-1];break;case 50:se[W-3].draw="actor",se[W-3].type="addParticipant",se[W-3].description=J.parseMessage(se[W-1]),this.$=se[W-3];break;case 51:se[W-1].draw="actor",se[W-1].type="addParticipant",this.$=se[W-1];break;case 52:se[W-1].type="destroyParticipant",this.$=se[W-1];break;case 53:se[W-1].draw="participant",se[W-1].type="addParticipant",this.$=se[W-1];break;case 54:this.$=[se[W-1],{type:"addNote",placement:se[W-2],actor:se[W-1].actor,text:se[W]}];break;case 55:se[W-2]=[].concat(se[W-1],se[W-1]).slice(0,2),se[W-2][0]=se[W-2][0].actor,se[W-2][1]=se[W-2][1].actor,this.$=[se[W-1],{type:"addNote",placement:J.PLACEMENT.OVER,actor:se[W-2].slice(0,2),text:se[W]}];break;case 56:this.$=[se[W-1],{type:"addLinks",actor:se[W-1].actor,text:se[W]}];break;case 57:this.$=[se[W-1],{type:"addALink",actor:se[W-1].actor,text:se[W]}];break;case 58:this.$=[se[W-1],{type:"addProperties",actor:se[W-1].actor,text:se[W]}];break;case 59:this.$=[se[W-1],{type:"addDetails",actor:se[W-1].actor,text:se[W]}];break;case 62:this.$=[se[W-2],se[W]];break;case 63:this.$=se[W];break;case 64:this.$=J.PLACEMENT.LEFTOF;break;case 65:this.$=J.PLACEMENT.RIGHTOF;break;case 66:this.$=[se[W-4],se[W-1],{type:"addMessage",from:se[W-4].actor,to:se[W-1].actor,signalType:se[W-3],msg:se[W],activate:!0},{type:"activeStart",signalType:J.LINETYPE.ACTIVE_START,actor:se[W-1].actor}];break;case 67:this.$=[se[W-4],se[W-1],{type:"addMessage",from:se[W-4].actor,to:se[W-1].actor,signalType:se[W-3],msg:se[W]},{type:"activeEnd",signalType:J.LINETYPE.ACTIVE_END,actor:se[W-4].actor}];break;case 68:this.$=[se[W-3],se[W-1],{type:"addMessage",from:se[W-3].actor,to:se[W-1].actor,signalType:se[W-2],msg:se[W]}];break;case 69:this.$={type:"addParticipant",actor:se[W-1],config:se[W]};break;case 70:this.$=se[W-1].trim();break;case 71:this.$={type:"addParticipant",actor:se[W]};break;case 72:this.$=J.LINETYPE.SOLID_OPEN;break;case 73:this.$=J.LINETYPE.DOTTED_OPEN;break;case 74:this.$=J.LINETYPE.SOLID;break;case 75:this.$=J.LINETYPE.BIDIRECTIONAL_SOLID;break;case 76:this.$=J.LINETYPE.DOTTED;break;case 77:this.$=J.LINETYPE.BIDIRECTIONAL_DOTTED;break;case 78:this.$=J.LINETYPE.SOLID_CROSS;break;case 79:this.$=J.LINETYPE.DOTTED_CROSS;break;case 80:this.$=J.LINETYPE.SOLID_POINT;break;case 81:this.$=J.LINETYPE.DOTTED_POINT;break;case 82:this.$=J.parseMessage(se[W].trim().substring(1));break}},"anonymous"),table:[{3:1,4:e,5:r,6:n},{1:[3]},{3:5,4:e,5:r,6:n},{3:6,4:e,5:r,6:n},t([1,4,5,13,14,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,55,60,61,62,63,71],i,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:a,5:s,8:8,9:10,12:12,13:l,14:u,17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:x,36:v,37:b,38:T,39:S,41:w,43:E,44:_,46:A,50:D,52:O,53:R,55:k,60:L,61:C,62:I,63:M,71:P},t(B,[2,5]),{9:47,12:12,13:l,14:u,17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:x,36:v,37:b,38:T,39:S,41:w,43:E,44:_,46:A,50:D,52:O,53:R,55:k,60:L,61:C,62:I,63:M,71:P},t(B,[2,7]),t(B,[2,8]),t(B,[2,14]),{12:48,50:D,52:O,53:R},{15:[1,49]},{5:[1,50]},{5:[1,53],19:[1,51],20:[1,52]},{22:54,71:P},{22:55,71:P},{5:[1,56]},{5:[1,57]},{5:[1,58]},{5:[1,59]},{5:[1,60]},t(B,[2,29]),t(B,[2,30]),{32:[1,61]},{34:[1,62]},t(B,[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,54:72,71:[1,73]},{22:74,71:P},{22:75,71:P},{68:76,76:[1,77],77:[1,78],78:[1,79],79:[1,80],80:[1,81],81:[1,82],82:[1,83],83:[1,84],84:[1,85],85:[1,86]},{56:87,58:[1,88],66:[1,89],67:[1,90]},{22:91,71:P},{22:92,71:P},{22:93,71:P},{22:94,71:P},t([5,51,65,76,77,78,79,80,81,82,83,84,85,86],F),t(B,[2,6]),t(B,[2,15]),t(G,[2,9],{10:95}),t(B,[2,17]),{5:[1,97],19:[1,96]},{5:[1,98]},t(B,[2,21]),{5:[1,99]},{5:[1,100]},t(B,[2,24]),t(B,[2,25]),t(B,[2,26]),t(B,[2,27]),t(B,[2,28]),t(B,[2,31]),t(B,[2,32]),t($,i,{7:101}),t($,i,{7:102}),t($,i,{7:103}),t(U,i,{40:104,7:105}),t(K,i,{42:106,7:107}),t(K,i,{7:107,42:108}),t(ne,i,{45:109,7:110}),t($,i,{7:111}),{5:[1,113],51:[1,112]},{5:[1,114]},t([5,51],F,{72:115,73:[1,116]}),{5:[1,118],51:[1,117]},{5:[1,119]},{22:122,69:[1,120],70:[1,121],71:P},t(j,[2,72]),t(j,[2,73]),t(j,[2,74]),t(j,[2,75]),t(j,[2,76]),t(j,[2,77]),t(j,[2,78]),t(j,[2,79]),t(j,[2,80]),t(j,[2,81]),{22:123,71:P},{22:125,59:124,71:P},{71:[2,64]},{71:[2,65]},{57:126,86:le},{57:128,86:le},{57:129,86:le},{57:130,86:le},{4:[1,133],5:[1,135],11:132,12:134,16:[1,131],50:D,52:O,53:R},{5:[1,136]},t(B,[2,19]),t(B,[2,20]),t(B,[2,22]),t(B,[2,23]),{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,137],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:x,36:v,37:b,38:T,39:S,41:w,43:E,44:_,46:A,50:D,52:O,53:R,55:k,60:L,61:C,62:I,63:M,71:P},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,138],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:x,36:v,37:b,38:T,39:S,41:w,43:E,44:_,46:A,50:D,52:O,53:R,55:k,60:L,61:C,62:I,63:M,71:P},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,139],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:x,36:v,37:b,38:T,39:S,41:w,43:E,44:_,46:A,50:D,52:O,53:R,55:k,60:L,61:C,62:I,63:M,71:P},{16:[1,140]},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[2,46],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:x,36:v,37:b,38:T,39:S,41:w,43:E,44:_,46:A,49:[1,141],50:D,52:O,53:R,55:k,60:L,61:C,62:I,63:M,71:P},{16:[1,142]},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[2,44],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:x,36:v,37:b,38:T,39:S,41:w,43:E,44:_,46:A,48:[1,143],50:D,52:O,53:R,55:k,60:L,61:C,62:I,63:M,71:P},{16:[1,144]},{16:[1,145]},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[2,42],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:x,36:v,37:b,38:T,39:S,41:w,43:E,44:_,46:A,47:[1,146],50:D,52:O,53:R,55:k,60:L,61:C,62:I,63:M,71:P},{4:a,5:s,8:8,9:10,12:12,13:l,14:u,16:[1,147],17:15,18:h,21:f,22:40,23:d,24:19,25:20,26:21,27:22,28:23,29:p,30:m,31:g,33:y,35:x,36:v,37:b,38:T,39:S,41:w,43:E,44:_,46:A,50:D,52:O,53:R,55:k,60:L,61:C,62:I,63:M,71:P},{15:[1,148]},t(B,[2,49]),t(B,[2,53]),{5:[2,69]},{74:[1,149]},{15:[1,150]},t(B,[2,51]),t(B,[2,52]),{22:151,71:P},{22:152,71:P},{57:153,86:le},{57:154,86:le},{57:155,86:le},{65:[1,156],86:[2,63]},{5:[2,56]},{5:[2,82]},{5:[2,57]},{5:[2,58]},{5:[2,59]},t(B,[2,16]),t(G,[2,10]),{12:157,50:D,52:O,53:R},t(G,[2,12]),t(G,[2,13]),t(B,[2,18]),t(B,[2,34]),t(B,[2,35]),t(B,[2,36]),t(B,[2,37]),{15:[1,158]},t(B,[2,38]),{15:[1,159]},t(B,[2,39]),t(B,[2,40]),{15:[1,160]},t(B,[2,41]),{5:[1,161]},{75:[1,162]},{5:[1,163]},{57:164,86:le},{57:165,86:le},{5:[2,68]},{5:[2,54]},{5:[2,55]},{22:166,71:P},t(G,[2,11]),t(U,i,{7:105,40:167}),t(K,i,{7:107,42:168}),t(ne,i,{7:110,45:169}),t(B,[2,48]),{5:[2,70]},t(B,[2,50]),{5:[2,66]},{5:[2,67]},{86:[2,62]},{16:[2,47]},{16:[2,45]},{16:[2,43]}],defaultActions:{5:[2,1],6:[2,2],89:[2,64],90:[2,65],115:[2,69],126:[2,56],127:[2,82],128:[2,57],129:[2,58],130:[2,59],153:[2,68],154:[2,54],155:[2,55],162:[2,70],164:[2,66],165:[2,67],166:[2,62],167:[2,47],168:[2,45],169:[2,43]},parseError:o(function(te,re){if(re.recoverable)this.trace(te);else{var he=new Error(te);throw he.hash=re,he}},"parseError"),parse:o(function(te){var re=this,he=[0],J=[],ye=[null],se=[],Se=this.table,W="",Oe=0,ve=0,Pe=0,qe=2,Ge=1,Ne=se.slice.call(arguments,1),Me=Object.create(this.lexer),be={yy:{}};for(var q in this.yy)Object.prototype.hasOwnProperty.call(this.yy,q)&&(be.yy[q]=this.yy[q]);Me.setInput(te,be.yy),be.yy.lexer=Me,be.yy.parser=this,typeof Me.yylloc>"u"&&(Me.yylloc={});var fe=Me.yylloc;se.push(fe);var ae=Me.options&&Me.options.ranges;typeof be.yy.parseError=="function"?this.parseError=be.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function oe(Ze){he.length=he.length-2*Ze,ye.length=ye.length-Ze,se.length=se.length-Ze}o(oe,"popStack");function V(){var Ze;return Ze=J.pop()||Me.lex()||Ge,typeof Ze!="number"&&(Ze instanceof Array&&(J=Ze,Ze=J.pop()),Ze=re.symbols_[Ze]||Ze),Ze}o(V,"lex");for(var xe,Y,de,me,Be,_e,Te={},Ue,De,Qe,ot;;){if(de=he[he.length-1],this.defaultActions[de]?me=this.defaultActions[de]:((xe===null||typeof xe>"u")&&(xe=V()),me=Se[de]&&Se[de][xe]),typeof me>"u"||!me.length||!me[0]){var Gt="";ot=[];for(Ue in Se[de])this.terminals_[Ue]&&Ue>qe&&ot.push("'"+this.terminals_[Ue]+"'");Me.showPosition?Gt="Parse error on line "+(Oe+1)+`:
|
||
`+Me.showPosition()+`
|
||
Expecting `+ot.join(", ")+", got '"+(this.terminals_[xe]||xe)+"'":Gt="Parse error on line "+(Oe+1)+": Unexpected "+(xe==Ge?"end of input":"'"+(this.terminals_[xe]||xe)+"'"),this.parseError(Gt,{text:Me.match,token:this.terminals_[xe]||xe,line:Me.yylineno,loc:fe,expected:ot})}if(me[0]instanceof Array&&me.length>1)throw new Error("Parse Error: multiple actions possible at state: "+de+", token: "+xe);switch(me[0]){case 1:he.push(xe),ye.push(Me.yytext),se.push(Me.yylloc),he.push(me[1]),xe=null,Y?(xe=Y,Y=null):(ve=Me.yyleng,W=Me.yytext,Oe=Me.yylineno,fe=Me.yylloc,Pe>0&&Pe--);break;case 2:if(De=this.productions_[me[1]][1],Te.$=ye[ye.length-De],Te._$={first_line:se[se.length-(De||1)].first_line,last_line:se[se.length-1].last_line,first_column:se[se.length-(De||1)].first_column,last_column:se[se.length-1].last_column},ae&&(Te._$.range=[se[se.length-(De||1)].range[0],se[se.length-1].range[1]]),_e=this.performAction.apply(Te,[W,ve,Oe,be.yy,me[1],ye,se].concat(Ne)),typeof _e<"u")return _e;De&&(he=he.slice(0,-1*De*2),ye=ye.slice(0,-1*De),se=se.slice(0,-1*De)),he.push(this.productions_[me[1]][0]),ye.push(Te.$),se.push(Te._$),Qe=Se[he[he.length-2]][he[he.length-1]],he.push(Qe);break;case 3:return!0}}return!0},"parse")},ce=function(){var ee={EOF:1,parseError:o(function(re,he){if(this.yy.parser)this.yy.parser.parseError(re,he);else throw new Error(re)},"parseError"),setInput:o(function(te,re){return this.yy=re||this.yy||{},this._input=te,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},"setInput"),input:o(function(){var te=this._input[0];this.yytext+=te,this.yyleng++,this.offset++,this.match+=te,this.matched+=te;var re=te.match(/(?:\r\n?|\n).*/g);return re?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),te},"input"),unput:o(function(te){var re=te.length,he=te.split(/(?:\r\n?|\n)/g);this._input=te+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-re),this.offset-=re;var J=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),he.length-1&&(this.yylineno-=he.length-1);var ye=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:he?(he.length===J.length?this.yylloc.first_column:0)+J[J.length-he.length].length-he[0].length:this.yylloc.first_column-re},this.options.ranges&&(this.yylloc.range=[ye[0],ye[0]+this.yyleng-re]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(te){this.unput(this.match.slice(te))},"less"),pastInput:o(function(){var te=this.matched.substr(0,this.matched.length-this.match.length);return(te.length>20?"...":"")+te.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var te=this.match;return te.length<20&&(te+=this._input.substr(0,20-te.length)),(te.substr(0,20)+(te.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var te=this.pastInput(),re=new Array(te.length+1).join("-");return te+this.upcomingInput()+`
|
||
`+re+"^"},"showPosition"),test_match:o(function(te,re){var he,J,ye;if(this.options.backtrack_lexer&&(ye={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&&(ye.yylloc.range=this.yylloc.range.slice(0))),J=te[0].match(/(?:\r\n?|\n).*/g),J&&(this.yylineno+=J.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:J?J[J.length-1].length-J[J.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+te[0].length},this.yytext+=te[0],this.match+=te[0],this.matches=te,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(te[0].length),this.matched+=te[0],he=this.performAction.call(this,this.yy,this,re,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),he)return he;if(this._backtrack){for(var se in ye)this[se]=ye[se];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var te,re,he,J;this._more||(this.yytext="",this.match="");for(var ye=this._currentRules(),se=0;se<ye.length;se++)if(he=this._input.match(this.rules[ye[se]]),he&&(!re||he[0].length>re[0].length)){if(re=he,J=se,this.options.backtrack_lexer){if(te=this.test_match(he,ye[se]),te!==!1)return te;if(this._backtrack){re=!1;continue}else return!1}else if(!this.options.flex)break}return re?(te=this.test_match(re,ye[J]),te!==!1?te:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var re=this.next();return re||this.lex()},"lex"),begin:o(function(re){this.conditionStack.push(re)},"begin"),popState:o(function(){var re=this.conditionStack.length-1;return re>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(re){return re=this.conditionStack.length-1-Math.abs(re||0),re>=0?this.conditionStack[re]:"INITIAL"},"topState"),pushState:o(function(re){this.begin(re)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(re,he,J,ye){var se=ye;switch(J){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("CONFIG"),73;break;case 8:return 74;case 9:return this.popState(),this.popState(),75;break;case 10:return he.yytext=he.yytext.trim(),71;break;case 11:return he.yytext=he.yytext.trim(),this.begin("ALIAS"),71;break;case 12:return this.begin("LINE"),14;break;case 13:return this.begin("ID"),50;break;case 14:return this.begin("ID"),52;break;case 15:return 13;case 16:return this.begin("ID"),53;break;case 17:return he.yytext=he.yytext.trim(),this.begin("ALIAS"),71;break;case 18:return this.popState(),this.popState(),this.begin("LINE"),51;break;case 19:return this.popState(),this.popState(),5;break;case 20:return this.begin("LINE"),36;break;case 21:return this.begin("LINE"),37;break;case 22:return this.begin("LINE"),38;break;case 23:return this.begin("LINE"),39;break;case 24:return this.begin("LINE"),49;break;case 25:return this.begin("LINE"),41;break;case 26:return this.begin("LINE"),43;break;case 27:return this.begin("LINE"),48;break;case 28:return this.begin("LINE"),44;break;case 29:return this.begin("LINE"),47;break;case 30:return this.begin("LINE"),46;break;case 31:return this.popState(),15;break;case 32:return 16;case 33:return 66;case 34:return 67;case 35:return 60;case 36:return 61;case 37:return 62;case 38:return 63;case 39:return 58;case 40:return 55;case 41:return this.begin("ID"),21;break;case 42:return this.begin("ID"),23;break;case 43:return 29;case 44:return 30;case 45:return this.begin("acc_title"),31;break;case 46:return this.popState(),"acc_title_value";break;case 47:return this.begin("acc_descr"),33;break;case 48:return this.popState(),"acc_descr_value";break;case 49:this.begin("acc_descr_multiline");break;case 50:this.popState();break;case 51:return"acc_descr_multiline_value";case 52:return 6;case 53:return 18;case 54:return 20;case 55:return 65;case 56:return 5;case 57:return he.yytext=he.yytext.trim(),71;break;case 58:return 78;case 59:return 79;case 60:return 80;case 61:return 81;case 62:return 76;case 63:return 77;case 64:return 82;case 65:return 83;case 66:return 84;case 67:return 85;case 68:return 86;case 69:return 86;case 70:return 69;case 71:return 70;case 72:return 5;case 73:return"INVALID"}},"anonymous"),rules:[/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[0-9]+(?=[ \n]+))/i,/^(?:@\{)/i,/^(?:[^\}]+)/i,/^(?:\})/i,/^(?:[^\<->\->:\n,;@\s]+(?=@\{))/i,/^(?:[^\<->\->:\n,;@]+?([\-]*[^\<->\->:\n,;@]+?)*?(?=((?!\n)\s)+as(?!\n)\s|[#\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,/^(?:->)/i,/^(?:-->)/i,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[\)])/i,/^(?:--[\)])/i,/^(?::(?:(?:no)?wrap)?[^#\n;]*)/i,/^(?::)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[50,51],inclusive:!1},acc_descr:{rules:[48],inclusive:!1},acc_title:{rules:[46],inclusive:!1},ID:{rules:[2,3,7,10,11,17],inclusive:!1},ALIAS:{rules:[2,3,18,19],inclusive:!1},LINE:{rules:[2,3,31],inclusive:!1},CONFIG:{rules:[8,9],inclusive:!1},CONFIG_DATA:{rules:[],inclusive:!1},INITIAL:{rules:[0,1,3,4,5,6,12,13,14,15,16,20,21,22,23,24,25,26,27,28,29,30,32,33,34,35,36,37,38,39,40,41,42,43,44,45,47,49,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73],inclusive:!0}}};return ee}();Z.lexer=ce;function Q(){this.yy={}}return o(Q,"Parser"),Q.prototype=Z,Z.Parser=Q,new Q}();DB.parser=DB;oge=DB});var YQe,XQe,jQe,b4,X6,LB=N(()=>{"use strict";Xt();b2();pt();VP();dr();ui();YQe={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,BIDIRECTIONAL_SOLID:33,BIDIRECTIONAL_DOTTED:34},XQe={FILLED:0,OPEN:1},jQe={LEFTOF:0,RIGHTOF:1,OVER:2},b4={ACTOR:"actor",BOUNDARY:"boundary",COLLECTIONS:"collections",CONTROL:"control",DATABASE:"database",ENTITY:"entity",PARTICIPANT:"participant",QUEUE:"queue"},X6=class{constructor(){this.state=new Q1(()=>({prevActor:void 0,actors:new Map,createdActors:new Map,destroyedActors:new Map,boxes:[],messages:[],notes:[],sequenceNumbersEnabled:!1,wrapEnabled:void 0,currentBox:void 0,lastCreated:void 0,lastDestroyed:void 0}));this.setAccTitle=Cr;this.setAccDescription=Dr;this.setDiagramTitle=Or;this.getAccTitle=_r;this.getAccDescription=Lr;this.getDiagramTitle=Rr;this.apply=this.apply.bind(this),this.parseBoxData=this.parseBoxData.bind(this),this.parseMessage=this.parseMessage.bind(this),this.clear(),this.setWrap(ge().wrap),this.LINETYPE=YQe,this.ARROWTYPE=XQe,this.PLACEMENT=jQe}static{o(this,"SequenceDB")}addBox(e){this.state.records.boxes.push({name:e.text,wrap:e.wrap??this.autoWrap(),fill:e.color,actorKeys:[]}),this.state.records.currentBox=this.state.records.boxes.slice(-1)[0]}addActor(e,r,n,i,a){let s=this.state.records.currentBox,l;if(a!==void 0){let h;a.includes(`
|
||
`)?h=a+`
|
||
`:h=`{
|
||
`+a+`
|
||
}`,l=Xh(h,{schema:Yh})}i=l?.type??i;let u=this.state.records.actors.get(e);if(u){if(this.state.records.currentBox&&u.box&&this.state.records.currentBox!==u.box)throw new Error(`A same participant should only be defined in one Box: ${u.name} can't be in '${u.box.name}' and in '${this.state.records.currentBox.name}' at the same time.`);if(s=u.box?u.box:this.state.records.currentBox,u.box=s,u&&r===u.name&&n==null)return}if(n?.text==null&&(n={text:r,type:i}),(i==null||n.text==null)&&(n={text:r,type:i}),this.state.records.actors.set(e,{box:s,name:r,description:n.text,wrap:n.wrap??this.autoWrap(),prevActor:this.state.records.prevActor,links:{},properties:{},actorCnt:null,rectData:null,type:i??"participant"}),this.state.records.prevActor){let h=this.state.records.actors.get(this.state.records.prevActor);h&&(h.nextActor=e)}this.state.records.currentBox&&this.state.records.currentBox.actorKeys.push(e),this.state.records.prevActor=e}activationCount(e){let r,n=0;if(!e)return 0;for(r=0;r<this.state.records.messages.length;r++)this.state.records.messages[r].type===this.LINETYPE.ACTIVE_START&&this.state.records.messages[r].from===e&&n++,this.state.records.messages[r].type===this.LINETYPE.ACTIVE_END&&this.state.records.messages[r].from===e&&n--;return n}addMessage(e,r,n,i){this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:e,to:r,message:n.text,wrap:n.wrap??this.autoWrap(),answer:i})}addSignal(e,r,n,i,a=!1){if(i===this.LINETYPE.ACTIVE_END&&this.activationCount(e??"")<1){let l=new Error("Trying to inactivate an inactive participant ("+e+")");throw l.hash={text:"->>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},l}return this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:e,to:r,message:n?.text??"",wrap:n?.wrap??this.autoWrap(),type:i,activate:a}),!0}hasAtLeastOneBox(){return this.state.records.boxes.length>0}hasAtLeastOneBoxWithTitle(){return this.state.records.boxes.some(e=>e.name)}getMessages(){return this.state.records.messages}getBoxes(){return this.state.records.boxes}getActors(){return this.state.records.actors}getCreatedActors(){return this.state.records.createdActors}getDestroyedActors(){return this.state.records.destroyedActors}getActor(e){return this.state.records.actors.get(e)}getActorKeys(){return[...this.state.records.actors.keys()]}enableSequenceNumbers(){this.state.records.sequenceNumbersEnabled=!0}disableSequenceNumbers(){this.state.records.sequenceNumbersEnabled=!1}showSequenceNumbers(){return this.state.records.sequenceNumbersEnabled}setWrap(e){this.state.records.wrapEnabled=e}extractWrap(e){if(e===void 0)return{};e=e.trim();let r=/^:?wrap:/.exec(e)!==null?!0:/^:?nowrap:/.exec(e)!==null?!1:void 0;return{cleanedText:(r===void 0?e:e.replace(/^:?(?:no)?wrap:/,"")).trim(),wrap:r}}autoWrap(){return this.state.records.wrapEnabled!==void 0?this.state.records.wrapEnabled:ge().sequence?.wrap??!1}clear(){this.state.reset(),wr()}parseMessage(e){let r=e.trim(),{wrap:n,cleanedText:i}=this.extractWrap(r),a={text:i,wrap:n};return X.debug(`parseMessage: ${JSON.stringify(a)}`),a}parseBoxData(e){let r=/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/.exec(e),n=r?.[1]?r[1].trim():"transparent",i=r?.[2]?r[2].trim():void 0;if(window?.CSS)window.CSS.supports("color",n)||(n="transparent",i=e.trim());else{let l=new Option().style;l.color=n,l.color!==n&&(n="transparent",i=e.trim())}let{wrap:a,cleanedText:s}=this.extractWrap(i);return{text:s?ar(s,ge()):void 0,color:n,wrap:a}}addNote(e,r,n){let i={actor:e,placement:r,message:n.text,wrap:n.wrap??this.autoWrap()},a=[].concat(e,e);this.state.records.notes.push(i),this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:a[0],to:a[1],message:n.text,wrap:n.wrap??this.autoWrap(),type:this.LINETYPE.NOTE,placement:r})}addLinks(e,r){let n=this.getActor(e);try{let i=ar(r.text,ge());i=i.replace(/=/g,"="),i=i.replace(/&/g,"&");let a=JSON.parse(i);this.insertLinks(n,a)}catch(i){X.error("error while parsing actor link text",i)}}addALink(e,r){let n=this.getActor(e);try{let i={},a=ar(r.text,ge()),s=a.indexOf("@");a=a.replace(/=/g,"="),a=a.replace(/&/g,"&");let l=a.slice(0,s-1).trim(),u=a.slice(s+1).trim();i[l]=u,this.insertLinks(n,i)}catch(i){X.error("error while parsing actor link text",i)}}insertLinks(e,r){if(e.links==null)e.links=r;else for(let n in r)e.links[n]=r[n]}addProperties(e,r){let n=this.getActor(e);try{let i=ar(r.text,ge()),a=JSON.parse(i);this.insertProperties(n,a)}catch(i){X.error("error while parsing actor properties text",i)}}insertProperties(e,r){if(e.properties==null)e.properties=r;else for(let n in r)e.properties[n]=r[n]}boxEnd(){this.state.records.currentBox=void 0}addDetails(e,r){let n=this.getActor(e),i=document.getElementById(r.text);try{let a=i.innerHTML,s=JSON.parse(a);s.properties&&this.insertProperties(n,s.properties),s.links&&this.insertLinks(n,s.links)}catch(a){X.error("error while parsing actor details text",a)}}getActorProperty(e,r){if(e?.properties!==void 0)return e.properties[r]}apply(e){if(Array.isArray(e))e.forEach(r=>{this.apply(r)});else switch(e.type){case"sequenceIndex":this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:void 0,to:void 0,message:{start:e.sequenceIndex,step:e.sequenceIndexStep,visible:e.sequenceVisible},wrap:!1,type:e.signalType});break;case"addParticipant":this.addActor(e.actor,e.actor,e.description,e.draw,e.config);break;case"createParticipant":if(this.state.records.actors.has(e.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");this.state.records.lastCreated=e.actor,this.addActor(e.actor,e.actor,e.description,e.draw,e.config),this.state.records.createdActors.set(e.actor,this.state.records.messages.length);break;case"destroyParticipant":this.state.records.lastDestroyed=e.actor,this.state.records.destroyedActors.set(e.actor,this.state.records.messages.length);break;case"activeStart":this.addSignal(e.actor,void 0,void 0,e.signalType);break;case"activeEnd":this.addSignal(e.actor,void 0,void 0,e.signalType);break;case"addNote":this.addNote(e.actor,e.placement,e.text);break;case"addLinks":this.addLinks(e.actor,e.text);break;case"addALink":this.addALink(e.actor,e.text);break;case"addProperties":this.addProperties(e.actor,e.text);break;case"addDetails":this.addDetails(e.actor,e.text);break;case"addMessage":if(this.state.records.lastCreated){if(e.to!==this.state.records.lastCreated)throw new Error("The created participant "+this.state.records.lastCreated.name+" does not have an associated creating message after its declaration. Please check the sequence diagram.");this.state.records.lastCreated=void 0}else if(this.state.records.lastDestroyed){if(e.to!==this.state.records.lastDestroyed&&e.from!==this.state.records.lastDestroyed)throw new Error("The destroyed participant "+this.state.records.lastDestroyed.name+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");this.state.records.lastDestroyed=void 0}this.addSignal(e.from,e.to,e.msg,e.signalType,e.activate);break;case"boxStart":this.addBox(e.boxData);break;case"boxEnd":this.boxEnd();break;case"loopStart":this.addSignal(void 0,void 0,e.loopText,e.signalType);break;case"loopEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"rectStart":this.addSignal(void 0,void 0,e.color,e.signalType);break;case"rectEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"optStart":this.addSignal(void 0,void 0,e.optText,e.signalType);break;case"optEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"altStart":this.addSignal(void 0,void 0,e.altText,e.signalType);break;case"else":this.addSignal(void 0,void 0,e.altText,e.signalType);break;case"altEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"setAccTitle":Cr(e.text);break;case"parStart":this.addSignal(void 0,void 0,e.parText,e.signalType);break;case"and":this.addSignal(void 0,void 0,e.parText,e.signalType);break;case"parEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"criticalStart":this.addSignal(void 0,void 0,e.criticalText,e.signalType);break;case"option":this.addSignal(void 0,void 0,e.optionText,e.signalType);break;case"criticalEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"breakStart":this.addSignal(void 0,void 0,e.breakText,e.signalType);break;case"breakEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break}}getConfig(){return ge().sequence}}});var KQe,cge,uge=N(()=>{"use strict";KQe=o(t=>`.actor {
|
||
stroke: ${t.actorBorder};
|
||
fill: ${t.actorBkg};
|
||
}
|
||
|
||
text.actor > tspan {
|
||
fill: ${t.actorTextColor};
|
||
stroke: none;
|
||
}
|
||
|
||
.actor-line {
|
||
stroke: ${t.actorLineColor};
|
||
}
|
||
|
||
.innerArc {
|
||
stroke-width: 1.5;
|
||
stroke-dasharray: none;
|
||
}
|
||
|
||
.messageLine0 {
|
||
stroke-width: 1.5;
|
||
stroke-dasharray: none;
|
||
stroke: ${t.signalColor};
|
||
}
|
||
|
||
.messageLine1 {
|
||
stroke-width: 1.5;
|
||
stroke-dasharray: 2, 2;
|
||
stroke: ${t.signalColor};
|
||
}
|
||
|
||
#arrowhead path {
|
||
fill: ${t.signalColor};
|
||
stroke: ${t.signalColor};
|
||
}
|
||
|
||
.sequenceNumber {
|
||
fill: ${t.sequenceNumberColor};
|
||
}
|
||
|
||
#sequencenumber {
|
||
fill: ${t.signalColor};
|
||
}
|
||
|
||
#crosshead path {
|
||
fill: ${t.signalColor};
|
||
stroke: ${t.signalColor};
|
||
}
|
||
|
||
.messageText {
|
||
fill: ${t.signalTextColor};
|
||
stroke: none;
|
||
}
|
||
|
||
.labelBox {
|
||
stroke: ${t.labelBoxBorderColor};
|
||
fill: ${t.labelBoxBkgColor};
|
||
}
|
||
|
||
.labelText, .labelText > tspan {
|
||
fill: ${t.labelTextColor};
|
||
stroke: none;
|
||
}
|
||
|
||
.loopText, .loopText > tspan {
|
||
fill: ${t.loopTextColor};
|
||
stroke: none;
|
||
}
|
||
|
||
.loopLine {
|
||
stroke-width: 2px;
|
||
stroke-dasharray: 2, 2;
|
||
stroke: ${t.labelBoxBorderColor};
|
||
fill: ${t.labelBoxBorderColor};
|
||
}
|
||
|
||
.note {
|
||
//stroke: #decc93;
|
||
stroke: ${t.noteBorderColor};
|
||
fill: ${t.noteBkgColor};
|
||
}
|
||
|
||
.noteText, .noteText > tspan {
|
||
fill: ${t.noteTextColor};
|
||
stroke: none;
|
||
}
|
||
|
||
.activation0 {
|
||
fill: ${t.activationBkgColor};
|
||
stroke: ${t.activationBorderColor};
|
||
}
|
||
|
||
.activation1 {
|
||
fill: ${t.activationBkgColor};
|
||
stroke: ${t.activationBorderColor};
|
||
}
|
||
|
||
.activation2 {
|
||
fill: ${t.activationBkgColor};
|
||
stroke: ${t.activationBorderColor};
|
||
}
|
||
|
||
.actorPopupMenu {
|
||
position: absolute;
|
||
}
|
||
|
||
.actorPopupMenuPanel {
|
||
position: absolute;
|
||
fill: ${t.actorBkg};
|
||
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
|
||
filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));
|
||
}
|
||
.actor-man line {
|
||
stroke: ${t.actorBorder};
|
||
fill: ${t.actorBkg};
|
||
}
|
||
.actor-man circle, line {
|
||
stroke: ${t.actorBorder};
|
||
fill: ${t.actorBkg};
|
||
stroke-width: 2px;
|
||
}
|
||
|
||
`,"getStyles"),cge=KQe});var RB,Vf,Hf,Wf,j6,Uf,T4,QQe,K6,w4,n0,hge,Ir,NB,ZQe,JQe,eZe,tZe,rZe,nZe,iZe,aZe,sZe,oZe,lZe,cZe,uZe,fge,hZe,fZe,dZe,pZe,mZe,gZe,yZe,dge,vZe,ih,xZe,gi,pge=N(()=>{"use strict";RB=ja(Q0(),1);Wn();tr();dr();e2();Vf=18*2,Hf="actor-top",Wf="actor-bottom",j6="actor-box",Uf="actor-man",T4=o(function(t,e){return Id(t,e)},"drawRect"),QQe=o(function(t,e,r,n,i){if(e.links===void 0||e.links===null||Object.keys(e.links).length===0)return{height:0,width:0};let a=e.links,s=e.actorCnt,l=e.rectData;var u="none";i&&(u="block !important");let h=t.append("g");h.attr("id","actor"+s+"_popup"),h.attr("class","actorPopupMenu"),h.attr("display",u);var f="";l.class!==void 0&&(f=" "+l.class);let d=l.width>r?l.width:r,p=h.append("rect");if(p.attr("class","actorPopupMenuPanel"+f),p.attr("x",l.x),p.attr("y",l.height),p.attr("fill",l.fill),p.attr("stroke",l.stroke),p.attr("width",d),p.attr("height",l.height),p.attr("rx",l.rx),p.attr("ry",l.ry),a!=null){var m=20;for(let x in a){var g=h.append("a"),y=(0,RB.sanitizeUrl)(a[x]);g.attr("xlink:href",y),g.attr("target","_blank"),xZe(n)(x,g,l.x+10,l.height+m,d,20,{class:"actor"},n),m+=30}}return p.attr("height",m),{height:l.height+m,width:d}},"drawPopup"),K6=o(function(t){return"var pu = document.getElementById('"+t+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"},"popupMenuToggle"),w4=o(async function(t,e,r=null){let n=t.append("foreignObject"),i=await bh(e.text,Qt()),s=n.append("xhtml:div").attr("style","width: fit-content;").attr("xmlns","http://www.w3.org/1999/xhtml").html(i).node().getBoundingClientRect();if(n.attr("height",Math.round(s.height)).attr("width",Math.round(s.width)),e.class==="noteText"){let l=t.node().firstChild;l.setAttribute("height",s.height+2*e.textMargin);let u=l.getBBox();n.attr("x",Math.round(u.x+u.width/2-s.width/2)).attr("y",Math.round(u.y+u.height/2-s.height/2))}else if(r){let{startx:l,stopx:u,starty:h}=r;if(l>u){let f=l;l=u,u=f}n.attr("x",Math.round(l+Math.abs(l-u)/2-s.width/2)),e.class==="loopText"?n.attr("y",Math.round(h)):n.attr("y",Math.round(h-s.height))}return[n]},"drawKatex"),n0=o(function(t,e){let r=0,n=0,i=e.text.split(Je.lineBreakRegex),[a,s]=yc(e.fontSize),l=[],u=0,h=o(()=>e.y,"yfunc");if(e.valign!==void 0&&e.textMargin!==void 0&&e.textMargin>0)switch(e.valign){case"top":case"start":h=o(()=>Math.round(e.y+e.textMargin),"yfunc");break;case"middle":case"center":h=o(()=>Math.round(e.y+(r+n+e.textMargin)/2),"yfunc");break;case"bottom":case"end":h=o(()=>Math.round(e.y+(r+n+2*e.textMargin)-e.textMargin),"yfunc");break}if(e.anchor!==void 0&&e.textMargin!==void 0&&e.width!==void 0)switch(e.anchor){case"left":case"start":e.x=Math.round(e.x+e.textMargin),e.anchor="start",e.dominantBaseline="middle",e.alignmentBaseline="middle";break;case"middle":case"center":e.x=Math.round(e.x+e.width/2),e.anchor="middle",e.dominantBaseline="middle",e.alignmentBaseline="middle";break;case"right":case"end":e.x=Math.round(e.x+e.width-e.textMargin),e.anchor="end",e.dominantBaseline="middle",e.alignmentBaseline="middle";break}for(let[f,d]of i.entries()){e.textMargin!==void 0&&e.textMargin===0&&a!==void 0&&(u=f*a);let p=t.append("text");p.attr("x",e.x),p.attr("y",h()),e.anchor!==void 0&&p.attr("text-anchor",e.anchor).attr("dominant-baseline",e.dominantBaseline).attr("alignment-baseline",e.alignmentBaseline),e.fontFamily!==void 0&&p.style("font-family",e.fontFamily),s!==void 0&&p.style("font-size",s),e.fontWeight!==void 0&&p.style("font-weight",e.fontWeight),e.fill!==void 0&&p.attr("fill",e.fill),e.class!==void 0&&p.attr("class",e.class),e.dy!==void 0?p.attr("dy",e.dy):u!==0&&p.attr("dy",u);let m=d||RL;if(e.tspan){let g=p.append("tspan");g.attr("x",e.x),e.fill!==void 0&&g.attr("fill",e.fill),g.text(m)}else p.text(m);e.valign!==void 0&&e.textMargin!==void 0&&e.textMargin>0&&(n+=(p._groups||p)[0][0].getBBox().height,r=n),l.push(p)}return l},"drawText"),hge=o(function(t,e){function r(i,a,s,l,u){return i+","+a+" "+(i+s)+","+a+" "+(i+s)+","+(a+l-u)+" "+(i+s-u*1.2)+","+(a+l)+" "+i+","+(a+l)}o(r,"genPoints");let n=t.append("polygon");return n.attr("points",r(e.x,e.y,e.width,e.height,7)),n.attr("class","labelBox"),e.y=e.y+e.height/2,n0(t,e),n},"drawLabel"),Ir=-1,NB=o((t,e,r,n)=>{t.select&&r.forEach(i=>{let a=e.get(i),s=t.select("#actor"+a.actorCnt);!n.mirrorActors&&a.stopy?s.attr("y2",a.stopy+a.height/2):n.mirrorActors&&s.attr("y2",a.stopy)})},"fixLifeLineHeights"),ZQe=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+e.height,l=t.append("g").lower();var u=l;n||(Ir++,Object.keys(e.links||{}).length&&!r.forceMenus&&u.attr("onclick",K6(`actor${Ir}_popup`)).attr("cursor","pointer"),u.append("line").attr("id","actor"+Ir).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),u=l.append("g"),e.actorCnt=Ir,e.links!=null&&u.attr("id","root-"+Ir));let h=ua();var f="actor";e.properties?.class?f=e.properties.class:h.fill="#eaeaea",n?f+=` ${Wf}`:f+=` ${Hf}`,h.x=e.x,h.y=i,h.width=e.width,h.height=e.height,h.class=f,h.rx=3,h.ry=3,h.name=e.name;let d=T4(u,h);if(e.rectData=h,e.properties?.icon){let m=e.properties.icon.trim();m.charAt(0)==="@"?oT(u,h.x+h.width-20,h.y+10,m.substr(1)):sT(u,h.x+h.width-20,h.y+10,m)}ih(r,xn(e.description))(e.description,u,h.x,h.y,h.width,h.height,{class:`actor ${j6}`},r);let p=e.height;if(d.node){let m=d.node().getBBox();e.height=m.height,p=m.height}return p},"drawActorTypeParticipant"),JQe=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+e.height,l=t.append("g").lower();var u=l;n||(Ir++,Object.keys(e.links||{}).length&&!r.forceMenus&&u.attr("onclick",K6(`actor${Ir}_popup`)).attr("cursor","pointer"),u.append("line").attr("id","actor"+Ir).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),u=l.append("g"),e.actorCnt=Ir,e.links!=null&&u.attr("id","root-"+Ir));let h=ua();var f="actor";e.properties?.class?f=e.properties.class:h.fill="#eaeaea",n?f+=` ${Wf}`:f+=` ${Hf}`,h.x=e.x,h.y=i,h.width=e.width,h.height=e.height,h.class=f,h.name=e.name;let d=6,p={...h,x:h.x+-d,y:h.y+ +d,class:"actor"},m=T4(u,h);if(T4(u,p),e.rectData=h,e.properties?.icon){let y=e.properties.icon.trim();y.charAt(0)==="@"?oT(u,h.x+h.width-20,h.y+10,y.substr(1)):sT(u,h.x+h.width-20,h.y+10,y)}ih(r,xn(e.description))(e.description,u,h.x-d,h.y+d,h.width,h.height,{class:`actor ${j6}`},r);let g=e.height;if(m.node){let y=m.node().getBBox();e.height=y.height,g=y.height}return g},"drawActorTypeCollections"),eZe=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+e.height,l=t.append("g").lower(),u=l;n||(Ir++,Object.keys(e.links||{}).length&&!r.forceMenus&&u.attr("onclick",K6(`actor${Ir}_popup`)).attr("cursor","pointer"),u.append("line").attr("id","actor"+Ir).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),u=l.append("g"),e.actorCnt=Ir,e.links!=null&&u.attr("id","root-"+Ir));let h=ua(),f="actor";e.properties?.class?f=e.properties.class:h.fill="#eaeaea",n?f+=` ${Wf}`:f+=` ${Hf}`,h.x=e.x,h.y=i,h.width=e.width,h.height=e.height,h.class=f,h.name=e.name;let d=h.height/2,p=d/(2.5+h.height/50),m=u.append("g"),g=u.append("g");if(m.append("path").attr("d",`M ${h.x},${h.y+d}
|
||
a ${p},${d} 0 0 0 0,${h.height}
|
||
h ${h.width-2*p}
|
||
a ${p},${d} 0 0 0 0,-${h.height}
|
||
Z
|
||
`).attr("class",f),g.append("path").attr("d",`M ${h.x},${h.y+d}
|
||
a ${p},${d} 0 0 0 0,${h.height}`).attr("stroke","#666").attr("stroke-width","1px").attr("class",f),m.attr("transform",`translate(${p}, ${-(h.height/2)})`),g.attr("transform",`translate(${h.width-p}, ${-h.height/2})`),e.rectData=h,e.properties?.icon){let v=e.properties.icon.trim(),b=h.x+h.width-20,T=h.y+10;v.charAt(0)==="@"?oT(u,b,T,v.substr(1)):sT(u,b,T,v)}ih(r,xn(e.description))(e.description,u,h.x,h.y,h.width,h.height,{class:`actor ${j6}`},r);let y=e.height,x=m.select("path:last-child");if(x.node()){let v=x.node().getBBox();e.height=v.height,y=v.height}return y},"drawActorTypeQueue"),tZe=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+75,l=t.append("g").lower();n||(Ir++,l.append("line").attr("id","actor"+Ir).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),e.actorCnt=Ir);let u=t.append("g"),h=Uf;n?h+=` ${Wf}`:h+=` ${Hf}`,u.attr("class",h),u.attr("name",e.name);let f=ua();f.x=e.x,f.y=i,f.fill="#eaeaea",f.width=e.width,f.height=e.height,f.class="actor";let d=e.x+e.width/2,p=i+30,m=18;u.append("defs").append("marker").attr("id","filled-head-control").attr("refX",11).attr("refY",5.8).attr("markerWidth",20).attr("markerHeight",28).attr("orient","172.5").append("path").attr("d","M 14.4 5.6 L 7.2 10.4 L 8.8 5.6 L 7.2 0.8 Z"),u.append("circle").attr("cx",d).attr("cy",p).attr("r",m).attr("fill","#eaeaf7").attr("stroke","#666").attr("stroke-width",1.2),u.append("line").attr("marker-end","url(#filled-head-control)").attr("transform",`translate(${d}, ${p-m})`);let g=u.node().getBBox();return e.height=g.height+2*(r?.sequence?.labelBoxHeight??0),ih(r,xn(e.description))(e.description,u,f.x,f.y+m+(n?5:10),f.width,f.height,{class:`actor ${Uf}`},r),e.height},"drawActorTypeControl"),rZe=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+75,l=t.append("g").lower(),u=t.append("g"),h=Uf;n?h+=` ${Wf}`:h+=` ${Hf}`,u.attr("class",h),u.attr("name",e.name);let f=ua();f.x=e.x,f.y=i,f.fill="#eaeaea",f.width=e.width,f.height=e.height,f.class="actor";let d=e.x+e.width/2,p=i+(n?10:25),m=18;u.append("circle").attr("cx",d).attr("cy",p).attr("r",m).attr("width",e.width).attr("height",e.height),u.append("line").attr("x1",d-m).attr("x2",d+m).attr("y1",p+m).attr("y2",p+m).attr("stroke","#333").attr("stroke-width",2);let g=u.node().getBBox();return e.height=g.height+(r?.sequence?.labelBoxHeight??0),n||(Ir++,l.append("line").attr("id","actor"+Ir).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),e.actorCnt=Ir),ih(r,xn(e.description))(e.description,u,f.x,f.y+(n?(p-i+m-5)/2:(p+m-i)/2),f.width,f.height,{class:`actor ${Uf}`},r),n?u.attr("transform",`translate(0, ${m/2})`):u.attr("transform",`translate(0, ${m/2})`),e.height},"drawActorTypeEntity"),nZe=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+e.height+2*r.boxTextMargin,l=t.append("g").lower(),u=l;n||(Ir++,Object.keys(e.links||{}).length&&!r.forceMenus&&u.attr("onclick",K6(`actor${Ir}_popup`)).attr("cursor","pointer"),u.append("line").attr("id","actor"+Ir).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),u=l.append("g"),e.actorCnt=Ir,e.links!=null&&u.attr("id","root-"+Ir));let h=ua(),f="actor";e.properties?.class?f=e.properties.class:h.fill="#eaeaea",n?f+=` ${Wf}`:f+=` ${Hf}`,h.x=e.x,h.y=i,h.width=e.width,h.height=e.height,h.class=f,h.name=e.name,h.x=e.x,h.y=i;let d=h.width/4,p=h.width/4,m=d/2,g=m/(2.5+d/50),y=u.append("g"),x=`
|
||
M ${h.x},${h.y+g}
|
||
a ${m},${g} 0 0 0 ${d},0
|
||
a ${m},${g} 0 0 0 -${d},0
|
||
l 0,${p-2*g}
|
||
a ${m},${g} 0 0 0 ${d},0
|
||
l 0,-${p-2*g}
|
||
`;y.append("path").attr("d",x).attr("fill","#eaeaea").attr("stroke","#000").attr("stroke-width",1).attr("class",f),n?y.attr("transform",`translate(${d*1.5}, ${h.height/4-2*g})`):y.attr("transform",`translate(${d*1.5}, ${(h.height+g)/4})`),e.rectData=h,ih(r,xn(e.description))(e.description,u,h.x,h.y+(n?(h.height+p)/4:(h.height+g)/2),h.width,h.height,{class:`actor ${j6}`},r);let v=y.select("path:last-child");if(v.node()){let b=v.node().getBBox();e.height=b.height+(r.sequence.labelBoxHeight??0)}return e.height},"drawActorTypeDatabase"),iZe=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+80,l=30,u=t.append("g").lower();n||(Ir++,u.append("line").attr("id","actor"+Ir).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),e.actorCnt=Ir);let h=t.append("g"),f=Uf;n?f+=` ${Wf}`:f+=` ${Hf}`,h.attr("class",f),h.attr("name",e.name);let d=ua();d.x=e.x,d.y=i,d.fill="#eaeaea",d.width=e.width,d.height=e.height,d.class="actor",h.append("line").attr("id","actor-man-torso"+Ir).attr("x1",e.x+e.width/2-l*2.5).attr("y1",i+10).attr("x2",e.x+e.width/2-15).attr("y2",i+10),h.append("line").attr("id","actor-man-arms"+Ir).attr("x1",e.x+e.width/2-l*2.5).attr("y1",i+0).attr("x2",e.x+e.width/2-l*2.5).attr("y2",i+20),h.append("circle").attr("cx",e.x+e.width/2).attr("cy",i+10).attr("r",l);let p=h.node().getBBox();return e.height=p.height+(r.sequence.labelBoxHeight??0),ih(r,xn(e.description))(e.description,h,d.x,d.y+(n?l/2-4:l/2+3),d.width,d.height,{class:`actor ${Uf}`},r),n?h.attr("transform",`translate(0,${l/2+7})`):h.attr("transform",`translate(0,${l/2+7})`),e.height},"drawActorTypeBoundary"),aZe=o(function(t,e,r,n){let i=n?e.stopy:e.starty,a=e.x+e.width/2,s=i+80,l=t.append("g").lower();n||(Ir++,l.append("line").attr("id","actor"+Ir).attr("x1",a).attr("y1",s).attr("x2",a).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name),e.actorCnt=Ir);let u=t.append("g"),h=Uf;n?h+=` ${Wf}`:h+=` ${Hf}`,u.attr("class",h),u.attr("name",e.name);let f=ua();f.x=e.x,f.y=i,f.fill="#eaeaea",f.width=e.width,f.height=e.height,f.class="actor",f.rx=3,f.ry=3,u.append("line").attr("id","actor-man-torso"+Ir).attr("x1",a).attr("y1",i+25).attr("x2",a).attr("y2",i+45),u.append("line").attr("id","actor-man-arms"+Ir).attr("x1",a-Vf/2).attr("y1",i+33).attr("x2",a+Vf/2).attr("y2",i+33),u.append("line").attr("x1",a-Vf/2).attr("y1",i+60).attr("x2",a).attr("y2",i+45),u.append("line").attr("x1",a).attr("y1",i+45).attr("x2",a+Vf/2-2).attr("y2",i+60);let d=u.append("circle");d.attr("cx",e.x+e.width/2),d.attr("cy",i+10),d.attr("r",15),d.attr("width",e.width),d.attr("height",e.height);let p=u.node().getBBox();return e.height=p.height,ih(r,xn(e.description))(e.description,u,f.x,f.y+35,f.width,f.height,{class:`actor ${Uf}`},r),e.height},"drawActorTypeActor"),sZe=o(async function(t,e,r,n){switch(e.type){case"actor":return await aZe(t,e,r,n);case"participant":return await ZQe(t,e,r,n);case"boundary":return await iZe(t,e,r,n);case"control":return await tZe(t,e,r,n);case"entity":return await rZe(t,e,r,n);case"database":return await nZe(t,e,r,n);case"collections":return await JQe(t,e,r,n);case"queue":return await eZe(t,e,r,n)}},"drawActor"),oZe=o(function(t,e,r){let i=t.append("g");fge(i,e),e.name&&ih(r)(e.name,i,e.x,e.y+r.boxTextMargin+(e.textMaxHeight||0)/2,e.width,0,{class:"text"},r),i.lower()},"drawBox"),lZe=o(function(t){return t.append("g")},"anchorElement"),cZe=o(function(t,e,r,n,i){let a=ua(),s=e.anchored;a.x=e.startx,a.y=e.starty,a.class="activation"+i%3,a.width=e.stopx-e.startx,a.height=r-e.starty,T4(s,a)},"drawActivation"),uZe=o(async function(t,e,r,n){let{boxMargin:i,boxTextMargin:a,labelBoxHeight:s,labelBoxWidth:l,messageFontFamily:u,messageFontSize:h,messageFontWeight:f}=n,d=t.append("g"),p=o(function(y,x,v,b){return d.append("line").attr("x1",y).attr("y1",x).attr("x2",v).attr("y2",b).attr("class","loopLine")},"drawLoopLine");p(e.startx,e.starty,e.stopx,e.starty),p(e.stopx,e.starty,e.stopx,e.stopy),p(e.startx,e.stopy,e.stopx,e.stopy),p(e.startx,e.starty,e.startx,e.stopy),e.sections!==void 0&&e.sections.forEach(function(y){p(e.startx,y.y,e.stopx,y.y).style("stroke-dasharray","3, 3")});let m=Jv();m.text=r,m.x=e.startx,m.y=e.starty,m.fontFamily=u,m.fontSize=h,m.fontWeight=f,m.anchor="middle",m.valign="middle",m.tspan=!1,m.width=l||50,m.height=s||20,m.textMargin=a,m.class="labelText",hge(d,m),m=dge(),m.text=e.title,m.x=e.startx+l/2+(e.stopx-e.startx)/2,m.y=e.starty+i+a,m.anchor="middle",m.valign="middle",m.textMargin=a,m.class="loopText",m.fontFamily=u,m.fontSize=h,m.fontWeight=f,m.wrap=!0;let g=xn(m.text)?await w4(d,m,e):n0(d,m);if(e.sectionTitles!==void 0){for(let[y,x]of Object.entries(e.sectionTitles))if(x.message){m.text=x.message,m.x=e.startx+(e.stopx-e.startx)/2,m.y=e.sections[y].y+i+a,m.class="loopText",m.anchor="middle",m.valign="middle",m.tspan=!1,m.fontFamily=u,m.fontSize=h,m.fontWeight=f,m.wrap=e.wrap,xn(m.text)?(e.starty=e.sections[y].y,await w4(d,m,e)):n0(d,m);let v=Math.round(g.map(b=>(b._groups||b)[0][0].getBBox().height).reduce((b,T)=>b+T));e.sections[y].height+=v-(i+a)}}return e.height=Math.round(e.stopy-e.starty),d},"drawLoop"),fge=o(function(t,e){aT(t,e)},"drawBackgroundRect"),hZe=o(function(t){t.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")},"insertDatabaseIcon"),fZe=o(function(t){t.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")},"insertComputerIcon"),dZe=o(function(t){t.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")},"insertClockIcon"),pZe=o(function(t){t.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-start-reverse").append("path").attr("d","M -1 0 L 10 5 L 0 10 z")},"insertArrowHead"),mZe=o(function(t){t.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")},"insertArrowFilledHead"),gZe=o(function(t){t.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)},"insertSequenceNumber"),yZe=o(function(t){t.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")},"insertArrowCrossHead"),dge=o(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}},"getTextObj"),vZe=o(function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),ih=function(){function t(a,s,l,u,h,f,d){let p=s.append("text").attr("x",l+h/2).attr("y",u+f/2+5).style("text-anchor","middle").text(a);i(p,d)}o(t,"byText");function e(a,s,l,u,h,f,d,p){let{actorFontSize:m,actorFontFamily:g,actorFontWeight:y}=p,[x,v]=yc(m),b=a.split(Je.lineBreakRegex);for(let T=0;T<b.length;T++){let S=T*x-x*(b.length-1)/2,w=s.append("text").attr("x",l+h/2).attr("y",u).style("text-anchor","middle").style("font-size",v).style("font-weight",y).style("font-family",g);w.append("tspan").attr("x",l+h/2).attr("dy",S).text(b[T]),w.attr("y",u+f/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),i(w,d)}}o(e,"byTspan");function r(a,s,l,u,h,f,d,p){let m=s.append("switch"),y=m.append("foreignObject").attr("x",l).attr("y",u).attr("width",h).attr("height",f).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");y.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(a),e(a,m,l,u,h,f,d,p),i(y,d)}o(r,"byFo");async function n(a,s,l,u,h,f,d,p){let m=await fd(a,Qt()),g=s.append("switch"),x=g.append("foreignObject").attr("x",l+h/2-m.width/2).attr("y",u+f/2-m.height/2).attr("width",m.width).attr("height",m.height).append("xhtml:div").style("height","100%").style("width","100%");x.append("div").style("text-align","center").style("vertical-align","middle").html(await bh(a,Qt())),e(a,g,l,u,h,f,d,p),i(x,d)}o(n,"byKatex");function i(a,s){for(let l in s)s.hasOwnProperty(l)&&a.attr(l,s[l])}return o(i,"_setTextAttrs"),function(a,s=!1){return s?n:a.textPlacement==="fo"?r:a.textPlacement==="old"?t:e}}(),xZe=function(){function t(i,a,s,l,u,h,f){let d=a.append("text").attr("x",s).attr("y",l).style("text-anchor","start").text(i);n(d,f)}o(t,"byText");function e(i,a,s,l,u,h,f,d){let{actorFontSize:p,actorFontFamily:m,actorFontWeight:g}=d,y=i.split(Je.lineBreakRegex);for(let x=0;x<y.length;x++){let v=x*p-p*(y.length-1)/2,b=a.append("text").attr("x",s).attr("y",l).style("text-anchor","start").style("font-size",p).style("font-weight",g).style("font-family",m);b.append("tspan").attr("x",s).attr("dy",v).text(y[x]),b.attr("y",l+h/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),n(b,f)}}o(e,"byTspan");function r(i,a,s,l,u,h,f,d){let p=a.append("switch"),g=p.append("foreignObject").attr("x",s).attr("y",l).attr("width",u).attr("height",h).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");g.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(i),e(i,p,s,l,u,h,f,d),n(g,f)}o(r,"byFo");function n(i,a){for(let s in a)a.hasOwnProperty(s)&&i.attr(s,a[s])}return o(n,"_setTextAttrs"),function(i){return i.textPlacement==="fo"?r:i.textPlacement==="old"?t:e}}(),gi={drawRect:T4,drawText:n0,drawLabel:hge,drawActor:sZe,drawBox:oZe,drawPopup:QQe,anchorElement:lZe,drawActivation:cZe,drawLoop:uZe,drawBackgroundRect:fge,insertArrowHead:pZe,insertArrowFilledHead:mZe,insertSequenceNumber:gZe,insertArrowCrossHead:yZe,insertDatabaseIcon:hZe,insertComputerIcon:fZe,insertClockIcon:dZe,getTextObj:dge,getNoteRect:vZe,fixLifeLineHeights:NB,sanitizeUrl:RB.sanitizeUrl}});async function TZe(t,e){it.bumpVerticalPos(10);let{startx:r,stopx:n,message:i}=e,a=Je.splitBreaks(i).length,s=xn(i),l=s?await fd(i,ge()):Ht.calculateTextDimensions(i,i0(Re));if(!s){let d=l.height/a;e.height+=d,it.bumpVerticalPos(d)}let u,h=l.height-10,f=l.width;if(r===n){u=it.getVerticalPos()+h,Re.rightAngles||(h+=Re.boxMargin,u=it.getVerticalPos()+h),h+=30;let d=Je.getMax(f/2,Re.width/2);it.insert(r-d,it.getVerticalPos()-10+h,n+d,it.getVerticalPos()+30+h)}else h+=Re.boxMargin,u=it.getVerticalPos()+h,it.insert(r,u-10,n,u);return it.bumpVerticalPos(h),e.height+=h,e.stopy=e.starty+e.height,it.insert(e.fromBounds,e.starty,e.toBounds,e.stopy),u}function eu(t,e,r,n,i){it.bumpVerticalPos(r);let a=n;if(e.id&&e.message&&t[e.id]){let s=t[e.id].width,l=i0(Re);e.message=Ht.wrapLabel(`[${e.message}]`,s-2*Re.wrapPadding,l),e.width=s,e.wrap=!0;let u=Ht.calculateTextDimensions(e.message,l),h=Je.getMax(u.height,Re.labelBoxHeight);a=n+h,X.debug(`${h} - ${e.message}`)}i(e),it.bumpVerticalPos(a)}function EZe(t,e,r,n,i,a,s){function l(f,d){f.x<i.get(t.from).x?(it.insert(e.stopx-d,e.starty,e.startx,e.stopy+f.height/2+Re.noteMargin),e.stopx=e.stopx+d):(it.insert(e.startx,e.starty,e.stopx+d,e.stopy+f.height/2+Re.noteMargin),e.stopx=e.stopx-d)}o(l,"receiverAdjustment");function u(f,d){f.x<i.get(t.to).x?(it.insert(e.startx-d,e.starty,e.stopx,e.stopy+f.height/2+Re.noteMargin),e.startx=e.startx+d):(it.insert(e.stopx,e.starty,e.startx+d,e.stopy+f.height/2+Re.noteMargin),e.startx=e.startx-d)}o(u,"senderAdjustment");let h=[b4.ACTOR,b4.CONTROL,b4.ENTITY,b4.DATABASE];if(a.get(t.to)==n){let f=i.get(t.to),d=h.includes(f.type)?Vf/2+3:f.width/2+3;l(f,d),f.starty=r-f.height/2,it.bumpVerticalPos(f.height/2)}else if(s.get(t.from)==n){let f=i.get(t.from);if(Re.mirrorActors){let d=h.includes(f.type)?Vf/2:f.width/2;u(f,d)}f.stopy=r-f.height/2,it.bumpVerticalPos(f.height/2)}else if(s.get(t.to)==n){let f=i.get(t.to);if(Re.mirrorActors){let d=h.includes(f.type)?Vf/2+3:f.width/2+3;l(f,d)}f.stopy=r-f.height/2,it.bumpVerticalPos(f.height/2)}}async function CZe(t,e,r){let n={};for(let i of e)if(t.get(i.to)&&t.get(i.from)){let a=t.get(i.to);if(i.placement===r.db.PLACEMENT.LEFTOF&&!a.prevActor||i.placement===r.db.PLACEMENT.RIGHTOF&&!a.nextActor)continue;let s=i.placement!==void 0,l=!s,u=s?ny(Re):i0(Re),h=i.wrap?Ht.wrapLabel(i.message,Re.width-2*Re.wrapPadding,u):i.message,d=(xn(h)?await fd(i.message,ge()):Ht.calculateTextDimensions(h,u)).width+2*Re.wrapPadding;l&&i.from===a.nextActor?n[i.to]=Je.getMax(n[i.to]||0,d):l&&i.from===a.prevActor?n[i.from]=Je.getMax(n[i.from]||0,d):l&&i.from===i.to?(n[i.from]=Je.getMax(n[i.from]||0,d/2),n[i.to]=Je.getMax(n[i.to]||0,d/2)):i.placement===r.db.PLACEMENT.RIGHTOF?n[i.from]=Je.getMax(n[i.from]||0,d):i.placement===r.db.PLACEMENT.LEFTOF?n[a.prevActor]=Je.getMax(n[a.prevActor]||0,d):i.placement===r.db.PLACEMENT.OVER&&(a.prevActor&&(n[a.prevActor]=Je.getMax(n[a.prevActor]||0,d/2)),a.nextActor&&(n[i.from]=Je.getMax(n[i.from]||0,d/2)))}return X.debug("maxMessageWidthPerActor:",n),n}async function _Ze(t,e,r){let n=0;for(let a of t.keys()){let s=t.get(a);s.wrap&&(s.description=Ht.wrapLabel(s.description,Re.width-2*Re.wrapPadding,MB(Re)));let l=xn(s.description)?await fd(s.description,ge()):Ht.calculateTextDimensions(s.description,MB(Re));s.width=s.wrap?Re.width:Je.getMax(Re.width,l.width+2*Re.wrapPadding),s.height=s.wrap?Je.getMax(l.height,Re.height):Re.height,n=Je.getMax(n,s.height)}for(let a in e){let s=t.get(a);if(!s)continue;let l=t.get(s.nextActor);if(!l){let d=e[a]+Re.actorMargin-s.width/2;s.margin=Je.getMax(d,Re.actorMargin);continue}let h=e[a]+Re.actorMargin-s.width/2-l.width/2;s.margin=Je.getMax(h,Re.actorMargin)}let i=0;return r.forEach(a=>{let s=i0(Re),l=a.actorKeys.reduce((d,p)=>d+=t.get(p).width+(t.get(p).margin||0),0),u=Re.boxMargin*8;l+=u,l-=2*Re.boxTextMargin,a.wrap&&(a.name=Ht.wrapLabel(a.name,l-2*Re.wrapPadding,s));let h=Ht.calculateTextDimensions(a.name,s);i=Je.getMax(h.height,i);let f=Je.getMax(l,h.width+2*Re.wrapPadding);if(a.margin=Re.boxTextMargin,l<f){let d=(f-l)/2;a.margin+=d}}),r.forEach(a=>a.textMaxHeight=i),Je.getMax(n,Re.height)}var Re,it,bZe,i0,ny,MB,wZe,kZe,IB,gge,yge,Q6,mge,SZe,AZe,DZe,LZe,RZe,vge,xge=N(()=>{"use strict";pr();pge();pt();dr();dr();e2();Xt();p0();tr();Ci();LB();Re={},it={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],activations:[],models:{getHeight:o(function(){return Math.max.apply(null,this.actors.length===0?[0]:this.actors.map(t=>t.height||0))+(this.loops.length===0?0:this.loops.map(t=>t.height||0).reduce((t,e)=>t+e))+(this.messages.length===0?0:this.messages.map(t=>t.height||0).reduce((t,e)=>t+e))+(this.notes.length===0?0:this.notes.map(t=>t.height||0).reduce((t,e)=>t+e))},"getHeight"),clear:o(function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]},"clear"),addBox:o(function(t){this.boxes.push(t)},"addBox"),addActor:o(function(t){this.actors.push(t)},"addActor"),addLoop:o(function(t){this.loops.push(t)},"addLoop"),addMessage:o(function(t){this.messages.push(t)},"addMessage"),addNote:o(function(t){this.notes.push(t)},"addNote"),lastActor:o(function(){return this.actors[this.actors.length-1]},"lastActor"),lastLoop:o(function(){return this.loops[this.loops.length-1]},"lastLoop"),lastMessage:o(function(){return this.messages[this.messages.length-1]},"lastMessage"),lastNote:o(function(){return this.notes[this.notes.length-1]},"lastNote"),actors:[],boxes:[],loops:[],messages:[],notes:[]},init:o(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,yge(ge())},"init"),updateVal:o(function(t,e,r,n){t[e]===void 0?t[e]=r:t[e]=n(r,t[e])},"updateVal"),updateBounds:o(function(t,e,r,n){let i=this,a=0;function s(l){return o(function(h){a++;let f=i.sequenceItems.length-a+1;i.updateVal(h,"starty",e-f*Re.boxMargin,Math.min),i.updateVal(h,"stopy",n+f*Re.boxMargin,Math.max),i.updateVal(it.data,"startx",t-f*Re.boxMargin,Math.min),i.updateVal(it.data,"stopx",r+f*Re.boxMargin,Math.max),l!=="activation"&&(i.updateVal(h,"startx",t-f*Re.boxMargin,Math.min),i.updateVal(h,"stopx",r+f*Re.boxMargin,Math.max),i.updateVal(it.data,"starty",e-f*Re.boxMargin,Math.min),i.updateVal(it.data,"stopy",n+f*Re.boxMargin,Math.max))},"updateItemBounds")}o(s,"updateFn"),this.sequenceItems.forEach(s()),this.activations.forEach(s("activation"))},"updateBounds"),insert:o(function(t,e,r,n){let i=Je.getMin(t,r),a=Je.getMax(t,r),s=Je.getMin(e,n),l=Je.getMax(e,n);this.updateVal(it.data,"startx",i,Math.min),this.updateVal(it.data,"starty",s,Math.min),this.updateVal(it.data,"stopx",a,Math.max),this.updateVal(it.data,"stopy",l,Math.max),this.updateBounds(i,s,a,l)},"insert"),newActivation:o(function(t,e,r){let n=r.get(t.from),i=Q6(t.from).length||0,a=n.x+n.width/2+(i-1)*Re.activationWidth/2;this.activations.push({startx:a,starty:this.verticalPos+2,stopx:a+Re.activationWidth,stopy:void 0,actor:t.from,anchored:gi.anchorElement(e)})},"newActivation"),endActivation:o(function(t){let e=this.activations.map(function(r){return r.actor}).lastIndexOf(t.from);return this.activations.splice(e,1)[0]},"endActivation"),createLoop:o(function(t={message:void 0,wrap:!1,width:void 0},e){return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:t.message,wrap:t.wrap,width:t.width,height:0,fill:e}},"createLoop"),newLoop:o(function(t={message:void 0,wrap:!1,width:void 0},e){this.sequenceItems.push(this.createLoop(t,e))},"newLoop"),endLoop:o(function(){return this.sequenceItems.pop()},"endLoop"),isLoopOverlap:o(function(){return this.sequenceItems.length?this.sequenceItems[this.sequenceItems.length-1].overlap:!1},"isLoopOverlap"),addSectionToLoop:o(function(t){let e=this.sequenceItems.pop();e.sections=e.sections||[],e.sectionTitles=e.sectionTitles||[],e.sections.push({y:it.getVerticalPos(),height:0}),e.sectionTitles.push(t),this.sequenceItems.push(e)},"addSectionToLoop"),saveVerticalPos:o(function(){this.isLoopOverlap()&&(this.savedVerticalPos=this.verticalPos)},"saveVerticalPos"),resetVerticalPos:o(function(){this.isLoopOverlap()&&(this.verticalPos=this.savedVerticalPos)},"resetVerticalPos"),bumpVerticalPos:o(function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=Je.getMax(this.data.stopy,this.verticalPos)},"bumpVerticalPos"),getVerticalPos:o(function(){return this.verticalPos},"getVerticalPos"),getBounds:o(function(){return{bounds:this.data,models:this.models}},"getBounds")},bZe=o(async function(t,e){it.bumpVerticalPos(Re.boxMargin),e.height=Re.boxMargin,e.starty=it.getVerticalPos();let r=ua();r.x=e.startx,r.y=e.starty,r.width=e.width||Re.width,r.class="note";let n=t.append("g"),i=gi.drawRect(n,r),a=Jv();a.x=e.startx,a.y=e.starty,a.width=r.width,a.dy="1em",a.text=e.message,a.class="noteText",a.fontFamily=Re.noteFontFamily,a.fontSize=Re.noteFontSize,a.fontWeight=Re.noteFontWeight,a.anchor=Re.noteAlign,a.textMargin=Re.noteMargin,a.valign="center";let s=xn(a.text)?await w4(n,a):n0(n,a),l=Math.round(s.map(u=>(u._groups||u)[0][0].getBBox().height).reduce((u,h)=>u+h));i.attr("height",l+2*Re.noteMargin),e.height+=l+2*Re.noteMargin,it.bumpVerticalPos(l+2*Re.noteMargin),e.stopy=e.starty+l+2*Re.noteMargin,e.stopx=e.startx+r.width,it.insert(e.startx,e.starty,e.stopx,e.stopy),it.models.addNote(e)},"drawNote"),i0=o(t=>({fontFamily:t.messageFontFamily,fontSize:t.messageFontSize,fontWeight:t.messageFontWeight}),"messageFont"),ny=o(t=>({fontFamily:t.noteFontFamily,fontSize:t.noteFontSize,fontWeight:t.noteFontWeight}),"noteFont"),MB=o(t=>({fontFamily:t.actorFontFamily,fontSize:t.actorFontSize,fontWeight:t.actorFontWeight}),"actorFont");o(TZe,"boundMessage");wZe=o(async function(t,e,r,n){let{startx:i,stopx:a,starty:s,message:l,type:u,sequenceIndex:h,sequenceVisible:f}=e,d=Ht.calculateTextDimensions(l,i0(Re)),p=Jv();p.x=i,p.y=s+10,p.width=a-i,p.class="messageText",p.dy="1em",p.text=l,p.fontFamily=Re.messageFontFamily,p.fontSize=Re.messageFontSize,p.fontWeight=Re.messageFontWeight,p.anchor=Re.messageAlign,p.valign="center",p.textMargin=Re.wrapPadding,p.tspan=!1,xn(p.text)?await w4(t,p,{startx:i,stopx:a,starty:r}):n0(t,p);let m=d.width,g;i===a?Re.rightAngles?g=t.append("path").attr("d",`M ${i},${r} H ${i+Je.getMax(Re.width/2,m/2)} V ${r+25} H ${i}`):g=t.append("path").attr("d","M "+i+","+r+" C "+(i+60)+","+(r-10)+" "+(i+60)+","+(r+30)+" "+i+","+(r+20)):(g=t.append("line"),g.attr("x1",i),g.attr("y1",r),g.attr("x2",a),g.attr("y2",r)),u===n.db.LINETYPE.DOTTED||u===n.db.LINETYPE.DOTTED_CROSS||u===n.db.LINETYPE.DOTTED_POINT||u===n.db.LINETYPE.DOTTED_OPEN||u===n.db.LINETYPE.BIDIRECTIONAL_DOTTED?(g.style("stroke-dasharray","3, 3"),g.attr("class","messageLine1")):g.attr("class","messageLine0");let y="";Re.arrowMarkerAbsolute&&(y=du(!0)),g.attr("stroke-width",2),g.attr("stroke","none"),g.style("fill","none"),(u===n.db.LINETYPE.SOLID||u===n.db.LINETYPE.DOTTED)&&g.attr("marker-end","url("+y+"#arrowhead)"),(u===n.db.LINETYPE.BIDIRECTIONAL_SOLID||u===n.db.LINETYPE.BIDIRECTIONAL_DOTTED)&&(g.attr("marker-start","url("+y+"#arrowhead)"),g.attr("marker-end","url("+y+"#arrowhead)")),(u===n.db.LINETYPE.SOLID_POINT||u===n.db.LINETYPE.DOTTED_POINT)&&g.attr("marker-end","url("+y+"#filled-head)"),(u===n.db.LINETYPE.SOLID_CROSS||u===n.db.LINETYPE.DOTTED_CROSS)&&g.attr("marker-end","url("+y+"#crosshead)"),(f||Re.showSequenceNumbers)&&((u===n.db.LINETYPE.BIDIRECTIONAL_SOLID||u===n.db.LINETYPE.BIDIRECTIONAL_DOTTED)&&(i<a?g.attr("x1",i+2*6):g.attr("x1",i+6)),t.append("line").attr("x1",i).attr("y1",r).attr("x2",i).attr("y2",r).attr("stroke-width",0).attr("marker-start","url("+y+"#sequencenumber)"),t.append("text").attr("x",i).attr("y",r+4).attr("font-family","sans-serif").attr("font-size","12px").attr("text-anchor","middle").attr("class","sequenceNumber").text(h))},"drawMessage"),kZe=o(function(t,e,r,n,i,a,s){let l=0,u=0,h,f=0;for(let d of n){let p=e.get(d),m=p.box;h&&h!=m&&(s||it.models.addBox(h),u+=Re.boxMargin+h.margin),m&&m!=h&&(s||(m.x=l+u,m.y=i),u+=m.margin),p.width=p.width||Re.width,p.height=Je.getMax(p.height||Re.height,Re.height),p.margin=p.margin||Re.actorMargin,f=Je.getMax(f,p.height),r.get(p.name)&&(u+=p.width/2),p.x=l+u,p.starty=it.getVerticalPos(),it.insert(p.x,i,p.x+p.width,p.height),l+=p.width+u,p.box&&(p.box.width=l+m.margin-p.box.x),u=p.margin,h=p.box,it.models.addActor(p)}h&&!s&&it.models.addBox(h),it.bumpVerticalPos(f)},"addActorRenderingData"),IB=o(async function(t,e,r,n){if(n){let i=0;it.bumpVerticalPos(Re.boxMargin*2);for(let a of r){let s=e.get(a);s.stopy||(s.stopy=it.getVerticalPos());let l=await gi.drawActor(t,s,Re,!0);i=Je.getMax(i,l)}it.bumpVerticalPos(i+Re.boxMargin)}else for(let i of r){let a=e.get(i);await gi.drawActor(t,a,Re,!1)}},"drawActors"),gge=o(function(t,e,r,n){let i=0,a=0;for(let s of r){let l=e.get(s),u=AZe(l),h=gi.drawPopup(t,l,u,Re,Re.forceMenus,n);h.height>i&&(i=h.height),h.width+l.x>a&&(a=h.width+l.x)}return{maxHeight:i,maxWidth:a}},"drawActorsPopup"),yge=o(function(t){Dn(Re,t),t.fontFamily&&(Re.actorFontFamily=Re.noteFontFamily=Re.messageFontFamily=t.fontFamily),t.fontSize&&(Re.actorFontSize=Re.noteFontSize=Re.messageFontSize=t.fontSize),t.fontWeight&&(Re.actorFontWeight=Re.noteFontWeight=Re.messageFontWeight=t.fontWeight)},"setConf"),Q6=o(function(t){return it.activations.filter(function(e){return e.actor===t})},"actorActivations"),mge=o(function(t,e){let r=e.get(t),n=Q6(t),i=n.reduce(function(s,l){return Je.getMin(s,l.startx)},r.x+r.width/2-1),a=n.reduce(function(s,l){return Je.getMax(s,l.stopx)},r.x+r.width/2+1);return[i,a]},"activationBounds");o(eu,"adjustLoopHeightForWrap");o(EZe,"adjustCreatedDestroyedData");SZe=o(async function(t,e,r,n){let{securityLevel:i,sequence:a}=ge();Re=a;let s;i==="sandbox"&&(s=ze("#i"+e));let l=i==="sandbox"?ze(s.nodes()[0].contentDocument.body):ze("body"),u=i==="sandbox"?s.nodes()[0].contentDocument:document;it.init(),X.debug(n.db);let h=i==="sandbox"?l.select(`[id="${e}"]`):ze(`[id="${e}"]`),f=n.db.getActors(),d=n.db.getCreatedActors(),p=n.db.getDestroyedActors(),m=n.db.getBoxes(),g=n.db.getActorKeys(),y=n.db.getMessages(),x=n.db.getDiagramTitle(),v=n.db.hasAtLeastOneBox(),b=n.db.hasAtLeastOneBoxWithTitle(),T=await CZe(f,y,n);if(Re.height=await _Ze(f,T,m),gi.insertComputerIcon(h),gi.insertDatabaseIcon(h),gi.insertClockIcon(h),v&&(it.bumpVerticalPos(Re.boxMargin),b&&it.bumpVerticalPos(m[0].textMaxHeight)),Re.hideUnusedParticipants===!0){let B=new Set;y.forEach(F=>{B.add(F.from),B.add(F.to)}),g=g.filter(F=>B.has(F))}kZe(h,f,d,g,0,y,!1);let S=await RZe(y,f,T,n);gi.insertArrowHead(h),gi.insertArrowCrossHead(h),gi.insertArrowFilledHead(h),gi.insertSequenceNumber(h);function w(B,F){let G=it.endActivation(B);G.starty+18>F&&(G.starty=F-6,F+=12),gi.drawActivation(h,G,F,Re,Q6(B.from).length),it.insert(G.startx,F-10,G.stopx,F)}o(w,"activeEnd");let E=1,_=1,A=[],D=[],O=0;for(let B of y){let F,G,$;switch(B.type){case n.db.LINETYPE.NOTE:it.resetVerticalPos(),G=B.noteModel,await bZe(h,G);break;case n.db.LINETYPE.ACTIVE_START:it.newActivation(B,h,f);break;case n.db.LINETYPE.ACTIVE_END:w(B,it.getVerticalPos());break;case n.db.LINETYPE.LOOP_START:eu(S,B,Re.boxMargin,Re.boxMargin+Re.boxTextMargin,U=>it.newLoop(U));break;case n.db.LINETYPE.LOOP_END:F=it.endLoop(),await gi.drawLoop(h,F,"loop",Re),it.bumpVerticalPos(F.stopy-it.getVerticalPos()),it.models.addLoop(F);break;case n.db.LINETYPE.RECT_START:eu(S,B,Re.boxMargin,Re.boxMargin,U=>it.newLoop(void 0,U.message));break;case n.db.LINETYPE.RECT_END:F=it.endLoop(),D.push(F),it.models.addLoop(F),it.bumpVerticalPos(F.stopy-it.getVerticalPos());break;case n.db.LINETYPE.OPT_START:eu(S,B,Re.boxMargin,Re.boxMargin+Re.boxTextMargin,U=>it.newLoop(U));break;case n.db.LINETYPE.OPT_END:F=it.endLoop(),await gi.drawLoop(h,F,"opt",Re),it.bumpVerticalPos(F.stopy-it.getVerticalPos()),it.models.addLoop(F);break;case n.db.LINETYPE.ALT_START:eu(S,B,Re.boxMargin,Re.boxMargin+Re.boxTextMargin,U=>it.newLoop(U));break;case n.db.LINETYPE.ALT_ELSE:eu(S,B,Re.boxMargin+Re.boxTextMargin,Re.boxMargin,U=>it.addSectionToLoop(U));break;case n.db.LINETYPE.ALT_END:F=it.endLoop(),await gi.drawLoop(h,F,"alt",Re),it.bumpVerticalPos(F.stopy-it.getVerticalPos()),it.models.addLoop(F);break;case n.db.LINETYPE.PAR_START:case n.db.LINETYPE.PAR_OVER_START:eu(S,B,Re.boxMargin,Re.boxMargin+Re.boxTextMargin,U=>it.newLoop(U)),it.saveVerticalPos();break;case n.db.LINETYPE.PAR_AND:eu(S,B,Re.boxMargin+Re.boxTextMargin,Re.boxMargin,U=>it.addSectionToLoop(U));break;case n.db.LINETYPE.PAR_END:F=it.endLoop(),await gi.drawLoop(h,F,"par",Re),it.bumpVerticalPos(F.stopy-it.getVerticalPos()),it.models.addLoop(F);break;case n.db.LINETYPE.AUTONUMBER:E=B.message.start||E,_=B.message.step||_,B.message.visible?n.db.enableSequenceNumbers():n.db.disableSequenceNumbers();break;case n.db.LINETYPE.CRITICAL_START:eu(S,B,Re.boxMargin,Re.boxMargin+Re.boxTextMargin,U=>it.newLoop(U));break;case n.db.LINETYPE.CRITICAL_OPTION:eu(S,B,Re.boxMargin+Re.boxTextMargin,Re.boxMargin,U=>it.addSectionToLoop(U));break;case n.db.LINETYPE.CRITICAL_END:F=it.endLoop(),await gi.drawLoop(h,F,"critical",Re),it.bumpVerticalPos(F.stopy-it.getVerticalPos()),it.models.addLoop(F);break;case n.db.LINETYPE.BREAK_START:eu(S,B,Re.boxMargin,Re.boxMargin+Re.boxTextMargin,U=>it.newLoop(U));break;case n.db.LINETYPE.BREAK_END:F=it.endLoop(),await gi.drawLoop(h,F,"break",Re),it.bumpVerticalPos(F.stopy-it.getVerticalPos()),it.models.addLoop(F);break;default:try{$=B.msgModel,$.starty=it.getVerticalPos(),$.sequenceIndex=E,$.sequenceVisible=n.db.showSequenceNumbers();let U=await TZe(h,$);EZe(B,$,U,O,f,d,p),A.push({messageModel:$,lineStartY:U}),it.models.addMessage($)}catch(U){X.error("error while drawing message",U)}}[n.db.LINETYPE.SOLID_OPEN,n.db.LINETYPE.DOTTED_OPEN,n.db.LINETYPE.SOLID,n.db.LINETYPE.DOTTED,n.db.LINETYPE.SOLID_CROSS,n.db.LINETYPE.DOTTED_CROSS,n.db.LINETYPE.SOLID_POINT,n.db.LINETYPE.DOTTED_POINT,n.db.LINETYPE.BIDIRECTIONAL_SOLID,n.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(B.type)&&(E=E+_),O++}X.debug("createdActors",d),X.debug("destroyedActors",p),await IB(h,f,g,!1);for(let B of A)await wZe(h,B.messageModel,B.lineStartY,n);Re.mirrorActors&&await IB(h,f,g,!0),D.forEach(B=>gi.drawBackgroundRect(h,B)),NB(h,f,g,Re);for(let B of it.models.boxes){B.height=it.getVerticalPos()-B.y,it.insert(B.x,B.y,B.x+B.width,B.height);let F=Re.boxMargin*2;B.startx=B.x-F,B.starty=B.y-F*.25,B.stopx=B.startx+B.width+2*F,B.stopy=B.starty+B.height+F*.75,B.stroke="rgb(0,0,0, 0.5)",gi.drawBox(h,B,Re)}v&&it.bumpVerticalPos(Re.boxMargin);let R=gge(h,f,g,u),{bounds:k}=it.getBounds();k.startx===void 0&&(k.startx=0),k.starty===void 0&&(k.starty=0),k.stopx===void 0&&(k.stopx=0),k.stopy===void 0&&(k.stopy=0);let L=k.stopy-k.starty;L<R.maxHeight&&(L=R.maxHeight);let C=L+2*Re.diagramMarginY;Re.mirrorActors&&(C=C-Re.boxMargin+Re.bottomMarginAdj);let I=k.stopx-k.startx;I<R.maxWidth&&(I=R.maxWidth);let M=I+2*Re.diagramMarginX;x&&h.append("text").text(x).attr("x",(k.stopx-k.startx)/2-2*Re.diagramMarginX).attr("y",-25),fn(h,C,M,Re.useMaxWidth);let P=x?40:0;h.attr("viewBox",k.startx-Re.diagramMarginX+" -"+(Re.diagramMarginY+P)+" "+M+" "+(C+P)),X.debug("models:",it.models)},"draw");o(CZe,"getMaxMessageWidthPerActor");AZe=o(function(t){let e=0,r=MB(Re);for(let n in t.links){let a=Ht.calculateTextDimensions(n,r).width+2*Re.wrapPadding+2*Re.boxMargin;e<a&&(e=a)}return e},"getRequiredPopupWidth");o(_Ze,"calculateActorMargins");DZe=o(async function(t,e,r){let n=e.get(t.from),i=e.get(t.to),a=n.x,s=i.x,l=t.wrap&&t.message,u=xn(t.message)?await fd(t.message,ge()):Ht.calculateTextDimensions(l?Ht.wrapLabel(t.message,Re.width,ny(Re)):t.message,ny(Re)),h={width:l?Re.width:Je.getMax(Re.width,u.width+2*Re.noteMargin),height:0,startx:n.x,stopx:0,starty:0,stopy:0,message:t.message};return t.placement===r.db.PLACEMENT.RIGHTOF?(h.width=l?Je.getMax(Re.width,u.width):Je.getMax(n.width/2+i.width/2,u.width+2*Re.noteMargin),h.startx=a+(n.width+Re.actorMargin)/2):t.placement===r.db.PLACEMENT.LEFTOF?(h.width=l?Je.getMax(Re.width,u.width+2*Re.noteMargin):Je.getMax(n.width/2+i.width/2,u.width+2*Re.noteMargin),h.startx=a-h.width+(n.width-Re.actorMargin)/2):t.to===t.from?(u=Ht.calculateTextDimensions(l?Ht.wrapLabel(t.message,Je.getMax(Re.width,n.width),ny(Re)):t.message,ny(Re)),h.width=l?Je.getMax(Re.width,n.width):Je.getMax(n.width,Re.width,u.width+2*Re.noteMargin),h.startx=a+(n.width-h.width)/2):(h.width=Math.abs(a+n.width/2-(s+i.width/2))+Re.actorMargin,h.startx=a<s?a+n.width/2-Re.actorMargin/2:s+i.width/2-Re.actorMargin/2),l&&(h.message=Ht.wrapLabel(t.message,h.width-2*Re.wrapPadding,ny(Re))),X.debug(`NM:[${h.startx},${h.stopx},${h.starty},${h.stopy}:${h.width},${h.height}=${t.message}]`),h},"buildNoteModel"),LZe=o(function(t,e,r){if(![r.db.LINETYPE.SOLID_OPEN,r.db.LINETYPE.DOTTED_OPEN,r.db.LINETYPE.SOLID,r.db.LINETYPE.DOTTED,r.db.LINETYPE.SOLID_CROSS,r.db.LINETYPE.DOTTED_CROSS,r.db.LINETYPE.SOLID_POINT,r.db.LINETYPE.DOTTED_POINT,r.db.LINETYPE.BIDIRECTIONAL_SOLID,r.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(t.type))return{};let[n,i]=mge(t.from,e),[a,s]=mge(t.to,e),l=n<=a,u=l?i:n,h=l?a:s,f=Math.abs(a-s)>2,d=o(y=>l?-y:y,"adjustValue");t.from===t.to?h=u:(t.activate&&!f&&(h+=d(Re.activationWidth/2-1)),[r.db.LINETYPE.SOLID_OPEN,r.db.LINETYPE.DOTTED_OPEN].includes(t.type)||(h+=d(3)),[r.db.LINETYPE.BIDIRECTIONAL_SOLID,r.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(t.type)&&(u-=d(3)));let p=[n,i,a,s],m=Math.abs(u-h);t.wrap&&t.message&&(t.message=Ht.wrapLabel(t.message,Je.getMax(m+2*Re.wrapPadding,Re.width),i0(Re)));let g=Ht.calculateTextDimensions(t.message,i0(Re));return{width:Je.getMax(t.wrap?0:g.width+2*Re.wrapPadding,m+2*Re.wrapPadding,Re.width),height:0,startx:u,stopx:h,starty:0,stopy:0,message:t.message,type:t.type,wrap:t.wrap,fromBounds:Math.min.apply(null,p),toBounds:Math.max.apply(null,p)}},"buildMessageModel"),RZe=o(async function(t,e,r,n){let i={},a=[],s,l,u;for(let h of t){switch(h.type){case n.db.LINETYPE.LOOP_START:case n.db.LINETYPE.ALT_START:case n.db.LINETYPE.OPT_START:case n.db.LINETYPE.PAR_START:case n.db.LINETYPE.PAR_OVER_START:case n.db.LINETYPE.CRITICAL_START:case n.db.LINETYPE.BREAK_START:a.push({id:h.id,msg:h.message,from:Number.MAX_SAFE_INTEGER,to:Number.MIN_SAFE_INTEGER,width:0});break;case n.db.LINETYPE.ALT_ELSE:case n.db.LINETYPE.PAR_AND:case n.db.LINETYPE.CRITICAL_OPTION:h.message&&(s=a.pop(),i[s.id]=s,i[h.id]=s,a.push(s));break;case n.db.LINETYPE.LOOP_END:case n.db.LINETYPE.ALT_END:case n.db.LINETYPE.OPT_END:case n.db.LINETYPE.PAR_END:case n.db.LINETYPE.CRITICAL_END:case n.db.LINETYPE.BREAK_END:s=a.pop(),i[s.id]=s;break;case n.db.LINETYPE.ACTIVE_START:{let d=e.get(h.from?h.from:h.to.actor),p=Q6(h.from?h.from:h.to.actor).length,m=d.x+d.width/2+(p-1)*Re.activationWidth/2,g={startx:m,stopx:m+Re.activationWidth,actor:h.from,enabled:!0};it.activations.push(g)}break;case n.db.LINETYPE.ACTIVE_END:{let d=it.activations.map(p=>p.actor).lastIndexOf(h.from);it.activations.splice(d,1).splice(0,1)}break}h.placement!==void 0?(l=await DZe(h,e,n),h.noteModel=l,a.forEach(d=>{s=d,s.from=Je.getMin(s.from,l.startx),s.to=Je.getMax(s.to,l.startx+l.width),s.width=Je.getMax(s.width,Math.abs(s.from-s.to))-Re.labelBoxWidth})):(u=LZe(h,e,n),h.msgModel=u,u.startx&&u.stopx&&a.length>0&&a.forEach(d=>{if(s=d,u.startx===u.stopx){let p=e.get(h.from),m=e.get(h.to);s.from=Je.getMin(p.x-u.width/2,p.x-p.width/2,s.from),s.to=Je.getMax(m.x+u.width/2,m.x+p.width/2,s.to),s.width=Je.getMax(s.width,Math.abs(s.to-s.from))-Re.labelBoxWidth}else s.from=Je.getMin(u.startx,s.from),s.to=Je.getMax(u.stopx,s.to),s.width=Je.getMax(s.width,u.width)-Re.labelBoxWidth}))}return it.activations=[],X.debug("Loop type widths:",i),i},"calculateLoopBounds"),vge={bounds:it,drawActors:IB,drawActorsPopup:gge,setConf:yge,draw:SZe}});var bge={};ur(bge,{diagram:()=>NZe});var NZe,Tge=N(()=>{"use strict";lge();LB();uge();Xt();xge();NZe={parser:oge,get db(){return new X6},renderer:vge,styles:cge,init:o(t=>{t.sequence||(t.sequence={}),t.wrap&&(t.sequence.wrap=t.wrap,tv({sequence:{wrap:t.wrap}}))},"init")}});var OB,Z6,PB=N(()=>{"use strict";OB=function(){var t=o(function(Me,be,q,fe){for(q=q||{},fe=Me.length;fe--;q[Me[fe]]=be);return q},"o"),e=[1,18],r=[1,19],n=[1,20],i=[1,41],a=[1,42],s=[1,26],l=[1,24],u=[1,25],h=[1,32],f=[1,33],d=[1,34],p=[1,45],m=[1,35],g=[1,36],y=[1,37],x=[1,38],v=[1,27],b=[1,28],T=[1,29],S=[1,30],w=[1,31],E=[1,44],_=[1,46],A=[1,43],D=[1,47],O=[1,9],R=[1,8,9],k=[1,58],L=[1,59],C=[1,60],I=[1,61],M=[1,62],P=[1,63],B=[1,64],F=[1,8,9,41],G=[1,76],$=[1,8,9,12,13,22,39,41,44,68,69,70,71,72,73,74,79,81],U=[1,8,9,12,13,18,20,22,39,41,44,50,60,68,69,70,71,72,73,74,79,81,86,100,102,103],K=[13,60,86,100,102,103],ne=[13,60,73,74,86,100,102,103],j=[13,60,68,69,70,71,72,86,100,102,103],le=[1,100],Z=[1,117],ce=[1,113],Q=[1,109],ee=[1,115],te=[1,110],re=[1,111],he=[1,112],J=[1,114],ye=[1,116],se=[22,48,60,61,82,86,87,88,89,90],Se=[1,8,9,39,41,44],W=[1,8,9,22],Oe=[1,145],ve=[1,8,9,61],Pe=[1,8,9,22,48,60,61,82,86,87,88,89,90],qe={trace:o(function(){},"trace"),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,classLiteralName:17,DOT:18,className:19,GENERICTYPE:20,relationStatement:21,LABEL:22,namespaceStatement:23,classStatement:24,memberStatement:25,annotationStatement:26,clickStatement:27,styleStatement:28,cssClassStatement:29,noteStatement:30,classDefStatement:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,namespaceIdentifier:38,STRUCT_START:39,classStatements:40,STRUCT_STOP:41,NAMESPACE:42,classIdentifier:43,STYLE_SEPARATOR:44,members:45,CLASS:46,emptyBody:47,SPACE:48,ANNOTATION_START:49,ANNOTATION_END:50,MEMBER:51,SEPARATOR:52,relation:53,NOTE_FOR:54,noteText:55,NOTE:56,CLASSDEF:57,classList:58,stylesOpt:59,ALPHA:60,COMMA:61,direction_tb:62,direction_bt:63,direction_rl:64,direction_lr:65,relationType:66,lineType:67,AGGREGATION:68,EXTENSION:69,COMPOSITION:70,DEPENDENCY:71,LOLLIPOP:72,LINE:73,DOTTED_LINE:74,CALLBACK:75,LINK:76,LINK_TARGET:77,CLICK:78,CALLBACK_NAME:79,CALLBACK_ARGS:80,HREF:81,STYLE:82,CSSCLASS:83,style:84,styleComponent:85,NUM:86,COLON:87,UNIT:88,BRKT:89,PCT:90,commentToken:91,textToken:92,graphCodeTokens:93,textNoTagsToken:94,TAGSTART:95,TAGEND:96,"==":97,"--":98,DEFAULT:99,MINUS:100,keywords:101,UNICODE_TEXT:102,BQUOTE_STR:103,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",18:"DOT",20:"GENERICTYPE",22:"LABEL",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",39:"STRUCT_START",41:"STRUCT_STOP",42:"NAMESPACE",44:"STYLE_SEPARATOR",46:"CLASS",48:"SPACE",49:"ANNOTATION_START",50:"ANNOTATION_END",51:"MEMBER",52:"SEPARATOR",54:"NOTE_FOR",56:"NOTE",57:"CLASSDEF",60:"ALPHA",61:"COMMA",62:"direction_tb",63:"direction_bt",64:"direction_rl",65:"direction_lr",68:"AGGREGATION",69:"EXTENSION",70:"COMPOSITION",71:"DEPENDENCY",72:"LOLLIPOP",73:"LINE",74:"DOTTED_LINE",75:"CALLBACK",76:"LINK",77:"LINK_TARGET",78:"CLICK",79:"CALLBACK_NAME",80:"CALLBACK_ARGS",81:"HREF",82:"STYLE",83:"CSSCLASS",86:"NUM",87:"COLON",88:"UNIT",89:"BRKT",90:"PCT",93:"graphCodeTokens",95:"TAGSTART",96:"TAGEND",97:"==",98:"--",99:"DEFAULT",100:"MINUS",101:"keywords",102:"UNICODE_TEXT",103:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,1],[15,3],[15,2],[19,1],[19,3],[19,1],[19,2],[19,2],[19,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[23,4],[23,5],[38,2],[40,1],[40,2],[40,3],[24,1],[24,3],[24,4],[24,3],[24,6],[43,2],[43,3],[47,0],[47,2],[47,2],[26,4],[45,1],[45,2],[25,1],[25,2],[25,1],[25,1],[21,3],[21,4],[21,4],[21,5],[30,3],[30,2],[31,3],[58,1],[58,3],[32,1],[32,1],[32,1],[32,1],[53,3],[53,2],[53,2],[53,1],[66,1],[66,1],[66,1],[66,1],[66,1],[67,1],[67,1],[27,3],[27,4],[27,3],[27,4],[27,4],[27,5],[27,3],[27,4],[27,4],[27,5],[27,4],[27,5],[27,5],[27,6],[28,3],[29,3],[59,1],[59,3],[84,1],[84,2],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[91,1],[91,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[94,1],[94,1],[94,1],[94,1],[16,1],[16,1],[16,1],[16,1],[17,1],[55,1]],performAction:o(function(be,q,fe,ae,oe,V,xe){var Y=V.length-1;switch(oe){case 8:this.$=V[Y-1];break;case 9:case 10:case 13:case 15:this.$=V[Y];break;case 11:case 14:this.$=V[Y-2]+"."+V[Y];break;case 12:case 16:this.$=V[Y-1]+V[Y];break;case 17:case 18:this.$=V[Y-1]+"~"+V[Y]+"~";break;case 19:ae.addRelation(V[Y]);break;case 20:V[Y-1].title=ae.cleanupLabel(V[Y]),ae.addRelation(V[Y-1]);break;case 31:this.$=V[Y].trim(),ae.setAccTitle(this.$);break;case 32:case 33:this.$=V[Y].trim(),ae.setAccDescription(this.$);break;case 34:ae.addClassesToNamespace(V[Y-3],V[Y-1]);break;case 35:ae.addClassesToNamespace(V[Y-4],V[Y-1]);break;case 36:this.$=V[Y],ae.addNamespace(V[Y]);break;case 37:this.$=[V[Y]];break;case 38:this.$=[V[Y-1]];break;case 39:V[Y].unshift(V[Y-2]),this.$=V[Y];break;case 41:ae.setCssClass(V[Y-2],V[Y]);break;case 42:ae.addMembers(V[Y-3],V[Y-1]);break;case 44:ae.setCssClass(V[Y-5],V[Y-3]),ae.addMembers(V[Y-5],V[Y-1]);break;case 45:this.$=V[Y],ae.addClass(V[Y]);break;case 46:this.$=V[Y-1],ae.addClass(V[Y-1]),ae.setClassLabel(V[Y-1],V[Y]);break;case 50:ae.addAnnotation(V[Y],V[Y-2]);break;case 51:case 64:this.$=[V[Y]];break;case 52:V[Y].push(V[Y-1]),this.$=V[Y];break;case 53:break;case 54:ae.addMember(V[Y-1],ae.cleanupLabel(V[Y]));break;case 55:break;case 56:break;case 57:this.$={id1:V[Y-2],id2:V[Y],relation:V[Y-1],relationTitle1:"none",relationTitle2:"none"};break;case 58:this.$={id1:V[Y-3],id2:V[Y],relation:V[Y-1],relationTitle1:V[Y-2],relationTitle2:"none"};break;case 59:this.$={id1:V[Y-3],id2:V[Y],relation:V[Y-2],relationTitle1:"none",relationTitle2:V[Y-1]};break;case 60:this.$={id1:V[Y-4],id2:V[Y],relation:V[Y-2],relationTitle1:V[Y-3],relationTitle2:V[Y-1]};break;case 61:ae.addNote(V[Y],V[Y-1]);break;case 62:ae.addNote(V[Y]);break;case 63:this.$=V[Y-2],ae.defineClass(V[Y-1],V[Y]);break;case 65:this.$=V[Y-2].concat([V[Y]]);break;case 66:ae.setDirection("TB");break;case 67:ae.setDirection("BT");break;case 68:ae.setDirection("RL");break;case 69:ae.setDirection("LR");break;case 70:this.$={type1:V[Y-2],type2:V[Y],lineType:V[Y-1]};break;case 71:this.$={type1:"none",type2:V[Y],lineType:V[Y-1]};break;case 72:this.$={type1:V[Y-1],type2:"none",lineType:V[Y]};break;case 73:this.$={type1:"none",type2:"none",lineType:V[Y]};break;case 74:this.$=ae.relationType.AGGREGATION;break;case 75:this.$=ae.relationType.EXTENSION;break;case 76:this.$=ae.relationType.COMPOSITION;break;case 77:this.$=ae.relationType.DEPENDENCY;break;case 78:this.$=ae.relationType.LOLLIPOP;break;case 79:this.$=ae.lineType.LINE;break;case 80:this.$=ae.lineType.DOTTED_LINE;break;case 81:case 87:this.$=V[Y-2],ae.setClickEvent(V[Y-1],V[Y]);break;case 82:case 88:this.$=V[Y-3],ae.setClickEvent(V[Y-2],V[Y-1]),ae.setTooltip(V[Y-2],V[Y]);break;case 83:this.$=V[Y-2],ae.setLink(V[Y-1],V[Y]);break;case 84:this.$=V[Y-3],ae.setLink(V[Y-2],V[Y-1],V[Y]);break;case 85:this.$=V[Y-3],ae.setLink(V[Y-2],V[Y-1]),ae.setTooltip(V[Y-2],V[Y]);break;case 86:this.$=V[Y-4],ae.setLink(V[Y-3],V[Y-2],V[Y]),ae.setTooltip(V[Y-3],V[Y-1]);break;case 89:this.$=V[Y-3],ae.setClickEvent(V[Y-2],V[Y-1],V[Y]);break;case 90:this.$=V[Y-4],ae.setClickEvent(V[Y-3],V[Y-2],V[Y-1]),ae.setTooltip(V[Y-3],V[Y]);break;case 91:this.$=V[Y-3],ae.setLink(V[Y-2],V[Y]);break;case 92:this.$=V[Y-4],ae.setLink(V[Y-3],V[Y-1],V[Y]);break;case 93:this.$=V[Y-4],ae.setLink(V[Y-3],V[Y-1]),ae.setTooltip(V[Y-3],V[Y]);break;case 94:this.$=V[Y-5],ae.setLink(V[Y-4],V[Y-2],V[Y]),ae.setTooltip(V[Y-4],V[Y-1]);break;case 95:this.$=V[Y-2],ae.setCssStyle(V[Y-1],V[Y]);break;case 96:ae.setCssClass(V[Y-1],V[Y]);break;case 97:this.$=[V[Y]];break;case 98:V[Y-2].push(V[Y]),this.$=V[Y-2];break;case 100:this.$=V[Y-1]+V[Y];break}},"anonymous"),table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:e,35:r,37:n,38:22,42:i,43:23,46:a,49:s,51:l,52:u,54:h,56:f,57:d,60:p,62:m,63:g,64:y,65:x,75:v,76:b,78:T,82:S,83:w,86:E,100:_,102:A,103:D},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},t(O,[2,5],{8:[1,48]}),{8:[1,49]},t(R,[2,19],{22:[1,50]}),t(R,[2,21]),t(R,[2,22]),t(R,[2,23]),t(R,[2,24]),t(R,[2,25]),t(R,[2,26]),t(R,[2,27]),t(R,[2,28]),t(R,[2,29]),t(R,[2,30]),{34:[1,51]},{36:[1,52]},t(R,[2,33]),t(R,[2,53],{53:53,66:56,67:57,13:[1,54],22:[1,55],68:k,69:L,70:C,71:I,72:M,73:P,74:B}),{39:[1,65]},t(F,[2,40],{39:[1,67],44:[1,66]}),t(R,[2,55]),t(R,[2,56]),{16:68,60:p,86:E,100:_,102:A},{16:39,17:40,19:69,60:p,86:E,100:_,102:A,103:D},{16:39,17:40,19:70,60:p,86:E,100:_,102:A,103:D},{16:39,17:40,19:71,60:p,86:E,100:_,102:A,103:D},{60:[1,72]},{13:[1,73]},{16:39,17:40,19:74,60:p,86:E,100:_,102:A,103:D},{13:G,55:75},{58:77,60:[1,78]},t(R,[2,66]),t(R,[2,67]),t(R,[2,68]),t(R,[2,69]),t($,[2,13],{16:39,17:40,19:80,18:[1,79],20:[1,81],60:p,86:E,100:_,102:A,103:D}),t($,[2,15],{20:[1,82]}),{15:83,16:84,17:85,60:p,86:E,100:_,102:A,103:D},{16:39,17:40,19:86,60:p,86:E,100:_,102:A,103:D},t(U,[2,123]),t(U,[2,124]),t(U,[2,125]),t(U,[2,126]),t([1,8,9,12,13,20,22,39,41,44,68,69,70,71,72,73,74,79,81],[2,127]),t(O,[2,6],{10:5,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,19:21,38:22,43:23,16:39,17:40,5:87,33:e,35:r,37:n,42:i,46:a,49:s,51:l,52:u,54:h,56:f,57:d,60:p,62:m,63:g,64:y,65:x,75:v,76:b,78:T,82:S,83:w,86:E,100:_,102:A,103:D}),{5:88,10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:e,35:r,37:n,38:22,42:i,43:23,46:a,49:s,51:l,52:u,54:h,56:f,57:d,60:p,62:m,63:g,64:y,65:x,75:v,76:b,78:T,82:S,83:w,86:E,100:_,102:A,103:D},t(R,[2,20]),t(R,[2,31]),t(R,[2,32]),{13:[1,90],16:39,17:40,19:89,60:p,86:E,100:_,102:A,103:D},{53:91,66:56,67:57,68:k,69:L,70:C,71:I,72:M,73:P,74:B},t(R,[2,54]),{67:92,73:P,74:B},t(K,[2,73],{66:93,68:k,69:L,70:C,71:I,72:M}),t(ne,[2,74]),t(ne,[2,75]),t(ne,[2,76]),t(ne,[2,77]),t(ne,[2,78]),t(j,[2,79]),t(j,[2,80]),{8:[1,95],24:96,40:94,43:23,46:a},{16:97,60:p,86:E,100:_,102:A},{41:[1,99],45:98,51:le},{50:[1,101]},{13:[1,102]},{13:[1,103]},{79:[1,104],81:[1,105]},{22:Z,48:ce,59:106,60:Q,82:ee,84:107,85:108,86:te,87:re,88:he,89:J,90:ye},{60:[1,118]},{13:G,55:119},t(R,[2,62]),t(R,[2,128]),{22:Z,48:ce,59:120,60:Q,61:[1,121],82:ee,84:107,85:108,86:te,87:re,88:he,89:J,90:ye},t(se,[2,64]),{16:39,17:40,19:122,60:p,86:E,100:_,102:A,103:D},t($,[2,16]),t($,[2,17]),t($,[2,18]),{39:[2,36]},{15:124,16:84,17:85,18:[1,123],39:[2,9],60:p,86:E,100:_,102:A,103:D},{39:[2,10]},t(Se,[2,45],{11:125,12:[1,126]}),t(O,[2,7]),{9:[1,127]},t(W,[2,57]),{16:39,17:40,19:128,60:p,86:E,100:_,102:A,103:D},{13:[1,130],16:39,17:40,19:129,60:p,86:E,100:_,102:A,103:D},t(K,[2,72],{66:131,68:k,69:L,70:C,71:I,72:M}),t(K,[2,71]),{41:[1,132]},{24:96,40:133,43:23,46:a},{8:[1,134],41:[2,37]},t(F,[2,41],{39:[1,135]}),{41:[1,136]},t(F,[2,43]),{41:[2,51],45:137,51:le},{16:39,17:40,19:138,60:p,86:E,100:_,102:A,103:D},t(R,[2,81],{13:[1,139]}),t(R,[2,83],{13:[1,141],77:[1,140]}),t(R,[2,87],{13:[1,142],80:[1,143]}),{13:[1,144]},t(R,[2,95],{61:Oe}),t(ve,[2,97],{85:146,22:Z,48:ce,60:Q,82:ee,86:te,87:re,88:he,89:J,90:ye}),t(Pe,[2,99]),t(Pe,[2,101]),t(Pe,[2,102]),t(Pe,[2,103]),t(Pe,[2,104]),t(Pe,[2,105]),t(Pe,[2,106]),t(Pe,[2,107]),t(Pe,[2,108]),t(Pe,[2,109]),t(R,[2,96]),t(R,[2,61]),t(R,[2,63],{61:Oe}),{60:[1,147]},t($,[2,14]),{15:148,16:84,17:85,60:p,86:E,100:_,102:A,103:D},{39:[2,12]},t(Se,[2,46]),{13:[1,149]},{1:[2,4]},t(W,[2,59]),t(W,[2,58]),{16:39,17:40,19:150,60:p,86:E,100:_,102:A,103:D},t(K,[2,70]),t(R,[2,34]),{41:[1,151]},{24:96,40:152,41:[2,38],43:23,46:a},{45:153,51:le},t(F,[2,42]),{41:[2,52]},t(R,[2,50]),t(R,[2,82]),t(R,[2,84]),t(R,[2,85],{77:[1,154]}),t(R,[2,88]),t(R,[2,89],{13:[1,155]}),t(R,[2,91],{13:[1,157],77:[1,156]}),{22:Z,48:ce,60:Q,82:ee,84:158,85:108,86:te,87:re,88:he,89:J,90:ye},t(Pe,[2,100]),t(se,[2,65]),{39:[2,11]},{14:[1,159]},t(W,[2,60]),t(R,[2,35]),{41:[2,39]},{41:[1,160]},t(R,[2,86]),t(R,[2,90]),t(R,[2,92]),t(R,[2,93],{77:[1,161]}),t(ve,[2,98],{85:146,22:Z,48:ce,60:Q,82:ee,86:te,87:re,88:he,89:J,90:ye}),t(Se,[2,8]),t(F,[2,44]),t(R,[2,94])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],83:[2,36],85:[2,10],124:[2,12],127:[2,4],137:[2,52],148:[2,11],152:[2,39]},parseError:o(function(be,q){if(q.recoverable)this.trace(be);else{var fe=new Error(be);throw fe.hash=q,fe}},"parseError"),parse:o(function(be){var q=this,fe=[0],ae=[],oe=[null],V=[],xe=this.table,Y="",de=0,me=0,Be=0,_e=2,Te=1,Ue=V.slice.call(arguments,1),De=Object.create(this.lexer),Qe={yy:{}};for(var ot in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ot)&&(Qe.yy[ot]=this.yy[ot]);De.setInput(be,Qe.yy),Qe.yy.lexer=De,Qe.yy.parser=this,typeof De.yylloc>"u"&&(De.yylloc={});var Gt=De.yylloc;V.push(Gt);var Ze=De.options&&De.options.ranges;typeof Qe.yy.parseError=="function"?this.parseError=Qe.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ve(kt){fe.length=fe.length-2*kt,oe.length=oe.length-kt,V.length=V.length-kt}o(Ve,"popStack");function ht(){var kt;return kt=ae.pop()||De.lex()||Te,typeof kt!="number"&&(kt instanceof Array&&(ae=kt,kt=ae.pop()),kt=q.symbols_[kt]||kt),kt}o(ht,"lex");for(var Ye,ct,Yt,Tt,Mt,bt,ft={},St,dt,vt,at;;){if(Yt=fe[fe.length-1],this.defaultActions[Yt]?Tt=this.defaultActions[Yt]:((Ye===null||typeof Ye>"u")&&(Ye=ht()),Tt=xe[Yt]&&xe[Yt][Ye]),typeof Tt>"u"||!Tt.length||!Tt[0]){var pn="";at=[];for(St in xe[Yt])this.terminals_[St]&&St>_e&&at.push("'"+this.terminals_[St]+"'");De.showPosition?pn="Parse error on line "+(de+1)+`:
|
||
`+De.showPosition()+`
|
||
Expecting `+at.join(", ")+", got '"+(this.terminals_[Ye]||Ye)+"'":pn="Parse error on line "+(de+1)+": Unexpected "+(Ye==Te?"end of input":"'"+(this.terminals_[Ye]||Ye)+"'"),this.parseError(pn,{text:De.match,token:this.terminals_[Ye]||Ye,line:De.yylineno,loc:Gt,expected:at})}if(Tt[0]instanceof Array&&Tt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Yt+", token: "+Ye);switch(Tt[0]){case 1:fe.push(Ye),oe.push(De.yytext),V.push(De.yylloc),fe.push(Tt[1]),Ye=null,ct?(Ye=ct,ct=null):(me=De.yyleng,Y=De.yytext,de=De.yylineno,Gt=De.yylloc,Be>0&&Be--);break;case 2:if(dt=this.productions_[Tt[1]][1],ft.$=oe[oe.length-dt],ft._$={first_line:V[V.length-(dt||1)].first_line,last_line:V[V.length-1].last_line,first_column:V[V.length-(dt||1)].first_column,last_column:V[V.length-1].last_column},Ze&&(ft._$.range=[V[V.length-(dt||1)].range[0],V[V.length-1].range[1]]),bt=this.performAction.apply(ft,[Y,me,de,Qe.yy,Tt[1],oe,V].concat(Ue)),typeof bt<"u")return bt;dt&&(fe=fe.slice(0,-1*dt*2),oe=oe.slice(0,-1*dt),V=V.slice(0,-1*dt)),fe.push(this.productions_[Tt[1]][0]),oe.push(ft.$),V.push(ft._$),vt=xe[fe[fe.length-2]][fe[fe.length-1]],fe.push(vt);break;case 3:return!0}}return!0},"parse")},Ge=function(){var Me={EOF:1,parseError:o(function(q,fe){if(this.yy.parser)this.yy.parser.parseError(q,fe);else throw new Error(q)},"parseError"),setInput:o(function(be,q){return this.yy=q||this.yy||{},this._input=be,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var be=this._input[0];this.yytext+=be,this.yyleng++,this.offset++,this.match+=be,this.matched+=be;var q=be.match(/(?:\r\n?|\n).*/g);return q?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),be},"input"),unput:o(function(be){var q=be.length,fe=be.split(/(?:\r\n?|\n)/g);this._input=be+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-q),this.offset-=q;var ae=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),fe.length-1&&(this.yylineno-=fe.length-1);var oe=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:fe?(fe.length===ae.length?this.yylloc.first_column:0)+ae[ae.length-fe.length].length-fe[0].length:this.yylloc.first_column-q},this.options.ranges&&(this.yylloc.range=[oe[0],oe[0]+this.yyleng-q]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(be){this.unput(this.match.slice(be))},"less"),pastInput:o(function(){var be=this.matched.substr(0,this.matched.length-this.match.length);return(be.length>20?"...":"")+be.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var be=this.match;return be.length<20&&(be+=this._input.substr(0,20-be.length)),(be.substr(0,20)+(be.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var be=this.pastInput(),q=new Array(be.length+1).join("-");return be+this.upcomingInput()+`
|
||
`+q+"^"},"showPosition"),test_match:o(function(be,q){var fe,ae,oe;if(this.options.backtrack_lexer&&(oe={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&&(oe.yylloc.range=this.yylloc.range.slice(0))),ae=be[0].match(/(?:\r\n?|\n).*/g),ae&&(this.yylineno+=ae.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ae?ae[ae.length-1].length-ae[ae.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+be[0].length},this.yytext+=be[0],this.match+=be[0],this.matches=be,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(be[0].length),this.matched+=be[0],fe=this.performAction.call(this,this.yy,this,q,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),fe)return fe;if(this._backtrack){for(var V in oe)this[V]=oe[V];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var be,q,fe,ae;this._more||(this.yytext="",this.match="");for(var oe=this._currentRules(),V=0;V<oe.length;V++)if(fe=this._input.match(this.rules[oe[V]]),fe&&(!q||fe[0].length>q[0].length)){if(q=fe,ae=V,this.options.backtrack_lexer){if(be=this.test_match(fe,oe[V]),be!==!1)return be;if(this._backtrack){q=!1;continue}else return!1}else if(!this.options.flex)break}return q?(be=this.test_match(q,oe[ae]),be!==!1?be:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var q=this.next();return q||this.lex()},"lex"),begin:o(function(q){this.conditionStack.push(q)},"begin"),popState:o(function(){var q=this.conditionStack.length-1;return q>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(q){return q=this.conditionStack.length-1-Math.abs(q||0),q>=0?this.conditionStack[q]:"INITIAL"},"topState"),pushState:o(function(q){this.begin(q)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(q,fe,ae,oe){var V=oe;switch(ae){case 0:return 62;case 1:return 63;case 2:return 64;case 3:return 65;case 4:break;case 5:break;case 6:return this.begin("acc_title"),33;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),35;break;case 9:return this.popState(),"acc_descr_value";break;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 79;case 22:this.popState();break;case 23:return 80;case 24:this.popState();break;case 25:return"STR";case 26:this.begin("string");break;case 27:return 82;case 28:return 57;case 29:return this.begin("namespace"),42;break;case 30:return this.popState(),8;break;case 31:break;case 32:return this.begin("namespace-body"),39;break;case 33:return this.popState(),41;break;case 34:return"EOF_IN_STRUCT";case 35:return 8;case 36:break;case 37:return"EDGE_STATE";case 38:return this.begin("class"),46;break;case 39:return this.popState(),8;break;case 40:break;case 41:return this.popState(),this.popState(),41;break;case 42:return this.begin("class-body"),39;break;case 43:return this.popState(),41;break;case 44:return"EOF_IN_STRUCT";case 45:return"EDGE_STATE";case 46:return"OPEN_IN_STRUCT";case 47:break;case 48:return"MEMBER";case 49:return 83;case 50:return 75;case 51:return 76;case 52:return 78;case 53:return 54;case 54:return 56;case 55:return 49;case 56:return 50;case 57:return 81;case 58:this.popState();break;case 59:return"GENERICTYPE";case 60:this.begin("generic");break;case 61:this.popState();break;case 62:return"BQUOTE_STR";case 63:this.begin("bqstring");break;case 64:return 77;case 65:return 77;case 66:return 77;case 67:return 77;case 68:return 69;case 69:return 69;case 70:return 71;case 71:return 71;case 72:return 70;case 73:return 68;case 74:return 72;case 75:return 73;case 76:return 74;case 77:return 22;case 78:return 44;case 79:return 100;case 80:return 18;case 81:return"PLUS";case 82:return 87;case 83:return 61;case 84:return 89;case 85:return 89;case 86:return 90;case 87:return"EQUALS";case 88:return"EQUALS";case 89:return 60;case 90:return 12;case 91:return 14;case 92:return"PUNCTUATION";case 93:return 86;case 94:return 102;case 95:return 48;case 96:return 48;case 97:return 9}},"anonymous"),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)/,/^(?:classDef\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,33,34,35,36,37,38,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},namespace:{rules:[26,29,30,31,32,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},"class-body":{rules:[26,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},class:{rules:[26,39,40,41,42,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_descr:{rules:[9,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_title:{rules:[7,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},callback_args:{rules:[22,23,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},callback_name:{rules:[19,20,21,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},href:{rules:[26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},struct:{rules:[26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},generic:{rules:[26,49,50,51,52,53,54,55,56,57,58,59,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},bqstring:{rules:[26,49,50,51,52,53,54,55,56,57,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},string:{rules:[24,25,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,29,38,49,50,51,52,53,54,55,56,57,60,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,97],inclusive:!0}}};return Me}();qe.lexer=Ge;function Ne(){this.yy={}}return o(Ne,"Parser"),Ne.prototype=qe,qe.Parser=Ne,new Ne}();OB.parser=OB;Z6=OB});var Ege,k4,Sge=N(()=>{"use strict";Xt();dr();Ege=["#","+","~","-",""],k4=class{static{o(this,"ClassMember")}constructor(e,r){this.memberType=r,this.visibility="",this.classifier="",this.text="";let n=ar(e,ge());this.parseMember(n)}getDisplayDetails(){let e=this.visibility+tc(this.id);this.memberType==="method"&&(e+=`(${tc(this.parameters.trim())})`,this.returnType&&(e+=" : "+tc(this.returnType))),e=e.trim();let r=this.parseClassifier();return{displayText:e,cssStyle:r}}parseMember(e){let r="";if(this.memberType==="method"){let a=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/.exec(e);if(a){let s=a[1]?a[1].trim():"";if(Ege.includes(s)&&(this.visibility=s),this.id=a[2],this.parameters=a[3]?a[3].trim():"",r=a[4]?a[4].trim():"",this.returnType=a[5]?a[5].trim():"",r===""){let l=this.returnType.substring(this.returnType.length-1);/[$*]/.exec(l)&&(r=l,this.returnType=this.returnType.substring(0,this.returnType.length-1))}}}else{let i=e.length,a=e.substring(0,1),s=e.substring(i-1);Ege.includes(a)&&(this.visibility=a),/[$*]/.exec(s)&&(r=s),this.id=e.substring(this.visibility===""?0:1,r===""?i:i-1)}this.classifier=r,this.id=this.id.startsWith(" ")?" "+this.id.trim():this.id.trim();let n=`${this.visibility?"\\"+this.visibility:""}${tc(this.id)}${this.memberType==="method"?`(${tc(this.parameters)})${this.returnType?" : "+tc(this.returnType):""}`:""}`;this.text=n.replaceAll("<","<").replaceAll(">",">"),this.text.startsWith("\\<")&&(this.text=this.text.replace("\\<","~"))}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}}});var J6,Cge,a0,iy,BB=N(()=>{"use strict";pr();pt();Xt();dr();tr();ui();Sge();J6="classId-",Cge=0,a0=o(t=>Je.sanitizeText(t,ge()),"sanitizeText"),iy=class{constructor(){this.relations=[];this.classes=new Map;this.styleClasses=new Map;this.notes=[];this.interfaces=[];this.namespaces=new Map;this.namespaceCounter=0;this.functions=[];this.lineType={LINE:0,DOTTED_LINE:1};this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4};this.setupToolTips=o(e=>{let r=ze(".mermaidTooltip");(r._groups||r)[0][0]===null&&(r=ze("body").append("div").attr("class","mermaidTooltip").style("opacity",0)),ze(e).select("svg").selectAll("g.node").on("mouseover",a=>{let s=ze(a.currentTarget);if(s.attr("title")===null)return;let u=this.getBoundingClientRect();r.transition().duration(200).style("opacity",".9"),r.text(s.attr("title")).style("left",window.scrollX+u.left+(u.right-u.left)/2+"px").style("top",window.scrollY+u.top-14+document.body.scrollTop+"px"),r.html(r.html().replace(/<br\/>/g,"<br/>")),s.classed("hover",!0)}).on("mouseout",a=>{r.transition().duration(500).style("opacity",0),ze(a.currentTarget).classed("hover",!1)})},"setupToolTips");this.direction="TB";this.setAccTitle=Cr;this.getAccTitle=_r;this.setAccDescription=Dr;this.getAccDescription=Lr;this.setDiagramTitle=Or;this.getDiagramTitle=Rr;this.getConfig=o(()=>ge().class,"getConfig");this.functions.push(this.setupToolTips.bind(this)),this.clear(),this.addRelation=this.addRelation.bind(this),this.addClassesToNamespace=this.addClassesToNamespace.bind(this),this.addNamespace=this.addNamespace.bind(this),this.setCssClass=this.setCssClass.bind(this),this.addMembers=this.addMembers.bind(this),this.addClass=this.addClass.bind(this),this.setClassLabel=this.setClassLabel.bind(this),this.addAnnotation=this.addAnnotation.bind(this),this.addMember=this.addMember.bind(this),this.cleanupLabel=this.cleanupLabel.bind(this),this.addNote=this.addNote.bind(this),this.defineClass=this.defineClass.bind(this),this.setDirection=this.setDirection.bind(this),this.setLink=this.setLink.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.clear=this.clear.bind(this),this.setTooltip=this.setTooltip.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setCssStyle=this.setCssStyle.bind(this)}static{o(this,"ClassDB")}splitClassNameAndType(e){let r=Je.sanitizeText(e,ge()),n="",i=r;if(r.indexOf("~")>0){let a=r.split("~");i=a0(a[0]),n=a0(a[1])}return{className:i,type:n}}setClassLabel(e,r){let n=Je.sanitizeText(e,ge());r&&(r=a0(r));let{className:i}=this.splitClassNameAndType(n);this.classes.get(i).label=r,this.classes.get(i).text=`${r}${this.classes.get(i).type?`<${this.classes.get(i).type}>`:""}`}addClass(e){let r=Je.sanitizeText(e,ge()),{className:n,type:i}=this.splitClassNameAndType(r);if(this.classes.has(n))return;let a=Je.sanitizeText(n,ge());this.classes.set(a,{id:a,type:i,label:a,text:`${a}${i?`<${i}>`:""}`,shape:"classBox",cssClasses:"default",methods:[],members:[],annotations:[],styles:[],domId:J6+a+"-"+Cge}),Cge++}addInterface(e,r){let n={id:`interface${this.interfaces.length}`,label:e,classId:r};this.interfaces.push(n)}lookUpDomId(e){let r=Je.sanitizeText(e,ge());if(this.classes.has(r))return this.classes.get(r).domId;throw new Error("Class not found: "+r)}clear(){this.relations=[],this.classes=new Map,this.notes=[],this.interfaces=[],this.functions=[],this.functions.push(this.setupToolTips.bind(this)),this.namespaces=new Map,this.namespaceCounter=0,this.direction="TB",wr()}getClass(e){return this.classes.get(e)}getClasses(){return this.classes}getRelations(){return this.relations}getNotes(){return this.notes}addRelation(e){X.debug("Adding relation: "+JSON.stringify(e));let r=[this.relationType.LOLLIPOP,this.relationType.AGGREGATION,this.relationType.COMPOSITION,this.relationType.DEPENDENCY,this.relationType.EXTENSION];e.relation.type1===this.relationType.LOLLIPOP&&!r.includes(e.relation.type2)?(this.addClass(e.id2),this.addInterface(e.id1,e.id2),e.id1=`interface${this.interfaces.length-1}`):e.relation.type2===this.relationType.LOLLIPOP&&!r.includes(e.relation.type1)?(this.addClass(e.id1),this.addInterface(e.id2,e.id1),e.id2=`interface${this.interfaces.length-1}`):(this.addClass(e.id1),this.addClass(e.id2)),e.id1=this.splitClassNameAndType(e.id1).className,e.id2=this.splitClassNameAndType(e.id2).className,e.relationTitle1=Je.sanitizeText(e.relationTitle1.trim(),ge()),e.relationTitle2=Je.sanitizeText(e.relationTitle2.trim(),ge()),this.relations.push(e)}addAnnotation(e,r){let n=this.splitClassNameAndType(e).className;this.classes.get(n).annotations.push(r)}addMember(e,r){this.addClass(e);let n=this.splitClassNameAndType(e).className,i=this.classes.get(n);if(typeof r=="string"){let a=r.trim();a.startsWith("<<")&&a.endsWith(">>")?i.annotations.push(a0(a.substring(2,a.length-2))):a.indexOf(")")>0?i.methods.push(new k4(a,"method")):a&&i.members.push(new k4(a,"attribute"))}}addMembers(e,r){Array.isArray(r)&&(r.reverse(),r.forEach(n=>this.addMember(e,n)))}addNote(e,r){let n={id:`note${this.notes.length}`,class:r,text:e};this.notes.push(n)}cleanupLabel(e){return e.startsWith(":")&&(e=e.substring(1)),a0(e.trim())}setCssClass(e,r){e.split(",").forEach(n=>{let i=n;/\d/.exec(n[0])&&(i=J6+i);let a=this.classes.get(i);a&&(a.cssClasses+=" "+r)})}defineClass(e,r){for(let n of e){let i=this.styleClasses.get(n);i===void 0&&(i={id:n,styles:[],textStyles:[]},this.styleClasses.set(n,i)),r&&r.forEach(a=>{if(/color/.exec(a)){let s=a.replace("fill","bgFill");i.textStyles.push(s)}i.styles.push(a)}),this.classes.forEach(a=>{a.cssClasses.includes(n)&&a.styles.push(...r.flatMap(s=>s.split(",")))})}}setTooltip(e,r){e.split(",").forEach(n=>{r!==void 0&&(this.classes.get(n).tooltip=a0(r))})}getTooltip(e,r){return r&&this.namespaces.has(r)?this.namespaces.get(r).classes.get(e).tooltip:this.classes.get(e).tooltip}setLink(e,r,n){let i=ge();e.split(",").forEach(a=>{let s=a;/\d/.exec(a[0])&&(s=J6+s);let l=this.classes.get(s);l&&(l.link=Ht.formatUrl(r,i),i.securityLevel==="sandbox"?l.linkTarget="_top":typeof n=="string"?l.linkTarget=a0(n):l.linkTarget="_blank")}),this.setCssClass(e,"clickable")}setClickEvent(e,r,n){e.split(",").forEach(i=>{this.setClickFunc(i,r,n),this.classes.get(i).haveCallback=!0}),this.setCssClass(e,"clickable")}setClickFunc(e,r,n){let i=Je.sanitizeText(e,ge());if(ge().securityLevel!=="loose"||r===void 0)return;let s=i;if(this.classes.has(s)){let l=this.lookUpDomId(s),u=[];if(typeof n=="string"){u=n.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let h=0;h<u.length;h++){let f=u[h].trim();f.startsWith('"')&&f.endsWith('"')&&(f=f.substr(1,f.length-2)),u[h]=f}}u.length===0&&u.push(l),this.functions.push(()=>{let h=document.querySelector(`[id="${l}"]`);h!==null&&h.addEventListener("click",()=>{Ht.runFunc(r,...u)},!1)})}}bindFunctions(e){this.functions.forEach(r=>{r(e)})}getDirection(){return this.direction}setDirection(e){this.direction=e}addNamespace(e){this.namespaces.has(e)||(this.namespaces.set(e,{id:e,classes:new Map,children:{},domId:J6+e+"-"+this.namespaceCounter}),this.namespaceCounter++)}getNamespace(e){return this.namespaces.get(e)}getNamespaces(){return this.namespaces}addClassesToNamespace(e,r){if(this.namespaces.has(e))for(let n of r){let{className:i}=this.splitClassNameAndType(n);this.classes.get(i).parent=e,this.namespaces.get(e).classes.set(i,this.classes.get(i))}}setCssStyle(e,r){let n=this.classes.get(e);if(!(!r||!n))for(let i of r)i.includes(",")?n.styles.push(...i.split(",")):n.styles.push(i)}getArrowMarker(e){let r;switch(e){case 0:r="aggregation";break;case 1:r="extension";break;case 2:r="composition";break;case 3:r="dependency";break;case 4:r="lollipop";break;default:r="none"}return r}getData(){let e=[],r=[],n=ge();for(let a of this.namespaces.keys()){let s=this.namespaces.get(a);if(s){let l={id:s.id,label:s.id,isGroup:!0,padding:n.class.padding??16,shape:"rect",cssStyles:["fill: none","stroke: black"],look:n.look};e.push(l)}}for(let a of this.classes.keys()){let s=this.classes.get(a);if(s){let l=s;l.parentId=s.parent,l.look=n.look,e.push(l)}}let i=0;for(let a of this.notes){i++;let s={id:a.id,label:a.text,isGroup:!1,shape:"note",padding:n.class.padding??6,cssStyles:["text-align: left","white-space: nowrap",`fill: ${n.themeVariables.noteBkgColor}`,`stroke: ${n.themeVariables.noteBorderColor}`],look:n.look};e.push(s);let l=this.classes.get(a.class)?.id??"";if(l){let u={id:`edgeNote${i}`,start:a.id,end:l,type:"normal",thickness:"normal",classes:"relation",arrowTypeStart:"none",arrowTypeEnd:"none",arrowheadStyle:"",labelStyle:[""],style:["fill: none"],pattern:"dotted",look:n.look};r.push(u)}}for(let a of this.interfaces){let s={id:a.id,label:a.label,isGroup:!1,shape:"rect",cssStyles:["opacity: 0;"],look:n.look};e.push(s)}i=0;for(let a of this.relations){i++;let s={id:Hh(a.id1,a.id2,{prefix:"id",counter:i}),start:a.id1,end:a.id2,type:"normal",label:a.title,labelpos:"c",thickness:"normal",classes:"relation",arrowTypeStart:this.getArrowMarker(a.relation.type1),arrowTypeEnd:this.getArrowMarker(a.relation.type2),startLabelRight:a.relationTitle1==="none"?"":a.relationTitle1,endLabelLeft:a.relationTitle2==="none"?"":a.relationTitle2,arrowheadStyle:"",labelStyle:["display: inline-block"],style:a.style||"",pattern:a.relation.lineType==1?"dashed":"solid",look:n.look};r.push(s)}return{nodes:e,edges:r,other:{},config:n,direction:this.getDirection()}}}});var PZe,eC,FB=N(()=>{"use strict";mg();PZe=o(t=>`g.classGroup text {
|
||
fill: ${t.nodeBorder||t.classText};
|
||
stroke: none;
|
||
font-family: ${t.fontFamily};
|
||
font-size: 10px;
|
||
|
||
.title {
|
||
font-weight: bolder;
|
||
}
|
||
|
||
}
|
||
|
||
.nodeLabel, .edgeLabel {
|
||
color: ${t.classText};
|
||
}
|
||
.edgeLabel .label rect {
|
||
fill: ${t.mainBkg};
|
||
}
|
||
.label text {
|
||
fill: ${t.classText};
|
||
}
|
||
|
||
.labelBkg {
|
||
background: ${t.mainBkg};
|
||
}
|
||
.edgeLabel .label span {
|
||
background: ${t.mainBkg};
|
||
}
|
||
|
||
.classTitle {
|
||
font-weight: bolder;
|
||
}
|
||
.node rect,
|
||
.node circle,
|
||
.node ellipse,
|
||
.node polygon,
|
||
.node path {
|
||
fill: ${t.mainBkg};
|
||
stroke: ${t.nodeBorder};
|
||
stroke-width: 1px;
|
||
}
|
||
|
||
|
||
.divider {
|
||
stroke: ${t.nodeBorder};
|
||
stroke-width: 1;
|
||
}
|
||
|
||
g.clickable {
|
||
cursor: pointer;
|
||
}
|
||
|
||
g.classGroup rect {
|
||
fill: ${t.mainBkg};
|
||
stroke: ${t.nodeBorder};
|
||
}
|
||
|
||
g.classGroup line {
|
||
stroke: ${t.nodeBorder};
|
||
stroke-width: 1;
|
||
}
|
||
|
||
.classLabel .box {
|
||
stroke: none;
|
||
stroke-width: 0;
|
||
fill: ${t.mainBkg};
|
||
opacity: 0.5;
|
||
}
|
||
|
||
.classLabel .label {
|
||
fill: ${t.nodeBorder};
|
||
font-size: 10px;
|
||
}
|
||
|
||
.relation {
|
||
stroke: ${t.lineColor};
|
||
stroke-width: 1;
|
||
fill: none;
|
||
}
|
||
|
||
.dashed-line{
|
||
stroke-dasharray: 3;
|
||
}
|
||
|
||
.dotted-line{
|
||
stroke-dasharray: 1 2;
|
||
}
|
||
|
||
#compositionStart, .composition {
|
||
fill: ${t.lineColor} !important;
|
||
stroke: ${t.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
|
||
#compositionEnd, .composition {
|
||
fill: ${t.lineColor} !important;
|
||
stroke: ${t.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
|
||
#dependencyStart, .dependency {
|
||
fill: ${t.lineColor} !important;
|
||
stroke: ${t.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
|
||
#dependencyStart, .dependency {
|
||
fill: ${t.lineColor} !important;
|
||
stroke: ${t.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
|
||
#extensionStart, .extension {
|
||
fill: transparent !important;
|
||
stroke: ${t.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
|
||
#extensionEnd, .extension {
|
||
fill: transparent !important;
|
||
stroke: ${t.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
|
||
#aggregationStart, .aggregation {
|
||
fill: transparent !important;
|
||
stroke: ${t.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
|
||
#aggregationEnd, .aggregation {
|
||
fill: transparent !important;
|
||
stroke: ${t.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
|
||
#lollipopStart, .lollipop {
|
||
fill: ${t.mainBkg} !important;
|
||
stroke: ${t.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
|
||
#lollipopEnd, .lollipop {
|
||
fill: ${t.mainBkg} !important;
|
||
stroke: ${t.lineColor} !important;
|
||
stroke-width: 1;
|
||
}
|
||
|
||
.edgeTerminals {
|
||
font-size: 11px;
|
||
line-height: initial;
|
||
}
|
||
|
||
.classTitleText {
|
||
text-anchor: middle;
|
||
font-size: 18px;
|
||
fill: ${t.textColor};
|
||
}
|
||
${Fc()}
|
||
`,"getStyles"),eC=PZe});var BZe,FZe,$Ze,tC,$B=N(()=>{"use strict";Xt();pt();Kd();Af();_f();tr();BZe=o((t,e="TB")=>{if(!t.doc)return e;let r=e;for(let n of t.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir"),FZe=o(function(t,e){return e.db.getClasses()},"getClasses"),$Ze=o(async function(t,e,r,n){X.info("REF0:"),X.info("Drawing class diagram (v3)",e);let{securityLevel:i,state:a,layout:s}=ge(),l=n.db.getData(),u=zo(e,i);l.type=n.type,l.layoutAlgorithm=Bc(s),l.nodeSpacing=a?.nodeSpacing||50,l.rankSpacing=a?.rankSpacing||50,l.markers=["aggregation","extension","composition","dependency","lollipop"],l.diagramId=e,await Qo(l,u);let h=8;Ht.insertTitle(u,"classDiagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),Hs(u,h,"classDiagram",a?.useMaxWidth??!0)},"draw"),tC={getClasses:FZe,draw:$Ze,getDir:BZe}});var Age={};ur(Age,{diagram:()=>GZe});var GZe,_ge=N(()=>{"use strict";PB();BB();FB();$B();GZe={parser:Z6,get db(){return new iy},renderer:tC,styles:eC,init:o(t=>{t.class||(t.class={}),t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")}});var Rge={};ur(Rge,{diagram:()=>HZe});var HZe,Nge=N(()=>{"use strict";PB();BB();FB();$B();HZe={parser:Z6,get db(){return new iy},renderer:tC,styles:eC,init:o(t=>{t.class||(t.class={}),t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")}});var GB,rC,zB=N(()=>{"use strict";GB=function(){var t=o(function(F,G,$,U){for($=$||{},U=F.length;U--;$[F[U]]=G);return $},"o"),e=[1,2],r=[1,3],n=[1,4],i=[2,4],a=[1,9],s=[1,11],l=[1,16],u=[1,17],h=[1,18],f=[1,19],d=[1,33],p=[1,20],m=[1,21],g=[1,22],y=[1,23],x=[1,24],v=[1,26],b=[1,27],T=[1,28],S=[1,29],w=[1,30],E=[1,31],_=[1,32],A=[1,35],D=[1,36],O=[1,37],R=[1,38],k=[1,34],L=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],C=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,39,40,41,45,48,51,52,53,54,57],I=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],M={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,CLICK:38,STRING:39,HREF:40,classDef:41,CLASSDEF_ID:42,CLASSDEF_STYLEOPTS:43,DEFAULT:44,style:45,STYLE_IDS:46,STYLEDEF_STYLEOPTS:47,class:48,CLASSENTITY_IDS:49,STYLECLASS:50,direction_tb:51,direction_bt:52,direction_rl:53,direction_lr:54,eol:55,";":56,EDGE_STATE:57,STYLE_SEPARATOR:58,left_of:59,right_of:60,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"CLICK",39:"STRING",40:"HREF",41:"classDef",42:"CLASSDEF_ID",43:"CLASSDEF_STYLEOPTS",44:"DEFAULT",45:"style",46:"STYLE_IDS",47:"STYLEDEF_STYLEOPTS",48:"class",49:"CLASSENTITY_IDS",50:"STYLECLASS",51:"direction_tb",52:"direction_bt",53:"direction_rl",54:"direction_lr",56:";",57:"EDGE_STATE",58:"STYLE_SEPARATOR",59:"left_of",60:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[9,5],[9,5],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[55,1],[55,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:o(function(G,$,U,K,ne,j,le){var Z=j.length-1;switch(ne){case 3:return K.setRootDoc(j[Z]),j[Z];break;case 4:this.$=[];break;case 5:j[Z]!="nl"&&(j[Z-1].push(j[Z]),this.$=j[Z-1]);break;case 6:case 7:this.$=j[Z];break;case 8:this.$="nl";break;case 12:this.$=j[Z];break;case 13:let te=j[Z-1];te.description=K.trimColon(j[Z]),this.$=te;break;case 14:this.$={stmt:"relation",state1:j[Z-2],state2:j[Z]};break;case 15:let re=K.trimColon(j[Z]);this.$={stmt:"relation",state1:j[Z-3],state2:j[Z-1],description:re};break;case 19:this.$={stmt:"state",id:j[Z-3],type:"default",description:"",doc:j[Z-1]};break;case 20:var ce=j[Z],Q=j[Z-2].trim();if(j[Z].match(":")){var ee=j[Z].split(":");ce=ee[0],Q=[Q,ee[1]]}this.$={stmt:"state",id:ce,type:"default",description:Q};break;case 21:this.$={stmt:"state",id:j[Z-3],type:"default",description:j[Z-5],doc:j[Z-1]};break;case 22:this.$={stmt:"state",id:j[Z],type:"fork"};break;case 23:this.$={stmt:"state",id:j[Z],type:"join"};break;case 24:this.$={stmt:"state",id:j[Z],type:"choice"};break;case 25:this.$={stmt:"state",id:K.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:j[Z-1].trim(),note:{position:j[Z-2].trim(),text:j[Z].trim()}};break;case 29:this.$=j[Z].trim(),K.setAccTitle(this.$);break;case 30:case 31:this.$=j[Z].trim(),K.setAccDescription(this.$);break;case 32:this.$={stmt:"click",id:j[Z-3],url:j[Z-2],tooltip:j[Z-1]};break;case 33:this.$={stmt:"click",id:j[Z-3],url:j[Z-1],tooltip:""};break;case 34:case 35:this.$={stmt:"classDef",id:j[Z-1].trim(),classes:j[Z].trim()};break;case 36:this.$={stmt:"style",id:j[Z-1].trim(),styleClass:j[Z].trim()};break;case 37:this.$={stmt:"applyClass",id:j[Z-1].trim(),styleClass:j[Z].trim()};break;case 38:K.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:K.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:K.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:K.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:j[Z].trim(),type:"default",description:""};break;case 46:this.$={stmt:"state",id:j[Z-2].trim(),classes:[j[Z].trim()],type:"default",description:""};break;case 47:this.$={stmt:"state",id:j[Z-2].trim(),classes:[j[Z].trim()],type:"default",description:""};break}},"anonymous"),table:[{3:1,4:e,5:r,6:n},{1:[3]},{3:5,4:e,5:r,6:n},{3:6,4:e,5:r,6:n},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],i,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:a,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:u,19:h,22:f,24:d,25:p,26:m,27:g,28:y,29:x,32:25,33:v,35:b,37:T,38:S,41:w,45:E,48:_,51:A,52:D,53:O,54:R,57:k},t(L,[2,5]),{9:39,10:12,11:13,12:14,13:15,16:l,17:u,19:h,22:f,24:d,25:p,26:m,27:g,28:y,29:x,32:25,33:v,35:b,37:T,38:S,41:w,45:E,48:_,51:A,52:D,53:O,54:R,57:k},t(L,[2,7]),t(L,[2,8]),t(L,[2,9]),t(L,[2,10]),t(L,[2,11]),t(L,[2,12],{14:[1,40],15:[1,41]}),t(L,[2,16]),{18:[1,42]},t(L,[2,18],{20:[1,43]}),{23:[1,44]},t(L,[2,22]),t(L,[2,23]),t(L,[2,24]),t(L,[2,25]),{30:45,31:[1,46],59:[1,47],60:[1,48]},t(L,[2,28]),{34:[1,49]},{36:[1,50]},t(L,[2,31]),{13:51,24:d,57:k},{42:[1,52],44:[1,53]},{46:[1,54]},{49:[1,55]},t(C,[2,44],{58:[1,56]}),t(C,[2,45],{58:[1,57]}),t(L,[2,38]),t(L,[2,39]),t(L,[2,40]),t(L,[2,41]),t(L,[2,6]),t(L,[2,13]),{13:58,24:d,57:k},t(L,[2,17]),t(I,i,{7:59}),{24:[1,60]},{24:[1,61]},{23:[1,62]},{24:[2,48]},{24:[2,49]},t(L,[2,29]),t(L,[2,30]),{39:[1,63],40:[1,64]},{43:[1,65]},{43:[1,66]},{47:[1,67]},{50:[1,68]},{24:[1,69]},{24:[1,70]},t(L,[2,14],{14:[1,71]}),{4:a,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:u,19:h,21:[1,72],22:f,24:d,25:p,26:m,27:g,28:y,29:x,32:25,33:v,35:b,37:T,38:S,41:w,45:E,48:_,51:A,52:D,53:O,54:R,57:k},t(L,[2,20],{20:[1,73]}),{31:[1,74]},{24:[1,75]},{39:[1,76]},{39:[1,77]},t(L,[2,34]),t(L,[2,35]),t(L,[2,36]),t(L,[2,37]),t(C,[2,46]),t(C,[2,47]),t(L,[2,15]),t(L,[2,19]),t(I,i,{7:78}),t(L,[2,26]),t(L,[2,27]),{5:[1,79]},{5:[1,80]},{4:a,5:s,8:8,9:10,10:12,11:13,12:14,13:15,16:l,17:u,19:h,21:[1,81],22:f,24:d,25:p,26:m,27:g,28:y,29:x,32:25,33:v,35:b,37:T,38:S,41:w,45:E,48:_,51:A,52:D,53:O,54:R,57:k},t(L,[2,32]),t(L,[2,33]),t(L,[2,21])],defaultActions:{5:[2,1],6:[2,2],47:[2,48],48:[2,49]},parseError:o(function(G,$){if($.recoverable)this.trace(G);else{var U=new Error(G);throw U.hash=$,U}},"parseError"),parse:o(function(G){var $=this,U=[0],K=[],ne=[null],j=[],le=this.table,Z="",ce=0,Q=0,ee=0,te=2,re=1,he=j.slice.call(arguments,1),J=Object.create(this.lexer),ye={yy:{}};for(var se in this.yy)Object.prototype.hasOwnProperty.call(this.yy,se)&&(ye.yy[se]=this.yy[se]);J.setInput(G,ye.yy),ye.yy.lexer=J,ye.yy.parser=this,typeof J.yylloc>"u"&&(J.yylloc={});var Se=J.yylloc;j.push(Se);var W=J.options&&J.options.ranges;typeof ye.yy.parseError=="function"?this.parseError=ye.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Oe(Y){U.length=U.length-2*Y,ne.length=ne.length-Y,j.length=j.length-Y}o(Oe,"popStack");function ve(){var Y;return Y=K.pop()||J.lex()||re,typeof Y!="number"&&(Y instanceof Array&&(K=Y,Y=K.pop()),Y=$.symbols_[Y]||Y),Y}o(ve,"lex");for(var Pe,qe,Ge,Ne,Me,be,q={},fe,ae,oe,V;;){if(Ge=U[U.length-1],this.defaultActions[Ge]?Ne=this.defaultActions[Ge]:((Pe===null||typeof Pe>"u")&&(Pe=ve()),Ne=le[Ge]&&le[Ge][Pe]),typeof Ne>"u"||!Ne.length||!Ne[0]){var xe="";V=[];for(fe in le[Ge])this.terminals_[fe]&&fe>te&&V.push("'"+this.terminals_[fe]+"'");J.showPosition?xe="Parse error on line "+(ce+1)+`:
|
||
`+J.showPosition()+`
|
||
Expecting `+V.join(", ")+", got '"+(this.terminals_[Pe]||Pe)+"'":xe="Parse error on line "+(ce+1)+": Unexpected "+(Pe==re?"end of input":"'"+(this.terminals_[Pe]||Pe)+"'"),this.parseError(xe,{text:J.match,token:this.terminals_[Pe]||Pe,line:J.yylineno,loc:Se,expected:V})}if(Ne[0]instanceof Array&&Ne.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ge+", token: "+Pe);switch(Ne[0]){case 1:U.push(Pe),ne.push(J.yytext),j.push(J.yylloc),U.push(Ne[1]),Pe=null,qe?(Pe=qe,qe=null):(Q=J.yyleng,Z=J.yytext,ce=J.yylineno,Se=J.yylloc,ee>0&&ee--);break;case 2:if(ae=this.productions_[Ne[1]][1],q.$=ne[ne.length-ae],q._$={first_line:j[j.length-(ae||1)].first_line,last_line:j[j.length-1].last_line,first_column:j[j.length-(ae||1)].first_column,last_column:j[j.length-1].last_column},W&&(q._$.range=[j[j.length-(ae||1)].range[0],j[j.length-1].range[1]]),be=this.performAction.apply(q,[Z,Q,ce,ye.yy,Ne[1],ne,j].concat(he)),typeof be<"u")return be;ae&&(U=U.slice(0,-1*ae*2),ne=ne.slice(0,-1*ae),j=j.slice(0,-1*ae)),U.push(this.productions_[Ne[1]][0]),ne.push(q.$),j.push(q._$),oe=le[U[U.length-2]][U[U.length-1]],U.push(oe);break;case 3:return!0}}return!0},"parse")},P=function(){var F={EOF:1,parseError:o(function($,U){if(this.yy.parser)this.yy.parser.parseError($,U);else throw new Error($)},"parseError"),setInput:o(function(G,$){return this.yy=$||this.yy||{},this._input=G,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},"setInput"),input:o(function(){var G=this._input[0];this.yytext+=G,this.yyleng++,this.offset++,this.match+=G,this.matched+=G;var $=G.match(/(?:\r\n?|\n).*/g);return $?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),G},"input"),unput:o(function(G){var $=G.length,U=G.split(/(?:\r\n?|\n)/g);this._input=G+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-$),this.offset-=$;var K=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),U.length-1&&(this.yylineno-=U.length-1);var ne=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:U?(U.length===K.length?this.yylloc.first_column:0)+K[K.length-U.length].length-U[0].length:this.yylloc.first_column-$},this.options.ranges&&(this.yylloc.range=[ne[0],ne[0]+this.yyleng-$]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(G){this.unput(this.match.slice(G))},"less"),pastInput:o(function(){var G=this.matched.substr(0,this.matched.length-this.match.length);return(G.length>20?"...":"")+G.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var G=this.match;return G.length<20&&(G+=this._input.substr(0,20-G.length)),(G.substr(0,20)+(G.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var G=this.pastInput(),$=new Array(G.length+1).join("-");return G+this.upcomingInput()+`
|
||
`+$+"^"},"showPosition"),test_match:o(function(G,$){var U,K,ne;if(this.options.backtrack_lexer&&(ne={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&&(ne.yylloc.range=this.yylloc.range.slice(0))),K=G[0].match(/(?:\r\n?|\n).*/g),K&&(this.yylineno+=K.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:K?K[K.length-1].length-K[K.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+G[0].length},this.yytext+=G[0],this.match+=G[0],this.matches=G,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(G[0].length),this.matched+=G[0],U=this.performAction.call(this,this.yy,this,$,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),U)return U;if(this._backtrack){for(var j in ne)this[j]=ne[j];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var G,$,U,K;this._more||(this.yytext="",this.match="");for(var ne=this._currentRules(),j=0;j<ne.length;j++)if(U=this._input.match(this.rules[ne[j]]),U&&(!$||U[0].length>$[0].length)){if($=U,K=j,this.options.backtrack_lexer){if(G=this.test_match(U,ne[j]),G!==!1)return G;if(this._backtrack){$=!1;continue}else return!1}else if(!this.options.flex)break}return $?(G=this.test_match($,ne[K]),G!==!1?G:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var $=this.next();return $||this.lex()},"lex"),begin:o(function($){this.conditionStack.push($)},"begin"),popState:o(function(){var $=this.conditionStack.length-1;return $>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function($){return $=this.conditionStack.length-1-Math.abs($||0),$>=0?this.conditionStack[$]:"INITIAL"},"topState"),pushState:o(function($){this.begin($)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function($,U,K,ne){var j=ne;switch(K){case 0:return 38;case 1:return 40;case 2:return 39;case 3:return 44;case 4:return 51;case 5:return 52;case 6:return 53;case 7:return 54;case 8:break;case 9:break;case 10:return 5;case 11:break;case 12:break;case 13:break;case 14:break;case 15:return this.pushState("SCALE"),17;break;case 16:return 18;case 17:this.popState();break;case 18:return this.begin("acc_title"),33;break;case 19:return this.popState(),"acc_title_value";break;case 20:return this.begin("acc_descr"),35;break;case 21:return this.popState(),"acc_descr_value";break;case 22:this.begin("acc_descr_multiline");break;case 23:this.popState();break;case 24:return"acc_descr_multiline_value";case 25:return this.pushState("CLASSDEF"),41;break;case 26:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 27:return this.popState(),this.pushState("CLASSDEFID"),42;break;case 28:return this.popState(),43;break;case 29:return this.pushState("CLASS"),48;break;case 30:return this.popState(),this.pushState("CLASS_STYLE"),49;break;case 31:return this.popState(),50;break;case 32:return this.pushState("STYLE"),45;break;case 33:return this.popState(),this.pushState("STYLEDEF_STYLES"),46;break;case 34:return this.popState(),47;break;case 35:return this.pushState("SCALE"),17;break;case 36:return 18;case 37:this.popState();break;case 38:this.pushState("STATE");break;case 39:return this.popState(),U.yytext=U.yytext.slice(0,-8).trim(),25;break;case 40:return this.popState(),U.yytext=U.yytext.slice(0,-8).trim(),26;break;case 41:return this.popState(),U.yytext=U.yytext.slice(0,-10).trim(),27;break;case 42:return this.popState(),U.yytext=U.yytext.slice(0,-8).trim(),25;break;case 43:return this.popState(),U.yytext=U.yytext.slice(0,-8).trim(),26;break;case 44:return this.popState(),U.yytext=U.yytext.slice(0,-10).trim(),27;break;case 45:return 51;case 46:return 52;case 47:return 53;case 48:return 54;case 49:this.pushState("STATE_STRING");break;case 50:return this.pushState("STATE_ID"),"AS";break;case 51:return this.popState(),"ID";break;case 52:this.popState();break;case 53:return"STATE_DESCR";case 54:return 19;case 55:this.popState();break;case 56:return this.popState(),this.pushState("struct"),20;break;case 57:break;case 58:return this.popState(),21;break;case 59:break;case 60:return this.begin("NOTE"),29;break;case 61:return this.popState(),this.pushState("NOTE_ID"),59;break;case 62:return this.popState(),this.pushState("NOTE_ID"),60;break;case 63:this.popState(),this.pushState("FLOATING_NOTE");break;case 64:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";break;case 65:break;case 66:return"NOTE_TEXT";case 67:return this.popState(),"ID";break;case 68:return this.popState(),this.pushState("NOTE_TEXT"),24;break;case 69:return this.popState(),U.yytext=U.yytext.substr(2).trim(),31;break;case 70:return this.popState(),U.yytext=U.yytext.slice(0,-8).trim(),31;break;case 71:return 6;case 72:return 6;case 73:return 16;case 74:return 57;case 75:return 24;case 76:return U.yytext=U.yytext.trim(),14;break;case 77:return 15;case 78:return 28;case 79:return 58;case 80:return 5;case 81:return"INVALID"}},"anonymous"),rules:[/^(?:click\b)/i,/^(?:href\b)/i,/^(?:"[^"]*")/i,/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:(\w+)+((,\s*\w+)*))/i,/^(?:[^\n]*)/i,/^(?:style\s+)/i,/^(?:[\w,]+\s+)/i,/^(?:[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<<fork>>)/i,/^(?:.*<<join>>)/i,/^(?:.*<<choice>>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[12,13],inclusive:!1},struct:{rules:[12,13,25,29,32,38,45,46,47,48,57,58,59,60,74,75,76,77,78],inclusive:!1},FLOATING_NOTE_ID:{rules:[67],inclusive:!1},FLOATING_NOTE:{rules:[64,65,66],inclusive:!1},NOTE_TEXT:{rules:[69,70],inclusive:!1},NOTE_ID:{rules:[68],inclusive:!1},NOTE:{rules:[61,62,63],inclusive:!1},STYLEDEF_STYLEOPTS:{rules:[],inclusive:!1},STYLEDEF_STYLES:{rules:[34],inclusive:!1},STYLE_IDS:{rules:[],inclusive:!1},STYLE:{rules:[33],inclusive:!1},CLASS_STYLE:{rules:[31],inclusive:!1},CLASS:{rules:[30],inclusive:!1},CLASSDEFID:{rules:[28],inclusive:!1},CLASSDEF:{rules:[26,27],inclusive:!1},acc_descr_multiline:{rules:[23,24],inclusive:!1},acc_descr:{rules:[21],inclusive:!1},acc_title:{rules:[19],inclusive:!1},SCALE:{rules:[16,17,36,37],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[51],inclusive:!1},STATE_STRING:{rules:[52,53],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[12,13,39,40,41,42,43,44,49,50,54,55,56],inclusive:!1},ID:{rules:[12,13],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,15,18,20,22,25,29,32,35,38,56,60,71,72,73,74,75,76,77,79,80,81],inclusive:!0}}};return F}();M.lexer=P;function B(){this.yy={}}return o(B,"Parser"),B.prototype=M,M.Parser=B,new B}();GB.parser=GB;rC=GB});var Oge,nC,VB,qf,s0,E4,Pge,Bge,Fge,o0,iC,UB,HB,WB,qB,YB,aC,sC,$ge,Gge,XB,jB,zge,Vge,ay,XZe,Uge,KB,jZe,KZe,Hge,Wge,QZe,qge,ZZe,Yge,QB,ZB,Xge,oC,jge,JB,lC=N(()=>{"use strict";Oge="TB",nC="TB",VB="dir",qf="state",s0="root",E4="relation",Pge="classDef",Bge="style",Fge="applyClass",o0="default",iC="divider",UB="fill:none",HB="fill: #333",WB="c",qB="text",YB="normal",aC="rect",sC="rectWithTitle",$ge="stateStart",Gge="stateEnd",XB="divider",jB="roundedWithTitle",zge="note",Vge="noteGroup",ay="statediagram",XZe="state",Uge=`${ay}-${XZe}`,KB="transition",jZe="note",KZe="note-edge",Hge=`${KB} ${KZe}`,Wge=`${ay}-${jZe}`,QZe="cluster",qge=`${ay}-${QZe}`,ZZe="cluster-alt",Yge=`${ay}-${ZZe}`,QB="parent",ZB="note",Xge="state",oC="----",jge=`${oC}${ZB}`,JB=`${oC}${QB}`});function eF(t="",e=0,r="",n=oC){let i=r!==null&&r.length>0?`${n}${r}`:"";return`${Xge}-${t}${i}-${e}`}function cC(t,e,r){if(!e.id||e.id==="</join></fork>"||e.id==="</choice>")return;e.cssClasses&&(Array.isArray(e.cssCompiledStyles)||(e.cssCompiledStyles=[]),e.cssClasses.split(" ").forEach(i=>{let a=r.get(i);a&&(e.cssCompiledStyles=[...e.cssCompiledStyles??[],...a.styles])}));let n=t.find(i=>i.id===e.id);n?Object.assign(n,e):t.push(e)}function eJe(t){return t?.classes?.join(" ")??""}function tJe(t){return t?.styles??[]}var uC,Yf,JZe,Kge,sy,Qge,Zge=N(()=>{"use strict";Xt();pt();dr();lC();uC=new Map,Yf=0;o(eF,"stateDomId");JZe=o((t,e,r,n,i,a,s,l)=>{X.trace("items",e),e.forEach(u=>{switch(u.stmt){case qf:sy(t,u,r,n,i,a,s,l);break;case o0:sy(t,u,r,n,i,a,s,l);break;case E4:{sy(t,u.state1,r,n,i,a,s,l),sy(t,u.state2,r,n,i,a,s,l);let h={id:"edge"+Yf,start:u.state1.id,end:u.state2.id,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:UB,labelStyle:"",label:Je.sanitizeText(u.description??"",ge()),arrowheadStyle:HB,labelpos:WB,labelType:qB,thickness:YB,classes:KB,look:s};i.push(h),Yf++}break}})},"setupDoc"),Kge=o((t,e=nC)=>{let r=e;if(t.doc)for(let n of t.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir");o(cC,"insertOrUpdateNode");o(eJe,"getClassesFromDbInfo");o(tJe,"getStylesFromDbInfo");sy=o((t,e,r,n,i,a,s,l)=>{let u=e.id,h=r.get(u),f=eJe(h),d=tJe(h),p=ge();if(X.info("dataFetcher parsedItem",e,h,d),u!=="root"){let m=aC;e.start===!0?m=$ge:e.start===!1&&(m=Gge),e.type!==o0&&(m=e.type),uC.get(u)||uC.set(u,{id:u,shape:m,description:Je.sanitizeText(u,p),cssClasses:`${f} ${Uge}`,cssStyles:d});let g=uC.get(u);e.description&&(Array.isArray(g.description)?(g.shape=sC,g.description.push(e.description)):g.description?.length&&g.description.length>0?(g.shape=sC,g.description===u?g.description=[e.description]:g.description=[g.description,e.description]):(g.shape=aC,g.description=e.description),g.description=Je.sanitizeTextOrArray(g.description,p)),g.description?.length===1&&g.shape===sC&&(g.type==="group"?g.shape=jB:g.shape=aC),!g.type&&e.doc&&(X.info("Setting cluster for XCX",u,Kge(e)),g.type="group",g.isGroup=!0,g.dir=Kge(e),g.shape=e.type===iC?XB:jB,g.cssClasses=`${g.cssClasses} ${qge} ${a?Yge:""}`);let y={labelStyle:"",shape:g.shape,label:g.description,cssClasses:g.cssClasses,cssCompiledStyles:[],cssStyles:g.cssStyles,id:u,dir:g.dir,domId:eF(u,Yf),type:g.type,isGroup:g.type==="group",padding:8,rx:10,ry:10,look:s};if(y.shape===XB&&(y.label=""),t&&t.id!=="root"&&(X.trace("Setting node ",u," to be child of its parent ",t.id),y.parentId=t.id),y.centerLabel=!0,e.note){let x={labelStyle:"",shape:zge,label:e.note.text,cssClasses:Wge,cssStyles:[],cssCompiledStyles:[],id:u+jge+"-"+Yf,domId:eF(u,Yf,ZB),type:g.type,isGroup:g.type==="group",padding:p.flowchart?.padding,look:s,position:e.note.position},v=u+JB,b={labelStyle:"",shape:Vge,label:e.note.text,cssClasses:g.cssClasses,cssStyles:[],id:u+JB,domId:eF(u,Yf,QB),type:"group",isGroup:!0,padding:16,look:s,position:e.note.position};Yf++,b.id=v,x.parentId=v,cC(n,b,l),cC(n,x,l),cC(n,y,l);let T=u,S=x.id;e.note.position==="left of"&&(T=x.id,S=u),i.push({id:T+"-"+S,start:T,end:S,arrowhead:"none",arrowTypeEnd:"",style:UB,labelStyle:"",classes:Hge,arrowheadStyle:HB,labelpos:WB,labelType:qB,thickness:YB,look:s})}else cC(n,y,l)}e.doc&&(X.trace("Adding nodes children "),JZe(e,e.doc,r,n,i,!a,s,l))},"dataFetcher"),Qge=o(()=>{uC.clear(),Yf=0},"reset")});var tF,rJe,nJe,Jge,rF=N(()=>{"use strict";Xt();pt();Kd();Af();_f();tr();lC();tF=o((t,e=nC)=>{if(!t.doc)return e;let r=e;for(let n of t.doc)n.stmt==="dir"&&(r=n.value);return r},"getDir"),rJe=o(function(t,e){return e.db.getClasses()},"getClasses"),nJe=o(async function(t,e,r,n){X.info("REF0:"),X.info("Drawing state diagram (v2)",e);let{securityLevel:i,state:a,layout:s}=ge();n.db.extract(n.db.getRootDocV2());let l=n.db.getData(),u=zo(e,i);l.type=n.type,l.layoutAlgorithm=s,l.nodeSpacing=a?.nodeSpacing||50,l.rankSpacing=a?.rankSpacing||50,l.markers=["barb"],l.diagramId=e,await Qo(l,u);let h=8;try{(typeof n.db.getLinks=="function"?n.db.getLinks():new Map).forEach((d,p)=>{let m=typeof p=="string"?p:typeof p?.id=="string"?p.id:"";if(!m){X.warn("\u26A0\uFE0F Invalid or missing stateId from key:",JSON.stringify(p));return}let g=u.node()?.querySelectorAll("g"),y;if(g?.forEach(T=>{T.textContent?.trim()===m&&(y=T)}),!y){X.warn("\u26A0\uFE0F Could not find node matching text:",m);return}let x=y.parentNode;if(!x){X.warn("\u26A0\uFE0F Node has no parent, cannot wrap:",m);return}let v=document.createElementNS("http://www.w3.org/2000/svg","a"),b=d.url.replace(/^"+|"+$/g,"");if(v.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",b),v.setAttribute("target","_blank"),d.tooltip){let T=d.tooltip.replace(/^"+|"+$/g,"");v.setAttribute("title",T)}x.replaceChild(v,y),v.appendChild(y),X.info("\u{1F517} Wrapped node in <a> tag for:",m,d.url)})}catch(f){X.error("\u274C Error injecting clickable links:",f)}Ht.insertTitle(u,"statediagramTitleText",a?.titleTopMargin??25,n.db.getDiagramTitle()),Hs(u,h,ay,a?.useMaxWidth??!0)},"draw"),Jge={getClasses:rJe,draw:nJe,getDir:tF}});var Ts,e1e,t1e,hC,al,fC=N(()=>{"use strict";Xt();pt();tr();dr();ui();Zge();rF();lC();Ts={START_NODE:"[*]",START_TYPE:"start",END_NODE:"[*]",END_TYPE:"end",COLOR_KEYWORD:"color",FILL_KEYWORD:"fill",BG_FILL:"bgFill",STYLECLASS_SEP:","},e1e=o(()=>new Map,"newClassesList"),t1e=o(()=>({relations:[],states:new Map,documents:{}}),"newDoc"),hC=o(t=>JSON.parse(JSON.stringify(t)),"clone"),al=class{constructor(e){this.version=e;this.nodes=[];this.edges=[];this.rootDoc=[];this.classes=e1e();this.documents={root:t1e()};this.currentDocument=this.documents.root;this.startEndCount=0;this.dividerCnt=0;this.links=new Map;this.getAccTitle=_r;this.setAccTitle=Cr;this.getAccDescription=Lr;this.setAccDescription=Dr;this.setDiagramTitle=Or;this.getDiagramTitle=Rr;this.clear(),this.setRootDoc=this.setRootDoc.bind(this),this.getDividerId=this.getDividerId.bind(this),this.setDirection=this.setDirection.bind(this),this.trimColon=this.trimColon.bind(this)}static{o(this,"StateDB")}static{this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3}}extract(e){this.clear(!0);for(let i of Array.isArray(e)?e:e.doc)switch(i.stmt){case qf:this.addState(i.id.trim(),i.type,i.doc,i.description,i.note);break;case E4:this.addRelation(i.state1,i.state2,i.description);break;case Pge:this.addStyleClass(i.id.trim(),i.classes);break;case Bge:this.handleStyleDef(i);break;case Fge:this.setCssClass(i.id.trim(),i.styleClass);break;case"click":this.addLink(i.id,i.url,i.tooltip);break}let r=this.getStates(),n=ge();Qge(),sy(void 0,this.getRootDocV2(),r,this.nodes,this.edges,!0,n.look,this.classes);for(let i of this.nodes)if(Array.isArray(i.label)){if(i.description=i.label.slice(1),i.isGroup&&i.description.length>0)throw new Error(`Group nodes can only have label. Remove the additional description for node [${i.id}]`);i.label=i.label[0]}}handleStyleDef(e){let r=e.id.trim().split(","),n=e.styleClass.split(",");for(let i of r){let a=this.getState(i);if(!a){let s=i.trim();this.addState(s),a=this.getState(s)}a&&(a.styles=n.map(s=>s.replace(/;/g,"")?.trim()))}}setRootDoc(e){X.info("Setting root doc",e),this.rootDoc=e,this.version===1?this.extract(e):this.extract(this.getRootDocV2())}docTranslator(e,r,n){if(r.stmt===E4){this.docTranslator(e,r.state1,!0),this.docTranslator(e,r.state2,!1);return}if(r.stmt===qf&&(r.id===Ts.START_NODE?(r.id=e.id+(n?"_start":"_end"),r.start=n):r.id=r.id.trim()),r.stmt!==s0&&r.stmt!==qf||!r.doc)return;let i=[],a=[];for(let s of r.doc)if(s.type===iC){let l=hC(s);l.doc=hC(a),i.push(l),a=[]}else a.push(s);if(i.length>0&&a.length>0){let s={stmt:qf,id:OL(),type:"divider",doc:hC(a)};i.push(hC(s)),r.doc=i}r.doc.forEach(s=>this.docTranslator(r,s,!0))}getRootDocV2(){return this.docTranslator({id:s0,stmt:s0},{id:s0,stmt:s0,doc:this.rootDoc},!0),{id:s0,doc:this.rootDoc}}addState(e,r=o0,n=void 0,i=void 0,a=void 0,s=void 0,l=void 0,u=void 0){let h=e?.trim();if(!this.currentDocument.states.has(h))X.info("Adding state ",h,i),this.currentDocument.states.set(h,{stmt:qf,id:h,descriptions:[],type:r,doc:n,note:a,classes:[],styles:[],textStyles:[]});else{let f=this.currentDocument.states.get(h);if(!f)throw new Error(`State not found: ${h}`);f.doc||(f.doc=n),f.type||(f.type=r)}if(i&&(X.info("Setting state description",h,i),(Array.isArray(i)?i:[i]).forEach(d=>this.addDescription(h,d.trim()))),a){let f=this.currentDocument.states.get(h);if(!f)throw new Error(`State not found: ${h}`);f.note=a,f.note.text=Je.sanitizeText(f.note.text,ge())}s&&(X.info("Setting state classes",h,s),(Array.isArray(s)?s:[s]).forEach(d=>this.setCssClass(h,d.trim()))),l&&(X.info("Setting state styles",h,l),(Array.isArray(l)?l:[l]).forEach(d=>this.setStyle(h,d.trim()))),u&&(X.info("Setting state styles",h,l),(Array.isArray(u)?u:[u]).forEach(d=>this.setTextStyle(h,d.trim())))}clear(e){this.nodes=[],this.edges=[],this.documents={root:t1e()},this.currentDocument=this.documents.root,this.startEndCount=0,this.classes=e1e(),e||(this.links=new Map,wr())}getState(e){return this.currentDocument.states.get(e)}getStates(){return this.currentDocument.states}logDocuments(){X.info("Documents = ",this.documents)}getRelations(){return this.currentDocument.relations}addLink(e,r,n){this.links.set(e,{url:r,tooltip:n}),X.warn("Adding link",e,r,n)}getLinks(){return this.links}startIdIfNeeded(e=""){return e===Ts.START_NODE?(this.startEndCount++,`${Ts.START_TYPE}${this.startEndCount}`):e}startTypeIfNeeded(e="",r=o0){return e===Ts.START_NODE?Ts.START_TYPE:r}endIdIfNeeded(e=""){return e===Ts.END_NODE?(this.startEndCount++,`${Ts.END_TYPE}${this.startEndCount}`):e}endTypeIfNeeded(e="",r=o0){return e===Ts.END_NODE?Ts.END_TYPE:r}addRelationObjs(e,r,n=""){let i=this.startIdIfNeeded(e.id.trim()),a=this.startTypeIfNeeded(e.id.trim(),e.type),s=this.startIdIfNeeded(r.id.trim()),l=this.startTypeIfNeeded(r.id.trim(),r.type);this.addState(i,a,e.doc,e.description,e.note,e.classes,e.styles,e.textStyles),this.addState(s,l,r.doc,r.description,r.note,r.classes,r.styles,r.textStyles),this.currentDocument.relations.push({id1:i,id2:s,relationTitle:Je.sanitizeText(n,ge())})}addRelation(e,r,n){if(typeof e=="object"&&typeof r=="object")this.addRelationObjs(e,r,n);else if(typeof e=="string"&&typeof r=="string"){let i=this.startIdIfNeeded(e.trim()),a=this.startTypeIfNeeded(e),s=this.endIdIfNeeded(r.trim()),l=this.endTypeIfNeeded(r);this.addState(i,a),this.addState(s,l),this.currentDocument.relations.push({id1:i,id2:s,relationTitle:n?Je.sanitizeText(n,ge()):void 0})}}addDescription(e,r){let n=this.currentDocument.states.get(e),i=r.startsWith(":")?r.replace(":","").trim():r;n?.descriptions?.push(Je.sanitizeText(i,ge()))}cleanupLabel(e){return e.startsWith(":")?e.slice(2).trim():e.trim()}getDividerId(){return this.dividerCnt++,`divider-id-${this.dividerCnt}`}addStyleClass(e,r=""){this.classes.has(e)||this.classes.set(e,{id:e,styles:[],textStyles:[]});let n=this.classes.get(e);r&&n&&r.split(Ts.STYLECLASS_SEP).forEach(i=>{let a=i.replace(/([^;]*);/,"$1").trim();if(RegExp(Ts.COLOR_KEYWORD).exec(i)){let l=a.replace(Ts.FILL_KEYWORD,Ts.BG_FILL).replace(Ts.COLOR_KEYWORD,Ts.FILL_KEYWORD);n.textStyles.push(l)}n.styles.push(a)})}getClasses(){return this.classes}setCssClass(e,r){e.split(",").forEach(n=>{let i=this.getState(n);if(!i){let a=n.trim();this.addState(a),i=this.getState(a)}i?.classes?.push(r)})}setStyle(e,r){this.getState(e)?.styles?.push(r)}setTextStyle(e,r){this.getState(e)?.textStyles?.push(r)}getDirectionStatement(){return this.rootDoc.find(e=>e.stmt===VB)}getDirection(){return this.getDirectionStatement()?.value??Oge}setDirection(e){let r=this.getDirectionStatement();r?r.value=e:this.rootDoc.unshift({stmt:VB,value:e})}trimColon(e){return e.startsWith(":")?e.slice(1).trim():e.trim()}getData(){let e=ge();return{nodes:this.nodes,edges:this.edges,other:{},config:e,direction:tF(this.getRootDocV2())}}getConfig(){return ge().state}}});var iJe,dC,nF=N(()=>{"use strict";iJe=o(t=>`
|
||
defs #statediagram-barbEnd {
|
||
fill: ${t.transitionColor};
|
||
stroke: ${t.transitionColor};
|
||
}
|
||
g.stateGroup text {
|
||
fill: ${t.nodeBorder};
|
||
stroke: none;
|
||
font-size: 10px;
|
||
}
|
||
g.stateGroup text {
|
||
fill: ${t.textColor};
|
||
stroke: none;
|
||
font-size: 10px;
|
||
|
||
}
|
||
g.stateGroup .state-title {
|
||
font-weight: bolder;
|
||
fill: ${t.stateLabelColor};
|
||
}
|
||
|
||
g.stateGroup rect {
|
||
fill: ${t.mainBkg};
|
||
stroke: ${t.nodeBorder};
|
||
}
|
||
|
||
g.stateGroup line {
|
||
stroke: ${t.lineColor};
|
||
stroke-width: 1;
|
||
}
|
||
|
||
.transition {
|
||
stroke: ${t.transitionColor};
|
||
stroke-width: 1;
|
||
fill: none;
|
||
}
|
||
|
||
.stateGroup .composit {
|
||
fill: ${t.background};
|
||
border-bottom: 1px
|
||
}
|
||
|
||
.stateGroup .alt-composit {
|
||
fill: #e0e0e0;
|
||
border-bottom: 1px
|
||
}
|
||
|
||
.state-note {
|
||
stroke: ${t.noteBorderColor};
|
||
fill: ${t.noteBkgColor};
|
||
|
||
text {
|
||
fill: ${t.noteTextColor};
|
||
stroke: none;
|
||
font-size: 10px;
|
||
}
|
||
}
|
||
|
||
.stateLabel .box {
|
||
stroke: none;
|
||
stroke-width: 0;
|
||
fill: ${t.mainBkg};
|
||
opacity: 0.5;
|
||
}
|
||
|
||
.edgeLabel .label rect {
|
||
fill: ${t.labelBackgroundColor};
|
||
opacity: 0.5;
|
||
}
|
||
.edgeLabel {
|
||
background-color: ${t.edgeLabelBackground};
|
||
p {
|
||
background-color: ${t.edgeLabelBackground};
|
||
}
|
||
rect {
|
||
opacity: 0.5;
|
||
background-color: ${t.edgeLabelBackground};
|
||
fill: ${t.edgeLabelBackground};
|
||
}
|
||
text-align: center;
|
||
}
|
||
.edgeLabel .label text {
|
||
fill: ${t.transitionLabelColor||t.tertiaryTextColor};
|
||
}
|
||
.label div .edgeLabel {
|
||
color: ${t.transitionLabelColor||t.tertiaryTextColor};
|
||
}
|
||
|
||
.stateLabel text {
|
||
fill: ${t.stateLabelColor};
|
||
font-size: 10px;
|
||
font-weight: bold;
|
||
}
|
||
|
||
.node circle.state-start {
|
||
fill: ${t.specialStateColor};
|
||
stroke: ${t.specialStateColor};
|
||
}
|
||
|
||
.node .fork-join {
|
||
fill: ${t.specialStateColor};
|
||
stroke: ${t.specialStateColor};
|
||
}
|
||
|
||
.node circle.state-end {
|
||
fill: ${t.innerEndBackground};
|
||
stroke: ${t.background};
|
||
stroke-width: 1.5
|
||
}
|
||
.end-state-inner {
|
||
fill: ${t.compositeBackground||t.background};
|
||
// stroke: ${t.background};
|
||
stroke-width: 1.5
|
||
}
|
||
|
||
.node rect {
|
||
fill: ${t.stateBkg||t.mainBkg};
|
||
stroke: ${t.stateBorder||t.nodeBorder};
|
||
stroke-width: 1px;
|
||
}
|
||
.node polygon {
|
||
fill: ${t.mainBkg};
|
||
stroke: ${t.stateBorder||t.nodeBorder};;
|
||
stroke-width: 1px;
|
||
}
|
||
#statediagram-barbEnd {
|
||
fill: ${t.lineColor};
|
||
}
|
||
|
||
.statediagram-cluster rect {
|
||
fill: ${t.compositeTitleBackground};
|
||
stroke: ${t.stateBorder||t.nodeBorder};
|
||
stroke-width: 1px;
|
||
}
|
||
|
||
.cluster-label, .nodeLabel {
|
||
color: ${t.stateLabelColor};
|
||
// line-height: 1;
|
||
}
|
||
|
||
.statediagram-cluster rect.outer {
|
||
rx: 5px;
|
||
ry: 5px;
|
||
}
|
||
.statediagram-state .divider {
|
||
stroke: ${t.stateBorder||t.nodeBorder};
|
||
}
|
||
|
||
.statediagram-state .title-state {
|
||
rx: 5px;
|
||
ry: 5px;
|
||
}
|
||
.statediagram-cluster.statediagram-cluster .inner {
|
||
fill: ${t.compositeBackground||t.background};
|
||
}
|
||
.statediagram-cluster.statediagram-cluster-alt .inner {
|
||
fill: ${t.altBackground?t.altBackground:"#efefef"};
|
||
}
|
||
|
||
.statediagram-cluster .inner {
|
||
rx:0;
|
||
ry:0;
|
||
}
|
||
|
||
.statediagram-state rect.basic {
|
||
rx: 5px;
|
||
ry: 5px;
|
||
}
|
||
.statediagram-state rect.divider {
|
||
stroke-dasharray: 10,10;
|
||
fill: ${t.altBackground?t.altBackground:"#efefef"};
|
||
}
|
||
|
||
.note-edge {
|
||
stroke-dasharray: 5;
|
||
}
|
||
|
||
.statediagram-note rect {
|
||
fill: ${t.noteBkgColor};
|
||
stroke: ${t.noteBorderColor};
|
||
stroke-width: 1px;
|
||
rx: 0;
|
||
ry: 0;
|
||
}
|
||
.statediagram-note rect {
|
||
fill: ${t.noteBkgColor};
|
||
stroke: ${t.noteBorderColor};
|
||
stroke-width: 1px;
|
||
rx: 0;
|
||
ry: 0;
|
||
}
|
||
|
||
.statediagram-note text {
|
||
fill: ${t.noteTextColor};
|
||
}
|
||
|
||
.statediagram-note .nodeLabel {
|
||
color: ${t.noteTextColor};
|
||
}
|
||
.statediagram .edgeLabel {
|
||
color: red; // ${t.noteTextColor};
|
||
}
|
||
|
||
#dependencyStart, #dependencyEnd {
|
||
fill: ${t.lineColor};
|
||
stroke: ${t.lineColor};
|
||
stroke-width: 1;
|
||
}
|
||
|
||
.statediagramTitleText {
|
||
text-anchor: middle;
|
||
font-size: 18px;
|
||
fill: ${t.textColor};
|
||
}
|
||
`,"getStyles"),dC=iJe});var aJe,sJe,oJe,lJe,n1e,cJe,uJe,hJe,fJe,iF,r1e,i1e,a1e=N(()=>{"use strict";pr();fC();tr();dr();Xt();pt();aJe=o(t=>t.append("circle").attr("class","start-state").attr("r",ge().state.sizeUnit).attr("cx",ge().state.padding+ge().state.sizeUnit).attr("cy",ge().state.padding+ge().state.sizeUnit),"drawStartState"),sJe=o(t=>t.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",ge().state.textHeight).attr("class","divider").attr("x2",ge().state.textHeight*2).attr("y1",0).attr("y2",0),"drawDivider"),oJe=o((t,e)=>{let r=t.append("text").attr("x",2*ge().state.padding).attr("y",ge().state.textHeight+2*ge().state.padding).attr("font-size",ge().state.fontSize).attr("class","state-title").text(e.id),n=r.node().getBBox();return t.insert("rect",":first-child").attr("x",ge().state.padding).attr("y",ge().state.padding).attr("width",n.width+2*ge().state.padding).attr("height",n.height+2*ge().state.padding).attr("rx",ge().state.radius),r},"drawSimpleState"),lJe=o((t,e)=>{let r=o(function(p,m,g){let y=p.append("tspan").attr("x",2*ge().state.padding).text(m);g||y.attr("dy",ge().state.textHeight)},"addTspan"),i=t.append("text").attr("x",2*ge().state.padding).attr("y",ge().state.textHeight+1.3*ge().state.padding).attr("font-size",ge().state.fontSize).attr("class","state-title").text(e.descriptions[0]).node().getBBox(),a=i.height,s=t.append("text").attr("x",ge().state.padding).attr("y",a+ge().state.padding*.4+ge().state.dividerMargin+ge().state.textHeight).attr("class","state-description"),l=!0,u=!0;e.descriptions.forEach(function(p){l||(r(s,p,u),u=!1),l=!1});let h=t.append("line").attr("x1",ge().state.padding).attr("y1",ge().state.padding+a+ge().state.dividerMargin/2).attr("y2",ge().state.padding+a+ge().state.dividerMargin/2).attr("class","descr-divider"),f=s.node().getBBox(),d=Math.max(f.width,i.width);return h.attr("x2",d+3*ge().state.padding),t.insert("rect",":first-child").attr("x",ge().state.padding).attr("y",ge().state.padding).attr("width",d+2*ge().state.padding).attr("height",f.height+a+2*ge().state.padding).attr("rx",ge().state.radius),t},"drawDescrState"),n1e=o((t,e,r)=>{let n=ge().state.padding,i=2*ge().state.padding,a=t.node().getBBox(),s=a.width,l=a.x,u=t.append("text").attr("x",0).attr("y",ge().state.titleShift).attr("font-size",ge().state.fontSize).attr("class","state-title").text(e.id),f=u.node().getBBox().width+i,d=Math.max(f,s);d===s&&(d=d+i);let p,m=t.node().getBBox();e.doc,p=l-n,f>s&&(p=(s-d)/2+n),Math.abs(l-m.x)<n&&f>s&&(p=l-(f-s)/2);let g=1-ge().state.textHeight;return t.insert("rect",":first-child").attr("x",p).attr("y",g).attr("class",r?"alt-composit":"composit").attr("width",d).attr("height",m.height+ge().state.textHeight+ge().state.titleShift+1).attr("rx","0"),u.attr("x",p+n),f<=s&&u.attr("x",l+(d-i)/2-f/2+n),t.insert("rect",":first-child").attr("x",p).attr("y",ge().state.titleShift-ge().state.textHeight-ge().state.padding).attr("width",d).attr("height",ge().state.textHeight*3).attr("rx",ge().state.radius),t.insert("rect",":first-child").attr("x",p).attr("y",ge().state.titleShift-ge().state.textHeight-ge().state.padding).attr("width",d).attr("height",m.height+3+2*ge().state.textHeight).attr("rx",ge().state.radius),t},"addTitleAndBox"),cJe=o(t=>(t.append("circle").attr("class","end-state-outer").attr("r",ge().state.sizeUnit+ge().state.miniPadding).attr("cx",ge().state.padding+ge().state.sizeUnit+ge().state.miniPadding).attr("cy",ge().state.padding+ge().state.sizeUnit+ge().state.miniPadding),t.append("circle").attr("class","end-state-inner").attr("r",ge().state.sizeUnit).attr("cx",ge().state.padding+ge().state.sizeUnit+2).attr("cy",ge().state.padding+ge().state.sizeUnit+2)),"drawEndState"),uJe=o((t,e)=>{let r=ge().state.forkWidth,n=ge().state.forkHeight;if(e.parentId){let i=r;r=n,n=i}return t.append("rect").style("stroke","black").style("fill","black").attr("width",r).attr("height",n).attr("x",ge().state.padding).attr("y",ge().state.padding)},"drawForkJoinState"),hJe=o((t,e,r,n)=>{let i=0,a=n.append("text");a.style("text-anchor","start"),a.attr("class","noteText");let s=t.replace(/\r\n/g,"<br/>");s=s.replace(/\n/g,"<br/>");let l=s.split(Je.lineBreakRegex),u=1.25*ge().state.noteMargin;for(let h of l){let f=h.trim();if(f.length>0){let d=a.append("tspan");if(d.text(f),u===0){let p=d.node().getBBox();u+=p.height}i+=u,d.attr("x",e+ge().state.noteMargin),d.attr("y",r+i+1.25*ge().state.noteMargin)}}return{textWidth:a.node().getBBox().width,textHeight:i}},"_drawLongText"),fJe=o((t,e)=>{e.attr("class","state-note");let r=e.append("rect").attr("x",0).attr("y",ge().state.padding),n=e.append("g"),{textWidth:i,textHeight:a}=hJe(t,0,0,n);return r.attr("height",a+2*ge().state.noteMargin),r.attr("width",i+ge().state.noteMargin*2),r},"drawNote"),iF=o(function(t,e){let r=e.id,n={id:r,label:e.id,width:0,height:0},i=t.append("g").attr("id",r).attr("class","stateGroup");e.type==="start"&&aJe(i),e.type==="end"&&cJe(i),(e.type==="fork"||e.type==="join")&&uJe(i,e),e.type==="note"&&fJe(e.note.text,i),e.type==="divider"&&sJe(i),e.type==="default"&&e.descriptions.length===0&&oJe(i,e),e.type==="default"&&e.descriptions.length>0&&lJe(i,e);let a=i.node().getBBox();return n.width=a.width+2*ge().state.padding,n.height=a.height+2*ge().state.padding,n},"drawState"),r1e=0,i1e=o(function(t,e,r){let n=o(function(u){switch(u){case al.relationType.AGGREGATION:return"aggregation";case al.relationType.EXTENSION:return"extension";case al.relationType.COMPOSITION:return"composition";case al.relationType.DEPENDENCY:return"dependency"}},"getRelationType");e.points=e.points.filter(u=>!Number.isNaN(u.y));let i=e.points,a=Cl().x(function(u){return u.x}).y(function(u){return u.y}).curve(Ro),s=t.append("path").attr("d",a(i)).attr("id","edge"+r1e).attr("class","transition"),l="";if(ge().state.arrowMarkerAbsolute&&(l=du(!0)),s.attr("marker-end","url("+l+"#"+n(al.relationType.DEPENDENCY)+"End)"),r.title!==void 0){let u=t.append("g").attr("class","stateLabel"),{x:h,y:f}=Ht.calcLabelPosition(e.points),d=Je.getRows(r.title),p=0,m=[],g=0,y=0;for(let b=0;b<=d.length;b++){let T=u.append("text").attr("text-anchor","middle").text(d[b]).attr("x",h).attr("y",f+p),S=T.node().getBBox();g=Math.max(g,S.width),y=Math.min(y,S.x),X.info(S.x,h,f+p),p===0&&(p=T.node().getBBox().height,X.info("Title height",p,f)),m.push(T)}let x=p*d.length;if(d.length>1){let b=(d.length-1)*p*.5;m.forEach((T,S)=>T.attr("y",f+S*p-b)),x=p*d.length}let v=u.node().getBBox();u.insert("rect",":first-child").attr("class","box").attr("x",h-g/2-ge().state.padding/2).attr("y",f-x/2-ge().state.padding/2-3.5).attr("width",g+ge().state.padding).attr("height",x+ge().state.padding),X.info(v)}r1e++},"drawEdge")});var xo,aF,dJe,pJe,mJe,gJe,s1e,o1e,l1e=N(()=>{"use strict";pr();iN();Wo();pt();dr();a1e();Xt();Ci();aF={},dJe=o(function(){},"setConf"),pJe=o(function(t){t.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"insertMarkers"),mJe=o(function(t,e,r,n){xo=ge().state;let i=ge().securityLevel,a;i==="sandbox"&&(a=ze("#i"+e));let s=i==="sandbox"?ze(a.nodes()[0].contentDocument.body):ze("body"),l=i==="sandbox"?a.nodes()[0].contentDocument:document;X.debug("Rendering diagram "+t);let u=s.select(`[id='${e}']`);pJe(u);let h=n.db.getRootDoc();s1e(h,u,void 0,!1,s,l,n);let f=xo.padding,d=u.node().getBBox(),p=d.width+f*2,m=d.height+f*2,g=p*1.75;fn(u,m,g,xo.useMaxWidth),u.attr("viewBox",`${d.x-xo.padding} ${d.y-xo.padding} `+p+" "+m)},"draw"),gJe=o(t=>t?t.length*xo.fontSizeFactor:1,"getLabelWidth"),s1e=o((t,e,r,n,i,a,s)=>{let l=new sn({compound:!0,multigraph:!0}),u,h=!0;for(u=0;u<t.length;u++)if(t[u].stmt==="relation"){h=!1;break}r?l.setGraph({rankdir:"LR",multigraph:!0,compound:!0,ranker:"tight-tree",ranksep:h?1:xo.edgeLengthFactor,nodeSep:h?1:50,isMultiGraph:!0}):l.setGraph({rankdir:"TB",multigraph:!0,compound:!0,ranksep:h?1:xo.edgeLengthFactor,nodeSep:h?1:50,ranker:"tight-tree",isMultiGraph:!0}),l.setDefaultEdgeLabel(function(){return{}});let f=s.db.getStates(),d=s.db.getRelations(),p=Object.keys(f),m=!0;for(let b of p){let T=f[b];r&&(T.parentId=r);let S;if(T.doc){let w=e.append("g").attr("id",T.id).attr("class","stateGroup");if(S=s1e(T.doc,w,T.id,!n,i,a,s),m){w=n1e(w,T,n);let E=w.node().getBBox();S.width=E.width,S.height=E.height+xo.padding/2,aF[T.id]={y:xo.compositTitleSize}}else{let E=w.node().getBBox();S.width=E.width,S.height=E.height}}else S=iF(e,T,l);if(T.note){let w={descriptions:[],id:T.id+"-note",note:T.note,type:"note"},E=iF(e,w,l);T.note.position==="left of"?(l.setNode(S.id+"-note",E),l.setNode(S.id,S)):(l.setNode(S.id,S),l.setNode(S.id+"-note",E)),l.setParent(S.id,S.id+"-group"),l.setParent(S.id+"-note",S.id+"-group")}else l.setNode(S.id,S)}X.debug("Count=",l.nodeCount(),l);let g=0;d.forEach(function(b){g++,X.debug("Setting edge",b),l.setEdge(b.id1,b.id2,{relation:b,width:gJe(b.title),height:xo.labelHeight*Je.getRows(b.title).length,labelpos:"c"},"id"+g)}),V2(l),X.debug("Graph after layout",l.nodes());let y=e.node();l.nodes().forEach(function(b){b!==void 0&&l.node(b)!==void 0?(X.warn("Node "+b+": "+JSON.stringify(l.node(b))),i.select("#"+y.id+" #"+b).attr("transform","translate("+(l.node(b).x-l.node(b).width/2)+","+(l.node(b).y+(aF[b]?aF[b].y:0)-l.node(b).height/2)+" )"),i.select("#"+y.id+" #"+b).attr("data-x-shift",l.node(b).x-l.node(b).width/2),a.querySelectorAll("#"+y.id+" #"+b+" .divider").forEach(S=>{let w=S.parentElement,E=0,_=0;w&&(w.parentElement&&(E=w.parentElement.getBBox().width),_=parseInt(w.getAttribute("data-x-shift"),10),Number.isNaN(_)&&(_=0)),S.setAttribute("x1",0-_+8),S.setAttribute("x2",E-_-8)})):X.debug("No Node "+b+": "+JSON.stringify(l.node(b)))});let x=y.getBBox();l.edges().forEach(function(b){b!==void 0&&l.edge(b)!==void 0&&(X.debug("Edge "+b.v+" -> "+b.w+": "+JSON.stringify(l.edge(b))),i1e(e,l.edge(b),l.edge(b).relation))}),x=y.getBBox();let v={id:r||"root",label:r||"root",width:0,height:0};return v.width=x.width+2*xo.padding,v.height=x.height+2*xo.padding,X.debug("Doc rendered",v,l),v},"renderDoc"),o1e={setConf:dJe,draw:mJe}});var c1e={};ur(c1e,{diagram:()=>yJe});var yJe,u1e=N(()=>{"use strict";zB();fC();nF();l1e();yJe={parser:rC,get db(){return new al(1)},renderer:o1e,styles:dC,init:o(t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")}});var d1e={};ur(d1e,{diagram:()=>TJe});var TJe,p1e=N(()=>{"use strict";zB();fC();nF();rF();TJe={parser:rC,get db(){return new al(2)},renderer:Jge,styles:dC,init:o(t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")}});var sF,y1e,v1e=N(()=>{"use strict";sF=function(){var t=o(function(d,p,m,g){for(m=m||{},g=d.length;g--;m[d[g]]=p);return m},"o"),e=[6,8,10,11,12,14,16,17,18],r=[1,9],n=[1,10],i=[1,11],a=[1,12],s=[1,13],l=[1,14],u={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:o(function(p,m,g,y,x,v,b){var T=v.length-1;switch(x){case 1:return v[T-1];case 2:this.$=[];break;case 3:v[T-1].push(v[T]),this.$=v[T-1];break;case 4:case 5:this.$=v[T];break;case 6:case 7:this.$=[];break;case 8:y.setDiagramTitle(v[T].substr(6)),this.$=v[T].substr(6);break;case 9:this.$=v[T].trim(),y.setAccTitle(this.$);break;case 10:case 11:this.$=v[T].trim(),y.setAccDescription(this.$);break;case 12:y.addSection(v[T].substr(8)),this.$=v[T].substr(8);break;case 13:y.addTask(v[T-1],v[T]),this.$="task";break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:r,12:n,14:i,16:a,17:s,18:l},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:15,11:r,12:n,14:i,16:a,17:s,18:l},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,16]},{15:[1,17]},t(e,[2,11]),t(e,[2,12]),{19:[1,18]},t(e,[2,4]),t(e,[2,9]),t(e,[2,10]),t(e,[2,13])],defaultActions:{},parseError:o(function(p,m){if(m.recoverable)this.trace(p);else{var g=new Error(p);throw g.hash=m,g}},"parseError"),parse:o(function(p){var m=this,g=[0],y=[],x=[null],v=[],b=this.table,T="",S=0,w=0,E=0,_=2,A=1,D=v.slice.call(arguments,1),O=Object.create(this.lexer),R={yy:{}};for(var k in this.yy)Object.prototype.hasOwnProperty.call(this.yy,k)&&(R.yy[k]=this.yy[k]);O.setInput(p,R.yy),R.yy.lexer=O,R.yy.parser=this,typeof O.yylloc>"u"&&(O.yylloc={});var L=O.yylloc;v.push(L);var C=O.options&&O.options.ranges;typeof R.yy.parseError=="function"?this.parseError=R.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function I(Q){g.length=g.length-2*Q,x.length=x.length-Q,v.length=v.length-Q}o(I,"popStack");function M(){var Q;return Q=y.pop()||O.lex()||A,typeof Q!="number"&&(Q instanceof Array&&(y=Q,Q=y.pop()),Q=m.symbols_[Q]||Q),Q}o(M,"lex");for(var P,B,F,G,$,U,K={},ne,j,le,Z;;){if(F=g[g.length-1],this.defaultActions[F]?G=this.defaultActions[F]:((P===null||typeof P>"u")&&(P=M()),G=b[F]&&b[F][P]),typeof G>"u"||!G.length||!G[0]){var ce="";Z=[];for(ne in b[F])this.terminals_[ne]&&ne>_&&Z.push("'"+this.terminals_[ne]+"'");O.showPosition?ce="Parse error on line "+(S+1)+`:
|
||
`+O.showPosition()+`
|
||
Expecting `+Z.join(", ")+", got '"+(this.terminals_[P]||P)+"'":ce="Parse error on line "+(S+1)+": Unexpected "+(P==A?"end of input":"'"+(this.terminals_[P]||P)+"'"),this.parseError(ce,{text:O.match,token:this.terminals_[P]||P,line:O.yylineno,loc:L,expected:Z})}if(G[0]instanceof Array&&G.length>1)throw new Error("Parse Error: multiple actions possible at state: "+F+", token: "+P);switch(G[0]){case 1:g.push(P),x.push(O.yytext),v.push(O.yylloc),g.push(G[1]),P=null,B?(P=B,B=null):(w=O.yyleng,T=O.yytext,S=O.yylineno,L=O.yylloc,E>0&&E--);break;case 2:if(j=this.productions_[G[1]][1],K.$=x[x.length-j],K._$={first_line:v[v.length-(j||1)].first_line,last_line:v[v.length-1].last_line,first_column:v[v.length-(j||1)].first_column,last_column:v[v.length-1].last_column},C&&(K._$.range=[v[v.length-(j||1)].range[0],v[v.length-1].range[1]]),U=this.performAction.apply(K,[T,w,S,R.yy,G[1],x,v].concat(D)),typeof U<"u")return U;j&&(g=g.slice(0,-1*j*2),x=x.slice(0,-1*j),v=v.slice(0,-1*j)),g.push(this.productions_[G[1]][0]),x.push(K.$),v.push(K._$),le=b[g[g.length-2]][g[g.length-1]],g.push(le);break;case 3:return!0}}return!0},"parse")},h=function(){var d={EOF:1,parseError:o(function(m,g){if(this.yy.parser)this.yy.parser.parseError(m,g);else throw new Error(m)},"parseError"),setInput:o(function(p,m){return this.yy=m||this.yy||{},this._input=p,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},"setInput"),input:o(function(){var p=this._input[0];this.yytext+=p,this.yyleng++,this.offset++,this.match+=p,this.matched+=p;var m=p.match(/(?:\r\n?|\n).*/g);return m?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),p},"input"),unput:o(function(p){var m=p.length,g=p.split(/(?:\r\n?|\n)/g);this._input=p+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-m),this.offset-=m;var y=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 x=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===y.length?this.yylloc.first_column:0)+y[y.length-g.length].length-g[0].length:this.yylloc.first_column-m},this.options.ranges&&(this.yylloc.range=[x[0],x[0]+this.yyleng-m]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(p){this.unput(this.match.slice(p))},"less"),pastInput:o(function(){var p=this.matched.substr(0,this.matched.length-this.match.length);return(p.length>20?"...":"")+p.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var p=this.match;return p.length<20&&(p+=this._input.substr(0,20-p.length)),(p.substr(0,20)+(p.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var p=this.pastInput(),m=new Array(p.length+1).join("-");return p+this.upcomingInput()+`
|
||
`+m+"^"},"showPosition"),test_match:o(function(p,m){var g,y,x;if(this.options.backtrack_lexer&&(x={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&&(x.yylloc.range=this.yylloc.range.slice(0))),y=p[0].match(/(?:\r\n?|\n).*/g),y&&(this.yylineno+=y.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:y?y[y.length-1].length-y[y.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+p[0].length},this.yytext+=p[0],this.match+=p[0],this.matches=p,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(p[0].length),this.matched+=p[0],g=this.performAction.call(this,this.yy,this,m,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),g)return g;if(this._backtrack){for(var v in x)this[v]=x[v];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var p,m,g,y;this._more||(this.yytext="",this.match="");for(var x=this._currentRules(),v=0;v<x.length;v++)if(g=this._input.match(this.rules[x[v]]),g&&(!m||g[0].length>m[0].length)){if(m=g,y=v,this.options.backtrack_lexer){if(p=this.test_match(g,x[v]),p!==!1)return p;if(this._backtrack){m=!1;continue}else return!1}else if(!this.options.flex)break}return m?(p=this.test_match(m,x[y]),p!==!1?p:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var m=this.next();return m||this.lex()},"lex"),begin:o(function(m){this.conditionStack.push(m)},"begin"),popState:o(function(){var m=this.conditionStack.length-1;return m>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(m){return m=this.conditionStack.length-1-Math.abs(m||0),m>=0?this.conditionStack[m]:"INITIAL"},"topState"),pushState:o(function(m){this.begin(m)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(m,g,y,x){var v=x;switch(y){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.begin("acc_descr"),14;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 18;case 16:return 19;case 17:return":";case 18:return 6;case 19:return"INVALID"}},"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:journey\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18,19],inclusive:!0}}};return d}();u.lexer=h;function f(){this.yy={}}return o(f,"Parser"),f.prototype=u,u.Parser=f,new f}();sF.parser=sF;y1e=sF});var oy,oF,S4,C4,SJe,CJe,AJe,_Je,DJe,LJe,RJe,x1e,NJe,lF,b1e=N(()=>{"use strict";Xt();ui();oy="",oF=[],S4=[],C4=[],SJe=o(function(){oF.length=0,S4.length=0,oy="",C4.length=0,wr()},"clear"),CJe=o(function(t){oy=t,oF.push(t)},"addSection"),AJe=o(function(){return oF},"getSections"),_Je=o(function(){let t=x1e(),e=100,r=0;for(;!t&&r<e;)t=x1e(),r++;return S4.push(...C4),S4},"getTasks"),DJe=o(function(){let t=[];return S4.forEach(r=>{r.people&&t.push(...r.people)}),[...new Set(t)].sort()},"updateActors"),LJe=o(function(t,e){let r=e.substr(1).split(":"),n=0,i=[];r.length===1?(n=Number(r[0]),i=[]):(n=Number(r[0]),i=r[1].split(","));let a=i.map(l=>l.trim()),s={section:oy,type:oy,people:a,task:t,score:n};C4.push(s)},"addTask"),RJe=o(function(t){let e={section:oy,type:oy,description:t,task:t,classes:[]};S4.push(e)},"addTaskOrg"),x1e=o(function(){let t=o(function(r){return C4[r].processed},"compileTask"),e=!0;for(let[r,n]of C4.entries())t(r),e=e&&n.processed;return e},"compileTasks"),NJe=o(function(){return DJe()},"getActors"),lF={getConfig:o(()=>ge().journey,"getConfig"),clear:SJe,setDiagramTitle:Or,getDiagramTitle:Rr,setAccTitle:Cr,getAccTitle:_r,setAccDescription:Dr,getAccDescription:Lr,addSection:CJe,getSections:AJe,getTasks:_Je,addTask:LJe,addTaskOrg:RJe,getActors:NJe}});var MJe,T1e,w1e=N(()=>{"use strict";mg();MJe=o(t=>`.label {
|
||
font-family: ${t.fontFamily};
|
||
color: ${t.textColor};
|
||
}
|
||
.mouth {
|
||
stroke: #666;
|
||
}
|
||
|
||
line {
|
||
stroke: ${t.textColor}
|
||
}
|
||
|
||
.legend {
|
||
fill: ${t.textColor};
|
||
font-family: ${t.fontFamily};
|
||
}
|
||
|
||
.label text {
|
||
fill: #333;
|
||
}
|
||
.label {
|
||
color: ${t.textColor}
|
||
}
|
||
|
||
.face {
|
||
${t.faceColor?`fill: ${t.faceColor}`:"fill: #FFF8DC"};
|
||
stroke: #999;
|
||
}
|
||
|
||
.node rect,
|
||
.node circle,
|
||
.node ellipse,
|
||
.node polygon,
|
||
.node path {
|
||
fill: ${t.mainBkg};
|
||
stroke: ${t.nodeBorder};
|
||
stroke-width: 1px;
|
||
}
|
||
|
||
.node .label {
|
||
text-align: center;
|
||
}
|
||
.node.clickable {
|
||
cursor: pointer;
|
||
}
|
||
|
||
.arrowheadPath {
|
||
fill: ${t.arrowheadColor};
|
||
}
|
||
|
||
.edgePath .path {
|
||
stroke: ${t.lineColor};
|
||
stroke-width: 1.5px;
|
||
}
|
||
|
||
.flowchart-link {
|
||
stroke: ${t.lineColor};
|
||
fill: none;
|
||
}
|
||
|
||
.edgeLabel {
|
||
background-color: ${t.edgeLabelBackground};
|
||
rect {
|
||
opacity: 0.5;
|
||
}
|
||
text-align: center;
|
||
}
|
||
|
||
.cluster rect {
|
||
}
|
||
|
||
.cluster text {
|
||
fill: ${t.titleColor};
|
||
}
|
||
|
||
div.mermaidTooltip {
|
||
position: absolute;
|
||
text-align: center;
|
||
max-width: 200px;
|
||
padding: 2px;
|
||
font-family: ${t.fontFamily};
|
||
font-size: 12px;
|
||
background: ${t.tertiaryColor};
|
||
border: 1px solid ${t.border2};
|
||
border-radius: 2px;
|
||
pointer-events: none;
|
||
z-index: 100;
|
||
}
|
||
|
||
.task-type-0, .section-type-0 {
|
||
${t.fillType0?`fill: ${t.fillType0}`:""};
|
||
}
|
||
.task-type-1, .section-type-1 {
|
||
${t.fillType0?`fill: ${t.fillType1}`:""};
|
||
}
|
||
.task-type-2, .section-type-2 {
|
||
${t.fillType0?`fill: ${t.fillType2}`:""};
|
||
}
|
||
.task-type-3, .section-type-3 {
|
||
${t.fillType0?`fill: ${t.fillType3}`:""};
|
||
}
|
||
.task-type-4, .section-type-4 {
|
||
${t.fillType0?`fill: ${t.fillType4}`:""};
|
||
}
|
||
.task-type-5, .section-type-5 {
|
||
${t.fillType0?`fill: ${t.fillType5}`:""};
|
||
}
|
||
.task-type-6, .section-type-6 {
|
||
${t.fillType0?`fill: ${t.fillType6}`:""};
|
||
}
|
||
.task-type-7, .section-type-7 {
|
||
${t.fillType0?`fill: ${t.fillType7}`:""};
|
||
}
|
||
|
||
.actor-0 {
|
||
${t.actor0?`fill: ${t.actor0}`:""};
|
||
}
|
||
.actor-1 {
|
||
${t.actor1?`fill: ${t.actor1}`:""};
|
||
}
|
||
.actor-2 {
|
||
${t.actor2?`fill: ${t.actor2}`:""};
|
||
}
|
||
.actor-3 {
|
||
${t.actor3?`fill: ${t.actor3}`:""};
|
||
}
|
||
.actor-4 {
|
||
${t.actor4?`fill: ${t.actor4}`:""};
|
||
}
|
||
.actor-5 {
|
||
${t.actor5?`fill: ${t.actor5}`:""};
|
||
}
|
||
${Fc()}
|
||
`,"getStyles"),T1e=MJe});var cF,IJe,E1e,S1e,OJe,PJe,k1e,BJe,FJe,C1e,$Je,ly,A1e=N(()=>{"use strict";pr();e2();cF=o(function(t,e){return Id(t,e)},"drawRect"),IJe=o(function(t,e){let n=t.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=t.append("g");i.append("circle").attr("cx",e.cx-15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",e.cx+15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function a(u){let h=Sl().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}o(a,"smile");function s(u){let h=Sl().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}o(s,"sad");function l(u){u.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return o(l,"ambivalent"),e.score>3?a(i):e.score<3?s(i):l(i),n},"drawFace"),E1e=o(function(t,e){let r=t.append("circle");return r.attr("cx",e.cx),r.attr("cy",e.cy),r.attr("class","actor-"+e.pos),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("r",e.r),r.class!==void 0&&r.attr("class",r.class),e.title!==void 0&&r.append("title").text(e.title),r},"drawCircle"),S1e=o(function(t,e){return JY(t,e)},"drawText"),OJe=o(function(t,e){function r(i,a,s,l,u){return i+","+a+" "+(i+s)+","+a+" "+(i+s)+","+(a+l-u)+" "+(i+s-u*1.2)+","+(a+l)+" "+i+","+(a+l)}o(r,"genPoints");let n=t.append("polygon");n.attr("points",r(e.x,e.y,50,20,7)),n.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,S1e(t,e)},"drawLabel"),PJe=o(function(t,e,r){let n=t.append("g"),i=ua();i.x=e.x,i.y=e.y,i.fill=e.fill,i.width=r.width*e.taskCount+r.diagramMarginX*(e.taskCount-1),i.height=r.height,i.class="journey-section section-type-"+e.num,i.rx=3,i.ry=3,cF(n,i),C1e(r)(e.text,n,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+e.num},r,e.colour)},"drawSection"),k1e=-1,BJe=o(function(t,e,r){let n=e.x+r.width/2,i=t.append("g");k1e++;let a=300+5*30;i.append("line").attr("id","task"+k1e).attr("x1",n).attr("y1",e.y).attr("x2",n).attr("y2",a).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),IJe(i,{cx:n,cy:300+(5-e.score)*30,score:e.score});let s=ua();s.x=e.x,s.y=e.y,s.fill=e.fill,s.width=r.width,s.height=r.height,s.class="task task-type-"+e.num,s.rx=3,s.ry=3,cF(i,s);let l=e.x+14;e.people.forEach(u=>{let h=e.actors[u].color,f={cx:l,cy:e.y,r:7,fill:h,stroke:"#000",title:u,pos:e.actors[u].position};E1e(i,f),l+=10}),C1e(r)(e.task,i,s.x,s.y,s.width,s.height,{class:"task"},r,e.colour)},"drawTask"),FJe=o(function(t,e){aT(t,e)},"drawBackgroundRect"),C1e=function(){function t(i,a,s,l,u,h,f,d){let p=a.append("text").attr("x",s+u/2).attr("y",l+h/2+5).style("font-color",d).style("text-anchor","middle").text(i);n(p,f)}o(t,"byText");function e(i,a,s,l,u,h,f,d,p){let{taskFontSize:m,taskFontFamily:g}=d,y=i.split(/<br\s*\/?>/gi);for(let x=0;x<y.length;x++){let v=x*m-m*(y.length-1)/2,b=a.append("text").attr("x",s+u/2).attr("y",l).attr("fill",p).style("text-anchor","middle").style("font-size",m).style("font-family",g);b.append("tspan").attr("x",s+u/2).attr("dy",v).text(y[x]),b.attr("y",l+h/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),n(b,f)}}o(e,"byTspan");function r(i,a,s,l,u,h,f,d){let p=a.append("switch"),g=p.append("foreignObject").attr("x",s).attr("y",l).attr("width",u).attr("height",h).attr("position","fixed").append("xhtml:div").style("display","table").style("height","100%").style("width","100%");g.append("div").attr("class","label").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(i),e(i,p,s,l,u,h,f,d),n(g,f)}o(r,"byFo");function n(i,a){for(let s in a)s in a&&i.attr(s,a[s])}return o(n,"_setTextAttrs"),function(i){return i.textPlacement==="fo"?r:i.textPlacement==="old"?t:e}}(),$Je=o(function(t){t.append("defs").append("marker").attr("id","arrowhead").attr("refX",5).attr("refY",2).attr("markerWidth",6).attr("markerHeight",4).attr("orient","auto").append("path").attr("d","M 0,0 V 4 L6,2 Z")},"initGraphics"),ly={drawRect:cF,drawCircle:E1e,drawSection:PJe,drawText:S1e,drawLabel:OJe,drawTask:BJe,drawBackgroundRect:FJe,initGraphics:$Je}});function zJe(t){let e=ge().journey,r=e.maxLabelWidth;pC=0;let n=60;Object.keys(ah).forEach(i=>{let a=ah[i].color,s={cx:20,cy:n,r:7,fill:a,stroke:"#000",pos:ah[i].position};ly.drawCircle(t,s);let l=t.append("text").attr("visibility","hidden").text(i),u=l.node().getBoundingClientRect().width;l.remove();let h=[];if(u<=r)h=[i];else{let f=i.split(" "),d="";l=t.append("text").attr("visibility","hidden"),f.forEach(p=>{let m=d?`${d} ${p}`:p;if(l.text(m),l.node().getBoundingClientRect().width>r){if(d&&h.push(d),d=p,l.text(p),l.node().getBoundingClientRect().width>r){let y="";for(let x of p)y+=x,l.text(y+"-"),l.node().getBoundingClientRect().width>r&&(h.push(y.slice(0,-1)+"-"),y=x);d=y}}else d=m}),d&&h.push(d),l.remove()}h.forEach((f,d)=>{let p={x:40,y:n+7+d*20,fill:"#666",text:f,textMargin:e.boxTextMargin??5},g=ly.drawText(t,p).node().getBoundingClientRect().width;g>pC&&g>e.leftMargin-g&&(pC=g)}),n+=Math.max(20,h.length*20)})}var GJe,ah,pC,Hl,Xf,VJe,sl,uF,_1e,UJe,hF,D1e=N(()=>{"use strict";pr();A1e();Xt();Ci();GJe=o(function(t){Object.keys(t).forEach(function(r){Hl[r]=t[r]})},"setConf"),ah={},pC=0;o(zJe,"drawActorLegend");Hl=ge().journey,Xf=0,VJe=o(function(t,e,r,n){let i=ge(),a=i.journey.titleColor,s=i.journey.titleFontSize,l=i.journey.titleFontFamily,u=i.securityLevel,h;u==="sandbox"&&(h=ze("#i"+e));let f=u==="sandbox"?ze(h.nodes()[0].contentDocument.body):ze("body");sl.init();let d=f.select("#"+e);ly.initGraphics(d);let p=n.db.getTasks(),m=n.db.getDiagramTitle(),g=n.db.getActors();for(let S in ah)delete ah[S];let y=0;g.forEach(S=>{ah[S]={color:Hl.actorColours[y%Hl.actorColours.length],position:y},y++}),zJe(d),Xf=Hl.leftMargin+pC,sl.insert(0,0,Xf,Object.keys(ah).length*50),UJe(d,p,0);let x=sl.getBounds();m&&d.append("text").text(m).attr("x",Xf).attr("font-size",s).attr("font-weight","bold").attr("y",25).attr("fill",a).attr("font-family",l);let v=x.stopy-x.starty+2*Hl.diagramMarginY,b=Xf+x.stopx+2*Hl.diagramMarginX;fn(d,v,b,Hl.useMaxWidth),d.append("line").attr("x1",Xf).attr("y1",Hl.height*4).attr("x2",b-Xf-4).attr("y2",Hl.height*4).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)");let T=m?70:0;d.attr("viewBox",`${x.startx} -25 ${b} ${v+T}`),d.attr("preserveAspectRatio","xMinYMin meet"),d.attr("height",v+T+25)},"draw"),sl={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:o(function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0},"init"),updateVal:o(function(t,e,r,n){t[e]===void 0?t[e]=r:t[e]=n(r,t[e])},"updateVal"),updateBounds:o(function(t,e,r,n){let i=ge().journey,a=this,s=0;function l(u){return o(function(f){s++;let d=a.sequenceItems.length-s+1;a.updateVal(f,"starty",e-d*i.boxMargin,Math.min),a.updateVal(f,"stopy",n+d*i.boxMargin,Math.max),a.updateVal(sl.data,"startx",t-d*i.boxMargin,Math.min),a.updateVal(sl.data,"stopx",r+d*i.boxMargin,Math.max),u!=="activation"&&(a.updateVal(f,"startx",t-d*i.boxMargin,Math.min),a.updateVal(f,"stopx",r+d*i.boxMargin,Math.max),a.updateVal(sl.data,"starty",e-d*i.boxMargin,Math.min),a.updateVal(sl.data,"stopy",n+d*i.boxMargin,Math.max))},"updateItemBounds")}o(l,"updateFn"),this.sequenceItems.forEach(l())},"updateBounds"),insert:o(function(t,e,r,n){let i=Math.min(t,r),a=Math.max(t,r),s=Math.min(e,n),l=Math.max(e,n);this.updateVal(sl.data,"startx",i,Math.min),this.updateVal(sl.data,"starty",s,Math.min),this.updateVal(sl.data,"stopx",a,Math.max),this.updateVal(sl.data,"stopy",l,Math.max),this.updateBounds(i,s,a,l)},"insert"),bumpVerticalPos:o(function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=this.verticalPos},"bumpVerticalPos"),getVerticalPos:o(function(){return this.verticalPos},"getVerticalPos"),getBounds:o(function(){return this.data},"getBounds")},uF=Hl.sectionFills,_1e=Hl.sectionColours,UJe=o(function(t,e,r){let n=ge().journey,i="",a=n.height*2+n.diagramMarginY,s=r+a,l=0,u="#CCC",h="black",f=0;for(let[d,p]of e.entries()){if(i!==p.section){u=uF[l%uF.length],f=l%uF.length,h=_1e[l%_1e.length];let g=0,y=p.section;for(let v=d;v<e.length&&e[v].section==y;v++)g=g+1;let x={x:d*n.taskMargin+d*n.width+Xf,y:50,text:p.section,fill:u,num:f,colour:h,taskCount:g};ly.drawSection(t,x,n),i=p.section,l++}let m=p.people.reduce((g,y)=>(ah[y]&&(g[y]=ah[y]),g),{});p.x=d*n.taskMargin+d*n.width+Xf,p.y=s,p.width=n.diagramMarginX,p.height=n.diagramMarginY,p.colour=h,p.fill=u,p.num=f,p.actors=m,ly.drawTask(t,p,n),sl.insert(p.x,p.y,p.x+p.width+n.taskMargin,300+5*30)}},"drawTasks"),hF={setConf:GJe,draw:VJe}});var L1e={};ur(L1e,{diagram:()=>HJe});var HJe,R1e=N(()=>{"use strict";v1e();b1e();w1e();D1e();HJe={parser:y1e,db:lF,renderer:hF,styles:T1e,init:o(t=>{hF.setConf(t.journey),lF.clear()},"init")}});var dF,F1e,$1e=N(()=>{"use strict";dF=function(){var t=o(function(p,m,g,y){for(g=g||{},y=p.length;y--;g[p[y]]=m);return g},"o"),e=[6,8,10,11,12,14,16,17,20,21],r=[1,9],n=[1,10],i=[1,11],a=[1,12],s=[1,13],l=[1,16],u=[1,17],h={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,timeline:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,period_statement:18,event_statement:19,period:20,event:21,$accept:0,$end:1},terminals_:{2:"error",4:"timeline",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",20:"period",21:"event"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[18,1],[19,1]],performAction:o(function(m,g,y,x,v,b,T){var S=b.length-1;switch(v){case 1:return b[S-1];case 2:this.$=[];break;case 3:b[S-1].push(b[S]),this.$=b[S-1];break;case 4:case 5:this.$=b[S];break;case 6:case 7:this.$=[];break;case 8:x.getCommonDb().setDiagramTitle(b[S].substr(6)),this.$=b[S].substr(6);break;case 9:this.$=b[S].trim(),x.getCommonDb().setAccTitle(this.$);break;case 10:case 11:this.$=b[S].trim(),x.getCommonDb().setAccDescription(this.$);break;case 12:x.addSection(b[S].substr(8)),this.$=b[S].substr(8);break;case 15:x.addTask(b[S],0,""),this.$=b[S];break;case 16:x.addEvent(b[S].substr(2)),this.$=b[S];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:r,12:n,14:i,16:a,17:s,18:14,19:15,20:l,21:u},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:18,11:r,12:n,14:i,16:a,17:s,18:14,19:15,20:l,21:u},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,19]},{15:[1,20]},t(e,[2,11]),t(e,[2,12]),t(e,[2,13]),t(e,[2,14]),t(e,[2,15]),t(e,[2,16]),t(e,[2,4]),t(e,[2,9]),t(e,[2,10])],defaultActions:{},parseError:o(function(m,g){if(g.recoverable)this.trace(m);else{var y=new Error(m);throw y.hash=g,y}},"parseError"),parse:o(function(m){var g=this,y=[0],x=[],v=[null],b=[],T=this.table,S="",w=0,E=0,_=0,A=2,D=1,O=b.slice.call(arguments,1),R=Object.create(this.lexer),k={yy:{}};for(var L in this.yy)Object.prototype.hasOwnProperty.call(this.yy,L)&&(k.yy[L]=this.yy[L]);R.setInput(m,k.yy),k.yy.lexer=R,k.yy.parser=this,typeof R.yylloc>"u"&&(R.yylloc={});var C=R.yylloc;b.push(C);var I=R.options&&R.options.ranges;typeof k.yy.parseError=="function"?this.parseError=k.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function M(ee){y.length=y.length-2*ee,v.length=v.length-ee,b.length=b.length-ee}o(M,"popStack");function P(){var ee;return ee=x.pop()||R.lex()||D,typeof ee!="number"&&(ee instanceof Array&&(x=ee,ee=x.pop()),ee=g.symbols_[ee]||ee),ee}o(P,"lex");for(var B,F,G,$,U,K,ne={},j,le,Z,ce;;){if(G=y[y.length-1],this.defaultActions[G]?$=this.defaultActions[G]:((B===null||typeof B>"u")&&(B=P()),$=T[G]&&T[G][B]),typeof $>"u"||!$.length||!$[0]){var Q="";ce=[];for(j in T[G])this.terminals_[j]&&j>A&&ce.push("'"+this.terminals_[j]+"'");R.showPosition?Q="Parse error on line "+(w+1)+`:
|
||
`+R.showPosition()+`
|
||
Expecting `+ce.join(", ")+", got '"+(this.terminals_[B]||B)+"'":Q="Parse error on line "+(w+1)+": Unexpected "+(B==D?"end of input":"'"+(this.terminals_[B]||B)+"'"),this.parseError(Q,{text:R.match,token:this.terminals_[B]||B,line:R.yylineno,loc:C,expected:ce})}if($[0]instanceof Array&&$.length>1)throw new Error("Parse Error: multiple actions possible at state: "+G+", token: "+B);switch($[0]){case 1:y.push(B),v.push(R.yytext),b.push(R.yylloc),y.push($[1]),B=null,F?(B=F,F=null):(E=R.yyleng,S=R.yytext,w=R.yylineno,C=R.yylloc,_>0&&_--);break;case 2:if(le=this.productions_[$[1]][1],ne.$=v[v.length-le],ne._$={first_line:b[b.length-(le||1)].first_line,last_line:b[b.length-1].last_line,first_column:b[b.length-(le||1)].first_column,last_column:b[b.length-1].last_column},I&&(ne._$.range=[b[b.length-(le||1)].range[0],b[b.length-1].range[1]]),K=this.performAction.apply(ne,[S,E,w,k.yy,$[1],v,b].concat(O)),typeof K<"u")return K;le&&(y=y.slice(0,-1*le*2),v=v.slice(0,-1*le),b=b.slice(0,-1*le)),y.push(this.productions_[$[1]][0]),v.push(ne.$),b.push(ne._$),Z=T[y[y.length-2]][y[y.length-1]],y.push(Z);break;case 3:return!0}}return!0},"parse")},f=function(){var p={EOF:1,parseError:o(function(g,y){if(this.yy.parser)this.yy.parser.parseError(g,y);else throw new Error(g)},"parseError"),setInput:o(function(m,g){return this.yy=g||this.yy||{},this._input=m,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},"setInput"),input:o(function(){var m=this._input[0];this.yytext+=m,this.yyleng++,this.offset++,this.match+=m,this.matched+=m;var g=m.match(/(?:\r\n?|\n).*/g);return g?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),m},"input"),unput:o(function(m){var g=m.length,y=m.split(/(?:\r\n?|\n)/g);this._input=m+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-g),this.offset-=g;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),y.length-1&&(this.yylineno-=y.length-1);var v=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:y?(y.length===x.length?this.yylloc.first_column:0)+x[x.length-y.length].length-y[0].length:this.yylloc.first_column-g},this.options.ranges&&(this.yylloc.range=[v[0],v[0]+this.yyleng-g]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(m){this.unput(this.match.slice(m))},"less"),pastInput:o(function(){var m=this.matched.substr(0,this.matched.length-this.match.length);return(m.length>20?"...":"")+m.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var m=this.match;return m.length<20&&(m+=this._input.substr(0,20-m.length)),(m.substr(0,20)+(m.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var m=this.pastInput(),g=new Array(m.length+1).join("-");return m+this.upcomingInput()+`
|
||
`+g+"^"},"showPosition"),test_match:o(function(m,g){var y,x,v;if(this.options.backtrack_lexer&&(v={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&&(v.yylloc.range=this.yylloc.range.slice(0))),x=m[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+m[0].length},this.yytext+=m[0],this.match+=m[0],this.matches=m,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(m[0].length),this.matched+=m[0],y=this.performAction.call(this,this.yy,this,g,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),y)return y;if(this._backtrack){for(var b in v)this[b]=v[b];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var m,g,y,x;this._more||(this.yytext="",this.match="");for(var v=this._currentRules(),b=0;b<v.length;b++)if(y=this._input.match(this.rules[v[b]]),y&&(!g||y[0].length>g[0].length)){if(g=y,x=b,this.options.backtrack_lexer){if(m=this.test_match(y,v[b]),m!==!1)return m;if(this._backtrack){g=!1;continue}else return!1}else if(!this.options.flex)break}return g?(m=this.test_match(g,v[x]),m!==!1?m:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var g=this.next();return g||this.lex()},"lex"),begin:o(function(g){this.conditionStack.push(g)},"begin"),popState:o(function(){var g=this.conditionStack.length-1;return g>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(g){return g=this.conditionStack.length-1-Math.abs(g||0),g>=0?this.conditionStack[g]:"INITIAL"},"topState"),pushState:o(function(g){this.begin(g)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(g,y,x,v){var b=v;switch(x){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.begin("acc_descr"),14;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 21;case 16:return 20;case 17:return 6;case 18:return"INVALID"}},"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:timeline\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^:\n]+)/i,/^(?::\s(?:[^:\n]|:(?!\s))+)/i,/^(?:[^#:\n]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18],inclusive:!0}}};return p}();h.lexer=f;function d(){this.yy={}}return o(d,"Parser"),d.prototype=h,h.Parser=d,new d}();dF.parser=dF;F1e=dF});var mF={};ur(mF,{addEvent:()=>X1e,addSection:()=>H1e,addTask:()=>Y1e,addTaskOrg:()=>j1e,clear:()=>U1e,default:()=>JJe,getCommonDb:()=>V1e,getSections:()=>W1e,getTasks:()=>q1e});var cy,z1e,pF,mC,uy,V1e,U1e,H1e,W1e,q1e,Y1e,X1e,j1e,G1e,JJe,K1e=N(()=>{"use strict";ui();cy="",z1e=0,pF=[],mC=[],uy=[],V1e=o(()=>ev,"getCommonDb"),U1e=o(function(){pF.length=0,mC.length=0,cy="",uy.length=0,wr()},"clear"),H1e=o(function(t){cy=t,pF.push(t)},"addSection"),W1e=o(function(){return pF},"getSections"),q1e=o(function(){let t=G1e(),e=100,r=0;for(;!t&&r<e;)t=G1e(),r++;return mC.push(...uy),mC},"getTasks"),Y1e=o(function(t,e,r){let n={id:z1e++,section:cy,type:cy,task:t,score:e||0,events:r?[r]:[]};uy.push(n)},"addTask"),X1e=o(function(t){uy.find(r=>r.id===z1e-1).events.push(t)},"addEvent"),j1e=o(function(t){let e={section:cy,type:cy,description:t,task:t,classes:[]};mC.push(e)},"addTaskOrg"),G1e=o(function(){let t=o(function(r){return uy[r].processed},"compileTask"),e=!0;for(let[r,n]of uy.entries())t(r),e=e&&n.processed;return e},"compileTasks"),JJe={clear:U1e,getCommonDb:V1e,addSection:H1e,getSections:W1e,getTasks:q1e,addTask:Y1e,addTaskOrg:j1e,addEvent:X1e}});function eye(t,e){t.each(function(){var r=ze(this),n=r.text().split(/(\s+|<br>)/).reverse(),i,a=[],s=1.1,l=r.attr("y"),u=parseFloat(r.attr("dy")),h=r.text(null).append("tspan").attr("x",0).attr("y",l).attr("dy",u+"em");for(let f=0;f<n.length;f++)i=n[n.length-1-f],a.push(i),h.text(a.join(" ").trim()),(h.node().getComputedTextLength()>e||i==="<br>")&&(a.pop(),h.text(a.join(" ").trim()),i==="<br>"?a=[""]:a=[i],h=r.append("tspan").attr("x",0).attr("y",l).attr("dy",s+"em").text(i))})}var eet,gC,tet,ret,Z1e,net,iet,Q1e,aet,set,oet,gF,J1e,cet,uet,het,fet,jf,tye=N(()=>{"use strict";pr();eet=12,gC=o(function(t,e){let r=t.append("rect");return r.attr("x",e.x),r.attr("y",e.y),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("width",e.width),r.attr("height",e.height),r.attr("rx",e.rx),r.attr("ry",e.ry),e.class!==void 0&&r.attr("class",e.class),r},"drawRect"),tet=o(function(t,e){let n=t.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=t.append("g");i.append("circle").attr("cx",e.cx-15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",e.cx+15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function a(u){let h=Sl().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}o(a,"smile");function s(u){let h=Sl().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);u.append("path").attr("class","mouth").attr("d",h).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}o(s,"sad");function l(u){u.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return o(l,"ambivalent"),e.score>3?a(i):e.score<3?s(i):l(i),n},"drawFace"),ret=o(function(t,e){let r=t.append("circle");return r.attr("cx",e.cx),r.attr("cy",e.cy),r.attr("class","actor-"+e.pos),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("r",e.r),r.class!==void 0&&r.attr("class",r.class),e.title!==void 0&&r.append("title").text(e.title),r},"drawCircle"),Z1e=o(function(t,e){let r=e.text.replace(/<br\s*\/?>/gi," "),n=t.append("text");n.attr("x",e.x),n.attr("y",e.y),n.attr("class","legend"),n.style("text-anchor",e.anchor),e.class!==void 0&&n.attr("class",e.class);let i=n.append("tspan");return i.attr("x",e.x+e.textMargin*2),i.text(r),n},"drawText"),net=o(function(t,e){function r(i,a,s,l,u){return i+","+a+" "+(i+s)+","+a+" "+(i+s)+","+(a+l-u)+" "+(i+s-u*1.2)+","+(a+l)+" "+i+","+(a+l)}o(r,"genPoints");let n=t.append("polygon");n.attr("points",r(e.x,e.y,50,20,7)),n.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,Z1e(t,e)},"drawLabel"),iet=o(function(t,e,r){let n=t.append("g"),i=gF();i.x=e.x,i.y=e.y,i.fill=e.fill,i.width=r.width,i.height=r.height,i.class="journey-section section-type-"+e.num,i.rx=3,i.ry=3,gC(n,i),J1e(r)(e.text,n,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+e.num},r,e.colour)},"drawSection"),Q1e=-1,aet=o(function(t,e,r){let n=e.x+r.width/2,i=t.append("g");Q1e++;let a=300+5*30;i.append("line").attr("id","task"+Q1e).attr("x1",n).attr("y1",e.y).attr("x2",n).attr("y2",a).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),tet(i,{cx:n,cy:300+(5-e.score)*30,score:e.score});let s=gF();s.x=e.x,s.y=e.y,s.fill=e.fill,s.width=r.width,s.height=r.height,s.class="task task-type-"+e.num,s.rx=3,s.ry=3,gC(i,s),J1e(r)(e.task,i,s.x,s.y,s.width,s.height,{class:"task"},r,e.colour)},"drawTask"),set=o(function(t,e){gC(t,{x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,class:"rect"}).lower()},"drawBackgroundRect"),oet=o(function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},"getTextObj"),gF=o(function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),J1e=function(){function t(i,a,s,l,u,h,f,d){let p=a.append("text").attr("x",s+u/2).attr("y",l+h/2+5).style("font-color",d).style("text-anchor","middle").text(i);n(p,f)}o(t,"byText");function e(i,a,s,l,u,h,f,d,p){let{taskFontSize:m,taskFontFamily:g}=d,y=i.split(/<br\s*\/?>/gi);for(let x=0;x<y.length;x++){let v=x*m-m*(y.length-1)/2,b=a.append("text").attr("x",s+u/2).attr("y",l).attr("fill",p).style("text-anchor","middle").style("font-size",m).style("font-family",g);b.append("tspan").attr("x",s+u/2).attr("dy",v).text(y[x]),b.attr("y",l+h/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),n(b,f)}}o(e,"byTspan");function r(i,a,s,l,u,h,f,d){let p=a.append("switch"),g=p.append("foreignObject").attr("x",s).attr("y",l).attr("width",u).attr("height",h).attr("position","fixed").append("xhtml:div").style("display","table").style("height","100%").style("width","100%");g.append("div").attr("class","label").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(i),e(i,p,s,l,u,h,f,d),n(g,f)}o(r,"byFo");function n(i,a){for(let s in a)s in a&&i.attr(s,a[s])}return o(n,"_setTextAttrs"),function(i){return i.textPlacement==="fo"?r:i.textPlacement==="old"?t:e}}(),cet=o(function(t){t.append("defs").append("marker").attr("id","arrowhead").attr("refX",5).attr("refY",2).attr("markerWidth",6).attr("markerHeight",4).attr("orient","auto").append("path").attr("d","M 0,0 V 4 L6,2 Z")},"initGraphics");o(eye,"wrap");uet=o(function(t,e,r,n){let i=r%eet-1,a=t.append("g");e.section=i,a.attr("class",(e.class?e.class+" ":"")+"timeline-node "+("section-"+i));let s=a.append("g"),l=a.append("g"),h=l.append("text").text(e.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(eye,e.width).node().getBBox(),f=n.fontSize?.replace?n.fontSize.replace("px",""):n.fontSize;return e.height=h.height+f*1.1*.5+e.padding,e.height=Math.max(e.height,e.maxHeight),e.width=e.width+2*e.padding,l.attr("transform","translate("+e.width/2+", "+e.padding/2+")"),fet(s,e,i,n),e},"drawNode"),het=o(function(t,e,r){let n=t.append("g"),a=n.append("text").text(e.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(eye,e.width).node().getBBox(),s=r.fontSize?.replace?r.fontSize.replace("px",""):r.fontSize;return n.remove(),a.height+s*1.1*.5+e.padding},"getVirtualNodeHeight"),fet=o(function(t,e,r){t.append("path").attr("id","node-"+e.id).attr("class","node-bkg node-"+e.type).attr("d",`M0 ${e.height-5} v${-e.height+2*5} q0,-5 5,-5 h${e.width-2*5} q5,0 5,5 v${e.height-5} H0 Z`),t.append("line").attr("class","node-line-"+r).attr("x1",0).attr("y1",e.height).attr("x2",e.width).attr("y2",e.height)},"defaultBkg"),jf={drawRect:gC,drawCircle:ret,drawSection:iet,drawText:Z1e,drawLabel:net,drawTask:aet,drawBackgroundRect:set,getTextObj:oet,getNoteRect:gF,initGraphics:cet,drawNode:uet,getVirtualNodeHeight:het}});var det,rye,pet,nye,iye=N(()=>{"use strict";pr();tye();pt();Xt();Ci();det=o(function(t,e,r,n){let i=ge(),a=i.timeline?.leftMargin??50;X.debug("timeline",n.db);let s=i.securityLevel,l;s==="sandbox"&&(l=ze("#i"+e));let h=(s==="sandbox"?ze(l.nodes()[0].contentDocument.body):ze("body")).select("#"+e);h.append("g");let f=n.db.getTasks(),d=n.db.getCommonDb().getDiagramTitle();X.debug("task",f),jf.initGraphics(h);let p=n.db.getSections();X.debug("sections",p);let m=0,g=0,y=0,x=0,v=50+a,b=50;x=50;let T=0,S=!0;p.forEach(function(D){let O={number:T,descr:D,section:T,width:150,padding:20,maxHeight:m},R=jf.getVirtualNodeHeight(h,O,i);X.debug("sectionHeight before draw",R),m=Math.max(m,R+20)});let w=0,E=0;X.debug("tasks.length",f.length);for(let[D,O]of f.entries()){let R={number:D,descr:O,section:O.section,width:150,padding:20,maxHeight:g},k=jf.getVirtualNodeHeight(h,R,i);X.debug("taskHeight before draw",k),g=Math.max(g,k+20),w=Math.max(w,O.events.length);let L=0;for(let C of O.events){let I={descr:C,section:O.section,number:O.section,width:150,padding:20,maxHeight:50};L+=jf.getVirtualNodeHeight(h,I,i)}O.events.length>0&&(L+=(O.events.length-1)*10),E=Math.max(E,L)}X.debug("maxSectionHeight before draw",m),X.debug("maxTaskHeight before draw",g),p&&p.length>0?p.forEach(D=>{let O=f.filter(C=>C.section===D),R={number:T,descr:D,section:T,width:200*Math.max(O.length,1)-50,padding:20,maxHeight:m};X.debug("sectionNode",R);let k=h.append("g"),L=jf.drawNode(k,R,T,i);X.debug("sectionNode output",L),k.attr("transform",`translate(${v}, ${x})`),b+=m+50,O.length>0&&rye(h,O,T,v,b,g,i,w,E,m,!1),v+=200*Math.max(O.length,1),b=x,T++}):(S=!1,rye(h,f,T,v,b,g,i,w,E,m,!0));let _=h.node().getBBox();X.debug("bounds",_),d&&h.append("text").text(d).attr("x",_.width/2-a).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),y=S?m+g+150:g+100,h.append("g").attr("class","lineWrapper").append("line").attr("x1",a).attr("y1",y).attr("x2",_.width+3*a).attr("y2",y).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),nc(void 0,h,i.timeline?.padding??50,i.timeline?.useMaxWidth??!1)},"draw"),rye=o(function(t,e,r,n,i,a,s,l,u,h,f){for(let d of e){let p={descr:d.task,section:r,number:r,width:150,padding:20,maxHeight:a};X.debug("taskNode",p);let m=t.append("g").attr("class","taskWrapper"),y=jf.drawNode(m,p,r,s).height;if(X.debug("taskHeight after draw",y),m.attr("transform",`translate(${n}, ${i})`),a=Math.max(a,y),d.events){let x=t.append("g").attr("class","lineWrapper"),v=a;i+=100,v=v+pet(t,d.events,r,n,i,s),i-=100,x.append("line").attr("x1",n+190/2).attr("y1",i+a).attr("x2",n+190/2).attr("y2",i+a+100+u+100).attr("stroke-width",2).attr("stroke","black").attr("marker-end","url(#arrowhead)").attr("stroke-dasharray","5,5")}n=n+200,f&&!s.timeline?.disableMulticolor&&r++}i=i-10},"drawTasks"),pet=o(function(t,e,r,n,i,a){let s=0,l=i;i=i+100;for(let u of e){let h={descr:u,section:r,number:r,width:150,padding:20,maxHeight:50};X.debug("eventNode",h);let f=t.append("g").attr("class","eventWrapper"),p=jf.drawNode(f,h,r,a).height;s=s+p,f.attr("transform",`translate(${n}, ${i})`),i=i+10+p}return i=l,s},"drawEvents"),nye={setConf:o(()=>{},"setConf"),draw:det}});var met,get,aye,sye=N(()=>{"use strict";Qs();met=o(t=>{let e="";for(let r=0;r<t.THEME_COLOR_LIMIT;r++)t["lineColor"+r]=t["lineColor"+r]||t["cScaleInv"+r],sa(t["lineColor"+r])?t["lineColor"+r]=Lt(t["lineColor"+r],20):t["lineColor"+r]=Ot(t["lineColor"+r],20);for(let r=0;r<t.THEME_COLOR_LIMIT;r++){let n=""+(17-3*r);e+=`
|
||
.section-${r-1} rect, .section-${r-1} path, .section-${r-1} circle, .section-${r-1} path {
|
||
fill: ${t["cScale"+r]};
|
||
}
|
||
.section-${r-1} text {
|
||
fill: ${t["cScaleLabel"+r]};
|
||
}
|
||
.node-icon-${r-1} {
|
||
font-size: 40px;
|
||
color: ${t["cScaleLabel"+r]};
|
||
}
|
||
.section-edge-${r-1}{
|
||
stroke: ${t["cScale"+r]};
|
||
}
|
||
.edge-depth-${r-1}{
|
||
stroke-width: ${n};
|
||
}
|
||
.section-${r-1} line {
|
||
stroke: ${t["cScaleInv"+r]} ;
|
||
stroke-width: 3;
|
||
}
|
||
|
||
.lineWrapper line{
|
||
stroke: ${t["cScaleLabel"+r]} ;
|
||
}
|
||
|
||
.disabled, .disabled circle, .disabled text {
|
||
fill: lightgray;
|
||
}
|
||
.disabled text {
|
||
fill: #efefef;
|
||
}
|
||
`}return e},"genSections"),get=o(t=>`
|
||
.edge {
|
||
stroke-width: 3;
|
||
}
|
||
${met(t)}
|
||
.section-root rect, .section-root path, .section-root circle {
|
||
fill: ${t.git0};
|
||
}
|
||
.section-root text {
|
||
fill: ${t.gitBranchLabel0};
|
||
}
|
||
.icon-container {
|
||
height:100%;
|
||
display: flex;
|
||
justify-content: center;
|
||
align-items: center;
|
||
}
|
||
.edge {
|
||
fill: none;
|
||
}
|
||
.eventWrapper {
|
||
filter: brightness(120%);
|
||
}
|
||
`,"getStyles"),aye=get});var oye={};ur(oye,{diagram:()=>yet});var yet,lye=N(()=>{"use strict";$1e();K1e();iye();sye();yet={db:mF,renderer:nye,parser:F1e,styles:aye}});var yF,hye,fye=N(()=>{"use strict";yF=function(){var t=o(function(S,w,E,_){for(E=E||{},_=S.length;_--;E[S[_]]=w);return E},"o"),e=[1,4],r=[1,13],n=[1,12],i=[1,15],a=[1,16],s=[1,20],l=[1,19],u=[6,7,8],h=[1,26],f=[1,24],d=[1,25],p=[6,7,11],m=[1,6,13,15,16,19,22],g=[1,33],y=[1,34],x=[1,6,7,11,13,15,16,19,22],v={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,MINDMAP:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,ICON:15,CLASS:16,nodeWithId:17,nodeWithoutId:18,NODE_DSTART:19,NODE_DESCR:20,NODE_DEND:21,NODE_ID:22,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"MINDMAP",11:"EOF",13:"SPACELIST",15:"ICON",16:"CLASS",19:"NODE_DSTART",20:"NODE_DESCR",21:"NODE_DEND",22:"NODE_ID"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[18,3],[17,1],[17,4]],performAction:o(function(w,E,_,A,D,O,R){var k=O.length-1;switch(D){case 6:case 7:return A;case 8:A.getLogger().trace("Stop NL ");break;case 9:A.getLogger().trace("Stop EOF ");break;case 11:A.getLogger().trace("Stop NL2 ");break;case 12:A.getLogger().trace("Stop EOF2 ");break;case 15:A.getLogger().info("Node: ",O[k].id),A.addNode(O[k-1].length,O[k].id,O[k].descr,O[k].type);break;case 16:A.getLogger().trace("Icon: ",O[k]),A.decorateNode({icon:O[k]});break;case 17:case 21:A.decorateNode({class:O[k]});break;case 18:A.getLogger().trace("SPACELIST");break;case 19:A.getLogger().trace("Node: ",O[k].id),A.addNode(0,O[k].id,O[k].descr,O[k].type);break;case 20:A.decorateNode({icon:O[k]});break;case 25:A.getLogger().trace("node found ..",O[k-2]),this.$={id:O[k-1],descr:O[k-1],type:A.getType(O[k-2],O[k])};break;case 26:this.$={id:O[k],descr:O[k],type:A.nodeType.DEFAULT};break;case 27:A.getLogger().trace("node found ..",O[k-3]),this.$={id:O[k-3],descr:O[k-1],type:A.getType(O[k-2],O[k])};break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:e},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:e},{6:r,7:[1,10],9:9,12:11,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},t(u,[2,3]),{1:[2,2]},t(u,[2,4]),t(u,[2,5]),{1:[2,6],6:r,12:21,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},{6:r,9:22,12:11,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},{6:h,7:f,10:23,11:d},t(p,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:s,22:l}),t(p,[2,18]),t(p,[2,19]),t(p,[2,20]),t(p,[2,21]),t(p,[2,23]),t(p,[2,24]),t(p,[2,26],{19:[1,30]}),{20:[1,31]},{6:h,7:f,10:32,11:d},{1:[2,7],6:r,12:21,13:n,14:14,15:i,16:a,17:17,18:18,19:s,22:l},t(m,[2,14],{7:g,11:y}),t(x,[2,8]),t(x,[2,9]),t(x,[2,10]),t(p,[2,15]),t(p,[2,16]),t(p,[2,17]),{20:[1,35]},{21:[1,36]},t(m,[2,13],{7:g,11:y}),t(x,[2,11]),t(x,[2,12]),{21:[1,37]},t(p,[2,25]),t(p,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:o(function(w,E){if(E.recoverable)this.trace(w);else{var _=new Error(w);throw _.hash=E,_}},"parseError"),parse:o(function(w){var E=this,_=[0],A=[],D=[null],O=[],R=this.table,k="",L=0,C=0,I=0,M=2,P=1,B=O.slice.call(arguments,1),F=Object.create(this.lexer),G={yy:{}};for(var $ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,$)&&(G.yy[$]=this.yy[$]);F.setInput(w,G.yy),G.yy.lexer=F,G.yy.parser=this,typeof F.yylloc>"u"&&(F.yylloc={});var U=F.yylloc;O.push(U);var K=F.options&&F.options.ranges;typeof G.yy.parseError=="function"?this.parseError=G.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ne(W){_.length=_.length-2*W,D.length=D.length-W,O.length=O.length-W}o(ne,"popStack");function j(){var W;return W=A.pop()||F.lex()||P,typeof W!="number"&&(W instanceof Array&&(A=W,W=A.pop()),W=E.symbols_[W]||W),W}o(j,"lex");for(var le,Z,ce,Q,ee,te,re={},he,J,ye,se;;){if(ce=_[_.length-1],this.defaultActions[ce]?Q=this.defaultActions[ce]:((le===null||typeof le>"u")&&(le=j()),Q=R[ce]&&R[ce][le]),typeof Q>"u"||!Q.length||!Q[0]){var Se="";se=[];for(he in R[ce])this.terminals_[he]&&he>M&&se.push("'"+this.terminals_[he]+"'");F.showPosition?Se="Parse error on line "+(L+1)+`:
|
||
`+F.showPosition()+`
|
||
Expecting `+se.join(", ")+", got '"+(this.terminals_[le]||le)+"'":Se="Parse error on line "+(L+1)+": Unexpected "+(le==P?"end of input":"'"+(this.terminals_[le]||le)+"'"),this.parseError(Se,{text:F.match,token:this.terminals_[le]||le,line:F.yylineno,loc:U,expected:se})}if(Q[0]instanceof Array&&Q.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ce+", token: "+le);switch(Q[0]){case 1:_.push(le),D.push(F.yytext),O.push(F.yylloc),_.push(Q[1]),le=null,Z?(le=Z,Z=null):(C=F.yyleng,k=F.yytext,L=F.yylineno,U=F.yylloc,I>0&&I--);break;case 2:if(J=this.productions_[Q[1]][1],re.$=D[D.length-J],re._$={first_line:O[O.length-(J||1)].first_line,last_line:O[O.length-1].last_line,first_column:O[O.length-(J||1)].first_column,last_column:O[O.length-1].last_column},K&&(re._$.range=[O[O.length-(J||1)].range[0],O[O.length-1].range[1]]),te=this.performAction.apply(re,[k,C,L,G.yy,Q[1],D,O].concat(B)),typeof te<"u")return te;J&&(_=_.slice(0,-1*J*2),D=D.slice(0,-1*J),O=O.slice(0,-1*J)),_.push(this.productions_[Q[1]][0]),D.push(re.$),O.push(re._$),ye=R[_[_.length-2]][_[_.length-1]],_.push(ye);break;case 3:return!0}}return!0},"parse")},b=function(){var S={EOF:1,parseError:o(function(E,_){if(this.yy.parser)this.yy.parser.parseError(E,_);else throw new Error(E)},"parseError"),setInput:o(function(w,E){return this.yy=E||this.yy||{},this._input=w,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},"setInput"),input:o(function(){var w=this._input[0];this.yytext+=w,this.yyleng++,this.offset++,this.match+=w,this.matched+=w;var E=w.match(/(?:\r\n?|\n).*/g);return E?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),w},"input"),unput:o(function(w){var E=w.length,_=w.split(/(?:\r\n?|\n)/g);this._input=w+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-E),this.offset-=E;var A=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),_.length-1&&(this.yylineno-=_.length-1);var D=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:_?(_.length===A.length?this.yylloc.first_column:0)+A[A.length-_.length].length-_[0].length:this.yylloc.first_column-E},this.options.ranges&&(this.yylloc.range=[D[0],D[0]+this.yyleng-E]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(w){this.unput(this.match.slice(w))},"less"),pastInput:o(function(){var w=this.matched.substr(0,this.matched.length-this.match.length);return(w.length>20?"...":"")+w.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var w=this.match;return w.length<20&&(w+=this._input.substr(0,20-w.length)),(w.substr(0,20)+(w.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var w=this.pastInput(),E=new Array(w.length+1).join("-");return w+this.upcomingInput()+`
|
||
`+E+"^"},"showPosition"),test_match:o(function(w,E){var _,A,D;if(this.options.backtrack_lexer&&(D={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&&(D.yylloc.range=this.yylloc.range.slice(0))),A=w[0].match(/(?:\r\n?|\n).*/g),A&&(this.yylineno+=A.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:A?A[A.length-1].length-A[A.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+w[0].length},this.yytext+=w[0],this.match+=w[0],this.matches=w,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(w[0].length),this.matched+=w[0],_=this.performAction.call(this,this.yy,this,E,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),_)return _;if(this._backtrack){for(var O in D)this[O]=D[O];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var w,E,_,A;this._more||(this.yytext="",this.match="");for(var D=this._currentRules(),O=0;O<D.length;O++)if(_=this._input.match(this.rules[D[O]]),_&&(!E||_[0].length>E[0].length)){if(E=_,A=O,this.options.backtrack_lexer){if(w=this.test_match(_,D[O]),w!==!1)return w;if(this._backtrack){E=!1;continue}else return!1}else if(!this.options.flex)break}return E?(w=this.test_match(E,D[A]),w!==!1?w:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var E=this.next();return E||this.lex()},"lex"),begin:o(function(E){this.conditionStack.push(E)},"begin"),popState:o(function(){var E=this.conditionStack.length-1;return E>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(E){return E=this.conditionStack.length-1-Math.abs(E||0),E>=0?this.conditionStack[E]:"INITIAL"},"topState"),pushState:o(function(E){this.begin(E)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(E,_,A,D){var O=D;switch(A){case 0:return E.getLogger().trace("Found comment",_.yytext),6;break;case 1:return 8;case 2:this.begin("CLASS");break;case 3:return this.popState(),16;break;case 4:this.popState();break;case 5:E.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return E.getLogger().trace("SPACELINE"),6;break;case 7:return 7;case 8:return 15;case 9:E.getLogger().trace("end icon"),this.popState();break;case 10:return E.getLogger().trace("Exploding node"),this.begin("NODE"),19;break;case 11:return E.getLogger().trace("Cloud"),this.begin("NODE"),19;break;case 12:return E.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;break;case 13:return E.getLogger().trace("Cloud Bang"),this.begin("NODE"),19;break;case 14:return this.begin("NODE"),19;break;case 15:return this.begin("NODE"),19;break;case 16:return this.begin("NODE"),19;break;case 17:return this.begin("NODE"),19;break;case 18:return 13;case 19:return 22;case 20:return 11;case 21:this.begin("NSTR2");break;case 22:return"NODE_DESCR";case 23:this.popState();break;case 24:E.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return E.getLogger().trace("description:",_.yytext),"NODE_DESCR";break;case 26:this.popState();break;case 27:return this.popState(),E.getLogger().trace("node end ))"),"NODE_DEND";break;case 28:return this.popState(),E.getLogger().trace("node end )"),"NODE_DEND";break;case 29:return this.popState(),E.getLogger().trace("node end ...",_.yytext),"NODE_DEND";break;case 30:return this.popState(),E.getLogger().trace("node end (("),"NODE_DEND";break;case 31:return this.popState(),E.getLogger().trace("node end (-"),"NODE_DEND";break;case 32:return this.popState(),E.getLogger().trace("node end (-"),"NODE_DEND";break;case 33:return this.popState(),E.getLogger().trace("node end (("),"NODE_DEND";break;case 34:return this.popState(),E.getLogger().trace("node end (("),"NODE_DEND";break;case 35:return E.getLogger().trace("Long description:",_.yytext),20;break;case 36:return E.getLogger().trace("Long description:",_.yytext),20;break}},"anonymous"),rules:[/^(?:\s*%%.*)/i,/^(?:mindmap\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{CLASS:{rules:[3,4],inclusive:!1},ICON:{rules:[8,9],inclusive:!1},NSTR2:{rules:[22,23],inclusive:!1},NSTR:{rules:[25,26],inclusive:!1},NODE:{rules:[21,24,27,28,29,30,31,32,33,34,35,36],inclusive:!1},INITIAL:{rules:[0,1,2,5,6,7,10,11,12,13,14,15,16,17,18,19,20],inclusive:!0}}};return S}();v.lexer=b;function T(){this.yy={}}return o(T,"Parser"),T.prototype=v,v.Parser=T,new T}();yF.parser=yF;hye=yF});function dye(t,e=0){return(Ca[t[e+0]]+Ca[t[e+1]]+Ca[t[e+2]]+Ca[t[e+3]]+"-"+Ca[t[e+4]]+Ca[t[e+5]]+"-"+Ca[t[e+6]]+Ca[t[e+7]]+"-"+Ca[t[e+8]]+Ca[t[e+9]]+"-"+Ca[t[e+10]]+Ca[t[e+11]]+Ca[t[e+12]]+Ca[t[e+13]]+Ca[t[e+14]]+Ca[t[e+15]]).toLowerCase()}var Ca,pye=N(()=>{"use strict";Ca=[];for(let t=0;t<256;++t)Ca.push((t+256).toString(16).slice(1));o(dye,"unsafeStringify")});function xF(){if(!vF){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");vF=crypto.getRandomValues.bind(crypto)}return vF(Tet)}var vF,Tet,mye=N(()=>{"use strict";Tet=new Uint8Array(16);o(xF,"rng")});var wet,bF,gye=N(()=>{"use strict";wet=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),bF={randomUUID:wet}});function ket(t,e,r){if(bF.randomUUID&&!e&&!t)return bF.randomUUID();t=t||{};let n=t.random??t.rng?.()??xF();if(n.length<16)throw new Error("Random bytes length must be >= 16");if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,e){if(r=r||0,r<0||r+16>e.length)throw new RangeError(`UUID byte range ${r}:${r+15} is out of buffer bounds`);for(let i=0;i<16;++i)e[r+i]=n[i];return e}return dye(n)}var TF,yye=N(()=>{"use strict";gye();mye();pye();o(ket,"v4");TF=ket});var vye=N(()=>{"use strict";yye()});var sh,yC,xye=N(()=>{"use strict";Xt();vye();dr();pt();_a();Wn();sh={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},yC=class{constructor(){this.nodes=[];this.count=0;this.elements={};this.getLogger=this.getLogger.bind(this),this.nodeType=sh,this.clear(),this.getType=this.getType.bind(this),this.getElementById=this.getElementById.bind(this),this.getParent=this.getParent.bind(this),this.getMindmap=this.getMindmap.bind(this),this.addNode=this.addNode.bind(this),this.decorateNode=this.decorateNode.bind(this)}static{o(this,"MindmapDB")}clear(){this.nodes=[],this.count=0,this.elements={}}getParent(e){for(let r=this.nodes.length-1;r>=0;r--)if(this.nodes[r].level<e)return this.nodes[r];return null}getMindmap(){return this.nodes.length>0?this.nodes[0]:null}addNode(e,r,n,i){X.info("addNode",e,r,n,i);let a=ge(),s=a.mindmap?.padding??lr.mindmap.padding;switch(i){case this.nodeType.ROUNDED_RECT:case this.nodeType.RECT:case this.nodeType.HEXAGON:s*=2;break}let l={id:this.count++,nodeId:ar(r,a),level:e,descr:ar(n,a),type:i,children:[],width:a.mindmap?.maxNodeWidth??lr.mindmap.maxNodeWidth,padding:s},u=this.getParent(e);if(u)u.children.push(l),this.nodes.push(l);else if(this.nodes.length===0)this.nodes.push(l);else throw new Error(`There can be only one root. No parent could be found for ("${l.descr}")`)}getType(e,r){switch(X.debug("In get type",e,r),e){case"[":return this.nodeType.RECT;case"(":return r===")"?this.nodeType.ROUNDED_RECT:this.nodeType.CLOUD;case"((":return this.nodeType.CIRCLE;case")":return this.nodeType.CLOUD;case"))":return this.nodeType.BANG;case"{{":return this.nodeType.HEXAGON;default:return this.nodeType.DEFAULT}}setElementForId(e,r){this.elements[e]=r}getElementById(e){return this.elements[e]}decorateNode(e){if(!e)return;let r=ge(),n=this.nodes[this.nodes.length-1];e.icon&&(n.icon=ar(e.icon,r)),e.class&&(n.class=ar(e.class,r))}type2Str(e){switch(e){case this.nodeType.DEFAULT:return"no-border";case this.nodeType.RECT:return"rect";case this.nodeType.ROUNDED_RECT:return"rounded-rect";case this.nodeType.CIRCLE:return"circle";case this.nodeType.CLOUD:return"cloud";case this.nodeType.BANG:return"bang";case this.nodeType.HEXAGON:return"hexgon";default:return"no-border"}}assignSections(e,r){if(e.level===0?e.section=void 0:e.section=r,e.children)for(let[n,i]of e.children.entries()){let a=e.level===0?n:r;this.assignSections(i,a)}}flattenNodes(e,r){let n=["mindmap-node"];e.level===0?n.push("section-root","section--1"):e.section!==void 0&&n.push(`section-${e.section}`),e.class&&n.push(e.class);let i=n.join(" "),a=o(l=>{switch(l){case sh.CIRCLE:return"mindmapCircle";case sh.RECT:return"rect";case sh.ROUNDED_RECT:return"rounded";case sh.CLOUD:return"cloud";case sh.BANG:return"bang";case sh.HEXAGON:return"hexagon";case sh.DEFAULT:return"defaultMindmapNode";case sh.NO_BORDER:default:return"rect"}},"getShapeFromType"),s={id:e.id.toString(),domId:"node_"+e.id.toString(),label:e.descr,isGroup:!1,shape:a(e.type),width:e.width,height:e.height??0,padding:e.padding,cssClasses:i,cssStyles:[],look:"default",icon:e.icon,x:e.x,y:e.y,level:e.level,nodeId:e.nodeId,type:e.type,section:e.section};if(r.push(s),e.children)for(let l of e.children)this.flattenNodes(l,r)}generateEdges(e,r){if(e.children)for(let n of e.children){let i="edge";n.section!==void 0&&(i+=` section-edge-${n.section}`);let a=e.level+1;i+=` edge-depth-${a}`;let s={id:`edge_${e.id}_${n.id}`,start:e.id.toString(),end:n.id.toString(),type:"normal",curve:"basis",thickness:"normal",look:"default",classes:i,depth:e.level,section:n.section};r.push(s),this.generateEdges(n,r)}}getData(){let e=this.getMindmap(),r=ge(),i=MG().layout!==void 0,a=r;if(i||(a.layout="cose-bilkent"),!e)return{nodes:[],edges:[],config:a};X.debug("getData: mindmapRoot",e,r),this.assignSections(e);let s=[],l=[];this.flattenNodes(e,s),this.generateEdges(e,l),X.debug(`getData: processed ${s.length} nodes and ${l.length} edges`);let u=new Map;for(let h of s)u.set(h.id,{shape:h.shape,width:h.width,height:h.height,padding:h.padding});return{nodes:s,edges:l,config:a,rootNode:e,markers:["point"],direction:"TB",nodeSpacing:50,rankSpacing:50,shapes:Object.fromEntries(u),type:"mindmap",diagramId:"mindmap-"+TF()}}getLogger(){return X}}});var Eet,bye,Tye=N(()=>{"use strict";pt();Kd();Af();_f();_a();Eet=o(async(t,e,r,n)=>{X.debug(`Rendering mindmap diagram
|
||
`+t);let i=n.db,a=i.getData(),s=zo(e,a.config.securityLevel);a.type=n.type,a.layoutAlgorithm=Bc(a.config.layout,{fallback:"cose-bilkent"}),a.diagramId=e,i.getMindmap()&&(a.nodes.forEach(u=>{u.shape==="rounded"?(u.radius=15,u.taper=15,u.stroke="none",u.width=0,u.padding=15):u.shape==="circle"?u.padding=10:u.shape==="rect"&&(u.width=0,u.padding=10)}),await Qo(a,s),Hs(s,a.config.mindmap?.padding??lr.mindmap.padding,"mindmapDiagram",a.config.mindmap?.useMaxWidth??lr.mindmap.useMaxWidth))},"draw"),bye={draw:Eet}});var Cet,Aet,wye,kye=N(()=>{"use strict";Qs();Cet=o(t=>{let e="";for(let r=0;r<t.THEME_COLOR_LIMIT;r++)t["lineColor"+r]=t["lineColor"+r]||t["cScaleInv"+r],sa(t["lineColor"+r])?t["lineColor"+r]=Lt(t["lineColor"+r],20):t["lineColor"+r]=Ot(t["lineColor"+r],20);for(let r=0;r<t.THEME_COLOR_LIMIT;r++){let n=""+(17-3*r);e+=`
|
||
.section-${r-1} rect, .section-${r-1} path, .section-${r-1} circle, .section-${r-1} polygon, .section-${r-1} path {
|
||
fill: ${t["cScale"+r]};
|
||
}
|
||
.section-${r-1} text {
|
||
fill: ${t["cScaleLabel"+r]};
|
||
}
|
||
.node-icon-${r-1} {
|
||
font-size: 40px;
|
||
color: ${t["cScaleLabel"+r]};
|
||
}
|
||
.section-edge-${r-1}{
|
||
stroke: ${t["cScale"+r]};
|
||
}
|
||
.edge-depth-${r-1}{
|
||
stroke-width: ${n};
|
||
}
|
||
.section-${r-1} line {
|
||
stroke: ${t["cScaleInv"+r]} ;
|
||
stroke-width: 3;
|
||
}
|
||
|
||
.disabled, .disabled circle, .disabled text {
|
||
fill: lightgray;
|
||
}
|
||
.disabled text {
|
||
fill: #efefef;
|
||
}
|
||
`}return e},"genSections"),Aet=o(t=>`
|
||
.edge {
|
||
stroke-width: 3;
|
||
}
|
||
${Cet(t)}
|
||
.section-root rect, .section-root path, .section-root circle, .section-root polygon {
|
||
fill: ${t.git0};
|
||
}
|
||
.section-root text {
|
||
fill: ${t.gitBranchLabel0};
|
||
}
|
||
.section-root span {
|
||
color: ${t.gitBranchLabel0};
|
||
}
|
||
.section-2 span {
|
||
color: ${t.gitBranchLabel0};
|
||
}
|
||
.icon-container {
|
||
height:100%;
|
||
display: flex;
|
||
justify-content: center;
|
||
align-items: center;
|
||
}
|
||
.edge {
|
||
fill: none;
|
||
}
|
||
.mindmap-node-label {
|
||
dy: 1em;
|
||
alignment-baseline: middle;
|
||
text-anchor: middle;
|
||
dominant-baseline: middle;
|
||
text-align: center;
|
||
}
|
||
`,"getStyles"),wye=Aet});var Eye={};ur(Eye,{diagram:()=>_et});var _et,Sye=N(()=>{"use strict";fye();xye();Tye();kye();_et={get db(){return new yC},renderer:bye,parser:hye,styles:wye}});var wF,_ye,Dye=N(()=>{"use strict";wF=function(){var t=o(function(_,A,D,O){for(D=D||{},O=_.length;O--;D[_[O]]=A);return D},"o"),e=[1,4],r=[1,13],n=[1,12],i=[1,15],a=[1,16],s=[1,20],l=[1,19],u=[6,7,8],h=[1,26],f=[1,24],d=[1,25],p=[6,7,11],m=[1,31],g=[6,7,11,24],y=[1,6,13,16,17,20,23],x=[1,35],v=[1,36],b=[1,6,7,11,13,16,17,20,23],T=[1,38],S={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,KANBAN:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,shapeData:15,ICON:16,CLASS:17,nodeWithId:18,nodeWithoutId:19,NODE_DSTART:20,NODE_DESCR:21,NODE_DEND:22,NODE_ID:23,SHAPE_DATA:24,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"KANBAN",11:"EOF",13:"SPACELIST",16:"ICON",17:"CLASS",20:"NODE_DSTART",21:"NODE_DESCR",22:"NODE_DEND",23:"NODE_ID",24:"SHAPE_DATA"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,3],[12,2],[12,2],[12,2],[12,1],[12,2],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[19,3],[18,1],[18,4],[15,2],[15,1]],performAction:o(function(A,D,O,R,k,L,C){var I=L.length-1;switch(k){case 6:case 7:return R;case 8:R.getLogger().trace("Stop NL ");break;case 9:R.getLogger().trace("Stop EOF ");break;case 11:R.getLogger().trace("Stop NL2 ");break;case 12:R.getLogger().trace("Stop EOF2 ");break;case 15:R.getLogger().info("Node: ",L[I-1].id),R.addNode(L[I-2].length,L[I-1].id,L[I-1].descr,L[I-1].type,L[I]);break;case 16:R.getLogger().info("Node: ",L[I].id),R.addNode(L[I-1].length,L[I].id,L[I].descr,L[I].type);break;case 17:R.getLogger().trace("Icon: ",L[I]),R.decorateNode({icon:L[I]});break;case 18:case 23:R.decorateNode({class:L[I]});break;case 19:R.getLogger().trace("SPACELIST");break;case 20:R.getLogger().trace("Node: ",L[I-1].id),R.addNode(0,L[I-1].id,L[I-1].descr,L[I-1].type,L[I]);break;case 21:R.getLogger().trace("Node: ",L[I].id),R.addNode(0,L[I].id,L[I].descr,L[I].type);break;case 22:R.decorateNode({icon:L[I]});break;case 27:R.getLogger().trace("node found ..",L[I-2]),this.$={id:L[I-1],descr:L[I-1],type:R.getType(L[I-2],L[I])};break;case 28:this.$={id:L[I],descr:L[I],type:0};break;case 29:R.getLogger().trace("node found ..",L[I-3]),this.$={id:L[I-3],descr:L[I-1],type:R.getType(L[I-2],L[I])};break;case 30:this.$=L[I-1]+L[I];break;case 31:this.$=L[I];break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:e},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:e},{6:r,7:[1,10],9:9,12:11,13:n,14:14,16:i,17:a,18:17,19:18,20:s,23:l},t(u,[2,3]),{1:[2,2]},t(u,[2,4]),t(u,[2,5]),{1:[2,6],6:r,12:21,13:n,14:14,16:i,17:a,18:17,19:18,20:s,23:l},{6:r,9:22,12:11,13:n,14:14,16:i,17:a,18:17,19:18,20:s,23:l},{6:h,7:f,10:23,11:d},t(p,[2,24],{18:17,19:18,14:27,16:[1,28],17:[1,29],20:s,23:l}),t(p,[2,19]),t(p,[2,21],{15:30,24:m}),t(p,[2,22]),t(p,[2,23]),t(g,[2,25]),t(g,[2,26]),t(g,[2,28],{20:[1,32]}),{21:[1,33]},{6:h,7:f,10:34,11:d},{1:[2,7],6:r,12:21,13:n,14:14,16:i,17:a,18:17,19:18,20:s,23:l},t(y,[2,14],{7:x,11:v}),t(b,[2,8]),t(b,[2,9]),t(b,[2,10]),t(p,[2,16],{15:37,24:m}),t(p,[2,17]),t(p,[2,18]),t(p,[2,20],{24:T}),t(g,[2,31]),{21:[1,39]},{22:[1,40]},t(y,[2,13],{7:x,11:v}),t(b,[2,11]),t(b,[2,12]),t(p,[2,15],{24:T}),t(g,[2,30]),{22:[1,41]},t(g,[2,27]),t(g,[2,29])],defaultActions:{2:[2,1],6:[2,2]},parseError:o(function(A,D){if(D.recoverable)this.trace(A);else{var O=new Error(A);throw O.hash=D,O}},"parseError"),parse:o(function(A){var D=this,O=[0],R=[],k=[null],L=[],C=this.table,I="",M=0,P=0,B=0,F=2,G=1,$=L.slice.call(arguments,1),U=Object.create(this.lexer),K={yy:{}};for(var ne in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ne)&&(K.yy[ne]=this.yy[ne]);U.setInput(A,K.yy),K.yy.lexer=U,K.yy.parser=this,typeof U.yylloc>"u"&&(U.yylloc={});var j=U.yylloc;L.push(j);var le=U.options&&U.options.ranges;typeof K.yy.parseError=="function"?this.parseError=K.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Z(Pe){O.length=O.length-2*Pe,k.length=k.length-Pe,L.length=L.length-Pe}o(Z,"popStack");function ce(){var Pe;return Pe=R.pop()||U.lex()||G,typeof Pe!="number"&&(Pe instanceof Array&&(R=Pe,Pe=R.pop()),Pe=D.symbols_[Pe]||Pe),Pe}o(ce,"lex");for(var Q,ee,te,re,he,J,ye={},se,Se,W,Oe;;){if(te=O[O.length-1],this.defaultActions[te]?re=this.defaultActions[te]:((Q===null||typeof Q>"u")&&(Q=ce()),re=C[te]&&C[te][Q]),typeof re>"u"||!re.length||!re[0]){var ve="";Oe=[];for(se in C[te])this.terminals_[se]&&se>F&&Oe.push("'"+this.terminals_[se]+"'");U.showPosition?ve="Parse error on line "+(M+1)+`:
|
||
`+U.showPosition()+`
|
||
Expecting `+Oe.join(", ")+", got '"+(this.terminals_[Q]||Q)+"'":ve="Parse error on line "+(M+1)+": Unexpected "+(Q==G?"end of input":"'"+(this.terminals_[Q]||Q)+"'"),this.parseError(ve,{text:U.match,token:this.terminals_[Q]||Q,line:U.yylineno,loc:j,expected:Oe})}if(re[0]instanceof Array&&re.length>1)throw new Error("Parse Error: multiple actions possible at state: "+te+", token: "+Q);switch(re[0]){case 1:O.push(Q),k.push(U.yytext),L.push(U.yylloc),O.push(re[1]),Q=null,ee?(Q=ee,ee=null):(P=U.yyleng,I=U.yytext,M=U.yylineno,j=U.yylloc,B>0&&B--);break;case 2:if(Se=this.productions_[re[1]][1],ye.$=k[k.length-Se],ye._$={first_line:L[L.length-(Se||1)].first_line,last_line:L[L.length-1].last_line,first_column:L[L.length-(Se||1)].first_column,last_column:L[L.length-1].last_column},le&&(ye._$.range=[L[L.length-(Se||1)].range[0],L[L.length-1].range[1]]),J=this.performAction.apply(ye,[I,P,M,K.yy,re[1],k,L].concat($)),typeof J<"u")return J;Se&&(O=O.slice(0,-1*Se*2),k=k.slice(0,-1*Se),L=L.slice(0,-1*Se)),O.push(this.productions_[re[1]][0]),k.push(ye.$),L.push(ye._$),W=C[O[O.length-2]][O[O.length-1]],O.push(W);break;case 3:return!0}}return!0},"parse")},w=function(){var _={EOF:1,parseError:o(function(D,O){if(this.yy.parser)this.yy.parser.parseError(D,O);else throw new Error(D)},"parseError"),setInput:o(function(A,D){return this.yy=D||this.yy||{},this._input=A,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},"setInput"),input:o(function(){var A=this._input[0];this.yytext+=A,this.yyleng++,this.offset++,this.match+=A,this.matched+=A;var D=A.match(/(?:\r\n?|\n).*/g);return D?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),A},"input"),unput:o(function(A){var D=A.length,O=A.split(/(?:\r\n?|\n)/g);this._input=A+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-D),this.offset-=D;var R=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),O.length-1&&(this.yylineno-=O.length-1);var k=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:O?(O.length===R.length?this.yylloc.first_column:0)+R[R.length-O.length].length-O[0].length:this.yylloc.first_column-D},this.options.ranges&&(this.yylloc.range=[k[0],k[0]+this.yyleng-D]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(A){this.unput(this.match.slice(A))},"less"),pastInput:o(function(){var A=this.matched.substr(0,this.matched.length-this.match.length);return(A.length>20?"...":"")+A.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var A=this.match;return A.length<20&&(A+=this._input.substr(0,20-A.length)),(A.substr(0,20)+(A.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var A=this.pastInput(),D=new Array(A.length+1).join("-");return A+this.upcomingInput()+`
|
||
`+D+"^"},"showPosition"),test_match:o(function(A,D){var O,R,k;if(this.options.backtrack_lexer&&(k={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&&(k.yylloc.range=this.yylloc.range.slice(0))),R=A[0].match(/(?:\r\n?|\n).*/g),R&&(this.yylineno+=R.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:R?R[R.length-1].length-R[R.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+A[0].length},this.yytext+=A[0],this.match+=A[0],this.matches=A,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(A[0].length),this.matched+=A[0],O=this.performAction.call(this,this.yy,this,D,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),O)return O;if(this._backtrack){for(var L in k)this[L]=k[L];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var A,D,O,R;this._more||(this.yytext="",this.match="");for(var k=this._currentRules(),L=0;L<k.length;L++)if(O=this._input.match(this.rules[k[L]]),O&&(!D||O[0].length>D[0].length)){if(D=O,R=L,this.options.backtrack_lexer){if(A=this.test_match(O,k[L]),A!==!1)return A;if(this._backtrack){D=!1;continue}else return!1}else if(!this.options.flex)break}return D?(A=this.test_match(D,k[R]),A!==!1?A:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var D=this.next();return D||this.lex()},"lex"),begin:o(function(D){this.conditionStack.push(D)},"begin"),popState:o(function(){var D=this.conditionStack.length-1;return D>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(D){return D=this.conditionStack.length-1-Math.abs(D||0),D>=0?this.conditionStack[D]:"INITIAL"},"topState"),pushState:o(function(D){this.begin(D)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(D,O,R,k){var L=k;switch(R){case 0:return this.pushState("shapeData"),O.yytext="",24;break;case 1:return this.pushState("shapeDataStr"),24;break;case 2:return this.popState(),24;break;case 3:let C=/\n\s*/g;return O.yytext=O.yytext.replace(C,"<br/>"),24;break;case 4:return 24;case 5:this.popState();break;case 6:return D.getLogger().trace("Found comment",O.yytext),6;break;case 7:return 8;case 8:this.begin("CLASS");break;case 9:return this.popState(),17;break;case 10:this.popState();break;case 11:D.getLogger().trace("Begin icon"),this.begin("ICON");break;case 12:return D.getLogger().trace("SPACELINE"),6;break;case 13:return 7;case 14:return 16;case 15:D.getLogger().trace("end icon"),this.popState();break;case 16:return D.getLogger().trace("Exploding node"),this.begin("NODE"),20;break;case 17:return D.getLogger().trace("Cloud"),this.begin("NODE"),20;break;case 18:return D.getLogger().trace("Explosion Bang"),this.begin("NODE"),20;break;case 19:return D.getLogger().trace("Cloud Bang"),this.begin("NODE"),20;break;case 20:return this.begin("NODE"),20;break;case 21:return this.begin("NODE"),20;break;case 22:return this.begin("NODE"),20;break;case 23:return this.begin("NODE"),20;break;case 24:return 13;case 25:return 23;case 26:return 11;case 27:this.begin("NSTR2");break;case 28:return"NODE_DESCR";case 29:this.popState();break;case 30:D.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 31:return D.getLogger().trace("description:",O.yytext),"NODE_DESCR";break;case 32:this.popState();break;case 33:return this.popState(),D.getLogger().trace("node end ))"),"NODE_DEND";break;case 34:return this.popState(),D.getLogger().trace("node end )"),"NODE_DEND";break;case 35:return this.popState(),D.getLogger().trace("node end ...",O.yytext),"NODE_DEND";break;case 36:return this.popState(),D.getLogger().trace("node end (("),"NODE_DEND";break;case 37:return this.popState(),D.getLogger().trace("node end (-"),"NODE_DEND";break;case 38:return this.popState(),D.getLogger().trace("node end (-"),"NODE_DEND";break;case 39:return this.popState(),D.getLogger().trace("node end (("),"NODE_DEND";break;case 40:return this.popState(),D.getLogger().trace("node end (("),"NODE_DEND";break;case 41:return D.getLogger().trace("Long description:",O.yytext),21;break;case 42:return D.getLogger().trace("Long description:",O.yytext),21;break}},"anonymous"),rules:[/^(?:@\{)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^\"]+)/i,/^(?:[^}^"]+)/i,/^(?:\})/i,/^(?:\s*%%.*)/i,/^(?:kanban\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}@]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{shapeDataEndBracket:{rules:[],inclusive:!1},shapeDataStr:{rules:[2,3],inclusive:!1},shapeData:{rules:[1,4,5],inclusive:!1},CLASS:{rules:[9,10],inclusive:!1},ICON:{rules:[14,15],inclusive:!1},NSTR2:{rules:[28,29],inclusive:!1},NSTR:{rules:[31,32],inclusive:!1},NODE:{rules:[27,30,33,34,35,36,37,38,39,40,41,42],inclusive:!1},INITIAL:{rules:[0,6,7,8,11,12,13,16,17,18,19,20,21,22,23,24,25,26],inclusive:!0}}};return _}();S.lexer=w;function E(){this.yy={}}return o(E,"Parser"),E.prototype=S,S.Parser=E,new E}();wF.parser=wF;_ye=wF});var ol,EF,kF,SF,Net,Met,Lye,Iet,Oet,Wi,Pet,Bet,Fet,$et,Get,zet,Vet,Rye,Nye=N(()=>{"use strict";Xt();dr();pt();_a();b2();ol=[],EF=[],kF=0,SF={},Net=o(()=>{ol=[],EF=[],kF=0,SF={}},"clear"),Met=o(t=>{if(ol.length===0)return null;let e=ol[0].level,r=null;for(let n=ol.length-1;n>=0;n--)if(ol[n].level===e&&!r&&(r=ol[n]),ol[n].level<e)throw new Error('Items without section detected, found section ("'+ol[n].label+'")');return t===r?.level?null:r},"getSection"),Lye=o(function(){return EF},"getSections"),Iet=o(function(){let t=[],e=[],r=Lye(),n=ge();for(let i of r){let a={id:i.id,label:ar(i.label??"",n),isGroup:!0,ticket:i.ticket,shape:"kanbanSection",level:i.level,look:n.look};e.push(a);let s=ol.filter(l=>l.parentId===i.id);for(let l of s){let u={id:l.id,parentId:i.id,label:ar(l.label??"",n),isGroup:!1,ticket:l?.ticket,priority:l?.priority,assigned:l?.assigned,icon:l?.icon,shape:"kanbanItem",level:l.level,rx:5,ry:5,cssStyles:["text-align: left"]};e.push(u)}}return{nodes:e,edges:t,other:{},config:ge()}},"getData"),Oet=o((t,e,r,n,i)=>{let a=ge(),s=a.mindmap?.padding??lr.mindmap.padding;switch(n){case Wi.ROUNDED_RECT:case Wi.RECT:case Wi.HEXAGON:s*=2}let l={id:ar(e,a)||"kbn"+kF++,level:t,label:ar(r,a),width:a.mindmap?.maxNodeWidth??lr.mindmap.maxNodeWidth,padding:s,isGroup:!1};if(i!==void 0){let h;i.includes(`
|
||
`)?h=i+`
|
||
`:h=`{
|
||
`+i+`
|
||
}`;let f=Xh(h,{schema:Yh});if(f.shape&&(f.shape!==f.shape.toLowerCase()||f.shape.includes("_")))throw new Error(`No such shape: ${f.shape}. Shape names should be lowercase.`);f?.shape&&f.shape==="kanbanItem"&&(l.shape=f?.shape),f?.label&&(l.label=f?.label),f?.icon&&(l.icon=f?.icon.toString()),f?.assigned&&(l.assigned=f?.assigned.toString()),f?.ticket&&(l.ticket=f?.ticket.toString()),f?.priority&&(l.priority=f?.priority)}let u=Met(t);u?l.parentId=u.id||"kbn"+kF++:EF.push(l),ol.push(l)},"addNode"),Wi={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},Pet=o((t,e)=>{switch(X.debug("In get type",t,e),t){case"[":return Wi.RECT;case"(":return e===")"?Wi.ROUNDED_RECT:Wi.CLOUD;case"((":return Wi.CIRCLE;case")":return Wi.CLOUD;case"))":return Wi.BANG;case"{{":return Wi.HEXAGON;default:return Wi.DEFAULT}},"getType"),Bet=o((t,e)=>{SF[t]=e},"setElementForId"),Fet=o(t=>{if(!t)return;let e=ge(),r=ol[ol.length-1];t.icon&&(r.icon=ar(t.icon,e)),t.class&&(r.cssClasses=ar(t.class,e))},"decorateNode"),$et=o(t=>{switch(t){case Wi.DEFAULT:return"no-border";case Wi.RECT:return"rect";case Wi.ROUNDED_RECT:return"rounded-rect";case Wi.CIRCLE:return"circle";case Wi.CLOUD:return"cloud";case Wi.BANG:return"bang";case Wi.HEXAGON:return"hexgon";default:return"no-border"}},"type2Str"),Get=o(()=>X,"getLogger"),zet=o(t=>SF[t],"getElementById"),Vet={clear:Net,addNode:Oet,getSections:Lye,getData:Iet,nodeType:Wi,getType:Pet,setElementForId:Bet,decorateNode:Fet,type2Str:$et,getLogger:Get,getElementById:zet},Rye=Vet});var Uet,Mye,Iye=N(()=>{"use strict";Xt();pt();Jc();Ci();_a();cw();xw();Uet=o(async(t,e,r,n)=>{X.debug(`Rendering kanban diagram
|
||
`+t);let a=n.db.getData(),s=ge();s.htmlLabels=!1;let l=aa(e),u=l.append("g");u.attr("class","sections");let h=l.append("g");h.attr("class","items");let f=a.nodes.filter(x=>x.isGroup),d=0,p=10,m=[],g=25;for(let x of f){let v=s?.kanban?.sectionWidth||200;d=d+1,x.x=v*d+(d-1)*p/2,x.width=v,x.y=0,x.height=v*3,x.rx=5,x.ry=5,x.cssClasses=x.cssClasses+" section-"+d;let b=await Tm(u,x);g=Math.max(g,b?.labelBBox?.height),m.push(b)}let y=0;for(let x of f){let v=m[y];y=y+1;let b=s?.kanban?.sectionWidth||200,T=-b*3/2+g,S=T,w=a.nodes.filter(A=>A.parentId===x.id);for(let A of w){if(A.isGroup)throw new Error("Groups within groups are not allowed in Kanban diagrams");A.x=x.x,A.width=b-1.5*p;let O=(await wm(h,A,{config:s})).node().getBBox();A.y=S+O.height/2,await I2(A),S=A.y+O.height/2+p/2}let E=v.cluster.select("rect"),_=Math.max(S-T+3*p,50)+(g-25);E.attr("height",_)}nc(void 0,l,s.mindmap?.padding??lr.kanban.padding,s.mindmap?.useMaxWidth??lr.kanban.useMaxWidth)},"draw"),Mye={draw:Uet}});var Het,Wet,Oye,Pye=N(()=>{"use strict";Qs();mg();Het=o(t=>{let e="";for(let n=0;n<t.THEME_COLOR_LIMIT;n++)t["lineColor"+n]=t["lineColor"+n]||t["cScaleInv"+n],sa(t["lineColor"+n])?t["lineColor"+n]=Lt(t["lineColor"+n],20):t["lineColor"+n]=Ot(t["lineColor"+n],20);let r=o((n,i)=>t.darkMode?Ot(n,i):Lt(n,i),"adjuster");for(let n=0;n<t.THEME_COLOR_LIMIT;n++){let i=""+(17-3*n);e+=`
|
||
.section-${n-1} rect, .section-${n-1} path, .section-${n-1} circle, .section-${n-1} polygon, .section-${n-1} path {
|
||
fill: ${r(t["cScale"+n],10)};
|
||
stroke: ${r(t["cScale"+n],10)};
|
||
|
||
}
|
||
.section-${n-1} text {
|
||
fill: ${t["cScaleLabel"+n]};
|
||
}
|
||
.node-icon-${n-1} {
|
||
font-size: 40px;
|
||
color: ${t["cScaleLabel"+n]};
|
||
}
|
||
.section-edge-${n-1}{
|
||
stroke: ${t["cScale"+n]};
|
||
}
|
||
.edge-depth-${n-1}{
|
||
stroke-width: ${i};
|
||
}
|
||
.section-${n-1} line {
|
||
stroke: ${t["cScaleInv"+n]} ;
|
||
stroke-width: 3;
|
||
}
|
||
|
||
.disabled, .disabled circle, .disabled text {
|
||
fill: lightgray;
|
||
}
|
||
.disabled text {
|
||
fill: #efefef;
|
||
}
|
||
|
||
.node rect,
|
||
.node circle,
|
||
.node ellipse,
|
||
.node polygon,
|
||
.node path {
|
||
fill: ${t.background};
|
||
stroke: ${t.nodeBorder};
|
||
stroke-width: 1px;
|
||
}
|
||
|
||
.kanban-ticket-link {
|
||
fill: ${t.background};
|
||
stroke: ${t.nodeBorder};
|
||
text-decoration: underline;
|
||
}
|
||
`}return e},"genSections"),Wet=o(t=>`
|
||
.edge {
|
||
stroke-width: 3;
|
||
}
|
||
${Het(t)}
|
||
.section-root rect, .section-root path, .section-root circle, .section-root polygon {
|
||
fill: ${t.git0};
|
||
}
|
||
.section-root text {
|
||
fill: ${t.gitBranchLabel0};
|
||
}
|
||
.icon-container {
|
||
height:100%;
|
||
display: flex;
|
||
justify-content: center;
|
||
align-items: center;
|
||
}
|
||
.edge {
|
||
fill: none;
|
||
}
|
||
.cluster-label, .label {
|
||
color: ${t.textColor};
|
||
fill: ${t.textColor};
|
||
}
|
||
.kanban-label {
|
||
dy: 1em;
|
||
alignment-baseline: middle;
|
||
text-anchor: middle;
|
||
dominant-baseline: middle;
|
||
text-align: center;
|
||
}
|
||
${Fc()}
|
||
`,"getStyles"),Oye=Wet});var Bye={};ur(Bye,{diagram:()=>qet});var qet,Fye=N(()=>{"use strict";Dye();Nye();Iye();Pye();qet={db:Rye,renderer:Mye,parser:_ye,styles:Oye}});var CF,A4,zye=N(()=>{"use strict";CF=function(){var t=o(function(l,u,h,f){for(h=h||{},f=l.length;f--;h[l[f]]=u);return h},"o"),e=[1,9],r=[1,10],n=[1,5,10,12],i={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:o(function(u,h,f,d,p,m,g){var y=m.length-1;switch(p){case 7:let x=d.findOrCreateNode(m[y-4].trim().replaceAll('""','"')),v=d.findOrCreateNode(m[y-2].trim().replaceAll('""','"')),b=parseFloat(m[y].trim());d.addLink(x,v,b);break;case 8:case 9:case 11:this.$=m[y];break;case 10:this.$=m[y-1];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:e,20:r},{1:[2,6],7:11,10:[1,12]},t(r,[2,4],{9:13,5:[1,14]}),{12:[1,15]},t(n,[2,8]),t(n,[2,9]),{19:[1,16]},t(n,[2,11]),{1:[2,1]},{1:[2,5]},t(r,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:e,20:r},{15:18,16:7,17:8,18:e,20:r},{18:[1,19]},t(r,[2,3]),{12:[1,20]},t(n,[2,10]),{15:21,16:7,17:8,18:e,20:r},t([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:o(function(u,h){if(h.recoverable)this.trace(u);else{var f=new Error(u);throw f.hash=h,f}},"parseError"),parse:o(function(u){var h=this,f=[0],d=[],p=[null],m=[],g=this.table,y="",x=0,v=0,b=0,T=2,S=1,w=m.slice.call(arguments,1),E=Object.create(this.lexer),_={yy:{}};for(var A in this.yy)Object.prototype.hasOwnProperty.call(this.yy,A)&&(_.yy[A]=this.yy[A]);E.setInput(u,_.yy),_.yy.lexer=E,_.yy.parser=this,typeof E.yylloc>"u"&&(E.yylloc={});var D=E.yylloc;m.push(D);var O=E.options&&E.options.ranges;typeof _.yy.parseError=="function"?this.parseError=_.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function R(j){f.length=f.length-2*j,p.length=p.length-j,m.length=m.length-j}o(R,"popStack");function k(){var j;return j=d.pop()||E.lex()||S,typeof j!="number"&&(j instanceof Array&&(d=j,j=d.pop()),j=h.symbols_[j]||j),j}o(k,"lex");for(var L,C,I,M,P,B,F={},G,$,U,K;;){if(I=f[f.length-1],this.defaultActions[I]?M=this.defaultActions[I]:((L===null||typeof L>"u")&&(L=k()),M=g[I]&&g[I][L]),typeof M>"u"||!M.length||!M[0]){var ne="";K=[];for(G in g[I])this.terminals_[G]&&G>T&&K.push("'"+this.terminals_[G]+"'");E.showPosition?ne="Parse error on line "+(x+1)+`:
|
||
`+E.showPosition()+`
|
||
Expecting `+K.join(", ")+", got '"+(this.terminals_[L]||L)+"'":ne="Parse error on line "+(x+1)+": Unexpected "+(L==S?"end of input":"'"+(this.terminals_[L]||L)+"'"),this.parseError(ne,{text:E.match,token:this.terminals_[L]||L,line:E.yylineno,loc:D,expected:K})}if(M[0]instanceof Array&&M.length>1)throw new Error("Parse Error: multiple actions possible at state: "+I+", token: "+L);switch(M[0]){case 1:f.push(L),p.push(E.yytext),m.push(E.yylloc),f.push(M[1]),L=null,C?(L=C,C=null):(v=E.yyleng,y=E.yytext,x=E.yylineno,D=E.yylloc,b>0&&b--);break;case 2:if($=this.productions_[M[1]][1],F.$=p[p.length-$],F._$={first_line:m[m.length-($||1)].first_line,last_line:m[m.length-1].last_line,first_column:m[m.length-($||1)].first_column,last_column:m[m.length-1].last_column},O&&(F._$.range=[m[m.length-($||1)].range[0],m[m.length-1].range[1]]),B=this.performAction.apply(F,[y,v,x,_.yy,M[1],p,m].concat(w)),typeof B<"u")return B;$&&(f=f.slice(0,-1*$*2),p=p.slice(0,-1*$),m=m.slice(0,-1*$)),f.push(this.productions_[M[1]][0]),p.push(F.$),m.push(F._$),U=g[f[f.length-2]][f[f.length-1]],f.push(U);break;case 3:return!0}}return!0},"parse")},a=function(){var l={EOF:1,parseError:o(function(h,f){if(this.yy.parser)this.yy.parser.parseError(h,f);else throw new Error(h)},"parseError"),setInput:o(function(u,h){return this.yy=h||this.yy||{},this._input=u,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},"setInput"),input:o(function(){var u=this._input[0];this.yytext+=u,this.yyleng++,this.offset++,this.match+=u,this.matched+=u;var h=u.match(/(?:\r\n?|\n).*/g);return h?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),u},"input"),unput:o(function(u){var h=u.length,f=u.split(/(?:\r\n?|\n)/g);this._input=u+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-h),this.offset-=h;var d=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),f.length-1&&(this.yylineno-=f.length-1);var p=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:f?(f.length===d.length?this.yylloc.first_column:0)+d[d.length-f.length].length-f[0].length:this.yylloc.first_column-h},this.options.ranges&&(this.yylloc.range=[p[0],p[0]+this.yyleng-h]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(u){this.unput(this.match.slice(u))},"less"),pastInput:o(function(){var u=this.matched.substr(0,this.matched.length-this.match.length);return(u.length>20?"...":"")+u.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var u=this.match;return u.length<20&&(u+=this._input.substr(0,20-u.length)),(u.substr(0,20)+(u.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var u=this.pastInput(),h=new Array(u.length+1).join("-");return u+this.upcomingInput()+`
|
||
`+h+"^"},"showPosition"),test_match:o(function(u,h){var f,d,p;if(this.options.backtrack_lexer&&(p={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&&(p.yylloc.range=this.yylloc.range.slice(0))),d=u[0].match(/(?:\r\n?|\n).*/g),d&&(this.yylineno+=d.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:d?d[d.length-1].length-d[d.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+u[0].length},this.yytext+=u[0],this.match+=u[0],this.matches=u,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(u[0].length),this.matched+=u[0],f=this.performAction.call(this,this.yy,this,h,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),f)return f;if(this._backtrack){for(var m in p)this[m]=p[m];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var u,h,f,d;this._more||(this.yytext="",this.match="");for(var p=this._currentRules(),m=0;m<p.length;m++)if(f=this._input.match(this.rules[p[m]]),f&&(!h||f[0].length>h[0].length)){if(h=f,d=m,this.options.backtrack_lexer){if(u=this.test_match(f,p[m]),u!==!1)return u;if(this._backtrack){h=!1;continue}else return!1}else if(!this.options.flex)break}return h?(u=this.test_match(h,p[d]),u!==!1?u:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var h=this.next();return h||this.lex()},"lex"),begin:o(function(h){this.conditionStack.push(h)},"begin"),popState:o(function(){var h=this.conditionStack.length-1;return h>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(h){return h=this.conditionStack.length-1-Math.abs(h||0),h>=0?this.conditionStack[h]:"INITIAL"},"topState"),pushState:o(function(h){this.begin(h)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(h,f,d,p){var m=p;switch(d){case 0:return this.pushState("csv"),4;break;case 1:return this.pushState("csv"),4;break;case 2:return 10;case 3:return 5;case 4:return 12;case 5:return this.pushState("escaped_text"),18;break;case 6:return 20;case 7:return this.popState("escaped_text"),18;break;case 8:return 19}},"anonymous"),rules:[/^(?:sankey-beta\b)/i,/^(?:sankey\b)/i,/^(?:$)/i,/^(?:((\u000D\u000A)|(\u000A)))/i,/^(?:(\u002C))/i,/^(?:(\u0022))/i,/^(?:([\u0020-\u0021\u0023-\u002B\u002D-\u007E])*)/i,/^(?:(\u0022)(?!(\u0022)))/i,/^(?:(([\u0020-\u0021\u0023-\u002B\u002D-\u007E])|(\u002C)|(\u000D)|(\u000A)|(\u0022)(\u0022))*)/i],conditions:{csv:{rules:[2,3,4,5,6,7,8],inclusive:!1},escaped_text:{rules:[7,8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8],inclusive:!0}}};return l}();i.lexer=a;function s(){this.yy={}}return o(s,"Parser"),s.prototype=i,i.Parser=s,new s}();CF.parser=CF;A4=CF});var xC,bC,vC,Ket,AF,Qet,_F,Zet,Jet,ett,ttt,Vye,Uye=N(()=>{"use strict";Xt();dr();ui();xC=[],bC=[],vC=new Map,Ket=o(()=>{xC=[],bC=[],vC=new Map,wr()},"clear"),AF=class{constructor(e,r,n=0){this.source=e;this.target=r;this.value=n}static{o(this,"SankeyLink")}},Qet=o((t,e,r)=>{xC.push(new AF(t,e,r))},"addLink"),_F=class{constructor(e){this.ID=e}static{o(this,"SankeyNode")}},Zet=o(t=>{t=Je.sanitizeText(t,ge());let e=vC.get(t);return e===void 0&&(e=new _F(t),vC.set(t,e),bC.push(e)),e},"findOrCreateNode"),Jet=o(()=>bC,"getNodes"),ett=o(()=>xC,"getLinks"),ttt=o(()=>({nodes:bC.map(t=>({id:t.ID})),links:xC.map(t=>({source:t.source.ID,target:t.target.ID,value:t.value}))}),"getGraph"),Vye={nodesMap:vC,getConfig:o(()=>ge().sankey,"getConfig"),getNodes:Jet,getLinks:ett,getGraph:ttt,addLink:Qet,findOrCreateNode:Zet,getAccTitle:_r,setAccTitle:Cr,getAccDescription:Lr,setAccDescription:Dr,getDiagramTitle:Rr,setDiagramTitle:Or,clear:Ket}});function _4(t,e){let r;if(e===void 0)for(let n of t)n!=null&&(r<n||r===void 0&&n>=n)&&(r=n);else{let n=-1;for(let i of t)(i=e(i,++n,t))!=null&&(r<i||r===void 0&&i>=i)&&(r=i)}return r}var Hye=N(()=>{"use strict";o(_4,"max")});function hy(t,e){let r;if(e===void 0)for(let n of t)n!=null&&(r>n||r===void 0&&n>=n)&&(r=n);else{let n=-1;for(let i of t)(i=e(i,++n,t))!=null&&(r>i||r===void 0&&i>=i)&&(r=i)}return r}var Wye=N(()=>{"use strict";o(hy,"min")});function fy(t,e){let r=0;if(e===void 0)for(let n of t)(n=+n)&&(r+=n);else{let n=-1;for(let i of t)(i=+e(i,++n,t))&&(r+=i)}return r}var qye=N(()=>{"use strict";o(fy,"sum")});var DF=N(()=>{"use strict";Hye();Wye();qye()});function rtt(t){return t.target.depth}function LF(t){return t.depth}function RF(t,e){return e-1-t.height}function D4(t,e){return t.sourceLinks.length?t.depth:e-1}function NF(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?hy(t.sourceLinks,rtt)-1:0}var MF=N(()=>{"use strict";DF();o(rtt,"targetDepth");o(LF,"left");o(RF,"right");o(D4,"justify");o(NF,"center")});function dy(t){return function(){return t}}var Yye=N(()=>{"use strict";o(dy,"constant")});function Xye(t,e){return TC(t.source,e.source)||t.index-e.index}function jye(t,e){return TC(t.target,e.target)||t.index-e.index}function TC(t,e){return t.y0-e.y0}function IF(t){return t.value}function ntt(t){return t.index}function itt(t){return t.nodes}function att(t){return t.links}function Kye(t,e){let r=t.get(e);if(!r)throw new Error("missing: "+e);return r}function Qye({nodes:t}){for(let e of t){let r=e.y0,n=r;for(let i of e.sourceLinks)i.y0=r+i.width/2,r+=i.width;for(let i of e.targetLinks)i.y1=n+i.width/2,n+=i.width}}function wC(){let t=0,e=0,r=1,n=1,i=24,a=8,s,l=ntt,u=D4,h,f,d=itt,p=att,m=6;function g(){let I={nodes:d.apply(null,arguments),links:p.apply(null,arguments)};return y(I),x(I),v(I),b(I),w(I),Qye(I),I}o(g,"sankey"),g.update=function(I){return Qye(I),I},g.nodeId=function(I){return arguments.length?(l=typeof I=="function"?I:dy(I),g):l},g.nodeAlign=function(I){return arguments.length?(u=typeof I=="function"?I:dy(I),g):u},g.nodeSort=function(I){return arguments.length?(h=I,g):h},g.nodeWidth=function(I){return arguments.length?(i=+I,g):i},g.nodePadding=function(I){return arguments.length?(a=s=+I,g):a},g.nodes=function(I){return arguments.length?(d=typeof I=="function"?I:dy(I),g):d},g.links=function(I){return arguments.length?(p=typeof I=="function"?I:dy(I),g):p},g.linkSort=function(I){return arguments.length?(f=I,g):f},g.size=function(I){return arguments.length?(t=e=0,r=+I[0],n=+I[1],g):[r-t,n-e]},g.extent=function(I){return arguments.length?(t=+I[0][0],r=+I[1][0],e=+I[0][1],n=+I[1][1],g):[[t,e],[r,n]]},g.iterations=function(I){return arguments.length?(m=+I,g):m};function y({nodes:I,links:M}){for(let[B,F]of I.entries())F.index=B,F.sourceLinks=[],F.targetLinks=[];let P=new Map(I.map((B,F)=>[l(B,F,I),B]));for(let[B,F]of M.entries()){F.index=B;let{source:G,target:$}=F;typeof G!="object"&&(G=F.source=Kye(P,G)),typeof $!="object"&&($=F.target=Kye(P,$)),G.sourceLinks.push(F),$.targetLinks.push(F)}if(f!=null)for(let{sourceLinks:B,targetLinks:F}of I)B.sort(f),F.sort(f)}o(y,"computeNodeLinks");function x({nodes:I}){for(let M of I)M.value=M.fixedValue===void 0?Math.max(fy(M.sourceLinks,IF),fy(M.targetLinks,IF)):M.fixedValue}o(x,"computeNodeValues");function v({nodes:I}){let M=I.length,P=new Set(I),B=new Set,F=0;for(;P.size;){for(let G of P){G.depth=F;for(let{target:$}of G.sourceLinks)B.add($)}if(++F>M)throw new Error("circular link");P=B,B=new Set}}o(v,"computeNodeDepths");function b({nodes:I}){let M=I.length,P=new Set(I),B=new Set,F=0;for(;P.size;){for(let G of P){G.height=F;for(let{source:$}of G.targetLinks)B.add($)}if(++F>M)throw new Error("circular link");P=B,B=new Set}}o(b,"computeNodeHeights");function T({nodes:I}){let M=_4(I,F=>F.depth)+1,P=(r-t-i)/(M-1),B=new Array(M);for(let F of I){let G=Math.max(0,Math.min(M-1,Math.floor(u.call(null,F,M))));F.layer=G,F.x0=t+G*P,F.x1=F.x0+i,B[G]?B[G].push(F):B[G]=[F]}if(h)for(let F of B)F.sort(h);return B}o(T,"computeNodeLayers");function S(I){let M=hy(I,P=>(n-e-(P.length-1)*s)/fy(P,IF));for(let P of I){let B=e;for(let F of P){F.y0=B,F.y1=B+F.value*M,B=F.y1+s;for(let G of F.sourceLinks)G.width=G.value*M}B=(n-B+s)/(P.length+1);for(let F=0;F<P.length;++F){let G=P[F];G.y0+=B*(F+1),G.y1+=B*(F+1)}k(P)}}o(S,"initializeNodeBreadths");function w(I){let M=T(I);s=Math.min(a,(n-e)/(_4(M,P=>P.length)-1)),S(M);for(let P=0;P<m;++P){let B=Math.pow(.99,P),F=Math.max(1-B,(P+1)/m);_(M,B,F),E(M,B,F)}}o(w,"computeNodeBreadths");function E(I,M,P){for(let B=1,F=I.length;B<F;++B){let G=I[B];for(let $ of G){let U=0,K=0;for(let{source:j,value:le}of $.targetLinks){let Z=le*($.layer-j.layer);U+=L(j,$)*Z,K+=Z}if(!(K>0))continue;let ne=(U/K-$.y0)*M;$.y0+=ne,$.y1+=ne,R($)}h===void 0&&G.sort(TC),A(G,P)}}o(E,"relaxLeftToRight");function _(I,M,P){for(let B=I.length,F=B-2;F>=0;--F){let G=I[F];for(let $ of G){let U=0,K=0;for(let{target:j,value:le}of $.sourceLinks){let Z=le*(j.layer-$.layer);U+=C($,j)*Z,K+=Z}if(!(K>0))continue;let ne=(U/K-$.y0)*M;$.y0+=ne,$.y1+=ne,R($)}h===void 0&&G.sort(TC),A(G,P)}}o(_,"relaxRightToLeft");function A(I,M){let P=I.length>>1,B=I[P];O(I,B.y0-s,P-1,M),D(I,B.y1+s,P+1,M),O(I,n,I.length-1,M),D(I,e,0,M)}o(A,"resolveCollisions");function D(I,M,P,B){for(;P<I.length;++P){let F=I[P],G=(M-F.y0)*B;G>1e-6&&(F.y0+=G,F.y1+=G),M=F.y1+s}}o(D,"resolveCollisionsTopToBottom");function O(I,M,P,B){for(;P>=0;--P){let F=I[P],G=(F.y1-M)*B;G>1e-6&&(F.y0-=G,F.y1-=G),M=F.y0-s}}o(O,"resolveCollisionsBottomToTop");function R({sourceLinks:I,targetLinks:M}){if(f===void 0){for(let{source:{sourceLinks:P}}of M)P.sort(jye);for(let{target:{targetLinks:P}}of I)P.sort(Xye)}}o(R,"reorderNodeLinks");function k(I){if(f===void 0)for(let{sourceLinks:M,targetLinks:P}of I)M.sort(jye),P.sort(Xye)}o(k,"reorderLinks");function L(I,M){let P=I.y0-(I.sourceLinks.length-1)*s/2;for(let{target:B,width:F}of I.sourceLinks){if(B===M)break;P+=F+s}for(let{source:B,width:F}of M.targetLinks){if(B===I)break;P-=F}return P}o(L,"targetTop");function C(I,M){let P=M.y0-(M.targetLinks.length-1)*s/2;for(let{source:B,width:F}of M.targetLinks){if(B===I)break;P+=F+s}for(let{target:B,width:F}of I.sourceLinks){if(B===M)break;P-=F}return P}return o(C,"sourceTop"),g}var Zye=N(()=>{"use strict";DF();MF();Yye();o(Xye,"ascendingSourceBreadth");o(jye,"ascendingTargetBreadth");o(TC,"ascendingBreadth");o(IF,"value");o(ntt,"defaultId");o(itt,"defaultNodes");o(att,"defaultLinks");o(Kye,"find");o(Qye,"computeLinkBreadths");o(wC,"Sankey")});function BF(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function Jye(){return new BF}var OF,PF,l0,stt,FF,eve=N(()=>{"use strict";OF=Math.PI,PF=2*OF,l0=1e-6,stt=PF-l0;o(BF,"Path");o(Jye,"path");BF.prototype=Jye.prototype={constructor:BF,moveTo:o(function(t,e){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)},"moveTo"),closePath:o(function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},"closePath"),lineTo:o(function(t,e){this._+="L"+(this._x1=+t)+","+(this._y1=+e)},"lineTo"),quadraticCurveTo:o(function(t,e,r,n){this._+="Q"+ +t+","+ +e+","+(this._x1=+r)+","+(this._y1=+n)},"quadraticCurveTo"),bezierCurveTo:o(function(t,e,r,n,i,a){this._+="C"+ +t+","+ +e+","+ +r+","+ +n+","+(this._x1=+i)+","+(this._y1=+a)},"bezierCurveTo"),arcTo:o(function(t,e,r,n,i){t=+t,e=+e,r=+r,n=+n,i=+i;var a=this._x1,s=this._y1,l=r-t,u=n-e,h=a-t,f=s-e,d=h*h+f*f;if(i<0)throw new Error("negative radius: "+i);if(this._x1===null)this._+="M"+(this._x1=t)+","+(this._y1=e);else if(d>l0)if(!(Math.abs(f*l-u*h)>l0)||!i)this._+="L"+(this._x1=t)+","+(this._y1=e);else{var p=r-a,m=n-s,g=l*l+u*u,y=p*p+m*m,x=Math.sqrt(g),v=Math.sqrt(d),b=i*Math.tan((OF-Math.acos((g+d-y)/(2*x*v)))/2),T=b/v,S=b/x;Math.abs(T-1)>l0&&(this._+="L"+(t+T*h)+","+(e+T*f)),this._+="A"+i+","+i+",0,0,"+ +(f*p>h*m)+","+(this._x1=t+S*l)+","+(this._y1=e+S*u)}},"arcTo"),arc:o(function(t,e,r,n,i,a){t=+t,e=+e,r=+r,a=!!a;var s=r*Math.cos(n),l=r*Math.sin(n),u=t+s,h=e+l,f=1^a,d=a?n-i:i-n;if(r<0)throw new Error("negative radius: "+r);this._x1===null?this._+="M"+u+","+h:(Math.abs(this._x1-u)>l0||Math.abs(this._y1-h)>l0)&&(this._+="L"+u+","+h),r&&(d<0&&(d=d%PF+PF),d>stt?this._+="A"+r+","+r+",0,1,"+f+","+(t-s)+","+(e-l)+"A"+r+","+r+",0,1,"+f+","+(this._x1=u)+","+(this._y1=h):d>l0&&(this._+="A"+r+","+r+",0,"+ +(d>=OF)+","+f+","+(this._x1=t+r*Math.cos(i))+","+(this._y1=e+r*Math.sin(i))))},"arc"),rect:o(function(t,e,r,n){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)+"h"+ +r+"v"+ +n+"h"+-r+"Z"},"rect"),toString:o(function(){return this._},"toString")};FF=Jye});var tve=N(()=>{"use strict";eve()});function kC(t){return o(function(){return t},"constant")}var rve=N(()=>{"use strict";o(kC,"default")});function nve(t){return t[0]}function ive(t){return t[1]}var ave=N(()=>{"use strict";o(nve,"x");o(ive,"y")});var sve,ove=N(()=>{"use strict";sve=Array.prototype.slice});function ott(t){return t.source}function ltt(t){return t.target}function ctt(t){var e=ott,r=ltt,n=nve,i=ive,a=null;function s(){var l,u=sve.call(arguments),h=e.apply(this,u),f=r.apply(this,u);if(a||(a=l=FF()),t(a,+n.apply(this,(u[0]=h,u)),+i.apply(this,u),+n.apply(this,(u[0]=f,u)),+i.apply(this,u)),l)return a=null,l+""||null}return o(s,"link"),s.source=function(l){return arguments.length?(e=l,s):e},s.target=function(l){return arguments.length?(r=l,s):r},s.x=function(l){return arguments.length?(n=typeof l=="function"?l:kC(+l),s):n},s.y=function(l){return arguments.length?(i=typeof l=="function"?l:kC(+l),s):i},s.context=function(l){return arguments.length?(a=l??null,s):a},s}function utt(t,e,r,n,i){t.moveTo(e,r),t.bezierCurveTo(e=(e+n)/2,r,e,i,n,i)}function $F(){return ctt(utt)}var lve=N(()=>{"use strict";tve();ove();rve();ave();o(ott,"linkSource");o(ltt,"linkTarget");o(ctt,"link");o(utt,"curveHorizontal");o($F,"linkHorizontal")});var cve=N(()=>{"use strict";lve()});function htt(t){return[t.source.x1,t.y0]}function ftt(t){return[t.target.x0,t.y1]}function EC(){return $F().source(htt).target(ftt)}var uve=N(()=>{"use strict";cve();o(htt,"horizontalSource");o(ftt,"horizontalTarget");o(EC,"default")});var hve=N(()=>{"use strict";Zye();MF();uve()});var L4,fve=N(()=>{"use strict";L4=class t{static{o(this,"Uid")}static{this.count=0}static next(e){return new t(e+ ++t.count)}constructor(e){this.id=e,this.href=`#${e}`}toString(){return"url("+this.href+")"}}});var dtt,ptt,dve,pve=N(()=>{"use strict";Xt();pr();hve();Ci();fve();dtt={left:LF,right:RF,center:NF,justify:D4},ptt=o(function(t,e,r,n){let{securityLevel:i,sankey:a}=ge(),s=G3.sankey,l;i==="sandbox"&&(l=ze("#i"+e));let u=i==="sandbox"?ze(l.nodes()[0].contentDocument.body):ze("body"),h=i==="sandbox"?u.select(`[id="${e}"]`):ze(`[id="${e}"]`),f=a?.width??s.width,d=a?.height??s.width,p=a?.useMaxWidth??s.useMaxWidth,m=a?.nodeAlignment??s.nodeAlignment,g=a?.prefix??s.prefix,y=a?.suffix??s.suffix,x=a?.showValues??s.showValues,v=n.db.getGraph(),b=dtt[m];wC().nodeId(O=>O.id).nodeWidth(10).nodePadding(10+(x?15:0)).nodeAlign(b).extent([[0,0],[f,d]])(v);let w=eo(zD);h.append("g").attr("class","nodes").selectAll(".node").data(v.nodes).join("g").attr("class","node").attr("id",O=>(O.uid=L4.next("node-")).id).attr("transform",function(O){return"translate("+O.x0+","+O.y0+")"}).attr("x",O=>O.x0).attr("y",O=>O.y0).append("rect").attr("height",O=>O.y1-O.y0).attr("width",O=>O.x1-O.x0).attr("fill",O=>w(O.id));let E=o(({id:O,value:R})=>x?`${O}
|
||
${g}${Math.round(R*100)/100}${y}`:O,"getText");h.append("g").attr("class","node-labels").attr("font-size",14).selectAll("text").data(v.nodes).join("text").attr("x",O=>O.x0<f/2?O.x1+6:O.x0-6).attr("y",O=>(O.y1+O.y0)/2).attr("dy",`${x?"0":"0.35"}em`).attr("text-anchor",O=>O.x0<f/2?"start":"end").text(E);let _=h.append("g").attr("class","links").attr("fill","none").attr("stroke-opacity",.5).selectAll(".link").data(v.links).join("g").attr("class","link").style("mix-blend-mode","multiply"),A=a?.linkColor??"gradient";if(A==="gradient"){let O=_.append("linearGradient").attr("id",R=>(R.uid=L4.next("linearGradient-")).id).attr("gradientUnits","userSpaceOnUse").attr("x1",R=>R.source.x1).attr("x2",R=>R.target.x0);O.append("stop").attr("offset","0%").attr("stop-color",R=>w(R.source.id)),O.append("stop").attr("offset","100%").attr("stop-color",R=>w(R.target.id))}let D;switch(A){case"gradient":D=o(O=>O.uid,"coloring");break;case"source":D=o(O=>w(O.source.id),"coloring");break;case"target":D=o(O=>w(O.target.id),"coloring");break;default:D=A}_.append("path").attr("d",EC()).attr("stroke",D).attr("stroke-width",O=>Math.max(1,O.width)),nc(void 0,h,0,p)},"draw"),dve={draw:ptt}});var mve,gve=N(()=>{"use strict";mve=o(t=>t.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,`
|
||
`).trim(),"prepareTextForParsing")});var mtt,yve,vve=N(()=>{"use strict";mtt=o(t=>`.label {
|
||
font-family: ${t.fontFamily};
|
||
}`,"getStyles"),yve=mtt});var xve={};ur(xve,{diagram:()=>ytt});var gtt,ytt,bve=N(()=>{"use strict";zye();Uye();pve();gve();vve();gtt=A4.parse.bind(A4);A4.parse=t=>gtt(mve(t));ytt={styles:yve,parser:A4,db:Vye,renderer:dve}});var Ttt,py,GF=N(()=>{"use strict";Wn();_a();tr();ui();Ttt=lr.packet,py=class{constructor(){this.packet=[];this.setAccTitle=Cr;this.getAccTitle=_r;this.setDiagramTitle=Or;this.getDiagramTitle=Rr;this.getAccDescription=Lr;this.setAccDescription=Dr}static{o(this,"PacketDB")}getConfig(){let e=Vn({...Ttt,...Qt().packet});return e.showBits&&(e.paddingY+=10),e}getPacket(){return this.packet}pushWord(e){e.length>0&&this.packet.push(e)}clear(){wr(),this.packet=[]}}});var wtt,ktt,Ett,zF,kve=N(()=>{"use strict";Ff();pt();Zp();GF();wtt=1e4,ktt=o((t,e)=>{nl(t,e);let r=-1,n=[],i=1,{bitsPerRow:a}=e.getConfig();for(let{start:s,end:l,bits:u,label:h}of t.blocks){if(s!==void 0&&l!==void 0&&l<s)throw new Error(`Packet block ${s} - ${l} is invalid. End must be greater than start.`);if(s??=r+1,s!==r+1)throw new Error(`Packet block ${s} - ${l??s} is not contiguous. It should start from ${r+1}.`);if(u===0)throw new Error(`Packet block ${s} is invalid. Cannot have a zero bit field.`);for(l??=s+(u??1)-1,u??=l-s+1,r=l,X.debug(`Packet block ${s} - ${r} with label ${h}`);n.length<=a+1&&e.getPacket().length<wtt;){let[f,d]=Ett({start:s,end:l,bits:u,label:h},i,a);if(n.push(f),f.end+1===i*a&&(e.pushWord(n),n=[],i++),!d)break;({start:s,end:l,bits:u,label:h}=d)}}e.pushWord(n)},"populate"),Ett=o((t,e,r)=>{if(t.start===void 0)throw new Error("start should have been set during first phase");if(t.end===void 0)throw new Error("end should have been set during first phase");if(t.start>t.end)throw new Error(`Block start ${t.start} is greater than block end ${t.end}.`);if(t.end+1<=e*r)return[t,void 0];let n=e*r-1,i=e*r;return[{start:t.start,end:n,label:t.label,bits:n-t.start},{start:i,end:t.end,label:t.label,bits:t.end-i}]},"getNextFittingBlock"),zF={parser:{yy:void 0},parse:o(async t=>{let e=await xs("packet",t),r=zF.parser?.yy;if(!(r instanceof py))throw new Error("parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");X.debug(e),ktt(e,r)},"parse")}});var Stt,Ctt,Eve,Sve=N(()=>{"use strict";Jc();Ci();Stt=o((t,e,r,n)=>{let i=n.db,a=i.getConfig(),{rowHeight:s,paddingY:l,bitWidth:u,bitsPerRow:h}=a,f=i.getPacket(),d=i.getDiagramTitle(),p=s+l,m=p*(f.length+1)-(d?0:s),g=u*h+2,y=aa(e);y.attr("viewbox",`0 0 ${g} ${m}`),fn(y,m,g,a.useMaxWidth);for(let[x,v]of f.entries())Ctt(y,v,x,a);y.append("text").text(d).attr("x",g/2).attr("y",m-p/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),Ctt=o((t,e,r,{rowHeight:n,paddingX:i,paddingY:a,bitWidth:s,bitsPerRow:l,showBits:u})=>{let h=t.append("g"),f=r*(n+a)+a;for(let d of e){let p=d.start%l*s+1,m=(d.end-d.start+1)*s-i;if(h.append("rect").attr("x",p).attr("y",f).attr("width",m).attr("height",n).attr("class","packetBlock"),h.append("text").attr("x",p+m/2).attr("y",f+n/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(d.label),!u)continue;let g=d.end===d.start,y=f-2;h.append("text").attr("x",p+(g?m/2:0)).attr("y",y).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",g?"middle":"start").text(d.start),g||h.append("text").attr("x",p+m).attr("y",y).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(d.end)}},"drawWord"),Eve={draw:Stt}});var Att,Cve,Ave=N(()=>{"use strict";tr();Att={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},Cve=o(({packet:t}={})=>{let e=Vn(Att,t);return`
|
||
.packetByte {
|
||
font-size: ${e.byteFontSize};
|
||
}
|
||
.packetByte.start {
|
||
fill: ${e.startByteColor};
|
||
}
|
||
.packetByte.end {
|
||
fill: ${e.endByteColor};
|
||
}
|
||
.packetLabel {
|
||
fill: ${e.labelColor};
|
||
font-size: ${e.labelFontSize};
|
||
}
|
||
.packetTitle {
|
||
fill: ${e.titleColor};
|
||
font-size: ${e.titleFontSize};
|
||
}
|
||
.packetBlock {
|
||
stroke: ${e.blockStrokeColor};
|
||
stroke-width: ${e.blockStrokeWidth};
|
||
fill: ${e.blockFillColor};
|
||
}
|
||
`},"styles")});var _ve={};ur(_ve,{diagram:()=>_tt});var _tt,Dve=N(()=>{"use strict";GF();kve();Sve();Ave();_tt={parser:zF,get db(){return new py},renderer:Eve,styles:Cve}});var my,Nve,c0,Rtt,Ntt,Mve,Mtt,Itt,Ott,Ptt,Btt,Ftt,$tt,u0,VF=N(()=>{"use strict";Wn();_a();tr();ui();my={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},Nve={axes:[],curves:[],options:my},c0=structuredClone(Nve),Rtt=lr.radar,Ntt=o(()=>Vn({...Rtt,...Qt().radar}),"getConfig"),Mve=o(()=>c0.axes,"getAxes"),Mtt=o(()=>c0.curves,"getCurves"),Itt=o(()=>c0.options,"getOptions"),Ott=o(t=>{c0.axes=t.map(e=>({name:e.name,label:e.label??e.name}))},"setAxes"),Ptt=o(t=>{c0.curves=t.map(e=>({name:e.name,label:e.label??e.name,entries:Btt(e.entries)}))},"setCurves"),Btt=o(t=>{if(t[0].axis==null)return t.map(r=>r.value);let e=Mve();if(e.length===0)throw new Error("Axes must be populated before curves for reference entries");return e.map(r=>{let n=t.find(i=>i.axis?.$refText===r.name);if(n===void 0)throw new Error("Missing entry for axis "+r.label);return n.value})},"computeCurveEntries"),Ftt=o(t=>{let e=t.reduce((r,n)=>(r[n.name]=n,r),{});c0.options={showLegend:e.showLegend?.value??my.showLegend,ticks:e.ticks?.value??my.ticks,max:e.max?.value??my.max,min:e.min?.value??my.min,graticule:e.graticule?.value??my.graticule}},"setOptions"),$tt=o(()=>{wr(),c0=structuredClone(Nve)},"clear"),u0={getAxes:Mve,getCurves:Mtt,getOptions:Itt,setAxes:Ott,setCurves:Ptt,setOptions:Ftt,getConfig:Ntt,clear:$tt,setAccTitle:Cr,getAccTitle:_r,setDiagramTitle:Or,getDiagramTitle:Rr,getAccDescription:Lr,setAccDescription:Dr}});var Gtt,Ive,Ove=N(()=>{"use strict";Ff();pt();Zp();VF();Gtt=o(t=>{nl(t,u0);let{axes:e,curves:r,options:n}=t;u0.setAxes(e),u0.setCurves(r),u0.setOptions(n)},"populate"),Ive={parse:o(async t=>{let e=await xs("radar",t);X.debug(e),Gtt(e)},"parse")}});function Wtt(t,e,r,n,i,a,s){let l=e.length,u=Math.min(s.width,s.height)/2;r.forEach((h,f)=>{if(h.entries.length!==l)return;let d=h.entries.map((p,m)=>{let g=2*Math.PI*m/l-Math.PI/2,y=qtt(p,n,i,u),x=y*Math.cos(g),v=y*Math.sin(g);return{x,y:v}});a==="circle"?t.append("path").attr("d",Ytt(d,s.curveTension)).attr("class",`radarCurve-${f}`):a==="polygon"&&t.append("polygon").attr("points",d.map(p=>`${p.x},${p.y}`).join(" ")).attr("class",`radarCurve-${f}`)})}function qtt(t,e,r,n){let i=Math.min(Math.max(t,e),r);return n*(i-e)/(r-e)}function Ytt(t,e){let r=t.length,n=`M${t[0].x},${t[0].y}`;for(let i=0;i<r;i++){let a=t[(i-1+r)%r],s=t[i],l=t[(i+1)%r],u=t[(i+2)%r],h={x:s.x+(l.x-a.x)*e,y:s.y+(l.y-a.y)*e},f={x:l.x-(u.x-s.x)*e,y:l.y-(u.y-s.y)*e};n+=` C${h.x},${h.y} ${f.x},${f.y} ${l.x},${l.y}`}return`${n} Z`}function Xtt(t,e,r,n){if(!r)return;let i=(n.width/2+n.marginRight)*3/4,a=-(n.height/2+n.marginTop)*3/4,s=20;e.forEach((l,u)=>{let h=t.append("g").attr("transform",`translate(${i}, ${a+u*s})`);h.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${u}`),h.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(l.label)})}var ztt,Vtt,Utt,Htt,Pve,Bve=N(()=>{"use strict";Jc();ztt=o((t,e,r,n)=>{let i=n.db,a=i.getAxes(),s=i.getCurves(),l=i.getOptions(),u=i.getConfig(),h=i.getDiagramTitle(),f=aa(e),d=Vtt(f,u),p=l.max??Math.max(...s.map(y=>Math.max(...y.entries))),m=l.min,g=Math.min(u.width,u.height)/2;Utt(d,a,g,l.ticks,l.graticule),Htt(d,a,g,u),Wtt(d,a,s,m,p,l.graticule,u),Xtt(d,s,l.showLegend,u),d.append("text").attr("class","radarTitle").text(h).attr("x",0).attr("y",-u.height/2-u.marginTop)},"draw"),Vtt=o((t,e)=>{let r=e.width+e.marginLeft+e.marginRight,n=e.height+e.marginTop+e.marginBottom,i={x:e.marginLeft+e.width/2,y:e.marginTop+e.height/2};return t.attr("viewbox",`0 0 ${r} ${n}`).attr("width",r).attr("height",n),t.append("g").attr("transform",`translate(${i.x}, ${i.y})`)},"drawFrame"),Utt=o((t,e,r,n,i)=>{if(i==="circle")for(let a=0;a<n;a++){let s=r*(a+1)/n;t.append("circle").attr("r",s).attr("class","radarGraticule")}else if(i==="polygon"){let a=e.length;for(let s=0;s<n;s++){let l=r*(s+1)/n,u=e.map((h,f)=>{let d=2*f*Math.PI/a-Math.PI/2,p=l*Math.cos(d),m=l*Math.sin(d);return`${p},${m}`}).join(" ");t.append("polygon").attr("points",u).attr("class","radarGraticule")}}},"drawGraticule"),Htt=o((t,e,r,n)=>{let i=e.length;for(let a=0;a<i;a++){let s=e[a].label,l=2*a*Math.PI/i-Math.PI/2;t.append("line").attr("x1",0).attr("y1",0).attr("x2",r*n.axisScaleFactor*Math.cos(l)).attr("y2",r*n.axisScaleFactor*Math.sin(l)).attr("class","radarAxisLine"),t.append("text").text(s).attr("x",r*n.axisLabelFactor*Math.cos(l)).attr("y",r*n.axisLabelFactor*Math.sin(l)).attr("class","radarAxisLabel")}},"drawAxes");o(Wtt,"drawCurves");o(qtt,"relativeRadius");o(Ytt,"closedRoundCurve");o(Xtt,"drawLegend");Pve={draw:ztt}});var jtt,Ktt,Fve,$ve=N(()=>{"use strict";tr();My();Wn();jtt=o((t,e)=>{let r="";for(let n=0;n<t.THEME_COLOR_LIMIT;n++){let i=t[`cScale${n}`];r+=`
|
||
.radarCurve-${n} {
|
||
color: ${i};
|
||
fill: ${i};
|
||
fill-opacity: ${e.curveOpacity};
|
||
stroke: ${i};
|
||
stroke-width: ${e.curveStrokeWidth};
|
||
}
|
||
.radarLegendBox-${n} {
|
||
fill: ${i};
|
||
fill-opacity: ${e.curveOpacity};
|
||
stroke: ${i};
|
||
}
|
||
`}return r},"genIndexStyles"),Ktt=o(t=>{let e=fh(),r=Qt(),n=Vn(e,r.themeVariables),i=Vn(n.radar,t);return{themeVariables:n,radarOptions:i}},"buildRadarStyleOptions"),Fve=o(({radar:t}={})=>{let{themeVariables:e,radarOptions:r}=Ktt(t);return`
|
||
.radarTitle {
|
||
font-size: ${e.fontSize};
|
||
color: ${e.titleColor};
|
||
dominant-baseline: hanging;
|
||
text-anchor: middle;
|
||
}
|
||
.radarAxisLine {
|
||
stroke: ${r.axisColor};
|
||
stroke-width: ${r.axisStrokeWidth};
|
||
}
|
||
.radarAxisLabel {
|
||
dominant-baseline: middle;
|
||
text-anchor: middle;
|
||
font-size: ${r.axisLabelFontSize}px;
|
||
color: ${r.axisColor};
|
||
}
|
||
.radarGraticule {
|
||
fill: ${r.graticuleColor};
|
||
fill-opacity: ${r.graticuleOpacity};
|
||
stroke: ${r.graticuleColor};
|
||
stroke-width: ${r.graticuleStrokeWidth};
|
||
}
|
||
.radarLegendText {
|
||
text-anchor: start;
|
||
font-size: ${r.legendFontSize}px;
|
||
dominant-baseline: hanging;
|
||
}
|
||
${jtt(e,r)}
|
||
`},"styles")});var Gve={};ur(Gve,{diagram:()=>Qtt});var Qtt,zve=N(()=>{"use strict";VF();Ove();Bve();$ve();Qtt={parser:Ive,db:u0,renderer:Pve,styles:Fve}});var UF,Hve,Wve=N(()=>{"use strict";UF=function(){var t=o(function(T,S,w,E){for(w=w||{},E=T.length;E--;w[T[E]]=S);return w},"o"),e=[1,15],r=[1,7],n=[1,13],i=[1,14],a=[1,19],s=[1,16],l=[1,17],u=[1,18],h=[8,30],f=[8,10,21,28,29,30,31,39,43,46],d=[1,23],p=[1,24],m=[8,10,15,16,21,28,29,30,31,39,43,46],g=[8,10,15,16,21,27,28,29,30,31,39,43,46],y=[1,49],x={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,NODE_ID:31,nodeShapeNLabel:32,dirList:33,DIR:34,NODE_DSTART:35,NODE_DEND:36,BLOCK_ARROW_START:37,BLOCK_ARROW_END:38,classDef:39,CLASSDEF_ID:40,CLASSDEF_STYLEOPTS:41,DEFAULT:42,class:43,CLASSENTITY_IDS:44,STYLECLASS:45,style:46,STYLE_ENTITY_IDS:47,STYLE_DEFINITION_DATA:48,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"NODE_ID",34:"DIR",35:"NODE_DSTART",36:"NODE_DEND",37:"BLOCK_ARROW_START",38:"BLOCK_ARROW_END",39:"classDef",40:"CLASSDEF_ID",41:"CLASSDEF_STYLEOPTS",42:"DEFAULT",43:"class",44:"CLASSENTITY_IDS",45:"STYLECLASS",46:"style",47:"STYLE_ENTITY_IDS",48:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[33,1],[33,2],[32,3],[32,4],[23,3],[23,3],[24,3],[25,3]],performAction:o(function(S,w,E,_,A,D,O){var R=D.length-1;switch(A){case 4:_.getLogger().debug("Rule: separator (NL) ");break;case 5:_.getLogger().debug("Rule: separator (Space) ");break;case 6:_.getLogger().debug("Rule: separator (EOF) ");break;case 7:_.getLogger().debug("Rule: hierarchy: ",D[R-1]),_.setHierarchy(D[R-1]);break;case 8:_.getLogger().debug("Stop NL ");break;case 9:_.getLogger().debug("Stop EOF ");break;case 10:_.getLogger().debug("Stop NL2 ");break;case 11:_.getLogger().debug("Stop EOF2 ");break;case 12:_.getLogger().debug("Rule: statement: ",D[R]),typeof D[R].length=="number"?this.$=D[R]:this.$=[D[R]];break;case 13:_.getLogger().debug("Rule: statement #2: ",D[R-1]),this.$=[D[R-1]].concat(D[R]);break;case 14:_.getLogger().debug("Rule: link: ",D[R],S),this.$={edgeTypeStr:D[R],label:""};break;case 15:_.getLogger().debug("Rule: LABEL link: ",D[R-3],D[R-1],D[R]),this.$={edgeTypeStr:D[R],label:D[R-1]};break;case 18:let k=parseInt(D[R]),L=_.generateId();this.$={id:L,type:"space",label:"",width:k,children:[]};break;case 23:_.getLogger().debug("Rule: (nodeStatement link node) ",D[R-2],D[R-1],D[R]," typestr: ",D[R-1].edgeTypeStr);let C=_.edgeStrToEdgeData(D[R-1].edgeTypeStr);this.$=[{id:D[R-2].id,label:D[R-2].label,type:D[R-2].type,directions:D[R-2].directions},{id:D[R-2].id+"-"+D[R].id,start:D[R-2].id,end:D[R].id,label:D[R-1].label,type:"edge",directions:D[R].directions,arrowTypeEnd:C,arrowTypeStart:"arrow_open"},{id:D[R].id,label:D[R].label,type:_.typeStr2Type(D[R].typeStr),directions:D[R].directions}];break;case 24:_.getLogger().debug("Rule: nodeStatement (abc88 node size) ",D[R-1],D[R]),this.$={id:D[R-1].id,label:D[R-1].label,type:_.typeStr2Type(D[R-1].typeStr),directions:D[R-1].directions,widthInColumns:parseInt(D[R],10)};break;case 25:_.getLogger().debug("Rule: nodeStatement (node) ",D[R]),this.$={id:D[R].id,label:D[R].label,type:_.typeStr2Type(D[R].typeStr),directions:D[R].directions,widthInColumns:1};break;case 26:_.getLogger().debug("APA123",this?this:"na"),_.getLogger().debug("COLUMNS: ",D[R]),this.$={type:"column-setting",columns:D[R]==="auto"?-1:parseInt(D[R])};break;case 27:_.getLogger().debug("Rule: id-block statement : ",D[R-2],D[R-1]);let I=_.generateId();this.$={...D[R-2],type:"composite",children:D[R-1]};break;case 28:_.getLogger().debug("Rule: blockStatement : ",D[R-2],D[R-1],D[R]);let M=_.generateId();this.$={id:M,type:"composite",label:"",children:D[R-1]};break;case 29:_.getLogger().debug("Rule: node (NODE_ID separator): ",D[R]),this.$={id:D[R]};break;case 30:_.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",D[R-1],D[R]),this.$={id:D[R-1],label:D[R].label,typeStr:D[R].typeStr,directions:D[R].directions};break;case 31:_.getLogger().debug("Rule: dirList: ",D[R]),this.$=[D[R]];break;case 32:_.getLogger().debug("Rule: dirList: ",D[R-1],D[R]),this.$=[D[R-1]].concat(D[R]);break;case 33:_.getLogger().debug("Rule: nodeShapeNLabel: ",D[R-2],D[R-1],D[R]),this.$={typeStr:D[R-2]+D[R],label:D[R-1]};break;case 34:_.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",D[R-3],D[R-2]," #3:",D[R-1],D[R]),this.$={typeStr:D[R-3]+D[R],label:D[R-2],directions:D[R-1]};break;case 35:case 36:this.$={type:"classDef",id:D[R-1].trim(),css:D[R].trim()};break;case 37:this.$={type:"applyClass",id:D[R-1].trim(),styleClass:D[R].trim()};break;case 38:this.$={type:"applyStyles",id:D[R-1].trim(),stylesStr:D[R].trim()};break}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{10:e,11:3,13:4,19:5,20:6,21:r,22:8,23:9,24:10,25:11,26:12,28:n,29:i,31:a,39:s,43:l,46:u},{8:[1,20]},t(h,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,10:e,21:r,28:n,29:i,31:a,39:s,43:l,46:u}),t(f,[2,16],{14:22,15:d,16:p}),t(f,[2,17]),t(f,[2,18]),t(f,[2,19]),t(f,[2,20]),t(f,[2,21]),t(f,[2,22]),t(m,[2,25],{27:[1,25]}),t(f,[2,26]),{19:26,26:12,31:a},{10:e,11:27,13:4,19:5,20:6,21:r,22:8,23:9,24:10,25:11,26:12,28:n,29:i,31:a,39:s,43:l,46:u},{40:[1,28],42:[1,29]},{44:[1,30]},{47:[1,31]},t(g,[2,29],{32:32,35:[1,33],37:[1,34]}),{1:[2,7]},t(h,[2,13]),{26:35,31:a},{31:[2,14]},{17:[1,36]},t(m,[2,24]),{10:e,11:37,13:4,14:22,15:d,16:p,19:5,20:6,21:r,22:8,23:9,24:10,25:11,26:12,28:n,29:i,31:a,39:s,43:l,46:u},{30:[1,38]},{41:[1,39]},{41:[1,40]},{45:[1,41]},{48:[1,42]},t(g,[2,30]),{18:[1,43]},{18:[1,44]},t(m,[2,23]),{18:[1,45]},{30:[1,46]},t(f,[2,28]),t(f,[2,35]),t(f,[2,36]),t(f,[2,37]),t(f,[2,38]),{36:[1,47]},{33:48,34:y},{15:[1,50]},t(f,[2,27]),t(g,[2,33]),{38:[1,51]},{33:52,34:y,38:[2,31]},{31:[2,15]},t(g,[2,34]),{38:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:o(function(S,w){if(w.recoverable)this.trace(S);else{var E=new Error(S);throw E.hash=w,E}},"parseError"),parse:o(function(S){var w=this,E=[0],_=[],A=[null],D=[],O=this.table,R="",k=0,L=0,C=0,I=2,M=1,P=D.slice.call(arguments,1),B=Object.create(this.lexer),F={yy:{}};for(var G in this.yy)Object.prototype.hasOwnProperty.call(this.yy,G)&&(F.yy[G]=this.yy[G]);B.setInput(S,F.yy),F.yy.lexer=B,F.yy.parser=this,typeof B.yylloc>"u"&&(B.yylloc={});var $=B.yylloc;D.push($);var U=B.options&&B.options.ranges;typeof F.yy.parseError=="function"?this.parseError=F.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function K(Se){E.length=E.length-2*Se,A.length=A.length-Se,D.length=D.length-Se}o(K,"popStack");function ne(){var Se;return Se=_.pop()||B.lex()||M,typeof Se!="number"&&(Se instanceof Array&&(_=Se,Se=_.pop()),Se=w.symbols_[Se]||Se),Se}o(ne,"lex");for(var j,le,Z,ce,Q,ee,te={},re,he,J,ye;;){if(Z=E[E.length-1],this.defaultActions[Z]?ce=this.defaultActions[Z]:((j===null||typeof j>"u")&&(j=ne()),ce=O[Z]&&O[Z][j]),typeof ce>"u"||!ce.length||!ce[0]){var se="";ye=[];for(re in O[Z])this.terminals_[re]&&re>I&&ye.push("'"+this.terminals_[re]+"'");B.showPosition?se="Parse error on line "+(k+1)+`:
|
||
`+B.showPosition()+`
|
||
Expecting `+ye.join(", ")+", got '"+(this.terminals_[j]||j)+"'":se="Parse error on line "+(k+1)+": Unexpected "+(j==M?"end of input":"'"+(this.terminals_[j]||j)+"'"),this.parseError(se,{text:B.match,token:this.terminals_[j]||j,line:B.yylineno,loc:$,expected:ye})}if(ce[0]instanceof Array&&ce.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Z+", token: "+j);switch(ce[0]){case 1:E.push(j),A.push(B.yytext),D.push(B.yylloc),E.push(ce[1]),j=null,le?(j=le,le=null):(L=B.yyleng,R=B.yytext,k=B.yylineno,$=B.yylloc,C>0&&C--);break;case 2:if(he=this.productions_[ce[1]][1],te.$=A[A.length-he],te._$={first_line:D[D.length-(he||1)].first_line,last_line:D[D.length-1].last_line,first_column:D[D.length-(he||1)].first_column,last_column:D[D.length-1].last_column},U&&(te._$.range=[D[D.length-(he||1)].range[0],D[D.length-1].range[1]]),ee=this.performAction.apply(te,[R,L,k,F.yy,ce[1],A,D].concat(P)),typeof ee<"u")return ee;he&&(E=E.slice(0,-1*he*2),A=A.slice(0,-1*he),D=D.slice(0,-1*he)),E.push(this.productions_[ce[1]][0]),A.push(te.$),D.push(te._$),J=O[E[E.length-2]][E[E.length-1]],E.push(J);break;case 3:return!0}}return!0},"parse")},v=function(){var T={EOF:1,parseError:o(function(w,E){if(this.yy.parser)this.yy.parser.parseError(w,E);else throw new Error(w)},"parseError"),setInput:o(function(S,w){return this.yy=w||this.yy||{},this._input=S,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},"setInput"),input:o(function(){var S=this._input[0];this.yytext+=S,this.yyleng++,this.offset++,this.match+=S,this.matched+=S;var w=S.match(/(?:\r\n?|\n).*/g);return w?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),S},"input"),unput:o(function(S){var w=S.length,E=S.split(/(?:\r\n?|\n)/g);this._input=S+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-w),this.offset-=w;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-w},this.options.ranges&&(this.yylloc.range=[A[0],A[0]+this.yyleng-w]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(S){this.unput(this.match.slice(S))},"less"),pastInput:o(function(){var S=this.matched.substr(0,this.matched.length-this.match.length);return(S.length>20?"...":"")+S.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var S=this.match;return S.length<20&&(S+=this._input.substr(0,20-S.length)),(S.substr(0,20)+(S.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var S=this.pastInput(),w=new Array(S.length+1).join("-");return S+this.upcomingInput()+`
|
||
`+w+"^"},"showPosition"),test_match:o(function(S,w){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))),_=S[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+S[0].length},this.yytext+=S[0],this.match+=S[0],this.matches=S,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(S[0].length),this.matched+=S[0],E=this.performAction.call(this,this.yy,this,w,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),E)return E;if(this._backtrack){for(var D in A)this[D]=A[D];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var S,w,E,_;this._more||(this.yytext="",this.match="");for(var A=this._currentRules(),D=0;D<A.length;D++)if(E=this._input.match(this.rules[A[D]]),E&&(!w||E[0].length>w[0].length)){if(w=E,_=D,this.options.backtrack_lexer){if(S=this.test_match(E,A[D]),S!==!1)return S;if(this._backtrack){w=!1;continue}else return!1}else if(!this.options.flex)break}return w?(S=this.test_match(w,A[_]),S!==!1?S:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var w=this.next();return w||this.lex()},"lex"),begin:o(function(w){this.conditionStack.push(w)},"begin"),popState:o(function(){var w=this.conditionStack.length-1;return w>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(w){return w=this.conditionStack.length-1-Math.abs(w||0),w>=0?this.conditionStack[w]:"INITIAL"},"topState"),pushState:o(function(w){this.begin(w)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:o(function(w,E,_,A){var D=A;switch(_){case 0:return w.getLogger().debug("Found block-beta"),10;break;case 1:return w.getLogger().debug("Found id-block"),29;break;case 2:return w.getLogger().debug("Found block"),10;break;case 3:w.getLogger().debug(".",E.yytext);break;case 4:w.getLogger().debug("_",E.yytext);break;case 5:return 5;case 6:return E.yytext=-1,28;break;case 7:return E.yytext=E.yytext.replace(/columns\s+/,""),w.getLogger().debug("COLUMNS (LEX)",E.yytext),28;break;case 8:this.pushState("md_string");break;case 9:return"MD_STR";case 10:this.popState();break;case 11:this.pushState("string");break;case 12:w.getLogger().debug("LEX: POPPING STR:",E.yytext),this.popState();break;case 13:return w.getLogger().debug("LEX: STR end:",E.yytext),"STR";break;case 14:return E.yytext=E.yytext.replace(/space\:/,""),w.getLogger().debug("SPACE NUM (LEX)",E.yytext),21;break;case 15:return E.yytext="1",w.getLogger().debug("COLUMNS (LEX)",E.yytext),21;break;case 16:return 42;case 17:return"LINKSTYLE";case 18:return"INTERPOLATE";case 19:return this.pushState("CLASSDEF"),39;break;case 20:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 21:return this.popState(),this.pushState("CLASSDEFID"),40;break;case 22:return this.popState(),41;break;case 23:return this.pushState("CLASS"),43;break;case 24:return this.popState(),this.pushState("CLASS_STYLE"),44;break;case 25:return this.popState(),45;break;case 26:return this.pushState("STYLE_STMNT"),46;break;case 27:return this.popState(),this.pushState("STYLE_DEFINITION"),47;break;case 28:return this.popState(),48;break;case 29:return this.pushState("acc_title"),"acc_title";break;case 30:return this.popState(),"acc_title_value";break;case 31:return this.pushState("acc_descr"),"acc_descr";break;case 32:return this.popState(),"acc_descr_value";break;case 33:this.pushState("acc_descr_multiline");break;case 34:this.popState();break;case 35:return"acc_descr_multiline_value";case 36:return 30;case 37:return this.popState(),w.getLogger().debug("Lex: (("),"NODE_DEND";break;case 38:return this.popState(),w.getLogger().debug("Lex: (("),"NODE_DEND";break;case 39:return this.popState(),w.getLogger().debug("Lex: ))"),"NODE_DEND";break;case 40:return this.popState(),w.getLogger().debug("Lex: (("),"NODE_DEND";break;case 41:return this.popState(),w.getLogger().debug("Lex: (("),"NODE_DEND";break;case 42:return this.popState(),w.getLogger().debug("Lex: (-"),"NODE_DEND";break;case 43:return this.popState(),w.getLogger().debug("Lex: -)"),"NODE_DEND";break;case 44:return this.popState(),w.getLogger().debug("Lex: (("),"NODE_DEND";break;case 45:return this.popState(),w.getLogger().debug("Lex: ]]"),"NODE_DEND";break;case 46:return this.popState(),w.getLogger().debug("Lex: ("),"NODE_DEND";break;case 47:return this.popState(),w.getLogger().debug("Lex: ])"),"NODE_DEND";break;case 48:return this.popState(),w.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 49:return this.popState(),w.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 50:return this.popState(),w.getLogger().debug("Lex: )]"),"NODE_DEND";break;case 51:return this.popState(),w.getLogger().debug("Lex: )"),"NODE_DEND";break;case 52:return this.popState(),w.getLogger().debug("Lex: ]>"),"NODE_DEND";break;case 53:return this.popState(),w.getLogger().debug("Lex: ]"),"NODE_DEND";break;case 54:return w.getLogger().debug("Lexa: -)"),this.pushState("NODE"),35;break;case 55:return w.getLogger().debug("Lexa: (-"),this.pushState("NODE"),35;break;case 56:return w.getLogger().debug("Lexa: ))"),this.pushState("NODE"),35;break;case 57:return w.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 58:return w.getLogger().debug("Lex: ((("),this.pushState("NODE"),35;break;case 59:return w.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 60:return w.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 61:return w.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 62:return w.getLogger().debug("Lexc: >"),this.pushState("NODE"),35;break;case 63:return w.getLogger().debug("Lexa: (["),this.pushState("NODE"),35;break;case 64:return w.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 65:return this.pushState("NODE"),35;break;case 66:return this.pushState("NODE"),35;break;case 67:return this.pushState("NODE"),35;break;case 68:return this.pushState("NODE"),35;break;case 69:return this.pushState("NODE"),35;break;case 70:return this.pushState("NODE"),35;break;case 71:return this.pushState("NODE"),35;break;case 72:return w.getLogger().debug("Lexa: ["),this.pushState("NODE"),35;break;case 73:return this.pushState("BLOCK_ARROW"),w.getLogger().debug("LEX ARR START"),37;break;case 74:return w.getLogger().debug("Lex: NODE_ID",E.yytext),31;break;case 75:return w.getLogger().debug("Lex: EOF",E.yytext),8;break;case 76:this.pushState("md_string");break;case 77:this.pushState("md_string");break;case 78:return"NODE_DESCR";case 79:this.popState();break;case 80:w.getLogger().debug("Lex: Starting string"),this.pushState("string");break;case 81:w.getLogger().debug("LEX ARR: Starting string"),this.pushState("string");break;case 82:return w.getLogger().debug("LEX: NODE_DESCR:",E.yytext),"NODE_DESCR";break;case 83:w.getLogger().debug("LEX POPPING"),this.popState();break;case 84:w.getLogger().debug("Lex: =>BAE"),this.pushState("ARROW_DIR");break;case 85:return E.yytext=E.yytext.replace(/^,\s*/,""),w.getLogger().debug("Lex (right): dir:",E.yytext),"DIR";break;case 86:return E.yytext=E.yytext.replace(/^,\s*/,""),w.getLogger().debug("Lex (left):",E.yytext),"DIR";break;case 87:return E.yytext=E.yytext.replace(/^,\s*/,""),w.getLogger().debug("Lex (x):",E.yytext),"DIR";break;case 88:return E.yytext=E.yytext.replace(/^,\s*/,""),w.getLogger().debug("Lex (y):",E.yytext),"DIR";break;case 89:return E.yytext=E.yytext.replace(/^,\s*/,""),w.getLogger().debug("Lex (up):",E.yytext),"DIR";break;case 90:return E.yytext=E.yytext.replace(/^,\s*/,""),w.getLogger().debug("Lex (down):",E.yytext),"DIR";break;case 91:return E.yytext="]>",w.getLogger().debug("Lex (ARROW_DIR end):",E.yytext),this.popState(),this.popState(),"BLOCK_ARROW_END";break;case 92:return w.getLogger().debug("Lex: LINK","#"+E.yytext+"#"),15;break;case 93:return w.getLogger().debug("Lex: LINK",E.yytext),15;break;case 94:return w.getLogger().debug("Lex: LINK",E.yytext),15;break;case 95:return w.getLogger().debug("Lex: LINK",E.yytext),15;break;case 96:return w.getLogger().debug("Lex: START_LINK",E.yytext),this.pushState("LLABEL"),16;break;case 97:return w.getLogger().debug("Lex: START_LINK",E.yytext),this.pushState("LLABEL"),16;break;case 98:return w.getLogger().debug("Lex: START_LINK",E.yytext),this.pushState("LLABEL"),16;break;case 99:this.pushState("md_string");break;case 100:return w.getLogger().debug("Lex: Starting string"),this.pushState("string"),"LINK_LABEL";break;case 101:return this.popState(),w.getLogger().debug("Lex: LINK","#"+E.yytext+"#"),15;break;case 102:return this.popState(),w.getLogger().debug("Lex: LINK",E.yytext),15;break;case 103:return this.popState(),w.getLogger().debug("Lex: LINK",E.yytext),15;break;case 104:return w.getLogger().debug("Lex: COLON",E.yytext),E.yytext=E.yytext.slice(1),27;break}},"anonymous"),rules:[/^(?:block-beta\b)/,/^(?:block:)/,/^(?:block\b)/,/^(?:[\s]+)/,/^(?:[\n]+)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:columns\s+auto\b)/,/^(?:columns\s+[\d]+)/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:space[:]\d+)/,/^(?:space\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\s+)/,/^(?:DEFAULT\s+)/,/^(?:\w+\s+)/,/^(?:[^\n]*)/,/^(?:class\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:style\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:end\b\s*)/,/^(?:\(\(\()/,/^(?:\)\)\))/,/^(?:[\)]\))/,/^(?:\}\})/,/^(?:\})/,/^(?:\(-)/,/^(?:-\))/,/^(?:\(\()/,/^(?:\]\])/,/^(?:\()/,/^(?:\]\))/,/^(?:\\\])/,/^(?:\/\])/,/^(?:\)\])/,/^(?:[\)])/,/^(?:\]>)/,/^(?:[\]])/,/^(?:-\))/,/^(?:\(-)/,/^(?:\)\))/,/^(?:\))/,/^(?:\(\(\()/,/^(?:\(\()/,/^(?:\{\{)/,/^(?:\{)/,/^(?:>)/,/^(?:\(\[)/,/^(?:\()/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\[\\)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:\[)/,/^(?:<\[)/,/^(?:[^\(\[\n\-\)\{\}\s\<\>:]+)/,/^(?:$)/,/^(?:["][`])/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:\]>\s*\()/,/^(?:,?\s*right\s*)/,/^(?:,?\s*left\s*)/,/^(?:,?\s*x\s*)/,/^(?:,?\s*y\s*)/,/^(?:,?\s*up\s*)/,/^(?:,?\s*down\s*)/,/^(?:\)\s*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*~~[\~]+\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:["][`])/,/^(?:["])/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?::\d+)/],conditions:{STYLE_DEFINITION:{rules:[28],inclusive:!1},STYLE_STMNT:{rules:[27],inclusive:!1},CLASSDEFID:{rules:[22],inclusive:!1},CLASSDEF:{rules:[20,21],inclusive:!1},CLASS_STYLE:{rules:[25],inclusive:!1},CLASS:{rules:[24],inclusive:!1},LLABEL:{rules:[99,100,101,102,103],inclusive:!1},ARROW_DIR:{rules:[85,86,87,88,89,90,91],inclusive:!1},BLOCK_ARROW:{rules:[76,81,84],inclusive:!1},NODE:{rules:[37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,77,80],inclusive:!1},md_string:{rules:[9,10,78,79],inclusive:!1},space:{rules:[],inclusive:!1},string:{rules:[12,13,82,83],inclusive:!1},acc_descr_multiline:{rules:[34,35],inclusive:!1},acc_descr:{rules:[32],inclusive:!1},acc_title:{rules:[30],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,11,14,15,16,17,18,19,23,26,29,31,33,36,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,92,93,94,95,96,97,98,104],inclusive:!0}}};return T}();x.lexer=v;function b(){this.yy={}}return o(b,"Parser"),b.prototype=x,x.Parser=b,new b}();UF.parser=UF;Hve=UF});function ort(t){switch(X.debug("typeStr2Type",t),t){case"[]":return"square";case"()":return X.debug("we have a round"),"round";case"(())":return"circle";case">]":return"rect_left_inv_arrow";case"{}":return"diamond";case"{{}}":return"hexagon";case"([])":return"stadium";case"[[]]":return"subroutine";case"[()]":return"cylinder";case"((()))":return"doublecircle";case"[//]":return"lean_right";case"[\\\\]":return"lean_left";case"[/\\]":return"trapezoid";case"[\\/]":return"inv_trapezoid";case"<[]>":return"block_arrow";default:return"na"}}function lrt(t){switch(X.debug("typeStr2Type",t),t){case"==":return"thick";default:return"normal"}}function crt(t){switch(t.replace(/^[\s-]+|[\s-]+$/g,"")){case"x":return"arrow_cross";case"o":return"arrow_circle";case">":return"arrow_point";default:return""}}var Wl,WF,HF,qve,Yve,ert,jve,trt,SC,rrt,nrt,irt,art,Kve,qF,R4,srt,Xve,urt,hrt,frt,drt,prt,mrt,grt,yrt,vrt,xrt,brt,Qve,Zve=N(()=>{"use strict";iR();Wn();Xt();pt();dr();ui();Wl=new Map,WF=[],HF=new Map,qve="color",Yve="fill",ert="bgFill",jve=",",trt=ge(),SC=new Map,rrt=o(t=>Je.sanitizeText(t,trt),"sanitizeText"),nrt=o(function(t,e=""){let r=SC.get(t);r||(r={id:t,styles:[],textStyles:[]},SC.set(t,r)),e?.split(jve).forEach(n=>{let i=n.replace(/([^;]*);/,"$1").trim();if(RegExp(qve).exec(n)){let s=i.replace(Yve,ert).replace(qve,Yve);r.textStyles.push(s)}r.styles.push(i)})},"addStyleClass"),irt=o(function(t,e=""){let r=Wl.get(t);e!=null&&(r.styles=e.split(jve))},"addStyle2Node"),art=o(function(t,e){t.split(",").forEach(function(r){let n=Wl.get(r);if(n===void 0){let i=r.trim();n={id:i,type:"na",children:[]},Wl.set(i,n)}n.classes||(n.classes=[]),n.classes.push(e)})},"setCssClass"),Kve=o((t,e)=>{let r=t.flat(),n=[],a=r.find(s=>s?.type==="column-setting")?.columns??-1;for(let s of r){if(typeof a=="number"&&a>0&&s.type!=="column-setting"&&typeof s.widthInColumns=="number"&&s.widthInColumns>a&&X.warn(`Block ${s.id} width ${s.widthInColumns} exceeds configured column width ${a}`),s.label&&(s.label=rrt(s.label)),s.type==="classDef"){nrt(s.id,s.css);continue}if(s.type==="applyClass"){art(s.id,s?.styleClass??"");continue}if(s.type==="applyStyles"){s?.stylesStr&&irt(s.id,s?.stylesStr);continue}if(s.type==="column-setting")e.columns=s.columns??-1;else if(s.type==="edge"){let l=(HF.get(s.id)??0)+1;HF.set(s.id,l),s.id=l+"-"+s.id,WF.push(s)}else{s.label||(s.type==="composite"?s.label="":s.label=s.id);let l=Wl.get(s.id);if(l===void 0?Wl.set(s.id,s):(s.type!=="na"&&(l.type=s.type),s.label!==s.id&&(l.label=s.label)),s.children&&Kve(s.children,s),s.type==="space"){let u=s.width??1;for(let h=0;h<u;h++){let f=an(s);f.id=f.id+"-"+h,Wl.set(f.id,f),n.push(f)}}else l===void 0&&n.push(s)}}e.children=n},"populateBlockDatabase"),qF=[],R4={id:"root",type:"composite",children:[],columns:-1},srt=o(()=>{X.debug("Clear called"),wr(),R4={id:"root",type:"composite",children:[],columns:-1},Wl=new Map([["root",R4]]),qF=[],SC=new Map,WF=[],HF=new Map},"clear");o(ort,"typeStr2Type");o(lrt,"edgeTypeStr2Type");o(crt,"edgeStrToEdgeData");Xve=0,urt=o(()=>(Xve++,"id-"+Math.random().toString(36).substr(2,12)+"-"+Xve),"generateId"),hrt=o(t=>{R4.children=t,Kve(t,R4),qF=R4.children},"setHierarchy"),frt=o(t=>{let e=Wl.get(t);return e?e.columns?e.columns:e.children?e.children.length:-1:-1},"getColumns"),drt=o(()=>[...Wl.values()],"getBlocksFlat"),prt=o(()=>qF||[],"getBlocks"),mrt=o(()=>WF,"getEdges"),grt=o(t=>Wl.get(t),"getBlock"),yrt=o(t=>{Wl.set(t.id,t)},"setBlock"),vrt=o(()=>X,"getLogger"),xrt=o(function(){return SC},"getClasses"),brt={getConfig:o(()=>Qt().block,"getConfig"),typeStr2Type:ort,edgeTypeStr2Type:lrt,edgeStrToEdgeData:crt,getLogger:vrt,getBlocksFlat:drt,getBlocks:prt,getEdges:mrt,setHierarchy:hrt,getBlock:grt,setBlock:yrt,getColumns:frt,getClasses:xrt,clear:srt,generateId:urt},Qve=brt});var CC,Trt,Jve,e2e=N(()=>{"use strict";Qs();mg();CC=o((t,e)=>{let r=id,n=r(t,"r"),i=r(t,"g"),a=r(t,"b");return Ka(n,i,a,e)},"fade"),Trt=o(t=>`.label {
|
||
font-family: ${t.fontFamily};
|
||
color: ${t.nodeTextColor||t.textColor};
|
||
}
|
||
.cluster-label text {
|
||
fill: ${t.titleColor};
|
||
}
|
||
.cluster-label span,p {
|
||
color: ${t.titleColor};
|
||
}
|
||
|
||
|
||
|
||
.label text,span,p {
|
||
fill: ${t.nodeTextColor||t.textColor};
|
||
color: ${t.nodeTextColor||t.textColor};
|
||
}
|
||
|
||
.node rect,
|
||
.node circle,
|
||
.node ellipse,
|
||
.node polygon,
|
||
.node path {
|
||
fill: ${t.mainBkg};
|
||
stroke: ${t.nodeBorder};
|
||
stroke-width: 1px;
|
||
}
|
||
.flowchart-label text {
|
||
text-anchor: middle;
|
||
}
|
||
// .flowchart-label .text-outer-tspan {
|
||
// text-anchor: middle;
|
||
// }
|
||
// .flowchart-label .text-inner-tspan {
|
||
// text-anchor: start;
|
||
// }
|
||
|
||
.node .label {
|
||
text-align: center;
|
||
}
|
||
.node.clickable {
|
||
cursor: pointer;
|
||
}
|
||
|
||
.arrowheadPath {
|
||
fill: ${t.arrowheadColor};
|
||
}
|
||
|
||
.edgePath .path {
|
||
stroke: ${t.lineColor};
|
||
stroke-width: 2.0px;
|
||
}
|
||
|
||
.flowchart-link {
|
||
stroke: ${t.lineColor};
|
||
fill: none;
|
||
}
|
||
|
||
.edgeLabel {
|
||
background-color: ${t.edgeLabelBackground};
|
||
rect {
|
||
opacity: 0.5;
|
||
background-color: ${t.edgeLabelBackground};
|
||
fill: ${t.edgeLabelBackground};
|
||
}
|
||
text-align: center;
|
||
}
|
||
|
||
/* For html labels only */
|
||
.labelBkg {
|
||
background-color: ${CC(t.edgeLabelBackground,.5)};
|
||
// background-color:
|
||
}
|
||
|
||
.node .cluster {
|
||
// fill: ${CC(t.mainBkg,.5)};
|
||
fill: ${CC(t.clusterBkg,.5)};
|
||
stroke: ${CC(t.clusterBorder,.2)};
|
||
box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
|
||
stroke-width: 1px;
|
||
}
|
||
|
||
.cluster text {
|
||
fill: ${t.titleColor};
|
||
}
|
||
|
||
.cluster span,p {
|
||
color: ${t.titleColor};
|
||
}
|
||
/* .cluster div {
|
||
color: ${t.titleColor};
|
||
} */
|
||
|
||
div.mermaidTooltip {
|
||
position: absolute;
|
||
text-align: center;
|
||
max-width: 200px;
|
||
padding: 2px;
|
||
font-family: ${t.fontFamily};
|
||
font-size: 12px;
|
||
background: ${t.tertiaryColor};
|
||
border: 1px solid ${t.border2};
|
||
border-radius: 2px;
|
||
pointer-events: none;
|
||
z-index: 100;
|
||
}
|
||
|
||
.flowchartTitleText {
|
||
text-anchor: middle;
|
||
font-size: 18px;
|
||
fill: ${t.textColor};
|
||
}
|
||
${Fc()}
|
||
`,"getStyles"),Jve=Trt});var wrt,krt,Ert,Srt,Crt,Art,_rt,Drt,Lrt,Rrt,Nrt,t2e,r2e=N(()=>{"use strict";pt();wrt=o((t,e,r,n)=>{e.forEach(i=>{Nrt[i](t,r,n)})},"insertMarkers"),krt=o((t,e,r)=>{X.trace("Making markers for ",r),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionStart").attr("class","marker extension "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionEnd").attr("class","marker extension "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},"extension"),Ert=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionStart").attr("class","marker composition "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionEnd").attr("class","marker composition "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"composition"),Srt=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationStart").attr("class","marker aggregation "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationEnd").attr("class","marker aggregation "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"aggregation"),Crt=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyStart").attr("class","marker dependency "+e).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyEnd").attr("class","marker dependency "+e).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"dependency"),Art=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopStart").attr("class","marker lollipop "+e).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopEnd").attr("class","marker lollipop "+e).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},"lollipop"),_rt=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-pointEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-pointStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"point"),Drt=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-circleEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-circleStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"circle"),Lrt=o((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-crossEnd").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-crossStart").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},"cross"),Rrt=o((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),Nrt={extension:krt,composition:Ert,aggregation:Srt,dependency:Crt,lollipop:Art,point:_rt,circle:Drt,cross:Lrt,barb:Rrt},t2e=wrt});function Mrt(t,e){if(t===0||!Number.isInteger(t))throw new Error("Columns must be an integer !== 0.");if(e<0||!Number.isInteger(e))throw new Error("Position must be a non-negative integer."+e);if(t<0)return{px:e,py:0};if(t===1)return{px:0,py:e};let r=e%t,n=Math.floor(e/t);return{px:r,py:n}}function YF(t,e,r=0,n=0){X.debug("setBlockSizes abc95 (start)",t.id,t?.size?.x,"block width =",t?.size,"siblingWidth",r),t?.size?.width||(t.size={width:r,height:n,x:0,y:0});let i=0,a=0;if(t.children?.length>0){for(let m of t.children)YF(m,e);let s=Irt(t);i=s.width,a=s.height,X.debug("setBlockSizes abc95 maxWidth of",t.id,":s children is ",i,a);for(let m of t.children)m.size&&(X.debug(`abc95 Setting size of children of ${t.id} id=${m.id} ${i} ${a} ${JSON.stringify(m.size)}`),m.size.width=i*(m.widthInColumns??1)+wi*((m.widthInColumns??1)-1),m.size.height=a,m.size.x=0,m.size.y=0,X.debug(`abc95 updating size of ${t.id} children child:${m.id} maxWidth:${i} maxHeight:${a}`));for(let m of t.children)YF(m,e,i,a);let l=t.columns??-1,u=0;for(let m of t.children)u+=m.widthInColumns??1;let h=t.children.length;l>0&&l<u&&(h=l);let f=Math.ceil(u/h),d=h*(i+wi)+wi,p=f*(a+wi)+wi;if(d<r){X.debug(`Detected to small sibling: abc95 ${t.id} siblingWidth ${r} siblingHeight ${n} width ${d}`),d=r,p=n;let m=(r-h*wi-wi)/h,g=(n-f*wi-wi)/f;X.debug("Size indata abc88",t.id,"childWidth",m,"maxWidth",i),X.debug("Size indata abc88",t.id,"childHeight",g,"maxHeight",a),X.debug("Size indata abc88 xSize",h,"padding",wi);for(let y of t.children)y.size&&(y.size.width=m,y.size.height=g,y.size.x=0,y.size.y=0)}if(X.debug(`abc95 (finale calc) ${t.id} xSize ${h} ySize ${f} columns ${l}${t.children.length} width=${Math.max(d,t.size?.width||0)}`),d<(t?.size?.width||0)){d=t?.size?.width||0;let m=l>0?Math.min(t.children.length,l):t.children.length;if(m>0){let g=(d-m*wi-wi)/m;X.debug("abc95 (growing to fit) width",t.id,d,t.size?.width,g);for(let y of t.children)y.size&&(y.size.width=g)}}t.size={width:d,height:p,x:0,y:0}}X.debug("setBlockSizes abc94 (done)",t.id,t?.size?.x,t?.size?.width,t?.size?.y,t?.size?.height)}function n2e(t,e){X.debug(`abc85 layout blocks (=>layoutBlocks) ${t.id} x: ${t?.size?.x} y: ${t?.size?.y} width: ${t?.size?.width}`);let r=t.columns??-1;if(X.debug("layoutBlocks columns abc95",t.id,"=>",r,t),t.children&&t.children.length>0){let n=t?.children[0]?.size?.width??0,i=t.children.length*n+(t.children.length-1)*wi;X.debug("widthOfChildren 88",i,"posX");let a=0;X.debug("abc91 block?.size?.x",t.id,t?.size?.x);let s=t?.size?.x?t?.size?.x+(-t?.size?.width/2||0):-wi,l=0;for(let u of t.children){let h=t;if(!u.size)continue;let{width:f,height:d}=u.size,{px:p,py:m}=Mrt(r,a);if(m!=l&&(l=m,s=t?.size?.x?t?.size?.x+(-t?.size?.width/2||0):-wi,X.debug("New row in layout for block",t.id," and child ",u.id,l)),X.debug(`abc89 layout blocks (child) id: ${u.id} Pos: ${a} (px, py) ${p},${m} (${h?.size?.x},${h?.size?.y}) parent: ${h.id} width: ${f}${wi}`),h.size){let y=f/2;u.size.x=s+wi+y,X.debug(`abc91 layout blocks (calc) px, pyid:${u.id} startingPos=X${s} new startingPosX${u.size.x} ${y} padding=${wi} width=${f} halfWidth=${y} => x:${u.size.x} y:${u.size.y} ${u.widthInColumns} (width * (child?.w || 1)) / 2 ${f*(u?.widthInColumns??1)/2}`),s=u.size.x+y,u.size.y=h.size.y-h.size.height/2+m*(d+wi)+d/2+wi,X.debug(`abc88 layout blocks (calc) px, pyid:${u.id}startingPosX${s}${wi}${y}=>x:${u.size.x}y:${u.size.y}${u.widthInColumns}(width * (child?.w || 1)) / 2${f*(u?.widthInColumns??1)/2}`)}u.children&&n2e(u,e);let g=u?.widthInColumns??1;r>0&&(g=Math.min(g,r-a%r)),a+=g,X.debug("abc88 columnsPos",u,a)}}X.debug(`layout blocks (<==layoutBlocks) ${t.id} x: ${t?.size?.x} y: ${t?.size?.y} width: ${t?.size?.width}`)}function i2e(t,{minX:e,minY:r,maxX:n,maxY:i}={minX:0,minY:0,maxX:0,maxY:0}){if(t.size&&t.id!=="root"){let{x:a,y:s,width:l,height:u}=t.size;a-l/2<e&&(e=a-l/2),s-u/2<r&&(r=s-u/2),a+l/2>n&&(n=a+l/2),s+u/2>i&&(i=s+u/2)}if(t.children)for(let a of t.children)({minX:e,minY:r,maxX:n,maxY:i}=i2e(a,{minX:e,minY:r,maxX:n,maxY:i}));return{minX:e,minY:r,maxX:n,maxY:i}}function a2e(t){let e=t.getBlock("root");if(!e)return;YF(e,t,0,0),n2e(e,t),X.debug("getBlocks",JSON.stringify(e,null,2));let{minX:r,minY:n,maxX:i,maxY:a}=i2e(e),s=a-n,l=i-r;return{x:r,y:n,width:l,height:s}}var wi,Irt,s2e=N(()=>{"use strict";pt();Xt();wi=ge()?.block?.padding??8;o(Mrt,"calculateBlockPosition");Irt=o(t=>{let e=0,r=0;for(let n of t.children){let{width:i,height:a,x:s,y:l}=n.size??{width:0,height:0,x:0,y:0};X.debug("getMaxChildSize abc95 child:",n.id,"width:",i,"height:",a,"x:",s,"y:",l,n.type),n.type!=="space"&&(i>e&&(e=i/(t.widthInColumns??1)),a>r&&(r=a))}return{width:e,height:r}},"getMaxChildSize");o(YF,"setBlockSizes");o(n2e,"layoutBlocks");o(i2e,"findBounds");o(a2e,"layout")});function o2e(t,e){e&&t.attr("style",e)}function Ort(t,e){let r=ze(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),n=r.append("xhtml:div"),i=t.label,a=t.isNode?"nodeLabel":"edgeLabel",s=n.append("span");return s.html(ar(i,e)),o2e(s,t.labelStyle),s.attr("class",a),o2e(n,t.labelStyle),n.style("display","inline-block"),n.style("white-space","nowrap"),n.attr("xmlns","http://www.w3.org/1999/xhtml"),r.node()}var Prt,ws,AC=N(()=>{"use strict";pr();Xt();dr();pt();$o();tr();o(o2e,"applyStyle");o(Ort,"addHtmlLabel");Prt=o(async(t,e,r,n)=>{let i=t||"";typeof i=="object"&&(i=i[0]);let a=ge();if(mr(a.flowchart.htmlLabels)){i=i.replace(/\\n|\n/g,"<br />"),X.debug("vertexText"+i);let s=await y9(ea(i)),l={isNode:n,label:s,labelStyle:e.replace("fill:","color:")};return Ort(l,a)}else{let s=document.createElementNS("http://www.w3.org/2000/svg","text");s.setAttribute("style",e.replace("color:","fill:"));let l=[];typeof i=="string"?l=i.split(/\\n|\n|<br\s*\/?>/gi):Array.isArray(i)?l=i:l=[];for(let u of l){let h=document.createElementNS("http://www.w3.org/2000/svg","tspan");h.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),h.setAttribute("dy","1em"),h.setAttribute("x","0"),r?h.setAttribute("class","title-row"):h.setAttribute("class","row"),h.textContent=u.trim(),s.appendChild(h)}return s}},"createLabel"),ws=Prt});var c2e,Brt,l2e,u2e=N(()=>{"use strict";pt();c2e=o((t,e,r,n,i)=>{e.arrowTypeStart&&l2e(t,"start",e.arrowTypeStart,r,n,i),e.arrowTypeEnd&&l2e(t,"end",e.arrowTypeEnd,r,n,i)},"addEdgeMarkers"),Brt={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},l2e=o((t,e,r,n,i,a)=>{let s=Brt[r];if(!s){X.warn(`Unknown arrow type: ${r}`);return}let l=e==="start"?"Start":"End";t.attr(`marker-${e}`,`url(${n}#${i}_${a}-${s}${l})`)},"addEdgeMarker")});function _C(t,e){ge().flowchart.htmlLabels&&t&&(t.style.width=e.length*9+"px",t.style.height="12px")}var XF,qa,f2e,d2e,Frt,$rt,h2e,p2e,m2e=N(()=>{"use strict";pt();AC();$o();pr();Xt();tr();dr();z9();N2();u2e();XF={},qa={},f2e=o(async(t,e)=>{let r=ge(),n=mr(r.flowchart.htmlLabels),i=e.labelType==="markdown"?pi(t,e.label,{style:e.labelStyle,useHtmlLabels:n,addSvgBackground:!0},r):await ws(e.label,e.labelStyle),a=t.insert("g").attr("class","edgeLabel"),s=a.insert("g").attr("class","label");s.node().appendChild(i);let l=i.getBBox();if(n){let h=i.children[0],f=ze(i);l=h.getBoundingClientRect(),f.attr("width",l.width),f.attr("height",l.height)}s.attr("transform","translate("+-l.width/2+", "+-l.height/2+")"),XF[e.id]=a,e.width=l.width,e.height=l.height;let u;if(e.startLabelLeft){let h=await ws(e.startLabelLeft,e.labelStyle),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),qa[e.id]||(qa[e.id]={}),qa[e.id].startLeft=f,_C(u,e.startLabelLeft)}if(e.startLabelRight){let h=await ws(e.startLabelRight,e.labelStyle),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=f.node().appendChild(h),d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),qa[e.id]||(qa[e.id]={}),qa[e.id].startRight=f,_C(u,e.startLabelRight)}if(e.endLabelLeft){let h=await ws(e.endLabelLeft,e.labelStyle),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),f.node().appendChild(h),qa[e.id]||(qa[e.id]={}),qa[e.id].endLeft=f,_C(u,e.endLabelLeft)}if(e.endLabelRight){let h=await ws(e.endLabelRight,e.labelStyle),f=t.insert("g").attr("class","edgeTerminals"),d=f.insert("g").attr("class","inner");u=d.node().appendChild(h);let p=h.getBBox();d.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),f.node().appendChild(h),qa[e.id]||(qa[e.id]={}),qa[e.id].endRight=f,_C(u,e.endLabelRight)}return i},"insertEdgeLabel");o(_C,"setTerminalWidth");d2e=o((t,e)=>{X.debug("Moving label abc88 ",t.id,t.label,XF[t.id],e);let r=e.updatedPath?e.updatedPath:e.originalPath,n=ge(),{subGraphTitleTotalMargin:i}=Iu(n);if(t.label){let a=XF[t.id],s=t.x,l=t.y;if(r){let u=Ht.calcLabelPosition(r);X.debug("Moving label "+t.label+" from (",s,",",l,") to (",u.x,",",u.y,") abc88"),e.updatedPath&&(s=u.x,l=u.y)}a.attr("transform",`translate(${s}, ${l+i/2})`)}if(t.startLabelLeft){let a=qa[t.id].startLeft,s=t.x,l=t.y;if(r){let u=Ht.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.startLabelRight){let a=qa[t.id].startRight,s=t.x,l=t.y;if(r){let u=Ht.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.endLabelLeft){let a=qa[t.id].endLeft,s=t.x,l=t.y;if(r){let u=Ht.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_left",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}if(t.endLabelRight){let a=qa[t.id].endRight,s=t.x,l=t.y;if(r){let u=Ht.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_right",r);s=u.x,l=u.y}a.attr("transform",`translate(${s}, ${l})`)}},"positionEdgeLabel"),Frt=o((t,e)=>{let r=t.x,n=t.y,i=Math.abs(e.x-r),a=Math.abs(e.y-n),s=t.width/2,l=t.height/2;return i>=s||a>=l},"outsideNode"),$rt=o((t,e,r)=>{X.debug(`intersection calc abc89:
|
||
outsidePoint: ${JSON.stringify(e)}
|
||
insidePoint : ${JSON.stringify(r)}
|
||
node : x:${t.x} y:${t.y} w:${t.width} h:${t.height}`);let n=t.x,i=t.y,a=Math.abs(n-r.x),s=t.width/2,l=r.x<e.x?s-a:s+a,u=t.height/2,h=Math.abs(e.y-r.y),f=Math.abs(e.x-r.x);if(Math.abs(i-e.y)*s>Math.abs(n-e.x)*u){let d=r.y<e.y?e.y-u-i:i-u-e.y;l=f*d/h;let p={x:r.x<e.x?r.x+l:r.x-f+l,y:r.y<e.y?r.y+h-d:r.y-h+d};return l===0&&(p.x=e.x,p.y=e.y),f===0&&(p.x=e.x),h===0&&(p.y=e.y),X.debug(`abc89 topp/bott calc, Q ${h}, q ${d}, R ${f}, r ${l}`,p),p}else{r.x<e.x?l=e.x-s-n:l=n-s-e.x;let d=h*l/f,p=r.x<e.x?r.x+f-l:r.x-f+l,m=r.y<e.y?r.y+d:r.y-d;return X.debug(`sides calc abc89, Q ${h}, q ${d}, R ${f}, r ${l}`,{_x:p,_y:m}),l===0&&(p=e.x,m=e.y),f===0&&(p=e.x),h===0&&(m=e.y),{x:p,y:m}}},"intersection"),h2e=o((t,e)=>{X.debug("abc88 cutPathAtIntersect",t,e);let r=[],n=t[0],i=!1;return t.forEach(a=>{if(!Frt(e,a)&&!i){let s=$rt(e,n,a),l=!1;r.forEach(u=>{l=l||u.x===s.x&&u.y===s.y}),r.some(u=>u.x===s.x&&u.y===s.y)||r.push(s),i=!0}else n=a,i||r.push(a)}),r},"cutPathAtIntersect"),p2e=o(function(t,e,r,n,i,a,s){let l=r.points;X.debug("abc88 InsertEdge: edge=",r,"e=",e);let u=!1,h=a.node(e.v);var f=a.node(e.w);f?.intersect&&h?.intersect&&(l=l.slice(1,r.points.length-1),l.unshift(h.intersect(l[0])),l.push(f.intersect(l[l.length-1]))),r.toCluster&&(X.debug("to cluster abc88",n[r.toCluster]),l=h2e(r.points,n[r.toCluster].node),u=!0),r.fromCluster&&(X.debug("from cluster abc88",n[r.fromCluster]),l=h2e(l.reverse(),n[r.fromCluster].node).reverse(),u=!0);let d=l.filter(S=>!Number.isNaN(S.y)),p=Ro;r.curve&&(i==="graph"||i==="flowchart")&&(p=r.curve);let{x:m,y:g}=hw(r),y=Cl().x(m).y(g).curve(p),x;switch(r.thickness){case"normal":x="edge-thickness-normal";break;case"thick":x="edge-thickness-thick";break;case"invisible":x="edge-thickness-thick";break;default:x=""}switch(r.pattern){case"solid":x+=" edge-pattern-solid";break;case"dotted":x+=" edge-pattern-dotted";break;case"dashed":x+=" edge-pattern-dashed";break}let v=t.append("path").attr("d",y(d)).attr("id",r.id).attr("class"," "+x+(r.classes?" "+r.classes:"")).attr("style",r.style),b="";(ge().flowchart.arrowMarkerAbsolute||ge().state.arrowMarkerAbsolute)&&(b=du(!0)),c2e(v,r,b,s,i);let T={};return u&&(T.updatedPath=l),T.originalPath=r.points,T},"insertEdge")});var Grt,g2e,y2e=N(()=>{"use strict";Grt=o(t=>{let e=new Set;for(let r of t)switch(r){case"x":e.add("right"),e.add("left");break;case"y":e.add("up"),e.add("down");break;default:e.add(r);break}return e},"expandAndDeduplicateDirections"),g2e=o((t,e,r)=>{let n=Grt(t),i=2,a=e.height+2*r.padding,s=a/i,l=e.width+2*s+r.padding,u=r.padding/2;return n.has("right")&&n.has("left")&&n.has("up")&&n.has("down")?[{x:0,y:0},{x:s,y:0},{x:l/2,y:2*u},{x:l-s,y:0},{x:l,y:0},{x:l,y:-a/3},{x:l+2*u,y:-a/2},{x:l,y:-2*a/3},{x:l,y:-a},{x:l-s,y:-a},{x:l/2,y:-a-2*u},{x:s,y:-a},{x:0,y:-a},{x:0,y:-2*a/3},{x:-2*u,y:-a/2},{x:0,y:-a/3}]:n.has("right")&&n.has("left")&&n.has("up")?[{x:s,y:0},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:s,y:-a},{x:0,y:-a/2}]:n.has("right")&&n.has("left")&&n.has("down")?[{x:0,y:0},{x:s,y:-a},{x:l-s,y:-a},{x:l,y:0}]:n.has("right")&&n.has("up")&&n.has("down")?[{x:0,y:0},{x:l,y:-s},{x:l,y:-a+s},{x:0,y:-a}]:n.has("left")&&n.has("up")&&n.has("down")?[{x:l,y:0},{x:0,y:-s},{x:0,y:-a+s},{x:l,y:-a}]:n.has("right")&&n.has("left")?[{x:s,y:0},{x:s,y:-u},{x:l-s,y:-u},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:l-s,y:-a+u},{x:s,y:-a+u},{x:s,y:-a},{x:0,y:-a/2}]:n.has("up")&&n.has("down")?[{x:l/2,y:0},{x:0,y:-u},{x:s,y:-u},{x:s,y:-a+u},{x:0,y:-a+u},{x:l/2,y:-a},{x:l,y:-a+u},{x:l-s,y:-a+u},{x:l-s,y:-u},{x:l,y:-u}]:n.has("right")&&n.has("up")?[{x:0,y:0},{x:l,y:-s},{x:0,y:-a}]:n.has("right")&&n.has("down")?[{x:0,y:0},{x:l,y:0},{x:0,y:-a}]:n.has("left")&&n.has("up")?[{x:l,y:0},{x:0,y:-s},{x:l,y:-a}]:n.has("left")&&n.has("down")?[{x:l,y:0},{x:0,y:0},{x:l,y:-a}]:n.has("right")?[{x:s,y:-u},{x:s,y:-u},{x:l-s,y:-u},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:l-s,y:-a+u},{x:s,y:-a+u},{x:s,y:-a+u}]:n.has("left")?[{x:s,y:0},{x:s,y:-u},{x:l-s,y:-u},{x:l-s,y:-a+u},{x:s,y:-a+u},{x:s,y:-a},{x:0,y:-a/2}]:n.has("up")?[{x:s,y:-u},{x:s,y:-a+u},{x:0,y:-a+u},{x:l/2,y:-a},{x:l,y:-a+u},{x:l-s,y:-a+u},{x:l-s,y:-u}]:n.has("down")?[{x:l/2,y:0},{x:0,y:-u},{x:s,y:-u},{x:s,y:-a+u},{x:l-s,y:-a+u},{x:l-s,y:-u},{x:l,y:-u}]:[{x:0,y:0}]},"getArrowPoints")});function zrt(t,e){return t.intersect(e)}var v2e,x2e=N(()=>{"use strict";o(zrt,"intersectNode");v2e=zrt});function Vrt(t,e,r,n){var i=t.x,a=t.y,s=i-n.x,l=a-n.y,u=Math.sqrt(e*e*l*l+r*r*s*s),h=Math.abs(e*r*s/u);n.x<i&&(h=-h);var f=Math.abs(e*r*l/u);return n.y<a&&(f=-f),{x:i+h,y:a+f}}var DC,jF=N(()=>{"use strict";o(Vrt,"intersectEllipse");DC=Vrt});function Urt(t,e,r){return DC(t,e,e,r)}var b2e,T2e=N(()=>{"use strict";jF();o(Urt,"intersectCircle");b2e=Urt});function Hrt(t,e,r,n){var i,a,s,l,u,h,f,d,p,m,g,y,x,v,b;if(i=e.y-t.y,s=t.x-e.x,u=e.x*t.y-t.x*e.y,p=i*r.x+s*r.y+u,m=i*n.x+s*n.y+u,!(p!==0&&m!==0&&w2e(p,m))&&(a=n.y-r.y,l=r.x-n.x,h=n.x*r.y-r.x*n.y,f=a*t.x+l*t.y+h,d=a*e.x+l*e.y+h,!(f!==0&&d!==0&&w2e(f,d))&&(g=i*l-a*s,g!==0)))return y=Math.abs(g/2),x=s*h-l*u,v=x<0?(x-y)/g:(x+y)/g,x=a*u-i*h,b=x<0?(x-y)/g:(x+y)/g,{x:v,y:b}}function w2e(t,e){return t*e>0}var k2e,E2e=N(()=>{"use strict";o(Hrt,"intersectLine");o(w2e,"sameSign");k2e=Hrt});function Wrt(t,e,r){var n=t.x,i=t.y,a=[],s=Number.POSITIVE_INFINITY,l=Number.POSITIVE_INFINITY;typeof e.forEach=="function"?e.forEach(function(g){s=Math.min(s,g.x),l=Math.min(l,g.y)}):(s=Math.min(s,e.x),l=Math.min(l,e.y));for(var u=n-t.width/2-s,h=i-t.height/2-l,f=0;f<e.length;f++){var d=e[f],p=e[f<e.length-1?f+1:0],m=k2e(t,r,{x:u+d.x,y:h+d.y},{x:u+p.x,y:h+p.y});m&&a.push(m)}return a.length?(a.length>1&&a.sort(function(g,y){var x=g.x-r.x,v=g.y-r.y,b=Math.sqrt(x*x+v*v),T=y.x-r.x,S=y.y-r.y,w=Math.sqrt(T*T+S*S);return b<w?-1:b===w?0:1}),a[0]):t}var S2e,C2e=N(()=>{"use strict";E2e();S2e=Wrt;o(Wrt,"intersectPolygon")});var qrt,A2e,_2e=N(()=>{"use strict";qrt=o((t,e)=>{var r=t.x,n=t.y,i=e.x-r,a=e.y-n,s=t.width/2,l=t.height/2,u,h;return Math.abs(a)*s>Math.abs(i)*l?(a<0&&(l=-l),u=a===0?0:l*i/a,h=l):(i<0&&(s=-s),u=s,h=i===0?0:s*a/i),{x:r+u,y:n+h}},"intersectRect"),A2e=qrt});var Bn,KF=N(()=>{"use strict";x2e();T2e();jF();C2e();_2e();Bn={node:v2e,circle:b2e,ellipse:DC,polygon:S2e,rect:A2e}});function ql(t,e,r,n){return t.insert("polygon",":first-child").attr("points",n.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+r/2+")")}var Ri,ei,QF=N(()=>{"use strict";AC();$o();Xt();pr();dr();tr();Ri=o(async(t,e,r,n)=>{let i=ge(),a,s=e.useHtmlLabels||mr(i.flowchart.htmlLabels);r?a=r:a="node default";let l=t.insert("g").attr("class",a).attr("id",e.domId||e.id),u=l.insert("g").attr("class","label").attr("style",e.labelStyle),h;e.labelText===void 0?h="":h=typeof e.labelText=="string"?e.labelText:e.labelText[0];let f=u.node(),d;e.labelType==="markdown"?d=pi(u,ar(ea(h),i),{useHtmlLabels:s,width:e.width||i.flowchart.wrappingWidth,classes:"markdown-node-label"},i):d=f.appendChild(await ws(ar(ea(h),i),e.labelStyle,!1,n));let p=d.getBBox(),m=e.padding/2;if(mr(i.flowchart.htmlLabels)){let g=d.children[0],y=ze(d),x=g.getElementsByTagName("img");if(x){let v=h.replace(/<img[^>]*>/g,"").trim()==="";await Promise.all([...x].map(b=>new Promise(T=>{function S(){if(b.style.display="flex",b.style.flexDirection="column",v){let w=i.fontSize?i.fontSize:window.getComputedStyle(document.body).fontSize,_=parseInt(w,10)*5+"px";b.style.minWidth=_,b.style.maxWidth=_}else b.style.width="100%";T(b)}o(S,"setupImage"),setTimeout(()=>{b.complete&&S()}),b.addEventListener("error",S),b.addEventListener("load",S)})))}p=g.getBoundingClientRect(),y.attr("width",p.width),y.attr("height",p.height)}return s?u.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"):u.attr("transform","translate(0, "+-p.height/2+")"),e.centerLabel&&u.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),u.insert("rect",":first-child"),{shapeSvg:l,bbox:p,halfPadding:m,label:u}},"labelHelper"),ei=o((t,e)=>{let r=e.node().getBBox();t.width=r.width,t.height=r.height},"updateNodeBounds");o(ql,"insertPolygonShape")});var Yrt,D2e,L2e=N(()=>{"use strict";QF();pt();Xt();KF();Yrt=o(async(t,e)=>{e.useHtmlLabels||ge().flowchart.htmlLabels||(e.centerLabel=!0);let{shapeSvg:n,bbox:i,halfPadding:a}=await Ri(t,e,"node "+e.classes,!0);X.info("Classes = ",e.classes);let s=n.insert("rect",":first-child");return s.attr("rx",e.rx).attr("ry",e.ry).attr("x",-i.width/2-a).attr("y",-i.height/2-a).attr("width",i.width+e.padding).attr("height",i.height+e.padding),ei(e,s),e.intersect=function(l){return Bn.rect(e,l)},n},"note"),D2e=Yrt});function ZF(t,e,r,n){let i=[],a=o(l=>{i.push(l,0)},"addBorder"),s=o(l=>{i.push(0,l)},"skipBorder");e.includes("t")?(X.debug("add top border"),a(r)):s(r),e.includes("r")?(X.debug("add right border"),a(n)):s(n),e.includes("b")?(X.debug("add bottom border"),a(r)):s(r),e.includes("l")?(X.debug("add left border"),a(n)):s(n),t.attr("stroke-dasharray",i.join(" "))}var R2e,bo,N2e,Xrt,jrt,Krt,Qrt,Zrt,Jrt,ent,tnt,rnt,nnt,int,ant,snt,ont,lnt,cnt,unt,hnt,fnt,M2e,dnt,pnt,I2e,LC,JF,O2e,P2e=N(()=>{"use strict";pr();Xt();dr();pt();y2e();AC();KF();L2e();QF();R2e=o(t=>t?" "+t:"","formatClass"),bo=o((t,e)=>`${e||"node default"}${R2e(t.classes)} ${R2e(t.class)}`,"getClassesFromNode"),N2e=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,bo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=i+a,l=[{x:s/2,y:0},{x:s,y:-s/2},{x:s/2,y:-s},{x:0,y:-s/2}];X.info("Question main (Circle)");let u=ql(r,s,s,l);return u.attr("style",e.style),ei(e,u),e.intersect=function(h){return X.warn("Intersect called"),Bn.polygon(e,l,h)},r},"question"),Xrt=o((t,e)=>{let r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),n=28,i=[{x:0,y:n/2},{x:n/2,y:0},{x:0,y:-n/2},{x:-n/2,y:0}];return r.insert("polygon",":first-child").attr("points",i.map(function(s){return s.x+","+s.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),e.width=28,e.height=28,e.intersect=function(s){return Bn.circle(e,14,s)},r},"choice"),jrt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,bo(e,void 0),!0),i=4,a=n.height+e.padding,s=a/i,l=n.width+2*s+e.padding,u=[{x:s,y:0},{x:l-s,y:0},{x:l,y:-a/2},{x:l-s,y:-a},{x:s,y:-a},{x:0,y:-a/2}],h=ql(r,l,a,u);return h.attr("style",e.style),ei(e,h),e.intersect=function(f){return Bn.polygon(e,u,f)},r},"hexagon"),Krt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,void 0,!0),i=2,a=n.height+2*e.padding,s=a/i,l=n.width+2*s+e.padding,u=g2e(e.directions,n,e),h=ql(r,l,a,u);return h.attr("style",e.style),ei(e,h),e.intersect=function(f){return Bn.polygon(e,u,f)},r},"block_arrow"),Qrt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,bo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:-a/2,y:0},{x:i,y:0},{x:i,y:-a},{x:-a/2,y:-a},{x:0,y:-a/2}];return ql(r,i,a,s).attr("style",e.style),e.width=i+a,e.height=a,e.intersect=function(u){return Bn.polygon(e,s,u)},r},"rect_left_inv_arrow"),Zrt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,bo(e),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:-2*a/6,y:0},{x:i-a/6,y:0},{x:i+2*a/6,y:-a},{x:a/6,y:-a}],l=ql(r,i,a,s);return l.attr("style",e.style),ei(e,l),e.intersect=function(u){return Bn.polygon(e,s,u)},r},"lean_right"),Jrt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,bo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:2*a/6,y:0},{x:i+a/6,y:0},{x:i-2*a/6,y:-a},{x:-a/6,y:-a}],l=ql(r,i,a,s);return l.attr("style",e.style),ei(e,l),e.intersect=function(u){return Bn.polygon(e,s,u)},r},"lean_left"),ent=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,bo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:-2*a/6,y:0},{x:i+2*a/6,y:0},{x:i-a/6,y:-a},{x:a/6,y:-a}],l=ql(r,i,a,s);return l.attr("style",e.style),ei(e,l),e.intersect=function(u){return Bn.polygon(e,s,u)},r},"trapezoid"),tnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,bo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:a/6,y:0},{x:i-a/6,y:0},{x:i+2*a/6,y:-a},{x:-2*a/6,y:-a}],l=ql(r,i,a,s);return l.attr("style",e.style),ei(e,l),e.intersect=function(u){return Bn.polygon(e,s,u)},r},"inv_trapezoid"),rnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,bo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:0,y:0},{x:i+a/2,y:0},{x:i,y:-a/2},{x:i+a/2,y:-a},{x:0,y:-a}],l=ql(r,i,a,s);return l.attr("style",e.style),ei(e,l),e.intersect=function(u){return Bn.polygon(e,s,u)},r},"rect_right_inv_arrow"),nnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,bo(e,void 0),!0),i=n.width+e.padding,a=i/2,s=a/(2.5+i/50),l=n.height+s+e.padding,u="M 0,"+s+" a "+a+","+s+" 0,0,0 "+i+" 0 a "+a+","+s+" 0,0,0 "+-i+" 0 l 0,"+l+" a "+a+","+s+" 0,0,0 "+i+" 0 l 0,"+-l,h=r.attr("label-offset-y",s).insert("path",":first-child").attr("style",e.style).attr("d",u).attr("transform","translate("+-i/2+","+-(l/2+s)+")");return ei(e,h),e.intersect=function(f){let d=Bn.rect(e,f),p=d.x-e.x;if(a!=0&&(Math.abs(p)<e.width/2||Math.abs(p)==e.width/2&&Math.abs(d.y-e.y)>e.height/2-s)){let m=s*s*(1-p*p/(a*a));m!=0&&(m=Math.sqrt(m)),m=s-m,f.y-e.y>0&&(m=-m),d.y+=m}return d},r},"cylinder"),int=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Ri(t,e,"node "+e.classes+" "+e.class,!0),a=r.insert("rect",":first-child"),s=e.positioned?e.width:n.width+e.padding,l=e.positioned?e.height:n.height+e.padding,u=e.positioned?-s/2:-n.width/2-i,h=e.positioned?-l/2:-n.height/2-i;if(a.attr("class","basic label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",u).attr("y",h).attr("width",s).attr("height",l),e.props){let f=new Set(Object.keys(e.props));e.props.borders&&(ZF(a,e.props.borders,s,l),f.delete("borders")),f.forEach(d=>{X.warn(`Unknown node property ${d}`)})}return ei(e,a),e.intersect=function(f){return Bn.rect(e,f)},r},"rect"),ant=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Ri(t,e,"node "+e.classes,!0),a=r.insert("rect",":first-child"),s=e.positioned?e.width:n.width+e.padding,l=e.positioned?e.height:n.height+e.padding,u=e.positioned?-s/2:-n.width/2-i,h=e.positioned?-l/2:-n.height/2-i;if(a.attr("class","basic cluster composite label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",u).attr("y",h).attr("width",s).attr("height",l),e.props){let f=new Set(Object.keys(e.props));e.props.borders&&(ZF(a,e.props.borders,s,l),f.delete("borders")),f.forEach(d=>{X.warn(`Unknown node property ${d}`)})}return ei(e,a),e.intersect=function(f){return Bn.rect(e,f)},r},"composite"),snt=o(async(t,e)=>{let{shapeSvg:r}=await Ri(t,e,"label",!0);X.trace("Classes = ",e.class);let n=r.insert("rect",":first-child"),i=0,a=0;if(n.attr("width",i).attr("height",a),r.attr("class","label edgeLabel"),e.props){let s=new Set(Object.keys(e.props));e.props.borders&&(ZF(n,e.props.borders,i,a),s.delete("borders")),s.forEach(l=>{X.warn(`Unknown node property ${l}`)})}return ei(e,n),e.intersect=function(s){return Bn.rect(e,s)},r},"labelRect");o(ZF,"applyNodePropertyBorders");ont=o(async(t,e)=>{let r;e.classes?r="node "+e.classes:r="node default";let n=t.insert("g").attr("class",r).attr("id",e.domId||e.id),i=n.insert("rect",":first-child"),a=n.insert("line"),s=n.insert("g").attr("class","label"),l=e.labelText.flat?e.labelText.flat():e.labelText,u="";typeof l=="object"?u=l[0]:u=l,X.info("Label text abc79",u,l,typeof l=="object");let h=s.node().appendChild(await ws(u,e.labelStyle,!0,!0)),f={width:0,height:0};if(mr(ge().flowchart.htmlLabels)){let y=h.children[0],x=ze(h);f=y.getBoundingClientRect(),x.attr("width",f.width),x.attr("height",f.height)}X.info("Text 2",l);let d=l.slice(1,l.length),p=h.getBBox(),m=s.node().appendChild(await ws(d.join?d.join("<br/>"):d,e.labelStyle,!0,!0));if(mr(ge().flowchart.htmlLabels)){let y=m.children[0],x=ze(m);f=y.getBoundingClientRect(),x.attr("width",f.width),x.attr("height",f.height)}let g=e.padding/2;return ze(m).attr("transform","translate( "+(f.width>p.width?0:(p.width-f.width)/2)+", "+(p.height+g+5)+")"),ze(h).attr("transform","translate( "+(f.width<p.width?0:-(p.width-f.width)/2)+", 0)"),f=s.node().getBBox(),s.attr("transform","translate("+-f.width/2+", "+(-f.height/2-g+3)+")"),i.attr("class","outer title-state").attr("x",-f.width/2-g).attr("y",-f.height/2-g).attr("width",f.width+e.padding).attr("height",f.height+e.padding),a.attr("class","divider").attr("x1",-f.width/2-g).attr("x2",f.width/2+g).attr("y1",-f.height/2-g+p.height+g).attr("y2",-f.height/2-g+p.height+g),ei(e,i),e.intersect=function(y){return Bn.rect(e,y)},n},"rectWithTitle"),lnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,bo(e,void 0),!0),i=n.height+e.padding,a=n.width+i/4+e.padding,s=r.insert("rect",":first-child").attr("style",e.style).attr("rx",i/2).attr("ry",i/2).attr("x",-a/2).attr("y",-i/2).attr("width",a).attr("height",i);return ei(e,s),e.intersect=function(l){return Bn.rect(e,l)},r},"stadium"),cnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Ri(t,e,bo(e,void 0),!0),a=r.insert("circle",":first-child");return a.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",n.width/2+i).attr("width",n.width+e.padding).attr("height",n.height+e.padding),X.info("Circle main"),ei(e,a),e.intersect=function(s){return X.info("Circle intersect",e,n.width/2+i,s),Bn.circle(e,n.width/2+i,s)},r},"circle"),unt=o(async(t,e)=>{let{shapeSvg:r,bbox:n,halfPadding:i}=await Ri(t,e,bo(e,void 0),!0),a=5,s=r.insert("g",":first-child"),l=s.insert("circle"),u=s.insert("circle");return s.attr("class",e.class),l.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",n.width/2+i+a).attr("width",n.width+e.padding+a*2).attr("height",n.height+e.padding+a*2),u.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",n.width/2+i).attr("width",n.width+e.padding).attr("height",n.height+e.padding),X.info("DoubleCircle main"),ei(e,l),e.intersect=function(h){return X.info("DoubleCircle intersect",e,n.width/2+i+a,h),Bn.circle(e,n.width/2+i+a,h)},r},"doublecircle"),hnt=o(async(t,e)=>{let{shapeSvg:r,bbox:n}=await Ri(t,e,bo(e,void 0),!0),i=n.width+e.padding,a=n.height+e.padding,s=[{x:0,y:0},{x:i,y:0},{x:i,y:-a},{x:0,y:-a},{x:0,y:0},{x:-8,y:0},{x:i+8,y:0},{x:i+8,y:-a},{x:-8,y:-a},{x:-8,y:0}],l=ql(r,i,a,s);return l.attr("style",e.style),ei(e,l),e.intersect=function(u){return Bn.polygon(e,s,u)},r},"subroutine"),fnt=o((t,e)=>{let r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),n=r.insert("circle",":first-child");return n.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),ei(e,n),e.intersect=function(i){return Bn.circle(e,7,i)},r},"start"),M2e=o((t,e,r)=>{let n=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),i=70,a=10;r==="LR"&&(i=10,a=70);let s=n.append("rect").attr("x",-1*i/2).attr("y",-1*a/2).attr("width",i).attr("height",a).attr("class","fork-join");return ei(e,s),e.height=e.height+e.padding/2,e.width=e.width+e.padding/2,e.intersect=function(l){return Bn.rect(e,l)},n},"forkJoin"),dnt=o((t,e)=>{let r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),n=r.insert("circle",":first-child"),i=r.insert("circle",":first-child");return i.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),n.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),ei(e,i),e.intersect=function(a){return Bn.circle(e,7,a)},r},"end"),pnt=o(async(t,e)=>{let r=e.padding/2,n=4,i=8,a;e.classes?a="node "+e.classes:a="node default";let s=t.insert("g").attr("class",a).attr("id",e.domId||e.id),l=s.insert("rect",":first-child"),u=s.insert("line"),h=s.insert("line"),f=0,d=n,p=s.insert("g").attr("class","label"),m=0,g=e.classData.annotations?.[0],y=e.classData.annotations[0]?"\xAB"+e.classData.annotations[0]+"\xBB":"",x=p.node().appendChild(await ws(y,e.labelStyle,!0,!0)),v=x.getBBox();if(mr(ge().flowchart.htmlLabels)){let A=x.children[0],D=ze(x);v=A.getBoundingClientRect(),D.attr("width",v.width),D.attr("height",v.height)}e.classData.annotations[0]&&(d+=v.height+n,f+=v.width);let b=e.classData.label;e.classData.type!==void 0&&e.classData.type!==""&&(ge().flowchart.htmlLabels?b+="<"+e.classData.type+">":b+="<"+e.classData.type+">");let T=p.node().appendChild(await ws(b,e.labelStyle,!0,!0));ze(T).attr("class","classTitle");let S=T.getBBox();if(mr(ge().flowchart.htmlLabels)){let A=T.children[0],D=ze(T);S=A.getBoundingClientRect(),D.attr("width",S.width),D.attr("height",S.height)}d+=S.height+n,S.width>f&&(f=S.width);let w=[];e.classData.members.forEach(async A=>{let D=A.getDisplayDetails(),O=D.displayText;ge().flowchart.htmlLabels&&(O=O.replace(/</g,"<").replace(/>/g,">"));let R=p.node().appendChild(await ws(O,D.cssStyle?D.cssStyle:e.labelStyle,!0,!0)),k=R.getBBox();if(mr(ge().flowchart.htmlLabels)){let L=R.children[0],C=ze(R);k=L.getBoundingClientRect(),C.attr("width",k.width),C.attr("height",k.height)}k.width>f&&(f=k.width),d+=k.height+n,w.push(R)}),d+=i;let E=[];if(e.classData.methods.forEach(async A=>{let D=A.getDisplayDetails(),O=D.displayText;ge().flowchart.htmlLabels&&(O=O.replace(/</g,"<").replace(/>/g,">"));let R=p.node().appendChild(await ws(O,D.cssStyle?D.cssStyle:e.labelStyle,!0,!0)),k=R.getBBox();if(mr(ge().flowchart.htmlLabels)){let L=R.children[0],C=ze(R);k=L.getBoundingClientRect(),C.attr("width",k.width),C.attr("height",k.height)}k.width>f&&(f=k.width),d+=k.height+n,E.push(R)}),d+=i,g){let A=(f-v.width)/2;ze(x).attr("transform","translate( "+(-1*f/2+A)+", "+-1*d/2+")"),m=v.height+n}let _=(f-S.width)/2;return ze(T).attr("transform","translate( "+(-1*f/2+_)+", "+(-1*d/2+m)+")"),m+=S.height+n,u.attr("class","divider").attr("x1",-f/2-r).attr("x2",f/2+r).attr("y1",-d/2-r+i+m).attr("y2",-d/2-r+i+m),m+=i,w.forEach(A=>{ze(A).attr("transform","translate( "+-f/2+", "+(-1*d/2+m+i/2)+")");let D=A?.getBBox();m+=(D?.height??0)+n}),m+=i,h.attr("class","divider").attr("x1",-f/2-r).attr("x2",f/2+r).attr("y1",-d/2-r+i+m).attr("y2",-d/2-r+i+m),m+=i,E.forEach(A=>{ze(A).attr("transform","translate( "+-f/2+", "+(-1*d/2+m)+")");let D=A?.getBBox();m+=(D?.height??0)+n}),l.attr("style",e.style).attr("class","outer title-state").attr("x",-f/2-r).attr("y",-(d/2)-r).attr("width",f+e.padding).attr("height",d+e.padding),ei(e,l),e.intersect=function(A){return Bn.rect(e,A)},s},"class_box"),I2e={rhombus:N2e,composite:ant,question:N2e,rect:int,labelRect:snt,rectWithTitle:ont,choice:Xrt,circle:cnt,doublecircle:unt,stadium:lnt,hexagon:jrt,block_arrow:Krt,rect_left_inv_arrow:Qrt,lean_right:Zrt,lean_left:Jrt,trapezoid:ent,inv_trapezoid:tnt,rect_right_inv_arrow:rnt,cylinder:nnt,start:fnt,end:dnt,note:D2e,subroutine:hnt,fork:M2e,join:M2e,class_box:pnt},LC={},JF=o(async(t,e,r)=>{let n,i;if(e.link){let a;ge().securityLevel==="sandbox"?a="_top":e.linkTarget&&(a=e.linkTarget||"_blank"),n=t.insert("svg:a").attr("xlink:href",e.link).attr("target",a),i=await I2e[e.shape](n,e,r)}else i=await I2e[e.shape](t,e,r),n=i;return e.tooltip&&i.attr("title",e.tooltip),e.class&&i.attr("class","node default "+e.class),LC[e.id]=n,e.haveCallback&&LC[e.id].attr("class",LC[e.id].attr("class")+" clickable"),n},"insertNode"),O2e=o(t=>{let e=LC[t.id];X.trace("Transforming node",t.diff,t,"translate("+(t.x-t.width/2-5)+", "+t.width/2+")");let r=8,n=t.diff||0;return t.clusterNode?e.attr("transform","translate("+(t.x+n-t.width/2)+", "+(t.y-t.height/2-r)+")"):e.attr("transform","translate("+t.x+", "+t.y+")"),n},"positionNode")});function B2e(t,e,r=!1){let n=t,i="default";(n?.classes?.length||0)>0&&(i=(n?.classes??[]).join(" ")),i=i+" flowchart-label";let a=0,s="",l;switch(n.type){case"round":a=5,s="rect";break;case"composite":a=0,s="composite",l=0;break;case"square":s="rect";break;case"diamond":s="question";break;case"hexagon":s="hexagon";break;case"block_arrow":s="block_arrow";break;case"odd":s="rect_left_inv_arrow";break;case"lean_right":s="lean_right";break;case"lean_left":s="lean_left";break;case"trapezoid":s="trapezoid";break;case"inv_trapezoid":s="inv_trapezoid";break;case"rect_left_inv_arrow":s="rect_left_inv_arrow";break;case"circle":s="circle";break;case"ellipse":s="ellipse";break;case"stadium":s="stadium";break;case"subroutine":s="subroutine";break;case"cylinder":s="cylinder";break;case"group":s="rect";break;case"doublecircle":s="doublecircle";break;default:s="rect"}let u=IL(n?.styles??[]),h=n.label,f=n.size??{width:0,height:0,x:0,y:0};return{labelStyle:u.labelStyle,shape:s,labelText:h,rx:a,ry:a,class:i,style:u.style,id:n.id,directions:n.directions,width:f.width,height:f.height,x:f.x,y:f.y,positioned:r,intersect:void 0,type:n.type,padding:l??Qt()?.block?.padding??0}}async function mnt(t,e,r){let n=B2e(e,r,!1);if(n.type==="group")return;let i=Qt(),a=await JF(t,n,{config:i}),s=a.node().getBBox(),l=r.getBlock(n.id);l.size={width:s.width,height:s.height,x:0,y:0,node:a},r.setBlock(l),a.remove()}async function gnt(t,e,r){let n=B2e(e,r,!0);if(r.getBlock(n.id).type!=="space"){let a=Qt();await JF(t,n,{config:a}),e.intersect=n?.intersect,O2e(n)}}async function e$(t,e,r,n){for(let i of e)await n(t,i,r),i.children&&await e$(t,i.children,r,n)}async function F2e(t,e,r){await e$(t,e,r,mnt)}async function $2e(t,e,r){await e$(t,e,r,gnt)}async function G2e(t,e,r,n,i){let a=new sn({multigraph:!0,compound:!0});a.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(let s of r)s.size&&a.setNode(s.id,{width:s.size.width,height:s.size.height,intersect:s.intersect});for(let s of e)if(s.start&&s.end){let l=n.getBlock(s.start),u=n.getBlock(s.end);if(l?.size&&u?.size){let h=l.size,f=u.size,d=[{x:h.x,y:h.y},{x:h.x+(f.x-h.x)/2,y:h.y+(f.y-h.y)/2},{x:f.x,y:f.y}];p2e(t,{v:s.start,w:s.end,name:s.id},{...s,arrowTypeEnd:s.arrowTypeEnd,arrowTypeStart:s.arrowTypeStart,points:d,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"},void 0,"block",a,i),s.label&&(await f2e(t,{...s,label:s.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:s.arrowTypeEnd,arrowTypeStart:s.arrowTypeStart,points:d,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"}),d2e({...s,x:d[1].x,y:d[1].y},{originalPath:d}))}}}var z2e=N(()=>{"use strict";Wo();Wn();m2e();P2e();tr();o(B2e,"getNodeFromBlock");o(mnt,"calculateBlockSize");o(gnt,"insertBlockPositioned");o(e$,"performOperations");o(F2e,"calculateBlockSizes");o($2e,"insertBlocks");o(G2e,"insertEdges")});var ynt,vnt,V2e,U2e=N(()=>{"use strict";pr();Wn();r2e();pt();Ci();s2e();z2e();ynt=o(function(t,e){return e.db.getClasses()},"getClasses"),vnt=o(async function(t,e,r,n){let{securityLevel:i,block:a}=Qt(),s=n.db,l;i==="sandbox"&&(l=ze("#i"+e));let u=i==="sandbox"?ze(l.nodes()[0].contentDocument.body):ze("body"),h=i==="sandbox"?u.select(`[id="${e}"]`):ze(`[id="${e}"]`);t2e(h,["point","circle","cross"],n.type,e);let d=s.getBlocks(),p=s.getBlocksFlat(),m=s.getEdges(),g=h.insert("g").attr("class","block");await F2e(g,d,s);let y=a2e(s);if(await $2e(g,d,s),await G2e(g,m,p,s,e),y){let x=y,v=Math.max(1,Math.round(.125*(x.width/x.height))),b=x.height+v+10,T=x.width+10,{useMaxWidth:S}=a;fn(h,b,T,!!S),X.debug("Here Bounds",y,x),h.attr("viewBox",`${x.x-5} ${x.y-5} ${x.width+10} ${x.height+10}`)}},"draw"),V2e={draw:vnt,getClasses:ynt}});var H2e={};ur(H2e,{diagram:()=>xnt});var xnt,W2e=N(()=>{"use strict";Wve();Zve();e2e();U2e();xnt={parser:Hve,db:Qve,renderer:V2e,styles:Jve}});var t$,r$,N4,X2e,n$,Ya,tu,M4,j2e,knt,I4,K2e,Q2e,Z2e,J2e,exe,RC,Kf,NC=N(()=>{"use strict";t$={L:"left",R:"right",T:"top",B:"bottom"},r$={L:o(t=>`${t},${t/2} 0,${t} 0,0`,"L"),R:o(t=>`0,${t/2} ${t},0 ${t},${t}`,"R"),T:o(t=>`0,0 ${t},0 ${t/2},${t}`,"T"),B:o(t=>`${t/2},0 ${t},${t} 0,${t}`,"B")},N4={L:o((t,e)=>t-e+2,"L"),R:o((t,e)=>t-2,"R"),T:o((t,e)=>t-e+2,"T"),B:o((t,e)=>t-2,"B")},X2e=o(function(t){return Ya(t)?t==="L"?"R":"L":t==="T"?"B":"T"},"getOppositeArchitectureDirection"),n$=o(function(t){let e=t;return e==="L"||e==="R"||e==="T"||e==="B"},"isArchitectureDirection"),Ya=o(function(t){let e=t;return e==="L"||e==="R"},"isArchitectureDirectionX"),tu=o(function(t){let e=t;return e==="T"||e==="B"},"isArchitectureDirectionY"),M4=o(function(t,e){let r=Ya(t)&&tu(e),n=tu(t)&&Ya(e);return r||n},"isArchitectureDirectionXY"),j2e=o(function(t){let e=t[0],r=t[1],n=Ya(e)&&tu(r),i=tu(e)&&Ya(r);return n||i},"isArchitecturePairXY"),knt=o(function(t){return t!=="LL"&&t!=="RR"&&t!=="TT"&&t!=="BB"},"isValidArchitectureDirectionPair"),I4=o(function(t,e){let r=`${t}${e}`;return knt(r)?r:void 0},"getArchitectureDirectionPair"),K2e=o(function([t,e],r){let n=r[0],i=r[1];return Ya(n)?tu(i)?[t+(n==="L"?-1:1),e+(i==="T"?1:-1)]:[t+(n==="L"?-1:1),e]:Ya(i)?[t+(i==="L"?1:-1),e+(n==="T"?1:-1)]:[t,e+(n==="T"?1:-1)]},"shiftPositionByArchitectureDirectionPair"),Q2e=o(function(t){return t==="LT"||t==="TL"?[1,1]:t==="BL"||t==="LB"?[1,-1]:t==="BR"||t==="RB"?[-1,-1]:[-1,1]},"getArchitectureDirectionXYFactors"),Z2e=o(function(t,e){return M4(t,e)?"bend":Ya(t)?"horizontal":"vertical"},"getArchitectureDirectionAlignment"),J2e=o(function(t){return t.type==="service"},"isArchitectureService"),exe=o(function(t){return t.type==="junction"},"isArchitectureJunction"),RC=o(t=>t.data(),"edgeData"),Kf=o(t=>t.data(),"nodeData")});var Ent,gy,i$=N(()=>{"use strict";Wn();_a();tr();ui();NC();Ent=lr.architecture,gy=class{constructor(){this.nodes={};this.groups={};this.edges=[];this.registeredIds={};this.elements={};this.setAccTitle=Cr;this.getAccTitle=_r;this.setDiagramTitle=Or;this.getDiagramTitle=Rr;this.getAccDescription=Lr;this.setAccDescription=Dr;this.clear()}static{o(this,"ArchitectureDB")}clear(){this.nodes={},this.groups={},this.edges=[],this.registeredIds={},this.dataStructures=void 0,this.elements={},wr()}addService({id:e,icon:r,in:n,title:i,iconText:a}){if(this.registeredIds[e]!==void 0)throw new Error(`The service id [${e}] is already in use by another ${this.registeredIds[e]}`);if(n!==void 0){if(e===n)throw new Error(`The service [${e}] cannot be placed within itself`);if(this.registeredIds[n]===void 0)throw new Error(`The service [${e}]'s parent does not exist. Please make sure the parent is created before this service`);if(this.registeredIds[n]==="node")throw new Error(`The service [${e}]'s parent is not a group`)}this.registeredIds[e]="node",this.nodes[e]={id:e,type:"service",icon:r,iconText:a,title:i,edges:[],in:n}}getServices(){return Object.values(this.nodes).filter(J2e)}addJunction({id:e,in:r}){this.registeredIds[e]="node",this.nodes[e]={id:e,type:"junction",edges:[],in:r}}getJunctions(){return Object.values(this.nodes).filter(exe)}getNodes(){return Object.values(this.nodes)}getNode(e){return this.nodes[e]??null}addGroup({id:e,icon:r,in:n,title:i}){if(this.registeredIds?.[e]!==void 0)throw new Error(`The group id [${e}] is already in use by another ${this.registeredIds[e]}`);if(n!==void 0){if(e===n)throw new Error(`The group [${e}] cannot be placed within itself`);if(this.registeredIds?.[n]===void 0)throw new Error(`The group [${e}]'s parent does not exist. Please make sure the parent is created before this group`);if(this.registeredIds?.[n]==="node")throw new Error(`The group [${e}]'s parent is not a group`)}this.registeredIds[e]="group",this.groups[e]={id:e,icon:r,title:i,in:n}}getGroups(){return Object.values(this.groups)}addEdge({lhsId:e,rhsId:r,lhsDir:n,rhsDir:i,lhsInto:a,rhsInto:s,lhsGroup:l,rhsGroup:u,title:h}){if(!n$(n))throw new Error(`Invalid direction given for left hand side of edge ${e}--${r}. Expected (L,R,T,B) got ${String(n)}`);if(!n$(i))throw new Error(`Invalid direction given for right hand side of edge ${e}--${r}. Expected (L,R,T,B) got ${String(i)}`);if(this.nodes[e]===void 0&&this.groups[e]===void 0)throw new Error(`The left-hand id [${e}] does not yet exist. Please create the service/group before declaring an edge to it.`);if(this.nodes[r]===void 0&&this.groups[r]===void 0)throw new Error(`The right-hand id [${r}] does not yet exist. Please create the service/group before declaring an edge to it.`);let f=this.nodes[e].in,d=this.nodes[r].in;if(l&&f&&d&&f==d)throw new Error(`The left-hand id [${e}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);if(u&&f&&d&&f==d)throw new Error(`The right-hand id [${r}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);let p={lhsId:e,lhsDir:n,lhsInto:a,lhsGroup:l,rhsId:r,rhsDir:i,rhsInto:s,rhsGroup:u,title:h};this.edges.push(p),this.nodes[e]&&this.nodes[r]&&(this.nodes[e].edges.push(this.edges[this.edges.length-1]),this.nodes[r].edges.push(this.edges[this.edges.length-1]))}getEdges(){return this.edges}getDataStructures(){if(this.dataStructures===void 0){let e={},r=Object.entries(this.nodes).reduce((u,[h,f])=>(u[h]=f.edges.reduce((d,p)=>{let m=this.getNode(p.lhsId)?.in,g=this.getNode(p.rhsId)?.in;if(m&&g&&m!==g){let y=Z2e(p.lhsDir,p.rhsDir);y!=="bend"&&(e[m]??={},e[m][g]=y,e[g]??={},e[g][m]=y)}if(p.lhsId===h){let y=I4(p.lhsDir,p.rhsDir);y&&(d[y]=p.rhsId)}else{let y=I4(p.rhsDir,p.lhsDir);y&&(d[y]=p.lhsId)}return d},{}),u),{}),n=Object.keys(r)[0],i={[n]:1},a=Object.keys(r).reduce((u,h)=>h===n?u:{...u,[h]:1},{}),s=o(u=>{let h={[u]:[0,0]},f=[u];for(;f.length>0;){let d=f.shift();if(d){i[d]=1,delete a[d];let p=r[d],[m,g]=h[d];Object.entries(p).forEach(([y,x])=>{i[x]||(h[x]=K2e([m,g],y),f.push(x))})}}return h},"BFS"),l=[s(n)];for(;Object.keys(a).length>0;)l.push(s(Object.keys(a)[0]));this.dataStructures={adjList:r,spatialMaps:l,groupAlignments:e}}return this.dataStructures}setElementForId(e,r){this.elements[e]=r}getElementById(e){return this.elements[e]}getConfig(){return Vn({...Ent,...Qt().architecture})}getConfigField(e){return this.getConfig()[e]}}});var Snt,a$,txe=N(()=>{"use strict";Ff();pt();Zp();i$();Snt=o((t,e)=>{nl(t,e),t.groups.map(r=>e.addGroup(r)),t.services.map(r=>e.addService({...r,type:"service"})),t.junctions.map(r=>e.addJunction({...r,type:"junction"})),t.edges.map(r=>e.addEdge(r))},"populateDb"),a$={parser:{yy:void 0},parse:o(async t=>{let e=await xs("architecture",t);X.debug(e);let r=a$.parser?.yy;if(!(r instanceof gy))throw new Error("parser.parser?.yy was not a ArchitectureDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Snt(e,r)},"parse")}});var Cnt,rxe,nxe=N(()=>{"use strict";Cnt=o(t=>`
|
||
.edge {
|
||
stroke-width: ${t.archEdgeWidth};
|
||
stroke: ${t.archEdgeColor};
|
||
fill: none;
|
||
}
|
||
|
||
.arrow {
|
||
fill: ${t.archEdgeArrowColor};
|
||
}
|
||
|
||
.node-bkg {
|
||
fill: none;
|
||
stroke: ${t.archGroupBorderColor};
|
||
stroke-width: ${t.archGroupBorderWidth};
|
||
stroke-dasharray: 8;
|
||
}
|
||
.node-icon-text {
|
||
display: flex;
|
||
align-items: center;
|
||
}
|
||
|
||
.node-icon-text > div {
|
||
color: #fff;
|
||
margin: 1px;
|
||
height: fit-content;
|
||
text-align: center;
|
||
overflow: hidden;
|
||
display: -webkit-box;
|
||
-webkit-box-orient: vertical;
|
||
}
|
||
`,"getStyles"),rxe=Cnt});var o$=Aa((O4,s$)=>{"use strict";o(function(e,r){typeof O4=="object"&&typeof s$=="object"?s$.exports=r():typeof define=="function"&&define.amd?define([],r):typeof O4=="object"?O4.layoutBase=r():e.layoutBase=r()},"webpackUniversalModuleDefinition")(O4,function(){return function(t){var e={};function r(n){if(e[n])return e[n].exports;var i=e[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return o(r,"__webpack_require__"),r.m=t,r.c=e,r.i=function(n){return n},r.d=function(n,i,a){r.o(n,i)||Object.defineProperty(n,i,{configurable:!1,enumerable:!0,get:a})},r.n=function(n){var i=n&&n.__esModule?o(function(){return n.default},"getDefault"):o(function(){return n},"getModuleExports");return r.d(i,"a",i),i},r.o=function(n,i){return Object.prototype.hasOwnProperty.call(n,i)},r.p="",r(r.s=28)}([function(t,e,r){"use strict";function n(){}o(n,"LayoutConstants"),n.QUALITY=1,n.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,n.DEFAULT_INCREMENTAL=!1,n.DEFAULT_ANIMATION_ON_LAYOUT=!0,n.DEFAULT_ANIMATION_DURING_LAYOUT=!1,n.DEFAULT_ANIMATION_PERIOD=50,n.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,n.DEFAULT_GRAPH_MARGIN=15,n.NODE_DIMENSIONS_INCLUDE_LABELS=!1,n.SIMPLE_NODE_SIZE=40,n.SIMPLE_NODE_HALF_SIZE=n.SIMPLE_NODE_SIZE/2,n.EMPTY_COMPOUND_NODE_SIZE=40,n.MIN_EDGE_LENGTH=1,n.WORLD_BOUNDARY=1e6,n.INITIAL_WORLD_BOUNDARY=n.WORLD_BOUNDARY/1e3,n.WORLD_CENTER_X=1200,n.WORLD_CENTER_Y=900,t.exports=n},function(t,e,r){"use strict";var n=r(2),i=r(8),a=r(9);function s(u,h,f){n.call(this,f),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=f,this.bendpoints=[],this.source=u,this.target=h}o(s,"LEdge"),s.prototype=Object.create(n.prototype);for(var l in n)s[l]=n[l];s.prototype.getSource=function(){return this.source},s.prototype.getTarget=function(){return this.target},s.prototype.isInterGraph=function(){return this.isInterGraph},s.prototype.getLength=function(){return this.length},s.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},s.prototype.getBendpoints=function(){return this.bendpoints},s.prototype.getLca=function(){return this.lca},s.prototype.getSourceInLca=function(){return this.sourceInLca},s.prototype.getTargetInLca=function(){return this.targetInLca},s.prototype.getOtherEnd=function(u){if(this.source===u)return this.target;if(this.target===u)return this.source;throw"Node is not incident with this edge"},s.prototype.getOtherEndInGraph=function(u,h){for(var f=this.getOtherEnd(u),d=h.getGraphManager().getRoot();;){if(f.getOwner()==h)return f;if(f.getOwner()==d)break;f=f.getOwner().getParent()}return null},s.prototype.updateLength=function(){var u=new Array(4);this.isOverlapingSourceAndTarget=i.getIntersection(this.target.getRect(),this.source.getRect(),u),this.isOverlapingSourceAndTarget||(this.lengthX=u[0]-u[2],this.lengthY=u[1]-u[3],Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY))},s.prototype.updateLengthSimple=function(){this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},t.exports=s},function(t,e,r){"use strict";function n(i){this.vGraphObject=i}o(n,"LGraphObject"),t.exports=n},function(t,e,r){"use strict";var n=r(2),i=r(10),a=r(13),s=r(0),l=r(16),u=r(5);function h(d,p,m,g){m==null&&g==null&&(g=p),n.call(this,g),d.graphManager!=null&&(d=d.graphManager),this.estimatedSize=i.MIN_VALUE,this.inclusionTreeDepth=i.MAX_VALUE,this.vGraphObject=g,this.edges=[],this.graphManager=d,m!=null&&p!=null?this.rect=new a(p.x,p.y,m.width,m.height):this.rect=new a}o(h,"LNode"),h.prototype=Object.create(n.prototype);for(var f in n)h[f]=n[f];h.prototype.getEdges=function(){return this.edges},h.prototype.getChild=function(){return this.child},h.prototype.getOwner=function(){return this.owner},h.prototype.getWidth=function(){return this.rect.width},h.prototype.setWidth=function(d){this.rect.width=d},h.prototype.getHeight=function(){return this.rect.height},h.prototype.setHeight=function(d){this.rect.height=d},h.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},h.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},h.prototype.getCenter=function(){return new u(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},h.prototype.getLocation=function(){return new u(this.rect.x,this.rect.y)},h.prototype.getRect=function(){return this.rect},h.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},h.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},h.prototype.setRect=function(d,p){this.rect.x=d.x,this.rect.y=d.y,this.rect.width=p.width,this.rect.height=p.height},h.prototype.setCenter=function(d,p){this.rect.x=d-this.rect.width/2,this.rect.y=p-this.rect.height/2},h.prototype.setLocation=function(d,p){this.rect.x=d,this.rect.y=p},h.prototype.moveBy=function(d,p){this.rect.x+=d,this.rect.y+=p},h.prototype.getEdgeListToNode=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(y.target==d){if(y.source!=g)throw"Incorrect edge source!";p.push(y)}}),p},h.prototype.getEdgesBetween=function(d){var p=[],m,g=this;return g.edges.forEach(function(y){if(!(y.source==g||y.target==g))throw"Incorrect edge source and/or target";(y.target==d||y.source==d)&&p.push(y)}),p},h.prototype.getNeighborsList=function(){var d=new Set,p=this;return p.edges.forEach(function(m){if(m.source==p)d.add(m.target);else{if(m.target!=p)throw"Incorrect incidency!";d.add(m.source)}}),d},h.prototype.withChildren=function(){var d=new Set,p,m;if(d.add(this),this.child!=null)for(var g=this.child.getNodes(),y=0;y<g.length;y++)p=g[y],m=p.withChildren(),m.forEach(function(x){d.add(x)});return d},h.prototype.getNoOfChildren=function(){var d=0,p;if(this.child==null)d=1;else for(var m=this.child.getNodes(),g=0;g<m.length;g++)p=m[g],d+=p.getNoOfChildren();return d==0&&(d=1),d},h.prototype.getEstimatedSize=function(){if(this.estimatedSize==i.MIN_VALUE)throw"assert failed";return this.estimatedSize},h.prototype.calcEstimatedSize=function(){return this.child==null?this.estimatedSize=(this.rect.width+this.rect.height)/2:(this.estimatedSize=this.child.calcEstimatedSize(),this.rect.width=this.estimatedSize,this.rect.height=this.estimatedSize,this.estimatedSize)},h.prototype.scatter=function(){var d,p,m=-s.INITIAL_WORLD_BOUNDARY,g=s.INITIAL_WORLD_BOUNDARY;d=s.WORLD_CENTER_X+l.nextDouble()*(g-m)+m;var y=-s.INITIAL_WORLD_BOUNDARY,x=s.INITIAL_WORLD_BOUNDARY;p=s.WORLD_CENTER_Y+l.nextDouble()*(x-y)+y,this.rect.x=d,this.rect.y=p},h.prototype.updateBounds=function(){if(this.getChild()==null)throw"assert failed";if(this.getChild().getNodes().length!=0){var d=this.getChild();if(d.updateBounds(!0),this.rect.x=d.getLeft(),this.rect.y=d.getTop(),this.setWidth(d.getRight()-d.getLeft()),this.setHeight(d.getBottom()-d.getTop()),s.NODE_DIMENSIONS_INCLUDE_LABELS){var p=d.getRight()-d.getLeft(),m=d.getBottom()-d.getTop();this.labelWidth&&(this.labelPosHorizontal=="left"?(this.rect.x-=this.labelWidth,this.setWidth(p+this.labelWidth)):this.labelPosHorizontal=="center"&&this.labelWidth>p?(this.rect.x-=(this.labelWidth-p)/2,this.setWidth(this.labelWidth)):this.labelPosHorizontal=="right"&&this.setWidth(p+this.labelWidth)),this.labelHeight&&(this.labelPosVertical=="top"?(this.rect.y-=this.labelHeight,this.setHeight(m+this.labelHeight)):this.labelPosVertical=="center"&&this.labelHeight>m?(this.rect.y-=(this.labelHeight-m)/2,this.setHeight(this.labelHeight)):this.labelPosVertical=="bottom"&&this.setHeight(m+this.labelHeight))}}},h.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==i.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},h.prototype.transform=function(d){var p=this.rect.x;p>s.WORLD_BOUNDARY?p=s.WORLD_BOUNDARY:p<-s.WORLD_BOUNDARY&&(p=-s.WORLD_BOUNDARY);var m=this.rect.y;m>s.WORLD_BOUNDARY?m=s.WORLD_BOUNDARY:m<-s.WORLD_BOUNDARY&&(m=-s.WORLD_BOUNDARY);var g=new u(p,m),y=d.inverseTransformPoint(g);this.setLocation(y.x,y.y)},h.prototype.getLeft=function(){return this.rect.x},h.prototype.getRight=function(){return this.rect.x+this.rect.width},h.prototype.getTop=function(){return this.rect.y},h.prototype.getBottom=function(){return this.rect.y+this.rect.height},h.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},t.exports=h},function(t,e,r){"use strict";var n=r(0);function i(){}o(i,"FDLayoutConstants");for(var a in n)i[a]=n[a];i.MAX_ITERATIONS=2500,i.DEFAULT_EDGE_LENGTH=50,i.DEFAULT_SPRING_STRENGTH=.45,i.DEFAULT_REPULSION_STRENGTH=4500,i.DEFAULT_GRAVITY_STRENGTH=.4,i.DEFAULT_COMPOUND_GRAVITY_STRENGTH=1,i.DEFAULT_GRAVITY_RANGE_FACTOR=3.8,i.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=1.5,i.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION=!0,i.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION=!0,i.DEFAULT_COOLING_FACTOR_INCREMENTAL=.3,i.COOLING_ADAPTATION_FACTOR=.33,i.ADAPTATION_LOWER_NODE_LIMIT=1e3,i.ADAPTATION_UPPER_NODE_LIMIT=5e3,i.MAX_NODE_DISPLACEMENT_INCREMENTAL=100,i.MAX_NODE_DISPLACEMENT=i.MAX_NODE_DISPLACEMENT_INCREMENTAL*3,i.MIN_REPULSION_DIST=i.DEFAULT_EDGE_LENGTH/10,i.CONVERGENCE_CHECK_PERIOD=100,i.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=.1,i.MIN_EDGE_LENGTH=1,i.GRID_CALCULATION_CHECK_PERIOD=10,t.exports=i},function(t,e,r){"use strict";function n(i,a){i==null&&a==null?(this.x=0,this.y=0):(this.x=i,this.y=a)}o(n,"PointD"),n.prototype.getX=function(){return this.x},n.prototype.getY=function(){return this.y},n.prototype.setX=function(i){this.x=i},n.prototype.setY=function(i){this.y=i},n.prototype.getDifference=function(i){return new DimensionD(this.x-i.x,this.y-i.y)},n.prototype.getCopy=function(){return new n(this.x,this.y)},n.prototype.translate=function(i){return this.x+=i.width,this.y+=i.height,this},t.exports=n},function(t,e,r){"use strict";var n=r(2),i=r(10),a=r(0),s=r(7),l=r(3),u=r(1),h=r(13),f=r(12),d=r(11);function p(g,y,x){n.call(this,x),this.estimatedSize=i.MIN_VALUE,this.margin=a.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=g,y!=null&&y instanceof s?this.graphManager=y:y!=null&&y instanceof Layout&&(this.graphManager=y.graphManager)}o(p,"LGraph"),p.prototype=Object.create(n.prototype);for(var m in n)p[m]=n[m];p.prototype.getNodes=function(){return this.nodes},p.prototype.getEdges=function(){return this.edges},p.prototype.getGraphManager=function(){return this.graphManager},p.prototype.getParent=function(){return this.parent},p.prototype.getLeft=function(){return this.left},p.prototype.getRight=function(){return this.right},p.prototype.getTop=function(){return this.top},p.prototype.getBottom=function(){return this.bottom},p.prototype.isConnected=function(){return this.isConnected},p.prototype.add=function(g,y,x){if(y==null&&x==null){var v=g;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(v)>-1)throw"Node already in graph!";return v.owner=this,this.getNodes().push(v),v}else{var b=g;if(!(this.getNodes().indexOf(y)>-1&&this.getNodes().indexOf(x)>-1))throw"Source or target not in graph!";if(!(y.owner==x.owner&&y.owner==this))throw"Both owners must be this graph!";return y.owner!=x.owner?null:(b.source=y,b.target=x,b.isInterGraph=!1,this.getEdges().push(b),y.edges.push(b),x!=y&&x.edges.push(b),b)}},p.prototype.remove=function(g){var y=g;if(g instanceof l){if(y==null)throw"Node is null!";if(!(y.owner!=null&&y.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var x=y.edges.slice(),v,b=x.length,T=0;T<b;T++)v=x[T],v.isInterGraph?this.graphManager.remove(v):v.source.owner.remove(v);var S=this.nodes.indexOf(y);if(S==-1)throw"Node not in owner node list!";this.nodes.splice(S,1)}else if(g instanceof u){var v=g;if(v==null)throw"Edge is null!";if(!(v.source!=null&&v.target!=null))throw"Source and/or target is null!";if(!(v.source.owner!=null&&v.target.owner!=null&&v.source.owner==this&&v.target.owner==this))throw"Source and/or target owner is invalid!";var w=v.source.edges.indexOf(v),E=v.target.edges.indexOf(v);if(!(w>-1&&E>-1))throw"Source and/or target doesn't know this edge!";v.source.edges.splice(w,1),v.target!=v.source&&v.target.edges.splice(E,1);var S=v.source.owner.getEdges().indexOf(v);if(S==-1)throw"Not in owner's edge list!";v.source.owner.getEdges().splice(S,1)}},p.prototype.updateLeftTop=function(){for(var g=i.MAX_VALUE,y=i.MAX_VALUE,x,v,b,T=this.getNodes(),S=T.length,w=0;w<S;w++){var E=T[w];x=E.getTop(),v=E.getLeft(),g>x&&(g=x),y>v&&(y=v)}return g==i.MAX_VALUE?null:(T[0].getParent().paddingLeft!=null?b=T[0].getParent().paddingLeft:b=this.margin,this.left=y-b,this.top=g-b,new f(this.left,this.top))},p.prototype.updateBounds=function(g){for(var y=i.MAX_VALUE,x=-i.MAX_VALUE,v=i.MAX_VALUE,b=-i.MAX_VALUE,T,S,w,E,_,A=this.nodes,D=A.length,O=0;O<D;O++){var R=A[O];g&&R.child!=null&&R.updateBounds(),T=R.getLeft(),S=R.getRight(),w=R.getTop(),E=R.getBottom(),y>T&&(y=T),x<S&&(x=S),v>w&&(v=w),b<E&&(b=E)}var k=new h(y,v,x-y,b-v);y==i.MAX_VALUE&&(this.left=this.parent.getLeft(),this.right=this.parent.getRight(),this.top=this.parent.getTop(),this.bottom=this.parent.getBottom()),A[0].getParent().paddingLeft!=null?_=A[0].getParent().paddingLeft:_=this.margin,this.left=k.x-_,this.right=k.x+k.width+_,this.top=k.y-_,this.bottom=k.y+k.height+_},p.calculateBounds=function(g){for(var y=i.MAX_VALUE,x=-i.MAX_VALUE,v=i.MAX_VALUE,b=-i.MAX_VALUE,T,S,w,E,_=g.length,A=0;A<_;A++){var D=g[A];T=D.getLeft(),S=D.getRight(),w=D.getTop(),E=D.getBottom(),y>T&&(y=T),x<S&&(x=S),v>w&&(v=w),b<E&&(b=E)}var O=new h(y,v,x-y,b-v);return O},p.prototype.getInclusionTreeDepth=function(){return this==this.graphManager.getRoot()?1:this.parent.getInclusionTreeDepth()},p.prototype.getEstimatedSize=function(){if(this.estimatedSize==i.MIN_VALUE)throw"assert failed";return this.estimatedSize},p.prototype.calcEstimatedSize=function(){for(var g=0,y=this.nodes,x=y.length,v=0;v<x;v++){var b=y[v];g+=b.calcEstimatedSize()}return g==0?this.estimatedSize=a.EMPTY_COMPOUND_NODE_SIZE:this.estimatedSize=g/Math.sqrt(this.nodes.length),this.estimatedSize},p.prototype.updateConnected=function(){var g=this;if(this.nodes.length==0){this.isConnected=!0;return}var y=new d,x=new Set,v=this.nodes[0],b,T,S=v.withChildren();for(S.forEach(function(O){y.push(O),x.add(O)});y.length!==0;){v=y.shift(),b=v.getEdges();for(var w=b.length,E=0;E<w;E++){var _=b[E];if(T=_.getOtherEndInGraph(v,this),T!=null&&!x.has(T)){var A=T.withChildren();A.forEach(function(O){y.push(O),x.add(O)})}}}if(this.isConnected=!1,x.size>=this.nodes.length){var D=0;x.forEach(function(O){O.owner==g&&D++}),D==this.nodes.length&&(this.isConnected=!0)}},t.exports=p},function(t,e,r){"use strict";var n,i=r(1);function a(s){n=r(6),this.layout=s,this.graphs=[],this.edges=[]}o(a,"LGraphManager"),a.prototype.addRoot=function(){var s=this.layout.newGraph(),l=this.layout.newNode(null),u=this.add(s,l);return this.setRootGraph(u),this.rootGraph},a.prototype.add=function(s,l,u,h,f){if(u==null&&h==null&&f==null){if(s==null)throw"Graph is null!";if(l==null)throw"Parent node is null!";if(this.graphs.indexOf(s)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(s),s.parent!=null)throw"Already has a parent!";if(l.child!=null)throw"Already has a child!";return s.parent=l,l.child=s,s}else{f=u,h=l,u=s;var d=h.getOwner(),p=f.getOwner();if(!(d!=null&&d.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(p!=null&&p.getGraphManager()==this))throw"Target not in this graph mgr!";if(d==p)return u.isInterGraph=!1,d.add(u,h,f);if(u.isInterGraph=!0,u.source=h,u.target=f,this.edges.indexOf(u)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(u),!(u.source!=null&&u.target!=null))throw"Edge source and/or target is null!";if(!(u.source.edges.indexOf(u)==-1&&u.target.edges.indexOf(u)==-1))throw"Edge already in source and/or target incidency list!";return u.source.edges.push(u),u.target.edges.push(u),u}},a.prototype.remove=function(s){if(s instanceof n){var l=s;if(l.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(l==this.rootGraph||l.parent!=null&&l.parent.graphManager==this))throw"Invalid parent node!";var u=[];u=u.concat(l.getEdges());for(var h,f=u.length,d=0;d<f;d++)h=u[d],l.remove(h);var p=[];p=p.concat(l.getNodes());var m;f=p.length;for(var d=0;d<f;d++)m=p[d],l.remove(m);l==this.rootGraph&&this.setRootGraph(null);var g=this.graphs.indexOf(l);this.graphs.splice(g,1),l.parent=null}else if(s instanceof i){if(h=s,h==null)throw"Edge is null!";if(!h.isInterGraph)throw"Not an inter-graph edge!";if(!(h.source!=null&&h.target!=null))throw"Source and/or target is null!";if(!(h.source.edges.indexOf(h)!=-1&&h.target.edges.indexOf(h)!=-1))throw"Source and/or target doesn't know this edge!";var g=h.source.edges.indexOf(h);if(h.source.edges.splice(g,1),g=h.target.edges.indexOf(h),h.target.edges.splice(g,1),!(h.source.owner!=null&&h.source.owner.getGraphManager()!=null))throw"Edge owner graph or owner graph manager is null!";if(h.source.owner.getGraphManager().edges.indexOf(h)==-1)throw"Not in owner graph manager's edge list!";var g=h.source.owner.getGraphManager().edges.indexOf(h);h.source.owner.getGraphManager().edges.splice(g,1)}},a.prototype.updateBounds=function(){this.rootGraph.updateBounds(!0)},a.prototype.getGraphs=function(){return this.graphs},a.prototype.getAllNodes=function(){if(this.allNodes==null){for(var s=[],l=this.getGraphs(),u=l.length,h=0;h<u;h++)s=s.concat(l[h].getNodes());this.allNodes=s}return this.allNodes},a.prototype.resetAllNodes=function(){this.allNodes=null},a.prototype.resetAllEdges=function(){this.allEdges=null},a.prototype.resetAllNodesToApplyGravitation=function(){this.allNodesToApplyGravitation=null},a.prototype.getAllEdges=function(){if(this.allEdges==null){for(var s=[],l=this.getGraphs(),u=l.length,h=0;h<l.length;h++)s=s.concat(l[h].getEdges());s=s.concat(this.edges),this.allEdges=s}return this.allEdges},a.prototype.getAllNodesToApplyGravitation=function(){return this.allNodesToApplyGravitation},a.prototype.setAllNodesToApplyGravitation=function(s){if(this.allNodesToApplyGravitation!=null)throw"assert failed";this.allNodesToApplyGravitation=s},a.prototype.getRoot=function(){return this.rootGraph},a.prototype.setRootGraph=function(s){if(s.getGraphManager()!=this)throw"Root not in this graph mgr!";this.rootGraph=s,s.parent==null&&(s.parent=this.layout.newNode("Root node"))},a.prototype.getLayout=function(){return this.layout},a.prototype.isOneAncestorOfOther=function(s,l){if(!(s!=null&&l!=null))throw"assert failed";if(s==l)return!0;var u=s.getOwner(),h;do{if(h=u.getParent(),h==null)break;if(h==l)return!0;if(u=h.getOwner(),u==null)break}while(!0);u=l.getOwner();do{if(h=u.getParent(),h==null)break;if(h==s)return!0;if(u=h.getOwner(),u==null)break}while(!0);return!1},a.prototype.calcLowestCommonAncestors=function(){for(var s,l,u,h,f,d=this.getAllEdges(),p=d.length,m=0;m<p;m++){if(s=d[m],l=s.source,u=s.target,s.lca=null,s.sourceInLca=l,s.targetInLca=u,l==u){s.lca=l.getOwner();continue}for(h=l.getOwner();s.lca==null;){for(s.targetInLca=u,f=u.getOwner();s.lca==null;){if(f==h){s.lca=f;break}if(f==this.rootGraph)break;if(s.lca!=null)throw"assert failed";s.targetInLca=f.getParent(),f=s.targetInLca.getOwner()}if(h==this.rootGraph)break;s.lca==null&&(s.sourceInLca=h.getParent(),h=s.sourceInLca.getOwner())}if(s.lca==null)throw"assert failed"}},a.prototype.calcLowestCommonAncestor=function(s,l){if(s==l)return s.getOwner();var u=s.getOwner();do{if(u==null)break;var h=l.getOwner();do{if(h==null)break;if(h==u)return h;h=h.getParent().getOwner()}while(!0);u=u.getParent().getOwner()}while(!0);return u},a.prototype.calcInclusionTreeDepths=function(s,l){s==null&&l==null&&(s=this.rootGraph,l=1);for(var u,h=s.getNodes(),f=h.length,d=0;d<f;d++)u=h[d],u.inclusionTreeDepth=l,u.child!=null&&this.calcInclusionTreeDepths(u.child,l+1)},a.prototype.includesInvalidEdge=function(){for(var s,l=[],u=this.edges.length,h=0;h<u;h++)s=this.edges[h],this.isOneAncestorOfOther(s.source,s.target)&&l.push(s);for(var h=0;h<l.length;h++)this.remove(l[h]);return!1},t.exports=a},function(t,e,r){"use strict";var n=r(12);function i(){}o(i,"IGeometry"),i.calcSeparationAmount=function(a,s,l,u){if(!a.intersects(s))throw"assert failed";var h=new Array(2);this.decideDirectionsForOverlappingNodes(a,s,h),l[0]=Math.min(a.getRight(),s.getRight())-Math.max(a.x,s.x),l[1]=Math.min(a.getBottom(),s.getBottom())-Math.max(a.y,s.y),a.getX()<=s.getX()&&a.getRight()>=s.getRight()?l[0]+=Math.min(s.getX()-a.getX(),a.getRight()-s.getRight()):s.getX()<=a.getX()&&s.getRight()>=a.getRight()&&(l[0]+=Math.min(a.getX()-s.getX(),s.getRight()-a.getRight())),a.getY()<=s.getY()&&a.getBottom()>=s.getBottom()?l[1]+=Math.min(s.getY()-a.getY(),a.getBottom()-s.getBottom()):s.getY()<=a.getY()&&s.getBottom()>=a.getBottom()&&(l[1]+=Math.min(a.getY()-s.getY(),s.getBottom()-a.getBottom()));var f=Math.abs((s.getCenterY()-a.getCenterY())/(s.getCenterX()-a.getCenterX()));s.getCenterY()===a.getCenterY()&&s.getCenterX()===a.getCenterX()&&(f=1);var d=f*l[0],p=l[1]/f;l[0]<p?p=l[0]:d=l[1],l[0]=-1*h[0]*(p/2+u),l[1]=-1*h[1]*(d/2+u)},i.decideDirectionsForOverlappingNodes=function(a,s,l){a.getCenterX()<s.getCenterX()?l[0]=-1:l[0]=1,a.getCenterY()<s.getCenterY()?l[1]=-1:l[1]=1},i.getIntersection2=function(a,s,l){var u=a.getCenterX(),h=a.getCenterY(),f=s.getCenterX(),d=s.getCenterY();if(a.intersects(s))return l[0]=u,l[1]=h,l[2]=f,l[3]=d,!0;var p=a.getX(),m=a.getY(),g=a.getRight(),y=a.getX(),x=a.getBottom(),v=a.getRight(),b=a.getWidthHalf(),T=a.getHeightHalf(),S=s.getX(),w=s.getY(),E=s.getRight(),_=s.getX(),A=s.getBottom(),D=s.getRight(),O=s.getWidthHalf(),R=s.getHeightHalf(),k=!1,L=!1;if(u===f){if(h>d)return l[0]=u,l[1]=m,l[2]=f,l[3]=A,!1;if(h<d)return l[0]=u,l[1]=x,l[2]=f,l[3]=w,!1}else if(h===d){if(u>f)return l[0]=p,l[1]=h,l[2]=E,l[3]=d,!1;if(u<f)return l[0]=g,l[1]=h,l[2]=S,l[3]=d,!1}else{var C=a.height/a.width,I=s.height/s.width,M=(d-h)/(f-u),P=void 0,B=void 0,F=void 0,G=void 0,$=void 0,U=void 0;if(-C===M?u>f?(l[0]=y,l[1]=x,k=!0):(l[0]=g,l[1]=m,k=!0):C===M&&(u>f?(l[0]=p,l[1]=m,k=!0):(l[0]=v,l[1]=x,k=!0)),-I===M?f>u?(l[2]=_,l[3]=A,L=!0):(l[2]=E,l[3]=w,L=!0):I===M&&(f>u?(l[2]=S,l[3]=w,L=!0):(l[2]=D,l[3]=A,L=!0)),k&&L)return!1;if(u>f?h>d?(P=this.getCardinalDirection(C,M,4),B=this.getCardinalDirection(I,M,2)):(P=this.getCardinalDirection(-C,M,3),B=this.getCardinalDirection(-I,M,1)):h>d?(P=this.getCardinalDirection(-C,M,1),B=this.getCardinalDirection(-I,M,3)):(P=this.getCardinalDirection(C,M,2),B=this.getCardinalDirection(I,M,4)),!k)switch(P){case 1:G=m,F=u+-T/M,l[0]=F,l[1]=G;break;case 2:F=v,G=h+b*M,l[0]=F,l[1]=G;break;case 3:G=x,F=u+T/M,l[0]=F,l[1]=G;break;case 4:F=y,G=h+-b*M,l[0]=F,l[1]=G;break}if(!L)switch(B){case 1:U=w,$=f+-R/M,l[2]=$,l[3]=U;break;case 2:$=D,U=d+O*M,l[2]=$,l[3]=U;break;case 3:U=A,$=f+R/M,l[2]=$,l[3]=U;break;case 4:$=_,U=d+-O*M,l[2]=$,l[3]=U;break}}return!1},i.getCardinalDirection=function(a,s,l){return a>s?l:1+l%4},i.getIntersection=function(a,s,l,u){if(u==null)return this.getIntersection2(a,s,l);var h=a.x,f=a.y,d=s.x,p=s.y,m=l.x,g=l.y,y=u.x,x=u.y,v=void 0,b=void 0,T=void 0,S=void 0,w=void 0,E=void 0,_=void 0,A=void 0,D=void 0;return T=p-f,w=h-d,_=d*f-h*p,S=x-g,E=m-y,A=y*g-m*x,D=T*E-S*w,D===0?null:(v=(w*A-E*_)/D,b=(S*_-T*A)/D,new n(v,b))},i.angleOfVector=function(a,s,l,u){var h=void 0;return a!==l?(h=Math.atan((u-s)/(l-a)),l<a?h+=Math.PI:u<s&&(h+=this.TWO_PI)):u<s?h=this.ONE_AND_HALF_PI:h=this.HALF_PI,h},i.doIntersect=function(a,s,l,u){var h=a.x,f=a.y,d=s.x,p=s.y,m=l.x,g=l.y,y=u.x,x=u.y,v=(d-h)*(x-g)-(y-m)*(p-f);if(v===0)return!1;var b=((x-g)*(y-h)+(m-y)*(x-f))/v,T=((f-p)*(y-h)+(d-h)*(x-f))/v;return 0<b&&b<1&&0<T&&T<1},i.findCircleLineIntersections=function(a,s,l,u,h,f,d){var p=(l-a)*(l-a)+(u-s)*(u-s),m=2*((a-h)*(l-a)+(s-f)*(u-s)),g=(a-h)*(a-h)+(s-f)*(s-f)-d*d,y=m*m-4*p*g;if(y>=0){var x=(-m+Math.sqrt(m*m-4*p*g))/(2*p),v=(-m-Math.sqrt(m*m-4*p*g))/(2*p),b=null;return x>=0&&x<=1?[x]:v>=0&&v<=1?[v]:b}else return null},i.HALF_PI=.5*Math.PI,i.ONE_AND_HALF_PI=1.5*Math.PI,i.TWO_PI=2*Math.PI,i.THREE_PI=3*Math.PI,t.exports=i},function(t,e,r){"use strict";function n(){}o(n,"IMath"),n.sign=function(i){return i>0?1:i<0?-1:0},n.floor=function(i){return i<0?Math.ceil(i):Math.floor(i)},n.ceil=function(i){return i<0?Math.floor(i):Math.ceil(i)},t.exports=n},function(t,e,r){"use strict";function n(){}o(n,"Integer"),n.MAX_VALUE=2147483647,n.MIN_VALUE=-2147483648,t.exports=n},function(t,e,r){"use strict";var n=function(){function h(f,d){for(var p=0;p<d.length;p++){var m=d[p];m.enumerable=m.enumerable||!1,m.configurable=!0,"value"in m&&(m.writable=!0),Object.defineProperty(f,m.key,m)}}return o(h,"defineProperties"),function(f,d,p){return d&&h(f.prototype,d),p&&h(f,p),f}}();function i(h,f){if(!(h instanceof f))throw new TypeError("Cannot call a class as a function")}o(i,"_classCallCheck");var a=o(function(f){return{value:f,next:null,prev:null}},"nodeFrom"),s=o(function(f,d,p,m){return f!==null?f.next=d:m.head=d,p!==null?p.prev=d:m.tail=d,d.prev=f,d.next=p,m.length++,d},"add"),l=o(function(f,d){var p=f.prev,m=f.next;return p!==null?p.next=m:d.head=m,m!==null?m.prev=p:d.tail=p,f.prev=f.next=null,d.length--,f},"_remove"),u=function(){function h(f){var d=this;i(this,h),this.length=0,this.head=null,this.tail=null,f?.forEach(function(p){return d.push(p)})}return o(h,"LinkedList"),n(h,[{key:"size",value:o(function(){return this.length},"size")},{key:"insertBefore",value:o(function(d,p){return s(p.prev,a(d),p,this)},"insertBefore")},{key:"insertAfter",value:o(function(d,p){return s(p,a(d),p.next,this)},"insertAfter")},{key:"insertNodeBefore",value:o(function(d,p){return s(p.prev,d,p,this)},"insertNodeBefore")},{key:"insertNodeAfter",value:o(function(d,p){return s(p,d,p.next,this)},"insertNodeAfter")},{key:"push",value:o(function(d){return s(this.tail,a(d),null,this)},"push")},{key:"unshift",value:o(function(d){return s(null,a(d),this.head,this)},"unshift")},{key:"remove",value:o(function(d){return l(d,this)},"remove")},{key:"pop",value:o(function(){return l(this.tail,this).value},"pop")},{key:"popNode",value:o(function(){return l(this.tail,this)},"popNode")},{key:"shift",value:o(function(){return l(this.head,this).value},"shift")},{key:"shiftNode",value:o(function(){return l(this.head,this)},"shiftNode")},{key:"get_object_at",value:o(function(d){if(d<=this.length()){for(var p=1,m=this.head;p<d;)m=m.next,p++;return m.value}},"get_object_at")},{key:"set_object_at",value:o(function(d,p){if(d<=this.length()){for(var m=1,g=this.head;m<d;)g=g.next,m++;g.value=p}},"set_object_at")}]),h}();t.exports=u},function(t,e,r){"use strict";function n(i,a,s){this.x=null,this.y=null,i==null&&a==null&&s==null?(this.x=0,this.y=0):typeof i=="number"&&typeof a=="number"&&s==null?(this.x=i,this.y=a):i.constructor.name=="Point"&&a==null&&s==null&&(s=i,this.x=s.x,this.y=s.y)}o(n,"Point"),n.prototype.getX=function(){return this.x},n.prototype.getY=function(){return this.y},n.prototype.getLocation=function(){return new n(this.x,this.y)},n.prototype.setLocation=function(i,a,s){i.constructor.name=="Point"&&a==null&&s==null?(s=i,this.setLocation(s.x,s.y)):typeof i=="number"&&typeof a=="number"&&s==null&&(parseInt(i)==i&&parseInt(a)==a?this.move(i,a):(this.x=Math.floor(i+.5),this.y=Math.floor(a+.5)))},n.prototype.move=function(i,a){this.x=i,this.y=a},n.prototype.translate=function(i,a){this.x+=i,this.y+=a},n.prototype.equals=function(i){if(i.constructor.name=="Point"){var a=i;return this.x==a.x&&this.y==a.y}return this==i},n.prototype.toString=function(){return new n().constructor.name+"[x="+this.x+",y="+this.y+"]"},t.exports=n},function(t,e,r){"use strict";function n(i,a,s,l){this.x=0,this.y=0,this.width=0,this.height=0,i!=null&&a!=null&&s!=null&&l!=null&&(this.x=i,this.y=a,this.width=s,this.height=l)}o(n,"RectangleD"),n.prototype.getX=function(){return this.x},n.prototype.setX=function(i){this.x=i},n.prototype.getY=function(){return this.y},n.prototype.setY=function(i){this.y=i},n.prototype.getWidth=function(){return this.width},n.prototype.setWidth=function(i){this.width=i},n.prototype.getHeight=function(){return this.height},n.prototype.setHeight=function(i){this.height=i},n.prototype.getRight=function(){return this.x+this.width},n.prototype.getBottom=function(){return this.y+this.height},n.prototype.intersects=function(i){return!(this.getRight()<i.x||this.getBottom()<i.y||i.getRight()<this.x||i.getBottom()<this.y)},n.prototype.getCenterX=function(){return this.x+this.width/2},n.prototype.getMinX=function(){return this.getX()},n.prototype.getMaxX=function(){return this.getX()+this.width},n.prototype.getCenterY=function(){return this.y+this.height/2},n.prototype.getMinY=function(){return this.getY()},n.prototype.getMaxY=function(){return this.getY()+this.height},n.prototype.getWidthHalf=function(){return this.width/2},n.prototype.getHeightHalf=function(){return this.height/2},t.exports=n},function(t,e,r){"use strict";var n=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(a){return typeof a}:function(a){return a&&typeof Symbol=="function"&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a};function i(){}o(i,"UniqueIDGeneretor"),i.lastID=0,i.createID=function(a){return i.isPrimitive(a)?a:(a.uniqueID!=null||(a.uniqueID=i.getString(),i.lastID++),a.uniqueID)},i.getString=function(a){return a==null&&(a=i.lastID),"Object#"+a},i.isPrimitive=function(a){var s=typeof a>"u"?"undefined":n(a);return a==null||s!="object"&&s!="function"},t.exports=i},function(t,e,r){"use strict";function n(m){if(Array.isArray(m)){for(var g=0,y=Array(m.length);g<m.length;g++)y[g]=m[g];return y}else return Array.from(m)}o(n,"_toConsumableArray");var i=r(0),a=r(7),s=r(3),l=r(1),u=r(6),h=r(5),f=r(17),d=r(29);function p(m){d.call(this),this.layoutQuality=i.QUALITY,this.createBendsAsNeeded=i.DEFAULT_CREATE_BENDS_AS_NEEDED,this.incremental=i.DEFAULT_INCREMENTAL,this.animationOnLayout=i.DEFAULT_ANIMATION_ON_LAYOUT,this.animationDuringLayout=i.DEFAULT_ANIMATION_DURING_LAYOUT,this.animationPeriod=i.DEFAULT_ANIMATION_PERIOD,this.uniformLeafNodeSizes=i.DEFAULT_UNIFORM_LEAF_NODE_SIZES,this.edgeToDummyNodes=new Map,this.graphManager=new a(this),this.isLayoutFinished=!1,this.isSubLayout=!1,this.isRemoteUse=!1,m!=null&&(this.isRemoteUse=m)}o(p,"Layout"),p.RANDOM_SEED=1,p.prototype=Object.create(d.prototype),p.prototype.getGraphManager=function(){return this.graphManager},p.prototype.getAllNodes=function(){return this.graphManager.getAllNodes()},p.prototype.getAllEdges=function(){return this.graphManager.getAllEdges()},p.prototype.getAllNodesToApplyGravitation=function(){return this.graphManager.getAllNodesToApplyGravitation()},p.prototype.newGraphManager=function(){var m=new a(this);return this.graphManager=m,m},p.prototype.newGraph=function(m){return new u(null,this.graphManager,m)},p.prototype.newNode=function(m){return new s(this.graphManager,m)},p.prototype.newEdge=function(m){return new l(null,null,m)},p.prototype.checkLayoutSuccess=function(){return this.graphManager.getRoot()==null||this.graphManager.getRoot().getNodes().length==0||this.graphManager.includesInvalidEdge()},p.prototype.runLayout=function(){this.isLayoutFinished=!1,this.tilingPreLayout&&this.tilingPreLayout(),this.initParameters();var m;return this.checkLayoutSuccess()?m=!1:m=this.layout(),i.ANIMATE==="during"?!1:(m&&(this.isSubLayout||this.doPostLayout()),this.tilingPostLayout&&this.tilingPostLayout(),this.isLayoutFinished=!0,m)},p.prototype.doPostLayout=function(){this.incremental||this.transform(),this.update()},p.prototype.update2=function(){if(this.createBendsAsNeeded&&(this.createBendpointsFromDummyNodes(),this.graphManager.resetAllEdges()),!this.isRemoteUse){for(var m,g=this.graphManager.getAllEdges(),y=0;y<g.length;y++)m=g[y];for(var x,v=this.graphManager.getRoot().getNodes(),y=0;y<v.length;y++)x=v[y];this.update(this.graphManager.getRoot())}},p.prototype.update=function(m){if(m==null)this.update2();else if(m instanceof s){var g=m;if(g.getChild()!=null)for(var y=g.getChild().getNodes(),x=0;x<y.length;x++)update(y[x]);if(g.vGraphObject!=null){var v=g.vGraphObject;v.update(g)}}else if(m instanceof l){var b=m;if(b.vGraphObject!=null){var T=b.vGraphObject;T.update(b)}}else if(m instanceof u){var S=m;if(S.vGraphObject!=null){var w=S.vGraphObject;w.update(S)}}},p.prototype.initParameters=function(){this.isSubLayout||(this.layoutQuality=i.QUALITY,this.animationDuringLayout=i.DEFAULT_ANIMATION_DURING_LAYOUT,this.animationPeriod=i.DEFAULT_ANIMATION_PERIOD,this.animationOnLayout=i.DEFAULT_ANIMATION_ON_LAYOUT,this.incremental=i.DEFAULT_INCREMENTAL,this.createBendsAsNeeded=i.DEFAULT_CREATE_BENDS_AS_NEEDED,this.uniformLeafNodeSizes=i.DEFAULT_UNIFORM_LEAF_NODE_SIZES),this.animationDuringLayout&&(this.animationOnLayout=!1)},p.prototype.transform=function(m){if(m==null)this.transform(new h(0,0));else{var g=new f,y=this.graphManager.getRoot().updateLeftTop();if(y!=null){g.setWorldOrgX(m.x),g.setWorldOrgY(m.y),g.setDeviceOrgX(y.x),g.setDeviceOrgY(y.y);for(var x=this.getAllNodes(),v,b=0;b<x.length;b++)v=x[b],v.transform(g)}}},p.prototype.positionNodesRandomly=function(m){if(m==null)this.positionNodesRandomly(this.getGraphManager().getRoot()),this.getGraphManager().getRoot().updateBounds(!0);else for(var g,y,x=m.getNodes(),v=0;v<x.length;v++)g=x[v],y=g.getChild(),y==null||y.getNodes().length==0?g.scatter():(this.positionNodesRandomly(y),g.updateBounds())},p.prototype.getFlatForest=function(){for(var m=[],g=!0,y=this.graphManager.getRoot().getNodes(),x=!0,v=0;v<y.length;v++)y[v].getChild()!=null&&(x=!1);if(!x)return m;var b=new Set,T=[],S=new Map,w=[];for(w=w.concat(y);w.length>0&&g;){for(T.push(w[0]);T.length>0&&g;){var E=T[0];T.splice(0,1),b.add(E);for(var _=E.getEdges(),v=0;v<_.length;v++){var A=_[v].getOtherEnd(E);if(S.get(E)!=A)if(!b.has(A))T.push(A),S.set(A,E);else{g=!1;break}}}if(!g)m=[];else{var D=[].concat(n(b));m.push(D);for(var v=0;v<D.length;v++){var O=D[v],R=w.indexOf(O);R>-1&&w.splice(R,1)}b=new Set,S=new Map}}return m},p.prototype.createDummyNodesForBendpoints=function(m){for(var g=[],y=m.source,x=this.graphManager.calcLowestCommonAncestor(m.source,m.target),v=0;v<m.bendpoints.length;v++){var b=this.newNode(null);b.setRect(new Point(0,0),new Dimension(1,1)),x.add(b);var T=this.newEdge(null);this.graphManager.add(T,y,b),g.add(b),y=b}var T=this.newEdge(null);return this.graphManager.add(T,y,m.target),this.edgeToDummyNodes.set(m,g),m.isInterGraph()?this.graphManager.remove(m):x.remove(m),g},p.prototype.createBendpointsFromDummyNodes=function(){var m=[];m=m.concat(this.graphManager.getAllEdges()),m=[].concat(n(this.edgeToDummyNodes.keys())).concat(m);for(var g=0;g<m.length;g++){var y=m[g];if(y.bendpoints.length>0){for(var x=this.edgeToDummyNodes.get(y),v=0;v<x.length;v++){var b=x[v],T=new h(b.getCenterX(),b.getCenterY()),S=y.bendpoints.get(v);S.x=T.x,S.y=T.y,b.getOwner().remove(b)}this.graphManager.add(y,y.source,y.target)}}},p.transform=function(m,g,y,x){if(y!=null&&x!=null){var v=g;if(m<=50){var b=g/y;v-=(g-b)/50*(50-m)}else{var T=g*x;v+=(T-g)/50*(m-50)}return v}else{var S,w;return m<=50?(S=9*g/500,w=g/10):(S=9*g/50,w=-8*g),S*m+w}},p.findCenterOfTree=function(m){var g=[];g=g.concat(m);var y=[],x=new Map,v=!1,b=null;(g.length==1||g.length==2)&&(v=!0,b=g[0]);for(var T=0;T<g.length;T++){var S=g[T],w=S.getNeighborsList().size;x.set(S,S.getNeighborsList().size),w==1&&y.push(S)}var E=[];for(E=E.concat(y);!v;){var _=[];_=_.concat(E),E=[];for(var T=0;T<g.length;T++){var S=g[T],A=g.indexOf(S);A>=0&&g.splice(A,1);var D=S.getNeighborsList();D.forEach(function(k){if(y.indexOf(k)<0){var L=x.get(k),C=L-1;C==1&&E.push(k),x.set(k,C)}})}y=y.concat(E),(g.length==1||g.length==2)&&(v=!0,b=g[0])}return b},p.prototype.setGraphManager=function(m){this.graphManager=m},t.exports=p},function(t,e,r){"use strict";function n(){}o(n,"RandomSeed"),n.seed=1,n.x=0,n.nextDouble=function(){return n.x=Math.sin(n.seed++)*1e4,n.x-Math.floor(n.x)},t.exports=n},function(t,e,r){"use strict";var n=r(5);function i(a,s){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}o(i,"Transform"),i.prototype.getWorldOrgX=function(){return this.lworldOrgX},i.prototype.setWorldOrgX=function(a){this.lworldOrgX=a},i.prototype.getWorldOrgY=function(){return this.lworldOrgY},i.prototype.setWorldOrgY=function(a){this.lworldOrgY=a},i.prototype.getWorldExtX=function(){return this.lworldExtX},i.prototype.setWorldExtX=function(a){this.lworldExtX=a},i.prototype.getWorldExtY=function(){return this.lworldExtY},i.prototype.setWorldExtY=function(a){this.lworldExtY=a},i.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},i.prototype.setDeviceOrgX=function(a){this.ldeviceOrgX=a},i.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},i.prototype.setDeviceOrgY=function(a){this.ldeviceOrgY=a},i.prototype.getDeviceExtX=function(){return this.ldeviceExtX},i.prototype.setDeviceExtX=function(a){this.ldeviceExtX=a},i.prototype.getDeviceExtY=function(){return this.ldeviceExtY},i.prototype.setDeviceExtY=function(a){this.ldeviceExtY=a},i.prototype.transformX=function(a){var s=0,l=this.lworldExtX;return l!=0&&(s=this.ldeviceOrgX+(a-this.lworldOrgX)*this.ldeviceExtX/l),s},i.prototype.transformY=function(a){var s=0,l=this.lworldExtY;return l!=0&&(s=this.ldeviceOrgY+(a-this.lworldOrgY)*this.ldeviceExtY/l),s},i.prototype.inverseTransformX=function(a){var s=0,l=this.ldeviceExtX;return l!=0&&(s=this.lworldOrgX+(a-this.ldeviceOrgX)*this.lworldExtX/l),s},i.prototype.inverseTransformY=function(a){var s=0,l=this.ldeviceExtY;return l!=0&&(s=this.lworldOrgY+(a-this.ldeviceOrgY)*this.lworldExtY/l),s},i.prototype.inverseTransformPoint=function(a){var s=new n(this.inverseTransformX(a.x),this.inverseTransformY(a.y));return s},t.exports=i},function(t,e,r){"use strict";function n(d){if(Array.isArray(d)){for(var p=0,m=Array(d.length);p<d.length;p++)m[p]=d[p];return m}else return Array.from(d)}o(n,"_toConsumableArray");var i=r(15),a=r(4),s=r(0),l=r(8),u=r(9);function h(){i.call(this),this.useSmartIdealEdgeLengthCalculation=a.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.gravityConstant=a.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=a.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=a.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=a.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.displacementThresholdPerNode=3*a.DEFAULT_EDGE_LENGTH/100,this.coolingFactor=a.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.initialCoolingFactor=a.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.totalDisplacement=0,this.oldTotalDisplacement=0,this.maxIterations=a.MAX_ITERATIONS}o(h,"FDLayout"),h.prototype=Object.create(i.prototype);for(var f in i)h[f]=i[f];h.prototype.initParameters=function(){i.prototype.initParameters.call(this,arguments),this.totalIterations=0,this.notAnimatedIterations=0,this.useFRGridVariant=a.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION,this.grid=[]},h.prototype.calcIdealEdgeLengths=function(){for(var d,p,m,g,y,x,v,b=this.getGraphManager().getAllEdges(),T=0;T<b.length;T++)d=b[T],p=d.idealLength,d.isInterGraph&&(g=d.getSource(),y=d.getTarget(),x=d.getSourceInLca().getEstimatedSize(),v=d.getTargetInLca().getEstimatedSize(),this.useSmartIdealEdgeLengthCalculation&&(d.idealLength+=x+v-2*s.SIMPLE_NODE_SIZE),m=d.getLca().getInclusionTreeDepth(),d.idealLength+=p*a.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR*(g.getInclusionTreeDepth()+y.getInclusionTreeDepth()-2*m))},h.prototype.initSpringEmbedder=function(){var d=this.getAllNodes().length;this.incremental?(d>a.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*a.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-a.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT_INCREMENTAL):(d>a.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(a.COOLING_ADAPTATION_FACTOR,1-(d-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*(1-a.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.displacementThresholdPerNode=3*a.DEFAULT_EDGE_LENGTH/100,this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},h.prototype.calcSpringForces=function(){for(var d=this.getAllEdges(),p,m=0;m<d.length;m++)p=d[m],this.calcSpringForce(p,p.idealLength)},h.prototype.calcRepulsionForces=function(){var d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,m,g,y,x,v=this.getAllNodes(),b;if(this.useFRGridVariant)for(this.totalIterations%a.GRID_CALCULATION_CHECK_PERIOD==1&&d&&this.updateGrid(),b=new Set,m=0;m<v.length;m++)y=v[m],this.calculateRepulsionForceOfANode(y,b,d,p),b.add(y);else for(m=0;m<v.length;m++)for(y=v[m],g=m+1;g<v.length;g++)x=v[g],y.getOwner()==x.getOwner()&&this.calcRepulsionForce(y,x)},h.prototype.calcGravitationalForces=function(){for(var d,p=this.getAllNodesToApplyGravitation(),m=0;m<p.length;m++)d=p[m],this.calcGravitationalForce(d)},h.prototype.moveNodes=function(){for(var d=this.getAllNodes(),p,m=0;m<d.length;m++)p=d[m],p.move()},h.prototype.calcSpringForce=function(d,p){var m=d.getSource(),g=d.getTarget(),y,x,v,b;if(this.uniformLeafNodeSizes&&m.getChild()==null&&g.getChild()==null)d.updateLengthSimple();else if(d.updateLength(),d.isOverlapingSourceAndTarget)return;y=d.getLength(),y!=0&&(x=d.edgeElasticity*(y-p),v=x*(d.lengthX/y),b=x*(d.lengthY/y),m.springForceX+=v,m.springForceY+=b,g.springForceX-=v,g.springForceY-=b)},h.prototype.calcRepulsionForce=function(d,p){var m=d.getRect(),g=p.getRect(),y=new Array(2),x=new Array(4),v,b,T,S,w,E,_;if(m.intersects(g)){l.calcSeparationAmount(m,g,y,a.DEFAULT_EDGE_LENGTH/2),E=2*y[0],_=2*y[1];var A=d.noOfChildren*p.noOfChildren/(d.noOfChildren+p.noOfChildren);d.repulsionForceX-=A*E,d.repulsionForceY-=A*_,p.repulsionForceX+=A*E,p.repulsionForceY+=A*_}else this.uniformLeafNodeSizes&&d.getChild()==null&&p.getChild()==null?(v=g.getCenterX()-m.getCenterX(),b=g.getCenterY()-m.getCenterY()):(l.getIntersection(m,g,x),v=x[2]-x[0],b=x[3]-x[1]),Math.abs(v)<a.MIN_REPULSION_DIST&&(v=u.sign(v)*a.MIN_REPULSION_DIST),Math.abs(b)<a.MIN_REPULSION_DIST&&(b=u.sign(b)*a.MIN_REPULSION_DIST),T=v*v+b*b,S=Math.sqrt(T),w=(d.nodeRepulsion/2+p.nodeRepulsion/2)*d.noOfChildren*p.noOfChildren/T,E=w*v/S,_=w*b/S,d.repulsionForceX-=E,d.repulsionForceY-=_,p.repulsionForceX+=E,p.repulsionForceY+=_},h.prototype.calcGravitationalForce=function(d){var p,m,g,y,x,v,b,T;p=d.getOwner(),m=(p.getRight()+p.getLeft())/2,g=(p.getTop()+p.getBottom())/2,y=d.getCenterX()-m,x=d.getCenterY()-g,v=Math.abs(y)+d.getWidth()/2,b=Math.abs(x)+d.getHeight()/2,d.getOwner()==this.graphManager.getRoot()?(T=p.getEstimatedSize()*this.gravityRangeFactor,(v>T||b>T)&&(d.gravitationForceX=-this.gravityConstant*y,d.gravitationForceY=-this.gravityConstant*x)):(T=p.getEstimatedSize()*this.compoundGravityRangeFactor,(v>T||b>T)&&(d.gravitationForceX=-this.gravityConstant*y*this.compoundGravityConstant,d.gravitationForceY=-this.gravityConstant*x*this.compoundGravityConstant))},h.prototype.isConverged=function(){var d,p=!1;return this.totalIterations>this.maxIterations/3&&(p=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),d=this.totalDisplacement<this.totalDisplacementThreshold,this.oldTotalDisplacement=this.totalDisplacement,d||p},h.prototype.animate=function(){this.animationDuringLayout&&!this.isSubLayout&&(this.notAnimatedIterations==this.animationPeriod?(this.update(),this.notAnimatedIterations=0):this.notAnimatedIterations++)},h.prototype.calcNoOfChildrenForAllNodes=function(){for(var d,p=this.graphManager.getAllNodes(),m=0;m<p.length;m++)d=p[m],d.noOfChildren=d.getNoOfChildren()},h.prototype.calcGrid=function(d){var p=0,m=0;p=parseInt(Math.ceil((d.getRight()-d.getLeft())/this.repulsionRange)),m=parseInt(Math.ceil((d.getBottom()-d.getTop())/this.repulsionRange));for(var g=new Array(p),y=0;y<p;y++)g[y]=new Array(m);for(var y=0;y<p;y++)for(var x=0;x<m;x++)g[y][x]=new Array;return g},h.prototype.addNodeToGrid=function(d,p,m){var g=0,y=0,x=0,v=0;g=parseInt(Math.floor((d.getRect().x-p)/this.repulsionRange)),y=parseInt(Math.floor((d.getRect().width+d.getRect().x-p)/this.repulsionRange)),x=parseInt(Math.floor((d.getRect().y-m)/this.repulsionRange)),v=parseInt(Math.floor((d.getRect().height+d.getRect().y-m)/this.repulsionRange));for(var b=g;b<=y;b++)for(var T=x;T<=v;T++)this.grid[b][T].push(d),d.setGridCoordinates(g,y,x,v)},h.prototype.updateGrid=function(){var d,p,m=this.getAllNodes();for(this.grid=this.calcGrid(this.graphManager.getRoot()),d=0;d<m.length;d++)p=m[d],this.addNodeToGrid(p,this.graphManager.getRoot().getLeft(),this.graphManager.getRoot().getTop())},h.prototype.calculateRepulsionForceOfANode=function(d,p,m,g){if(this.totalIterations%a.GRID_CALCULATION_CHECK_PERIOD==1&&m||g){var y=new Set;d.surrounding=new Array;for(var x,v=this.grid,b=d.startX-1;b<d.finishX+2;b++)for(var T=d.startY-1;T<d.finishY+2;T++)if(!(b<0||T<0||b>=v.length||T>=v[0].length)){for(var S=0;S<v[b][T].length;S++)if(x=v[b][T][S],!(d.getOwner()!=x.getOwner()||d==x)&&!p.has(x)&&!y.has(x)){var w=Math.abs(d.getCenterX()-x.getCenterX())-(d.getWidth()/2+x.getWidth()/2),E=Math.abs(d.getCenterY()-x.getCenterY())-(d.getHeight()/2+x.getHeight()/2);w<=this.repulsionRange&&E<=this.repulsionRange&&y.add(x)}}d.surrounding=[].concat(n(y))}for(b=0;b<d.surrounding.length;b++)this.calcRepulsionForce(d,d.surrounding[b])},h.prototype.calcRepulsionRange=function(){return 0},t.exports=h},function(t,e,r){"use strict";var n=r(1),i=r(4);function a(l,u,h){n.call(this,l,u,h),this.idealLength=i.DEFAULT_EDGE_LENGTH,this.edgeElasticity=i.DEFAULT_SPRING_STRENGTH}o(a,"FDLayoutEdge"),a.prototype=Object.create(n.prototype);for(var s in n)a[s]=n[s];t.exports=a},function(t,e,r){"use strict";var n=r(3),i=r(4);function a(l,u,h,f){n.call(this,l,u,h,f),this.nodeRepulsion=i.DEFAULT_REPULSION_STRENGTH,this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0,this.startX=0,this.finishX=0,this.startY=0,this.finishY=0,this.surrounding=[]}o(a,"FDLayoutNode"),a.prototype=Object.create(n.prototype);for(var s in n)a[s]=n[s];a.prototype.setGridCoordinates=function(l,u,h,f){this.startX=l,this.finishX=u,this.startY=h,this.finishY=f},t.exports=a},function(t,e,r){"use strict";function n(i,a){this.width=0,this.height=0,i!==null&&a!==null&&(this.height=a,this.width=i)}o(n,"DimensionD"),n.prototype.getWidth=function(){return this.width},n.prototype.setWidth=function(i){this.width=i},n.prototype.getHeight=function(){return this.height},n.prototype.setHeight=function(i){this.height=i},t.exports=n},function(t,e,r){"use strict";var n=r(14);function i(){this.map={},this.keys=[]}o(i,"HashMap"),i.prototype.put=function(a,s){var l=n.createID(a);this.contains(l)||(this.map[l]=s,this.keys.push(a))},i.prototype.contains=function(a){var s=n.createID(a);return this.map[a]!=null},i.prototype.get=function(a){var s=n.createID(a);return this.map[s]},i.prototype.keySet=function(){return this.keys},t.exports=i},function(t,e,r){"use strict";var n=r(14);function i(){this.set={}}o(i,"HashSet"),i.prototype.add=function(a){var s=n.createID(a);this.contains(s)||(this.set[s]=a)},i.prototype.remove=function(a){delete this.set[n.createID(a)]},i.prototype.clear=function(){this.set={}},i.prototype.contains=function(a){return this.set[n.createID(a)]==a},i.prototype.isEmpty=function(){return this.size()===0},i.prototype.size=function(){return Object.keys(this.set).length},i.prototype.addAllTo=function(a){for(var s=Object.keys(this.set),l=s.length,u=0;u<l;u++)a.push(this.set[s[u]])},i.prototype.size=function(){return Object.keys(this.set).length},i.prototype.addAll=function(a){for(var s=a.length,l=0;l<s;l++){var u=a[l];this.add(u)}},t.exports=i},function(t,e,r){"use strict";function n(){}o(n,"Matrix"),n.multMat=function(i,a){for(var s=[],l=0;l<i.length;l++){s[l]=[];for(var u=0;u<a[0].length;u++){s[l][u]=0;for(var h=0;h<i[0].length;h++)s[l][u]+=i[l][h]*a[h][u]}}return s},n.transpose=function(i){for(var a=[],s=0;s<i[0].length;s++){a[s]=[];for(var l=0;l<i.length;l++)a[s][l]=i[l][s]}return a},n.multCons=function(i,a){for(var s=[],l=0;l<i.length;l++)s[l]=i[l]*a;return s},n.minusOp=function(i,a){for(var s=[],l=0;l<i.length;l++)s[l]=i[l]-a[l];return s},n.dotProduct=function(i,a){for(var s=0,l=0;l<i.length;l++)s+=i[l]*a[l];return s},n.mag=function(i){return Math.sqrt(this.dotProduct(i,i))},n.normalize=function(i){for(var a=[],s=this.mag(i),l=0;l<i.length;l++)a[l]=i[l]/s;return a},n.multGamma=function(i){for(var a=[],s=0,l=0;l<i.length;l++)s+=i[l];s*=-1/i.length;for(var u=0;u<i.length;u++)a[u]=s+i[u];return a},n.multL=function(i,a,s){for(var l=[],u=[],h=[],f=0;f<a[0].length;f++){for(var d=0,p=0;p<a.length;p++)d+=-.5*a[p][f]*i[p];u[f]=d}for(var m=0;m<s.length;m++){for(var g=0,y=0;y<s.length;y++)g+=s[m][y]*u[y];h[m]=g}for(var x=0;x<a.length;x++){for(var v=0,b=0;b<a[0].length;b++)v+=a[x][b]*h[b];l[x]=v}return l},t.exports=n},function(t,e,r){"use strict";var n=function(){function l(u,h){for(var f=0;f<h.length;f++){var d=h[f];d.enumerable=d.enumerable||!1,d.configurable=!0,"value"in d&&(d.writable=!0),Object.defineProperty(u,d.key,d)}}return o(l,"defineProperties"),function(u,h,f){return h&&l(u.prototype,h),f&&l(u,f),u}}();function i(l,u){if(!(l instanceof u))throw new TypeError("Cannot call a class as a function")}o(i,"_classCallCheck");var a=r(11),s=function(){function l(u,h){i(this,l),(h!==null||h!==void 0)&&(this.compareFunction=this._defaultCompareFunction);var f=void 0;u instanceof a?f=u.size():f=u.length,this._quicksort(u,0,f-1)}return o(l,"Quicksort"),n(l,[{key:"_quicksort",value:o(function(h,f,d){if(f<d){var p=this._partition(h,f,d);this._quicksort(h,f,p),this._quicksort(h,p+1,d)}},"_quicksort")},{key:"_partition",value:o(function(h,f,d){for(var p=this._get(h,f),m=f,g=d;;){for(;this.compareFunction(p,this._get(h,g));)g--;for(;this.compareFunction(this._get(h,m),p);)m++;if(m<g)this._swap(h,m,g),m++,g--;else return g}},"_partition")},{key:"_get",value:o(function(h,f){return h instanceof a?h.get_object_at(f):h[f]},"_get")},{key:"_set",value:o(function(h,f,d){h instanceof a?h.set_object_at(f,d):h[f]=d},"_set")},{key:"_swap",value:o(function(h,f,d){var p=this._get(h,f);this._set(h,f,this._get(h,d)),this._set(h,d,p)},"_swap")},{key:"_defaultCompareFunction",value:o(function(h,f){return f>h},"_defaultCompareFunction")}]),l}();t.exports=s},function(t,e,r){"use strict";function n(){}o(n,"SVD"),n.svd=function(i){this.U=null,this.V=null,this.s=null,this.m=0,this.n=0,this.m=i.length,this.n=i[0].length;var a=Math.min(this.m,this.n);this.s=function(bt){for(var ft=[];bt-- >0;)ft.push(0);return ft}(Math.min(this.m+1,this.n)),this.U=function(bt){var ft=o(function St(dt){if(dt.length==0)return 0;for(var vt=[],at=0;at<dt[0];at++)vt.push(St(dt.slice(1)));return vt},"allocate");return ft(bt)}([this.m,a]),this.V=function(bt){var ft=o(function St(dt){if(dt.length==0)return 0;for(var vt=[],at=0;at<dt[0];at++)vt.push(St(dt.slice(1)));return vt},"allocate");return ft(bt)}([this.n,this.n]);for(var s=function(bt){for(var ft=[];bt-- >0;)ft.push(0);return ft}(this.n),l=function(bt){for(var ft=[];bt-- >0;)ft.push(0);return ft}(this.m),u=!0,h=!0,f=Math.min(this.m-1,this.n),d=Math.max(0,Math.min(this.n-2,this.m)),p=0;p<Math.max(f,d);p++){if(p<f){this.s[p]=0;for(var m=p;m<this.m;m++)this.s[p]=n.hypot(this.s[p],i[m][p]);if(this.s[p]!==0){i[p][p]<0&&(this.s[p]=-this.s[p]);for(var g=p;g<this.m;g++)i[g][p]/=this.s[p];i[p][p]+=1}this.s[p]=-this.s[p]}for(var y=p+1;y<this.n;y++){if(function(bt,ft){return bt&&ft}(p<f,this.s[p]!==0)){for(var x=0,v=p;v<this.m;v++)x+=i[v][p]*i[v][y];x=-x/i[p][p];for(var b=p;b<this.m;b++)i[b][y]+=x*i[b][p]}s[y]=i[p][y]}if(function(bt,ft){return bt&&ft}(u,p<f))for(var T=p;T<this.m;T++)this.U[T][p]=i[T][p];if(p<d){s[p]=0;for(var S=p+1;S<this.n;S++)s[p]=n.hypot(s[p],s[S]);if(s[p]!==0){s[p+1]<0&&(s[p]=-s[p]);for(var w=p+1;w<this.n;w++)s[w]/=s[p];s[p+1]+=1}if(s[p]=-s[p],function(bt,ft){return bt&&ft}(p+1<this.m,s[p]!==0)){for(var E=p+1;E<this.m;E++)l[E]=0;for(var _=p+1;_<this.n;_++)for(var A=p+1;A<this.m;A++)l[A]+=s[_]*i[A][_];for(var D=p+1;D<this.n;D++)for(var O=-s[D]/s[p+1],R=p+1;R<this.m;R++)i[R][D]+=O*l[R]}if(h)for(var k=p+1;k<this.n;k++)this.V[k][p]=s[k]}}var L=Math.min(this.n,this.m+1);if(f<this.n&&(this.s[f]=i[f][f]),this.m<L&&(this.s[L-1]=0),d+1<L&&(s[d]=i[d][L-1]),s[L-1]=0,u){for(var C=f;C<a;C++){for(var I=0;I<this.m;I++)this.U[I][C]=0;this.U[C][C]=1}for(var M=f-1;M>=0;M--)if(this.s[M]!==0){for(var P=M+1;P<a;P++){for(var B=0,F=M;F<this.m;F++)B+=this.U[F][M]*this.U[F][P];B=-B/this.U[M][M];for(var G=M;G<this.m;G++)this.U[G][P]+=B*this.U[G][M]}for(var $=M;$<this.m;$++)this.U[$][M]=-this.U[$][M];this.U[M][M]=1+this.U[M][M];for(var U=0;U<M-1;U++)this.U[U][M]=0}else{for(var K=0;K<this.m;K++)this.U[K][M]=0;this.U[M][M]=1}}if(h)for(var ne=this.n-1;ne>=0;ne--){if(function(bt,ft){return bt&&ft}(ne<d,s[ne]!==0))for(var j=ne+1;j<a;j++){for(var le=0,Z=ne+1;Z<this.n;Z++)le+=this.V[Z][ne]*this.V[Z][j];le=-le/this.V[ne+1][ne];for(var ce=ne+1;ce<this.n;ce++)this.V[ce][j]+=le*this.V[ce][ne]}for(var Q=0;Q<this.n;Q++)this.V[Q][ne]=0;this.V[ne][ne]=1}for(var ee=L-1,te=0,re=Math.pow(2,-52),he=Math.pow(2,-966);L>0;){var J=void 0,ye=void 0;for(J=L-2;J>=-1&&J!==-1;J--)if(Math.abs(s[J])<=he+re*(Math.abs(this.s[J])+Math.abs(this.s[J+1]))){s[J]=0;break}if(J===L-2)ye=4;else{var se=void 0;for(se=L-1;se>=J&&se!==J;se--){var Se=(se!==L?Math.abs(s[se]):0)+(se!==J+1?Math.abs(s[se-1]):0);if(Math.abs(this.s[se])<=he+re*Se){this.s[se]=0;break}}se===J?ye=3:se===L-1?ye=1:(ye=2,J=se)}switch(J++,ye){case 1:{var W=s[L-2];s[L-2]=0;for(var Oe=L-2;Oe>=J;Oe--){var ve=n.hypot(this.s[Oe],W),Pe=this.s[Oe]/ve,qe=W/ve;if(this.s[Oe]=ve,Oe!==J&&(W=-qe*s[Oe-1],s[Oe-1]=Pe*s[Oe-1]),h)for(var Ge=0;Ge<this.n;Ge++)ve=Pe*this.V[Ge][Oe]+qe*this.V[Ge][L-1],this.V[Ge][L-1]=-qe*this.V[Ge][Oe]+Pe*this.V[Ge][L-1],this.V[Ge][Oe]=ve}}break;case 2:{var Ne=s[J-1];s[J-1]=0;for(var Me=J;Me<L;Me++){var be=n.hypot(this.s[Me],Ne),q=this.s[Me]/be,fe=Ne/be;if(this.s[Me]=be,Ne=-fe*s[Me],s[Me]=q*s[Me],u)for(var ae=0;ae<this.m;ae++)be=q*this.U[ae][Me]+fe*this.U[ae][J-1],this.U[ae][J-1]=-fe*this.U[ae][Me]+q*this.U[ae][J-1],this.U[ae][Me]=be}}break;case 3:{var oe=Math.max(Math.max(Math.max(Math.max(Math.abs(this.s[L-1]),Math.abs(this.s[L-2])),Math.abs(s[L-2])),Math.abs(this.s[J])),Math.abs(s[J])),V=this.s[L-1]/oe,xe=this.s[L-2]/oe,Y=s[L-2]/oe,de=this.s[J]/oe,me=s[J]/oe,Be=((xe+V)*(xe-V)+Y*Y)/2,_e=V*Y*(V*Y),Te=0;(function(bt,ft){return bt||ft})(Be!==0,_e!==0)&&(Te=Math.sqrt(Be*Be+_e),Be<0&&(Te=-Te),Te=_e/(Be+Te));for(var Ue=(de+V)*(de-V)+Te,De=de*me,Qe=J;Qe<L-1;Qe++){var ot=n.hypot(Ue,De),Gt=Ue/ot,Ze=De/ot;if(Qe!==J&&(s[Qe-1]=ot),Ue=Gt*this.s[Qe]+Ze*s[Qe],s[Qe]=Gt*s[Qe]-Ze*this.s[Qe],De=Ze*this.s[Qe+1],this.s[Qe+1]=Gt*this.s[Qe+1],h)for(var Ve=0;Ve<this.n;Ve++)ot=Gt*this.V[Ve][Qe]+Ze*this.V[Ve][Qe+1],this.V[Ve][Qe+1]=-Ze*this.V[Ve][Qe]+Gt*this.V[Ve][Qe+1],this.V[Ve][Qe]=ot;if(ot=n.hypot(Ue,De),Gt=Ue/ot,Ze=De/ot,this.s[Qe]=ot,Ue=Gt*s[Qe]+Ze*this.s[Qe+1],this.s[Qe+1]=-Ze*s[Qe]+Gt*this.s[Qe+1],De=Ze*s[Qe+1],s[Qe+1]=Gt*s[Qe+1],u&&Qe<this.m-1)for(var ht=0;ht<this.m;ht++)ot=Gt*this.U[ht][Qe]+Ze*this.U[ht][Qe+1],this.U[ht][Qe+1]=-Ze*this.U[ht][Qe]+Gt*this.U[ht][Qe+1],this.U[ht][Qe]=ot}s[L-2]=Ue,te=te+1}break;case 4:{if(this.s[J]<=0&&(this.s[J]=this.s[J]<0?-this.s[J]:0,h))for(var Ye=0;Ye<=ee;Ye++)this.V[Ye][J]=-this.V[Ye][J];for(;J<ee&&!(this.s[J]>=this.s[J+1]);){var ct=this.s[J];if(this.s[J]=this.s[J+1],this.s[J+1]=ct,h&&J<this.n-1)for(var Yt=0;Yt<this.n;Yt++)ct=this.V[Yt][J+1],this.V[Yt][J+1]=this.V[Yt][J],this.V[Yt][J]=ct;if(u&&J<this.m-1)for(var Tt=0;Tt<this.m;Tt++)ct=this.U[Tt][J+1],this.U[Tt][J+1]=this.U[Tt][J],this.U[Tt][J]=ct;J++}te=0,L--}break}}var Mt={U:this.U,V:this.V,S:this.s};return Mt},n.hypot=function(i,a){var s=void 0;return Math.abs(i)>Math.abs(a)?(s=a/i,s=Math.abs(i)*Math.sqrt(1+s*s)):a!=0?(s=i/a,s=Math.abs(a)*Math.sqrt(1+s*s)):s=0,s},t.exports=n},function(t,e,r){"use strict";var n=function(){function s(l,u){for(var h=0;h<u.length;h++){var f=u[h];f.enumerable=f.enumerable||!1,f.configurable=!0,"value"in f&&(f.writable=!0),Object.defineProperty(l,f.key,f)}}return o(s,"defineProperties"),function(l,u,h){return u&&s(l.prototype,u),h&&s(l,h),l}}();function i(s,l){if(!(s instanceof l))throw new TypeError("Cannot call a class as a function")}o(i,"_classCallCheck");var a=function(){function s(l,u){var h=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,f=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,d=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;i(this,s),this.sequence1=l,this.sequence2=u,this.match_score=h,this.mismatch_penalty=f,this.gap_penalty=d,this.iMax=l.length+1,this.jMax=u.length+1,this.grid=new Array(this.iMax);for(var p=0;p<this.iMax;p++){this.grid[p]=new Array(this.jMax);for(var m=0;m<this.jMax;m++)this.grid[p][m]=0}this.tracebackGrid=new Array(this.iMax);for(var g=0;g<this.iMax;g++){this.tracebackGrid[g]=new Array(this.jMax);for(var y=0;y<this.jMax;y++)this.tracebackGrid[g][y]=[null,null,null]}this.alignments=[],this.score=-1,this.computeGrids()}return o(s,"NeedlemanWunsch"),n(s,[{key:"getScore",value:o(function(){return this.score},"getScore")},{key:"getAlignments",value:o(function(){return this.alignments},"getAlignments")},{key:"computeGrids",value:o(function(){for(var u=1;u<this.jMax;u++)this.grid[0][u]=this.grid[0][u-1]+this.gap_penalty,this.tracebackGrid[0][u]=[!1,!1,!0];for(var h=1;h<this.iMax;h++)this.grid[h][0]=this.grid[h-1][0]+this.gap_penalty,this.tracebackGrid[h][0]=[!1,!0,!1];for(var f=1;f<this.iMax;f++)for(var d=1;d<this.jMax;d++){var p=void 0;this.sequence1[f-1]===this.sequence2[d-1]?p=this.grid[f-1][d-1]+this.match_score:p=this.grid[f-1][d-1]+this.mismatch_penalty;var m=this.grid[f-1][d]+this.gap_penalty,g=this.grid[f][d-1]+this.gap_penalty,y=[p,m,g],x=this.arrayAllMaxIndexes(y);this.grid[f][d]=y[x[0]],this.tracebackGrid[f][d]=[x.includes(0),x.includes(1),x.includes(2)]}this.score=this.grid[this.iMax-1][this.jMax-1]},"computeGrids")},{key:"alignmentTraceback",value:o(function(){var u=[];for(u.push({pos:[this.sequence1.length,this.sequence2.length],seq1:"",seq2:""});u[0];){var h=u[0],f=this.tracebackGrid[h.pos[0]][h.pos[1]];f[0]&&u.push({pos:[h.pos[0]-1,h.pos[1]-1],seq1:this.sequence1[h.pos[0]-1]+h.seq1,seq2:this.sequence2[h.pos[1]-1]+h.seq2}),f[1]&&u.push({pos:[h.pos[0]-1,h.pos[1]],seq1:this.sequence1[h.pos[0]-1]+h.seq1,seq2:"-"+h.seq2}),f[2]&&u.push({pos:[h.pos[0],h.pos[1]-1],seq1:"-"+h.seq1,seq2:this.sequence2[h.pos[1]-1]+h.seq2}),h.pos[0]===0&&h.pos[1]===0&&this.alignments.push({sequence1:h.seq1,sequence2:h.seq2}),u.shift()}return this.alignments},"alignmentTraceback")},{key:"getAllIndexes",value:o(function(u,h){for(var f=[],d=-1;(d=u.indexOf(h,d+1))!==-1;)f.push(d);return f},"getAllIndexes")},{key:"arrayAllMaxIndexes",value:o(function(u){return this.getAllIndexes(u,Math.max.apply(null,u))},"arrayAllMaxIndexes")}]),s}();t.exports=a},function(t,e,r){"use strict";var n=o(function(){},"layoutBase");n.FDLayout=r(18),n.FDLayoutConstants=r(4),n.FDLayoutEdge=r(19),n.FDLayoutNode=r(20),n.DimensionD=r(21),n.HashMap=r(22),n.HashSet=r(23),n.IGeometry=r(8),n.IMath=r(9),n.Integer=r(10),n.Point=r(12),n.PointD=r(5),n.RandomSeed=r(16),n.RectangleD=r(13),n.Transform=r(17),n.UniqueIDGeneretor=r(14),n.Quicksort=r(25),n.LinkedList=r(11),n.LGraphObject=r(2),n.LGraph=r(6),n.LEdge=r(1),n.LGraphManager=r(7),n.LNode=r(3),n.Layout=r(15),n.LayoutConstants=r(0),n.NeedlemanWunsch=r(27),n.Matrix=r(24),n.SVD=r(26),t.exports=n},function(t,e,r){"use strict";function n(){this.listeners=[]}o(n,"Emitter");var i=n.prototype;i.addListener=function(a,s){this.listeners.push({event:a,callback:s})},i.removeListener=function(a,s){for(var l=this.listeners.length;l>=0;l--){var u=this.listeners[l];u.event===a&&u.callback===s&&this.listeners.splice(l,1)}},i.emit=function(a,s){for(var l=0;l<this.listeners.length;l++){var u=this.listeners[l];a===u.event&&u.callback(s)}},t.exports=n}])})});var c$=Aa((P4,l$)=>{"use strict";o(function(e,r){typeof P4=="object"&&typeof l$=="object"?l$.exports=r(o$()):typeof define=="function"&&define.amd?define(["layout-base"],r):typeof P4=="object"?P4.coseBase=r(o$()):e.coseBase=r(e.layoutBase)},"webpackUniversalModuleDefinition")(P4,function(t){return(()=>{"use strict";var e={45:(a,s,l)=>{var u={};u.layoutBase=l(551),u.CoSEConstants=l(806),u.CoSEEdge=l(767),u.CoSEGraph=l(880),u.CoSEGraphManager=l(578),u.CoSELayout=l(765),u.CoSENode=l(991),u.ConstraintHandler=l(902),a.exports=u},806:(a,s,l)=>{var u=l(551).FDLayoutConstants;function h(){}o(h,"CoSEConstants");for(var f in u)h[f]=u[f];h.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,h.DEFAULT_RADIAL_SEPARATION=u.DEFAULT_EDGE_LENGTH,h.DEFAULT_COMPONENT_SEPERATION=60,h.TILE=!0,h.TILING_PADDING_VERTICAL=10,h.TILING_PADDING_HORIZONTAL=10,h.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,h.ENFORCE_CONSTRAINTS=!0,h.APPLY_LAYOUT=!0,h.RELAX_MOVEMENT_ON_CONSTRAINTS=!0,h.TREE_REDUCTION_ON_INCREMENTAL=!0,h.PURE_INCREMENTAL=h.DEFAULT_INCREMENTAL,a.exports=h},767:(a,s,l)=>{var u=l(551).FDLayoutEdge;function h(d,p,m){u.call(this,d,p,m)}o(h,"CoSEEdge"),h.prototype=Object.create(u.prototype);for(var f in u)h[f]=u[f];a.exports=h},880:(a,s,l)=>{var u=l(551).LGraph;function h(d,p,m){u.call(this,d,p,m)}o(h,"CoSEGraph"),h.prototype=Object.create(u.prototype);for(var f in u)h[f]=u[f];a.exports=h},578:(a,s,l)=>{var u=l(551).LGraphManager;function h(d){u.call(this,d)}o(h,"CoSEGraphManager"),h.prototype=Object.create(u.prototype);for(var f in u)h[f]=u[f];a.exports=h},765:(a,s,l)=>{var u=l(551).FDLayout,h=l(578),f=l(880),d=l(991),p=l(767),m=l(806),g=l(902),y=l(551).FDLayoutConstants,x=l(551).LayoutConstants,v=l(551).Point,b=l(551).PointD,T=l(551).DimensionD,S=l(551).Layout,w=l(551).Integer,E=l(551).IGeometry,_=l(551).LGraph,A=l(551).Transform,D=l(551).LinkedList;function O(){u.call(this),this.toBeTiled={},this.constraints={}}o(O,"CoSELayout"),O.prototype=Object.create(u.prototype);for(var R in u)O[R]=u[R];O.prototype.newGraphManager=function(){var k=new h(this);return this.graphManager=k,k},O.prototype.newGraph=function(k){return new f(null,this.graphManager,k)},O.prototype.newNode=function(k){return new d(this.graphManager,k)},O.prototype.newEdge=function(k){return new p(null,null,k)},O.prototype.initParameters=function(){u.prototype.initParameters.call(this,arguments),this.isSubLayout||(m.DEFAULT_EDGE_LENGTH<10?this.idealEdgeLength=10:this.idealEdgeLength=m.DEFAULT_EDGE_LENGTH,this.useSmartIdealEdgeLengthCalculation=m.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.gravityConstant=y.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=y.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=y.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=y.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.prunedNodesAll=[],this.growTreeIterations=0,this.afterGrowthIterations=0,this.isTreeGrowing=!1,this.isGrowthFinished=!1)},O.prototype.initSpringEmbedder=function(){u.prototype.initSpringEmbedder.call(this),this.coolingCycle=0,this.maxCoolingCycle=this.maxIterations/y.CONVERGENCE_CHECK_PERIOD,this.finalTemperature=.04,this.coolingAdjuster=1},O.prototype.layout=function(){var k=x.DEFAULT_CREATE_BENDS_AS_NEEDED;return k&&(this.createBendpoints(),this.graphManager.resetAllEdges()),this.level=0,this.classicLayout()},O.prototype.classicLayout=function(){if(this.nodesWithGravity=this.calculateNodesToApplyGravitationTo(),this.graphManager.setAllNodesToApplyGravitation(this.nodesWithGravity),this.calcNoOfChildrenForAllNodes(),this.graphManager.calcLowestCommonAncestors(),this.graphManager.calcInclusionTreeDepths(),this.graphManager.getRoot().calcEstimatedSize(),this.calcIdealEdgeLengths(),this.incremental){if(m.TREE_REDUCTION_ON_INCREMENTAL){this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var L=new Set(this.getAllNodes()),C=this.nodesWithGravity.filter(function(P){return L.has(P)});this.graphManager.setAllNodesToApplyGravitation(C)}}else{var k=this.getFlatForest();if(k.length>0)this.positionNodesRadially(k);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var L=new Set(this.getAllNodes()),C=this.nodesWithGravity.filter(function(I){return L.has(I)});this.graphManager.setAllNodesToApplyGravitation(C),this.positionNodesRandomly()}}return Object.keys(this.constraints).length>0&&(g.handleConstraints(this),this.initConstraintVariables()),this.initSpringEmbedder(),m.APPLY_LAYOUT&&this.runSpringEmbedder(),!0},O.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%y.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var k=new Set(this.getAllNodes()),L=this.nodesWithGravity.filter(function(M){return k.has(M)});this.graphManager.setAllNodesToApplyGravitation(L),this.graphManager.updateBounds(),this.updateGrid(),m.PURE_INCREMENTAL?this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL/2:this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),m.PURE_INCREMENTAL?this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL/2*((100-this.afterGrowthIterations)/100):this.coolingFactor=y.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var C=!this.isTreeGrowing&&!this.isGrowthFinished,I=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(C,I),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},O.prototype.getPositionsData=function(){for(var k=this.graphManager.getAllNodes(),L={},C=0;C<k.length;C++){var I=k[C].rect,M=k[C].id;L[M]={id:M,x:I.getCenterX(),y:I.getCenterY(),w:I.width,h:I.height}}return L},O.prototype.runSpringEmbedder=function(){this.initialAnimationPeriod=25,this.animationPeriod=this.initialAnimationPeriod;var k=!1;if(y.ANIMATE==="during")this.emit("layoutstarted");else{for(;!k;)k=this.tick();this.graphManager.updateBounds()}},O.prototype.moveNodes=function(){for(var k=this.getAllNodes(),L,C=0;C<k.length;C++)L=k[C],L.calculateDisplacement();Object.keys(this.constraints).length>0&&this.updateDisplacements();for(var C=0;C<k.length;C++)L=k[C],L.move()},O.prototype.initConstraintVariables=function(){var k=this;this.idToNodeMap=new Map,this.fixedNodeSet=new Set;for(var L=this.graphManager.getAllNodes(),C=0;C<L.length;C++){var I=L[C];this.idToNodeMap.set(I.id,I)}var M=o(function Z(ce){for(var Q=ce.getChild().getNodes(),ee,te=0,re=0;re<Q.length;re++)ee=Q[re],ee.getChild()==null?k.fixedNodeSet.has(ee.id)&&(te+=100):te+=Z(ee);return te},"calculateCompoundWeight");if(this.constraints.fixedNodeConstraint){this.constraints.fixedNodeConstraint.forEach(function(Q){k.fixedNodeSet.add(Q.nodeId)});for(var L=this.graphManager.getAllNodes(),I,C=0;C<L.length;C++)if(I=L[C],I.getChild()!=null){var P=M(I);P>0&&(I.fixedNodeWeight=P)}}if(this.constraints.relativePlacementConstraint){var B=new Map,F=new Map;if(this.dummyToNodeForVerticalAlignment=new Map,this.dummyToNodeForHorizontalAlignment=new Map,this.fixedNodesOnHorizontal=new Set,this.fixedNodesOnVertical=new Set,this.fixedNodeSet.forEach(function(Z){k.fixedNodesOnHorizontal.add(Z),k.fixedNodesOnVertical.add(Z)}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var G=this.constraints.alignmentConstraint.vertical,C=0;C<G.length;C++)this.dummyToNodeForVerticalAlignment.set("dummy"+C,[]),G[C].forEach(function(ce){B.set(ce,"dummy"+C),k.dummyToNodeForVerticalAlignment.get("dummy"+C).push(ce),k.fixedNodeSet.has(ce)&&k.fixedNodesOnHorizontal.add("dummy"+C)});if(this.constraints.alignmentConstraint.horizontal)for(var $=this.constraints.alignmentConstraint.horizontal,C=0;C<$.length;C++)this.dummyToNodeForHorizontalAlignment.set("dummy"+C,[]),$[C].forEach(function(ce){F.set(ce,"dummy"+C),k.dummyToNodeForHorizontalAlignment.get("dummy"+C).push(ce),k.fixedNodeSet.has(ce)&&k.fixedNodesOnVertical.add("dummy"+C)})}if(m.RELAX_MOVEMENT_ON_CONSTRAINTS)this.shuffle=function(Z){var ce,Q,ee;for(ee=Z.length-1;ee>=2*Z.length/3;ee--)ce=Math.floor(Math.random()*(ee+1)),Q=Z[ee],Z[ee]=Z[ce],Z[ce]=Q;return Z},this.nodesInRelativeHorizontal=[],this.nodesInRelativeVertical=[],this.nodeToRelativeConstraintMapHorizontal=new Map,this.nodeToRelativeConstraintMapVertical=new Map,this.nodeToTempPositionMapHorizontal=new Map,this.nodeToTempPositionMapVertical=new Map,this.constraints.relativePlacementConstraint.forEach(function(Z){if(Z.left){var ce=B.has(Z.left)?B.get(Z.left):Z.left,Q=B.has(Z.right)?B.get(Z.right):Z.right;k.nodesInRelativeHorizontal.includes(ce)||(k.nodesInRelativeHorizontal.push(ce),k.nodeToRelativeConstraintMapHorizontal.set(ce,[]),k.dummyToNodeForVerticalAlignment.has(ce)?k.nodeToTempPositionMapHorizontal.set(ce,k.idToNodeMap.get(k.dummyToNodeForVerticalAlignment.get(ce)[0]).getCenterX()):k.nodeToTempPositionMapHorizontal.set(ce,k.idToNodeMap.get(ce).getCenterX())),k.nodesInRelativeHorizontal.includes(Q)||(k.nodesInRelativeHorizontal.push(Q),k.nodeToRelativeConstraintMapHorizontal.set(Q,[]),k.dummyToNodeForVerticalAlignment.has(Q)?k.nodeToTempPositionMapHorizontal.set(Q,k.idToNodeMap.get(k.dummyToNodeForVerticalAlignment.get(Q)[0]).getCenterX()):k.nodeToTempPositionMapHorizontal.set(Q,k.idToNodeMap.get(Q).getCenterX())),k.nodeToRelativeConstraintMapHorizontal.get(ce).push({right:Q,gap:Z.gap}),k.nodeToRelativeConstraintMapHorizontal.get(Q).push({left:ce,gap:Z.gap})}else{var ee=F.has(Z.top)?F.get(Z.top):Z.top,te=F.has(Z.bottom)?F.get(Z.bottom):Z.bottom;k.nodesInRelativeVertical.includes(ee)||(k.nodesInRelativeVertical.push(ee),k.nodeToRelativeConstraintMapVertical.set(ee,[]),k.dummyToNodeForHorizontalAlignment.has(ee)?k.nodeToTempPositionMapVertical.set(ee,k.idToNodeMap.get(k.dummyToNodeForHorizontalAlignment.get(ee)[0]).getCenterY()):k.nodeToTempPositionMapVertical.set(ee,k.idToNodeMap.get(ee).getCenterY())),k.nodesInRelativeVertical.includes(te)||(k.nodesInRelativeVertical.push(te),k.nodeToRelativeConstraintMapVertical.set(te,[]),k.dummyToNodeForHorizontalAlignment.has(te)?k.nodeToTempPositionMapVertical.set(te,k.idToNodeMap.get(k.dummyToNodeForHorizontalAlignment.get(te)[0]).getCenterY()):k.nodeToTempPositionMapVertical.set(te,k.idToNodeMap.get(te).getCenterY())),k.nodeToRelativeConstraintMapVertical.get(ee).push({bottom:te,gap:Z.gap}),k.nodeToRelativeConstraintMapVertical.get(te).push({top:ee,gap:Z.gap})}});else{var U=new Map,K=new Map;this.constraints.relativePlacementConstraint.forEach(function(Z){if(Z.left){var ce=B.has(Z.left)?B.get(Z.left):Z.left,Q=B.has(Z.right)?B.get(Z.right):Z.right;U.has(ce)?U.get(ce).push(Q):U.set(ce,[Q]),U.has(Q)?U.get(Q).push(ce):U.set(Q,[ce])}else{var ee=F.has(Z.top)?F.get(Z.top):Z.top,te=F.has(Z.bottom)?F.get(Z.bottom):Z.bottom;K.has(ee)?K.get(ee).push(te):K.set(ee,[te]),K.has(te)?K.get(te).push(ee):K.set(te,[ee])}});var ne=o(function(ce,Q){var ee=[],te=[],re=new D,he=new Set,J=0;return ce.forEach(function(ye,se){if(!he.has(se)){ee[J]=[],te[J]=!1;var Se=se;for(re.push(Se),he.add(Se),ee[J].push(Se);re.length!=0;){Se=re.shift(),Q.has(Se)&&(te[J]=!0);var W=ce.get(Se);W.forEach(function(Oe){he.has(Oe)||(re.push(Oe),he.add(Oe),ee[J].push(Oe))})}J++}}),{components:ee,isFixed:te}},"constructComponents"),j=ne(U,k.fixedNodesOnHorizontal);this.componentsOnHorizontal=j.components,this.fixedComponentsOnHorizontal=j.isFixed;var le=ne(K,k.fixedNodesOnVertical);this.componentsOnVertical=le.components,this.fixedComponentsOnVertical=le.isFixed}}},O.prototype.updateDisplacements=function(){var k=this;if(this.constraints.fixedNodeConstraint&&this.constraints.fixedNodeConstraint.forEach(function(le){var Z=k.idToNodeMap.get(le.nodeId);Z.displacementX=0,Z.displacementY=0}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var L=this.constraints.alignmentConstraint.vertical,C=0;C<L.length;C++){for(var I=0,M=0;M<L[C].length;M++){if(this.fixedNodeSet.has(L[C][M])){I=0;break}I+=this.idToNodeMap.get(L[C][M]).displacementX}for(var P=I/L[C].length,M=0;M<L[C].length;M++)this.idToNodeMap.get(L[C][M]).displacementX=P}if(this.constraints.alignmentConstraint.horizontal)for(var B=this.constraints.alignmentConstraint.horizontal,C=0;C<B.length;C++){for(var F=0,M=0;M<B[C].length;M++){if(this.fixedNodeSet.has(B[C][M])){F=0;break}F+=this.idToNodeMap.get(B[C][M]).displacementY}for(var G=F/B[C].length,M=0;M<B[C].length;M++)this.idToNodeMap.get(B[C][M]).displacementY=G}}if(this.constraints.relativePlacementConstraint)if(m.RELAX_MOVEMENT_ON_CONSTRAINTS)this.totalIterations%10==0&&(this.shuffle(this.nodesInRelativeHorizontal),this.shuffle(this.nodesInRelativeVertical)),this.nodesInRelativeHorizontal.forEach(function(le){if(!k.fixedNodesOnHorizontal.has(le)){var Z=0;k.dummyToNodeForVerticalAlignment.has(le)?Z=k.idToNodeMap.get(k.dummyToNodeForVerticalAlignment.get(le)[0]).displacementX:Z=k.idToNodeMap.get(le).displacementX,k.nodeToRelativeConstraintMapHorizontal.get(le).forEach(function(ce){if(ce.right){var Q=k.nodeToTempPositionMapHorizontal.get(ce.right)-k.nodeToTempPositionMapHorizontal.get(le)-Z;Q<ce.gap&&(Z-=ce.gap-Q)}else{var Q=k.nodeToTempPositionMapHorizontal.get(le)-k.nodeToTempPositionMapHorizontal.get(ce.left)+Z;Q<ce.gap&&(Z+=ce.gap-Q)}}),k.nodeToTempPositionMapHorizontal.set(le,k.nodeToTempPositionMapHorizontal.get(le)+Z),k.dummyToNodeForVerticalAlignment.has(le)?k.dummyToNodeForVerticalAlignment.get(le).forEach(function(ce){k.idToNodeMap.get(ce).displacementX=Z}):k.idToNodeMap.get(le).displacementX=Z}}),this.nodesInRelativeVertical.forEach(function(le){if(!k.fixedNodesOnHorizontal.has(le)){var Z=0;k.dummyToNodeForHorizontalAlignment.has(le)?Z=k.idToNodeMap.get(k.dummyToNodeForHorizontalAlignment.get(le)[0]).displacementY:Z=k.idToNodeMap.get(le).displacementY,k.nodeToRelativeConstraintMapVertical.get(le).forEach(function(ce){if(ce.bottom){var Q=k.nodeToTempPositionMapVertical.get(ce.bottom)-k.nodeToTempPositionMapVertical.get(le)-Z;Q<ce.gap&&(Z-=ce.gap-Q)}else{var Q=k.nodeToTempPositionMapVertical.get(le)-k.nodeToTempPositionMapVertical.get(ce.top)+Z;Q<ce.gap&&(Z+=ce.gap-Q)}}),k.nodeToTempPositionMapVertical.set(le,k.nodeToTempPositionMapVertical.get(le)+Z),k.dummyToNodeForHorizontalAlignment.has(le)?k.dummyToNodeForHorizontalAlignment.get(le).forEach(function(ce){k.idToNodeMap.get(ce).displacementY=Z}):k.idToNodeMap.get(le).displacementY=Z}});else{for(var C=0;C<this.componentsOnHorizontal.length;C++){var $=this.componentsOnHorizontal[C];if(this.fixedComponentsOnHorizontal[C])for(var M=0;M<$.length;M++)this.dummyToNodeForVerticalAlignment.has($[M])?this.dummyToNodeForVerticalAlignment.get($[M]).forEach(function(ce){k.idToNodeMap.get(ce).displacementX=0}):this.idToNodeMap.get($[M]).displacementX=0;else{for(var U=0,K=0,M=0;M<$.length;M++)if(this.dummyToNodeForVerticalAlignment.has($[M])){var ne=this.dummyToNodeForVerticalAlignment.get($[M]);U+=ne.length*this.idToNodeMap.get(ne[0]).displacementX,K+=ne.length}else U+=this.idToNodeMap.get($[M]).displacementX,K++;for(var j=U/K,M=0;M<$.length;M++)this.dummyToNodeForVerticalAlignment.has($[M])?this.dummyToNodeForVerticalAlignment.get($[M]).forEach(function(ce){k.idToNodeMap.get(ce).displacementX=j}):this.idToNodeMap.get($[M]).displacementX=j}}for(var C=0;C<this.componentsOnVertical.length;C++){var $=this.componentsOnVertical[C];if(this.fixedComponentsOnVertical[C])for(var M=0;M<$.length;M++)this.dummyToNodeForHorizontalAlignment.has($[M])?this.dummyToNodeForHorizontalAlignment.get($[M]).forEach(function(Q){k.idToNodeMap.get(Q).displacementY=0}):this.idToNodeMap.get($[M]).displacementY=0;else{for(var U=0,K=0,M=0;M<$.length;M++)if(this.dummyToNodeForHorizontalAlignment.has($[M])){var ne=this.dummyToNodeForHorizontalAlignment.get($[M]);U+=ne.length*this.idToNodeMap.get(ne[0]).displacementY,K+=ne.length}else U+=this.idToNodeMap.get($[M]).displacementY,K++;for(var j=U/K,M=0;M<$.length;M++)this.dummyToNodeForHorizontalAlignment.has($[M])?this.dummyToNodeForHorizontalAlignment.get($[M]).forEach(function(re){k.idToNodeMap.get(re).displacementY=j}):this.idToNodeMap.get($[M]).displacementY=j}}}},O.prototype.calculateNodesToApplyGravitationTo=function(){var k=[],L,C=this.graphManager.getGraphs(),I=C.length,M;for(M=0;M<I;M++)L=C[M],L.updateConnected(),L.isConnected||(k=k.concat(L.getNodes()));return k},O.prototype.createBendpoints=function(){var k=[];k=k.concat(this.graphManager.getAllEdges());var L=new Set,C;for(C=0;C<k.length;C++){var I=k[C];if(!L.has(I)){var M=I.getSource(),P=I.getTarget();if(M==P)I.getBendpoints().push(new b),I.getBendpoints().push(new b),this.createDummyNodesForBendpoints(I),L.add(I);else{var B=[];if(B=B.concat(M.getEdgeListToNode(P)),B=B.concat(P.getEdgeListToNode(M)),!L.has(B[0])){if(B.length>1){var F;for(F=0;F<B.length;F++){var G=B[F];G.getBendpoints().push(new b),this.createDummyNodesForBendpoints(G)}}B.forEach(function($){L.add($)})}}}if(L.size==k.length)break}},O.prototype.positionNodesRadially=function(k){for(var L=new v(0,0),C=Math.ceil(Math.sqrt(k.length)),I=0,M=0,P=0,B=new b(0,0),F=0;F<k.length;F++){F%C==0&&(P=0,M=I,F!=0&&(M+=m.DEFAULT_COMPONENT_SEPERATION),I=0);var G=k[F],$=S.findCenterOfTree(G);L.x=P,L.y=M,B=O.radialLayout(G,$,L),B.y>I&&(I=Math.floor(B.y)),P=Math.floor(B.x+m.DEFAULT_COMPONENT_SEPERATION)}this.transform(new b(x.WORLD_CENTER_X-B.x/2,x.WORLD_CENTER_Y-B.y/2))},O.radialLayout=function(k,L,C){var I=Math.max(this.maxDiagonalInTree(k),m.DEFAULT_RADIAL_SEPARATION);O.branchRadialLayout(L,null,0,359,0,I);var M=_.calculateBounds(k),P=new A;P.setDeviceOrgX(M.getMinX()),P.setDeviceOrgY(M.getMinY()),P.setWorldOrgX(C.x),P.setWorldOrgY(C.y);for(var B=0;B<k.length;B++){var F=k[B];F.transform(P)}var G=new b(M.getMaxX(),M.getMaxY());return P.inverseTransformPoint(G)},O.branchRadialLayout=function(k,L,C,I,M,P){var B=(I-C+1)/2;B<0&&(B+=180);var F=(B+C)%360,G=F*E.TWO_PI/360,$=Math.cos(G),U=M*Math.cos(G),K=M*Math.sin(G);k.setCenter(U,K);var ne=[];ne=ne.concat(k.getEdges());var j=ne.length;L!=null&&j--;for(var le=0,Z=ne.length,ce,Q=k.getEdgesBetween(L);Q.length>1;){var ee=Q[0];Q.splice(0,1);var te=ne.indexOf(ee);te>=0&&ne.splice(te,1),Z--,j--}L!=null?ce=(ne.indexOf(Q[0])+1)%Z:ce=0;for(var re=Math.abs(I-C)/j,he=ce;le!=j;he=++he%Z){var J=ne[he].getOtherEnd(k);if(J!=L){var ye=(C+le*re)%360,se=(ye+re)%360;O.branchRadialLayout(J,k,ye,se,M+P,P),le++}}},O.maxDiagonalInTree=function(k){for(var L=w.MIN_VALUE,C=0;C<k.length;C++){var I=k[C],M=I.getDiagonal();M>L&&(L=M)}return L},O.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},O.prototype.groupZeroDegreeMembers=function(){var k=this,L={};this.memberGroups={},this.idToDummyNode={};for(var C=[],I=this.graphManager.getAllNodes(),M=0;M<I.length;M++){var P=I[M],B=P.getParent();this.getNodeDegreeWithChildren(P)===0&&(B.id==null||!this.getToBeTiled(B))&&C.push(P)}for(var M=0;M<C.length;M++){var P=C[M],F=P.getParent().id;typeof L[F]>"u"&&(L[F]=[]),L[F]=L[F].concat(P)}Object.keys(L).forEach(function(G){if(L[G].length>1){var $="DummyCompound_"+G;k.memberGroups[$]=L[G];var U=L[G][0].getParent(),K=new d(k.graphManager);K.id=$,K.paddingLeft=U.paddingLeft||0,K.paddingRight=U.paddingRight||0,K.paddingBottom=U.paddingBottom||0,K.paddingTop=U.paddingTop||0,k.idToDummyNode[$]=K;var ne=k.getGraphManager().add(k.newGraph(),K),j=U.getChild();j.add(K);for(var le=0;le<L[G].length;le++){var Z=L[G][le];j.remove(Z),ne.add(Z)}}})},O.prototype.clearCompounds=function(){var k={},L={};this.performDFSOnCompounds();for(var C=0;C<this.compoundOrder.length;C++)L[this.compoundOrder[C].id]=this.compoundOrder[C],k[this.compoundOrder[C].id]=[].concat(this.compoundOrder[C].getChild().getNodes()),this.graphManager.remove(this.compoundOrder[C].getChild()),this.compoundOrder[C].child=null;this.graphManager.resetAllNodes(),this.tileCompoundMembers(k,L)},O.prototype.clearZeroDegreeMembers=function(){var k=this,L=this.tiledZeroDegreePack=[];Object.keys(this.memberGroups).forEach(function(C){var I=k.idToDummyNode[C];if(L[C]=k.tileNodes(k.memberGroups[C],I.paddingLeft+I.paddingRight),I.rect.width=L[C].width,I.rect.height=L[C].height,I.setCenter(L[C].centerX,L[C].centerY),I.labelMarginLeft=0,I.labelMarginTop=0,m.NODE_DIMENSIONS_INCLUDE_LABELS){var M=I.rect.width,P=I.rect.height;I.labelWidth&&(I.labelPosHorizontal=="left"?(I.rect.x-=I.labelWidth,I.setWidth(M+I.labelWidth),I.labelMarginLeft=I.labelWidth):I.labelPosHorizontal=="center"&&I.labelWidth>M?(I.rect.x-=(I.labelWidth-M)/2,I.setWidth(I.labelWidth),I.labelMarginLeft=(I.labelWidth-M)/2):I.labelPosHorizontal=="right"&&I.setWidth(M+I.labelWidth)),I.labelHeight&&(I.labelPosVertical=="top"?(I.rect.y-=I.labelHeight,I.setHeight(P+I.labelHeight),I.labelMarginTop=I.labelHeight):I.labelPosVertical=="center"&&I.labelHeight>P?(I.rect.y-=(I.labelHeight-P)/2,I.setHeight(I.labelHeight),I.labelMarginTop=(I.labelHeight-P)/2):I.labelPosVertical=="bottom"&&I.setHeight(P+I.labelHeight))}})},O.prototype.repopulateCompounds=function(){for(var k=this.compoundOrder.length-1;k>=0;k--){var L=this.compoundOrder[k],C=L.id,I=L.paddingLeft,M=L.paddingTop,P=L.labelMarginLeft,B=L.labelMarginTop;this.adjustLocations(this.tiledMemberPack[C],L.rect.x,L.rect.y,I,M,P,B)}},O.prototype.repopulateZeroDegreeMembers=function(){var k=this,L=this.tiledZeroDegreePack;Object.keys(L).forEach(function(C){var I=k.idToDummyNode[C],M=I.paddingLeft,P=I.paddingTop,B=I.labelMarginLeft,F=I.labelMarginTop;k.adjustLocations(L[C],I.rect.x,I.rect.y,M,P,B,F)})},O.prototype.getToBeTiled=function(k){var L=k.id;if(this.toBeTiled[L]!=null)return this.toBeTiled[L];var C=k.getChild();if(C==null)return this.toBeTiled[L]=!1,!1;for(var I=C.getNodes(),M=0;M<I.length;M++){var P=I[M];if(this.getNodeDegree(P)>0)return this.toBeTiled[L]=!1,!1;if(P.getChild()==null){this.toBeTiled[P.id]=!1;continue}if(!this.getToBeTiled(P))return this.toBeTiled[L]=!1,!1}return this.toBeTiled[L]=!0,!0},O.prototype.getNodeDegree=function(k){for(var L=k.id,C=k.getEdges(),I=0,M=0;M<C.length;M++){var P=C[M];P.getSource().id!==P.getTarget().id&&(I=I+1)}return I},O.prototype.getNodeDegreeWithChildren=function(k){var L=this.getNodeDegree(k);if(k.getChild()==null)return L;for(var C=k.getChild().getNodes(),I=0;I<C.length;I++){var M=C[I];L+=this.getNodeDegreeWithChildren(M)}return L},O.prototype.performDFSOnCompounds=function(){this.compoundOrder=[],this.fillCompexOrderByDFS(this.graphManager.getRoot().getNodes())},O.prototype.fillCompexOrderByDFS=function(k){for(var L=0;L<k.length;L++){var C=k[L];C.getChild()!=null&&this.fillCompexOrderByDFS(C.getChild().getNodes()),this.getToBeTiled(C)&&this.compoundOrder.push(C)}},O.prototype.adjustLocations=function(k,L,C,I,M,P,B){L+=I+P,C+=M+B;for(var F=L,G=0;G<k.rows.length;G++){var $=k.rows[G];L=F;for(var U=0,K=0;K<$.length;K++){var ne=$[K];ne.rect.x=L,ne.rect.y=C,L+=ne.rect.width+k.horizontalPadding,ne.rect.height>U&&(U=ne.rect.height)}C+=U+k.verticalPadding}},O.prototype.tileCompoundMembers=function(k,L){var C=this;this.tiledMemberPack=[],Object.keys(k).forEach(function(I){var M=L[I];if(C.tiledMemberPack[I]=C.tileNodes(k[I],M.paddingLeft+M.paddingRight),M.rect.width=C.tiledMemberPack[I].width,M.rect.height=C.tiledMemberPack[I].height,M.setCenter(C.tiledMemberPack[I].centerX,C.tiledMemberPack[I].centerY),M.labelMarginLeft=0,M.labelMarginTop=0,m.NODE_DIMENSIONS_INCLUDE_LABELS){var P=M.rect.width,B=M.rect.height;M.labelWidth&&(M.labelPosHorizontal=="left"?(M.rect.x-=M.labelWidth,M.setWidth(P+M.labelWidth),M.labelMarginLeft=M.labelWidth):M.labelPosHorizontal=="center"&&M.labelWidth>P?(M.rect.x-=(M.labelWidth-P)/2,M.setWidth(M.labelWidth),M.labelMarginLeft=(M.labelWidth-P)/2):M.labelPosHorizontal=="right"&&M.setWidth(P+M.labelWidth)),M.labelHeight&&(M.labelPosVertical=="top"?(M.rect.y-=M.labelHeight,M.setHeight(B+M.labelHeight),M.labelMarginTop=M.labelHeight):M.labelPosVertical=="center"&&M.labelHeight>B?(M.rect.y-=(M.labelHeight-B)/2,M.setHeight(M.labelHeight),M.labelMarginTop=(M.labelHeight-B)/2):M.labelPosVertical=="bottom"&&M.setHeight(B+M.labelHeight))}})},O.prototype.tileNodes=function(k,L){var C=this.tileNodesByFavoringDim(k,L,!0),I=this.tileNodesByFavoringDim(k,L,!1),M=this.getOrgRatio(C),P=this.getOrgRatio(I),B;return P<M?B=I:B=C,B},O.prototype.getOrgRatio=function(k){var L=k.width,C=k.height,I=L/C;return I<1&&(I=1/I),I},O.prototype.calcIdealRowWidth=function(k,L){var C=m.TILING_PADDING_VERTICAL,I=m.TILING_PADDING_HORIZONTAL,M=k.length,P=0,B=0,F=0;k.forEach(function(le){P+=le.getWidth(),B+=le.getHeight(),le.getWidth()>F&&(F=le.getWidth())});var G=P/M,$=B/M,U=Math.pow(C-I,2)+4*(G+I)*($+C)*M,K=(I-C+Math.sqrt(U))/(2*(G+I)),ne;L?(ne=Math.ceil(K),ne==K&&ne++):ne=Math.floor(K);var j=ne*(G+I)-I;return F>j&&(j=F),j+=I*2,j},O.prototype.tileNodesByFavoringDim=function(k,L,C){var I=m.TILING_PADDING_VERTICAL,M=m.TILING_PADDING_HORIZONTAL,P=m.TILING_COMPARE_BY,B={rows:[],rowWidth:[],rowHeight:[],width:0,height:L,verticalPadding:I,horizontalPadding:M,centerX:0,centerY:0};P&&(B.idealRowWidth=this.calcIdealRowWidth(k,C));var F=o(function(Z){return Z.rect.width*Z.rect.height},"getNodeArea"),G=o(function(Z,ce){return F(ce)-F(Z)},"areaCompareFcn");k.sort(function(le,Z){var ce=G;return B.idealRowWidth?(ce=P,ce(le.id,Z.id)):ce(le,Z)});for(var $=0,U=0,K=0;K<k.length;K++){var ne=k[K];$+=ne.getCenterX(),U+=ne.getCenterY()}B.centerX=$/k.length,B.centerY=U/k.length;for(var K=0;K<k.length;K++){var ne=k[K];if(B.rows.length==0)this.insertNodeToRow(B,ne,0,L);else if(this.canAddHorizontal(B,ne.rect.width,ne.rect.height)){var j=B.rows.length-1;B.idealRowWidth||(j=this.getShortestRowIndex(B)),this.insertNodeToRow(B,ne,j,L)}else this.insertNodeToRow(B,ne,B.rows.length,L);this.shiftToLastRow(B)}return B},O.prototype.insertNodeToRow=function(k,L,C,I){var M=I;if(C==k.rows.length){var P=[];k.rows.push(P),k.rowWidth.push(M),k.rowHeight.push(0)}var B=k.rowWidth[C]+L.rect.width;k.rows[C].length>0&&(B+=k.horizontalPadding),k.rowWidth[C]=B,k.width<B&&(k.width=B);var F=L.rect.height;C>0&&(F+=k.verticalPadding);var G=0;F>k.rowHeight[C]&&(G=k.rowHeight[C],k.rowHeight[C]=F,G=k.rowHeight[C]-G),k.height+=G,k.rows[C].push(L)},O.prototype.getShortestRowIndex=function(k){for(var L=-1,C=Number.MAX_VALUE,I=0;I<k.rows.length;I++)k.rowWidth[I]<C&&(L=I,C=k.rowWidth[I]);return L},O.prototype.getLongestRowIndex=function(k){for(var L=-1,C=Number.MIN_VALUE,I=0;I<k.rows.length;I++)k.rowWidth[I]>C&&(L=I,C=k.rowWidth[I]);return L},O.prototype.canAddHorizontal=function(k,L,C){if(k.idealRowWidth){var I=k.rows.length-1,M=k.rowWidth[I];return M+L+k.horizontalPadding<=k.idealRowWidth}var P=this.getShortestRowIndex(k);if(P<0)return!0;var B=k.rowWidth[P];if(B+k.horizontalPadding+L<=k.width)return!0;var F=0;k.rowHeight[P]<C&&P>0&&(F=C+k.verticalPadding-k.rowHeight[P]);var G;k.width-B>=L+k.horizontalPadding?G=(k.height+F)/(B+L+k.horizontalPadding):G=(k.height+F)/k.width,F=C+k.verticalPadding;var $;return k.width<L?$=(k.height+F)/L:$=(k.height+F)/k.width,$<1&&($=1/$),G<1&&(G=1/G),G<$},O.prototype.shiftToLastRow=function(k){var L=this.getLongestRowIndex(k),C=k.rowWidth.length-1,I=k.rows[L],M=I[I.length-1],P=M.width+k.horizontalPadding;if(k.width-k.rowWidth[C]>P&&L!=C){I.splice(-1,1),k.rows[C].push(M),k.rowWidth[L]=k.rowWidth[L]-P,k.rowWidth[C]=k.rowWidth[C]+P,k.width=k.rowWidth[instance.getLongestRowIndex(k)];for(var B=Number.MIN_VALUE,F=0;F<I.length;F++)I[F].height>B&&(B=I[F].height);L>0&&(B+=k.verticalPadding);var G=k.rowHeight[L]+k.rowHeight[C];k.rowHeight[L]=B,k.rowHeight[C]<M.height+k.verticalPadding&&(k.rowHeight[C]=M.height+k.verticalPadding);var $=k.rowHeight[L]+k.rowHeight[C];k.height+=$-G,this.shiftToLastRow(k)}},O.prototype.tilingPreLayout=function(){m.TILE&&(this.groupZeroDegreeMembers(),this.clearCompounds(),this.clearZeroDegreeMembers())},O.prototype.tilingPostLayout=function(){m.TILE&&(this.repopulateZeroDegreeMembers(),this.repopulateCompounds())},O.prototype.reduceTrees=function(){for(var k=[],L=!0,C;L;){var I=this.graphManager.getAllNodes(),M=[];L=!1;for(var P=0;P<I.length;P++)if(C=I[P],C.getEdges().length==1&&!C.getEdges()[0].isInterGraph&&C.getChild()==null){if(m.PURE_INCREMENTAL){var B=C.getEdges()[0].getOtherEnd(C),F=new T(C.getCenterX()-B.getCenterX(),C.getCenterY()-B.getCenterY());M.push([C,C.getEdges()[0],C.getOwner(),F])}else M.push([C,C.getEdges()[0],C.getOwner()]);L=!0}if(L==!0){for(var G=[],$=0;$<M.length;$++)M[$][0].getEdges().length==1&&(G.push(M[$]),M[$][0].getOwner().remove(M[$][0]));k.push(G),this.graphManager.resetAllNodes(),this.graphManager.resetAllEdges()}}this.prunedNodesAll=k},O.prototype.growTree=function(k){for(var L=k.length,C=k[L-1],I,M=0;M<C.length;M++)I=C[M],this.findPlaceforPrunedNode(I),I[2].add(I[0]),I[2].add(I[1],I[1].source,I[1].target);k.splice(k.length-1,1),this.graphManager.resetAllNodes(),this.graphManager.resetAllEdges()},O.prototype.findPlaceforPrunedNode=function(k){var L,C,I=k[0];if(I==k[1].source?C=k[1].target:C=k[1].source,m.PURE_INCREMENTAL)I.setCenter(C.getCenterX()+k[3].getWidth(),C.getCenterY()+k[3].getHeight());else{var M=C.startX,P=C.finishX,B=C.startY,F=C.finishY,G=0,$=0,U=0,K=0,ne=[G,U,$,K];if(B>0)for(var j=M;j<=P;j++)ne[0]+=this.grid[j][B-1].length+this.grid[j][B].length-1;if(P<this.grid.length-1)for(var j=B;j<=F;j++)ne[1]+=this.grid[P+1][j].length+this.grid[P][j].length-1;if(F<this.grid[0].length-1)for(var j=M;j<=P;j++)ne[2]+=this.grid[j][F+1].length+this.grid[j][F].length-1;if(M>0)for(var j=B;j<=F;j++)ne[3]+=this.grid[M-1][j].length+this.grid[M][j].length-1;for(var le=w.MAX_VALUE,Z,ce,Q=0;Q<ne.length;Q++)ne[Q]<le?(le=ne[Q],Z=1,ce=Q):ne[Q]==le&&Z++;if(Z==3&&le==0)ne[0]==0&&ne[1]==0&&ne[2]==0?L=1:ne[0]==0&&ne[1]==0&&ne[3]==0?L=0:ne[0]==0&&ne[2]==0&&ne[3]==0?L=3:ne[1]==0&&ne[2]==0&&ne[3]==0&&(L=2);else if(Z==2&&le==0){var ee=Math.floor(Math.random()*2);ne[0]==0&&ne[1]==0?ee==0?L=0:L=1:ne[0]==0&&ne[2]==0?ee==0?L=0:L=2:ne[0]==0&&ne[3]==0?ee==0?L=0:L=3:ne[1]==0&&ne[2]==0?ee==0?L=1:L=2:ne[1]==0&&ne[3]==0?ee==0?L=1:L=3:ee==0?L=2:L=3}else if(Z==4&&le==0){var ee=Math.floor(Math.random()*4);L=ee}else L=ce;L==0?I.setCenter(C.getCenterX(),C.getCenterY()-C.getHeight()/2-y.DEFAULT_EDGE_LENGTH-I.getHeight()/2):L==1?I.setCenter(C.getCenterX()+C.getWidth()/2+y.DEFAULT_EDGE_LENGTH+I.getWidth()/2,C.getCenterY()):L==2?I.setCenter(C.getCenterX(),C.getCenterY()+C.getHeight()/2+y.DEFAULT_EDGE_LENGTH+I.getHeight()/2):I.setCenter(C.getCenterX()-C.getWidth()/2-y.DEFAULT_EDGE_LENGTH-I.getWidth()/2,C.getCenterY())}},a.exports=O},991:(a,s,l)=>{var u=l(551).FDLayoutNode,h=l(551).IMath;function f(p,m,g,y){u.call(this,p,m,g,y)}o(f,"CoSENode"),f.prototype=Object.create(u.prototype);for(var d in u)f[d]=u[d];f.prototype.calculateDisplacement=function(){var p=this.graphManager.getLayout();this.getChild()!=null&&this.fixedNodeWeight?(this.displacementX+=p.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.fixedNodeWeight,this.displacementY+=p.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.fixedNodeWeight):(this.displacementX+=p.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY+=p.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren),Math.abs(this.displacementX)>p.coolingFactor*p.maxNodeDisplacement&&(this.displacementX=p.coolingFactor*p.maxNodeDisplacement*h.sign(this.displacementX)),Math.abs(this.displacementY)>p.coolingFactor*p.maxNodeDisplacement&&(this.displacementY=p.coolingFactor*p.maxNodeDisplacement*h.sign(this.displacementY)),this.child&&this.child.getNodes().length>0&&this.propogateDisplacementToChildren(this.displacementX,this.displacementY)},f.prototype.propogateDisplacementToChildren=function(p,m){for(var g=this.getChild().getNodes(),y,x=0;x<g.length;x++)y=g[x],y.getChild()==null?(y.displacementX+=p,y.displacementY+=m):y.propogateDisplacementToChildren(p,m)},f.prototype.move=function(){var p=this.graphManager.getLayout();(this.child==null||this.child.getNodes().length==0)&&(this.moveBy(this.displacementX,this.displacementY),p.totalDisplacement+=Math.abs(this.displacementX)+Math.abs(this.displacementY)),this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0},f.prototype.setPred1=function(p){this.pred1=p},f.prototype.getPred1=function(){return pred1},f.prototype.getPred2=function(){return pred2},f.prototype.setNext=function(p){this.next=p},f.prototype.getNext=function(){return next},f.prototype.setProcessed=function(p){this.processed=p},f.prototype.isProcessed=function(){return processed},a.exports=f},902:(a,s,l)=>{function u(g){if(Array.isArray(g)){for(var y=0,x=Array(g.length);y<g.length;y++)x[y]=g[y];return x}else return Array.from(g)}o(u,"_toConsumableArray");var h=l(806),f=l(551).LinkedList,d=l(551).Matrix,p=l(551).SVD;function m(){}o(m,"ConstraintHandler"),m.handleConstraints=function(g){var y={};y.fixedNodeConstraint=g.constraints.fixedNodeConstraint,y.alignmentConstraint=g.constraints.alignmentConstraint,y.relativePlacementConstraint=g.constraints.relativePlacementConstraint;for(var x=new Map,v=new Map,b=[],T=[],S=g.getAllNodes(),w=0,E=0;E<S.length;E++){var _=S[E];_.getChild()==null&&(v.set(_.id,w++),b.push(_.getCenterX()),T.push(_.getCenterY()),x.set(_.id,_))}y.relativePlacementConstraint&&y.relativePlacementConstraint.forEach(function(oe){!oe.gap&&oe.gap!=0&&(oe.left?oe.gap=h.DEFAULT_EDGE_LENGTH+x.get(oe.left).getWidth()/2+x.get(oe.right).getWidth()/2:oe.gap=h.DEFAULT_EDGE_LENGTH+x.get(oe.top).getHeight()/2+x.get(oe.bottom).getHeight()/2)});var A=o(function(V,xe){return{x:V.x-xe.x,y:V.y-xe.y}},"calculatePositionDiff"),D=o(function(V){var xe=0,Y=0;return V.forEach(function(de){xe+=b[v.get(de)],Y+=T[v.get(de)]}),{x:xe/V.size,y:Y/V.size}},"calculateAvgPosition"),O=o(function(V,xe,Y,de,me){function Be(Ze,Ve){var ht=new Set(Ze),Ye=!0,ct=!1,Yt=void 0;try{for(var Tt=Ve[Symbol.iterator](),Mt;!(Ye=(Mt=Tt.next()).done);Ye=!0){var bt=Mt.value;ht.add(bt)}}catch(ft){ct=!0,Yt=ft}finally{try{!Ye&&Tt.return&&Tt.return()}finally{if(ct)throw Yt}}return ht}o(Be,"setUnion");var _e=new Map;V.forEach(function(Ze,Ve){_e.set(Ve,0)}),V.forEach(function(Ze,Ve){Ze.forEach(function(ht){_e.set(ht.id,_e.get(ht.id)+1)})});var Te=new Map,Ue=new Map,De=new f;_e.forEach(function(Ze,Ve){Ze==0?(De.push(Ve),Y||(xe=="horizontal"?Te.set(Ve,v.has(Ve)?b[v.get(Ve)]:de.get(Ve)):Te.set(Ve,v.has(Ve)?T[v.get(Ve)]:de.get(Ve)))):Te.set(Ve,Number.NEGATIVE_INFINITY),Y&&Ue.set(Ve,new Set([Ve]))}),Y&&me.forEach(function(Ze){var Ve=[];if(Ze.forEach(function(ct){Y.has(ct)&&Ve.push(ct)}),Ve.length>0){var ht=0;Ve.forEach(function(ct){xe=="horizontal"?(Te.set(ct,v.has(ct)?b[v.get(ct)]:de.get(ct)),ht+=Te.get(ct)):(Te.set(ct,v.has(ct)?T[v.get(ct)]:de.get(ct)),ht+=Te.get(ct))}),ht=ht/Ve.length,Ze.forEach(function(ct){Y.has(ct)||Te.set(ct,ht)})}else{var Ye=0;Ze.forEach(function(ct){xe=="horizontal"?Ye+=v.has(ct)?b[v.get(ct)]:de.get(ct):Ye+=v.has(ct)?T[v.get(ct)]:de.get(ct)}),Ye=Ye/Ze.length,Ze.forEach(function(ct){Te.set(ct,Ye)})}});for(var Qe=o(function(){var Ve=De.shift(),ht=V.get(Ve);ht.forEach(function(Ye){if(Te.get(Ye.id)<Te.get(Ve)+Ye.gap)if(Y&&Y.has(Ye.id)){var ct=void 0;if(xe=="horizontal"?ct=v.has(Ye.id)?b[v.get(Ye.id)]:de.get(Ye.id):ct=v.has(Ye.id)?T[v.get(Ye.id)]:de.get(Ye.id),Te.set(Ye.id,ct),ct<Te.get(Ve)+Ye.gap){var Yt=Te.get(Ve)+Ye.gap-ct;Ue.get(Ve).forEach(function(Tt){Te.set(Tt,Te.get(Tt)-Yt)})}}else Te.set(Ye.id,Te.get(Ve)+Ye.gap);_e.set(Ye.id,_e.get(Ye.id)-1),_e.get(Ye.id)==0&&De.push(Ye.id),Y&&Ue.set(Ye.id,Be(Ue.get(Ve),Ue.get(Ye.id)))})},"_loop");De.length!=0;)Qe();if(Y){var ot=new Set;V.forEach(function(Ze,Ve){Ze.length==0&&ot.add(Ve)});var Gt=[];Ue.forEach(function(Ze,Ve){if(ot.has(Ve)){var ht=!1,Ye=!0,ct=!1,Yt=void 0;try{for(var Tt=Ze[Symbol.iterator](),Mt;!(Ye=(Mt=Tt.next()).done);Ye=!0){var bt=Mt.value;Y.has(bt)&&(ht=!0)}}catch(dt){ct=!0,Yt=dt}finally{try{!Ye&&Tt.return&&Tt.return()}finally{if(ct)throw Yt}}if(!ht){var ft=!1,St=void 0;Gt.forEach(function(dt,vt){dt.has([].concat(u(Ze))[0])&&(ft=!0,St=vt)}),ft?Ze.forEach(function(dt){Gt[St].add(dt)}):Gt.push(new Set(Ze))}}}),Gt.forEach(function(Ze,Ve){var ht=Number.POSITIVE_INFINITY,Ye=Number.POSITIVE_INFINITY,ct=Number.NEGATIVE_INFINITY,Yt=Number.NEGATIVE_INFINITY,Tt=!0,Mt=!1,bt=void 0;try{for(var ft=Ze[Symbol.iterator](),St;!(Tt=(St=ft.next()).done);Tt=!0){var dt=St.value,vt=void 0;xe=="horizontal"?vt=v.has(dt)?b[v.get(dt)]:de.get(dt):vt=v.has(dt)?T[v.get(dt)]:de.get(dt);var at=Te.get(dt);vt<ht&&(ht=vt),vt>ct&&(ct=vt),at<Ye&&(Ye=at),at>Yt&&(Yt=at)}}catch(Dt){Mt=!0,bt=Dt}finally{try{!Tt&&ft.return&&ft.return()}finally{if(Mt)throw bt}}var pn=(ht+ct)/2-(Ye+Yt)/2,kt=!0,Fn=!1,tn=void 0;try{for(var Nr=Ze[Symbol.iterator](),Mr;!(kt=(Mr=Nr.next()).done);kt=!0){var $n=Mr.value;Te.set($n,Te.get($n)+pn)}}catch(Dt){Fn=!0,tn=Dt}finally{try{!kt&&Nr.return&&Nr.return()}finally{if(Fn)throw tn}}})}return Te},"findAppropriatePositionForRelativePlacement"),R=o(function(V){var xe=0,Y=0,de=0,me=0;if(V.forEach(function(Ue){Ue.left?b[v.get(Ue.left)]-b[v.get(Ue.right)]>=0?xe++:Y++:T[v.get(Ue.top)]-T[v.get(Ue.bottom)]>=0?de++:me++}),xe>Y&&de>me)for(var Be=0;Be<v.size;Be++)b[Be]=-1*b[Be],T[Be]=-1*T[Be];else if(xe>Y)for(var _e=0;_e<v.size;_e++)b[_e]=-1*b[_e];else if(de>me)for(var Te=0;Te<v.size;Te++)T[Te]=-1*T[Te]},"applyReflectionForRelativePlacement"),k=o(function(V){var xe=[],Y=new f,de=new Set,me=0;return V.forEach(function(Be,_e){if(!de.has(_e)){xe[me]=[];var Te=_e;for(Y.push(Te),de.add(Te),xe[me].push(Te);Y.length!=0;){Te=Y.shift();var Ue=V.get(Te);Ue.forEach(function(De){de.has(De.id)||(Y.push(De.id),de.add(De.id),xe[me].push(De.id))})}me++}}),xe},"findComponents"),L=o(function(V){var xe=new Map;return V.forEach(function(Y,de){xe.set(de,[])}),V.forEach(function(Y,de){Y.forEach(function(me){xe.get(de).push(me),xe.get(me.id).push({id:de,gap:me.gap,direction:me.direction})})}),xe},"dagToUndirected"),C=o(function(V){var xe=new Map;return V.forEach(function(Y,de){xe.set(de,[])}),V.forEach(function(Y,de){Y.forEach(function(me){xe.get(me.id).push({id:de,gap:me.gap,direction:me.direction})})}),xe},"dagToReversed"),I=[],M=[],P=!1,B=!1,F=new Set,G=new Map,$=new Map,U=[];if(y.fixedNodeConstraint&&y.fixedNodeConstraint.forEach(function(oe){F.add(oe.nodeId)}),y.relativePlacementConstraint&&(y.relativePlacementConstraint.forEach(function(oe){oe.left?(G.has(oe.left)?G.get(oe.left).push({id:oe.right,gap:oe.gap,direction:"horizontal"}):G.set(oe.left,[{id:oe.right,gap:oe.gap,direction:"horizontal"}]),G.has(oe.right)||G.set(oe.right,[])):(G.has(oe.top)?G.get(oe.top).push({id:oe.bottom,gap:oe.gap,direction:"vertical"}):G.set(oe.top,[{id:oe.bottom,gap:oe.gap,direction:"vertical"}]),G.has(oe.bottom)||G.set(oe.bottom,[]))}),$=L(G),U=k($)),h.TRANSFORM_ON_CONSTRAINT_HANDLING){if(y.fixedNodeConstraint&&y.fixedNodeConstraint.length>1)y.fixedNodeConstraint.forEach(function(oe,V){I[V]=[oe.position.x,oe.position.y],M[V]=[b[v.get(oe.nodeId)],T[v.get(oe.nodeId)]]}),P=!0;else if(y.alignmentConstraint)(function(){var oe=0;if(y.alignmentConstraint.vertical){for(var V=y.alignmentConstraint.vertical,xe=o(function(Te){var Ue=new Set;V[Te].forEach(function(ot){Ue.add(ot)});var De=new Set([].concat(u(Ue)).filter(function(ot){return F.has(ot)})),Qe=void 0;De.size>0?Qe=b[v.get(De.values().next().value)]:Qe=D(Ue).x,V[Te].forEach(function(ot){I[oe]=[Qe,T[v.get(ot)]],M[oe]=[b[v.get(ot)],T[v.get(ot)]],oe++})},"_loop2"),Y=0;Y<V.length;Y++)xe(Y);P=!0}if(y.alignmentConstraint.horizontal){for(var de=y.alignmentConstraint.horizontal,me=o(function(Te){var Ue=new Set;de[Te].forEach(function(ot){Ue.add(ot)});var De=new Set([].concat(u(Ue)).filter(function(ot){return F.has(ot)})),Qe=void 0;De.size>0?Qe=b[v.get(De.values().next().value)]:Qe=D(Ue).y,de[Te].forEach(function(ot){I[oe]=[b[v.get(ot)],Qe],M[oe]=[b[v.get(ot)],T[v.get(ot)]],oe++})},"_loop3"),Be=0;Be<de.length;Be++)me(Be);P=!0}y.relativePlacementConstraint&&(B=!0)})();else if(y.relativePlacementConstraint){for(var K=0,ne=0,j=0;j<U.length;j++)U[j].length>K&&(K=U[j].length,ne=j);if(K<$.size/2)R(y.relativePlacementConstraint),P=!1,B=!1;else{var le=new Map,Z=new Map,ce=[];U[ne].forEach(function(oe){G.get(oe).forEach(function(V){V.direction=="horizontal"?(le.has(oe)?le.get(oe).push(V):le.set(oe,[V]),le.has(V.id)||le.set(V.id,[]),ce.push({left:oe,right:V.id})):(Z.has(oe)?Z.get(oe).push(V):Z.set(oe,[V]),Z.has(V.id)||Z.set(V.id,[]),ce.push({top:oe,bottom:V.id}))})}),R(ce),B=!1;var Q=O(le,"horizontal"),ee=O(Z,"vertical");U[ne].forEach(function(oe,V){M[V]=[b[v.get(oe)],T[v.get(oe)]],I[V]=[],Q.has(oe)?I[V][0]=Q.get(oe):I[V][0]=b[v.get(oe)],ee.has(oe)?I[V][1]=ee.get(oe):I[V][1]=T[v.get(oe)]}),P=!0}}if(P){for(var te=void 0,re=d.transpose(I),he=d.transpose(M),J=0;J<re.length;J++)re[J]=d.multGamma(re[J]),he[J]=d.multGamma(he[J]);var ye=d.multMat(re,d.transpose(he)),se=p.svd(ye);te=d.multMat(se.V,d.transpose(se.U));for(var Se=0;Se<v.size;Se++){var W=[b[Se],T[Se]],Oe=[te[0][0],te[1][0]],ve=[te[0][1],te[1][1]];b[Se]=d.dotProduct(W,Oe),T[Se]=d.dotProduct(W,ve)}B&&R(y.relativePlacementConstraint)}}if(h.ENFORCE_CONSTRAINTS){if(y.fixedNodeConstraint&&y.fixedNodeConstraint.length>0){var Pe={x:0,y:0};y.fixedNodeConstraint.forEach(function(oe,V){var xe={x:b[v.get(oe.nodeId)],y:T[v.get(oe.nodeId)]},Y=oe.position,de=A(Y,xe);Pe.x+=de.x,Pe.y+=de.y}),Pe.x/=y.fixedNodeConstraint.length,Pe.y/=y.fixedNodeConstraint.length,b.forEach(function(oe,V){b[V]+=Pe.x}),T.forEach(function(oe,V){T[V]+=Pe.y}),y.fixedNodeConstraint.forEach(function(oe){b[v.get(oe.nodeId)]=oe.position.x,T[v.get(oe.nodeId)]=oe.position.y})}if(y.alignmentConstraint){if(y.alignmentConstraint.vertical)for(var qe=y.alignmentConstraint.vertical,Ge=o(function(V){var xe=new Set;qe[V].forEach(function(me){xe.add(me)});var Y=new Set([].concat(u(xe)).filter(function(me){return F.has(me)})),de=void 0;Y.size>0?de=b[v.get(Y.values().next().value)]:de=D(xe).x,xe.forEach(function(me){F.has(me)||(b[v.get(me)]=de)})},"_loop4"),Ne=0;Ne<qe.length;Ne++)Ge(Ne);if(y.alignmentConstraint.horizontal)for(var Me=y.alignmentConstraint.horizontal,be=o(function(V){var xe=new Set;Me[V].forEach(function(me){xe.add(me)});var Y=new Set([].concat(u(xe)).filter(function(me){return F.has(me)})),de=void 0;Y.size>0?de=T[v.get(Y.values().next().value)]:de=D(xe).y,xe.forEach(function(me){F.has(me)||(T[v.get(me)]=de)})},"_loop5"),q=0;q<Me.length;q++)be(q)}y.relativePlacementConstraint&&function(){var oe=new Map,V=new Map,xe=new Map,Y=new Map,de=new Map,me=new Map,Be=new Set,_e=new Set;if(F.forEach(function(Hr){Be.add(Hr),_e.add(Hr)}),y.alignmentConstraint){if(y.alignmentConstraint.vertical)for(var Te=y.alignmentConstraint.vertical,Ue=o(function(tt){xe.set("dummy"+tt,[]),Te[tt].forEach(function(yt){oe.set(yt,"dummy"+tt),xe.get("dummy"+tt).push(yt),F.has(yt)&&Be.add("dummy"+tt)}),de.set("dummy"+tt,b[v.get(Te[tt][0])])},"_loop6"),De=0;De<Te.length;De++)Ue(De);if(y.alignmentConstraint.horizontal)for(var Qe=y.alignmentConstraint.horizontal,ot=o(function(tt){Y.set("dummy"+tt,[]),Qe[tt].forEach(function(yt){V.set(yt,"dummy"+tt),Y.get("dummy"+tt).push(yt),F.has(yt)&&_e.add("dummy"+tt)}),me.set("dummy"+tt,T[v.get(Qe[tt][0])])},"_loop7"),Gt=0;Gt<Qe.length;Gt++)ot(Gt)}var Ze=new Map,Ve=new Map,ht=o(function(tt){G.get(tt).forEach(function(yt){var Kt=void 0,ut=void 0;yt.direction=="horizontal"?(Kt=oe.get(tt)?oe.get(tt):tt,oe.get(yt.id)?ut={id:oe.get(yt.id),gap:yt.gap,direction:yt.direction}:ut=yt,Ze.has(Kt)?Ze.get(Kt).push(ut):Ze.set(Kt,[ut]),Ze.has(ut.id)||Ze.set(ut.id,[])):(Kt=V.get(tt)?V.get(tt):tt,V.get(yt.id)?ut={id:V.get(yt.id),gap:yt.gap,direction:yt.direction}:ut=yt,Ve.has(Kt)?Ve.get(Kt).push(ut):Ve.set(Kt,[ut]),Ve.has(ut.id)||Ve.set(ut.id,[]))})},"_loop8"),Ye=!0,ct=!1,Yt=void 0;try{for(var Tt=G.keys()[Symbol.iterator](),Mt;!(Ye=(Mt=Tt.next()).done);Ye=!0){var bt=Mt.value;ht(bt)}}catch(Hr){ct=!0,Yt=Hr}finally{try{!Ye&&Tt.return&&Tt.return()}finally{if(ct)throw Yt}}var ft=L(Ze),St=L(Ve),dt=k(ft),vt=k(St),at=C(Ze),pn=C(Ve),kt=[],Fn=[];dt.forEach(function(Hr,tt){kt[tt]=[],Hr.forEach(function(yt){at.get(yt).length==0&&kt[tt].push(yt)})}),vt.forEach(function(Hr,tt){Fn[tt]=[],Hr.forEach(function(yt){pn.get(yt).length==0&&Fn[tt].push(yt)})});var tn=O(Ze,"horizontal",Be,de,kt),Nr=O(Ve,"vertical",_e,me,Fn),Mr=o(function(tt){xe.get(tt)?xe.get(tt).forEach(function(yt){b[v.get(yt)]=tn.get(tt)}):b[v.get(tt)]=tn.get(tt)},"_loop9"),$n=!0,Dt=!1,Ce=void 0;try{for(var nt=tn.keys()[Symbol.iterator](),Ct;!($n=(Ct=nt.next()).done);$n=!0){var yr=Ct.value;Mr(yr)}}catch(Hr){Dt=!0,Ce=Hr}finally{try{!$n&&nt.return&&nt.return()}finally{if(Dt)throw Ce}}var rn=o(function(tt){Y.get(tt)?Y.get(tt).forEach(function(yt){T[v.get(yt)]=Nr.get(tt)}):T[v.get(tt)]=Nr.get(tt)},"_loop10"),yn=!0,Zr=!1,Mi=void 0;try{for(var ti=Nr.keys()[Symbol.iterator](),An;!(yn=(An=ti.next()).done);yn=!0){var yr=An.value;rn(yr)}}catch(Hr){Zr=!0,Mi=Hr}finally{try{!yn&&ti.return&&ti.return()}finally{if(Zr)throw Mi}}}()}for(var fe=0;fe<S.length;fe++){var ae=S[fe];ae.getChild()==null&&ae.setCenter(b[v.get(ae.id)],T[v.get(ae.id)])}},a.exports=m},551:a=>{a.exports=t}},r={};function n(a){var s=r[a];if(s!==void 0)return s.exports;var l=r[a]={exports:{}};return e[a](l,l.exports,n),l.exports}o(n,"__webpack_require__");var i=n(45);return i})()})});var ixe=Aa((B4,u$)=>{"use strict";o(function(e,r){typeof B4=="object"&&typeof u$=="object"?u$.exports=r(c$()):typeof define=="function"&&define.amd?define(["cose-base"],r):typeof B4=="object"?B4.cytoscapeFcose=r(c$()):e.cytoscapeFcose=r(e.coseBase)},"webpackUniversalModuleDefinition")(B4,function(t){return(()=>{"use strict";var e={658:a=>{a.exports=Object.assign!=null?Object.assign.bind(Object):function(s){for(var l=arguments.length,u=Array(l>1?l-1:0),h=1;h<l;h++)u[h-1]=arguments[h];return u.forEach(function(f){Object.keys(f).forEach(function(d){return s[d]=f[d]})}),s}},548:(a,s,l)=>{var u=function(){function d(p,m){var g=[],y=!0,x=!1,v=void 0;try{for(var b=p[Symbol.iterator](),T;!(y=(T=b.next()).done)&&(g.push(T.value),!(m&&g.length===m));y=!0);}catch(S){x=!0,v=S}finally{try{!y&&b.return&&b.return()}finally{if(x)throw v}}return g}return o(d,"sliceIterator"),function(p,m){if(Array.isArray(p))return p;if(Symbol.iterator in Object(p))return d(p,m);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),h=l(140).layoutBase.LinkedList,f={};f.getTopMostNodes=function(d){for(var p={},m=0;m<d.length;m++)p[d[m].id()]=!0;var g=d.filter(function(y,x){typeof y=="number"&&(y=x);for(var v=y.parent()[0];v!=null;){if(p[v.id()])return!1;v=v.parent()[0]}return!0});return g},f.connectComponents=function(d,p,m,g){var y=new h,x=new Set,v=[],b=void 0,T=void 0,S=void 0,w=!1,E=1,_=[],A=[],D=o(function(){var R=d.collection();A.push(R);var k=m[0],L=d.collection();L.merge(k).merge(k.descendants().intersection(p)),v.push(k),L.forEach(function(M){y.push(M),x.add(M),R.merge(M)});for(var C=o(function(){k=y.shift();var P=d.collection();k.neighborhood().nodes().forEach(function($){p.intersection(k.edgesWith($)).length>0&&P.merge($)});for(var B=0;B<P.length;B++){var F=P[B];if(b=m.intersection(F.union(F.ancestors())),b!=null&&!x.has(b[0])){var G=b.union(b.descendants());G.forEach(function($){y.push($),x.add($),R.merge($),m.has($)&&v.push($)})}}},"_loop2");y.length!=0;)C();if(R.forEach(function(M){p.intersection(M.connectedEdges()).forEach(function(P){R.has(P.source())&&R.has(P.target())&&R.merge(P)})}),v.length==m.length&&(w=!0),!w||w&&E>1){T=v[0],S=T.connectedEdges().length,v.forEach(function(M){M.connectedEdges().length<S&&(S=M.connectedEdges().length,T=M)}),_.push(T.id());var I=d.collection();I.merge(v[0]),v.forEach(function(M){I.merge(M)}),v=[],m=m.difference(I),E++}},"_loop");do D();while(!w);return g&&_.length>0&&g.set("dummy"+(g.size+1),_),A},f.relocateComponent=function(d,p,m){if(!m.fixedNodeConstraint){var g=Number.POSITIVE_INFINITY,y=Number.NEGATIVE_INFINITY,x=Number.POSITIVE_INFINITY,v=Number.NEGATIVE_INFINITY;if(m.quality=="draft"){var b=!0,T=!1,S=void 0;try{for(var w=p.nodeIndexes[Symbol.iterator](),E;!(b=(E=w.next()).done);b=!0){var _=E.value,A=u(_,2),D=A[0],O=A[1],R=m.cy.getElementById(D);if(R){var k=R.boundingBox(),L=p.xCoords[O]-k.w/2,C=p.xCoords[O]+k.w/2,I=p.yCoords[O]-k.h/2,M=p.yCoords[O]+k.h/2;L<g&&(g=L),C>y&&(y=C),I<x&&(x=I),M>v&&(v=M)}}}catch($){T=!0,S=$}finally{try{!b&&w.return&&w.return()}finally{if(T)throw S}}var P=d.x-(y+g)/2,B=d.y-(v+x)/2;p.xCoords=p.xCoords.map(function($){return $+P}),p.yCoords=p.yCoords.map(function($){return $+B})}else{Object.keys(p).forEach(function($){var U=p[$],K=U.getRect().x,ne=U.getRect().x+U.getRect().width,j=U.getRect().y,le=U.getRect().y+U.getRect().height;K<g&&(g=K),ne>y&&(y=ne),j<x&&(x=j),le>v&&(v=le)});var F=d.x-(y+g)/2,G=d.y-(v+x)/2;Object.keys(p).forEach(function($){var U=p[$];U.setCenter(U.getCenterX()+F,U.getCenterY()+G)})}}},f.calcBoundingBox=function(d,p,m,g){for(var y=Number.MAX_SAFE_INTEGER,x=Number.MIN_SAFE_INTEGER,v=Number.MAX_SAFE_INTEGER,b=Number.MIN_SAFE_INTEGER,T=void 0,S=void 0,w=void 0,E=void 0,_=d.descendants().not(":parent"),A=_.length,D=0;D<A;D++){var O=_[D];T=p[g.get(O.id())]-O.width()/2,S=p[g.get(O.id())]+O.width()/2,w=m[g.get(O.id())]-O.height()/2,E=m[g.get(O.id())]+O.height()/2,y>T&&(y=T),x<S&&(x=S),v>w&&(v=w),b<E&&(b=E)}var R={};return R.topLeftX=y,R.topLeftY=v,R.width=x-y,R.height=b-v,R},f.calcParentsWithoutChildren=function(d,p){var m=d.collection();return p.nodes(":parent").forEach(function(g){var y=!1;g.children().forEach(function(x){x.css("display")!="none"&&(y=!0)}),y||m.merge(g)}),m},a.exports=f},816:(a,s,l)=>{var u=l(548),h=l(140).CoSELayout,f=l(140).CoSENode,d=l(140).layoutBase.PointD,p=l(140).layoutBase.DimensionD,m=l(140).layoutBase.LayoutConstants,g=l(140).layoutBase.FDLayoutConstants,y=l(140).CoSEConstants,x=o(function(b,T){var S=b.cy,w=b.eles,E=w.nodes(),_=w.edges(),A=void 0,D=void 0,O=void 0,R={};b.randomize&&(A=T.nodeIndexes,D=T.xCoords,O=T.yCoords);var k=o(function($){return typeof $=="function"},"isFn"),L=o(function($,U){return k($)?$(U):$},"optFn"),C=u.calcParentsWithoutChildren(S,w),I=o(function G($,U,K,ne){for(var j=U.length,le=0;le<j;le++){var Z=U[le],ce=null;Z.intersection(C).length==0&&(ce=Z.children());var Q=void 0,ee=Z.layoutDimensions({nodeDimensionsIncludeLabels:ne.nodeDimensionsIncludeLabels});if(Z.outerWidth()!=null&&Z.outerHeight()!=null)if(ne.randomize)if(!Z.isParent())Q=$.add(new f(K.graphManager,new d(D[A.get(Z.id())]-ee.w/2,O[A.get(Z.id())]-ee.h/2),new p(parseFloat(ee.w),parseFloat(ee.h))));else{var te=u.calcBoundingBox(Z,D,O,A);Z.intersection(C).length==0?Q=$.add(new f(K.graphManager,new d(te.topLeftX,te.topLeftY),new p(te.width,te.height))):Q=$.add(new f(K.graphManager,new d(te.topLeftX,te.topLeftY),new p(parseFloat(ee.w),parseFloat(ee.h))))}else Q=$.add(new f(K.graphManager,new d(Z.position("x")-ee.w/2,Z.position("y")-ee.h/2),new p(parseFloat(ee.w),parseFloat(ee.h))));else Q=$.add(new f(this.graphManager));if(Q.id=Z.data("id"),Q.nodeRepulsion=L(ne.nodeRepulsion,Z),Q.paddingLeft=parseInt(Z.css("padding")),Q.paddingTop=parseInt(Z.css("padding")),Q.paddingRight=parseInt(Z.css("padding")),Q.paddingBottom=parseInt(Z.css("padding")),ne.nodeDimensionsIncludeLabels&&(Q.labelWidth=Z.boundingBox({includeLabels:!0,includeNodes:!1,includeOverlays:!1}).w,Q.labelHeight=Z.boundingBox({includeLabels:!0,includeNodes:!1,includeOverlays:!1}).h,Q.labelPosVertical=Z.css("text-valign"),Q.labelPosHorizontal=Z.css("text-halign")),R[Z.data("id")]=Q,isNaN(Q.rect.x)&&(Q.rect.x=0),isNaN(Q.rect.y)&&(Q.rect.y=0),ce!=null&&ce.length>0){var re=void 0;re=K.getGraphManager().add(K.newGraph(),Q),G(re,ce,K,ne)}}},"processChildrenList"),M=o(function($,U,K){for(var ne=0,j=0,le=0;le<K.length;le++){var Z=K[le],ce=R[Z.data("source")],Q=R[Z.data("target")];if(ce&&Q&&ce!==Q&&ce.getEdgesBetween(Q).length==0){var ee=U.add($.newEdge(),ce,Q);ee.id=Z.id(),ee.idealLength=L(b.idealEdgeLength,Z),ee.edgeElasticity=L(b.edgeElasticity,Z),ne+=ee.idealLength,j++}}b.idealEdgeLength!=null&&(j>0?y.DEFAULT_EDGE_LENGTH=g.DEFAULT_EDGE_LENGTH=ne/j:k(b.idealEdgeLength)?y.DEFAULT_EDGE_LENGTH=g.DEFAULT_EDGE_LENGTH=50:y.DEFAULT_EDGE_LENGTH=g.DEFAULT_EDGE_LENGTH=b.idealEdgeLength,y.MIN_REPULSION_DIST=g.MIN_REPULSION_DIST=g.DEFAULT_EDGE_LENGTH/10,y.DEFAULT_RADIAL_SEPARATION=g.DEFAULT_EDGE_LENGTH)},"processEdges"),P=o(function($,U){U.fixedNodeConstraint&&($.constraints.fixedNodeConstraint=U.fixedNodeConstraint),U.alignmentConstraint&&($.constraints.alignmentConstraint=U.alignmentConstraint),U.relativePlacementConstraint&&($.constraints.relativePlacementConstraint=U.relativePlacementConstraint)},"processConstraints");b.nestingFactor!=null&&(y.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=g.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=b.nestingFactor),b.gravity!=null&&(y.DEFAULT_GRAVITY_STRENGTH=g.DEFAULT_GRAVITY_STRENGTH=b.gravity),b.numIter!=null&&(y.MAX_ITERATIONS=g.MAX_ITERATIONS=b.numIter),b.gravityRange!=null&&(y.DEFAULT_GRAVITY_RANGE_FACTOR=g.DEFAULT_GRAVITY_RANGE_FACTOR=b.gravityRange),b.gravityCompound!=null&&(y.DEFAULT_COMPOUND_GRAVITY_STRENGTH=g.DEFAULT_COMPOUND_GRAVITY_STRENGTH=b.gravityCompound),b.gravityRangeCompound!=null&&(y.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=g.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=b.gravityRangeCompound),b.initialEnergyOnIncremental!=null&&(y.DEFAULT_COOLING_FACTOR_INCREMENTAL=g.DEFAULT_COOLING_FACTOR_INCREMENTAL=b.initialEnergyOnIncremental),b.tilingCompareBy!=null&&(y.TILING_COMPARE_BY=b.tilingCompareBy),b.quality=="proof"?m.QUALITY=2:m.QUALITY=0,y.NODE_DIMENSIONS_INCLUDE_LABELS=g.NODE_DIMENSIONS_INCLUDE_LABELS=m.NODE_DIMENSIONS_INCLUDE_LABELS=b.nodeDimensionsIncludeLabels,y.DEFAULT_INCREMENTAL=g.DEFAULT_INCREMENTAL=m.DEFAULT_INCREMENTAL=!b.randomize,y.ANIMATE=g.ANIMATE=m.ANIMATE=b.animate,y.TILE=b.tile,y.TILING_PADDING_VERTICAL=typeof b.tilingPaddingVertical=="function"?b.tilingPaddingVertical.call():b.tilingPaddingVertical,y.TILING_PADDING_HORIZONTAL=typeof b.tilingPaddingHorizontal=="function"?b.tilingPaddingHorizontal.call():b.tilingPaddingHorizontal,y.DEFAULT_INCREMENTAL=g.DEFAULT_INCREMENTAL=m.DEFAULT_INCREMENTAL=!0,y.PURE_INCREMENTAL=!b.randomize,m.DEFAULT_UNIFORM_LEAF_NODE_SIZES=b.uniformNodeDimensions,b.step=="transformed"&&(y.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,y.ENFORCE_CONSTRAINTS=!1,y.APPLY_LAYOUT=!1),b.step=="enforced"&&(y.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,y.ENFORCE_CONSTRAINTS=!0,y.APPLY_LAYOUT=!1),b.step=="cose"&&(y.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,y.ENFORCE_CONSTRAINTS=!1,y.APPLY_LAYOUT=!0),b.step=="all"&&(b.randomize?y.TRANSFORM_ON_CONSTRAINT_HANDLING=!0:y.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,y.ENFORCE_CONSTRAINTS=!0,y.APPLY_LAYOUT=!0),b.fixedNodeConstraint||b.alignmentConstraint||b.relativePlacementConstraint?y.TREE_REDUCTION_ON_INCREMENTAL=!1:y.TREE_REDUCTION_ON_INCREMENTAL=!0;var B=new h,F=B.newGraphManager();return I(F.addRoot(),u.getTopMostNodes(E),B,b),M(B,F,_),P(B,b),B.runLayout(),R},"coseLayout");a.exports={coseLayout:x}},212:(a,s,l)=>{var u=function(){function b(T,S){for(var w=0;w<S.length;w++){var E=S[w];E.enumerable=E.enumerable||!1,E.configurable=!0,"value"in E&&(E.writable=!0),Object.defineProperty(T,E.key,E)}}return o(b,"defineProperties"),function(T,S,w){return S&&b(T.prototype,S),w&&b(T,w),T}}();function h(b,T){if(!(b instanceof T))throw new TypeError("Cannot call a class as a function")}o(h,"_classCallCheck");var f=l(658),d=l(548),p=l(657),m=p.spectralLayout,g=l(816),y=g.coseLayout,x=Object.freeze({quality:"default",randomize:!0,animate:!0,animationDuration:1e3,animationEasing:void 0,fit:!0,padding:30,nodeDimensionsIncludeLabels:!1,uniformNodeDimensions:!1,packComponents:!0,step:"all",samplingType:!0,sampleSize:25,nodeSeparation:75,piTol:1e-7,nodeRepulsion:o(function(T){return 4500},"nodeRepulsion"),idealEdgeLength:o(function(T){return 50},"idealEdgeLength"),edgeElasticity:o(function(T){return .45},"edgeElasticity"),nestingFactor:.1,gravity:.25,numIter:2500,tile:!0,tilingCompareBy:void 0,tilingPaddingVertical:10,tilingPaddingHorizontal:10,gravityRangeCompound:1.5,gravityCompound:1,gravityRange:3.8,initialEnergyOnIncremental:.3,fixedNodeConstraint:void 0,alignmentConstraint:void 0,relativePlacementConstraint:void 0,ready:o(function(){},"ready"),stop:o(function(){},"stop")}),v=function(){function b(T){h(this,b),this.options=f({},x,T)}return o(b,"Layout"),u(b,[{key:"run",value:o(function(){var S=this,w=this.options,E=w.cy,_=w.eles,A=[],D=void 0,O=void 0,R=[],k=void 0,L=[];w.fixedNodeConstraint&&(!Array.isArray(w.fixedNodeConstraint)||w.fixedNodeConstraint.length==0)&&(w.fixedNodeConstraint=void 0),w.alignmentConstraint&&(w.alignmentConstraint.vertical&&(!Array.isArray(w.alignmentConstraint.vertical)||w.alignmentConstraint.vertical.length==0)&&(w.alignmentConstraint.vertical=void 0),w.alignmentConstraint.horizontal&&(!Array.isArray(w.alignmentConstraint.horizontal)||w.alignmentConstraint.horizontal.length==0)&&(w.alignmentConstraint.horizontal=void 0)),w.relativePlacementConstraint&&(!Array.isArray(w.relativePlacementConstraint)||w.relativePlacementConstraint.length==0)&&(w.relativePlacementConstraint=void 0);var C=w.fixedNodeConstraint||w.alignmentConstraint||w.relativePlacementConstraint;C&&(w.tile=!1,w.packComponents=!1);var I=void 0,M=!1;if(E.layoutUtilities&&w.packComponents&&(I=E.layoutUtilities("get"),I||(I=E.layoutUtilities()),M=!0),_.nodes().length>0)if(M){var F=d.getTopMostNodes(w.eles.nodes());if(k=d.connectComponents(E,w.eles,F),k.forEach(function(Se){var W=Se.boundingBox();L.push({x:W.x1+W.w/2,y:W.y1+W.h/2})}),w.randomize&&k.forEach(function(Se){w.eles=Se,A.push(m(w))}),w.quality=="default"||w.quality=="proof"){var G=E.collection();if(w.tile){var $=new Map,U=[],K=[],ne=0,j={nodeIndexes:$,xCoords:U,yCoords:K},le=[];if(k.forEach(function(Se,W){Se.edges().length==0&&(Se.nodes().forEach(function(Oe,ve){G.merge(Se.nodes()[ve]),Oe.isParent()||(j.nodeIndexes.set(Se.nodes()[ve].id(),ne++),j.xCoords.push(Se.nodes()[0].position().x),j.yCoords.push(Se.nodes()[0].position().y))}),le.push(W))}),G.length>1){var Z=G.boundingBox();L.push({x:Z.x1+Z.w/2,y:Z.y1+Z.h/2}),k.push(G),A.push(j);for(var ce=le.length-1;ce>=0;ce--)k.splice(le[ce],1),A.splice(le[ce],1),L.splice(le[ce],1)}}k.forEach(function(Se,W){w.eles=Se,R.push(y(w,A[W])),d.relocateComponent(L[W],R[W],w)})}else k.forEach(function(Se,W){d.relocateComponent(L[W],A[W],w)});var Q=new Set;if(k.length>1){var ee=[],te=_.filter(function(Se){return Se.css("display")=="none"});k.forEach(function(Se,W){var Oe=void 0;if(w.quality=="draft"&&(Oe=A[W].nodeIndexes),Se.nodes().not(te).length>0){var ve={};ve.edges=[],ve.nodes=[];var Pe=void 0;Se.nodes().not(te).forEach(function(qe){if(w.quality=="draft")if(!qe.isParent())Pe=Oe.get(qe.id()),ve.nodes.push({x:A[W].xCoords[Pe]-qe.boundingbox().w/2,y:A[W].yCoords[Pe]-qe.boundingbox().h/2,width:qe.boundingbox().w,height:qe.boundingbox().h});else{var Ge=d.calcBoundingBox(qe,A[W].xCoords,A[W].yCoords,Oe);ve.nodes.push({x:Ge.topLeftX,y:Ge.topLeftY,width:Ge.width,height:Ge.height})}else R[W][qe.id()]&&ve.nodes.push({x:R[W][qe.id()].getLeft(),y:R[W][qe.id()].getTop(),width:R[W][qe.id()].getWidth(),height:R[W][qe.id()].getHeight()})}),Se.edges().forEach(function(qe){var Ge=qe.source(),Ne=qe.target();if(Ge.css("display")!="none"&&Ne.css("display")!="none")if(w.quality=="draft"){var Me=Oe.get(Ge.id()),be=Oe.get(Ne.id()),q=[],fe=[];if(Ge.isParent()){var ae=d.calcBoundingBox(Ge,A[W].xCoords,A[W].yCoords,Oe);q.push(ae.topLeftX+ae.width/2),q.push(ae.topLeftY+ae.height/2)}else q.push(A[W].xCoords[Me]),q.push(A[W].yCoords[Me]);if(Ne.isParent()){var oe=d.calcBoundingBox(Ne,A[W].xCoords,A[W].yCoords,Oe);fe.push(oe.topLeftX+oe.width/2),fe.push(oe.topLeftY+oe.height/2)}else fe.push(A[W].xCoords[be]),fe.push(A[W].yCoords[be]);ve.edges.push({startX:q[0],startY:q[1],endX:fe[0],endY:fe[1]})}else R[W][Ge.id()]&&R[W][Ne.id()]&&ve.edges.push({startX:R[W][Ge.id()].getCenterX(),startY:R[W][Ge.id()].getCenterY(),endX:R[W][Ne.id()].getCenterX(),endY:R[W][Ne.id()].getCenterY()})}),ve.nodes.length>0&&(ee.push(ve),Q.add(W))}});var re=I.packComponents(ee,w.randomize).shifts;if(w.quality=="draft")A.forEach(function(Se,W){var Oe=Se.xCoords.map(function(Pe){return Pe+re[W].dx}),ve=Se.yCoords.map(function(Pe){return Pe+re[W].dy});Se.xCoords=Oe,Se.yCoords=ve});else{var he=0;Q.forEach(function(Se){Object.keys(R[Se]).forEach(function(W){var Oe=R[Se][W];Oe.setCenter(Oe.getCenterX()+re[he].dx,Oe.getCenterY()+re[he].dy)}),he++})}}}else{var P=w.eles.boundingBox();if(L.push({x:P.x1+P.w/2,y:P.y1+P.h/2}),w.randomize){var B=m(w);A.push(B)}w.quality=="default"||w.quality=="proof"?(R.push(y(w,A[0])),d.relocateComponent(L[0],R[0],w)):d.relocateComponent(L[0],A[0],w)}var J=o(function(W,Oe){if(w.quality=="default"||w.quality=="proof"){typeof W=="number"&&(W=Oe);var ve=void 0,Pe=void 0,qe=W.data("id");return R.forEach(function(Ne){qe in Ne&&(ve={x:Ne[qe].getRect().getCenterX(),y:Ne[qe].getRect().getCenterY()},Pe=Ne[qe])}),w.nodeDimensionsIncludeLabels&&(Pe.labelWidth&&(Pe.labelPosHorizontal=="left"?ve.x+=Pe.labelWidth/2:Pe.labelPosHorizontal=="right"&&(ve.x-=Pe.labelWidth/2)),Pe.labelHeight&&(Pe.labelPosVertical=="top"?ve.y+=Pe.labelHeight/2:Pe.labelPosVertical=="bottom"&&(ve.y-=Pe.labelHeight/2))),ve==null&&(ve={x:W.position("x"),y:W.position("y")}),{x:ve.x,y:ve.y}}else{var Ge=void 0;return A.forEach(function(Ne){var Me=Ne.nodeIndexes.get(W.id());Me!=null&&(Ge={x:Ne.xCoords[Me],y:Ne.yCoords[Me]})}),Ge==null&&(Ge={x:W.position("x"),y:W.position("y")}),{x:Ge.x,y:Ge.y}}},"getPositions");if(w.quality=="default"||w.quality=="proof"||w.randomize){var ye=d.calcParentsWithoutChildren(E,_),se=_.filter(function(Se){return Se.css("display")=="none"});w.eles=_.not(se),_.nodes().not(":parent").not(se).layoutPositions(S,w,J),ye.length>0&&ye.forEach(function(Se){Se.position(J(Se))})}else console.log("If randomize option is set to false, then quality option must be 'default' or 'proof'.")},"run")}]),b}();a.exports=v},657:(a,s,l)=>{var u=l(548),h=l(140).layoutBase.Matrix,f=l(140).layoutBase.SVD,d=o(function(m){var g=m.cy,y=m.eles,x=y.nodes(),v=y.nodes(":parent"),b=new Map,T=new Map,S=new Map,w=[],E=[],_=[],A=[],D=[],O=[],R=[],k=[],L=void 0,C=void 0,I=1e8,M=1e-9,P=m.piTol,B=m.samplingType,F=m.nodeSeparation,G=void 0,$=o(function(){for(var xe=0,Y=0,de=!1;Y<G;){xe=Math.floor(Math.random()*C),de=!1;for(var me=0;me<Y;me++)if(A[me]==xe){de=!0;break}if(!de)A[Y]=xe,Y++;else continue}},"randomSampleCR"),U=o(function(xe,Y,de){for(var me=[],Be=0,_e=0,Te=0,Ue=void 0,De=[],Qe=0,ot=1,Gt=0;Gt<C;Gt++)De[Gt]=I;for(me[_e]=xe,De[xe]=0;_e>=Be;){Te=me[Be++];for(var Ze=w[Te],Ve=0;Ve<Ze.length;Ve++)Ue=T.get(Ze[Ve]),De[Ue]==I&&(De[Ue]=De[Te]+1,me[++_e]=Ue);O[Te][Y]=De[Te]*F}if(de){for(var ht=0;ht<C;ht++)O[ht][Y]<D[ht]&&(D[ht]=O[ht][Y]);for(var Ye=0;Ye<C;Ye++)D[Ye]>Qe&&(Qe=D[Ye],ot=Ye)}return ot},"BFS"),K=o(function(xe){var Y=void 0;if(xe){Y=Math.floor(Math.random()*C),L=Y;for(var me=0;me<C;me++)D[me]=I;for(var Be=0;Be<G;Be++)A[Be]=Y,Y=U(Y,Be,xe)}else{$();for(var de=0;de<G;de++)U(A[de],de,xe,!1)}for(var _e=0;_e<C;_e++)for(var Te=0;Te<G;Te++)O[_e][Te]*=O[_e][Te];for(var Ue=0;Ue<G;Ue++)R[Ue]=[];for(var De=0;De<G;De++)for(var Qe=0;Qe<G;Qe++)R[De][Qe]=O[A[Qe]][De]},"allBFS"),ne=o(function(){for(var xe=f.svd(R),Y=xe.S,de=xe.U,me=xe.V,Be=Y[0]*Y[0]*Y[0],_e=[],Te=0;Te<G;Te++){_e[Te]=[];for(var Ue=0;Ue<G;Ue++)_e[Te][Ue]=0,Te==Ue&&(_e[Te][Ue]=Y[Te]/(Y[Te]*Y[Te]+Be/(Y[Te]*Y[Te])))}k=h.multMat(h.multMat(me,_e),h.transpose(de))},"sample"),j=o(function(){for(var xe=void 0,Y=void 0,de=[],me=[],Be=[],_e=[],Te=0;Te<C;Te++)de[Te]=Math.random(),me[Te]=Math.random();de=h.normalize(de),me=h.normalize(me);for(var Ue=0,De=M,Qe=M,ot=void 0;;){Ue++;for(var Gt=0;Gt<C;Gt++)Be[Gt]=de[Gt];if(de=h.multGamma(h.multL(h.multGamma(Be),O,k)),xe=h.dotProduct(Be,de),de=h.normalize(de),De=h.dotProduct(Be,de),ot=Math.abs(De/Qe),ot<=1+P&&ot>=1)break;Qe=De}for(var Ze=0;Ze<C;Ze++)Be[Ze]=de[Ze];for(Ue=0,Qe=M;;){Ue++;for(var Ve=0;Ve<C;Ve++)_e[Ve]=me[Ve];if(_e=h.minusOp(_e,h.multCons(Be,h.dotProduct(Be,_e))),me=h.multGamma(h.multL(h.multGamma(_e),O,k)),Y=h.dotProduct(_e,me),me=h.normalize(me),De=h.dotProduct(_e,me),ot=Math.abs(De/Qe),ot<=1+P&&ot>=1)break;Qe=De}for(var ht=0;ht<C;ht++)_e[ht]=me[ht];E=h.multCons(Be,Math.sqrt(Math.abs(xe))),_=h.multCons(_e,Math.sqrt(Math.abs(Y)))},"powerIteration");u.connectComponents(g,y,u.getTopMostNodes(x),b),v.forEach(function(V){u.connectComponents(g,y,u.getTopMostNodes(V.descendants().intersection(y)),b)});for(var le=0,Z=0;Z<x.length;Z++)x[Z].isParent()||T.set(x[Z].id(),le++);var ce=!0,Q=!1,ee=void 0;try{for(var te=b.keys()[Symbol.iterator](),re;!(ce=(re=te.next()).done);ce=!0){var he=re.value;T.set(he,le++)}}catch(V){Q=!0,ee=V}finally{try{!ce&&te.return&&te.return()}finally{if(Q)throw ee}}for(var J=0;J<T.size;J++)w[J]=[];v.forEach(function(V){for(var xe=V.children().intersection(y);xe.nodes(":childless").length==0;)xe=xe.nodes()[0].children().intersection(y);var Y=0,de=xe.nodes(":childless")[0].connectedEdges().length;xe.nodes(":childless").forEach(function(me,Be){me.connectedEdges().length<de&&(de=me.connectedEdges().length,Y=Be)}),S.set(V.id(),xe.nodes(":childless")[Y].id())}),x.forEach(function(V){var xe=void 0;V.isParent()?xe=T.get(S.get(V.id())):xe=T.get(V.id()),V.neighborhood().nodes().forEach(function(Y){y.intersection(V.edgesWith(Y)).length>0&&(Y.isParent()?w[xe].push(S.get(Y.id())):w[xe].push(Y.id()))})});var ye=o(function(xe){var Y=T.get(xe),de=void 0;b.get(xe).forEach(function(me){g.getElementById(me).isParent()?de=S.get(me):de=me,w[Y].push(de),w[T.get(de)].push(xe)})},"_loop"),se=!0,Se=!1,W=void 0;try{for(var Oe=b.keys()[Symbol.iterator](),ve;!(se=(ve=Oe.next()).done);se=!0){var Pe=ve.value;ye(Pe)}}catch(V){Se=!0,W=V}finally{try{!se&&Oe.return&&Oe.return()}finally{if(Se)throw W}}C=T.size;var qe=void 0;if(C>2){G=C<m.sampleSize?C:m.sampleSize;for(var Ge=0;Ge<C;Ge++)O[Ge]=[];for(var Ne=0;Ne<G;Ne++)k[Ne]=[];return m.quality=="draft"||m.step=="all"?(K(B),ne(),j(),qe={nodeIndexes:T,xCoords:E,yCoords:_}):(T.forEach(function(V,xe){E.push(g.getElementById(xe).position("x")),_.push(g.getElementById(xe).position("y"))}),qe={nodeIndexes:T,xCoords:E,yCoords:_}),qe}else{var Me=T.keys(),be=g.getElementById(Me.next().value),q=be.position(),fe=be.outerWidth();if(E.push(q.x),_.push(q.y),C==2){var ae=g.getElementById(Me.next().value),oe=ae.outerWidth();E.push(q.x+fe/2+oe/2+m.idealEdgeLength),_.push(q.y)}return qe={nodeIndexes:T,xCoords:E,yCoords:_},qe}},"spectralLayout");a.exports={spectralLayout:d}},579:(a,s,l)=>{var u=l(212),h=o(function(d){d&&d("layout","fcose",u)},"register");typeof cytoscape<"u"&&h(cytoscape),a.exports=h},140:a=>{a.exports=t}},r={};function n(a){var s=r[a];if(s!==void 0)return s.exports;var l=r[a]={exports:{}};return e[a](l,l.exports,n),l.exports}o(n,"__webpack_require__");var i=n(579);return i})()})});var yy,h0,h$=N(()=>{"use strict";rc();yy=o(t=>`<g><rect width="80" height="80" style="fill: #087ebf; stroke-width: 0px;"/>${t}</g>`,"wrapIcon"),h0={prefix:"mermaid-architecture",height:80,width:80,icons:{database:{body:yy('<path id="b" data-name="4" d="m20,57.86c0,3.94,8.95,7.14,20,7.14s20-3.2,20-7.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><path id="c" data-name="3" d="m20,45.95c0,3.94,8.95,7.14,20,7.14s20-3.2,20-7.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><path id="d" data-name="2" d="m20,34.05c0,3.94,8.95,7.14,20,7.14s20-3.2,20-7.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse id="e" data-name="1" cx="40" cy="22.14" rx="20" ry="7.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="20" y1="57.86" x2="20" y2="22.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="60" y1="57.86" x2="60" y2="22.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/>')},server:{body:yy('<rect x="17.5" y="17.5" width="45" height="45" rx="2" ry="2" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="17.5" y1="32.5" x2="62.5" y2="32.5" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="17.5" y1="47.5" x2="62.5" y2="47.5" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><g><path d="m56.25,25c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: #fff; stroke-width: 0px;"/><path d="m56.25,25c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: none; stroke: #fff; stroke-miterlimit: 10;"/></g><g><path d="m56.25,40c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: #fff; stroke-width: 0px;"/><path d="m56.25,40c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: none; stroke: #fff; stroke-miterlimit: 10;"/></g><g><path d="m56.25,55c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: #fff; stroke-width: 0px;"/><path d="m56.25,55c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: none; stroke: #fff; stroke-miterlimit: 10;"/></g><g><circle cx="32.5" cy="25" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="27.5" cy="25" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="22.5" cy="25" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/></g><g><circle cx="32.5" cy="40" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="27.5" cy="40" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="22.5" cy="40" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/></g><g><circle cx="32.5" cy="55" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="27.5" cy="55" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="22.5" cy="55" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/></g>')},disk:{body:yy('<rect x="20" y="15" width="40" height="50" rx="1" ry="1" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="24" cy="19.17" rx=".8" ry=".83" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="56" cy="19.17" rx=".8" ry=".83" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="24" cy="60.83" rx=".8" ry=".83" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="56" cy="60.83" rx=".8" ry=".83" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="40" cy="33.75" rx="14" ry="14.58" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="40" cy="33.75" rx="4" ry="4.17" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><path d="m37.51,42.52l-4.83,13.22c-.26.71-1.1,1.02-1.76.64l-4.18-2.42c-.66-.38-.81-1.26-.33-1.84l9.01-10.8c.88-1.05,2.56-.08,2.09,1.2Z" style="fill: #fff; stroke-width: 0px;"/>')},internet:{body:yy('<circle cx="40" cy="40" r="22.5" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="40" y1="17.5" x2="40" y2="62.5" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="17.5" y1="40" x2="62.5" y2="40" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><path d="m39.99,17.51c-15.28,11.1-15.28,33.88,0,44.98" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><path d="m40.01,17.51c15.28,11.1,15.28,33.88,0,44.98" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="19.75" y1="30.1" x2="60.25" y2="30.1" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="19.75" y1="49.9" x2="60.25" y2="49.9" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/>')},cloud:{body:yy('<path d="m65,47.5c0,2.76-2.24,5-5,5H20c-2.76,0-5-2.24-5-5,0-1.87,1.03-3.51,2.56-4.36-.04-.21-.06-.42-.06-.64,0-2.6,2.48-4.74,5.65-4.97,1.65-4.51,6.34-7.76,11.85-7.76.86,0,1.69.08,2.5.23,2.09-1.57,4.69-2.5,7.5-2.5,6.1,0,11.19,4.38,12.28,10.17,2.14.56,3.72,2.51,3.72,4.83,0,.03,0,.07-.01.1,2.29.46,4.01,2.48,4.01,4.9Z" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/>')},unknown:TA,blank:{body:yy("")}}}});var axe,sxe,oxe,lxe,cxe=N(()=>{"use strict";Xt();$o();rc();dr();h$();NC();axe=o(async function(t,e,r){let n=r.getConfigField("padding"),i=r.getConfigField("iconSize"),a=i/2,s=i/6,l=s/2;await Promise.all(e.edges().map(async u=>{let{source:h,sourceDir:f,sourceArrow:d,sourceGroup:p,target:m,targetDir:g,targetArrow:y,targetGroup:x,label:v}=RC(u),{x:b,y:T}=u[0].sourceEndpoint(),{x:S,y:w}=u[0].midpoint(),{x:E,y:_}=u[0].targetEndpoint(),A=n+4;if(p&&(Ya(f)?b+=f==="L"?-A:A:T+=f==="T"?-A:A+18),x&&(Ya(g)?E+=g==="L"?-A:A:_+=g==="T"?-A:A+18),!p&&r.getNode(h)?.type==="junction"&&(Ya(f)?b+=f==="L"?a:-a:T+=f==="T"?a:-a),!x&&r.getNode(m)?.type==="junction"&&(Ya(g)?E+=g==="L"?a:-a:_+=g==="T"?a:-a),u[0]._private.rscratch){let D=t.insert("g");if(D.insert("path").attr("d",`M ${b},${T} L ${S},${w} L${E},${_} `).attr("class","edge"),d){let O=Ya(f)?N4[f](b,s):b-l,R=tu(f)?N4[f](T,s):T-l;D.insert("polygon").attr("points",r$[f](s)).attr("transform",`translate(${O},${R})`).attr("class","arrow")}if(y){let O=Ya(g)?N4[g](E,s):E-l,R=tu(g)?N4[g](_,s):_-l;D.insert("polygon").attr("points",r$[g](s)).attr("transform",`translate(${O},${R})`).attr("class","arrow")}if(v){let O=M4(f,g)?"XY":Ya(f)?"X":"Y",R=0;O==="X"?R=Math.abs(b-E):O==="Y"?R=Math.abs(T-_)/1.5:R=Math.abs(b-E)/2;let k=D.append("g");if(await pi(k,v,{useHtmlLabels:!1,width:R,classes:"architecture-service-label"},ge()),k.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),O==="X")k.attr("transform","translate("+S+", "+w+")");else if(O==="Y")k.attr("transform","translate("+S+", "+w+") rotate(-90)");else if(O==="XY"){let L=I4(f,g);if(L&&j2e(L)){let C=k.node().getBoundingClientRect(),[I,M]=Q2e(L);k.attr("dominant-baseline","auto").attr("transform",`rotate(${-1*I*M*45})`);let P=k.node().getBoundingClientRect();k.attr("transform",`
|
||
translate(${S}, ${w-C.height/2})
|
||
translate(${I*P.width/2}, ${M*P.height/2})
|
||
rotate(${-1*I*M*45}, 0, ${C.height/2})
|
||
`)}}}}}))},"drawEdges"),sxe=o(async function(t,e,r){let i=r.getConfigField("padding")*.75,a=r.getConfigField("fontSize"),l=r.getConfigField("iconSize")/2;await Promise.all(e.nodes().map(async u=>{let h=Kf(u);if(h.type==="group"){let{h:f,w:d,x1:p,y1:m}=u.boundingBox();t.append("rect").attr("x",p+l).attr("y",m+l).attr("width",d).attr("height",f).attr("class","node-bkg");let g=t.append("g"),y=p,x=m;if(h.icon){let v=g.append("g");v.html(`<g>${await As(h.icon,{height:i,width:i,fallbackPrefix:h0.prefix})}</g>`),v.attr("transform","translate("+(y+l+1)+", "+(x+l+1)+")"),y+=i,x+=a/2-1-2}if(h.label){let v=g.append("g");await pi(v,h.label,{useHtmlLabels:!1,width:d,classes:"architecture-service-label"},ge()),v.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","start").attr("text-anchor","start"),v.attr("transform","translate("+(y+l+4)+", "+(x+l+2)+")")}}}))},"drawGroups"),oxe=o(async function(t,e,r){let n=ge();for(let i of r){let a=e.append("g"),s=t.getConfigField("iconSize");if(i.title){let f=a.append("g");await pi(f,i.title,{useHtmlLabels:!1,width:s*1.5,classes:"architecture-service-label"},n),f.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),f.attr("transform","translate("+s/2+", "+s+")")}let l=a.append("g");if(i.icon)l.html(`<g>${await As(i.icon,{height:s,width:s,fallbackPrefix:h0.prefix})}</g>`);else if(i.iconText){l.html(`<g>${await As("blank",{height:s,width:s,fallbackPrefix:h0.prefix})}</g>`);let p=l.append("g").append("foreignObject").attr("width",s).attr("height",s).append("div").attr("class","node-icon-text").attr("style",`height: ${s}px;`).append("div").html(ar(i.iconText,n)),m=parseInt(window.getComputedStyle(p.node(),null).getPropertyValue("font-size").replace(/\D/g,""))??16;p.attr("style",`-webkit-line-clamp: ${Math.floor((s-2)/m)};`)}else l.append("path").attr("class","node-bkg").attr("id","node-"+i.id).attr("d",`M0 ${s} v${-s} q0,-5 5,-5 h${s} q5,0 5,5 v${s} H0 Z`);a.attr("class","architecture-service");let{width:u,height:h}=a._groups[0][0].getBBox();i.width=u,i.height=h,t.setElementForId(i.id,a)}return 0},"drawServices"),lxe=o(function(t,e,r){r.forEach(n=>{let i=e.append("g"),a=t.getConfigField("iconSize");i.append("g").append("rect").attr("id","node-"+n.id).attr("fill-opacity","0").attr("width",a).attr("height",a),i.attr("class","architecture-junction");let{width:l,height:u}=i._groups[0][0].getBBox();i.width=l,i.height=u,t.setElementForId(n.id,i)})},"drawJunctions")});function Ant(t,e,r){t.forEach(n=>{e.add({group:"nodes",data:{type:"service",id:n.id,icon:n.icon,label:n.title,parent:n.in,width:r.getConfigField("iconSize"),height:r.getConfigField("iconSize")},classes:"node-service"})})}function _nt(t,e,r){t.forEach(n=>{e.add({group:"nodes",data:{type:"junction",id:n.id,parent:n.in,width:r.getConfigField("iconSize"),height:r.getConfigField("iconSize")},classes:"node-junction"})})}function Dnt(t,e){e.nodes().map(r=>{let n=Kf(r);if(n.type==="group")return;n.x=r.position().x,n.y=r.position().y,t.getElementById(n.id).attr("transform","translate("+(n.x||0)+","+(n.y||0)+")")})}function Lnt(t,e){t.forEach(r=>{e.add({group:"nodes",data:{type:"group",id:r.id,icon:r.icon,label:r.title,parent:r.in},classes:"node-group"})})}function Rnt(t,e){t.forEach(r=>{let{lhsId:n,rhsId:i,lhsInto:a,lhsGroup:s,rhsInto:l,lhsDir:u,rhsDir:h,rhsGroup:f,title:d}=r,p=M4(r.lhsDir,r.rhsDir)?"segments":"straight",m={id:`${n}-${i}`,label:d,source:n,sourceDir:u,sourceArrow:a,sourceGroup:s,sourceEndpoint:u==="L"?"0 50%":u==="R"?"100% 50%":u==="T"?"50% 0":"50% 100%",target:i,targetDir:h,targetArrow:l,targetGroup:f,targetEndpoint:h==="L"?"0 50%":h==="R"?"100% 50%":h==="T"?"50% 0":"50% 100%"};e.add({group:"edges",data:m,classes:p})})}function Nnt(t,e,r){let n=o((l,u)=>Object.entries(l).reduce((h,[f,d])=>{let p=0,m=Object.entries(d);if(m.length===1)return h[f]=m[0][1],h;for(let g=0;g<m.length-1;g++)for(let y=g+1;y<m.length;y++){let[x,v]=m[g],[b,T]=m[y];if(r[x]?.[b]===u)h[f]??=[],h[f]=[...h[f],...v,...T];else if(x==="default"||b==="default")h[f]??=[],h[f]=[...h[f],...v,...T];else{let w=`${f}-${p++}`;h[w]=v;let E=`${f}-${p++}`;h[E]=T}}return h},{}),"flattenAlignments"),i=e.map(l=>{let u={},h={};return Object.entries(l).forEach(([f,[d,p]])=>{let m=t.getNode(f)?.in??"default";u[p]??={},u[p][m]??=[],u[p][m].push(f),h[d]??={},h[d][m]??=[],h[d][m].push(f)}),{horiz:Object.values(n(u,"horizontal")).filter(f=>f.length>1),vert:Object.values(n(h,"vertical")).filter(f=>f.length>1)}}),[a,s]=i.reduce(([l,u],{horiz:h,vert:f})=>[[...l,...h],[...u,...f]],[[],[]]);return{horizontal:a,vertical:s}}function Mnt(t,e){let r=[],n=o(a=>`${a[0]},${a[1]}`,"posToStr"),i=o(a=>a.split(",").map(s=>parseInt(s)),"strToPos");return t.forEach(a=>{let s=Object.fromEntries(Object.entries(a).map(([f,d])=>[n(d),f])),l=[n([0,0])],u={},h={L:[-1,0],R:[1,0],T:[0,1],B:[0,-1]};for(;l.length>0;){let f=l.shift();if(f){u[f]=1;let d=s[f];if(d){let p=i(f);Object.entries(h).forEach(([m,g])=>{let y=n([p[0]+g[0],p[1]+g[1]]),x=s[y];x&&!u[y]&&(l.push(y),r.push({[t$[m]]:x,[t$[X2e(m)]]:d,gap:1.5*e.getConfigField("iconSize")}))})}}}}),r}function Int(t,e,r,n,i,{spatialMaps:a,groupAlignments:s}){return new Promise(l=>{let u=ze("body").append("div").attr("id","cy").attr("style","display:none"),h=Ko({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"straight",label:"data(label)","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"edge.segments",style:{"curve-style":"segments","segment-weights":"0","segment-distances":[.5],"edge-distances":"endpoints","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"node",style:{"compound-sizing-wrt-labels":"include"}},{selector:"node[label]",style:{"text-valign":"bottom","text-halign":"center","font-size":`${i.getConfigField("fontSize")}px`}},{selector:".node-service",style:{label:"data(label)",width:"data(width)",height:"data(height)"}},{selector:".node-junction",style:{width:"data(width)",height:"data(height)"}},{selector:".node-group",style:{padding:`${i.getConfigField("padding")}px`}}],layout:{name:"grid",boundingBox:{x1:0,x2:100,y1:0,y2:100}}});u.remove(),Lnt(r,h),Ant(t,h,i),_nt(e,h,i),Rnt(n,h);let f=Nnt(i,a,s),d=Mnt(a,i),p=h.layout({name:"fcose",quality:"proof",styleEnabled:!1,animate:!1,nodeDimensionsIncludeLabels:!1,idealEdgeLength(m){let[g,y]=m.connectedNodes(),{parent:x}=Kf(g),{parent:v}=Kf(y);return x===v?1.5*i.getConfigField("iconSize"):.5*i.getConfigField("iconSize")},edgeElasticity(m){let[g,y]=m.connectedNodes(),{parent:x}=Kf(g),{parent:v}=Kf(y);return x===v?.45:.001},alignmentConstraint:f,relativePlacementConstraint:d});p.one("layoutstop",()=>{function m(g,y,x,v){let b,T,{x:S,y:w}=g,{x:E,y:_}=y;T=(v-w+(S-x)*(w-_)/(S-E))/Math.sqrt(1+Math.pow((w-_)/(S-E),2)),b=Math.sqrt(Math.pow(v-w,2)+Math.pow(x-S,2)-Math.pow(T,2));let A=Math.sqrt(Math.pow(E-S,2)+Math.pow(_-w,2));b=b/A;let D=(E-S)*(v-w)-(_-w)*(x-S);switch(!0){case D>=0:D=1;break;case D<0:D=-1;break}let O=(E-S)*(x-S)+(_-w)*(v-w);switch(!0){case O>=0:O=1;break;case O<0:O=-1;break}return T=Math.abs(T)*D,b=b*O,{distances:T,weights:b}}o(m,"getSegmentWeights"),h.startBatch();for(let g of Object.values(h.edges()))if(g.data?.()){let{x:y,y:x}=g.source().position(),{x:v,y:b}=g.target().position();if(y!==v&&x!==b){let T=g.sourceEndpoint(),S=g.targetEndpoint(),{sourceDir:w}=RC(g),[E,_]=tu(w)?[T.x,S.y]:[S.x,T.y],{weights:A,distances:D}=m(T,S,E,_);g.style("segment-distances",D),g.style("segment-weights",A)}}h.endBatch(),p.run()}),p.run(),h.ready(m=>{X.info("Ready",m),l(h)})})}var uxe,Ont,hxe,fxe=N(()=>{"use strict";uM();uxe=ja(ixe(),1);pr();pt();rc();Jc();Ci();h$();NC();cxe();I3([{name:h0.prefix,icons:h0}]);Ko.use(uxe.default);o(Ant,"addServices");o(_nt,"addJunctions");o(Dnt,"positionNodes");o(Lnt,"addGroups");o(Rnt,"addEdges");o(Nnt,"getAlignments");o(Mnt,"getRelativeConstraints");o(Int,"layoutArchitecture");Ont=o(async(t,e,r,n)=>{let i=n.db,a=i.getServices(),s=i.getJunctions(),l=i.getGroups(),u=i.getEdges(),h=i.getDataStructures(),f=aa(e),d=f.append("g");d.attr("class","architecture-edges");let p=f.append("g");p.attr("class","architecture-services");let m=f.append("g");m.attr("class","architecture-groups"),await oxe(i,p,a),lxe(i,p,s);let g=await Int(a,s,l,u,i,h);await axe(d,g,i),await sxe(m,g,i),Dnt(i,g),nc(void 0,f,i.getConfigField("padding"),i.getConfigField("useMaxWidth"))},"draw"),hxe={draw:Ont}});var dxe={};ur(dxe,{diagram:()=>Pnt});var Pnt,pxe=N(()=>{"use strict";txe();i$();nxe();fxe();Pnt={parser:a$,get db(){return new gy},renderer:hxe,styles:rxe}});var vy,f$=N(()=>{"use strict";_a();Wn();tr();Ft();ui();vy=class{constructor(){this.nodes=[];this.levels=new Map;this.outerNodes=[];this.classes=new Map;this.setAccTitle=Cr;this.getAccTitle=_r;this.setDiagramTitle=Or;this.getDiagramTitle=Rr;this.getAccDescription=Lr;this.setAccDescription=Dr}static{o(this,"TreeMapDB")}getNodes(){return this.nodes}getConfig(){let e=lr,r=Qt();return Vn({...e.treemap,...r.treemap??{}})}addNode(e,r){this.nodes.push(e),this.levels.set(e,r),r===0&&(this.outerNodes.push(e),this.root??=e)}getRoot(){return{name:"",children:this.outerNodes}}addClass(e,r){let n=this.classes.get(e)??{id:e,styles:[],textStyles:[]},i=r.replace(/\\,/g,"\xA7\xA7\xA7").replace(/,/g,";").replace(/§§§/g,",").split(";");i&&i.forEach(a=>{S2(a)&&(n?.textStyles?n.textStyles.push(a):n.textStyles=[a]),n?.styles?n.styles.push(a):n.styles=[a]}),this.classes.set(e,n)}getClasses(){return this.classes}getStylesForClass(e){return this.classes.get(e)?.styles??[]}clear(){wr(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}}});function yxe(t){if(!t.length)return[];let e=[],r=[];return t.forEach(n=>{let i={name:n.name,children:n.type==="Leaf"?void 0:[]};for(i.classSelector=n?.classSelector,n?.cssCompiledStyles&&(i.cssCompiledStyles=[n.cssCompiledStyles]),n.type==="Leaf"&&n.value!==void 0&&(i.value=n.value);r.length>0&&r[r.length-1].level>=n.level;)r.pop();if(r.length===0)e.push(i);else{let a=r[r.length-1].node;a.children?a.children.push(i):a.children=[i]}n.type!=="Leaf"&&r.push({node:i,level:n.level})}),e}var vxe=N(()=>{"use strict";o(yxe,"buildHierarchy")});var Gnt,znt,d$,xxe=N(()=>{"use strict";Ff();pt();Zp();vxe();f$();Gnt=o((t,e)=>{nl(t,e);let r=[];for(let a of t.TreemapRows??[])a.$type==="ClassDefStatement"&&e.addClass(a.className??"",a.styleText??"");for(let a of t.TreemapRows??[]){let s=a.item;if(!s)continue;let l=a.indent?parseInt(a.indent):0,u=znt(s),h=s.classSelector?e.getStylesForClass(s.classSelector):[],f=h.length>0?h.join(";"):void 0,d={level:l,name:u,type:s.$type,value:s.value,classSelector:s.classSelector,cssCompiledStyles:f};r.push(d)}let n=yxe(r),i=o((a,s)=>{for(let l of a)e.addNode(l,s),l.children&&l.children.length>0&&i(l.children,s+1)},"addNodesRecursively");i(n,0)},"populate"),znt=o(t=>t.name?String(t.name):"","getItemName"),d$={parser:{yy:void 0},parse:o(async t=>{try{let r=await xs("treemap",t);X.debug("Treemap AST:",r);let n=d$.parser?.yy;if(!(n instanceof vy))throw new Error("parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Gnt(r,n)}catch(e){throw X.error("Error parsing treemap:",e),e}},"parse")}});var Vnt,xy,F4,Unt,Hnt,bxe,Txe=N(()=>{"use strict";Jc();_f();Ci();pr();Ft();Wn();pt();Vnt=10,xy=10,F4=25,Unt=o((t,e,r,n)=>{let i=n.db,a=i.getConfig(),s=a.padding??Vnt,l=i.getDiagramTitle(),u=i.getRoot(),{themeVariables:h}=Qt();if(!u)return;let f=l?30:0,d=aa(e),p=a.nodeWidth?a.nodeWidth*xy:960,m=a.nodeHeight?a.nodeHeight*xy:500,g=p,y=m+f;d.attr("viewBox",`0 0 ${g} ${y}`),fn(d,y,g,a.useMaxWidth);let x;try{let C=a.valueFormat||",";if(C==="$0,0")x=o(I=>"$"+lc(",")(I),"valueFormat");else if(C.startsWith("$")&&C.includes(",")){let I=/\.\d+/.exec(C),M=I?I[0]:"";x=o(P=>"$"+lc(","+M)(P),"valueFormat")}else if(C.startsWith("$")){let I=C.substring(1);x=o(M=>"$"+lc(I||"")(M),"valueFormat")}else x=lc(C)}catch(C){X.error("Error creating format function:",C),x=lc(",")}let v=eo().range(["transparent",h.cScale0,h.cScale1,h.cScale2,h.cScale3,h.cScale4,h.cScale5,h.cScale6,h.cScale7,h.cScale8,h.cScale9,h.cScale10,h.cScale11]),b=eo().range(["transparent",h.cScalePeer0,h.cScalePeer1,h.cScalePeer2,h.cScalePeer3,h.cScalePeer4,h.cScalePeer5,h.cScalePeer6,h.cScalePeer7,h.cScalePeer8,h.cScalePeer9,h.cScalePeer10,h.cScalePeer11]),T=eo().range([h.cScaleLabel0,h.cScaleLabel1,h.cScaleLabel2,h.cScaleLabel3,h.cScaleLabel4,h.cScaleLabel5,h.cScaleLabel6,h.cScaleLabel7,h.cScaleLabel8,h.cScaleLabel9,h.cScaleLabel10,h.cScaleLabel11]);l&&d.append("text").attr("x",g/2).attr("y",f/2).attr("class","treemapTitle").attr("text-anchor","middle").attr("dominant-baseline","middle").text(l);let S=d.append("g").attr("transform",`translate(0, ${f})`).attr("class","treemapContainer"),w=$0(u).sum(C=>C.value??0).sort((C,I)=>(I.value??0)-(C.value??0)),_=L5().size([p,m]).paddingTop(C=>C.children&&C.children.length>0?F4+xy:0).paddingInner(s).paddingLeft(C=>C.children&&C.children.length>0?xy:0).paddingRight(C=>C.children&&C.children.length>0?xy:0).paddingBottom(C=>C.children&&C.children.length>0?xy:0).round(!0)(w),A=_.descendants().filter(C=>C.children&&C.children.length>0),D=S.selectAll(".treemapSection").data(A).enter().append("g").attr("class","treemapSection").attr("transform",C=>`translate(${C.x0},${C.y0})`);D.append("rect").attr("width",C=>C.x1-C.x0).attr("height",F4).attr("class","treemapSectionHeader").attr("fill","none").attr("fill-opacity",.6).attr("stroke-width",.6).attr("style",C=>C.depth===0?"display: none;":""),D.append("clipPath").attr("id",(C,I)=>`clip-section-${e}-${I}`).append("rect").attr("width",C=>Math.max(0,C.x1-C.x0-12)).attr("height",F4),D.append("rect").attr("width",C=>C.x1-C.x0).attr("height",C=>C.y1-C.y0).attr("class",(C,I)=>`treemapSection section${I}`).attr("fill",C=>v(C.data.name)).attr("fill-opacity",.6).attr("stroke",C=>b(C.data.name)).attr("stroke-width",2).attr("stroke-opacity",.4).attr("style",C=>{if(C.depth===0)return"display: none;";let I=We({cssCompiledStyles:C.data.cssCompiledStyles});return I.nodeStyles+";"+I.borderStyles.join(";")}),D.append("text").attr("class","treemapSectionLabel").attr("x",6).attr("y",F4/2).attr("dominant-baseline","middle").text(C=>C.depth===0?"":C.data.name).attr("font-weight","bold").attr("style",C=>{if(C.depth===0)return"display: none;";let I="dominant-baseline: middle; font-size: 12px; fill:"+T(C.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",M=We({cssCompiledStyles:C.data.cssCompiledStyles});return I+M.labelStyles.replace("color:","fill:")}).each(function(C){if(C.depth===0)return;let I=ze(this),M=C.data.name;I.text(M);let P=C.x1-C.x0,B=6,F;a.showValues!==!1&&C.value?F=P-10-30-10-B:F=P-B-6;let $=Math.max(15,F),U=I.node();if(U.getComputedTextLength()>$){let ne="...",j=M;for(;j.length>0;){if(j=M.substring(0,j.length-1),j.length===0){I.text(ne),U.getComputedTextLength()>$&&I.text("");break}if(I.text(j+ne),U.getComputedTextLength()<=$)break}}}),a.showValues!==!1&&D.append("text").attr("class","treemapSectionValue").attr("x",C=>C.x1-C.x0-10).attr("y",F4/2).attr("text-anchor","end").attr("dominant-baseline","middle").text(C=>C.value?x(C.value):"").attr("font-style","italic").attr("style",C=>{if(C.depth===0)return"display: none;";let I="text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:"+T(C.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",M=We({cssCompiledStyles:C.data.cssCompiledStyles});return I+M.labelStyles.replace("color:","fill:")});let O=_.leaves(),R=S.selectAll(".treemapLeafGroup").data(O).enter().append("g").attr("class",(C,I)=>`treemapNode treemapLeafGroup leaf${I}${C.data.classSelector?` ${C.data.classSelector}`:""}x`).attr("transform",C=>`translate(${C.x0},${C.y0})`);R.append("rect").attr("width",C=>C.x1-C.x0).attr("height",C=>C.y1-C.y0).attr("class","treemapLeaf").attr("fill",C=>C.parent?v(C.parent.data.name):v(C.data.name)).attr("style",C=>We({cssCompiledStyles:C.data.cssCompiledStyles}).nodeStyles).attr("fill-opacity",.3).attr("stroke",C=>C.parent?v(C.parent.data.name):v(C.data.name)).attr("stroke-width",3),R.append("clipPath").attr("id",(C,I)=>`clip-${e}-${I}`).append("rect").attr("width",C=>Math.max(0,C.x1-C.x0-4)).attr("height",C=>Math.max(0,C.y1-C.y0-4)),R.append("text").attr("class","treemapLabel").attr("x",C=>(C.x1-C.x0)/2).attr("y",C=>(C.y1-C.y0)/2).attr("style",C=>{let I="text-anchor: middle; dominant-baseline: middle; font-size: 38px;fill:"+T(C.data.name)+";",M=We({cssCompiledStyles:C.data.cssCompiledStyles});return I+M.labelStyles.replace("color:","fill:")}).attr("clip-path",(C,I)=>`url(#clip-${e}-${I})`).text(C=>C.data.name).each(function(C){let I=ze(this),M=C.x1-C.x0,P=C.y1-C.y0,B=I.node(),F=4,G=M-2*F,$=P-2*F;if(G<10||$<10){I.style("display","none");return}let U=parseInt(I.style("font-size"),10),K=8,ne=28,j=.6,le=6,Z=2;for(;B.getComputedTextLength()>G&&U>K;)U--,I.style("font-size",`${U}px`);let ce=Math.max(le,Math.min(ne,Math.round(U*j))),Q=U+Z+ce;for(;Q>$&&U>K&&(U--,ce=Math.max(le,Math.min(ne,Math.round(U*j))),!(ce<le&&U===K));)I.style("font-size",`${U}px`),Q=U+Z+ce,ce<=le&&Q>$;I.style("font-size",`${U}px`),(B.getComputedTextLength()>G||U<K||$<U)&&I.style("display","none")}),a.showValues!==!1&&R.append("text").attr("class","treemapValue").attr("x",I=>(I.x1-I.x0)/2).attr("y",function(I){return(I.y1-I.y0)/2}).attr("style",I=>{let M="text-anchor: middle; dominant-baseline: hanging; font-size: 28px;fill:"+T(I.data.name)+";",P=We({cssCompiledStyles:I.data.cssCompiledStyles});return M+P.labelStyles.replace("color:","fill:")}).attr("clip-path",(I,M)=>`url(#clip-${e}-${M})`).text(I=>I.value?x(I.value):"").each(function(I){let M=ze(this),P=this.parentNode;if(!P){M.style("display","none");return}let B=ze(P).select(".treemapLabel");if(B.empty()||B.style("display")==="none"){M.style("display","none");return}let F=parseFloat(B.style("font-size")),G=28,$=.6,U=6,K=2,ne=Math.max(U,Math.min(G,Math.round(F*$)));M.style("font-size",`${ne}px`);let le=(I.y1-I.y0)/2+F/2+K;M.attr("y",le);let Z=I.x1-I.x0,ee=I.y1-I.y0-4,te=Z-2*4;M.node().getComputedTextLength()>te||le+ne>ee||ne<U?M.style("display","none"):M.style("display",null)});let L=a.diagramPadding??8;Hs(d,L,"flowchart",a?.useMaxWidth||!1)},"draw"),Hnt=o(function(t,e){return e.db.getClasses()},"getClasses"),bxe={draw:Unt,getClasses:Hnt}});var Wnt,qnt,wxe,kxe=N(()=>{"use strict";tr();Wnt={sectionStrokeColor:"black",sectionStrokeWidth:"1",sectionFillColor:"#efefef",leafStrokeColor:"black",leafStrokeWidth:"1",leafFillColor:"#efefef",labelColor:"black",labelFontSize:"12px",valueFontSize:"10px",valueColor:"black",titleColor:"black",titleFontSize:"14px"},qnt=o(({treemap:t}={})=>{let e=Vn(Wnt,t);return`
|
||
.treemapNode.section {
|
||
stroke: ${e.sectionStrokeColor};
|
||
stroke-width: ${e.sectionStrokeWidth};
|
||
fill: ${e.sectionFillColor};
|
||
}
|
||
.treemapNode.leaf {
|
||
stroke: ${e.leafStrokeColor};
|
||
stroke-width: ${e.leafStrokeWidth};
|
||
fill: ${e.leafFillColor};
|
||
}
|
||
.treemapLabel {
|
||
fill: ${e.labelColor};
|
||
font-size: ${e.labelFontSize};
|
||
}
|
||
.treemapValue {
|
||
fill: ${e.valueColor};
|
||
font-size: ${e.valueFontSize};
|
||
}
|
||
.treemapTitle {
|
||
fill: ${e.titleColor};
|
||
font-size: ${e.titleFontSize};
|
||
}
|
||
`},"getStyles"),wxe=qnt});var Exe={};ur(Exe,{diagram:()=>Ynt});var Ynt,Sxe=N(()=>{"use strict";f$();xxe();Txe();kxe();Ynt={parser:d$,get db(){return new vy},renderer:bxe,styles:wxe}});var Mit={};ur(Mit,{default:()=>Nit});rc();wA();pd();var fK="c4",cAe=o(t=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(t),"detector"),uAe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(hK(),uK));return{id:fK,diagram:t}},"loader"),hAe={id:fK,detector:cAe,loader:uAe},dK=hAe;var Uce="flowchart",tWe=o((t,e)=>e?.flowchart?.defaultRenderer==="dagre-wrapper"||e?.flowchart?.defaultRenderer==="elk"?!1:/^\s*graph/.test(t),"detector"),rWe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(wE(),TE));return{id:Uce,diagram:t}},"loader"),nWe={id:Uce,detector:tWe,loader:rWe},Hce=nWe;var Wce="flowchart-v2",iWe=o((t,e)=>e?.flowchart?.defaultRenderer==="dagre-d3"?!1:(e?.flowchart?.defaultRenderer==="elk"&&(e.layout="elk"),/^\s*graph/.test(t)&&e?.flowchart?.defaultRenderer==="dagre-wrapper"?!0:/^\s*flowchart/.test(t)),"detector"),aWe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(wE(),TE));return{id:Wce,diagram:t}},"loader"),sWe={id:Wce,detector:iWe,loader:aWe},qce=sWe;var tue="er",hWe=o(t=>/^\s*erDiagram/.test(t),"detector"),fWe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(eue(),Jce));return{id:tue,diagram:t}},"loader"),dWe={id:tue,detector:hWe,loader:fWe},rue=dWe;var c0e="gitGraph",Uje=o(t=>/^\s*gitGraph/.test(t),"detector"),Hje=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(l0e(),o0e));return{id:c0e,diagram:t}},"loader"),Wje={id:c0e,detector:Uje,loader:Hje},u0e=Wje;var G0e="gantt",NKe=o(t=>/^\s*gantt/.test(t),"detector"),MKe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>($0e(),F0e));return{id:G0e,diagram:t}},"loader"),IKe={id:G0e,detector:NKe,loader:MKe},z0e=IKe;var K0e="info",GKe=o(t=>/^\s*info/.test(t),"detector"),zKe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(j0e(),X0e));return{id:K0e,diagram:t}},"loader"),Q0e={id:K0e,detector:GKe,loader:zKe};var ome="pie",eQe=o(t=>/^\s*pie/.test(t),"detector"),tQe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(sme(),ame));return{id:ome,diagram:t}},"loader"),lme={id:ome,detector:eQe,loader:tQe};var Tme="quadrantChart",xQe=o(t=>/^\s*quadrantChart/.test(t),"detector"),bQe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(bme(),xme));return{id:Tme,diagram:t}},"loader"),TQe={id:Tme,detector:xQe,loader:bQe},wme=TQe;var jme="xychart",FQe=o(t=>/^\s*xychart(-beta)?/.test(t),"detector"),$Qe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Xme(),Yme));return{id:jme,diagram:t}},"loader"),GQe={id:jme,detector:FQe,loader:$Qe},Kme=GQe;var age="requirement",HQe=o(t=>/^\s*requirement(Diagram)?/.test(t),"detector"),WQe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(ige(),nge));return{id:age,diagram:t}},"loader"),qQe={id:age,detector:HQe,loader:WQe},sge=qQe;var wge="sequence",MZe=o(t=>/^\s*sequenceDiagram/.test(t),"detector"),IZe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Tge(),bge));return{id:wge,diagram:t}},"loader"),OZe={id:wge,detector:MZe,loader:IZe},kge=OZe;var Dge="class",zZe=o((t,e)=>e?.class?.defaultRenderer==="dagre-wrapper"?!1:/^\s*classDiagram/.test(t),"detector"),VZe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(_ge(),Age));return{id:Dge,diagram:t}},"loader"),UZe={id:Dge,detector:zZe,loader:VZe},Lge=UZe;var Mge="classDiagram",WZe=o((t,e)=>/^\s*classDiagram/.test(t)&&e?.class?.defaultRenderer==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(t),"detector"),qZe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Nge(),Rge));return{id:Mge,diagram:t}},"loader"),YZe={id:Mge,detector:WZe,loader:qZe},Ige=YZe;var h1e="state",vJe=o((t,e)=>e?.state?.defaultRenderer==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(t),"detector"),xJe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(u1e(),c1e));return{id:h1e,diagram:t}},"loader"),bJe={id:h1e,detector:vJe,loader:xJe},f1e=bJe;var m1e="stateDiagram",wJe=o((t,e)=>!!(/^\s*stateDiagram-v2/.test(t)||/^\s*stateDiagram/.test(t)&&e?.state?.defaultRenderer==="dagre-wrapper"),"detector"),kJe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(p1e(),d1e));return{id:m1e,diagram:t}},"loader"),EJe={id:m1e,detector:wJe,loader:kJe},g1e=EJe;var N1e="journey",WJe=o(t=>/^\s*journey/.test(t),"detector"),qJe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(R1e(),L1e));return{id:N1e,diagram:t}},"loader"),YJe={id:N1e,detector:WJe,loader:qJe},M1e=YJe;pt();Jc();Ci();var XJe=o((t,e,r)=>{X.debug(`rendering svg for syntax error
|
||
`);let n=aa(e),i=n.append("g");n.attr("viewBox","0 0 2412 512"),fn(n,100,512,!0),i.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),i.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),i.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),i.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),i.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),i.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),i.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),i.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${r}`)},"draw"),fF={draw:XJe},I1e=fF;var jJe={db:{},renderer:fF,parser:{parse:o(()=>{},"parse")}},O1e=jJe;var P1e="flowchart-elk",KJe=o((t,e={})=>/^\s*flowchart-elk/.test(t)||/^\s*(flowchart|graph)/.test(t)&&e?.flowchart?.defaultRenderer==="elk"?(e.layout="elk",!0):!1,"detector"),QJe=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(wE(),TE));return{id:P1e,diagram:t}},"loader"),ZJe={id:P1e,detector:KJe,loader:QJe},B1e=ZJe;var cye="timeline",vet=o(t=>/^\s*timeline/.test(t),"detector"),xet=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(lye(),oye));return{id:cye,diagram:t}},"loader"),bet={id:cye,detector:vet,loader:xet},uye=bet;var Cye="mindmap",Det=o(t=>/^\s*mindmap/.test(t),"detector"),Let=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Sye(),Eye));return{id:Cye,diagram:t}},"loader"),Ret={id:Cye,detector:Det,loader:Let},Aye=Ret;var $ye="kanban",Yet=o(t=>/^\s*kanban/.test(t),"detector"),Xet=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Fye(),Bye));return{id:$ye,diagram:t}},"loader"),jet={id:$ye,detector:Yet,loader:Xet},Gye=jet;var Tve="sankey",vtt=o(t=>/^\s*sankey(-beta)?/.test(t),"detector"),xtt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(bve(),xve));return{id:Tve,diagram:t}},"loader"),btt={id:Tve,detector:vtt,loader:xtt},wve=btt;var Lve="packet",Dtt=o(t=>/^\s*packet(-beta)?/.test(t),"detector"),Ltt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Dve(),_ve));return{id:Lve,diagram:t}},"loader"),Rve={id:Lve,detector:Dtt,loader:Ltt};var Vve="radar",Ztt=o(t=>/^\s*radar-beta/.test(t),"detector"),Jtt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(zve(),Gve));return{id:Vve,diagram:t}},"loader"),Uve={id:Vve,detector:Ztt,loader:Jtt};var q2e="block",bnt=o(t=>/^\s*block(-beta)?/.test(t),"detector"),Tnt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(W2e(),H2e));return{id:q2e,diagram:t}},"loader"),wnt={id:q2e,detector:bnt,loader:Tnt},Y2e=wnt;var mxe="architecture",Bnt=o(t=>/^\s*architecture/.test(t),"detector"),Fnt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(pxe(),dxe));return{id:mxe,diagram:t}},"loader"),$nt={id:mxe,detector:Bnt,loader:Fnt},gxe=$nt;pd();Xt();var Cxe="treemap",Xnt=o(t=>/^\s*treemap/.test(t),"detector"),jnt=o(async()=>{let{diagram:t}=await Promise.resolve().then(()=>(Sxe(),Exe));return{id:Cxe,diagram:t}},"loader"),Axe={id:Cxe,detector:Xnt,loader:jnt};var _xe=!1,by=o(()=>{_xe||(_xe=!0,md("error",O1e,t=>t.toLowerCase().trim()==="error"),md("---",{db:{clear:o(()=>{},"clear")},styles:{},renderer:{draw:o(()=>{},"draw")},parser:{parse:o(()=>{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")},"parse")},init:o(()=>null,"init")},t=>t.toLowerCase().trimStart().startsWith("---")),Zy(B1e,Aye,gxe),Zy(dK,Gye,Ige,Lge,rue,z0e,Q0e,lme,sge,kge,qce,Hce,uye,u0e,g1e,f1e,M1e,wme,wve,Rve,Kme,Y2e,Uve,Axe))},"addDiagrams");pt();pd();Xt();var Dxe=o(async()=>{X.debug("Loading registered diagrams");let e=(await Promise.allSettled(Object.entries(pu).map(async([r,{detector:n,loader:i}])=>{if(i)try{nv(r)}catch{try{let{diagram:a,id:s}=await i();md(s,a,n)}catch(a){throw X.error(`Failed to load external diagram with key ${r}. Removing from detectors.`),delete pu[r],a}}}))).filter(r=>r.status==="rejected");if(e.length>0){X.error(`Failed to load ${e.length} external diagrams`);for(let r of e)X.error(r);throw new Error(`Failed to load ${e.length} external diagrams`)}},"loadRegisteredDiagrams");pt();pr();var MC="comm",IC="rule",OC="decl";var Lxe="@import";var Rxe="@namespace",Nxe="@keyframes";var Mxe="@layer";var p$=Math.abs,$4=String.fromCharCode;function PC(t){return t.trim()}o(PC,"trim");function G4(t,e,r){return t.replace(e,r)}o(G4,"replace");function Ixe(t,e,r){return t.indexOf(e,r)}o(Ixe,"indexof");function Qf(t,e){return t.charCodeAt(e)|0}o(Qf,"charat");function Zf(t,e,r){return t.slice(e,r)}o(Zf,"substr");function To(t){return t.length}o(To,"strlen");function Oxe(t){return t.length}o(Oxe,"sizeof");function Ty(t,e){return e.push(t),t}o(Ty,"append");var BC=1,wy=1,Pxe=0,ll=0,Ni=0,Ey="";function FC(t,e,r,n,i,a,s,l){return{value:t,root:e,parent:r,type:n,props:i,children:a,line:BC,column:wy,length:s,return:"",siblings:l}}o(FC,"node");function Bxe(){return Ni}o(Bxe,"char");function Fxe(){return Ni=ll>0?Qf(Ey,--ll):0,wy--,Ni===10&&(wy=1,BC--),Ni}o(Fxe,"prev");function cl(){return Ni=ll<Pxe?Qf(Ey,ll++):0,wy++,Ni===10&&(wy=1,BC++),Ni}o(cl,"next");function oh(){return Qf(Ey,ll)}o(oh,"peek");function z4(){return ll}o(z4,"caret");function $C(t,e){return Zf(Ey,t,e)}o($C,"slice");function ky(t){switch(t){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}o(ky,"token");function $xe(t){return BC=wy=1,Pxe=To(Ey=t),ll=0,[]}o($xe,"alloc");function Gxe(t){return Ey="",t}o(Gxe,"dealloc");function GC(t){return PC($C(ll-1,m$(t===91?t+2:t===40?t+1:t)))}o(GC,"delimit");function zxe(t){for(;(Ni=oh())&&Ni<33;)cl();return ky(t)>2||ky(Ni)>3?"":" "}o(zxe,"whitespace");function Vxe(t,e){for(;--e&&cl()&&!(Ni<48||Ni>102||Ni>57&&Ni<65||Ni>70&&Ni<97););return $C(t,z4()+(e<6&&oh()==32&&cl()==32))}o(Vxe,"escaping");function m$(t){for(;cl();)switch(Ni){case t:return ll;case 34:case 39:t!==34&&t!==39&&m$(Ni);break;case 40:t===41&&m$(t);break;case 92:cl();break}return ll}o(m$,"delimiter");function Uxe(t,e){for(;cl()&&t+Ni!==57;)if(t+Ni===84&&oh()===47)break;return"/*"+$C(e,ll-1)+"*"+$4(t===47?t:cl())}o(Uxe,"commenter");function Hxe(t){for(;!ky(oh());)cl();return $C(t,ll)}o(Hxe,"identifier");function Yxe(t){return Gxe(zC("",null,null,null,[""],t=$xe(t),0,[0],t))}o(Yxe,"compile");function zC(t,e,r,n,i,a,s,l,u){for(var h=0,f=0,d=s,p=0,m=0,g=0,y=1,x=1,v=1,b=0,T="",S=i,w=a,E=n,_=T;x;)switch(g=b,b=cl()){case 40:if(g!=108&&Qf(_,d-1)==58){Ixe(_+=G4(GC(b),"&","&\f"),"&\f",p$(h?l[h-1]:0))!=-1&&(v=-1);break}case 34:case 39:case 91:_+=GC(b);break;case 9:case 10:case 13:case 32:_+=zxe(g);break;case 92:_+=Vxe(z4()-1,7);continue;case 47:switch(oh()){case 42:case 47:Ty(Knt(Uxe(cl(),z4()),e,r,u),u),(ky(g||1)==5||ky(oh()||1)==5)&&To(_)&&Zf(_,-1,void 0)!==" "&&(_+=" ");break;default:_+="/"}break;case 123*y:l[h++]=To(_)*v;case 125*y:case 59:case 0:switch(b){case 0:case 125:x=0;case 59+f:v==-1&&(_=G4(_,/\f/g,"")),m>0&&(To(_)-d||y===0&&g===47)&&Ty(m>32?qxe(_+";",n,r,d-1,u):qxe(G4(_," ","")+";",n,r,d-2,u),u);break;case 59:_+=";";default:if(Ty(E=Wxe(_,e,r,h,f,i,l,T,S=[],w=[],d,a),a),b===123)if(f===0)zC(_,e,E,E,S,a,d,l,w);else{switch(p){case 99:if(Qf(_,3)===110)break;case 108:if(Qf(_,2)===97)break;default:f=0;case 100:case 109:case 115:}f?zC(t,E,E,n&&Ty(Wxe(t,E,E,0,0,i,l,T,i,S=[],d,w),w),i,w,d,l,n?S:w):zC(_,E,E,E,[""],w,0,l,w)}}h=f=m=0,y=v=1,T=_="",d=s;break;case 58:d=1+To(_),m=g;default:if(y<1){if(b==123)--y;else if(b==125&&y++==0&&Fxe()==125)continue}switch(_+=$4(b),b*y){case 38:v=f>0?1:(_+="\f",-1);break;case 44:l[h++]=(To(_)-1)*v,v=1;break;case 64:oh()===45&&(_+=GC(cl())),p=oh(),f=d=To(T=_+=Hxe(z4())),b++;break;case 45:g===45&&To(_)==2&&(y=0)}}return a}o(zC,"parse");function Wxe(t,e,r,n,i,a,s,l,u,h,f,d){for(var p=i-1,m=i===0?a:[""],g=Oxe(m),y=0,x=0,v=0;y<n;++y)for(var b=0,T=Zf(t,p+1,p=p$(x=s[y])),S=t;b<g;++b)(S=PC(x>0?m[b]+" "+T:G4(T,/&\f/g,m[b])))&&(u[v++]=S);return FC(t,e,r,i===0?IC:l,u,h,f,d)}o(Wxe,"ruleset");function Knt(t,e,r,n){return FC(t,e,r,MC,$4(Bxe()),Zf(t,2,-2),0,n)}o(Knt,"comment");function qxe(t,e,r,n,i){return FC(t,e,r,OC,Zf(t,0,n),Zf(t,n+1,-1),n,i)}o(qxe,"declaration");function VC(t,e){for(var r="",n=0;n<t.length;n++)r+=e(t[n],n,t,e)||"";return r}o(VC,"serialize");function Xxe(t,e,r,n){switch(t.type){case Mxe:if(t.children.length)break;case Lxe:case Rxe:case OC:return t.return=t.return||t.value;case MC:return"";case Nxe:return t.return=t.value+"{"+VC(t.children,n)+"}";case IC:if(!To(t.value=t.props.join(",")))return""}return To(r=VC(t.children,n))?t.return=t.value+"{"+r+"}":""}o(Xxe,"stringify");D7();ck();uB();var Qnt="graphics-document document";function jxe(t,e){t.attr("role",Qnt),e!==""&&t.attr("aria-roledescription",e)}o(jxe,"setA11yDiagramInfo");function Kxe(t,e,r,n){if(t.insert!==void 0){if(r){let i=`chart-desc-${n}`;t.attr("aria-describedby",i),t.insert("desc",":first-child").attr("id",i).text(r)}if(e){let i=`chart-title-${n}`;t.attr("aria-labelledby",i),t.insert("title",":first-child").attr("id",i).text(e)}}}o(Kxe,"addSVGa11yTitleDescription");p0();Wn();Wn();Xt();pd();kA();tr();var Sy=class t{constructor(e,r,n,i,a){this.type=e;this.text=r;this.db=n;this.parser=i;this.renderer=a}static{o(this,"Diagram")}static async fromText(e,r={}){let n=Qt(),i=E0(e,n);e=tK(e)+`
|
||
`;try{nv(i)}catch{let h=OV(i);if(!h)throw new k0(`Diagram ${i} not found.`);let{id:f,diagram:d}=await h();md(f,d)}let{db:a,parser:s,renderer:l,init:u}=nv(i);return s.parser&&(s.parser.yy=a),a.clear?.(),u?.(n),r.title&&a.setDiagramTitle?.(r.title),await s.parse(e),new t(i,e,a,s,l)}async render(e,r){await this.renderer.draw(this.text,e,r,this)}getParser(){return this.parser}getType(){return this.type}};dr();var Qxe=[];var Zxe=o(()=>{Qxe.forEach(t=>{t()}),Qxe=[]},"attachFunctions");pt();var Jxe=o(t=>t.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart(),"cleanupComments");B3();b2();function ebe(t){let e=t.match(P3);if(!e)return{text:t,metadata:{}};let r=Xh(e[1],{schema:Yh})??{};r=typeof r=="object"&&!Array.isArray(r)?r:{};let n={};return r.displayMode&&(n.displayMode=r.displayMode.toString()),r.title&&(n.title=r.title.toString()),r.config&&(n.config=r.config),{text:t.slice(e[0].length),metadata:n}}o(ebe,"extractFrontMatter");tr();var Znt=o(t=>t.replace(/\r\n?/g,`
|
||
`).replace(/<(\w+)([^>]*)>/g,(e,r,n)=>"<"+r+n.replace(/="([^"]*)"/g,"='$1'")+">"),"cleanupText"),Jnt=o(t=>{let{text:e,metadata:r}=ebe(t),{displayMode:n,title:i,config:a={}}=r;return n&&(a.gantt||(a.gantt={}),a.gantt.displayMode=n),{title:i,config:a,text:e}},"processFrontmatter"),eit=o(t=>{let e=Ht.detectInit(t)??{},r=Ht.detectDirective(t,"wrap");return Array.isArray(r)?e.wrap=r.some(({type:n})=>n==="wrap"):r?.type==="wrap"&&(e.wrap=!0),{text:Jj(t),directive:e}},"processDirectives");function g$(t){let e=Znt(t),r=Jnt(e),n=eit(r.text),i=Vn(r.config,n.directive);return t=Jxe(n.text),{code:t,title:r.title,config:i}}o(g$,"preprocessDiagram");CA();J4();tr();function tbe(t){let e=new TextEncoder().encode(t),r=Array.from(e,n=>String.fromCodePoint(n)).join("");return btoa(r)}o(tbe,"toBase64");var tit=5e4,rit="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",nit="sandbox",iit="loose",ait="http://www.w3.org/2000/svg",sit="http://www.w3.org/1999/xlink",oit="http://www.w3.org/1999/xhtml",lit="100%",cit="100%",uit="border:0;margin:0;",hit="margin:0",fit="allow-top-navigation-by-user-activation allow-popups",dit='The "iframe" tag is not supported by your browser.',pit=["foreignobject"],mit=["dominant-baseline"];function abe(t){let e=g$(t);return Oy(),RG(e.config??{}),e}o(abe,"processAndSetConfigs");async function git(t,e){by();try{let{code:r,config:n}=abe(t);return{diagramType:(await sbe(r)).type,config:n}}catch(r){if(e?.suppressErrors)return!1;throw r}}o(git,"parse");var rbe=o((t,e,r=[])=>`
|
||
.${t} ${e} { ${r.join(" !important; ")} !important; }`,"cssImportantStyles"),yit=o((t,e=new Map)=>{let r="";if(t.themeCSS!==void 0&&(r+=`
|
||
${t.themeCSS}`),t.fontFamily!==void 0&&(r+=`
|
||
:root { --mermaid-font-family: ${t.fontFamily}}`),t.altFontFamily!==void 0&&(r+=`
|
||
:root { --mermaid-alt-font-family: ${t.altFontFamily}}`),e instanceof Map){let s=t.htmlLabels??t.flowchart?.htmlLabels?["> *","span"]:["rect","polygon","ellipse","circle","path"];e.forEach(l=>{fr(l.styles)||s.forEach(u=>{r+=rbe(l.id,u,l.styles)}),fr(l.textStyles)||(r+=rbe(l.id,"tspan",(l?.textStyles||[]).map(u=>u.replace("color","fill"))))})}return r},"createCssStyles"),vit=o((t,e,r,n)=>{let i=yit(t,r),a=FV(e,i,t.themeVariables);return VC(Yxe(`${n}{${a}}`),Xxe)},"createUserStyles"),xit=o((t="",e,r)=>{let n=t;return!r&&!e&&(n=n.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),n=ea(n),n=n.replace(/<br>/g,"<br/>"),n},"cleanUpSvgCode"),bit=o((t="",e)=>{let r=e?.viewBox?.baseVal?.height?e.viewBox.baseVal.height+"px":cit,n=tbe(`<body style="${hit}">${t}</body>`);return`<iframe style="width:${lit};height:${r};${uit}" src="data:text/html;charset=UTF-8;base64,${n}" sandbox="${fit}">
|
||
${dit}
|
||
</iframe>`},"putIntoIFrame"),nbe=o((t,e,r,n,i)=>{let a=t.append("div");a.attr("id",r),n&&a.attr("style",n);let s=a.append("svg").attr("id",e).attr("width","100%").attr("xmlns",ait);return i&&s.attr("xmlns:xlink",i),s.append("g"),t},"appendDivSvgG");function ibe(t,e){return t.append("iframe").attr("id",e).attr("style","width: 100%; height: 100%;").attr("sandbox","")}o(ibe,"sandboxedIframe");var Tit=o((t,e,r,n)=>{t.getElementById(e)?.remove(),t.getElementById(r)?.remove(),t.getElementById(n)?.remove()},"removeExistingElements"),wit=o(async function(t,e,r){by();let n=abe(e);e=n.code;let i=Qt();X.debug(i),e.length>(i?.maxTextSize??tit)&&(e=rit);let a="#"+t,s="i"+t,l="#"+s,u="d"+t,h="#"+u,f=o(()=>{let L=ze(p?l:h).node();L&&"remove"in L&&L.remove()},"removeTempElements"),d=ze("body"),p=i.securityLevel===nit,m=i.securityLevel===iit,g=i.fontFamily;if(r!==void 0){if(r&&(r.innerHTML=""),p){let k=ibe(ze(r),s);d=ze(k.nodes()[0].contentDocument.body),d.node().style.margin=0}else d=ze(r);nbe(d,t,u,`font-family: ${g}`,sit)}else{if(Tit(document,t,u,s),p){let k=ibe(ze("body"),s);d=ze(k.nodes()[0].contentDocument.body),d.node().style.margin=0}else d=ze("body");nbe(d,t,u)}let y,x;try{y=await Sy.fromText(e,{title:n.title})}catch(k){if(i.suppressErrorRendering)throw f(),k;y=await Sy.fromText("error"),x=k}let v=d.select(h).node(),b=y.type,T=v.firstChild,S=T.firstChild,w=y.renderer.getClasses?.(e,y),E=vit(i,b,w,a),_=document.createElement("style");_.innerHTML=E,T.insertBefore(_,S);try{await y.renderer.draw(e,t,g4.version,y)}catch(k){throw i.suppressErrorRendering?f():I1e.draw(e,t,g4.version),k}let A=d.select(`${h} svg`),D=y.db.getAccTitle?.(),O=y.db.getAccDescription?.();Eit(b,A,D,O),d.select(`[id="${t}"]`).selectAll("foreignobject > *").attr("xmlns",oit);let R=d.select(h).node().innerHTML;if(X.debug("config.arrowMarkerAbsolute",i.arrowMarkerAbsolute),R=xit(R,p,mr(i.arrowMarkerAbsolute)),p){let k=d.select(h+" svg").node();R=bit(R,k)}else m||(R=ph.sanitize(R,{ADD_TAGS:pit,ADD_ATTR:mit,HTML_INTEGRATION_POINTS:{foreignobject:!0}}));if(Zxe(),x)throw x;return f(),{diagramType:b,svg:R,bindFunctions:y.db.bindFunctions}},"render");function kit(t={}){let e=Dn({},t);e?.fontFamily&&!e.themeVariables?.fontFamily&&(e.themeVariables||(e.themeVariables={}),e.themeVariables.fontFamily=e.fontFamily),_G(e),e?.theme&&e.theme in Eo?e.themeVariables=Eo[e.theme].getThemeVariables(e.themeVariables):e&&(e.themeVariables=Eo.default.getThemeVariables(e.themeVariables));let r=typeof e=="object"?b7(e):T7();Ay(r.logLevel),by()}o(kit,"initialize");var sbe=o((t,e={})=>{let{code:r}=g$(t);return Sy.fromText(r,e)},"getDiagramFromText");function Eit(t,e,r,n){jxe(e,t),Kxe(e,r,n,e.attr("id"))}o(Eit,"addA11yInfo");var Jf=Object.freeze({render:wit,parse:git,getDiagramFromText:sbe,initialize:kit,getConfig:Qt,setConfig:r3,getSiteConfig:T7,updateSiteConfig:DG,reset:o(()=>{Oy()},"reset"),globalReset:o(()=>{Oy(dh)},"globalReset"),defaultConfig:dh});Ay(Qt().logLevel);Oy(Qt());Af();tr();var Sit=o((t,e,r)=>{X.warn(t),$L(t)?(r&&r(t.str,t.hash),e.push({...t,message:t.str,error:t})):(r&&r(t),t instanceof Error&&e.push({str:t.message,message:t.message,hash:t.name,error:t}))},"handleError"),obe=o(async function(t={querySelector:".mermaid"}){try{await Cit(t)}catch(e){if($L(e)&&X.error(e.str),lh.parseError&&lh.parseError(e),!t.suppressErrors)throw X.error("Use the suppressErrors option to suppress these errors"),e}},"run"),Cit=o(async function({postRenderCallback:t,querySelector:e,nodes:r}={querySelector:".mermaid"}){let n=Jf.getConfig();X.debug(`${t?"":"No "}Callback function found`);let i;if(r)i=r;else if(e)i=document.querySelectorAll(e);else throw new Error("Nodes and querySelector are both undefined");X.debug(`Found ${i.length} diagrams`),n?.startOnLoad!==void 0&&(X.debug("Start On Load: "+n?.startOnLoad),Jf.updateSiteConfig({startOnLoad:n?.startOnLoad}));let a=new Ht.InitIDGenerator(n.deterministicIds,n.deterministicIDSeed),s,l=[];for(let u of Array.from(i)){X.info("Rendering diagram: "+u.id);if(u.getAttribute("data-processed"))continue;u.setAttribute("data-processed","true");let h=`mermaid-${a.next()}`;s=u.innerHTML,s=O3(Ht.entityDecode(s)).trim().replace(/<br\s*\/?>/gi,"<br/>");let f=Ht.detectInit(s);f&&X.debug("Detected early reinit: ",f);try{let{svg:d,bindFunctions:p}=await hbe(h,s,u);u.innerHTML=d,t&&await t(h),p&&p(u)}catch(d){Sit(d,l,lh.parseError)}}if(l.length>0)throw l[0]},"runThrowsErrors"),lbe=o(function(t){Jf.initialize(t)},"initialize"),Ait=o(async function(t,e,r){X.warn("mermaid.init is deprecated. Please use run instead."),t&&lbe(t);let n={postRenderCallback:r,querySelector:".mermaid"};typeof e=="string"?n.querySelector=e:e&&(e instanceof HTMLElement?n.nodes=[e]:n.nodes=e),await obe(n)},"init"),_it=o(async(t,{lazyLoad:e=!0}={})=>{by(),Zy(...t),e===!1&&await Dxe()},"registerExternalDiagrams"),cbe=o(function(){if(lh.startOnLoad){let{startOnLoad:t}=Jf.getConfig();t&&lh.run().catch(e=>X.error("Mermaid failed to initialize",e))}},"contentLoaded");if(typeof document<"u"){window.addEventListener("load",cbe,!1)}var Dit=o(function(t){lh.parseError=t},"setParseErrorHandler"),UC=[],y$=!1,ube=o(async()=>{if(!y$){for(y$=!0;UC.length>0;){let t=UC.shift();if(t)try{await t()}catch(e){X.error("Error executing queue",e)}}y$=!1}},"executeQueue"),Lit=o(async(t,e)=>new Promise((r,n)=>{let i=o(()=>new Promise((a,s)=>{Jf.parse(t,e).then(l=>{a(l),r(l)},l=>{X.error("Error parsing",l),lh.parseError?.(l),s(l),n(l)})}),"performCall");UC.push(i),ube().catch(n)}),"parse"),hbe=o((t,e,r)=>new Promise((n,i)=>{let a=o(()=>new Promise((s,l)=>{Jf.render(t,e,r).then(u=>{s(u),n(u)},u=>{X.error("Error parsing",u),lh.parseError?.(u),l(u),i(u)})}),"performCall");UC.push(a),ube().catch(i)}),"render"),Rit=o(()=>Object.keys(pu).map(t=>({id:t})),"getRegisteredDiagramsMetadata"),lh={startOnLoad:!0,mermaidAPI:Jf,parse:Lit,render:hbe,init:Ait,run:obe,registerExternalDiagrams:_it,registerLayoutLoaders:gM,initialize:lbe,parseError:void 0,contentLoaded:cbe,setParseErrorHandler:Dit,detectType:E0,registerIconPacks:I3,getRegisteredDiagramsMetadata:Rit},Nit=lh;return Tbe(Mit);})();
|
||
/*! Check if previously processed */
|
||
/*!
|
||
* Wait for document loaded before starting the execution
|
||
*/
|
||
/*! Bundled license information:
|
||
|
||
dompurify/dist/purify.es.mjs:
|
||
(*! @license DOMPurify 3.2.5 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.2.5/LICENSE *)
|
||
|
||
js-yaml/dist/js-yaml.mjs:
|
||
(*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT *)
|
||
|
||
lodash-es/lodash.js:
|
||
(**
|
||
* @license
|
||
* Lodash (Custom Build) <https://lodash.com/>
|
||
* Build: `lodash modularize exports="es" -o ./`
|
||
* Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
|
||
* Released under MIT license <https://lodash.com/license>
|
||
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
|
||
* Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
|
||
*)
|
||
|
||
cytoscape/dist/cytoscape.esm.mjs:
|
||
(*!
|
||
Embeddable Minimum Strictly-Compliant Promises/A+ 1.1.1 Thenable
|
||
Copyright (c) 2013-2014 Ralf S. Engelschall (http://engelschall.com)
|
||
Licensed under The MIT License (http://opensource.org/licenses/MIT)
|
||
*)
|
||
(*!
|
||
Event object based on jQuery events, MIT license
|
||
|
||
https://jquery.org/license/
|
||
https://tldrlegal.com/license/mit-license
|
||
https://github.com/jquery/jquery/blob/master/src/event.js
|
||
*)
|
||
(*! Bezier curve function generator. Copyright Gaetan Renaudeau. MIT License: http://en.wikipedia.org/wiki/MIT_License *)
|
||
(*! Runge-Kutta spring physics function generator. Adapted from Framer.js, copyright Koen Bok. MIT License: http://en.wikipedia.org/wiki/MIT_License *)
|
||
*/
|
||
globalThis["mermaid"] = globalThis.__esbuild_esm_mermaid_nm["mermaid"].default;
|