@eventcatalogtest/studio
Version:
A drag and drop UI for distributed systems that keeps your diagrams where they belong – in your repo
5 lines (4 loc) • 60.5 kB
JavaScript
"use strict";exports.id=2133,exports.ids=[2133],exports.modules={23386:(a,b,c)=>{c.d(b,{P:()=>e});var d=c(32892),e=(0,d.K2)((a,b,c,e)=>{a.attr("class",c);let{width:h,height:i,x:j,y:k}=f(a,b);(0,d.a$)(a,i,h,e);let l=g(j,k,h,i,b);a.attr("viewBox",l),d.Rm.debug(`viewBox configured: ${l} with padding: ${b}`)},"setupViewPortForSVG"),f=(0,d.K2)((a,b)=>{let c=a.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:c.width+2*b,height:c.height+2*b,x:c.x,y:c.y}},"calculateDimensionsWithPadding"),g=(0,d.K2)((a,b,c,d,e)=>`${a-e} ${b-e} ${c} ${d}`,"createViewBox")},72133:(a,b,c)=>{c.d(b,{diagram:()=>u});var d=c(90248),e=c(87661),f=c(82939),g=c(23386),h=c(23255);c(44514),c(96005);var i=c(8837);c(4740),c(8688),c(7827);var j=c(65299),k=c(32892),l=c(38073),m=c(81241),n=c(27170),o=class{constructor(){this.vertexCounter=0,this.config=(0,k.D7)(),this.vertices=new Map,this.edges=[],this.classes=new Map,this.subGraphs=[],this.subGraphLookup=new Map,this.tooltips=new Map,this.subCount=0,this.firstGraphFlag=!0,this.secCount=-1,this.posCrossRef=[],this.funs=[],this.setAccTitle=k.SV,this.setAccDescription=k.EI,this.setDiagramTitle=k.ke,this.getAccTitle=k.iN,this.getAccDescription=k.m7,this.getDiagramTitle=k.ab,this.funs.push(this.setupToolTips.bind(this)),this.addVertex=this.addVertex.bind(this),this.firstGraph=this.firstGraph.bind(this),this.setDirection=this.setDirection.bind(this),this.addSubGraph=this.addSubGraph.bind(this),this.addLink=this.addLink.bind(this),this.setLink=this.setLink.bind(this),this.updateLink=this.updateLink.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.destructLink=this.destructLink.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setTooltip=this.setTooltip.bind(this),this.updateLinkInterpolate=this.updateLinkInterpolate.bind(this),this.setClickFun=this.setClickFun.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.lex={firstGraph:this.firstGraph.bind(this)},this.clear(),this.setGen("gen-2")}static{(0,k.K2)(this,"FlowDB")}sanitizeText(a){return k.Y2.sanitizeText(a,this.config)}lookUpDomId(a){for(let b of this.vertices.values())if(b.id===a)return b.domId;return a}addVertex(a,b,c,d,f,g,h={},j){let l,m;if(!a||0===a.trim().length)return;if(void 0!==j){let a;a=j.includes("\n")?j+"\n":"{\n"+j+"\n}",l=(0,e.H)(a,{schema:e.r})}let n=this.edges.find(b=>b.id===a);if(n){let a=l;a?.animate!==void 0&&(n.animate=a.animate),a?.animation!==void 0&&(n.animation=a.animation);return}let o=this.vertices.get(a);if(void 0===o&&(o={id:a,labelType:"text",domId:"flowchart-"+a+"-"+this.vertexCounter,styles:[],classes:[]},this.vertices.set(a,o)),this.vertexCounter++,void 0!==b?(this.config=(0,k.D7)(),m=this.sanitizeText(b.text.trim()),o.labelType=b.type,m.startsWith('"')&&m.endsWith('"')&&(m=m.substring(1,m.length-1)),o.text=m):void 0===o.text&&(o.text=a),void 0!==c&&(o.type=c),null!=d&&d.forEach(a=>{o.styles.push(a)}),null!=f&&f.forEach(a=>{o.classes.push(a)}),void 0!==g&&(o.dir=g),void 0===o.props?o.props=h:void 0!==h&&Object.assign(o.props,h),void 0!==l){if(l.shape){if(l.shape!==l.shape.toLowerCase()||l.shape.includes("_"))throw Error(`No such shape: ${l.shape}. Shape names should be lowercase.`);if(!(0,i.aP)(l.shape))throw Error(`No such shape: ${l.shape}.`);o.type=l?.shape}l?.label&&(o.text=l?.label),l?.icon&&(o.icon=l?.icon,l.label?.trim()||o.text!==a||(o.text="")),l?.form&&(o.form=l?.form),l?.pos&&(o.pos=l?.pos),l?.img&&(o.img=l?.img,l.label?.trim()||o.text!==a||(o.text="")),l?.constraint&&(o.constraint=l.constraint),l.w&&(o.assetWidth=Number(l.w)),l.h&&(o.assetHeight=Number(l.h))}}addSingleLink(a,b,c,d){let e={start:a,end:b,type:void 0,text:"",labelType:"text",classes:[],isUserDefinedId:!1,interpolate:this.edges.defaultInterpolate};k.Rm.info("abc78 Got edge...",e);let f=c.text;if(void 0!==f&&(e.text=this.sanitizeText(f.text.trim()),e.text.startsWith('"')&&e.text.endsWith('"')&&(e.text=e.text.substring(1,e.text.length-1)),e.labelType=f.type),void 0!==c&&(e.type=c.type,e.stroke=c.stroke,e.length=c.length>10?10:c.length),d&&!this.edges.some(a=>a.id===d))e.id=d,e.isUserDefinedId=!0;else{let a=this.edges.filter(a=>a.start===e.start&&a.end===e.end);0===a.length?e.id=(0,j.rY)(e.start,e.end,{counter:0,prefix:"L"}):e.id=(0,j.rY)(e.start,e.end,{counter:a.length+1,prefix:"L"})}if(this.edges.length<(this.config.maxEdges??500))k.Rm.info("Pushing edge..."),this.edges.push(e);else throw Error(`Edge limit exceeded. ${this.edges.length} edges found, but the limit is ${this.config.maxEdges}.
Initialize mermaid with maxEdges set to a higher number to allow more edges.
You cannot set this config via configuration inside the diagram as it is a secure config.
You have to call mermaid.initialize.`)}isLinkData(a){return null!==a&&"object"==typeof a&&"id"in a&&"string"==typeof a.id}addLink(a,b,c){let d=this.isLinkData(c)?c.id.replace("@",""):void 0;for(let e of(k.Rm.info("addLink",a,b,d),a))for(let f of b){let g=e===a[a.length-1],h=f===b[0];g&&h?this.addSingleLink(e,f,c,d):this.addSingleLink(e,f,c,void 0)}}updateLinkInterpolate(a,b){a.forEach(a=>{"default"===a?this.edges.defaultInterpolate=b:this.edges[a].interpolate=b})}updateLink(a,b){a.forEach(a=>{if("number"==typeof a&&a>=this.edges.length)throw Error(`The index ${a} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${this.edges.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);"default"===a?this.edges.defaultStyle=b:(this.edges[a].style=b,(this.edges[a]?.style?.length??0)>0&&!this.edges[a]?.style?.some(a=>a?.startsWith("fill"))&&this.edges[a]?.style?.push("fill:none"))})}addClass(a,b){let c=b.join().replace(/\\,/g,"\xa7\xa7\xa7").replace(/,/g,";").replace(/§§§/g,",").split(";");a.split(",").forEach(a=>{let b=this.classes.get(a);void 0===b&&(b={id:a,styles:[],textStyles:[]},this.classes.set(a,b)),null!=c&&c.forEach(a=>{if(/color/.exec(a)){let c=a.replace("fill","bgFill");b.textStyles.push(c)}b.styles.push(a)})})}setDirection(a){this.direction=a,/.*</.exec(this.direction)&&(this.direction="RL"),/.*\^/.exec(this.direction)&&(this.direction="BT"),/.*>/.exec(this.direction)&&(this.direction="LR"),/.*v/.exec(this.direction)&&(this.direction="TB"),"TD"===this.direction&&(this.direction="TB")}setClass(a,b){for(let c of a.split(",")){let a=this.vertices.get(c);a&&a.classes.push(b);let d=this.edges.find(a=>a.id===c);d&&d.classes.push(b);let e=this.subGraphLookup.get(c);e&&e.classes.push(b)}}setTooltip(a,b){if(void 0!==b)for(let c of(b=this.sanitizeText(b),a.split(",")))this.tooltips.set("gen-1"===this.version?this.lookUpDomId(c):c,b)}setClickFun(a,b,c){let d=this.lookUpDomId(a);if("loose"!==(0,k.D7)().securityLevel||void 0===b)return;let e=[];if("string"==typeof c){e=c.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let a=0;a<e.length;a++){let b=e[a].trim();b.startsWith('"')&&b.endsWith('"')&&(b=b.substr(1,b.length-2)),e[a]=b}}0===e.length&&e.push(a);let f=this.vertices.get(a);f&&(f.haveCallback=!0,this.funs.push(()=>{let a=document.querySelector(`[id="${d}"]`);null!==a&&a.addEventListener("click",()=>{j._K.runFunc(b,...e)},!1)}))}setLink(a,b,c){a.split(",").forEach(a=>{let d=this.vertices.get(a);void 0!==d&&(d.link=j._K.formatUrl(b,this.config),d.linkTarget=c)}),this.setClass(a,"clickable")}getTooltip(a){return this.tooltips.get(a)}setClickEvent(a,b,c){a.split(",").forEach(a=>{this.setClickFun(a,b,c)}),this.setClass(a,"clickable")}bindFunctions(a){this.funs.forEach(b=>{b(a)})}getDirection(){return this.direction?.trim()}getVertices(){return this.vertices}getEdges(){return this.edges}getClasses(){return this.classes}setupToolTips(a){let b=(0,l.Ltv)(".mermaidTooltip");null===(b._groups||b)[0][0]&&(b=(0,l.Ltv)("body").append("div").attr("class","mermaidTooltip").style("opacity",0)),(0,l.Ltv)(a).select("svg").selectAll("g.node").on("mouseover",a=>{let c=(0,l.Ltv)(a.currentTarget);if(null===c.attr("title"))return;let d=a.currentTarget?.getBoundingClientRect();b.transition().duration(200).style("opacity",".9"),b.text(c.attr("title")).style("left",window.scrollX+d.left+(d.right-d.left)/2+"px").style("top",window.scrollY+d.bottom+"px"),b.html(b.html().replace(/<br\/>/g,"<br/>")),c.classed("hover",!0)}).on("mouseout",a=>{b.transition().duration(500).style("opacity",0),(0,l.Ltv)(a.currentTarget).classed("hover",!1)})}clear(a="gen-2"){this.vertices=new Map,this.classes=new Map,this.edges=[],this.funs=[this.setupToolTips.bind(this)],this.subGraphs=[],this.subGraphLookup=new Map,this.subCount=0,this.tooltips=new Map,this.firstGraphFlag=!0,this.version=a,this.config=(0,k.D7)(),(0,k.IU)()}setGen(a){this.version=a||"gen-2"}defaultStyle(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"}addSubGraph(a,b,c){let d=a.text.trim(),e=c.text;a===c&&/\s/.exec(c.text)&&(d=void 0);let f=(0,k.K2)(a=>{let b,c={boolean:{},number:{},string:{}},d=[];return{nodeList:a.filter(function(a){let e=typeof a;return a.stmt&&"dir"===a.stmt?(b=a.value,!1):""!==a.trim()&&(e in c?!c[e].hasOwnProperty(a)&&(c[e][a]=!0):!d.includes(a)&&d.push(a))}),dir:b}},"uniq")(b.flat()),g=f.nodeList,h=f.dir,i=(0,k.D7)().flowchart??{};if(h=h??(i.inheritDir?this.getDirection()??(0,k.D7)().direction??void 0:void 0),"gen-1"===this.version)for(let a=0;a<g.length;a++)g[a]=this.lookUpDomId(g[a]);d=d??"subGraph"+this.subCount,e=e||"",e=this.sanitizeText(e),this.subCount=this.subCount+1;let j={id:d,nodes:g,title:e.trim(),classes:[],dir:h,labelType:c.type};return k.Rm.info("Adding",j.id,j.nodes,j.dir),j.nodes=this.makeUniq(j,this.subGraphs).nodes,this.subGraphs.push(j),this.subGraphLookup.set(d,j),d}getPosForId(a){for(let[b,c]of this.subGraphs.entries())if(c.id===a)return b;return -1}indexNodes2(a,b){let c=this.subGraphs[b].nodes;if(this.secCount=this.secCount+1,this.secCount>2e3)return{result:!1,count:0};if(this.posCrossRef[this.secCount]=b,this.subGraphs[b].id===a)return{result:!0,count:0};let d=0,e=1;for(;d<c.length;){let b=this.getPosForId(c[d]);if(b>=0){let c=this.indexNodes2(a,b);if(c.result)return{result:!0,count:e+c.count};e+=c.count}d+=1}return{result:!1,count:e}}getDepthFirstPos(a){return this.posCrossRef[a]}indexNodes(){this.secCount=-1,this.subGraphs.length>0&&this.indexNodes2("none",this.subGraphs.length-1)}getSubGraphs(){return this.subGraphs}firstGraph(){return!!this.firstGraphFlag&&(this.firstGraphFlag=!1,!0)}destructStartLink(a){let b=a.trim(),c="arrow_open";switch(b[0]){case"<":c="arrow_point",b=b.slice(1);break;case"x":c="arrow_cross",b=b.slice(1);break;case"o":c="arrow_circle",b=b.slice(1)}let d="normal";return b.includes("=")&&(d="thick"),b.includes(".")&&(d="dotted"),{type:c,stroke:d}}countChar(a,b){let c=b.length,d=0;for(let e=0;e<c;++e)b[e]===a&&++d;return d}destructEndLink(a){let b=a.trim(),c=b.slice(0,-1),d="arrow_open";switch(b.slice(-1)){case"x":d="arrow_cross",b.startsWith("x")&&(d="double_"+d,c=c.slice(1));break;case">":d="arrow_point",b.startsWith("<")&&(d="double_"+d,c=c.slice(1));break;case"o":d="arrow_circle",b.startsWith("o")&&(d="double_"+d,c=c.slice(1))}let e="normal",f=c.length-1;c.startsWith("=")&&(e="thick"),c.startsWith("~")&&(e="invisible");let g=this.countChar(".",c);return g&&(e="dotted",f=g),{type:d,stroke:e,length:f}}destructLink(a,b){let c,d=this.destructEndLink(a);if(b){if((c=this.destructStartLink(b)).stroke!==d.stroke)return{type:"INVALID",stroke:"INVALID"};if("arrow_open"===c.type)c.type=d.type;else{if(c.type!==d.type)return{type:"INVALID",stroke:"INVALID"};c.type="double_"+c.type}return"double_arrow"===c.type&&(c.type="double_arrow_point"),c.length=d.length,c}return d}exists(a,b){for(let c of a)if(c.nodes.includes(b))return!0;return!1}makeUniq(a,b){let c=[];return a.nodes.forEach((d,e)=>{this.exists(b,d)||c.push(a.nodes[e])}),{nodes:c}}getTypeFromVertex(a){if(a.img)return"imageSquare";if(a.icon)return"circle"===a.form?"iconCircle":"square"===a.form?"iconSquare":"rounded"===a.form?"iconRounded":"icon";switch(a.type){case"square":case void 0:return"squareRect";case"round":return"roundedRect";case"ellipse":return"ellipse";default:return a.type}}findNode(a,b){return a.find(a=>a.id===b)}destructEdgeType(a){let b="none",c="arrow_point";switch(a){case"arrow_point":case"arrow_circle":case"arrow_cross":c=a;break;case"double_arrow_point":case"double_arrow_circle":case"double_arrow_cross":c=b=a.replace("double_","")}return{arrowTypeStart:b,arrowTypeEnd:c}}addNodeFromVertex(a,b,c,d,e,f){let g=c.get(a.id),h=d.get(a.id)??!1,i=this.findNode(b,a.id);if(i)i.cssStyles=a.styles,i.cssCompiledStyles=this.getCompiledStyles(a.classes),i.cssClasses=a.classes.join(" ");else{let c={id:a.id,label:a.text,labelStyle:"",parentId:g,padding:e.flowchart?.padding||8,cssStyles:a.styles,cssCompiledStyles:this.getCompiledStyles(["default","node",...a.classes]),cssClasses:"default "+a.classes.join(" "),dir:a.dir,domId:a.domId,look:f,link:a.link,linkTarget:a.linkTarget,tooltip:this.getTooltip(a.id),icon:a.icon,pos:a.pos,img:a.img,assetWidth:a.assetWidth,assetHeight:a.assetHeight,constraint:a.constraint};h?b.push({...c,isGroup:!0,shape:"rect"}):b.push({...c,isGroup:!1,shape:this.getTypeFromVertex(a)})}}getCompiledStyles(a){let b=[];for(let c of a){let a=this.classes.get(c);a?.styles&&(b=[...b,...a.styles??[]].map(a=>a.trim())),a?.textStyles&&(b=[...b,...a.textStyles??[]].map(a=>a.trim()))}return b}getData(){let a=(0,k.D7)(),b=[],c=[],d=this.getSubGraphs(),e=new Map,f=new Map;for(let a=d.length-1;a>=0;a--){let b=d[a];for(let a of(b.nodes.length>0&&f.set(b.id,!0),b.nodes))e.set(a,b.id)}for(let c=d.length-1;c>=0;c--){let f=d[c];b.push({id:f.id,label:f.title,labelStyle:"",parentId:e.get(f.id),padding:8,cssCompiledStyles:this.getCompiledStyles(f.classes),cssClasses:f.classes.join(" "),shape:"rect",dir:f.dir,isGroup:!0,look:a.look})}this.getVertices().forEach(c=>{this.addNodeFromVertex(c,b,e,f,a,a.look||"classic")});let g=this.getEdges();return g.forEach((b,d)=>{let{arrowTypeStart:e,arrowTypeEnd:f}=this.destructEdgeType(b.type),h=[...g.defaultStyle??[]];b.style&&h.push(...b.style);let i={id:(0,j.rY)(b.start,b.end,{counter:d,prefix:"L"},b.id),isUserDefinedId:b.isUserDefinedId,start:b.start,end:b.end,type:b.type??"normal",label:b.text,labelpos:"c",thickness:b.stroke,minlen:b.length,classes:b?.stroke==="invisible"?"":"edge-thickness-normal edge-pattern-solid flowchart-link",arrowTypeStart:b?.stroke==="invisible"||b?.type==="arrow_open"?"none":e,arrowTypeEnd:b?.stroke==="invisible"||b?.type==="arrow_open"?"none":f,arrowheadStyle:"fill: #333",cssCompiledStyles:this.getCompiledStyles(b.classes),labelStyle:h,style:h,pattern:b.stroke,look:a.look,animate:b.animate,animation:b.animation,curve:b.interpolate||this.edges.defaultInterpolate||a.flowchart?.curve};c.push(i)}),{nodes:b,edges:c,other:{},config:a}}defaultConfig(){return k.ME.flowchart}},p=(0,k.K2)(function(a,b){return b.db.getClasses()},"getClasses"),q=(0,k.K2)(async function(a,b,c,d){let e;k.Rm.info("REF0:"),k.Rm.info("Drawing state diagram (v2)",b);let{securityLevel:i,flowchart:m,layout:n}=(0,k.D7)();"sandbox"===i&&(e=(0,l.Ltv)("#i"+b));let o="sandbox"===i?e.nodes()[0].contentDocument:document;k.Rm.debug("Before getData: ");let p=d.db.getData();k.Rm.debug("Data: ",p);let q=(0,f.A)(b,i),r=d.db.getDirection();p.type=d.type,p.layoutAlgorithm=(0,h.q7)(n),"dagre"===p.layoutAlgorithm&&"elk"===n&&k.Rm.warn("flowchart-elk was moved to an external package in Mermaid v11. Please refer [release notes](https://github.com/mermaid-js/mermaid/releases/tag/v11.0.0) for more details. This diagram will be rendered using `dagre` layout as a fallback."),p.direction=r,p.nodeSpacing=m?.nodeSpacing||50,p.rankSpacing=m?.rankSpacing||50,p.markers=["point","circle","cross"],p.diagramId=b,k.Rm.debug("REF1:",p),await (0,h.XX)(p,q);let s=p.config.flowchart?.diagramPadding??8;for(let a of(j._K.insertTitle(q,"flowchartTitleText",m?.titleTopMargin||0,d.db.getDiagramTitle()),(0,g.P)(q,s,"flowchart",m?.useMaxWidth||!1),p.nodes)){let c=(0,l.Ltv)(`#${b} [id="${a.id}"]`);if(!c||!a.link)continue;let d=o.createElementNS("http://www.w3.org/2000/svg","a");d.setAttributeNS("http://www.w3.org/2000/svg","class",a.cssClasses),d.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),"sandbox"===i?d.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):a.linkTarget&&d.setAttributeNS("http://www.w3.org/2000/svg","target",a.linkTarget);let e=c.insert(function(){return d},":first-child"),f=c.select(".label-container");f&&e.append(function(){return f.node()});let g=c.select(".label");g&&e.append(function(){return g.node()})}},"draw"),r=function(){var a=(0,k.K2)(function(a,b,c,d){for(c=c||{},d=a.length;d--;c[a[d]]=b);return c},"o"),b=[1,4],c=[1,3],d=[1,5],e=[1,8,9,10,11,27,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124],f=[2,2],g=[1,13],h=[1,14],i=[1,15],j=[1,16],l=[1,23],m=[1,25],n=[1,26],o=[1,27],p=[1,49],q=[1,48],r=[1,29],s=[1,30],t=[1,31],u=[1,32],v=[1,33],w=[1,44],x=[1,46],y=[1,42],z=[1,47],A=[1,43],B=[1,50],C=[1,45],D=[1,51],E=[1,52],F=[1,34],G=[1,35],H=[1,36],I=[1,37],J=[1,57],K=[1,8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124],L=[1,61],M=[1,60],N=[1,62],O=[8,9,11,75,77,78],P=[1,78],Q=[1,91],R=[1,96],S=[1,95],T=[1,92],U=[1,88],V=[1,94],W=[1,90],X=[1,97],Y=[1,93],Z=[1,98],$=[1,89],_=[8,9,10,11,40,75,77,78],aa=[8,9,10,11,40,46,75,77,78],ab=[8,9,10,11,29,40,44,46,48,50,52,54,56,58,60,63,65,67,68,70,75,77,78,89,102,105,106,109,111,114,115,116],ac=[8,9,11,44,60,75,77,78,89,102,105,106,109,111,114,115,116],ad=[44,60,89,102,105,106,109,111,114,115,116],ae=[1,121],af=[1,122],ag=[1,124],ah=[1,123],ai=[44,60,62,74,89,102,105,106,109,111,114,115,116],aj=[1,133],ak=[1,147],al=[1,148],am=[1,149],an=[1,150],ao=[1,135],ap=[1,137],aq=[1,141],ar=[1,142],as=[1,143],at=[1,144],au=[1,145],av=[1,146],aw=[1,151],ax=[1,152],ay=[1,131],az=[1,132],aA=[1,139],aB=[1,134],aC=[1,138],aD=[1,136],aE=[8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124],aF=[1,154],aG=[1,156],aH=[8,9,11],aI=[8,9,10,11,14,44,60,89,105,106,109,111,114,115,116],aJ=[1,176],aK=[1,172],aL=[1,173],aM=[1,177],aN=[1,174],aO=[1,175],aP=[77,116,119],aQ=[8,9,10,11,12,14,27,29,32,44,60,75,84,85,86,87,88,89,90,105,109,111,114,115,116],aR=[10,106],aS=[31,49,51,53,55,57,62,64,66,67,69,71,116,117,118],aT=[1,247],aU=[1,245],aV=[1,249],aW=[1,243],aX=[1,244],aY=[1,246],aZ=[1,248],a$=[1,250],a_=[1,268],a0=[8,9,11,106],a1=[8,9,10,11,60,84,105,106,109,110,111,112],a2={trace:(0,k.K2)(function(){},"trace"),yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeparator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,vertexStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,shapeData:39,SHAPE_DATA:40,link:41,node:42,styledVertex:43,AMP:44,vertex:45,STYLE_SEPARATOR:46,idString:47,DOUBLECIRCLESTART:48,DOUBLECIRCLEEND:49,PS:50,PE:51,"(-":52,"-)":53,STADIUMSTART:54,STADIUMEND:55,SUBROUTINESTART:56,SUBROUTINEEND:57,VERTEX_WITH_PROPS_START:58,"NODE_STRING[field]":59,COLON:60,"NODE_STRING[value]":61,PIPE:62,CYLINDERSTART:63,CYLINDEREND:64,DIAMOND_START:65,DIAMOND_STOP:66,TAGEND:67,TRAPSTART:68,TRAPEND:69,INVTRAPSTART:70,INVTRAPEND:71,linkStatement:72,arrowText:73,TESTSTR:74,START_LINK:75,edgeText:76,LINK:77,LINK_ID:78,edgeTextToken:79,STR:80,MD_STR:81,textToken:82,keywords:83,STYLE:84,LINKSTYLE:85,CLASSDEF:86,CLASS:87,CLICK:88,DOWN:89,UP:90,textNoTagsToken:91,stylesOpt:92,"idString[vertex]":93,"idString[class]":94,CALLBACKNAME:95,CALLBACKARGS:96,HREF:97,LINK_TARGET:98,"STR[link]":99,"STR[tooltip]":100,alphaNum:101,DEFAULT:102,numList:103,INTERPOLATE:104,NUM:105,COMMA:106,style:107,styleComponent:108,NODE_STRING:109,UNIT:110,BRKT:111,PCT:112,idStringToken:113,MINUS:114,MULT:115,UNICODE_TEXT:116,TEXT:117,TAGSTART:118,EDGE_TEXT:119,alphaNumToken:120,direction_tb:121,direction_bt:122,direction_rl:123,direction_lr:124,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",40:"SHAPE_DATA",44:"AMP",46:"STYLE_SEPARATOR",48:"DOUBLECIRCLESTART",49:"DOUBLECIRCLEEND",50:"PS",51:"PE",52:"(-",53:"-)",54:"STADIUMSTART",55:"STADIUMEND",56:"SUBROUTINESTART",57:"SUBROUTINEEND",58:"VERTEX_WITH_PROPS_START",59:"NODE_STRING[field]",60:"COLON",61:"NODE_STRING[value]",62:"PIPE",63:"CYLINDERSTART",64:"CYLINDEREND",65:"DIAMOND_START",66:"DIAMOND_STOP",67:"TAGEND",68:"TRAPSTART",69:"TRAPEND",70:"INVTRAPSTART",71:"INVTRAPEND",74:"TESTSTR",75:"START_LINK",77:"LINK",78:"LINK_ID",80:"STR",81:"MD_STR",84:"STYLE",85:"LINKSTYLE",86:"CLASSDEF",87:"CLASS",88:"CLICK",89:"DOWN",90:"UP",93:"idString[vertex]",94:"idString[class]",95:"CALLBACKNAME",96:"CALLBACKARGS",97:"HREF",98:"LINK_TARGET",99:"STR[link]",100:"STR[tooltip]",102:"DEFAULT",104:"INTERPOLATE",105:"NUM",106:"COMMA",109:"NODE_STRING",110:"UNIT",111:"BRKT",112:"PCT",114:"MINUS",115:"MULT",116:"UNICODE_TEXT",117:"TEXT",118:"TAGSTART",119:"EDGE_TEXT",121:"direction_tb",122:"direction_bt",123:"direction_rl",124:"direction_lr"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,2],[4,3],[16,2],[16,1],[17,1],[17,1],[17,1],[15,1],[15,1],[15,2],[19,2],[19,2],[19,1],[19,1],[18,2],[18,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,9],[7,6],[7,4],[7,1],[7,2],[7,2],[7,1],[21,1],[21,1],[21,1],[39,2],[39,1],[20,4],[20,3],[20,4],[20,2],[20,2],[20,1],[42,1],[42,6],[42,5],[43,1],[43,3],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,8],[45,4],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,4],[45,4],[45,1],[41,2],[41,3],[41,3],[41,1],[41,3],[41,4],[76,1],[76,2],[76,1],[76,1],[72,1],[72,2],[73,3],[30,1],[30,2],[30,1],[30,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[28,1],[28,2],[28,1],[28,1],[24,5],[25,5],[26,2],[26,4],[26,3],[26,5],[26,3],[26,5],[26,5],[26,7],[26,2],[26,4],[26,2],[26,4],[26,4],[26,6],[22,5],[23,5],[23,5],[23,9],[23,9],[23,7],[23,7],[103,1],[103,3],[92,1],[92,3],[107,1],[107,2],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[82,1],[82,1],[82,1],[82,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[79,1],[79,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[47,1],[47,2],[101,1],[101,2],[33,1],[33,1],[33,1],[33,1]],performAction:(0,k.K2)(function(a,b,c,d,e,f,g){var h=f.length-1;switch(e){case 2:case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 3:(!Array.isArray(f[h])||f[h].length>0)&&f[h-1].push(f[h]),this.$=f[h-1];break;case 4:case 183:case 44:case 54:case 76:case 181:this.$=f[h];break;case 11:d.setDirection("TB"),this.$="TB";break;case 12:d.setDirection(f[h-1]),this.$=f[h-1];break;case 27:this.$=f[h-1].nodes;break;case 33:this.$=d.addSubGraph(f[h-6],f[h-1],f[h-4]);break;case 34:this.$=d.addSubGraph(f[h-3],f[h-1],f[h-3]);break;case 35:this.$=d.addSubGraph(void 0,f[h-1],void 0);break;case 37:this.$=f[h].trim(),d.setAccTitle(this.$);break;case 38:case 39:this.$=f[h].trim(),d.setAccDescription(this.$);break;case 43:case 133:this.$=f[h-1]+f[h];break;case 45:d.addVertex(f[h-1][f[h-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,f[h]),d.addLink(f[h-3].stmt,f[h-1],f[h-2]),this.$={stmt:f[h-1],nodes:f[h-1].concat(f[h-3].nodes)};break;case 46:d.addLink(f[h-2].stmt,f[h],f[h-1]),this.$={stmt:f[h],nodes:f[h].concat(f[h-2].nodes)};break;case 47:d.addLink(f[h-3].stmt,f[h-1],f[h-2]),this.$={stmt:f[h-1],nodes:f[h-1].concat(f[h-3].nodes)};break;case 48:this.$={stmt:f[h-1],nodes:f[h-1]};break;case 49:d.addVertex(f[h-1][f[h-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,f[h]),this.$={stmt:f[h-1],nodes:f[h-1],shapeData:f[h]};break;case 50:this.$={stmt:f[h],nodes:f[h]};break;case 51:case 128:case 130:this.$=[f[h]];break;case 52:d.addVertex(f[h-5][f[h-5].length-1],void 0,void 0,void 0,void 0,void 0,void 0,f[h-4]),this.$=f[h-5].concat(f[h]);break;case 53:this.$=f[h-4].concat(f[h]);break;case 55:this.$=f[h-2],d.setClass(f[h-2],f[h]);break;case 56:this.$=f[h-3],d.addVertex(f[h-3],f[h-1],"square");break;case 57:this.$=f[h-3],d.addVertex(f[h-3],f[h-1],"doublecircle");break;case 58:this.$=f[h-5],d.addVertex(f[h-5],f[h-2],"circle");break;case 59:this.$=f[h-3],d.addVertex(f[h-3],f[h-1],"ellipse");break;case 60:this.$=f[h-3],d.addVertex(f[h-3],f[h-1],"stadium");break;case 61:this.$=f[h-3],d.addVertex(f[h-3],f[h-1],"subroutine");break;case 62:this.$=f[h-7],d.addVertex(f[h-7],f[h-1],"rect",void 0,void 0,void 0,Object.fromEntries([[f[h-5],f[h-3]]]));break;case 63:this.$=f[h-3],d.addVertex(f[h-3],f[h-1],"cylinder");break;case 64:this.$=f[h-3],d.addVertex(f[h-3],f[h-1],"round");break;case 65:this.$=f[h-3],d.addVertex(f[h-3],f[h-1],"diamond");break;case 66:this.$=f[h-5],d.addVertex(f[h-5],f[h-2],"hexagon");break;case 67:this.$=f[h-3],d.addVertex(f[h-3],f[h-1],"odd");break;case 68:this.$=f[h-3],d.addVertex(f[h-3],f[h-1],"trapezoid");break;case 69:this.$=f[h-3],d.addVertex(f[h-3],f[h-1],"inv_trapezoid");break;case 70:this.$=f[h-3],d.addVertex(f[h-3],f[h-1],"lean_right");break;case 71:this.$=f[h-3],d.addVertex(f[h-3],f[h-1],"lean_left");break;case 72:this.$=f[h],d.addVertex(f[h]);break;case 73:f[h-1].text=f[h],this.$=f[h-1];break;case 74:case 75:f[h-2].text=f[h-1],this.$=f[h-2];break;case 77:var i=d.destructLink(f[h],f[h-2]);this.$={type:i.type,stroke:i.stroke,length:i.length,text:f[h-1]};break;case 78:var i=d.destructLink(f[h],f[h-2]);this.$={type:i.type,stroke:i.stroke,length:i.length,text:f[h-1],id:f[h-3]};break;case 79:case 86:case 101:case 103:this.$={text:f[h],type:"text"};break;case 80:case 87:case 102:this.$={text:f[h-1].text+""+f[h],type:f[h-1].type};break;case 81:case 88:this.$={text:f[h],type:"string"};break;case 82:case 89:case 104:this.$={text:f[h],type:"markdown"};break;case 83:var i=d.destructLink(f[h]);this.$={type:i.type,stroke:i.stroke,length:i.length};break;case 84:var i=d.destructLink(f[h]);this.$={type:i.type,stroke:i.stroke,length:i.length,id:f[h-1]};break;case 85:this.$=f[h-1];break;case 105:this.$=f[h-4],d.addClass(f[h-2],f[h]);break;case 106:this.$=f[h-4],d.setClass(f[h-2],f[h]);break;case 107:case 115:this.$=f[h-1],d.setClickEvent(f[h-1],f[h]);break;case 108:case 116:this.$=f[h-3],d.setClickEvent(f[h-3],f[h-2]),d.setTooltip(f[h-3],f[h]);break;case 109:this.$=f[h-2],d.setClickEvent(f[h-2],f[h-1],f[h]);break;case 110:this.$=f[h-4],d.setClickEvent(f[h-4],f[h-3],f[h-2]),d.setTooltip(f[h-4],f[h]);break;case 111:this.$=f[h-2],d.setLink(f[h-2],f[h]);break;case 112:this.$=f[h-4],d.setLink(f[h-4],f[h-2]),d.setTooltip(f[h-4],f[h]);break;case 113:this.$=f[h-4],d.setLink(f[h-4],f[h-2],f[h]);break;case 114:this.$=f[h-6],d.setLink(f[h-6],f[h-4],f[h]),d.setTooltip(f[h-6],f[h-2]);break;case 117:this.$=f[h-1],d.setLink(f[h-1],f[h]);break;case 118:this.$=f[h-3],d.setLink(f[h-3],f[h-2]),d.setTooltip(f[h-3],f[h]);break;case 119:this.$=f[h-3],d.setLink(f[h-3],f[h-2],f[h]);break;case 120:this.$=f[h-5],d.setLink(f[h-5],f[h-4],f[h]),d.setTooltip(f[h-5],f[h-2]);break;case 121:this.$=f[h-4],d.addVertex(f[h-2],void 0,void 0,f[h]);break;case 122:this.$=f[h-4],d.updateLink([f[h-2]],f[h]);break;case 123:this.$=f[h-4],d.updateLink(f[h-2],f[h]);break;case 124:this.$=f[h-8],d.updateLinkInterpolate([f[h-6]],f[h-2]),d.updateLink([f[h-6]],f[h]);break;case 125:this.$=f[h-8],d.updateLinkInterpolate(f[h-6],f[h-2]),d.updateLink(f[h-6],f[h]);break;case 126:this.$=f[h-6],d.updateLinkInterpolate([f[h-4]],f[h]);break;case 127:this.$=f[h-6],d.updateLinkInterpolate(f[h-4],f[h]);break;case 129:case 131:f[h-2].push(f[h]),this.$=f[h-2];break;case 182:case 184:this.$=f[h-1]+""+f[h];break;case 185:this.$={stmt:"dir",value:"TB"};break;case 186:this.$={stmt:"dir",value:"BT"};break;case 187:this.$={stmt:"dir",value:"RL"};break;case 188:this.$={stmt:"dir",value:"LR"}}},"anonymous"),table:[{3:1,4:2,9:b,10:c,12:d},{1:[3]},a(e,f,{5:6}),{4:7,9:b,10:c,12:d},{4:8,9:b,10:c,12:d},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:g,9:h,10:i,11:j,20:17,22:18,23:19,24:20,25:21,26:22,27:l,33:24,34:m,36:n,38:o,42:28,43:38,44:p,45:39,47:40,60:q,84:r,85:s,86:t,87:u,88:v,89:w,102:x,105:y,106:z,109:A,111:B,113:41,114:C,115:D,116:E,121:F,122:G,123:H,124:I},a(e,[2,9]),a(e,[2,10]),a(e,[2,11]),{8:[1,54],9:[1,55],10:J,15:53,18:56},a(K,[2,3]),a(K,[2,4]),a(K,[2,5]),a(K,[2,6]),a(K,[2,7]),a(K,[2,8]),{8:L,9:M,11:N,21:58,41:59,72:63,75:[1,64],77:[1,66],78:[1,65]},{8:L,9:M,11:N,21:67},{8:L,9:M,11:N,21:68},{8:L,9:M,11:N,21:69},{8:L,9:M,11:N,21:70},{8:L,9:M,11:N,21:71},{8:L,9:M,10:[1,72],11:N,21:73},a(K,[2,36]),{35:[1,74]},{37:[1,75]},a(K,[2,39]),a(O,[2,50],{18:76,39:77,10:J,40:P}),{10:[1,79]},{10:[1,80]},{10:[1,81]},{10:[1,82]},{14:Q,44:R,60:S,80:[1,86],89:T,95:[1,83],97:[1,84],101:85,105:U,106:V,109:W,111:X,114:Y,115:Z,116:$,120:87},a(K,[2,185]),a(K,[2,186]),a(K,[2,187]),a(K,[2,188]),a(_,[2,51]),a(_,[2,54],{46:[1,99]}),a(aa,[2,72],{113:112,29:[1,100],44:p,48:[1,101],50:[1,102],52:[1,103],54:[1,104],56:[1,105],58:[1,106],60:q,63:[1,107],65:[1,108],67:[1,109],68:[1,110],70:[1,111],89:w,102:x,105:y,106:z,109:A,111:B,114:C,115:D,116:E}),a(ab,[2,181]),a(ab,[2,142]),a(ab,[2,143]),a(ab,[2,144]),a(ab,[2,145]),a(ab,[2,146]),a(ab,[2,147]),a(ab,[2,148]),a(ab,[2,149]),a(ab,[2,150]),a(ab,[2,151]),a(ab,[2,152]),a(e,[2,12]),a(e,[2,18]),a(e,[2,19]),{9:[1,113]},a(ac,[2,26],{18:114,10:J}),a(K,[2,27]),{42:115,43:38,44:p,45:39,47:40,60:q,89:w,102:x,105:y,106:z,109:A,111:B,113:41,114:C,115:D,116:E},a(K,[2,40]),a(K,[2,41]),a(K,[2,42]),a(ad,[2,76],{73:116,62:[1,118],74:[1,117]}),{76:119,79:120,80:ae,81:af,116:ag,119:ah},{75:[1,125],77:[1,126]},a(ai,[2,83]),a(K,[2,28]),a(K,[2,29]),a(K,[2,30]),a(K,[2,31]),a(K,[2,32]),{10:aj,12:ak,14:al,27:am,28:127,32:an,44:ao,60:ap,75:aq,80:[1,129],81:[1,130],83:140,84:ar,85:as,86:at,87:au,88:av,89:aw,90:ax,91:128,105:ay,109:az,111:aA,114:aB,115:aC,116:aD},a(aE,f,{5:153}),a(K,[2,37]),a(K,[2,38]),a(O,[2,48],{44:aF}),a(O,[2,49],{18:155,10:J,40:aG}),a(_,[2,44]),{44:p,47:157,60:q,89:w,102:x,105:y,106:z,109:A,111:B,113:41,114:C,115:D,116:E},{102:[1,158],103:159,105:[1,160]},{44:p,47:161,60:q,89:w,102:x,105:y,106:z,109:A,111:B,113:41,114:C,115:D,116:E},{44:p,47:162,60:q,89:w,102:x,105:y,106:z,109:A,111:B,113:41,114:C,115:D,116:E},a(aH,[2,107],{10:[1,163],96:[1,164]}),{80:[1,165]},a(aH,[2,115],{120:167,10:[1,166],14:Q,44:R,60:S,89:T,105:U,106:V,109:W,111:X,114:Y,115:Z,116:$}),a(aH,[2,117],{10:[1,168]}),a(aI,[2,183]),a(aI,[2,170]),a(aI,[2,171]),a(aI,[2,172]),a(aI,[2,173]),a(aI,[2,174]),a(aI,[2,175]),a(aI,[2,176]),a(aI,[2,177]),a(aI,[2,178]),a(aI,[2,179]),a(aI,[2,180]),{44:p,47:169,60:q,89:w,102:x,105:y,106:z,109:A,111:B,113:41,114:C,115:D,116:E},{30:170,67:aJ,80:aK,81:aL,82:171,116:aM,117:aN,118:aO},{30:178,67:aJ,80:aK,81:aL,82:171,116:aM,117:aN,118:aO},{30:180,50:[1,179],67:aJ,80:aK,81:aL,82:171,116:aM,117:aN,118:aO},{30:181,67:aJ,80:aK,81:aL,82:171,116:aM,117:aN,118:aO},{30:182,67:aJ,80:aK,81:aL,82:171,116:aM,117:aN,118:aO},{30:183,67:aJ,80:aK,81:aL,82:171,116:aM,117:aN,118:aO},{109:[1,184]},{30:185,67:aJ,80:aK,81:aL,82:171,116:aM,117:aN,118:aO},{30:186,65:[1,187],67:aJ,80:aK,81:aL,82:171,116:aM,117:aN,118:aO},{30:188,67:aJ,80:aK,81:aL,82:171,116:aM,117:aN,118:aO},{30:189,67:aJ,80:aK,81:aL,82:171,116:aM,117:aN,118:aO},{30:190,67:aJ,80:aK,81:aL,82:171,116:aM,117:aN,118:aO},a(ab,[2,182]),a(e,[2,20]),a(ac,[2,25]),a(O,[2,46],{39:191,18:192,10:J,40:P}),a(ad,[2,73],{10:[1,193]}),{10:[1,194]},{30:195,67:aJ,80:aK,81:aL,82:171,116:aM,117:aN,118:aO},{77:[1,196],79:197,116:ag,119:ah},a(aP,[2,79]),a(aP,[2,81]),a(aP,[2,82]),a(aP,[2,168]),a(aP,[2,169]),{76:198,79:120,80:ae,81:af,116:ag,119:ah},a(ai,[2,84]),{8:L,9:M,10:aj,11:N,12:ak,14:al,21:200,27:am,29:[1,199],32:an,44:ao,60:ap,75:aq,83:140,84:ar,85:as,86:at,87:au,88:av,89:aw,90:ax,91:201,105:ay,109:az,111:aA,114:aB,115:aC,116:aD},a(aQ,[2,101]),a(aQ,[2,103]),a(aQ,[2,104]),a(aQ,[2,157]),a(aQ,[2,158]),a(aQ,[2,159]),a(aQ,[2,160]),a(aQ,[2,161]),a(aQ,[2,162]),a(aQ,[2,163]),a(aQ,[2,164]),a(aQ,[2,165]),a(aQ,[2,166]),a(aQ,[2,167]),a(aQ,[2,90]),a(aQ,[2,91]),a(aQ,[2,92]),a(aQ,[2,93]),a(aQ,[2,94]),a(aQ,[2,95]),a(aQ,[2,96]),a(aQ,[2,97]),a(aQ,[2,98]),a(aQ,[2,99]),a(aQ,[2,100]),{6:11,7:12,8:g,9:h,10:i,11:j,20:17,22:18,23:19,24:20,25:21,26:22,27:l,32:[1,202],33:24,34:m,36:n,38:o,42:28,43:38,44:p,45:39,47:40,60:q,84:r,85:s,86:t,87:u,88:v,89:w,102:x,105:y,106:z,109:A,111:B,113:41,114:C,115:D,116:E,121:F,122:G,123:H,124:I},{10:J,18:203},{44:[1,204]},a(_,[2,43]),{10:[1,205],44:p,60:q,89:w,102:x,105:y,106:z,109:A,111:B,113:112,114:C,115:D,116:E},{10:[1,206]},{10:[1,207],106:[1,208]},a(aR,[2,128]),{10:[1,209],44:p,60:q,89:w,102:x,105:y,106:z,109:A,111:B,113:112,114:C,115:D,116:E},{10:[1,210],44:p,60:q,89:w,102:x,105:y,106:z,109:A,111:B,113:112,114:C,115:D,116:E},{80:[1,211]},a(aH,[2,109],{10:[1,212]}),a(aH,[2,111],{10:[1,213]}),{80:[1,214]},a(aI,[2,184]),{80:[1,215],98:[1,216]},a(_,[2,55],{113:112,44:p,60:q,89:w,102:x,105:y,106:z,109:A,111:B,114:C,115:D,116:E}),{31:[1,217],67:aJ,82:218,116:aM,117:aN,118:aO},a(aS,[2,86]),a(aS,[2,88]),a(aS,[2,89]),a(aS,[2,153]),a(aS,[2,154]),a(aS,[2,155]),a(aS,[2,156]),{49:[1,219],67:aJ,82:218,116:aM,117:aN,118:aO},{30:220,67:aJ,80:aK,81:aL,82:171,116:aM,117:aN,118:aO},{51:[1,221],67:aJ,82:218,116:aM,117:aN,118:aO},{53:[1,222],67:aJ,82:218,116:aM,117:aN,118:aO},{55:[1,223],67:aJ,82:218,116:aM,117:aN,118:aO},{57:[1,224],67:aJ,82:218,116:aM,117:aN,118:aO},{60:[1,225]},{64:[1,226],67:aJ,82:218,116:aM,117:aN,118:aO},{66:[1,227],67:aJ,82:218,116:aM,117:aN,118:aO},{30:228,67:aJ,80:aK,81:aL,82:171,116:aM,117:aN,118:aO},{31:[1,229],67:aJ,82:218,116:aM,117:aN,118:aO},{67:aJ,69:[1,230],71:[1,231],82:218,116:aM,117:aN,118:aO},{67:aJ,69:[1,233],71:[1,232],82:218,116:aM,117:aN,118:aO},a(O,[2,45],{18:155,10:J,40:aG}),a(O,[2,47],{44:aF}),a(ad,[2,75]),a(ad,[2,74]),{62:[1,234],67:aJ,82:218,116:aM,117:aN,118:aO},a(ad,[2,77]),a(aP,[2,80]),{77:[1,235],79:197,116:ag,119:ah},{30:236,67:aJ,80:aK,81:aL,82:171,116:aM,117:aN,118:aO},a(aE,f,{5:237}),a(aQ,[2,102]),a(K,[2,35]),{43:238,44:p,45:39,47:40,60:q,89:w,102:x,105:y,106:z,109:A,111:B,113:41,114:C,115:D,116:E},{10:J,18:239},{10:aT,60:aU,84:aV,92:240,105:aW,107:241,108:242,109:aX,110:aY,111:aZ,112:a$},{10:aT,60:aU,84:aV,92:251,104:[1,252],105:aW,107:241,108:242,109:aX,110:aY,111:aZ,112:a$},{10:aT,60:aU,84:aV,92:253,104:[1,254],105:aW,107:241,108:242,109:aX,110:aY,111:aZ,112:a$},{105:[1,255]},{10:aT,60:aU,84:aV,92:256,105:aW,107:241,108:242,109:aX,110:aY,111:aZ,112:a$},{44:p,47:257,60:q,89:w,102:x,105:y,106:z,109:A,111:B,113:41,114:C,115:D,116:E},a(aH,[2,108]),{80:[1,258]},{80:[1,259],98:[1,260]},a(aH,[2,116]),a(aH,[2,118],{10:[1,261]}),a(aH,[2,119]),a(aa,[2,56]),a(aS,[2,87]),a(aa,[2,57]),{51:[1,262],67:aJ,82:218,116:aM,117:aN,118:aO},a(aa,[2,64]),a(aa,[2,59]),a(aa,[2,60]),a(aa,[2,61]),{109:[1,263]},a(aa,[2,63]),a(aa,[2,65]),{66:[1,264],67:aJ,82:218,116:aM,117:aN,118:aO},a(aa,[2,67]),a(aa,[2,68]),a(aa,[2,70]),a(aa,[2,69]),a(aa,[2,71]),a([10,44,60,89,102,105,106,109,111,114,115,116],[2,85]),a(ad,[2,78]),{31:[1,265],67:aJ,82:218,116:aM,117:aN,118:aO},{6:11,7:12,8:g,9:h,10:i,11:j,20:17,22:18,23:19,24:20,25:21,26:22,27:l,32:[1,266],33:24,34:m,36:n,38:o,42:28,43:38,44:p,45:39,47:40,60:q,84:r,85:s,86:t,87:u,88:v,89:w,102:x,105:y,106:z,109:A,111:B,113:41,114:C,115:D,116:E,121:F,122:G,123:H,124:I},a(_,[2,53]),{43:267,44:p,45:39,47:40,60:q,89:w,102:x,105:y,106:z,109:A,111:B,113:41,114:C,115:D,116:E},a(aH,[2,121],{106:a_}),a(a0,[2,130],{108:269,10:aT,60:aU,84:aV,105:aW,109:aX,110:aY,111:aZ,112:a$}),a(a1,[2,132]),a(a1,[2,134]),a(a1,[2,135]),a(a1,[2,136]),a(a1,[2,137]),a(a1,[2,138]),a(a1,[2,139]),a(a1,[2,140]),a(a1,[2,141]),a(aH,[2,122],{106:a_}),{10:[1,270]},a(aH,[2,123],{106:a_}),{10:[1,271]},a(aR,[2,129]),a(aH,[2,105],{106:a_}),a(aH,[2,106],{113:112,44:p,60:q,89:w,102:x,105:y,106:z,109:A,111:B,114:C,115:D,116:E}),a(aH,[2,110]),a(aH,[2,112],{10:[1,272]}),a(aH,[2,113]),{98:[1,273]},{51:[1,274]},{62:[1,275]},{66:[1,276]},{8:L,9:M,11:N,21:277},a(K,[2,34]),a(_,[2,52]),{10:aT,60:aU,84:aV,105:aW,107:278,108:242,109:aX,110:aY,111:aZ,112:a$},a(a1,[2,133]),{14:Q,44:R,60:S,89:T,101:279,105:U,106:V,109:W,111:X,114:Y,115:Z,116:$,120:87},{14:Q,44:R,60:S,89:T,101:280,105:U,106:V,109:W,111:X,114:Y,115:Z,116:$,120:87},{98:[1,281]},a(aH,[2,120]),a(aa,[2,58]),{30:282,67:aJ,80:aK,81:aL,82:171,116:aM,117:aN,118:aO},a(aa,[2,66]),a(aE,f,{5:283}),a(a0,[2,131],{108:269,10:aT,60:aU,84:aV,105:aW,109:aX,110:aY,111:aZ,112:a$}),a(aH,[2,126],{120:167,10:[1,284],14:Q,44:R,60:S,89:T,105:U,106:V,109:W,111:X,114:Y,115:Z,116:$}),a(aH,[2,127],{120:167,10:[1,285],14:Q,44:R,60:S,89:T,105:U,106:V,109:W,111:X,114:Y,115:Z,116:$}),a(aH,[2,114]),{31:[1,286],67:aJ,82:218,116:aM,117:aN,118:aO},{6:11,7:12,8:g,9:h,10:i,11:j,20:17,22:18,23:19,24:20,25:21,26:22,27:l,32:[1,287],33:24,34:m,36:n,38:o,42:28,43:38,44:p,45:39,47:40,60:q,84:r,85:s,86:t,87:u,88:v,89:w,102:x,105:y,106:z,109:A,111:B,113:41,114:C,115:D,116:E,121:F,122:G,123:H,124:I},{10:aT,60:aU,84:aV,92:288,105:aW,107:241,108:242,109:aX,110:aY,111:aZ,112:a$},{10:aT,60:aU,84:aV,92:289,105:aW,107:241,108:242,109:aX,110:aY,111:aZ,112:a$},a(aa,[2,62]),a(K,[2,33]),a(aH,[2,124],{106:a_}),a(aH,[2,125],{106:a_})],defaultActions:{},parseError:(0,k.K2)(function(a,b){if(b.recoverable)this.trace(a);else{var c=Error(a);throw c.hash=b,c}},"parseError"),parse:(0,k.K2)(function(a){var b=this,c=[0],d=[],e=[null],f=[],g=this.table,h="",i=0,j=0,l=0,m=f.slice.call(arguments,1),n=Object.create(this.lexer),o={};for(var p in this.yy)Object.prototype.hasOwnProperty.call(this.yy,p)&&(o[p]=this.yy[p]);n.setInput(a,o),o.lexer=n,o.parser=this,void 0===n.yylloc&&(n.yylloc={});var q=n.yylloc;f.push(q);var r=n.options&&n.options.ranges;function s(){var a;return"number"!=typeof(a=d.pop()||n.lex()||1)&&(a instanceof Array&&(a=(d=a).pop()),a=b.symbols_[a]||a),a}"function"==typeof o.parseError?this.parseError=o.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,k.K2)(function(a){c.length=c.length-2*a,e.length=e.length-a,f.length=f.length-a},"popStack"),(0,k.K2)(s,"lex");for(var t,u,v,w,x,y,z,A,B,C={};;){if(v=c[c.length-1],this.defaultActions[v]?w=this.defaultActions[v]:(null==t&&(t=s()),w=g[v]&&g[v][t]),void 0===w||!w.length||!w[0]){var D="";for(y in B=[],g[v])this.terminals_[y]&&y>2&&B.push("'"+this.terminals_[y]+"'");D=n.showPosition?"Parse error on line "+(i+1)+":\n"+n.showPosition()+"\nExpecting "+B.join(", ")+", got '"+(this.terminals_[t]||t)+"'":"Parse error on line "+(i+1)+": Unexpected "+(1==t?"end of input":"'"+(this.terminals_[t]||t)+"'"),this.parseError(D,{text:n.match,token:this.terminals_[t]||t,line:n.yylineno,loc:q,expected:B})}if(w[0]instanceof Array&&w.length>1)throw Error("Parse Error: multiple actions possible at state: "+v+", token: "+t);switch(w[0]){case 1:c.push(t),e.push(n.yytext),f.push(n.yylloc),c.push(w[1]),t=null,u?(t=u,u=null):(j=n.yyleng,h=n.yytext,i=n.yylineno,q=n.yylloc,l>0&&l--);break;case 2:if(z=this.productions_[w[1]][1],C.$=e[e.length-z],C._$={first_line:f[f.length-(z||1)].first_line,last_line:f[f.length-1].last_line,first_column:f[f.length-(z||1)].first_column,last_column:f[f.length-1].last_column},r&&(C._$.range=[f[f.length-(z||1)].range[0],f[f.length-1].range[1]]),void 0!==(x=this.performAction.apply(C,[h,j,i,o,w[1],e,f].concat(m))))return x;z&&(c=c.slice(0,-1*z*2),e=e.slice(0,-1*z),f=f.slice(0,-1*z)),c.push(this.productions_[w[1]][0]),e.push(C.$),f.push(C._$),A=g[c[c.length-2]][c[c.length-1]],c.push(A);break;case 3:return!0}}return!0},"parse")};function a3(){this.yy={}}return a2.lexer={EOF:1,parseError:(0,k.K2)(function(a,b){if(this.yy.parser)this.yy.parser.parseError(a,b);else throw Error(a)},"parseError"),setInput:(0,k.K2)(function(a,b){return this.yy=b||this.yy||{},this._input=a,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:(0,k.K2)(function(){var a=this._input[0];return this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a,a.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),a},"input"),unput:(0,k.K2)(function(a){var b=a.length,c=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-b),this.offset-=b;var d=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var e=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===d.length?this.yylloc.first_column:0)+d[d.length-c.length].length-c[0].length:this.yylloc.first_column-b},this.options.ranges&&(this.yylloc.range=[e[0],e[0]+this.yyleng-b]),this.yyleng=this.yytext.length,this},"unput"),more:(0,k.K2)(function(){return this._more=!0,this},"more"),reject:(0,k.K2)(function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"reject"),less:(0,k.K2)(function(a){this.unput(this.match.slice(a))},"less"),pastInput:(0,k.K2)(function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,k.K2)(function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,k.K2)(function(){var a=this.pastInput(),b=Array(a.length+1).join("-");return a+this.upcomingInput()+"\n"+b+"^"},"showPosition"),test_match:(0,k.K2)(function(a,b){var c,d,e;if(this.options.backtrack_lexer&&(e={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(e.yylloc.range=this.yylloc.range.slice(0))),(d=a[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=d.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:d?d[d.length-1].length-d[d.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+a[0].length},this.yytext+=a[0],this.match+=a[0],this.matches=a,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(a[0].length),this.matched+=a[0],c=this.performAction.call(this,this.yy,this,b,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),c)return c;if(this._backtrack)for(var f in e)this[f]=e[f];return!1},"test_match"),next:(0,k.K2)(function(){if(this.done)return this.EOF;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var a,b,c,d,e=this._currentRules(),f=0;f<e.length;f++)if((c=this._input.match(this.rules[e[f]]))&&(!b||c[0].length>b[0].length)){if(b=c,d=f,this.options.backtrack_lexer){if(!1!==(a=this.test_match(c,e[f])))return a;if(!this._backtrack)return!1;b=!1;continue}if(!this.options.flex)break}return b?!1!==(a=this.test_match(b,e[d]))&&a:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:(0,k.K2)(function(){var a=this.next();return a||this.lex()},"lex"),begin:(0,k.K2)(function(a){this.conditionStack.push(a)},"begin"),popState:(0,k.K2)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,k.K2)(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:(0,k.K2)(function(a){return(a=this.conditionStack.length-1-Math.abs(a||0))>=0?this.conditionStack[a]:"INITIAL"},"topState"),pushState:(0,k.K2)(function(a){this.begin(a)},"pushState"),stateStackSize:(0,k.K2)(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:(0,k.K2)(function(a,b,c,d){switch(c){case 0:return this.begin("acc_title"),34;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),36;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:case 12:case 14:case 17:case 20:case 23:case 33:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return this.pushState("shapeData"),b.yytext="",40;case 8:return this.pushState("shapeDataStr"),40;case 9:return this.popState(),40;case 10:return b.yytext=b.yytext.replace(/\n\s*/g,"<br/>"),40;case 11:return 40;case 13:this.begin("callbackname");break;case 15:this.popState(),this.begin("callbackargs");break;case 16:return 95;case 18:return 96;case 19:return"MD_STR";case 21:this.begin("md_string");break;case 22:return"STR";case 24:this.pushState("string");break;case 25:return 84;case 26:return 102;case 27:return 85;case 28:return 104;case 29:return 86;case 30:return 87;case 31:return 97;case 32:this.begin("click");break;case 34:return 88;case 35:case 36:case 37:return a.lex.firstGraph()&&this.begin("dir"),12;case 38:return 27;case 39:return 32;case 40:case 41:case 42:case 43:return 98;case 44:return this.popState(),13;case 45:case 46:case 47:case 48:case 49:case 50:case 51:case 52:case 53:case 54:return this.popState(),14;case 55:return 121;case 56:return 122;case 57:return 123;case 58:return 124;case 59:return 78;case 60:return 105;case 61:case 102:return 111;case 62:return 46;case 63:return 60;case 64:case 103:return 44;case 65:return 8;case 66:return 106;case 67:case 101:return 115;case 68:case 71:case 74:return this.popState(),77;case 69:return this.pushState("edgeText"),75;case 70:case 73:case 76:return 119;case 72:return this.pushState("thickEdgeText"),75;case 75:return this.pushState("dottedEdgeText"),75;case 77:return 77;case 78:return this.popState(),53;case 79:case 115:return"TEXT";case 80:return this.pushState("ellipseText"),52;case 81:return this.popState(),55;case 82:return this.pushState("text"),54;case 83:return this.popState(),57;case 84:return this.pushState("text"),56;case 85:return 58;case 86:return this.pushState("text"),67;case 87:return this.popState(),64;case 88:return this.pushState("text"),63;case 89:return this.popState(),49;case 90:return this.pushState("text"),48;case 91:return this.popState(),69;case 92:return this.popState(),71;case 93:return 117;case 94:return this.pushState("trapText"),68;case 95:return this.pushState("trapText"),70;case 96:return 118;case 97:return 67;case 98:return 90;case 99:return"SEP";case 100:return 89;case 104:return 109;case 105:return 114;case 106:return 116;case 107:return this.popState(),62;case 108:return this.pushState("text"),62;case 109:return this.popState(),51;case 110:return this.pushState("text"),50;case 111:return this.popState(),31;case 112:return this.pushState("text"),29;case 113:return this.popState(),66;case 114:return this.pushState("text"),65;case 116:return"QUOTE";case 117:return 9;case 118:return 10;case 119:return 11}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:@\{)/,/^(?:["])/,/^(?:["])/,/^(?:[^\"]+)/,/^(?:[^}^"]+)/,/^(?:\})/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["][`])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:["])/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:href[\s])/,/^(?:click[\s]+)/,/^(?:[\s\n])/,/^(?:[^\s\n]*)/,/^(?:flowchart-elk\b)/,/^(?:graph\b)/,/^(?:flowchart\b)/,/^(?:subgraph\b)/,/^(?:end\b\s*)/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:(\r?\n)*\s*\n)/,/^(?:\s*LR\b)/,/^(?:\s*RL\b)/,/^(?:\s*TB\b)/,/^(?:\s*BT\b)/,/^(?:\s*TD\b)/,/^(?:\s*BR\b)/,/^(?:\s*<)/,/^(?:\s*>)/,/^(?:\s*\^)/,/^(?:\s*v\b)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:[^\s\"]+@(?=[^\{\"]))/,/^(?:[0-9]+)/,/^(?:#)/,/^(?::::)/,/^(?::)/,/^(?:&)/,/^(?:;)/,/^(?:,)/,/^(?:\*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:[^-]|-(?!-)+)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:[^=]|=(?!))/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:[^\.]|\.(?!))/,/^(?:\s*~~[\~]+\s*)/,/^(?:[-/\)][\)])/,/^(?:[^\(\)\[\]\{\}]|!\)+)/,/^(?:\(-)/,/^(?:\]\))/,/^(?:\(\[)/,/^(?:\]\])/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:>)/,/^(?:\)\])/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\(\(\()/,/^(?:[\\(?=\])][\]])/,/^(?:\/(?=\])\])/,/^(?:\/(?!\])|\\(?!\])|[^\\\[\]\(\)\{\}\/]+)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:\\\|)/,/^(?:v\b)/,/^(?:\*)/,/^(?:#)/,/^(?:&)/,/^(?:([A-Za-z0-9!"\#$%&'*+\.`?\\_\/]|-(?=[^\>\-\.])|(?!))+)/,/^(?:-)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03