// // stroke:black; // } .flowchart-label text { text-anchor: middle; } ${EGe(i)} `}},Symbol.toStringTag,{value:"Module"}));var xgt=function(){var i=function(it,et,st,pt){for(st=st||{},pt=it.length;pt--;st[it[pt]]=et);return st},a=[1,2],f=[1,5],p=[6,9,11,17,18,20,22,23,26,27,28],v=[1,15],m=[1,16],b=[1,17],E=[1,18],C=[1,19],D=[1,23],N=[1,24],B=[1,27],j=[4,6,9,11,17,18,20,22,23,26,27,28],R={trace:function(){},yy:{},symbols_:{error:2,start:3,timeline:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,title:17,acc_title:18,acc_title_value:19,acc_descr:20,acc_descr_value:21,acc_descr_multiline_value:22,section:23,period_statement:24,event_statement:25,period:26,event:27,open_directive:28,type_directive:29,arg_directive:30,close_directive:31,$accept:0,$end:1},terminals_:{2:"error",4:"timeline",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",17:"title",18:"acc_title",19:"acc_title_value",20:"acc_descr",21:"acc_descr_value",22:"acc_descr_multiline_value",23:"section",26:"period",27:"event",28:"open_directive",29:"type_directive",30:"arg_directive",31:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,2],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[24,1],[25,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(et,st,pt,Tt,kt,yt,ft){var mt=yt.length-1;switch(kt){case 1:return yt[mt-1];case 3:this.$=[];break;case 4:yt[mt-1].push(yt[mt]),this.$=yt[mt-1];break;case 5:case 6:this.$=yt[mt];break;case 7:case 8:this.$=[];break;case 11:Tt.getCommonDb().setDiagramTitle(yt[mt].substr(6)),this.$=yt[mt].substr(6);break;case 12:this.$=yt[mt].trim(),Tt.getCommonDb().setAccTitle(this.$);break;case 13:case 14:this.$=yt[mt].trim(),Tt.getCommonDb().setAccDescription(this.$);break;case 15:Tt.addSection(yt[mt].substr(8)),this.$=yt[mt].substr(8);break;case 19:Tt.addTask(yt[mt],0,""),this.$=yt[mt];break;case 20:Tt.addEvent(yt[mt].substr(2)),this.$=yt[mt];break;case 21:Tt.parseDirective("%%{","open_directive");break;case 22:Tt.parseDirective(yt[mt],"type_directive");break;case 23:yt[mt]=yt[mt].trim().replace(/'/g,'"'),Tt.parseDirective(yt[mt],"arg_directive");break;case 24:Tt.parseDirective("}%%","close_directive","timeline");break}},table:[{3:1,4:a,7:3,12:4,28:f},{1:[3]},i(p,[2,3],{5:6}),{3:7,4:a,7:3,12:4,28:f},{13:8,29:[1,9]},{29:[2,21]},{6:[1,10],7:22,8:11,9:[1,12],10:13,11:[1,14],12:4,17:v,18:m,20:b,22:E,23:C,24:20,25:21,26:D,27:N,28:f},{1:[2,2]},{14:25,15:[1,26],31:B},i([15,31],[2,22]),i(p,[2,8],{1:[2,1]}),i(p,[2,4]),{7:22,10:28,12:4,17:v,18:m,20:b,22:E,23:C,24:20,25:21,26:D,27:N,28:f},i(p,[2,6]),i(p,[2,7]),i(p,[2,11]),{19:[1,29]},{21:[1,30]},i(p,[2,14]),i(p,[2,15]),i(p,[2,16]),i(p,[2,17]),i(p,[2,18]),i(p,[2,19]),i(p,[2,20]),{11:[1,31]},{16:32,30:[1,33]},{11:[2,24]},i(p,[2,5]),i(p,[2,12]),i(p,[2,13]),i(j,[2,9]),{14:34,31:B},{31:[2,23]},{11:[1,35]},i(j,[2,10])],defaultActions:{5:[2,21],7:[2,2],27:[2,24],33:[2,23]},parseError:function(et,st){if(st.recoverable)this.trace(et);else{var pt=new Error(et);throw pt.hash=st,pt}},parse:function(et){var st=this,pt=[0],Tt=[],kt=[null],yt=[],ft=this.table,mt="",rt=0,wt=0,gt=2,ht=1,_t=yt.slice.call(arguments,1),X=Object.create(this.lexer),Rt={yy:{}};for(var lt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,lt)&&(Rt.yy[lt]=this.yy[lt]);X.setInput(et,Rt.yy),Rt.yy.lexer=X,Rt.yy.parser=this,typeof X.yylloc>"u"&&(X.yylloc={});var fe=X.yylloc;yt.push(fe);var J=X.options&&X.options.ranges;typeof Rt.yy.parseError=="function"?this.parseError=Rt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ae(){var Ee;return Ee=Tt.pop()||X.lex()||ht,typeof Ee!="number"&&(Ee instanceof Array&&(Tt=Ee,Ee=Tt.pop()),Ee=st.symbols_[Ee]||Ee),Ee}for(var Wt,It,Pt,me,Ue={},_n,_e,rr,Te;;){if(It=pt[pt.length-1],this.defaultActions[It]?Pt=this.defaultActions[It]:((Wt===null||typeof Wt>"u")&&(Wt=ae()),Pt=ft[It]&&ft[It][Wt]),typeof Pt>"u"||!Pt.length||!Pt[0]){var ne="";Te=[];for(_n in ft[It])this.terminals_[_n]&&_n>gt&&Te.push("'"+this.terminals_[_n]+"'");X.showPosition?ne="Parse error on line "+(rt+1)+`: `+X.showPosition()+` Expecting `+Te.join(", ")+", got '"+(this.terminals_[Wt]||Wt)+"'":ne="Parse error on line "+(rt+1)+": Unexpected "+(Wt==ht?"end of input":"'"+(this.terminals_[Wt]||Wt)+"'"),this.parseError(ne,{text:X.match,token:this.terminals_[Wt]||Wt,line:X.yylineno,loc:fe,expected:Te})}if(Pt[0]instanceof Array&&Pt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+It+", token: "+Wt);switch(Pt[0]){case 1:pt.push(Wt),kt.push(X.yytext),yt.push(X.yylloc),pt.push(Pt[1]),Wt=null,wt=X.yyleng,mt=X.yytext,rt=X.yylineno,fe=X.yylloc;break;case 2:if(_e=this.productions_[Pt[1]][1],Ue.$=kt[kt.length-_e],Ue._$={first_line:yt[yt.length-(_e||1)].first_line,last_line:yt[yt.length-1].last_line,first_column:yt[yt.length-(_e||1)].first_column,last_column:yt[yt.length-1].last_column},J&&(Ue._$.range=[yt[yt.length-(_e||1)].range[0],yt[yt.length-1].range[1]]),me=this.performAction.apply(Ue,[mt,wt,rt,Rt.yy,Pt[1],kt,yt].concat(_t)),typeof me<"u")return me;_e&&(pt=pt.slice(0,-1*_e*2),kt=kt.slice(0,-1*_e),yt=yt.slice(0,-1*_e)),pt.push(this.productions_[Pt[1]][0]),kt.push(Ue.$),yt.push(Ue._$),rr=ft[pt[pt.length-2]][pt[pt.length-1]],pt.push(rr);break;case 3:return!0}}return!0}},H=function(){var it={EOF:1,parseError:function(st,pt){if(this.yy.parser)this.yy.parser.parseError(st,pt);else throw new Error(st)},setInput:function(et,st){return this.yy=st||this.yy||{},this._input=et,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var et=this._input[0];this.yytext+=et,this.yyleng++,this.offset++,this.match+=et,this.matched+=et;var st=et.match(/(?:\r\n?|\n).*/g);return st?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),et},unput:function(et){var st=et.length,pt=et.split(/(?:\r\n?|\n)/g);this._input=et+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-st),this.offset-=st;var Tt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),pt.length-1&&(this.yylineno-=pt.length-1);var kt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:pt?(pt.length===Tt.length?this.yylloc.first_column:0)+Tt[Tt.length-pt.length].length-pt[0].length:this.yylloc.first_column-st},this.options.ranges&&(this.yylloc.range=[kt[0],kt[0]+this.yyleng-st]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(et){this.unput(this.match.slice(et))},pastInput:function(){var et=this.matched.substr(0,this.matched.length-this.match.length);return(et.length>20?"...":"")+et.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var et=this.match;return et.length<20&&(et+=this._input.substr(0,20-et.length)),(et.substr(0,20)+(et.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var et=this.pastInput(),st=new Array(et.length+1).join("-");return et+this.upcomingInput()+` `+st+"^"},test_match:function(et,st){var pt,Tt,kt;if(this.options.backtrack_lexer&&(kt={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(kt.yylloc.range=this.yylloc.range.slice(0))),Tt=et[0].match(/(?:\r\n?|\n).*/g),Tt&&(this.yylineno+=Tt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Tt?Tt[Tt.length-1].length-Tt[Tt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+et[0].length},this.yytext+=et[0],this.match+=et[0],this.matches=et,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(et[0].length),this.matched+=et[0],pt=this.performAction.call(this,this.yy,this,st,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),pt)return pt;if(this._backtrack){for(var yt in kt)this[yt]=kt[yt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var et,st,pt,Tt;this._more||(this.yytext="",this.match="");for(var kt=this._currentRules(),yt=0;ytst[0].length)){if(st=pt,Tt=yt,this.options.backtrack_lexer){if(et=this.test_match(pt,kt[yt]),et!==!1)return et;if(this._backtrack){st=!1;continue}else return!1}else if(!this.options.flex)break}return st?(et=this.test_match(st,kt[Tt]),et!==!1?et:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var st=this.next();return st||this.lex()},begin:function(st){this.conditionStack.push(st)},popState:function(){var st=this.conditionStack.length-1;return st>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(st){return st=this.conditionStack.length-1-Math.abs(st||0),st>=0?this.conditionStack[st]:"INITIAL"},pushState:function(st){this.begin(st)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(st,pt,Tt,kt){switch(Tt){case 0:return this.begin("open_directive"),28;case 1:return this.begin("type_directive"),29;case 2:return this.popState(),this.begin("arg_directive"),15;case 3:return this.popState(),this.popState(),31;case 4:return 30;case 5:break;case 6:break;case 7:return 11;case 8:break;case 9:break;case 10:return 4;case 11:return 17;case 12:return this.begin("acc_title"),18;case 13:return this.popState(),"acc_title_value";case 14:return this.begin("acc_descr"),20;case 15:return this.popState(),"acc_descr_value";case 16:this.begin("acc_descr_multiline");break;case 17:this.popState();break;case 18:return"acc_descr_multiline_value";case 19:return 23;case 20:return 27;case 21:return 26;case 22:return 6;case 23:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:timeline\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?::\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{open_directive:{rules:[1],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},acc_descr_multiline:{rules:[17,18],inclusive:!1},acc_descr:{rules:[15],inclusive:!1},acc_title:{rules:[13],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,10,11,12,14,16,19,20,21,22,23],inclusive:!0}}};return it}();R.lexer=H;function Y(){this.yy={}}return Y.prototype=R,R.Parser=Y,new Y}();xgt.parser=xgt;const _Ge=xgt;let bL="",GRt=0;const kgt=[],RK=[],vL=[],URt=()=>rIt,WRt=(i,a,f)=>{H1t(globalThis,i,a,f)},KRt=function(){kgt.length=0,RK.length=0,bL="",vL.length=0,cg()},YRt=function(i){bL=i,kgt.push(i)},XRt=function(){return kgt},QRt=function(){let i=ejt();const a=100;let f=0;for(;!i&&ff.id===GRt-1).events.push(i)},tjt=function(i){const a={section:bL,type:bL,description:i,task:i,classes:[]};RK.push(a)},ejt=function(){const i=function(f){return vL[f].processed};let a=!0;for(const[f,p]of vL.entries())i(f),a=a&&p.processed;return a},CGe=Object.freeze(Object.defineProperty({__proto__:null,addEvent:JRt,addSection:YRt,addTask:ZRt,addTaskOrg:tjt,clear:KRt,default:{clear:KRt,getCommonDb:URt,addSection:YRt,getSections:XRt,getTasks:QRt,addTask:ZRt,addTaskOrg:tjt,addEvent:JRt,parseDirective:WRt},getCommonDb:URt,getSections:XRt,getTasks:QRt,parseDirective:WRt},Symbol.toStringTag,{value:"Module"})),SGe=12,jK=function(i,a){const f=i.append("rect");return f.attr("x",a.x),f.attr("y",a.y),f.attr("fill",a.fill),f.attr("stroke",a.stroke),f.attr("width",a.width),f.attr("height",a.height),f.attr("rx",a.rx),f.attr("ry",a.ry),a.class!==void 0&&f.attr("class",a.class),f},AGe=function(i,a){const p=i.append("circle").attr("cx",a.cx).attr("cy",a.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),v=i.append("g");v.append("circle").attr("cx",a.cx-15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),v.append("circle").attr("cx",a.cx+15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function m(C){const D=CA().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);C.append("path").attr("class","mouth").attr("d",D).attr("transform","translate("+a.cx+","+(a.cy+2)+")")}function b(C){const D=CA().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);C.append("path").attr("class","mouth").attr("d",D).attr("transform","translate("+a.cx+","+(a.cy+7)+")")}function E(C){C.append("line").attr("class","mouth").attr("stroke",2).attr("x1",a.cx-5).attr("y1",a.cy+7).attr("x2",a.cx+5).attr("y2",a.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return a.score>3?m(v):a.score<3?b(v):E(v),p},LGe=function(i,a){const f=i.append("circle");return f.attr("cx",a.cx),f.attr("cy",a.cy),f.attr("class","actor-"+a.pos),f.attr("fill",a.fill),f.attr("stroke",a.stroke),f.attr("r",a.r),f.class!==void 0&&f.attr("class",f.class),a.title!==void 0&&f.append("title").text(a.title),f},njt=function(i,a){const f=a.text.replace(//gi," "),p=i.append("text");p.attr("x",a.x),p.attr("y",a.y),p.attr("class","legend"),p.style("text-anchor",a.anchor),a.class!==void 0&&p.attr("class",a.class);const v=p.append("tspan");return v.attr("x",a.x+a.textMargin*2),v.text(f),p},MGe=function(i,a){function f(v,m,b,E,C){return v+","+m+" "+(v+b)+","+m+" "+(v+b)+","+(m+E-C)+" "+(v+b-C*1.2)+","+(m+E)+" "+v+","+(m+E)}const p=i.append("polygon");p.attr("points",f(a.x,a.y,50,20,7)),p.attr("class","labelBox"),a.y=a.y+a.labelMargin,a.x=a.x+.5*a.labelMargin,njt(i,a)},DGe=function(i,a,f){const p=i.append("g"),v=Egt();v.x=a.x,v.y=a.y,v.fill=a.fill,v.width=f.width,v.height=f.height,v.class="journey-section section-type-"+a.num,v.rx=3,v.ry=3,jK(p,v),ijt(f)(a.text,p,v.x,v.y,v.width,v.height,{class:"journey-section section-type-"+a.num},f,a.colour)};let rjt=-1;const IGe=function(i,a,f){const p=a.x+f.width/2,v=i.append("g");rjt++;const m=300+5*30;v.append("line").attr("id","task"+rjt).attr("x1",p).attr("y1",a.y).attr("x2",p).attr("y2",m).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),AGe(v,{cx:p,cy:300+(5-a.score)*30,score:a.score});const b=Egt();b.x=a.x,b.y=a.y,b.fill=a.fill,b.width=f.width,b.height=f.height,b.class="task task-type-"+a.num,b.rx=3,b.ry=3,jK(v,b),a.x+14,ijt(f)(a.task,v,b.x,b.y,b.width,b.height,{class:"task"},f,a.colour)},OGe=function(i,a){jK(i,{x:a.startx,y:a.starty,width:a.stopx-a.startx,height:a.stopy-a.starty,fill:a.fill,class:"rect"}).lower()},PGe=function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},Egt=function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},ijt=function(){function i(v,m,b,E,C,D,N,B){const j=m.append("text").attr("x",b+C/2).attr("y",E+D/2+5).style("font-color",B).style("text-anchor","middle").text(v);p(j,N)}function a(v,m,b,E,C,D,N,B,j){const{taskFontSize:R,taskFontFamily:H}=B,Y=v.split(//gi);for(let it=0;it)/).reverse(),v,m=[],b=1.1,E=f.attr("y"),C=parseFloat(f.attr("dy")),D=f.text(null).append("tspan").attr("x",0).attr("y",E).attr("dy",C+"em");for(let N=0;Na||v==="
")&&(m.pop(),D.text(m.join(" ").trim()),v==="
"?m=[""]:m=[v],D=f.append("tspan").attr("x",0).attr("y",E).attr("dy",b+"em").text(v))})}const FGe=function(i,a,f,p){const v=f%SGe-1,m=i.append("g");a.section=v,m.attr("class",(a.class?a.class+" ":"")+"timeline-node "+("section-"+v));const b=m.append("g"),E=m.append("g"),D=E.append("text").text(a.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(sjt,a.width).node().getBBox(),N=p.fontSize&&p.fontSize.replace?p.fontSize.replace("px",""):p.fontSize;return a.height=D.height+N*1.1*.5+a.padding,a.height=Math.max(a.height,a.maxHeight),a.width=a.width+2*a.padding,E.attr("transform","translate("+a.width/2+", "+a.padding/2+")"),RGe(b,a,v),a},BGe=function(i,a,f){const p=i.append("g"),m=p.append("text").text(a.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(sjt,a.width).node().getBBox(),b=f.fontSize&&f.fontSize.replace?f.fontSize.replace("px",""):f.fontSize;return p.remove(),m.height+b*1.1*.5+a.padding},RGe=function(i,a,f){i.append("path").attr("id","node-"+a.id).attr("class","node-bkg node-"+a.type).attr("d",`M0 ${a.height-5} v${-a.height+2*5} q0,-5 5,-5 h${a.width-2*5} q5,0 5,5 v${a.height-5} H0 Z`),i.append("line").attr("class","node-line-"+f).attr("x1",0).attr("y1",a.height).attr("x2",a.width).attr("y2",a.height)},kE={drawRect:jK,drawCircle:LGe,drawSection:DGe,drawText:njt,drawLabel:MGe,drawTask:IGe,drawBackgroundRect:OGe,getTextObj:PGe,getNoteRect:Egt,initGraphics:NGe,drawNode:FGe,getVirtualNodeHeight:BGe},jGe=function(i,a,f,p){var rt,wt,gt,ht;const v=Oe(),m=v.leftMargin??50;(wt=(rt=p.db).clear)==null||wt.call(rt),p.parser.parse(i+` `),zt.debug("timeline",p.db);const b=v.securityLevel;let E;b==="sandbox"&&(E=Mr("#i"+a));const D=Mr(b==="sandbox"?E.nodes()[0].contentDocument.body:"body").select("#"+a);D.append("g");const N=p.db.getTasks(),B=p.db.getCommonDb().getDiagramTitle();zt.debug("task",N),kE.initGraphics(D);const j=p.db.getSections();zt.debug("sections",j);let R=0,H=0,Y=0,it=0,et=50+m,st=50;it=50;let pt=0,Tt=!0;j.forEach(function(_t){const X={number:pt,descr:_t,section:pt,width:150,padding:20,maxHeight:R},Rt=kE.getVirtualNodeHeight(D,X,v);zt.debug("sectionHeight before draw",Rt),R=Math.max(R,Rt+20)});let kt=0,yt=0;zt.debug("tasks.length",N.length);for(const[_t,X]of N.entries()){const Rt={number:_t,descr:X,section:X.section,width:150,padding:20,maxHeight:H},lt=kE.getVirtualNodeHeight(D,Rt,v);zt.debug("taskHeight before draw",lt),H=Math.max(H,lt+20),kt=Math.max(kt,X.events.length);let fe=0;for(let J=0;J0?j.forEach(_t=>{const X=N.filter(J=>J.section===_t),Rt={number:pt,descr:_t,section:pt,width:200*Math.max(X.length,1)-50,padding:20,maxHeight:R};zt.debug("sectionNode",Rt);const lt=D.append("g"),fe=kE.drawNode(lt,Rt,pt,v);zt.debug("sectionNode output",fe),lt.attr("transform",`translate(${et}, ${it})`),st+=R+50,X.length>0&&ajt(D,X,pt,et,st,H,v,kt,yt,R,!1),et+=200*Math.max(X.length,1),st=it,pt++}):(Tt=!1,ajt(D,N,pt,et,st,H,v,kt,yt,R,!0));const ft=D.node().getBBox();zt.debug("bounds",ft),B&&D.append("text").text(B).attr("x",ft.width/2-m).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),Y=Tt?R+H+150:H+100,D.append("g").attr("class","lineWrapper").append("line").attr("x1",m).attr("y1",Y).attr("x2",ft.width+3*m).attr("y2",Y).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),J9(void 0,D,((gt=v.timeline)==null?void 0:gt.padding)??50,((ht=v.timeline)==null?void 0:ht.useMaxWidth)??!1)},ajt=function(i,a,f,p,v,m,b,E,C,D,N){var B;for(const j of a){const R={descr:j.task,section:f,number:f,width:150,padding:20,maxHeight:m};zt.debug("taskNode",R);const H=i.append("g").attr("class","taskWrapper"),it=kE.drawNode(H,R,f,b).height;if(zt.debug("taskHeight after draw",it),H.attr("transform",`translate(${p}, ${v})`),m=Math.max(m,it),j.events){const et=i.append("g").attr("class","lineWrapper");let st=m;v+=100,st=st+$Ge(i,j.events,f,p,v,b),v-=100,et.append("line").attr("x1",p+190/2).attr("y1",v+m).attr("x2",p+190/2).attr("y2",v+m+(N?m:D)+C+120).attr("stroke-width",2).attr("stroke","black").attr("marker-end","url(#arrowhead)").attr("stroke-dasharray","5,5")}p=p+200,N&&!((B=b.timeline)!=null&&B.disableMulticolor)&&f++}v=v-10},$Ge=function(i,a,f,p,v,m){let b=0;const E=v;v=v+100;for(const C of a){const D={descr:C,section:f,number:f,width:150,padding:20,maxHeight:50};zt.debug("eventNode",D);const N=i.append("g").attr("class","eventWrapper"),j=kE.drawNode(N,D,f,m).height;b=b+j,N.attr("transform",`translate(${p}, ${v})`),v=v+10+j}return v=E,b},zGe={setConf:()=>{},draw:jGe},qGe=i=>{let a="";for(let f=0;f` .edge { stroke-width: 3; } ${qGe(i)} .section-root rect, .section-root path, .section-root circle { fill: ${i.git0}; } .section-root text { fill: ${i.gitBranchLabel0}; } .icon-container { height:100%; display: flex; justify-content: center; align-items: center; } .edge { fill: none; } .eventWrapper { filter: brightness(120%); } `}},Symbol.toStringTag,{value:"Module"}));var Tgt=function(){var i=function(Tt,kt,yt,ft){for(yt=yt||{},ft=Tt.length;ft--;yt[Tt[ft]]=kt);return yt},a=[1,4],f=[1,13],p=[1,12],v=[1,15],m=[1,16],b=[1,20],E=[1,19],C=[6,7,8],D=[1,26],N=[1,24],B=[1,25],j=[6,7,11],R=[1,6,13,15,16,19,22],H=[1,33],Y=[1,34],it=[1,6,7,11,13,15,16,19,22],et={trace:function(){},yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,MINDMAP:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,ICON:15,CLASS:16,nodeWithId:17,nodeWithoutId:18,NODE_DSTART:19,NODE_DESCR:20,NODE_DEND:21,NODE_ID:22,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"MINDMAP",11:"EOF",13:"SPACELIST",15:"ICON",16:"CLASS",19:"NODE_DSTART",20:"NODE_DESCR",21:"NODE_DEND",22:"NODE_ID"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[18,3],[17,1],[17,4]],performAction:function(kt,yt,ft,mt,rt,wt,gt){var ht=wt.length-1;switch(rt){case 6:case 7:return mt;case 8:mt.getLogger().trace("Stop NL ");break;case 9:mt.getLogger().trace("Stop EOF ");break;case 11:mt.getLogger().trace("Stop NL2 ");break;case 12:mt.getLogger().trace("Stop EOF2 ");break;case 15:mt.getLogger().info("Node: ",wt[ht].id),mt.addNode(wt[ht-1].length,wt[ht].id,wt[ht].descr,wt[ht].type);break;case 16:mt.getLogger().trace("Icon: ",wt[ht]),mt.decorateNode({icon:wt[ht]});break;case 17:case 21:mt.decorateNode({class:wt[ht]});break;case 18:mt.getLogger().trace("SPACELIST");break;case 19:mt.getLogger().trace("Node: ",wt[ht].id),mt.addNode(0,wt[ht].id,wt[ht].descr,wt[ht].type);break;case 20:mt.decorateNode({icon:wt[ht]});break;case 25:mt.getLogger().trace("node found ..",wt[ht-2]),this.$={id:wt[ht-1],descr:wt[ht-1],type:mt.getType(wt[ht-2],wt[ht])};break;case 26:this.$={id:wt[ht],descr:wt[ht],type:mt.nodeType.DEFAULT};break;case 27:mt.getLogger().trace("node found ..",wt[ht-3]),this.$={id:wt[ht-3],descr:wt[ht-1],type:mt.getType(wt[ht-2],wt[ht])};break}},table:[{3:1,4:2,5:3,6:[1,5],8:a},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:a},{6:f,7:[1,10],9:9,12:11,13:p,14:14,15:v,16:m,17:17,18:18,19:b,22:E},i(C,[2,3]),{1:[2,2]},i(C,[2,4]),i(C,[2,5]),{1:[2,6],6:f,12:21,13:p,14:14,15:v,16:m,17:17,18:18,19:b,22:E},{6:f,9:22,12:11,13:p,14:14,15:v,16:m,17:17,18:18,19:b,22:E},{6:D,7:N,10:23,11:B},i(j,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:b,22:E}),i(j,[2,18]),i(j,[2,19]),i(j,[2,20]),i(j,[2,21]),i(j,[2,23]),i(j,[2,24]),i(j,[2,26],{19:[1,30]}),{20:[1,31]},{6:D,7:N,10:32,11:B},{1:[2,7],6:f,12:21,13:p,14:14,15:v,16:m,17:17,18:18,19:b,22:E},i(R,[2,14],{7:H,11:Y}),i(it,[2,8]),i(it,[2,9]),i(it,[2,10]),i(j,[2,15]),i(j,[2,16]),i(j,[2,17]),{20:[1,35]},{21:[1,36]},i(R,[2,13],{7:H,11:Y}),i(it,[2,11]),i(it,[2,12]),{21:[1,37]},i(j,[2,25]),i(j,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:function(kt,yt){if(yt.recoverable)this.trace(kt);else{var ft=new Error(kt);throw ft.hash=yt,ft}},parse:function(kt){var yt=this,ft=[0],mt=[],rt=[null],wt=[],gt=this.table,ht="",_t=0,X=0,Rt=2,lt=1,fe=wt.slice.call(arguments,1),J=Object.create(this.lexer),ae={yy:{}};for(var Wt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Wt)&&(ae.yy[Wt]=this.yy[Wt]);J.setInput(kt,ae.yy),ae.yy.lexer=J,ae.yy.parser=this,typeof J.yylloc>"u"&&(J.yylloc={});var It=J.yylloc;wt.push(It);var Pt=J.options&&J.options.ranges;typeof ae.yy.parseError=="function"?this.parseError=ae.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function me(){var Gt;return Gt=mt.pop()||J.lex()||lt,typeof Gt!="number"&&(Gt instanceof Array&&(mt=Gt,Gt=mt.pop()),Gt=yt.symbols_[Gt]||Gt),Gt}for(var Ue,_n,_e,rr,Te={},ne,Ee,ye,Vt;;){if(_n=ft[ft.length-1],this.defaultActions[_n]?_e=this.defaultActions[_n]:((Ue===null||typeof Ue>"u")&&(Ue=me()),_e=gt[_n]&>[_n][Ue]),typeof _e>"u"||!_e.length||!_e[0]){var Ae="";Vt=[];for(ne in gt[_n])this.terminals_[ne]&&ne>Rt&&Vt.push("'"+this.terminals_[ne]+"'");J.showPosition?Ae="Parse error on line "+(_t+1)+`: `+J.showPosition()+` Expecting `+Vt.join(", ")+", got '"+(this.terminals_[Ue]||Ue)+"'":Ae="Parse error on line "+(_t+1)+": Unexpected "+(Ue==lt?"end of input":"'"+(this.terminals_[Ue]||Ue)+"'"),this.parseError(Ae,{text:J.match,token:this.terminals_[Ue]||Ue,line:J.yylineno,loc:It,expected:Vt})}if(_e[0]instanceof Array&&_e.length>1)throw new Error("Parse Error: multiple actions possible at state: "+_n+", token: "+Ue);switch(_e[0]){case 1:ft.push(Ue),rt.push(J.yytext),wt.push(J.yylloc),ft.push(_e[1]),Ue=null,X=J.yyleng,ht=J.yytext,_t=J.yylineno,It=J.yylloc;break;case 2:if(Ee=this.productions_[_e[1]][1],Te.$=rt[rt.length-Ee],Te._$={first_line:wt[wt.length-(Ee||1)].first_line,last_line:wt[wt.length-1].last_line,first_column:wt[wt.length-(Ee||1)].first_column,last_column:wt[wt.length-1].last_column},Pt&&(Te._$.range=[wt[wt.length-(Ee||1)].range[0],wt[wt.length-1].range[1]]),rr=this.performAction.apply(Te,[ht,X,_t,ae.yy,_e[1],rt,wt].concat(fe)),typeof rr<"u")return rr;Ee&&(ft=ft.slice(0,-1*Ee*2),rt=rt.slice(0,-1*Ee),wt=wt.slice(0,-1*Ee)),ft.push(this.productions_[_e[1]][0]),rt.push(Te.$),wt.push(Te._$),ye=gt[ft[ft.length-2]][ft[ft.length-1]],ft.push(ye);break;case 3:return!0}}return!0}},st=function(){var Tt={EOF:1,parseError:function(yt,ft){if(this.yy.parser)this.yy.parser.parseError(yt,ft);else throw new Error(yt)},setInput:function(kt,yt){return this.yy=yt||this.yy||{},this._input=kt,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var kt=this._input[0];this.yytext+=kt,this.yyleng++,this.offset++,this.match+=kt,this.matched+=kt;var yt=kt.match(/(?:\r\n?|\n).*/g);return yt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),kt},unput:function(kt){var yt=kt.length,ft=kt.split(/(?:\r\n?|\n)/g);this._input=kt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-yt),this.offset-=yt;var mt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ft.length-1&&(this.yylineno-=ft.length-1);var rt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ft?(ft.length===mt.length?this.yylloc.first_column:0)+mt[mt.length-ft.length].length-ft[0].length:this.yylloc.first_column-yt},this.options.ranges&&(this.yylloc.range=[rt[0],rt[0]+this.yyleng-yt]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(kt){this.unput(this.match.slice(kt))},pastInput:function(){var kt=this.matched.substr(0,this.matched.length-this.match.length);return(kt.length>20?"...":"")+kt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var kt=this.match;return kt.length<20&&(kt+=this._input.substr(0,20-kt.length)),(kt.substr(0,20)+(kt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var kt=this.pastInput(),yt=new Array(kt.length+1).join("-");return kt+this.upcomingInput()+` `+yt+"^"},test_match:function(kt,yt){var ft,mt,rt;if(this.options.backtrack_lexer&&(rt={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(rt.yylloc.range=this.yylloc.range.slice(0))),mt=kt[0].match(/(?:\r\n?|\n).*/g),mt&&(this.yylineno+=mt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:mt?mt[mt.length-1].length-mt[mt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+kt[0].length},this.yytext+=kt[0],this.match+=kt[0],this.matches=kt,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(kt[0].length),this.matched+=kt[0],ft=this.performAction.call(this,this.yy,this,yt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ft)return ft;if(this._backtrack){for(var wt in rt)this[wt]=rt[wt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var kt,yt,ft,mt;this._more||(this.yytext="",this.match="");for(var rt=this._currentRules(),wt=0;wtyt[0].length)){if(yt=ft,mt=wt,this.options.backtrack_lexer){if(kt=this.test_match(ft,rt[wt]),kt!==!1)return kt;if(this._backtrack){yt=!1;continue}else return!1}else if(!this.options.flex)break}return yt?(kt=this.test_match(yt,rt[mt]),kt!==!1?kt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var yt=this.next();return yt||this.lex()},begin:function(yt){this.conditionStack.push(yt)},popState:function(){var yt=this.conditionStack.length-1;return yt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(yt){return yt=this.conditionStack.length-1-Math.abs(yt||0),yt>=0?this.conditionStack[yt]:"INITIAL"},pushState:function(yt){this.begin(yt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(yt,ft,mt,rt){switch(mt){case 0:return yt.getLogger().trace("Found comment",ft.yytext),6;case 1:return 8;case 2:this.begin("CLASS");break;case 3:return this.popState(),16;case 4:this.popState();break;case 5:yt.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return yt.getLogger().trace("SPACELINE"),6;case 7:return 7;case 8:return 15;case 9:yt.getLogger().trace("end icon"),this.popState();break;case 10:return yt.getLogger().trace("Exploding node"),this.begin("NODE"),19;case 11:return yt.getLogger().trace("Cloud"),this.begin("NODE"),19;case 12:return yt.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;case 13:return yt.getLogger().trace("Cloud Bang"),this.begin("NODE"),19;case 14:return this.begin("NODE"),19;case 15:return this.begin("NODE"),19;case 16:return this.begin("NODE"),19;case 17:return this.begin("NODE"),19;case 18:return 13;case 19:return 22;case 20:return 11;case 21:this.begin("NSTR2");break;case 22:return"NODE_DESCR";case 23:this.popState();break;case 24:yt.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return yt.getLogger().trace("description:",ft.yytext),"NODE_DESCR";case 26:this.popState();break;case 27:return this.popState(),yt.getLogger().trace("node end ))"),"NODE_DEND";case 28:return this.popState(),yt.getLogger().trace("node end )"),"NODE_DEND";case 29:return this.popState(),yt.getLogger().trace("node end ...",ft.yytext),"NODE_DEND";case 30:return this.popState(),yt.getLogger().trace("node end (("),"NODE_DEND";case 31:return this.popState(),yt.getLogger().trace("node end (-"),"NODE_DEND";case 32:return this.popState(),yt.getLogger().trace("node end (-"),"NODE_DEND";case 33:return this.popState(),yt.getLogger().trace("node end (("),"NODE_DEND";case 34:return this.popState(),yt.getLogger().trace("node end (("),"NODE_DEND";case 35:return yt.getLogger().trace("Long description:",ft.yytext),20;case 36:return yt.getLogger().trace("Long description:",ft.yytext),20}},rules:[/^(?:\s*%%.*)/i,/^(?:mindmap\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\-\)\{\}]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{CLASS:{rules:[3,4],inclusive:!1},ICON:{rules:[8,9],inclusive:!1},NSTR2:{rules:[22,23],inclusive:!1},NSTR:{rules:[25,26],inclusive:!1},NODE:{rules:[21,24,27,28,29,30,31,32,33,34,35,36],inclusive:!1},INITIAL:{rules:[0,1,2,5,6,7,10,11,12,13,14,15,16,17,18,19,20],inclusive:!0}}};return Tt}();et.lexer=st;function pt(){this.yy={}}return pt.prototype=et,et.Parser=pt,new pt}();Tgt.parser=Tgt;const VGe=Tgt,$N=i=>sg(i,Oe());let iv=[],ojt=0,_gt={};const GGe=()=>{iv=[],ojt=0,_gt={}},UGe=function(i){for(let a=iv.length-1;a>=0;a--)if(iv[a].leveliv.length>0?iv[0]:null,KGe=(i,a,f,p)=>{zt.info("addNode",i,a,f,p);const v=Oe(),m={id:ojt++,nodeId:$N(a),level:i,descr:$N(f),type:p,children:[],width:Oe().mindmap.maxNodeWidth};switch(m.type){case nl.ROUNDED_RECT:m.padding=2*v.mindmap.padding;break;case nl.RECT:m.padding=2*v.mindmap.padding;break;case nl.HEXAGON:m.padding=2*v.mindmap.padding;break;default:m.padding=v.mindmap.padding}const b=UGe(i);if(b)b.children.push(m),iv.push(m);else if(iv.length===0)iv.push(m);else{let E=new Error('There can be only one root. No parent could be found for ("'+m.descr+'")');throw E.hash={text:"branch "+name,token:"branch "+name,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"checkout '+name+'"']},E}},nl={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},YGe=(i,a)=>{switch(zt.debug("In get type",i,a),i){case"[":return nl.RECT;case"(":return a===")"?nl.ROUNDED_RECT:nl.CLOUD;case"((":return nl.CIRCLE;case")":return nl.CLOUD;case"))":return nl.BANG;case"{{":return nl.HEXAGON;default:return nl.DEFAULT}},cjt=(i,a)=>{_gt[i]=a},XGe=i=>{const a=iv[iv.length-1];i&&i.icon&&(a.icon=$N(i.icon)),i&&i.class&&(a.class=$N(i.class))},EE=i=>{switch(i){case nl.DEFAULT:return"no-border";case nl.RECT:return"rect";case nl.ROUNDED_RECT:return"rounded-rect";case nl.CIRCLE:return"circle";case nl.CLOUD:return"cloud";case nl.BANG:return"bang";case nl.HEXAGON:return"hexgon";default:return"no-border"}};let ujt;const QGe=i=>{ujt=i},ZGe=()=>zt,JGe=i=>iv[i],Cgt=i=>_gt[i],tUe=Object.freeze(Object.defineProperty({__proto__:null,addNode:KGe,clear:GGe,decorateNode:XGe,getElementById:Cgt,getLogger:ZGe,getMindmap:WGe,getNodeById:JGe,getType:YGe,nodeType:nl,get parseError(){return ujt},sanitizeText:$N,setElementForId:cjt,setErrorHandler:QGe,type2Str:EE},Symbol.toStringTag,{value:"Module"})),ljt=12,eUe=function(i,a,f){i.append("path").attr("id","node-"+a.id).attr("class","node-bkg node-"+EE(a.type)).attr("d",`M0 ${a.height-5} v${-a.height+2*5} q0,-5 5,-5 h${a.width-2*5} q5,0 5,5 v${a.height-5} H0 Z`),i.append("line").attr("class","node-line-"+f).attr("x1",0).attr("y1",a.height).attr("x2",a.width).attr("y2",a.height)},nUe=function(i,a){i.append("rect").attr("id","node-"+a.id).attr("class","node-bkg node-"+EE(a.type)).attr("height",a.height).attr("width",a.width)},rUe=function(i,a){const f=a.width,p=a.height,v=.15*f,m=.25*f,b=.35*f,E=.2*f;i.append("path").attr("id","node-"+a.id).attr("class","node-bkg node-"+EE(a.type)).attr("d",`M0 0 a${v},${v} 0 0,1 ${f*.25},${-1*f*.1} a${b},${b} 1 0,1 ${f*.4},${-1*f*.1} a${m},${m} 1 0,1 ${f*.35},${1*f*.2} a${v},${v} 1 0,1 ${f*.15},${1*p*.35} a${E},${E} 1 0,1 ${-1*f*.15},${1*p*.65} a${m},${v} 1 0,1 ${-1*f*.25},${f*.15} a${b},${b} 1 0,1 ${-1*f*.5},0 a${v},${v} 1 0,1 ${-1*f*.25},${-1*f*.15} a${v},${v} 1 0,1 ${-1*f*.1},${-1*p*.35} a${E},${E} 1 0,1 ${f*.1},${-1*p*.65} H0 V0 Z`)},iUe=function(i,a){const f=a.width,p=a.height,v=.15*f;i.append("path").attr("id","node-"+a.id).attr("class","node-bkg node-"+EE(a.type)).attr("d",`M0 0 a${v},${v} 1 0,0 ${f*.25},${-1*p*.1} a${v},${v} 1 0,0 ${f*.25},0 a${v},${v} 1 0,0 ${f*.25},0 a${v},${v} 1 0,0 ${f*.25},${1*p*.1} a${v},${v} 1 0,0 ${f*.15},${1*p*.33} a${v*.8},${v*.8} 1 0,0 0,${1*p*.34} a${v},${v} 1 0,0 ${-1*f*.15},${1*p*.33} a${v},${v} 1 0,0 ${-1*f*.25},${p*.15} a${v},${v} 1 0,0 ${-1*f*.25},0 a${v},${v} 1 0,0 ${-1*f*.25},0 a${v},${v} 1 0,0 ${-1*f*.25},${-1*p*.15} a${v},${v} 1 0,0 ${-1*f*.1},${-1*p*.33} a${v*.8},${v*.8} 1 0,0 0,${-1*p*.34} a${v},${v} 1 0,0 ${f*.1},${-1*p*.33} H0 V0 Z`)},sUe=function(i,a){i.append("circle").attr("id","node-"+a.id).attr("class","node-bkg node-"+EE(a.type)).attr("r",a.width/2)};function aUe(i,a,f,p,v){return i.insert("polygon",":first-child").attr("points",p.map(function(m){return m.x+","+m.y}).join(" ")).attr("transform","translate("+(v.width-a)/2+", "+f+")")}const oUe=function(i,a){const f=a.height,v=f/4,m=a.width-a.padding+2*v,b=[{x:v,y:0},{x:m-v,y:0},{x:m,y:-f/2},{x:m-v,y:-f},{x:v,y:-f},{x:0,y:-f/2}];aUe(i,m,f,b,a)},cUe=function(i,a){i.append("rect").attr("id","node-"+a.id).attr("class","node-bkg node-"+EE(a.type)).attr("height",a.height).attr("rx",a.padding).attr("ry",a.padding).attr("width",a.width)},hjt={drawNode:function(i,a,f,p){const v=p.htmlLabels,m=f%(ljt-1),b=i.append("g");a.section=m;let E="section-"+m;m<0&&(E+=" section-root"),b.attr("class",(a.class?a.class+" ":"")+"mindmap-node "+E);const C=b.append("g"),D=b.append("g"),N=a.descr.replace(/()/g,` `);uK(D,N,{useHtmlLabels:v,width:a.width,classes:"mindmap-node-label"}),v||D.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle");const B=D.node().getBBox(),j=p.fontSize.replace?p.fontSize.replace("px",""):p.fontSize;if(a.height=B.height+j*1.1*.5+a.padding,a.width=B.width+2*a.padding,a.icon)if(a.type===nl.CIRCLE)a.height+=50,a.width+=50,b.append("foreignObject").attr("height","50px").attr("width",a.width).attr("style","text-align: center;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+m+" "+a.icon),D.attr("transform","translate("+a.width/2+", "+(a.height/2-1.5*a.padding)+")");else{a.width+=50;const R=a.height;a.height=Math.max(R,60);const H=Math.abs(a.height-R);b.append("foreignObject").attr("width","60px").attr("height",a.height).attr("style","text-align: center;margin-top:"+H/2+"px;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+m+" "+a.icon),D.attr("transform","translate("+(25+a.width/2)+", "+(H/2+a.padding/2)+")")}else if(v){const R=(a.width-B.width)/2,H=(a.height-B.height)/2;D.attr("transform","translate("+R+", "+H+")")}else{const R=a.width/2,H=a.padding/2;D.attr("transform","translate("+R+", "+H+")")}switch(a.type){case nl.DEFAULT:eUe(C,a,m);break;case nl.ROUNDED_RECT:cUe(C,a);break;case nl.RECT:nUe(C,a);break;case nl.CIRCLE:C.attr("transform","translate("+a.width/2+", "+ +a.height/2+")"),sUe(C,a);break;case nl.CLOUD:rUe(C,a);break;case nl.BANG:iUe(C,a);break;case nl.HEXAGON:oUe(C,a);break}return cjt(a.id,b),a.height},positionNode:function(i){const a=Cgt(i.id),f=i.x||0,p=i.y||0;a.attr("transform","translate("+f+","+p+")")},drawEdge:function(a,f,p,v,m){const b=m%(ljt-1),E=p.x+p.width/2,C=p.y+p.height/2,D=f.x+f.width/2,N=f.y+f.height/2,B=D>E?E+Math.abs(E-D)/2:E-Math.abs(E-D)/2,j=N>C?C+Math.abs(C-N)/2:C-Math.abs(C-N)/2,R=D>E?Math.abs(E-B)/2+E:-Math.abs(E-B)/2+E,H=N>C?Math.abs(C-j)/2+C:-Math.abs(C-j)/2+C;a.append("path").attr("d",p.direction==="TB"||p.direction==="BT"?`M${E},${C} Q${E},${H} ${B},${j} T${D},${N}`:`M${E},${C} Q${R},${C} ${B},${j} T${D},${N}`).attr("class","edge section-edge-"+b+" edge-depth-"+v)}};var fjt={exports:{}};(function(i,a){(function(f,p){i.exports=p()})(b0,function(){function f(y){"@babel/helpers - typeof";return f=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(g){return typeof g}:function(g){return g&&typeof Symbol=="function"&&g.constructor===Symbol&&g!==Symbol.prototype?"symbol":typeof g},f(y)}function p(y,g){if(!(y instanceof g))throw new TypeError("Cannot call a class as a function")}function v(y,g){for(var x=0;xy.length)&&(g=y.length);for(var x=0,T=new Array(g);x"u"?null:window,H=R?R.navigator:null;R&&R.document;var Y=f(""),it=f({}),et=f(function(){}),st=typeof HTMLElement>"u"?"undefined":f(HTMLElement),pt=function(g){return g&&g.instanceString&&kt(g.instanceString)?g.instanceString():null},Tt=function(g){return g!=null&&f(g)==Y},kt=function(g){return g!=null&&f(g)===et},yt=function(g){return!ht(g)&&(Array.isArray?Array.isArray(g):g!=null&&g instanceof Array)},ft=function(g){return g!=null&&f(g)===it&&!yt(g)&&g.constructor===Object},mt=function(g){return g!=null&&f(g)===it},rt=function(g){return g!=null&&f(g)===f(1)&&!isNaN(g)},wt=function(g){return rt(g)&&Math.floor(g)===g},gt=function(g){if(st!=="undefined")return g!=null&&g instanceof HTMLElement},ht=function(g){return _t(g)||X(g)},_t=function(g){return pt(g)==="collection"&&g._private.single},X=function(g){return pt(g)==="collection"&&!g._private.single},Rt=function(g){return pt(g)==="core"},lt=function(g){return pt(g)==="stylesheet"},fe=function(g){return pt(g)==="event"},J=function(g){return g==null?!0:!!(g===""||g.match(/^\s+$/))},ae=function(g){return typeof HTMLElement>"u"?!1:g instanceof HTMLElement},Wt=function(g){return ft(g)&&rt(g.x1)&&rt(g.x2)&&rt(g.y1)&&rt(g.y2)},It=function(g){return mt(g)&&kt(g.then)},Pt=function(){return H&&H.userAgent.match(/msie|trident|edge/i)},me=function(g,x){x||(x=function(){if(arguments.length===1)return arguments[0];if(arguments.length===0)return"undefined";for(var I=[],O=0;Ox?1:0},jt=function(g,x){return-1*un(g,x)},Ke=Object.assign!=null?Object.assign.bind(Object):function(y){for(var g=arguments,x=1;x1&&(At-=1),At<1/6?ut+(dt-ut)*6*At:At<1/2?dt:At<2/3?ut+(dt-ut)*(2/3-At)*6:ut}var U=new RegExp("^"+ye+"$").exec(g);if(U){if(T=parseInt(U[1]),T<0?T=(360- -1*T%360)%360:T>360&&(T=T%360),T/=360,A=parseFloat(U[2]),A<0||A>100||(A=A/100,I=parseFloat(U[3]),I<0||I>100)||(I=I/100,O=U[4],O!==void 0&&(O=parseFloat(O),O<0||O>1)))return;if(A===0)$=z=S=Math.round(I*255);else{var tt=I<.5?I*(1+A):I+A-I*A,at=2*I-tt;$=Math.round(255*V(at,tt,T+1/3)),z=Math.round(255*V(at,tt,T)),S=Math.round(255*V(at,tt,T-1/3))}x=[$,z,S,O]}return x},Le=function(g){var x,T=new RegExp("^"+ne+"$").exec(g);if(T){x=[];for(var A=[],I=1;I<=3;I++){var O=T[I];if(O[O.length-1]==="%"&&(A[I]=!0),O=parseFloat(O),A[I]&&(O=O/100*255),O<0||O>255)return;x.push(Math.floor(O))}var $=A[1]||A[2]||A[3],z=A[1]&&A[2]&&A[3];if($&&!z)return;var S=T[4];if(S!==void 0){if(S=parseFloat(S),S<0||S>1)return;x.push(S)}}return x},Pr=function(g){return sr[g.toLowerCase()]},de=function(g){return(yt(g)?g:null)||Pr(g)||oe(g)||Le(g)||Or(g)},sr={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]},Yn=function(g){for(var x=g.map,T=g.keys,A=T.length,I=0;I=g||$t<0||U&&ee>=I}function xt(){var Kt=zn();if(At(Kt))return Mt(Kt);$=setTimeout(xt,dt(Kt))}function Mt(Kt){return $=void 0,tt&&T?at(Kt):(T=A=void 0,O)}function Dt(){$!==void 0&&clearTimeout($),S=0,T=z=A=$=void 0}function Bt(){return $===void 0?O:Mt(zn())}function Zt(){var Kt=zn(),$t=At(Kt);if(T=arguments,A=this,z=Kt,$t){if($===void 0)return ut(z);if(U)return clearTimeout($),$=setTimeout(xt,g),at(z)}return $===void 0&&($=setTimeout(xt,g)),O}return Zt.cancel=Dt,Zt.flush=Bt,Zt}var um=wL,gg=R?R.performance:null,cs=gg&&gg.now?function(){return gg.now()}:function(){return Date.now()},zs=function(){if(R){if(R.requestAnimationFrame)return function(y){R.requestAnimationFrame(y)};if(R.mozRequestAnimationFrame)return function(y){R.mozRequestAnimationFrame(y)};if(R.webkitRequestAnimationFrame)return function(y){R.webkitRequestAnimationFrame(y)};if(R.msRequestAnimationFrame)return function(y){R.msRequestAnimationFrame(y)}}return function(y){y&&setTimeout(function(){y(cs())},1e3/60)}}(),Ma=function(g){return zs(g)},Ei=cs,Rc=9261,Pe=65599,pp=5381,We=function(g){for(var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Rc,T=x,A;A=g.next(),!A.done;)T=T*Pe+A.value|0;return T},uf=function(g){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Rc;return x*Pe+g|0},lm=function(g){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:pp;return(x<<5)+x+g|0},TE=function(g,x){return g*2097152+x},bp=function(g){return g[0]*2097152+g[1]},B5=function(g,x){return[uf(g[0],x[0]),lm(g[1],x[1])]},ah=function(g,x){var T={value:0,done:!1},A=0,I=g.length,O={next:function(){return A=0&&!(g[A]===x&&(g.splice(A,1),T));A--);},yL=function(g){g.splice(0,g.length)},qN=function(g,x){for(var T=0;T"u"?"undefined":f(Set))!==HK?Set:VK,SE=function(g,x){var T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(g===void 0||x===void 0||!Rt(g)){Ec("An element must have a core reference and parameters set");return}var A=x.group;if(A==null&&(x.data&&x.data.source!=null&&x.data.target!=null?A="edges":A="nodes"),A!=="nodes"&&A!=="edges"){Ec("An element must be of type `nodes` or `edges`; you specified `"+A+"`");return}this.length=1,this[0]=this;var I=this._private={cy:g,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:A,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?A==="edges":!!x.pannable,active:!1,classes:new $5,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(I.position.x==null&&(I.position.x=0),I.position.y==null&&(I.position.y=0),x.renderedPosition){var O=x.renderedPosition,$=g.pan(),z=g.zoom();I.position={x:(O.x-$.x)/z,y:(O.y-$.y)/z}}var S=[];yt(x.classes)?S=x.classes:Tt(x.classes)&&(S=x.classes.split(/\s+/));for(var V=0,U=S.length;VMt?1:0},V=function(xt,Mt,Dt,Bt,Zt){var Kt;if(Dt==null&&(Dt=0),Zt==null&&(Zt=T),Dt<0)throw new Error("lo must be non-negative");for(Bt==null&&(Bt=xt.length);Dtge;0<=ge?Ht++:Ht--)ee.push(Ht);return ee}.apply(this).reverse(),$t=[],Bt=0,Zt=Kt.length;Btbe;0<=be?++ee:--ee)re.push(O(xt,Dt));return re},dt=function(xt,Mt,Dt,Bt){var Zt,Kt,$t;for(Bt==null&&(Bt=T),Zt=xt[Dt];Dt>Mt;){if($t=Dt-1>>1,Kt=xt[$t],Bt(Zt,Kt)<0){xt[Dt]=Kt,Dt=$t;continue}break}return xt[Dt]=Zt},At=function(xt,Mt,Dt){var Bt,Zt,Kt,$t,ee;for(Dt==null&&(Dt=T),Zt=xt.length,ee=Mt,Kt=xt[Mt],Bt=2*Mt+1;Bt0;){var Kt=Mt.pop(),$t=At(Kt),ee=Kt.id();if(tt[ee]=$t,$t!==1/0)for(var Ht=Kt.neighborhood().intersect(ut),ge=0;ge0)for(xn.unshift(qe);U[er];){var Sn=U[er];xn.unshift(Sn.edge),xn.unshift(Sn.node),Pn=Sn.node,er=Pn.id()}return $.spawn(xn)}}}},KK={kruskal:function(g){g=g||function(Dt){return 1};for(var x=this.byGroup(),T=x.nodes,A=x.edges,I=T.length,O=new Array(I),$=T,z=function(Bt){for(var Zt=0;Zt0;){if(Zt(),$t++,Bt===V){for(var ee=[],Ht=I,ge=V,be=xt[ge];ee.unshift(Ht),be!=null&&ee.unshift(be),Ht=At[ge],Ht!=null;)ge=Ht.id(),be=xt[ge];return{found:!0,distance:U[Bt],path:this.spawn(ee),steps:$t}}at[Bt]=!0;for(var re=Dt._private.edges,Ne=0;Nebe&&(ut[ge]=be,Mt[ge]=Ht,Dt[ge]=Zt),!I){var re=Ht*V+ee;!I&&ut[re]>be&&(ut[re]=be,Mt[re]=ee,Dt[re]=Zt)}}}for(var Ne=0;Ne1&&arguments[1]!==void 0?arguments[1]:O,no=Dt(Ri),ca=[],ea=no;;){if(ea==null)return x.spawn();var Fr=Mt(ea),Qt=Fr.edge,Hn=Fr.pred;if(ca.unshift(ea[0]),ea.same(as)&&ca.length>0)break;Qt!=null&&ca.unshift(Qt),ea=Hn}return z.spawn(ca)},Kt=0;Kt=0;V--){var U=S[V],tt=U[1],at=U[2];(x[tt]===$&&x[at]===z||x[tt]===z&&x[at]===$)&&S.splice(V,1)}for(var ut=0;utA;){var I=Math.floor(Math.random()*x.length);x=nY(I,g,x),T--}return x},rY={kargerStein:function(){var g=this,x=this.byGroup(),T=x.nodes,A=x.edges;A.unmergeBy(function(xn){return xn.isLoop()});var I=T.length,O=A.length,$=Math.ceil(Math.pow(Math.log(I)/Math.LN2,2)),z=Math.floor(I/eY);if(I<2){Ec("At least 2 nodes are required for Karger-Stein algorithm");return}for(var S=[],V=0;V1&&arguments[1]!==void 0?arguments[1]:0,T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:g.length,A=1/0,I=x;I1&&arguments[1]!==void 0?arguments[1]:0,T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:g.length,A=-1/0,I=x;I1&&arguments[1]!==void 0?arguments[1]:0,T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:g.length,A=0,I=0,O=x;O1&&arguments[1]!==void 0?arguments[1]:0,T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:g.length,A=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,I=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,O=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;A?g=g.slice(x,T):(T0&&g.splice(0,x));for(var $=0,z=g.length-1;z>=0;z--){var S=g[z];O?isFinite(S)||(g[z]=-1/0,$++):g.splice(z,1)}I&&g.sort(function(tt,at){return tt-at});var V=g.length,U=Math.floor(V/2);return V%2!==0?g[U+1+$]:(g[U-1+$]+g[U+$])/2},uY=function(g){return Math.PI*g/180},LE=function(g,x){return Math.atan2(x,g)-Math.PI/2},kL=Math.log2||function(y){return Math.log(y)/Math.log(2)},GN=function(g){return g>0?1:g<0?-1:0},T3=function(g,x){return Math.sqrt(_3(g,x))},_3=function(g,x){var T=x.x-g.x,A=x.y-g.y;return T*T+A*A},lY=function(g){for(var x=g.length,T=0,A=0;A=g.x1&&g.y2>=g.y1)return{x1:g.x1,y1:g.y1,x2:g.x2,y2:g.y2,w:g.x2-g.x1,h:g.y2-g.y1};if(g.w!=null&&g.h!=null&&g.w>=0&&g.h>=0)return{x1:g.x1,y1:g.y1,x2:g.x1+g.w,y2:g.y1+g.h,w:g.w,h:g.h}}},fY=function(g){return{x1:g.x1,x2:g.x2,w:g.w,y1:g.y1,y2:g.y2,h:g.h}},dY=function(g){g.x1=1/0,g.y1=1/0,g.x2=-1/0,g.y2=-1/0,g.w=0,g.h=0},gY=function(g,x){g.x1=Math.min(g.x1,x.x1),g.x2=Math.max(g.x2,x.x2),g.w=g.x2-g.x1,g.y1=Math.min(g.y1,x.y1),g.y2=Math.max(g.y2,x.y2),g.h=g.y2-g.y1},pY=function(g,x,T){g.x1=Math.min(g.x1,x),g.x2=Math.max(g.x2,x),g.w=g.x2-g.x1,g.y1=Math.min(g.y1,T),g.y2=Math.max(g.y2,T),g.h=g.y2-g.y1},ME=function(g){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return g.x1-=x,g.x2+=x,g.y1-=x,g.y2+=x,g.w=g.x2-g.x1,g.h=g.y2-g.y1,g},EL=function(g){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0],T,A,I,O;if(x.length===1)T=A=I=O=x[0];else if(x.length===2)T=I=x[0],O=A=x[1];else if(x.length===4){var $=E(x,4);T=$[0],A=$[1],I=$[2],O=$[3]}return g.x1-=O,g.x2+=A,g.y1-=T,g.y2+=I,g.w=g.x2-g.x1,g.h=g.y2-g.y1,g},UN=function(g,x){g.x1=x.x1,g.y1=x.y1,g.x2=x.x2,g.y2=x.y2,g.w=g.x2-g.x1,g.h=g.y2-g.y1},TL=function(g,x){return!(g.x1>x.x2||x.x1>g.x2||g.x2x.y2||x.y1>g.y2)},H5=function(g,x,T){return g.x1<=x&&x<=g.x2&&g.y1<=T&&T<=g.y2},bY=function(g,x){return H5(g,x.x,x.y)},WN=function(g,x){return H5(g,x.x1,x.y1)&&H5(g,x.x2,x.y2)},KN=function(g,x,T,A,I,O,$){var z=xk(I,O),S=I/2,V=O/2,U;{var tt=T-S+z-$,at=A-V-$,ut=T+S-z+$,dt=at;if(U=pm(g,x,T,A,tt,at,ut,dt,!1),U.length>0)return U}{var At=T+S+$,xt=A-V+z-$,Mt=At,Dt=A+V-z+$;if(U=pm(g,x,T,A,At,xt,Mt,Dt,!1),U.length>0)return U}{var Bt=T-S+z-$,Zt=A+V+$,Kt=T+S-z+$,$t=Zt;if(U=pm(g,x,T,A,Bt,Zt,Kt,$t,!1),U.length>0)return U}{var ee=T-S-$,Ht=A-V+z-$,ge=ee,be=A+V-z+$;if(U=pm(g,x,T,A,ee,Ht,ge,be,!1),U.length>0)return U}var re;{var Ne=T-S+z,ve=A-V+z;if(re=mk(g,x,T,A,Ne,ve,z+$),re.length>0&&re[0]<=Ne&&re[1]<=ve)return[re[0],re[1]]}{var fn=T+S-z,$e=A-V+z;if(re=mk(g,x,T,A,fn,$e,z+$),re.length>0&&re[0]>=fn&&re[1]<=$e)return[re[0],re[1]]}{var qe=T+S-z,xn=A+V-z;if(re=mk(g,x,T,A,qe,xn,z+$),re.length>0&&re[0]>=qe&&re[1]>=xn)return[re[0],re[1]]}{var Pn=T-S+z,er=A+V-z;if(re=mk(g,x,T,A,Pn,er,z+$),re.length>0&&re[0]<=Pn&&re[1]>=er)return[re[0],re[1]]}return[]},vY=function(g,x,T,A,I,O,$){var z=$,S=Math.min(T,I),V=Math.max(T,I),U=Math.min(A,O),tt=Math.max(A,O);return S-z<=g&&g<=V+z&&U-z<=x&&x<=tt+z},wY=function(g,x,T,A,I,O,$,z,S){var V={x1:Math.min(T,$,I)-S,x2:Math.max(T,$,I)+S,y1:Math.min(A,z,O)-S,y2:Math.max(A,z,O)+S};return!(gV.x2||xV.y2)},mY=function(g,x,T,A){T-=A;var I=x*x-4*g*T;if(I<0)return[];var O=Math.sqrt(I),$=2*g,z=(-x+O)/$,S=(-x-O)/$;return[z,S]},yY=function(g,x,T,A,I){var O=1e-5;g===0&&(g=O),x/=g,T/=g,A/=g;var $,z,S,V,U,tt,at,ut;if(z=(3*T-x*x)/9,S=-(27*A)+x*(9*T-2*(x*x)),S/=54,$=z*z*z+S*S,I[1]=0,at=x/3,$>0){U=S+Math.sqrt($),U=U<0?-Math.pow(-U,1/3):Math.pow(U,1/3),tt=S-Math.sqrt($),tt=tt<0?-Math.pow(-tt,1/3):Math.pow(tt,1/3),I[0]=-at+U+tt,at+=(U+tt)/2,I[4]=I[2]=-at,at=Math.sqrt(3)*(-tt+U)/2,I[3]=at,I[5]=-at;return}if(I[5]=I[3]=0,$===0){ut=S<0?-Math.pow(-S,1/3):Math.pow(S,1/3),I[0]=-at+2*ut,I[4]=I[2]=-(ut+at);return}z=-z,V=z*z*z,V=Math.acos(S/Math.sqrt(V)),ut=2*Math.sqrt(z),I[0]=-at+ut*Math.cos(V/3),I[2]=-at+ut*Math.cos((V+2*Math.PI)/3),I[4]=-at+ut*Math.cos((V+4*Math.PI)/3)},xY=function(g,x,T,A,I,O,$,z){var S=1*T*T-4*T*I+2*T*$+4*I*I-4*I*$+$*$+A*A-4*A*O+2*A*z+4*O*O-4*O*z+z*z,V=1*9*T*I-3*T*T-3*T*$-6*I*I+3*I*$+9*A*O-3*A*A-3*A*z-6*O*O+3*O*z,U=1*3*T*T-6*T*I+T*$-T*g+2*I*I+2*I*g-$*g+3*A*A-6*A*O+A*z-A*x+2*O*O+2*O*x-z*x,tt=1*T*I-T*T+T*g-I*g+A*O-A*A+A*x-O*x,at=[];yY(S,V,U,tt,at);for(var ut=1e-7,dt=[],At=0;At<6;At+=2)Math.abs(at[At+1])=0&&at[At]<=1&&dt.push(at[At]);dt.push(1),dt.push(0);for(var xt=-1,Mt,Dt,Bt,Zt=0;Zt=0?BtS?(g-I)*(g-I)+(x-O)*(x-O):V-tt},qd=function(g,x,T){for(var A,I,O,$,z,S=0,V=0;V=g&&g>=O||A<=g&&g<=O)z=(g-A)/(O-A)*($-I)+I,z>x&&S++;else continue;return S%2!==0},ov=function(g,x,T,A,I,O,$,z,S){var V=new Array(T.length),U;z[0]!=null?(U=Math.atan(z[1]/z[0]),z[0]<0?U=U+Math.PI/2:U=-U-Math.PI/2):U=z;for(var tt=Math.cos(-U),at=Math.sin(-U),ut=0;ut0){var At=XN(V,-S);dt=YN(At)}else dt=V;return qd(g,x,dt)},EY=function(g,x,T,A,I,O,$){for(var z=new Array(T.length),S=O/2,V=$/2,U=SL(O,$),tt=U*U,at=0;at=0&&At<=1&&Mt.push(At),xt>=0&&xt<=1&&Mt.push(xt),Mt.length===0)return[];var Dt=Mt[0]*z[0]+g,Bt=Mt[0]*z[1]+x;if(Mt.length>1){if(Mt[0]==Mt[1])return[Dt,Bt];var Zt=Mt[1]*z[0]+g,Kt=Mt[1]*z[1]+x;return[Dt,Bt,Zt,Kt]}else return[Dt,Bt]},_L=function(g,x,T){return x<=g&&g<=T||T<=g&&g<=x?g:g<=x&&x<=T||T<=x&&x<=g?x:T},pm=function(g,x,T,A,I,O,$,z,S){var V=g-I,U=T-g,tt=$-I,at=x-O,ut=A-x,dt=z-O,At=tt*at-dt*V,xt=U*at-ut*V,Mt=dt*U-tt*ut;if(Mt!==0){var Dt=At/Mt,Bt=xt/Mt,Zt=.001,Kt=0-Zt,$t=1+Zt;return Kt<=Dt&&Dt<=$t&&Kt<=Bt&&Bt<=$t?[g+Dt*U,x+Dt*ut]:S?[g+Dt*U,x+Dt*ut]:[]}else return At===0||xt===0?_L(g,T,$)===$?[$,z]:_L(g,T,I)===I?[I,O]:_L(I,$,T)===T?[T,A]:[]:[]},yk=function(g,x,T,A,I,O,$,z){var S=[],V,U=new Array(T.length),tt=!0;O==null&&(tt=!1);var at;if(tt){for(var ut=0;ut0){var dt=XN(U,-z);at=YN(dt)}else at=U}else at=T;for(var At,xt,Mt,Dt,Bt=0;Bt2){for(var $e=[S[0],S[1]],qe=Math.pow($e[0]-g,2)+Math.pow($e[1]-x,2),xn=1;xnV&&(V=Bt)},get:function(Dt){return S[Dt]}},tt=0;tt<$.length;tt++){var at=$[tt],ut=at.id();T?z[ut]=at.outgoers().nodes():z[ut]=at.openNeighborhood().nodes(),U.set(ut,0)}for(var dt=function(Dt){for(var Bt=$[Dt].id(),Zt=[],Kt={},$t={},ee={},Ht=new vk(function(wr,cr){return ee[wr]-ee[cr]}),ge=0;ge<$.length;ge++){var be=$[ge].id();Kt[be]=[],$t[be]=0,ee[be]=1/0}for($t[Bt]=1,ee[Bt]=0,Ht.push(Bt);!Ht.empty();){var re=Ht.pop();if(Zt.push(re),I)for(var Ne=0;Ne0?$e=fn.edgesTo(ve)[0]:$e=ve.edgesTo(fn)[0];var qe=A($e);ve=ve.id(),ee[ve]>ee[re]+qe&&(ee[ve]=ee[re]+qe,Ht.nodes.indexOf(ve)<0?Ht.push(ve):Ht.updateItem(ve),$t[ve]=0,Kt[ve]=[]),ee[ve]==ee[re]+qe&&($t[ve]=$t[ve]+$t[re],Kt[ve].push(re))}else for(var xn=0;xn0;){for(var Jn=Zt.pop(),fr=0;fr0&&$.push(T[z]);$.length!==0&&I.push(A.collection($))}return I},RY=function(g,x){for(var T=0;T5&&arguments[5]!==void 0?arguments[5]:zY,$=A,z,S,V=0;V=2?kk(g,x,T,0,aF,qY):kk(g,x,T,0,sF)},squaredEuclidean:function(g,x,T){return kk(g,x,T,0,aF)},manhattan:function(g,x,T){return kk(g,x,T,0,sF)},max:function(g,x,T){return kk(g,x,T,-1/0,HY)}};U5["squared-euclidean"]=U5.squaredEuclidean,U5.squaredeuclidean=U5.squaredEuclidean;function IE(y,g,x,T,A,I){var O;return kt(y)?O=y:O=U5[y]||U5.euclidean,g===0&&kt(y)?O(A,I):O(g,x,T,A,I)}var VY=Hf({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),ML=function(g){return VY(g)},OE=function(g,x,T,A,I){var O=I!=="kMedoids",$=O?function(U){return T[U]}:function(U){return A[U](T)},z=function(tt){return A[tt](x)},S=T,V=x;return IE(g,A.length,$,z,S,V)},DL=function(g,x,T){for(var A=T.length,I=new Array(A),O=new Array(A),$=new Array(x),z=null,S=0;ST)return!1}return!0},WY=function(g,x,T){for(var A=0;A$&&($=x[S][V],z=V);I[z].push(g[S])}for(var U=0;U=I.threshold||I.mode==="dendrogram"&&g.length===1)return!1;var ut=x[O],dt=x[A[O]],At;I.mode==="dendrogram"?At={left:ut,right:dt,key:ut.key}:At={value:ut.value.concat(dt.value),key:ut.key},g[ut.index]=At,g.splice(dt.index,1),x[ut.key]=At;for(var xt=0;xtT[dt.key][Mt.key]&&(z=T[dt.key][Mt.key])):I.linkage==="max"?(z=T[ut.key][Mt.key],T[ut.key][Mt.key]0&&A.push(I);return A},gF=function(g,x,T){for(var A=[],I=0;I$&&(O=S,$=x[I*g+S])}O>0&&A.push(O)}for(var V=0;VS&&(z=V,S=U)}T[I]=O[z]}return A=gF(g,x,T),A},pF=function(g){for(var x=this.cy(),T=this.nodes(),A=oX(g),I={},O=0;O=be?(re=be,be=ve,Ne=fn):ve>re&&(re=ve);for(var $e=0;$e<$;$e++)U[ge*$+$e]=(1-A.damping)*(S[ge*$+$e]-be)+A.damping*Dt[$e];U[ge*$+Ne]=(1-A.damping)*(S[ge*$+Ne]-re)+A.damping*Dt[Ne]}for(var qe=0;qe<$;qe++){for(var xn=0,Pn=0;Pn<$;Pn++)Dt[Pn]=tt[Pn*$+qe],Bt[Pn]=Math.max(0,U[Pn*$+qe]),xn+=Bt[Pn];xn-=Bt[qe],Bt[qe]=U[qe*$+qe],xn+=Bt[qe];for(var er=0;er<$;er++)tt[er*$+qe]=(1-A.damping)*Math.min(0,xn-Bt[er])+A.damping*Dt[er];tt[qe*$+qe]=(1-A.damping)*(xn-Bt[qe])+A.damping*Dt[qe]}for(var Sn=0,Jn=0;Jn<$;Jn++){var fr=tt[Jn*$+Jn]+U[Jn*$+Jn]>0?1:0;$t[Ht%A.minIterations*$+Jn]=fr,Sn+=fr}if(Sn>0&&(Ht>=A.minIterations-1||Ht==A.maxIterations-1)){for(var Sr=0,wr=0;wr<$;wr++){Zt[wr]=0;for(var cr=0;cr1||Kt>1)&&($=!0),U[Dt]=[],Mt.outgoers().forEach(function(ee){ee.isEdge()&&U[Dt].push(ee.id())})}else tt[Dt]=[void 0,Mt.target().id()]}):O.forEach(function(Mt){var Dt=Mt.id();if(Mt.isNode()){var Bt=Mt.degree(!0);Bt%2&&(z?S?$=!0:S=Dt:z=Dt),U[Dt]=[],Mt.connectedEdges().forEach(function(Zt){return U[Dt].push(Zt.id())})}else tt[Dt]=[Mt.source().id(),Mt.target().id()]});var at={found:!1,trail:void 0};if($)return at;if(S&&z)if(I){if(V&&S!=V)return at;V=S}else{if(V&&S!=V&&z!=V)return at;V||(V=S)}else V||(V=O[0].id());var ut=function(Dt){for(var Bt=Dt,Zt=[Dt],Kt,$t,ee;U[Bt].length;)Kt=U[Bt].shift(),$t=tt[Kt][0],ee=tt[Kt][1],Bt!=ee?(U[ee]=U[ee].filter(function(Ht){return Ht!=Kt}),Bt=ee):!I&&Bt!=$t&&(U[$t]=U[$t].filter(function(Ht){return Ht!=Kt}),Bt=$t),Zt.unshift(Kt),Zt.unshift(Bt);return Zt},dt=[],At=[];for(At=ut(V);At.length!=1;)U[At[0]].length==0?(dt.unshift(O.getElementById(At.shift())),dt.unshift(O.getElementById(At.shift()))):At=ut(At.shift()).concat(At);dt.unshift(O.getElementById(At.shift()));for(var xt in U)if(U[xt].length)return at;return at.found=!0,at.trail=this.spawn(dt,!0),at}},NE=function(){var g=this,x={},T=0,A=0,I=[],O=[],$={},z=function(tt,at){for(var ut=O.length-1,dt=[],At=g.spawn();O[ut].x!=tt||O[ut].y!=at;)dt.push(O.pop().edge),ut--;dt.push(O.pop().edge),dt.forEach(function(xt){var Mt=xt.connectedNodes().intersection(g);At.merge(xt),Mt.forEach(function(Dt){var Bt=Dt.id(),Zt=Dt.connectedEdges().intersection(g);At.merge(Dt),x[Bt].cutVertex?At.merge(Zt.filter(function(Kt){return Kt.isLoop()})):At.merge(Zt)})}),I.push(At)},S=function U(tt,at,ut){tt===ut&&(A+=1),x[at]={id:T,low:T++,cutVertex:!1};var dt=g.getElementById(at).connectedEdges().intersection(g);if(dt.size()===0)I.push(g.spawn(g.getElementById(at)));else{var At,xt,Mt,Dt;dt.forEach(function(Bt){At=Bt.source().id(),xt=Bt.target().id(),Mt=At===at?xt:At,Mt!==ut&&(Dt=Bt.id(),$[Dt]||($[Dt]=!0,O.push({x:at,y:Mt,edge:Bt})),Mt in x?x[at].low=Math.min(x[at].low,x[Mt].id):(U(tt,Mt,at),x[at].low=Math.min(x[at].low,x[Mt].low),x[at].id<=x[Mt].low&&(x[at].cutVertex=!0,z(at,Mt))))})}};g.forEach(function(U){if(U.isNode()){var tt=U.id();tt in x||(A=0,S(tt,tt),x[tt].cutVertex=A>1)}});var V=Object.keys(x).filter(function(U){return x[U].cutVertex}).map(function(U){return g.getElementById(U)});return{cut:g.spawn(V),components:I}},pX={hopcroftTarjanBiconnected:NE,htbc:NE,htb:NE,hopcroftTarjanBiconnectedComponents:NE},FE=function(){var g=this,x={},T=0,A=[],I=[],O=g.spawn(g),$=function z(S){I.push(S),x[S]={index:T,low:T++,explored:!1};var V=g.getElementById(S).connectedEdges().intersection(g);if(V.forEach(function(dt){var At=dt.target().id();At!==S&&(At in x||z(At),x[At].explored||(x[S].low=Math.min(x[S].low,x[At].low)))}),x[S].index===x[S].low){for(var U=g.spawn();;){var tt=I.pop();if(U.merge(g.getElementById(tt)),x[tt].low=x[S].index,x[tt].explored=!0,tt===S)break}var at=U.edgesWith(U),ut=U.merge(at);A.push(ut),O=O.difference(ut)}};return g.forEach(function(z){if(z.isNode()){var S=z.id();S in x||$(S)}}),{cut:O,components:A}},bX={tarjanStronglyConnected:FE,tsc:FE,tscc:FE,tarjanStronglyConnectedComponents:FE},bF={};[bk,WK,KK,XK,ZK,tY,rY,AY,V5,G5,LL,$Y,JY,sX,fX,gX,pX,bX].forEach(function(y){Ke(bF,y)});/*! Embeddable Minimum Strictly-Compliant Promises/A+ 1.1.1 Thenable Copyright (c) 2013-2014 Ralf S. Engelschall (http://engelschall.com) Licensed under The MIT License (http://opensource.org/licenses/MIT) */var vF=0,wF=1,mF=2,cv=function y(g){if(!(this instanceof y))return new y(g);this.id="Thenable/1.0.7",this.state=vF,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},typeof g=="function"&&g.call(this,this.fulfill.bind(this),this.reject.bind(this))};cv.prototype={fulfill:function(g){return yF(this,wF,"fulfillValue",g)},reject:function(g){return yF(this,mF,"rejectReason",g)},then:function(g,x){var T=this,A=new cv;return T.onFulfilled.push(EF(g,A,"fulfill")),T.onRejected.push(EF(x,A,"reject")),xF(T),A.proxy}};var yF=function(g,x,T,A){return g.state===vF&&(g.state=x,g[T]=A,xF(g)),g},xF=function(g){g.state===wF?kF(g,"onFulfilled",g.fulfillValue):g.state===mF&&kF(g,"onRejected",g.rejectReason)},kF=function(g,x,T){if(g[x].length!==0){var A=g[x];g[x]=[];var I=function(){for(var $=0;$0}},clearQueue:function(){return function(){var x=this,T=x.length!==void 0,A=T?x:[x],I=this._private.cy||this;if(!I.styleEnabled())return this;for(var O=0;O-1}var vQ=bQ;function wQ(y,g){var x=this.__data__,T=jE(x,y);return T<0?(++this.size,x.push([y,g])):x[T][1]=g,this}var mQ=wQ;function Y5(y){var g=-1,x=y==null?0:y.length;for(this.clear();++g-1&&y%1==0&&y0&&this.spawn(A).updateStyle().emit("class"),x},addClass:function(g){return this.toggleClass(g,!0)},hasClass:function(g){var x=this[0];return x!=null&&x._private.classes.has(g)},toggleClass:function(g,x){yt(g)||(g=g.match(/\S+/g)||[]);for(var T=this,A=x===void 0,I=[],O=0,$=T.length;O<$;O++)for(var z=T[O],S=z._private.classes,V=!1,U=0;U0&&this.spawn(I).updateStyle().emit("class"),T},removeClass:function(g){return this.toggleClass(g,!1)},flashClass:function(g,x){var T=this;if(x==null)x=250;else if(x===0)return T;return T.addClass(g),setTimeout(function(){T.removeClass(g)},x),T}};HE.className=HE.classNames=HE.classes;var dc={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:`"(?:\\\\"|[^"])*"|'(?:\\\\'|[^'])*'`,number:Te,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};dc.variable="(?:[\\w-.]|(?:\\\\"+dc.metaChar+"))+",dc.className="(?:[\\w-]|(?:\\\\"+dc.metaChar+"))+",dc.value=dc.string+"|"+dc.number,dc.id=dc.variable,function(){var y,g,x;for(y=dc.comparatorOp.split("|"),x=0;x=0)&&g!=="="&&(dc.comparatorOp+="|\\!"+g)}();var ru=function(){return{checks:[]}},ts={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},BL=[{selector:":selected",matches:function(g){return g.selected()}},{selector:":unselected",matches:function(g){return!g.selected()}},{selector:":selectable",matches:function(g){return g.selectable()}},{selector:":unselectable",matches:function(g){return!g.selectable()}},{selector:":locked",matches:function(g){return g.locked()}},{selector:":unlocked",matches:function(g){return!g.locked()}},{selector:":visible",matches:function(g){return g.visible()}},{selector:":hidden",matches:function(g){return!g.visible()}},{selector:":transparent",matches:function(g){return g.transparent()}},{selector:":grabbed",matches:function(g){return g.grabbed()}},{selector:":free",matches:function(g){return!g.grabbed()}},{selector:":removed",matches:function(g){return g.removed()}},{selector:":inside",matches:function(g){return!g.removed()}},{selector:":grabbable",matches:function(g){return g.grabbable()}},{selector:":ungrabbable",matches:function(g){return!g.grabbable()}},{selector:":animated",matches:function(g){return g.animated()}},{selector:":unanimated",matches:function(g){return!g.animated()}},{selector:":parent",matches:function(g){return g.isParent()}},{selector:":childless",matches:function(g){return g.isChildless()}},{selector:":child",matches:function(g){return g.isChild()}},{selector:":orphan",matches:function(g){return g.isOrphan()}},{selector:":nonorphan",matches:function(g){return g.isChild()}},{selector:":compound",matches:function(g){return g.isNode()?g.isParent():g.source().isParent()||g.target().isParent()}},{selector:":loop",matches:function(g){return g.isLoop()}},{selector:":simple",matches:function(g){return g.isSimple()}},{selector:":active",matches:function(g){return g.active()}},{selector:":inactive",matches:function(g){return!g.active()}},{selector:":backgrounding",matches:function(g){return g.backgrounding()}},{selector:":nonbackgrounding",matches:function(g){return!g.backgrounding()}}].sort(function(y,g){return jt(y.selector,g.selector)}),mZ=function(){for(var y={},g,x=0;x0&&V.edgeCount>0)return Wo("The selector `"+g+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(V.edgeCount>1)return Wo("The selector `"+g+"` is invalid because it uses multiple edge selectors"),!1;V.edgeCount===1&&Wo("The selector `"+g+"` 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},_Z=function(){if(this.toStringCache!=null)return this.toStringCache;for(var g=function(V){return V??""},x=function(V){return Tt(V)?'"'+V+'"':g(V)},T=function(V){return" "+V+" "},A=function(V,U){var tt=V.type,at=V.value;switch(tt){case ts.GROUP:{var ut=g(at);return ut.substring(0,ut.length-1)}case ts.DATA_COMPARE:{var dt=V.field,At=V.operator;return"["+dt+T(g(At))+x(at)+"]"}case ts.DATA_BOOL:{var xt=V.operator,Mt=V.field;return"["+g(xt)+Mt+"]"}case ts.DATA_EXIST:{var Dt=V.field;return"["+Dt+"]"}case ts.META_COMPARE:{var Bt=V.operator,Zt=V.field;return"[["+Zt+T(g(Bt))+x(at)+"]]"}case ts.STATE:return at;case ts.ID:return"#"+at;case ts.CLASS:return"."+at;case ts.PARENT:case ts.CHILD:return I(V.parent,U)+T(">")+I(V.child,U);case ts.ANCESTOR:case ts.DESCENDANT:return I(V.ancestor,U)+" "+I(V.descendant,U);case ts.COMPOUND_SPLIT:{var Kt=I(V.left,U),$t=I(V.subject,U),ee=I(V.right,U);return Kt+(Kt.length>0?" ":"")+$t+ee}case ts.TRUE:return""}},I=function(V,U){return V.checks.reduce(function(tt,at,ut){return tt+(U===V&&ut===0?"$":"")+A(at,U)},"")},O="",$=0;$1&&$=0&&(x=x.replace("!",""),U=!0),x.indexOf("@")>=0&&(x=x.replace("@",""),V=!0),(I||$||V)&&(z=!I&&!O?"":""+g,S=""+T),V&&(g=z=z.toLowerCase(),T=S=S.toLowerCase()),x){case"*=":A=z.indexOf(S)>=0;break;case"$=":A=z.indexOf(S,z.length-S.length)>=0;break;case"^=":A=z.indexOf(S)===0;break;case"=":A=g===T;break;case">":tt=!0,A=g>T;break;case">=":tt=!0,A=g>=T;break;case"<":tt=!0,A=g0;){var V=A.shift();g(V),I.add(V.id()),$&&T(A,I,V)}return y}function Tk(y,g,x){if(x.isParent())for(var T=x._private.children,A=0;A1&&arguments[1]!==void 0?arguments[1]:!0;return VE(this,y,g,Tk)};function qF(y,g,x){if(x.isChild()){var T=x._private.parent;g.has(T.id())||y.push(T)}}Z5.forEachUp=function(y){var g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return VE(this,y,g,qF)};function OZ(y,g,x){qF(y,g,x),Tk(y,g,x)}Z5.forEachUpAndDown=function(y){var g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return VE(this,y,g,OZ)},Z5.ancestors=Z5.parents;var _k,HF;_k=HF={data:jc.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:jc.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:jc.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:jc.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:jc.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:jc.removeData({field:"rscratch",triggerEvent:!1}),id:function(){var g=this[0];if(g)return g._private.data.id}},_k.attr=_k.data,_k.removeAttr=_k.removeData;var PZ=HF,GE={};function J5(y){return function(g){var x=this;if(g===void 0&&(g=!0),x.length!==0)if(x.isNode()&&!x.removed()){for(var T=0,A=x[0],I=A._private.edges,O=0;Og}),minIndegree:t6("indegree",function(y,g){return yg}),minOutdegree:t6("outdegree",function(y,g){return yg})}),Ke(GE,{totalDegree:function(g){for(var x=0,T=this.nodes(),A=0;A0,tt=U;U&&(V=V[0]);var at=tt?V.position():{x:0,y:0};x!==void 0?S.position(g,x+at[g]):I!==void 0&&S.position({x:I.x+at.x,y:I.y+at.y})}else{var ut=T.position(),dt=$?T.parent():null,At=dt&&dt.length>0,xt=At;At&&(dt=dt[0]);var Mt=xt?dt.position():{x:0,y:0};return I={x:ut.x-Mt.x,y:ut.y-Mt.y},g===void 0?I:I[g]}else if(!O)return;return this}},yp.modelPosition=yp.point=yp.position,yp.modelPositions=yp.points=yp.positions,yp.renderedPoint=yp.renderedPosition,yp.relativePoint=yp.relativePosition;var UF=VF,e6,$2;e6=$2={},$2.renderedBoundingBox=function(y){var g=this.boundingBox(y),x=this.cy(),T=x.zoom(),A=x.pan(),I=g.x1*T+A.x,O=g.x2*T+A.x,$=g.y1*T+A.y,z=g.y2*T+A.y;return{x1:I,x2:O,y1:$,y2:z,w:O-I,h:z-$}},$2.dirtyCompoundBoundsCache=function(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,g=this.cy();return!g.styleEnabled()||!g.hasCompoundNodes()?this:(this.forEachUp(function(x){if(x.isParent()){var T=x._private;T.compoundBoundsClean=!1,T.bbCache=null,y||x.emitAndNotify("bounds")}}),this)},$2.updateCompoundBounds=function(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,g=this.cy();if(!g.styleEnabled()||!g.hasCompoundNodes())return this;if(!y&&g.batching())return this;function x(O){if(!O.isParent())return;var $=O._private,z=O.children(),S=O.pstyle("compound-sizing-wrt-labels").value==="include",V={width:{val:O.pstyle("min-width").pfValue,left:O.pstyle("min-width-bias-left"),right:O.pstyle("min-width-bias-right")},height:{val:O.pstyle("min-height").pfValue,top:O.pstyle("min-height-bias-top"),bottom:O.pstyle("min-height-bias-bottom")}},U=z.boundingBox({includeLabels:S,includeOverlays:!1,useCache:!1}),tt=$.position;(U.w===0||U.h===0)&&(U={w:O.pstyle("width").pfValue,h:O.pstyle("height").pfValue},U.x1=tt.x-U.w/2,U.x2=tt.x+U.w/2,U.y1=tt.y-U.h/2,U.y2=tt.y+U.h/2);function at(Ht,ge,be){var re=0,Ne=0,ve=ge+be;return Ht>0&&ve>0&&(re=ge/ve*Ht,Ne=be/ve*Ht),{biasDiff:re,biasComplementDiff:Ne}}function ut(Ht,ge,be,re){if(be.units==="%")switch(re){case"width":return Ht>0?be.pfValue*Ht:0;case"height":return ge>0?be.pfValue*ge:0;case"average":return Ht>0&&ge>0?be.pfValue*(Ht+ge)/2:0;case"min":return Ht>0&&ge>0?Ht>ge?be.pfValue*ge:be.pfValue*Ht:0;case"max":return Ht>0&&ge>0?Ht>ge?be.pfValue*Ht:be.pfValue*ge:0;default:return 0}else return be.units==="px"?be.pfValue:0}var dt=V.width.left.value;V.width.left.units==="px"&&V.width.val>0&&(dt=dt*100/V.width.val);var At=V.width.right.value;V.width.right.units==="px"&&V.width.val>0&&(At=At*100/V.width.val);var xt=V.height.top.value;V.height.top.units==="px"&&V.height.val>0&&(xt=xt*100/V.height.val);var Mt=V.height.bottom.value;V.height.bottom.units==="px"&&V.height.val>0&&(Mt=Mt*100/V.height.val);var Dt=at(V.width.val-U.w,dt,At),Bt=Dt.biasDiff,Zt=Dt.biasComplementDiff,Kt=at(V.height.val-U.h,xt,Mt),$t=Kt.biasDiff,ee=Kt.biasComplementDiff;$.autoPadding=ut(U.w,U.h,O.pstyle("padding"),O.pstyle("padding-relative-to").value),$.autoWidth=Math.max(U.w,V.width.val),tt.x=(-Bt+U.x1+U.x2+Zt)/2,$.autoHeight=Math.max(U.h,V.height.val),tt.y=(-$t+U.y1+U.y2+ee)/2}for(var T=0;Tg.x2?A:g.x2,g.y1=Tg.y2?I:g.y2,g.w=g.x2-g.x1,g.h=g.y2-g.y1)},A3=function(g,x){return x==null?g:xp(g,x.x1,x.y1,x.x2,x.y2)},Sk=function(g,x,T){return wp(g,x,T)},UE=function(g,x,T){if(!x.cy().headless()){var A=x._private,I=A.rstyle,O=I.arrowWidth/2,$=x.pstyle(T+"-arrow-shape").value,z,S;if($!=="none"){T==="source"?(z=I.srcX,S=I.srcY):T==="target"?(z=I.tgtX,S=I.tgtY):(z=I.midX,S=I.midY);var V=A.arrowBounds=A.arrowBounds||{},U=V[T]=V[T]||{};U.x1=z-O,U.y1=S-O,U.x2=z+O,U.y2=S+O,U.w=U.x2-U.x1,U.h=U.y2-U.y1,ME(U,1),xp(g,U.x1,U.y1,U.x2,U.y2)}}},WF=function(g,x,T){if(!x.cy().headless()){var A;T?A=T+"-":A="";var I=x._private,O=I.rstyle,$=x.pstyle(A+"label").strValue;if($){var z=x.pstyle("text-halign"),S=x.pstyle("text-valign"),V=Sk(O,"labelWidth",T),U=Sk(O,"labelHeight",T),tt=Sk(O,"labelX",T),at=Sk(O,"labelY",T),ut=x.pstyle(A+"text-margin-x").pfValue,dt=x.pstyle(A+"text-margin-y").pfValue,At=x.isEdge(),xt=x.pstyle(A+"text-rotation"),Mt=x.pstyle("text-outline-width").pfValue,Dt=x.pstyle("text-border-width").pfValue,Bt=Dt/2,Zt=x.pstyle("text-background-padding").pfValue,Kt=2,$t=U,ee=V,Ht=ee/2,ge=$t/2,be,re,Ne,ve;if(At)be=tt-Ht,re=tt+Ht,Ne=at-ge,ve=at+ge;else{switch(z.value){case"left":be=tt-ee,re=tt;break;case"center":be=tt-Ht,re=tt+Ht;break;case"right":be=tt,re=tt+ee;break}switch(S.value){case"top":Ne=at-$t,ve=at;break;case"center":Ne=at-ge,ve=at+ge;break;case"bottom":Ne=at,ve=at+$t;break}}be+=ut-Math.max(Mt,Bt)-Zt-Kt,re+=ut+Math.max(Mt,Bt)+Zt+Kt,Ne+=dt-Math.max(Mt,Bt)-Zt-Kt,ve+=dt+Math.max(Mt,Bt)+Zt+Kt;var fn=T||"main",$e=I.labelBounds,qe=$e[fn]=$e[fn]||{};qe.x1=be,qe.y1=Ne,qe.x2=re,qe.y2=ve,qe.w=re-be,qe.h=ve-Ne;var xn=At&&xt.strValue==="autorotate",Pn=xt.pfValue!=null&&xt.pfValue!==0;if(xn||Pn){var er=xn?Sk(I.rstyle,"labelAngle",T):xt.pfValue,Sn=Math.cos(er),Jn=Math.sin(er),fr=(be+re)/2,Sr=(Ne+ve)/2;if(!At){switch(z.value){case"left":fr=re;break;case"right":fr=be;break}switch(S.value){case"top":Sr=ve;break;case"bottom":Sr=Ne;break}}var wr=function(Fa,Fi){return Fa=Fa-fr,Fi=Fi-Sr,{x:Fa*Sn-Fi*Jn+fr,y:Fa*Jn+Fi*Sn+Sr}},cr=wr(be,Ne),bn=wr(be,ve),Tr=wr(re,Ne),xr=wr(re,ve);be=Math.min(cr.x,bn.x,Tr.x,xr.x),re=Math.max(cr.x,bn.x,Tr.x,xr.x),Ne=Math.min(cr.y,bn.y,Tr.y,xr.y),ve=Math.max(cr.y,bn.y,Tr.y,xr.y)}var fi=fn+"Rot",Ii=$e[fi]=$e[fi]||{};Ii.x1=be,Ii.y1=Ne,Ii.x2=re,Ii.y2=ve,Ii.w=re-be,Ii.h=ve-Ne,xp(g,be,Ne,re,ve),xp(I.labelBounds.all,be,Ne,re,ve)}return g}},NZ=function(g,x){var T=g._private.cy,A=T.styleEnabled(),I=T.headless(),O=zd(),$=g._private,z=g.isNode(),S=g.isEdge(),V,U,tt,at,ut,dt,At=$.rstyle,xt=z&&A?g.pstyle("bounds-expansion").pfValue:[0],Mt=function(Ls){return Ls.pstyle("display").value!=="none"},Dt=!A||Mt(g)&&(!S||Mt(g.source())&&Mt(g.target()));if(Dt){var Bt=0,Zt=0;A&&x.includeOverlays&&(Bt=g.pstyle("overlay-opacity").value,Bt!==0&&(Zt=g.pstyle("overlay-padding").value));var Kt=0,$t=0;A&&x.includeUnderlays&&(Kt=g.pstyle("underlay-opacity").value,Kt!==0&&($t=g.pstyle("underlay-padding").value));var ee=Math.max(Zt,$t),Ht=0,ge=0;if(A&&(Ht=g.pstyle("width").pfValue,ge=Ht/2),z&&x.includeNodes){var be=g.position();ut=be.x,dt=be.y;var re=g.outerWidth(),Ne=re/2,ve=g.outerHeight(),fn=ve/2;V=ut-Ne,U=ut+Ne,tt=dt-fn,at=dt+fn,xp(O,V,tt,U,at)}else if(S&&x.includeEdges)if(A&&!I){var $e=g.pstyle("curve-style").strValue;if(V=Math.min(At.srcX,At.midX,At.tgtX),U=Math.max(At.srcX,At.midX,At.tgtX),tt=Math.min(At.srcY,At.midY,At.tgtY),at=Math.max(At.srcY,At.midY,At.tgtY),V-=ge,U+=ge,tt-=ge,at+=ge,xp(O,V,tt,U,at),$e==="haystack"){var qe=At.haystackPts;if(qe&&qe.length===2){if(V=qe[0].x,tt=qe[0].y,U=qe[1].x,at=qe[1].y,V>U){var xn=V;V=U,U=xn}if(tt>at){var Pn=tt;tt=at,at=Pn}xp(O,V-ge,tt-ge,U+ge,at+ge)}}else if($e==="bezier"||$e==="unbundled-bezier"||$e==="segments"||$e==="taxi"){var er;switch($e){case"bezier":case"unbundled-bezier":er=At.bezierPts;break;case"segments":case"taxi":er=At.linePts;break}if(er!=null)for(var Sn=0;SnU){var bn=V;V=U,U=bn}if(tt>at){var Tr=tt;tt=at,at=Tr}V-=ge,U+=ge,tt-=ge,at+=ge,xp(O,V,tt,U,at)}if(A&&x.includeEdges&&S&&(UE(O,g,"mid-source"),UE(O,g,"mid-target"),UE(O,g,"source"),UE(O,g,"target")),A){var xr=g.pstyle("ghost").value==="yes";if(xr){var fi=g.pstyle("ghost-offset-x").pfValue,Ii=g.pstyle("ghost-offset-y").pfValue;xp(O,O.x1+fi,O.y1+Ii,O.x2+fi,O.y2+Ii)}}var oa=$.bodyBounds=$.bodyBounds||{};UN(oa,O),EL(oa,xt),ME(oa,1),A&&(V=O.x1,U=O.x2,tt=O.y1,at=O.y2,xp(O,V-ee,tt-ee,U+ee,at+ee));var Fa=$.overlayBounds=$.overlayBounds||{};UN(Fa,O),EL(Fa,xt),ME(Fa,1);var Fi=$.labelBounds=$.labelBounds||{};Fi.all!=null?dY(Fi.all):Fi.all=zd(),A&&x.includeLabels&&(x.includeMainLabels&&WF(O,g,null),S&&(x.includeSourceLabels&&WF(O,g,"source"),x.includeTargetLabels&&WF(O,g,"target")))}return O.x1=T0(O.x1),O.y1=T0(O.y1),O.x2=T0(O.x2),O.y2=T0(O.y2),O.w=T0(O.x2-O.x1),O.h=T0(O.y2-O.y1),O.w>0&&O.h>0&&Dt&&(EL(O,xt),ME(O,1)),O},KF=function(g){var x=0,T=function(O){return(O?1:0)<0&&arguments[0]!==void 0?arguments[0]:YZ,g=arguments.length>1?arguments[1]:void 0,x=0;x=0;$--)O($);return this},ym.removeAllListeners=function(){return this.removeListener("*")},ym.emit=ym.trigger=function(y,g,x){var T=this.listeners,A=T.length;return this.emitting++,yt(g)||(g=[g]),XZ(this,function(I,O){x!=null&&(T=[{event:O.event,type:O.type,namespace:O.namespace,callback:x}],A=T.length);for(var $=function(V){var U=T[V];if(U.type===O.type&&(!U.namespace||U.namespace===O.namespace||U.namespace===KZ)&&I.eventMatches(I.context,U,O)){var tt=[O];g!=null&&qN(tt,g),I.beforeEmit(I.context,U,O),U.conf&&U.conf.one&&(I.listeners=I.listeners.filter(function(dt){return dt!==U}));var at=I.callbackContext(I.context,U,O),ut=U.callback.apply(at,tt);I.afterEmit(I.context,U,O),ut===!1&&(O.stopPropagation(),O.preventDefault())}},z=0;z1&&!O){var $=this.length-1,z=this[$],S=z._private.data.id;this[$]=void 0,this[g]=z,I.set(S,{ele:z,index:g})}return this.length--,this},unmergeOne:function(g){g=g[0];var x=this._private,T=g._private.data.id,A=x.map,I=A.get(T);if(!I)return this;var O=I.index;return this.unmergeAt(O),this},unmerge:function(g){var x=this._private.cy;if(!g)return this;if(g&&Tt(g)){var T=g;g=x.mutableElements().filter(T)}for(var A=0;A=0;x--){var T=this[x];g(T)&&this.unmergeAt(x)}return this},map:function(g,x){for(var T=[],A=this,I=0;IT&&(T=z,A=$)}return{value:T,ele:A}},min:function(g,x){for(var T=1/0,A,I=this,O=0;O=0&&I"u"?"undefined":f(Symbol))!=g&&f(Symbol.iterator)!=g;x&&(XE[Symbol.iterator]=function(){var T=this,A={value:void 0,done:!1},I=0,O=this.length;return b({next:function(){return I1&&arguments[1]!==void 0?arguments[1]:!0,T=this[0],A=T.cy();if(A.styleEnabled()&&T){this.cleanStyle();var I=T._private.style[g];return I??(x?A.style().getDefaultProperty(g):null)}},numericStyle:function(g){var x=this[0];if(x.cy().styleEnabled()&&x){var T=x.pstyle(g);return T.pfValue!==void 0?T.pfValue:T.value}},numericStyleUnits:function(g){var x=this[0];if(x.cy().styleEnabled()&&x)return x.pstyle(g).units},renderedStyle:function(g){var x=this.cy();if(!x.styleEnabled())return this;var T=this[0];if(T)return x.style().getRenderedStyle(T,g)},style:function(g,x){var T=this.cy();if(!T.styleEnabled())return this;var A=!1,I=T.style();if(ft(g)){var O=g;I.applyBypass(this,O,A),this.emitAndNotify("style")}else if(Tt(g))if(x===void 0){var $=this[0];return $?I.getStylePropertyValue($,g):void 0}else I.applyBypass(this,g,x,A),this.emitAndNotify("style");else if(g===void 0){var z=this[0];return z?I.getRawStyle(z):void 0}return this},removeStyle:function(g){var x=this.cy();if(!x.styleEnabled())return this;var T=!1,A=x.style(),I=this;if(g===void 0)for(var O=0;O0&&g.push(V[0]),g.push($[0])}return this.spawn(g,!0).filter(y)},"neighborhood"),closedNeighborhood:function(g){return this.neighborhood().add(this).filter(g)},openNeighborhood:function(g){return this.neighborhood(g)}}),m1.neighbourhood=m1.neighborhood,m1.closedNeighbourhood=m1.closedNeighborhood,m1.openNeighbourhood=m1.openNeighborhood,Ke(m1,{source:ud(function(g){var x=this[0],T;return x&&(T=x._private.source||x.cy().collection()),T&&g?T.filter(g):T},"source"),target:ud(function(g){var x=this[0],T;return x&&(T=x._private.target||x.cy().collection()),T&&g?T.filter(g):T},"target"),sources:gB({attr:"source"}),targets:gB({attr:"target"})});function gB(y){return function(x){for(var T=[],A=0;A0);return O},component:function(){var g=this[0];return g.cy().mutableElements().components(g)[0]}}),m1.componentsOf=m1.components;var Gf=function(g,x){var T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,A=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(g===void 0){Ec("A collection must have a reference to the core");return}var I=new j2,O=!1;if(!x)x=[];else if(x.length>0&&ft(x[0])&&!_t(x[0])){O=!0;for(var $=[],z=new $5,S=0,V=x.length;S0&&arguments[0]!==void 0?arguments[0]:!0,g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,x=this,T=x.cy(),A=T._private,I=[],O=[],$,z=0,S=x.length;z0){for(var Pn=$.length===x.length?x:new Gf(T,$),er=0;er0&&arguments[0]!==void 0?arguments[0]:!0,g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,x=this,T=[],A={},I=x._private.cy;function O(ve){for(var fn=ve._private.edges,$e=0;$e0&&(y?be.emitAndNotify("remove"):g&&be.emit("remove"));for(var re=0;re0?re=ve:be=ve;while(Math.abs(Ne)>O&&++fn<$);return ve}function Zt(ge){for(var be=0,re=1,Ne=z-1;re!==Ne&&tt[re]<=ge;++re)be+=S;--re;var ve=(ge-tt[re])/(tt[re+1]-tt[re]),fn=be+ve*S,$e=xt(fn,y,x);return $e>=I?Mt(ge,fn):$e===0?fn:Bt(ge,be,be+S)}var Kt=!1;function $t(){Kt=!0,(y!==g||x!==T)&&Dt()}var ee=function(be){return Kt||$t(),y===g&&x===T?be:be===0?0:be===1?1:At(Zt(be),g,T)};ee.getControlPoints=function(){return[{x:y,y:g},{x,y:T}]};var Ht="generateBezier("+[y,g,x,T]+")";return ee.toString=function(){return Ht},ee}/*! Runge-Kutta spring physics function generator. Adapted from Framer.js, copyright Koen Bok. MIT License: http://en.wikipedia.org/wiki/MIT_License */var oJ=function(){function y(T){return-T.tension*T.x-T.friction*T.v}function g(T,A,I){var O={x:T.x+I.dx*A,v:T.v+I.dv*A,tension:T.tension,friction:T.friction};return{dx:O.v,dv:y(O)}}function x(T,A){var I={dx:T.v,dv:y(T)},O=g(T,A*.5,I),$=g(T,A*.5,O),z=g(T,A,$),S=1/6*(I.dx+2*(O.dx+$.dx)+z.dx),V=1/6*(I.dv+2*(O.dv+$.dv)+z.dv);return T.x=T.x+S*A,T.v=T.v+V*A,T}return function T(A,I,O){var $={x:-1,v:0,tension:null,friction:null},z=[0],S=0,V=1/1e4,U=16/1e3,tt,at,ut;for(A=parseFloat(A)||500,I=parseFloat(I)||20,O=O||null,$.tension=A,$.friction=I,tt=O!==null,tt?(S=T(A,I),at=S/O*U):at=U;ut=x(ut||$,at),z.push(1+ut.x),S+=16,Math.abs(ut.x)>V&&Math.abs(ut.v)>V;);return tt?function(dt){return z[dt*(z.length-1)|0]}:S}}(),Eu=function(g,x,T,A){var I=aJ(g,x,T,A);return function(O,$,z){return O+($-O)*I(z)}},tT={linear:function(g,x,T){return g+(x-g)*T},ease:Eu(.25,.1,.25,1),"ease-in":Eu(.42,0,1,1),"ease-out":Eu(0,0,.58,1),"ease-in-out":Eu(.42,0,.58,1),"ease-in-sine":Eu(.47,0,.745,.715),"ease-out-sine":Eu(.39,.575,.565,1),"ease-in-out-sine":Eu(.445,.05,.55,.95),"ease-in-quad":Eu(.55,.085,.68,.53),"ease-out-quad":Eu(.25,.46,.45,.94),"ease-in-out-quad":Eu(.455,.03,.515,.955),"ease-in-cubic":Eu(.55,.055,.675,.19),"ease-out-cubic":Eu(.215,.61,.355,1),"ease-in-out-cubic":Eu(.645,.045,.355,1),"ease-in-quart":Eu(.895,.03,.685,.22),"ease-out-quart":Eu(.165,.84,.44,1),"ease-in-out-quart":Eu(.77,0,.175,1),"ease-in-quint":Eu(.755,.05,.855,.06),"ease-out-quint":Eu(.23,1,.32,1),"ease-in-out-quint":Eu(.86,0,.07,1),"ease-in-expo":Eu(.95,.05,.795,.035),"ease-out-expo":Eu(.19,1,.22,1),"ease-in-out-expo":Eu(1,0,0,1),"ease-in-circ":Eu(.6,.04,.98,.335),"ease-out-circ":Eu(.075,.82,.165,1),"ease-in-out-circ":Eu(.785,.135,.15,.86),spring:function(g,x,T){if(T===0)return tT.linear;var A=oJ(g,x,T);return function(I,O,$){return I+(O-I)*A($)}},"cubic-bezier":Eu};function vB(y,g,x,T,A){if(T===1||g===x)return x;var I=A(g,x,T);return y==null||((y.roundValue||y.color)&&(I=Math.round(I)),y.min!==void 0&&(I=Math.max(I,y.min)),y.max!==void 0&&(I=Math.min(I,y.max))),I}function wB(y,g){return y.pfValue!=null||y.value!=null?y.pfValue!=null&&(g==null||g.type.units!=="%")?y.pfValue:y.value:y}function i6(y,g,x,T,A){var I=A!=null?A.type:null;x<0?x=0:x>1&&(x=1);var O=wB(y,A),$=wB(g,A);if(rt(O)&&rt($))return vB(I,O,$,x,T);if(yt(O)&&yt($)){for(var z=[],S=0;S<$.length;S++){var V=O[S],U=$[S];if(V!=null&&U!=null){var tt=vB(I,V,U,x,T);z.push(tt)}else z.push(U)}return z}}function cJ(y,g,x,T){var A=!T,I=y._private,O=g._private,$=O.easing,z=O.startTime,S=T?y:y.cy(),V=S.style();if(!O.easingImpl)if($==null)O.easingImpl=tT.linear;else{var U;if(Tt($)){var tt=V.parse("transition-timing-function",$);U=tt.value}else U=$;var at,ut;Tt(U)?(at=U,ut=[]):(at=U[1],ut=U.slice(2).map(function(Pn){return+Pn})),ut.length>0?(at==="spring"&&ut.push(O.duration),O.easingImpl=tT[at].apply(null,ut)):O.easingImpl=tT[at]}var dt=O.easingImpl,At;if(O.duration===0?At=1:At=(x-z)/O.duration,O.applying&&(At=O.progress),At<0?At=0:At>1&&(At=1),O.delay==null){var xt=O.startPosition,Mt=O.position;if(Mt&&A&&!y.locked()){var Dt={};Ik(xt.x,Mt.x)&&(Dt.x=i6(xt.x,Mt.x,At,dt)),Ik(xt.y,Mt.y)&&(Dt.y=i6(xt.y,Mt.y,At,dt)),y.position(Dt)}var Bt=O.startPan,Zt=O.pan,Kt=I.pan,$t=Zt!=null&&T;$t&&(Ik(Bt.x,Zt.x)&&(Kt.x=i6(Bt.x,Zt.x,At,dt)),Ik(Bt.y,Zt.y)&&(Kt.y=i6(Bt.y,Zt.y,At,dt)),y.emit("pan"));var ee=O.startZoom,Ht=O.zoom,ge=Ht!=null&&T;ge&&(Ik(ee,Ht)&&(I.zoom=wk(I.minZoom,i6(ee,Ht,At,dt),I.maxZoom)),y.emit("zoom")),($t||ge)&&y.emit("viewport");var be=O.style;if(be&&be.length>0&&A){for(var re=0;re=0;$t--){var ee=Kt[$t];ee()}Kt.splice(0,Kt.length)},Mt=at.length-1;Mt>=0;Mt--){var Dt=at[Mt],Bt=Dt._private;if(Bt.stopped){at.splice(Mt,1),Bt.hooked=!1,Bt.playing=!1,Bt.started=!1,xt(Bt.frames);continue}!Bt.playing&&!Bt.applying||(Bt.playing&&Bt.applying&&(Bt.applying=!1),Bt.started||uJ(V,Dt,y),cJ(V,Dt,y,U),Bt.applying&&(Bt.applying=!1),xt(Bt.frames),Bt.step!=null&&Bt.step(y),Dt.completed()&&(at.splice(Mt,1),Bt.hooked=!1,Bt.playing=!1,Bt.started=!1,xt(Bt.completes)),dt=!0)}return!U&&at.length===0&&ut.length===0&&T.push(V),dt}for(var I=!1,O=0;O0?g.notify("draw",x):g.notify("draw")),x.unmerge(T),g.emit("step")}var lJ={animate:jc.animate(),animation:jc.animation(),animated:jc.animated(),clearQueue:jc.clearQueue(),delay:jc.delay(),delayAnimation:jc.delayAnimation(),stop:jc.stop(),addToAnimationPool:function(g){var x=this;x.styleEnabled()&&x._private.aniEles.merge(g)},stopAnimationLoop:function(){this._private.animationsRunning=!1},startAnimationLoop:function(){var g=this;if(g._private.animationsRunning=!0,!g.styleEnabled())return;function x(){g._private.animationsRunning&&Ma(function(I){mB(I,g),x()})}var T=g.renderer();T&&T.beforeRender?T.beforeRender(function(I,O){mB(O,g)},T.beforeRenderPriorities.animations):x()}},hJ={qualifierCompare:function(g,x){return g==null||x==null?g==null&&x==null:g.sameText(x)},eventMatches:function(g,x,T){var A=x.qualifier;return A!=null?g!==T.target&&_t(T.target)&&A.matches(T.target):!0},addEventFields:function(g,x){x.cy=g,x.target=g},callbackContext:function(g,x,T){return x.qualifier!=null?T.target:g}},eT=function(g){return Tt(g)?new wm(g):g},yB={createEmitter:function(){var g=this._private;return g.emitter||(g.emitter=new KE(hJ,this)),this},emitter:function(){return this._private.emitter},on:function(g,x,T){return this.emitter().on(g,eT(x),T),this},removeListener:function(g,x,T){return this.emitter().removeListener(g,eT(x),T),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},one:function(g,x,T){return this.emitter().one(g,eT(x),T),this},once:function(g,x,T){return this.emitter().one(g,eT(x),T),this},emit:function(g,x){return this.emitter().emit(g,x),this},emitAndNotify:function(g,x){return this.emit(g),this.notify(g,x),this}};jc.eventAliasesOn(yB);var qL={png:function(g){var x=this._private.renderer;return g=g||{},x.png(g)},jpg:function(g){var x=this._private.renderer;return g=g||{},g.bg=g.bg||"#fff",x.jpg(g)}};qL.jpeg=qL.jpg;var nT={layout:function(g){var x=this;if(g==null){Ec("Layout options must be specified to make a layout");return}if(g.name==null){Ec("A `name` must be specified to make a layout");return}var T=g.name,A=x.extension("layout",T);if(A==null){Ec("No such layout `"+T+"` found. Did you forget to import it and `cytoscape.use()` it?");return}var I;Tt(g.eles)?I=x.$(g.eles):I=g.eles!=null?g.eles:x.$();var O=new A(Ke({},g,{cy:x,eles:I}));return O}};nT.createLayout=nT.makeLayout=nT.layout;var fJ={notify:function(g,x){var T=this._private;if(this.batching()){T.batchNotifications=T.batchNotifications||{};var A=T.batchNotifications[g]=T.batchNotifications[g]||this.collection();x!=null&&A.merge(x);return}if(T.notificationsEnabled){var I=this.renderer();this.destroyed()||!I||I.notify(g,x)}},notifications:function(g){var x=this._private;return g===void 0?x.notificationsEnabled:(x.notificationsEnabled=!!g,this)},noNotifications:function(g){this.notifications(!1),g(),this.notifications(!0)},batching:function(){return this._private.batchCount>0},startBatch:function(){var g=this._private;return g.batchCount==null&&(g.batchCount=0),g.batchCount===0&&(g.batchStyleEles=this.collection(),g.batchNotifications={}),g.batchCount++,this},endBatch:function(){var g=this._private;if(g.batchCount===0)return this;if(g.batchCount--,g.batchCount===0){g.batchStyleEles.updateStyle();var x=this.renderer();Object.keys(g.batchNotifications).forEach(function(T){var A=g.batchNotifications[T];A.empty()?x.notify(T):x.notify(T,A)})}return this},batch:function(g){return this.startBatch(),g(),this.endBatch(),this},batchData:function(g){var x=this;return this.batch(function(){for(var T=Object.keys(g),A=0;A0;)x.removeChild(x.childNodes[0]);g._private.renderer=null,g.mutableElements().forEach(function(T){var A=T._private;A.rscratch={},A.rstyle={},A.animation.current=[],A.animation.queue=[]})},onRender:function(g){return this.on("render",g)},offRender:function(g){return this.off("render",g)}};HL.invalidateDimensions=HL.resize;var rT={collection:function(g,x){return Tt(g)?this.$(g):ht(g)?g.collection():yt(g)?(x||(x={}),new Gf(this,g,x.unique,x.removed)):new Gf(this)},nodes:function(g){var x=this.$(function(T){return T.isNode()});return g?x.filter(g):x},edges:function(g){var x=this.$(function(T){return T.isEdge()});return g?x.filter(g):x},$:function(g){var x=this._private.elements;return g?x.filter(g):x.spawnSelf()},mutableElements:function(){return this._private.elements}};rT.elements=rT.filter=rT.$;var y1={},Ok="t",gJ="f";y1.apply=function(y){for(var g=this,x=g._private,T=x.cy,A=T.collection(),I=0;I0;if(tt||U&&at){var ut=void 0;tt&&at||tt?ut=S.properties:at&&(ut=S.mappedProperties);for(var dt=0;dt1&&(Bt=1),$.color){var Kt=T.valueMin[0],$t=T.valueMax[0],ee=T.valueMin[1],Ht=T.valueMax[1],ge=T.valueMin[2],be=T.valueMax[2],re=T.valueMin[3]==null?1:T.valueMin[3],Ne=T.valueMax[3]==null?1:T.valueMax[3],ve=[Math.round(Kt+($t-Kt)*Bt),Math.round(ee+(Ht-ee)*Bt),Math.round(ge+(be-ge)*Bt),Math.round(re+(Ne-re)*Bt)];I={bypass:T.bypass,name:T.name,value:ve,strValue:"rgb("+ve[0]+", "+ve[1]+", "+ve[2]+")"}}else if($.number){var fn=T.valueMin+(T.valueMax-T.valueMin)*Bt;I=this.parse(T.name,fn,T.bypass,tt)}else return!1;if(!I)return dt(),!1;I.mapping=T,T=I;break}case O.data:{for(var $e=T.field.split("."),qe=U.data,xn=0;xn<$e.length&&qe;xn++){var Pn=$e[xn];qe=qe[Pn]}if(qe!=null&&(I=this.parse(T.name,qe,T.bypass,tt)),!I)return dt(),!1;I.mapping=T,T=I;break}case O.fn:{var er=T.value,Sn=T.fnValue!=null?T.fnValue:er(y);if(T.prevFnValue=Sn,Sn==null)return Wo("Custom function mappers may not return null (i.e. `"+T.name+"` for ele `"+y.id()+"` is null)"),!1;if(I=this.parse(T.name,Sn,T.bypass,tt),!I)return Wo("Custom function mappers may not return invalid values for the property type (i.e. `"+T.name+"` for ele `"+y.id()+"` is invalid)"),!1;I.mapping=oh(T),T=I;break}case void 0:break;default:return!1}return z?(V?T.bypassed=S.bypassed:T.bypassed=S,A[T.name]=T):V?S.bypassed=T:A[T.name]=T,ut(),!0},y1.cleanElements=function(y,g){for(var x=0;x0&&I>0){for(var $={},z=!1,S=0;S0?y.delayAnimation(O).play().promise().then(Dt):Dt()}).then(function(){return y.animation({style:$,duration:I,easing:y.pstyle("transition-timing-function").value,queue:!1}).play().promise()}).then(function(){x.removeBypasses(y,A),y.emitAndNotify("style"),T.transitioning=!1})}else T.transitioning&&(this.removeBypasses(y,A),y.emitAndNotify("style"),T.transitioning=!1)},y1.checkTrigger=function(y,g,x,T,A,I){var O=this.properties[g],$=A(O);$!=null&&$(x,T)&&I(O)},y1.checkZOrderTrigger=function(y,g,x,T){var A=this;this.checkTrigger(y,g,x,T,function(I){return I.triggersZOrder},function(){A._private.cy.notify("zorder",y)})},y1.checkBoundsTrigger=function(y,g,x,T){this.checkTrigger(y,g,x,T,function(A){return A.triggersBounds},function(A){y.dirtyCompoundBoundsCache(),y.dirtyBoundingBoxCache(),A.triggersBoundsOfParallelBeziers&&(g==="curve-style"&&(x==="bezier"||T==="bezier")||g==="display"&&(x==="none"||T==="none"))&&y.parallelEdges().forEach(function(I){I.isBundledBezier()&&I.dirtyBoundingBoxCache()})})},y1.checkTriggers=function(y,g,x,T){y.dirtyStyleCache(),this.checkZOrderTrigger(y,g,x,T),this.checkBoundsTrigger(y,g,x,T)};var Pk={};Pk.applyBypass=function(y,g,x,T){var A=this,I=[],O=!0;if(g==="*"||g==="**"){if(x!==void 0)for(var $=0;$A.length?T=T.substr(A.length):T=""}function z(){I.length>O.length?I=I.substr(O.length):I=""}for(;;){var S=T.match(/^\s*$/);if(S)break;var V=T.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!V){Wo("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+T);break}A=V[0];var U=V[1];if(U!=="core"){var tt=new wm(U);if(tt.invalid){Wo("Skipping parsing of block: Invalid selector found in string stylesheet: "+U),$();continue}}var at=V[2],ut=!1;I=at;for(var dt=[];;){var At=I.match(/^\s*$/);if(At)break;var xt=I.match(/^\s*(.+?)\s*:\s*(.+?)(?:\s*;|\s*$)/);if(!xt){Wo("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+at),ut=!0;break}O=xt[0];var Mt=xt[1],Dt=xt[2],Bt=g.properties[Mt];if(!Bt){Wo("Skipping property: Invalid property name in: "+O),z();continue}var Zt=x.parse(Mt,Dt);if(!Zt){Wo("Skipping property: Invalid property definition in: "+O),z();continue}dt.push({name:Mt,val:Dt}),z()}if(ut){$();break}x.selector(U);for(var Kt=0;Kt=7&&g[0]==="d"&&(V=new RegExp($.data.regex).exec(g))){if(x)return!1;var tt=$.data;return{name:y,value:V,strValue:""+g,mapped:tt,field:V[1],bypass:x}}else if(g.length>=10&&g[0]==="m"&&(U=new RegExp($.mapData.regex).exec(g))){if(x||S.multiple)return!1;var at=$.mapData;if(!(S.color||S.number))return!1;var ut=this.parse(y,U[4]);if(!ut||ut.mapped)return!1;var dt=this.parse(y,U[5]);if(!dt||dt.mapped)return!1;if(ut.pfValue===dt.pfValue||ut.strValue===dt.strValue)return Wo("`"+y+": "+g+"` is not a valid mapper because the output range is zero; converting to `"+y+": "+ut.strValue+"`"),this.parse(y,ut.strValue);if(S.color){var At=ut.value,xt=dt.value,Mt=At[0]===xt[0]&&At[1]===xt[1]&&At[2]===xt[2]&&(At[3]===xt[3]||(At[3]==null||At[3]===1)&&(xt[3]==null||xt[3]===1));if(Mt)return!1}return{name:y,value:U,strValue:""+g,mapped:at,field:U[1],fieldMin:parseFloat(U[2]),fieldMax:parseFloat(U[3]),valueMin:ut.value,valueMax:dt.value,bypass:x}}}if(S.multiple&&T!=="multiple"){var Dt;if(z?Dt=g.split(/\s+/):yt(g)?Dt=g:Dt=[g],S.evenMultiple&&Dt.length%2!==0)return null;for(var Bt=[],Zt=[],Kt=[],$t="",ee=!1,Ht=0;Ht0?" ":"")+ge.strValue}return S.validate&&!S.validate(Bt,Zt)?null:S.singleEnum&&ee?Bt.length===1&&Tt(Bt[0])?{name:y,value:Bt[0],strValue:Bt[0],bypass:x}:null:{name:y,value:Bt,pfValue:Kt,strValue:$t,bypass:x,units:Zt}}var be=function(){for(var xr=0;xrS.max||S.strictMax&&g===S.max))return null;var $e={name:y,value:g,strValue:""+g+(re||""),units:re,bypass:x};return S.unitless||re!=="px"&&re!=="em"?$e.pfValue=g:$e.pfValue=re==="px"||!re?g:this.getEmSizeInPixels()*g,(re==="ms"||re==="s")&&($e.pfValue=re==="ms"?g:1e3*g),(re==="deg"||re==="rad")&&($e.pfValue=re==="rad"?g:uY(g)),re==="%"&&($e.pfValue=g/100),$e}else if(S.propList){var qe=[],xn=""+g;if(xn!=="none"){for(var Pn=xn.split(/\s*,\s*|\s+/),er=0;er0&&$>0&&!isNaN(T.w)&&!isNaN(T.h)&&T.w>0&&T.h>0){z=Math.min((O-2*x)/T.w,($-2*x)/T.h),z=z>this._private.maxZoom?this._private.maxZoom:z,z=z=T.minZoom&&(T.maxZoom=x),this},minZoom:function(g){return g===void 0?this._private.minZoom:this.zoomRange({min:g})},maxZoom:function(g){return g===void 0?this._private.maxZoom:this.zoomRange({max:g})},getZoomedViewport:function(g){var x=this._private,T=x.pan,A=x.zoom,I,O,$=!1;if(x.zoomingEnabled||($=!0),rt(g)?O=g:ft(g)&&(O=g.level,g.position!=null?I=AE(g.position,A,T):g.renderedPosition!=null&&(I=g.renderedPosition),I!=null&&!x.panningEnabled&&($=!0)),O=O>x.maxZoom?x.maxZoom:O,O=Ox.maxZoom||!x.zoomingEnabled?O=!0:(x.zoom=z,I.push("zoom"))}if(A&&(!O||!g.cancelOnFailedZoom)&&x.panningEnabled){var S=g.pan;rt(S.x)&&(x.pan.x=S.x,$=!1),rt(S.y)&&(x.pan.y=S.y,$=!1),$||I.push("pan")}return I.length>0&&(I.push("viewport"),this.emit(I.join(" ")),this.notify("viewport")),this},center:function(g){var x=this.getCenterPan(g);return x&&(this._private.pan=x,this.emit("pan viewport"),this.notify("viewport")),this},getCenterPan:function(g,x){if(this._private.panningEnabled){if(Tt(g)){var T=g;g=this.mutableElements().filter(T)}else ht(g)||(g=this.mutableElements());if(g.length!==0){var A=g.boundingBox(),I=this.width(),O=this.height();x=x===void 0?this._private.zoom:x;var $={x:(I-x*(A.x1+A.x2))/2,y:(O-x*(A.y1+A.y2))/2};return $}}},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 g=this._private,x=g.container;return g.sizeCache=g.sizeCache||(x?function(){var T=R.getComputedStyle(x),A=function(O){return parseFloat(T.getPropertyValue(O))};return{width:x.clientWidth-A("padding-left")-A("padding-right"),height:x.clientHeight-A("padding-top")-A("padding-bottom")}}():{width:1,height:1})},width:function(){return this.size().width},height:function(){return this.size().height},extent:function(){var g=this._private.pan,x=this._private.zoom,T=this.renderedExtent(),A={x1:(T.x1-g.x)/x,x2:(T.x2-g.x)/x,y1:(T.y1-g.y)/x,y2:(T.y2-g.y)/x};return A.w=A.x2-A.x1,A.h=A.y2-A.y1,A},renderedExtent:function(){var g=this.width(),x=this.height();return{x1:0,y1:0,x2:g,y2:x,w:g,h:x}},multiClickDebounceTime:function(g){if(g)this._private.multiClickDebounceTime=g;else return this._private.multiClickDebounceTime;return this}};L3.centre=L3.center,L3.autolockNodes=L3.autolock,L3.autoungrabifyNodes=L3.autoungrabify;var Nk={data:jc.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:jc.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:jc.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:jc.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};Nk.attr=Nk.data,Nk.removeAttr=Nk.removeData;var Fk=function(g){var x=this;g=Ke({},g);var T=g.container;T&&!gt(T)&>(T[0])&&(T=T[0]);var A=T?T._cyreg:null;A=A||{},A&&A.cy&&(A.cy.destroy(),A={});var I=A.readies=A.readies||[];T&&(T._cyreg=A),A.cy=x;var O=R!==void 0&&T!==void 0&&!g.headless,$=g;$.layout=Ke({name:O?"grid":"null"},$.layout),$.renderer=Ke({name:O?"canvas":"null"},$.renderer);var z=function(ut,dt,At){return dt!==void 0?dt:At!==void 0?At:ut},S=this._private={container:T,ready:!1,options:$,elements:new Gf(this),listeners:[],aniEles:new Gf(this),data:$.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:1e-50,maxZoom:1e50,zoomingEnabled:z(!0,$.zoomingEnabled),userZoomingEnabled:z(!0,$.userZoomingEnabled),panningEnabled:z(!0,$.panningEnabled),userPanningEnabled:z(!0,$.userPanningEnabled),boxSelectionEnabled:z(!0,$.boxSelectionEnabled),autolock:z(!1,$.autolock,$.autolockNodes),autoungrabify:z(!1,$.autoungrabify,$.autoungrabifyNodes),autounselectify:z(!1,$.autounselectify),styleEnabled:$.styleEnabled===void 0?O:$.styleEnabled,zoom:rt($.zoom)?$.zoom:1,pan:{x:ft($.pan)&&rt($.pan.x)?$.pan.x:0,y:ft($.pan)&&rt($.pan.y)?$.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1,multiClickDebounceTime:z(250,$.multiClickDebounceTime)};this.createEmitter(),this.selectionType($.selectionType),this.zoomRange({min:$.minZoom,max:$.maxZoom});var V=function(ut,dt){var At=ut.some(It);if(At)return W5.all(ut).then(dt);dt(ut)};S.styleEnabled&&x.setStyle([]);var U=Ke({},$,$.renderer);x.initRenderer(U);var tt=function(ut,dt,At){x.notifications(!1);var xt=x.mutableElements();xt.length>0&&xt.remove(),ut!=null&&(ft(ut)||yt(ut))&&x.add(ut),x.one("layoutready",function(Dt){x.notifications(!0),x.emit(Dt),x.one("load",dt),x.emitAndNotify("load")}).one("layoutstop",function(){x.one("done",At),x.emit("done")});var Mt=Ke({},x._private.options.layout);Mt.eles=x.elements(),x.layout(Mt).run()};V([$.style,$.elements],function(at){var ut=at[0],dt=at[1];S.styleEnabled&&x.style().append(ut),tt(dt,function(){x.startAnimationLoop(),S.ready=!0,kt($.ready)&&x.on("ready",$.ready);for(var At=0;At0,z=zd(g.boundingBox?g.boundingBox:{x1:0,y1:0,w:x.width(),h:x.height()}),S;if(ht(g.roots))S=g.roots;else if(yt(g.roots)){for(var V=[],U=0;U0;){var fn=ve(),$e=ge(fn,re);if($e)fn.outgoers().filter(function(Fi){return Fi.isNode()&&T.has(Fi)}).forEach(Ne);else if($e===null){Wo("Detected double maximal shift for node `"+fn.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}Ht();var qe=0;if(g.avoidOverlap)for(var xn=0;xn0&&xt[0].length<=3?ea/2:0),Hn=2*Math.PI/xt[es].length*Ri;return es===0&&xt[0].length===1&&(Qt=1),{x:Ii.x+Qt*Math.cos(Hn),y:Ii.y+Qt*Math.sin(Hn)}}else{var Fr={x:Ii.x+(Ri+1-(as+1)/2)*no,y:(es+1)*ca};return Fr}};return T.nodes().layoutPositions(this,g,Fa),this};var wJ={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(g,x){return!0},ready:void 0,stop:void 0,transform:function(g,x){return x}};function oT(y){this.options=Ke({},wJ,y)}oT.prototype.run=function(){var y=this.options,g=y,x=y.cy,T=g.eles,A=g.counterclockwise!==void 0?!g.counterclockwise:g.clockwise,I=T.nodes().not(":parent");g.sort&&(I=I.sort(g.sort));for(var O=zd(g.boundingBox?g.boundingBox:{x1:0,y1:0,w:x.width(),h:x.height()}),$={x:O.x1+O.w/2,y:O.y1+O.h/2},z=g.sweep===void 0?2*Math.PI-2*Math.PI/I.length:g.sweep,S=z/Math.max(1,I.length-1),V,U=0,tt=0;tt1&&g.avoidOverlap){U*=1.75;var xt=Math.cos(S)-Math.cos(0),Mt=Math.sin(S)-Math.sin(0),Dt=Math.sqrt(U*U/(xt*xt+Mt*Mt));V=Math.max(Dt,V)}var Bt=function(Kt,$t){var ee=g.startAngle+$t*S*(A?1:-1),Ht=V*Math.cos(ee),ge=V*Math.sin(ee),be={x:$.x+Ht,y:$.y+ge};return be};return T.nodes().layoutPositions(this,g,Bt),this};var mJ={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(g){return g.degree()},levelWidth:function(g){return g.maxDegree()/4},animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(g,x){return!0},ready:void 0,stop:void 0,transform:function(g,x){return x}};function kB(y){this.options=Ke({},mJ,y)}kB.prototype.run=function(){for(var y=this.options,g=y,x=g.counterclockwise!==void 0?!g.counterclockwise:g.clockwise,T=y.cy,A=g.eles,I=A.nodes().not(":parent"),O=zd(g.boundingBox?g.boundingBox:{x1:0,y1:0,w:T.width(),h:T.height()}),$={x:O.x1+O.w/2,y:O.y1+O.h/2},z=[],S=0,V=0;V0){var Zt=Math.abs(Mt[0].value-Bt.value);Zt>=At&&(Mt=[],xt.push(Mt))}Mt.push(Bt)}var Kt=S+g.minNodeSpacing;if(!g.avoidOverlap){var $t=xt.length>0&&xt[0].length>1,ee=Math.min(O.w,O.h)/2-Kt,Ht=ee/(xt.length+$t?1:0);Kt=Math.min(Kt,Ht)}for(var ge=0,be=0;be1&&g.avoidOverlap){var fn=Math.cos(ve)-Math.cos(0),$e=Math.sin(ve)-Math.sin(0),qe=Math.sqrt(Kt*Kt/(fn*fn+$e*$e));ge=Math.max(qe,ge)}re.r=ge,ge+=Kt}if(g.equidistant){for(var xn=0,Pn=0,er=0;er=y.numIter||(SJ(T,y),T.temperature=T.temperature*y.coolingFactor,T.temperature=y.animationThreshold&&I(),Ma(U)}};V()}else{for(;S;)S=O(z),z++;_B(T,y),$()}return this},cT.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this},cT.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};var xJ=function(g,x,T){for(var A=T.eles.edges(),I=T.eles.nodes(),O={isCompound:g.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:I.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:A.size(),temperature:T.initialTemp,clientWidth:g.width(),clientHeight:g.width(),boundingBox:zd(T.boundingBox?T.boundingBox:{x1:0,y1:0,w:g.width(),h:g.height()})},$=T.eles.components(),z={},S=0;S<$.length;S++)for(var V=$[S],U=0;U0){O.graphSet.push($t);for(var S=0;S<$t.length;S++)At[++Mt]=$t[S]}}for(var S=0;SA.count?0:A.graph},EJ=function y(g,x,T,A){var I=A.graphSet[T];if(-10)var U=A.nodeOverlap*V,tt=Math.sqrt($*$+z*z),at=U*$/tt,ut=U*z/tt;else var dt=uT(g,$,z),At=uT(x,-1*$,-1*z),xt=At.x-dt.x,Mt=At.y-dt.y,Dt=xt*xt+Mt*Mt,tt=Math.sqrt(Dt),U=(g.nodeRepulsion+x.nodeRepulsion)/Dt,at=U*xt/tt,ut=U*Mt/tt;g.isLocked||(g.offsetX-=at,g.offsetY-=ut),x.isLocked||(x.offsetX+=at,x.offsetY+=ut)}},MJ=function(g,x,T,A){if(T>0)var I=g.maxX-x.minX;else var I=x.maxX-g.minX;if(A>0)var O=g.maxY-x.minY;else var O=x.maxY-g.minY;return I>=0&&O>=0?Math.sqrt(I*I+O*O):0},uT=function(g,x,T){var A=g.positionX,I=g.positionY,O=g.height||1,$=g.width||1,z=T/x,S=O/$,V={};return x===0&&0T?(V.x=A,V.y=I+O/2,V):0x&&-1*S<=z&&z<=S?(V.x=A-$/2,V.y=I-$*T/2/x,V):0=S)?(V.x=A+O*x/2/T,V.y=I+O/2,V):(0>T&&(z<=-1*S||z>=S)&&(V.x=A-O*x/2/T,V.y=I-O/2),V)},DJ=function(g,x){for(var T=0;TT){var At=x.gravity*at/dt,xt=x.gravity*ut/dt;tt.offsetX+=At,tt.offsetY+=xt}}}}},OJ=function(g,x){var T=[],A=0,I=-1;for(T.push.apply(T,g.graphSet[0]),I+=g.graphSet[0].length;A<=I;){var O=T[A++],$=g.idToIndex[O],z=g.layoutNodes[$],S=z.children;if(0T)var I={x:T*g/A,y:T*x/A};else var I={x:g,y:x};return I},FJ=function y(g,x){var T=g.parentId;if(T!=null){var A=x.layoutNodes[x.idToIndex[T]],I=!1;if((A.maxX==null||g.maxX+A.padRight>A.maxX)&&(A.maxX=g.maxX+A.padRight,I=!0),(A.minX==null||g.minX-A.padLeftA.maxY)&&(A.maxY=g.maxY+A.padBottom,I=!0),(A.minY==null||g.minY-A.padTopxt&&(ut+=At+x.componentSpacing,at=0,dt=0,At=0)}}},BJ={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(g){},sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(g,x){return!0},ready:void 0,stop:void 0,transform:function(g,x){return x}};function CB(y){this.options=Ke({},BJ,y)}CB.prototype.run=function(){var y=this.options,g=y,x=y.cy,T=g.eles,A=T.nodes().not(":parent");g.sort&&(A=A.sort(g.sort));var I=zd(g.boundingBox?g.boundingBox:{x1:0,y1:0,w:x.width(),h:x.height()});if(I.h===0||I.w===0)T.nodes().layoutPositions(this,g,function(fr){return{x:I.x1,y:I.y1}});else{var O=A.size(),$=Math.sqrt(O*I.h/I.w),z=Math.round($),S=Math.round(I.w/I.h*$),V=function(Sr){if(Sr==null)return Math.min(z,S);var wr=Math.min(z,S);wr==z?z=Sr:S=Sr},U=function(Sr){if(Sr==null)return Math.max(z,S);var wr=Math.max(z,S);wr==z?z=Sr:S=Sr},tt=g.rows,at=g.cols!=null?g.cols:g.columns;if(tt!=null&&at!=null)z=tt,S=at;else if(tt!=null&&at==null)z=tt,S=Math.ceil(O/z);else if(tt==null&&at!=null)S=at,z=Math.ceil(O/S);else if(S*z>O){var ut=V(),dt=U();(ut-1)*dt>=O?V(ut-1):(dt-1)*ut>=O&&U(dt-1)}else for(;S*z=O?U(xt+1):V(At+1)}var Mt=I.w/S,Dt=I.h/z;if(g.condense&&(Mt=0,Dt=0),g.avoidOverlap)for(var Bt=0;Bt=S&&(fn=0,ve++)},qe={},xn=0;xn(fn=kY(y,g,$e[qe],$e[qe+1],$e[qe+2],$e[qe+3])))return At($t,fn),!0}else if(Ht.edgeType==="bezier"||Ht.edgeType==="multibezier"||Ht.edgeType==="self"||Ht.edgeType==="compound"){for(var $e=Ht.allpts,qe=0;qe+5(fn=xY(y,g,$e[qe],$e[qe+1],$e[qe+2],$e[qe+3],$e[qe+4],$e[qe+5])))return At($t,fn),!0}for(var xn=xn||ee.source,Pn=Pn||ee.target,er=A.getArrowWidth(ge,be),Sn=[{name:"source",x:Ht.arrowStartX,y:Ht.arrowStartY,angle:Ht.srcArrowAngle},{name:"target",x:Ht.arrowEndX,y:Ht.arrowEndY,angle:Ht.tgtArrowAngle},{name:"mid-source",x:Ht.midX,y:Ht.midY,angle:Ht.midsrcArrowAngle},{name:"mid-target",x:Ht.midX,y:Ht.midY,angle:Ht.midtgtArrowAngle}],qe=0;qe0&&(xt(xn),xt(Pn))}function Dt($t,ee,Ht){return wp($t,ee,Ht)}function Bt($t,ee){var Ht=$t._private,ge=tt,be;ee?be=ee+"-":be="",$t.boundingBox();var re=Ht.labelBounds[ee||"main"],Ne=$t.pstyle(be+"label").value,ve=$t.pstyle("text-events").strValue==="yes";if(!(!ve||!Ne)){var fn=Dt(Ht.rscratch,"labelX",ee),$e=Dt(Ht.rscratch,"labelY",ee),qe=Dt(Ht.rscratch,"labelAngle",ee),xn=$t.pstyle(be+"text-margin-x").pfValue,Pn=$t.pstyle(be+"text-margin-y").pfValue,er=re.x1-ge-xn,Sn=re.x2+ge-xn,Jn=re.y1-ge-Pn,fr=re.y2+ge-Pn;if(qe){var Sr=Math.cos(qe),wr=Math.sin(qe),cr=function(Fa,Fi){return Fa=Fa-fn,Fi=Fi-$e,{x:Fa*Sr-Fi*wr+fn,y:Fa*wr+Fi*Sr+$e}},bn=cr(er,Jn),Tr=cr(er,fr),xr=cr(Sn,Jn),fi=cr(Sn,fr),Ii=[bn.x+xn,bn.y+Pn,xr.x+xn,xr.y+Pn,fi.x+xn,fi.y+Pn,Tr.x+xn,Tr.y+Pn];if(qd(y,g,Ii))return At($t),!0}else if(H5(re,y,g))return At($t),!0}}for(var Zt=O.length-1;Zt>=0;Zt--){var Kt=O[Zt];Kt.isNode()?xt(Kt)||Bt(Kt):Mt(Kt)||Bt(Kt)||Bt(Kt,"source")||Bt(Kt,"target")}return $},M3.getAllInBox=function(y,g,x,T){var A=this.getCachedZSortedEles().interactive,I=[],O=Math.min(y,x),$=Math.max(y,x),z=Math.min(g,T),S=Math.max(g,T);y=O,x=$,g=z,T=S;for(var V=zd({x1:y,y1:g,x2:x,y2:T}),U=0;U0?Math.max(us-Ko,0):Math.min(us+Ko,0)},Ne=re(ge,ee),ve=re(be,Ht),fn=!1;Mt===S?xt=Math.abs(Ne)>Math.abs(ve)?A:T:Mt===z||Mt===$?(xt=T,fn=!0):(Mt===I||Mt===O)&&(xt=A,fn=!0);var $e=xt===T,qe=$e?ve:Ne,xn=$e?be:ge,Pn=GN(xn),er=!1;!(fn&&(Bt||Kt))&&(Mt===$&&xn<0||Mt===z&&xn>0||Mt===I&&xn>0||Mt===O&&xn<0)&&(Pn*=-1,qe=Pn*Math.abs(qe),er=!0);var Sn;if(Bt){var Jn=Zt<0?1+Zt:Zt;Sn=Jn*qe}else{var fr=Zt<0?qe:0;Sn=fr+Zt*Pn}var Sr=function(us){return Math.abs(us)<$t||Math.abs(us)>=Math.abs(qe)},wr=Sr(Sn),cr=Sr(Math.abs(qe)-Math.abs(Sn)),bn=wr||cr;if(bn&&!er)if($e){var Tr=Math.abs(xn)<=tt/2,xr=Math.abs(ge)<=at/2;if(Tr){var fi=(V.x1+V.x2)/2,Ii=V.y1,oa=V.y2;x.segpts=[fi,Ii,fi,oa]}else if(xr){var Fa=(V.y1+V.y2)/2,Fi=V.x1,Ci=V.x2;x.segpts=[Fi,Fa,Ci,Fa]}else x.segpts=[V.x1,V.y2]}else{var Ls=Math.abs(xn)<=U/2,es=Math.abs(be)<=ut/2;if(Ls){var Ri=(V.y1+V.y2)/2,as=V.x1,no=V.x2;x.segpts=[as,Ri,no,Ri]}else if(es){var ca=(V.x1+V.x2)/2,ea=V.y1,Fr=V.y2;x.segpts=[ca,ea,ca,Fr]}else x.segpts=[V.x2,V.y1]}else if($e){var Qt=V.y1+Sn+(At?tt/2*Pn:0),Hn=V.x1,jr=V.x2;x.segpts=[Hn,Qt,jr,Qt]}else{var dr=V.x1+Sn+(At?U/2*Pn:0),gr=V.y1,Ga=V.y2;x.segpts=[dr,gr,dr,Ga]}},ld.tryToCorrectInvalidPoints=function(y,g){var x=y._private.rscratch;if(x.edgeType==="bezier"){var T=g.srcPos,A=g.tgtPos,I=g.srcW,O=g.srcH,$=g.tgtW,z=g.tgtH,S=g.srcShape,V=g.tgtShape,U=!rt(x.startX)||!rt(x.startY),tt=!rt(x.arrowStartX)||!rt(x.arrowStartY),at=!rt(x.endX)||!rt(x.endY),ut=!rt(x.arrowEndX)||!rt(x.arrowEndY),dt=3,At=this.getArrowWidth(y.pstyle("width").pfValue,y.pstyle("arrow-scale").value)*this.arrowShapeWidth,xt=dt*At,Mt=T3({x:x.ctrlpts[0],y:x.ctrlpts[1]},{x:x.startX,y:x.startY}),Dt=Mtve.poolIndex()){var fn=Ne;Ne=ve,ve=fn}var $e=Ht.srcPos=Ne.position(),qe=Ht.tgtPos=ve.position(),xn=Ht.srcW=Ne.outerWidth(),Pn=Ht.srcH=Ne.outerHeight(),er=Ht.tgtW=ve.outerWidth(),Sn=Ht.tgtH=ve.outerHeight(),Jn=Ht.srcShape=x.nodeShapes[g.getNodeShape(Ne)],fr=Ht.tgtShape=x.nodeShapes[g.getNodeShape(ve)];Ht.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var Sr=0;Sr0){var Tr=I,xr=_3(Tr,z5(x)),fi=_3(Tr,z5(bn)),Ii=xr;if(fi2){var oa=_3(Tr,{x:bn[2],y:bn[3]});oa0){var Hn=O,jr=_3(Hn,z5(x)),dr=_3(Hn,z5(Qt)),gr=jr;if(dr2){var Ga=_3(Hn,{x:Qt[2],y:Qt[3]});Ga=ut||$t){At={cp:Bt,segment:Kt};break}}if(At)break}var ee=At.cp,Ht=At.segment,ge=(ut-xt)/Ht.length,be=Ht.t1-Ht.t0,re=at?Ht.t0+be*ge:Ht.t1-be*ge;re=wk(0,re,1),g=q5(ee.p0,ee.p1,ee.p2,re),tt=NB(ee.p0,ee.p1,ee.p2,re);break}case"straight":case"segments":case"haystack":{for(var Ne=0,ve,fn,$e,qe,xn=T.allpts.length,Pn=0;Pn+3=ut));Pn+=2);var er=ut-fn,Sn=er/ve;Sn=wk(0,Sn,1),g=hY($e,qe,Sn),tt=PB($e,qe);break}}O("labelX",U,g.x),O("labelY",U,g.y),O("labelAutoAngle",U,tt)}};S("source"),S("target"),this.applyLabelDimensions(y)}},kp.applyLabelDimensions=function(y){this.applyPrefixedLabelDimensions(y),y.isEdge()&&(this.applyPrefixedLabelDimensions(y,"source"),this.applyPrefixedLabelDimensions(y,"target"))},kp.applyPrefixedLabelDimensions=function(y,g){var x=y._private,T=this.getLabelText(y,g),A=this.calculateLabelDimensions(y,T),I=y.pstyle("line-height").pfValue,O=y.pstyle("text-wrap").strValue,$=wp(x.rscratch,"labelWrapCachedLines",g)||[],z=O!=="wrap"?1:Math.max($.length,1),S=A.height/z,V=S*I,U=A.width,tt=A.height+(z-1)*(I-1)*S;gm(x.rstyle,"labelWidth",g,U),gm(x.rscratch,"labelWidth",g,U),gm(x.rstyle,"labelHeight",g,tt),gm(x.rscratch,"labelHeight",g,tt),gm(x.rscratch,"labelLineHeight",g,V)},kp.getLabelText=function(y,g){var x=y._private,T=g?g+"-":"",A=y.pstyle(T+"label").strValue,I=y.pstyle("text-transform").value,O=function(er,Sn){return Sn?(gm(x.rscratch,er,g,Sn),Sn):wp(x.rscratch,er,g)};if(!A)return"";I=="none"||(I=="uppercase"?A=A.toUpperCase():I=="lowercase"&&(A=A.toLowerCase()));var $=y.pstyle("text-wrap").value;if($==="wrap"){var z=O("labelKey");if(z!=null&&O("labelWrapKey")===z)return O("labelWrapCachedText");for(var S="​",V=A.split(` `),U=y.pstyle("text-max-width").pfValue,tt=y.pstyle("text-overflow-wrap").value,at=tt==="anywhere",ut=[],dt=/[\s\u200b]+/,At=at?"":" ",xt=0;xtU){for(var Kt=Mt.split(dt),$t="",ee=0;eeNe)break;ve+=A[qe],qe===A.length-1&&($e=!0)}return $e||(ve+=fn),ve}return A},kp.getLabelJustification=function(y){var g=y.pstyle("text-justification").strValue,x=y.pstyle("text-halign").strValue;if(g==="auto")if(y.isNode())switch(x){case"left":return"right";case"right":return"left";default:return"center"}else return"center";else return g},kp.calculateLabelDimensions=function(y,g){var x=this,T=ad(g,y._private.labelDimsKey),A=x.labelDimCache||(x.labelDimCache=[]),I=A[T];if(I!=null)return I;var O=0,$=y.pstyle("font-style").strValue,z=y.pstyle("font-size").pfValue,S=y.pstyle("font-family").strValue,V=y.pstyle("font-weight").strValue,U=this.labelCalcCanvas,tt=this.labelCalcCanvasContext;if(!U){U=this.labelCalcCanvas=document.createElement("canvas"),tt=this.labelCalcCanvasContext=U.getContext("2d");var at=U.style;at.position="absolute",at.left="-9999px",at.top="-9999px",at.zIndex="-1",at.visibility="hidden",at.pointerEvents="none"}tt.font="".concat($," ").concat(V," ").concat(z,"px ").concat(S);for(var ut=0,dt=0,At=g.split(` `),xt=0;xt1&&arguments[1]!==void 0?arguments[1]:!0;if(g.merge(O),$)for(var z=0;z=y.desktopTapThreshold2}var dv=T(Qt);Wf&&(y.hoverData.tapholdCancelled=!0);var Tm=function(){var q2=y.hoverData.dragDelta=y.hoverData.dragDelta||[];q2.length===0?(q2.push(fo[0]),q2.push(fo[1])):(q2[0]+=fo[0],q2[1]+=fo[1])};jr=!0,x(ho,["mousemove","vmousemove","tapdrag"],Qt,{x:Zr[0],y:Zr[1]});var d6=function(){y.data.bgActivePosistion=void 0,y.hoverData.selecting||dr.emit({originalEvent:Qt,type:"boxstart",position:{x:Zr[0],y:Zr[1]}}),Vc[4]=1,y.hoverData.selecting=!0,y.redrawHint("select",!0),y.redraw()};if(y.hoverData.which===3){if(Wf){var P3={originalEvent:Qt,type:"cxtdrag",position:{x:Zr[0],y:Zr[1]}};Ba?Ba.emit(P3):dr.emit(P3),y.hoverData.cxtDragged=!0,(!y.hoverData.cxtOver||ho!==y.hoverData.cxtOver)&&(y.hoverData.cxtOver&&y.hoverData.cxtOver.emit({originalEvent:Qt,type:"cxtdragout",position:{x:Zr[0],y:Zr[1]}}),y.hoverData.cxtOver=ho,ho&&ho.emit({originalEvent:Qt,type:"cxtdragover",position:{x:Zr[0],y:Zr[1]}}))}}else if(y.hoverData.dragging){if(jr=!0,dr.panningEnabled()&&dr.userPanningEnabled()){var g6;if(y.hoverData.justStartedPan){var mT=y.hoverData.mdownPos;g6={x:(Zr[0]-mT[0])*gr,y:(Zr[1]-mT[1])*gr},y.hoverData.justStartedPan=!1}else g6={x:fo[0]*gr,y:fo[1]*gr};dr.panBy(g6),dr.emit("dragpan"),y.hoverData.dragged=!0}Zr=y.projectIntoViewport(Qt.clientX,Qt.clientY)}else if(Vc[4]==1&&(Ba==null||Ba.pannable())){if(Wf){if(!y.hoverData.dragging&&dr.boxSelectionEnabled()&&(dv||!dr.panningEnabled()||!dr.userPanningEnabled()))d6();else if(!y.hoverData.selecting&&dr.panningEnabled()&&dr.userPanningEnabled()){var N3=A(Ba,y.hoverData.downs);N3&&(y.hoverData.dragging=!0,y.hoverData.justStartedPan=!0,Vc[4]=0,y.data.bgActivePosistion=z5(us),y.redrawHint("select",!0),y.redraw())}Ba&&Ba.pannable()&&Ba.active()&&Ba.unactivate()}}else{if(Ba&&Ba.pannable()&&Ba.active()&&Ba.unactivate(),(!Ba||!Ba.grabbed())&&ho!=Ic&&(Ic&&x(Ic,["mouseout","tapdragout"],Qt,{x:Zr[0],y:Zr[1]}),ho&&x(ho,["mouseover","tapdragover"],Qt,{x:Zr[0],y:Zr[1]}),y.hoverData.last=ho),Ba)if(Wf){if(dr.boxSelectionEnabled()&&dv)Ba&&Ba.grabbed()&&(dt(Sl),Ba.emit("freeon"),Sl.emit("free"),y.dragData.didDrag&&(Ba.emit("dragfreeon"),Sl.emit("dragfree"))),d6();else if(Ba&&Ba.grabbed()&&y.nodeIsDraggable(Ba)){var Hd=!y.dragData.didDrag;Hd&&y.redrawHint("eles",!0),y.dragData.didDrag=!0,y.hoverData.draggingEles||at(Sl,{inDragLayer:!0});var C1={x:0,y:0};if(rt(fo[0])&&rt(fo[1])&&(C1.x+=fo[0],C1.y+=fo[1],Hd)){var Vd=y.hoverData.dragDelta;Vd&&rt(Vd[0])&&rt(Vd[1])&&(C1.x+=Vd[0],C1.y+=Vd[1])}y.hoverData.draggingEles=!0,Sl.silentShift(C1).emit("position drag"),y.redrawHint("drag",!0),y.redraw()}}else Tm();jr=!0}if(Vc[2]=Zr[0],Vc[3]=Zr[1],jr)return Qt.stopPropagation&&Qt.stopPropagation(),Qt.preventDefault&&Qt.preventDefault(),!1}},!1);var Ht,ge,be;y.registerBinding(window,"mouseup",function(Qt){var Hn=y.hoverData.capture;if(Hn){y.hoverData.capture=!1;var jr=y.cy,dr=y.projectIntoViewport(Qt.clientX,Qt.clientY),gr=y.selection,Ga=y.findNearestElement(dr[0],dr[1],!0,!1),Zr=y.dragData.possibleDragElements,us=y.hoverData.down,Ko=T(Qt);if(y.data.bgActivePosistion&&(y.redrawHint("select",!0),y.redraw()),y.hoverData.tapholdCancelled=!0,y.data.bgActivePosistion=void 0,us&&us.unactivate(),y.hoverData.which===3){var Vc={originalEvent:Qt,type:"cxttapend",position:{x:dr[0],y:dr[1]}};if(us?us.emit(Vc):jr.emit(Vc),!y.hoverData.cxtDragged){var ho={originalEvent:Qt,type:"cxttap",position:{x:dr[0],y:dr[1]}};us?us.emit(ho):jr.emit(ho)}y.hoverData.cxtDragged=!1,y.hoverData.which=null}else if(y.hoverData.which===1){if(x(Ga,["mouseup","tapend","vmouseup"],Qt,{x:dr[0],y:dr[1]}),!y.dragData.didDrag&&!y.hoverData.dragged&&!y.hoverData.selecting&&!y.hoverData.isOverThresholdDrag&&(x(us,["click","tap","vclick"],Qt,{x:dr[0],y:dr[1]}),ge=!1,Qt.timeStamp-be<=jr.multiClickDebounceTime()?(Ht&&clearTimeout(Ht),ge=!0,be=null,x(us,["dblclick","dbltap","vdblclick"],Qt,{x:dr[0],y:dr[1]})):(Ht=setTimeout(function(){ge||x(us,["oneclick","onetap","voneclick"],Qt,{x:dr[0],y:dr[1]})},jr.multiClickDebounceTime()),be=Qt.timeStamp)),us==null&&!y.dragData.didDrag&&!y.hoverData.selecting&&!y.hoverData.dragged&&!T(Qt)&&(jr.$(g).unselect(["tapunselect"]),Zr.length>0&&y.redrawHint("eles",!0),y.dragData.possibleDragElements=Zr=jr.collection()),Ga==us&&!y.dragData.didDrag&&!y.hoverData.selecting&&Ga!=null&&Ga._private.selectable&&(y.hoverData.dragging||(jr.selectionType()==="additive"||Ko?Ga.selected()?Ga.unselect(["tapunselect"]):Ga.select(["tapselect"]):Ko||(jr.$(g).unmerge(Ga).unselect(["tapunselect"]),Ga.select(["tapselect"]))),y.redrawHint("eles",!0)),y.hoverData.selecting){var Ic=jr.collection(y.getAllInBox(gr[0],gr[1],gr[2],gr[3]));y.redrawHint("select",!0),Ic.length>0&&y.redrawHint("eles",!0),jr.emit({type:"boxend",originalEvent:Qt,position:{x:dr[0],y:dr[1]}});var Ba=function(Wf){return Wf.selectable()&&!Wf.selected()};jr.selectionType()==="additive"||Ko||jr.$(g).unmerge(Ic).unselect(),Ic.emit("box").stdFilter(Ba).select().emit("boxselect"),y.redraw()}if(y.hoverData.dragging&&(y.hoverData.dragging=!1,y.redrawHint("select",!0),y.redrawHint("eles",!0),y.redraw()),!gr[4]){y.redrawHint("drag",!0),y.redrawHint("eles",!0);var fo=us&&us.grabbed();dt(Zr),fo&&(us.emit("freeon"),Zr.emit("free"),y.dragData.didDrag&&(us.emit("dragfreeon"),Zr.emit("dragfree")))}}gr[4]=0,y.hoverData.down=null,y.hoverData.cxtStarted=!1,y.hoverData.draggingEles=!1,y.hoverData.selecting=!1,y.hoverData.isOverThresholdDrag=!1,y.dragData.didDrag=!1,y.hoverData.dragged=!1,y.hoverData.dragDelta=[],y.hoverData.mdownPos=null,y.hoverData.mdownGPos=null}},!1);var re=function(Qt){if(!y.scrollingPage){var Hn=y.cy,jr=Hn.zoom(),dr=Hn.pan(),gr=y.projectIntoViewport(Qt.clientX,Qt.clientY),Ga=[gr[0]*jr+dr.x,gr[1]*jr+dr.y];if(y.hoverData.draggingEles||y.hoverData.dragging||y.hoverData.cxtStarted||$t()){Qt.preventDefault();return}if(Hn.panningEnabled()&&Hn.userPanningEnabled()&&Hn.zoomingEnabled()&&Hn.userZoomingEnabled()){Qt.preventDefault(),y.data.wheelZooming=!0,clearTimeout(y.data.wheelTimeout),y.data.wheelTimeout=setTimeout(function(){y.data.wheelZooming=!1,y.redrawHint("eles",!0),y.redraw()},150);var Zr;Qt.deltaY!=null?Zr=Qt.deltaY/-250:Qt.wheelDeltaY!=null?Zr=Qt.wheelDeltaY/1e3:Zr=Qt.wheelDelta/1e3,Zr=Zr*y.wheelSensitivity;var us=Qt.deltaMode===1;us&&(Zr*=33);var Ko=Hn.zoom()*Math.pow(10,Zr);Qt.type==="gesturechange"&&(Ko=y.gestureStartZoom*Qt.scale),Hn.zoom({level:Ko,renderedPosition:{x:Ga[0],y:Ga[1]}}),Hn.emit(Qt.type==="gesturechange"?"pinchzoom":"scrollzoom")}}};y.registerBinding(y.container,"wheel",re,!0),y.registerBinding(window,"scroll",function(Qt){y.scrollingPage=!0,clearTimeout(y.scrollingPageTimeout),y.scrollingPageTimeout=setTimeout(function(){y.scrollingPage=!1},250)},!0),y.registerBinding(y.container,"gesturestart",function(Qt){y.gestureStartZoom=y.cy.zoom(),y.hasTouchStarted||Qt.preventDefault()},!0),y.registerBinding(y.container,"gesturechange",function(Fr){y.hasTouchStarted||re(Fr)},!0),y.registerBinding(y.container,"mouseout",function(Qt){var Hn=y.projectIntoViewport(Qt.clientX,Qt.clientY);y.cy.emit({originalEvent:Qt,type:"mouseout",position:{x:Hn[0],y:Hn[1]}})},!1),y.registerBinding(y.container,"mouseover",function(Qt){var Hn=y.projectIntoViewport(Qt.clientX,Qt.clientY);y.cy.emit({originalEvent:Qt,type:"mouseover",position:{x:Hn[0],y:Hn[1]}})},!1);var Ne,ve,fn,$e,qe,xn,Pn,er,Sn,Jn,fr,Sr,wr,cr=function(Qt,Hn,jr,dr){return Math.sqrt((jr-Qt)*(jr-Qt)+(dr-Hn)*(dr-Hn))},bn=function(Qt,Hn,jr,dr){return(jr-Qt)*(jr-Qt)+(dr-Hn)*(dr-Hn)},Tr;y.registerBinding(y.container,"touchstart",Tr=function(Qt){if(y.hasTouchStarted=!0,!!ee(Qt)){xt(),y.touchData.capture=!0,y.data.bgActivePosistion=void 0;var Hn=y.cy,jr=y.touchData.now,dr=y.touchData.earlier;if(Qt.touches[0]){var gr=y.projectIntoViewport(Qt.touches[0].clientX,Qt.touches[0].clientY);jr[0]=gr[0],jr[1]=gr[1]}if(Qt.touches[1]){var gr=y.projectIntoViewport(Qt.touches[1].clientX,Qt.touches[1].clientY);jr[2]=gr[0],jr[3]=gr[1]}if(Qt.touches[2]){var gr=y.projectIntoViewport(Qt.touches[2].clientX,Qt.touches[2].clientY);jr[4]=gr[0],jr[5]=gr[1]}if(Qt.touches[1]){y.touchData.singleTouchMoved=!0,dt(y.dragData.touchDragEles);var Ga=y.findContainerClientCoords();Sn=Ga[0],Jn=Ga[1],fr=Ga[2],Sr=Ga[3],Ne=Qt.touches[0].clientX-Sn,ve=Qt.touches[0].clientY-Jn,fn=Qt.touches[1].clientX-Sn,$e=Qt.touches[1].clientY-Jn,wr=0<=Ne&&Ne<=fr&&0<=fn&&fn<=fr&&0<=ve&&ve<=Sr&&0<=$e&&$e<=Sr;var Zr=Hn.pan(),us=Hn.zoom();qe=cr(Ne,ve,fn,$e),xn=bn(Ne,ve,fn,$e),Pn=[(Ne+fn)/2,(ve+$e)/2],er=[(Pn[0]-Zr.x)/us,(Pn[1]-Zr.y)/us];var Ko=200,Vc=Ko*Ko;if(xn=1){for(var Tp=y.touchData.startPosition=[],Kf=0;Kf=y.touchTapThreshold2}if(Hn&&y.touchData.cxt){Qt.preventDefault();var Tp=Qt.touches[0].clientX-Sn,Kf=Qt.touches[0].clientY-Jn,mg=Qt.touches[1].clientX-Sn,hd=Qt.touches[1].clientY-Jn,dv=bn(Tp,Kf,mg,hd),Tm=dv/xn,d6=150,P3=d6*d6,g6=1.5,mT=g6*g6;if(Tm>=mT||dv>=P3){y.touchData.cxt=!1,y.data.bgActivePosistion=void 0,y.redrawHint("select",!0);var N3={originalEvent:Qt,type:"cxttapend",position:{x:gr[0],y:gr[1]}};y.touchData.start?(y.touchData.start.unactivate().emit(N3),y.touchData.start=null):dr.emit(N3)}}if(Hn&&y.touchData.cxt){var N3={originalEvent:Qt,type:"cxtdrag",position:{x:gr[0],y:gr[1]}};y.data.bgActivePosistion=void 0,y.redrawHint("select",!0),y.touchData.start?y.touchData.start.emit(N3):dr.emit(N3),y.touchData.start&&(y.touchData.start._private.grabbed=!1),y.touchData.cxtDragged=!0;var Hd=y.findNearestElement(gr[0],gr[1],!0,!0);(!y.touchData.cxtOver||Hd!==y.touchData.cxtOver)&&(y.touchData.cxtOver&&y.touchData.cxtOver.emit({originalEvent:Qt,type:"cxtdragout",position:{x:gr[0],y:gr[1]}}),y.touchData.cxtOver=Hd,Hd&&Hd.emit({originalEvent:Qt,type:"cxtdragover",position:{x:gr[0],y:gr[1]}}))}else if(Hn&&Qt.touches[2]&&dr.boxSelectionEnabled())Qt.preventDefault(),y.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,y.touchData.selecting||dr.emit({originalEvent:Qt,type:"boxstart",position:{x:gr[0],y:gr[1]}}),y.touchData.selecting=!0,y.touchData.didSelect=!0,jr[4]=1,!jr||jr.length===0||jr[0]===void 0?(jr[0]=(gr[0]+gr[2]+gr[4])/3,jr[1]=(gr[1]+gr[3]+gr[5])/3,jr[2]=(gr[0]+gr[2]+gr[4])/3+1,jr[3]=(gr[1]+gr[3]+gr[5])/3+1):(jr[2]=(gr[0]+gr[2]+gr[4])/3,jr[3]=(gr[1]+gr[3]+gr[5])/3),y.redrawHint("select",!0),y.redraw();else if(Hn&&Qt.touches[1]&&!y.touchData.didSelect&&dr.zoomingEnabled()&&dr.panningEnabled()&&dr.userZoomingEnabled()&&dr.userPanningEnabled()){Qt.preventDefault(),y.data.bgActivePosistion=void 0,y.redrawHint("select",!0);var C1=y.dragData.touchDragEles;if(C1){y.redrawHint("drag",!0);for(var Vd=0;Vd0&&!y.hoverData.draggingEles&&!y.swipePanning&&y.data.bgActivePosistion!=null&&(y.data.bgActivePosistion=void 0,y.redrawHint("select",!0),y.redraw())}},!1);var fi;y.registerBinding(window,"touchcancel",fi=function(Qt){var Hn=y.touchData.start;y.touchData.capture=!1,Hn&&Hn.unactivate()});var Ii,oa,Fa,Fi;if(y.registerBinding(window,"touchend",Ii=function(Qt){var Hn=y.touchData.start,jr=y.touchData.capture;if(jr)Qt.touches.length===0&&(y.touchData.capture=!1),Qt.preventDefault();else return;var dr=y.selection;y.swipePanning=!1,y.hoverData.draggingEles=!1;var gr=y.cy,Ga=gr.zoom(),Zr=y.touchData.now,us=y.touchData.earlier;if(Qt.touches[0]){var Ko=y.projectIntoViewport(Qt.touches[0].clientX,Qt.touches[0].clientY);Zr[0]=Ko[0],Zr[1]=Ko[1]}if(Qt.touches[1]){var Ko=y.projectIntoViewport(Qt.touches[1].clientX,Qt.touches[1].clientY);Zr[2]=Ko[0],Zr[3]=Ko[1]}if(Qt.touches[2]){var Ko=y.projectIntoViewport(Qt.touches[2].clientX,Qt.touches[2].clientY);Zr[4]=Ko[0],Zr[5]=Ko[1]}Hn&&Hn.unactivate();var Vc;if(y.touchData.cxt){if(Vc={originalEvent:Qt,type:"cxttapend",position:{x:Zr[0],y:Zr[1]}},Hn?Hn.emit(Vc):gr.emit(Vc),!y.touchData.cxtDragged){var ho={originalEvent:Qt,type:"cxttap",position:{x:Zr[0],y:Zr[1]}};Hn?Hn.emit(ho):gr.emit(ho)}y.touchData.start&&(y.touchData.start._private.grabbed=!1),y.touchData.cxt=!1,y.touchData.start=null,y.redraw();return}if(!Qt.touches[2]&&gr.boxSelectionEnabled()&&y.touchData.selecting){y.touchData.selecting=!1;var Ic=gr.collection(y.getAllInBox(dr[0],dr[1],dr[2],dr[3]));dr[0]=void 0,dr[1]=void 0,dr[2]=void 0,dr[3]=void 0,dr[4]=0,y.redrawHint("select",!0),gr.emit({type:"boxend",originalEvent:Qt,position:{x:Zr[0],y:Zr[1]}});var Ba=function(P3){return P3.selectable()&&!P3.selected()};Ic.emit("box").stdFilter(Ba).select().emit("boxselect"),Ic.nonempty()&&y.redrawHint("eles",!0),y.redraw()}if(Hn!=null&&Hn.unactivate(),Qt.touches[2])y.data.bgActivePosistion=void 0,y.redrawHint("select",!0);else if(!Qt.touches[1]){if(!Qt.touches[0]){if(!Qt.touches[0]){y.data.bgActivePosistion=void 0,y.redrawHint("select",!0);var fo=y.dragData.touchDragEles;if(Hn!=null){var Sl=Hn._private.grabbed;dt(fo),y.redrawHint("drag",!0),y.redrawHint("eles",!0),Sl&&(Hn.emit("freeon"),fo.emit("free"),y.dragData.didDrag&&(Hn.emit("dragfreeon"),fo.emit("dragfree"))),x(Hn,["touchend","tapend","vmouseup","tapdragout"],Qt,{x:Zr[0],y:Zr[1]}),Hn.unactivate(),y.touchData.start=null}else{var Wf=y.findNearestElement(Zr[0],Zr[1],!0,!0);x(Wf,["touchend","tapend","vmouseup","tapdragout"],Qt,{x:Zr[0],y:Zr[1]})}var Ep=y.touchData.startPosition[0]-Zr[0],Tp=Ep*Ep,Kf=y.touchData.startPosition[1]-Zr[1],mg=Kf*Kf,hd=Tp+mg,dv=hd*Ga*Ga;y.touchData.singleTouchMoved||(Hn||gr.$(":selected").unselect(["tapunselect"]),x(Hn,["tap","vclick"],Qt,{x:Zr[0],y:Zr[1]}),oa=!1,Qt.timeStamp-Fi<=gr.multiClickDebounceTime()?(Fa&&clearTimeout(Fa),oa=!0,Fi=null,x(Hn,["dbltap","vdblclick"],Qt,{x:Zr[0],y:Zr[1]})):(Fa=setTimeout(function(){oa||x(Hn,["onetap","voneclick"],Qt,{x:Zr[0],y:Zr[1]})},gr.multiClickDebounceTime()),Fi=Qt.timeStamp)),Hn!=null&&!y.dragData.didDrag&&Hn._private.selectable&&dv"u"){var Ci=[],Ls=function(Qt){return{clientX:Qt.clientX,clientY:Qt.clientY,force:1,identifier:Qt.pointerId,pageX:Qt.pageX,pageY:Qt.pageY,radiusX:Qt.width/2,radiusY:Qt.height/2,screenX:Qt.screenX,screenY:Qt.screenY,target:Qt.target}},es=function(Qt){return{event:Qt,touch:Ls(Qt)}},Ri=function(Qt){Ci.push(es(Qt))},as=function(Qt){for(var Hn=0;Hn0)return Sn[0]}return null},at=Object.keys(U),ut=0;ut0?tt:KN(I,O,g,x,T,A,$)},checkPoint:function(g,x,T,A,I,O,$){var z=xk(A,I),S=2*z;if(ov(g,x,this.points,O,$,A,I-S,[0,-1],T)||ov(g,x,this.points,O,$,A-S,I,[0,-1],T))return!0;var V=A/2+2*T,U=I/2+2*T,tt=[O-V,$-U,O-V,$,O+V,$,O+V,$-U];return!!(qd(g,x,tt)||C3(g,x,S,S,O+A/2-z,$+I/2-z,T)||C3(g,x,S,S,O-A/2+z,$+I/2-z,T))}}},lv.registerNodeShapes=function(){var y=this.nodeShapes={},g=this;this.generateEllipse(),this.generatePolygon("triangle",cd(3,0)),this.generateRoundPolygon("round-triangle",cd(3,0)),this.generatePolygon("rectangle",cd(4,0)),y.square=y.rectangle,this.generateRoundRectangle(),this.generateCutRectangle(),this.generateBarrel(),this.generateBottomRoundrectangle();{var x=[0,1,1,0,0,-1,-1,0];this.generatePolygon("diamond",x),this.generateRoundPolygon("round-diamond",x)}this.generatePolygon("pentagon",cd(5,0)),this.generateRoundPolygon("round-pentagon",cd(5,0)),this.generatePolygon("hexagon",cd(6,0)),this.generateRoundPolygon("round-hexagon",cd(6,0)),this.generatePolygon("heptagon",cd(7,0)),this.generateRoundPolygon("round-heptagon",cd(7,0)),this.generatePolygon("octagon",cd(8,0)),this.generateRoundPolygon("round-octagon",cd(8,0));var T=new Array(20);{var A=CL(5,0),I=CL(5,Math.PI/5),O=.5*(3-Math.sqrt(5));O*=1.57;for(var $=0;$=g.deqFastCost*Bt)break}else if(S){if(Mt>=g.deqCost*at||Mt>=g.deqAvgCost*tt)break}else if(Dt>=g.deqNoDrawCost*JL)break;var Zt=g.deq(T,At,dt);if(Zt.length>0)for(var Kt=0;Kt0&&(g.onDeqd(T,ut),!S&&g.shouldRedraw(T,ut,At,dt)&&I())},$=g.priority||fm;A.beforeRender(O,$(T))}}}},VJ=function(){function y(g){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:hm;p(this,y),this.idsByKey=new j2,this.keyForId=new j2,this.cachesByLvl=new j2,this.lvls=[],this.getKey=g,this.doesEleInvalidateKey=x}return m(y,[{key:"getIdsFor",value:function(x){x==null&&Ec("Can not get id list for null key");var T=this.idsByKey,A=this.idsByKey.get(x);return A||(A=new $5,T.set(x,A)),A}},{key:"addIdForKey",value:function(x,T){x!=null&&this.getIdsFor(x).add(T)}},{key:"deleteIdForKey",value:function(x,T){x!=null&&this.getIdsFor(x).delete(T)}},{key:"getNumberOfIdsForKey",value:function(x){return x==null?0:this.getIdsFor(x).size}},{key:"updateKeyMappingFor",value:function(x){var T=x.id(),A=this.keyForId.get(T),I=this.getKey(x);this.deleteIdForKey(A,T),this.addIdForKey(I,T),this.keyForId.set(T,I)}},{key:"deleteKeyMappingFor",value:function(x){var T=x.id(),A=this.keyForId.get(T);this.deleteIdForKey(A,T),this.keyForId.delete(T)}},{key:"keyHasChangedFor",value:function(x){var T=x.id(),A=this.keyForId.get(T),I=this.getKey(x);return A!==I}},{key:"isInvalid",value:function(x){return this.keyHasChangedFor(x)||this.doesEleInvalidateKey(x)}},{key:"getCachesAt",value:function(x){var T=this.cachesByLvl,A=this.lvls,I=T.get(x);return I||(I=new j2,T.set(x,I),A.push(x)),I}},{key:"getCache",value:function(x,T){return this.getCachesAt(T).get(x)}},{key:"get",value:function(x,T){var A=this.getKey(x),I=this.getCache(A,T);return I!=null&&this.updateKeyMappingFor(x),I}},{key:"getForCachedKey",value:function(x,T){var A=this.keyForId.get(x.id()),I=this.getCache(A,T);return I}},{key:"hasCache",value:function(x,T){return this.getCachesAt(T).has(x)}},{key:"has",value:function(x,T){var A=this.getKey(x);return this.hasCache(A,T)}},{key:"setCache",value:function(x,T,A){A.key=x,this.getCachesAt(T).set(x,A)}},{key:"set",value:function(x,T,A){var I=this.getKey(x);this.setCache(I,T,A),this.updateKeyMappingFor(x)}},{key:"deleteCache",value:function(x,T){this.getCachesAt(T).delete(x)}},{key:"delete",value:function(x,T){var A=this.getKey(x);this.deleteCache(A,T)}},{key:"invalidateKey",value:function(x){var T=this;this.lvls.forEach(function(A){return T.deleteCache(x,A)})}},{key:"invalidate",value:function(x){var T=x.id(),A=this.keyForId.get(T);this.deleteKeyMappingFor(x);var I=this.doesEleInvalidateKey(x);return I&&this.invalidateKey(A),I||this.getNumberOfIdsForKey(A)===0}}]),y}(),dT=25,gT=50,o6=-4,tM=3,eM=7.99,GJ=8,UJ=1024,WJ=1024,jB=1024,KJ=.2,YJ=.8,XJ=10,QJ=.15,ZJ=.1,JJ=.9,ttt=.9,ett=100,ntt=1,c6={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},rtt=Hf({getKey:null,doesEleInvalidateKey:hm,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:od,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),zk=function(g,x){var T=this;T.renderer=g,T.onDequeues=[];var A=rtt(x);Ke(T,A),T.lookup=new VJ(A.getKey,A.doesEleInvalidateKey),T.setupDequeueing()},Mh=zk.prototype;Mh.reasons=c6,Mh.getTextureQueue=function(y){var g=this;return g.eleImgCaches=g.eleImgCaches||{},g.eleImgCaches[y]=g.eleImgCaches[y]||[]},Mh.getRetiredTextureQueue=function(y){var g=this,x=g.eleImgCaches.retired=g.eleImgCaches.retired||{},T=x[y]=x[y]||[];return T},Mh.getElementQueue=function(){var y=this,g=y.eleCacheQueue=y.eleCacheQueue||new vk(function(x,T){return T.reqs-x.reqs});return g},Mh.getElementKeyToQueue=function(){var y=this,g=y.eleKeyToCacheQueue=y.eleKeyToCacheQueue||{};return g},Mh.getElement=function(y,g,x,T,A){var I=this,O=this.renderer,$=O.cy.zoom(),z=this.lookup;if(!g||g.w===0||g.h===0||isNaN(g.w)||isNaN(g.h)||!y.visible()||y.removed()||!I.allowEdgeTxrCaching&&y.isEdge()||!I.allowParentTxrCaching&&y.isParent())return null;if(T==null&&(T=Math.ceil(kL($*x))),T=eM||T>tM)return null;var S=Math.pow(2,T),V=g.h*S,U=g.w*S,tt=O.eleTextBiggerThanMin(y,S);if(!this.isVisible(y,tt))return null;var at=z.get(y,T);if(at&&at.invalidated&&(at.invalidated=!1,at.texture.invalidatedWidth-=at.width),at)return at;var ut;if(V<=dT?ut=dT:V<=gT?ut=gT:ut=Math.ceil(V/gT)*gT,V>jB||U>WJ)return null;var dt=I.getTextureQueue(ut),At=dt[dt.length-2],xt=function(){return I.recycleTexture(ut,U)||I.addTexture(ut,U)};At||(At=dt[dt.length-1]),At||(At=xt()),At.width-At.usedWidthT;be--)Ht=I.getElement(y,g,x,be,c6.downscale);ge()}else return I.queueElement(y,Kt.level-1),Kt;else{var re;if(!Dt&&!Bt&&!Zt)for(var Ne=T-1;Ne>=o6;Ne--){var ve=z.get(y,Ne);if(ve){re=ve;break}}if(Mt(re))return I.queueElement(y,T),re;At.context.translate(At.usedWidth,0),At.context.scale(S,S),this.drawElement(At.context,y,g,tt,!1),At.context.scale(1/S,1/S),At.context.translate(-At.usedWidth,0)}return at={x:At.usedWidth,texture:At,level:T,scale:S,width:U,height:V,scaledLabelShown:tt},At.usedWidth+=Math.ceil(U+GJ),At.eleCaches.push(at),z.set(y,T,at),I.checkTextureFullness(At),at},Mh.invalidateElements=function(y){for(var g=0;g=KJ*y.width&&this.retireTexture(y)},Mh.checkTextureFullness=function(y){var g=this,x=g.getTextureQueue(y.height);y.usedWidth/y.width>YJ&&y.fullnessChecks>=XJ?dm(x,y):y.fullnessChecks++},Mh.retireTexture=function(y){var g=this,x=y.height,T=g.getTextureQueue(x),A=this.lookup;dm(T,y),y.retired=!0;for(var I=y.eleCaches,O=0;O=g)return O.retired=!1,O.usedWidth=0,O.invalidatedWidth=0,O.fullnessChecks=0,yL(O.eleCaches),O.context.setTransform(1,0,0,1,0,0),O.context.clearRect(0,0,O.width,O.height),dm(A,O),T.push(O),O}},Mh.queueElement=function(y,g){var x=this,T=x.getElementQueue(),A=x.getElementKeyToQueue(),I=this.getKey(y),O=A[I];if(O)O.level=Math.max(O.level,g),O.eles.merge(y),O.reqs++,T.updateItem(O);else{var $={eles:y.spawn().merge(y),level:g,reqs:1,key:I};T.push($),A[I]=$}},Mh.dequeue=function(y){for(var g=this,x=g.getElementQueue(),T=g.getElementKeyToQueue(),A=[],I=g.lookup,O=0;O0;O++){var $=x.pop(),z=$.key,S=$.eles[0],V=I.hasCache(S,$.level);if(T[z]=null,V)continue;A.push($);var U=g.getBoundingBox(S);g.getElement(S,U,y,$.level,c6.dequeue)}return A},Mh.removeFromQueue=function(y){var g=this,x=g.getElementQueue(),T=g.getElementKeyToQueue(),A=this.getKey(y),I=T[A];I!=null&&(I.eles.length===1?(I.reqs=vp,x.updateItem(I),x.pop(),T[A]=null):I.eles.unmerge(y))},Mh.onDequeue=function(y){this.onDequeues.push(y)},Mh.offDequeue=function(y){dm(this.onDequeues,y)},Mh.setupDequeueing=fT.setupDequeueing({deqRedrawThreshold:ett,deqCost:QJ,deqAvgCost:ZJ,deqNoDrawCost:JJ,deqFastCost:ttt,deq:function(g,x,T){return g.dequeue(x,T)},onDeqd:function(g,x){for(var T=0;T=pT||x>qk)return null}T.validateLayersElesOrdering(x,y);var z=T.layersByLevel,S=Math.pow(2,x),V=z[x]=z[x]||[],U,tt=T.levelIsComplete(x,y),at,ut=function(){var ge=function(fn){if(T.validateLayersElesOrdering(fn,y),T.levelIsComplete(fn,y))return at=z[fn],!0},be=function(fn){if(!at)for(var $e=x+fn;u6<=$e&&$e<=qk&&!ge($e);$e+=fn);};be(1),be(-1);for(var re=V.length-1;re>=0;re--){var Ne=V[re];Ne.invalid&&dm(V,Ne)}};if(!tt)ut();else return V;var dt=function(){if(!U){U=zd();for(var ge=0;geOgt)return null;var Ne=T.makeLayer(U,x);if(be!=null){var ve=V.indexOf(be)+1;V.splice(ve,0,Ne)}else(ge.insert===void 0||ge.insert)&&V.unshift(Ne);return Ne};if(T.skipping&&!$)return null;for(var xt=null,Mt=y.length/itt,Dt=!$,Bt=0;Bt=Mt||!WN(xt.bb,Zt.boundingBox()))&&(xt=At({insert:!0,after:xt}),!xt))return null;at||Dt?T.queueLayer(xt,Zt):T.drawEleInLayer(xt,Zt,x,g),xt.eles.push(Zt),$t[x]=xt}return at||(Dt?null:V)},E1.getEleLevelForLayerLevel=function(y,g){return y},E1.drawEleInLayer=function(y,g,x,T){var A=this,I=this.renderer,O=y.context,$=g.boundingBox();$.w===0||$.h===0||!g.visible()||(x=A.getEleLevelForLayerLevel(x,T),I.setImgSmoothing(O,!1),I.drawCachedElement(O,g,null,null,x,Pgt),I.setImgSmoothing(O,!0))},E1.levelIsComplete=function(y,g){var x=this,T=x.layersByLevel[y];if(!T||T.length===0)return!1;for(var A=0,I=0;I0||O.invalid)return!1;A+=O.eles.length}return A===g.length},E1.validateLayersElesOrdering=function(y,g){var x=this.layersByLevel[y];if(x)for(var T=0;T0){g=!0;break}}return g},E1.invalidateElements=function(y){var g=this;y.length!==0&&(g.lastInvalidationTime=Ei(),!(y.length===0||!g.haveLayers())&&g.updateElementsInLayers(y,function(T,A,I){g.invalidateLayer(T)}))},E1.invalidateLayer=function(y){if(this.lastInvalidationTime=Ei(),!y.invalid){var g=y.level,x=y.eles,T=this.layersByLevel[g];dm(T,y),y.elesQueue=[],y.invalid=!0,y.replacement&&(y.replacement.invalid=!0);for(var A=0;A3&&arguments[3]!==void 0?arguments[3]:!0,A=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,I=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,O=this,$=g._private.rscratch;if(!(I&&!g.visible())&&!($.badLine||$.allpts==null||isNaN($.allpts[0]))){var z;x&&(z=x,y.translate(-z.x1,-z.y1));var S=I?g.pstyle("opacity").value:1,V=I?g.pstyle("line-opacity").value:1,U=g.pstyle("curve-style").value,tt=g.pstyle("line-style").value,at=g.pstyle("width").pfValue,ut=g.pstyle("line-cap").value,dt=S*V,At=S*V,xt=function(){var re=arguments.length>0&&arguments[0]!==void 0?arguments[0]:dt;U==="straight-triangle"?(O.eleStrokeStyle(y,g,re),O.drawEdgeTrianglePath(g,y,$.allpts)):(y.lineWidth=at,y.lineCap=ut,O.eleStrokeStyle(y,g,re),O.drawEdgePath(g,y,$.allpts,tt),y.lineCap="butt")},Mt=function(){A&&O.drawEdgeOverlay(y,g)},Dt=function(){A&&O.drawEdgeUnderlay(y,g)},Bt=function(){var re=arguments.length>0&&arguments[0]!==void 0?arguments[0]:At;O.drawArrowheads(y,g,re)},Zt=function(){O.drawElementText(y,g,null,T)};y.lineJoin="round";var Kt=g.pstyle("ghost").value==="yes";if(Kt){var $t=g.pstyle("ghost-offset-x").pfValue,ee=g.pstyle("ghost-offset-y").pfValue,Ht=g.pstyle("ghost-opacity").value,ge=dt*Ht;y.translate($t,ee),xt(ge),Bt(ge),y.translate(-$t,-ee)}Dt(),xt(),Bt(),Mt(),Zt(),x&&y.translate(z.x1,z.y1)}};var ltt=function(g){if(!["overlay","underlay"].includes(g))throw new Error("Invalid state");return function(x,T){if(T.visible()){var A=T.pstyle("".concat(g,"-opacity")).value;if(A!==0){var I=this,O=I.usePaths(),$=T._private.rscratch,z=T.pstyle("".concat(g,"-padding")).pfValue,S=2*z,V=T.pstyle("".concat(g,"-color")).value;x.lineWidth=S,$.edgeType==="self"&&!O?x.lineCap="butt":x.lineCap="round",I.colorStrokeStyle(x,V[0],V[1],V[2],A),I.drawEdgePath(T,x,$.allpts,"solid")}}}};fv.drawEdgeOverlay=ltt("overlay"),fv.drawEdgeUnderlay=ltt("underlay"),fv.drawEdgePath=function(y,g,x,T){var A=y._private.rscratch,I=g,O,$=!1,z=this.usePaths(),S=y.pstyle("line-dash-pattern").pfValue,V=y.pstyle("line-dash-offset").pfValue;if(z){var U=x.join("$"),tt=A.pathCacheKey&&A.pathCacheKey===U;tt?(O=g=A.pathCache,$=!0):(O=g=new Path2D,A.pathCacheKey=U,A.pathCache=O)}if(I.setLineDash)switch(T){case"dotted":I.setLineDash([1,1]);break;case"dashed":I.setLineDash(S),I.lineDashOffset=V;break;case"solid":I.setLineDash([]);break}if(!$&&!A.badLine)switch(g.beginPath&&g.beginPath(),g.moveTo(x[0],x[1]),A.edgeType){case"bezier":case"self":case"compound":case"multibezier":for(var at=2;at+35&&arguments[5]!==void 0?arguments[5]:!0,O=this;if(T==null){if(I&&!O.eleTextBiggerThanMin(g))return}else if(T===!1)return;if(g.isNode()){var $=g.pstyle("label");if(!$||!$.value)return;var z=O.getLabelJustification(g);y.textAlign=z,y.textBaseline="bottom"}else{var S=g.element()._private.rscratch.badLine,V=g.pstyle("label"),U=g.pstyle("source-label"),tt=g.pstyle("target-label");if(S||(!V||!V.value)&&(!U||!U.value)&&(!tt||!tt.value))return;y.textAlign="center",y.textBaseline="bottom"}var at=!x,ut;x&&(ut=x,y.translate(-ut.x1,-ut.y1)),A==null?(O.drawText(y,g,null,at,I),g.isEdge()&&(O.drawText(y,g,"source",at,I),O.drawText(y,g,"target",at,I))):O.drawText(y,g,A,at,I),x&&y.translate(ut.x1,ut.y1)},l6.getFontCache=function(y){var g;this.fontCaches=this.fontCaches||[];for(var x=0;x2&&arguments[2]!==void 0?arguments[2]:!0,T=g.pstyle("font-style").strValue,A=g.pstyle("font-size").pfValue+"px",I=g.pstyle("font-family").strValue,O=g.pstyle("font-weight").strValue,$=x?g.effectiveOpacity()*g.pstyle("text-opacity").value:1,z=g.pstyle("text-outline-opacity").value*$,S=g.pstyle("color").value,V=g.pstyle("text-outline-color").value;y.font=T+" "+O+" "+A+" "+I,y.lineJoin="round",this.colorFillStyle(y,S[0],S[1],S[2],$),this.colorStrokeStyle(y,V[0],V[1],V[2],z)};function $gt(y,g,x,T,A){var I=arguments.length>5&&arguments[5]!==void 0?arguments[5]:5;y.beginPath(),y.moveTo(g+I,x),y.lineTo(g+T-I,x),y.quadraticCurveTo(g+T,x,g+T,x+I),y.lineTo(g+T,x+A-I),y.quadraticCurveTo(g+T,x+A,g+T-I,x+A),y.lineTo(g+I,x+A),y.quadraticCurveTo(g,x+A,g,x+A-I),y.lineTo(g,x+I),y.quadraticCurveTo(g,x,g+I,x),y.closePath(),y.fill()}l6.getTextAngle=function(y,g){var x,T=y._private,A=T.rscratch,I=g?g+"-":"",O=y.pstyle(I+"text-rotation"),$=wp(A,"labelAngle",g);return O.strValue==="autorotate"?x=y.isEdge()?$:0:O.strValue==="none"?x=0:x=O.pfValue,x},l6.drawText=function(y,g,x){var T=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,A=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,I=g._private,O=I.rscratch,$=A?g.effectiveOpacity():1;if(!(A&&($===0||g.pstyle("text-opacity").value===0))){x==="main"&&(x=null);var z=wp(O,"labelX",x),S=wp(O,"labelY",x),V,U,tt=this.getLabelText(g,x);if(tt!=null&&tt!==""&&!isNaN(z)&&!isNaN(S)){this.setupTextStyle(y,g,A);var at=x?x+"-":"",ut=wp(O,"labelWidth",x),dt=wp(O,"labelHeight",x),At=g.pstyle(at+"text-margin-x").pfValue,xt=g.pstyle(at+"text-margin-y").pfValue,Mt=g.isEdge(),Dt=g.pstyle("text-halign").value,Bt=g.pstyle("text-valign").value;Mt&&(Dt="center",Bt="center"),z+=At,S+=xt;var Zt;switch(T?Zt=this.getTextAngle(g,x):Zt=0,Zt!==0&&(V=z,U=S,y.translate(V,U),y.rotate(Zt),z=0,S=0),Bt){case"top":break;case"center":S+=dt/2;break;case"bottom":S+=dt;break}var Kt=g.pstyle("text-background-opacity").value,$t=g.pstyle("text-border-opacity").value,ee=g.pstyle("text-border-width").pfValue,Ht=g.pstyle("text-background-padding").pfValue;if(Kt>0||ee>0&&$t>0){var ge=z-Ht;switch(Dt){case"left":ge-=ut;break;case"center":ge-=ut/2;break}var be=S-dt-Ht,re=ut+2*Ht,Ne=dt+2*Ht;if(Kt>0){var ve=y.fillStyle,fn=g.pstyle("text-background-color").value;y.fillStyle="rgba("+fn[0]+","+fn[1]+","+fn[2]+","+Kt*$+")";var $e=g.pstyle("text-background-shape").strValue;$e.indexOf("round")===0?$gt(y,ge,be,re,Ne,2):y.fillRect(ge,be,re,Ne),y.fillStyle=ve}if(ee>0&&$t>0){var qe=y.strokeStyle,xn=y.lineWidth,Pn=g.pstyle("text-border-color").value,er=g.pstyle("text-border-style").value;if(y.strokeStyle="rgba("+Pn[0]+","+Pn[1]+","+Pn[2]+","+$t*$+")",y.lineWidth=ee,y.setLineDash)switch(er){case"dotted":y.setLineDash([1,1]);break;case"dashed":y.setLineDash([4,2]);break;case"double":y.lineWidth=ee/4,y.setLineDash([]);break;case"solid":y.setLineDash([]);break}if(y.strokeRect(ge,be,re,Ne),er==="double"){var Sn=ee/2;y.strokeRect(ge+Sn,be+Sn,re-Sn*2,Ne-Sn*2)}y.setLineDash&&y.setLineDash([]),y.lineWidth=xn,y.strokeStyle=qe}}var Jn=2*g.pstyle("text-outline-width").pfValue;if(Jn>0&&(y.lineWidth=Jn),g.pstyle("text-wrap").value==="wrap"){var fr=wp(O,"labelWrapCachedLines",x),Sr=wp(O,"labelLineHeight",x),wr=ut/2,cr=this.getLabelJustification(g);switch(cr==="auto"||(Dt==="left"?cr==="left"?z+=-ut:cr==="center"&&(z+=-wr):Dt==="center"?cr==="left"?z+=-wr:cr==="right"&&(z+=wr):Dt==="right"&&(cr==="center"?z+=wr:cr==="right"&&(z+=ut))),Bt){case"top":S-=(fr.length-1)*Sr;break;case"center":case"bottom":S-=(fr.length-1)*Sr;break}for(var bn=0;bn0&&y.strokeText(fr[bn],z,S),y.fillText(fr[bn],z,S),S+=Sr}else Jn>0&&y.strokeText(tt,z,S),y.fillText(tt,z,S);Zt!==0&&(y.rotate(-Zt),y.translate(-V,-U))}}};var Vk={};Vk.drawNode=function(y,g,x){var T=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,A=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,I=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,O=this,$,z,S=g._private,V=S.rscratch,U=g.position();if(!(!rt(U.x)||!rt(U.y))&&!(I&&!g.visible())){var tt=I?g.effectiveOpacity():1,at=O.usePaths(),ut,dt=!1,At=g.padding();$=g.width()+2*At,z=g.height()+2*At;var xt;x&&(xt=x,y.translate(-xt.x1,-xt.y1));for(var Mt=g.pstyle("background-image"),Dt=Mt.value,Bt=new Array(Dt.length),Zt=new Array(Dt.length),Kt=0,$t=0;$t0&&arguments[0]!==void 0?arguments[0]:Ne;O.eleFillStyle(y,g,Ri)},xn=function(){var Ri=arguments.length>0&&arguments[0]!==void 0?arguments[0]:$e;O.colorStrokeStyle(y,ve[0],ve[1],ve[2],Ri)},Pn=g.pstyle("shape").strValue,er=g.pstyle("shape-polygon-points").pfValue;if(at){y.translate(U.x,U.y);var Sn=O.nodePathCache=O.nodePathCache||[],Jn=R5(Pn==="polygon"?Pn+","+er.join(","):Pn,""+z,""+$),fr=Sn[Jn];fr!=null?(ut=fr,dt=!0,V.pathCache=ut):(ut=new Path2D,Sn[Jn]=V.pathCache=ut)}var Sr=function(){if(!dt){var Ri=U;at&&(Ri={x:0,y:0}),O.nodeShapes[O.getNodeShape(g)].draw(ut||y,Ri.x,Ri.y,$,z)}at?y.fill(ut):y.fill()},wr=function(){for(var Ri=arguments.length>0&&arguments[0]!==void 0?arguments[0]:tt,as=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,no=S.backgrounding,ca=0,ea=0;ea0&&arguments[0]!==void 0?arguments[0]:!1,as=arguments.length>1&&arguments[1]!==void 0?arguments[1]:tt;O.hasPie(g)&&(O.drawPie(y,g,as),Ri&&(at||O.nodeShapes[O.getNodeShape(g)].draw(y,U.x,U.y,$,z)))},bn=function(){var Ri=arguments.length>0&&arguments[0]!==void 0?arguments[0]:tt,as=(be>0?be:-be)*Ri,no=be>0?0:255;be!==0&&(O.colorFillStyle(y,no,no,no,as),at?y.fill(ut):y.fill())},Tr=function(){if(re>0){if(y.lineWidth=re,y.lineCap="butt",y.setLineDash)switch(fn){case"dotted":y.setLineDash([1,1]);break;case"dashed":y.setLineDash([4,2]);break;case"solid":case"double":y.setLineDash([]);break}if(at?y.stroke(ut):y.stroke(),fn==="double"){y.lineWidth=re/3;var Ri=y.globalCompositeOperation;y.globalCompositeOperation="destination-out",at?y.stroke(ut):y.stroke(),y.globalCompositeOperation=Ri}y.setLineDash&&y.setLineDash([])}},xr=function(){A&&O.drawNodeOverlay(y,g,U,$,z)},fi=function(){A&&O.drawNodeUnderlay(y,g,U,$,z)},Ii=function(){O.drawElementText(y,g,null,T)},oa=g.pstyle("ghost").value==="yes";if(oa){var Fa=g.pstyle("ghost-offset-x").pfValue,Fi=g.pstyle("ghost-offset-y").pfValue,Ci=g.pstyle("ghost-opacity").value,Ls=Ci*tt;y.translate(Fa,Fi),qe(Ci*Ne),Sr(),wr(Ls,!0),xn(Ci*$e),Tr(),cr(be!==0||re!==0),wr(Ls,!1),bn(Ls),y.translate(-Fa,-Fi)}at&&y.translate(-U.x,-U.y),fi(),at&&y.translate(U.x,U.y),qe(),Sr(),wr(tt,!0),xn(),Tr(),cr(be!==0||re!==0),wr(tt,!1),bn(),at&&y.translate(-U.x,-U.y),Ii(),xr(),x&&y.translate(xt.x1,xt.y1)}};var htt=function(g){if(!["overlay","underlay"].includes(g))throw new Error("Invalid state");return function(x,T,A,I,O){var $=this;if(T.visible()){var z=T.pstyle("".concat(g,"-padding")).pfValue,S=T.pstyle("".concat(g,"-opacity")).value,V=T.pstyle("".concat(g,"-color")).value,U=T.pstyle("".concat(g,"-shape")).value;if(S>0){if(A=A||T.position(),I==null||O==null){var tt=T.padding();I=T.width()+2*tt,O=T.height()+2*tt}$.colorFillStyle(x,V[0],V[1],V[2],S),$.nodeShapes[U].draw(x,A.x,A.y,I+z*2,O+z*2),x.fill()}}}};Vk.drawNodeOverlay=htt("overlay"),Vk.drawNodeUnderlay=htt("underlay"),Vk.hasPie=function(y){return y=y[0],y._private.hasPie},Vk.drawPie=function(y,g,x,T){g=g[0],T=T||g.position();var A=g.cy().style(),I=g.pstyle("pie-size"),O=T.x,$=T.y,z=g.width(),S=g.height(),V=Math.min(z,S)/2,U=0,tt=this.usePaths();tt&&(O=0,$=0),I.units==="%"?V=V*I.pfValue:I.pfValue!==void 0&&(V=I.pfValue/2);for(var at=1;at<=A.pieBackgroundN;at++){var ut=g.pstyle("pie-"+at+"-background-size").value,dt=g.pstyle("pie-"+at+"-background-color").value,At=g.pstyle("pie-"+at+"-background-opacity").value*x,xt=ut/100;xt+U>1&&(xt=1-U);var Mt=1.5*Math.PI+2*Math.PI*U,Dt=2*Math.PI*xt,Bt=Mt+Dt;ut===0||U>=1||U+xt>1||(y.beginPath(),y.moveTo(O,$),y.arc(O,$,V,Mt,Bt),y.closePath(),this.colorFillStyle(y,dt[0],dt[1],dt[2],At),y.fill(),U+=xt)}};var vg={},zgt=100;vg.getPixelRatio=function(){var y=this.data.contexts[0];if(this.forcedPixelRatio!=null)return this.forcedPixelRatio;var g=y.backingStorePixelRatio||y.webkitBackingStorePixelRatio||y.mozBackingStorePixelRatio||y.msBackingStorePixelRatio||y.oBackingStorePixelRatio||y.backingStorePixelRatio||1;return(window.devicePixelRatio||1)/g},vg.paintCache=function(y){for(var g=this.paintCaches=this.paintCaches||[],x=!0,T,A=0;AO.minMbLowQualFrames&&(O.motionBlurPxRatio=O.mbPxRBlurry)),O.clearingMotionBlur&&(O.motionBlurPxRatio=1),O.textureDrawLastFrame&&!U&&(V[O.NODE]=!0,V[O.SELECT_BOX]=!0);var Mt=z.style(),Dt=z.zoom(),Bt=A!==void 0?A:Dt,Zt=z.pan(),Kt={x:Zt.x,y:Zt.y},$t={zoom:Dt,pan:{x:Zt.x,y:Zt.y}},ee=O.prevViewport,Ht=ee===void 0||$t.zoom!==ee.zoom||$t.pan.x!==ee.pan.x||$t.pan.y!==ee.pan.y;!Ht&&!(dt&&!ut)&&(O.motionBlurPxRatio=1),I&&(Kt=I),Bt*=$,Kt.x*=$,Kt.y*=$;var ge=O.getCachedZSortedEles();function be(Fi,Ci,Ls,es,Ri){var as=Fi.globalCompositeOperation;Fi.globalCompositeOperation="destination-out",O.colorFillStyle(Fi,255,255,255,O.motionBlurTransparency),Fi.fillRect(Ci,Ls,es,Ri),Fi.globalCompositeOperation=as}function re(Fi,Ci){var Ls,es,Ri,as;!O.clearingMotionBlur&&(Fi===S.bufferContexts[O.MOTIONBLUR_BUFFER_NODE]||Fi===S.bufferContexts[O.MOTIONBLUR_BUFFER_DRAG])?(Ls={x:Zt.x*at,y:Zt.y*at},es=Dt*at,Ri=O.canvasWidth*at,as=O.canvasHeight*at):(Ls=Kt,es=Bt,Ri=O.canvasWidth,as=O.canvasHeight),Fi.setTransform(1,0,0,1,0,0),Ci==="motionBlur"?be(Fi,0,0,Ri,as):!g&&(Ci===void 0||Ci)&&Fi.clearRect(0,0,Ri,as),x||(Fi.translate(Ls.x,Ls.y),Fi.scale(es,es)),I&&Fi.translate(I.x,I.y),A&&Fi.scale(A,A)}if(U||(O.textureDrawLastFrame=!1),U){if(O.textureDrawLastFrame=!0,!O.textureCache){O.textureCache={},O.textureCache.bb=z.mutableElements().boundingBox(),O.textureCache.texture=O.data.bufferCanvases[O.TEXTURE_BUFFER];var Ne=O.data.bufferContexts[O.TEXTURE_BUFFER];Ne.setTransform(1,0,0,1,0,0),Ne.clearRect(0,0,O.canvasWidth*O.textureMult,O.canvasHeight*O.textureMult),O.render({forcedContext:Ne,drawOnlyNodeLayer:!0,forcedPxRatio:$*O.textureMult});var $t=O.textureCache.viewport={zoom:z.zoom(),pan:z.pan(),width:O.canvasWidth,height:O.canvasHeight};$t.mpan={x:(0-$t.pan.x)/$t.zoom,y:(0-$t.pan.y)/$t.zoom}}V[O.DRAG]=!1,V[O.NODE]=!1;var ve=S.contexts[O.NODE],fn=O.textureCache.texture,$t=O.textureCache.viewport;ve.setTransform(1,0,0,1,0,0),tt?be(ve,0,0,$t.width,$t.height):ve.clearRect(0,0,$t.width,$t.height);var $e=Mt.core("outside-texture-bg-color").value,qe=Mt.core("outside-texture-bg-opacity").value;O.colorFillStyle(ve,$e[0],$e[1],$e[2],qe),ve.fillRect(0,0,$t.width,$t.height);var Dt=z.zoom();re(ve,!1),ve.clearRect($t.mpan.x,$t.mpan.y,$t.width/$t.zoom/$,$t.height/$t.zoom/$),ve.drawImage(fn,$t.mpan.x,$t.mpan.y,$t.width/$t.zoom/$,$t.height/$t.zoom/$)}else O.textureOnViewport&&!g&&(O.textureCache=null);var xn=z.extent(),Pn=O.pinching||O.hoverData.dragging||O.swipePanning||O.data.wheelZooming||O.hoverData.draggingEles||O.cy.animated(),er=O.hideEdgesOnViewport&&Pn,Sn=[];if(Sn[O.NODE]=!V[O.NODE]&&tt&&!O.clearedForMotionBlur[O.NODE]||O.clearingMotionBlur,Sn[O.NODE]&&(O.clearedForMotionBlur[O.NODE]=!0),Sn[O.DRAG]=!V[O.DRAG]&&tt&&!O.clearedForMotionBlur[O.DRAG]||O.clearingMotionBlur,Sn[O.DRAG]&&(O.clearedForMotionBlur[O.DRAG]=!0),V[O.NODE]||x||T||Sn[O.NODE]){var Jn=tt&&!Sn[O.NODE]&&at!==1,ve=g||(Jn?O.data.bufferContexts[O.MOTIONBLUR_BUFFER_NODE]:S.contexts[O.NODE]),fr=tt&&!Jn?"motionBlur":void 0;re(ve,fr),er?O.drawCachedNodes(ve,ge.nondrag,$,xn):O.drawLayeredElements(ve,ge.nondrag,$,xn),O.debug&&O.drawDebugPoints(ve,ge.nondrag),!x&&!tt&&(V[O.NODE]=!1)}if(!T&&(V[O.DRAG]||x||Sn[O.DRAG])){var Jn=tt&&!Sn[O.DRAG]&&at!==1,ve=g||(Jn?O.data.bufferContexts[O.MOTIONBLUR_BUFFER_DRAG]:S.contexts[O.DRAG]);re(ve,tt&&!Jn?"motionBlur":void 0),er?O.drawCachedNodes(ve,ge.drag,$,xn):O.drawCachedElements(ve,ge.drag,$,xn),O.debug&&O.drawDebugPoints(ve,ge.drag),!x&&!tt&&(V[O.DRAG]=!1)}if(O.showFps||!T&&V[O.SELECT_BOX]&&!x){var ve=g||S.contexts[O.SELECT_BOX];if(re(ve),O.selection[4]==1&&(O.hoverData.selecting||O.touchData.selecting)){var Dt=O.cy.zoom(),Sr=Mt.core("selection-box-border-width").value/Dt;ve.lineWidth=Sr,ve.fillStyle="rgba("+Mt.core("selection-box-color").value[0]+","+Mt.core("selection-box-color").value[1]+","+Mt.core("selection-box-color").value[2]+","+Mt.core("selection-box-opacity").value+")",ve.fillRect(O.selection[0],O.selection[1],O.selection[2]-O.selection[0],O.selection[3]-O.selection[1]),Sr>0&&(ve.strokeStyle="rgba("+Mt.core("selection-box-border-color").value[0]+","+Mt.core("selection-box-border-color").value[1]+","+Mt.core("selection-box-border-color").value[2]+","+Mt.core("selection-box-opacity").value+")",ve.strokeRect(O.selection[0],O.selection[1],O.selection[2]-O.selection[0],O.selection[3]-O.selection[1]))}if(S.bgActivePosistion&&!O.hoverData.selecting){var Dt=O.cy.zoom(),wr=S.bgActivePosistion;ve.fillStyle="rgba("+Mt.core("active-bg-color").value[0]+","+Mt.core("active-bg-color").value[1]+","+Mt.core("active-bg-color").value[2]+","+Mt.core("active-bg-opacity").value+")",ve.beginPath(),ve.arc(wr.x,wr.y,Mt.core("active-bg-size").pfValue/Dt,0,2*Math.PI),ve.fill()}var cr=O.lastRedrawTime;if(O.showFps&&cr){cr=Math.round(cr);var bn=Math.round(1e3/cr);ve.setTransform(1,0,0,1,0,0),ve.fillStyle="rgba(255, 0, 0, 0.75)",ve.strokeStyle="rgba(255, 0, 0, 0.75)",ve.lineWidth=1,ve.fillText("1 frame = "+cr+" ms = "+bn+" fps",0,20);var Tr=60;ve.strokeRect(0,30,250,20),ve.fillRect(0,30,250*Math.min(bn/Tr,1),20)}x||(V[O.SELECT_BOX]=!1)}if(tt&&at!==1){var xr=S.contexts[O.NODE],fi=O.data.bufferCanvases[O.MOTIONBLUR_BUFFER_NODE],Ii=S.contexts[O.DRAG],oa=O.data.bufferCanvases[O.MOTIONBLUR_BUFFER_DRAG],Fa=function(Ci,Ls,es){Ci.setTransform(1,0,0,1,0,0),es||!xt?Ci.clearRect(0,0,O.canvasWidth,O.canvasHeight):be(Ci,0,0,O.canvasWidth,O.canvasHeight);var Ri=at;Ci.drawImage(Ls,0,0,O.canvasWidth*Ri,O.canvasHeight*Ri,0,0,O.canvasWidth,O.canvasHeight)};(V[O.NODE]||Sn[O.NODE])&&(Fa(xr,fi,Sn[O.NODE]),V[O.NODE]=!1),(V[O.DRAG]||Sn[O.DRAG])&&(Fa(Ii,oa,Sn[O.DRAG]),V[O.DRAG]=!1)}O.prevViewport=$t,O.clearingMotionBlur&&(O.clearingMotionBlur=!1,O.motionBlurCleared=!0,O.motionBlur=!0),tt&&(O.motionBlurTimeout=setTimeout(function(){O.motionBlurTimeout=null,O.clearedForMotionBlur[O.NODE]=!1,O.clearedForMotionBlur[O.DRAG]=!1,O.motionBlur=!1,O.clearingMotionBlur=!U,O.mbFrames=0,V[O.NODE]=!0,V[O.DRAG]=!0,O.redraw()},zgt)),g||z.emit("render")};var I3={};I3.drawPolygonPath=function(y,g,x,T,A,I){var O=T/2,$=A/2;y.beginPath&&y.beginPath(),y.moveTo(g+O*I[0],x+$*I[1]);for(var z=1;z0&&O>0){at.clearRect(0,0,I,O),at.globalCompositeOperation="source-over";var ut=this.getCachedZSortedEles();if(y.full)at.translate(-T.x1*S,-T.y1*S),at.scale(S,S),this.drawElements(at,ut),at.scale(1/S,1/S),at.translate(T.x1*S,T.y1*S);else{var dt=g.pan(),At={x:dt.x*S,y:dt.y*S};S*=g.zoom(),at.translate(At.x,At.y),at.scale(S,S),this.drawElements(at,ut),at.scale(1/S,1/S),at.translate(-At.x,-At.y)}y.bg&&(at.globalCompositeOperation="destination-over",at.fillStyle=y.bg,at.rect(0,0,I,O),at.fill())}return tt};function qgt(y,g){for(var x=atob(y),T=new ArrayBuffer(x.length),A=new Uint8Array(T),I=0;I"u"?"undefined":f(OffscreenCanvas))!=="undefined"?x=new OffscreenCanvas(y,g):(x=document.createElement("canvas"),x.width=y,x.height=g),x},[_0,hv,fv,vT,l6,Vk,vg,I3,wT,vtt].forEach(function(y){Ke(Dc,y)});var h6=[{name:"null",impl:LB},{name:"base",impl:ZL},{name:"canvas",impl:Hgt}],wg=[{type:"layout",extensions:zJ},{type:"renderer",extensions:h6}],km={},iM={};function T1(y,g,x){var T=x,A=function(ee){Wo("Can not register `"+g+"` for `"+y+"` since `"+ee+"` already exists in the prototype and can not be overridden")};if(y==="core"){if(Fk.prototype[g])return A(g);Fk.prototype[g]=x}else if(y==="collection"){if(Gf.prototype[g])return A(g);Gf.prototype[g]=x}else if(y==="layout"){for(var I=function(ee){this.options=ee,x.call(this,ee),ft(this._private)||(this._private={}),this._private.cy=ee.cy,this._private.listeners=[],this.createEmitter()},O=I.prototype=Object.create(x.prototype),$=[],z=0;z<$.length;z++){var S=$[z];O[S]=O[S]||function(){return this}}O.start&&!O.run?O.run=function(){return this.start(),this}:!O.start&&O.run&&(O.start=function(){return this.run(),this});var V=x.prototype.stop;O.stop=function(){var $t=this.options;if($t&&$t.animate){var ee=this.animations;if(ee)for(var Ht=0;HtH&&(this.rect.x-=(this.labelWidth-H)/2,this.setWidth(this.labelWidth)),this.labelHeight>Y&&(this.labelPos=="center"?this.rect.y-=(this.labelHeight-Y)/2:this.labelPos=="top"&&(this.rect.y-=this.labelHeight-Y),this.setHeight(this.labelHeight))}}},B.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==b.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},B.prototype.transform=function(R){var H=this.rect.x;H>C.WORLD_BOUNDARY?H=C.WORLD_BOUNDARY:H<-C.WORLD_BOUNDARY&&(H=-C.WORLD_BOUNDARY);var Y=this.rect.y;Y>C.WORLD_BOUNDARY?Y=C.WORLD_BOUNDARY:Y<-C.WORLD_BOUNDARY&&(Y=-C.WORLD_BOUNDARY);var it=new N(H,Y),et=R.inverseTransformPoint(it);this.setLocation(et.x,et.y)},B.prototype.getLeft=function(){return this.rect.x},B.prototype.getRight=function(){return this.rect.x+this.rect.width},B.prototype.getTop=function(){return this.rect.y},B.prototype.getBottom=function(){return this.rect.y+this.rect.height},B.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},f.exports=B},function(f,p,v){function m(b,E){b==null&&E==null?(this.x=0,this.y=0):(this.x=b,this.y=E)}m.prototype.getX=function(){return this.x},m.prototype.getY=function(){return this.y},m.prototype.setX=function(b){this.x=b},m.prototype.setY=function(b){this.y=b},m.prototype.getDifference=function(b){return new DimensionD(this.x-b.x,this.y-b.y)},m.prototype.getCopy=function(){return new m(this.x,this.y)},m.prototype.translate=function(b){return this.x+=b.width,this.y+=b.height,this},f.exports=m},function(f,p,v){var m=v(2),b=v(10),E=v(0),C=v(6),D=v(3),N=v(1),B=v(13),j=v(12),R=v(11);function H(it,et,st){m.call(this,st),this.estimatedSize=b.MIN_VALUE,this.margin=E.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=it,et!=null&&et instanceof C?this.graphManager=et:et!=null&&et instanceof Layout&&(this.graphManager=et.graphManager)}H.prototype=Object.create(m.prototype);for(var Y in m)H[Y]=m[Y];H.prototype.getNodes=function(){return this.nodes},H.prototype.getEdges=function(){return this.edges},H.prototype.getGraphManager=function(){return this.graphManager},H.prototype.getParent=function(){return this.parent},H.prototype.getLeft=function(){return this.left},H.prototype.getRight=function(){return this.right},H.prototype.getTop=function(){return this.top},H.prototype.getBottom=function(){return this.bottom},H.prototype.isConnected=function(){return this.isConnected},H.prototype.add=function(it,et,st){if(et==null&&st==null){var pt=it;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(pt)>-1)throw"Node already in graph!";return pt.owner=this,this.getNodes().push(pt),pt}else{var Tt=it;if(!(this.getNodes().indexOf(et)>-1&&this.getNodes().indexOf(st)>-1))throw"Source or target not in graph!";if(!(et.owner==st.owner&&et.owner==this))throw"Both owners must be this graph!";return et.owner!=st.owner?null:(Tt.source=et,Tt.target=st,Tt.isInterGraph=!1,this.getEdges().push(Tt),et.edges.push(Tt),st!=et&&st.edges.push(Tt),Tt)}},H.prototype.remove=function(it){var et=it;if(it instanceof D){if(et==null)throw"Node is null!";if(!(et.owner!=null&&et.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var st=et.edges.slice(),pt,Tt=st.length,kt=0;kt-1&&mt>-1))throw"Source and/or target doesn't know this edge!";pt.source.edges.splice(ft,1),pt.target!=pt.source&&pt.target.edges.splice(mt,1);var yt=pt.source.owner.getEdges().indexOf(pt);if(yt==-1)throw"Not in owner's edge list!";pt.source.owner.getEdges().splice(yt,1)}},H.prototype.updateLeftTop=function(){for(var it=b.MAX_VALUE,et=b.MAX_VALUE,st,pt,Tt,kt=this.getNodes(),yt=kt.length,ft=0;ftst&&(it=st),et>pt&&(et=pt)}return it==b.MAX_VALUE?null:(kt[0].getParent().paddingLeft!=null?Tt=kt[0].getParent().paddingLeft:Tt=this.margin,this.left=et-Tt,this.top=it-Tt,new j(this.left,this.top))},H.prototype.updateBounds=function(it){for(var et=b.MAX_VALUE,st=-b.MAX_VALUE,pt=b.MAX_VALUE,Tt=-b.MAX_VALUE,kt,yt,ft,mt,rt,wt=this.nodes,gt=wt.length,ht=0;htkt&&(et=kt),stft&&(pt=ft),Ttkt&&(et=kt),stft&&(pt=ft),Tt=this.nodes.length){var gt=0;st.forEach(function(ht){ht.owner==it&>++}),gt==this.nodes.length&&(this.isConnected=!0)}},f.exports=H},function(f,p,v){var m,b=v(1);function E(C){m=v(5),this.layout=C,this.graphs=[],this.edges=[]}E.prototype.addRoot=function(){var C=this.layout.newGraph(),D=this.layout.newNode(null),N=this.add(C,D);return this.setRootGraph(N),this.rootGraph},E.prototype.add=function(C,D,N,B,j){if(N==null&&B==null&&j==null){if(C==null)throw"Graph is null!";if(D==null)throw"Parent node is null!";if(this.graphs.indexOf(C)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(C),C.parent!=null)throw"Already has a parent!";if(D.child!=null)throw"Already has a child!";return C.parent=D,D.child=C,C}else{j=N,B=D,N=C;var R=B.getOwner(),H=j.getOwner();if(!(R!=null&&R.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(H!=null&&H.getGraphManager()==this))throw"Target not in this graph mgr!";if(R==H)return N.isInterGraph=!1,R.add(N,B,j);if(N.isInterGraph=!0,N.source=B,N.target=j,this.edges.indexOf(N)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(N),!(N.source!=null&&N.target!=null))throw"Edge source and/or target is null!";if(!(N.source.edges.indexOf(N)==-1&&N.target.edges.indexOf(N)==-1))throw"Edge already in source and/or target incidency list!";return N.source.edges.push(N),N.target.edges.push(N),N}},E.prototype.remove=function(C){if(C instanceof m){var D=C;if(D.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(D==this.rootGraph||D.parent!=null&&D.parent.graphManager==this))throw"Invalid parent node!";var N=[];N=N.concat(D.getEdges());for(var B,j=N.length,R=0;R=C.getRight()?D[0]+=Math.min(C.getX()-E.getX(),E.getRight()-C.getRight()):C.getX()<=E.getX()&&C.getRight()>=E.getRight()&&(D[0]+=Math.min(E.getX()-C.getX(),C.getRight()-E.getRight())),E.getY()<=C.getY()&&E.getBottom()>=C.getBottom()?D[1]+=Math.min(C.getY()-E.getY(),E.getBottom()-C.getBottom()):C.getY()<=E.getY()&&C.getBottom()>=E.getBottom()&&(D[1]+=Math.min(E.getY()-C.getY(),C.getBottom()-E.getBottom()));var j=Math.abs((C.getCenterY()-E.getCenterY())/(C.getCenterX()-E.getCenterX()));C.getCenterY()===E.getCenterY()&&C.getCenterX()===E.getCenterX()&&(j=1);var R=j*D[0],H=D[1]/j;D[0]R)return D[0]=N,D[1]=Y,D[2]=j,D[3]=wt,!1;if(Bj)return D[0]=H,D[1]=B,D[2]=mt,D[3]=R,!1;if(Nj?(D[0]=et,D[1]=st,X=!0):(D[0]=it,D[1]=Y,X=!0):lt===J&&(N>j?(D[0]=H,D[1]=Y,X=!0):(D[0]=pt,D[1]=st,X=!0)),-fe===J?j>N?(D[2]=rt,D[3]=wt,Rt=!0):(D[2]=mt,D[3]=ft,Rt=!0):fe===J&&(j>N?(D[2]=yt,D[3]=ft,Rt=!0):(D[2]=gt,D[3]=wt,Rt=!0)),X&&Rt)return!1;if(N>j?B>R?(ae=this.getCardinalDirection(lt,J,4),Wt=this.getCardinalDirection(fe,J,2)):(ae=this.getCardinalDirection(-lt,J,3),Wt=this.getCardinalDirection(-fe,J,1)):B>R?(ae=this.getCardinalDirection(-lt,J,1),Wt=this.getCardinalDirection(-fe,J,3)):(ae=this.getCardinalDirection(lt,J,2),Wt=this.getCardinalDirection(fe,J,4)),!X)switch(ae){case 1:Pt=Y,It=N+-kt/J,D[0]=It,D[1]=Pt;break;case 2:It=pt,Pt=B+Tt*J,D[0]=It,D[1]=Pt;break;case 3:Pt=st,It=N+kt/J,D[0]=It,D[1]=Pt;break;case 4:It=et,Pt=B+-Tt*J,D[0]=It,D[1]=Pt;break}if(!Rt)switch(Wt){case 1:Ue=ft,me=j+-_t/J,D[2]=me,D[3]=Ue;break;case 2:me=gt,Ue=R+ht*J,D[2]=me,D[3]=Ue;break;case 3:Ue=wt,me=j+_t/J,D[2]=me,D[3]=Ue;break;case 4:me=rt,Ue=R+-ht*J,D[2]=me,D[3]=Ue;break}}return!1},b.getCardinalDirection=function(E,C,D){return E>C?D:1+D%4},b.getIntersection=function(E,C,D,N){if(N==null)return this.getIntersection2(E,C,D);var B=E.x,j=E.y,R=C.x,H=C.y,Y=D.x,it=D.y,et=N.x,st=N.y,pt=void 0,Tt=void 0,kt=void 0,yt=void 0,ft=void 0,mt=void 0,rt=void 0,wt=void 0,gt=void 0;return kt=H-j,ft=B-R,rt=R*j-B*H,yt=st-it,mt=Y-et,wt=et*it-Y*st,gt=kt*mt-yt*ft,gt===0?null:(pt=(ft*wt-mt*rt)/gt,Tt=(yt*rt-kt*wt)/gt,new m(pt,Tt))},b.angleOfVector=function(E,C,D,N){var B=void 0;return E!==D?(B=Math.atan((N-C)/(D-E)),D0?1:b<0?-1:0},m.floor=function(b){return b<0?Math.ceil(b):Math.floor(b)},m.ceil=function(b){return b<0?Math.floor(b):Math.ceil(b)},f.exports=m},function(f,p,v){function m(){}m.MAX_VALUE=2147483647,m.MIN_VALUE=-2147483648,f.exports=m},function(f,p,v){var m=function(){function B(j,R){for(var H=0;H"u"?"undefined":m(E);return E==null||C!="object"&&C!="function"},f.exports=b},function(f,p,v){function m(Y){if(Array.isArray(Y)){for(var it=0,et=Array(Y.length);it0&⁢){for(kt.push(ft[0]);kt.length>0&⁢){var mt=kt[0];kt.splice(0,1),Tt.add(mt);for(var rt=mt.getEdges(),pt=0;pt-1&&ft.splice(_t,1)}Tt=new Set,yt=new Map}}return Y},H.prototype.createDummyNodesForBendpoints=function(Y){for(var it=[],et=Y.source,st=this.graphManager.calcLowestCommonAncestor(Y.source,Y.target),pt=0;pt0){for(var st=this.edgeToDummyNodes.get(et),pt=0;pt=0&&it.splice(wt,1);var gt=yt.getNeighborsList();gt.forEach(function(X){if(et.indexOf(X)<0){var Rt=st.get(X),lt=Rt-1;lt==1&&mt.push(X),st.set(X,lt)}})}et=et.concat(mt),(it.length==1||it.length==2)&&(pt=!0,Tt=it[0])}return Tt},H.prototype.setGraphManager=function(Y){this.graphManager=Y},f.exports=H},function(f,p,v){function m(){}m.seed=1,m.x=0,m.nextDouble=function(){return m.x=Math.sin(m.seed++)*1e4,m.x-Math.floor(m.x)},f.exports=m},function(f,p,v){var m=v(4);function b(E,C){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}b.prototype.getWorldOrgX=function(){return this.lworldOrgX},b.prototype.setWorldOrgX=function(E){this.lworldOrgX=E},b.prototype.getWorldOrgY=function(){return this.lworldOrgY},b.prototype.setWorldOrgY=function(E){this.lworldOrgY=E},b.prototype.getWorldExtX=function(){return this.lworldExtX},b.prototype.setWorldExtX=function(E){this.lworldExtX=E},b.prototype.getWorldExtY=function(){return this.lworldExtY},b.prototype.setWorldExtY=function(E){this.lworldExtY=E},b.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},b.prototype.setDeviceOrgX=function(E){this.ldeviceOrgX=E},b.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},b.prototype.setDeviceOrgY=function(E){this.ldeviceOrgY=E},b.prototype.getDeviceExtX=function(){return this.ldeviceExtX},b.prototype.setDeviceExtX=function(E){this.ldeviceExtX=E},b.prototype.getDeviceExtY=function(){return this.ldeviceExtY},b.prototype.setDeviceExtY=function(E){this.ldeviceExtY=E},b.prototype.transformX=function(E){var C=0,D=this.lworldExtX;return D!=0&&(C=this.ldeviceOrgX+(E-this.lworldOrgX)*this.ldeviceExtX/D),C},b.prototype.transformY=function(E){var C=0,D=this.lworldExtY;return D!=0&&(C=this.ldeviceOrgY+(E-this.lworldOrgY)*this.ldeviceExtY/D),C},b.prototype.inverseTransformX=function(E){var C=0,D=this.ldeviceExtX;return D!=0&&(C=this.lworldOrgX+(E-this.ldeviceOrgX)*this.lworldExtX/D),C},b.prototype.inverseTransformY=function(E){var C=0,D=this.ldeviceExtY;return D!=0&&(C=this.lworldOrgY+(E-this.ldeviceOrgY)*this.lworldExtY/D),C},b.prototype.inverseTransformPoint=function(E){var C=new m(this.inverseTransformX(E.x),this.inverseTransformY(E.y));return C},f.exports=b},function(f,p,v){function m(R){if(Array.isArray(R)){for(var H=0,Y=Array(R.length);HE.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*E.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(R-E.ADAPTATION_LOWER_NODE_LIMIT)/(E.ADAPTATION_UPPER_NODE_LIMIT-E.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-E.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=E.MAX_NODE_DISPLACEMENT_INCREMENTAL):(R>E.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(E.COOLING_ADAPTATION_FACTOR,1-(R-E.ADAPTATION_LOWER_NODE_LIMIT)/(E.ADAPTATION_UPPER_NODE_LIMIT-E.ADAPTATION_LOWER_NODE_LIMIT)*(1-E.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=E.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},B.prototype.calcSpringForces=function(){for(var R=this.getAllEdges(),H,Y=0;Y0&&arguments[0]!==void 0?arguments[0]:!0,H=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,Y,it,et,st,pt=this.getAllNodes(),Tt;if(this.useFRGridVariant)for(this.totalIterations%E.GRID_CALCULATION_CHECK_PERIOD==1&&R&&this.updateGrid(),Tt=new Set,Y=0;Ykt||Tt>kt)&&(R.gravitationForceX=-this.gravityConstant*et,R.gravitationForceY=-this.gravityConstant*st)):(kt=H.getEstimatedSize()*this.compoundGravityRangeFactor,(pt>kt||Tt>kt)&&(R.gravitationForceX=-this.gravityConstant*et*this.compoundGravityConstant,R.gravitationForceY=-this.gravityConstant*st*this.compoundGravityConstant))},B.prototype.isConverged=function(){var R,H=!1;return this.totalIterations>this.maxIterations/3&&(H=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),R=this.totalDisplacement=pt.length||kt>=pt[0].length)){for(var yt=0;ytB}}]),D}();f.exports=C},function(f,p,v){var m=function(){function C(D,N){for(var B=0;B2&&arguments[2]!==void 0?arguments[2]:1,j=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,R=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;b(this,C),this.sequence1=D,this.sequence2=N,this.match_score=B,this.mismatch_penalty=j,this.gap_penalty=R,this.iMax=D.length+1,this.jMax=N.length+1,this.grid=new Array(this.iMax);for(var H=0;H=0;D--){var N=this.listeners[D];N.event===E&&N.callback===C&&this.listeners.splice(D,1)}},b.emit=function(E,C){for(var D=0;DN.coolingFactor*N.maxNodeDisplacement&&(this.displacementX=N.coolingFactor*N.maxNodeDisplacement*E.sign(this.displacementX)),Math.abs(this.displacementY)>N.coolingFactor*N.maxNodeDisplacement&&(this.displacementY=N.coolingFactor*N.maxNodeDisplacement*E.sign(this.displacementY)),this.child==null?this.moveBy(this.displacementX,this.displacementY):this.child.getNodes().length==0?this.moveBy(this.displacementX,this.displacementY):this.propogateDisplacementToChildren(this.displacementX,this.displacementY),N.totalDisplacement+=Math.abs(this.displacementX)+Math.abs(this.displacementY),this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0},C.prototype.propogateDisplacementToChildren=function(N,B){for(var j=this.getChild().getNodes(),R,H=0;H0)this.positionNodesRadially(ft);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var mt=new Set(this.getAllNodes()),rt=this.nodesWithGravity.filter(function(wt){return mt.has(wt)});this.graphManager.setAllNodesToApplyGravitation(rt),this.positionNodesRandomly()}}return this.initSpringEmbedder(),this.runSpringEmbedder(),!0},kt.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%j.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var ft=new Set(this.getAllNodes()),mt=this.nodesWithGravity.filter(function(gt){return ft.has(gt)});this.graphManager.setAllNodesToApplyGravitation(mt),this.graphManager.updateBounds(),this.updateGrid(),this.coolingFactor=j.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),this.coolingFactor=j.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var rt=!this.isTreeGrowing&&!this.isGrowthFinished,wt=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(rt,wt),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},kt.prototype.getPositionsData=function(){for(var ft=this.graphManager.getAllNodes(),mt={},rt=0;rt1){var X;for(X=0;X<_t.length;X++){var Rt=_t[X];Rt.getBendpoints().push(new Y),this.createDummyNodesForBendpoints(Rt)}}_t.forEach(function(lt){mt.add(lt)})}}}if(mt.size==ft.length)break}},kt.prototype.positionNodesRadially=function(ft){for(var mt=new H(0,0),rt=Math.ceil(Math.sqrt(ft.length)),wt=0,gt=0,ht=0,_t=new Y(0,0),X=0;Xwt&&(wt=Math.floor(_t.y)),ht=Math.floor(_t.x+B.DEFAULT_COMPONENT_SEPERATION)}this.transform(new Y(R.WORLD_CENTER_X-_t.x/2,R.WORLD_CENTER_Y-_t.y/2))},kt.radialLayout=function(ft,mt,rt){var wt=Math.max(this.maxDiagonalInTree(ft),B.DEFAULT_RADIAL_SEPARATION);kt.branchRadialLayout(mt,null,0,359,0,wt);var gt=pt.calculateBounds(ft),ht=new Tt;ht.setDeviceOrgX(gt.getMinX()),ht.setDeviceOrgY(gt.getMinY()),ht.setWorldOrgX(rt.x),ht.setWorldOrgY(rt.y);for(var _t=0;_t1;){var Ue=me[0];me.splice(0,1);var _n=J.indexOf(Ue);_n>=0&&J.splice(_n,1),It--,ae--}mt!=null?Pt=(J.indexOf(me[0])+1)%It:Pt=0;for(var _e=Math.abs(wt-rt)/ae,rr=Pt;Wt!=ae;rr=++rr%It){var Te=J[rr].getOtherEnd(ft);if(Te!=mt){var ne=(rt+Wt*_e)%360,Ee=(ne+_e)%360;kt.branchRadialLayout(Te,ft,ne,Ee,gt+ht,ht),Wt++}}},kt.maxDiagonalInTree=function(ft){for(var mt=et.MIN_VALUE,rt=0;rtmt&&(mt=gt)}return mt},kt.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},kt.prototype.groupZeroDegreeMembers=function(){var ft=this,mt={};this.memberGroups={},this.idToDummyNode={};for(var rt=[],wt=this.graphManager.getAllNodes(),gt=0;gt"u"&&(mt[X]=[]),mt[X]=mt[X].concat(ht)}Object.keys(mt).forEach(function(Rt){if(mt[Rt].length>1){var lt="DummyCompound_"+Rt;ft.memberGroups[lt]=mt[Rt];var fe=mt[Rt][0].getParent(),J=new D(ft.graphManager);J.id=lt,J.paddingLeft=fe.paddingLeft||0,J.paddingRight=fe.paddingRight||0,J.paddingBottom=fe.paddingBottom||0,J.paddingTop=fe.paddingTop||0,ft.idToDummyNode[lt]=J;var ae=ft.getGraphManager().add(ft.newGraph(),J),Wt=fe.getChild();Wt.add(J);for(var It=0;It=0;ft--){var mt=this.compoundOrder[ft],rt=mt.id,wt=mt.paddingLeft,gt=mt.paddingTop;this.adjustLocations(this.tiledMemberPack[rt],mt.rect.x,mt.rect.y,wt,gt)}},kt.prototype.repopulateZeroDegreeMembers=function(){var ft=this,mt=this.tiledZeroDegreePack;Object.keys(mt).forEach(function(rt){var wt=ft.idToDummyNode[rt],gt=wt.paddingLeft,ht=wt.paddingTop;ft.adjustLocations(mt[rt],wt.rect.x,wt.rect.y,gt,ht)})},kt.prototype.getToBeTiled=function(ft){var mt=ft.id;if(this.toBeTiled[mt]!=null)return this.toBeTiled[mt];var rt=ft.getChild();if(rt==null)return this.toBeTiled[mt]=!1,!1;for(var wt=rt.getNodes(),gt=0;gt0)return this.toBeTiled[mt]=!1,!1;if(ht.getChild()==null){this.toBeTiled[ht.id]=!1;continue}if(!this.getToBeTiled(ht))return this.toBeTiled[mt]=!1,!1}return this.toBeTiled[mt]=!0,!0},kt.prototype.getNodeDegree=function(ft){ft.id;for(var mt=ft.getEdges(),rt=0,wt=0;wtRt&&(Rt=fe.rect.height)}rt+=Rt+ft.verticalPadding}},kt.prototype.tileCompoundMembers=function(ft,mt){var rt=this;this.tiledMemberPack=[],Object.keys(ft).forEach(function(wt){var gt=mt[wt];rt.tiledMemberPack[wt]=rt.tileNodes(ft[wt],gt.paddingLeft+gt.paddingRight),gt.rect.width=rt.tiledMemberPack[wt].width,gt.rect.height=rt.tiledMemberPack[wt].height})},kt.prototype.tileNodes=function(ft,mt){var rt=B.TILING_PADDING_VERTICAL,wt=B.TILING_PADDING_HORIZONTAL,gt={rows:[],rowWidth:[],rowHeight:[],width:0,height:mt,verticalPadding:rt,horizontalPadding:wt};ft.sort(function(X,Rt){return X.rect.width*X.rect.height>Rt.rect.width*Rt.rect.height?-1:X.rect.width*X.rect.height0&&(_t+=ft.horizontalPadding),ft.rowWidth[rt]=_t,ft.width<_t&&(ft.width=_t);var X=mt.rect.height;rt>0&&(X+=ft.verticalPadding);var Rt=0;X>ft.rowHeight[rt]&&(Rt=ft.rowHeight[rt],ft.rowHeight[rt]=X,Rt=ft.rowHeight[rt]-Rt),ft.height+=Rt,ft.rows[rt].push(mt)},kt.prototype.getShortestRowIndex=function(ft){for(var mt=-1,rt=Number.MAX_VALUE,wt=0;wtrt&&(mt=wt,rt=ft.rowWidth[wt]);return mt},kt.prototype.canAddHorizontal=function(ft,mt,rt){var wt=this.getShortestRowIndex(ft);if(wt<0)return!0;var gt=ft.rowWidth[wt];if(gt+ft.horizontalPadding+mt<=ft.width)return!0;var ht=0;ft.rowHeight[wt]0&&(ht=rt+ft.verticalPadding-ft.rowHeight[wt]);var _t;ft.width-gt>=mt+ft.horizontalPadding?_t=(ft.height+ht)/(gt+mt+ft.horizontalPadding):_t=(ft.height+ht)/ft.width,ht=rt+ft.verticalPadding;var X;return ft.widthht&&mt!=rt){wt.splice(-1,1),ft.rows[rt].push(gt),ft.rowWidth[mt]=ft.rowWidth[mt]-ht,ft.rowWidth[rt]=ft.rowWidth[rt]+ht,ft.width=ft.rowWidth[instance.getLongestRowIndex(ft)];for(var _t=Number.MIN_VALUE,X=0;X_t&&(_t=wt[X].height);mt>0&&(_t+=ft.verticalPadding);var Rt=ft.rowHeight[mt]+ft.rowHeight[rt];ft.rowHeight[mt]=_t,ft.rowHeight[rt]0)for(var Wt=gt;Wt<=ht;Wt++)ae[0]+=this.grid[Wt][_t-1].length+this.grid[Wt][_t].length-1;if(ht0)for(var Wt=_t;Wt<=X;Wt++)ae[3]+=this.grid[gt-1][Wt].length+this.grid[gt][Wt].length-1;for(var It=et.MAX_VALUE,Pt,me,Ue=0;Ue0){var X;X=Tt.getGraphManager().add(Tt.newGraph(),rt),this.processChildrenList(X,mt,Tt)}}},Y.prototype.stop=function(){return this.stopped=!0,this};var et=function(pt){pt("layout","cose-bilkent",Y)};typeof cytoscape<"u"&&et(cytoscape),p.exports=et}])})})(gjt);var fUe=gjt.exports;const dUe=B9(fUe);djt.use(dUe);function vjt(i,a,f,p){hjt.drawNode(i,a,f,p),a.children&&a.children.forEach((v,m)=>{vjt(i,v,f<0?m:f,p)})}function gUe(i,a){a.edges().map((f,p)=>{const v=f.data();if(f[0]._private.bodyBounds){const m=f[0]._private.rscratch;zt.trace("Edge: ",p,v),i.insert("path").attr("d",`M ${m.startX},${m.startY} L ${m.midX},${m.midY} L${m.endX},${m.endY} `).attr("class","edge section-edge-"+v.section+" edge-depth-"+v.depth)}})}function wjt(i,a,f,p){a.add({group:"nodes",data:{id:i.id,labelText:i.descr,height:i.height,width:i.width,level:p,nodeId:i.id,padding:i.padding,type:i.type},position:{x:i.x,y:i.y}}),i.children&&i.children.forEach(v=>{wjt(v,a,f,p+1),a.add({group:"edges",data:{id:`${i.id}_${v.id}`,source:i.id,target:v.id,depth:p,section:v.section}})})}function pUe(i,a){return new Promise(f=>{const p=Mr("body").append("div").attr("id","cy").attr("style","display:none"),v=djt({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});p.remove(),wjt(i,v,a,0),v.nodes().forEach(function(m){m.layoutDimensions=()=>{const b=m.data();return{w:b.width,h:b.height}}}),v.layout({name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1}).run(),v.ready(m=>{zt.info("Ready",m),f(v)})})}function bUe(i){i.nodes().map((a,f)=>{const p=a.data();p.x=a.position().x,p.y=a.position().y,hjt.positionNode(p);const v=Cgt(p.nodeId);zt.info("Id:",f,"Position: (",a.position().x,", ",a.position().y,")",p),v.attr("transform",`translate(${a.position().x-p.width/2}, ${a.position().y-p.height/2})`),v.attr("attr",`apa-${f})`)})}const vUe={draw:async(i,a,f,p)=>{const v=Oe();v.htmlLabels=!1,p.db.clear(),p.parser.parse(i),zt.debug(`Rendering mindmap diagram `+i,p.parser);const m=Oe().securityLevel;let b;m==="sandbox"&&(b=Mr("#i"+a));const C=Mr(m==="sandbox"?b.nodes()[0].contentDocument.body:"body").select("#"+a);C.append("g");const D=p.db.getMindmap(),N=C.append("g");N.attr("class","mindmap-edges");const B=C.append("g");B.attr("class","mindmap-nodes"),vjt(B,D,-1,v);const j=await pUe(D,v);gUe(N,j),bUe(j),J9(void 0,C,v.mindmap.padding,v.mindmap.useMaxWidth),Editor.mermaidToDrawio(j,"Mindmap")}},wUe=i=>{let a="";for(let f=0;f` .edge { stroke-width: 3; } ${wUe(i)} .section-root rect, .section-root path, .section-root circle, .section-root polygon { fill: ${i.git0}; } .section-root text { fill: ${i.gitBranchLabel0}; } .icon-container { height:100%; display: flex; justify-content: center; align-items: center; } .edge { fill: none; } .mindmap-node-label { dy: 1em; alignment-baseline: middle; text-anchor: middle; dominant-baseline: middle; text-align: center; } `}},Symbol.toStringTag,{value:"Module"}));return N2}); /** * @version : 15.6.0 - Bridge.NET * @author : Object.NET, Inc. http://bridge.net/ * @date : 2016-12-12 * @copyright : Copyright 2008-2016 Object.NET, Inc. http://object.net/ * @license : See license.txt and https://github.com/bridgedotnet/Bridge/blob/master/LICENSE.md */ (function(n){"use strict";var bt={global:n,emptyFn:function(){},identity:function(n){return n},geti:function(n,t,i){return Bridge.hasValue(n[t])?t:i},literal:function(n,t){return t.$getType=function(){return n},t},isPlainObject:function(n){if(typeof n=="object"&&n!==null){if(typeof Object.getPrototypeOf=="function"){var t=Object.getPrototypeOf(n);return t===Object.prototype||t===null}return Object.prototype.toString.call(n)==="[object Object]"}return!1},toPlain:function(n){var i,t,r,u,f;if(!n||Bridge.isPlainObject(n)||typeof n!="object")return n;if(typeof n.toJSON=="function")return n.toJSON();if(Bridge.isArray(n)){for(i=[],t=0;t0&&t.length-u-1>0&&!isNaN(parseInt(t.substr(u+1)));h&&(u=t.substring(0,u-1).lastIndexOf("$"));u>0&&u!==t.length-1&&(e=t.substring(0,u)+"get"+t.substr(u+1),o=t.substring(0,u)+"set"+t.substr(u+1));n[e]=function(n,t,i){return i?function(){return t[n]}:function(){return this[n]}}(t,n,r);n[o]=function(n,t,i){return i?function(i){t[n]=i}:function(t){this[n]=t}}(t,n,r)},event:function(n,t,i,r){n[t]=i;var s=t.charAt(0)==="$",f=s?t.slice(1):t,e="add"+f,o="remove"+f,u=t.lastIndexOf("$"),h=u>0&&t.length-u-1>0&&!isNaN(parseInt(t.substr(u+1)));h&&(u=t.substring(0,u-1).lastIndexOf("$"));u>0&&u!==t.length-1&&(e=t.substring(0,u)+"add"+t.substr(u+1),o=t.substring(0,u)+"remove"+t.substr(u+1));n[e]=function(n,t,i){return i?function(i){t[n]=Bridge.fn.combine(t[n],i)}:function(t){this[n]=Bridge.fn.combine(this[n],t)}}(t,n,r);n[o]=function(n,t,i){return i?function(i){t[n]=Bridge.fn.remove(t[n],i)}:function(t){this[n]=Bridge.fn.remove(this[n],t)}}(t,n,r)},createInstance:function(n,t){return n===System.Decimal?System.Decimal.Zero:n===System.Int64?System.Int64.Zero:n===System.UInt64?System.UInt64.Zero:n===System.Double||n===System.Single||n===System.Byte||n===System.SByte||n===System.Int16||n===System.UInt16||n===System.Int32||n===System.UInt32||n===Bridge.Int?0:typeof n.getDefaultValue=="function"?n.getDefaultValue():n===Boolean?!1:n===Date?new Date(0):n===Number?0:n===String?"":n&&n.$literal?n.ctor():t&&t.length>0?Bridge.Reflection.applyConstructor(n,t):new n},clone:function(n){if(Bridge.isArray(n))return System.Array.clone(n);if(Bridge.isString(n))return n;var t;return Bridge.isFunction(n[t="System$ICloneable$clone"])?n[t]():Bridge.is(n,System.ICloneable)?n.clone():null},copy:function(n,t,i,r){typeof i=="string"&&(i=i.split(/[,;\s]+/));for(var u,f=0,e=i?i.length:0;f=0;if(Bridge.isArray(n,u))return System.Array.is(n,t);if(u===String)return System.String.is(n,t)}return i!==!0&&t.$is?t.$is(n):t.$literal&&Bridge.isPlainObject(n)?n.$getType?Bridge.Reflection.isAssignableFrom(t,n.$getType()):!0:!1}if(f=typeof t,f==="boolean")return t;if(f==="string"&&(t=Bridge.unroll(t)),f==="function"&&Bridge.getType(n).prototype instanceof t)return!0;if(i!==!0){if(typeof t.$is=="function")return t.$is(n);if(typeof t.isAssignableFrom=="function")return t.isAssignableFrom(Bridge.getType(n))}return Bridge.isArray(n)?System.Array.is(n,t):f==="object"&&(u===t||n instanceof t)},as:function(n,t,i){return Bridge.is(n,t,!1,i)?n:null},cast:function(n,t,i){if(n==null)return n;var r=Bridge.is(n,t,!1,i)?n:null;if(r===null)throw new System.InvalidCastException("Unable to cast type "+(n?Bridge.getTypeName(n):"'null'")+" to type "+Bridge.getTypeName(t));return r},apply:function(n,t){for(var u=Bridge.getPropertyNames(t,!0),i,r=0;r=0:!1},isFunction:function(n){return typeof n=="function"},isDate:function(n){return Object.prototype.toString.call(n)==="[object Date]"},isNull:function(n){return n===null||n===undefined},isBoolean:function(n){return typeof n=="boolean"},isNumber:function(n){return typeof n=="number"&&isFinite(n)},isString:function(n){return typeof n=="string"},unroll:function(n){var r=n.split("."),t=Bridge.global[r[0]],i=1;for(i;i-1||Bridge.$$rightChain.indexOf(t)>-1)return!1;for(var i in t)if(t.hasOwnProperty(i)!==n.hasOwnProperty(i)||typeof t[i]!=typeof n[i])return!1;for(i in n){if(t.hasOwnProperty(i)!==n.hasOwnProperty(i)||typeof n[i]!=typeof t[i])return!1;if(n[i]===t[i])continue;else if(typeof n[i]=="object"){if(Bridge.$$leftChain.push(n),Bridge.$$rightChain.push(t),!Bridge.deepEquals(n[i],t[i]))return!1;Bridge.$$leftChain.pop();Bridge.$$rightChain.pop()}else if(!Bridge.equals(n[i],t[i]))return!1}return!0}return Bridge.equals(n,t)},compare:function(n,t,i,r){if(Bridge.isDefined(n,!0)){if(Bridge.isNumber(n)||Bridge.isString(n)||Bridge.isBoolean(n))return Bridge.isString(n)&&!Bridge.hasValue(t)?1:nt?1:0;if(Bridge.isDate(n))return Bridge.compare(n.valueOf(),t.valueOf())}else{if(i)return 0;throw new System.NullReferenceException;}var u;if(r&&Bridge.isFunction(n[u="System$IComparable$1$"+Bridge.getTypeAlias(r)+"$compareTo"])||Bridge.isFunction(n[u="System$IComparable$compareTo"]))return n[u](t);if(Bridge.isFunction(n.compareTo))return n.compareTo(t);if(r&&Bridge.isFunction(t[u="System$IComparable$1$"+Bridge.getTypeAlias(r)+"$compareTo"])||Bridge.isFunction(t[u="System$IComparable$compareTo"]))return-t[u](n);if(Bridge.isFunction(t.compareTo))return-t.compareTo(n);if(i)return 0;throw new System.Exception("Cannot compare items");},equalsT:function(n,t,i){if(Bridge.isDefined(n,!0)){if(Bridge.isNumber(n)||Bridge.isString(n)||Bridge.isBoolean(n))return n===t;if(Bridge.isDate(n))return n.valueOf()===t.valueOf()}else throw new System.NullReferenceException;var r;return i&&n!=null&&Bridge.isFunction(n[r="System$IEquatable$1$"+Bridge.getTypeAlias(i)+"$equalsT"])?n[r](t):i&&t!=null&&Bridge.isFunction(t[r="System$IEquatable$1$"+Bridge.getTypeAlias(i)+"$equalsT"])?t[r](n):n.equalsT?n.equalsT(t):t.equalsT(n)},format:function(n,t,i){if(Bridge.isNumber(n))return Bridge.Int.format(n,t,i);if(Bridge.isDate(n))return Bridge.Date.format(n,t,i);var r;return Bridge.isFunction(n[r="System$IFormattable$format"])?n[r](t,i):n.format(t,i)},getType:function(n){if(n==null)throw new System.NullReferenceException("instance is null");if(typeof n=="number")return!isNaN(n)&&isFinite(n)&&Math.floor(n,0)===n?System.Int32:System.Double;if(n.$getType)return n.$getType();try{return n.constructor}catch(t){return Object}},isLower:function(n){var t=String.fromCharCode(n);return t===t.toLowerCase()&&t!==t.toUpperCase()},isUpper:function(n){var t=String.fromCharCode(n);return t!==t.toLowerCase()&&t===t.toUpperCase()},coalesce:function(n,t){return Bridge.hasValue(n)?n:t},fn:{equals:function(n){return this===n?!0:n==null||this.constructor!==n.constructor?!1:this.equals===n.equals&&this.$method===n.$method&&this.$scope===n.$scope},call:function(n,t){var i=Array.prototype.slice.call(arguments,2);return n=n||Bridge.global,n[t].apply(n,i)},makeFn:function(n,t){switch(t){case 0:return function(){return n.apply(this,arguments)};case 1:return function(){return n.apply(this,arguments)};case 2:return function(){return n.apply(this,arguments)};case 3:return function(){return n.apply(this,arguments)};case 4:return function(){return n.apply(this,arguments)};case 5:return function(){return n.apply(this,arguments)};case 6:return function(){return n.apply(this,arguments)};case 7:return function(){return n.apply(this,arguments)};case 8:return function(){return n.apply(this,arguments)};case 9:return function(){return n.apply(this,arguments)};case 10:return function(){return n.apply(this,arguments)};case 11:return function(){return n.apply(this,arguments)};case 12:return function(){return n.apply(this,arguments)};case 13:return function(){return n.apply(this,arguments)};case 14:return function(){return n.apply(this,arguments)};case 15:return function(){return n.apply(this,arguments)};case 16:return function(){return n.apply(this,arguments)};case 17:return function(){return n.apply(this,arguments)};case 18:return function(){return n.apply(this,arguments)};case 19:return function(){return n.apply(this,arguments)};default:return function(){return n.apply(this,arguments)}}},bind:function(n,t,i,r){var f,u;if(t&&t.$method===t&&t.$scope===n)return t;if(n&&n.$$bind)for(f=0;f=0;i--){for(o=!1,u=0;u2147483647)throw new System.ArgumentOutOfRangeException("timeout","Number must be either non-negative and less than or equal to Int32.MaxValue or -1");n==-1&&(n=2147483647);for(var i=(new Date).getTime();(new Date).getTime()-i2147483647)break},getMetadata:function(n){return n.$getMetadata?n.$getMetadata():n.$metadata}},nt,s,at,o,vt,yt,pt,k,wt,t;n.Bridge=bt;n.Bridge.caller=[];n.System={};n.System.Diagnostics={};n.System.Diagnostics.Contracts={};n.System.Threading={};nt={is:function(n,t){return Bridge.isString(n)?n.constructor===t||n instanceof t?!0:t===System.ICloneable||t===System.Collections.IEnumerable||t===System.Collections.Generic.IEnumerable$1(System.Char)||t===System.IComparable$1(String)||t===System.IEquatable$1(String)?!0:!1:!1},lastIndexOf:function(n,t,i,r){var u=n.lastIndexOf(t,i);return u=f;u--)if(t.indexOf(n.charAt(u))>=0)return u;return-1},isNullOrWhiteSpace:function(n){return n?System.Char.isWhiteSpace(n):!0},isNullOrEmpty:function(n){return!n},fromCharCount:function(n,t){if(t>=0)return String(Array(t+1).join(String.fromCharCode(n)));throw new System.ArgumentOutOfRangeException("count","cannot be less than zero");},format:function(n){return System.String._format(System.Globalization.CultureInfo.getCurrentCulture(),n,Array.prototype.slice.call(arguments,1))},formatProvider:function(n,t){return System.String._format(n,t,Array.prototype.slice.call(arguments,2))},_format:function(n,t,i){var u=this,f=i,r=this.decodeBraceSequence;return t.replace(/(\{+)((\d+|[a-zA-Z_$]\w+(?:\.[a-zA-Z_$]\w+|\[\d+\])*)(?:\,(-?\d*))?(?:\:([^\}]*))?)(\}+)|(\{+)|(\}+)/g,function(t,i,e,o,s,h,c,l,a){return l?r(l):a?r(a):i.length%2==0||c.length%2==0?r(i)+e+r(c):r(i,!0)+u.handleElement(n,o,s,h,f)+r(c,!0)})},handleElement:function(n,t,i,r,u){var f;if(t=parseInt(t,10),t>u.length-1)throw new System.FormatException("Input string was not in a correct format.");return f=u[t],f==null&&(f=""),f=r&&Bridge.is(f,System.IFormattable)?Bridge.format(f,r,n):""+f,i&&(i=parseInt(i,10),Bridge.isNumber(i)||(i=null)),System.String.alignString(f.toString(),i)},decodeBraceSequence:function(n,t){return n.substr(0,(n.length+(t?0:1))/2)},alignString:function(n,t,i,r,u){if(!n||!t)return n;if(i||(i=" "),Bridge.isNumber(i)&&(i=String.fromCharCode(i)),r||(r=t<0?1:2),t=Math.abs(t),u&&n.length>t&&(n=n.substring(0,t)),t+1>=n.length)switch(r){case 2:n=Array(t+1-n.length).join(i)+n;break;case 3:var f=t-n.length,e=Math.ceil(f/2),o=f-e;n=Array(o+1).join(i)+n+Array(e+1).join(i);break;case 1:default:n=n+Array(t+1-n.length).join(i)}return n},startsWith:function(n,t){return t.length?t.length>n.length?!1:(t=System.String.escape(t),n.match("^"+t)!==null):!0},endsWith:function(n,t){return t.length?t.length>n.length?!1:(t=System.String.escape(t),n.match(t+"$")!==null):!0},contains:function(n,t){if(t==null)throw new System.ArgumentNullException;return n==null?!1:n.indexOf(t)>-1},indexOfAny:function(n,t){var i,r,e,u,o,f;if(t==null)throw new System.ArgumentNullException;if(n==null||n==="")return-1;if(i=arguments.length>2?arguments[2]:0,i<0)throw new System.ArgumentOutOfRangeException("startIndex","startIndex cannot be less than zero");if(r=arguments.length>3?arguments[3]:n.length-i,r<0)throw new System.ArgumentOutOfRangeException("length","must be non-negative");if(r>n.length-i)throw new System.ArgumentOutOfRangeException("Index and length must refer to a location within the string");for(e=n.substr(i,r),u=0;u-1)return f+i;return-1},indexOf:function(n,t){var i,u,f,r;if(t==null)throw new System.ArgumentNullException;if(n==null||n==="")return-1;if(i=arguments.length>2?arguments[2]:0,i<0||i>n.length)throw new System.ArgumentOutOfRangeException("startIndex","startIndex cannot be less than zero and must refer to a location within the string");if(t==="")return arguments.length>2?i:0;if(u=arguments.length>3?arguments[3]:n.length-i,u<0)throw new System.ArgumentOutOfRangeException("length","must be non-negative");if(u>n.length-i)throw new System.ArgumentOutOfRangeException("Index and length must refer to a location within the string");return(f=n.substr(i,u),r=arguments.length===5&&arguments[4]%2!=0?f.toLocaleUpperCase().indexOf(t.toLocaleUpperCase()):f.indexOf(t),r>-1)?arguments.length===5?System.String.compare(t,f.substr(r,t.length),arguments[4])===0?r+i:-1:r+i:-1},equals:function(){return System.String.compare.apply(this,arguments)===0},compare:function(n,t){if(n==null)return t==null?0:-1;if(t==null)return 1;if(arguments.length>=3)if(Bridge.isBoolean(arguments[2])){if(arguments[2]&&(n=n.toLocaleUpperCase(),t=t.toLocaleUpperCase()),arguments.length===4)return n.localeCompare(t,arguments[3].name)}else switch(arguments[2]){case 1:return n.localeCompare(t,System.Globalization.CultureInfo.getCurrentCulture().name,{sensitivity:"accent"});case 2:return n.localeCompare(t,System.Globalization.CultureInfo.invariantCulture.name);case 3:return n.localeCompare(t,System.Globalization.CultureInfo.invariantCulture.name,{sensitivity:"accent"});case 4:return n===t?0:n>t?1:-1;case 5:return n.toUpperCase()===t.toUpperCase()?0:n.toUpperCase()>t.toUpperCase()?1:-1}return n.localeCompare(t)},toCharArray:function(n,t,i){var u,r;if(t<0||t>n.length||t>n.length-i)throw new System.ArgumentOutOfRangeException("startIndex","startIndex cannot be less than zero and must refer to a location within the string");if(i<0)throw new System.ArgumentOutOfRangeException("length","must be non-negative");for(Bridge.hasValue(t)||(t=0),Bridge.hasValue(i)||(i=n.length),u=[],r=t;r0?t.substring(0,n)+i+t.substring(n,t.length):i+t},remove:function(n,t,i){if(n==null)throw new System.NullReferenceException;if(t<0)throw new System.ArgumentOutOfRangeException("startIndex","StartIndex cannot be less than zero");if(i!=null){if(i<0)throw new System.ArgumentOutOfRangeException("count","Count cannot be less than zero");if(i>n.length-t)throw new System.ArgumentOutOfRangeException("count","Index and count must refer to a location within the string");}else if(t>=n.length)throw new System.ArgumentOutOfRangeException("startIndex","startIndex must be less than length of string");return i==null||t+i>n.length?n.substr(0,t):n.substr(0,t)+n.substr(t+i)},split:function(n,t,i,r){for(var o=!Bridge.hasValue(t)||t.length===0?new RegExp("\\s","g"):new RegExp(t.map(System.String.escape).join("|"),"g"),f=[],e,u=0;;u=o.lastIndex)if(e=o.exec(n)){if(r!==1||e.index>u){if(f.length===i-1)return f.push(n.substr(u)),f;f.push(n.substring(u,e.index))}}else return(r!==1||u!==n.length)&&f.push(n.substr(u)),f},trimEnd:function(n,t){return n.replace(t?new RegExp("["+System.String.escape(String.fromCharCode.apply(null,t))+"]+$"):/\s*$/,"")},trimStart:function(n,t){return n.replace(t?new RegExp("^["+System.String.escape(String.fromCharCode.apply(null,t))+"]+"):/^\s*/,"")},trim:function(n,t){return System.String.trimStart(System.String.trimEnd(n,t),t)},concat:function(){for(var t,i="",n=0;n=0;e--){v=c[e].trim();h=!1;for(u in f)if(s.nameEquals(u,v,i)){l|=f[u];h=!0;break}if(!h){a=!1;break}}if(a)return l}else for(u in f)if(s.nameEquals(u,t,i))return f[u];if(r!==!0)throw new System.ArgumentException("Invalid Enumeration Value");return null},toString:function(n,t,i){var u,e,f,r;if(n===Number)return t.toString();if(System.Enum.checkEnumType(n),u=n,e=System.Int64.is64Bit(t),(n.prototype&&n.prototype.$flags||i===!0)&&t!==0){f=[];for(r in u)(e&&System.Int64.is64Bit(u[r])?!u[r].and(t).isZero():u[r]&t)&&f.push(s.toName(r));return f.length?f.join(", "):t.toString()}for(r in u)if(e&&System.Int64.is64Bit(u[r])?u[r].eq(t):u[r]===t)return s.toName(r);return t.toString()},getValues:function(n){var r,t,i;System.Enum.checkEnumType(n);r=[];t=n;for(i in t)t.hasOwnProperty(i)&&i.indexOf("$")<0&&typeof t[i]!="function"&&r.push(t[i]);return r},format:function(n,t,i){System.Enum.checkEnumType(n);var r;if(!Bridge.hasValue(t)&&(r="value")||!Bridge.hasValue(i)&&(r="format"))throw new System.ArgumentNullException(r);switch(i){case"G":case"g":return System.Enum.toString(n,t);case"x":case"X":return t.toString(16);case"d":case"D":return t.toString();case"f":case"F":return System.Enum.toString(n,t,!0);default:throw new System.FormatException;}},getNames:function(n){var r,i,t;System.Enum.checkEnumType(n);r=[];i=n;for(t in i)i.hasOwnProperty(t)&&t.indexOf("$")<0&&typeof i[t]!="function"&&r.push(s.toName(t));return r},getName:function(n,t){var r,i;System.Enum.checkEnumType(n);r=n;for(i in r)if(r[i]===t)return i.charAt(0).toUpperCase()+i.slice(1);return null},hasFlag:function(n,t){return!!(n&t)},isDefined:function(n,t){var i,u,r;System.Enum.checkEnumType(n);i=n;u=Bridge.isString(t);for(r in i)if(u?s.nameEquals(r,t,!1):i[r]===t)return!0;return!1},tryParse:function(n,t,i,r){return(i.v=0,i.v=s.parse(n,t,r,!0),i.v==null)?!1:!0}};System.Enum=s;var i=function(n){return n.test(navigator.userAgent.toLowerCase())},tt=Bridge.global.document&&Bridge.global.document.compatMode==="CSS1Compat",v=function(n,t){var i;return n&&(i=t.exec(navigator.userAgent.toLowerCase()))?parseFloat(i[1]):0},r=Bridge.global.document?Bridge.global.document.documentMode:null,p=i(/opera/),kt=p&&i(/version\/10\.5/),it=i(/\bchrome\b/),d=i(/webkit/),c=!it&&i(/safari/),dt=c&&i(/applewebkit\/4/),gt=c&&i(/version\/3/),ni=c&&i(/version\/4/),ti=c&&i(/version\/5\.0/),ii=c&&i(/version\/5/),u=!p&&(i(/msie/)||i(/trident/)),e=u&&(i(/msie 7/)&&r!==8&&r!==9&&r!==10||r===7),h=u&&(i(/msie 8/)&&r!==7&&r!==9&&r!==10||r===8),l=u&&(i(/msie 9/)&&r!==7&&r!==8&&r!==10||r===9),w=u&&(i(/msie 10/)&&r!==7&&r!==8&&r!==9||r===10),rt=u&&(i(/trident\/7\.0/)&&r!==7&&r!==8&&r!==9&&r!==10||r===11),f=u&&i(/msie 6/),y=!d&&!u&&i(/gecko/),b=y&&i(/rv:1\.9/),ri=y&&i(/rv:2\.0/),ui=y&&i(/rv:5\./),fi=y&&i(/rv:10\./),ei=b&&i(/rv:1\.9\.0/),oi=b&&i(/rv:1\.9\.1/),si=b&&i(/rv:1\.9\.2/),ut=i(/windows|win32/),ft=i(/macintosh|mac os x/),et=i(/linux/),hi=v(!0,/\bchrome\/(\d+\.\d+)/),a=v(!0,/\bfirefox\/(\d+\.\d+)/),ci=v(u,/msie (\d+\.\d+)/),li=v(p,/version\/(\d+\.\d+)/),ai=v(c,/version\/(\d+\.\d+)/),vi=v(d,/webkit\/(\d+\.\d+)/),yi=Bridge.global.location?/^https/i.test(Bridge.global.location.protocol):!1,ot=/iPhone/i.test(navigator.platform),st=/iPod/i.test(navigator.platform),g=/iPad/i.test(navigator.userAgent),pi=/Blackberry/i.test(navigator.userAgent),ht=/Android/i.test(navigator.userAgent),ct=ft||ut||et&&!ht,lt=g,wi=!ct&&!lt,bi={isStrict:tt,isIEQuirks:u&&!tt&&(f||e||h||l),isOpera:p,isOpera10_5:kt,isWebKit:d,isChrome:it,isSafari:c,isSafari3:gt,isSafari4:ni,isSafari5:ii,isSafari5_0:ti,isSafari2:dt,isIE:u,isIE6:f,isIE7:e,isIE7m:f||e,isIE7p:u&&!f,isIE8:h,isIE8m:f||e||h,isIE8p:u&&!(f||e),isIE9:l,isIE9m:f||e||h||l,isIE9p:u&&!(f||e||h),isIE10:w,isIE10m:f||e||h||l||w,isIE10p:u&&!(f||e||h||l),isIE11:rt,isIE11m:f||e||h||l||w||rt,isIE11p:u&&!(f||e||h||l||w),isGecko:y,isGecko3:b,isGecko4:ri,isGecko5:ui,isGecko10:fi,isFF3_0:ei,isFF3_5:oi,isFF3_6:si,isFF4:4<=a&&a<5,isFF5:5<=a&&a<6,isFF10:10<=a&&a<11,isLinux:et,isWindows:ut,isMac:ft,chromeVersion:hi,firefoxVersion:a,ieVersion:ci,operaVersion:li,safariVersion:ai,webKitVersion:vi,isSecure:yi,isiPhone:ot,isiPod:st,isiPad:g,isBlackberry:pi,isAndroid:ht,isDesktop:ct,isTablet:lt,isPhone:wi,iOS:ot||g||st,standalone:Bridge.global.navigator?!!Bridge.global.navigator.standalone:!1};Bridge.Browser=bi;at={_initialize:function(){this.$initialized||(this.$initialized=Bridge.emptyFn,this.$staticInit&&this.$staticInit(),this.$initMembers&&this.$initMembers())},initConfig:function(n,t,i,r,u,f){var s,e,o,h;if(i.fields)for(e in i.fields)u[e]=i.fields[e];if(i.properties)for(e in i.properties)Bridge.property(u,e,i.properties[e],r);if(i.events)for(e in i.events)Bridge.event(u,e,i.events[e],r);if(i.alias)for(o=0;o0&&u.$$inherits[0].$staticInit&&u.$$inherits[0].$staticInit(),u.$base.ctor.call(this))},i.ctor=u),i.$literal&&(o&&o.getDefaultValue||(u.getDefaultValue=function(){var n={};return n.$getType=function(){return u},n}),u.$literal=!0,delete i.$literal),l||(v=Bridge.Class.set(v,n,u)),r&&r.fn.$cache.push({type:u,args:r.args}),u.$$name=n,u.$kind=i.$kind,r&&l){for(u.$genericTypeDefinition=r.fn,u.$typeArguments=r.args,u.$assembly=r.fn.$assembly||Bridge.$currentAssembly,nt=Bridge.Reflection.getTypeFullName(r.fn),s=0;s0)for(d=0;d0)for(u=0;u1?t[1]:"Object")},_makeQName:function(n,t){return n+(t?", "+t.name:"")},getTypeQName:function(n){return Bridge.Reflection._makeQName(Bridge.Reflection.getTypeFullName(n),n.$assembly)},getTypeName:function(n){var t=Bridge.Reflection.getTypeFullName(n),i=t.indexOf("["),r=t.lastIndexOf(".",i>=0?i:t.length);return r>0?t.substr(r+1):t},getTypeNamespace:function(n){var t=Bridge.Reflection.getTypeFullName(n),u=t.indexOf("["),f=t.lastIndexOf(".",u>=0?u:t.length),i=f>0?t.substr(0,f):"",r;return n.$assembly&&(r=Bridge.Reflection._getAssemblyType(n.$assembly,i),r&&(i=Bridge.Reflection.getTypeNamespace(r))),i},getTypeAssembly:function(n){return System.Array.contains([Date,Number,Boolean,String,Function,Array],n)?Bridge.SystemAssembly:n.$assembly||Bridge.SystemAssembly},_getAssemblyType:function(n,t){var e=!1,u,f,i,r;if(n||(n=Bridge.SystemAssembly,e=!0),n.$types){if(u=n.$types[t]||null,u)return u;if(n.name==="mscorlib")n=Bridge.global;else return null}for(f=t.split("."),i=n,r=0;r0?n.substring(r.index+1,i.lastIndex-1):n.substring(r.index+1)).trim()])))return null;break;case",":if(i.exec(n),!(t=System.Reflection.Assembly.assemblies[(i.lastIndex>0?n.substring(r.index+1,i.lastIndex-1):n.substring(r.index+1)).trim()]))return null}}else f=n.substring(o);return s&&i.lastIndex?null:(u=Bridge.Reflection._getAssemblyType(t,f.trim()),u=e.length?u.apply(null,e):u,u&&u.$staticInit&&u.$staticInit(),u)},getType:function(n,t){return n?Bridge.Reflection._getType(n,t):null},canAcceptNull:function(n){return n.$kind==="struct"||n===System.Decimal||n===System.Int64||n===System.UInt64||n===System.Double||n===System.Single||n===System.Byte||n===System.SByte||n===System.Int16||n===System.UInt16||n===System.Int32||n===System.UInt32||n===Bridge.Int||n===Boolean||n===Date||n===Number?!1:!0},applyConstructor:function(n,t){var a,f,s,h,e,i,r,c,o,u,l;if(!t||t.length===0)return new n;if(n.$$initCtor&&n.$kind!=="anonymous"){if(a=Bridge.getMetadata(n),f=0,a){for(s=Bridge.Reflection.getMembers(n,1,28),e=0;e1)throw new System.Exception("The ambiguous constructor call");}return l=function(){n.apply(this,t)},l.prototype=n.prototype,new l},getAttributes:function(n,t,i){var f=[],r,o,u,e,s,c,h;if(i&&(c=Bridge.Reflection.getBaseType(n),c))for(u=Bridge.Reflection.getAttributes(c,t,!0),r=0;r=0;h--)Bridge.Reflection.isInstanceOfType(f[h],o)&&f.splice(h,1);f.push(u)}return f},getMembers:function(n,t,i,r,u){var e=[],l,a,o,y,h,c,v,s,f;if(((i&72)==72||(i&6)==4)&&(l=Bridge.Reflection.getBaseType(n),l&&(e=Bridge.Reflection.getMembers(l,t&-2,i&(i&64?255:247)&(i&2?251:255),r,u))),a=function(n){if(t&n.t&&(i&4&&!n.is||i&8&&n.is)&&(!r||n.n===r)){if(u){if((n.p||[]).length!==u.length)return;for(var f=0;f1)throw new System.Reflection.AmbiguousMatchException("Ambiguous match");else if(s.length===1)return s[0];n=Bridge.Reflection.getBaseType(n)}return null}return e},midel:function(n,t,i){var r,u,f,e;if(n.is&&!!t)throw new System.ArgumentException("Cannot specify target for static method");else if(!n.is&&!t)throw new System.ArgumentException("Must specify target for instance method");if(n.fg)r=function(){return(n.is?n.td:this)[n.fg]};else if(n.fs)r=function(t){(n.is?n.td:this)[n.fs]=t};else{if(r=n.def||(n.is||n.sm?n.td[n.sn]:t[n.sn]),n.tpc){if(!i||i.length!==n.tpc)throw new System.ArgumentException("Wrong number of type arguments");u=r;r=function(){return u.apply(this,i.concat(Array.prototype.slice.call(arguments)))}}else if(i&&i.length)throw new System.ArgumentException("Cannot specify type arguments for non-generic method");n.exp&&(f=r,r=function(){return f.apply(this,Array.prototype.slice.call(arguments,0,arguments.length-1).concat(arguments[arguments.length-1]))});n.sm&&(e=r,r=function(){return e.apply(null,[this].concat(Array.prototype.slice.call(arguments)))})}return Bridge.fn.bind(t,r)},invokeCI:function(n,t){return n.exp&&(t=t.slice(0,t.length-1).concat(t[t.length-1])),n.def?n.def.apply(null,t):n.sm?n.td[n.sn].apply(null,t):Bridge.Reflection.applyConstructor(n.sn?n.td[n.sn]:n.td,t)},fieldAccess:function(n,t){if(n.is&&!!t)throw new System.ArgumentException("Cannot specify target for static field");else if(!n.is&&!t)throw new System.ArgumentException("Must specify target for instance field");if(t=n.is?n.td:t,arguments.length===3)t[n.sn]=arguments[2];else return t[n.sn]}};Bridge.setMetadata=Bridge.Reflection.setMetadata;System.Reflection.ConstructorInfo={$is:function(n){return n!=null&&n.t===1}};System.Reflection.EventInfo={$is:function(n){return n!=null&&n.t===2}};System.Reflection.FieldInfo={$is:function(n){return n!=null&&n.t===4}};System.Reflection.MethodBase={$is:function(n){return n!=null&&(n.t===1||n.t===8)}};System.Reflection.MethodInfo={$is:function(n){return n!=null&&n.t===8}};System.Reflection.PropertyInfo={$is:function(n){return n!=null&&n.t===16}};System.AppDomain={getAssemblies:function(){return Object.keys(System.Reflection.Assembly.assemblies).map(function(n){return System.Reflection.Assembly.assemblies[n]})}};Bridge.define("System.IFormattable",{$kind:"interface",statics:{$is:function(n){return Bridge.isNumber(n)||Bridge.isDate(n)?!0:Bridge.is(n,System.IFormattable,!0)}}});Bridge.define("System.IComparable",{$kind:"interface",statics:{$is:function(n){return Bridge.isNumber(n)||Bridge.isDate(n)||Bridge.isBoolean(n)||Bridge.isString(n)?!0:Bridge.is(n,System.IComparable,!0)}}});Bridge.define("System.IFormatProvider",{$kind:"interface"});Bridge.define("System.ICloneable",{$kind:"interface"});Bridge.define("System.IComparable$1",function(n){return{$kind:"interface",statics:{$is:function(t){return Bridge.isNumber(t)&&n.$number&&n.$is(t)||Bridge.isDate(t)&&n===Date||Bridge.isBoolean(t)&&n===Boolean||Bridge.isString(t)&&n===String?!0:Bridge.is(t,System.IComparable$1(n),!0)}}}});Bridge.define("System.IEquatable$1",function(n){return{$kind:"interface",statics:{$is:function(t){return Bridge.isNumber(t)&&n.$number&&n.$is(t)||Bridge.isDate(t)&&n===Date||Bridge.isBoolean(t)&&n===Boolean||Bridge.isString(t)&&n===String?!0:Bridge.is(t,System.IEquatable$1(n),!0)}}}});Bridge.define("Bridge.IPromise",{$kind:"interface"});Bridge.define("System.IDisposable",{$kind:"interface"});vt={hasValue:Bridge.hasValue,getValue:function(n){if(!Bridge.hasValue(n))throw new System.InvalidOperationException("Nullable instance doesn't have a value.");return n},getValueOrDefault:function(n,t){return Bridge.hasValue(n)?n:t},add:function(n,t){return Bridge.hasValue$1(n,t)?n+t:null},band:function(n,t){return Bridge.hasValue$1(n,t)?n&t:null},bor:function(n,t){return Bridge.hasValue$1(n,t)?n|t:null},and:function(n,t){return n===!0&&t===!0?!0:n===!1||t===!1?!1:null},or:function(n,t){return n===!0||t===!0?!0:n===!1&&t===!1?!1:null},div:function(n,t){return Bridge.hasValue$1(n,t)?n/t:null},eq:function(n,t){return Bridge.hasValue(n)?n===t:!Bridge.hasValue(t)},equals:function(n,t,i){return Bridge.hasValue(n)?i?i(n,t):Bridge.equals(n,t):!Bridge.hasValue(t)},toString:function(n,t){return Bridge.hasValue(n)?t?t(n):n.toString():""},getHashCode:function(n,t){return Bridge.hasValue(n)?t?t(n):Bridge.getHashCode(n):0},xor:function(n,t){return Bridge.hasValue$1(n,t)?n^t:null},gt:function(n,t){return Bridge.hasValue$1(n,t)&&n>t},gte:function(n,t){return Bridge.hasValue$1(n,t)&&n>=t},neq:function(n,t){return Bridge.hasValue(n)?n!==t:Bridge.hasValue(t)},lt:function(n,t){return Bridge.hasValue$1(n,t)&&n>t:null},srr:function(n,t){return Bridge.hasValue$1(n,t)?n>>>t:null},sub:function(n,t){return Bridge.hasValue$1(n,t)?n-t:null},bnot:function(n){return Bridge.hasValue(n)?~n:null},neg:function(n){return Bridge.hasValue(n)?-n:null},not:function(n){return Bridge.hasValue(n)?!n:null},pos:function(n){return Bridge.hasValue(n)?+n:null},lift:function(){for(var n=1;n=System.Char.min&&n<=System.Char.max},getDefaultValue:function(){return 0},parse:function(n){if(!Bridge.hasValue(n))throw new System.ArgumentNullException("s");if(n.length!==1)throw new System.FormatException;return n.charCodeAt(0)},tryParse:function(n,t){var i=n&&n.length===1;return t.v=i?n.charCodeAt(0):0,i},format:function(n,t,i){return Bridge.Int.format(n,t,i)},charCodeAt:function(n,t){if(n==null)throw new System.ArgumentNullException;if(n.length!=1)throw new System.FormatException("String must be exactly one character long");return n.charCodeAt(t)},isWhiteSpace:function(n){return!/[^\s\x09-\x0D\x85\xA0]/.test(n)},isDigit:function(n){return n<256?n>=48&&n<=57:new RegExp("[0-90-9٠-٩۰-۹߀-߉०-९০-৯੦-੯૦-૯୦-୯௦-௯౦-౯೦-೯൦-൯๐-๙໐-໙༠-༩၀-၉႐-႙០-៩᠐-᠙᥆-᥏᧐-᧙᪀-᪉᪐-᪙᭐-᭙᮰-᮹᱀-᱉᱐-᱙꘠-꘩꣐-꣙꤀-꤉꧐-꧙꩐-꩙꯰-꯹0-9]").test(String.fromCharCode(n))},isLetter:function(n){return n<256?n>=65&&n<=90||n>=97&&n<=122:new RegExp("[A-Za-za-zµß-öø-ÿāăąćĉċčďđēĕėęěĝğġģĥħĩīĭįıijĵķĸĺļľŀłńņňʼnŋōŏőœŕŗřśŝşšţťŧũūŭůűųŵŷźżž-ƀƃƅƈƌƍƒƕƙ-ƛƞơƣƥƨƪƫƭưƴƶƹƺƽ-ƿdžljnjǎǐǒǔǖǘǚǜǝǟǡǣǥǧǩǫǭǯǰdzǵǹǻǽǿȁȃȅȇȉȋȍȏȑȓȕȗșțȝȟȡȣȥȧȩȫȭȯȱȳ-ȹȼȿɀɂɇɉɋɍɏ-ʓʕ-ʯͱͳͷͻ-ͽΐά-ώϐϑϕ-ϗϙϛϝϟϡϣϥϧϩϫϭϯ-ϳϵϸϻϼа-џѡѣѥѧѩѫѭѯѱѳѵѷѹѻѽѿҁҋҍҏґғҕҗҙқҝҟҡңҥҧҩҫҭүұҳҵҷҹһҽҿӂӄӆӈӊӌӎӏӑӓӕӗәӛӝӟӡӣӥӧөӫӭӯӱӳӵӷӹӻӽӿԁԃԅԇԉԋԍԏԑԓԕԗԙԛԝԟԡԣԥԧա-ևᴀ-ᴫᵫ-ᵷᵹ-ᶚḁḃḅḇḉḋḍḏḑḓḕḗḙḛḝḟḡḣḥḧḩḫḭḯḱḳḵḷḹḻḽḿṁṃṅṇṉṋṍṏṑṓṕṗṙṛṝṟṡṣṥṧṩṫṭṯṱṳṵṷṹṻṽṿẁẃẅẇẉẋẍẏẑẓẕ-ẝẟạảấầẩẫậắằẳẵặẹẻẽếềểễệỉịọỏốồổỗộớờởỡợụủứừửữựỳỵỷỹỻỽỿ-ἇἐ-ἕἠ-ἧἰ-ἷὀ-ὅὐ-ὗὠ-ὧὰ-ώᾀ-ᾇᾐ-ᾗᾠ-ᾧᾰ-ᾴᾶᾷιῂ-ῄῆῇῐ-ΐῖῗῠ-ῧῲ-ῴῶῷℊℎℏℓℯℴℹℼℽⅆ-ⅉⅎↄⰰ-ⱞⱡⱥⱦⱨⱪⱬⱱⱳⱴⱶ-ⱻⲁⲃⲅⲇⲉⲋⲍⲏⲑⲓⲕⲗⲙⲛⲝⲟⲡⲣⲥⲧⲩⲫⲭⲯⲱⲳⲵⲷⲹⲻⲽⲿⳁⳃⳅⳇⳉⳋⳍⳏⳑⳓⳕⳗⳙⳛⳝⳟⳡⳣⳤⳬⳮⳳⴀ-ⴥⴧⴭꙁꙃꙅꙇꙉꙋꙍꙏꙑꙓꙕꙗꙙꙛꙝꙟꙡꙣꙥꙧꙩꙫꙭꚁꚃꚅꚇꚉꚋꚍꚏꚑꚓꚕꚗꜣꜥꜧꜩꜫꜭꜯ-ꜱꜳꜵꜷꜹꜻꜽꜿꝁꝃꝅꝇꝉꝋꝍꝏꝑꝓꝕꝗꝙꝛꝝꝟꝡꝣꝥꝧꝩꝫꝭꝯꝱ-ꝸꝺꝼꝿꞁꞃꞅꞇꞌꞎꞑꞓꞡꞣꞥꞧꞩꟺff-stﬓ-ﬗa-zA-ZÀ-ÖØ-ÞĀĂĄĆĈĊČĎĐĒĔĖĘĚĜĞĠĢĤĦĨĪĬĮİIJĴĶĹĻĽĿŁŃŅŇŊŌŎŐŒŔŖŘŚŜŞŠŢŤŦŨŪŬŮŰŲŴŶŸŹŻŽƁƂƄƆƇƉ-ƋƎ-ƑƓƔƖ-ƘƜƝƟƠƢƤƦƧƩƬƮƯƱ-ƳƵƷƸƼDŽLJNJǍǏǑǓǕǗǙǛǞǠǢǤǦǨǪǬǮDZǴǶ-ǸǺǼǾȀȂȄȆȈȊȌȎȐȒȔȖȘȚȜȞȠȢȤȦȨȪȬȮȰȲȺȻȽȾɁɃ-ɆɈɊɌɎͰͲͶΆΈ-ΊΌΎΏΑ-ΡΣ-ΫϏϒ-ϔϘϚϜϞϠϢϤϦϨϪϬϮϴϷϹϺϽ-ЯѠѢѤѦѨѪѬѮѰѲѴѶѸѺѼѾҀҊҌҎҐҒҔҖҘҚҜҞҠҢҤҦҨҪҬҮҰҲҴҶҸҺҼҾӀӁӃӅӇӉӋӍӐӒӔӖӘӚӜӞӠӢӤӦӨӪӬӮӰӲӴӶӸӺӼӾԀԂԄԆԈԊԌԎԐԒԔԖԘԚԜԞԠԢԤԦԱ-ՖႠ-ჅჇჍḀḂḄḆḈḊḌḎḐḒḔḖḘḚḜḞḠḢḤḦḨḪḬḮḰḲḴḶḸḺḼḾṀṂṄṆṈṊṌṎṐṒṔṖṘṚṜṞṠṢṤṦṨṪṬṮṰṲṴṶṸṺṼṾẀẂẄẆẈẊẌẎẐẒẔẞẠẢẤẦẨẪẬẮẰẲẴẶẸẺẼẾỀỂỄỆỈỊỌỎỐỒỔỖỘỚỜỞỠỢỤỦỨỪỬỮỰỲỴỶỸỺỼỾἈ-ἏἘ-ἝἨ-ἯἸ-ἿὈ-ὍὙὛὝὟὨ-ὯᾸ-ΆῈ-ΉῘ-ΊῨ-ῬῸ-Ώℂℇℋ-ℍℐ-ℒℕℙ-ℝℤΩℨK-ℭℰ-ℳℾℿⅅↃⰀ-ⰮⱠⱢ-ⱤⱧⱩⱫⱭ-ⱰⱲⱵⱾ-ⲀⲂⲄⲆⲈⲊⲌⲎⲐⲒⲔⲖⲘⲚⲜⲞⲠⲢⲤⲦⲨⲪⲬⲮⲰⲲⲴⲶⲸⲺⲼⲾⳀⳂⳄⳆⳈⳊⳌⳎⳐⳒⳔⳖⳘⳚⳜⳞⳠⳢⳫⳭⳲꙀꙂꙄꙆꙈꙊꙌꙎꙐꙒꙔꙖꙘꙚꙜꙞꙠꙢꙤꙦꙨꙪꙬꚀꚂꚄꚆꚈꚊꚌꚎꚐꚒꚔꚖꜢꜤꜦꜨꜪꜬꜮꜲꜴꜶꜸꜺꜼꜾꝀꝂꝄꝆꝈꝊꝌꝎꝐꝒꝔꝖꝘꝚꝜꝞꝠꝢꝤꝦꝨꝪꝬꝮꝹꝻꝽꝾꞀꞂꞄꞆꞋꞍꞐꞒꞠꞢꞤꞦꞨꞪA-ZDžLjNjDzᾈ-ᾏᾘ-ᾟᾨ-ᾯᾼῌῼʰ-ˁˆ-ˑˠ-ˤˬˮʹͺՙـۥۦߴߵߺࠚࠤࠨॱๆໆჼៗᡃᪧᱸ-ᱽᴬ-ᵪᵸᶛ-ᶿⁱⁿₐ-ₜⱼⱽⵯⸯ々〱-〵〻ゝゞー-ヾꀕꓸ-ꓽꘌꙿꜗ-ꜟꝰꞈꟸꟹꧏꩰꫝꫳꫴー゙゚ªºƻǀ-ǃʔא-תװ-ײؠ-ؿف-يٮٯٱ-ۓەۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪࠀ-ࠕࡀ-ࡘࢠࢢ-ࢬऄ-हऽॐक़-ॡॲ-ॷॹ-ॿঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-ళవ-హఽౘౙౠౡಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഅ-ഌഎ-ഐഒ-ഺഽൎൠൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๅກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎა-ჺჽ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏼᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៜᠠ-ᡂᡄ-ᡷᢀ-ᢨᢪᢰ-ᣵᤀ-ᤜᥐ-ᥭᥰ-ᥴᦀ-ᦫᧁ-ᧇᨀ-ᨖᨠ-ᩔᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱷᳩ-ᳬᳮ-ᳱᳵᳶℵ-ℸⴰ-ⵧⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ〆〼ぁ-ゖゟァ-ヺヿㄅ-ㄭㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿌ꀀ-ꀔꀖ-ꒌꓐ-ꓷꔀ-ꘋꘐ-ꘟꘪꘫꙮꚠ-ꛥꟻ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩯꩱ-ꩶꩺꪀ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛꫜꫠ-ꫪꫲꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꯀ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎יִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼヲ-ッア-ンᅠ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ]").test(String.fromCharCode(n))},isHighSurrogate:function(n){return new RegExp("[\uD800-\uDBFF]").test(String.fromCharCode(n))},isLowSurrogate:function(n){return new RegExp("[\uDC00-\uDFFF]").test(String.fromCharCode(n))},isSurrogate:function(n){return new RegExp("[\uD800-\uDFFF]").test(String.fromCharCode(n))},isNull:function(n){return new RegExp("\x00").test(String.fromCharCode(n))},isSymbol:function(n){return n<256?[36,43,60,61,62,94,96,124,126,162,163,164,165,166,167,168,169,172,174,175,176,177,180,182,184,215,247].indexOf(n)!=-1:new RegExp("[₠-⃏⃐-⃿℀-⅏⅐-↏←-⇿∀-⋿⌀-⏿■-◿☀-⛿✀-➿⟀-⟯⟰-⟿⠀-⣿⤀-⥿⦀-⧿⨀-⫿⬀-⯿]").test(String.fromCharCode(n))},isSeparator:function(n){return n<256?n==32||n==160:new RegExp("[\u2028\u2029   ᠎ -    ]").test(String.fromCharCode(n))},isPunctuation:function(n){return n<256?[33,34,35,37,38,39,40,41,42,44,45,46,47,58,59,63,64,91,92,93,95,123,125,161,171,173,183,187,191].indexOf(n)!=-1:new RegExp("[!-#%-*,-/:;?@[-]_{}¡§«¶·»¿;·՚-՟։֊־׀׃׆׳״؉؊،؍؛؞؟٪-٭۔܀-܍߷-߹࠰-࠾࡞।॥॰૰෴๏๚๛༄-༒༔༺-༽྅࿐-࿔࿙࿚၊-၏჻፠-፨᐀᙭᙮᚛᚜᛫-᛭᜵᜶។-៖៘-៚᠀-᠊᥄᥅᨞᨟᪠-᪦᪨-᪭᭚-᭠᯼-᯿᰻-᰿᱾᱿᳀-᳇᳓‐-‧‰-⁃⁅-⁑⁓-⁞⁽⁾₍₎〈〉❨-❵⟅⟆⟦-⟯⦃-⦘⧘-⧛⧼⧽⳹-⳼⳾⳿⵰⸀-⸮⸰-⸻、-〃〈-】〔-〟〰〽゠・꓾꓿꘍-꘏꙳꙾꛲-꛷꡴-꡷꣎꣏꣸-꣺꤮꤯꥟꧁-꧍꧞꧟꩜-꩟꫞꫟꫰꫱꯫﴾﴿︐-︙︰-﹒﹔-﹡﹣﹨﹪﹫!-#%-*,-/:;?@[-]_{}⦅-・-֊־᐀᠆‐-―⸗⸚⸺⸻〜〰゠︱︲﹘﹣-([{༺༼᚛‚„⁅⁽₍〈❨❪❬❮❰❲❴⟅⟦⟨⟪⟬⟮⦃⦅⦇⦉⦋⦍⦏⦑⦓⦕⦗⧘⧚⧼⸢⸤⸦⸨〈《「『【〔〖〘〚〝﴾︗︵︷︹︻︽︿﹁﹃﹇﹙﹛﹝([{⦅「)]}༻༽᚜⁆⁾₎〉❩❫❭❯❱❳❵⟆⟧⟩⟫⟭⟯⦄⦆⦈⦊⦌⦎⦐⦒⦔⦖⦘⧙⧛⧽⸣⸥⸧⸩〉》」』】〕〗〙〛〞〟﴿︘︶︸︺︼︾﹀﹂﹄﹈﹚﹜﹞)]}⦆」«‘‛“‟‹⸂⸄⸉⸌⸜⸠»’”›⸃⸅⸊⸍⸝⸡_‿⁀⁔︳︴﹍-﹏_!-#%-'*,./:;?@\\¡§¶·¿;·՚-՟։׀׃׆׳״؉؊،؍؛؞؟٪-٭۔܀-܍߷-߹࠰-࠾࡞।॥॰૰෴๏๚๛༄-༒༔྅࿐-࿔࿙࿚၊-၏჻፠-፨᙭᙮᛫-᛭᜵᜶។-៖៘-៚᠀-᠅᠇-᠊᥄᥅᨞᨟᪠-᪦᪨-᪭᭚-᭠᯼-᯿᰻-᰿᱾᱿᳀-᳇᳓‖‗†-‧‰-‸※-‾⁁-⁃⁇-⁑⁓⁕-⁞⳹-⳼⳾⳿⵰⸀⸁⸆-⸈⸋⸎-⸖⸘⸙⸛⸞⸟⸪-⸮⸰-⸹、-〃〽・꓾꓿꘍-꘏꙳꙾꛲-꛷꡴-꡷꣎꣏꣸-꣺꤮꤯꥟꧁-꧍꧞꧟꩜-꩟꫞꫟꫰꫱꯫︐-︖︙︰﹅﹆﹉-﹌﹐-﹒﹔-﹗﹟-﹡﹨﹪﹫!-#%-'*,./:;?@\。、・]").test(String.fromCharCode(n))},isNumber:function(n){return n<256?[48,49,50,51,52,53,54,55,56,57,178,179,185,188,189,190].indexOf(n)!=-1:new RegExp("[0-9²³¹¼-¾٠-٩۰-۹߀-߉०-९০-৯৴-৹੦-੯૦-૯୦-୯୲-୷௦-௲౦-౯౸-౾೦-೯൦-൵๐-๙໐-໙༠-༳၀-၉႐-႙፩-፼ᛮ-ᛰ០-៩៰-៹᠐-᠙᥆-᥏᧐-᧚᪀-᪉᪐-᪙᭐-᭙᮰-᮹᱀-᱉᱐-᱙⁰⁴-⁹₀-₉⅐-ↂↅ-↉①-⒛⓪-⓿❶-➓⳽〇〡-〩〸-〺㆒-㆕㈠-㈩㉈-㉏㉑-㉟㊀-㊉㊱-㊿꘠-꘩ꛦ-ꛯ꠰-꠵꣐-꣙꤀-꤉꧐-꧙꩐-꩙꯰-꯹0-90-9٠-٩۰-۹߀-߉०-९০-৯੦-੯૦-૯୦-୯௦-௯౦-౯೦-೯൦-൯๐-๙໐-໙༠-༩၀-၉႐-႙០-៩᠐-᠙᥆-᥏᧐-᧙᪀-᪉᪐-᪙᭐-᭙᮰-᮹᱀-᱉᱐-᱙꘠-꘩꣐-꣙꤀-꤉꧐-꧙꩐-꩙꯰-꯹0-9ᛮ-ᛰⅠ-ↂↅ-ↈ〇〡-〩〸-〺ꛦ-ꛯ²³¹¼-¾৴-৹୲-୷௰-௲౸-౾൰-൵༪-༳፩-፼៰-៹᧚⁰⁴-⁹₀-₉⅐-⅟↉①-⒛⓪-⓿❶-➓⳽㆒-㆕㈠-㈩㉈-㉏㉑-㉟㊀-㊉㊱-㊿꠰-꠵]").test(String.fromCharCode(n))},isControl:function(n){return n<256?n>=0&&n<=31||n>=127&&n<=159:new RegExp("[\x00-\x1f