Lines Matching defs:models

92 `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Nn=this.next();return Nn||this.lex()},begin:function(Nn){this.conditionStack.push(Nn)},popState:function(){var Nn=this.conditionStack.length-1;return Nn>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(Nn){return Nn=this.conditionStack.length-1-Math.abs(Nn||0),Nn>=0?this.conditionStack[Nn]:"INITIAL"},pushState:function(Nn){this.begin(Nn)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(Nn,Bn,ke,pe){switch(ke){case 0:return 6;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 22;case 5:return 23;case 6:return this.begin("acc_title"),24;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),26;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:break;case 14:c;break;case 15:return 12;case 16:break;case 17:return 11;case 18:return 15;case 19:return 16;case 20:return 17;case 21:return 18;case 22:return this.begin("person_ext"),45;case 23:return this.begin("person"),44;case 24:return this.begin("system_ext_queue"),51;case 25:return this.begin("system_ext_db"),50;case 26:return this.begin("system_ext"),49;case 27:return this.begin("system_queue"),48;case 28:return this.begin("system_db"),47;case 29:return this.begin("system"),46;case 30:return this.begin("boundary"),37;case 31:return this.begin("enterprise_boundary"),34;case 32:return this.begin("system_boundary"),36;case 33:return this.begin("container_ext_queue"),57;case 34:return this.begin("container_ext_db"),56;case 35:return this.begin("container_ext"),55;case 36:return this.begin("container_queue"),54;case 37:return this.begin("container_db"),53;case 38:return this.begin("container"),52;case 39:return this.begin("container_boundary"),38;case 40:return this.begin("component_ext_queue"),63;case 41:return this.begin("component_ext_db"),62;case 42:return this.begin("component_ext"),61;case 43:return this.begin("component_queue"),60;case 44:return this.begin("component_db"),59;case 45:return this.begin("component"),58;case 46:return this.begin("node"),39;case 47:return this.begin("node"),39;case 48:return this.begin("node_l"),40;case 49:return this.begin("node_r"),41;case 50:return this.begin("rel"),64;case 51:return this.begin("birel"),65;case 52:return this.begin("rel_u"),66;case 53:return this.begin("rel_u"),66;case 54:return this.begin("rel_d"),67;case 55:return this.begin("rel_d"),67;case 56:return this.begin("rel_l"),68;case 57:return this.begin("rel_l"),68;case 58:return this.begin("rel_r"),69;case 59:return this.begin("rel_r"),69;case 60:return this.begin("rel_b"),70;case 61:return this.begin("rel_index"),71;case 62:return this.begin("update_el_style"),72;case 63:return this.begin("update_rel_style"),73;case 64:return this.begin("update_layout_config"),74;case 65:return"EOF_IN_STRUCT";case 66:return this.begin("attribute"),"ATTRIBUTE_EMPTY";case 67:this.begin("attribute");break;case 68:this.popState(),this.popState();break;case 69:return 80;case 70:break;case 71:return 80;case 72:this.begin("string");break;case 73:this.popState();break;case 74:return"STR";case 75:this.begin("string_kv");break;case 76:return this.begin("string_kv_key"),"STR_KEY";case 77:this.popState(),this.begin("string_kv_value");break;case 78:return"STR_VALUE";case 79:this.popState(),this.popState();break;case 80:return"STR";case 81:return"LBRACE";case 82:return"RBRACE";case 83:return"SPACE";case 84:return"EOL";case 85:return 14}},rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},string_kv_value:{rules:[78,79],inclusive:!1},string_kv_key:{rules:[77],inclusive:!1},string_kv:{rules:[76],inclusive:!1},string:{rules:[73,74],inclusive:!1},attribute:{rules:[68,69,70,71,72,75,80],inclusive:!1},update_layout_config:{rules:[65,66,67,68],inclusive:!1},update_rel_style:{rules:[65,66,67,68],inclusive:!1},update_el_style:{rules:[65,66,67,68],inclusive:!1},rel_b:{rules:[65,66,67,68],inclusive:!1},rel_r:{rules:[65,66,67,68],inclusive:!1},rel_l:{rules:[65,66,67,68],inclusive:!1},rel_d:{rules:[65,66,67,68],inclusive:!1},rel_u:{rules:[65,66,67,68],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[65,66,67,68],inclusive:!1},node_r:{rules:[65,66,67,68],inclusive:!1},node_l:{rules:[65,66,67,68],inclusive:!1},node:{rules:[65,66,67,68],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[65,66,67,68],inclusive:!1},component_ext_queue:{rules:[],inclusive:!1},component_ext_db:{rules:[65,66,67,68],inclusive:!1},component_ext:{rules:[65,66,67,68],inclusive:!1},component_queue:{rules:[65,66,67,68],inclusive:!1},component_db:{rules:[65,66,67,68],inclusive:!1},component:{rules:[65,66,67,68],inclusive:!1},container_boundary:{rules:[65,66,67,68],inclusive:!1},container_ext_queue:{rules:[65,66,67,68],inclusive:!1},container_ext_db:{rules:[65,66,67,68],inclusive:!1},container_ext:{rules:[65,66,67,68],inclusive:!1},container_queue:{rules:[65,66,67,68],inclusive:!1},container_db:{rules:[65,66,67,68],inclusive:!1},container:{rules:[65,66,67,68],inclusive:!1},birel:{rules:[65,66,67,68],inclusive:!1},system_boundary:{rules:[65,66,67,68],inclusive:!1},enterprise_boundary:{rules:[65,66,67,68],inclusive:!1},boundary:{rules:[65,66,67,68],inclusive:!1},system_ext_queue:{rules:[65,66,67,68],inclusive:!1},system_ext_db:{rules:[65,66,67,68],inclusive:!1},system_ext:{rules:[65,66,67,68],inclusive:!1},system_queue:{rules:[65,66,67,68],inclusive:!1},system_db:{rules:[65,66,67,68],inclusive:!1},system:{rules:[65,66,67,68],inclusive:!1},person_ext:{rules:[65,66,67,68],inclusive:!1},person:{rules:[65,66,67,68],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,81,82,83,84,85],inclusive:!0}}};return br}();ga.lexer=Ss;function za(){this.yy={}}return za.prototype=ga,ga.Parser=za,new za}();SY.parser=SY;const xRe=SY;let Wv=[],y8=[""],ep="global",Yv="",i4=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],jF=[],Qgt="",Jgt=!1,_Y=4,AY=2;var rRt;const kRe=function(){return rRt},ERe=function(i){rRt=Ef(i,Re())},TRe=function(i,a,f,g,w,v,b,E,S){if(i==null||a===void 0||a===null||f===void 0||f===null||g===void 0||g===null)return;let _={};const M=jF.find(F=>F.from===a&&F.to===f);if(M?_=M:jF.push(_),_.type=i,_.from=a,_.to=f,_.label={text:g},w==null)_.techn={text:""};else if(typeof w=="object"){let[F,R]=Object.entries(w)[0];_[F]={text:R}}else _.techn={text:w};if(v==null)_.descr={text:""};else if(typeof v=="object"){let[F,R]=Object.entries(v)[0];_[F]={text:R}}else _.descr={text:v};if(typeof b=="object"){let[F,R]=Object.entries(b)[0];_[F]=R}else _.sprite=b;if(typeof E=="object"){let[F,R]=Object.entries(E)[0];_[F]=R}else _.tags=E;if(typeof S=="object"){let[F,R]=Object.entries(S)[0];_[F]=R}else _.link=S;_.wrap=x8()},CRe=function(i,a,f,g,w,v,b){if(a===null||f===null)return;let E={};const S=Wv.find(_=>_.alias===a);if(S&&a===S.alias?E=S:(E.alias=a,Wv.push(E)),f==null?E.label={text:""}:E.label={text:f},g==null)E.descr={text:""};else if(typeof g=="object"){let[_,M]=Object.entries(g)[0];E[_]={text:M}}else E.descr={text:g};if(typeof w=="object"){let[_,M]=Object.entries(w)[0];E[_]=M}else E.sprite=w;if(typeof v=="object"){let[_,M]=Object.entries(v)[0];E[_]=M}else E.tags=v;if(typeof b=="object"){let[_,M]=Object.entries(b)[0];E[_]=M}else E.link=b;E.typeC4Shape={text:i},E.parentBoundary=ep,E.wrap=x8()},SRe=function(i,a,f,g,w,v,b,E){if(a===null||f===null)return;let S={};const _=Wv.find(M=>M.alias===a);if(_&&a===_.alias?S=_:(S.alias=a,Wv.push(S)),f==null?S.label={text:""}:S.label={text:f},g==null)S.techn={text:""};else if(typeof g=="object"){let[M,F]=Object.entries(g)[0];S[M]={text:F}}else S.techn={text:g};if(w==null)S.descr={text:""};else if(typeof w=="object"){let[M,F]=Object.entries(w)[0];S[M]={text:F}}else S.descr={text:w};if(typeof v=="object"){let[M,F]=Object.entries(v)[0];S[M]=F}else S.sprite=v;if(typeof b=="object"){let[M,F]=Object.entries(b)[0];S[M]=F}else S.tags=b;if(typeof E=="object"){let[M,F]=Object.entries(E)[0];S[M]=F}else S.link=E;S.wrap=x8(),S.typeC4Shape={text:i},S.parentBoundary=ep},_Re=function(i,a,f,g,w,v,b,E){if(a===null||f===null)return;let S={};const _=Wv.find(M=>M.alias===a);if(_&&a===_.alias?S=_:(S.alias=a,Wv.push(S)),f==null?S.label={text:""}:S.label={text:f},g==null)S.techn={text:""};else if(typeof g=="object"){let[M,F]=Object.entries(g)[0];S[M]={text:F}}else S.techn={text:g};if(w==null)S.descr={text:""};else if(typeof w=="object"){let[M,F]=Object.entries(w)[0];S[M]={text:F}}else S.descr={text:w};if(typeof v=="object"){let[M,F]=Object.entries(v)[0];S[M]=F}else S.sprite=v;if(typeof b=="object"){let[M,F]=Object.entries(b)[0];S[M]=F}else S.tags=b;if(typeof E=="object"){let[M,F]=Object.entries(E)[0];S[M]=F}else S.link=E;S.wrap=x8(),S.typeC4Shape={text:i},S.parentBoundary=ep},ARe=function(i,a,f,g,w){if(i===null||a===null)return;let v={};const b=i4.find(E=>E.alias===i);if(b&&i===b.alias?v=b:(v.alias=i,i4.push(v)),a==null?v.label={text:""}:v.label={text:a},f==null)v.type={text:"system"};else if(typeof f=="object"){let[E,S]=Object.entries(f)[0];v[E]={text:S}}else v.type={text:f};if(typeof g=="object"){let[E,S]=Object.entries(g)[0];v[E]=S}else v.tags=g;if(typeof w=="object"){let[E,S]=Object.entries(w)[0];v[E]=S}else v.link=w;v.parentBoundary=ep,v.wrap=x8(),Yv=ep,ep=i,y8.push(Yv)},LRe=function(i,a,f,g,w){if(i===null||a===null)return;let v={};const b=i4.find(E=>E.alias===i);if(b&&i===b.alias?v=b:(v.alias=i,i4.push(v)),a==null?v.label={text:""}:v.label={text:a},f==null)v.type={text:"container"};else if(typeof f=="object"){let[E,S]=Object.entries(f)[0];v[E]={text:S}}else v.type={text:f};if(typeof g=="object"){let[E,S]=Object.entries(g)[0];v[E]=S}else v.tags=g;if(typeof w=="object"){let[E,S]=Object.entries(w)[0];v[E]=S}else v.link=w;v.parentBoundary=ep,v.wrap=x8(),Yv=ep,ep=i,y8.push(Yv)},DRe=function(i,a,f,g,w,v,b,E){if(a===null||f===null)return;let S={};const _=i4.find(M=>M.alias===a);if(_&&a===_.alias?S=_:(S.alias=a,i4.push(S)),f==null?S.label={text:""}:S.label={text:f},g==null)S.type={text:"node"};else if(typeof g=="object"){let[M,F]=Object.entries(g)[0];S[M]={text:F}}else S.type={text:g};if(w==null)S.descr={text:""};else if(typeof w=="object"){let[M,F]=Object.entries(w)[0];S[M]={text:F}}else S.descr={text:w};if(typeof b=="object"){let[M,F]=Object.entries(b)[0];S[M]=F}else S.tags=b;if(typeof E=="object"){let[M,F]=Object.entries(E)[0];S[M]=F}else S.link=E;S.nodeType=i,S.parentBoundary=ep,S.wrap=x8(),Yv=ep,ep=a,y8.push(Yv)},MRe=function(){ep=Yv,y8.pop(),Yv=y8.pop(),y8.push(Yv)},IRe=function(i,a,f,g,w,v,b,E,S,_,M){let F=Wv.find(R=>R.alias===a);if(!(F===void 0&&(F=i4.find(R=>R.alias===a),F===void 0))){if(f!=null)if(typeof f=="object"){let[R,B]=Object.entries(f)[0];F[R]=B}else F.bgColor=f;if(g!=null)if(typeof g=="object"){let[R,B]=Object.entries(g)[0];F[R]=B}else F.fontColor=g;if(w!=null)if(typeof w=="object"){let[R,B]=Object.entries(w)[0];F[R]=B}else F.borderColor=w;if(v!=null)if(typeof v=="object"){let[R,B]=Object.entries(v)[0];F[R]=B}else F.shadowing=v;if(b!=null)if(typeof b=="object"){let[R,B]=Object.entries(b)[0];F[R]=B}else F.shape=b;if(E!=null)if(typeof E=="object"){let[R,B]=Object.entries(E)[0];F[R]=B}else F.sprite=E;if(S!=null)if(typeof S=="object"){let[R,B]=Object.entries(S)[0];F[R]=B}else F.techn=S;if(_!=null)if(typeof _=="object"){let[R,B]=Object.entries(_)[0];F[R]=B}else F.legendText=_;if(M!=null)if(typeof M=="object"){let[R,B]=Object.entries(M)[0];F[R]=B}else F.legendSprite=M}},ORe=function(i,a,f,g,w,v,b){const E=jF.find(S=>S.from===a&&S.to===f);if(E!==void 0){if(g!=null)if(typeof g=="object"){let[S,_]=Object.entries(g)[0];E[S]=_}else E.textColor=g;if(w!=null)if(typeof w=="object"){let[S,_]=Object.entries(w)[0];E[S]=_}else E.lineColor=w;if(v!=null)if(typeof v=="object"){let[S,_]=Object.entries(v)[0];E[S]=parseInt(_)}else E.offsetX=parseInt(v);if(b!=null)if(typeof b=="object"){let[S,_]=Object.entries(b)[0];E[S]=parseInt(_)}else E.offsetY=parseInt(b)}},NRe=function(i,a,f){let g=_Y,w=AY;if(typeof a=="object"){const v=Object.values(a)[0];g=parseInt(v)}else g=parseInt(a);if(typeof f=="object"){const v=Object.values(f)[0];w=parseInt(v)}else w=parseInt(f);g>=1&&(_Y=g),w>=1&&(AY=w)},PRe=function(){return _Y},FRe=function(){return AY},BRe=function(){return ep},RRe=function(){return Yv},iRt=function(i){return i==null?Wv:Wv.filter(a=>a.parentBoundary===i)},jRe=function(i){return Wv.find(a=>a.alias===i)},$Re=function(i){return Object.keys(iRt(i))},zRe=function(i){return i==null?i4:i4.filter(a=>a.parentBoundary===i)},qRe=function(){return jF},HRe=function(){return Qgt},VRe=function(i){Jgt=i},x8=function(){return Jgt},Zgt={addPersonOrSystem:CRe,addPersonOrSystemBoundary:ARe,addContainer:SRe,addContainerBoundary:LRe,addComponent:_Re,addDeploymentNode:DRe,popBoundaryParseStack:MRe,addRel:TRe,updateElStyle:IRe,updateRelStyle:ORe,updateLayoutConfig:NRe,autoWrap:x8,setWrap:VRe,getC4ShapeArray:iRt,getC4Shape:jRe,getC4ShapeKeys:$Re,getBoundarys:zRe,getCurrentBoundaryParse:BRe,getParentBoundaryParse:RRe,getRels:qRe,getTitle:HRe,getC4Type:kRe,getC4ShapeInRow:PRe,getC4BoundaryInRow:FRe,setAccTitle:og,getAccTitle:Xg,getAccDescription:Jg,setAccDescription:Qg,getConfig:()=>Re().c4,clear:function(){Wv=[],i4=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],Yv="",ep="global",y8=[""],jF=[],y8=[""],Qgt="",Jgt=!1,_Y=4,AY=2},LINETYPE:{SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25},ARROWTYPE:{FILLED:0,OPEN:1},PLACEMENT:{LEFTOF:0,RIGHTOF:1,OVER:2},setTitle:function(i){Qgt=Ef(i,Re())},setC4Type:ERe},LY=(i,a)=>{const f=i.append("rect");if(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),a.rx!==void 0&&f.attr("rx",a.rx),a.ry!==void 0&&f.attr("ry",a.ry),a.attrs!==void 0)for(const g in a.attrs)f.attr(g,a.attrs[g]);return a.class!==void 0&&f.attr("class",a.class),f},sRt=(i,a)=>{const f={x:a.startx,y:a.starty,width:a.stopx-a.startx,height:a.stopy-a.starty,fill:a.fill,stroke:a.stroke,class:"rect"};LY(i,f).lower()},URe=(i,a)=>{const f=a.text.replace(xF," "),g=i.append("text");g.attr("x",a.x),g.attr("y",a.y),g.attr("class","legend"),g.style("text-anchor",a.anchor),a.class!==void 0&&g.attr("class",a.class);const w=g.append("tspan");return w.attr("x",a.x+a.textMargin*2),w.text(f),g},GRe=(i,a,f,g)=>{const w=i.append("image");w.attr("x",a),w.attr("y",f);const v=h8(g);w.attr("xlink:href",v)},KRe=(i,a,f,g)=>{const w=i.append("use");w.attr("x",a),w.attr("y",f);const v=h8(g);w.attr("xlink:href",`#${v}`)},_9=()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),tpt=()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),ept=function(i,a){return LY(i,a)},aRt=function(i,a,f,g,w,v){const b=i.append("image");b.attr("width",a),b.attr("height",f),b.attr("x",g),b.attr("y",w);let E=v.startsWith("data:image/png;base64")?v:h8(v);b.attr("xlink:href",E)},WRe=(i,a,f)=>{const g=i.append("g");let w=0;for(let v of a){let b=v.textColor?v.textColor:"#444444",E=v.lineColor?v.lineColor:"#444444",S=v.offsetX?parseInt(v.offsetX):0,_=v.offsetY?parseInt(v.offsetY):0,M="";if(w===0){let R=g.append("line");R.attr("x1",v.startPoint.x),R.attr("y1",v.startPoint.y),R.attr("x2",v.endPoint.x),R.attr("y2",v.endPoint.y),R.attr("stroke-width","1"),R.attr("stroke",E),R.style("fill","none"),v.type!=="rel_b"&&R.attr("marker-end","url("+M+"#arrowhead)"),(v.type==="birel"||v.type==="rel_b")&&R.attr("marker-start","url("+M+"#arrowend)"),w=-1}else{let R=g.append("path");R.attr("fill","none").attr("stroke-width","1").attr("stroke",E).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",v.startPoint.x).replaceAll("starty",v.startPoint.y).replaceAll("controlx",v.startPoint.x+(v.endPoint.x-v.startPoint.x)/2-(v.endPoint.x-v.startPoint.x)/4).replaceAll("controly",v.startPoint.y+(v.endPoint.y-v.startPoint.y)/2).replaceAll("stopx",v.endPoint.x).replaceAll("stopy",v.endPoint.y)),v.type!=="rel_b"&&R.attr("marker-end","url("+M+"#arrowhead)"),(v.type==="birel"||v.type==="rel_b")&&R.attr("marker-start","url("+M+"#arrowend)")}let F=f.messageFont();Nx(f)(v.label.text,g,Math.min(v.startPoint.x,v.endPoint.x)+Math.abs(v.endPoint.x-v.startPoint.x)/2+S,Math.min(v.startPoint.y,v.endPoint.y)+Math.abs(v.endPoint.y-v.startPoint.y)/2+_,v.label.width,v.label.height,{fill:b},F),v.techn&&v.techn.text!==""&&(F=f.messageFont(),Nx(f)("["+v.techn.text+"]",g,Math.min(v.startPoint.x,v.endPoint.x)+Math.abs(v.endPoint.x-v.startPoint.x)/2+S,Math.min(v.startPoint.y,v.endPoint.y)+Math.abs(v.endPoint.y-v.startPoint.y)/2+f.messageFontSize+5+_,Math.max(v.label.width,v.techn.width),v.techn.height,{fill:b,"font-style":"italic"},F))}},YRe=function(i,a,f){const g=i.append("g");let w=a.bgColor?a.bgColor:"none",v=a.borderColor?a.borderColor:"#444444",b=a.fontColor?a.fontColor:"black",E={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};a.nodeType&&(E={"stroke-width":1});let S={x:a.x,y:a.y,fill:w,stroke:v,width:a.width,height:a.height,rx:2.5,ry:2.5,attrs:E};ept(g,S);let _=f.boundaryFont();_.fontWeight="bold",_.fontSize=_.fontSize+2,_.fontColor=b,Nx(f)(a.label.text,g,a.x,a.y+a.label.Y,a.width,a.height,{fill:"#444444"},_),a.type&&a.type.text!==""&&(_=f.boundaryFont(),_.fontColor=b,Nx(f)(a.type.text,g,a.x,a.y+a.type.Y,a.width,a.height,{fill:"#444444"},_)),a.descr&&a.descr.text!==""&&(_=f.boundaryFont(),_.fontSize=_.fontSize-2,_.fontColor=b,Nx(f)(a.descr.text,g,a.x,a.y+a.descr.Y,a.width,a.height,{fill:"#444444"},_))},XRe=function(i,a,f){var F;let g=a.bgColor?a.bgColor:f[a.typeC4Shape.text+"_bg_color"],w=a.borderColor?a.borderColor:f[a.typeC4Shape.text+"_border_color"],v=a.fontColor?a.fontColor:"#FFFFFF",b="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(a.typeC4Shape.text){case"person":b="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";break;case"external_person":b="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII=";break}const E=i.append("g");E.attr("class","person-man");const S=_9();switch(a.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":S.x=a.x,S.y=a.y,S.fill=g,S.width=a.width,S.height=a.height,S.stroke=w,S.rx=2.5,S.ry=2.5,S.attrs={"stroke-width":.5},ept(E,S);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":E.append("path").attr("fill",g).attr("stroke-width","0.5").attr("stroke",w).attr("d","Mstartx,startyc0,-10 half,-10 half,-10c0,0 half,0 half,10l0,heightc0,10 -half,10 -half,10c0,0 -half,0 -half,-10l0,-height".replaceAll("startx",a.x).replaceAll("starty",a.y).replaceAll("half",a.width/2).replaceAll("height",a.height)),E.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",w).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",a.x).replaceAll("starty",a.y).replaceAll("half",a.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":E.append("path").attr("fill",g).attr("stroke-width","0.5").attr("stroke",w).attr("d","Mstartx,startylwidth,0c5,0 5,half 5,halfc0,0 0,half -5,halfl-width,0c-5,0 -5,-half -5,-halfc0,0 0,-half 5,-half".replaceAll("startx",a.x).replaceAll("starty",a.y).replaceAll("width",a.width).replaceAll("half",a.height/2)),E.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",w).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",a.x+a.width).replaceAll("starty",a.y).replaceAll("half",a.height/2));break}let _=sje(f,a.typeC4Shape.text);switch(E.append("text").attr("fill",v).attr("font-family",_.fontFamily).attr("font-size",_.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",a.typeC4Shape.width).attr("x",a.x+a.width/2-a.typeC4Shape.width/2).attr("y",a.y+a.typeC4Shape.Y).text("<<"+a.typeC4Shape.text+">>"),a.typeC4Shape.text){case"person":case"external_person":aRt(E,48,48,a.x+a.width/2-24,a.y+a.image.Y,b);break}let M=f[a.typeC4Shape.text+"Font"]();return M.fontWeight="bold",M.fontSize=M.fontSize+2,M.fontColor=v,Nx(f)(a.label.text,E,a.x,a.y+a.label.Y,a.width,a.height,{fill:v},M),M=f[a.typeC4Shape.text+"Font"](),M.fontColor=v,a.techn&&((F=a.techn)==null?void 0:F.text)!==""?Nx(f)(a.techn.text,E,a.x,a.y+a.techn.Y,a.width,a.height,{fill:v,"font-style":"italic"},M):a.type&&a.type.text!==""&&Nx(f)(a.type.text,E,a.x,a.y+a.type.Y,a.width,a.height,{fill:v,"font-style":"italic"},M),a.descr&&a.descr.text!==""&&(M=f.personFont(),M.fontColor=v,Nx(f)(a.descr.text,E,a.x,a.y+a.descr.Y,a.width,a.height,{fill:v},M)),a.height},QRe=function(i){i.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},JRe=function(i){i.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},ZRe=function(i){i.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},tje=function(i){i.append("defs").append("marker").attr("id","arrowhead").attr("refX",9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z")},eje=function(i){i.append("defs").append("marker").attr("id","arrowend").attr("refX",1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z")},nje=function(i){i.append("defs").append("marker").attr("id","filled-head").attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},rje=function(i){i.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)},ije=function(i){const f=i.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);f.append("path").attr("fill","black").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 9,2 V 6 L16,4 Z"),f.append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 0,1 L 6,7 M 6,1 L 0,7")},sje=(i,a)=>({fontFamily:i[a+"FontFamily"],fontSize:i[a+"FontSize"],fontWeight:i[a+"FontWeight"]}),Nx=function(){function i(w,v,b,E,S,_,M){const F=v.append("text").attr("x",b+S/2).attr("y",E+_/2+5).style("text-anchor","middle").text(w);g(F,M)}function a(w,v,b,E,S,_,M,F){const{fontSize:R,fontFamily:B,fontWeight:z}=F,Y=w.split(ei.lineBreakRegex);for(let nt=0;nt<Y.length;nt++){const ot=nt*R-R*(Y.length-1)/2,ft=v.append("text").attr("x",b+S/2).attr("y",E).style("text-anchor","middle").attr("dominant-baseline","middle").style("font-size",R).style("font-weight",z).style("font-family",B);ft.append("tspan").attr("dy",ot).text(Y[nt]).attr("alignment-baseline","mathematical"),g(ft,M)}}function f(w,v,b,E,S,_,M,F){const R=v.append("switch"),z=R.append("foreignObject").attr("x",b).attr("y",E).attr("width",S).attr("height",_).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");z.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(w),a(w,R,b,E,S,_,M,F),g(z,M)}function g(w,v){for(const b in v)v.hasOwnProperty(b)&&w.attr(b,v[b])}return function(w){return w.textPlacement==="fo"?f:w.textPlacement==="old"?i:a}}(),s4={drawRect:ept,drawBoundary:YRe,drawC4Shape:XRe,drawRels:WRe,drawImage:aRt,insertArrowHead:tje,insertArrowEnd:eje,insertArrowFilledHead:nje,insertDynamicNumber:rje,insertArrowCrossHead:ije,insertDatabaseIcon:QRe,insertComputerIcon:JRe,insertClockIcon:ZRe};let DY=0,MY=0,oRt=4,npt=2;SY.yy=Zgt;let Cs={};class cRt{constructor(a){this.name="",this.data={},this.data.startx=void 0,this.data.stopx=void 0,this.data.starty=void 0,this.data.stopy=void 0,this.data.widthLimit=void 0,this.nextData={},this.nextData.startx=void 0,this.nextData.stopx=void 0,this.nextData.starty=void 0,this.nextData.stopy=void 0,this.nextData.cnt=0,rpt(a.db.getConfig())}setData(a,f,g,w){this.nextData.startx=this.data.startx=a,this.nextData.stopx=this.data.stopx=f,this.nextData.starty=this.data.starty=g,this.nextData.stopy=this.data.stopy=w}updateVal(a,f,g,w){a[f]===void 0?a[f]=g:a[f]=w(g,a[f])}insert(a){this.nextData.cnt=this.nextData.cnt+1;let f=this.nextData.startx===this.nextData.stopx?this.nextData.stopx+a.margin:this.nextData.stopx+a.margin*2,g=f+a.width,w=this.nextData.starty+a.margin*2,v=w+a.height;(f>=this.data.widthLimit||g>=this.data.widthLimit||this.nextData.cnt>oRt)&&(f=this.nextData.startx+a.margin+Cs.nextLinePaddingX,w=this.nextData.stopy+a.margin*2,this.nextData.stopx=g=f+a.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=v=w+a.height,this.nextData.cnt=1),a.x=f,a.y=w,this.updateVal(this.data,"startx",f,Math.min),this.updateVal(this.data,"starty",w,Math.min),this.updateVal(this.data,"stopx",g,Math.max),this.updateVal(this.data,"stopy",v,Math.max),this.updateVal(this.nextData,"startx",f,Math.min),this.updateVal(this.nextData,"starty",w,Math.min),this.updateVal(this.nextData,"stopx",g,Math.max),this.updateVal(this.nextData,"stopy",v,Math.max)}init(a){this.name="",this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,widthLimit:void 0},this.nextData={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,cnt:0},rpt(a.db.getConfig())}bumpLastMargin(a){this.data.stopx+=a,this.data.stopy+=a}}const rpt=function(i){Ld(Cs,i),i.fontFamily&&(Cs.personFontFamily=Cs.systemFontFamily=Cs.messageFontFamily=i.fontFamily),i.fontSize&&(Cs.personFontSize=Cs.systemFontSize=Cs.messageFontSize=i.fontSize),i.fontWeight&&(Cs.personFontWeight=Cs.systemFontWeight=Cs.messageFontWeight=i.fontWeight)},$F=(i,a)=>({fontFamily:i[a+"FontFamily"],fontSize:i[a+"FontSize"],fontWeight:i[a+"FontWeight"]}),IY=i=>({fontFamily:i.boundaryFontFamily,fontSize:i.boundaryFontSize,fontWeight:i.boundaryFontWeight}),aje=i=>({fontFamily:i.messageFontFamily,fontSize:i.messageFontSize,fontWeight:i.messageFontWeight});function Xv(i,a,f,g,w){if(!a[i].width)if(f)a[i].text=LFt(a[i].text,w,g),a[i].textLines=a[i].text.split(ei.lineBreakRegex).length,a[i].width=w,a[i].height=Tgt(a[i].text,g);else{let v=a[i].text.split(ei.lineBreakRegex);a[i].textLines=v.length;let b=0;a[i].height=0,a[i].width=0;for(const E of v)a[i].width=Math.max(n4(E,g),a[i].width),b=Tgt(E,g),a[i].height=a[i].height+b}}const uRt=function(i,a,f){a.x=f.data.startx,a.y=f.data.starty,a.width=f.data.stopx-f.data.startx,a.height=f.data.stopy-f.data.starty,a.label.y=Cs.c4ShapeMargin-35;let g=a.wrap&&Cs.wrap,w=IY(Cs);w.fontSize=w.fontSize+2,w.fontWeight="bold";let v=n4(a.label.text,w);Xv("label",a,g,w,v),s4.drawBoundary(i,a,Cs)},lRt=function(i,a,f,g){let w=0;for(const v of g){w=0;const b=f[v];let E=$F(Cs,b.typeC4Shape.text);switch(E.fontSize=E.fontSize-2,b.typeC4Shape.width=n4("«"+b.typeC4Shape.text+"»",E),b.typeC4Shape.height=E.fontSize+2,b.typeC4Shape.Y=Cs.c4ShapePadding,w=b.typeC4Shape.Y+b.typeC4Shape.height-4,b.image={width:0,height:0,Y:0},b.typeC4Shape.text){case"person":case"external_person":b.image.width=48,b.image.height=48,b.image.Y=w,w=b.image.Y+b.image.height;break}b.sprite&&(b.image.width=48,b.image.height=48,b.image.Y=w,w=b.image.Y+b.image.height);let S=b.wrap&&Cs.wrap,_=Cs.width-Cs.c4ShapePadding*2,M=$F(Cs,b.typeC4Shape.text);if(M.fontSize=M.fontSize+2,M.fontWeight="bold",Xv("label",b,S,M,_),b.label.Y=w+8,w=b.label.Y+b.label.height,b.type&&b.type.text!==""){b.type.text="["+b.type.text+"]";let B=$F(Cs,b.typeC4Shape.text);Xv("type",b,S,B,_),b.type.Y=w+5,w=b.type.Y+b.type.height}else if(b.techn&&b.techn.text!==""){b.techn.text="["+b.techn.text+"]";let B=$F(Cs,b.techn.text);Xv("techn",b,S,B,_),b.techn.Y=w+5,w=b.techn.Y+b.techn.height}let F=w,R=b.label.width;if(b.descr&&b.descr.text!==""){let B=$F(Cs,b.typeC4Shape.text);Xv("descr",b,S,B,_),b.descr.Y=w+20,w=b.descr.Y+b.descr.height,R=Math.max(b.label.width,b.descr.width),F=w-b.descr.textLines*5}R=R+Cs.c4ShapePadding,b.width=Math.max(b.width||Cs.width,R,Cs.width),b.height=Math.max(b.height||Cs.height,F,Cs.height),b.margin=b.margin||Cs.c4ShapeMargin,i.insert(b),s4.drawC4Shape(a,b,Cs)}i.bumpLastMargin(Cs.c4ShapeMargin)};let Jw=class{constructor(a,f){this.x=a,this.y=f}},hRt=function(i,a){let f=i.x,g=i.y,w=a.x,v=a.y,b=f+i.width/2,E=g+i.height/2,S=Math.abs(f-w),_=Math.abs(g-v),M=_/S,F=i.height/i.width,R=null;return g==v&&f<w?R=new Jw(f+i.width,E):g==v&&f>w?R=new Jw(f,E):f==w&&g<v?R=new Jw(b,g+i.height):f==w&&g>v&&(R=new Jw(b,g)),f>w&&g<v?F>=M?R=new Jw(f,E+M*i.width/2):R=new Jw(b-S/_*i.height/2,g+i.height):f<w&&g<v?F>=M?R=new Jw(f+i.width,E+M*i.width/2):R=new Jw(b+S/_*i.height/2,g+i.height):f<w&&g>v?F>=M?R=new Jw(f+i.width,E-M*i.width/2):R=new Jw(b+i.height/2*S/_,g):f>w&&g>v&&(F>=M?R=new Jw(f,E-i.width/2*M):R=new Jw(b-i.height/2*S/_,g)),R},oje=function(i,a){let f={x:0,y:0};f.x=a.x+a.width/2,f.y=a.y+a.height/2;let g=hRt(i,f);f.x=i.x+i.width/2,f.y=i.y+i.height/2;let w=hRt(a,f);return{startPoint:g,endPoint:w}};const cje=function(i,a,f,g){let w=0;for(let v of a){w=w+1;let b=v.wrap&&Cs.wrap,E=aje(Cs);g.db.getC4Type()==="C4Dynamic"&&(v.label.text=w+": "+v.label.text);let _=n4(v.label.text,E);Xv("label",v,b,E,_),v.techn&&v.techn.text!==""&&(_=n4(v.techn.text,E),Xv("techn",v,b,E,_)),v.descr&&v.descr.text!==""&&(_=n4(v.descr.text,E),Xv("descr",v,b,E,_));let M=f(v.from),F=f(v.to),R=oje(M,F);v.startPoint=R.startPoint,v.endPoint=R.endPoint}s4.drawRels(i,a,Cs)};function fRt(i,a,f,g,w){let v=new cRt(w);v.data.widthLimit=f.data.widthLimit/Math.min(npt,g.length);for(let[b,E]of g.entries()){let S=0;E.image={width:0,height:0,Y:0},E.sprite&&(E.image.width=48,E.image.height=48,E.image.Y=S,S=E.image.Y+E.image.height);let _=E.wrap&&Cs.wrap,M=IY(Cs);if(M.fontSize=M.fontSize+2,M.fontWeight="bold",Xv("label",E,_,M,v.data.widthLimit),E.label.Y=S+8,S=E.label.Y+E.label.height,E.type&&E.type.text!==""){E.type.text="["+E.type.text+"]";let z=IY(Cs);Xv("type",E,_,z,v.data.widthLimit),E.type.Y=S+5,S=E.type.Y+E.type.height}if(E.descr&&E.descr.text!==""){let z=IY(Cs);z.fontSize=z.fontSize-2,Xv("descr",E,_,z,v.data.widthLimit),E.descr.Y=S+20,S=E.descr.Y+E.descr.height}if(b==0||b%npt===0){let z=f.data.startx+Cs.diagramMarginX,Y=f.data.stopy+Cs.diagramMarginY+S;v.setData(z,z,Y,Y)}else{let z=v.data.stopx!==v.data.startx?v.data.stopx+Cs.diagramMarginX:v.data.startx,Y=v.data.starty;v.setData(z,z,Y,Y)}v.name=E.alias;let F=w.db.getC4ShapeArray(E.alias),R=w.db.getC4ShapeKeys(E.alias);R.length>0&&lRt(v,i,F,R),a=E.alias;let B=w.db.getBoundarys(a);B.length>0&&fRt(i,a,v,B,w),E.alias!=="global"&&uRt(i,E,v),f.data.stopy=Math.max(v.data.stopy+Cs.c4ShapeMargin,f.data.stopy),f.data.stopx=Math.max(v.data.stopx+Cs.c4ShapeMargin,f.data.stopx),DY=Math.max(DY,f.data.stopx),MY=Math.max(MY,f.data.stopy)}}const dRt={drawPersonOrSystemArray:lRt,drawBoundary:uRt,setConf:rpt,draw:function(i,a,f,g){Cs=Re().c4;const w=Re().securityLevel;let v;w==="sandbox"&&(v=Tr("#i"+a));const b=Tr(w==="sandbox"?v.nodes()[0].contentDocument.body:"body");let E=g.db;g.db.setWrap(Cs.wrap),oRt=E.getC4ShapeInRow(),npt=E.getC4BoundaryInRow(),Kt.debug(`C:${JSON.stringify(Cs,null,2)}`);const S=w==="sandbox"?b.select(`[id="${a}"]`):Tr(`[id="${a}"]`);s4.insertComputerIcon(S),s4.insertDatabaseIcon(S),s4.insertClockIcon(S);let _=new cRt(g);_.setData(Cs.diagramMarginX,Cs.diagramMarginX,Cs.diagramMarginY,Cs.diagramMarginY),_.data.widthLimit=screen.availWidth,DY=Cs.diagramMarginX,MY=Cs.diagramMarginY;const M=g.db.getTitle();let F=g.db.getBoundarys("");fRt(S,"",_,F,g),s4.insertArrowHead(S),s4.insertArrowEnd(S),s4.insertArrowCrossHead(S),s4.insertArrowFilledHead(S),cje(S,g.db.getRels(),g.db.getC4Shape,g),_.data.stopx=DY,_.data.stopy=MY;const R=_.data;let z=R.stopy-R.starty+2*Cs.diagramMarginY;const nt=R.stopx-R.startx+2*Cs.diagramMarginX;M&&S.append("text").text(M).attr("x",(R.stopx-R.startx)/2-4*Cs.diagramMarginX).attr("y",R.starty+Cs.diagramMarginY),sg(S,z,nt,Cs.useMaxWidth);const ot=M?60:0;S.attr("viewBox",R.startx-Cs.diagramMarginX+" -"+(Cs.diagramMarginY+ot)+" "+nt+" "+(z+ot)),Kt.debug("models:",R)}},uje=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:xRe,db:Zgt,renderer:dRt,styles:i=>`.person {

825 `,B9=18*2,vqt="actor-top",yqt="actor-bottom",Fbt=function(i,a){return LY(i,a)},FQe=function(i,a,f,g,w){if(a.links===void 0||a.links===null||Object.keys(a.links).length===0)return{height:0,width:0};const v=a.links,b=a.actorCnt,E=a.rectData;var S="none";w&&(S="block !important");const _=i.append("g");_.attr("id","actor"+b+"_popup"),_.attr("class","actorPopupMenu"),_.attr("display",S);var M="";E.class!==void 0&&(M=" "+E.class);let F=E.width>f?E.width:f;const R=_.append("rect");if(R.attr("class","actorPopupMenuPanel"+M),R.attr("x",E.x),R.attr("y",E.height),R.attr("fill",E.fill),R.attr("stroke",E.stroke),R.attr("width",F),R.attr("height",E.height),R.attr("rx",E.rx),R.attr("ry",E.ry),v!=null){var B=20;for(let nt in v){var z=_.append("a"),Y=h8(v[nt]);z.attr("xlink:href",Y),z.attr("target","_blank"),ZQe(g)(nt,z,E.x+10,E.height+B,F,20,{class:"actor"},g),B+=30}}return R.attr("height",B),{height:E.height+B,width:F}},BQe=function(i){return"var pu = document.getElementById('"+i+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"},DD=function(i,a){let f=0,g=0;const w=a.text.split(ei.lineBreakRegex),[v,b]=k9(a.fontSize);let E=[],S=0,_=()=>a.y;if(a.valign!==void 0&&a.textMargin!==void 0&&a.textMargin>0)switch(a.valign){case"top":case"start":_=()=>Math.round(a.y+a.textMargin);break;case"middle":case"center":_=()=>Math.round(a.y+(f+g+a.textMargin)/2);break;case"bottom":case"end":_=()=>Math.round(a.y+(f+g+2*a.textMargin)-a.textMargin);break}if(a.anchor!==void 0&&a.textMargin!==void 0&&a.width!==void 0)switch(a.anchor){case"left":case"start":a.x=Math.round(a.x+a.textMargin),a.anchor="start",a.dominantBaseline="middle",a.alignmentBaseline="middle";break;case"middle":case"center":a.x=Math.round(a.x+a.width/2),a.anchor="middle",a.dominantBaseline="middle",a.alignmentBaseline="middle";break;case"right":case"end":a.x=Math.round(a.x+a.width-a.textMargin),a.anchor="end",a.dominantBaseline="middle",a.alignmentBaseline="middle";break}for(let[M,F]of w.entries()){a.textMargin!==void 0&&a.textMargin===0&&v!==void 0&&(S=M*v);const R=i.append("text");R.attr("x",a.x),R.attr("y",_()),a.anchor!==void 0&&R.attr("text-anchor",a.anchor).attr("dominant-baseline",a.dominantBaseline).attr("alignment-baseline",a.alignmentBaseline),a.fontFamily!==void 0&&R.style("font-family",a.fontFamily),b!==void 0&&R.style("font-size",b),a.fontWeight!==void 0&&R.style("font-weight",a.fontWeight),a.fill!==void 0&&R.attr("fill",a.fill),a.class!==void 0&&R.attr("class",a.class),a.dy!==void 0?R.attr("dy",a.dy):S!==0&&R.attr("dy",S);const B=F||kFt;if(a.tspan){const z=R.append("tspan");z.attr("x",a.x),a.fill!==void 0&&z.attr("fill",a.fill),z.text(B)}else R.text(B);a.valign!==void 0&&a.textMargin!==void 0&&a.textMargin>0&&(g+=(R._groups||R)[0][0].getBBox().height,f=g),E.push(R)}return E},xqt=function(i,a){function f(w,v,b,E,S){return w+","+v+" "+(w+b)+","+v+" "+(w+b)+","+(v+E-S)+" "+(w+b-S*1.2)+","+(v+E)+" "+w+","+(v+E)}const g=i.append("polygon");return g.attr("points",f(a.x,a.y,a.width,a.height,7)),g.attr("class","labelBox"),a.y=a.y+a.height/2,DD(i,a),g};let f4=-1;const kqt=(i,a,f,g)=>{i.select&&f.forEach(w=>{const v=a[w],b=i.select("#actor"+v.actorCnt);!g.mirrorActors&&v.stopy?b.attr("y2",v.stopy+v.height/2):g.mirrorActors&&b.attr("y2",v.stopy)})},RQe=function(i,a,f,g){const w=g?a.stopy:a.starty,v=a.x+a.width/2,b=w+5,E=i.append("g").lower();var S=E;g||(f4++,Object.keys(a.links||{}).length&&!f.forceMenus&&S.attr("onclick",BQe(`actor${f4}_popup`)).attr("cursor","pointer"),S.append("line").attr("id","actor"+f4).attr("x1",v).attr("y1",b).attr("x2",v).attr("y2",2e3).attr("class","actor-line").attr("class","200").attr("stroke-width","0.5px").attr("stroke","#999"),S=E.append("g"),a.actorCnt=f4,a.links!=null&&S.attr("id","root-"+f4));const _=_9();var M="actor";a.properties!=null&&a.properties.class?M=a.properties.class:_.fill="#eaeaea",g?M+=` ${yqt}`:M+=` ${vqt}`,_.x=a.x,_.y=w,_.width=a.width,_.height=a.height,_.class=M,_.rx=3,_.ry=3;const F=Fbt(S,_);if(a.rectData=_,a.properties!=null&&a.properties.icon){const B=a.properties.icon.trim();B.charAt(0)==="@"?KRe(S,_.x+_.width-20,_.y+10,B.substr(1)):GRe(S,_.x+_.width-20,_.y+10,B)}Bbt(f)(a.description,S,_.x,_.y,_.width,_.height,{class:"actor"},f);let R=a.height;if(F.node){const B=F.node().getBBox();a.height=B.height,R=B.height}return R},jQe=function(i,a,f,g){const w=g?a.stopy:a.starty,v=a.x+a.width/2,b=w+80;i.lower(),g||(f4++,i.append("line").attr("id","actor"+f4).attr("x1",v).attr("y1",b).attr("x2",v).attr("y2",2e3).attr("class","actor-line").attr("class","200").attr("stroke-width","0.5px").attr("stroke","#999"),a.actorCnt=f4);const E=i.append("g");let S="actor-man";g?S+=` ${yqt}`:S+=` ${vqt}`,E.attr("class",S);const _=_9();_.x=a.x,_.y=w,_.fill="#eaeaea",_.width=a.width,_.height=a.height,_.class="actor",_.rx=3,_.ry=3,E.append("line").attr("id","actor-man-torso"+f4).attr("x1",v).attr("y1",w+25).attr("x2",v).attr("y2",w+45),E.append("line").attr("id","actor-man-arms"+f4).attr("x1",v-B9/2).attr("y1",w+33).attr("x2",v+B9/2).attr("y2",w+33),E.append("line").attr("x1",v-B9/2).attr("y1",w+60).attr("x2",v).attr("y2",w+45),E.append("line").attr("x1",v).attr("y1",w+45).attr("x2",v+B9/2-2).attr("y2",w+60);const M=E.append("circle");M.attr("cx",a.x+a.width/2),M.attr("cy",w+10),M.attr("r",15),M.attr("width",a.width),M.attr("height",a.height);const F=E.node().getBBox();return a.height=F.height,Bbt(f)(a.description,E,_.x,_.y+35,_.width,_.height,{class:"actor"},f),a.height},$Qe=function(i,a,f,g){switch(a.type){case"actor":return jQe(i,a,f,g);case"participant":return RQe(i,a,f,g)}},zQe=function(i,a,f){const w=i.append("g");Eqt(w,a),a.name&&Bbt(f)(a.name,w,a.x,a.y+(a.textMaxHeight||0)/2,a.width,0,{class:"text"},f),w.lower()},qQe=function(i){return i.append("g")},HQe=function(i,a,f,g,w){const v=_9(),b=a.anchored;v.x=a.startx,v.y=a.starty,v.class="activation"+w%3,v.width=a.stopx-a.startx,v.height=f-a.starty,Fbt(b,v)},VQe=function(i,a,f,g){const{boxMargin:w,boxTextMargin:v,labelBoxHeight:b,labelBoxWidth:E,messageFontFamily:S,messageFontSize:_,messageFontWeight:M}=g,F=i.append("g"),R=function(Y,nt,ot,ft){return F.append("line").attr("x1",Y).attr("y1",nt).attr("x2",ot).attr("y2",ft).attr("class","loopLine")};R(a.startx,a.starty,a.stopx,a.starty),R(a.stopx,a.starty,a.stopx,a.stopy),R(a.startx,a.stopy,a.stopx,a.stopy),R(a.startx,a.starty,a.startx,a.stopy),a.sections!==void 0&&a.sections.forEach(function(Y){R(a.startx,Y.y,a.stopx,Y.y).style("stroke-dasharray","3, 3")});let B=tpt();B.text=f,B.x=a.startx,B.y=a.starty,B.fontFamily=S,B.fontSize=_,B.fontWeight=M,B.anchor="middle",B.valign="middle",B.tspan=!1,B.width=E||50,B.height=b||20,B.textMargin=v,B.class="labelText",xqt(F,B),B=Tqt(),B.text=a.title,B.x=a.startx+E/2+(a.stopx-a.startx)/2,B.y=a.starty+w+v,B.anchor="middle",B.valign="middle",B.textMargin=v,B.class="loopText",B.fontFamily=S,B.fontSize=_,B.fontWeight=M,B.wrap=!0;let z=DD(F,B);return a.sectionTitles!==void 0&&a.sectionTitles.forEach(function(Y,nt){if(Y.message){B.text=Y.message,B.x=a.startx+(a.stopx-a.startx)/2,B.y=a.sections[nt].y+w+v,B.class="loopText",B.anchor="middle",B.valign="middle",B.tspan=!1,B.fontFamily=S,B.fontSize=_,B.fontWeight=M,B.wrap=a.wrap,z=DD(F,B);let ot=Math.round(z.map(ft=>(ft._groups||ft)[0][0].getBBox().height).reduce((ft,wt)=>ft+wt));a.sections[nt].height+=ot-(w+v)}}),a.height=Math.round(a.stopy-a.starty),F},Eqt=function(i,a){sRt(i,a)},UQe=function(i){i.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},GQe=function(i){i.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},KQe=function(i){i.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},WQe=function(i){i.append("defs").append("marker").attr("id","arrowhead").attr("refX",7.9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z")},YQe=function(i){i.append("defs").append("marker").attr("id","filled-head").attr("refX",15.5).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},XQe=function(i){i.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)},QQe=function(i){i.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",4).attr("refY",4.5).append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1pt").attr("d","M 1,2 L 6,7 M 6,2 L 1,7")},Tqt=function(){return{x:0,y:0,fill:void 0,anchor:void 0,style:"#666",width:void 0,height:void 0,textMargin:0,rx:0,ry:0,tspan:!0,valign:void 0}},JQe=function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},Bbt=function(){function i(w,v,b,E,S,_,M){const F=v.append("text").attr("x",b+S/2).attr("y",E+_/2+5).style("text-anchor","middle").text(w);g(F,M)}function a(w,v,b,E,S,_,M,F){const{actorFontSize:R,actorFontFamily:B,actorFontWeight:z}=F,[Y,nt]=k9(R),ot=w.split(ei.lineBreakRegex);for(let ft=0;ft<ot.length;ft++){const wt=ft*Y-Y*(ot.length-1)/2,mt=v.append("text").attr("x",b+S/2).attr("y",E).style("text-anchor","middle").style("font-size",nt).style("font-weight",z).style("font-family",B);mt.append("tspan").attr("x",b+S/2).attr("dy",wt).text(ot[ft]),mt.attr("y",E+_/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),g(mt,M)}}function f(w,v,b,E,S,_,M,F){const R=v.append("switch"),z=R.append("foreignObject").attr("x",b).attr("y",E).attr("width",S).attr("height",_).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");z.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(w),a(w,R,b,E,S,_,M,F),g(z,M)}function g(w,v){for(const b in v)v.hasOwnProperty(b)&&w.attr(b,v[b])}return function(w){return w.textPlacement==="fo"?f:w.textPlacement==="old"?i:a}}(),ZQe=function(){function i(w,v,b,E,S,_,M){const F=v.append("text").attr("x",b).attr("y",E).style("text-anchor","start").text(w);g(F,M)}function a(w,v,b,E,S,_,M,F){const{actorFontSize:R,actorFontFamily:B,actorFontWeight:z}=F,Y=w.split(ei.lineBreakRegex);for(let nt=0;nt<Y.length;nt++){const ot=nt*R-R*(Y.length-1)/2,ft=v.append("text").attr("x",b).attr("y",E).style("text-anchor","start").style("font-size",R).style("font-weight",z).style("font-family",B);ft.append("tspan").attr("x",b).attr("dy",ot).text(Y[nt]),ft.attr("y",E+_/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),g(ft,M)}}function f(w,v,b,E,S,_,M,F){const R=v.append("switch"),z=R.append("foreignObject").attr("x",b).attr("y",E).attr("width",S).attr("height",_).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");z.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(w),a(w,R,b,E,S,_,M,F),g(z,M)}function g(w,v){for(const b in v)v.hasOwnProperty(b)&&w.attr(b,v[b])}return function(w){return w.textPlacement==="fo"?f:w.textPlacement==="old"?i:a}}(),_f={drawRect:Fbt,drawText:DD,drawLabel:xqt,drawActor:$Qe,drawBox:zQe,drawPopup:FQe,anchorElement:qQe,drawActivation:HQe,drawLoop:VQe,drawBackgroundRect:Eqt,insertArrowHead:WQe,insertArrowFilledHead:YQe,insertSequenceNumber:XQe,insertArrowCrossHead:QQe,insertDatabaseIcon:UQe,insertComputerIcon:GQe,insertClockIcon:KQe,getTextObj:Tqt,getNoteRect:JQe,fixLifeLineHeights:kqt,sanitizeUrl:h8};let bn={};const Wr={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],activations:[],models:{getHeight:function(){return Math.max.apply(null,this.actors.length===0?[0]:this.actors.map(i=>i.height||0))+(this.loops.length===0?0:this.loops.map(i=>i.height||0).reduce((i,a)=>i+a))+(this.messages.length===0?0:this.messages.map(i=>i.height||0).reduce((i,a)=>i+a))+(this.notes.length===0?0:this.notes.map(i=>i.height||0).reduce((i,a)=>i+a))},clear:function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]},addBox:function(i){this.boxes.push(i)},addActor:function(i){this.actors.push(i)},addLoop:function(i){this.loops.push(i)},addMessage:function(i){this.messages.push(i)},addNote:function(i){this.notes.push(i)},lastActor:function(){return this.actors[this.actors.length-1]},lastLoop:function(){return this.loops[this.loops.length-1]},lastMessage:function(){return this.messages[this.messages.length-1]},lastNote:function(){return this.notes[this.notes.length-1]},actors:[],boxes:[],loops:[],messages:[],notes:[]},init:function(){this.sequenceItems=[],this.activations=[],this.models.clear(),this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0,Sqt(Re())},updateVal:function(i,a,f,g){i[a]===void 0?i[a]=f:i[a]=g(f,i[a])},updateBounds:function(i,a,f,g){const w=this;let v=0;function b(E){return function(_){v++;const M=w.sequenceItems.length-v+1;w.updateVal(_,"starty",a-M*bn.boxMargin,Math.min),w.updateVal(_,"stopy",g+M*bn.boxMargin,Math.max),w.updateVal(Wr.data,"startx",i-M*bn.boxMargin,Math.min),w.updateVal(Wr.data,"stopx",f+M*bn.boxMargin,Math.max),E!=="activation"&&(w.updateVal(_,"startx",i-M*bn.boxMargin,Math.min),w.updateVal(_,"stopx",f+M*bn.boxMargin,Math.max),w.updateVal(Wr.data,"starty",a-M*bn.boxMargin,Math.min),w.updateVal(Wr.data,"stopy",g+M*bn.boxMargin,Math.max))}}this.sequenceItems.forEach(b()),this.activations.forEach(b("activation"))},insert:function(i,a,f,g){const w=ei.getMin(i,f),v=ei.getMax(i,f),b=ei.getMin(a,g),E=ei.getMax(a,g);this.updateVal(Wr.data,"startx",w,Math.min),this.updateVal(Wr.data,"starty",b,Math.min),this.updateVal(Wr.data,"stopx",v,Math.max),this.updateVal(Wr.data,"stopy",E,Math.max),this.updateBounds(w,b,v,E)},newActivation:function(i,a,f){const g=f[i.from.actor],w=bX(i.from.actor).length||0,v=g.x+g.width/2+(w-1)*bn.activationWidth/2;this.activations.push({startx:v,starty:this.verticalPos+2,stopx:v+bn.activationWidth,stopy:void 0,actor:i.from.actor,anchored:_f.anchorElement(a)})},endActivation:function(i){const a=this.activations.map(function(f){return f.actor}).lastIndexOf(i.from.actor);return this.activations.splice(a,1)[0]},createLoop:function(i={message:void 0,wrap:!1,width:void 0},a){return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:i.message,wrap:i.wrap,width:i.width,height:0,fill:a}},newLoop:function(i={message:void 0,wrap:!1,width:void 0},a){this.sequenceItems.push(this.createLoop(i,a))},endLoop:function(){return this.sequenceItems.pop()},isLoopOverlap:function(){return this.sequenceItems.length?this.sequenceItems[this.sequenceItems.length-1].overlap:!1},addSectionToLoop:function(i){const a=this.sequenceItems.pop();a.sections=a.sections||[],a.sectionTitles=a.sectionTitles||[],a.sections.push({y:Wr.getVerticalPos(),height:0}),a.sectionTitles.push(i),this.sequenceItems.push(a)},saveVerticalPos:function(){this.isLoopOverlap()&&(this.savedVerticalPos=this.verticalPos)},resetVerticalPos:function(){this.isLoopOverlap()&&(this.verticalPos=this.savedVerticalPos)},bumpVerticalPos:function(i){this.verticalPos=this.verticalPos+i,this.data.stopy=ei.getMax(this.data.stopy,this.verticalPos)},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return{bounds:this.data,models:this.models}}},tJe=function(i,a){Wr.bumpVerticalPos(bn.boxMargin),a.height=bn.boxMargin,a.starty=Wr.getVerticalPos();const f=_9();f.x=a.startx,f.y=a.starty,f.width=a.width||bn.width,f.class="note";const g=i.append("g"),w=_f.drawRect(g,f),v=tpt();v.x=a.startx,v.y=a.starty,v.width=f.width,v.dy="1em",v.text=a.message,v.class="noteText",v.fontFamily=bn.noteFontFamily,v.fontSize=bn.noteFontSize,v.fontWeight=bn.noteFontWeight,v.anchor=bn.noteAlign,v.textMargin=bn.noteMargin,v.valign="center";const b=DD(g,v),E=Math.round(b.map(S=>(S._groups||S)[0][0].getBBox().height).reduce((S,_)=>S+_));w.attr("height",E+2*bn.noteMargin),a.height+=E+2*bn.noteMargin,Wr.bumpVerticalPos(E+2*bn.noteMargin),a.stopy=a.starty+E+2*bn.noteMargin,a.stopx=a.startx+f.width,Wr.insert(a.startx,a.starty,a.stopx,a.stopy),Wr.models.addNote(a)},R9=i=>({fontFamily:i.messageFontFamily,fontSize:i.messageFontSize,fontWeight:i.messageFontWeight}),MD=i=>({fontFamily:i.noteFontFamily,fontSize:i.noteFontSize,fontWeight:i.noteFontWeight}),Rbt=i=>({fontFamily:i.actorFontFamily,fontSize:i.actorFontSize,fontWeight:i.actorFontWeight});function eJe(i,a){Wr.bumpVerticalPos(10);const{startx:f,stopx:g,message:w}=a,v=ei.splitBreaks(w).length,b=uo.calculateTextDimensions(w,R9(bn)),E=b.height/v;a.height+=E,Wr.bumpVerticalPos(E);let S,_=b.height-10;const M=b.width;if(f===g){S=Wr.getVerticalPos()+_,bn.rightAngles||(_+=bn.boxMargin,S=Wr.getVerticalPos()+_),_+=30;const F=ei.getMax(M/2,bn.width/2);Wr.insert(f-F,Wr.getVerticalPos()-10+_,g+F,Wr.getVerticalPos()+30+_)}else _+=bn.boxMargin,S=Wr.getVerticalPos()+_,Wr.insert(f,S-10,g,S);return Wr.bumpVerticalPos(_),a.height+=_,a.stopy=a.starty+a.height,Wr.insert(a.fromBounds,a.starty,a.toBounds,a.stopy),S}const nJe=function(i,a,f,g){const{startx:w,stopx:v,starty:b,message:E,type:S,sequenceIndex:_,sequenceVisible:M}=a,F=uo.calculateTextDimensions(E,R9(bn)),R=tpt();R.x=w,R.y=b+10,R.width=v-w,R.class="messageText",R.dy="1em",R.text=E,R.fontFamily=bn.messageFontFamily,R.fontSize=bn.messageFontSize,R.fontWeight=bn.messageFontWeight,R.anchor=bn.messageAlign,R.valign="center",R.textMargin=bn.wrapPadding,R.tspan=!1,DD(i,R);const B=F.width;let z;w===v?bn.rightAngles?z=i.append("path").attr("d",`M ${w},${f} H ${w+ei.getMax(bn.width/2,B/2)} V ${f+25} H ${w}`):z=i.append("path").attr("d","M "+w+","+f+" C "+(w+60)+","+(f-10)+" "+(w+60)+","+(f+30)+" "+w+","+(f+20)):(z=i.append("line"),z.attr("x1",w),z.attr("y1",f),z.attr("x2",v),z.attr("y2",f)),S===g.db.LINETYPE.DOTTED||S===g.db.LINETYPE.DOTTED_CROSS||S===g.db.LINETYPE.DOTTED_POINT||S===g.db.LINETYPE.DOTTED_OPEN?(z.style("stroke-dasharray","3, 3"),z.attr("class","messageLine1")):z.attr("class","messageLine0");let Y="";bn.arrowMarkerAbsolute&&(Y=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,Y=Y.replace(/\(/g,"\\("),Y=Y.replace(/\)/g,"\\)")),z.attr("stroke-width",2),z.attr("stroke","none"),z.style("fill","none"),(S===g.db.LINETYPE.SOLID||S===g.db.LINETYPE.DOTTED)&&z.attr("marker-end","url("+Y+"#arrowhead)"),(S===g.db.LINETYPE.SOLID_POINT||S===g.db.LINETYPE.DOTTED_POINT)&&z.attr("marker-end","url("+Y+"#filled-head)"),(S===g.db.LINETYPE.SOLID_CROSS||S===g.db.LINETYPE.DOTTED_CROSS)&&z.attr("marker-end","url("+Y+"#crosshead)"),(M||bn.showSequenceNumbers)&&(z.attr("marker-start","url("+Y+"#sequencenumber)"),i.append("text").attr("x",w).attr("y",f+4).attr("font-family","sans-serif").attr("font-size","12px").attr("text-anchor","middle").attr("class","sequenceNumber").text(_))},rJe=function(i,a,f,g,w,v,b){let E=0,S=0,_,M=0;for(const F of g){const R=a[F],B=R.box;_&&_!=B&&(b||Wr.models.addBox(_),S+=bn.boxMargin+_.margin),B&&B!=_&&(b||(B.x=E+S,B.y=w),S+=B.margin),R.width=R.width||bn.width,R.height=ei.getMax(R.height||bn.height,bn.height),R.margin=R.margin||bn.actorMargin,M=ei.getMax(M,R.height),f[R.name]&&(S+=R.width/2),R.x=E+S,R.starty=Wr.getVerticalPos(),Wr.insert(R.x,w,R.x+R.width,R.height),E+=R.width+S,R.box&&(R.box.width=E+B.margin-R.box.x),S=R.margin,_=R.box,Wr.models.addActor(R)}_&&!b&&Wr.models.addBox(_),Wr.bumpVerticalPos(M)},jbt=function(i,a,f,g){if(g){let w=0;Wr.bumpVerticalPos(bn.boxMargin*2);for(const v of f){const b=a[v];b.stopy||(b.stopy=Wr.getVerticalPos());const E=_f.drawActor(i,b,bn,!0);w=ei.getMax(w,E)}Wr.bumpVerticalPos(w+bn.boxMargin)}else for(const w of f){const v=a[w];_f.drawActor(i,v,bn,!1)}},Cqt=function(i,a,f,g){let w=0,v=0;for(const b of f){const E=a[b],S=oJe(E),_=_f.drawPopup(i,E,S,bn,bn.forceMenus,g);_.height>w&&(w=_.height),_.width+E.x>v&&(v=_.width+E.x)}return{maxHeight:w,maxWidth:v}},Sqt=function(i){Ld(bn,i),i.fontFamily&&(bn.actorFontFamily=bn.noteFontFamily=bn.messageFontFamily=i.fontFamily),i.fontSize&&(bn.actorFontSize=bn.noteFontSize=bn.messageFontSize=i.fontSize),i.fontWeight&&(bn.actorFontWeight=bn.noteFontWeight=bn.messageFontWeight=i.fontWeight)},bX=function(i){return Wr.activations.filter(function(a){return a.actor===i})},_qt=function(i,a){const f=a[i],g=bX(i),w=g.reduce(function(b,E){return ei.getMin(b,E.startx)},f.x+f.width/2-1),v=g.reduce(function(b,E){return ei.getMax(b,E.stopx)},f.x+f.width/2+1);return[w,v]};function d4(i,a,f,g,w){Wr.bumpVerticalPos(f);let v=g;if(a.id&&a.message&&i[a.id]){const b=i[a.id].width,E=R9(bn);a.message=uo.wrapLabel(`[${a.message}]`,b-2*bn.wrapPadding,E),a.width=b,a.wrap=!0;const S=uo.calculateTextDimensions(a.message,E),_=ei.getMax(S.height,bn.labelBoxHeight);v=g+_,Kt.debug(`${_} - ${a.message}`)}w(a),Wr.bumpVerticalPos(v)}function iJe(i,a,f,g,w,v,b){function E(_,M){_.x<w[i.from].x?(Wr.insert(a.stopx-M,a.starty,a.startx,a.stopy+_.height/2+bn.noteMargin),a.stopx=a.stopx+M):(Wr.insert(a.startx,a.starty,a.stopx+M,a.stopy+_.height/2+bn.noteMargin),a.stopx=a.stopx-M)}function S(_,M){_.x<w[i.to].x?(Wr.insert(a.startx-M,a.starty,a.stopx,a.stopy+_.height/2+bn.noteMargin),a.startx=a.startx+M):(Wr.insert(a.stopx,a.starty,a.startx+M,a.stopy+_.height/2+bn.noteMargin),a.startx=a.startx-M)}if(v[i.to]==g){const _=w[i.to],M=_.type=="actor"?B9/2+3:_.width/2+3;E(_,M),_.starty=f-_.height/2,Wr.bumpVerticalPos(_.height/2)}else if(b[i.from]==g){const _=w[i.from];if(bn.mirrorActors){const M=_.type=="actor"?B9/2:_.width/2;S(_,M)}_.stopy=f-_.height/2,Wr.bumpVerticalPos(_.height/2)}else if(b[i.to]==g){const _=w[i.to];if(bn.mirrorActors){const M=_.type=="actor"?B9/2+3:_.width/2+3;E(_,M)}_.stopy=f-_.height/2,Wr.bumpVerticalPos(_.height/2)}}const sJe=function(i,a,f,g){const{securityLevel:w,sequence:v}=Re();bn=v;let b;w==="sandbox"&&(b=Tr("#i"+a));const E=Tr(w==="sandbox"?b.nodes()[0].contentDocument.body:"body"),S=w==="sandbox"?b.nodes()[0].contentDocument:document;Wr.init(),Kt.debug(g.db);const _=w==="sandbox"?E.select(`[id="${a}"]`):Tr(`[id="${a}"]`),M=g.db.getActors(),F=g.db.getCreatedActors(),R=g.db.getDestroyedActors(),B=g.db.getBoxes();let z=g.db.getActorKeys();const Y=g.db.getMessages(),nt=g.db.getDiagramTitle(),ot=g.db.hasAtLeastOneBox(),ft=g.db.hasAtLeastOneBoxWithTitle(),wt=aJe(M,Y,g);if(bn.height=cJe(M,wt,B),_f.insertComputerIcon(_),_f.insertDatabaseIcon(_),_f.insertClockIcon(_),ot&&(Wr.bumpVerticalPos(bn.boxMargin),ft&&Wr.bumpVerticalPos(B[0].textMaxHeight)),bn.hideUnusedParticipants===!0){const xt=new Set;Y.forEach(Ft=>{xt.add(Ft.from),xt.add(Ft.to)}),z=z.filter(Ft=>xt.has(Ft))}rJe(_,M,F,z,0,Y,!1);const mt=hJe(Y,M,wt,g);_f.insertArrowHead(_),_f.insertArrowCrossHead(_),_f.insertArrowFilledHead(_),_f.insertSequenceNumber(_);function ct(xt,Ft){const Ct=Wr.endActivation(xt);Ct.starty+18>Ft&&(Ct.starty=Ft-6,Ft+=12),_f.drawActivation(_,Ct,Ft,bn,bX(xt.from.actor).length),Wr.insert(Ct.startx,Ft-10,Ct.stopx,Ft)}let rt=1,it=1;const gt=[],Q=[];Y.forEach(function(xt,Ft){let Ct,kt,Gt;switch(xt.type){case g.db.LINETYPE.NOTE:Wr.resetVerticalPos(),kt=xt.noteModel,tJe(_,kt);break;case g.db.LINETYPE.ACTIVE_START:Wr.newActivation(xt,_,M);break;case g.db.LINETYPE.ACTIVE_END:ct(xt,Wr.getVerticalPos());break;case g.db.LINETYPE.LOOP_START:d4(mt,xt,bn.boxMargin,bn.boxMargin+bn.boxTextMargin,Fe=>Wr.newLoop(Fe));break;case g.db.LINETYPE.LOOP_END:Ct=Wr.endLoop(),_f.drawLoop(_,Ct,"loop",bn),Wr.bumpVerticalPos(Ct.stopy-Wr.getVerticalPos()),Wr.models.addLoop(Ct);break;case g.db.LINETYPE.RECT_START:d4(mt,xt,bn.boxMargin,bn.boxMargin,Fe=>Wr.newLoop(void 0,Fe.message));break;case g.db.LINETYPE.RECT_END:Ct=Wr.endLoop(),Q.push(Ct),Wr.models.addLoop(Ct),Wr.bumpVerticalPos(Ct.stopy-Wr.getVerticalPos());break;case g.db.LINETYPE.OPT_START:d4(mt,xt,bn.boxMargin,bn.boxMargin+bn.boxTextMargin,Fe=>Wr.newLoop(Fe));break;case g.db.LINETYPE.OPT_END:Ct=Wr.endLoop(),_f.drawLoop(_,Ct,"opt",bn),Wr.bumpVerticalPos(Ct.stopy-Wr.getVerticalPos()),Wr.models.addLoop(Ct);break;case g.db.LINETYPE.ALT_START:d4(mt,xt,bn.boxMargin,bn.boxMargin+bn.boxTextMargin,Fe=>Wr.newLoop(Fe));break;case g.db.LINETYPE.ALT_ELSE:d4(mt,xt,bn.boxMargin+bn.boxTextMargin,bn.boxMargin,Fe=>Wr.addSectionToLoop(Fe));break;case g.db.LINETYPE.ALT_END:Ct=Wr.endLoop(),_f.drawLoop(_,Ct,"alt",bn),Wr.bumpVerticalPos(Ct.stopy-Wr.getVerticalPos()),Wr.models.addLoop(Ct);break;case g.db.LINETYPE.PAR_START:case g.db.LINETYPE.PAR_OVER_START:d4(mt,xt,bn.boxMargin,bn.boxMargin+bn.boxTextMargin,Fe=>Wr.newLoop(Fe)),Wr.saveVerticalPos();break;case g.db.LINETYPE.PAR_AND:d4(mt,xt,bn.boxMargin+bn.boxTextMargin,bn.boxMargin,Fe=>Wr.addSectionToLoop(Fe));break;case g.db.LINETYPE.PAR_END:Ct=Wr.endLoop(),_f.drawLoop(_,Ct,"par",bn),Wr.bumpVerticalPos(Ct.stopy-Wr.getVerticalPos()),Wr.models.addLoop(Ct);break;case g.db.LINETYPE.AUTONUMBER:rt=xt.message.start||rt,it=xt.message.step||it,xt.message.visible?g.db.enableSequenceNumbers():g.db.disableSequenceNumbers();break;case g.db.LINETYPE.CRITICAL_START:d4(mt,xt,bn.boxMargin,bn.boxMargin+bn.boxTextMargin,Fe=>Wr.newLoop(Fe));break;case g.db.LINETYPE.CRITICAL_OPTION:d4(mt,xt,bn.boxMargin+bn.boxTextMargin,bn.boxMargin,Fe=>Wr.addSectionToLoop(Fe));break;case g.db.LINETYPE.CRITICAL_END:Ct=Wr.endLoop(),_f.drawLoop(_,Ct,"critical",bn),Wr.bumpVerticalPos(Ct.stopy-Wr.getVerticalPos()),Wr.models.addLoop(Ct);break;case g.db.LINETYPE.BREAK_START:d4(mt,xt,bn.boxMargin,bn.boxMargin+bn.boxTextMargin,Fe=>Wr.newLoop(Fe));break;case g.db.LINETYPE.BREAK_END:Ct=Wr.endLoop(),_f.drawLoop(_,Ct,"break",bn),Wr.bumpVerticalPos(Ct.stopy-Wr.getVerticalPos()),Wr.models.addLoop(Ct);break;default:try{Gt=xt.msgModel,Gt.starty=Wr.getVerticalPos(),Gt.sequenceIndex=rt,Gt.sequenceVisible=g.db.showSequenceNumbers();const Fe=eJe(_,Gt);iJe(xt,Gt,Fe,Ft,M,F,R),gt.push({messageModel:Gt,lineStartY:Fe}),Wr.models.addMessage(Gt)}catch(Fe){Kt.error("error while drawing message",Fe)}}[g.db.LINETYPE.SOLID_OPEN,g.db.LINETYPE.DOTTED_OPEN,g.db.LINETYPE.SOLID,g.db.LINETYPE.DOTTED,g.db.LINETYPE.SOLID_CROSS,g.db.LINETYPE.DOTTED_CROSS,g.db.LINETYPE.SOLID_POINT,g.db.LINETYPE.DOTTED_POINT].includes(xt.type)&&(rt=rt+it)}),Kt.debug("createdActors",F),Kt.debug("destroyedActors",R),jbt(_,M,z,!1),gt.forEach(xt=>nJe(_,xt.messageModel,xt.lineStartY,g)),bn.mirrorActors&&jbt(_,M,z,!0),Q.forEach(xt=>_f.drawBackgroundRect(_,xt)),kqt(_,M,z,bn),Wr.models.boxes.forEach(function(xt){xt.height=Wr.getVerticalPos()-xt.y,Wr.insert(xt.x,xt.y,xt.x+xt.width,xt.height),xt.startx=xt.x,xt.starty=xt.y,xt.stopx=xt.startx+xt.width,xt.stopy=xt.starty+xt.height,xt.stroke="rgb(0,0,0, 0.5)",_f.drawBox(_,xt,bn)}),ot&&Wr.bumpVerticalPos(bn.boxMargin);const dt=Cqt(_,M,z,S),{bounds:K}=Wr.getBounds();let yt=K.stopy-K.starty;yt<dt.maxHeight&&(yt=dt.maxHeight);let V=yt+2*bn.diagramMarginY;bn.mirrorActors&&(V=V-bn.boxMargin+bn.bottomMarginAdj);let Ot=K.stopx-K.startx;Ot<dt.maxWidth&&(Ot=dt.maxWidth);const It=Ot+2*bn.diagramMarginX;nt&&_.append("text").text(nt).attr("x",(K.stopx-K.startx)/2-2*bn.diagramMarginX).attr("y",-25),sg(_,V,It,bn.useMaxWidth);const jt=nt?40:0;_.attr("viewBox",K.startx-bn.diagramMarginX+" -"+(bn.diagramMarginY+jt)+" "+It+" "+(V+jt)),Kt.debug("models:",Wr.models)};function aJe(i,a,f){const g={};return a.forEach(function(w){if(i[w.to]&&i[w.from]){const v=i[w.to];if(w.placement===f.db.PLACEMENT.LEFTOF&&!v.prevActor||w.placement===f.db.PLACEMENT.RIGHTOF&&!v.nextActor)return;const b=w.placement!==void 0,E=!b,S=b?MD(bn):R9(bn),_=w.wrap?uo.wrapLabel(w.message,bn.width-2*bn.wrapPadding,S):w.message,F=uo.calculateTextDimensions(_,S).width+2*bn.wrapPadding;E&&w.from===v.nextActor?g[w.to]=ei.getMax(g[w.to]||0,F):E&&w.from===v.prevActor?g[w.from]=ei.getMax(g[w.from]||0,F):E&&w.from===w.to?(g[w.from]=ei.getMax(g[w.from]||0,F/2),g[w.to]=ei.getMax(g[w.to]||0,F/2)):w.placement===f.db.PLACEMENT.RIGHTOF?g[w.from]=ei.getMax(g[w.from]||0,F):w.placement===f.db.PLACEMENT.LEFTOF?g[v.prevActor]=ei.getMax(g[v.prevActor]||0,F):w.placement===f.db.PLACEMENT.OVER&&(v.prevActor&&(g[v.prevActor]=ei.getMax(g[v.prevActor]||0,F/2)),v.nextActor&&(g[w.from]=ei.getMax(g[w.from]||0,F/2)))}}),Kt.debug("maxMessageWidthPerActor:",g),g}const oJe=function(i){let a=0;const f=Rbt(bn);for(const g in i.links){const v=uo.calculateTextDimensions(g,f).width+2*bn.wrapPadding+2*bn.boxMargin;a<v&&(a=v)}return a};function cJe(i,a,f){let g=0;Object.keys(i).forEach(v=>{const b=i[v];b.wrap&&(b.description=uo.wrapLabel(b.description,bn.width-2*bn.wrapPadding,Rbt(bn)));const E=uo.calculateTextDimensions(b.description,Rbt(bn));b.width=b.wrap?bn.width:ei.getMax(bn.width,E.width+2*bn.wrapPadding),b.height=b.wrap?ei.getMax(E.height,bn.height):bn.height,g=ei.getMax(g,b.height)});for(const v in a){const b=i[v];if(!b)continue;const E=i[b.nextActor];if(!E){const F=a[v]+bn.actorMargin-b.width/2;b.margin=ei.getMax(F,bn.actorMargin);continue}const _=a[v]+bn.actorMargin-b.width/2-E.width/2;b.margin=ei.getMax(_,bn.actorMargin)}let w=0;return f.forEach(v=>{const b=R9(bn);let E=v.actorKeys.reduce((M,F)=>M+=i[F].width+(i[F].margin||0),0);E-=2*bn.boxTextMargin,v.wrap&&(v.name=uo.wrapLabel(v.name,E-2*bn.wrapPadding,b));const S=uo.calculateTextDimensions(v.name,b);w=ei.getMax(S.height,w);const _=ei.getMax(E,S.width+2*bn.wrapPadding);if(v.margin=bn.boxTextMargin,E<_){const M=(_-E)/2;v.margin+=M}}),f.forEach(v=>v.textMaxHeight=w),ei.getMax(g,bn.height)}const uJe=function(i,a,f){const g=a[i.from].x,w=a[i.to].x,v=i.wrap&&i.message;let b=uo.calculateTextDimensions(v?uo.wrapLabel(i.message,bn.width,MD(bn)):i.message,MD(bn));const E={width:v?bn.width:ei.getMax(bn.width,b.width+2*bn.noteMargin),height:0,startx:a[i.from].x,stopx:0,starty:0,stopy:0,message:i.message};return i.placement===f.db.PLACEMENT.RIGHTOF?(E.width=v?ei.getMax(bn.width,b.width):ei.getMax(a[i.from].width/2+a[i.to].width/2,b.width+2*bn.noteMargin),E.startx=g+(a[i.from].width+bn.actorMargin)/2):i.placement===f.db.PLACEMENT.LEFTOF?(E.width=v?ei.getMax(bn.width,b.width+2*bn.noteMargin):ei.getMax(a[i.from].width/2+a[i.to].width/2,b.width+2*bn.noteMargin),E.startx=g-E.width+(a[i.from].width-bn.actorMargin)/2):i.to===i.from?(b=uo.calculateTextDimensions(v?uo.wrapLabel(i.message,ei.getMax(bn.width,a[i.from].width),MD(bn)):i.message,MD(bn)),E.width=v?ei.getMax(bn.width,a[i.from].width):ei.getMax(a[i.from].width,bn.width,b.width+2*bn.noteMargin),E.startx=g+(a[i.from].width-E.width)/2):(E.width=Math.abs(g+a[i.from].width/2-(w+a[i.to].width/2))+bn.actorMargin,E.startx=g<w?g+a[i.from].width/2-bn.actorMargin/2:w+a[i.to].width/2-bn.actorMargin/2),v&&(E.message=uo.wrapLabel(i.message,E.width-2*bn.wrapPadding,MD(bn))),Kt.debug(`NM:[${E.startx},${E.stopx},${E.starty},${E.stopy}:${E.width},${E.height}=${i.message}]`),E},lJe=function(i,a,f){if(![f.db.LINETYPE.SOLID_OPEN,f.db.LINETYPE.DOTTED_OPEN,f.db.LINETYPE.SOLID,f.db.LINETYPE.DOTTED,f.db.LINETYPE.SOLID_CROSS,f.db.LINETYPE.DOTTED_CROSS,f.db.LINETYPE.SOLID_POINT,f.db.LINETYPE.DOTTED_POINT].includes(i.type))return{};const[g,w]=_qt(i.from,a),[v,b]=_qt(i.to,a),E=g<=v,S=E?w:g;let _=E?v:b;const M=Math.abs(v-b)>2,F=Y=>E?-Y:Y;i.from===i.to?_=S:(i.activate&&!M&&(_+=F(bn.activationWidth/2-1)),[f.db.LINETYPE.SOLID_OPEN,f.db.LINETYPE.DOTTED_OPEN].includes(i.type)||(_+=F(3)));const R=[g,w,v,b],B=Math.abs(S-_);i.wrap&&i.message&&(i.message=uo.wrapLabel(i.message,ei.getMax(B+2*bn.wrapPadding,bn.width),R9(bn)));const z=uo.calculateTextDimensions(i.message,R9(bn));return{width:ei.getMax(i.wrap?0:z.width+2*bn.wrapPadding,B+2*bn.wrapPadding,bn.width),height:0,startx:S,stopx:_,starty:0,stopy:0,message:i.message,type:i.type,wrap:i.wrap,fromBounds:Math.min.apply(null,R),toBounds:Math.max.apply(null,R)}},hJe=function(i,a,f,g){const w={},v=[];let b,E,S;return i.forEach(function(_){switch(_.id=uo.random({length:10}),_.type){case g.db.LINETYPE.LOOP_START:case g.db.LINETYPE.ALT_START:case g.db.LINETYPE.OPT_START:case g.db.LINETYPE.PAR_START:case g.db.LINETYPE.PAR_OVER_START:case g.db.LINETYPE.CRITICAL_START:case g.db.LINETYPE.BREAK_START:v.push({id:_.id,msg:_.message,from:Number.MAX_SAFE_INTEGER,to:Number.MIN_SAFE_INTEGER,width:0});break;case g.db.LINETYPE.ALT_ELSE:case g.db.LINETYPE.PAR_AND:case g.db.LINETYPE.CRITICAL_OPTION:_.message&&(b=v.pop(),w[b.id]=b,w[_.id]=b,v.push(b));break;case g.db.LINETYPE.LOOP_END:case g.db.LINETYPE.ALT_END:case g.db.LINETYPE.OPT_END:case g.db.LINETYPE.PAR_END:case g.db.LINETYPE.CRITICAL_END:case g.db.LINETYPE.BREAK_END:b=v.pop(),w[b.id]=b;break;case g.db.LINETYPE.ACTIVE_START:{const F=a[_.from?_.from.actor:_.to.actor],R=bX(_.from?_.from.actor:_.to.actor).length,B=F.x+F.width/2+(R-1)*bn.activationWidth/2,z={startx:B,stopx:B+bn.activationWidth,actor:_.from.actor,enabled:!0};Wr.activations.push(z)}break;case g.db.LINETYPE.ACTIVE_END:{const F=Wr.activations.map(R=>R.actor).lastIndexOf(_.from.actor);delete Wr.activations.splice(F,1)[0]}break}_.placement!==void 0?(E=uJe(_,a,g),_.noteModel=E,v.forEach(F=>{b=F,b.from=ei.getMin(b.from,E.startx),b.to=ei.getMax(b.to,E.startx+E.width),b.width=ei.getMax(b.width,Math.abs(b.from-b.to))-bn.labelBoxWidth})):(S=lJe(_,a,g),_.msgModel=S,S.startx&&S.stopx&&v.length>0&&v.forEach(F=>{if(b=F,S.startx===S.stopx){const R=a[_.from],B=a[_.to];b.from=ei.getMin(R.x-S.width/2,R.x-R.width/2,b.from),b.to=ei.getMax(B.x+S.width/2,B.x+R.width/2,b.to),b.width=ei.getMax(b.width,Math.abs(b.to-b.from))-bn.labelBoxWidth}else b.from=ei.getMin(S.startx,b.from),b.to=ei.getMax(S.stopx,b.to),b.width=ei.getMax(b.width,S.width)-bn.labelBoxWidth}))}),Wr.activations=[],Kt.debug("Loop type widths:",w),w},fJe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:lQe,db:mqt,renderer:{bounds:Wr,drawActors:jbt,drawActorsPopup:Cqt,setConf:Sqt,draw:sJe},styles:PQe,init:({wrap:i})=>{mqt.setWrap(i)}}},Symbol.toStringTag,{value:"Module"}));var $bt=function(){var i=function(za,br,An,Nn){for(An=An||{},Nn=za.length;Nn--;An[za[Nn]]=br);return An},a=[1,17],f=[1,18],g=[1,19],w=[1,39],v=[1,40],b=[1,25],E=[1,23],S=[1,24],_=[1,31],M=[1,32],F=[1,33],R=[1,34],B=[1,35],z=[1,36],Y=[1,26],nt=[1,27],ot=[1,28],ft=[1,29],wt=[1,43],mt=[1,30],ct=[1,42],rt=[1,44],it=[1,41],gt=[1,45],Q=[1,9],dt=[1,8,9],K=[1,56],yt=[1,57],V=[1,58],Ot=[1,59],It=[1,60],jt=[1,61],xt=[1,62],Ft=[1,8,9,39],Ct=[1,74],kt=[1,8,9,12,13,21,37,39,42,59,60,61,62,63,64,65,70,72],Gt=[1,8,9,12,13,19,21,37,39,42,46,59,60,61,62,63,64,65,70,72,74,80,95,97,98],Fe=[13,74,80,95,97,98],Mt=[13,64,65,74,80,95,97,98],pn=[13,59,60,61,62,63,74,80,95,97,98],Ae=[1,93],ye=[1,110],tn=[1,108],sn=[1,102],be=[1,103],Ne=[1,104],Xt=[1,105],_e=[1,106],xe=[1,107],Mn=[1,109],ce=[1,8,9,37,39,42],Br=[1,8,9,21],we=[1,8,9,78],Fi=[1,8,9,21,73,74,78,80,81,82,83,84,85],mi={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,className:17,classLiteralName:18,GENERICTYPE:19,relationStatement:20,LABEL:21,namespaceStatement:22,classStatement:23,memberStatement:24,annotationStatement:25,clickStatement:26,styleStatement:27,cssClassStatement:28,noteStatement:29,direction:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,namespaceIdentifier:36,STRUCT_START:37,classStatements:38,STRUCT_STOP:39,NAMESPACE:40,classIdentifier:41,STYLE_SEPARATOR:42,members:43,CLASS:44,ANNOTATION_START:45,ANNOTATION_END:46,MEMBER:47,SEPARATOR:48,relation:49,NOTE_FOR:50,noteText:51,NOTE:52,direction_tb:53,direction_bt:54,direction_rl:55,direction_lr:56,relationType:57,lineType:58,AGGREGATION:59,EXTENSION:60,COMPOSITION:61,DEPENDENCY:62,LOLLIPOP:63,LINE:64,DOTTED_LINE:65,CALLBACK:66,LINK:67,LINK_TARGET:68,CLICK:69,CALLBACK_NAME:70,CALLBACK_ARGS:71,HREF:72,STYLE:73,ALPHA:74,stylesOpt:75,CSSCLASS:76,style:77,COMMA:78,styleComponent:79,NUM:80,COLON:81,UNIT:82,SPACE:83,BRKT:84,PCT:85,commentToken:86,textToken:87,graphCodeTokens:88,textNoTagsToken:89,TAGSTART:90,TAGEND:91,"==":92,"--":93,DEFAULT:94,MINUS:95,keywords:96,UNICODE_TEXT:97,BQUOTE_STR:98,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",19:"GENERICTYPE",21:"LABEL",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",37:"STRUCT_START",39:"STRUCT_STOP",40:"NAMESPACE",42:"STYLE_SEPARATOR",44:"CLASS",45:"ANNOTATION_START",46:"ANNOTATION_END",47:"MEMBER",48:"SEPARATOR",50:"NOTE_FOR",52:"NOTE",53:"direction_tb",54:"direction_bt",55:"direction_rl",56:"direction_lr",59:"AGGREGATION",60:"EXTENSION",61:"COMPOSITION",62:"DEPENDENCY",63:"LOLLIPOP",64:"LINE",65:"DOTTED_LINE",66:"CALLBACK",67:"LINK",68:"LINK_TARGET",69:"CLICK",70:"CALLBACK_NAME",71:"CALLBACK_ARGS",72:"HREF",73:"STYLE",74:"ALPHA",76:"CSSCLASS",78:"COMMA",80:"NUM",81:"COLON",82:"UNIT",83:"SPACE",84:"BRKT",85:"PCT",88:"graphCodeTokens",90:"TAGSTART",91:"TAGEND",92:"==",93:"--",94:"DEFAULT",95:"MINUS",96:"keywords",97:"UNICODE_TEXT",98:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,2],[17,1],[17,1],[17,2],[17,2],[17,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[22,4],[22,5],[36,2],[38,1],[38,2],[38,3],[23,1],[23,3],[23,4],[23,6],[41,2],[41,3],[25,4],[43,1],[43,2],[24,1],[24,2],[24,1],[24,1],[20,3],[20,4],[20,4],[20,5],[29,3],[29,2],[30,1],[30,1],[30,1],[30,1],[49,3],[49,2],[49,2],[49,1],[57,1],[57,1],[57,1],[57,1],[57,1],[58,1],[58,1],[26,3],[26,4],[26,3],[26,4],[26,4],[26,5],[26,3],[26,4],[26,4],[26,5],[26,4],[26,5],[26,5],[26,6],[27,3],[28,3],[75,1],[75,3],[77,1],[77,2],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[86,1],[86,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[89,1],[89,1],[89,1],[89,1],[16,1],[16,1],[16,1],[16,1],[18,1],[51,1]],performAction:function(br,An,Nn,Bn,ke,pe,Je){var an=pe.length-1;switch(ke){case 8:this.$=pe[an-1];break;case 9:case 11:case 12:this.$=pe[an];break;case 10:case 13:this.$=pe[an-1]+pe[an];break;case 14:case 15:this.$=pe[an-1]+"~"+pe[an]+"~";break;case 16:Bn.addRelation(pe[an]);break;case 17:pe[an-1].title=Bn.cleanupLabel(pe[an]),Bn.addRelation(pe[an-1]);break;case 27:this.$=pe[an].trim(),Bn.setAccTitle(this.$);break;case 28:case 29:this.$=pe[an].trim(),Bn.setAccDescription(this.$);break;case 30:Bn.addClassesToNamespace(pe[an-3],pe[an-1]);break;case 31:Bn.addClassesToNamespace(pe[an-4],pe[an-1]);break;case 32:this.$=pe[an],Bn.addNamespace(pe[an]);break;case 33:this.$=[pe[an]];break;case 34:this.$=[pe[an-1]];break;case 35:pe[an].unshift(pe[an-2]),this.$=pe[an];break;case 37:Bn.setCssClass(pe[an-2],pe[an]);break;case 38:Bn.addMembers(pe[an-3],pe[an-1]);break;case 39:Bn.setCssClass(pe[an-5],pe[an-3]),Bn.addMembers(pe[an-5],pe[an-1]);break;case 40:this.$=pe[an],Bn.addClass(pe[an]);break;case 41:this.$=pe[an-1],Bn.addClass(pe[an-1]),Bn.setClassLabel(pe[an-1],pe[an]);break;case 42:Bn.addAnnotation(pe[an],pe[an-2]);break;case 43:this.$=[pe[an]];break;case 44:pe[an].push(pe[an-1]),this.$=pe[an];break;case 45:break;case 46:Bn.addMember(pe[an-1],Bn.cleanupLabel(pe[an]));break;case 47:break;case 48:break;case 49:this.$={id1:pe[an-2],id2:pe[an],relation:pe[an-1],relationTitle1:"none",relationTitle2:"none"};break;case 50:this.$={id1:pe[an-3],id2:pe[an],relation:pe[an-1],relationTitle1:pe[an-2],relationTitle2:"none"};break;case 51:this.$={id1:pe[an-3],id2:pe[an],relation:pe[an-2],relationTitle1:"none",relationTitle2:pe[an-1]};break;case 52:this.$={id1:pe[an-4],id2:pe[an],relation:pe[an-2],relationTitle1:pe[an-3],relationTitle2:pe[an-1]};break;case 53:Bn.addNote(pe[an],pe[an-1]);break;case 54:Bn.addNote(pe[an]);break;case 55:Bn.setDirection("TB");break;case 56:Bn.setDirection("BT");break;case 57:Bn.setDirection("RL");break;case 58:Bn.setDirection("LR");break;case 59:this.$={type1:pe[an-2],type2:pe[an],lineType:pe[an-1]};break;case 60:this.$={type1:"none",type2:pe[an],lineType:pe[an-1]};break;case 61:this.$={type1:pe[an-1],type2:"none",lineType:pe[an]};break;case 62:this.$={type1:"none",type2:"none",lineType:pe[an]};break;case 63:this.$=Bn.relationType.AGGREGATION;break;case 64:this.$=Bn.relationType.EXTENSION;break;case 65:this.$=Bn.relationType.COMPOSITION;break;case 66:this.$=Bn.relationType.DEPENDENCY;break;case 67:this.$=Bn.relationType.LOLLIPOP;break;case 68:this.$=Bn.lineType.LINE;break;case 69:this.$=Bn.lineType.DOTTED_LINE;break;case 70:case 76:this.$=pe[an-2],Bn.setClickEvent(pe[an-1],pe[an]);break;case 71:case 77:this.$=pe[an-3],Bn.setClickEvent(pe[an-2],pe[an-1]),Bn.setTooltip(pe[an-2],pe[an]);break;case 72:this.$=pe[an-2],Bn.setLink(pe[an-1],pe[an]);break;case 73:this.$=pe[an-3],Bn.setLink(pe[an-2],pe[an-1],pe[an]);break;case 74:this.$=pe[an-3],Bn.setLink(pe[an-2],pe[an-1]),Bn.setTooltip(pe[an-2],pe[an]);break;case 75:this.$=pe[an-4],Bn.setLink(pe[an-3],pe[an-2],pe[an]),Bn.setTooltip(pe[an-3],pe[an-1]);break;case 78:this.$=pe[an-3],Bn.setClickEvent(pe[an-2],pe[an-1],pe[an]);break;case 79:this.$=pe[an-4],Bn.setClickEvent(pe[an-3],pe[an-2],pe[an-1]),Bn.setTooltip(pe[an-3],pe[an]);break;case 80:this.$=pe[an-3],Bn.setLink(pe[an-2],pe[an]);break;case 81:this.$=pe[an-4],Bn.setLink(pe[an-3],pe[an-1],pe[an]);break;case 82:this.$=pe[an-4],Bn.setLink(pe[an-3],pe[an-1]),Bn.setTooltip(pe[an-3],pe[an]);break;case 83:this.$=pe[an-5],Bn.setLink(pe[an-4],pe[an-2],pe[an]),Bn.setTooltip(pe[an-4],pe[an-1]);break;case 84:this.$=pe[an-2],Bn.setCssStyle(pe[an-1],pe[an]);break;case 85:Bn.setCssClass(pe[an-1],pe[an]);break;case 86:this.$=[pe[an]];break;case 87:pe[an-2].push(pe[an]),this.$=pe[an-2];break;case 89:this.$=pe[an-1]+pe[an];break}},table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:37,17:20,18:38,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,31:a,33:f,35:g,36:21,40:w,41:22,44:v,45:b,47:E,48:S,50:_,52:M,53:F,54:R,55:B,56:z,66:Y,67:nt,69:ot,73:ft,74:wt,76:mt,80:ct,95:rt,97:it,98:gt},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},i(Q,[2,5],{8:[1,46]}),{8:[1,47]},i(dt,[2,16],{21:[1,48]}),i(dt,[2,18]),i(dt,[2,19]),i(dt,[2,20]),i(dt,[2,21]),i(dt,[2,22]),i(dt,[2,23]),i(dt,[2,24]),i(dt,[2,25]),i(dt,[2,26]),{32:[1,49]},{34:[1,50]},i(dt,[2,29]),i(dt,[2,45],{49:51,57:54,58:55,13:[1,52],21:[1,53],59:K,60:yt,61:V,62:Ot,63:It,64:jt,65:xt}),{37:[1,63]},i(Ft,[2,36],{37:[1,65],42:[1,64]}),i(dt,[2,47]),i(dt,[2,48]),{16:66,74:wt,80:ct,95:rt,97:it},{16:37,17:67,18:38,74:wt,80:ct,95:rt,97:it,98:gt},{16:37,17:68,18:38,74:wt,80:ct,95:rt,97:it,98:gt},{16:37,17:69,18:38,74:wt,80:ct,95:rt,97:it,98:gt},{74:[1,70]},{13:[1,71]},{16:37,17:72,18:38,74:wt,80:ct,95:rt,97:it,98:gt},{13:Ct,51:73},i(dt,[2,55]),i(dt,[2,56]),i(dt,[2,57]),i(dt,[2,58]),i(kt,[2,11],{16:37,18:38,17:75,19:[1,76],74:wt,80:ct,95:rt,97:it,98:gt}),i(kt,[2,12],{19:[1,77]}),{15:78,16:79,74:wt,80:ct,95:rt,97:it},{16:37,17:80,18:38,74:wt,80:ct,95:rt,97:it,98:gt},i(Gt,[2,112]),i(Gt,[2,113]),i(Gt,[2,114]),i(Gt,[2,115]),i([1,8,9,12,13,19,21,37,39,42,59,60,61,62,63,64,65,70,72],[2,116]),i(Q,[2,6],{10:5,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,17:20,36:21,41:22,16:37,18:38,5:81,31:a,33:f,35:g,40:w,44:v,45:b,47:E,48:S,50:_,52:M,53:F,54:R,55:B,56:z,66:Y,67:nt,69:ot,73:ft,74:wt,76:mt,80:ct,95:rt,97:it,98:gt}),{5:82,10:5,16:37,17:20,18:38,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,31:a,33:f,35:g,36:21,40:w,41:22,44:v,45:b,47:E,48:S,50:_,52:M,53:F,54:R,55:B,56:z,66:Y,67:nt,69:ot,73:ft,74:wt,76:mt,80:ct,95:rt,97:it,98:gt},i(dt,[2,17]),i(dt,[2,27]),i(dt,[2,28]),{13:[1,84],16:37,17:83,18:38,74:wt,80:ct,95:rt,97:it,98:gt},{49:85,57:54,58:55,59:K,60:yt,61:V,62:Ot,63:It,64:jt,65:xt},i(dt,[2,46]),{58:86,64:jt,65:xt},i(Fe,[2,62],{57:87,59:K,60:yt,61:V,62:Ot,63:It}),i(Mt,[2,63]),i(Mt,[2,64]),i(Mt,[2,65]),i(Mt,[2,66]),i(Mt,[2,67]),i(pn,[2,68]),i(pn,[2,69]),{8:[1,89],23:90,38:88,41:22,44:v},{16:91,74:wt,80:ct,95:rt,97:it},{43:92,47:Ae},{46:[1,94]},{13:[1,95]},{13:[1,96]},{70:[1,97],72:[1,98]},{21:ye,73:tn,74:sn,75:99,77:100,79:101,80:be,81:Ne,82:Xt,83:_e,84:xe,85:Mn},{74:[1,111]},{13:Ct,51:112},i(dt,[2,54]),i(dt,[2,117]),i(kt,[2,13]),i(kt,[2,14]),i(kt,[2,15]),{37:[2,32]},{15:113,16:79,37:[2,9],74:wt,80:ct,95:rt,97:it},i(ce,[2,40],{11:114,12:[1,115]}),i(Q,[2,7]),{9:[1,116]},i(Br,[2,49]),{16:37,17:117,18:38,74:wt,80:ct,95:rt,97:it,98:gt},{13:[1,119],16:37,17:118,18:38,74:wt,80:ct,95:rt,97:it,98:gt},i(Fe,[2,61],{57:120,59:K,60:yt,61:V,62:Ot,63:It}),i(Fe,[2,60]),{39:[1,121]},{23:90,38:122,41:22,44:v},{8:[1,123],39:[2,33]},i(Ft,[2,37],{37:[1,124]}),{39:[1,125]},{39:[2,43],43:126,47:Ae},{16:37,17:127,18:38,74:wt,80:ct,95:rt,97:it,98:gt},i(dt,[2,70],{13:[1,128]}),i(dt,[2,72],{13:[1,130],68:[1,129]}),i(dt,[2,76],{13:[1,131],71:[1,132]}),{13:[1,133]},i(dt,[2,84],{78:[1,134]}),i(we,[2,86],{79:135,21:ye,73:tn,74:sn,80:be,81:Ne,82:Xt,83:_e,84:xe,85:Mn}),i(Fi,[2,88]),i(Fi,[2,90]),i(Fi,[2,91]),i(Fi,[2,92]),i(Fi,[2,93]),i(Fi,[2,94]),i(Fi,[2,95]),i(Fi,[2,96]),i(Fi,[2,97]),i(Fi,[2,98]),i(dt,[2,85]),i(dt,[2,53]),{37:[2,10]},i(ce,[2,41]),{13:[1,136]},{1:[2,4]},i(Br,[2,51]),i(Br,[2,50]),{16:37,17:137,18:38,74:wt,80:ct,95:rt,97:it,98:gt},i(Fe,[2,59]),i(dt,[2,30]),{39:[1,138]},{23:90,38:139,39:[2,34],41:22,44:v},{43:140,47:Ae},i(Ft,[2,38]),{39:[2,44]},i(dt,[2,42]),i(dt,[2,71]),i(dt,[2,73]),i(dt,[2,74],{68:[1,141]}),i(dt,[2,77]),i(dt,[2,78],{13:[1,142]}),i(dt,[2,80],{13:[1,144],68:[1,143]}),{21:ye,73:tn,74:sn,77:145,79:101,80:be,81:Ne,82:Xt,83:_e,84:xe,85:Mn},i(Fi,[2,89]),{14:[1,146]},i(Br,[2,52]),i(dt,[2,31]),{39:[2,35]},{39:[1,147]},i(dt,[2,75]),i(dt,[2,79]),i(dt,[2,81]),i(dt,[2,82],{68:[1,148]}),i(we,[2,87],{79:135,21:ye,73:tn,74:sn,80:be,81:Ne,82:Xt,83:_e,84:xe,85:Mn}),i(ce,[2,8]),i(Ft,[2,39]),i(dt,[2,83])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],78:[2,32],113:[2,10],116:[2,4],126:[2,44],139:[2,35]},parseError:function(br,An){if(An.recoverable)this.trace(br);else{var Nn=new Error(br);throw Nn.hash=An,Nn}},parse:function(br){var An=this,Nn=[0],Bn=[],ke=[null],pe=[],Je=this.table,an="",xn=0,qa=0,xo=2,ko=1,va=pe.slice.call(arguments,1),Ha=Object.create(this.lexer),ds={yy:{}};for(var Fu in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Fu)&&(ds.yy[Fu]=this.yy[Fu]);Ha.setInput(br,ds.yy),ds.yy.lexer=Ha,ds.yy.parser=this,typeof Ha.yylloc>"u"&&(Ha.yylloc={});var Zs=Ha.yylloc;pe.push(Zs);var d1=Ha.options&&Ha.options.ranges;typeof ds.yy.parseError=="function"?this.parseError=ds.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function I2(){var ea;return ea=Bn.pop()||Ha.lex()||ko,typeof ea!="number"&&(ea instanceof Array&&(Bn=ea,ea=Bn.pop()),ea=An.symbols_[ea]||ea),ea}for(var ll,Ic,wc,Ea,gu={},ta,fo,mc,ca;;){if(Ic=Nn[Nn.length-1],this.defaultActions[Ic]?wc=this.defaultActions[Ic]:((ll===null||typeof ll>"u")&&(ll=I2()),wc=Je[Ic]&&Je[Ic][ll]),typeof wc>"u"||!wc.length||!wc[0]){var ya="";ca=[];for(ta in Je[Ic])this.terminals_[ta]&&ta>xo&&ca.push("'"+this.terminals_[ta]+"'");Ha.showPosition?ya="Parse error on line "+(xn+1)+`:
1336 \r\r `),jo(bx,ght,r),jo(JT,ght,i3(r)),r=new ih(4),vO(r,_ve),jo(bx,wA,r),jo(JT,wA,i3(r)),r=new ih(4),vO(r,_ve),jo(bx,wA,r),jo(JT,wA,i3(r)),r=new ih(4),vO(r,Ave),a3(r,u(nu(bx,wA),122)),jo(bx,dht,r),jo(JT,dht,i3(r)),r=new ih(4),vO(r,"-.0:AZ__az··ÀÖØöøıĴľŁňŊžƀǃǍǰǴǵǺȗɐʨʻˁːˑ̀͠͡ͅΆΊΌΌΎΡΣώϐϖϚϚϜϜϞϞϠϠϢϳЁЌЎяёќўҁ҃҆ҐӄӇӈӋӌӐӫӮӵӸӹԱՖՙՙաֆֹֻֽֿֿׁׂ֑֣֡ׄׄאתװײءغـْ٠٩ٰڷںھۀێېۓە۪ۭۨ۰۹ँःअह़्॑॔क़ॣ०९ঁঃঅঌএঐওনপরললশহ়়াৄেৈো্ৗৗড়ঢ়য়ৣ০ৱਂਂਅਊਏਐਓਨਪਰਲਲ਼ਵਸ਼ਸਹ਼਼ਾੂੇੈੋ੍ਖ਼ੜਫ਼ਫ਼੦ੴઁઃઅઋઍઍએઑઓનપરલળવહ઼ૅેૉો્ૠૠ૦૯ଁଃଅଌଏଐଓନପରଲଳଶହ଼ୃେୈୋ୍ୖୗଡ଼ଢ଼ୟୡ୦୯ஂஃஅஊஎஐஒகஙசஜஜஞடணதநபமவஷஹாூெைொ்ௗௗ௧௯ఁఃఅఌఎఐఒనపళవహాౄెైొ్ౕౖౠౡ౦౯ಂಃಅಌಎಐಒನಪಳವಹಾೄೆೈೊ್ೕೖೞೞೠೡ೦೯ംഃഅഌഎഐഒനപഹാൃെൈൊ്ൗൗൠൡ൦൯กฮะฺเ๎๐๙ກຂຄຄງຈຊຊຍຍດທນຟມຣລລວວສຫອຮະູົຽເໄໆໆ່ໍ໐໙༘༙༠༩༹༹༵༵༷༷༾ཇཉཀྵ྄ཱ྆ྋྐྕྗྗྙྭྱྷྐྵྐྵႠჅაჶᄀᄀᄂᄃᄅᄇᄉᄉᄋᄌᄎᄒᄼᄼᄾᄾᅀᅀᅌᅌᅎᅎᅐᅐᅔᅕᅙᅙᅟᅡᅣᅣᅥᅥᅧᅧᅩᅩᅭᅮᅲᅳᅵᅵᆞᆞᆨᆨᆫᆫᆮᆯᆷᆸᆺᆺᆼᇂᇫᇫᇰᇰᇹᇹḀẛẠỹἀἕἘἝἠὅὈὍὐὗὙὙὛὛὝὝὟώᾀᾴᾶᾼιιῂῄῆῌῐΐῖΊῠῬῲῴῶῼ⃐⃜⃡⃡ΩΩKÅ℮℮ↀↂ々々〇〇〡〯〱〵ぁゔ゙゚ゝゞァヺーヾㄅㄬ一龥가힣"),jo(bx,pht,r),jo(JT,pht,i3(r)),r=new ih(4),vO(r,Ave),iu(r,95,95),iu(r,58,58),jo(bx,bht,r),jo(JT,bht,i3(r))),n=u(nu(e?bx:JT,t),138),n}function ibe(t){wm(t,new dw(vwt(p$(gm(hm(dm(fm(new G1,Qn),"ELK Layered"),"Layer-based algorithm provided by the Eclipse Layout Kernel. Arranges as many edges as possible into one direction by placing nodes into subsequent layers. This implementation supports different routing styles (straight, orthogonal, splines); if orthogonal routing is selected, arbitrary port constraints are respected, thus enabling the layout of block diagrams such as actor-oriented models or circuit schematics. Furthermore, full layout of compound graphs with cross-hierarchy edges is supported when the respective option is activated on the top level."),new RJ),Qn),Hi((O7(),Zdt),lt(ut(GK,1),te,245,0,[VK,UK,HK,Jdt,qK,zK]))))),le(t,Qn,zEt,Se(u1t)),le(t,Qn,qEt,Se(dAt)),le(t,Qn,Lut,Se(aP)),le(t,Qn,HEt,Se(Yf)),le(t,Qn,Put,Se(Y5)),le(t,Qn,plt,Se(_v)),le(t,Qn,VEt,Se(O3)),le(t,Qn,UEt,Se(FT)),le(t,Qn,GEt,Se(BT)),le(t,Qn,KEt,Se(l1t)),le(t,Qn,h3,Se(Av)),le(t,Qn,WEt,Se(h1t)),le(t,Qn,YEt,Se(jA)),le(t,Qn,XEt,Se(KG)),le(t,Qn,kEt,Se(sP)),le(t,Qn,TEt,Se(W5)),le(t,Qn,EEt,Se(Pw)),le(t,Qn,CEt,Se(X5)),le(t,Qn,gN,he(0)),le(t,Qn,SEt,Se(PT)),le(t,Qn,_Et,Se(fAt)),le(t,Qn,AEt,Se(Yk)),le(t,Qn,Bg,Se(kAt)),le(t,Qn,HV,Se(pAt)),le(t,Qn,VV,Se(bAt)),le(t,Qn,tA,Se(d1t)),le(t,Qn,olt,Se(wAt)),le(t,Qn,clt,Se(mAt)),le(t,Qn,UV,Se(WG)),le(t,Qn,GV,Se(g1t)),le(t,Qn,KV,Se(yAt)),le(t,Qn,WV,Se(vAt)),le(t,Qn,ult,Se(xAt)),le(t,Qn,elt,Se(Cv)),le(t,Qn,nlt,Se(RA)),le(t,Qn,$V,Se(s1t)),le(t,Qn,zV,Se(U_t)),le(t,Qn,pN,Se(A6e)),le(t,Qn,bN,Se(L6e)),le(t,Qn,wN,Se(_6e)),le(t,Qn,mN,Se(S6e)),le(t,Qn,cv,gAt),le(t,Qn,ov,oAt),le(t,Qn,EN,q_t),le(t,Qn,QEt,0),le(t,Qn,IV,he(1)),le(t,Qn,Dk,tT),le(t,Qn,JEt,Se(Nw)),le(t,Qn,Fut,Se(bs)),le(t,Qn,ZEt,Se(NT)),le(t,Qn,TN,Se(b6e)),le(t,Qn,t7t,Se(u0)),le(t,Qn,XV,Se(A3)),le(t,Qn,W_,(Pn(),!0)),le(t,Qn,e7t,Se(L3)),le(t,Qn,n7t,Se(Mw)),le(t,Qn,_5,Se(Ow)),le(t,Qn,Mk,Se(GG)),le(t,Qn,eT,Se(c1t)),le(t,Qn,blt,z_t),le(t,Qn,nT,Se(Tv)),le(t,Qn,r7t,Se(VG)),le(t,Qn,rT,Se(M3)),le(t,Qn,i7t,Se(k6e)),le(t,Qn,s7t,Se(lAt)),le(t,Qn,a7t,uAt),le(t,Qn,o7t,Se(v6e)),le(t,Qn,c7t,Se(y6e)),le(t,Qn,u7t,Se(x6e)),le(t,Qn,l7t,Se(m6e)),le(t,Qn,uEt,Se(f1t)),le(t,Qn,kN,Se(Iw)),le(t,Qn,Gut,Se(a2)),le(t,Qn,cEt,Se($A)),le(t,Qn,hEt,Se(Iu)),le(t,Qn,Hut,Se(Dw)),le(t,Qn,Z_,Se(FA)),le(t,Qn,gEt,Se(Ev)),le(t,Qn,vEt,Se(R_t)),le(t,Qn,Qut,Se(e1t)),le(t,Qn,RV,Se(iP)),le(t,Qn,Xut,Se(n1t)),le(t,Qn,iEt,Se(nAt)),le(t,Qn,sEt,Se(rAt)),le(t,Qn,BV,Se(Q_t)),le(t,Qn,A5,Se(UG)),le(t,Qn,Zut,Se(o1t)),le(t,Qn,rEt,Se(a1t)),le(t,Qn,tlt,Se(sAt)),le(t,Qn,yEt,Se(V_t)),le(t,Qn,xEt,Se(i1t)),le(t,Qn,QV,Se(t1t)),le(t,Qn,Jut,Se(iAt)),le(t,Qn,LEt,Se(PG)),le(t,Qn,DEt,Se(P_t)),le(t,Qn,ilt,Se(NG)),le(t,Qn,qV,Se(W_t)),le(t,Qn,slt,Se(K_t)),le(t,Qn,alt,Se(Y_t)),le(t,Qn,Ik,Se(IT)),le(t,Qn,h7t,Se(Vo)),le(t,Qn,Dut,Se(Hp)),le(t,Qn,f7t,Se(l0)),le(t,Qn,OV,Se(r1t)),le(t,Qn,Yut,Se(j_t)),le(t,Qn,d7t,Se(Vp)),le(t,Qn,g7t,Se(PA)),le(t,Qn,p7t,Se(zG)),le(t,Qn,b7t,Se(Sv)),le(t,Qn,wlt,Se(cAt)),le(t,Qn,mlt,Se(OT)),le(t,Qn,Vut,Se(Z_t)),le(t,Qn,Uut,Se(tAt)),le(t,Qn,JV,Se(I3)),le(t,Qn,aEt,Se(Jft)),le(t,Qn,Kut,Se(eAt)),le(t,Qn,MEt,Se($G)),le(t,Qn,IEt,Se(jG)),le(t,Qn,w7t,Se(HG)),le(t,Qn,Wut,Se(J_t)),le(t,Qn,jV,Se(BA)),le(t,Qn,m7t,Se(oP)),le(t,Qn,nEt,Se($_t)),le(t,Qn,oEt,Se(hAt)),le(t,Qn,rlt,Se(H_t)),le(t,Qn,pEt,Se(d6e)),le(t,Qn,bEt,Se(g6e)),le(t,Qn,fEt,Se(w6e)),le(t,Qn,wEt,Se(p6e)),le(t,Qn,ZV,Se(X_t)),le(t,Qn,dEt,Se(qG)),le(t,Qn,mEt,Se(RG)),le(t,Qn,YV,Se(U0)),le(t,Qn,PEt,Se(B_t)),le(t,Qn,hlt,Se(FG)),le(t,Qn,flt,Se(F_t)),le(t,Qn,NEt,Se(BG)),le(t,Qn,llt,Se(_3)),le(t,Qn,OEt,Se(Zft)),le(t,Qn,lEt,Se(G_t))}function VSn(t){zr(t.a,ti,lt(ut(Pe,1),ue,2,6,[pi,"anySimpleType"])),zr(t.b,ti,lt(ut(Pe,1),ue,2,6,[pi,"anyType",lf,DN])),zr(u(Dt(Qt(t.b),0),35),ti,lt(ut(Pe,1),ue,2,6,[lf,cht,pi,":mixed"])),zr(u(Dt(Qt(t.b),1),35),ti,lt(ut(Pe,1),ue,2,6,[lf,cht,UTt,lht,pi,":1",dve,"lax"])),zr(u(Dt(Qt(t.b),2),35),ti,lt(ut(Pe,1),ue,2,6,[lf,uve,UTt,lht,pi,":2",dve,"lax"])),zr(t.c,ti,lt(ut(Pe,1),ue,2,6,[pi,"anyURI",ff,I1])),zr(t.d,ti,lt(ut(Pe,1),ue,2,6,[pi,"base64Binary",ff,I1])),zr(t.e,ti,lt(ut(Pe,1),ue,2,6,[pi,kk,ff,I1])),zr(t.f,ti,lt(ut(Pe,1),ue,2,6,[pi,"boolean:Object",Ka,kk])),zr(t.g,ti,lt(ut(Pe,1),ue,2,6,[pi,lA])),zr(t.i,ti,lt(ut(Pe,1),ue,2,6,[pi,"byte:Object",Ka,lA])),zr(t.j,ti,lt(ut(Pe,1),ue,2,6,[pi,"date",ff,I1])),zr(t.k,ti,lt(ut(Pe,1),ue,2,6,[pi,"dateTime",ff,I1])),zr(t.n,ti,lt(ut(Pe,1),ue,2,6,[pi,"decimal",ff,I1])),zr(t.o,ti,lt(ut(Pe,1),ue,2,6,[pi,hA,ff,I1])),zr(t.p,ti,lt(ut(Pe,1),ue,2,6,[pi,"double:Object",Ka,hA])),zr(t.q,ti,lt(ut(Pe,1),ue,2,6,[pi,"duration",ff,I1])),zr(t.s,ti,lt(ut(Pe,1),ue,2,6,[pi,"ENTITIES",Ka,gve,GTt,"1"])),zr(t.r,ti,lt(ut(Pe,1),ue,2,6,[pi,gve,uht,KTt])),zr(t.t,ti,lt(ut(Pe,1),ue,2,6,[pi,KTt,Ka,AU])),zr(t.u,ti,lt(ut(Pe,1),ue,2,6,[pi,fA,ff,I1])),zr(t.v,ti,lt(ut(Pe,1),ue,2,6,[pi,"float:Object",Ka,fA])),zr(t.w,ti,lt(ut(Pe,1),ue,2,6,[pi,"gDay",ff,I1])),zr(t.B,ti,lt(ut(Pe,1),ue,2,6,[pi,"gMonth",ff,I1])),zr(t.A,ti,lt(ut(Pe,1),ue,2,6,[pi,"gMonthDay",ff,I1])),zr(t.C,ti,lt(ut(Pe,1),ue,2,6,[pi,"gYear",ff,I1])),zr(t.D,ti,lt(ut(Pe,1),ue,2,6,[pi,"gYearMonth",ff,I1])),zr(t.F,ti,lt(ut(Pe,1),ue,2,6,[pi,"hexBinary",ff,I1])),zr(t.G,ti,lt(ut(Pe,1),ue,2,6,[pi,"ID",Ka,AU])),zr(t.H,ti,lt(ut(Pe,1),ue,2,6,[pi,"IDREF",Ka,AU])),zr(t.J,ti,lt(ut(Pe,1),ue,2,6,[pi,"IDREFS",Ka,pve,GTt,"1"])),zr(t.I,ti,lt(ut(Pe,1),ue,2,6,[pi,pve,uht,"IDREF"])),zr(t.K,ti,lt(ut(Pe,1),ue,2,6,[pi,dA])),zr(t.M,ti,lt(ut(Pe,1),ue,2,6,[pi,WTt])),zr(t.L,ti,lt(ut(Pe,1),ue,2,6,[pi,"int:Object",Ka,dA])),zr(t.P,ti,lt(ut(Pe,1),ue,2,6,[pi,"language",Ka,hht,fht,bve])),zr(t.Q,ti,lt(ut(Pe,1),ue,2,6,[pi,gA])),zr(t.R,ti,lt(ut(Pe,1),ue,2,6,[pi,"long:Object",Ka,gA])),zr(t.S,ti,lt(ut(Pe,1),ue,2,6,[pi,"Name",Ka,hht,fht,YTt])),zr(t.T,ti,lt(ut(Pe,1),ue,2,6,[pi,AU,Ka,"Name",fht,wve])),zr(t.U,ti,lt(ut(Pe,1),ue,2,6,[pi,"negativeInteger",Ka,mve,PN,"-1"])),zr(t.V,ti,lt(ut(Pe,1),ue,2,6,[pi,XTt,Ka,hht,fht,"\\c+"])),zr(t.X,ti,lt(ut(Pe,1),ue,2,6,[pi,"NMTOKENS",Ka,vve,GTt,"1"])),zr(t.W,ti,lt(ut(Pe,1),ue,2,6,[pi,vve,uht,XTt])),zr(t.Y,ti,lt(ut(Pe,1),ue,2,6,[pi,QTt,Ka,WTt,FN,"0"])),zr(t.Z,ti,lt(ut(Pe,1),ue,2,6,[pi,mve,Ka,WTt,PN,"0"])),zr(t.$,ti,lt(ut(Pe,1),ue,2,6,[pi,yve,Ka,Nct,ff,"replace"])),zr(t._,ti,lt(ut(Pe,1),ue,2,6,[pi,"NOTATION",ff,I1])),zr(t.ab,ti,lt(ut(Pe,1),ue,2,6,[pi,"positiveInteger",Ka,QTt,FN,"1"])),zr(t.bb,ti,lt(ut(Pe,1),ue,2,6,[pi,"processingInstruction_._type",lf,"empty"])),zr(u(Dt(Qt(t.bb),0),35),ti,lt(ut(Pe,1),ue,2,6,[lf,TU,pi,"data"])),zr(u(Dt(Qt(t.bb),1),35),ti,lt(ut(Pe,1),ue,2,6,[lf,TU,pi,MTt])),zr(t.cb,ti,lt(ut(Pe,1),ue,2,6,[pi,"QName",ff,I1])),zr(t.db,ti,lt(ut(Pe,1),ue,2,6,[pi,pA])),zr(t.eb,ti,lt(ut(Pe,1),ue,2,6,[pi,"short:Object",Ka,pA])),zr(t.fb,ti,lt(ut(Pe,1),ue,2,6,[pi,"simpleAnyType",lf,MN])),zr(u(Dt(Qt(t.fb),0),35),ti,lt(ut(Pe,1),ue,2,6,[pi,":3",lf,MN])),zr(u(Dt(Qt(t.fb),1),35),ti,lt(ut(Pe,1),ue,2,6,[pi,":4",lf,MN])),zr(u(Dt(Qt(t.fb),2),19),ti,lt(ut(Pe,1),ue,2,6,[pi,":5",lf,MN])),zr(t.gb,ti,lt(ut(Pe,1),ue,2,6,[pi,Nct,ff,"preserve"])),zr(t.hb,ti,lt(ut(Pe,1),ue,2,6,[pi,"time",ff,I1])),zr(t.ib,ti,lt(ut(Pe,1),ue,2,6,[pi,hht,Ka,yve,ff,I1])),zr(t.jb,ti,lt(ut(Pe,1),ue,2,6,[pi,xve,PN,"255",FN,"0"])),zr(t.kb,ti,lt(ut(Pe,1),ue,2,6,[pi,"unsignedByte:Object",Ka,xve])),zr(t.lb,ti,lt(ut(Pe,1),ue,2,6,[pi,kve,PN,"4294967295",FN,"0"])),zr(t.mb,ti,lt(ut(Pe,1),ue,2,6,[pi,"unsignedInt:Object",Ka,kve])),zr(t.nb,ti,lt(ut(Pe,1),ue,2,6,[pi,"unsignedLong",Ka,QTt,PN,Eve,FN,"0"])),zr(t.ob,ti,lt(ut(Pe,1),ue,2,6,[pi,Tve,PN,"65535",FN,"0"])),zr(t.pb,ti,lt(ut(Pe,1),ue,2,6,[pi,"unsignedShort:Object",Ka,Tve])),zr(t.qb,ti,lt(ut(Pe,1),ue,2,6,[pi,"",lf,DN])),zr(u(Dt(Qt(t.qb),0),35),ti,lt(ut(Pe,1),ue,2,6,[lf,cht,pi,":mixed"])),zr(u(Dt(Qt(t.qb),1),19),ti,lt(ut(Pe,1),ue,2,6,[lf,TU,pi,"xmlns:prefix"])),zr(u(Dt(Qt(t.qb),2),19),ti,lt(ut(Pe,1),ue,2,6,[lf,TU,pi,"xsi:schemaLocation"])),zr(u(Dt(Qt(t.qb),3),35),ti,lt(ut(Pe,1),ue,2,6,[lf,CU,pi,"cDATA",SU,IN])),zr(u(Dt(Qt(t.qb),4),35),ti,lt(ut(Pe,1),ue,2,6,[lf,CU,pi,"comment",SU,IN])),zr(u(Dt(Qt(t.qb),5),19),ti,lt(ut(Pe,1),ue,2,6,[lf,CU,pi,Cve,SU,IN])),zr(u(Dt(Qt(t.qb),6),35),ti,lt(ut(Pe,1),ue,2,6,[lf,CU,pi,Ylt,SU,IN]))}function Qr(t){return hn("_UI_EMFDiagnostic_marker",t)?"EMF Problem":hn("_UI_CircularContainment_diagnostic",t)?"An object may not circularly contain itself":hn(ome,t)?"Wrong character.":hn(cme,t)?"Invalid reference number.":hn(pU,t)?"A character is required after \\.":hn(nht,t)?"'?' is not expected. '(?:' or '(?=' or '(?!' or '(?<' or '(?#' or '(?>'?":hn(ume,t)?"'(?<' or '(?<!' is expected.":hn(lme,t)?"A comment is not terminated.":hn(Tw,t)?"')' is expected.":hn(ITt,t)?"Unexpected end of the pattern in a modifier group.":hn(hme,t)?"':' is expected.":hn(fme,t)?"Unexpected end of the pattern in a conditional group.":hn(dme,t)?"A back reference or an anchor or a lookahead or a look-behind is expected in a conditional pattern.":hn(gme,t)?"There are more than three choices in a conditional group.":hn(pme,t)?"A character in U+0040-U+005f must follow \\c.":hn(bme,t)?"A '{' is required before a character category.":hn(wme,t)?"A property name is not closed by '}'.":hn(OTt,t)?"Unexpected meta character.":hn(rht,t)?"Unknown property.":hn(NTt,t)?"A POSIX character class must be closed by ':]'.":hn(bU,t)?"Unexpected end of the pattern in a character class.":hn(mme,t)?"Unknown name for a POSIX character class.":hn("parser.cc.4",t)?"'-' is invalid here.":hn(vme,t)?"']' is expected.":hn(PTt,t)?"'[' is invalid in a character class. Write '\\['.":hn(FTt,t)?"']' is invalid in a character class. Write '\\]'.":hn(iht,t)?"'-' is an invalid character range. Write '\\-'.":hn(yme,t)?"'[' is expected.":hn(xme,t)?"')' or '-[' or '+[' or '&[' is expected.":hn(kme,t)?"The range end code point is less than the start code point.":hn(zp,t)?"Invalid Unicode hex notation.":hn(Eme,t)?"Overflow in a hex notation.":hn(Tme,t)?"'\\x{' must be closed by '}'.":hn(Cme,t)?"Invalid Unicode code point.":hn(Sme,t)?"An anchor must not be here.":hn(Hh,t)?"This expression is not supported in the current option setting.":hn(_me,t)?"Invalid quantifier. A digit is expected.":hn(Ame,t)?"Invalid quantifier. Invalid quantity or a '}' is missing.":hn(Lme,t)?"Invalid quantifier. A digit or '}' is expected.":hn(Dme,t)?"Invalid quantifier. A min quantity must be <= a max quantity.":hn(BTt,t)?"Invalid quantifier. A quantity value overflow.":hn("_UI_PackageRegistry_extensionpoint",t)?"Ecore Package Registry for Generated Packages":hn("_UI_DynamicPackageRegistry_extensionpoint",t)?"Ecore Package Registry for Dynamic Packages":hn("_UI_FactoryRegistry_extensionpoint",t)?"Ecore Factory Override Registry":hn("_UI_URIExtensionParserRegistry_extensionpoint",t)?"URI Extension Parser Registry":hn("_UI_URIProtocolParserRegistry_extensionpoint",t)?"URI Protocol Parser Registry":hn("_UI_URIContentParserRegistry_extensionpoint",t)?"URI Content Parser Registry":hn("_UI_ContentHandlerRegistry_extensionpoint",t)?"Content Handler Registry":hn("_UI_URIMappingRegistry_extensionpoint",t)?"URI Converter Mapping Registry":hn("_UI_PackageRegistryImplementation_extensionpoint",t)?"Ecore Package Registry Implementation":hn("_UI_ValidationDelegateRegistry_extensionpoint",t)?"Validation Delegate Registry":hn("_UI_SettingDelegateRegistry_extensionpoint",t)?"Feature Setting Delegate Factory Registry":hn("_UI_InvocationDelegateRegistry_extensionpoint",t)?"Operation Invocation Delegate Factory Registry":hn("_UI_EClassInterfaceNotAbstract_diagnostic",t)?"A class that is an interface must also be abstract":hn("_UI_EClassNoCircularSuperTypes_diagnostic",t)?"A class may not be a super type of itself":hn("_UI_EClassNotWellFormedMapEntryNoInstanceClassName_diagnostic",t)?"A class that inherits from a map entry class must have instance class name 'java.util.Map$Entry'":hn("_UI_EReferenceOppositeOfOppositeInconsistent_diagnostic",t)?"The opposite of the opposite may not be a reference different from this one":hn("_UI_EReferenceOppositeNotFeatureOfType_diagnostic",t)?"The opposite must be a feature of the reference's type":hn("_UI_EReferenceTransientOppositeNotTransient_diagnostic",t)?"The opposite of a transient reference must be transient if it is proxy resolving":hn("_UI_EReferenceOppositeBothContainment_diagnostic",t)?"The opposite of a containment reference must not be a containment reference":hn("_UI_EReferenceConsistentUnique_diagnostic",t)?"A containment or bidirectional reference must be unique if its upper bound is different from 1":hn("_UI_ETypedElementNoType_diagnostic",t)?"The typed element must have a type":hn("_UI_EAttributeNoDataType_diagnostic",t)?"The generic attribute type must not refer to a class":hn("_UI_EReferenceNoClass_diagnostic",t)?"The generic reference type must not refer to a data type":hn("_UI_EGenericTypeNoTypeParameterAndClassifier_diagnostic",t)?"A generic type can't refer to both a type parameter and a classifier":hn("_UI_EGenericTypeNoClass_diagnostic",t)?"A generic super type must refer to a class":hn("_UI_EGenericTypeNoTypeParameterOrClassifier_diagnostic",t)?"A generic type in this context must refer to a classifier or a type parameter":hn("_UI_EGenericTypeBoundsOnlyForTypeArgument_diagnostic",t)?"A generic type may have bounds only when used as a type argument":hn("_UI_EGenericTypeNoUpperAndLowerBound_diagnostic",t)?"A generic type must not have both a lower and an upper bound":hn("_UI_EGenericTypeNoTypeParameterOrClassifierAndBound_diagnostic",t)?"A generic type with bounds must not also refer to a type parameter or classifier":hn("_UI_EGenericTypeNoArguments_diagnostic",t)?"A generic type may have arguments only if it refers to a classifier":hn("_UI_EGenericTypeOutOfScopeTypeParameter_diagnostic",t)?"A generic type may only refer to a type parameter that is in scope":t}function USn(t){var e,n,r,s,o,h,d,m,k,T,A,P,$,U,J;t.r||(t.r=!0,mu(t,"graph"),Xq(t,"graph"),Qq(t,hT),nO(t.o,"T"),Or(Yo(t.a),t.p),Or(Yo(t.f),t.a),Or(Yo(t.n),t.f),Or(Yo(t.g),t.n),Or(Yo(t.c),t.n),Or(Yo(t.i),t.c),Or(Yo(t.j),t.c),Or(Yo(t.d),t.f),Or(Yo(t.e),t.a),Ec(t.p,o_n,Qbe,!0,!0,!1),U=i5(t.p,t.p,"setProperty"),J=Bce(U),k=mg(t.o),T=(n=(r=new lm,r),n),Or((!k.d&&(k.d=new Ps(Do,k,1)),k.d),T),A=rst(J),zxt(T,A),jH(U,k,kTt),k=rst(J),jH(U,k,cA),U=i5(t.p,null,"getProperty"),J=Bce(U),k=mg(t.o),T=rst(J),Or((!k.d&&(k.d=new Ps(Do,k,1)),k.d),T),jH(U,k,kTt),k=rst(J),$=hd(U,k,null),$&&$.oj(),U=i5(t.p,t.wb.e,"hasProperty"),k=mg(t.o),T=(s=(o=new lm,o),s),Or((!k.d&&(k.d=new Ps(Do,k,1)),k.d),T),jH(U,k,kTt),U=i5(t.p,t.p,"copyProperties"),qo(U,t.p,Ult),U=i5(t.p,null,"getAllProperties"),k=mg(t.wb.P),T=mg(t.o),Or((!k.d&&(k.d=new Ps(Do,k,1)),k.d),T),A=(h=(d=new lm,d),h),Or((!T.d&&(T.d=new Ps(Do,T,1)),T.d),A),T=mg(t.wb.M),Or((!k.d&&(k.d=new Ps(Do,k,1)),k.d),T),P=hd(U,k,null),P&&P.oj(),Ec(t.a,QT,Bwe,!0,!1,!0),Ui(u(Dt(Qt(t.a),0),19),t.k,null,Ywe,0,-1,QT,!1,!1,!0,!0,!1,!1,!1),Ec(t.f,zP,jwe,!0,!1,!0),Ui(u(Dt(Qt(t.f),0),19),t.g,u(Dt(Qt(t.g),0),19),"labels",0,-1,zP,!1,!1,!0,!0,!1,!1,!1),vs(u(Dt(Qt(t.f),1),35),t.wb._,Xwe,null,0,1,zP,!1,!1,!0,!1,!0,!1),Ec(t.n,qP,"ElkShape",!0,!1,!0),vs(u(Dt(Qt(t.n),0),35),t.wb.t,Glt,Y7,1,1,qP,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.n),1),35),t.wb.t,Klt,Y7,1,1,qP,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.n),2),35),t.wb.t,"x",Y7,1,1,qP,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.n),3),35),t.wb.t,"y",Y7,1,1,qP,!1,!1,!0,!1,!0,!1),U=i5(t.n,null,"setDimensions"),qo(U,t.wb.t,Klt),qo(U,t.wb.t,Glt),U=i5(t.n,null,"setLocation"),qo(U,t.wb.t,"x"),qo(U,t.wb.t,"y"),Ec(t.g,Po,vTt,!1,!1,!0),Ui(u(Dt(Qt(t.g),0),19),t.f,u(Dt(Qt(t.f),0),19),Wlt,0,1,Po,!1,!1,!0,!1,!1,!1,!1),vs(u(Dt(Qt(t.g),1),35),t.wb._,Ylt,"",0,1,Po,!1,!1,!0,!1,!0,!1),Ec(t.c,vr,$we,!0,!1,!0),Ui(u(Dt(Qt(t.c),0),19),t.d,u(Dt(Qt(t.d),1),19),"outgoingEdges",0,-1,vr,!1,!1,!0,!1,!0,!1,!1),Ui(u(Dt(Qt(t.c),1),19),t.d,u(Dt(Qt(t.d),2),19),"incomingEdges",0,-1,vr,!1,!1,!0,!1,!0,!1,!1),Ec(t.i,bi,yTt,!1,!1,!0),Ui(u(Dt(Qt(t.i),0),19),t.j,u(Dt(Qt(t.j),0),19),"ports",0,-1,bi,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.i),1),19),t.i,u(Dt(Qt(t.i),2),19),Xlt,0,-1,bi,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.i),2),19),t.i,u(Dt(Qt(t.i),1),19),Wlt,0,1,bi,!1,!1,!0,!1,!1,!1,!1),Ui(u(Dt(Qt(t.i),3),19),t.d,u(Dt(Qt(t.d),0),19),"containedEdges",0,-1,bi,!1,!1,!0,!0,!1,!1,!1),vs(u(Dt(Qt(t.i),4),35),t.wb.e,Qwe,null,0,1,bi,!0,!0,!1,!1,!0,!0),Ec(t.j,kl,xTt,!1,!1,!0),Ui(u(Dt(Qt(t.j),0),19),t.i,u(Dt(Qt(t.i),0),19),Wlt,0,1,kl,!1,!1,!0,!1,!1,!1,!1),Ec(t.d,Ts,mTt,!1,!1,!0),Ui(u(Dt(Qt(t.d),0),19),t.i,u(Dt(Qt(t.i),3),19),"containingNode",0,1,Ts,!1,!1,!0,!1,!1,!1,!1),Ui(u(Dt(Qt(t.d),1),19),t.c,u(Dt(Qt(t.c),0),19),ETt,0,-1,Ts,!1,!1,!0,!1,!0,!1,!1),Ui(u(Dt(Qt(t.d),2),19),t.c,u(Dt(Qt(t.c),1),19),Qlt,0,-1,Ts,!1,!1,!0,!1,!0,!1,!1),Ui(u(Dt(Qt(t.d),3),19),t.e,u(Dt(Qt(t.e),5),19),TTt,0,-1,Ts,!1,!1,!0,!0,!1,!1,!1),vs(u(Dt(Qt(t.d),4),35),t.wb.e,"hyperedge",null,0,1,Ts,!0,!0,!1,!1,!0,!0),vs(u(Dt(Qt(t.d),5),35),t.wb.e,Qwe,null,0,1,Ts,!0,!0,!1,!1,!0,!0),vs(u(Dt(Qt(t.d),6),35),t.wb.e,"selfloop",null,0,1,Ts,!0,!0,!1,!1,!0,!0),vs(u(Dt(Qt(t.d),7),35),t.wb.e,"connected",null,0,1,Ts,!0,!0,!1,!1,!0,!0),Ec(t.b,vh,Rwe,!1,!1,!0),vs(u(Dt(Qt(t.b),0),35),t.wb.t,"x",Y7,1,1,vh,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.b),1),35),t.wb.t,"y",Y7,1,1,vh,!1,!1,!0,!1,!0,!1),U=i5(t.b,null,"set"),qo(U,t.wb.t,"x"),qo(U,t.wb.t,"y"),Ec(t.e,Wi,zwe,!1,!1,!0),vs(u(Dt(Qt(t.e),0),35),t.wb.t,"startX",null,0,1,Wi,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.e),1),35),t.wb.t,"startY",null,0,1,Wi,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.e),2),35),t.wb.t,"endX",null,0,1,Wi,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.e),3),35),t.wb.t,"endY",null,0,1,Wi,!1,!1,!0,!1,!0,!1),Ui(u(Dt(Qt(t.e),4),19),t.b,null,hU,0,-1,Wi,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.e),5),19),t.d,u(Dt(Qt(t.d),3),19),Wlt,0,1,Wi,!1,!1,!0,!1,!1,!1,!1),Ui(u(Dt(Qt(t.e),6),19),t.c,null,CTt,0,1,Wi,!1,!1,!0,!1,!0,!1,!1),Ui(u(Dt(Qt(t.e),7),19),t.c,null,STt,0,1,Wi,!1,!1,!0,!1,!0,!1,!1),Ui(u(Dt(Qt(t.e),8),19),t.e,u(Dt(Qt(t.e),9),19),_Tt,0,-1,Wi,!1,!1,!0,!1,!0,!1,!1),Ui(u(Dt(Qt(t.e),9),19),t.e,u(Dt(Qt(t.e),8),19),ATt,0,-1,Wi,!1,!1,!0,!1,!0,!1,!1),vs(u(Dt(Qt(t.e),10),35),t.wb._,Xwe,null,0,1,Wi,!1,!1,!0,!1,!0,!1),U=i5(t.e,null,"setStartLocation"),qo(U,t.wb.t,"x"),qo(U,t.wb.t,"y"),U=i5(t.e,null,"setEndLocation"),qo(U,t.wb.t,"x"),qo(U,t.wb.t,"y"),Ec(t.k,Sw,"ElkPropertyToValueMapEntry",!1,!1,!1),k=mg(t.o),T=(m=(e=new lm,e),m),Or((!k.d&&(k.d=new Ps(Do,k,1)),k.d),T),W1e(u(Dt(Qt(t.k),0),35),k,"key",Sw,!1,!1,!0,!1),vs(u(Dt(Qt(t.k),1),35),t.s,cA,null,0,1,Sw,!1,!1,!0,!1,!0,!1),fi(t.o,Sdt,"IProperty",!0),fi(t.s,aa,"PropertyValue",!0),g5t(t,hT))}function sbe(){sbe=V,vt=Vt(ul,M5,28,po,15,1),vt[9]=35,vt[10]=19,vt[13]=19,vt[32]=51,vt[33]=49,vt[34]=33,zt(vt,35,38,49),vt[38]=1,zt(vt,39,45,49),zt(vt,45,47,-71),vt[47]=49,zt(vt,48,58,-71),vt[58]=61,vt[59]=49,vt[60]=1,vt[61]=49,vt[62]=33,zt(vt,63,65,49),zt(vt,65,91,-3),zt(vt,91,93,33),vt[93]=1,vt[94]=33,vt[95]=-3,vt[96]=33,zt(vt,97,123,-3),zt(vt,123,183,33),vt[183]=-87,zt(vt,184,192,33),zt(vt,192,215,-19),vt[215]=33,zt(vt,216,247,-19),vt[247]=33,zt(vt,248,306,-19),zt(vt,306,308,33),zt(vt,308,319,-19),zt(vt,319,321,33),zt(vt,321,329,-19),vt[329]=33,zt(vt,330,383,-19),vt[383]=33,zt(vt,384,452,-19),zt(vt,452,461,33),zt(vt,461,497,-19),zt(vt,497,500,33),zt(vt,500,502,-19),zt(vt,502,506,33),zt(vt,506,536,-19),zt(vt,536,592,33),zt(vt,592,681,-19),zt(vt,681,699,33),zt(vt,699,706,-19),zt(vt,706,720,33),zt(vt,720,722,-87),zt(vt,722,768,33),zt(vt,768,838,-87),zt(vt,838,864,33),zt(vt,864,866,-87),zt(vt,866,902,33),vt[902]=-19,vt[903]=-87,zt(vt,904,907,-19),vt[907]=33,vt[908]=-19,vt[909]=33,zt(vt,910,930,-19),vt[930]=33,zt(vt,931,975,-19),vt[975]=33,zt(vt,976,983,-19),zt(vt,983,986,33),vt[986]=-19,vt[987]=33,vt[988]=-19,vt[989]=33,vt[990]=-19,vt[991]=33,vt[992]=-19,vt[993]=33,zt(vt,994,1012,-19),zt(vt,1012,1025,33),zt(vt,1025,1037,-19),vt[1037]=33,zt(vt,1038,1104,-19),vt[1104]=33,zt(vt,1105,1117,-19),vt[1117]=33,zt(vt,1118,1154,-19),vt[1154]=33,zt(vt,1155,1159,-87),zt(vt,1159,1168,33),zt(vt,1168,1221,-19),zt(vt,1221,1223,33),zt(vt,1223,1225,-19),zt(vt,1225,1227,33),zt(vt,1227,1229,-19),zt(vt,1229,1232,33),zt(vt,1232,1260,-19),zt(vt,1260,1262,33),zt(vt,1262,1270,-19),zt(vt,1270,1272,33),zt(vt,1272,1274,-19),zt(vt,1274,1329,33),zt(vt,1329,1367,-19),zt(vt,1367,1369,33),vt[1369]=-19,zt(vt,1370,1377,33),zt(vt,1377,1415,-19),zt(vt,1415,1425,33),zt(vt,1425,1442,-87),vt[1442]=33,zt(vt,1443,1466,-87),vt[1466]=33,zt(vt,1467,1470,-87),vt[1470]=33,vt[1471]=-87,vt[1472]=33,zt(vt,1473,1475,-87),vt[1475]=33,vt[1476]=-87,zt(vt,1477,1488,33),zt(vt,1488,1515,-19),zt(vt,1515,1520,33),zt(vt,1520,1523,-19),zt(vt,1523,1569,33),zt(vt,1569,1595,-19),zt(vt,1595,1600,33),vt[1600]=-87,zt(vt,1601,1611,-19),zt(vt,1611,1619,-87),zt(vt,1619,1632,33),zt(vt,1632,1642,-87),zt(vt,1642,1648,33),vt[1648]=-87,zt(vt,1649,1720,-19),zt(vt,1720,1722,33),zt(vt,1722,1727,-19),vt[1727]=33,zt(vt,1728,1743,-19),vt[1743]=33,zt(vt,1744,1748,-19),vt[1748]=33,vt[1749]=-19,zt(vt,1750,1765,-87),zt(vt,1765,1767,-19),zt(vt,1767,1769,-87),vt[1769]=33,zt(vt,1770,1774,-87),zt(vt,1774,1776,33),zt(vt,1776,1786,-87),zt(vt,1786,2305,33),zt(vt,2305,2308,-87),vt[2308]=33,zt(vt,2309,2362,-19),zt(vt,2362,2364,33),vt[2364]=-87,vt[2365]=-19,zt(vt,2366,2382,-87),zt(vt,2382,2385,33),zt(vt,2385,2389,-87),zt(vt,2389,2392,33),zt(vt,2392,2402,-19),zt(vt,2402,2404,-87),zt(vt,2404,2406,33),zt(vt,2406,2416,-87),zt(vt,2416,2433,33),zt(vt,2433,2436,-87),vt[2436]=33,zt(vt,2437,2445,-19),zt(vt,2445,2447,33),zt(vt,2447,2449,-19),zt(vt,2449,2451,33),zt(vt,2451,2473,-19),vt[2473]=33,zt(vt,2474,2481,-19),vt[2481]=33,vt[2482]=-19,zt(vt,2483,2486,33),zt(vt,2486,2490,-19),zt(vt,2490,2492,33),vt[2492]=-87,vt[2493]=33,zt(vt,2494,2501,-87),zt(vt,2501,2503,33),zt(vt,2503,2505,-87),zt(vt,2505,2507,33),zt(vt,2507,2510,-87),zt(vt,2510,2519,33),vt[2519]=-87,zt(vt,2520,2524,33),zt(vt,2524,2526,-19),vt[2526]=33,zt(vt,2527,2530,-19),zt(vt,2530,2532,-87),zt(vt,2532,2534,33),zt(vt,2534,2544,-87),zt(vt,2544,2546,-19),zt(vt,2546,2562,33),vt[2562]=-87,zt(vt,2563,2565,33),zt(vt,2565,2571,-19),zt(vt,2571,2575,33),zt(vt,2575,2577,-19),zt(vt,2577,2579,33),zt(vt,2579,2601,-19),vt[2601]=33,zt(vt,2602,2609,-19),vt[2609]=33,zt(vt,2610,2612,-19),vt[2612]=33,zt(vt,2613,2615,-19),vt[2615]=33,zt(vt,2616,2618,-19),zt(vt,2618,2620,33),vt[2620]=-87,vt[2621]=33,zt(vt,2622,2627,-87),zt(vt,2627,2631,33),zt(vt,2631,2633,-87),zt(vt,2633,2635,33),zt(vt,2635,2638,-87),zt(vt,2638,2649,33),zt(vt,2649,2653,-19),vt[2653]=33,vt[2654]=-19,zt(vt,2655,2662,33),zt(vt,2662,2674,-87),zt(vt,2674,2677,-19),zt(vt,2677,2689,33),zt(vt,2689,2692,-87),vt[2692]=33,zt(vt,2693,2700,-19),vt[2700]=33,vt[2701]=-19,vt[2702]=33,zt(vt,2703,2706,-19),vt[2706]=33,zt(vt,2707,2729,-19),vt[2729]=33,zt(vt,2730,2737,-19),vt[2737]=33,zt(vt,2738,2740,-19),vt[2740]=33,zt(vt,2741,2746,-19),zt(vt,2746,2748,33),vt[2748]=-87,vt[2749]=-19,zt(vt,2750,2758,-87),vt[2758]=33,zt(vt,2759,2762,-87),vt[2762]=33,zt(vt,2763,2766,-87),zt(vt,2766,2784,33),vt[2784]=-19,zt(vt,2785,2790,33),zt(vt,2790,2800,-87),zt(vt,2800,2817,33),zt(vt,2817,2820,-87),vt[2820]=33,zt(vt,2821,2829,-19),zt(vt,2829,2831,33),zt(vt,2831,2833,-19),zt(vt,2833,2835,33),zt(vt,2835,2857,-19),vt[2857]=33,zt(vt,2858,2865,-19),vt[2865]=33,zt(vt,2866,2868,-19),zt(vt,2868,2870,33),zt(vt,2870,2874,-19),zt(vt,2874,2876,33),vt[2876]=-87,vt[2877]=-19,zt(vt,2878,2884,-87),zt(vt,2884,2887,33),zt(vt,2887,2889,-87),zt(vt,2889,2891,33),zt(vt,2891,2894,-87),zt(vt,2894,2902,33),zt(vt,2902,2904,-87),zt(vt,2904,2908,33),zt(vt,2908,2910,-19),vt[2910]=33,zt(vt,2911,2914,-19),zt(vt,2914,2918,33),zt(vt,2918,2928,-87),zt(vt,2928,2946,33),zt(vt,2946,2948,-87),vt[2948]=33,zt(vt,2949,2955,-19),zt(vt,2955,2958,33),zt(vt,2958,2961,-19),vt[2961]=33,zt(vt,2962,2966,-19),zt(vt,2966,2969,33),zt(vt,2969,2971,-19),vt[2971]=33,vt[2972]=-19,vt[2973]=33,zt(vt,2974,2976,-19),zt(vt,2976,2979,33),zt(vt,2979,2981,-19),zt(vt,2981,2984,33),zt(vt,2984,2987,-19),zt(vt,2987,2990,33),zt(vt,2990,2998,-19),vt[2998]=33,zt(vt,2999,3002,-19),zt(vt,3002,3006,33),zt(vt,3006,3011,-87),zt(vt,3011,3014,33),zt(vt,3014,3017,-87),vt[3017]=33,zt(vt,3018,3022,-87),zt(vt,3022,3031,33),vt[3031]=-87,zt(vt,3032,3047,33),zt(vt,3047,3056,-87),zt(vt,3056,3073,33),zt(vt,3073,3076,-87),vt[3076]=33,zt(vt,3077,3085,-19),vt[3085]=33,zt(vt,3086,3089,-19),vt[3089]=33,zt(vt,3090,3113,-19),vt[3113]=33,zt(vt,3114,3124,-19),vt[3124]=33,zt(vt,3125,3130,-19),zt(vt,3130,3134,33),zt(vt,3134,3141,-87),vt[3141]=33,zt(vt,3142,3145,-87),vt[3145]=33,zt(vt,3146,3150,-87),zt(vt,3150,3157,33),zt(vt,3157,3159,-87),zt(vt,3159,3168,33),zt(vt,3168,3170,-19),zt(vt,3170,3174,33),zt(vt,3174,3184,-87),zt(vt,3184,3202,33),zt(vt,3202,3204,-87),vt[3204]=33,zt(vt,3205,3213,-19),vt[3213]=33,zt(vt,3214,3217,-19),vt[3217]=33,zt(vt,3218,3241,-19),vt[3241]=33,zt(vt,3242,3252,-19),vt[3252]=33,zt(vt,3253,3258,-19),zt(vt,3258,3262,33),zt(vt,3262,3269,-87),vt[3269]=33,zt(vt,3270,3273,-87),vt[3273]=33,zt(vt,3274,3278,-87),zt(vt,3278,3285,33),zt(vt,3285,3287,-87),zt(vt,3287,3294,33),vt[3294]=-19,vt[3295]=33,zt(vt,3296,3298,-19),zt(vt,3298,3302,33),zt(vt,3302,3312,-87),zt(vt,3312,3330,33),zt(vt,3330,3332,-87),vt[3332]=33,zt(vt,3333,3341,-19),vt[3341]=33,zt(vt,3342,3345,-19),vt[3345]=33,zt(vt,3346,3369,-19),vt[3369]=33,zt(vt,3370,3386,-19),zt(vt,3386,3390,33),zt(vt,3390,3396,-87),zt(vt,3396,3398,33),zt(vt,3398,3401,-87),vt[3401]=33,zt(vt,3402,3406,-87),zt(vt,3406,3415,33),vt[3415]=-87,zt(vt,3416,3424,33),zt(vt,3424,3426,-19),zt(vt,3426,3430,33),zt(vt,3430,3440,-87),zt(vt,3440,3585,33),zt(vt,3585,3631,-19),vt[3631]=33,vt[3632]=-19,vt[3633]=-87,zt(vt,3634,3636,-19),zt(vt,3636,3643,-87),zt(vt,3643,3648,33),zt(vt,3648,3654,-19),zt(vt,3654,3663,-87),vt[3663]=33,zt(vt,3664,3674,-87),zt(vt,3674,3713,33),zt(vt,3713,3715,-19),vt[3715]=33,vt[3716]=-19,zt(vt,3717,3719,33),zt(vt,3719,3721,-19),vt[3721]=33,vt[3722]=-19,zt(vt,3723,3725,33),vt[3725]=-19,zt(vt,3726,3732,33),zt(vt,3732,3736,-19),vt[3736]=33,zt(vt,3737,3744,-19),vt[3744]=33,zt(vt,3745,3748,-19),vt[3748]=33,vt[3749]=-19,vt[3750]=33,vt[3751]=-19,zt(vt,3752,3754,33),zt(vt,3754,3756,-19),vt[3756]=33,zt(vt,3757,3759,-19),vt[3759]=33,vt[3760]=-19,vt[3761]=-87,zt(vt,3762,3764,-19),zt(vt,3764,3770,-87),vt[3770]=33,zt(vt,3771,3773,-87),vt[3773]=-19,zt(vt,3774,3776,33),zt(vt,3776,3781,-19),vt[3781]=33,vt[3782]=-87,vt[3783]=33,zt(vt,3784,3790,-87),zt(vt,3790,3792,33),zt(vt,3792,3802,-87),zt(vt,3802,3864,33),zt(vt,3864,3866,-87),zt(vt,3866,3872,33),zt(vt,3872,3882,-87),zt(vt,3882,3893,33),vt[3893]=-87,vt[3894]=33,vt[3895]=-87,vt[3896]=33,vt[3897]=-87,zt(vt,3898,3902,33),zt(vt,3902,3904,-87),zt(vt,3904,3912,-19),vt[3912]=33,zt(vt,3913,3946,-19),zt(vt,3946,3953,33),zt(vt,3953,3973,-87),vt[3973]=33,zt(vt,3974,3980,-87),zt(vt,3980,3984,33),zt(vt,3984,3990,-87),vt[3990]=33,vt[3991]=-87,vt[3992]=33,zt(vt,3993,4014,-87),zt(vt,4014,4017,33),zt(vt,4017,4024,-87),vt[4024]=33,vt[4025]=-87,zt(vt,4026,4256,33),zt(vt,4256,4294,-19),zt(vt,4294,4304,33),zt(vt,4304,4343,-19),zt(vt,4343,4352,33),vt[4352]=-19,vt[4353]=33,zt(vt,4354,4356,-19),vt[4356]=33,zt(vt,4357,4360,-19),vt[4360]=33,vt[4361]=-19,vt[4362]=33,zt(vt,4363,4365,-19),vt[4365]=33,zt(vt,4366,4371,-19),zt(vt,4371,4412,33),vt[4412]=-19,vt[4413]=33,vt[4414]=-19,vt[4415]=33,vt[4416]=-19,zt(vt,4417,4428,33),vt[4428]=-19,vt[4429]=33,vt[4430]=-19,vt[4431]=33,vt[4432]=-19,zt(vt,4433,4436,33),zt(vt,4436,4438,-19),zt(vt,4438,4441,33),vt[4441]=-19,zt(vt,4442,4447,33),zt(vt,4447,4450,-19),vt[4450]=33,vt[4451]=-19,vt[4452]=33,vt[4453]=-19,vt[4454]=33,vt[4455]=-19,vt[4456]=33,vt[4457]=-19,zt(vt,4458,4461,33),zt(vt,4461,4463,-19),zt(vt,4463,4466,33),zt(vt,4466,4468,-19),vt[4468]=33,vt[4469]=-19,zt(vt,4470,4510,33),vt[4510]=-19,zt(vt,4511,4520,33),vt[4520]=-19,zt(vt,4521,4523,33),vt[4523]=-19,zt(vt,4524,4526,33),zt(vt,4526,4528,-19),zt(vt,4528,4535,33),zt(vt,4535,4537,-19),vt[4537]=33,vt[4538]=-19,vt[4539]=33,zt(vt,4540,4547,-19),zt(vt,4547,4587,33),vt[4587]=-19,zt(vt,4588,4592,33),vt[4592]=-19,zt(vt,4593,4601,33),vt[4601]=-19,zt(vt,4602,7680,33),zt(vt,7680,7836,-19),zt(vt,7836,7840,33),zt(vt,7840,7930,-19),zt(vt,7930,7936,33),zt(vt,7936,7958,-19),zt(vt,7958,7960,33),zt(vt,7960,7966,-19),zt(vt,7966,7968,33),zt(vt,7968,8006,-19),zt(vt,8006,8008,33),zt(vt,8008,8014,-19),zt(vt,8014,8016,33),zt(vt,8016,8024,-19),vt[8024]=33,vt[8025]=-19,vt[8026]=33,vt[8027]=-19,vt[8028]=33,vt[8029]=-19,vt[8030]=33,zt(vt,8031,8062,-19),zt(vt,8062,8064,33),zt(vt,8064,8117,-19),vt[8117]=33,zt(vt,8118,8125,-19),vt[8125]=33,vt[8126]=-19,zt(vt,8127,8130,33),zt(vt,8130,8133,-19),vt[8133]=33,zt(vt,8134,8141,-19),zt(vt,8141,8144,33),zt(vt,8144,8148,-19),zt(vt,8148,8150,33),zt(vt,8150,8156,-19),zt(vt,8156,8160,33),zt(vt,8160,8173,-19),zt(vt,8173,8178,33),zt(vt,8178,8181,-19),vt[8181]=33,zt(vt,8182,8189,-19),zt(vt,8189,8400,33),zt(vt,8400,8413,-87),zt(vt,8413,8417,33),vt[8417]=-87,zt(vt,8418,8486,33),vt[8486]=-19,zt(vt,8487,8490,33),zt(vt,8490,8492,-19),zt(vt,8492,8494,33),vt[8494]=-19,zt(vt,8495,8576,33),zt(vt,8576,8579,-19),zt(vt,8579,12293,33),vt[12293]=-87,vt[12294]=33,vt[12295]=-19,zt(vt,12296,12321,33),zt(vt,12321,12330,-19),zt(vt,12330,12336,-87),vt[12336]=33,zt(vt,12337,12342,-87),zt(vt,12342,12353,33),zt(vt,12353,12437,-19),zt(vt,12437,12441,33),zt(vt,12441,12443,-87),zt(vt,12443,12445,33),zt(vt,12445,12447,-87),zt(vt,12447,12449,33),zt(vt,12449,12539,-19),vt[12539]=33,zt(vt,12540,12543,-87),zt(vt,12543,12549,33),zt(vt,12549,12589,-19),zt(vt,12589,19968,33),zt(vt,19968,40870,-19),zt(vt,40870,44032,33),zt(vt,44032,55204,-19),zt(vt,55204,cN,33),zt(vt,57344,65534,33)}function GSn(t){var e,n,r,s,o,h,d;t.hb||(t.hb=!0,mu(t,"ecore"),Xq(t,"ecore"),Qq(t,hf),nO(t.fb,"E"),nO(t.L,"T"),nO(t.P,"K"),nO(t.P,"V"),nO(t.cb,"E"),Or(Yo(t.b),t.bb),Or(Yo(t.a),t.Q),Or(Yo(t.o),t.p),Or(Yo(t.p),t.R),Or(Yo(t.q),t.p),Or(Yo(t.v),t.q),Or(Yo(t.w),t.R),Or(Yo(t.B),t.Q),Or(Yo(t.R),t.Q),Or(Yo(t.T),t.eb),Or(Yo(t.U),t.R),Or(Yo(t.V),t.eb),Or(Yo(t.W),t.bb),Or(Yo(t.bb),t.eb),Or(Yo(t.eb),t.R),Or(Yo(t.db),t.R),Ec(t.b,V3,$me,!1,!1,!0),vs(u(Dt(Qt(t.b),0),35),t.e,"iD",null,0,1,V3,!1,!1,!0,!1,!0,!1),Ui(u(Dt(Qt(t.b),1),19),t.q,null,"eAttributeType",1,1,V3,!0,!0,!1,!1,!0,!1,!0),Ec(t.a,ci,Bme,!1,!1,!0),vs(u(Dt(Qt(t.a),0),35),t._,Ult,null,0,1,ci,!1,!1,!0,!1,!0,!1),Ui(u(Dt(Qt(t.a),1),19),t.ab,null,"details",0,-1,ci,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.a),2),19),t.Q,u(Dt(Qt(t.Q),0),19),"eModelElement",0,1,ci,!0,!1,!0,!1,!1,!1,!1),Ui(u(Dt(Qt(t.a),3),19),t.S,null,"contents",0,-1,ci,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.a),4),19),t.S,null,"references",0,-1,ci,!1,!1,!0,!1,!0,!1,!1),Ec(t.o,mf,"EClass",!1,!1,!0),vs(u(Dt(Qt(t.o),0),35),t.e,"abstract",null,0,1,mf,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.o),1),35),t.e,"interface",null,0,1,mf,!1,!1,!0,!1,!0,!1),Ui(u(Dt(Qt(t.o),2),19),t.o,null,"eSuperTypes",0,-1,mf,!1,!1,!0,!1,!0,!0,!1),Ui(u(Dt(Qt(t.o),3),19),t.T,u(Dt(Qt(t.T),0),19),"eOperations",0,-1,mf,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.o),4),19),t.b,null,"eAllAttributes",0,-1,mf,!0,!0,!1,!1,!0,!1,!0),Ui(u(Dt(Qt(t.o),5),19),t.W,null,"eAllReferences",0,-1,mf,!0,!0,!1,!1,!0,!1,!0),Ui(u(Dt(Qt(t.o),6),19),t.W,null,"eReferences",0,-1,mf,!0,!0,!1,!1,!0,!1,!0),Ui(u(Dt(Qt(t.o),7),19),t.b,null,"eAttributes",0,-1,mf,!0,!0,!1,!1,!0,!1,!0),Ui(u(Dt(Qt(t.o),8),19),t.W,null,"eAllContainments",0,-1,mf,!0,!0,!1,!1,!0,!1,!0),Ui(u(Dt(Qt(t.o),9),19),t.T,null,"eAllOperations",0,-1,mf,!0,!0,!1,!1,!0,!1,!0),Ui(u(Dt(Qt(t.o),10),19),t.bb,null,"eAllStructuralFeatures",0,-1,mf,!0,!0,!1,!1,!0,!1,!0),Ui(u(Dt(Qt(t.o),11),19),t.o,null,"eAllSuperTypes",0,-1,mf,!0,!0,!1,!1,!0,!1,!0),Ui(u(Dt(Qt(t.o),12),19),t.b,null,"eIDAttribute",0,1,mf,!0,!0,!1,!1,!1,!1,!0),Ui(u(Dt(Qt(t.o),13),19),t.bb,u(Dt(Qt(t.bb),7),19),"eStructuralFeatures",0,-1,mf,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.o),14),19),t.H,null,"eGenericSuperTypes",0,-1,mf,!1,!1,!0,!0,!1,!0,!1),Ui(u(Dt(Qt(t.o),15),19),t.H,null,"eAllGenericSuperTypes",0,-1,mf,!0,!0,!1,!1,!0,!1,!0),d=Oo(u(Dt(Di(t.o),0),62),t.e,"isSuperTypeOf"),qo(d,t.o,"someClass"),Oo(u(Dt(Di(t.o),1),62),t.I,"getFeatureCount"),d=Oo(u(Dt(Di(t.o),2),62),t.bb,Jme),qo(d,t.I,"featureID"),d=Oo(u(Dt(Di(t.o),3),62),t.I,Zme),qo(d,t.bb,bA),d=Oo(u(Dt(Di(t.o),4),62),t.bb,Jme),qo(d,t._,"featureName"),Oo(u(Dt(Di(t.o),5),62),t.I,"getOperationCount"),d=Oo(u(Dt(Di(t.o),6),62),t.T,"getEOperation"),qo(d,t.I,"operationID"),d=Oo(u(Dt(Di(t.o),7),62),t.I,tve),qo(d,t.T,HTt),d=Oo(u(Dt(Di(t.o),8),62),t.T,"getOverride"),qo(d,t.T,HTt),d=Oo(u(Dt(Di(t.o),9),62),t.H,"getFeatureType"),qo(d,t.bb,bA),Ec(t.p,B1,zme,!0,!1,!0),vs(u(Dt(Qt(t.p),0),35),t._,"instanceClassName",null,0,1,B1,!1,!0,!0,!0,!0,!1),e=mg(t.L),n=g3t(),Or((!e.d&&(e.d=new Ps(Do,e,1)),e.d),n),W1e(u(Dt(Qt(t.p),1),35),e,"instanceClass",B1,!0,!0,!1,!0),vs(u(Dt(Qt(t.p),2),35),t.M,eve,null,0,1,B1,!0,!0,!1,!1,!0,!0),vs(u(Dt(Qt(t.p),3),35),t._,"instanceTypeName",null,0,1,B1,!1,!0,!0,!0,!0,!1),Ui(u(Dt(Qt(t.p),4),19),t.U,u(Dt(Qt(t.U),3),19),"ePackage",0,1,B1,!0,!1,!1,!1,!0,!1,!1),Ui(u(Dt(Qt(t.p),5),19),t.db,null,nve,0,-1,B1,!1,!1,!0,!0,!0,!1,!1),d=Oo(u(Dt(Di(t.p),0),62),t.e,rve),qo(d,t.M,ZO),Oo(u(Dt(Di(t.p),1),62),t.I,"getClassifierID"),Ec(t.q,n0t,"EDataType",!1,!1,!0),vs(u(Dt(Qt(t.q),0),35),t.e,"serializable",uT,0,1,n0t,!1,!1,!0,!1,!0,!1),Ec(t.v,YK,"EEnum",!1,!1,!0),Ui(u(Dt(Qt(t.v),0),19),t.w,u(Dt(Qt(t.w),3),19),"eLiterals",0,-1,YK,!1,!1,!0,!0,!1,!1,!1),d=Oo(u(Dt(Di(t.v),0),62),t.w,ive),qo(d,t._,pi),d=Oo(u(Dt(Di(t.v),1),62),t.w,ive),qo(d,t.I,cA),d=Oo(u(Dt(Di(t.v),2),62),t.w,"getEEnumLiteralByLiteral"),qo(d,t._,"literal"),Ec(t.w,Vg,qme,!1,!1,!0),vs(u(Dt(Qt(t.w),0),35),t.I,cA,null,0,1,Vg,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.w),1),35),t.A,"instance",null,0,1,Vg,!0,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.w),2),35),t._,"literal",null,0,1,Vg,!1,!1,!0,!1,!0,!1),Ui(u(Dt(Qt(t.w),3),19),t.v,u(Dt(Qt(t.v),0),19),"eEnum",0,1,Vg,!0,!1,!1,!1,!1,!1,!1),Ec(t.B,EL,"EFactory",!1,!1,!0),Ui(u(Dt(Qt(t.B),0),19),t.U,u(Dt(Qt(t.U),2),19),"ePackage",1,1,EL,!0,!1,!0,!1,!1,!1,!1),d=Oo(u(Dt(Di(t.B),0),62),t.S,"create"),qo(d,t.o,"eClass"),d=Oo(u(Dt(Di(t.B),1),62),t.M,"createFromString"),qo(d,t.q,"eDataType"),qo(d,t._,"literalValue"),d=Oo(u(Dt(Di(t.B),2),62),t._,"convertToString"),qo(d,t.q,"eDataType"),qo(d,t.M,"instanceValue"),Ec(t.Q,HP,qwe,!0,!1,!0),Ui(u(Dt(Qt(t.Q),0),19),t.a,u(Dt(Qt(t.a),2),19),"eAnnotations",0,-1,HP,!1,!1,!0,!0,!1,!1,!1),d=Oo(u(Dt(Di(t.Q),0),62),t.a,"getEAnnotation"),qo(d,t._,Ult),Ec(t.R,Xdt,Hwe,!0,!1,!0),vs(u(Dt(Qt(t.R),0),35),t._,pi,null,0,1,Xdt,!1,!1,!0,!1,!0,!1),Ec(t.S,p2,"EObject",!1,!1,!0),Oo(u(Dt(Di(t.S),0),62),t.o,"eClass"),Oo(u(Dt(Di(t.S),1),62),t.e,"eIsProxy"),Oo(u(Dt(Di(t.S),2),62),t.X,"eResource"),Oo(u(Dt(Di(t.S),3),62),t.S,"eContainer"),Oo(u(Dt(Di(t.S),4),62),t.bb,"eContainingFeature"),Oo(u(Dt(Di(t.S),5),62),t.W,"eContainmentFeature"),d=Oo(u(Dt(Di(t.S),6),62),null,"eContents"),e=mg(t.fb),n=mg(t.S),Or((!e.d&&(e.d=new Ps(Do,e,1)),e.d),n),s=hd(d,e,null),s&&s.oj(),d=Oo(u(Dt(Di(t.S),7),62),null,"eAllContents"),e=mg(t.cb),n=mg(t.S),Or((!e.d&&(e.d=new Ps(Do,e,1)),e.d),n),o=hd(d,e,null),o&&o.oj(),d=Oo(u(Dt(Di(t.S),8),62),null,"eCrossReferences"),e=mg(t.fb),n=mg(t.S),Or((!e.d&&(e.d=new Ps(Do,e,1)),e.d),n),h=hd(d,e,null),h&&h.oj(),d=Oo(u(Dt(Di(t.S),9),62),t.M,"eGet"),qo(d,t.bb,bA),d=Oo(u(Dt(Di(t.S),10),62),t.M,"eGet"),qo(d,t.bb,bA),qo(d,t.e,"resolve"),d=Oo(u(Dt(Di(t.S),11),62),null,"eSet"),qo(d,t.bb,bA),qo(d,t.M,"newValue"),d=Oo(u(Dt(Di(t.S),12),62),t.e,"eIsSet"),qo(d,t.bb,bA),d=Oo(u(Dt(Di(t.S),13),62),null,"eUnset"),qo(d,t.bb,bA),d=Oo(u(Dt(Di(t.S),14),62),t.M,"eInvoke"),qo(d,t.T,HTt),e=mg(t.fb),n=g3t(),Or((!e.d&&(e.d=new Ps(Do,e,1)),e.d),n),jH(d,e,"arguments"),Iln(d,t.K),Ec(t.T,vf,Vme,!1,!1,!0),Ui(u(Dt(Qt(t.T),0),19),t.o,u(Dt(Qt(t.o),3),19),sve,0,1,vf,!0,!1,!1,!1,!1,!1,!1),Ui(u(Dt(Qt(t.T),1),19),t.db,null,nve,0,-1,vf,!1,!1,!0,!0,!0,!1,!1),Ui(u(Dt(Qt(t.T),2),19),t.V,u(Dt(Qt(t.V),0),19),"eParameters",0,-1,vf,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.T),3),19),t.p,null,"eExceptions",0,-1,vf,!1,!1,!0,!1,!0,!0,!1),Ui(u(Dt(Qt(t.T),4),19),t.H,null,"eGenericExceptions",0,-1,vf,!1,!1,!0,!0,!1,!0,!1),Oo(u(Dt(Di(t.T),0),62),t.I,tve),d=Oo(u(Dt(Di(t.T),1),62),t.e,"isOverrideOf"),qo(d,t.T,"someOperation"),Ec(t.U,F1,"EPackage",!1,!1,!0),vs(u(Dt(Qt(t.U),0),35),t._,"nsURI",null,0,1,F1,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.U),1),35),t._,"nsPrefix",null,0,1,F1,!1,!1,!0,!1,!0,!1),Ui(u(Dt(Qt(t.U),2),19),t.B,u(Dt(Qt(t.B),0),19),"eFactoryInstance",1,1,F1,!0,!1,!0,!1,!1,!1,!1),Ui(u(Dt(Qt(t.U),3),19),t.p,u(Dt(Qt(t.p),4),19),"eClassifiers",0,-1,F1,!1,!1,!0,!0,!0,!1,!1),Ui(u(Dt(Qt(t.U),4),19),t.U,u(Dt(Qt(t.U),5),19),"eSubpackages",0,-1,F1,!1,!1,!0,!0,!0,!1,!1),Ui(u(Dt(Qt(t.U),5),19),t.U,u(Dt(Qt(t.U),4),19),"eSuperPackage",0,1,F1,!0,!1,!1,!1,!0,!1,!1),d=Oo(u(Dt(Di(t.U),0),62),t.p,"getEClassifier"),qo(d,t._,pi),Ec(t.V,Ov,Ume,!1,!1,!0),Ui(u(Dt(Qt(t.V),0),19),t.T,u(Dt(Qt(t.T),2),19),"eOperation",0,1,Ov,!0,!1,!1,!1,!1,!1,!1),Ec(t.W,U3,Gme,!1,!1,!0),vs(u(Dt(Qt(t.W),0),35),t.e,"containment",null,0,1,U3,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.W),1),35),t.e,"container",null,0,1,U3,!0,!0,!1,!1,!0,!0),vs(u(Dt(Qt(t.W),2),35),t.e,"resolveProxies",uT,0,1,U3,!1,!1,!0,!1,!0,!1),Ui(u(Dt(Qt(t.W),3),19),t.W,null,"eOpposite",0,1,U3,!1,!1,!0,!1,!0,!1,!1),Ui(u(Dt(Qt(t.W),4),19),t.o,null,"eReferenceType",1,1,U3,!0,!0,!1,!1,!0,!1,!0),Ui(u(Dt(Qt(t.W),5),19),t.b,null,"eKeys",0,-1,U3,!1,!1,!0,!1,!0,!1,!1),Ec(t.bb,Wu,jme,!0,!1,!0),vs(u(Dt(Qt(t.bb),0),35),t.e,"changeable",uT,0,1,Wu,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.bb),1),35),t.e,"volatile",null,0,1,Wu,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.bb),2),35),t.e,"transient",null,0,1,Wu,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.bb),3),35),t._,"defaultValueLiteral",null,0,1,Wu,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.bb),4),35),t.M,eve,null,0,1,Wu,!0,!0,!1,!1,!0,!0),vs(u(Dt(Qt(t.bb),5),35),t.e,"unsettable",null,0,1,Wu,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.bb),6),35),t.e,"derived",null,0,1,Wu,!1,!1,!0,!1,!0,!1),Ui(u(Dt(Qt(t.bb),7),19),t.o,u(Dt(Qt(t.o),13),19),sve,0,1,Wu,!0,!1,!1,!1,!1,!1,!1),Oo(u(Dt(Di(t.bb),0),62),t.I,Zme),d=Oo(u(Dt(Di(t.bb),1),62),null,"getContainerClass"),e=mg(t.L),n=g3t(),Or((!e.d&&(e.d=new Ps(Do,e,1)),e.d),n),r=hd(d,e,null),r&&r.oj(),Ec(t.eb,H3,Rme,!0,!1,!0),vs(u(Dt(Qt(t.eb),0),35),t.e,"ordered",uT,0,1,H3,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.eb),1),35),t.e,"unique",uT,0,1,H3,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.eb),2),35),t.I,"lowerBound",null,0,1,H3,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.eb),3),35),t.I,"upperBound","1",0,1,H3,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.eb),4),35),t.e,"many",null,0,1,H3,!0,!0,!1,!1,!0,!0),vs(u(Dt(Qt(t.eb),5),35),t.e,"required",null,0,1,H3,!0,!0,!1,!1,!0,!0),Ui(u(Dt(Qt(t.eb),6),19),t.p,null,"eType",0,1,H3,!1,!0,!0,!1,!0,!0,!1),Ui(u(Dt(Qt(t.eb),7),19),t.H,null,"eGenericType",0,1,H3,!1,!0,!0,!0,!1,!0,!1),Ec(t.ab,Sw,"EStringToStringMapEntry",!1,!1,!1),vs(u(Dt(Qt(t.ab),0),35),t._,"key",null,0,1,Sw,!1,!1,!0,!1,!0,!1),vs(u(Dt(Qt(t.ab),1),35),t._,cA,null,0,1,Sw,!1,!1,!0,!1,!0,!1),Ec(t.H,Do,Hme,!1,!1,!0),Ui(u(Dt(Qt(t.H),0),19),t.H,null,"eUpperBound",0,1,Do,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.H),1),19),t.H,null,"eTypeArguments",0,-1,Do,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.H),2),19),t.p,null,"eRawType",1,1,Do,!0,!1,!1,!1,!0,!1,!0),Ui(u(Dt(Qt(t.H),3),19),t.H,null,"eLowerBound",0,1,Do,!1,!1,!0,!0,!1,!1,!1),Ui(u(Dt(Qt(t.H),4),19),t.db,null,"eTypeParameter",0,1,Do,!1,!1,!0,!1,!1,!1,!1),Ui(u(Dt(Qt(t.H),5),19),t.p,null,"eClassifier",0,1,Do,!1,!1,!0,!1,!0,!1,!1),d=Oo(u(Dt(Di(t.H),0),62),t.e,rve),qo(d,t.M,ZO),Ec(t.db,Nu,Kme,!1,!1,!0),Ui(u(Dt(Qt(t.db),0),19),t.H,null,"eBounds",0,-1,Nu,!1,!1,!0,!0,!1,!1,!1),fi(t.c,Mht,"EBigDecimal",!0),fi(t.d,N5,"EBigInteger",!0),fi(t.e,Fl,"EBoolean",!0),fi(t.f,ys,"EBooleanObject",!0),fi(t.i,ul,"EByte",!0),fi(t.g,ut(ul,1),"EByteArray",!0),fi(t.j,Fk,"EByteObject",!0),fi(t.k,Yh,"EChar",!0),fi(t.n,vA,"ECharacterObject",!0),fi(t.r,OU,"EDate",!0),fi(t.s,pOt,"EDiagnosticChain",!1),fi(t.t,ma,"EDouble",!0),fi(t.u,zs,"EDoubleObject",!0),fi(t.fb,DIt,"EEList",!1),fi(t.A,OIt,"EEnumerator",!1),fi(t.C,nOt,"EFeatureMap",!1),fi(t.D,XK,"EFeatureMapEntry",!1),fi(t.F,Y3,"EFloat",!0),fi(t.G,wT,"EFloatObject",!0),fi(t.I,Fr,"EInt",!0),fi(t.J,Ra,"EIntegerObject",!0),fi(t.L,t9t,"EJavaClass",!0),fi(t.M,aa,"EJavaObject",!0),fi(t.N,x2,"ELong",!0),fi(t.O,gv,"ELongObject",!0),fi(t.P,e9t,"EMap",!1),fi(t.X,JIt,"EResource",!1),fi(t.Y,bOt,"EResourceSet",!1),fi(t.Z,wx,"EShort",!0),fi(t.$,pv,"EShortObject",!0),fi(t._,Pe,"EString",!0),fi(t.cb,IIt,"ETreeIterator",!1),fi(t.K,wOt,"EInvocationTargetException",!1),g5t(t,hf))}var ZO="object",kk="boolean",u8t="number",Nct="string",Pct="function",xi=2147483647,Sc="java.lang",tN={3:1},eN="com.google.common.base",ao=", ",abe="%s (%s) must not be negative",Ln={3:1,4:1,5:1},obe="negative size: ",l8t="no calls to next() since the last call to remove()",cbe="Optional.of(",Vu="null",V7={204:1,51:1},on="com.google.common.collect",U7={204:1,51:1,128:1},pw={229:1,3:1},wa={51:1},xr="java.util",sv={85:1},o3={20:1,31:1,16:1},dd=2063,sl={20:1,31:1,16:1,21:1},h8t={85:1,139:1,133:1},ube={20:1,31:1,16:1,21:1,87:1},f8t={20:1,31:1,16:1,277:1,21:1,87:1},P0={51:1,128:1},Fct={358:1,44:1},lbe="AbstractMapEntry",hbe="expectedValuesPerKey",ue={3:1,6:1,4:1,5:1},Jd=16384,fh={159:1},ir={41:1},nN={202:1},rN={l:4194303,m:4194303,h:524287},Bct={253:1,3:1,34:1},fbe="range unbounded on this side",F0={20:1},dbe={20:1,16:1},d8t={3:1,20:1,31:1,16:1},G7={306:1,3:1,20:1,31:1,16:1,15:1,59:1},xV={3:1,4:1,5:1,173:1},K7={3:1,85:1},Rct={20:1,16:1,21:1},Ek={3:1,20:1,31:1,16:1,21:1},gbe={20:1,16:1,21:1,87:1},B0=461845907,R0=-862048943,iN={3:1,6:1,4:1,5:1,173:1},pbe="expectedSize",Uf=1024,z_=1073741824,c3="initialArraySize",te={3:1,6:1,4:1,9:1,5:1},W7={20:1,31:1,56:1,16:1,15:1},jct="arraySize",bbe={20:1,31:1,56:1,16:1,15:1,59:1},Kr={46:1},kV={380:1},Kb=1e-4,Ga=-2147483648,wbe="__noinit__",Pg={3:1,103:1,63:1,82:1},sN="com.google.gwt.core.client.impl",g8t="String",p8t="com.google.gwt.core.client",$ct="anonymous",zct="fnStack",b8t="Unknown",Zd={201:1,3:1,4:1},Rp=1e3,js=65535,qct="January",Hct="February",Vct="March",Uct="April",Tk="May",Gct="June",Kct="July",Wct="August",Yct="September",Xct="October",Qct="November",Jct="December",Wb=1900,ii={53:1,3:1,4:1},mbe="Before Christ",vbe="Anno Domini",Zct="Sunday",tut="Monday",eut="Tuesday",nut="Wednesday",rut="Thursday",iut="Friday",sut="Saturday",w8t="com.google.gwt.i18n.shared",ybe="DateTimeFormat",aut="com.google.gwt.i18n.client",xbe="DefaultDateTimeFormatInfo",kbe={3:1,4:1,34:1,206:1},Ck="com.google.gwt.json.client",Il=4194303,Fg=1048575,aN=524288,Sk=4194304,bw=17592186044416,EV=1e9,oN=-17592186044416,m8t="java.io",out={3:1,103:1,77:1,63:1,82:1},Ebe={3:1,295:1,82:1},av='For input string: "',Zi=1/0,Vs=-1/0,u3=4096,cut={3:1,4:1,376:1},Qn="org.eclipse.elk.layered",po=65536,cN=55296,No={109:1,3:1,4:1},uut=1e5,Tbe=.3010299956639812,So=4294967295,Y7="0.0",lut={44:1},X7="Unable to add element to queue",Cbe={3:1,4:1,20:1,31:1,56:1,13:1,16:1,15:1,59:1},Sbe={3:1,20:1,31:1,56:1,16:1,15:1,59:1},_be={20:1,16:1,15:1},hut={3:1,50:1},uN={189:1},E5={3:1,4:1,85:1},v8t={3:1,4:1,20:1,31:1,16:1,49:1,21:1},fut="delete",q_=14901161193847656e-24,H_=11102230246251565e-32,dut=15525485,lN=5960464477539063e-23,y8t=16777216,TV=16777215,x8t=", length: ",Abe={3:1,4:1,20:1,31:1,56:1,16:1,15:1,59:1},k8t="subMap: ",Lbe=" less than ",gut={3:1,34:1,22:1,303:1},put="java.util.function",V_="java.util.logging",Dbe={3:1,4:1,5:1,856:1},but="undefined",Us="java.util.stream",E8t={533:1,687:1},CV="fromIndex: ",Mbe=" > toIndex: ",T8t=", toIndex: ",C8t="Index: ",S8t=", Size: ",Q7="org.eclipse.elk.alg.common",Xr={50:1},Ibe="org.eclipse.elk.alg.common.compaction",Obe="Scanline/EventHandler",j0="org.eclipse.elk.alg.common.compaction.oned",Nbe="CNode belongs to another CGroup.",Pbe="ISpacingsHandler/1",wut="The ",mut=" instance has been finished already.",Fbe="The direction ",Bbe=" is not supported by the CGraph instance.",Rbe="OneDimensionalCompactor",jbe="OneDimensionalCompactor/lambda$0$Type",$be="Quadruplet",zbe="ScanlineConstraintCalculator",qbe="ScanlineConstraintCalculator/ConstraintsScanlineHandler",Hbe="ScanlineConstraintCalculator/ConstraintsScanlineHandler/lambda$0$Type",Vbe="ScanlineConstraintCalculator/Timestamp",Ube="ScanlineConstraintCalculator/lambda$0$Type",t0={178:1,46:1},vut="org.eclipse.elk.alg.common.compaction.options",pc="org.eclipse.elk.core.data",_8t="org.eclipse.elk.polyomino.traversalStrategy",A8t="org.eclipse.elk.polyomino.lowLevelSort",L8t="org.eclipse.elk.polyomino.highLevelSort",D8t="org.eclipse.elk.polyomino.fill",uf={134:1},yut="polyomino",U_="org.eclipse.elk.alg.common.networksimplex",$0={183:1,3:1,4:1},Gbe="org.eclipse.elk.alg.common.nodespacing",ww="org.eclipse.elk.alg.common.nodespacing.cellsystem",J7="CENTER",Kbe={217:1,336:1},M8t={3:1,4:1,5:1,603:1},_k="LEFT",Ak="RIGHT",I8t="Vertical alignment cannot be null",O8t="BOTTOM",SV="org.eclipse.elk.alg.common.nodespacing.internal",G_="UNDEFINED",gd=.01,hN="org.eclipse.elk.alg.common.nodespacing.internal.algorithm",Wbe="LabelPlacer/lambda$0$Type",Ybe="LabelPlacer/lambda$1$Type",Xbe="portRatioOrPosition",Z7="org.eclipse.elk.alg.common.overlaps",xut="DOWN",e0="org.eclipse.elk.alg.common.polyomino",_V="NORTH",kut="EAST",Eut="SOUTH",Tut="WEST",AV="org.eclipse.elk.alg.common.polyomino.structures",N8t="Direction",Cut="Grid is only of size ",Sut=". Requested point (",_ut=") is out of bounds.",LV=" Given center based coordinates were (",fN="org.eclipse.elk.graph.properties",Qbe="IPropertyHolder",P8t={3:1,96:1,137:1},Lk="org.eclipse.elk.alg.common.spore",Jbe="org.eclipse.elk.alg.common.utils",mw={205:1},T5="org.eclipse.elk.core",Zbe="Connected Components Compaction",t2e="org.eclipse.elk.alg.disco",DV="org.eclipse.elk.alg.disco.graph",Aut="org.eclipse.elk.alg.disco.options",F8t="CompactionStrategy",B8t="org.eclipse.elk.disco.componentCompaction.strategy",R8t="org.eclipse.elk.disco.componentCompaction.componentLayoutAlgorithm",j8t="org.eclipse.elk.disco.debug.discoGraph",$8t="org.eclipse.elk.disco.debug.discoPolys",e2e="componentCompaction",vw="org.eclipse.elk.disco",Lut="org.eclipse.elk.spacing.componentComponent",Dut="org.eclipse.elk.edge.thickness",Dk="org.eclipse.elk.aspectRatio",ov="org.eclipse.elk.padding",C5="org.eclipse.elk.alg.disco.transform",Mut=1.5707963267948966,S5=17976931348623157e292,l3={3:1,4:1,5:1,198:1},n2e={3:1,6:1,4:1,5:1,100:1,115:1},Iut="org.eclipse.elk.alg.force",z8t="ComponentsProcessor",r2e="ComponentsProcessor/1",q8t="ElkGraphImporter/lambda$0$Type",dN="org.eclipse.elk.alg.force.graph",i2e="Component Layout",H8t="org.eclipse.elk.alg.force.model",MV="org.eclipse.elk.force.model",V8t="org.eclipse.elk.force.iterations",U8t="org.eclipse.elk.force.repulsivePower",Out="org.eclipse.elk.force.temperature",n0=.001,Nut="org.eclipse.elk.force.repulsion",K_="org.eclipse.elk.alg.force.options",tT=1.600000023841858,Du="org.eclipse.elk.force",gN="org.eclipse.elk.priority",h3="org.eclipse.elk.spacing.nodeNode",Put="org.eclipse.elk.spacing.edgeLabel",IV="org.eclipse.elk.randomSeed",W_="org.eclipse.elk.separateConnectedComponents",Y_="org.eclipse.elk.interactive",Fut="org.eclipse.elk.portConstraints",OV="org.eclipse.elk.edgeLabels.inline",X_="org.eclipse.elk.omitNodeMicroLayout",eT="org.eclipse.elk.nodeSize.fixedGraphSize",Mk="org.eclipse.elk.nodeSize.options",_5="org.eclipse.elk.nodeSize.constraints",nT="org.eclipse.elk.nodeLabels.placement",rT="org.eclipse.elk.portLabels.placement",pN="org.eclipse.elk.topdownLayout",bN="org.eclipse.elk.topdown.scaleFactor",wN="org.eclipse.elk.topdown.hierarchicalNodeWidth",mN="org.eclipse.elk.topdown.hierarchicalNodeAspectRatio",cv="org.eclipse.elk.topdown.nodeType",G8t="origin",s2e="random",a2e="boundingBox.upLeft",o2e="boundingBox.lowRight",K8t="org.eclipse.elk.stress.fixed",W8t="org.eclipse.elk.stress.desiredEdgeLength",Y8t="org.eclipse.elk.stress.dimension",X8t="org.eclipse.elk.stress.epsilon",Q8t="org.eclipse.elk.stress.iterationLimit",Yb="org.eclipse.elk.stress",c2e="ELK Stress",Ik="org.eclipse.elk.nodeSize.minimum",NV="org.eclipse.elk.alg.force.stress",u2e="Layered layout",Ok="org.eclipse.elk.alg.layered",vN="org.eclipse.elk.alg.layered.compaction.components",Q_="org.eclipse.elk.alg.layered.compaction.oned",PV="org.eclipse.elk.alg.layered.compaction.oned.algs",yw="org.eclipse.elk.alg.layered.compaction.recthull",pd="org.eclipse.elk.alg.layered.components",r0="NONE",J8t="MODEL_ORDER",qc={3:1,6:1,4:1,9:1,5:1,126:1},l2e={3:1,6:1,4:1,5:1,150:1,100:1,115:1},FV="org.eclipse.elk.alg.layered.compound",zi={47:1},au="org.eclipse.elk.alg.layered.graph",But=" -> ",h2e="Not supported by LGraph",Z8t="Port side is undefined",Rut={3:1,6:1,4:1,5:1,482:1,150:1,100:1,115:1},jp={3:1,6:1,4:1,5:1,150:1,199:1,210:1,100:1,115:1},f2e={3:1,6:1,4:1,5:1,150:1,2042:1,210:1,100:1,115:1},d2e=`([{"' \r