Lines Matching defs:edgeLabel

105 You have to call mermaid.initialize.`)},wRt=function(i,a,f){Kt.info("addLink (abc78)",i,a,f);let g,w;for(g=0;g<i.length;g++)for(w=0;w<a.length;w++)bRt(i[g],a[w],f)},mRt=function(i,a){i.forEach(function(f){f==="default"?Qv.defaultInterpolate=a:Qv[f].interpolate=a})},vRt=function(i,a){i.forEach(function(f){if(f>=Qv.length)throw new Error(`The index ${f} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${Qv.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);f==="default"?Qv.defaultStyle=a:(uo.isSubstringInArray("fill",a)===-1&&a.push("fill:none"),Qv[f].style=a)})},yRt=function(i,a){i.split(",").forEach(function(f){wD[f]===void 0&&(wD[f]={id:f,styles:[],textStyles:[]}),a!=null&&a.forEach(function(g){if(g.match("color")){const w=g.replace("fill","bgFill").replace("color","fill");wD[f].textStyles.push(w)}wD[f].styles.push(g)})})},xRt=function(i){Zw=i,Zw.match(/.*</)&&(Zw="RL"),Zw.match(/.*\^/)&&(Zw="BT"),Zw.match(/.*>/)&&(Zw="LR"),Zw.match(/.*v/)&&(Zw="TB"),Zw==="TD"&&(Zw="TB")},jY=function(i,a){i.split(",").forEach(function(f){let g=f;jl[g]!==void 0&&jl[g].classes.push(a),OY[g]!==void 0&&OY[g].classes.push(a)})},hje=function(i,a){i.split(",").forEach(function(f){a!==void 0&&(NY[FY==="gen-1"?zF(f):f]=RY(a))})},fje=function(i,a,f){let g=zF(i);if(Re().securityLevel!=="loose"||a===void 0)return;let w=[];if(typeof f=="string"){w=f.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let v=0;v<w.length;v++){let b=w[v].trim();b.charAt(0)==='"'&&b.charAt(b.length-1)==='"'&&(b=b.substr(1,b.length-2)),w[v]=b}}w.length===0&&w.push(i),jl[i]!==void 0&&(jl[i].haveCallback=!0,BY.push(function(){const v=document.querySelector(`[id="${g}"]`);v!==null&&v.addEventListener("click",function(){uo.runFunc(a,...w)},!1)}))},kRt=function(i,a,f){i.split(",").forEach(function(g){jl[g]!==void 0&&(jl[g].link=uo.formatUrl(a,bD),jl[g].linkTarget=f)}),jY(i,"clickable")},ERt=function(i){if(NY.hasOwnProperty(i))return NY[i]},TRt=function(i,a,f){i.split(",").forEach(function(g){fje(g,a,f)}),jY(i,"clickable")},CRt=function(i){BY.forEach(function(a){a(i)})},SRt=function(){return Zw.trim()},_Rt=function(){return jl},ARt=function(){return Qv},LRt=function(){return wD},DRt=function(i){let a=Tr(".mermaidTooltip");(a._groups||a)[0][0]===null&&(a=Tr("body").append("div").attr("class","mermaidTooltip").style("opacity",0)),Tr(i).select("svg").selectAll("g.node").on("mouseover",function(){const w=Tr(this);if(w.attr("title")===null)return;const b=this.getBoundingClientRect();a.transition().duration(200).style("opacity",".9"),a.text(w.attr("title")).style("left",window.scrollX+b.left+(b.right-b.left)/2+"px").style("top",window.scrollY+b.bottom+"px"),a.html(a.html().replace(/&lt;br\/&gt;/g,"<br/>")),w.classed("hover",!0)}).on("mouseout",function(){a.transition().duration(500).style("opacity",0),Tr(this).classed("hover",!1)})};BY.push(DRt);const MRt=function(i="gen-1"){jl={},wD={},Qv=[],BY=[DRt],Px=[],OY={},PY=0,NY={},apt=!0,FY=i,bD=Re(),ag()},IRt=i=>{FY=i||"gen-2"},ORt=function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"},NRt=function(i,a,f){let g=i.text.trim(),w=f.text;i===f&&f.text.match(/\s/)&&(g=void 0);function v(M){const F={boolean:{},number:{},string:{}},R=[];let B;return{nodeList:M.filter(function(Y){const nt=typeof Y;return Y.stmt&&Y.stmt==="dir"?(B=Y.value,!1):Y.trim()===""?!1:nt in F?F[nt].hasOwnProperty(Y)?!1:F[nt][Y]=!0:R.includes(Y)?!1:R.push(Y)}),dir:B}}let b=[];const{nodeList:E,dir:S}=v(b.concat.apply(b,a));if(b=E,FY==="gen-1")for(let M=0;M<b.length;M++)b[M]=zF(b[M]);g=g||"subGraph"+PY,w=w||"",w=RY(w),PY=PY+1;const _={id:g,nodes:b,title:w.trim(),classes:[],dir:S,labelType:f.type};return Kt.info("Adding",_.id,_.nodes,_.dir),_.nodes=HRt(_,Px).nodes,Px.push(_),OY[g]=_,g},dje=function(i){for(const[a,f]of Px.entries())if(f.id===i)return a;return-1};let qF=-1;const PRt=[],FRt=function(i,a){const f=Px[a].nodes;if(qF=qF+1,qF>2e3)return;if(PRt[qF]=a,Px[a].id===i)return{result:!0,count:0};let g=0,w=1;for(;g<f.length;){const v=dje(f[g]);if(v>=0){const b=FRt(i,v);if(b.result)return{result:!0,count:w+b.count};w=w+b.count}g=g+1}return{result:!1,count:w}},BRt=function(i){return PRt[i]},RRt=function(){qF=-1,Px.length>0&&FRt("none",Px.length-1)},jRt=function(){return Px},$Rt=()=>apt?(apt=!1,!0):!1,gje=i=>{let a=i.trim(),f="arrow_open";switch(a[0]){case"<":f="arrow_point",a=a.slice(1);break;case"x":f="arrow_cross",a=a.slice(1);break;case"o":f="arrow_circle",a=a.slice(1);break}let g="normal";return a.includes("=")&&(g="thick"),a.includes(".")&&(g="dotted"),{type:f,stroke:g}},pje=(i,a)=>{const f=a.length;let g=0;for(let w=0;w<f;++w)a[w]===i&&++g;return g},bje=i=>{const a=i.trim();let f=a.slice(0,-1),g="arrow_open";switch(a.slice(-1)){case"x":g="arrow_cross",a[0]==="x"&&(g="double_"+g,f=f.slice(1));break;case">":g="arrow_point",a[0]==="<"&&(g="double_"+g,f=f.slice(1));break;case"o":g="arrow_circle",a[0]==="o"&&(g="double_"+g,f=f.slice(1));break}let w="normal",v=f.length-1;f[0]==="="&&(w="thick"),f[0]==="~"&&(w="invisible");let b=pje(".",f);return b&&(w="dotted",v=b),{type:g,stroke:w,length:v}},zRt=(i,a)=>{const f=bje(i);let g;if(a){if(g=gje(a),g.stroke!==f.stroke)return{type:"INVALID",stroke:"INVALID"};if(g.type==="arrow_open")g.type=f.type;else{if(g.type!==f.type)return{type:"INVALID",stroke:"INVALID"};g.type="double_"+g.type}return g.type==="double_arrow"&&(g.type="double_arrow_point"),g.length=f.length,g}return f},qRt=(i,a)=>{let f=!1;return i.forEach(g=>{g.nodes.indexOf(a)>=0&&(f=!0)}),f},HRt=(i,a)=>{const f=[];return i.nodes.forEach((g,w)=>{qRt(a,g)||f.push(i.nodes[w])}),{nodes:f}},VRt={firstGraph:$Rt},A9={defaultConfig:()=>lBt.flowchart,setAccTitle:og,getAccTitle:Xg,getAccDescription:Jg,setAccDescription:Qg,addVertex:pRt,lookUpDomId:zF,addLink:wRt,updateLinkInterpolate:mRt,updateLink:vRt,addClass:yRt,setDirection:xRt,setClass:jY,setTooltip:hje,getTooltip:ERt,setClickEvent:TRt,setLink:kRt,bindFunctions:CRt,getDirection:SRt,getVertices:_Rt,getEdges:ARt,getClasses:LRt,clear:MRt,setGen:IRt,defaultStyle:ORt,addSubGraph:NRt,getDepthFirstPos:BRt,indexNodes:RRt,getSubGraphs:jRt,destructLink:zRt,lex:VRt,exists:qRt,makeUniq:HRt,setDiagramTitle:S2,getDiagramTitle:Zg},wje=Object.freeze(Object.defineProperty({__proto__:null,addClass:yRt,addLink:wRt,addSingleLink:bRt,addSubGraph:NRt,addVertex:pRt,bindFunctions:CRt,clear:MRt,default:A9,defaultStyle:ORt,destructLink:zRt,firstGraph:$Rt,getClasses:LRt,getDepthFirstPos:BRt,getDirection:SRt,getEdges:ARt,getSubGraphs:jRt,getTooltip:ERt,getVertices:_Rt,indexNodes:RRt,lex:VRt,lookUpDomId:zF,setClass:jY,setClickEvent:TRt,setDirection:xRt,setGen:IRt,setLink:kRt,updateLink:vRt,updateLinkInterpolate:mRt},Symbol.toStringTag,{value:"Module"}));var mje="[object Symbol]";function L9(i){return typeof i=="symbol"||e4(i)&&b9(i)==mje}function mD(i,a){for(var f=-1,g=i==null?0:i.length,w=Array(g);++f<g;)w[f]=a(i[f],f,i);return w}var vje=1/0,URt=Yw?Yw.prototype:void 0,GRt=URt?URt.toString:void 0;function KRt(i){if(typeof i=="string")return i;if(s1(i))return mD(i,KRt)+"";if(L9(i))return GRt?GRt.call(i):"";var a=i+"";return a=="0"&&1/i==-vje?"-0":a}var yje=/\s/;function xje(i){for(var a=i.length;a--&&yje.test(i.charAt(a)););return a}var kje=/^\s+/;function Eje(i){return i&&i.slice(0,xje(i)+1).replace(kje,"")}var WRt=0/0,Tje=/^[-+]0x[0-9a-f]+$/i,Cje=/^0b[01]+$/i,Sje=/^0o[0-7]+$/i,_je=parseInt;function Aje(i){if(typeof i=="number")return i;if(L9(i))return WRt;if(T2(i)){var a=typeof i.valueOf=="function"?i.valueOf():i;i=T2(a)?a+"":a}if(typeof i!="string")return i===0?i:+i;i=Eje(i);var f=Cje.test(i);return f||Sje.test(i)?_je(i.slice(2),f?2:8):Tje.test(i)?WRt:+i}var YRt=1/0,Lje=17976931348623157e292;function $Y(i){if(!i)return i===0?i:0;if(i=Aje(i),i===YRt||i===-YRt){var a=i<0?-1:1;return a*Lje}return i===i?i:0}function Dje(i){var a=$Y(i),f=a%1;return a===a?f?a-f:a:0}function Mje(){}function XRt(i,a){for(var f=-1,g=i==null?0:i.length;++f<g&&a(i[f],f,i)!==!1;);return i}function QRt(i,a,f,g){for(var w=i.length,v=f+(g?1:-1);g?v--:++v<w;)if(a(i[v],v,i))return v;return-1}function Ije(i){return i!==i}function Oje(i,a,f){for(var g=f-1,w=i.length;++g<w;)if(i[g]===a)return g;return-1}function Nje(i,a,f){return a===a?Oje(i,a,f):QRt(i,Ije,f)}function Pje(i,a){var f=i==null?0:i.length;return!!f&&Nje(i,a,0)>-1}function A2(i){return p8(i)?wFt(i):xBt(i)}var Fje=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Bje=/^\w*$/;function opt(i,a){if(s1(i))return!1;var f=typeof i;return f=="number"||f=="symbol"||f=="boolean"||i==null||L9(i)?!0:Bje.test(i)||!Fje.test(i)||a!=null&&i in Object(a)}var Rje=500;function jje(i){var a=eD(i,function(g){return f.size===Rje&&f.clear(),g}),f=a.cache;return a}var $je=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,zje=/\\(\\)?/g,qje=jje(function(i){var a=[];return i.charCodeAt(0)===46&&a.push(""),i.replace($je,function(f,g,w,v){a.push(w?v.replace(zje,"$1"):g||f)}),a});const Hje=qje;function JRt(i){return i==null?"":KRt(i)}function zY(i,a){return s1(i)?i:opt(i,a)?[i]:Hje(JRt(i))}var Vje=1/0;function HF(i){if(typeof i=="string"||L9(i))return i;var a=i+"";return a=="0"&&1/i==-Vje?"-0":a}function qY(i,a){a=zY(a,i);for(var f=0,g=a.length;i!=null&&f<g;)i=i[HF(a[f++])];return f&&f==g?i:void 0}function Uje(i,a,f){var g=i==null?void 0:qY(i,a);return g===void 0?f:g}function cpt(i,a){for(var f=-1,g=a.length,w=i.length;++f<g;)i[w+f]=a[f];return i}var ZRt=Yw?Yw.isConcatSpreadable:void 0;function Gje(i){return s1(i)||nD(i)||!!(ZRt&&i&&i[ZRt])}function HY(i,a,f,g,w){var v=-1,b=i.length;for(f||(f=Gje),w||(w=[]);++v<b;){var E=i[v];a>0&&f(E)?a>1?HY(E,a-1,f,g,w):cpt(w,E):g||(w[w.length]=E)}return w}function vD(i){var a=i==null?0:i.length;return a?HY(i,1):[]}function Kje(i){return xFt(yFt(i,void 0,vD),i+"")}function Wje(i,a,f,g){var w=-1,v=i==null?0:i.length;for(g&&v&&(f=i[++w]);++w<v;)f=a(f,i[w],w,i);return f}function Yje(i,a){return i&&LF(a,A2(a),i)}function Xje(i,a){return i&&LF(a,y9(a),i)}function tjt(i,a){for(var f=-1,g=i==null?0:i.length,w=0,v=[];++f<g;){var b=i[f];a(b,f,i)&&(v[w++]=b)}return v}function ejt(){return[]}var Qje=Object.prototype,Jje=Qje.propertyIsEnumerable,njt=Object.getOwnPropertySymbols,Zje=njt?function(i){return i==null?[]:(i=Object(i),tjt(njt(i),function(a){return Jje.call(i,a)}))}:ejt;const upt=Zje;function t$e(i,a){return LF(i,upt(i),a)}var e$e=Object.getOwnPropertySymbols,n$e=e$e?function(i){for(var a=[];i;)cpt(a,upt(i)),i=vgt(i);return a}:ejt;const rjt=n$e;function r$e(i,a){return LF(i,rjt(i),a)}function ijt(i,a,f){var g=a(i);return s1(i)?g:cpt(g,f(i))}function lpt(i){return ijt(i,A2,upt)}function i$e(i){return ijt(i,y9,rjt)}var s$e=Object.prototype,a$e=s$e.hasOwnProperty;function o$e(i){var a=i.length,f=new i.constructor(a);return a&&typeof i[0]=="string"&&a$e.call(i,"index")&&(f.index=i.index,f.input=i.input),f}function c$e(i,a){var f=a?mgt(i.buffer):i.buffer;return new i.constructor(f,i.byteOffset,i.byteLength)}var u$e=/\w*$/;function l$e(i){var a=new i.constructor(i.source,u$e.exec(i));return a.lastIndex=i.lastIndex,a}var sjt=Yw?Yw.prototype:void 0,ajt=sjt?sjt.valueOf:void 0;function h$e(i){return ajt?Object(ajt.call(i)):{}}var f$e="[object Boolean]",d$e="[object Date]",g$e="[object Map]",p$e="[object Number]",b$e="[object RegExp]",w$e="[object Set]",m$e="[object String]",v$e="[object Symbol]",y$e="[object ArrayBuffer]",x$e="[object DataView]",k$e="[object Float32Array]",E$e="[object Float64Array]",T$e="[object Int8Array]",C$e="[object Int16Array]",S$e="[object Int32Array]",_$e="[object Uint8Array]",A$e="[object Uint8ClampedArray]",L$e="[object Uint16Array]",D$e="[object Uint32Array]";function M$e(i,a,f){var g=i.constructor;switch(a){case y$e:return mgt(i);case f$e:case d$e:return new g(+i);case x$e:return c$e(i,f);case k$e:case E$e:case T$e:case C$e:case S$e:case _$e:case A$e:case L$e:case D$e:return nFt(i,f);case g$e:return new g;case p$e:case m$e:return new g(i);case b$e:return l$e(i);case w$e:return new g;case v$e:return h$e(i)}}var I$e="[object Map]";function O$e(i){return e4(i)&&hD(i)==I$e}var ojt=iD&&iD.isMap,N$e=ojt?iY(ojt):O$e;const P$e=N$e;var F$e="[object Set]";function B$e(i){return e4(i)&&hD(i)==F$e}var cjt=iD&&iD.isSet,R$e=cjt?iY(cjt):B$e;const j$e=R$e;var $$e=1,z$e=2,q$e=4,ujt="[object Arguments]",H$e="[object Array]",V$e="[object Boolean]",U$e="[object Date]",G$e="[object Error]",ljt="[object Function]",K$e="[object GeneratorFunction]",W$e="[object Map]",Y$e="[object Number]",hjt="[object Object]",X$e="[object RegExp]",Q$e="[object Set]",J$e="[object String]",Z$e="[object Symbol]",tze="[object WeakMap]",eze="[object ArrayBuffer]",nze="[object DataView]",rze="[object Float32Array]",ize="[object Float64Array]",sze="[object Int8Array]",aze="[object Int16Array]",oze="[object Int32Array]",cze="[object Uint8Array]",uze="[object Uint8ClampedArray]",lze="[object Uint16Array]",hze="[object Uint32Array]",Tl={};Tl[ujt]=Tl[H$e]=Tl[eze]=Tl[nze]=Tl[V$e]=Tl[U$e]=Tl[rze]=Tl[ize]=Tl[sze]=Tl[aze]=Tl[oze]=Tl[W$e]=Tl[Y$e]=Tl[hjt]=Tl[X$e]=Tl[Q$e]=Tl[J$e]=Tl[Z$e]=Tl[cze]=Tl[uze]=Tl[lze]=Tl[hze]=!0,Tl[G$e]=Tl[ljt]=Tl[tze]=!1;function VF(i,a,f,g,w,v){var b,E=a&$$e,S=a&z$e,_=a&q$e;if(f&&(b=w?f(i,g,w,v):f(i)),b!==void 0)return b;if(!T2(i))return i;var M=s1(i);if(M){if(b=o$e(i),!E)return rFt(i,b)}else{var F=hD(i),R=F==ljt||F==K$e;if(rD(i))return eFt(i,E);if(F==hjt||F==ujt||R&&!w){if(b=S||R?{}:aFt(i),!E)return S?r$e(i,Xje(b,i)):t$e(i,Yje(b,i))}else{if(!Tl[F])return w?i:{};b=M$e(i,F,E)}}v||(v=new Gv);var B=v.get(i);if(B)return B;v.set(i,b),j$e(i)?i.forEach(function(nt){b.add(VF(nt,a,f,nt,i,v))}):P$e(i)&&i.forEach(function(nt,ot){b.set(ot,VF(nt,a,f,ot,i,v))});var z=_?S?i$e:lpt:S?y9:A2,Y=M?void 0:z(i);return XRt(Y||i,function(nt,ot){Y&&(ot=nt,nt=i[ot]),aY(b,ot,VF(nt,a,f,ot,i,v))}),b}var fze=4;function fjt(i){return VF(i,fze)}var dze=1,gze=4;function pze(i){return VF(i,dze|gze)}var bze="__lodash_hash_undefined__";function wze(i){return this.__data__.set(i,bze),this}function mze(i){return this.__data__.has(i)}function UF(i){var a=-1,f=i==null?0:i.length;for(this.__data__=new Ix;++a<f;)this.add(i[a])}UF.prototype.add=UF.prototype.push=wze,UF.prototype.has=mze;function vze(i,a){for(var f=-1,g=i==null?0:i.length;++f<g;)if(a(i[f],f,i))return!0;return!1}function djt(i,a){return i.has(a)}var yze=1,xze=2;function gjt(i,a,f,g,w,v){var b=f&yze,E=i.length,S=a.length;if(E!=S&&!(b&&S>E))return!1;var _=v.get(i),M=v.get(a);if(_&&M)return _==a&&M==i;var F=-1,R=!0,B=f&xze?new UF:void 0;for(v.set(i,a),v.set(a,i);++F<E;){var z=i[F],Y=a[F];if(g)var nt=b?g(Y,z,F,a,i,v):g(z,Y,F,i,a,v);if(nt!==void 0){if(nt)continue;R=!1;break}if(B){if(!vze(a,function(ot,ft){if(!djt(B,ft)&&(z===ot||w(z,ot,f,g,v)))return B.push(ft)})){R=!1;break}}else if(!(z===Y||w(z,Y,f,g,v))){R=!1;break}}return v.delete(i),v.delete(a),R}function kze(i){var a=-1,f=Array(i.size);return i.forEach(function(g,w){f[++a]=[w,g]}),f}function hpt(i){var a=-1,f=Array(i.size);return i.forEach(function(g){f[++a]=g}),f}var Eze=1,Tze=2,Cze="[object Boolean]",Sze="[object Date]",_ze="[object Error]",Aze="[object Map]",Lze="[object Number]",Dze="[object RegExp]",Mze="[object Set]",Ize="[object String]",Oze="[object Symbol]",Nze="[object ArrayBuffer]",Pze="[object DataView]",pjt=Yw?Yw.prototype:void 0,fpt=pjt?pjt.valueOf:void 0;function Fze(i,a,f,g,w,v,b){switch(f){case Pze:if(i.byteLength!=a.byteLength||i.byteOffset!=a.byteOffset)return!1;i=i.buffer,a=a.buffer;case Nze:return!(i.byteLength!=a.byteLength||!v(new nY(i),new nY(a)));case Cze:case Sze:case Lze:return tD(+i,+a);case _ze:return i.name==a.name&&i.message==a.message;case Dze:case Ize:return i==a+"";case Aze:var E=kze;case Mze:var S=g&Eze;if(E||(E=hpt),i.size!=a.size&&!S)return!1;var _=b.get(i);if(_)return _==a;g|=Tze,b.set(i,a);var M=gjt(E(i),E(a),g,w,v,b);return b.delete(i),M;case Oze:if(fpt)return fpt.call(i)==fpt.call(a)}return!1}var Bze=1,Rze=Object.prototype,jze=Rze.hasOwnProperty;function $ze(i,a,f,g,w,v){var b=f&Bze,E=lpt(i),S=E.length,_=lpt(a),M=_.length;if(S!=M&&!b)return!1;for(var F=S;F--;){var R=E[F];if(!(b?R in a:jze.call(a,R)))return!1}var B=v.get(i),z=v.get(a);if(B&&z)return B==a&&z==i;var Y=!0;v.set(i,a),v.set(a,i);for(var nt=b;++F<S;){R=E[F];var ot=i[R],ft=a[R];if(g)var wt=b?g(ft,ot,R,a,i,v):g(ot,ft,R,i,a,v);if(!(wt===void 0?ot===ft||w(ot,ft,f,g,v):wt)){Y=!1;break}nt||(nt=R=="constructor")}if(Y&&!nt){var mt=i.constructor,ct=a.constructor;mt!=ct&&"constructor"in i&&"constructor"in a&&!(typeof mt=="function"&&mt instanceof mt&&typeof ct=="function"&&ct instanceof ct)&&(Y=!1)}return v.delete(i),v.delete(a),Y}var zze=1,bjt="[object Arguments]",wjt="[object Array]",VY="[object Object]",qze=Object.prototype,mjt=qze.hasOwnProperty;function Hze(i,a,f,g,w,v){var b=s1(i),E=s1(a),S=b?wjt:hD(i),_=E?wjt:hD(a);S=S==bjt?VY:S,_=_==bjt?VY:_;var M=S==VY,F=_==VY,R=S==_;if(R&&rD(i)){if(!rD(a))return!1;b=!0,M=!1}if(R&&!M)return v||(v=new Gv),b||sY(i)?gjt(i,a,f,g,w,v):Fze(i,a,S,f,g,w,v);if(!(f&zze)){var B=M&&mjt.call(i,"__wrapped__"),z=F&&mjt.call(a,"__wrapped__");if(B||z){var Y=B?i.value():i,nt=z?a.value():a;return v||(v=new Gv),w(Y,nt,f,g,v)}}return R?(v||(v=new Gv),$ze(i,a,f,g,w,v)):!1}function dpt(i,a,f,g,w){return i===a?!0:i==null||a==null||!e4(i)&&!e4(a)?i!==i&&a!==a:Hze(i,a,f,g,dpt,w)}var Vze=1,Uze=2;function Gze(i,a,f,g){var w=f.length,v=w,b=!g;if(i==null)return!v;for(i=Object(i);w--;){var E=f[w];if(b&&E[2]?E[1]!==i[E[0]]:!(E[0]in i))return!1}for(;++w<v;){E=f[w];var S=E[0],_=i[S],M=E[1];if(b&&E[2]){if(_===void 0&&!(S in i))return!1}else{var F=new Gv;if(g)var R=g(_,M,S,i,a,F);if(!(R===void 0?dpt(M,_,Vze|Uze,g,F):R))return!1}}return!0}function vjt(i){return i===i&&!T2(i)}function Kze(i){for(var a=A2(i),f=a.length;f--;){var g=a[f],w=i[g];a[f]=[g,w,vjt(w)]}return a}function yjt(i,a){return function(f){return f==null?!1:f[i]===a&&(a!==void 0||i in Object(f))}}function Wze(i){var a=Kze(i);return a.length==1&&a[0][2]?yjt(a[0][0],a[0][1]):function(f){return f===i||Gze(f,i,a)}}function Yze(i,a){return i!=null&&a in Object(i)}function xjt(i,a,f){a=zY(a,i);for(var g=-1,w=a.length,v=!1;++g<w;){var b=HF(a[g]);if(!(v=i!=null&&f(i,b)))break;i=i[b]}return v||++g!=w?v:(w=i==null?0:i.length,!!w&&ygt(w)&&oY(b,w)&&(s1(i)||nD(i)))}function kjt(i,a){return i!=null&&xjt(i,a,Yze)}var Xze=1,Qze=2;function Jze(i,a){return opt(i)&&vjt(a)?yjt(HF(i),a):function(f){var g=Uje(f,i);return g===void 0&&g===a?kjt(f,i):dpt(a,g,Xze|Qze)}}function Zze(i){return function(a){return a==null?void 0:a[i]}}function tqe(i){return function(a){return qY(a,i)}}function eqe(i){return opt(i)?Zze(HF(i)):tqe(i)}function k8(i){return typeof i=="function"?i:i==null?x9:typeof i=="object"?s1(i)?Jze(i[0],i[1]):Wze(i):eqe(i)}function gpt(i,a){return i&&wgt(i,a,A2)}function nqe(i,a){return function(f,g){if(f==null)return f;if(!p8(f))return i(f,g);for(var w=f.length,v=a?w:-1,b=Object(f);(a?v--:++v<w)&&g(b[v],v,b)!==!1;);return f}}var rqe=nqe(gpt);const UY=rqe;var iqe=function(){return Uv.Date.now()};const Ejt=iqe;var Tjt=Object.prototype,sqe=Tjt.hasOwnProperty,aqe=cY(function(i,a){i=Object(i);var f=-1,g=a.length,w=g>2?a[2]:void 0;for(w&&DF(a[0],a[1],w)&&(g=1);++f<g;)for(var v=a[f],b=y9(v),E=-1,S=b.length;++E<S;){var _=b[E],M=i[_];(M===void 0||tD(M,Tjt[_])&&!sqe.call(i,_))&&(i[_]=v[_])}return i});const yD=aqe;function oqe(i,a,f){for(var g=-1,w=i==null?0:i.length;++g<w;)if(f(a,i[g]))return!0;return!1}function GY(i){var a=i==null?0:i.length;return a?i[a-1]:void 0}function ppt(i){return typeof i=="function"?i:x9}function yr(i,a){var f=s1(i)?XRt:UY;return f(i,ppt(a))}function cqe(i,a){var f=[];return UY(i,function(g,w,v){a(g,w,v)&&f.push(g)}),f}function Fx(i,a){var f=s1(i)?tjt:cqe;return f(i,k8(a))}function uqe(i){return function(a,f,g){var w=Object(a);if(!p8(a)){var v=k8(f);a=A2(a),f=function(E){return v(w[E],E,w)}}var b=i(a,f,g);return b>-1?w[v?a[b]:b]:void 0}}var lqe=Math.max;function hqe(i,a,f){var g=i==null?0:i.length;if(!g)return-1;var w=f==null?0:Dje(f);return w<0&&(w=lqe(g+w,0)),QRt(i,k8(a),w)}var fqe=uqe(hqe);const bpt=fqe;function Cjt(i,a){var f=-1,g=p8(i)?Array(i.length):[];return UY(i,function(w,v,b){g[++f]=a(w,v,b)}),g}function u1(i,a){var f=s1(i)?mD:Cjt;return f(i,k8(a))}function dqe(i,a){return i==null?i:wgt(i,ppt(a),y9)}function gqe(i,a){return i&&gpt(i,ppt(a))}function pqe(i,a){return i>a}var bqe=Object.prototype,wqe=bqe.hasOwnProperty;function mqe(i,a){return i!=null&&wqe.call(i,a)}function lo(i,a){return i!=null&&xjt(i,a,mqe)}function vqe(i,a){return mD(a,function(f){return i[f]})}function Bx(i){return i==null?[]:vqe(i,A2(i))}function Tf(i){return i===void 0}function Sjt(i,a){return i<a}function KY(i,a){var f={};return a=k8(a),gpt(i,function(g,w,v){eY(f,w,a(g,w,v))}),f}function wpt(i,a,f){for(var g=-1,w=i.length;++g<w;){var v=i[g],b=a(v);if(b!=null&&(E===void 0?b===b&&!L9(b):f(b,E)))var E=b,S=v}return S}function D9(i){return i&&i.length?wpt(i,x9,pqe):void 0}function GF(i){return i&&i.length?wpt(i,x9,Sjt):void 0}function mpt(i,a){return i&&i.length?wpt(i,k8(a),Sjt):void 0}function yqe(i,a,f,g){if(!T2(i))return i;a=zY(a,i);for(var w=-1,v=a.length,b=v-1,E=i;E!=null&&++w<v;){var S=HF(a[w]),_=f;if(S==="__proto__"||S==="constructor"||S==="prototype")return i;if(w!=b){var M=E[S];_=g?g(M,S,E):void 0,_===void 0&&(_=T2(M)?M:oY(a[w+1])?[]:{})}aY(E,S,_),E=E[S]}return i}function xqe(i,a,f){for(var g=-1,w=a.length,v={};++g<w;){var b=a[g],E=qY(i,b);f(E,b)&&yqe(v,zY(b,i),E)}return v}function kqe(i,a){var f=i.length;for(i.sort(a);f--;)i[f]=i[f].value;return i}function Eqe(i,a){if(i!==a){var f=i!==void 0,g=i===null,w=i===i,v=L9(i),b=a!==void 0,E=a===null,S=a===a,_=L9(a);if(!E&&!_&&!v&&i>a||v&&b&&S&&!E&&!_||g&&b&&S||!f&&S||!w)return 1;if(!g&&!v&&!_&&i<a||_&&f&&w&&!g&&!v||E&&f&&w||!b&&w||!S)return-1}return 0}function Tqe(i,a,f){for(var g=-1,w=i.criteria,v=a.criteria,b=w.length,E=f.length;++g<b;){var S=Eqe(w[g],v[g]);if(S){if(g>=E)return S;var _=f[g];return S*(_=="desc"?-1:1)}}return i.index-a.index}function Cqe(i,a,f){a.length?a=mD(a,function(v){return s1(v)?function(b){return qY(b,v.length===1?v[0]:v)}:v}):a=[x9];var g=-1;a=mD(a,iY(k8));var w=Cjt(i,function(v,b,E){var S=mD(a,function(_){return _(v)});return{criteria:S,index:++g,value:v}});return kqe(w,function(v,b){return Tqe(v,b,f)})}function Sqe(i,a){return xqe(i,a,function(f,g){return kjt(i,g)})}var _qe=Kje(function(i,a){return i==null?{}:Sqe(i,a)});const KF=_qe;var Aqe=Math.ceil,Lqe=Math.max;function Dqe(i,a,f,g){for(var w=-1,v=Lqe(Aqe((a-i)/(f||1)),0),b=Array(v);v--;)b[g?v:++w]=i,i+=f;return b}function Mqe(i){return function(a,f,g){return g&&typeof g!="number"&&DF(a,f,g)&&(f=g=void 0),a=$Y(a),f===void 0?(f=a,a=0):f=$Y(f),g=g===void 0?a<f?1:-1:$Y(g),Dqe(a,f,g,i)}}var Iqe=Mqe();const M9=Iqe;function Oqe(i,a,f,g,w){return w(i,function(v,b,E){f=g?(g=!1,v):a(f,v,b,E)}),f}function WF(i,a,f){var g=s1(i)?Wje:Oqe,w=arguments.length<3;return g(i,k8(a),f,w,UY)}var Nqe=cY(function(i,a){if(i==null)return[];var f=a.length;return f>1&&DF(i,a[0],a[1])?a=[]:f>2&&DF(a[0],a[1],a[2])&&(a=[a[0]]),Cqe(i,HY(a,1),[])});const YF=Nqe;var Pqe=1/0,Fqe=lD&&1/hpt(new lD([,-0]))[1]==Pqe?function(i){return new lD(i)}:Mje;const Bqe=Fqe;var Rqe=200;function jqe(i,a,f){var g=-1,w=Pje,v=i.length,b=!0,E=[],S=E;if(f)b=!1,w=oqe;else if(v>=Rqe){var _=a?null:Bqe(i);if(_)return hpt(_);b=!1,w=djt,S=new UF}else S=a?[]:E;t:for(;++g<v;){var M=i[g],F=a?a(M):M;if(M=f||M!==0?M:0,b&&F===F){for(var R=S.length;R--;)if(S[R]===F)continue t;a&&S.push(F),E.push(M)}else w(S,F,f)||(S!==E&&S.push(F),E.push(M))}return E}var $qe=cY(function(i){return jqe(HY(i,1,uFt,!0))});const zqe=$qe;var qqe=0;function WY(i){var a=++qqe;return JRt(i)+a}function Hqe(i,a,f){for(var g=-1,w=i.length,v=a.length,b={};++g<w;){var E=g<v?a[g]:void 0;f(b,i[g],E)}return b}function Vqe(i,a){return Hqe(i||[],a||[],aY)}var Uqe="\0",I9="\0",_jt="";class l1{constructor(a={}){this._isDirected=lo(a,"directed")?a.directed:!0,this._isMultigraph=lo(a,"multigraph")?a.multigraph:!1,this._isCompound=lo(a,"compound")?a.compound:!1,this._label=void 0,this._defaultNodeLabelFn=sD(void 0),this._defaultEdgeLabelFn=sD(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[I9]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(a){return this._label=a,this}graph(){return this._label}setDefaultNodeLabel(a){return ZL(a)||(a=sD(a)),this._defaultNodeLabelFn=a,this}nodeCount(){return this._nodeCount}nodes(){return A2(this._nodes)}sources(){var a=this;return Fx(this.nodes(),function(f){return BF(a._in[f])})}sinks(){var a=this;return Fx(this.nodes(),function(f){return BF(a._out[f])})}setNodes(a,f){var g=arguments,w=this;return yr(a,function(v){g.length>1?w.setNode(v,f):w.setNode(v)}),this}setNode(a,f){return lo(this._nodes,a)?(arguments.length>1&&(this._nodes[a]=f),this):(this._nodes[a]=arguments.length>1?f:this._defaultNodeLabelFn(a),this._isCompound&&(this._parent[a]=I9,this._children[a]={},this._children[I9][a]=!0),this._in[a]={},this._preds[a]={},this._out[a]={},this._sucs[a]={},++this._nodeCount,this)}node(a){return this._nodes[a]}hasNode(a){return lo(this._nodes,a)}removeNode(a){var f=this;if(lo(this._nodes,a)){var g=function(w){f.removeEdge(f._edgeObjs[w])};delete this._nodes[a],this._isCompound&&(this._removeFromParentsChildList(a),delete this._parent[a],yr(this.children(a),function(w){f.setParent(w)}),delete this._children[a]),yr(A2(this._in[a]),g),delete this._in[a],delete this._preds[a],yr(A2(this._out[a]),g),delete this._out[a],delete this._sucs[a],--this._nodeCount}return this}setParent(a,f){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(Tf(f))f=I9;else{f+="";for(var g=f;!Tf(g);g=this.parent(g))if(g===a)throw new Error("Setting "+f+" as parent of "+a+" would create a cycle");this.setNode(f)}return this.setNode(a),this._removeFromParentsChildList(a),this._parent[a]=f,this._children[f][a]=!0,this}_removeFromParentsChildList(a){delete this._children[this._parent[a]][a]}parent(a){if(this._isCompound){var f=this._parent[a];if(f!==I9)return f}}children(a){if(Tf(a)&&(a=I9),this._isCompound){var f=this._children[a];if(f)return A2(f)}else{if(a===I9)return this.nodes();if(this.hasNode(a))return[]}}predecessors(a){var f=this._preds[a];if(f)return A2(f)}successors(a){var f=this._sucs[a];if(f)return A2(f)}neighbors(a){var f=this.predecessors(a);if(f)return zqe(f,this.successors(a))}isLeaf(a){var f;return this.isDirected()?f=this.successors(a):f=this.neighbors(a),f.length===0}filterNodes(a){var f=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});f.setGraph(this.graph());var g=this;yr(this._nodes,function(b,E){a(E)&&f.setNode(E,b)}),yr(this._edgeObjs,function(b){f.hasNode(b.v)&&f.hasNode(b.w)&&f.setEdge(b,g.edge(b))});var w={};function v(b){var E=g.parent(b);return E===void 0||f.hasNode(E)?(w[b]=E,E):E in w?w[E]:v(E)}return this._isCompound&&yr(f.nodes(),function(b){f.setParent(b,v(b))}),f}setDefaultEdgeLabel(a){return ZL(a)||(a=sD(a)),this._defaultEdgeLabelFn=a,this}edgeCount(){return this._edgeCount}edges(){return Bx(this._edgeObjs)}setPath(a,f){var g=this,w=arguments;return WF(a,function(v,b){return w.length>1?g.setEdge(v,b,f):g.setEdge(v,b),b}),this}setEdge(){var a,f,g,w,v=!1,b=arguments[0];typeof b=="object"&&b!==null&&"v"in b?(a=b.v,f=b.w,g=b.name,arguments.length===2&&(w=arguments[1],v=!0)):(a=b,f=arguments[1],g=arguments[3],arguments.length>2&&(w=arguments[2],v=!0)),a=""+a,f=""+f,Tf(g)||(g=""+g);var E=XF(this._isDirected,a,f,g);if(lo(this._edgeLabels,E))return v&&(this._edgeLabels[E]=w),this;if(!Tf(g)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(a),this.setNode(f),this._edgeLabels[E]=v?w:this._defaultEdgeLabelFn(a,f,g);var S=Gqe(this._isDirected,a,f,g);return a=S.v,f=S.w,Object.freeze(S),this._edgeObjs[E]=S,Ajt(this._preds[f],a),Ajt(this._sucs[a],f),this._in[f][E]=S,this._out[a][E]=S,this._edgeCount++,this}edge(a,f,g){var w=arguments.length===1?vpt(this._isDirected,arguments[0]):XF(this._isDirected,a,f,g);return this._edgeLabels[w]}hasEdge(a,f,g){var w=arguments.length===1?vpt(this._isDirected,arguments[0]):XF(this._isDirected,a,f,g);return lo(this._edgeLabels,w)}removeEdge(a,f,g){var w=arguments.length===1?vpt(this._isDirected,arguments[0]):XF(this._isDirected,a,f,g),v=this._edgeObjs[w];return v&&(a=v.v,f=v.w,delete this._edgeLabels[w],delete this._edgeObjs[w],Ljt(this._preds[f],a),Ljt(this._sucs[a],f),delete this._in[f][w],delete this._out[a][w],this._edgeCount--),this}inEdges(a,f){var g=this._in[a];if(g){var w=Bx(g);return f?Fx(w,function(v){return v.v===f}):w}}outEdges(a,f){var g=this._out[a];if(g){var w=Bx(g);return f?Fx(w,function(v){return v.w===f}):w}}nodeEdges(a,f){var g=this.inEdges(a,f);if(g)return g.concat(this.outEdges(a,f))}}l1.prototype._nodeCount=0,l1.prototype._edgeCount=0;function Ajt(i,a){i[a]?i[a]++:i[a]=1}function Ljt(i,a){--i[a]||delete i[a]}function XF(i,a,f,g){var w=""+a,v=""+f;if(!i&&w>v){var b=w;w=v,v=b}return w+_jt+v+_jt+(Tf(g)?Uqe:g)}function Gqe(i,a,f,g){var w=""+a,v=""+f;if(!i&&w>v){var b=w;w=v,v=b}var E={v:w,w:v};return g&&(E.name=g),E}function vpt(i,a){return XF(i,a.v,a.w,a.name)}class Kqe{constructor(){var a={};a._next=a._prev=a,this._sentinel=a}dequeue(){var a=this._sentinel,f=a._prev;if(f!==a)return Djt(f),f}enqueue(a){var f=this._sentinel;a._prev&&a._next&&Djt(a),a._next=f._next,f._next._prev=a,f._next=a,a._prev=f}toString(){for(var a=[],f=this._sentinel,g=f._prev;g!==f;)a.push(JSON.stringify(g,Wqe)),g=g._prev;return"["+a.join(", ")+"]"}}function Djt(i){i._prev._next=i._next,i._next._prev=i._prev,delete i._next,delete i._prev}function Wqe(i,a){if(i!=="_next"&&i!=="_prev")return a}var Yqe=sD(1);function Xqe(i,a){if(i.nodeCount()<=1)return[];var f=Jqe(i,a||Yqe),g=Qqe(f.graph,f.buckets,f.zeroIdx);return vD(u1(g,function(w){return i.outEdges(w.v,w.w)}))}function Qqe(i,a,f){for(var g=[],w=a[a.length-1],v=a[0],b;i.nodeCount();){for(;b=v.dequeue();)ypt(i,a,f,b);for(;b=w.dequeue();)ypt(i,a,f,b);if(i.nodeCount()){for(var E=a.length-2;E>0;--E)if(b=a[E].dequeue(),b){g=g.concat(ypt(i,a,f,b,!0));break}}}return g}function ypt(i,a,f,g,w){var v=w?[]:void 0;return yr(i.inEdges(g.v),function(b){var E=i.edge(b),S=i.node(b.v);w&&v.push({v:b.v,w:b.w}),S.out-=E,xpt(a,f,S)}),yr(i.outEdges(g.v),function(b){var E=i.edge(b),S=b.w,_=i.node(S);_.in-=E,xpt(a,f,_)}),i.removeNode(g.v),v}function Jqe(i,a){var f=new l1,g=0,w=0;yr(i.nodes(),function(E){f.setNode(E,{v:E,in:0,out:0})}),yr(i.edges(),function(E){var S=f.edge(E.v,E.w)||0,_=a(E),M=S+_;f.setEdge(E.v,E.w,M),w=Math.max(w,f.node(E.v).out+=_),g=Math.max(g,f.node(E.w).in+=_)});var v=M9(w+g+3).map(function(){return new Kqe}),b=g+1;return yr(f.nodes(),function(E){xpt(v,b,f.node(E))}),{graph:f,buckets:v,zeroIdx:b}}function xpt(i,a,f){f.out?f.in?i[f.out-f.in+a].enqueue(f):i[i.length-1].enqueue(f):i[0].enqueue(f)}function Zqe(i){var a=i.graph().acyclicer==="greedy"?Xqe(i,f(i)):tHe(i);yr(a,function(g){var w=i.edge(g);i.removeEdge(g),w.forwardName=g.name,w.reversed=!0,i.setEdge(g.w,g.v,w,WY("rev"))});function f(g){return function(w){return g.edge(w).weight}}}function tHe(i){var a=[],f={},g={};function w(v){lo(g,v)||(g[v]=!0,f[v]=!0,yr(i.outEdges(v),function(b){lo(f,b.w)?a.push(b):w(b.w)}),delete f[v])}return yr(i.nodes(),w),a}function eHe(i){yr(i.edges(),function(a){var f=i.edge(a);if(f.reversed){i.removeEdge(a);var g=f.forwardName;delete f.reversed,delete f.forwardName,i.setEdge(a.w,a.v,f,g)}})}function xD(i,a,f,g){var w;do w=WY(g);while(i.hasNode(w));return f.dummy=a,i.setNode(w,f),w}function nHe(i){var a=new l1().setGraph(i.graph());return yr(i.nodes(),function(f){a.setNode(f,i.node(f))}),yr(i.edges(),function(f){var g=a.edge(f.v,f.w)||{weight:0,minlen:1},w=i.edge(f);a.setEdge(f.v,f.w,{weight:g.weight+w.weight,minlen:Math.max(g.minlen,w.minlen)})}),a}function Mjt(i){var a=new l1({multigraph:i.isMultigraph()}).setGraph(i.graph());return yr(i.nodes(),function(f){i.children(f).length||a.setNode(f,i.node(f))}),yr(i.edges(),function(f){a.setEdge(f,i.edge(f))}),a}function Ijt(i,a){var f=i.x,g=i.y,w=a.x-f,v=a.y-g,b=i.width/2,E=i.height/2;if(!w&&!v)throw new Error("Not possible to find intersection inside of the rectangle");var S,_;return Math.abs(v)*b>Math.abs(w)*E?(v<0&&(E=-E),S=E*w/v,_=E):(w<0&&(b=-b),S=b,_=b*v/w),{x:f+S,y:g+_}}function YY(i){var a=u1(M9(Njt(i)+1),function(){return[]});return yr(i.nodes(),function(f){var g=i.node(f),w=g.rank;Tf(w)||(a[w][g.order]=f)}),a}function rHe(i){var a=GF(u1(i.nodes(),function(f){return i.node(f).rank}));yr(i.nodes(),function(f){var g=i.node(f);lo(g,"rank")&&(g.rank-=a)})}function iHe(i){var a=GF(u1(i.nodes(),function(v){return i.node(v).rank})),f=[];yr(i.nodes(),function(v){var b=i.node(v).rank-a;f[b]||(f[b]=[]),f[b].push(v)});var g=0,w=i.graph().nodeRankFactor;yr(f,function(v,b){Tf(v)&&b%w!==0?--g:g&&yr(v,function(E){i.node(E).rank+=g})})}function Ojt(i,a,f,g){var w={width:0,height:0};return arguments.length>=4&&(w.rank=f,w.order=g),xD(i,"border",w,a)}function Njt(i){return D9(u1(i.nodes(),function(a){var f=i.node(a).rank;if(!Tf(f))return f}))}function sHe(i,a){var f={lhs:[],rhs:[]};return yr(i,function(g){a(g)?f.lhs.push(g):f.rhs.push(g)}),f}function aHe(i,a){var f=Ejt();try{return a()}finally{console.log(i+" time: "+(Ejt()-f)+"ms")}}function oHe(i,a){return a()}function cHe(i){function a(f){var g=i.children(f),w=i.node(f);if(g.length&&yr(g,a),lo(w,"minRank")){w.borderLeft=[],w.borderRight=[];for(var v=w.minRank,b=w.maxRank+1;v<b;++v)Pjt(i,"borderLeft","_bl",f,w,v),Pjt(i,"borderRight","_br",f,w,v)}}yr(i.children(),a)}function Pjt(i,a,f,g,w,v){var b={width:0,height:0,rank:v,borderType:a},E=w[a][v-1],S=xD(i,"border",b,f);w[a][v]=S,i.setParent(S,g),E&&i.setEdge(E,S,{weight:1})}function uHe(i){var a=i.graph().rankdir.toLowerCase();(a==="lr"||a==="rl")&&Fjt(i)}function lHe(i){var a=i.graph().rankdir.toLowerCase();(a==="bt"||a==="rl")&&hHe(i),(a==="lr"||a==="rl")&&(fHe(i),Fjt(i))}function Fjt(i){yr(i.nodes(),function(a){Bjt(i.node(a))}),yr(i.edges(),function(a){Bjt(i.edge(a))})}function Bjt(i){var a=i.width;i.width=i.height,i.height=a}function hHe(i){yr(i.nodes(),function(a){kpt(i.node(a))}),yr(i.edges(),function(a){var f=i.edge(a);yr(f.points,kpt),lo(f,"y")&&kpt(f)})}function kpt(i){i.y=-i.y}function fHe(i){yr(i.nodes(),function(a){Ept(i.node(a))}),yr(i.edges(),function(a){var f=i.edge(a);yr(f.points,Ept),lo(f,"x")&&Ept(f)})}function Ept(i){var a=i.x;i.x=i.y,i.y=a}function dHe(i){i.graph().dummyChains=[],yr(i.edges(),function(a){gHe(i,a)})}function gHe(i,a){var f=a.v,g=i.node(f).rank,w=a.w,v=i.node(w).rank,b=a.name,E=i.edge(a),S=E.labelRank;if(v!==g+1){i.removeEdge(a);var _,M,F;for(F=0,++g;g<v;++F,++g)E.points=[],M={width:0,height:0,edgeLabel:E,edgeObj:a,rank:g},_=xD(i,"edge",M,"_d"),g===S&&(M.width=E.width,M.height=E.height,M.dummy="edge-label",M.labelpos=E.labelpos),i.setEdge(f,_,{weight:E.weight},b),F===0&&i.graph().dummyChains.push(_),f=_;i.setEdge(f,w,{weight:E.weight},b)}}function pHe(i){yr(i.graph().dummyChains,function(a){var f=i.node(a),g=f.edgeLabel,w;for(i.setEdge(f.edgeObj,g);f.dummy;)w=i.successors(a)[0],i.removeNode(a),g.points.push({x:f.x,y:f.y}),f.dummy==="edge-label"&&(g.x=f.x,g.y=f.y,g.width=f.width,g.height=f.height),a=w,f=i.node(a)})}function Tpt(i){var a={};function f(g){var w=i.node(g);if(lo(a,g))return w.rank;a[g]=!0;var v=GF(u1(i.outEdges(g),function(b){return f(b.w)-i.edge(b).minlen}));return(v===Number.POSITIVE_INFINITY||v===void 0||v===null)&&(v=0),w.rank=v}yr(i.sources(),f)}function QF(i,a){return i.node(a.w).rank-i.node(a.v).rank-i.edge(a).minlen}function Rjt(i){var a=new l1({directed:!1}),f=i.nodes()[0],g=i.nodeCount();a.setNode(f,{});for(var w,v;bHe(a,i)<g;)w=wHe(a,i),v=a.hasNode(w.v)?QF(i,w):-QF(i,w),mHe(a,i,v);return a}function bHe(i,a){function f(g){yr(a.nodeEdges(g),function(w){var v=w.v,b=g===v?w.w:v;!i.hasNode(b)&&!QF(a,w)&&(i.setNode(b,{}),i.setEdge(g,b,{}),f(b))})}return yr(i.nodes(),f),i.nodeCount()}function wHe(i,a){return mpt(a.edges(),function(f){if(i.hasNode(f.v)!==i.hasNode(f.w))return QF(a,f)})}function mHe(i,a,f){yr(i.nodes(),function(g){a.node(g).rank+=f})}function vHe(){}vHe.prototype=new Error;function jjt(i,a,f){s1(a)||(a=[a]);var g=(i.isDirected()?i.successors:i.neighbors).bind(i),w=[],v={};return yr(a,function(b){if(!i.hasNode(b))throw new Error("Graph does not have node: "+b);$jt(i,b,f==="post",v,g,w)}),w}function $jt(i,a,f,g,w,v){lo(g,a)||(g[a]=!0,f||v.push(a),yr(w(a),function(b){$jt(i,b,f,g,w,v)}),f&&v.push(a))}function yHe(i,a){return jjt(i,a,"post")}function xHe(i,a){return jjt(i,a,"pre")}O9.initLowLimValues=Spt,O9.initCutValues=Cpt,O9.calcCutValue=zjt,O9.leaveEdge=Hjt,O9.enterEdge=Vjt,O9.exchangeEdges=Ujt;function O9(i){i=nHe(i),Tpt(i);var a=Rjt(i);Spt(a),Cpt(a,i);for(var f,g;f=Hjt(a);)g=Vjt(a,i,f),Ujt(a,i,f,g)}function Cpt(i,a){var f=yHe(i,i.nodes());f=f.slice(0,f.length-1),yr(f,function(g){kHe(i,a,g)})}function kHe(i,a,f){var g=i.node(f),w=g.parent;i.edge(f,w).cutvalue=zjt(i,a,f)}function zjt(i,a,f){var g=i.node(f),w=g.parent,v=!0,b=a.edge(f,w),E=0;return b||(v=!1,b=a.edge(w,f)),E=b.weight,yr(a.nodeEdges(f),function(S){var _=S.v===f,M=_?S.w:S.v;if(M!==w){var F=_===v,R=a.edge(S).weight;if(E+=F?R:-R,THe(i,f,M)){var B=i.edge(f,M).cutvalue;E+=F?-B:B}}}),E}function Spt(i,a){arguments.length<2&&(a=i.nodes()[0]),qjt(i,{},1,a)}function qjt(i,a,f,g,w){var v=f,b=i.node(g);return a[g]=!0,yr(i.neighbors(g),function(E){lo(a,E)||(f=qjt(i,a,f,E,g))}),b.low=v,b.lim=f++,w?b.parent=w:delete b.parent,f}function Hjt(i){return bpt(i.edges(),function(a){return i.edge(a).cutvalue<0})}function Vjt(i,a,f){var g=f.v,w=f.w;a.hasEdge(g,w)||(g=f.w,w=f.v);var v=i.node(g),b=i.node(w),E=v,S=!1;v.lim>b.lim&&(E=b,S=!0);var _=Fx(a.edges(),function(M){return S===Gjt(i,i.node(M.v),E)&&S!==Gjt(i,i.node(M.w),E)});return mpt(_,function(M){return QF(a,M)})}function Ujt(i,a,f,g){var w=f.v,v=f.w;i.removeEdge(w,v),i.setEdge(g.v,g.w,{}),Spt(i),Cpt(i,a),EHe(i,a)}function EHe(i,a){var f=bpt(i.nodes(),function(w){return!a.node(w).parent}),g=xHe(i,f);g=g.slice(1),yr(g,function(w){var v=i.node(w).parent,b=a.edge(w,v),E=!1;b||(b=a.edge(v,w),E=!0),a.node(w).rank=a.node(v).rank+(E?b.minlen:-b.minlen)})}function THe(i,a,f){return i.hasEdge(a,f)}function Gjt(i,a,f){return f.low<=a.lim&&a.lim<=f.lim}function CHe(i){switch(i.graph().ranker){case"network-simplex":Kjt(i);break;case"tight-tree":_He(i);break;case"longest-path":SHe(i);break;default:Kjt(i)}}var SHe=Tpt;function _He(i){Tpt(i),Rjt(i)}function Kjt(i){O9(i)}function AHe(i){var a=xD(i,"root",{},"_root"),f=LHe(i),g=D9(Bx(f))-1,w=2*g+1;i.graph().nestingRoot=a,yr(i.edges(),function(b){i.edge(b).minlen*=w});var v=DHe(i)+1;yr(i.children(),function(b){Wjt(i,a,w,v,g,f,b)}),i.graph().nodeRankFactor=w}function Wjt(i,a,f,g,w,v,b){var E=i.children(b);if(!E.length){b!==a&&i.setEdge(a,b,{weight:0,minlen:f});return}var S=Ojt(i,"_bt"),_=Ojt(i,"_bb"),M=i.node(b);i.setParent(S,b),M.borderTop=S,i.setParent(_,b),M.borderBottom=_,yr(E,function(F){Wjt(i,a,f,g,w,v,F);var R=i.node(F),B=R.borderTop?R.borderTop:F,z=R.borderBottom?R.borderBottom:F,Y=R.borderTop?g:2*g,nt=B!==z?1:w-v[b]+1;i.setEdge(S,B,{weight:Y,minlen:nt,nestingEdge:!0}),i.setEdge(z,_,{weight:Y,minlen:nt,nestingEdge:!0})}),i.parent(b)||i.setEdge(a,S,{weight:0,minlen:w+v[b]})}function LHe(i){var a={};function f(g,w){var v=i.children(g);v&&v.length&&yr(v,function(b){f(b,w+1)}),a[g]=w}return yr(i.children(),function(g){f(g,1)}),a}function DHe(i){return WF(i.edges(),function(a,f){return a+i.edge(f).weight},0)}function MHe(i){var a=i.graph();i.removeNode(a.nestingRoot),delete a.nestingRoot,yr(i.edges(),function(f){var g=i.edge(f);g.nestingEdge&&i.removeEdge(f)})}function IHe(i,a,f){var g={},w;yr(f,function(v){for(var b=i.parent(v),E,S;b;){if(E=i.parent(b),E?(S=g[E],g[E]=b):(S=w,w=b),S&&S!==b){a.setEdge(S,b);return}b=E}})}function OHe(i,a,f){var g=NHe(i),w=new l1({compound:!0}).setGraph({root:g}).setDefaultNodeLabel(function(v){return i.node(v)});return yr(i.nodes(),function(v){var b=i.node(v),E=i.parent(v);(b.rank===a||b.minRank<=a&&a<=b.maxRank)&&(w.setNode(v),w.setParent(v,E||g),yr(i[f](v),function(S){var _=S.v===v?S.w:S.v,M=w.edge(_,v),F=Tf(M)?0:M.weight;w.setEdge(_,v,{weight:i.edge(S).weight+F})}),lo(b,"minRank")&&w.setNode(v,{borderLeft:b.borderLeft[a],borderRight:b.borderRight[a]}))}),w}function NHe(i){for(var a;i.hasNode(a=WY("_root")););return a}function PHe(i,a){for(var f=0,g=1;g<a.length;++g)f+=FHe(i,a[g-1],a[g]);return f}function FHe(i,a,f){for(var g=Vqe(f,u1(f,function(_,M){return M})),w=vD(u1(a,function(_){return YF(u1(i.outEdges(_),function(M){return{pos:g[M.w],weight:i.edge(M).weight}}),"pos")})),v=1;v<f.length;)v<<=1;var b=2*v-1;v-=1;var E=u1(new Array(b),function(){return 0}),S=0;return yr(w.forEach(function(_){var M=_.pos+v;E[M]+=_.weight;for(var F=0;M>0;)M%2&&(F+=E[M+1]),M=M-1>>1,E[M]+=_.weight;S+=_.weight*F})),S}function BHe(i){var a={},f=Fx(i.nodes(),function(E){return!i.children(E).length}),g=D9(u1(f,function(E){return i.node(E).rank})),w=u1(M9(g+1),function(){return[]});function v(E){if(!lo(a,E)){a[E]=!0;var S=i.node(E);w[S.rank].push(E),yr(i.successors(E),v)}}var b=YF(f,function(E){return i.node(E).rank});return yr(b,v),w}function RHe(i,a){return u1(a,function(f){var g=i.inEdges(f);if(g.length){var w=WF(g,function(v,b){var E=i.edge(b),S=i.node(b.v);return{sum:v.sum+E.weight*S.order,weight:v.weight+E.weight}},{sum:0,weight:0});return{v:f,barycenter:w.sum/w.weight,weight:w.weight}}else return{v:f}})}function jHe(i,a){var f={};yr(i,function(w,v){var b=f[w.v]={indegree:0,in:[],out:[],vs:[w.v],i:v};Tf(w.barycenter)||(b.barycenter=w.barycenter,b.weight=w.weight)}),yr(a.edges(),function(w){var v=f[w.v],b=f[w.w];!Tf(v)&&!Tf(b)&&(b.indegree++,v.out.push(f[w.w]))});var g=Fx(f,function(w){return!w.indegree});return $He(g)}function $He(i){var a=[];function f(v){return function(b){b.merged||(Tf(b.barycenter)||Tf(v.barycenter)||b.barycenter>=v.barycenter)&&zHe(v,b)}}function g(v){return function(b){b.in.push(v),--b.indegree===0&&i.push(b)}}for(;i.length;){var w=i.pop();a.push(w),yr(w.in.reverse(),f(w)),yr(w.out,g(w))}return u1(Fx(a,function(v){return!v.merged}),function(v){return KF(v,["vs","i","barycenter","weight"])})}function zHe(i,a){var f=0,g=0;i.weight&&(f+=i.barycenter*i.weight,g+=i.weight),a.weight&&(f+=a.barycenter*a.weight,g+=a.weight),i.vs=a.vs.concat(i.vs),i.barycenter=f/g,i.weight=g,i.i=Math.min(a.i,i.i),a.merged=!0}function qHe(i,a){var f=sHe(i,function(M){return lo(M,"barycenter")}),g=f.lhs,w=YF(f.rhs,function(M){return-M.i}),v=[],b=0,E=0,S=0;g.sort(HHe(!!a)),S=Yjt(v,w,S),yr(g,function(M){S+=M.vs.length,v.push(M.vs),b+=M.barycenter*M.weight,E+=M.weight,S=Yjt(v,w,S)});var _={vs:vD(v)};return E&&(_.barycenter=b/E,_.weight=E),_}function Yjt(i,a,f){for(var g;a.length&&(g=GY(a)).i<=f;)a.pop(),i.push(g.vs),f++;return f}function HHe(i){return function(a,f){return a.barycenter<f.barycenter?-1:a.barycenter>f.barycenter?1:i?f.i-a.i:a.i-f.i}}function Xjt(i,a,f,g){var w=i.children(a),v=i.node(a),b=v?v.borderLeft:void 0,E=v?v.borderRight:void 0,S={};b&&(w=Fx(w,function(z){return z!==b&&z!==E}));var _=RHe(i,w);yr(_,function(z){if(i.children(z.v).length){var Y=Xjt(i,z.v,f,g);S[z.v]=Y,lo(Y,"barycenter")&&UHe(z,Y)}});var M=jHe(_,f);VHe(M,S);var F=qHe(M,g);if(b&&(F.vs=vD([b,F.vs,E]),i.predecessors(b).length)){var R=i.node(i.predecessors(b)[0]),B=i.node(i.predecessors(E)[0]);lo(F,"barycenter")||(F.barycenter=0,F.weight=0),F.barycenter=(F.barycenter*F.weight+R.order+B.order)/(F.weight+2),F.weight+=2}return F}function VHe(i,a){yr(i,function(f){f.vs=vD(f.vs.map(function(g){return a[g]?a[g].vs:g}))})}function UHe(i,a){Tf(i.barycenter)?(i.barycenter=a.barycenter,i.weight=a.weight):(i.barycenter=(i.barycenter*i.weight+a.barycenter*a.weight)/(i.weight+a.weight),i.weight+=a.weight)}function GHe(i){var a=Njt(i),f=Qjt(i,M9(1,a+1),"inEdges"),g=Qjt(i,M9(a-1,-1,-1),"outEdges"),w=BHe(i);Jjt(i,w);for(var v=Number.POSITIVE_INFINITY,b,E=0,S=0;S<4;++E,++S){KHe(E%2?f:g,E%4>=2),w=YY(i);var _=PHe(i,w);_<v&&(S=0,b=pze(w),v=_)}Jjt(i,b)}function Qjt(i,a,f){return u1(a,function(g){return OHe(i,g,f)})}function KHe(i,a){var f=new l1;yr(i,function(g){var w=g.graph().root,v=Xjt(g,w,f,a);yr(v.vs,function(b,E){g.node(b).order=E}),IHe(g,f,v.vs)})}function Jjt(i,a){yr(a,function(f){yr(f,function(g,w){i.node(g).order=w})})}function WHe(i){var a=XHe(i);yr(i.graph().dummyChains,function(f){for(var g=i.node(f),w=g.edgeObj,v=YHe(i,a,w.v,w.w),b=v.path,E=v.lca,S=0,_=b[S],M=!0;f!==w.w;){if(g=i.node(f),M){for(;(_=b[S])!==E&&i.node(_).maxRank<g.rank;)S++;_===E&&(M=!1)}if(!M){for(;S<b.length-1&&i.node(_=b[S+1]).minRank<=g.rank;)S++;_=b[S]}i.setParent(f,_),f=i.successors(f)[0]}})}function YHe(i,a,f,g){var w=[],v=[],b=Math.min(a[f].low,a[g].low),E=Math.max(a[f].lim,a[g].lim),S,_;S=f;do S=i.parent(S),w.push(S);while(S&&(a[S].low>b||E>a[S].lim));for(_=S,S=g;(S=i.parent(S))!==_;)v.push(S);return{path:w.concat(v.reverse()),lca:_}}function XHe(i){var a={},f=0;function g(w){var v=f;yr(i.children(w),g),a[w]={low:v,lim:f++}}return yr(i.children(),g),a}function QHe(i,a){var f={};function g(w,v){var b=0,E=0,S=w.length,_=GY(v);return yr(v,function(M,F){var R=ZHe(i,M),B=R?i.node(R).order:S;(R||M===_)&&(yr(v.slice(E,F+1),function(z){yr(i.predecessors(z),function(Y){var nt=i.node(Y),ot=nt.order;(ot<b||B<ot)&&!(nt.dummy&&i.node(z).dummy)&&Zjt(f,Y,z)})}),E=F+1,b=B)}),v}return WF(a,g),f}function JHe(i,a){var f={};function g(v,b,E,S,_){var M;yr(M9(b,E),function(F){M=v[F],i.node(M).dummy&&yr(i.predecessors(M),function(R){var B=i.node(R);B.dummy&&(B.order<S||B.order>_)&&Zjt(f,R,M)})})}function w(v,b){var E=-1,S,_=0;return yr(b,function(M,F){if(i.node(M).dummy==="border"){var R=i.predecessors(M);R.length&&(S=i.node(R[0]).order,g(b,_,F,E,S),_=F,E=S)}g(b,_,b.length,S,v.length)}),b}return WF(a,w),f}function ZHe(i,a){if(i.node(a).dummy)return bpt(i.predecessors(a),function(f){return i.node(f).dummy})}function Zjt(i,a,f){if(a>f){var g=a;a=f,f=g}var w=i[a];w||(i[a]=w={}),w[f]=!0}function tVe(i,a,f){if(a>f){var g=a;a=f,f=g}return lo(i[a],f)}function eVe(i,a,f,g){var w={},v={},b={};return yr(a,function(E){yr(E,function(S,_){w[S]=S,v[S]=S,b[S]=_})}),yr(a,function(E){var S=-1;yr(E,function(_){var M=g(_);if(M.length){M=YF(M,function(Y){return b[Y]});for(var F=(M.length-1)/2,R=Math.floor(F),B=Math.ceil(F);R<=B;++R){var z=M[R];v[_]===_&&S<b[z]&&!tVe(f,_,z)&&(v[z]=_,v[_]=w[_]=w[z],S=b[z])}}})}),{root:w,align:v}}function nVe(i,a,f,g,w){var v={},b=rVe(i,a,f,w),E=w?"borderLeft":"borderRight";function S(F,R){for(var B=b.nodes(),z=B.pop(),Y={};z;)Y[z]?F(z):(Y[z]=!0,B.push(z),B=B.concat(R(z))),z=B.pop()}function _(F){v[F]=b.inEdges(F).reduce(function(R,B){return Math.max(R,v[B.v]+b.edge(B))},0)}function M(F){var R=b.outEdges(F).reduce(function(z,Y){return Math.min(z,v[Y.w]-b.edge(Y))},Number.POSITIVE_INFINITY),B=i.node(F);R!==Number.POSITIVE_INFINITY&&B.borderType!==E&&(v[F]=Math.max(v[F],R))}return S(_,b.predecessors.bind(b)),S(M,b.successors.bind(b)),yr(g,function(F){v[F]=v[f[F]]}),v}function rVe(i,a,f,g){var w=new l1,v=i.graph(),b=cVe(v.nodesep,v.edgesep,g);return yr(a,function(E){var S;yr(E,function(_){var M=f[_];if(w.setNode(M),S){var F=f[S],R=w.edge(F,M);w.setEdge(F,M,Math.max(b(i,_,S),R||0))}S=_})}),w}function iVe(i,a){return mpt(Bx(a),function(f){var g=Number.NEGATIVE_INFINITY,w=Number.POSITIVE_INFINITY;return dqe(f,function(v,b){var E=uVe(i,b)/2;g=Math.max(v+E,g),w=Math.min(v-E,w)}),g-w})}function sVe(i,a){var f=Bx(a),g=GF(f),w=D9(f);yr(["u","d"],function(v){yr(["l","r"],function(b){var E=v+b,S=i[E],_;if(S!==a){var M=Bx(S);_=b==="l"?g-GF(M):w-D9(M),_&&(i[E]=KY(S,function(F){return F+_}))}})})}function aVe(i,a){return KY(i.ul,function(f,g){if(a)return i[a.toLowerCase()][g];var w=YF(u1(i,g));return(w[1]+w[2])/2})}function oVe(i){var a=YY(i),f=uY(QHe(i,a),JHe(i,a)),g={},w;yr(["u","d"],function(b){w=b==="u"?a:Bx(a).reverse(),yr(["l","r"],function(E){E==="r"&&(w=u1(w,function(F){return Bx(F).reverse()}));var S=(b==="u"?i.predecessors:i.successors).bind(i),_=eVe(i,w,f,S),M=nVe(i,w,_.root,_.align,E==="r");E==="r"&&(M=KY(M,function(F){return-F})),g[b+E]=M})});var v=iVe(i,g);return sVe(g,v),aVe(g,i.graph().align)}function cVe(i,a,f){return function(g,w,v){var b=g.node(w),E=g.node(v),S=0,_;if(S+=b.width/2,lo(b,"labelpos"))switch(b.labelpos.toLowerCase()){case"l":_=-b.width/2;break;case"r":_=b.width/2;break}if(_&&(S+=f?_:-_),_=0,S+=(b.dummy?a:i)/2,S+=(E.dummy?a:i)/2,S+=E.width/2,lo(E,"labelpos"))switch(E.labelpos.toLowerCase()){case"l":_=E.width/2;break;case"r":_=-E.width/2;break}return _&&(S+=f?_:-_),_=0,S}}function uVe(i,a){return i.node(a).width}function lVe(i){i=Mjt(i),hVe(i),gqe(oVe(i),function(a,f){i.node(f).x=a})}function hVe(i){var a=YY(i),f=i.graph().ranksep,g=0;yr(a,function(w){var v=D9(u1(w,function(b){return i.node(b).height}));yr(w,function(b){i.node(b).y=g+v/2}),g+=v+f})}function kD(i,a){var f=a&&a.debugTiming?aHe:oHe;f("layout",function(){var g=f("  buildLayoutGraph",function(){return kVe(i)});f("  runLayout",function(){fVe(g,f)}),f("  updateInputGraph",function(){dVe(i,g)})})}function fVe(i,a){a("    makeSpaceForEdgeLabels",function(){EVe(i)}),a("    removeSelfEdges",function(){IVe(i)}),a("    acyclic",function(){Zqe(i)}),a("    nestingGraph.run",function(){AHe(i)}),a("    rank",function(){CHe(Mjt(i))}),a("    injectEdgeLabelProxies",function(){TVe(i)}),a("    removeEmptyRanks",function(){iHe(i)}),a("    nestingGraph.cleanup",function(){MHe(i)}),a("    normalizeRanks",function(){rHe(i)}),a("    assignRankMinMax",function(){CVe(i)}),a("    removeEdgeLabelProxies",function(){SVe(i)}),a("    normalize.run",function(){dHe(i)}),a("    parentDummyChains",function(){WHe(i)}),a("    addBorderSegments",function(){cHe(i)}),a("    order",function(){GHe(i)}),a("    insertSelfEdges",function(){OVe(i)}),a("    adjustCoordinateSystem",function(){uHe(i)}),a("    position",function(){lVe(i)}),a("    positionSelfEdges",function(){NVe(i)}),a("    removeBorderNodes",function(){MVe(i)}),a("    normalize.undo",function(){pHe(i)}),a("    fixupEdgeLabelCoords",function(){LVe(i)}),a("    undoCoordinateSystem",function(){lHe(i)}),a("    translateGraph",function(){_Ve(i)}),a("    assignNodeIntersects",function(){AVe(i)}),a("    reversePoints",function(){DVe(i)}),a("    acyclic.undo",function(){eHe(i)})}function dVe(i,a){yr(i.nodes(),function(f){var g=i.node(f),w=a.node(f);g&&(g.x=w.x,g.y=w.y,a.children(f).length&&(g.width=w.width,g.height=w.height))}),yr(i.edges(),function(f){var g=i.edge(f),w=a.edge(f);g.points=w.points,lo(w,"x")&&(g.x=w.x,g.y=w.y)}),i.graph().width=a.graph().width,i.graph().height=a.graph().height}var gVe=["nodesep","edgesep","ranksep","marginx","marginy"],pVe={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},bVe=["acyclicer","ranker","rankdir","align"],wVe=["width","height"],mVe={width:0,height:0},vVe=["minlen","weight","width","height","labeloffset"],yVe={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},xVe=["labelpos"];function kVe(i){var a=new l1({multigraph:!0,compound:!0}),f=Apt(i.graph());return a.setGraph(uY({},pVe,_pt(f,gVe),KF(f,bVe))),yr(i.nodes(),function(g){var w=Apt(i.node(g));a.setNode(g,yD(_pt(w,wVe),mVe)),a.setParent(g,i.parent(g))}),yr(i.edges(),function(g){var w=Apt(i.edge(g));a.setEdge(g,uY({},yVe,_pt(w,vVe),KF(w,xVe)))}),a}function EVe(i){var a=i.graph();a.ranksep/=2,yr(i.edges(),function(f){var g=i.edge(f);g.minlen*=2,g.labelpos.toLowerCase()!=="c"&&(a.rankdir==="TB"||a.rankdir==="BT"?g.width+=g.labeloffset:g.height+=g.labeloffset)})}function TVe(i){yr(i.edges(),function(a){var f=i.edge(a);if(f.width&&f.height){var g=i.node(a.v),w=i.node(a.w),v={rank:(w.rank-g.rank)/2+g.rank,e:a};xD(i,"edge-proxy",v,"_ep")}})}function CVe(i){var a=0;yr(i.nodes(),function(f){var g=i.node(f);g.borderTop&&(g.minRank=i.node(g.borderTop).rank,g.maxRank=i.node(g.borderBottom).rank,a=D9(a,g.maxRank))}),i.graph().maxRank=a}function SVe(i){yr(i.nodes(),function(a){var f=i.node(a);f.dummy==="edge-proxy"&&(i.edge(f.e).labelRank=f.rank,i.removeNode(a))})}function _Ve(i){var a=Number.POSITIVE_INFINITY,f=0,g=Number.POSITIVE_INFINITY,w=0,v=i.graph(),b=v.marginx||0,E=v.marginy||0;function S(_){var M=_.x,F=_.y,R=_.width,B=_.height;a=Math.min(a,M-R/2),f=Math.max(f,M+R/2),g=Math.min(g,F-B/2),w=Math.max(w,F+B/2)}yr(i.nodes(),function(_){S(i.node(_))}),yr(i.edges(),function(_){var M=i.edge(_);lo(M,"x")&&S(M)}),a-=b,g-=E,yr(i.nodes(),function(_){var M=i.node(_);M.x-=a,M.y-=g}),yr(i.edges(),function(_){var M=i.edge(_);yr(M.points,function(F){F.x-=a,F.y-=g}),lo(M,"x")&&(M.x-=a),lo(M,"y")&&(M.y-=g)}),v.width=f-a+b,v.height=w-g+E}function AVe(i){yr(i.edges(),function(a){var f=i.edge(a),g=i.node(a.v),w=i.node(a.w),v,b;f.points?(v=f.points[0],b=f.points[f.points.length-1]):(f.points=[],v=w,b=g),f.points.unshift(Ijt(g,v)),f.points.push(Ijt(w,b))})}function LVe(i){yr(i.edges(),function(a){var f=i.edge(a);if(lo(f,"x"))switch((f.labelpos==="l"||f.labelpos==="r")&&(f.width-=f.labeloffset),f.labelpos){case"l":f.x-=f.width/2+f.labeloffset;break;case"r":f.x+=f.width/2+f.labeloffset;break}})}function DVe(i){yr(i.edges(),function(a){var f=i.edge(a);f.reversed&&f.points.reverse()})}function MVe(i){yr(i.nodes(),function(a){if(i.children(a).length){var f=i.node(a),g=i.node(f.borderTop),w=i.node(f.borderBottom),v=i.node(GY(f.borderLeft)),b=i.node(GY(f.borderRight));f.width=Math.abs(b.x-v.x),f.height=Math.abs(w.y-g.y),f.x=v.x+f.width/2,f.y=g.y+f.height/2}}),yr(i.nodes(),function(a){i.node(a).dummy==="border"&&i.removeNode(a)})}function IVe(i){yr(i.edges(),function(a){if(a.v===a.w){var f=i.node(a.v);f.selfEdges||(f.selfEdges=[]),f.selfEdges.push({e:a,label:i.edge(a)}),i.removeEdge(a)}})}function OVe(i){var a=YY(i);yr(a,function(f){var g=0;yr(f,function(w,v){var b=i.node(w);b.order=v+g,yr(b.selfEdges,function(E){xD(i,"selfedge",{width:E.label.width,height:E.label.height,rank:b.rank,order:v+ ++g,e:E.e,label:E.label},"_se")}),delete b.selfEdges})})}function NVe(i){yr(i.nodes(),function(a){var f=i.node(a);if(f.dummy==="selfedge"){var g=i.node(f.e.v),w=g.x+g.width/2,v=g.y,b=f.x-w,E=g.height/2;i.setEdge(f.e,f.label),i.removeNode(a),f.label.points=[{x:w+2*b/3,y:v-E},{x:w+5*b/6,y:v-E},{x:w+b,y:v},{x:w+5*b/6,y:v+E},{x:w+2*b/3,y:v+E}],f.label.x=f.x,f.label.y=f.y}})}function _pt(i,a){return KY(KF(i,a),Number)}function Apt(i){var a={};return yr(i,function(f,g){a[g.toLowerCase()]=f}),a}function t$t(i,a){return!!i.children(a).length}function e$t(i){return Lpt(i.v)+":"+Lpt(i.w)+":"+Lpt(i.name)}var PVe=/:/g;function Lpt(i){return i?String(i).replace(PVe,"\\:"):""}function a4(i,a){a&&i.attr("style",a)}function n$t(i,a,f){a&&i.attr("class",a).attr("class",f+" "+i.attr("class"))}function Jv(i,a){var f=a.graph();if(gFt(f)){var g=f.transition;if(ZL(g))return g(i)}return i}var Dpt={normal:BVe,vee:RVe,undirected:jVe};function FVe(i){Dpt=i}function BVe(i,a,f,g){var w=i.append("marker").attr("id",a).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),v=w.append("path").attr("d","M 0 0 L 10 5 L 0 10 z").style("stroke-width",1).style("stroke-dasharray","1,0");a4(v,f[g+"Style"]),f[g+"Class"]&&v.attr("class",f[g+"Class"])}function RVe(i,a,f,g){var w=i.append("marker").attr("id",a).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),v=w.append("path").attr("d","M 0 0 L 10 5 L 0 10 L 4 5 z").style("stroke-width",1).style("stroke-dasharray","1,0");a4(v,f[g+"Style"]),f[g+"Class"]&&v.attr("class",f[g+"Class"])}function jVe(i,a,f,g){var w=i.append("marker").attr("id",a).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),v=w.append("path").attr("d","M 0 5 L 10 5").style("stroke-width",1).style("stroke-dasharray","1,0");a4(v,f[g+"Style"]),f[g+"Class"]&&v.attr("class",f[g+"Class"])}function Mpt(i,a){var f=i.append("foreignObject").attr("width","100000"),g=f.append("xhtml:div");g.attr("xmlns","http://www.w3.org/1999/xhtml");var w=a.label;switch(typeof w){case"function":g.insert(w);break;case"object":g.insert(function(){return w});break;default:g.html(w)}a4(g,a.labelStyle),g.style("display","inline-block"),g.style("white-space","nowrap");var v=g.node().getBoundingClientRect();return f.attr("width",v.width).attr("height",v.height),f}function $Ve(i,a){var f=i;return f.node().appendChild(a.label),a4(f,a.labelStyle),f}function zVe(i,a){for(var f=i.append("text"),g=qVe(a.label).split(`

107 `;break;default:a+=g}f=!1}else g==="\\"?f=!0:a+=g;return a}function Ipt(i,a,f){var g=a.label,w=i.append("g");a.labelType==="svg"?$Ve(w,a):typeof g!="string"||a.labelType==="html"?Mpt(w,a):zVe(w,a);var v=w.node().getBBox(),b;switch(f){case"top":b=-a.height/2;break;case"bottom":b=a.height/2-v.height;break;default:b=-v.height/2}return w.attr("transform","translate("+-v.width/2+","+b+")"),w}var Opt=function(i,a){var f=a.nodes().filter(function(v){return t$t(a,v)}),g=i.selectAll("g.cluster").data(f,function(v){return v});Jv(g.exit(),a).style("opacity",0).remove();var w=g.enter().append("g").attr("class","cluster").attr("id",function(v){var b=a.node(v);return b.id}).style("opacity",0).each(function(v){var b=a.node(v),E=Tr(this);Tr(this).append("rect");var S=E.append("g").attr("class","label");Ipt(S,b,b.clusterLabelPos)});return g=g.merge(w),g=Jv(g,a).style("opacity",1),g.selectAll("rect").each(function(v){var b=a.node(v),E=Tr(this);a4(E,b.style)}),g};function HVe(i){Opt=i}let Npt=function(i,a){var f=i.selectAll("g.edgeLabel").data(a.edges(),function(w){return e$t(w)}).classed("update",!0);f.exit().remove(),f.enter().append("g").classed("edgeLabel",!0).style("opacity",0),f=i.selectAll("g.edgeLabel"),f.each(function(w){var v=Tr(this);v.select(".label").remove();var b=a.edge(w),E=Ipt(v,a.edge(w),0).classed("label",!0),S=E.node().getBBox();b.labelId&&E.attr("id",b.labelId),lo(b,"width")||(b.width=S.width),lo(b,"height")||(b.height=S.height)});var g;return f.exit?g=f.exit():g=f.selectAll(null),Jv(g,a).style("opacity",0).remove(),f};function VVe(i){Npt=i}function r$t(i,a){return i.intersect(a)}var Ppt=function(i,a,f){var g=i.selectAll("g.edgePath").data(a.edges(),function(b){return e$t(b)}).classed("update",!0),w=YVe(g,a);XVe(g,a);var v=g.merge!==void 0?g.merge(w):g;return Jv(v,a).style("opacity",1),v.each(function(b){var E=Tr(this),S=a.edge(b);S.elem=this,S.id&&E.attr("id",S.id),n$t(E,S.class,(E.classed("update")?"update ":"")+"edgePath")}),v.selectAll("path.path").each(function(b){var E=a.edge(b);E.arrowheadId=WY("arrowhead");var S=Tr(this).attr("marker-end",function(){return"url("+GVe(location.href,E.arrowheadId)+")"}).style("fill","none");Jv(S,a).attr("d",function(_){return KVe(a,_)}),a4(S,E.style)}),v.selectAll("defs *").remove(),v.selectAll("defs").each(function(b){var E=a.edge(b),S=f[E.arrowhead];S(Tr(this),E.arrowheadId,E,"arrowhead")}),v};function UVe(i){Ppt=i}function GVe(i,a){var f=i.split("#")[0];return f+"#"+a}function KVe(i,a){var f=i.edge(a),g=i.node(a.v),w=i.node(a.w),v=f.points.slice(1,f.points.length-1);return v.unshift(r$t(g,v[0])),v.push(r$t(w,v[v.length-1])),i$t(f,v)}function i$t(i,a){var f=(Ax||TAe.line)().x(function(g){return g.x}).y(function(g){return g.y});return(f.curve||f.interpolate)(i.curve),f(a)}function WVe(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 YVe(i,a){var f=i.enter().append("g").attr("class","edgePath").style("opacity",0);return f.append("path").attr("class","path").attr("d",function(g){var w=a.edge(g),v=a.node(g.v).elem,b=M9(w.points.length).map(function(){return WVe(v)});return i$t(w,b)}),f.append("defs"),f}function XVe(i,a){var f=i.exit();Jv(f,a).style("opacity",0).remove()}var Fpt=function(i,a,f){var g=a.nodes().filter(function(b){return!t$t(a,b)}),w=i.selectAll("g.node").data(g,function(b){return b}).classed("update",!0);w.exit().remove(),w.enter().append("g").attr("class","node").style("opacity",0),w=i.selectAll("g.node"),w.each(function(b){var E=a.node(b),S=Tr(this);n$t(S,E.class,(S.classed("update")?"update ":"")+"node"),S.select("g.label").remove();var _=S.append("g").attr("class","label"),M=Ipt(_,E),F=f[E.shape],R=KF(M.node().getBBox(),"width","height");E.elem=this,E.id&&S.attr("id",E.id),E.labelId&&_.attr("id",E.labelId),lo(E,"width")&&(R.width=E.width),lo(E,"height")&&(R.height=E.height),R.width+=E.paddingLeft+E.paddingRight,R.height+=E.paddingTop+E.paddingBottom,_.attr("transform","translate("+(E.paddingLeft-E.paddingRight)/2+","+(E.paddingTop-E.paddingBottom)/2+")");var B=Tr(this);B.select(".label-container").remove();var z=F(B,R,E).classed("label-container",!0);a4(z,E.style);var Y=z.node().getBBox();E.width=Y.width,E.height=Y.height});var v;return w.exit?v=w.exit():v=w.selectAll(null),Jv(v,a).style("opacity",0).remove(),w};function QVe(i){Fpt=i}function JVe(i,a){var f=i.filter(function(){return!Tr(this).classed("update")});function g(w){var v=a.node(w);return"translate("+v.x+","+v.y+")"}f.attr("transform",g),Jv(i,a).style("opacity",1).attr("transform",g),Jv(f.selectAll("rect"),a).attr("width",function(w){return a.node(w).width}).attr("height",function(w){return a.node(w).height}).attr("x",function(w){var v=a.node(w);return-v.width/2}).attr("y",function(w){var v=a.node(w);return-v.height/2})}function ZVe(i,a){var f=i.filter(function(){return!Tr(this).classed("update")});function g(w){var v=a.edge(w);return lo(v,"x")?"translate("+v.x+","+v.y+")":""}f.attr("transform",g),Jv(i,a).style("opacity",1).attr("transform",g)}function tUe(i,a){var f=i.filter(function(){return!Tr(this).classed("update")});function g(w){var v=a.node(w);return"translate("+v.x+","+v.y+")"}f.attr("transform",g),Jv(i,a).style("opacity",1).attr("transform",g)}function s$t(i,a,f,g){var w=i.x,v=i.y,b=w-g.x,E=v-g.y,S=Math.sqrt(a*a*E*E+f*f*b*b),_=Math.abs(a*f*b/S);g.x<w&&(_=-_);var M=Math.abs(a*f*E/S);return g.y<v&&(M=-M),{x:w+_,y:v+M}}function eUe(i,a,f){return s$t(i,a,a,f)}function nUe(i,a,f,g){var w,v,b,E,S,_,M,F,R,B,z,Y,nt,ot,ft;if(w=a.y-i.y,b=i.x-a.x,S=a.x*i.y-i.x*a.y,R=w*f.x+b*f.y+S,B=w*g.x+b*g.y+S,!(R!==0&&B!==0&&a$t(R,B))&&(v=g.y-f.y,E=f.x-g.x,_=g.x*f.y-f.x*g.y,M=v*i.x+E*i.y+_,F=v*a.x+E*a.y+_,!(M!==0&&F!==0&&a$t(M,F))&&(z=w*E-v*b,z!==0)))return Y=Math.abs(z/2),nt=b*_-E*S,ot=nt<0?(nt-Y)/z:(nt+Y)/z,nt=v*S-w*_,ft=nt<0?(nt-Y)/z:(nt+Y)/z,{x:ot,y:ft}}function a$t(i,a){return i*a>0}function o4(i,a,f){var g=i.x,w=i.y,v=[],b=Number.POSITIVE_INFINITY,E=Number.POSITIVE_INFINITY;a.forEach(function(z){b=Math.min(b,z.x),E=Math.min(E,z.y)});for(var S=g-i.width/2-b,_=w-i.height/2-E,M=0;M<a.length;M++){var F=a[M],R=a[M<a.length-1?M+1:0],B=nUe(i,f,{x:S+F.x,y:_+F.y},{x:S+R.x,y:_+R.y});B&&v.push(B)}return v.length?(v.length>1&&v.sort(function(z,Y){var nt=z.x-f.x,ot=z.y-f.y,ft=Math.sqrt(nt*nt+ot*ot),wt=Y.x-f.x,mt=Y.y-f.y,ct=Math.sqrt(wt*wt+mt*mt);return ft<ct?-1:ft===ct?0:1}),v[0]):(console.log("NO INTERSECTION FOUND, RETURN NODE CENTER",i),i)}function Bpt(i,a){var f=i.x,g=i.y,w=a.x-f,v=a.y-g,b=i.width/2,E=i.height/2,S,_;return Math.abs(v)*b>Math.abs(w)*E?(v<0&&(E=-E),S=v===0?0:E*w/v,_=E):(w<0&&(b=-b),S=b,_=w===0?0:b*v/w),{x:f+S,y:g+_}}var Rpt={rect:iUe,ellipse:sUe,circle:aUe,diamond:oUe};function rUe(i){Rpt=i}function iUe(i,a,f){var g=i.insert("rect",":first-child").attr("rx",f.rx).attr("ry",f.ry).attr("x",-a.width/2).attr("y",-a.height/2).attr("width",a.width).attr("height",a.height);return f.intersect=function(w){return Bpt(f,w)},g}function sUe(i,a,f){var g=a.width/2,w=a.height/2,v=i.insert("ellipse",":first-child").attr("x",-a.width/2).attr("y",-a.height/2).attr("rx",g).attr("ry",w);return f.intersect=function(b){return s$t(f,g,w,b)},v}function aUe(i,a,f){var g=Math.max(a.width,a.height)/2,w=i.insert("circle",":first-child").attr("x",-a.width/2).attr("y",-a.height/2).attr("r",g);return f.intersect=function(v){return eUe(f,g,v)},w}function oUe(i,a,f){var g=a.width*Math.SQRT2/2,w=a.height*Math.SQRT2/2,v=[{x:0,y:-w},{x:-g,y:0},{x:0,y:w},{x:g,y:0}],b=i.insert("polygon",":first-child").attr("points",v.map(function(E){return E.x+","+E.y}).join(" "));return f.intersect=function(E){return o4(f,v,E)},b}function cUe(){var i=function(a,f){hUe(f);var g=JF(a,"output"),w=JF(g,"clusters"),v=JF(g,"edgePaths"),b=Npt(JF(g,"edgeLabels"),f),E=Fpt(JF(g,"nodes"),f,Rpt);kD(f),tUe(E,f),ZVe(b,f),Ppt(v,f,Dpt);var S=Opt(w,f);JVe(S,f),fUe(f)};return i.createNodes=function(a){return arguments.length?(QVe(a),i):Fpt},i.createClusters=function(a){return arguments.length?(HVe(a),i):Opt},i.createEdgeLabels=function(a){return arguments.length?(VVe(a),i):Npt},i.createEdgePaths=function(a){return arguments.length?(UVe(a),i):Ppt},i.shapes=function(a){return arguments.length?(rUe(a),i):Rpt},i.arrows=function(a){return arguments.length?(FVe(a),i):Dpt},i}var uUe={paddingLeft:10,paddingRight:10,paddingTop:10,paddingBottom:10,rx:0,ry:0,shape:"rect"},lUe={arrowhead:"normal",curve:Kg};function hUe(i){i.nodes().forEach(function(a){var f=i.node(a);!lo(f,"label")&&!i.children(a).length&&(f.label=a),lo(f,"paddingX")&&yD(f,{paddingLeft:f.paddingX,paddingRight:f.paddingX}),lo(f,"paddingY")&&yD(f,{paddingTop:f.paddingY,paddingBottom:f.paddingY}),lo(f,"padding")&&yD(f,{paddingLeft:f.padding,paddingRight:f.padding,paddingTop:f.padding,paddingBottom:f.padding}),yD(f,uUe),yr(["paddingLeft","paddingRight","paddingTop","paddingBottom"],function(g){f[g]=Number(f[g])}),lo(f,"width")&&(f._prevWidth=f.width),lo(f,"height")&&(f._prevHeight=f.height)}),i.edges().forEach(function(a){var f=i.edge(a);lo(f,"label")||(f.label=""),yD(f,lUe)})}function fUe(i){yr(i.nodes(),function(a){var f=i.node(a);lo(f,"_prevWidth")?f.width=f._prevWidth:delete f.width,lo(f,"_prevHeight")?f.height=f._prevHeight:delete f.height,delete f._prevWidth,delete f._prevHeight})}function JF(i,a){var f=i.select("g."+a);return f.empty()&&(f=i.append("g").attr("class",a)),f}function o$t(i,a,f){const g=a.width,w=a.height,v=(g+w)*.9,b=[{x:v/2,y:0},{x:v,y:-v/2},{x:v/2,y:-v},{x:0,y:-v/2}],E=Rx(i,v,v,b);return f.intersect=function(S){return o4(f,b,S)},E}function c$t(i,a,f){const w=a.height,v=w/4,b=a.width+2*v,E=[{x:v,y:0},{x:b-v,y:0},{x:b,y:-w/2},{x:b-v,y:-w},{x:v,y:-w},{x:0,y:-w/2}],S=Rx(i,b,w,E);return f.intersect=function(_){return o4(f,E,_)},S}function u$t(i,a,f){const g=a.width,w=a.height,v=[{x:-w/2,y:0},{x:g,y:0},{x:g,y:-w},{x:-w/2,y:-w},{x:0,y:-w/2}],b=Rx(i,g,w,v);return f.intersect=function(E){return o4(f,v,E)},b}function l$t(i,a,f){const g=a.width,w=a.height,v=[{x:-2*w/6,y:0},{x:g-w/6,y:0},{x:g+2*w/6,y:-w},{x:w/6,y:-w}],b=Rx(i,g,w,v);return f.intersect=function(E){return o4(f,v,E)},b}function h$t(i,a,f){const g=a.width,w=a.height,v=[{x:2*w/6,y:0},{x:g+w/6,y:0},{x:g-2*w/6,y:-w},{x:-w/6,y:-w}],b=Rx(i,g,w,v);return f.intersect=function(E){return o4(f,v,E)},b}function f$t(i,a,f){const g=a.width,w=a.height,v=[{x:-2*w/6,y:0},{x:g+2*w/6,y:0},{x:g-w/6,y:-w},{x:w/6,y:-w}],b=Rx(i,g,w,v);return f.intersect=function(E){return o4(f,v,E)},b}function d$t(i,a,f){const g=a.width,w=a.height,v=[{x:w/6,y:0},{x:g-w/6,y:0},{x:g+2*w/6,y:-w},{x:-2*w/6,y:-w}],b=Rx(i,g,w,v);return f.intersect=function(E){return o4(f,v,E)},b}function g$t(i,a,f){const g=a.width,w=a.height,v=[{x:0,y:0},{x:g+w/2,y:0},{x:g,y:-w/2},{x:g+w/2,y:-w},{x:0,y:-w}],b=Rx(i,g,w,v);return f.intersect=function(E){return o4(f,v,E)},b}function p$t(i,a,f){const g=a.height,w=a.width+g/4,v=i.insert("rect",":first-child").attr("rx",g/2).attr("ry",g/2).attr("x",-w/2).attr("y",-g/2).attr("width",w).attr("height",g);return f.intersect=function(b){return Bpt(f,b)},v}function b$t(i,a,f){const g=a.width,w=a.height,v=[{x:0,y:0},{x:g,y:0},{x:g,y:-w},{x:0,y:-w},{x:0,y:0},{x:-8,y:0},{x:g+8,y:0},{x:g+8,y:-w},{x:-8,y:-w},{x:-8,y:0}],b=Rx(i,g,w,v);return f.intersect=function(E){return o4(f,v,E)},b}function w$t(i,a,f){const g=a.width,w=g/2,v=w/(2.5+g/50),b=a.height+v,E="M 0,"+v+" a "+w+","+v+" 0,0,0 "+g+" 0 a "+w+","+v+" 0,0,0 "+-g+" 0 l 0,"+b+" a "+w+","+v+" 0,0,0 "+g+" 0 l 0,"+-b,S=i.attr("label-offset-y",v).insert("path",":first-child").attr("d",E).attr("transform","translate("+-g/2+","+-(b/2+v)+")");return f.intersect=function(_){const M=Bpt(f,_),F=M.x-f.x;if(w!=0&&(Math.abs(F)<f.width/2||Math.abs(F)==f.width/2&&Math.abs(M.y-f.y)>f.height/2-v)){let R=v*v*(1-F*F/(w*w));R!=0&&(R=Math.sqrt(R)),R=v-R,_.y-f.y>0&&(R=-R),M.y+=R}return M},S}function dUe(i){i.shapes().question=o$t,i.shapes().hexagon=c$t,i.shapes().stadium=p$t,i.shapes().subroutine=b$t,i.shapes().cylinder=w$t,i.shapes().rect_left_inv_arrow=u$t,i.shapes().lean_right=l$t,i.shapes().lean_left=h$t,i.shapes().trapezoid=f$t,i.shapes().inv_trapezoid=d$t,i.shapes().rect_right_inv_arrow=g$t}function gUe(i){i({question:o$t}),i({hexagon:c$t}),i({stadium:p$t}),i({subroutine:b$t}),i({cylinder:w$t}),i({rect_left_inv_arrow:u$t}),i({lean_right:l$t}),i({lean_left:h$t}),i({trapezoid:f$t}),i({inv_trapezoid:d$t}),i({rect_right_inv_arrow:g$t})}function Rx(i,a,f,g){return i.insert("polygon",":first-child").attr("points",g.map(function(w){return w.x+","+w.y}).join(" ")).attr("transform","translate("+-a/2+","+f/2+")")}const pUe={addToRender:dUe,addToRenderV2:gUe},m$t={},bUe=function(i){const a=Object.keys(i);for(const f of a)m$t[f]=i[f]},v$t=function(i,a,f,g,w,v){const b=g?g.select(`[id="${f}"]`):Tr(`[id="${f}"]`),E=w||document;Object.keys(i).forEach(function(_){const M=i[_];let F="default";M.classes.length>0&&(F=M.classes.join(" "));const R=C2(M.styles);let B=M.text!==void 0?M.text:M.id,z;if(j1(Re().flowchart.htmlLabels)){const ot={label:B.replace(/fa[blrs]?:fa-[\w-]+/g,ft=>`<i class='${ft.replace(":"," ")}'></i>`)};z=Mpt(b,ot).node(),z.parentNode.removeChild(z)}else{const ot=E.createElementNS("http://www.w3.org/2000/svg","text");ot.setAttribute("style",R.labelStyle.replace("color:","fill:"));const ft=B.split(ei.lineBreakRegex);for(const wt of ft){const mt=E.createElementNS("http://www.w3.org/2000/svg","tspan");mt.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),mt.setAttribute("dy","1em"),mt.setAttribute("x","1"),mt.textContent=wt,ot.appendChild(mt)}z=ot}let Y=0,nt="";switch(M.type){case"round":Y=5,nt="rect";break;case"square":nt="rect";break;case"diamond":nt="question";break;case"hexagon":nt="hexagon";break;case"odd":nt="rect_left_inv_arrow";break;case"lean_right":nt="lean_right";break;case"lean_left":nt="lean_left";break;case"trapezoid":nt="trapezoid";break;case"inv_trapezoid":nt="inv_trapezoid";break;case"odd_right":nt="rect_left_inv_arrow";break;case"circle":nt="circle";break;case"ellipse":nt="ellipse";break;case"stadium":nt="stadium";break;case"subroutine":nt="subroutine";break;case"cylinder":nt="cylinder";break;case"group":nt="rect";break;default:nt="rect"}Kt.warn("Adding node",M.id,M.domId),a.setNode(v.db.lookUpDomId(M.id),{labelType:"svg",labelStyle:R.labelStyle,shape:nt,label:z,rx:Y,ry:Y,class:F,style:R.style,id:v.db.lookUpDomId(M.id)})})},y$t=function(i,a,f){let g=0,w,v;if(i.defaultStyle!==void 0){const b=C2(i.defaultStyle);w=b.style,v=b.labelStyle}i.forEach(function(b){g++;const E="L-"+b.start+"-"+b.end,S="LS-"+b.start,_="LE-"+b.end,M={};b.type==="arrow_open"?M.arrowhead="none":M.arrowhead="normal";let F="",R="";if(b.style!==void 0){const B=C2(b.style);F=B.style,R=B.labelStyle}else switch(b.stroke){case"normal":F="fill:none",w!==void 0&&(F=w),v!==void 0&&(R=v);break;case"dotted":F="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":F=" stroke-width: 3.5px;fill:none";break}M.style=F,M.labelStyle=R,b.interpolate!==void 0?M.curve=Xw(b.interpolate,Kg):i.defaultInterpolate!==void 0?M.curve=Xw(i.defaultInterpolate,Kg):M.curve=Xw(m$t.curve,Kg),b.text===void 0?b.style!==void 0&&(M.arrowheadStyle="fill: #333"):(M.arrowheadStyle="fill: #333",M.labelpos="c",j1(Re().flowchart.htmlLabels)?(M.labelType="html",M.label=`<span id="L-${E}" class="edgeLabel L-${S}' L-${_}" style="${M.labelStyle}">${b.text.replace(/fa[blrs]?:fa-[\w-]+/g,B=>`<i class='${B.replace(":"," ")}'></i>`)}</span>`):(M.labelType="text",M.label=b.text.replace(ei.lineBreakRegex,`
108 `),b.style===void 0&&(M.style=M.style||"stroke: #333; stroke-width: 1.5px;fill:none"),M.labelStyle=M.labelStyle.replace("color:","fill:"))),M.id=E,M.class=S+" "+_,M.minlen=b.length||1,a.setEdge(f.db.lookUpDomId(b.start),f.db.lookUpDomId(b.end),M,g)})},wUe={setConf:bUe,addVertices:v$t,addEdges:y$t,getClasses:function(i,a){return Kt.info("Extracting classes"),a.db.getClasses()},draw:function(i,a,f,g){Kt.info("Drawing flowchart");const{securityLevel:w,flowchart:v}=Re();let b;w==="sandbox"&&(b=Tr("#i"+a));const E=Tr(w==="sandbox"?b.nodes()[0].contentDocument.body:"body"),S=w==="sandbox"?b.nodes()[0].contentDocument:document;let _=g.db.getDirection();_===void 0&&(_="TD");const M=v.nodeSpacing||50,F=v.rankSpacing||50,R=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:_,nodesep:M,ranksep:F,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});let B;const z=g.db.getSubGraphs();for(let rt=z.length-1;rt>=0;rt--)B=z[rt],g.db.addVertex(B.id,B.title,"group",void 0,B.classes);const Y=g.db.getVertices();Kt.warn("Get vertices",Y);const nt=g.db.getEdges();let ot=0;for(ot=z.length-1;ot>=0;ot--){B=z[ot],$Ot("cluster").append("text");for(let rt=0;rt<B.nodes.length;rt++)Kt.warn("Setting subgraph",B.nodes[rt],g.db.lookUpDomId(B.nodes[rt]),g.db.lookUpDomId(B.id)),R.setParent(g.db.lookUpDomId(B.nodes[rt]),g.db.lookUpDomId(B.id))}v$t(Y,R,a,E,S,g),y$t(nt,R,g);const ft=new cUe;pUe.addToRender(ft),ft.arrows().none=function(it,gt,Q,dt){const yt=it.append("marker").attr("id",gt).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");a4(yt,Q[dt+"Style"])},ft.arrows().normal=function(it,gt){it.append("marker").attr("id",gt).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 wt=E.select(`[id="${a}"]`),mt=E.select("#"+a+" g");for(ft(mt,R),mt.selectAll("g.node").attr("title",function(){return g.db.getTooltip(this.id)}),g.db.indexNodes("subGraph"+ot),ot=0;ot<z.length;ot++)if(B=z[ot],B.title!=="undefined"){const rt=S.querySelectorAll("#"+a+' [id="'+g.db.lookUpDomId(B.id)+'"] rect'),it=S.querySelectorAll("#"+a+' [id="'+g.db.lookUpDomId(B.id)+'"]'),gt=rt[0].x.baseVal.value,Q=rt[0].y.baseVal.value,dt=rt[0].width.baseVal.value,yt=Tr(it[0]).select(".label");yt.attr("transform",`translate(${gt+dt/2}, ${Q+14})`),yt.attr("id",a+"Text");for(let V=0;V<B.classes.length;V++)it[0].classList.add(B.classes[V])}if(!v.htmlLabels){const rt=S.querySelectorAll('[id="'+a+'"] .edgeLabel .label');for(const it of rt){const gt=it.getBBox(),Q=S.createElementNS("http://www.w3.org/2000/svg","rect");Q.setAttribute("rx",0),Q.setAttribute("ry",0),Q.setAttribute("width",gt.width),Q.setAttribute("height",gt.height),it.insertBefore(Q,it.firstChild)}}w8(R,wt,v.diagramPadding,v.useMaxWidth),Object.keys(Y).forEach(function(rt){const it=Y[rt];if(it.link){const gt=E.select("#"+a+' [id="'+g.db.lookUpDomId(rt)+'"]');if(gt){const Q=S.createElementNS("http://www.w3.org/2000/svg","a");Q.setAttributeNS("http://www.w3.org/2000/svg","class",it.classes.join(" ")),Q.setAttributeNS("http://www.w3.org/2000/svg","href",it.link),Q.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),w==="sandbox"?Q.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):it.linkTarget&&Q.setAttributeNS("http://www.w3.org/2000/svg","target",it.linkTarget);const dt=gt.insert(function(){return Q},":first-child"),K=gt.select(".label-container");K&&dt.append(function(){return K.node()});const yt=gt.select(".label");yt&&dt.append(function(){return yt.node()})}}})}};function jx(i){var a={options:{directed:i.isDirected(),multigraph:i.isMultigraph(),compound:i.isCompound()},nodes:mUe(i),edges:vUe(i)};return Tf(i.graph())||(a.value=fjt(i.graph())),a}function mUe(i){return u1(i.nodes(),function(a){var f=i.node(a),g=i.parent(a),w={v:a};return Tf(f)||(w.value=f),Tf(g)||(w.parent=g),w})}function vUe(i){return u1(i.edges(),function(a){var f=i.edge(a),g={v:a.v,w:a.w};return Tf(a.name)||(g.name=a.name),Tf(f)||(g.value=f),g})}const yUe=(i,a,f,g)=>{a.forEach(w=>{xUe[w](i,f,g)})},xUe={extension:(i,a,f)=>{Kt.trace("Making markers for ",f),i.append("defs").append("marker").attr("id",f+"_"+a+"-extensionStart").attr("class","marker extension "+a).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),i.append("defs").append("marker").attr("id",f+"_"+a+"-extensionEnd").attr("class","marker extension "+a).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},composition:(i,a,f)=>{i.append("defs").append("marker").attr("id",f+"_"+a+"-compositionStart").attr("class","marker composition "+a).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id",f+"_"+a+"-compositionEnd").attr("class","marker composition "+a).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},aggregation:(i,a,f)=>{i.append("defs").append("marker").attr("id",f+"_"+a+"-aggregationStart").attr("class","marker aggregation "+a).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id",f+"_"+a+"-aggregationEnd").attr("class","marker aggregation "+a).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},dependency:(i,a,f)=>{i.append("defs").append("marker").attr("id",f+"_"+a+"-dependencyStart").attr("class","marker dependency "+a).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),i.append("defs").append("marker").attr("id",f+"_"+a+"-dependencyEnd").attr("class","marker dependency "+a).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},lollipop:(i,a,f)=>{i.append("defs").append("marker").attr("id",f+"_"+a+"-lollipopStart").attr("class","marker lollipop "+a).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),i.append("defs").append("marker").attr("id",f+"_"+a+"-lollipopEnd").attr("class","marker lollipop "+a).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},point:(i,a,f)=>{i.append("marker").attr("id",f+"_"+a+"-pointEnd").attr("class","marker "+a).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),i.append("marker").attr("id",f+"_"+a+"-pointStart").attr("class","marker "+a).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},circle:(i,a,f)=>{i.append("marker").attr("id",f+"_"+a+"-circleEnd").attr("class","marker "+a).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),i.append("marker").attr("id",f+"_"+a+"-circleStart").attr("class","marker "+a).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},cross:(i,a,f)=>{i.append("marker").attr("id",f+"_"+a+"-crossEnd").attr("class","marker cross "+a).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),i.append("marker").attr("id",f+"_"+a+"-crossStart").attr("class","marker cross "+a).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},barb:(i,a,f)=>{i.append("defs").append("marker").attr("id",f+"_"+a+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")}},jpt=yUe;function kUe(i,a){a&&i.attr("style",a)}function EUe(i){const a=Tr(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),f=a.append("xhtml:div"),g=i.label,w=i.isNode?"nodeLabel":"edgeLabel";return f.html('<span class="'+w+'" '+(i.labelStyle?'style="'+i.labelStyle+'"':"")+">"+g+"</span>"),kUe(f,i.labelStyle),f.style("display","inline-block"),f.style("white-space","nowrap"),f.attr("xmlns","http://www.w3.org/1999/xhtml"),a.node()}const ab=(i,a,f,g)=>{let w=i||"";if(typeof w=="object"&&(w=w[0]),j1(Re().flowchart.htmlLabels)){w=w.replace(/\\n|\n/g,"<br />"),Kt.debug("vertexText"+w);const v={isNode:g,label:IF(w).replace(/fa[blrs]?:fa-[\w-]+/g,E=>`<i class='${E.replace(":"," ")}'></i>`),labelStyle:a.replace("fill:","color:")};return EUe(v)}else{const v=document.createElementNS("http://www.w3.org/2000/svg","text");v.setAttribute("style",a.replace("color:","fill:"));let b=[];typeof w=="string"?b=w.split(/\\n|\n|<br\s*\/?>/gi):Array.isArray(w)?b=w:b=[];for(const E of b){const S=document.createElementNS("http://www.w3.org/2000/svg","tspan");S.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),S.setAttribute("dy","1em"),S.setAttribute("x","0"),f?S.setAttribute("class","title-row"):S.setAttribute("class","row"),S.textContent=E.trim(),v.appendChild(S)}return v}},TUe={};function CUe(i,a){const f=a||TUe,g=typeof f.includeImageAlt=="boolean"?f.includeImageAlt:!0,w=typeof f.includeHtml=="boolean"?f.includeHtml:!0;return x$t(i,g,w)}function x$t(i,a,f){if(SUe(i)){if("value"in i)return i.type==="html"&&!f?"":i.value;if(a&&"alt"in i&&i.alt)return i.alt;if("children"in i)return k$t(i.children,a,f)}return Array.isArray(i)?k$t(i,a,f):""}function k$t(i,a,f){const g=[];let w=-1;for(;++w<i.length;)g[w]=x$t(i[w],a,f);return g.join("")}function SUe(i){return!!(i&&typeof i=="object")}function c4(i,a,f,g){const w=i.length;let v=0,b;if(a<0?a=-a>w?0:w+a:a=a>w?w:a,f=f>0?f:0,g.length<1e4)b=Array.from(g),b.unshift(a,f),i.splice(...b);else for(f&&i.splice(a,f);v<g.length;)b=g.slice(v,v+1e4),b.unshift(a,0),i.splice(...b),v+=1e4,a+=1e4}function tm(i,a){return i.length>0?(c4(i,i.length,0,a),i):a}const E$t={}.hasOwnProperty;function _Ue(i){const a={};let f=-1;for(;++f<i.length;)AUe(a,i[f]);return a}function AUe(i,a){let f;for(f in a){const w=(E$t.call(i,f)?i[f]:void 0)||(i[f]={}),v=a[f];let b;if(v)for(b in v){E$t.call(w,b)||(w[b]=[]);const E=v[b];LUe(w[b],Array.isArray(E)?E:E?[E]:[])}}}function LUe(i,a){let f=-1;const g=[];for(;++f<a.length;)(a[f].add==="after"?i:g).push(a[f]);c4(i,0,0,g)}const DUe=/[!-\/:-@\[-`\{-~\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061D-\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C77\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1B7D\u1B7E\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4F\u2E52-\u2E5D\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]/,u4=E8(/[A-Za-z]/),Zv=E8(/[\dA-Za-z]/),MUe=E8(/[#-'*+\--9=?A-Z^-~]/);function $pt(i){return i!==null&&(i<32||i===127)}const zpt=E8(/\d/),IUe=E8(/[\dA-Fa-f]/),OUe=E8(/[!-/:-@[-`{-~]/);function $a(i){return i!==null&&i<-2}function ob(i){return i!==null&&(i<0||i===32)}function du(i){return i===-2||i===-1||i===32}const NUe=E8(DUe),PUe=E8(/\s/);function E8(i){return a;function a(f){return f!==null&&i.test(String.fromCharCode(f))}}function Cl(i,a,f,g){const w=g?g-1:Number.POSITIVE_INFINITY;let v=0;return b;function b(S){return du(S)?(i.enter(f),E(S)):a(S)}function E(S){return du(S)&&v++<w?(i.consume(S),E):(i.exit(f),a(S))}}const FUe={tokenize:BUe};function BUe(i){const a=i.attempt(this.parser.constructs.contentInitial,g,w);let f;return a;function g(E){if(E===null){i.consume(E);return}return i.enter("lineEnding"),i.consume(E),i.exit("lineEnding"),Cl(i,a,"linePrefix")}function w(E){return i.enter("paragraph"),v(E)}function v(E){const S=i.enter("chunkText",{contentType:"text",previous:f});return f&&(f.next=S),f=S,b(E)}function b(E){if(E===null){i.exit("chunkText"),i.exit("paragraph"),i.consume(E);return}return $a(E)?(i.consume(E),i.exit("chunkText"),v):(i.consume(E),b)}}const RUe={tokenize:jUe},T$t={tokenize:$Ue};function jUe(i){const a=this,f=[];let g=0,w,v,b;return E;function E(wt){if(g<f.length){const mt=f[g];return a.containerState=mt[1],i.attempt(mt[0].continuation,S,_)(wt)}return _(wt)}function S(wt){if(g++,a.containerState._closeFlow){a.containerState._closeFlow=void 0,w&&ft();const mt=a.events.length;let ct=mt,rt;for(;ct--;)if(a.events[ct][0]==="exit"&&a.events[ct][1].type==="chunkFlow"){rt=a.events[ct][1].end;break}ot(g);let it=mt;for(;it<a.events.length;)a.events[it][1].end=Object.assign({},rt),it++;return c4(a.events,ct+1,0,a.events.slice(mt)),a.events.length=it,_(wt)}return E(wt)}function _(wt){if(g===f.length){if(!w)return R(wt);if(w.currentConstruct&&w.currentConstruct.concrete)return z(wt);a.interrupt=!!(w.currentConstruct&&!w._gfmTableDynamicInterruptHack)}return a.containerState={},i.check(T$t,M,F)(wt)}function M(wt){return w&&ft(),ot(g),R(wt)}function F(wt){return a.parser.lazy[a.now().line]=g!==f.length,b=a.now().offset,z(wt)}function R(wt){return a.containerState={},i.attempt(T$t,B,z)(wt)}function B(wt){return g++,f.push([a.currentConstruct,a.containerState]),R(wt)}function z(wt){if(wt===null){w&&ft(),ot(0),i.consume(wt);return}return w=w||a.parser.flow(a.now()),i.enter("chunkFlow",{contentType:"flow",previous:v,_tokenizer:w}),Y(wt)}function Y(wt){if(wt===null){nt(i.exit("chunkFlow"),!0),ot(0),i.consume(wt);return}return $a(wt)?(i.consume(wt),nt(i.exit("chunkFlow")),g=0,a.interrupt=void 0,E):(i.consume(wt),Y)}function nt(wt,mt){const ct=a.sliceStream(wt);if(mt&&ct.push(null),wt.previous=v,v&&(v.next=wt),v=wt,w.defineSkip(wt.start),w.write(ct),a.parser.lazy[wt.start.line]){let rt=w.events.length;for(;rt--;)if(w.events[rt][1].start.offset<b&&(!w.events[rt][1].end||w.events[rt][1].end.offset>b))return;const it=a.events.length;let gt=it,Q,dt;for(;gt--;)if(a.events[gt][0]==="exit"&&a.events[gt][1].type==="chunkFlow"){if(Q){dt=a.events[gt][1].end;break}Q=!0}for(ot(g),rt=it;rt<a.events.length;)a.events[rt][1].end=Object.assign({},dt),rt++;c4(a.events,gt+1,0,a.events.slice(it)),a.events.length=rt}}function ot(wt){let mt=f.length;for(;mt-- >wt;){const ct=f[mt];a.containerState=ct[1],ct[0].exit.call(a,i)}f.length=wt}function ft(){w.write([null]),v=void 0,w=void 0,a.containerState._closeFlow=void 0}}function $Ue(i,a,f){return Cl(i,i.attempt(this.parser.constructs.document,a,f),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function C$t(i){if(i===null||ob(i)||PUe(i))return 1;if(NUe(i))return 2}function qpt(i,a,f){const g=[];let w=-1;for(;++w<i.length;){const v=i[w].resolveAll;v&&!g.includes(v)&&(a=v(a,f),g.push(v))}return a}const Hpt={name:"attention",tokenize:qUe,resolveAll:zUe};function zUe(i,a){let f=-1,g,w,v,b,E,S,_,M;for(;++f<i.length;)if(i[f][0]==="enter"&&i[f][1].type==="attentionSequence"&&i[f][1]._close){for(g=f;g--;)if(i[g][0]==="exit"&&i[g][1].type==="attentionSequence"&&i[g][1]._open&&a.sliceSerialize(i[g][1]).charCodeAt(0)===a.sliceSerialize(i[f][1]).charCodeAt(0)){if((i[g][1]._close||i[f][1]._open)&&(i[f][1].end.offset-i[f][1].start.offset)%3&&!((i[g][1].end.offset-i[g][1].start.offset+i[f][1].end.offset-i[f][1].start.offset)%3))continue;S=i[g][1].end.offset-i[g][1].start.offset>1&&i[f][1].end.offset-i[f][1].start.offset>1?2:1;const F=Object.assign({},i[g][1].end),R=Object.assign({},i[f][1].start);S$t(F,-S),S$t(R,S),b={type:S>1?"strongSequence":"emphasisSequence",start:F,end:Object.assign({},i[g][1].end)},E={type:S>1?"strongSequence":"emphasisSequence",start:Object.assign({},i[f][1].start),end:R},v={type:S>1?"strongText":"emphasisText",start:Object.assign({},i[g][1].end),end:Object.assign({},i[f][1].start)},w={type:S>1?"strong":"emphasis",start:Object.assign({},b.start),end:Object.assign({},E.end)},i[g][1].end=Object.assign({},b.start),i[f][1].start=Object.assign({},E.end),_=[],i[g][1].end.offset-i[g][1].start.offset&&(_=tm(_,[["enter",i[g][1],a],["exit",i[g][1],a]])),_=tm(_,[["enter",w,a],["enter",b,a],["exit",b,a],["enter",v,a]]),_=tm(_,qpt(a.parser.constructs.insideSpan.null,i.slice(g+1,f),a)),_=tm(_,[["exit",v,a],["enter",E,a],["exit",E,a],["exit",w,a]]),i[f][1].end.offset-i[f][1].start.offset?(M=2,_=tm(_,[["enter",i[f][1],a],["exit",i[f][1],a]])):M=0,c4(i,g-1,f-g+3,_),f=g+_.length-M-2;break}}for(f=-1;++f<i.length;)i[f][1].type==="attentionSequence"&&(i[f][1].type="data");return i}function qUe(i,a){const f=this.parser.constructs.attentionMarkers.null,g=this.previous,w=C$t(g);let v;return b;function b(S){return v=S,i.enter("attentionSequence"),E(S)}function E(S){if(S===v)return i.consume(S),E;const _=i.exit("attentionSequence"),M=C$t(S),F=!M||M===2&&w||f.includes(S),R=!w||w===2&&M||f.includes(g);return _._open=!!(v===42?F:F&&(w||!R)),_._close=!!(v===42?R:R&&(M||!F)),a(S)}}function S$t(i,a){i.column+=a,i.offset+=a,i._bufferIndex+=a}const HUe={name:"autolink",tokenize:VUe};function VUe(i,a,f){let g=0;return w;function w(B){return i.enter("autolink"),i.enter("autolinkMarker"),i.consume(B),i.exit("autolinkMarker"),i.enter("autolinkProtocol"),v}function v(B){return u4(B)?(i.consume(B),b):_(B)}function b(B){return B===43||B===45||B===46||Zv(B)?(g=1,E(B)):_(B)}function E(B){return B===58?(i.consume(B),g=0,S):(B===43||B===45||B===46||Zv(B))&&g++<32?(i.consume(B),E):(g=0,_(B))}function S(B){return B===62?(i.exit("autolinkProtocol"),i.enter("autolinkMarker"),i.consume(B),i.exit("autolinkMarker"),i.exit("autolink"),a):B===null||B===32||B===60||$pt(B)?f(B):(i.consume(B),S)}function _(B){return B===64?(i.consume(B),M):MUe(B)?(i.consume(B),_):f(B)}function M(B){return Zv(B)?F(B):f(B)}function F(B){return B===46?(i.consume(B),g=0,M):B===62?(i.exit("autolinkProtocol").type="autolinkEmail",i.enter("autolinkMarker"),i.consume(B),i.exit("autolinkMarker"),i.exit("autolink"),a):R(B)}function R(B){if((B===45||Zv(B))&&g++<63){const z=B===45?R:F;return i.consume(B),z}return f(B)}}const XY={tokenize:UUe,partial:!0};function UUe(i,a,f){return g;function g(v){return du(v)?Cl(i,w,"linePrefix")(v):w(v)}function w(v){return v===null||$a(v)?a(v):f(v)}}const _$t={name:"blockQuote",tokenize:GUe,continuation:{tokenize:KUe},exit:WUe};function GUe(i,a,f){const g=this;return w;function w(b){if(b===62){const E=g.containerState;return E.open||(i.enter("blockQuote",{_container:!0}),E.open=!0),i.enter("blockQuotePrefix"),i.enter("blockQuoteMarker"),i.consume(b),i.exit("blockQuoteMarker"),v}return f(b)}function v(b){return du(b)?(i.enter("blockQuotePrefixWhitespace"),i.consume(b),i.exit("blockQuotePrefixWhitespace"),i.exit("blockQuotePrefix"),a):(i.exit("blockQuotePrefix"),a(b))}}function KUe(i,a,f){const g=this;return w;function w(b){return du(b)?Cl(i,v,"linePrefix",g.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(b):v(b)}function v(b){return i.attempt(_$t,a,f)(b)}}function WUe(i){i.exit("blockQuote")}const A$t={name:"characterEscape",tokenize:YUe};function YUe(i,a,f){return g;function g(v){return i.enter("characterEscape"),i.enter("escapeMarker"),i.consume(v),i.exit("escapeMarker"),w}function w(v){return OUe(v)?(i.enter("characterEscapeValue"),i.consume(v),i.exit("characterEscapeValue"),i.exit("characterEscape"),a):f(v)}}const L$t=document.createElement("i");function Vpt(i){const a="&"+i+";";L$t.innerHTML=a;const f=L$t.textContent;return f.charCodeAt(f.length-1)===59&&i!=="semi"||f===a?!1:f}const D$t={name:"characterReference",tokenize:XUe};function XUe(i,a,f){const g=this;let w=0,v,b;return E;function E(F){return i.enter("characterReference"),i.enter("characterReferenceMarker"),i.consume(F),i.exit("characterReferenceMarker"),S}function S(F){return F===35?(i.enter("characterReferenceMarkerNumeric"),i.consume(F),i.exit("characterReferenceMarkerNumeric"),_):(i.enter("characterReferenceValue"),v=31,b=Zv,M(F))}function _(F){return F===88||F===120?(i.enter("characterReferenceMarkerHexadecimal"),i.consume(F),i.exit("characterReferenceMarkerHexadecimal"),i.enter("characterReferenceValue"),v=6,b=IUe,M):(i.enter("characterReferenceValue"),v=7,b=zpt,M(F))}function M(F){if(F===59&&w){const R=i.exit("characterReferenceValue");return b===Zv&&!Vpt(g.sliceSerialize(R))?f(F):(i.enter("characterReferenceMarker"),i.consume(F),i.exit("characterReferenceMarker"),i.exit("characterReference"),a)}return b(F)&&w++<v?(i.consume(F),M):f(F)}}const M$t={tokenize:JUe,partial:!0},I$t={name:"codeFenced",tokenize:QUe,concrete:!0};function QUe(i,a,f){const g=this,w={tokenize:ct,partial:!0};let v=0,b=0,E;return S;function S(rt){return _(rt)}function _(rt){const it=g.events[g.events.length-1];return v=it&&it[1].type==="linePrefix"?it[2].sliceSerialize(it[1],!0).length:0,E=rt,i.enter("codeFenced"),i.enter("codeFencedFence"),i.enter("codeFencedFenceSequence"),M(rt)}function M(rt){return rt===E?(b++,i.consume(rt),M):b<3?f(rt):(i.exit("codeFencedFenceSequence"),du(rt)?Cl(i,F,"whitespace")(rt):F(rt))}function F(rt){return rt===null||$a(rt)?(i.exit("codeFencedFence"),g.interrupt?a(rt):i.check(M$t,Y,mt)(rt)):(i.enter("codeFencedFenceInfo"),i.enter("chunkString",{contentType:"string"}),R(rt))}function R(rt){return rt===null||$a(rt)?(i.exit("chunkString"),i.exit("codeFencedFenceInfo"),F(rt)):du(rt)?(i.exit("chunkString"),i.exit("codeFencedFenceInfo"),Cl(i,B,"whitespace")(rt)):rt===96&&rt===E?f(rt):(i.consume(rt),R)}function B(rt){return rt===null||$a(rt)?F(rt):(i.enter("codeFencedFenceMeta"),i.enter("chunkString",{contentType:"string"}),z(rt))}function z(rt){return rt===null||$a(rt)?(i.exit("chunkString"),i.exit("codeFencedFenceMeta"),F(rt)):rt===96&&rt===E?f(rt):(i.consume(rt),z)}function Y(rt){return i.attempt(w,mt,nt)(rt)}function nt(rt){return i.enter("lineEnding"),i.consume(rt),i.exit("lineEnding"),ot}function ot(rt){return v>0&&du(rt)?Cl(i,ft,"linePrefix",v+1)(rt):ft(rt)}function ft(rt){return rt===null||$a(rt)?i.check(M$t,Y,mt)(rt):(i.enter("codeFlowValue"),wt(rt))}function wt(rt){return rt===null||$a(rt)?(i.exit("codeFlowValue"),ft(rt)):(i.consume(rt),wt)}function mt(rt){return i.exit("codeFenced"),a(rt)}function ct(rt,it,gt){let Q=0;return dt;function dt(It){return rt.enter("lineEnding"),rt.consume(It),rt.exit("lineEnding"),K}function K(It){return rt.enter("codeFencedFence"),du(It)?Cl(rt,yt,"linePrefix",g.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(It):yt(It)}function yt(It){return It===E?(rt.enter("codeFencedFenceSequence"),V(It)):gt(It)}function V(It){return It===E?(Q++,rt.consume(It),V):Q>=b?(rt.exit("codeFencedFenceSequence"),du(It)?Cl(rt,Ot,"whitespace")(It):Ot(It)):gt(It)}function Ot(It){return It===null||$a(It)?(rt.exit("codeFencedFence"),it(It)):gt(It)}}}function JUe(i,a,f){const g=this;return w;function w(b){return b===null?f(b):(i.enter("lineEnding"),i.consume(b),i.exit("lineEnding"),v)}function v(b){return g.parser.lazy[g.now().line]?f(b):a(b)}}const Upt={name:"codeIndented",tokenize:tGe},ZUe={tokenize:eGe,partial:!0};function tGe(i,a,f){const g=this;return w;function w(_){return i.enter("codeIndented"),Cl(i,v,"linePrefix",4+1)(_)}function v(_){const M=g.events[g.events.length-1];return M&&M[1].type==="linePrefix"&&M[2].sliceSerialize(M[1],!0).length>=4?b(_):f(_)}function b(_){return _===null?S(_):$a(_)?i.attempt(ZUe,b,S)(_):(i.enter("codeFlowValue"),E(_))}function E(_){return _===null||$a(_)?(i.exit("codeFlowValue"),b(_)):(i.consume(_),E)}function S(_){return i.exit("codeIndented"),a(_)}}function eGe(i,a,f){const g=this;return w;function w(b){return g.parser.lazy[g.now().line]?f(b):$a(b)?(i.enter("lineEnding"),i.consume(b),i.exit("lineEnding"),w):Cl(i,v,"linePrefix",4+1)(b)}function v(b){const E=g.events[g.events.length-1];return E&&E[1].type==="linePrefix"&&E[2].sliceSerialize(E[1],!0).length>=4?a(b):$a(b)?w(b):f(b)}}const nGe={name:"codeText",tokenize:sGe,resolve:rGe,previous:iGe};function rGe(i){let a=i.length-4,f=3,g,w;if((i[f][1].type==="lineEnding"||i[f][1].type==="space")&&(i[a][1].type==="lineEnding"||i[a][1].type==="space")){for(g=f;++g<a;)if(i[g][1].type==="codeTextData"){i[f][1].type="codeTextPadding",i[a][1].type="codeTextPadding",f+=2,a-=2;break}}for(g=f-1,a++;++g<=a;)w===void 0?g!==a&&i[g][1].type!=="lineEnding"&&(w=g):(g===a||i[g][1].type==="lineEnding")&&(i[w][1].type="codeTextData",g!==w+2&&(i[w][1].end=i[g-1][1].end,i.splice(w+2,g-w-2),a-=g-w-2,g=w+2),w=void 0);return i}function iGe(i){return i!==96||this.events[this.events.length-1][1].type==="characterEscape"}function sGe(i,a,f){let g=0,w,v;return b;function b(F){return i.enter("codeText"),i.enter("codeTextSequence"),E(F)}function E(F){return F===96?(i.consume(F),g++,E):(i.exit("codeTextSequence"),S(F))}function S(F){return F===null?f(F):F===32?(i.enter("space"),i.consume(F),i.exit("space"),S):F===96?(v=i.enter("codeTextSequence"),w=0,M(F)):$a(F)?(i.enter("lineEnding"),i.consume(F),i.exit("lineEnding"),S):(i.enter("codeTextData"),_(F))}function _(F){return F===null||F===32||F===96||$a(F)?(i.exit("codeTextData"),S(F)):(i.consume(F),_)}function M(F){return F===96?(i.consume(F),w++,M):w===g?(i.exit("codeTextSequence"),i.exit("codeText"),a(F)):(v.type="codeTextData",_(F))}}function O$t(i){const a={};let f=-1,g,w,v,b,E,S,_;for(;++f<i.length;){for(;f in a;)f=a[f];if(g=i[f],f&&g[1].type==="chunkFlow"&&i[f-1][1].type==="listItemPrefix"&&(S=g[1]._tokenizer.events,v=0,v<S.length&&S[v][1].type==="lineEndingBlank"&&(v+=2),v<S.length&&S[v][1].type==="content"))for(;++v<S.length&&S[v][1].type!=="content";)S[v][1].type==="chunkText"&&(S[v][1]._isInFirstContentOfListItem=!0,v++);if(g[0]==="enter")g[1].contentType&&(Object.assign(a,aGe(i,f)),f=a[f],_=!0);else if(g[1]._container){for(v=f,w=void 0;v--&&(b=i[v],b[1].type==="lineEnding"||b[1].type==="lineEndingBlank");)b[0]==="enter"&&(w&&(i[w][1].type="lineEndingBlank"),b[1].type="lineEnding",w=v);w&&(g[1].end=Object.assign({},i[w][1].start),E=i.slice(w,f),E.unshift(g),c4(i,w,f-w+1,E))}}return!_}function aGe(i,a){const f=i[a][1],g=i[a][2];let w=a-1;const v=[],b=f._tokenizer||g.parser[f.contentType](f.start),E=b.events,S=[],_={};let M,F,R=-1,B=f,z=0,Y=0;const nt=[Y];for(;B;){for(;i[++w][1]!==B;);v.push(w),B._tokenizer||(M=g.sliceStream(B),B.next||M.push(null),F&&b.defineSkip(B.start),B._isInFirstContentOfListItem&&(b._gfmTasklistFirstContentOfListItem=!0),b.write(M),B._isInFirstContentOfListItem&&(b._gfmTasklistFirstContentOfListItem=void 0)),F=B,B=B.next}for(B=f;++R<E.length;)E[R][0]==="exit"&&E[R-1][0]==="enter"&&E[R][1].type===E[R-1][1].type&&E[R][1].start.line!==E[R][1].end.line&&(Y=R+1,nt.push(Y),B._tokenizer=void 0,B.previous=void 0,B=B.next);for(b.events=[],B?(B._tokenizer=void 0,B.previous=void 0):nt.pop(),R=nt.length;R--;){const ot=E.slice(nt[R],nt[R+1]),ft=v.pop();S.unshift([ft,ft+ot.length-1]),c4(i,ft,2,ot)}for(R=-1;++R<S.length;)_[z+S[R][0]]=z+S[R][1],z+=S[R][1]-S[R][0]-1;return _}const oGe={tokenize:lGe,resolve:uGe},cGe={tokenize:hGe,partial:!0};function uGe(i){return O$t(i),i}function lGe(i,a){let f;return g;function g(E){return i.enter("content"),f=i.enter("chunkContent",{contentType:"content"}),w(E)}function w(E){return E===null?v(E):$a(E)?i.check(cGe,b,v)(E):(i.consume(E),w)}function v(E){return i.exit("chunkContent"),i.exit("content"),a(E)}function b(E){return i.consume(E),i.exit("chunkContent"),f.next=i.enter("chunkContent",{contentType:"content",previous:f}),f=f.next,w}}function hGe(i,a,f){const g=this;return w;function w(b){return i.exit("chunkContent"),i.enter("lineEnding"),i.consume(b),i.exit("lineEnding"),Cl(i,v,"linePrefix")}function v(b){if(b===null||$a(b))return f(b);const E=g.events[g.events.length-1];return!g.parser.constructs.disable.null.includes("codeIndented")&&E&&E[1].type==="linePrefix"&&E[2].sliceSerialize(E[1],!0).length>=4?a(b):i.interrupt(g.parser.constructs.flow,f,a)(b)}}function N$t(i,a,f,g,w,v,b,E,S){const _=S||Number.POSITIVE_INFINITY;let M=0;return F;function F(ot){return ot===60?(i.enter(g),i.enter(w),i.enter(v),i.consume(ot),i.exit(v),R):ot===null||ot===32||ot===41||$pt(ot)?f(ot):(i.enter(g),i.enter(b),i.enter(E),i.enter("chunkString",{contentType:"string"}),Y(ot))}function R(ot){return ot===62?(i.enter(v),i.consume(ot),i.exit(v),i.exit(w),i.exit(g),a):(i.enter(E),i.enter("chunkString",{contentType:"string"}),B(ot))}function B(ot){return ot===62?(i.exit("chunkString"),i.exit(E),R(ot)):ot===null||ot===60||$a(ot)?f(ot):(i.consume(ot),ot===92?z:B)}function z(ot){return ot===60||ot===62||ot===92?(i.consume(ot),B):B(ot)}function Y(ot){return!M&&(ot===null||ot===41||ob(ot))?(i.exit("chunkString"),i.exit(E),i.exit(b),i.exit(g),a(ot)):M<_&&ot===40?(i.consume(ot),M++,Y):ot===41?(i.consume(ot),M--,Y):ot===null||ot===32||ot===40||$pt(ot)?f(ot):(i.consume(ot),ot===92?nt:Y)}function nt(ot){return ot===40||ot===41||ot===92?(i.consume(ot),Y):Y(ot)}}function P$t(i,a,f,g,w,v){const b=this;let E=0,S;return _;function _(B){return i.enter(g),i.enter(w),i.consume(B),i.exit(w),i.enter(v),M}function M(B){return E>999||B===null||B===91||B===93&&!S||B===94&&!E&&"_hiddenFootnoteSupport"in b.parser.constructs?f(B):B===93?(i.exit(v),i.enter(w),i.consume(B),i.exit(w),i.exit(g),a):$a(B)?(i.enter("lineEnding"),i.consume(B),i.exit("lineEnding"),M):(i.enter("chunkString",{contentType:"string"}),F(B))}function F(B){return B===null||B===91||B===93||$a(B)||E++>999?(i.exit("chunkString"),M(B)):(i.consume(B),S||(S=!du(B)),B===92?R:F)}function R(B){return B===91||B===92||B===93?(i.consume(B),E++,F):F(B)}}function F$t(i,a,f,g,w,v){let b;return E;function E(R){return R===34||R===39||R===40?(i.enter(g),i.enter(w),i.consume(R),i.exit(w),b=R===40?41:R,S):f(R)}function S(R){return R===b?(i.enter(w),i.consume(R),i.exit(w),i.exit(g),a):(i.enter(v),_(R))}function _(R){return R===b?(i.exit(v),S(b)):R===null?f(R):$a(R)?(i.enter("lineEnding"),i.consume(R),i.exit("lineEnding"),Cl(i,_,"linePrefix")):(i.enter("chunkString",{contentType:"string"}),M(R))}function M(R){return R===b||R===null||$a(R)?(i.exit("chunkString"),_(R)):(i.consume(R),R===92?F:M)}function F(R){return R===b||R===92?(i.consume(R),M):M(R)}}function ZF(i,a){let f;return g;function g(w){return $a(w)?(i.enter("lineEnding"),i.consume(w),i.exit("lineEnding"),f=!0,g):du(w)?Cl(i,g,f?"linePrefix":"lineSuffix")(w):a(w)}}function ED(i){return i.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const fGe={name:"definition",tokenize:gGe},dGe={tokenize:pGe,partial:!0};function gGe(i,a,f){const g=this;let w;return v;function v(B){return i.enter("definition"),b(B)}function b(B){return P$t.call(g,i,E,f,"definitionLabel","definitionLabelMarker","definitionLabelString")(B)}function E(B){return w=ED(g.sliceSerialize(g.events[g.events.length-1][1]).slice(1,-1)),B===58?(i.enter("definitionMarker"),i.consume(B),i.exit("definitionMarker"),S):f(B)}function S(B){return ob(B)?ZF(i,_)(B):_(B)}function _(B){return N$t(i,M,f,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(B)}function M(B){return i.attempt(dGe,F,F)(B)}function F(B){return du(B)?Cl(i,R,"whitespace")(B):R(B)}function R(B){return B===null||$a(B)?(i.exit("definition"),g.parser.defined.push(w),a(B)):f(B)}}function pGe(i,a,f){return g;function g(E){return ob(E)?ZF(i,w)(E):f(E)}function w(E){return F$t(i,v,f,"definitionTitle","definitionTitleMarker","definitionTitleString")(E)}function v(E){return du(E)?Cl(i,b,"whitespace")(E):b(E)}function b(E){return E===null||$a(E)?a(E):f(E)}}const bGe={name:"hardBreakEscape",tokenize:wGe};function wGe(i,a,f){return g;function g(v){return i.enter("hardBreakEscape"),i.consume(v),w}function w(v){return $a(v)?(i.exit("hardBreakEscape"),a(v)):f(v)}}const mGe={name:"headingAtx",tokenize:yGe,resolve:vGe};function vGe(i,a){let f=i.length-2,g=3,w,v;return i[g][1].type==="whitespace"&&(g+=2),f-2>g&&i[f][1].type==="whitespace"&&(f-=2),i[f][1].type==="atxHeadingSequence"&&(g===f-1||f-4>g&&i[f-2][1].type==="whitespace")&&(f-=g+1===f?2:4),f>g&&(w={type:"atxHeadingText",start:i[g][1].start,end:i[f][1].end},v={type:"chunkText",start:i[g][1].start,end:i[f][1].end,contentType:"text"},c4(i,g,f-g+1,[["enter",w,a],["enter",v,a],["exit",v,a],["exit",w,a]])),i}function yGe(i,a,f){let g=0;return w;function w(M){return i.enter("atxHeading"),v(M)}function v(M){return i.enter("atxHeadingSequence"),b(M)}function b(M){return M===35&&g++<6?(i.consume(M),b):M===null||ob(M)?(i.exit("atxHeadingSequence"),E(M)):f(M)}function E(M){return M===35?(i.enter("atxHeadingSequence"),S(M)):M===null||$a(M)?(i.exit("atxHeading"),a(M)):du(M)?Cl(i,E,"whitespace")(M):(i.enter("atxHeadingText"),_(M))}function S(M){return M===35?(i.consume(M),S):(i.exit("atxHeadingSequence"),E(M))}function _(M){return M===null||M===35||ob(M)?(i.exit("atxHeadingText"),E(M)):(i.consume(M),_)}}const xGe=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],B$t=["pre","script","style","textarea"],kGe={name:"htmlFlow",tokenize:SGe,resolveTo:CGe,concrete:!0},EGe={tokenize:AGe,partial:!0},TGe={tokenize:_Ge,partial:!0};function CGe(i){let a=i.length;for(;a--&&!(i[a][0]==="enter"&&i[a][1].type==="htmlFlow"););return a>1&&i[a-2][1].type==="linePrefix"&&(i[a][1].start=i[a-2][1].start,i[a+1][1].start=i[a-2][1].start,i.splice(a-2,2)),i}function SGe(i,a,f){const g=this;let w,v,b,E,S;return _;function _(Mt){return M(Mt)}function M(Mt){return i.enter("htmlFlow"),i.enter("htmlFlowData"),i.consume(Mt),F}function F(Mt){return Mt===33?(i.consume(Mt),R):Mt===47?(i.consume(Mt),v=!0,Y):Mt===63?(i.consume(Mt),w=3,g.interrupt?a:kt):u4(Mt)?(i.consume(Mt),b=String.fromCharCode(Mt),nt):f(Mt)}function R(Mt){return Mt===45?(i.consume(Mt),w=2,B):Mt===91?(i.consume(Mt),w=5,E=0,z):u4(Mt)?(i.consume(Mt),w=4,g.interrupt?a:kt):f(Mt)}function B(Mt){return Mt===45?(i.consume(Mt),g.interrupt?a:kt):f(Mt)}function z(Mt){const pn="CDATA[";return Mt===pn.charCodeAt(E++)?(i.consume(Mt),E===pn.length?g.interrupt?a:yt:z):f(Mt)}function Y(Mt){return u4(Mt)?(i.consume(Mt),b=String.fromCharCode(Mt),nt):f(Mt)}function nt(Mt){if(Mt===null||Mt===47||Mt===62||ob(Mt)){const pn=Mt===47,Ae=b.toLowerCase();return!pn&&!v&&B$t.includes(Ae)?(w=1,g.interrupt?a(Mt):yt(Mt)):xGe.includes(b.toLowerCase())?(w=6,pn?(i.consume(Mt),ot):g.interrupt?a(Mt):yt(Mt)):(w=7,g.interrupt&&!g.parser.lazy[g.now().line]?f(Mt):v?ft(Mt):wt(Mt))}return Mt===45||Zv(Mt)?(i.consume(Mt),b+=String.fromCharCode(Mt),nt):f(Mt)}function ot(Mt){return Mt===62?(i.consume(Mt),g.interrupt?a:yt):f(Mt)}function ft(Mt){return du(Mt)?(i.consume(Mt),ft):dt(Mt)}function wt(Mt){return Mt===47?(i.consume(Mt),dt):Mt===58||Mt===95||u4(Mt)?(i.consume(Mt),mt):du(Mt)?(i.consume(Mt),wt):dt(Mt)}function mt(Mt){return Mt===45||Mt===46||Mt===58||Mt===95||Zv(Mt)?(i.consume(Mt),mt):ct(Mt)}function ct(Mt){return Mt===61?(i.consume(Mt),rt):du(Mt)?(i.consume(Mt),ct):wt(Mt)}function rt(Mt){return Mt===null||Mt===60||Mt===61||Mt===62||Mt===96?f(Mt):Mt===34||Mt===39?(i.consume(Mt),S=Mt,it):du(Mt)?(i.consume(Mt),rt):gt(Mt)}function it(Mt){return Mt===S?(i.consume(Mt),S=null,Q):Mt===null||$a(Mt)?f(Mt):(i.consume(Mt),it)}function gt(Mt){return Mt===null||Mt===34||Mt===39||Mt===47||Mt===60||Mt===61||Mt===62||Mt===96||ob(Mt)?ct(Mt):(i.consume(Mt),gt)}function Q(Mt){return Mt===47||Mt===62||du(Mt)?wt(Mt):f(Mt)}function dt(Mt){return Mt===62?(i.consume(Mt),K):f(Mt)}function K(Mt){return Mt===null||$a(Mt)?yt(Mt):du(Mt)?(i.consume(Mt),K):f(Mt)}function yt(Mt){return Mt===45&&w===2?(i.consume(Mt),jt):Mt===60&&w===1?(i.consume(Mt),xt):Mt===62&&w===4?(i.consume(Mt),Gt):Mt===63&&w===3?(i.consume(Mt),kt):Mt===93&&w===5?(i.consume(Mt),Ct):$a(Mt)&&(w===6||w===7)?(i.exit("htmlFlowData"),i.check(EGe,Fe,V)(Mt)):Mt===null||$a(Mt)?(i.exit("htmlFlowData"),V(Mt)):(i.consume(Mt),yt)}function V(Mt){return i.check(TGe,Ot,Fe)(Mt)}function Ot(Mt){return i.enter("lineEnding"),i.consume(Mt),i.exit("lineEnding"),It}function It(Mt){return Mt===null||$a(Mt)?V(Mt):(i.enter("htmlFlowData"),yt(Mt))}function jt(Mt){return Mt===45?(i.consume(Mt),kt):yt(Mt)}function xt(Mt){return Mt===47?(i.consume(Mt),b="",Ft):yt(Mt)}function Ft(Mt){if(Mt===62){const pn=b.toLowerCase();return B$t.includes(pn)?(i.consume(Mt),Gt):yt(Mt)}return u4(Mt)&&b.length<8?(i.consume(Mt),b+=String.fromCharCode(Mt),Ft):yt(Mt)}function Ct(Mt){return Mt===93?(i.consume(Mt),kt):yt(Mt)}function kt(Mt){return Mt===62?(i.consume(Mt),Gt):Mt===45&&w===2?(i.consume(Mt),kt):yt(Mt)}function Gt(Mt){return Mt===null||$a(Mt)?(i.exit("htmlFlowData"),Fe(Mt)):(i.consume(Mt),Gt)}function Fe(Mt){return i.exit("htmlFlow"),a(Mt)}}function _Ge(i,a,f){const g=this;return w;function w(b){return $a(b)?(i.enter("lineEnding"),i.consume(b),i.exit("lineEnding"),v):f(b)}function v(b){return g.parser.lazy[g.now().line]?f(b):a(b)}}function AGe(i,a,f){return g;function g(w){return i.enter("lineEnding"),i.consume(w),i.exit("lineEnding"),i.attempt(XY,a,f)}}const LGe={name:"htmlText",tokenize:DGe};function DGe(i,a,f){const g=this;let w,v,b;return E;function E(kt){return i.enter("htmlText"),i.enter("htmlTextData"),i.consume(kt),S}function S(kt){return kt===33?(i.consume(kt),_):kt===47?(i.consume(kt),ct):kt===63?(i.consume(kt),wt):u4(kt)?(i.consume(kt),gt):f(kt)}function _(kt){return kt===45?(i.consume(kt),M):kt===91?(i.consume(kt),v=0,z):u4(kt)?(i.consume(kt),ft):f(kt)}function M(kt){return kt===45?(i.consume(kt),B):f(kt)}function F(kt){return kt===null?f(kt):kt===45?(i.consume(kt),R):$a(kt)?(b=F,xt(kt)):(i.consume(kt),F)}function R(kt){return kt===45?(i.consume(kt),B):F(kt)}function B(kt){return kt===62?jt(kt):kt===45?R(kt):F(kt)}function z(kt){const Gt="CDATA[";return kt===Gt.charCodeAt(v++)?(i.consume(kt),v===Gt.length?Y:z):f(kt)}function Y(kt){return kt===null?f(kt):kt===93?(i.consume(kt),nt):$a(kt)?(b=Y,xt(kt)):(i.consume(kt),Y)}function nt(kt){return kt===93?(i.consume(kt),ot):Y(kt)}function ot(kt){return kt===62?jt(kt):kt===93?(i.consume(kt),ot):Y(kt)}function ft(kt){return kt===null||kt===62?jt(kt):$a(kt)?(b=ft,xt(kt)):(i.consume(kt),ft)}function wt(kt){return kt===null?f(kt):kt===63?(i.consume(kt),mt):$a(kt)?(b=wt,xt(kt)):(i.consume(kt),wt)}function mt(kt){return kt===62?jt(kt):wt(kt)}function ct(kt){return u4(kt)?(i.consume(kt),rt):f(kt)}function rt(kt){return kt===45||Zv(kt)?(i.consume(kt),rt):it(kt)}function it(kt){return $a(kt)?(b=it,xt(kt)):du(kt)?(i.consume(kt),it):jt(kt)}function gt(kt){return kt===45||Zv(kt)?(i.consume(kt),gt):kt===47||kt===62||ob(kt)?Q(kt):f(kt)}function Q(kt){return kt===47?(i.consume(kt),jt):kt===58||kt===95||u4(kt)?(i.consume(kt),dt):$a(kt)?(b=Q,xt(kt)):du(kt)?(i.consume(kt),Q):jt(kt)}function dt(kt){return kt===45||kt===46||kt===58||kt===95||Zv(kt)?(i.consume(kt),dt):K(kt)}function K(kt){return kt===61?(i.consume(kt),yt):$a(kt)?(b=K,xt(kt)):du(kt)?(i.consume(kt),K):Q(kt)}function yt(kt){return kt===null||kt===60||kt===61||kt===62||kt===96?f(kt):kt===34||kt===39?(i.consume(kt),w=kt,V):$a(kt)?(b=yt,xt(kt)):du(kt)?(i.consume(kt),yt):(i.consume(kt),Ot)}function V(kt){return kt===w?(i.consume(kt),w=void 0,It):kt===null?f(kt):$a(kt)?(b=V,xt(kt)):(i.consume(kt),V)}function Ot(kt){return kt===null||kt===34||kt===39||kt===60||kt===61||kt===96?f(kt):kt===47||kt===62||ob(kt)?Q(kt):(i.consume(kt),Ot)}function It(kt){return kt===47||kt===62||ob(kt)?Q(kt):f(kt)}function jt(kt){return kt===62?(i.consume(kt),i.exit("htmlTextData"),i.exit("htmlText"),a):f(kt)}function xt(kt){return i.exit("htmlTextData"),i.enter("lineEnding"),i.consume(kt),i.exit("lineEnding"),Ft}function Ft(kt){return du(kt)?Cl(i,Ct,"linePrefix",g.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(kt):Ct(kt)}function Ct(kt){return i.enter("htmlTextData"),b(kt)}}const Gpt={name:"labelEnd",tokenize:FGe,resolveTo:PGe,resolveAll:NGe},MGe={tokenize:BGe},IGe={tokenize:RGe},OGe={tokenize:jGe};function NGe(i){let a=-1;for(;++a<i.length;){const f=i[a][1];(f.type==="labelImage"||f.type==="labelLink"||f.type==="labelEnd")&&(i.splice(a+1,f.type==="labelImage"?4:2),f.type="data",a++)}return i}function PGe(i,a){let f=i.length,g=0,w,v,b,E;for(;f--;)if(w=i[f][1],v){if(w.type==="link"||w.type==="labelLink"&&w._inactive)break;i[f][0]==="enter"&&w.type==="labelLink"&&(w._inactive=!0)}else if(b){if(i[f][0]==="enter"&&(w.type==="labelImage"||w.type==="labelLink")&&!w._balanced&&(v=f,w.type!=="labelLink")){g=2;break}}else w.type==="labelEnd"&&(b=f);const S={type:i[v][1].type==="labelLink"?"link":"image",start:Object.assign({},i[v][1].start),end:Object.assign({},i[i.length-1][1].end)},_={type:"label",start:Object.assign({},i[v][1].start),end:Object.assign({},i[b][1].end)},M={type:"labelText",start:Object.assign({},i[v+g+2][1].end),end:Object.assign({},i[b-2][1].start)};return E=[["enter",S,a],["enter",_,a]],E=tm(E,i.slice(v+1,v+g+3)),E=tm(E,[["enter",M,a]]),E=tm(E,qpt(a.parser.constructs.insideSpan.null,i.slice(v+g+4,b-3),a)),E=tm(E,[["exit",M,a],i[b-2],i[b-1],["exit",_,a]]),E=tm(E,i.slice(b+1)),E=tm(E,[["exit",S,a]]),c4(i,v,i.length,E),i}function FGe(i,a,f){const g=this;let w=g.events.length,v,b;for(;w--;)if((g.events[w][1].type==="labelImage"||g.events[w][1].type==="labelLink")&&!g.events[w][1]._balanced){v=g.events[w][1];break}return E;function E(R){return v?v._inactive?F(R):(b=g.parser.defined.includes(ED(g.sliceSerialize({start:v.end,end:g.now()}))),i.enter("labelEnd"),i.enter("labelMarker"),i.consume(R),i.exit("labelMarker"),i.exit("labelEnd"),S):f(R)}function S(R){return R===40?i.attempt(MGe,M,b?M:F)(R):R===91?i.attempt(IGe,M,b?_:F)(R):b?M(R):F(R)}function _(R){return i.attempt(OGe,M,F)(R)}function M(R){return a(R)}function F(R){return v._balanced=!0,f(R)}}function BGe(i,a,f){return g;function g(F){return i.enter("resource"),i.enter("resourceMarker"),i.consume(F),i.exit("resourceMarker"),w}function w(F){return ob(F)?ZF(i,v)(F):v(F)}function v(F){return F===41?M(F):N$t(i,b,E,"resourceDestination","resourceDestinationLiteral","resourceDestinationLiteralMarker","resourceDestinationRaw","resourceDestinationString",32)(F)}function b(F){return ob(F)?ZF(i,S)(F):M(F)}function E(F){return f(F)}function S(F){return F===34||F===39||F===40?F$t(i,_,f,"resourceTitle","resourceTitleMarker","resourceTitleString")(F):M(F)}function _(F){return ob(F)?ZF(i,M)(F):M(F)}function M(F){return F===41?(i.enter("resourceMarker"),i.consume(F),i.exit("resourceMarker"),i.exit("resource"),a):f(F)}}function RGe(i,a,f){const g=this;return w;function w(E){return P$t.call(g,i,v,b,"reference","referenceMarker","referenceString")(E)}function v(E){return g.parser.defined.includes(ED(g.sliceSerialize(g.events[g.events.length-1][1]).slice(1,-1)))?a(E):f(E)}function b(E){return f(E)}}function jGe(i,a,f){return g;function g(v){return i.enter("reference"),i.enter("referenceMarker"),i.consume(v),i.exit("referenceMarker"),w}function w(v){return v===93?(i.enter("referenceMarker"),i.consume(v),i.exit("referenceMarker"),i.exit("reference"),a):f(v)}}const $Ge={name:"labelStartImage",tokenize:zGe,resolveAll:Gpt.resolveAll};function zGe(i,a,f){const g=this;return w;function w(E){return i.enter("labelImage"),i.enter("labelImageMarker"),i.consume(E),i.exit("labelImageMarker"),v}function v(E){return E===91?(i.enter("labelMarker"),i.consume(E),i.exit("labelMarker"),i.exit("labelImage"),b):f(E)}function b(E){return E===94&&"_hiddenFootnoteSupport"in g.parser.constructs?f(E):a(E)}}const qGe={name:"labelStartLink",tokenize:HGe,resolveAll:Gpt.resolveAll};function HGe(i,a,f){const g=this;return w;function w(b){return i.enter("labelLink"),i.enter("labelMarker"),i.consume(b),i.exit("labelMarker"),i.exit("labelLink"),v}function v(b){return b===94&&"_hiddenFootnoteSupport"in g.parser.constructs?f(b):a(b)}}const Kpt={name:"lineEnding",tokenize:VGe};function VGe(i,a){return f;function f(g){return i.enter("lineEnding"),i.consume(g),i.exit("lineEnding"),Cl(i,a,"linePrefix")}}const QY={name:"thematicBreak",tokenize:UGe};function UGe(i,a,f){let g=0,w;return v;function v(_){return i.enter("thematicBreak"),b(_)}function b(_){return w=_,E(_)}function E(_){return _===w?(i.enter("thematicBreakSequence"),S(_)):g>=3&&(_===null||$a(_))?(i.exit("thematicBreak"),a(_)):f(_)}function S(_){return _===w?(i.consume(_),g++,S):(i.exit("thematicBreakSequence"),du(_)?Cl(i,E,"whitespace")(_):E(_))}}const cb={name:"list",tokenize:WGe,continuation:{tokenize:YGe},exit:QGe},GGe={tokenize:JGe,partial:!0},KGe={tokenize:XGe,partial:!0};function WGe(i,a,f){const g=this,w=g.events[g.events.length-1];let v=w&&w[1].type==="linePrefix"?w[2].sliceSerialize(w[1],!0).length:0,b=0;return E;function E(B){const z=g.containerState.type||(B===42||B===43||B===45?"listUnordered":"listOrdered");if(z==="listUnordered"?!g.containerState.marker||B===g.containerState.marker:zpt(B)){if(g.containerState.type||(g.containerState.type=z,i.enter(z,{_container:!0})),z==="listUnordered")return i.enter("listItemPrefix"),B===42||B===45?i.check(QY,f,_)(B):_(B);if(!g.interrupt||B===49)return i.enter("listItemPrefix"),i.enter("listItemValue"),S(B)}return f(B)}function S(B){return zpt(B)&&++b<10?(i.consume(B),S):(!g.interrupt||b<2)&&(g.containerState.marker?B===g.containerState.marker:B===41||B===46)?(i.exit("listItemValue"),_(B)):f(B)}function _(B){return i.enter("listItemMarker"),i.consume(B),i.exit("listItemMarker"),g.containerState.marker=g.containerState.marker||B,i.check(XY,g.interrupt?f:M,i.attempt(GGe,R,F))}function M(B){return g.containerState.initialBlankLine=!0,v++,R(B)}function F(B){return du(B)?(i.enter("listItemPrefixWhitespace"),i.consume(B),i.exit("listItemPrefixWhitespace"),R):f(B)}function R(B){return g.containerState.size=v+g.sliceSerialize(i.exit("listItemPrefix"),!0).length,a(B)}}function YGe(i,a,f){const g=this;return g.containerState._closeFlow=void 0,i.check(XY,w,v);function w(E){return g.containerState.furtherBlankLines=g.containerState.furtherBlankLines||g.containerState.initialBlankLine,Cl(i,a,"listItemIndent",g.containerState.size+1)(E)}function v(E){return g.containerState.furtherBlankLines||!du(E)?(g.containerState.furtherBlankLines=void 0,g.containerState.initialBlankLine=void 0,b(E)):(g.containerState.furtherBlankLines=void 0,g.containerState.initialBlankLine=void 0,i.attempt(KGe,a,b)(E))}function b(E){return g.containerState._closeFlow=!0,g.interrupt=void 0,Cl(i,i.attempt(cb,a,f),"linePrefix",g.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(E)}}function XGe(i,a,f){const g=this;return Cl(i,w,"listItemIndent",g.containerState.size+1);function w(v){const b=g.events[g.events.length-1];return b&&b[1].type==="listItemIndent"&&b[2].sliceSerialize(b[1],!0).length===g.containerState.size?a(v):f(v)}}function QGe(i){i.exit(this.containerState.type)}function JGe(i,a,f){const g=this;return Cl(i,w,"listItemPrefixWhitespace",g.parser.constructs.disable.null.includes("codeIndented")?void 0:4+1);function w(v){const b=g.events[g.events.length-1];return!du(v)&&b&&b[1].type==="listItemPrefixWhitespace"?a(v):f(v)}}const R$t={name:"setextUnderline",tokenize:tKe,resolveTo:ZGe};function ZGe(i,a){let f=i.length,g,w,v;for(;f--;)if(i[f][0]==="enter"){if(i[f][1].type==="content"){g=f;break}i[f][1].type==="paragraph"&&(w=f)}else i[f][1].type==="content"&&i.splice(f,1),!v&&i[f][1].type==="definition"&&(v=f);const b={type:"setextHeading",start:Object.assign({},i[w][1].start),end:Object.assign({},i[i.length-1][1].end)};return i[w][1].type="setextHeadingText",v?(i.splice(w,0,["enter",b,a]),i.splice(v+1,0,["exit",i[g][1],a]),i[g][1].end=Object.assign({},i[v][1].end)):i[g][1]=b,i.push(["exit",b,a]),i}function tKe(i,a,f){const g=this;let w;return v;function v(_){let M=g.events.length,F;for(;M--;)if(g.events[M][1].type!=="lineEnding"&&g.events[M][1].type!=="linePrefix"&&g.events[M][1].type!=="content"){F=g.events[M][1].type==="paragraph";break}return!g.parser.lazy[g.now().line]&&(g.interrupt||F)?(i.enter("setextHeadingLine"),w=_,b(_)):f(_)}function b(_){return i.enter("setextHeadingLineSequence"),E(_)}function E(_){return _===w?(i.consume(_),E):(i.exit("setextHeadingLineSequence"),du(_)?Cl(i,S,"lineSuffix")(_):S(_))}function S(_){return _===null||$a(_)?(i.exit("setextHeadingLine"),a(_)):f(_)}}const eKe={tokenize:nKe};function nKe(i){const a=this,f=i.attempt(XY,g,i.attempt(this.parser.constructs.flowInitial,w,Cl(i,i.attempt(this.parser.constructs.flow,w,i.attempt(oGe,w)),"linePrefix")));return f;function g(v){if(v===null){i.consume(v);return}return i.enter("lineEndingBlank"),i.consume(v),i.exit("lineEndingBlank"),a.currentConstruct=void 0,f}function w(v){if(v===null){i.consume(v);return}return i.enter("lineEnding"),i.consume(v),i.exit("lineEnding"),a.currentConstruct=void 0,f}}const rKe={resolveAll:$$t()},iKe=j$t("string"),sKe=j$t("text");function j$t(i){return{tokenize:a,resolveAll:$$t(i==="text"?aKe:void 0)};function a(f){const g=this,w=this.parser.constructs[i],v=f.attempt(w,b,E);return b;function b(M){return _(M)?v(M):E(M)}function E(M){if(M===null){f.consume(M);return}return f.enter("data"),f.consume(M),S}function S(M){return _(M)?(f.exit("data"),v(M)):(f.consume(M),S)}function _(M){if(M===null)return!0;const F=w[M];let R=-1;if(F)for(;++R<F.length;){const B=F[R];if(!B.previous||B.previous.call(g,g.previous))return!0}return!1}}}function $$t(i){return a;function a(f,g){let w=-1,v;for(;++w<=f.length;)v===void 0?f[w]&&f[w][1].type==="data"&&(v=w,w++):(!f[w]||f[w][1].type!=="data")&&(w!==v+2&&(f[v][1].end=f[w-1][1].end,f.splice(v+2,w-v-2),w=v+2),v=void 0);return i?i(f,g):f}}function aKe(i,a){let f=0;for(;++f<=i.length;)if((f===i.length||i[f][1].type==="lineEnding")&&i[f-1][1].type==="data"){const g=i[f-1][1],w=a.sliceStream(g);let v=w.length,b=-1,E=0,S;for(;v--;){const _=w[v];if(typeof _=="string"){for(b=_.length;_.charCodeAt(b-1)===32;)E++,b--;if(b)break;b=-1}else if(_===-2)S=!0,E++;else if(_!==-1){v++;break}}if(E){const _={type:f===i.length||S||E<2?"lineSuffix":"hardBreakTrailing",start:{line:g.end.line,column:g.end.column-E,offset:g.end.offset-E,_index:g.start._index+v,_bufferIndex:v?b:g.start._bufferIndex+b},end:Object.assign({},g.end)};g.end=Object.assign({},_.start),g.start.offset===g.end.offset?Object.assign(g,_):(i.splice(f,0,["enter",_,a],["exit",_,a]),f+=2)}f++}return i}function oKe(i,a,f){let g=Object.assign(f?Object.assign({},f):{line:1,column:1,offset:0},{_index:0,_bufferIndex:-1});const w={},v=[];let b=[],E=[];const S={consume:ft,enter:wt,exit:mt,attempt:it(ct),check:it(rt),interrupt:it(rt,{interrupt:!0})},_={previous:null,code:null,containerState:{},events:[],parser:i,sliceStream:B,sliceSerialize:R,now:z,defineSkip:Y,write:F};let M=a.tokenize.call(_,S);return a.resolveAll&&v.push(a),_;function F(K){return b=tm(b,K),nt(),b[b.length-1]!==null?[]:(gt(a,0),_.events=qpt(v,_.events,_),_.events)}function R(K,yt){return uKe(B(K),yt)}function B(K){return cKe(b,K)}function z(){const{line:K,column:yt,offset:V,_index:Ot,_bufferIndex:It}=g;return{line:K,column:yt,offset:V,_index:Ot,_bufferIndex:It}}function Y(K){w[K.line]=K.column,dt()}function nt(){let K;for(;g._index<b.length;){const yt=b[g._index];if(typeof yt=="string")for(K=g._index,g._bufferIndex<0&&(g._bufferIndex=0);g._index===K&&g._bufferIndex<yt.length;)ot(yt.charCodeAt(g._bufferIndex));else ot(yt)}}function ot(K){M=M(K)}function ft(K){$a(K)?(g.line++,g.column=1,g.offset+=K===-3?2:1,dt()):K!==-1&&(g.column++,g.offset++),g._bufferIndex<0?g._index++:(g._bufferIndex++,g._bufferIndex===b[g._index].length&&(g._bufferIndex=-1,g._index++)),_.previous=K}function wt(K,yt){const V=yt||{};return V.type=K,V.start=z(),_.events.push(["enter",V,_]),E.push(V),V}function mt(K){const yt=E.pop();return yt.end=z(),_.events.push(["exit",yt,_]),yt}function ct(K,yt){gt(K,yt.from)}function rt(K,yt){yt.restore()}function it(K,yt){return V;function V(Ot,It,jt){let xt,Ft,Ct,kt;return Array.isArray(Ot)?Fe(Ot):"tokenize"in Ot?Fe([Ot]):Gt(Ot);function Gt(ye){return tn;function tn(sn){const be=sn!==null&&ye[sn],Ne=sn!==null&&ye.null,Xt=[...Array.isArray(be)?be:be?[be]:[],...Array.isArray(Ne)?Ne:Ne?[Ne]:[]];return Fe(Xt)(sn)}}function Fe(ye){return xt=ye,Ft=0,ye.length===0?jt:Mt(ye[Ft])}function Mt(ye){return tn;function tn(sn){return kt=Q(),Ct=ye,ye.partial||(_.currentConstruct=ye),ye.name&&_.parser.constructs.disable.null.includes(ye.name)?Ae():ye.tokenize.call(yt?Object.assign(Object.create(_),yt):_,S,pn,Ae)(sn)}}function pn(ye){return K(Ct,kt),It}function Ae(ye){return kt.restore(),++Ft<xt.length?Mt(xt[Ft]):jt}}}function gt(K,yt){K.resolveAll&&!v.includes(K)&&v.push(K),K.resolve&&c4(_.events,yt,_.events.length-yt,K.resolve(_.events.slice(yt),_)),K.resolveTo&&(_.events=K.resolveTo(_.events,_))}function Q(){const K=z(),yt=_.previous,V=_.currentConstruct,Ot=_.events.length,It=Array.from(E);return{restore:jt,from:Ot};function jt(){g=K,_.previous=yt,_.currentConstruct=V,_.events.length=Ot,E=It,dt()}}function dt(){g.line in w&&g.column<2&&(g.column=w[g.line],g.offset+=w[g.line]-1)}}function cKe(i,a){const f=a.start._index,g=a.start._bufferIndex,w=a.end._index,v=a.end._bufferIndex;let b;if(f===w)b=[i[f].slice(g,v)];else{if(b=i.slice(f,w),g>-1){const E=b[0];typeof E=="string"?b[0]=E.slice(g):b.shift()}v>0&&b.push(i[w].slice(0,v))}return b}function uKe(i,a){let f=-1;const g=[];let w;for(;++f<i.length;){const v=i[f];let b;if(typeof v=="string")b=v;else switch(v){case-5:{b="\r";break}case-4:{b=`
113 `)))throw new Error("splitLineToFitWidth does not support newlines in the line");return Ypt(i,a)}function Ypt(i,a,f=[],g=[]){if(i.length===0)return g.length>0&&f.push(g),f.length>0?f:[];let w="";i[0].content===" "&&(w=" ",i.shift());const v=i.shift()??{content:" ",type:"normal"},b=[...g];if(w!==""&&b.push({content:w,type:"normal"}),b.push(v),a(b))return Ypt(i,a,f,b);if(g.length>0)f.push(g),i.unshift(v);else if(v.content){const[E,S]=EKe(a,v);f.push([E]),S.content&&i.unshift(S)}return Ypt(i,a,f)}function CKe(i,a){a&&i.attr("style",a)}function SKe(i,a,f,g,w=!1){const v=i.append("foreignObject"),b=v.append("xhtml:div"),E=a.label,S=a.isNode?"nodeLabel":"edgeLabel";b.html(`
114 <span class="${S} ${g}" `+(a.labelStyle?'style="'+a.labelStyle+'"':"")+">"+E+"</span>"),CKe(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"),w&&b.attr("class","labelBkg");let _=b.node().getBoundingClientRect();return _.width===f&&(b.style("display","table"),b.style("white-space","break-spaces"),b.style("width",f+"px"),_=b.node().getBoundingClientRect()),v.style("width",_.width),v.style("height",_.height),v.node()}function Xpt(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 _Ke(i,a,f){const g=i.append("text"),w=Xpt(g,1,a);Qpt(w,f);const v=w.node().getComputedTextLength();return g.remove(),v}function AKe(i,a,f){var b;const g=i.append("text"),w=Xpt(g,1,a);Qpt(w,[{content:f,type:"normal"}]);const v=(b=w.node())==null?void 0:b.getBoundingClientRect();return v&&g.remove(),v}function LKe(i,a,f,g=!1){const v=a.append("g"),b=v.insert("rect").attr("class","background"),E=v.append("text").attr("y","-10.1");let S=0;for(const _ of f){const M=R=>_Ke(v,1.1,R)<=i,F=M(_)?[_]:TKe(_,M);for(const R of F){const B=Xpt(E,S,1.1);Qpt(B,R),S++}}if(g){const _=E.node().getBBox(),M=2;return b.attr("x",-M).attr("y",-M).attr("width",_.width+2*M).attr("height",_.height+2*M),v.node()}else return E.node()}function Qpt(i,a){i.text(""),a.forEach((f,g)=>{const w=i.append("tspan").attr("font-style",f.type==="emphasis"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",f.type==="strong"?"bold":"normal");g===0?w.text(f.content):w.text(" "+f.content)})}const ZY=(i,a="",{style:f="",isTitle:g=!1,classes:w="",useHtmlLabels:v=!0,isNode:b=!0,width:E=200,addSvgBackground:S=!1}={})=>{if(Kt.info("createText",a,f,g,w,v,b,S),v){const _=xKe(a),M={isNode:b,label:IF(_).replace(/fa[blrs]?:fa-[\w-]+/g,R=>`<i class='${R.replace(":"," ")}'></i>`),labelStyle:f.replace("fill:","color:")};return SKe(i,M,E,w,S)}else{const _=yKe(a);return LKe(E,i,_,S)}},$1=async(i,a,f,g)=>{let w;const v=a.useHtmlLabels||j1(Re().flowchart.htmlLabels);f?w=f:w="node default";const b=i.insert("g").attr("class",w).attr("id",a.domId||a.id),E=b.insert("g").attr("class","label").attr("style",a.labelStyle);let S;a.labelText===void 0?S="":S=typeof a.labelText=="string"?a.labelText:a.labelText[0];const _=E.node();let M;a.labelType==="markdown"?M=ZY(E,Ef(IF(S),Re()),{useHtmlLabels:v,width:a.width||Re().flowchart.wrappingWidth,classes:"markdown-node-label"}):M=_.appendChild(ab(Ef(IF(S),Re()),a.labelStyle,!1,g));let F=M.getBBox();const R=a.padding/2;if(j1(Re().flowchart.htmlLabels)){const B=M.children[0],z=Tr(M),Y=B.getElementsByTagName("img");if(Y){const nt=S.replace(/<img[^>]*>/g,"").trim()==="";await Promise.all([...Y].map(ot=>new Promise(ft=>{function wt(){if(ot.style.display="flex",ot.style.flexDirection="column",nt){const mt=Re().fontSize?Re().fontSize:window.getComputedStyle(document.body).fontSize,ct=5,rt=parseInt(mt,10)*ct+"px";ot.style.minWidth=rt,ot.style.maxWidth=rt}else ot.style.width="100%";ft(ot)}setTimeout(()=>{ot.complete&&wt()}),ot.addEventListener("error",wt),ot.addEventListener("load",wt)})))}F=B.getBoundingClientRect(),z.attr("width",F.width),z.attr("height",F.height)}return v?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:R,label:E}},xh=(i,a)=>{const f=a.node().getBBox();i.width=f.width,i.height=f.height};function l4(i,a,f,g){return i.insert("polygon",":first-child").attr("points",g.map(function(w){return w.x+","+w.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-a/2+","+f/2+")")}let ho={},ty={},X$t={};const DKe=()=>{ty={},X$t={},ho={}},tX=(i,a)=>(Kt.trace("In isDecendant",a," ",i," = ",ty[a].includes(i)),!!ty[a].includes(i)),MKe=(i,a)=>(Kt.info("Decendants of ",a," is ",ty[a]),Kt.info("Edge is ",i),i.v===a||i.w===a?!1:ty[a]?ty[a].includes(i.v)||tX(i.v,a)||tX(i.w,a)||ty[a].includes(i.w):(Kt.debug("Tilt, ",a,",not in decendants"),!1)),Q$t=(i,a,f,g)=>{Kt.warn("Copying children of ",i,"root",g,"data",a.node(i),g);const w=a.children(i)||[];i!==g&&w.push(i),Kt.warn("Copying (nodes) clusterId",i,"nodes",w),w.forEach(v=>{if(a.children(v).length>0)Q$t(v,a,f,g);else{const b=a.node(v);Kt.info("cp ",v," to ",g," with parent ",i),f.setNode(v,b),g!==a.parent(v)&&(Kt.warn("Setting parent",v,a.parent(v)),f.setParent(v,a.parent(v))),i!==g&&v!==i?(Kt.debug("Setting parent",v,i),f.setParent(v,i)):(Kt.info("In copy ",i,"root",g,"data",a.node(i),g),Kt.debug("Not Setting parent for node=",v,"cluster!==rootId",i!==g,"node!==clusterId",v!==i));const E=a.edges(v);Kt.debug("Copying Edges",E),E.forEach(S=>{Kt.info("Edge",S);const _=a.edge(S.v,S.w,S.name);Kt.info("Edge data",_,g);try{MKe(S,g)?(Kt.info("Copying as ",S.v,S.w,_,S.name),f.setEdge(S.v,S.w,_,S.name),Kt.info("newGraph edges ",f.edges(),f.edge(f.edges()[0]))):Kt.info("Skipping copy of edge ",S.v,"-->",S.w," rootId: ",g," clusterId:",i)}catch(M){Kt.error(M)}})}Kt.debug("Removing node",v),a.removeNode(v)})},J$t=(i,a)=>{const f=a.children(i);let g=[...f];for(const w of f)X$t[w]=i,g=[...g,...J$t(w,a)];return g},tB=(i,a)=>{Kt.trace("Searching",i);const f=a.children(i);if(Kt.trace("Searching children of id ",i,f),f.length<1)return Kt.trace("This is a valid node",i),i;for(const g of f){const w=tB(g,a);if(w)return Kt.trace("Found replacement for",i," => ",w),w}},eX=i=>!ho[i]||!ho[i].externalConnections?i:ho[i]?ho[i].id:i,IKe=(i,a)=>{if(!i||a>10){Kt.debug("Opting out, no graph ");return}else Kt.debug("Opting in, graph ");i.nodes().forEach(function(f){i.children(f).length>0&&(Kt.warn("Cluster identified",f," Replacement id in edges: ",tB(f,i)),ty[f]=J$t(f,i),ho[f]={id:tB(f,i),clusterData:i.node(f)})}),i.nodes().forEach(function(f){const g=i.children(f),w=i.edges();g.length>0?(Kt.debug("Cluster identified",f,ty),w.forEach(v=>{if(v.v!==f&&v.w!==f){const b=tX(v.v,f),E=tX(v.w,f);b^E&&(Kt.warn("Edge: ",v," leaves cluster ",f),Kt.warn("Decendants of XXX ",f,": ",ty[f]),ho[f].externalConnections=!0)}})):Kt.debug("Not a cluster ",f,ty)});for(let f of Object.keys(ho)){const g=ho[f].id,w=i.parent(g);w!==f&&ho[w]&&!ho[w].externalConnections&&(ho[f].id=w)}i.edges().forEach(function(f){const g=i.edge(f);Kt.warn("Edge "+f.v+" -> "+f.w+": "+JSON.stringify(f)),Kt.warn("Edge "+f.v+" -> "+f.w+": "+JSON.stringify(i.edge(f)));let w=f.v,v=f.w;if(Kt.warn("Fix XXX",ho,"ids:",f.v,f.w,"Translating: ",ho[f.v]," --- ",ho[f.w]),ho[f.v]&&ho[f.w]&&ho[f.v]===ho[f.w]){Kt.warn("Fixing and trixing link to self - removing XXX",f.v,f.w,f.name),Kt.warn("Fixing and trixing - removing XXX",f.v,f.w,f.name),w=eX(f.v),v=eX(f.w),i.removeEdge(f.v,f.w,f.name);const b=f.w+"---"+f.v;i.setNode(b,{domId:b,id:b,labelStyle:"",labelText:g.label,padding:0,shape:"labelRect",style:""});const E=structuredClone(g),S=structuredClone(g);E.label="",E.arrowTypeEnd="none",S.label="",E.fromCluster=f.v,S.toCluster=f.v,i.setEdge(w,b,E,f.name+"-cyclic-special"),i.setEdge(b,v,S,f.name+"-cyclic-special")}else if(ho[f.v]||ho[f.w]){if(Kt.warn("Fixing and trixing - removing XXX",f.v,f.w,f.name),w=eX(f.v),v=eX(f.w),i.removeEdge(f.v,f.w,f.name),w!==f.v){const b=i.parent(w);ho[b].externalConnections=!0,g.fromCluster=f.v}if(v!==f.w){const b=i.parent(v);ho[b].externalConnections=!0,g.toCluster=f.w}Kt.warn("Fix Replacing with XXX",w,v,f.name),i.setEdge(w,v,g,f.name)}}),Kt.warn("Adjusted Graph",jx(i)),Z$t(i,0),Kt.trace(ho)},Z$t=(i,a)=>{if(Kt.warn("extractor - ",a,jx(i),i.children("D")),a>10){Kt.error("Bailing out");return}let f=i.nodes(),g=!1;for(const w of f){const v=i.children(w);g=g||v.length>0}if(!g){Kt.debug("Done, no node has children",i.nodes());return}Kt.debug("Nodes = ",f,a);for(const w of f)if(Kt.debug("Extracting node",w,ho,ho[w]&&!ho[w].externalConnections,!i.parent(w),i.node(w),i.children("D")," Depth ",a),!ho[w])Kt.debug("Not a cluster",w,a);else if(!ho[w].externalConnections&&i.children(w)&&i.children(w).length>0){Kt.warn("Cluster without external connections, without a parent and with children",w,a);let b=i.graph().rankdir==="TB"?"LR":"TB";ho[w]&&ho[w].clusterData&&ho[w].clusterData.dir&&(b=ho[w].clusterData.dir,Kt.warn("Fixing dir",ho[w].clusterData.dir,b));const E=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:b,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});Kt.warn("Old graph before copy",jx(i)),Q$t(w,i,E,w),i.setNode(w,{clusterNode:!0,id:w,clusterData:ho[w].clusterData,labelText:ho[w].labelText,graph:E}),Kt.warn("New graph after copy node: (",w,")",jx(E)),Kt.debug("Old graph after copy",jx(i))}else Kt.warn("Cluster ** ",w," **not meeting the criteria !externalConnections:",!ho[w].externalConnections," no parent: ",!i.parent(w)," children ",i.children(w)&&i.children(w).length>0,i.children("D"),a),Kt.debug(ho);f=i.nodes(),Kt.warn("New list of nodes",f);for(const w of f){const v=i.node(w);Kt.warn(" Now next level",w,v),v.clusterNode&&Z$t(v.graph,a+1)}},tzt=(i,a)=>{if(a.length===0)return[];let f=Object.assign(a);return a.forEach(g=>{const w=i.children(g),v=tzt(i,w);f=[...f,...v]}),f},OKe=i=>tzt(i,i.children());function NKe(i,a){return i.intersect(a)}function ezt(i,a,f,g){var w=i.x,v=i.y,b=w-g.x,E=v-g.y,S=Math.sqrt(a*a*E*E+f*f*b*b),_=Math.abs(a*f*b/S);g.x<w&&(_=-_);var M=Math.abs(a*f*E/S);return g.y<v&&(M=-M),{x:w+_,y:v+M}}function PKe(i,a,f){return ezt(i,a,a,f)}function FKe(i,a,f,g){var w,v,b,E,S,_,M,F,R,B,z,Y,nt,ot,ft;if(w=a.y-i.y,b=i.x-a.x,S=a.x*i.y-i.x*a.y,R=w*f.x+b*f.y+S,B=w*g.x+b*g.y+S,!(R!==0&&B!==0&&nzt(R,B))&&(v=g.y-f.y,E=f.x-g.x,_=g.x*f.y-f.x*g.y,M=v*i.x+E*i.y+_,F=v*a.x+E*a.y+_,!(M!==0&&F!==0&&nzt(M,F))&&(z=w*E-v*b,z!==0)))return Y=Math.abs(z/2),nt=b*_-E*S,ot=nt<0?(nt-Y)/z:(nt+Y)/z,nt=v*S-w*_,ft=nt<0?(nt-Y)/z:(nt+Y)/z,{x:ot,y:ft}}function nzt(i,a){return i*a>0}function BKe(i,a,f){var g=i.x,w=i.y,v=[],b=Number.POSITIVE_INFINITY,E=Number.POSITIVE_INFINITY;typeof a.forEach=="function"?a.forEach(function(z){b=Math.min(b,z.x),E=Math.min(E,z.y)}):(b=Math.min(b,a.x),E=Math.min(E,a.y));for(var S=g-i.width/2-b,_=w-i.height/2-E,M=0;M<a.length;M++){var F=a[M],R=a[M<a.length-1?M+1:0],B=FKe(i,f,{x:S+F.x,y:_+F.y},{x:S+R.x,y:_+R.y});B&&v.push(B)}return v.length?(v.length>1&&v.sort(function(z,Y){var nt=z.x-f.x,ot=z.y-f.y,ft=Math.sqrt(nt*nt+ot*ot),wt=Y.x-f.x,mt=Y.y-f.y,ct=Math.sqrt(wt*wt+mt*mt);return ft<ct?-1:ft===ct?0:1}),v[0]):i}const eB=(i,a)=>{var f=i.x,g=i.y,w=a.x-f,v=a.y-g,b=i.width/2,E=i.height/2,S,_;return Math.abs(v)*b>Math.abs(w)*E?(v<0&&(E=-E),S=v===0?0:E*w/v,_=E):(w<0&&(b=-b),S=b,_=w===0?0:b*v/w),{x:f+S,y:g+_}},Ql={node:NKe,circle:PKe,ellipse:ezt,polygon:BKe,rect:eB},RKe=async(i,a)=>{a.useHtmlLabels||Re().flowchart.htmlLabels||(a.centerLabel=!0);const{shapeSvg:g,bbox:w,halfPadding:v}=await $1(i,a,"node "+a.classes,!0);Kt.info("Classes = ",a.classes);const b=g.insert("rect",":first-child");return b.attr("rx",a.rx).attr("ry",a.ry).attr("x",-w.width/2-v).attr("y",-w.height/2-v).attr("width",w.width+a.padding).attr("height",w.height+a.padding),xh(a,b),a.intersect=function(E){return Ql.rect(a,E)},g},jKe=i=>{const a=new Set;for(const f of i)switch(f){case"x":a.add("right"),a.add("left");break;case"y":a.add("up"),a.add("down");break;default:a.add(f);break}return a},$Ke=(i,a,f)=>{const g=jKe(i),w=2,v=a.height+2*f.padding,b=v/w,E=a.width+2*b+f.padding,S=f.padding/2;return g.has("right")&&g.has("left")&&g.has("up")&&g.has("down")?[{x:0,y:0},{x:b,y:0},{x:E/2,y:2*S},{x:E-b,y:0},{x:E,y:0},{x:E,y:-v/3},{x:E+2*S,y:-v/2},{x:E,y:-2*v/3},{x:E,y:-v},{x:E-b,y:-v},{x:E/2,y:-v-2*S},{x:b,y:-v},{x:0,y:-v},{x:0,y:-2*v/3},{x:-2*S,y:-v/2},{x:0,y:-v/3}]:g.has("right")&&g.has("left")&&g.has("up")?[{x:b,y:0},{x:E-b,y:0},{x:E,y:-v/2},{x:E-b,y:-v},{x:b,y:-v},{x:0,y:-v/2}]:g.has("right")&&g.has("left")&&g.has("down")?[{x:0,y:0},{x:b,y:-v},{x:E-b,y:-v},{x:E,y:0}]:g.has("right")&&g.has("up")&&g.has("down")?[{x:0,y:0},{x:E,y:-b},{x:E,y:-v+b},{x:0,y:-v}]:g.has("left")&&g.has("up")&&g.has("down")?[{x:E,y:0},{x:0,y:-b},{x:0,y:-v+b},{x:E,y:-v}]:g.has("right")&&g.has("left")?[{x:b,y:0},{x:b,y:-S},{x:E-b,y:-S},{x:E-b,y:0},{x:E,y:-v/2},{x:E-b,y:-v},{x:E-b,y:-v+S},{x:b,y:-v+S},{x:b,y:-v},{x:0,y:-v/2}]:g.has("up")&&g.has("down")?[{x:E/2,y:0},{x:0,y:-S},{x:b,y:-S},{x:b,y:-v+S},{x:0,y:-v+S},{x:E/2,y:-v},{x:E,y:-v+S},{x:E-b,y:-v+S},{x:E-b,y:-S},{x:E,y:-S}]:g.has("right")&&g.has("up")?[{x:0,y:0},{x:E,y:-b},{x:0,y:-v}]:g.has("right")&&g.has("down")?[{x:0,y:0},{x:E,y:0},{x:0,y:-v}]:g.has("left")&&g.has("up")?[{x:E,y:0},{x:0,y:-b},{x:E,y:-v}]:g.has("left")&&g.has("down")?[{x:E,y:0},{x:0,y:0},{x:E,y:-v}]:g.has("right")?[{x:b,y:-S},{x:b,y:-S},{x:E-b,y:-S},{x:E-b,y:0},{x:E,y:-v/2},{x:E-b,y:-v},{x:E-b,y:-v+S},{x:b,y:-v+S},{x:b,y:-v+S}]:g.has("left")?[{x:b,y:0},{x:b,y:-S},{x:E-b,y:-S},{x:E-b,y:-v+S},{x:b,y:-v+S},{x:b,y:-v},{x:0,y:-v/2}]:g.has("up")?[{x:b,y:-S},{x:b,y:-v+S},{x:0,y:-v+S},{x:E/2,y:-v},{x:E,y:-v+S},{x:E-b,y:-v+S},{x:E-b,y:-S}]:g.has("down")?[{x:E/2,y:0},{x:0,y:-S},{x:b,y:-S},{x:b,y:-v+S},{x:E-b,y:-v+S},{x:E-b,y:-S},{x:E,y:-S}]:[{x:0,y:0}]},rzt=i=>i?" "+i:"",L2=(i,a)=>`${a||"node default"}${rzt(i.classes)} ${rzt(i.class)}`,izt=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a,void 0),!0),w=g.width+a.padding,v=g.height+a.padding,b=w+v,E=[{x:b/2,y:0},{x:b,y:-b/2},{x:b/2,y:-b},{x:0,y:-b/2}];Kt.info("Question main (Circle)");const S=l4(f,b,b,E);return S.attr("style",a.style),xh(a,S),a.intersect=function(_){return Kt.warn("Intersect called"),Ql.polygon(a,E,_)},f},zKe=(i,a)=>{const f=i.insert("g").attr("class","node default").attr("id",a.domId||a.id),g=28,w=[{x:0,y:g/2},{x:g/2,y:0},{x:0,y:-g/2},{x:-g/2,y:0}];return f.insert("polygon",":first-child").attr("points",w.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 Ql.circle(a,14,b)},f},qKe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a,void 0),!0),w=4,v=g.height+a.padding,b=v/w,E=g.width+2*b+a.padding,S=[{x:b,y:0},{x:E-b,y:0},{x:E,y:-v/2},{x:E-b,y:-v},{x:b,y:-v},{x:0,y:-v/2}],_=l4(f,E,v,S);return _.attr("style",a.style),xh(a,_),a.intersect=function(M){return Ql.polygon(a,S,M)},f},HKe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,void 0,!0),w=2,v=g.height+2*a.padding,b=v/w,E=g.width+2*b+a.padding,S=$Ke(a.directions,g,a),_=l4(f,E,v,S);return _.attr("style",a.style),xh(a,_),a.intersect=function(M){return Ql.polygon(a,S,M)},f},VKe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a,void 0),!0),w=g.width+a.padding,v=g.height+a.padding,b=[{x:-v/2,y:0},{x:w,y:0},{x:w,y:-v},{x:-v/2,y:-v},{x:0,y:-v/2}];return l4(f,w,v,b).attr("style",a.style),a.width=w+v,a.height=v,a.intersect=function(S){return Ql.polygon(a,b,S)},f},UKe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a),!0),w=g.width+a.padding,v=g.height+a.padding,b=[{x:-2*v/6,y:0},{x:w-v/6,y:0},{x:w+2*v/6,y:-v},{x:v/6,y:-v}],E=l4(f,w,v,b);return E.attr("style",a.style),xh(a,E),a.intersect=function(S){return Ql.polygon(a,b,S)},f},GKe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a,void 0),!0),w=g.width+a.padding,v=g.height+a.padding,b=[{x:2*v/6,y:0},{x:w+v/6,y:0},{x:w-2*v/6,y:-v},{x:-v/6,y:-v}],E=l4(f,w,v,b);return E.attr("style",a.style),xh(a,E),a.intersect=function(S){return Ql.polygon(a,b,S)},f},KKe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a,void 0),!0),w=g.width+a.padding,v=g.height+a.padding,b=[{x:-2*v/6,y:0},{x:w+2*v/6,y:0},{x:w-v/6,y:-v},{x:v/6,y:-v}],E=l4(f,w,v,b);return E.attr("style",a.style),xh(a,E),a.intersect=function(S){return Ql.polygon(a,b,S)},f},WKe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a,void 0),!0),w=g.width+a.padding,v=g.height+a.padding,b=[{x:v/6,y:0},{x:w-v/6,y:0},{x:w+2*v/6,y:-v},{x:-2*v/6,y:-v}],E=l4(f,w,v,b);return E.attr("style",a.style),xh(a,E),a.intersect=function(S){return Ql.polygon(a,b,S)},f},YKe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a,void 0),!0),w=g.width+a.padding,v=g.height+a.padding,b=[{x:0,y:0},{x:w+v/2,y:0},{x:w,y:-v/2},{x:w+v/2,y:-v},{x:0,y:-v}],E=l4(f,w,v,b);return E.attr("style",a.style),xh(a,E),a.intersect=function(S){return Ql.polygon(a,b,S)},f},XKe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a,void 0),!0),w=g.width+a.padding,v=w/2,b=v/(2.5+w/50),E=g.height+b+a.padding,S="M 0,"+b+" a "+v+","+b+" 0,0,0 "+w+" 0 a "+v+","+b+" 0,0,0 "+-w+" 0 l 0,"+E+" a "+v+","+b+" 0,0,0 "+w+" 0 l 0,"+-E,_=f.attr("label-offset-y",b).insert("path",":first-child").attr("style",a.style).attr("d",S).attr("transform","translate("+-w/2+","+-(E/2+b)+")");return xh(a,_),a.intersect=function(M){const F=Ql.rect(a,M),R=F.x-a.x;if(v!=0&&(Math.abs(R)<a.width/2||Math.abs(R)==a.width/2&&Math.abs(F.y-a.y)>a.height/2-b)){let B=b*b*(1-R*R/(v*v));B!=0&&(B=Math.sqrt(B)),B=b-B,M.y-a.y>0&&(B=-B),F.y+=B}return F},f},QKe=async(i,a)=>{const{shapeSvg:f,bbox:g,halfPadding:w}=await $1(i,a,"node "+a.classes+" "+a.class,!0),v=f.insert("rect",":first-child"),b=a.positioned?a.width:g.width+a.padding,E=a.positioned?a.height:g.height+a.padding,S=a.positioned?-b/2:-g.width/2-w,_=a.positioned?-E/2:-g.height/2-w;if(v.attr("class","basic label-container").attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("x",S).attr("y",_).attr("width",b).attr("height",E),a.props){const M=new Set(Object.keys(a.props));a.props.borders&&(Jpt(v,a.props.borders,b,E),M.delete("borders")),M.forEach(F=>{Kt.warn(`Unknown node property ${F}`)})}return xh(a,v),a.intersect=function(M){return Ql.rect(a,M)},f},JKe=async(i,a)=>{const{shapeSvg:f,bbox:g,halfPadding:w}=await $1(i,a,"node "+a.classes,!0),v=f.insert("rect",":first-child"),b=a.positioned?a.width:g.width+a.padding,E=a.positioned?a.height:g.height+a.padding,S=a.positioned?-b/2:-g.width/2-w,_=a.positioned?-E/2:-g.height/2-w;if(v.attr("class","basic cluster composite label-container").attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("x",S).attr("y",_).attr("width",b).attr("height",E),a.props){const M=new Set(Object.keys(a.props));a.props.borders&&(Jpt(v,a.props.borders,b,E),M.delete("borders")),M.forEach(F=>{Kt.warn(`Unknown node property ${F}`)})}return xh(a,v),a.intersect=function(M){return Ql.rect(a,M)},f},ZKe=async(i,a)=>{const{shapeSvg:f}=await $1(i,a,"label",!0);Kt.trace("Classes = ",a.class);const g=f.insert("rect",":first-child"),w=0,v=0;if(g.attr("width",w).attr("height",v),f.attr("class","label edgeLabel"),a.props){const b=new Set(Object.keys(a.props));a.props.borders&&(Jpt(g,a.props.borders,w,v),b.delete("borders")),b.forEach(E=>{Kt.warn(`Unknown node property ${E}`)})}return xh(a,g),a.intersect=function(b){return Ql.rect(a,b)},f};function Jpt(i,a,f,g){const w=[],v=E=>{w.push(E,0)},b=E=>{w.push(0,E)};a.includes("t")?(Kt.debug("add top border"),v(f)):b(f),a.includes("r")?(Kt.debug("add right border"),v(g)):b(g),a.includes("b")?(Kt.debug("add bottom border"),v(f)):b(f),a.includes("l")?(Kt.debug("add left border"),v(g)):b(g),i.attr("stroke-dasharray",w.join(" "))}const tWe=(i,a)=>{let f;a.classes?f="node "+a.classes:f="node default";const g=i.insert("g").attr("class",f).attr("id",a.domId||a.id),w=g.insert("rect",":first-child"),v=g.insert("line"),b=g.insert("g").attr("class","label"),E=a.labelText.flat?a.labelText.flat():a.labelText;let S="";typeof E=="object"?S=E[0]:S=E,Kt.info("Label text abc79",S,E,typeof E=="object");const _=b.node().appendChild(ab(S,a.labelStyle,!0,!0));let M={width:0,height:0};if(j1(Re().flowchart.htmlLabels)){const Y=_.children[0],nt=Tr(_);M=Y.getBoundingClientRect(),nt.attr("width",M.width),nt.attr("height",M.height)}Kt.info("Text 2",E);const F=E.slice(1,E.length);let R=_.getBBox();const B=b.node().appendChild(ab(F.join?F.join("<br/>"):F,a.labelStyle,!0,!0));if(j1(Re().flowchart.htmlLabels)){const Y=B.children[0],nt=Tr(B);M=Y.getBoundingClientRect(),nt.attr("width",M.width),nt.attr("height",M.height)}const z=a.padding/2;return Tr(B).attr("transform","translate( "+(M.width>R.width?0:(R.width-M.width)/2)+", "+(R.height+z+5)+")"),Tr(_).attr("transform","translate( "+(M.width<R.width?0:-(R.width-M.width)/2)+", 0)"),M=b.node().getBBox(),b.attr("transform","translate("+-M.width/2+", "+(-M.height/2-z+3)+")"),w.attr("class","outer title-state").attr("x",-M.width/2-z).attr("y",-M.height/2-z).attr("width",M.width+a.padding).attr("height",M.height+a.padding),v.attr("class","divider").attr("x1",-M.width/2-z).attr("x2",M.width/2+z).attr("y1",-M.height/2-z+R.height+z).attr("y2",-M.height/2-z+R.height+z),xh(a,w),a.intersect=function(Y){return Ql.rect(a,Y)},g},eWe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a,void 0),!0),w=g.height+a.padding,v=g.width+w/4+a.padding,b=f.insert("rect",":first-child").attr("style",a.style).attr("rx",w/2).attr("ry",w/2).attr("x",-v/2).attr("y",-w/2).attr("width",v).attr("height",w);return xh(a,b),a.intersect=function(E){return Ql.rect(a,E)},f},nWe=async(i,a)=>{const{shapeSvg:f,bbox:g,halfPadding:w}=await $1(i,a,L2(a,void 0),!0),v=f.insert("circle",":first-child");return v.attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("r",g.width/2+w).attr("width",g.width+a.padding).attr("height",g.height+a.padding),Kt.info("Circle main"),xh(a,v),a.intersect=function(b){return Kt.info("Circle intersect",a,g.width/2+w,b),Ql.circle(a,g.width/2+w,b)},f},rWe=async(i,a)=>{const{shapeSvg:f,bbox:g,halfPadding:w}=await $1(i,a,L2(a,void 0),!0),v=5,b=f.insert("g",":first-child"),E=b.insert("circle"),S=b.insert("circle");return b.attr("class",a.class),E.attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("r",g.width/2+w+v).attr("width",g.width+a.padding+v*2).attr("height",g.height+a.padding+v*2),S.attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("r",g.width/2+w).attr("width",g.width+a.padding).attr("height",g.height+a.padding),Kt.info("DoubleCircle main"),xh(a,E),a.intersect=function(_){return Kt.info("DoubleCircle intersect",a,g.width/2+w+v,_),Ql.circle(a,g.width/2+w+v,_)},f},iWe=async(i,a)=>{const{shapeSvg:f,bbox:g}=await $1(i,a,L2(a,void 0),!0),w=g.width+a.padding,v=g.height+a.padding,b=[{x:0,y:0},{x:w,y:0},{x:w,y:-v},{x:0,y:-v},{x:0,y:0},{x:-8,y:0},{x:w+8,y:0},{x:w+8,y:-v},{x:-8,y:-v},{x:-8,y:0}],E=l4(f,w,v,b);return E.attr("style",a.style),xh(a,E),a.intersect=function(S){return Ql.polygon(a,b,S)},f},sWe=(i,a)=>{const f=i.insert("g").attr("class","node default").attr("id",a.domId||a.id),g=f.insert("circle",":first-child");return g.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),xh(a,g),a.intersect=function(w){return Ql.circle(a,7,w)},f},szt=(i,a,f)=>{const g=i.insert("g").attr("class","node default").attr("id",a.domId||a.id);let w=70,v=10;f==="LR"&&(w=10,v=70);const b=g.append("rect").attr("x",-1*w/2).attr("y",-1*v/2).attr("width",w).attr("height",v).attr("class","fork-join");return xh(a,b),a.height=a.height+a.padding/2,a.width=a.width+a.padding/2,a.intersect=function(E){return Ql.rect(a,E)},g},azt={rhombus:izt,composite:JKe,question:izt,rect:QKe,labelRect:ZKe,rectWithTitle:tWe,choice:zKe,circle:nWe,doublecircle:rWe,stadium:eWe,hexagon:qKe,block_arrow:HKe,rect_left_inv_arrow:VKe,lean_right:UKe,lean_left:GKe,trapezoid:KKe,inv_trapezoid:WKe,rect_right_inv_arrow:YKe,cylinder:XKe,start:sWe,end:(i,a)=>{const f=i.insert("g").attr("class","node default").attr("id",a.domId||a.id),g=f.insert("circle",":first-child"),w=f.insert("circle",":first-child");return w.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),g.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),xh(a,w),a.intersect=function(v){return Ql.circle(a,7,v)},f},note:RKe,subroutine:iWe,fork:szt,join:szt,class_box:(i,a)=>{const f=a.padding/2,g=4,w=8;let v;a.classes?v="node "+a.classes:v="node default";const b=i.insert("g").attr("class",v).attr("id",a.domId||a.id),E=b.insert("rect",":first-child"),S=b.insert("line"),_=b.insert("line");let M=0,F=g;const R=b.insert("g").attr("class","label");let B=0;const z=a.classData.annotations&&a.classData.annotations[0],Y=a.classData.annotations[0]?"«"+a.classData.annotations[0]+"»":"",nt=R.node().appendChild(ab(Y,a.labelStyle,!0,!0));let ot=nt.getBBox();if(j1(Re().flowchart.htmlLabels)){const gt=nt.children[0],Q=Tr(nt);ot=gt.getBoundingClientRect(),Q.attr("width",ot.width),Q.attr("height",ot.height)}a.classData.annotations[0]&&(F+=ot.height+g,M+=ot.width);let ft=a.classData.label;a.classData.type!==void 0&&a.classData.type!==""&&(Re().flowchart.htmlLabels?ft+="&lt;"+a.classData.type+"&gt;":ft+="<"+a.classData.type+">");const wt=R.node().appendChild(ab(ft,a.labelStyle,!0,!0));Tr(wt).attr("class","classTitle");let mt=wt.getBBox();if(j1(Re().flowchart.htmlLabels)){const gt=wt.children[0],Q=Tr(wt);mt=gt.getBoundingClientRect(),Q.attr("width",mt.width),Q.attr("height",mt.height)}F+=mt.height+g,mt.width>M&&(M=mt.width);const ct=[];a.classData.members.forEach(gt=>{const Q=gt.getDisplayDetails();let dt=Q.displayText;Re().flowchart.htmlLabels&&(dt=dt.replace(/</g,"&lt;").replace(/>/g,"&gt;"));const K=R.node().appendChild(ab(dt,Q.cssStyle?Q.cssStyle:a.labelStyle,!0,!0));let yt=K.getBBox();if(j1(Re().flowchart.htmlLabels)){const V=K.children[0],Ot=Tr(K);yt=V.getBoundingClientRect(),Ot.attr("width",yt.width),Ot.attr("height",yt.height)}yt.width>M&&(M=yt.width),F+=yt.height+g,ct.push(K)}),F+=w;const rt=[];if(a.classData.methods.forEach(gt=>{const Q=gt.getDisplayDetails();let dt=Q.displayText;Re().flowchart.htmlLabels&&(dt=dt.replace(/</g,"&lt;").replace(/>/g,"&gt;"));const K=R.node().appendChild(ab(dt,Q.cssStyle?Q.cssStyle:a.labelStyle,!0,!0));let yt=K.getBBox();if(j1(Re().flowchart.htmlLabels)){const V=K.children[0],Ot=Tr(K);yt=V.getBoundingClientRect(),Ot.attr("width",yt.width),Ot.attr("height",yt.height)}yt.width>M&&(M=yt.width),F+=yt.height+g,rt.push(K)}),F+=w,z){let gt=(M-ot.width)/2;Tr(nt).attr("transform","translate( "+(-1*M/2+gt)+", "+-1*F/2+")"),B=ot.height+g}let it=(M-mt.width)/2;return Tr(wt).attr("transform","translate( "+(-1*M/2+it)+", "+(-1*F/2+B)+")"),B+=mt.height+g,S.attr("class","divider").attr("x1",-M/2-f).attr("x2",M/2+f).attr("y1",-F/2-f+w+B).attr("y2",-F/2-f+w+B),B+=w,ct.forEach(gt=>{Tr(gt).attr("transform","translate( "+-M/2+", "+(-1*F/2+B+w/2)+")");const Q=gt==null?void 0:gt.getBBox();B+=((Q==null?void 0:Q.height)??0)+g}),B+=w,_.attr("class","divider").attr("x1",-M/2-f).attr("x2",M/2+f).attr("y1",-F/2-f+w+B).attr("y2",-F/2-f+w+B),B+=w,rt.forEach(gt=>{Tr(gt).attr("transform","translate( "+-M/2+", "+(-1*F/2+B)+")");const Q=gt==null?void 0:gt.getBBox();B+=((Q==null?void 0:Q.height)??0)+g}),E.attr("style",a.style).attr("class","outer title-state").attr("x",-M/2-f).attr("y",-(F/2)-f).attr("width",M+a.padding).attr("height",F+a.padding),xh(a,E),a.intersect=function(gt){return Ql.rect(a,gt)},b}};let TD={};const nX=async(i,a,f)=>{let g,w;if(a.link){let v;Re().securityLevel==="sandbox"?v="_top":a.linkTarget&&(v=a.linkTarget||"_blank"),g=i.insert("svg:a").attr("xlink:href",a.link).attr("target",v),w=await azt[a.shape](g,a,f)}else w=await azt[a.shape](i,a,f),g=w;return a.tooltip&&w.attr("title",a.tooltip),a.class&&w.attr("class","node default "+a.class),g.attr("data-node","true"),g.attr("data-id",a.id),TD[a.id]=g,a.haveCallback&&TD[a.id].attr("class",TD[a.id].attr("class")+" clickable"),g},aWe=(i,a)=>{TD[a.id]=i},oWe=()=>{TD={}},Zpt=i=>{const a=TD[i.id];Kt.trace("Transforming node",i.diff,i,"translate("+(i.x-i.width/2-5)+", "+i.width/2+")");const f=8,g=i.diff||0;return i.clusterNode?a.attr("transform","translate("+(i.x+g-i.width/2)+", "+(i.y-i.height/2-f)+")"):a.attr("transform","translate("+i.x+", "+i.y+")"),g},rX=({flowchart:i})=>{var w,v;const a=((w=i==null?void 0:i.subGraphTitleMargin)==null?void 0:w.top)??0,f=((v=i==null?void 0:i.subGraphTitleMargin)==null?void 0:v.bottom)??0,g=a+f;return{subGraphTitleTopMargin:a,subGraphTitleBottomMargin:f,subGraphTitleTotalMargin:g}},cWe={rect:(i,a)=>{Kt.info("Creating subgraph rect for ",a.id,a);const f=Re(),g=i.insert("g").attr("class","cluster"+(a.class?" "+a.class:"")).attr("id",a.id),w=g.insert("rect",":first-child"),v=j1(f.flowchart.htmlLabels),b=g.insert("g").attr("class","cluster-label"),E=a.labelType==="markdown"?ZY(b,a.labelText,{style:a.labelStyle,useHtmlLabels:v}):b.node().appendChild(ab(a.labelText,a.labelStyle,void 0,!0));let S=E.getBBox();if(j1(f.flowchart.htmlLabels)){const z=E.children[0],Y=Tr(E);S=z.getBoundingClientRect(),Y.attr("width",S.width),Y.attr("height",S.height)}const _=0*a.padding,M=_/2,F=a.width<=S.width+_?S.width+_:a.width;a.width<=S.width+_?a.diff=(S.width-a.width)/2-a.padding/2:a.diff=-a.padding/2,Kt.trace("Data ",a,JSON.stringify(a)),w.attr("style",a.style).attr("rx",a.rx).attr("ry",a.ry).attr("x",a.x-F/2).attr("y",a.y-a.height/2-M).attr("width",F).attr("height",a.height+_);const{subGraphTitleTopMargin:R}=rX(f);v?b.attr("transform",`translate(${a.x-S.width/2}, ${a.y-a.height/2+R})`):b.attr("transform",`translate(${a.x}, ${a.y-a.height/2+R})`);const B=w.node().getBBox();return a.width=B.width,a.height=B.height,a.intersect=function(z){return eB(a,z)},g},roundedWithTitle:(i,a)=>{const f=Re(),g=i.insert("g").attr("class",a.classes).attr("id",a.id),w=g.insert("rect",":first-child"),v=g.insert("g").attr("class","cluster-label"),b=g.append("rect"),E=v.node().appendChild(ab(a.labelText,a.labelStyle,void 0,!0));let S=E.getBBox();if(j1(f.flowchart.htmlLabels)){const z=E.children[0],Y=Tr(E);S=z.getBoundingClientRect(),Y.attr("width",S.width),Y.attr("height",S.height)}S=E.getBBox();const _=0*a.padding,M=_/2,F=a.width<=S.width+a.padding?S.width+a.padding:a.width;a.width<=S.width+a.padding?a.diff=(S.width+a.padding*0-a.width)/2:a.diff=-a.padding/2,w.attr("class","outer").attr("x",a.x-F/2-M).attr("y",a.y-a.height/2-M).attr("width",F+_).attr("height",a.height+_),b.attr("class","inner").attr("x",a.x-F/2-M).attr("y",a.y-a.height/2-M+S.height-1).attr("width",F+_).attr("height",a.height+_-S.height-3);const{subGraphTitleTopMargin:R}=rX(f);v.attr("transform",`translate(${a.x-S.width/2}, ${a.y-a.height/2-a.padding/3+(j1(f.flowchart.htmlLabels)?5:3)+R})`);const B=w.node().getBBox();return a.height=B.height,a.intersect=function(z){return eB(a,z)},g},noteGroup:(i,a)=>{const f=i.insert("g").attr("class","note-cluster").attr("id",a.id),g=f.insert("rect",":first-child"),w=0*a.padding,v=w/2;g.attr("rx",a.rx).attr("ry",a.ry).attr("x",a.x-a.width/2-v).attr("y",a.y-a.height/2-v).attr("width",a.width+w).attr("height",a.height+w).attr("fill","none");const b=g.node().getBBox();return a.width=b.width,a.height=b.height,a.intersect=function(E){return eB(a,E)},f},divider:(i,a)=>{const f=i.insert("g").attr("class",a.classes).attr("id",a.id),g=f.insert("rect",":first-child"),w=0*a.padding,v=w/2;g.attr("class","divider").attr("x",a.x-a.width/2-v).attr("y",a.y-a.height/2).attr("width",a.width+w).attr("height",a.height+w);const b=g.node().getBBox();return a.width=b.width,a.height=b.height,a.diff=-a.padding/2,a.intersect=function(E){return eB(a,E)},f}};let ozt={};const uWe=(i,a)=>{Kt.trace("Inserting cluster");const f=a.shape||"rect";ozt[a.id]=cWe[f](i,a)},lWe=()=>{ozt={}},C8={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:5.3};function iX(i,a){if(i===void 0||a===void 0)return{angle:0,deltaX:0,deltaY:0};i=sX(i),a=sX(a);const[f,g]=[i.x,i.y],[w,v]=[a.x,a.y],b=w-f,E=v-g;return{angle:Math.atan(E/b),deltaX:b,deltaY:E}}const sX=i=>Array.isArray(i)?{x:i[0],y:i[1]}:i,czt=i=>({x:function(a,f,g){let w=0;if(f===0&&Object.hasOwn(C8,i.arrowTypeStart)){const{angle:v,deltaX:b}=iX(g[0],g[1]);w=C8[i.arrowTypeStart]*Math.cos(v)*(b>=0?1:-1)}else if(f===g.length-1&&Object.hasOwn(C8,i.arrowTypeEnd)){const{angle:v,deltaX:b}=iX(g[g.length-1],g[g.length-2]);w=C8[i.arrowTypeEnd]*Math.cos(v)*(b>=0?1:-1)}return sX(a).x+w},y:function(a,f,g){let w=0;if(f===0&&Object.hasOwn(C8,i.arrowTypeStart)){const{angle:v,deltaY:b}=iX(g[0],g[1]);w=C8[i.arrowTypeStart]*Math.abs(Math.sin(v))*(b>=0?1:-1)}else if(f===g.length-1&&Object.hasOwn(C8,i.arrowTypeEnd)){const{angle:v,deltaY:b}=iX(g[g.length-1],g[g.length-2]);w=C8[i.arrowTypeEnd]*Math.abs(Math.sin(v))*(b>=0?1:-1)}return sX(a).y+w}}),uzt=(i,a,f,g,w)=>{a.arrowTypeStart&&lzt(i,"start",a.arrowTypeStart,f,g,w),a.arrowTypeEnd&&lzt(i,"end",a.arrowTypeEnd,f,g,w)},hWe={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},lzt=(i,a,f,g,w,v)=>{const b=hWe[f];if(!b){Kt.warn(`Unknown arrow type: ${f}`);return}const E=a==="start"?"Start":"End";i.attr(`marker-${a}`,`url(${g}#${w}_${v}-${b}${E})`)};let aX={},p0={};const fWe=()=>{aX={},p0={}},tbt=(i,a)=>{const f=j1(Re().flowchart.htmlLabels),g=a.labelType==="markdown"?ZY(i,a.label,{style:a.labelStyle,useHtmlLabels:f,addSvgBackground:!0}):ab(a.label,a.labelStyle),w=i.insert("g").attr("class","edgeLabel"),v=w.insert("g").attr("class","label");v.node().appendChild(g);let b=g.getBBox();if(f){const S=g.children[0],_=Tr(g);b=S.getBoundingClientRect(),_.attr("width",b.width),_.attr("height",b.height)}v.attr("transform","translate("+-b.width/2+", "+-b.height/2+")"),aX[a.id]=w,a.width=b.width,a.height=b.height;let E;if(a.startLabelLeft){const S=ab(a.startLabelLeft,a.labelStyle),_=i.insert("g").attr("class","edgeTerminals"),M=_.insert("g").attr("class","inner");E=M.node().appendChild(S);const F=S.getBBox();M.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),p0[a.id]||(p0[a.id]={}),p0[a.id].startLeft=_,oX(E,a.startLabelLeft)}if(a.startLabelRight){const S=ab(a.startLabelRight,a.labelStyle),_=i.insert("g").attr("class","edgeTerminals"),M=_.insert("g").attr("class","inner");E=_.node().appendChild(S),M.node().appendChild(S);const F=S.getBBox();M.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),p0[a.id]||(p0[a.id]={}),p0[a.id].startRight=_,oX(E,a.startLabelRight)}if(a.endLabelLeft){const S=ab(a.endLabelLeft,a.labelStyle),_=i.insert("g").attr("class","edgeTerminals"),M=_.insert("g").attr("class","inner");E=M.node().appendChild(S);const F=S.getBBox();M.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),_.node().appendChild(S),p0[a.id]||(p0[a.id]={}),p0[a.id].endLeft=_,oX(E,a.endLabelLeft)}if(a.endLabelRight){const S=ab(a.endLabelRight,a.labelStyle),_=i.insert("g").attr("class","edgeTerminals"),M=_.insert("g").attr("class","inner");E=M.node().appendChild(S);const F=S.getBBox();M.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),_.node().appendChild(S),p0[a.id]||(p0[a.id]={}),p0[a.id].endRight=_,oX(E,a.endLabelRight)}return g};function oX(i,a){Re().flowchart.htmlLabels&&i&&(i.style.width=a.length*9+"px",i.style.height="12px")}const hzt=(i,a)=>{Kt.debug("Moving label abc88 ",i.id,i.label,aX[i.id],a);let f=a.updatedPath?a.updatedPath:a.originalPath;const g=Re(),{subGraphTitleTotalMargin:w}=rX(g);if(i.label){const v=aX[i.id];let b=i.x,E=i.y;if(f){const S=uo.calcLabelPosition(f);Kt.debug("Moving label "+i.label+" from (",b,",",E,") to (",S.x,",",S.y,") abc88"),a.updatedPath&&(b=S.x,E=S.y)}v.attr("transform",`translate(${b}, ${E+w/2})`)}if(i.startLabelLeft){const v=p0[i.id].startLeft;let b=i.x,E=i.y;if(f){const S=uo.calcTerminalLabelPosition(i.arrowTypeStart?10:0,"start_left",f);b=S.x,E=S.y}v.attr("transform",`translate(${b}, ${E})`)}if(i.startLabelRight){const v=p0[i.id].startRight;let b=i.x,E=i.y;if(f){const S=uo.calcTerminalLabelPosition(i.arrowTypeStart?10:0,"start_right",f);b=S.x,E=S.y}v.attr("transform",`translate(${b}, ${E})`)}if(i.endLabelLeft){const v=p0[i.id].endLeft;let b=i.x,E=i.y;if(f){const S=uo.calcTerminalLabelPosition(i.arrowTypeEnd?10:0,"end_left",f);b=S.x,E=S.y}v.attr("transform",`translate(${b}, ${E})`)}if(i.endLabelRight){const v=p0[i.id].endRight;let b=i.x,E=i.y;if(f){const S=uo.calcTerminalLabelPosition(i.arrowTypeEnd?10:0,"end_right",f);b=S.x,E=S.y}v.attr("transform",`translate(${b}, ${E})`)}},dWe=(i,a)=>{const f=i.x,g=i.y,w=Math.abs(a.x-f),v=Math.abs(a.y-g),b=i.width/2,E=i.height/2;return w>=b||v>=E},gWe=(i,a,f)=>{Kt.debug(`intersection calc abc89:
118 `),E.style===void 0&&(R.style=R.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),R.labelStyle=R.labelStyle.replace("color:","fill:"),R.id=_,R.classes="flowchart-link "+M+" "+F,a.setEdge(E.start,E.end,R,g)})},nbt={setConf:pWe,addVertices:bzt,addEdges:wzt,getClasses:function(i,a){return a.db.getClasses()},draw:async function(i,a,f,g){Kt.info("Drawing flowchart");let w=g.db.getDirection();w===void 0&&(w="TD");const{securityLevel:v,flowchart:b}=Re(),E=b.nodeSpacing||50,S=b.rankSpacing||50;let _;v==="sandbox"&&(_=Tr("#i"+a));const M=Tr(v==="sandbox"?_.nodes()[0].contentDocument.body:"body"),F=v==="sandbox"?_.nodes()[0].contentDocument:document,R=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:w,nodesep:E,ranksep:S,marginx:0,marginy:0}).setDefaultEdgeLabel(function(){return{}});let B;const z=g.db.getSubGraphs();Kt.info("Subgraphs - ",z);for(let ct=z.length-1;ct>=0;ct--)B=z[ct],Kt.info("Subgraph - ",B),g.db.addVertex(B.id,{text:B.title,type:B.labelType},"group",void 0,B.classes,B.dir);const Y=g.db.getVertices(),nt=g.db.getEdges();Kt.info("Edges",nt);let ot=0;for(ot=z.length-1;ot>=0;ot--){B=z[ot],$Ot("cluster").append("text");for(let ct=0;ct<B.nodes.length;ct++)Kt.info("Setting up subgraphs",B.nodes[ct],B.id),R.setParent(B.nodes[ct],B.id)}bzt(Y,R,a,M,F,g),wzt(nt,R);const ft=M.select(`[id="${a}"]`),wt=M.select("#"+a+" g");if(await ebt(wt,R,["point","circle","cross"],"flowchart",a),uo.insertTitle(ft,"flowchartTitleText",b.titleTopMargin,g.db.getDiagramTitle()),w8(R,ft,b.diagramPadding,b.useMaxWidth),g.db.indexNodes("subGraph"+ot),!b.htmlLabels){const ct=F.querySelectorAll('[id="'+a+'"] .edgeLabel .label');for(const rt of ct){const it=rt.getBBox(),gt=F.createElementNS("http://www.w3.org/2000/svg","rect");gt.setAttribute("rx",0),gt.setAttribute("ry",0),gt.setAttribute("width",it.width),gt.setAttribute("height",it.height),rt.insertBefore(gt,rt.firstChild)}}Object.keys(Y).forEach(function(ct){const rt=Y[ct];if(rt.link){const it=Tr("#"+a+' [id="'+ct+'"]');if(it){const gt=F.createElementNS("http://www.w3.org/2000/svg","a");gt.setAttributeNS("http://www.w3.org/2000/svg","class",rt.classes.join(" ")),gt.setAttributeNS("http://www.w3.org/2000/svg","href",rt.link),gt.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),v==="sandbox"?gt.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):rt.linkTarget&&gt.setAttributeNS("http://www.w3.org/2000/svg","target",rt.linkTarget);const Q=it.insert(function(){return gt},":first-child"),dt=it.select(".label-container");dt&&Q.append(function(){return dt.node()});const K=it.select(".label");K&&Q.append(function(){return K.node()})}}})}},bWe=(i,a)=>{const f=jPt,g=f(i,"r"),w=f(i,"g"),v=f(i,"b");return g9(g,w,v,a)},mzt=i=>`.label {
174 .edgeLabel {
842 .nodeLabel, .edgeLabel {
845 .edgeLabel .label rect {
851 .edgeLabel .label span {
985 `);S.forEach(function(R){Kt.debug(`Adding line: ${R}`),E.append("tspan").text(R).attr("class","title").attr("dy",f.textHeight)});const _=b.node().getBBox(),F=b.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",_.width+2*f.padding).attr("height",_.height+S.length*f.textHeight+f.padding+.5*f.dividerMargin).node().getBBox().width;return E.node().childNodes.forEach(function(R){R.setAttribute("x",(F-R.getBBox().width)/2)}),v.width=F,v.height=_.height+S.length*f.textHeight+f.padding+.5*f.dividerMargin,v},jqt=function(i,a,f,g){const{displayText:w,cssStyle:v}=a.getDisplayDetails(),b=i.append("tspan").attr("x",g.padding).text(w);v!==""&&b.attr("style",a.cssStyle),f||b.attr("dy",g.textHeight)},Vbt={getClassTitleString:Rqt,drawClass:OJe,drawEdge:IJe,drawNote:NJe};let xX={};const kX=20,vB=function(i){const a=Object.entries(xX).find(f=>f[1].label===i);if(a)return a[0]},PJe=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")},FJe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Aqt,db:yX,renderer:{draw:function(i,a,f,g){const w=Re().class;xX={},Kt.info("Rendering diagram "+i);const v=Re().securityLevel;let b;v==="sandbox"&&(b=Tr("#i"+a));const E=Tr(v==="sandbox"?b.nodes()[0].contentDocument.body:"body"),S=E.select(`[id='${a}']`);PJe(S);const _=new l1({multigraph:!0});_.setGraph({isMultiGraph:!0}),_.setDefaultEdgeLabel(function(){return{}});const M=g.db.getClasses(),F=Object.keys(M);for(const ft of F){const wt=M[ft],mt=Vbt.drawClass(S,wt,w,g);xX[mt.id]=mt,_.setNode(mt.id,mt),Kt.info("Org height: "+mt.height)}g.db.getRelations().forEach(function(ft){Kt.info("tjoho"+vB(ft.id1)+vB(ft.id2)+JSON.stringify(ft)),_.setEdge(vB(ft.id1),vB(ft.id2),{relation:ft},ft.title||"DEFAULT")}),g.db.getNotes().forEach(function(ft){Kt.debug(`Adding note: ${JSON.stringify(ft)}`);const wt=Vbt.drawNote(S,ft,w,g);xX[wt.id]=wt,_.setNode(wt.id,wt),ft.class&&ft.class in M&&_.setEdge(ft.id,vB(ft.class),{relation:{id1:ft.id,id2:ft.class,relation:{type1:"none",type2:"none",lineType:10}}},"DEFAULT")}),kD(_),_.nodes().forEach(function(ft){ft!==void 0&&_.node(ft)!==void 0&&(Kt.debug("Node "+ft+": "+JSON.stringify(_.node(ft))),E.select("#"+(g.db.lookUpDomId(ft)||ft)).attr("transform","translate("+(_.node(ft).x-_.node(ft).width/2)+","+(_.node(ft).y-_.node(ft).height/2)+" )"))}),_.edges().forEach(function(ft){ft!==void 0&&_.edge(ft)!==void 0&&(Kt.debug("Edge "+ft.v+" -> "+ft.w+": "+JSON.stringify(_.edge(ft))),Vbt.drawEdge(S,_.edge(ft),_.edge(ft).relation,w,g))});const z=S.node().getBBox(),Y=z.width+kX*2,nt=z.height+kX*2;sg(S,nt,Y,w.useMaxWidth);const ot=`${z.x-kX} ${z.y-kX} ${Y} ${nt}`;Kt.debug(`viewBox ${ot}`),S.attr("viewBox",ot)}},styles:Fqt,init:i=>{i.class||(i.class={}),i.class.arrowMarkerAbsolute=i.arrowMarkerAbsolute,yX.clear()}}},Symbol.toStringTag,{value:"Module"})),Ubt=i=>ei.sanitizeText(i,Re());let Gbt={dividerMargin:10,padding:5,textHeight:10,curve:void 0};const BJe=function(i,a,f,g){const w=Object.keys(i);Kt.info("keys:",w),Kt.info(i),w.forEach(function(v){var _,M;const b=i[v],S={shape:"rect",id:b.id,domId:b.domId,labelText:Ubt(b.id),labelStyle:"",style:"fill: none; stroke: black",padding:((_=Re().flowchart)==null?void 0:_.padding)??((M=Re().class)==null?void 0:M.padding)};a.setNode(b.id,S),$qt(b.classes,a,f,g,b.id),Kt.info("setNode",S)})},$qt=function(i,a,f,g,w){const v=Object.keys(i);Kt.info("keys:",v),Kt.info(i),v.filter(b=>i[b].parent==w).forEach(function(b){var z,Y;const E=i[b],S=E.cssClasses.join(" "),_=C2(E.styles),M=E.label??E.id,F=0,R="class_box",B={labelStyle:_.labelStyle,shape:R,labelText:Ubt(M),classData:E,rx:F,ry:F,class:S,style:_.style,id:E.id,domId:E.domId,tooltip:g.db.getTooltip(E.id,w)||"",haveCallback:E.haveCallback,link:E.link,width:E.type==="group"?500:void 0,type:E.type,padding:((z=Re().flowchart)==null?void 0:z.padding)??((Y=Re().class)==null?void 0:Y.padding)};a.setNode(E.id,B),w&&a.setParent(E.id,w),Kt.info("setNode",B)})},RJe=function(i,a,f,g){Kt.info(i),i.forEach(function(w,v){var Y,nt;const b=w,E="",S={labelStyle:"",style:""},_=b.text,M=0,F="note",R={labelStyle:S.labelStyle,shape:F,labelText:Ubt(_),noteData:b,rx:M,ry:M,class:E,style:S.style,id:b.id,domId:b.id,tooltip:"",type:"note",padding:((Y=Re().flowchart)==null?void 0:Y.padding)??((nt=Re().class)==null?void 0:nt.padding)};if(a.setNode(b.id,R),Kt.info("setNode",R),!b.class||!(b.class in g))return;const B=f+v,z={id:`edgeNote${B}`,classes:"relation",pattern:"dotted",arrowhead:"none",startLabelRight:"",endLabelLeft:"",arrowTypeStart:"none",arrowTypeEnd:"none",style:"fill:none",labelStyle:"",curve:Xw(Gbt.curve,Kg)};a.setEdge(b.id,b.class,z,B)})},jJe=function(i,a){const f=Re().flowchart;let g=0;i.forEach(function(w){var b;g++;const v={classes:"relation",pattern:w.relation.lineType==1?"dashed":"solid",id:`id_${w.id1}_${w.id2}_${g}`,arrowhead:w.type==="arrow_open"?"none":"normal",startLabelRight:w.relationTitle1==="none"?"":w.relationTitle1,endLabelLeft:w.relationTitle2==="none"?"":w.relationTitle2,arrowTypeStart:zqt(w.relation.type1),arrowTypeEnd:zqt(w.relation.type2),style:"fill:none",labelStyle:"",curve:Xw(f==null?void 0:f.curve,Kg)};if(Kt.info(v,w),w.style!==void 0){const E=C2(w.style);v.style=E.style,v.labelStyle=E.labelStyle}w.text=w.title,w.text===void 0?w.style!==void 0&&(v.arrowheadStyle="fill: #333"):(v.arrowheadStyle="fill: #333",v.labelpos="c",((b=Re().flowchart)==null?void 0:b.htmlLabels)??Re().htmlLabels?(v.labelType="html",v.label='<span class="edgeLabel">'+w.text+"</span>"):(v.labelType="text",v.label=w.text.replace(ei.lineBreakRegex,`
986 `),w.style===void 0&&(v.style=v.style||"stroke: #333; stroke-width: 1.5px;fill:none"),v.labelStyle=v.labelStyle.replace("color:","fill:"))),a.setEdge(w.id1,w.id2,v,g)})},$Je=function(i){Gbt={...Gbt,...i}},zJe=async function(i,a,f,g){Kt.info("Drawing class - ",a);const w=Re().flowchart??Re().class,v=Re().securityLevel;Kt.info("config:",w);const b=(w==null?void 0:w.nodeSpacing)??50,E=(w==null?void 0:w.rankSpacing)??50,S=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:g.db.getDirection(),nodesep:b,ranksep:E,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),_=g.db.getNamespaces(),M=g.db.getClasses(),F=g.db.getRelations(),R=g.db.getNotes();Kt.info(F),BJe(_,S,a,g),$qt(M,S,a,g),jJe(F,S),RJe(R,S,F.length+1,M);let B;v==="sandbox"&&(B=Tr("#i"+a));const z=Tr(v==="sandbox"?B.nodes()[0].contentDocument.body:"body"),Y=z.select(`[id="${a}"]`),nt=z.select("#"+a+" g");if(await ebt(nt,S,["aggregation","extension","composition","dependency","lollipop"],"classDiagram",a),uo.insertTitle(Y,"classTitleText",(w==null?void 0:w.titleTopMargin)??5,g.db.getDiagramTitle()),w8(S,Y,w==null?void 0:w.diagramPadding,w==null?void 0:w.useMaxWidth),!(w!=null&&w.htmlLabels)){const ot=v==="sandbox"?B.nodes()[0].contentDocument:document,ft=ot.querySelectorAll('[id="'+a+'"] .edgeLabel .label');for(const wt of ft){const mt=wt.getBBox(),ct=ot.createElementNS("http://www.w3.org/2000/svg","rect");ct.setAttribute("rx",0),ct.setAttribute("ry",0),ct.setAttribute("width",mt.width),ct.setAttribute("height",mt.height),wt.insertBefore(ct,wt.firstChild)}}};function zqt(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 qJe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Aqt,db:yX,renderer:{setConf:$Je,draw:zJe},styles:Fqt,init:i=>{i.class||(i.class={}),i.class.arrowMarkerAbsolute=i.arrowMarkerAbsolute,yX.clear()}}},Symbol.toStringTag,{value:"Module"}));var Kbt=function(){var i=function(xt,Ft,Ct,kt){for(Ct=Ct||{},kt=xt.length;kt--;Ct[xt[kt]]=Ft);return Ct},a=[1,2],f=[1,3],g=[1,4],w=[2,4],v=[1,9],b=[1,11],E=[1,15],S=[1,16],_=[1,17],M=[1,18],F=[1,30],R=[1,19],B=[1,20],z=[1,21],Y=[1,22],nt=[1,23],ot=[1,25],ft=[1,26],wt=[1,27],mt=[1,28],ct=[1,29],rt=[1,32],it=[1,33],gt=[1,34],Q=[1,35],dt=[1,31],K=[1,4,5,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],yt=[1,4,5,13,14,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],V=[4,5,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],Ot={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,cssClassStatement:11,idStatement:12,DESCR:13,"-->":14,HIDE_EMPTY:15,scale:16,WIDTH:17,COMPOSIT_STATE:18,STRUCT_START:19,STRUCT_STOP:20,STATE_DESCR:21,AS:22,ID:23,FORK:24,JOIN:25,CHOICE:26,CONCURRENT:27,note:28,notePosition:29,NOTE_TEXT:30,direction:31,acc_title:32,acc_title_value:33,acc_descr:34,acc_descr_value:35,acc_descr_multiline_value:36,classDef:37,CLASSDEF_ID:38,CLASSDEF_STYLEOPTS:39,DEFAULT:40,class:41,CLASSENTITY_IDS:42,STYLECLASS:43,direction_tb:44,direction_bt:45,direction_rl:46,direction_lr:47,eol:48,";":49,EDGE_STATE:50,STYLE_SEPARATOR:51,left_of:52,right_of:53,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",13:"DESCR",14:"-->",15:"HIDE_EMPTY",16:"scale",17:"WIDTH",18:"COMPOSIT_STATE",19:"STRUCT_START",20:"STRUCT_STOP",21:"STATE_DESCR",22:"AS",23:"ID",24:"FORK",25:"JOIN",26:"CHOICE",27:"CONCURRENT",28:"note",30:"NOTE_TEXT",32:"acc_title",33:"acc_title_value",34:"acc_descr",35:"acc_descr_value",36:"acc_descr_multiline_value",37:"classDef",38:"CLASSDEF_ID",39:"CLASSDEF_STYLEOPTS",40:"DEFAULT",41:"class",42:"CLASSENTITY_IDS",43:"STYLECLASS",44:"direction_tb",45:"direction_bt",46:"direction_rl",47:"direction_lr",49:";",50:"EDGE_STATE",51:"STYLE_SEPARATOR",52:"left_of",53:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[10,3],[10,3],[11,3],[31,1],[31,1],[31,1],[31,1],[48,1],[48,1],[12,1],[12,1],[12,3],[12,3],[29,1],[29,1]],performAction:function(Ft,Ct,kt,Gt,Fe,Mt,pn){var Ae=Mt.length-1;switch(Fe){case 3:return Gt.setRootDoc(Mt[Ae]),Mt[Ae];case 4:this.$=[];break;case 5:Mt[Ae]!="nl"&&(Mt[Ae-1].push(Mt[Ae]),this.$=Mt[Ae-1]);break;case 6:case 7:this.$=Mt[Ae];break;case 8:this.$="nl";break;case 11:this.$=Mt[Ae];break;case 12:const be=Mt[Ae-1];be.description=Gt.trimColon(Mt[Ae]),this.$=be;break;case 13:this.$={stmt:"relation",state1:Mt[Ae-2],state2:Mt[Ae]};break;case 14:const Ne=Gt.trimColon(Mt[Ae]);this.$={stmt:"relation",state1:Mt[Ae-3],state2:Mt[Ae-1],description:Ne};break;case 18:this.$={stmt:"state",id:Mt[Ae-3],type:"default",description:"",doc:Mt[Ae-1]};break;case 19:var ye=Mt[Ae],tn=Mt[Ae-2].trim();if(Mt[Ae].match(":")){var sn=Mt[Ae].split(":");ye=sn[0],tn=[tn,sn[1]]}this.$={stmt:"state",id:ye,type:"default",description:tn};break;case 20:this.$={stmt:"state",id:Mt[Ae-3],type:"default",description:Mt[Ae-5],doc:Mt[Ae-1]};break;case 21:this.$={stmt:"state",id:Mt[Ae],type:"fork"};break;case 22:this.$={stmt:"state",id:Mt[Ae],type:"join"};break;case 23:this.$={stmt:"state",id:Mt[Ae],type:"choice"};break;case 24:this.$={stmt:"state",id:Gt.getDividerId(),type:"divider"};break;case 25:this.$={stmt:"state",id:Mt[Ae-1].trim(),note:{position:Mt[Ae-2].trim(),text:Mt[Ae].trim()}};break;case 28:this.$=Mt[Ae].trim(),Gt.setAccTitle(this.$);break;case 29:case 30:this.$=Mt[Ae].trim(),Gt.setAccDescription(this.$);break;case 31:case 32:this.$={stmt:"classDef",id:Mt[Ae-1].trim(),classes:Mt[Ae].trim()};break;case 33:this.$={stmt:"applyClass",id:Mt[Ae-1].trim(),styleClass:Mt[Ae].trim()};break;case 34:Gt.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 35:Gt.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 36:Gt.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 37:Gt.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 40:case 41:this.$={stmt:"state",id:Mt[Ae].trim(),type:"default",description:""};break;case 42:this.$={stmt:"state",id:Mt[Ae-2].trim(),classes:[Mt[Ae].trim()],type:"default",description:""};break;case 43:this.$={stmt:"state",id:Mt[Ae-2].trim(),classes:[Mt[Ae].trim()],type:"default",description:""};break}},table:[{3:1,4:a,5:f,6:g},{1:[3]},{3:5,4:a,5:f,6:g},{3:6,4:a,5:f,6:g},i([1,4,5,15,16,18,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],w,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:v,5:b,8:8,9:10,10:12,11:13,12:14,15:E,16:S,18:_,21:M,23:F,24:R,25:B,26:z,27:Y,28:nt,31:24,32:ot,34:ft,36:wt,37:mt,41:ct,44:rt,45:it,46:gt,47:Q,50:dt},i(K,[2,5]),{9:36,10:12,11:13,12:14,15:E,16:S,18:_,21:M,23:F,24:R,25:B,26:z,27:Y,28:nt,31:24,32:ot,34:ft,36:wt,37:mt,41:ct,44:rt,45:it,46:gt,47:Q,50:dt},i(K,[2,7]),i(K,[2,8]),i(K,[2,9]),i(K,[2,10]),i(K,[2,11],{13:[1,37],14:[1,38]}),i(K,[2,15]),{17:[1,39]},i(K,[2,17],{19:[1,40]}),{22:[1,41]},i(K,[2,21]),i(K,[2,22]),i(K,[2,23]),i(K,[2,24]),{29:42,30:[1,43],52:[1,44],53:[1,45]},i(K,[2,27]),{33:[1,46]},{35:[1,47]},i(K,[2,30]),{38:[1,48],40:[1,49]},{42:[1,50]},i(yt,[2,40],{51:[1,51]}),i(yt,[2,41],{51:[1,52]}),i(K,[2,34]),i(K,[2,35]),i(K,[2,36]),i(K,[2,37]),i(K,[2,6]),i(K,[2,12]),{12:53,23:F,50:dt},i(K,[2,16]),i(V,w,{7:54}),{23:[1,55]},{23:[1,56]},{22:[1,57]},{23:[2,44]},{23:[2,45]},i(K,[2,28]),i(K,[2,29]),{39:[1,58]},{39:[1,59]},{43:[1,60]},{23:[1,61]},{23:[1,62]},i(K,[2,13],{13:[1,63]}),{4:v,5:b,8:8,9:10,10:12,11:13,12:14,15:E,16:S,18:_,20:[1,64],21:M,23:F,24:R,25:B,26:z,27:Y,28:nt,31:24,32:ot,34:ft,36:wt,37:mt,41:ct,44:rt,45:it,46:gt,47:Q,50:dt},i(K,[2,19],{19:[1,65]}),{30:[1,66]},{23:[1,67]},i(K,[2,31]),i(K,[2,32]),i(K,[2,33]),i(yt,[2,42]),i(yt,[2,43]),i(K,[2,14]),i(K,[2,18]),i(V,w,{7:68}),i(K,[2,25]),i(K,[2,26]),{4:v,5:b,8:8,9:10,10:12,11:13,12:14,15:E,16:S,18:_,20:[1,69],21:M,23:F,24:R,25:B,26:z,27:Y,28:nt,31:24,32:ot,34:ft,36:wt,37:mt,41:ct,44:rt,45:it,46:gt,47:Q,50:dt},i(K,[2,20])],defaultActions:{5:[2,1],6:[2,2],44:[2,44],45:[2,45]},parseError:function(Ft,Ct){if(Ct.recoverable)this.trace(Ft);else{var kt=new Error(Ft);throw kt.hash=Ct,kt}},parse:function(Ft){var Ct=this,kt=[0],Gt=[],Fe=[null],Mt=[],pn=this.table,Ae="",ye=0,tn=0,sn=2,be=1,Ne=Mt.slice.call(arguments,1),Xt=Object.create(this.lexer),_e={yy:{}};for(var xe in this.yy)Object.prototype.hasOwnProperty.call(this.yy,xe)&&(_e.yy[xe]=this.yy[xe]);Xt.setInput(Ft,_e.yy),_e.yy.lexer=Xt,_e.yy.parser=this,typeof Xt.yylloc>"u"&&(Xt.yylloc={});var Mn=Xt.yylloc;Mt.push(Mn);var ce=Xt.options&&Xt.options.ranges;typeof _e.yy.parseError=="function"?this.parseError=_e.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Br(){var ke;return ke=Gt.pop()||Xt.lex()||be,typeof ke!="number"&&(ke instanceof Array&&(Gt=ke,ke=Gt.pop()),ke=Ct.symbols_[ke]||ke),ke}for(var we,Fi,mi,ga,Ss={},za,br,An,Nn;;){if(Fi=kt[kt.length-1],this.defaultActions[Fi]?mi=this.defaultActions[Fi]:((we===null||typeof we>"u")&&(we=Br()),mi=pn[Fi]&&pn[Fi][we]),typeof mi>"u"||!mi.length||!mi[0]){var Bn="";Nn=[];for(za in pn[Fi])this.terminals_[za]&&za>sn&&Nn.push("'"+this.terminals_[za]+"'");Xt.showPosition?Bn="Parse error on line "+(ye+1)+`:
1056 .edgeLabel .label rect {
1060 .edgeLabel .label text {
1063 .label div .edgeLabel {
1177 .statediagram .edgeLabel {
1192 `,t2t={},fZe=(i,a)=>{t2t[i]=a},dZe=i=>t2t[i],rHt=()=>Object.keys(t2t),gZe={get:dZe,set:fZe,keys:rHt,size:()=>rHt().length},pZe=i=>i.append("circle").attr("class","start-state").attr("r",Re().state.sizeUnit).attr("cx",Re().state.padding+Re().state.sizeUnit).attr("cy",Re().state.padding+Re().state.sizeUnit),bZe=i=>i.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",Re().state.textHeight).attr("class","divider").attr("x2",Re().state.textHeight*2).attr("y1",0).attr("y2",0),wZe=(i,a)=>{const f=i.append("text").attr("x",2*Re().state.padding).attr("y",Re().state.textHeight+2*Re().state.padding).attr("font-size",Re().state.fontSize).attr("class","state-title").text(a.id),g=f.node().getBBox();return i.insert("rect",":first-child").attr("x",Re().state.padding).attr("y",Re().state.padding).attr("width",g.width+2*Re().state.padding).attr("height",g.height+2*Re().state.padding).attr("rx",Re().state.radius),f},mZe=(i,a)=>{const f=function(R,B,z){const Y=R.append("tspan").attr("x",2*Re().state.padding).text(B);z||Y.attr("dy",Re().state.textHeight)},w=i.append("text").attr("x",2*Re().state.padding).attr("y",Re().state.textHeight+1.3*Re().state.padding).attr("font-size",Re().state.fontSize).attr("class","state-title").text(a.descriptions[0]).node().getBBox(),v=w.height,b=i.append("text").attr("x",Re().state.padding).attr("y",v+Re().state.padding*.4+Re().state.dividerMargin+Re().state.textHeight).attr("class","state-description");let E=!0,S=!0;a.descriptions.forEach(function(R){E||(f(b,R,S),S=!1),E=!1});const _=i.append("line").attr("x1",Re().state.padding).attr("y1",Re().state.padding+v+Re().state.dividerMargin/2).attr("y2",Re().state.padding+v+Re().state.dividerMargin/2).attr("class","descr-divider"),M=b.node().getBBox(),F=Math.max(M.width,w.width);return _.attr("x2",F+3*Re().state.padding),i.insert("rect",":first-child").attr("x",Re().state.padding).attr("y",Re().state.padding).attr("width",F+2*Re().state.padding).attr("height",M.height+v+2*Re().state.padding).attr("rx",Re().state.radius),i},vZe=(i,a,f)=>{const g=Re().state.padding,w=2*Re().state.padding,v=i.node().getBBox(),b=v.width,E=v.x,S=i.append("text").attr("x",0).attr("y",Re().state.titleShift).attr("font-size",Re().state.fontSize).attr("class","state-title").text(a.id),M=S.node().getBBox().width+w;let F=Math.max(M,b);F===b&&(F=F+w);let R;const B=i.node().getBBox();a.doc,R=E-g,M>b&&(R=(b-F)/2+g),Math.abs(E-B.x)<g&&M>b&&(R=E-(M-b)/2);const z=1-Re().state.textHeight;return i.insert("rect",":first-child").attr("x",R).attr("y",z).attr("class",f?"alt-composit":"composit").attr("width",F).attr("height",B.height+Re().state.textHeight+Re().state.titleShift+1).attr("rx","0"),S.attr("x",R+g),M<=b&&S.attr("x",E+(F-w)/2-M/2+g),i.insert("rect",":first-child").attr("x",R).attr("y",Re().state.titleShift-Re().state.textHeight-Re().state.padding).attr("width",F).attr("height",Re().state.textHeight*3).attr("rx",Re().state.radius),i.insert("rect",":first-child").attr("x",R).attr("y",Re().state.titleShift-Re().state.textHeight-Re().state.padding).attr("width",F).attr("height",B.height+3+2*Re().state.textHeight).attr("rx",Re().state.radius),i},yZe=i=>(i.append("circle").attr("class","end-state-outer").attr("r",Re().state.sizeUnit+Re().state.miniPadding).attr("cx",Re().state.padding+Re().state.sizeUnit+Re().state.miniPadding).attr("cy",Re().state.padding+Re().state.sizeUnit+Re().state.miniPadding),i.append("circle").attr("class","end-state-inner").attr("r",Re().state.sizeUnit).attr("cx",Re().state.padding+Re().state.sizeUnit+2).attr("cy",Re().state.padding+Re().state.sizeUnit+2)),xZe=(i,a)=>{let f=Re().state.forkWidth,g=Re().state.forkHeight;if(a.parentId){let w=f;f=g,g=w}return i.append("rect").style("stroke","black").style("fill","black").attr("width",f).attr("height",g).attr("x",Re().state.padding).attr("y",Re().state.padding)},kZe=(i,a,f,g)=>{let w=0;const v=g.append("text");v.style("text-anchor","start"),v.attr("class","noteText");let b=i.replace(/\r\n/g,"<br/>");b=b.replace(/\n/g,"<br/>");const E=b.split(ei.lineBreakRegex);let S=1.25*Re().state.noteMargin;for(const _ of E){const M=_.trim();if(M.length>0){const F=v.append("tspan");if(F.text(M),S===0){const R=F.node().getBBox();S+=R.height}w+=S,F.attr("x",a+Re().state.noteMargin),F.attr("y",f+w+1.25*Re().state.noteMargin)}}return{textWidth:v.node().getBBox().width,textHeight:w}},EZe=(i,a)=>{a.attr("class","state-note");const f=a.append("rect").attr("x",0).attr("y",Re().state.padding),g=a.append("g"),{textWidth:w,textHeight:v}=kZe(i,0,0,g);return f.attr("height",v+2*Re().state.noteMargin),f.attr("width",w+Re().state.noteMargin*2),f},iHt=function(i,a){const f=a.id,g={id:f,label:a.id,width:0,height:0},w=i.append("g").attr("id",f).attr("class","stateGroup");a.type==="start"&&pZe(w),a.type==="end"&&yZe(w),(a.type==="fork"||a.type==="join")&&xZe(w,a),a.type==="note"&&EZe(a.note.text,w),a.type==="divider"&&bZe(w),a.type==="default"&&a.descriptions.length===0&&wZe(w,a),a.type==="default"&&a.descriptions.length>0&&mZe(w,a);const v=w.node().getBBox();return g.width=v.width+2*Re().state.padding,g.height=v.height+2*Re().state.padding,gZe.set(f,g),g};let sHt=0;const TZe=function(i,a,f){const g=function(S){switch(S){case Hx.relationType.AGGREGATION:return"aggregation";case Hx.relationType.EXTENSION:return"extension";case Hx.relationType.COMPOSITION:return"composition";case Hx.relationType.DEPENDENCY:return"dependency"}};a.points=a.points.filter(S=>!Number.isNaN(S.y));const w=a.points,v=Ax().x(function(S){return S.x}).y(function(S){return S.y}).curve(wF),b=i.append("path").attr("d",v(w)).attr("id","edge"+sHt).attr("class","transition");let E="";if(Re().state.arrowMarkerAbsolute&&(E=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,E=E.replace(/\(/g,"\\("),E=E.replace(/\)/g,"\\)")),b.attr("marker-end","url("+E+"#"+g(Hx.relationType.DEPENDENCY)+"End)"),f.title!==void 0){const S=i.append("g").attr("class","stateLabel"),{x:_,y:M}=uo.calcLabelPosition(a.points),F=ei.getRows(f.title);let R=0;const B=[];let z=0,Y=0;for(let ft=0;ft<=F.length;ft++){const wt=S.append("text").attr("text-anchor","middle").text(F[ft]).attr("x",_).attr("y",M+R),mt=wt.node().getBBox();z=Math.max(z,mt.width),Y=Math.min(Y,mt.x),Kt.info(mt.x,_,M+R),R===0&&(R=wt.node().getBBox().height,Kt.info("Title height",R,M)),B.push(wt)}let nt=R*F.length;if(F.length>1){const ft=(F.length-1)*R*.5;B.forEach((wt,mt)=>wt.attr("y",M+mt*R-ft)),nt=R*F.length}const ot=S.node().getBBox();S.insert("rect",":first-child").attr("class","box").attr("x",_-z/2-Re().state.padding/2).attr("y",M-nt/2-Re().state.padding/2-3.5).attr("width",z+Re().state.padding).attr("height",nt+Re().state.padding),Kt.info(ot)}sHt++};let M2;const e2t={},CZe=function(){},SZe=function(i){i.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},_Ze=function(i,a,f,g){M2=Re().state;const w=Re().securityLevel;let v;w==="sandbox"&&(v=Tr("#i"+a));const b=Tr(w==="sandbox"?v.nodes()[0].contentDocument.body:"body"),E=w==="sandbox"?v.nodes()[0].contentDocument:document;Kt.debug("Rendering diagram "+i);const S=b.select(`[id='${a}']`);SZe(S);const _=g.db.getRootDoc();aHt(_,S,void 0,!1,b,E,g);const M=M2.padding,F=S.node().getBBox(),R=F.width+M*2,B=F.height+M*2,z=R*1.75;sg(S,B,z,M2.useMaxWidth),S.attr("viewBox",`${F.x-M2.padding} ${F.y-M2.padding} `+R+" "+B)},AZe=i=>i?i.length*M2.fontSizeFactor:1,aHt=(i,a,f,g,w,v,b)=>{const E=new l1({compound:!0,multigraph:!0});let S,_=!0;for(S=0;S<i.length;S++)if(i[S].stmt==="relation"){_=!1;break}f?E.setGraph({rankdir:"LR",multigraph:!0,compound:!0,ranker:"tight-tree",ranksep:_?1:M2.edgeLengthFactor,nodeSep:_?1:50,isMultiGraph:!0}):E.setGraph({rankdir:"TB",multigraph:!0,compound:!0,ranksep:_?1:M2.edgeLengthFactor,nodeSep:_?1:50,ranker:"tight-tree",isMultiGraph:!0}),E.setDefaultEdgeLabel(function(){return{}}),b.db.extract(i);const M=b.db.getStates(),F=b.db.getRelations(),R=Object.keys(M);for(const ot of R){const ft=M[ot];f&&(ft.parentId=f);let wt;if(ft.doc){let mt=a.append("g").attr("id",ft.id).attr("class","stateGroup");wt=aHt(ft.doc,mt,ft.id,!g,w,v,b);{mt=vZe(mt,ft,g);let ct=mt.node().getBBox();wt.width=ct.width,wt.height=ct.height+M2.padding/2,e2t[ft.id]={y:M2.compositTitleSize}}}else wt=iHt(a,ft);if(ft.note){const mt={descriptions:[],id:ft.id+"-note",note:ft.note,type:"note"},ct=iHt(a,mt);ft.note.position==="left of"?(E.setNode(wt.id+"-note",ct),E.setNode(wt.id,wt)):(E.setNode(wt.id,wt),E.setNode(wt.id+"-note",ct)),E.setParent(wt.id,wt.id+"-group"),E.setParent(wt.id+"-note",wt.id+"-group")}else E.setNode(wt.id,wt)}Kt.debug("Count=",E.nodeCount(),E);let B=0;F.forEach(function(ot){B++,Kt.debug("Setting edge",ot),E.setEdge(ot.id1,ot.id2,{relation:ot,width:AZe(ot.title),height:M2.labelHeight*ei.getRows(ot.title).length,labelpos:"c"},"id"+B)}),kD(E),Kt.debug("Graph after layout",E.nodes());const z=a.node();E.nodes().forEach(function(ot){ot!==void 0&&E.node(ot)!==void 0?(Kt.warn("Node "+ot+": "+JSON.stringify(E.node(ot))),w.select("#"+z.id+" #"+ot).attr("transform","translate("+(E.node(ot).x-E.node(ot).width/2)+","+(E.node(ot).y+(e2t[ot]?e2t[ot].y:0)-E.node(ot).height/2)+" )"),w.select("#"+z.id+" #"+ot).attr("data-x-shift",E.node(ot).x-E.node(ot).width/2),v.querySelectorAll("#"+z.id+" #"+ot+" .divider").forEach(wt=>{const mt=wt.parentElement;let ct=0,rt=0;mt&&(mt.parentElement&&(ct=mt.parentElement.getBBox().width),rt=parseInt(mt.getAttribute("data-x-shift"),10),Number.isNaN(rt)&&(rt=0)),wt.setAttribute("x1",0-rt+8),wt.setAttribute("x2",ct-rt-8)})):Kt.debug("No Node "+ot+": "+JSON.stringify(E.node(ot)))});let Y=z.getBBox();E.edges().forEach(function(ot){ot!==void 0&&E.edge(ot)!==void 0&&(Kt.debug("Edge "+ot.v+" -> "+ot.w+": "+JSON.stringify(E.edge(ot))),TZe(a,E.edge(ot),E.edge(ot).relation))}),Y=z.getBBox();const nt={id:f||"root",label:f||"root",width:0,height:0};return nt.width=Y.width+2*M2.padding,nt.height=Y.height+2*M2.padding,Kt.debug("Doc rendered",nt,E),nt},LZe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:qqt,db:Hx,renderer:{setConf:CZe,draw:_Ze},styles:nHt,init:i=>{i.state||(i.state={}),i.state.arrowMarkerAbsolute=i.arrowMarkerAbsolute,Hx.clear()}}},Symbol.toStringTag,{value:"Module"})),AX="rect",n2t="rectWithTitle",DZe="start",MZe="end",IZe="divider",OZe="roundedWithTitle",NZe="note",PZe="noteGroup",ID="statediagram",FZe=`${ID}-state`,oHt="transition",BZe="note",RZe=`${oHt} note-edge`,jZe=`${ID}-${BZe}`,$Ze=`${ID}-cluster`,zZe=`${ID}-cluster-alt`,cHt="parent",uHt="note",qZe="state",r2t="----",HZe=`${r2t}${uHt}`,lHt=`${r2t}${cHt}`,hHt="fill:none",fHt="fill: #333",dHt="c",gHt="text",pHt="normal";let LX={},L8=0;const VZe=function(i){const a=Object.keys(i);for(const f of a)i[f]},UZe=function(i,a){return a.db.extract(a.db.getRootDocV2()),a.db.getClasses()};function GZe(i){return i==null?"":i.classes?i.classes.join(" "):""}function i2t(i="",a=0,f="",g=r2t){const w=f!==null&&f.length>0?`${g}${f}`:"";return`${qZe}-${i}${w}-${a}`}const TB=(i,a,f,g,w,v)=>{const b=f.id,E=GZe(g[b]);if(b!=="root"){let S=AX;f.start===!0&&(S=DZe),f.start===!1&&(S=MZe),f.type!==yB&&(S=f.type),LX[b]||(LX[b]={id:b,shape:S,description:ei.sanitizeText(b,Re()),classes:`${E} ${FZe}`});const _=LX[b];f.description&&(Array.isArray(_.description)?(_.shape=n2t,_.description.push(f.description)):_.description.length>0?(_.shape=n2t,_.description===b?_.description=[f.description]:_.description=[_.description,f.description]):(_.shape=AX,_.description=f.description),_.description=ei.sanitizeTextOrArray(_.description,Re())),_.description.length===1&&_.shape===n2t&&(_.shape=AX),!_.type&&f.doc&&(Kt.info("Setting cluster for ",b,s2t(f)),_.type="group",_.dir=s2t(f),_.shape=f.type===Hqt?IZe:OZe,_.classes=_.classes+" "+$Ze+" "+(v?zZe:""));const M={labelStyle:"",shape:_.shape,labelText:_.description,classes:_.classes,style:"",id:b,dir:_.dir,domId:i2t(b,L8),type:_.type,padding:15};if(M.centerLabel=!0,f.note){const F={labelStyle:"",shape:NZe,labelText:f.note.text,classes:jZe,style:"",id:b+HZe+"-"+L8,domId:i2t(b,L8,uHt),type:_.type,padding:15},R={labelStyle:"",shape:PZe,labelText:f.note.text,classes:_.classes,style:"",id:b+lHt,domId:i2t(b,L8,cHt),type:"group",padding:0};L8++;const B=b+lHt;i.setNode(B,R),i.setNode(F.id,F),i.setNode(b,M),i.setParent(b,B),i.setParent(F.id,B);let z=b,Y=F.id;f.note.position==="left of"&&(z=F.id,Y=b),i.setEdge(z,Y,{arrowhead:"none",arrowType:"",style:hHt,labelStyle:"",classes:RZe,arrowheadStyle:fHt,labelpos:dHt,labelType:gHt,thickness:pHt})}else i.setNode(b,M)}a&&a.id!=="root"&&(Kt.trace("Setting node ",b," to be child of its parent ",a.id),i.setParent(b,a.id)),f.doc&&(Kt.trace("Adding nodes children "),KZe(i,f,f.doc,g,w,!v))},KZe=(i,a,f,g,w,v)=>{Kt.trace("items",f),f.forEach(b=>{switch(b.stmt){case EX:TB(i,a,b,g,w,v);break;case yB:TB(i,a,b,g,w,v);break;case Wbt:{TB(i,a,b.state1,g,w,v),TB(i,a,b.state2,g,w,v);const E={id:"edge"+L8,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:hHt,labelStyle:"",label:ei.sanitizeText(b.description,Re()),arrowheadStyle:fHt,labelpos:dHt,labelType:gHt,thickness:pHt,classes:oHt};i.setEdge(b.state1.id,b.state2.id,E,L8),L8++}break}})},s2t=(i,a=VJe)=>{let f=a;if(i.doc)for(let g=0;g<i.doc.length;g++){const w=i.doc[g];w.stmt==="dir"&&(f=w.value)}return f},WZe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:qqt,db:Hx,renderer:{setConf:VZe,getClasses:UZe,draw:async function(i,a,f,g){Kt.info("Drawing state diagram (v2)",a),LX={},g.db.getDirection();const{securityLevel:w,state:v}=Re(),b=v.nodeSpacing||50,E=v.rankSpacing||50;Kt.info(g.db.getRootDocV2()),g.db.extract(g.db.getRootDocV2()),Kt.info(g.db.getRootDocV2());const S=g.db.getStates(),_=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:s2t(g.db.getRootDocV2()),nodesep:b,ranksep:E,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});TB(_,void 0,g.db.getRootDocV2(),S,g.db,!0);let M;w==="sandbox"&&(M=Tr("#i"+a));const F=Tr(w==="sandbox"?M.nodes()[0].contentDocument.body:"body"),R=F.select(`[id="${a}"]`),B=F.select("#"+a+" g");await ebt(B,_,["barb"],ID,a);const z=8;uo.insertTitle(R,"statediagramTitleText",v.titleTopMargin,g.db.getDiagramTitle());const Y=R.node().getBBox(),nt=Y.width+z*2,ot=Y.height+z*2;R.attr("class",ID);const ft=R.node().getBBox();sg(R,ot,nt,v.useMaxWidth);const wt=`${ft.x-z} ${ft.y-z} ${nt} ${ot}`;Kt.debug(`viewBox ${wt}`),R.attr("viewBox",wt);const mt=document.querySelectorAll('[id="'+a+'"] .edgeLabel .label');for(const ct of mt){const rt=ct.getBBox(),it=document.createElementNS("http://www.w3.org/2000/svg",AX);it.setAttribute("rx",0),it.setAttribute("ry",0),it.setAttribute("width",rt.width),it.setAttribute("height",rt.height),ct.insertBefore(it,ct.firstChild)}}},styles:nHt,init:i=>{i.state||(i.state={}),i.state.arrowMarkerAbsolute=i.arrowMarkerAbsolute,Hx.clear()}}},Symbol.toStringTag,{value:"Module"}));var a2t=function(){var i=function(F,R,B,z){for(B=B||{},z=F.length;z--;B[F[z]]=R);return B},a=[6,8,10,11,12,14,16,17,18],f=[1,9],g=[1,10],w=[1,11],v=[1,12],b=[1,13],E=[1,14],S={trace:function(){},yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:function(R,B,z,Y,nt,ot,ft){var wt=ot.length-1;switch(nt){case 1:return ot[wt-1];case 2:this.$=[];break;case 3:ot[wt-1].push(ot[wt]),this.$=ot[wt-1];break;case 4:case 5:this.$=ot[wt];break;case 6:case 7:this.$=[];break;case 8:Y.setDiagramTitle(ot[wt].substr(6)),this.$=ot[wt].substr(6);break;case 9:this.$=ot[wt].trim(),Y.setAccTitle(this.$);break;case 10:case 11:this.$=ot[wt].trim(),Y.setAccDescription(this.$);break;case 12:Y.addSection(ot[wt].substr(8)),this.$=ot[wt].substr(8);break;case 13:Y.addTask(ot[wt-1],ot[wt]),this.$="task";break}},table:[{3:1,4:[1,2]},{1:[3]},i(a,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:f,12:g,14:w,16:v,17:b,18:E},i(a,[2,7],{1:[2,1]}),i(a,[2,3]),{9:15,11:f,12:g,14:w,16:v,17:b,18:E},i(a,[2,5]),i(a,[2,6]),i(a,[2,8]),{13:[1,16]},{15:[1,17]},i(a,[2,11]),i(a,[2,12]),{19:[1,18]},i(a,[2,4]),i(a,[2,9]),i(a,[2,10]),i(a,[2,13])],defaultActions:{},parseError:function(R,B){if(B.recoverable)this.trace(R);else{var z=new Error(R);throw z.hash=B,z}},parse:function(R){var B=this,z=[0],Y=[],nt=[null],ot=[],ft=this.table,wt="",mt=0,ct=0,rt=2,it=1,gt=ot.slice.call(arguments,1),Q=Object.create(this.lexer),dt={yy:{}};for(var K in this.yy)Object.prototype.hasOwnProperty.call(this.yy,K)&&(dt.yy[K]=this.yy[K]);Q.setInput(R,dt.yy),dt.yy.lexer=Q,dt.yy.parser=this,typeof Q.yylloc>"u"&&(Q.yylloc={});var yt=Q.yylloc;ot.push(yt);var V=Q.options&&Q.options.ranges;typeof dt.yy.parseError=="function"?this.parseError=dt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ot(){var Ae;return Ae=Y.pop()||Q.lex()||it,typeof Ae!="number"&&(Ae instanceof Array&&(Y=Ae,Ae=Y.pop()),Ae=B.symbols_[Ae]||Ae),Ae}for(var It,jt,xt,Ft,Ct={},kt,Gt,Fe,Mt;;){if(jt=z[z.length-1],this.defaultActions[jt]?xt=this.defaultActions[jt]:((It===null||typeof It>"u")&&(It=Ot()),xt=ft[jt]&&ft[jt][It]),typeof xt>"u"||!xt.length||!xt[0]){var pn="";Mt=[];for(kt in ft[jt])this.terminals_[kt]&&kt>rt&&Mt.push("'"+this.terminals_[kt]+"'");Q.showPosition?pn="Parse error on line "+(mt+1)+`:
1257 .edgeLabel {
1336 \r\r `),jo(bx,ght,r),jo(JT,ght,i3(r)),r=new ih(4),vO(r,_ve),jo(bx,wA,r),jo(JT,wA,i3(r)),r=new ih(4),vO(r,_ve),jo(bx,wA,r),jo(JT,wA,i3(r)),r=new ih(4),vO(r,Ave),a3(r,u(nu(bx,wA),122)),jo(bx,dht,r),jo(JT,dht,i3(r)),r=new ih(4),vO(r,"-.0:AZ__az··ÀÖØöøıĴľŁňŊžƀǃǍǰǴǵǺȗɐʨʻˁːˑ̀͠͡ͅΆΊΌΌΎΡΣώϐϖϚϚϜϜϞϞϠϠϢϳЁЌЎяёќўҁ҃҆ҐӄӇӈӋӌӐӫӮӵӸӹԱՖՙՙաֆֹֻֽֿֿׁׂ֑֣֡ׄׄאתװײءغـْ٠٩ٰڷںھۀێېۓە۪ۭۨ۰۹ँःअह़्॑॔क़ॣ०९ঁঃঅঌএঐওনপরললশহ়়াৄেৈো্ৗৗড়ঢ়য়ৣ০ৱਂਂਅਊਏਐਓਨਪਰਲਲ਼ਵਸ਼ਸਹ਼਼ਾੂੇੈੋ੍ਖ਼ੜਫ਼ਫ਼੦ੴઁઃઅઋઍઍએઑઓનપરલળવહ઼ૅેૉો્ૠૠ૦૯ଁଃଅଌଏଐଓନପରଲଳଶହ଼ୃେୈୋ୍ୖୗଡ଼ଢ଼ୟୡ୦୯ஂஃஅஊஎஐஒகஙசஜஜஞடணதநபமவஷஹாூெைொ்ௗௗ௧௯ఁఃఅఌఎఐఒనపళవహాౄెైొ్ౕౖౠౡ౦౯ಂಃಅಌಎಐಒನಪಳವಹಾೄೆೈೊ್ೕೖೞೞೠೡ೦೯ംഃഅഌഎഐഒനപഹാൃെൈൊ്ൗൗൠൡ൦൯กฮะฺเ๎๐๙ກຂຄຄງຈຊຊຍຍດທນຟມຣລລວວສຫອຮະູົຽເໄໆໆ່ໍ໐໙༘༙༠༩༹༹༵༵༷༷༾ཇཉཀྵ྄ཱ྆ྋྐྕྗྗྙྭྱྷྐྵྐྵႠჅაჶᄀᄀᄂᄃᄅᄇᄉᄉᄋᄌᄎᄒᄼᄼᄾᄾᅀᅀᅌᅌᅎᅎᅐᅐᅔᅕᅙᅙᅟᅡᅣᅣᅥᅥᅧᅧᅩᅩᅭᅮᅲᅳᅵᅵᆞᆞᆨᆨᆫᆫᆮᆯᆷᆸᆺᆺᆼᇂᇫᇫᇰᇰᇹᇹḀẛẠỹἀἕἘἝἠὅὈὍὐὗὙὙὛὛὝὝὟώᾀᾴᾶᾼιιῂῄῆῌῐΐῖΊῠῬῲῴῶῼ⃐⃜⃡⃡ΩΩKÅ℮℮ↀↂ々々〇〇〡〯〱〵ぁゔ゙゚ゝゞァヺーヾㄅㄬ一龥가힣"),jo(bx,pht,r),jo(JT,pht,i3(r)),r=new ih(4),vO(r,Ave),iu(r,95,95),iu(r,58,58),jo(bx,bht,r),jo(JT,bht,i3(r))),n=u(nu(e?bx:JT,t),138),n}function ibe(t){wm(t,new dw(vwt(p$(gm(hm(dm(fm(new G1,Qn),"ELK Layered"),"Layer-based algorithm provided by the Eclipse Layout Kernel. Arranges as many edges as possible into one direction by placing nodes into subsequent layers. This implementation supports different routing styles (straight, orthogonal, splines); if orthogonal routing is selected, arbitrary port constraints are respected, thus enabling the layout of block diagrams such as actor-oriented models or circuit schematics. Furthermore, full layout of compound graphs with cross-hierarchy edges is supported when the respective option is activated on the top level."),new RJ),Qn),Hi((O7(),Zdt),lt(ut(GK,1),te,245,0,[VK,UK,HK,Jdt,qK,zK]))))),le(t,Qn,zEt,Se(u1t)),le(t,Qn,qEt,Se(dAt)),le(t,Qn,Lut,Se(aP)),le(t,Qn,HEt,Se(Yf)),le(t,Qn,Put,Se(Y5)),le(t,Qn,plt,Se(_v)),le(t,Qn,VEt,Se(O3)),le(t,Qn,UEt,Se(FT)),le(t,Qn,GEt,Se(BT)),le(t,Qn,KEt,Se(l1t)),le(t,Qn,h3,Se(Av)),le(t,Qn,WEt,Se(h1t)),le(t,Qn,YEt,Se(jA)),le(t,Qn,XEt,Se(KG)),le(t,Qn,kEt,Se(sP)),le(t,Qn,TEt,Se(W5)),le(t,Qn,EEt,Se(Pw)),le(t,Qn,CEt,Se(X5)),le(t,Qn,gN,he(0)),le(t,Qn,SEt,Se(PT)),le(t,Qn,_Et,Se(fAt)),le(t,Qn,AEt,Se(Yk)),le(t,Qn,Bg,Se(kAt)),le(t,Qn,HV,Se(pAt)),le(t,Qn,VV,Se(bAt)),le(t,Qn,tA,Se(d1t)),le(t,Qn,olt,Se(wAt)),le(t,Qn,clt,Se(mAt)),le(t,Qn,UV,Se(WG)),le(t,Qn,GV,Se(g1t)),le(t,Qn,KV,Se(yAt)),le(t,Qn,WV,Se(vAt)),le(t,Qn,ult,Se(xAt)),le(t,Qn,elt,Se(Cv)),le(t,Qn,nlt,Se(RA)),le(t,Qn,$V,Se(s1t)),le(t,Qn,zV,Se(U_t)),le(t,Qn,pN,Se(A6e)),le(t,Qn,bN,Se(L6e)),le(t,Qn,wN,Se(_6e)),le(t,Qn,mN,Se(S6e)),le(t,Qn,cv,gAt),le(t,Qn,ov,oAt),le(t,Qn,EN,q_t),le(t,Qn,QEt,0),le(t,Qn,IV,he(1)),le(t,Qn,Dk,tT),le(t,Qn,JEt,Se(Nw)),le(t,Qn,Fut,Se(bs)),le(t,Qn,ZEt,Se(NT)),le(t,Qn,TN,Se(b6e)),le(t,Qn,t7t,Se(u0)),le(t,Qn,XV,Se(A3)),le(t,Qn,W_,(Pn(),!0)),le(t,Qn,e7t,Se(L3)),le(t,Qn,n7t,Se(Mw)),le(t,Qn,_5,Se(Ow)),le(t,Qn,Mk,Se(GG)),le(t,Qn,eT,Se(c1t)),le(t,Qn,blt,z_t),le(t,Qn,nT,Se(Tv)),le(t,Qn,r7t,Se(VG)),le(t,Qn,rT,Se(M3)),le(t,Qn,i7t,Se(k6e)),le(t,Qn,s7t,Se(lAt)),le(t,Qn,a7t,uAt),le(t,Qn,o7t,Se(v6e)),le(t,Qn,c7t,Se(y6e)),le(t,Qn,u7t,Se(x6e)),le(t,Qn,l7t,Se(m6e)),le(t,Qn,uEt,Se(f1t)),le(t,Qn,kN,Se(Iw)),le(t,Qn,Gut,Se(a2)),le(t,Qn,cEt,Se($A)),le(t,Qn,hEt,Se(Iu)),le(t,Qn,Hut,Se(Dw)),le(t,Qn,Z_,Se(FA)),le(t,Qn,gEt,Se(Ev)),le(t,Qn,vEt,Se(R_t)),le(t,Qn,Qut,Se(e1t)),le(t,Qn,RV,Se(iP)),le(t,Qn,Xut,Se(n1t)),le(t,Qn,iEt,Se(nAt)),le(t,Qn,sEt,Se(rAt)),le(t,Qn,BV,Se(Q_t)),le(t,Qn,A5,Se(UG)),le(t,Qn,Zut,Se(o1t)),le(t,Qn,rEt,Se(a1t)),le(t,Qn,tlt,Se(sAt)),le(t,Qn,yEt,Se(V_t)),le(t,Qn,xEt,Se(i1t)),le(t,Qn,QV,Se(t1t)),le(t,Qn,Jut,Se(iAt)),le(t,Qn,LEt,Se(PG)),le(t,Qn,DEt,Se(P_t)),le(t,Qn,ilt,Se(NG)),le(t,Qn,qV,Se(W_t)),le(t,Qn,slt,Se(K_t)),le(t,Qn,alt,Se(Y_t)),le(t,Qn,Ik,Se(IT)),le(t,Qn,h7t,Se(Vo)),le(t,Qn,Dut,Se(Hp)),le(t,Qn,f7t,Se(l0)),le(t,Qn,OV,Se(r1t)),le(t,Qn,Yut,Se(j_t)),le(t,Qn,d7t,Se(Vp)),le(t,Qn,g7t,Se(PA)),le(t,Qn,p7t,Se(zG)),le(t,Qn,b7t,Se(Sv)),le(t,Qn,wlt,Se(cAt)),le(t,Qn,mlt,Se(OT)),le(t,Qn,Vut,Se(Z_t)),le(t,Qn,Uut,Se(tAt)),le(t,Qn,JV,Se(I3)),le(t,Qn,aEt,Se(Jft)),le(t,Qn,Kut,Se(eAt)),le(t,Qn,MEt,Se($G)),le(t,Qn,IEt,Se(jG)),le(t,Qn,w7t,Se(HG)),le(t,Qn,Wut,Se(J_t)),le(t,Qn,jV,Se(BA)),le(t,Qn,m7t,Se(oP)),le(t,Qn,nEt,Se($_t)),le(t,Qn,oEt,Se(hAt)),le(t,Qn,rlt,Se(H_t)),le(t,Qn,pEt,Se(d6e)),le(t,Qn,bEt,Se(g6e)),le(t,Qn,fEt,Se(w6e)),le(t,Qn,wEt,Se(p6e)),le(t,Qn,ZV,Se(X_t)),le(t,Qn,dEt,Se(qG)),le(t,Qn,mEt,Se(RG)),le(t,Qn,YV,Se(U0)),le(t,Qn,PEt,Se(B_t)),le(t,Qn,hlt,Se(FG)),le(t,Qn,flt,Se(F_t)),le(t,Qn,NEt,Se(BG)),le(t,Qn,llt,Se(_3)),le(t,Qn,OEt,Se(Zft)),le(t,Qn,lEt,Se(G_t))}function VSn(t){zr(t.a,ti,lt(ut(Pe,1),ue,2,6,[pi,"anySimpleType"])),zr(t.b,ti,lt(ut(Pe,1),ue,2,6,[pi,"anyType",lf,DN])),zr(u(Dt(Qt(t.b),0),35),ti,lt(ut(Pe,1),ue,2,6,[lf,cht,pi,":mixed"])),zr(u(Dt(Qt(t.b),1),35),ti,lt(ut(Pe,1),ue,2,6,[lf,cht,UTt,lht,pi,":1",dve,"lax"])),zr(u(Dt(Qt(t.b),2),35),ti,lt(ut(Pe,1),ue,2,6,[lf,uve,UTt,lht,pi,":2",dve,"lax"])),zr(t.c,ti,lt(ut(Pe,1),ue,2,6,[pi,"anyURI",ff,I1])),zr(t.d,ti,lt(ut(Pe,1),ue,2,6,[pi,"base64Binary",ff,I1])),zr(t.e,ti,lt(ut(Pe,1),ue,2,6,[pi,kk,ff,I1])),zr(t.f,ti,lt(ut(Pe,1),ue,2,6,[pi,"boolean:Object",Ka,kk])),zr(t.g,ti,lt(ut(Pe,1),ue,2,6,[pi,lA])),zr(t.i,ti,lt(ut(Pe,1),ue,2,6,[pi,"byte:Object",Ka,lA])),zr(t.j,ti,lt(ut(Pe,1),ue,2,6,[pi,"date",ff,I1])),zr(t.k,ti,lt(ut(Pe,1),ue,2,6,[pi,"dateTime",ff,I1])),zr(t.n,ti,lt(ut(Pe,1),ue,2,6,[pi,"decimal",ff,I1])),zr(t.o,ti,lt(ut(Pe,1),ue,2,6,[pi,hA,ff,I1])),zr(t.p,ti,lt(ut(Pe,1),ue,2,6,[pi,"double:Object",Ka,hA])),zr(t.q,ti,lt(ut(Pe,1),ue,2,6,[pi,"duration",ff,I1])),zr(t.s,ti,lt(ut(Pe,1),ue,2,6,[pi,"ENTITIES",Ka,gve,GTt,"1"])),zr(t.r,ti,lt(ut(Pe,1),ue,2,6,[pi,gve,uht,KTt])),zr(t.t,ti,lt(ut(Pe,1),ue,2,6,[pi,KTt,Ka,AU])),zr(t.u,ti,lt(ut(Pe,1),ue,2,6,[pi,fA,ff,I1])),zr(t.v,ti,lt(ut(Pe,1),ue,2,6,[pi,"float:Object",Ka,fA])),zr(t.w,ti,lt(ut(Pe,1),ue,2,6,[pi,"gDay",ff,I1])),zr(t.B,ti,lt(ut(Pe,1),ue,2,6,[pi,"gMonth",ff,I1])),zr(t.A,ti,lt(ut(Pe,1),ue,2,6,[pi,"gMonthDay",ff,I1])),zr(t.C,ti,lt(ut(Pe,1),ue,2,6,[pi,"gYear",ff,I1])),zr(t.D,ti,lt(ut(Pe,1),ue,2,6,[pi,"gYearMonth",ff,I1])),zr(t.F,ti,lt(ut(Pe,1),ue,2,6,[pi,"hexBinary",ff,I1])),zr(t.G,ti,lt(ut(Pe,1),ue,2,6,[pi,"ID",Ka,AU])),zr(t.H,ti,lt(ut(Pe,1),ue,2,6,[pi,"IDREF",Ka,AU])),zr(t.J,ti,lt(ut(Pe,1),ue,2,6,[pi,"IDREFS",Ka,pve,GTt,"1"])),zr(t.I,ti,lt(ut(Pe,1),ue,2,6,[pi,pve,uht,"IDREF"])),zr(t.K,ti,lt(ut(Pe,1),ue,2,6,[pi,dA])),zr(t.M,ti,lt(ut(Pe,1),ue,2,6,[pi,WTt])),zr(t.L,ti,lt(ut(Pe,1),ue,2,6,[pi,"int:Object",Ka,dA])),zr(t.P,ti,lt(ut(Pe,1),ue,2,6,[pi,"language",Ka,hht,fht,bve])),zr(t.Q,ti,lt(ut(Pe,1),ue,2,6,[pi,gA])),zr(t.R,ti,lt(ut(Pe,1),ue,2,6,[pi,"long:Object",Ka,gA])),zr(t.S,ti,lt(ut(Pe,1),ue,2,6,[pi,"Name",Ka,hht,fht,YTt])),zr(t.T,ti,lt(ut(Pe,1),ue,2,6,[pi,AU,Ka,"Name",fht,wve])),zr(t.U,ti,lt(ut(Pe,1),ue,2,6,[pi,"negativeInteger",Ka,mve,PN,"-1"])),zr(t.V,ti,lt(ut(Pe,1),ue,2,6,[pi,XTt,Ka,hht,fht,"\\c+"])),zr(t.X,ti,lt(ut(Pe,1),ue,2,6,[pi,"NMTOKENS",Ka,vve,GTt,"1"])),zr(t.W,ti,lt(ut(Pe,1),ue,2,6,[pi,vve,uht,XTt])),zr(t.Y,ti,lt(ut(Pe,1),ue,2,6,[pi,QTt,Ka,WTt,FN,"0"])),zr(t.Z,ti,lt(ut(Pe,1),ue,2,6,[pi,mve,Ka,WTt,PN,"0"])),zr(t.$,ti,lt(ut(Pe,1),ue,2,6,[pi,yve,Ka,Nct,ff,"replace"])),zr(t._,ti,lt(ut(Pe,1),ue,2,6,[pi,"NOTATION",ff,I1])),zr(t.ab,ti,lt(ut(Pe,1),ue,2,6,[pi,"positiveInteger",Ka,QTt,FN,"1"])),zr(t.bb,ti,lt(ut(Pe,1),ue,2,6,[pi,"processingInstruction_._type",lf,"empty"])),zr(u(Dt(Qt(t.bb),0),35),ti,lt(ut(Pe,1),ue,2,6,[lf,TU,pi,"data"])),zr(u(Dt(Qt(t.bb),1),35),ti,lt(ut(Pe,1),ue,2,6,[lf,TU,pi,MTt])),zr(t.cb,ti,lt(ut(Pe,1),ue,2,6,[pi,"QName",ff,I1])),zr(t.db,ti,lt(ut(Pe,1),ue,2,6,[pi,pA])),zr(t.eb,ti,lt(ut(Pe,1),ue,2,6,[pi,"short:Object",Ka,pA])),zr(t.fb,ti,lt(ut(Pe,1),ue,2,6,[pi,"simpleAnyType",lf,MN])),zr(u(Dt(Qt(t.fb),0),35),ti,lt(ut(Pe,1),ue,2,6,[pi,":3",lf,MN])),zr(u(Dt(Qt(t.fb),1),35),ti,lt(ut(Pe,1),ue,2,6,[pi,":4",lf,MN])),zr(u(Dt(Qt(t.fb),2),19),ti,lt(ut(Pe,1),ue,2,6,[pi,":5",lf,MN])),zr(t.gb,ti,lt(ut(Pe,1),ue,2,6,[pi,Nct,ff,"preserve"])),zr(t.hb,ti,lt(ut(Pe,1),ue,2,6,[pi,"time",ff,I1])),zr(t.ib,ti,lt(ut(Pe,1),ue,2,6,[pi,hht,Ka,yve,ff,I1])),zr(t.jb,ti,lt(ut(Pe,1),ue,2,6,[pi,xve,PN,"255",FN,"0"])),zr(t.kb,ti,lt(ut(Pe,1),ue,2,6,[pi,"unsignedByte:Object",Ka,xve])),zr(t.lb,ti,lt(ut(Pe,1),ue,2,6,[pi,kve,PN,"4294967295",FN,"0"])),zr(t.mb,ti,lt(ut(Pe,1),ue,2,6,[pi,"unsignedInt:Object",Ka,kve])),zr(t.nb,ti,lt(ut(Pe,1),ue,2,6,[pi,"unsignedLong",Ka,QTt,PN,Eve,FN,"0"])),zr(t.ob,ti,lt(ut(Pe,1),ue,2,6,[pi,Tve,PN,"65535",FN,"0"])),zr(t.pb,ti,lt(ut(Pe,1),ue,2,6,[pi,"unsignedShort:Object",Ka,Tve])),zr(t.qb,ti,lt(ut(Pe,1),ue,2,6,[pi,"",lf,DN])),zr(u(Dt(Qt(t.qb),0),35),ti,lt(ut(Pe,1),ue,2,6,[lf,cht,pi,":mixed"])),zr(u(Dt(Qt(t.qb),1),19),ti,lt(ut(Pe,1),ue,2,6,[lf,TU,pi,"xmlns:prefix"])),zr(u(Dt(Qt(t.qb),2),19),ti,lt(ut(Pe,1),ue,2,6,[lf,TU,pi,"xsi:schemaLocation"])),zr(u(Dt(Qt(t.qb),3),35),ti,lt(ut(Pe,1),ue,2,6,[lf,CU,pi,"cDATA",SU,IN])),zr(u(Dt(Qt(t.qb),4),35),ti,lt(ut(Pe,1),ue,2,6,[lf,CU,pi,"comment",SU,IN])),zr(u(Dt(Qt(t.qb),5),19),ti,lt(ut(Pe,1),ue,2,6,[lf,CU,pi,Cve,SU,IN])),zr(u(Dt(Qt(t.qb),6),35),ti,lt(ut(Pe,1),ue,2,6,[lf,CU,pi,Ylt,SU,IN]))}function Qr(t){return hn("_UI_EMFDiagnostic_marker",t)?"EMF Problem":hn("_UI_CircularContainment_diagnostic",t)?"An object may not circularly contain itself":hn(ome,t)?"Wrong character.":hn(cme,t)?"Invalid reference number.":hn(pU,t)?"A character is required after \\.":hn(nht,t)?"'?' is not expected. '(?:' or '(?=' or '(?!' or '(?<' or '(?#' or '(?>'?":hn(ume,t)?"'(?<' or '(?<!' is expected.":hn(lme,t)?"A comment is not terminated.":hn(Tw,t)?"')' is expected.":hn(ITt,t)?"Unexpected end of the pattern in a modifier group.":hn(hme,t)?"':' is expected.":hn(fme,t)?"Unexpected end of the pattern in a conditional group.":hn(dme,t)?"A back reference or an anchor or a lookahead or a look-behind is expected in a conditional pattern.":hn(gme,t)?"There are more than three choices in a conditional group.":hn(pme,t)?"A character in U+0040-U+005f must follow \\c.":hn(bme,t)?"A '{' is required before a character category.":hn(wme,t)?"A property name is not closed by '}'.":hn(OTt,t)?"Unexpected meta character.":hn(rht,t)?"Unknown property.":hn(NTt,t)?"A POSIX character class must be closed by ':]'.":hn(bU,t)?"Unexpected end of the pattern in a character class.":hn(mme,t)?"Unknown name for a POSIX character class.":hn("parser.cc.4",t)?"'-' is invalid here.":hn(vme,t)?"']' is expected.":hn(PTt,t)?"'[' is invalid in a character class. Write '\\['.":hn(FTt,t)?"']' is invalid in a character class. Write '\\]'.":hn(iht,t)?"'-' is an invalid character range. Write '\\-'.":hn(yme,t)?"'[' is expected.":hn(xme,t)?"')' or '-[' or '+[' or '&[' is expected.":hn(kme,t)?"The range end code point is less than the start code point.":hn(zp,t)?"Invalid Unicode hex notation.":hn(Eme,t)?"Overflow in a hex notation.":hn(Tme,t)?"'\\x{' must be closed by '}'.":hn(Cme,t)?"Invalid Unicode code point.":hn(Sme,t)?"An anchor must not be here.":hn(Hh,t)?"This expression is not supported in the current option setting.":hn(_me,t)?"Invalid quantifier. A digit is expected.":hn(Ame,t)?"Invalid quantifier. Invalid quantity or a '}' is missing.":hn(Lme,t)?"Invalid quantifier. A digit or '}' is expected.":hn(Dme,t)?"Invalid quantifier. A min quantity must be <= a max quantity.":hn(BTt,t)?"Invalid quantifier. A quantity value overflow.":hn("_UI_PackageRegistry_extensionpoint",t)?"Ecore Package Registry for Generated Packages":hn("_UI_DynamicPackageRegistry_extensionpoint",t)?"Ecore Package Registry for Dynamic Packages":hn("_UI_FactoryRegistry_extensionpoint",t)?"Ecore Factory Override Registry":hn("_UI_URIExtensionParserRegistry_extensionpoint",t)?"URI Extension Parser Registry":hn("_UI_URIProtocolParserRegistry_extensionpoint",t)?"URI Protocol Parser Registry":hn("_UI_URIContentParserRegistry_extensionpoint",t)?"URI Content Parser Registry":hn("_UI_ContentHandlerRegistry_extensionpoint",t)?"Content Handler Registry":hn("_UI_URIMappingRegistry_extensionpoint",t)?"URI Converter Mapping Registry":hn("_UI_PackageRegistryImplementation_extensionpoint",t)?"Ecore Package Registry Implementation":hn("_UI_ValidationDelegateRegistry_extensionpoint",t)?"Validation Delegate Registry":hn("_UI_SettingDelegateRegistry_extensionpoint",t)?"Feature Setting Delegate Factory Registry":hn("_UI_InvocationDelegateRegistry_extensionpoint",t)?"Operation Invocation Delegate Factory Registry":hn("_UI_EClassInterfaceNotAbstract_diagnostic",t)?"A class that is an interface must also be abstract":hn("_UI_EClassNoCircularSuperTypes_diagnostic",t)?"A class may not be a super type of itself":hn("_UI_EClassNotWellFormedMapEntryNoInstanceClassName_diagnostic",t)?"A class that inherits from a map entry class must have instance class name 'java.util.Map$Entry'":hn("_UI_EReferenceOppositeOfOppositeInconsistent_diagnostic",t)?"The opposite of the opposite may not be a reference different from this one":hn("_UI_EReferenceOppositeNotFeatureOfType_diagnostic",t)?"The opposite must be a feature of the reference's type":hn("_UI_EReferenceTransientOppositeNotTransient_diagnostic",t)?"The opposite of a transient reference must be transient if it is proxy resolving":hn("_UI_EReferenceOppositeBothContainment_diagnostic",t)?"The opposite of a containment reference must not be a containment reference":hn("_UI_EReferenceConsistentUnique_diagnostic",t)?"A containment or bidirectional reference must be unique if its upper bound is different from 1":hn("_UI_ETypedElementNoType_diagnostic",t)?"The typed element must have a type":hn("_UI_EAttributeNoDataType_diagnostic",t)?"The generic attribute type must not refer to a class":hn("_UI_EReferenceNoClass_diagnostic",t)?"The generic reference type must not refer to a data type":hn("_UI_EGenericTypeNoTypeParameterAndClassifier_diagnostic",t)?"A generic type can't refer to both a type parameter and a classifier":hn("_UI_EGenericTypeNoClass_diagnostic",t)?"A generic super type must refer to a class":hn("_UI_EGenericTypeNoTypeParameterOrClassifier_diagnostic",t)?"A generic type in this context must refer to a classifier or a type parameter":hn("_UI_EGenericTypeBoundsOnlyForTypeArgument_diagnostic",t)?"A generic type may have bounds only when used as a type argument":hn("_UI_EGenericTypeNoUpperAndLowerBound_diagnostic",t)?"A generic type must not have both a lower and an upper bound":hn("_UI_EGenericTypeNoTypeParameterOrClassifierAndBound_diagnostic",t)?"A generic type with bounds must not also refer to a type parameter or classifier":hn("_UI_EGenericTypeNoArguments_diagnostic",t)?"A generic type may have arguments only if it refers to a classifier":hn("_UI_EGenericTypeOutOfScopeTypeParameter_diagnostic",t)?"A generic type may only refer to a type parameter that is in scope":t}function USn(t){var e,n,r,s,o,h,d,m,k,T,A,P,$,U,J;t.r||(t.r=!0,mu(t,"graph"),Xq(t,"graph"),Qq(t,hT),nO(t.o,"T"),Or(Yo(t.a),t.p),Or(Yo(t.f),t.a),Or(Yo(t.n),t.f),Or(Yo(t.g),t.n),Or(Yo(t.c),t.n),Or(Yo(t.i),t.c),Or(Yo(t.j),t.c),Or(Yo(t.d),t.f),Or(Yo(t.e),t.a),Ec(t.p,o_n,Qbe,!0,!0,!1),U=i5(t.p,t.p,"setProperty"),J=Bce(U),k=mg(t.o),T=(n=(r=new lm,r),n),Or((!k.d&&(k.d=new Ps(Do,k,1)),k.d),T),A=rst(J),zxt(T,A),jH(U,k,kTt),k=rst(J),jH(U,k,cA),U=i5(t.p,null,"getProperty"),J=Bce(U),k=mg(t.o),T=rst(J),Or((!k.d&&(k.d=new Ps(Do,k,1)),k.d),T),jH(U,k,kTt),k=rst(J),$=hd(U,k,null),$&&$.oj(),U=i5(t.p,t.wb.e,"hasProperty"),k=mg(t.o),T=(s=(o=new lm,o),s),Or((!k.d&&(k.d=new Ps(Do,k,1)),k.d),T),jH(U,k,kTt),U=i5(t.p,t.p,"copyProperties"),qo(U,t.p,Ult),U=i5(t.p,null,"getAllProperties"),k=mg(t.wb.P),T=mg(t.o),Or((!k.d&&(k.d=new Ps(Do,k,1)),k.d),T),A=(h=(d=new lm,d),h),Or((!T.d&&(T.d=new Ps(Do,T,1)),T.d),A),T=mg(t.wb.M),Or((!k.d&&(k.d=new Ps(Do,k,1)),k.d),T),P=hd(U,k,null),P&&P.oj(),Ec(t.a,QT,Bwe,!0,!1,!0),Ui(u(Dt(Qt(t.a),0),19),t.k,null,Ywe,0,-1,QT,!1,!1,!0,!0,!1,!1,!1),Ec(t.f,zP,jwe,!0,!1,!0),Ui(u(Dt(Qt(t.f),0),19),t.g,u(Dt(Qt(t.g),0),19),"labels",0,-1,zP,!1,!1,!0,!0,!1,!1,!1),vs(u(Dt(Qt(t.f),1),35),t.wb._,Xwe,null,0,1,zP,!1,!1,!0,!1,!0,!1),Ec(t.n,qP,"ElkShape",!0,!1,!0),vs(u(Dt(Qt(t.n),0),35),t.wb.t,Glt,Y7,1,1,qP,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.n),1),35),t.wb.t,Klt,Y7,1,1,qP,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.n),2),35),t.wb.t,"x",Y7,1,1,qP,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.n),3),35),t.wb.t,"y",Y7,1,1,qP,!1,!1,!0,!1,!0,!1),U=i5(t.n,null,"setDimensions"),qo(U,t.wb.t,Klt),qo(U,t.wb.t,Glt),U=i5(t.n,null,"setLocation"),qo(U,t.wb.t,"x"),qo(U,t.wb.t,"y"),Ec(t.g,Po,vTt,!1,!1,!0),Ui(u(Dt(Qt(t.g),0),19),t.f,u(Dt(Qt(t.f),0),19),Wlt,0,1,Po,!1,!1,!0,!1,!1,!1,!1),vs(u(Dt(Qt(t.g),1),35),t.wb._,Ylt,"",0,1,Po,!1,!1,!0,!1,!0,!1),Ec(t.c,vr,$we,!0,!1,!0),Ui(u(Dt(Qt(t.c),0),19),t.d,u(Dt(Qt(t.d),1),19),"outgoingEdges",0,-1,vr,!1,!1,!0,!1,!0,!1,!1),Ui(u(Dt(Qt(t.c),1),19),t.d,u(Dt(Qt(t.d),2),19),"incomingEdges",0,-1,vr,!1,!1,!0,!1,!0,!1,!1),Ec(t.i,bi,yTt,!1,!1,!0),Ui(u(Dt(Qt(t.i),0),19),t.j,u(Dt(Qt(t.j),0),19),"ports",0,-1,bi,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.i),1),19),t.i,u(Dt(Qt(t.i),2),19),Xlt,0,-1,bi,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.i),2),19),t.i,u(Dt(Qt(t.i),1),19),Wlt,0,1,bi,!1,!1,!0,!1,!1,!1,!1),Ui(u(Dt(Qt(t.i),3),19),t.d,u(Dt(Qt(t.d),0),19),"containedEdges",0,-1,bi,!1,!1,!0,!0,!1,!1,!1),vs(u(Dt(Qt(t.i),4),35),t.wb.e,Qwe,null,0,1,bi,!0,!0,!1,!1,!0,!0),Ec(t.j,kl,xTt,!1,!1,!0),Ui(u(Dt(Qt(t.j),0),19),t.i,u(Dt(Qt(t.i),0),19),Wlt,0,1,kl,!1,!1,!0,!1,!1,!1,!1),Ec(t.d,Ts,mTt,!1,!1,!0),Ui(u(Dt(Qt(t.d),0),19),t.i,u(Dt(Qt(t.i),3),19),"containingNode",0,1,Ts,!1,!1,!0,!1,!1,!1,!1),Ui(u(Dt(Qt(t.d),1),19),t.c,u(Dt(Qt(t.c),0),19),ETt,0,-1,Ts,!1,!1,!0,!1,!0,!1,!1),Ui(u(Dt(Qt(t.d),2),19),t.c,u(Dt(Qt(t.c),1),19),Qlt,0,-1,Ts,!1,!1,!0,!1,!0,!1,!1),Ui(u(Dt(Qt(t.d),3),19),t.e,u(Dt(Qt(t.e),5),19),TTt,0,-1,Ts,!1,!1,!0,!0,!1,!1,!1),vs(u(Dt(Qt(t.d),4),35),t.wb.e,"hyperedge",null,0,1,Ts,!0,!0,!1,!1,!0,!0),vs(u(Dt(Qt(t.d),5),35),t.wb.e,Qwe,null,0,1,Ts,!0,!0,!1,!1,!0,!0),vs(u(Dt(Qt(t.d),6),35),t.wb.e,"selfloop",null,0,1,Ts,!0,!0,!1,!1,!0,!0),vs(u(Dt(Qt(t.d),7),35),t.wb.e,"connected",null,0,1,Ts,!0,!0,!1,!1,!0,!0),Ec(t.b,vh,Rwe,!1,!1,!0),vs(u(Dt(Qt(t.b),0),35),t.wb.t,"x",Y7,1,1,vh,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.b),1),35),t.wb.t,"y",Y7,1,1,vh,!1,!1,!0,!1,!0,!1),U=i5(t.b,null,"set"),qo(U,t.wb.t,"x"),qo(U,t.wb.t,"y"),Ec(t.e,Wi,zwe,!1,!1,!0),vs(u(Dt(Qt(t.e),0),35),t.wb.t,"startX",null,0,1,Wi,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.e),1),35),t.wb.t,"startY",null,0,1,Wi,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.e),2),35),t.wb.t,"endX",null,0,1,Wi,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.e),3),35),t.wb.t,"endY",null,0,1,Wi,!1,!1,!0,!1,!0,!1),Ui(u(Dt(Qt(t.e),4),19),t.b,null,hU,0,-1,Wi,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.e),5),19),t.d,u(Dt(Qt(t.d),3),19),Wlt,0,1,Wi,!1,!1,!0,!1,!1,!1,!1),Ui(u(Dt(Qt(t.e),6),19),t.c,null,CTt,0,1,Wi,!1,!1,!0,!1,!0,!1,!1),Ui(u(Dt(Qt(t.e),7),19),t.c,null,STt,0,1,Wi,!1,!1,!0,!1,!0,!1,!1),Ui(u(Dt(Qt(t.e),8),19),t.e,u(Dt(Qt(t.e),9),19),_Tt,0,-1,Wi,!1,!1,!0,!1,!0,!1,!1),Ui(u(Dt(Qt(t.e),9),19),t.e,u(Dt(Qt(t.e),8),19),ATt,0,-1,Wi,!1,!1,!0,!1,!0,!1,!1),vs(u(Dt(Qt(t.e),10),35),t.wb._,Xwe,null,0,1,Wi,!1,!1,!0,!1,!0,!1),U=i5(t.e,null,"setStartLocation"),qo(U,t.wb.t,"x"),qo(U,t.wb.t,"y"),U=i5(t.e,null,"setEndLocation"),qo(U,t.wb.t,"x"),qo(U,t.wb.t,"y"),Ec(t.k,Sw,"ElkPropertyToValueMapEntry",!1,!1,!1),k=mg(t.o),T=(m=(e=new lm,e),m),Or((!k.d&&(k.d=new Ps(Do,k,1)),k.d),T),W1e(u(Dt(Qt(t.k),0),35),k,"key",Sw,!1,!1,!0,!1),vs(u(Dt(Qt(t.k),1),35),t.s,cA,null,0,1,Sw,!1,!1,!0,!1,!0,!1),fi(t.o,Sdt,"IProperty",!0),fi(t.s,aa,"PropertyValue",!0),g5t(t,hT))}function sbe(){sbe=V,vt=Vt(ul,M5,28,po,15,1),vt[9]=35,vt[10]=19,vt[13]=19,vt[32]=51,vt[33]=49,vt[34]=33,zt(vt,35,38,49),vt[38]=1,zt(vt,39,45,49),zt(vt,45,47,-71),vt[47]=49,zt(vt,48,58,-71),vt[58]=61,vt[59]=49,vt[60]=1,vt[61]=49,vt[62]=33,zt(vt,63,65,49),zt(vt,65,91,-3),zt(vt,91,93,33),vt[93]=1,vt[94]=33,vt[95]=-3,vt[96]=33,zt(vt,97,123,-3),zt(vt,123,183,33),vt[183]=-87,zt(vt,184,192,33),zt(vt,192,215,-19),vt[215]=33,zt(vt,216,247,-19),vt[247]=33,zt(vt,248,306,-19),zt(vt,306,308,33),zt(vt,308,319,-19),zt(vt,319,321,33),zt(vt,321,329,-19),vt[329]=33,zt(vt,330,383,-19),vt[383]=33,zt(vt,384,452,-19),zt(vt,452,461,33),zt(vt,461,497,-19),zt(vt,497,500,33),zt(vt,500,502,-19),zt(vt,502,506,33),zt(vt,506,536,-19),zt(vt,536,592,33),zt(vt,592,681,-19),zt(vt,681,699,33),zt(vt,699,706,-19),zt(vt,706,720,33),zt(vt,720,722,-87),zt(vt,722,768,33),zt(vt,768,838,-87),zt(vt,838,864,33),zt(vt,864,866,-87),zt(vt,866,902,33),vt[902]=-19,vt[903]=-87,zt(vt,904,907,-19),vt[907]=33,vt[908]=-19,vt[909]=33,zt(vt,910,930,-19),vt[930]=33,zt(vt,931,975,-19),vt[975]=33,zt(vt,976,983,-19),zt(vt,983,986,33),vt[986]=-19,vt[987]=33,vt[988]=-19,vt[989]=33,vt[990]=-19,vt[991]=33,vt[992]=-19,vt[993]=33,zt(vt,994,1012,-19),zt(vt,1012,1025,33),zt(vt,1025,1037,-19),vt[1037]=33,zt(vt,1038,1104,-19),vt[1104]=33,zt(vt,1105,1117,-19),vt[1117]=33,zt(vt,1118,1154,-19),vt[1154]=33,zt(vt,1155,1159,-87),zt(vt,1159,1168,33),zt(vt,1168,1221,-19),zt(vt,1221,1223,33),zt(vt,1223,1225,-19),zt(vt,1225,1227,33),zt(vt,1227,1229,-19),zt(vt,1229,1232,33),zt(vt,1232,1260,-19),zt(vt,1260,1262,33),zt(vt,1262,1270,-19),zt(vt,1270,1272,33),zt(vt,1272,1274,-19),zt(vt,1274,1329,33),zt(vt,1329,1367,-19),zt(vt,1367,1369,33),vt[1369]=-19,zt(vt,1370,1377,33),zt(vt,1377,1415,-19),zt(vt,1415,1425,33),zt(vt,1425,1442,-87),vt[1442]=33,zt(vt,1443,1466,-87),vt[1466]=33,zt(vt,1467,1470,-87),vt[1470]=33,vt[1471]=-87,vt[1472]=33,zt(vt,1473,1475,-87),vt[1475]=33,vt[1476]=-87,zt(vt,1477,1488,33),zt(vt,1488,1515,-19),zt(vt,1515,1520,33),zt(vt,1520,1523,-19),zt(vt,1523,1569,33),zt(vt,1569,1595,-19),zt(vt,1595,1600,33),vt[1600]=-87,zt(vt,1601,1611,-19),zt(vt,1611,1619,-87),zt(vt,1619,1632,33),zt(vt,1632,1642,-87),zt(vt,1642,1648,33),vt[1648]=-87,zt(vt,1649,1720,-19),zt(vt,1720,1722,33),zt(vt,1722,1727,-19),vt[1727]=33,zt(vt,1728,1743,-19),vt[1743]=33,zt(vt,1744,1748,-19),vt[1748]=33,vt[1749]=-19,zt(vt,1750,1765,-87),zt(vt,1765,1767,-19),zt(vt,1767,1769,-87),vt[1769]=33,zt(vt,1770,1774,-87),zt(vt,1774,1776,33),zt(vt,1776,1786,-87),zt(vt,1786,2305,33),zt(vt,2305,2308,-87),vt[2308]=33,zt(vt,2309,2362,-19),zt(vt,2362,2364,33),vt[2364]=-87,vt[2365]=-19,zt(vt,2366,2382,-87),zt(vt,2382,2385,33),zt(vt,2385,2389,-87),zt(vt,2389,2392,33),zt(vt,2392,2402,-19),zt(vt,2402,2404,-87),zt(vt,2404,2406,33),zt(vt,2406,2416,-87),zt(vt,2416,2433,33),zt(vt,2433,2436,-87),vt[2436]=33,zt(vt,2437,2445,-19),zt(vt,2445,2447,33),zt(vt,2447,2449,-19),zt(vt,2449,2451,33),zt(vt,2451,2473,-19),vt[2473]=33,zt(vt,2474,2481,-19),vt[2481]=33,vt[2482]=-19,zt(vt,2483,2486,33),zt(vt,2486,2490,-19),zt(vt,2490,2492,33),vt[2492]=-87,vt[2493]=33,zt(vt,2494,2501,-87),zt(vt,2501,2503,33),zt(vt,2503,2505,-87),zt(vt,2505,2507,33),zt(vt,2507,2510,-87),zt(vt,2510,2519,33),vt[2519]=-87,zt(vt,2520,2524,33),zt(vt,2524,2526,-19),vt[2526]=33,zt(vt,2527,2530,-19),zt(vt,2530,2532,-87),zt(vt,2532,2534,33),zt(vt,2534,2544,-87),zt(vt,2544,2546,-19),zt(vt,2546,2562,33),vt[2562]=-87,zt(vt,2563,2565,33),zt(vt,2565,2571,-19),zt(vt,2571,2575,33),zt(vt,2575,2577,-19),zt(vt,2577,2579,33),zt(vt,2579,2601,-19),vt[2601]=33,zt(vt,2602,2609,-19),vt[2609]=33,zt(vt,2610,2612,-19),vt[2612]=33,zt(vt,2613,2615,-19),vt[2615]=33,zt(vt,2616,2618,-19),zt(vt,2618,2620,33),vt[2620]=-87,vt[2621]=33,zt(vt,2622,2627,-87),zt(vt,2627,2631,33),zt(vt,2631,2633,-87),zt(vt,2633,2635,33),zt(vt,2635,2638,-87),zt(vt,2638,2649,33),zt(vt,2649,2653,-19),vt[2653]=33,vt[2654]=-19,zt(vt,2655,2662,33),zt(vt,2662,2674,-87),zt(vt,2674,2677,-19),zt(vt,2677,2689,33),zt(vt,2689,2692,-87),vt[2692]=33,zt(vt,2693,2700,-19),vt[2700]=33,vt[2701]=-19,vt[2702]=33,zt(vt,2703,2706,-19),vt[2706]=33,zt(vt,2707,2729,-19),vt[2729]=33,zt(vt,2730,2737,-19),vt[2737]=33,zt(vt,2738,2740,-19),vt[2740]=33,zt(vt,2741,2746,-19),zt(vt,2746,2748,33),vt[2748]=-87,vt[2749]=-19,zt(vt,2750,2758,-87),vt[2758]=33,zt(vt,2759,2762,-87),vt[2762]=33,zt(vt,2763,2766,-87),zt(vt,2766,2784,33),vt[2784]=-19,zt(vt,2785,2790,33),zt(vt,2790,2800,-87),zt(vt,2800,2817,33),zt(vt,2817,2820,-87),vt[2820]=33,zt(vt,2821,2829,-19),zt(vt,2829,2831,33),zt(vt,2831,2833,-19),zt(vt,2833,2835,33),zt(vt,2835,2857,-19),vt[2857]=33,zt(vt,2858,2865,-19),vt[2865]=33,zt(vt,2866,2868,-19),zt(vt,2868,2870,33),zt(vt,2870,2874,-19),zt(vt,2874,2876,33),vt[2876]=-87,vt[2877]=-19,zt(vt,2878,2884,-87),zt(vt,2884,2887,33),zt(vt,2887,2889,-87),zt(vt,2889,2891,33),zt(vt,2891,2894,-87),zt(vt,2894,2902,33),zt(vt,2902,2904,-87),zt(vt,2904,2908,33),zt(vt,2908,2910,-19),vt[2910]=33,zt(vt,2911,2914,-19),zt(vt,2914,2918,33),zt(vt,2918,2928,-87),zt(vt,2928,2946,33),zt(vt,2946,2948,-87),vt[2948]=33,zt(vt,2949,2955,-19),zt(vt,2955,2958,33),zt(vt,2958,2961,-19),vt[2961]=33,zt(vt,2962,2966,-19),zt(vt,2966,2969,33),zt(vt,2969,2971,-19),vt[2971]=33,vt[2972]=-19,vt[2973]=33,zt(vt,2974,2976,-19),zt(vt,2976,2979,33),zt(vt,2979,2981,-19),zt(vt,2981,2984,33),zt(vt,2984,2987,-19),zt(vt,2987,2990,33),zt(vt,2990,2998,-19),vt[2998]=33,zt(vt,2999,3002,-19),zt(vt,3002,3006,33),zt(vt,3006,3011,-87),zt(vt,3011,3014,33),zt(vt,3014,3017,-87),vt[3017]=33,zt(vt,3018,3022,-87),zt(vt,3022,3031,33),vt[3031]=-87,zt(vt,3032,3047,33),zt(vt,3047,3056,-87),zt(vt,3056,3073,33),zt(vt,3073,3076,-87),vt[3076]=33,zt(vt,3077,3085,-19),vt[3085]=33,zt(vt,3086,3089,-19),vt[3089]=33,zt(vt,3090,3113,-19),vt[3113]=33,zt(vt,3114,3124,-19),vt[3124]=33,zt(vt,3125,3130,-19),zt(vt,3130,3134,33),zt(vt,3134,3141,-87),vt[3141]=33,zt(vt,3142,3145,-87),vt[3145]=33,zt(vt,3146,3150,-87),zt(vt,3150,3157,33),zt(vt,3157,3159,-87),zt(vt,3159,3168,33),zt(vt,3168,3170,-19),zt(vt,3170,3174,33),zt(vt,3174,3184,-87),zt(vt,3184,3202,33),zt(vt,3202,3204,-87),vt[3204]=33,zt(vt,3205,3213,-19),vt[3213]=33,zt(vt,3214,3217,-19),vt[3217]=33,zt(vt,3218,3241,-19),vt[3241]=33,zt(vt,3242,3252,-19),vt[3252]=33,zt(vt,3253,3258,-19),zt(vt,3258,3262,33),zt(vt,3262,3269,-87),vt[3269]=33,zt(vt,3270,3273,-87),vt[3273]=33,zt(vt,3274,3278,-87),zt(vt,3278,3285,33),zt(vt,3285,3287,-87),zt(vt,3287,3294,33),vt[3294]=-19,vt[3295]=33,zt(vt,3296,3298,-19),zt(vt,3298,3302,33),zt(vt,3302,3312,-87),zt(vt,3312,3330,33),zt(vt,3330,3332,-87),vt[3332]=33,zt(vt,3333,3341,-19),vt[3341]=33,zt(vt,3342,3345,-19),vt[3345]=33,zt(vt,3346,3369,-19),vt[3369]=33,zt(vt,3370,3386,-19),zt(vt,3386,3390,33),zt(vt,3390,3396,-87),zt(vt,3396,3398,33),zt(vt,3398,3401,-87),vt[3401]=33,zt(vt,3402,3406,-87),zt(vt,3406,3415,33),vt[3415]=-87,zt(vt,3416,3424,33),zt(vt,3424,3426,-19),zt(vt,3426,3430,33),zt(vt,3430,3440,-87),zt(vt,3440,3585,33),zt(vt,3585,3631,-19),vt[3631]=33,vt[3632]=-19,vt[3633]=-87,zt(vt,3634,3636,-19),zt(vt,3636,3643,-87),zt(vt,3643,3648,33),zt(vt,3648,3654,-19),zt(vt,3654,3663,-87),vt[3663]=33,zt(vt,3664,3674,-87),zt(vt,3674,3713,33),zt(vt,3713,3715,-19),vt[3715]=33,vt[3716]=-19,zt(vt,3717,3719,33),zt(vt,3719,3721,-19),vt[3721]=33,vt[3722]=-19,zt(vt,3723,3725,33),vt[3725]=-19,zt(vt,3726,3732,33),zt(vt,3732,3736,-19),vt[3736]=33,zt(vt,3737,3744,-19),vt[3744]=33,zt(vt,3745,3748,-19),vt[3748]=33,vt[3749]=-19,vt[3750]=33,vt[3751]=-19,zt(vt,3752,3754,33),zt(vt,3754,3756,-19),vt[3756]=33,zt(vt,3757,3759,-19),vt[3759]=33,vt[3760]=-19,vt[3761]=-87,zt(vt,3762,3764,-19),zt(vt,3764,3770,-87),vt[3770]=33,zt(vt,3771,3773,-87),vt[3773]=-19,zt(vt,3774,3776,33),zt(vt,3776,3781,-19),vt[3781]=33,vt[3782]=-87,vt[3783]=33,zt(vt,3784,3790,-87),zt(vt,3790,3792,33),zt(vt,3792,3802,-87),zt(vt,3802,3864,33),zt(vt,3864,3866,-87),zt(vt,3866,3872,33),zt(vt,3872,3882,-87),zt(vt,3882,3893,33),vt[3893]=-87,vt[3894]=33,vt[3895]=-87,vt[3896]=33,vt[3897]=-87,zt(vt,3898,3902,33),zt(vt,3902,3904,-87),zt(vt,3904,3912,-19),vt[3912]=33,zt(vt,3913,3946,-19),zt(vt,3946,3953,33),zt(vt,3953,3973,-87),vt[3973]=33,zt(vt,3974,3980,-87),zt(vt,3980,3984,33),zt(vt,3984,3990,-87),vt[3990]=33,vt[3991]=-87,vt[3992]=33,zt(vt,3993,4014,-87),zt(vt,4014,4017,33),zt(vt,4017,4024,-87),vt[4024]=33,vt[4025]=-87,zt(vt,4026,4256,33),zt(vt,4256,4294,-19),zt(vt,4294,4304,33),zt(vt,4304,4343,-19),zt(vt,4343,4352,33),vt[4352]=-19,vt[4353]=33,zt(vt,4354,4356,-19),vt[4356]=33,zt(vt,4357,4360,-19),vt[4360]=33,vt[4361]=-19,vt[4362]=33,zt(vt,4363,4365,-19),vt[4365]=33,zt(vt,4366,4371,-19),zt(vt,4371,4412,33),vt[4412]=-19,vt[4413]=33,vt[4414]=-19,vt[4415]=33,vt[4416]=-19,zt(vt,4417,4428,33),vt[4428]=-19,vt[4429]=33,vt[4430]=-19,vt[4431]=33,vt[4432]=-19,zt(vt,4433,4436,33),zt(vt,4436,4438,-19),zt(vt,4438,4441,33),vt[4441]=-19,zt(vt,4442,4447,33),zt(vt,4447,4450,-19),vt[4450]=33,vt[4451]=-19,vt[4452]=33,vt[4453]=-19,vt[4454]=33,vt[4455]=-19,vt[4456]=33,vt[4457]=-19,zt(vt,4458,4461,33),zt(vt,4461,4463,-19),zt(vt,4463,4466,33),zt(vt,4466,4468,-19),vt[4468]=33,vt[4469]=-19,zt(vt,4470,4510,33),vt[4510]=-19,zt(vt,4511,4520,33),vt[4520]=-19,zt(vt,4521,4523,33),vt[4523]=-19,zt(vt,4524,4526,33),zt(vt,4526,4528,-19),zt(vt,4528,4535,33),zt(vt,4535,4537,-19),vt[4537]=33,vt[4538]=-19,vt[4539]=33,zt(vt,4540,4547,-19),zt(vt,4547,4587,33),vt[4587]=-19,zt(vt,4588,4592,33),vt[4592]=-19,zt(vt,4593,4601,33),vt[4601]=-19,zt(vt,4602,7680,33),zt(vt,7680,7836,-19),zt(vt,7836,7840,33),zt(vt,7840,7930,-19),zt(vt,7930,7936,33),zt(vt,7936,7958,-19),zt(vt,7958,7960,33),zt(vt,7960,7966,-19),zt(vt,7966,7968,33),zt(vt,7968,8006,-19),zt(vt,8006,8008,33),zt(vt,8008,8014,-19),zt(vt,8014,8016,33),zt(vt,8016,8024,-19),vt[8024]=33,vt[8025]=-19,vt[8026]=33,vt[8027]=-19,vt[8028]=33,vt[8029]=-19,vt[8030]=33,zt(vt,8031,8062,-19),zt(vt,8062,8064,33),zt(vt,8064,8117,-19),vt[8117]=33,zt(vt,8118,8125,-19),vt[8125]=33,vt[8126]=-19,zt(vt,8127,8130,33),zt(vt,8130,8133,-19),vt[8133]=33,zt(vt,8134,8141,-19),zt(vt,8141,8144,33),zt(vt,8144,8148,-19),zt(vt,8148,8150,33),zt(vt,8150,8156,-19),zt(vt,8156,8160,33),zt(vt,8160,8173,-19),zt(vt,8173,8178,33),zt(vt,8178,8181,-19),vt[8181]=33,zt(vt,8182,8189,-19),zt(vt,8189,8400,33),zt(vt,8400,8413,-87),zt(vt,8413,8417,33),vt[8417]=-87,zt(vt,8418,8486,33),vt[8486]=-19,zt(vt,8487,8490,33),zt(vt,8490,8492,-19),zt(vt,8492,8494,33),vt[8494]=-19,zt(vt,8495,8576,33),zt(vt,8576,8579,-19),zt(vt,8579,12293,33),vt[12293]=-87,vt[12294]=33,vt[12295]=-19,zt(vt,12296,12321,33),zt(vt,12321,12330,-19),zt(vt,12330,12336,-87),vt[12336]=33,zt(vt,12337,12342,-87),zt(vt,12342,12353,33),zt(vt,12353,12437,-19),zt(vt,12437,12441,33),zt(vt,12441,12443,-87),zt(vt,12443,12445,33),zt(vt,12445,12447,-87),zt(vt,12447,12449,33),zt(vt,12449,12539,-19),vt[12539]=33,zt(vt,12540,12543,-87),zt(vt,12543,12549,33),zt(vt,12549,12589,-19),zt(vt,12589,19968,33),zt(vt,19968,40870,-19),zt(vt,40870,44032,33),zt(vt,44032,55204,-19),zt(vt,55204,cN,33),zt(vt,57344,65534,33)}function GSn(t){var e,n,r,s,o,h,d;t.hb||(t.hb=!0,mu(t,"ecore"),Xq(t,"ecore"),Qq(t,hf),nO(t.fb,"E"),nO(t.L,"T"),nO(t.P,"K"),nO(t.P,"V"),nO(t.cb,"E"),Or(Yo(t.b),t.bb),Or(Yo(t.a),t.Q),Or(Yo(t.o),t.p),Or(Yo(t.p),t.R),Or(Yo(t.q),t.p),Or(Yo(t.v),t.q),Or(Yo(t.w),t.R),Or(Yo(t.B),t.Q),Or(Yo(t.R),t.Q),Or(Yo(t.T),t.eb),Or(Yo(t.U),t.R),Or(Yo(t.V),t.eb),Or(Yo(t.W),t.bb),Or(Yo(t.bb),t.eb),Or(Yo(t.eb),t.R),Or(Yo(t.db),t.R),Ec(t.b,V3,$me,!1,!1,!0),vs(u(Dt(Qt(t.b),0),35),t.e,"iD",null,0,1,V3,!1,!1,!0,!1,!0,!1),Ui(u(Dt(Qt(t.b),1),19),t.q,null,"eAttributeType",1,1,V3,!0,!0,!1,!1,!0,!1,!0),Ec(t.a,ci,Bme,!1,!1,!0),vs(u(Dt(Qt(t.a),0),35),t._,Ult,null,0,1,ci,!1,!1,!0,!1,!0,!1),Ui(u(Dt(Qt(t.a),1),19),t.ab,null,"details",0,-1,ci,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.a),2),19),t.Q,u(Dt(Qt(t.Q),0),19),"eModelElement",0,1,ci,!0,!1,!0,!1,!1,!1,!1),Ui(u(Dt(Qt(t.a),3),19),t.S,null,"contents",0,-1,ci,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.a),4),19),t.S,null,"references",0,-1,ci,!1,!1,!0,!1,!0,!1,!1),Ec(t.o,mf,"EClass",!1,!1,!0),vs(u(Dt(Qt(t.o),0),35),t.e,"abstract",null,0,1,mf,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.o),1),35),t.e,"interface",null,0,1,mf,!1,!1,!0,!1,!0,!1),Ui(u(Dt(Qt(t.o),2),19),t.o,null,"eSuperTypes",0,-1,mf,!1,!1,!0,!1,!0,!0,!1),Ui(u(Dt(Qt(t.o),3),19),t.T,u(Dt(Qt(t.T),0),19),"eOperations",0,-1,mf,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.o),4),19),t.b,null,"eAllAttributes",0,-1,mf,!0,!0,!1,!1,!0,!1,!0),Ui(u(Dt(Qt(t.o),5),19),t.W,null,"eAllReferences",0,-1,mf,!0,!0,!1,!1,!0,!1,!0),Ui(u(Dt(Qt(t.o),6),19),t.W,null,"eReferences",0,-1,mf,!0,!0,!1,!1,!0,!1,!0),Ui(u(Dt(Qt(t.o),7),19),t.b,null,"eAttributes",0,-1,mf,!0,!0,!1,!1,!0,!1,!0),Ui(u(Dt(Qt(t.o),8),19),t.W,null,"eAllContainments",0,-1,mf,!0,!0,!1,!1,!0,!1,!0),Ui(u(Dt(Qt(t.o),9),19),t.T,null,"eAllOperations",0,-1,mf,!0,!0,!1,!1,!0,!1,!0),Ui(u(Dt(Qt(t.o),10),19),t.bb,null,"eAllStructuralFeatures",0,-1,mf,!0,!0,!1,!1,!0,!1,!0),Ui(u(Dt(Qt(t.o),11),19),t.o,null,"eAllSuperTypes",0,-1,mf,!0,!0,!1,!1,!0,!1,!0),Ui(u(Dt(Qt(t.o),12),19),t.b,null,"eIDAttribute",0,1,mf,!0,!0,!1,!1,!1,!1,!0),Ui(u(Dt(Qt(t.o),13),19),t.bb,u(Dt(Qt(t.bb),7),19),"eStructuralFeatures",0,-1,mf,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.o),14),19),t.H,null,"eGenericSuperTypes",0,-1,mf,!1,!1,!0,!0,!1,!0,!1),Ui(u(Dt(Qt(t.o),15),19),t.H,null,"eAllGenericSuperTypes",0,-1,mf,!0,!0,!1,!1,!0,!1,!0),d=Oo(u(Dt(Di(t.o),0),62),t.e,"isSuperTypeOf"),qo(d,t.o,"someClass"),Oo(u(Dt(Di(t.o),1),62),t.I,"getFeatureCount"),d=Oo(u(Dt(Di(t.o),2),62),t.bb,Jme),qo(d,t.I,"featureID"),d=Oo(u(Dt(Di(t.o),3),62),t.I,Zme),qo(d,t.bb,bA),d=Oo(u(Dt(Di(t.o),4),62),t.bb,Jme),qo(d,t._,"featureName"),Oo(u(Dt(Di(t.o),5),62),t.I,"getOperationCount"),d=Oo(u(Dt(Di(t.o),6),62),t.T,"getEOperation"),qo(d,t.I,"operationID"),d=Oo(u(Dt(Di(t.o),7),62),t.I,tve),qo(d,t.T,HTt),d=Oo(u(Dt(Di(t.o),8),62),t.T,"getOverride"),qo(d,t.T,HTt),d=Oo(u(Dt(Di(t.o),9),62),t.H,"getFeatureType"),qo(d,t.bb,bA),Ec(t.p,B1,zme,!0,!1,!0),vs(u(Dt(Qt(t.p),0),35),t._,"instanceClassName",null,0,1,B1,!1,!0,!0,!0,!0,!1),e=mg(t.L),n=g3t(),Or((!e.d&&(e.d=new Ps(Do,e,1)),e.d),n),W1e(u(Dt(Qt(t.p),1),35),e,"instanceClass",B1,!0,!0,!1,!0),vs(u(Dt(Qt(t.p),2),35),t.M,eve,null,0,1,B1,!0,!0,!1,!1,!0,!0),vs(u(Dt(Qt(t.p),3),35),t._,"instanceTypeName",null,0,1,B1,!1,!0,!0,!0,!0,!1),Ui(u(Dt(Qt(t.p),4),19),t.U,u(Dt(Qt(t.U),3),19),"ePackage",0,1,B1,!0,!1,!1,!1,!0,!1,!1),Ui(u(Dt(Qt(t.p),5),19),t.db,null,nve,0,-1,B1,!1,!1,!0,!0,!0,!1,!1),d=Oo(u(Dt(Di(t.p),0),62),t.e,rve),qo(d,t.M,ZO),Oo(u(Dt(Di(t.p),1),62),t.I,"getClassifierID"),Ec(t.q,n0t,"EDataType",!1,!1,!0),vs(u(Dt(Qt(t.q),0),35),t.e,"serializable",uT,0,1,n0t,!1,!1,!0,!1,!0,!1),Ec(t.v,YK,"EEnum",!1,!1,!0),Ui(u(Dt(Qt(t.v),0),19),t.w,u(Dt(Qt(t.w),3),19),"eLiterals",0,-1,YK,!1,!1,!0,!0,!1,!1,!1),d=Oo(u(Dt(Di(t.v),0),62),t.w,ive),qo(d,t._,pi),d=Oo(u(Dt(Di(t.v),1),62),t.w,ive),qo(d,t.I,cA),d=Oo(u(Dt(Di(t.v),2),62),t.w,"getEEnumLiteralByLiteral"),qo(d,t._,"literal"),Ec(t.w,Vg,qme,!1,!1,!0),vs(u(Dt(Qt(t.w),0),35),t.I,cA,null,0,1,Vg,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.w),1),35),t.A,"instance",null,0,1,Vg,!0,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.w),2),35),t._,"literal",null,0,1,Vg,!1,!1,!0,!1,!0,!1),Ui(u(Dt(Qt(t.w),3),19),t.v,u(Dt(Qt(t.v),0),19),"eEnum",0,1,Vg,!0,!1,!1,!1,!1,!1,!1),Ec(t.B,EL,"EFactory",!1,!1,!0),Ui(u(Dt(Qt(t.B),0),19),t.U,u(Dt(Qt(t.U),2),19),"ePackage",1,1,EL,!0,!1,!0,!1,!1,!1,!1),d=Oo(u(Dt(Di(t.B),0),62),t.S,"create"),qo(d,t.o,"eClass"),d=Oo(u(Dt(Di(t.B),1),62),t.M,"createFromString"),qo(d,t.q,"eDataType"),qo(d,t._,"literalValue"),d=Oo(u(Dt(Di(t.B),2),62),t._,"convertToString"),qo(d,t.q,"eDataType"),qo(d,t.M,"instanceValue"),Ec(t.Q,HP,qwe,!0,!1,!0),Ui(u(Dt(Qt(t.Q),0),19),t.a,u(Dt(Qt(t.a),2),19),"eAnnotations",0,-1,HP,!1,!1,!0,!0,!1,!1,!1),d=Oo(u(Dt(Di(t.Q),0),62),t.a,"getEAnnotation"),qo(d,t._,Ult),Ec(t.R,Xdt,Hwe,!0,!1,!0),vs(u(Dt(Qt(t.R),0),35),t._,pi,null,0,1,Xdt,!1,!1,!0,!1,!0,!1),Ec(t.S,p2,"EObject",!1,!1,!0),Oo(u(Dt(Di(t.S),0),62),t.o,"eClass"),Oo(u(Dt(Di(t.S),1),62),t.e,"eIsProxy"),Oo(u(Dt(Di(t.S),2),62),t.X,"eResource"),Oo(u(Dt(Di(t.S),3),62),t.S,"eContainer"),Oo(u(Dt(Di(t.S),4),62),t.bb,"eContainingFeature"),Oo(u(Dt(Di(t.S),5),62),t.W,"eContainmentFeature"),d=Oo(u(Dt(Di(t.S),6),62),null,"eContents"),e=mg(t.fb),n=mg(t.S),Or((!e.d&&(e.d=new Ps(Do,e,1)),e.d),n),s=hd(d,e,null),s&&s.oj(),d=Oo(u(Dt(Di(t.S),7),62),null,"eAllContents"),e=mg(t.cb),n=mg(t.S),Or((!e.d&&(e.d=new Ps(Do,e,1)),e.d),n),o=hd(d,e,null),o&&o.oj(),d=Oo(u(Dt(Di(t.S),8),62),null,"eCrossReferences"),e=mg(t.fb),n=mg(t.S),Or((!e.d&&(e.d=new Ps(Do,e,1)),e.d),n),h=hd(d,e,null),h&&h.oj(),d=Oo(u(Dt(Di(t.S),9),62),t.M,"eGet"),qo(d,t.bb,bA),d=Oo(u(Dt(Di(t.S),10),62),t.M,"eGet"),qo(d,t.bb,bA),qo(d,t.e,"resolve"),d=Oo(u(Dt(Di(t.S),11),62),null,"eSet"),qo(d,t.bb,bA),qo(d,t.M,"newValue"),d=Oo(u(Dt(Di(t.S),12),62),t.e,"eIsSet"),qo(d,t.bb,bA),d=Oo(u(Dt(Di(t.S),13),62),null,"eUnset"),qo(d,t.bb,bA),d=Oo(u(Dt(Di(t.S),14),62),t.M,"eInvoke"),qo(d,t.T,HTt),e=mg(t.fb),n=g3t(),Or((!e.d&&(e.d=new Ps(Do,e,1)),e.d),n),jH(d,e,"arguments"),Iln(d,t.K),Ec(t.T,vf,Vme,!1,!1,!0),Ui(u(Dt(Qt(t.T),0),19),t.o,u(Dt(Qt(t.o),3),19),sve,0,1,vf,!0,!1,!1,!1,!1,!1,!1),Ui(u(Dt(Qt(t.T),1),19),t.db,null,nve,0,-1,vf,!1,!1,!0,!0,!0,!1,!1),Ui(u(Dt(Qt(t.T),2),19),t.V,u(Dt(Qt(t.V),0),19),"eParameters",0,-1,vf,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.T),3),19),t.p,null,"eExceptions",0,-1,vf,!1,!1,!0,!1,!0,!0,!1),Ui(u(Dt(Qt(t.T),4),19),t.H,null,"eGenericExceptions",0,-1,vf,!1,!1,!0,!0,!1,!0,!1),Oo(u(Dt(Di(t.T),0),62),t.I,tve),d=Oo(u(Dt(Di(t.T),1),62),t.e,"isOverrideOf"),qo(d,t.T,"someOperation"),Ec(t.U,F1,"EPackage",!1,!1,!0),vs(u(Dt(Qt(t.U),0),35),t._,"nsURI",null,0,1,F1,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.U),1),35),t._,"nsPrefix",null,0,1,F1,!1,!1,!0,!1,!0,!1),Ui(u(Dt(Qt(t.U),2),19),t.B,u(Dt(Qt(t.B),0),19),"eFactoryInstance",1,1,F1,!0,!1,!0,!1,!1,!1,!1),Ui(u(Dt(Qt(t.U),3),19),t.p,u(Dt(Qt(t.p),4),19),"eClassifiers",0,-1,F1,!1,!1,!0,!0,!0,!1,!1),Ui(u(Dt(Qt(t.U),4),19),t.U,u(Dt(Qt(t.U),5),19),"eSubpackages",0,-1,F1,!1,!1,!0,!0,!0,!1,!1),Ui(u(Dt(Qt(t.U),5),19),t.U,u(Dt(Qt(t.U),4),19),"eSuperPackage",0,1,F1,!0,!1,!1,!1,!0,!1,!1),d=Oo(u(Dt(Di(t.U),0),62),t.p,"getEClassifier"),qo(d,t._,pi),Ec(t.V,Ov,Ume,!1,!1,!0),Ui(u(Dt(Qt(t.V),0),19),t.T,u(Dt(Qt(t.T),2),19),"eOperation",0,1,Ov,!0,!1,!1,!1,!1,!1,!1),Ec(t.W,U3,Gme,!1,!1,!0),vs(u(Dt(Qt(t.W),0),35),t.e,"containment",null,0,1,U3,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.W),1),35),t.e,"container",null,0,1,U3,!0,!0,!1,!1,!0,!0),vs(u(Dt(Qt(t.W),2),35),t.e,"resolveProxies",uT,0,1,U3,!1,!1,!0,!1,!0,!1),Ui(u(Dt(Qt(t.W),3),19),t.W,null,"eOpposite",0,1,U3,!1,!1,!0,!1,!0,!1,!1),Ui(u(Dt(Qt(t.W),4),19),t.o,null,"eReferenceType",1,1,U3,!0,!0,!1,!1,!0,!1,!0),Ui(u(Dt(Qt(t.W),5),19),t.b,null,"eKeys",0,-1,U3,!1,!1,!0,!1,!0,!1,!1),Ec(t.bb,Wu,jme,!0,!1,!0),vs(u(Dt(Qt(t.bb),0),35),t.e,"changeable",uT,0,1,Wu,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.bb),1),35),t.e,"volatile",null,0,1,Wu,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.bb),2),35),t.e,"transient",null,0,1,Wu,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.bb),3),35),t._,"defaultValueLiteral",null,0,1,Wu,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.bb),4),35),t.M,eve,null,0,1,Wu,!0,!0,!1,!1,!0,!0),vs(u(Dt(Qt(t.bb),5),35),t.e,"unsettable",null,0,1,Wu,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.bb),6),35),t.e,"derived",null,0,1,Wu,!1,!1,!0,!1,!0,!1),Ui(u(Dt(Qt(t.bb),7),19),t.o,u(Dt(Qt(t.o),13),19),sve,0,1,Wu,!0,!1,!1,!1,!1,!1,!1),Oo(u(Dt(Di(t.bb),0),62),t.I,Zme),d=Oo(u(Dt(Di(t.bb),1),62),null,"getContainerClass"),e=mg(t.L),n=g3t(),Or((!e.d&&(e.d=new Ps(Do,e,1)),e.d),n),r=hd(d,e,null),r&&r.oj(),Ec(t.eb,H3,Rme,!0,!1,!0),vs(u(Dt(Qt(t.eb),0),35),t.e,"ordered",uT,0,1,H3,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.eb),1),35),t.e,"unique",uT,0,1,H3,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.eb),2),35),t.I,"lowerBound",null,0,1,H3,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.eb),3),35),t.I,"upperBound","1",0,1,H3,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.eb),4),35),t.e,"many",null,0,1,H3,!0,!0,!1,!1,!0,!0),vs(u(Dt(Qt(t.eb),5),35),t.e,"required",null,0,1,H3,!0,!0,!1,!1,!0,!0),Ui(u(Dt(Qt(t.eb),6),19),t.p,null,"eType",0,1,H3,!1,!0,!0,!1,!0,!0,!1),Ui(u(Dt(Qt(t.eb),7),19),t.H,null,"eGenericType",0,1,H3,!1,!0,!0,!0,!1,!0,!1),Ec(t.ab,Sw,"EStringToStringMapEntry",!1,!1,!1),vs(u(Dt(Qt(t.ab),0),35),t._,"key",null,0,1,Sw,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.ab),1),35),t._,cA,null,0,1,Sw,!1,!1,!0,!1,!0,!1),Ec(t.H,Do,Hme,!1,!1,!0),Ui(u(Dt(Qt(t.H),0),19),t.H,null,"eUpperBound",0,1,Do,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.H),1),19),t.H,null,"eTypeArguments",0,-1,Do,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.H),2),19),t.p,null,"eRawType",1,1,Do,!0,!1,!1,!1,!0,!1,!0),Ui(u(Dt(Qt(t.H),3),19),t.H,null,"eLowerBound",0,1,Do,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.H),4),19),t.db,null,"eTypeParameter",0,1,Do,!1,!1,!0,!1,!1,!1,!1),Ui(u(Dt(Qt(t.H),5),19),t.p,null,"eClassifier",0,1,Do,!1,!1,!0,!1,!0,!1,!1),d=Oo(u(Dt(Di(t.H),0),62),t.e,rve),qo(d,t.M,ZO),Ec(t.db,Nu,Kme,!1,!1,!0),Ui(u(Dt(Qt(t.db),0),19),t.H,null,"eBounds",0,-1,Nu,!1,!1,!0,!0,!1,!1,!1),fi(t.c,Mht,"EBigDecimal",!0),fi(t.d,N5,"EBigInteger",!0),fi(t.e,Fl,"EBoolean",!0),fi(t.f,ys,"EBooleanObject",!0),fi(t.i,ul,"EByte",!0),fi(t.g,ut(ul,1),"EByteArray",!0),fi(t.j,Fk,"EByteObject",!0),fi(t.k,Yh,"EChar",!0),fi(t.n,vA,"ECharacterObject",!0),fi(t.r,OU,"EDate",!0),fi(t.s,pOt,"EDiagnosticChain",!1),fi(t.t,ma,"EDouble",!0),fi(t.u,zs,"EDoubleObject",!0),fi(t.fb,DIt,"EEList",!1),fi(t.A,OIt,"EEnumerator",!1),fi(t.C,nOt,"EFeatureMap",!1),fi(t.D,XK,"EFeatureMapEntry",!1),fi(t.F,Y3,"EFloat",!0),fi(t.G,wT,"EFloatObject",!0),fi(t.I,Fr,"EInt",!0),fi(t.J,Ra,"EIntegerObject",!0),fi(t.L,t9t,"EJavaClass",!0),fi(t.M,aa,"EJavaObject",!0),fi(t.N,x2,"ELong",!0),fi(t.O,gv,"ELongObject",!0),fi(t.P,e9t,"EMap",!1),fi(t.X,JIt,"EResource",!1),fi(t.Y,bOt,"EResourceSet",!1),fi(t.Z,wx,"EShort",!0),fi(t.$,pv,"EShortObject",!0),fi(t._,Pe,"EString",!0),fi(t.cb,IIt,"ETreeIterator",!1),fi(t.K,wOt,"EInvocationTargetException",!1),g5t(t,hf))}var ZO="object",kk="boolean",u8t="number",Nct="string",Pct="function",xi=2147483647,Sc="java.lang",tN={3:1},eN="com.google.common.base",ao=", ",abe="%s (%s) must not be negative",Ln={3:1,4:1,5:1},obe="negative size: ",l8t="no calls to next() since the last call to remove()",cbe="Optional.of(",Vu="null",V7={204:1,51:1},on="com.google.common.collect",U7={204:1,51:1,128:1},pw={229:1,3:1},wa={51:1},xr="java.util",sv={85:1},o3={20:1,31:1,16:1},dd=2063,sl={20:1,31:1,16:1,21:1},h8t={85:1,139:1,133:1},ube={20:1,31:1,16:1,21:1,87:1},f8t={20:1,31:1,16:1,277:1,21:1,87:1},P0={51:1,128:1},Fct={358:1,44:1},lbe="AbstractMapEntry",hbe="expectedValuesPerKey",ue={3:1,6:1,4:1,5:1},Jd=16384,fh={159:1},ir={41:1},nN={202:1},rN={l:4194303,m:4194303,h:524287},Bct={253:1,3:1,34:1},fbe="range unbounded on this side",F0={20:1},dbe={20:1,16:1},d8t={3:1,20:1,31:1,16:1},G7={306:1,3:1,20:1,31:1,16:1,15:1,59:1},xV={3:1,4:1,5:1,173:1},K7={3:1,85:1},Rct={20:1,16:1,21:1},Ek={3:1,20:1,31:1,16:1,21:1},gbe={20:1,16:1,21:1,87:1},B0=461845907,R0=-862048943,iN={3:1,6:1,4:1,5:1,173:1},pbe="expectedSize",Uf=1024,z_=1073741824,c3="initialArraySize",te={3:1,6:1,4:1,9:1,5:1},W7={20:1,31:1,56:1,16:1,15:1},jct="arraySize",bbe={20:1,31:1,56:1,16:1,15:1,59:1},Kr={46:1},kV={380:1},Kb=1e-4,Ga=-2147483648,wbe="__noinit__",Pg={3:1,103:1,63:1,82:1},sN="com.google.gwt.core.client.impl",g8t="String",p8t="com.google.gwt.core.client",$ct="anonymous",zct="fnStack",b8t="Unknown",Zd={201:1,3:1,4:1},Rp=1e3,js=65535,qct="January",Hct="February",Vct="March",Uct="April",Tk="May",Gct="June",Kct="July",Wct="August",Yct="September",Xct="October",Qct="November",Jct="December",Wb=1900,ii={53:1,3:1,4:1},mbe="Before Christ",vbe="Anno Domini",Zct="Sunday",tut="Monday",eut="Tuesday",nut="Wednesday",rut="Thursday",iut="Friday",sut="Saturday",w8t="com.google.gwt.i18n.shared",ybe="DateTimeFormat",aut="com.google.gwt.i18n.client",xbe="DefaultDateTimeFormatInfo",kbe={3:1,4:1,34:1,206:1},Ck="com.google.gwt.json.client",Il=4194303,Fg=1048575,aN=524288,Sk=4194304,bw=17592186044416,EV=1e9,oN=-17592186044416,m8t="java.io",out={3:1,103:1,77:1,63:1,82:1},Ebe={3:1,295:1,82:1},av='For input string: "',Zi=1/0,Vs=-1/0,u3=4096,cut={3:1,4:1,376:1},Qn="org.eclipse.elk.layered",po=65536,cN=55296,No={109:1,3:1,4:1},uut=1e5,Tbe=.3010299956639812,So=4294967295,Y7="0.0",lut={44:1},X7="Unable to add element to queue",Cbe={3:1,4:1,20:1,31:1,56:1,13:1,16:1,15:1,59:1},Sbe={3:1,20:1,31:1,56:1,16:1,15:1,59:1},_be={20:1,16:1,15:1},hut={3:1,50:1},uN={189:1},E5={3:1,4:1,85:1},v8t={3:1,4:1,20:1,31:1,16:1,49:1,21:1},fut="delete",q_=14901161193847656e-24,H_=11102230246251565e-32,dut=15525485,lN=5960464477539063e-23,y8t=16777216,TV=16777215,x8t=", length: ",Abe={3:1,4:1,20:1,31:1,56:1,16:1,15:1,59:1},k8t="subMap: ",Lbe=" less than ",gut={3:1,34:1,22:1,303:1},put="java.util.function",V_="java.util.logging",Dbe={3:1,4:1,5:1,856:1},but="undefined",Us="java.util.stream",E8t={533:1,687:1},CV="fromIndex: ",Mbe=" > toIndex: ",T8t=", toIndex: ",C8t="Index: ",S8t=", Size: ",Q7="org.eclipse.elk.alg.common",Xr={50:1},Ibe="org.eclipse.elk.alg.common.compaction",Obe="Scanline/EventHandler",j0="org.eclipse.elk.alg.common.compaction.oned",Nbe="CNode belongs to another CGroup.",Pbe="ISpacingsHandler/1",wut="The ",mut=" instance has been finished already.",Fbe="The direction ",Bbe=" is not supported by the CGraph instance.",Rbe="OneDimensionalCompactor",jbe="OneDimensionalCompactor/lambda$0$Type",$be="Quadruplet",zbe="ScanlineConstraintCalculator",qbe="ScanlineConstraintCalculator/ConstraintsScanlineHandler",Hbe="ScanlineConstraintCalculator/ConstraintsScanlineHandler/lambda$0$Type",Vbe="ScanlineConstraintCalculator/Timestamp",Ube="ScanlineConstraintCalculator/lambda$0$Type",t0={178:1,46:1},vut="org.eclipse.elk.alg.common.compaction.options",pc="org.eclipse.elk.core.data",_8t="org.eclipse.elk.polyomino.traversalStrategy",A8t="org.eclipse.elk.polyomino.lowLevelSort",L8t="org.eclipse.elk.polyomino.highLevelSort",D8t="org.eclipse.elk.polyomino.fill",uf={134:1},yut="polyomino",U_="org.eclipse.elk.alg.common.networksimplex",$0={183:1,3:1,4:1},Gbe="org.eclipse.elk.alg.common.nodespacing",ww="org.eclipse.elk.alg.common.nodespacing.cellsystem",J7="CENTER",Kbe={217:1,336:1},M8t={3:1,4:1,5:1,603:1},_k="LEFT",Ak="RIGHT",I8t="Vertical alignment cannot be null",O8t="BOTTOM",SV="org.eclipse.elk.alg.common.nodespacing.internal",G_="UNDEFINED",gd=.01,hN="org.eclipse.elk.alg.common.nodespacing.internal.algorithm",Wbe="LabelPlacer/lambda$0$Type",Ybe="LabelPlacer/lambda$1$Type",Xbe="portRatioOrPosition",Z7="org.eclipse.elk.alg.common.overlaps",xut="DOWN",e0="org.eclipse.elk.alg.common.polyomino",_V="NORTH",kut="EAST",Eut="SOUTH",Tut="WEST",AV="org.eclipse.elk.alg.common.polyomino.structures",N8t="Direction",Cut="Grid is only of size ",Sut=". Requested point (",_ut=") is out of bounds.",LV=" Given center based coordinates were (",fN="org.eclipse.elk.graph.properties",Qbe="IPropertyHolder",P8t={3:1,96:1,137:1},Lk="org.eclipse.elk.alg.common.spore",Jbe="org.eclipse.elk.alg.common.utils",mw={205:1},T5="org.eclipse.elk.core",Zbe="Connected Components Compaction",t2e="org.eclipse.elk.alg.disco",DV="org.eclipse.elk.alg.disco.graph",Aut="org.eclipse.elk.alg.disco.options",F8t="CompactionStrategy",B8t="org.eclipse.elk.disco.componentCompaction.strategy",R8t="org.eclipse.elk.disco.componentCompaction.componentLayoutAlgorithm",j8t="org.eclipse.elk.disco.debug.discoGraph",$8t="org.eclipse.elk.disco.debug.discoPolys",e2e="componentCompaction",vw="org.eclipse.elk.disco",Lut="org.eclipse.elk.spacing.componentComponent",Dut="org.eclipse.elk.edge.thickness",Dk="org.eclipse.elk.aspectRatio",ov="org.eclipse.elk.padding",C5="org.eclipse.elk.alg.disco.transform",Mut=1.5707963267948966,S5=17976931348623157e292,l3={3:1,4:1,5:1,198:1},n2e={3:1,6:1,4:1,5:1,100:1,115:1},Iut="org.eclipse.elk.alg.force",z8t="ComponentsProcessor",r2e="ComponentsProcessor/1",q8t="ElkGraphImporter/lambda$0$Type",dN="org.eclipse.elk.alg.force.graph",i2e="Component Layout",H8t="org.eclipse.elk.alg.force.model",MV="org.eclipse.elk.force.model",V8t="org.eclipse.elk.force.iterations",U8t="org.eclipse.elk.force.repulsivePower",Out="org.eclipse.elk.force.temperature",n0=.001,Nut="org.eclipse.elk.force.repulsion",K_="org.eclipse.elk.alg.force.options",tT=1.600000023841858,Du="org.eclipse.elk.force",gN="org.eclipse.elk.priority",h3="org.eclipse.elk.spacing.nodeNode",Put="org.eclipse.elk.spacing.edgeLabel",IV="org.eclipse.elk.randomSeed",W_="org.eclipse.elk.separateConnectedComponents",Y_="org.eclipse.elk.interactive",Fut="org.eclipse.elk.portConstraints",OV="org.eclipse.elk.edgeLabels.inline",X_="org.eclipse.elk.omitNodeMicroLayout",eT="org.eclipse.elk.nodeSize.fixedGraphSize",Mk="org.eclipse.elk.nodeSize.options",_5="org.eclipse.elk.nodeSize.constraints",nT="org.eclipse.elk.nodeLabels.placement",rT="org.eclipse.elk.portLabels.placement",pN="org.eclipse.elk.topdownLayout",bN="org.eclipse.elk.topdown.scaleFactor",wN="org.eclipse.elk.topdown.hierarchicalNodeWidth",mN="org.eclipse.elk.topdown.hierarchicalNodeAspectRatio",cv="org.eclipse.elk.topdown.nodeType",G8t="origin",s2e="random",a2e="boundingBox.upLeft",o2e="boundingBox.lowRight",K8t="org.eclipse.elk.stress.fixed",W8t="org.eclipse.elk.stress.desiredEdgeLength",Y8t="org.eclipse.elk.stress.dimension",X8t="org.eclipse.elk.stress.epsilon",Q8t="org.eclipse.elk.stress.iterationLimit",Yb="org.eclipse.elk.stress",c2e="ELK Stress",Ik="org.eclipse.elk.nodeSize.minimum",NV="org.eclipse.elk.alg.force.stress",u2e="Layered layout",Ok="org.eclipse.elk.alg.layered",vN="org.eclipse.elk.alg.layered.compaction.components",Q_="org.eclipse.elk.alg.layered.compaction.oned",PV="org.eclipse.elk.alg.layered.compaction.oned.algs",yw="org.eclipse.elk.alg.layered.compaction.recthull",pd="org.eclipse.elk.alg.layered.components",r0="NONE",J8t="MODEL_ORDER",qc={3:1,6:1,4:1,9:1,5:1,126:1},l2e={3:1,6:1,4:1,5:1,150:1,100:1,115:1},FV="org.eclipse.elk.alg.layered.compound",zi={47:1},au="org.eclipse.elk.alg.layered.graph",But=" -> ",h2e="Not supported by LGraph",Z8t="Port side is undefined",Rut={3:1,6:1,4:1,5:1,482:1,150:1,100:1,115:1},jp={3:1,6:1,4:1,5:1,150:1,199:1,210:1,100:1,115:1},f2e={3:1,6:1,4:1,5:1,150:1,2042:1,210:1,100:1,115:1},d2e=`([{"' \r
1356 `),_.style===void 0&&(z.style=z.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),z.labelStyle=z.labelStyle.replace("color:","fill:"),z.id=F,z.classes="flowchart-link "+R+" "+B;const ot=tbt(w,z),{source:ft,target:wt,sourceId:mt,targetId:ct}=vtn(_,b);Kt.debug("abc78 source and target",ft,wt),f.edges.push({id:"e"+_.start+_.end,sources:[ft],targets:[wt],sourceId:mt,targetId:ct,labelEl:ot,labels:[{width:z.width,height:z.height,orgWidth:z.width,orgHeight:z.height,text:z.label,layoutOptions:{"edgeLabels.inline":"true","edgeLabels.placement":"CENTER"}}],edgeData:z})}),f},xtn=function(i,a,f,g,w){let v="";g&&(v=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,v=v.replace(/\(/g,"\\("),v=v.replace(/\)/g,"\\)")),uzt(i,a,v,w,f)},ktn=function(i,a){return Kt.info("Extracting classes"),a.db.getClasses()},Etn=function(i){const a={parentById:{},childrenById:{}},f=i.getSubGraphs();return Kt.info("Subgraphs - ",f),f.forEach(function(g){g.nodes.forEach(function(w){a.parentById[w]=g.id,a.childrenById[g.id]===void 0&&(a.childrenById[g.id]=[]),a.childrenById[g.id].push(w)})}),f.forEach(function(g){g.id,a.parentById[g.id]!==void 0&&a.parentById[g.id]}),a},Ttn=function(i,a,f){const g=gtn(i,a,f);if(g===void 0||g==="root")return{x:0,y:0};const w=Ux[g].offset;return{x:w.posX,y:w.posY}},Ctn=function(i,a,f,g,w,v){const b=Ttn(a.sourceId,a.targetId,w),E=a.sections[0].startPoint,S=a.sections[0].endPoint,M=(a.sections[0].bendPoints?a.sections[0].bendPoints:[]).map(wt=>[wt.x+b.x,wt.y+b.y]),F=[[E.x+b.x,E.y+b.y],...M,[S.x+b.x,S.y+b.y]],{x:R,y:B}=czt(a.edgeData),z=Ax().x(R).y(B).curve(Kg),Y=i.insert("path").attr("d",z(F)).attr("class","path "+f.classes).attr("fill","none"),nt=i.insert("g").attr("class","edgeLabel"),ot=Tr(nt.node().appendChild(a.labelEl)),ft=ot.node().firstChild.getBoundingClientRect();ot.attr("width",ft.width),ot.attr("height",ft.height),nt.attr("transform",`translate(${a.labels[0].x+b.x}, ${a.labels[0].y+b.y})`),xtn(Y,f,g.type,g.arrowMarkerAbsolute,v)},AHt=(i,a)=>{i.forEach(f=>{f.children||(f.children=[]);const g=a.childrenById[f.id];g&&g.forEach(w=>{f.children.push(Ux[w])}),AHt(f.children,a)})},Stn=async function(i,a,f,g){var it;g.db.clear(),Ux={},nm={},g.db.setGen("gen-2"),g.parser.parse(i);const w=Tr("body").append("div").attr("style","height:400px").attr("id","cy");let v={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(Kt.info("Drawing flowchart using v3 renderer",CHt),g.db.getDirection()){case"BT":v.layoutOptions["elk.direction"]="UP";break;case"TB":v.layoutOptions["elk.direction"]="DOWN";break;case"LR":v.layoutOptions["elk.direction"]="RIGHT";break;case"RL":v.layoutOptions["elk.direction"]="LEFT";break}const{securityLevel:E,flowchart:S}=o1();let _;E==="sandbox"&&(_=Tr("#i"+a));const M=Tr(E==="sandbox"?_.nodes()[0].contentDocument.body:"body"),F=E==="sandbox"?_.nodes()[0].contentDocument:document,R=M.select(`[id="${a}"]`);jpt(R,["point","circle","cross"],g.type,a);const z=g.db.getVertices();let Y;const nt=g.db.getSubGraphs();Kt.info("Subgraphs - ",nt);for(let gt=nt.length-1;gt>=0;gt--)Y=nt[gt],g.db.addVertex(Y.id,{text:Y.title,type:Y.labelType},"group",void 0,Y.classes,Y.dir);const ot=R.insert("g").attr("class","subgraphs"),ft=Etn(g.db);v=await mtn(z,a,M,F,g,ft,v);const wt=R.insert("g").attr("class","edges edgePath"),mt=g.db.getEdges();v=ytn(mt,g,v,R),Object.keys(Ux).forEach(gt=>{const Q=Ux[gt];Q.parent||v.children.push(Q),ft.childrenById[gt]!==void 0&&(Q.labels=[{text:Q.labelText,layoutOptions:{"nodeLabels.placement":"[H_CENTER, V_TOP, INSIDE]"},width:Q.labelData.width,height:Q.labelData.height}],delete Q.x,delete Q.y,delete Q.width,delete Q.height)}),AHt(v.children,ft),Kt.info("after layout",JSON.stringify(v,null,2));const rt=await CHt.layout(v);LHt(0,0,rt.children,R,ot,g,0),Kt.info("after layout",rt),(it=rt.edges)==null||it.map(gt=>{Ctn(wt,gt,gt.edgeData,g,ft,a)}),w8({},R,S.diagramPadding,S.useMaxWidth),w.remove()},LHt=(i,a,f,g,w,v,b)=>{f.forEach(function(E){if(E)if(Ux[E.id].offset={posX:E.x+i,posY:E.y+a,x:i,y:a,depth:b,width:E.width,height:E.height},E.type==="group"){const S=w.insert("g").attr("class","subgraph");S.insert("rect").attr("class","subgraph subgraph-lvl-"+b%5+" node").attr("x",E.x+i).attr("y",E.y+a).attr("width",E.width).attr("height",E.height);const _=S.insert("g").attr("class","label"),M=o1().flowchart.htmlLabels?E.labelData.width/2:0;_.attr("transform",`translate(${E.labels[0].x+i+E.x+M}, ${E.labels[0].y+a+E.y+3})`),_.node().appendChild(E.labelData.labelNode),Kt.info("Id (UGH)= ",E.type,E.labels)}else Kt.info("Id (UGH)= ",E.id),E.el.attr("transform",`translate(${E.x+i+E.width/2}, ${E.y+a+E.height/2})`)}),f.forEach(function(E){E&&E.type==="group"&&LHt(i+E.x,a+E.y,E.children,g,w,v,b+1)})},_tn={getClasses:ktn,draw:Stn},Atn=i=>{let a="";for(let f=0;f<5;f++)a+=`
1408 .edgeLabel {
1706 .edgeLabel {