PageSourceSearch

https://blocksandarrows.com/_next/static/chunks/8147.8c59b0ee143f0531.js

js blocksandarrows.com collected 2026-10-05 11:43:53 UTC 37,801 bytes, 5 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8147],{7482:(t,e,r)=>{r.d(e,{a:()=>o,c:()=>s});var a=r(35741),i=r(28649),n=r(33512);function l(t,e,r){return t.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",e*r-.1+"em").attr("dy",r+"em")}function s(t,e,r){var a;let i=t.append("text"),n=l(i,1,e);d(n,[{content:r,type:"normal"}]);let s=null==(a=n.node())?void 0:a.getBoundingClientRect();return s&&i.remove(),s}function d(t,e){t.text(""),e.forEach((e,r)=>{let a=t.append("tspan").attr("font-style","emphasis"===e.type?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight","strong"===e.type?"bold":"normal");0===r?a.text(e.content):a.text(" "+e.content)})}let o=(t,e="",{style:r="",isTitle:s=!1,classes:o="",useHtmlLabels:h=!0,isNode:c=!0,width:p=200,addSvgBackground:y=!1}={})=>{if(a.l.info("createText",e,r,s,o,h,c,y),!h)return function(t,e,r,a=!1){let i=e.append("g"),n=i.insert("rect").attr("class","background"),s=i.append("text").attr("y","-10.1"),o=0;for(let e of r){let r=e=>(function(t,e,r){let a=t.append("text"),i=l(a,1,1.1);d(i,r);let n=i.node().getComputedTextLength();return a.remove(),n})(i,0,e)<=t;for(let t of r(e)?[e]:function(t,e){if(t.some(({content:t})=>t.includes("\n")))throw Error("splitLineToFitWidth does not support newlines in the line");return function t(e,r,a=[],i=[]){if(0===e.length)return i.length>0&&a.push(i),a.length>0?a:[];let n="";" "===e[0].content&&(n=" ",e.shift());let l=e.shift()??{content:" ",type:"normal"},s=[...i];if(""!==n&&s.push({content:n,type:"normal"}),s.push(l),r(s))return t(e,r,a,s);if(i.length>0)a.push(i),e.unshift(l);else if(l.content){var d;let[t,i]=function t(e,r,a,i){if(0===a.length)return[{content:r.join(""),type:i},{content:"",type:i}];let[n,...l]=a,s=[...r,n];return e([{content:s.join(""),type:i}])?t(e,s,l,i):(0===r.length&&n&&(r.push(n),a.shift()),[{content:r.join(""),type:i},{content:a.join(""),type:i}])}(r,[],(d=l.content,Intl.Segmenter?[...new Intl.Segmenter().segment(d)].map(t=>t.segment):[...d]),l.type);a.push([t]),i.content&&e.unshift(i)}return t(e,r,a)}(t,e)}(e,r))d(l(s,o,1.1),t),o++}if(!a)return s.node();{let t=s.node().getBBox();return n.attr("x",-2).attr("y",-2).attr("width",t.width+4).attr("height",t.height+4),i.node()}}(p,t,function(t){let e=function(t){let e=t.replace(/\n{2,}/g,"\n");return(0,n.T)(e)}(t),{children:r}=(0,i.Y)(e),a=[[]],l=0;return r.forEach(t=>{"paragraph"===t.type&&t.children.forEach(t=>{!function t(e,r="normal"){"text"===e.type?e.value.split("\n").forEach((t,e)=>{0!==e&&(l++,a.push([])),t.split(" ").forEach(t=>{t&&a[l].push({content:t,type:r})})}):("strong"===e.type||"emphasis"===e.type)&&e.children.forEach(r=>{t(r,e.type)})}(t)})}),a}(e),y);{let n=function(t){let{children:e}=(0,i.Y)(t);return e.map(function t(e){return"text"===e.type?e.value.replace(/\n/g,"<br/>"):"strong"===e.type?`<strong>${e.children.map(t).join("")}</strong>`:"emphasis"===e.type?`<em>${e.children.map(t).join("")}</em>`:"paragraph"===e.type?`<p>${e.children.map(t).join("")}</p>`:`Unsupported markdown: ${e.type}`}).join("")}(e);return function(t,e,r,i,n=!1){var l;let s=t.append("foreignObject"),d=s.append("xhtml:div"),o=e.label,h=e.isNode?"nodeLabel":"edgeLabel";d.html((0,a.d)(`
2    <span class="${h} ${i}" `+(e.labelStyle?'style="'+e.labelStyle+'"':"")+">"+o+"</span>",(0,a.F)())),(l=e.labelStyle)&&d.attr("style",l),d.style("display","table-cell"),d.style("white-space","nowrap"),d.style("max-width",r+"px"),d.attr("xmlns","http://www.w3.org/1999/xhtml"),n&&d.attr("class","labelBkg");let c=d.node().getBoundingClientRect();return c.width===r&&(d.style("display","table"),d.style("white-space","break-spaces"),d.style("width",r+"px"),c=d.node().getBoundingClientRect()),s.style("width",c.width),s.style("height",c.height),s.node()}(t,{isNode:c,label:(0,a.M)(n).replace(/fa[blrs]?:fa-[\w-]+/g,t=>`<i class='${t.replace(":"," ")}'></i>`),labelStyle:r.replace("fill:","color:")},p,o,y)}}},68147:(t,e,r)=>{r.d(e,{a:()=>s,b:()=>M,c:()=>d,d:()=>W,e:()=>v,f:()=>Y,g:()=>B,h:()=>A,i:()=>p,j:()=>D,k:()=>$,l:()=>o,m:()=>j,p:()=>T,s:()=>S,u:()=>h});var a=r(35741),i=r(28541),n=r(7482);let l={extension:(t,e,r)=>{a.l.trace("Making markers for ",r),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionStart").attr("class","marker extension "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionEnd").attr("class","marker extension "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},composition:(t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionStart").attr("class","marker composition "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionEnd").attr("class","marker composition "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},aggregation:(t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationStart").attr("class","marker aggregation "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationEnd").attr("class","marker aggregation "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},dependency:(t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyStart").attr("class","marker dependency "+e).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyEnd").attr("class","marker dependency "+e).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},lollipop:(t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopStart").attr("class","marker lollipop "+e).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopEnd").attr("class","marker lollipop "+e).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},point:(t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-pointEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-pointStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},circle:(t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-circleEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-circleStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},cross:(t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-crossEnd").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-crossStart").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},barb:(t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")}},s=(t,e,r,a)=>
2{e.forEach(e=>{l[e](t,r,a)})},d=(t,e,r,n)=>{let l=t||"";"object"==typeof l&&(l=l[0]);let s=(0,a.c)();if((0,a.m)(s.flowchart.htmlLabels))return l=l.replace(/\\n|\n/g,"<br />"),a.l.debug("vertexText"+l),function(t,e){var r;let n=(0,i.Ltv)(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),l=n.append("xhtml:div"),s=t.label,d=t.isNode?"nodeLabel":"edgeLabel";return l.html((0,a.d)('<span class="'+d+'" '+(t.labelStyle?'style="'+t.labelStyle+'"':"")+">"+s+"</span>",e)),(r=t.labelStyle)&&l.attr("style",r),l.style("display","inline-block"),l.style("white-space","nowrap"),l.attr("xmlns","http://www.w3.org/1999/xhtml"),n.node()}({isNode:n,label:(0,a.M)(l).replace(/fa[blrs]?:fa-[\w-]+/g,t=>`<i class='${t.replace(":"," ")}'></i>`),labelStyle:e.replace("fill:","color:")},s);{let t=document.createElementNS("http://www.w3.org/2000/svg","text");t.setAttribute("style",e.replace("color:","fill:"));let a=[];for(let e of"string"==typeof l?l.split(/\\n|\n|<br\s*\/?>/gi):Array.isArray(l)?l:[]){let a=document.createElementNS("http://www.w3.org/2000/svg","tspan");a.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),a.setAttribute("dy","1em"),a.setAttribute("x","0"),r?a.setAttribute("class","title-row"):a.setAttribute("class","row"),a.textContent=e.trim(),t.appendChild(a)}return t}},o=async(t,e,r,l)=>{let s,o,h=e.useHtmlLabels||(0,a.m)((0,a.c)().flowchart.htmlLabels),c=t.insert("g").attr("class",r||"node default").attr("id",e.domId||e.id),p=c.insert("g").attr("class","label").attr("style",e.labelStyle);s=void 0===e.labelText?"":"string"==typeof e.labelText?e.labelText:e.labelText[0];let y=p.node(),g=(o="markdown"===e.labelType?(0,n.a)(p,(0,a.d)((0,a.M)(s),(0,a.c)()),{useHtmlLabels:h,width:e.width||(0,a.c)().flowchart.wrappingWidth,classes:"markdown-node-label"}):y.appendChild(d((0,a.d)((0,a.M)(s),(0,a.c)()),e.labelStyle,!1,l))).getBBox(),x=e.padding/2;if((0,a.m)((0,a.c)().flowchart.htmlLabels)){let t=o.children[0],e=(0,i.Ltv)(o),r=t.getElementsByTagName("img");if(r){let t=""===s.replace(/<img[^>]*>/g,"").trim();await Promise.all([...r].map(e=>new Promise(r=>{function i(){if(e.style.display="flex",e.style.flexDirection="column",t){let t=5*parseInt((0,a.c)().fontSize?(0,a.c)().fontSize:window.getComputedStyle(document.body).fontSize,10)+"px";e.style.minWidth=t,e.style.maxWidth=t}else e.style.width="100%";r(e)}setTimeout(()=>{e.complete&&i()}),e.addEventListener("error",i),e.addEventListener("load",i)})))}g=t.getBoundingClientRect(),e.attr("width",g.width),e.attr("height",g.height)}return h?p.attr("transform","translate("+-g.width/2+", "+-g.height/2+")"):p.attr("transform","translate(0, "+-g.height/2+")"),e.centerLabel&&p.attr("transform","translate("+-g.width/2+", "+-g.height/2+")"),p.insert("rect",":first-child"),{shapeSvg:c,bbox:g,halfPadding:x,label:p}},h=(t,e)=>{let r=e.node().getBBox();t.width=r.width,t.height=r.height};function c(t,e,r,a){return t.insert("polygon",":first-child").attr("points",a.map(function(t){return t.x+","+t.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+r/2+")")}let p=(t,e)=>{var r,a,i=t.x,n=t.y,l=e.x-i,s=e.y-n,d=t.width/2,o=t.height/2;return Math.abs(s)*d>Math.abs(l)*o?(s<0&&(o=-o),r=0===s?0:o*l/s,a=o):(l<0&&(d=-d),r=d,a=0===l?0:d*s/l),{x:i+r,y:n+a}},y={circle:function(t,e,r){var a,i,n,l,s,d,o,h,c,p,y;return a=t,i=e,n=e,l=r,s=a.x,d=a.y,o=s-l.x,c=Math.sqrt(i*i*(h=d-l.y)*h+n*n*o*o),p=Math.abs(i*n*o/c),l.x<s&&(p=-p),y=Math.abs(i*n*h/c),l.y<d&&(y=-y),{x:s+p,y:d+y}},polygon:function(t,e,r){var a=t.x,i=t.y,n=[],l=Number.POSITIVE_INFINITY,s=Number.POSITIVE_INFINITY;"function"==typeof e.forEach?e.forEach(function(t){l=Math.min(l,t.x),s=Math.min(s,t.y)}):(l=Math.min(l,e.x),s=Math.min(s,e.y));for(var d=a-t.width/2-l,o=i-t.height/2-s,h=0;h<e.length;h++){var c=e[h],p=e[h<e.length-1?h+1:0],y=function(t,e,r,a){var i,n,l,s,d,o,h,c,p,y,g,x,f;if(i=e.y-t.y,l=t.x-e.x,d=e.x*t.y-t.x*e.y,p=i*r.x+l*r.y+d,y=i*a.x+l*a.y+d,0===p||0===y||!(p*y>0)){if(n=a.y-r.y,s=r.x-a.x,o=a.x*r.y-r.x*a.y,h=n*t.x+s*t.y+o,c=n*e.x+s*e.y+o,!(0!==h&&0!==c&&h*c>0)&&0!=(g=i*s-n*l))return x=Math.abs(g/2),{x:(f=l*o-s*d)<0?(f-x)/g:(f+x)
2/g,y:(f=n*d-i*o)<0?(f-x)/g:(f+x)/g}}}(t,r,{x:d+c.x,y:o+c.y},{x:d+p.x,y:o+p.y});y&&n.push(y)}return n.length?(n.length>1&&n.sort(function(t,e){var a=t.x-r.x,i=t.y-r.y,n=Math.sqrt(a*a+i*i),l=e.x-r.x,s=e.y-r.y,d=Math.sqrt(l*l+s*s);return n<d?-1:+(n!==d)}),n[0]):t},rect:p},g=t=>{let e=new Set;for(let r of t)switch(r){case"x":e.add("right"),e.add("left");break;case"y":e.add("up"),e.add("down");break;default:e.add(r)}return e},x=(t,e,r)=>{let a=g(t),i=e.height+2*r.padding,n=i/2,l=e.width+2*n+r.padding,s=r.padding/2;return a.has("right")&&a.has("left")&&a.has("up")&&a.has("down")?[{x:0,y:0},{x:n,y:0},{x:l/2,y:2*s},{x:l-n,y:0},{x:l,y:0},{x:l,y:-i/3},{x:l+2*s,y:-i/2},{x:l,y:-2*i/3},{x:l,y:-i},{x:l-n,y:-i},{x:l/2,y:-i-2*s},{x:n,y:-i},{x:0,y:-i},{x:0,y:-2*i/3},{x:-2*s,y:-i/2},{x:0,y:-i/3}]:a.has("right")&&a.has("left")&&a.has("up")?[{x:n,y:0},{x:l-n,y:0},{x:l,y:-i/2},{x:l-n,y:-i},{x:n,y:-i},{x:0,y:-i/2}]:a.has("right")&&a.has("left")&&a.has("down")?[{x:0,y:0},{x:n,y:-i},{x:l-n,y:-i},{x:l,y:0}]:a.has("right")&&a.has("up")&&a.has("down")?[{x:0,y:0},{x:l,y:-n},{x:l,y:-i+n},{x:0,y:-i}]:a.has("left")&&a.has("up")&&a.has("down")?[{x:l,y:0},{x:0,y:-n},{x:0,y:-i+n},{x:l,y:-i}]:a.has("right")&&a.has("left")?[{x:n,y:0},{x:n,y:-s},{x:l-n,y:-s},{x:l-n,y:0},{x:l,y:-i/2},{x:l-n,y:-i},{x:l-n,y:-i+s},{x:n,y:-i+s},{x:n,y:-i},{x:0,y:-i/2}]:a.has("up")&&a.has("down")?[{x:l/2,y:0},{x:0,y:-s},{x:n,y:-s},{x:n,y:-i+s},{x:0,y:-i+s},{x:l/2,y:-i},{x:l,y:-i+s},{x:l-n,y:-i+s},{x:l-n,y:-s},{x:l,y:-s}]:a.has("right")&&a.has("up")?[{x:0,y:0},{x:l,y:-n},{x:0,y:-i}]:a.has("right")&&a.has("down")?[{x:0,y:0},{x:l,y:0},{x:0,y:-i}]:a.has("left")&&a.has("up")?[{x:l,y:0},{x:0,y:-n},{x:l,y:-i}]:a.has("left")&&a.has("down")?[{x:l,y:0},{x:0,y:0},{x:l,y:-i}]:a.has("right")?[{x:n,y:-s},{x:n,y:-s},{x:l-n,y:-s},{x:l-n,y:0},{x:l,y:-i/2},{x:l-n,y:-i},{x:l-n,y:-i+s},{x:n,y:-i+s},{x:n,y:-i+s}]:a.has("left")?[{x:n,y:0},{x:n,y:-s},{x:l-n,y:-s},{x:l-n,y:-i+s},{x:n,y:-i+s},{x:n,y:-i},{x:0,y:-i/2}]:a.has("up")?[{x:n,y:-s},{x:n,y:-i+s},{x:0,y:-i+s},{x:l/2,y:-i},{x:l,y:-i+s},{x:l-n,y:-i+s},{x:l-n,y:-s}]:a.has("down")?[{x:l/2,y:0},{x:0,y:-s},{x:n,y:-s},{x:n,y:-i+s},{x:l-n,y:-i+s},{x:l-n,y:-s},{x:l,y:-s}]:[{x:0,y:0}]},f=t=>t?" "+t:"",u=(t,e)=>`${e||"node default"}${f(t.classes)} ${f(t.class)}`,w=async(t,e)=>{let{shapeSvg:r,bbox:i}=await o(t,e,u(e,void 0),!0),n=i.width+e.padding+(i.height+e.padding),l=[{x:n/2,y:0},{x:n,y:-n/2},{x:n/2,y:-n},{x:0,y:-n/2}];a.l.info("Question main (Circle)");let s=c(r,n,n,l);return s.attr("style",e.style),h(e,s),e.intersect=function(t){return a.l.warn("Intersect called"),y.polygon(e,l,t)},r};function m(t,e,r,i){let n=[],l=t=>{n.push(t,0)},s=t=>{n.push(0,t)};e.includes("t")?(a.l.debug("add top border"),l(r)):s(r),e.includes("r")?(a.l.debug("add right border"),l(i)):s(i),e.includes("b")?(a.l.debug("add bottom border"),l(r)):s(r),e.includes("l")?(a.l.debug("add left border"),l(i)):s(i),t.attr("stroke-dasharray",n.join(" "))}let b=(t,e,r)=>{let a=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),i=70,n=10;return"LR"===r&&(i=10,n=70),h(e,a.append("rect").attr("x",-1*i/2).attr("y",-1*n/2).attr("width",i).attr("height",n).attr("class","fork-join")),e.height=e.height+e.padding/2,e.width=e.width+e.padding/2,e.intersect=function(t){return y.rect(e,t)},a},k={rhombus:w,composite:async(t,e)=>{let{shapeSvg:r,bbox:i,halfPadding:n}=await o(t,e,"node "+e.classes,!0),l=r.insert("rect",":first-child"),s=e.positioned?e.width:i.width+e.padding,d=e.positioned?e.height:i.height+e.padding,c=e.positioned?-s/2:-i.width/2-n,p=e.positioned?-d/2:-i.height/2-n;if(l.attr("class","basic cluster composite label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",c).attr("y",p).attr("width",s).attr("height",d),e.props){let t=new Set(Object.keys(e.props));e.props.borders&&(m(l,e.props.borders,s,d),t.delete("borders")),t.forEach(t=>{a.l.warn(`Unknown node property ${t}`)})}return h(e,l),e.intersect=function(t){return y.rect(e,t)},r},question:w,rect:async(t,e)=>{let{shapeSvg:r,bbox:i,halfPadding:n}=await o(t,e,"node "+e.classes+" "+e.class,!0),l=r.insert("rect",":first-child"),s=e.positioned?e.width:i.width+e.padding,d=e.positioned?e.height:i.height+e.padding,c=e.positioned?-s/2:-i.width/2-n,p=e.positioned?-d/2:-i.height/2-n;if(l.attr("class","basic label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",c).attr("y",p).attr("width",s).attr("height",d),e.props){let t=new Set(Object.keys(e.props));e.props.borders&&(m(l,e.props.borders,s,d),t.delete("borders")),t.forEach(t=>{a.l.warn(`Unknown node property ${t}`)})}return h(e,l),e.intersect=function(t){return y.rect(e,t)},r},labelRect:async(t,e)=>{let{shapeSvg:r}=await o(t,e,"label",!0);a.l.trace("Classes = ",e.class);let i=r.insert("rect",":first-child");if(i.attr("width",0).attr("height",0),r.attr("class","label edgeLabel"),e.props){let t=new Set(Object.keys(e.props));e.props.borders&&(m(i,e.props.borders,0,0),t.delete("borders")),t.forEach(t=>{a.l.warn(`Unknown node property ${t}`)})}return h(e,i),e.intersect=function(t){return y.rect(e,t)},r},rectWithTitle:(t,e)=>{let r;r=e.classes?"node "+e.classes:"node default";let n=t.insert("g").attr("class",r).attr("id",e.domId||e.id),l=n.insert("rect",":first-child"),s=n.insert("line"),o=n.insert("g").attr("class","label"),c=e.labelText.flat?e.labelText.flat():e.labelText,p="";p="object"==typeof c?c[0]:c,a.l.info("Label text abc79",p,c,"object"==typeof c);let g=o.node().appendChild(d(p,e.labelStyle,!0,!0)),x={width:0,height:0};
2if((0,a.m)((0,a.c)().flowchart.htmlLabels)){let t=g.children[0],e=(0,i.Ltv)(g);x=t.getBoundingClientRect(),e.attr("width",x.width),e.attr("height",x.height)}a.l.info("Text 2",c);let f=c.slice(1,c.length),u=g.getBBox(),w=o.node().appendChild(d(f.join?f.join("<br/>"):f,e.labelStyle,!0,!0));if((0,a.m)((0,a.c)().flowchart.htmlLabels)){let t=w.children[0],e=(0,i.Ltv)(w);x=t.getBoundingClientRect(),e.attr("width",x.width),e.attr("height",x.height)}let m=e.padding/2;return(0,i.Ltv)(w).attr("transform","translate( "+(x.width>u.width?0:(u.width-x.width)/2)+", "+(u.height+m+5)+")"),(0,i.Ltv)(g).attr("transform","translate( "+(x.width<u.width?0:-(u.width-x.width)/2)+", 0)"),x=o.node().getBBox(),o.attr("transform","translate("+-x.width/2+", "+(-x.height/2-m+3)+")"),l.attr("class","outer title-state").attr("x",-x.width/2-m).attr("y",-x.height/2-m).attr("width",x.width+e.padding).attr("height",x.height+e.padding),s.attr("class","divider").attr("x1",-x.width/2-m).attr("x2",x.width/2+m).attr("y1",-x.height/2-m+u.height+m).attr("y2",-x.height/2-m+u.height+m),h(e,l),e.intersect=function(t){return y.rect(e,t)},n},choice:(t,e)=>{let r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id);return r.insert("polygon",":first-child").attr("points",[{x:0,y:14},{x:14,y:0},{x:0,y:-14},{x:-14,y:0}].map(function(t){return t.x+","+t.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),e.width=28,e.height=28,e.intersect=function(t){return y.circle(e,14,t)},r},circle:async(t,e)=>{let{shapeSvg:r,bbox:i,halfPadding:n}=await o(t,e,u(e,void 0),!0),l=r.insert("circle",":first-child");return l.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",i.width/2+n).attr("width",i.width+e.padding).attr("height",i.height+e.padding),a.l.info("Circle main"),h(e,l),e.intersect=function(t){return a.l.info("Circle intersect",e,i.width/2+n,t),y.circle(e,i.width/2+n,t)},r},doublecircle:async(t,e)=>{let{shapeSvg:r,bbox:i,halfPadding:n}=await o(t,e,u(e,void 0),!0),l=r.insert("g",":first-child"),s=l.insert("circle"),d=l.insert("circle");return l.attr("class",e.class),s.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",i.width/2+n+5).attr("width",i.width+e.padding+10).attr("height",i.height+e.padding+10),d.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",i.width/2+n).attr("width",i.width+e.padding).attr("height",i.height+e.padding),a.l.info("DoubleCircle main"),h(e,s),e.intersect=function(t){return a.l.info("DoubleCircle intersect",e,i.width/2+n+5,t),y.circle(e,i.width/2+n+5,t)},r},stadium:async(t,e)=>{let{shapeSvg:r,bbox:a}=await o(t,e,u(e,void 0),!0),i=a.height+e.padding,n=a.width+i/4+e.padding,l=r.insert("rect",":first-child").attr("style",e.style).attr("rx",i/2).attr("ry",i/2).attr("x",-n/2).attr("y",-i/2).attr("width",n).attr("height",i);return h(e,l),e.intersect=function(t){return y.rect(e,t)},r},hexagon:async(t,e)=>{let{shapeSvg:r,bbox:a}=await o(t,e,u(e,void 0),!0),i=a.height+e.padding,n=i/4,l=a.width+2*n+e.padding,s=[{x:n,y:0},{x:l-n,y:0},{x:l,y:-i/2},{x:l-n,y:-i},{x:n,y:-i},{x:0,y:-i/2}],d=c(r,l,i,s);return d.attr("style",e.style),h(e,d),e.intersect=function(t){return y.polygon(e,s,t)},r},block_arrow:async(t,e)=>{let{shapeSvg:r,bbox:a}=await o(t,e,void 0,!0),i=a.height+2*e.padding,n=i/2,l=a.width+2*n+e.padding,s=x(e.directions,a,e),d=c(r,l,i,s);return d.attr("style",e.style),h(e,d),e.intersect=function(t){return y.polygon(e,s,t)},r},rect_left_inv_arrow:async(t,e)=>{let{shapeSvg:r,bbox:a}=await o(t,e,u(e,void 0),!0),i=a.width+e.padding,n=a.height+e.padding,l=[{x:-n/2,y:0},{x:i,y:0},{x:i,y:-n},{x:-n/2,y:-n},{x:0,y:-n/2}];return c(r,i,n,l).attr("style",e.style),e.width=i+n,e.height=n,e.intersect=function(t){return y.polygon(e,l,t)},r},lean_right:async(t,e)=>{let{shapeSvg:r,bbox:a}=await o(t,e,u(e),!0),i=a.width+e.padding,n=a.height+e.padding,l=[{x:-2*n/6,y:0},{x:i-n/6,y:0},{x:i+2*n/6,y:-n},{x:n/6,y:-n}],s=c(r,i,n,l);return s.attr("style",e.style),h(e,s),e.intersect=function(t){return y.polygon(e,l,t)},r},lean_left:async(t,e)=>{let{shapeSvg:r,bbox:a}=await o(t,e,u(e,void 0),!0),i=a.width+e.padding,n=a.height+e.padding,l=[{x:2*n/6,y:0},{x:i+n/6,y:0},{x:i-2*n/6,y:-n},{x:-n/6,y:-n}],s=c(r,i,n,l);return s.attr("style",e.style),h(e,s),e.intersect=function(t){return y.pol
2ygon(e,l,t)},r},trapezoid:async(t,e)=>{let{shapeSvg:r,bbox:a}=await o(t,e,u(e,void 0),!0),i=a.width+e.padding,n=a.height+e.padding,l=[{x:-2*n/6,y:0},{x:i+2*n/6,y:0},{x:i-n/6,y:-n},{x:n/6,y:-n}],s=c(r,i,n,l);return s.attr("style",e.style),h(e,s),e.intersect=function(t){return y.polygon(e,l,t)},r},inv_trapezoid:async(t,e)=>{let{shapeSvg:r,bbox:a}=await o(t,e,u(e,void 0),!0),i=a.width+e.padding,n=a.height+e.padding,l=[{x:n/6,y:0},{x:i-n/6,y:0},{x:i+2*n/6,y:-n},{x:-2*n/6,y:-n}],s=c(r,i,n,l);return s.attr("style",e.style),h(e,s),e.intersect=function(t){return y.polygon(e,l,t)},r},rect_right_inv_arrow:async(t,e)=>{let{shapeSvg:r,bbox:a}=await o(t,e,u(e,void 0),!0),i=a.width+e.padding,n=a.height+e.padding,l=[{x:0,y:0},{x:i+n/2,y:0},{x:i,y:-n/2},{x:i+n/2,y:-n},{x:0,y:-n}],s=c(r,i,n,l);return s.attr("style",e.style),h(e,s),e.intersect=function(t){return y.polygon(e,l,t)},r},cylinder:async(t,e)=>{let{shapeSvg:r,bbox:a}=await o(t,e,u(e,void 0),!0),i=a.width+e.padding,n=i/2,l=n/(2.5+i/50),s=a.height+l+e.padding,d="M 0,"+l+" a "+n+","+l+" 0,0,0 "+i+" 0 a "+n+","+l+" 0,0,0 "+-i+" 0 l 0,"+s+" a "+n+","+l+" 0,0,0 "+i+" 0 l 0,"+-s,c=r.attr("label-offset-y",l).insert("path",":first-child").attr("style",e.style).attr("d",d).attr("transform","translate("+-i/2+","+-(s/2+l)+")");return h(e,c),e.intersect=function(t){let r=y.rect(e,t),a=r.x-e.x;if(0!=n&&(Math.abs(a)<e.width/2||Math.abs(a)==e.width/2&&Math.abs(r.y-e.y)>e.height/2-l)){let i=l*l*(1-a*a/(n*n));0!=i&&(i=Math.sqrt(i)),i=l-i,t.y-e.y>0&&(i=-i),r.y+=i}return r},r},start:(t,e)=>{let r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),a=r.insert("circle",":first-child");return a.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),h(e,a),e.intersect=function(t){return y.circle(e,7,t)},r},end:(t,e)=>{let r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),a=r.insert("circle",":first-child"),i=r.insert("circle",":first-child");return i.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),a.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),h(e,i),e.intersect=function(t){return y.circle(e,7,t)},r},note:async(t,e)=>{e.useHtmlLabels||(0,a.c)().flowchart.htmlLabels||(e.centerLabel=!0);let{shapeSvg:r,bbox:i,halfPadding:n}=await o(t,e,"node "+e.classes,!0);a.l.info("Classes = ",e.classes);let l=r.insert("rect",":first-child");return l.attr("rx",e.rx).attr("ry",e.ry).attr("x",-i.width/2-n).attr("y",-i.height/2-n).attr("width",i.width+e.padding).attr("height",i.height+e.padding),h(e,l),e.intersect=function(t){return y.rect(e,t)},r},subroutine:async(t,e)=>{let{shapeSvg:r,bbox:a}=await o(t,e,u(e,void 0),!0),i=a.width+e.padding,n=a.height+e.padding,l=[{x:0,y:0},{x:i,y:0},{x:i,y:-n},{x:0,y:-n},{x:0,y:0},{x:-8,y:0},{x:i+8,y:0},{x:i+8,y:-n},{x:-8,y:-n},{x:-8,y:0}],s=c(r,i,n,l);return s.attr("style",e.style),h(e,s),e.intersect=function(t){return y.polygon(e,l,t)},r},fork:b,join:b,class_box:(t,e)=>{let r,n=e.padding/2;r=e.classes?"node "+e.classes:"node default";let l=t.insert("g").attr("class",r).attr("id",e.domId||e.id),s=l.insert("rect",":first-child"),o=l.insert("line"),c=l.insert("line"),p=0,g=4,x=l.insert("g").attr("class","label"),f=0,u=e.classData.annotations&&e.classData.annotations[0],w=e.classData.annotations[0]?"\xab"+e.classData.annotations[0]+"\xbb":"",m=x.node().appendChild(d(w,e.labelStyle,!0,!0)),b=m.getBBox();if((0,a.m)((0,a.c)().flowchart.htmlLabels)){let t=m.children[0],e=(0,i.Ltv)(m);b=t.getBoundingClientRect(),e.attr("width",b.width),e.attr("height",b.height)}e.classData.annotations[0]&&(g+=b.height+4,p+=b.width);let k=e.classData.label;void 0!==e.classData.type&&""!==e.classData.type&&((0,a.c)().flowchart.htmlLabels?k+="&lt;"+e.classData.type+"&gt;":k+="<"+e.classData.type+">");let L=x.node().appendChild(d(k,e.labelStyle,!0,!0));(0,i.Ltv)(L).attr("class","classTitle");let v=L.getBBox();if((0,a.m)((0,a.c)().flowchart.htmlLabels)){let t=L.children[0],e=(0,i.Ltv)(L);v=t.getBoundingClientRect(),e.attr("width",v.width),e.attr("height",v.height)}g+=v.height+4,v.width>p&&(p=v.width);let S=[];
2e.classData.members.forEach(t=>{let r=t.getDisplayDetails(),n=r.displayText;(0,a.c)().flowchart.htmlLabels&&(n=n.replace(/</g,"&lt;").replace(/>/g,"&gt;"));let l=x.node().appendChild(d(n,r.cssStyle?r.cssStyle:e.labelStyle,!0,!0)),s=l.getBBox();if((0,a.m)((0,a.c)().flowchart.htmlLabels)){let t=l.children[0],e=(0,i.Ltv)(l);s=t.getBoundingClientRect(),e.attr("width",s.width),e.attr("height",s.height)}s.width>p&&(p=s.width),g+=s.height+4,S.push(l)}),g+=8;let M=[];if(e.classData.methods.forEach(t=>{let r=t.getDisplayDetails(),n=r.displayText;(0,a.c)().flowchart.htmlLabels&&(n=n.replace(/</g,"&lt;").replace(/>/g,"&gt;"));let l=x.node().appendChild(d(n,r.cssStyle?r.cssStyle:e.labelStyle,!0,!0)),s=l.getBBox();if((0,a.m)((0,a.c)().flowchart.htmlLabels)){let t=l.children[0],e=(0,i.Ltv)(l);s=t.getBoundingClientRect(),e.attr("width",s.width),e.attr("height",s.height)}s.width>p&&(p=s.width),g+=s.height+4,M.push(l)}),g+=8,u){let t=(p-b.width)/2;(0,i.Ltv)(m).attr("transform","translate( "+(-1*p/2+t)+", "+-1*g/2+")"),f=b.height+4}let T=(p-v.width)/2;return(0,i.Ltv)(L).attr("transform","translate( "+(-1*p/2+T)+", "+(-1*g/2+f)+")"),f+=v.height+4,o.attr("class","divider").attr("x1",-p/2-n).attr("x2",p/2+n).attr("y1",-g/2-n+8+f).attr("y2",-g/2-n+8+f),f+=8,S.forEach(t=>{(0,i.Ltv)(t).attr("transform","translate( "+-p/2+", "+(-1*g/2+f+4)+")");let e=null==t?void 0:t.getBBox();f+=((null==e?void 0:e.height)??0)+4}),f+=8,c.attr("class","divider").attr("x1",-p/2-n).attr("x2",p/2+n).attr("y1",-g/2-n+8+f).attr("y2",-g/2-n+8+f),f+=8,M.forEach(t=>{(0,i.Ltv)(t).attr("transform","translate( "+-p/2+", "+(-1*g/2+f)+")");let e=null==t?void 0:t.getBBox();f+=((null==e?void 0:e.height)??0)+4}),s.attr("style",e.style).attr("class","outer title-state").attr("x",-p/2-n).attr("y",-(g/2)-n).attr("width",p+e.padding).attr("height",g+e.padding),h(e,s),e.intersect=function(t){return y.rect(e,t)},l}},L={},v=async(t,e,r)=>{let i,n;if(e.link){let l;"sandbox"===(0,a.c)().securityLevel?l="_top":e.linkTarget&&(l=e.linkTarget||"_blank"),i=t.insert("svg:a").attr("xlink:href",e.link).attr("target",l),n=await k[e.shape](i,e,r)}else i=n=await k[e.shape](t,e,r);return e.tooltip&&n.attr("title",e.tooltip),e.class&&n.attr("class","node default "+e.class),i.attr("data-node","true"),i.attr("data-id",e.id),L[e.id]=i,e.haveCallback&&L[e.id].attr("class",L[e.id].attr("class")+" clickable"),i},S=(t,e)=>{L[e.id]=t},M=()=>{L={}},T=t=>{let e=L[t.id];a.l.trace("Transforming node",t.diff,t,"translate("+(t.x-t.width/2-5)+", "+t.width/2+")");let r=t.diff||0;return t.clusterNode?e.attr("transform","translate("+(t.x+r-t.width/2)+", "+(t.y-t.height/2-8)+")"):e.attr("transform","translate("+t.x+", "+t.y+")"),r},B=({flowchart:t})=>{var e,r;let a=(null==(e=null==t?void 0:t.subGraphTitleMargin)?void 0:e.top)??0,i=(null==(r=null==t?void 0:t.subGraphTitleMargin)?void 0:r.bottom)??0;return{subGraphTitleTopMargin:a,subGraphTitleBottomMargin:i,subGraphTitleTotalMargin:a+i}},E={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:5.3};function C(t,e){if(void 0===t||void 0===e)return{angle:0,deltaX:0,deltaY:0};t=_(t),e=_(e);let[r,a]=[t.x,t.y],[i,n]=[e.x,e.y],l=i-r,s=n-a;return{angle:Math.atan(s/l),deltaX:l,deltaY:s}}let _=t=>Array.isArray(t)?{x:t[0],y:t[1]}:t,$=t=>({x:function(e,r,a){let i=0;if(0===r&&Object.hasOwn(E,t.arrowTypeStart)){let{angle:e,deltaX:r}=C(a[0],a[1]);i=E[t.arrowTypeStart]*Math.cos(e)*(r>=0?1:-1)}else if(r===a.length-1&&Object.hasOwn(E,t.arrowTypeEnd)){let{angle:e,deltaX:r}=C(a[a.length-1],a[a.length-2]);i=E[t.arrowTypeEnd]*Math.cos(e)*(r>=0?1:-1)}return _(e).x+i},y:function(e,r,a){let i=0;if(0===r&&Object.hasOwn(E,t.arrowTypeStart)){let{angle:e,deltaY:r}=C(a[0],a[1]);i=E[t.arrowTypeStart]*Math.abs(Math.sin(e))*(r>=0?1:-1)}else if(r===a.length-1&&Object.hasOwn(E,t.arrowTypeEnd)){let{angle:e,deltaY:r}=C(a[a.length-1],a[a.length-2]);i=E[t.arrowTypeEnd]*Math.abs(Math.sin(e))*(r>=0?1:-1)}return _(e).y+i}}),j=(t,e,r,a,i)=>{e.arrowTypeStart&&P(t,"start",e.arrowTypeStart,r,a,i),e.arrowTypeEnd&&P(t,"end",e.arrowTypeEnd,r,a,i)},R={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},P=(t,e,r,i,n,l)=>{let s=R[r];if(!s){a.l.warn(`Unknown arrow type: ${r}`);return}t.attr(`marker-${e}`,`url(${i}#${n}_${l}-${s}${"start"===e?"Start":"End"})`)},I={},O={},W=()=>{I={},O={}},Y=(t,e)=>{let r,l=(0,a.m)((0,a.c)().flowchart.htmlLabels),s="markdown"===e.labelType?(0,n.a)(t,e.label,{style:e.labelStyle,useHtmlLabels:l,addSvgBackgroun
2d:!0}):d(e.label,e.labelStyle),o=t.insert("g").attr("class","edgeLabel"),h=o.insert("g").attr("class","label");h.node().appendChild(s);let c=s.getBBox();if(l){let t=s.children[0],e=(0,i.Ltv)(s);c=t.getBoundingClientRect(),e.attr("width",c.width),e.attr("height",c.height)}if(h.attr("transform","translate("+-c.width/2+", "+-c.height/2+")"),I[e.id]=o,e.width=c.width,e.height=c.height,e.startLabelLeft){let a=d(e.startLabelLeft,e.labelStyle),i=t.insert("g").attr("class","edgeTerminals"),n=i.insert("g").attr("class","inner");r=n.node().appendChild(a);let l=a.getBBox();n.attr("transform","translate("+-l.width/2+", "+-l.height/2+")"),O[e.id]||(O[e.id]={}),O[e.id].startLeft=i,N(r,e.startLabelLeft)}if(e.startLabelRight){let a=d(e.startLabelRight,e.labelStyle),i=t.insert("g").attr("class","edgeTerminals"),n=i.insert("g").attr("class","inner");r=i.node().appendChild(a),n.node().appendChild(a);let l=a.getBBox();n.attr("transform","translate("+-l.width/2+", "+-l.height/2+")"),O[e.id]||(O[e.id]={}),O[e.id].startRight=i,N(r,e.startLabelRight)}if(e.endLabelLeft){let a=d(e.endLabelLeft,e.labelStyle),i=t.insert("g").attr("class","edgeTerminals"),n=i.insert("g").attr("class","inner");r=n.node().appendChild(a);let l=a.getBBox();n.attr("transform","translate("+-l.width/2+", "+-l.height/2+")"),i.node().appendChild(a),O[e.id]||(O[e.id]={}),O[e.id].endLeft=i,N(r,e.endLabelLeft)}if(e.endLabelRight){let a=d(e.endLabelRight,e.labelStyle),i=t.insert("g").attr("class","edgeTerminals"),n=i.insert("g").attr("class","inner");r=n.node().appendChild(a);let l=a.getBBox();n.attr("transform","translate("+-l.width/2+", "+-l.height/2+")"),i.node().appendChild(a),O[e.id]||(O[e.id]={}),O[e.id].endRight=i,N(r,e.endLabelRight)}return s};function N(t,e){(0,a.c)().flowchart.htmlLabels&&t&&(t.style.width=9*e.length+"px",t.style.height="12px")}let D=(t,e)=>{a.l.debug("Moving label abc88 ",t.id,t.label,I[t.id],e);let r=e.updatedPath?e.updatedPath:e.originalPath,{subGraphTitleTotalMargin:i}=B((0,a.c)());if(t.label){let n=I[t.id],l=t.x,s=t.y;if(r){let i=a.u.calcLabelPosition(r);a.l.debug("Moving label "+t.label+" from (",l,",",s,") to (",i.x,",",i.y,") abc88"),e.updatedPath&&(l=i.x,s=i.y)}n.attr("transform",`translate(${l}, ${s+i/2})`)}if(t.startLabelLeft){let e=O[t.id].startLeft,i=t.x,n=t.y;if(r){let e=a.u.calcTerminalLabelPosition(10*!!t.arrowTypeStart,"start_left",r);i=e.x,n=e.y}e.attr("transform",`translate(${i}, ${n})`)}if(t.startLabelRight){let e=O[t.id].startRight,i=t.x,n=t.y;if(r){let e=a.u.calcTerminalLabelPosition(10*!!t.arrowTypeStart,"start_right",r);i=e.x,n=e.y}e.attr("transform",`translate(${i}, ${n})`)}if(t.endLabelLeft){let e=O[t.id].endLeft,i=t.x,n=t.y;if(r){let e=a.u.calcTerminalLabelPosition(10*!!t.arrowTypeEnd,"end_left",r);i=e.x,n=e.y}e.attr("transform",`translate(${i}, ${n})`)}if(t.endLabelRight){let e=O[t.id].endRight,i=t.x,n=t.y;if(r){let e=a.u.calcTerminalLabelPosition(10*!!t.arrowTypeEnd,"end_right",r);i=e.x,n=e.y}e.attr("transform",`translate(${i}, ${n})`)}},H=(t,e)=>{let r=t.x,a=t.y,i=Math.abs(e.x-r),n=Math.abs(e.y-a),l=t.width/2,s=t.height/2;return!!(i>=l)||!!(n>=s)},X=(t,e,r)=>{a.l.debug(`intersection calc abc89:
3  outsidePoint: ${JSON.stringify(e)}
4  insidePoint : ${JSON.stringify(r)}
5  node        : x:${t.x} y:${t.y} w:${t.width} h:${t.height}`);let i=t.x,n=t.y,l=Math.abs(i-r.x),s=t.width/2,d=r.x<e.x?s-l:s+l,o=t.height/2,h=Math.abs(e.y-r.y),c=Math.abs(e.x-r.x);if(Math.abs(n-e.y)*s>Math.abs(i-e.x)*o){let t=r.y<e.y?e.y-o-n:n-o-e.y;d=c*t/h;let i={x:r.x<e.x?r.x+d:r.x-c+d,y:r.y<e.y?r.y+h-t:r.y-h+t};return 0===d&&(i.x=e.x,i.y=e.y),0===c&&(i.x=e.x),0===h&&(i.y=e.y),a.l.debug(`abc89 topp/bott calc, Q ${h}, q ${t}, R ${c}, r ${d}`,i),i}{let t=h*(d=r.x<e.x?e.x-s-i:i-s-e.x)/c,n=r.x<e.x?r.x+c-d:r.x-c+d,l=r.y<e.y?r.y+t:r.y-t;return a.l.debug(`sides calc abc89, Q ${h}, q ${t}, R ${c}, r ${d}`,{_x:n,_y:l}),0===d&&(n=e.x,l=e.y),0===c&&(n=e.x),0===h&&(l=e.y),{x:n,y:l}}},U=(t,e)=>{a.l.debug("abc88 cutPathAtIntersect",t,e);let r=[],i=t[0],n=!1;return t.forEach(t=>{if(H(e,t)||n)i=t,n||r.push(t);else{let a=X(e,i,t),l=!1;r.forEach(t=>{l=l||t.x===a.x&&t.y===a.y}
5),r.some(t=>t.x===a.x&&t.y===a.y)||r.push(a),n=!0}}),r},A=function(t,e,r,n,l,s,d){let o,h=r.points;a.l.debug("abc88 InsertEdge: edge=",r,"e=",e);let c=!1,p=s.node(e.v);var y=s.node(e.w);(null==y?void 0:y.intersect)&&(null==p?void 0:p.intersect)&&((h=h.slice(1,r.points.length-1)).unshift(p.intersect(h[0])),h.push(y.intersect(h[h.length-1]))),r.toCluster&&(a.l.debug("to cluster abc88",n[r.toCluster]),h=U(r.points,n[r.toCluster].node),c=!0),r.fromCluster&&(a.l.debug("from cluster abc88",n[r.fromCluster]),h=U(h.reverse(),n[r.fromCluster].node).reverse(),c=!0);let g=h.filter(t=>!Number.isNaN(t.y)),x=i.qrM;r.curve&&("graph"===l||"flowchart"===l)&&(x=r.curve);let{x:f,y:u}=$(r),w=(0,i.n8j)().x(f).y(u).curve(x);switch(r.thickness){case"normal":o="edge-thickness-normal";break;case"thick":case"invisible":o="edge-thickness-thick";break;default:o=""}switch(r.pattern){case"solid":o+=" edge-pattern-solid";break;case"dotted":o+=" edge-pattern-dotted";break;case"dashed":o+=" edge-pattern-dashed"}let m=t.append("path").attr("d",w(g)).attr("id",r.id).attr("class"," "+o+(r.classes?" "+r.classes:"")).attr("style",r.style),b="";((0,a.c)().flowchart.arrowMarkerAbsolute||(0,a.c)().state.arrowMarkerAbsolute)&&(b=(b=(b=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search).replace(/\(/g,"\\(")).replace(/\)/g,"\\)")),j(m,r,b,d,l);let k={};return c&&(k.updatedPath=h),k.originalPath=r.points,k}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.