@turmind/halo 2.1.1 → 2.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (155) hide show
  1. package/README.md +0 -1
  2. package/admin-out/404.html +1 -1
  3. package/admin-out/_next/static/chunks/0.700b96fc96b80936.js +1 -0
  4. package/admin-out/_next/static/chunks/1101-d2f818895a3aa32e.js +1 -0
  5. package/admin-out/_next/static/chunks/1160.e199e2decb964814.js +1 -0
  6. package/admin-out/_next/static/chunks/1208.0d86b06cbdf8a97e.js +38 -0
  7. package/admin-out/_next/static/chunks/1299.9ae1e73c8ca9cc34.js +23 -0
  8. package/admin-out/_next/static/chunks/1336.3eb7654fcfae2a58.js +1 -0
  9. package/admin-out/_next/static/chunks/1494.56493f36b01d2bda.js +1 -0
  10. package/admin-out/_next/static/chunks/1522.7d80e505c25fc865.js +1 -0
  11. package/admin-out/_next/static/chunks/1650.78e7ab21cb8bbb48.js +62 -0
  12. package/admin-out/_next/static/chunks/1690.20f8661b1877aa3d.js +1 -0
  13. package/admin-out/_next/static/chunks/1807.764b0338b13846a5.js +1 -0
  14. package/admin-out/_next/static/chunks/1989-3aeeefebf77a40f3.js +1 -0
  15. package/admin-out/_next/static/chunks/199.fca450ee70f089fb.js +1 -0
  16. package/admin-out/_next/static/chunks/1b86ba38-4193816aebc732b9.js +1 -0
  17. package/admin-out/_next/static/chunks/{1d2d5650-d8d130c85727fdbb.js → 1d2d5650-c677408087984c7a.js} +1 -1
  18. package/admin-out/_next/static/chunks/2202.59a95bacad0d8c25.js +1 -0
  19. package/admin-out/_next/static/chunks/2204.93c869dacb19e384.js +1 -0
  20. package/admin-out/_next/static/chunks/2329.2f32de914b104261.js +148 -0
  21. package/admin-out/_next/static/chunks/2449.53d632fa8e412643.js +1 -0
  22. package/admin-out/_next/static/chunks/2477.79f2f92780311a37.js +94 -0
  23. package/admin-out/_next/static/chunks/2555.279979b7abe9d67f.js +104 -0
  24. package/admin-out/_next/static/chunks/2612.427656205dd7d7cc.js +1 -0
  25. package/admin-out/_next/static/chunks/2938.1555d68665415ace.js +1 -0
  26. package/admin-out/_next/static/chunks/295.0ef9b18be46f06e5.js +1 -0
  27. package/admin-out/_next/static/chunks/2979.d5a2293e776ec5de.js +1 -0
  28. package/admin-out/_next/static/chunks/3023.8f2b6311aae80029.js +36 -0
  29. package/admin-out/_next/static/chunks/3047.a49ae982be1f9fd4.js +226 -0
  30. package/admin-out/_next/static/chunks/304eda7d.2c6ab1276b03c10a.js +1 -0
  31. package/admin-out/_next/static/chunks/3483.cb8f5ba28c565e7f.js +1 -0
  32. package/admin-out/_next/static/chunks/391.71124432b84c926d.js +24 -0
  33. package/admin-out/_next/static/chunks/3986.a6181916d2c44515.js +1 -0
  34. package/admin-out/_next/static/chunks/4120.c271dfe3e1bc082e.js +1 -0
  35. package/admin-out/_next/static/chunks/4267.030877aaeac1bd71.js +1 -0
  36. package/admin-out/_next/static/chunks/4362.9d2ee4f9b6facc49.js +1 -0
  37. package/admin-out/_next/static/chunks/43ad6dab.4911ea318c123311.js +62 -0
  38. package/admin-out/_next/static/chunks/4613.0985db499409cf22.js +1 -0
  39. package/admin-out/_next/static/chunks/4794.ba746110cfcbf536.js +1 -0
  40. package/admin-out/_next/static/chunks/4808.1cbe5b52fa01fc3d.js +1 -0
  41. package/admin-out/_next/static/chunks/4ec056c8.fe288ac8bd38a73b.js +160 -0
  42. package/admin-out/_next/static/chunks/5056.a87b1e056ba592b1.js +32 -0
  43. package/admin-out/_next/static/chunks/5058.8514aa6d6a947cce.js +1 -0
  44. package/admin-out/_next/static/chunks/545.e760052f10d36a9b.js +1 -0
  45. package/admin-out/_next/static/chunks/{510.e6c6faeb60ef3c33.js → 5510.f3889206b5768b33.js} +1 -1
  46. package/admin-out/_next/static/chunks/5593.d4c5f6a0862b4c6c.js +34 -0
  47. package/admin-out/_next/static/chunks/5700.4189184227fcf178.js +1 -0
  48. package/admin-out/_next/static/chunks/5741.dd7360163a2374cf.js +8 -0
  49. package/admin-out/_next/static/chunks/5850.b58c01f1e835d335.js +1 -0
  50. package/admin-out/_next/static/chunks/6066.1571d105977d528c.js +86 -0
  51. package/admin-out/_next/static/chunks/61527465.ae14a459dbfc381c.js +1 -0
  52. package/admin-out/_next/static/chunks/6203.672c38fcc2748c83.js +1 -0
  53. package/admin-out/_next/static/chunks/6390.4de9361c493b8d29.js +27 -0
  54. package/admin-out/_next/static/chunks/63c91ae9.ed896f9d6d01dfd4.js +1 -0
  55. package/admin-out/_next/static/chunks/6476.c7ec7d60350855c8.js +1 -0
  56. package/admin-out/_next/static/chunks/6574.30661d21e54bb004.js +1 -0
  57. package/admin-out/_next/static/chunks/6694.91c424de10ee2a24.js +79 -0
  58. package/admin-out/_next/static/chunks/6927.7f60d259473bb56a.js +193 -0
  59. package/admin-out/_next/static/chunks/7073.9d5f9dd7a77827b7.js +1 -0
  60. package/admin-out/_next/static/chunks/7250.a005173b9af23f14.js +1 -0
  61. package/admin-out/_next/static/chunks/7267.09e9b83beadc4847.js +1 -0
  62. package/admin-out/_next/static/chunks/72d2e465.c6751b76f1fa1cb3.js +1 -0
  63. package/admin-out/_next/static/chunks/7423.ce958b2d6a455a2f.js +1 -0
  64. package/admin-out/_next/static/chunks/7443.ee6684ba397e49da.js +41 -0
  65. package/admin-out/_next/static/chunks/7482.7f6f11637c008b77.js +1 -0
  66. package/admin-out/_next/static/chunks/7498.621ff3bc139607ad.js +1 -0
  67. package/admin-out/_next/static/chunks/7573.7f7f2a6fe7891e68.js +1 -0
  68. package/admin-out/_next/static/chunks/7613.fe24922a6a839656.js +1 -0
  69. package/admin-out/_next/static/chunks/7796.052a2a69f9bc0471.js +287 -0
  70. package/admin-out/_next/static/chunks/8148.156aea8f2a9ce398.js +115 -0
  71. package/admin-out/_next/static/chunks/8300.6c86a2236d42618f.js +64 -0
  72. package/admin-out/_next/static/chunks/8555.2e8d51736bfefd63.js +1 -0
  73. package/admin-out/_next/static/chunks/8558.baa0cf80a6964d20.js +286 -0
  74. package/admin-out/_next/static/chunks/8608.dba2a172fa47a740.js +77 -0
  75. package/admin-out/_next/static/chunks/8680.ed502a4a22357230.js +92 -0
  76. package/admin-out/_next/static/chunks/8698.28ca7821a30dba63.js +1 -0
  77. package/admin-out/_next/static/chunks/8712.e587efd8a6256aa9.js +1 -0
  78. package/admin-out/_next/static/chunks/8771.53592f31c08edafa.js +309 -0
  79. package/admin-out/_next/static/chunks/8878.330238d3d9f33faf.js +1 -0
  80. package/admin-out/_next/static/chunks/8892.9df3095f6c52e734.js +1 -0
  81. package/admin-out/_next/static/chunks/9104.6d57df418831714a.js +74 -0
  82. package/admin-out/_next/static/chunks/9121.574e833259fe9085.js +1 -0
  83. package/admin-out/_next/static/chunks/9142.0aac6a6c8e06bcaa.js +149 -0
  84. package/admin-out/_next/static/chunks/9180.3c809798364a0c62.js +1 -0
  85. package/admin-out/_next/static/chunks/92.788f49cdb265a668.js +217 -0
  86. package/admin-out/_next/static/chunks/9590.3e1a4754a7e66e84.js +93 -0
  87. package/admin-out/_next/static/chunks/9599.b2fd519c8a2951c9.js +1 -0
  88. package/admin-out/_next/static/chunks/9698-0157e7ac70c3f9fc.js +1 -0
  89. package/admin-out/_next/static/chunks/9837.92abff094b289f98.js +1 -0
  90. package/admin-out/_next/static/chunks/9839.73433bbeec6e1a51.js +1 -0
  91. package/admin-out/_next/static/chunks/9868.dcc9fd5f0041ffa8.js +1 -0
  92. package/admin-out/_next/static/chunks/9937.cff3c28655b07c61.js +24 -0
  93. package/admin-out/_next/static/chunks/a89fe872.304b3efb308b10a1.js +122 -0
  94. package/admin-out/_next/static/chunks/app/_not-found/page-e21cd35ca818a886.js +1 -0
  95. package/admin-out/_next/static/chunks/app/layout-0ed29966e0abc26b.js +1 -0
  96. package/admin-out/_next/static/chunks/app/page-ee29d11e13ec576e.js +1 -0
  97. package/admin-out/_next/static/chunks/bf5d185f.735c9f3d05199f97.js +1 -0
  98. package/admin-out/_next/static/chunks/db534642.8e8a9023cd90863d.js +1 -0
  99. package/admin-out/_next/static/chunks/fcb912be.a7d93c5f2dd72e30.js +66 -0
  100. package/admin-out/_next/static/chunks/framework-98918e2142cd6d06.js +1 -0
  101. package/admin-out/_next/static/chunks/main-93c216652d4113b1.js +1 -0
  102. package/admin-out/_next/static/chunks/main-app-5e981adb363c52e5.js +1 -0
  103. package/admin-out/_next/static/chunks/pages/{_app-a3b7e86f97343e7a.js → _app-6fab9bb03f9f4fdf.js} +1 -1
  104. package/admin-out/_next/static/chunks/pages/_error-ada6d7affab6ebcc.js +1 -0
  105. package/admin-out/_next/static/chunks/webpack-7f8156dbbdb54868.js +1 -0
  106. package/admin-out/_next/static/css/6da86a077e119a6c.css +1 -0
  107. package/admin-out/_next/static/{0cRHmPZfENhrU7Hb0w3n_ → hVkojb3RGS9VYbkj-EX9T}/_buildManifest.js +1 -1
  108. package/admin-out/index.html +1 -1
  109. package/admin-out/index.txt +5 -5
  110. package/bundled-docs/design/a2a.md +43 -13
  111. package/bundled-docs/design/architecture.md +1 -1
  112. package/bundled-docs/design/storage.md +2 -2
  113. package/bundled-docs/dev/add-model-provider.md +2 -2
  114. package/bundled-docs/dev/api.md +4 -2
  115. package/bundled-docs/dev/tools.md +10 -5
  116. package/bundled-docs/guide/chat.md +1 -0
  117. package/bundled-docs/guide/workspace.md +1 -1
  118. package/bundled-docs/requirements/chat.md +7 -0
  119. package/bundled-docs/requirements/editor.md +5 -2
  120. package/bundled-docs/requirements/explorer.md +5 -0
  121. package/bundled-docs/requirements/source-control.md +2 -0
  122. package/dist/index.js +143 -34
  123. package/package.json +1 -1
  124. package/templates/models/aws-bedrock-claude-invoke.yaml +3 -3
  125. package/templates/models/aws-bedrock-mantle.yaml +21 -15
  126. package/templates/models/aws-bedrock-openai.yaml +7 -3
  127. package/admin-out/_next/static/chunks/160.c52d3d6cf7bc8286.js +0 -1
  128. package/admin-out/_next/static/chunks/1b86ba38-c29611e086b2ce25.js +0 -1
  129. package/admin-out/_next/static/chunks/250.9094fea2325b09a3.js +0 -1
  130. package/admin-out/_next/static/chunks/304eda7d.f525962766560ba5.js +0 -1
  131. package/admin-out/_next/static/chunks/336.3171154ecc29c80a.js +0 -1
  132. package/admin-out/_next/static/chunks/362.a0c58d3bf9b1300b.js +0 -1
  133. package/admin-out/_next/static/chunks/398-9a8be186767b4504.js +0 -1
  134. package/admin-out/_next/static/chunks/449.c4b881b9ebdc556e.js +0 -1
  135. package/admin-out/_next/static/chunks/522.9e25c63e3082cb1c.js +0 -1
  136. package/admin-out/_next/static/chunks/58.d26b1c4f14404226.js +0 -1
  137. package/admin-out/_next/static/chunks/613.fb09e55e0a61d3fe.js +0 -1
  138. package/admin-out/_next/static/chunks/690.6a83d18b488a3e2e.js +0 -1
  139. package/admin-out/_next/static/chunks/698-19872069fed27164.js +0 -1
  140. package/admin-out/_next/static/chunks/73.05abce37d312e880.js +0 -1
  141. package/admin-out/_next/static/chunks/839.a2729fd33013d763.js +0 -1
  142. package/admin-out/_next/static/chunks/868.bbb91afd48c9eb58.js +0 -1
  143. package/admin-out/_next/static/chunks/892.a35118e09d8d8efd.js +0 -1
  144. package/admin-out/_next/static/chunks/989-71c38d29c6672b27.js +0 -1
  145. package/admin-out/_next/static/chunks/app/_not-found/page-4271518f2746cf73.js +0 -1
  146. package/admin-out/_next/static/chunks/app/layout-ea161287d934ba96.js +0 -1
  147. package/admin-out/_next/static/chunks/app/page-67334fcd2175c7ad.js +0 -1
  148. package/admin-out/_next/static/chunks/db534642.657a5bd93dc1e8c7.js +0 -1
  149. package/admin-out/_next/static/chunks/framework-c48c994d2190a38e.js +0 -1
  150. package/admin-out/_next/static/chunks/main-app-340a5b58ed229c4d.js +0 -1
  151. package/admin-out/_next/static/chunks/main-f1f665fbc24e1033.js +0 -1
  152. package/admin-out/_next/static/chunks/pages/_error-751fca0c729a7e01.js +0 -1
  153. package/admin-out/_next/static/chunks/webpack-662d2cae1104f635.js +0 -1
  154. package/admin-out/_next/static/css/3467b854242306b8.css +0 -1
  155. /package/admin-out/_next/static/{0cRHmPZfENhrU7Hb0w3n_ → hVkojb3RGS9VYbkj-EX9T}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9121],{79121:(e,a,s)=>{s.d(a,{createRailroadPegServices:()=>c.P});var c=s(27702);s(42172)}}]);
@@ -0,0 +1,149 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9142],{37669:(e,t,s)=>{s.d(t,{o:()=>i});var i=(0,s(88252).K)(()=>`
2
+ /* Font Awesome icon styling - consolidated */
3
+ .label-icon {
4
+ display: inline-block;
5
+ height: 1em;
6
+ overflow: visible;
7
+ vertical-align: -0.125em;
8
+ }
9
+
10
+ .node .label-icon path {
11
+ fill: currentColor;
12
+ stroke: revert;
13
+ stroke-width: revert;
14
+ }
15
+ `,"getIconStyles")},99142:(e,t,s)=>{s.d(t,{diagram:()=>eL});var i=s(37669),r=s(57380),n=s(77351),a=s(94712);s(73823),s(39020),s(7322),s(52361);var o=s(55490),l=s(27058),c=s(92826),h=s(58442),u=s(88252),d=s(53161),g=s(91238),y=s(99213),p=s(11532);function b(e,t){for(let s in t)Object.hasOwn(t,s)&&(e[s]=t[s])}var f=s(21982),x=s(27401),S=s(93962),m=s(34267),L=function(){var e=(0,u.K)(function(e,t,s,i){for(s=s||{},i=e.length;i--;s[e[i]]=t);return s},"o"),t=[1,15],s=[1,7],i=[1,13],r=[1,14],n=[1,19],a=[1,16],o=[1,17],l=[1,18],c=[8,30],h=[8,10,21,28,29,30,31,39,43,46],d=[1,23],g=[1,24],y=[8,10,15,16,21,28,29,30,31,39,43,46],p=[8,10,15,16,21,27,28,29,30,31,39,43,46],b=[1,49],f={trace:(0,u.K)(function(){},"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,NODE_ID:31,nodeShapeNLabel:32,dirList:33,DIR:34,NODE_DSTART:35,NODE_DEND:36,BLOCK_ARROW_START:37,BLOCK_ARROW_END:38,classDef:39,CLASSDEF_ID:40,CLASSDEF_STYLEOPTS:41,DEFAULT:42,class:43,CLASSENTITY_IDS:44,STYLECLASS:45,style:46,STYLE_ENTITY_IDS:47,STYLE_DEFINITION_DATA:48,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"NODE_ID",34:"DIR",35:"NODE_DSTART",36:"NODE_DEND",37:"BLOCK_ARROW_START",38:"BLOCK_ARROW_END",39:"classDef",40:"CLASSDEF_ID",41:"CLASSDEF_STYLEOPTS",42:"DEFAULT",43:"class",44:"CLASSENTITY_IDS",45:"STYLECLASS",46:"style",47:"STYLE_ENTITY_IDS",48:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[33,1],[33,2],[32,3],[32,4],[23,3],[23,3],[24,3],[25,3]],performAction:(0,u.K)(function(e,t,s,i,r,n,a){var o=n.length-1;switch(r){case 4:i.getLogger().debug("Rule: separator (NL) ");break;case 5:i.getLogger().debug("Rule: separator (Space) ");break;case 6:i.getLogger().debug("Rule: separator (EOF) ");break;case 7:i.getLogger().debug("Rule: hierarchy: ",n[o-1]),i.setHierarchy(n[o-1]);break;case 8:i.getLogger().debug("Stop NL ");break;case 9:i.getLogger().debug("Stop EOF ");break;case 10:i.getLogger().debug("Stop NL2 ");break;case 11:i.getLogger().debug("Stop EOF2 ");break;case 12:i.getLogger().debug("Rule: statement: ",n[o]),"number"==typeof n[o].length?this.$=n[o]:this.$=[n[o]];break;case 13:i.getLogger().debug("Rule: statement #2: ",n[o-1]),this.$=[n[o-1]].concat(n[o]);break;case 14:i.getLogger().debug("Rule: link: ",n[o],e),this.$={edgeTypeStr:n[o],label:""};break;case 15:i.getLogger().debug("Rule: LABEL link: ",n[o-3],n[o-1],n[o]),this.$={edgeTypeStr:n[o],label:n[o-1]};break;case 18:let l=parseInt(n[o]),c=i.generateId();this.$={id:c,type:"space",label:"",width:l,children:[]};break;case 23:i.getLogger().debug("Rule: (nodeStatement link node) ",n[o-2],n[o-1],n[o]," typestr: ",n[o-1].edgeTypeStr);let h=i.edgeStrToEdgeData(n[o-1].edgeTypeStr),u=i.edgeStrToEdgeStartData(n[o-1].edgeTypeStr),d=i.edgeStrToThickness(n[o-1].edgeTypeStr),g=i.edgeStrToPattern(n[o-1].edgeTypeStr);this.$=[{id:n[o-2].id,label:n[o-2].label,type:n[o-2].type,directions:n[o-2].directions},{id:n[o-2].id+"-"+n[o].id,start:n[o-2].id,end:n[o].id,label:n[o-1].label,type:"edge",thickness:d,pattern:g,directions:n[o].directions,arrowTypeEnd:h,arrowTypeStart:u},{id:n[o].id,label:n[o].label,type:i.typeStr2Type(n[o].typeStr),directions:n[o].directions}];break;case 24:i.getLogger().debug("Rule: nodeStatement (abc88 node size) ",n[o-1],n[o]),this.$={id:n[o-1].id,label:n[o-1].label,type:i.typeStr2Type(n[o-1].typeStr),directions:n[o-1].directions,widthInColumns:parseInt(n[o],10)};break;case 25:i.getLogger().debug("Rule: nodeStatement (node) ",n[o]),this.$={id:n[o].id,label:n[o].label,type:i.typeStr2Type(n[o].typeStr),directions:n[o].directions,widthInColumns:1};break;case 26:i.getLogger().debug("APA123",this?this:"na"),i.getLogger().debug("COLUMNS: ",n[o]),this.$={type:"column-setting",columns:"auto"===n[o]?-1:parseInt(n[o])};break;case 27:i.getLogger().debug("Rule: id-block statement : ",n[o-2],n[o-1]),i.generateId(),this.$={...n[o-2],type:"composite",children:n[o-1]};break;case 28:i.getLogger().debug("Rule: blockStatement : ",n[o-2],n[o-1],n[o]);let y=i.generateId();this.$={id:y,type:"composite",label:"",children:n[o-1]};break;case 29:i.getLogger().debug("Rule: node (NODE_ID separator): ",n[o]),this.$={id:n[o]};break;case 30:i.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",n[o-1],n[o]),this.$={id:n[o-1],label:n[o].label,typeStr:n[o].typeStr,directions:n[o].directions};break;case 31:i.getLogger().debug("Rule: dirList: ",n[o]),this.$=[n[o]];break;case 32:i.getLogger().debug("Rule: dirList: ",n[o-1],n[o]),this.$=[n[o-1]].concat(n[o]);break;case 33:i.getLogger().debug("Rule: nodeShapeNLabel: ",n[o-2],n[o-1],n[o]),this.$={typeStr:n[o-2]+n[o],label:n[o-1]};break;case 34:i.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",n[o-3],n[o-2]," #3:",n[o-1],n[o]),this.$={typeStr:n[o-3]+n[o],label:n[o-2],directions:n[o-1]};break;case 35:case 36:this.$={type:"classDef",id:n[o-1].trim(),css:n[o].trim()};break;case 37:this.$={type:"applyClass",id:n[o-1].trim(),styleClass:n[o].trim()};break;case 38:this.$={type:"applyStyles",id:n[o-1].trim(),stylesStr:n[o].trim()}}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{10:t,11:3,13:4,19:5,20:6,21:s,22:8,23:9,24:10,25:11,26:12,28:i,29:r,31:n,39:a,43:o,46:l},{8:[1,20]},e(c,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,10:t,21:s,28:i,29:r,31:n,39:a,43:o,46:l}),e(h,[2,16],{14:22,15:d,16:g}),e(h,[2,17]),e(h,[2,18]),e(h,[2,19]),e(h,[2,20]),e(h,[2,21]),e(h,[2,22]),e(y,[2,25],{27:[1,25]}),e(h,[2,26]),{19:26,26:12,31:n},{10:t,11:27,13:4,19:5,20:6,21:s,22:8,23:9,24:10,25:11,26:12,28:i,29:r,31:n,39:a,43:o,46:l},{40:[1,28],42:[1,29]},{44:[1,30]},{47:[1,31]},e(p,[2,29],{32:32,35:[1,33],37:[1,34]}),{1:[2,7]},e(c,[2,13]),{26:35,31:n},{31:[2,14]},{17:[1,36]},e(y,[2,24]),{10:t,11:37,13:4,14:22,15:d,16:g,19:5,20:6,21:s,22:8,23:9,24:10,25:11,26:12,28:i,29:r,31:n,39:a,43:o,46:l},{30:[1,38]},{41:[1,39]},{41:[1,40]},{45:[1,41]},{48:[1,42]},e(p,[2,30]),{18:[1,43]},{18:[1,44]},e(y,[2,23]),{18:[1,45]},{30:[1,46]},e(h,[2,28]),e(h,[2,35]),e(h,[2,36]),e(h,[2,37]),e(h,[2,38]),{36:[1,47]},{33:48,34:b},{15:[1,50]},e(h,[2,27]),e(p,[2,33]),{38:[1,51]},{33:52,34:b,38:[2,31]},{31:[2,15]},e(p,[2,34]),{38:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:(0,u.K)(function(e,t){if(t.recoverable)this.trace(e);else{var s=Error(e);throw s.hash=t,s}},"parseError"),parse:(0,u.K)(function(e){var t=this,s=[0],i=[],r=[null],n=[],a=this.table,o="",l=0,c=0,h=0,d=n.slice.call(arguments,1),g=Object.create(this.lexer),y={};for(var p in this.yy)Object.prototype.hasOwnProperty.call(this.yy,p)&&(y[p]=this.yy[p]);g.setInput(e,y),y.lexer=g,y.parser=this,void 0===g.yylloc&&(g.yylloc={});var b=g.yylloc;n.push(b);var f=g.options&&g.options.ranges;function x(){var e;return"number"!=typeof(e=i.pop()||g.lex()||1)&&(e instanceof Array&&(e=(i=e).pop()),e=t.symbols_[e]||e),e}"function"==typeof y.parseError?this.parseError=y.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,u.K)(function(e){s.length=s.length-2*e,r.length=r.length-e,n.length=n.length-e},"popStack"),(0,u.K)(x,"lex");for(var S,m,L,k,_,w,E,D,$,I={};;){if(L=s[s.length-1],this.defaultActions[L]?k=this.defaultActions[L]:(null==S&&(S=x()),k=a[L]&&a[L][S]),void 0===k||!k.length||!k[0]){var N="";for(w in $=[],a[L])this.terminals_[w]&&w>2&&$.push("'"+this.terminals_[w]+"'");N=g.showPosition?"Parse error on line "+(l+1)+":\n"+g.showPosition()+"\nExpecting "+$.join(", ")+", got '"+(this.terminals_[S]||S)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==S?"end of input":"'"+(this.terminals_[S]||S)+"'"),this.parseError(N,{text:g.match,token:this.terminals_[S]||S,line:g.yylineno,loc:b,expected:$})}if(k[0]instanceof Array&&k.length>1)throw Error("Parse Error: multiple actions possible at state: "+L+", token: "+S);switch(k[0]){case 1:s.push(S),r.push(g.yytext),n.push(g.yylloc),s.push(k[1]),S=null,m?(S=m,m=null):(c=g.yyleng,o=g.yytext,l=g.yylineno,b=g.yylloc,h>0&&h--);break;case 2:if(E=this.productions_[k[1]][1],I.$=r[r.length-E],I._$={first_line:n[n.length-(E||1)].first_line,last_line:n[n.length-1].last_line,first_column:n[n.length-(E||1)].first_column,last_column:n[n.length-1].last_column},f&&(I._$.range=[n[n.length-(E||1)].range[0],n[n.length-1].range[1]]),void 0!==(_=this.performAction.apply(I,[o,c,l,y,k[1],r,n].concat(d))))return _;E&&(s=s.slice(0,-1*E*2),r=r.slice(0,-1*E),n=n.slice(0,-1*E)),s.push(this.productions_[k[1]][0]),r.push(I.$),n.push(I._$),D=a[s[s.length-2]][s[s.length-1]],s.push(D);break;case 3:return!0}}return!0},"parse")};function x(){this.yy={}}return f.lexer={EOF:1,parseError:(0,u.K)(function(e,t){if(this.yy.parser)this.yy.parser.parseError(e,t);else throw Error(e)},"parseError"),setInput:(0,u.K)(function(e,t){return this.yy=t||this.yy||{},this._input=e,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,u.K)(function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.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),e},"input"),unput:(0,u.K)(function(e){var t=e.length,s=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var i=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),s.length-1&&(this.yylineno-=s.length-1);var r=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:s?(s.length===i.length?this.yylloc.first_column:0)+i[i.length-s.length].length-s[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this},"unput"),more:(0,u.K)(function(){return this._more=!0,this},"more"),reject:(0,u.K)(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,u.K)(function(e){this.unput(this.match.slice(e))},"less"),pastInput:(0,u.K)(function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,u.K)(function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,u.K)(function(){var e=this.pastInput(),t=Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},"showPosition"),test_match:(0,u.K)(function(e,t){var s,i,r;if(this.options.backtrack_lexer&&(r={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&&(r.yylloc.range=this.yylloc.range.slice(0))),(i=e[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,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(e[0].length),this.matched+=e[0],s=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),s)return s;if(this._backtrack)for(var n in r)this[n]=r[n];return!1},"test_match"),next:(0,u.K)(function(){if(this.done)return this.EOF;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var e,t,s,i,r=this._currentRules(),n=0;n<r.length;n++)if((s=this._input.match(this.rules[r[n]]))&&(!t||s[0].length>t[0].length)){if(t=s,i=n,this.options.backtrack_lexer){if(!1!==(e=this.test_match(s,r[n])))return e;if(!this._backtrack)return!1;t=!1;continue}if(!this.options.flex)break}return t?!1!==(e=this.test_match(t,r[i]))&&e:""===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,u.K)(function(){var e=this.next();return e||this.lex()},"lex"),begin:(0,u.K)(function(e){this.conditionStack.push(e)},"begin"),popState:(0,u.K)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,u.K)(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,u.K)(function(e){return(e=this.conditionStack.length-1-Math.abs(e||0))>=0?this.conditionStack[e]:"INITIAL"},"topState"),pushState:(0,u.K)(function(e){this.begin(e)},"pushState"),stateStackSize:(0,u.K)(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:(0,u.K)(function(e,t,s,i){switch(s){case 0:return e.getLogger().debug("Found block-beta"),10;case 1:return e.getLogger().debug("Found id-block"),29;case 2:return e.getLogger().debug("Found block"),10;case 3:e.getLogger().debug(".",t.yytext);break;case 4:e.getLogger().debug("_",t.yytext);break;case 5:return 5;case 6:return t.yytext=-1,28;case 7:return t.yytext=t.yytext.replace(/columns\s+/,""),e.getLogger().debug("COLUMNS (LEX)",t.yytext),28;case 8:case 76:case 77:case 99:this.pushState("md_string");break;case 9:return"MD_STR";case 10:case 34:case 79:this.popState();break;case 11:this.pushState("string");break;case 12:e.getLogger().debug("LEX: POPPING STR:",t.yytext),this.popState();break;case 13:return e.getLogger().debug("LEX: STR end:",t.yytext),"STR";case 14:return t.yytext=t.yytext.replace(/space\:/,""),e.getLogger().debug("SPACE NUM (LEX)",t.yytext),21;case 15:return t.yytext="1",e.getLogger().debug("COLUMNS (LEX)",t.yytext),21;case 16:return 42;case 17:return"LINKSTYLE";case 18:return"INTERPOLATE";case 19:return this.pushState("CLASSDEF"),39;case 20:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 21:return this.popState(),this.pushState("CLASSDEFID"),40;case 22:return this.popState(),41;case 23:return this.pushState("CLASS"),43;case 24:return this.popState(),this.pushState("CLASS_STYLE"),44;case 25:return this.popState(),45;case 26:return this.pushState("STYLE_STMNT"),46;case 27:return this.popState(),this.pushState("STYLE_DEFINITION"),47;case 28:return this.popState(),48;case 29:return this.pushState("acc_title"),"acc_title";case 30:return this.popState(),"acc_title_value";case 31:return this.pushState("acc_descr"),"acc_descr";case 32:return this.popState(),"acc_descr_value";case 33:this.pushState("acc_descr_multiline");break;case 35:return"acc_descr_multiline_value";case 36:return 30;case 37:case 38:case 40:case 41:case 44:return this.popState(),e.getLogger().debug("Lex: (("),"NODE_DEND";case 39:return this.popState(),e.getLogger().debug("Lex: ))"),"NODE_DEND";case 42:return this.popState(),e.getLogger().debug("Lex: (-"),"NODE_DEND";case 43:return this.popState(),e.getLogger().debug("Lex: -)"),"NODE_DEND";case 45:return this.popState(),e.getLogger().debug("Lex: ]]"),"NODE_DEND";case 46:return this.popState(),e.getLogger().debug("Lex: ("),"NODE_DEND";case 47:return this.popState(),e.getLogger().debug("Lex: ])"),"NODE_DEND";case 48:case 49:return this.popState(),e.getLogger().debug("Lex: /]"),"NODE_DEND";case 50:return this.popState(),e.getLogger().debug("Lex: )]"),"NODE_DEND";case 51:return this.popState(),e.getLogger().debug("Lex: )"),"NODE_DEND";case 52:return this.popState(),e.getLogger().debug("Lex: ]>"),"NODE_DEND";case 53:return this.popState(),e.getLogger().debug("Lex: ]"),"NODE_DEND";case 54:return e.getLogger().debug("Lexa: -)"),this.pushState("NODE"),35;case 55:return e.getLogger().debug("Lexa: (-"),this.pushState("NODE"),35;case 56:return e.getLogger().debug("Lexa: ))"),this.pushState("NODE"),35;case 57:case 59:case 60:case 61:case 64:return e.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;case 58:return e.getLogger().debug("Lex: ((("),this.pushState("NODE"),35;case 62:return e.getLogger().debug("Lexc: >"),this.pushState("NODE"),35;case 63:return e.getLogger().debug("Lexa: (["),this.pushState("NODE"),35;case 65:case 66:case 67:case 68:case 69:case 70:case 71:return this.pushState("NODE"),35;case 72:return e.getLogger().debug("Lexa: ["),this.pushState("NODE"),35;case 73:return this.pushState("BLOCK_ARROW"),e.getLogger().debug("LEX ARR START"),37;case 74:return e.getLogger().debug("Lex: NODE_ID",t.yytext),31;case 75:return e.getLogger().debug("Lex: EOF",t.yytext),8;case 78:return"NODE_DESCR";case 80:e.getLogger().debug("Lex: Starting string"),this.pushState("string");break;case 81:e.getLogger().debug("LEX ARR: Starting string"),this.pushState("string");break;case 82:return e.getLogger().debug("LEX: NODE_DESCR:",t.yytext),"NODE_DESCR";case 83:e.getLogger().debug("LEX POPPING"),this.popState();break;case 84:e.getLogger().debug("Lex: =>BAE"),this.pushState("ARROW_DIR");break;case 85:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (right): dir:",t.yytext),"DIR";case 86:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (left):",t.yytext),"DIR";case 87:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (x):",t.yytext),"DIR";case 88:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (y):",t.yytext),"DIR";case 89:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (up):",t.yytext),"DIR";case 90:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (down):",t.yytext),"DIR";case 91:return t.yytext="]>",e.getLogger().debug("Lex (ARROW_DIR end):",t.yytext),this.popState(),this.popState(),"BLOCK_ARROW_END";case 92:return e.getLogger().debug("Lex: LINK","#"+t.yytext+"#"),15;case 93:case 94:case 95:return e.getLogger().debug("Lex: LINK",t.yytext),15;case 96:case 97:case 98:return e.getLogger().debug("Lex: START_LINK",t.yytext),this.pushState("LLABEL"),16;case 100:return e.getLogger().debug("Lex: Starting string"),this.pushState("string"),"LINK_LABEL";case 101:return this.popState(),e.getLogger().debug("Lex: LINK","#"+t.yytext+"#"),15;case 102:case 103:return this.popState(),e.getLogger().debug("Lex: LINK",t.yytext),15;case 104:return e.getLogger().debug("Lex: COLON",t.yytext),t.yytext=t.yytext.slice(1),27}},"anonymous"),rules:[/^(?:block-beta\b)/,/^(?:block:)/,/^(?:block\b)/,/^(?:[\s]+)/,/^(?:[\n]+)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:columns\s+auto\b)/,/^(?:columns\s+[\d]+)/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:space[:]\d+)/,/^(?:space\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\s+)/,/^(?:DEFAULT\s+)/,/^(?:\w+\s+)/,/^(?:[^\n]*)/,/^(?:class\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:style\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:end\b\s*)/,/^(?:\(\(\()/,/^(?:\)\)\))/,/^(?:[\)]\))/,/^(?:\}\})/,/^(?:\})/,/^(?:\(-)/,/^(?:-\))/,/^(?:\(\()/,/^(?:\]\])/,/^(?:\()/,/^(?:\]\))/,/^(?:\\\])/,/^(?:\/\])/,/^(?:\)\])/,/^(?:[\)])/,/^(?:\]>)/,/^(?:[\]])/,/^(?:-\))/,/^(?:\(-)/,/^(?:\)\))/,/^(?:\))/,/^(?:\(\(\()/,/^(?:\(\()/,/^(?:\{\{)/,/^(?:\{)/,/^(?:>)/,/^(?:\(\[)/,/^(?:\()/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\[\\)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:\[)/,/^(?:<\[)/,/^(?:[^\(\[\n\-\)\{\}\s\<\>:=]+)/,/^(?:$)/,/^(?:["][`])/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:\]>\s*\()/,/^(?:,?\s*right\s*)/,/^(?:,?\s*left\s*)/,/^(?:,?\s*x\s*)/,/^(?:,?\s*y\s*)/,/^(?:,?\s*up\s*)/,/^(?:,?\s*down\s*)/,/^(?:\)\s*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*~~[\~]+\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:["][`])/,/^(?:["])/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?::\d+)/],conditions:{STYLE_DEFINITION:{rules:[28],inclusive:!1},STYLE_STMNT:{rules:[27],inclusive:!1},CLASSDEFID:{rules:[22],inclusive:!1},CLASSDEF:{rules:[20,21],inclusive:!1},CLASS_STYLE:{rules:[25],inclusive:!1},CLASS:{rules:[24],inclusive:!1},LLABEL:{rules:[99,100,101,102,103],inclusive:!1},ARROW_DIR:{rules:[85,86,87,88,89,90,91],inclusive:!1},BLOCK_ARROW:{rules:[76,81,84],inclusive:!1},NODE:{rules:[37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,77,80],inclusive:!1},md_string:{rules:[9,10,78,79],inclusive:!1},space:{rules:[],inclusive:!1},string:{rules:[12,13,82,83],inclusive:!1},acc_descr_multiline:{rules:[34,35],inclusive:!1},acc_descr:{rules:[32],inclusive:!1},acc_title:{rules:[30],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,11,14,15,16,17,18,19,23,26,29,31,33,36,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,92,93,94,95,96,97,98,104],inclusive:!0}}},(0,u.K)(x,"Parser"),x.prototype=f,f.Parser=x,new x}();L.parser=L;var k=new Map,_=[],w=new Map,E="color",D="fill",$=new Map,I="",N=(0,u.K)(e=>c.Y2.sanitizeText(e,(0,c.D7)()),"sanitizeText"),T=(0,u.K)(function(e,t=""){let s=$.get(e);s||(s={id:e,styles:[],textStyles:[]},$.set(e,s)),null!=t&&t.split(",").forEach(e=>{let t=e.replace(/([^;]*);/,"$1").trim();if(RegExp(E).exec(e)){let e=t.replace(D,"bgFill").replace(E,D);s.textStyles.push(e)}s.styles.push(t)})},"addStyleClass"),O=(0,u.K)(function(e,t=""){let s=k.get(e);null!=t&&(s.styles=t.split(","))},"addStyle2Node"),R=(0,u.K)(function(e,t){e.split(",").forEach(function(e){let s=k.get(e);if(void 0===s){let t=e.trim();s={id:t,type:"na",children:[]},k.set(t,s)}s.classes||(s.classes=[]),s.classes.push(t)})},"setCssClass"),z=0,C=(0,u.K)((e,t)=>{let s=e.flat(),i=[],r=s.find(e=>e?.type==="column-setting"),n=r?.columns??-1;for(let e of s){if("number"==typeof n&&n>0&&"column-setting"!==e.type&&"number"==typeof e.widthInColumns&&e.widthInColumns>n&&h.R.warn(`Block ${e.id} width ${e.widthInColumns} exceeds configured column width ${n}`),e.label&&(e.label=N(e.label)),"classDef"===e.type){T(e.id,e.css);continue}if("applyClass"===e.type){R(e.id,e?.styleClass??"");continue}if("applyStyles"===e.type){e?.stylesStr&&O(e.id,e?.stylesStr);continue}if("column-setting"===e.type)t.columns=e.columns??-1;else if("edge"===e.type){let t=(w.get(e.id)??0)+1;w.set(e.id,t),e.id=t+"-"+e.id,_.push(e)}else{e.label||("composite"===e.type?e.label="":e.label=e.id);let t=k.get(e.id);if(void 0===t?("composite"===e.type&&(e.colorIndex=z++),k.set(e.id,e)):("na"!==e.type&&(t.type=e.type),e.label!==e.id&&(t.label=e.label)),e.children&&C(e.children,e),"space"===e.type){let t=e.width??1;for(let s=0;s<t;s++){let t=function(e){if((0,d.s)(e))return e;let t=(0,g.b)(e);if(!function(e){switch((0,g.b)(e)){case y.R_:case y.Uw:case y.cT:case y.iq:case y.$V:case y.vC:case y.ri:case y.ML:case y.XZ:case y.i1:case y._u:case y.pj:case y.kj:case y.GX:case y.Av:case y.NA:case y.OG:case y.VP:case y.Qb:case y.q:case y.x6:case y.ZR:return!0;default:return!1}}(e))return{};if(Array.isArray(e)){let t=Array.from(e);return e.length>0&&"string"==typeof e[0]&&Object.hasOwn(e,"index")&&(t.index=e.index,t.input=e.input),t}if((0,p.i)(e))return new e.constructor(e.buffer,e.byteOffset,e.length);if(t===y.cT)return new ArrayBuffer(e.byteLength);if(t===y.iq){let t=e.buffer,s=e.byteOffset,i=e.byteLength,r=new ArrayBuffer(i),n=new Uint8Array(t,s,i);return new Uint8Array(r).set(n),new DataView(r)}if(t===y.$V||t===y.kj||t===y.OG){let s=new e.constructor(e.valueOf());return t===y.OG?function(e,t){let s=t.valueOf().length;for(let i in t)Object.hasOwn(t,i)&&(Number.isNaN(Number(i))||Number(i)>=s)&&(e[i]=t[i])}(s,e):b(s,e),s}if(t===y.vC)return new Date(Number(e));if(t===y.Av){let t=new RegExp(e.source,e.flags);return t.lastIndex=e.lastIndex,t}if(t===y.VP)return Object(Symbol.prototype.valueOf.call(e));if(t===y.pj){let t=new Map;return e.forEach((e,s)=>{t.set(s,e)}),t}if(t===y.NA){let t=new Set;return e.forEach(e=>{t.add(e)}),t}if(t===y.R_){let t={};return b(t,e),t.length=e.length,t[Symbol.iterator]=e[Symbol.iterator],t}let s={};return function(e,t){let s=Object.getPrototypeOf(t);null!==s&&"function"==typeof t.constructor&&Object.setPrototypeOf(e,s)}(s,e),b(s,e),function(e,t){let s=Object.getOwnPropertySymbols(t);for(let i=0;i<s.length;i++){let r=s[i];Object.prototype.propertyIsEnumerable.call(t,r)&&(e[r]=t[r])}}(s,e),s}(e);t.id=t.id+"-"+s,k.set(t.id,t),i.push(t)}}else void 0===t&&i.push(e)}}t.children=i},"populateBlockDatabase"),A=[],K={id:"root",type:"composite",children:[],columns:-1},v=(0,u.K)(()=>{h.R.debug("Clear called"),(0,c.IU)(),k=new Map([["root",K={id:"root",type:"composite",children:[],columns:-1}]]),A=[],$=new Map,_=[],w=new Map,I="",z=0},"clear");function B(e){switch(h.R.debug("typeStr2Type",e),e){case"[]":return"square";case"()":return h.R.debug("we have a round"),"round";case"(())":return"circle";case">]":return"rect_left_inv_arrow";case"{}":return"diamond";case"{{}}":return"hexagon";case"([])":return"stadium";case"[[]]":return"subroutine";case"[()]":return"cylinder";case"((()))":return"doublecircle";case"[//]":return"lean_right";case"[\\\\]":return"lean_left";case"[/\\]":return"trapezoid";case"[\\/]":return"inv_trapezoid";case"<[]>":return"block_arrow";default:return"na"}}function P(e){return(h.R.debug("typeStr2Type",e),"=="===e)?"thick":"normal"}function F(e){switch(e.trim().slice(-1)){case"x":return"arrow_cross";case"o":return"arrow_circle";case">":return"arrow_point";default:return""}}function M(e){switch(e.trim().charAt(0)){case"x":return"arrow_cross";case"o":return"arrow_circle";case"<":return"arrow_point";default:return"arrow_open"}}function j(e){return e.includes("==")?"thick":"normal"}function Y(e){return e.includes(".-")?"dotted":"solid"}(0,u.K)(B,"typeStr2Type"),(0,u.K)(P,"edgeTypeStr2Type"),(0,u.K)(F,"edgeStrToEdgeData"),(0,u.K)(M,"edgeStrToEdgeStartData"),(0,u.K)(j,"edgeStrToThickness"),(0,u.K)(Y,"edgeStrToPattern");var W=0,X=(0,u.K)(()=>(W++,"id-"+Math.random().toString(36).substr(2,12)+"-"+W),"generateId"),U=(0,u.K)(e=>{K.children=e,C(e,K),A=K.children},"setHierarchy"),G=(0,u.K)(e=>{let t=k.get(e);return t?t.columns?t.columns:t.children?t.children.length:-1:-1},"getColumns"),H=(0,u.K)(()=>[...k.values()],"getBlocksFlat"),q=(0,u.K)(()=>A||[],"getBlocks"),V=(0,u.K)(()=>_,"getEdges"),Z=(0,u.K)(e=>k.get(e),"getBlock"),J=(0,u.K)(e=>{k.set(e.id,e)},"setBlock"),Q=(0,u.K)(e=>{I=e},"setDiagramId"),ee=(0,u.K)(()=>I,"getDiagramId"),et=(0,u.K)(()=>h.R,"getLogger"),es=(0,u.K)(function(){return $},"getClasses"),ei={getConfig:(0,u.K)(()=>(0,c.zj)().block,"getConfig"),typeStr2Type:B,edgeTypeStr2Type:P,edgeStrToEdgeData:F,edgeStrToEdgeStartData:M,edgeStrToThickness:j,edgeStrToPattern:Y,getLogger:et,getBlocksFlat:H,getBlocks:q,getEdges:V,setHierarchy:U,getBlock:Z,setBlock:J,getColumns:G,getClasses:es,clear:v,generateId:X,setDiagramId:Q,getDiagramId:ee},er=(0,u.K)(e=>{let{theme:t,bkgColorArray:s,borderColorArray:i}=e;if(!(0,o.P1)(t,i))return"";let r=(0,o.rq)(e.look),n=(0,o.Ic)(s),a="";for(let t=0;t<(0,o.nw)(e.THEME_COLOR_LIMIT,i);t++){let e=i[t%i.length],o=n?`fill: ${s[t%s.length]};`:"",l=`[data-look="${r}"][data-color-id="color-${t}"]`;a+=`
16
+
17
+ ${l}.node rect.composite {
18
+ stroke: ${e};
19
+ ${o}
20
+ }
21
+ `}return a},"genColor"),en=(0,u.K)((e,t)=>{let s=f.A,i=s(e,"r"),r=s(e,"g"),n=s(e,"b");return x.A(i,r,n,t)},"fade"),ea=(0,u.K)(e=>`${er(e)}
22
+ .label {
23
+ font-family: ${e.fontFamily};
24
+ color: ${e.nodeTextColor||e.textColor};
25
+ }
26
+ .cluster-label text {
27
+ fill: ${e.titleColor};
28
+ }
29
+ .cluster-label span {
30
+ color: ${e.titleColor};
31
+ }
32
+
33
+
34
+
35
+ .label text,span {
36
+ fill: ${e.nodeTextColor||e.textColor};
37
+ color: ${e.nodeTextColor||e.textColor};
38
+ }
39
+
40
+ .node rect,
41
+ .node circle,
42
+ .node ellipse,
43
+ .node polygon,
44
+ .node path {
45
+ fill: ${e.mainBkg};
46
+ stroke: ${e.nodeBorder};
47
+ /* From the theme, as every other diagram does. Pinned at 1px here, so block drew a
48
+ thinner border than an identical flowchart node under any theme asking for more --
49
+ the neo theme asks for 2. Nothing downstream corrected it: the neo rules set stroke
50
+ and filter, never stroke-width. */
51
+ stroke-width: ${e.strokeWidth??1}px;
52
+ }
53
+ .flowchart-label text {
54
+ text-anchor: middle;
55
+ }
56
+ // .flowchart-label .text-outer-tspan {
57
+ // text-anchor: middle;
58
+ // }
59
+ // .flowchart-label .text-inner-tspan {
60
+ // text-anchor: start;
61
+ // }
62
+
63
+ .node .label {
64
+ text-align: center;
65
+ }
66
+ .node.clickable {
67
+ cursor: pointer;
68
+ }
69
+
70
+ .arrowheadPath {
71
+ fill: ${e.arrowheadColor};
72
+ }
73
+
74
+ .edgePaths .path {
75
+ stroke: ${e.lineColor};
76
+ stroke-width: 2.0px;
77
+ }
78
+
79
+ .flowchart-link {
80
+ stroke: ${e.lineColor};
81
+ fill: none;
82
+ }
83
+
84
+ .edgeLabel {
85
+ background-color: ${e.edgeLabelBackground};
86
+ /*
87
+ * This is for backward compatibility with existing code that didn't
88
+ * add a \`<p>\` around edge labels.
89
+ *
90
+ * TODO: We should probably remove this in a future release.
91
+ */
92
+ p {
93
+ margin: 0;
94
+ padding: 0;
95
+ display: inline;
96
+ }
97
+ rect {
98
+ opacity: 0.5;
99
+ background-color: ${e.edgeLabelBackground};
100
+ fill: ${e.edgeLabelBackground};
101
+ }
102
+ text-align: center;
103
+ }
104
+
105
+ /* For html labels only */
106
+ .labelBkg {
107
+ background-color: ${e.edgeLabelBackground};
108
+ }
109
+
110
+ .node .cluster {
111
+ // fill: ${en(e.mainBkg,.5)};
112
+ fill: ${en(e.clusterBkg,.5)};
113
+ stroke: ${en(e.clusterBorder,.2)};
114
+ box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
115
+ stroke-width: 1px;
116
+ }
117
+
118
+ .cluster text {
119
+ fill: ${e.titleColor};
120
+ }
121
+
122
+ .cluster span {
123
+ color: ${e.titleColor};
124
+ }
125
+ /* .cluster div {
126
+ color: ${e.titleColor};
127
+ } */
128
+
129
+ div.mermaidTooltip {
130
+ position: absolute;
131
+ text-align: center;
132
+ max-width: 200px;
133
+ padding: 2px;
134
+ font-family: ${e.fontFamily};
135
+ font-size: 12px;
136
+ background: ${e.tertiaryColor};
137
+ border: 1px solid ${e.border2};
138
+ border-radius: 2px;
139
+ pointer-events: none;
140
+ z-index: 100;
141
+ }
142
+
143
+ .flowchartTitleText {
144
+ text-anchor: middle;
145
+ font-size: 18px;
146
+ fill: ${e.textColor};
147
+ }
148
+ ${(0,i.o)()}
149
+ `,"getStyles");function eo(e,t){if(0===e||!Number.isInteger(e))throw Error("Columns must be an integer !== 0.");if(t<0||!Number.isInteger(t))throw Error("Position must be a non-negative integer."+t);return e<0?{px:t,py:0}:1===e?{px:0,py:t}:{px:t%e,py:Math.floor(t/e)}}(0,u.K)(eo,"calculateBlockPosition");var el=(0,u.K)(e=>{let t=0,s=0;for(let i of e.children){let{width:e,height:r,x:n,y:a}=i.size??{width:0,height:0,x:0,y:0};if(h.R.debug("getMaxChildSize abc95 child:",i.id,"width:",e,"height:",r,"x:",n,"y:",a,i.type),"space"===i.type)continue;let o=e/(i.widthInColumns??1);o>t&&(t=o),r>s&&(s=r)}return{width:t,height:s}},"getMaxChildSize");function ec(e,t,s=0,i=0,r=8){h.R.debug("setBlockSizes abc95 (start)",e.id,e?.size?.x,"block width =",e?.size,"siblingWidth",s),e?.size?.width||(e.size={width:s,height:i,x:0,y:0});let n=0,a=0;if(e.children?.length>0){for(let s of e.children)ec(s,t,0,0,r);let o=el(e);for(let t of(n=o.width,a=o.height,h.R.debug("setBlockSizes abc95 maxWidth of",e.id,":s children is ",n,a),e.children))t.size&&(h.R.debug(`abc95 Setting size of children of ${e.id} id=${t.id} ${n} ${a} ${JSON.stringify(t.size)}`),t.size.width=n*(t.widthInColumns??1)+r*((t.widthInColumns??1)-1),t.size.height=a,t.size.x=0,t.size.y=0,h.R.debug(`abc95 updating size of ${e.id} children child:${t.id} maxWidth:${n} maxHeight:${a}`));for(let s of e.children)ec(s,t,n,a,r);let l=e.columns??-1,c=0;for(let t of e.children)c+=t.widthInColumns??1;let u=e.children.length;l>0&&l<c&&(u=l);let d=Math.ceil(c/u),g=u*(n+r)+r,y=d*(a+r)+r;if(g<s){h.R.debug(`Detected to small sibling: abc95 ${e.id} siblingWidth ${s} siblingHeight ${i} width ${g}`),g=s,y=i;let t=(s-u*r-r)/u,o=(i-d*r-r)/d;for(let s of(h.R.debug("Size indata abc88",e.id,"childWidth",t,"maxWidth",n),h.R.debug("Size indata abc88",e.id,"childHeight",o,"maxHeight",a),h.R.debug("Size indata abc88 xSize",u,"padding",r),e.children))s.size&&(s.size.width=t,s.size.height=o,s.size.x=0,s.size.y=0)}if(h.R.debug(`abc95 (finale calc) ${e.id} xSize ${u} ySize ${d} columns ${l}${e.children.length} width=${Math.max(g,e.size?.width||0)}`),g<(e?.size?.width||0)){g=e?.size?.width||0;let t=l>0?Math.min(e.children.length,l):e.children.length;if(t>0){let s=(g-t*r-r)/t;for(let t of(h.R.debug("abc95 (growing to fit) width",e.id,g,e.size?.width,s),e.children))t.size&&(t.size.width=s)}}e.size={width:g,height:y,x:0,y:0}}h.R.debug("setBlockSizes abc94 (done)",e.id,e?.size?.x,e?.size?.width,e?.size?.y,e?.size?.height)}function eh(e,t,s=8){h.R.debug(`abc85 layout blocks (=>layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`);let i=e.columns??-1;if(h.R.debug("layoutBlocks columns abc95",e.id,"=>",i,e),e.children&&e.children.length>0){let r=e?.children[0]?.size?.width??0,n=e.children.length*r+(e.children.length-1)*s;h.R.debug("widthOfChildren 88",n,"posX");let a=new Map;{let t=0;for(let s of e.children){if(!s.size)continue;let{py:e}=eo(i,t),r=a.get(e)??0;s.size.height>r&&a.set(e,s.size.height);let n=s?.widthInColumns??1;i>0&&(n=Math.min(n,i-t%i)),t+=n}}let o=new Map;{let e=0;for(let t of[...a.keys()].sort((e,t)=>e-t))o.set(t,e),e+=(a.get(t)??0)+s}let l=0;h.R.debug("abc91 block?.size?.x",e.id,e?.size?.x);let c=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-s,u=0;for(let r of e.children){if(!r.size)continue;let{width:n,height:d}=r.size,{px:g,py:y}=eo(i,l);if(y!=u&&(u=y,c=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-s,h.R.debug("New row in layout for block",e.id," and child ",r.id,u)),h.R.debug(`abc89 layout blocks (child) id: ${r.id} Pos: ${l} (px, py) ${g},${y} (${e?.size?.x},${e?.size?.y}) parent: ${e.id} width: ${n}${s}`),e.size){let t=n/2;r.size.x=c+s+t,h.R.debug(`abc91 layout blocks (calc) px, pyid:${r.id} startingPos=X${c} new startingPosX${r.size.x} ${t} padding=${s} width=${n} halfWidth=${t} => x:${r.size.x} y:${r.size.y} ${r.widthInColumns} (width * (child?.w || 1)) / 2 ${n*(r?.widthInColumns??1)/2}`),c=r.size.x+t;let i=o.get(y)??0,l=a.get(y)??d;r.size.y=e.size.y-e.size.height/2+i+l/2+s,h.R.debug(`abc88 layout blocks (calc) px, pyid:${r.id}startingPosX${c}${s}${t}=>x:${r.size.x}y:${r.size.y}${r.widthInColumns}(width * (child?.w || 1)) / 2${n*(r?.widthInColumns??1)/2}`)}r.children&&eh(r,t,s);let p=r?.widthInColumns??1;i>0&&(p=Math.min(p,i-l%i)),l+=p,h.R.debug("abc88 columnsPos",r,l)}}h.R.debug(`layout blocks (<==layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`)}function eu(e,{minX:t,minY:s,maxX:i,maxY:r}={minX:0,minY:0,maxX:0,maxY:0}){if(e.size&&"root"!==e.id){let{x:n,y:a,width:o,height:l}=e.size;n-o/2<t&&(t=n-o/2),a-l/2<s&&(s=a-l/2),n+o/2>i&&(i=n+o/2),a+l/2>r&&(r=a+l/2)}if(e.children)for(let n of e.children)({minX:t,minY:s,maxX:i,maxY:r}=eu(n,{minX:t,minY:s,maxX:i,maxY:r}));return{minX:t,minY:s,maxX:i,maxY:r}}function ed(e){let t=e.getBlock("root");if(!t)return;let s=(0,c.D7)()?.block?.padding??8;ec(t,e,0,0,s),eh(t,e,s),h.R.debug("getBlocks",JSON.stringify(t,null,2));let{minX:i,minY:r,maxX:n,maxY:a}=eu(t);return{x:i,y:r,width:n-i,height:a-r}}function eg(e,t,s=!1){let i,r="default";(e?.classes?.length||0)>0&&(r=(e?.classes??[]).join(" ")),r+=" flowchart-label";let n=(e?.classes??[]).flatMap(e=>t.getClasses().get(e)?.styles??[]),a=0,o="rect";switch(e.type){case"round":a=5,o="rect";break;case"composite":a=0,o="composite",i=0;break;case"square":case"group":default:o="rect";break;case"diamond":o="question";break;case"hexagon":o="hexagon";break;case"block_arrow":o="block_arrow";break;case"odd":case"rect_left_inv_arrow":o="rect_left_inv_arrow";break;case"lean_right":o="lean_right";break;case"lean_left":o="lean_left";break;case"trapezoid":o="trapezoid";break;case"inv_trapezoid":o="inv_trapezoid";break;case"circle":o="circle";break;case"ellipse":o="ellipse";break;case"stadium":o="stadium";break;case"subroutine":o="subroutine";break;case"cylinder":o="cylinder";break;case"doublecircle":o="doublecircle"}let h=(0,l.sM)(e?.styles??[]),u=e.label,d=e.size??{width:0,height:0,x:0,y:0},g=t.getDiagramId();return{labelStyle:h.labelStyle,shape:o,label:u,labelText:u,rx:a,ry:a,class:r,cssClasses:r,cssStyles:e?.styles??[],cssCompiledStyles:n,style:h.style,id:e.id,domId:g?`${g}-${e.id}`:e.id,isGroup:!1,directions:e.directions,width:d.width||void 0,height:d.height||void 0,wrappingWidth:d.width||1/0,x:d.x,y:d.y,positioned:s,intersect:void 0,padding:i??(0,c.zj)()?.block?.padding??0,widthInColumns:e.widthInColumns??1,colorIndex:e.colorIndex,look:(0,c.zj)().look}}async function ey(e,t,s){let i=eg(t,s,!1);if("group"===t.type)return;let r=(0,c.zj)(),n=await (0,a.on)(e,i,{config:r}),o=n.node()?.getBBox()??{width:0,height:0},l=s.getBlock(i.id);l.size={width:o.width,height:o.height,x:0,y:0,node:n},s.setBlock(l),n.remove()}async function ep(e,t,s){let i=eg(t,s,!0);if("space"!==s.getBlock(i.id).type){let s=(0,c.zj)(),r=await (0,a.on)(e,i,{config:s});void 0!==i.colorIndex&&(0,o.XE)(r,i.colorIndex,s.theme,s.themeVariables?.borderColorArray),t.intersect=i?.intersect,(0,a.U_)(i)}}async function eb(e,t,s,i){for(let r of t)await i(e,r,s),r.children&&await eb(e,r.children,s,i)}async function ef(e,t,s){await eb(e,t,s,ey)}async function ex(e,t,s){await eb(e,t,s,ep)}async function eS(e,t,s,i,r){let a=new m.T({multigraph:!0,compound:!0});for(let e of(a.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8}),s))e.size&&a.setNode(e.id,{width:e.size.width,height:e.size.height,intersect:e.intersect});for(let s of t)if(s.start&&s.end){let t=i.getBlock(s.start),o=i.getBlock(s.end);if(t?.size&&o?.size){let i=t.size,l=o.size,c=[{x:i.x,y:i.y},{x:i.x+(l.x-i.x)/2,y:i.y+(l.y-i.y)/2},{x:l.x,y:l.y}],h=r?`${r}-${s.id}`:s.id,u="thick"===s.thickness?"edge-thickness-thick":"edge-thickness-normal",d="dotted"===s.pattern?"edge-pattern-dotted":"edge-pattern-solid",g=`${u} ${d} flowchart-link LS-a1 LE-b1`;(0,n.Jo)(e,{...s,id:h,arrowTypeEnd:s.arrowTypeEnd,arrowTypeStart:s.arrowTypeStart,points:c,classes:g},{},"block",a.node(s.start),a.node(s.end),r),s.label&&(await (0,n.jP)(e,{...s,label:s.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:s.arrowTypeEnd,arrowTypeStart:s.arrowTypeStart,points:c,classes:g}),(0,n.T_)({...s,x:c[1].x,y:c[1].y},{originalPath:c}))}}}(0,u.K)(ec,"setBlockSizes"),(0,u.K)(eh,"layoutBlocks"),(0,u.K)(eu,"findBounds"),(0,u.K)(ed,"layout"),(0,u.K)(eg,"getNodeFromBlock"),(0,u.K)(ey,"calculateBlockSize"),(0,u.K)(ep,"insertBlockPositioned"),(0,u.K)(eb,"performOperations"),(0,u.K)(ef,"calculateBlockSizes"),(0,u.K)(ex,"insertBlocks"),(0,u.K)(eS,"insertEdges");var em=(0,u.K)(function(e,t){return t.db.getClasses()},"getClasses"),eL={parser:L,db:ei,renderer:{draw:(0,u.K)(async function(e,t,s,i){let a,{securityLevel:o,block:l}=(0,c.zj)(),u=i.db;u.setDiagramId(t),"sandbox"===o&&(a=(0,S.Lt)("#i"+t));let d="sandbox"===o?(0,S.Lt)(a.nodes()[0].contentDocument.body):(0,S.Lt)("body"),g="sandbox"===o?d.select(`[id="${t}"]`):(0,S.Lt)(`[id="${t}"]`);(0,r.F)(g,(0,c.zj)()),(0,n.g0)(g,["point","circle","cross"],i.type,t);let y=u.getBlocks(),p=u.getBlocksFlat(),b=u.getEdges(),f=g.insert("g").attr("class","block");await ef(f,y,u);let x=ed(u);await ex(f,y,u),await eS(f,b,p,u,t);let m=f.node()?.getBBox(),L=m&&Number.isFinite(m.width)&&Number.isFinite(m.height)?m:x;if(L){let e=Math.max(1,Math.round(.125*(L.width/L.height))),t=L.height+e+10,s=L.width+10,{useMaxWidth:i}=l;(0,c.a$)(g,t,s,!!i),h.R.debug("Here Bounds",x,L),g.attr("viewBox",`${L.x-5} ${L.y-5} ${L.width+10} ${L.height+10}`)}},"draw"),getClasses:em},styles:ea}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9180],{79180:(e,t,n)=>{n.d(t,{B:()=>c,OS:()=>k,QV:()=>_,dc:()=>N,ju:()=>b,sc:()=>P,sv:()=>h,xY:()=>X});var r=n(53652),a=n(77351),i=n(94712),d=n(73823),o=n(27058),s=n(92826),l=n(58442),g=n(88252),u=n(34267);function c(e,{edgePathsClass:t="edges edgePaths"}={}){let n=e.insert("g").attr("class","root"),r=n.insert("g").attr("class","clusters"),a=n.insert("g").attr("class",t);return{clusters:r,edgePaths:a,edgeLabels:n.insert("g").attr("class","edgeLabels"),nodes:n.insert("g").attr("class","nodes"),rootGroups:n}}async function f(e,t,n){if(t.label){let{shapeSvg:r,bbox:a}=await (0,d.Zk)(e,void 0===n?t:{...t,width:n});t.labelBBox={width:a.width,height:a.height},r.remove()}else t.labelBBox={width:0,height:0}}async function h(e,t,n){let r=await (0,i.on)(e,t,n),a=r.node()?.getBBox()??{width:0,height:0};return t.width=a.width,t.height=a.height,r}function p(e,t,n){let r=e,a=new Set;for(;r;){if(r.dir)return r.dir;if(!r.parentId||a.has(r.parentId))break;a.add(r.parentId),r=t.get(r.parentId)}return n}async function w(e,t,r={}){let i=new u.T({multigraph:!0,compound:!0}),d=[...t.edges],o=(0,s.D7)(),l=c(e),{edgeLabels:g,nodes:b}=l,R=new Map,m=new Map(t.nodes.map(e=>[e.id,e])),v=t.direction,y=null!=e.node();for(let e of(await Promise.all(t.nodes.map(async e=>{if(e.isGroup){if(y){let t=r.unwrapGroupLabels&&"markdown"!==e.labelType;await f(b,e,t?1/0:void 0)}i.setNode(e.id,{...e})}else{if(y){let t=await h(b,e,{config:o,dir:p(e,m,v)});R.set(e.id,t)}i.setNode(e.id,{...e})}})),d))y&&(0,a.a6)(e)&&await (0,a.jP)(g,e),i.setEdge(e.start,e.end,{...e},e.id),t.edges.some(t=>t.id===e.id)||t.edges.push(e);if(globalThis.mermaidCaptureSizes){let{captureNodeSizes:r}=await n.e(7482).then(n.bind(n,7482));r(e,t)}return{graph:i,groups:l,nodeElements:R}}(0,g.K)(c,"createLayoutElementGroups"),(0,g.K)(f,"measureGroupLabel"),(0,g.K)(h,"insertMeasuredNode"),(0,g.K)(p,"resolveNodeDir"),(0,g.K)(w,"createGraphWithElements");var b=new Map,R=new Map,m=new Map,v=(0,g.K)(()=>{R.clear(),m.clear(),b.clear()},"clear"),y=(0,g.K)((e,t)=>{let n=R.get(t)||[];return l.R.trace("In isDescendant",t," ",e," = ",n.includes(e)),n.includes(e)},"isDescendant"),C=(0,g.K)((e,t)=>{let n=R.get(t)||[];return l.R.info("Descendants of ",t," is ",n),l.R.info("Edge is ",e),e.v!==t&&e.w!==t&&(n?n.includes(e.v)||y(e.v,t)||y(e.w,t)||n.includes(e.w):(l.R.debug("Tilt, ",t,",not in descendants"),!1))},"edgeInCluster"),K=(0,g.K)((e,t,n,r)=>{l.R.debug("Copying children of ",e,"root",r,"data",t.node(e),r);let a=t.children(e)||[];e!==r&&a.push(e),l.R.debug("Copying (nodes) clusterId",e,"nodes",a),a.forEach(a=>{if(t.children(a).length>0)K(a,t,n,r);else{let i=t.node(a);l.R.info("cp ",a," to ",r," with parent ",e),n.setNode(a,i),r!==t.parent(a)&&(l.R.debug("Setting parent",a,t.parent(a)),n.setParent(a,t.parent(a))),e!==r&&a!==e?(l.R.debug("Setting parent",a,e),n.setParent(a,e)):(l.R.info("In copy ",e,"root",r,"data",t.node(e),r),l.R.debug("Not Setting parent for node=",a,"cluster!==rootId",e!==r,"node!==clusterId",a!==e));let d=t.edges(a);l.R.debug("Copying Edges",d),d.forEach(a=>{l.R.info("Edge",a);let i=t.edge(a.v,a.w,a.name);l.R.info("Edge data",i,r);try{C(a,r)?(l.R.info("Copying as ",a.v,a.w,i,a.name),n.setEdge(a.v,a.w,i,a.name),l.R.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]))):l.R.info("Skipping copy of edge ",a.v,"--\x3e",a.w," rootId: ",r," clusterId:",e)}catch(e){l.R.error(e)}})}l.R.debug("Removing node",a),t.removeNode(a)})},"copy"),E=(0,g.K)((e,t)=>{let n=t.children(e),r=[...n];for(let a of n)m.set(a,e),r=[...r,...E(a,t)];return r},"extractDescendants"),L=(0,g.K)((e,t,n)=>{let r=e.edges().filter(e=>e.v===t||e.w===t),a=e.edges().filter(e=>e.v===n||e.w===n),i=r.map(e=>({v:e.v===t?n:e.v,w:e.w===t?t:e.w})),d=a.map(e=>({v:e.v,w:e.w}));return i.filter(e=>d.some(t=>e.v===t.v&&e.w===t.w))},"findCommonEdges"),N=(0,g.K)((e,t,n)=>{let r,a=t.children(e);if(l.R.trace("Searching children of id ",e,a),a.length<1)return e;for(let e of a){let a=N(e,t,n),i=L(t,n,a);if(a)if(!(i.length>0))return a;else r=a}return r},"findNonClusterChild"),x=(0,g.K)(e=>b.has(e)&&b.get(e).externalConnections&&b.has(e)?b.get(e).id:e,"getAnchorId"),k=(0,g.K)((e,t)=>{if(!e||t>10)return void l.R.debug("Opting out, no graph ");for(let t of(l.R.debug("Opting in, graph "),e.nodes().forEach(function(t){e.children(t).length>0&&(l.R.debug("Cluster identified",t," Replacement id in edges: ",N(t,e,t)),R.set(t,E(t,e)),b.set(t,{id:N(t,e,t),clusterData:e.node(t)}))}),e.nodes().forEach(function(t){let n=e.children(t),r=e.edges();n.length>0?(l.R.debug("Cluster identified",t,R),r.forEach(e=>{y(e.v,t)^y(e.w,t)&&(l.R.debug("Edge: ",e," leaves cluster ",t),l.R.debug("Descendants of XXX ",t,": ",R.get(t)),b.get(t).externalConnections=!0)})):l.R.debug("Not a cluster ",t,R)}),b.keys())){let n=b.get(t).id,r=e.parent(n);r!==t&&b.has(r)&&!b.get(r).externalConnections&&(b.get(t).id=r);let a=e.edges().some(e=>e.v===t);if(n&&b.get(t)?.externalConnections&&a&&S(e,n,t)){let r=T(e,t,e.parent(n));r&&(b.get(t).id=r)}}e.edges().forEach(function(t){let n=e.edge(t);l.R.debug("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(t)),l.R.debug("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(e.edge(t)));let r=t.v,a=t.w;if(l.R.debug("Fix XXX",b,"ids:",t.v,t.w,"Translating: ",b.get(t.v)," --- ",b.get(t.w)),b.get(t.v)||b.get(t.w)){if(l.R.debug("Fixing and trying - removing XXX",t.v,t.w,t.name),r=x(t.v),a=x(t.w),e.removeEdge(t.v,t.w,t.name),r!==t.v){let a=e.parent(r);b.get(a).externalConnections=!0,n.fromCluster=t.v}if(a!==t.w){let r=e.parent(a);b.get(r).externalConnections=!0,n.toCluster=t.w}l.R.debug("Fix Replacing with XXX",r,a,t.name),e.setEdge(r,a,n,t.name)}}),I(e,0),l.R.trace(b)},"adjustClustersAndEdges"),I=(0,g.K)((e,t)=>{if(t>10)return void l.R.error("Bailing out");let n=e.nodes(),r=!1;for(let t of n){let n=e.children(t);r=r||n.length>0}if(!r)return void l.R.debug("Done, no node has children",e.nodes());for(let r of(l.R.debug("Nodes = ",n,t),n))if(l.R.debug("Extracting node",r,b,b.has(r)&&!b.get(r).externalConnections,!e.parent(r),e.node(r),e.children("D")," Depth ",t),b.has(r))if(!b.get(r).externalConnections&&e.children(r)&&e.children(r).length>0){l.R.debug("Cluster without external connections, without a parent and with children",r,t);let n="TB"===e.graph().rankdir?"LR":"TB";b.get(r)?.clusterData?.dir&&(n=b.get(r).clusterData.dir,l.R.debug("Fixing dir",b.get(r).clusterData.dir,n));let a=new u.T({multigraph:!0,compound:!0}).setGraph({rankdir:n,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});K(r,e,a,r),e.setNode(r,{clusterNode:!0,id:r,clusterData:b.get(r).clusterData,label:b.get(r).label,graph:a})}else l.R.debug("Cluster ** ",r," **not meeting the criteria !externalConnections:",!b.get(r).externalConnections," no parent: ",!e.parent(r)," children ",e.children(r)&&e.children(r).length>0,e.children("D"),t),l.R.debug(b);else l.R.debug("Not a cluster",r,t);for(let r of(n=e.nodes(),l.R.debug("New list of nodes",n),n)){let n=e.node(r);l.R.debug(" Now next level",r,n),n?.clusterNode&&I(n.graph,t+1)}},"extractor"),D=(0,g.K)((e,t)=>{if(0===t.length)return[];let n=Object.assign([],t);return t.forEach(t=>{let r=e.children(t),a=D(e,r);n=[...n,...a]}),n},"sorter"),P=(0,g.K)(e=>D(e,e.children()),"sortNodesByHierarchy"),S=(0,g.K)((e,t,n)=>{let r=e.parent(t);for(;r&&r!==n;){let t=b.get(r);if(t&&!t.externalConnections)return!0;r=e.parent(r)}return!1},"isNodeInExtractableCluster"),T=(0,g.K)((e,t,n)=>{for(let r of e.children(t)??[]){if(r===n||y(r,n))continue;let a=N(r,e,t);if(a&&!S(e,a,t))return a}return null},"findSafeAnchorNode");function X({prepareLayout:e,measureLayout:t,runLayoutCore:n,paintLayout:r,afterPaint:i,paintOptions:d}){let o=t??_;return(0,g.K)(async function(t,s,l,g){let u=s.select("g");(l?.insertMarkers??a.g0)(u,t.markers,t.type,t.diagramId),B();let c={element:u,helpers:l,options:g};c.preparedLayout=await e?.(t,c);let f=await o(t,c),h=await n(t,c),p={...c,measure:f};r?await r(t,p,h):await M(t,p,d),await i?.(t,p,h)},"render")}function B(){(0,i.IU)(),(0,a.IU)(),(0,r.IU)(),v()}async function _(e,{element:t},n){return await w(t,e,n)}async function M(e,t,n={}){let{measure:r}=t,{groups:a}=r;for(let r of n.getNodes?.(e,t)??e.nodes)n.skipNode?.(r,t)||await G(a,r,t,n);let i=U(e.nodes);for(let r of e.edges)j(r,n)||await A(a,r,i,e,n,t)}async function G(e,t,n,a){t.clusterNode?(0,i.U_)(t):O(t,n,a)?await (0,r.U)(e.clusters,t):(0,i.U_)(t)}function O(e,t,n){return!0===e.isGroup&&(n.isCluster?.(e,t)??!0)}function U(e){let t=new Map;for(let n of e)n?.id&&t.set(n.id,n);return t}function j(e,t){return e.isLayoutOnly||!!t.skipEdge?.(e)}async function A(e,t,n,r,i,d){let o=(0,a.Jo)(e.edgePaths,{...t},i.clusterDb??new Map,r.type,F(t.start,t,n,d,i),F(t.end,t,n,d,i),r.diagramId,$(t,i),r.layoutAlgorithm);(0,a.a6)(t)&&(a.lP.has(t.id)||await (0,a.jP)(e.edgeLabels,t),J(t,o))}function F(e,t,n,r,a){return a.getEdgeNode?.(e,t,r)??(e?n.get(e)??{}:{})}function $(e,t){return"function"==typeof t.skipIntersect?t.skipIntersect(e):t.skipIntersect??!1}function J(e,t){let n=t?.updatedPath??t?.originalPath,r=(0,s.zj)(),{subGraphTitleTotalMargin:d}=(0,i.Oi)({flowchart:r.flowchart??{}});if(e.label){let n=a.lP.get(e.id),{x:r,y:i}=(0,a.Pk)(e,t);n.attr("transform",`translate(${r}, ${i+d/2})`)}for(let[t,r]of[["startLeft",e.startLabelLeft],["startRight",e.startLabelRight],["endLeft",e.endLabelLeft],["endRight",e.endLabelRight]])if(r){let{x:r,y:i}=Q(e,t,n);a.UQ.get(e.id)[t].attr("transform",`translate(${r}, ${i})`)}}(0,g.K)(X,"createCommonLayoutRenderer"),(0,g.K)(B,"clearLayoutRenderState"),(0,g.K)(_,"defaultMeasureLayout"),(0,g.K)(M,"paintLayoutData"),(0,g.K)(G,"paintLayoutNode"),(0,g.K)(O,"shouldPaintAsCluster"),(0,g.K)(U,"buildNodeLookup"),(0,g.K)(j,"shouldSkipPaintEdge"),(0,g.K)(A,"paintLayoutEdge"),(0,g.K)(F,"getRenderedNode"),(0,g.K)($,"shouldSkipIntersect"),(0,g.K)(J,"positionRenderedEdgeLabel");var z={startLeft:"start_left",startRight:"start_right",endLeft:"end_left",endRight:"end_right"};function Q(e,t,n){let r=e.terminalLabelCenters?.[t];if(r)return{...r};if(!n)return{x:e.x,y:e.y};let a=t.startsWith("start")?e.arrowTypeStart:e.arrowTypeEnd;return o._K.calcTerminalLabelPosition(10*!!a,z[t],n)}(0,g.K)(Q,"terminalLabelTranslate")}}]);
@@ -0,0 +1,217 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[92],{20092:(e,t,s)=>{s.d(t,{AC:()=>B,tM:()=>_,ur:()=>v});var i=s(37669),r=s(62240),a=s(77996),n=s(10622),u=s(40090),o=s(64599),l=s(77351),c=s(73823),h=s(55490),d=s(27058),p=s(92826),g=s(58442),b=s(88252),f=s(93962),A=s(24190),y=s(21982),k=s(27401),m=["laneRole","laneIndex","drawnExtent"];function x(e){if(!e||"object"!=typeof e)return e;let t={...e};for(let e of m)Reflect.deleteProperty(t,e);return t}(0,b.K)(x,"withoutInternalKeys");var E=class{constructor(){this.vertexCounter=0,this.config=(0,p.D7)(),this.diagramId="",this.vertices=new Map,this.edges=[],this.classes=new Map,this.subGraphs=[],this.subGraphLookup=new Map,this.droppedSubGraphMembers=[],this.tooltips=new Map,this.subCount=0,this.firstGraphFlag=!0,this.secCount=-1,this.posCrossRef=[],this.funs=[],this.setAccTitle=p.SV,this.setAccDescription=p.EI,this.setDiagramTitle=p.ke,this.getAccTitle=p.iN,this.getAccDescription=p.m7,this.getDiagramTitle=p.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,b.K)(this,"FlowDB")}sanitizeText(e){return p.Y2.sanitizeText(e,this.config)}sanitizeNodeLabelType(e){switch(e){case"markdown":case"string":case"text":return e;default:return"markdown"}}setDiagramId(e){this.diagramId=e}lookUpDomId(e){for(let t of this.vertices.values())if(t.id===e)return this.diagramId?`${this.diagramId}-${t.domId}`:t.domId;return this.diagramId?`${this.diagramId}-${e}`:e}addVertex(e,t,s,i,r,a,u={},o){let h,d;if(!e||0===e.trim().length)return;if(void 0!==o){let e;e=o.includes("\n")?o+"\n":"{\n"+o+"\n}",h=x((0,n.H)(e,{schema:n.r}))}let b=this.subGraphLookup.get(e);if(b&&h){Object.keys(h).length>0&&(b.metadata={...b.metadata,...h});return}let f=this.edges.find(t=>t.id===e);if(f){let t=h;t?.animate!==void 0&&(f.animate=t.animate),t?.animation!==void 0&&(f.animation=t.animation),t?.curve!==void 0&&(f.interpolate=t.curve),t?.step!==void 0&&((0,l._p)(t)?f.step=t.step:g.R.warn(`Ignoring step on edge ${e}: expected a positive integer`,t.step));return}let A=this.vertices.get(e);if(void 0===A&&(void 0===t&&void 0===s&&null!=i&&g.R.warn(`Style applied to unknown node "${e}". This may indicate a typo. The node will be created automatically.`),A={id:e,labelType:"text",domId:"flowchart-"+e+"-"+this.vertexCounter,styles:[],classes:[]},this.vertices.set(e,A)),this.vertexCounter++,void 0!==t?(this.config=(0,p.D7)(),d=this.sanitizeText(t.text.trim()),A.labelType=t.type,d.startsWith('"')&&d.endsWith('"')&&(d=d.substring(1,d.length-1)),A.text=d):void 0===A.text&&(A.text=e),void 0!==s&&(A.type=s),null!=i&&i.forEach(e=>{A.styles.push(e)}),null!=r&&r.forEach(e=>{A.classes.push(e)}),void 0!==a&&(A.dir=a),void 0===A.props?A.props=u:void 0!==u&&Object.assign(A.props,u),void 0!==h){if(h.shape){if(h.shape!==h.shape.toLowerCase()||h.shape.includes("_"))throw Error(`No such shape: ${h.shape}. Shape names should be lowercase.`);if(!(0,c.aP)(h.shape))throw Error(`No such shape: ${h.shape}.`);A.type=h?.shape}h?.label&&(A.text=h?.label,A.labelType=this.sanitizeNodeLabelType(h?.labelType)),h?.icon&&(A.icon=h?.icon,h.label?.trim()||A.text!==e||(A.text="")),h?.form&&(A.form=h?.form),h?.pos&&(A.pos=h?.pos),h?.img&&(A.img=h?.img,h.label?.trim()||A.text!==e||(A.text="")),h?.constraint&&(A.constraint=h.constraint),h.w&&(A.assetWidth=Number(h.w)),h.h&&(A.assetHeight=Number(h.h))}}addSingleLink(e,t,s,i){let r={start:e,end:t,type:void 0,text:"",labelType:"text",classes:[],isUserDefinedId:!1,interpolate:this.edges.defaultInterpolate};g.R.info("abc78 Got edge...",r);let a=s.text;if(void 0!==a&&(r.text=this.sanitizeText(a.text.trim()),r.text.startsWith('"')&&r.text.endsWith('"')&&(r.text=r.text.substring(1,r.text.length-1)),r.labelType=this.sanitizeNodeLabelType(a.type)),void 0!==s&&(r.type=s.type,r.stroke=s.stroke,r.length=s.length>10?10:s.length),i&&!this.edges.some(e=>e.id===i))r.id=i,r.isUserDefinedId=!0;else{let e=this.edges.filter(e=>e.start===r.start&&e.end===r.end);0===e.length?r.id=(0,d.rY)(r.start,r.end,{counter:0,prefix:"L"}):r.id=(0,d.rY)(r.start,r.end,{counter:e.length+1,prefix:"L"})}if(this.edges.length<(this.config.maxEdges??500))g.R.info("Pushing edge..."),this.edges.push(r);else throw Error(`Edge limit exceeded. ${this.edges.length} edges found, but the limit is ${this.config.maxEdges}.
2
+
3
+ Initialize mermaid with maxEdges set to a higher number to allow more edges.
4
+ You cannot set this config via configuration inside the diagram as it is a secure config.
5
+ You have to call mermaid.initialize.`)}isLinkData(e){return null!==e&&"object"==typeof e&&"id"in e&&"string"==typeof e.id}addLink(e,t,s){let i=this.isLinkData(s)?s.id.replace("@",""):void 0;for(let r of(g.R.info("addLink",e,t,i),e))for(let a of t){let n=r===e[e.length-1],u=a===t[0];n&&u?this.addSingleLink(r,a,s,i):this.addSingleLink(r,a,s,void 0)}}updateLinkInterpolate(e,t){e.forEach(e=>{"default"===e?this.edges.defaultInterpolate=t:this.edges[e].interpolate=t})}updateLink(e,t){e.forEach(e=>{if("number"==typeof e&&e>=this.edges.length)throw Error(`The index ${e} 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"===e?this.edges.defaultStyle=t:(this.edges[e].style=t,(this.edges[e]?.style?.length??0)>0&&!this.edges[e]?.style?.some(e=>e?.startsWith("fill"))&&this.edges[e]?.style?.push("fill:none"))})}addClass(e,t){let s=t.join().replace(/\\,/g,"\xa7\xa7\xa7").replace(/,/g,";").replace(/§§§/g,",").split(";");e.split(",").forEach(e=>{let t=this.classes.get(e);void 0===t&&(t={id:e,styles:[],textStyles:[]},this.classes.set(e,t)),null!=s&&s.forEach(e=>{if(/color/.exec(e)){let s=e.replace("fill","bgFill");t.textStyles.push(s)}t.styles.push(e)})})}setDirection(e){this.direction=e.trim(),/.*</.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(e,t){for(let s of e.split(",")){let e=this.vertices.get(s);e&&e.classes.push(t);let i=this.edges.find(e=>e.id===s);i&&i.classes.push(t);let r=this.subGraphLookup.get(s);r&&r.classes.push(t)}}setTooltip(e,t){if(void 0!==t)for(let s of(t=this.sanitizeText(t),e.split(",")))this.tooltips.set("gen-1"===this.version?this.lookUpDomId(s):s,t)}setClickFun(e,t,s){if("loose"!==(0,p.D7)().securityLevel||void 0===t)return;let i=[];if("string"==typeof s){i=s.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let e=0;e<i.length;e++){let t=i[e].trim();t.startsWith('"')&&t.endsWith('"')&&(t=t.substr(1,t.length-2)),i[e]=t}}0===i.length&&i.push(e);let r=this.vertices.get(e);r&&(r.haveCallback=!0,this.funs.push(()=>{let s=this.lookUpDomId(e),r=document.querySelector(`[id="${s}"]`);null!==r&&r.addEventListener("click",()=>{d._K.runFunc(t,...i)},!1)}))}setLink(e,t,s){e.split(",").forEach(e=>{let i=this.vertices.get(e);void 0!==i&&(i.link=d._K.formatUrl(t,this.config),i.linkTarget=s)}),this.setClass(e,"clickable")}getTooltip(e){return this.tooltips.get(e)}setClickEvent(e,t,s){e.split(",").forEach(e=>{this.setClickFun(e,t,s)}),this.setClass(e,"clickable")}bindFunctions(e){this.funs.forEach(t=>{t(e)})}getDirection(){return this.direction?.trim()}getVertices(){return this.vertices}getEdges(){return this.edges}getClasses(){return this.classes}setupToolTips(e){let t=(0,o.Ck)();(0,f.Lt)(e).select("svg").selectAll("g.node").on("mouseover",e=>{let s=(0,f.Lt)(e.currentTarget),i=s.attr("title");if(null===i)return;let r=e.currentTarget?.getBoundingClientRect();t.transition().duration(200).style("opacity",".9"),t.text(s.attr("title")).style("left",window.scrollX+r.left+(r.right-r.left)/2+"px").style("top",window.scrollY+r.bottom+"px"),t.html(A.A.sanitize(i)),s.classed("hover",!0)}).on("mouseout",e=>{t.transition().duration(500).style("opacity",0),(0,f.Lt)(e.currentTarget).classed("hover",!1)})}clear(e="gen-2"){this.vertices=new Map,this.classes=new Map,this.edges=[],this.funs=[this.setupToolTips.bind(this)],this.diagramId="",this.subGraphs=[],this.subGraphLookup=new Map,this.droppedSubGraphMembers=[],this.subCount=0,this.tooltips=new Map,this.firstGraphFlag=!0,this.version=e,this.config=(0,p.D7)(),(0,p.IU)()}setGen(e){this.version=e||"gen-2"}defaultStyle(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"}addSubGraph(e,t,s){let i=e.text.trim(),r=s.text;e===s&&/\s/.exec(s.text)&&(i=void 0);let a=(0,b.K)(e=>{let t,s={boolean:{},number:{},string:{}},i=[];return{nodeList:e.filter(function(e){let r=typeof e;return e.stmt&&"dir"===e.stmt?(t=e.value,!1):""!==e.trim()&&(r in s?!s[r].hasOwnProperty(e)&&(s[r][e]=!0):!i.includes(e)&&i.push(e))}),dir:t}},"uniq")(t.flat()),n=a.nodeList,u=a.dir,o=(0,p.D7)().flowchart??{};if(u=u??(o.inheritDir?this.getDirection()??(0,p.D7)().direction??void 0:void 0),"gen-1"===this.version)for(let e=0;e<n.length;e++)n[e]=this.lookUpDomId(n[e]);i=i??"subGraph"+this.subCount,r=r||"",r=this.sanitizeText(r),this.subCount=this.subCount+1;let l={id:i,nodes:n,title:r.trim(),classes:[],dir:u,labelType:this.sanitizeNodeLabelType(s?.type)};g.R.info("Adding",l.id,l.nodes,l.dir);let c=this.makeUniq(l,this.subGraphs).nodes;this.recordDroppedMembers(l,c),l.nodes=c.filter(e=>e!==i);let h=this.subGraphs.find(e=>e.id===i);return h?h.nodes.push(...l.nodes):this.subGraphs.push(l),this.subGraphLookup.set(i,h??l),i}recordDroppedMembers(e,t){let s=new Set(t);for(let t of e.nodes){if(s.has(t)||t===e.id)continue;let i=this.subGraphs.find(e=>e.nodes.includes(t));i&&i.id!==e.id&&!this.isNestedIn(i.id,e)&&this.droppedSubGraphMembers.push({node:t,keptBy:i.id,droppedFrom:e.id})}}isNestedIn(e,t){let s=new Set,i=e;for(;void 0!==i&&!s.has(i);){if(t.nodes.includes(i))return!0;s.add(i);let e=i;i=this.subGraphs.find(t=>t.nodes.includes(e))?.id}return!1}getPosForId(e){for(let[t,s]of this.subGraphs.entries())if(s.id===e)return t;return -1}indexNodes2(e,t){let s=this.subGraphs[t].nodes;if(this.secCount=this.secCount+1,this.secCount>2e3)return{result:!1,count:0};if(this.posCrossRef[this.secCount]=t,this.subGraphs[t].id===e)return{result:!0,count:0};let i=0,r=1;for(;i<s.length;){let t=this.getPosForId(s[i]);if(t>=0){let s=this.indexNodes2(e,t);if(s.result)return{result:!0,count:r+s.count};r+=s.count}i+=1}return{result:!1,count:r}}getDepthFirstPos(e){return this.posCrossRef[e]}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(e){let t=e.trim(),s="arrow_open";switch(t[0]){case"<":s="arrow_point",t=t.slice(1);break;case"x":s="arrow_cross",t=t.slice(1);break;case"o":s="arrow_circle",t=t.slice(1)}let i="normal";return t.includes("=")&&(i="thick"),t.includes(".")&&(i="dotted"),{type:s,stroke:i}}countChar(e,t){let s=t.length,i=0;for(let r=0;r<s;++r)t[r]===e&&++i;return i}destructEndLink(e){let t=e.trim(),s=t.slice(0,-1),i="arrow_open";switch(t.slice(-1)){case"x":i="arrow_cross",t.startsWith("x")&&(i="double_"+i,s=s.slice(1));break;case">":i="arrow_point",t.startsWith("<")&&(i="double_"+i,s=s.slice(1));break;case"o":i="arrow_circle",t.startsWith("o")&&(i="double_"+i,s=s.slice(1))}let r="normal",a=s.length-1;s.startsWith("=")&&(r="thick"),s.startsWith("~")&&(r="invisible");let n=this.countChar(".",s);return n&&(r="dotted",a=n),{type:i,stroke:r,length:a}}destructLink(e,t){let s,i=this.destructEndLink(e);if(t){if((s=this.destructStartLink(t)).stroke!==i.stroke)return{type:"INVALID",stroke:"INVALID"};if("arrow_open"===s.type)s.type=i.type;else{if(s.type!==i.type)return{type:"INVALID",stroke:"INVALID"};s.type="double_"+s.type}return"double_arrow"===s.type&&(s.type="double_arrow_point"),s.length=i.length,s}return i}exists(e,t){for(let s of e)if(s.nodes.includes(t))return!0;return!1}makeUniq(e,t){let s=[];return e.nodes.forEach((i,r)=>{this.exists(t,i)||s.push(e.nodes[r])}),{nodes:s}}getTypeFromVertex(e){if(e.img)return"imageSquare";if(e.icon)return"circle"===e.form?"iconCircle":"square"===e.form?"iconSquare":"rounded"===e.form?"iconRounded":"icon";switch(e.type){case"square":case void 0:return"squareRect";case"round":return"roundedRect";case"ellipse":return"ellipse";default:return e.type}}findNode(e,t){return e.find(e=>e.id===t)}destructEdgeType(e){let t="none",s="arrow_point";switch(e){case"arrow_point":case"arrow_circle":case"arrow_cross":s=e;break;case"double_arrow_point":case"double_arrow_circle":case"double_arrow_cross":s=t=e.replace("double_","")}return{arrowTypeStart:t,arrowTypeEnd:s}}addNodeFromVertex(e,t,s,i,r,a){let n=s.get(e.id),u=i.get(e.id)??!1,o=this.findNode(t,e.id);if(o)o.cssStyles=e.styles,o.cssCompiledStyles=this.getCompiledStyles(e.classes),o.cssClasses=e.classes.join(" ");else{let s={id:e.id,label:e.text,labelType:e.labelType,labelStyle:"",parentId:n,padding:r.flowchart?.padding||8,cssStyles:e.styles,cssCompiledStyles:this.getCompiledStyles(["default","node",...e.classes]),cssClasses:"default "+e.classes.join(" "),dir:e.dir,domId:e.domId,look:a,link:e.link,linkTarget:e.linkTarget,tooltip:this.getTooltip(e.id),icon:e.icon,pos:e.pos,img:e.img,assetWidth:e.assetWidth,assetHeight:e.assetHeight,constraint:e.constraint};u?t.push({...s,isGroup:!0,shape:"rect"}):t.push({...s,isGroup:!1,shape:this.getTypeFromVertex(e),minWidth:r.flowchart?.minNodeWidth})}}getCompiledStyles(e){let t=[];for(let s of e){let e=this.classes.get(s);e?.styles&&(t=[...t,...e.styles??[]].map(e=>e.trim())),e?.textStyles&&(t=[...t,...e.textStyles??[]].map(e=>e.trim()))}return t}getData(){let e=(0,p.D7)(),t=[],s=[],i=this.getSubGraphs(),r=new Map,a=new Map,n=new Map;for(let e of i)for(let t of e.nodes)this.subGraphLookup.has(t)&&n.set(t,e.id);let u=new Map,o=new Map;for(let e of i){let t=n.get(e.id);void 0!==t&&o.set(t,[...o.get(t)??[],e.id])}let c=0,h=(0,b.K)(e=>{for(let t of(u.set(e,c++),o.get(e)??[]))h(t)},"walk");for(let e of i)n.has(e.id)||h(e.id);let g=(0,b.K)(e=>this.subGraphLookup.get(e)?.metadata?.view==="collapsed","isCollapsed"),f=(0,b.K)(e=>{let t,s=new Set,i=e;for(;void 0!==i&&!s.has(i);)s.add(i),g(i)&&(t=i),i=n.get(i);return t},"outermostCollapsed"),A=new Set,y=new Map;for(let e of i){let t=f(e.id);if(void 0!==t)for(let s of(e.id!==t&&(A.add(e.id),y.set(e.id,t)),e.nodes))s!==t&&(A.add(s),y.set(s,t))}for(let e=i.length-1;e>=0;e--){let t=i[e];if(!A.has(t.id))for(let e of(t.nodes.length>0&&a.set(t.id,!0),t.nodes))r.set(e,t.id)}for(let s=i.length-1;s>=0;s--){let a=i[s];A.has(a.id)||(a.metadata?.view==="collapsed"?t.push({id:a.id,label:a.title,labelStyle:"",labelType:a.labelType,parentId:r.get(a.id),padding:8,cssCompiledStyles:this.getCompiledStyles(a.classes),cssClasses:a.classes.join(" "),shape:"collapsedGroup",dir:a.dir,isGroup:!1,look:e.look,colorIndex:u.get(a.id)}):t.push({id:a.id,label:a.title,labelStyle:"",labelType:a.labelType,parentId:r.get(a.id),padding:8,cssCompiledStyles:this.getCompiledStyles(a.classes),cssClasses:a.classes.join(" "),shape:"rect",dir:a.dir,isGroup:!0,look:e.look,colorIndex:u.get(a.id),metadata:a.metadata}))}this.getVertices().forEach(s=>{A.has(s.id)||this.addNodeFromVertex(s,t,r,a,e,e.look||"classic")});let k=this.getEdges(),m=k.reduce((e,t)=>(0,l._p)(t)?Math.max(e,t.step):e,0),x=(0,l.Lt)(e.flowchart?.stepDuration),E=e.flowchart?.stepNumbers===!0?{showStepNumber:!0}:{};return k.forEach((t,i)=>{let{arrowTypeStart:r,arrowTypeEnd:a}=this.destructEdgeType(t.type),n=[...k.defaultStyle??[]],u=y.get(t.start)??t.start,o=y.get(t.end)??t.end;if(u===o&&(y.has(t.start)||y.has(t.end)))return;t.style&&n.push(...t.style);let c={id:(0,d.rY)(u,o,{counter:i,prefix:"L"},t.id),isUserDefinedId:t.isUserDefinedId,start:u,end:o,type:t.type??"normal",label:t.text,labelType:t.labelType,labelpos:"c",thickness:t.stroke,minlen:t.length,classes:t?.stroke==="invisible"?"":"edge-thickness-normal edge-pattern-solid flowchart-link",arrowTypeStart:t?.stroke==="invisible"||t?.type==="arrow_open"?"none":r,arrowTypeEnd:t?.stroke==="invisible"||t?.type==="arrow_open"?"none":a,arrowheadStyle:"fill: #333",cssCompiledStyles:this.getCompiledStyles(t.classes),labelStyle:n,style:n,pattern:t.stroke,look:e.look,animate:t.animate,animation:t.animation,...(0,l._p)(t)?{step:t.step,stepCount:m,stepDuration:x,...E}:{},curve:t.interpolate||this.edges.defaultInterpolate||e.flowchart?.curve};s.push(c)}),{nodes:t,edges:s,other:this.droppedSubGraphMembers.length>0?{droppedSubGraphMembers:[...this.droppedSubGraphMembers]}:{},config:e}}defaultConfig(){return p.ME.flowchart}},C={getClasses:(0,b.K)(function(e,t){return t.db.getClasses()},"getClasses"),draw:(0,b.K)(async function(e,t,s,i){g.R.info("REF0:"),g.R.info("Drawing state diagram (v2)",t);let{securityLevel:n,flowchart:o,layout:l}=(0,p.D7)();i.db.setDiagramId(t),g.R.debug("Before getData: ");let c=i.db.getData();g.R.debug("Data: ",c);let h=(0,r.A)(t,n),b=i.db.getDirection();c.type=i.type,c.layoutAlgorithm=(0,u.q7)(l),c.direction=b,c.nodeSpacing=o?.nodeSpacing||50,c.rankSpacing=o?.rankSpacing||50,c.markers=["point","circle","cross"],c.diagramId=t,g.R.debug("REF1:",c),await (0,u.XX)(c,h);let f=c.config.flowchart?.diagramPadding??8;d._K.insertTitle(h,"flowchartTitleText",o?.titleTopMargin||0,i.db.getDiagramTitle()),(0,a.P)(h,f,"flowchart",o?.useMaxWidth||!1)},"draw")},D=function(){var e=(0,b.K)(function(e,t,s,i){for(s=s||{},i=e.length;i--;s[e[i]]=t);return s},"o"),t=[1,4],s=[1,3],i=[1,5],r=[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,125],a=[2,2],n=[1,13],u=[1,14],o=[1,15],l=[1,16],c=[1,23],h=[1,25],d=[1,26],p=[1,27],g=[1,50],f=[1,49],A=[1,29],y=[1,30],k=[1,31],m=[1,32],x=[1,33],E=[1,45],C=[1,47],D=[1,43],T=[1,48],S=[1,44],F=[1,51],_=[1,46],v=[1,52],B=[1,53],$=[1,34],w=[1,35],L=[1,36],I=[1,37],R=[1,38],N=[1,58],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,125],G=[1,62],P=[1,61],M=[1,63],O=[8,9,11,75,77,78],V=[1,79],U=[1,92],W=[1,97],z=[1,96],j=[1,93],Y=[1,89],H=[1,95],X=[1,91],q=[1,98],Q=[1,94],J=[1,99],Z=[1,90],ee=[8,9,10,11,40,75,77,78],et=[8,9,10,11,40,46,75,77,78],es=[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],ei=[8,9,11,44,60,75,77,78,89,102,105,106,109,111,114,115,116],er=[44,60,89,102,105,106,109,111,114,115,116],ea=[1,122],en=[1,123],eu=[1,125],eo=[1,124],el=[44,60,62,74,89,102,105,106,109,111,114,115,116],ec=[1,134],eh=[1,148],ed=[1,149],ep=[1,150],eg=[1,151],eb=[1,136],ef=[1,138],eA=[1,142],ey=[1,143],ek=[1,144],em=[1,145],ex=[1,146],eE=[1,147],eC=[1,152],eD=[1,153],eT=[1,132],eS=[1,133],eF=[1,140],e_=[1,135],ev=[1,139],eB=[1,137],e$=[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,125],ew=[1,155],eL=[1,157],eI=[8,9,11],eR=[8,9,10,11,14,44,60,89,105,106,109,111,114,115,116],eN=[1,177],eK=[1,173],eG=[1,174],eP=[1,178],eM=[1,175],eO=[1,176],eV=[77,116,119],eU=[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],eW=[1,205],ez=[10,106],ej=[31,49,51,53,55,57,62,64,66,67,69,71,116,117,118],eY=[1,249],eH=[1,247],eX=[1,251],eq=[1,245],eQ=[1,246],eJ=[1,248],eZ=[1,250],e1=[1,252],e0=[1,270],e2=[8,9,11,106],e8=[8,9,10,11,60,84,105,106,109,110,111,112],e6={trace:(0,b.K)(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,direction_td:125,$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",125:"direction_td"},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,5],[20,3],[20,4],[20,2],[20,2],[20,3],[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],[33,1]],performAction:(0,b.K)(function(e,t,s,i,r,a,n){var u=a.length-1;switch(r){case 2:case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 3:(!Array.isArray(a[u])||a[u].length>0)&&a[u-1].push(a[u]),this.$=a[u-1];break;case 4:case 185:case 44:case 56:case 78:case 183:this.$=a[u];break;case 11:i.setDirection("TB"),this.$="TB";break;case 12:i.setDirection(a[u-1]),this.$=a[u-1];break;case 27:this.$=a[u-1].nodes;break;case 33:this.$=i.addSubGraph(a[u-6],a[u-1],a[u-4]);break;case 34:this.$=i.addSubGraph(a[u-3],a[u-1],a[u-3]);break;case 35:this.$=i.addSubGraph(void 0,a[u-1],void 0);break;case 37:this.$=a[u].trim(),i.setAccTitle(this.$);break;case 38:case 39:this.$=a[u].trim(),i.setAccDescription(this.$);break;case 43:case 135:this.$=a[u-1]+a[u];break;case 45:i.addVertex(a[u-1][a[u-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,a[u]),i.addLink(a[u-3].stmt,a[u-1],a[u-2]),this.$={stmt:a[u-1],nodes:a[u-1].concat(a[u-3].nodes)};break;case 46:i.addVertex(a[u-2][a[u-2].length-1],void 0,void 0,void 0,void 0,void 0,void 0,a[u-1]),i.addLink(a[u-4].stmt,a[u-2],a[u-3]),this.$={stmt:a[u-2],nodes:a[u-2].concat(a[u-4].nodes)};break;case 47:i.addLink(a[u-2].stmt,a[u],a[u-1]),this.$={stmt:a[u],nodes:a[u].concat(a[u-2].nodes)};break;case 48:i.addLink(a[u-3].stmt,a[u-1],a[u-2]),this.$={stmt:a[u-1],nodes:a[u-1].concat(a[u-3].nodes)};break;case 49:this.$={stmt:a[u-1],nodes:a[u-1]};break;case 50:i.addVertex(a[u-1][a[u-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,a[u]),this.$={stmt:a[u-1],nodes:a[u-1],shapeData:a[u]};break;case 51:i.addVertex(a[u-2][a[u-2].length-1],void 0,void 0,void 0,void 0,void 0,void 0,a[u-1]),this.$={stmt:a[u-2],nodes:a[u-2],shapeData:a[u-1]};break;case 52:this.$={stmt:a[u],nodes:a[u]};break;case 53:case 130:case 132:this.$=[a[u]];break;case 54:i.addVertex(a[u-5][a[u-5].length-1],void 0,void 0,void 0,void 0,void 0,void 0,a[u-4]),this.$=a[u-5].concat(a[u]);break;case 55:this.$=a[u-4].concat(a[u]);break;case 57:this.$=a[u-2],i.setClass(a[u-2],a[u]);break;case 58:this.$=a[u-3],i.addVertex(a[u-3],a[u-1],"square");break;case 59:this.$=a[u-3],i.addVertex(a[u-3],a[u-1],"doublecircle");break;case 60:this.$=a[u-5],i.addVertex(a[u-5],a[u-2],"circle");break;case 61:this.$=a[u-3],i.addVertex(a[u-3],a[u-1],"ellipse");break;case 62:this.$=a[u-3],i.addVertex(a[u-3],a[u-1],"stadium");break;case 63:this.$=a[u-3],i.addVertex(a[u-3],a[u-1],"subroutine");break;case 64:this.$=a[u-7],i.addVertex(a[u-7],a[u-1],"rect",void 0,void 0,void 0,Object.fromEntries([[a[u-5],a[u-3]]]));break;case 65:this.$=a[u-3],i.addVertex(a[u-3],a[u-1],"cylinder");break;case 66:this.$=a[u-3],i.addVertex(a[u-3],a[u-1],"round");break;case 67:this.$=a[u-3],i.addVertex(a[u-3],a[u-1],"diamond");break;case 68:this.$=a[u-5],i.addVertex(a[u-5],a[u-2],"hexagon");break;case 69:this.$=a[u-3],i.addVertex(a[u-3],a[u-1],"odd");break;case 70:this.$=a[u-3],i.addVertex(a[u-3],a[u-1],"trapezoid");break;case 71:this.$=a[u-3],i.addVertex(a[u-3],a[u-1],"inv_trapezoid");break;case 72:this.$=a[u-3],i.addVertex(a[u-3],a[u-1],"lean_right");break;case 73:this.$=a[u-3],i.addVertex(a[u-3],a[u-1],"lean_left");break;case 74:this.$=a[u],i.addVertex(a[u]);break;case 75:a[u-1].text=a[u],this.$=a[u-1];break;case 76:case 77:a[u-2].text=a[u-1],this.$=a[u-2];break;case 79:var o=i.destructLink(a[u],a[u-2]);this.$={type:o.type,stroke:o.stroke,length:o.length,text:a[u-1]};break;case 80:var o=i.destructLink(a[u],a[u-2]);this.$={type:o.type,stroke:o.stroke,length:o.length,text:a[u-1],id:a[u-3]};break;case 81:case 88:case 103:case 105:this.$={text:a[u],type:"text"};break;case 82:case 89:case 104:this.$={text:a[u-1].text+""+a[u],type:a[u-1].type};break;case 83:case 90:this.$={text:a[u],type:"string"};break;case 84:case 91:case 106:this.$={text:a[u],type:"markdown"};break;case 85:var o=i.destructLink(a[u]);this.$={type:o.type,stroke:o.stroke,length:o.length};break;case 86:var o=i.destructLink(a[u]);this.$={type:o.type,stroke:o.stroke,length:o.length,id:a[u-1]};break;case 87:this.$=a[u-1];break;case 107:this.$=a[u-4],i.addClass(a[u-2],a[u]);break;case 108:this.$=a[u-4],i.setClass(a[u-2],a[u]);break;case 109:case 117:this.$=a[u-1],i.setClickEvent(a[u-1],a[u]);break;case 110:case 118:this.$=a[u-3],i.setClickEvent(a[u-3],a[u-2]),i.setTooltip(a[u-3],a[u]);break;case 111:this.$=a[u-2],i.setClickEvent(a[u-2],a[u-1],a[u]);break;case 112:this.$=a[u-4],i.setClickEvent(a[u-4],a[u-3],a[u-2]),i.setTooltip(a[u-4],a[u]);break;case 113:this.$=a[u-2],i.setLink(a[u-2],a[u]);break;case 114:this.$=a[u-4],i.setLink(a[u-4],a[u-2]),i.setTooltip(a[u-4],a[u]);break;case 115:this.$=a[u-4],i.setLink(a[u-4],a[u-2],a[u]);break;case 116:this.$=a[u-6],i.setLink(a[u-6],a[u-4],a[u]),i.setTooltip(a[u-6],a[u-2]);break;case 119:this.$=a[u-1],i.setLink(a[u-1],a[u]);break;case 120:this.$=a[u-3],i.setLink(a[u-3],a[u-2]),i.setTooltip(a[u-3],a[u]);break;case 121:this.$=a[u-3],i.setLink(a[u-3],a[u-2],a[u]);break;case 122:this.$=a[u-5],i.setLink(a[u-5],a[u-4],a[u]),i.setTooltip(a[u-5],a[u-2]);break;case 123:this.$=a[u-4],i.addVertex(a[u-2],void 0,void 0,a[u]);break;case 124:this.$=a[u-4],i.updateLink([a[u-2]],a[u]);break;case 125:this.$=a[u-4],i.updateLink(a[u-2],a[u]);break;case 126:this.$=a[u-8],i.updateLinkInterpolate([a[u-6]],a[u-2]),i.updateLink([a[u-6]],a[u]);break;case 127:this.$=a[u-8],i.updateLinkInterpolate(a[u-6],a[u-2]),i.updateLink(a[u-6],a[u]);break;case 128:this.$=a[u-6],i.updateLinkInterpolate([a[u-4]],a[u]);break;case 129:this.$=a[u-6],i.updateLinkInterpolate(a[u-4],a[u]);break;case 131:case 133:a[u-2].push(a[u]),this.$=a[u-2];break;case 184:case 186:this.$=a[u-1]+""+a[u];break;case 187:this.$={stmt:"dir",value:"TB"};break;case 188:this.$={stmt:"dir",value:"BT"};break;case 189:this.$={stmt:"dir",value:"RL"};break;case 190:this.$={stmt:"dir",value:"LR"};break;case 191:this.$={stmt:"dir",value:"TD"}}},"anonymous"),table:[{3:1,4:2,9:t,10:s,12:i},{1:[3]},e(r,a,{5:6}),{4:7,9:t,10:s,12:i},{4:8,9:t,10:s,12:i},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:n,9:u,10:o,11:l,20:17,22:18,23:19,24:20,25:21,26:22,27:c,33:24,34:h,36:d,38:p,42:28,43:39,44:g,45:40,47:41,60:f,84:A,85:y,86:k,87:m,88:x,89:E,102:C,105:D,106:T,109:S,111:F,113:42,114:_,115:v,116:B,121:$,122:w,123:L,124:I,125:R},e(r,[2,9]),e(r,[2,10]),e(r,[2,11]),{8:[1,55],9:[1,56],10:N,15:54,18:57},e(K,[2,3]),e(K,[2,4]),e(K,[2,5]),e(K,[2,6]),e(K,[2,7]),e(K,[2,8]),{8:G,9:P,11:M,21:59,41:60,72:64,75:[1,65],77:[1,67],78:[1,66]},{8:G,9:P,11:M,21:68},{8:G,9:P,11:M,21:69},{8:G,9:P,11:M,21:70},{8:G,9:P,11:M,21:71},{8:G,9:P,11:M,21:72},{8:G,9:P,10:[1,73],11:M,21:74},e(K,[2,36]),{35:[1,75]},{37:[1,76]},e(K,[2,39]),e(O,[2,52],{18:77,39:78,10:N,40:V}),{10:[1,80]},{10:[1,81]},{10:[1,82]},{10:[1,83]},{14:U,44:W,60:z,80:[1,87],89:j,95:[1,84],97:[1,85],101:86,105:Y,106:H,109:X,111:q,114:Q,115:J,116:Z,120:88},e(K,[2,187]),e(K,[2,188]),e(K,[2,189]),e(K,[2,190]),e(K,[2,191]),e(ee,[2,53]),e(ee,[2,56],{46:[1,100]}),e(et,[2,74],{113:113,29:[1,101],44:g,48:[1,102],50:[1,103],52:[1,104],54:[1,105],56:[1,106],58:[1,107],60:f,63:[1,108],65:[1,109],67:[1,110],68:[1,111],70:[1,112],89:E,102:C,105:D,106:T,109:S,111:F,114:_,115:v,116:B}),e(es,[2,183]),e(es,[2,144]),e(es,[2,145]),e(es,[2,146]),e(es,[2,147]),e(es,[2,148]),e(es,[2,149]),e(es,[2,150]),e(es,[2,151]),e(es,[2,152]),e(es,[2,153]),e(es,[2,154]),e(r,[2,12]),e(r,[2,18]),e(r,[2,19]),{9:[1,114]},e(ei,[2,26],{18:115,10:N}),e(K,[2,27]),{42:116,43:39,44:g,45:40,47:41,60:f,89:E,102:C,105:D,106:T,109:S,111:F,113:42,114:_,115:v,116:B},e(K,[2,40]),e(K,[2,41]),e(K,[2,42]),e(er,[2,78],{73:117,62:[1,119],74:[1,118]}),{76:120,79:121,80:ea,81:en,116:eu,119:eo},{75:[1,126],77:[1,127]},e(el,[2,85]),e(K,[2,28]),e(K,[2,29]),e(K,[2,30]),e(K,[2,31]),e(K,[2,32]),{10:ec,12:eh,14:ed,27:ep,28:128,32:eg,44:eb,60:ef,75:eA,80:[1,130],81:[1,131],83:141,84:ey,85:ek,86:em,87:ex,88:eE,89:eC,90:eD,91:129,105:eT,109:eS,111:eF,114:e_,115:ev,116:eB},e(e$,a,{5:154}),e(K,[2,37]),e(K,[2,38]),e(O,[2,49],{44:ew}),e(O,[2,50],{18:156,10:N,40:eL}),e(ee,[2,44]),{44:g,47:158,60:f,89:E,102:C,105:D,106:T,109:S,111:F,113:42,114:_,115:v,116:B},{102:[1,159],103:160,105:[1,161]},{44:g,47:162,60:f,89:E,102:C,105:D,106:T,109:S,111:F,113:42,114:_,115:v,116:B},{44:g,47:163,60:f,89:E,102:C,105:D,106:T,109:S,111:F,113:42,114:_,115:v,116:B},e(eI,[2,109],{10:[1,164],96:[1,165]}),{80:[1,166]},e(eI,[2,117],{120:168,10:[1,167],14:U,44:W,60:z,89:j,105:Y,106:H,109:X,111:q,114:Q,115:J,116:Z}),e(eI,[2,119],{10:[1,169]}),e(eR,[2,185]),e(eR,[2,172]),e(eR,[2,173]),e(eR,[2,174]),e(eR,[2,175]),e(eR,[2,176]),e(eR,[2,177]),e(eR,[2,178]),e(eR,[2,179]),e(eR,[2,180]),e(eR,[2,181]),e(eR,[2,182]),{44:g,47:170,60:f,89:E,102:C,105:D,106:T,109:S,111:F,113:42,114:_,115:v,116:B},{30:171,67:eN,80:eK,81:eG,82:172,116:eP,117:eM,118:eO},{30:179,67:eN,80:eK,81:eG,82:172,116:eP,117:eM,118:eO},{30:181,50:[1,180],67:eN,80:eK,81:eG,82:172,116:eP,117:eM,118:eO},{30:182,67:eN,80:eK,81:eG,82:172,116:eP,117:eM,118:eO},{30:183,67:eN,80:eK,81:eG,82:172,116:eP,117:eM,118:eO},{30:184,67:eN,80:eK,81:eG,82:172,116:eP,117:eM,118:eO},{109:[1,185]},{30:186,67:eN,80:eK,81:eG,82:172,116:eP,117:eM,118:eO},{30:187,65:[1,188],67:eN,80:eK,81:eG,82:172,116:eP,117:eM,118:eO},{30:189,67:eN,80:eK,81:eG,82:172,116:eP,117:eM,118:eO},{30:190,67:eN,80:eK,81:eG,82:172,116:eP,117:eM,118:eO},{30:191,67:eN,80:eK,81:eG,82:172,116:eP,117:eM,118:eO},e(es,[2,184]),e(r,[2,20]),e(ei,[2,25]),e(O,[2,47],{39:192,18:193,10:N,40:V}),e(er,[2,75],{10:[1,194]}),{10:[1,195]},{30:196,67:eN,80:eK,81:eG,82:172,116:eP,117:eM,118:eO},{77:[1,197],79:198,116:eu,119:eo},e(eV,[2,81]),e(eV,[2,83]),e(eV,[2,84]),e(eV,[2,170]),e(eV,[2,171]),{76:199,79:121,80:ea,81:en,116:eu,119:eo},e(el,[2,86]),{8:G,9:P,10:ec,11:M,12:eh,14:ed,21:201,27:ep,29:[1,200],32:eg,44:eb,60:ef,75:eA,83:141,84:ey,85:ek,86:em,87:ex,88:eE,89:eC,90:eD,91:202,105:eT,109:eS,111:eF,114:e_,115:ev,116:eB},e(eU,[2,103]),e(eU,[2,105]),e(eU,[2,106]),e(eU,[2,159]),e(eU,[2,160]),e(eU,[2,161]),e(eU,[2,162]),e(eU,[2,163]),e(eU,[2,164]),e(eU,[2,165]),e(eU,[2,166]),e(eU,[2,167]),e(eU,[2,168]),e(eU,[2,169]),e(eU,[2,92]),e(eU,[2,93]),e(eU,[2,94]),e(eU,[2,95]),e(eU,[2,96]),e(eU,[2,97]),e(eU,[2,98]),e(eU,[2,99]),e(eU,[2,100]),e(eU,[2,101]),e(eU,[2,102]),{6:11,7:12,8:n,9:u,10:o,11:l,20:17,22:18,23:19,24:20,25:21,26:22,27:c,32:[1,203],33:24,34:h,36:d,38:p,42:28,43:39,44:g,45:40,47:41,60:f,84:A,85:y,86:k,87:m,88:x,89:E,102:C,105:D,106:T,109:S,111:F,113:42,114:_,115:v,116:B,121:$,122:w,123:L,124:I,125:R},{10:N,18:204},e(O,[2,51],{44:eW}),e(ee,[2,43]),{10:[1,206],44:g,60:f,89:E,102:C,105:D,106:T,109:S,111:F,113:113,114:_,115:v,116:B},{10:[1,207]},{10:[1,208],106:[1,209]},e(ez,[2,130]),{10:[1,210],44:g,60:f,89:E,102:C,105:D,106:T,109:S,111:F,113:113,114:_,115:v,116:B},{10:[1,211],44:g,60:f,89:E,102:C,105:D,106:T,109:S,111:F,113:113,114:_,115:v,116:B},{80:[1,212]},e(eI,[2,111],{10:[1,213]}),e(eI,[2,113],{10:[1,214]}),{80:[1,215]},e(eR,[2,186]),{80:[1,216],98:[1,217]},e(ee,[2,57],{113:113,44:g,60:f,89:E,102:C,105:D,106:T,109:S,111:F,114:_,115:v,116:B}),{31:[1,218],67:eN,82:219,116:eP,117:eM,118:eO},e(ej,[2,88]),e(ej,[2,90]),e(ej,[2,91]),e(ej,[2,155]),e(ej,[2,156]),e(ej,[2,157]),e(ej,[2,158]),{49:[1,220],67:eN,82:219,116:eP,117:eM,118:eO},{30:221,67:eN,80:eK,81:eG,82:172,116:eP,117:eM,118:eO},{51:[1,222],67:eN,82:219,116:eP,117:eM,118:eO},{53:[1,223],67:eN,82:219,116:eP,117:eM,118:eO},{55:[1,224],67:eN,82:219,116:eP,117:eM,118:eO},{57:[1,225],67:eN,82:219,116:eP,117:eM,118:eO},{60:[1,226]},{64:[1,227],67:eN,82:219,116:eP,117:eM,118:eO},{66:[1,228],67:eN,82:219,116:eP,117:eM,118:eO},{30:229,67:eN,80:eK,81:eG,82:172,116:eP,117:eM,118:eO},{31:[1,230],67:eN,82:219,116:eP,117:eM,118:eO},{67:eN,69:[1,231],71:[1,232],82:219,116:eP,117:eM,118:eO},{67:eN,69:[1,234],71:[1,233],82:219,116:eP,117:eM,118:eO},e(O,[2,45],{18:235,10:N,40:eL}),e(O,[2,48],{44:ew}),e(er,[2,77]),e(er,[2,76]),{62:[1,236],67:eN,82:219,116:eP,117:eM,118:eO},e(er,[2,79]),e(eV,[2,82]),{77:[1,237],79:198,116:eu,119:eo},{30:238,67:eN,80:eK,81:eG,82:172,116:eP,117:eM,118:eO},e(e$,a,{5:239}),e(eU,[2,104]),e(K,[2,35]),{43:240,44:g,45:40,47:41,60:f,89:E,102:C,105:D,106:T,109:S,111:F,113:42,114:_,115:v,116:B},{10:N,18:241},{10:eY,60:eH,84:eX,92:242,105:eq,107:243,108:244,109:eQ,110:eJ,111:eZ,112:e1},{10:eY,60:eH,84:eX,92:253,104:[1,254],105:eq,107:243,108:244,109:eQ,110:eJ,111:eZ,112:e1},{10:eY,60:eH,84:eX,92:255,104:[1,256],105:eq,107:243,108:244,109:eQ,110:eJ,111:eZ,112:e1},{105:[1,257]},{10:eY,60:eH,84:eX,92:258,105:eq,107:243,108:244,109:eQ,110:eJ,111:eZ,112:e1},{44:g,47:259,60:f,89:E,102:C,105:D,106:T,109:S,111:F,113:42,114:_,115:v,116:B},e(eI,[2,110]),{80:[1,260]},{80:[1,261],98:[1,262]},e(eI,[2,118]),e(eI,[2,120],{10:[1,263]}),e(eI,[2,121]),e(et,[2,58]),e(ej,[2,89]),e(et,[2,59]),{51:[1,264],67:eN,82:219,116:eP,117:eM,118:eO},e(et,[2,66]),e(et,[2,61]),e(et,[2,62]),e(et,[2,63]),{109:[1,265]},e(et,[2,65]),e(et,[2,67]),{66:[1,266],67:eN,82:219,116:eP,117:eM,118:eO},e(et,[2,69]),e(et,[2,70]),e(et,[2,72]),e(et,[2,71]),e(et,[2,73]),e(O,[2,46],{44:eW}),e([10,44,60,89,102,105,106,109,111,114,115,116],[2,87]),e(er,[2,80]),{31:[1,267],67:eN,82:219,116:eP,117:eM,118:eO},{6:11,7:12,8:n,9:u,10:o,11:l,20:17,22:18,23:19,24:20,25:21,26:22,27:c,32:[1,268],33:24,34:h,36:d,38:p,42:28,43:39,44:g,45:40,47:41,60:f,84:A,85:y,86:k,87:m,88:x,89:E,102:C,105:D,106:T,109:S,111:F,113:42,114:_,115:v,116:B,121:$,122:w,123:L,124:I,125:R},e(ee,[2,55]),{43:269,44:g,45:40,47:41,60:f,89:E,102:C,105:D,106:T,109:S,111:F,113:42,114:_,115:v,116:B},e(eI,[2,123],{106:e0}),e(e2,[2,132],{108:271,10:eY,60:eH,84:eX,105:eq,109:eQ,110:eJ,111:eZ,112:e1}),e(e8,[2,134]),e(e8,[2,136]),e(e8,[2,137]),e(e8,[2,138]),e(e8,[2,139]),e(e8,[2,140]),e(e8,[2,141]),e(e8,[2,142]),e(e8,[2,143]),e(eI,[2,124],{106:e0}),{10:[1,272]},e(eI,[2,125],{106:e0}),{10:[1,273]},e(ez,[2,131]),e(eI,[2,107],{106:e0}),e(eI,[2,108],{113:113,44:g,60:f,89:E,102:C,105:D,106:T,109:S,111:F,114:_,115:v,116:B}),e(eI,[2,112]),e(eI,[2,114],{10:[1,274]}),e(eI,[2,115]),{98:[1,275]},{51:[1,276]},{62:[1,277]},{66:[1,278]},{8:G,9:P,11:M,21:279},e(K,[2,34]),e(ee,[2,54]),{10:eY,60:eH,84:eX,105:eq,107:280,108:244,109:eQ,110:eJ,111:eZ,112:e1},e(e8,[2,135]),{14:U,44:W,60:z,89:j,101:281,105:Y,106:H,109:X,111:q,114:Q,115:J,116:Z,120:88},{14:U,44:W,60:z,89:j,101:282,105:Y,106:H,109:X,111:q,114:Q,115:J,116:Z,120:88},{98:[1,283]},e(eI,[2,122]),e(et,[2,60]),{30:284,67:eN,80:eK,81:eG,82:172,116:eP,117:eM,118:eO},e(et,[2,68]),e(e$,a,{5:285}),e(e2,[2,133],{108:271,10:eY,60:eH,84:eX,105:eq,109:eQ,110:eJ,111:eZ,112:e1}),e(eI,[2,128],{120:168,10:[1,286],14:U,44:W,60:z,89:j,105:Y,106:H,109:X,111:q,114:Q,115:J,116:Z}),e(eI,[2,129],{120:168,10:[1,287],14:U,44:W,60:z,89:j,105:Y,106:H,109:X,111:q,114:Q,115:J,116:Z}),e(eI,[2,116]),{31:[1,288],67:eN,82:219,116:eP,117:eM,118:eO},{6:11,7:12,8:n,9:u,10:o,11:l,20:17,22:18,23:19,24:20,25:21,26:22,27:c,32:[1,289],33:24,34:h,36:d,38:p,42:28,43:39,44:g,45:40,47:41,60:f,84:A,85:y,86:k,87:m,88:x,89:E,102:C,105:D,106:T,109:S,111:F,113:42,114:_,115:v,116:B,121:$,122:w,123:L,124:I,125:R},{10:eY,60:eH,84:eX,92:290,105:eq,107:243,108:244,109:eQ,110:eJ,111:eZ,112:e1},{10:eY,60:eH,84:eX,92:291,105:eq,107:243,108:244,109:eQ,110:eJ,111:eZ,112:e1},e(et,[2,64]),e(K,[2,33]),e(eI,[2,126],{106:e0}),e(eI,[2,127],{106:e0})],defaultActions:{},parseError:(0,b.K)(function(e,t){if(t.recoverable)this.trace(e);else{var s=Error(e);throw s.hash=t,s}},"parseError"),parse:(0,b.K)(function(e){var t=this,s=[0],i=[],r=[null],a=[],n=this.table,u="",o=0,l=0,c=0,h=a.slice.call(arguments,1),d=Object.create(this.lexer),p={};for(var g in this.yy)Object.prototype.hasOwnProperty.call(this.yy,g)&&(p[g]=this.yy[g]);d.setInput(e,p),p.lexer=d,p.parser=this,void 0===d.yylloc&&(d.yylloc={});var f=d.yylloc;a.push(f);var A=d.options&&d.options.ranges;function y(){var e;return"number"!=typeof(e=i.pop()||d.lex()||1)&&(e instanceof Array&&(e=(i=e).pop()),e=t.symbols_[e]||e),e}"function"==typeof p.parseError?this.parseError=p.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,b.K)(function(e){s.length=s.length-2*e,r.length=r.length-e,a.length=a.length-e},"popStack"),(0,b.K)(y,"lex");for(var k,m,x,E,C,D,T,S,F,_={};;){if(x=s[s.length-1],this.defaultActions[x]?E=this.defaultActions[x]:(null==k&&(k=y()),E=n[x]&&n[x][k]),void 0===E||!E.length||!E[0]){var v="";for(D in F=[],n[x])this.terminals_[D]&&D>2&&F.push("'"+this.terminals_[D]+"'");v=d.showPosition?"Parse error on line "+(o+1)+":\n"+d.showPosition()+"\nExpecting "+F.join(", ")+", got '"+(this.terminals_[k]||k)+"'":"Parse error on line "+(o+1)+": Unexpected "+(1==k?"end of input":"'"+(this.terminals_[k]||k)+"'"),this.parseError(v,{text:d.match,token:this.terminals_[k]||k,line:d.yylineno,loc:f,expected:F})}if(E[0]instanceof Array&&E.length>1)throw Error("Parse Error: multiple actions possible at state: "+x+", token: "+k);switch(E[0]){case 1:s.push(k),r.push(d.yytext),a.push(d.yylloc),s.push(E[1]),k=null,m?(k=m,m=null):(l=d.yyleng,u=d.yytext,o=d.yylineno,f=d.yylloc,c>0&&c--);break;case 2:if(T=this.productions_[E[1]][1],_.$=r[r.length-T],_._$={first_line:a[a.length-(T||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(T||1)].first_column,last_column:a[a.length-1].last_column},A&&(_._$.range=[a[a.length-(T||1)].range[0],a[a.length-1].range[1]]),void 0!==(C=this.performAction.apply(_,[u,l,o,p,E[1],r,a].concat(h))))return C;T&&(s=s.slice(0,-1*T*2),r=r.slice(0,-1*T),a=a.slice(0,-1*T)),s.push(this.productions_[E[1]][0]),r.push(_.$),a.push(_._$),S=n[s[s.length-2]][s[s.length-1]],s.push(S);break;case 3:return!0}}return!0},"parse")};function e4(){this.yy={}}return e6.lexer={EOF:1,parseError:(0,b.K)(function(e,t){if(this.yy.parser)this.yy.parser.parseError(e,t);else throw Error(e)},"parseError"),setInput:(0,b.K)(function(e,t){return this.yy=t||this.yy||{},this._input=e,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,b.K)(function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.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),e},"input"),unput:(0,b.K)(function(e){var t=e.length,s=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var i=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),s.length-1&&(this.yylineno-=s.length-1);var r=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:s?(s.length===i.length?this.yylloc.first_column:0)+i[i.length-s.length].length-s[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this},"unput"),more:(0,b.K)(function(){return this._more=!0,this},"more"),reject:(0,b.K)(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,b.K)(function(e){this.unput(this.match.slice(e))},"less"),pastInput:(0,b.K)(function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,b.K)(function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,b.K)(function(){var e=this.pastInput(),t=Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},"showPosition"),test_match:(0,b.K)(function(e,t){var s,i,r;if(this.options.backtrack_lexer&&(r={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&&(r.yylloc.range=this.yylloc.range.slice(0))),(i=e[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,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(e[0].length),this.matched+=e[0],s=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),s)return s;if(this._backtrack)for(var a in r)this[a]=r[a];return!1},"test_match"),next:(0,b.K)(function(){if(this.done)return this.EOF;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var e,t,s,i,r=this._currentRules(),a=0;a<r.length;a++)if((s=this._input.match(this.rules[r[a]]))&&(!t||s[0].length>t[0].length)){if(t=s,i=a,this.options.backtrack_lexer){if(!1!==(e=this.test_match(s,r[a])))return e;if(!this._backtrack)return!1;t=!1;continue}if(!this.options.flex)break}return t?!1!==(e=this.test_match(t,r[i]))&&e:""===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,b.K)(function(){var e=this.next();return e||this.lex()},"lex"),begin:(0,b.K)(function(e){this.conditionStack.push(e)},"begin"),popState:(0,b.K)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,b.K)(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,b.K)(function(e){return(e=this.conditionStack.length-1-Math.abs(e||0))>=0?this.conditionStack[e]:"INITIAL"},"topState"),pushState:(0,b.K)(function(e){this.begin(e)},"pushState"),stateStackSize:(0,b.K)(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:(0,b.K)(function(e,t,s,i){switch(s){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"),t.yytext="",40;case 8:return this.pushState("shapeDataStr"),40;case 9:return this.popState(),40;case 10:return t.yytext=t.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:case 38:return e.lex.firstGraph()&&this.begin("dir"),12;case 39:return 27;case 40:return 32;case 41:case 42:case 43:case 44:return 98;case 45:return this.popState(),13;case 46:case 47:case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:return this.popState(),14;case 56:return 121;case 57:return 122;case 58:return 123;case 59:return 124;case 60:return 125;case 61:return 78;case 62:return 105;case 63:case 104:return 111;case 64:return 46;case 65:return 60;case 66:case 105:return 44;case 67:return 8;case 68:return 106;case 69:case 103:return 115;case 70:case 73:case 76:return this.popState(),77;case 71:return this.pushState("edgeText"),75;case 72:case 75:case 78:return 119;case 74:return this.pushState("thickEdgeText"),75;case 77:return this.pushState("dottedEdgeText"),75;case 79:return 77;case 80:return this.popState(),53;case 81:case 117:return"TEXT";case 82:return this.pushState("ellipseText"),52;case 83:return this.popState(),55;case 84:return this.pushState("text"),54;case 85:return this.popState(),57;case 86:return this.pushState("text"),56;case 87:return 58;case 88:return this.pushState("text"),67;case 89:return this.popState(),64;case 90:return this.pushState("text"),63;case 91:return this.popState(),49;case 92:return this.pushState("text"),48;case 93:return this.popState(),69;case 94:return this.popState(),71;case 95:return 117;case 96:return this.pushState("trapText"),68;case 97:return this.pushState("trapText"),70;case 98:return 118;case 99:return 67;case 100:return 90;case 101:return"SEP";case 102:return 89;case 106:return 109;case 107:return 114;case 108:return 116;case 109:return this.popState(),62;case 110:return this.pushState("text"),62;case 111:return this.popState(),51;case 112:return this.pushState("text"),50;case 113:return this.popState(),31;case 114:return this.pushState("text"),29;case 115:return this.popState(),66;case 116:return this.pushState("text"),65;case 118:return"QUOTE";case 119:return 9;case 120:return 10;case 121: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)/,/^(?:swimlane-beta\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]*)/,/^(?:.*direction\s+TD[^\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-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\|)/,/^(?:\|)/,/^(?:\))/,/^(?:\()/,/^(?:\])/,/^(?:\[)/,/^(?:(\}))/,/^(?:\{)/,/^(?:[^\[\]\(\)\{\}\|\"]+)/,/^(?:")/,/^(?:(\r?\n)+)/,/^(?:[^\S\n\r]+)/,/^(?:$)/],conditions:{shapeDataEndBracket:{rules:[21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},shapeDataStr:{rules:[9,10,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},shapeData:{rules:[8,11,12,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},callbackargs:{rules:[17,18,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},callbackname:{rules:[14,15,16,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},href:{rules:[21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},click:{rules:[21,24,33,34,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},dottedEdgeText:{rules:[21,24,76,78,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},thickEdgeText:{rules:[21,24,73,75,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},edgeText:{rules:[21,24,70,72,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},trapText:{rules:[21,24,79,82,84,86,90,92,93,94,95,96,97,110,112,114,116],inclusive:!1},ellipseText:{rules:[21,24,79,80,81,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},text:{rules:[21,24,79,82,83,84,85,86,89,90,91,92,96,97,109,110,111,112,113,114,115,116,117],inclusive:!1},vertex:{rules:[21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},dir:{rules:[21,24,45,46,47,48,49,50,51,52,53,54,55,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},acc_descr_multiline:{rules:[5,6,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},acc_descr:{rules:[3,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},acc_title:{rules:[1,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},md_string:{rules:[19,20,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},string:{rules:[21,22,23,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},INITIAL:{rules:[0,2,4,7,13,21,24,25,26,27,28,29,30,31,32,35,36,37,38,39,40,41,42,43,44,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,73,74,76,77,79,82,84,86,87,88,90,92,96,97,98,99,100,101,102,103,104,105,106,107,108,110,112,114,116,118,119,120,121],inclusive:!0}}},(0,b.K)(e4,"Parser"),e4.prototype=e6,e6.Parser=e4,new e4}();D.parser=D;var T=Object.assign({},D);T.parse=e=>{let t=e.replace(/}\s*\n/g,"}\n");return D.parse(t)};var S=(0,b.K)(e=>{let{theme:t,bkgColorArray:s,borderColorArray:i}=e;if(!(0,h.P1)(t,i))return"";let r=(0,h.rq)(e.look),a=(0,h.Ic)(s),n="";for(let t=0;t<(0,h.nw)(e.THEME_COLOR_LIMIT,i);t++){let e=i[t%i.length],u=a?`fill: ${s[t%s.length]};`:"",o=`[data-look="${r}"][data-color-id="color-${t}"]`,l=(0,b.K)(e=>`${o}.node ${e}, ${o}.rough-node ${e}`,"collapsedRule"),c=(0,b.K)(e=>`${o}.swimlane.cluster .swimlane-title${e}, ${o}.swimlane.cluster .swimlane-body${e}`,"laneRule");n+=`
6
+
7
+ ${o}.cluster:not(.swimlane) rect {
8
+ stroke: ${e};
9
+ ${u}
10
+ }
11
+
12
+ ${o}.cluster:not(.swimlane) path {
13
+ stroke: ${e};
14
+ ${u}
15
+ }
16
+
17
+ /* Lane, classic and neo. */
18
+ ${o}.swimlane.cluster rect.swimlane-title,
19
+ ${o}.swimlane.cluster rect.swimlane-body {
20
+ stroke: ${e};
21
+ ${u}
22
+ }
23
+
24
+ /* Lane, handDrawn: roughjs emits the hachure fill first, then the outline. */
25
+ ${c(" path:nth-of-type(2)")} {
26
+ stroke: ${e};
27
+ }
28
+ ${a?`
29
+ /* A roughjs fill is drawn as lines, so the lane fill is a stroke here. */
30
+ ${c(" path:first-of-type")} {
31
+ stroke: ${s[t%s.length]};
32
+ }
33
+ `:""}
34
+ ${l(".collapsed-group")},
35
+ ${l(".collapsed-group path")} {
36
+ stroke: ${e};
37
+ ${u}
38
+ }
39
+
40
+ /* The ellipsis dots and the separator take clusterBorder further down, so without
41
+ these the container is palette-coloured while its own markers are not. */
42
+ ${l(".collapsed-indicator")} {
43
+ fill: ${e};
44
+ }
45
+
46
+ ${l(".collapsed-separator")} {
47
+ stroke: ${e};
48
+ }
49
+ `}return n},"genColor"),F=(0,b.K)((e,t)=>{let s=y.A,i=s(e,"r"),r=s(e,"g"),a=s(e,"b");return k.A(i,r,a,t)},"fade"),_=(0,b.K)(e=>`${S(e)}
50
+ .label {
51
+ font-family: ${e.fontFamily};
52
+ color: ${e.nodeTextColor||e.textColor};
53
+ }
54
+ .cluster-label text {
55
+ fill: ${e.titleColor};
56
+ }
57
+ .cluster-label span {
58
+ color: ${e.titleColor};
59
+ }
60
+ .cluster-label span p {
61
+ background-color: transparent;
62
+ }
63
+
64
+ .label text,span {
65
+ fill: ${e.nodeTextColor||e.textColor};
66
+ color: ${e.nodeTextColor||e.textColor};
67
+ }
68
+
69
+ .node rect,
70
+ .node circle,
71
+ .node ellipse,
72
+ .node polygon,
73
+ .node path {
74
+ fill: ${e.mainBkg};
75
+ stroke: ${e.nodeBorder};
76
+ stroke-width: ${e.strokeWidth??1}px;
77
+ }
78
+ .rough-node .label text , .node .label text, .image-shape .label, .icon-shape .label {
79
+ text-anchor: middle;
80
+ }
81
+
82
+ .node .katex path {
83
+ fill: #000;
84
+ stroke: #000;
85
+ stroke-width: 1px;
86
+ }
87
+
88
+ .rough-node .label,.node .label, .image-shape .label, .icon-shape .label {
89
+ text-align: center;
90
+ }
91
+ .node.clickable {
92
+ cursor: pointer;
93
+ }
94
+
95
+
96
+ .root .anchor path {
97
+ fill: ${e.lineColor} !important;
98
+ stroke-width: 0;
99
+ stroke: ${e.lineColor};
100
+ }
101
+
102
+ .arrowheadPath {
103
+ fill: ${e.arrowheadColor};
104
+ }
105
+
106
+ .edgePaths .path {
107
+ stroke: ${e.lineColor};
108
+ stroke-width: ${e.strokeWidth??2}px;
109
+ }
110
+
111
+ .flowchart-link {
112
+ stroke: ${e.lineColor};
113
+ fill: none;
114
+ }
115
+
116
+ .edgeLabel {
117
+ background-color: ${e.edgeLabelBackground};
118
+ p {
119
+ background-color: ${e.edgeLabelBackground};
120
+ }
121
+ rect {
122
+ opacity: 0.5;
123
+ background-color: ${e.edgeLabelBackground};
124
+ fill: ${e.edgeLabelBackground};
125
+ }
126
+ text-align: center;
127
+ }
128
+
129
+ /* For html labels only */
130
+ .labelBkg {
131
+ background-color: ${F(e.edgeLabelBackground,.5)};
132
+ // background-color:
133
+ }
134
+
135
+ .cluster rect {
136
+ fill: ${e.clusterBkg};
137
+ stroke: ${e.clusterBorder};
138
+ stroke-width: 1px;
139
+ }
140
+
141
+ .cluster text {
142
+ fill: ${e.titleColor};
143
+ }
144
+
145
+ .cluster span {
146
+ color: ${e.titleColor};
147
+ }
148
+ /* .cluster div {
149
+ color: ${e.titleColor};
150
+ } */
151
+
152
+ /* Collapsed subgraph node (@{ view: collapsed }) */
153
+ .node .collapsed-indicator {
154
+ fill: ${e.clusterBorder};
155
+ stroke: none;
156
+ opacity: 0.6;
157
+ }
158
+
159
+ .node .collapsed-separator {
160
+ stroke: ${e.clusterBorder};
161
+ stroke-width: 0.75px;
162
+ }
163
+
164
+ div.mermaidTooltip {
165
+ position: absolute;
166
+ text-align: center;
167
+ max-width: 200px;
168
+ padding: 2px;
169
+ font-family: ${e.fontFamily};
170
+ font-size: 12px;
171
+ background: ${e.tertiaryColor};
172
+ border: 1px solid ${e.border2};
173
+ border-radius: 2px;
174
+ pointer-events: none;
175
+ z-index: 100;
176
+ }
177
+
178
+ .flowchartTitleText {
179
+ text-anchor: middle;
180
+ font-size: 18px;
181
+ fill: ${e.textColor};
182
+ }
183
+
184
+ rect.text {
185
+ fill: none;
186
+ stroke-width: 0;
187
+ }
188
+
189
+ .icon-shape, .image-shape {
190
+ background-color: ${e.edgeLabelBackground};
191
+ p {
192
+ background-color: ${e.edgeLabelBackground};
193
+ padding: 2px;
194
+ }
195
+ .label rect {
196
+ opacity: 0.5;
197
+ background-color: ${e.edgeLabelBackground};
198
+ fill: ${e.edgeLabelBackground};
199
+ }
200
+ text-align: center;
201
+ }
202
+ ${(0,i.o)()}
203
+ `,"getStyles"),v=(0,b.K)(({styles:e=_}={})=>({parser:T,get db(){return new E},renderer:C,styles:e,init:(0,b.K)(e=>{e.flowchart||(e.flowchart={}),e.flowchart.arrowMarkerAbsolute=e.arrowMarkerAbsolute,(0,p.XV)({flowchart:{arrowMarkerAbsolute:e.arrowMarkerAbsolute}})},"init")}),"createFlowDiagram"),B=v()},37669:(e,t,s)=>{s.d(t,{o:()=>i});var i=(0,s(88252).K)(()=>`
204
+ /* Font Awesome icon styling - consolidated */
205
+ .label-icon {
206
+ display: inline-block;
207
+ height: 1em;
208
+ overflow: visible;
209
+ vertical-align: -0.125em;
210
+ }
211
+
212
+ .node .label-icon path {
213
+ fill: currentColor;
214
+ stroke: revert;
215
+ stroke-width: revert;
216
+ }
217
+ `,"getIconStyles")},62240:(e,t,s)=>{s.d(t,{A:()=>a});var i=s(88252),r=s(93962),a=(0,i.K)((e,t)=>{let s;return"sandbox"===t&&(s=(0,r.Lt)("#i"+e)),("sandbox"===t?(0,r.Lt)(s.nodes()[0].contentDocument.body):(0,r.Lt)("body")).select(`[id="${e}"]`)},"getDiagramElement")},64599:(e,t,s)=>{s.d(t,{CP:()=>h,Ck:()=>g,HT:()=>p,PB:()=>d,aC:()=>c,lC:()=>o,m:()=>l,tk:()=>u});var i=s(92826),r=s(88252),a=s(6341),n=s(93962),u=(0,r.K)((e,t)=>{let s=e.append("rect");if(s.attr("x",t.x),s.attr("y",t.y),s.attr("fill",t.fill),s.attr("stroke",t.stroke),s.attr("width",t.width),s.attr("height",t.height),t.name&&s.attr("name",t.name),t.rx&&s.attr("rx",t.rx),t.ry&&s.attr("ry",t.ry),void 0!==t.attrs)for(let e in t.attrs)s.attr(e,t.attrs[e]);return t.class&&s.attr("class",t.class),s},"drawRect"),o=(0,r.K)((e,t)=>{u(e,{x:t.startx,y:t.starty,width:t.stopx-t.startx,height:t.stopy-t.starty,fill:t.fill,stroke:t.stroke,class:"rect"}).lower()},"drawBackgroundRect"),l=(0,r.K)((e,t)=>{let s=t.text.replace(i.H1," "),r=e.append("text");r.attr("x",t.x),r.attr("y",t.y),r.attr("class","legend"),r.style("text-anchor",t.anchor),t.class&&r.attr("class",t.class);let a=r.append("tspan");return a.attr("x",t.x+2*t.textMargin),a.text(s),r},"drawText"),c=(0,r.K)((e,t,s,i)=>{let r=e.append("image");r.attr("x",t),r.attr("y",s);let n=(0,a.J)(i);r.attr("xlink:href",n)},"drawImage"),h=(0,r.K)((e,t,s,i)=>{let r=e.append("use");r.attr("x",t),r.attr("y",s);let n=(0,a.J)(i);r.attr("xlink:href",`#${n}`)},"drawEmbeddedImage"),d=(0,r.K)(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),p=(0,r.K)(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj"),g=(0,r.K)(()=>{let e=(0,n.Lt)(".mermaidTooltip");return e.empty()&&(e=(0,n.Lt)("body").append("div").attr("class","mermaidTooltip").style("opacity",0).style("position","absolute").style("text-align","center").style("max-width","200px").style("padding","2px").style("font-size","12px").style("background","#ffffde").style("border","1px solid #333").style("border-radius","2px").style("pointer-events","none").style("z-index","100")),e},"createTooltip")},77996:(e,t,s)=>{s.d(t,{P:()=>n});var i=s(92826),r=s(58442),a=s(88252),n=(0,a.K)((e,t,s,a)=>{e.attr("class",s);let{width:n,height:l,x:c,y:h}=u(e,t);(0,i.a$)(e,l,n,a);let d=o(c,h,n,l,t);e.attr("viewBox",d),r.R.debug(`viewBox configured: ${d} with padding: ${t}`)},"setupViewPortForSVG"),u=(0,a.K)((e,t)=>{let s=e.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:s.width+2*t,height:s.height+2*t,x:s.x,y:s.y}},"calculateDimensionsWithPadding"),o=(0,a.K)((e,t,s,i,r)=>`${e-r} ${t-r} ${s} ${i}`,"createViewBox")}}]);