Lines Matching refs:some

79 `).replace(/<(\w+)([^>]*)>/g,(a,f,g)=>"<"+f+g.replace(/="([^"]*)"/g,"='$1'")+">"),qBe=i=>{const{text:a,metadata:f}=$Be(i),{displayMode:g,title:w,config:v={}}=f;return g&&(v.gantt||(v.gantt={}),v.gantt.displayMode=g),{title:w,config:v,text:a}},HBe=i=>{const a=uo.detectInit(i)??{},f=uo.detectDirective(i,"wrap");return Array.isArray(f)?a.wrap=f.some(({type:g})=>{}):(f==null?void 0:f.type)==="wrap"&&(a.wrap=!0),{text:uNe(i),directive:a}};function KBt(i){const a=zBe(i),f=qBe(a),g=HBe(f.text),w=MF(f.config,g.directive);return i=XPe(g.text),{code:i,title:f.title,config:w}}const VBe=5e4,UBe="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",GBe="sandbox",KBe="loose",WBe="http://www.w3.org/2000/svg",YBe="http://www.w3.org/1999/xlink",XBe="http://www.w3.org/1999/xhtml",QBe="100%",JBe="100%",ZBe="border:0;margin:0;",tRe="margin:0",eRe="allow-top-navigation-by-user-activation allow-popups",nRe='The "iframe" tag is not supported by your browser.',rRe=["foreignobject"],iRe=["dominant-baseline"];function WBt(i){const a=KBt(i);return wY(),HNe(a.config??{}),a}async function sRe(i,a){Rgt(),i=WBt(i).code;try{await Ygt(i)}catch(f){if(a!=null&&a.suppressErrors)return!1;throw f}return!0}const YBt=(i,a,f=[])=>`

112 `).forEach((_,M)=>{M!==0&&(w++,g.push([])),_.split(" ").forEach(F=>{F&&g[w].push({content:F,type:E})})}):(b.type==="strong"||b.type==="emphasis")&&b.children.forEach(S=>{v(S,b.type)})}return f.forEach(b=>{b.type==="paragraph"&&b.children.forEach(E=>{v(E)})}),g}function xKe(i){const{children:a}=G$t(i);function f(g){return g.type==="text"?g.value.replace(/\n/g,"<br/>"):g.type==="strong"?`<strong>${g.children.map(f).join("")}</strong>`:g.type==="emphasis"?`<em>${g.children.map(f).join("")}</em>`:g.type==="paragraph"?`<p>${g.children.map(f).join("")}</p>`:`Unsupported markdown: ${g.type}`}return a.map(f).join("")}function kKe(i){return Intl.Segmenter?[...new Intl.Segmenter().segment(i)].map(a=>a.segment):[...i]}function EKe(i,a){const f=kKe(a.content);return Y$t(i,[],f,a.type)}function Y$t(i,a,f,g){if(f.length===0)return[{content:a.join(""),type:g},{content:"",type:g}];const[w,...v]=f,b=[...a,w];return i([{content:b.join(""),type:g}])?Y$t(i,b,v,g):(a.length===0&&w&&(a.push(w),f.shift()),[{content:a.join(""),type:g},{content:f.join(""),type:g}])}function TKe(i,a){if(i.some(({content:f})=>f.includes(`
117 node : x:${i.x} y:${i.y} w:${i.width} h:${i.height}`);const g=i.x,w=i.y,v=Math.abs(g-f.x),b=i.width/2;let E=f.x<a.x?b-v:b+v;const S=i.height/2,_=Math.abs(a.y-f.y),M=Math.abs(a.x-f.x);if(Math.abs(w-a.y)*b>Math.abs(g-a.x)*S){let F=f.y<a.y?a.y-S-w:w-S-a.y;E=M*F/_;const R={x:f.x<a.x?f.x+E:f.x-M+E,y:f.y<a.y?f.y+_-F:f.y-_+F};return E===0&&(R.x=a.x,R.y=a.y),M===0&&(R.x=a.x),_===0&&(R.y=a.y),Kt.debug(`abc89 topp/bott calc, Q ${_}, q ${F}, R ${M}, r ${E}`,R),R}else{f.x<a.x?E=a.x-b-g:E=g-b-a.x;let F=_*E/M,R=f.x<a.x?f.x+M-E:f.x-M+E,B=f.y<a.y?f.y+F:f.y-F;return Kt.debug(`sides calc abc89, Q ${_}, q ${F}, R ${M}, r ${E}`,{_x:R,_y:B}),E===0&&(R=a.x,B=a.y),M===0&&(R=a.x),_===0&&(B=a.y),{x:R,y:B}}},fzt=(i,a)=>{Kt.debug("abc88 cutPathAtIntersect",i,a);let f=[],g=i[0],w=!1;return i.forEach(v=>{if(!dWe(a,v)&&!w){const b=gWe(a,g,v);let E=!1;f.forEach(S=>{E=E||S.x===b.x&&S.y===b.y}),f.some(S=>S.x===b.x&&S.y===b.y)||f.push(b),w=!0}else g=v,w||f.push(v)}),f},dzt=function(i,a,f,g,w,v,b){let E=f.points;Kt.debug("abc88 InsertEdge: edge=",f,"e=",a);let S=!1;const _=v.node(a.v);var M=v.node(a.w);M!=null&&M.intersect&&(_!=null&&_.intersect)&&(E=E.slice(1,f.points.length-1),E.unshift(_.intersect(E[0])),E.push(M.intersect(E[E.length-1]))),f.toCluster&&(Kt.debug("to cluster abc88",g[f.toCluster]),E=fzt(f.points,g[f.toCluster].node),S=!0),f.fromCluster&&(Kt.debug("from cluster abc88",g[f.fromCluster]),E=fzt(E.reverse(),g[f.fromCluster].node).reverse(),S=!0);const F=E.filter(mt=>!Number.isNaN(mt.y));let R=wF;f.curve&&(w==="graph"||w==="flowchart")&&(R=f.curve);const{x:B,y:z}=czt(f),Y=Ax().x(B).y(z).curve(R);let nt;switch(f.thickness){case"normal":nt="edge-thickness-normal";break;case"thick":nt="edge-thickness-thick";break;case"invisible":nt="edge-thickness-thick";break;default:nt=""}switch(f.pattern){case"solid":nt+=" edge-pattern-solid";break;case"dotted":nt+=" edge-pattern-dotted";break;case"dashed":nt+=" edge-pattern-dashed";break}const ot=i.append("path").attr("d",Y(F)).attr("id",f.id).attr("class"," "+nt+(f.classes?" "+f.classes:"")).attr("style",f.style);let ft="";(Re().flowchart.arrowMarkerAbsolute||Re().state.arrowMarkerAbsolute)&&(ft=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,ft=ft.replace(/\(/g,"\\("),ft=ft.replace(/\)/g,"\\)")),uzt(ot,f,ft,b,w);let wt={};return S&&(wt.updatedPath=E),wt.originalPath=f.points,wt},gzt=async(i,a,f,g,w,v)=>{Kt.info("Graph in recursive render: XXX",jx(a),w);const b=a.graph().rankdir;Kt.trace("Dir in recursive render - dir:",b);const E=i.insert("g").attr("class","root");a.nodes()?Kt.info("Recursive render XXX",a.nodes()):Kt.info("No nodes found for",a),a.edges().length>0&&Kt.trace("Recursive edges",a.edge(a.edges()[0]));const S=E.insert("g").attr("class","clusters"),_=E.insert("g").attr("class","edgePaths"),M=E.insert("g").attr("class","edgeLabels"),F=E.insert("g").attr("class","nodes");await Promise.all(a.nodes().map(async function(z){const Y=a.node(z);if(w!==void 0){const nt=JSON.parse(JSON.stringify(w.clusterData));Kt.info("Setting data for cluster XXX (",z,") ",nt,w),a.setNode(w.id,nt),a.parent(z)||(Kt.trace("Setting parent",z,w.id),a.setParent(z,w.id,nt))}if(Kt.info("(Insert) Node XXX"+z+": "+JSON.stringify(a.node(z))),Y&&Y.clusterNode){Kt.info("Cluster identified",z,Y.width,a.node(z));const nt=await gzt(F,Y.graph,f,g,a.node(z),v),ot=nt.elem;xh(Y,ot),Y.diff=nt.diff||0,Kt.info("Node bounds (abc123)",z,Y,Y.width,Y.x,Y.y),aWe(ot,Y),Kt.warn("Recursive render complete ",ot,Y)}else a.children(z).length>0?(Kt.info("Cluster - the non recursive path XXX",z,Y.id,Y,a),Kt.info(tB(Y.id,a)),ho[Y.id]={id:tB(Y.id,a),node:Y}):(Kt.info("Node - the non recursive path",z,Y.id,Y),await nX(F,a.node(z),b))})),a.edges().forEach(function(z){const Y=a.edge(z.v,z.w,z.name);Kt.info("Edge "+z.v+" -> "+z.w+": "+JSON.stringify(z)),Kt.info("Edge "+z.v+" -> "+z.w+": ",z," ",JSON.stringify(a.edge(z))),Kt.info("Fix",ho,"ids:",z.v,z.w,"Translateing: ",ho[z.v],ho[z.w]),tbt(M,Y)}),a.edges().forEach(function(z){Kt.info("Edge "+z.v+" -> "+z.w+": "+JSON.stringify(z))}),Kt.info("#############################################"),Kt.info("### Layout ###"),Kt.info("#############################################"),Kt.info(a),kD(a),Kt.info("Graph after layout:",jx(a));let R=0;const{subGraphTitleTotalMargin:B}=rX(v);return OKe(a).forEach(function(z){const Y=a.node(z);Kt.info("Position "+z+": "+JSON.stringify(a.node(z))),Kt.info("Position "+z+": ("+Y.x,","+Y.y,") width: ",Y.width," height: ",Y.height),Y&&Y.clusterNode?(Y.y+=B,Zpt(Y)):a.children(z).length>0?(Y.height+=B,uWe(S,Y),ho[Y.id].node=Y):(Y.y+=B/2,Zpt(Y))}),a.edges().forEach(function(z){const Y=a.edge(z);Kt.info("Edge "+z.v+" -> "+z.w+": "+JSON.stringify(Y),Y),Y.points.forEach(ot=>ot.y+=B/2);const nt=dzt(_,z,Y,ho,f,a,g);hzt(Y,nt)}),a.nodes().forEach(function(z){const Y=a.node(z);Kt.info(z,Y.type,Y.diff),Y.type==="group"&&(R=Y.diff)}),{elem:E,diff:R}},ebt=async(i,a,f,g,w)=>{jpt(i,f,g,w),oWe(),fWe(),lWe(),DKe(),Kt.warn("Graph at first:",JSON.stringify(jx(a))),IKe(a),Kt.warn("Graph after:",JSON.stringify(jx(a)));const v=Re();await gzt(i,a,g,w,void 0,v)},pzt={},pWe=function(i){const a=Object.keys(i);for(const f of a)pzt[f]=i[f]},bzt=function(i,a,f,g,w,v){const b=g.select(`[id="${f}"]`);Object.keys(i).forEach(function(S){const _=i[S];let M="default";_.classes.length>0&&(M=_.classes.join(" ")),M=M+" flowchart-label";const F=C2(_.styles);let R=_.text!==void 0?_.text:_.id,B;if(Kt.info("vertex",_,_.labelType),_.labelType==="markdown")Kt.info("vertex",_,_.labelType);else if(j1(Re().flowchart.htmlLabels)){const nt={label:R.replace(/fa[blrs]?:fa-[\w-]+/g,ot=>`<i class='${ot.replace(":"," ")}'></i>`)};B=Mpt(b,nt).node(),B.parentNode.removeChild(B)}else{const nt=w.createElementNS("http://www.w3.org/2000/svg","text");nt.setAttribute("style",F.labelStyle.replace("color:","fill:"));const ot=R.split(ei.lineBreakRegex);for(const ft of ot){const wt=w.createElementNS("http://www.w3.org/2000/svg","tspan");wt.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),wt.setAttribute("dy","1em"),wt.setAttribute("x","1"),wt.textContent=ft,nt.appendChild(wt)}B=nt}let z=0,Y="";switch(_.type){case"round":z=5,Y="rect";break;case"square":Y="rect";break;case"diamond":Y="question";break;case"hexagon":Y="hexagon";break;case"odd":Y="rect_left_inv_arrow";break;case"lean_right":Y="lean_right";break;case"lean_left":Y="lean_left";break;case"trapezoid":Y="trapezoid";break;case"inv_trapezoid":Y="inv_trapezoid";break;case"odd_right":Y="rect_left_inv_arrow";break;case"circle":Y="circle";break;case"ellipse":Y="ellipse";break;case"stadium":Y="stadium";break;case"subroutine":Y="subroutine";break;case"cylinder":Y="cylinder";break;case"group":Y="rect";break;case"doublecircle":Y="doublecircle";break;default:Y="rect"}a.setNode(_.id,{labelStyle:F.labelStyle,shape:Y,labelText:R,labelType:_.labelType,rx:z,ry:z,class:M,style:F.style,id:_.id,link:_.link,linkTarget:_.linkTarget,tooltip:v.db.getTooltip(_.id)||"",domId:v.db.lookUpDomId(_.id),haveCallback:_.haveCallback,width:_.type==="group"?500:void 0,dir:_.dir,type:_.type,props:_.props,padding:Re().flowchart.padding}),Kt.info("setNode",{labelStyle:F.labelStyle,labelType:_.labelType,shape:Y,labelText:R,rx:z,ry:z,class:M,style:F.style,id:_.id,domId:v.db.lookUpDomId(_.id),width:_.type==="group"?500:void 0,type:_.type,dir:_.dir,props:_.props,padding:Re().flowchart.padding})})},wzt=function(i,a,f){Kt.info("abc78 edges = ",i);let g=0,w={},v,b;if(i.defaultStyle!==void 0){const E=C2(i.defaultStyle);v=E.style,b=E.labelStyle}i.forEach(function(E){g++;const S="L-"+E.start+"-"+E.end;w[S]===void 0?(w[S]=0,Kt.info("abc78 new entry",S,w[S])):(w[S]++,Kt.info("abc78 new entry",S,w[S]));let _=S+"-"+w[S];Kt.info("abc78 new link id to be used is",S,_,w[S]);const M="LS-"+E.start,F="LE-"+E.end,R={style:"",labelStyle:""};switch(R.minlen=E.length||1,E.type==="arrow_open"?R.arrowhead="none":R.arrowhead="normal",R.arrowTypeStart="arrow_open",R.arrowTypeEnd="arrow_open",E.type){case"double_arrow_cross":R.arrowTypeStart="arrow_cross";case"arrow_cross":R.arrowTypeEnd="arrow_cross";break;case"double_arrow_point":R.arrowTypeStart="arrow_point";case"arrow_point":R.arrowTypeEnd="arrow_point";break;case"double_arrow_circle":R.arrowTypeStart="arrow_circle";case"arrow_circle":R.arrowTypeEnd="arrow_circle";break}let B="",z="";switch(E.stroke){case"normal":B="fill:none;",v!==void 0&&(B=v),b!==void 0&&(z=b),R.thickness="normal",R.pattern="solid";break;case"dotted":R.thickness="normal",R.pattern="dotted",R.style="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":R.thickness="thick",R.pattern="solid",R.style="stroke-width: 3.5px;fill:none;";break;case"invisible":R.thickness="invisible",R.pattern="solid",R.style="stroke-width: 0;fill:none;";break}if(E.style!==void 0){const Y=C2(E.style);B=Y.style,z=Y.labelStyle}R.style=R.style+=B,R.labelStyle=R.labelStyle+=z,E.interpolate!==void 0?R.curve=Xw(E.interpolate,Kg):i.defaultInterpolate!==void 0?R.curve=Xw(i.defaultInterpolate,Kg):R.curve=Xw(pzt.curve,Kg),E.text===void 0?E.style!==void 0&&(R.arrowheadStyle="fill: #333"):(R.arrowheadStyle="fill: #333",R.labelpos="c"),R.labelType=E.labelType,R.label=E.text.replace(ei.lineBreakRegex,`
293 ${nt+M},${b+it+2}`).attr("transform","translate(12,12) rotate(45, "+nt+","+b+")"),mt.attr("cx",nt+4/2).attr("cy",b).attr("transform","translate(12,12) rotate(45, "+nt+","+b+")"),ct.attr("x",nt+5).attr("y",b+3).attr("transform","translate(14,14) rotate(45, "+nt+","+b+")"))}}b+=F+M,b>sB&&(sB=b)})},fYe=(i,a,f,g,w)=>{const b=(f1==="TB"?f.x<g.x:f.y<g.y)?a.branch:i.branch,E=_=>_.branch===b,S=_=>_.seq>i.seq&&_.seq<a.seq;return Object.values(w).some(_=>S(_)&&E(_))},aB=(i,a,f=0)=>{const g=i+Math.abs(i-a)/2;if(f>5)return g;if(uX.every(b=>Math.abs(b-g)>=10))return uX.push(g),g;const v=Math.abs(i-a);return aB(i,a-v/5,f+1)},dYe=(i,a,f,g)=>{const w=$x[a.id],v=$x[f.id],b=fYe(a,f,w,v,g);let E="",S="",_=0,M=0,F=Cf[f.branch].index,R;if(b){E="A 10 10, 0, 0, 0,",S="A 10 10, 0, 0, 1,",_=10,M=10;const B=w.y<v.y?aB(w.y,v.y):aB(v.y,w.y),z=w.x<v.x?aB(w.x,v.x):aB(v.x,w.x);f1==="TB"?w.x<v.x?(F=Cf[f.branch].index,R=`M ${w.x} ${w.y} L ${z-_} ${w.y} ${S} ${z} ${w.y+M} L ${z} ${v.y-_} ${E} ${z+M} ${v.y} L ${v.x} ${v.y}`):(F=Cf[a.branch].index,R=`M ${w.x} ${w.y} L ${z+_} ${w.y} ${E} ${z} ${w.y+M} L ${z} ${v.y-_} ${S} ${z-M} ${v.y} L ${v.x} ${v.y}`):w.y<v.y?(F=Cf[f.branch].index,R=`M ${w.x} ${w.y} L ${w.x} ${B-_} ${E} ${w.x+M} ${B} L ${v.x-_} ${B} ${S} ${v.x} ${B+M} L ${v.x} ${v.y}`):(F=Cf[a.branch].index,R=`M ${w.x} ${w.y} L ${w.x} ${B+_} ${S} ${w.x+M} ${B} L ${v.x-_} ${B} ${E} ${v.x} ${B-M} L ${v.x} ${v.y}`)}else f1==="TB"?(w.x<v.x&&(E="A 20 20, 0, 0, 0,",S="A 20 20, 0, 0, 1,",_=20,M=20,F=Cf[f.branch].index,R=`M ${w.x} ${w.y} L ${v.x-_} ${w.y} ${S} ${v.x} ${w.y+M} L ${v.x} ${v.y}`),w.x>v.x&&(E="A 20 20, 0, 0, 0,",S="A 20 20, 0, 0, 1,",_=20,M=20,F=Cf[a.branch].index,R=`M ${w.x} ${w.y} L ${w.x} ${v.y-_} ${S} ${w.x-M} ${v.y} L ${v.x} ${v.y}`),w.x===v.x&&(F=Cf[a.branch].index,R=`M ${w.x} ${w.y} L ${w.x+_} ${w.y} ${E} ${w.x+M} ${v.y+_} L ${v.x} ${v.y}`)):(w.y<v.y&&(E="A 20 20, 0, 0, 0,",_=20,M=20,F=Cf[f.branch].index,R=`M ${w.x} ${w.y} L ${w.x} ${v.y-_} ${E} ${w.x+M} ${v.y} L ${v.x} ${v.y}`),w.y>v.y&&(E="A 20 20, 0, 0, 0,",_=20,M=20,F=Cf[a.branch].index,R=`M ${w.x} ${w.y} L ${v.x-_} ${w.y} ${E} ${v.x} ${w.y-M} L ${v.x} ${v.y}`),w.y===v.y&&(F=Cf[a.branch].index,R=`M ${w.x} ${w.y} L ${w.x} ${v.y-_} ${E} ${w.x+M} ${v.y} L ${v.x} ${v.y}`));i.append("path").attr("d",R).attr("class","arrow arrow"+F%P9)},gYe=(i,a)=>{const f=i.append("g").attr("class","commit-arrows");Object.keys(a).forEach(g=>{const w=a[g];w.parents&&w.parents.length>0&&w.parents.forEach(v=>{dYe(f,a[v],w,a)})})},pYe=(i,a)=>{const f=Re().gitGraph,g=i.append("g");a.forEach((w,v)=>{const b=v%P9,E=Cf[w.name].pos,S=g.append("line");S.attr("x1",0),S.attr("y1",E),S.attr("x2",sB),S.attr("y2",E),S.attr("class","branch branch"+b),f1==="TB"&&(S.attr("y1",30),S.attr("x1",E),S.attr("y2",sB),S.attr("x2",E)),uX.push(E);let _=w.name;const M=Lzt(_),F=g.insert("rect"),B=g.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+b);B.node().appendChild(M);let z=M.getBBox();F.attr("class","branchLabelBkg label"+b).attr("rx",4).attr("ry",4).attr("x",-z.width-4-(f.rotateCommitLabel===!0?30:0)).attr("y",-z.height/2+8).attr("width",z.width+18).attr("height",z.height+4),B.attr("transform","translate("+(-z.width-14-(f.rotateCommitLabel===!0?30:0))+", "+(E-z.height/2-1)+")"),f1==="TB"&&(F.attr("x",E-z.width/2-10).attr("y",0),B.attr("transform","translate("+(E-z.width/2-5)+", 0)")),f1!=="TB"&&F.attr("transform","translate(-19, "+(E-z.height/2)+")")})},bYe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:UWe,db:uYe,renderer:{draw:function(i,a,f,g){lYe();const w=Re(),v=w.gitGraph;Kt.debug("in gitgraph renderer",i+`
652 `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var xt=this.next();return xt||this.lex()},begin:function(xt){this.conditionStack.push(xt)},popState:function(){var xt=this.conditionStack.length-1;return xt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(xt){return xt=this.conditionStack.length-1-Math.abs(xt||0),xt>=0?this.conditionStack[xt]:"INITIAL"},pushState:function(xt){this.begin(xt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(xt,Ft,Ct,kt){switch(Ct){case 0:break;case 1:break;case 2:return this.popState(),34;case 3:return this.popState(),34;case 4:return 34;case 5:break;case 6:return 10;case 7:return this.pushState("acc_title"),19;case 8:return this.popState(),"acc_title_value";case 9:return this.pushState("acc_descr"),21;case 10:return this.popState(),"acc_descr_value";case 11:this.pushState("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 5;case 15:return 8;case 16:return this.pushState("axis_data"),"X_AXIS";case 17:return this.pushState("axis_data"),"Y_AXIS";case 18:return this.pushState("axis_band_data"),24;case 19:return 31;case 20:return this.pushState("data"),16;case 21:return this.pushState("data"),18;case 22:return this.pushState("data_inner"),24;case 23:return 27;case 24:return this.popState(),26;case 25:this.popState();break;case 26:this.pushState("string");break;case 27:this.popState();break;case 28:return"STR";case 29:return 24;case 30:return 26;case 31:return 43;case 32:return"COLON";case 33:return 44;case 34:return 28;case 35:return 45;case 36:return 46;case 37:return 48;case 38:return 50;case 39:return 47;case 40:return 41;case 41:return 49;case 42:return 42;case 43:break;case 44:return 35;case 45:return 36}},rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:(\r?\n))/i,/^(?:(\r?\n))/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:\{)/i,/^(?:[^\}]*)/i,/^(?:xychart-beta\b)/i,/^(?:(?:vertical|horizontal))/i,/^(?:x-axis\b)/i,/^(?:y-axis\b)/i,/^(?:\[)/i,/^(?:-->)/i,/^(?:line\b)/i,/^(?:bar\b)/i,/^(?:\[)/i,/^(?:[+-]?(?:\d+(?:\.\d+)?|\.\d+))/i,/^(?:\])/i,/^(?:(?:`\) \{ this\.pushState\(md_string\); \}\n<md_string>\(\?:\(\?!`"\)\.\)\+ \{ return MD_STR; \}\n<md_string>\(\?:`))/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s+)/i,/^(?:;)/i,/^(?:$)/i],conditions:{data_inner:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,23,24,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},data:{rules:[0,1,3,4,5,6,7,9,11,14,15,16,17,20,21,22,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},axis_band_data:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,24,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},axis_data:{rules:[0,1,2,4,5,6,7,9,11,14,15,16,17,18,19,20,21,23,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},title:{rules:[],inclusive:!1},md_string:{rules:[],inclusive:!1},string:{rules:[27,28],inclusive:!1},INITIAL:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0}}};return It}();yt.lexer=V;function Ot(){this.yy={}}return Ot.prototype=yt,yt.Parser=Ot,new Ot}();Sbt.parser=Sbt;const DXe=Sbt;function Kzt(i){return i.type==="bar"}function Wzt(i){return i.type==="band"}function lB(i){return i.type==="linear"}class Yzt{constructor(a){this.parentGroup=a}getMaxDimension(a,f){if(!this.parentGroup)return{width:a.reduce((v,b)=>Math.max(b.length,v),0)*f,height:f};const g={width:0,height:0},w=this.parentGroup.append("g").attr("visibility","hidden").attr("font-size",f);for(const v of a){const b=AKe(w,1,v),E=b?b.width:v.length*f,S=b?b.height:f;g.width=Math.max(g.width,E),g.height=Math.max(g.height,S)}return w.remove(),g}}const Xzt=.7,Qzt=.2;class Jzt{constructor(a,f,g,w){this.axisConfig=a,this.title=f,this.textDimensionCalculator=g,this.axisThemeConfig=w,this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left",this.showTitle=!1,this.showLabel=!1,this.showTick=!1,this.showAxisLine=!1,this.outerPadding=0,this.titleTextHeight=0,this.labelTextHeight=0,this.range=[0,10],this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left"}setRange(a){this.range=a,this.axisPosition==="left"||this.axisPosition==="right"?this.boundingRect.height=a[1]-a[0]:this.boundingRect.width=a[1]-a[0],this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(a){this.axisPosition=a,this.setRange(this.range)}getTickDistance(){const a=this.getRange();return Math.abs(a[0]-a[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map(a=>a.toString()),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){Xzt*this.getTickDistance()>this.outerPadding*2&&(this.outerPadding=Math.floor(Xzt*this.getTickDistance()/2)),this.recalculateScale()}calculateSpaceIfDrawnHorizontally(a){let f=a.height;if(this.axisConfig.showAxisLine&&f>this.axisConfig.axisLineWidth&&(f-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){const g=this.getLabelDimension(),w=Qzt*a.width;this.outerPadding=Math.min(g.width/2,w);const v=g.height+this.axisConfig.labelPadding*2;this.labelTextHeight=g.height,v<=f&&(f-=v,this.showLabel=!0)}if(this.axisConfig.showTick&&f>=this.axisConfig.tickLength&&(this.showTick=!0,f-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){const g=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),w=g.height+this.axisConfig.titlePadding*2;this.titleTextHeight=g.height,w<=f&&(f-=w,this.showTitle=!0)}this.boundingRect.width=a.width,this.boundingRect.height=a.height-f}calculateSpaceIfDrawnVertical(a){let f=a.width;if(this.axisConfig.showAxisLine&&f>this.axisConfig.axisLineWidth&&(f-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){const g=this.getLabelDimension(),w=Qzt*a.height;this.outerPadding=Math.min(g.height/2,w);const v=g.width+this.axisConfig.labelPadding*2;v<=f&&(f-=v,this.showLabel=!0)}if(this.axisConfig.showTick&&f>=this.axisConfig.tickLength&&(this.showTick=!0,f-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){const g=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),w=g.height+this.axisConfig.titlePadding*2;this.titleTextHeight=g.height,w<=f&&(f-=w,this.showTitle=!0)}this.boundingRect.width=a.width-f,this.boundingRect.height=a.height}calculateSpace(a){return this.axisPosition==="left"||this.axisPosition==="right"?this.calculateSpaceIfDrawnVertical(a):this.calculateSpaceIfDrawnHorizontally(a),this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(a){this.boundingRect.x=a.x,this.boundingRect.y=a.y}getDrawableElementsForLeftAxis(){const a=[];if(this.showAxisLine){const f=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;a.push({type:"path",groupTexts:["left-axis","axisl-line"],data:[{path:`M ${f},${this.boundingRect.y} L ${f},${this.boundingRect.y+this.boundingRect.height} `,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&a.push({type:"text",groupTexts:["left-axis","label"],data:this.getTickValues().map(f=>({text:f.toString(),x:this.boundingRect.x+this.boundingRect.width-(this.showLabel?this.axisConfig.labelPadding:0)-(this.showTick?this.axisConfig.tickLength:0)-(this.showAxisLine?this.axisConfig.axisLineWidth:0),y:this.getScaleValue(f),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"middle",horizontalPos:"right"}))}),this.showTick){const f=this.boundingRect.x+this.boundingRect.width-(this.showAxisLine?this.axisConfig.axisLineWidth:0);a.push({type:"path",groupTexts:["left-axis","ticks"],data:this.getTickValues().map(g=>({path:`M ${f},${this.getScaleValue(g)} L ${f-this.axisConfig.tickLength},${this.getScaleValue(g)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&a.push({type:"text",groupTexts:["left-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.axisConfig.titlePadding,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:270,verticalPos:"top",horizontalPos:"center"}]}),a}getDrawableElementsForBottomAxis(){const a=[];if(this.showAxisLine){const f=this.boundingRect.y+this.axisConfig.axisLineWidth/2;a.push({type:"path",groupTexts:["bottom-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${f} L ${this.boundingRect.x+this.boundingRect.width},${f}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&a.push({type:"text",groupTexts:["bottom-axis","label"],data:this.getTickValues().map(f=>({text:f.toString(),x:this.getScaleValue(f),y:this.boundingRect.y+this.axisConfig.labelPadding+(this.showTick?this.axisConfig.tickLength:0)+(this.showAxisLine?this.axisConfig.axisLineWidth:0),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}))}),this.showTick){const f=this.boundingRect.y+(this.showAxisLine?this.axisConfig.axisLineWidth:0);a.push({type:"path",groupTexts:["bottom-axis","ticks"],data:this.getTickValues().map(g=>({path:`M ${this.getScaleValue(g)},${f} L ${this.getScaleValue(g)},${f+this.axisConfig.tickLength}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&a.push({type:"text",groupTexts:["bottom-axis","title"],data:[{text:this.title,x:this.range[0]+(this.range[1]-this.range[0])/2,y:this.boundingRect.y+this.boundingRect.height-this.axisConfig.titlePadding-this.titleTextHeight,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),a}getDrawableElementsForTopAxis(){const a=[];if(this.showAxisLine){const f=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;a.push({type:"path",groupTexts:["top-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${f} L ${this.boundingRect.x+this.boundingRect.width},${f}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&a.push({type:"text",groupTexts:["top-axis","label"],data:this.getTickValues().map(f=>({text:f.toString(),x:this.getScaleValue(f),y:this.boundingRect.y+(this.showTitle?this.titleTextHeight+this.axisConfig.titlePadding*2:0)+this.axisConfig.labelPadding,fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}))}),this.showTick){const f=this.boundingRect.y;a.push({type:"path",groupTexts:["top-axis","ticks"],data:this.getTickValues().map(g=>({path:`M ${this.getScaleValue(g)},${f+this.boundingRect.height-(this.showAxisLine?this.axisConfig.axisLineWidth:0)} L ${this.getScaleValue(g)},${f+this.boundingRect.height-this.axisConfig.tickLength-(this.showAxisLine?this.axisConfig.axisLineWidth:0)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&a.push({type:"text",groupTexts:["top-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.axisConfig.titlePadding,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),a}getDrawableElements(){if(this.axisPosition==="left")return this.getDrawableElementsForLeftAxis();if(this.axisPosition==="right")throw Error("Drawing of right axis is not implemented");return this.axisPosition==="bottom"?this.getDrawableElementsForBottomAxis():this.axisPosition==="top"?this.getDrawableElementsForTopAxis():[]}}class MXe extends Jzt{constructor(a,f,g,w,v){super(a,w,v,f),this.categories=g,this.scale=V0t().domain(this.categories).range(this.getRange())}setRange(a){super.setRange(a)}recalculateScale(){this.scale=V0t().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(.5),Kt.trace("BandAxis axis final categories, range: ",this.categories,this.getRange())}getTickValues(){return this.categories}getScaleValue(a){return this.scale(a)||this.getRange()[0]}}class IXe extends Jzt{constructor(a,f,g,w,v){super(a,w,v,f),this.domain=g,this.scale=VL().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){const a=[...this.domain];this.axisPosition==="left"&&a.reverse(),this.scale=VL().domain(a).range(this.getRange())}getScaleValue(a){return this.scale(a)}}function Zzt(i,a,f,g){const w=new Yzt(g);return Wzt(i)?new MXe(a,f,i.categories,i.title,w):new IXe(a,f,[i.min,i.max],i.title,w)}class OXe{constructor(a,f,g,w){this.textDimensionCalculator=a,this.chartConfig=f,this.chartData=g,this.chartThemeConfig=w,this.boundingRect={x:0,y:0,width:0,height:0},this.showChartTitle=!1}setBoundingBoxXY(a){this.boundingRect.x=a.x,this.boundingRect.y=a.y}calculateSpace(a){const f=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),g=Math.max(f.width,a.width),w=f.height+2*this.chartConfig.titlePadding;return f.width<=g&&f.height<=w&&this.chartConfig.showTitle&&this.chartData.title&&(this.boundingRect.width=g,this.boundingRect.height=w,this.showChartTitle=!0),{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){const a=[];return this.showChartTitle&&a.push({groupTexts:["chart-title"],type:"text",data:[{fontSize:this.chartConfig.titleFontSize,text:this.chartData.title,verticalPos:"middle",horizontalPos:"center",x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.chartThemeConfig.titleColor,rotation:0}]}),a}}function NXe(i,a,f,g){const w=new Yzt(g);return new OXe(w,i,a,f)}class PXe{constructor(a,f,g,w,v){this.plotData=a,this.xAxis=f,this.yAxis=g,this.orientation=w,this.plotIndex=v}getDrawableElement(){const a=this.plotData.data.map(g=>[this.xAxis.getScaleValue(g[0]),this.yAxis.getScaleValue(g[1])]);let f;return this.orientation==="horizontal"?f=Ax().y(g=>g[0]).x(g=>g[1])(a):f=Ax().x(g=>g[0]).y(g=>g[1])(a),f?[{groupTexts:["plot",`line-plot-${this.plotIndex}`],type:"path",data:[{path:f,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}]:[]}}class FXe{constructor(a,f,g,w,v,b){this.barData=a,this.boundingRect=f,this.xAxis=g,this.yAxis=w,this.orientation=v,this.plotIndex=b}getDrawableElement(){const a=this.barData.data.map(v=>[this.xAxis.getScaleValue(v[0]),this.yAxis.getScaleValue(v[1])]),f=.05,g=Math.min(this.xAxis.getAxisOuterPadding()*2,this.xAxis.getTickDistance())*(1-f),w=g/2;return this.orientation==="horizontal"?[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:a.map(v=>({x:this.boundingRect.x,y:v[0]-w,height:g,width:v[1]-this.boundingRect.x,fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]:[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:a.map(v=>({x:v[0]-w,y:v[1],width:g,height:this.boundingRect.y+this.boundingRect.height-v[1],fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]}}class BXe{constructor(a,f,g){this.chartConfig=a,this.chartData=f,this.chartThemeConfig=g,this.boundingRect={x:0,y:0,width:0,height:0}}setAxes(a,f){this.xAxis=a,this.yAxis=f}setBoundingBoxXY(a){this.boundingRect.x=a.x,this.boundingRect.y=a.y}calculateSpace(a){return this.boundingRect.width=a.width,this.boundingRect.height=a.height,{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){if(!(this.xAxis&&this.yAxis))throw Error("Axes must be passed to render Plots");const a=[];for(const[f,g]of this.chartData.plots.entries())switch(g.type){case"line":{const w=new PXe(g,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,f);a.push(...w.getDrawableElement())}break;case"bar":{const w=new FXe(g,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,f);a.push(...w.getDrawableElement())}break}return a}}function RXe(i,a,f){return new BXe(i,a,f)}class jXe{constructor(a,f,g,w){this.chartConfig=a,this.chartData=f,this.componentStore={title:NXe(a,f,g,w),plot:RXe(a,f,g),xAxis:Zzt(f.xAxis,a.xAxis,{titleColor:g.xAxisTitleColor,labelColor:g.xAxisLabelColor,tickColor:g.xAxisTickColor,axisLineColor:g.xAxisLineColor},w),yAxis:Zzt(f.yAxis,a.yAxis,{titleColor:g.yAxisTitleColor,labelColor:g.yAxisLabelColor,tickColor:g.yAxisTickColor,axisLineColor:g.yAxisLineColor},w)}}calculateVerticalSpace(){let a=this.chartConfig.width,f=this.chartConfig.height,g=0,w=0,v=Math.floor(a*this.chartConfig.plotReservedSpacePercent/100),b=Math.floor(f*this.chartConfig.plotReservedSpacePercent/100),E=this.componentStore.plot.calculateSpace({width:v,height:b});a-=E.width,f-=E.height,E=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:f}),w=E.height,f-=E.height,this.componentStore.xAxis.setAxisPosition("bottom"),E=this.componentStore.xAxis.calculateSpace({width:a,height:f}),f-=E.height,this.componentStore.yAxis.setAxisPosition("left"),E=this.componentStore.yAxis.calculateSpace({width:a,height:f}),g=E.width,a-=E.width,a>0&&(v+=a,a=0),f>0&&(b+=f,f=0),this.componentStore.plot.calculateSpace({width:v,height:b}),this.componentStore.plot.setBoundingBoxXY({x:g,y:w}),this.componentStore.xAxis.setRange([g,g+v]),this.componentStore.xAxis.setBoundingBoxXY({x:g,y:w+b}),this.componentStore.yAxis.setRange([w,w+b]),this.componentStore.yAxis.setBoundingBoxXY({x:0,y:w}),this.chartData.plots.some(S=>Kzt(S))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizonatalSpace(){let a=this.chartConfig.width,f=this.chartConfig.height,g=0,w=0,v=0,b=Math.floor(a*this.chartConfig.plotReservedSpacePercent/100),E=Math.floor(f*this.chartConfig.plotReservedSpacePercent/100),S=this.componentStore.plot.calculateSpace({width:b,height:E});a-=S.width,f-=S.height,S=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:f}),g=S.height,f-=S.height,this.componentStore.xAxis.setAxisPosition("left"),S=this.componentStore.xAxis.calculateSpace({width:a,height:f}),a-=S.width,w=S.width,this.componentStore.yAxis.setAxisPosition("top"),S=this.componentStore.yAxis.calculateSpace({width:a,height:f}),f-=S.height,v=g+S.height,a>0&&(b+=a,a=0),f>0&&(E+=f,f=0),this.componentStore.plot.calculateSpace({width:b,height:E}),this.componentStore.plot.setBoundingBoxXY({x:w,y:v}),this.componentStore.yAxis.setRange([w,w+b]),this.componentStore.yAxis.setBoundingBoxXY({x:w,y:g}),this.componentStore.xAxis.setRange([v,v+E]),this.componentStore.xAxis.setBoundingBoxXY({x:0,y:v}),this.chartData.plots.some(_=>Kzt(_))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){this.chartConfig.chartOrientation==="horizontal"?this.calculateHorizonatalSpace():this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();const a=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(const f of Object.values(this.componentStore))a.push(...f.getDrawableElements());return a}}class $Xe{static build(a,f,g,w){return new jXe(a,f,g,w).getDrawableElement()}}let hB=0,tqt,fB=nqt(),dB=eqt(),Pu=rqt(),_bt=dB.plotColorPalette.split(",").map(i=>i.trim()),pX=!1,Abt=!1;function eqt(){const i=dgt(),a=o1();return MF(i.xyChart,a.themeVariables.xyChart)}function nqt(){const i=o1();return MF(Bl.xyChart,i.xyChart)}function rqt(){return{yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]}}function Lbt(i){const a=o1();return Ef(i.trim(),a)}function zXe(i){tqt=i}function qXe(i){i==="horizontal"?fB.chartOrientation="horizontal":fB.chartOrientation="vertical"}function HXe(i){Pu.xAxis.title=Lbt(i.text)}function iqt(i,a){Pu.xAxis={type:"linear",title:Pu.xAxis.title,min:i,max:a},pX=!0}function VXe(i){Pu.xAxis={type:"band",title:Pu.xAxis.title,categories:i.map(a=>Lbt(a.text))},pX=!0}function UXe(i){Pu.yAxis.title=Lbt(i.text)}function GXe(i,a){Pu.yAxis={type:"linear",title:Pu.yAxis.title,min:i,max:a},Abt=!0}function KXe(i){const a=Math.min(...i),f=Math.max(...i),g=lB(Pu.yAxis)?Pu.yAxis.min:1/0,w=lB(Pu.yAxis)?Pu.yAxis.max:-1/0;Pu.yAxis={type:"linear",title:Pu.yAxis.title,min:Math.min(g,a),max:Math.max(w,f)}}function sqt(i){let a=[];if(i.length===0)return a;if(!pX){const f=lB(Pu.xAxis)?Pu.xAxis.min:1/0,g=lB(Pu.xAxis)?Pu.xAxis.max:-1/0;iqt(Math.min(f,1),Math.max(g,i.length))}if(Abt||KXe(i),Wzt(Pu.xAxis)&&(a=Pu.xAxis.categories.map((f,g)=>[f,i[g]])),lB(Pu.xAxis)){const f=Pu.xAxis.min,g=Pu.xAxis.max,w=(g-f+1)/i.length,v=[];for(let b=f;b<=g;b+=w)v.push(`${b}`);a=v.map((b,E)=>[b,i[E]])}return a}function aqt(i){return _bt[i===0?0:i%_bt.length]}function WXe(i,a){const f=sqt(a);Pu.plots.push({type:"line",strokeFill:aqt(hB),strokeWidth:2,data:f}),hB++}function YXe(i,a){const f=sqt(a);Pu.plots.push({type:"bar",fill:aqt(hB),data:f}),hB++}function XXe(){if(Pu.plots.length===0)throw Error("No Plot to render, please provide a plot with some data");return Pu.title=Zg(),$Xe.build(fB,Pu,dB,tqt)}function QXe(){return dB}function JXe(){return fB}const ZXe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:DXe,db:{getDrawableElem:XXe,clear:function(){ag(),hB=0,fB=nqt(),Pu=rqt(),dB=eqt(),_bt=dB.plotColorPalette.split(",").map(i=>i.trim()),pX=!1,Abt=!1},setAccTitle:og,getAccTitle:Xg,setDiagramTitle:S2,getDiagramTitle:Zg,getAccDescription:Jg,setAccDescription:Qg,setOrientation:qXe,setXAxisTitle:HXe,setXAxisRangeData:iqt,setXAxisBand:VXe,setYAxisTitle:UXe,setYAxisRangeData:GXe,setLineData:WXe,setBarData:YXe,setTmpSVGG:zXe,getChartThemeConfig:QXe,getChartConfig:JXe},renderer:{draw:(i,a,f,g)=>{const w=g.db,v=w.getChartThemeConfig(),b=w.getChartConfig();function E(nt){return nt==="top"?"text-before-edge":"middle"}function S(nt){return nt==="left"?"start":nt==="right"?"end":"middle"}function _(nt){return`translate(${nt.x}, ${nt.y}) rotate(${nt.rotation||0})`}Kt.debug(`Rendering xychart chart
709 `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Xt=this.next();return Xt||this.lex()},begin:function(Xt){this.conditionStack.push(Xt)},popState:function(){var Xt=this.conditionStack.length-1;return Xt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(Xt){return Xt=this.conditionStack.length-1-Math.abs(Xt||0),Xt>=0?this.conditionStack[Xt]:"INITIAL"},pushState:function(Xt){this.begin(Xt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Xt,_e,xe,Mn){switch(xe){case 0:return 5;case 1:break;case 2:break;case 3:break;case 4:break;case 5:break;case 6:return 19;case 7:return this.begin("LINE"),14;case 8:return this.begin("ID"),50;case 9:return this.begin("ID"),52;case 10:return 13;case 11:return this.begin("ID"),53;case 12:return _e.yytext=_e.yytext.trim(),this.begin("ALIAS"),70;case 13:return this.popState(),this.popState(),this.begin("LINE"),51;case 14:return this.popState(),this.popState(),5;case 15:return this.begin("LINE"),36;case 16:return this.begin("LINE"),37;case 17:return this.begin("LINE"),38;case 18:return this.begin("LINE"),39;case 19:return this.begin("LINE"),49;case 20:return this.begin("LINE"),41;case 21:return this.begin("LINE"),43;case 22:return this.begin("LINE"),48;case 23:return this.begin("LINE"),44;case 24:return this.begin("LINE"),47;case 25:return this.begin("LINE"),46;case 26:return this.popState(),15;case 27:return 16;case 28:return 65;case 29:return 66;case 30:return 59;case 31:return 60;case 32:return 61;case 33:return 62;case 34:return 57;case 35:return 54;case 36:return this.begin("ID"),21;case 37:return this.begin("ID"),23;case 38:return 29;case 39:return 30;case 40:return this.begin("acc_title"),31;case 41:return this.popState(),"acc_title_value";case 42:return this.begin("acc_descr"),33;case 43:return this.popState(),"acc_descr_value";case 44:this.begin("acc_descr_multiline");break;case 45:this.popState();break;case 46:return"acc_descr_multiline_value";case 47:return 6;case 48:return 18;case 49:return 20;case 50:return 64;case 51:return 5;case 52:return _e.yytext=_e.yytext.trim(),70;case 53:return 73;case 54:return 74;case 55:return 71;case 56:return 72;case 57:return 75;case 58:return 76;case 59:return 77;case 60:return 78;case 61:return 79;case 62:return 68;case 63:return 69;case 64:return 5;case 65:return"INVALID"}},rules:[/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[0-9]+(?=[ \n]+))/i,/^(?:box\b)/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:create\b)/i,/^(?:destroy\b)/i,/^(?:[^\->:\n,;]+?([\-]*[^\->:\n,;]+?)*?(?=((?!\n)\s)+as(?!\n)\s|[#\n;]|$))/i,/^(?:as\b)/i,/^(?:(?:))/i,/^(?:loop\b)/i,/^(?:rect\b)/i,/^(?:opt\b)/i,/^(?:alt\b)/i,/^(?:else\b)/i,/^(?:par\b)/i,/^(?:par_over\b)/i,/^(?:and\b)/i,/^(?:critical\b)/i,/^(?:option\b)/i,/^(?:break\b)/i,/^(?:(?:[:]?(?:no)?wrap)?[^#\n;]*)/i,/^(?:end\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:links\b)/i,/^(?:link\b)/i,/^(?:properties\b)/i,/^(?:details\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:activate\b)/i,/^(?:deactivate\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:title:\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:sequenceDiagram\b)/i,/^(?:autonumber\b)/i,/^(?:off\b)/i,/^(?:,)/i,/^(?:;)/i,/^(?:[^\+\->:\n,;]+((?!(-x|--x|-\)|--\)))[\-]*[^\+\->:\n,;]+)*)/i,/^(?:->>)/i,/^(?:-->>)/i,/^(?:->)/i,/^(?:-->)/i,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[\)])/i,/^(?:--[\)])/i,/^(?::(?:(?:no)?wrap)?[^#\n;]+)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[45,46],inclusive:!1},acc_descr:{rules:[43],inclusive:!1},acc_title:{rules:[41],inclusive:!1},ID:{rules:[2,3,12],inclusive:!1},ALIAS:{rules:[2,3,13,14],inclusive:!1},LINE:{rules:[2,3,26],inclusive:!1},INITIAL:{rules:[0,1,3,4,5,6,7,8,9,10,11,15,16,17,18,19,20,21,22,23,24,25,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42,44,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65],inclusive:!0}}};return be}();ye.lexer=tn;function sn(){this.yy={}}return sn.prototype=ye,ye.Parser=sn,new sn}();Obt.parser=Obt;const lQe=Obt;class hQe{constructor(a){this.init=a,this.records=this.init()}reset(){this.records=this.init()}}const ws=new hQe(()=>({prevActor:void 0,actors:{},createdActors:{},destroyedActors:{},boxes:[],messages:[],notes:[],sequenceNumbersEnabled:!1,wrapEnabled:void 0,currentBox:void 0,lastCreated:void 0,lastDestroyed:void 0})),fQe=function(i){ws.records.boxes.push({name:i.text,wrap:i.wrap===void 0&&F9()||!!i.wrap,fill:i.color,actorKeys:[]}),ws.records.currentBox=ws.records.boxes.slice(-1)[0]},Nbt=function(i,a,f,g){let w=ws.records.currentBox;const v=ws.records.actors[i];if(v){if(ws.records.currentBox&&v.box&&ws.records.currentBox!==v.box)throw new Error("A same participant should only be defined in one Box: "+v.name+" can't be in '"+v.box.name+"' and in '"+ws.records.currentBox.name+"' at the same time.");if(w=v.box?v.box:ws.records.currentBox,v.box=w,v&&a===v.name&&f==null)return}(f==null||f.text==null)&&(f={text:a,wrap:null,type:g}),(g==null||f.text==null)&&(f={text:a,wrap:null,type:g}),ws.records.actors[i]={box:w,name:a,description:f.text,wrap:f.wrap===void 0&&F9()||!!f.wrap,prevActor:ws.records.prevActor,links:{},properties:{},actorCnt:null,rectData:null,type:g||"participant"},ws.records.prevActor&&ws.records.actors[ws.records.prevActor]&&(ws.records.actors[ws.records.prevActor].nextActor=i),ws.records.currentBox&&ws.records.currentBox.actorKeys.push(i),ws.records.prevActor=i},dQe=i=>{let a,f=0;for(a=0;a<ws.records.messages.length;a++)ws.records.messages[a].type===wB.ACTIVE_START&&ws.records.messages[a].from.actor===i&&f++,ws.records.messages[a].type===wB.ACTIVE_END&&ws.records.messages[a].from.actor===i&&f--;return f},gQe=function(i,a,f,g){ws.records.messages.push({from:i,to:a,message:f.text,wrap:f.wrap===void 0&&F9()||!!f.wrap,answer:g})},Sf=function(i,a,f={text:void 0,wrap:void 0},g,w=!1){if(g===wB.ACTIVE_END&&dQe(i.actor)<1){let b=new Error("Trying to inactivate an inactive participant ("+i.actor+")");throw b.hash={text:"->>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},b}return ws.records.messages.push({from:i,to:a,message:f.text,wrap:f.wrap===void 0&&F9()||!!f.wrap,type:g,activate:w}),!0},pQe=function(){return ws.records.boxes.length>0},bQe=function(){return ws.records.boxes.some(i=>i.name)},wQe=function(){return ws.records.messages},mQe=function(){return ws.records.boxes},vQe=function(){return ws.records.actors},yQe=function(){return ws.records.createdActors},xQe=function(){return ws.records.destroyedActors},bB=function(i){return ws.records.actors[i]},kQe=function(){return Object.keys(ws.records.actors)},EQe=function(){ws.records.sequenceNumbersEnabled=!0},TQe=function(){ws.records.sequenceNumbersEnabled=!1},CQe=()=>ws.records.sequenceNumbersEnabled,SQe=function(i){ws.records.wrapEnabled=i},F9=()=>ws.records.wrapEnabled!==void 0?ws.records.wrapEnabled:Re().sequence.wrap,_Qe=function(){ws.reset(),ag()},AQe=function(i){const a=i.trim(),f={text:a.replace(/^:?(?:no)?wrap:/,"").trim(),wrap:a.match(/^:?wrap:/)!==null?!0:a.match(/^:?nowrap:/)!==null?!1:void 0};return Kt.debug("parseMessage:",f),f},LQe=function(i){const a=i.match(/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/);let f=a!=null&&a[1]?a[1].trim():"transparent",g=a!=null&&a[2]?a[2].trim():void 0;if(window&&window.CSS)window.CSS.supports("color",f)||(f="transparent",g=i.trim());else{const w=new Option().style;w.color=f,w.color!==f&&(f="transparent",g=i.trim())}return{color:f,text:g!==void 0?Ef(g.replace(/^:?(?:no)?wrap:/,""),Re()):void 0,wrap:g!==void 0?g.match(/^:?wrap:/)!==null?!0:g.match(/^:?nowrap:/)!==null?!1:void 0:void 0}},wB={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25,AUTONUMBER:26,CRITICAL_START:27,CRITICAL_OPTION:28,CRITICAL_END:29,BREAK_START:30,BREAK_END:31,PAR_OVER_START:32},DQe={FILLED:0,OPEN:1},MQe={LEFTOF:0,RIGHTOF:1,OVER:2},fqt=function(i,a,f){const g={actor:i,placement:a,message:f.text,wrap:f.wrap===void 0&&F9()||!!f.wrap},w=[].concat(i,i);ws.records.notes.push(g),ws.records.messages.push({from:w[0],to:w[1],message:f.text,wrap:f.wrap===void 0&&F9()||!!f.wrap,type:wB.NOTE,placement:a})},dqt=function(i,a){const f=bB(i);try{let g=Ef(a.text,Re());g=g.replace(/&amp;/g,"&"),g=g.replace(/&equals;/g,"=");const w=JSON.parse(g);Pbt(f,w)}catch(g){Kt.error("error while parsing actor link text",g)}},IQe=function(i,a){const f=bB(i);try{const b={};let E=Ef(a.text,Re());var g=E.indexOf("@");E=E.replace(/&amp;/g,"&"),E=E.replace(/&equals;/g,"=");var w=E.slice(0,g-1).trim(),v=E.slice(g+1).trim();b[w]=v,Pbt(f,b)}catch(b){Kt.error("error while parsing actor link text",b)}};function Pbt(i,a){if(i.links==null)i.links=a;else for(let f in a)i.links[f]=a[f]}const gqt=function(i,a){const f=bB(i);try{let g=Ef(a.text,Re());const w=JSON.parse(g);pqt(f,w)}catch(g){Kt.error("error while parsing actor properties text",g)}};function pqt(i,a){if(i.properties==null)i.properties=a;else for(let f in a)i.properties[f]=a[f]}function OQe(){ws.records.currentBox=void 0}const bqt=function(i,a){const f=bB(i),g=document.getElementById(a.text);try{const w=g.innerHTML,v=JSON.parse(w);v.properties&&pqt(f,v.properties),v.links&&Pbt(f,v.links)}catch(w){Kt.error("error while parsing actor details text",w)}},NQe=function(i,a){if(i!==void 0&&i.properties!==void 0)return i.properties[a]},wqt=function(i){if(Array.isArray(i))i.forEach(function(a){wqt(a)});else switch(i.type){case"sequenceIndex":ws.records.messages.push({from:void 0,to:void 0,message:{start:i.sequenceIndex,step:i.sequenceIndexStep,visible:i.sequenceVisible},wrap:!1,type:i.signalType});break;case"addParticipant":Nbt(i.actor,i.actor,i.description,i.draw);break;case"createParticipant":if(ws.records.actors[i.actor])throw new Error("It is not possible to have actors with the same id, even if one is destroyed before the next is created. Use 'AS' aliases to simulate the behavior");ws.records.lastCreated=i.actor,Nbt(i.actor,i.actor,i.description,i.draw),ws.records.createdActors[i.actor]=ws.records.messages.length;break;case"destroyParticipant":ws.records.lastDestroyed=i.actor,ws.records.destroyedActors[i.actor]=ws.records.messages.length;break;case"activeStart":Sf(i.actor,void 0,void 0,i.signalType);break;case"activeEnd":Sf(i.actor,void 0,void 0,i.signalType);break;case"addNote":fqt(i.actor,i.placement,i.text);break;case"addLinks":dqt(i.actor,i.text);break;case"addALink":IQe(i.actor,i.text);break;case"addProperties":gqt(i.actor,i.text);break;case"addDetails":bqt(i.actor,i.text);break;case"addMessage":if(ws.records.lastCreated){if(i.to!==ws.records.lastCreated)throw new Error("The created participant "+ws.records.lastCreated+" does not have an associated creating message after its declaration. Please check the sequence diagram.");ws.records.lastCreated=void 0}else if(ws.records.lastDestroyed){if(i.to!==ws.records.lastDestroyed&&i.from!==ws.records.lastDestroyed)throw new Error("The destroyed participant "+ws.records.lastDestroyed+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");ws.records.lastDestroyed=void 0}Sf(i.from,i.to,i.msg,i.signalType,i.activate);break;case"boxStart":fQe(i.boxData);break;case"boxEnd":OQe();break;case"loopStart":Sf(void 0,void 0,i.loopText,i.signalType);break;case"loopEnd":Sf(void 0,void 0,void 0,i.signalType);break;case"rectStart":Sf(void 0,void 0,i.color,i.signalType);break;case"rectEnd":Sf(void 0,void 0,void 0,i.signalType);break;case"optStart":Sf(void 0,void 0,i.optText,i.signalType);break;case"optEnd":Sf(void 0,void 0,void 0,i.signalType);break;case"altStart":Sf(void 0,void 0,i.altText,i.signalType);break;case"else":Sf(void 0,void 0,i.altText,i.signalType);break;case"altEnd":Sf(void 0,void 0,void 0,i.signalType);break;case"setAccTitle":og(i.text);break;case"parStart":Sf(void 0,void 0,i.parText,i.signalType);break;case"and":Sf(void 0,void 0,i.parText,i.signalType);break;case"parEnd":Sf(void 0,void 0,void 0,i.signalType);break;case"criticalStart":Sf(void 0,void 0,i.criticalText,i.signalType);break;case"option":Sf(void 0,void 0,i.optionText,i.signalType);break;case"criticalEnd":Sf(void 0,void 0,void 0,i.signalType);break;case"breakStart":Sf(void 0,void 0,i.breakText,i.signalType);break;case"breakEnd":Sf(void 0,void 0,void 0,i.signalType);break}},mqt={addActor:Nbt,addMessage:gQe,addSignal:Sf,addLinks:dqt,addDetails:bqt,addProperties:gqt,autoWrap:F9,setWrap:SQe,enableSequenceNumbers:EQe,disableSequenceNumbers:TQe,showSequenceNumbers:CQe,getMessages:wQe,getActors:vQe,getCreatedActors:yQe,getDestroyedActors:xQe,getActor:bB,getActorKeys:kQe,getActorProperty:NQe,getAccTitle:Xg,getBoxes:mQe,getDiagramTitle:Zg,setDiagramTitle:S2,getConfig:()=>Re().sequence,clear:_Qe,parseMessage:AQe,parseBoxData:LQe,LINETYPE:wB,ARROWTYPE:DQe,PLACEMENT:MQe,addNote:fqt,setAccTitle:og,apply:wqt,setAccDescription:Qg,getAccDescription:Jg,hasAtLeastOneBox:pQe,hasAtLeastOneBoxWithTitle:bQe},PQe=i=>`.actor {
1349 endInLayerEdge=`,tu(e,this.c),e.a},I(i0,"BreakingPointInserter/BPInfo",313),D(661,1,{661:1},wUt),l.a=!1,l.b=0,l.c=0,I(i0,"BreakingPointInserter/Cut",661),D(1545,1,zi,MJ),l.Kf=function(e,n){m6n(u(e,36),n)},I(i0,"BreakingPointProcessor",1545),D(1546,1,Kr,IJ),l.Mb=function(e){return Bae(u(e,10))},I(i0,"BreakingPointProcessor/0methodref$isEnd$Type",1546),D(1547,1,Kr,OJ),l.Mb=function(e){return Rae(u(e,10))},I(i0,"BreakingPointProcessor/1methodref$isStart$Type",1547),D(1548,1,zi,NJ),l.Kf=function(e,n){$6n(this,u(e,36),n)},I(i0,"BreakingPointRemover",1548),D(1549,1,ir,PJ),l.Cd=function(e){u(e,131).k=!0},I(i0,"BreakingPointRemover/lambda$0$Type",1549),D(811,1,{},q6t),l.b=0,l.e=0,l.f=0,l.j=0,I(i0,"GraphStats",811),D(812,1,{},bR),l.Ve=function(e,n){return b.Math.max(Rt(Ht(e)),Rt(Ht(n)))},I(i0,"GraphStats/0methodref$max$Type",812),D(813,1,{},wR),l.Ve=function(e,n){return b.Math.max(Rt(Ht(e)),Rt(Ht(n)))},I(i0,"GraphStats/2methodref$max$Type",813),D(1726,1,{},FJ),l.Ve=function(e,n){return zcn(Ht(e),Ht(n))},I(i0,"GraphStats/lambda$1$Type",1726),D(1727,1,{},cUt),l.Kb=function(e){return Hle(this.a,u(e,30))},I(i0,"GraphStats/lambda$2$Type",1727),D(1728,1,{},uUt),l.Kb=function(e){return Pde(this.a,u(e,30))},I(i0,"GraphStats/lambda$6$Type",1728),D(814,1,{},mR),l.og=function(e,n){var r;return r=u(X(e,(De(),wAt)),15),r||(mn(),mn(),co)},l.pg=function(){return!1},I(i0,"ICutIndexCalculator/ManualCutIndexCalculator",814),D(816,1,{},vR),l.og=function(e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt;for(Wt=(n.n==null&&whe(n),n.n),k=(n.d==null&&whe(n),n.d),Bt=Vt(ma,No,28,Wt.length,15,1),Bt[0]=Wt[0],Tt=Wt[0],T=1;T<Wt.length;T++)Bt[T]=Bt[T-1]+Wt[T],Tt+=Wt[T];for(o=Bfe(n)-1,d=u(X(e,(De(),mAt)),17).a,s=Vs,r=new fe,$=b.Math.max(0,o-d);$<=b.Math.min(n.f-1,o+d);$++){if(tt=Tt/($+1),ht=0,A=1,h=new fe,At=Vs,P=0,m=0,J=k[0],$==0)At=Tt,m=(n.g==null&&(n.g=nce(n,new wR)),Rt(n.g));else{for(;A<n.f;)Bt[A-1]-ht>=tt&&(ge(h,he(A)),At=b.Math.max(At,Bt[A-1]-P),m+=J,ht+=Bt[A-1]-ht,P=Bt[A-1],J=k[A]),J=b.Math.max(J,k[A]),++A;m+=J}U=b.Math.min(1/At,1/n.b/m),U>s&&(s=U,r=h)}return r},l.pg=function(){return!1},I(i0,"MSDCutIndexHeuristic",816),D(1683,1,zi,BJ),l.Kf=function(e,n){A7n(u(e,36),n)},I(i0,"SingleEdgeGraphWrapper",1683),D(232,22,{3:1,34:1,22:1,232:1},oS);var j5,kT,ET,T3,SA,$5,TT=Lr(Hc,"CenterEdgeLabelPlacementStrategy",232,Pr,d0n,pon),U4e;D(431,22,{3:1,34:1,22:1,431:1},Kwt);var kSt,Aft,ESt=Lr(Hc,"ConstraintCalculationStrategy",431,Pr,Ohn,bon),G4e;D(322,22,{3:1,34:1,22:1,322:1,188:1,196:1},xrt),l.dg=function(){return y1e(this)},l.qg=function(){return y1e(this)};var QN,_A,TSt,CSt=Lr(Hc,"CrossingMinimizationStrategy",322,Pr,_fn,won),K4e;D(351,22,{3:1,34:1,22:1,351:1},krt);var SSt,Lft,yG,_St=Lr(Hc,"CuttingStrategy",351,Pr,Afn,mon),W4e;D(348,22,{3:1,34:1,22:1,348:1,188:1,196:1},VM),l.dg=function(){return lde(this)},l.qg=function(){return lde(this)};var ASt,Dft,CT,Mft,ST,LSt=Lr(Hc,"CycleBreakingStrategy",348,Pr,Mdn,von),Y4e;D(428,22,{3:1,34:1,22:1,428:1},Wwt);var xG,DSt,MSt=Lr(Hc,"DirectionCongruency",428,Pr,Ihn,yon),X4e;D(459,22,{3:1,34:1,22:1,459:1},Ert);var _T,Ift,z5,Q4e=Lr(Hc,"EdgeConstraint",459,Pr,Lfn,_on),J4e;D(283,22,{3:1,34:1,22:1,283:1},cS);var Oft,Nft,Pft,Fft,kG,Bft,ISt=Lr(Hc,"EdgeLabelSideSelection",283,Pr,l0n,Aon),Z4e;D(487,22,{3:1,34:1,22:1,487:1},Ywt);var EG,OSt,NSt=Lr(Hc,"EdgeStraighteningStrategy",487,Pr,Mhn,Lon),t5e;D(281,22,{3:1,34:1,22:1,281:1},uS);var Rft,PSt,FSt,TG,BSt,RSt,jSt=Lr(Hc,"FixedAlignment",281,Pr,h0n,Son),e5e;D(282,22,{3:1,34:1,22:1,282:1},lS);var $St,zSt,qSt,HSt,AA,VSt,USt=Lr(Hc,"GraphCompactionStrategy",282,Pr,f0n,xon),n5e;D(259,22,{3:1,34:1,22:1,259:1},ky);var AT,CG,LT,Uh,LA,SG,DT,q5,_G,DA,jft=Lr(Hc,"GraphProperties",259,Pr,Xgn,kon),r5e;D(298,22,{3:1,34:1,22:1,298:1},Trt);var JN,$ft,zft,qft=Lr(Hc,"GreedySwitchType",298,Pr,Dfn,Eon),i5e;D(311,22,{3:1,34:1,22:1,311:1},Crt);var qk,ZN,H5,s5e=Lr(Hc,"InLayerConstraint",311,Pr,Mfn,Ton),a5e;D(429,22,{3:1,34:1,22:1,429:1},Xwt);var Hft,GSt,KSt=Lr(Hc,"InteractiveReferencePoint",429,Pr,jhn,Con),o5e,WSt,Hk,vv,AG,YSt,XSt,LG,QSt,tP,DG,MA,Vk,$g,Vft,MG,Dc,JSt,i2,lu,Uft,Gft,eP,Aw,yv,Uk,ZSt,Gk,nP,C3,N1,gf,Kft,V5,Pi,Li,t_t,e_t,n_t,r_t,i_t,Wft,IG,ml,xv,Yft,Kk,IA,vd,U5,kv,G5,K5,MT,Lw,s_t,Xft,Qft,Wk;D(171,22,{3:1,34:1,22:1,171:1},UM);var OA,s2,NA,S3,rP,a_t=Lr(Hc,"LayerConstraint",171,Pr,Odn,Don),c5e;D(859,1,uf,Qet),l.hf=function(e){Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,nEt),""),"Direction Congruency"),"Specifies how drawings of the same graph with different layout directions compare to each other: either a natural reading direction is preserved or the drawings are rotated versions of each other."),b_t),(Fp(),ts)),MSt),en((D1(),_n))))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,rEt),""),"Feedback Edges"),"Whether feedback edges should be highlighted by routing around the nodes."),(Pn(),!1)),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,BV),""),"Interactive Reference Point"),"Determines which point of a node is considered by interactive layout phases."),k_t),ts),KSt),en(_n)))),Bs(e,BV,Hut,nxe),Bs(e,BV,Z_,exe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,iEt),""),"Merge Edges"),"Edges that have no ports are merged so they touch the connected nodes at the same points. When this option is disabled, one port is created for each edge directly connected to a node. When it is enabled, all such incoming edges share an input port, and all outgoing edges share an output port."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,sEt),""),"Merge Hierarchy-Crossing Edges"),"If hierarchical layout is active, hierarchy-crossing edges use as few hierarchical ports as possible. They are broken by the algorithm, with hierarchical ports inserted as required. Usually, one such port is created for each edge at each hierarchy crossing point. With this option set to true, we try to create as few hierarchical ports as possible in the process. In particular, all edges that form a hyperedge can share a port."),!0),oa),ys),en(_n)))),Qe(e,new He(krn(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,aEt),""),"Allow Non-Flow Ports To Switch Sides"),"Specifies whether non-flow ports may switch sides if their node's port constraints are either FIXED_SIDE or FIXED_ORDER. A non-flow port is a port on a side that is not part of the currently configured layout flow. For instance, given a left-to-right layout direction, north and south ports would be considered non-flow ports. Further note that the underlying criterium whether to switch sides or not solely relies on the minimization of edge crossings. Hence, edge length and other aesthetics criteria are not addressed."),!1),oa),ys),en(Bw)),lt(ut(Pe,1),ue,2,6,["org.eclipse.elk.layered.northOrSouthPort"])))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,oEt),""),"Port Sorting Strategy"),"Only relevant for nodes with FIXED_SIDE port constraints. Determines the way a node's ports are distributed on the sides of a node if their order is not prescribed. The option is set on parent nodes."),D_t),ts),jAt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,cEt),""),"Thoroughness"),"How much effort should be spent to produce a nice layout."),he(7)),ac),Ra),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,uEt),""),"Add Unnecessary Bendpoints"),"Adds bend points even if an edge does not change direction. If true, each long edge dummy will contribute a bend point to its edges and hierarchy-crossing edges will always get a bend point where they cross hierarchy boundaries. By default, bend points are only added where an edge changes direction."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,lEt),""),"Generate Position and Layer IDs"),"If enabled position id and layer id are generated, which are usually only used internally when setting the interactiveLayout option. This option should be specified on the root node."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Hut),"cycleBreaking"),"Cycle Breaking Strategy"),"Strategy for cycle breaking. Cycle breaking looks for cycles in the graph and determines which edges to reverse to break the cycles. Reversed edges will end up pointing to the opposite direction of regular edges (that is, reversed edges will point left if edges usually point right)."),p_t),ts),LSt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,kN),dlt),"Node Layering Strategy"),"Strategy for node layering."),C_t),ts),_At),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,hEt),dlt),"Layer Constraint"),"Determines a constraint on the placement of the node regarding the layering."),E_t),ts),a_t),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,fEt),dlt),"Layer Choice Constraint"),"Allows to set a constraint regarding the layer placement of a node. Let i be the value of teh constraint. Assumed the drawing has n layers and i < n. If set to i, it expresses that the node should be placed in i-th layer. Should i>=n be true then the node is placed in the last layer of the drawing. Note that this option is not part of any of ELK Layered's default configurations but is only evaluated as part of the `InteractiveLayeredGraphVisitor`, which must be applied manually or used via the `DiagramLayoutEngine."),null),ac),Ra),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,dEt),dlt),"Layer ID"),"Layer identifier that was calculated by ELK Layered for a node. This is only generated if interactiveLayot or generatePositionAndLayerIds is set."),he(-1)),ac),Ra),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Vut),I2e),"Upper Bound On Width [MinWidth Layerer]"),"Defines a loose upper bound on the width of the MinWidth layerer. If set to '-1' multiple values are tested and the best result is selected."),he(4)),ac),Ra),en(_n)))),Bs(e,Vut,kN,uxe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Uut),I2e),"Upper Layer Estimation Scaling Factor [MinWidth Layerer]"),"Multiplied with Upper Bound On Width for defining an upper bound on the width of layers which haven't been determined yet, but whose maximum width had been (roughly) estimated by the MinWidth algorithm. Compensates for too high estimations. If set to '-1' multiple values are tested and the best result is selected."),he(2)),ac),Ra),en(_n)))),Bs(e,Uut,kN,hxe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Gut),O2e),"Node Promotion Strategy"),"Reduces number of dummy nodes after layering phase (if possible)."),T_t),ts),FAt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Kut),O2e),"Max Node Promotion Iterations"),"Limits the number of iterations for node promotion."),he(0)),ac),Ra),en(_n)))),Bs(e,Kut,Gut,null),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Wut),"layering.coffmanGraham"),"Layer Bound"),"The maximum number of nodes allowed per layer."),he(xi)),ac),Ra),en(_n)))),Bs(e,Wut,kN,ixe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Z_),iT),"Crossing Minimization Strategy"),"Strategy for crossing minimization."),g_t),ts),CSt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,gEt),iT),"Force Node Model Order"),"The node order given by the model does not change to produce a better layout. E.g. if node A is before node B in the model this is not changed during crossing minimization. This assumes that the node model order is already respected before crossing minimization. This can be achieved by setting considerModelOrder.strategy to NODES_AND_EDGES."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Yut),iT),"Hierarchical Sweepiness"),"How likely it is to use cross-hierarchy (1) vs bottom-up (-1)."),.1),Wa),zs),en(_n)))),Bs(e,Yut,XV,A5e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Xut),iT),"Semi-Interactive Crossing Minimization"),"Preserves the order of nodes within a layer but still minimizes crossings between edges connecting long edge dummies. Derives the desired order from positions specified by the 'org.eclipse.elk.position' layout option. Requires a crossing minimization strategy that is able to process 'in-layer' constraints."),!1),oa),ys),en(_n)))),Bs(e,Xut,Z_,N5e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,pEt),iT),"In Layer Predecessor of"),"Allows to set a constraint which specifies of which node the current node is the predecessor. If set to 's' then the node is the predecessor of 's' and is in the same layer"),null),ix),Pe),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,bEt),iT),"In Layer Successor of"),"Allows to set a constraint which specifies of which node the current node is the successor. If set to 's' then the node is the successor of 's' and is in the same layer"),null),ix),Pe),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,wEt),iT),"Position Choice Constraint"),"Allows to set a constraint regarding the position placement of a node in a layer. Assumed the layer in which the node placed includes n other nodes and i < n. If set to i, it expresses that the node should be placed at the i-th position. Should i>=n be true then the node is placed at the last position in the layer. Note that this option is not part of any of ELK Layered's default configurations but is only evaluated as part of the `InteractiveLayeredGraphVisitor`, which must be applied manually or used via the `DiagramLayoutEngine."),null),ac),Ra),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,mEt),iT),"Position ID"),"Position within a layer that was determined by ELK Layered for a node. This is only generated if interactiveLayot or generatePositionAndLayerIds is set."),he(-1)),ac),Ra),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,vEt),N2e),"Greedy Switch Activation Threshold"),"By default it is decided automatically if the greedy switch is activated or not. The decision is based on whether the size of the input graph (without dummy nodes) is smaller than the value of this option. A '0' enforces the activation."),he(40)),ac),Ra),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Qut),N2e),"Greedy Switch Crossing Minimization"),"Greedy Switch strategy for crossing minimization. The greedy switch heuristic is executed after the regular crossing minimization as a post-processor. Note that if 'hierarchyHandling' is set to 'INCLUDE_CHILDREN', the 'greedySwitchHierarchical.type' option must be used."),d_t),ts),qft),en(_n)))),Bs(e,Qut,Z_,S5e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,RV),"crossingMinimization.greedySwitchHierarchical"),"Greedy Switch Crossing Minimization (hierarchical)"),"Activates the greedy switch heuristic in case hierarchical layout is used. The differences to the non-hierarchical case (see 'greedySwitch.type') are: 1) greedy switch is inactive by default, 3) only the option value set on the node at which hierarchical layout starts is relevant, and 2) if it's activated by the user, it properly addresses hierarchy-crossing edges."),f_t),ts),qft),en(_n)))),Bs(e,RV,Z_,E5e),Bs(e,RV,XV,T5e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,A5),P2e),"Node Placement Strategy"),"Strategy for node placement."),L_t),ts),MAt),en(_n)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,jV),P2e),"Favor Straight Edges Over Balancing"),"Favor straight edges over a balanced node placement. The default behavior is determined automatically based on the used 'edgeRouting'. For an orthogonal style it is set to true, for all other styles to false."),oa),ys),en(_n)))),Bs(e,jV,A5,kxe),Bs(e,jV,A5,Exe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Jut),F2e),"BK Edge Straightening"),"Specifies whether the Brandes Koepf node placer tries to increase the number of straight edges at the expense of diagram size. There is a subtle difference to the 'favorStraightEdges' option, which decides whether a balanced placement of the nodes is desired, or not. In bk terms this means combining the four alignments into a single balanced one, or not. This option on the other hand tries to straighten additional edges during the creation of each of the four alignments."),S_t),ts),NSt),en(_n)))),Bs(e,Jut,A5,mxe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Zut),F2e),"BK Fixed Alignment"),"Tells the BK node placer to use a certain alignment (out of its four) instead of the one producing the smallest height, or the combination of all four."),__t),ts),jSt),en(_n)))),Bs(e,Zut,A5,yxe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,tlt),"nodePlacement.linearSegments"),"Linear Segments Deflection Dampening"),"Dampens the movement of nodes to keep the diagram from getting too large."),.3),Wa),zs),en(_n)))),Bs(e,tlt,A5,Cxe),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,elt),"nodePlacement.networkSimplex"),"Node Flexibility"),"Aims at shorter and straighter edges. Two configurations are possible: (a) allow ports to move freely on the side they are assigned to (the order is always defined beforehand), (b) additionally allow to enlarge a node wherever it helps. If this option is not configured for a node, the 'nodeFlexibility.default' value is used, which is specified for the node's parent."),ts),v1t),en(Qs)))),Bs(e,elt,A5,Lxe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,nlt),"nodePlacement.networkSimplex.nodeFlexibility"),"Node Flexibility Default"),"Default value of the 'nodeFlexibility' option for the children of a hierarchical node."),A_t),ts),v1t),en(_n)))),Bs(e,nlt,A5,Axe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,yEt),B2e),"Self-Loop Distribution"),"Alter the distribution of the loops around the node. It only takes effect for PortConstraints.FREE."),v_t),ts),qAt),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,xEt),B2e),"Self-Loop Ordering"),"Alter the ordering of the loops they can either be stacked or sequenced. It only takes effect for PortConstraints.FREE."),y_t),ts),HAt),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,$V),"edgeRouting.splines"),"Spline Routing Mode"),"Specifies the way control points are assembled for each individual edge. CONSERVATIVE ensures that edges are properly routed around the nodes but feels rather orthogonal at times. SLOPPY uses fewer control points to obtain curvier edge routes but may result in edges overlapping nodes."),x_t),ts),UAt),en(_n)))),Bs(e,$V,EN,U5e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,zV),"edgeRouting.splines.sloppy"),"Sloppy Spline Layer Spacing Factor"),"Spacing factor for routing area between layers when using sloppy spline routing."),.2),Wa),zs),en(_n)))),Bs(e,zV,EN,K5e),Bs(e,zV,$V,W5e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,rlt),"edgeRouting.polyline"),"Sloped Edge Zone Width"),"Width of the strip to the left and to the right of each layer where the polyline edge router is allowed to refrain from ensuring that edges are routed horizontally. This prevents awkward bend points for nodes that extent almost to the edge of their layer."),2),Wa),zs),en(_n)))),Bs(e,rlt,EN,z5e),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,kEt),bd),"Spacing Base Value"),"An optional base value for all other layout options of the 'spacing' group. It can be used to conveniently alter the overall 'spaciousness' of the drawing. Whenever an explicit value is set for the other layout options, this base value will have no effect. The base value is not inherited, i.e. it must be set for each hierarchical node."),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,EEt),bd),"Edge Node Between Layers Spacing"),"The spacing to be preserved between nodes and edges that are routed next to the node's layer. For the spacing between nodes and edges that cross the node's layer 'spacing.edgeNode' is used."),10),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,TEt),bd),"Edge Edge Between Layer Spacing"),"Spacing to be preserved between pairs of edges that are routed between the same pair of layers. Note that 'spacing.edgeEdge' is used for the spacing between pairs of edges crossing the same layer."),10),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,CEt),bd),"Node Node Between Layers Spacing"),"The spacing to be preserved between any pair of nodes of two adjacent layers. Note that 'spacing.nodeNode' is used for the spacing between nodes within the layer itself."),20),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,SEt),FEt),"Direction Priority"),"Defines how important it is to have a certain edge point into the direction of the overall layout. This option is evaluated during the cycle breaking phase."),he(0)),ac),Ra),en(f0)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,_Et),FEt),"Shortness Priority"),"Defines how important it is to keep an edge as short as possible. This option is evaluated during the layering phase."),he(0)),ac),Ra),en(f0)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,AEt),FEt),"Straightness Priority"),"Defines how important it is to keep an edge straight, i.e. aligned with one of the two axes. This option is evaluated during node placement."),he(0)),ac),Ra),en(f0)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,ilt),BEt),Zbe),"Tries to further compact components (disconnected sub-graphs)."),!1),oa),ys),en(_n)))),Bs(e,ilt,W_,!0),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,LEt),R2e),"Post Compaction Strategy"),j2e),c_t),ts),USt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,DEt),R2e),"Post Compaction Constraint Calculation"),j2e),o_t),ts),ESt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,qV),REt),"High Degree Node Treatment"),"Makes room around high degree nodes to place leafs and trees."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,slt),REt),"High Degree Node Threshold"),"Whether a node is considered to have a high degree."),he(16)),ac),Ra),en(_n)))),Bs(e,slt,qV,!0),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,alt),REt),"High Degree Node Maximum Tree Height"),"Maximum height of a subtree connected to a high degree node to be moved to separate layers."),he(5)),ac),Ra),en(_n)))),Bs(e,alt,qV,!0),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,Bg),jEt),"Graph Wrapping Strategy"),"For certain graphs and certain prescribed drawing areas it may be desirable to split the laid out graph into chunks that are placed side by side. The edges that connect different chunks are 'wrapped' around from the end of one chunk to the start of the other chunk. The points between the chunks are referred to as 'cuts'."),O_t),ts),YAt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,HV),jEt),"Additional Wrapped Edges Spacing"),"To visually separate edges that are wrapped from regularly routed edges an additional spacing value can be specified in form of this layout option. The spacing is added to the regular edgeNode spacing."),10),Wa),zs),en(_n)))),Bs(e,HV,Bg,qxe),Bs(e,HV,Bg,Hxe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,VV),jEt),"Correction Factor for Wrapping"),"At times and for certain types of graphs the executed wrapping may produce results that are consistently biased in the same fashion: either wrapping to often or to rarely. This factor can be used to correct the bias. Internally, it is simply multiplied with the 'aspect ratio' layout option."),1),Wa),zs),en(_n)))),Bs(e,VV,Bg,Uxe),Bs(e,VV,Bg,Gxe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,tA),$2e),"Cutting Strategy"),"The strategy by which the layer indexes are determined at which the layering crumbles into chunks."),I_t),ts),_St),en(_n)))),Bs(e,tA,Bg,Jxe),Bs(e,tA,Bg,Zxe),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,olt),$2e),"Manually Specified Cuts"),"Allows the user to specify her own cuts for a certain graph."),xd),Vh),en(_n)))),Bs(e,olt,tA,Wxe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,clt),"wrapping.cutting.msd"),"MSD Freedom"),"The MSD cutting strategy starts with an initial guess on the number of chunks the graph should be split into. The freedom specifies how much the strategy may deviate from this guess. E.g. if an initial number of 3 is computed, a freedom of 1 allows 2, 3, and 4 cuts."),M_t),ac),Ra),en(_n)))),Bs(e,clt,tA,Xxe),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,UV),z2e),"Validification Strategy"),"When wrapping graphs, one can specify indices that are not allowed as split points. The validification strategy makes sure every computed split point is allowed."),N_t),ts),WAt),en(_n)))),Bs(e,UV,Bg,h6e),Bs(e,UV,Bg,f6e),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,GV),z2e),"Valid Indices for Wrapping"),null),xd),Vh),en(_n)))),Bs(e,GV,Bg,c6e),Bs(e,GV,Bg,u6e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,KV),$Et),"Improve Cuts"),"For general graphs it is important that not too many edges wrap backwards. Thus a compromise between evenly-distributed cuts and the total number of cut edges is sought."),!0),oa),ys),en(_n)))),Bs(e,KV,Bg,r6e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,WV),$Et),"Distance Penalty When Improving Cuts"),null),2),Wa),zs),en(_n)))),Bs(e,WV,Bg,e6e),Bs(e,WV,KV,!0),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,ult),$Et),"Improve Wrapped Edges"),"The initial wrapping is performed in a very simple way. As a consequence, edges that wrap from one chunk to another may be unnecessarily long. Activating this option tries to shorten such edges."),!0),oa),ys),en(_n)))),Bs(e,ult,Bg,s6e),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,MEt),glt),"Edge Label Side Selection"),"Method to decide on edge label sides."),m_t),ts),ISt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,IEt),glt),"Edge Center Label Placement Strategy"),"Determines in which layer center labels of long edges should be placed."),w_t),ts),TT),Hi(_n,lt(ut(G0,1),te,170,0,[Wp]))))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,YV),eA),"Consider Model Order"),"Preserves the order of nodes and edges in the model file if this does not lead to additional edge crossings. Depending on the strategy this is not always possible since the node and edge order might be conflicting."),h_t),ts),RAt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,OEt),eA),"Consider Port Order"),"If disabled the port order of output ports is derived from the edge order and input ports are ordered by their incoming connections. If enabled all ports are ordered by the port model order."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,NEt),eA),"No Model Order"),"Set on a node to not set a model order for this node even though it is a real node."),!1),oa),ys),en(Qs)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,llt),eA),"Consider Model Order for Components"),"If set to NONE the usual ordering strategy (by cumulative node priority and size of nodes) is used. INSIDE_PORT_SIDES orders the components with external ports only inside the groups with the same port side. FORCE_MODEL_ORDER enforces the mode order on components. This option might produce bad alignments and sub optimal drawings in terms of used area since the ordering should be respected."),u_t),ts),LCt),en(_n)))),Bs(e,llt,W_,null),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,PEt),eA),"Long Edge Ordering Strategy"),"Indicates whether long edges are sorted under, over, or equal to nodes that have no connection to a previous layer in a left-to-right or right-to-left layout. Under and over changes to right and left in a vertical layout."),l_t),ts),LAt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,hlt),eA),"Crossing Counter Node Order Influence"),"Indicates with what percentage (1 for 100%) violations of the node model order are weighted against the crossings e.g. a value of 0.5 means two model order violations are as important as on edge crossing. This allows some edge crossings in favor of preserving the model order. It is advised to set this value to a very small positive value (e.g. 0.001) to have minimal crossing and a optimal node order. Defaults to no influence (0)."),0),Wa),zs),en(_n)))),Bs(e,hlt,YV,null),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,flt),eA),"Crossing Counter Port Order Influence"),"Indicates with what percentage (1 for 100%) violations of the port model order are weighted against the crossings e.g. a value of 0.5 means two model order violations are as important as on edge crossing. This allows some edge crossings in favor of preserving the model order. It is advised to set this value to a very small positive value (e.g. 0.001) to have minimal crossing and a optimal port order. Defaults to no influence (0)."),0),Wa),zs),en(_n)))),Bs(e,flt,YV,null),ibe((new Jet,e))};var u5e,l5e,h5e,o_t,f5e,c_t,d5e,u_t,g5e,p5e,b5e,l_t,w5e,m5e,v5e,h_t,y5e,x5e,k5e,f_t,E5e,T5e,C5e,d_t,S5e,_5e,A5e,L5e,D5e,M5e,I5e,O5e,N5e,P5e,g_t,F5e,p_t,B5e,b_t,R5e,w_t,j5e,m_t,$5e,z5e,q5e,v_t,H5e,y_t,V5e,x_t,U5e,G5e,K5e,W5e,Y5e,X5e,Q5e,J5e,Z5e,txe,k_t,exe,nxe,rxe,ixe,sxe,axe,E_t,oxe,cxe,uxe,lxe,hxe,fxe,dxe,T_t,gxe,C_t,pxe,bxe,wxe,S_t,mxe,vxe,__t,yxe,xxe,kxe,Exe,Txe,Cxe,Sxe,_xe,A_t,Axe,Lxe,Dxe,L_t,Mxe,D_t,Ixe,Oxe,Nxe,Pxe,Fxe,Bxe,Rxe,jxe,$xe,zxe,qxe,Hxe,Vxe,Uxe,Gxe,Kxe,Wxe,Yxe,M_t,Xxe,Qxe,I_t,Jxe,Zxe,t6e,e6e,n6e,r6e,i6e,s6e,a6e,O_t,o6e,c6e,u6e,l6e,N_t,h6e,f6e;I(Hc,"LayeredMetaDataProvider",859),D(998,1,uf,Jet),l.hf=function(e){ibe(e)};var u0,Jft,OG,PA,NG,P_t,PG,_3,FG,F_t,B_t,BG,Zft,U0,t1t,Ev,R_t,iP,e1t,j_t,d6e,g6e,p6e,RG,n1t,FA,Dw,b6e,ph,$_t,z_t,jG,r1t,l0,$G,zg,q_t,H_t,V_t,i1t,s1t,U_t,Hp,a1t,G_t,A3,K_t,W_t,Y_t,zG,L3,Mw,X_t,Q_t,Vo,J_t,w6e,Iu,qG,Z_t,tAt,eAt,a2,Iw,HG,nAt,rAt,VG,Tv,iAt,o1t,BA,sAt,Cv,RA,UG,Ow,c1t,IT,GG,Nw,aAt,oAt,cAt,OT,uAt,m6e,v6e,y6e,x6e,Sv,D3,bs,Vp,k6e,M3,lAt,NT,hAt,I3,E6e,PT,fAt,Yk,T6e,C6e,sP,u1t,dAt,aP,Yf,W5,Y5,_v,Pw,KG,O3,l1t,FT,BT,Av,X5,h1t,oP,jA,$A,S6e,_6e,A6e,gAt,L6e,f1t,pAt,bAt,wAt,mAt,d1t,vAt,yAt,xAt,kAt,g1t,WG;I(Hc,"LayeredOptions",998),D(999,1,{},RJ),l.sf=function(){var e;return e=new EKt,e},l.tf=function(e){},I(Hc,"LayeredOptions/LayeredFactory",999),D(1391,1,{}),l.a=0;var D6e;I(_c,"ElkSpacings/AbstractSpacingsBuilder",1391),D(792,1391,{},V5t);var YG,M6e;I(Hc,"LayeredSpacings/LayeredSpacingsBuilder",792),D(265,22,{3:1,34:1,22:1,265:1,188:1,196:1},F4),l.dg=function(){return v0e(this)},l.qg=function(){return v0e(this)};var RT,p1t,jT,EAt,TAt,CAt,XG,b1t,SAt,_At=Lr(Hc,"LayeringStrategy",265,Pr,Sgn,Mon),I6e;D(390,22,{3:1,34:1,22:1,390:1},Srt);var w1t,AAt,QG,LAt=Lr(Hc,"LongEdgeOrderingStrategy",390,Pr,Ifn,Ion),O6e;D(203,22,{3:1,34:1,22:1,203:1},$$);var Q5,J5,JG,m1t,v1t=Lr(Hc,"NodeFlexibility",203,Pr,z1n,Oon),N6e;D(323,22,{3:1,34:1,22:1,323:1,188:1,196:1},GM),l.dg=function(){return ude(this)},l.qg=function(){return ude(this)};var zA,y1t,x1t,qA,DAt,MAt=Lr(Hc,"NodePlacementStrategy",323,Pr,Idn,Non),P6e;D(243,22,{3:1,34:1,22:1,243:1},Ey);var IAt,Lv,N3,cP,OAt,NAt,uP,PAt,ZG,tK,FAt=Lr(Hc,"NodePromotionStrategy",243,Pr,Qgn,Pon),F6e;D(284,22,{3:1,34:1,22:1,284:1},z$);var BAt,Up,k1t,E1t,RAt=Lr(Hc,"OrderingStrategy",284,Pr,q1n,Fon),B6e;D(430,22,{3:1,34:1,22:1,430:1},Qwt);var T1t,C1t,jAt=Lr(Hc,"PortSortingStrategy",430,Pr,Nhn,Bon),R6e;D(462,22,{3:1,34:1,22:1,462:1},_rt);var vl,ku,HA,j6e=Lr(Hc,"PortType",462,Pr,Ofn,Ron),$6e;D(387,22,{3:1,34:1,22:1,387:1},Art);var $At,S1t,zAt,qAt=Lr(Hc,"SelfLoopDistributionStrategy",387,Pr,Nfn,jon),z6e;D(349,22,{3:1,34:1,22:1,349:1},Lrt);var _1t,lP,A1t,HAt=Lr(Hc,"SelfLoopOrderingStrategy",349,Pr,Pfn,$on),q6e;D(312,1,{312:1},epe),I(Hc,"Spacings",312),D(350,22,{3:1,34:1,22:1,350:1},Drt);var L1t,VAt,VA,UAt=Lr(Hc,"SplineRoutingMode",350,Pr,Ffn,zon),H6e;D(352,22,{3:1,34:1,22:1,352:1},Mrt);var D1t,GAt,KAt,WAt=Lr(Hc,"ValidifyStrategy",352,Pr,Bfn,qon),V6e;D(388,22,{3:1,34:1,22:1,388:1},Irt);var P3,M1t,$T,YAt=Lr(Hc,"WrappingStrategy",388,Pr,Rfn,Hon),U6e;D(1398,1,_o,Ket),l.rg=function(e){return u(e,36),G6e},l.Kf=function(e,n){kTn(this,u(e,36),n)};var G6e;I(tU,"DepthFirstCycleBreaker",1398),D(793,1,_o,lyt),l.rg=function(e){return u(e,36),K6e},l.Kf=function(e,n){CSn(this,u(e,36),n)},l.sg=function(e){return u(Oe(e,MH(this.d,e.c.length)),10)};var K6e;I(tU,"GreedyCycleBreaker",793),D(1401,793,_o,vQt),l.sg=function(e){var n,r,s,o;for(o=null,n=xi,s=new G(e);s.a<s.c.c.length;)r=u(et(s),10),qi(r,(oe(),Pi))&&u(X(r,Pi),17).a<n&&(n=u(X(r,Pi),17).a,o=r);return o||u(Oe(e,MH(this.d,e.c.length)),10)},I(tU,"GreedyModelOrderCycleBreaker",1401),D(1399,1,_o,Mj),l.rg=function(e){return u(e,36),W6e},l.Kf=function(e,n){MTn(this,u(e,36),n)};var W6e;I(tU,"InteractiveCycleBreaker",1399),D(1400,1,_o,g6),l.rg=function(e){return u(e,36),Y6e},l.Kf=function(e,n){zTn(this,u(e,36),n)},l.a=0,l.b=0;var Y6e;I(tU,"ModelOrderCycleBreaker",1400),D(1413,1,_o,Dj),l.rg=function(e){return u(e,36),X6e},l.Kf=function(e,n){DCn(this,u(e,36),n)};var X6e;I(Rg,"BreadthFirstModelOrderLayerer",1413),D(1414,1,Xr,jJ),l.Ne=function(e,n){return e5n(u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Rg,"BreadthFirstModelOrderLayerer/lambda$0$Type",1414),D(1404,1,_o,GYt),l.rg=function(e){return u(e,36),Q6e},l.Kf=function(e,n){DSn(this,u(e,36),n)};var Q6e;I(Rg,"CoffmanGrahamLayerer",1404),D(1405,1,Xr,lUt),l.Ne=function(e,n){return z5n(this.a,u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Rg,"CoffmanGrahamLayerer/0methodref$compareNodesInTopo$Type",1405),D(1406,1,Xr,hUt),l.Ne=function(e,n){return zun(this.a,u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Rg,"CoffmanGrahamLayerer/lambda$1$Type",1406),D(1415,1,_o,vM),l.rg=function(e){return u(e,36),J6e},l.Kf=function(e,n){wSn(this,u(e,36),n)},l.c=0,l.e=0;var J6e;I(Rg,"DepthFirstModelOrderLayerer",1415),D(1416,1,Xr,$J),l.Ne=function(e,n){return n5n(u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Rg,"DepthFirstModelOrderLayerer/lambda$0$Type",1416),D(1407,1,_o,zJ),l.rg=function(e){return u(e,36),ri(ri(ri(new Fs,(Ua(),Wf),(Za(),gft)),H0,E3),Qc,k3)},l.Kf=function(e,n){HCn(u(e,36),n)},I(Rg,"InteractiveLayerer",1407),D(578,1,{578:1},_Kt),l.a=0,l.c=0,I(Rg,"InteractiveLayerer/LayerSpan",578),D(1403,1,_o,NC),l.rg=function(e){return u(e,36),Z6e},l.Kf=function(e,n){wkn(this,u(e,36),n)};var Z6e;I(Rg,"LongestPathLayerer",1403),D(1412,1,_o,OC),l.rg=function(e){return u(e,36),tke},l.Kf=function(e,n){zkn(this,u(e,36),n)};var tke;I(Rg,"LongestPathSourceLayerer",1412),D(1410,1,_o,yM),l.rg=function(e){return u(e,36),ri(ri(ri(new Fs,(Ua(),Wf),(Za(),B5)),H0,E3),Qc,k3)},l.Kf=function(e,n){JCn(this,u(e,36),n)},l.a=0,l.b=0,l.d=0;var XAt,QAt;I(Rg,"MinWidthLayerer",1410),D(1411,1,Xr,fUt),l.Ne=function(e,n){return vpn(this,u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Rg,"MinWidthLayerer/MinOutgoingEdgesComparator",1411),D(1402,1,_o,Wet),l.rg=function(e){return u(e,36),eke},l.Kf=function(e,n){f9n(this,u(e,36),n)};var eke;I(Rg,"NetworkSimplexLayerer",1402),D(1408,1,_o,yZt),l.rg=function(e){return u(e,36),ri(ri(ri(new Fs,(Ua(),Wf),(Za(),B5)),H0,E3),Qc,k3)},l.Kf=function(e,n){X9n(this,u(e,36),n)},l.d=0,l.f=0,l.g=0,l.i=0,l.s=0,l.t=0,l.u=0,I(Rg,"StretchWidthLayerer",1408),D(1409,1,Xr,qJ),l.Ne=function(e,n){return Xdn(u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Rg,"StretchWidthLayerer/1",1409),D(413,1,x7t),l.gg=function(e,n,r,s,o,h){},l.ug=function(e,n,r){return G0e(this,e,n,r)},l.fg=function(){this.g=Vt(Y3,H2e,28,this.d,15,1),this.f=Vt(Y3,H2e,28,this.d,15,1)},l.hg=function(e,n){this.e[e]=Vt(Fr,ii,28,n[e].length,15,1)},l.ig=function(e,n,r){var s;s=r[e][n],s.p=n,this.e[e][n]=n},l.jg=function(e,n,r,s){u(Oe(s[e][n].j,r),12).p=this.d++},l.b=0,l.c=0,l.d=0,I(al,"AbstractBarycenterPortDistributor",413),D(1698,1,Xr,dUt),l.Ne=function(e,n){return Gwn(this.a,u(e,12),u(n,12))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(al,"AbstractBarycenterPortDistributor/lambda$0$Type",1698),D(832,1,xN,p3t),l.gg=function(e,n,r,s,o,h){},l.ig=function(e,n,r){},l.jg=function(e,n,r,s){},l.eg=function(){return!1},l.fg=function(){this.c=this.e.a,this.g=this.f.g},l.hg=function(e,n){n[e][0].c.p=e},l.kg=function(){return!1},l.vg=function(e,n,r,s){r?Whe(this,e):(Jhe(this,e,s),gpe(this,e,n)),e.c.length>1&&(Ie(Me(X(Pa((vn(0,e.c.length),u(e.c[0],10))),(De(),Ev))))?kde(e,this.d,u(this,669)):(mn(),Ds(e,this.d)),kce(this.e,e))},l.lg=function(e,n,r,s){var o,h,d,m,k,T,A;for(n!=jte(r,e.length)&&(h=e[n-(r?1:-1)],j3t(this.f,h,r?(To(),ku):(To(),vl))),o=e[n][0],A=!s||o.k==(Un(),Ms),T=id(e[n]),this.vg(T,A,!1,r),d=0,k=new G(T);k.a<k.c.c.length;)m=u(et(k),10),e[n][d++]=m;return!1},l.mg=function(e,n){var r,s,o,h,d;for(d=jte(n,e.length),h=id(e[d]),this.vg(h,!1,!0,n),r=0,o=new G(h);o.a<o.c.c.length;)s=u(et(o),10),e[d][r++]=s;return!1},I(al,"BarycenterHeuristic",832),D(667,1,{667:1},bUt),l.Ib=function(){return"BarycenterState [node="+this.c+", summedWeight="+this.d+", degree="+this.b+", barycenter="+this.a+", visited="+this.e+"]"},l.b=0,l.d=0,l.e=!1;var nke=I(al,"BarycenterHeuristic/BarycenterState",667);D(1865,1,Xr,gUt),l.Ne=function(e,n){return $yn(this.a,u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(al,"BarycenterHeuristic/lambda$0$Type",1865),D(831,1,xN,Wxt),l.fg=function(){},l.gg=function(e,n,r,s,o,h){},l.jg=function(e,n,r,s){},l.hg=function(e,n){this.a[e]=Vt(nke,{3:1,4:1,5:1,2117:1},667,n[e].length,0,1),this.b[e]=Vt(rke,{3:1,4:1,5:1,2118:1},239,n[e].length,0,1)},l.ig=function(e,n,r){Ole(this,r[e][n],!0)},l.c=!1,I(al,"ForsterConstraintResolver",831),D(239,1,{239:1},Sne,tpe),l.Ib=function(){var e,n;for(n=new yb,n.a+="[",e=0;e<this.d.length;e++)ni(n,Wle(this.d[e])),td(this.g,this.d[0]).a!=null&&ni(ni((n.a+="<",n),fin(td(this.g,this.d[0]).a)),">"),e<this.d.length-1&&(n.a+=ao);return(n.a+="]",n).a},l.a=0,l.c=0,l.f=0;var rke=I(al,"ForsterConstraintResolver/ConstraintGroup",239);D(1860,1,ir,pUt),l.Cd=function(e){Ole(this.a,u(e,10),!1)},I(al,"ForsterConstraintResolver/lambda$0$Type",1860),D(219,1,{219:1,230:1},rpe),l.gg=function(e,n,r,s,o,h){},l.hg=function(e,n){},l.fg=function(){this.r=Vt(Fr,ii,28,this.n,15,1)},l.ig=function(e,n,r){var s,o;o=r[e][n],s=o.e,s&&ge(this.b,s)},l.jg=function(e,n,r,s){++this.n},l.Ib=function(){return ppe(this.e,new Os)},l.g=!1,l.i=!1,l.n=0,l.s=!1,I(al,"GraphInfoHolder",219),D(1905,1,xN,HJ),l.gg=function(e,n,r,s,o,h){},l.hg=function(e,n){},l.jg=function(e,n,r,s){},l.ug=function(e,n,r){return r&&n>0?fst(this.a,e[n-1],e[n]):!r&&n<e.length-1?fst(this.a,e[n],e[n+1]):aat(this.a,e[n],r?(ve(),Gn):(ve(),Jn)),v6n(this,e,n,r)},l.fg=function(){this.d=Vt(Fr,ii,28,this.c,15,1),this.a=new dI(this.d)},l.ig=function(e,n,r){var s;s=r[e][n],this.c+=s.j.c.length},l.c=0,I(al,"GreedyPortDistributor",1905),D(1421,1,_o,Zet),l.rg=function(e){return Bbn(u(e,36))},l.Kf=function(e,n){I9n(u(e,36),n)};var ike;I(al,"InteractiveCrossingMinimizer",1421),D(1422,1,Xr,mUt),l.Ne=function(e,n){return xyn(this,u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(al,"InteractiveCrossingMinimizer/1",1422),D(514,1,{514:1,106:1,47:1},Xnt),l.rg=function(e){var n;return u(e,36),n=rz(ske),ri(n,(Ua(),Qc),(Za(),uG)),n},l.Kf=function(e,n){jEn(this,u(e,36),n)},l.e=0;var ske;I(al,"LayerSweepCrossingMinimizer",514),D(1418,1,ir,vUt),l.Cd=function(e){L7n(this.a,u(e,219))},I(al,"LayerSweepCrossingMinimizer/0methodref$compareDifferentRandomizedLayouts$Type",1418),D(1419,1,ir,yUt),l.Cd=function(e){Pbn(this.a,u(e,219))},I(al,"LayerSweepCrossingMinimizer/1methodref$minimizeCrossingsNoCounter$Type",1419),D(1420,1,ir,xUt),l.Cd=function(e){Ige(this.a,u(e,219))},I(al,"LayerSweepCrossingMinimizer/2methodref$minimizeCrossingsWithCounter$Type",1420),D(463,22,{3:1,34:1,22:1,463:1},Ort);var hP,UA,eK,ake=Lr(al,"LayerSweepCrossingMinimizer/CrossMinType",463,Pr,jfn,Von),oke;D(1417,1,Kr,VJ),l.Mb=function(e){return F4t(),u(e,30).a.c.length==0},I(al,"LayerSweepCrossingMinimizer/lambda$0$Type",1417),D(1862,1,xN,ire),l.fg=function(){},l.gg=function(e,n,r,s,o,h){},l.jg=function(e,n,r,s){},l.hg=function(e,n){n[e][0].c.p=e,this.b[e]=Vt(cke,{3:1,4:1,5:1,2043:1},668,n[e].length,0,1)},l.ig=function(e,n,r){var s;s=r[e][n],s.p=n,ls(this.b[e],n,new YD)},I(al,"LayerSweepTypeDecider",1862),D(668,1,{668:1},YD),l.Ib=function(){return"NodeInfo [connectedEdges="+this.a+", hierarchicalInfluence="+this.b+", randomInfluence="+this.c+"]"},l.a=0,l.b=0,l.c=0;var cke=I(al,"LayerSweepTypeDecider/NodeInfo",668);D(1863,1,t0,UJ),l.Lb=function(e){return TS(new sd(u(e,12).b))},l.Fb=function(e){return this===e},l.Mb=function(e){return TS(new sd(u(e,12).b))},I(al,"LayerSweepTypeDecider/lambda$0$Type",1863),D(1864,1,t0,$8),l.Lb=function(e){return TS(new sd(u(e,12).b))},l.Fb=function(e){return this===e},l.Mb=function(e){return TS(new sd(u(e,12).b))},I(al,"LayerSweepTypeDecider/lambda$1$Type",1864),D(1906,413,x7t,AWt),l.tg=function(e,n,r){var s,o,h,d,m,k,T,A,P;switch(T=this.g,r.g){case 1:{for(s=0,o=0,k=new G(e.j);k.a<k.c.c.length;)d=u(et(k),12),d.e.c.length!=0&&(++s,d.j==(ve(),Hn)&&++o);for(h=n+o,P=n+s,m=Ym(e,(To(),vl)).Kc();m.Ob();)d=u(m.Pb(),12),d.j==(ve(),Hn)?(T[d.p]=h,--h):(T[d.p]=P,--P);return s}case 2:{for(A=0,m=Ym(e,(To(),ku)).Kc();m.Ob();)d=u(m.Pb(),12),++A,T[d.p]=n+A;return A}default:throw at(new DM)}},I(al,"LayerTotalPortDistributor",1906),D(669,832,{669:1,230:1},Yoe),l.vg=function(e,n,r,s){r?Whe(this,e):(Jhe(this,e,s),gpe(this,e,n)),e.c.length>1&&(Ie(Me(X(Pa((vn(0,e.c.length),u(e.c[0],10))),(De(),Ev))))?kde(e,this.d,this):(mn(),Ds(e,this.d)),Ie(Me(X(Pa((vn(0,e.c.length),u(e.c[0],10))),Ev)))||kce(this.e,e))},I(al,"ModelOrderBarycenterHeuristic",669),D(1866,1,Xr,kUt),l.Ne=function(e,n){return x4n(this.a,u(e,10),u(n,10))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(al,"ModelOrderBarycenterHeuristic/lambda$0$Type",1866),D(1423,1,_o,tnt),l.rg=function(e){var n;return u(e,36),n=rz(uke),ri(n,(Ua(),Qc),(Za(),uG)),n},l.Kf=function(e,n){ihn((u(e,36),n))};var uke;I(al,"NoCrossingMinimizer",1423),D(809,413,x7t,ywt),l.tg=function(e,n,r){var s,o,h,d,m,k,T,A,P,$,U;switch(P=this.g,r.g){case 1:{for(o=0,h=0,A=new G(e.j);A.a<A.c.c.length;)k=u(et(A),12),k.e.c.length!=0&&(++o,k.j==(ve(),Hn)&&++h);for(s=1/(o+1),d=n+h*s,U=n+1-s,T=Ym(e,(To(),vl)).Kc();T.Ob();)k=u(T.Pb(),12),k.j==(ve(),Hn)?(P[k.p]=d,d-=s):(P[k.p]=U,U-=s);break}case 2:{for(m=0,A=new G(e.j);A.a<A.c.c.length;)k=u(et(A),12),k.g.c.length==0||++m;for(s=1/(m+1),$=n+s,T=Ym(e,(To(),ku)).Kc();T.Ob();)k=u(T.Pb(),12),P[k.p]=$,$+=s;break}default:throw at(new zn("Port type is undefined"))}return 1},I(al,"NodeRelativePortDistributor",809),D(822,1,{},bee,Dfe),I(al,"SweepCopy",822),D(1861,1,xN,gle),l.hg=function(e,n){},l.fg=function(){var e;e=Vt(Fr,ii,28,this.f,15,1),this.d=new DUt(e),this.a=new dI(e)},l.gg=function(e,n,r,s,o,h){var d;d=u(Oe(h[e][n].j,r),12),o.c==d&&o.c.i.c==o.d.i.c&&++this.e[e]},l.ig=function(e,n,r){var s;s=r[e][n],this.c[e]=this.c[e]|s.k==(Un(),uu)},l.jg=function(e,n,r,s){var o;o=u(Oe(s[e][n].j,r),12),o.p=this.f++,o.g.c.length+o.e.c.length>1&&(o.j==(ve(),Jn)?this.b[e]=!0:o.j==Gn&&e>0&&(this.b[e-1]=!0))},l.f=0,I(z0,"AllCrossingsCounter",1861),D(595,1,{},Yq),l.b=0,l.d=0,I(z0,"BinaryIndexedTree",595),D(532,1,{},dI);var JAt,nK;I(z0,"CrossingsCounter",532),D(1950,1,Xr,EUt),l.Ne=function(e,n){return Dun(this.a,u(e,12),u(n,12))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(z0,"CrossingsCounter/lambda$0$Type",1950),D(1951,1,Xr,TUt),l.Ne=function(e,n){return Mun(this.a,u(e,12),u(n,12))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(z0,"CrossingsCounter/lambda$1$Type",1951),D(1952,1,Xr,CUt),l.Ne=function(e,n){return Iun(this.a,u(e,12),u(n,12))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(z0,"CrossingsCounter/lambda$2$Type",1952),D(1953,1,Xr,SUt),l.Ne=function(e,n){return Oun(this.a,u(e,12),u(n,12))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(z0,"CrossingsCounter/lambda$3$Type",1953),D(1954,1,ir,_Ut),l.Cd=function(e){O0n(this.a,u(e,12))},I(z0,"CrossingsCounter/lambda$4$Type",1954),D(1955,1,Kr,AUt),l.Mb=function(e){return iin(this.a,u(e,12))},I(z0,"CrossingsCounter/lambda$5$Type",1955),D(1956,1,ir,LUt),l.Cd=function(e){lQt(this,e)},I(z0,"CrossingsCounter/lambda$6$Type",1956),D(1957,1,ir,xXt),l.Cd=function(e){var n;LE(),Ob(this.b,(n=this.a,u(e,12),n))},I(z0,"CrossingsCounter/lambda$7$Type",1957),D(839,1,t0,yR),l.Lb=function(e){return LE(),qi(u(e,12),(oe(),ml))},l.Fb=function(e){return this===e},l.Mb=function(e){return LE(),qi(u(e,12),(oe(),ml))},I(z0,"CrossingsCounter/lambda$8$Type",839),D(1949,1,{},DUt),I(z0,"HyperedgeCrossingsCounter",1949),D(477,1,{34:1,477:1},TZt),l.Fd=function(e){return Iwn(this,u(e,477))},l.b=0,l.c=0,l.e=0,l.f=0;var f_n=I(z0,"HyperedgeCrossingsCounter/Hyperedge",477);D(374,1,{34:1,374:1},Yz),l.Fd=function(e){return Gxn(this,u(e,374))},l.b=0,l.c=0;var lke=I(z0,"HyperedgeCrossingsCounter/HyperedgeCorner",374);D(531,22,{3:1,34:1,22:1,531:1},Jwt);var GA,KA,hke=Lr(z0,"HyperedgeCrossingsCounter/HyperedgeCorner/Type",531,Pr,Phn,Uon),fke;D(1425,1,_o,ent),l.rg=function(e){return u(X(u(e,36),(oe(),lu)),21).Hc((Co(),Uh))?dke:null},l.Kf=function(e,n){ryn(this,u(e,36),n)};var dke;I(Ao,"InteractiveNodePlacer",1425),D(1426,1,_o,nnt),l.rg=function(e){return u(X(u(e,36),(oe(),lu)),21).Hc((Co(),Uh))?gke:null},l.Kf=function(e,n){zmn(this,u(e,36),n)};var gke,rK,iK;I(Ao,"LinearSegmentsNodePlacer",1426),D(261,1,{34:1,261:1},W2t),l.Fd=function(e){return brn(this,u(e,261))},l.Fb=function(e){var n;return Lt(e,261)?(n=u(e,261),this.b==n.b):!1},l.Hb=function(){return this.b},l.Ib=function(){return"ls"+Hb(this.e)},l.a=0,l.b=0,l.c=-1,l.d=-1,l.g=0;var pke=I(Ao,"LinearSegmentsNodePlacer/LinearSegment",261);D(1428,1,_o,Yte),l.rg=function(e){return u(X(u(e,36),(oe(),lu)),21).Hc((Co(),Uh))?bke:null},l.Kf=function(e,n){bSn(this,u(e,36),n)},l.b=0,l.g=0;var bke;I(Ao,"NetworkSimplexPlacer",1428),D(1447,1,Xr,GJ),l.Ne=function(e,n){return jc(u(e,17).a,u(n,17).a)},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Ao,"NetworkSimplexPlacer/0methodref$compare$Type",1447),D(1449,1,Xr,KJ),l.Ne=function(e,n){return jc(u(e,17).a,u(n,17).a)},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Ao,"NetworkSimplexPlacer/1methodref$compare$Type",1449),D(655,1,{655:1},kXt);var d_n=I(Ao,"NetworkSimplexPlacer/EdgeRep",655);D(412,1,{412:1},Vyt),l.b=!1;var g_n=I(Ao,"NetworkSimplexPlacer/NodeRep",412);D(515,13,{3:1,4:1,20:1,31:1,56:1,13:1,16:1,15:1,59:1,515:1},IKt),I(Ao,"NetworkSimplexPlacer/Path",515),D(1429,1,{},WJ),l.Kb=function(e){return u(e,18).d.i.k},I(Ao,"NetworkSimplexPlacer/Path/lambda$0$Type",1429),D(1430,1,Kr,YJ),l.Mb=function(e){return u(e,273)==(Un(),fa)},I(Ao,"NetworkSimplexPlacer/Path/lambda$1$Type",1430),D(1431,1,{},XJ),l.Kb=function(e){return u(e,18).d.i},I(Ao,"NetworkSimplexPlacer/Path/lambda$2$Type",1431),D(1432,1,Kr,MUt),l.Mb=function(e){return cZt(hle(u(e,10)))},I(Ao,"NetworkSimplexPlacer/Path/lambda$3$Type",1432),D(1433,1,Kr,QJ),l.Mb=function(e){return gun(u(e,12))},I(Ao,"NetworkSimplexPlacer/lambda$0$Type",1433),D(1434,1,ir,EXt),l.Cd=function(e){Yin(this.a,this.b,u(e,12))},I(Ao,"NetworkSimplexPlacer/lambda$1$Type",1434),D(1443,1,ir,IUt),l.Cd=function(e){x5n(this.a,u(e,18))},I(Ao,"NetworkSimplexPlacer/lambda$10$Type",1443),D(1444,1,{},JJ),l.Kb=function(e){return rh(),new ln(null,new gn(u(e,30).a,16))},I(Ao,"NetworkSimplexPlacer/lambda$11$Type",1444),D(1445,1,ir,OUt),l.Cd=function(e){p8n(this.a,u(e,10))},I(Ao,"NetworkSimplexPlacer/lambda$12$Type",1445),D(1446,1,{},ZJ),l.Kb=function(e){return rh(),he(u(e,125).e)},I(Ao,"NetworkSimplexPlacer/lambda$13$Type",1446),D(1448,1,{},tZ),l.Kb=function(e){return rh(),he(u(e,125).e)},I(Ao,"NetworkSimplexPlacer/lambda$15$Type",1448),D(1450,1,Kr,eZ),l.Mb=function(e){return rh(),u(e,412).c.k==(Un(),xs)},I(Ao,"NetworkSimplexPlacer/lambda$17$Type",1450),D(1451,1,Kr,nZ),l.Mb=function(e){return rh(),u(e,412).c.j.c.length>1},I(Ao,"NetworkSimplexPlacer/lambda$18$Type",1451),D(1452,1,ir,rne),l.Cd=function(e){twn(this.c,this.b,this.d,this.a,u(e,412))},l.c=0,l.d=0,I(Ao,"NetworkSimplexPlacer/lambda$19$Type",1452),D(1435,1,{},rZ),l.Kb=function(e){return rh(),new ln(null,new gn(u(e,30).a,16))},I(Ao,"NetworkSimplexPlacer/lambda$2$Type",1435),D(1453,1,ir,NUt),l.Cd=function(e){Qin(this.a,u(e,12))},l.a=0,I(Ao,"NetworkSimplexPlacer/lambda$20$Type",1453),D(1454,1,{},iZ),l.Kb=function(e){return rh(),new ln(null,new gn(u(e,30).a,16))},I(Ao,"NetworkSimplexPlacer/lambda$21$Type",1454),D(1455,1,ir,PUt),l.Cd=function(e){usn(this.a,u(e,10))},I(Ao,"NetworkSimplexPlacer/lambda$22$Type",1455),D(1456,1,Kr,sZ),l.Mb=function(e){return cZt(e)},I(Ao,"NetworkSimplexPlacer/lambda$23$Type",1456),D(1457,1,{},aZ),l.Kb=function(e){return rh(),new ln(null,new gn(u(e,30).a,16))},I(Ao,"NetworkSimplexPlacer/lambda$24$Type",1457),D(1458,1,Kr,FUt),l.Mb=function(e){return min(this.a,u(e,10))},I(Ao,"NetworkSimplexPlacer/lambda$25$Type",1458),D(1459,1,ir,TXt),l.Cd=function(e){C4n(this.a,this.b,u(e,10))},I(Ao,"NetworkSimplexPlacer/lambda$26$Type",1459),D(1460,1,Kr,n6),l.Mb=function(e){return rh(),!go(u(e,18))},I(Ao,"NetworkSimplexPlacer/lambda$27$Type",1460),D(1461,1,Kr,xR),l.Mb=function(e){return rh(),!go(u(e,18))},I(Ao,"NetworkSimplexPlacer/lambda$28$Type",1461),D(1462,1,{},BUt),l.Ve=function(e,n){return Xin(this.a,u(e,30),u(n,30))},I(Ao,"NetworkSimplexPlacer/lambda$29$Type",1462),D(1436,1,{},oZ),l.Kb=function(e){return rh(),new ln(null,new Lm(new rr(sr(_s(u(e,10)).a.Kc(),new z))))},I(Ao,"NetworkSimplexPlacer/lambda$3$Type",1436),D(1437,1,Kr,cZ),l.Mb=function(e){return rh(),S1n(u(e,18))},I(Ao,"NetworkSimplexPlacer/lambda$4$Type",1437),D(1438,1,ir,RUt),l.Cd=function(e){T7n(this.a,u(e,18))},I(Ao,"NetworkSimplexPlacer/lambda$5$Type",1438),D(1439,1,{},uZ),l.Kb=function(e){return rh(),new ln(null,new gn(u(e,30).a,16))},I(Ao,"NetworkSimplexPlacer/lambda$6$Type",1439),D(1440,1,Kr,kR),l.Mb=function(e){return rh(),u(e,10).k==(Un(),xs)},I(Ao,"NetworkSimplexPlacer/lambda$7$Type",1440),D(1441,1,{},lZ),l.Kb=function(e){return rh(),new ln(null,new Lm(new rr(sr(Dg(u(e,10)).a.Kc(),new z))))},I(Ao,"NetworkSimplexPlacer/lambda$8$Type",1441),D(1442,1,Kr,cC),l.Mb=function(e){return rh(),dun(u(e,18))},I(Ao,"NetworkSimplexPlacer/lambda$9$Type",1442),D(1424,1,_o,rnt),l.rg=function(e){return u(X(u(e,36),(oe(),lu)),21).Hc((Co(),Uh))?wke:null},l.Kf=function(e,n){iTn(u(e,36),n)};var wke;I(Ao,"SimpleNodePlacer",1424),D(185,1,{185:1},m5),l.Ib=function(){var e;return e="",this.c==(Gd(),Dv)?e+=Ak:this.c==Gp&&(e+=_k),this.o==(nd(),Fw)?e+=xut:this.o==yd?e+="UP":e+="BALANCED",e},I(Qb,"BKAlignedLayout",185),D(523,22,{3:1,34:1,22:1,523:1},Zwt);var Gp,Dv,mke=Lr(Qb,"BKAlignedLayout/HDirection",523,Pr,Fhn,Gon),vke;D(522,22,{3:1,34:1,22:1,522:1},tmt);var Fw,yd,yke=Lr(Qb,"BKAlignedLayout/VDirection",522,Pr,Bhn,Kon),xke;D(1699,1,{},CXt),I(Qb,"BKAligner",1699),D(1702,1,{},Fhe),I(Qb,"BKCompactor",1702),D(663,1,{663:1},hZ),l.a=0,I(Qb,"BKCompactor/ClassEdge",663),D(466,1,{466:1},LKt),l.a=null,l.b=0,I(Qb,"BKCompactor/ClassNode",466),D(1427,1,_o,LXt),l.rg=function(e){return u(X(u(e,36),(oe(),lu)),21).Hc((Co(),Uh))?kke:null},l.Kf=function(e,n){NSn(this,u(e,36),n)},l.d=!1;var kke;I(Qb,"BKNodePlacer",1427),D(1700,1,{},fZ),l.d=0,I(Qb,"NeighborhoodInformation",1700),D(1701,1,Xr,jUt),l.Ne=function(e,n){return cgn(this,u(e,42),u(n,42))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Qb,"NeighborhoodInformation/NeighborComparator",1701),D(823,1,{}),I(Qb,"ThresholdStrategy",823),D(1825,823,{},DKt),l.wg=function(e,n,r){return this.a.o==(nd(),yd)?Zi:Vs},l.xg=function(){},I(Qb,"ThresholdStrategy/NullThresholdStrategy",1825),D(587,1,{587:1},DXt),l.c=!1,l.d=!1,I(Qb,"ThresholdStrategy/Postprocessable",587),D(1826,823,{},MKt),l.wg=function(e,n,r){var s,o,h;return o=n==r,s=this.a.a[r.p]==n,o||s?(h=e,this.a.c==(Gd(),Dv)?(o&&(h=yct(this,n,!0)),!isNaN(h)&&!isFinite(h)&&s&&(h=yct(this,r,!1))):(o&&(h=yct(this,n,!0)),!isNaN(h)&&!isFinite(h)&&s&&(h=yct(this,r,!1))),h):e},l.xg=function(){for(var e,n,r,s,o;this.d.b!=0;)o=u(Zhn(this.d),587),s=uge(this,o),s.a&&(e=s.a,r=Ie(this.a.f[this.a.g[o.b.p].p]),!(!r&&!go(e)&&e.c.i.c==e.d.i.c)&&(n=gde(this,o),n||xin(this.e,o)));for(;this.e.a.c.length!=0;)gde(this,u(gue(this.e),587))},I(Qb,"ThresholdStrategy/SimpleThresholdStrategy",1826),D(645,1,{645:1,188:1,196:1},dZ),l.dg=function(){return Ece(this)},l.qg=function(){return Ece(this)};var I1t;I(vlt,"EdgeRouterFactory",645),D(1485,1,_o,int),l.rg=function(e){return Ukn(u(e,36))},l.Kf=function(e,n){hTn(u(e,36),n)};var Eke,Tke,Cke,Ske,_ke,ZAt,Ake,Lke;I(vlt,"OrthogonalEdgeRouter",1485),D(1478,1,_o,AXt),l.rg=function(e){return dyn(u(e,36))},l.Kf=function(e,n){NCn(this,u(e,36),n)};var Dke,Mke,Ike,Oke,fP,Nke;I(vlt,"PolylineEdgeRouter",1478),D(1479,1,t0,pZ),l.Lb=function(e){return z4t(u(e,10))},l.Fb=function(e){return this===e},l.Mb=function(e){return z4t(u(e,10))},I(vlt,"PolylineEdgeRouter/1",1479),D(1872,1,Kr,bZ),l.Mb=function(e){return u(e,132).c==(C1(),o2)},I(M1,"HyperEdgeCycleDetector/lambda$0$Type",1872),D(1873,1,{},wZ),l.Ze=function(e){return u(e,132).d},I(M1,"HyperEdgeCycleDetector/lambda$1$Type",1873),D(1874,1,Kr,mZ),l.Mb=function(e){return u(e,132).c==(C1(),o2)},I(M1,"HyperEdgeCycleDetector/lambda$2$Type",1874),D(1875,1,{},vZ),l.Ze=function(e){return u(e,132).d},I(M1,"HyperEdgeCycleDetector/lambda$3$Type",1875),D(1876,1,{},yZ),l.Ze=function(e){return u(e,132).d},I(M1,"HyperEdgeCycleDetector/lambda$4$Type",1876),D(1877,1,{},gZ),l.Ze=function(e){return u(e,132).d},I(M1,"HyperEdgeCycleDetector/lambda$5$Type",1877),D(118,1,{34:1,118:1},eO),l.Fd=function(e){return wrn(this,u(e,118))},l.Fb=function(e){var n;return Lt(e,118)?(n=u(e,118),this.g==n.g):!1},l.Hb=function(){return this.g},l.Ib=function(){var e,n,r,s;for(e=new eh("{"),s=new G(this.n);s.a<s.c.c.length;)r=u(et(s),12),n=EO(r.i),n==null&&(n="n"+PZt(r.i)),e.a+=""+n,s.a<s.c.c.length&&(e.a+=",");return e.a+="}",e.a},l.a=0,l.b=0,l.c=NaN,l.d=0,l.g=0,l.i=0,l.o=0,l.s=NaN,I(M1,"HyperEdgeSegment",118),D(132,1,{132:1},J2),l.Ib=function(){return this.a+"->"+this.b+" ("+Fsn(this.c)+")"},l.d=0,I(M1,"HyperEdgeSegmentDependency",132),D(528,22,{3:1,34:1,22:1,528:1},emt);var o2,F3,Pke=Lr(M1,"HyperEdgeSegmentDependency/DependencyType",528,Pr,Rhn,Won),Fke;D(1878,1,{},$Ut),I(M1,"HyperEdgeSegmentSplitter",1878),D(1879,1,{},IWt),l.a=0,l.b=0,I(M1,"HyperEdgeSegmentSplitter/AreaRating",1879),D(339,1,{339:1},yit),l.a=0,l.b=0,l.c=0,I(M1,"HyperEdgeSegmentSplitter/FreeArea",339),D(1880,1,Xr,r6),l.Ne=function(e,n){return Fan(u(e,118),u(n,118))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(M1,"HyperEdgeSegmentSplitter/lambda$0$Type",1880),D(1881,1,ir,ine),l.Cd=function(e){ldn(this.a,this.d,this.c,this.b,u(e,118))},l.b=0,I(M1,"HyperEdgeSegmentSplitter/lambda$1$Type",1881),D(1882,1,{},xZ),l.Kb=function(e){return new ln(null,new gn(u(e,118).e,16))},I(M1,"HyperEdgeSegmentSplitter/lambda$2$Type",1882),D(1883,1,{},kZ),l.Kb=function(e){return new ln(null,new gn(u(e,118).j,16))},I(M1,"HyperEdgeSegmentSplitter/lambda$3$Type",1883),D(1884,1,{},EZ),l.Ye=function(e){return Rt(Ht(e))},I(M1,"HyperEdgeSegmentSplitter/lambda$4$Type",1884),D(664,1,{},Uit),l.a=0,l.b=0,l.c=0,I(M1,"OrthogonalRoutingGenerator",664),D(1703,1,{},TZ),l.Kb=function(e){return new ln(null,new gn(u(e,118).e,16))},I(M1,"OrthogonalRoutingGenerator/lambda$0$Type",1703),D(1704,1,{},CZ),l.Kb=function(e){return new ln(null,new gn(u(e,118).j,16))},I(M1,"OrthogonalRoutingGenerator/lambda$1$Type",1704),D(670,1,{}),I(ylt,"BaseRoutingDirectionStrategy",670),D(1870,670,{},PKt),l.yg=function(e,n,r){var s,o,h,d,m,k,T,A,P,$,U,J,tt;if(!(e.r&&!e.q))for(A=n+e.o*r,T=new G(e.n);T.a<T.c.c.length;)for(k=u(et(T),12),P=dc(lt(ut(la,1),ue,8,0,[k.i.n,k.n,k.a])).a,m=new G(k.g);m.a<m.c.c.length;)d=u(et(m),18),go(d)||(J=d.d,tt=dc(lt(ut(la,1),ue,8,0,[J.i.n,J.n,J.a])).a,b.Math.abs(P-tt)>n0&&(h=A,o=e,s=new ae(P,h),Zr(d.a,s),ev(this,d,o,s,!1),$=e.r,$&&(U=Rt(Ht(jh($.e,0))),s=new ae(U,h),Zr(d.a,s),ev(this,d,o,s,!1),h=n+$.o*r,o=$,s=new ae(U,h),Zr(d.a,s),ev(this,d,o,s,!1)),s=new ae(tt,h),Zr(d.a,s),ev(this,d,o,s,!1)))},l.zg=function(e){return e.i.n.a+e.n.a+e.a.a},l.Ag=function(){return ve(),Er},l.Bg=function(){return ve(),Hn},I(ylt,"NorthToSouthRoutingStrategy",1870),D(1871,670,{},FKt),l.yg=function(e,n,r){var s,o,h,d,m,k,T,A,P,$,U,J,tt;if(!(e.r&&!e.q))for(A=n-e.o*r,T=new G(e.n);T.a<T.c.c.length;)for(k=u(et(T),12),P=dc(lt(ut(la,1),ue,8,0,[k.i.n,k.n,k.a])).a,m=new G(k.g);m.a<m.c.c.length;)d=u(et(m),18),go(d)||(J=d.d,tt=dc(lt(ut(la,1),ue,8,0,[J.i.n,J.n,J.a])).a,b.Math.abs(P-tt)>n0&&(h=A,o=e,s=new ae(P,h),Zr(d.a,s),ev(this,d,o,s,!1),$=e.r,$&&(U=Rt(Ht(jh($.e,0))),s=new ae(U,h),Zr(d.a,s),ev(this,d,o,s,!1),h=n-$.o*r,o=$,s=new ae(U,h),Zr(d.a,s),ev(this,d,o,s,!1)),s=new ae(tt,h),Zr(d.a,s),ev(this,d,o,s,!1)))},l.zg=function(e){return e.i.n.a+e.n.a+e.a.a},l.Ag=function(){return ve(),Hn},l.Bg=function(){return ve(),Er},I(ylt,"SouthToNorthRoutingStrategy",1871),D(1869,670,{},BKt),l.yg=function(e,n,r){var s,o,h,d,m,k,T,A,P,$,U,J,tt;if(!(e.r&&!e.q))for(A=n+e.o*r,T=new G(e.n);T.a<T.c.c.length;)for(k=u(et(T),12),P=dc(lt(ut(la,1),ue,8,0,[k.i.n,k.n,k.a])).b,m=new G(k.g);m.a<m.c.c.length;)d=u(et(m),18),go(d)||(J=d.d,tt=dc(lt(ut(la,1),ue,8,0,[J.i.n,J.n,J.a])).b,b.Math.abs(P-tt)>n0&&(h=A,o=e,s=new ae(h,P),Zr(d.a,s),ev(this,d,o,s,!0),$=e.r,$&&(U=Rt(Ht(jh($.e,0))),s=new ae(h,U),Zr(d.a,s),ev(this,d,o,s,!0),h=n+$.o*r,o=$,s=new ae(h,U),Zr(d.a,s),ev(this,d,o,s,!0)),s=new ae(h,tt),Zr(d.a,s),ev(this,d,o,s,!0)))},l.zg=function(e){return e.i.n.b+e.n.b+e.a.b},l.Ag=function(){return ve(),Jn},l.Bg=function(){return ve(),Gn},I(ylt,"WestToEastRoutingStrategy",1869),D(828,1,{},Rkt),l.Ib=function(){return Hb(this.a)},l.b=0,l.c=!1,l.d=!1,l.f=0,I(f3,"NubSpline",828),D(418,1,{418:1},Kde,Fne),I(f3,"NubSpline/PolarCP",418),D(1480,1,_o,Ahe),l.rg=function(e){return n3n(u(e,36))},l.Kf=function(e,n){ZCn(this,u(e,36),n)};var Bke,Rke,jke,$ke,zke;I(f3,"SplineEdgeRouter",1480),D(274,1,{274:1},vq),l.Ib=function(){return this.a+" ->("+this.c+") "+this.b},l.c=0,I(f3,"SplineEdgeRouter/Dependency",274),D(464,22,{3:1,34:1,22:1,464:1},nmt);var c2,Z5,qke=Lr(f3,"SplineEdgeRouter/SideToProcess",464,Pr,Vhn,Yon),Hke;D(1481,1,Kr,SZ),l.Mb=function(e){return D_(),!u(e,131).o},I(f3,"SplineEdgeRouter/lambda$0$Type",1481),D(1482,1,{},_Z),l.Ze=function(e){return D_(),u(e,131).v+1},I(f3,"SplineEdgeRouter/lambda$1$Type",1482),D(1483,1,ir,MXt),l.Cd=function(e){wun(this.a,this.b,u(e,42))},I(f3,"SplineEdgeRouter/lambda$2$Type",1483),D(1484,1,ir,IXt),l.Cd=function(e){mun(this.a,this.b,u(e,42))},I(f3,"SplineEdgeRouter/lambda$3$Type",1484),D(131,1,{34:1,131:1},a1e,Vkt),l.Fd=function(e){return yrn(this,u(e,131))},l.b=0,l.e=!1,l.f=0,l.g=0,l.j=!1,l.k=!1,l.n=0,l.o=!1,l.p=!1,l.q=!1,l.s=0,l.u=0,l.v=0,l.F=0,I(f3,"SplineSegment",131),D(467,1,{467:1},AZ),l.a=0,l.b=!1,l.c=!1,l.d=!1,l.e=!1,l.f=0,I(f3,"SplineSegment/EdgeInformation",467),D(1198,1,{},uC),I(jg,z8t,1198),D(1199,1,Xr,LZ),l.Ne=function(e,n){return R5n(u(e,121),u(n,121))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(jg,r2e,1199),D(1197,1,{},WWt),I(jg,"MrTree",1197),D(405,22,{3:1,34:1,22:1,405:1,188:1,196:1},q$),l.dg=function(){return A1e(this)},l.qg=function(){return A1e(this)};var sK,WA,YA,XA,tLt=Lr(jg,"TreeLayoutPhases",405,Pr,K1n,Xon),Vke;D(1112,205,mw,kZt),l.rf=function(e,n){var r,s,o,h,d,m,k,T;for(Ie(Me(ne(e,(Cc(),CLt))))||sq((r=new by((xy(),new my(e))),r)),d=n.eh(Elt),d.Ug("build tGraph",1),m=(k=new FI,Qo(k,e),Zt(k,(ji(),JA),e),T=new _r,MEn(e,k,T),XEn(e,k,T),k),d.Vg(),d=n.eh(Elt),d.Ug("Split graph",1),h=BEn(this.a,m),d.Vg(),o=new G(h);o.a<o.c.c.length;)s=u(et(o),121),zyn(this.b,s,n.eh(.5999999940395355/h.c.length));d=n.eh(Elt),d.Ug("Pack components",1),m=PSn(h),d.Vg(),d=n.eh(Elt),d.Ug("Apply layout results",1),T9n(m),d.Vg()},I(jg,"TreeLayoutProvider",1112),D(1894,1,F0,MZ),l.Jc=function(e){Fa(this,e)},l.Kc=function(){return mn(),yE(),mT},I(jg,"TreeUtil/1",1894),D(1895,1,F0,IZ),l.Jc=function(e){Fa(this,e)},l.Kc=function(){return mn(),yE(),mT},I(jg,"TreeUtil/2",1895),D(1885,1,Kr,OZ),l.Mb=function(e){return Ie(Me(X(u(e,39),(ji(),u2))))},I(jg,"TreeUtil/lambda$0$Type",1885),D(1891,1,Kr,zUt),l.Mb=function(e){return this.a.Hc(u(e,39))},I(jg,"TreeUtil/lambda$10$Type",1891),D(1892,1,{},qUt),l.Kb=function(e){return G1n(this.a,u(e,39))},I(jg,"TreeUtil/lambda$11$Type",1892),D(1893,1,Kr,OXt),l.Mb=function(e){return V0n(this.a,this.b,u(e,39))},I(jg,"TreeUtil/lambda$12$Type",1893),D(1886,1,Kr,HUt),l.Mb=function(e){return D2n(this.a,u(e,65))},I(jg,"TreeUtil/lambda$3$Type",1886),D(1887,1,Xr,DZ),l.Ne=function(e,n){return Ban(u(e,65),u(n,65))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(jg,"TreeUtil/lambda$4$Type",1887),D(1888,1,Kr,VUt),l.Mb=function(e){return M2n(this.a,u(e,65))},I(jg,"TreeUtil/lambda$7$Type",1888),D(1889,1,Xr,NZ),l.Ne=function(e,n){return Ran(u(e,65),u(n,65))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(jg,"TreeUtil/lambda$8$Type",1889),D(1890,1,{},PZ),l.Kb=function(e){return u(e,65).b},I(jg,"TreeUtil/lambda$9$Type",1890),D(508,137,{3:1,508:1,96:1,137:1}),l.g=0,I(nA,"TGraphElement",508),D(65,508,{3:1,65:1,508:1,96:1,137:1},Kyt),l.Ib=function(){return this.b&&this.c?Z2(this.b)+"->"+Z2(this.c):"e_"+$i(this)},I(nA,"TEdge",65),D(121,137,{3:1,121:1,96:1,137:1},FI),l.Ib=function(){var e,n,r,s,o;for(o=null,s=Dr(this.b,0);s.b!=s.d.c;)r=u(Ar(s),39),o+=(r.c==null||r.c.length==0?"n_"+r.g:"n_"+r.c)+`
1534 In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var B=typeof window>"u"?null:window,z=B?B.navigator:null;B&&B.document;var Y=f(""),nt=f({}),ot=f(function(){}),ft=typeof HTMLElement>"u"?"undefined":f(HTMLElement),wt=function(p){return p&&p.instanceString&&ct(p.instanceString)?p.instanceString():null},mt=function(p){return p!=null&&f(p)==Y},ct=function(p){return p!=null&&f(p)===ot},rt=function(p){return!yt(p)&&(Array.isArray?Array.isArray(p):p!=null&&p instanceof Array)},it=function(p){return p!=null&&f(p)===nt&&!rt(p)&&p.constructor===Object},gt=function(p){return p!=null&&f(p)===nt},Q=function(p){return p!=null&&f(p)===f(1)&&!isNaN(p)},dt=function(p){return Q(p)&&Math.floor(p)===p},K=function(p){if(ft!=="undefined")return p!=null&&p instanceof HTMLElement},yt=function(p){return V(p)||Ot(p)},V=function(p){return wt(p)==="collection"&&p._private.single},Ot=function(p){return wt(p)==="collection"&&!p._private.single},It=function(p){return wt(p)==="core"},jt=function(p){return wt(p)==="stylesheet"},xt=function(p){return wt(p)==="event"},Ft=function(p){return p==null?!0:!!(p===""||p.match(/^\s+$/))},Ct=function(p){return typeof HTMLElement>"u"?!1:p instanceof HTMLElement},kt=function(p){return it(p)&&Q(p.x1)&&Q(p.x2)&&Q(p.y1)&&Q(p.y2)},Gt=function(p){return gt(p)&&ct(p.then)},Fe=function(){return z&&z.userAgent.match(/msie|trident|edge/i)},Mt=function(p,x){x||(x=function(){if(arguments.length===1)return arguments[0];if(arguments.length===0)return"undefined";for(var O=[],N=0;N<arguments.length;N++)O.push(arguments[N]);return O.join("$")});var C=function L(){var O=this,N=arguments,j,H=x.apply(O,N),q=L.cache;return(j=q[H])||(j=q[H]=p.apply(O,N)),j};return C.cache={},C},pn=Mt(function(y){return y.replace(/([A-Z])/g,function(p){return"-"+p.toLowerCase()})}),Ae=Mt(function(y){return y.replace(/(-\w)/g,function(p){return p[1].toUpperCase()})}),ye=Mt(function(y,p){return y+p[0].toUpperCase()+p.substring(1)},function(y,p){return y+"$"+p}),tn=function(p){return Ft(p)?p:p.charAt(0).toUpperCase()+p.substring(1)},sn="(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))",be="rgb[a]?\\(("+sn+"[%]?)\\s*,\\s*("+sn+"[%]?)\\s*,\\s*("+sn+"[%]?)(?:\\s*,\\s*("+sn+"))?\\)",Ne="rgb[a]?\\((?:"+sn+"[%]?)\\s*,\\s*(?:"+sn+"[%]?)\\s*,\\s*(?:"+sn+"[%]?)(?:\\s*,\\s*(?:"+sn+"))?\\)",Xt="hsl[a]?\\(("+sn+")\\s*,\\s*("+sn+"[%])\\s*,\\s*("+sn+"[%])(?:\\s*,\\s*("+sn+"))?\\)",_e="hsl[a]?\\((?:"+sn+")\\s*,\\s*(?:"+sn+"[%])\\s*,\\s*(?:"+sn+"[%])(?:\\s*,\\s*(?:"+sn+"))?\\)",xe="\\#[0-9a-fA-F]{3}",Mn="\\#[0-9a-fA-F]{6}",ce=function(p,x){return p<x?-1:p>x?1:0},Br=function(p,x){return-1*ce(p,x)},we=Object.assign!=null?Object.assign.bind(Object):function(y){for(var p=arguments,x=1;x<p.length;x++){var C=p[x];if(C!=null)for(var L=Object.keys(C),O=0;O<L.length;O++){var N=L[O];y[N]=C[N]}}return y},Fi=function(p){if(!(!(p.length===4||p.length===7)||p[0]!=="#")){var x=p.length===4,C,L,O,N=16;return x?(C=parseInt(p[1]+p[1],N),L=parseInt(p[2]+p[2],N),O=parseInt(p[3]+p[3],N)):(C=parseInt(p[1]+p[2],N),L=parseInt(p[3]+p[4],N),O=parseInt(p[5]+p[6],N)),[C,L,O]}},mi=function(p){var x,C,L,O,N,j,H,q;function W(pt,_t,St){return St<0&&(St+=1),St>1&&(St-=1),St<1/6?pt+(_t-pt)*6*St:St<1/2?_t:St<2/3?pt+(_t-pt)*(2/3-St)*6:pt}var Z=new RegExp("^"+Xt+"$").exec(p);if(Z){if(C=parseInt(Z[1]),C<0?C=(360- -1*C%360)%360:C>360&&(C=C%360),C/=360,L=parseFloat(Z[2]),L<0||L>100||(L=L/100,O=parseFloat(Z[3]),O<0||O>100)||(O=O/100,N=Z[4],N!==void 0&&(N=parseFloat(N),N<0||N>1)))return;if(L===0)j=H=q=Math.round(O*255);else{var st=O<.5?O*(1+L):O+L-O*L,bt=2*O-st;j=Math.round(255*W(bt,st,C+1/3)),H=Math.round(255*W(bt,st,C)),q=Math.round(255*W(bt,st,C-1/3))}x=[j,H,q,N]}return x},ga=function(p){var x,C=new RegExp("^"+be+"$").exec(p);if(C){x=[];for(var L=[],O=1;O<=3;O++){var N=C[O];if(N[N.length-1]==="%"&&(L[O]=!0),N=parseFloat(N),L[O]&&(N=N/100*255),N<0||N>255)return;x.push(Math.floor(N))}var j=L[1]||L[2]||L[3],H=L[1]&&L[2]&&L[3];if(j&&!H)return;var q=C[4];if(q!==void 0){if(q=parseFloat(q),q<0||q>1)return;x.push(q)}}return x},Ss=function(p){return br[p.toLowerCase()]},za=function(p){return(rt(p)?p:null)||Ss(p)||Fi(p)||ga(p)||mi(p)},br={transparent:[0,0,0,0],aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},An=function(p){for(var x=p.map,C=p.keys,L=C.length,O=0;O<L;O++){var N=C[O];if(it(N))throw Error("Tried to set map with object key");O<C.length-1?(x[N]==null&&(x[N]={}),x=x[N]):x[N]=p.value}},Nn=function(p){for(var x=p.map,C=p.keys,L=C.length,O=0;O<L;O++){var N=C[O];if(it(N))throw Error("Tried to get map with object key");if(x=x[N],x==null)return x}return x};function Bn(y){var p=typeof y;return y!=null&&(p=="object"||p=="function")}var ke=Bn,pe=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof Z0<"u"?Z0:typeof self<"u"?self:{};function Je(y,p){return p={exports:{}},y(p,p.exports),p.exports}var an=typeof pe=="object"&&pe&&pe.Object===Object&&pe,xn=an,qa=typeof self=="object"&&self&&self.Object===Object&&self,xo=xn||qa||Function("return this")(),ko=xo,va=function(){return ko.Date.now()},Ha=va,ds=/\s/;function Fu(y){for(var p=y.length;p--&&ds.test(y.charAt(p)););return p}var Zs=Fu,d1=/^\s+/;function I2(y){return y&&y.slice(0,Zs(y)+1).replace(d1,"")}var ll=I2,Ic=ko.Symbol,wc=Ic,Ea=Object.prototype,gu=Ea.hasOwnProperty,ta=Ea.toString,fo=wc?wc.toStringTag:void 0;function mc(y){var p=gu.call(y,fo),x=y[fo];try{y[fo]=void 0;var C=!0}catch{}var L=ta.call(y);return C&&(p?y[fo]=x:delete y[fo]),L}var ca=mc,ya=Object.prototype,ea=ya.toString;function Zl(y){return ea.call(y)}var Uc=Zl,rm="[object Null]",kh="[object Undefined]",Md=wc?wc.toStringTag:void 0;function w0(y){return y==null?y===void 0?kh:rm:Md&&Md in Object(y)?ca(y):Uc(y)}var Id=w0;function m0(y){return y!=null&&typeof y=="object"}var hg=m0,Gi="[object Symbol]";function cn(y){return typeof y=="symbol"||hg(y)&&Id(y)==Gi}var Nr=cn,Si=0/0,vc=/^[-+]0x[0-9a-f]+$/i,Rc=/^0b[01]+$/i,Eh=/^0o[0-7]+$/i,Zc=parseInt;function Qh(y){if(typeof y=="number")return y;if(Nr(y))return Si;if(ke(y)){var p=typeof y.valueOf=="function"?y.valueOf():y;y=ke(p)?p+"":p}if(typeof y!="string")return y===0?y:+y;y=ll(y);var x=Rc.test(y);return x||Eh.test(y)?Zc(y.slice(2),x?2:8):vc.test(y)?Si:+y}var Od=Qh,cs="Expected a function",As=Math.max,to=Math.min;function Ci(y,p,x){var C,L,O,N,j,H,q=0,W=!1,Z=!1,st=!0;if(typeof y!="function")throw new TypeError(cs);p=Od(p)||0,ke(x)&&(W=!!x.leading,Z="maxWait"in x,O=Z?As(Od(x.maxWait)||0,p):O,st="trailing"in x?!!x.trailing:st);function bt(ee){var Ut=C,de=L;return C=L=void 0,q=ee,N=y.apply(de,Ut),N}function pt(ee){return q=ee,j=setTimeout(Et,p),W?bt(ee):N}function _t(ee){var Ut=ee-H,de=ee-q,Yt=p-Ut;return Z?to(Yt,O-de):Yt}function St(ee){var Ut=ee-H,de=ee-q;return H===void 0||Ut>=p||Ut<0||Z&&de>=O}function Et(){var ee=Ha();if(St(ee))return Nt(ee);j=setTimeout(Et,_t(ee))}function Nt(ee){return j=void 0,st&&C?bt(ee):(C=L=void 0,N)}function Pt(){j!==void 0&&clearTimeout(j),q=0,C=H=L=j=void 0}function qt(){return j===void 0?N:Nt(Ha())}function re(){var ee=Ha(),Ut=St(ee);if(C=arguments,L=this,H=ee,Ut){if(j===void 0)return pt(H);if(Z)return clearTimeout(j),j=setTimeout(Et,p),bt(H)}return j===void 0&&(j=setTimeout(Et,p)),N}return re.cancel=Pt,re.flush=qt,re}var pu=Ci,Le=B?B.performance:null,iy=Le&&Le.now?function(){return Le.now()}:function(){return Date.now()},$e=function(){if(B){if(B.requestAnimationFrame)return function(y){B.requestAnimationFrame(y)};if(B.mozRequestAnimationFrame)return function(y){B.mozRequestAnimationFrame(y)};if(B.webkitRequestAnimationFrame)return function(y){B.webkitRequestAnimationFrame(y)};if(B.msRequestAnimationFrame)return function(y){B.msRequestAnimationFrame(y)}}return function(y){y&&setTimeout(function(){y(iy())},1e3/60)}}(),g1=function(p){return $e(p)},ip=iy,sy=9261,D8=65599,g4=5381,th=function(p){for(var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:sy,C=x,L;L=p.next(),!L.done;)C=C*D8+L.value|0;return C},fg=function(p){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:sy;return x*D8+p|0},O2=function(p){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:g4;return(x<<5)+x+p|0},M8=function(p,x){return p*2097152+x},N2=function(p){return p[0]*2097152+p[1]},p4=function(p,x){return[fg(p[0],x[0]),O2(p[1],x[1])]},U1=function(p,x){var C={value:0,done:!1},L=0,O=p.length,N={next:function(){return L<O?C.value=p[L++]:C.done=!0,C}};return th(N,x)},Nd=function(p,x){var C={value:0,done:!1},L=0,O=p.length,N={next:function(){return L<O?C.value=p.charCodeAt(L++):C.done=!0,C}};return th(N,x)},Pd=function(){return I8(arguments)},I8=function(p){for(var x,C=0;C<p.length;C++){var L=p[C];C===0?x=Nd(L):x=Nd(L,x)}return x},im=!0,Gx=console.warn!=null,hb=console.trace!=null,Kx=Number.MAX_SAFE_INTEGER||9007199254740991,b4=function(){return!0},ay=function(){return!1},sp=function(){return 0},BD=function(){},$l=function(p){throw new Error(p)},U9=function(p){if(p!==void 0)im=!!p;else return im},Gc=function(p){U9()&&(Gx?console.warn(p):(console.log(p),hb&&console.trace()))},$X=function(p){return we({},p)},P2=function(p){return p==null?p:rt(p)?p.slice():it(p)?$X(p):p},zX=function(p){return p.slice()},MB=function(p,x){for(x=p="";p++<36;x+=p*51&52?(p^15?8^Math.random()*(p^20?16:4):4).toString(16):"-");return x},qX={},IB=function(){return qX},p1=function(p){var x=Object.keys(p);return function(C){for(var L={},O=0;O<x.length;O++){var N=x[O],j=C==null?void 0:C[N];L[N]=j===void 0?p[N]:j}return L}},oy=function(p,x,C){for(var L=p.length-1;L>=0&&!(p[L]===x&&(p.splice(L,1),C));L--);},G9=function(p){p.splice(0,p.length)},OB=function(p,x){for(var C=0;C<x.length;C++){var L=x[C];p.push(L)}},fb=function(p,x,C){return C&&(x=ye(C,x)),p[x]},cy=function(p,x,C,L){C&&(x=ye(C,x)),p[x]=L},HX=function(){function y(){g(this,y),this._obj={}}return v(y,[{key:"set",value:function(x,C){return this._obj[x]=C,this}},{key:"delete",value:function(x){return this._obj[x]=void 0,this}},{key:"clear",value:function(){this._obj={}}},{key:"has",value:function(x){return this._obj[x]!==void 0}},{key:"get",value:function(x){return this._obj[x]}}]),y}(),F2=typeof Map<"u"?Map:HX,VX="undefined",UX=function(){function y(p){if(g(this,y),this._obj=Object.create(null),this.size=0,p!=null){var x;p.instanceString!=null&&p.instanceString()===this.instanceString()?x=p.toArray():x=p;for(var C=0;C<x.length;C++)this.add(x[C])}}return v(y,[{key:"instanceString",value:function(){return"set"}},{key:"add",value:function(x){var C=this._obj;C[x]!==1&&(C[x]=1,this.size++)}},{key:"delete",value:function(x){var C=this._obj;C[x]===1&&(C[x]=0,this.size--)}},{key:"clear",value:function(){this._obj=Object.create(null)}},{key:"has",value:function(x){return this._obj[x]===1}},{key:"toArray",value:function(){var x=this;return Object.keys(this._obj).filter(function(C){return x.has(C)})}},{key:"forEach",value:function(x,C){return this.toArray().forEach(x,C)}}]),y}(),Wx=(typeof Set>"u"?"undefined":f(Set))!==VX?Set:UX,K9=function(p,x){var C=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(p===void 0||x===void 0||!It(p)){$l("An element must have a core reference and parameters set");return}var L=x.group;if(L==null&&(x.data&&x.data.source!=null&&x.data.target!=null?L="edges":L="nodes"),L!=="nodes"&&L!=="edges"){$l("An element must be of type `nodes` or `edges`; you specified `"+L+"`");return}this.length=1,this[0]=this;var O=this._private={cy:p,single:!0,data:x.data||{},position:x.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:L,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:!!x.selected,selectable:x.selectable===void 0?!0:!!x.selectable,locked:!!x.locked,grabbed:!1,grabbable:x.grabbable===void 0?!0:!!x.grabbable,pannable:x.pannable===void 0?L==="edges":!!x.pannable,active:!1,classes:new Wx,animation:{current:[],queue:[]},rscratch:{},scratch:x.scratch||{},edges:[],children:[],parent:x.parent&&x.parent.isNode()?x.parent:null,traversalCache:{},backgrounding:!1,bbCache:null,bbCacheShift:{x:0,y:0},bodyBounds:null,overlayBounds:null,labelBounds:{all:null,source:null,target:null,main:null},arrowBounds:{source:null,target:null,"mid-source":null,"mid-target":null}};if(O.position.x==null&&(O.position.x=0),O.position.y==null&&(O.position.y=0),x.renderedPosition){var N=x.renderedPosition,j=p.pan(),H=p.zoom();O.position={x:(N.x-j.x)/H,y:(N.y-j.y)/H}}var q=[];rt(x.classes)?q=x.classes:mt(x.classes)&&(q=x.classes.split(/\s+/));for(var W=0,Z=q.length;W<Z;W++){var st=q[W];!st||st===""||O.classes.add(st)}this.createEmitter();var bt=x.style||x.css;bt&&(Gc("Setting a `style` bypass at element creation should be done only when absolutely necessary. Try to use the stylesheet instead."),this.style(bt)),(C===void 0||C)&&this.restore()},NB=function(p){return p={bfs:p.bfs||!p.dfs,dfs:p.dfs||!p.bfs},function(C,L,O){var N;it(C)&&!yt(C)&&(N=C,C=N.roots||N.root,L=N.visit,O=N.directed),O=arguments.length===2&&!ct(L)?L:O,L=ct(L)?L:function(){};for(var j=this._private.cy,H=C=mt(C)?this.filter(C):C,q=[],W=[],Z={},st={},bt={},pt=0,_t,St=this.byGroup(),Et=St.nodes,Nt=St.edges,Pt=0;Pt<H.length;Pt++){var qt=H[Pt],re=qt.id();qt.isNode()&&(q.unshift(qt),p.bfs&&(bt[re]=!0,W.push(qt)),st[re]=0)}for(var ee=function(){var ze=p.bfs?q.shift():q.pop(),me=ze.id();if(p.dfs){if(bt[me])return"continue";bt[me]=!0,W.push(ze)}var yn=st[me],nn=Z[me],qe=nn!=null?nn.source():null,Tn=nn!=null?nn.target():null,Xn=nn==null?void 0:ze.same(qe)?Tn[0]:qe[0],lr=void 0;if(lr=L(ze,nn,Xn,pt++,yn),lr===!0)return _t=ze,"break";if(lr===!1)return"break";for(var Sn=ze.connectedEdges().filter(function(Cr){return(!O||Cr.source().same(ze))&&Nt.has(Cr)}),or=0;or<Sn.length;or++){var pr=Sn[or],kr=pr.connectedNodes().filter(function(Cr){return!Cr.same(ze)&&Et.has(Cr)}),wr=kr.id();kr.length!==0&&!bt[wr]&&(kr=kr[0],q.push(kr),p.bfs&&(bt[wr]=!0,W.push(kr)),Z[wr]=pr,st[wr]=st[me]+1)}};q.length!==0;){var Ut=ee();if(Ut!=="continue"&&Ut==="break")break}for(var de=j.collection(),Yt=0;Yt<W.length;Yt++){var Ee=W[Yt],Te=Z[Ee.id()];Te!=null&&de.push(Te),de.push(Ee)}return{path:j.collection(de),found:j.collection(_t)}}},O8={breadthFirstSearch:NB({bfs:!0}),depthFirstSearch:NB({dfs:!0})};O8.bfs=O8.breadthFirstSearch,O8.dfs=O8.depthFirstSearch;var GX=Je(function(y,p){(function(){var x,C,L,O,N,j,H,q,W,Z,st,bt,pt,_t,St;L=Math.floor,Z=Math.min,C=function(Et,Nt){return Et<Nt?-1:Et>Nt?1:0},W=function(Et,Nt,Pt,qt,re){var ee;if(Pt==null&&(Pt=0),re==null&&(re=C),Pt<0)throw new Error("lo must be non-negative");for(qt==null&&(qt=Et.length);Pt<qt;)ee=L((Pt+qt)/2),re(Nt,Et[ee])<0?qt=ee:Pt=ee+1;return[].splice.apply(Et,[Pt,Pt-Pt].concat(Nt)),Nt},j=function(Et,Nt,Pt){return Pt==null&&(Pt=C),Et.push(Nt),_t(Et,0,Et.length-1,Pt)},N=function(Et,Nt){var Pt,qt;return Nt==null&&(Nt=C),Pt=Et.pop(),Et.length?(qt=Et[0],Et[0]=Pt,St(Et,0,Nt)):qt=Pt,qt},q=function(Et,Nt,Pt){var qt;return Pt==null&&(Pt=C),qt=Et[0],Et[0]=Nt,St(Et,0,Pt),qt},H=function(Et,Nt,Pt){var qt;return Pt==null&&(Pt=C),Et.length&&Pt(Et[0],Nt)<0&&(qt=[Et[0],Nt],Nt=qt[0],Et[0]=qt[1],St(Et,0,Pt)),Nt},O=function(Et,Nt){var Pt,qt,re,ee,Ut,de;for(Nt==null&&(Nt=C),ee=(function(){de=[];for(var Yt=0,Ee=L(Et.length/2);0<=Ee?Yt<Ee:Yt>Ee;0<=Ee?Yt++:Yt--)de.push(Yt);return de}).apply(this).reverse(),Ut=[],qt=0,re=ee.length;qt<re;qt++)Pt=ee[qt],Ut.push(St(Et,Pt,Nt));return Ut},pt=function(Et,Nt,Pt){var qt;if(Pt==null&&(Pt=C),qt=Et.indexOf(Nt),qt!==-1)return _t(Et,0,qt,Pt),St(Et,qt,Pt)},st=function(Et,Nt,Pt){var qt,re,ee,Ut,de;if(Pt==null&&(Pt=C),re=Et.slice(0,Nt),!re.length)return re;for(O(re,Pt),de=Et.slice(Nt),ee=0,Ut=de.length;ee<Ut;ee++)qt=de[ee],H(re,qt,Pt);return re.sort(Pt).reverse()},bt=function(Et,Nt,Pt){var qt,re,ee,Ut,de,Yt,Ee,Te,ie;if(Pt==null&&(Pt=C),Nt*10<=Et.length){if(ee=Et.slice(0,Nt).sort(Pt),!ee.length)return ee;for(re=ee[ee.length-1],Ee=Et.slice(Nt),Ut=0,Yt=Ee.length;Ut<Yt;Ut++)qt=Ee[Ut],Pt(qt,re)<0&&(W(ee,qt,0,null,Pt),ee.pop(),re=ee[ee.length-1]);return ee}for(O(Et,Pt),ie=[],de=0,Te=Z(Nt,Et.length);0<=Te?de<Te:de>Te;0<=Te?++de:--de)ie.push(N(Et,Pt));return ie},_t=function(Et,Nt,Pt,qt){var re,ee,Ut;for(qt==null&&(qt=C),re=Et[Pt];Pt>Nt;){if(Ut=Pt-1>>1,ee=Et[Ut],qt(re,ee)<0){Et[Pt]=ee,Pt=Ut;continue}break}return Et[Pt]=re},St=function(Et,Nt,Pt){var qt,re,ee,Ut,de;for(Pt==null&&(Pt=C),re=Et.length,de=Nt,ee=Et[Nt],qt=2*Nt+1;qt<re;)Ut=qt+1,Ut<re&&!(Pt(Et[qt],Et[Ut])<0)&&(qt=Ut),Et[Nt]=Et[qt],Nt=qt,qt=2*Nt+1;return Et[Nt]=ee,_t(Et,de,Nt,Pt)},x=function(){Et.push=j,Et.pop=N,Et.replace=q,Et.pushpop=H,Et.heapify=O,Et.updateItem=pt,Et.nlargest=st,Et.nsmallest=bt;function Et(Nt){this.cmp=Nt??C,this.nodes=[]}return Et.prototype.push=function(Nt){return j(this.nodes,Nt,this.cmp)},Et.prototype.pop=function(){return N(this.nodes,this.cmp)},Et.prototype.peek=function(){return this.nodes[0]},Et.prototype.contains=function(Nt){return this.nodes.indexOf(Nt)!==-1},Et.prototype.replace=function(Nt){return q(this.nodes,Nt,this.cmp)},Et.prototype.pushpop=function(Nt){return H(this.nodes,Nt,this.cmp)},Et.prototype.heapify=function(){return O(this.nodes,this.cmp)},Et.prototype.updateItem=function(Nt){return pt(this.nodes,Nt,this.cmp)},Et.prototype.clear=function(){return this.nodes=[]},Et.prototype.empty=function(){return this.nodes.length===0},Et.prototype.size=function(){return this.nodes.length},Et.prototype.clone=function(){var Nt;return Nt=new Et,Nt.nodes=this.nodes.slice(0),Nt},Et.prototype.toArray=function(){return this.nodes.slice(0)},Et.prototype.insert=Et.prototype.push,Et.prototype.top=Et.prototype.peek,Et.prototype.front=Et.prototype.peek,Et.prototype.has=Et.prototype.contains,Et.prototype.copy=Et.prototype.clone,Et}(),function(Et,Nt){return y.exports=Nt()}(this,function(){return x})}).call(pe)}),N8=GX,KX=p1({root:null,weight:function(p){return 1},directed:!1}),WX={dijkstra:function(p){if(!it(p)){var x=arguments;p={root:x[0],weight:x[1],directed:x[2]}}var C=KX(p),L=C.root,O=C.weight,N=C.directed,j=this,H=O,q=mt(L)?this.filter(L)[0]:L[0],W={},Z={},st={},bt=this.byGroup(),pt=bt.nodes,_t=bt.edges;_t.unmergeBy(function(yn){return yn.isLoop()});for(var St=function(nn){return W[nn.id()]},Et=function(nn,qe){W[nn.id()]=qe,Nt.updateItem(nn)},Nt=new N8(function(yn,nn){return St(yn)-St(nn)}),Pt=0;Pt<pt.length;Pt++){var qt=pt[Pt];W[qt.id()]=qt.same(q)?0:1/0,Nt.push(qt)}for(var re=function(nn,qe){for(var Tn=(N?nn.edgesTo(qe):nn.edgesWith(qe)).intersect(_t),Xn=1/0,lr,Sn=0;Sn<Tn.length;Sn++){var or=Tn[Sn],pr=H(or);(pr<Xn||!lr)&&(Xn=pr,lr=or)}return{edge:lr,dist:Xn}};Nt.size()>0;){var ee=Nt.pop(),Ut=St(ee),de=ee.id();if(st[de]=Ut,Ut!==1/0)for(var Yt=ee.neighborhood().intersect(pt),Ee=0;Ee<Yt.length;Ee++){var Te=Yt[Ee],ie=Te.id(),ze=re(ee,Te),me=Ut+ze.dist;me<St(Te)&&(Et(Te,me),Z[ie]={node:ee,edge:ze.edge})}}return{distanceTo:function(nn){var qe=mt(nn)?pt.filter(nn)[0]:nn[0];return st[qe.id()]},pathTo:function(nn){var qe=mt(nn)?pt.filter(nn)[0]:nn[0],Tn=[],Xn=qe,lr=Xn.id();if(qe.length>0)for(Tn.unshift(qe);Z[lr];){var Sn=Z[lr];Tn.unshift(Sn.edge),Tn.unshift(Sn.node),Xn=Sn.node,lr=Xn.id()}return j.spawn(Tn)}}}},YX={kruskal:function(p){p=p||function(Pt){return 1};for(var x=this.byGroup(),C=x.nodes,L=x.edges,O=C.length,N=new Array(O),j=C,H=function(qt){for(var re=0;re<N.length;re++){var ee=N[re];if(ee.has(qt))return re}},q=0;q<O;q++)N[q]=this.spawn(C[q]);for(var W=L.sort(function(Pt,qt){return p(Pt)-p(qt)}),Z=0;Z<W.length;Z++){var st=W[Z],bt=st.source()[0],pt=st.target()[0],_t=H(bt),St=H(pt),Et=N[_t],Nt=N[St];_t!==St&&(j.merge(st),Et.merge(Nt),N.splice(St,1))}return j}},XX=p1({root:null,goal:null,weight:function(p){return 1},heuristic:function(p){return 0},directed:!1}),QX={aStar:function(p){var x=this.cy(),C=XX(p),L=C.root,O=C.goal,N=C.heuristic,j=C.directed,H=C.weight;L=x.collection(L)[0],O=x.collection(O)[0];var q=L.id(),W=O.id(),Z={},st={},bt={},pt=new N8(function(lr,Sn){return st[lr.id()]-st[Sn.id()]}),_t=new Wx,St={},Et={},Nt=function(Sn,or){pt.push(Sn),_t.add(or)},Pt,qt,re=function(){Pt=pt.pop(),qt=Pt.id(),_t.delete(qt)},ee=function(Sn){return _t.has(Sn)};Nt(L,q),Z[q]=0,st[q]=N(L);for(var Ut=0;pt.size()>0;){if(re(),Ut++,qt===W){for(var de=[],Yt=O,Ee=W,Te=Et[Ee];de.unshift(Yt),Te!=null&&de.unshift(Te),Yt=St[Ee],Yt!=null;)Ee=Yt.id(),Te=Et[Ee];return{found:!0,distance:Z[qt],path:this.spawn(de),steps:Ut}}bt[qt]=!0;for(var ie=Pt._private.edges,ze=0;ze<ie.length;ze++){var me=ie[ze];if(this.hasElementWithId(me.id())&&!(j&&me.data("source")!==qt)){var yn=me.source(),nn=me.target(),qe=yn.id()!==qt?yn:nn,Tn=qe.id();if(this.hasElementWithId(Tn)&&!bt[Tn]){var Xn=Z[qt]+H(me);if(!ee(Tn)){Z[Tn]=Xn,st[Tn]=Xn+N(qe),Nt(qe,Tn),St[Tn]=Pt,Et[Tn]=me;continue}Xn<Z[Tn]&&(Z[Tn]=Xn,st[Tn]=Xn+N(qe),St[Tn]=Pt,Et[Tn]=me)}}}}return{found:!1,distance:void 0,path:void 0,steps:Ut}}},JX=p1({weight:function(p){return 1},directed:!1}),ZX={floydWarshall:function(p){for(var x=this.cy(),C=JX(p),L=C.weight,O=C.directed,N=L,j=this.byGroup(),H=j.nodes,q=j.edges,W=H.length,Z=W*W,st=function(pr){return H.indexOf(pr)},bt=function(pr){return H[pr]},pt=new Array(Z),_t=0;_t<Z;_t++){var St=_t%W,Et=(_t-St)/W;Et===St?pt[_t]=0:pt[_t]=1/0}for(var Nt=new Array(Z),Pt=new Array(Z),qt=0;qt<q.length;qt++){var re=q[qt],ee=re.source()[0],Ut=re.target()[0];if(ee!==Ut){var de=st(ee),Yt=st(Ut),Ee=de*W+Yt,Te=N(re);if(pt[Ee]>Te&&(pt[Ee]=Te,Nt[Ee]=Yt,Pt[Ee]=re),!O){var ie=Yt*W+de;!O&&pt[ie]>Te&&(pt[ie]=Te,Nt[ie]=de,Pt[ie]=re)}}}for(var ze=0;ze<W;ze++)for(var me=0;me<W;me++)for(var yn=me*W+ze,nn=0;nn<W;nn++){var qe=me*W+nn,Tn=ze*W+nn;pt[yn]+pt[Tn]<pt[qe]&&(pt[qe]=pt[yn]+pt[Tn],Nt[qe]=Nt[yn])}var Xn=function(pr){return(mt(pr)?x.filter(pr):pr)[0]},lr=function(pr){return st(Xn(pr))},Sn={distance:function(pr,kr){var wr=lr(pr),Cr=lr(kr);return pt[wr*W+Cr]},path:function(pr,kr){var wr=lr(pr),Cr=lr(kr),$n=bt(wr);if(wr===Cr)return $n.collection();if(Nt[wr*W+Cr]==null)return x.collection();var cr=x.collection(),mr=wr,Sr;for(cr.merge($n);wr!==Cr;)mr=wr,wr=Nt[wr*W+Cr],Sr=Pt[mr*W+wr],cr.merge(Sr),cr.merge(bt(wr));return cr}};return Sn}},tQ=p1({weight:function(p){return 1},directed:!1,root:null}),eQ={bellmanFord:function(p){var x=this,C=tQ(p),L=C.weight,O=C.directed,N=C.root,j=L,H=this,q=this.cy(),W=this.byGroup(),Z=W.edges,st=W.nodes,bt=st.length,pt=new F2,_t=!1,St=[];N=q.collection(N)[0],Z.unmergeBy(function(ks){return ks.isLoop()});for(var Et=Z.length,Nt=function(as){var Es=pt.get(as.id());return Es||(Es={},pt.set(as.id(),Es)),Es},Pt=function(as){return(mt(as)?q.$(as):as)[0]},qt=function(as){return Nt(Pt(as)).dist},re=function(as){for(var Es=arguments.length>1&&arguments[1]!==void 0?arguments[1]:N,eo=Pt(as),Ta=[],pa=eo;;){if(pa==null)return x.spawn();var mo=Nt(pa),Kn=mo.edge,G=mo.pred;if(Ta.unshift(pa[0]),pa.same(Es)&&Ta.length>0)break;Kn!=null&&Ta.unshift(Kn),pa=G}return H.spawn(Ta)},ee=0;ee<bt;ee++){var Ut=st[ee],de=Nt(Ut);Ut.same(N)?de.dist=0:de.dist=1/0,de.pred=null,de.edge=null}for(var Yt=!1,Ee=function(as,Es,eo,Ta,pa,mo){var Kn=Ta.dist+mo;Kn<pa.dist&&!eo.same(Ta.edge)&&(pa.dist=Kn,pa.pred=as,pa.edge=eo,Yt=!0)},Te=1;Te<bt;Te++){Yt=!1;for(var ie=0;ie<Et;ie++){var ze=Z[ie],me=ze.source(),yn=ze.target(),nn=j(ze),qe=Nt(me),Tn=Nt(yn);Ee(me,yn,ze,qe,Tn,nn),O||Ee(yn,me,ze,Tn,qe,nn)}if(!Yt)break}if(Yt)for(var Xn=[],lr=0;lr<Et;lr++){var Sn=Z[lr],or=Sn.source(),pr=Sn.target(),kr=j(Sn),wr=Nt(or).dist,Cr=Nt(pr).dist;if(wr+kr<Cr||!O&&Cr+kr<wr)if(_t||(Gc("Graph contains a negative weight cycle for Bellman-Ford"),_t=!0),p.findNegativeWeightCycles!==!1){var $n=[];wr+kr<Cr&&$n.push(or),!O&&Cr+kr<wr&&$n.push(pr);for(var cr=$n.length,mr=0;mr<cr;mr++){var Sr=$n[mr],gi=[Sr];gi.push(Nt(Sr).edge);for(var ss=Nt(Sr).pred;gi.indexOf(ss)===-1;)gi.push(ss),gi.push(Nt(ss).edge),ss=Nt(ss).pred;gi=gi.slice(gi.indexOf(ss));for(var na=gi[0].id(),vi=0,si=2;si<gi.length;si+=2)gi[si].id()<na&&(na=gi[si].id(),vi=si);gi=gi.slice(vi).concat(gi.slice(0,vi)),gi.push(gi[0]);var Qi=gi.map(function(ks){return ks.id()}).join(",");Xn.indexOf(Qi)===-1&&(St.push(H.spawn(gi)),Xn.push(Qi))}}else break}return{distanceTo:qt,pathTo:re,hasNegativeWeightCycle:_t,negativeWeightCycles:St}}},nQ=Math.sqrt(2),rQ=function(p,x,C){C.length===0&&$l("Karger-Stein must be run on a connected (sub)graph");for(var L=C[p],O=L[1],N=L[2],j=x[O],H=x[N],q=C,W=q.length-1;W>=0;W--){var Z=q[W],st=Z[1],bt=Z[2];(x[st]===j&&x[bt]===H||x[st]===H&&x[bt]===j)&&q.splice(W,1)}for(var pt=0;pt<q.length;pt++){var _t=q[pt];_t[1]===H?(q[pt]=_t.slice(),q[pt][1]=j):_t[2]===H&&(q[pt]=_t.slice(),q[pt][2]=j)}for(var St=0;St<x.length;St++)x[St]===H&&(x[St]=j);return q},RD=function(p,x,C,L){for(;C>L;){var O=Math.floor(Math.random()*x.length);x=rQ(O,p,x),C--}return x},iQ={kargerStein:function(){var p=this,x=this.byGroup(),C=x.nodes,L=x.edges;L.unmergeBy(function(Tn){return Tn.isLoop()});var O=C.length,N=L.length,j=Math.ceil(Math.pow(Math.log(O)/Math.LN2,2)),H=Math.floor(O/nQ);if(O<2){$l("At least 2 nodes are required for Karger-Stein algorithm");return}for(var q=[],W=0;W<N;W++){var Z=L[W];q.push([W,C.indexOf(Z.source()),C.indexOf(Z.target())])}for(var st=1/0,bt=[],pt=new Array(O),_t=new Array(O),St=new Array(O),Et=function(Xn,lr){for(var Sn=0;Sn<O;Sn++)lr[Sn]=Xn[Sn]},Nt=0;Nt<=j;Nt++){for(var Pt=0;Pt<O;Pt++)_t[Pt]=Pt;var qt=RD(_t,q.slice(),O,H),re=qt.slice();Et(_t,St);var ee=RD(_t,qt,H,2),Ut=RD(St,re,H,2);ee.length<=Ut.length&&ee.length<st?(st=ee.length,bt=ee,Et(_t,pt)):Ut.length<=ee.length&&Ut.length<st&&(st=Ut.length,bt=Ut,Et(St,pt))}for(var de=this.spawn(bt.map(function(Tn){return L[Tn[0]]})),Yt=this.spawn(),Ee=this.spawn(),Te=pt[0],ie=0;ie<pt.length;ie++){var ze=pt[ie],me=C[ie];ze===Te?Yt.merge(me):Ee.merge(me)}var yn=function(Xn){var lr=p.spawn();return Xn.forEach(function(Sn){lr.merge(Sn),Sn.connectedEdges().forEach(function(or){p.contains(or)&&!de.contains(or)&&lr.merge(or)})}),lr},nn=[yn(Yt),yn(Ee)],qe={cut:de,components:nn,partition1:Yt,partition2:Ee};return qe}},sQ=function(p){return{x:p.x,y:p.y}},W9=function(p,x,C){return{x:p.x*x+C.x,y:p.y*x+C.y}},PB=function(p,x,C){return{x:(p.x-C.x)/x,y:(p.y-C.y)/x}},Yx=function(p){return{x:p[0],y:p[1]}},aQ=function(p){for(var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,C=arguments.length>2&&arguments[2]!==void 0?arguments[2]:p.length,L=1/0,O=x;O<C;O++){var N=p[O];isFinite(N)&&(L=Math.min(N,L))}return L},oQ=function(p){for(var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,C=arguments.length>2&&arguments[2]!==void 0?arguments[2]:p.length,L=-1/0,O=x;O<C;O++){var N=p[O];isFinite(N)&&(L=Math.max(N,L))}return L},cQ=function(p){for(var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,C=arguments.length>2&&arguments[2]!==void 0?arguments[2]:p.length,L=0,O=0,N=x;N<C;N++){var j=p[N];isFinite(j)&&(L+=j,O++)}return L/O},uQ=function(p){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,C=arguments.length>2&&arguments[2]!==void 0?arguments[2]:p.length,L=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,O=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,N=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;L?p=p.slice(x,C):(C<p.length&&p.splice(C,p.length-C),x>0&&p.splice(0,x));for(var j=0,H=p.length-1;H>=0;H--){var q=p[H];N?isFinite(q)||(p[H]=-1/0,j++):p.splice(H,1)}O&&p.sort(function(st,bt){return st-bt});var W=p.length,Z=Math.floor(W/2);return W%2!==0?p[Z+1+j]:(p[Z-1+j]+p[Z+j])/2},lQ=function(p){return Math.PI*p/180},Y9=function(p,x){return Math.atan2(x,p)-Math.PI/2},jD=Math.log2||function(y){return Math.log(y)/Math.log(2)},FB=function(p){return p>0?1:p<0?-1:0},w4=function(p,x){return Math.sqrt(m4(p,x))},m4=function(p,x){var C=x.x-p.x,L=x.y-p.y;return C*C+L*L},hQ=function(p){for(var x=p.length,C=0,L=0;L<x;L++)C+=p[L];for(var O=0;O<x;O++)p[O]=p[O]/C;return p},Lf=function(p,x,C,L){return(1-L)*(1-L)*p+2*(1-L)*L*x+L*L*C},Xx=function(p,x,C,L){return{x:Lf(p.x,x.x,C.x,L),y:Lf(p.y,x.y,C.y,L)}},fQ=function(p,x,C,L){var O={x:x.x-p.x,y:x.y-p.y},N=w4(p,x),j={x:O.x/N,y:O.y/N};return C=C??0,L=L??C*N,{x:p.x+j.x*L,y:p.y+j.y*L}},P8=function(p,x,C){return Math.max(p,Math.min(C,x))},v0=function(p){if(p==null)return{x1:1/0,y1:1/0,x2:-1/0,y2:-1/0,w:0,h:0};if(p.x1!=null&&p.y1!=null){if(p.x2!=null&&p.y2!=null&&p.x2>=p.x1&&p.y2>=p.y1)return{x1:p.x1,y1:p.y1,x2:p.x2,y2:p.y2,w:p.x2-p.x1,h:p.y2-p.y1};if(p.w!=null&&p.h!=null&&p.w>=0&&p.h>=0)return{x1:p.x1,y1:p.y1,x2:p.x1+p.w,y2:p.y1+p.h,w:p.w,h:p.h}}},dQ=function(p){return{x1:p.x1,x2:p.x2,w:p.w,y1:p.y1,y2:p.y2,h:p.h}},gQ=function(p){p.x1=1/0,p.y1=1/0,p.x2=-1/0,p.y2=-1/0,p.w=0,p.h=0},pQ=function(p,x,C){return{x1:p.x1+x,x2:p.x2+x,y1:p.y1+C,y2:p.y2+C,w:p.w,h:p.h}},BB=function(p,x){p.x1=Math.min(p.x1,x.x1),p.x2=Math.max(p.x2,x.x2),p.w=p.x2-p.x1,p.y1=Math.min(p.y1,x.y1),p.y2=Math.max(p.y2,x.y2),p.h=p.y2-p.y1},bQ=function(p,x,C){p.x1=Math.min(p.x1,x),p.x2=Math.max(p.x2,x),p.w=p.x2-p.x1,p.y1=Math.min(p.y1,C),p.y2=Math.max(p.y2,C),p.h=p.y2-p.y1},X9=function(p){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return p.x1-=x,p.x2+=x,p.y1-=x,p.y2+=x,p.w=p.x2-p.x1,p.h=p.y2-p.y1,p},Q9=function(p){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0],C,L,O,N;if(x.length===1)C=L=O=N=x[0];else if(x.length===2)C=O=x[0],N=L=x[1];else if(x.length===4){var j=E(x,4);C=j[0],L=j[1],O=j[2],N=j[3]}return p.x1-=N,p.x2+=L,p.y1-=C,p.y2+=O,p.w=p.x2-p.x1,p.h=p.y2-p.y1,p},RB=function(p,x){p.x1=x.x1,p.y1=x.y1,p.x2=x.x2,p.y2=x.y2,p.w=p.x2-p.x1,p.h=p.y2-p.y1},$D=function(p,x){return!(p.x1>x.x2||x.x1>p.x2||p.x2<x.x1||x.x2<p.x1||p.y2<x.y1||x.y2<p.y1||p.y1>x.y2||x.y1>p.y2)},Qx=function(p,x,C){return p.x1<=x&&x<=p.x2&&p.y1<=C&&C<=p.y2},wQ=function(p,x){return Qx(p,x.x,x.y)},jB=function(p,x){return Qx(p,x.x1,x.y1)&&Qx(p,x.x2,x.y2)},$B=function(p,x,C,L,O,N,j){var H=R8(O,N),q=O/2,W=N/2,Z;{var st=C-q+H-j,bt=L-W-j,pt=C+q-H+j,_t=bt;if(Z=uy(p,x,C,L,st,bt,pt,_t,!1),Z.length>0)return Z}{var St=C+q+j,Et=L-W+H-j,Nt=St,Pt=L+W-H+j;if(Z=uy(p,x,C,L,St,Et,Nt,Pt,!1),Z.length>0)return Z}{var qt=C-q+H-j,re=L+W+j,ee=C+q-H+j,Ut=re;if(Z=uy(p,x,C,L,qt,re,ee,Ut,!1),Z.length>0)return Z}{var de=C-q-j,Yt=L-W+H-j,Ee=de,Te=L+W-H+j;if(Z=uy(p,x,C,L,de,Yt,Ee,Te,!1),Z.length>0)return Z}var ie;{var ze=C-q+H,me=L-W+H;if(ie=F8(p,x,C,L,ze,me,H+j),ie.length>0&&ie[0]<=ze&&ie[1]<=me)return[ie[0],ie[1]]}{var yn=C+q-H,nn=L-W+H;if(ie=F8(p,x,C,L,yn,nn,H+j),ie.length>0&&ie[0]>=yn&&ie[1]<=nn)return[ie[0],ie[1]]}{var qe=C+q-H,Tn=L+W-H;if(ie=F8(p,x,C,L,qe,Tn,H+j),ie.length>0&&ie[0]>=qe&&ie[1]>=Tn)return[ie[0],ie[1]]}{var Xn=C-q+H,lr=L+W-H;if(ie=F8(p,x,C,L,Xn,lr,H+j),ie.length>0&&ie[0]<=Xn&&ie[1]>=lr)return[ie[0],ie[1]]}return[]},mQ=function(p,x,C,L,O,N,j){var H=j,q=Math.min(C,O),W=Math.max(C,O),Z=Math.min(L,N),st=Math.max(L,N);return q-H<=p&&p<=W+H&&Z-H<=x&&x<=st+H},vQ=function(p,x,C,L,O,N,j,H,q){var W={x1:Math.min(C,j,O)-q,x2:Math.max(C,j,O)+q,y1:Math.min(L,H,N)-q,y2:Math.max(L,H,N)+q};return!(p<W.x1||p>W.x2||x<W.y1||x>W.y2)},yQ=function(p,x,C,L){C-=L;var O=x*x-4*p*C;if(O<0)return[];var N=Math.sqrt(O),j=2*p,H=(-x+N)/j,q=(-x-N)/j;return[H,q]},xQ=function(p,x,C,L,O){var N=1e-5;p===0&&(p=N),x/=p,C/=p,L/=p;var j,H,q,W,Z,st,bt,pt;if(H=(3*C-x*x)/9,q=-(27*L)+x*(9*C-2*(x*x)),q/=54,j=H*H*H+q*q,O[1]=0,bt=x/3,j>0){Z=q+Math.sqrt(j),Z=Z<0?-Math.pow(-Z,1/3):Math.pow(Z,1/3),st=q-Math.sqrt(j),st=st<0?-Math.pow(-st,1/3):Math.pow(st,1/3),O[0]=-bt+Z+st,bt+=(Z+st)/2,O[4]=O[2]=-bt,bt=Math.sqrt(3)*(-st+Z)/2,O[3]=bt,O[5]=-bt;return}if(O[5]=O[3]=0,j===0){pt=q<0?-Math.pow(-q,1/3):Math.pow(q,1/3),O[0]=-bt+2*pt,O[4]=O[2]=-(pt+bt);return}H=-H,W=H*H*H,W=Math.acos(q/Math.sqrt(W)),pt=2*Math.sqrt(H),O[0]=-bt+pt*Math.cos(W/3),O[2]=-bt+pt*Math.cos((W+2*Math.PI)/3),O[4]=-bt+pt*Math.cos((W+4*Math.PI)/3)},kQ=function(p,x,C,L,O,N,j,H){var q=1*C*C-4*C*O+2*C*j+4*O*O-4*O*j+j*j+L*L-4*L*N+2*L*H+4*N*N-4*N*H+H*H,W=1*9*C*O-3*C*C-3*C*j-6*O*O+3*O*j+9*L*N-3*L*L-3*L*H-6*N*N+3*N*H,Z=1*3*C*C-6*C*O+C*j-C*p+2*O*O+2*O*p-j*p+3*L*L-6*L*N+L*H-L*x+2*N*N+2*N*x-H*x,st=1*C*O-C*C+C*p-O*p+L*N-L*L+L*x-N*x,bt=[];xQ(q,W,Z,st,bt);for(var pt=1e-7,_t=[],St=0;St<6;St+=2)Math.abs(bt[St+1])<pt&&bt[St]>=0&&bt[St]<=1&&_t.push(bt[St]);_t.push(1),_t.push(0);for(var Et=-1,Nt,Pt,qt,re=0;re<_t.length;re++)Nt=Math.pow(1-_t[re],2)*C+2*(1-_t[re])*_t[re]*O+_t[re]*_t[re]*j,Pt=Math.pow(1-_t[re],2)*L+2*(1-_t[re])*_t[re]*N+_t[re]*_t[re]*H,qt=Math.pow(Nt-p,2)+Math.pow(Pt-x,2),Et>=0?qt<Et&&(Et=qt):Et=qt;return Et},EQ=function(p,x,C,L,O,N){var j=[p-C,x-L],H=[O-C,N-L],q=H[0]*H[0]+H[1]*H[1],W=j[0]*j[0]+j[1]*j[1],Z=j[0]*H[0]+j[1]*H[1],st=Z*Z/q;return Z<0?W:st>q?(p-O)*(p-O)+(x-N)*(x-N):W-st},y0=function(p,x,C){for(var L,O,N,j,H,q=0,W=0;W<C.length/2;W++)if(L=C[W*2],O=C[W*2+1],W+1<C.length/2?(N=C[(W+1)*2],j=C[(W+1)*2+1]):(N=C[(W+1-C.length/2)*2],j=C[(W+1-C.length/2)*2+1]),!(L==p&&N==p))if(L>=p&&p>=N||L<=p&&p<=N)H=(p-L)/(N-L)*(j-O)+O,H>x&&q++;else continue;return q%2!==0},sm=function(p,x,C,L,O,N,j,H,q){var W=new Array(C.length),Z;H[0]!=null?(Z=Math.atan(H[1]/H[0]),H[0]<0?Z=Z+Math.PI/2:Z=-Z-Math.PI/2):Z=H;for(var st=Math.cos(-Z),bt=Math.sin(-Z),pt=0;pt<W.length/2;pt++)W[pt*2]=N/2*(C[pt*2]*st-C[pt*2+1]*bt),W[pt*2+1]=j/2*(C[pt*2+1]*st+C[pt*2]*bt),W[pt*2]+=L,W[pt*2+1]+=O;var _t;if(q>0){var St=Z9(W,-q);_t=J9(St)}else _t=W;return y0(p,x,_t)},TQ=function(p,x,C,L,O,N,j){for(var H=new Array(C.length),q=N/2,W=j/2,Z=HD(N,j),st=Z*Z,bt=0;bt<C.length/4;bt++){var pt=void 0,_t=void 0;bt===0?pt=C.length-2:pt=bt*4-2,_t=bt*4+2;var St=L+q*C[bt*4],Et=O+W*C[bt*4+1],Nt=-C[pt]*C[_t]-C[pt+1]*C[_t+1],Pt=Z/Math.tan(Math.acos(Nt)/2),qt=St-Pt*C[pt],re=Et-Pt*C[pt+1],ee=St+Pt*C[_t],Ut=Et+Pt*C[_t+1];H[bt*4]=qt,H[bt*4+1]=re,H[bt*4+2]=ee,H[bt*4+3]=Ut;var de=C[pt+1],Yt=-C[pt],Ee=de*C[_t]+Yt*C[_t+1];Ee<0&&(de*=-1,Yt*=-1);var Te=qt+de*Z,ie=re+Yt*Z,ze=Math.pow(Te-p,2)+Math.pow(ie-x,2);if(ze<=st)return!0}return y0(p,x,H)},J9=function(p){for(var x=new Array(p.length/2),C,L,O,N,j,H,q,W,Z=0;Z<p.length/4;Z++){C=p[Z*4],L=p[Z*4+1],O=p[Z*4+2],N=p[Z*4+3],Z<p.length/4-1?(j=p[(Z+1)*4],H=p[(Z+1)*4+1],q=p[(Z+1)*4+2],W=p[(Z+1)*4+3]):(j=p[0],H=p[1],q=p[2],W=p[3]);var st=uy(C,L,O,N,j,H,q,W,!0);x[Z*2]=st[0],x[Z*2+1]=st[1]}return x},Z9=function(p,x){for(var C=new Array(p.length*2),L,O,N,j,H=0;H<p.length/2;H++){L=p[H*2],O=p[H*2+1],H<p.length/2-1?(N=p[(H+1)*2],j=p[(H+1)*2+1]):(N=p[0],j=p[1]);var q=j-O,W=-(N-L),Z=Math.sqrt(q*q+W*W),st=q/Z,bt=W/Z;C[H*4]=L+st*x,C[H*4+1]=O+bt*x,C[H*4+2]=N+st*x,C[H*4+3]=j+bt*x}return C},CQ=function(p,x,C,L,O,N){var j=C-p,H=L-x;j/=O,H/=N;var q=Math.sqrt(j*j+H*H),W=q-1;if(W<0)return[];var Z=W/q;return[(C-p)*Z+p,(L-x)*Z+x]},v4=function(p,x,C,L,O,N,j){return p-=O,x-=N,p/=C/2+j,x/=L/2+j,p*p+x*x<=1},F8=function(p,x,C,L,O,N,j){var H=[C-p,L-x],q=[p-O,x-N],W=H[0]*H[0]+H[1]*H[1],Z=2*(q[0]*H[0]+q[1]*H[1]),st=q[0]*q[0]+q[1]*q[1]-j*j,bt=Z*Z-4*W*st;if(bt<0)return[];var pt=(-Z+Math.sqrt(bt))/(2*W),_t=(-Z-Math.sqrt(bt))/(2*W),St=Math.min(pt,_t),Et=Math.max(pt,_t),Nt=[];if(St>=0&&St<=1&&Nt.push(St),Et>=0&&Et<=1&&Nt.push(Et),Nt.length===0)return[];var Pt=Nt[0]*H[0]+p,qt=Nt[0]*H[1]+x;if(Nt.length>1){if(Nt[0]==Nt[1])return[Pt,qt];var re=Nt[1]*H[0]+p,ee=Nt[1]*H[1]+x;return[Pt,qt,re,ee]}else return[Pt,qt]},zD=function(p,x,C){return x<=p&&p<=C||C<=p&&p<=x?p:p<=x&&x<=C||C<=x&&x<=p?x:C},uy=function(p,x,C,L,O,N,j,H,q){var W=p-O,Z=C-p,st=j-O,bt=x-N,pt=L-x,_t=H-N,St=st*bt-_t*W,Et=Z*bt-pt*W,Nt=_t*Z-st*pt;if(Nt!==0){var Pt=St/Nt,qt=Et/Nt,re=.001,ee=0-re,Ut=1+re;return ee<=Pt&&Pt<=Ut&&ee<=qt&&qt<=Ut?[p+Pt*Z,x+Pt*pt]:q?[p+Pt*Z,x+Pt*pt]:[]}else return St===0||Et===0?zD(p,C,j)===j?[j,H]:zD(p,C,O)===O?[O,N]:zD(O,j,C)===C?[C,L]:[]:[]},B8=function(p,x,C,L,O,N,j,H){var q=[],W,Z=new Array(C.length),st=!0;N==null&&(st=!1);var bt;if(st){for(var pt=0;pt<Z.length/2;pt++)Z[pt*2]=C[pt*2]*N+L,Z[pt*2+1]=C[pt*2+1]*j+O;if(H>0){var _t=Z9(Z,-H);bt=J9(_t)}else bt=Z}else bt=C;for(var St,Et,Nt,Pt,qt=0;qt<bt.length/2;qt++)St=bt[qt*2],Et=bt[qt*2+1],qt<bt.length/2-1?(Nt=bt[(qt+1)*2],Pt=bt[(qt+1)*2+1]):(Nt=bt[0],Pt=bt[1]),W=uy(p,x,L,O,St,Et,Nt,Pt),W.length!==0&&q.push(W[0],W[1]);return q},SQ=function(p,x,C,L,O,N,j,H){for(var q=[],W,Z=new Array(C.length),st=N/2,bt=j/2,pt=HD(N,j),_t=0;_t<C.length/4;_t++){var St=void 0,Et=void 0;_t===0?St=C.length-2:St=_t*4-2,Et=_t*4+2;var Nt=L+st*C[_t*4],Pt=O+bt*C[_t*4+1],qt=-C[St]*C[Et]-C[St+1]*C[Et+1],re=pt/Math.tan(Math.acos(qt)/2),ee=Nt-re*C[St],Ut=Pt-re*C[St+1],de=Nt+re*C[Et],Yt=Pt+re*C[Et+1];_t===0?(Z[C.length-2]=ee,Z[C.length-1]=Ut):(Z[_t*4-2]=ee,Z[_t*4-1]=Ut),Z[_t*4]=de,Z[_t*4+1]=Yt;var Ee=C[St+1],Te=-C[St],ie=Ee*C[Et]+Te*C[Et+1];ie<0&&(Ee*=-1,Te*=-1);var ze=ee+Ee*pt,me=Ut+Te*pt;W=F8(p,x,L,O,ze,me,pt),W.length!==0&&q.push(W[0],W[1])}for(var yn=0;yn<Z.length/4;yn++)W=uy(p,x,L,O,Z[yn*4],Z[yn*4+1],Z[yn*4+2],Z[yn*4+3],!1),W.length!==0&&q.push(W[0],W[1]);if(q.length>2){for(var nn=[q[0],q[1]],qe=Math.pow(nn[0]-p,2)+Math.pow(nn[1]-x,2),Tn=1;Tn<q.length/2;Tn++){var Xn=Math.pow(q[Tn*2]-p,2)+Math.pow(q[Tn*2+1]-x,2);Xn<=qe&&(nn[0]=q[Tn*2],nn[1]=q[Tn*2+1],qe=Xn)}return nn}return q},tC=function(p,x,C){var L=[p[0]-x[0],p[1]-x[1]],O=Math.sqrt(L[0]*L[0]+L[1]*L[1]),N=(O-C)/O;return N<0&&(N=1e-5),[x[0]+N*L[0],x[1]+N*L[1]]},Fd=function(p,x){var C=qD(p,x);return C=zB(C),C},zB=function(p){for(var x,C,L=p.length/2,O=1/0,N=1/0,j=-1/0,H=-1/0,q=0;q<L;q++)x=p[2*q],C=p[2*q+1],O=Math.min(O,x),j=Math.max(j,x),N=Math.min(N,C),H=Math.max(H,C);for(var W=2/(j-O),Z=2/(H-N),st=0;st<L;st++)x=p[2*st]=p[2*st]*W,C=p[2*st+1]=p[2*st+1]*Z,O=Math.min(O,x),j=Math.max(j,x),N=Math.min(N,C),H=Math.max(H,C);if(N<-1)for(var bt=0;bt<L;bt++)C=p[2*bt+1]=p[2*bt+1]+(-1-N);return p},qD=function(p,x){var C=1/p*2*Math.PI,L=p%2===0?Math.PI/2+C/2:Math.PI/2;L+=x;for(var O=new Array(p*2),N,j=0;j<p;j++)N=j*C+L,O[2*j]=Math.cos(N),O[2*j+1]=Math.sin(-N);return O},R8=function(p,x){return Math.min(p/4,x/4,8)},HD=function(p,x){return Math.min(p/10,x/10,8)},qB=function(){return 8},_Q=function(p,x,C){return[p-2*x+C,2*(x-p),p]},VD=function(p,x){return{heightOffset:Math.min(15,.05*x),widthOffset:Math.min(100,.25*p),ctrlPtOffsetPct:.05}},AQ=p1({dampingFactor:.8,precision:1e-6,iterations:200,weight:function(p){return 1}}),LQ={pageRank:function(p){for(var x=AQ(p),C=x.dampingFactor,L=x.precision,O=x.iterations,N=x.weight,j=this._private.cy,H=this.byGroup(),q=H.nodes,W=H.edges,Z=q.length,st=Z*Z,bt=W.length,pt=new Array(st),_t=new Array(Z),St=(1-C)/Z,Et=0;Et<Z;Et++){for(var Nt=0;Nt<Z;Nt++){var Pt=Et*Z+Nt;pt[Pt]=0}_t[Et]=0}for(var qt=0;qt<bt;qt++){var re=W[qt],ee=re.data("source"),Ut=re.data("target");if(ee!==Ut){var de=q.indexOfId(ee),Yt=q.indexOfId(Ut),Ee=N(re),Te=Yt*Z+de;pt[Te]+=Ee,_t[de]+=Ee}}for(var ie=1/Z+St,ze=0;ze<Z;ze++)if(_t[ze]===0)for(var me=0;me<Z;me++){var yn=me*Z+ze;pt[yn]=ie}else for(var nn=0;nn<Z;nn++){var qe=nn*Z+ze;pt[qe]=pt[qe]/_t[ze]+St}for(var Tn=new Array(Z),Xn=new Array(Z),lr,Sn=0;Sn<Z;Sn++)Tn[Sn]=1;for(var or=0;or<O;or++){for(var pr=0;pr<Z;pr++)Xn[pr]=0;for(var kr=0;kr<Z;kr++)for(var wr=0;wr<Z;wr++){var Cr=kr*Z+wr;Xn[kr]+=pt[Cr]*Tn[wr]}hQ(Xn),lr=Tn,Tn=Xn,Xn=lr;for(var $n=0,cr=0;cr<Z;cr++){var mr=lr[cr]-Tn[cr];$n+=mr*mr}if($n<L)break}var Sr={rank:function(ss){return ss=j.collection(ss)[0],Tn[q.indexOf(ss)]}};return Sr}},HB=p1({root:null,weight:function(p){return 1},directed:!1,alpha:0}),Jx={degreeCentralityNormalized:function(p){p=HB(p);var x=this.cy(),C=this.nodes(),L=C.length;if(p.directed){for(var W={},Z={},st=0,bt=0,pt=0;pt<L;pt++){var _t=C[pt],St=_t.id();p.root=_t;var Et=this.degreeCentrality(p);st<Et.indegree&&(st=Et.indegree),bt<Et.outdegree&&(bt=Et.outdegree),W[St]=Et.indegree,Z[St]=Et.outdegree}return{indegree:function(Pt){return st==0?0:(mt(Pt)&&(Pt=x.filter(Pt)),W[Pt.id()]/st)},outdegree:function(Pt){return bt===0?0:(mt(Pt)&&(Pt=x.filter(Pt)),Z[Pt.id()]/bt)}}}else{for(var O={},N=0,j=0;j<L;j++){var H=C[j];p.root=H;var q=this.degreeCentrality(p);N<q.degree&&(N=q.degree),O[H.id()]=q.degree}return{degree:function(Pt){return N===0?0:(mt(Pt)&&(Pt=x.filter(Pt)),O[Pt.id()]/N)}}}},degreeCentrality:function(p){p=HB(p);var x=this.cy(),C=this,L=p,O=L.root,N=L.weight,j=L.directed,H=L.alpha;if(O=x.collection(O)[0],j){for(var bt=O.connectedEdges(),pt=bt.filter(function(ee){return ee.target().same(O)&&C.has(ee)}),_t=bt.filter(function(ee){return ee.source().same(O)&&C.has(ee)}),St=pt.length,Et=_t.length,Nt=0,Pt=0,qt=0;qt<pt.length;qt++)Nt+=N(pt[qt]);for(var re=0;re<_t.length;re++)Pt+=N(_t[re]);return{indegree:Math.pow(St,1-H)*Math.pow(Nt,H),outdegree:Math.pow(Et,1-H)*Math.pow(Pt,H)}}else{for(var q=O.connectedEdges().intersection(C),W=q.length,Z=0,st=0;st<q.length;st++)Z+=N(q[st]);return{degree:Math.pow(W,1-H)*Math.pow(Z,H)}}}};Jx.dc=Jx.degreeCentrality,Jx.dcn=Jx.degreeCentralityNormalised=Jx.degreeCentralityNormalized;var VB=p1({harmonic:!0,weight:function(){return 1},directed:!1,root:null}),Zx={closenessCentralityNormalized:function(p){for(var x=VB(p),C=x.harmonic,L=x.weight,O=x.directed,N=this.cy(),j={},H=0,q=this.nodes(),W=this.floydWarshall({weight:L,directed:O}),Z=0;Z<q.length;Z++){for(var st=0,bt=q[Z],pt=0;pt<q.length;pt++)if(Z!==pt){var _t=W.distance(bt,q[pt]);C?st+=1/_t:st+=_t}C||(st=1/st),H<st&&(H=st),j[bt.id()]=st}return{closeness:function(Et){return H==0?0:(mt(Et)?Et=N.filter(Et)[0].id():Et=Et.id(),j[Et]/H)}}},closenessCentrality:function(p){var x=VB(p),C=x.root,L=x.weight,O=x.directed,N=x.harmonic;C=this.filter(C)[0];for(var j=this.dijkstra({root:C,weight:L,directed:O}),H=0,q=this.nodes(),W=0;W<q.length;W++){var Z=q[W];if(!Z.same(C)){var st=j.distanceTo(Z);N?H+=1/st:H+=st}}return N?H:1/H}};Zx.cc=Zx.closenessCentrality,Zx.ccn=Zx.closenessCentralityNormalised=Zx.closenessCentralityNormalized;var DQ=p1({weight:null,directed:!1}),UD={betweennessCentrality:function(p){for(var x=DQ(p),C=x.directed,L=x.weight,O=L!=null,N=this.cy(),j=this.nodes(),H={},q={},W=0,Z={set:function(Pt,qt){q[Pt]=qt,qt>W&&(W=qt)},get:function(Pt){return q[Pt]}},st=0;st<j.length;st++){var bt=j[st],pt=bt.id();C?H[pt]=bt.outgoers().nodes():H[pt]=bt.openNeighborhood().nodes(),Z.set(pt,0)}for(var _t=function(Pt){for(var qt=j[Pt].id(),re=[],ee={},Ut={},de={},Yt=new N8(function(wr,Cr){return de[wr]-de[Cr]}),Ee=0;Ee<j.length;Ee++){var Te=j[Ee].id();ee[Te]=[],Ut[Te]=0,de[Te]=1/0}for(Ut[qt]=1,de[qt]=0,Yt.push(qt);!Yt.empty();){var ie=Yt.pop();if(re.push(ie),O)for(var ze=0;ze<H[ie].length;ze++){var me=H[ie][ze],yn=N.getElementById(ie),nn=void 0;yn.edgesTo(me).length>0?nn=yn.edgesTo(me)[0]:nn=me.edgesTo(yn)[0];var qe=L(nn);me=me.id(),de[me]>de[ie]+qe&&(de[me]=de[ie]+qe,Yt.nodes.indexOf(me)<0?Yt.push(me):Yt.updateItem(me),Ut[me]=0,ee[me]=[]),de[me]==de[ie]+qe&&(Ut[me]=Ut[me]+Ut[ie],ee[me].push(ie))}else for(var Tn=0;Tn<H[ie].length;Tn++){var Xn=H[ie][Tn].id();de[Xn]==1/0&&(Yt.push(Xn),de[Xn]=de[ie]+1),de[Xn]==de[ie]+1&&(Ut[Xn]=Ut[Xn]+Ut[ie],ee[Xn].push(ie))}}for(var lr={},Sn=0;Sn<j.length;Sn++)lr[j[Sn].id()]=0;for(;re.length>0;){for(var or=re.pop(),pr=0;pr<ee[or].length;pr++){var kr=ee[or][pr];lr[kr]=lr[kr]+Ut[kr]/Ut[or]*(1+lr[or])}or!=j[Pt].id()&&Z.set(or,Z.get(or)+lr[or])}},St=0;St<j.length;St++)_t(St);var Et={betweenness:function(Pt){var qt=N.collection(Pt).id();return Z.get(qt)},betweennessNormalized:function(Pt){if(W==0)return 0;var qt=N.collection(Pt).id();return Z.get(qt)/W}};return Et.betweennessNormalised=Et.betweennessNormalized,Et}};UD.bc=UD.betweennessCentrality;var MQ=p1({expandFactor:2,inflateFactor:2,multFactor:1,maxIterations:20,attributes:[function(y){return 1}]}),IQ=function(p){return MQ(p)},OQ=function(p,x){for(var C=0,L=0;L<x.length;L++)C+=x[L](p);return C},NQ=function(p,x,C){for(var L=0;L<x;L++)p[L*x+L]=C},UB=function(p,x){for(var C,L=0;L<x;L++){C=0;for(var O=0;O<x;O++)C+=p[O*x+L];for(var N=0;N<x;N++)p[N*x+L]=p[N*x+L]/C}},PQ=function(p,x,C){for(var L=new Array(C*C),O=0;O<C;O++){for(var N=0;N<C;N++)L[O*C+N]=0;for(var j=0;j<C;j++)for(var H=0;H<C;H++)L[O*C+H]+=p[O*C+j]*x[j*C+H]}return L},FQ=function(p,x,C){for(var L=p.slice(0),O=1;O<C;O++)p=PQ(p,L,x);return p},GB=function(p,x,C){for(var L=new Array(x*x),O=0;O<x*x;O++)L[O]=Math.pow(p[O],C);return UB(L,x),L},BQ=function(p,x,C,L){for(var O=0;O<C;O++){var N=Math.round(p[O]*Math.pow(10,L))/Math.pow(10,L),j=Math.round(x[O]*Math.pow(10,L))/Math.pow(10,L);if(N!==j)return!1}return!0},RQ=function(p,x,C,L){for(var O=[],N=0;N<x;N++){for(var j=[],H=0;H<x;H++)Math.round(p[N*x+H]*1e3)/1e3>0&&j.push(C[H]);j.length!==0&&O.push(L.collection(j))}return O},jQ=function(p,x){for(var C=0;C<p.length;C++)if(!x[C]||p[C].id()!==x[C].id())return!1;return!0},$Q=function(p){for(var x=0;x<p.length;x++)for(var C=0;C<p.length;C++)x!=C&&jQ(p[x],p[C])&&p.splice(C,1);return p},KB=function(p){for(var x=this.nodes(),C=this.edges(),L=this.cy(),O=IQ(p),N={},j=0;j<x.length;j++)N[x[j].id()]=j;for(var H=x.length,q=H*H,W=new Array(q),Z,st=0;st<q;st++)W[st]=0;for(var bt=0;bt<C.length;bt++){var pt=C[bt],_t=N[pt.source().id()],St=N[pt.target().id()],Et=OQ(pt,O.attributes);W[_t*H+St]+=Et,W[St*H+_t]+=Et}NQ(W,H,O.multFactor),UB(W,H);for(var Nt=!0,Pt=0;Nt&&Pt<O.maxIterations;)Nt=!1,Z=FQ(W,H,O.expandFactor),W=GB(Z,H,O.inflateFactor),BQ(W,Z,q,4)||(Nt=!0),Pt++;var qt=RQ(W,H,x,L);return qt=$Q(qt),qt},zQ={markovClustering:KB,mcl:KB},qQ=function(p){return p},WB=function(p,x){return Math.abs(x-p)},YB=function(p,x,C){return p+WB(x,C)},XB=function(p,x,C){return p+Math.pow(C-x,2)},HQ=function(p){return Math.sqrt(p)},VQ=function(p,x,C){return Math.max(p,WB(x,C))},j8=function(p,x,C,L,O){for(var N=arguments.length>5&&arguments[5]!==void 0?arguments[5]:qQ,j=L,H,q,W=0;W<p;W++)H=x(W),q=C(W),j=O(j,H,q);return N(j)},t6={euclidean:function(p,x,C){return p>=2?j8(p,x,C,0,XB,HQ):j8(p,x,C,0,YB)},squaredEuclidean:function(p,x,C){return j8(p,x,C,0,XB)},manhattan:function(p,x,C){return j8(p,x,C,0,YB)},max:function(p,x,C){return j8(p,x,C,-1/0,VQ)}};t6["squared-euclidean"]=t6.squaredEuclidean,t6.squaredeuclidean=t6.squaredEuclidean;function eC(y,p,x,C,L,O){var N;return ct(y)?N=y:N=t6[y]||t6.euclidean,p===0&&ct(y)?N(L,O):N(p,x,C,L,O)}var UQ=p1({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),GD=function(p){return UQ(p)},nC=function(p,x,C,L,O){var N=O!=="kMedoids",j=N?function(Z){return C[Z]}:function(Z){return L[Z](C)},H=function(st){return L[st](x)},q=C,W=x;return eC(p,L.length,j,H,q,W)},KD=function(p,x,C){for(var L=C.length,O=new Array(L),N=new Array(L),j=new Array(x),H=null,q=0;q<L;q++)O[q]=p.min(C[q]).value,N[q]=p.max(C[q]).value;for(var W=0;W<x;W++){H=[];for(var Z=0;Z<L;Z++)H[Z]=Math.random()*(N[Z]-O[Z])+O[Z];j[W]=H}return j},QB=function(p,x,C,L,O){for(var N=1/0,j=0,H=0;H<x.length;H++){var q=nC(C,p,x[H],L,O);q<N&&(N=q,j=H)}return j},JB=function(p,x,C){for(var L=[],O=null,N=0;N<x.length;N++)O=x[N],C[O.id()]===p&&L.push(O);return L},GQ=function(p,x,C){return Math.abs(x-p)<=C},KQ=function(p,x,C){for(var L=0;L<p.length;L++)for(var O=0;O<p[L].length;O++){var N=Math.abs(p[L][O]-x[L][O]);if(N>C)return!1}return!0},WQ=function(p,x,C){for(var L=0;L<C;L++)if(p===x[L])return!0;return!1},ZB=function(p,x){var C=new Array(x);if(p.length<50)for(var L=0;L<x;L++){for(var O=p[Math.floor(Math.random()*p.length)];WQ(O,C,L);)O=p[Math.floor(Math.random()*p.length)];C[L]=O}else for(var N=0;N<x;N++)C[N]=p[Math.floor(Math.random()*p.length)];return C},tR=function(p,x,C){for(var L=0,O=0;O<x.length;O++)L+=nC("manhattan",x[O],p,C,"kMedoids");return L},YQ=function(p){var x=this.cy(),C=this.nodes(),L=null,O=GD(p),N=new Array(O.k),j={},H;O.testMode?typeof O.testCentroids=="number"?(O.testCentroids,H=KD(C,O.k,O.attributes)):f(O.testCentroids)==="object"?H=O.testCentroids:H=KD(C,O.k,O.attributes):H=KD(C,O.k,O.attributes);for(var q=!0,W=0;q&&W<O.maxIterations;){for(var Z=0;Z<C.length;Z++)L=C[Z],j[L.id()]=QB(L,H,O.distance,O.attributes,"kMeans");q=!1;for(var st=0;st<O.k;st++){var bt=JB(st,C,j);if(bt.length!==0){for(var pt=O.attributes.length,_t=H[st],St=new Array(pt),Et=new Array(pt),Nt=0;Nt<pt;Nt++){Et[Nt]=0;for(var Pt=0;Pt<bt.length;Pt++)L=bt[Pt],Et[Nt]+=O.attributes[Nt](L);St[Nt]=Et[Nt]/bt.length,GQ(St[Nt],_t[Nt],O.sensitivityThreshold)||(q=!0)}H[st]=St,N[st]=x.collection(bt)}}W++}return N},XQ=function(p){var x=this.cy(),C=this.nodes(),L=null,O=GD(p),N=new Array(O.k),j,H={},q,W=new Array(O.k);O.testMode?typeof O.testCentroids=="number"||(f(O.testCentroids)==="object"?j=O.testCentroids:j=ZB(C,O.k)):j=ZB(C,O.k);for(var Z=!0,st=0;Z&&st<O.maxIterations;){for(var bt=0;bt<C.length;bt++)L=C[bt],H[L.id()]=QB(L,j,O.distance,O.attributes,"kMedoids");Z=!1;for(var pt=0;pt<j.length;pt++){var _t=JB(pt,C,H);if(_t.length!==0){W[pt]=tR(j[pt],_t,O.attributes);for(var St=0;St<_t.length;St++)q=tR(_t[St],_t,O.attributes),q<W[pt]&&(W[pt]=q,j[pt]=_t[St],Z=!0);N[pt]=x.collection(_t)}}st++}return N},QQ=function(p,x,C,L,O){for(var N,j,H=0;H<x.length;H++)for(var q=0;q<p.length;q++)L[H][q]=Math.pow(C[H][q],O.m);for(var W=0;W<p.length;W++)for(var Z=0;Z<O.attributes.length;Z++){N=0,j=0;for(var st=0;st<x.length;st++)N+=L[st][W]*O.attributes[Z](x[st]),j+=L[st][W];p[W][Z]=N/j}},JQ=function(p,x,C,L,O){for(var N=0;N<p.length;N++)x[N]=p[N].slice();for(var j,H,q,W=2/(O.m-1),Z=0;Z<C.length;Z++)for(var st=0;st<L.length;st++){j=0;for(var bt=0;bt<C.length;bt++)H=nC(O.distance,L[st],C[Z],O.attributes,"cmeans"),q=nC(O.distance,L[st],C[bt],O.attributes,"cmeans"),j+=Math.pow(H/q,W);p[st][Z]=1/j}},ZQ=function(p,x,C,L){for(var O=new Array(C.k),N=0;N<O.length;N++)O[N]=[];for(var j,H,q=0;q<x.length;q++){j=-1/0,H=-1;for(var W=0;W<x[0].length;W++)x[q][W]>j&&(j=x[q][W],H=W);O[H].push(p[q])}for(var Z=0;Z<O.length;Z++)O[Z]=L.collection(O[Z]);return O},eR=function(p){var x=this.cy(),C=this.nodes(),L=GD(p),O,N,j,H,q;H=new Array(C.length);for(var W=0;W<C.length;W++)H[W]=new Array(L.k);j=new Array(C.length);for(var Z=0;Z<C.length;Z++)j[Z]=new Array(L.k);for(var st=0;st<C.length;st++){for(var bt=0,pt=0;pt<L.k;pt++)j[st][pt]=Math.random(),bt+=j[st][pt];for(var _t=0;_t<L.k;_t++)j[st][_t]=j[st][_t]/bt}N=new Array(L.k);for(var St=0;St<L.k;St++)N[St]=new Array(L.attributes.length);q=new Array(C.length);for(var Et=0;Et<C.length;Et++)q[Et]=new Array(L.k);for(var Nt=!0,Pt=0;Nt&&Pt<L.maxIterations;)Nt=!1,QQ(N,C,j,q,L),JQ(j,H,N,C,L),KQ(j,H,L.sensitivityThreshold)||(Nt=!0),Pt++;return O=ZQ(C,j,L,x),{clusters:O,degreeOfMembership:j}},tJ={kMeans:YQ,kMedoids:XQ,fuzzyCMeans:eR,fcm:eR},eJ=p1({distance:"euclidean",linkage:"min",mode:"threshold",threshold:1/0,addDendrogram:!1,dendrogramDepth:0,attributes:[]}),nJ={single:"min",complete:"max"},rJ=function(p){var x=eJ(p),C=nJ[x.linkage];return C!=null&&(x.linkage=C),x},nR=function(p,x,C,L,O){for(var N=0,j=1/0,H,q=O.attributes,W=function(Yt,Ee){return eC(O.distance,q.length,function(Te){return q[Te](Yt)},function(Te){return q[Te](Ee)},Yt,Ee)},Z=0;Z<p.length;Z++){var st=p[Z].key,bt=C[st][L[st]];bt<j&&(N=st,j=bt)}if(O.mode==="threshold"&&j>=O.threshold||O.mode==="dendrogram"&&p.length===1)return!1;var pt=x[N],_t=x[L[N]],St;O.mode==="dendrogram"?St={left:pt,right:_t,key:pt.key}:St={value:pt.value.concat(_t.value),key:pt.key},p[pt.index]=St,p.splice(_t.index,1),x[pt.key]=St;for(var Et=0;Et<p.length;Et++){var Nt=p[Et];pt.key===Nt.key?H=1/0:O.linkage==="min"?(H=C[pt.key][Nt.key],C[pt.key][Nt.key]>C[_t.key][Nt.key]&&(H=C[_t.key][Nt.key])):O.linkage==="max"?(H=C[pt.key][Nt.key],C[pt.key][Nt.key]<C[_t.key][Nt.key]&&(H=C[_t.key][Nt.key])):O.linkage==="mean"?H=(C[pt.key][Nt.key]*pt.size+C[_t.key][Nt.key]*_t.size)/(pt.size+_t.size):O.mode==="dendrogram"?H=W(Nt.value,pt.value):H=W(Nt.value[0],pt.value[0]),C[pt.key][Nt.key]=C[Nt.key][pt.key]=H}for(var Pt=0;Pt<p.length;Pt++){var qt=p[Pt].key;if(L[qt]===pt.key||L[qt]===_t.key){for(var re=qt,ee=0;ee<p.length;ee++){var Ut=p[ee].key;C[qt][Ut]<C[qt][re]&&(re=Ut)}L[qt]=re}p[Pt].index=Pt}return pt.key=_t.key=pt.index=_t.index=null,!0},rC=function y(p,x,C){p&&(p.value?x.push(p.value):(p.left&&y(p.left,x),p.right&&y(p.right,x)))},iJ=function y(p,x){if(!p)return"";if(p.left&&p.right){var C=y(p.left,x),L=y(p.right,x),O=x.add({group:"nodes",data:{id:C+","+L}});return x.add({group:"edges",data:{source:C,target:O.id()}}),x.add({group:"edges",data:{source:L,target:O.id()}}),O.id()}else if(p.value)return p.value.id()},sJ=function y(p,x,C){if(!p)return[];var L=[],O=[],N=[];return x===0?(p.left&&rC(p.left,L),p.right&&rC(p.right,O),N=L.concat(O),[C.collection(N)]):x===1?p.value?[C.collection(p.value)]:(p.left&&rC(p.left,L),p.right&&rC(p.right,O),[C.collection(L),C.collection(O)]):p.value?[C.collection(p.value)]:(p.left&&(L=y(p.left,x-1,C)),p.right&&(O=y(p.right,x-1,C)),L.concat(O))},rR=function(p){for(var x=this.cy(),C=this.nodes(),L=rJ(p),O=L.attributes,N=function(Pt,qt){return eC(L.distance,O.length,function(re){return O[re](Pt)},function(re){return O[re](qt)},Pt,qt)},j=[],H=[],q=[],W=[],Z=0;Z<C.length;Z++){var st={value:L.mode==="dendrogram"?C[Z]:[C[Z]],key:Z,index:Z};j[Z]=st,W[Z]=st,H[Z]=[],q[Z]=0}for(var bt=0;bt<j.length;bt++)for(var pt=0;pt<=bt;pt++){var _t=void 0;L.mode==="dendrogram"?_t=bt===pt?1/0:N(j[bt].value,j[pt].value):_t=bt===pt?1/0:N(j[bt].value[0],j[pt].value[0]),H[bt][pt]=_t,H[pt][bt]=_t,_t<H[bt][q[bt]]&&(q[bt]=pt)}for(var St=nR(j,W,H,q,L);St;)St=nR(j,W,H,q,L);var Et;return L.mode==="dendrogram"?(Et=sJ(j[0],L.dendrogramDepth,x),L.addDendrogram&&iJ(j[0],x)):(Et=new Array(j.length),j.forEach(function(Nt,Pt){Nt.key=Nt.index=null,Et[Pt]=x.collection(Nt.value)})),Et},aJ={hierarchicalClustering:rR,hca:rR},oJ=p1({distance:"euclidean",preference:"median",damping:.8,maxIterations:1e3,minIterations:100,attributes:[]}),cJ=function(p){var x=p.damping,C=p.preference;.5<=x&&x<1||$l("Damping must range on [0.5, 1). Got: ".concat(x));var L=["median","mean","min","max"];return L.some(function(O){return O===C})||Q(C)||$l("Preference must be one of [".concat(L.map(function(O){return"'".concat(O,"'")}).join(", "),"] or a number. Got: ").concat(C)),oJ(p)},uJ=function(p,x,C,L){var O=function(j,H){return L[H](j)};return-eC(p,L.length,function(N){return O(x,N)},function(N){return O(C,N)},x,C)},lJ=function(p,x){var C=null;return x==="median"?C=uQ(p):x==="mean"?C=cQ(p):x==="min"?C=aQ(p):x==="max"?C=oQ(p):C=x,C},hJ=function(p,x,C){for(var L=[],O=0;O<p;O++)x[O*p+O]+C[O*p+O]>0&&L.push(O);return L},iR=function(p,x,C){for(var L=[],O=0;O<p;O++){for(var N=-1,j=-1/0,H=0;H<C.length;H++){var q=C[H];x[O*p+q]>j&&(N=q,j=x[O*p+q])}N>0&&L.push(N)}for(var W=0;W<C.length;W++)L[C[W]]=C[W];return L},fJ=function(p,x,C){for(var L=iR(p,x,C),O=0;O<C.length;O++){for(var N=[],j=0;j<L.length;j++)L[j]===C[O]&&N.push(j);for(var H=-1,q=-1/0,W=0;W<N.length;W++){for(var Z=0,st=0;st<N.length;st++)Z+=x[N[st]*p+N[W]];Z>q&&(H=W,q=Z)}C[O]=N[H]}return L=iR(p,x,C),L},sR=function(p){for(var x=this.cy(),C=this.nodes(),L=cJ(p),O={},N=0;N<C.length;N++)O[C[N].id()]=N;var j,H,q,W,Z,st;j=C.length,H=j*j,q=new Array(H);for(var bt=0;bt<H;bt++)q[bt]=-1/0;for(var pt=0;pt<j;pt++)for(var _t=0;_t<j;_t++)pt!==_t&&(q[pt*j+_t]=uJ(L.distance,C[pt],C[_t],L.attributes));W=lJ(q,L.preference);for(var St=0;St<j;St++)q[St*j+St]=W;Z=new Array(H);for(var Et=0;Et<H;Et++)Z[Et]=0;st=new Array(H);for(var Nt=0;Nt<H;Nt++)st[Nt]=0;for(var Pt=new Array(j),qt=new Array(j),re=new Array(j),ee=0;ee<j;ee++)Pt[ee]=0,qt[ee]=0,re[ee]=0;for(var Ut=new Array(j*L.minIterations),de=0;de<Ut.length;de++)Ut[de]=0;var Yt;for(Yt=0;Yt<L.maxIterations;Yt++){for(var Ee=0;Ee<j;Ee++){for(var Te=-1/0,ie=-1/0,ze=-1,me=0,yn=0;yn<j;yn++)Pt[yn]=Z[Ee*j+yn],me=st[Ee*j+yn]+q[Ee*j+yn],me>=Te?(ie=Te,Te=me,ze=yn):me>ie&&(ie=me);for(var nn=0;nn<j;nn++)Z[Ee*j+nn]=(1-L.damping)*(q[Ee*j+nn]-Te)+L.damping*Pt[nn];Z[Ee*j+ze]=(1-L.damping)*(q[Ee*j+ze]-ie)+L.damping*Pt[ze]}for(var qe=0;qe<j;qe++){for(var Tn=0,Xn=0;Xn<j;Xn++)Pt[Xn]=st[Xn*j+qe],qt[Xn]=Math.max(0,Z[Xn*j+qe]),Tn+=qt[Xn];Tn-=qt[qe],qt[qe]=Z[qe*j+qe],Tn+=qt[qe];for(var lr=0;lr<j;lr++)st[lr*j+qe]=(1-L.damping)*Math.min(0,Tn-qt[lr])+L.damping*Pt[lr];st[qe*j+qe]=(1-L.damping)*(Tn-qt[qe])+L.damping*Pt[qe]}for(var Sn=0,or=0;or<j;or++){var pr=st[or*j+or]+Z[or*j+or]>0?1:0;Ut[Yt%L.minIterations*j+or]=pr,Sn+=pr}if(Sn>0&&(Yt>=L.minIterations-1||Yt==L.maxIterations-1)){for(var kr=0,wr=0;wr<j;wr++){re[wr]=0;for(var Cr=0;Cr<L.minIterations;Cr++)re[wr]+=Ut[Cr*j+wr];(re[wr]===0||re[wr]===L.minIterations)&&kr++}if(kr===j)break}}for(var $n=hJ(j,Z,st),cr=fJ(j,q,$n),mr={},Sr=0;Sr<$n.length;Sr++)mr[$n[Sr]]=[];for(var gi=0;gi<C.length;gi++){var ss=O[C[gi].id()],na=cr[ss];na!=null&&mr[na].push(C[gi])}for(var vi=new Array($n.length),si=0;si<$n.length;si++)vi[si]=x.collection(mr[$n[si]]);return vi},dJ={affinityPropagation:sR,ap:sR},gJ=p1({root:void 0,directed:!1}),pJ={hierholzer:function(p){if(!it(p)){var x=arguments;p={root:x[0],directed:x[1]}}var C=gJ(p),L=C.root,O=C.directed,N=this,j=!1,H,q,W;L&&(W=mt(L)?this.filter(L)[0].id():L[0].id());var Z={},st={};O?N.forEach(function(Nt){var Pt=Nt.id();if(Nt.isNode()){var qt=Nt.indegree(!0),re=Nt.outdegree(!0),ee=qt-re,Ut=re-qt;ee==1?H?j=!0:H=Pt:Ut==1?q?j=!0:q=Pt:(Ut>1||ee>1)&&(j=!0),Z[Pt]=[],Nt.outgoers().forEach(function(de){de.isEdge()&&Z[Pt].push(de.id())})}else st[Pt]=[void 0,Nt.target().id()]}):N.forEach(function(Nt){var Pt=Nt.id();if(Nt.isNode()){var qt=Nt.degree(!0);qt%2&&(H?q?j=!0:q=Pt:H=Pt),Z[Pt]=[],Nt.connectedEdges().forEach(function(re){return Z[Pt].push(re.id())})}else st[Pt]=[Nt.source().id(),Nt.target().id()]});var bt={found:!1,trail:void 0};if(j)return bt;if(q&&H)if(O){if(W&&q!=W)return bt;W=q}else{if(W&&q!=W&&H!=W)return bt;W||(W=q)}else W||(W=N[0].id());var pt=function(Pt){for(var qt=Pt,re=[Pt],ee,Ut,de;Z[qt].length;)ee=Z[qt].shift(),Ut=st[ee][0],de=st[ee][1],qt!=de?(Z[de]=Z[de].filter(function(Yt){return Yt!=ee}),qt=de):!O&&qt!=Ut&&(Z[Ut]=Z[Ut].filter(function(Yt){return Yt!=ee}),qt=Ut),re.unshift(ee),re.unshift(qt);return re},_t=[],St=[];for(St=pt(W);St.length!=1;)Z[St[0]].length==0?(_t.unshift(N.getElementById(St.shift())),_t.unshift(N.getElementById(St.shift()))):St=pt(St.shift()).concat(St);_t.unshift(N.getElementById(St.shift()));for(var Et in Z)if(Z[Et].length)return bt;return bt.found=!0,bt.trail=this.spawn(_t,!0),bt}},iC=function(){var p=this,x={},C=0,L=0,O=[],N=[],j={},H=function(st,bt){for(var pt=N.length-1,_t=[],St=p.spawn();N[pt].x!=st||N[pt].y!=bt;)_t.push(N.pop().edge),pt--;_t.push(N.pop().edge),_t.forEach(function(Et){var Nt=Et.connectedNodes().intersection(p);St.merge(Et),Nt.forEach(function(Pt){var qt=Pt.id(),re=Pt.connectedEdges().intersection(p);St.merge(Pt),x[qt].cutVertex?St.merge(re.filter(function(ee){return ee.isLoop()})):St.merge(re)})}),O.push(St)},q=function Z(st,bt,pt){st===pt&&(L+=1),x[bt]={id:C,low:C++,cutVertex:!1};var _t=p.getElementById(bt).connectedEdges().intersection(p);if(_t.size()===0)O.push(p.spawn(p.getElementById(bt)));else{var St,Et,Nt,Pt;_t.forEach(function(qt){St=qt.source().id(),Et=qt.target().id(),Nt=St===bt?Et:St,Nt!==pt&&(Pt=qt.id(),j[Pt]||(j[Pt]=!0,N.push({x:bt,y:Nt,edge:qt})),Nt in x?x[bt].low=Math.min(x[bt].low,x[Nt].id):(Z(st,Nt,bt),x[bt].low=Math.min(x[bt].low,x[Nt].low),x[bt].id<=x[Nt].low&&(x[bt].cutVertex=!0,H(bt,Nt))))})}};p.forEach(function(Z){if(Z.isNode()){var st=Z.id();st in x||(L=0,q(st,st),x[st].cutVertex=L>1)}});var W=Object.keys(x).filter(function(Z){return x[Z].cutVertex}).map(function(Z){return p.getElementById(Z)});return{cut:p.spawn(W),components:O}},bJ={hopcroftTarjanBiconnected:iC,htbc:iC,htb:iC,hopcroftTarjanBiconnectedComponents:iC},sC=function(){var p=this,x={},C=0,L=[],O=[],N=p.spawn(p),j=function H(q){O.push(q),x[q]={index:C,low:C++,explored:!1};var W=p.getElementById(q).connectedEdges().intersection(p);if(W.forEach(function(_t){var St=_t.target().id();St!==q&&(St in x||H(St),x[St].explored||(x[q].low=Math.min(x[q].low,x[St].low)))}),x[q].index===x[q].low){for(var Z=p.spawn();;){var st=O.pop();if(Z.merge(p.getElementById(st)),x[st].low=x[q].index,x[st].explored=!0,st===q)break}var bt=Z.edgesWith(Z),pt=Z.merge(bt);L.push(pt),N=N.difference(pt)}};return p.forEach(function(H){if(H.isNode()){var q=H.id();q in x||j(q)}}),{cut:N,components:L}},wJ={tarjanStronglyConnected:sC,tsc:sC,tscc:sC,tarjanStronglyConnectedComponents:sC},aR={};[O8,WX,YX,QX,ZX,eQ,iQ,LQ,Jx,Zx,UD,zQ,tJ,aJ,dJ,pJ,bJ,wJ].forEach(function(y){we(aR,y)});/*!
1538 */var oR=0,cR=1,uR=2,am=function y(p){if(!(this instanceof y))return new y(p);this.id="Thenable/1.0.7",this.state=oR,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},typeof p=="function"&&p.call(this,this.fulfill.bind(this),this.reject.bind(this))};am.prototype={fulfill:function(p){return lR(this,cR,"fulfillValue",p)},reject:function(p){return lR(this,uR,"rejectReason",p)},then:function(p,x){var C=this,L=new am;return C.onFulfilled.push(dR(p,L,"fulfill")),C.onRejected.push(dR(x,L,"reject")),hR(C),L.proxy}};var lR=function(p,x,C,L){return p.state===oR&&(p.state=x,p[C]=L,hR(p)),p},hR=function(p){p.state===cR?fR(p,"onFulfilled",p.fulfillValue):p.state===uR&&fR(p,"onRejected",p.rejectReason)},fR=function(p,x,C){if(p[x].length!==0){var L=p[x];p[x]=[];var O=function(){for(var j=0;j<L.length;j++)L[j](C)};typeof setImmediate=="function"?setImmediate(O):setTimeout(O,0)}},dR=function(p,x,C){return function(L){if(typeof p!="function")x[C].call(x,L);else{var O;try{O=p(L)}catch(N){x.reject(N);return}mJ(x,O)}}},mJ=function y(p,x){if(p===x||p.proxy===x){p.reject(new TypeError("cannot resolve promise with itself"));return}var C;if(f(x)==="object"&&x!==null||typeof x=="function")try{C=x.then}catch(O){p.reject(O);return}if(typeof C=="function"){var L=!1;try{C.call(x,function(O){L||(L=!0,O===x?p.reject(new TypeError("circular thenable chain")):y(p,O))},function(O){L||(L=!0,p.reject(O))})}catch(O){L||p.reject(O)}return}p.fulfill(x)};am.all=function(y){return new am(function(p,x){for(var C=new Array(y.length),L=0,O=function(H,q){C[H]=q,L++,L===y.length&&p(C)},N=0;N<y.length;N++)(function(j){var H=y[j],q=H!=null&&H.then!=null;if(q)H.then(function(Z){O(j,Z)},function(Z){x(Z)});else{var W=H;O(j,W)}})(N)})},am.resolve=function(y){return new am(function(p,x){p(y)})},am.reject=function(y){return new am(function(p,x){x(y)})};var e6=typeof Promise<"u"?Promise:am,WD=function(p,x,C){var L=It(p),O=!L,N=this._private=we({duration:1e3},x,C);if(N.target=p,N.style=N.style||N.css,N.started=!1,N.playing=!1,N.hooked=!1,N.applying=!1,N.progress=0,N.completes=[],N.frames=[],N.complete&&ct(N.complete)&&N.completes.push(N.complete),O){var j=p.position();N.startPosition=N.startPosition||{x:j.x,y:j.y},N.startStyle=N.startStyle||p.cy().style().getAnimationStartStyle(p,N.style)}if(L){var H=p.pan();N.startPan={x:H.x,y:H.y},N.startZoom=p.zoom()}this.length=1,this[0]=this},y4=WD.prototype;we(y4,{instanceString:function(){return"animation"},hook:function(){var p=this._private;if(!p.hooked){var x,C=p.target._private.animation;p.queue?x=C.queue:x=C.current,x.push(this),yt(p.target)&&p.target.cy().addToAnimationPool(p.target),p.hooked=!0}return this},play:function(){var p=this._private;return p.progress===1&&(p.progress=0),p.playing=!0,p.started=!1,p.stopped=!1,this.hook(),this},playing:function(){return this._private.playing},apply:function(){var p=this._private;return p.applying=!0,p.started=!1,p.stopped=!1,this.hook(),this},applying:function(){return this._private.applying},pause:function(){var p=this._private;return p.playing=!1,p.started=!1,this},stop:function(){var p=this._private;return p.playing=!1,p.started=!1,p.stopped=!0,this},rewind:function(){return this.progress(0)},fastforward:function(){return this.progress(1)},time:function(p){var x=this._private;return p===void 0?x.progress*x.duration:this.progress(p/x.duration)},progress:function(p){var x=this._private,C=x.playing;return p===void 0?x.progress:(C&&this.pause(),x.progress=p,x.started=!1,C&&this.play(),this)},completed:function(){return this._private.progress===1},reverse:function(){var p=this._private,x=p.playing;x&&this.pause(),p.progress=1-p.progress,p.started=!1;var C=function(q,W){var Z=p[q];Z!=null&&(p[q]=p[W],p[W]=Z)};if(C("zoom","startZoom"),C("pan","startPan"),C("position","startPosition"),p.style)for(var L=0;L<p.style.length;L++){var O=p.style[L],N=O.name,j=p.startStyle[N];p.startStyle[N]=O,p.style[L]=j}return x&&this.play(),this},promise:function(p){var x=this._private,C;switch(p){case"frame":C=x.frames;break;default:case"complete":case"completed":C=x.completes}return new e6(function(L,O){C.push(function(){L()})})}}),y4.complete=y4.completed,y4.run=y4.play,y4.running=y4.playing;var vJ={animated:function(){return function(){var x=this,C=x.length!==void 0,L=C?x:[x],O=this._private.cy||this;if(!O.styleEnabled())return!1;var N=L[0];if(N)return N._private.animation.current.length>0}},clearQueue:function(){return function(){var x=this,C=x.length!==void 0,L=C?x:[x],O=this._private.cy||this;if(!O.styleEnabled())return this;for(var N=0;N<L.length;N++){var j=L[N];j._private.animation.queue=[]}return this}},delay:function(){return function(x,C){var L=this._private.cy||this;return L.styleEnabled()?this.animate({delay:x,duration:x,complete:C}):this}},delayAnimation:function(){return function(x,C){var L=this._private.cy||this;return L.styleEnabled()?this.animation({delay:x,duration:x,complete:C}):this}},animation:function(){return function(x,C){var L=this,O=L.length!==void 0,N=O?L:[L],j=this._private.cy||this,H=!O,q=!H;if(!j.styleEnabled())return this;var W=j.style();x=we({},x,C);var Z=Object.keys(x).length===0;if(Z)return new WD(N[0],x);switch(x.duration===void 0&&(x.duration=400),x.duration){case"slow":x.duration=600;break;case"fast":x.duration=200;break}if(q&&(x.style=W.getPropsList(x.style||x.css),x.css=void 0),q&&x.renderedPosition!=null){var st=x.renderedPosition,bt=j.pan(),pt=j.zoom();x.position=PB(st,pt,bt)}if(H&&x.panBy!=null){var _t=x.panBy,St=j.pan();x.pan={x:St.x+_t.x,y:St.y+_t.y}}var Et=x.center||x.centre;if(H&&Et!=null){var Nt=j.getCenterPan(Et.eles,x.zoom);Nt!=null&&(x.pan=Nt)}if(H&&x.fit!=null){var Pt=x.fit,qt=j.getFitViewport(Pt.eles||Pt.boundingBox,Pt.padding);qt!=null&&(x.pan=qt.pan,x.zoom=qt.zoom)}if(H&&it(x.zoom)){var re=j.getZoomedViewport(x.zoom);re!=null?(re.zoomed&&(x.zoom=re.zoom),re.panned&&(x.pan=re.pan)):x.zoom=null}return new WD(N[0],x)}},animate:function(){return function(x,C){var L=this,O=L.length!==void 0,N=O?L:[L],j=this._private.cy||this;if(!j.styleEnabled())return this;C&&(x=we({},x,C));for(var H=0;H<N.length;H++){var q=N[H],W=q.animated()&&(x.queue===void 0||x.queue),Z=q.animation(x,W?{queue:!0}:void 0);Z.play()}return this}},stop:function(){return function(x,C){var L=this,O=L.length!==void 0,N=O?L:[L],j=this._private.cy||this;if(!j.styleEnabled())return this;for(var H=0;H<N.length;H++){for(var q=N[H],W=q._private,Z=W.animation.current,st=0;st<Z.length;st++){var bt=Z[st],pt=bt._private;C&&(pt.duration=0)}x&&(W.animation.queue=[]),C||(W.animation.current=[])}return j.notify("draw"),this}}},yJ=Array.isArray,aC=yJ,gR=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,xJ=/^\w*$/;function kJ(y,p){if(aC(y))return!1;var x=typeof y;return x=="number"||x=="symbol"||x=="boolean"||y==null||Nr(y)?!0:xJ.test(y)||!gR.test(y)||p!=null&&y in Object(p)}var EJ=kJ,TJ="[object AsyncFunction]",CJ="[object Function]",SJ="[object GeneratorFunction]",_J="[object Proxy]";function AJ(y){if(!ke(y))return!1;var p=Id(y);return p==CJ||p==SJ||p==TJ||p==_J}var LJ=AJ,DJ=ko["__core-js_shared__"],oC=DJ,pR=function(){var y=/[^.]+$/.exec(oC&&oC.keys&&oC.keys.IE_PROTO||"");return y?"Symbol(src)_1."+y:""}();function MJ(y){return!!pR&&pR in y}var IJ=MJ,OJ=Function.prototype,NJ=OJ.toString;function PJ(y){if(y!=null){try{return NJ.call(y)}catch{}try{return y+""}catch{}}return""}var bR=PJ,wR=/[\\^$.*+?()[\]{}|]/g,FJ=/^\[object .+?Constructor\]$/,mR=Function.prototype,vR=Object.prototype,BJ=mR.toString,RJ=vR.hasOwnProperty,jJ=RegExp("^"+BJ.call(RJ).replace(wR,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function $J(y){if(!ke(y)||IJ(y))return!1;var p=LJ(y)?jJ:FJ;return p.test(bR(y))}var zJ=$J;function qJ(y,p){return y==null?void 0:y[p]}var HJ=qJ;function VJ(y,p){var x=HJ(y,p);return zJ(x)?x:void 0}var YD=VJ,UJ=YD(Object,"create"),$8=UJ;function yR(){this.__data__=$8?$8(null):{},this.size=0}var GJ=yR;function KJ(y){var p=this.has(y)&&delete this.__data__[y];return this.size-=p?1:0,p}var WJ=KJ,YJ="__lodash_hash_undefined__",XJ=Object.prototype,QJ=XJ.hasOwnProperty;function JJ(y){var p=this.__data__;if($8){var x=p[y];return x===YJ?void 0:x}return QJ.call(p,y)?p[y]:void 0}var ZJ=JJ,tZ=Object.prototype,eZ=tZ.hasOwnProperty;function nZ(y){var p=this.__data__;return $8?p[y]!==void 0:eZ.call(p,y)}var rZ=nZ,iZ="__lodash_hash_undefined__";function sZ(y,p){var x=this.__data__;return this.size+=this.has(y)?0:1,x[y]=$8&&p===void 0?iZ:p,this}var aZ=sZ;function n6(y){var p=-1,x=y==null?0:y.length;for(this.clear();++p<x;){var C=y[p];this.set(C[0],C[1])}}n6.prototype.clear=GJ,n6.prototype.delete=WJ,n6.prototype.get=ZJ,n6.prototype.has=rZ,n6.prototype.set=aZ;var xR=n6;function oZ(){this.__data__=[],this.size=0}var cZ=oZ;function uZ(y,p){return y===p||y!==y&&p!==p}var kR=uZ;function lZ(y,p){for(var x=y.length;x--;)if(kR(y[x][0],p))return x;return-1}var cC=lZ,hZ=Array.prototype,fZ=hZ.splice;function dZ(y){var p=this.__data__,x=cC(p,y);if(x<0)return!1;var C=p.length-1;return x==C?p.pop():fZ.call(p,x,1),--this.size,!0}var gZ=dZ;function pZ(y){var p=this.__data__,x=cC(p,y);return x<0?void 0:p[x][1]}var bZ=pZ;function wZ(y){return cC(this.__data__,y)>-1}var mZ=wZ;function vZ(y,p){var x=this.__data__,C=cC(x,y);return C<0?(++this.size,x.push([y,p])):x[C][1]=p,this}var yZ=vZ;function r6(y){var p=-1,x=y==null?0:y.length;for(this.clear();++p<x;){var C=y[p];this.set(C[0],C[1])}}r6.prototype.clear=cZ,r6.prototype.delete=gZ,r6.prototype.get=bZ,r6.prototype.has=mZ,r6.prototype.set=yZ;var xZ=r6,kZ=YD(ko,"Map"),EZ=kZ;function TZ(){this.size=0,this.__data__={hash:new xR,map:new(EZ||xZ),string:new xR}}var CZ=TZ;function SZ(y){var p=typeof y;return p=="string"||p=="number"||p=="symbol"||p=="boolean"?y!=="__proto__":y===null}var _Z=SZ;function AZ(y,p){var x=y.__data__;return _Z(p)?x[typeof p=="string"?"string":"hash"]:x.map}var uC=AZ;function LZ(y){var p=uC(this,y).delete(y);return this.size-=p?1:0,p}var DZ=LZ;function MZ(y){return uC(this,y).get(y)}var IZ=MZ;function OZ(y){return uC(this,y).has(y)}var NZ=OZ;function PZ(y,p){var x=uC(this,y),C=x.size;return x.set(y,p),this.size+=x.size==C?0:1,this}var FZ=PZ;function i6(y){var p=-1,x=y==null?0:y.length;for(this.clear();++p<x;){var C=y[p];this.set(C[0],C[1])}}i6.prototype.clear=CZ,i6.prototype.delete=DZ,i6.prototype.get=IZ,i6.prototype.has=NZ,i6.prototype.set=FZ;var ER=i6,BZ="Expected a function";function XD(y,p){if(typeof y!="function"||p!=null&&typeof p!="function")throw new TypeError(BZ);var x=function(){var C=arguments,L=p?p.apply(this,C):C[0],O=x.cache;if(O.has(L))return O.get(L);var N=y.apply(this,C);return x.cache=O.set(L,N)||O,N};return x.cache=new(XD.Cache||ER),x}XD.Cache=ER;var RZ=XD,jZ=500;function $Z(y){var p=RZ(y,function(C){return x.size===jZ&&x.clear(),C}),x=p.cache;return p}var zZ=$Z,qZ=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,HZ=/\\(\\)?/g,VZ=zZ(function(y){var p=[];return y.charCodeAt(0)===46&&p.push(""),y.replace(qZ,function(x,C,L,O){p.push(L?O.replace(HZ,"$1"):C||x)}),p}),TR=VZ;function UZ(y,p){for(var x=-1,C=y==null?0:y.length,L=Array(C);++x<C;)L[x]=p(y[x],x,y);return L}var CR=UZ,GZ=1/0,SR=wc?wc.prototype:void 0,_R=SR?SR.toString:void 0;function AR(y){if(typeof y=="string")return y;if(aC(y))return CR(y,AR)+"";if(Nr(y))return _R?_R.call(y):"";var p=y+"";return p=="0"&&1/y==-GZ?"-0":p}var KZ=AR;function WZ(y){return y==null?"":KZ(y)}var LR=WZ;function YZ(y,p){return aC(y)?y:EJ(y,p)?[y]:TR(LR(y))}var DR=YZ,XZ=1/0;function QZ(y){if(typeof y=="string"||Nr(y))return y;var p=y+"";return p=="0"&&1/y==-XZ?"-0":p}var QD=QZ;function JZ(y,p){p=DR(p,y);for(var x=0,C=p.length;y!=null&&x<C;)y=y[QD(p[x++])];return x&&x==C?y:void 0}var ZZ=JZ;function ttt(y,p,x){var C=y==null?void 0:ZZ(y,p);return C===void 0?x:C}var ett=ttt,ntt=function(){try{var y=YD(Object,"defineProperty");return y({},"",{}),y}catch{}}(),MR=ntt;function rtt(y,p,x){p=="__proto__"&&MR?MR(y,p,{configurable:!0,enumerable:!0,value:x,writable:!0}):y[p]=x}var itt=rtt,stt=Object.prototype,A2t=stt.hasOwnProperty;function att(y,p,x){var C=y[p];(!(A2t.call(y,p)&&kR(C,x))||x===void 0&&!(p in y))&&itt(y,p,x)}var ott=att,ctt=9007199254740991,utt=/^(?:0|[1-9]\d*)$/;function ltt(y,p){var x=typeof y;return p=p??ctt,!!p&&(x=="number"||x!="symbol"&&utt.test(y))&&y>-1&&y%1==0&&y<p}var htt=ltt;function ftt(y,p,x,C){if(!ke(y))return y;p=DR(p,y);for(var L=-1,O=p.length,N=O-1,j=y;j!=null&&++L<O;){var H=QD(p[L]),q=x;if(H==="__proto__"||H==="constructor"||H==="prototype")return y;if(L!=N){var W=j[H];q=C?C(W,H,j):void 0,q===void 0&&(q=ke(W)?W:htt(p[L+1])?[]:{})}ott(j,H,q),j=j[H]}return y}var dtt=ftt;function gtt(y,p,x){return y==null?y:dtt(y,p,x)}var ptt=gtt;function btt(y,p){var x=-1,C=y.length;for(p||(p=Array(C));++x<C;)p[x]=y[x];return p}var wtt=btt;function mtt(y){return aC(y)?CR(y,QD):Nr(y)?[y]:wtt(TR(LR(y)))}var vtt=mtt,ytt={data:function(p){var x={field:"data",bindingEvent:"data",allowBinding:!1,allowSetting:!1,allowGetting:!1,settingEvent:"data",settingTriggersEvent:!1,triggerFnName:"trigger",immutableKeys:{},updateStyle:!1,beforeGet:function(L){},beforeSet:function(L,O){},onSet:function(L){},canSet:function(L){return!0}};return p=we({},x,p),function(L,O){var N=p,j=this,H=j.length!==void 0,q=H?j:[j],W=H?j[0]:j;if(mt(L)){var Z=L.indexOf(".")!==-1,st=Z&&vtt(L);if(N.allowGetting&&O===void 0){var bt;return W&&(N.beforeGet(W),st&&W._private[N.field][L]===void 0?bt=ett(W._private[N.field],st):bt=W._private[N.field][L]),bt}else if(N.allowSetting&&O!==void 0){var pt=!N.immutableKeys[L];if(pt){var _t=b({},L,O);N.beforeSet(j,_t);for(var St=0,Et=q.length;St<Et;St++){var Nt=q[St];N.canSet(Nt)&&(st&&W._private[N.field][L]===void 0?ptt(Nt._private[N.field],st,O):Nt._private[N.field][L]=O)}N.updateStyle&&j.updateStyle(),N.onSet(j),N.settingTriggersEvent&&j[N.triggerFnName](N.settingEvent)}}}else if(N.allowSetting&&it(L)){var Pt=L,qt,re,ee=Object.keys(Pt);N.beforeSet(j,Pt);for(var Ut=0;Ut<ee.length;Ut++){qt=ee[Ut],re=Pt[qt];var de=!N.immutableKeys[qt];if(de)for(var Yt=0;Yt<q.length;Yt++){var Ee=q[Yt];N.canSet(Ee)&&(Ee._private[N.field][qt]=re)}}N.updateStyle&&j.updateStyle(),N.onSet(j),N.settingTriggersEvent&&j[N.triggerFnName](N.settingEvent)}else if(N.allowBinding&&ct(L)){var Te=L;j.on(N.bindingEvent,Te)}else if(N.allowGetting&&L===void 0){var ie;return W&&(N.beforeGet(W),ie=W._private[N.field]),ie}return j}},removeData:function(p){var x={field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!1,immutableKeys:{}};return p=we({},x,p),function(L){var O=p,N=this,j=N.length!==void 0,H=j?N:[N];if(mt(L)){for(var q=L.split(/\s+/),W=q.length,Z=0;Z<W;Z++){var st=q[Z];if(!Ft(st)){var bt=!O.immutableKeys[st];if(bt)for(var pt=0,_t=H.length;pt<_t;pt++)H[pt]._private[O.field][st]=void 0}}O.triggerEvent&&N[O.triggerFnName](O.event)}else if(L===void 0){for(var St=0,Et=H.length;St<Et;St++)for(var Nt=H[St]._private[O.field],Pt=Object.keys(Nt),qt=0;qt<Pt.length;qt++){var re=Pt[qt],ee=!O.immutableKeys[re];ee&&(Nt[re]=void 0)}O.triggerEvent&&N[O.triggerFnName](O.event)}return N}}},xtt={eventAliasesOn:function(p){var x=p;x.addListener=x.listen=x.bind=x.on,x.unlisten=x.unbind=x.off=x.removeListener,x.trigger=x.emit,x.pon=x.promiseOn=function(C,L){var O=this,N=Array.prototype.slice.call(arguments,0);return new e6(function(j,H){var q=function(bt){O.off.apply(O,Z),j(bt)},W=N.concat([q]),Z=W.concat([]);O.on.apply(O,W)})}}},Kc={};[vJ,ytt,xtt].forEach(function(y){we(Kc,y)});var ktt={animate:Kc.animate(),animation:Kc.animation(),animated:Kc.animated(),clearQueue:Kc.clearQueue(),delay:Kc.delay(),delayAnimation:Kc.delayAnimation(),stop:Kc.stop()},lC={classes:function(p){var x=this;if(p===void 0){var C=[];return x[0]._private.classes.forEach(function(pt){return C.push(pt)}),C}else rt(p)||(p=(p||"").match(/\S+/g)||[]);for(var L=[],O=new Wx(p),N=0;N<x.length;N++){for(var j=x[N],H=j._private,q=H.classes,W=!1,Z=0;Z<p.length;Z++){var st=p[Z],bt=q.has(st);if(!bt){W=!0;break}}W||(W=q.size!==p.length),W&&(H.classes=O,L.push(j))}return L.length>0&&this.spawn(L).updateStyle().emit("class"),x},addClass:function(p){return this.toggleClass(p,!0)},hasClass:function(p){var x=this[0];return x!=null&&x._private.classes.has(p)},toggleClass:function(p,x){rt(p)||(p=p.match(/\S+/g)||[]);for(var C=this,L=x===void 0,O=[],N=0,j=C.length;N<j;N++)for(var H=C[N],q=H._private.classes,W=!1,Z=0;Z<p.length;Z++){var st=p[Z],bt=q.has(st),pt=!1;x||L&&!bt?(q.add(st),pt=!0):(!x||L&&bt)&&(q.delete(st),pt=!0),!W&&pt&&(O.push(H),W=!0)}return O.length>0&&this.spawn(O).updateStyle().emit("class"),C},removeClass:function(p){return this.toggleClass(p,!1)},flashClass:function(p,x){var C=this;if(x==null)x=250;else if(x===0)return C;return C.addClass(p),setTimeout(function(){C.removeClass(p)},x),C}};lC.className=lC.classNames=lC.classes;var yc={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:`"(?:\\\\"|[^"])*"|'(?:\\\\'|[^'])*'`,number:sn,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};yc.variable="(?:[\\w-.]|(?:\\\\"+yc.metaChar+"))+",yc.className="(?:[\\w-]|(?:\\\\"+yc.metaChar+"))+",yc.value=yc.string+"|"+yc.number,yc.id=yc.variable,function(){var y,p,x;for(y=yc.comparatorOp.split("|"),x=0;x<y.length;x++)p=y[x],yc.comparatorOp+="|@"+p;for(y=yc.comparatorOp.split("|"),x=0;x<y.length;x++)p=y[x],!(p.indexOf("!")>=0)&&p!=="="&&(yc.comparatorOp+="|\\!"+p)}();var bu=function(){return{checks:[]}},Xi={GROUP:0,COLLECTION:1,FILTER:2,DATA_COMPARE:3,DATA_EXIST:4,DATA_BOOL:5,META_COMPARE:6,STATE:7,ID:8,CLASS:9,UNDIRECTED_EDGE:10,DIRECTED_EDGE:11,NODE_SOURCE:12,NODE_TARGET:13,NODE_NEIGHBOR:14,CHILD:15,DESCENDANT:16,PARENT:17,ANCESTOR:18,COMPOUND_SPLIT:19,TRUE:20},JD=[{selector:":selected",matches:function(p){return p.selected()}},{selector:":unselected",matches:function(p){return!p.selected()}},{selector:":selectable",matches:function(p){return p.selectable()}},{selector:":unselectable",matches:function(p){return!p.selectable()}},{selector:":locked",matches:function(p){return p.locked()}},{selector:":unlocked",matches:function(p){return!p.locked()}},{selector:":visible",matches:function(p){return p.visible()}},{selector:":hidden",matches:function(p){return!p.visible()}},{selector:":transparent",matches:function(p){return p.transparent()}},{selector:":grabbed",matches:function(p){return p.grabbed()}},{selector:":free",matches:function(p){return!p.grabbed()}},{selector:":removed",matches:function(p){return p.removed()}},{selector:":inside",matches:function(p){return!p.removed()}},{selector:":grabbable",matches:function(p){return p.grabbable()}},{selector:":ungrabbable",matches:function(p){return!p.grabbable()}},{selector:":animated",matches:function(p){return p.animated()}},{selector:":unanimated",matches:function(p){return!p.animated()}},{selector:":parent",matches:function(p){return p.isParent()}},{selector:":childless",matches:function(p){return p.isChildless()}},{selector:":child",matches:function(p){return p.isChild()}},{selector:":orphan",matches:function(p){return p.isOrphan()}},{selector:":nonorphan",matches:function(p){return p.isChild()}},{selector:":compound",matches:function(p){return p.isNode()?p.isParent():p.source().isParent()||p.target().isParent()}},{selector:":loop",matches:function(p){return p.isLoop()}},{selector:":simple",matches:function(p){return p.isSimple()}},{selector:":active",matches:function(p){return p.active()}},{selector:":inactive",matches:function(p){return!p.active()}},{selector:":backgrounding",matches:function(p){return p.backgrounding()}},{selector:":nonbackgrounding",matches:function(p){return!p.backgrounding()}}].sort(function(y,p){return Br(y.selector,p.selector)}),Ett=function(){for(var y={},p,x=0;x<JD.length;x++)p=JD[x],y[p.selector]=p.matches;return y}(),Ttt=function(p,x){return Ett[p](x)},Ctt="("+JD.map(function(y){return y.selector}).join("|")+")",s6=function(p){return p.replace(new RegExp("\\\\("+yc.metaChar+")","g"),function(x,C){return C})},B2=function(p,x,C){p[p.length-1]=C},z8=[{name:"group",query:!0,regex:"("+yc.group+")",populate:function(p,x,C){var L=E(C,1),O=L[0];x.checks.push({type:Xi.GROUP,value:O==="*"?O:O+"s"})}},{name:"state",query:!0,regex:Ctt,populate:function(p,x,C){var L=E(C,1),O=L[0];x.checks.push({type:Xi.STATE,value:O})}},{name:"id",query:!0,regex:"\\#("+yc.id+")",populate:function(p,x,C){var L=E(C,1),O=L[0];x.checks.push({type:Xi.ID,value:s6(O)})}},{name:"className",query:!0,regex:"\\.("+yc.className+")",populate:function(p,x,C){var L=E(C,1),O=L[0];x.checks.push({type:Xi.CLASS,value:s6(O)})}},{name:"dataExists",query:!0,regex:"\\[\\s*("+yc.variable+")\\s*\\]",populate:function(p,x,C){var L=E(C,1),O=L[0];x.checks.push({type:Xi.DATA_EXIST,field:s6(O)})}},{name:"dataCompare",query:!0,regex:"\\[\\s*("+yc.variable+")\\s*("+yc.comparatorOp+")\\s*("+yc.value+")\\s*\\]",populate:function(p,x,C){var L=E(C,3),O=L[0],N=L[1],j=L[2],H=new RegExp("^"+yc.string+"$").exec(j)!=null;H?j=j.substring(1,j.length-1):j=parseFloat(j),x.checks.push({type:Xi.DATA_COMPARE,field:s6(O),operator:N,value:j})}},{name:"dataBool",query:!0,regex:"\\[\\s*("+yc.boolOp+")\\s*("+yc.variable+")\\s*\\]",populate:function(p,x,C){var L=E(C,2),O=L[0],N=L[1];x.checks.push({type:Xi.DATA_BOOL,field:s6(N),operator:O})}},{name:"metaCompare",query:!0,regex:"\\[\\[\\s*("+yc.meta+")\\s*("+yc.comparatorOp+")\\s*("+yc.number+")\\s*\\]\\]",populate:function(p,x,C){var L=E(C,3),O=L[0],N=L[1],j=L[2];x.checks.push({type:Xi.META_COMPARE,field:s6(O),operator:N,value:parseFloat(j)})}},{name:"nextQuery",separator:!0,regex:yc.separator,populate:function(p,x){var C=p.currentSubject,L=p.edgeCount,O=p.compoundCount,N=p[p.length-1];C!=null&&(N.subject=C,p.currentSubject=null),N.edgeCount=L,N.compoundCount=O,p.edgeCount=0,p.compoundCount=0;var j=p[p.length++]=bu();return j}},{name:"directedEdge",separator:!0,regex:yc.directedEdge,populate:function(p,x){if(p.currentSubject==null){var C=bu(),L=x,O=bu();return C.checks.push({type:Xi.DIRECTED_EDGE,source:L,target:O}),B2(p,x,C),p.edgeCount++,O}else{var N=bu(),j=x,H=bu();return N.checks.push({type:Xi.NODE_SOURCE,source:j,target:H}),B2(p,x,N),p.edgeCount++,H}}},{name:"undirectedEdge",separator:!0,regex:yc.undirectedEdge,populate:function(p,x){if(p.currentSubject==null){var C=bu(),L=x,O=bu();return C.checks.push({type:Xi.UNDIRECTED_EDGE,nodes:[L,O]}),B2(p,x,C),p.edgeCount++,O}else{var N=bu(),j=x,H=bu();return N.checks.push({type:Xi.NODE_NEIGHBOR,node:j,neighbor:H}),B2(p,x,N),H}}},{name:"child",separator:!0,regex:yc.child,populate:function(p,x){if(p.currentSubject==null){var C=bu(),L=bu(),O=p[p.length-1];return C.checks.push({type:Xi.CHILD,parent:O,child:L}),B2(p,x,C),p.compoundCount++,L}else if(p.currentSubject===x){var N=bu(),j=p[p.length-1],H=bu(),q=bu(),W=bu(),Z=bu();return N.checks.push({type:Xi.COMPOUND_SPLIT,left:j,right:H,subject:q}),q.checks=x.checks,x.checks=[{type:Xi.TRUE}],Z.checks.push({type:Xi.TRUE}),H.checks.push({type:Xi.PARENT,parent:Z,child:W}),B2(p,j,N),p.currentSubject=q,p.compoundCount++,W}else{var st=bu(),bt=bu(),pt=[{type:Xi.PARENT,parent:st,child:bt}];return st.checks=x.checks,x.checks=pt,p.compoundCount++,bt}}},{name:"descendant",separator:!0,regex:yc.descendant,populate:function(p,x){if(p.currentSubject==null){var C=bu(),L=bu(),O=p[p.length-1];return C.checks.push({type:Xi.DESCENDANT,ancestor:O,descendant:L}),B2(p,x,C),p.compoundCount++,L}else if(p.currentSubject===x){var N=bu(),j=p[p.length-1],H=bu(),q=bu(),W=bu(),Z=bu();return N.checks.push({type:Xi.COMPOUND_SPLIT,left:j,right:H,subject:q}),q.checks=x.checks,x.checks=[{type:Xi.TRUE}],Z.checks.push({type:Xi.TRUE}),H.checks.push({type:Xi.ANCESTOR,ancestor:Z,descendant:W}),B2(p,j,N),p.currentSubject=q,p.compoundCount++,W}else{var st=bu(),bt=bu(),pt=[{type:Xi.ANCESTOR,ancestor:st,descendant:bt}];return st.checks=x.checks,x.checks=pt,p.compoundCount++,bt}}},{name:"subject",modifier:!0,regex:yc.subject,populate:function(p,x){if(p.currentSubject!=null&&p.currentSubject!==x)return Gc("Redefinition of subject in selector `"+p.toString()+"`"),!1;p.currentSubject=x;var C=p[p.length-1],L=C.checks[0],O=L==null?null:L.type;O===Xi.DIRECTED_EDGE?L.type=Xi.NODE_TARGET:O===Xi.UNDIRECTED_EDGE&&(L.type=Xi.NODE_NEIGHBOR,L.node=L.nodes[1],L.neighbor=L.nodes[0],L.nodes=null)}}];z8.forEach(function(y){return y.regexObj=new RegExp("^"+y.regex)});var Stt=function(p){for(var x,C,L,O=0;O<z8.length;O++){var N=z8[O],j=N.name,H=p.match(N.regexObj);if(H!=null){C=H,x=N,L=j;var q=H[0];p=p.substring(q.length);break}}return{expr:x,match:C,name:L,remaining:p}},ZD=function(p){var x=p.match(/^\s+/);if(x){var C=x[0];p=p.substring(C.length)}return p},_tt=function(p){var x=this,C=x.inputText=p,L=x[0]=bu();for(x.length=1,C=ZD(C);;){var O=Stt(C);if(O.expr==null)return Gc("The selector `"+p+"`is invalid"),!1;var N=O.match.slice(1),j=O.expr.populate(x,L,N);if(j===!1)return!1;if(j!=null&&(L=j),C=O.remaining,C.match(/^\s*$/))break}var H=x[x.length-1];x.currentSubject!=null&&(H.subject=x.currentSubject),H.edgeCount=x.edgeCount,H.compoundCount=x.compoundCount;for(var q=0;q<x.length;q++){var W=x[q];if(W.compoundCount>0&&W.edgeCount>0)return Gc("The selector `"+p+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(W.edgeCount>1)return Gc("The selector `"+p+"` is invalid because it uses multiple edge selectors"),!1;W.edgeCount===1&&Gc("The selector `"+p+"` is deprecated. Edge selectors do not take effect on changes to source and target nodes after an edge is added, for performance reasons. Use a class or data selector on edges instead, updating the class or data of an edge when your app detects a change in source or target nodes.")}return!0},Att=function(){if(this.toStringCache!=null)return this.toStringCache;for(var p=function(W){return W??""},x=function(W){return mt(W)?'"'+W+'"':p(W)},C=function(W){return" "+W+" "},L=function(W,Z){var st=W.type,bt=W.value;switch(st){case Xi.GROUP:{var pt=p(bt);return pt.substring(0,pt.length-1)}case Xi.DATA_COMPARE:{var _t=W.field,St=W.operator;return"["+_t+C(p(St))+x(bt)+"]"}case Xi.DATA_BOOL:{var Et=W.operator,Nt=W.field;return"["+p(Et)+Nt+"]"}case Xi.DATA_EXIST:{var Pt=W.field;return"["+Pt+"]"}case Xi.META_COMPARE:{var qt=W.operator,re=W.field;return"[["+re+C(p(qt))+x(bt)+"]]"}case Xi.STATE:return bt;case Xi.ID:return"#"+bt;case Xi.CLASS:return"."+bt;case Xi.PARENT:case Xi.CHILD:return O(W.parent,Z)+C(">")+O(W.child,Z);case Xi.ANCESTOR:case Xi.DESCENDANT:return O(W.ancestor,Z)+" "+O(W.descendant,Z);case Xi.COMPOUND_SPLIT:{var ee=O(W.left,Z),Ut=O(W.subject,Z),de=O(W.right,Z);return ee+(ee.length>0?" ":"")+Ut+de}case Xi.TRUE:return""}},O=function(W,Z){return W.checks.reduce(function(st,bt,pt){return st+(Z===W&&pt===0?"$":"")+L(bt,Z)},"")},N="",j=0;j<this.length;j++){var H=this[j];N+=O(H,H.subject),this.length>1&&j<this.length-1&&(N+=", ")}return this.toStringCache=N,N},Ltt={parse:_tt,toString:Att},IR=function(p,x,C){var L,O=mt(p),N=Q(p),j=mt(C),H,q,W=!1,Z=!1,st=!1;switch(x.indexOf("!")>=0&&(x=x.replace("!",""),Z=!0),x.indexOf("@")>=0&&(x=x.replace("@",""),W=!0),(O||j||W)&&(H=!O&&!N?"":""+p,q=""+C),W&&(p=H=H.toLowerCase(),C=q=q.toLowerCase()),x){case"*=":L=H.indexOf(q)>=0;break;case"$=":L=H.indexOf(q,H.length-q.length)>=0;break;case"^=":L=H.indexOf(q)===0;break;case"=":L=p===C;break;case">":st=!0,L=p>C;break;case">=":st=!0,L=p>=C;break;case"<":st=!0,L=p<C;break;case"<=":st=!0,L=p<=C;break;default:L=!1;break}return Z&&(p!=null||!st)&&(L=!L),L},Dtt=function(p,x){switch(x){case"?":return!!p;case"!":return!p;case"^":return p===void 0}},Mtt=function(p){return p!==void 0},tM=function(p,x){return p.data(x)},Itt=function(p,x){return p[x]()},zl=[],Yu=function(p,x){return p.checks.every(function(C){return zl[C.type](C,x)})};zl[Xi.GROUP]=function(y,p){var x=y.value;return x==="*"||x===p.group()},zl[Xi.STATE]=function(y,p){var x=y.value;return Ttt(x,p)},zl[Xi.ID]=function(y,p){var x=y.value;return p.id()===x},zl[Xi.CLASS]=function(y,p){var x=y.value;return p.hasClass(x)},zl[Xi.META_COMPARE]=function(y,p){var x=y.field,C=y.operator,L=y.value;return IR(Itt(p,x),C,L)},zl[Xi.DATA_COMPARE]=function(y,p){var x=y.field,C=y.operator,L=y.value;return IR(tM(p,x),C,L)},zl[Xi.DATA_BOOL]=function(y,p){var x=y.field,C=y.operator;return Dtt(tM(p,x),C)},zl[Xi.DATA_EXIST]=function(y,p){var x=y.field;return y.operator,Mtt(tM(p,x))},zl[Xi.UNDIRECTED_EDGE]=function(y,p){var x=y.nodes[0],C=y.nodes[1],L=p.source(),O=p.target();return Yu(x,L)&&Yu(C,O)||Yu(C,L)&&Yu(x,O)},zl[Xi.NODE_NEIGHBOR]=function(y,p){return Yu(y.node,p)&&p.neighborhood().some(function(x){return x.isNode()&&Yu(y.neighbor,x)})},zl[Xi.DIRECTED_EDGE]=function(y,p){return Yu(y.source,p.source())&&Yu(y.target,p.target())},zl[Xi.NODE_SOURCE]=function(y,p){return Yu(y.source,p)&&p.outgoers().some(function(x){return x.isNode()&&Yu(y.target,x)})},zl[Xi.NODE_TARGET]=function(y,p){return Yu(y.target,p)&&p.incomers().some(function(x){return x.isNode()&&Yu(y.source,x)})},zl[Xi.CHILD]=function(y,p){return Yu(y.child,p)&&Yu(y.parent,p.parent())},zl[Xi.PARENT]=function(y,p){return Yu(y.parent,p)&&p.children().some(function(x){return Yu(y.child,x)})},zl[Xi.DESCENDANT]=function(y,p){return Yu(y.descendant,p)&&p.ancestors().some(function(x){return Yu(y.ancestor,x)})},zl[Xi.ANCESTOR]=function(y,p){return Yu(y.ancestor,p)&&p.descendants().some(function(x){return Yu(y.descendant,x)})},zl[Xi.COMPOUND_SPLIT]=function(y,p){return Yu(y.subject,p)&&Yu(y.left,p)&&Yu(y.right,p)},zl[Xi.TRUE]=function(){return!0},zl[Xi.COLLECTION]=function(y,p){var x=y.value;return x.has(p)},zl[Xi.FILTER]=function(y,p){var x=y.value;return x(p)};var OR=function(p){var x=this;if(x.length===1&&x[0].checks.length===1&&x[0].checks[0].type===Xi.ID)return p.getElementById(x[0].checks[0].value).collection();var C=function(O){for(var N=0;N<x.length;N++){var j=x[N];if(Yu(j,O))return!0}return!1};return x.text()==null&&(C=function(){return!0}),p.filter(C)},Ott=function(p){for(var x=this,C=0;C<x.length;C++){var L=x[C];if(Yu(L,p))return!0}return!1},Ntt={matches:Ott,filter:OR},ly=function(p){this.inputText=p,this.currentSubject=null,this.compoundCount=0,this.edgeCount=0,this.length=0,p==null||mt(p)&&p.match(/^\s*$/)||(yt(p)?this.addQuery({checks:[{type:Xi.COLLECTION,value:p.collection()}]}):ct(p)?this.addQuery({checks:[{type:Xi.FILTER,value:p}]}):mt(p)?this.parse(p)||(this.invalid=!0):$l("A selector must be created from a string; found "))},x4=ly.prototype;[Ltt,Ntt].forEach(function(y){return we(x4,y)}),x4.text=function(){return this.inputText},x4.size=function(){return this.length},x4.eq=function(y){return this[y]},x4.sameText=function(y){return!this.invalid&&!y.invalid&&this.text()===y.text()},x4.addQuery=function(y){this[this.length++]=y},x4.selector=x4.toString;var hy={allAre:function(p){var x=new ly(p);return this.every(function(C){return x.matches(C)})},is:function(p){var x=new ly(p);return this.some(function(C){return x.matches(C)})},some:function(p,x){for(var C=0;C<this.length;C++){var L=x?p.apply(x,[this[C],C,this]):p(this[C],C,this);if(L)return!0}return!1},every:function(p,x){for(var C=0;C<this.length;C++){var L=x?p.apply(x,[this[C],C,this]):p(this[C],C,this);if(!L)return!1}return!0},same:function(p){if(this===p)return!0;p=this.cy().collection(p);var x=this.length,C=p.length;return x!==C?!1:x===1?this[0]===p[0]:this.every(function(L){return p.hasElementWithId(L.id())})},anySame:function(p){return p=this.cy().collection(p),this.some(function(x){return p.hasElementWithId(x.id())})},allAreNeighbors:function(p){p=this.cy().collection(p);var x=this.neighborhood();return p.every(function(C){return x.hasElementWithId(C.id())})},contains:function(p){p=this.cy().collection(p);var x=this;return p.every(function(C){return x.hasElementWithId(C.id())})}};hy.allAreNeighbours=hy.allAreNeighbors,hy.has=hy.contains,hy.equal=hy.equals=hy.same;var ap=function(p,x){return function(L,O,N,j){var H=L,q=this,W;if(H==null?W="":yt(H)&&H.length===1&&(W=H.id()),q.length===1&&W){var Z=q[0]._private,st=Z.traversalCache=Z.traversalCache||{},bt=st[x]=st[x]||[],pt=Nd(W),_t=bt[pt];return _t||(bt[pt]=p.call(q,L,O,N,j))}else return p.call(q,L,O,N,j)}},a6={parent:function(p){var x=[];if(this.length===1){var C=this[0]._private.parent;if(C)return C}for(var L=0;L<this.length;L++){var O=this[L],N=O._private.parent;N&&x.push(N)}return this.spawn(x,!0).filter(p)},parents:function(p){for(var x=[],C=this.parent();C.nonempty();){for(var L=0;L<C.length;L++){var O=C[L];x.push(O)}C=C.parent()}return this.spawn(x,!0).filter(p)},commonAncestors:function(p){for(var x,C=0;C<this.length;C++){var L=this[C],O=L.parents();x=x||O,x=x.intersect(O)}return x.filter(p)},orphans:function(p){return this.stdFilter(function(x){return x.isOrphan()}).filter(p)},nonorphans:function(p){return this.stdFilter(function(x){return x.isChild()}).filter(p)},children:ap(function(y){for(var p=[],x=0;x<this.length;x++)for(var C=this[x],L=C._private.children,O=0;O<L.length;O++)p.push(L[O]);return this.spawn(p,!0).filter(y)},"children"),siblings:function(p){return this.parent().children().not(this).filter(p)},isParent:function(){var p=this[0];if(p)return p.isNode()&&p._private.children.length!==0},isChildless:function(){var p=this[0];if(p)return p.isNode()&&p._private.children.length===0},isChild:function(){var p=this[0];if(p)return p.isNode()&&p._private.parent!=null},isOrphan:function(){var p=this[0];if(p)return p.isNode()&&p._private.parent==null},descendants:function(p){var x=[];function C(L){for(var O=0;O<L.length;O++){var N=L[O];x.push(N),N.children().nonempty()&&C(N.children())}}return C(this.children()),this.spawn(x,!0).filter(p)}};function eM(y,p,x,C){for(var L=[],O=new Wx,N=y.cy(),j=N.hasCompoundNodes(),H=0;H<y.length;H++){var q=y[H];x?L.push(q):j&&C(L,O,q)}for(;L.length>0;){var W=L.shift();p(W),O.add(W.id()),j&&C(L,O,W)}return y}function NR(y,p,x){if(x.isParent())for(var C=x._private.children,L=0;L<C.length;L++){var O=C[L];p.has(O.id())||y.push(O)}}a6.forEachDown=function(y){var p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return eM(this,y,p,NR)};function PR(y,p,x){if(x.isChild()){var C=x._private.parent;p.has(C.id())||y.push(C)}}a6.forEachUp=function(y){var p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return eM(this,y,p,PR)};function Ptt(y,p,x){PR(y,p,x),NR(y,p,x)}a6.forEachUpAndDown=function(y){var p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return eM(this,y,p,Ptt)},a6.ancestors=a6.parents;var G1,FR;G1=FR={data:Kc.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),removeData:Kc.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:Kc.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:Kc.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:Kc.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:Kc.removeData({field:"rscratch",triggerEvent:!1}),id:function(){var p=this[0];if(p)return p._private.data.id}},G1.attr=G1.data,G1.removeAttr=G1.removeData;var fy=FR,q8={};function nM(y){return function(p){var x=this;if(p===void 0&&(p=!0),x.length!==0)if(x.isNode()&&!x.removed()){for(var C=0,L=x[0],O=L._private.edges,N=0;N<O.length;N++){var j=O[N];!p&&j.isLoop()||(C+=y(L,j))}return C}else return}}we(q8,{degree:nM(function(y,p){return p.source().same(p.target())?2:1}),indegree:nM(function(y,p){return p.target().same(y)?1:0}),outdegree:nM(function(y,p){return p.source().same(y)?1:0})});function o6(y,p){return function(x){for(var C,L=this.nodes(),O=0;O<L.length;O++){var N=L[O],j=N[y](x);j!==void 0&&(C===void 0||p(j,C))&&(C=j)}return C}}we(q8,{minDegree:o6("degree",function(y,p){return y<p}),maxDegree:o6("degree",function(y,p){return y>p}),minIndegree:o6("indegree",function(y,p){return y<p}),maxIndegree:o6("indegree",function(y,p){return y>p}),minOutdegree:o6("outdegree",function(y,p){return y<p}),maxOutdegree:o6("outdegree",function(y,p){return y>p})}),we(q8,{totalDegree:function(p){for(var x=0,C=this.nodes(),L=0;L<C.length;L++)x+=C[L].degree(p);return x}});var db,BR,RR=function(p,x,C){for(var L=0;L<p.length;L++){var O=p[L];if(!O.locked()){var N=O._private.position,j={x:x.x!=null?x.x-N.x:0,y:x.y!=null?x.y-N.y:0};O.isParent()&&!(j.x===0&&j.y===0)&&O.children().shift(j,C),O.dirtyBoundingBoxCache()}}},jR={field:"position",bindingEvent:"position",allowBinding:!0,allowSetting:!0,settingEvent:"position",settingTriggersEvent:!0,triggerFnName:"emitAndNotify",allowGetting:!0,validKeys:["x","y"],beforeGet:function(p){p.updateCompoundBounds()},beforeSet:function(p,x){RR(p,x,!1)},onSet:function(p){p.dirtyCompoundBoundsCache()},canSet:function(p){return!p.locked()}};db=BR={position:Kc.data(jR),silentPosition:Kc.data(we({},jR,{allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!1,beforeSet:function(p,x){RR(p,x,!0)},onSet:function(p){p.dirtyCompoundBoundsCache()}})),positions:function(p,x){if(it(p))x?this.silentPosition(p):this.position(p);else if(ct(p)){var C=p,L=this.cy();L.startBatch();for(var O=0;O<this.length;O++){var N=this[O],j=void 0;(j=C(N,O))&&(x?N.silentPosition(j):N.position(j))}L.endBatch()}return this},silentPositions:function(p){return this.positions(p,!0)},shift:function(p,x,C){var L;if(it(p)?(L={x:Q(p.x)?p.x:0,y:Q(p.y)?p.y:0},C=x):mt(p)&&Q(x)&&(L={x:0,y:0},L[p]=x),L!=null){var O=this.cy();O.startBatch();for(var N=0;N<this.length;N++){var j=this[N];if(!(O.hasCompoundNodes()&&j.isChild()&&j.ancestors().anySame(this))){var H=j.position(),q={x:H.x+L.x,y:H.y+L.y};C?j.silentPosition(q):j.position(q)}}O.endBatch()}return this},silentShift:function(p,x){return it(p)?this.shift(p,!0):mt(p)&&Q(x)&&this.shift(p,x,!0),this},renderedPosition:function(p,x){var C=this[0],L=this.cy(),O=L.zoom(),N=L.pan(),j=it(p)?p:void 0,H=j!==void 0||x!==void 0&&mt(p);if(C&&C.isNode())if(H)for(var q=0;q<this.length;q++){var W=this[q];x!==void 0?W.position(p,(x-N[p])/O):j!==void 0&&W.position(PB(j,O,N))}else{var Z=C.position();return j=W9(Z,O,N),p===void 0?j:j[p]}else if(!H)return;return this},relativePosition:function(p,x){var C=this[0],L=this.cy(),O=it(p)?p:void 0,N=O!==void 0||x!==void 0&&mt(p),j=L.hasCompoundNodes();if(C&&C.isNode())if(N)for(var H=0;H<this.length;H++){var q=this[H],W=j?q.parent():null,Z=W&&W.length>0,st=Z;Z&&(W=W[0]);var bt=st?W.position():{x:0,y:0};x!==void 0?q.position(p,x+bt[p]):O!==void 0&&q.position({x:O.x+bt.x,y:O.y+bt.y})}else{var pt=C.position(),_t=j?C.parent():null,St=_t&&_t.length>0,Et=St;St&&(_t=_t[0]);var Nt=Et?_t.position():{x:0,y:0};return O={x:pt.x-Nt.x,y:pt.y-Nt.y},p===void 0?O:O[p]}else if(!N)return;return this}},db.modelPosition=db.point=db.position,db.modelPositions=db.points=db.positions,db.renderedPoint=db.renderedPosition,db.relativePoint=db.relativePosition;var Ftt=BR,c6,dy;c6=dy={},dy.renderedBoundingBox=function(y){var p=this.boundingBox(y),x=this.cy(),C=x.zoom(),L=x.pan(),O=p.x1*C+L.x,N=p.x2*C+L.x,j=p.y1*C+L.y,H=p.y2*C+L.y;return{x1:O,x2:N,y1:j,y2:H,w:N-O,h:H-j}},dy.dirtyCompoundBoundsCache=function(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,p=this.cy();return!p.styleEnabled()||!p.hasCompoundNodes()?this:(this.forEachUp(function(x){if(x.isParent()){var C=x._private;C.compoundBoundsClean=!1,C.bbCache=null,y||x.emitAndNotify("bounds")}}),this)},dy.updateCompoundBounds=function(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,p=this.cy();if(!p.styleEnabled()||!p.hasCompoundNodes())return this;if(!y&&p.batching())return this;function x(N){if(!N.isParent())return;var j=N._private,H=N.children(),q=N.pstyle("compound-sizing-wrt-labels").value==="include",W={width:{val:N.pstyle("min-width").pfValue,left:N.pstyle("min-width-bias-left"),right:N.pstyle("min-width-bias-right")},height:{val:N.pstyle("min-height").pfValue,top:N.pstyle("min-height-bias-top"),bottom:N.pstyle("min-height-bias-bottom")}},Z=H.boundingBox({includeLabels:q,includeOverlays:!1,useCache:!1}),st=j.position;(Z.w===0||Z.h===0)&&(Z={w:N.pstyle("width").pfValue,h:N.pstyle("height").pfValue},Z.x1=st.x-Z.w/2,Z.x2=st.x+Z.w/2,Z.y1=st.y-Z.h/2,Z.y2=st.y+Z.h/2);function bt(Yt,Ee,Te){var ie=0,ze=0,me=Ee+Te;return Yt>0&&me>0&&(ie=Ee/me*Yt,ze=Te/me*Yt),{biasDiff:ie,biasComplementDiff:ze}}function pt(Yt,Ee,Te,ie){if(Te.units==="%")switch(ie){case"width":return Yt>0?Te.pfValue*Yt:0;case"height":return Ee>0?Te.pfValue*Ee:0;case"average":return Yt>0&&Ee>0?Te.pfValue*(Yt+Ee)/2:0;case"min":return Yt>0&&Ee>0?Yt>Ee?Te.pfValue*Ee:Te.pfValue*Yt:0;case"max":return Yt>0&&Ee>0?Yt>Ee?Te.pfValue*Yt:Te.pfValue*Ee:0;default:return 0}else return Te.units==="px"?Te.pfValue:0}var _t=W.width.left.value;W.width.left.units==="px"&&W.width.val>0&&(_t=_t*100/W.width.val);var St=W.width.right.value;W.width.right.units==="px"&&W.width.val>0&&(St=St*100/W.width.val);var Et=W.height.top.value;W.height.top.units==="px"&&W.height.val>0&&(Et=Et*100/W.height.val);var Nt=W.height.bottom.value;W.height.bottom.units==="px"&&W.height.val>0&&(Nt=Nt*100/W.height.val);var Pt=bt(W.width.val-Z.w,_t,St),qt=Pt.biasDiff,re=Pt.biasComplementDiff,ee=bt(W.height.val-Z.h,Et,Nt),Ut=ee.biasDiff,de=ee.biasComplementDiff;j.autoPadding=pt(Z.w,Z.h,N.pstyle("padding"),N.pstyle("padding-relative-to").value),j.autoWidth=Math.max(Z.w,W.width.val),st.x=(-qt+Z.x1+Z.x2+re)/2,j.autoHeight=Math.max(Z.h,W.height.val),st.y=(-Ut+Z.y1+Z.y2+de)/2}for(var C=0;C<this.length;C++){var L=this[C],O=L._private;(!O.compoundBoundsClean||y)&&(x(L),p.batching()||(O.compoundBoundsClean=!0))}return this};var op=function(p){return p===1/0||p===-1/0?0:p},gb=function(p,x,C,L,O){L-x===0||O-C===0||x==null||C==null||L==null||O==null||(p.x1=x<p.x1?x:p.x1,p.x2=L>p.x2?L:p.x2,p.y1=C<p.y1?C:p.y1,p.y2=O>p.y2?O:p.y2,p.w=p.x2-p.x1,p.h=p.y2-p.y1)},k4=function(p,x){return x==null?p:gb(p,x.x1,x.y1,x.x2,x.y2)},H8=function(p,x,C){return fb(p,x,C)},hC=function(p,x,C){if(!x.cy().headless()){var L=x._private,O=L.rstyle,N=O.arrowWidth/2,j=x.pstyle(C+"-arrow-shape").value,H,q;if(j!=="none"){C==="source"?(H=O.srcX,q=O.srcY):C==="target"?(H=O.tgtX,q=O.tgtY):(H=O.midX,q=O.midY);var W=L.arrowBounds=L.arrowBounds||{},Z=W[C]=W[C]||{};Z.x1=H-N,Z.y1=q-N,Z.x2=H+N,Z.y2=q+N,Z.w=Z.x2-Z.x1,Z.h=Z.y2-Z.y1,X9(Z,1),gb(p,Z.x1,Z.y1,Z.x2,Z.y2)}}},rM=function(p,x,C){if(!x.cy().headless()){var L;C?L=C+"-":L="";var O=x._private,N=O.rstyle,j=x.pstyle(L+"label").strValue;if(j){var H=x.pstyle("text-halign"),q=x.pstyle("text-valign"),W=H8(N,"labelWidth",C),Z=H8(N,"labelHeight",C),st=H8(N,"labelX",C),bt=H8(N,"labelY",C),pt=x.pstyle(L+"text-margin-x").pfValue,_t=x.pstyle(L+"text-margin-y").pfValue,St=x.isEdge(),Et=x.pstyle(L+"text-rotation"),Nt=x.pstyle("text-outline-width").pfValue,Pt=x.pstyle("text-border-width").pfValue,qt=Pt/2,re=x.pstyle("text-background-padding").pfValue,ee=2,Ut=Z,de=W,Yt=de/2,Ee=Ut/2,Te,ie,ze,me;if(St)Te=st-Yt,ie=st+Yt,ze=bt-Ee,me=bt+Ee;else{switch(H.value){case"left":Te=st-de,ie=st;break;case"center":Te=st-Yt,ie=st+Yt;break;case"right":Te=st,ie=st+de;break}switch(q.value){case"top":ze=bt-Ut,me=bt;break;case"center":ze=bt-Ee,me=bt+Ee;break;case"bottom":ze=bt,me=bt+Ut;break}}Te+=pt-Math.max(Nt,qt)-re-ee,ie+=pt+Math.max(Nt,qt)+re+ee,ze+=_t-Math.max(Nt,qt)-re-ee,me+=_t+Math.max(Nt,qt)+re+ee;var yn=C||"main",nn=O.labelBounds,qe=nn[yn]=nn[yn]||{};qe.x1=Te,qe.y1=ze,qe.x2=ie,qe.y2=me,qe.w=ie-Te,qe.h=me-ze;var Tn=St&&Et.strValue==="autorotate",Xn=Et.pfValue!=null&&Et.pfValue!==0;if(Tn||Xn){var lr=Tn?H8(O.rstyle,"labelAngle",C):Et.pfValue,Sn=Math.cos(lr),or=Math.sin(lr),pr=(Te+ie)/2,kr=(ze+me)/2;if(!St){switch(H.value){case"left":pr=ie;break;case"right":pr=Te;break}switch(q.value){case"top":kr=me;break;case"bottom":kr=ze;break}}var wr=function(na,vi){return na=na-pr,vi=vi-kr,{x:na*Sn-vi*or+pr,y:na*or+vi*Sn+kr}},Cr=wr(Te,ze),$n=wr(Te,me),cr=wr(ie,ze),mr=wr(ie,me);Te=Math.min(Cr.x,$n.x,cr.x,mr.x),ie=Math.max(Cr.x,$n.x,cr.x,mr.x),ze=Math.min(Cr.y,$n.y,cr.y,mr.y),me=Math.max(Cr.y,$n.y,cr.y,mr.y)}var Sr=yn+"Rot",gi=nn[Sr]=nn[Sr]||{};gi.x1=Te,gi.y1=ze,gi.x2=ie,gi.y2=me,gi.w=ie-Te,gi.h=me-ze,gb(p,Te,ze,ie,me),gb(O.labelBounds.all,Te,ze,ie,me)}return p}},Btt=function(p,x){if(!x.cy().headless()){var C=x.pstyle("outline-opacity").value,L=x.pstyle("outline-width").value;if(C>0&&L>0){var O=x.pstyle("outline-offset").value,N=x.pstyle("shape").value,j=L+O,H=(p.w+j*2)/p.w,q=(p.h+j*2)/p.h,W=0,Z=0;["diamond","pentagon","round-triangle"].includes(N)?(H=(p.w+j*2.4)/p.w,Z=-j/3.6):["concave-hexagon","rhomboid","right-rhomboid"].includes(N)?H=(p.w+j*2.4)/p.w:N==="star"?(H=(p.w+j*2.8)/p.w,q=(p.h+j*2.6)/p.h,Z=-j/3.8):N==="triangle"?(H=(p.w+j*2.8)/p.w,q=(p.h+j*2.4)/p.h,Z=-j/1.4):N==="vee"&&(H=(p.w+j*4.4)/p.w,q=(p.h+j*3.8)/p.h,Z=-j*.5);var st=p.h*q-p.h,bt=p.w*H-p.w;if(Q9(p,[Math.ceil(st/2),Math.ceil(bt/2)]),W!=0||Z!==0){var pt=pQ(p,W,Z);BB(p,pt)}}}},Rtt=function(p,x){var C=p._private.cy,L=C.styleEnabled(),O=C.headless(),N=v0(),j=p._private,H=p.isNode(),q=p.isEdge(),W,Z,st,bt,pt,_t,St=j.rstyle,Et=H&&L?p.pstyle("bounds-expansion").pfValue:[0],Nt=function(Qi){return Qi.pstyle("display").value!=="none"},Pt=!L||Nt(p)&&(!q||Nt(p.source())&&Nt(p.target()));if(Pt){var qt=0,re=0;L&&x.includeOverlays&&(qt=p.pstyle("overlay-opacity").value,qt!==0&&(re=p.pstyle("overlay-padding").value));var ee=0,Ut=0;L&&x.includeUnderlays&&(ee=p.pstyle("underlay-opacity").value,ee!==0&&(Ut=p.pstyle("underlay-padding").value));var de=Math.max(re,Ut),Yt=0,Ee=0;if(L&&(Yt=p.pstyle("width").pfValue,Ee=Yt/2),H&&x.includeNodes){var Te=p.position();pt=Te.x,_t=Te.y;var ie=p.outerWidth(),ze=ie/2,me=p.outerHeight(),yn=me/2;W=pt-ze,Z=pt+ze,st=_t-yn,bt=_t+yn,gb(N,W,st,Z,bt),L&&x.includeOutlines&&Btt(N,p)}else if(q&&x.includeEdges)if(L&&!O){var nn=p.pstyle("curve-style").strValue;if(W=Math.min(St.srcX,St.midX,St.tgtX),Z=Math.max(St.srcX,St.midX,St.tgtX),st=Math.min(St.srcY,St.midY,St.tgtY),bt=Math.max(St.srcY,St.midY,St.tgtY),W-=Ee,Z+=Ee,st-=Ee,bt+=Ee,gb(N,W,st,Z,bt),nn==="haystack"){var qe=St.haystackPts;if(qe&&qe.length===2){if(W=qe[0].x,st=qe[0].y,Z=qe[1].x,bt=qe[1].y,W>Z){var Tn=W;W=Z,Z=Tn}if(st>bt){var Xn=st;st=bt,bt=Xn}gb(N,W-Ee,st-Ee,Z+Ee,bt+Ee)}}else if(nn==="bezier"||nn==="unbundled-bezier"||nn==="segments"||nn==="taxi"){var lr;switch(nn){case"bezier":case"unbundled-bezier":lr=St.bezierPts;break;case"segments":case"taxi":lr=St.linePts;break}if(lr!=null)for(var Sn=0;Sn<lr.length;Sn++){var or=lr[Sn];W=or.x-Ee,Z=or.x+Ee,st=or.y-Ee,bt=or.y+Ee,gb(N,W,st,Z,bt)}}}else{var pr=p.source(),kr=pr.position(),wr=p.target(),Cr=wr.position();if(W=kr.x,Z=Cr.x,st=kr.y,bt=Cr.y,W>Z){var $n=W;W=Z,Z=$n}if(st>bt){var cr=st;st=bt,bt=cr}W-=Ee,Z+=Ee,st-=Ee,bt+=Ee,gb(N,W,st,Z,bt)}if(L&&x.includeEdges&&q&&(hC(N,p,"mid-source"),hC(N,p,"mid-target"),hC(N,p,"source"),hC(N,p,"target")),L){var mr=p.pstyle("ghost").value==="yes";if(mr){var Sr=p.pstyle("ghost-offset-x").pfValue,gi=p.pstyle("ghost-offset-y").pfValue;gb(N,N.x1+Sr,N.y1+gi,N.x2+Sr,N.y2+gi)}}var ss=j.bodyBounds=j.bodyBounds||{};RB(ss,N),Q9(ss,Et),X9(ss,1),L&&(W=N.x1,Z=N.x2,st=N.y1,bt=N.y2,gb(N,W-de,st-de,Z+de,bt+de));var na=j.overlayBounds=j.overlayBounds||{};RB(na,N),Q9(na,Et),X9(na,1);var vi=j.labelBounds=j.labelBounds||{};vi.all!=null?gQ(vi.all):vi.all=v0(),L&&x.includeLabels&&(x.includeMainLabels&&rM(N,p,null),q&&(x.includeSourceLabels&&rM(N,p,"source"),x.includeTargetLabels&&rM(N,p,"target")))}return N.x1=op(N.x1),N.y1=op(N.y1),N.x2=op(N.x2),N.y2=op(N.y2),N.w=op(N.x2-N.x1),N.h=op(N.y2-N.y1),N.w>0&&N.h>0&&Pt&&(Q9(N,Et),X9(N,1)),N},$R=function(p){var x=0,C=function(N){return(N?1:0)<<x++},L=0;return L+=C(p.incudeNodes),L+=C(p.includeEdges),L+=C(p.includeLabels),L+=C(p.includeMainLabels),L+=C(p.includeSourceLabels),L+=C(p.includeTargetLabels),L+=C(p.includeOverlays),L+=C(p.includeOutlines),L},zR=function(p){if(p.isEdge()){var x=p.source().position(),C=p.target().position(),L=function(N){return Math.round(N)};return U1([L(x.x),L(x.y),L(C.x),L(C.y)])}else return 0},je=function(p,x){var C=p._private,L,O=p.isEdge(),N=x==null?qR:$R(x),j=N===qR,H=zR(p),q=C.bbCachePosKey===H,W=x.useCache&&q,Z=function(_t){return _t._private.bbCache==null||_t._private.styleDirty},st=!W||Z(p)||O&&Z(p.source())||Z(p.target());if(st?(q||p.recalculateRenderedStyle(W),L=Rtt(p,V8),C.bbCache=L,C.bbCachePosKey=H):L=C.bbCache,!j){var bt=p.isNode();L=v0(),(x.includeNodes&&bt||x.includeEdges&&!bt)&&(x.includeOverlays?k4(L,C.overlayBounds):k4(L,C.bodyBounds)),x.includeLabels&&(x.includeMainLabels&&(!O||x.includeSourceLabels&&x.includeTargetLabels)?k4(L,C.labelBounds.all):(x.includeMainLabels&&k4(L,C.labelBounds.mainRot),x.includeSourceLabels&&k4(L,C.labelBounds.sourceRot),x.includeTargetLabels&&k4(L,C.labelBounds.targetRot))),L.w=L.x2-L.x1,L.h=L.y2-L.y1}return L},V8={includeNodes:!0,includeEdges:!0,includeLabels:!0,includeMainLabels:!0,includeSourceLabels:!0,includeTargetLabels:!0,includeOverlays:!0,includeUnderlays:!0,includeOutlines:!0,useCache:!0},qR=$R(V8),HR=p1(V8);dy.boundingBox=function(y){var p;if(this.length===1&&this[0]._private.bbCache!=null&&!this[0]._private.styleDirty&&(y===void 0||y.useCache===void 0||y.useCache===!0))y===void 0?y=V8:y=HR(y),p=je(this[0],y);else{p=v0(),y=y||V8;var x=HR(y),C=this,L=C.cy(),O=L.styleEnabled();if(O)for(var N=0;N<C.length;N++){var j=C[N],H=j._private,q=zR(j),W=H.bbCachePosKey===q,Z=x.useCache&&W&&!H.styleDirty;j.recalculateRenderedStyle(Z)}this.updateCompoundBounds(!y.useCache);for(var st=0;st<C.length;st++){var bt=C[st];k4(p,je(bt,x))}}return p.x1=op(p.x1),p.y1=op(p.y1),p.x2=op(p.x2),p.y2=op(p.y2),p.w=op(p.x2-p.x1),p.h=op(p.y2-p.y1),p},dy.dirtyBoundingBoxCache=function(){for(var y=0;y<this.length;y++){var p=this[y]._private;p.bbCache=null,p.bbCachePosKey=null,p.bodyBounds=null,p.overlayBounds=null,p.labelBounds.all=null,p.labelBounds.source=null,p.labelBounds.target=null,p.labelBounds.main=null,p.labelBounds.sourceRot=null,p.labelBounds.targetRot=null,p.labelBounds.mainRot=null,p.arrowBounds.source=null,p.arrowBounds.target=null,p.arrowBounds["mid-source"]=null,p.arrowBounds["mid-target"]=null}return this.emitAndNotify("bounds"),this},dy.boundingBoxAt=function(y){var p=this.nodes(),x=this.cy(),C=x.hasCompoundNodes(),L=x.collection();if(C&&(L=p.filter(function(q){return q.isParent()}),p=p.not(L)),it(y)){var O=y;y=function(){return O}}var N=function(W,Z){return W._private.bbAtOldPos=y(W,Z)},j=function(W){return W._private.bbAtOldPos};x.startBatch(),p.forEach(N).silentPositions(y),C&&(L.dirtyCompoundBoundsCache(),L.dirtyBoundingBoxCache(),L.updateCompoundBounds(!0));var H=dQ(this.boundingBox({useCache:!1}));return p.silentPositions(j),C&&(L.dirtyCompoundBoundsCache(),L.dirtyBoundingBoxCache(),L.updateCompoundBounds(!0)),x.endBatch(),H},c6.boundingbox=c6.bb=c6.boundingBox,c6.renderedBoundingbox=c6.renderedBoundingBox;var jtt=dy,U8,G8;U8=G8={};var VR=function(p){p.uppercaseName=tn(p.name),p.autoName="auto"+p.uppercaseName,p.labelName="label"+p.uppercaseName,p.outerName="outer"+p.uppercaseName,p.uppercaseOuterName=tn(p.outerName),U8[p.name]=function(){var C=this[0],L=C._private,O=L.cy,N=O._private.styleEnabled;if(C)if(N){if(C.isParent())return C.updateCompoundBounds(),L[p.autoName]||0;var j=C.pstyle(p.name);switch(j.strValue){case"label":return C.recalculateRenderedStyle(),L.rstyle[p.labelName]||0;default:return j.pfValue}}else return 1},U8["outer"+p.uppercaseName]=function(){var C=this[0],L=C._private,O=L.cy,N=O._private.styleEnabled;if(C)if(N){var j=C[p.name](),H=C.pstyle("border-width").pfValue,q=2*C.padding();return j+H+q}else return 1},U8["rendered"+p.uppercaseName]=function(){var C=this[0];if(C){var L=C[p.name]();return L*this.cy().zoom()}},U8["rendered"+p.uppercaseOuterName]=function(){var C=this[0];if(C){var L=C[p.outerName]();return L*this.cy().zoom()}}};VR({name:"width"}),VR({name:"height"}),G8.padding=function(){var y=this[0],p=y._private;return y.isParent()?(y.updateCompoundBounds(),p.autoPadding!==void 0?p.autoPadding:y.pstyle("padding").pfValue):y.pstyle("padding").pfValue},G8.paddedHeight=function(){var y=this[0];return y.height()+2*y.padding()},G8.paddedWidth=function(){var y=this[0];return y.width()+2*y.padding()};var $tt=G8,ztt=function(p,x){if(p.isEdge())return x(p)},qtt=function(p,x){if(p.isEdge()){var C=p.cy();return W9(x(p),C.zoom(),C.pan())}},Htt=function(p,x){if(p.isEdge()){var C=p.cy(),L=C.pan(),O=C.zoom();return x(p).map(function(N){return W9(N,O,L)})}},Vtt=function(p){return p.renderer().getControlPoints(p)},Utt=function(p){return p.renderer().getSegmentPoints(p)},iM=function(p){return p.renderer().getSourceEndpoint(p)},Gtt=function(p){return p.renderer().getTargetEndpoint(p)},Ktt=function(p){return p.renderer().getEdgeMidpoint(p)},UR={controlPoints:{get:Vtt,mult:!0},segmentPoints:{get:Utt,mult:!0},sourceEndpoint:{get:iM},targetEndpoint:{get:Gtt},midpoint:{get:Ktt}},fC=function(p){return"rendered"+p[0].toUpperCase()+p.substr(1)},Wtt=Object.keys(UR).reduce(function(y,p){var x=UR[p],C=fC(p);return y[p]=function(){return ztt(this,x.get)},x.mult?y[C]=function(){return Htt(this,x.get)}:y[C]=function(){return qtt(this,x.get)},y},{}),sM=we({},Ftt,jtt,$tt,Wtt);/*!
1544 */var K8=function(p,x){this.recycle(p,x)};function W8(){return!1}function Y8(){return!0}K8.prototype={instanceString:function(){return"event"},recycle:function(p,x){if(this.isImmediatePropagationStopped=this.isPropagationStopped=this.isDefaultPrevented=W8,p!=null&&p.preventDefault?(this.type=p.type,this.isDefaultPrevented=p.defaultPrevented?Y8:W8):p!=null&&p.type?x=p:this.type=p,x!=null&&(this.originalEvent=x.originalEvent,this.type=x.type!=null?x.type:this.type,this.cy=x.cy,this.target=x.target,this.position=x.position,this.renderedPosition=x.renderedPosition,this.namespace=x.namespace,this.layout=x.layout),this.cy!=null&&this.position!=null&&this.renderedPosition==null){var C=this.position,L=this.cy.zoom(),O=this.cy.pan();this.renderedPosition={x:C.x*L+O.x,y:C.y*L+O.y}}this.timeStamp=p&&p.timeStamp||Date.now()},preventDefault:function(){this.isDefaultPrevented=Y8;var p=this.originalEvent;p&&p.preventDefault&&p.preventDefault()},stopPropagation:function(){this.isPropagationStopped=Y8;var p=this.originalEvent;p&&p.stopPropagation&&p.stopPropagation()},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=Y8,this.stopPropagation()},isDefaultPrevented:W8,isPropagationStopped:W8,isImmediatePropagationStopped:W8};var GR=/^([^.]+)(\.(?:[^.]+))?$/,Ytt=".*",KR={qualifierCompare:function(p,x){return p===x},eventMatches:function(){return!0},addEventFields:function(){},callbackContext:function(p){return p},beforeEmit:function(){},afterEmit:function(){},bubble:function(){return!1},parent:function(){return null},context:null},WR=Object.keys(KR),Xtt={};function dC(){for(var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Xtt,p=arguments.length>1?arguments[1]:void 0,x=0;x<WR.length;x++){var C=WR[x];this[C]=y[C]||KR[C]}this.context=p||this.context,this.listeners=[],this.emitting=0}var pb=dC.prototype,YR=function(p,x,C,L,O,N,j){ct(L)&&(O=L,L=null),j&&(N==null?N=j:N=we({},N,j));for(var H=rt(C)?C:C.split(/\s+/),q=0;q<H.length;q++){var W=H[q];if(!Ft(W)){var Z=W.match(GR);if(Z){var st=Z[1],bt=Z[2]?Z[2]:null,pt=x(p,W,st,bt,L,O,N);if(pt===!1)break}}}},XR=function(p,x){return p.addEventFields(p.context,x),new K8(x.type,x)},gC=function(p,x,C){if(xt(C)){x(p,C);return}else if(it(C)){x(p,XR(p,C));return}for(var L=rt(C)?C:C.split(/\s+/),O=0;O<L.length;O++){var N=L[O];if(!Ft(N)){var j=N.match(GR);if(j){var H=j[1],q=j[2]?j[2]:null,W=XR(p,{type:H,namespace:q,target:p.context});x(p,W)}}}};pb.on=pb.addListener=function(y,p,x,C,L){return YR(this,function(O,N,j,H,q,W,Z){ct(W)&&O.listeners.push({event:N,callback:W,type:j,namespace:H,qualifier:q,conf:Z})},y,p,x,C,L),this},pb.one=function(y,p,x,C){return this.on(y,p,x,C,{one:!0})},pb.removeListener=pb.off=function(y,p,x,C){var L=this;this.emitting!==0&&(this.listeners=zX(this.listeners));for(var O=this.listeners,N=function(q){var W=O[q];YR(L,function(Z,st,bt,pt,_t,St){if((W.type===bt||y==="*")&&(!pt&&W.namespace!==".*"||W.namespace===pt)&&(!_t||Z.qualifierCompare(W.qualifier,_t))&&(!St||W.callback===St))return O.splice(q,1),!1},y,p,x,C)},j=O.length-1;j>=0;j--)N(j);return this},pb.removeAllListeners=function(){return this.removeListener("*")},pb.emit=pb.trigger=function(y,p,x){var C=this.listeners,L=C.length;return this.emitting++,rt(p)||(p=[p]),gC(this,function(O,N){x!=null&&(C=[{event:N.event,type:N.type,namespace:N.namespace,callback:x}],L=C.length);for(var j=function(W){var Z=C[W];if(Z.type===N.type&&(!Z.namespace||Z.namespace===N.namespace||Z.namespace===Ytt)&&O.eventMatches(O.context,Z,N)){var st=[N];p!=null&&OB(st,p),O.beforeEmit(O.context,Z,N),Z.conf&&Z.conf.one&&(O.listeners=O.listeners.filter(function(_t){return _t!==Z}));var bt=O.callbackContext(O.context,Z,N),pt=Z.callback.apply(bt,st);O.afterEmit(O.context,Z,N),pt===!1&&(N.stopPropagation(),N.preventDefault())}},H=0;H<L;H++)j(H);O.bubble(O.context)&&!N.isPropagationStopped()&&O.parent(O.context).emit(N,p)},y),this.emitting--,this};var Qtt={qualifierCompare:function(p,x){return p==null||x==null?p==null&&x==null:p.sameText(x)},eventMatches:function(p,x,C){var L=x.qualifier;return L!=null?p!==C.target&&V(C.target)&&L.matches(C.target):!0},addEventFields:function(p,x){x.cy=p.cy(),x.target=p},callbackContext:function(p,x,C){return x.qualifier!=null?C.target:p},beforeEmit:function(p,x){x.conf&&x.conf.once&&x.conf.onceCollection.removeListener(x.event,x.qualifier,x.callback)},bubble:function(){return!0},parent:function(p){return p.isChild()?p.parent():p.cy()}},E4=function(p){return mt(p)?new ly(p):p},QR={createEmitter:function(){for(var p=0;p<this.length;p++){var x=this[p],C=x._private;C.emitter||(C.emitter=new dC(Qtt,x))}return this},emitter:function(){return this._private.emitter},on:function(p,x,C){for(var L=E4(x),O=0;O<this.length;O++){var N=this[O];N.emitter().on(p,L,C)}return this},removeListener:function(p,x,C){for(var L=E4(x),O=0;O<this.length;O++){var N=this[O];N.emitter().removeListener(p,L,C)}return this},removeAllListeners:function(){for(var p=0;p<this.length;p++){var x=this[p];x.emitter().removeAllListeners()}return this},one:function(p,x,C){for(var L=E4(x),O=0;O<this.length;O++){var N=this[O];N.emitter().one(p,L,C)}return this},once:function(p,x,C){for(var L=E4(x),O=0;O<this.length;O++){var N=this[O];N.emitter().on(p,L,C,{once:!0,onceCollection:this})}},emit:function(p,x){for(var C=0;C<this.length;C++){var L=this[C];L.emitter().emit(p,x)}return this},emitAndNotify:function(p,x){if(this.length!==0)return this.cy().notify(p,this),this.emit(p,x),this}};Kc.eventAliasesOn(QR);var aM={nodes:function(p){return this.filter(function(x){return x.isNode()}).filter(p)},edges:function(p){return this.filter(function(x){return x.isEdge()}).filter(p)},byGroup:function(){for(var p=this.spawn(),x=this.spawn(),C=0;C<this.length;C++){var L=this[C];L.isNode()?p.push(L):x.push(L)}return{nodes:p,edges:x}},filter:function(p,x){if(p===void 0)return this;if(mt(p)||yt(p))return new ly(p).filter(this);if(ct(p)){for(var C=this.spawn(),L=this,O=0;O<L.length;O++){var N=L[O],j=x?p.apply(x,[N,O,L]):p(N,O,L);j&&C.push(N)}return C}return this.spawn()},not:function(p){if(p){mt(p)&&(p=this.filter(p));for(var x=this.spawn(),C=0;C<this.length;C++){var L=this[C],O=p.has(L);O||x.push(L)}return x}else return this},absoluteComplement:function(){var p=this.cy();return p.mutableElements().not(this)},intersect:function(p){if(mt(p)){var x=p;return this.filter(x)}for(var C=this.spawn(),L=this,O=p,N=this.length<p.length,j=N?L:O,H=N?O:L,q=0;q<j.length;q++){var W=j[q];H.has(W)&&C.push(W)}return C},xor:function(p){var x=this._private.cy;mt(p)&&(p=x.$(p));var C=this.spawn(),L=this,O=p,N=function(H,q){for(var W=0;W<H.length;W++){var Z=H[W],st=Z._private.data.id,bt=q.hasElementWithId(st);bt||C.push(Z)}};return N(L,O),N(O,L),C},diff:function(p){var x=this._private.cy;mt(p)&&(p=x.$(p));var C=this.spawn(),L=this.spawn(),O=this.spawn(),N=this,j=p,H=function(W,Z,st){for(var bt=0;bt<W.length;bt++){var pt=W[bt],_t=pt._private.data.id,St=Z.hasElementWithId(_t);St?O.merge(pt):st.push(pt)}};return H(N,j,C),H(j,N,L),{left:C,right:L,both:O}},add:function(p){var x=this._private.cy;if(!p)return this;if(mt(p)){var C=p;p=x.mutableElements().filter(C)}for(var L=this.spawnSelf(),O=0;O<p.length;O++){var N=p[O],j=!this.has(N);j&&L.push(N)}return L},merge:function(p){var x=this._private,C=x.cy;if(!p)return this;if(p&&mt(p)){var L=p;p=C.mutableElements().filter(L)}for(var O=x.map,N=0;N<p.length;N++){var j=p[N],H=j._private.data.id,q=!O.has(H);if(q){var W=this.length++;this[W]=j,O.set(H,{ele:j,index:W})}}return this},unmergeAt:function(p){var x=this[p],C=x.id(),L=this._private,O=L.map;this[p]=void 0,O.delete(C);var N=p===this.length-1;if(this.length>1&&!N){var j=this.length-1,H=this[j],q=H._private.data.id;this[j]=void 0,this[p]=H,O.set(q,{ele:H,index:p})}return this.length--,this},unmergeOne:function(p){p=p[0];var x=this._private,C=p._private.data.id,L=x.map,O=L.get(C);if(!O)return this;var N=O.index;return this.unmergeAt(N),this},unmerge:function(p){var x=this._private.cy;if(!p)return this;if(p&&mt(p)){var C=p;p=x.mutableElements().filter(C)}for(var L=0;L<p.length;L++)this.unmergeOne(p[L]);return this},unmergeBy:function(p){for(var x=this.length-1;x>=0;x--){var C=this[x];p(C)&&this.unmergeAt(x)}return this},map:function(p,x){for(var C=[],L=this,O=0;O<L.length;O++){var N=L[O],j=x?p.apply(x,[N,O,L]):p(N,O,L);C.push(j)}return C},reduce:function(p,x){for(var C=x,L=this,O=0;O<L.length;O++)C=p(C,L[O],O,L);return C},max:function(p,x){for(var C=-1/0,L,O=this,N=0;N<O.length;N++){var j=O[N],H=x?p.apply(x,[j,N,O]):p(j,N,O);H>C&&(C=H,L=j)}return{value:C,ele:L}},min:function(p,x){for(var C=1/0,L,O=this,N=0;N<O.length;N++){var j=O[N],H=x?p.apply(x,[j,N,O]):p(j,N,O);H<C&&(C=H,L=j)}return{value:C,ele:L}}},Oc=aM;Oc.u=Oc["|"]=Oc["+"]=Oc.union=Oc.or=Oc.add,Oc["\\"]=Oc["!"]=Oc["-"]=Oc.difference=Oc.relativeComplement=Oc.subtract=Oc.not,Oc.n=Oc["&"]=Oc["."]=Oc.and=Oc.intersection=Oc.intersect,Oc["^"]=Oc["(+)"]=Oc["(-)"]=Oc.symmetricDifference=Oc.symdiff=Oc.xor,Oc.fnFilter=Oc.filterFn=Oc.stdFilter=Oc.filter,Oc.complement=Oc.abscomp=Oc.absoluteComplement;var oM={isNode:function(){return this.group()==="nodes"},isEdge:function(){return this.group()==="edges"},isLoop:function(){return this.isEdge()&&this.source()[0]===this.target()[0]},isSimple:function(){return this.isEdge()&&this.source()[0]!==this.target()[0]},group:function(){var p=this[0];if(p)return p._private.group}},cM=function(p,x){var C=p.cy(),L=C.hasCompoundNodes();function O(W){var Z=W.pstyle("z-compound-depth");return Z.value==="auto"?L?W.zDepth():0:Z.value==="bottom"?-1:Z.value==="top"?Kx:0}var N=O(p)-O(x);if(N!==0)return N;function j(W){var Z=W.pstyle("z-index-compare");return Z.value==="auto"&&W.isNode()?1:0}var H=j(p)-j(x);if(H!==0)return H;var q=p.pstyle("z-index").value-x.pstyle("z-index").value;return q!==0?q:p.poolIndex()-x.poolIndex()},pC={forEach:function(p,x){if(ct(p))for(var C=this.length,L=0;L<C;L++){var O=this[L],N=x?p.apply(x,[O,L,this]):p(O,L,this);if(N===!1)break}return this},toArray:function(){for(var p=[],x=0;x<this.length;x++)p.push(this[x]);return p},slice:function(p,x){var C=[],L=this.length;x==null&&(x=L),p==null&&(p=0),p<0&&(p=L+p),x<0&&(x=L+x);for(var O=p;O>=0&&O<x&&O<L;O++)C.push(this[O]);return this.spawn(C)},size:function(){return this.length},eq:function(p){return this[p]||this.spawn()},first:function(){return this[0]||this.spawn()},last:function(){return this[this.length-1]||this.spawn()},empty:function(){return this.length===0},nonempty:function(){return!this.empty()},sort:function(p){if(!ct(p))return this;var x=this.toArray().sort(p);return this.spawn(x)},sortByZIndex:function(){return this.sort(cM)},zDepth:function(){var p=this[0];if(p){var x=p._private,C=x.group;if(C==="nodes"){var L=x.data.parent?p.parents().size():0;return p.isParent()?L:Kx-1}else{var O=x.source,N=x.target,j=O.zDepth(),H=N.zDepth();return Math.max(j,H,0)}}}};pC.each=pC.forEach;var Jtt=function(){var p="undefined",x=(typeof Symbol>"u"?"undefined":f(Symbol))!=p&&f(Symbol.iterator)!=p;x&&(pC[Symbol.iterator]=function(){var C=this,L={value:void 0,done:!1},O=0,N=this.length;return b({next:function(){return O<N?L.value=C[O++]:(L.value=void 0,L.done=!0),L}},Symbol.iterator,function(){return this})})};Jtt();var Ztt=p1({nodeDimensionsIncludeLabels:!1}),bC={layoutDimensions:function(p){p=Ztt(p);var x;if(!this.takesUpSpace())x={w:0,h:0};else if(p.nodeDimensionsIncludeLabels){var C=this.boundingBox();x={w:C.w,h:C.h}}else x={w:this.outerWidth(),h:this.outerHeight()};return(x.w===0||x.h===0)&&(x.w=x.h=1),x},layoutPositions:function(p,x,C){var L=this.nodes().filter(function(re){return!re.isParent()}),O=this.cy(),N=x.eles,j=function(ee){return ee.id()},H=Mt(C,j);p.emit({type:"layoutstart",layout:p}),p.animations=[];var q=function(ee,Ut,de){var Yt={x:Ut.x1+Ut.w/2,y:Ut.y1+Ut.h/2},Ee={x:(de.x-Yt.x)*ee,y:(de.y-Yt.y)*ee};return{x:Yt.x+Ee.x,y:Yt.y+Ee.y}},W=x.spacingFactor&&x.spacingFactor!==1,Z=function(){if(!W)return null;for(var ee=v0(),Ut=0;Ut<L.length;Ut++){var de=L[Ut],Yt=H(de,Ut);bQ(ee,Yt.x,Yt.y)}return ee},st=Z(),bt=Mt(function(re,ee){var Ut=H(re,ee);if(W){var de=Math.abs(x.spacingFactor);Ut=q(de,st,Ut)}return x.transform!=null&&(Ut=x.transform(re,Ut)),Ut},j);if(x.animate){for(var pt=0;pt<L.length;pt++){var _t=L[pt],St=bt(_t,pt),Et=x.animateFilter==null||x.animateFilter(_t,pt);if(Et){var Nt=_t.animation({position:St,duration:x.animationDuration,easing:x.animationEasing});p.animations.push(Nt)}else _t.position(St)}if(x.fit){var Pt=O.animation({fit:{boundingBox:N.boundingBoxAt(bt),padding:x.padding},duration:x.animationDuration,easing:x.animationEasing});p.animations.push(Pt)}else if(x.zoom!==void 0&&x.pan!==void 0){var qt=O.animation({zoom:x.zoom,pan:x.pan,duration:x.animationDuration,easing:x.animationEasing});p.animations.push(qt)}p.animations.forEach(function(re){return re.play()}),p.one("layoutready",x.ready),p.emit({type:"layoutready",layout:p}),e6.all(p.animations.map(function(re){return re.promise()})).then(function(){p.one("layoutstop",x.stop),p.emit({type:"layoutstop",layout:p})})}else L.positions(bt),x.fit&&O.fit(x.eles,x.padding),x.zoom!=null&&O.zoom(x.zoom),x.pan&&O.pan(x.pan),p.one("layoutready",x.ready),p.emit({type:"layoutready",layout:p}),p.one("layoutstop",x.stop),p.emit({type:"layoutstop",layout:p});return this},layout:function(p){var x=this.cy();return x.makeLayout(we({},p,{eles:this}))}};bC.createLayout=bC.makeLayout=bC.layout;function tet(y,p,x){var C=x._private,L=C.styleCache=C.styleCache||[],O;return(O=L[y])!=null||(O=L[y]=p(x)),O}function wC(y,p){return y=Nd(y),function(C){return tet(y,p,C)}}function mC(y,p){y=Nd(y);var x=function(L){return p.call(L)};return function(){var L=this[0];if(L)return tet(y,x,L)}}var b1={recalculateRenderedStyle:function(p){var x=this.cy(),C=x.renderer(),L=x.styleEnabled();return C&&L&&C.recalculateRenderedStyle(this,p),this},dirtyStyleCache:function(){var p=this.cy(),x=function(O){return O._private.styleCache=null};if(p.hasCompoundNodes()){var C;C=this.spawnSelf().merge(this.descendants()).merge(this.parents()),C.merge(C.connectedEdges()),C.forEach(x)}else this.forEach(function(L){x(L),L.connectedEdges().forEach(x)});return this},updateStyle:function(p){var x=this._private.cy;if(!x.styleEnabled())return this;if(x.batching()){var C=x._private.batchStyleEles;return C.merge(this),this}var L=x.hasCompoundNodes(),O=this;p=!!(p||p===void 0),L&&(O=this.spawnSelf().merge(this.descendants()).merge(this.parents()));var N=O;return p?N.emitAndNotify("style"):N.emit("style"),O.forEach(function(j){return j._private.styleDirty=!0}),this},cleanStyle:function(){var p=this.cy();if(p.styleEnabled())for(var x=0;x<this.length;x++){var C=this[x];C._private.styleDirty&&(C._private.styleDirty=!1,p.style().apply(C))}},parsedStyle:function(p){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,C=this[0],L=C.cy();if(L.styleEnabled()&&C){this.cleanStyle();var O=C._private.style[p];return O??(x?L.style().getDefaultProperty(p):null)}},numericStyle:function(p){var x=this[0];if(x.cy().styleEnabled()&&x){var C=x.pstyle(p);return C.pfValue!==void 0?C.pfValue:C.value}},numericStyleUnits:function(p){var x=this[0];if(x.cy().styleEnabled()&&x)return x.pstyle(p).units},renderedStyle:function(p){var x=this.cy();if(!x.styleEnabled())return this;var C=this[0];if(C)return x.style().getRenderedStyle(C,p)},style:function(p,x){var C=this.cy();if(!C.styleEnabled())return this;var L=!1,O=C.style();if(it(p)){var N=p;O.applyBypass(this,N,L),this.emitAndNotify("style")}else if(mt(p))if(x===void 0){var j=this[0];return j?O.getStylePropertyValue(j,p):void 0}else O.applyBypass(this,p,x,L),this.emitAndNotify("style");else if(p===void 0){var H=this[0];return H?O.getRawStyle(H):void 0}return this},removeStyle:function(p){var x=this.cy();if(!x.styleEnabled())return this;var C=!1,L=x.style(),O=this;if(p===void 0)for(var N=0;N<O.length;N++){var j=O[N];L.removeAllBypasses(j,C)}else{p=p.split(/\s+/);for(var H=0;H<O.length;H++){var q=O[H];L.removeBypasses(q,p,C)}}return this.emitAndNotify("style"),this},show:function(){return this.css("display","element"),this},hide:function(){return this.css("display","none"),this},effectiveOpacity:function(){var p=this.cy();if(!p.styleEnabled())return 1;var x=p.hasCompoundNodes(),C=this[0];if(C){var L=C._private,O=C.pstyle("opacity").value;if(!x)return O;var N=L.data.parent?C.parents():null;if(N)for(var j=0;j<N.length;j++){var H=N[j],q=H.pstyle("opacity").value;O=q*O}return O}},transparent:function(){var p=this.cy();if(!p.styleEnabled())return!1;var x=this[0],C=x.cy().hasCompoundNodes();if(x)return C?x.effectiveOpacity()===0:x.pstyle("opacity").value===0},backgrounding:function(){var p=this.cy();if(!p.styleEnabled())return!1;var x=this[0];return!!x._private.backgrounding}};function uM(y,p){var x=y._private,C=x.data.parent?y.parents():null;if(C)for(var L=0;L<C.length;L++){var O=C[L];if(!p(O))return!1}return!0}function lM(y){var p=y.ok,x=y.edgeOkViaNode||y.ok,C=y.parentOk||y.ok;return function(){var L=this.cy();if(!L.styleEnabled())return!0;var O=this[0],N=L.hasCompoundNodes();if(O){var j=O._private;if(!p(O))return!1;if(O.isNode())return!N||uM(O,C);var H=j.source,q=j.target;return x(H)&&(!N||uM(H,x))&&(H===q||x(q)&&(!N||uM(q,x)))}}}var u6=wC("eleTakesUpSpace",function(y){return y.pstyle("display").value==="element"&&y.width()!==0&&(y.isNode()?y.height()!==0:!0)});b1.takesUpSpace=mC("takesUpSpace",lM({ok:u6}));var eet=wC("eleInteractive",function(y){return y.pstyle("events").value==="yes"&&y.pstyle("visibility").value==="visible"&&u6(y)}),net=wC("parentInteractive",function(y){return y.pstyle("visibility").value==="visible"&&u6(y)});b1.interactive=mC("interactive",lM({ok:eet,parentOk:net,edgeOkViaNode:u6})),b1.noninteractive=function(){var y=this[0];if(y)return!y.interactive()};var ret=wC("eleVisible",function(y){return y.pstyle("visibility").value==="visible"&&y.pstyle("opacity").pfValue!==0&&u6(y)}),iet=u6;b1.visible=mC("visible",lM({ok:ret,edgeOkViaNode:iet})),b1.hidden=function(){var y=this[0];if(y)return!y.visible()},b1.isBundledBezier=mC("isBundledBezier",function(){return this.cy().styleEnabled()?!this.removed()&&this.pstyle("curve-style").value==="bezier"&&this.takesUpSpace():!1}),b1.bypass=b1.css=b1.style,b1.renderedCss=b1.renderedStyle,b1.removeBypass=b1.removeCss=b1.removeStyle,b1.pstyle=b1.parsedStyle;var x0={};function vC(y){return function(){var p=arguments,x=[];if(p.length===2){var C=p[0],L=p[1];this.on(y.event,C,L)}else if(p.length===1&&ct(p[0])){var O=p[0];this.on(y.event,O)}else if(p.length===0||p.length===1&&rt(p[0])){for(var N=p.length===1?p[0]:null,j=0;j<this.length;j++){var H=this[j],q=!y.ableField||H._private[y.ableField],W=H._private[y.field]!=y.value;if(y.overrideAble){var Z=y.overrideAble(H);if(Z!==void 0&&(q=Z,!Z))return this}q&&(H._private[y.field]=y.value,W&&x.push(H))}var st=this.spawn(x);st.updateStyle(),st.emit(y.event),N&&st.emit(N)}return this}}function l6(y){x0[y.field]=function(){var p=this[0];if(p){if(y.overrideField){var x=y.overrideField(p);if(x!==void 0)return x}return p._private[y.field]}},x0[y.on]=vC({event:y.on,field:y.field,ableField:y.ableField,overrideAble:y.overrideAble,value:!0}),x0[y.off]=vC({event:y.off,field:y.field,ableField:y.ableField,overrideAble:y.overrideAble,value:!1})}l6({field:"locked",overrideField:function(p){return p.cy().autolock()?!0:void 0},on:"lock",off:"unlock"}),l6({field:"grabbable",overrideField:function(p){return p.cy().autoungrabify()||p.pannable()?!1:void 0},on:"grabify",off:"ungrabify"}),l6({field:"selected",ableField:"selectable",overrideAble:function(p){return p.cy().autounselectify()?!1:void 0},on:"select",off:"unselect"}),l6({field:"selectable",overrideField:function(p){return p.cy().autounselectify()?!1:void 0},on:"selectify",off:"unselectify"}),x0.deselect=x0.unselect,x0.grabbed=function(){var y=this[0];if(y)return y._private.grabbed},l6({field:"active",on:"activate",off:"unactivate"}),l6({field:"pannable",on:"panify",off:"unpanify"}),x0.inactive=function(){var y=this[0];if(y)return!y._private.active};var K1={},JR=function(p){return function(C){for(var L=this,O=[],N=0;N<L.length;N++){var j=L[N];if(j.isNode()){for(var H=!1,q=j.connectedEdges(),W=0;W<q.length;W++){var Z=q[W],st=Z.source(),bt=Z.target();if(p.noIncomingEdges&&bt===j&&st!==j||p.noOutgoingEdges&&st===j&&bt!==j){H=!0;break}}H||O.push(j)}}return this.spawn(O,!0).filter(C)}},ZR=function(p){return function(x){for(var C=this,L=[],O=0;O<C.length;O++){var N=C[O];if(N.isNode())for(var j=N.connectedEdges(),H=0;H<j.length;H++){var q=j[H],W=q.source(),Z=q.target();p.outgoing&&W===N?(L.push(q),L.push(Z)):p.incoming&&Z===N&&(L.push(q),L.push(W))}}return this.spawn(L,!0).filter(x)}},tj=function(p){return function(x){for(var C=this,L=[],O={};;){var N=p.outgoing?C.outgoers():C.incomers();if(N.length===0)break;for(var j=!1,H=0;H<N.length;H++){var q=N[H],W=q.id();O[W]||(O[W]=!0,L.push(q),j=!0)}if(!j)break;C=N}return this.spawn(L,!0).filter(x)}};K1.clearTraversalCache=function(){for(var y=0;y<this.length;y++)this[y]._private.traversalCache=null},we(K1,{roots:JR({noIncomingEdges:!0}),leaves:JR({noOutgoingEdges:!0}),outgoers:ap(ZR({outgoing:!0}),"outgoers"),successors:tj({outgoing:!0}),incomers:ap(ZR({incoming:!0}),"incomers"),predecessors:tj({incoming:!0})}),we(K1,{neighborhood:ap(function(y){for(var p=[],x=this.nodes(),C=0;C<x.length;C++)for(var L=x[C],O=L.connectedEdges(),N=0;N<O.length;N++){var j=O[N],H=j.source(),q=j.target(),W=L===H?q:H;W.length>0&&p.push(W[0]),p.push(j[0])}return this.spawn(p,!0).filter(y)},"neighborhood"),closedNeighborhood:function(p){return this.neighborhood().add(this).filter(p)},openNeighborhood:function(p){return this.neighborhood(p)}}),K1.neighbourhood=K1.neighborhood,K1.closedNeighbourhood=K1.closedNeighborhood,K1.openNeighbourhood=K1.openNeighborhood,we(K1,{source:ap(function(p){var x=this[0],C;return x&&(C=x._private.source||x.cy().collection()),C&&p?C.filter(p):C},"source"),target:ap(function(p){var x=this[0],C;return x&&(C=x._private.target||x.cy().collection()),C&&p?C.filter(p):C},"target"),sources:ej({attr:"source"}),targets:ej({attr:"target"})});function ej(y){return function(x){for(var C=[],L=0;L<this.length;L++){var O=this[L],N=O._private[y.attr];N&&C.push(N)}return this.spawn(C,!0).filter(x)}}we(K1,{edgesWith:ap(nj(),"edgesWith"),edgesTo:ap(nj({thisIsSrc:!0}),"edgesTo")});function nj(y){return function(x){var C=[],L=this._private.cy,O=y||{};mt(x)&&(x=L.$(x));for(var N=0;N<x.length;N++)for(var j=x[N]._private.edges,H=0;H<j.length;H++){var q=j[H],W=q._private.data,Z=this.hasElementWithId(W.source)&&x.hasElementWithId(W.target),st=x.hasElementWithId(W.source)&&this.hasElementWithId(W.target),bt=Z||st;bt&&((O.thisIsSrc||O.thisIsTgt)&&(O.thisIsSrc&&!Z||O.thisIsTgt&&!st)||C.push(q))}return this.spawn(C,!0)}}we(K1,{connectedEdges:ap(function(y){for(var p=[],x=this,C=0;C<x.length;C++){var L=x[C];if(L.isNode())for(var O=L._private.edges,N=0;N<O.length;N++){var j=O[N];p.push(j)}}return this.spawn(p,!0).filter(y)},"connectedEdges"),connectedNodes:ap(function(y){for(var p=[],x=this,C=0;C<x.length;C++){var L=x[C];L.isEdge()&&(p.push(L.source()[0]),p.push(L.target()[0]))}return this.spawn(p,!0).filter(y)},"connectedNodes"),parallelEdges:ap(rj(),"parallelEdges"),codirectedEdges:ap(rj({codirected:!0}),"codirectedEdges")});function rj(y){var p={codirected:!1};return y=we({},p,y),function(C){for(var L=[],O=this.edges(),N=y,j=0;j<O.length;j++)for(var H=O[j],q=H._private,W=q.source,Z=W._private.data.id,st=q.data.target,bt=W._private.edges,pt=0;pt<bt.length;pt++){var _t=bt[pt],St=_t._private.data,Et=St.target,Nt=St.source,Pt=Et===st&&Nt===Z,qt=Z===Et&&st===Nt;(N.codirected&&Pt||!N.codirected&&(Pt||qt))&&L.push(_t)}return this.spawn(L,!0).filter(C)}}we(K1,{components:function(p){var x=this,C=x.cy(),L=C.collection(),O=p==null?x.nodes():p.nodes(),N=[];p!=null&&O.empty()&&(O=p.sources());var j=function(W,Z){L.merge(W),O.unmerge(W),Z.merge(W)};if(O.empty())return x.spawn();var H=function(){var W=C.collection();N.push(W);var Z=O[0];j(Z,W),x.bfs({directed:!1,roots:Z,visit:function(bt){return j(bt,W)}}),W.forEach(function(st){st.connectedEdges().forEach(function(bt){x.has(bt)&&W.has(bt.source())&&W.has(bt.target())&&W.merge(bt)})})};do H();while(O.length>0);return N},component:function(){var p=this[0];return p.cy().mutableElements().components(p)[0]}}),K1.componentsOf=K1.components;var w1=function(p,x){var C=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,L=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(p===void 0){$l("A collection must have a reference to the core");return}var O=new F2,N=!1;if(!x)x=[];else if(x.length>0&&it(x[0])&&!V(x[0])){N=!0;for(var j=[],H=new Wx,q=0,W=x.length;q<W;q++){var Z=x[q];Z.data==null&&(Z.data={});var st=Z.data;if(st.id==null)st.id=MB();else if(p.hasElementWithId(st.id)||H.has(st.id))continue;var bt=new K9(p,Z,!1);j.push(bt),H.add(st.id)}x=j}this.length=0;for(var pt=0,_t=x.length;pt<_t;pt++){var St=x[pt][0];if(St!=null){var Et=St._private.data.id;(!C||!O.has(Et))&&(C&&O.set(Et,{index:this.length,ele:St}),this[this.length]=St,this.length++)}}this._private={eles:this,cy:p,get map(){return this.lazyMap==null&&this.rebuildMap(),this.lazyMap},set map(Nt){this.lazyMap=Nt},rebuildMap:function(){for(var Pt=this.lazyMap=new F2,qt=this.eles,re=0;re<qt.length;re++){var ee=qt[re];Pt.set(ee.id(),{index:re,ele:ee})}}},C&&(this._private.map=O),N&&!L&&this.restore()},Bu=K9.prototype=w1.prototype=Object.create(Array.prototype);Bu.instanceString=function(){return"collection"},Bu.spawn=function(y,p){return new w1(this.cy(),y,p)},Bu.spawnSelf=function(){return this.spawn(this)},Bu.cy=function(){return this._private.cy},Bu.renderer=function(){return this._private.cy.renderer()},Bu.element=function(){return this[0]},Bu.collection=function(){return Ot(this)?this:new w1(this._private.cy,[this])},Bu.unique=function(){return new w1(this._private.cy,this,!0)},Bu.hasElementWithId=function(y){return y=""+y,this._private.map.has(y)},Bu.getElementById=function(y){y=""+y;var p=this._private.cy,x=this._private.map.get(y);return x?x.ele:new w1(p)},Bu.$id=Bu.getElementById,Bu.poolIndex=function(){var y=this._private.cy,p=y._private.elements,x=this[0]._private.data.id;return p._private.map.get(x).index},Bu.indexOf=function(y){var p=y[0]._private.data.id;return this._private.map.get(p).index},Bu.indexOfId=function(y){return y=""+y,this._private.map.get(y).index},Bu.json=function(y){var p=this.element(),x=this.cy();if(p==null&&y)return this;if(p!=null){var C=p._private;if(it(y)){if(x.startBatch(),y.data){p.data(y.data);var L=C.data;if(p.isEdge()){var O=!1,N={},j=y.data.source,H=y.data.target;j!=null&&j!=L.source&&(N.source=""+j,O=!0),H!=null&&H!=L.target&&(N.target=""+H,O=!0),O&&(p=p.move(N))}else{var q="parent"in y.data,W=y.data.parent;q&&(W!=null||L.parent!=null)&&W!=L.parent&&(W===void 0&&(W=null),W!=null&&(W=""+W),p=p.move({parent:W}))}}y.position&&p.position(y.position);var Z=function(_t,St,Et){var Nt=y[_t];Nt!=null&&Nt!==C[_t]&&(Nt?p[St]():p[Et]())};return Z("removed","remove","restore"),Z("selected","select","unselect"),Z("selectable","selectify","unselectify"),Z("locked","lock","unlock"),Z("grabbable","grabify","ungrabify"),Z("pannable","panify","unpanify"),y.classes!=null&&p.classes(y.classes),x.endBatch(),this}else if(y===void 0){var st={data:P2(C.data),position:P2(C.position),group:C.group,removed:C.removed,selected:C.selected,selectable:C.selectable,locked:C.locked,grabbable:C.grabbable,pannable:C.pannable,classes:null};st.classes="";var bt=0;return C.classes.forEach(function(pt){return st.classes+=bt++===0?pt:" "+pt}),st}}},Bu.jsons=function(){for(var y=[],p=0;p<this.length;p++){var x=this[p],C=x.json();y.push(C)}return y},Bu.clone=function(){for(var y=this.cy(),p=[],x=0;x<this.length;x++){var C=this[x],L=C.json(),O=new K9(y,L,!1);p.push(O)}return new w1(y,p)},Bu.copy=Bu.clone,Bu.restore=function(){for(var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,x=this,C=x.cy(),L=C._private,O=[],N=[],j,H=0,q=x.length;H<q;H++){var W=x[H];p&&!W.removed()||(W.isNode()?O.push(W):N.push(W))}j=O.concat(N);var Z,st=function(){j.splice(Z,1),Z--};for(Z=0;Z<j.length;Z++){var bt=j[Z],pt=bt._private,_t=pt.data;if(bt.clearTraversalCache(),!(!p&&!pt.removed)){if(_t.id===void 0)_t.id=MB();else if(Q(_t.id))_t.id=""+_t.id;else if(Ft(_t.id)||!mt(_t.id)){$l("Can not create element with invalid string ID `"+_t.id+"`"),st();continue}else if(C.hasElementWithId(_t.id)){$l("Can not create second element with ID `"+_t.id+"`"),st();continue}}var St=_t.id;if(bt.isNode()){var Et=pt.position;Et.x==null&&(Et.x=0),Et.y==null&&(Et.y=0)}if(bt.isEdge()){for(var Nt=bt,Pt=["source","target"],qt=Pt.length,re=!1,ee=0;ee<qt;ee++){var Ut=Pt[ee],de=_t[Ut];Q(de)&&(de=_t[Ut]=""+_t[Ut]),de==null||de===""?($l("Can not create edge `"+St+"` with unspecified "+Ut),re=!0):C.hasElementWithId(de)||($l("Can not create edge `"+St+"` with nonexistant "+Ut+" `"+de+"`"),re=!0)}if(re){st();continue}var Yt=C.getElementById(_t.source),Ee=C.getElementById(_t.target);Yt.same(Ee)?Yt._private.edges.push(Nt):(Yt._private.edges.push(Nt),Ee._private.edges.push(Nt)),Nt._private.source=Yt,Nt._private.target=Ee}pt.map=new F2,pt.map.set(St,{ele:bt,index:0}),pt.removed=!1,p&&C.addToPool(bt)}for(var Te=0;Te<O.length;Te++){var ie=O[Te],ze=ie._private.data;Q(ze.parent)&&(ze.parent=""+ze.parent);var me=ze.parent,yn=me!=null;if(yn||ie._private.parent){var nn=ie._private.parent?C.collection().merge(ie._private.parent):C.getElementById(me);if(nn.empty())ze.parent=void 0;else if(nn[0].removed())Gc("Node added with missing parent, reference to parent removed"),ze.parent=void 0,ie._private.parent=null;else{for(var qe=!1,Tn=nn;!Tn.empty();){if(ie.same(Tn)){qe=!0,ze.parent=void 0;break}Tn=Tn.parent()}qe||(nn[0]._private.children.push(ie),ie._private.parent=nn[0],L.hasCompoundNodes=!0)}}}if(j.length>0){for(var Xn=j.length===x.length?x:new w1(C,j),lr=0;lr<Xn.length;lr++){var Sn=Xn[lr];Sn.isNode()||(Sn.parallelEdges().clearTraversalCache(),Sn.source().clearTraversalCache(),Sn.target().clearTraversalCache())}var or;L.hasCompoundNodes?or=C.collection().merge(Xn).merge(Xn.connectedNodes()).merge(Xn.parent()):or=Xn,or.dirtyCompoundBoundsCache().dirtyBoundingBoxCache().updateStyle(y),y?Xn.emitAndNotify("add"):p&&Xn.emit("add")}return x},Bu.removed=function(){var y=this[0];return y&&y._private.removed},Bu.inside=function(){var y=this[0];return y&&!y._private.removed},Bu.remove=function(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,x=this,C=[],L={},O=x._private.cy;function N(me){for(var yn=me._private.edges,nn=0;nn<yn.length;nn++)H(yn[nn])}function j(me){for(var yn=me._private.children,nn=0;nn<yn.length;nn++)H(yn[nn])}function H(me){var yn=L[me.id()];p&&me.removed()||yn||(L[me.id()]=!0,me.isNode()?(C.push(me),N(me),j(me)):C.unshift(me))}for(var q=0,W=x.length;q<W;q++){var Z=x[q];H(Z)}function st(me,yn){var nn=me._private.edges;oy(nn,yn),me.clearTraversalCache()}function bt(me){me.clearTraversalCache()}var pt=[];pt.ids={};function _t(me,yn){yn=yn[0],me=me[0];var nn=me._private.children,qe=me.id();oy(nn,yn),yn._private.parent=null,pt.ids[qe]||(pt.ids[qe]=!0,pt.push(me))}x.dirtyCompoundBoundsCache(),p&&O.removeFromPool(C);for(var St=0;St<C.length;St++){var Et=C[St];if(Et.isEdge()){var Nt=Et.source()[0],Pt=Et.target()[0];st(Nt,Et),st(Pt,Et);for(var qt=Et.parallelEdges(),re=0;re<qt.length;re++){var ee=qt[re];bt(ee),ee.isBundledBezier()&&ee.dirtyBoundingBoxCache()}}else{var Ut=Et.parent();Ut.length!==0&&_t(Ut,Et)}p&&(Et._private.removed=!0)}var de=O._private.elements;O._private.hasCompoundNodes=!1;for(var Yt=0;Yt<de.length;Yt++){var Ee=de[Yt];if(Ee.isParent()){O._private.hasCompoundNodes=!0;break}}var Te=new w1(this.cy(),C);Te.size()>0&&(y?Te.emitAndNotify("remove"):p&&Te.emit("remove"));for(var ie=0;ie<pt.length;ie++){var ze=pt[ie];(!p||!ze.removed())&&ze.updateStyle()}return Te},Bu.move=function(y){var p=this._private.cy,x=this,C=!1,L=!1,O=function(pt){return pt==null?pt:""+pt};if(y.source!==void 0||y.target!==void 0){var N=O(y.source),j=O(y.target),H=N!=null&&p.hasElementWithId(N),q=j!=null&&p.hasElementWithId(j);(H||q)&&(p.batch(function(){x.remove(C,L),x.emitAndNotify("moveout");for(var bt=0;bt<x.length;bt++){var pt=x[bt],_t=pt._private.data;pt.isEdge()&&(H&&(_t.source=N),q&&(_t.target=j))}x.restore(C,L)}),x.emitAndNotify("move"))}else if(y.parent!==void 0){var W=O(y.parent),Z=W===null||p.hasElementWithId(W);if(Z){var st=W===null?void 0:W;p.batch(function(){var bt=x.remove(C,L);bt.emitAndNotify("moveout");for(var pt=0;pt<x.length;pt++){var _t=x[pt],St=_t._private.data;_t.isNode()&&(St.parent=st)}bt.restore(C,L)}),x.emitAndNotify("move")}}return this},[aR,ktt,lC,hy,a6,fy,q8,sM,QR,aM,oM,pC,bC,b1,x0,K1].forEach(function(y){we(Bu,y)});var set={add:function(p){var x,C=this;if(yt(p)){var L=p;if(L._private.cy===C)x=L.restore();else{for(var O=[],N=0;N<L.length;N++){var j=L[N];O.push(j.json())}x=new w1(C,O)}}else if(rt(p)){var H=p;x=new w1(C,H)}else if(it(p)&&(rt(p.nodes)||rt(p.edges))){for(var q=p,W=[],Z=["nodes","edges"],st=0,bt=Z.length;st<bt;st++){var pt=Z[st],_t=q[pt];if(rt(_t))for(var St=0,Et=_t.length;St<Et;St++){var Nt=we({group:pt},_t[St]);W.push(Nt)}}x=new w1(C,W)}else{var Pt=p;x=new K9(C,Pt).collection()}return x},remove:function(p){if(!yt(p)){if(mt(p)){var x=p;p=this.$(x)}}return p.remove()}};/*! Bezier curve function generator. Copyright Gaetan Renaudeau. MIT License: http://en.wikipedia.org/wiki/MIT_License */function aet(y,p,x,C){var L=4,O=.001,N=1e-7,j=10,H=11,q=1/(H-1),W=typeof Float32Array<"u";if(arguments.length!==4)return!1;for(var Z=0;Z<4;++Z)if(typeof arguments[Z]!="number"||isNaN(arguments[Z])||!isFinite(arguments[Z]))return!1;y=Math.min(y,1),x=Math.min(x,1),y=Math.max(y,0),x=Math.max(x,0);var st=W?new Float32Array(H):new Array(H);function bt(Ee,Te){return 1-3*Te+3*Ee}function pt(Ee,Te){return 3*Te-6*Ee}function _t(Ee){return 3*Ee}function St(Ee,Te,ie){return((bt(Te,ie)*Ee+pt(Te,ie))*Ee+_t(Te))*Ee}function Et(Ee,Te,ie){return 3*bt(Te,ie)*Ee*Ee+2*pt(Te,ie)*Ee+_t(Te)}function Nt(Ee,Te){for(var ie=0;ie<L;++ie){var ze=Et(Te,y,x);if(ze===0)return Te;var me=St(Te,y,x)-Ee;Te-=me/ze}return Te}function Pt(){for(var Ee=0;Ee<H;++Ee)st[Ee]=St(Ee*q,y,x)}function qt(Ee,Te,ie){var ze,me,yn=0;do me=Te+(ie-Te)/2,ze=St(me,y,x)-Ee,ze>0?ie=me:Te=me;while(Math.abs(ze)>N&&++yn<j);return me}function re(Ee){for(var Te=0,ie=1,ze=H-1;ie!==ze&&st[ie]<=Ee;++ie)Te+=q;--ie;var me=(Ee-st[ie])/(st[ie+1]-st[ie]),yn=Te+me*q,nn=Et(yn,y,x);return nn>=O?Nt(Ee,yn):nn===0?yn:qt(Ee,Te,Te+q)}var ee=!1;function Ut(){ee=!0,(y!==p||x!==C)&&Pt()}var de=function(Te){return ee||Ut(),y===p&&x===C?Te:Te===0?0:Te===1?1:St(re(Te),p,C)};de.getControlPoints=function(){return[{x:y,y:p},{x,y:C}]};var Yt="generateBezier("+[y,p,x,C]+")";return de.toString=function(){return Yt},de}/*! Runge-Kutta spring physics function generator. Adapted from Framer.js, copyright Koen Bok. MIT License: http://en.wikipedia.org/wiki/MIT_License */var oet=function(){function y(C){return-C.tension*C.x-C.friction*C.v}function p(C,L,O){var N={x:C.x+O.dx*L,v:C.v+O.dv*L,tension:C.tension,friction:C.friction};return{dx:N.v,dv:y(N)}}function x(C,L){var O={dx:C.v,dv:y(C)},N=p(C,L*.5,O),j=p(C,L*.5,N),H=p(C,L,j),q=1/6*(O.dx+2*(N.dx+j.dx)+H.dx),W=1/6*(O.dv+2*(N.dv+j.dv)+H.dv);return C.x=C.x+q*L,C.v=C.v+W*L,C}return function C(L,O,N){var j={x:-1,v:0,tension:null,friction:null},H=[0],q=0,W=1/1e4,Z=16/1e3,st,bt,pt;for(L=parseFloat(L)||500,O=parseFloat(O)||20,N=N||null,j.tension=L,j.friction=O,st=N!==null,st?(q=C(L,O),bt=q/N*Z):bt=Z;pt=x(pt||j,bt),H.push(1+pt.x),q+=16,Math.abs(pt.x)>W&&Math.abs(pt.v)>W;);return st?function(_t){return H[_t*(H.length-1)|0]}:q}}(),Ru=function(p,x,C,L){var O=aet(p,x,C,L);return function(N,j,H){return N+(j-N)*O(H)}},yC={linear:function(p,x,C){return p+(x-p)*C},ease:Ru(.25,.1,.25,1),"ease-in":Ru(.42,0,1,1),"ease-out":Ru(0,0,.58,1),"ease-in-out":Ru(.42,0,.58,1),"ease-in-sine":Ru(.47,0,.745,.715),"ease-out-sine":Ru(.39,.575,.565,1),"ease-in-out-sine":Ru(.445,.05,.55,.95),"ease-in-quad":Ru(.55,.085,.68,.53),"ease-out-quad":Ru(.25,.46,.45,.94),"ease-in-out-quad":Ru(.455,.03,.515,.955),"ease-in-cubic":Ru(.55,.055,.675,.19),"ease-out-cubic":Ru(.215,.61,.355,1),"ease-in-out-cubic":Ru(.645,.045,.355,1),"ease-in-quart":Ru(.895,.03,.685,.22),"ease-out-quart":Ru(.165,.84,.44,1),"ease-in-out-quart":Ru(.77,0,.175,1),"ease-in-quint":Ru(.755,.05,.855,.06),"ease-out-quint":Ru(.23,1,.32,1),"ease-in-out-quint":Ru(.86,0,.07,1),"ease-in-expo":Ru(.95,.05,.795,.035),"ease-out-expo":Ru(.19,1,.22,1),"ease-in-out-expo":Ru(1,0,0,1),"ease-in-circ":Ru(.6,.04,.98,.335),"ease-out-circ":Ru(.075,.82,.165,1),"ease-in-out-circ":Ru(.785,.135,.15,.86),spring:function(p,x,C){if(C===0)return yC.linear;var L=oet(p,x,C);return function(O,N,j){return O+(N-O)*L(j)}},"cubic-bezier":Ru};function ij(y,p,x,C,L){if(C===1||p===x)return x;var O=L(p,x,C);return y==null||((y.roundValue||y.color)&&(O=Math.round(O)),y.min!==void 0&&(O=Math.max(O,y.min)),y.max!==void 0&&(O=Math.min(O,y.max))),O}function sj(y,p){return y.pfValue!=null||y.value!=null?y.pfValue!=null&&(p==null||p.type.units!=="%")?y.pfValue:y.value:y}function h6(y,p,x,C,L){var O=L!=null?L.type:null;x<0?x=0:x>1&&(x=1);var N=sj(y,L),j=sj(p,L);if(Q(N)&&Q(j))return ij(O,N,j,x,C);if(rt(N)&&rt(j)){for(var H=[],q=0;q<j.length;q++){var W=N[q],Z=j[q];if(W!=null&&Z!=null){var st=ij(O,W,Z,x,C);H.push(st)}else H.push(Z)}return H}}function cet(y,p,x,C){var L=!C,O=y._private,N=p._private,j=N.easing,H=N.startTime,q=C?y:y.cy(),W=q.style();if(!N.easingImpl)if(j==null)N.easingImpl=yC.linear;else{var Z;if(mt(j)){var st=W.parse("transition-timing-function",j);Z=st.value}else Z=j;var bt,pt;mt(Z)?(bt=Z,pt=[]):(bt=Z[1],pt=Z.slice(2).map(function(Xn){return+Xn})),pt.length>0?(bt==="spring"&&pt.push(N.duration),N.easingImpl=yC[bt].apply(null,pt)):N.easingImpl=yC[bt]}var _t=N.easingImpl,St;if(N.duration===0?St=1:St=(x-H)/N.duration,N.applying&&(St=N.progress),St<0?St=0:St>1&&(St=1),N.delay==null){var Et=N.startPosition,Nt=N.position;if(Nt&&L&&!y.locked()){var Pt={};X8(Et.x,Nt.x)&&(Pt.x=h6(Et.x,Nt.x,St,_t)),X8(Et.y,Nt.y)&&(Pt.y=h6(Et.y,Nt.y,St,_t)),y.position(Pt)}var qt=N.startPan,re=N.pan,ee=O.pan,Ut=re!=null&&C;Ut&&(X8(qt.x,re.x)&&(ee.x=h6(qt.x,re.x,St,_t)),X8(qt.y,re.y)&&(ee.y=h6(qt.y,re.y,St,_t)),y.emit("pan"));var de=N.startZoom,Yt=N.zoom,Ee=Yt!=null&&C;Ee&&(X8(de,Yt)&&(O.zoom=P8(O.minZoom,h6(de,Yt,St,_t),O.maxZoom)),y.emit("zoom")),(Ut||Ee)&&y.emit("viewport");var Te=N.style;if(Te&&Te.length>0&&L){for(var ie=0;ie<Te.length;ie++){var ze=Te[ie],me=ze.name,yn=ze,nn=N.startStyle[me],qe=W.properties[nn.name],Tn=h6(nn,yn,St,_t,qe);W.overrideBypass(y,me,Tn)}y.emit("style")}}return N.progress=St,St}function X8(y,p){return y==null||p==null?!1:Q(y)&&Q(p)?!0:!!(y&&p)}function uet(y,p,x,C){var L=p._private;L.started=!0,L.startTime=x-L.progress*L.duration}function aj(y,p){var x=p._private.aniEles,C=[];function L(W,Z){var st=W._private,bt=st.animation.current,pt=st.animation.queue,_t=!1;if(bt.length===0){var St=pt.shift();St&&bt.push(St)}for(var Et=function(ee){for(var Ut=ee.length-1;Ut>=0;Ut--){var de=ee[Ut];de()}ee.splice(0,ee.length)},Nt=bt.length-1;Nt>=0;Nt--){var Pt=bt[Nt],qt=Pt._private;if(qt.stopped){bt.splice(Nt,1),qt.hooked=!1,qt.playing=!1,qt.started=!1,Et(qt.frames);continue}!qt.playing&&!qt.applying||(qt.playing&&qt.applying&&(qt.applying=!1),qt.started||uet(W,Pt,y),cet(W,Pt,y,Z),qt.applying&&(qt.applying=!1),Et(qt.frames),qt.step!=null&&qt.step(y),Pt.completed()&&(bt.splice(Nt,1),qt.hooked=!1,qt.playing=!1,qt.started=!1,Et(qt.completes)),_t=!0)}return!Z&&bt.length===0&&pt.length===0&&C.push(W),_t}for(var O=!1,N=0;N<x.length;N++){var j=x[N],H=L(j);O=O||H}var q=L(p,!0);(O||q)&&(x.length>0?p.notify("draw",x):p.notify("draw")),x.unmerge(C),p.emit("step")}var het={animate:Kc.animate(),animation:Kc.animation(),animated:Kc.animated(),clearQueue:Kc.clearQueue(),delay:Kc.delay(),delayAnimation:Kc.delayAnimation(),stop:Kc.stop(),addToAnimationPool:function(p){var x=this;x.styleEnabled()&&x._private.aniEles.merge(p)},stopAnimationLoop:function(){this._private.animationsRunning=!1},startAnimationLoop:function(){var p=this;if(p._private.animationsRunning=!0,!p.styleEnabled())return;function x(){p._private.animationsRunning&&g1(function(O){aj(O,p),x()})}var C=p.renderer();C&&C.beforeRender?C.beforeRender(function(O,N){aj(N,p)},C.beforeRenderPriorities.animations):x()}},fet={qualifierCompare:function(p,x){return p==null||x==null?p==null&&x==null:p.sameText(x)},eventMatches:function(p,x,C){var L=x.qualifier;return L!=null?p!==C.target&&V(C.target)&&L.matches(C.target):!0},addEventFields:function(p,x){x.cy=p,x.target=p},callbackContext:function(p,x,C){return x.qualifier!=null?C.target:p}},xC=function(p){return mt(p)?new ly(p):p},oj={createEmitter:function(){var p=this._private;return p.emitter||(p.emitter=new dC(fet,this)),this},emitter:function(){return this._private.emitter},on:function(p,x,C){return this.emitter().on(p,xC(x),C),this},removeListener:function(p,x,C){return this.emitter().removeListener(p,xC(x),C),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},one:function(p,x,C){return this.emitter().one(p,xC(x),C),this},once:function(p,x,C){return this.emitter().one(p,xC(x),C),this},emit:function(p,x){return this.emitter().emit(p,x),this},emitAndNotify:function(p,x){return this.emit(p),this.notify(p,x),this}};Kc.eventAliasesOn(oj);var hM={png:function(p){var x=this._private.renderer;return p=p||{},x.png(p)},jpg:function(p){var x=this._private.renderer;return p=p||{},p.bg=p.bg||"#fff",x.jpg(p)}};hM.jpeg=hM.jpg;var kC={layout:function(p){var x=this;if(p==null){$l("Layout options must be specified to make a layout");return}if(p.name==null){$l("A `name` must be specified to make a layout");return}var C=p.name,L=x.extension("layout",C);if(L==null){$l("No such layout `"+C+"` found. Did you forget to import it and `cytoscape.use()` it?");return}var O;mt(p.eles)?O=x.$(p.eles):O=p.eles!=null?p.eles:x.$();var N=new L(we({},p,{cy:x,eles:O}));return N}};kC.createLayout=kC.makeLayout=kC.layout;var det={notify:function(p,x){var C=this._private;if(this.batching()){C.batchNotifications=C.batchNotifications||{};var L=C.batchNotifications[p]=C.batchNotifications[p]||this.collection();x!=null&&L.merge(x);return}if(C.notificationsEnabled){var O=this.renderer();this.destroyed()||!O||O.notify(p,x)}},notifications:function(p){var x=this._private;return p===void 0?x.notificationsEnabled:(x.notificationsEnabled=!!p,this)},noNotifications:function(p){this.notifications(!1),p(),this.notifications(!0)},batching:function(){return this._private.batchCount>0},startBatch:function(){var p=this._private;return p.batchCount==null&&(p.batchCount=0),p.batchCount===0&&(p.batchStyleEles=this.collection(),p.batchNotifications={}),p.batchCount++,this},endBatch:function(){var p=this._private;if(p.batchCount===0)return this;if(p.batchCount--,p.batchCount===0){p.batchStyleEles.updateStyle();var x=this.renderer();Object.keys(p.batchNotifications).forEach(function(C){var L=p.batchNotifications[C];L.empty()?x.notify(C):x.notify(C,L)})}return this},batch:function(p){return this.startBatch(),p(),this.endBatch(),this},batchData:function(p){var x=this;return this.batch(function(){for(var C=Object.keys(p),L=0;L<C.length;L++){var O=C[L],N=p[O],j=x.getElementById(O);j.data(N)}})}},get=p1({hideEdgesOnViewport:!1,textureOnViewport:!1,motionBlur:!1,motionBlurOpacity:.05,pixelRatio:void 0,desktopTapThreshold:4,touchTapThreshold:8,wheelSensitivity:1,debug:!1,showFps:!1}),fM={renderTo:function(p,x,C,L){var O=this._private.renderer;return O.renderTo(p,x,C,L),this},renderer:function(){return this._private.renderer},forceRender:function(){return this.notify("draw"),this},resize:function(){return this.invalidateSize(),this.emitAndNotify("resize"),this},initRenderer:function(p){var x=this,C=x.extension("renderer",p.name);if(C==null){$l("Can not initialise: No such renderer `".concat(p.name,"` found. Did you forget to import it and `cytoscape.use()` it?"));return}p.wheelSensitivity!==void 0&&Gc("You have set a custom wheel sensitivity. This will make your app zoom unnaturally when using mainstream mice. You should change this value from the default only if you can guarantee that all your users will use the same hardware and OS configuration as your current machine.");var L=get(p);L.cy=x,x._private.renderer=new C(L),this.notify("init")},destroyRenderer:function(){var p=this;p.notify("destroy");var x=p.container();if(x)for(x._cyreg=null;x.childNodes.length>0;)x.removeChild(x.childNodes[0]);p._private.renderer=null,p.mutableElements().forEach(function(C){var L=C._private;L.rscratch={},L.rstyle={},L.animation.current=[],L.animation.queue=[]})},onRender:function(p){return this.on("render",p)},offRender:function(p){return this.off("render",p)}};fM.invalidateDimensions=fM.resize;var EC={collection:function(p,x){return mt(p)?this.$(p):yt(p)?p.collection():rt(p)?(x||(x={}),new w1(this,p,x.unique,x.removed)):new w1(this)},nodes:function(p){var x=this.$(function(C){return C.isNode()});return p?x.filter(p):x},edges:function(p){var x=this.$(function(C){return C.isEdge()});return p?x.filter(p):x},$:function(p){var x=this._private.elements;return p?x.filter(p):x.spawnSelf()},mutableElements:function(){return this._private.elements}};EC.elements=EC.filter=EC.$;var W1={},Q8="t",pet="f";W1.apply=function(y){for(var p=this,x=p._private,C=x.cy,L=C.collection(),O=0;O<y.length;O++){var N=y[O],j=p.getContextMeta(N);if(!j.empty){var H=p.getContextStyle(j),q=p.applyContextStyle(j,H,N);N._private.appliedInitStyle?p.updateTransitions(N,q.diffProps):N._private.appliedInitStyle=!0;var W=p.updateStyleHints(N);W&&L.push(N)}}return L},W1.getPropertiesDiff=function(y,p){var x=this,C=x._private.propDiffs=x._private.propDiffs||{},L=y+"-"+p,O=C[L];if(O)return O;for(var N=[],j={},H=0;H<x.length;H++){var q=x[H],W=y[H]===Q8,Z=p[H]===Q8,st=W!==Z,bt=q.mappedProperties.length>0;if(st||Z&&bt){var pt=void 0;st&&bt||st?pt=q.properties:bt&&(pt=q.mappedProperties);for(var _t=0;_t<pt.length;_t++){for(var St=pt[_t],Et=St.name,Nt=!1,Pt=H+1;Pt<x.length;Pt++){var qt=x[Pt],re=p[Pt]===Q8;if(re&&(Nt=qt.properties[St.name]!=null,Nt))break}!j[Et]&&!Nt&&(j[Et]=!0,N.push(Et))}}}return C[L]=N,N},W1.getContextMeta=function(y){for(var p=this,x="",C,L=y._private.styleCxtKey||"",O=0;O<p.length;O++){var N=p[O],j=N.selector&&N.selector.matches(y);j?x+=Q8:x+=pet}return C=p.getPropertiesDiff(L,x),y._private.styleCxtKey=x,{key:x,diffPropNames:C,empty:C.length===0}},W1.getContextStyle=function(y){var p=y.key,x=this,C=this._private.contextStyles=this._private.contextStyles||{};if(C[p])return C[p];for(var L={_private:{key:p}},O=0;O<x.length;O++){var N=x[O],j=p[O]===Q8;if(j)for(var H=0;H<N.properties.length;H++){var q=N.properties[H];L[q.name]=q}}return C[p]=L,L},W1.applyContextStyle=function(y,p,x){for(var C=this,L=y.diffPropNames,O={},N=C.types,j=0;j<L.length;j++){var H=L[j],q=p[H],W=x.pstyle(H);if(!q)if(W)W.bypass?q={name:H,deleteBypassed:!0}:q={name:H,delete:!0};else continue;if(W!==q){if(q.mapped===N.fn&&W!=null&&W.mapping!=null&&W.mapping.value===q.value){var Z=W.mapping,st=Z.fnValue=q.value(x);if(st===Z.prevFnValue)continue}var bt=O[H]={prev:W};C.applyParsedProperty(x,q),bt.next=x.pstyle(H),bt.next&&bt.next.bypass&&(bt.next=bt.next.bypassed)}}return{diffProps:O}},W1.updateStyleHints=function(y){var p=y._private,x=this,C=x.propertyGroupNames,L=x.propertyGroupKeys,O=function(gi,ss,na){return x.getPropertiesHash(gi,ss,na)},N=p.styleKey;if(y.removed())return!1;var j=p.group==="nodes",H=y._private.style;C=Object.keys(H);for(var q=0;q<L.length;q++){var W=L[q];p.styleKeys[W]=[sy,g4]}for(var Z=function(gi,ss){return p.styleKeys[ss][0]=fg(gi,p.styleKeys[ss][0])},st=function(gi,ss){return p.styleKeys[ss][1]=O2(gi,p.styleKeys[ss][1])},bt=function(gi,ss){Z(gi,ss),st(gi,ss)},pt=function(gi,ss){for(var na=0;na<gi.length;na++){var vi=gi.charCodeAt(na);Z(vi,ss),st(vi,ss)}},_t=2e9,St=function(gi){return-128<gi&&gi<128&&Math.floor(gi)!==gi?_t-(gi*1024|0):gi},Et=0;Et<C.length;Et++){var Nt=C[Et],Pt=H[Nt];if(Pt!=null){var qt=this.properties[Nt],re=qt.type,ee=qt.groupKey,Ut=void 0;qt.hashOverride!=null?Ut=qt.hashOverride(y,Pt):Pt.pfValue!=null&&(Ut=Pt.pfValue);var de=qt.enums==null?Pt.value:null,Yt=Ut!=null,Ee=de!=null,Te=Yt||Ee,ie=Pt.units;if(re.number&&Te&&!re.multiple){var ze=Yt?Ut:de;bt(St(ze),ee),!Yt&&ie!=null&&pt(ie,ee)}else pt(Pt.strValue,ee)}}for(var me=[sy,g4],yn=0;yn<L.length;yn++){var nn=L[yn],qe=p.styleKeys[nn];me[0]=fg(qe[0],me[0]),me[1]=O2(qe[1],me[1])}p.styleKey=M8(me[0],me[1]);var Tn=p.styleKeys;p.labelDimsKey=N2(Tn.labelDimensions);var Xn=O(y,["label"],Tn.labelDimensions);if(p.labelKey=N2(Xn),p.labelStyleKey=N2(p4(Tn.commonLabel,Xn)),!j){var lr=O(y,["source-label"],Tn.labelDimensions);p.sourceLabelKey=N2(lr),p.sourceLabelStyleKey=N2(p4(Tn.commonLabel,lr));var Sn=O(y,["target-label"],Tn.labelDimensions);p.targetLabelKey=N2(Sn),p.targetLabelStyleKey=N2(p4(Tn.commonLabel,Sn))}if(j){var or=p.styleKeys,pr=or.nodeBody,kr=or.nodeBorder,wr=or.nodeOutline,Cr=or.backgroundImage,$n=or.compound,cr=or.pie,mr=[pr,kr,wr,Cr,$n,cr].filter(function(Sr){return Sr!=null}).reduce(p4,[sy,g4]);p.nodeKey=N2(mr),p.hasPie=cr!=null&&cr[0]!==sy&&cr[1]!==g4}return N!==p.styleKey},W1.clearStyleHints=function(y){var p=y._private;p.styleCxtKey="",p.styleKeys={},p.styleKey=null,p.labelKey=null,p.labelStyleKey=null,p.sourceLabelKey=null,p.sourceLabelStyleKey=null,p.targetLabelKey=null,p.targetLabelStyleKey=null,p.nodeKey=null,p.hasPie=null},W1.applyParsedProperty=function(y,p){var x=this,C=p,L=y._private.style,O,N=x.types,j=x.properties[C.name].type,H=C.bypass,q=L[C.name],W=q&&q.bypass,Z=y._private,st="mapping",bt=function(pr){return pr==null?null:pr.pfValue!=null?pr.pfValue:pr.value},pt=function(){var pr=bt(q),kr=bt(C);x.checkTriggers(y,C.name,pr,kr)};if(p.name==="curve-style"&&y.isEdge()&&(p.value!=="bezier"&&y.isLoop()||p.value==="haystack"&&(y.source().isParent()||y.target().isParent()))&&(C=p=this.parse(p.name,"bezier",H)),C.delete)return L[C.name]=void 0,pt(),!0;if(C.deleteBypassed)return q?q.bypass?(q.bypassed=void 0,pt(),!0):!1:(pt(),!0);if(C.deleteBypass)return q?q.bypass?(L[C.name]=q.bypassed,pt(),!0):!1:(pt(),!0);var _t=function(){Gc("Do not assign mappings to elements without corresponding data (i.e. ele `"+y.id()+"` has no mapping for property `"+C.name+"` with data field `"+C.field+"`); try a `["+C.field+"]` selector to limit scope to elements with `"+C.field+"` defined")};switch(C.mapped){case N.mapData:{for(var St=C.field.split("."),Et=Z.data,Nt=0;Nt<St.length&&Et;Nt++){var Pt=St[Nt];Et=Et[Pt]}if(Et==null)return _t(),!1;var qt;if(Q(Et)){var re=C.fieldMax-C.fieldMin;re===0?qt=0:qt=(Et-C.fieldMin)/re}else return Gc("Do not use continuous mappers without specifying numeric data (i.e. `"+C.field+": "+Et+"` for `"+y.id()+"` is non-numeric)"),!1;if(qt<0?qt=0:qt>1&&(qt=1),j.color){var ee=C.valueMin[0],Ut=C.valueMax[0],de=C.valueMin[1],Yt=C.valueMax[1],Ee=C.valueMin[2],Te=C.valueMax[2],ie=C.valueMin[3]==null?1:C.valueMin[3],ze=C.valueMax[3]==null?1:C.valueMax[3],me=[Math.round(ee+(Ut-ee)*qt),Math.round(de+(Yt-de)*qt),Math.round(Ee+(Te-Ee)*qt),Math.round(ie+(ze-ie)*qt)];O={bypass:C.bypass,name:C.name,value:me,strValue:"rgb("+me[0]+", "+me[1]+", "+me[2]+")"}}else if(j.number){var yn=C.valueMin+(C.valueMax-C.valueMin)*qt;O=this.parse(C.name,yn,C.bypass,st)}else return!1;if(!O)return _t(),!1;O.mapping=C,C=O;break}case N.data:{for(var nn=C.field.split("."),qe=Z.data,Tn=0;Tn<nn.length&&qe;Tn++){var Xn=nn[Tn];qe=qe[Xn]}if(qe!=null&&(O=this.parse(C.name,qe,C.bypass,st)),!O)return _t(),!1;O.mapping=C,C=O;break}case N.fn:{var lr=C.value,Sn=C.fnValue!=null?C.fnValue:lr(y);if(C.prevFnValue=Sn,Sn==null)return Gc("Custom function mappers may not return null (i.e. `"+C.name+"` for ele `"+y.id()+"` is null)"),!1;if(O=this.parse(C.name,Sn,C.bypass,st),!O)return Gc("Custom function mappers may not return invalid values for the property type (i.e. `"+C.name+"` for ele `"+y.id()+"` is invalid)"),!1;O.mapping=P2(C),C=O;break}case void 0:break;default:return!1}return H?(W?C.bypassed=q.bypassed:C.bypassed=q,L[C.name]=C):W?q.bypassed=C:L[C.name]=C,pt(),!0},W1.cleanElements=function(y,p){for(var x=0;x<y.length;x++){var C=y[x];if(this.clearStyleHints(C),C.dirtyCompoundBoundsCache(),C.dirtyBoundingBoxCache(),!p)C._private.style={};else for(var L=C._private.style,O=Object.keys(L),N=0;N<O.length;N++){var j=O[N],H=L[j];H!=null&&(H.bypass?H.bypassed=null:L[j]=null)}}},W1.update=function(){var y=this._private.cy,p=y.mutableElements();p.updateStyle()},W1.updateTransitions=function(y,p){var x=this,C=y._private,L=y.pstyle("transition-property").value,O=y.pstyle("transition-duration").pfValue,N=y.pstyle("transition-delay").pfValue;if(L.length>0&&O>0){for(var j={},H=!1,q=0;q<L.length;q++){var W=L[q],Z=y.pstyle(W),st=p[W];if(st){var bt=st.prev,pt=bt,_t=st.next!=null?st.next:Z,St=!1,Et=void 0,Nt=1e-6;pt&&(Q(pt.pfValue)&&Q(_t.pfValue)?(St=_t.pfValue-pt.pfValue,Et=pt.pfValue+Nt*St):Q(pt.value)&&Q(_t.value)?(St=_t.value-pt.value,Et=pt.value+Nt*St):rt(pt.value)&&rt(_t.value)&&(St=pt.value[0]!==_t.value[0]||pt.value[1]!==_t.value[1]||pt.value[2]!==_t.value[2],Et=pt.strValue),St&&(j[W]=_t.strValue,this.applyBypass(y,W,Et),H=!0))}}if(!H)return;C.transitioning=!0,new e6(function(Pt){N>0?y.delayAnimation(N).play().promise().then(Pt):Pt()}).then(function(){return y.animation({style:j,duration:O,easing:y.pstyle("transition-timing-function").value,queue:!1}).play().promise()}).then(function(){x.removeBypasses(y,L),y.emitAndNotify("style"),C.transitioning=!1})}else C.transitioning&&(this.removeBypasses(y,L),y.emitAndNotify("style"),C.transitioning=!1)},W1.checkTrigger=function(y,p,x,C,L,O){var N=this.properties[p],j=L(N);j!=null&&j(x,C)&&O(N)},W1.checkZOrderTrigger=function(y,p,x,C){var L=this;this.checkTrigger(y,p,x,C,function(O){return O.triggersZOrder},function(){L._private.cy.notify("zorder",y)})},W1.checkBoundsTrigger=function(y,p,x,C){this.checkTrigger(y,p,x,C,function(L){return L.triggersBounds},function(L){y.dirtyCompoundBoundsCache(),y.dirtyBoundingBoxCache(),L.triggersBoundsOfParallelBeziers&&p==="curve-style"&&(x==="bezier"||C==="bezier")&&y.parallelEdges().forEach(function(O){O.isBundledBezier()&&O.dirtyBoundingBoxCache()}),L.triggersBoundsOfConnectedEdges&&p==="display"&&(x==="none"||C==="none")&&y.connectedEdges().forEach(function(O){O.dirtyBoundingBoxCache()})})},W1.checkTriggers=function(y,p,x,C){y.dirtyStyleCache(),this.checkZOrderTrigger(y,p,x,C),this.checkBoundsTrigger(y,p,x,C)};var J8={};J8.applyBypass=function(y,p,x,C){var L=this,O=[],N=!0;if(p==="*"||p==="**"){if(x!==void 0)for(var j=0;j<L.properties.length;j++){var H=L.properties[j],q=H.name,W=this.parse(q,x,!0);W&&O.push(W)}}else if(mt(p)){var Z=this.parse(p,x,!0);Z&&O.push(Z)}else if(it(p)){var st=p;C=x;for(var bt=Object.keys(st),pt=0;pt<bt.length;pt++){var _t=bt[pt],St=st[_t];if(St===void 0&&(St=st[Ae(_t)]),St!==void 0){var Et=this.parse(_t,St,!0);Et&&O.push(Et)}}}else return!1;if(O.length===0)return!1;for(var Nt=!1,Pt=0;Pt<y.length;Pt++){for(var qt=y[Pt],re={},ee=void 0,Ut=0;Ut<O.length;Ut++){var de=O[Ut];if(C){var Yt=qt.pstyle(de.name);ee=re[de.name]={prev:Yt}}Nt=this.applyParsedProperty(qt,P2(de))||Nt,C&&(ee.next=qt.pstyle(de.name))}Nt&&this.updateStyleHints(qt),C&&this.updateTransitions(qt,re,N)}return Nt},J8.overrideBypass=function(y,p,x){p=pn(p);for(var C=0;C<y.length;C++){var L=y[C],O=L._private.style[p],N=this.properties[p].type,j=N.color,H=N.mutiple,q=O?O.pfValue!=null?O.pfValue:O.value:null;!O||!O.bypass?this.applyBypass(L,p,x):(O.value=x,O.pfValue!=null&&(O.pfValue=x),j?O.strValue="rgb("+x.join(",")+")":H?O.strValue=x.join(" "):O.strValue=""+x,this.updateStyleHints(L)),this.checkTriggers(L,p,q,x)}},J8.removeAllBypasses=function(y,p){return this.removeBypasses(y,this.propertyNames,p)},J8.removeBypasses=function(y,p,x){for(var C=!0,L=0;L<y.length;L++){for(var O=y[L],N={},j=0;j<p.length;j++){var H=p[j],q=this.properties[H],W=O.pstyle(q.name);if(!(!W||!W.bypass)){var Z="",st=this.parse(H,Z,!0),bt=N[q.name]={prev:W};this.applyParsedProperty(O,st),bt.next=O.pstyle(q.name)}}this.updateStyleHints(O),x&&this.updateTransitions(O,N,C)}};var dM={};dM.getEmSizeInPixels=function(){var y=this.containerCss("font-size");return y!=null?parseFloat(y):1},dM.containerCss=function(y){var p=this._private.cy,x=p.container(),C=p.window();if(C&&x&&C.getComputedStyle)return C.getComputedStyle(x).getPropertyValue(y)};var R2={};R2.getRenderedStyle=function(y,p){return p?this.getStylePropertyValue(y,p,!0):this.getRawStyle(y,!0)},R2.getRawStyle=function(y,p){var x=this;if(y=y[0],y){for(var C={},L=0;L<x.properties.length;L++){var O=x.properties[L],N=x.getStylePropertyValue(y,O.name,p);N!=null&&(C[O.name]=N,C[Ae(O.name)]=N)}return C}},R2.getIndexedStyle=function(y,p,x,C){var L=y.pstyle(p)[x][C];return L??y.cy().style().getDefaultProperty(p)[x][0]},R2.getStylePropertyValue=function(y,p,x){var C=this;if(y=y[0],y){var L=C.properties[p];L.alias&&(L=L.pointsTo);var O=L.type,N=y.pstyle(L.name);if(N){var j=N.value,H=N.units,q=N.strValue;if(x&&O.number&&j!=null&&Q(j)){var W=y.cy().zoom(),Z=function(St){return St*W},st=function(St,Et){return Z(St)+Et},bt=rt(j),pt=bt?H.every(function(_t){return _t!=null}):H!=null;return pt?bt?j.map(function(_t,St){return st(_t,H[St])}).join(" "):st(j,H):bt?j.map(function(_t){return mt(_t)?_t:""+Z(_t)}).join(" "):""+Z(j)}else if(q!=null)return q}return null}},R2.getAnimationStartStyle=function(y,p){for(var x={},C=0;C<p.length;C++){var L=p[C],O=L.name,N=y.pstyle(O);N!==void 0&&(it(N)?N=this.parse(O,N.strValue):N=this.parse(O,N)),N&&(x[O]=N)}return x},R2.getPropsList=function(y){var p=this,x=[],C=y,L=p.properties;if(C)for(var O=Object.keys(C),N=0;N<O.length;N++){var j=O[N],H=C[j],q=L[j]||L[pn(j)],W=this.parse(q.name,H);W&&x.push(W)}return x},R2.getNonDefaultPropertiesHash=function(y,p,x){var C=x.slice(),L,O,N,j,H,q;for(H=0;H<p.length;H++)if(L=p[H],O=y.pstyle(L,!1),O!=null)if(O.pfValue!=null)C[0]=fg(j,C[0]),C[1]=O2(j,C[1]);else for(N=O.strValue,q=0;q<N.length;q++)j=N.charCodeAt(q),C[0]=fg(j,C[0]),C[1]=O2(j,C[1]);return C},R2.getPropertiesHash=R2.getNonDefaultPropertiesHash;var TC={};TC.appendFromJson=function(y){for(var p=this,x=0;x<y.length;x++){var C=y[x],L=C.selector,O=C.style||C.css,N=Object.keys(O);p.selector(L);for(var j=0;j<N.length;j++){var H=N[j],q=O[H];p.css(H,q)}}return p},TC.fromJson=function(y){var p=this;return p.resetToDefault(),p.appendFromJson(y),p},TC.json=function(){for(var y=[],p=this.defaultLength;p<this.length;p++){for(var x=this[p],C=x.selector,L=x.properties,O={},N=0;N<L.length;N++){var j=L[N];O[j.name]=j.strValue}y.push({selector:C?C.toString():"core",style:O})}return y};var gM={};gM.appendFromString=function(y){var p=this,x=this,C=""+y,L,O,N;C=C.replace(/[/][*](\s|.)+?[*][/]/g,"");function j(){C.length>L.length?C=C.substr(L.length):C=""}function H(){O.length>N.length?O=O.substr(N.length):O=""}for(;;){var q=C.match(/^\s*$/);if(q)break;var W=C.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!W){Gc("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+C);break}L=W[0];var Z=W[1];if(Z!=="core"){var st=new ly(Z);if(st.invalid){Gc("Skipping parsing of block: Invalid selector found in string stylesheet: "+Z),j();continue}}var bt=W[2],pt=!1;O=bt;for(var _t=[];;){var St=O.match(/^\s*$/);if(St)break;var Et=O.match(/^\s*(.+?)\s*:\s*(.+?)(?:\s*;|\s*$)/);if(!Et){Gc("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+bt),pt=!0;break}N=Et[0];var Nt=Et[1],Pt=Et[2],qt=p.properties[Nt];if(!qt){Gc("Skipping property: Invalid property name in: "+N),H();continue}var re=x.parse(Nt,Pt);if(!re){Gc("Skipping property: Invalid property definition in: "+N),H();continue}_t.push({name:Nt,val:Pt}),H()}if(pt){j();break}x.selector(Z);for(var ee=0;ee<_t.length;ee++){var Ut=_t[ee];x.css(Ut.name,Ut.val)}j()}return x},gM.fromString=function(y){var p=this;return p.resetToDefault(),p.appendFromString(y),p};var m1={};(function(){var y=sn,p=Ne,x=_e,C=xe,L=Mn,O=function(mr){return"^"+mr+"\\s*\\(\\s*([\\w\\.]+)\\s*\\)$"},N=function(mr){var Sr=y+"|\\w+|"+p+"|"+x+"|"+C+"|"+L;return"^"+mr+"\\s*\\(([\\w\\.]+)\\s*\\,\\s*("+y+")\\s*\\,\\s*("+y+")\\s*,\\s*("+Sr+")\\s*\\,\\s*("+Sr+")\\)$"},j=[`^url\\s*\\(\\s*['"]?(.+?)['"]?\\s*\\)$`,"^(none)$","^(.+)$"];m1.types={time:{number:!0,min:0,units:"s|ms",implicitUnits:"ms"},percent:{number:!0,min:0,max:100,units:"%",implicitUnits:"%"},percentages:{number:!0,min:0,max:100,units:"%",implicitUnits:"%",multiple:!0},zeroOneNumber:{number:!0,min:0,max:1,unitless:!0},zeroOneNumbers:{number:!0,min:0,max:1,unitless:!0,multiple:!0},nOneOneNumber:{number:!0,min:-1,max:1,unitless:!0},nonNegativeInt:{number:!0,min:0,integer:!0,unitless:!0},nonNegativeNumber:{number:!0,min:0,unitless:!0},position:{enums:["parent","origin"]},nodeSize:{number:!0,min:0,enums:["label"]},number:{number:!0,unitless:!0},numbers:{number:!0,unitless:!0,multiple:!0},positiveNumber:{number:!0,unitless:!0,min:0,strictMin:!0},size:{number:!0,min:0},bidirectionalSize:{number:!0},bidirectionalSizeMaybePercent:{number:!0,allowPercent:!0},bidirectionalSizes:{number:!0,multiple:!0},sizeMaybePercent:{number:!0,min:0,allowPercent:!0},axisDirection:{enums:["horizontal","leftward","rightward","vertical","upward","downward","auto"]},paddingRelativeTo:{enums:["width","height","average","min","max"]},bgWH:{number:!0,min:0,allowPercent:!0,enums:["auto"],multiple:!0},bgPos:{number:!0,allowPercent:!0,multiple:!0},bgRelativeTo:{enums:["inner","include-padding"],multiple:!0},bgRepeat:{enums:["repeat","repeat-x","repeat-y","no-repeat"],multiple:!0},bgFit:{enums:["none","contain","cover"],multiple:!0},bgCrossOrigin:{enums:["anonymous","use-credentials","null"],multiple:!0},bgClip:{enums:["none","node"],multiple:!0},bgContainment:{enums:["inside","over"],multiple:!0},color:{color:!0},colors:{color:!0,multiple:!0},fill:{enums:["solid","linear-gradient","radial-gradient"]},bool:{enums:["yes","no"]},bools:{enums:["yes","no"],multiple:!0},lineStyle:{enums:["solid","dotted","dashed"]},lineCap:{enums:["butt","round","square"]},borderStyle:{enums:["solid","dotted","dashed","double"]},curveStyle:{enums:["bezier","unbundled-bezier","haystack","segments","straight","straight-triangle","taxi"]},fontFamily:{regex:'^([\\w- \\"]+(?:\\s*,\\s*[\\w- \\"]+)*)$'},fontStyle:{enums:["italic","normal","oblique"]},fontWeight:{enums:["normal","bold","bolder","lighter","100","200","300","400","500","600","800","900",100,200,300,400,500,600,700,800,900]},textDecoration:{enums:["none","underline","overline","line-through"]},textTransform:{enums:["none","uppercase","lowercase"]},textWrap:{enums:["none","wrap","ellipsis"]},textOverflowWrap:{enums:["whitespace","anywhere"]},textBackgroundShape:{enums:["rectangle","roundrectangle","round-rectangle"]},nodeShape:{enums:["rectangle","roundrectangle","round-rectangle","cutrectangle","cut-rectangle","bottomroundrectangle","bottom-round-rectangle","barrel","ellipse","triangle","round-triangle","square","pentagon","round-pentagon","hexagon","round-hexagon","concavehexagon","concave-hexagon","heptagon","round-heptagon","octagon","round-octagon","tag","round-tag","star","diamond","round-diamond","vee","rhomboid","right-rhomboid","polygon"]},overlayShape:{enums:["roundrectangle","round-rectangle","ellipse"]},compoundIncludeLabels:{enums:["include","exclude"]},arrowShape:{enums:["tee","triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","square","circle","diamond","chevron","none"]},arrowFill:{enums:["filled","hollow"]},arrowWidth:{number:!0,units:"%|px|em",implicitUnits:"px",enums:["match-line"]},display:{enums:["element","none"]},visibility:{enums:["hidden","visible"]},zCompoundDepth:{enums:["bottom","orphan","auto","top"]},zIndexCompare:{enums:["auto","manual"]},valign:{enums:["top","center","bottom"]},halign:{enums:["left","center","right"]},justification:{enums:["left","center","right","auto"]},text:{string:!0},data:{mapping:!0,regex:O("data")},layoutData:{mapping:!0,regex:O("layoutData")},scratch:{mapping:!0,regex:O("scratch")},mapData:{mapping:!0,regex:N("mapData")},mapLayoutData:{mapping:!0,regex:N("mapLayoutData")},mapScratch:{mapping:!0,regex:N("mapScratch")},fn:{mapping:!0,fn:!0},url:{regexes:j,singleRegexMatchValue:!0},urls:{regexes:j,singleRegexMatchValue:!0,multiple:!0},propList:{propList:!0},angle:{number:!0,units:"deg|rad",implicitUnits:"rad"},textRotation:{number:!0,units:"deg|rad",implicitUnits:"rad",enums:["none","autorotate"]},polygonPointList:{number:!0,multiple:!0,evenMultiple:!0,min:-1,max:1,unitless:!0},edgeDistances:{enums:["intersection","node-position","endpoints"]},edgeEndpoint:{number:!0,multiple:!0,units:"%|px|em|deg|rad",implicitUnits:"px",enums:["inside-to-node","outside-to-node","outside-to-node-or-label","outside-to-line","outside-to-line-or-label"],singleEnum:!0,validate:function(mr,Sr){switch(mr.length){case 2:return Sr[0]!=="deg"&&Sr[0]!=="rad"&&Sr[1]!=="deg"&&Sr[1]!=="rad";case 1:return mt(mr[0])||Sr[0]==="deg"||Sr[0]==="rad";default:return!1}}},easing:{regexes:["^(spring)\\s*\\(\\s*("+y+")\\s*,\\s*("+y+")\\s*\\)$","^(cubic-bezier)\\s*\\(\\s*("+y+")\\s*,\\s*("+y+")\\s*,\\s*("+y+")\\s*,\\s*("+y+")\\s*\\)$"],enums:["linear","ease","ease-in","ease-out","ease-in-out","ease-in-sine","ease-out-sine","ease-in-out-sine","ease-in-quad","ease-out-quad","ease-in-out-quad","ease-in-cubic","ease-out-cubic","ease-in-out-cubic","ease-in-quart","ease-out-quart","ease-in-out-quart","ease-in-quint","ease-out-quint","ease-in-out-quint","ease-in-expo","ease-out-expo","ease-in-out-expo","ease-in-circ","ease-out-circ","ease-in-out-circ"]},gradientDirection:{enums:["to-bottom","to-top","to-left","to-right","to-bottom-right","to-bottom-left","to-top-right","to-top-left","to-right-bottom","to-left-bottom","to-right-top","to-left-top"]},boundsExpansion:{number:!0,multiple:!0,min:0,validate:function(mr){var Sr=mr.length;return Sr===1||Sr===2||Sr===4}}};var H={zeroNonZero:function(mr,Sr){return(mr==null||Sr==null)&&mr!==Sr||mr==0&&Sr!=0?!0:mr!=0&&Sr==0},any:function(mr,Sr){return mr!=Sr},emptyNonEmpty:function(mr,Sr){var gi=Ft(mr),ss=Ft(Sr);return gi&&!ss||!gi&&ss}},q=m1.types,W=[{name:"label",type:q.text,triggersBounds:H.any,triggersZOrder:H.emptyNonEmpty},{name:"text-rotation",type:q.textRotation,triggersBounds:H.any},{name:"text-margin-x",type:q.bidirectionalSize,triggersBounds:H.any},{name:"text-margin-y",type:q.bidirectionalSize,triggersBounds:H.any}],Z=[{name:"source-label",type:q.text,triggersBounds:H.any},{name:"source-text-rotation",type:q.textRotation,triggersBounds:H.any},{name:"source-text-margin-x",type:q.bidirectionalSize,triggersBounds:H.any},{name:"source-text-margin-y",type:q.bidirectionalSize,triggersBounds:H.any},{name:"source-text-offset",type:q.size,triggersBounds:H.any}],st=[{name:"target-label",type:q.text,triggersBounds:H.any},{name:"target-text-rotation",type:q.textRotation,triggersBounds:H.any},{name:"target-text-margin-x",type:q.bidirectionalSize,triggersBounds:H.any},{name:"target-text-margin-y",type:q.bidirectionalSize,triggersBounds:H.any},{name:"target-text-offset",type:q.size,triggersBounds:H.any}],bt=[{name:"font-family",type:q.fontFamily,triggersBounds:H.any},{name:"font-style",type:q.fontStyle,triggersBounds:H.any},{name:"font-weight",type:q.fontWeight,triggersBounds:H.any},{name:"font-size",type:q.size,triggersBounds:H.any},{name:"text-transform",type:q.textTransform,triggersBounds:H.any},{name:"text-wrap",type:q.textWrap,triggersBounds:H.any},{name:"text-overflow-wrap",type:q.textOverflowWrap,triggersBounds:H.any},{name:"text-max-width",type:q.size,triggersBounds:H.any},{name:"text-outline-width",type:q.size,triggersBounds:H.any},{name:"line-height",type:q.positiveNumber,triggersBounds:H.any}],pt=[{name:"text-valign",type:q.valign,triggersBounds:H.any},{name:"text-halign",type:q.halign,triggersBounds:H.any},{name:"color",type:q.color},{name:"text-outline-color",type:q.color},{name:"text-outline-opacity",type:q.zeroOneNumber},{name:"text-background-color",type:q.color},{name:"text-background-opacity",type:q.zeroOneNumber},{name:"text-background-padding",type:q.size,triggersBounds:H.any},{name:"text-border-opacity",type:q.zeroOneNumber},{name:"text-border-color",type:q.color},{name:"text-border-width",type:q.size,triggersBounds:H.any},{name:"text-border-style",type:q.borderStyle,triggersBounds:H.any},{name:"text-background-shape",type:q.textBackgroundShape,triggersBounds:H.any},{name:"text-justification",type:q.justification}],_t=[{name:"events",type:q.bool,triggersZOrder:H.any},{name:"text-events",type:q.bool,triggersZOrder:H.any}],St=[{name:"display",type:q.display,triggersZOrder:H.any,triggersBounds:H.any,triggersBoundsOfConnectedEdges:!0},{name:"visibility",type:q.visibility,triggersZOrder:H.any},{name:"opacity",type:q.zeroOneNumber,triggersZOrder:H.zeroNonZero},{name:"text-opacity",type:q.zeroOneNumber},{name:"min-zoomed-font-size",type:q.size},{name:"z-compound-depth",type:q.zCompoundDepth,triggersZOrder:H.any},{name:"z-index-compare",type:q.zIndexCompare,triggersZOrder:H.any},{name:"z-index",type:q.number,triggersZOrder:H.any}],Et=[{name:"overlay-padding",type:q.size,triggersBounds:H.any},{name:"overlay-color",type:q.color},{name:"overlay-opacity",type:q.zeroOneNumber,triggersBounds:H.zeroNonZero},{name:"overlay-shape",type:q.overlayShape,triggersBounds:H.any}],Nt=[{name:"underlay-padding",type:q.size,triggersBounds:H.any},{name:"underlay-color",type:q.color},{name:"underlay-opacity",type:q.zeroOneNumber,triggersBounds:H.zeroNonZero},{name:"underlay-shape",type:q.overlayShape,triggersBounds:H.any}],Pt=[{name:"transition-property",type:q.propList},{name:"transition-duration",type:q.time},{name:"transition-delay",type:q.time},{name:"transition-timing-function",type:q.easing}],qt=function(mr,Sr){return Sr.value==="label"?-mr.poolIndex():Sr.pfValue},re=[{name:"height",type:q.nodeSize,triggersBounds:H.any,hashOverride:qt},{name:"width",type:q.nodeSize,triggersBounds:H.any,hashOverride:qt},{name:"shape",type:q.nodeShape,triggersBounds:H.any},{name:"shape-polygon-points",type:q.polygonPointList,triggersBounds:H.any},{name:"background-color",type:q.color},{name:"background-fill",type:q.fill},{name:"background-opacity",type:q.zeroOneNumber},{name:"background-blacken",type:q.nOneOneNumber},{name:"background-gradient-stop-colors",type:q.colors},{name:"background-gradient-stop-positions",type:q.percentages},{name:"background-gradient-direction",type:q.gradientDirection},{name:"padding",type:q.sizeMaybePercent,triggersBounds:H.any},{name:"padding-relative-to",type:q.paddingRelativeTo,triggersBounds:H.any},{name:"bounds-expansion",type:q.boundsExpansion,triggersBounds:H.any}],ee=[{name:"border-color",type:q.color},{name:"border-opacity",type:q.zeroOneNumber},{name:"border-width",type:q.size,triggersBounds:H.any},{name:"border-style",type:q.borderStyle}],Ut=[{name:"outline-color",type:q.color},{name:"outline-opacity",type:q.zeroOneNumber},{name:"outline-width",type:q.size,triggersBounds:H.any},{name:"outline-style",type:q.borderStyle},{name:"outline-offset",type:q.size,triggersBounds:H.any}],de=[{name:"background-image",type:q.urls},{name:"background-image-crossorigin",type:q.bgCrossOrigin},{name:"background-image-opacity",type:q.zeroOneNumbers},{name:"background-image-containment",type:q.bgContainment},{name:"background-image-smoothing",type:q.bools},{name:"background-position-x",type:q.bgPos},{name:"background-position-y",type:q.bgPos},{name:"background-width-relative-to",type:q.bgRelativeTo},{name:"background-height-relative-to",type:q.bgRelativeTo},{name:"background-repeat",type:q.bgRepeat},{name:"background-fit",type:q.bgFit},{name:"background-clip",type:q.bgClip},{name:"background-width",type:q.bgWH},{name:"background-height",type:q.bgWH},{name:"background-offset-x",type:q.bgPos},{name:"background-offset-y",type:q.bgPos}],Yt=[{name:"position",type:q.position,triggersBounds:H.any},{name:"compound-sizing-wrt-labels",type:q.compoundIncludeLabels,triggersBounds:H.any},{name:"min-width",type:q.size,triggersBounds:H.any},{name:"min-width-bias-left",type:q.sizeMaybePercent,triggersBounds:H.any},{name:"min-width-bias-right",type:q.sizeMaybePercent,triggersBounds:H.any},{name:"min-height",type:q.size,triggersBounds:H.any},{name:"min-height-bias-top",type:q.sizeMaybePercent,triggersBounds:H.any},{name:"min-height-bias-bottom",type:q.sizeMaybePercent,triggersBounds:H.any}],Ee=[{name:"line-style",type:q.lineStyle},{name:"line-color",type:q.color},{name:"line-fill",type:q.fill},{name:"line-cap",type:q.lineCap},{name:"line-opacity",type:q.zeroOneNumber},{name:"line-dash-pattern",type:q.numbers},{name:"line-dash-offset",type:q.number},{name:"line-gradient-stop-colors",type:q.colors},{name:"line-gradient-stop-positions",type:q.percentages},{name:"curve-style",type:q.curveStyle,triggersBounds:H.any,triggersBoundsOfParallelBeziers:!0},{name:"haystack-radius",type:q.zeroOneNumber,triggersBounds:H.any},{name:"source-endpoint",type:q.edgeEndpoint,triggersBounds:H.any},{name:"target-endpoint",type:q.edgeEndpoint,triggersBounds:H.any},{name:"control-point-step-size",type:q.size,triggersBounds:H.any},{name:"control-point-distances",type:q.bidirectionalSizes,triggersBounds:H.any},{name:"control-point-weights",type:q.numbers,triggersBounds:H.any},{name:"segment-distances",type:q.bidirectionalSizes,triggersBounds:H.any},{name:"segment-weights",type:q.numbers,triggersBounds:H.any},{name:"taxi-turn",type:q.bidirectionalSizeMaybePercent,triggersBounds:H.any},{name:"taxi-turn-min-distance",type:q.size,triggersBounds:H.any},{name:"taxi-direction",type:q.axisDirection,triggersBounds:H.any},{name:"edge-distances",type:q.edgeDistances,triggersBounds:H.any},{name:"arrow-scale",type:q.positiveNumber,triggersBounds:H.any},{name:"loop-direction",type:q.angle,triggersBounds:H.any},{name:"loop-sweep",type:q.angle,triggersBounds:H.any},{name:"source-distance-from-node",type:q.size,triggersBounds:H.any},{name:"target-distance-from-node",type:q.size,triggersBounds:H.any}],Te=[{name:"ghost",type:q.bool,triggersBounds:H.any},{name:"ghost-offset-x",type:q.bidirectionalSize,triggersBounds:H.any},{name:"ghost-offset-y",type:q.bidirectionalSize,triggersBounds:H.any},{name:"ghost-opacity",type:q.zeroOneNumber}],ie=[{name:"selection-box-color",type:q.color},{name:"selection-box-opacity",type:q.zeroOneNumber},{name:"selection-box-border-color",type:q.color},{name:"selection-box-border-width",type:q.size},{name:"active-bg-color",type:q.color},{name:"active-bg-opacity",type:q.zeroOneNumber},{name:"active-bg-size",type:q.size},{name:"outside-texture-bg-color",type:q.color},{name:"outside-texture-bg-opacity",type:q.zeroOneNumber}],ze=[];m1.pieBackgroundN=16,ze.push({name:"pie-size",type:q.sizeMaybePercent});for(var me=1;me<=m1.pieBackgroundN;me++)ze.push({name:"pie-"+me+"-background-color",type:q.color}),ze.push({name:"pie-"+me+"-background-size",type:q.percent}),ze.push({name:"pie-"+me+"-background-opacity",type:q.zeroOneNumber});var yn=[],nn=m1.arrowPrefixes=["source","mid-source","target","mid-target"];[{name:"arrow-shape",type:q.arrowShape,triggersBounds:H.any},{name:"arrow-color",type:q.color},{name:"arrow-fill",type:q.arrowFill},{name:"arrow-width",type:q.arrowWidth}].forEach(function(cr){nn.forEach(function(mr){var Sr=mr+"-"+cr.name,gi=cr.type,ss=cr.triggersBounds;yn.push({name:Sr,type:gi,triggersBounds:ss})})},{});var qe=m1.properties=[].concat(_t,Pt,St,Et,Nt,Te,pt,bt,W,Z,st,re,ee,Ut,de,ze,Yt,Ee,yn,ie),Tn=m1.propertyGroups={behavior:_t,transition:Pt,visibility:St,overlay:Et,underlay:Nt,ghost:Te,commonLabel:pt,labelDimensions:bt,mainLabel:W,sourceLabel:Z,targetLabel:st,nodeBody:re,nodeBorder:ee,nodeOutline:Ut,backgroundImage:de,pie:ze,compound:Yt,edgeLine:Ee,edgeArrow:yn,core:ie},Xn=m1.propertyGroupNames={},lr=m1.propertyGroupKeys=Object.keys(Tn);lr.forEach(function(cr){Xn[cr]=Tn[cr].map(function(mr){return mr.name}),Tn[cr].forEach(function(mr){return mr.groupKey=cr})});var Sn=m1.aliases=[{name:"content",pointsTo:"label"},{name:"control-point-distance",pointsTo:"control-point-distances"},{name:"control-point-weight",pointsTo:"control-point-weights"},{name:"edge-text-rotation",pointsTo:"text-rotation"},{name:"padding-left",pointsTo:"padding"},{name:"padding-right",pointsTo:"padding"},{name:"padding-top",pointsTo:"padding"},{name:"padding-bottom",pointsTo:"padding"}];m1.propertyNames=qe.map(function(cr){return cr.name});for(var or=0;or<qe.length;or++){var pr=qe[or];qe[pr.name]=pr}for(var kr=0;kr<Sn.length;kr++){var wr=Sn[kr],Cr=qe[wr.pointsTo],$n={name:wr.name,alias:!0,pointsTo:Cr};qe.push($n),qe[wr.name]=$n}})(),m1.getDefaultProperty=function(y){return this.getDefaultProperties()[y]},m1.getDefaultProperties=function(){var y=this._private;if(y.defaultProperties!=null)return y.defaultProperties;for(var p=we({"selection-box-color":"#ddd","selection-box-opacity":.65,"selection-box-border-color":"#aaa","selection-box-border-width":1,"active-bg-color":"black","active-bg-opacity":.15,"active-bg-size":30,"outside-texture-bg-color":"#000","outside-texture-bg-opacity":.125,events:"yes","text-events":"no","text-valign":"top","text-halign":"center","text-justification":"auto","line-height":1,color:"#000","text-outline-color":"#000","text-outline-width":0,"text-outline-opacity":1,"text-opacity":1,"text-decoration":"none","text-transform":"none","text-wrap":"none","text-overflow-wrap":"whitespace","text-max-width":9999,"text-background-color":"#000","text-background-opacity":0,"text-background-shape":"rectangle","text-background-padding":0,"text-border-opacity":0,"text-border-width":0,"text-border-style":"solid","text-border-color":"#000","font-family":"Helvetica Neue, Helvetica, sans-serif","font-style":"normal","font-weight":"normal","font-size":16,"min-zoomed-font-size":0,"text-rotation":"none","source-text-rotation":"none","target-text-rotation":"none",visibility:"visible",display:"element",opacity:1,"z-compound-depth":"auto","z-index-compare":"auto","z-index":0,label:"","text-margin-x":0,"text-margin-y":0,"source-label":"","source-text-offset":0,"source-text-margin-x":0,"source-text-margin-y":0,"target-label":"","target-text-offset":0,"target-text-margin-x":0,"target-text-margin-y":0,"overlay-opacity":0,"overlay-color":"#000","overlay-padding":10,"overlay-shape":"round-rectangle","underlay-opacity":0,"underlay-color":"#000","underlay-padding":10,"underlay-shape":"round-rectangle","transition-property":"none","transition-duration":0,"transition-delay":0,"transition-timing-function":"linear","background-blacken":0,"background-color":"#999","background-fill":"solid","background-opacity":1,"background-image":"none","background-image-crossorigin":"anonymous","background-image-opacity":1,"background-image-containment":"inside","background-image-smoothing":"yes","background-position-x":"50%","background-position-y":"50%","background-offset-x":0,"background-offset-y":0,"background-width-relative-to":"include-padding","background-height-relative-to":"include-padding","background-repeat":"no-repeat","background-fit":"none","background-clip":"node","background-width":"auto","background-height":"auto","border-color":"#000","border-opacity":1,"border-width":0,"border-style":"solid","outline-color":"#999","outline-opacity":1,"outline-width":0,"outline-offset":0,"outline-style":"solid",height:30,width:30,shape:"ellipse","shape-polygon-points":"-1, -1, 1, -1, 1, 1, -1, 1","bounds-expansion":0,"background-gradient-direction":"to-bottom","background-gradient-stop-colors":"#999","background-gradient-stop-positions":"0%",ghost:"no","ghost-offset-y":0,"ghost-offset-x":0,"ghost-opacity":0,padding:0,"padding-relative-to":"width",position:"origin","compound-sizing-wrt-labels":"include","min-width":0,"min-width-bias-left":0,"min-width-bias-right":0,"min-height":0,"min-height-bias-top":0,"min-height-bias-bottom":0},{"pie-size":"100%"},[{name:"pie-{{i}}-background-color",value:"black"},{name:"pie-{{i}}-background-size",value:"0%"},{name:"pie-{{i}}-background-opacity",value:1}].reduce(function(H,q){for(var W=1;W<=m1.pieBackgroundN;W++){var Z=q.name.replace("{{i}}",W),st=q.value;H[Z]=st}return H},{}),{"line-style":"solid","line-color":"#999","line-fill":"solid","line-cap":"butt","line-opacity":1,"line-gradient-stop-colors":"#999","line-gradient-stop-positions":"0%","control-point-step-size":40,"control-point-weights":.5,"segment-weights":.5,"segment-distances":20,"taxi-turn":"50%","taxi-turn-min-distance":10,"taxi-direction":"auto","edge-distances":"intersection","curve-style":"haystack","haystack-radius":0,"arrow-scale":1,"loop-direction":"-45deg","loop-sweep":"-90deg","source-distance-from-node":0,"target-distance-from-node":0,"source-endpoint":"outside-to-node","target-endpoint":"outside-to-node","line-dash-pattern":[6,3],"line-dash-offset":0},[{name:"arrow-shape",value:"none"},{name:"arrow-color",value:"#999"},{name:"arrow-fill",value:"filled"},{name:"arrow-width",value:1}].reduce(function(H,q){return m1.arrowPrefixes.forEach(function(W){var Z=W+"-"+q.name,st=q.value;H[Z]=st}),H},{})),x={},C=0;C<this.properties.length;C++){var L=this.properties[C];if(!L.pointsTo){var O=L.name,N=p[O],j=this.parse(O,N);x[O]=j}}return y.defaultProperties=x,y.defaultProperties},m1.addDefaultStylesheet=function(){this.selector(":parent").css({shape:"rectangle",padding:10,"background-color":"#eee","border-color":"#ccc","border-width":1}).selector("edge").css({width:3}).selector(":loop").css({"curve-style":"bezier"}).selector("edge:compound").css({"curve-style":"bezier","source-endpoint":"outside-to-line","target-endpoint":"outside-to-line"}).selector(":selected").css({"background-color":"#0169D9","line-color":"#0169D9","source-arrow-color":"#0169D9","target-arrow-color":"#0169D9","mid-source-arrow-color":"#0169D9","mid-target-arrow-color":"#0169D9"}).selector(":parent:selected").css({"background-color":"#CCE1F9","border-color":"#aec8e5"}).selector(":active").css({"overlay-color":"black","overlay-padding":10,"overlay-opacity":.25}),this.defaultLength=this.length};var CC={};CC.parse=function(y,p,x,C){var L=this;if(ct(p))return L.parseImplWarn(y,p,x,C);var O=C==="mapping"||C===!0||C===!1||C==null?"dontcare":C,N=x?"t":"f",j=""+p,H=Pd(y,j,N,O),q=L.propCache=L.propCache||[],W;return(W=q[H])||(W=q[H]=L.parseImplWarn(y,p,x,C)),(x||C==="mapping")&&(W=P2(W),W&&(W.value=P2(W.value))),W},CC.parseImplWarn=function(y,p,x,C){var L=this.parseImpl(y,p,x,C);return!L&&p!=null&&Gc("The style property `".concat(y,": ").concat(p,"` is invalid")),L&&(L.name==="width"||L.name==="height")&&p==="label"&&Gc("The style value of `label` is deprecated for `"+L.name+"`"),L},CC.parseImpl=function(y,p,x,C){var L=this;y=pn(y);var O=L.properties[y],N=p,j=L.types;if(!O||p===void 0)return null;O.alias&&(O=O.pointsTo,y=O.name);var H=mt(p);H&&(p=p.trim());var q=O.type;if(!q)return null;if(x&&(p===""||p===null))return{name:y,value:p,bypass:!0,deleteBypass:!0};if(ct(p))return{name:y,value:p,strValue:"fn",mapped:j.fn,bypass:x};var W,Z;if(!(!H||C||p.length<7||p[1]!=="a")){if(p.length>=7&&p[0]==="d"&&(W=new RegExp(j.data.regex).exec(p))){if(x)return!1;var st=j.data;return{name:y,value:W,strValue:""+p,mapped:st,field:W[1],bypass:x}}else if(p.length>=10&&p[0]==="m"&&(Z=new RegExp(j.mapData.regex).exec(p))){if(x||q.multiple)return!1;var bt=j.mapData;if(!(q.color||q.number))return!1;var pt=this.parse(y,Z[4]);if(!pt||pt.mapped)return!1;var _t=this.parse(y,Z[5]);if(!_t||_t.mapped)return!1;if(pt.pfValue===_t.pfValue||pt.strValue===_t.strValue)return Gc("`"+y+": "+p+"` is not a valid mapper because the output range is zero; converting to `"+y+": "+pt.strValue+"`"),this.parse(y,pt.strValue);if(q.color){var St=pt.value,Et=_t.value,Nt=St[0]===Et[0]&&St[1]===Et[1]&&St[2]===Et[2]&&(St[3]===Et[3]||(St[3]==null||St[3]===1)&&(Et[3]==null||Et[3]===1));if(Nt)return!1}return{name:y,value:Z,strValue:""+p,mapped:bt,field:Z[1],fieldMin:parseFloat(Z[2]),fieldMax:parseFloat(Z[3]),valueMin:pt.value,valueMax:_t.value,bypass:x}}}if(q.multiple&&C!=="multiple"){var Pt;if(H?Pt=p.split(/\s+/):rt(p)?Pt=p:Pt=[p],q.evenMultiple&&Pt.length%2!==0)return null;for(var qt=[],re=[],ee=[],Ut="",de=!1,Yt=0;Yt<Pt.length;Yt++){var Ee=L.parse(y,Pt[Yt],x,"multiple");de=de||mt(Ee.value),qt.push(Ee.value),ee.push(Ee.pfValue!=null?Ee.pfValue:Ee.value),re.push(Ee.units),Ut+=(Yt>0?" ":"")+Ee.strValue}return q.validate&&!q.validate(qt,re)?null:q.singleEnum&&de?qt.length===1&&mt(qt[0])?{name:y,value:qt[0],strValue:qt[0],bypass:x}:null:{name:y,value:qt,pfValue:ee,strValue:Ut,bypass:x,units:re}}var Te=function(){for(var mr=0;mr<q.enums.length;mr++){var Sr=q.enums[mr];if(Sr===p)return{name:y,value:p,strValue:""+p,bypass:x}}return null};if(q.number){var ie,ze="px";if(q.units&&(ie=q.units),q.implicitUnits&&(ze=q.implicitUnits),!q.unitless)if(H){var me="px|em"+(q.allowPercent?"|\\%":"");ie&&(me=ie);var yn=p.match("^("+sn+")("+me+")?$");yn&&(p=yn[1],ie=yn[2]||ze)}else(!ie||q.implicitUnits)&&(ie=ze);if(p=parseFloat(p),isNaN(p)&&q.enums===void 0)return null;if(isNaN(p)&&q.enums!==void 0)return p=N,Te();if(q.integer&&!dt(p)||q.min!==void 0&&(p<q.min||q.strictMin&&p===q.min)||q.max!==void 0&&(p>q.max||q.strictMax&&p===q.max))return null;var nn={name:y,value:p,strValue:""+p+(ie||""),units:ie,bypass:x};return q.unitless||ie!=="px"&&ie!=="em"?nn.pfValue=p:nn.pfValue=ie==="px"||!ie?p:this.getEmSizeInPixels()*p,(ie==="ms"||ie==="s")&&(nn.pfValue=ie==="ms"?p:1e3*p),(ie==="deg"||ie==="rad")&&(nn.pfValue=ie==="rad"?p:lQ(p)),ie==="%"&&(nn.pfValue=p/100),nn}else if(q.propList){var qe=[],Tn=""+p;if(Tn!=="none"){for(var Xn=Tn.split(/\s*,\s*|\s+/),lr=0;lr<Xn.length;lr++){var Sn=Xn[lr].trim();L.properties[Sn]?qe.push(Sn):Gc("`"+Sn+"` is not a valid property name")}if(qe.length===0)return null}return{name:y,value:qe,strValue:qe.length===0?"none":qe.join(" "),bypass:x}}else if(q.color){var or=za(p);return or?{name:y,value:or,pfValue:or,strValue:"rgb("+or[0]+","+or[1]+","+or[2]+")",bypass:x}:null}else if(q.regex||q.regexes){if(q.enums){var pr=Te();if(pr)return pr}for(var kr=q.regexes?q.regexes:[q.regex],wr=0;wr<kr.length;wr++){var Cr=new RegExp(kr[wr]),$n=Cr.exec(p);if($n)return{name:y,value:q.singleRegexMatchValue?$n[1]:$n,strValue:""+p,bypass:x}}return null}else return q.string?{name:y,value:""+p,strValue:""+p,bypass:x}:q.enums?Te():null};var Y1=function y(p){if(!(this instanceof y))return new y(p);if(!It(p)){$l("A style must have a core reference");return}this._private={cy:p,coreStyle:{}},this.length=0,this.resetToDefault()},X1=Y1.prototype;X1.instanceString=function(){return"style"},X1.clear=function(){for(var y=this._private,p=y.cy,x=p.elements(),C=0;C<this.length;C++)this[C]=void 0;return this.length=0,y.contextStyles={},y.propDiffs={},this.cleanElements(x,!0),x.forEach(function(L){var O=L[0]._private;O.styleDirty=!0,O.appliedInitStyle=!1}),this},X1.resetToDefault=function(){return this.clear(),this.addDefaultStylesheet(),this},X1.core=function(y){return this._private.coreStyle[y]||this.getDefaultProperty(y)},X1.selector=function(y){var p=y==="core"?null:new ly(y),x=this.length++;return this[x]={selector:p,properties:[],mappedProperties:[],index:x},this},X1.css=function(){var y=this,p=arguments;if(p.length===1)for(var x=p[0],C=0;C<y.properties.length;C++){var L=y.properties[C],O=x[L.name];O===void 0&&(O=x[Ae(L.name)]),O!==void 0&&this.cssRule(L.name,O)}else p.length===2&&this.cssRule(p[0],p[1]);return this},X1.style=X1.css,X1.cssRule=function(y,p){var x=this.parse(y,p);if(x){var C=this.length-1;this[C].properties.push(x),this[C].properties[x.name]=x,x.name.match(/pie-(\d+)-background-size/)&&x.value&&(this._private.hasPie=!0),x.mapped&&this[C].mappedProperties.push(x);var L=!this[C].selector;L&&(this._private.coreStyle[x.name]=x)}return this},X1.append=function(y){return jt(y)?y.appendToStyle(this):rt(y)?this.appendFromJson(y):mt(y)&&this.appendFromString(y),this},Y1.fromJson=function(y,p){var x=new Y1(y);return x.fromJson(p),x},Y1.fromString=function(y,p){return new Y1(y).fromString(p)},[W1,J8,dM,R2,TC,gM,m1,CC].forEach(function(y){we(X1,y)}),Y1.types=X1.types,Y1.properties=X1.properties,Y1.propertyGroups=X1.propertyGroups,Y1.propertyGroupNames=X1.propertyGroupNames,Y1.propertyGroupKeys=X1.propertyGroupKeys;var bet={style:function(p){if(p){var x=this.setStyle(p);x.update()}return this._private.style},setStyle:function(p){var x=this._private;return jt(p)?x.style=p.generateStyle(this):rt(p)?x.style=Y1.fromJson(this,p):mt(p)?x.style=Y1.fromString(this,p):x.style=Y1(this),x.style},updateStyle:function(){this.mutableElements().updateStyle()}},wet="single",T4={autolock:function(p){if(p!==void 0)this._private.autolock=!!p;else return this._private.autolock;return this},autoungrabify:function(p){if(p!==void 0)this._private.autoungrabify=!!p;else return this._private.autoungrabify;return this},autounselectify:function(p){if(p!==void 0)this._private.autounselectify=!!p;else return this._private.autounselectify;return this},selectionType:function(p){var x=this._private;if(x.selectionType==null&&(x.selectionType=wet),p!==void 0)(p==="additive"||p==="single")&&(x.selectionType=p);else return x.selectionType;return this},panningEnabled:function(p){if(p!==void 0)this._private.panningEnabled=!!p;else return this._private.panningEnabled;return this},userPanningEnabled:function(p){if(p!==void 0)this._private.userPanningEnabled=!!p;else return this._private.userPanningEnabled;return this},zoomingEnabled:function(p){if(p!==void 0)this._private.zoomingEnabled=!!p;else return this._private.zoomingEnabled;return this},userZoomingEnabled:function(p){if(p!==void 0)this._private.userZoomingEnabled=!!p;else return this._private.userZoomingEnabled;return this},boxSelectionEnabled:function(p){if(p!==void 0)this._private.boxSelectionEnabled=!!p;else return this._private.boxSelectionEnabled;return this},pan:function(){var p=arguments,x=this._private.pan,C,L,O,N,j;switch(p.length){case 0:return x;case 1:if(mt(p[0]))return C=p[0],x[C];if(it(p[0])){if(!this._private.panningEnabled)return this;O=p[0],N=O.x,j=O.y,Q(N)&&(x.x=N),Q(j)&&(x.y=j),this.emit("pan viewport")}break;case 2:if(!this._private.panningEnabled)return this;C=p[0],L=p[1],(C==="x"||C==="y")&&Q(L)&&(x[C]=L),this.emit("pan viewport");break}return this.notify("viewport"),this},panBy:function(p,x){var C=arguments,L=this._private.pan,O,N,j,H,q;if(!this._private.panningEnabled)return this;switch(C.length){case 1:it(p)&&(j=C[0],H=j.x,q=j.y,Q(H)&&(L.x+=H),Q(q)&&(L.y+=q),this.emit("pan viewport"));break;case 2:O=p,N=x,(O==="x"||O==="y")&&Q(N)&&(L[O]+=N),this.emit("pan viewport");break}return this.notify("viewport"),this},fit:function(p,x){var C=this.getFitViewport(p,x);if(C){var L=this._private;L.zoom=C.zoom,L.pan=C.pan,this.emit("pan zoom viewport"),this.notify("viewport")}return this},getFitViewport:function(p,x){if(Q(p)&&x===void 0&&(x=p,p=void 0),!(!this._private.panningEnabled||!this._private.zoomingEnabled)){var C;if(mt(p)){var L=p;p=this.$(L)}else if(kt(p)){var O=p;C={x1:O.x1,y1:O.y1,x2:O.x2,y2:O.y2},C.w=C.x2-C.x1,C.h=C.y2-C.y1}else yt(p)||(p=this.mutableElements());if(!(yt(p)&&p.empty())){C=C||p.boundingBox();var N=this.width(),j=this.height(),H;if(x=Q(x)?x:0,!isNaN(N)&&!isNaN(j)&&N>0&&j>0&&!isNaN(C.w)&&!isNaN(C.h)&&C.w>0&&C.h>0){H=Math.min((N-2*x)/C.w,(j-2*x)/C.h),H=H>this._private.maxZoom?this._private.maxZoom:H,H=H<this._private.minZoom?this._private.minZoom:H;var q={x:(N-H*(C.x1+C.x2))/2,y:(j-H*(C.y1+C.y2))/2};return{zoom:H,pan:q}}}}},zoomRange:function(p,x){var C=this._private;if(x==null){var L=p;p=L.min,x=L.max}return Q(p)&&Q(x)&&p<=x?(C.minZoom=p,C.maxZoom=x):Q(p)&&x===void 0&&p<=C.maxZoom?C.minZoom=p:Q(x)&&p===void 0&&x>=C.minZoom&&(C.maxZoom=x),this},minZoom:function(p){return p===void 0?this._private.minZoom:this.zoomRange({min:p})},maxZoom:function(p){return p===void 0?this._private.maxZoom:this.zoomRange({max:p})},getZoomedViewport:function(p){var x=this._private,C=x.pan,L=x.zoom,O,N,j=!1;if(x.zoomingEnabled||(j=!0),Q(p)?N=p:it(p)&&(N=p.level,p.position!=null?O=W9(p.position,L,C):p.renderedPosition!=null&&(O=p.renderedPosition),O!=null&&!x.panningEnabled&&(j=!0)),N=N>x.maxZoom?x.maxZoom:N,N=N<x.minZoom?x.minZoom:N,j||!Q(N)||N===L||O!=null&&(!Q(O.x)||!Q(O.y)))return null;if(O!=null){var H=C,q=L,W=N,Z={x:-W/q*(O.x-H.x)+O.x,y:-W/q*(O.y-H.y)+O.y};return{zoomed:!0,panned:!0,zoom:W,pan:Z}}else return{zoomed:!0,panned:!1,zoom:N,pan:C}},zoom:function(p){if(p===void 0)return this._private.zoom;var x=this.getZoomedViewport(p),C=this._private;return x==null||!x.zoomed?this:(C.zoom=x.zoom,x.panned&&(C.pan.x=x.pan.x,C.pan.y=x.pan.y),this.emit("zoom"+(x.panned?" pan":"")+" viewport"),this.notify("viewport"),this)},viewport:function(p){var x=this._private,C=!0,L=!0,O=[],N=!1,j=!1;if(!p)return this;if(Q(p.zoom)||(C=!1),it(p.pan)||(L=!1),!C&&!L)return this;if(C){var H=p.zoom;H<x.minZoom||H>x.maxZoom||!x.zoomingEnabled?N=!0:(x.zoom=H,O.push("zoom"))}if(L&&(!N||!p.cancelOnFailedZoom)&&x.panningEnabled){var q=p.pan;Q(q.x)&&(x.pan.x=q.x,j=!1),Q(q.y)&&(x.pan.y=q.y,j=!1),j||O.push("pan")}return O.length>0&&(O.push("viewport"),this.emit(O.join(" ")),this.notify("viewport")),this},center:function(p){var x=this.getCenterPan(p);return x&&(this._private.pan=x,this.emit("pan viewport"),this.notify("viewport")),this},getCenterPan:function(p,x){if(this._private.panningEnabled){if(mt(p)){var C=p;p=this.mutableElements().filter(C)}else yt(p)||(p=this.mutableElements());if(p.length!==0){var L=p.boundingBox(),O=this.width(),N=this.height();x=x===void 0?this._private.zoom:x;var j={x:(O-x*(L.x1+L.x2))/2,y:(N-x*(L.y1+L.y2))/2};return j}}},reset:function(){return!this._private.panningEnabled||!this._private.zoomingEnabled?this:(this.viewport({pan:{x:0,y:0},zoom:1}),this)},invalidateSize:function(){this._private.sizeCache=null},size:function(){var p=this._private,x=p.container,C=this;return p.sizeCache=p.sizeCache||(x?function(){var L=C.window().getComputedStyle(x),O=function(j){return parseFloat(L.getPropertyValue(j))};return{width:x.clientWidth-O("padding-left")-O("padding-right"),height:x.clientHeight-O("padding-top")-O("padding-bottom")}}():{width:1,height:1})},width:function(){return this.size().width},height:function(){return this.size().height},extent:function(){var p=this._private.pan,x=this._private.zoom,C=this.renderedExtent(),L={x1:(C.x1-p.x)/x,x2:(C.x2-p.x)/x,y1:(C.y1-p.y)/x,y2:(C.y2-p.y)/x};return L.w=L.x2-L.x1,L.h=L.y2-L.y1,L},renderedExtent:function(){var p=this.width(),x=this.height();return{x1:0,y1:0,x2:p,y2:x,w:p,h:x}},multiClickDebounceTime:function(p){if(p)this._private.multiClickDebounceTime=p;else return this._private.multiClickDebounceTime;return this}};T4.centre=T4.center,T4.autolockNodes=T4.autolock,T4.autoungrabifyNodes=T4.autoungrabify;var Z8={data:Kc.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:Kc.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:Kc.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:Kc.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};Z8.attr=Z8.data,Z8.removeAttr=Z8.removeData;var tE=function(p){var x=this;p=we({},p);var C=p.container;C&&!K(C)&&K(C[0])&&(C=C[0]);var L=C?C._cyreg:null;L=L||{},L&&L.cy&&(L.cy.destroy(),L={});var O=L.readies=L.readies||[];C&&(C._cyreg=L),L.cy=x;var N=B!==void 0&&C!==void 0&&!p.headless,j=p;j.layout=we({name:N?"grid":"null"},j.layout),j.renderer=we({name:N?"canvas":"null"},j.renderer);var H=function(pt,_t,St){return _t!==void 0?_t:St!==void 0?St:pt},q=this._private={container:C,ready:!1,options:j,elements:new w1(this),listeners:[],aniEles:new w1(this),data:j.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:1e-50,maxZoom:1e50,zoomingEnabled:H(!0,j.zoomingEnabled),userZoomingEnabled:H(!0,j.userZoomingEnabled),panningEnabled:H(!0,j.panningEnabled),userPanningEnabled:H(!0,j.userPanningEnabled),boxSelectionEnabled:H(!0,j.boxSelectionEnabled),autolock:H(!1,j.autolock,j.autolockNodes),autoungrabify:H(!1,j.autoungrabify,j.autoungrabifyNodes),autounselectify:H(!1,j.autounselectify),styleEnabled:j.styleEnabled===void 0?N:j.styleEnabled,zoom:Q(j.zoom)?j.zoom:1,pan:{x:it(j.pan)&&Q(j.pan.x)?j.pan.x:0,y:it(j.pan)&&Q(j.pan.y)?j.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1,multiClickDebounceTime:H(250,j.multiClickDebounceTime)};this.createEmitter(),this.selectionType(j.selectionType),this.zoomRange({min:j.minZoom,max:j.maxZoom});var W=function(pt,_t){var St=pt.some(Gt);if(St)return e6.all(pt).then(_t);_t(pt)};q.styleEnabled&&x.setStyle([]);var Z=we({},j,j.renderer);x.initRenderer(Z);var st=function(pt,_t,St){x.notifications(!1);var Et=x.mutableElements();Et.length>0&&Et.remove(),pt!=null&&(it(pt)||rt(pt))&&x.add(pt),x.one("layoutready",function(Pt){x.notifications(!0),x.emit(Pt),x.one("load",_t),x.emitAndNotify("load")}).one("layoutstop",function(){x.one("done",St),x.emit("done")});var Nt=we({},x._private.options.layout);Nt.eles=x.elements(),x.layout(Nt).run()};W([j.style,j.elements],function(bt){var pt=bt[0],_t=bt[1];q.styleEnabled&&x.style().append(pt),st(_t,function(){x.startAnimationLoop(),q.ready=!0,ct(j.ready)&&x.on("ready",j.ready);for(var St=0;St<O.length;St++){var Et=O[St];x.on("ready",Et)}L&&(L.readies=[]),x.emit("ready")},j.done)})},SC=tE.prototype;we(SC,{instanceString:function(){return"core"},isReady:function(){return this._private.ready},destroyed:function(){return this._private.destroyed},ready:function(p){return this.isReady()?this.emitter().emit("ready",[],p):this.on("ready",p),this},destroy:function(){var p=this;if(!p.destroyed())return p.stopAnimationLoop(),p.destroyRenderer(),this.emit("destroy"),p._private.destroyed=!0,p},hasElementWithId:function(p){return this._private.elements.hasElementWithId(p)},getElementById:function(p){return this._private.elements.getElementById(p)},hasCompoundNodes:function(){return this._private.hasCompoundNodes},headless:function(){return this._private.renderer.isHeadless()},styleEnabled:function(){return this._private.styleEnabled},addToPool:function(p){return this._private.elements.merge(p),this},removeFromPool:function(p){return this._private.elements.unmerge(p),this},container:function(){return this._private.container||null},window:function(){var p=this._private.container;if(p==null)return B;var x=this._private.container.ownerDocument;return x===void 0||x==null?B:x.defaultView||B},mount:function(p){if(p!=null){var x=this,C=x._private,L=C.options;return!K(p)&&K(p[0])&&(p=p[0]),x.stopAnimationLoop(),x.destroyRenderer(),C.container=p,C.styleEnabled=!0,x.invalidateSize(),x.initRenderer(we({},L,L.renderer,{name:L.renderer.name==="null"?"canvas":L.renderer.name})),x.startAnimationLoop(),x.style(L.style),x.emit("mount"),x}},unmount:function(){var p=this;return p.stopAnimationLoop(),p.destroyRenderer(),p.initRenderer({name:"null"}),p.emit("unmount"),p},options:function(){return P2(this._private.options)},json:function(p){var x=this,C=x._private,L=x.mutableElements(),O=function(qt){return x.getElementById(qt.id())};if(it(p)){if(x.startBatch(),p.elements){var N={},j=function(qt,re){for(var ee=[],Ut=[],de=0;de<qt.length;de++){var Yt=qt[de];if(!Yt.data.id){Gc("cy.json() cannot handle elements without an ID attribute");continue}var Ee=""+Yt.data.id,Te=x.getElementById(Ee);N[Ee]=!0,Te.length!==0?Ut.push({ele:Te,json:Yt}):(re&&(Yt.group=re),ee.push(Yt))}x.add(ee);for(var ie=0;ie<Ut.length;ie++){var ze=Ut[ie],me=ze.ele,yn=ze.json;me.json(yn)}};if(rt(p.elements))j(p.elements);else for(var H=["nodes","edges"],q=0;q<H.length;q++){var W=H[q],Z=p.elements[W];rt(Z)&&j(Z,W)}var st=x.collection();L.filter(function(Pt){return!N[Pt.id()]}).forEach(function(Pt){Pt.isParent()?st.merge(Pt):Pt.remove()}),st.forEach(function(Pt){return Pt.children().move({parent:null})}),st.forEach(function(Pt){return O(Pt).remove()})}p.style&&x.style(p.style),p.zoom!=null&&p.zoom!==C.zoom&&x.zoom(p.zoom),p.pan&&(p.pan.x!==C.pan.x||p.pan.y!==C.pan.y)&&x.pan(p.pan),p.data&&x.data(p.data);for(var bt=["minZoom","maxZoom","zoomingEnabled","userZoomingEnabled","panningEnabled","userPanningEnabled","boxSelectionEnabled","autolock","autoungrabify","autounselectify","multiClickDebounceTime"],pt=0;pt<bt.length;pt++){var _t=bt[pt];p[_t]!=null&&x[_t](p[_t])}return x.endBatch(),this}else{var St=!!p,Et={};St?Et.elements=this.elements().map(function(Pt){return Pt.json()}):(Et.elements={},L.forEach(function(Pt){var qt=Pt.group();Et.elements[qt]||(Et.elements[qt]=[]),Et.elements[qt].push(Pt.json())})),this._private.styleEnabled&&(Et.style=x.style().json()),Et.data=P2(x.data());var Nt=C.options;return Et.zoomingEnabled=C.zoomingEnabled,Et.userZoomingEnabled=C.userZoomingEnabled,Et.zoom=C.zoom,Et.minZoom=C.minZoom,Et.maxZoom=C.maxZoom,Et.panningEnabled=C.panningEnabled,Et.userPanningEnabled=C.userPanningEnabled,Et.pan=P2(C.pan),Et.boxSelectionEnabled=C.boxSelectionEnabled,Et.renderer=P2(Nt.renderer),Et.hideEdgesOnViewport=Nt.hideEdgesOnViewport,Et.textureOnViewport=Nt.textureOnViewport,Et.wheelSensitivity=Nt.wheelSensitivity,Et.motionBlur=Nt.motionBlur,Et.multiClickDebounceTime=Nt.multiClickDebounceTime,Et}}}),SC.$id=SC.getElementById,[set,het,oj,hM,kC,det,fM,EC,bet,T4,Z8].forEach(function(y){we(SC,y)});var met={fit:!0,directed:!1,padding:30,circle:!1,grid:!1,spacingFactor:1.75,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,roots:void 0,depthSort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(p,x){return!0},ready:void 0,stop:void 0,transform:function(p,x){return x}},vet={maximal:!1,acyclic:!1},f6=function(p){return p.scratch("breadthfirst")},cj=function(p,x){return p.scratch("breadthfirst",x)};function uj(y){this.options=we({},met,vet,y)}uj.prototype.run=function(){var y=this.options,p=y,x=y.cy,C=p.eles,L=C.nodes().filter(function(vi){return!vi.isParent()}),O=C,N=p.directed,j=p.acyclic||p.maximal||p.maximalAdjustments>0,H=v0(p.boundingBox?p.boundingBox:{x1:0,y1:0,w:x.width(),h:x.height()}),q;if(yt(p.roots))q=p.roots;else if(rt(p.roots)){for(var W=[],Z=0;Z<p.roots.length;Z++){var st=p.roots[Z],bt=x.getElementById(st);W.push(bt)}q=x.collection(W)}else if(mt(p.roots))q=x.$(p.roots);else if(N)q=L.roots();else{var pt=C.components();q=x.collection();for(var _t=function(si){var Qi=pt[si],ks=Qi.maxDegree(!1),as=Qi.filter(function(Es){return Es.degree(!1)===ks});q=q.add(as)},St=0;St<pt.length;St++)_t(St)}var Et=[],Nt={},Pt=function(si,Qi){Et[Qi]==null&&(Et[Qi]=[]);var ks=Et[Qi].length;Et[Qi].push(si),cj(si,{index:ks,depth:Qi})},qt=function(si,Qi){var ks=f6(si),as=ks.depth,Es=ks.index;Et[as][Es]=null,Pt(si,Qi)};O.bfs({roots:q,directed:p.directed,visit:function(si,Qi,ks,as,Es){var eo=si[0],Ta=eo.id();Pt(eo,Es),Nt[Ta]=!0}});for(var re=[],ee=0;ee<L.length;ee++){var Ut=L[ee];Nt[Ut.id()]||re.push(Ut)}var de=function(si){for(var Qi=Et[si],ks=0;ks<Qi.length;ks++){var as=Qi[ks];if(as==null){Qi.splice(ks,1),ks--;continue}cj(as,{depth:si,index:ks})}},Yt=function(){for(var si=0;si<Et.length;si++)de(si)},Ee=function(si,Qi){for(var ks=f6(si),as=si.incomers().filter(function(G){return G.isNode()&&C.has(G)}),Es=-1,eo=si.id(),Ta=0;Ta<as.length;Ta++){var pa=as[Ta],mo=f6(pa);Es=Math.max(Es,mo.depth)}if(ks.depth<=Es){if(!p.acyclic&&Qi[eo])return null;var Kn=Es+1;return qt(si,Kn),Qi[eo]=Kn,!0}return!1};if(N&&j){var Te=[],ie={},ze=function(si){return Te.push(si)},me=function(){return Te.shift()};for(L.forEach(function(vi){return Te.push(vi)});Te.length>0;){var yn=me(),nn=Ee(yn,ie);if(nn)yn.outgoers().filter(function(vi){return vi.isNode()&&C.has(vi)}).forEach(ze);else if(nn===null){Gc("Detected double maximal shift for node `"+yn.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}Yt();var qe=0;if(p.avoidOverlap)for(var Tn=0;Tn<L.length;Tn++){var Xn=L[Tn],lr=Xn.layoutDimensions(p),Sn=lr.w,or=lr.h;qe=Math.max(qe,Sn,or)}var pr={},kr=function(si){if(pr[si.id()])return pr[si.id()];for(var Qi=f6(si).depth,ks=si.neighborhood(),as=0,Es=0,eo=0;eo<ks.length;eo++){var Ta=ks[eo];if(!(Ta.isEdge()||Ta.isParent()||!L.has(Ta))){var pa=f6(Ta);if(pa!=null){var mo=pa.index,Kn=pa.depth;if(!(mo==null||Kn==null)){var G=Et[Kn].length;Kn<Qi&&(as+=mo/G,Es++)}}}}return Es=Math.max(1,Es),as=as/Es,Es===0&&(as=0),pr[si.id()]=as,as},wr=function(si,Qi){var ks=kr(si),as=kr(Qi),Es=ks-as;return Es===0?ce(si.id(),Qi.id()):Es};p.depthSort!==void 0&&(wr=p.depthSort);for(var Cr=0;Cr<Et.length;Cr++)Et[Cr].sort(wr),de(Cr);for(var $n=[],cr=0;cr<re.length;cr++)$n.push(re[cr]);Et.unshift($n),Yt();for(var mr=0,Sr=0;Sr<Et.length;Sr++)mr=Math.max(Et[Sr].length,mr);var gi={x:H.x1+H.w/2,y:H.x1+H.h/2},ss=Et.reduce(function(vi,si){return Math.max(vi,si.length)},0),na=function(si){var Qi=f6(si),ks=Qi.depth,as=Qi.index,Es=Et[ks].length,eo=Math.max(H.w/((p.grid?ss:Es)+1),qe),Ta=Math.max(H.h/(Et.length+1),qe),pa=Math.min(H.w/2/Et.length,H.h/2/Et.length);if(pa=Math.max(pa,qe),p.circle){var Kn=pa*ks+pa-(Et.length>0&&Et[0].length<=3?pa/2:0),G=2*Math.PI/Et[ks].length*as;return ks===0&&Et[0].length===1&&(Kn=1),{x:gi.x+Kn*Math.cos(G),y:gi.y+Kn*Math.sin(G)}}else{var mo={x:gi.x+(as+1-(Es+1)/2)*eo,y:(ks+1)*Ta};return mo}};return C.nodes().layoutPositions(this,p,na),this};var yet={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,radius:void 0,startAngle:3/2*Math.PI,sweep:void 0,clockwise:!0,sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(p,x){return!0},ready:void 0,stop:void 0,transform:function(p,x){return x}};function lj(y){this.options=we({},yet,y)}lj.prototype.run=function(){var y=this.options,p=y,x=y.cy,C=p.eles,L=p.counterclockwise!==void 0?!p.counterclockwise:p.clockwise,O=C.nodes().not(":parent");p.sort&&(O=O.sort(p.sort));for(var N=v0(p.boundingBox?p.boundingBox:{x1:0,y1:0,w:x.width(),h:x.height()}),j={x:N.x1+N.w/2,y:N.y1+N.h/2},H=p.sweep===void 0?2*Math.PI-2*Math.PI/O.length:p.sweep,q=H/Math.max(1,O.length-1),W,Z=0,st=0;st<O.length;st++){var bt=O[st],pt=bt.layoutDimensions(p),_t=pt.w,St=pt.h;Z=Math.max(Z,_t,St)}if(Q(p.radius)?W=p.radius:O.length<=1?W=0:W=Math.min(N.h,N.w)/2-Z,O.length>1&&p.avoidOverlap){Z*=1.75;var Et=Math.cos(q)-Math.cos(0),Nt=Math.sin(q)-Math.sin(0),Pt=Math.sqrt(Z*Z/(Et*Et+Nt*Nt));W=Math.max(Pt,W)}var qt=function(ee,Ut){var de=p.startAngle+Ut*q*(L?1:-1),Yt=W*Math.cos(de),Ee=W*Math.sin(de),Te={x:j.x+Yt,y:j.y+Ee};return Te};return C.nodes().layoutPositions(this,p,qt),this};var xet={fit:!0,padding:30,startAngle:3/2*Math.PI,sweep:void 0,clockwise:!0,equidistant:!1,minNodeSpacing:10,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,height:void 0,width:void 0,spacingFactor:void 0,concentric:function(p){return p.degree()},levelWidth:function(p){return p.maxDegree()/4},animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(p,x){return!0},ready:void 0,stop:void 0,transform:function(p,x){return x}};function hj(y){this.options=we({},xet,y)}hj.prototype.run=function(){for(var y=this.options,p=y,x=p.counterclockwise!==void 0?!p.counterclockwise:p.clockwise,C=y.cy,L=p.eles,O=L.nodes().not(":parent"),N=v0(p.boundingBox?p.boundingBox:{x1:0,y1:0,w:C.width(),h:C.height()}),j={x:N.x1+N.w/2,y:N.y1+N.h/2},H=[],q=0,W=0;W<O.length;W++){var Z=O[W],st=void 0;st=p.concentric(Z),H.push({value:st,node:Z}),Z._private.scratch.concentric=st}O.updateStyle();for(var bt=0;bt<O.length;bt++){var pt=O[bt],_t=pt.layoutDimensions(p);q=Math.max(q,_t.w,_t.h)}H.sort(function(vi,si){return si.value-vi.value});for(var St=p.levelWidth(O),Et=[[]],Nt=Et[0],Pt=0;Pt<H.length;Pt++){var qt=H[Pt];if(Nt.length>0){var re=Math.abs(Nt[0].value-qt.value);re>=St&&(Nt=[],Et.push(Nt))}Nt.push(qt)}var ee=q+p.minNodeSpacing;if(!p.avoidOverlap){var Ut=Et.length>0&&Et[0].length>1,de=Math.min(N.w,N.h)/2-ee,Yt=de/(Et.length+Ut?1:0);ee=Math.min(ee,Yt)}for(var Ee=0,Te=0;Te<Et.length;Te++){var ie=Et[Te],ze=p.sweep===void 0?2*Math.PI-2*Math.PI/ie.length:p.sweep,me=ie.dTheta=ze/Math.max(1,ie.length-1);if(ie.length>1&&p.avoidOverlap){var yn=Math.cos(me)-Math.cos(0),nn=Math.sin(me)-Math.sin(0),qe=Math.sqrt(ee*ee/(yn*yn+nn*nn));Ee=Math.max(qe,Ee)}ie.r=Ee,Ee+=ee}if(p.equidistant){for(var Tn=0,Xn=0,lr=0;lr<Et.length;lr++){var Sn=Et[lr],or=Sn.r-Xn;Tn=Math.max(Tn,or)}Xn=0;for(var pr=0;pr<Et.length;pr++){var kr=Et[pr];pr===0&&(Xn=kr.r),kr.r=Xn,Xn+=Tn}}for(var wr={},Cr=0;Cr<Et.length;Cr++)for(var $n=Et[Cr],cr=$n.dTheta,mr=$n.r,Sr=0;Sr<$n.length;Sr++){var gi=$n[Sr],ss=p.startAngle+(x?1:-1)*cr*Sr,na={x:j.x+mr*Math.cos(ss),y:j.y+mr*Math.sin(ss)};wr[gi.node.id()]=na}return L.nodes().layoutPositions(this,p,function(vi){var si=vi.id();return wr[si]}),this};var pM,ket={ready:function(){},stop:function(){},animate:!0,animationEasing:void 0,animationDuration:void 0,animateFilter:function(p,x){return!0},animationThreshold:250,refresh:20,fit:!0,padding:30,boundingBox:void 0,nodeDimensionsIncludeLabels:!1,randomize:!1,componentSpacing:40,nodeRepulsion:function(p){return 2048},nodeOverlap:4,idealEdgeLength:function(p){return 32},edgeElasticity:function(p){return 32},nestingFactor:1.2,gravity:1,numIter:1e3,initialTemp:1e3,coolingFactor:.99,minTemp:1};function _C(y){this.options=we({},ket,y),this.options.layout=this;var p=this.options.eles.nodes(),x=this.options.eles.edges(),C=x.filter(function(L){var O=L.source().data("id"),N=L.target().data("id"),j=p.some(function(q){return q.data("id")===O}),H=p.some(function(q){return q.data("id")===N});return!j||!H});this.options.eles=this.options.eles.not(C)}_C.prototype.run=function(){var y=this.options,p=y.cy,x=this;x.stopped=!1,(y.animate===!0||y.animate===!1)&&x.emit({type:"layoutstart",layout:x}),y.debug===!0?pM=!0:pM=!1;var C=Eet(p,x,y);pM&&_et(C),y.randomize&&Aet(C);var L=ip(),O=function(){Let(C,p,y),y.fit===!0&&p.fit(y.padding)},N=function(st){return!(x.stopped||st>=y.numIter||(Det(C,y),C.temperature=C.temperature*y.coolingFactor,C.temperature<y.minTemp))},j=function(){if(y.animate===!0||y.animate===!1)O(),x.one("layoutstop",y.stop),x.emit({type:"layoutstop",layout:x});else{var st=y.eles.nodes(),bt=fj(C,y,st);st.layoutPositions(x,y,bt)}},H=0,q=!0;if(y.animate===!0){var W=function Z(){for(var st=0;q&&st<y.refresh;)q=N(H),H++,st++;if(!q)gj(C,y),j();else{var bt=ip();bt-L>=y.animationThreshold&&O(),g1(Z)}};W()}else{for(;q;)q=N(H),H++;gj(C,y),j()}return this},_C.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this},_C.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};var Eet=function(p,x,C){for(var L=C.eles.edges(),O=C.eles.nodes(),N=v0(C.boundingBox?C.boundingBox:{x1:0,y1:0,w:p.width(),h:p.height()}),j={isCompound:p.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:O.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:L.size(),temperature:C.initialTemp,clientWidth:N.w,clientHeight:N.h,boundingBox:N},H=C.eles.components(),q={},W=0;W<H.length;W++)for(var Z=H[W],st=0;st<Z.length;st++){var bt=Z[st];q[bt.id()]=W}for(var W=0;W<j.nodeSize;W++){var pt=O[W],_t=pt.layoutDimensions(C),St={};St.isLocked=pt.locked(),St.id=pt.data("id"),St.parentId=pt.data("parent"),St.cmptId=q[pt.id()],St.children=[],St.positionX=pt.position("x"),St.positionY=pt.position("y"),St.offsetX=0,St.offsetY=0,St.height=_t.w,St.width=_t.h,St.maxX=St.positionX+St.width/2,St.minX=St.positionX-St.width/2,St.maxY=St.positionY+St.height/2,St.minY=St.positionY-St.height/2,St.padLeft=parseFloat(pt.style("padding")),St.padRight=parseFloat(pt.style("padding")),St.padTop=parseFloat(pt.style("padding")),St.padBottom=parseFloat(pt.style("padding")),St.nodeRepulsion=ct(C.nodeRepulsion)?C.nodeRepulsion(pt):C.nodeRepulsion,j.layoutNodes.push(St),j.idToIndex[St.id]=W}for(var Et=[],Nt=0,Pt=-1,qt=[],W=0;W<j.nodeSize;W++){var pt=j.layoutNodes[W],re=pt.parentId;re!=null?j.layoutNodes[j.idToIndex[re]].children.push(pt.id):(Et[++Pt]=pt.id,qt.push(pt.id))}for(j.graphSet.push(qt);Nt<=Pt;){var ee=Et[Nt++],Ut=j.idToIndex[ee],bt=j.layoutNodes[Ut],de=bt.children;if(de.length>0){j.graphSet.push(de);for(var W=0;W<de.length;W++)Et[++Pt]=de[W]}}for(var W=0;W<j.graphSet.length;W++)for(var Yt=j.graphSet[W],st=0;st<Yt.length;st++){var Ee=j.idToIndex[Yt[st]];j.indexToGraph[Ee]=W}for(var W=0;W<j.edgeSize;W++){var Te=L[W],ie={};ie.id=Te.data("id"),ie.sourceId=Te.data("source"),ie.targetId=Te.data("target");var ze=ct(C.idealEdgeLength)?C.idealEdgeLength(Te):C.idealEdgeLength,me=ct(C.edgeElasticity)?C.edgeElasticity(Te):C.edgeElasticity,yn=j.idToIndex[ie.sourceId],nn=j.idToIndex[ie.targetId],qe=j.indexToGraph[yn],Tn=j.indexToGraph[nn];if(qe!=Tn){for(var Xn=Tet(ie.sourceId,ie.targetId,j),lr=j.graphSet[Xn],Sn=0,St=j.layoutNodes[yn];lr.indexOf(St.id)===-1;)St=j.layoutNodes[j.idToIndex[St.parentId]],Sn++;for(St=j.layoutNodes[nn];lr.indexOf(St.id)===-1;)St=j.layoutNodes[j.idToIndex[St.parentId]],Sn++;ze*=Sn*C.nestingFactor}ie.idealLength=ze,ie.elasticity=me,j.layoutEdges.push(ie)}return j},Tet=function(p,x,C){var L=Cet(p,x,0,C);return 2>L.count?0:L.graph},Cet=function y(p,x,C,L){var O=L.graphSet[C];if(-1<O.indexOf(p)&&-1<O.indexOf(x))return{count:2,graph:C};for(var N=0,j=0;j<O.length;j++){var H=O[j],q=L.idToIndex[H],W=L.layoutNodes[q].children;if(W.length!==0){var Z=L.indexToGraph[L.idToIndex[W[0]]],st=y(p,x,Z,L);if(st.count!==0)if(st.count===1){if(N++,N===2)break}else return st}}return{count:N,graph:C}},_et,Aet=function(p,x){for(var C=p.clientWidth,L=p.clientHeight,O=0;O<p.nodeSize;O++){var N=p.layoutNodes[O];N.children.length===0&&!N.isLocked&&(N.positionX=Math.random()*C,N.positionY=Math.random()*L)}},fj=function(p,x,C){var L=p.boundingBox,O={x1:1/0,x2:-1/0,y1:1/0,y2:-1/0};return x.boundingBox&&(C.forEach(function(N){var j=p.layoutNodes[p.idToIndex[N.data("id")]];O.x1=Math.min(O.x1,j.positionX),O.x2=Math.max(O.x2,j.positionX),O.y1=Math.min(O.y1,j.positionY),O.y2=Math.max(O.y2,j.positionY)}),O.w=O.x2-O.x1,O.h=O.y2-O.y1),function(N,j){var H=p.layoutNodes[p.idToIndex[N.data("id")]];if(x.boundingBox){var q=(H.positionX-O.x1)/O.w,W=(H.positionY-O.y1)/O.h;return{x:L.x1+q*L.w,y:L.y1+W*L.h}}else return{x:H.positionX,y:H.positionY}}},Let=function(p,x,C){var L=C.layout,O=C.eles.nodes(),N=fj(p,C,O);O.positions(N),p.ready!==!0&&(p.ready=!0,L.one("layoutready",C.ready),L.emit({type:"layoutready",layout:this}))},Det=function(p,x,C){Met(p,x),Net(p),Pet(p,x),Fet(p),Bet(p)},Met=function(p,x){for(var C=0;C<p.graphSet.length;C++)for(var L=p.graphSet[C],O=L.length,N=0;N<O;N++)for(var j=p.layoutNodes[p.idToIndex[L[N]]],H=N+1;H<O;H++){var q=p.layoutNodes[p.idToIndex[L[H]]];Iet(j,q,p,x)}},dj=function(p){return-p+2*p*Math.random()},Iet=function(p,x,C,L){var O=p.cmptId,N=x.cmptId;if(!(O!==N&&!C.isCompound)){var j=x.positionX-p.positionX,H=x.positionY-p.positionY,q=1;j===0&&H===0&&(j=dj(q),H=dj(q));var W=Oet(p,x,j,H);if(W>0)var Z=L.nodeOverlap*W,st=Math.sqrt(j*j+H*H),bt=Z*j/st,pt=Z*H/st;else var _t=AC(p,j,H),St=AC(x,-1*j,-1*H),Et=St.x-_t.x,Nt=St.y-_t.y,Pt=Et*Et+Nt*Nt,st=Math.sqrt(Pt),Z=(p.nodeRepulsion+x.nodeRepulsion)/Pt,bt=Z*Et/st,pt=Z*Nt/st;p.isLocked||(p.offsetX-=bt,p.offsetY-=pt),x.isLocked||(x.offsetX+=bt,x.offsetY+=pt)}},Oet=function(p,x,C,L){if(C>0)var O=p.maxX-x.minX;else var O=x.maxX-p.minX;if(L>0)var N=p.maxY-x.minY;else var N=x.maxY-p.minY;return O>=0&&N>=0?Math.sqrt(O*O+N*N):0},AC=function(p,x,C){var L=p.positionX,O=p.positionY,N=p.height||1,j=p.width||1,H=C/x,q=N/j,W={};return x===0&&0<C||x===0&&0>C?(W.x=L,W.y=O+N/2,W):0<x&&-1*q<=H&&H<=q?(W.x=L+j/2,W.y=O+j*C/2/x,W):0>x&&-1*q<=H&&H<=q?(W.x=L-j/2,W.y=O-j*C/2/x,W):0<C&&(H<=-1*q||H>=q)?(W.x=L+N*x/2/C,W.y=O+N/2,W):(0>C&&(H<=-1*q||H>=q)&&(W.x=L-N*x/2/C,W.y=O-N/2),W)},Net=function(p,x){for(var C=0;C<p.edgeSize;C++){var L=p.layoutEdges[C],O=p.idToIndex[L.sourceId],N=p.layoutNodes[O],j=p.idToIndex[L.targetId],H=p.layoutNodes[j],q=H.positionX-N.positionX,W=H.positionY-N.positionY;if(!(q===0&&W===0)){var Z=AC(N,q,W),st=AC(H,-1*q,-1*W),bt=st.x-Z.x,pt=st.y-Z.y,_t=Math.sqrt(bt*bt+pt*pt),St=Math.pow(L.idealLength-_t,2)/L.elasticity;if(_t!==0)var Et=St*bt/_t,Nt=St*pt/_t;else var Et=0,Nt=0;N.isLocked||(N.offsetX+=Et,N.offsetY+=Nt),H.isLocked||(H.offsetX-=Et,H.offsetY-=Nt)}}},Pet=function(p,x){if(x.gravity!==0)for(var C=1,L=0;L<p.graphSet.length;L++){var O=p.graphSet[L],N=O.length;if(L===0)var j=p.clientHeight/2,H=p.clientWidth/2;else var q=p.layoutNodes[p.idToIndex[O[0]]],W=p.layoutNodes[p.idToIndex[q.parentId]],j=W.positionX,H=W.positionY;for(var Z=0;Z<N;Z++){var st=p.layoutNodes[p.idToIndex[O[Z]]];if(!st.isLocked){var bt=j-st.positionX,pt=H-st.positionY,_t=Math.sqrt(bt*bt+pt*pt);if(_t>C){var St=x.gravity*bt/_t,Et=x.gravity*pt/_t;st.offsetX+=St,st.offsetY+=Et}}}}},Fet=function(p,x){var C=[],L=0,O=-1;for(C.push.apply(C,p.graphSet[0]),O+=p.graphSet[0].length;L<=O;){var N=C[L++],j=p.idToIndex[N],H=p.layoutNodes[j],q=H.children;if(0<q.length&&!H.isLocked){for(var W=H.offsetX,Z=H.offsetY,st=0;st<q.length;st++){var bt=p.layoutNodes[p.idToIndex[q[st]]];bt.offsetX+=W,bt.offsetY+=Z,C[++O]=q[st]}H.offsetX=0,H.offsetY=0}}},Bet=function(p,x){for(var C=0;C<p.nodeSize;C++){var L=p.layoutNodes[C];0<L.children.length&&(L.maxX=void 0,L.minX=void 0,L.maxY=void 0,L.minY=void 0)}for(var C=0;C<p.nodeSize;C++){var L=p.layoutNodes[C];if(!(0<L.children.length||L.isLocked)){var O=Ret(L.offsetX,L.offsetY,p.temperature);L.positionX+=O.x,L.positionY+=O.y,L.offsetX=0,L.offsetY=0,L.minX=L.positionX-L.width,L.maxX=L.positionX+L.width,L.minY=L.positionY-L.height,L.maxY=L.positionY+L.height,jet(L,p)}}for(var C=0;C<p.nodeSize;C++){var L=p.layoutNodes[C];0<L.children.length&&!L.isLocked&&(L.positionX=(L.maxX+L.minX)/2,L.positionY=(L.maxY+L.minY)/2,L.width=L.maxX-L.minX,L.height=L.maxY-L.minY)}},Ret=function(p,x,C){var L=Math.sqrt(p*p+x*x);if(L>C)var O={x:C*p/L,y:C*x/L};else var O={x:p,y:x};return O},jet=function y(p,x){var C=p.parentId;if(C!=null){var L=x.layoutNodes[x.idToIndex[C]],O=!1;if((L.maxX==null||p.maxX+L.padRight>L.maxX)&&(L.maxX=p.maxX+L.padRight,O=!0),(L.minX==null||p.minX-L.padLeft<L.minX)&&(L.minX=p.minX-L.padLeft,O=!0),(L.maxY==null||p.maxY+L.padBottom>L.maxY)&&(L.maxY=p.maxY+L.padBottom,O=!0),(L.minY==null||p.minY-L.padTop<L.minY)&&(L.minY=p.minY-L.padTop,O=!0),O)return y(L,x)}},gj=function(p,x){for(var C=p.layoutNodes,L=[],O=0;O<C.length;O++){var N=C[O],j=N.cmptId,H=L[j]=L[j]||[];H.push(N)}for(var q=0,O=0;O<L.length;O++){var W=L[O];if(W){W.x1=1/0,W.x2=-1/0,W.y1=1/0,W.y2=-1/0;for(var Z=0;Z<W.length;Z++){var st=W[Z];W.x1=Math.min(W.x1,st.positionX-st.width/2),W.x2=Math.max(W.x2,st.positionX+st.width/2),W.y1=Math.min(W.y1,st.positionY-st.height/2),W.y2=Math.max(W.y2,st.positionY+st.height/2)}W.w=W.x2-W.x1,W.h=W.y2-W.y1,q+=W.w*W.h}}L.sort(function(Nt,Pt){return Pt.w*Pt.h-Nt.w*Nt.h});for(var bt=0,pt=0,_t=0,St=0,Et=Math.sqrt(q)*p.clientWidth/p.clientHeight,O=0;O<L.length;O++){var W=L[O];if(W){for(var Z=0;Z<W.length;Z++){var st=W[Z];st.isLocked||(st.positionX+=bt-W.x1,st.positionY+=pt-W.y1)}bt+=W.w+x.componentSpacing,_t+=W.w+x.componentSpacing,St=Math.max(St,W.h),_t>Et&&(pt+=St+x.componentSpacing,bt=0,_t=0,St=0)}}},$et={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,avoidOverlapPadding:10,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,condense:!1,rows:void 0,cols:void 0,position:function(p){},sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(p,x){return!0},ready:void 0,stop:void 0,transform:function(p,x){return x}};function pj(y){this.options=we({},$et,y)}pj.prototype.run=function(){var y=this.options,p=y,x=y.cy,C=p.eles,L=C.nodes().not(":parent");p.sort&&(L=L.sort(p.sort));var O=v0(p.boundingBox?p.boundingBox:{x1:0,y1:0,w:x.width(),h:x.height()});if(O.h===0||O.w===0)C.nodes().layoutPositions(this,p,function(pr){return{x:O.x1,y:O.y1}});else{var N=L.size(),j=Math.sqrt(N*O.h/O.w),H=Math.round(j),q=Math.round(O.w/O.h*j),W=function(kr){if(kr==null)return Math.min(H,q);var wr=Math.min(H,q);wr==H?H=kr:q=kr},Z=function(kr){if(kr==null)return Math.max(H,q);var wr=Math.max(H,q);wr==H?H=kr:q=kr},st=p.rows,bt=p.cols!=null?p.cols:p.columns;if(st!=null&&bt!=null)H=st,q=bt;else if(st!=null&&bt==null)H=st,q=Math.ceil(N/H);else if(st==null&&bt!=null)q=bt,H=Math.ceil(N/q);else if(q*H>N){var pt=W(),_t=Z();(pt-1)*_t>=N?W(pt-1):(_t-1)*pt>=N&&Z(_t-1)}else for(;q*H<N;){var St=W(),Et=Z();(Et+1)*St>=N?Z(Et+1):W(St+1)}var Nt=O.w/q,Pt=O.h/H;if(p.condense&&(Nt=0,Pt=0),p.avoidOverlap)for(var qt=0;qt<L.length;qt++){var re=L[qt],ee=re._private.position;(ee.x==null||ee.y==null)&&(ee.x=0,ee.y=0);var Ut=re.layoutDimensions(p),de=p.avoidOverlapPadding,Yt=Ut.w+de,Ee=Ut.h+de;Nt=Math.max(Nt,Yt),Pt=Math.max(Pt,Ee)}for(var Te={},ie=function(kr,wr){return!!Te["c-"+kr+"-"+wr]},ze=function(kr,wr){Te["c-"+kr+"-"+wr]=!0},me=0,yn=0,nn=function(){yn++,yn>=q&&(yn=0,me++)},qe={},Tn=0;Tn<L.length;Tn++){var Xn=L[Tn],lr=p.position(Xn);if(lr&&(lr.row!==void 0||lr.col!==void 0)){var Sn={row:lr.row,col:lr.col};if(Sn.col===void 0)for(Sn.col=0;ie(Sn.row,Sn.col);)Sn.col++;else if(Sn.row===void 0)for(Sn.row=0;ie(Sn.row,Sn.col);)Sn.row++;qe[Xn.id()]=Sn,ze(Sn.row,Sn.col)}}var or=function(kr,wr){var Cr,$n;if(kr.locked()||kr.isParent())return!1;var cr=qe[kr.id()];if(cr)Cr=cr.col*Nt+Nt/2+O.x1,$n=cr.row*Pt+Pt/2+O.y1;else{for(;ie(me,yn);)nn();Cr=yn*Nt+Nt/2+O.x1,$n=me*Pt+Pt/2+O.y1,ze(me,yn),nn()}return{x:Cr,y:$n}};L.layoutPositions(this,p,or)}return this};var zet={ready:function(){},stop:function(){}};function bM(y){this.options=we({},zet,y)}bM.prototype.run=function(){var y=this.options,p=y.eles,x=this;return y.cy,x.emit("layoutstart"),p.nodes().positions(function(){return{x:0,y:0}}),x.one("layoutready",y.ready),x.emit("layoutready"),x.one("layoutstop",y.stop),x.emit("layoutstop"),this},bM.prototype.stop=function(){return this};var qet={positions:void 0,zoom:void 0,pan:void 0,fit:!0,padding:30,spacingFactor:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(p,x){return!0},ready:void 0,stop:void 0,transform:function(p,x){return x}};function bj(y){this.options=we({},qet,y)}bj.prototype.run=function(){var y=this.options,p=y.eles,x=p.nodes(),C=ct(y.positions);function L(O){if(y.positions==null)return sQ(O.position());if(C)return y.positions(O);var N=y.positions[O._private.data.id];return N??null}return x.layoutPositions(this,y,function(O,N){var j=L(O);return O.locked()||j==null?!1:j}),this};var Het={fit:!0,padding:30,boundingBox:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(p,x){return!0},ready:void 0,stop:void 0,transform:function(p,x){return x}};function wj(y){this.options=we({},Het,y)}wj.prototype.run=function(){var y=this.options,p=y.cy,x=y.eles,C=v0(y.boundingBox?y.boundingBox:{x1:0,y1:0,w:p.width(),h:p.height()}),L=function(N,j){return{x:C.x1+Math.round(Math.random()*C.w),y:C.y1+Math.round(Math.random()*C.h)}};return x.nodes().layoutPositions(this,y,L),this};var Vet=[{name:"breadthfirst",impl:uj},{name:"circle",impl:lj},{name:"concentric",impl:hj},{name:"cose",impl:_C},{name:"grid",impl:pj},{name:"null",impl:bM},{name:"preset",impl:bj},{name:"random",impl:wj}];function mj(y){this.options=y,this.notifications=0}var vj=function(){},yj=function(){throw new Error("A headless instance can not render images")};mj.prototype={recalculateRenderedStyle:vj,notify:function(){this.notifications++},init:vj,isHeadless:function(){return!0},png:yj,jpg:yj};var wM={};wM.arrowShapeWidth=.3,wM.registerArrowShapes=function(){var y=this.arrowShapes={},p=this,x=function(q,W,Z,st,bt,pt,_t){var St=bt.x-Z/2-_t,Et=bt.x+Z/2+_t,Nt=bt.y-Z/2-_t,Pt=bt.y+Z/2+_t,qt=St<=q&&q<=Et&&Nt<=W&&W<=Pt;return qt},C=function(q,W,Z,st,bt){var pt=q*Math.cos(st)-W*Math.sin(st),_t=q*Math.sin(st)+W*Math.cos(st),St=pt*Z,Et=_t*Z,Nt=St+bt.x,Pt=Et+bt.y;return{x:Nt,y:Pt}},L=function(q,W,Z,st){for(var bt=[],pt=0;pt<q.length;pt+=2){var _t=q[pt],St=q[pt+1];bt.push(C(_t,St,W,Z,st))}return bt},O=function(q){for(var W=[],Z=0;Z<q.length;Z++){var st=q[Z];W.push(st.x,st.y)}return W},N=function(q){return q.pstyle("width").pfValue*q.pstyle("arrow-scale").pfValue*2},j=function(q,W){mt(W)&&(W=y[W]),y[q]=we({name:q,points:[-.15,-.3,.15,-.3,.15,.3,-.15,.3],collide:function(st,bt,pt,_t,St,Et){var Nt=O(L(this.points,pt+2*Et,_t,St)),Pt=y0(st,bt,Nt);return Pt},roughCollide:x,draw:function(st,bt,pt,_t){var St=L(this.points,bt,pt,_t);p.arrowShapeImpl("polygon")(st,St)},spacing:function(st){return 0},gap:N},W)};j("none",{collide:ay,roughCollide:ay,draw:BD,spacing:sp,gap:sp}),j("triangle",{points:[-.15,-.3,0,0,.15,-.3]}),j("arrow","triangle"),j("triangle-backcurve",{points:y.triangle.points,controlPoint:[0,-.15],roughCollide:x,draw:function(q,W,Z,st,bt){var pt=L(this.points,W,Z,st),_t=this.controlPoint,St=C(_t[0],_t[1],W,Z,st);p.arrowShapeImpl(this.name)(q,pt,St)},gap:function(q){return N(q)*.8}}),j("triangle-tee",{points:[0,0,.15,-.3,-.15,-.3,0,0],pointsTee:[-.15,-.4,-.15,-.5,.15,-.5,.15,-.4],collide:function(q,W,Z,st,bt,pt,_t){var St=O(L(this.points,Z+2*_t,st,bt)),Et=O(L(this.pointsTee,Z+2*_t,st,bt)),Nt=y0(q,W,St)||y0(q,W,Et);return Nt},draw:function(q,W,Z,st,bt){var pt=L(this.points,W,Z,st),_t=L(this.pointsTee,W,Z,st);p.arrowShapeImpl(this.name)(q,pt,_t)}}),j("circle-triangle",{radius:.15,pointsTr:[0,-.15,.15,-.45,-.15,-.45,0,-.15],collide:function(q,W,Z,st,bt,pt,_t){var St=bt,Et=Math.pow(St.x-q,2)+Math.pow(St.y-W,2)<=Math.pow((Z+2*_t)*this.radius,2),Nt=O(L(this.points,Z+2*_t,st,bt));return y0(q,W,Nt)||Et},draw:function(q,W,Z,st,bt){var pt=L(this.pointsTr,W,Z,st);p.arrowShapeImpl(this.name)(q,pt,st.x,st.y,this.radius*W)},spacing:function(q){return p.getArrowWidth(q.pstyle("width").pfValue,q.pstyle("arrow-scale").value)*this.radius}}),j("triangle-cross",{points:[0,0,.15,-.3,-.15,-.3,0,0],baseCrossLinePts:[-.15,-.4,-.15,-.4,.15,-.4,.15,-.4],crossLinePts:function(q,W){var Z=this.baseCrossLinePts.slice(),st=W/q,bt=3,pt=5;return Z[bt]=Z[bt]-st,Z[pt]=Z[pt]-st,Z},collide:function(q,W,Z,st,bt,pt,_t){var St=O(L(this.points,Z+2*_t,st,bt)),Et=O(L(this.crossLinePts(Z,pt),Z+2*_t,st,bt)),Nt=y0(q,W,St)||y0(q,W,Et);return Nt},draw:function(q,W,Z,st,bt){var pt=L(this.points,W,Z,st),_t=L(this.crossLinePts(W,bt),W,Z,st);p.arrowShapeImpl(this.name)(q,pt,_t)}}),j("vee",{points:[-.15,-.3,0,0,.15,-.3,0,-.15],gap:function(q){return N(q)*.525}}),j("circle",{radius:.15,collide:function(q,W,Z,st,bt,pt,_t){var St=bt,Et=Math.pow(St.x-q,2)+Math.pow(St.y-W,2)<=Math.pow((Z+2*_t)*this.radius,2);return Et},draw:function(q,W,Z,st,bt){p.arrowShapeImpl(this.name)(q,st.x,st.y,this.radius*W)},spacing:function(q){return p.getArrowWidth(q.pstyle("width").pfValue,q.pstyle("arrow-scale").value)*this.radius}}),j("tee",{points:[-.15,0,-.15,-.1,.15,-.1,.15,0],spacing:function(q){return 1},gap:function(q){return 1}}),j("square",{points:[-.15,0,.15,0,.15,-.3,-.15,-.3]}),j("diamond",{points:[-.15,-.15,0,-.3,.15,-.15,0,0],gap:function(q){return q.pstyle("width").pfValue*q.pstyle("arrow-scale").value}}),j("chevron",{points:[0,0,-.15,-.15,-.1,-.2,0,-.1,.1,-.2,.15,-.15],gap:function(q){return .95*q.pstyle("width").pfValue*q.pstyle("arrow-scale").value}})};var C4={};C4.projectIntoViewport=function(y,p){var x=this.cy,C=this.findContainerClientCoords(),L=C[0],O=C[1],N=C[4],j=x.pan(),H=x.zoom(),q=((y-L)/N-j.x)/H,W=((p-O)/N-j.y)/H;return[q,W]},C4.findContainerClientCoords=function(){if(this.containerBB)return this.containerBB;var y=this.container,p=y.getBoundingClientRect(),x=this.cy.window().getComputedStyle(y),C=function(Et){return parseFloat(x.getPropertyValue(Et))},L={left:C("padding-left"),right:C("padding-right"),top:C("padding-top"),bottom:C("padding-bottom")},O={left:C("border-left-width"),right:C("border-right-width"),top:C("border-top-width"),bottom:C("border-bottom-width")},N=y.clientWidth,j=y.clientHeight,H=L.left+L.right,q=L.top+L.bottom,W=O.left+O.right,Z=p.width/(N+W),st=N-H,bt=j-q,pt=p.left+L.left+O.left,_t=p.top+L.top+O.top;return this.containerBB=[pt,_t,st,bt,Z]},C4.invalidateContainerClientCoordsCache=function(){this.containerBB=null},C4.findNearestElement=function(y,p,x,C){return this.findNearestElements(y,p,x,C)[0]},C4.findNearestElements=function(y,p,x,C){var L=this,O=this,N=O.getCachedZSortedEles(),j=[],H=O.cy.zoom(),q=O.cy.hasCompoundNodes(),W=(C?24:8)/H,Z=(C?8:2)/H,st=(C?8:2)/H,bt=1/0,pt,_t;x&&(N=N.interactive);function St(Ut,de){if(Ut.isNode()){if(_t)return;_t=Ut,j.push(Ut)}if(Ut.isEdge()&&(de==null||de<bt))if(pt){if(pt.pstyle("z-compound-depth").value===Ut.pstyle("z-compound-depth").value&&pt.pstyle("z-compound-depth").value===Ut.pstyle("z-compound-depth").value){for(var Yt=0;Yt<j.length;Yt++)if(j[Yt].isEdge()){j[Yt]=Ut,pt=Ut,bt=de??bt;break}}}else j.push(Ut),pt=Ut,bt=de??bt}function Et(Ut){var de=Ut.outerWidth()+2*Z,Yt=Ut.outerHeight()+2*Z,Ee=de/2,Te=Yt/2,ie=Ut.position();if(ie.x-Ee<=y&&y<=ie.x+Ee&&ie.y-Te<=p&&p<=ie.y+Te){var ze=O.nodeShapes[L.getNodeShape(Ut)];if(ze.checkPoint(y,p,0,de,Yt,ie.x,ie.y))return St(Ut,0),!0}}function Nt(Ut){var de=Ut._private,Yt=de.rscratch,Ee=Ut.pstyle("width").pfValue,Te=Ut.pstyle("arrow-scale").value,ie=Ee/2+W,ze=ie*ie,me=ie*2,Tn=de.source,Xn=de.target,yn;if(Yt.edgeType==="segments"||Yt.edgeType==="straight"||Yt.edgeType==="haystack"){for(var nn=Yt.allpts,qe=0;qe+3<nn.length;qe+=2)if(mQ(y,p,nn[qe],nn[qe+1],nn[qe+2],nn[qe+3],me)&&ze>(yn=EQ(y,p,nn[qe],nn[qe+1],nn[qe+2],nn[qe+3])))return St(Ut,yn),!0}else if(Yt.edgeType==="bezier"||Yt.edgeType==="multibezier"||Yt.edgeType==="self"||Yt.edgeType==="compound"){for(var nn=Yt.allpts,qe=0;qe+5<Yt.allpts.length;qe+=4)if(vQ(y,p,nn[qe],nn[qe+1],nn[qe+2],nn[qe+3],nn[qe+4],nn[qe+5],me)&&ze>(yn=kQ(y,p,nn[qe],nn[qe+1],nn[qe+2],nn[qe+3],nn[qe+4],nn[qe+5])))return St(Ut,yn),!0}for(var Tn=Tn||de.source,Xn=Xn||de.target,lr=L.getArrowWidth(Ee,Te),Sn=[{name:"source",x:Yt.arrowStartX,y:Yt.arrowStartY,angle:Yt.srcArrowAngle},{name:"target",x:Yt.arrowEndX,y:Yt.arrowEndY,angle:Yt.tgtArrowAngle},{name:"mid-source",x:Yt.midX,y:Yt.midY,angle:Yt.midsrcArrowAngle},{name:"mid-target",x:Yt.midX,y:Yt.midY,angle:Yt.midtgtArrowAngle}],qe=0;qe<Sn.length;qe++){var or=Sn[qe],pr=O.arrowShapes[Ut.pstyle(or.name+"-arrow-shape").value],kr=Ut.pstyle("width").pfValue;if(pr.roughCollide(y,p,lr,or.angle,{x:or.x,y:or.y},kr,W)&&pr.collide(y,p,lr,or.angle,{x:or.x,y:or.y},kr,W))return St(Ut),!0}q&&j.length>0&&(Et(Tn),Et(Xn))}function Pt(Ut,de,Yt){return fb(Ut,de,Yt)}function qt(Ut,de){var Yt=Ut._private,Ee=st,Te;de?Te=de+"-":Te="",Ut.boundingBox();var ie=Yt.labelBounds[de||"main"],ze=Ut.pstyle(Te+"label").value,me=Ut.pstyle("text-events").strValue==="yes";if(!(!me||!ze)){var yn=Pt(Yt.rscratch,"labelX",de),nn=Pt(Yt.rscratch,"labelY",de),qe=Pt(Yt.rscratch,"labelAngle",de),Tn=Ut.pstyle(Te+"text-margin-x").pfValue,Xn=Ut.pstyle(Te+"text-margin-y").pfValue,lr=ie.x1-Ee-Tn,Sn=ie.x2+Ee-Tn,or=ie.y1-Ee-Xn,pr=ie.y2+Ee-Xn;if(qe){var kr=Math.cos(qe),wr=Math.sin(qe),Cr=function(na,vi){return na=na-yn,vi=vi-nn,{x:na*kr-vi*wr+yn,y:na*wr+vi*kr+nn}},$n=Cr(lr,or),cr=Cr(lr,pr),mr=Cr(Sn,or),Sr=Cr(Sn,pr),gi=[$n.x+Tn,$n.y+Xn,mr.x+Tn,mr.y+Xn,Sr.x+Tn,Sr.y+Xn,cr.x+Tn,cr.y+Xn];if(y0(y,p,gi))return St(Ut),!0}else if(Qx(ie,y,p))return St(Ut),!0}}for(var re=N.length-1;re>=0;re--){var ee=N[re];ee.isNode()?Et(ee)||qt(ee):Nt(ee)||qt(ee)||qt(ee,"source")||qt(ee,"target")}return j},C4.getAllInBox=function(y,p,x,C){var L=this.getCachedZSortedEles().interactive,O=[],N=Math.min(y,x),j=Math.max(y,x),H=Math.min(p,C),q=Math.max(p,C);y=N,x=j,p=H,C=q;for(var W=v0({x1:y,y1:p,x2:x,y2:C}),Z=0;Z<L.length;Z++){var st=L[Z];if(st.isNode()){var bt=st,pt=bt.boundingBox({includeNodes:!0,includeEdges:!1,includeLabels:!1});$D(W,pt)&&!jB(pt,W)&&O.push(bt)}else{var _t=st,St=_t._private,Et=St.rscratch;if(Et.startX!=null&&Et.startY!=null&&!Qx(W,Et.startX,Et.startY)||Et.endX!=null&&Et.endY!=null&&!Qx(W,Et.endX,Et.endY))continue;if(Et.edgeType==="bezier"||Et.edgeType==="multibezier"||Et.edgeType==="self"||Et.edgeType==="compound"||Et.edgeType==="segments"||Et.edgeType==="haystack"){for(var Nt=St.rstyle.bezierPts||St.rstyle.linePts||St.rstyle.haystackPts,Pt=!0,qt=0;qt<Nt.length;qt++)if(!wQ(W,Nt[qt])){Pt=!1;break}Pt&&O.push(_t)}else(Et.edgeType==="haystack"||Et.edgeType==="straight")&&O.push(_t)}}return O};var LC={};LC.calculateArrowAngles=function(y){var p=y._private.rscratch,x=p.edgeType==="haystack",C=p.edgeType==="bezier",L=p.edgeType==="multibezier",O=p.edgeType==="segments",N=p.edgeType==="compound",j=p.edgeType==="self",H,q,W,Z,st,bt,Et,Nt;if(x?(W=p.haystackPts[0],Z=p.haystackPts[1],st=p.haystackPts[2],bt=p.haystackPts[3]):(W=p.arrowStartX,Z=p.arrowStartY,st=p.arrowEndX,bt=p.arrowEndY),Et=p.midX,Nt=p.midY,O)H=W-p.segpts[0],q=Z-p.segpts[1];else if(L||N||j||C){var pt=p.allpts,_t=Lf(pt[0],pt[2],pt[4],.1),St=Lf(pt[1],pt[3],pt[5],.1);H=W-_t,q=Z-St}else H=W-Et,q=Z-Nt;p.srcArrowAngle=Y9(H,q);var Et=p.midX,Nt=p.midY;if(x&&(Et=(W+st)/2,Nt=(Z+bt)/2),H=st-W,q=bt-Z,O){var pt=p.allpts;if(pt.length/2%2===0){var Pt=pt.length/2,qt=Pt-2;H=pt[Pt]-pt[qt],q=pt[Pt+1]-pt[qt+1]}else{var Pt=pt.length/2-1,qt=Pt-2,re=Pt+2;H=pt[Pt]-pt[qt],q=pt[Pt+1]-pt[qt+1]}}else if(L||N||j){var pt=p.allpts,ee=p.ctrlpts,Ut,de,Yt,Ee;if(ee.length/2%2===0){var Te=pt.length/2-1,ie=Te+2,ze=ie+2;Ut=Lf(pt[Te],pt[ie],pt[ze],0),de=Lf(pt[Te+1],pt[ie+1],pt[ze+1],0),Yt=Lf(pt[Te],pt[ie],pt[ze],1e-4),Ee=Lf(pt[Te+1],pt[ie+1],pt[ze+1],1e-4)}else{var ie=pt.length/2-1,Te=ie-2,ze=ie+2;Ut=Lf(pt[Te],pt[ie],pt[ze],.4999),de=Lf(pt[Te+1],pt[ie+1],pt[ze+1],.4999),Yt=Lf(pt[Te],pt[ie],pt[ze],.5),Ee=Lf(pt[Te+1],pt[ie+1],pt[ze+1],.5)}H=Yt-Ut,q=Ee-de}if(p.midtgtArrowAngle=Y9(H,q),p.midDispX=H,p.midDispY=q,H*=-1,q*=-1,O){var pt=p.allpts;if(pt.length/2%2!==0){var Pt=pt.length/2-1,re=Pt+2;H=-(pt[re]-pt[Pt]),q=-(pt[re+1]-pt[Pt+1])}}if(p.midsrcArrowAngle=Y9(H,q),O)H=st-p.segpts[p.segpts.length-2],q=bt-p.segpts[p.segpts.length-1];else if(L||N||j||C){var pt=p.allpts,me=pt.length,_t=Lf(pt[me-6],pt[me-4],pt[me-2],.9),St=Lf(pt[me-5],pt[me-3],pt[me-1],.9);H=st-_t,q=bt-St}else H=st-Et,q=bt-Nt;p.tgtArrowAngle=Y9(H,q)},LC.getArrowWidth=LC.getArrowHeight=function(y,p){var x=this.arrowWidthCache=this.arrowWidthCache||{},C=x[y+", "+p];return C||(C=Math.max(Math.pow(y*13.37,.9),29)*p,x[y+", "+p]=C,C)};var Q1={};Q1.findMidptPtsEtc=function(y,p){var x=p.posPts,C=p.intersectionPts,L=p.vectorNormInverse,O,N=y.pstyle("source-endpoint"),j=y.pstyle("target-endpoint"),H=N.units!=null&&j.units!=null,q=function(re,ee,Ut,de){var Yt=de-ee,Ee=Ut-re,Te=Math.sqrt(Ee*Ee+Yt*Yt);return{x:-Yt/Te,y:Ee/Te}},W=y.pstyle("edge-distances").value;switch(W){case"node-position":O=x;break;case"intersection":O=C;break;case"endpoints":{if(H){var Z=this.manualEndptToPx(y.source()[0],N),st=E(Z,2),bt=st[0],pt=st[1],_t=this.manualEndptToPx(y.target()[0],j),St=E(_t,2),Et=St[0],Nt=St[1],Pt={x1:bt,y1:pt,x2:Et,y2:Nt};L=q(bt,pt,Et,Nt),O=Pt}else Gc("Edge ".concat(y.id()," has edge-distances:endpoints specified without manual endpoints specified via source-endpoint and target-endpoint. Falling back on edge-distances:intersection (default).")),O=C;break}}return{midptPts:O,vectorNormInverse:L}},Q1.findHaystackPoints=function(y){for(var p=0;p<y.length;p++){var x=y[p],C=x._private,L=C.rscratch;if(!L.haystack){var O=Math.random()*2*Math.PI;L.source={x:Math.cos(O),y:Math.sin(O)},O=Math.random()*2*Math.PI,L.target={x:Math.cos(O),y:Math.sin(O)}}var N=C.source,j=C.target,H=N.position(),q=j.position(),W=N.width(),Z=j.width(),st=N.height(),bt=j.height(),pt=x.pstyle("haystack-radius").value,_t=pt/2;L.haystackPts=L.allpts=[L.source.x*W*_t+H.x,L.source.y*st*_t+H.y,L.target.x*Z*_t+q.x,L.target.y*bt*_t+q.y],L.midX=(L.allpts[0]+L.allpts[2])/2,L.midY=(L.allpts[1]+L.allpts[3])/2,L.edgeType="haystack",L.haystack=!0,this.storeEdgeProjections(x),this.calculateArrowAngles(x),this.recalculateEdgeLabelProjections(x),this.calculateLabelAngles(x)}},Q1.findSegmentsPoints=function(y,p){var x=y._private.rscratch,C=y.pstyle("segment-weights"),L=y.pstyle("segment-distances"),O=Math.min(C.pfValue.length,L.pfValue.length);x.edgeType="segments",x.segpts=[];for(var N=0;N<O;N++){var j=C.pfValue[N],H=L.pfValue[N],q=1-j,W=j,Z=this.findMidptPtsEtc(y,p),st=Z.midptPts,bt=Z.vectorNormInverse,pt={x:st.x1*q+st.x2*W,y:st.y1*q+st.y2*W};x.segpts.push(pt.x+bt.x*H,pt.y+bt.y*H)}},Q1.findLoopPoints=function(y,p,x,C){var L=y._private.rscratch,O=p.dirCounts,N=p.srcPos,j=y.pstyle("control-point-distances"),H=j?j.pfValue[0]:void 0,q=y.pstyle("loop-direction").pfValue,W=y.pstyle("loop-sweep").pfValue,Z=y.pstyle("control-point-step-size").pfValue;L.edgeType="self";var st=x,bt=Z;C&&(st=0,bt=H);var pt=q-Math.PI/2,_t=pt-W/2,St=pt+W/2,Et=q+"_"+W;st=O[Et]===void 0?O[Et]=0:++O[Et],L.ctrlpts=[N.x+Math.cos(_t)*1.4*bt*(st/3+1),N.y+Math.sin(_t)*1.4*bt*(st/3+1),N.x+Math.cos(St)*1.4*bt*(st/3+1),N.y+Math.sin(St)*1.4*bt*(st/3+1)]},Q1.findCompoundLoopPoints=function(y,p,x,C){var L=y._private.rscratch;L.edgeType="compound";var O=p.srcPos,N=p.tgtPos,j=p.srcW,H=p.srcH,q=p.tgtW,W=p.tgtH,Z=y.pstyle("control-point-step-size").pfValue,st=y.pstyle("control-point-distances"),bt=st?st.pfValue[0]:void 0,pt=x,_t=Z;C&&(pt=0,_t=bt);var St=50,Et={x:O.x-j/2,y:O.y-H/2},Nt={x:N.x-q/2,y:N.y-W/2},Pt={x:Math.min(Et.x,Nt.x),y:Math.min(Et.y,Nt.y)},qt=.5,re=Math.max(qt,Math.log(j*.01)),ee=Math.max(qt,Math.log(q*.01));L.ctrlpts=[Pt.x,Pt.y-(1+Math.pow(St,1.12)/100)*_t*(pt/3+1)*re,Pt.x-(1+Math.pow(St,1.12)/100)*_t*(pt/3+1)*ee,Pt.y]},Q1.findStraightEdgePoints=function(y){y._private.rscratch.edgeType="straight"},Q1.findBezierPoints=function(y,p,x,C,L){var O=y._private.rscratch,N=y.pstyle("control-point-step-size").pfValue,j=y.pstyle("control-point-distances"),H=y.pstyle("control-point-weights"),q=j&&H?Math.min(j.value.length,H.value.length):1,W=j?j.pfValue[0]:void 0,Z=H.value[0],st=C;O.edgeType=st?"multibezier":"bezier",O.ctrlpts=[];for(var bt=0;bt<q;bt++){var pt=(.5-p.eles.length/2+x)*N*(L?-1:1),_t=void 0,St=FB(pt);st&&(W=j?j.pfValue[bt]:N,Z=H.value[bt]),C?_t=W:_t=W!==void 0?St*W:void 0;var Et=_t!==void 0?_t:pt,Nt=1-Z,Pt=Z,qt=this.findMidptPtsEtc(y,p),re=qt.midptPts,ee=qt.vectorNormInverse,Ut={x:re.x1*Nt+re.x2*Pt,y:re.y1*Nt+re.y2*Pt};O.ctrlpts.push(Ut.x+ee.x*Et,Ut.y+ee.y*Et)}},Q1.findTaxiPoints=function(y,p){var x=y._private.rscratch;x.edgeType="segments";var C="vertical",L="horizontal",O="leftward",N="rightward",j="downward",H="upward",q="auto",W=p.posPts,Z=p.srcW,st=p.srcH,bt=p.tgtW,pt=p.tgtH,_t=y.pstyle("edge-distances").value,St=_t!=="node-position",Et=y.pstyle("taxi-direction").value,Nt=Et,Pt=y.pstyle("taxi-turn"),qt=Pt.units==="%",re=Pt.pfValue,ee=re<0,Ut=y.pstyle("taxi-turn-min-distance").pfValue,de=St?(Z+bt)/2:0,Yt=St?(st+pt)/2:0,Ee=W.x2-W.x1,Te=W.y2-W.y1,ie=function(hr,us){return hr>0?Math.max(hr-us,0):Math.min(hr+us,0)},ze=ie(Ee,de),me=ie(Te,Yt),yn=!1;Nt===q?Et=Math.abs(ze)>Math.abs(me)?L:C:Nt===H||Nt===j?(Et=C,yn=!0):(Nt===O||Nt===N)&&(Et=L,yn=!0);var nn=Et===C,qe=nn?me:ze,Tn=nn?Te:Ee,Xn=FB(Tn),lr=!1;!(yn&&(qt||ee))&&(Nt===j&&Tn<0||Nt===H&&Tn>0||Nt===O&&Tn>0||Nt===N&&Tn<0)&&(Xn*=-1,qe=Xn*Math.abs(qe),lr=!0);var Sn;if(qt){var or=re<0?1+re:re;Sn=or*qe}else{var pr=re<0?qe:0;Sn=pr+re*Xn}var kr=function(hr){return Math.abs(hr)<Ut||Math.abs(hr)>=Math.abs(qe)},wr=kr(Sn),Cr=kr(Math.abs(qe)-Math.abs(Sn)),$n=wr||Cr;if($n&&!lr)if(nn){var cr=Math.abs(Tn)<=st/2,mr=Math.abs(Ee)<=bt/2;if(cr){var Sr=(W.x1+W.x2)/2,gi=W.y1,ss=W.y2;x.segpts=[Sr,gi,Sr,ss]}else if(mr){var na=(W.y1+W.y2)/2,vi=W.x1,si=W.x2;x.segpts=[vi,na,si,na]}else x.segpts=[W.x1,W.y2]}else{var Qi=Math.abs(Tn)<=Z/2,ks=Math.abs(Te)<=pt/2;if(Qi){var as=(W.y1+W.y2)/2,Es=W.x1,eo=W.x2;x.segpts=[Es,as,eo,as]}else if(ks){var Ta=(W.x1+W.x2)/2,pa=W.y1,mo=W.y2;x.segpts=[Ta,pa,Ta,mo]}else x.segpts=[W.x2,W.y1]}else if(nn){var Kn=W.y1+Sn+(St?st/2*Xn:0),G=W.x1,Vn=W.x2;x.segpts=[G,Kn,Vn,Kn]}else{var gr=W.x1+Sn+(St?Z/2*Xn:0),nr=W.y1,Be=W.y2;x.segpts=[gr,nr,gr,Be]}},Q1.tryToCorrectInvalidPoints=function(y,p){var x=y._private.rscratch;if(x.edgeType==="bezier"){var C=p.srcPos,L=p.tgtPos,O=p.srcW,N=p.srcH,j=p.tgtW,H=p.tgtH,q=p.srcShape,W=p.tgtShape,Z=!Q(x.startX)||!Q(x.startY),st=!Q(x.arrowStartX)||!Q(x.arrowStartY),bt=!Q(x.endX)||!Q(x.endY),pt=!Q(x.arrowEndX)||!Q(x.arrowEndY),_t=3,St=this.getArrowWidth(y.pstyle("width").pfValue,y.pstyle("arrow-scale").value)*this.arrowShapeWidth,Et=_t*St,Nt=w4({x:x.ctrlpts[0],y:x.ctrlpts[1]},{x:x.startX,y:x.startY}),Pt=Nt<Et,qt=w4({x:x.ctrlpts[0],y:x.ctrlpts[1]},{x:x.endX,y:x.endY}),re=qt<Et,ee=!1;if(Z||st||Pt){ee=!0;var Ut={x:x.ctrlpts[0]-C.x,y:x.ctrlpts[1]-C.y},de=Math.sqrt(Ut.x*Ut.x+Ut.y*Ut.y),Yt={x:Ut.x/de,y:Ut.y/de},Ee=Math.max(O,N),Te={x:x.ctrlpts[0]+Yt.x*2*Ee,y:x.ctrlpts[1]+Yt.y*2*Ee},ie=q.intersectLine(C.x,C.y,O,N,Te.x,Te.y,0);Pt?(x.ctrlpts[0]=x.ctrlpts[0]+Yt.x*(Et-Nt),x.ctrlpts[1]=x.ctrlpts[1]+Yt.y*(Et-Nt)):(x.ctrlpts[0]=ie[0]+Yt.x*Et,x.ctrlpts[1]=ie[1]+Yt.y*Et)}if(bt||pt||re){ee=!0;var ze={x:x.ctrlpts[0]-L.x,y:x.ctrlpts[1]-L.y},me=Math.sqrt(ze.x*ze.x+ze.y*ze.y),yn={x:ze.x/me,y:ze.y/me},nn=Math.max(O,N),qe={x:x.ctrlpts[0]+yn.x*2*nn,y:x.ctrlpts[1]+yn.y*2*nn},Tn=W.intersectLine(L.x,L.y,j,H,qe.x,qe.y,0);re?(x.ctrlpts[0]=x.ctrlpts[0]+yn.x*(Et-qt),x.ctrlpts[1]=x.ctrlpts[1]+yn.y*(Et-qt)):(x.ctrlpts[0]=Tn[0]+yn.x*Et,x.ctrlpts[1]=Tn[1]+yn.y*Et)}ee&&this.findEndpoints(y)}},Q1.storeAllpts=function(y){var p=y._private.rscratch;if(p.edgeType==="multibezier"||p.edgeType==="bezier"||p.edgeType==="self"||p.edgeType==="compound"){p.allpts=[],p.allpts.push(p.startX,p.startY);for(var x=0;x+1<p.ctrlpts.length;x+=2)p.allpts.push(p.ctrlpts[x],p.ctrlpts[x+1]),x+3<p.ctrlpts.length&&p.allpts.push((p.ctrlpts[x]+p.ctrlpts[x+2])/2,(p.ctrlpts[x+1]+p.ctrlpts[x+3])/2);p.allpts.push(p.endX,p.endY);var C,L;p.ctrlpts.length/2%2===0?(C=p.allpts.length/2-1,p.midX=p.allpts[C],p.midY=p.allpts[C+1]):(C=p.allpts.length/2-3,L=.5,p.midX=Lf(p.allpts[C],p.allpts[C+2],p.allpts[C+4],L),p.midY=Lf(p.allpts[C+1],p.allpts[C+3],p.allpts[C+5],L))}else if(p.edgeType==="straight")p.allpts=[p.startX,p.startY,p.endX,p.endY],p.midX=(p.startX+p.endX+p.arrowStartX+p.arrowEndX)/4,p.midY=(p.startY+p.endY+p.arrowStartY+p.arrowEndY)/4;else if(p.edgeType==="segments")if(p.allpts=[],p.allpts.push(p.startX,p.startY),p.allpts.push.apply(p.allpts,p.segpts),p.allpts.push(p.endX,p.endY),p.segpts.length%4===0){var O=p.segpts.length/2,N=O-2;p.midX=(p.segpts[N]+p.segpts[O])/2,p.midY=(p.segpts[N+1]+p.segpts[O+1])/2}else{var j=p.segpts.length/2-1;p.midX=p.segpts[j],p.midY=p.segpts[j+1]}},Q1.checkForInvalidEdgeWarning=function(y){var p=y[0]._private.rscratch;p.nodesOverlap||Q(p.startX)&&Q(p.startY)&&Q(p.endX)&&Q(p.endY)?p.loggedErr=!1:p.loggedErr||(p.loggedErr=!0,Gc("Edge `"+y.id()+"` has invalid endpoints and so it is impossible to draw. Adjust your edge style (e.g. control points) accordingly or use an alternative edge type. This is expected behaviour when the source node and the target node overlap."))},Q1.findEdgeControlPoints=function(y){var p=this;if(!(!y||y.length===0)){for(var x=this,C=x.cy,L=C.hasCompoundNodes(),O={map:new F2,get:function(Ut){var de=this.map.get(Ut[0]);return de!=null?de.get(Ut[1]):null},set:function(Ut,de){var Yt=this.map.get(Ut[0]);Yt==null&&(Yt=new F2,this.map.set(Ut[0],Yt)),Yt.set(Ut[1],de)}},N=[],j=[],H=0;H<y.length;H++){var q=y[H],W=q._private,Z=q.pstyle("curve-style").value;if(!(q.removed()||!q.takesUpSpace())){if(Z==="haystack"){j.push(q);continue}var st=Z==="unbundled-bezier"||Z==="segments"||Z==="straight"||Z==="straight-triangle"||Z==="taxi",bt=Z==="unbundled-bezier"||Z==="bezier",pt=W.source,_t=W.target,St=pt.poolIndex(),Et=_t.poolIndex(),Nt=[St,Et].sort(),Pt=O.get(Nt);Pt==null&&(Pt={eles:[]},O.set(Nt,Pt),N.push(Nt)),Pt.eles.push(q),st&&(Pt.hasUnbundled=!0),bt&&(Pt.hasBezier=!0)}}for(var qt=function(Ut){var de=N[Ut],Yt=O.get(de),Ee=void 0;if(!Yt.hasUnbundled){var Te=Yt.eles[0].parallelEdges().filter(function(mo){return mo.isBundledBezier()});G9(Yt.eles),Te.forEach(function(mo){return Yt.eles.push(mo)}),Yt.eles.sort(function(mo,Kn){return mo.poolIndex()-Kn.poolIndex()})}var ie=Yt.eles[0],ze=ie.source(),me=ie.target();if(ze.poolIndex()>me.poolIndex()){var yn=ze;ze=me,me=yn}var nn=Yt.srcPos=ze.position(),qe=Yt.tgtPos=me.position(),Tn=Yt.srcW=ze.outerWidth(),Xn=Yt.srcH=ze.outerHeight(),lr=Yt.tgtW=me.outerWidth(),Sn=Yt.tgtH=me.outerHeight(),or=Yt.srcShape=x.nodeShapes[p.getNodeShape(ze)],pr=Yt.tgtShape=x.nodeShapes[p.getNodeShape(me)];Yt.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var kr=0;kr<Yt.eles.length;kr++){var wr=Yt.eles[kr],Cr=wr[0]._private.rscratch,$n=wr.pstyle("curve-style").value,cr=$n==="unbundled-bezier"||$n==="segments"||$n==="taxi",mr=!ze.same(wr.source());if(!Yt.calculatedIntersection&&ze!==me&&(Yt.hasBezier||Yt.hasUnbundled)){Yt.calculatedIntersection=!0;var Sr=or.intersectLine(nn.x,nn.y,Tn,Xn,qe.x,qe.y,0),gi=Yt.srcIntn=Sr,ss=pr.intersectLine(qe.x,qe.y,lr,Sn,nn.x,nn.y,0),na=Yt.tgtIntn=ss,vi=Yt.intersectionPts={x1:Sr[0],x2:ss[0],y1:Sr[1],y2:ss[1]},si=Yt.posPts={x1:nn.x,x2:qe.x,y1:nn.y,y2:qe.y},Qi=ss[1]-Sr[1],ks=ss[0]-Sr[0],as=Math.sqrt(ks*ks+Qi*Qi),Es=Yt.vector={x:ks,y:Qi},eo=Yt.vectorNorm={x:Es.x/as,y:Es.y/as},Ta={x:-eo.y,y:eo.x};Yt.nodesOverlap=!Q(as)||pr.checkPoint(Sr[0],Sr[1],0,lr,Sn,qe.x,qe.y)||or.checkPoint(ss[0],ss[1],0,Tn,Xn,nn.x,nn.y),Yt.vectorNormInverse=Ta,Ee={nodesOverlap:Yt.nodesOverlap,dirCounts:Yt.dirCounts,calculatedIntersection:!0,hasBezier:Yt.hasBezier,hasUnbundled:Yt.hasUnbundled,eles:Yt.eles,srcPos:qe,tgtPos:nn,srcW:lr,srcH:Sn,tgtW:Tn,tgtH:Xn,srcIntn:na,tgtIntn:gi,srcShape:pr,tgtShape:or,posPts:{x1:si.x2,y1:si.y2,x2:si.x1,y2:si.y1},intersectionPts:{x1:vi.x2,y1:vi.y2,x2:vi.x1,y2:vi.y1},vector:{x:-Es.x,y:-Es.y},vectorNorm:{x:-eo.x,y:-eo.y},vectorNormInverse:{x:-Ta.x,y:-Ta.y}}}var pa=mr?Ee:Yt;Cr.nodesOverlap=pa.nodesOverlap,Cr.srcIntn=pa.srcIntn,Cr.tgtIntn=pa.tgtIntn,L&&(ze.isParent()||ze.isChild()||me.isParent()||me.isChild())&&(ze.parents().anySame(me)||me.parents().anySame(ze)||ze.same(me)&&ze.isParent())?p.findCompoundLoopPoints(wr,pa,kr,cr):ze===me?p.findLoopPoints(wr,pa,kr,cr):$n==="segments"?p.findSegmentsPoints(wr,pa):$n==="taxi"?p.findTaxiPoints(wr,pa):$n==="straight"||!cr&&Yt.eles.length%2===1&&kr===Math.floor(Yt.eles.length/2)?p.findStraightEdgePoints(wr):p.findBezierPoints(wr,pa,kr,cr,mr),p.findEndpoints(wr),p.tryToCorrectInvalidPoints(wr,pa),p.checkForInvalidEdgeWarning(wr),p.storeAllpts(wr),p.storeEdgeProjections(wr),p.calculateArrowAngles(wr),p.recalculateEdgeLabelProjections(wr),p.calculateLabelAngles(wr)}},re=0;re<N.length;re++)qt(re);this.findHaystackPoints(j)}};function xj(y){var p=[];if(y!=null){for(var x=0;x<y.length;x+=2){var C=y[x],L=y[x+1];p.push({x:C,y:L})}return p}}Q1.getSegmentPoints=function(y){var p=y[0]._private.rscratch,x=p.edgeType;if(x==="segments")return this.recalculateRenderedStyle(y),xj(p.segpts)},Q1.getControlPoints=function(y){var p=y[0]._private.rscratch,x=p.edgeType;if(x==="bezier"||x==="multibezier"||x==="self"||x==="compound")return this.recalculateRenderedStyle(y),xj(p.ctrlpts)},Q1.getEdgeMidpoint=function(y){var p=y[0]._private.rscratch;return this.recalculateRenderedStyle(y),{x:p.midX,y:p.midY}};var eE={};eE.manualEndptToPx=function(y,p){var x=this,C=y.position(),L=y.outerWidth(),O=y.outerHeight();if(p.value.length===2){var N=[p.pfValue[0],p.pfValue[1]];return p.units[0]==="%"&&(N[0]=N[0]*L),p.units[1]==="%"&&(N[1]=N[1]*O),N[0]+=C.x,N[1]+=C.y,N}else{var j=p.pfValue[0];j=-Math.PI/2+j;var H=2*Math.max(L,O),q=[C.x+Math.cos(j)*H,C.y+Math.sin(j)*H];return x.nodeShapes[this.getNodeShape(y)].intersectLine(C.x,C.y,L,O,q[0],q[1],0)}},eE.findEndpoints=function(y){var p=this,x,C=y.source()[0],L=y.target()[0],O=C.position(),N=L.position(),j=y.pstyle("target-arrow-shape").value,H=y.pstyle("source-arrow-shape").value,q=y.pstyle("target-distance-from-node").pfValue,W=y.pstyle("source-distance-from-node").pfValue,Z=y.pstyle("curve-style").value,st=y._private.rscratch,bt=st.edgeType,pt=Z==="taxi",_t=bt==="self"||bt==="compound",St=bt==="bezier"||bt==="multibezier"||_t,Et=bt!=="bezier",Nt=bt==="straight"||bt==="segments",Pt=bt==="segments",qt=St||Et||Nt,re=_t||pt,ee=y.pstyle("source-endpoint"),Ut=re?"outside-to-node":ee.value,de=y.pstyle("target-endpoint"),Yt=re?"outside-to-node":de.value;st.srcManEndpt=ee,st.tgtManEndpt=de;var Ee,Te,ie,ze;if(St){var me=[st.ctrlpts[0],st.ctrlpts[1]],yn=Et?[st.ctrlpts[st.ctrlpts.length-2],st.ctrlpts[st.ctrlpts.length-1]]:me;Ee=yn,Te=me}else if(Nt){var nn=Pt?st.segpts.slice(0,2):[N.x,N.y],qe=Pt?st.segpts.slice(st.segpts.length-2):[O.x,O.y];Ee=qe,Te=nn}if(Yt==="inside-to-node")x=[N.x,N.y];else if(de.units)x=this.manualEndptToPx(L,de);else if(Yt==="outside-to-line")x=st.tgtIntn;else if(Yt==="outside-to-node"||Yt==="outside-to-node-or-label"?ie=Ee:(Yt==="outside-to-line"||Yt==="outside-to-line-or-label")&&(ie=[O.x,O.y]),x=p.nodeShapes[this.getNodeShape(L)].intersectLine(N.x,N.y,L.outerWidth(),L.outerHeight(),ie[0],ie[1],0),Yt==="outside-to-node-or-label"||Yt==="outside-to-line-or-label"){var Tn=L._private.rscratch,Xn=Tn.labelWidth,lr=Tn.labelHeight,Sn=Tn.labelX,or=Tn.labelY,pr=Xn/2,kr=lr/2,wr=L.pstyle("text-valign").value;wr==="top"?or-=kr:wr==="bottom"&&(or+=kr);var Cr=L.pstyle("text-halign").value;Cr==="left"?Sn-=pr:Cr==="right"&&(Sn+=pr);var $n=B8(ie[0],ie[1],[Sn-pr,or-kr,Sn+pr,or-kr,Sn+pr,or+kr,Sn-pr,or+kr],N.x,N.y);if($n.length>0){var cr=O,mr=m4(cr,Yx(x)),Sr=m4(cr,Yx($n)),gi=mr;if(Sr<mr&&(x=$n,gi=Sr),$n.length>2){var ss=m4(cr,{x:$n[2],y:$n[3]});ss<gi&&(x=[$n[2],$n[3]])}}}var na=tC(x,Ee,p.arrowShapes[j].spacing(y)+q),vi=tC(x,Ee,p.arrowShapes[j].gap(y)+q);if(st.endX=vi[0],st.endY=vi[1],st.arrowEndX=na[0],st.arrowEndY=na[1],Ut==="inside-to-node")x=[O.x,O.y];else if(ee.units)x=this.manualEndptToPx(C,ee);else if(Ut==="outside-to-line")x=st.srcIntn;else if(Ut==="outside-to-node"||Ut==="outside-to-node-or-label"?ze=Te:(Ut==="outside-to-line"||Ut==="outside-to-line-or-label")&&(ze=[N.x,N.y]),x=p.nodeShapes[this.getNodeShape(C)].intersectLine(O.x,O.y,C.outerWidth(),C.outerHeight(),ze[0],ze[1],0),Ut==="outside-to-node-or-label"||Ut==="outside-to-line-or-label"){var si=C._private.rscratch,Qi=si.labelWidth,ks=si.labelHeight,as=si.labelX,Es=si.labelY,eo=Qi/2,Ta=ks/2,pa=C.pstyle("text-valign").value;pa==="top"?Es-=Ta:pa==="bottom"&&(Es+=Ta);var mo=C.pstyle("text-halign").value;mo==="left"?as-=eo:mo==="right"&&(as+=eo);var Kn=B8(ze[0],ze[1],[as-eo,Es-Ta,as+eo,Es-Ta,as+eo,Es+Ta,as-eo,Es+Ta],O.x,O.y);if(Kn.length>0){var G=N,Vn=m4(G,Yx(x)),gr=m4(G,Yx(Kn)),nr=Vn;if(gr<Vn&&(x=[Kn[0],Kn[1]],nr=gr),Kn.length>2){var Be=m4(G,{x:Kn[2],y:Kn[3]});Be<nr&&(x=[Kn[2],Kn[3]])}}}var Ls=tC(x,Te,p.arrowShapes[H].spacing(y)+W),hr=tC(x,Te,p.arrowShapes[H].gap(y)+W);st.startX=hr[0],st.startY=hr[1],st.arrowStartX=Ls[0],st.arrowStartY=Ls[1],qt&&(!Q(st.startX)||!Q(st.startY)||!Q(st.endX)||!Q(st.endY)?st.badLine=!0:st.badLine=!1)},eE.getSourceEndpoint=function(y){var p=y[0]._private.rscratch;switch(this.recalculateRenderedStyle(y),p.edgeType){case"haystack":return{x:p.haystackPts[0],y:p.haystackPts[1]};default:return{x:p.arrowStartX,y:p.arrowStartY}}},eE.getTargetEndpoint=function(y){var p=y[0]._private.rscratch;switch(this.recalculateRenderedStyle(y),p.edgeType){case"haystack":return{x:p.haystackPts[2],y:p.haystackPts[3]};default:return{x:p.arrowEndX,y:p.arrowEndY}}};var mM={};function kj(y,p,x){for(var C=function(q,W,Z,st){return Lf(q,W,Z,st)},L=p._private,O=L.rstyle.bezierPts,N=0;N<y.bezierProjPcts.length;N++){var j=y.bezierProjPcts[N];O.push({x:C(x[0],x[2],x[4],j),y:C(x[1],x[3],x[5],j)})}}mM.storeEdgeProjections=function(y){var p=y._private,x=p.rscratch,C=x.edgeType;if(p.rstyle.bezierPts=null,p.rstyle.linePts=null,p.rstyle.haystackPts=null,C==="multibezier"||C==="bezier"||C==="self"||C==="compound"){p.rstyle.bezierPts=[];for(var L=0;L+5<x.allpts.length;L+=4)kj(this,y,x.allpts.slice(L,L+6))}else if(C==="segments")for(var O=p.rstyle.linePts=[],L=0;L+1<x.allpts.length;L+=2)O.push({x:x.allpts[L],y:x.allpts[L+1]});else if(C==="haystack"){var N=x.haystackPts;p.rstyle.haystackPts=[{x:N[0],y:N[1]},{x:N[2],y:N[3]}]}p.rstyle.arrowWidth=this.getArrowWidth(y.pstyle("width").pfValue,y.pstyle("arrow-scale").value)*this.arrowShapeWidth},mM.recalculateEdgeProjections=function(y){this.findEdgeControlPoints(y)};var j2={};j2.recalculateNodeLabelProjection=function(y){var p=y.pstyle("label").strValue;if(!Ft(p)){var x,C,L=y._private,O=y.width(),N=y.height(),j=y.padding(),H=y.position(),q=y.pstyle("text-halign").strValue,W=y.pstyle("text-valign").strValue,Z=L.rscratch,st=L.rstyle;switch(q){case"left":x=H.x-O/2-j;break;case"right":x=H.x+O/2+j;break;default:x=H.x}switch(W){case"top":C=H.y-N/2-j;break;case"bottom":C=H.y+N/2+j;break;default:C=H.y}Z.labelX=x,Z.labelY=C,st.labelX=x,st.labelY=C,this.calculateLabelAngles(y),this.applyLabelDimensions(y)}};var Ej=function(p,x){var C=Math.atan(x/p);return p===0&&C<0&&(C=C*-1),C},DC=function(p,x){var C=x.x-p.x,L=x.y-p.y;return Ej(C,L)},Uet=function(p,x,C,L){var O=P8(0,L-.001,1),N=P8(0,L+.001,1),j=Xx(p,x,C,O),H=Xx(p,x,C,N);return DC(j,H)};j2.recalculateEdgeLabelProjections=function(y){var p,x=y._private,C=x.rscratch,L=this,O={mid:y.pstyle("label").strValue,source:y.pstyle("source-label").strValue,target:y.pstyle("target-label").strValue};if(O.mid||O.source||O.target){p={x:C.midX,y:C.midY};var N=function(Z,st,bt){cy(x.rscratch,Z,st,bt),cy(x.rstyle,Z,st,bt)};N("labelX",null,p.x),N("labelY",null,p.y);var j=Ej(C.midDispX,C.midDispY);N("labelAutoAngle",null,j);var H=function W(){if(W.cache)return W.cache;for(var Z=[],st=0;st+5<C.allpts.length;st+=4){var bt={x:C.allpts[st],y:C.allpts[st+1]},pt={x:C.allpts[st+2],y:C.allpts[st+3]},_t={x:C.allpts[st+4],y:C.allpts[st+5]};Z.push({p0:bt,p1:pt,p2:_t,startDist:0,length:0,segments:[]})}var St=x.rstyle.bezierPts,Et=L.bezierProjPcts.length;function Nt(Ut,de,Yt,Ee,Te){var ie=w4(de,Yt),ze=Ut.segments[Ut.segments.length-1],me={p0:de,p1:Yt,t0:Ee,t1:Te,startDist:ze?ze.startDist+ze.length:0,length:ie};Ut.segments.push(me),Ut.length+=ie}for(var Pt=0;Pt<Z.length;Pt++){var qt=Z[Pt],re=Z[Pt-1];re&&(qt.startDist=re.startDist+re.length),Nt(qt,qt.p0,St[Pt*Et],0,L.bezierProjPcts[0]);for(var ee=0;ee<Et-1;ee++)Nt(qt,St[Pt*Et+ee],St[Pt*Et+ee+1],L.bezierProjPcts[ee],L.bezierProjPcts[ee+1]);Nt(qt,St[Pt*Et+Et-1],qt.p2,L.bezierProjPcts[Et-1],1)}return W.cache=Z},q=function(Z){var st,bt=Z==="source";if(O[Z]){var pt=y.pstyle(Z+"-text-offset").pfValue;switch(C.edgeType){case"self":case"compound":case"bezier":case"multibezier":{for(var _t=H(),St,Et=0,Nt=0,Pt=0;Pt<_t.length;Pt++){for(var qt=_t[bt?Pt:_t.length-1-Pt],re=0;re<qt.segments.length;re++){var ee=qt.segments[bt?re:qt.segments.length-1-re],Ut=Pt===_t.length-1&&re===qt.segments.length-1;if(Et=Nt,Nt+=ee.length,Nt>=pt||Ut){St={cp:qt,segment:ee};break}}if(St)break}var de=St.cp,Yt=St.segment,Ee=(pt-Et)/Yt.length,Te=Yt.t1-Yt.t0,ie=bt?Yt.t0+Te*Ee:Yt.t1-Te*Ee;ie=P8(0,ie,1),p=Xx(de.p0,de.p1,de.p2,ie),st=Uet(de.p0,de.p1,de.p2,ie);break}case"straight":case"segments":case"haystack":{for(var ze=0,me,yn,nn,qe,Tn=C.allpts.length,Xn=0;Xn+3<Tn&&(bt?(nn={x:C.allpts[Xn],y:C.allpts[Xn+1]},qe={x:C.allpts[Xn+2],y:C.allpts[Xn+3]}):(nn={x:C.allpts[Tn-2-Xn],y:C.allpts[Tn-1-Xn]},qe={x:C.allpts[Tn-4-Xn],y:C.allpts[Tn-3-Xn]}),me=w4(nn,qe),yn=ze,ze+=me,!(ze>=pt));Xn+=2);var lr=pt-yn,Sn=lr/me;Sn=P8(0,Sn,1),p=fQ(nn,qe,Sn),st=DC(nn,qe);break}}N("labelX",Z,p.x),N("labelY",Z,p.y),N("labelAutoAngle",Z,st)}};q("source"),q("target"),this.applyLabelDimensions(y)}},j2.applyLabelDimensions=function(y){this.applyPrefixedLabelDimensions(y),y.isEdge()&&(this.applyPrefixedLabelDimensions(y,"source"),this.applyPrefixedLabelDimensions(y,"target"))},j2.applyPrefixedLabelDimensions=function(y,p){var x=y._private,C=this.getLabelText(y,p),L=this.calculateLabelDimensions(y,C),O=y.pstyle("line-height").pfValue,N=y.pstyle("text-wrap").strValue,j=fb(x.rscratch,"labelWrapCachedLines",p)||[],H=N!=="wrap"?1:Math.max(j.length,1),q=L.height/H,W=q*O,Z=L.width,st=L.height+(H-1)*(O-1)*q;cy(x.rstyle,"labelWidth",p,Z),cy(x.rscratch,"labelWidth",p,Z),cy(x.rstyle,"labelHeight",p,st),cy(x.rscratch,"labelHeight",p,st),cy(x.rscratch,"labelLineHeight",p,W)},j2.getLabelText=function(y,p){var x=y._private,C=p?p+"-":"",L=y.pstyle(C+"label").strValue,O=y.pstyle("text-transform").value,N=function(lr,Sn){return Sn?(cy(x.rscratch,lr,p,Sn),Sn):fb(x.rscratch,lr,p)};if(!L)return"";O=="none"||(O=="uppercase"?L=L.toUpperCase():O=="lowercase"&&(L=L.toLowerCase()));var j=y.pstyle("text-wrap").value;if(j==="wrap"){var H=N("labelKey");if(H!=null&&N("labelWrapKey")===H)return N("labelWrapCachedText");for(var q="​",W=L.split(`