1
0
mirror of https://github.com/laurent22/joplin.git synced 2024-12-21 09:38:01 +02:00
joplin/packages/renderer/assets/mermaid/mermaid.min.js

1643 lines
2.8 MiB
JavaScript
Raw Normal View History

(function(wA,d0){typeof exports=="object"&&typeof module<"u"?module.exports=d0():typeof define=="function"&&define.amd?define(d0):(wA=typeof globalThis<"u"?globalThis:wA||self,wA.mermaid=d0())})(this,function(){"use strict";function wA(i){for(var a=[],f=1;f<arguments.length;f++)a[f-1]=arguments[f];var p=Array.from(typeof i=="string"?[i]:i);p[p.length-1]=p[p.length-1].replace(/\r?\n([\t ]*)$/,"");var v=p.reduce(function(E,C){var A=C.match(/\n([\t ]+|(?!\s).)/g);return A?E.concat(A.map(function(P){var F,j;return(j=(F=P.match(/[\t ]/g))===null||F===void 0?void 0:F.length)!==null&&j!==void 0?j:0})):E},[]);if(v.length){var m=new RegExp(`
[ ]{`+Math.min.apply(Math,v)+"}","g");p=p.map(function(E){return E.replace(m,`
`)})}p[0]=p[0].replace(/^\r?\n/,"");var b=p[0];return a.forEach(function(E,C){var A=b.match(/(?:^|\n)( *)$/),P=A?A[1]:"",F=E;typeof E=="string"&&E.includes(`
`)&&(F=String(E).split(`
`).map(function(j,R){return R===0?j:""+P+j}).join(`
`)),b+=F+p[C+1]}),b}var d0=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function PE(i){return i&&i.__esModule&&Object.prototype.hasOwnProperty.call(i,"default")?i.default:i}var ALt={exports:{}};(function(i,a){(function(f,p){i.exports=p()})(d0,function(){var f=1e3,p=6e4,v=36e5,m="millisecond",b="second",E="minute",C="hour",A="day",P="week",F="month",j="quarter",R="year",H="date",Y="Invalid Date",rt=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,J=/\[([^\]]+)]|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,it={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(Ct){var tt=["th","st","nd","rd"],Pt=Ct%100;return"["+Ct+(tt[(Pt-20)%10]||tt[Pt]||tt[0])+"]"}},ft=function(Ct,tt,Pt){var pt=String(Ct);return!pt||pt.length>=tt?Ct:""+Array(tt+1-pt.length).join(Pt)+Ct},Tt={s:ft,z:function(Ct){var tt=-Ct.utcOffset(),Pt=Math.abs(tt),pt=Math.floor(Pt/60),Ft=Pt%60;return(tt<=0?"+":"-")+ft(pt,2,"0")+":"+ft(Ft,2,"0")},m:function Ct(tt,Pt){if(tt.date()<Pt.date())return-Ct(Pt,tt);var pt=12*(Pt.year()-tt.year())+(Pt.month()-tt.month()),Ft=tt.clone().add(pt,F),X=Pt-Ft<0,Rt=tt.clone().add(pt+(X?-1:1),F);return+(-(pt+(Pt-Ft)/(X?Ft-Rt:Rt-Ft))||0)},a:function(Ct){return Ct<0?Math.ceil(Ct)||0:Math.floor(Ct)},p:function(Ct){return{M:F,y:R,w:P,d:A,D:H,h:C,m:E,s:b,ms:m,Q:j}[Ct]||String(Ct||"").toLowerCase().replace(/s$/,"")},u:function(Ct){return Ct===void 0}},kt="en",mt={};mt[kt]=it;var ct=function(Ct){return Ct instanceof ht},yt=function Ct(tt,Pt,pt){var Ft;if(!tt)return kt;if(typeof tt=="string"){var X=tt.toLowerCase();mt[X]&&(Ft=X),Pt&&(mt[X]=Pt,Ft=X);var Rt=tt.split("-");if(!Ft&&Rt.length>1)return Ct(Rt[0])}else{var Bt=tt.name;mt[Bt]=tt,Ft=Bt}return!pt&&Ft&&(kt=Ft),Ft||!pt&&kt},st=function(Ct,tt){if(ct(Ct))return Ct.clone();var Pt=typeof tt=="object"?tt:{};return Pt.date=Ct,Pt.args=arguments,new ht(Pt)},xt=Tt;xt.l=yt,xt.i=ct,xt.w=function(Ct,tt){return st(Ct,{locale:tt.$L,utc:tt.$u,x:tt.$x,$offset:tt.$offset})};var ht=function(){function Ct(Pt){this.$L=yt(Pt.locale,null,!0),this.parse(Pt)}var tt=Ct.prototype;return tt.parse=function(Pt){this.$d=function(pt){var Ft=pt.date,X=pt.utc;if(Ft===null)return new Date(NaN);if(xt.u(Ft))return new Date;if(Ft instanceof Date)return new Date(Ft);if(typeof Ft=="string"&&!/Z$/i.test(Ft)){var Rt=Ft.match(rt);if(Rt){var Bt=Rt[2]-1||0,vt=(Rt[7]||"0").substring(0,3);return X?new Date(Date.UTC(Rt[1],Bt,Rt[3]||1,Rt[4]||0,Rt[5]||0,Rt[6]||0,vt)):new Date(Rt[1],Bt,Rt[3]||1,Rt[4]||0,Rt[5]||0,Rt[6]||0,vt)}}return new Date(Ft)}(Pt),this.$x=Pt.x||{},this.init()},tt.init=function(){var Pt=this.$d;this.$y=Pt.getFullYear(),this.$M=Pt.getMonth(),this.$D=Pt.getDate(),this.$W=Pt.getDay(),this.$H=Pt.getHours(),this.$m=Pt.getMinutes(),this.$s=Pt.getSeconds(),this.$ms=Pt.getMilliseconds()},tt.$utils=function(){return xt},tt.isValid=function(){return this.$d.toString()!==Y},tt.isSame=function(Pt,pt){var Ft=st(Pt);return this.startOf(pt)<=Ft&&Ft<=this.endOf(pt)},tt.isAfter=function(Pt,pt){return st(Pt)<this.startOf(pt)},tt.isBefore=function(Pt,pt){return this.endOf(pt)<st(Pt)},tt.$g=function(Pt,pt,Ft){return xt.u(Pt)?this[pt]:this.set(Ft,Pt)},tt.unix=function(){return Math.floor(this.valueOf()/1e3)},tt.valueOf=function(){return this.$d.getTime()},tt.startOf=function(Pt,pt){var Ft=this,X=!!xt.u(pt)||pt,Rt=xt.p(Pt),Bt=function(Ae,ne){var ke=xt.w(Ft.$u?Date.UTC(Ft.$y,ne,Ae):new Date(Ft.$y,ne,Ae),Ft);return X?ke:ke.endOf(A)},vt=function(Ae,ne){return xt.w(Ft.toDate()[Ae].apply(Ft.toDate("s"),(X?[0,0,0,0]:[23,59,59,999]).slice(ne)),Ft)},Ot=this.$W,Vt=this.$M,qe=this.$D,_n="set"+(this.$u?"UTC":"");switch(Rt){case R:return X?Bt(1,0):Bt(31,11);case F:return X?Bt(1,Vt):Bt(0,Vt+1);case P:var Te=this.$locale().weekStart||0,Wn=(Ot<Te?Ot+7:Ot)-Te;return Bt(X?qe-Wn:qe+(6-Wn),Vt);case A:case H:return vt(_n+"Hours",0);case C:return vt(_n+"Minutes",1);case E:retu
`+Qo),ke&&(Qo=Qw(Qo,ht," "),Qo=Qw(Qo,dt," "),Qo=Qw(Qo,Ct," ")),ft&&ye?ft.createHTML(Qo):Qo},a.setConfig=function(Vi){Er(Vi),Ee=!0},a.clearConfig=function(){Js=null,Ee=!1},a.isValidAttribute=function(Vi,Ke,kr){Js||Er({});const ni=gr(Vi),eo=gr(Ke);return zo(ni,eo,kr)},a.addHook=function(Vi,Ke){typeof Ke=="function"&&(xt[Vi]=xt[Vi]||[],RN(xt[Vi],Ke))},a.removeHook=function(Vi){if(xt[Vi])return FDt(xt[Vi])},a.removeHooks=function(Vi){xt[Vi]&&(xt[Vi]=[])},a.removeAllHooks=function(){xt={}},a}var eW=VDt();const $N=/<br\s*\/?>/gi,T9e=i=>i?WDt(i).replace(/\\n/g,"#br#").split("#br#"):[""],GDt=i=>eW.sanitize(i),UDt=(i,a)=>{var f;if(((f=a.flowchart)==null?void 0:f.htmlLabels)!==!1){const p=a.securityLevel;p==="antiscript"||p==="strict"?i=GDt(i):p!=="loose"&&(i=WDt(i),i=i.replace(/</g,"&lt;").replace(/>/g,"&gt;"),i=i.replace(/=/g,"&equals;"),i=A9e(i))}return i},v0=(i,a)=>i&&(a.dompurifyConfig?i=eW.sanitize(UDt(i,a),a.dompurifyConfig).toString():i=eW.sanitize(UDt(i,a),{FORBID_TAGS:["style"]}).toString(),i),_9e=(i,a)=>typeof i=="string"?v0(i,a):i.flat().map(f=>v0(f,a)),C9e=i=>$N.test(i),S9e=i=>i.split($N),A9e=i=>i.replace(/#br#/g,"<br/>"),WDt=i=>i.replace($N,"#br#"),L9e=i=>{let a="";return i&&(a=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,a=a.replaceAll(/\(/g,"\\("),a=a.replaceAll(/\)/g,"\\)")),a},u1=i=>!(i===!1||["false","null","0"].includes(String(i).trim().toLowerCase())),M9e=function(...i){const a=i.filter(f=>!isNaN(f));return Math.max(...a)},D9e=function(...i){const a=i.filter(f=>!isNaN(f));return Math.min(...a)},zN=function(i){let a=i;if(i.split("~").length-1>=2){let f=a;do a=f,f=a.replace(/~([^\s,:;]+)~/,"<$1>");while(f!=a);return zN(f)}else return a},ui={getRows:T9e,sanitizeText:v0,sanitizeTextOrArray:_9e,hasBreaks:C9e,splitBreaks:S9e,lineBreakRegex:$N,removeScript:GDt,getUrl:L9e,evaluate:u1,getMax:M9e,getMin:D9e},nW={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:i=>i>=255?255:i<0?0:i,g:i=>i>=255?255:i<0?0:i,b:i=>i>=255?255:i<0?0:i,h:i=>i%360,s:i=>i>=100?100:i<0?0:i,l:i=>i>=100?100:i<0?0:i,a:i=>i>=1?1:i<0?0:i},toLinear:i=>{const a=i/255;return i>.03928?Math.pow((a+.055)/1.055,2.4):a/12.92},hue2rgb:(i,a,f)=>(f<0&&(f+=1),f>1&&(f-=1),f<1/6?i+(a-i)*6*f:f<1/2?a:f<2/3?i+(a-i)*(2/3-f)*6:i),hsl2rgb:({h:i,s:a,l:f},p)=>{if(!a)return f*2.55;i/=360,a/=100,f/=100;const v=f<.5?f*(1+a):f+a-f*a,m=2*f-v;switch(p){case"r":return nW.hue2rgb(m,v,i+1/3)*255;case"g":return nW.hue2rgb(m,v,i)*255;case"b":return nW.hue2rgb(m,v,i-1/3)*255}},rgb2hsl:({r:i,g:a,b:f},p)=>{i/=255,a/=255,f/=255;const v=Math.max(i,a,f),m=Math.min(i,a,f),b=(v+m)/2;if(p==="l")return b*100;if(v===m)return 0;const E=v-m,C=b>.5?E/(2-v-m):E/(v+m);if(p==="s")return C*100;switch(v){case i:return((a-f)/E+(a<f?6:0))*60;case a:return((f-i)/E+2)*60;case f:return((i-a)/E+4)*60;default:return-1}}},ka={channel:nW,lang:{clamp:(i,a,f)=>a>f?Math.min(a,Math.max(f,i)):Math.min(f,Math.max(a,i)),round:i=>Math.round(i*1e10)/1e10},unit:{dec2hex:i=>{const a=Math.round(i).toString(16);return a.length>1?a:`0${a}`}}},Zx={};for(let i=0;i<=255;i++)Zx[i]=ka.unit.dec2hex(i);const w0={ALL:0,RGB:1,HSL:2};class I9e{constructor(){this.type=w0.ALL}get(){return this.type}set(a){if(this.type&&this.type!==a)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=a}reset(){this.type=w0.ALL}is(a){return this.type===a}}const O9e=I9e;class N9e{constructor(a,f){this.color=f,this.changed=!1,this.data=a,this.type=new O9e}set(a,f){return this.color=f,this.changed=!1,this.data=a,this.type.type=w0.ALL,this}_ensureHSL(){const a=this.data,{h:f,s:p,l:v}=a;f===void 0&&(a.h=ka.channel.rgb2hsl(a,"h")),p===void 0&&(a.s=ka.channel.rgb2hsl(a,"s")),v===void 0&&(a.l=ka.channel.rgb2hsl(a,"l"))}_ensureRGB(){const a=this.data,{r:f,g:p,b:v}=a;f===void 0&&(a.r=ka.channel.hsl2rgb(a,"r")),p===void 0&&(a.g=ka.channel.hsl2rgb(a,"g")),v===void 0&&(a.b=ka.channel.hsl2rgb(a,"b"))}get r(){const a=this.data,f=a.r;return!this.type.is(w0.HSL)&&f!==void 0?f:(this._ensureHSL(),ka.channel.hsl2rgb(a,"r"))}get g(){const a=this.data,f
`);for(const[f,{detector:p}]of Object.entries(OA))if(p(i,a))return f;throw new rIt(`No diagram type detected matching given configuration for text: ${i}`)},iIt=(...i)=>{for(const{id:a,detector:f,loader:p}of i)sIt(a,f,p)},sIt=(i,a,f)=>{OA[i]?Wt.error(`Detector with key ${i} already exists`):OA[i]={detector:a,loader:f},Wt.debug(`Detector with key ${i} added${f?" with loader":""}`)},X9e=i=>OA[i].loader,U1t=(i,a,{depth:f=2,clobber:p=!1}={})=>{const v={depth:f,clobber:p};return Array.isArray(a)&&!Array.isArray(i)?(a.forEach(m=>U1t(i,m,v)),i):Array.isArray(a)&&Array.isArray(i)?(a.forEach(m=>{i.includes(m)||i.push(m)}),i):i===void 0||f<=0?i!=null&&typeof i=="object"&&typeof a=="object"?Object.assign(i,a):a:(a!==void 0&&typeof i=="object"&&typeof a=="object"&&Object.keys(a).forEach(m=>{typeof a[m]=="object"&&(i[m]===void 0||typeof i[m]=="object")?(i[m]===void 0&&(i[m]=Array.isArray(a[m])?[]:{}),i[m]=U1t(i[m],a[m],{depth:f-1,clobber:p})):(p||typeof i[m]!="object"&&typeof a[m]!="object")&&(i[m]=a[m])}),i)},Z1=U1t;var Q9e=typeof global=="object"&&global&&global.Object===Object&&global;const aIt=Q9e;var Z9e=typeof self=="object"&&self&&self.Object===Object&&self,J9e=aIt||Z9e||Function("return this")();const Jw=J9e;var tTe=Jw.Symbol;const Q2=tTe;var oIt=Object.prototype,eTe=oIt.hasOwnProperty,nTe=oIt.toString,HN=Q2?Q2.toStringTag:void 0;function rTe(i){var a=eTe.call(i,HN),f=i[HN];try{i[HN]=void 0;var p=!0}catch{}var v=nTe.call(i);return p&&(a?i[HN]=f:delete i[HN]),v}var iTe=Object.prototype,sTe=iTe.toString;function aTe(i){return sTe.call(i)}var oTe="[object Null]",cTe="[object Undefined]",cIt=Q2?Q2.toStringTag:void 0;function QE(i){return i==null?i===void 0?cTe:oTe:cIt&&cIt in Object(i)?rTe(i):aTe(i)}function Ob(i){var a=typeof i;return i!=null&&(a=="object"||a=="function")}var uTe="[object AsyncFunction]",lTe="[object Function]",hTe="[object GeneratorFunction]",fTe="[object Proxy]";function NA(i){if(!Ob(i))return!1;var a=QE(i);return a==lTe||a==hTe||a==uTe||a==fTe}var dTe=Jw["__core-js_shared__"];const W1t=dTe;var uIt=function(){var i=/[^.]+$/.exec(W1t&&W1t.keys&&W1t.keys.IE_PROTO||"");return i?"Symbol(src)_1."+i:""}();function gTe(i){return!!uIt&&uIt in i}var pTe=Function.prototype,bTe=pTe.toString;function ZE(i){if(i!=null){try{return bTe.call(i)}catch{}try{return i+""}catch{}}return""}var vTe=/[\\^$.*+?()[\]{}|]/g,wTe=/^\[object .+?Constructor\]$/,mTe=Function.prototype,yTe=Object.prototype,xTe=mTe.toString,kTe=yTe.hasOwnProperty,ETe=RegExp("^"+xTe.call(kTe).replace(vTe,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function TTe(i){if(!Ob(i)||gTe(i))return!1;var a=NA(i)?ETe:wTe;return a.test(ZE(i))}function _Te(i,a){return i==null?void 0:i[a]}function JE(i,a){var f=_Te(i,a);return TTe(f)?f:void 0}var CTe=JE(Object,"create");const VN=CTe;function STe(){this.__data__=VN?VN(null):{},this.size=0}function ATe(i){var a=this.has(i)&&delete this.__data__[i];return this.size-=a?1:0,a}var LTe="__lodash_hash_undefined__",MTe=Object.prototype,DTe=MTe.hasOwnProperty;function ITe(i){var a=this.__data__;if(VN){var f=a[i];return f===LTe?void 0:f}return DTe.call(a,i)?a[i]:void 0}var OTe=Object.prototype,NTe=OTe.hasOwnProperty;function PTe(i){var a=this.__data__;return VN?a[i]!==void 0:NTe.call(a,i)}var FTe="__lodash_hash_undefined__";function BTe(i,a){var f=this.__data__;return this.size+=this.has(i)?0:1,f[i]=VN&&a===void 0?FTe:a,this}function t9(i){var a=-1,f=i==null?0:i.length;for(this.clear();++a<f;){var p=i[a];this.set(p[0],p[1])}}t9.prototype.clear=STe,t9.prototype.delete=ATe,t9.prototype.get=ITe,t9.prototype.has=PTe,t9.prototype.set=BTe;function RTe(){this.__data__=[],this.size=0}function PA(i,a){return i===a||i!==i&&a!==a}function fW(i,a){for(var f=i.length;f--;)if(PA(i[f][0],a))return f;return-1}var jTe=Array.prototype,$Te=jTe.splice;function zTe(i){var a=this.__data__,f=fW(a,i);if(f<0)return!1;var p=a.length-1;return f==p?a.pop():$Te.call(a,f,1),--this.size,!0}function qTe(i){var a=this.__data__,f=fW(a,i);return f<0?void 0:a[f][1]}function HTe(i){return fW(this.__data__,i)>-1}function VTe(i,a){v
`,"ig");i=i.trim().replace(f,"").replace(/'/gm,'"'),Wt.debug(`Detecting diagram directive${a!==null?" type:"+a:""} based on the text:${i}`);let p;const v=[];for(;(p=lW.exec(i))!==null;)if(p.index===lW.lastIndex&&lW.lastIndex++,p&&!a||a&&p[1]&&p[1].match(a)||a&&p[2]&&p[2].match(a)){const m=p[1]?p[1]:p[2],b=p[3]?p[3].trim():p[4]?JSON.parse(p[4].trim()):null;v.push({type:m,args:b})}return v.length===0&&v.push({type:i,args:null}),v.length===1?v[0]:v}catch(f){return Wt.error(`ERROR: ${f.message} - Unable to parse directive
${a!==null?" type:"+a:""} based on the text:${i}`),{type:null,args:null}}},LCe=function(i,a){for(const[f,p]of a.entries())if(p.match(i))return f;return-1};function Z2(i,a){if(!i)return a;const f=`curve${i.charAt(0).toUpperCase()+i.slice(1)}`;return CCe[f]||a}function MCe(i,a){const f=i.trim();if(f)return a.securityLevel!=="loose"?Xx(f):f}const DCe=(i,...a)=>{const f=i.split("."),p=f.length-1,v=f[p];let m=window;for(let b=0;b<p;b++)if(m=m[f[b]],!m)return;m[v](...a)};function TW(i,a){return i&&a?Math.sqrt(Math.pow(a.x-i.x,2)+Math.pow(a.y-i.y,2)):0}function ICe(i){let a,f=0;i.forEach(m=>{f+=TW(m,a),a=m});let p=f/2,v;return a=void 0,i.forEach(m=>{if(a&&!v){const b=TW(m,a);if(b<p)p-=b;else{const E=p/b;E<=0&&(v=a),E>=1&&(v={x:m.x,y:m.y}),E>0&&E<1&&(v={x:(1-E)*a.x+E*m.x,y:(1-E)*a.y+E*m.y})}}a=m}),v}function OCe(i){return i.length===1?i[0]:ICe(i)}const NCe=(i,a,f)=>{let p;Wt.info(`our points ${JSON.stringify(a)}`),a[0]!==f&&(a=a.reverse());let m=25,b;p=void 0,a.forEach(P=>{if(p&&!b){const F=TW(P,p);if(F<m)m-=F;else{const j=m/F;j<=0&&(b=p),j>=1&&(b={x:P.x,y:P.y}),j>0&&j<1&&(b={x:(1-j)*p.x+j*P.x,y:(1-j)*p.y+j*P.y})}}p=P});const E=i?10:5,C=Math.atan2(a[0].y-b.y,a[0].x-b.x),A={x:0,y:0};return A.x=Math.sin(C)*E+(a[0].x+b.x)/2,A.y=-Math.cos(C)*E+(a[0].y+b.y)/2,A};function PCe(i,a,f){let p=JSON.parse(JSON.stringify(f)),v;Wt.info("our points",p),a!=="start_left"&&a!=="start_right"&&(p=p.reverse()),p.forEach(F=>{v=F});let b=25+i,E;v=void 0,p.forEach(F=>{if(v&&!E){const j=TW(F,v);if(j<b)b-=j;else{const R=b/j;R<=0&&(E=v),R>=1&&(E={x:F.x,y:F.y}),R>0&&R<1&&(E={x:(1-R)*v.x+R*F.x,y:(1-R)*v.y+R*F.y})}}v=F});const C=10+i*.5,A=Math.atan2(p[0].y-E.y,p[0].x-E.x),P={x:0,y:0};return P.x=Math.sin(A)*C+(p[0].x+E.x)/2,P.y=-Math.cos(A)*C+(p[0].y+E.y)/2,a==="start_left"&&(P.x=Math.sin(A+Math.PI)*C+(p[0].x+E.x)/2,P.y=-Math.cos(A+Math.PI)*C+(p[0].y+E.y)/2),a==="end_right"&&(P.x=Math.sin(A-Math.PI)*C+(p[0].x+E.x)/2-5,P.y=-Math.cos(A-Math.PI)*C+(p[0].y+E.y)/2-5),a==="end_left"&&(P.x=Math.sin(A)*C+(p[0].x+E.x)/2-5,P.y=-Math.cos(A)*C+(p[0].y+E.y)/2-5),P}function em(i){let a="",f="";for(const p of i)p!==void 0&&(p.startsWith("color:")||p.startsWith("text-align:")?f=f+p+";":a=a+p+";");return{style:a,labelStyle:f}}let BIt=0;const RIt=()=>(BIt++,"id-"+Math.random().toString(36).substr(2,12)+"-"+BIt);function FCe(i){let a="";const f="0123456789abcdef",p=f.length;for(let v=0;v<i;v++)a+=f.charAt(Math.floor(Math.random()*p));return a}const jIt=i=>FCe(i.length),BCe=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}},RCe=function(i,a){const f=a.text.replace(ui.lineBreakRegex," "),[,p]=zA(a.fontSize),v=i.append("text");v.attr("x",a.x),v.attr("y",a.y),v.style("text-anchor",a.anchor),v.style("font-family",a.fontFamily),v.style("font-size",p),v.style("font-weight",a.fontWeight),v.attr("fill",a.fill),a.class!==void 0&&v.attr("class",a.class);const m=v.append("tspan");return m.attr("x",a.x+a.textMargin*2),m.attr("fill",a.fill),m.text(f),v},$It=FA((i,a,f)=>{if(!i||(f=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"<br/>"},f),ui.lineBreakRegex.test(i)))return i;const p=i.split(" "),v=[];let m="";return p.forEach((b,E)=>{const C=h3(`${b} `,f),A=h3(m,f);if(C>a){const{hyphenatedStrings:j,remainingWord:R}=jCe(b,a,"-",f);v.push(m,...j),m=R}else A+C>=a?(v.push(m),m=b):m=[m,b].filter(Boolean).join(" ");E+1===p.length&&v.push(m)}),v.filter(b=>b!=="").join(f.joinWith)},(i,a,f)=>`${i}${a}${f.fontSize}${f.fontWeight}${f.fontFamily}${f.joinWith}`),jCe=FA((i,a,f="-",p)=>{p=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},p);const v=[...i],m=[];let b="";return v.forEach((E,C)=>{const A=`${b}${E}`;if(h3(A,p)>=a){const F=C+1,j=v.length===F,R=`${A}${f}`;m.push(j?A:R),b=""}else b=A}),{hyphenatedStrings:m,remainingWord:b}},(i,a,f="-",p)=>`${i}${a}${f}${p.fontSize}${p.fontWeight}${p.fontFamily}`);function edt(i,a){return a=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:15},a),ndt(i,a).height}function h3(i,a){return a=Object.assign({fontSize:12,fontWeight
`);const p=ldt(a);p.attr("viewBox","0 0 2412 512"),og(p,100,512,!0);const v=p.append("g");v.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"),v.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"),v.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"),v.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"),v.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"),v.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"),v.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"),v.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${f}`)}},SSe=xOt,ASe={db:{},renderer:xOt,parser:{parser:{yy:{}},parse:()=>{}}},kOt="flowchart-elk",LSe={id:kOt,detector:(i,a)=>{var f;return!!(/^\s*flowchart-elk/.test(i)||/^\s*flowchart|graph/.test(i)&&((f=a==null?void 0:a.flowchart)==null?void 0:f.defaultRenderer)==="elk")},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>kUe);return{id:kOt,diagram:i}}},EOt="timeline",MSe={id:EOt,detector:i=>/^\s*timeline/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>zUe);return{id:EOt,diagram:i}}},TOt="mindmap",DSe={id:TOt,detector:i=>/^\s*mindmap/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>vWe);return{id:TOt,diagram:i}}},_Ot="sankey",ISe={id:_Ot,detector:i=>/^\s*sankey-beta/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>WWe);return{id:_Ot,diagram:i}}},NW={},OSe=(i,a,f)=>{let p="";return i in NW&&NW[i]?p=NW[i](f):Wt.warn(`No theme found for ${i}`),` & {
font-family: ${f.fontFamily};
font-size: ${f.fontSize};
fill: ${f.textColor}
}
/* Classes common for multiple diagrams */
& .error-icon {
fill: ${f.errorBkgColor};
}
& .error-text {
fill: ${f.errorTextColor};
stroke: ${f.errorTextColor};
}
& .edge-thickness-normal {
stroke-width: 2px;
}
& .edge-thickness-thick {
stroke-width: 3.5px
}
& .edge-pattern-solid {
stroke-dasharray: 0;
}
& .edge-pattern-dashed{
stroke-dasharray: 3;
}
.edge-pattern-dotted {
stroke-dasharray: 2;
}
& .marker {
fill: ${f.lineColor};
stroke: ${f.lineColor};
}
& .marker.cross {
stroke: ${f.lineColor};
}
& svg {
font-family: ${f.fontFamily};
font-size: ${f.fontSize};
}
${p}
${a}
`},NSe=(i,a)=>{a!==void 0&&(NW[i]=a)},PSe=OSe;let hdt="",PW="",fdt="";const ddt=i=>v0(i,De()),cg=function(){hdt="",fdt="",PW=""},m0=function(i){hdt=ddt(i).replace(/^\s+/g,"")},ug=function(){return hdt||PW},lg=function(i){fdt=ddt(i).replace(/\n\s+/g,`
`)},hg=function(){return fdt},Nb=function(i){PW=ddt(i)},hp=function(){return PW},COt=Object.freeze(Object.defineProperty({__proto__:null,clear:cg,default:{getAccTitle:ug,setAccTitle:m0,getDiagramTitle:hp,setDiagramTitle:Nb,getAccDescription:hg,setAccDescription:lg,clear:cg},getAccDescription:hg,getAccTitle:ug,getDiagramTitle:hp,setAccDescription:lg,setAccTitle:m0,setDiagramTitle:Nb},Symbol.toStringTag,{value:"Module"}));let a9={};const FW=function(i,a,f,p){Wt.debug("parseDirective is being called",a,f,p);try{if(a!==void 0)switch(a=a.trim(),f){case"open_directive":a9={};break;case"type_directive":if(!a9)throw new Error("currentDirective is undefined");a9.type=a.toLowerCase();break;case"arg_directive":if(!a9)throw new Error("currentDirective is undefined");a9.args=JSON.parse(a);break;case"close_directive":FSe(i,a9,p),a9=void 0;break}}catch(v){Wt.error(`Error while rendering sequenceDiagram directive: ${a} jison context: ${f}`),Wt.error(v.message)}},FSe=function(i,a,f){switch(Wt.info(`Directive type=${a.type} with args:`,a.args),a.type){case"init":case"initialize":{["config"].forEach(p=>{a.args[p]!==void 0&&(f==="flowchart-v2"&&(f="flowchart"),a.args[f]=a.args[p],delete a.args[p])}),IW(a.args);break}case"wrap":case"nowrap":i&&i.setWrap&&i.setWrap(a.type==="wrap");break;case"themeCss":Wt.warn("themeCss encountered");break;default:Wt.warn(`Unhandled directive: source: '%%{${a.type}: ${JSON.stringify(a.args?a.args:{})}}%%`,a);break}},BSe=Wt,RSe=zft,JN=De,jSe=i=>v0(i,JN()),SOt=s9,$Se=()=>COt,zSe=(i,a,f,p)=>FW(i,a,f,p),BW={},RW=(i,a,f)=>{if(BW[i])throw new Error(`Diagram ${i} already registered.`);BW[i]=a,f&&sIt(i,f),NSe(i,a.styles),a.injectUtils&&a.injectUtils(BSe,RSe,JN,jSe,SOt,$Se(),zSe)},gdt=i=>{if(i in BW)return BW[i];throw new qSe(i)};class qSe extends Error{constructor(a){super(`Diagram ${a} not found.`)}}let AOt=!1;const pdt=()=>{AOt||(AOt=!0,RW("error",ASe,i=>i.toLowerCase().trim()==="error"),RW("---",{db:{clear:()=>{}},styles:{},renderer:{},parser:{parser:{yy:{}},parse:()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")}},init:()=>null},i=>i.toLowerCase().trimStart().startsWith("---")),iIt(uSe,xSe,ySe,fSe,gSe,pSe,bSe,wSe,mSe,LSe,hSe,lSe,DSe,MSe,dSe,ESe,kSe,TSe,vSe,ISe))};/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function LOt(i){return typeof i>"u"||i===null}function HSe(i){return typeof i=="object"&&i!==null}function VSe(i){return Array.isArray(i)?i:LOt(i)?[]:[i]}function GSe(i,a){var f,p,v,m;if(a)for(m=Object.keys(a),f=0,p=m.length;f<p;f+=1)v=m[f],i[v]=a[v];return i}function USe(i,a){var f="",p;for(p=0;p<a;p+=1)f+=i;return f}function WSe(i){return i===0&&Number.NEGATIVE_INFINITY===1/i}var KSe=LOt,YSe=HSe,XSe=VSe,QSe=USe,ZSe=WSe,JSe=GSe,fg={isNothing:KSe,isObject:YSe,toArray:XSe,repeat:QSe,isNegativeZero:ZSe,extend:JSe};function MOt(i,a){var f="",p=i.reason||"(unknown reason)";return i.mark?(i.mark.name&&(f+='in "'+i.mark.name+'" '),f+="("+(i.mark.line+1)+":"+(i.mark.column+1)+")",!a&&i.mark.snippet&&(f+=`
`+i.mark.snippet),p+" "+f):p}function tP(i,a){Error.call(this),this.name="YAMLException",this.reason=i,this.mark=a,this.message=MOt(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}tP.prototype=Object.create(Error.prototype),tP.prototype.constructor=tP,tP.prototype.toString=function(a){return this.name+": "+MOt(this,a)};var k5=tP;function bdt(i,a,f,p,v){var m="",b="",E=Math.floor(v/2)-1;return p-a>E&&(m=" ... ",a=p-E+m.length),f-p>E&&(b=" ...",f=p+E-b.length),{str:m+i.slice(a,f).replace(/\t/g,"→")+b,pos:p-a+m.length}}function vdt(i,a){return fg.repeat(" ",a-i.length)+i}function tAe(i,a){if(a=Object.create(a||null),!i.buffer)return null;a.maxLength||(a.maxLength=79),typeof a.indent!="number"&&(a.indent=1),typeof a.linesBefore!="number"&&(a.linesBefore=3),typeof a.linesAfter!="number"&&(a.linesAfter=2);for(var f=/\r?\n|\r|\0/g,p=[0],v=[],m,b=-1;m=f.exec(i.buffer);)v.push(m.index),p.push(m.index+m[0].length),i.position<=m.index&&b<0&&(b=p.length-2);b<0&&(b=p.length-1);var E="",C,A,P=Math.min(i.line+a.linesAfter,v.length).toString().length,F=a.maxLength-(a.indent+P+3);for(C=1;C<=a.linesBefore&&!(b-C<0);C++)A=bdt(i.buffer,p[b-C],v[b-C],i.position-(p[b]-p[b-C]),F),E=fg.repeat(" ",a.indent)+vdt((i.line-C+1).toString(),P)+" | "+A.str+`
`+E;for(A=bdt(i.buffer,p[b],v[b],i.position,F),E+=fg.repeat(" ",a.indent)+vdt((i.line+1).toString(),P)+" | "+A.str+`
`,E+=fg.repeat("-",a.indent+P+3+A.pos)+`^
`,C=1;C<=a.linesAfter&&!(b+C>=v.length);C++)A=bdt(i.buffer,p[b+C],v[b+C],i.position-(p[b]-p[b+C]),F),E+=fg.repeat(" ",a.indent)+vdt((i.line+C+1).toString(),P)+" | "+A.str+`
`;return E.replace(/\n$/,"")}var eAe=tAe,nAe=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],rAe=["scalar","sequence","mapping"];function iAe(i){var a={};return i!==null&&Object.keys(i).forEach(function(f){i[f].forEach(function(p){a[String(p)]=f})}),a}function sAe(i,a){if(a=a||{},Object.keys(a).forEach(function(f){if(nAe.indexOf(f)===-1)throw new k5('Unknown option "'+f+'" is met in definition of "'+i+'" YAML type.')}),this.options=a,this.tag=i,this.kind=a.kind||null,this.resolve=a.resolve||function(){return!0},this.construct=a.construct||function(f){return f},this.instanceOf=a.instanceOf||null,this.predicate=a.predicate||null,this.represent=a.represent||null,this.representName=a.representName||null,this.defaultStyle=a.defaultStyle||null,this.multi=a.multi||!1,this.styleAliases=iAe(a.styleAliases||null),rAe.indexOf(this.kind)===-1)throw new k5('Unknown kind "'+this.kind+'" is specified for "'+i+'" YAML type.')}var y0=sAe;function DOt(i,a){var f=[];return i[a].forEach(function(p){var v=f.length;f.forEach(function(m,b){m.tag===p.tag&&m.kind===p.kind&&m.multi===p.multi&&(v=b)}),f[v]=p}),f}function aAe(){var i={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},a,f;function p(v){v.multi?(i.multi[v.kind].push(v),i.multi.fallback.push(v)):i[v.kind][v.tag]=i.fallback[v.tag]=v}for(a=0,f=arguments.length;a<f;a+=1)arguments[a].forEach(p);return i}function wdt(i){return this.extend(i)}wdt.prototype.extend=function(a){var f=[],p=[];if(a instanceof y0)p.push(a);else if(Array.isArray(a))p=p.concat(a);else if(a&&(Array.isArray(a.implicit)||Array.isArray(a.explicit)))a.implicit&&(f=f.concat(a.implicit)),a.explicit&&(p=p.concat(a.explicit));else throw new k5("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");f.forEach(function(m){if(!(m instanceof y0))throw new k5("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(m.loadKind&&m.loadKind!=="scalar")throw new k5("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(m.multi)throw new k5("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),p.forEach(function(m){if(!(m instanceof y0))throw new k5("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var v=Object.create(wdt.prototype);return v.implicit=(this.implicit||[]).concat(f),v.explicit=(this.explicit||[]).concat(p),v.compiledImplicit=DOt(v,"implicit"),v.compiledExplicit=DOt(v,"explicit"),v.compiledTypeMap=aAe(v.compiledImplicit,v.compiledExplicit),v};var oAe=wdt,cAe=new y0("tag:yaml.org,2002:str",{kind:"scalar",construct:function(i){return i!==null?i:""}}),uAe=new y0("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(i){return i!==null?i:[]}}),lAe=new y0("tag:yaml.org,2002:map",{kind:"mapping",construct:function(i){return i!==null?i:{}}}),hAe=new oAe({explicit:[cAe,uAe,lAe]});function fAe(i){if(i===null)return!0;var a=i.length;return a===1&&i==="~"||a===4&&(i==="null"||i==="Null"||i==="NULL")}function dAe(){return null}function gAe(i){return i===null}var pAe=new y0("tag:yaml.org,2002:null",{kind:"scalar",resolve:fAe,construct:dAe,predicate:gAe,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function bAe(i){if(i===null)return!1;var a=i.length;return a===4&&(i==="true"||i==="True"||i==="TRUE")||a===5&&(i==="false"||i==="False"||i==="FALSE")}function vAe(i){return i==="true"||i==="True"||i==="TRUE"}function wAe(i){return Object.prototype.toString.call(i)==="[object Boolean]"}var mAe=new y0("tag:yaml.org,2002:bool",{kind:"scalar",resolve:bAe,construct:vAe,predicate:wAe,represent:{lowercase:function(i){return i?"true":"false"},uppercase:function(i){return i?"TRUE":"FALSE"},camelcase:function(i){return i?"True":"F
\r`;function zAe(i){if(i===null)return!1;var a,f,p=0,v=i.length,m=mdt;for(f=0;f<v;f++)if(a=m.indexOf(i.charAt(f)),!(a>64)){if(a<0)return!1;p+=6}return p%8===0}function qAe(i){var a,f,p=i.replace(/[\r\n=]/g,""),v=p.length,m=mdt,b=0,E=[];for(a=0;a<v;a++)a%4===0&&a&&(E.push(b>>16&255),E.push(b>>8&255),E.push(b&255)),b=b<<6|m.indexOf(p.charAt(a));return f=v%4*6,f===0?(E.push(b>>16&255),E.push(b>>8&255),E.push(b&255)):f===18?(E.push(b>>10&255),E.push(b>>2&255)):f===12&&E.push(b>>4&255),new Uint8Array(E)}function HAe(i){var a="",f=0,p,v,m=i.length,b=mdt;for(p=0;p<m;p++)p%3===0&&p&&(a+=b[f>>18&63],a+=b[f>>12&63],a+=b[f>>6&63],a+=b[f&63]),f=(f<<8)+i[p];return v=m%3,v===0?(a+=b[f>>18&63],a+=b[f>>12&63],a+=b[f>>6&63],a+=b[f&63]):v===2?(a+=b[f>>10&63],a+=b[f>>4&63],a+=b[f<<2&63],a+=b[64]):v===1&&(a+=b[f>>2&63],a+=b[f<<4&63],a+=b[64],a+=b[64]),a}function VAe(i){return Object.prototype.toString.call(i)==="[object Uint8Array]"}var GAe=new y0("tag:yaml.org,2002:binary",{kind:"scalar",resolve:zAe,construct:qAe,predicate:VAe,represent:HAe}),UAe=Object.prototype.hasOwnProperty,WAe=Object.prototype.toString;function KAe(i){if(i===null)return!0;var a=[],f,p,v,m,b,E=i;for(f=0,p=E.length;f<p;f+=1){if(v=E[f],b=!1,WAe.call(v)!=="[object Object]")return!1;for(m in v)if(UAe.call(v,m))if(!b)b=!0;else return!1;if(!b)return!1;if(a.indexOf(m)===-1)a.push(m);else return!1}return!0}function YAe(i){return i!==null?i:[]}var XAe=new y0("tag:yaml.org,2002:omap",{kind:"sequence",resolve:KAe,construct:YAe}),QAe=Object.prototype.toString;function ZAe(i){if(i===null)return!0;var a,f,p,v,m,b=i;for(m=new Array(b.length),a=0,f=b.length;a<f;a+=1){if(p=b[a],QAe.call(p)!=="[object Object]"||(v=Object.keys(p),v.length!==1))return!1;m[a]=[v[0],p[v[0]]]}return!0}function JAe(i){if(i===null)return[];var a,f,p,v,m,b=i;for(m=new Array(b.length),a=0,f=b.length;a<f;a+=1)p=b[a],v=Object.keys(p),m[a]=[v[0],p[v[0]]];return m}var tLe=new y0("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:ZAe,construct:JAe}),eLe=Object.prototype.hasOwnProperty;function nLe(i){if(i===null)return!0;var a,f=i;for(a in f)if(eLe.call(f,a)&&f[a]!==null)return!1;return!0}function rLe(i){return i!==null?i:{}}var iLe=new y0("tag:yaml.org,2002:set",{kind:"mapping",resolve:nLe,construct:rLe}),sLe=NAe.extend({implicit:[RAe,$Ae],explicit:[GAe,XAe,tLe,iLe]}),nk=Object.prototype.hasOwnProperty,jW=1,POt=2,FOt=3,$W=4,ydt=1,aLe=2,BOt=3,oLe=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,cLe=/[\x85\u2028\u2029]/,uLe=/[,\[\]\{\}]/,ROt=/^(?:!|!!|![a-z\-]+!)$/i,jOt=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function $Ot(i){return Object.prototype.toString.call(i)}function f3(i){return i===10||i===13}function o9(i){return i===9||i===32}function fp(i){return i===9||i===32||i===10||i===13}function GA(i){return i===44||i===91||i===93||i===123||i===125}function lLe(i){var a;return 48<=i&&i<=57?i-48:(a=i|32,97<=a&&a<=102?a-97+10:-1)}function hLe(i){return i===120?2:i===117?4:i===85?8:0}function fLe(i){return 48<=i&&i<=57?i-48:-1}function zOt(i){return i===48?"\0":i===97?"\x07":i===98?"\b":i===116||i===9?" ":i===110?`
`:i===118?"\v":i===102?"\f":i===114?"\r":i===101?"\x1B":i===32?" ":i===34?'"':i===47?"/":i===92?"\\":i===78?"…":i===95?" ":i===76?"\u2028":i===80?"\u2029":""}function dLe(i){return i<=65535?String.fromCharCode(i):String.fromCharCode((i-65536>>10)+55296,(i-65536&1023)+56320)}for(var qOt=new Array(256),HOt=new Array(256),UA=0;UA<256;UA++)qOt[UA]=zOt(UA)?1:0,HOt[UA]=zOt(UA);function gLe(i,a){this.input=i,this.filename=a.filename||null,this.schema=a.schema||sLe,this.onWarning=a.onWarning||null,this.legacy=a.legacy||!1,this.json=a.json||!1,this.listener=a.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=i.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function VOt(i,a){var f={name:i.filename,buffer:i.input.slice(0,-1),position:i.position,line:i.line,column:i.position-i.lineStart};return f.snippet=eAe(f),new k5(a,f)}function Fs(i,a){throw VOt(i,a)}function zW(i,a){i.onWarning&&i.onWarning.call(null,VOt(i,a))}var GOt={YAML:function(a,f,p){var v,m,b;a.version!==null&&Fs(a,"duplication of %YAML directive"),p.length!==1&&Fs(a,"YAML directive accepts exactly one argument"),v=/^([0-9]+)\.([0-9]+)$/.exec(p[0]),v===null&&Fs(a,"ill-formed argument of the YAML directive"),m=parseInt(v[1],10),b=parseInt(v[2],10),m!==1&&Fs(a,"unacceptable YAML version of the document"),a.version=p[0],a.checkLineBreaks=b<2,b!==1&&b!==2&&zW(a,"unsupported YAML version of the document")},TAG:function(a,f,p){var v,m;p.length!==2&&Fs(a,"TAG directive accepts exactly two arguments"),v=p[0],m=p[1],ROt.test(v)||Fs(a,"ill-formed tag handle (first argument) of the TAG directive"),nk.call(a.tagMap,v)&&Fs(a,'there is a previously declared suffix for "'+v+'" tag handle'),jOt.test(m)||Fs(a,"ill-formed tag prefix (second argument) of the TAG directive");try{m=decodeURIComponent(m)}catch{Fs(a,"tag prefix is malformed: "+m)}a.tagMap[v]=m}};function rk(i,a,f,p){var v,m,b,E;if(a<f){if(E=i.input.slice(a,f),p)for(v=0,m=E.length;v<m;v+=1)b=E.charCodeAt(v),b===9||32<=b&&b<=1114111||Fs(i,"expected valid JSON character");else oLe.test(E)&&Fs(i,"the stream contains non-printable characters");i.result+=E}}function UOt(i,a,f,p){var v,m,b,E;for(fg.isObject(f)||Fs(i,"cannot merge mappings; the provided source object is unacceptable"),v=Object.keys(f),b=0,E=v.length;b<E;b+=1)m=v[b],nk.call(a,m)||(a[m]=f[m],p[m]=!0)}function WA(i,a,f,p,v,m,b,E,C){var A,P;if(Array.isArray(v))for(v=Array.prototype.slice.call(v),A=0,P=v.length;A<P;A+=1)Array.isArray(v[A])&&Fs(i,"nested arrays are not supported inside keys"),typeof v=="object"&&$Ot(v[A])==="[object Object]"&&(v[A]="[object Object]");if(typeof v=="object"&&$Ot(v)==="[object Object]"&&(v="[object Object]"),v=String(v),a===null&&(a={}),p==="tag:yaml.org,2002:merge")if(Array.isArray(m))for(A=0,P=m.length;A<P;A+=1)UOt(i,a,m[A],f);else UOt(i,a,m,f);else!i.json&&!nk.call(f,v)&&nk.call(a,v)&&(i.line=b||i.line,i.lineStart=E||i.lineStart,i.position=C||i.position,Fs(i,"duplicated mapping key")),v==="__proto__"?Object.defineProperty(a,v,{configurable:!0,enumerable:!0,writable:!0,value:m}):a[v]=m,delete f[v];return a}function xdt(i){var a;a=i.input.charCodeAt(i.position),a===10?i.position++:a===13?(i.position++,i.input.charCodeAt(i.position)===10&&i.position++):Fs(i,"a line break is expected"),i.line+=1,i.lineStart=i.position,i.firstTabInLine=-1}function Pf(i,a,f){for(var p=0,v=i.input.charCodeAt(i.position);v!==0;){for(;o9(v);)v===9&&i.firstTabInLine===-1&&(i.firstTabInLine=i.position),v=i.input.charCodeAt(++i.position);if(a&&v===35)do v=i.input.charCodeAt(++i.position);while(v!==10&&v!==13&&v!==0);if(f3(v))for(xdt(i),v=i.input.charCodeAt(i.position),p++,i.lineIndent=0;v===32;)i.lineIndent++,v=i.input.charCodeAt(++i.position);else break}return f!==-1&&p!==0&&i.lineIndent<f&&zW(i,"deficient indentation"),p}function qW(i){var a=i.position,f;return f=i.input.charCodeAt(a),!!((f===45||f===46)&&f===i.input.charCodeAt(a+1)&&f===i.input.charCodeAt(a+2)&&(a+=3,f=i.input.charCodeAt(a),f===0||fp(f)))}function kdt(i,a){a===1?i.resu
`,a-1))}function pLe(i,a,f){var p,v,m,b,E,C,A,P,F=i.kind,j=i.result,R;if(R=i.input.charCodeAt(i.position),fp(R)||GA(R)||R===35||R===38||R===42||R===33||R===124||R===62||R===39||R===34||R===37||R===64||R===96||(R===63||R===45)&&(v=i.input.charCodeAt(i.position+1),fp(v)||f&&GA(v)))return!1;for(i.kind="scalar",i.result="",m=b=i.position,E=!1;R!==0;){if(R===58){if(v=i.input.charCodeAt(i.position+1),fp(v)||f&&GA(v))break}else if(R===35){if(p=i.input.charCodeAt(i.position-1),fp(p))break}else{if(i.position===i.lineStart&&qW(i)||f&&GA(R))break;if(f3(R))if(C=i.line,A=i.lineStart,P=i.lineIndent,Pf(i,!1,-1),i.lineIndent>=a){E=!0,R=i.input.charCodeAt(i.position);continue}else{i.position=b,i.line=C,i.lineStart=A,i.lineIndent=P;break}}E&&(rk(i,m,b,!1),kdt(i,i.line-C),m=b=i.position,E=!1),o9(R)||(b=i.position+1),R=i.input.charCodeAt(++i.position)}return rk(i,m,b,!1),i.result?!0:(i.kind=F,i.result=j,!1)}function bLe(i,a){var f,p,v;if(f=i.input.charCodeAt(i.position),f!==39)return!1;for(i.kind="scalar",i.result="",i.position++,p=v=i.position;(f=i.input.charCodeAt(i.position))!==0;)if(f===39)if(rk(i,p,i.position,!0),f=i.input.charCodeAt(++i.position),f===39)p=i.position,i.position++,v=i.position;else return!0;else f3(f)?(rk(i,p,v,!0),kdt(i,Pf(i,!1,a)),p=v=i.position):i.position===i.lineStart&&qW(i)?Fs(i,"unexpected end of the document within a single quoted scalar"):(i.position++,v=i.position);Fs(i,"unexpected end of the stream within a single quoted scalar")}function vLe(i,a){var f,p,v,m,b,E;if(E=i.input.charCodeAt(i.position),E!==34)return!1;for(i.kind="scalar",i.result="",i.position++,f=p=i.position;(E=i.input.charCodeAt(i.position))!==0;){if(E===34)return rk(i,f,i.position,!0),i.position++,!0;if(E===92){if(rk(i,f,i.position,!0),E=i.input.charCodeAt(++i.position),f3(E))Pf(i,!1,a);else if(E<256&&qOt[E])i.result+=HOt[E],i.position++;else if((b=hLe(E))>0){for(v=b,m=0;v>0;v--)E=i.input.charCodeAt(++i.position),(b=lLe(E))>=0?m=(m<<4)+b:Fs(i,"expected hexadecimal character");i.result+=dLe(m),i.position++}else Fs(i,"unknown escape sequence");f=p=i.position}else f3(E)?(rk(i,f,p,!0),kdt(i,Pf(i,!1,a)),f=p=i.position):i.position===i.lineStart&&qW(i)?Fs(i,"unexpected end of the document within a double quoted scalar"):(i.position++,p=i.position)}Fs(i,"unexpected end of the stream within a double quoted scalar")}function wLe(i,a){var f=!0,p,v,m,b=i.tag,E,C=i.anchor,A,P,F,j,R,H=Object.create(null),Y,rt,J,it;if(it=i.input.charCodeAt(i.position),it===91)P=93,R=!1,E=[];else if(it===123)P=125,R=!0,E={};else return!1;for(i.anchor!==null&&(i.anchorMap[i.anchor]=E),it=i.input.charCodeAt(++i.position);it!==0;){if(Pf(i,!0,a),it=i.input.charCodeAt(i.position),it===P)return i.position++,i.tag=b,i.anchor=C,i.kind=R?"mapping":"sequence",i.result=E,!0;f?it===44&&Fs(i,"expected the node content, but found ','"):Fs(i,"missed comma between flow collection entries"),rt=Y=J=null,F=j=!1,it===63&&(A=i.input.charCodeAt(i.position+1),fp(A)&&(F=j=!0,i.position++,Pf(i,!0,a))),p=i.line,v=i.lineStart,m=i.position,KA(i,a,jW,!1,!0),rt=i.tag,Y=i.result,Pf(i,!0,a),it=i.input.charCodeAt(i.position),(j||i.line===p)&&it===58&&(F=!0,it=i.input.charCodeAt(++i.position),Pf(i,!0,a),KA(i,a,jW,!1,!0),J=i.result),R?WA(i,E,H,rt,Y,J,p,v,m):F?E.push(WA(i,null,H,rt,Y,J,p,v,m)):E.push(Y),Pf(i,!0,a),it=i.input.charCodeAt(i.position),it===44?(f=!0,it=i.input.charCodeAt(++i.position)):f=!1}Fs(i,"unexpected end of the stream within a flow collection")}function mLe(i,a){var f,p,v=ydt,m=!1,b=!1,E=a,C=0,A=!1,P,F;if(F=i.input.charCodeAt(i.position),F===124)p=!1;else if(F===62)p=!0;else return!1;for(i.kind="scalar",i.result="";F!==0;)if(F=i.input.charCodeAt(++i.position),F===43||F===45)ydt===v?v=F===43?BOt:aLe:Fs(i,"repeat of a chomping mode identifier");else if((P=fLe(F))>=0)P===0?Fs(i,"bad explicit indentation width of a block scalar; it cannot be less than one"):b?Fs(i,"repeat of an indentation width identifier"):(E=a+P-1,b=!0);else break;if(o9(F)){do F=i.input.charCodeAt(++i.position);while(o9(F));if(F===35)do F=i.input.charCodeAt(++i.position);while(!f3(F)&&F!==0)}for(;F!==0;){for(xdt(i),i.lineInd
`,m?1+C:C):v===ydt&&m&&(i.result+=`
`);break}for(p?o9(F)?(A=!0,i.result+=fg.repeat(`
`,m?1+C:C)):A?(A=!1,i.result+=fg.repeat(`
`,C+1)):C===0?m&&(i.result+=" "):i.result+=fg.repeat(`
`,C):i.result+=fg.repeat(`
`,m?1+C:C),m=!0,b=!0,C=0,f=i.position;!f3(F)&&F!==0;)F=i.input.charCodeAt(++i.position);rk(i,f,i.position,!1)}return!0}function WOt(i,a){var f,p=i.tag,v=i.anchor,m=[],b,E=!1,C;if(i.firstTabInLine!==-1)return!1;for(i.anchor!==null&&(i.anchorMap[i.anchor]=m),C=i.input.charCodeAt(i.position);C!==0&&(i.firstTabInLine!==-1&&(i.position=i.firstTabInLine,Fs(i,"tab characters must not be used in indentation")),!(C!==45||(b=i.input.charCodeAt(i.position+1),!fp(b))));){if(E=!0,i.position++,Pf(i,!0,-1)&&i.lineIndent<=a){m.push(null),C=i.input.charCodeAt(i.position);continue}if(f=i.line,KA(i,a,FOt,!1,!0),m.push(i.result),Pf(i,!0,-1),C=i.input.charCodeAt(i.position),(i.line===f||i.lineIndent>a)&&C!==0)Fs(i,"bad indentation of a sequence entry");else if(i.lineIndent<a)break}return E?(i.tag=p,i.anchor=v,i.kind="sequence",i.result=m,!0):!1}function yLe(i,a,f){var p,v,m,b,E,C,A=i.tag,P=i.anchor,F={},j=Object.create(null),R=null,H=null,Y=null,rt=!1,J=!1,it;if(i.firstTabInLine!==-1)return!1;for(i.anchor!==null&&(i.anchorMap[i.anchor]=F),it=i.input.charCodeAt(i.position);it!==0;){if(!rt&&i.firstTabInLine!==-1&&(i.position=i.firstTabInLine,Fs(i,"tab characters must not be used in indentation")),p=i.input.charCodeAt(i.position+1),m=i.line,(it===63||it===58)&&fp(p))it===63?(rt&&(WA(i,F,j,R,H,null,b,E,C),R=H=Y=null),J=!0,rt=!0,v=!0):rt?(rt=!1,v=!0):Fs(i,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),i.position+=1,it=p;else{if(b=i.line,E=i.lineStart,C=i.position,!KA(i,f,POt,!1,!0))break;if(i.line===m){for(it=i.input.charCodeAt(i.position);o9(it);)it=i.input.charCodeAt(++i.position);if(it===58)it=i.input.charCodeAt(++i.position),fp(it)||Fs(i,"a whitespace character is expected after the key-value separator within a block mapping"),rt&&(WA(i,F,j,R,H,null,b,E,C),R=H=Y=null),J=!0,rt=!1,v=!1,R=i.tag,H=i.result;else if(J)Fs(i,"can not read an implicit mapping pair; a colon is missed");else return i.tag=A,i.anchor=P,!0}else if(J)Fs(i,"can not read a block mapping entry; a multiline key may not be an implicit key");else return i.tag=A,i.anchor=P,!0}if((i.line===m||i.lineIndent>a)&&(rt&&(b=i.line,E=i.lineStart,C=i.position),KA(i,a,$W,!0,v)&&(rt?H=i.result:Y=i.result),rt||(WA(i,F,j,R,H,Y,b,E,C),R=H=Y=null),Pf(i,!0,-1),it=i.input.charCodeAt(i.position)),(i.line===m||i.lineIndent>a)&&it!==0)Fs(i,"bad indentation of a mapping entry");else if(i.lineIndent<a)break}return rt&&WA(i,F,j,R,H,null,b,E,C),J&&(i.tag=A,i.anchor=P,i.kind="mapping",i.result=F),J}function xLe(i){var a,f=!1,p=!1,v,m,b;if(b=i.input.charCodeAt(i.position),b!==33)return!1;if(i.tag!==null&&Fs(i,"duplication of a tag property"),b=i.input.charCodeAt(++i.position),b===60?(f=!0,b=i.input.charCodeAt(++i.position)):b===33?(p=!0,v="!!",b=i.input.charCodeAt(++i.position)):v="!",a=i.position,f){do b=i.input.charCodeAt(++i.position);while(b!==0&&b!==62);i.position<i.length?(m=i.input.slice(a,i.position),b=i.input.charCodeAt(++i.position)):Fs(i,"unexpected end of the stream within a verbatim tag")}else{for(;b!==0&&!fp(b);)b===33&&(p?Fs(i,"tag suffix cannot contain exclamation marks"):(v=i.input.slice(a-1,i.position+1),ROt.test(v)||Fs(i,"named tag handle cannot contain such characters"),p=!0,a=i.position+1)),b=i.input.charCodeAt(++i.position);m=i.input.slice(a,i.position),uLe.test(m)&&Fs(i,"tag suffix cannot contain flow indicator characters")}m&&!jOt.test(m)&&Fs(i,"tag name cannot contain such characters: "+m);try{m=decodeURIComponent(m)}catch{Fs(i,"tag name is malformed: "+m)}return f?i.tag=m:nk.call(i.tagMap,v)?i.tag=i.tagMap[v]+m:v==="!"?i.tag="!"+m:v==="!!"?i.tag="tag:yaml.org,2002:"+m:Fs(i,'undeclared tag handle "'+v+'"'),!0}function kLe(i){var a,f;if(f=i.input.charCodeAt(i.position),f!==38)return!1;for(i.anchor!==null&&Fs(i,"duplication of an anchor property"),f=i.input.charCodeAt(++i.position),a=i.position;f!==0&&!fp(f)&&!GA(f);)f=i.input.charCodeAt(++i.position);return i.position===a&&Fs(i,"name of an anchor node must contain at least one character"),i.anchor=i.input.slice(a,i.position),!0}function ELe(i){var a,f,p;if(p=i.input.charCodeAt(i.
`),i.charCodeAt(0)===65279&&(i=i.slice(1)));var f=new gLe(i,a),p=i.indexOf("\0");for(p!==-1&&(f.position=p,Fs(f,"null byte is not allowed in input")),f.input+="\0";f.input.charCodeAt(f.position)===32;)f.lineIndent+=1,f.position+=1;for(;f.position<f.length-1;)TLe(f);return f.documents}function _Le(i,a,f){a!==null&&typeof a=="object"&&typeof f>"u"&&(f=a,a=null);var p=KOt(i,f);if(typeof a!="function")return p;for(var v=0,m=p.length;v<m;v+=1)a(p[v])}function CLe(i,a){var f=KOt(i,a);if(f.length!==0){if(f.length===1)return f[0];throw new k5("expected a single document in the stream, but found more")}}var SLe=_Le,ALe=CLe,LLe={loadAll:SLe,load:ALe},MLe=IOt,DLe=LLe.load;function YOt(i,a,f){var m,b;const p=i.match(nIt);if(!p)return i;const v=DLe(p[1],{schema:MLe});return v!=null&&v.title&&((m=a.setDiagramTitle)==null||m.call(a,v.title.toString())),v!=null&&v.displayMode&&((b=a.setDisplayMode)==null||b.call(a,v.displayMode.toString())),v!=null&&v.config&&(f==null||f(v.config)),i.slice(p[0].length)}const ILe=i=>i.trimStart().replace(/^\s*%%(?!{)[^\n]+\n?/gm,"");class XOt{constructor(a){this.text=a,this.type="graph",this.text+=`
`;const f=De();try{this.type=hW(a,f)}catch(m){this.type="error",this.detectError=m}const p=gdt(this.type);Wt.debug("Type "+this.type),this.db=p.db,this.renderer=p.renderer,this.parser=p.parser;const v=this.parser.parse.bind(this.parser);this.parser.parse=m=>v(ILe(YOt(m,this.db,IW))),this.parser.parser.yy=this.db,this.init=p.init,this.parse()}parse(){var a,f,p;if(this.detectError)throw this.detectError;(f=(a=this.db).clear)==null||f.call(a),(p=this.init)==null||p.call(this,De()),this.parser.parse(this.text)}async render(a,f){await this.renderer.draw(this.text,a,f,this)}getParser(){return this.parser}getType(){return this.type}}const Edt=async i=>{const a=hW(i,De());try{gdt(a)}catch{const p=X9e(a);if(!p)throw new rIt(`Diagram ${a} not found.`);const{id:v,diagram:m}=await p();RW(v,m)}return new XOt(i)};let Tdt=[];const OLe=i=>{Tdt.push(i)},NLe=()=>{Tdt.forEach(i=>{i()}),Tdt=[]};var PLe=wIt(Object.keys,Object);const FLe=PLe;var BLe=Object.prototype,RLe=BLe.hasOwnProperty;function QOt(i){if(!vW(i))return FLe(i);var a=[];for(var f in Object(i))RLe.call(i,f)&&f!="constructor"&&a.push(f);return a}var jLe=JE(Jw,"DataView");const _dt=jLe;var $Le=JE(Jw,"Promise");const Cdt=$Le;var zLe=JE(Jw,"Set");const YA=zLe;var qLe=JE(Jw,"WeakMap");const Sdt=qLe;var ZOt="[object Map]",HLe="[object Object]",JOt="[object Promise]",tNt="[object Set]",eNt="[object WeakMap]",nNt="[object DataView]",VLe=ZE(_dt),GLe=ZE(GN),ULe=ZE(Cdt),WLe=ZE(YA),KLe=ZE(Sdt),c9=QE;(_dt&&c9(new _dt(new ArrayBuffer(1)))!=nNt||GN&&c9(new GN)!=ZOt||Cdt&&c9(Cdt.resolve())!=JOt||YA&&c9(new YA)!=tNt||Sdt&&c9(new Sdt)!=eNt)&&(c9=function(i){var a=QE(i),f=a==HLe?i.constructor:void 0,p=f?ZE(f):"";if(p)switch(p){case VLe:return nNt;case GLe:return ZOt;case ULe:return JOt;case WLe:return tNt;case KLe:return eNt}return a});const XA=c9;var YLe="[object Map]",XLe="[object Set]",QLe=Object.prototype,ZLe=QLe.hasOwnProperty;function eP(i){if(i==null)return!0;if(tk(i)&&(Of(i)||typeof i=="string"||typeof i.splice=="function"||RA(i)||mW(i)||BA(i)))return!i.length;var a=XA(i);if(a==YLe||a==XLe)return!i.size;if(vW(i))return!QOt(i).length;for(var f in i)if(ZLe.call(i,f))return!1;return!0}const JLe="graphics-document document";function tMe(i,a){i.attr("role",JLe),a!==""&&i.attr("aria-roledescription",a)}function eMe(i,a,f,p){if(i.insert!==void 0){if(f){const v=`chart-desc-${p}`;i.attr("aria-describedby",v),i.insert("desc",":first-child").attr("id",v).text(f)}if(a){const v=`chart-title-${p}`;i.attr("aria-labelledby",v),i.insert("title",":first-child").attr("id",v).text(a)}}}const rNt=["graph","flowchart","flowchart-v2","flowchart-elk","stateDiagram","stateDiagram-v2"],nMe=5e4,rMe="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",iMe="sandbox",sMe="loose",aMe="http://www.w3.org/2000/svg",oMe="http://www.w3.org/1999/xlink",cMe="http://www.w3.org/1999/xhtml",uMe="100%",lMe="100%",hMe="border:0;margin:0;",fMe="margin:0",dMe="allow-top-navigation-by-user-activation allow-popups",gMe='The "iframe" tag is not supported by your browser.',pMe=["foreignobject"],bMe=["dominant-baseline"];async function vMe(i,a){pdt();try{await Edt(i)}catch(f){if(a!=null&&a.suppressErrors)return!1;throw f}return!0}const wMe=function(i){let a=i;return a=a.replace(/style.*:\S*#.*;/g,function(f){return f.substring(0,f.length-1)}),a=a.replace(/classDef.*:\S*#.*;/g,function(f){return f.substring(0,f.length-1)}),a=a.replace(/#\w+;/g,function(f){const p=f.substring(1,f.length-1);return/^\+?\d+$/.test(p)?"fl°°"+p+"¶ß":"fl°"+p+"¶ß"}),a},nP=function(i){return i.replace(/fl°°/g,"&#").replace(/fl°/g,"&").replace(/¶ß/g,";")},iNt=(i,a,f=[])=>`
.${i} ${a} { ${f.join(" !important; ")} !important; }`,mMe=(i,a,f={})=>{var v;let p="";if(i.themeCSS!==void 0&&(p+=`
${i.themeCSS}`),i.fontFamily!==void 0&&(p+=`
:root { --mermaid-font-family: ${i.fontFamily}}`),i.altFontFamily!==void 0&&(p+=`
:root { --mermaid-alt-font-family: ${i.altFontFamily}}`),!eP(f)&&rNt.includes(a)){const C=i.htmlLabels||((v=i.flowchart)==null?void 0:v.htmlLabels)?["> *","span"]:["rect","polygon","ellipse","circle","path"];for(const A in f){const P=f[A];eP(P.styles)||C.forEach(F=>{p+=iNt(P.id,F,P.styles)}),eP(P.textStyles)||(p+=iNt(P.id,"tspan",P.textStyles))}}return p},yMe=(i,a,f,p)=>{const v=mMe(i,a,f),m=PSe(a,v,i.themeVariables);return udt(eSe(`${p}{${m}}`),rSe)},xMe=(i="",a,f)=>{let p=i;return!f&&!a&&(p=p.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),p=nP(p),p=p.replace(/<br>/g,"<br/>"),p},kMe=(i="",a)=>{var v,m;const f=(m=(v=a==null?void 0:a.viewBox)==null?void 0:v.baseVal)!=null&&m.height?a.viewBox.baseVal.height+"px":lMe,p=btoa('<body style="'+fMe+'">'+i+"</body>");return`<iframe style="width:${uMe};height:${f};${hMe}" src="data:text/html;base64,${p}" sandbox="${dMe}">
${gMe}
</iframe>`},sNt=(i,a,f,p,v)=>{const m=i.append("div");m.attr("id",f),p&&m.attr("style",p);const b=m.append("svg").attr("id",a).attr("width","100%").attr("xmlns",aMe);return v&&b.attr("xmlns:xlink",v),b.append("g"),i};function aNt(i,a){return i.append("iframe").attr("id",a).attr("style","width: 100%; height: 100%;").attr("sandbox","")}const EMe=(i,a,f,p)=>{var v,m,b;(v=i.getElementById(a))==null||v.remove(),(m=i.getElementById(f))==null||m.remove(),(b=i.getElementById(p))==null||b.remove()},TMe=async function(i,a,f){var Ct,tt,Pt,pt;pdt(),OW(),YOt(a,{},IW);const p=to.detectInit(a);p&&IW(p);const v=De();Wt.debug(v),a.length>((v==null?void 0:v.maxTextSize)??nMe)&&(a=rMe),a=a.replace(/\r\n?/g,`
`),a=a.replace(/<(\w+)([^>]*)>/g,(Ft,X,Rt)=>"<"+X+Rt.replace(/="([^"]*)"/g,"='$1'")+">");const m="#"+i,b="i"+i,E="#"+b,C="d"+i,A="#"+C;let P=xr("body");const F=v.securityLevel===iMe,j=v.securityLevel===sMe,R=v.fontFamily;if(f!==void 0){if(f&&(f.innerHTML=""),F){const Ft=aNt(xr(f),b);P=xr(Ft.nodes()[0].contentDocument.body),P.node().style.margin=0}else P=xr(f);sNt(P,i,C,`font-family: ${R}`,oMe)}else{if(EMe(document,i,C,b),F){const Ft=aNt(xr("body"),b);P=xr(Ft.nodes()[0].contentDocument.body),P.node().style.margin=0}else P=xr("body");sNt(P,i,C)}a=wMe(a);let H,Y;try{H=await Edt(a)}catch(Ft){H=new XOt("error"),Y=Ft}const rt=P.select(A).node(),J=H.type,it=rt.firstChild,ft=it.firstChild,Tt=rNt.includes(J)?H.renderer.getClasses(a,H):{},kt=yMe(v,J,Tt,m),mt=document.createElement("style");mt.innerHTML=kt,it.insertBefore(mt,ft);try{await H.renderer.draw(a,i,ZIt,H)}catch(Ft){throw SSe.draw(a,i,ZIt),Ft}const ct=P.select(`${A} svg`),yt=(tt=(Ct=H.db).getAccTitle)==null?void 0:tt.call(Ct),st=(pt=(Pt=H.db).getAccDescription)==null?void 0:pt.call(Pt);CMe(J,ct,yt,st),P.select(`[id="${i}"]`).selectAll("foreignobject > *").attr("xmlns",cMe);let xt=P.select(A).node().innerHTML;if(Wt.debug("config.arrowMarkerAbsolute",v.arrowMarkerAbsolute),xt=xMe(xt,F,u1(v.arrowMarkerAbsolute)),F){const Ft=P.select(A+" svg").node();xt=kMe(xt,Ft)}else j||(xt=eW.sanitize(xt,{ADD_TAGS:pMe,ADD_ATTR:bMe}));if(NLe(),Y)throw Y;const dt=xr(F?E:A).node();return dt&&"remove"in dt&&dt.remove(),{svg:xt,bindFunctions:H.db.bindFunctions}};function _Me(i={}){var f;i!=null&&i.fontFamily&&!((f=i.themeVariables)!=null&&f.fontFamily)&&(i.themeVariables||(i.themeVariables={}),i.themeVariables.fontFamily=i.fontFamily),sSe(i),i!=null&&i.theme&&i.theme in m5?i.themeVariables=m5[i.theme].getThemeVariables(i.themeVariables):i&&(i.themeVariables=m5.default.getThemeVariables(i.themeVariables));const a=typeof i=="object"?iSe(i):tOt();zft(a.logLevel),pdt()}function CMe(i,a,f,p){tMe(a,i),eMe(a,f,p,a.attr("id"))}const J1=Object.freeze({render:TMe,parse:vMe,parseDirective:FW,getDiagramFromText:Edt,initialize:_Me,getConfig:De,setConfig:eOt,getSiteConfig:tOt,updateSiteConfig:aSe,reset:()=>{OW()},globalReset:()=>{OW(i9)},defaultConfig:i9});zft(De().logLevel),OW(De());const SMe=async()=>{Wt.debug("Loading registered diagrams");const a=(await Promise.allSettled(Object.entries(OA).map(async([f,{detector:p,loader:v}])=>{if(v)try{gdt(f)}catch{try{const{diagram:b,id:E}=await v();RW(E,b,p)}catch(b){throw Wt.error(`Failed to load external diagram with key ${f}. Removing from detectors.`),delete OA[f],b}}}))).filter(f=>f.status==="rejected");if(a.length>0){Wt.error(`Failed to load ${a.length} external diagrams`);for(const f of a)Wt.error(f);throw new Error(`Failed to load ${a.length} external diagrams`)}},AMe=(i,a,f)=>{Wt.warn(i),qIt(i)?(f&&f(i.str,i.hash),a.push({...i,message:i.str,error:i})):(f&&f(i),i instanceof Error&&a.push({str:i.message,message:i.message,hash:i.name,error:i}))},oNt=async function(i={querySelector:".mermaid"}){try{await LMe(i)}catch(a){if(qIt(a)&&Wt.error(a.str),Pb.parseError&&Pb.parseError(a),!i.suppressErrors)throw Wt.error("Use the suppressErrors option to suppress these errors"),a}},LMe=async function({postRenderCallback:i,querySelector:a,nodes:f}={querySelector:".mermaid"}){const p=J1.getConfig();Wt.debug(`${i?"":"No "}Callback function found`);let v;if(f)v=f;else if(a)v=document.querySelectorAll(a);else throw new Error("Nodes and querySelector are both undefined");Wt.debug(`Found ${v.length} diagrams`),(p==null?void 0:p.startOnLoad)!==void 0&&(Wt.debug("Start On Load: "+(p==null?void 0:p.startOnLoad)),J1.updateSiteConfig({startOnLoad:p==null?void 0:p.startOnLoad}));const m=new to.initIdGenerator(p.deterministicIds,p.deterministicIDSeed);let b;const E=[];for(const C of Array.from(v)){Wt.info("Rendering diagram: "+C.id);/*! Check if previously processed */if(C.getAttribute("data-processed"))continue;C.setAttribute("data-processed","true");const A=`mermaid-${m.next()}`;b=C.innerHTML,b=wA(to.entityDecode(b)).trim().replace(/<br\s*\/?>/gi,"<br/>");const P=to.detectInit(b);P&&W
* Wait for document loaded before starting the execution
*/window.addEventListener("load",uNt,!1)}const IMe=function(i){Pb.parseError=i},HW=[];let Adt=!1;const lNt=async()=>{if(!Adt){for(Adt=!0;HW.length>0;){const i=HW.shift();if(i)try{await i()}catch(a){Wt.error("Error executing queue",a)}}Adt=!1}},OMe=async(i,a)=>new Promise((f,p)=>{const v=()=>new Promise((m,b)=>{J1.parse(i,a).then(E=>{m(E),f(E)},E=>{var C;Wt.error("Error parsing",E),(C=Pb.parseError)==null||C.call(Pb,E),b(E),p(E)})});HW.push(v),lNt().catch(p)}),hNt=(i,a,f)=>new Promise((p,v)=>{const m=()=>new Promise((b,E)=>{J1.render(i,a,f).then(C=>{b(C),p(C)},C=>{var A;Wt.error("Error parsing",C),(A=Pb.parseError)==null||A.call(Pb,C),E(C),v(C)})});HW.push(m),lNt().catch(v)}),Pb={startOnLoad:!0,mermaidAPI:J1,parse:OMe,render:hNt,init:MMe,run:oNt,registerExternalDiagrams:DMe,initialize:cNt,parseError:void 0,contentLoaded:uNt,setParseErrorHandler:IMe,detectType:hW};var VW=function(){var i=function(Ga,_r,qr,Oi){for(qr=qr||{},Oi=Ga.length;Oi--;qr[Ga[Oi]]=_r);return qr},a=[1,6],f=[1,7],p=[1,8],v=[1,9],m=[1,16],b=[1,11],E=[1,12],C=[1,13],A=[1,14],P=[1,15],F=[1,27],j=[1,33],R=[1,34],H=[1,35],Y=[1,36],rt=[1,37],J=[1,72],it=[1,73],ft=[1,74],Tt=[1,75],kt=[1,76],mt=[1,77],ct=[1,78],yt=[1,38],st=[1,39],xt=[1,40],ht=[1,41],dt=[1,42],Ct=[1,43],tt=[1,44],Pt=[1,45],pt=[1,46],Ft=[1,47],X=[1,48],Rt=[1,49],Bt=[1,50],vt=[1,51],Ot=[1,52],Vt=[1,53],qe=[1,54],_n=[1,55],Te=[1,56],Wn=[1,57],Ae=[1,59],ne=[1,60],ke=[1,61],Ve=[1,62],Ee=[1,63],He=[1,64],Ce=[1,65],$e=[1,66],ye=[1,67],fn=[1,68],Yt=[1,69],Mi=[24,52],qt=[24,44,46,47,48,49,50,51,52,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],zi=[15,24,44,46,47,48,49,50,51,52,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],Se=[1,94],ki=[1,95],Ri=[1,96],pi=[1,97],bi=[15,24,52],dn=[7,8,9,10,18,22,25,26,27,28],Nn=[15,24,43,52],Wr=[15,24,43,52,86,87,89,90],Li=[15,43],is=[44,46,47,48,49,50,51,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],Ts={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,directive:6,direction_tb:7,direction_bt:8,direction_rl:9,direction_lr:10,graphConfig:11,openDirective:12,typeDirective:13,closeDirective:14,NEWLINE:15,":":16,argDirective:17,open_directive:18,type_directive:19,arg_directive:20,close_directive:21,C4_CONTEXT:22,statements:23,EOF:24,C4_CONTAINER:25,C4_COMPONENT:26,C4_DYNAMIC:27,C4_DEPLOYMENT:28,otherStatements:29,diagramStatements:30,otherStatement:31,title:32,accDescription:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,boundaryStatement:39,boundaryStartStatement:40,boundaryStopStatement:41,boundaryStart:42,LBRACE:43,ENTERPRISE_BOUNDARY:44,attributes:45,SYSTEM_BOUNDARY:46,BOUNDARY:47,CONTAINER_BOUNDARY:48,NODE:49,NODE_L:50,NODE_R:51,RBRACE:52,diagramStatement:53,PERSON:54,PERSON_EXT:55,SYSTEM:56,SYSTEM_DB:57,SYSTEM_QUEUE:58,SYSTEM_EXT:59,SYSTEM_EXT_DB:60,SYSTEM_EXT_QUEUE:61,CONTAINER:62,CONTAINER_DB:63,CONTAINER_QUEUE:64,CONTAINER_EXT:65,CONTAINER_EXT_DB:66,CONTAINER_EXT_QUEUE:67,COMPONENT:68,COMPONENT_DB:69,COMPONENT_QUEUE:70,COMPONENT_EXT:71,COMPONENT_EXT_DB:72,COMPONENT_EXT_QUEUE:73,REL:74,BIREL:75,REL_U:76,REL_D:77,REL_L:78,REL_R:79,REL_B:80,REL_INDEX:81,UPDATE_EL_STYLE:82,UPDATE_REL_STYLE:83,UPDATE_LAYOUT_CONFIG:84,attribute:85,STR:86,STR_KEY:87,STR_VALUE:88,ATTRIBUTE:89,ATTRIBUTE_EMPTY:90,$accept:0,$end:1},terminals_:{2:"error",7:"direction_tb",8:"direction_bt",9:"direction_rl",10:"direction_lr",15:"NEWLINE",16:":",18:"open_directive",19:"type_directive",20:"arg_directive",21:"close_directive",22:"C4_CONTEXT",24:"EOF",25:"C4_CONTAINER",26:"C4_COMPONENT",27:"C4_DYNAMIC",28:"C4_DEPLOYMENT",32:"title",33:"accDescription",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",43:"LBRACE",44:"ENTERPRISE_BOUNDARY",46:"SYSTEM_BOUNDARY",47:"BOUNDARY",48:"CONTAINER_BOUNDARY",49:"NODE",50:"NODE_L",51:"NODE_R",52:"RBRACE",54:"PERSON",55:"PERSON_EXT",56:"SYSTEM",57:"SYSTEM_DB",58:"SYSTEM_QUEUE",59:"SYSTEM_EXT",60:"SYST
`+No.showPosition()+`
Expecting `+Ke.join(", ")+", got '"+(this.terminals_[Os]||Os)+"'":kr="Parse error on line "+(Mc+1)+": Unexpected "+(Os==T0?"end of input":"'"+(this.terminals_[Os]||Os)+"'"),this.parseError(kr,{text:No.match,token:this.terminals_[Os]||Os,line:No.yylineno,loc:Pu,expected:Ke})}if(Fu[0]instanceof Array&&Fu.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Tl+", token: "+Os);switch(Fu[0]){case 1:Oi.push(Os),Js.push(No.yytext),Vn.push(No.yylloc),Oi.push(Fu[1]),Os=null,bp=No.yyleng,Er=No.yytext,Mc=No.yylineno,Pu=No.yylloc;break;case 2:if(ll=this.productions_[Fu[1]][1],nd.$=Js[Js.length-ll],nd._$={first_line:Vn[Vn.length-(ll||1)].first_line,last_line:Vn[Vn.length-1].last_line,first_column:Vn[Vn.length-(ll||1)].first_column,last_column:Vn[Vn.length-1].last_column},lo&&(nd._$.range=[Vn[Vn.length-(ll||1)].range[0],Vn[Vn.length-1].range[1]]),zo=this.performAction.apply(nd,[Er,bp,Mc,ta.yy,Fu[1],Js,Vn].concat(Fd)),typeof zo<"u")return zo;ll&&(Oi=Oi.slice(0,-1*ll*2),Js=Js.slice(0,-1*ll),Vn=Vn.slice(0,-1*ll)),Oi.push(this.productions_[Fu[1]][0]),Js.push(nd.$),Vn.push(nd._$),Vi=Xc[Oi[Oi.length-2]][Oi[Oi.length-1]],Oi.push(Vi);break;case 3:return!0}}return!0}},Aa=function(){var Ga={EOF:1,parseError:function(qr,Oi){if(this.yy.parser)this.yy.parser.parseError(qr,Oi);else throw new Error(qr)},setInput:function(_r,qr){return this.yy=qr||this.yy||{},this._input=_r,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var _r=this._input[0];this.yytext+=_r,this.yyleng++,this.offset++,this.match+=_r,this.matched+=_r;var qr=_r.match(/(?:\r\n?|\n).*/g);return qr?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),_r},unput:function(_r){var qr=_r.length,Oi=_r.split(/(?:\r\n?|\n)/g);this._input=_r+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-qr),this.offset-=qr;var gr=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),Oi.length-1&&(this.yylineno-=Oi.length-1);var Js=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:Oi?(Oi.length===gr.length?this.yylloc.first_column:0)+gr[gr.length-Oi.length].length-Oi[0].length:this.yylloc.first_column-qr},this.options.ranges&&(this.yylloc.range=[Js[0],Js[0]+this.yyleng-qr]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(_r){this.unput(this.match.slice(_r))},pastInput:function(){var _r=this.matched.substr(0,this.matched.length-this.match.length);return(_r.length>20?"...":"")+_r.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var _r=this.match;return _r.length<20&&(_r+=this._input.substr(0,20-_r.length)),(_r.substr(0,20)+(_r.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var _r=this.pastInput(),qr=new Array(_r.length+1).join("-");return _r+this.upcomingInput()+`
`+qr+"^"},test_match:function(_r,qr){var Oi,gr,Js;if(this.options.backtrack_lexer&&(Js={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&&(Js.yylloc.range=this.yylloc.range.slice(0))),gr=_r[0].match(/(?:\r\n?|\n).*/g),gr&&(this.yylineno+=gr.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:gr?gr[gr.length-1].length-gr[gr.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+_r[0].length},this.yytext+=_r[0],this.match+=_r[0],this.matches=_r,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(_r[0].length),this.matched+=_r[0],Oi=this.performAction.call(this,this.yy,this,qr,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Oi)return Oi;if(this._backtrack){for(var Vn in Js)this[Vn]=Js[Vn];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var _r,qr,Oi,gr;this._more||(this.yytext="",this.match="");for(var Js=this._currentRules(),Vn=0;Vn<Js.length;Vn++)if(Oi=this._input.match(this.rules[Js[Vn]]),Oi&&(!qr||Oi[0].length>qr[0].length)){if(qr=Oi,gr=Vn,this.options.backtrack_lexer){if(_r=this.test_match(Oi,Js[Vn]),_r!==!1)return _r;if(this._backtrack){qr=!1;continue}else return!1}else if(!this.options.flex)break}return qr?(_r=this.test_match(qr,Js[gr]),_r!==!1?_r:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var qr=this.next();return qr||this.lex()},begin:function(qr){this.conditionStack.push(qr)},popState:function(){var qr=this.conditionStack.length-1;return qr>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(qr){return qr=this.conditionStack.length-1-Math.abs(qr||0),qr>=0?this.conditionStack[qr]:"INITIAL"},pushState:function(qr){this.begin(qr)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(qr,Oi,gr,Js){switch(gr){case 0:return this.begin("open_directive"),18;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 10;case 5:return this.begin("type_directive"),19;case 6:return this.popState(),this.begin("arg_directive"),16;case 7:return this.popState(),this.popState(),21;case 8:return 20;case 9:return 32;case 10:return 33;case 11:return this.begin("acc_title"),34;case 12:return this.popState(),"acc_title_value";case 13:return this.begin("acc_descr"),36;case 14:return this.popState(),"acc_descr_value";case 15:this.begin("acc_descr_multiline");break;case 16:this.popState();break;case 17:return"acc_descr_multiline_value";case 18:break;case 19:c;break;case 20:return 15;case 21:break;case 22:return 22;case 23:return 25;case 24:return 26;case 25:return 27;case 26:return 28;case 27:return this.begin("person_ext"),55;case 28:return this.begin("person"),54;case 29:return this.begin("system_ext_queue"),61;case 30:return this.begin("system_ext_db"),60;case 31:return this.begin("system_ext"),59;case 32:return this.begin("system_queue"),58;case 33:return this.begin("system_db"),57;case 34:return this.begin("system"),56;case 35:return this.begin("boundary"),47;case 36:return this.begin("enterprise_boundary"),44;case 37:return this.begin("system_boundary"),46;case 38:return this.begin("container_ext_queue"),67;case 39:return this.begin("container_ext_db"),66;case 40:return this.begin("container_ext"),65;case 41:return this.begin("container_queue"),64;case 42:return this.begin("container_db"),63;case 43:return this.begin("container"),62;case 44:return this.begin("container_boundary"),48;case 45:return this.begin("component_ext_queue"),73;case 46:return this.begin("component_ext_db"),72;case 47:return this.begin("component_ext"),71;case 48:return this.begin("component_queue"),70;case 49:return this.begin("component_db"),69;case 50:return this.begin("component"),68;case 51:return this.begin("node"),49;case 52:return this.begin("node"),49;case 53:return this.begin("node_l"),50;case 54:return this.begin("node_r"),51;case 55:return this.begin("rel"),74;case 56:return this.begin("birel"),75;case 57:return this.begin("rel_u"),76;case 58:return this.begin("rel_u"),76;case 59:return this.begin("rel_d"),77;case 60:return this.begin("rel_d"),77;case 61:return this.begin("rel_l"),78;case 62:return this.begin("rel_l"),78;case 63:return this.begin("rel_r"),79;case 64:return this.begin("rel_r"),79;case 65:return this.begin("rel_b"),80;case 66:return this.begin("rel_index"),81;case 67:return this.begin("update_el_style"),82;case 68:return this.begin("update_rel_style"),83;case 69:return this.begin("update_layout_config"),84;case 70:return"EOF_IN_STRUCT";case 71:return this.begin("attribute"),"ATTRIBUTE_EMPTY";case 72:this.begin("attribute");break;case 73:this.popState(),this.popState();break;case 74:return 90;case 75:break;case 76:return 90;case 77:this.begin("string");break;case 78:this.popState();break;case 79:return"STR";case 80:this.begin("string_kv");break;case 81:return this.begin("string_kv_key"),"STR_KEY";case 82:this.popState(),this.begin("string_kv_value");break;case 83:return"STR_VALUE";case 84:this.popState(),this.popState();break;case 85:return"STR";case 86:return"LBRACE";case 87:return"RBRACE";case 88:return"SPACE";case 89:return"EOL";case 90:return 24}},rules:[/^(?:%%\{)/,/^(?:.
stroke: ${i.personBorder};
fill: ${i.personBkg};
}
`,init:i=>{ENt.setConf(i.c4)}}},Symbol.toStringTag,{value:"Module"}));var Pdt=function(){var i=function(zb,os,As,ma){for(As=As||{},ma=zb.length;ma--;As[zb[ma]]=os);return As},a=[1,9],f=[1,7],p=[1,6],v=[1,8],m=[1,20,21,22,23,38,45,47,49,53,69,92,93,94,95,96,97,110,113,114,117,119,122,123,124,129,130,131,132],b=[2,10],E=[1,20],C=[1,21],A=[1,22],P=[1,23],F=[1,30],j=[1,32],R=[1,33],H=[1,34],Y=[1,56],rt=[1,55],J=[1,36],it=[1,37],ft=[1,38],Tt=[1,39],kt=[1,40],mt=[1,51],ct=[1,53],yt=[1,49],st=[1,54],xt=[1,50],ht=[1,57],dt=[1,52],Ct=[1,58],tt=[1,59],Pt=[1,41],pt=[1,42],Ft=[1,43],X=[1,44],Rt=[1,62],Bt=[1,67],vt=[1,20,21,22,23,38,43,45,47,49,53,69,92,93,94,95,96,97,110,113,114,117,119,122,123,124,129,130,131,132],Ot=[1,71],Vt=[1,70],qe=[1,72],_n=[20,21,23,84,86],Te=[1,98],Wn=[1,103],Ae=[1,102],ne=[1,99],ke=[1,95],Ve=[1,101],Ee=[1,97],He=[1,104],Ce=[1,100],$e=[1,105],ye=[1,96],fn=[20,21,22,23,84,86],Yt=[20,21,22,23,55,84,86],Mi=[20,21,22,23,40,53,55,57,59,61,63,65,67,69,72,74,76,77,79,84,86,97,110,113,114,117,119,122,123,124],qt=[20,21,23],zi=[20,21,23,53,69,84,86,97,110,113,114,117,119,122,123,124],Se=[1,12,20,21,22,23,24,38,43,45,47,49,53,69,92,93,94,95,96,97,110,113,114,117,119,122,123,124,129,130,131,132],ki=[53,69,97,110,113,114,117,119,122,123,124],Ri=[1,134],pi=[1,133],bi=[1,141],dn=[1,155],Nn=[1,156],Wr=[1,157],Li=[1,158],is=[1,143],Ts=[1,145],Aa=[1,149],Xi=[1,150],Ga=[1,151],_r=[1,152],qr=[1,153],Oi=[1,154],gr=[1,159],Js=[1,160],Vn=[1,139],Xc=[1,140],Er=[1,147],Mc=[1,142],bp=[1,146],fm=[1,144],T0=[20,21,22,23,38,43,45,47,49,53,69,92,93,94,95,96,97,110,113,114,117,119,122,123,124,129,130,131,132],Fd=[1,162],No=[20,21,22,23,26,53,69,97,113,114,117,119,122,123,124],ta=[1,182],bu=[1,178],Pu=[1,179],lo=[1,183],mo=[1,180],Os=[1,181],Tl=[12,21,22,24],Fu=[86,124,127],zo=[20,21,22,23,24,26,38,40,43,53,69,84,92,93,94,95,96,97,98,113,117,119,122,123,124],nd=[22,114],sf=[42,58,60,62,64,66,71,73,75,76,78,80,124,125,126],ll=[1,250],Vi=[1,248],Ke=[1,252],kr=[1,246],ni=[1,247],eo=[1,249],Dc=[1,251],Ju=[1,253],Qo=[1,270],jf=[20,21,23,114],rh=[20,21,22,23,69,92,113,114,117,118,119,120],dm={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,directive:5,openDirective:6,typeDirective:7,closeDirective:8,separator:9,":":10,argDirective:11,open_directive:12,type_directive:13,arg_directive:14,close_directive:15,graphConfig:16,document:17,line:18,statement:19,SEMI:20,NEWLINE:21,SPACE:22,EOF:23,GRAPH:24,NODIR:25,DIR:26,FirstStmtSeperator:27,ending:28,endToken:29,spaceList:30,spaceListNewline:31,verticeStatement:32,styleStatement:33,linkStyleStatement:34,classDefStatement:35,classStatement:36,clickStatement:37,subgraph:38,textNoTags:39,SQS:40,text:41,SQE:42,end:43,direction:44,acc_title:45,acc_title_value:46,acc_descr:47,acc_descr_value:48,acc_descr_multiline_value:49,link:50,node:51,styledVertex:52,AMP:53,vertex:54,STYLE_SEPARATOR:55,idString:56,DOUBLECIRCLESTART:57,DOUBLECIRCLEEND:58,PS:59,PE:60,"(-":61,"-)":62,STADIUMSTART:63,STADIUMEND:64,SUBROUTINESTART:65,SUBROUTINEEND:66,VERTEX_WITH_PROPS_START:67,"NODE_STRING[field]":68,COLON:69,"NODE_STRING[value]":70,PIPE:71,CYLINDERSTART:72,CYLINDEREND:73,DIAMOND_START:74,DIAMOND_STOP:75,TAGEND:76,TRAPSTART:77,TRAPEND:78,INVTRAPSTART:79,INVTRAPEND:80,linkStatement:81,arrowText:82,TESTSTR:83,START_LINK:84,edgeText:85,LINK:86,edgeTextToken:87,STR:88,MD_STR:89,textToken:90,keywords:91,STYLE:92,LINKSTYLE:93,CLASSDEF:94,CLASS:95,CLICK:96,DOWN:97,UP:98,textNoTagsToken:99,stylesOpt:100,"idString[vertex]":101,"idString[class]":102,CALLBACKNAME:103,CALLBACKARGS:104,HREF:105,LINK_TARGET:106,"STR[link]":107,"STR[tooltip]":108,alphaNum:109,DEFAULT:110,numList:111,INTERPOLATE:112,NUM:113,COMMA:114,style:115,styleComponent:116,NODE_STRING:117,UNIT:118,BRKT:119,PCT:120,idStringToken:121,MINUS:122,MULT:123,UNICODE_TEXT:124,TEXT:125,TAGSTART:126,EDGE_TEXT:127,alphaNumToken:128,direction_tb:129,direction_bt:130,direction_rl:131,direction_lr:132,$accept:0,$end:1},terminals_:{2:"error",10:":",12:"open_directive",13:"type_directive",14:"arg_directive",15:"close_directive",20:"SEMI",21:"NEWLINE",22:"SPACE",23:"EOF
`+au.showPosition()+`
Expecting `+ou.join(", ")+", got '"+(this.terminals_[$f]||$f)+"'":j5="Parse error on line "+(af+1)+": Unexpected "+($f==gm?"end of input":"'"+(this.terminals_[$f]||$f)+"'"),this.parseError(j5,{text:au.match,token:this.terminals_[$f]||$f,line:au.yylineno,loc:vp,expected:ou})}if(Bd[0]instanceof Array&&Bd.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ov+", token: "+$f);switch(Bd[0]){case 1:ma.push($f),Qc.push(au.yytext),me.push(au.yylloc),ma.push(Bd[1]),$f=null,fk=au.yyleng,Oe=au.yytext,af=au.yylineno,vp=au.yylloc;break;case 2:if(wg=this.productions_[Bd[1]][1],cv.$=Qc[Qc.length-wg],cv._$={first_line:me[me.length-(wg||1)].first_line,last_line:me[me.length-1].last_line,first_column:me[me.length-(wg||1)].first_column,last_column:me[me.length-1].last_column},L9&&(cv._$.range=[me[me.length-(wg||1)].range[0],me[me.length-1].range[1]]),E3=this.performAction.apply(cv,[Oe,fk,af,vg.yy,Bd[1],Qc,me].concat(A9)),typeof E3<"u")return E3;wg&&(ma=ma.slice(0,-1*wg*2),Qc=Qc.slice(0,-1*wg),me=me.slice(0,-1*wg)),ma.push(this.productions_[Bd[1]][0]),Qc.push(cv.$),me.push(cv._$),R5=bg[ma[ma.length-2]][ma[ma.length-1]],ma.push(R5);break;case 3:return!0}}return!0}},S9=function(){var zb={EOF:1,parseError:function(As,ma){if(this.yy.parser)this.yy.parser.parseError(As,ma);else throw new Error(As)},setInput:function(os,As){return this.yy=As||this.yy||{},this._input=os,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var os=this._input[0];this.yytext+=os,this.yyleng++,this.offset++,this.match+=os,this.matched+=os;var As=os.match(/(?:\r\n?|\n).*/g);return As?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),os},unput:function(os){var As=os.length,ma=os.split(/(?:\r\n?|\n)/g);this._input=os+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-As),this.offset-=As;var vi=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),ma.length-1&&(this.yylineno-=ma.length-1);var Qc=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:ma?(ma.length===vi.length?this.yylloc.first_column:0)+vi[vi.length-ma.length].length-ma[0].length:this.yylloc.first_column-As},this.options.ranges&&(this.yylloc.range=[Qc[0],Qc[0]+this.yyleng-As]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(os){this.unput(this.match.slice(os))},pastInput:function(){var os=this.matched.substr(0,this.matched.length-this.match.length);return(os.length>20?"...":"")+os.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var os=this.match;return os.length<20&&(os+=this._input.substr(0,20-os.length)),(os.substr(0,20)+(os.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var os=this.pastInput(),As=new Array(os.length+1).join("-");return os+this.upcomingInput()+`
`+As+"^"},test_match:function(os,As){var ma,vi,Qc;if(this.options.backtrack_lexer&&(Qc={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&&(Qc.yylloc.range=this.yylloc.range.slice(0))),vi=os[0].match(/(?:\r\n?|\n).*/g),vi&&(this.yylineno+=vi.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:vi?vi[vi.length-1].length-vi[vi.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+os[0].length},this.yytext+=os[0],this.match+=os[0],this.matches=os,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(os[0].length),this.matched+=os[0],ma=this.performAction.call(this,this.yy,this,As,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ma)return ma;if(this._backtrack){for(var me in Qc)this[me]=Qc[me];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var os,As,ma,vi;this._more||(this.yytext="",this.match="");for(var Qc=this._currentRules(),me=0;me<Qc.length;me++)if(ma=this._input.match(this.rules[Qc[me]]),ma&&(!As||ma[0].length>As[0].length)){if(As=ma,vi=me,this.options.backtrack_lexer){if(os=this.test_match(ma,Qc[me]),os!==!1)return os;if(this._backtrack){As=!1;continue}else return!1}else if(!this.options.flex)break}return As?(os=this.test_match(As,Qc[vi]),os!==!1?os:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var As=this.next();return As||this.lex()},begin:function(As){this.conditionStack.push(As)},popState:function(){var As=this.conditionStack.length-1;return As>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(As){return As=this.conditionStack.length-1-Math.abs(As||0),As>=0?this.conditionStack[As]:"INITIAL"},pushState:function(As){this.begin(As)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(As,ma,vi,Qc){switch(vi){case 0:return this.begin("open_directive"),12;case 1:return this.begin("type_directive"),13;case 2:return this.popState(),this.begin("arg_directive"),10;case 3:return this.popState(),this.popState(),15;case 4:return 14;case 5:return this.begin("acc_title"),45;case 6:return this.popState(),"acc_title_value";case 7:return this.begin("acc_descr"),47;case 8:return this.popState(),"acc_descr_value";case 9:this.begin("acc_descr_multiline");break;case 10:this.popState();break;case 11:return"acc_descr_multiline_value";case 12:this.begin("callbackname");break;case 13:this.popState();break;case 14:this.popState(),this.begin("callbackargs");break;case 15:return 103;case 16:this.popState();break;case 17:return 104;case 18:return"MD_STR";case 19:this.popState();break;case 20:this.begin("md_string");break;case 21:return"STR";case 22:this.popState();break;case 23:this.pushState("string");break;case 24:return 92;case 25:return 110;case 26:return 93;case 27:return 112;case 28:return 94;case 29:return 95;case 30:return 105;case 31:this.begin("click");break;case 32:this.popState();break;case 33:return 96;case 34:return As.lex.firstGraph()&&this.begin("dir"),24;case 35:return As.lex.firstGraph()&&this.begin("dir"),24;case 36:return As.lex.firstGraph()&&this.begin("dir"),24;case 37:return 38;case 38:return 43;case 39:return 106;case 40:return 106;case 41:return 106;case 42:return 106;case 43:return this.popState(),25;case 44:return this.popState(),26;case 45:return this.popState(),26;case 46:return this.popState(),26;case 47:return this.popState(),26;case 48:return this.popState(),26;case 49:return this.popState(),26;case 50:return this.popState(),26;case 51:return this.popState(),26;case 52:return this.popState(),26;case 53:return this.popState(),26;case 54:return 129;case 55:return 130;case 56:return 131;case 57:return 132;case 58:return 113;case 59:return 119;case 60:return 55;case 61:return 69;case 62:return 53;case 63:return 20;case 64:return 114;case 65:return 123;case 66:return this.popState(),86;case 67:return this.pushState("edgeText"),84;case 68:return 127;case 69:return this.popState(),86;case 70:return this.pushState("thickEdgeText"),84;case 71:return 127;case 72:return this.popState(),86;case 73:return this.pushState("dottedEdgeText"),84;case 74:return 127;case 75:return 86;case 76:return this.popState(),62;case 77:return"TEXT";case 78:return this.pushState("ellipseText"),61;case 79:return this.popState(),64;case 80:return this.pushState("text"),63;case 81:return this.popState(),66;case 82:return this.pushState("text"),65;case 83:return 67;case 84:return this.pushState("text"),76;case 85:return this.popState(),73;case 86:return this.pushState("text"),72;case 87:return this.popState(),58;case 88:return this.pushState("text"),57;case 89:return this.popState(),78;case 90:return this.popState(),80;case 91:return 125;case 92:return this.pushState("trapText"),77;case 93:return this.pushState("trapText"),79;case 94:return 126;case 95:return 76;case 96:return 98;case 97:return"SEP";case 98:return 97;case 99:return 123;case 100:return 119;case 101:return 53;case 102:return 117;case 103:return 122;case 104:return 124;case 105:return this.popState(),71;case 106:return this.pushState("text"),71;case 107:return this.popState(),60;case 108:return this.pushState("text"),59;case 1
`),v=0;v<p.length;v++)f.append("tspan").attr("xml:space","preserve").attr("dy","1em").attr("x","1").text(p[v]);return p3(f,a.labelStyle),f}function rBe(i){for(var a="",f=!1,p,v=0;v<i.length;++v)if(p=i[v],f){switch(p){case"n":a+=`
`;break;default:a+=p}f=!1}else p==="\\"?f=!0:a+=p;return a}function l0t(i,a,f){var p=a.label,v=i.append("g");a.labelType==="svg"?eBe(v,a):typeof p!="string"||a.labelType==="html"?u0t(v,a):nBe(v,a);var m=v.node().getBBox(),b;switch(f){case"top":b=-a.height/2;break;case"bottom":b=a.height/2-m.height;break;default:b=-m.height/2}return v.attr("transform","translate("+-m.width/2+","+b+")"),v}var h0t=function(i,a){var f=a.nodes().filter(function(m){return lFt(a,m)}),p=i.selectAll("g.cluster").data(f,function(m){return m});am(p.exit(),a).style("opacity",0).remove();var v=p.enter().append("g").attr("class","cluster").attr("id",function(m){var b=a.node(m);return b.id}).style("opacity",0).each(function(m){var b=a.node(m),E=xr(this);xr(this).append("rect");var C=E.append("g").attr("class","label");l0t(C,b,b.clusterLabelPos)});return p=p.merge(v),p=am(p,a).style("opacity",1),p.selectAll("rect").each(function(m){var b=a.node(m),E=xr(this);p3(E,b.style)}),p};function iBe(i){h0t=i}let f0t=function(i,a){var f=i.selectAll("g.edgeLabel").data(a.edges(),function(v){return hFt(v)}).classed("update",!0);f.exit().remove(),f.enter().append("g").classed("edgeLabel",!0).style("opacity",0),f=i.selectAll("g.edgeLabel"),f.each(function(v){var m=xr(this);m.select(".label").remove();var b=a.edge(v),E=l0t(m,a.edge(v),0).classed("label",!0),C=E.node().getBBox();b.labelId&&E.attr("id",b.labelId),Va(b,"width")||(b.width=C.width),Va(b,"height")||(b.height=C.height)});var p;return f.exit?p=f.exit():p=f.selectAll(null),am(p,a).style("opacity",0).remove(),f};function sBe(i){f0t=i}function dFt(i,a){return i.intersect(a)}var d0t=function(i,a,f){var p=i.selectAll("g.edgePath").data(a.edges(),function(b){return hFt(b)}).classed("update",!0),v=lBe(p,a);hBe(p,a);var m=p.merge!==void 0?p.merge(v):p;return am(m,a).style("opacity",1),m.each(function(b){var E=xr(this),C=a.edge(b);C.elem=this,C.id&&E.attr("id",C.id),fFt(E,C.class,(E.classed("update")?"update ":"")+"edgePath")}),m.selectAll("path.path").each(function(b){var E=a.edge(b);E.arrowheadId=fK("arrowhead");var C=xr(this).attr("marker-end",function(){return"url("+oBe(location.href,E.arrowheadId)+")"}).style("fill","none");am(C,a).attr("d",function(A){return cBe(a,A)}),p3(C,E.style)}),m.selectAll("defs *").remove(),m.selectAll("defs").each(function(b){var E=a.edge(b),C=f[E.arrowhead];C(xr(this),E.arrowheadId,E,"arrowhead")}),m};function aBe(i){d0t=i}function oBe(i,a){var f=i.split("#")[0];return f+"#"+a}function cBe(i,a){var f=i.edge(a),p=i.node(a.v),v=i.node(a.w),m=f.points.slice(1,f.points.length-1);return m.unshift(dFt(p,m[0])),m.push(dFt(v,m[m.length-1])),gFt(f,m)}function gFt(i,a){var f=(YE||U8e.line)().x(function(p){return p.x}).y(function(p){return p.y});return(f.curve||f.interpolate)(i.curve),f(a)}function uBe(i){var a=i.getBBox(),f=i.ownerSVGElement.getScreenCTM().inverse().multiply(i.getScreenCTM()).translate(a.width/2,a.height/2);return{x:f.e,y:f.f}}function lBe(i,a){var f=i.enter().append("g").attr("class","edgePath").style("opacity",0);return f.append("path").attr("class","path").attr("d",function(p){var v=a.edge(p),m=a.node(p.v).elem,b=g9(v.points.length).map(function(){return uBe(m)});return gFt(v,b)}),f.append("defs"),f}function hBe(i,a){var f=i.exit();am(f,a).style("opacity",0).remove()}var g0t=function(i,a,f){var p=a.nodes().filter(function(b){return!lFt(a,b)}),v=i.selectAll("g.node").data(p,function(b){return b}).classed("update",!0);v.exit().remove(),v.enter().append("g").attr("class","node").style("opacity",0),v=i.selectAll("g.node"),v.each(function(b){var E=a.node(b),C=xr(this);fFt(C,E.class,(C.classed("update")?"update ":"")+"node"),C.select("g.label").remove();var A=C.append("g").attr("class","label"),P=l0t(A,E),F=f[E.shape],j=hP(P.node().getBBox(),"width","height");E.elem=this,E.id&&C.attr("id",E.id),E.labelId&&A.attr("id",E.labelId),Va(E,"width")&&(j.width=E.width),Va(E,"height")&&(j.height=E.height),j.width+=E.paddingLeft+E.paddingRight,j.height+=E.paddingTop+E.paddingBottom,A.attr("transform","translate("+(E.paddingLeft-E.paddingRight)/2+","+(E.paddingTop-E.paddingBottom)/2+")");var R
`),b.style===void 0&&(P.style=P.style||"stroke: #333; stroke-width: 1.5px;fill:none"),P.labelStyle=P.labelStyle.replace("color:","fill:"))),P.id=E,P.class=C+" "+A,P.minlen=b.length||1,a.setEdge(f.db.lookUpDomId(b.start),f.db.lookUpDomId(b.end),P,p)})},IBe={setConf:DBe,addVertices:LFt,addEdges:MFt,getClasses:function(i,a){return Wt.info("Extracting classes"),a.db.getClasses()},draw:function(i,a,f,p){Wt.info("Drawing flowchart");const{securityLevel:v,flowchart:m}=De();let b;v==="sandbox"&&(b=xr("#i"+a));const E=xr(v==="sandbox"?b.nodes()[0].contentDocument.body:"body"),C=v==="sandbox"?b.nodes()[0].contentDocument:document;let A=p.db.getDirection();A===void 0&&(A="TD");const P=m.nodeSpacing||50,F=m.rankSpacing||50,j=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:A,nodesep:P,ranksep:F,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});let R;const H=p.db.getSubGraphs();for(let mt=H.length-1;mt>=0;mt--)R=H[mt],p.db.addVertex(R.id,R.title,"group",void 0,R.classes);const Y=p.db.getVertices();Wt.warn("Get vertices",Y);const rt=p.db.getEdges();let J=0;for(J=H.length-1;J>=0;J--){R=H[J],YLt("cluster").append("text");for(let mt=0;mt<R.nodes.length;mt++)Wt.warn("Setting subgraph",R.nodes[mt],p.db.lookUpDomId(R.nodes[mt]),p.db.lookUpDomId(R.id)),j.setParent(p.db.lookUpDomId(R.nodes[mt]),p.db.lookUpDomId(R.id))}LFt(Y,j,a,E,C,p),MFt(rt,j,p);const it=new EBe;MBe.addToRender(it),it.arrows().none=function(ct,yt,st,xt){const dt=ct.append("marker").attr("id",yt).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto").append("path").attr("d","M 0 0 L 0 0 L 0 0 z");p3(dt,st[xt+"Style"])},it.arrows().normal=function(ct,yt){ct.append("marker").attr("id",yt).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowheadPath").style("stroke-width",1).style("stroke-dasharray","1,0")};const ft=E.select(`[id="${a}"]`),Tt=E.select("#"+a+" g");for(it(Tt,j),Tt.selectAll("g.node").attr("title",function(){return p.db.getTooltip(this.id)}),p.db.indexNodes("subGraph"+J),J=0;J<H.length;J++)if(R=H[J],R.title!=="undefined"){const mt=C.querySelectorAll("#"+a+' [id="'+p.db.lookUpDomId(R.id)+'"] rect'),ct=C.querySelectorAll("#"+a+' [id="'+p.db.lookUpDomId(R.id)+'"]'),yt=mt[0].x.baseVal.value,st=mt[0].y.baseVal.value,xt=mt[0].width.baseVal.value,dt=xr(ct[0]).select(".label");dt.attr("transform",`translate(${yt+xt/2}, ${st+14})`),dt.attr("id",a+"Text");for(let Ct=0;Ct<R.classes.length;Ct++)ct[0].classList.add(R.classes[Ct])}if(!m.htmlLabels){const mt=C.querySelectorAll('[id="'+a+'"] .edgeLabel .label');for(const ct of mt){const yt=ct.getBBox(),st=C.createElementNS("http://www.w3.org/2000/svg","rect");st.setAttribute("rx",0),st.setAttribute("ry",0),st.setAttribute("width",yt.width),st.setAttribute("height",yt.height),ct.insertBefore(st,ct.firstChild)}}s9(j,ft,m.diagramPadding,m.useMaxWidth),Object.keys(Y).forEach(function(mt){const ct=Y[mt];if(ct.link){const yt=E.select("#"+a+' [id="'+p.db.lookUpDomId(mt)+'"]');if(yt){const st=C.createElementNS("http://www.w3.org/2000/svg","a");st.setAttributeNS("http://www.w3.org/2000/svg","class",ct.classes.join(" ")),st.setAttributeNS("http://www.w3.org/2000/svg","href",ct.link),st.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),v==="sandbox"?st.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):ct.linkTarget&&st.setAttributeNS("http://www.w3.org/2000/svg","target",ct.linkTarget);const xt=yt.insert(function(){return st},":first-child"),ht=yt.select(".label-container");ht&&xt.append(function(){return ht.node()});const dt=yt.select(".label");dt&&xt.append(function(){return dt.node()})}}})}};function A5(i){var a={options:{directed:i.isDirected(),multigraph:i.isMultigraph(),compound:i.isCompound()},nodes:OBe(i),edges:NBe(i)};return tf(i.graph())||(a.value=SOe(i.graph())),a}function OBe(i){return Ff(i.nodes(),function(a){var
`;break}case-3:{b=`\r
`;break}case-2:{b=a?" ":" ";break}case-1:{if(!a&&v)continue;b=" ";break}default:b=String.fromCharCode(m)}v=m===-2,p.push(b)}return p.join("")}const mje={[42]:gp,[43]:gp,[45]:gp,[48]:gp,[49]:gp,[50]:gp,[51]:gp,[52]:gp,[53]:gp,[54]:gp,[55]:gp,[56]:gp,[57]:gp,[62]:jFt},yje={[91]:ERe},xje={[-2]:k0t,[-1]:k0t,[32]:k0t},kje=Object.freeze(Object.defineProperty({__proto__:null,attentionMarkers:{null:[42,95]},contentInitial:yje,disable:{null:[]},document:mje,flow:{[35]:LRe,[42]:pK,[45]:[YFt,pK],[60]:ORe,[61]:YFt,[95]:pK,[96]:HFt,[126]:HFt},flowInitial:xje,insideSpan:{null:[y0t,fje]},string:{[38]:qFt,[92]:$Ft},text:{[-5]:T0t,[-4]:T0t,[-3]:T0t,[33]:YRe,[38]:qFt,[42]:y0t,[60]:[eRe,RRe],[91]:QRe,[92]:[SRe,$Ft],[93]:E0t,[95]:y0t,[96]:dRe}},Symbol.toStringTag,{value:"Module"}));function Eje(i={}){const a=$Be([kje].concat(i.extensions||[])),f={defined:[],lazy:{},constructs:a,content:p(KBe),document:p(XBe),flow:p(lje),string:p(dje),text:p(gje)};return f;function p(v){return m;function m(b){return bje(f,v,b)}}}const ZFt=/[\0\t\n\r]/g;function Tje(){let i=1,a="",f=!0,p;return v;function v(m,b,E){const C=[];let A,P,F,j,R;for(m=a+m.toString(b),F=0,a="",f&&(m.charCodeAt(0)===65279&&F++,f=void 0);F<m.length;){if(ZFt.lastIndex=F,A=ZFt.exec(m),j=A&&A.index!==void 0?A.index:m.length,R=m.charCodeAt(j),!A){a=m.slice(F);break}if(R===10&&F===j&&p)C.push(-3),p=void 0;else switch(p&&(C.push(-5),p=void 0),F<j&&(C.push(m.slice(F,j)),i+=j-F),R){case 0:{C.push(65533),i++;break}case 9:{for(P=Math.ceil(i/4)*4,C.push(-2);i++<P;)C.push(-1);break}case 10:{C.push(-4),i=1;break}default:p=!0,i=1}F=j+1}return E&&(p&&C.push(-5),a&&C.push(a),C.push(null)),C}}function _je(i){for(;!VFt(i););return i}function JFt(i,a){const f=Number.parseInt(i,a);return f<9||f===11||f>13&&f<32||f>126&&f<160||f>55295&&f<57344||f>64975&&f<65008||(f&65535)===65535||(f&65535)===65534||f>1114111?"�":String.fromCharCode(f)}const Cje=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function Sje(i){return i.replace(Cje,Aje)}function Aje(i,a,f){if(a)return a;if(f.charCodeAt(0)===35){const v=f.charCodeAt(1),m=v===120||v===88;return JFt(f.slice(m?2:1),m?16:10)}return x0t(f)||i}function bK(i){return!i||typeof i!="object"?"":"position"in i||"type"in i?tBt(i.position):"start"in i||"end"in i?tBt(i):"line"in i||"column"in i?_0t(i):""}function _0t(i){return eBt(i&&i.line)+":"+eBt(i&&i.column)}function tBt(i){return _0t(i&&i.start)+"-"+_0t(i&&i.end)}function eBt(i){return i&&typeof i=="number"?i:1}const nBt={}.hasOwnProperty,rBt=function(i,a,f){return typeof a!="string"&&(f=a,a=void 0),Lje(f)(_je(Eje(f).document().write(Tje()(i,a,!0))))};function Lje(i){const a={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:E(qt),autolinkProtocol:ht,autolinkEmail:ht,atxHeading:E(ye),blockQuote:E(Ve),characterEscape:ht,characterReference:ht,codeFenced:E(Ee),codeFencedFenceInfo:C,codeFencedFenceMeta:C,codeIndented:E(Ee,C),codeText:E(He,C),codeTextData:ht,data:ht,codeFlowValue:ht,definition:E(Ce),definitionDestinationString:C,definitionLabelString:C,definitionTitleString:C,emphasis:E($e),hardBreakEscape:E(fn),hardBreakTrailing:E(fn),htmlFlow:E(Yt,C),htmlFlowData:ht,htmlText:E(Yt,C),htmlTextData:ht,image:E(Mi),label:C,link:E(qt),listItem:E(Se),listItemValue:H,listOrdered:E(zi,R),listUnordered:E(zi),paragraph:E(ki),reference:_n,referenceString:C,resourceDestinationString:C,resourceTitleString:C,setextHeading:E(ye),strong:E(Ri),thematicBreak:E(bi)},exit:{atxHeading:P(),atxHeadingSequence:ct,autolink:P(),autolinkEmail:ke,autolinkProtocol:ne,blockQuote:P(),characterEscapeValue:dt,characterReferenceMarkerHexadecimal:Wn,characterReferenceMarkerNumeric:Wn,characterReferenceValue:Ae,codeFenced:P(it),codeFencedFence:J,codeFencedFenceInfo:Y,codeFencedFenceMeta:rt,codeFlowValue:dt,codeIndented:P(ft),codeText:P(Ft),codeTextData:dt,data:dt,definition:P(),definitionDestinationString:mt,definitionLabelString:Tt,definitionTitleString:kt,emphasis:P(),hardBreakEscape:P(tt),hardBreakTrailing:P(tt),htmlFlow:P(Pt),htmlFlowData:dt,htmlText:P(pt),htmlTextData:dt,image:P(Rt)
`);return wA(a)}function Ije(i){const a=Dje(i),{children:f}=rBt(a),p=[[]];let v=0;function m(b,E="normal"){b.type==="text"?b.value.split(`
`).forEach((A,P)=>{P!==0&&(v++,p.push([])),A.split(" ").forEach(F=>{F&&p[v].push({content:F,type:E})})}):(b.type==="strong"||b.type==="emphasis")&&b.children.forEach(C=>{m(C,b.type)})}return f.forEach(b=>{b.type==="paragraph"&&b.children.forEach(E=>{m(E)})}),p}function Oje(i){const{children:a}=rBt(i);function f(p){return p.type==="text"?p.value.replace(/\n/g,"<br/>"):p.type==="strong"?`<strong>${p.children.map(f).join("")}</strong>`:p.type==="emphasis"?`<em>${p.children.map(f).join("")}</em>`:p.type==="paragraph"?`<p>${p.children.map(f).join("")}</p>`:`Unsupported markdown: ${p.type}`}return a.map(f).join("")}function Nje(i){return Intl.Segmenter?[...new Intl.Segmenter().segment(i)].map(a=>a.segment):[...i]}function Pje(i,a){const f=Nje(a.content);return aBt(i,[],f,a.type)}function aBt(i,a,f,p){if(f.length===0)return[{content:a.join(""),type:p},{content:"",type:p}];const[v,...m]=f,b=[...a,v];return i([{content:b.join(""),type:p}])?aBt(i,b,m,p):(a.length===0&&v&&(a.push(v),f.shift()),[{content:a.join(""),type:p},{content:f.join(""),type:p}])}function Fje(i,a){if(i.some(({content:f})=>f.includes(`
`)))throw new Error("splitLineToFitWidth does not support newlines in the line");return C0t(i,a)}function C0t(i,a,f=[],p=[]){if(i.length===0)return p.length>0&&f.push(p),f.length>0?f:[];let v="";i[0].content===" "&&(v=" ",i.shift());const m=i.shift()??{content:" ",type:"normal"},b=[...p];if(v!==""&&b.push({content:v,type:"normal"}),b.push(m),a(b))return C0t(i,a,f,b);if(p.length>0)f.push(p),i.unshift(m);else if(m.content){const[E,C]=Pje(a,m);f.push([E]),C.content&&i.unshift(C)}return C0t(i,a,f)}function Bje(i,a){a&&i.attr("style",a)}function Rje(i,a,f,p,v=!1){const m=i.append("foreignObject"),b=m.append("xhtml:div"),E=a.label,C=a.isNode?"nodeLabel":"edgeLabel";b.html(`
<span class="${C} ${p}" `+(a.labelStyle?'style="'+a.labelStyle+'"':"")+">"+E+"</span>"),Bje(b,a.labelStyle),b.style("display","table-cell"),b.style("white-space","nowrap"),b.style("max-width",f+"px"),b.attr("xmlns","http://www.w3.org/1999/xhtml"),v&&b.attr("class","labelBkg");let A=b.node().getBoundingClientRect();return A.width===f&&(b.style("display","table"),b.style("white-space","break-spaces"),b.style("width",f+"px"),A=b.node().getBoundingClientRect()),m.style("width",A.width),m.style("height",A.height),m.node()}function oBt(i,a,f){return i.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",a*f-.1+"em").attr("dy",f+"em")}function jje(i,a,f){const p=i.append("text"),v=oBt(p,1,a);cBt(v,f);const m=v.node().getComputedTextLength();return p.remove(),m}function $je(i,a,f,p=!1){const m=a.append("g"),b=m.insert("rect").attr("class","background"),E=m.append("text").attr("y","-10.1");let C=0;for(const A of f){const P=j=>jje(m,1.1,j)<=i,F=P(A)?[A]:Fje(A,P);for(const j of F){const R=oBt(E,C,1.1);cBt(R,j),C++}}if(p){const A=E.node().getBBox(),P=2;return b.attr("x",-P).attr("y",-P).attr("width",A.width+2*P).attr("height",A.height+2*P),m.node()}else return E.node()}function cBt(i,a){i.text(""),a.forEach((f,p)=>{const v=i.append("tspan").attr("font-style",f.type==="emphasis"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",f.type==="strong"?"bold":"normal");p===0?v.text(f.content):v.text(" "+f.content)})}const vK=(i,a="",{style:f="",isTitle:p=!1,classes:v="",useHtmlLabels:m=!0,isNode:b=!0,width:E=200,addSvgBackground:C=!1}={})=>{if(Wt.info("createText",a,f,p,v,m,b,C),m){const A=Oje(a),P={isNode:b,label:nP(A).replace(/fa[blrs]?:fa-[\w-]+/g,j=>`<i class='${j.replace(":"," ")}'></i>`),labelStyle:f.replace("fill:","color:")};return Rje(i,P,E,v,C)}else{const A=Ije(a);return $je(E,i,A,C)}},Od=async(i,a,f,p)=>{let v;const m=a.useHtmlLabels||u1(De().flowchart.htmlLabels);f?v=f:v="node default";const b=i.insert("g").attr("class",v).attr("id",a.domId||a.id),E=b.insert("g").attr("class","label").attr("style",a.labelStyle);let C;a.labelText===void 0?C="":C=typeof a.labelText=="string"?a.labelText:a.labelText[0];const A=E.node();let P;a.labelType==="markdown"?P=vK(E,v0(nP(C),De()),{useHtmlLabels:m,width:a.width||De().flowchart.wrappingWidth,classes:"markdown-node-label"}):P=A.appendChild(dp(v0(nP(C),De()),a.labelStyle,!1,p));let F=P.getBBox();const j=a.padding/2;if(u1(De().flowchart.htmlLabels)){const R=P.children[0],H=xr(P),Y=R.getElementsByTagName("img");if(Y){const rt=C.replace(/<img[^>]*>/g,"").trim()==="";await Promise.all([...Y].map(J=>new Promise(it=>{function ft(){if(J.style.display="flex",J.style.flexDirection="column",rt){const Tt=De().fontSize?De().fontSize:window.getComputedStyle(document.body).fontSize,kt=5;J.style.width=parseInt(Tt,10)*kt+"px"}else J.style.width="100%";it(J)}setTimeout(()=>{J.complete&&ft()}),J.addEventListener("error",ft),J.addEventListener("load",ft)})))}F=R.getBoundingClientRect(),H.attr("width",F.width),H.attr("height",F.height)}return m?E.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"):E.attr("transform","translate(0, "+-F.height/2+")"),a.centerLabel&&E.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),E.insert("rect",":first-child"),{shapeSvg:b,bbox:F,halfPadding:j,label:E}},ef=(i,a)=>{const f=a.node().getBBox();i.width=f.width,i.height=f.height};function L5(i,a,f,p){return i.insert("polygon",":first-child").attr("points",p.map(function(v){return v.x+","+v.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-a/2+","+f/2+")")}let Xo={},cm={},uBt={};const zje=()=>{cm={},uBt={},Xo={}},wK=(i,a)=>(Wt.trace("In isDecendant",a," ",i," = ",cm[a].includes(i)),!!cm[a].includes(i)),qje=(i,a)=>(Wt.info("Decendants of ",a," is ",cm[a]),Wt.info("Edge is ",i),i.v===a||i.w===a?!1:cm[a]?cm[a].includes(i.v)||wK(i.v,a)||wK(i.w,a)||cm[a].includes(i.w):(Wt.debug("Tilt, ",a,",not in decendants"),!1)),lBt=(i,a,f,p)=>{Wt.warn("Copying children of ",i,"root",p,"data",a.node(i),p);const v=a.children(i)||[];i!==p&&v.push(i),Wt.warn("Copy
`);C.forEach(function(j){Wt.debug(`Adding line: ${j}`),E.append("tspan").text(j).attr("class","title").attr("dy",f.textHeight)});const A=b.node().getBBox(),F=b.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",A.width+2*f.padding).attr("height",A.height+C.length*f.textHeight+f.padding+.5*f.dividerMargin).node().getBBox().width;return E.node().childNodes.forEach(function(j){j.setAttribute("x",(F-j.getBBox().width)/2)}),m.width=F,m.height=A.height+C.length*f.textHeight+f.padding+.5*f.dividerMargin,m},yK=function(i){let a="",f="",p="",v="",m=i.substring(0,1),b=i.substring(i.length-1,i.length);m.match(/[#+~-]/)&&(v=m);let E=/[\s\w)~]/;b.match(E)||(f=mBt(b));const C=v===""?0:1;let A=f===""?i.length:i.length-1;i=i.substring(C,A);const P=i.indexOf("("),F=i.indexOf(")");if(P>1&&F>P&&F<=i.length){let R=i.substring(0,P).trim();const H=i.substring(P+1,F);if(a=v+R+"("+zN(H.trim())+")",F<i.length){let Y=i.substring(F+1,F+2);f===""&&!Y.match(E)?(f=mBt(Y),p=i.substring(F+2).trim()):p=i.substring(F+1).trim(),p!==""&&(p.charAt(0)===":"&&(p=p.substring(1).trim()),p=" : "+zN(p),a+=p)}}else a=v+zN(i);return{displayText:a,cssStyle:f}},wBt=function(i,a,f,p){let v=yK(a);const m=i.append("tspan").attr("x",p.padding).text(v.displayText);v.cssStyle!==""&&m.attr("style",v.cssStyle),f||m.attr("dy",p.textHeight)},mBt=function(i){switch(i){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}},S0t={getClassTitleString:vBt,drawClass:Qje,drawEdge:Xje,drawNote:Zje,parseMember:yK},yBt=i=>i?" "+i:"",Bb=(i,a)=>`${a||"node default"}${yBt(i.classes)} ${yBt(i.class)}`,xBt=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=p.height+a.padding,b=v+m,E=[{x:b/2,y:0},{x:b,y:-b/2},{x:b/2,y:-b},{x:0,y:-b/2}];Wt.info("Question main (Circle)");const C=L5(f,b,b,E);return C.attr("style",a.style),ef(a,C),a.intersect=function(A){return Wt.warn("Intersect called"),Th.polygon(a,E,A)},f},Jje=(i,a)=>{const f=i.insert("g").attr("class","node default").attr("id",a.domId||a.id),p=28,v=[{x:0,y:p/2},{x:p/2,y:0},{x:0,y:-p/2},{x:-p/2,y:0}];return f.insert("polygon",":first-child").attr("points",v.map(function(b){return b.x+","+b.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),a.width=28,a.height=28,a.intersect=function(b){return Th.circle(a,14,b)},f},t$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=4,m=p.height+a.padding,b=m/v,E=p.width+2*b+a.padding,C=[{x:b,y:0},{x:E-b,y:0},{x:E,y:-m/2},{x:E-b,y:-m},{x:b,y:-m},{x:0,y:-m/2}],A=L5(f,E,m,C);return A.attr("style",a.style),ef(a,A),a.intersect=function(P){return Th.polygon(a,C,P)},f},e$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=p.height+a.padding,b=[{x:-m/2,y:0},{x:v,y:0},{x:v,y:-m},{x:-m/2,y:-m},{x:0,y:-m/2}];return L5(f,v,m,b).attr("style",a.style),a.width=v+m,a.height=m,a.intersect=function(C){return Th.polygon(a,b,C)},f},n$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a),!0),v=p.width+a.padding,m=p.height+a.padding,b=[{x:-2*m/6,y:0},{x:v-m/6,y:0},{x:v+2*m/6,y:-m},{x:m/6,y:-m}],E=L5(f,v,m,b);return E.attr("style",a.style),ef(a,E),a.intersect=function(C){return Th.polygon(a,b,C)},f},r$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=p.height+a.padding,b=[{x:2*m/6,y:0},{x:v+m/6,y:0},{x:v-2*m/6,y:-m},{x:-m/6,y:-m}],E=L5(f,v,m,b);return E.attr("style",a.style),ef(a,E),a.intersect=function(C){return Th.polygon(a,b,C)},f},i$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=p.height+a.padding,b=[{x:-2*m/6,y:0},{x:v+2*m/6,y:0},{x:v-m/6,y:-m},{x:m/6,y:-m}],E=L5(f,v,m,b);return E.attr("style",a.style),ef(a,E),a.intersect=function(C){return Th.polygon(a,b,C)},f},s$e=async(i,a)=>{const{shapeSvg:f,bbox:p}=await Od(i,a,Bb(a,void 0),!0),v=p.width+a.padding,m=p.height+a.padding,b=[{x:m/6,y:0},{x:v-m/6,y:0},{x:v+2*m/6,y:-m},{x:-2*m/6,y:-m}],E=L5(f,v,m,b);return E.attr("style",a.style),ef(a,E),a.intersect=function(C){return Th.polygon(a,b,C)},f},a$e
outsidePoint: ${JSON.stringify(a)}
insidePoint : ${JSON.stringify(f)}
node : x:${i.x} y:${i.y} w:${i.width} h:${i.height}`);const p=i.x,v=i.y,m=Math.abs(p-f.x),b=i.width/2;let E=f.x<a.x?b-m:b+m;const C=i.height/2,A=Math.abs(a.y-f.y),P=Math.abs(a.x-f.x);if(Math.abs(v-a.y)*b>Math.abs(p-a.x)*C){let F=f.y<a.y?a.y-C-v:v-C-a.y;E=P*F/A;const j={x:f.x<a.x?f.x+E:f.x-P+E,y:f.y<a.y?f.y+A-F:f.y-A+F};return E===0&&(j.x=a.x,j.y=a.y),P===0&&(j.x=a.x),A===0&&(j.y=a.y),Wt.warn(`abc89 topp/bott calc, Q ${A}, q ${F}, R ${P}, r ${E}`,j),j}else{f.x<a.x?E=a.x-b-p:E=p-b-a.x;let F=A*E/P,j=f.x<a.x?f.x+P-E:f.x-P+E,R=f.y<a.y?f.y+F:f.y-F;return Wt.warn(`sides calc abc89, Q ${A}, q ${F}, R ${P}, r ${E}`,{_x:j,_y:R}),E===0&&(j=a.x,R=a.y),P===0&&(j=a.x),A===0&&(R=a.y),{x:j,y:R}}},LBt=(i,a)=>{Wt.warn("abc88 cutPathAtIntersect",i,a);let f=[],p=i[0],v=!1;return i.forEach(m=>{if(Wt.info("abc88 checking point",m,a),!E$e(a,m)&&!v){const b=T$e(a,p,m);Wt.warn("abc88 inside",m,p,b),Wt.warn("abc88 intersection",b);let E=!1;f.forEach(C=>{E=E||C.x===b.x&&C.y===b.y}),f.some(C=>C.x===b.x&&C.y===b.y)?Wt.warn("abc88 no intersect",b,f):f.push(b),v=!0}else Wt.warn("abc88 outside",m,p),p=m,v||f.push(m)}),Wt.warn("abc88 returning points",f),f},_$e=function(i,a,f,p,v,m){let b=f.points,E=!1;const C=m.node(a.v);var A=m.node(a.w);Wt.info("abc88 InsertEdge: ",f),A.intersect&&C.intersect&&(b=b.slice(1,f.points.length-1),b.unshift(C.intersect(b[0])),Wt.info("Last point",b[b.length-1],A,A.intersect(b[b.length-1])),b.push(A.intersect(b[b.length-1]))),f.toCluster&&(Wt.info("to cluster abc88",p[f.toCluster]),b=LBt(f.points,p[f.toCluster].node),E=!0),f.fromCluster&&(Wt.info("from cluster abc88",p[f.fromCluster]),b=LBt(b.reverse(),p[f.fromCluster].node).reverse(),E=!0);const P=b.filter(J=>!Number.isNaN(J.y));let F;v==="graph"||v==="flowchart"?F=f.curve||MA:F=MA;const j=YE().x(function(J){return J.x}).y(function(J){return J.y}).curve(F);let R;switch(f.thickness){case"normal":R="edge-thickness-normal";break;case"thick":R="edge-thickness-thick";break;case"invisible":R="edge-thickness-thick";break;default:R=""}switch(f.pattern){case"solid":R+=" edge-pattern-solid";break;case"dotted":R+=" edge-pattern-dotted";break;case"dashed":R+=" edge-pattern-dashed";break}const H=i.append("path").attr("d",j(P)).attr("id",f.id).attr("class"," "+R+(f.classes?" "+f.classes:"")).attr("style",f.style);let Y="";switch((De().flowchart.arrowMarkerAbsolute||De().state.arrowMarkerAbsolute)&&(Y=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,Y=Y.replace(/\(/g,"\\("),Y=Y.replace(/\)/g,"\\)")),Wt.info("arrowTypeStart",f.arrowTypeStart),Wt.info("arrowTypeEnd",f.arrowTypeEnd),f.arrowTypeStart){case"arrow_cross":H.attr("marker-start","url("+Y+"#"+v+"-crossStart)");break;case"arrow_point":H.attr("marker-start","url("+Y+"#"+v+"-pointStart)");break;case"arrow_barb":H.attr("marker-start","url("+Y+"#"+v+"-barbStart)");break;case"arrow_circle":H.attr("marker-start","url("+Y+"#"+v+"-circleStart)");break;case"aggregation":H.attr("marker-start","url("+Y+"#"+v+"-aggregationStart)");break;case"extension":H.attr("marker-start","url("+Y+"#"+v+"-extensionStart)");break;case"composition":H.attr("marker-start","url("+Y+"#"+v+"-compositionStart)");break;case"dependency":H.attr("marker-start","url("+Y+"#"+v+"-dependencyStart)");break;case"lollipop":H.attr("marker-start","url("+Y+"#"+v+"-lollipopStart)");break}switch(f.arrowTypeEnd){case"arrow_cross":H.attr("marker-end","url("+Y+"#"+v+"-crossEnd)");break;case"arrow_point":H.attr("marker-end","url("+Y+"#"+v+"-pointEnd)");break;case"arrow_barb":H.attr("marker-end","url("+Y+"#"+v+"-barbEnd)");break;case"arrow_circle":H.attr("marker-end","url("+Y+"#"+v+"-circleEnd)");break;case"aggregation":H.attr("marker-end","url("+Y+"#"+v+"-aggregationEnd)");break;case"extension":H.attr("marker-end","url("+Y+"#"+v+"-extensionEnd)");break;case"composition":H.attr("marker-end","url("+Y+"#"+v+"-compositionEnd)");break;case"dependency":H.attr("marker-end","url("+Y+"#"+v+"-dependencyEnd)");break;case"lollipop":H.attr("marker-end","url("+Y+"#"+v+"-lollipopEnd)");break}let rt={};return E&&(rt.updatedPath=b),rt.original
`),E.style===void 0&&(j.style=j.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),j.labelStyle=j.labelStyle.replace("color:","fill:"),j.id=A,j.classes="flowchart-link "+P+" "+F,a.setEdge(E.start,E.end,j,p)})},L0t={setConf:C$e,addVertices:IBt,addEdges:OBt,getClasses:function(i,a){return a.db.getClasses()},draw:async function(i,a,f,p){Wt.info("Drawing flowchart");let v=p.db.getDirection();v===void 0&&(v="TD");const{securityLevel:m,flowchart:b}=De(),E=b.nodeSpacing||50,C=b.rankSpacing||50;let A;m==="sandbox"&&(A=xr("#i"+a));const P=xr(m==="sandbox"?A.nodes()[0].contentDocument.body:"body"),F=m==="sandbox"?A.nodes()[0].contentDocument:document,j=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:v,nodesep:E,ranksep:C,marginx:0,marginy:0}).setDefaultEdgeLabel(function(){return{}});let R;const H=p.db.getSubGraphs();Wt.info("Subgraphs - ",H);for(let kt=H.length-1;kt>=0;kt--)R=H[kt],Wt.info("Subgraph - ",R),p.db.addVertex(R.id,{text:R.title,type:R.labelType},"group",void 0,R.classes,R.dir);const Y=p.db.getVertices(),rt=p.db.getEdges();Wt.info("Edges",rt);let J=0;for(J=H.length-1;J>=0;J--){R=H[J],YLt("cluster").append("text");for(let kt=0;kt<R.nodes.length;kt++)Wt.info("Setting up subgraphs",R.nodes[kt],R.id),j.setParent(R.nodes[kt],R.id)}IBt(Y,j,a,P,F,p),OBt(rt,j);const it=P.select(`[id="${a}"]`),ft=P.select("#"+a+" g");if(await A0t(ft,j,["point","circle","cross"],"flowchart",a),to.insertTitle(it,"flowchartTitleText",b.titleTopMargin,p.db.getDiagramTitle()),s9(j,it,b.diagramPadding,b.useMaxWidth),p.db.indexNodes("subGraph"+J),!b.htmlLabels){const kt=F.querySelectorAll('[id="'+a+'"] .edgeLabel .label');for(const mt of kt){const ct=mt.getBBox(),yt=F.createElementNS("http://www.w3.org/2000/svg","rect");yt.setAttribute("rx",0),yt.setAttribute("ry",0),yt.setAttribute("width",ct.width),yt.setAttribute("height",ct.height),mt.insertBefore(yt,mt.firstChild)}}Object.keys(Y).forEach(function(kt){const mt=Y[kt];if(mt.link){const ct=xr("#"+a+' [id="'+kt+'"]');if(ct){const yt=F.createElementNS("http://www.w3.org/2000/svg","a");yt.setAttributeNS("http://www.w3.org/2000/svg","class",mt.classes.join(" ")),yt.setAttributeNS("http://www.w3.org/2000/svg","href",mt.link),yt.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),m==="sandbox"?yt.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):mt.linkTarget&&yt.setAttributeNS("http://www.w3.org/2000/svg","target",mt.linkTarget);const st=ct.insert(function(){return yt},":first-child"),xt=ct.select(".label-container");xt&&st.append(function(){return xt.node()});const ht=ct.select(".label");ht&&st.append(function(){return ht.node()})}}})}},S$e=(i,a)=>{const f=F9e,p=f(i,"r"),v=f(i,"g"),m=f(i,"b");return IA(p,v,m,a)},NBt=i=>`.label {
font-family: ${i.fontFamily};
color: ${i.nodeTextColor||i.textColor};
}
.cluster-label text {
fill: ${i.titleColor};
}
.cluster-label span,p {
color: ${i.titleColor};
}
.label text,span,p {
fill: ${i.nodeTextColor||i.textColor};
color: ${i.nodeTextColor||i.textColor};
}
.node rect,
.node circle,
.node ellipse,
.node polygon,
.node path {
fill: ${i.mainBkg};
stroke: ${i.nodeBorder};
stroke-width: 1px;
}
.flowchart-label text {
text-anchor: middle;
}
// .flowchart-label .text-outer-tspan {
// text-anchor: middle;
// }
// .flowchart-label .text-inner-tspan {
// text-anchor: start;
// }
.node .label {
text-align: center;
}
.node.clickable {
cursor: pointer;
}
.arrowheadPath {
fill: ${i.arrowheadColor};
}
.edgePath .path {
stroke: ${i.lineColor};
stroke-width: 2.0px;
}
.flowchart-link {
stroke: ${i.lineColor};
fill: none;
}
.edgeLabel {
background-color: ${i.edgeLabelBackground};
rect {
opacity: 0.5;
background-color: ${i.edgeLabelBackground};
fill: ${i.edgeLabelBackground};
}
text-align: center;
}
/* For html labels only */
.labelBkg {
background-color: ${S$e(i.edgeLabelBackground,.5)};
// background-color:
}
.cluster rect {
fill: ${i.clusterBkg};
stroke: ${i.clusterBorder};
stroke-width: 1px;
}
.cluster text {
fill: ${i.titleColor};
}
.cluster span,p {
color: ${i.titleColor};
}
/* .cluster div {
color: ${i.titleColor};
} */
div.mermaidTooltip {
position: absolute;
text-align: center;
max-width: 200px;
padding: 2px;
font-family: ${i.fontFamily};
font-size: 12px;
background: ${i.tertiaryColor};
border: 1px solid ${i.border2};
border-radius: 2px;
pointer-events: none;
z-index: 100;
}
.flowchartTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${i.textColor};
}
`,A$e=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Fdt,db:h9,renderer:L0t,styles:NBt,init:i=>{i.flowchart||(i.flowchart={}),i.flowchart.arrowMarkerAbsolute=i.arrowMarkerAbsolute,IBe.setConf(i.flowchart),h9.clear(),h9.setGen("gen-1")}}},Symbol.toStringTag,{value:"Module"})),L$e=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Fdt,db:h9,renderer:L0t,styles:NBt,init:i=>{i.flowchart||(i.flowchart={}),i.flowchart.arrowMarkerAbsolute=i.arrowMarkerAbsolute,eOt({flowchart:{arrowMarkerAbsolute:i.arrowMarkerAbsolute}}),L0t.setConf(i.flowchart),h9.clear(),h9.setGen("gen-2")}}},Symbol.toStringTag,{value:"Module"}));var M0t=function(){var i=function(dt,Ct,tt,Pt){for(tt=tt||{},Pt=dt.length;Pt--;tt[dt[Pt]]=Ct);return tt},a=[1,2],f=[1,5],p=[6,9,11,23,25,27,29,30,31,52],v=[1,17],m=[1,18],b=[1,19],E=[1,20],C=[1,21],A=[1,22],P=[1,25],F=[1,30],j=[1,31],R=[1,32],H=[1,33],Y=[1,34],rt=[6,9,11,15,20,23,25,27,29,30,31,44,45,46,47,48,52],J=[1,46],it=[30,31,49,50],ft=[4,6,9,11,23,25,27,29,30,31,52],Tt=[44,45,46,47,48],kt=[22,37],mt=[1,66],ct=[1,65],yt=[22,37,39,41],st={trace:function(){},yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,entityName:17,relSpec:18,role:19,BLOCK_START:20,attributes:21,BLOCK_STOP:22,title:23,title_value:24,acc_title:25,acc_title_value:26,acc_descr:27,acc_descr_value:28,acc_descr_multiline_value:29,ALPHANUM:30,ENTITY_NAME:31,attribute:32,attributeType:33,attributeName:34,attributeKeyTypeList:35,attributeComment:36,ATTRIBUTE_WORD:37,attributeKeyType:38,COMMA:39,ATTRIBUTE_KEY:40,COMMENT:41,cardinality:42,relType:43,ZERO_OR_ONE:44,ZERO_OR_MORE:45,ONE_OR_MORE:46,ONLY_ONE:47,MD_PARENT:48,NON_IDENTIFYING:49,IDENTIFYING:50,WORD:51,open_directive:52,type_directive:53,arg_directive:54,close_directive:55,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",20:"BLOCK_START",22:"BLOCK_STOP",23:"title",24:"title_value",25:"acc_title",26:"acc_title_value",27:"acc_descr",28:"acc_descr_value",29:"acc_descr_multiline_value",30:"ALPHANUM",31:"ENTITY_NAME",37:"ATTRIBUTE_WORD",39:"COMMA",40:"ATTRIBUTE_KEY",41:"COMMENT",44:"ZERO_OR_ONE",45:"ZERO_OR_MORE",46:"ONE_OR_MORE",47:"ONLY_ONE",48:"MD_PARENT",49:"NON_IDENTIFYING",50:"IDENTIFYING",51:"WORD",52:"open_directive",53:"type_directive",54:"arg_directive",55:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,5],[10,4],[10,3],[10,1],[10,2],[10,2],[10,2],[10,1],[17,1],[17,1],[21,1],[21,2],[32,2],[32,3],[32,3],[32,4],[33,1],[34,1],[35,1],[35,3],[38,1],[36,1],[18,3],[42,1],[42,1],[42,1],[42,1],[42,1],[43,1],[43,1],[19,1],[19,1],[19,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(Ct,tt,Pt,pt,Ft,X,Rt){var Bt=X.length-1;switch(Ft){case 1:break;case 3:this.$=[];break;case 4:X[Bt-1].push(X[Bt]),this.$=X[Bt-1];break;case 5:case 6:this.$=X[Bt];break;case 7:case 8:this.$=[];break;case 12:pt.addEntity(X[Bt-4]),pt.addEntity(X[Bt-2]),pt.addRelationship(X[Bt-4],X[Bt],X[Bt-2],X[Bt-3]);break;case 13:pt.addEntity(X[Bt-3]),pt.addAttributes(X[Bt-3],X[Bt-1]);break;case 14:pt.addEntity(X[Bt-2]);break;case 15:pt.addEntity(X[Bt]);break;case 16:case 17:this.$=X[Bt].trim(),pt.setAccTitle(this.$);break;case 18:case 19:this.$=X[Bt].trim(),pt.setAccDescription(this.$);break;case 20:case 44:this.$=X[Bt];break;case 21:case 42:case 43:this.$=X[Bt].replace(/"/g,"");break;case 22:case 30:this.$=[X[Bt]];break;case 23:X[Bt].push(X[Bt-1]),this.$=X[Bt];break;case 24:this.$={attributeType:X[Bt-1],attributeName:X[Bt]};break;case 25:this.$={attributeType:X[Bt-2],attributeName:X[Bt-1],attributeKeyTypeList:X[Bt]};break;case 26:this.$={attributeType:X[Bt-2],attributeName:X[Bt-1],attributeComment:X[Bt]};break;case 27:this.$={attributeType:X[Bt-3],attributeName:X[Bt-2],attributeKeyTypeList:X[Bt-1],attributeComment:X[Bt]};break;case 28:case 29:case 32:this.$=X[Bt];break;case 31:X[Bt-2].push(X[Bt]),this.$=X[Bt-2];break;case 33:this.$=X[Bt].replace(/"/g,"");break
`+Te.showPosition()+`
Expecting `+qt.join(", ")+", got '"+(this.terminals_[Ee]||Ee)+"'":zi="Parse error on line "+(vt+1)+": Unexpected "+(Ee==qe?"end of input":"'"+(this.terminals_[Ee]||Ee)+"'"),this.parseError(zi,{text:Te.match,token:this.terminals_[Ee]||Ee,line:Te.yylineno,loc:ne,expected:qt})}if(Ce[0]instanceof Array&&Ce.length>1)throw new Error("Parse Error: multiple actions possible at state: "+He+", token: "+Ee);switch(Ce[0]){case 1:Pt.push(Ee),Ft.push(Te.yytext),X.push(Te.yylloc),Pt.push(Ce[1]),Ee=null,Ot=Te.yyleng,Bt=Te.yytext,vt=Te.yylineno,ne=Te.yylloc;break;case 2:if(Yt=this.productions_[Ce[1]][1],ye.$=Ft[Ft.length-Yt],ye._$={first_line:X[X.length-(Yt||1)].first_line,last_line:X[X.length-1].last_line,first_column:X[X.length-(Yt||1)].first_column,last_column:X[X.length-1].last_column},ke&&(ye._$.range=[X[X.length-(Yt||1)].range[0],X[X.length-1].range[1]]),$e=this.performAction.apply(ye,[Bt,Ot,vt,Wn.yy,Ce[1],Ft,X].concat(_n)),typeof $e<"u")return $e;Yt&&(Pt=Pt.slice(0,-1*Yt*2),Ft=Ft.slice(0,-1*Yt),X=X.slice(0,-1*Yt)),Pt.push(this.productions_[Ce[1]][0]),Ft.push(ye.$),X.push(ye._$),Mi=Rt[Pt[Pt.length-2]][Pt[Pt.length-1]],Pt.push(Mi);break;case 3:return!0}}return!0}},xt=function(){var dt={EOF:1,parseError:function(tt,Pt){if(this.yy.parser)this.yy.parser.parseError(tt,Pt);else throw new Error(tt)},setInput:function(Ct,tt){return this.yy=tt||this.yy||{},this._input=Ct,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var Ct=this._input[0];this.yytext+=Ct,this.yyleng++,this.offset++,this.match+=Ct,this.matched+=Ct;var tt=Ct.match(/(?:\r\n?|\n).*/g);return tt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Ct},unput:function(Ct){var tt=Ct.length,Pt=Ct.split(/(?:\r\n?|\n)/g);this._input=Ct+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-tt),this.offset-=tt;var pt=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),Pt.length-1&&(this.yylineno-=Pt.length-1);var Ft=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Pt?(Pt.length===pt.length?this.yylloc.first_column:0)+pt[pt.length-Pt.length].length-Pt[0].length:this.yylloc.first_column-tt},this.options.ranges&&(this.yylloc.range=[Ft[0],Ft[0]+this.yyleng-tt]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(Ct){this.unput(this.match.slice(Ct))},pastInput:function(){var Ct=this.matched.substr(0,this.matched.length-this.match.length);return(Ct.length>20?"...":"")+Ct.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Ct=this.match;return Ct.length<20&&(Ct+=this._input.substr(0,20-Ct.length)),(Ct.substr(0,20)+(Ct.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Ct=this.pastInput(),tt=new Array(Ct.length+1).join("-");return Ct+this.upcomingInput()+`
`+tt+"^"},test_match:function(Ct,tt){var Pt,pt,Ft;if(this.options.backtrack_lexer&&(Ft={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Ft.yylloc.range=this.yylloc.range.slice(0))),pt=Ct[0].match(/(?:\r\n?|\n).*/g),pt&&(this.yylineno+=pt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:pt?pt[pt.length-1].length-pt[pt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Ct[0].length},this.yytext+=Ct[0],this.match+=Ct[0],this.matches=Ct,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(Ct[0].length),this.matched+=Ct[0],Pt=this.performAction.call(this,this.yy,this,tt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Pt)return Pt;if(this._backtrack){for(var X in Ft)this[X]=Ft[X];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Ct,tt,Pt,pt;this._more||(this.yytext="",this.match="");for(var Ft=this._currentRules(),X=0;X<Ft.length;X++)if(Pt=this._input.match(this.rules[Ft[X]]),Pt&&(!tt||Pt[0].length>tt[0].length)){if(tt=Pt,pt=X,this.options.backtrack_lexer){if(Ct=this.test_match(Pt,Ft[X]),Ct!==!1)return Ct;if(this._backtrack){tt=!1;continue}else return!1}else if(!this.options.flex)break}return tt?(Ct=this.test_match(tt,Ft[pt]),Ct!==!1?Ct:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var tt=this.next();return tt||this.lex()},begin:function(tt){this.conditionStack.push(tt)},popState:function(){var tt=this.conditionStack.length-1;return tt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(tt){return tt=this.conditionStack.length-1-Math.abs(tt||0),tt>=0?this.conditionStack[tt]:"INITIAL"},pushState:function(tt){this.begin(tt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(tt,Pt,pt,Ft){switch(pt){case 0:return this.begin("acc_title"),25;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),27;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return this.begin("open_directive"),52;case 8:return this.begin("type_directive"),53;case 9:return this.popState(),this.begin("arg_directive"),15;case 10:return this.popState(),this.popState(),55;case 11:return 54;case 12:return 11;case 13:break;case 14:return 9;case 15:return 31;case 16:return 51;case 17:return 4;case 18:return this.begin("block"),20;case 19:return 39;case 20:break;case 21:return 40;case 22:return 37;case 23:return 37;case 24:return 41;case 25:break;case 26:return this.popState(),22;case 27:return Pt.yytext[0];case 28:return 44;case 29:return 46;case 30:return 46;case 31:return 46;case 32:return 44;case 33:return 44;case 34:return 45;case 35:return 45;case 36:return 45;case 37:return 45;case 38:return 45;case 39:return 46;case 40:return 45;case 41:return 46;case 42:return 47;case 43:return 47;case 44:return 47;case 45:return 47;case 46:return 44;case 47:return 45;case 48:return 46;case 49:return 48;case 50:return 49;case 51:return 50;case 52:return 50;case 53:return 49;case 54:return 49;case 55:return 49;case 56:return 30;case 57:return Pt.yytext[0];case 58:return 6}},rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:,)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:(.*?)[~](.*?)*[~])/i,/^(?:[\*A-Za-z_][A-Za-z0-9\-_\[\]\(\)]*)/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:1\b)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:\s*u\b)/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:[A-Za-z][A-Za-z0-9\-_]*)/i,/^(?:.)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},open_directive:{rules:[8],inclusive:!1},type_directive:{rules:[9,10],inclusive:!1},arg_directive:{rules:[10,11],inclusive:!1},block:{rules:[19,20,21,22,23,24,25,26,27],inclusive:!1},INITIAL:{rules:[0,2,4,7,12,13,14,15,16,17,18,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],inclusive:!0}}};return dt}();st.lexer=xt;function ht(){this.yy={}}return ht.prototype=st,st.Parser=ht,new ht}();M0t.parser=M0t;const M$e=M0t;let yP={},D0t=[];const D$e={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"},I$e={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},O$e=function(i,a,f){J1.parseDirective(this,i,
.entityBox {
fill: ${i.mainBkg};
stroke: ${i.nodeBorder};
}
.attributeBoxOdd {
fill: ${i.attributeBackgroundColorOdd};
stroke: ${i.nodeBorder};
}
.attributeBoxEven {
fill: ${i.attributeBackgroundColorEven};
stroke: ${i.nodeBorder};
}
.relationshipLabelBox {
fill: ${i.tertiaryColor};
opacity: 0.7;
background-color: ${i.tertiaryColor};
rect {
opacity: 0.5;
}
}
.relationshipLine {
stroke: ${i.lineColor};
}
.entityTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${i.textColor};
}
#MD_PARENT_START {
fill: #f5f5f5 !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
#MD_PARENT_END {
fill: #f5f5f5 !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
`}},Symbol.toStringTag,{value:"Module"}));var O0t=function(){var i=function(yt,st,xt,ht){for(xt=xt||{},ht=yt.length;ht--;xt[yt[ht]]=st);return xt},a=[1,4],f=[1,7],p=[1,5],v=[1,9],m=[1,6],b=[2,6],E=[1,16],C=[6,8,14,20,22,24,25,27,29,32,37,40,50,55],A=[8,14,20,22,24,25,27,29,32,37,40],P=[8,13,14,20,22,24,25,27,29,32,37,40],F=[1,26],j=[6,8,14,50,55],R=[8,14,55],H=[1,53],Y=[1,52],rt=[8,14,30,33,35,38,55],J=[1,67],it=[1,68],ft=[1,69],Tt=[8,14,33,35,42,55],kt={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,directive:5,GG:6,document:7,EOF:8,":":9,DIR:10,options:11,body:12,OPT:13,NL:14,line:15,statement:16,commitStatement:17,mergeStatement:18,cherryPickStatement:19,acc_title:20,acc_title_value:21,acc_descr:22,acc_descr_value:23,acc_descr_multiline_value:24,section:25,branchStatement:26,CHECKOUT:27,ref:28,BRANCH:29,ORDER:30,NUM:31,CHERRY_PICK:32,COMMIT_ID:33,STR:34,COMMIT_TAG:35,EMPTYSTR:36,MERGE:37,COMMIT_TYPE:38,commitType:39,COMMIT:40,commit_arg:41,COMMIT_MSG:42,NORMAL:43,REVERSE:44,HIGHLIGHT:45,openDirective:46,typeDirective:47,closeDirective:48,argDirective:49,open_directive:50,type_directive:51,arg_directive:52,close_directive:53,ID:54,";":55,$accept:0,$end:1},terminals_:{2:"error",6:"GG",8:"EOF",9:":",10:"DIR",13:"OPT",14:"NL",20:"acc_title",21:"acc_title_value",22:"acc_descr",23:"acc_descr_value",24:"acc_descr_multiline_value",25:"section",27:"CHECKOUT",29:"BRANCH",30:"ORDER",31:"NUM",32:"CHERRY_PICK",33:"COMMIT_ID",34:"STR",35:"COMMIT_TAG",36:"EMPTYSTR",37:"MERGE",38:"COMMIT_TYPE",40:"COMMIT",42:"COMMIT_MSG",43:"NORMAL",44:"REVERSE",45:"HIGHLIGHT",50:"open_directive",51:"type_directive",52:"arg_directive",53:"close_directive",54:"ID",55:";"},productions_:[0,[3,2],[3,2],[3,3],[3,4],[3,5],[7,0],[7,2],[11,2],[11,1],[12,0],[12,2],[15,2],[15,1],[16,1],[16,1],[16,1],[16,2],[16,2],[16,1],[16,1],[16,1],[16,2],[26,2],[26,4],[19,3],[19,5],[19,5],[19,5],[19,5],[18,2],[18,4],[18,4],[18,4],[18,6],[18,6],[18,6],[18,6],[18,6],[18,6],[18,8],[18,8],[18,8],[18,8],[18,8],[18,8],[17,2],[17,3],[17,3],[17,5],[17,5],[17,3],[17,5],[17,5],[17,5],[17,5],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,3],[17,5],[17,5],[17,5],[17,5],[17,5],[17,5],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[41,0],[41,1],[39,1],[39,1],[39,1],[5,3],[5,5],[46,1],[47,1],[49,1],[48,1],[28,1],[28,1],[4,1],[4,1],[4,1]],performAction:function(st,xt,ht,dt,Ct,tt,Pt){var pt=tt.length-1;switch(Ct){case 3:return tt[pt];case 4:return tt[pt-1];case 5:return dt.setDirection(tt[pt-3]),tt[pt-1];case 7:dt.setOptions(tt[pt-1]),this.$=tt[pt];break;case 8:tt[pt-1]+=tt[pt],this.$=tt[pt-1];break;case 10:this.$=[];break;case 11:tt[pt-1].push(tt[pt]),this.$=tt[pt-1];break;case 12:this.$=tt[pt-1];break;case 17:this.$=tt[pt].trim(),dt.setAccTitle(this.$);break;case 18:case 19:this.$=tt[pt].trim(),dt.setAccDescription(this.$);break;case 20:dt.addSection(tt[pt].substr(8)),this.$=tt[pt].substr(8);break;case 22:dt.checkout(tt[pt]);break;case 23:dt.branch(tt[pt]);break;case 24:dt.branch(tt[pt-2],tt[pt]);break;case 25:dt.cherryPick(tt[pt],"",void 0);break;case 26:dt.cherryPick(tt[pt-2],"",tt[pt]);break;case 27:case 29:dt.cherryPick(tt[pt-2],"","");break;case 28:dt.cherryPick(tt[pt],"",tt[pt-2]);break;case 30:dt.merge(tt[pt],"","","");break;case 31:dt.merge(tt[pt-2],tt[pt],"","");break;case 32:dt.merge(tt[pt-2],"",tt[pt],"");break;case 33:dt.merge(tt[pt-2],"","",tt[pt]);break;case 34:dt.merge(tt[pt-4],tt[pt],"",tt[pt-2]);break;case 35:dt.merge(tt[pt-4],"",tt[pt],tt[pt-2]);break;case 36:dt.merge(tt[pt-4],"",tt[pt-2],tt[pt]);break;case 37:dt.merge(tt[pt-4],tt[pt-2],tt[pt],"");break;case 38:dt.merge(tt[pt-4],tt[pt-2],"",tt[pt]);break;case 39:dt.merge(tt[pt-4],tt[pt],tt[pt-2],"");break;case 40:dt.merge(tt[pt-6],tt[pt-4],tt[pt-2],tt[pt]);break;case 41:dt.merge(tt[pt-6],tt[pt],tt[pt-4],tt[pt-2]);break;case 42:dt.merge(tt[pt-6],tt[pt-4],tt[pt],tt[pt-2]
`+Ot.showPosition()+`
Expecting `+ye.join(", ")+", got '"+(this.terminals_[Ae]||Ae)+"'":fn="Parse error on line "+(Ft+1)+": Unexpected "+(Ae==Bt?"end of input":"'"+(this.terminals_[Ae]||Ae)+"'"),this.parseError(fn,{text:Ot.match,token:this.terminals_[Ae]||Ae,line:Ot.yylineno,loc:_n,expected:ye})}if(ke[0]instanceof Array&&ke.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ne+", token: "+Ae);switch(ke[0]){case 1:ht.push(Ae),Ct.push(Ot.yytext),tt.push(Ot.yylloc),ht.push(ke[1]),Ae=null,X=Ot.yyleng,pt=Ot.yytext,Ft=Ot.yylineno,_n=Ot.yylloc;break;case 2:if(Ce=this.productions_[ke[1]][1],Ee.$=Ct[Ct.length-Ce],Ee._$={first_line:tt[tt.length-(Ce||1)].first_line,last_line:tt[tt.length-1].last_line,first_column:tt[tt.length-(Ce||1)].first_column,last_column:tt[tt.length-1].last_column},Te&&(Ee._$.range=[tt[tt.length-(Ce||1)].range[0],tt[tt.length-1].range[1]]),Ve=this.performAction.apply(Ee,[pt,X,Ft,Vt.yy,ke[1],Ct,tt].concat(vt)),typeof Ve<"u")return Ve;Ce&&(ht=ht.slice(0,-1*Ce*2),Ct=Ct.slice(0,-1*Ce),tt=tt.slice(0,-1*Ce)),ht.push(this.productions_[ke[1]][0]),Ct.push(Ee.$),tt.push(Ee._$),$e=Pt[ht[ht.length-2]][ht[ht.length-1]],ht.push($e);break;case 3:return!0}}return!0}},mt=function(){var yt={EOF:1,parseError:function(xt,ht){if(this.yy.parser)this.yy.parser.parseError(xt,ht);else throw new Error(xt)},setInput:function(st,xt){return this.yy=xt||this.yy||{},this._input=st,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var st=this._input[0];this.yytext+=st,this.yyleng++,this.offset++,this.match+=st,this.matched+=st;var xt=st.match(/(?:\r\n?|\n).*/g);return xt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),st},unput:function(st){var xt=st.length,ht=st.split(/(?:\r\n?|\n)/g);this._input=st+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-xt),this.offset-=xt;var dt=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),ht.length-1&&(this.yylineno-=ht.length-1);var Ct=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ht?(ht.length===dt.length?this.yylloc.first_column:0)+dt[dt.length-ht.length].length-ht[0].length:this.yylloc.first_column-xt},this.options.ranges&&(this.yylloc.range=[Ct[0],Ct[0]+this.yyleng-xt]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(st){this.unput(this.match.slice(st))},pastInput:function(){var st=this.matched.substr(0,this.matched.length-this.match.length);return(st.length>20?"...":"")+st.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var st=this.match;return st.length<20&&(st+=this._input.substr(0,20-st.length)),(st.substr(0,20)+(st.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var st=this.pastInput(),xt=new Array(st.length+1).join("-");return st+this.upcomingInput()+`
`+xt+"^"},test_match:function(st,xt){var ht,dt,Ct;if(this.options.backtrack_lexer&&(Ct={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Ct.yylloc.range=this.yylloc.range.slice(0))),dt=st[0].match(/(?:\r\n?|\n).*/g),dt&&(this.yylineno+=dt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:dt?dt[dt.length-1].length-dt[dt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+st[0].length},this.yytext+=st[0],this.match+=st[0],this.matches=st,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(st[0].length),this.matched+=st[0],ht=this.performAction.call(this,this.yy,this,xt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ht)return ht;if(this._backtrack){for(var tt in Ct)this[tt]=Ct[tt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var st,xt,ht,dt;this._more||(this.yytext="",this.match="");for(var Ct=this._currentRules(),tt=0;tt<Ct.length;tt++)if(ht=this._input.match(this.rules[Ct[tt]]),ht&&(!xt||ht[0].length>xt[0].length)){if(xt=ht,dt=tt,this.options.backtrack_lexer){if(st=this.test_match(ht,Ct[tt]),st!==!1)return st;if(this._backtrack){xt=!1;continue}else return!1}else if(!this.options.flex)break}return xt?(st=this.test_match(xt,Ct[dt]),st!==!1?st:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var xt=this.next();return xt||this.lex()},begin:function(xt){this.conditionStack.push(xt)},popState:function(){var xt=this.conditionStack.length-1;return xt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(xt){return xt=this.conditionStack.length-1-Math.abs(xt||0),xt>=0?this.conditionStack[xt]:"INITIAL"},pushState:function(xt){this.begin(xt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(xt,ht,dt,Ct){switch(dt){case 0:return this.begin("open_directive"),50;case 1:return this.begin("type_directive"),51;case 2:return this.popState(),this.begin("arg_directive"),9;case 3:return this.popState(),this.popState(),53;case 4:return 52;case 5:return this.begin("acc_title"),20;case 6:return this.popState(),"acc_title_value";case 7:return this.begin("acc_descr"),22;case 8:return this.popState(),"acc_descr_value";case 9:this.begin("acc_descr_multiline");break;case 10:this.popState();break;case 11:return"acc_descr_multiline_value";case 12:return 14;case 13:break;case 14:break;case 15:return 6;case 16:return 40;case 17:return 33;case 18:return 38;case 19:return 42;case 20:return 43;case 21:return 44;case 22:return 45;case 23:return 35;case 24:return 29;case 25:return 30;case 26:return 37;case 27:return 32;case 28:return 27;case 29:return 10;case 30:return 10;case 31:return 9;case 32:return"CARET";case 33:this.begin("options");break;case 34:this.popState();break;case 35:return 13;case 36:return 36;case 37:this.begin("string");break;case 38:this.popState();break;case 39:return 34;case 40:return 31;case 41:return 54;case 42:return 8}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:(\r?\n)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:gitGraph\b)/i,/^(?:commit(?=\s|$))/i,/^(?:id:)/i,/^(?:type:)/i,/^(?:msg:)/i,/^(?:NORMAL\b)/i,/^(?:REVERSE\b)/i,/^(?:HIGHLIGHT\b)/i,/^(?:tag:)/i,/^(?:branch(?=\s|$))/i,/^(?:order:)/i,/^(?:merge(?=\s|$))/i,/^(?:cherry-pick(?=\s|$))/i,/^(?:checkout(?=\s|$))/i,/^(?:LR\b)/i,/^(?:TB\b)/i,/^(?::)/i,/^(?:\^)/i,/^(?:options\r?\n)/i,/^(?:[ \r\n\t]+end\b)/i,/^(?:[\s\S]+(?=[ \r\n\t]+end))/i,/^(?:["]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[0-9]+(?=\s|$))/i,/^(?:\w([-\./\w]*[-\w])?)/i,/^(?:$)/i,/^(?:\s+)/i],conditions:{acc_descr_multiline:{rules:[10,11],inclusive:!1},acc_descr:{rules:[8],inclusive:!1},acc_title:{rules:[6],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},options:{rules:[34,35],inclusive:!1},string:{rules:[38,39],inclusive:!1},INITIAL:{rules:[0,5,7,9,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,36,37,40,41,42,43],inclusive:!0}}};return yt}();kt.lexer=mt;function ct(){this.yy={}}return ct.prototype=kt,kt.Parser=ct,new ct}();O0t.parser=O0t;const rze=O0t;let EK=De().gitGraph.mainBranchName,ize=De().gitGraph.mainBranchOrder,f1={},gg=null,kP={};kP[EK]={name:EK,order:ize};let Rf={};Rf[EK]=gg;let td=EK,jBt="LR",v9=0;function N0t(){return jIt({length:7})}const sze=function(i,a,f){J1.parseDirective(this,i,a,f)};function aze(i,a){const f=Object.create(null);return i.reduce((p,v)=>{const m=a(v);return f[m]||(f[m]=!0,p.push(v)),p},[])}const oze=function(i){jBt=i};let $Bt={};const cze=function(i){Wt.debug("options str",i),i=i&&i.trim(),i=i||"{}";try{$Bt=JSON.parse(i)}catch(a){Wt.error("error while parsing gitGraph options",a.message)}},uze=function(){return $Bt},lze=function(i,a,f,p){Wt.debug("Entering commit:",i,a,f,p),a=ui.sanitizeText(a,De()),i=ui.sanitizeText(i,De()),p=ui.sanitizeText(p
${b-it.width/2-4/2},${Tt+2}
${b-it.width/2-4/2},${Tt-2}
${b+10-it.width/2-4},${Tt-ft-2}
${b+10+it.width/2+4},${Tt-ft-2}
${b+10+it.width/2+4},${Tt+ft+2}
${b+10-it.width/2-4},${Tt+ft+2}`),rt.attr("cx",b-it.width/2+4/2).attr("cy",Tt).attr("r",1.5).attr("class","tag-hole"),x0==="TB"&&(Y.attr("class","tag-label-bkg").attr("points",`
${j},${b+2}
${j},${b-2}
${j+10},${b-ft-2}
${j+10+it.width+4},${b-ft-2}
${j+10+it.width+4},${b+ft+2}
${j+10},${b+ft+2}`).attr("transform","translate(12,12) rotate(45, "+j+","+b+")"),rt.attr("cx",j+4/2).attr("cy",b).attr("transform","translate(12,12) rotate(45, "+j+","+b+")"),J.attr("x",j+5).attr("y",b+3).attr("transform","translate(14,14) rotate(45, "+j+","+b+")"))}}b+=50,b>CP&&(CP=b)})},Tze=(i,a,f)=>Object.keys(f).filter(m=>f[m].branch===a.branch&&f[m].seq>i.seq&&f[m].seq<a.seq).length>0,SP=(i,a,f=0)=>{const p=i+Math.abs(i-a)/2;if(f>5)return p;if(TK.every(b=>Math.abs(b-p)>=10))return TK.push(p),p;const m=Math.abs(i-a);return SP(i,a-m/5,f+1)},_ze=(i,a,f,p)=>{const v=_P[a.id],m=_P[f.id],b=Tze(a,f,p);let E="",C="",A=0,P=0,F=ed[f.branch].index,j;if(b){E="A 10 10, 0, 0, 0,",C="A 10 10, 0, 0, 1,",A=10,P=10,F=ed[f.branch].index;const R=v.y<m.y?SP(v.y,m.y):SP(m.y,v.y),H=v.x<m.x?SP(v.x,m.x):SP(m.x,v.x);x0==="TB"?v.x<m.x?j=`M ${v.x} ${v.y} L ${H-A} ${v.y} ${C} ${H} ${v.y+P} L ${H} ${m.y-A} ${E} ${H+P} ${m.y} L ${m.x} ${m.y}`:j=`M ${v.x} ${v.y} L ${H+A} ${v.y} ${E} ${H} ${v.y+P} L ${H} ${m.y-A} ${C} ${H-P} ${m.y} L ${m.x} ${m.y}`:v.y<m.y?j=`M ${v.x} ${v.y} L ${v.x} ${R-A} ${E} ${v.x+P} ${R} L ${m.x-A} ${R} ${C} ${m.x} ${R+P} L ${m.x} ${m.y}`:j=`M ${v.x} ${v.y} L ${v.x} ${R+A} ${C} ${v.x+P} ${R} L ${m.x-A} ${R} ${E} ${m.x} ${R-P} L ${m.x} ${m.y}`}else x0==="TB"?(v.x<m.x&&(E="A 20 20, 0, 0, 0,",C="A 20 20, 0, 0, 1,",A=20,P=20,F=ed[f.branch].index,j=`M ${v.x} ${v.y} L ${m.x-A} ${v.y} ${C} ${m.x} ${v.y+P} L ${m.x} ${m.y}`),v.x>m.x&&(E="A 20 20, 0, 0, 0,",C="A 20 20, 0, 0, 1,",A=20,P=20,F=ed[a.branch].index,j=`M ${v.x} ${v.y} L ${v.x} ${m.y-A} ${C} ${v.x-P} ${m.y} L ${m.x} ${m.y}`),v.x===m.x&&(F=ed[a.branch].index,j=`M ${v.x} ${v.y} L ${v.x+A} ${v.y} ${E} ${v.x+P} ${m.y+A} L ${m.x} ${m.y}`)):(v.y<m.y&&(E="A 20 20, 0, 0, 0,",A=20,P=20,F=ed[f.branch].index,j=`M ${v.x} ${v.y} L ${v.x} ${m.y-A} ${E} ${v.x+P} ${m.y} L ${m.x} ${m.y}`),v.y>m.y&&(E="A 20 20, 0, 0, 0,",A=20,P=20,F=ed[a.branch].index,j=`M ${v.x} ${v.y} L ${m.x-A} ${v.y} ${E} ${m.x} ${v.y-P} L ${m.x} ${m.y}`),v.y===m.y&&(F=ed[a.branch].index,j=`M ${v.x} ${v.y} L ${v.x} ${m.y-A} ${E} ${v.x+P} ${m.y} L ${m.x} ${m.y}`));i.append("path").attr("d",j).attr("class","arrow arrow"+F%w9)},Cze=(i,a)=>{const f=i.append("g").attr("class","commit-arrows");Object.keys(a).forEach(p=>{const v=a[p];v.parents&&v.parents.length>0&&v.parents.forEach(m=>{_ze(f,a[m],v,a)})})},Sze=(i,a)=>{const f=JN().gitGraph,p=i.append("g");a.forEach((v,m)=>{const b=m%w9,E=ed[v.name].pos,C=p.append("line");C.attr("x1",0),C.attr("y1",E),C.attr("x2",CP),C.attr("y2",E),C.attr("class","branch branch"+b),x0==="TB"&&(C.attr("y1",30),C.attr("x1",E),C.attr("y2",CP),C.attr("x2",E)),TK.push(E);let A=v.name;const P=GBt(A),F=p.insert("rect"),R=p.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+b);R.node().appendChild(P);let H=P.getBBox();F.attr("class","branchLabelBkg label"+b).attr("rx",4).attr("ry",4).attr("x",-H.width-4-(f.rotateCommitLabel===!0?30:0)).attr("y",-H.height/2+8).attr("width",H.width+18).attr("height",H.height+4),R.attr("transform","translate("+(-H.width-14-(f.rotateCommitLabel===!0?30:0))+", "+(E-H.height/2-1)+")"),x0==="TB"&&(F.attr("x",E-H.width/2-10).attr("y",0),R.attr("transform","translate("+(E-H.width/2-5)+", 0)")),x0!=="TB"&&F.attr("transform","translate(-19, "+(E-H.height/2)+")")})},Aze=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:rze,db:kze,renderer:{draw:function(i,a,f,p){Eze();const v=JN(),m=v.gitGraph;Wt.debug("in gitgraph renderer",i+`
`,"id:",a,f),TP=p.db.getCommits();const b=p.db.getBranchesAsObjArray();x0=p.db.getDirection();const E=xr(`[id="${a}"]`);let C=0;b.forEach((A,P)=>{const F=GBt(A.name),j=E.append("g"),R=j.insert("g").attr("class","branchLabel"),H=R.insert("g").attr("class","label branch-label");H.node().appendChild(F);let Y=F.getBBox();ed[A.name]={pos:C,index:P},C+=50+(m.rotateCommitLabel?40:0)+(x0==="TB"?Y.width/2:0),H.remove(),R.remove(),j.remove()}),UBt(E,TP,!1),m.showBranches&&Sze(E,b),Cze(E,TP),UBt(E,TP,!0),to.insertTitle(E,"gitTitleText",m.titleTopMargin,p.db.getDiagramTitle()),SOt(void 0,E,m.diagramPadding,m.useMaxWidth??v.useMaxWidth)}},styles:i=>`
.commit-id,
.commit-msg,
.branch-label {
fill: lightgrey;
color: lightgrey;
font-family: 'trebuchet ms', verdana, arial, sans-serif;
font-family: var(--mermaid-font-family);
}
${[0,1,2,3,4,5,6,7].map(a=>`
.branch-label${a} { fill: ${i["gitBranchLabel"+a]}; }
.commit${a} { stroke: ${i["git"+a]}; fill: ${i["git"+a]}; }
.commit-highlight${a} { stroke: ${i["gitInv"+a]}; fill: ${i["gitInv"+a]}; }
.label${a} { fill: ${i["git"+a]}; }
.arrow${a} { stroke: ${i["git"+a]}; }
`).join(`
`)}
.branch {
stroke-width: 1;
stroke: ${i.lineColor};
stroke-dasharray: 2;
}
.commit-label { font-size: ${i.commitLabelFontSize}; fill: ${i.commitLabelColor};}
.commit-label-bkg { font-size: ${i.commitLabelFontSize}; fill: ${i.commitLabelBackground}; opacity: 0.5; }
.tag-label { font-size: ${i.tagLabelFontSize}; fill: ${i.tagLabelColor};}
.tag-label-bkg { fill: ${i.tagLabelBackground}; stroke: ${i.tagLabelBorder}; }
.tag-hole { fill: ${i.textColor}; }
.commit-merge {
stroke: ${i.primaryColor};
fill: ${i.primaryColor};
}
.commit-reverse {
stroke: ${i.primaryColor};
fill: ${i.primaryColor};
stroke-width: 3;
}
.commit-highlight-outer {
}
.commit-highlight-inner {
stroke: ${i.primaryColor};
fill: ${i.primaryColor};
}
.arrow { stroke-width: 8; stroke-linecap: round; fill: none}
.gitTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${i.textColor};
}
`}},Symbol.toStringTag,{value:"Module"}));var P0t=function(){var i=function(Pt,pt,Ft,X){for(Ft=Ft||{},X=Pt.length;X--;Ft[Pt[X]]=pt);return Ft},a=[1,3],f=[1,5],p=[7,9,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,31,33,34,36,43,48],v=[1,32],m=[1,33],b=[1,34],E=[1,35],C=[1,36],A=[1,37],P=[1,38],F=[1,15],j=[1,16],R=[1,17],H=[1,18],Y=[1,19],rt=[1,20],J=[1,21],it=[1,22],ft=[1,24],Tt=[1,25],kt=[1,26],mt=[1,27],ct=[1,28],yt=[1,30],st=[1,39],xt=[1,42],ht=[5,7,9,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,31,33,34,36,43,48],dt={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,gantt:5,document:6,EOF:7,line:8,SPACE:9,statement:10,NL:11,weekday:12,weekday_monday:13,weekday_tuesday:14,weekday_wednesday:15,weekday_thursday:16,weekday_friday:17,weekday_saturday:18,weekday_sunday:19,dateFormat:20,inclusiveEndDates:21,topAxis:22,axisFormat:23,tickInterval:24,excludes:25,includes:26,todayMarker:27,title:28,acc_title:29,acc_title_value:30,acc_descr:31,acc_descr_value:32,acc_descr_multiline_value:33,section:34,clickStatement:35,taskTxt:36,taskData:37,openDirective:38,typeDirective:39,closeDirective:40,":":41,argDirective:42,click:43,callbackname:44,callbackargs:45,href:46,clickStatementDebug:47,open_directive:48,type_directive:49,arg_directive:50,close_directive:51,$accept:0,$end:1},terminals_:{2:"error",5:"gantt",7:"EOF",9:"SPACE",11:"NL",13:"weekday_monday",14:"weekday_tuesday",15:"weekday_wednesday",16:"weekday_thursday",17:"weekday_friday",18:"weekday_saturday",19:"weekday_sunday",20:"dateFormat",21:"inclusiveEndDates",22:"topAxis",23:"axisFormat",24:"tickInterval",25:"excludes",26:"includes",27:"todayMarker",28:"title",29:"acc_title",30:"acc_title_value",31:"acc_descr",32:"acc_descr_value",33:"acc_descr_multiline_value",34:"section",36:"taskTxt",37:"taskData",41:":",43:"click",44:"callbackname",45:"callbackargs",46:"href",48:"open_directive",49:"type_directive",50:"arg_directive",51:"close_directive"},productions_:[0,[3,2],[3,3],[6,0],[6,2],[8,2],[8,1],[8,1],[8,1],[12,1],[12,1],[12,1],[12,1],[12,1],[12,1],[12,1],[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],[10,1],[10,1],[10,2],[10,1],[4,4],[4,6],[35,2],[35,3],[35,3],[35,4],[35,3],[35,4],[35,2],[47,2],[47,3],[47,3],[47,4],[47,3],[47,4],[47,2],[38,1],[39,1],[42,1],[40,1]],performAction:function(pt,Ft,X,Rt,Bt,vt,Ot){var Vt=vt.length-1;switch(Bt){case 2:return vt[Vt-1];case 3:this.$=[];break;case 4:vt[Vt-1].push(vt[Vt]),this.$=vt[Vt-1];break;case 5:case 6:this.$=vt[Vt];break;case 7:case 8:this.$=[];break;case 9:Rt.setWeekday("monday");break;case 10:Rt.setWeekday("tuesday");break;case 11:Rt.setWeekday("wednesday");break;case 12:Rt.setWeekday("thursday");break;case 13:Rt.setWeekday("friday");break;case 14:Rt.setWeekday("saturday");break;case 15:Rt.setWeekday("sunday");break;case 16:Rt.setDateFormat(vt[Vt].substr(11)),this.$=vt[Vt].substr(11);break;case 17:Rt.enableInclusiveEndDates(),this.$=vt[Vt].substr(18);break;case 18:Rt.TopAxis(),this.$=vt[Vt].substr(8);break;case 19:Rt.setAxisFormat(vt[Vt].substr(11)),this.$=vt[Vt].substr(11);break;case 20:Rt.setTickInterval(vt[Vt].substr(13)),this.$=vt[Vt].substr(13);break;case 21:Rt.setExcludes(vt[Vt].substr(9)),this.$=vt[Vt].substr(9);break;case 22:Rt.setIncludes(vt[Vt].substr(9)),this.$=vt[Vt].substr(9);break;case 23:Rt.setTodayMarker(vt[Vt].substr(12)),this.$=vt[Vt].substr(12);break;case 25:Rt.setDiagramTitle(vt[Vt].substr(6)),this.$=vt[Vt].substr(6);break;case 26:this.$=vt[Vt].trim(),Rt.setAccTitle(this.$);break;case 27:case 28:this.$=vt[Vt].trim(),Rt.setAccDescription(this.$);break;case 29:Rt.addSection(vt[Vt].substr(8)),this.$=vt[Vt].substr(8);break;case 31:Rt.addTask(vt[Vt-1],vt[Vt]),this.$="task";break;case 35:this.$=vt[Vt-1],Rt.setClickEvent(vt[Vt-1],vt[Vt],null);break;case 36:this.$=vt[Vt-2],Rt.setClickEvent(vt[Vt-2],vt[Vt-1],vt[Vt]);break;case 37:this.$=vt[Vt-2],Rt.setClickEvent(vt[Vt-2],vt[Vt-1],null),Rt.setLink(vt[Vt-2],vt[Vt]);break;case 38:this.$=vt[Vt-3],Rt.setClickEvent(vt[Vt-3],vt[Vt-2],vt[Vt-1]),Rt.setLink(vt[Vt-3],vt[Vt]);break;case 39:this.$=vt[Vt-2],R
`+ne.showPosition()+`
Expecting `+ki.join(", ")+", got '"+(this.terminals_[$e]||$e)+"'":Ri="Parse error on line "+(qe+1)+": Unexpected "+($e==Wn?"end of input":"'"+(this.terminals_[$e]||$e)+"'"),this.parseError(Ri,{text:ne.match,token:this.terminals_[$e]||$e,line:ne.yylineno,loc:Ee,expected:ki})}if(fn[0]instanceof Array&&fn.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ye+", token: "+$e);switch(fn[0]){case 1:X.push($e),Bt.push(ne.yytext),vt.push(ne.yylloc),X.push(fn[1]),$e=null,_n=ne.yyleng,Vt=ne.yytext,qe=ne.yylineno,Ee=ne.yylloc;break;case 2:if(zi=this.productions_[fn[1]][1],Mi.$=Bt[Bt.length-zi],Mi._$={first_line:vt[vt.length-(zi||1)].first_line,last_line:vt[vt.length-1].last_line,first_column:vt[vt.length-(zi||1)].first_column,last_column:vt[vt.length-1].last_column},He&&(Mi._$.range=[vt[vt.length-(zi||1)].range[0],vt[vt.length-1].range[1]]),Yt=this.performAction.apply(Mi,[Vt,_n,qe,ke.yy,fn[1],Bt,vt].concat(Ae)),typeof Yt<"u")return Yt;zi&&(X=X.slice(0,-1*zi*2),Bt=Bt.slice(0,-1*zi),vt=vt.slice(0,-1*zi)),X.push(this.productions_[fn[1]][0]),Bt.push(Mi.$),vt.push(Mi._$),Se=Ot[X[X.length-2]][X[X.length-1]],X.push(Se);break;case 3:return!0}}return!0}},Ct=function(){var Pt={EOF:1,parseError:function(Ft,X){if(this.yy.parser)this.yy.parser.parseError(Ft,X);else throw new Error(Ft)},setInput:function(pt,Ft){return this.yy=Ft||this.yy||{},this._input=pt,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var pt=this._input[0];this.yytext+=pt,this.yyleng++,this.offset++,this.match+=pt,this.matched+=pt;var Ft=pt.match(/(?:\r\n?|\n).*/g);return Ft?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),pt},unput:function(pt){var Ft=pt.length,X=pt.split(/(?:\r\n?|\n)/g);this._input=pt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ft),this.offset-=Ft;var Rt=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),X.length-1&&(this.yylineno-=X.length-1);var Bt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:X?(X.length===Rt.length?this.yylloc.first_column:0)+Rt[Rt.length-X.length].length-X[0].length:this.yylloc.first_column-Ft},this.options.ranges&&(this.yylloc.range=[Bt[0],Bt[0]+this.yyleng-Ft]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(pt){this.unput(this.match.slice(pt))},pastInput:function(){var pt=this.matched.substr(0,this.matched.length-this.match.length);return(pt.length>20?"...":"")+pt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var pt=this.match;return pt.length<20&&(pt+=this._input.substr(0,20-pt.length)),(pt.substr(0,20)+(pt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var pt=this.pastInput(),Ft=new Array(pt.length+1).join("-");return pt+this.upcomingInput()+`
`+Ft+"^"},test_match:function(pt,Ft){var X,Rt,Bt;if(this.options.backtrack_lexer&&(Bt={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Bt.yylloc.range=this.yylloc.range.slice(0))),Rt=pt[0].match(/(?:\r\n?|\n).*/g),Rt&&(this.yylineno+=Rt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Rt?Rt[Rt.length-1].length-Rt[Rt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+pt[0].length},this.yytext+=pt[0],this.match+=pt[0],this.matches=pt,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(pt[0].length),this.matched+=pt[0],X=this.performAction.call(this,this.yy,this,Ft,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),X)return X;if(this._backtrack){for(var vt in Bt)this[vt]=Bt[vt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var pt,Ft,X,Rt;this._more||(this.yytext="",this.match="");for(var Bt=this._currentRules(),vt=0;vt<Bt.length;vt++)if(X=this._input.match(this.rules[Bt[vt]]),X&&(!Ft||X[0].length>Ft[0].length)){if(Ft=X,Rt=vt,this.options.backtrack_lexer){if(pt=this.test_match(X,Bt[vt]),pt!==!1)return pt;if(this._backtrack){Ft=!1;continue}else return!1}else if(!this.options.flex)break}return Ft?(pt=this.test_match(Ft,Bt[Rt]),pt!==!1?pt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Ft=this.next();return Ft||this.lex()},begin:function(Ft){this.conditionStack.push(Ft)},popState:function(){var Ft=this.conditionStack.length-1;return Ft>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(Ft){return Ft=this.conditionStack.length-1-Math.abs(Ft||0),Ft>=0?this.conditionStack[Ft]:"INITIAL"},pushState:function(Ft){this.begin(Ft)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Ft,X,Rt,Bt){switch(Rt){case 0:return this.begin("open_directive"),48;case 1:return this.begin("type_directive"),49;case 2:return this.popState(),this.begin("arg_directive"),41;case 3:return this.popState(),this.popState(),51;case 4:return 50;case 5:return this.begin("acc_title"),29;case 6:return this.popState(),"acc_title_value";case 7:return this.begin("acc_descr"),31;case 8:return this.popState(),"acc_descr_value";case 9:this.begin("acc_descr_multiline");break;case 10:this.popState();break;case 11:return"acc_descr_multiline_value";case 12:break;case 13:break;case 14:break;case 15:return 11;case 16:break;case 17:break;case 18:break;case 19:this.begin("href");break;case 20:this.popState();break;case 21:return 46;case 22:this.begin("callbackname");break;case 23:this.popState();break;case 24:this.popState(),this.begin("callbackargs");break;case 25:return 44;case 26:this.popState();break;case 27:return 45;case 28:this.begin("click");break;case 29:this.popState();break;case 30:return 43;case 31:return 5;case 32:return 20;case 33:return 21;case 34:return 22;case 35:return 23;case 36:return 24;case 37:return 26;case 38:return 25;case 39:return 27;case 40:return 13;case 41:return 14;case 42:return 15;case 43:return 16;case 44:return 17;case 45:return 18;case 46:return 19;case 47:return"date";case 48:return 28;case 49:return"accDescription";case 50:return 34;case 51:return 36;case 52:return 37;case 53:return 41;case 54:return 7;case 55:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/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,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:tickInterval\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:weekday\s+monday\b)/i,/^(?:weekday\s+tuesday\b)/i,/^(?:weekday\s+wednesday\b)/i,/^(?:weekday\s+thursday\b)/i,/^(?:weekday\s+friday\b)/i,/^(?:weekday\s+saturday\b)/i,/^(?:weekday\s+sunday\b)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[10,11],inclusive:!1},acc_descr:{rules:[8],inclusive:!1},acc_title:{rules:[6],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},callbackargs:{rules:[26,27],inclusive:!1},callbackname:{rules:[23,24,25],inclusive:!1},href:{rules:[20,21],inclusive:!1},click:{rules:[29,30],inclusive:!1},INITIAL:{rules:[0,5,7,9,12,13,14,15,16,17,18,19,22,28,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55],inclusive:!0}}};return Pt}();dt.lexer=Ct;function tt(){this.yy={}}return tt.prototype=dt,dt.Parser
.mermaid-main-font {
font-family: "trebuchet ms", verdana, arial, sans-serif;
font-family: var(--mermaid-font-family);
}
.exclude-range {
fill: ${i.excludeBkgColor};
}
.section {
stroke: none;
opacity: 0.2;
}
.section0 {
fill: ${i.sectionBkgColor};
}
.section2 {
fill: ${i.sectionBkgColor2};
}
.section1,
.section3 {
fill: ${i.altSectionBkgColor};
opacity: 0.2;
}
.sectionTitle0 {
fill: ${i.titleColor};
}
.sectionTitle1 {
fill: ${i.titleColor};
}
.sectionTitle2 {
fill: ${i.titleColor};
}
.sectionTitle3 {
fill: ${i.titleColor};
}
.sectionTitle {
text-anchor: start;
// font-size: ${i.ganttFontSize};
// text-height: 14px;
font-family: 'trebuchet ms', verdana, arial, sans-serif;
font-family: var(--mermaid-font-family);
}
/* Grid and axis */
.grid .tick {
stroke: ${i.gridColor};
opacity: 0.8;
shape-rendering: crispEdges;
text {
font-family: ${i.fontFamily};
fill: ${i.textColor};
}
}
.grid path {
stroke-width: 0;
}
/* Today line */
.today {
fill: none;
stroke: ${i.todayLineColor};
stroke-width: 2px;
}
/* Task styling */
/* Default task */
.task {
stroke-width: 2;
}
.taskText {
text-anchor: middle;
font-family: 'trebuchet ms', verdana, arial, sans-serif;
font-family: var(--mermaid-font-family);
}
// .taskText:not([font-size]) {
// font-size: ${i.ganttFontSize};
// }
.taskTextOutsideRight {
fill: ${i.taskTextDarkColor};
text-anchor: start;
// font-size: ${i.ganttFontSize};
font-family: 'trebuchet ms', verdana, arial, sans-serif;
font-family: var(--mermaid-font-family);
}
.taskTextOutsideLeft {
fill: ${i.taskTextDarkColor};
text-anchor: end;
// font-size: ${i.ganttFontSize};
}
/* Special case clickable */
.task.clickable {
cursor: pointer;
}
.taskText.clickable {
cursor: pointer;
fill: ${i.taskTextClickableColor} !important;
font-weight: bold;
}
.taskTextOutsideLeft.clickable {
cursor: pointer;
fill: ${i.taskTextClickableColor} !important;
font-weight: bold;
}
.taskTextOutsideRight.clickable {
cursor: pointer;
fill: ${i.taskTextClickableColor} !important;
font-weight: bold;
}
/* Specific task settings for the sections*/
.taskText0,
.taskText1,
.taskText2,
.taskText3 {
fill: ${i.taskTextColor};
}
.task0,
.task1,
.task2,
.task3 {
fill: ${i.taskBkgColor};
stroke: ${i.taskBorderColor};
}
.taskTextOutside0,
.taskTextOutside2
{
fill: ${i.taskTextOutsideColor};
}
.taskTextOutside1,
.taskTextOutside3 {
fill: ${i.taskTextOutsideColor};
}
/* Active task */
.active0,
.active1,
.active2,
.active3 {
fill: ${i.activeTaskBkgColor};
stroke: ${i.activeTaskBorderColor};
}
.activeText0,
.activeText1,
.activeText2,
.activeText3 {
fill: ${i.taskTextDarkColor} !important;
}
/* Completed task */
.done0,
.done1,
.done2,
.done3 {
stroke: ${i.doneTaskBorderColor};
fill: ${i.doneTaskBkgColor};
stroke-width: 2;
}
.doneText0,
.doneText1,
.doneText2,
.doneText3 {
fill: ${i.taskTextDarkColor} !important;
}
/* Tasks on the critical line */
.crit0,
.crit1,
.crit2,
.crit3 {
stroke: ${i.critBorderColor};
fill: ${i.critBkgColor};
stroke-width: 2;
}
.activeCrit0,
.activeCrit1,
.activeCrit2,
.activeCrit3 {
stroke: ${i.critBorderColor};
fill: ${i.activeTaskBkgColor};
stroke-width: 2;
}
.doneCrit0,
.doneCrit1,
.doneCrit2,
.doneCrit3 {
stroke: ${i.critBorderColor};
fill: ${i.doneTaskBkgColor};
stroke-width: 2;
cursor: pointer;
shape-rendering: crispEdges;
}
.milestone {
transform: rotate(45deg) scale(0.8,0.8);
}
.milestoneText {
font-style: italic;
}
.doneCritText0,
.doneCritText1,
.doneCritText2,
.doneCritText3 {
fill: ${i.taskTextDarkColor} !important;
}
.activeCritText0,
.activeCritText1,
.activeCritText2,
.activeCritText3 {
fill: ${i.taskTextDarkColor} !important;
}
.titleText {
text-anchor: middle;
font-size: 18px;
fill: ${i.textColor} ;
font-family: 'trebuchet ms', verdana, arial, sans-serif;
font-family: var(--mermaid-font-family);
}
`}},Symbol.toStringTag,{value:"Module"}));var K0t=function(){var i=function(m,b,E,C){for(E=E||{},C=m.length;C--;E[m[C]]=b);return E},a=[6,9,10],f={trace:function(){},yy:{},symbols_:{error:2,start:3,info:4,document:5,EOF:6,line:7,statement:8,NL:9,showInfo:10,$accept:0,$end:1},terminals_:{2:"error",4:"info",6:"EOF",9:"NL",10:"showInfo"},productions_:[0,[3,3],[5,0],[5,2],[7,1],[7,1],[8,1]],performAction:function(b,E,C,A,P,F,j){switch(F.length-1,P){case 1:return A;case 4:break;case 6:A.setInfo(!0);break}},table:[{3:1,4:[1,2]},{1:[3]},i(a,[2,2],{5:3}),{6:[1,4],7:5,8:6,9:[1,7],10:[1,8]},{1:[2,1]},i(a,[2,3]),i(a,[2,4]),i(a,[2,5]),i(a,[2,6])],defaultActions:{4:[2,1]},parseError:function(b,E){if(E.recoverable)this.trace(b);else{var C=new Error(b);throw C.hash=E,C}},parse:function(b){var E=this,C=[0],A=[],P=[null],F=[],j=this.table,R="",H=0,Y=0,rt=2,J=1,it=F.slice.call(arguments,1),ft=Object.create(this.lexer),Tt={yy:{}};for(var kt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,kt)&&(Tt.yy[kt]=this.yy[kt]);ft.setInput(b,Tt.yy),Tt.yy.lexer=ft,Tt.yy.parser=this,typeof ft.yylloc>"u"&&(ft.yylloc={});var mt=ft.yylloc;F.push(mt);var ct=ft.options&&ft.options.ranges;typeof Tt.yy.parseError=="function"?this.parseError=Tt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function yt(){var Rt;return Rt=A.pop()||ft.lex()||J,typeof Rt!="number"&&(Rt instanceof Array&&(A=Rt,Rt=A.pop()),Rt=E.symbols_[Rt]||Rt),Rt}for(var st,xt,ht,dt,Ct={},tt,Pt,pt,Ft;;){if(xt=C[C.length-1],this.defaultActions[xt]?ht=this.defaultActions[xt]:((st===null||typeof st>"u")&&(st=yt()),ht=j[xt]&&j[xt][st]),typeof ht>"u"||!ht.length||!ht[0]){var X="";Ft=[];for(tt in j[xt])this.terminals_[tt]&&tt>rt&&Ft.push("'"+this.terminals_[tt]+"'");ft.showPosition?X="Parse error on line "+(H+1)+`:
`+ft.showPosition()+`
Expecting `+Ft.join(", ")+", got '"+(this.terminals_[st]||st)+"'":X="Parse error on line "+(H+1)+": Unexpected "+(st==J?"end of input":"'"+(this.terminals_[st]||st)+"'"),this.parseError(X,{text:ft.match,token:this.terminals_[st]||st,line:ft.yylineno,loc:mt,expected:Ft})}if(ht[0]instanceof Array&&ht.length>1)throw new Error("Parse Error: multiple actions possible at state: "+xt+", token: "+st);switch(ht[0]){case 1:C.push(st),P.push(ft.yytext),F.push(ft.yylloc),C.push(ht[1]),st=null,Y=ft.yyleng,R=ft.yytext,H=ft.yylineno,mt=ft.yylloc;break;case 2:if(Pt=this.productions_[ht[1]][1],Ct.$=P[P.length-Pt],Ct._$={first_line:F[F.length-(Pt||1)].first_line,last_line:F[F.length-1].last_line,first_column:F[F.length-(Pt||1)].first_column,last_column:F[F.length-1].last_column},ct&&(Ct._$.range=[F[F.length-(Pt||1)].range[0],F[F.length-1].range[1]]),dt=this.performAction.apply(Ct,[R,Y,H,Tt.yy,ht[1],P,F].concat(it)),typeof dt<"u")return dt;Pt&&(C=C.slice(0,-1*Pt*2),P=P.slice(0,-1*Pt),F=F.slice(0,-1*Pt)),C.push(this.productions_[ht[1]][0]),P.push(Ct.$),F.push(Ct._$),pt=j[C[C.length-2]][C[C.length-1]],C.push(pt);break;case 3:return!0}}return!0}},p=function(){var m={EOF:1,parseError:function(E,C){if(this.yy.parser)this.yy.parser.parseError(E,C);else throw new Error(E)},setInput:function(b,E){return this.yy=E||this.yy||{},this._input=b,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var b=this._input[0];this.yytext+=b,this.yyleng++,this.offset++,this.match+=b,this.matched+=b;var E=b.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),b},unput:function(b){var E=b.length,C=b.split(/(?:\r\n?|\n)/g);this._input=b+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),C.length-1&&(this.yylineno-=C.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:C?(C.length===A.length?this.yylloc.first_column:0)+A[A.length-C.length].length-C[0].length:this.yylloc.first_column-E},this.options.ranges&&(this.yylloc.range=[P[0],P[0]+this.yyleng-E]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(b){this.unput(this.match.slice(b))},pastInput:function(){var b=this.matched.substr(0,this.matched.length-this.match.length);return(b.length>20?"...":"")+b.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var b=this.match;return b.length<20&&(b+=this._input.substr(0,20-b.length)),(b.substr(0,20)+(b.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var b=this.pastInput(),E=new Array(b.length+1).join("-");return b+this.upcomingInput()+`
`+E+"^"},test_match:function(b,E){var C,A,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))),A=b[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+b[0].length},this.yytext+=b[0],this.match+=b[0],this.matches=b,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(b[0].length),this.matched+=b[0],C=this.performAction.call(this,this.yy,this,E,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),C)return C;if(this._backtrack){for(var F in P)this[F]=P[F];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var b,E,C,A;this._more||(this.yytext="",this.match="");for(var P=this._currentRules(),F=0;F<P.length;F++)if(C=this._input.match(this.rules[P[F]]),C&&(!E||C[0].length>E[0].length)){if(E=C,A=F,this.options.backtrack_lexer){if(b=this.test_match(C,P[F]),b!==!1)return b;if(this._backtrack){E=!1;continue}else return!1}else if(!this.options.flex)break}return E?(b=this.test_match(E,P[A]),b!==!1?b:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var E=this.next();return E||this.lex()},begin:function(E){this.conditionStack.push(E)},popState:function(){var E=this.conditionStack.length-1;return E>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(E){return E=this.conditionStack.length-1-Math.abs(E||0),E>=0?this.conditionStack[E]:"INITIAL"},pushState:function(E){this.begin(E)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(E,C,A,P){switch(A){case 0:return 4;case 1:return 9;case 2:return"space";case 3:return 10;case 4:return 6;case 5:return"TXT"}},rules:[/^(?:info\b)/i,/^(?:[\s\n\r]+)/i,/^(?:[\s]+)/i,/^(?:showInfo\b)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5],inclusive:!0}}};return m}();f.lexer=p;function v(){this.yy={}}return v.prototype=f,f.Parser=v,new v}();K0t.parser=K0t;const mqe=K0t,oRt={info:!1};let Y0t=oRt.info;const yqe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:mqe,db:{clear:()=>{Y0t=oRt.info},setInfo:i=>{Y0t=i},getInfo:()=>Y0t},renderer:{draw:(i,a,f)=>{Wt.debug(`rendering info diagram
`+i);const p=ldt(a);og(p,100,400,!0),p.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${f}`)}}}},Symbol.toStringTag,{value:"Module"}));var X0t=function(){var i=function(mt,ct,yt,st){for(yt=yt||{},st=mt.length;st--;yt[mt[st]]=ct);return yt},a=[1,4],f=[1,5],p=[1,6],v=[1,7],m=[1,9],b=[1,11,13,15,17,19,20,26,27,28,29],E=[2,5],C=[1,6,11,13,15,17,19,20,26,27,28,29],A=[26,27,28],P=[2,8],F=[1,18],j=[1,19],R=[1,20],H=[1,21],Y=[1,22],rt=[1,23],J=[1,28],it=[6,26,27,28,29],ft={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,directive:5,PIE:6,document:7,showData:8,line:9,statement:10,txt:11,value:12,title:13,title_value:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,openDirective:21,typeDirective:22,closeDirective:23,":":24,argDirective:25,NEWLINE:26,";":27,EOF:28,open_directive:29,type_directive:30,arg_directive:31,close_directive:32,$accept:0,$end:1},terminals_:{2:"error",6:"PIE",8:"showData",11:"txt",12:"value",13:"title",14:"title_value",15:"acc_title",16:"acc_title_value",17:"acc_descr",18:"acc_descr_value",19:"acc_descr_multiline_value",20:"section",24:":",26:"NEWLINE",27:";",28:"EOF",29:"open_directive",30:"type_directive",31:"arg_directive",32:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,3],[7,0],[7,2],[9,2],[10,0],[10,2],[10,2],[10,2],[10,2],[10,1],[10,1],[10,1],[5,3],[5,5],[4,1],[4,1],[4,1],[21,1],[22,1],[25,1],[23,1]],performAction:function(ct,yt,st,xt,ht,dt,Ct){var tt=dt.length-1;switch(ht){case 4:xt.setShowData(!0);break;case 7:this.$=dt[tt-1];break;case 9:xt.addSection(dt[tt-1],xt.cleanupValue(dt[tt]));break;case 10:this.$=dt[tt].trim(),xt.setDiagramTitle(this.$);break;case 11:this.$=dt[tt].trim(),xt.setAccTitle(this.$);break;case 12:case 13:this.$=dt[tt].trim(),xt.setAccDescription(this.$);break;case 14:xt.addSection(dt[tt].substr(8)),this.$=dt[tt].substr(8);break;case 21:xt.parseDirective("%%{","open_directive");break;case 22:xt.parseDirective(dt[tt],"type_directive");break;case 23:dt[tt]=dt[tt].trim().replace(/'/g,'"'),xt.parseDirective(dt[tt],"arg_directive");break;case 24:xt.parseDirective("}%%","close_directive","pie");break}},table:[{3:1,4:2,5:3,6:a,21:8,26:f,27:p,28:v,29:m},{1:[3]},{3:10,4:2,5:3,6:a,21:8,26:f,27:p,28:v,29:m},{3:11,4:2,5:3,6:a,21:8,26:f,27:p,28:v,29:m},i(b,E,{7:12,8:[1,13]}),i(C,[2,18]),i(C,[2,19]),i(C,[2,20]),{22:14,30:[1,15]},{30:[2,21]},{1:[2,1]},{1:[2,2]},i(A,P,{21:8,9:16,10:17,5:24,1:[2,3],11:F,13:j,15:R,17:H,19:Y,20:rt,29:m}),i(b,E,{7:25}),{23:26,24:[1,27],32:J},i([24,32],[2,22]),i(b,[2,6]),{4:29,26:f,27:p,28:v},{12:[1,30]},{14:[1,31]},{16:[1,32]},{18:[1,33]},i(A,[2,13]),i(A,[2,14]),i(A,[2,15]),i(A,P,{21:8,9:16,10:17,5:24,1:[2,4],11:F,13:j,15:R,17:H,19:Y,20:rt,29:m}),i(it,[2,16]),{25:34,31:[1,35]},i(it,[2,24]),i(b,[2,7]),i(A,[2,9]),i(A,[2,10]),i(A,[2,11]),i(A,[2,12]),{23:36,32:J},{32:[2,23]},i(it,[2,17])],defaultActions:{9:[2,21],10:[2,1],11:[2,2],35:[2,23]},parseError:function(ct,yt){if(yt.recoverable)this.trace(ct);else{var st=new Error(ct);throw st.hash=yt,st}},parse:function(ct){var yt=this,st=[0],xt=[],ht=[null],dt=[],Ct=this.table,tt="",Pt=0,pt=0,Ft=2,X=1,Rt=dt.slice.call(arguments,1),Bt=Object.create(this.lexer),vt={yy:{}};for(var Ot in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ot)&&(vt.yy[Ot]=this.yy[Ot]);Bt.setInput(ct,vt.yy),vt.yy.lexer=Bt,vt.yy.parser=this,typeof Bt.yylloc>"u"&&(Bt.yylloc={});var Vt=Bt.yylloc;dt.push(Vt);var qe=Bt.options&&Bt.options.ranges;typeof vt.yy.parseError=="function"?this.parseError=vt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function _n(){var ye;return ye=xt.pop()||Bt.lex()||X,typeof ye!="number"&&(ye instanceof Array&&(xt=ye,ye=xt.pop()),ye=yt.symbols_[ye]||ye),ye}for(var Te,Wn,Ae,ne,ke={},Ve,Ee,He,Ce;;){if(Wn=st[st.length-1],this.defaultActions[Wn]?Ae=this.defaultActions[Wn]:((Te===null||typeof Te>"u")&&(Te=_n()),Ae=Ct[Wn]&&Ct[Wn][Te]),typeof Ae>"u"||!Ae.length||!Ae[0]){var $e="";Ce=[];for(Ve in Ct[Wn])this.terminals_[Ve]&&Ve>Ft&&Ce.push("'"+this
`+Bt.showPosition()+`
Expecting `+Ce.join(", ")+", got '"+(this.terminals_[Te]||Te)+"'":$e="Parse error on line "+(Pt+1)+": Unexpected "+(Te==X?"end of input":"'"+(this.terminals_[Te]||Te)+"'"),this.parseError($e,{text:Bt.match,token:this.terminals_[Te]||Te,line:Bt.yylineno,loc:Vt,expected:Ce})}if(Ae[0]instanceof Array&&Ae.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Wn+", token: "+Te);switch(Ae[0]){case 1:st.push(Te),ht.push(Bt.yytext),dt.push(Bt.yylloc),st.push(Ae[1]),Te=null,pt=Bt.yyleng,tt=Bt.yytext,Pt=Bt.yylineno,Vt=Bt.yylloc;break;case 2:if(Ee=this.productions_[Ae[1]][1],ke.$=ht[ht.length-Ee],ke._$={first_line:dt[dt.length-(Ee||1)].first_line,last_line:dt[dt.length-1].last_line,first_column:dt[dt.length-(Ee||1)].first_column,last_column:dt[dt.length-1].last_column},qe&&(ke._$.range=[dt[dt.length-(Ee||1)].range[0],dt[dt.length-1].range[1]]),ne=this.performAction.apply(ke,[tt,pt,Pt,vt.yy,Ae[1],ht,dt].concat(Rt)),typeof ne<"u")return ne;Ee&&(st=st.slice(0,-1*Ee*2),ht=ht.slice(0,-1*Ee),dt=dt.slice(0,-1*Ee)),st.push(this.productions_[Ae[1]][0]),ht.push(ke.$),dt.push(ke._$),He=Ct[st[st.length-2]][st[st.length-1]],st.push(He);break;case 3:return!0}}return!0}},Tt=function(){var mt={EOF:1,parseError:function(yt,st){if(this.yy.parser)this.yy.parser.parseError(yt,st);else throw new Error(yt)},setInput:function(ct,yt){return this.yy=yt||this.yy||{},this._input=ct,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var ct=this._input[0];this.yytext+=ct,this.yyleng++,this.offset++,this.match+=ct,this.matched+=ct;var yt=ct.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),ct},unput:function(ct){var yt=ct.length,st=ct.split(/(?:\r\n?|\n)/g);this._input=ct+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-yt),this.offset-=yt;var xt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),st.length-1&&(this.yylineno-=st.length-1);var ht=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:st?(st.length===xt.length?this.yylloc.first_column:0)+xt[xt.length-st.length].length-st[0].length:this.yylloc.first_column-yt},this.options.ranges&&(this.yylloc.range=[ht[0],ht[0]+this.yyleng-yt]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(ct){this.unput(this.match.slice(ct))},pastInput:function(){var ct=this.matched.substr(0,this.matched.length-this.match.length);return(ct.length>20?"...":"")+ct.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var ct=this.match;return ct.length<20&&(ct+=this._input.substr(0,20-ct.length)),(ct.substr(0,20)+(ct.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var ct=this.pastInput(),yt=new Array(ct.length+1).join("-");return ct+this.upcomingInput()+`
`+yt+"^"},test_match:function(ct,yt){var st,xt,ht;if(this.options.backtrack_lexer&&(ht={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&&(ht.yylloc.range=this.yylloc.range.slice(0))),xt=ct[0].match(/(?:\r\n?|\n).*/g),xt&&(this.yylineno+=xt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:xt?xt[xt.length-1].length-xt[xt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+ct[0].length},this.yytext+=ct[0],this.match+=ct[0],this.matches=ct,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(ct[0].length),this.matched+=ct[0],st=this.performAction.call(this,this.yy,this,yt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),st)return st;if(this._backtrack){for(var dt in ht)this[dt]=ht[dt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var ct,yt,st,xt;this._more||(this.yytext="",this.match="");for(var ht=this._currentRules(),dt=0;dt<ht.length;dt++)if(st=this._input.match(this.rules[ht[dt]]),st&&(!yt||st[0].length>yt[0].length)){if(yt=st,xt=dt,this.options.backtrack_lexer){if(ct=this.test_match(st,ht[dt]),ct!==!1)return ct;if(this._backtrack){yt=!1;continue}else return!1}else if(!this.options.flex)break}return yt?(ct=this.test_match(yt,ht[xt]),ct!==!1?ct:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var yt=this.next();return yt||this.lex()},begin:function(yt){this.conditionStack.push(yt)},popState:function(){var yt=this.conditionStack.length-1;return yt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(yt){return yt=this.conditionStack.length-1-Math.abs(yt||0),yt>=0?this.conditionStack[yt]:"INITIAL"},pushState:function(yt){this.begin(yt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(yt,st,xt,ht){switch(xt){case 0:return this.begin("open_directive"),29;case 1:return this.begin("type_directive"),30;case 2:return this.popState(),this.begin("arg_directive"),24;case 3:return this.popState(),this.popState(),32;case 4:return 31;case 5:break;case 6:break;case 7:return 26;case 8:break;case 9:break;case 10:return this.begin("title"),13;case 11:return this.popState(),"title_value";case 12:return this.begin("acc_title"),15;case 13:return this.popState(),"acc_title_value";case 14:return this.begin("acc_descr"),17;case 15:return this.popState(),"acc_descr_value";case 16:this.begin("acc_descr_multiline");break;case 17:this.popState();break;case 18:return"acc_descr_multiline_value";case 19:this.begin("string");break;case 20:this.popState();break;case 21:return"txt";case 22:return 6;case 23:return 8;case 24:return"value";case 25:return 28}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:[\s]+)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:pie\b)/i,/^(?:showData\b)/i,/^(?::[\s]*[\d]+(?:\.[\d]+)?)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[17,18],inclusive:!1},acc_descr:{rules:[15],inclusive:!1},acc_title:{rules:[13],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},title:{rules:[11],inclusive:!1},string:{rules:[20,21],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,10,12,14,16,19,22,23,24,25],inclusive:!0}}};return mt}();ft.lexer=Tt;function kt(){this.yy={}}return kt.prototype=ft,ft.Parser=kt,new kt}();X0t.parser=X0t;const xqe=X0t,cRt=If.pie,AK={sections:{},showData:!1,config:cRt};let LK=AK.sections,Q0t=AK.showData;const kqe=structuredClone(cRt),Eqe={getConfig:()=>structuredClone(kqe),parseDirective:(i,a,f)=>{FW(void 0,i,a,f)},clear:()=>{LK=structuredClone(AK.sections),Q0t=AK.showData,cg()},setDiagramTitle:Nb,getDiagramTitle:hp,setAccTitle:m0,getAccTitle:ug,setAccDescription:lg,getAccDescription:hg,addSection:(i,a)=>{i=v0(i,De()),LK[i]===void 0&&(LK[i]=a,Wt.debug(`added new section: ${i}, with value: ${a}`))},getSections:()=>LK,cleanupValue:i=>(i.substring(0,1)===":"&&(i=i.substring(1).trim()),Number(i.trim())),setShowData:i=>{Q0t=i},getShowData:()=>Q0t},Tqe=i=>`
.pieCircle{
stroke: ${i.pieStrokeColor};
stroke-width : ${i.pieStrokeWidth};
opacity : ${i.pieOpacity};
}
.pieOuterCircle{
stroke: ${i.pieOuterStrokeColor};
stroke-width: ${i.pieOuterStrokeWidth};
fill: none;
}
.pieTitleText {
text-anchor: middle;
font-size: ${i.pieTitleTextSize};
fill: ${i.pieTitleTextColor};
font-family: ${i.fontFamily};
}
.slice {
font-family: ${i.fontFamily};
fill: ${i.pieSectionTextColor};
font-size:${i.pieSectionTextSize};
// fill: white;
}
.legend text {
fill: ${i.pieLegendTextColor};
font-family: ${i.fontFamily};
font-size: ${i.pieLegendTextSize};
}
`,_qe=i=>{const a=Object.entries(i).map(p=>({label:p[0],value:p[1]}));return jEe().value(p=>p.value)(a)},Cqe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:xqe,db:Eqe,renderer:{draw:(i,a,f,p)=>{var xt,ht;Wt.debug(`rendering pie chart
`+i);const v=p.db,m=De(),b=HIt(v.getConfig(),m.pie),E=450,C=((ht=(xt=document.getElementById(a))==null?void 0:xt.parentElement)==null?void 0:ht.offsetWidth)??b.useWidth,A=ldt(a);A.attr("viewBox",`0 0 ${C} ${E}`),og(A,E,C,b.useMaxWidth);const P=40,F=18,j=4,R=A.append("g");R.attr("transform","translate("+C/2+","+E/2+")");const{themeVariables:H}=m;let[Y]=zA(H.pieOuterStrokeWidth);Y??(Y=2);const rt=b.textPosition,J=Math.min(C,E)/2-P,it=LA().innerRadius(0).outerRadius(J),ft=LA().innerRadius(J*rt).outerRadius(J*rt);R.append("circle").attr("cx",0).attr("cy",0).attr("r",J+Y/2).attr("class","pieOuterCircle");const Tt=v.getSections(),kt=_qe(Tt),mt=[H.pie1,H.pie2,H.pie3,H.pie4,H.pie5,H.pie6,H.pie7,H.pie8,H.pie9,H.pie10,H.pie11,H.pie12],ct=E1t(mt);R.selectAll("mySlices").data(kt).enter().append("path").attr("d",it).attr("fill",dt=>ct(dt.data.label)).attr("class","pieCircle");let yt=0;Object.keys(Tt).forEach(dt=>{yt+=Tt[dt]}),R.selectAll("mySlices").data(kt).enter().append("text").text(dt=>(dt.data.value/yt*100).toFixed(0)+"%").attr("transform",dt=>"translate("+ft.centroid(dt)+")").style("text-anchor","middle").attr("class","slice"),R.append("text").text(v.getDiagramTitle()).attr("x",0).attr("y",-(E-50)/2).attr("class","pieTitleText");const st=R.selectAll(".legend").data(ct.domain()).enter().append("g").attr("class","legend").attr("transform",(dt,Ct)=>{const tt=F+j,Pt=tt*ct.domain().length/2,pt=12*F,Ft=Ct*tt-Pt;return"translate("+pt+","+Ft+")"});st.append("rect").attr("width",F).attr("height",F).style("fill",ct).style("stroke",ct),st.data(kt).append("text").attr("x",F+j).attr("y",F-j).text(dt=>{const{label:Ct,value:tt}=dt.data;return v.getShowData()?`${Ct} [${tt}]`:Ct})}},styles:Tqe}},Symbol.toStringTag,{value:"Module"}));var Z0t=function(){var i=function(Ae,ne,ke,Ve){for(ke=ke||{},Ve=Ae.length;Ve--;ke[Ae[Ve]]=ne);return ke},a=[1,3],f=[1,5],p=[1,6],v=[1,7],m=[1,8],b=[1,10],E=[1,5,14,16,18,20,21,26,28,29,30,31,32,38,39,40,41,47,48,50,51,52,53,54,55,56,57,58,59,60],C=[1,5,7,14,16,18,20,21,26,28,29,30,31,32,38,39,40,41,47,48,50,51,52,53,54,55,56,57,58,59,60],A=[38,39,40],P=[2,8],F=[1,19],j=[1,23],R=[1,24],H=[1,25],Y=[1,26],rt=[1,27],J=[1,29],it=[1,30],ft=[1,31],Tt=[1,32],kt=[1,33],mt=[1,34],ct=[1,37],yt=[1,38],st=[1,39],xt=[1,40],ht=[1,41],dt=[1,42],Ct=[1,43],tt=[1,44],Pt=[1,45],pt=[1,46],Ft=[1,47],X=[1,48],Rt=[1,49],Bt=[1,52],vt=[1,67],Ot=[1,68],Vt=[5,23,27,38,39,40,50,51,52,53,54,55,56,57,58,59,60,61],qe=[5,7,38,39,40,41],_n={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,SPACE:5,directive:6,QUADRANT:7,document:8,line:9,statement:10,axisDetails:11,quadrantDetails:12,points:13,title:14,title_value:15,acc_title:16,acc_title_value:17,acc_descr:18,acc_descr_value:19,acc_descr_multiline_value:20,section:21,text:22,point_start:23,point_x:24,point_y:25,"X-AXIS":26,"AXIS-TEXT-DELIMITER":27,"Y-AXIS":28,QUADRANT_1:29,QUADRANT_2:30,QUADRANT_3:31,QUADRANT_4:32,openDirective:33,typeDirective:34,closeDirective:35,":":36,argDirective:37,NEWLINE:38,SEMI:39,EOF:40,open_directive:41,type_directive:42,arg_directive:43,close_directive:44,alphaNumToken:45,textNoTagsToken:46,STR:47,MD_STR:48,alphaNum:49,PUNCTUATION:50,AMP:51,NUM:52,ALPHA:53,COMMA:54,PLUS:55,EQUALS:56,MULT:57,DOT:58,BRKT:59,UNDERSCORE:60,MINUS:61,$accept:0,$end:1},terminals_:{2:"error",5:"SPACE",7:"QUADRANT",14:"title",15:"title_value",16:"acc_title",17:"acc_title_value",18:"acc_descr",19:"acc_descr_value",20:"acc_descr_multiline_value",21:"section",23:"point_start",24:"point_x",25:"point_y",26:"X-AXIS",27:"AXIS-TEXT-DELIMITER",28:"Y-AXIS",29:"QUADRANT_1",30:"QUADRANT_2",31:"QUADRANT_3",32:"QUADRANT_4",36:":",38:"NEWLINE",39:"SEMI",40:"EOF",41:"open_directive",42:"type_directive",43:"arg_directive",44:"close_directive",47:"STR",48:"MD_STR",50:"PUNCTUATION",51:"AMP",52:"NUM",53:"ALPHA",54:"COMMA",55:"PLUS",56:"EQUALS",57:"MULT",58:"DOT",59:"BRKT",60:"UNDERSCORE",61:"MINUS"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[10,0],[10,2],[10,1],[10,1],[10,1],[10,2],[10,2],[10,2],[10,1],[10,1],[10,1],[13,4],[11,4],[11,3],[11,2],[11,4],[11,3],[11,2],[12,2],[12,2],[12,2],[12,2
`+Se.showPosition()+`
Expecting `+_r.join(", ")+", got '"+(this.terminals_[Nn]||Nn)+"'":qr="Parse error on line "+(fn+1)+": Unexpected "+(Nn==qt?"end of input":"'"+(this.terminals_[Nn]||Nn)+"'"),this.parseError(qr,{text:Se.match,token:this.terminals_[Nn]||Nn,line:Se.yylineno,loc:pi,expected:_r})}if(Li[0]instanceof Array&&Li.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Wr+", token: "+Nn);switch(Li[0]){case 1:Ve.push(Nn),He.push(Se.yytext),Ce.push(Se.yylloc),Ve.push(Li[1]),Nn=null,Yt=Se.yyleng,ye=Se.yytext,fn=Se.yylineno,pi=Se.yylloc;break;case 2:if(Xi=this.productions_[Li[1]][1],Ts.$=He[He.length-Xi],Ts._$={first_line:Ce[Ce.length-(Xi||1)].first_line,last_line:Ce[Ce.length-1].last_line,first_column:Ce[Ce.length-(Xi||1)].first_column,last_column:Ce[Ce.length-1].last_column},bi&&(Ts._$.range=[Ce[Ce.length-(Xi||1)].range[0],Ce[Ce.length-1].range[1]]),is=this.performAction.apply(Ts,[ye,Yt,fn,ki.yy,Li[1],He,Ce].concat(zi)),typeof is<"u")return is;Xi&&(Ve=Ve.slice(0,-1*Xi*2),He=He.slice(0,-1*Xi),Ce=Ce.slice(0,-1*Xi)),Ve.push(this.productions_[Li[1]][0]),He.push(Ts.$),Ce.push(Ts._$),Ga=$e[Ve[Ve.length-2]][Ve[Ve.length-1]],Ve.push(Ga);break;case 3:return!0}}return!0}},Te=function(){var Ae={EOF:1,parseError:function(ke,Ve){if(this.yy.parser)this.yy.parser.parseError(ke,Ve);else throw new Error(ke)},setInput:function(ne,ke){return this.yy=ke||this.yy||{},this._input=ne,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var ne=this._input[0];this.yytext+=ne,this.yyleng++,this.offset++,this.match+=ne,this.matched+=ne;var ke=ne.match(/(?:\r\n?|\n).*/g);return ke?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ne},unput:function(ne){var ke=ne.length,Ve=ne.split(/(?:\r\n?|\n)/g);this._input=ne+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ke),this.offset-=ke;var Ee=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),Ve.length-1&&(this.yylineno-=Ve.length-1);var He=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:Ve?(Ve.length===Ee.length?this.yylloc.first_column:0)+Ee[Ee.length-Ve.length].length-Ve[0].length:this.yylloc.first_column-ke},this.options.ranges&&(this.yylloc.range=[He[0],He[0]+this.yyleng-ke]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(ne){this.unput(this.match.slice(ne))},pastInput:function(){var ne=this.matched.substr(0,this.matched.length-this.match.length);return(ne.length>20?"...":"")+ne.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var ne=this.match;return ne.length<20&&(ne+=this._input.substr(0,20-ne.length)),(ne.substr(0,20)+(ne.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var ne=this.pastInput(),ke=new Array(ne.length+1).join("-");return ne+this.upcomingInput()+`
`+ke+"^"},test_match:function(ne,ke){var Ve,Ee,He;if(this.options.backtrack_lexer&&(He={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&&(He.yylloc.range=this.yylloc.range.slice(0))),Ee=ne[0].match(/(?:\r\n?|\n).*/g),Ee&&(this.yylineno+=Ee.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ee?Ee[Ee.length-1].length-Ee[Ee.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],Ve=this.performAction.call(this,this.yy,this,ke,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Ve)return Ve;if(this._backtrack){for(var Ce in He)this[Ce]=He[Ce];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var ne,ke,Ve,Ee;this._more||(this.yytext="",this.match="");for(var He=this._currentRules(),Ce=0;Ce<He.length;Ce++)if(Ve=this._input.match(this.rules[He[Ce]]),Ve&&(!ke||Ve[0].length>ke[0].length)){if(ke=Ve,Ee=Ce,this.options.backtrack_lexer){if(ne=this.test_match(Ve,He[Ce]),ne!==!1)return ne;if(this._backtrack){ke=!1;continue}else return!1}else if(!this.options.flex)break}return ke?(ne=this.test_match(ke,He[Ee]),ne!==!1?ne:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var ke=this.next();return ke||this.lex()},begin:function(ke){this.conditionStack.push(ke)},popState:function(){var ke=this.conditionStack.length-1;return ke>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(ke){return ke=this.conditionStack.length-1-Math.abs(ke||0),ke>=0?this.conditionStack[ke]:"INITIAL"},pushState:function(ke){this.begin(ke)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(ke,Ve,Ee,He){switch(Ee){case 0:return this.begin("open_directive"),41;case 1:return this.begin("type_directive"),42;case 2:return this.popState(),this.begin("arg_directive"),36;case 3:return this.popState(),this.popState(),44;case 4:return 43;case 5:break;case 6:break;case 7:return 38;case 8:break;case 9:return this.begin("title"),14;case 10:return this.popState(),"title_value";case 11:return this.begin("acc_title"),16;case 12:return this.popState(),"acc_title_value";case 13:return this.begin("acc_descr"),18;case 14:return this.popState(),"acc_descr_value";case 15:this.begin("acc_descr_multiline");break;case 16:this.popState();break;case 17:return"acc_descr_multiline_value";case 18:return 26;case 19:return 28;case 20:return 27;case 21:return 29;case 22:return 30;case 23:return 31;case 24:return 32;case 25:this.begin("md_string");break;case 26:return"MD_STR";case 27:this.popState();break;case 28:this.begin("string");break;case 29:this.popState();break;case 30:return"STR";case 31:return this.begin("point_start"),23;case 32:return this.begin("point_x"),24;case 33:this.popState();break;case 34:this.popState(),this.begin("point_y");break;case 35:return this.popState(),25;case 36:return 7;case 37:return 53;case 38:return"COLON";case 39:return 55;case 40:return 54;case 41:return 56;case 42:return 56;case 43:return 57;case 44:return 59;case 45:return 60;case 46:return 58;case 47:return 51;case 48:return 61;case 49:return 52;case 50:return 5;case 51:return 39;case 52:return 50;case 53:return 40}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?: *x-axis *)/i,/^(?: *y-axis *)/i,/^(?: *--+> *)/i,/^(?: *quadrant-1 *)/i,/^(?: *quadrant-2 *)/i,/^(?: *quadrant-3 *)/i,/^(?: *quadrant-4 *)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\s*:\s*\[\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?:\s*\] *)/i,/^(?:\s*,\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?: *quadrantChart *)/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s)/i,/^(?:;)/i,/^(?:[!"#$%&'*+,-.`?\\_/])/i,/^(?:$)/i],conditions:{point_y:{rules:[35],inclusive:!1},point_x:{rules:[34],inclusive:!1},point_start:{rules:[32,33],inclusive:!1},acc_descr_multiline:{rules:[16,17],inclusive:!1},acc_descr:{rules:[14],inclusive:!1},acc_title:{rules:[12],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},title:{rules:[10],inclusive:!1},md_string:{rules:[26,27],inclusive:!1},string:{rules:[29,30],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,11,13,15,18,19,20,21,22,23,24,25,28,31,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53],inclusive:!0}}};return Ae}();_n.lexer=Te;function Wn(){this.yy={}}return Wn.prototype=_n,_n.Parser=Wn,new Wn}();Z0t.parser=Z0t;const Sqe=Z0t,pg=JDt();class Aqe{constructor(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaul
`+i);const C=E.securityLevel;let A;C==="sandbox"&&(A=xr("#i"+a));const F=xr(C==="sandbox"?A.nodes()[0].contentDocument.body:"body").select(`[id="${a}"]`),j=F.append("g").attr("class","main"),R=((yt=E.quadrantChart)==null?void 0:yt.chartWidth)||500,H=((st=E.quadrantChart)==null?void 0:st.chartHeight)||500;og(F,H,R,((xt=E.quadrantChart)==null?void 0:xt.useMaxWidth)||!0),F.attr("viewBox","0 0 "+R+" "+H),p.db.setHeight(H),p.db.setWidth(R);const Y=p.db.getQuadrantData(),rt=j.append("g").attr("class","quadrants"),J=j.append("g").attr("class","border"),it=j.append("g").attr("class","data-points"),ft=j.append("g").attr("class","labels"),Tt=j.append("g").attr("class","title");Y.title&&Tt.append("text").attr("x",0).attr("y",0).attr("fill",Y.title.fill).attr("font-size",Y.title.fontSize).attr("dominant-baseline",v(Y.title.horizontalPos)).attr("text-anchor",m(Y.title.verticalPos)).attr("transform",b(Y.title)).text(Y.title.text),Y.borderLines&&J.selectAll("line").data(Y.borderLines).enter().append("line").attr("x1",ht=>ht.x1).attr("y1",ht=>ht.y1).attr("x2",ht=>ht.x2).attr("y2",ht=>ht.y2).style("stroke",ht=>ht.strokeFill).style("stroke-width",ht=>ht.strokeWidth);const kt=rt.selectAll("g.quadrant").data(Y.quadrants).enter().append("g").attr("class","quadrant");kt.append("rect").attr("x",ht=>ht.x).attr("y",ht=>ht.y).attr("width",ht=>ht.width).attr("height",ht=>ht.height).attr("fill",ht=>ht.fill),kt.append("text").attr("x",0).attr("y",0).attr("fill",ht=>ht.text.fill).attr("font-size",ht=>ht.text.fontSize).attr("dominant-baseline",ht=>v(ht.text.horizontalPos)).attr("text-anchor",ht=>m(ht.text.verticalPos)).attr("transform",ht=>b(ht.text)).text(ht=>ht.text.text),ft.selectAll("g.label").data(Y.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text(ht=>ht.text).attr("fill",ht=>ht.fill).attr("font-size",ht=>ht.fontSize).attr("dominant-baseline",ht=>v(ht.horizontalPos)).attr("text-anchor",ht=>m(ht.verticalPos)).attr("transform",ht=>b(ht));const ct=it.selectAll("g.data-point").data(Y.points).enter().append("g").attr("class","data-point");ct.append("circle").attr("cx",ht=>ht.x).attr("cy",ht=>ht.y).attr("r",ht=>ht.radius).attr("fill",ht=>ht.fill),ct.append("text").attr("x",0).attr("y",0).text(ht=>ht.text.text).attr("fill",ht=>ht.text.fill).attr("font-size",ht=>ht.text.fontSize).attr("dominant-baseline",ht=>v(ht.text.horizontalPos)).attr("text-anchor",ht=>m(ht.text.verticalPos)).attr("transform",ht=>b(ht.text))}},styles:()=>""}},Symbol.toStringTag,{value:"Module"}));var J0t=function(){var i=function(Wn,Ae,ne,ke){for(ne=ne||{},ke=Wn.length;ke--;ne[Wn[ke]]=Ae);return ne},a=[1,3],f=[1,5],p=[1,6],v=[1,7],m=[1,8],b=[5,6,8,14,16,18,19,40,41,42,43,44,45,53,71,72],E=[1,22],C=[2,13],A=[1,26],P=[1,27],F=[1,28],j=[1,29],R=[1,30],H=[1,31],Y=[1,24],rt=[1,32],J=[1,33],it=[1,36],ft=[71,72],Tt=[5,8,14,16,18,19,40,41,42,43,44,45,53,60,62,71,72],kt=[1,56],mt=[1,57],ct=[1,58],yt=[1,59],st=[1,60],xt=[1,61],ht=[1,62],dt=[62,63],Ct=[1,74],tt=[1,70],Pt=[1,71],pt=[1,72],Ft=[1,73],X=[1,75],Rt=[1,79],Bt=[1,80],vt=[1,77],Ot=[1,78],Vt=[5,8,14,16,18,19,40,41,42,43,44,45,53,71,72],qe={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,openDirective:9,typeDirective:10,closeDirective:11,":":12,argDirective:13,acc_title:14,acc_title_value:15,acc_descr:16,acc_descr_value:17,acc_descr_multiline_value:18,open_directive:19,type_directive:20,arg_directive:21,close_directive:22,requirementDef:23,elementDef:24,relationshipDef:25,requirementType:26,requirementName:27,STRUCT_START:28,requirementBody:29,ID:30,COLONSEP:31,id:32,TEXT:33,text:34,RISK:35,riskLevel:36,VERIFYMTHD:37,verifyType:38,STRUCT_STOP:39,REQUIREMENT:40,FUNCTIONAL_REQUIREMENT:41,INTERFACE_REQUIREMENT:42,PERFORMANCE_REQUIREMENT:43,PHYSICAL_REQUIREMENT:44,DESIGN_CONSTRAINT:45,LOW_RISK:46,MED_RISK:47,HIGH_RISK:48,VERIFY_ANALYSIS:49,VERIFY_DEMONSTRATION:50,VERIFY_INSPECTION:51,VERIFY_TEST:52,ELEMENT:53,elementName:54,elementBody:55,TYPE:56,type:57,DOCREF:58,ref:59,END_ARROW_L:60,relationship:61,LINE:62,END_ARROW_R:63,CONTAINS:64,COPIES:65,DE
`+zi.showPosition()+`
Expecting `+Ga.join(", ")+", got '"+(this.terminals_[dn]||dn)+"'":_r="Parse error on line "+(ye+1)+": Unexpected "+(dn==Mi?"end of input":"'"+(this.terminals_[dn]||dn)+"'"),this.parseError(_r,{text:zi.match,token:this.terminals_[dn]||dn,line:zi.yylineno,loc:Ri,expected:Ga})}if(Wr[0]instanceof Array&&Wr.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Nn+", token: "+dn);switch(Wr[0]){case 1:ke.push(dn),Ee.push(zi.yytext),He.push(zi.yylloc),ke.push(Wr[1]),dn=null,fn=zi.yyleng,$e=zi.yytext,ye=zi.yylineno,Ri=zi.yylloc;break;case 2:if(Aa=this.productions_[Wr[1]][1],is.$=Ee[Ee.length-Aa],is._$={first_line:He[He.length-(Aa||1)].first_line,last_line:He[He.length-1].last_line,first_column:He[He.length-(Aa||1)].first_column,last_column:He[He.length-1].last_column},pi&&(is._$.range=[He[He.length-(Aa||1)].range[0],He[He.length-1].range[1]]),Li=this.performAction.apply(is,[$e,fn,ye,Se.yy,Wr[1],Ee,He].concat(qt)),typeof Li<"u")return Li;Aa&&(ke=ke.slice(0,-1*Aa*2),Ee=Ee.slice(0,-1*Aa),He=He.slice(0,-1*Aa)),ke.push(this.productions_[Wr[1]][0]),Ee.push(is.$),He.push(is._$),Xi=Ce[ke[ke.length-2]][ke[ke.length-1]],ke.push(Xi);break;case 3:return!0}}return!0}},_n=function(){var Wn={EOF:1,parseError:function(ne,ke){if(this.yy.parser)this.yy.parser.parseError(ne,ke);else throw new Error(ne)},setInput:function(Ae,ne){return this.yy=ne||this.yy||{},this._input=Ae,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var Ae=this._input[0];this.yytext+=Ae,this.yyleng++,this.offset++,this.match+=Ae,this.matched+=Ae;var ne=Ae.match(/(?:\r\n?|\n).*/g);return ne?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Ae},unput:function(Ae){var ne=Ae.length,ke=Ae.split(/(?:\r\n?|\n)/g);this._input=Ae+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ne),this.offset-=ne;var Ve=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ke.length-1&&(this.yylineno-=ke.length-1);var Ee=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ke?(ke.length===Ve.length?this.yylloc.first_column:0)+Ve[Ve.length-ke.length].length-ke[0].length:this.yylloc.first_column-ne},this.options.ranges&&(this.yylloc.range=[Ee[0],Ee[0]+this.yyleng-ne]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(Ae){this.unput(this.match.slice(Ae))},pastInput:function(){var Ae=this.matched.substr(0,this.matched.length-this.match.length);return(Ae.length>20?"...":"")+Ae.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Ae=this.match;return Ae.length<20&&(Ae+=this._input.substr(0,20-Ae.length)),(Ae.substr(0,20)+(Ae.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Ae=this.pastInput(),ne=new Array(Ae.length+1).join("-");return Ae+this.upcomingInput()+`
`+ne+"^"},test_match:function(Ae,ne){var ke,Ve,Ee;if(this.options.backtrack_lexer&&(Ee={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Ee.yylloc.range=this.yylloc.range.slice(0))),Ve=Ae[0].match(/(?:\r\n?|\n).*/g),Ve&&(this.yylineno+=Ve.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ve?Ve[Ve.length-1].length-Ve[Ve.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Ae[0].length},this.yytext+=Ae[0],this.match+=Ae[0],this.matches=Ae,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(Ae[0].length),this.matched+=Ae[0],ke=this.performAction.call(this,this.yy,this,ne,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ke)return ke;if(this._backtrack){for(var He in Ee)this[He]=Ee[He];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Ae,ne,ke,Ve;this._more||(this.yytext="",this.match="");for(var Ee=this._currentRules(),He=0;He<Ee.length;He++)if(ke=this._input.match(this.rules[Ee[He]]),ke&&(!ne||ke[0].length>ne[0].length)){if(ne=ke,Ve=He,this.options.backtrack_lexer){if(Ae=this.test_match(ke,Ee[He]),Ae!==!1)return Ae;if(this._backtrack){ne=!1;continue}else return!1}else if(!this.options.flex)break}return ne?(Ae=this.test_match(ne,Ee[Ve]),Ae!==!1?Ae:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var ne=this.next();return ne||this.lex()},begin:function(ne){this.conditionStack.push(ne)},popState:function(){var ne=this.conditionStack.length-1;return ne>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(ne){return ne=this.conditionStack.length-1-Math.abs(ne||0),ne>=0?this.conditionStack[ne]:"INITIAL"},pushState:function(ne){this.begin(ne)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(ne,ke,Ve,Ee){switch(Ve){case 0:return this.begin("open_directive"),19;case 1:return this.begin("type_directive"),20;case 2:return this.popState(),this.begin("arg_directive"),12;case 3:return this.popState(),this.popState(),22;case 4:return 21;case 5:return"title";case 6:return this.begin("acc_title"),14;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),16;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 5;case 14:break;case 15:break;case 16:break;case 17:return 8;case 18:return 6;case 19:return 28;case 20:return 39;case 21:return 31;case 22:return 30;case 23:return 33;case 24:return 35;case 25:return 37;case 26:return 40;case 27:return 41;case 28:return 42;case 29:return 43;case 30:return 44;case 31:return 45;case 32:return 46;case 33:return 47;case 34:return 48;case 35:return 49;case 36:return 50;case 37:return 51;case 38:return 52;case 39:return 53;case 40:return 64;case 41:return 65;case 42:return 66;case 43:return 67;case 44:return 68;case 45:return 69;case 46:return 70;case 47:return 56;case 48:return 58;case 49:return 60;case 50:return 63;case 51:return 62;case 52:this.begin("string");break;case 53:this.popState();break;case 54:return"qString";case 55:return ke.yytext=ke.yytext.trim(),71}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\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,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/i,/^(?::)/i,/^(?:id\b)/i,/^(?:text\b)/i,/^(?:risk\b)/i,/^(?:verifyMethod\b)/i,/^(?:requirement\b)/i,/^(?:functionalRequirement\b)/i,/^(?:interfaceRequirement\b)/i,/^(?:performanceRequirement\b)/i,/^(?:physicalRequirement\b)/i,/^(?:designConstraint\b)/i,/^(?:low\b)/i,/^(?:medium\b)/i,/^(?:high\b)/i,/^(?:analysis\b)/i,/^(?:demonstration\b)/i,/^(?:inspection\b)/i,/^(?:test\b)/i,/^(?:element\b)/i,/^(?:contains\b)/i,/^(?:copies\b)/i,/^(?:derives\b)/i,/^(?:satisfies\b)/i,/^(?:verifies\b)/i,/^(?:refines\b)/i,/^(?:traces\b)/i,/^(?:type\b)/i,/^(?:docref\b)/i,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^\r\n\{\<\>\-\=]*)/i],conditions:{acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},unqString:{rules:[],inclusive:!1},token:{rules:[],inclusive:!1},string:{rules:[53,54],inclusive:!1},INITIAL:{rules:[0,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,55],inclusive:!0}}};return Wn}();qe.lexer=_n;function Te(){this.yy={}}return Te.prototype=qe,qe.Parser=Te,new Te}();J0t.parser=J0t;const Hqe=J0t;let tgt=[],pp={},DP={},uk={},IP={};const Vqe={RequirementType:{REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQ
marker {
fill: ${i.relationColor};
stroke: ${i.relationColor};
}
marker.cross {
stroke: ${i.lineColor};
}
svg {
font-family: ${i.fontFamily};
font-size: ${i.fontSize};
}
.reqBox {
fill: ${i.requirementBackground};
fill-opacity: 1.0;
stroke: ${i.requirementBorderColor};
stroke-width: ${i.requirementBorderSize};
}
.reqTitle, .reqLabel{
fill: ${i.requirementTextColor};
}
.reqLabelBox {
fill: ${i.relationLabelBackground};
fill-opacity: 1.0;
}
.req-title-line {
stroke: ${i.requirementBorderColor};
stroke-width: ${i.requirementBorderSize};
}
.relationshipLine {
stroke: ${i.relationColor};
stroke-width: 1;
}
.relationshipLabel {
fill: ${i.relationLabelColor};
}
`,egt={CONTAINS:"contains",ARROW:"arrow"},uRt={ReqMarkers:egt,insertLineEndings:(i,a)=>{let f=i.append("defs").append("marker").attr("id",egt.CONTAINS+"_line_ending").attr("refX",0).attr("refY",a.line_height/2).attr("markerWidth",a.line_height).attr("markerHeight",a.line_height).attr("orient","auto").append("g");f.append("circle").attr("cx",a.line_height/2).attr("cy",a.line_height/2).attr("r",a.line_height/2).attr("fill","none"),f.append("line").attr("x1",0).attr("x2",a.line_height).attr("y1",a.line_height/2).attr("y2",a.line_height/2).attr("stroke-width",1),f.append("line").attr("y1",0).attr("y2",a.line_height).attr("x1",a.line_height/2).attr("x2",a.line_height/2).attr("stroke-width",1),i.append("defs").append("marker").attr("id",egt.ARROW+"_line_ending").attr("refX",a.line_height).attr("refY",.5*a.line_height).attr("markerWidth",a.line_height).attr("markerHeight",a.line_height).attr("orient","auto").append("path").attr("d",`M0,0
L${a.line_height},${a.line_height/2}
M${a.line_height},${a.line_height/2}
L0,${a.line_height}`).attr("stroke-width",1)}};let _h={},lRt=0;const hRt=(i,a)=>i.insert("rect","#"+a).attr("class","req reqBox").attr("x",0).attr("y",0).attr("width",_h.rect_min_width+"px").attr("height",_h.rect_min_height+"px"),fRt=(i,a,f)=>{let p=_h.rect_min_width/2,v=i.append("text").attr("class","req reqLabel reqTitle").attr("id",a).attr("x",p).attr("y",_h.rect_padding).attr("dominant-baseline","hanging"),m=0;f.forEach(A=>{m==0?v.append("tspan").attr("text-anchor","middle").attr("x",_h.rect_min_width/2).attr("dy",0).text(A):v.append("tspan").attr("text-anchor","middle").attr("x",_h.rect_min_width/2).attr("dy",_h.line_height*.75).text(A),m++});let b=1.5*_h.rect_padding,E=m*_h.line_height*.75,C=b+E;return i.append("line").attr("class","req-title-line").attr("x1","0").attr("x2",_h.rect_min_width).attr("y1",C).attr("y2",C),{titleNode:v,y:C}},dRt=(i,a,f,p)=>{let v=i.append("text").attr("class","req reqLabel").attr("id",a).attr("x",_h.rect_padding).attr("y",p).attr("dominant-baseline","hanging"),m=0;const b=30;let E=[];return f.forEach(C=>{let A=C.length;for(;A>b&&m<3;){let P=C.substring(0,b);C=C.substring(b,C.length),A=C.length,E[E.length]=P,m++}if(m==3){let P=E[E.length-1];E[E.length-1]=P.substring(0,P.length-4)+"..."}else E[E.length]=C;m=0}),E.forEach(C=>{v.append("tspan").attr("x",_h.rect_padding).attr("dy",_h.line_height).text(C)}),v},Uqe=(i,a,f,p)=>{const v=a.node().getTotalLength(),m=a.node().getPointAtLength(v*.5),b="rel"+lRt;lRt++;const C=i.append("text").attr("class","req relationshipLabel").attr("id",b).attr("x",m.x).attr("y",m.y).attr("text-anchor","middle").attr("dominant-baseline","middle").text(p).node().getBBox();i.insert("rect","#"+b).attr("class","req reqLabelBox").attr("x",m.x-C.width/2).attr("y",m.y-C.height/2).attr("width",C.width).attr("height",C.height).attr("fill","white").attr("fill-opacity","85%")},Wqe=function(i,a,f,p,v){const m=f.edge(cL(a.src),cL(a.dst)),b=YE().x(function(C){return C.x}).y(function(C){return C.y}),E=i.insert("path","#"+p).attr("class","er relationshipLine").attr("d",b(m.points)).attr("fill","none");a.type==v.db.Relationships.CONTAINS?E.attr("marker-start","url("+ui.getUrl(_h.arrowMarkerAbsolute)+"#"+a.type+"_line_ending)"):(E.attr("stroke-dasharray","10,7"),E.attr("marker-end","url("+ui.getUrl(_h.arrowMarkerAbsolute)+"#"+uRt.ReqMarkers.ARROW+"_line_ending)")),Uqe(i,E,_h,`<<${a.type}>>`)},Kqe=(i,a,f)=>{Object.keys(i).forEach(p=>{let v=i[p];p=cL(p),Wt.info("Added new requirement: ",p);const m=f.append("g").attr("id",p),b="req-"+p,E=hRt(m,b);let C=fRt(m,p+"_title",[`<<${v.type}>>`,`${v.name}`]);dRt(m,p+"_body",[`Id: ${v.id}`,`Text: ${v.text}`,`Risk: ${v.risk}`,`Verification: ${v.verifyMethod}`],C.y);const A=E.node().getBBox();a.setNode(p,{width:A.width,height:A.height,shape:"rect",id:p})})},Yqe=(i,a,f)=>{Object.keys(i).forEach(p=>{let v=i[p];const m=cL(p),b=f.append("g").attr("id",m),E="element-"+m,C=hRt(b,E);let A=fRt(b,E+"_title",["<<Element>>",`${p}`]);dRt(b,E+"_body",[`Type: ${v.type||"Not Specified"}`,`Doc Ref: ${v.docRef||"None"}`],A.y);const P=C.node().getBBox();a.setNode(m,{width:P.width,height:P.height,shape:"rect",id:m})})},Xqe=(i,a)=>(i.forEach(function(f){let p=cL(f.src),v=cL(f.dst);a.setEdge(p,v,{relationship:f})}),i),Qqe=function(i,a){a.nodes().forEach(function(f){f!==void 0&&a.node(f)!==void 0&&(i.select("#"+f),i.select("#"+f).attr("transform","translate("+(a.node(f).x-a.node(f).width/2)+","+(a.node(f).y-a.node(f).height/2)+" )"))})},cL=i=>i.replace(/\s/g,"").replace(/\./g,"_"),Zqe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Hqe,db:Vqe,renderer:{draw:(i,a,f,p)=>{_h=De().requirement;const v=_h.securityLevel;let m;v==="sandbox"&&(m=xr("#i"+a));const E=xr(v==="sandbox"?m.nodes()[0].contentDocument.body:"body").select(`[id='${a}']`);uRt.insertLineEndings(E,_h);const C=new l1({multigraph:!1,compound:!1,directed:!0}).setGraph({rankdir:_h.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});let A=p.db.getRequirements(),P=p.db.getElements(),F=p.db.getRelationships();Kqe(A,C,E),Y
`+bi.showPosition()+`
Expecting `+Js.join(", ")+", got '"+(this.terminals_[Ts]||Ts)+"'":Vn="Parse error on line "+(zi+1)+": Unexpected "+(Ts==Ri?"end of input":"'"+(this.terminals_[Ts]||Ts)+"'"),this.parseError(Vn,{text:bi.match,token:this.terminals_[Ts]||Ts,line:bi.yylineno,loc:Wr,expected:Js})}if(Xi[0]instanceof Array&&Xi.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Aa+", token: "+Ts);switch(Xi[0]){case 1:$e.push(Ts),fn.push(bi.yytext),Yt.push(bi.yylloc),$e.push(Xi[1]),Ts=null,Se=bi.yyleng,qt=bi.yytext,zi=bi.yylineno,Wr=bi.yylloc;break;case 2:if(Oi=this.productions_[Xi[1]][1],_r.$=fn[fn.length-Oi],_r._$={first_line:Yt[Yt.length-(Oi||1)].first_line,last_line:Yt[Yt.length-1].last_line,first_column:Yt[Yt.length-(Oi||1)].first_column,last_column:Yt[Yt.length-1].last_column},Li&&(_r._$.range=[Yt[Yt.length-(Oi||1)].range[0],Yt[Yt.length-1].range[1]]),Ga=this.performAction.apply(_r,[qt,Se,zi,dn.yy,Xi[1],fn,Yt].concat(pi)),typeof Ga<"u")return Ga;Oi&&($e=$e.slice(0,-1*Oi*2),fn=fn.slice(0,-1*Oi),Yt=Yt.slice(0,-1*Oi)),$e.push(this.productions_[Xi[1]][0]),fn.push(_r.$),Yt.push(_r._$),gr=Mi[$e[$e.length-2]][$e[$e.length-1]],$e.push(gr);break;case 3:return!0}}return!0}},ke=function(){var Ee={EOF:1,parseError:function(Ce,$e){if(this.yy.parser)this.yy.parser.parseError(Ce,$e);else throw new Error(Ce)},setInput:function(He,Ce){return this.yy=Ce||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},input:function(){var He=this._input[0];this.yytext+=He,this.yyleng++,this.offset++,this.match+=He,this.matched+=He;var Ce=He.match(/(?:\r\n?|\n).*/g);return Ce?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),He},unput:function(He){var Ce=He.length,$e=He.split(/(?:\r\n?|\n)/g);this._input=He+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ce),this.offset-=Ce;var ye=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 fn=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===ye.length?this.yylloc.first_column:0)+ye[ye.length-$e.length].length-$e[0].length:this.yylloc.first_column-Ce},this.options.ranges&&(this.yylloc.range=[fn[0],fn[0]+this.yyleng-Ce]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(He){this.unput(this.match.slice(He))},pastInput:function(){var He=this.matched.substr(0,this.matched.length-this.match.length);return(He.length>20?"...":"")+He.substr(-20).replace(/\n/g,"")},upcomingInput: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,"")},showPosition:function(){var He=this.pastInput(),Ce=new Array(He.length+1).join("-");return He+this.upcomingInput()+`
`+Ce+"^"},test_match:function(He,Ce){var $e,ye,fn;if(this.options.backtrack_lexer&&(fn={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&&(fn.yylloc.range=this.yylloc.range.slice(0))),ye=He[0].match(/(?:\r\n?|\n).*/g),ye&&(this.yylineno+=ye.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ye?ye[ye.length-1].length-ye[ye.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],$e=this.performAction.call(this,this.yy,this,Ce,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),$e)return $e;if(this._backtrack){for(var Yt in fn)this[Yt]=fn[Yt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var He,Ce,$e,ye;this._more||(this.yytext="",this.match="");for(var fn=this._currentRules(),Yt=0;Yt<fn.length;Yt++)if($e=this._input.match(this.rules[fn[Yt]]),$e&&(!Ce||$e[0].length>Ce[0].length)){if(Ce=$e,ye=Yt,this.options.backtrack_lexer){if(He=this.test_match($e,fn[Yt]),He!==!1)return He;if(this._backtrack){Ce=!1;continue}else return!1}else if(!this.options.flex)break}return Ce?(He=this.test_match(Ce,fn[ye]),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})},lex:function(){var Ce=this.next();return Ce||this.lex()},begin:function(Ce){this.conditionStack.push(Ce)},popState:function(){var Ce=this.conditionStack.length-1;return Ce>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(Ce){return Ce=this.conditionStack.length-1-Math.abs(Ce||0),Ce>=0?this.conditionStack[Ce]:"INITIAL"},pushState:function(Ce){this.begin(Ce)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Ce,$e,ye,fn){switch(ye){case 0:return this.begin("open_directive"),86;case 1:return this.begin("type_directive"),87;case 2:return this.popState(),this.begin("arg_directive"),17;case 3:return this.popState(),this.popState(),89;case 4:return 88;case 5:return 5;case 6:break;case 7:break;case 8:break;case 9:break;case 10:break;case 11:return 25;case 12:return this.begin("LINE"),20;case 13:return this.begin("ID"),56;case 14:return this.begin("ID"),58;case 15:return 19;case 16:return this.begin("ID"),59;case 17:return $e.yytext=$e.yytext.trim(),this.begin("ALIAS"),76;case 18:return this.popState(),this.popState(),this.begin("LINE"),57;case 19:return this.popState(),this.popState(),5;case 20:return this.begin("LINE"),42;case 21:return this.begin("LINE"),43;case 22:return this.begin("LINE"),44;case 23:return this.begin("LINE"),45;case 24:return this.begin("LINE"),55;case 25:return this.begin("LINE"),47;case 26:return this.begin("LINE"),49;case 27:return this.begin("LINE"),54;case 28:return this.begin("LINE"),50;case 29:return this.begin("LINE"),53;case 30:return this.begin("LINE"),52;case 31:return this.popState(),21;case 32:return 22;case 33:return 71;case 34:return 72;case 35:return 65;case 36:return 66;case 37:return 67;case 38:return 68;case 39:return 63;case 40:return 60;case 41:return this.begin("ID"),27;case 42:return this.begin("ID"),29;case 43:return 35;case 44:return 36;case 45:return this.begin("acc_title"),37;case 46:return this.popState(),"acc_title_value";case 47:return this.begin("acc_descr"),39;case 48:return this.popState(),"acc_descr_value";case 49:this.begin("acc_descr_multiline");break;case 50:this.popState();break;case 51:return"acc_descr_multiline_value";case 52:return 7;case 53:return 24;case 54:return 26;case 55:return 70;case 56:return 5;case 57:return $e.yytext=$e.yytext.trim(),76;case 58:return 79;case 59:return 80;case 60:return 77;case 61:return 78;case 62:return 81;case 63:return 82;case 64:return 83;case 65:return 84;case 66:return 85;case 67:return 74;case 68:return 75;case 69:return 5;case 70:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[0-9]+(?=[ \n]+))/i,/^(?:box\b)/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:create\b)/i,/^(?:destroy\b)/i,/^(?:[^\->:\n,;]+?([\-]*[^\->:\n,;]+?)*?(?=((?!\n)\s)+as(?!\n)\s|[#\n;]|$))/i,/^(?:as\b)/i,/^(?:(?:))/i,/^(?:loop\b)/i,/^(?:rect\b)/i,/^(?:opt\b)/i,/^(?:alt\b)/i,/^(?:else\b)/i,/^(?:par\b)/i,/^(?:par_over\b)/i,/^(?:and\b)/i,/^(?:critical\b)/i,/^(?:option\b)/i,/^(?:break\b)/i,/^(?:(?:[:]?(?:no)?wrap)?[^#\n;]*)/i,/^(?:end\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:links\b)/i,/^(?:link\b)/i,/^(?:properties\b)/i,/^(?:details\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:activate\b)/i,/^(?:deactivate\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:title:\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:sequenceDiagram\b)/i,/^(?:autonumber\b)/i,/^(?:off\b)/i,/^(?:,)/i,/^(?:;)/i,/^(?:[^\+\->:\n,;]+((?!(-x|--x|-\)|--\)))[\-]*[^\+\->:\n,;]+)*)/i,/^(?:->>)/i,/^(?:-->>)/i,/^(?:->)/i,/^(?:-->)/i,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[
stroke: ${i.actorBorder};
fill: ${i.actorBkg};
}
text.actor > tspan {
fill: ${i.actorTextColor};
stroke: none;
}
.actor-line {
stroke: ${i.actorLineColor};
}
.messageLine0 {
stroke-width: 1.5;
stroke-dasharray: none;
stroke: ${i.signalColor};
}
.messageLine1 {
stroke-width: 1.5;
stroke-dasharray: 2, 2;
stroke: ${i.signalColor};
}
#arrowhead path {
fill: ${i.signalColor};
stroke: ${i.signalColor};
}
.sequenceNumber {
fill: ${i.sequenceNumberColor};
}
#sequencenumber {
fill: ${i.signalColor};
}
#crosshead path {
fill: ${i.signalColor};
stroke: ${i.signalColor};
}
.messageText {
fill: ${i.signalTextColor};
stroke: none;
}
.labelBox {
stroke: ${i.labelBoxBorderColor};
fill: ${i.labelBoxBkgColor};
}
.labelText, .labelText > tspan {
fill: ${i.labelTextColor};
stroke: none;
}
.loopText, .loopText > tspan {
fill: ${i.loopTextColor};
stroke: none;
}
.loopLine {
stroke-width: 2px;
stroke-dasharray: 2, 2;
stroke: ${i.labelBoxBorderColor};
fill: ${i.labelBoxBorderColor};
}
.note {
//stroke: #decc93;
stroke: ${i.noteBorderColor};
fill: ${i.noteBkgColor};
}
.noteText, .noteText > tspan {
fill: ${i.noteTextColor};
stroke: none;
}
.activation0 {
fill: ${i.activationBkgColor};
stroke: ${i.activationBorderColor};
}
.activation1 {
fill: ${i.activationBkgColor};
stroke: ${i.activationBorderColor};
}
.activation2 {
fill: ${i.activationBkgColor};
stroke: ${i.activationBorderColor};
}
.actorPopupMenu {
position: absolute;
}
.actorPopupMenuPanel {
position: absolute;
fill: ${i.actorBkg};
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));
}
.actor-man line {
stroke: ${i.actorBorder};
fill: ${i.actorBkg};
}
.actor-man circle, line {
stroke: ${i.actorBorder};
fill: ${i.actorBkg};
stroke-width: 2px;
}
`,y9=18*2,cgt=function(i,a){return WW(i,a)},yRt=(i,a)=>{OLe(()=>{const f=document.querySelectorAll(i);f.length!==0&&(f[0].addEventListener("mouseover",function(){LHe("actor"+a+"_popup")}),f[0].addEventListener("mouseout",function(){MHe("actor"+a+"_popup")}))})},CHe=function(i,a,f,p,v){if(a.links===void 0||a.links===null||Object.keys(a.links).length===0)return{height:0,width:0};const m=a.links,b=a.actorCnt,E=a.rectData;var C="none";v&&(C="block !important");const A=i.append("g");A.attr("id","actor"+b+"_popup"),A.attr("class","actorPopupMenu"),A.attr("display",C),yRt("#actor"+b+"_popup",b);var P="";E.class!==void 0&&(P=" "+E.class);let F=E.width>f?E.width:f;const j=A.append("rect");if(j.attr("class","actorPopupMenuPanel"+P),j.attr("x",E.x),j.attr("y",E.height),j.attr("fill",E.fill),j.attr("stroke",E.stroke),j.attr("width",F),j.attr("height",E.height),j.attr("rx",E.rx),j.attr("ry",E.ry),m!=null){var R=20;for(let rt in m){var H=A.append("a"),Y=Xx(m[rt]);H.attr("xlink:href",Y),H.attr("target","_blank"),UHe(p)(rt,H,E.x+10,E.height+R,F,20,{class:"actor"},p),R+=30}}return j.attr("height",R),{height:E.height+R,width:F}},SHe=function(i){return"var pu = document.getElementById('"+i+"'); if (pu != null) { pu.style.display = 'block'; }"},AHe=function(i){return"var pu = document.getElementById('"+i+"'); if (pu != null) { pu.style.display = 'none'; }"},LHe=function(i){var a=document.getElementById(i);a!=null&&(a.style.display="block")},MHe=function(i){var a=document.getElementById(i);a!=null&&(a.style.display="none")},hL=function(i,a){let f=0,p=0;const v=a.text.split(ui.lineBreakRegex),[m,b]=zA(a.fontSize);let E=[],C=0,A=()=>a.y;if(a.valign!==void 0&&a.textMargin!==void 0&&a.textMargin>0)switch(a.valign){case"top":case"start":A=()=>Math.round(a.y+a.textMargin);break;case"middle":case"center":A=()=>Math.round(a.y+(f+p+a.textMargin)/2);break;case"bottom":case"end":A=()=>Math.round(a.y+(f+p+2*a.textMargin)-a.textMargin);break}if(a.anchor!==void 0&&a.textMargin!==void 0&&a.width!==void 0)switch(a.anchor){case"left":case"start":a.x=Math.round(a.x+a.textMargin),a.anchor="start",a.dominantBaseline="middle",a.alignmentBaseline="middle";break;case"middle":case"center":a.x=Math.round(a.x+a.width/2),a.anchor="middle",a.dominantBaseline="middle",a.alignmentBaseline="middle";break;case"right":case"end":a.x=Math.round(a.x+a.width-a.textMargin),a.anchor="end",a.dominantBaseline="middle",a.alignmentBaseline="middle";break}for(let[P,F]of v.entries()){a.textMargin!==void 0&&a.textMargin===0&&m!==void 0&&(C=P*m);const j=i.append("text");j.attr("x",a.x),j.attr("y",A()),a.anchor!==void 0&&j.attr("text-anchor",a.anchor).attr("dominant-baseline",a.dominantBaseline).attr("alignment-baseline",a.alignmentBaseline),a.fontFamily!==void 0&&j.style("font-family",a.fontFamily),b!==void 0&&j.style("font-size",b),a.fontWeight!==void 0&&j.style("font-weight",a.fontWeight),a.fill!==void 0&&j.attr("fill",a.fill),a.class!==void 0&&j.attr("class",a.class),a.dy!==void 0?j.attr("dy",a.dy):C!==0&&j.attr("dy",C);const R=F||PIt;if(a.tspan){const H=j.append("tspan");H.attr("x",a.x),a.fill!==void 0&&H.attr("fill",a.fill),H.text(R)}else j.text(R);a.valign!==void 0&&a.textMargin!==void 0&&a.textMargin>0&&(p+=(j._groups||j)[0][0].getBBox().height,f=p),E.push(j)}return E},xRt=function(i,a){function f(v,m,b,E,C){return v+","+m+" "+(v+b)+","+m+" "+(v+b)+","+(m+E-C)+" "+(v+b-C*1.2)+","+(m+E)+" "+v+","+(m+E)}const p=i.append("polygon");return p.attr("points",f(a.x,a.y,a.width,a.height,7)),p.attr("class","labelBox"),a.y=a.y+a.height/2,hL(i,a),p};let hm=-1;const kRt=(i,a,f,p)=>{i.select&&f.forEach(v=>{const m=a[v],b=i.select("#actor"+m.actorCnt);!p.mirrorActors&&m.stopy?b.attr("y2",m.stopy+m.height/2):p.mirrorActors&&b.attr("y2",m.stopy)})},DHe=function(i,a,f,p){const v=p?a.stopy:a.starty,m=a.x+a.width/2,b=v+5,E=i.append("g").lower();var C=E;p||(hm++,C.append("line").attr("id","actor"+hm).attr("x1",m).attr("y1",b).attr("x2",m).attr("y2",2e3).attr("class","actor-line").attr("class","200").attr("stroke-width","0.5px").attr("stroke","#999"),C=E.append("g"),a.actorCnt=hm,a.links!=null&&(C.att
`+Nn.showPosition()+`
Expecting `+Xc.join(", ")+", got '"+(this.terminals_[Xi]||Xi)+"'":Er="Parse error on line "+(ki+1)+": Unexpected "+(Xi==bi?"end of input":"'"+(this.terminals_[Xi]||Xi)+"'"),this.parseError(Er,{text:Nn.match,token:this.terminals_[Xi]||Xi,line:Nn.yylineno,loc:is,expected:Xc})}if(_r[0]instanceof Array&&_r.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ga+", token: "+Xi);switch(_r[0]){case 1:fn.push(Xi),Mi.push(Nn.yytext),qt.push(Nn.yylloc),fn.push(_r[1]),Xi=null,Ri=Nn.yyleng,Se=Nn.yytext,ki=Nn.yylineno,is=Nn.yylloc;break;case 2:if(Js=this.productions_[_r[1]][1],Oi.$=Mi[Mi.length-Js],Oi._$={first_line:qt[qt.length-(Js||1)].first_line,last_line:qt[qt.length-1].last_line,first_column:qt[qt.length-(Js||1)].first_column,last_column:qt[qt.length-1].last_column},Ts&&(Oi._$.range=[qt[qt.length-(Js||1)].range[0],qt[qt.length-1].range[1]]),qr=this.performAction.apply(Oi,[Se,Ri,ki,Wr.yy,_r[1],Mi,qt].concat(dn)),typeof qr<"u")return qr;Js&&(fn=fn.slice(0,-1*Js*2),Mi=Mi.slice(0,-1*Js),qt=qt.slice(0,-1*Js)),fn.push(this.productions_[_r[1]][0]),Mi.push(Oi.$),qt.push(Oi._$),Vn=zi[fn[fn.length-2]][fn[fn.length-1]],fn.push(Vn);break;case 3:return!0}}return!0}},Ee=function(){var Ce={EOF:1,parseError:function(ye,fn){if(this.yy.parser)this.yy.parser.parseError(ye,fn);else throw new Error(ye)},setInput:function($e,ye){return this.yy=ye||this.yy||{},this._input=$e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var $e=this._input[0];this.yytext+=$e,this.yyleng++,this.offset++,this.match+=$e,this.matched+=$e;var ye=$e.match(/(?:\r\n?|\n).*/g);return ye?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),$e},unput:function($e){var ye=$e.length,fn=$e.split(/(?:\r\n?|\n)/g);this._input=$e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ye),this.offset-=ye;var Yt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),fn.length-1&&(this.yylineno-=fn.length-1);var Mi=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:fn?(fn.length===Yt.length?this.yylloc.first_column:0)+Yt[Yt.length-fn.length].length-fn[0].length:this.yylloc.first_column-ye},this.options.ranges&&(this.yylloc.range=[Mi[0],Mi[0]+this.yyleng-ye]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function($e){this.unput(this.match.slice($e))},pastInput:function(){var $e=this.matched.substr(0,this.matched.length-this.match.length);return($e.length>20?"...":"")+$e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var $e=this.match;return $e.length<20&&($e+=this._input.substr(0,20-$e.length)),($e.substr(0,20)+($e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var $e=this.pastInput(),ye=new Array($e.length+1).join("-");return $e+this.upcomingInput()+`
`+ye+"^"},test_match:function($e,ye){var fn,Yt,Mi;if(this.options.backtrack_lexer&&(Mi={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&&(Mi.yylloc.range=this.yylloc.range.slice(0))),Yt=$e[0].match(/(?:\r\n?|\n).*/g),Yt&&(this.yylineno+=Yt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Yt?Yt[Yt.length-1].length-Yt[Yt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+$e[0].length},this.yytext+=$e[0],this.match+=$e[0],this.matches=$e,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($e[0].length),this.matched+=$e[0],fn=this.performAction.call(this,this.yy,this,ye,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),fn)return fn;if(this._backtrack){for(var qt in Mi)this[qt]=Mi[qt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var $e,ye,fn,Yt;this._more||(this.yytext="",this.match="");for(var Mi=this._currentRules(),qt=0;qt<Mi.length;qt++)if(fn=this._input.match(this.rules[Mi[qt]]),fn&&(!ye||fn[0].length>ye[0].length)){if(ye=fn,Yt=qt,this.options.backtrack_lexer){if($e=this.test_match(fn,Mi[qt]),$e!==!1)return $e;if(this._backtrack){ye=!1;continue}else return!1}else if(!this.options.flex)break}return ye?($e=this.test_match(ye,Mi[Yt]),$e!==!1?$e:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var ye=this.next();return ye||this.lex()},begin:function(ye){this.conditionStack.push(ye)},popState:function(){var ye=this.conditionStack.length-1;return ye>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(ye){return ye=this.conditionStack.length-1-Math.abs(ye||0),ye>=0?this.conditionStack[ye]:"INITIAL"},pushState:function(ye){this.begin(ye)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(ye,fn,Yt,Mi){switch(Yt){case 0:return this.begin("open_directive"),19;case 1:return 8;case 2:return 9;case 3:return 10;case 4:return 11;case 5:return this.begin("type_directive"),20;case 6:return this.popState(),this.begin("arg_directive"),17;case 7:return this.popState(),this.popState(),22;case 8:return 21;case 9:break;case 10:break;case 11:return this.begin("acc_title"),44;case 12:return this.popState(),"acc_title_value";case 13:return this.begin("acc_descr"),46;case 14:return this.popState(),"acc_descr_value";case 15:this.begin("acc_descr_multiline");break;case 16:this.popState();break;case 17:return"acc_descr_multiline_value";case 18:return 16;case 19:break;case 20:return 23;case 21:return 23;case 22:return"EDGE_STATE";case 23:this.begin("callback_name");break;case 24:this.popState();break;case 25:this.popState(),this.begin("callback_args");break;case 26:return 79;case 27:this.popState();break;case 28:return 80;case 29:this.popState();break;case 30:return"STR";case 31:this.begin("string");break;case 32:return this.begin("namespace"),53;case 33:return this.popState(),16;case 34:break;case 35:return this.begin("namespace-body"),50;case 36:return this.popState(),52;case 37:return"EOF_IN_STRUCT";case 38:return 16;case 39:break;case 40:return"EDGE_STATE";case 41:return this.begin("class"),57;case 42:return this.popState(),16;case 43:break;case 44:return this.popState(),this.popState(),52;case 45:return this.begin("class-body"),50;case 46:return this.popState(),52;case 47:return"EOF_IN_STRUCT";case 48:return"EDGE_STATE";case 49:return"OPEN_IN_STRUCT";case 50:break;case 51:return"MEMBER";case 52:return 82;case 53:return 75;case 54:return 76;case 55:return 78;case 56:return 63;case 57:return 65;case 58:return 58;case 59:return 59;case 60:return 81;case 61:this.popState();break;case 62:return"GENERICTYPE";case 63:this.begin("generic");break;case 64:this.popState();break;case 65:return"BQUOTE_STR";case 66:this.begin("bqstring");break;case 67:return 77;case 68:return 77;case 69:return 77;case 70:return 77;case 71:return 69;case 72:return 69;case 73:return 71;case 74:return 71;case 75:return 70;case 76:return 68;case 77:return 72;case 78:return 73;case 79:return 74;case 80:return 36;case 81:return 55;case 82:return 94;case 83:return"DOT";case 84:return"PLUS";case 85:return 91;case 86:return"EQUALS";case 87:return"EQUALS";case 88:return 98;case 89:return 27;case 90:return 29;case 91:return"PUNCTUATION";case 92:return 97;case 93:return 96;case 94:return 93;case 95:return 24}},rules:[/^(?:%%\{)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:((?:(?!\}%%)[^:.])*))/,/^(?::)/,/^(?:\}%%)/,/^(?:((?:(?!\}%%).|\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]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,
fill: ${i.nodeBorder};
fill: ${i.classText};
stroke: none;
font-family: ${i.fontFamily};
font-size: 10px;
.title {
font-weight: bolder;
}
}
.nodeLabel, .edgeLabel {
color: ${i.classText};
}
.edgeLabel .label rect {
fill: ${i.mainBkg};
}
.label text {
fill: ${i.classText};
}
.edgeLabel .label span {
background: ${i.mainBkg};
}
.classTitle {
font-weight: bolder;
}
.node rect,
.node circle,
.node ellipse,
.node polygon,
.node path {
fill: ${i.mainBkg};
stroke: ${i.nodeBorder};
stroke-width: 1px;
}
.divider {
stroke: ${i.nodeBorder};
stroke-width: 1;
}
g.clickable {
cursor: pointer;
}
g.classGroup rect {
fill: ${i.mainBkg};
stroke: ${i.nodeBorder};
}
g.classGroup line {
stroke: ${i.nodeBorder};
stroke-width: 1;
}
.classLabel .box {
stroke: none;
stroke-width: 0;
fill: ${i.mainBkg};
opacity: 0.5;
}
.classLabel .label {
fill: ${i.nodeBorder};
font-size: 10px;
}
.relation {
stroke: ${i.lineColor};
stroke-width: 1;
fill: none;
}
.dashed-line{
stroke-dasharray: 3;
}
.dotted-line{
stroke-dasharray: 1 2;
}
#compositionStart, .composition {
fill: ${i.lineColor} !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
#compositionEnd, .composition {
fill: ${i.lineColor} !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
#dependencyStart, .dependency {
fill: ${i.lineColor} !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
#dependencyStart, .dependency {
fill: ${i.lineColor} !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
#extensionStart, .extension {
fill: ${i.mainBkg} !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
#extensionEnd, .extension {
fill: ${i.mainBkg} !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
#aggregationStart, .aggregation {
fill: ${i.mainBkg} !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
#aggregationEnd, .aggregation {
fill: ${i.mainBkg} !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
#lollipopStart, .lollipop {
fill: ${i.mainBkg} !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
#lollipopEnd, .lollipop {
fill: ${i.mainBkg} !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
.edgeTerminals {
font-size: 11px;
}
.classTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${i.textColor};
}
`;let PK={};const FK=20,RP=function(i){const a=Object.entries(PK).find(f=>f[1].label===i);if(a)return a[0]},CVe=function(i){i.append("defs").append("marker").attr("id","extensionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),i.append("defs").append("marker").attr("id","extensionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z"),i.append("defs").append("marker").attr("id","compositionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","compositionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","aggregationStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","aggregationEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","dependencyStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},SVe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:ARt,db:NK,renderer:{draw:function(i,a,f,p){const v=De().class;PK={},Wt.info("Rendering diagram "+i);const m=De().securityLevel;let b;m==="sandbox"&&(b=xr("#i"+a));const E=xr(m==="sandbox"?b.nodes()[0].contentDocument.body:"body"),C=E.select(`[id='${a}']`);CVe(C);const A=new l1({multigraph:!0});A.setGraph({isMultiGraph:!0}),A.setDefaultEdgeLabel(function(){return{}});const P=p.db.getClasses(),F=Object.keys(P);for(const it of F){const ft=P[it],Tt=S0t.drawClass(C,ft,v,p);PK[Tt.id]=Tt,A.setNode(Tt.id,Tt),Wt.info("Org height: "+Tt.height)}p.db.getRelations().forEach(function(it){Wt.info("tjoho"+RP(it.id1)+RP(it.id2)+JSON.stringify(it)),A.setEdge(RP(it.id1),RP(it.id2),{relation:it},it.title||"DEFAULT")}),p.db.getNotes().forEach(function(it){Wt.debug(`Adding note: ${JSON.stringify(it)}`);const ft=S0t.drawNote(C,it,v,p);PK[ft.id]=ft,A.setNode(ft.id,ft),it.class&&it.class in P&&A.setEdge(it.id,RP(it.class),{relation:{id1:it.id,id2:it.class,relation:{type1:"none",type2:"none",lineType:10}}},"DEFAULT")}),nL(A),A.nodes().forEach(function(it){it!==void 0&&A.node(it)!==void 0&&(Wt.debug("Node "+it+": "+JSON.stringify(A.node(it))),E.select("#"+(p.db.lookUpDomId(it)||it)).attr("transform","translate("+(A.node(it).x-A.node(it).width/2)+","+(A.node(it).y-A.node(it).height/2)+" )"))}),A.edges().forEach(function(it){it!==void 0&&A.edge(it)!==void 0&&(Wt.debug("Edge "+it.v+" -> "+it.w+": "+JSON.stringify(A.edge(it))),S0t.drawEdge(C,A.edge(it),A.edge(it).relation,v,p))});const H=C.node().getBBox(),Y=H.width+FK*2,rt=H.height+FK*2;og(C,rt,Y,v.useMaxWidth);const J=`${H.x-FK} ${H.y-FK} ${Y} ${rt}`;Wt.debug(`viewBox ${J}`),C.attr("viewBox",J)}},styles:NRt,init:i=>{i.class||(i.class={}),i.class.arrowMarkerAbsolute=i.arrowMarkerAbsolute,NK.clear()}}},Symbol.toStringTag,{value:"Module"})),vgt=i=>ui.sanitizeText(i,De());let wgt={dividerMargin:10,padding:5,textHeight:10,curve:void 0};const AVe=function(i,a,f,p){const v=Object.keys(i);Wt.info("keys:",v),Wt.info(i),v.forEach(function(m){var A,P;const b=i[m],C={shape:"rect",id:b.id,domId:b.domId,labelText:vgt(b.id),labelStyle:"",style:"
`),v.style===void 0&&(m.style=m.style||"stroke: #333; stroke-width: 1.5px;fill:none"),m.labelStyle=m.labelStyle.replace("color:","fill:"))),a.setEdge(v.id1,v.id2,m,p)})},DVe=function(i){wgt={...wgt,...i}},IVe=async function(i,a,f,p){Wt.info("Drawing class - ",a);const v=De().flowchart??De().class,m=De().securityLevel;Wt.info("config:",v);const b=(v==null?void 0:v.nodeSpacing)??50,E=(v==null?void 0:v.rankSpacing)??50,C=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:p.db.getDirection(),nodesep:b,ranksep:E,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),A=p.db.getNamespaces(),P=p.db.getClasses(),F=p.db.getRelations(),j=p.db.getNotes();Wt.info(F),AVe(A,C,a,p),PRt(P,C,a,p),MVe(F,C),LVe(j,C,F.length+1,P);let R;m==="sandbox"&&(R=xr("#i"+a));const H=xr(m==="sandbox"?R.nodes()[0].contentDocument.body:"body"),Y=H.select(`[id="${a}"]`),rt=H.select("#"+a+" g");if(await A0t(rt,C,["aggregation","extension","composition","dependency","lollipop"],"classDiagram",a),to.insertTitle(Y,"classTitleText",(v==null?void 0:v.titleTopMargin)??5,p.db.getDiagramTitle()),s9(C,Y,v==null?void 0:v.diagramPadding,v==null?void 0:v.useMaxWidth),!(v!=null&&v.htmlLabels)){const J=m==="sandbox"?R.nodes()[0].contentDocument:document,it=J.querySelectorAll('[id="'+a+'"] .edgeLabel .label');for(const ft of it){const Tt=ft.getBBox(),kt=J.createElementNS("http://www.w3.org/2000/svg","rect");kt.setAttribute("rx",0),kt.setAttribute("ry",0),kt.setAttribute("width",Tt.width),kt.setAttribute("height",Tt.height),ft.insertBefore(kt,ft.firstChild)}}};function FRt(i){let a;switch(i){case 0:a="aggregation";break;case 1:a="extension";break;case 2:a="composition";break;case 3:a="dependency";break;case 4:a="lollipop";break;default:a="none"}return a}const OVe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:ARt,db:NK,renderer:{setConf:DVe,draw:IVe},styles:NRt,init:i=>{i.class||(i.class={}),i.class.arrowMarkerAbsolute=i.arrowMarkerAbsolute,NK.clear()}}},Symbol.toStringTag,{value:"Module"}));var mgt=function(){var i=function(Bt,vt,Ot,Vt){for(Ot=Ot||{},Vt=Bt.length;Vt--;Ot[Bt[Vt]]=vt);return Ot},a=[1,2],f=[1,3],p=[1,5],v=[1,7],m=[2,5],b=[1,15],E=[1,17],C=[1,21],A=[1,22],P=[1,23],F=[1,24],j=[1,37],R=[1,25],H=[1,26],Y=[1,27],rt=[1,28],J=[1,29],it=[1,32],ft=[1,33],Tt=[1,34],kt=[1,35],mt=[1,36],ct=[1,39],yt=[1,40],st=[1,41],xt=[1,42],ht=[1,38],dt=[1,45],Ct=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],tt=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],Pt=[1,4,5,7,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],pt=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],Ft={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,directive:6,SD:7,document:8,line:9,statement:10,classDefStatement: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,classDef:38,CLASSDEF_ID:39,CLASSDEF_STYLEOPTS:40,DEFAULT:41,class:42,CLASSENTITY_IDS:43,STYLECLASS:44,openDirective:45,typeDirective:46,closeDirective:47,":":48,argDirective:49,direction_tb:50,direction_bt:51,direction_rl:52,direction_lr:53,eol:54,";":55,EDGE_STATE:56,STYLE_SEPARATOR:57,left_of:58,right_of:59,open_directive:60,type_directive:61,arg_directive:62,close_directive:63,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",7:"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:"classDef",39:"CLASSDEF_ID",40:"CLASSDEF_STYLEOPTS",41:"DEFAULT",42:"class",43:"CLASSENTITY_IDS",44:"STYLECLASS",48:":",50:"direction_tb",51:"direction_bt"
`+Ce.showPosition()+`
Expecting `+Nn.join(", ")+", got '"+(this.terminals_[qt]||qt)+"'":Wr="Parse error on line "+(ne+1)+": Unexpected "+(qt==Ee?"end of input":"'"+(this.terminals_[qt]||qt)+"'"),this.parseError(Wr,{text:Ce.match,token:this.terminals_[qt]||qt,line:Ce.yylineno,loc:fn,expected:Nn})}if(Se[0]instanceof Array&&Se.length>1)throw new Error("Parse Error: multiple actions possible at state: "+zi+", token: "+qt);switch(Se[0]){case 1:Vt.push(qt),_n.push(Ce.yytext),Te.push(Ce.yylloc),Vt.push(Se[1]),qt=null,ke=Ce.yyleng,Ae=Ce.yytext,ne=Ce.yylineno,fn=Ce.yylloc;break;case 2:if(bi=this.productions_[Se[1]][1],Ri.$=_n[_n.length-bi],Ri._$={first_line:Te[Te.length-(bi||1)].first_line,last_line:Te[Te.length-1].last_line,first_column:Te[Te.length-(bi||1)].first_column,last_column:Te[Te.length-1].last_column},Yt&&(Ri._$.range=[Te[Te.length-(bi||1)].range[0],Te[Te.length-1].range[1]]),ki=this.performAction.apply(Ri,[Ae,ke,ne,$e.yy,Se[1],_n,Te].concat(He)),typeof ki<"u")return ki;bi&&(Vt=Vt.slice(0,-1*bi*2),_n=_n.slice(0,-1*bi),Te=Te.slice(0,-1*bi)),Vt.push(this.productions_[Se[1]][0]),_n.push(Ri.$),Te.push(Ri._$),dn=Wn[Vt[Vt.length-2]][Vt[Vt.length-1]],Vt.push(dn);break;case 3:return!0}}return!0}},X=function(){var Bt={EOF:1,parseError:function(Ot,Vt){if(this.yy.parser)this.yy.parser.parseError(Ot,Vt);else throw new Error(Ot)},setInput:function(vt,Ot){return this.yy=Ot||this.yy||{},this._input=vt,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var vt=this._input[0];this.yytext+=vt,this.yyleng++,this.offset++,this.match+=vt,this.matched+=vt;var Ot=vt.match(/(?:\r\n?|\n).*/g);return Ot?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),vt},unput:function(vt){var Ot=vt.length,Vt=vt.split(/(?:\r\n?|\n)/g);this._input=vt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ot),this.offset-=Ot;var qe=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),Vt.length-1&&(this.yylineno-=Vt.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:Vt?(Vt.length===qe.length?this.yylloc.first_column:0)+qe[qe.length-Vt.length].length-Vt[0].length:this.yylloc.first_column-Ot},this.options.ranges&&(this.yylloc.range=[_n[0],_n[0]+this.yyleng-Ot]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(vt){this.unput(this.match.slice(vt))},pastInput:function(){var vt=this.matched.substr(0,this.matched.length-this.match.length);return(vt.length>20?"...":"")+vt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var vt=this.match;return vt.length<20&&(vt+=this._input.substr(0,20-vt.length)),(vt.substr(0,20)+(vt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var vt=this.pastInput(),Ot=new Array(vt.length+1).join("-");return vt+this.upcomingInput()+`
`+Ot+"^"},test_match:function(vt,Ot){var Vt,qe,_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))),qe=vt[0].match(/(?:\r\n?|\n).*/g),qe&&(this.yylineno+=qe.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:qe?qe[qe.length-1].length-qe[qe.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+vt[0].length},this.yytext+=vt[0],this.match+=vt[0],this.matches=vt,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(vt[0].length),this.matched+=vt[0],Vt=this.performAction.call(this,this.yy,this,Ot,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Vt)return Vt;if(this._backtrack){for(var Te in _n)this[Te]=_n[Te];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var vt,Ot,Vt,qe;this._more||(this.yytext="",this.match="");for(var _n=this._currentRules(),Te=0;Te<_n.length;Te++)if(Vt=this._input.match(this.rules[_n[Te]]),Vt&&(!Ot||Vt[0].length>Ot[0].length)){if(Ot=Vt,qe=Te,this.options.backtrack_lexer){if(vt=this.test_match(Vt,_n[Te]),vt!==!1)return vt;if(this._backtrack){Ot=!1;continue}else return!1}else if(!this.options.flex)break}return Ot?(vt=this.test_match(Ot,_n[qe]),vt!==!1?vt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Ot=this.next();return Ot||this.lex()},begin:function(Ot){this.conditionStack.push(Ot)},popState:function(){var Ot=this.conditionStack.length-1;return Ot>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(Ot){return Ot=this.conditionStack.length-1-Math.abs(Ot||0),Ot>=0?this.conditionStack[Ot]:"INITIAL"},pushState:function(Ot){this.begin(Ot)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Ot,Vt,qe,_n){switch(qe){case 0:return 41;case 1:return 50;case 2:return 51;case 3:return 52;case 4:return 53;case 5:return this.begin("open_directive"),60;case 6:return this.begin("type_directive"),61;case 7:return this.popState(),this.begin("arg_directive"),48;case 8:return this.popState(),this.popState(),63;case 9:return 62;case 10:break;case 11:break;case 12:return 5;case 13:break;case 14:break;case 15:break;case 16:break;case 17:return this.pushState("SCALE"),17;case 18:return 18;case 19:this.popState();break;case 20:return this.begin("acc_title"),33;case 21:return this.popState(),"acc_title_value";case 22:return this.begin("acc_descr"),35;case 23:return this.popState(),"acc_descr_value";case 24:this.begin("acc_descr_multiline");break;case 25:this.popState();break;case 26:return"acc_descr_multiline_value";case 27:return this.pushState("CLASSDEF"),38;case 28:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 29:return this.popState(),this.pushState("CLASSDEFID"),39;case 30:return this.popState(),40;case 31:return this.pushState("CLASS"),42;case 32:return this.popState(),this.pushState("CLASS_STYLE"),43;case 33:return this.popState(),44;case 34:return this.pushState("SCALE"),17;case 35:return 18;case 36:this.popState();break;case 37:this.pushState("STATE");break;case 38:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-8).trim(),25;case 39:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-8).trim(),26;case 40:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-10).trim(),27;case 41:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-8).trim(),25;case 42:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-8).trim(),26;case 43:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-10).trim(),27;case 44:return 50;case 45:return 51;case 46:return 52;case 47:return 53;case 48:this.pushState("STATE_STRING");break;case 49:return this.pushState("STATE_ID"),"AS";case 50:return this.popState(),"ID";case 51:this.popState();break;case 52:return"STATE_DESCR";case 53:return 19;case 54:this.popState();break;case 55:return this.popState(),this.pushState("struct"),20;case 56:break;case 57:return this.popState(),21;case 58:break;case 59:return this.begin("NOTE"),29;case 60:return this.popState(),this.pushState("NOTE_ID"),58;case 61:return this.popState(),this.pushState("NOTE_ID"),59;case 62:this.popState(),this.pushState("FLOATING_NOTE");break;case 63:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";case 64:break;case 65:return"NOTE_TEXT";case 66:return this.popState(),"ID";case 67:return this.popState(),this.pushState("NOTE_TEXT"),24;case 68:return this.popState(),Vt.yytext=Vt.yytext.substr(2).trim(),31;case 69:return this.popState(),Vt.yytext=Vt.yytext.slice(0,-8).trim(),31;case 70:return 7;case 71:return 7;case 72:return 16;case 73:return 56;case 74:return 24;case 75:return Vt.yytext=Vt.yytext.trim(),14;case 76:return 15;case 77:return 28;case 78:return 57;case 79:return 5;case 80:return"INVALID"}},rules:[/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(
defs #statediagram-barbEnd {
fill: ${i.transitionColor};
stroke: ${i.transitionColor};
}
g.stateGroup text {
fill: ${i.nodeBorder};
stroke: none;
font-size: 10px;
}
g.stateGroup text {
fill: ${i.textColor};
stroke: none;
font-size: 10px;
}
g.stateGroup .state-title {
font-weight: bolder;
fill: ${i.stateLabelColor};
}
g.stateGroup rect {
fill: ${i.mainBkg};
stroke: ${i.nodeBorder};
}
g.stateGroup line {
stroke: ${i.lineColor};
stroke-width: 1;
}
.transition {
stroke: ${i.transitionColor};
stroke-width: 1;
fill: none;
}
.stateGroup .composit {
fill: ${i.background};
border-bottom: 1px
}
.stateGroup .alt-composit {
fill: #e0e0e0;
border-bottom: 1px
}
.state-note {
stroke: ${i.noteBorderColor};
fill: ${i.noteBkgColor};
text {
fill: ${i.noteTextColor};
stroke: none;
font-size: 10px;
}
}
.stateLabel .box {
stroke: none;
stroke-width: 0;
fill: ${i.mainBkg};
opacity: 0.5;
}
.edgeLabel .label rect {
fill: ${i.labelBackgroundColor};
opacity: 0.5;
}
.edgeLabel .label text {
fill: ${i.transitionLabelColor||i.tertiaryTextColor};
}
.label div .edgeLabel {
color: ${i.transitionLabelColor||i.tertiaryTextColor};
}
.stateLabel text {
fill: ${i.stateLabelColor};
font-size: 10px;
font-weight: bold;
}
.node circle.state-start {
fill: ${i.specialStateColor};
stroke: ${i.specialStateColor};
}
.node .fork-join {
fill: ${i.specialStateColor};
stroke: ${i.specialStateColor};
}
.node circle.state-end {
fill: ${i.innerEndBackground};
stroke: ${i.background};
stroke-width: 1.5
}
.end-state-inner {
fill: ${i.compositeBackground||i.background};
// stroke: ${i.background};
stroke-width: 1.5
}
.node rect {
fill: ${i.stateBkg||i.mainBkg};
stroke: ${i.stateBorder||i.nodeBorder};
stroke-width: 1px;
}
.node polygon {
fill: ${i.mainBkg};
stroke: ${i.stateBorder||i.nodeBorder};;
stroke-width: 1px;
}
#statediagram-barbEnd {
fill: ${i.lineColor};
}
.statediagram-cluster rect {
fill: ${i.compositeTitleBackground};
stroke: ${i.stateBorder||i.nodeBorder};
stroke-width: 1px;
}
.cluster-label, .nodeLabel {
color: ${i.stateLabelColor};
}
.statediagram-cluster rect.outer {
rx: 5px;
ry: 5px;
}
.statediagram-state .divider {
stroke: ${i.stateBorder||i.nodeBorder};
}
.statediagram-state .title-state {
rx: 5px;
ry: 5px;
}
.statediagram-cluster.statediagram-cluster .inner {
fill: ${i.compositeBackground||i.background};
}
.statediagram-cluster.statediagram-cluster-alt .inner {
fill: ${i.altBackground?i.altBackground:"#efefef"};
}
.statediagram-cluster .inner {
rx:0;
ry:0;
}
.statediagram-state rect.basic {
rx: 5px;
ry: 5px;
}
.statediagram-state rect.divider {
stroke-dasharray: 10,10;
fill: ${i.altBackground?i.altBackground:"#efefef"};
}
.note-edge {
stroke-dasharray: 5;
}
.statediagram-note rect {
fill: ${i.noteBkgColor};
stroke: ${i.noteBorderColor};
stroke-width: 1px;
rx: 0;
ry: 0;
}
.statediagram-note rect {
fill: ${i.noteBkgColor};
stroke: ${i.noteBorderColor};
stroke-width: 1px;
rx: 0;
ry: 0;
}
.statediagram-note text {
fill: ${i.noteTextColor};
}
.statediagram-note .nodeLabel {
color: ${i.noteTextColor};
}
.statediagram .edgeLabel {
color: red; // ${i.noteTextColor};
}
#dependencyStart, #dependencyEnd {
fill: ${i.lineColor};
stroke: ${i.lineColor};
stroke-width: 1;
}
.statediagramTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${i.textColor};
}
`,Cgt={},iGe=(i,a)=>{Cgt[i]=a},sGe=i=>Cgt[i],ZRt=()=>Object.keys(Cgt),aGe={get:sGe,set:iGe,keys:ZRt,size:()=>ZRt().length},oGe=i=>i.append("circle").attr("class","start-state").attr("r",De().state.sizeUnit).attr("cx",De().state.padding+De().state.sizeUnit).attr("cy",De().state.padding+De().state.sizeUnit),cGe=i=>i.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",De().state.textHeight).attr("class","divider").attr("x2",De().state.textHeight*2).attr("y1",0).attr("y2",0),uGe=(i,a)=>{const f=i.append("text").attr("x",2*De().state.padding).attr("y",De().state.textHeight+2*De().state.padding).attr("font-size",De().state.fontSize).attr("class","state-title").text(a.id),p=f.node().getBBox();return i.insert("rect",":first-child").attr("x",De().state.padding).attr("y",De().state.padding).attr("width",p.width+2*De().state.padding).attr("height",p.height+2*De().state.padding).attr("rx",De().state.radius),f},lGe=(i,a)=>{const f=function(j,R,H){const Y=j.append("tspan").attr("x",2*De().state.padding).text(R);H||Y.attr("dy",De().state.textHeight)},v=i.append("text").attr("x",2*De().state.padding).attr("y",De().state.textHeight+1.3*De().state.padding).attr("font-size",De().state.fontSize).attr("class","state-title").text(a.descriptions[0]).node().getBBox(),m=v.height,b=i.append("text").attr("x",De().state.padding).attr("y",m+De().state.padding*.4+De().state.dividerMargin+De().state.textHeight).attr("class","state-description");let E=!0,C=!0;a.descriptions.forEach(function(j){E||(f(b,j,C),C=!1),E=!1});const A=i.append("line").attr("x1",De().state.padding).attr("y1",De().state.padding+m+De().state.dividerMargin/2).attr("y2",De().state.padding+m+De().state.dividerMargin/2).attr("class","descr-divider"),P=b.node().getBBox(),F=Math.max(P.width,v.width);return A.attr("x2",F+3*De().state.padding),i.insert("rect",":first-child").attr("x",De().state.padding).attr("y",De().state.padding).attr("width",F+2*De().state.padding).attr("height",P.height+m+2*De().state.padding).attr("rx",De().state.radius),i},hGe=(i,a,f)=>{const p=De().state.padding,v=2*De().state.padding,m=i.node().getBBox(),b=m.width,E=m.x,C=i.append("text").attr("x",0).attr("y",De().state.titleShift).attr("font-size",De().state.fontSize).attr("class","state-title").text(a.id),P=C.node().getBBox().width+v;let F=Math.max(P,b);F===b&&(F=F+v);let j;const R=i.node().getBBox();a.doc,j=E-p,P>b&&(j=(b-F)/2+p),Math.abs(E-R.x)<p&&P>b&&(j=E-(P-b)/2);const H=1-De().state.textHeight;return i.insert("rect",":first-child").attr("x",j).attr("y",H).attr("class",f?"alt-composit":"composit").attr("width",F).attr("height",R.height+De().state.textHeight+De().state.titleShift+1).attr("rx","0"),C.attr("x",j+p),P<=b&&C.attr("x",E+(F-v)/2-P/2+p),i.insert("rect",":first-child").attr("x",j).attr("y",De().state.titleShift-De().state.textHeight-De().state.padding).attr("width",F).attr("height",De().state.textHeight*3).attr("rx",De().state.radius),i.insert("rect",":first-child").attr("x",j).attr("y",De().state.titleShift-De().state.textHeight-De().state.padding).attr("width",F).attr("height",R.height+3+2*De().state.textHeight).attr("rx",De().state.radius),i},fGe=i=>(i.append("circle").attr("class","end-state-outer").attr("r",De().state.sizeUnit+De().state.miniPadding).attr("cx",De().state.padding+De().state.sizeUnit+De().state.miniPadding).attr("cy",De().state.padding+De().state.sizeUnit+De().state.miniPadding),i.append("circle").attr("class","end-state-inner").attr("r",De().state.sizeUnit).attr("cx",De().state.padding+De().state.sizeUnit+2).attr("cy",De().state.padding+De().state.sizeUnit+2)),dGe=(i,a)=>{let f=De().state.forkWidth,p=De().state.forkHeight;if(a.parentId){let v=f;f=p,p=v}return i.append("rect").style("stroke","black").style("fill","black").attr("width",f).attr("height",p).attr("x",De().state.padding).attr("y",De().state.padding)},gGe=(i,a,f,p)=>{let v=0;const m=p.append("text");m.style("text-anchor","start"),m.attr("class","noteText");let b=i.replace(/\r\n/g,"<br/>");b=b.replace(/\n/g,"<br/>");const E=b.split(ui.lineBreakRegex);let C=1.25*De().state.noteMargin;for(const
`+Ct.showPosition()+`
Expecting `+Wn.join(", ")+", got '"+(this.terminals_[Rt]||Rt)+"'":Ae="Parse error on line "+(yt+1)+": Unexpected "+(Rt==ht?"end of input":"'"+(this.terminals_[Rt]||Rt)+"'"),this.parseError(Ae,{text:Ct.match,token:this.terminals_[Rt]||Rt,line:Ct.yylineno,loc:pt,expected:Wn})}if(vt[0]instanceof Array&&vt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Bt+", token: "+Rt);switch(vt[0]){case 1:it.push(Rt),Tt.push(Ct.yytext),kt.push(Ct.yylloc),it.push(vt[1]),Rt=null,st=Ct.yyleng,ct=Ct.yytext,yt=Ct.yylineno,pt=Ct.yylloc;break;case 2:if(_n=this.productions_[vt[1]][1],Vt.$=Tt[Tt.length-_n],Vt._$={first_line:kt[kt.length-(_n||1)].first_line,last_line:kt[kt.length-1].last_line,first_column:kt[kt.length-(_n||1)].first_column,last_column:kt[kt.length-1].last_column},Ft&&(Vt._$.range=[kt[kt.length-(_n||1)].range[0],kt[kt.length-1].range[1]]),Ot=this.performAction.apply(Vt,[ct,st,yt,tt.yy,vt[1],Tt,kt].concat(dt)),typeof Ot<"u")return Ot;_n&&(it=it.slice(0,-1*_n*2),Tt=Tt.slice(0,-1*_n),kt=kt.slice(0,-1*_n)),it.push(this.productions_[vt[1]][0]),Tt.push(Vt.$),kt.push(Vt._$),Te=mt[it[it.length-2]][it[it.length-1]],it.push(Te);break;case 3:return!0}}return!0}},R=function(){var Y={EOF:1,parseError:function(J,it){if(this.yy.parser)this.yy.parser.parseError(J,it);else throw new Error(J)},setInput:function(rt,J){return this.yy=J||this.yy||{},this._input=rt,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var rt=this._input[0];this.yytext+=rt,this.yyleng++,this.offset++,this.match+=rt,this.matched+=rt;var J=rt.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),rt},unput:function(rt){var J=rt.length,it=rt.split(/(?:\r\n?|\n)/g);this._input=rt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-J),this.offset-=J;var ft=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),it.length-1&&(this.yylineno-=it.length-1);var Tt=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:it?(it.length===ft.length?this.yylloc.first_column:0)+ft[ft.length-it.length].length-it[0].length:this.yylloc.first_column-J},this.options.ranges&&(this.yylloc.range=[Tt[0],Tt[0]+this.yyleng-J]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(rt){this.unput(this.match.slice(rt))},pastInput:function(){var rt=this.matched.substr(0,this.matched.length-this.match.length);return(rt.length>20?"...":"")+rt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var rt=this.match;return rt.length<20&&(rt+=this._input.substr(0,20-rt.length)),(rt.substr(0,20)+(rt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var rt=this.pastInput(),J=new Array(rt.length+1).join("-");return rt+this.upcomingInput()+`
`+J+"^"},test_match:function(rt,J){var it,ft,Tt;if(this.options.backtrack_lexer&&(Tt={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&&(Tt.yylloc.range=this.yylloc.range.slice(0))),ft=rt[0].match(/(?:\r\n?|\n).*/g),ft&&(this.yylineno+=ft.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ft?ft[ft.length-1].length-ft[ft.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+rt[0].length},this.yytext+=rt[0],this.match+=rt[0],this.matches=rt,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(rt[0].length),this.matched+=rt[0],it=this.performAction.call(this,this.yy,this,J,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),it)return it;if(this._backtrack){for(var kt in Tt)this[kt]=Tt[kt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var rt,J,it,ft;this._more||(this.yytext="",this.match="");for(var Tt=this._currentRules(),kt=0;kt<Tt.length;kt++)if(it=this._input.match(this.rules[Tt[kt]]),it&&(!J||it[0].length>J[0].length)){if(J=it,ft=kt,this.options.backtrack_lexer){if(rt=this.test_match(it,Tt[kt]),rt!==!1)return rt;if(this._backtrack){J=!1;continue}else return!1}else if(!this.options.flex)break}return J?(rt=this.test_match(J,Tt[ft]),rt!==!1?rt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var J=this.next();return J||this.lex()},begin:function(J){this.conditionStack.push(J)},popState:function(){var J=this.conditionStack.length-1;return J>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(J){return J=this.conditionStack.length-1-Math.abs(J||0),J>=0?this.conditionStack[J]:"INITIAL"},pushState:function(J){this.begin(J)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(J,it,ft,Tt){switch(ft){case 0:return this.begin("open_directive"),26;case 1:return this.begin("type_directive"),27;case 2:return this.popState(),this.begin("arg_directive"),15;case 3:return this.popState(),this.popState(),29;case 4:return 28;case 5:break;case 6:break;case 7:return 11;case 8:break;case 9:break;case 10:return 4;case 11:return 17;case 12:return this.begin("acc_title"),18;case 13:return this.popState(),"acc_title_value";case 14:return this.begin("acc_descr"),20;case 15:return this.popState(),"acc_descr_value";case 16:this.begin("acc_descr_multiline");break;case 17:this.popState();break;case 18:return"acc_descr_multiline_value";case 19:return 23;case 20:return 24;case 21:return 25;case 22:return 15;case 23:return 6;case 24:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%(?!\{)[^\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:{open_directive:{rules:[1],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},acc_descr_multiline:{rules:[17,18],inclusive:!1},acc_descr:{rules:[15],inclusive:!1},acc_title:{rules:[13],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,10,11,12,14,16,19,20,21,22,23,24],inclusive:!0}}};return Y}();j.lexer=R;function H(){this.yy={}}return H.prototype=j,j.Parser=H,new H}();Igt.parser=Igt;const zGe=Igt;let pL="";const Ogt=[],VP=[],GP=[],qGe=function(i,a,f){J1.parseDirective(this,i,a,f)},HGe=function(){Ogt.length=0,VP.length=0,pL="",GP.length=0,cg()},VGe=function(i){pL=i,Ogt.push(i)},GGe=function(){return Ogt},UGe=function(){let i=hjt();const a=100;let f=0;for(;!i&&f<a;)i=hjt(),f++;return VP.push(...GP),VP},WGe=function(){const i=[];return VP.forEach(f=>{f.people&&i.push(...f.people)}),[...new Set(i)].sort()},KGe=function(i,a){const f=a.substr(1).split(":");let p=0,v=[];f.length===1?(p=Number(f[0]),v=[]):(p=Number(f[0]),v=f[1].split(","));const m=v.map(E=>E.trim()),b={section:pL,type:pL,people:m,task:i,score:p};GP.push(b)},YGe=function(i){const a={section:pL,type:pL,description:i,task:i,classes:[]};VP.push(a)},hjt=function(){const i=function(f){return GP[f].processed};let a=!0;for(const[f,p]of GP.entries())i(f),a=a&&p.processed;return a},fjt={parseDirective:qGe,getConfig:()=>De().journey,clear:HGe,setDiagramTitle:Nb,getDiagramTitle:hp,setAccTitle:m0,getAccTitle:ug,setAccDescription:lg,getAccDescription:hg,addSection:VGe,getSections:GGe,getTasks:UGe,addTask:KGe,addTaskOrg:YGe,getActors:function(){return WGe()}},XGe=i=>`.label {
font-family: 'trebuchet ms', verdana, arial, sans-serif;
font-family: var(--mermaid-font-family);
color: ${i.textColor};
}
.mouth {
stroke: #666;
}
line {
stroke: ${i.textColor}
}
.legend {
fill: ${i.textColor};
}
.label text {
fill: #333;
}
.label {
color: ${i.textColor}
}
.face {
${i.faceColor?`fill: ${i.faceColor}`:"fill: #FFF8DC"};
stroke: #999;
}
.node rect,
.node circle,
.node ellipse,
.node polygon,
.node path {
fill: ${i.mainBkg};
stroke: ${i.nodeBorder};
stroke-width: 1px;
}
.node .label {
text-align: center;
}
.node.clickable {
cursor: pointer;
}
.arrowheadPath {
fill: ${i.arrowheadColor};
}
.edgePath .path {
stroke: ${i.lineColor};
stroke-width: 1.5px;
}
.flowchart-link {
stroke: ${i.lineColor};
fill: none;
}
.edgeLabel {
background-color: ${i.edgeLabelBackground};
rect {
opacity: 0.5;
}
text-align: center;
}
.cluster rect {
}
.cluster text {
fill: ${i.titleColor};
}
div.mermaidTooltip {
position: absolute;
text-align: center;
max-width: 200px;
padding: 2px;
font-family: 'trebuchet ms', verdana, arial, sans-serif;
font-family: var(--mermaid-font-family);
font-size: 12px;
background: ${i.tertiaryColor};
border: 1px solid ${i.border2};
border-radius: 2px;
pointer-events: none;
z-index: 100;
}
.task-type-0, .section-type-0 {
${i.fillType0?`fill: ${i.fillType0}`:""};
}
.task-type-1, .section-type-1 {
${i.fillType0?`fill: ${i.fillType1}`:""};
}
.task-type-2, .section-type-2 {
${i.fillType0?`fill: ${i.fillType2}`:""};
}
.task-type-3, .section-type-3 {
${i.fillType0?`fill: ${i.fillType3}`:""};
}
.task-type-4, .section-type-4 {
${i.fillType0?`fill: ${i.fillType4}`:""};
}
.task-type-5, .section-type-5 {
${i.fillType0?`fill: ${i.fillType5}`:""};
}
.task-type-6, .section-type-6 {
${i.fillType0?`fill: ${i.fillType6}`:""};
}
.task-type-7, .section-type-7 {
${i.fillType0?`fill: ${i.fillType7}`:""};
}
.actor-0 {
${i.actor0?`fill: ${i.actor0}`:""};
}
.actor-1 {
${i.actor1?`fill: ${i.actor1}`:""};
}
.actor-2 {
${i.actor2?`fill: ${i.actor2}`:""};
}
.actor-3 {
${i.actor3?`fill: ${i.actor3}`:""};
}
.actor-4 {
${i.actor4?`fill: ${i.actor4}`:""};
}
.actor-5 {
${i.actor5?`fill: ${i.actor5}`:""};
}
`,Ngt=function(i,a){return WW(i,a)},QGe=function(i,a){const p=i.append("circle").attr("cx",a.cx).attr("cy",a.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),v=i.append("g");v.append("circle").attr("cx",a.cx-15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),v.append("circle").attr("cx",a.cx+15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function m(C){const A=LA().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);C.append("path").attr("class","mouth").attr("d",A).attr("transform","translate("+a.cx+","+(a.cy+2)+")")}function b(C){const A=LA().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);C.append("path").attr("class","mouth").attr("d",A).attr("transform","translate("+a.cx+","+(a.cy+7)+")")}function E(C){C.append("line").attr("class","mouth").attr("stroke",2).attr("x1",a.cx-5).attr("y1",a.cy+7).attr("x2",a.cx+5).attr("y2",a.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return a.score>3?m(v):a.score<3?b(v):E(v),p},djt=function(i,a){const f=i.append("circle");return f.attr("cx",a.cx),f.attr("cy",a.cy),f.attr("class","actor-"+a.pos),f.attr("fill",a.fill),f.attr("stroke",a.stroke),f.attr("r",a.r),f.class!==void 0&&f.attr("class",f.class),a.title!==void 0&&f.append("title").text(a.title),f},gjt=function(i,a){return sDe(i,a)},ZGe=function(i,a){function f(v,m,b,E,C){return v+","+m+" "+(v+b)+","+m+" "+(v+b)+","+(m+E-C)+" "+(v+b-C*1.2)+","+(m+E)+" "+v+","+(m+E)}const p=i.append("polygon");p.attr("points",f(a.x,a.y,50,20,7)),p.attr("class","labelBox"),a.y=a.y+a.labelMargin,a.x=a.x+.5*a.labelMargin,gjt(i,a)},JGe=function(i,a,f){const p=i.append("g"),v=u9();v.x=a.x,v.y=a.y,v.fill=a.fill,v.width=f.width*a.taskCount+f.diagramMarginX*(a.taskCount-1),v.height=f.height,v.class="journey-section section-type-"+a.num,v.rx=3,v.ry=3,Ngt(p,v),bjt(f)(a.text,p,v.x,v.y,v.width,v.height,{class:"journey-section section-type-"+a.num},f,a.colour)};let pjt=-1;const tUe=function(i,a,f){const p=a.x+f.width/2,v=i.append("g");pjt++;const m=300+5*30;v.append("line").attr("id","task"+pjt).attr("x1",p).attr("y1",a.y).attr("x2",p).attr("y2",m).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),QGe(v,{cx:p,cy:300+(5-a.score)*30,score:a.score});const b=u9();b.x=a.x,b.y=a.y,b.fill=a.fill,b.width=f.width,b.height=f.height,b.class="task task-type-"+a.num,b.rx=3,b.ry=3,Ngt(v,b);let E=a.x+14;a.people.forEach(C=>{const A=a.actors[C].color,P={cx:E,cy:a.y,r:7,fill:A,stroke:"#000",title:C,pos:a.actors[C].position};djt(v,P),E+=10}),bjt(f)(a.task,v,b.x,b.y,b.width,b.height,{class:"task"},f,a.colour)},eUe=function(i,a){pNt(i,a)},bjt=function(){function i(v,m,b,E,C,A,P,F){const j=m.append("text").attr("x",b+C/2).attr("y",E+A/2+5).style("font-color",F).style("text-anchor","middle").text(v);p(j,P)}function a(v,m,b,E,C,A,P,F,j){const{taskFontSize:R,taskFontFamily:H}=F,Y=v.split(/<br\s*\/?>/gi);for(let rt=0;rt<Y.length;rt++){const J=rt*R-R*(Y.length-1)/2,it=m.append("text").attr("x",b+C/2).attr("y",E).attr("fill",j).style("text-anchor","middle").style("font-size",R).style("font-family",H);it.append("tspan").attr("x",b+C/2).attr("dy",J).text(Y[rt]),it.attr("y",E+A/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),p(it,P)}}function f(v,m,b,E,C,A,P,F){const j=m.append("switch"),H=j.append("foreignObject").attr("x",b).attr("y",E).attr("width",C).attr("height",A).attr("position","fixed").append("xhtml:div").style("display","table").style("height","100%").style("width","100%");H.append("div").attr("class","label").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(v),a(v,j,b,E,C,A,P,F),p(H,P)}function p(v,m){for(const b in m)b in m&&v.attr(b,m[b])}return function(v){return v.textPlacement==="fo"?f:v.textPlacement==="old"?i:a}}(),UP={drawRect:Ngt,drawCircle:djt,drawSection:JGe,drawText:
`,Lu(Ta(t,e[0])))>=0;)++e[0]}function kD(t,e){this.e=e,this.a=Nne(t),this.a<54?this.f=Gv(t):this.c=KD(t)}function qte(t,e,n,r){yi(),vv.call(this,26),this.c=t,this.a=e,this.d=n,this.b=r}function Xd(t,e,n){var r,s;for(r=10,s=0;s<n-1;s++)e<r&&(t.a+="0"),r*=10;t.a+=e}function Dan(t,e){var n;for(n=0;t.e!=t.i.gc();)_tn(e,dr(t),de(n)),n!=Ti&&++n}function Omt(t,e){var n;for(++t.d,++t.c[e],n=e+1;n<t.a.length;)++t.a[n],n+=n&-n}function Ian(t,e){var n,r,s;s=e.c.i,n=u(tr(t.f,s),57),r=n.d.c-n.e.c,ryt(e.a,r,0)}function ED(t){var e,n;return e=t+128,n=(WKt(),J8t)[e],!n&&(n=J8t[e]=new Ott(t)),n}function Xr(t,e){var n;return In(e),n=t[":"+e],Ban(!!n,ut(ot(Qn,1),Me,1,5,[e])),n}function Oan(t){var e,n;if(t.b){n=null;do e=t.b,t.b=null,n=jae(e,n);while(t.b);t.b=n}}function Nan(t){var e,n;if(t.a){n=null;do e=t.a,t.a=null,n=jae(e,n);while(t.a);t.a=n}}function Hte(t){var e;for(++t.a,e=t.c.a.length;t.a<e;++t.a)if(t.c.b[t.a])return}function Pan(t,e){var n,r;for(r=e.c,n=r+1;n<=e.f;n++)t.a[n]>t.a[r]&&(r=n);return r}function Fan(t,e){var n;return n=rw(t.e.c,e.e.c),n==0?js(t.e.d,e.e.d):n}function t4(t,e){return e.e==0||t.e==0?Y7:(g7(),tat(t,e))}function Ban(t,e){if(!t)throw nt(new Pn($2n("Enum constant undefined: %s",e)))}function $_(){$_=X,Cbe=new wg,Sbe=new cv,Tbe=new JK,_be=new qb,Abe=new tY}function $$(){$$=X,I7t=new Ebt("BY_SIZE",0),Nut=new Ebt("BY_SIZE_AND_SHAPE",1)}function z$(){z$=X,Gut=new Tbt("EADES",0),rV=new Tbt("FRUCHTERMAN_REINGOLD",1)}function TD(){TD=X,NV=new Abt("READING_DIRECTION",0),C9t=new Abt("ROTATION",1)}function Vte(){Vte=X,l2e=Qr((m2(),ut(ot(_9t,1),oe,335,0,[xlt,T9t,klt,pS,gS])))}function Gte(){Gte=X,zwe=Qr((aC(),ut(ot(C_t,1),oe,315,0,[__t,fht,dht,AS,LS])))}function Ute(){Ute=X,Jbe=Qr((p4(),ut(ot(Zbe,1),oe,363,0,[LV,DV,IV,MV,AV])))}function Wte(){Wte=X,E2e=Qr((ph(),ut(ot(nTt,1),oe,163,0,[_O,yS,gb,xS,Fy])))}function Kte(){Kte=X,c3e=Qr((iI(),ut(ot(XCt,1),oe,316,0,[WCt,Wht,YCt,Kht,KCt])))}function Yte(){Yte=X,D3e=Qr((t1(),ut(ot(ep,1),oe,175,0,[qn,ua,Id,q2,tp])))}function Xte(){Xte=X,n3e=Qr((w7(),ut(ot(e3e,1),oe,355,0,[r5,Bx,qS,zS,HS])))}function Qte(){Qte=X,wbe=Qr((Ya(),ut(ot(kEt,1),oe,356,0,[Ld,fb,fu,Gc,jo])))}function Zte(){Zte=X,e4e=Qr((fo(),ut(ot(WS,1),oe,103,0,[c0,_f,Hh,Q0,Z0])))}function Jte(){Jte=X,l4e=Qr((u4(),ut(ot(QS,1),oe,249,0,[xb,JO,kAt,XS,EAt])))}function tee(){tee=X,d4e=Qr((be(),ut(ot(Za,1),Cc,61,0,[ac,On,Hn,yr,Bn])))}function tit(t,e){var n;return n=u(tr(t.a,e),134),n||(n=new x3,Ai(t.a,e,n)),n}function eee(t){var e;return e=u(K(t,(ae(),Lw)),305),e?e.a==t:!1}function nee(t){var e;return e=u(K(t,(ae(),Lw)),305),e?e.i==t:!1}function ree(t,e){return In(e),Jvt(t),t.d.Ob()?(e.td(t.d.Pb()),!0):!1}function q$(t){return _c(t,Ti)>0?Ti:_c(t,Oa)<0?Oa:Mr(t)}function Qm(t){return t<3?(ql(t,Qhe),t+1):t<AC?Cs(t/.75+1):Ti}function wn(t,e){var n;return n=(t.i==null&&bd(t),t.i),e>=0&&e<n.length?n[e]:null}function Qf(t,e,n){var r;if(e==null)throw nt(new LT);return r=I0(t,e),ssn(t,e,n),r}function iee(t){return t.a>=-.01&&t.a<=R1&&(t.a=0),t.b>=-.01&&t.b<=R1&&(t.b=0),t}function see(t,e){return e==(mnt(),mnt(),Lge)?t.toLocaleLowerCase():t.toLowerCase()}function Nmt(t){return(t.i&2?"interface ":t.i&1?"":"class ")+(L0(t),t.o)}function Do(t){var e,n;n=(e=new Ytt,e),Or((!t.q&&(t.q=new he(Yh,t,11,10)),t.q),n)}function Ran(t,e){var n;return n=e>0?e-1:e,eHt(ZKe(Mee(Ivt(new Wk,n),t.n),t.j),t.k)}function jan(t,e,n,r){var s;t.j=-1,r5t(t,B4t(t,e,n),(so(),s=u(e,66).Mj(),s.Ok(r)))}function aee(t){this.g=t,this.f=new le,this.a=b.Math.min(this.g.c.c,this.g.d.c)}function oee(t){this.b=new le,this.a=new le,this.c=new le,this.d=new le,this.e=t}function cee(t,e){this.a=new Ar,this.e=new Ar,this.b=(Y_(),uG),this.c=t,this.b=e}function uee(t,e,n){xj.call(this),Pmt(this),this.a=t,this.c=n,this.b=e.d,this.f=e.e}function lee(t){this.d=t,this.c=t.c.vc().Kc(),this.b=null,this.a=null,this.e=(dR(),xut)}function Kv(t){if(t<0)throw nt(new Pn("Illegal Capacity: "+t));this.g=this.ri(t)}function $an(t,e){if(0>t||t>e)throw nt(new Kpt("fromIndex: 0, toIndex: "+t+F6t+e))}function zan(t){var e;if(t.a==t.b.a)throw nt(new vc);return e=t.a,t.c=e,t.a=t.a.e,e}function H$(t){var
`)}return e&&(e.stack||n(t[zat]))}function d3t(t){Vm();var e;switch(e=t.Pc(),e.length){case 0:return mut;case 1:return new Lnt(Dr(e[0]));default:return new urt(oln(e))}}function iw(t,e){switch(e.g){case 1:return I6(t.j,(Vu(),LEt));case 2:return I6(t.j,(Vu(),DEt));default:return pn(),pn(),uo}}function g3t(t,e){switch(e){case 3:Xv(t,0);return;case 4:Qv(t,0);return;case 5:Cu(t,0);return;case 6:Su(t,0);return}qyt(t,e)}function Wit(){Wit=X,IR(),oG=(xe(),Bw),Bwe=L1(ut(ot(Jht,1),Dkt,146,0,[AO,Tf,Fx,Fw,Vy,nht,vE,wE,rht,CS,Z4,$2,J4]))}function aie(t){var e,n;e=t.d==(rx(),iE),n=d4t(t),e&&!n||!e&&n?ee(t.a,(xe(),Md),(Qd(),zO)):ee(t.a,(xe(),Md),(Qd(),$O))}function $ln(t,e){var n;return n=u($l(t,a2(new ke,new ne,new pi,ut(ot(wl,1),oe,132,0,[(N1(),Yl)]))),15),n.Qc(MKt(n.gc()))}function Az(){Az=X,yft=new QR("SIMPLE",0),SAt=new QR("GROUP_DEC",1),LAt=new QR("GROUP_MIXED",2),AAt=new QR("GROUP_INC",3)}function Kit(){Kit=X,Mft=new eB,ZAt=new nB,JAt=new rB,tLt=new Ck,eLt=new iB,nLt=new sB,rLt=new XZ,iLt=new Sk,sLt=new Ak}function oie(t,e,n){pee(),oqt.call(this),this.a=Zb(Kge,[re,G6t],[595,212],0,[QH,Fut],2),this.c=new S6,this.g=t,this.f=e,this.d=n}function p3t(t,e){this.n=Zb(Db,[re,cot],[364,25],14,[e,Cs(b.Math.ceil(t/32))],2),this.o=t,this.p=e,this.j=t-1>>1,this.k=e-1>>1}function zln(t,e){mr(e,"End label post-processing",1),ys(Wi(ec(new kn(null,new Tn(t.b,16)),new dY),new gY),new pY),or(e)}function qln(t,e,n){var r,s;return r=Zt(t.p[e.i.p])+Zt(t.d[e.i.p])+e.n.b+e.a.b,s=Zt(t.p[n.i.p])+Zt(t.d[n.i.p])+n.n.b+n.a.b,s-r}function Hln(t,e,n){var r,s;for(r=Gs(n,po),s=0;_c(r,0)!=0&&s<e;s++)r=Ra(r,Gs(t[s],po)),t[s]=Mr(r),r=Rp(r,32);return Mr(r)}function Lz(t){var e,n,r,s;for(s=0,n=0,r=t.length;n<r;n++)e=($r(n,t.length),t.charCodeAt(n)),e<64&&(s=A1(s,M0(1,e)));return s}function Vln(t){var e;return t==null?null:new Fp((e=Hc(t,!0),e.length>0&&($r(0,e.length),e.charCodeAt(0)==43)?e.substr(1):e))}function Gln(t){var e;return t==null?null:new Fp((e=Hc(t,!0),e.length>0&&($r(0,e.length),e.charCodeAt(0)==43)?e.substr(1):e))}function b3t(t,e){var n;return t.i>0&&(e.length<t.i&&(n=_D(dl(e).c,t.i),e=n),Pc(t.g,0,e,0,t.i)),e.length>t.i&&ls(e,t.i,null),e}function eu(t,e,n){var r,s,o;return t.ej()?(r=t.i,o=t.fj(),zD(t,r,e),s=t.Zi(3,null,e,r,o),n?n.Ei(s):n=s):zD(t,t.i,e),n}function Uln(t,e,n){var r,s;return r=new F0(t.e,4,10,(s=e.c,_t(s,88)?u(s,26):(ln(),Qh)),null,$g(t,e),!1),n?n.Ei(r):n=r,n}function Wln(t,e,n){var r,s;return r=new F0(t.e,3,10,null,(s=e.c,_t(s,88)?u(s,26):(ln(),Qh)),$g(t,e),!1),n?n.Ei(r):n=r,n}function cie(t){Bm();var e;return e=new So(u(t.e.We((di(),o5)),8)),t.B.Hc((bl(),AE))&&(e.a<=0&&(e.a=20),e.b<=0&&(e.b=20)),e}function uie(t){sy();var e;return(t.q?t.q:(pn(),pn(),a0))._b((xe(),Nw))?e=u(K(t,Nw),197):e=u(K($a(t),_S),197),e}function iy(t,e){var n,r;return r=null,ea(t,(xe(),sG))&&(n=u(K(t,sG),94),n.Xe(e)&&(r=n.We(e))),r==null&&(r=K($a(t),e)),r}function lie(t,e){var n,r,s;return _t(e,42)?(n=u(e,42),r=n.cd(),s=ny(t.Rc(),r),dd(s,n.dd())&&(s!=null||t.Rc()._b(r))):!1}function Yit(t,e){var n,r,s;return t.f>0?(t.qj(),r=e==null?0:Ji(e),s=(r&Ti)%t.d.length,n=lce(t,s,r,e),n!=-1):!1}function Jf(t,e){var n,r,s;return t.f>0&&(t.qj(),r=e==null?0:Ji(e),s=(r&Ti)%t.d.length,n=t5t(t,s,r,e),n)?n.dd():null}function GD(t,e){var n,r,s,o;for(o=hu(t.e.Tg(),e),n=u(t.g,119),s=0;s<t.i;++s)if(r=n[s],o.rl(r.ak()))return!1;return!0}function hie(t){if(t.b==null){for(;t.a.Ob();)if(t.b=t.a.Pb(),!u(t.b,49).Zg())return!0;return t.b=null,!1}else return!0}function fie(t,e){t.mj();try{t.d.Vc(t.e++,e),t.f=t.d.j,t.g=-1}catch(n){throw n=rs(n),_t(n,73)?nt(new sh):nt(n)}}function Mz(t,e){i2t();var n,r;return n=zM((bR(),bR(),sS)),r=null,e==n&&(r=u(jc(K8t,t),615)),r||(r=new XYt(t),e==n&&Ao(K8t,t,r)),r}function die(t,e){var n,r;t.a=Ra(t.a,1),t.c=b.Math.min(t.c,e),t.b=b.Math.max(t.b,e),t.d+=e,n=e-t.f,r=t.e+n,t.f=r-t.e-n,t.e=r}function Kln(t,e){var n;t.c=e,t.a=Dln(e),t.a<54&&(t.f=(n=e.d>1?A1(M0(e.a[1],32),Gs(e.a[0],po)):Gs(e.a[0],po),Gv(Ia(e.e,n))))}function UD(t,e){var n;return Vo(t)&&Vo(e)&&(n=t%e,II<n&&n<E2)?n:Wp((l6t(Vo(t)?Dh(t):t,Vo(e)?Dh(e):e,!0),ub))}function nC(t,e){var n;g4n(e),n=u(K(t,(x
`;return n.substring(0,r.length)==r&&(n=n.substring(r.length)),n.split(`
`)}return[]}function Ffn(t){var e;return e=($ee(),yge),e[t>>>28]|e[t>>24&15]<<4|e[t>>20&15]<<8|e[t>>16&15]<<12|e[t>>12&15]<<16|e[t>>8&15]<<20|e[t>>4&15]<<24|e[t&15]<<28}function Cse(t){var e,n,r;t.b==t.c&&(r=t.a.length,n=xyt(b.Math.max(8,r))<<1,t.b!=0?(e=ff(t.a,n),Kee(t,e,r),t.a=e,t.b=0):Wzt(t.a,n),t.c=r)}function Bfn(t,e){var n;return n=t.b,n.Xe((di(),ml))?n.Hf()==(be(),Bn)?-n.rf().a-Zt(ve(n.We(ml))):e+Zt(ve(n.We(ml))):n.Hf()==(be(),Bn)?-n.rf().a:e}function ZD(t){var e;return t.b.c.length!=0&&u(Pe(t.b,0),70).a?u(Pe(t.b,0),70).a:(e=srt(t),e??""+(t.c?Go(t.c.a,t,0):-1))}function Wz(t){var e;return t.f.c.length!=0&&u(Pe(t.f,0),70).a?u(Pe(t.f,0),70).a:(e=srt(t),e??""+(t.i?Go(t.i.j,t,0):-1))}function Rfn(t,e){var n,r;if(e<0||e>=t.gc())return null;for(n=e;n<t.gc();++n)if(r=u(t.Xb(n),128),n==t.gc()-1||!r.o)return new ya(de(n),r);return null}function jfn(t,e,n){var r,s,o,h,d;for(o=t.c,d=n?e:t,r=n?t:e,s=d.p+1;s<r.p;++s)if(h=u(Pe(o.a,s),10),!(h.k==(Gn(),q1)||d1n(h)))return!1;return!0}function z3t(t){var e,n,r,s,o;for(o=0,s=Ns,r=0,n=new S(t.a);n.a<n.c.c.length;)e=u(Q(n),187),o+=e.r+(r>0?t.c:0),s=b.Math.max(s,e.d),++r;t.e=o,t.b=s}function $fn(t){var e,n;if(!t.b)for(t.b=y$(u(t.f,118).Ag().i),n=new nr(u(t.f,118).Ag());n.e!=n.i.gc();)e=u(dr(n),137),ue(t.b,new iet(e));return t.b}function zfn(t,e){var n,r,s;if(e.dc())return l8(),l8(),lN;for(n=new LWt(t,e.gc()),s=new nr(t);s.e!=s.i.gc();)r=dr(s),e.Hc(r)&&Or(n,r);return n}function q3t(t,e,n,r){return e==0?r?(!t.o&&(t.o=new Il((nu(),_b),$w,t,0)),t.o):(!t.o&&(t.o=new Il((nu(),_b),$w,t,0)),fD(t.o)):jz(t,e,n,r)}function xst(t){var e,n;if(t.rb)for(e=0,n=t.rb.i;e<n;++e)FM(At(t.rb,e));if(t.vb)for(e=0,n=t.vb.i;e<n;++e)FM(At(t.vb,e));k_((Gu(),Sa),t),t.Bb|=1}function Ui(t,e,n,r,s,o,h,d,w,k,_,M,B,q){return noe(t,e,r,null,s,o,h,d,w,k,B,!0,q),Zyt(t,_),_t(t.Cb,88)&&hy(hl(u(t.Cb,88)),2),n&&Zmt(t,n),Jyt(t,M),t}function qfn(t){var e,n;if(t==null)return null;n=0;try{n=Gl(t,Oa,Ti)&Ms}catch(r){if(r=rs(r),_t(r,127))e=R$(t),n=e[0];else throw nt(r)}return ID(n)}function Hfn(t){var e,n;if(t==null)return null;n=0;try{n=Gl(t,Oa,Ti)&Ms}catch(r){if(r=rs(r),_t(r,127))e=R$(t),n=e[0];else throw nt(r)}return ID(n)}function Vfn(t,e){var n,r,s;return s=t.h-e.h,s<0||(n=t.l-e.l,r=t.m-e.m+(n>>22),s+=r>>22,s<0)?!1:(t.l=n&vl,t.m=r&vl,t.h=s&W0,!0)}function Gfn(t,e,n,r,s,o,h){var d,w;return!(e.Ae()&&(w=t.a.ue(n,r),w<0||!s&&w==0)||e.Be()&&(d=t.a.ue(n,o),d>0||!h&&d==0))}function Ufn(t,e){Q8();var n;if(n=t.j.g-e.j.g,n!=0)return 0;switch(t.j.g){case 2:return Vit(e,b9t)-Vit(t,b9t);case 4:return Vit(t,p9t)-Vit(e,p9t)}return 0}function Wfn(t){switch(t.g){case 0:return Tlt;case 1:return _lt;case 2:return Clt;case 3:return Slt;case 4:return PV;case 5:return Alt;default:return null}}function Io(t,e,n){var r,s;return r=(s=new Xtt,g2(s,e),tu(s,n),Or((!t.c&&(t.c=new he(zw,t,12,10)),t.c),s),s),Pg(r,0),ty(r,1),jg(r,!0),Rg(r,!0),r}function nx(t,e){var n,r;if(e>=t.i)throw nt(new Wet(e,t.i));return++t.j,n=t.g[e],r=t.i-e-1,r>0&&Pc(t.g,e+1,t.g,e,r),ls(t.g,--t.i,null),t.fi(e,n),t.ci(),n}function Sse(t,e){var n,r;return t.Db>>16==17?t.Cb.ih(t,21,Kh,e):(r=oo(u(wn((n=u(Mn(t,16),26),n||t.zh()),t.Db>>16),18)),t.Cb.ih(t,r.n,r.f,e))}function Kfn(t){var e,n,r,s;for(pn(),aa(t.c,t.a),s=new S(t.c);s.a<s.c.c.length;)for(r=Q(s),n=new S(t.b);n.a<n.c.c.length;)e=u(Q(n),679),e.Ke(r)}function Yfn(t){var e,n,r,s;for(pn(),aa(t.c,t.a),s=new S(t.c);s.a<s.c.c.length;)for(r=Q(s),n=new S(t.b);n.a<n.c.c.length;)e=u(Q(n),369),e.Ke(r)}function Xfn(t){var e,n,r,s,o;for(s=Ti,o=null,r=new S(t.d);r.a<r.c.c.length;)n=u(Q(r),213),n.d.j^n.e.j&&(e=n.e.e-n.d.e-n.a,e<s&&(s=e,o=n));return o}function H3t(){H3t=X,obe=new vn(cxt,(Fn(),!1)),ibe=new vn(uxt,100),gEt=(j_(),Yut),sbe=new vn(lxt,gEt),abe=new vn(hxt,xd),cbe=new vn(fxt,de(Ti))}function Ase(t,e,n){var r,s,o,h,d,w,k,_;for(k=0,s=t.a[e],o=0,h=s.length;o<h;++o)for(r=s[o],_=Q_(r,n),w=_.Kc();w.Ob();)d=u(w.Pb(),11),Ai(t.f,d,de(k++))}function Qfn(t,e,n){var r,s,o,h;if(n)for(s=n.a.length,r=new Jb(s),h=(r.b-r.a)*r.c<0?(Op(),Mb):new Bp(r);h.Ob();)o=u(h.Pb(),19),cn(t,e,ix(Xm(n,o.a)))}function Zfn(t,e,n){var r,s,o,h;if(n)for(s=n.a.length,r=new J
\r\f]+`);try{rA=ut(ot(k6n,1),Me,2015,0,[new oM((i2t(),Mz("yyyy-MM-dd'T'HH:mm:ss'.'SSSZ",zM((bR(),bR(),sS))))),new oM(Mz("yyyy-MM-dd'T'HH:mm:ss'.'SSS",zM(sS))),new oM(Mz("yyyy-MM-dd'T'HH:mm:ss",zM(sS))),new oM(Mz("yyyy-MM-dd'T'HH:mm",zM(sS))),new oM(Mz("yyyy-MM-dd",zM(sS)))])}catch(t){if(t=rs(t),!_t(t,78))throw nt(t)}}function iyn(t){var e,n,r,s;if(r=Nat((!t.c&&(t.c=jD(t.f)),t.c),0),t.e==0||t.a==0&&t.f!=-1&&t.e<0)return r;if(e=Hmt(t)<0?1:0,n=t.e,s=(r.length+1+b.Math.abs(Cs(t.e)),new Lm),e==1&&(s.a+="-"),t.e>0)if(n-=r.length-e,n>=0){for(s.a+="0.";n>N2.length;n-=N2.length)ZKt(s,N2);NWt(s,N2,Cs(n)),Yr(s,r.substr(e))}else n=e-n,Yr(s,Bl(r,e,Cs(n))),s.a+=".",Yr(s,OM(r,Cs(n)));else{for(Yr(s,r.substr(e));n<-N2.length;n+=N2.length)ZKt(s,N2);NWt(s,N2,Cs(-n))}return s.a}function s6t(t,e,n,r){var s,o,h,d,w,k,_,M,B;return w=fa(new Re(n.a,n.b),t),k=w.a*e.b-w.b*e.a,_=e.a*r.b-e.b*r.a,M=(w.a*r.b-w.b*r.a)/_,B=k/_,_==0?k==0?(s=Fi(new Re(n.a,n.b),ld(new Re(r.a,r.b),.5)),o=Gp(t,s),h=Gp(Fi(new Re(t.a,t.b),e),s),d=b.Math.sqrt(r.a*r.a+r.b*r.b)*.5,o<h&&o<=d?new Re(t.a,t.b):h<=d?Fi(new Re(t.a,t.b),e):null):null:M>=0&&M<=1&&B>=0&&B<=1?Fi(new Re(t.a,t.b),ld(new Re(e.a,e.b),M)):null}function syn(t,e,n){var r,s,o,h,d;if(r=u(K(t,(xe(),Glt)),21),n.a>e.a&&(r.Hc((cy(),qO))?t.c.a+=(n.a-e.a)/2:r.Hc(HO)&&(t.c.a+=n.a-e.a)),n.b>e.b&&(r.Hc((cy(),GO))?t.c.b+=(n.b-e.b)/2:r.Hc(VO)&&(t.c.b+=n.b-e.b)),u(K(t,(ae(),Wc)),21).Hc((go(),yh))&&(n.a>e.a||n.b>e.b))for(d=new S(t.a);d.a<d.c.c.length;)h=u(Q(d),10),h.k==(Gn(),Is)&&(s=u(K(h,gc),61),s==(be(),Hn)?h.n.a+=n.a-e.a:s==yr&&(h.n.b+=n.b-e.b));o=t.d,t.f.a=n.a-o.b-o.c,t.f.b=n.b-o.d-o.a}function ayn(t,e,n){var r,s,o,h,d;if(r=u(K(t,(xe(),Glt)),21),n.a>e.a&&(r.Hc((cy(),qO))?t.c.a+=(n.a-e.a)/2:r.Hc(HO)&&(t.c.a+=n.a-e.a)),n.b>e.b&&(r.Hc((cy(),GO))?t.c.b+=(n.b-e.b)/2:r.Hc(VO)&&(t.c.b+=n.b-e.b)),u(K(t,(ae(),Wc)),21).Hc((go(),yh))&&(n.a>e.a||n.b>e.b))for(h=new S(t.a);h.a<h.c.c.length;)o=u(Q(h),10),o.k==(Gn(),Is)&&(s=u(K(o,gc),61),s==(be(),Hn)?o.n.a+=n.a-e.a:s==yr&&(o.n.b+=n.b-e.b));d=t.d,t.f.a=n.a-d.b-d.c,t.f.b=n.b-d.d-d.a}function oyn(t){var e,n,r,s,o,h,d,w,k,_,M,B;for(e=joe(t),_=(d=new Tm(e).a.vc().Kc(),new rM(d));_.a.Ob();){for(k=(s=u(_.a.Pb(),42),u(s.cd(),10)),M=0,B=0,M=k.d.d,B=k.o.b+k.d.a,t.d[k.p]=0,n=k;(o=t.a[n.p])!=k;)r=mhn(n,o),w=0,t.c==(gd(),Zg)?w=r.d.n.b+r.d.a.b-r.c.n.b-r.c.a.b:w=r.c.n.b+r.c.a.b-r.d.n.b-r.d.a.b,h=Zt(t.d[n.p])+w,t.d[o.p]=h,M=b.Math.max(M,o.d.d-h),B=b.Math.max(B,h+o.o.b+o.d.a),n=o;n=k;do t.d[n.p]=Zt(t.d[n.p])+M,n=t.a[n.p];while(n!=k);t.b[k.p]=M+B}}function wat(t){var e,n,r,s,o,h,d,w,k,_,M,B;for(t.b=!1,M=bs,w=Ns,B=bs,k=Ns,r=t.e.a.ec().Kc();r.Ob();)for(n=u(r.Pb(),266),s=n.a,M=b.Math.min(M,s.c),w=b.Math.max(w,s.c+s.b),B=b.Math.min(B,s.d),k=b.Math.max(k,s.d+s.a),h=new S(n.c);h.a<h.c.c.length;)o=u(Q(h),395),e=o.a,e.a?(_=s.d+o.b.b,d=_+o.c,B=b.Math.min(B,_),k=b.Math.max(k,d)):(_=s.c+o.b.a,d=_+o.c,M=b.Math.min(M,_),w=b.Math.max(w,d));t.a=new Re(w-M,k-B),t.c=new Re(M+t.d.a,B+t.d.b)}function cyn(t,e,n){var r,s,o,h,d,w,k,_,M;for(M=new le,_=new qwt(0,n),o=0,Y$(_,new Eit(0,0,_,n)),s=0,k=new nr(t);k.e!=k.i.gc();)w=u(dr(k),33),r=u(Pe(_.a,_.a.c.length-1),187),d=s+w.g+(u(Pe(_.a,0),187).b.c.length==0?0:n),d>e&&(s=0,o+=_.b+n,M.c[M.c.length]=_,_=new qwt(o,n),r=new Eit(0,_.f,_,n),Y$(_,r),s=0),r.b.c.length==0||w.f>=r.o&&w.f<=r.f||r.a*.5<=w.f&&r.a*1.5>=w.f?e3t(r,w):(h=new Eit(r.s+r.r+n,_.f,_,n),Y$(_,h),e3t(h,w)),s=w.i+w.g;return M.c[M.c.length]=_,M}function E4(t){var e,n,r,s,o,h,d,w;if(!t.a){if(t.o=null,w=new Azt(t),e=new xp,n=aA,d=n.a.zc(t,n),d==null){for(h=new nr(Po(t));h.e!=h.i.gc();)o=u(dr(h),26),gs(w,E4(o));n.a.Bc(t)!=null,n.a.gc()==0}for(s=(!t.s&&(t.s=new he(Nu,t,21,17)),new nr(t.s));s.e!=s.i.gc();)r=u(dr(s),170),_t(r,322)&&Or(e,u(r,34));ey(e),t.k=new IKt(t,(u(At(Kt((zp(),An).o),7),18),e.i),e.g),gs(w,t.k),ey(w),t.a=new H3((u(At(Kt(An.o),4),18),w.i),w.g),hl(t).b&=-2}return t.a}function uyn(t,e,n,r,s,o,h){var d,w,k,_,M,B;return M=!1,w=Ace(n.q,e.f+e.b-n.q.f),B=s-(n.q.e+w-h),B<r.g||(k=o==t.c.length-1&&B>=(Sn(o,t.c.length),u(t.c[o],200)).e,_=(d=EC(r,B,!1),d.a),_>e.b&&!k)?!1:((k||_<=e.b)&&(k&&_>e.b?(n.d=_,dD(n,Iae(n,_))):(Qse(n.
\r\r `),Ao(f5,lut,r),Ao(ME,lut,by(r)),r=new jl(4),WD(r,J0e),Ao(f5,iS,r),Ao(ME,iS,by(r)),r=new jl(4),WD(r,J0e),Ao(f5,iS,r),Ao(ME,iS,by(r)),r=new jl(4),WD(r,tge),vy(r,u(jc(f5,iS),117)),Ao(f5,uut,r),Ao(ME,uut,by(r)),r=new jl(4),WD(r,"-.0:AZ__az··ÀÖØöøıĴľŁňŊžƀǃǍǰǴǵǺȗɐʨʻˁːˑ̀͠͡ͅΆΊΌΌΎΡΣώϐϖϚϚϜϜϞϞϠϠϢϳЁЌЎяёќўҁ҃҆ҐӄӇӈӋӌӐӫӮӵӸӹԱՖՙՙաֆֹֻֽֿֿׁׂ֑֣֡ׄׄאתװײءغـْ٠٩ٰڷںھۀێېۓە۪ۭۨ۰۹ँःअह़्॑॔क़ॣ०९ঁঃঅঌএঐওনপরললশহ়়াৄেৈো্ৗৗড়ঢ়য়ৣ০ৱਂਂਅਊਏਐਓਨਪਰਲਲ਼ਵਸ਼ਸਹ਼਼ਾੂੇੈੋ੍ਖ਼ੜਫ਼ਫ਼੦ੴઁઃઅઋઍઍએઑઓનપરલળવહ઼ૅેૉો્ૠૠ૦૯ଁଃଅଌଏଐଓନପରଲଳଶହ଼ୃେୈୋ୍ୖୗଡ଼ଢ଼ୟୡ୦୯ஂஃஅஊஎஐஒகஙசஜஜஞடணதநபமவஷஹாூெைொ்ௗௗ௧௯ఁఃఅఌఎఐఒనపళవహాౄెైొ్ౕౖౠౡ౦౯ಂಃಅಌಎಐಒನಪಳವಹಾೄೆೈೊ್ೕೖೞೞೠೡ೦೯ംഃഅഌഎഐഒനപഹാൃെൈൊ്ൗൗൠൡ൦൯กฮะฺเ๎๐๙ກຂຄຄງຈຊຊຍຍດທນຟມຣລລວວສຫອຮະູົຽເໄໆໆ່ໍ໐໙༘༙༠༩༹༹༵༵༷༷༾ཇཉཀྵ྄ཱ྆ྋྐྕྗྗྙྭྱྷྐྵྐྵႠჅაჶᄀᄀᄂᄃᄅᄇᄉᄉᄋᄌᄎᄒᄼᄼᄾᄾᅀᅀᅌᅌᅎᅎᅐᅐᅔᅕᅙᅙᅟᅡᅣᅣᅥᅥᅧᅧᅩᅩᅭᅮᅲᅳᅵᅵᆞᆞᆨᆨᆫᆫᆮᆯᆷᆸᆺᆺᆼᇂᇫᇫᇰᇰᇹᇹḀẛẠỹἀἕἘἝἠὅὈὍὐὗὙὙὛὛὝὝὟώᾀᾴᾶᾼιιῂῄῆῌῐΐῖΊῠῬῲῴῶῼ⃐⃜⃡⃡ΩΩKÅ℮℮ↀↂ々々〇〇〡〯〱〵ぁゔ゙゚ゝゞァヺーヾㄅㄬ一龥가힣"),Ao(f5,hut,r),Ao(ME,hut,by(r)),r=new jl(4),WD(r,tge),qc(r,95,95),qc(r,58,58),Ao(f5,fut,r),Ao(ME,fut,by(r))),n=u(jc(e?f5:ME,t),136),n}function V5n(t){Nr(t.a,Zr,ut(ot(Le,1),re,2,6,[fi,"anySimpleType"])),Nr(t.b,Zr,ut(ot(Le,1),re,2,6,[fi,"anyType",Rh,ZI])),Nr(u(At(Kt(t.b),0),34),Zr,ut(ot(Le,1),re,2,6,[Rh,iut,fi,":mixed"])),Nr(u(At(Kt(t.b),1),34),Zr,ut(ot(Le,1),re,2,6,[Rh,iut,N8t,aut,fi,":1",j0e,"lax"])),Nr(u(At(Kt(t.b),2),34),Zr,ut(ot(Le,1),re,2,6,[Rh,P0e,N8t,aut,fi,":2",j0e,"lax"])),Nr(t.c,Zr,ut(ot(Le,1),re,2,6,[fi,"anyURI",$h,i1])),Nr(t.d,Zr,ut(ot(Le,1),re,2,6,[fi,"base64Binary",$h,i1])),Nr(t.e,Zr,ut(ot(Le,1),re,2,6,[fi,cx,$h,i1])),Nr(t.f,Zr,ut(ot(Le,1),re,2,6,[fi,"boolean:Object",Na,cx])),Nr(t.g,Zr,ut(ot(Le,1),re,2,6,[fi,QC])),Nr(t.i,Zr,ut(ot(Le,1),re,2,6,[fi,"byte:Object",Na,QC])),Nr(t.j,Zr,ut(ot(Le,1),re,2,6,[fi,"date",$h,i1])),Nr(t.k,Zr,ut(ot(Le,1),re,2,6,[fi,"dateTime",$h,i1])),Nr(t.n,Zr,ut(ot(Le,1),re,2,6,[fi,"decimal",$h,i1])),Nr(t.o,Zr,ut(ot(Le,1),re,2,6,[fi,ZC,$h,i1])),Nr(t.p,Zr,ut(ot(Le,1),re,2,6,[fi,"double:Object",Na,ZC])),Nr(t.q,Zr,ut(ot(Le,1),re,2,6,[fi,"duration",$h,i1])),Nr(t.s,Zr,ut(ot(Le,1),re,2,6,[fi,"ENTITIES",Na,$0e,P8t,"1"])),Nr(t.r,Zr,ut(ot(Le,1),re,2,6,[fi,$0e,sut,F8t])),Nr(t.t,Zr,ut(ot(Le,1),re,2,6,[fi,F8t,Na,PH])),Nr(t.u,Zr,ut(ot(Le,1),re,2,6,[fi,JC,$h,i1])),Nr(t.v,Zr,ut(ot(Le,1),re,2,6,[fi,"float:Object",Na,JC])),Nr(t.w,Zr,ut(ot(Le,1),re,2,6,[fi,"gDay",$h,i1])),Nr(t.B,Zr,ut(ot(Le,1),re,2,6,[fi,"gMonth",$h,i1])),Nr(t.A,Zr,ut(ot(Le,1),re,2,6,[fi,"gMonthDay",$h,i1])),Nr(t.C,Zr,ut(ot(Le,1),re,2,6,[fi,"gYear",$h,i1])),Nr(t.D,Zr,ut(ot(Le,1),re,2,6,[fi,"gYearMonth",$h,i1])),Nr(t.F,Zr,ut(ot(Le,1),re,2,6,[fi,"hexBinary",$h,i1])),Nr(t.G,Zr,ut(ot(Le,1),re,2,6,[fi,"ID",Na,PH])),Nr(t.H,Zr,ut(ot(Le,1),re,2,6,[fi,"IDREF",Na,PH])),Nr(t.J,Zr,ut(ot(Le,1),re,2,6,[fi,"IDREFS",Na,z0e,P8t,"1"])),Nr(t.I,Zr,ut(ot(Le,1),re,2,6,[fi,z0e,sut,"IDREF"])),Nr(t.K,Zr,ut(ot(Le,1),re,2,6,[fi,tS])),Nr(t.M,Zr,ut(ot(Le,1),re,2,6,[fi,B8t])),Nr(t.L,Zr,ut(ot(Le,1),re,2,6,[fi,"int:Object",Na,tS])),Nr(t.P,Zr,ut(ot(Le,1),re,2,6,[fi,"language",Na,out,cut,q0e])),Nr(t.Q,Zr,ut(ot(Le,1),re,2,6,[fi,eS])),Nr(t.R,Zr,ut(ot(Le,1),re,2,6,[fi,"long:Object",Na,eS])),Nr(t.S,Zr,ut(ot(Le,1),re,2,6,[fi,"Name",Na,out,cut,R8t])),Nr(t.T,Zr,ut(ot(Le,1),re,2,6,[fi,PH,Na,"Name
`,Kfe=`)]}"' \r
`,Yfe="The given string contains parts that cannot be parsed as numbers.",qI="org.eclipse.elk.core.math",Xfe={3:1,4:1,142:1,207:1,414:1},Qfe={3:1,4:1,116:1,207:1,414:1},Un="org.eclipse.elk.layered",Ug="org.eclipse.elk.alg.layered.graph.transform",Zfe="ElkGraphImporter",Jfe="ElkGraphImporter/lambda$0$Type",t1e="ElkGraphImporter/lambda$1$Type",e1e="ElkGraphImporter/lambda$2$Type",n1e="ElkGraphImporter/lambda$4$Type",r1e="Node margin calculation",$n="org.eclipse.elk.alg.layered.intermediate",i1e="ONE_SIDED_GREEDY_SWITCH",s1e="TWO_SIDED_GREEDY_SWITCH",jot="No implementation is available for the layout processor ",gxt="IntermediateProcessorStrategy",$ot="Node '",a1e="FIRST_SEPARATE",o1e="LAST_SEPARATE",c1e="Odd port side processing",Ps="org.eclipse.elk.alg.layered.intermediate.compaction",RC="org.eclipse.elk.alg.layered.intermediate.greedyswitch",s0="org.eclipse.elk.alg.layered.p3order.counting",HI={225:1},mx="org.eclipse.elk.alg.layered.intermediate.loops",Kl="org.eclipse.elk.alg.layered.intermediate.loops.ordering",ab="org.eclipse.elk.alg.layered.intermediate.loops.routing",jC="org.eclipse.elk.alg.layered.intermediate.preserveorder",Ed="org.eclipse.elk.alg.layered.intermediate.wrapping",Sc="org.eclipse.elk.alg.layered.options",zot="INTERACTIVE",u1e="DEPTH_FIRST",l1e="EDGE_LENGTH",h1e="SELF_LOOPS",f1e="firstTryWithInitialOrder",pxt="org.eclipse.elk.layered.directionCongruency",bxt="org.eclipse.elk.layered.feedbackEdges",Kq="org.eclipse.elk.layered.interactiveReferencePoint",vxt="org.eclipse.elk.layered.mergeEdges",wxt="org.eclipse.elk.layered.mergeHierarchyEdges",mxt="org.eclipse.elk.layered.allowNonFlowPortsToSwitchSides",yxt="org.eclipse.elk.layered.portSortingStrategy",xxt="org.eclipse.elk.layered.thoroughness",kxt="org.eclipse.elk.layered.unnecessaryBendpoints",Ext="org.eclipse.elk.layered.generatePositionAndLayerIds",qot="org.eclipse.elk.layered.cycleBreaking.strategy",VI="org.eclipse.elk.layered.layering.strategy",Txt="org.eclipse.elk.layered.layering.layerConstraint",_xt="org.eclipse.elk.layered.layering.layerChoiceConstraint",Cxt="org.eclipse.elk.layered.layering.layerId",Hot="org.eclipse.elk.layered.layering.minWidth.upperBoundOnWidth",Vot="org.eclipse.elk.layered.layering.minWidth.upperLayerEstimationScalingFactor",Got="org.eclipse.elk.layered.layering.nodePromotion.strategy",Uot="org.eclipse.elk.layered.layering.nodePromotion.maxIterations",Wot="org.eclipse.elk.layered.layering.coffmanGraham.layerBound",$C="org.eclipse.elk.layered.crossingMinimization.strategy",Sxt="org.eclipse.elk.layered.crossingMinimization.forceNodeModelOrder",Kot="org.eclipse.elk.layered.crossingMinimization.hierarchicalSweepiness",Yot="org.eclipse.elk.layered.crossingMinimization.semiInteractive",Axt="org.eclipse.elk.layered.crossingMinimization.positionChoiceConstraint",Lxt="org.eclipse.elk.layered.crossingMinimization.positionId",Mxt="org.eclipse.elk.layered.crossingMinimization.greedySwitch.activationThreshold",Xot="org.eclipse.elk.layered.crossingMinimization.greedySwitch.type",Yq="org.eclipse.elk.layered.crossingMinimization.greedySwitchHierarchical.type",D4="org.eclipse.elk.layered.nodePlacement.strategy",Xq="org.eclipse.elk.layered.nodePlacement.favorStraightEdges",Qot="org.eclipse.elk.layered.nodePlacement.bk.edgeStraightening",Zot="org.eclipse.elk.layered.nodePlacement.bk.fixedAlignment",Jot="org.eclipse.elk.layered.nodePlacement.linearSegments.deflectionDampening",tct="org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility",ect="org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility.default",Dxt="org.eclipse.elk.layered.edgeRouting.selfLoopDistribution",Ixt="org.eclipse.elk.layered.edgeRouting.selfLoopOrdering",Qq="org.eclipse.elk.layered.edgeRouting.splines.mode",Zq="org.eclipse.elk.layered.edgeRouting.splines.sloppy.layerSpacingFactor",nct="org.eclipse.elk.layered.edgeRouting.polyline.slopedEdgeZoneWidth",Oxt="org.eclipse.elk.layered.spacing.baseValue",Nxt="org.eclipse.elk.layered.spacing.edgeNodeBetweenLayers",Pxt="org.eclipse.elk.layered.spacing.edgeEdgeBetweenLayers",Fxt="org.eclipse.elk.layered.sp
`,e=de(0),h=0;h<this.p;h++){for(r+=""+e.a,e=de(OWt(e.a)),s=0;s<this.o;s++)n=cit(this,s,h),_c(n,0)==0?r+="_":_c(n,1)==0?r+="X":r+="0";r+=`
`}return Bl(r,0,r.length-1)},l.o=0,l.p=0,N(jq,"TwoBitGrid",1298),D(321,1298,{321:1},p3t),l.j=0,l.k=0,N(jq,"PlanarGrid",321),D(167,321,{321:1,167:1}),l.g=0,l.i=0,N(jq,"Polyomino",167);var o6n=as(BI,Ife);D(134,1,Y6t,x3),l.Ye=function(e,n){return FD(this,e,n)},l.Ve=function(){return eYt(this)},l.We=function(e){return K(this,e)},l.Xe=function(e){return ea(this,e)},N(BI,"MapPropertyHolder",134),D(1299,134,Y6t,Nce),N(jq,"Polyominoes",1299);var Spe=!1,cS,Z7t;D(1766,1,Kn,zb),l.td=function(e){Ile(u(e,221))},N(gx,"DepthFirstCompaction/0methodref$compactTree$Type",1766),D(810,1,Kn,ri),l.td=function(e){Ven(this.a,u(e,221))},N(gx,"DepthFirstCompaction/lambda$1$Type",810),D(1767,1,Kn,gKt),l.td=function(e){ghn(this.a,this.b,this.c,u(e,221))},N(gx,"DepthFirstCompaction/lambda$2$Type",1767);var uS,J7t;D(65,1,{65:1},xQt),N(gx,"Node",65),D(1250,1,{},kUt),N(gx,"ScanlineOverlapCheck",1250),D(1251,1,{679:1},zXt),l.Ke=function(e){SQe(this,u(e,440))},N(gx,"ScanlineOverlapCheck/OverlapsScanlineHandler",1251),D(1252,1,qi,os),l.ue=function(e,n){return Xun(u(e,65),u(n,65))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(gx,"ScanlineOverlapCheck/OverlapsScanlineHandler/lambda$0$Type",1252),D(440,1,{440:1},xbt),l.a=!1,N(gx,"ScanlineOverlapCheck/Timestamp",440),D(1253,1,qi,As),l.ue=function(e,n){return C1n(u(e,440),u(n,440))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},N(gx,"ScanlineOverlapCheck/lambda$0$Type",1253),D(550,1,{},ma),N(Ofe,"SVGImage",550),D(324,1,{324:1},gvt),l.Ib=function(){return"("+this.a+Xa+this.b+Xa+this.c+")"},N(Ofe,"UniqueTriple",324),D(209,1,_2),N(A4,"AbstractLayoutProvider",209),D(1132,209,_2,vi),l.Ze=function(e,n){var r,s,o,h;switch(mr(n,Nfe,1),this.a=Zt(ve(ze(e,(iC(),sEt)))),s2(e,zut)&&(o=jr(ze(e,zut)),r=oat(j8(),o),r&&(s=u(frt(r.f),209),s.Ze(e,zc(n,1)))),h=new BZt(this.a),this.b=p4n(h,e),u(ze(e,(Lit(),eEt)),481).g){case 0:Dpn(new Qc,this.b),Eo(e,eV,K(this.b,eV));break;default:qd()}E4n(h),Eo(e,rEt,this.b),or(n)},l.a=0,N(Pfe,"DisCoLayoutProvider",1132),D(1244,1,{},Qc),l.c=!1,l.e=0,l.f=0,N(Pfe,"DisCoPolyominoCompactor",1244),D(561,1,{561:1},aYt),l.b=!0,N(zq,"DCComponent",561),D(394,22,{3:1,35:1,22:1,394:1},jR),l.a=!1;var JH,hO,tV,fO,Ape=zr(zq,"DCDirection",394,Ur,Lin,bZe),Lpe;D(266,134,{3:1,266:1,94:1,134:1},Wst),N(zq,"DCElement",266),D(395,1,{395:1},j3t),l.c=0,N(zq,"DCExtension",395),D(755,134,Y6t,rHt),N(zq,"DCGraph",755),D(481,22,{3:1,35:1,22:1,481:1},oWt);var $ut,tEt=zr(Lot,X6t,481,Ur,snn,vZe),Mpe;D(854,1,Ph,OJ),l.Qe=function(e){an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Q6t),Ffe),"Connected Components Compaction Strategy"),"Strategy for packing different connected components in order to save space and enhance readability of a graph."),nEt),(Hg(),ms)),tEt),on((t1(),qn))))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,Z6t),Ffe),"Connected Components Layout Algorithm"),"A layout algorithm that is to be applied to each connected component before the components themselves are compacted. If unspecified, the positions of the components' nodes are not altered."),kE),Le),on(qn)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,J6t),"debug"),"DCGraph"),"Access to the DCGraph is intended for the debug view,"),G1),Qn),on(qn)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,txt),"debug"),"List of Polyominoes"),"Access to the polyominoes is intended for the debug view,"),G1),Qn),on(qn)))),yle((new LB,e))};var Dpe,eEt,nEt,Ipe,Ope;N(Lot,"DisCoMetaDataProvider",854),D(998,1,Ph,LB),l.Qe=function(e){yle(e)};var Npe,zut,Ppe,rEt,eV,qut,iEt,Fpe,Bpe,Rpe,jpe,sEt;N(Lot,"DisCoOptions",998),D(999,1,{},me),l.$e=function(){var e;return e=new vi,e},l._e=function(e){},N(Lot,"DisCoOptions/DiscoFactory",999),D(562,167,{321:1,167:1,562:1},vce),l.a=0,l.b=0,l.c=0,l.d=0,N("org.eclipse.elk.alg.disco.structures","DCPolyomino",562);var Hut,Vut,nV;D(1268,1,gi,bg),l.Mb=function(e){return Xbt(e)},N(L4,"ElkGraphComponentsProcessor/lambda$0$Type",1268),D(1269,1,{},Oe),l.Kb=function(e){return R6(),Zd(u(e,79))},N(L4,"ElkGraphComponentsProcessor/lambda$1$Type",1269),D(1270,1,gi,af),l.Mb=function(e){return btn(u(e,79))},N(L4,"ElkGraphCom
start=`,wc(e,this.i),e.a+=`
end=`,wc(e,this.a),e.a+=`
nodeStartEdge=`,wc(e,this.e),e.a+=`
startEndEdge=`,wc(e,this.j),e.a+=`
originalEdge=`,wc(e,this.f),e.a+=`
startInLayerDummy=`,wc(e,this.k),e.a+=`
startInLayerEdge=`,wc(e,this.n),e.a+=`
endInLayerDummy=`,wc(e,this.b),e.a+=`
endInLayerEdge=`,wc(e,this.c),e.a},N(Ed,"BreakingPointInserter/BPInfo",305),D(652,1,{652:1},Cp),l.a=!1,l.b=0,l.c=0,N(Ed,"BreakingPointInserter/Cut",652),D(1480,1,vs,YX),l.pf=function(e,n){Vbn(u(e,37),n)},N(Ed,"BreakingPointProcessor",1480),D(1481,1,gi,XX),l.Mb=function(e){return eee(u(e,10))},N(Ed,"BreakingPointProcessor/0methodref$isEnd$Type",1481),D(1482,1,gi,QX),l.Mb=function(e){return nee(u(e,10))},N(Ed,"BreakingPointProcessor/1methodref$isStart$Type",1482),D(1483,1,vs,ZX),l.pf=function(e,n){d2n(this,u(e,37),n)},N(Ed,"BreakingPointRemover",1483),D(1484,1,Kn,JX),l.td=function(e){u(e,128).k=!0},N(Ed,"BreakingPointRemover/lambda$0$Type",1484),D(797,1,{},u5t),l.b=0,l.e=0,l.f=0,l.j=0,N(Ed,"GraphStats",797),D(798,1,{},OF),l.Ce=function(e,n){return b.Math.max(Zt(ve(e)),Zt(ve(n)))},N(Ed,"GraphStats/0methodref$max$Type",798),D(799,1,{},NF),l.Ce=function(e,n){return b.Math.max(Zt(ve(e)),Zt(ve(n)))},N(Ed,"GraphStats/2methodref$max$Type",799),D(1660,1,{},tQ),l.Ce=function(e,n){return ZJe(ve(e),ve(n))},N(Ed,"GraphStats/lambda$1$Type",1660),D(1661,1,{},CT),l.Kb=function(e){return Vie(this.a,u(e,29))},N(Ed,"GraphStats/lambda$2$Type",1661),D(1662,1,{},rR),l.Kb=function(e){return _ce(this.a,u(e,29))},N(Ed,"GraphStats/lambda$6$Type",1662),D(800,1,{},PF),l.Vf=function(e,n){var r;return r=u(K(e,(xe(),d_t)),15),r||(pn(),pn(),uo)},l.Wf=function(){return!1},N(Ed,"ICutIndexCalculator/ManualCutIndexCalculator",800),D(802,1,{},FF),l.Vf=function(e,n){var r,s,o,h,d,w,k,_,M,B,q,G,W,Z,bt,Mt,St,jt,Qt;for(Qt=(n.n==null&&gse(n),n.n),k=(n.d==null&&gse(n),n.d),jt=Nt(ga,To,25,Qt.length,15,1),jt[0]=Qt[0],Mt=Qt[0],_=1;_<Qt.length;_++)jt[_]=jt[_-1]+Qt[_],Mt+=Qt[_];for(o=Mae(n)-1,d=u(K(e,(xe(),g_t)),19).a,s=Ns,r=new le,q=b.Math.max(0,o-d);q<=b.Math.min(n.f-1,o+d);q++){if(Z=Mt/(q+1),bt=0,M=1,h=new le,St=Ns,B=0,w=0,W=k[0],q==0)St=Mt,w=(n.g==null&&(n.g=one(n,new NF)),Zt(n.g));else{for(;M<n.f;)jt[M-1]-bt>=Z&&(ue(h,de(M)),St=b.Math.max(St,jt[M-1]-B),w+=W,bt+=jt[M-1]-bt,B=jt[M-1],W=k[M]),W=b.Math.max(W,k[M]),++M;w+=W}G=b.Math.min(1/St,1/n.b/w),G>s&&(s=G,r=h)}return r},l.Wf=function(){return!1},N(Ed,"MSDCutIndexHeuristic",802),D(1617,1,vs,eQ),l.pf=function(e,n){jmn(u(e,37),n)},N(Ed,"SingleEdgeGraphWrapper",1617),D(227,22,{3:1,35:1,22:1,227:1},YT);var H4,iE,sE,Oy,dS,V4,aE=zr(Sc,"CenterEdgeLabelPlacementStrategy",227,Ur,Xsn,AZe),a2e;D(422,22,{3:1,35:1,22:1,422:1},Sbt);var w9t,mlt,m9t=zr(Sc,"ConstraintCalculationStrategy",422,Ur,$nn,LZe),o2e;D(314,22,{3:1,35:1,22:1,314:1,246:1,234:1},Tet),l.Kf=function(){return voe(this)},l.Xf=function(){return voe(this)};var wO,Cx,y9t,x9t=zr(Sc,"CrossingMinimizationStrategy",314,Ur,Irn,MZe),c2e;D(337,22,{3:1,35:1,22:1,337:1},_et);var k9t,ylt,OV,E9t=zr(Sc,"CuttingStrategy",337,Ur,Orn,OZe),u2e;D(335,22,{3:1,35:1,22:1,335:1,246:1,234:1},EM),l.Kf=function(){return rce(this)},l.Xf=function(){return rce(this)};var T9t,xlt,gS,klt,pS,_9t=zr(Sc,"CycleBreakingStrategy",335,Ur,ksn,NZe),l2e;D(419,22,{3:1,35:1,22:1,419:1},Abt);var NV,C9t,S9t=zr(Sc,"DirectionCongruency",419,Ur,jnn,PZe),h2e;D(450,22,{3:1,35:1,22:1,450:1},Cet);var oE,Elt,G4,f2e=zr(Sc,"EdgeConstraint",450,Ur,Nrn,FZe),d2e;D(276,22,{3:1,35:1,22:1,276:1},XT);var Tlt,_lt,Clt,Slt,PV,Alt,A9t=zr(Sc,"EdgeLabelSideSelection",276,Ur,tan,BZe),g2e;D(479,22,{3:1,35:1,22:1,479:1},Lbt);var FV,L9t,M9t=zr(Sc,"EdgeStraighteningStrategy",479,Ur,Rnn,RZe),p2e;D(274,22,{3:1,35:1,22:1,274:1},QT);var Llt,D9t,I9t,BV,O9t,N9t,P9t=zr(Sc,"FixedAlignment",274,Ur,Zsn,jZe),b2e;D(275,22,{3:1,35:1,22:1,275:1},ZT);var F9t,B9t,R9t,j9t,bS,$9t,z9t=zr(Sc,"GraphCompactionStrategy",275,Ur,Qsn,$Ze),v2e;D(256,22,{3:1,35:1,22:1,256:1},Im);var cE,RV,uE,yh,vS,jV,lE,U4,$V,wS,Mlt=zr(Sc,"GraphProperties",256,Ur,jon,zZe),w2e;D(292,22,{3:1,35:1,22:1,292:1},Aet);var mO,Dlt,Ilt,Olt=zr(Sc,"GreedySwitchType",292,Ur,Brn,qZe),m2e;D(303,22,{3:1,35:1,22:1,303:1},Let);var Sx,yO,W4,y2e=zr(Sc,"InLayerConstraint",303,Ur,Frn,HZe),x2e;D(420,22,{3:1,35:1,22:1,420:1},Mbt);var Nlt,q9t,H9t=zr(Sc,"InteractiveReferencePoint",420,Ur,znn,VZe),k2e,V9t,Ax,Lw,zV,G9t,U9t,qV,W9t,xO,HV,mS,Lx,Ny,Plt,VV,gc,K9t,Mw,Wc,Flt,Blt,kO,P2,Dw,Mx,Y9t,Dx,EO,Py,a1,qh,Rlt,
`;for(n=si(this.a,0);n.b!=n.d.c;)e=u(ii(n),188),o+=(e.b&&e.c?b$(e.b)+"->"+b$(e.c):"e_"+Ji(e))+`
`;return o};var p6n=N(HC,"TGraph",135);D(633,502,{3:1,502:1,633:1,94:1,134:1}),N(HC,"TShape",633),D(86,633,{3:1,502:1,86:1,633:1,94:1,134:1},kit),l.Ib=function(){return b$(this)};var b6n=N(HC,"TNode",86);D(255,1,t0,Sp),l.Jc=function(e){_a(this,e)},l.Kc=function(){var e;return e=si(this.a.d,0),new p6(e)},N(HC,"TNode/2",255),D(358,1,da,p6),l.Nb=function(e){Ea(this,e)},l.Pb=function(){return u(ii(this.a),188).c},l.Ob=function(){return kR(this.a)},l.Qb=function(){H$(this.a)},N(HC,"TNode/2/1",358),D(1840,1,vs,qWt),l.pf=function(e,n){Smn(this,u(e,135),n)},N(yx,"FanProcessor",1840),D(327,22,{3:1,35:1,22:1,327:1,234:1},t_),l.Kf=function(){switch(this.g){case 0:return new Aqt;case 1:return new qWt;case 2:return new X5;case 3:return new KQ;case 4:return new XQ;case 5:return new OL;default:throw nt(new Pn(jot+(this.f!=null?this.f:""+this.g)))}};var Eht,Tht,_ht,Cht,Sht,wG,Kme=zr(yx,gxt,327,Ur,ean,fJe),Yme;D(1843,1,vs,KQ),l.pf=function(e,n){ubn(this,u(e,135),n)},l.a=0,N(yx,"LevelHeightProcessor",1843),D(1844,1,t0,YQ),l.Jc=function(e){_a(this,e)},l.Kc=function(){return pn(),e8(),X7},N(yx,"LevelHeightProcessor/1",1844),D(1841,1,vs,X5),l.pf=function(e,n){bgn(this,u(e,135),n)},l.a=0,N(yx,"NeighborsProcessor",1841),D(1842,1,t0,$F),l.Jc=function(e){_a(this,e)},l.Kc=function(){return pn(),e8(),X7},N(yx,"NeighborsProcessor/1",1842),D(1845,1,vs,XQ),l.pf=function(e,n){cbn(this,u(e,135),n)},l.a=0,N(yx,"NodePositionProcessor",1845),D(1839,1,vs,Aqt),l.pf=function(e,n){Nyn(this,u(e,135))},N(yx,"RootProcessor",1839),D(1846,1,vs,OL),l.pf=function(e,n){Hun(u(e,135))},N(yx,"Untreeifyer",1846);var FO,BS,Xme,Aht,mG,RS,Lht,yG,xG,yE,jS,kG,Jg,X_t,Qme,Mht,Wy,Dht,Q_t;D(851,1,Ph,M3),l.Qe=function(e){an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Okt),""),"Weighting of Nodes"),"Which weighting to use when computing a node order."),J_t),(Hg(),ms)),aCt),on((t1(),qn))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,Nkt),""),"Search Order"),"Which search order to use when computing a spanning tree."),Z_t),ms),cCt),on(qn)))),Xle((new KL,e))};var Zme,Z_t,Jme,J_t;N(fH,"MrTreeMetaDataProvider",851),D(994,1,Ph,KL),l.Qe=function(e){Xle(e)};var tye,tCt,eye,nye,rye,iye,eCt,sye,nCt,aye,EG,rCt,oye,iCt,cye;N(fH,"MrTreeOptions",994),D(995,1,{},QQ),l.$e=function(){var e;return e=new HWt,e},l._e=function(e){},N(fH,"MrTreeOptions/MrtreeFactory",995),D(480,22,{3:1,35:1,22:1,480:1},Rbt);var Iht,sCt,aCt=zr(fH,"OrderWeighting",480,Ur,Ynn,dJe),uye;D(425,22,{3:1,35:1,22:1,425:1},jbt);var oCt,Oht,cCt=zr(fH,"TreeifyingOrder",425,Ur,Knn,pJe),lye;D(1459,1,Vc,WL),l.Yf=function(e){return u(e,135),hye},l.pf=function(e,n){qon(this,u(e,135),n)};var hye;N("org.eclipse.elk.alg.mrtree.p1treeify","DFSTreeifyer",1459),D(1460,1,Vc,JJ),l.Yf=function(e){return u(e,135),fye},l.pf=function(e,n){Cgn(this,u(e,135),n)};var fye;N("org.eclipse.elk.alg.mrtree.p2order","NodeOrderer",1460),D(1461,1,Vc,ZJ),l.Yf=function(e){return u(e,135),dye},l.pf=function(e,n){Hvn(this,u(e,135),n)},l.a=0;var dye;N("org.eclipse.elk.alg.mrtree.p3place","NodePlacer",1461),D(1462,1,Vc,NB),l.Yf=function(e){return u(e,135),gye},l.pf=function(e,n){p1n(u(e,135),n)};var gye;N("org.eclipse.elk.alg.mrtree.p4route","EdgeRouter",1462);var $S;D(495,22,{3:1,35:1,22:1,495:1,246:1,234:1},$bt),l.Kf=function(){return nie(this)},l.Xf=function(){return nie(this)};var TG,xE,uCt=zr(Pkt,"RadialLayoutPhases",495,Ur,Xnn,gJe),pye;D(1131,209,_2,kHt),l.Ze=function(e,n){var r,s,o,h,d,w;if(r=soe(this,e),mr(n,"Radial layout",r.c.length),Be(Fe(ze(e,(ay(),mCt))))||u$((s=new rr((Dm(),new Sm(e))),s)),w=Idn(e),Eo(e,(b_(),$S),w),!w)throw nt(new Pn("The given graph is not a tree!"));for(o=Zt(ve(ze(e,SG))),o==0&&(o=moe(e)),Eo(e,SG,o),d=new S(soe(this,e));d.a<d.c.c.length;)h=u(Q(d),51),h.pf(e,zc(n,1));or(n)},N(Pkt,"RadialLayoutProvider",1131),D(549,1,qi,ER),l.ue=function(e,n){return iwn(this.a,this.b,u(e,33),u(n,33))},l.Fb=function(e){return this===e},l.ve=function(){return new gt(this)},l.a=0,l.b=0,N(Pkt,"RadialUtil/lambda$0$Type",549),D(1375,1,vs,JQ),l.pf=function(e,n){E3n(u(e,33),n)},N(D1e,"CalculateGraphSize",1375),D(442,22,{3:1,35:1,22:1,442:1,234:1},Ret),l.Kf=functi
`),o.length!=2)throw nt(new Pn("Exactly two numbers are expected, "+o.length+" were found."));try{this.a=ly(uy(o[0])),this.b=ly(uy(o[1]))}catch(h){throw h=rs(h),_t(h,127)?(r=h,nt(new Pn(Yfe+r))):nt(h)}},l.Ib=function(){return"("+this.a+","+this.b+")"},l.a=0,l.b=0;var na=N(qI,"KVector",8);D(74,68,{3:1,4:1,20:1,28:1,52:1,14:1,68:1,15:1,74:1,414:1},ju,yR,hWt),l.Pc=function(){return eun(this)},l.Jf=function(e){var n,r,s,o,h,d;s=py(e,`,|;|\\(|\\)|\\[|\\]|\\{|\\}| | |
`),Mh(this);try{for(r=0,h=0,o=0,d=0;r<s.length;)s[r]!=null&&uy(s[r]).length>0&&(h%2==0?o=ly(s[r]):d=ly(s[r]),h>0&&h%2!=0&&ai(this,new Re(o,d)),++h),++r}catch(w){throw w=rs(w),_t(w,127)?(n=w,nt(new Pn("The given string does not match the expected format for vectors."+n))):nt(w)}},l.Ib=function(){var e,n,r;for(e=new Fl("("),n=si(this,0);n.b!=n.d.c;)r=u(ii(n),8),Yr(e,r.a+","+r.b),n.b!=n.d.c&&(e.a+="; ");return(e.a+=")",e).a};var wSt=N(qI,"KVectorChain",74);D(248,22,{3:1,35:1,22:1,248:1},e_);var tft,NG,PG,$O,zO,FG,mSt=zr(Bh,"Alignment",248,Ur,Ysn,IJe),N3e;D(979,1,Ph,ntt),l.Qe=function(e){Gue(e)};var ySt,eft,P3e,xSt,kSt,F3e,ESt,B3e,R3e,TSt,_St,j3e;N(Bh,"BoxLayouterOptions",979),D(980,1,{},OZ),l.$e=function(){var e;return e=new jZ,e},l._e=function(e){},N(Bh,"BoxLayouterOptions/BoxFactory",980),D(291,22,{3:1,35:1,22:1,291:1},n_);var qO,nft,HO,VO,GO,rft,ift=zr(Bh,"ContentAlignment",291,Ur,Ksn,OJe),$3e;D(684,1,Ph,kp),l.Qe=function(e){an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,V1e),""),"Layout Algorithm"),"Select a specific layout algorithm."),(Hg(),kE)),Le),on((t1(),qn))))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,G1e),""),"Resolved Layout Algorithm"),"Meta data associated with the selected algorithm."),G1),m6n),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,hkt),""),"Alignment"),"Alignment of the selected node relative to other nodes; the exact meaning depends on the used algorithm."),CSt),ms),mSt),on(ua)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,px),""),"Aspect Ratio"),"The desired aspect ratio of the drawing, that is the quotient of width by height."),$o),wa),on(qn)))),an(e,new Xe(rn(nn(sn(Ze(en(Je(tn(new Ue,s8t),""),"Bend Points"),"A fixed list of bend points for the edge. This is used by the 'Fixed Layout' algorithm to specify a pre-defined routing for an edge. The vector chain must include the source point, any bend points, and the target point, so it must have at least two points."),G1),wSt),on(Id)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,cH),""),"Content Alignment"),"Specifies how the content of a node are aligned. Each node can individually control the alignment of its contents. I.e. if a node should be aligned top left in its parent node, the parent node should specify that option."),ASt),Rx),ift),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,KI),""),"Debug Mode"),"Whether additional debug information shall be generated."),(Fn(),!1)),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,gkt),""),K6t),"Overall direction of edges: horizontal (right / left) or vertical (down / up)."),LSt),ms),WS),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,UI),""),"Edge Routing"),"What kind of edge routing style should be applied for the content of a parent node. Algorithms may also set this option to single edges in order to mark them as splines. The bend point list of edges with this option set to SPLINES must be interpreted as control points for a piecewise cubic spline."),ISt),ms),vft),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,gH),""),"Expand Nodes"),"If active, nodes are expanded to fill the area of their parent."),!1),Pa),Ws),on(qn)))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,oH),""),"Hierarchy Handling"),"Determines whether separate layout runs are triggered for different compound nodes in a hierarchical graph. Setting a node's hierarchy handling to `INCLUDE_CHILDREN` will lay out that node and all of its descendants in a single layout run, until a descendant is encountered which has its hierarchy handling set to `SEPARATE_CHILDREN`. In general, `SEPARATE_CHILDREN` will ensure that a new layout run is triggered for a node with that setting. Including multiple levels of hierarchy in a single layout run may allow cross-hierarchical edges to be laid out properly. If the root node is set to `INHERIT` (or not set at all), the default behavior is `SEPARATE_CHILDREN`."),FSt),ms),xAt),Ki(qn,ut(ot(ep,1),oe,175,0,[ua]))))),an(e,new Xe(rn(nn(sn(yn(Ze(en(Je(tn(new Ue,ww),""),"Padding"),"The padding to be left to a parent element's border when placing child elements. This can also serve as an output o
Consider installing the package or pass your own 'workerFactory' to ELK's constructor.
... Falling back to non-web worker version.`);if(!R.workerFactory){var rt=f("./elk-worker.min.js"),J=rt.Worker;R.workerFactory=function(it){return new J(it)}}return b(this,(F.__proto__||Object.getPrototypeOf(F)).call(this,R))}return F}(C);Object.defineProperty(p.exports,"__esModule",{value:!0}),p.exports=A,A.default=A},{"./elk-api.js":1,"./elk-worker.min.js":2,"web-worker":4}],4:[function(f,p,v){p.exports=Worker},{}]},{},[3])(3)})})(mjt);var cUe=mjt.exports;const uUe=PE(cUe),yjt=new uUe;let sv={};const lUe={};let B5={};const hUe=async function(i,a,f,p,v,m,b){const C=f.select(`[id="${a}"]`).insert("g").attr("class","nodes"),A=Object.keys(i);return await Promise.all(A.map(async function(P){const F=i[P];let j="default";F.classes.length>0&&(j=F.classes.join(" ")),j=j+" flowchart-label";const R=em(F.styles);let H=F.text!==void 0?F.text:F.id;const Y={width:0,height:0},rt=[{id:F.id+"-west",layoutOptions:{"port.side":"WEST"}},{id:F.id+"-east",layoutOptions:{"port.side":"EAST"}},{id:F.id+"-south",layoutOptions:{"port.side":"SOUTH"}},{id:F.id+"-north",layoutOptions:{"port.side":"NORTH"}}];let J=0,it="",ft={};switch(F.type){case"round":J=5,it="rect";break;case"square":it="rect";break;case"diamond":it="question",ft={portConstraints:"FIXED_SIDE"};break;case"hexagon":it="hexagon";break;case"odd":it="rect_left_inv_arrow";break;case"lean_right":it="lean_right";break;case"lean_left":it="lean_left";break;case"trapezoid":it="trapezoid";break;case"inv_trapezoid":it="inv_trapezoid";break;case"odd_right":it="rect_left_inv_arrow";break;case"circle":it="circle";break;case"ellipse":it="ellipse";break;case"stadium":it="stadium";break;case"subroutine":it="subroutine";break;case"cylinder":it="cylinder";break;case"group":it="rect";break;case"doublecircle":it="doublecircle";break;default:it="rect"}const Tt={labelStyle:R.labelStyle,shape:it,labelText:H,labelType:F.labelType,rx:J,ry:J,class:j,style:R.style,id:F.id,link:F.link,linkTarget:F.linkTarget,tooltip:v.db.getTooltip(F.id)||"",domId:v.db.lookUpDomId(F.id),haveCallback:F.haveCallback,width:F.type==="group"?500:void 0,dir:F.dir,type:F.type,props:F.props,padding:De().flowchart.padding};let kt,mt;if(Tt.type!=="group")mt=await _Bt(C,Tt,F.dir),kt=mt.node().getBBox();else{p.createElementNS("http://www.w3.org/2000/svg","text");const{shapeSvg:yt,bbox:st}=await Od(C,Tt,void 0,!0);Y.width=st.width,Y.wrappingWidth=De().flowchart.wrappingWidth,Y.height=st.height,Y.labelNode=yt.node(),Tt.labelData=Y}const ct={id:F.id,ports:F.type==="diamond"?rt:[],layoutOptions:ft,labelText:H,labelData:Y,domId:v.db.lookUpDomId(F.id),width:kt==null?void 0:kt.width,height:kt==null?void 0:kt.height,type:F.type,el:mt,parent:m.parentById[F.id]};B5[Tt.id]=ct})),b},xjt=(i,a,f)=>{const p={TB:{in:{north:"north"},out:{south:"west",west:"east",east:"south"}},LR:{in:{west:"west"},out:{east:"south",south:"north",north:"east"}},RL:{in:{east:"east"},out:{west:"north",north:"south",south:"west"}},BT:{in:{south:"south"},out:{north:"east",east:"west",west:"north"}}};return p.TD=p.TB,Wt.info("abc88",f,a,i),p[f][a][i]},kjt=(i,a,f)=>{if(Wt.info("getNextPort abc88",{node:i,edgeDirection:a,graphDirection:f}),!sv[i])switch(f){case"TB":case"TD":sv[i]={inPosition:"north",outPosition:"south"};break;case"BT":sv[i]={inPosition:"south",outPosition:"north"};break;case"RL":sv[i]={inPosition:"east",outPosition:"west"};break;case"LR":sv[i]={inPosition:"west",outPosition:"east"};break}const p=a==="in"?sv[i].inPosition:sv[i].outPosition;return a==="in"?sv[i].inPosition=xjt(sv[i].inPosition,a,f):sv[i].outPosition=xjt(sv[i].outPosition,a,f),p},fUe=(i,a)=>{let f=i.start,p=i.end;const v=f,m=p,b=B5[f],E=B5[p];return!b||!E?{source:f,target:p}:(b.type==="diamond"&&(f=`${f}-${kjt(f,"out",a)}`),E.type==="diamond"&&(p=`${p}-${kjt(p,"in",a)}`),{source:f,target:p,sourceId:v,targetId:m})},dUe=function(i,a,f,p){Wt.info("abc78 edges = ",i);const v=p.insert("g").attr("class","edgeLabels");let m={},b=a.db.getDirection(),E,C;if(i.defaultStyle!==void 0){const A=em(i.defaultStyle);E=A.style,C=A.labelStyle}return i.forEach(function(A){const P="L-"+A.start+"-"+A.end;m[P]===void 0?(m
`),A.style===void 0&&(H.style=H.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),H.labelStyle=H.labelStyle.replace("color:","fill:"),H.id=F,H.classes="flowchart-link "+j+" "+R;const J=ABt(v,H),{source:it,target:ft,sourceId:Tt,targetId:kt}=fUe(A,b);Wt.debug("abc78 source and target",it,ft),f.edges.push({id:"e"+A.start+A.end,sources:[it],targets:[ft],sourceId:Tt,targetId:kt,labelEl:J,labels:[{width:H.width,height:H.height,orgWidth:H.width,orgHeight:H.height,text:H.label,layoutOptions:{"edgeLabels.inline":"true","edgeLabels.placement":"CENTER"}}],edgeData:H})}),f},gUe=function(i,a,f,p){let v="";switch(p&&(v=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,v=v.replace(/\(/g,"\\("),v=v.replace(/\)/g,"\\)")),a.arrowTypeStart){case"arrow_cross":i.attr("marker-start","url("+v+"#"+f+"-crossStart)");break;case"arrow_point":i.attr("marker-start","url("+v+"#"+f+"-pointStart)");break;case"arrow_barb":i.attr("marker-start","url("+v+"#"+f+"-barbStart)");break;case"arrow_circle":i.attr("marker-start","url("+v+"#"+f+"-circleStart)");break;case"aggregation":i.attr("marker-start","url("+v+"#"+f+"-aggregationStart)");break;case"extension":i.attr("marker-start","url("+v+"#"+f+"-extensionStart)");break;case"composition":i.attr("marker-start","url("+v+"#"+f+"-compositionStart)");break;case"dependency":i.attr("marker-start","url("+v+"#"+f+"-dependencyStart)");break;case"lollipop":i.attr("marker-start","url("+v+"#"+f+"-lollipopStart)");break}switch(a.arrowTypeEnd){case"arrow_cross":i.attr("marker-end","url("+v+"#"+f+"-crossEnd)");break;case"arrow_point":i.attr("marker-end","url("+v+"#"+f+"-pointEnd)");break;case"arrow_barb":i.attr("marker-end","url("+v+"#"+f+"-barbEnd)");break;case"arrow_circle":i.attr("marker-end","url("+v+"#"+f+"-circleEnd)");break;case"aggregation":i.attr("marker-end","url("+v+"#"+f+"-aggregationEnd)");break;case"extension":i.attr("marker-end","url("+v+"#"+f+"-extensionEnd)");break;case"composition":i.attr("marker-end","url("+v+"#"+f+"-compositionEnd)");break;case"dependency":i.attr("marker-end","url("+v+"#"+f+"-dependencyEnd)");break;case"lollipop":i.attr("marker-end","url("+v+"#"+f+"-lollipopEnd)");break}},pUe=function(i,a){return Wt.info("Extracting classes"),a.db.getClasses()},bUe=function(i){const a={parentById:{},childrenById:{}},f=i.getSubGraphs();return Wt.info("Subgraphs - ",f),f.forEach(function(p){p.nodes.forEach(function(v){a.parentById[v]=p.id,a.childrenById[p.id]===void 0&&(a.childrenById[p.id]=[]),a.childrenById[p.id].push(v)})}),f.forEach(function(p){p.id,a.parentById[p.id]!==void 0&&a.parentById[p.id]}),a},vUe=function(i,a,f){const p=oUe(i,a,f);if(p===void 0||p==="root")return{x:0,y:0};const v=B5[p].offset;return{x:v.posX,y:v.posY}},wUe=function(i,a,f,p,v){const m=vUe(a.sourceId,a.targetId,v),b=a.sections[0].startPoint,E=a.sections[0].endPoint,A=(a.sections[0].bendPoints?a.sections[0].bendPoints:[]).map(rt=>[rt.x+m.x,rt.y+m.y]),P=[[b.x+m.x,b.y+m.y],...A,[E.x+m.x,E.y+m.y]],F=YE().curve(ig),j=i.insert("path").attr("d",F(P)).attr("class","path "+f.classes).attr("fill","none"),R=i.insert("g").attr("class","edgeLabel"),H=xr(R.node().appendChild(a.labelEl)),Y=H.node().firstChild.getBoundingClientRect();H.attr("width",Y.width),H.attr("height",Y.height),R.attr("transform",`translate(${a.labels[0].x+m.x}, ${a.labels[0].y+m.y})`),gUe(j,f,p.type,p.arrowMarkerAbsolute)},Ejt=(i,a)=>{i.forEach(f=>{f.children||(f.children=[]);const p=a.childrenById[f.id];p&&p.forEach(v=>{f.children.push(B5[v])}),Ejt(f.children,a)})},mUe=async function(i,a,f,p){var ct;B5={},sv={};const v=xr("body").append("div").attr("style","height:400px").attr("id","cy");let m={id:"root",layoutOptions:{"elk.hierarchyHandling":"INCLUDE_CHILDREN","org.eclipse.elk.padding":"[top=100, left=100, bottom=110, right=110]","elk.layered.spacing.edgeNodeBetweenLayers":"30","elk.direction":"DOWN"},children:[],edges:[]};switch(Wt.info("Drawing flowchart using v3 renderer",yjt),p.db.getDirection()){case"BT":m.layoutOptions["elk.direction"]="UP";break;case"TB":m.layoutOptions["elk.direction"]="DOWN";break;case"LR":
.subgraph-lvl-${f} {
fill: ${i[`surface${f}`]};
stroke: ${i[`surfacePeer${f}`]};
}
`;return a},kUe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{db:DDe,renderer:yUe,parser:Fdt,styles:i=>`.label {
font-family: ${i.fontFamily};
color: ${i.nodeTextColor||i.textColor};
}
.cluster-label text {
fill: ${i.titleColor};
}
.cluster-label span {
color: ${i.titleColor};
}
.label text,span {
fill: ${i.nodeTextColor||i.textColor};
color: ${i.nodeTextColor||i.textColor};
}
.node rect,
.node circle,
.node ellipse,
.node polygon,
.node path {
fill: ${i.mainBkg};
stroke: ${i.nodeBorder};
stroke-width: 1px;
}
.node .label {
text-align: center;
}
.node.clickable {
cursor: pointer;
}
.arrowheadPath {
fill: ${i.arrowheadColor};
}
.edgePath .path {
stroke: ${i.lineColor};
stroke-width: 2.0px;
}
.flowchart-link {
stroke: ${i.lineColor};
fill: none;
}
.edgeLabel {
background-color: ${i.edgeLabelBackground};
rect {
opacity: 0.85;
background-color: ${i.edgeLabelBackground};
fill: ${i.edgeLabelBackground};
}
text-align: center;
}
.cluster rect {
fill: ${i.clusterBkg};
stroke: ${i.clusterBorder};
stroke-width: 1px;
}
.cluster text {
fill: ${i.titleColor};
}
.cluster span {
color: ${i.titleColor};
}
/* .cluster div {
color: ${i.titleColor};
} */
div.mermaidTooltip {
position: absolute;
text-align: center;
max-width: 200px;
padding: 2px;
font-family: ${i.fontFamily};
font-size: 12px;
background: ${i.tertiaryColor};
border: 1px solid ${i.border2};
border-radius: 2px;
pointer-events: none;
z-index: 100;
}
.flowchartTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${i.textColor};
}
.subgraph {
stroke-width:2;
rx:3;
}
// .subgraph-lvl-1 {
// fill:#ccc;
// // stroke:black;
// }
.flowchart-label text {
text-anchor: middle;
}
${xUe(i)}
`}},Symbol.toStringTag,{value:"Module"}));var Fgt=function(){var i=function(rt,J,it,ft){for(it=it||{},ft=rt.length;ft--;it[rt[ft]]=J);return it},a=[1,2],f=[1,5],p=[6,9,11,17,18,20,22,23,26,27,28],v=[1,15],m=[1,16],b=[1,17],E=[1,18],C=[1,19],A=[1,23],P=[1,24],F=[1,27],j=[4,6,9,11,17,18,20,22,23,26,27,28],R={trace:function(){},yy:{},symbols_:{error:2,start:3,timeline:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,title:17,acc_title:18,acc_title_value:19,acc_descr:20,acc_descr_value:21,acc_descr_multiline_value:22,section:23,period_statement:24,event_statement:25,period:26,event:27,open_directive:28,type_directive:29,arg_directive:30,close_directive:31,$accept:0,$end:1},terminals_:{2:"error",4:"timeline",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",17:"title",18:"acc_title",19:"acc_title_value",20:"acc_descr",21:"acc_descr_value",22:"acc_descr_multiline_value",23:"section",26:"period",27:"event",28:"open_directive",29:"type_directive",30:"arg_directive",31:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,2],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[24,1],[25,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(J,it,ft,Tt,kt,mt,ct){var yt=mt.length-1;switch(kt){case 1:return mt[yt-1];case 3:this.$=[];break;case 4:mt[yt-1].push(mt[yt]),this.$=mt[yt-1];break;case 5:case 6:this.$=mt[yt];break;case 7:case 8:this.$=[];break;case 11:Tt.getCommonDb().setDiagramTitle(mt[yt].substr(6)),this.$=mt[yt].substr(6);break;case 12:this.$=mt[yt].trim(),Tt.getCommonDb().setAccTitle(this.$);break;case 13:case 14:this.$=mt[yt].trim(),Tt.getCommonDb().setAccDescription(this.$);break;case 15:Tt.addSection(mt[yt].substr(8)),this.$=mt[yt].substr(8);break;case 19:Tt.addTask(mt[yt],0,""),this.$=mt[yt];break;case 20:Tt.addEvent(mt[yt].substr(2)),this.$=mt[yt];break;case 21:Tt.parseDirective("%%{","open_directive");break;case 22:Tt.parseDirective(mt[yt],"type_directive");break;case 23:mt[yt]=mt[yt].trim().replace(/'/g,'"'),Tt.parseDirective(mt[yt],"arg_directive");break;case 24:Tt.parseDirective("}%%","close_directive","timeline");break}},table:[{3:1,4:a,7:3,12:4,28:f},{1:[3]},i(p,[2,3],{5:6}),{3:7,4:a,7:3,12:4,28:f},{13:8,29:[1,9]},{29:[2,21]},{6:[1,10],7:22,8:11,9:[1,12],10:13,11:[1,14],12:4,17:v,18:m,20:b,22:E,23:C,24:20,25:21,26:A,27:P,28:f},{1:[2,2]},{14:25,15:[1,26],31:F},i([15,31],[2,22]),i(p,[2,8],{1:[2,1]}),i(p,[2,4]),{7:22,10:28,12:4,17:v,18:m,20:b,22:E,23:C,24:20,25:21,26:A,27:P,28:f},i(p,[2,6]),i(p,[2,7]),i(p,[2,11]),{19:[1,29]},{21:[1,30]},i(p,[2,14]),i(p,[2,15]),i(p,[2,16]),i(p,[2,17]),i(p,[2,18]),i(p,[2,19]),i(p,[2,20]),{11:[1,31]},{16:32,30:[1,33]},{11:[2,24]},i(p,[2,5]),i(p,[2,12]),i(p,[2,13]),i(j,[2,9]),{14:34,31:F},{31:[2,23]},{11:[1,35]},i(j,[2,10])],defaultActions:{5:[2,21],7:[2,2],27:[2,24],33:[2,23]},parseError:function(J,it){if(it.recoverable)this.trace(J);else{var ft=new Error(J);throw ft.hash=it,ft}},parse:function(J){var it=this,ft=[0],Tt=[],kt=[null],mt=[],ct=this.table,yt="",st=0,xt=0,ht=2,dt=1,Ct=mt.slice.call(arguments,1),tt=Object.create(this.lexer),Pt={yy:{}};for(var pt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,pt)&&(Pt.yy[pt]=this.yy[pt]);tt.setInput(J,Pt.yy),Pt.yy.lexer=tt,Pt.yy.parser=this,typeof tt.yylloc>"u"&&(tt.yylloc={});var Ft=tt.yylloc;mt.push(Ft);var X=tt.options&&tt.options.ranges;typeof Pt.yy.parseError=="function"?this.parseError=Pt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Rt(){var ke;return ke=Tt.pop()||tt.lex()||dt,typeof ke!="number"&&(ke instanceof Array&&(Tt=ke,ke=Tt.pop()),ke=it.symbols_[ke]||ke),ke}for(var Bt,vt,Ot,Vt,qe={},_n,Te,Wn,Ae;;){if(vt=ft[ft.length-1],this.defaultActions[vt]?Ot=this.defaultActions[vt]:((Bt===null||typeof Bt>"u")&&(Bt=Rt()),Ot=ct[vt]&&ct[vt][Bt]),typeof Ot>"u"||!Ot.length||!Ot[0]){var ne="";Ae=[];for(_n in ct[vt])this.terminals_[_n]&&_n>ht&&Ae.push("'"+this.terminals_[_n]+"'");tt.showPosition?ne="Parse error on line "+(st+1)+`:
`+tt.showPosition()+`
Expecting `+Ae.join(", ")+", got '"+(this.terminals_[Bt]||Bt)+"'":ne="Parse error on line "+(st+1)+": Unexpected "+(Bt==dt?"end of input":"'"+(this.terminals_[Bt]||Bt)+"'"),this.parseError(ne,{text:tt.match,token:this.terminals_[Bt]||Bt,line:tt.yylineno,loc:Ft,expected:Ae})}if(Ot[0]instanceof Array&&Ot.length>1)throw new Error("Parse Error: multiple actions possible at state: "+vt+", token: "+Bt);switch(Ot[0]){case 1:ft.push(Bt),kt.push(tt.yytext),mt.push(tt.yylloc),ft.push(Ot[1]),Bt=null,xt=tt.yyleng,yt=tt.yytext,st=tt.yylineno,Ft=tt.yylloc;break;case 2:if(Te=this.productions_[Ot[1]][1],qe.$=kt[kt.length-Te],qe._$={first_line:mt[mt.length-(Te||1)].first_line,last_line:mt[mt.length-1].last_line,first_column:mt[mt.length-(Te||1)].first_column,last_column:mt[mt.length-1].last_column},X&&(qe._$.range=[mt[mt.length-(Te||1)].range[0],mt[mt.length-1].range[1]]),Vt=this.performAction.apply(qe,[yt,xt,st,Pt.yy,Ot[1],kt,mt].concat(Ct)),typeof Vt<"u")return Vt;Te&&(ft=ft.slice(0,-1*Te*2),kt=kt.slice(0,-1*Te),mt=mt.slice(0,-1*Te)),ft.push(this.productions_[Ot[1]][0]),kt.push(qe.$),mt.push(qe._$),Wn=ct[ft[ft.length-2]][ft[ft.length-1]],ft.push(Wn);break;case 3:return!0}}return!0}},H=function(){var rt={EOF:1,parseError:function(it,ft){if(this.yy.parser)this.yy.parser.parseError(it,ft);else throw new Error(it)},setInput:function(J,it){return this.yy=it||this.yy||{},this._input=J,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var J=this._input[0];this.yytext+=J,this.yyleng++,this.offset++,this.match+=J,this.matched+=J;var it=J.match(/(?:\r\n?|\n).*/g);return it?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),J},unput:function(J){var it=J.length,ft=J.split(/(?:\r\n?|\n)/g);this._input=J+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-it),this.offset-=it;var Tt=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),ft.length-1&&(this.yylineno-=ft.length-1);var kt=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:ft?(ft.length===Tt.length?this.yylloc.first_column:0)+Tt[Tt.length-ft.length].length-ft[0].length:this.yylloc.first_column-it},this.options.ranges&&(this.yylloc.range=[kt[0],kt[0]+this.yyleng-it]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(J){this.unput(this.match.slice(J))},pastInput:function(){var J=this.matched.substr(0,this.matched.length-this.match.length);return(J.length>20?"...":"")+J.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var J=this.match;return J.length<20&&(J+=this._input.substr(0,20-J.length)),(J.substr(0,20)+(J.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var J=this.pastInput(),it=new Array(J.length+1).join("-");return J+this.upcomingInput()+`
`+it+"^"},test_match:function(J,it){var ft,Tt,kt;if(this.options.backtrack_lexer&&(kt={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&&(kt.yylloc.range=this.yylloc.range.slice(0))),Tt=J[0].match(/(?:\r\n?|\n).*/g),Tt&&(this.yylineno+=Tt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Tt?Tt[Tt.length-1].length-Tt[Tt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+J[0].length},this.yytext+=J[0],this.match+=J[0],this.matches=J,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(J[0].length),this.matched+=J[0],ft=this.performAction.call(this,this.yy,this,it,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ft)return ft;if(this._backtrack){for(var mt in kt)this[mt]=kt[mt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var J,it,ft,Tt;this._more||(this.yytext="",this.match="");for(var kt=this._currentRules(),mt=0;mt<kt.length;mt++)if(ft=this._input.match(this.rules[kt[mt]]),ft&&(!it||ft[0].length>it[0].length)){if(it=ft,Tt=mt,this.options.backtrack_lexer){if(J=this.test_match(ft,kt[mt]),J!==!1)return J;if(this._backtrack){it=!1;continue}else return!1}else if(!this.options.flex)break}return it?(J=this.test_match(it,kt[Tt]),J!==!1?J:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var it=this.next();return it||this.lex()},begin:function(it){this.conditionStack.push(it)},popState:function(){var it=this.conditionStack.length-1;return it>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(it){return it=this.conditionStack.length-1-Math.abs(it||0),it>=0?this.conditionStack[it]:"INITIAL"},pushState:function(it){this.begin(it)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(it,ft,Tt,kt){switch(Tt){case 0:return this.begin("open_directive"),28;case 1:return this.begin("type_directive"),29;case 2:return this.popState(),this.begin("arg_directive"),15;case 3:return this.popState(),this.popState(),31;case 4:return 30;case 5:break;case 6:break;case 7:return 11;case 8:break;case 9:break;case 10:return 4;case 11:return 17;case 12:return this.begin("acc_title"),18;case 13:return this.popState(),"acc_title_value";case 14:return this.begin("acc_descr"),20;case 15:return this.popState(),"acc_descr_value";case 16:this.begin("acc_descr_multiline");break;case 17:this.popState();break;case 18:return"acc_descr_multiline_value";case 19:return 23;case 20:return 27;case 21:return 26;case 22:return 6;case 23:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%(?!\{)[^\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;]+)/i,/^(?:[^#:\n;]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{open_directive:{rules:[1],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},acc_descr_multiline:{rules:[17,18],inclusive:!1},acc_descr:{rules:[15],inclusive:!1},acc_title:{rules:[13],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,10,11,12,14,16,19,20,21,22,23],inclusive:!0}}};return rt}();R.lexer=H;function Y(){this.yy={}}return Y.prototype=R,R.Parser=Y,new Y}();Fgt.parser=Fgt;const EUe=Fgt;let bL="",_jt=0;const Bgt=[],UK=[],vL=[],Cjt=()=>COt,Sjt=(i,a,f)=>{FW(globalThis,i,a,f)},Ajt=function(){Bgt.length=0,UK.length=0,bL="",vL.length=0,cg()},Ljt=function(i){bL=i,Bgt.push(i)},Mjt=function(){return Bgt},Djt=function(){let i=Pjt();const a=100;let f=0;for(;!i&&f<a;)i=Pjt(),f++;return UK.push(...vL),UK},Ijt=function(i,a,f){const p={id:_jt++,section:bL,type:bL,task:i,score:a||0,events:f?[f]:[]};vL.push(p)},Ojt=function(i){vL.find(f=>f.id===_jt-1).events.push(i)},Njt=function(i){const a={section:bL,type:bL,description:i,task:i,classes:[]};UK.push(a)},Pjt=function(){const i=function(f){return vL[f].processed};let a=!0;for(const[f,p]of vL.entries())i(f),a=a&&p.processed;return a},TUe=Object.freeze(Object.defineProperty({__proto__:null,addEvent:Ojt,addSection:Ljt,addTask:Ijt,addTaskOrg:Njt,clear:Ajt,default:{clear:Ajt,getCommonDb:Cjt,addSection:Ljt,getSections:Mjt,getTasks:Djt,addTask:Ijt,addTaskOrg:Njt,addEvent:Ojt,parseDirective:Sjt},getCommonDb:Cjt,getSections:Mjt,getTasks:Djt,parseDirective:Sjt},Symbol.toStringTag,{value:"Module"})),_Ue=12,WK=function(i,a){const f=i.append("rect");return f.attr("x",a.x),f.attr("y",a.y),f.attr("fill",a.fill),f.attr("stroke",a.stroke),f.attr("width",a.width),f.attr("height",a.height),f.attr("rx",a.rx),f.attr("ry",a.ry),a.class!==void 0&&f.attr("class",a.class),f},CUe=function(i,a){const p=i.append("circle").attr("cx",a.cx).attr("cy",a.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),v=i.append("g");v.append("circle").attr("cx",a.cx-15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),v.append("circle").at
.section-${f-1} rect, .section-${f-1} path, .section-${f-1} circle, .section-${f-1} path {
fill: ${i["cScale"+f]};
}
.section-${f-1} text {
fill: ${i["cScaleLabel"+f]};
}
.node-icon-${f-1} {
font-size: 40px;
color: ${i["cScaleLabel"+f]};
}
.section-edge-${f-1}{
stroke: ${i["cScale"+f]};
}
.edge-depth-${f-1}{
stroke-width: ${p};
}
.section-${f-1} line {
stroke: ${i["cScaleInv"+f]} ;
stroke-width: 3;
}
.lineWrapper line{
stroke: ${i["cScaleLabel"+f]} ;
}
.disabled, .disabled circle, .disabled text {
fill: lightgray;
}
.disabled text {
fill: #efefef;
}
`}return a},zUe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{db:TUe,renderer:jUe,parser:EUe,styles:i=>`
.edge {
stroke-width: 3;
}
${$Ue(i)}
.section-root rect, .section-root path, .section-root circle {
fill: ${i.git0};
}
.section-root text {
fill: ${i.gitBranchLabel0};
}
.icon-container {
height:100%;
display: flex;
justify-content: center;
align-items: center;
}
.edge {
fill: none;
}
.eventWrapper {
filter: brightness(120%);
}
`}},Symbol.toStringTag,{value:"Module"}));var jgt=function(){var i=function(Tt,kt,mt,ct){for(mt=mt||{},ct=Tt.length;ct--;mt[Tt[ct]]=kt);return mt},a=[1,4],f=[1,13],p=[1,12],v=[1,15],m=[1,16],b=[1,20],E=[1,19],C=[6,7,8],A=[1,26],P=[1,24],F=[1,25],j=[6,7,11],R=[1,6,13,15,16,19,22],H=[1,33],Y=[1,34],rt=[1,6,7,11,13,15,16,19,22],J={trace:function(){},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:function(kt,mt,ct,yt,st,xt,ht){var dt=xt.length-1;switch(st){case 6:case 7:return yt;case 8:yt.getLogger().trace("Stop NL ");break;case 9:yt.getLogger().trace("Stop EOF ");break;case 11:yt.getLogger().trace("Stop NL2 ");break;case 12:yt.getLogger().trace("Stop EOF2 ");break;case 15:yt.getLogger().info("Node: ",xt[dt].id),yt.addNode(xt[dt-1].length,xt[dt].id,xt[dt].descr,xt[dt].type);break;case 16:yt.getLogger().trace("Icon: ",xt[dt]),yt.decorateNode({icon:xt[dt]});break;case 17:case 21:yt.decorateNode({class:xt[dt]});break;case 18:yt.getLogger().trace("SPACELIST");break;case 19:yt.getLogger().trace("Node: ",xt[dt].id),yt.addNode(0,xt[dt].id,xt[dt].descr,xt[dt].type);break;case 20:yt.decorateNode({icon:xt[dt]});break;case 25:yt.getLogger().trace("node found ..",xt[dt-2]),this.$={id:xt[dt-1],descr:xt[dt-1],type:yt.getType(xt[dt-2],xt[dt])};break;case 26:this.$={id:xt[dt],descr:xt[dt],type:yt.nodeType.DEFAULT};break;case 27:yt.getLogger().trace("node found ..",xt[dt-3]),this.$={id:xt[dt-3],descr:xt[dt-1],type:yt.getType(xt[dt-2],xt[dt])};break}},table:[{3:1,4:2,5:3,6:[1,5],8:a},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:a},{6:f,7:[1,10],9:9,12:11,13:p,14:14,15:v,16:m,17:17,18:18,19:b,22:E},i(C,[2,3]),{1:[2,2]},i(C,[2,4]),i(C,[2,5]),{1:[2,6],6:f,12:21,13:p,14:14,15:v,16:m,17:17,18:18,19:b,22:E},{6:f,9:22,12:11,13:p,14:14,15:v,16:m,17:17,18:18,19:b,22:E},{6:A,7:P,10:23,11:F},i(j,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:b,22:E}),i(j,[2,18]),i(j,[2,19]),i(j,[2,20]),i(j,[2,21]),i(j,[2,23]),i(j,[2,24]),i(j,[2,26],{19:[1,30]}),{20:[1,31]},{6:A,7:P,10:32,11:F},{1:[2,7],6:f,12:21,13:p,14:14,15:v,16:m,17:17,18:18,19:b,22:E},i(R,[2,14],{7:H,11:Y}),i(rt,[2,8]),i(rt,[2,9]),i(rt,[2,10]),i(j,[2,15]),i(j,[2,16]),i(j,[2,17]),{20:[1,35]},{21:[1,36]},i(R,[2,13],{7:H,11:Y}),i(rt,[2,11]),i(rt,[2,12]),{21:[1,37]},i(j,[2,25]),i(j,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:function(kt,mt){if(mt.recoverable)this.trace(kt);else{var ct=new Error(kt);throw ct.hash=mt,ct}},parse:function(kt){var mt=this,ct=[0],yt=[],st=[null],xt=[],ht=this.table,dt="",Ct=0,tt=0,Pt=2,pt=1,Ft=xt.slice.call(arguments,1),X=Object.create(this.lexer),Rt={yy:{}};for(var Bt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Bt)&&(Rt.yy[Bt]=this.yy[Bt]);X.setInput(kt,Rt.yy),Rt.yy.lexer=X,Rt.yy.parser=this,typeof X.yylloc>"u"&&(X.yylloc={});var vt=X.yylloc;xt.push(vt);var Ot=X.options&&X.options.ranges;typeof Rt.yy.parseError=="function"?this.parseError=Rt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Vt(){var Ce;return Ce=yt.pop()||X.lex()||pt,typeof Ce!="number"&&(Ce instanceof Array&&(yt=Ce,Ce=yt.pop()),Ce=mt.symbols_[Ce]||Ce),Ce}for(var qe,_n,Te,Wn,Ae={},ne,ke,Ve,Ee;;){if(_n=ct[ct.length-1],this.defaultActions[_n]?Te=this.defaultActions[_n]:((qe===null||typeof qe>"u")&&(qe=Vt()),Te=ht[_n]&&ht[_n][qe]),typeof Te>"u"||!Te.length||!Te[0]){var He="";Ee=[];for(ne in ht[_n])this.terminals_[ne]&&ne>Pt&&Ee.push("'"+this.terminals_[ne]+"'");X.showPosition?He="Parse error on line "+(Ct+1)+`:
`+X.showPosition()+`
Expecting `+Ee.join(", ")+", got '"+(this.terminals_[qe]||qe)+"'":He="Parse error on line "+(Ct+1)+": Unexpected "+(qe==pt?"end of input":"'"+(this.terminals_[qe]||qe)+"'"),this.parseError(He,{text:X.match,token:this.terminals_[qe]||qe,line:X.yylineno,loc:vt,expected:Ee})}if(Te[0]instanceof Array&&Te.length>1)throw new Error("Parse Error: multiple actions possible at state: "+_n+", token: "+qe);switch(Te[0]){case 1:ct.push(qe),st.push(X.yytext),xt.push(X.yylloc),ct.push(Te[1]),qe=null,tt=X.yyleng,dt=X.yytext,Ct=X.yylineno,vt=X.yylloc;break;case 2:if(ke=this.productions_[Te[1]][1],Ae.$=st[st.length-ke],Ae._$={first_line:xt[xt.length-(ke||1)].first_line,last_line:xt[xt.length-1].last_line,first_column:xt[xt.length-(ke||1)].first_column,last_column:xt[xt.length-1].last_column},Ot&&(Ae._$.range=[xt[xt.length-(ke||1)].range[0],xt[xt.length-1].range[1]]),Wn=this.performAction.apply(Ae,[dt,tt,Ct,Rt.yy,Te[1],st,xt].concat(Ft)),typeof Wn<"u")return Wn;ke&&(ct=ct.slice(0,-1*ke*2),st=st.slice(0,-1*ke),xt=xt.slice(0,-1*ke)),ct.push(this.productions_[Te[1]][0]),st.push(Ae.$),xt.push(Ae._$),Ve=ht[ct[ct.length-2]][ct[ct.length-1]],ct.push(Ve);break;case 3:return!0}}return!0}},it=function(){var Tt={EOF:1,parseError:function(mt,ct){if(this.yy.parser)this.yy.parser.parseError(mt,ct);else throw new Error(mt)},setInput:function(kt,mt){return this.yy=mt||this.yy||{},this._input=kt,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var kt=this._input[0];this.yytext+=kt,this.yyleng++,this.offset++,this.match+=kt,this.matched+=kt;var mt=kt.match(/(?:\r\n?|\n).*/g);return mt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),kt},unput:function(kt){var mt=kt.length,ct=kt.split(/(?:\r\n?|\n)/g);this._input=kt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-mt),this.offset-=mt;var yt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ct.length-1&&(this.yylineno-=ct.length-1);var st=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:ct?(ct.length===yt.length?this.yylloc.first_column:0)+yt[yt.length-ct.length].length-ct[0].length:this.yylloc.first_column-mt},this.options.ranges&&(this.yylloc.range=[st[0],st[0]+this.yyleng-mt]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(kt){this.unput(this.match.slice(kt))},pastInput:function(){var kt=this.matched.substr(0,this.matched.length-this.match.length);return(kt.length>20?"...":"")+kt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var kt=this.match;return kt.length<20&&(kt+=this._input.substr(0,20-kt.length)),(kt.substr(0,20)+(kt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var kt=this.pastInput(),mt=new Array(kt.length+1).join("-");return kt+this.upcomingInput()+`
`+mt+"^"},test_match:function(kt,mt){var ct,yt,st;if(this.options.backtrack_lexer&&(st={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&&(st.yylloc.range=this.yylloc.range.slice(0))),yt=kt[0].match(/(?:\r\n?|\n).*/g),yt&&(this.yylineno+=yt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:yt?yt[yt.length-1].length-yt[yt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+kt[0].length},this.yytext+=kt[0],this.match+=kt[0],this.matches=kt,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(kt[0].length),this.matched+=kt[0],ct=this.performAction.call(this,this.yy,this,mt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ct)return ct;if(this._backtrack){for(var xt in st)this[xt]=st[xt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var kt,mt,ct,yt;this._more||(this.yytext="",this.match="");for(var st=this._currentRules(),xt=0;xt<st.length;xt++)if(ct=this._input.match(this.rules[st[xt]]),ct&&(!mt||ct[0].length>mt[0].length)){if(mt=ct,yt=xt,this.options.backtrack_lexer){if(kt=this.test_match(ct,st[xt]),kt!==!1)return kt;if(this._backtrack){mt=!1;continue}else return!1}else if(!this.options.flex)break}return mt?(kt=this.test_match(mt,st[yt]),kt!==!1?kt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var mt=this.next();return mt||this.lex()},begin:function(mt){this.conditionStack.push(mt)},popState:function(){var mt=this.conditionStack.length-1;return mt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(mt){return mt=this.conditionStack.length-1-Math.abs(mt||0),mt>=0?this.conditionStack[mt]:"INITIAL"},pushState:function(mt){this.begin(mt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(mt,ct,yt,st){switch(yt){case 0:return mt.getLogger().trace("Found comment",ct.yytext),6;case 1:return 8;case 2:this.begin("CLASS");break;case 3:return this.popState(),16;case 4:this.popState();break;case 5:mt.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return mt.getLogger().trace("SPACELINE"),6;case 7:return 7;case 8:return 15;case 9:mt.getLogger().trace("end icon"),this.popState();break;case 10:return mt.getLogger().trace("Exploding node"),this.begin("NODE"),19;case 11:return mt.getLogger().trace("Cloud"),this.begin("NODE"),19;case 12:return mt.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;case 13:return mt.getLogger().trace("Cloud Bang"),this.begin("NODE"),19;case 14:return this.begin("NODE"),19;case 15:return this.begin("NODE"),19;case 16:return this.begin("NODE"),19;case 17:return this.begin("NODE"),19;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:mt.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return mt.getLogger().trace("description:",ct.yytext),"NODE_DESCR";case 26:this.popState();break;case 27:return this.popState(),mt.getLogger().trace("node end ))"),"NODE_DEND";case 28:return this.popState(),mt.getLogger().trace("node end )"),"NODE_DEND";case 29:return this.popState(),mt.getLogger().trace("node end ...",ct.yytext),"NODE_DEND";case 30:return this.popState(),mt.getLogger().trace("node end (("),"NODE_DEND";case 31:return this.popState(),mt.getLogger().trace("node end (-"),"NODE_DEND";case 32:return this.popState(),mt.getLogger().trace("node end (-"),"NODE_DEND";case 33:return this.popState(),mt.getLogger().trace("node end (("),"NODE_DEND";case 34:return this.popState(),mt.getLogger().trace("node end (("),"NODE_DEND";case 35:return mt.getLogger().trace("Long description:",ct.yytext),20;case 36:return mt.getLogger().trace("Long description:",ct.yytext),20}},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 Tt}();J.lexer=it;function ft(){this.yy={}}return ft.prototype=J,J.Parser=ft,new ft}();jgt.parser=jgt;const qUe=jgt,WP=i=>v0(i,De());let av=[],zjt=0,$gt={};const HUe=()=>{av=[],zjt=0,$gt={}},VUe=function(i){for(let a=av.length-1;a>=0;a--)if(av[a].level<i)return av[a];return null},GUe=()=>av.length>0?av[0]:null,UUe=(i,a,f,p)=>{Wt.info("addNode",i,a,f,p);const v=De(),m={id:zjt++,nodeId:WP(a),level:i,descr:WP(f),type:p,children:[],width:De().mindmap.maxNodeWidth};switch(m.type){case Zu.ROUNDED_RECT:m.padding=2*v.mindmap.padding;break;case Zu.RECT:
a${b},${b} 1 0,1 ${f*.4},${-1*f*.1}
a${m},${m} 1 0,1 ${f*.35},${1*f*.2}
a${v},${v} 1 0,1 ${f*.15},${1*p*.35}
a${E},${E} 1 0,1 ${-1*f*.15},${1*p*.65}
a${m},${v} 1 0,1 ${-1*f*.25},${f*.15}
a${b},${b} 1 0,1 ${-1*f*.5},0
a${v},${v} 1 0,1 ${-1*f*.25},${-1*f*.15}
a${v},${v} 1 0,1 ${-1*f*.1},${-1*p*.35}
a${E},${E} 1 0,1 ${f*.1},${-1*p*.65}
H0 V0 Z`)},nWe=function(i,a){const f=a.width,p=a.height,v=.15*f;i.append("path").attr("id","node-"+a.id).attr("class","node-bkg node-"+_9(a.type)).attr("d",`M0 0 a${v},${v} 1 0,0 ${f*.25},${-1*p*.1}
a${v},${v} 1 0,0 ${f*.25},0
a${v},${v} 1 0,0 ${f*.25},0
a${v},${v} 1 0,0 ${f*.25},${1*p*.1}
a${v},${v} 1 0,0 ${f*.15},${1*p*.33}
a${v*.8},${v*.8} 1 0,0 0,${1*p*.34}
a${v},${v} 1 0,0 ${-1*f*.15},${1*p*.33}
a${v},${v} 1 0,0 ${-1*f*.25},${p*.15}
a${v},${v} 1 0,0 ${-1*f*.25},0
a${v},${v} 1 0,0 ${-1*f*.25},0
a${v},${v} 1 0,0 ${-1*f*.25},${-1*p*.15}
a${v},${v} 1 0,0 ${-1*f*.1},${-1*p*.33}
a${v*.8},${v*.8} 1 0,0 0,${-1*p*.34}
a${v},${v} 1 0,0 ${f*.1},${-1*p*.33}
H0 V0 Z`)},rWe=function(i,a){i.append("circle").attr("id","node-"+a.id).attr("class","node-bkg node-"+_9(a.type)).attr("r",a.width/2)};function iWe(i,a,f,p,v){return i.insert("polygon",":first-child").attr("points",p.map(function(m){return m.x+","+m.y}).join(" ")).attr("transform","translate("+(v.width-a)/2+", "+f+")")}const sWe=function(i,a){const f=a.height,v=f/4,m=a.width-a.padding+2*v,b=[{x:v,y:0},{x:m-v,y:0},{x:m,y:-f/2},{x:m-v,y:-f},{x:v,y:-f},{x:0,y:-f/2}];iWe(i,m,f,b,a)},aWe=function(i,a){i.append("rect").attr("id","node-"+a.id).attr("class","node-bkg node-"+_9(a.type)).attr("height",a.height).attr("rx",a.padding).attr("ry",a.padding).attr("width",a.width)},Gjt={drawNode:function(i,a,f,p){const v=p.htmlLabels,m=f%(Vjt-1),b=i.append("g");a.section=m;let E="section-"+m;m<0&&(E+=" section-root"),b.attr("class",(a.class?a.class+" ":"")+"mindmap-node "+E);const C=b.append("g"),A=b.append("g"),P=a.descr.replace(/(<br\/*>)/g,`
`);vK(A,P,{useHtmlLabels:v,width:a.width,classes:"mindmap-node-label"}),v||A.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle");const F=A.node().getBBox(),j=p.fontSize.replace?p.fontSize.replace("px",""):p.fontSize;if(a.height=F.height+j*1.1*.5+a.padding,a.width=F.width+2*a.padding,a.icon)if(a.type===Zu.CIRCLE)a.height+=50,a.width+=50,b.append("foreignObject").attr("height","50px").attr("width",a.width).attr("style","text-align: center;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+m+" "+a.icon),A.attr("transform","translate("+a.width/2+", "+(a.height/2-1.5*a.padding)+")");else{a.width+=50;const R=a.height;a.height=Math.max(R,60);const H=Math.abs(a.height-R);b.append("foreignObject").attr("width","60px").attr("height",a.height).attr("style","text-align: center;margin-top:"+H/2+"px;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+m+" "+a.icon),A.attr("transform","translate("+(25+a.width/2)+", "+(H/2+a.padding/2)+")")}else if(v){const R=(a.width-F.width)/2,H=(a.height-F.height)/2;A.attr("transform","translate("+R+", "+H+")")}else{const R=a.width/2,H=a.padding/2;A.attr("transform","translate("+R+", "+H+")")}switch(a.type){case Zu.DEFAULT:JUe(C,a,m);break;case Zu.ROUNDED_RECT:aWe(C,a);break;case Zu.RECT:tWe(C,a);break;case Zu.CIRCLE:C.attr("transform","translate("+a.width/2+", "+ +a.height/2+")"),rWe(C,a);break;case Zu.CLOUD:eWe(C,a);break;case Zu.BANG:nWe(C,a);break;case Zu.HEXAGON:sWe(C,a);break}return qjt(a.id,b),a.height},positionNode:function(i){const a=zgt(i.id),f=i.x||0,p=i.y||0;a.attr("transform","translate("+f+","+p+")")},drawEdge:function(a,f,p,v,m){const b=m%(Vjt-1),E=p.x+p.width/2,C=p.y+p.height/2,A=f.x+f.width/2,P=f.y+f.height/2,F=A>E?E+Math.abs(E-A)/2:E-Math.abs(E-A)/2,j=P>C?C+Math.abs(C-P)/2:C-Math.abs(C-P)/2,R=A>E?Math.abs(E-F)/2+E:-Math.abs(E-F)/2+E,H=P>C?Math.abs(C-j)/2+C:-Math.abs(C-j)/2+C;a.append("path").attr("d",p.direction==="TB"||p.direction==="BT"?`M${E},${C} Q${E},${H} ${F},${j} T${A},${P}`:`M${E},${C} Q${R},${C} ${F},${j} T${A},${P}`).attr("class","edge section-edge-"+b+" edge-depth-"+v)}};var Ujt={exports:{}};(function(i,a){(function(f,p){i.exports=p()})(d0,function(){function f(y){return f=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(g){return typeof g}:function(g){return g&&typeof Symbol=="function"&&g.constructor===Symbol&&g!==Symbol.prototype?"symbol":typeof g},f(y)}function p(y,g){if(!(y instanceof g))throw new TypeError("Cannot call a class as a function")}function v(y,g){for(var x=0;x<g.length;x++){var T=g[x];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(y,T.key,T)}}function m(y,g,x){return g&&v(y.prototype,g),x&&v(y,x),Object.defineProperty(y,"prototype",{writable:!1}),y}function b(y,g,x){return g in y?Object.defineProperty(y,g,{value:x,enumerable:!0,configurable:!0,writable:!0}):y[g]=x,y}function E(y,g){return C(y)||A(y,g)||P(y,g)||j()}function C(y){if(Array.isArray(y))return y}function A(y,g){var x=y==null?null:typeof Symbol<"u"&&y[Symbol.iterator]||y["@@iterator"];if(x!=null){var T=[],L=!0,I=!1,O,$;try{for(x=x.call(y);!(L=(O=x.next()).done)&&(T.push(O.value),!(g&&T.length===g));L=!0);}catch(z){I=!0,$=z}finally{try{!L&&x.return!=null&&x.return()}finally{if(I)throw $}}return T}}function P(y,g){if(y){if(typeof y=="string")return F(y,g);var x=Object.prototype.toString.call(y).slice(8,-1);if(x==="Object"&&y.constructor&&(x=y.constructor.name),x==="Map"||x==="Set")return Array.from(y);if(x==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(x))return F(y,g)}}function F(y,g){(g==null||g>y.length)&&(g=y.length);for(var x=0,T=new Array(g);x<g;x++)T[x]=y[x];return T}function j(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var R=typeof window>"u"?null:window,H=R?R.navigator:null;R&&R.document;var Y=f(""),rt=f({}),J=f(function(){}),it=typeof HTMLElement>"u"?"undefined":f(HTMLElement),ft=function(g){return g&&g.instanceString&&kt(g.instanceString)?g.instanceString():null},Tt=function(g){return g!=null&&f(g)==Y},kt=function(g){return g!=null&&f(g)===J},mt=function(g){return!dt(g)&&(Array.isArray?Array.isArray(g):g!=null&&g instanceof Array)},ct=function(g){return g!=null&&f(g)===rt&&!mt(g)&&g.constructor===Object},yt=function(g){return g!=null&&f(g)===rt},st=function(g){return g!=null&&f(g)===f(1)&&!isNaN(g)},xt=function(g){return st(g)&&Math.floor(g)===g},ht=function(g){if(it!=="undefined")return g!=null&&g instanceof HTMLElement},dt=function(g){return Ct(g)||tt(g)},Ct=function(g){return ft(g)==="collection"&&g._private.single},tt=function(g){return ft(g)==="collection"&&!g._private.single},Pt=function(g){return ft(g)==="core"},pt=function(g){return ft(g)==="stylesheet"},Ft=function(g){return ft(g)==="event"},X=function(g){return g==null?!0:!!(g===""||g.match(/^\s+$/))},Rt=function(g){return typeof HTMLElement>"u"?!1:g instanceof HTMLElement},Bt=function(g){return ct(g)&&st(g.x1)&&st(g.x2)&&st(g.y1)&&st(g.y2)},vt=function(g){return yt(g)&&kt(g.then)},Ot=function(){return H&&H.userAgent.match(/msie|trident|edge/i)},Vt=function(g,x){x||(x=function(){if(arguments.length===1)return arguments[0];if(arguments.length===0)return"undefined";for(var I=[],O=0;O<arguments.length;O++)I.push(arguments[O]);return I.join("$")});var T=function L(){var I=this,O=arguments,$,z=x.apply(I,O),S=L.cache;return($=S[z])||($=S[z]=g.apply(I,O)),$};return T.cache={},T},qe=Vt(function(y){return y.replace(/([A-Z])/g,function(g){return"-"+g.toLowerCase()})}),_n=Vt(function(y){return y.replace(/(-\w)/g,function(g){return g[1].toUpperCase()})}),Te=Vt(function(y,g){return y+g[0].toUpperCase()+g.substring(1)},function(y,g){return y+"$"+g}),Wn=function(g){return X(g)?g:g.charAt(0).toUpperCase()+g.substring(1)},Ae="(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))",ne="rgb[a]?\\(("+Ae+"[%]?)\\s*,\\s*("+Ae+"[%]?)\\s*,\\s*("+Ae+"[%]?)(?:\\s*,\\s*("+Ae+"))?\\)",ke="rgb[a]?\\((?:"+Ae+"[%]?)\\s*,\\s*(?:"+Ae+"[%]?)\\s*,\\s*(?:"+Ae+"[%]?)(?:\\s*,\\s*(?:"+Ae+"))?\\)",Ve="hsl[a]?\\(("+Ae+")\\s*,\\s*("+Ae+"[%])\\s*,\\s*("+Ae+"[%])(?:\\s*,\\s*("+Ae+"))?\\)",Ee="hsl[a]?\\((?:"+Ae+")\\s*,\\s*(?:"+Ae+"[%])\\s*,\\s*(?:"+Ae+"[%])(?:\\s*,\\s*(?:"+Ae+"))?\\)",He="\\#[0-9a-fA-F]{3}",Ce="\\#[0-9a-fA-F]{6}",$e=function(g,x){return g<x?-1:g>x?1:0},ye=function(g,x){return-1*$e(g,x)},fn=Object.assign!=null?Object.assign.bind(Object):function(y){for(var g=arguments,x=1;x<g.length;x++){var T=g[x];if(T!=null)for(var L=Object.keys(T),I=0;I<L.length;I++){var O=L[I];y[O]=T[O]}}return y},Yt=function(g){if(!(!(g.length===4||g.length===7)||g[0]!=="#")){var x=g.length===4,T,L,I,O=16;return x?(T=parseInt(g[1]+g[1],O),L=parseInt(g[2]+g[2],O),I=parseInt(g[3]+g[3],O)):(T=parseInt(g[1]+g[2],O),L=parseInt(g[3]+g[4],O),I=parseInt(g[5]+g[6],O)),[T,L,I]}},Mi=function(g){var x,T,L,I,O,$,z,S;function V(lt,gt,Lt){return Lt<0&&(Lt+=1),Lt>1&&(Lt-=1),Lt<1/6?lt+(gt-lt)*6*Lt:Lt<1/2?gt:Lt<2/3?lt+(gt-lt)*(2/3-Lt)*6:lt}var U=new RegExp("^"+Ve+"$").exec(g);if(U){if(T=parseInt(U[1]),T<0?T=(360- -1*T%360)%360:T>360&&(T=T%360),T/=360,L=parseFloat(U[2]),L<0||L>100||(L=L/100,I=parseFloat(U[3]),I<0||I>100)||(I=I/100,O=U[4],O!==void 0&&(O=parseFloat(O),O<0||O>1)))return;if(L===0)$=z=S=Math.round(I*255);else{var et=I<.5?I*(1+L):I+L-I*L,at=2*I-et;$=Math.round(255*V(at,et,T+1/3)),z=Math.round(255*V(at,et,T)),S=Math.round(255*V(at,et,T-1/3))}x=[$,z,S,O]}return x},qt=function(g){var x,T=new RegExp("^"+ne+"$").exec(g);if(T){x=[];for(var L=[],I=1;I<=3;I++){var O=T[I];if(O[O.length-1]==="%"&&(L[I]=!0),O=parseFloat(O),L[I]&&(O=O/100*255),O<0||O>255)return;x.push(Math.floor(O))}var $=L[1]||L[2]||L[3],z=L[1]&&L[2]&&L[3];if($&&!z)return;var S=T[4];if(S!==void 0){if(S=parseFloat(S),S<0||S>1)return;x.push(S)}}return x},zi=function(g){return ki[g.toLowerCase()]},Se=fu
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)
*/var TF=0,_F=1,CF=2,hv=function y(g){if(!(this instanceof y))return new y(g);this.id="Thenable/1.0.7",this.state=TF,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},typeof g=="function"&&g.call(this,this.fulfill.bind(this),this.reject.bind(this))};hv.prototype={fulfill:function(g){return SF(this,_F,"fulfillValue",g)},reject:function(g){return SF(this,CF,"rejectReason",g)},then:function(g,x){var T=this,L=new hv;return T.onFulfilled.push(MF(g,L,"fulfill")),T.onRejected.push(MF(x,L,"reject")),AF(T),L.proxy}};var SF=function(g,x,T,L){return g.state===TF&&(g.state=x,g[T]=L,AF(g)),g},AF=function(g){g.state===_F?LF(g,"onFulfilled",g.fulfillValue):g.state===CF&&LF(g,"onRejected",g.rejectReason)},LF=function(g,x,T){if(g[x].length!==0){var L=g[x];g[x]=[];var I=function(){for(var $=0;$<L.length;$++)L[$](T)};typeof setImmediate=="function"?setImmediate(I):setTimeout(I,0)}},MF=function(g,x,T){return function(L){if(typeof g!="function")x[T].call(x,L);else{var I;try{I=g(L)}catch(O){x.reject(O);return}DX(x,I)}}},DX=function y(g,x){if(g===x||g.proxy===x){g.reject(new TypeError("cannot resolve promise with itself"));return}var T;if(f(x)==="object"&&x!==null||typeof x=="function")try{T=x.then}catch(I){g.reject(I);return}if(typeof T=="function"){var L=!1;try{T.call(x,function(I){L||(L=!0,I===x?g.reject(new TypeError("circular thenable chain")):y(g,I))},function(I){L||(L=!0,g.reject(I))})}catch(I){L||g.reject(I)}return}g.fulfill(x)};hv.all=function(y){return new hv(function(g,x){for(var T=new Array(y.length),L=0,I=function(z,S){T[z]=S,L++,L===y.length&&g(T)},O=0;O<y.length;O++)(function($){var z=y[$],S=z!=null&&z.then!=null;if(S)z.then(function(U){I($,U)},function(U){x(U)});else{var V=z;I($,V)}})(O)})},hv.resolve=function(y){return new hv(function(g,x){g(y)})},hv.reject=function(y){return new hv(function(g,x){x(y)})};var W5=typeof Promise<"u"?Promise:hv,q9=function(g,x,T){var L=Pt(g),I=!L,O=this._private=fn({duration:1e3},x,T);if(O.target=g,O.style=O.style||O.css,O.started=!1,O.playing=!1,O.hooked=!1,O.applying=!1,O.progress=0,O.completes=[],O.frames=[],O.complete&&kt(O.complete)&&O.completes.push(O.complete),I){var $=g.position();O.startPosition=O.startPosition||{x:$.x,y:$.y},O.startStyle=O.startStyle||g.cy().style().getAnimationStartStyle(g,O.style)}if(L){var z=g.pan();O.startPan={x:z.x,y:z.y},O.startZoom=g.zoom()}this.length=1,this[0]=this},S3=q9.prototype;fn(S3,{instanceString:function(){return"animation"},hook:function(){var g=this._private;if(!g.hooked){var x,T=g.target._private.animation;g.queue?x=T.queue:x=T.current,x.push(this),dt(g.target)&&g.target.cy().addToAnimationPool(g.target),g.hooked=!0}return this},play:function(){var g=this._private;return g.progress===1&&(g.progress=0),g.playing=!0,g.started=!1,g.stopped=!1,this.hook(),this},playing:function(){return this._private.playing},apply:function(){var g=this._private;return g.applying=!0,g.started=!1,g.stopped=!1,this.hook(),this},applying:function(){return this._private.applying},pause:function(){var g=this._private;return g.playing=!1,g.started=!1,this},stop:function(){var g=this._private;return g.playing=!1,g.started=!1,g.stopped=!0,this},rewind:function(){return this.progress(0)},fastforward:function(){return this.progress(1)},time:function(g){var x=this._private;return g===void 0?x.progress*x.duration:this.progress(g/x.duration)},progress:function(g){var x=this._private,T=x.playing;return g===void 0?x.progress:(T&&this.pause(),x.progress=g,x.started=!1,T&&this.play(),this)},completed:function(){return this._private.progress===1},reverse:function(){var g=this._private,x=g.playing;x&&this.pause(),g.progress=1-g.progress,g.started=!1;var T=function(S,V){var U=g[S];U!=null&&(g[S]=g[V],g[V]=U)};if(T("zoom","startZoom"),T("pan","startPan"),T("position","startPosition"),g.style)for(var L=0;L<g.style.length;L++){var I=g.style[L],O=I.name,$=g.startStyle[O];g.startStyle[O]=I,g.style[L]=$}return x&&this.play(),this},promise:function(g){var x=this._private,T;switch(g){case"frame":T=x.frames;break;default:c
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
*/var oB=function(g,x){this.recycle(g,x)};function Lk(){return!1}function Z9(){return!0}oB.prototype={instanceString:function(){return"event"},recycle:function(g,x){if(this.isImmediatePropagationStopped=this.isPropagationStopped=this.isDefaultPrevented=Lk,g!=null&&g.preventDefault?(this.type=g.type,this.isDefaultPrevented=g.defaultPrevented?Z9:Lk):g!=null&&g.type?x=g:this.type=g,x!=null&&(this.originalEvent=x.originalEvent,this.type=x.type!=null?x.type:this.type,this.cy=x.cy,this.target=x.target,this.position=x.position,this.renderedPosition=x.renderedPosition,this.namespace=x.namespace,this.layout=x.layout),this.cy!=null&&this.position!=null&&this.renderedPosition==null){var T=this.position,L=this.cy.zoom(),I=this.cy.pan();this.renderedPosition={x:T.x*L+I.x,y:T.y*L+I.y}}this.timeStamp=g&&g.timeStamp||Date.now()},preventDefault:function(){this.isDefaultPrevented=Z9;var g=this.originalEvent;g&&g.preventDefault&&g.preventDefault()},stopPropagation:function(){this.isPropagationStopped=Z9;var g=this.originalEvent;g&&g.stopPropagation&&g.stopPropagation()},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=Z9,this.stopPropagation()},isDefaultPrevented:Lk,isPropagationStopped:Lk,isImmediatePropagationStopped:Lk};var cB=/^([^.]+)(\.(?:[^.]+))?$/,cJ=".*",uB={qualifierCompare:function(g,x){return g===x},eventMatches:function(){return!0},addEventFields:function(){},callbackContext:function(g){return g},beforeEmit:function(){},afterEmit:function(){},bubble:function(){return!1},parent:function(){return null},context:null},lB=Object.keys(uB),uJ={};function J9(){for(var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:uJ,g=arguments.length>1?arguments[1]:void 0,x=0;x<lB.length;x++){var T=lB[x];this[T]=y[T]||uB[T]}this.context=g||this.context,this.listeners=[],this.emitting=0}var km=J9.prototype,hB=function(g,x,T,L,I,O,$){kt(L)&&(I=L,L=null),$&&(O==null?O=$:O=fn({},O,$));for(var z=mt(T)?T:T.split(/\s+/),S=0;S<z.length;S++){var V=z[S];if(!X(V)){var U=V.match(cB);if(U){var et=U[1],at=U[2]?U[2]:null,lt=x(g,V,et,at,L,I,O);if(lt===!1)break}}}},fB=function(g,x){return g.addEventFields(g.context,x),new oB(x.type,x)},lJ=function(g,x,T){if(Ft(T)){x(g,T);return}else if(ct(T)){x(g,fB(g,T));return}for(var L=mt(T)?T:T.split(/\s+/),I=0;I<L.length;I++){var O=L[I];if(!X(O)){var $=O.match(cB);if($){var z=$[1],S=$[2]?$[2]:null,V=fB(g,{type:z,namespace:S,target:g.context});x(g,V)}}}};km.on=km.addListener=function(y,g,x,T,L){return hB(this,function(I,O,$,z,S,V,U){kt(V)&&I.listeners.push({event:O,callback:V,type:$,namespace:z,qualifier:S,conf:U})},y,g,x,T,L),this},km.one=function(y,g,x,T){return this.on(y,g,x,T,{one:!0})},km.removeListener=km.off=function(y,g,x,T){var L=this;this.emitting!==0&&(this.listeners=tY(this.listeners));for(var I=this.listeners,O=function(S){var V=I[S];hB(L,function(U,et,at,lt,gt,Lt){if((V.type===at||y==="*")&&(!lt&&V.namespace!==".*"||V.namespace===lt)&&(!gt||U.qualifierCompare(V.qualifier,gt))&&(!Lt||V.callback===Lt))return I.splice(S,1),!1},y,g,x,T)},$=I.length-1;$>=0;$--)O($);return this},km.removeAllListeners=function(){return this.removeListener("*")},km.emit=km.trigger=function(y,g,x){var T=this.listeners,L=T.length;return this.emitting++,mt(g)||(g=[g]),lJ(this,function(I,O){x!=null&&(T=[{event:O.event,type:O.type,namespace:O.namespace,callback:x}],L=T.length);for(var $=function(V){var U=T[V];if(U.type===O.type&&(!U.namespace||U.namespace===O.namespace||U.namespace===cJ)&&I.eventMatches(I.context,U,O)){var et=[O];g!=null&&YP(et,g),I.beforeEmit(I.context,U,O),U.conf&&U.conf.one&&(I.listeners=I.listeners.filter(function(gt){return gt!==U}));var at=I.callbackContext(I.context,U,O),lt=U.callback.apply(at,et);I.afterEmit(I.context,U,O),lt===!1&&(O.stopPropagation(),O.preventDefault())}},z=0;z<L;z++)$(z);I.bubble(I.context)&&!O.isPropagationStopped()&&I.parent(I.context).emit(O,g)},y),this.emitting--,this};var hJ={qualifierCompare:function(g,x){return g==null||x==null?g==null&&x==null:g.sameText(x)},eventMatches:function(g,x,T){var L=x.qualifier;return L!=null?g!==T.target&&Ct(T.target)&&L.matc
`),U=y.pstyle("text-max-width").pfValue,et=y.pstyle("text-overflow-wrap").value,at=et==="anywhere",lt=[],gt=/[\s\u200b]+/,Lt=at?"":" ",Et=0;Et<V.length;Et++){var Dt=V[Et],It=this.calculateLabelDimensions(y,Dt),zt=It.width;if(at){var te=Dt.split("").join(S);Dt=te}if(zt>U){for(var Xt=Dt.split(gt),Ht="",ie=0;ie<Xt.length;ie++){var Ut=Xt[ie],fe=Ht.length===0?Ut:Ht+Lt+Ut,ge=this.calculateLabelDimensions(y,fe),se=ge.width;se<=U?Ht+=Ut+Lt:(Ht&&lt.push(Ht),Ht=Ut+Lt)}Ht.match(/^[\s\u200b]+$/)||lt.push(Ht)}else lt.push(Dt)}O("labelWrapCachedLines",lt),L=O("labelWrapCachedText",lt.join(`
`)),O("labelWrapKey",z)}else if($==="ellipsis"){var Ne=y.pstyle("text-max-width").pfValue,pe="",gn="…",je=!1;if(this.calculateLabelDimensions(y,L).width<Ne)return L;for(var Ge=0;Ge<L.length;Ge++){var xn=this.calculateLabelDimensions(y,pe+L[Ge]+gn).width;if(xn>Ne)break;pe+=L[Ge],Ge===L.length-1&&(je=!0)}return je||(pe+=gn),pe}return L},kp.getLabelJustification=function(y){var g=y.pstyle("text-justification").strValue,x=y.pstyle("text-halign").strValue;if(g==="auto")if(y.isNode())switch(x){case"left":return"right";case"right":return"left";default:return"center"}else return"center";else return g},kp.calculateLabelDimensions=function(y,g){var x=this,T=vp(g,y._private.labelDimsKey),L=x.labelDimCache||(x.labelDimCache=[]),I=L[T];if(I!=null)return I;var O=0,$=y.pstyle("font-style").strValue,z=y.pstyle("font-size").pfValue,S=y.pstyle("font-family").strValue,V=y.pstyle("font-weight").strValue,U=this.labelCalcCanvas,et=this.labelCalcCanvasContext;if(!U){U=this.labelCalcCanvas=document.createElement("canvas"),et=this.labelCalcCanvasContext=U.getContext("2d");var at=U.style;at.position="absolute",at.left="-9999px",at.top="-9999px",at.zIndex="-1",at.visibility="hidden",at.pointerEvents="none"}et.font="".concat($," ").concat(V," ").concat(z,"px ").concat(S);for(var lt=0,gt=0,Lt=g.split(`
`),Et=0;Et<Lt.length;Et++){var Dt=Lt[Et],It=et.measureText(Dt),zt=Math.ceil(It.width),te=z;lt=Math.max(zt,lt),gt+=te}return lt+=O,gt+=O,L[T]={width:lt,height:gt}},kp.calculateLabelAngle=function(y,g){var x=y._private,T=x.rscratch,L=y.isEdge(),I=g?g+"-":"",O=y.pstyle(I+"text-rotation"),$=O.strValue;return $==="none"?0:L&&$==="autorotate"?T.labelAutoAngle:$==="autorotate"?0:O.pfValue},kp.calculateLabelAngles=function(y){var g=this,x=y.isEdge(),T=y._private,L=T.rscratch;L.labelAngle=g.calculateLabelAngle(y),x&&(L.sourceLabelAngle=g.calculateLabelAngle(y,"source"),L.targetLabelAngle=g.calculateLabelAngle(y,"target"))};var ih={},XL=28,HB=!1;ih.getNodeShape=function(y){var g=this,x=y.pstyle("shape").value;if(x==="cutrectangle"&&(y.width()<XL||y.height()<XL))return HB||(no("The `cutrectangle` node shape can not be used at small sizes so `rectangle` is used instead"),HB=!0),"rectangle";if(y.isParent())return x==="rectangle"||x==="roundrectangle"||x==="round-rectangle"||x==="cutrectangle"||x==="cut-rectangle"||x==="barrel"?x:"rectangle";if(x==="polygon"){var T=y.pstyle("shape-polygon-points").value;return g.nodeShapes.makePolygon(T).name}return x};var Fk={};Fk.registerCalculationListeners=function(){var y=this.cy,g=y.collection(),x=this,T=function(O){var $=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(g.merge(O),$)for(var z=0;z<O.length;z++){var S=O[z],V=S._private,U=V.rstyle;U.clean=!1,U.cleanConnected=!1}};x.binder(y).on("bounds.* dirty.*",function(O){var $=O.target;T($)}).on("style.* background.*",function(O){var $=O.target;T($,!1)});var L=function(O){if(O){var $=x.onUpdateEleCalcsFns;g.cleanStyle();for(var z=0;z<g.length;z++){var S=g[z],V=S._private.rstyle;S.isNode()&&!V.cleanConnected&&(T(S.connectedEdges()),V.cleanConnected=!0)}if($)for(var U=0;U<$.length;U++){var et=$[U];et(O,g)}x.recalculateRenderedStyle(g),g=y.collection()}};x.flushRenderedStyleQueue=function(){L(!0)},x.beforeRender(L,x.beforeRenderPriorities.eleCalcs)},Fk.onUpdateEleCalcs=function(y){var g=this.onUpdateEleCalcsFns=this.onUpdateEleCalcsFns||[];g.push(y)},Fk.recalculateRenderedStyle=function(y,g){var x=function(zt){return zt._private.rstyle.cleanConnected},T=[],L=[];if(!this.destroyed){g===void 0&&(g=!0);for(var I=0;I<y.length;I++){var O=y[I],$=O._private,z=$.rstyle;O.isEdge()&&(!x(O.source())||!x(O.target()))&&(z.clean=!1),!(g&&z.clean||O.removed())&&O.pstyle("display").value!=="none"&&($.group==="nodes"?L.push(O):T.push(O),z.clean=!0)}for(var S=0;S<L.length;S++){var V=L[S],U=V._private,et=U.rstyle,at=V.position();this.recalculateNodeLabelProjection(V),et.nodeX=at.x,et.nodeY=at.y,et.nodeW=V.pstyle("width").pfValue,et.nodeH=V.pstyle("height").pfValue}this.recalculateEdgeProjections(T);for(var lt=0;lt<T.length;lt++){var gt=T[lt],Lt=gt._private,Et=Lt.rstyle,Dt=Lt.rscratch;Et.srcX=Dt.arrowStartX,Et.srcY=Dt.arrowStartY,Et.tgtX=Dt.arrowEndX,Et.tgtY=Dt.arrowEndY,Et.midX=Dt.midX,Et.midY=Dt.midY,Et.labelAngle=Dt.labelAngle,Et.sourceLabelAngle=Dt.sourceLabelAngle,Et.targetLabelAngle=Dt.targetLabelAngle}}};var bT={};bT.updateCachedGrabbedEles=function(){var y=this.cachedZSortedEles;if(y){y.drag=[],y.nondrag=[];for(var g=[],x=0;x<y.length;x++){var T=y[x],L=T._private.rscratch;T.grabbed()&&!T.isParent()?g.push(T):L.inDragLayer?y.drag.push(T):y.nondrag.push(T)}for(var x=0;x<g.length;x++){var T=g[x];y.drag.push(T)}}},bT.invalidateCachedZSortedEles=function(){this.cachedZSortedEles=null},bT.getCachedZSortedEles=function(y){if(y||!this.cachedZSortedEles){var g=this.cy.mutableElements().toArray();g.sort(pB),g.interactive=g.filter(function(x){return x.interactive()}),this.cachedZSortedEles=g,this.updateCachedGrabbedEles()}else g=this.cachedZSortedEles;return g};var Bk={};[M3,pT,sd,Pk,YL,kp,ih,Fk,bT].forEach(function(y){fn(Bk,y)});var VB={};VB.getCachedImage=function(y,g,x){var T=this,L=T.imageCache=T.imageCache||{},I=L[y];if(I)return I.image.complete||I.image.addEventListener("load",x),I.image;I=L[y]=L[y]||{};var O=I.image=new Image;O.addEventListener("load",x),O.addEventListener("error",function(){O.error=!0});var $="data:",z=y.substring(0,$.length).toLowe
`+i,p.parser);const m=De().securityLevel;let b;m==="sandbox"&&(b=xr("#i"+a));const C=xr(m==="sandbox"?b.nodes()[0].contentDocument.body:"body").select("#"+a);C.append("g");const A=p.db.getMindmap(),P=C.append("g");P.attr("class","mindmap-edges");const F=C.append("g");F.attr("class","mindmap-nodes"),Qjt(F,A,-1,v);const j=await dWe(A,v);fWe(P,j),gWe(j),s9(void 0,C,v.mindmap.padding,v.mindmap.useMaxWidth)}},bWe=i=>{let a="";for(let f=0;f<i.THEME_COLOR_LIMIT;f++)i["lineColor"+f]=i["lineColor"+f]||i["cScaleInv"+f],XE(i["lineColor"+f])?i["lineColor"+f]=Ss(i["lineColor"+f],20):i["lineColor"+f]=Ys(i["lineColor"+f],20);for(let f=0;f<i.THEME_COLOR_LIMIT;f++){const p=""+(17-3*f);a+=`
.section-${f-1} rect, .section-${f-1} path, .section-${f-1} circle, .section-${f-1} polygon, .section-${f-1} path {
fill: ${i["cScale"+f]};
}
.section-${f-1} text {
fill: ${i["cScaleLabel"+f]};
}
.node-icon-${f-1} {
font-size: 40px;
color: ${i["cScaleLabel"+f]};
}
.section-edge-${f-1}{
stroke: ${i["cScale"+f]};
}
.edge-depth-${f-1}{
stroke-width: ${p};
}
.section-${f-1} line {
stroke: ${i["cScaleInv"+f]} ;
stroke-width: 3;
}
.disabled, .disabled circle, .disabled text {
fill: lightgray;
}
.disabled text {
fill: #efefef;
}
`}return a},vWe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{db:ZUe,renderer:pWe,parser:qUe,styles:i=>`
.edge {
stroke-width: 3;
}
${bWe(i)}
.section-root rect, .section-root path, .section-root circle, .section-root polygon {
fill: ${i.git0};
}
.section-root text {
fill: ${i.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;
}
`}},Symbol.toStringTag,{value:"Module"}));var Vgt=function(){var i=function(E,C,A,P){for(A=A||{},P=E.length;P--;A[E[P]]=C);return A},a=[1,9],f=[1,10],p=[1,5,10,12],v={trace:function(){},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:function(C,A,P,F,j,R,H){var Y=R.length-1;switch(j){case 7:const rt=F.findOrCreateNode(R[Y-4].trim().replaceAll('""','"')),J=F.findOrCreateNode(R[Y-2].trim().replaceAll('""','"')),it=parseFloat(R[Y].trim());F.addLink(rt,J,it);break;case 8:case 9:case 11:this.$=R[Y];break;case 10:this.$=R[Y-1];break}},table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:a,20:f},{1:[2,6],7:11,10:[1,12]},i(f,[2,4],{9:13,5:[1,14]}),{12:[1,15]},i(p,[2,8]),i(p,[2,9]),{19:[1,16]},i(p,[2,11]),{1:[2,1]},{1:[2,5]},i(f,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:a,20:f},{15:18,16:7,17:8,18:a,20:f},{18:[1,19]},i(f,[2,3]),{12:[1,20]},i(p,[2,10]),{15:21,16:7,17:8,18:a,20:f},i([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:function(C,A){if(A.recoverable)this.trace(C);else{var P=new Error(C);throw P.hash=A,P}},parse:function(C){var A=this,P=[0],F=[],j=[null],R=[],H=this.table,Y="",rt=0,J=0,it=2,ft=1,Tt=R.slice.call(arguments,1),kt=Object.create(this.lexer),mt={yy:{}};for(var ct in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ct)&&(mt.yy[ct]=this.yy[ct]);kt.setInput(C,mt.yy),mt.yy.lexer=kt,mt.yy.parser=this,typeof kt.yylloc>"u"&&(kt.yylloc={});var yt=kt.yylloc;R.push(yt);var st=kt.options&&kt.options.ranges;typeof mt.yy.parseError=="function"?this.parseError=mt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function xt(){var vt;return vt=F.pop()||kt.lex()||ft,typeof vt!="number"&&(vt instanceof Array&&(F=vt,vt=F.pop()),vt=A.symbols_[vt]||vt),vt}for(var ht,dt,Ct,tt,Pt={},pt,Ft,X,Rt;;){if(dt=P[P.length-1],this.defaultActions[dt]?Ct=this.defaultActions[dt]:((ht===null||typeof ht>"u")&&(ht=xt()),Ct=H[dt]&&H[dt][ht]),typeof Ct>"u"||!Ct.length||!Ct[0]){var Bt="";Rt=[];for(pt in H[dt])this.terminals_[pt]&&pt>it&&Rt.push("'"+this.terminals_[pt]+"'");kt.showPosition?Bt="Parse error on line "+(rt+1)+`:
`+kt.showPosition()+`
Expecting `+Rt.join(", ")+", got '"+(this.terminals_[ht]||ht)+"'":Bt="Parse error on line "+(rt+1)+": Unexpected "+(ht==ft?"end of input":"'"+(this.terminals_[ht]||ht)+"'"),this.parseError(Bt,{text:kt.match,token:this.terminals_[ht]||ht,line:kt.yylineno,loc:yt,expected:Rt})}if(Ct[0]instanceof Array&&Ct.length>1)throw new Error("Parse Error: multiple actions possible at state: "+dt+", token: "+ht);switch(Ct[0]){case 1:P.push(ht),j.push(kt.yytext),R.push(kt.yylloc),P.push(Ct[1]),ht=null,J=kt.yyleng,Y=kt.yytext,rt=kt.yylineno,yt=kt.yylloc;break;case 2:if(Ft=this.productions_[Ct[1]][1],Pt.$=j[j.length-Ft],Pt._$={first_line:R[R.length-(Ft||1)].first_line,last_line:R[R.length-1].last_line,first_column:R[R.length-(Ft||1)].first_column,last_column:R[R.length-1].last_column},st&&(Pt._$.range=[R[R.length-(Ft||1)].range[0],R[R.length-1].range[1]]),tt=this.performAction.apply(Pt,[Y,J,rt,mt.yy,Ct[1],j,R].concat(Tt)),typeof tt<"u")return tt;Ft&&(P=P.slice(0,-1*Ft*2),j=j.slice(0,-1*Ft),R=R.slice(0,-1*Ft)),P.push(this.productions_[Ct[1]][0]),j.push(Pt.$),R.push(Pt._$),X=H[P[P.length-2]][P[P.length-1]],P.push(X);break;case 3:return!0}}return!0}},m=function(){var E={EOF:1,parseError:function(A,P){if(this.yy.parser)this.yy.parser.parseError(A,P);else throw new Error(A)},setInput:function(C,A){return this.yy=A||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},input:function(){var C=this._input[0];this.yytext+=C,this.yyleng++,this.offset++,this.match+=C,this.matched+=C;var A=C.match(/(?:\r\n?|\n).*/g);return A?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),C},unput:function(C){var A=C.length,P=C.split(/(?:\r\n?|\n)/g);this._input=C+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-A),this.offset-=A;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),P.length-1&&(this.yylineno-=P.length-1);var j=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:P?(P.length===F.length?this.yylloc.first_column:0)+F[F.length-P.length].length-P[0].length:this.yylloc.first_column-A},this.options.ranges&&(this.yylloc.range=[j[0],j[0]+this.yyleng-A]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(C){this.unput(this.match.slice(C))},pastInput:function(){var C=this.matched.substr(0,this.matched.length-this.match.length);return(C.length>20?"...":"")+C.substr(-20).replace(/\n/g,"")},upcomingInput: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,"")},showPosition:function(){var C=this.pastInput(),A=new Array(C.length+1).join("-");return C+this.upcomingInput()+`
`+A+"^"},test_match:function(C,A){var P,F,j;if(this.options.backtrack_lexer&&(j={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&&(j.yylloc.range=this.yylloc.range.slice(0))),F=C[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+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],P=this.performAction.call(this,this.yy,this,A,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),P)return P;if(this._backtrack){for(var R in j)this[R]=j[R];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var C,A,P,F;this._more||(this.yytext="",this.match="");for(var j=this._currentRules(),R=0;R<j.length;R++)if(P=this._input.match(this.rules[j[R]]),P&&(!A||P[0].length>A[0].length)){if(A=P,F=R,this.options.backtrack_lexer){if(C=this.test_match(P,j[R]),C!==!1)return C;if(this._backtrack){A=!1;continue}else return!1}else if(!this.options.flex)break}return A?(C=this.test_match(A,j[F]),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})},lex:function(){var A=this.next();return A||this.lex()},begin:function(A){this.conditionStack.push(A)},popState:function(){var A=this.conditionStack.length-1;return A>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(A){return A=this.conditionStack.length-1-Math.abs(A||0),A>=0?this.conditionStack[A]:"INITIAL"},pushState:function(A){this.begin(A)},stateStackSize:function(){return this.conditionStack.length},options:{easy_keword_rules:!0},performAction:function(A,P,F,j){switch(F){case 0:return this.pushState("csv"),4;case 1:return 10;case 2:return 5;case 3:return 12;case 4:return this.pushState("escaped_text"),18;case 5:return 20;case 6:return this.popState("escaped_text"),18;case 7:return 19}},rules:[/^(?:sankey-beta\b)/,/^(?:$)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:(\u002C))/,/^(?:(\u0022))/,/^(?:([\u0020-\u0021\u0023-\u002B\u002D-\u007E])*)/,/^(?:(\u0022)(?!(\u0022)))/,/^(?:(([\u0020-\u0021\u0023-\u002B\u002D-\u007E])|(\u002C)|(\u000D)|(\u000A)|(\u0022)(\u0022))*)/],conditions:{csv:{rules:[1,2,3,4,5,6,7],inclusive:!1},escaped_text:{rules:[6,7],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7],inclusive:!0}}};return E}();v.lexer=m;function b(){this.yy={}}return b.prototype=v,v.Parser=b,new b}();Vgt.parser=Vgt;const KK=Vgt;let YK=[],XK=[],wL={};const wWe=()=>{YK=[],XK=[],wL={},cg()};class mWe{constructor(a,f,p=0){this.source=a,this.target=f,this.value=p}}const yWe=(i,a,f)=>{YK.push(new mWe(i,a,f))};class xWe{constructor(a){this.ID=a}}const kWe={nodesMap:wL,getConfig:()=>De().sankey,getNodes:()=>XK,getLinks:()=>YK,getGraph:()=>({nodes:XK.map(i=>({id:i.ID})),links:YK.map(i=>({source:i.source.ID,target:i.target.ID,value:i.value}))}),addLink:yWe,findOrCreateNode:i=>(i=ui.sanitizeText(i,De()),wL[i]||(wL[i]=new xWe(i),XK.push(wL[i])),wL[i]),getAccTitle:ug,setAccTitle:m0,getAccDescription:hg,setAccDescription:lg,getDiagramTitle:hp,setDiagramTitle:Nb,clear:wWe};function Jjt(i,a){let f;if(a===void 0)for(const p of i)p!=null&&(f<p||f===void 0&&p>=p)&&(f=p);else{let p=-1;for(let v of i)(v=a(v,++p,i))!=null&&(f<v||f===void 0&&v>=v)&&(f=v)}return f}function t$t(i,a){let f;if(a===void 0)for(const p of i)p!=null&&(f>p||f===void 0&&p>=p)&&(f=p);else{let p=-1;for(let v of i)(v=a(v,++p,i))!=null&&(f>v||f===void 0&&v>=v)&&(f=v)}return f}function Ggt(i,a){let f=0;if(a===void 0)for(let p of i)(p=+p)&&(f+=p);else{let p=-1;for(let v of i)(v=+a(v,++p,i))&&(f+=v)}return f}function EWe(i){return i.target.depth}function TWe(i){return i.depth}function _We(i,a){return a-1-i.height}function e$t(i,a){return i.sourceLinks.length?i.depth:a-1}function CWe(i){return i.targetLinks.length?i.depth:i.sourceLinks.length?t$t(i.sourceLinks,EWe)-1:0}function QK(i){return function(){return i}}function n$t(i,a){return ZK(i.source,a.source)||i.index-a.index}function r$t(i,a){return ZK(i.target,a.target)||i.index-a.index}function ZK(i,a){return i.y0-a.y0}function Ugt(i){return i.value}function SWe(i){return i.index}function AWe(i){return i.nodes}function LWe(i){return i.links}function i$t(i,a){const f=i.get(a);if(!f)throw new Error("missing: "+a);return f}function s$t({nodes:i}){for(const a of i){let f=a.y0,p=f;for(const v of a.sourceLinks)v.y0=f+v.width/2,f+=v.width;for(const v of a.targetLinks)v.y1=p+v.width/2,p+=v.width}}function MWe(){let i=0,a=0,f=1,p=1,v=24,m=8,b,E=SWe,C=e$t,A,P,F=AWe,j=LWe,R=6;function H(){const Pt={nodes:F.apply(null,arguments),links:j.apply(null,arguments)};return Y(Pt),rt(Pt),J(Pt),it(Pt),kt(Pt),s$t(Pt),Pt}H.update=function(Pt){return s$t(Pt),Pt},H.nodeId=function(Pt){return arguments.length?(E=typeof Pt=="function"?Pt:QK(Pt),H):E},H.nodeAlign=function(Pt){return arguments.length?(C=typeof Pt=="function"?Pt:QK(Pt),H):C},H.nodeSort=function(Pt){return arguments.length?(A=Pt,H):A},H.nodeWidth=function(Pt){return arguments.length?(v=+Pt,H):v},H.nodePaddi
${H}${Math.round(ht*100)/100}${Y}`:xt;A.append("g").attr("class","node-labels").attr("font-family","sans-serif").attr("font-size",14).selectAll("text").data(J.nodes).join("text").attr("x",xt=>xt.x0<P/2?xt.x1+6:xt.x0-6).attr("y",xt=>(xt.y1+xt.y0)/2).attr("dy",`${rt?"0":"0.35"}em`).attr("text-anchor",xt=>xt.x0<P/2?"start":"end").text(mt);const ct=A.append("g").attr("class","links").attr("fill","none").attr("stroke-opacity",.5).selectAll(".link").data(J.links).join("g").attr("class","link").style("mix-blend-mode","multiply"),yt=(m==null?void 0:m.linkColor)||"gradient";if(yt==="gradient"){const xt=ct.append("linearGradient").attr("id",ht=>(ht.uid=Qgt.next("linearGradient-")).id).attr("gradientUnits","userSpaceOnUse").attr("x1",ht=>ht.source.x1).attr("x2",ht=>ht.target.x0);xt.append("stop").attr("offset","0%").attr("stop-color",ht=>kt(ht.source.id)),xt.append("stop").attr("offset","100%").attr("stop-color",ht=>kt(ht.target.id))}let st;switch(yt){case"gradient":st=xt=>xt.uid;break;case"source":st=xt=>kt(xt.source.id);break;case"target":st=xt=>kt(xt.target.id);break;default:st=yt}ct.append("path").attr("d",qWe()).attr("stroke",st).attr("stroke-width",xt=>Math.max(1,xt.width))}},GWe=i=>i.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,`
`).trim(),UWe=KK.parse.bind(KK);KK.parse=i=>UWe(GWe(i));const WWe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:KK,db:kWe,renderer:VWe}},Symbol.toStringTag,{value:"Module"}));return Pb});