@flyfish-group/file-viewer 1.0.22 → 1.0.24
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.
- package/README.md +62 -28
- package/dist/components/3MFLoader.js +1 -1
- package/dist/components/AMFLoader.js +1 -1
- package/dist/components/AudioViewer.js +1 -1
- package/dist/components/CadViewer.js +1 -1
- package/dist/components/CodeViewer.js +1 -1
- package/dist/components/ColladaLoader.js +1 -1
- package/dist/components/DrawingViewer.js +1 -1
- package/dist/components/EdaViewer.js +1 -1
- package/dist/components/EmailViewer.js +1 -1
- package/dist/components/EpubViewer.js +1 -1
- package/dist/components/FBXLoader.js +1 -1
- package/dist/components/GLTFLoader.js +1 -1
- package/dist/components/ImageViewer.js +1 -1
- package/dist/components/KMZLoader.js +1 -1
- package/dist/components/MarkdownViewer.js +1 -1
- package/dist/components/OBJLoader.js +1 -1
- package/dist/components/OfdViewer.js +1 -1
- package/dist/components/PCDLoader.js +1 -1
- package/dist/components/PLYLoader.js +1 -1
- package/dist/components/STLLoader.js +1 -1
- package/dist/components/TDSLoader.js +1 -1
- package/dist/components/USDLoader.js +1 -1
- package/dist/components/UmdViewer.js +2 -2
- package/dist/components/VRMLLoader.js +1 -1
- package/dist/components/VTKLoader.js +1 -1
- package/dist/components/XYZLoader.js +1 -1
- package/dist/components/XlsxTable.js +1 -1
- package/dist/components/___vite-browser-external_commonjs-proxy.js +1 -1
- package/dist/components/_commonjs-dynamic-modules.js +1 -1
- package/dist/components/_commonjsHelpers.js +1 -1
- package/dist/components/ar-SA-G6X2FPQ2.js +1 -1
- package/dist/components/arc.js +1 -1
- package/dist/components/architecture-7EHR7CIX.js +1 -1
- package/dist/components/architectureDiagram-3BPJPVTR.js +1 -1
- package/dist/components/az-AZ-76LH7QW2.js +1 -1
- package/dist/components/bg-BG-XCXSNQG7.js +1 -1
- package/dist/components/blockDiagram-GPEHLZMM.js +1 -1
- package/dist/components/bn-BD-2XOGV67Q.js +1 -1
- package/dist/components/c4Diagram-AAUBKEIU.js +1 -1
- package/dist/components/ca-ES-6MX7JW3Y.js +1 -1
- package/dist/components/cfb.js +1 -1
- package/dist/components/channel.js +1 -1
- package/dist/components/chunk-2J33WTMH.js +1 -1
- package/dist/components/chunk-4BX2VUAB.js +1 -1
- package/dist/components/chunk-55IACEB6.js +1 -1
- package/dist/components/chunk-727SXJPM.js +1 -1
- package/dist/components/chunk-AQP2D5EJ.js +1 -1
- package/dist/components/chunk-FMBD7UC4.js +1 -1
- package/dist/components/chunk-ND2GUHAM.js +1 -1
- package/dist/components/chunk-QZHKN3VN.js +1 -1
- package/dist/components/classDiagram-4FO5ZUOK.js +1 -1
- package/dist/components/classDiagram-v2-Q7XG4LA2.js +1 -1
- package/dist/components/cose-bilkent-S5V4N54A.js +1 -1
- package/dist/components/cs-CZ-2BRQDIVT.js +1 -1
- package/dist/components/cytoscape.esm.js +1 -1
- package/dist/components/da-DK-5WZEPLOC.js +1 -1
- package/dist/components/dagre-BM42HDAG.js +1 -1
- package/dist/components/de-DE-XR44H4JA.js +1 -1
- package/dist/components/defaultLocale.js +1 -1
- package/dist/components/diagram-2AECGRRQ.js +1 -1
- package/dist/components/diagram-5GNKFQAL.js +1 -1
- package/dist/components/diagram-KO2AKTUF.js +1 -1
- package/dist/components/diagram-LMA3HP47.js +1 -1
- package/dist/components/diagram-OG6HWLK6.js +1 -1
- package/dist/components/directory-open-01563666.js +1 -1
- package/dist/components/directory-open-4ed118d0.js +1 -1
- package/dist/components/docx-preview.js +2 -2
- package/dist/components/el-GR-BZB4AONW.js +1 -1
- package/dist/components/en-B4ZKOASM.js +1 -1
- package/dist/components/erDiagram-TEJ5UH35.js +1 -1
- package/dist/components/es-ES-U4NZUMDT.js +1 -1
- package/dist/components/eu-ES-A7QVB2H4.js +1 -1
- package/dist/components/eventmodeling-FCH6USID.js +1 -1
- package/dist/components/fa-IR-HGAKTJCU.js +1 -1
- package/dist/components/fflate.module.js +1 -1
- package/dist/components/fi-FI-Z5N7JZ37.js +1 -1
- package/dist/components/file-open-002ab408.js +1 -1
- package/dist/components/file-open-7c801643.js +1 -1
- package/dist/components/file-save-3189631c.js +1 -1
- package/dist/components/file-save-745eba88.js +1 -1
- package/dist/components/flowDiagram-I6XJVG4X.js +1 -1
- package/dist/components/fr-FR-RHASNOE6.js +1 -1
- package/dist/components/ganttDiagram-6RSMTGT7.js +1 -1
- package/dist/components/gitGraph-WXDBUCRP.js +1 -1
- package/dist/components/gitGraphDiagram-PVQCEYII.js +1 -1
- package/dist/components/gl-ES-HMX3MZ6V.js +1 -1
- package/dist/components/global-compiler.js +1 -1
- package/dist/components/global-renderer.js +1 -1
- package/dist/components/graph.js +1 -1
- package/dist/components/he-IL-6SHJWFNN.js +1 -1
- package/dist/components/hi-IN-IWLTKZ5I.js +1 -1
- package/dist/components/hu-HU-A5ZG7DT2.js +1 -1
- package/dist/components/id-ID-SAP4L64H.js +1 -1
- package/dist/components/image-GAAHSSAO.js +1 -1
- package/dist/components/image-blob-reduce.esm.js +1 -1
- package/dist/components/index10.js +1 -1
- package/dist/components/index11.js +1 -1
- package/dist/components/index12.js +1 -1
- package/dist/components/index13.js +1 -1
- package/dist/components/index14.js +1 -1
- package/dist/components/index15.js +1 -1
- package/dist/components/index16.js +1 -1
- package/dist/components/index17.js +1 -1
- package/dist/components/index18.js +1 -1
- package/dist/components/index19.js +1 -1
- package/dist/components/index2.js +1 -1
- package/dist/components/index20.js +1 -1
- package/dist/components/index21.js +1 -1
- package/dist/components/index22.js +2 -2
- package/dist/components/index23.js +1 -1
- package/dist/components/index24.js +1 -1
- package/dist/components/index3.js +1 -1
- package/dist/components/index4.js +1 -1
- package/dist/components/index5.js +1 -1
- package/dist/components/index6.js +1 -1
- package/dist/components/index7.js +1 -1
- package/dist/components/index8.js +1 -1
- package/dist/components/index9.js +1 -1
- package/dist/components/info-J43DQDTF.js +1 -1
- package/dist/components/infoDiagram-5YYISTIA.js +1 -1
- package/dist/components/init.js +1 -1
- package/dist/components/ishikawaDiagram-YF4QCWOH.js +1 -1
- package/dist/components/it-IT-JPQ66NNP.js +1 -1
- package/dist/components/ja-JP-DBVTYXUO.js +1 -1
- package/dist/components/journeyDiagram-JHISSGLW.js +1 -1
- package/dist/components/jszip.min.js +1 -1
- package/dist/components/kaa-6HZHGXH3.js +1 -1
- package/dist/components/kab-KAB-ZGHBKWFO.js +1 -1
- package/dist/components/kanban-definition-UN3LZRKU.js +1 -1
- package/dist/components/katex.js +1 -1
- package/dist/components/kk-KZ-P5N5QNE5.js +1 -1
- package/dist/components/km-KH-HSX4SM5Z.js +1 -1
- package/dist/components/ko-KR-MTYHY66A.js +1 -1
- package/dist/components/ku-TR-6OUDTVRD.js +1 -1
- package/dist/components/layout.js +1 -1
- package/dist/components/libarchive.js +1 -1
- package/dist/components/linear.js +1 -1
- package/dist/components/lt-LT-XHIRWOB4.js +1 -1
- package/dist/components/lv-LV-5QDEKY6T.js +1 -1
- package/dist/components/mermaid-parser.core.js +2 -2
- package/dist/components/mindmap-definition-RKZ34NQL.js +1 -1
- package/dist/components/mr-IN-CRQNXWMA.js +1 -1
- package/dist/components/my-MM-5M5IBNSE.js +1 -1
- package/dist/components/nb-NO-T6EIAALU.js +1 -1
- package/dist/components/nestedRender.js +1 -1
- package/dist/components/nl-NL-IS3SIHDZ.js +1 -1
- package/dist/components/nn-NO-6E72VCQL.js +1 -1
- package/dist/components/oc-FR-POXYY2M6.js +1 -1
- package/dist/components/ofd.js +1 -1
- package/dist/components/ordinal.js +1 -1
- package/dist/components/pa-IN-N4M65BXN.js +1 -1
- package/dist/components/packet-YPE3B663.js +1 -1
- package/dist/components/percentages-BXMCSKIN.js +1 -1
- package/dist/components/pica.js +1 -1
- package/dist/components/pie-LRSECV5Y.js +1 -1
- package/dist/components/pie.js +1 -1
- package/dist/components/pieDiagram-4H26LBE5.js +1 -1
- package/dist/components/pl-PL-T2D74RX3.js +1 -1
- package/dist/components/postal-mime.js +1 -1
- package/dist/components/printLayout.js +1 -1
- package/dist/components/pt-BR-5N22H2LF.js +1 -1
- package/dist/components/pt-PT-UZXXM6DQ.js +1 -1
- package/dist/components/quadrantDiagram-W4KKPZXB.js +1 -1
- package/dist/components/radar-GUYGQ44K.js +1 -1
- package/dist/components/requirementDiagram-4Y6WPE33.js +1 -1
- package/dist/components/ro-RO-JPDTUUEW.js +1 -1
- package/dist/components/rough.esm.js +1 -1
- package/dist/components/roundRect.js +1 -1
- package/dist/components/ru-RU-B4JR7IUQ.js +1 -1
- package/dist/components/sankeyDiagram-5OEKKPKP.js +1 -1
- package/dist/components/sequenceDiagram-3UESZ5HK.js +1 -1
- package/dist/components/si-LK-N5RQ5JYF.js +1 -1
- package/dist/components/sk-SK-C5VTKIMK.js +1 -1
- package/dist/components/sl-SI-NN7IZMDC.js +1 -1
- package/dist/components/stateDiagram-AJRCARHV.js +1 -1
- package/dist/components/stateDiagram-v2-BHNVJYJU.js +1 -1
- package/dist/components/subset-shared.chunk.js +1 -1
- package/dist/components/subset-worker.chunk.js +1 -1
- package/dist/components/sv-SE-XGPEYMSR.js +1 -1
- package/dist/components/ta-IN-2NMHFXQM.js +1 -1
- package/dist/components/th-TH-HPSO5L25.js +1 -1
- package/dist/components/time.js +1 -1
- package/dist/components/timeline-definition-PNZ67QCA.js +1 -1
- package/dist/components/tr-TR-DEFEU3FU.js +1 -1
- package/dist/components/transform.js +1 -1
- package/dist/components/treeView-BLDUP644.js +1 -1
- package/dist/components/treemap-LRROVOQU.js +1 -1
- package/dist/components/uk-UA-QMV73CPH.js +1 -1
- package/dist/components/vennDiagram-CIIHVFJN.js +1 -1
- package/dist/components/vi-VN-M7AON7JQ.js +1 -1
- package/dist/components/wardley-L42UT6IY.js +1 -1
- package/dist/components/wardleyDiagram-YWT4CUSO.js +1 -1
- package/dist/components/wasm-pack-shim.js +1 -1
- package/dist/components/wasm-pack-shim2.js +1 -1
- package/dist/components/worker-ref.js +1 -1
- package/dist/components/xychartDiagram-2RQKCTM6.js +1 -1
- package/dist/components/zh-CN-LNUGB5OW.js +1 -1
- package/dist/components/zh-HK-E62DVLB3.js +1 -1
- package/dist/components/zh-TW-RAJ6MFWO.js +1 -1
- package/dist/index.d.ts +48 -0
- package/dist/index.mjs +1 -1
- package/dist/style.css +1 -1
- package/dist/wasm/cad/DwgWorker-CuZJ5EUe.js +349 -0
- package/dist/wasm/cad/dwfv-render.wasm +0 -0
- package/dist/wasm/cad/dwg-worker.js +349 -0
- package/dist/wasm/cad/index-C365l3i9.js +4161 -0
- package/dist/wasm/cad/libredwg-web.js +15 -0
- package/dist/wasm/cad/libredwg-web.wasm +0 -0
- package/package.json +9 -8
- package/dist/components/index25.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const bD=b;(function(ah,ai){const b7=b,aj=ah();while(!![]){try{const ak=-parseInt(b7(0x1e0))/0x1*(-parseInt(b7(0x1db))/0x2)+parseInt(b7(0x143))/0x3+parseInt(b7(0x1ad))/0x4*(parseInt(b7(0xea))/0x5)+parseInt(b7(0x1c8))/0x6*(parseInt(b7(0x1bb))/0x7)+-parseInt(b7(0x1a5))/0x8*(-parseInt(b7(0x10e))/0x9)+parseInt(b7(0x1a6))/0xa+parseInt(b7(0x15b))/0xb*(-parseInt(b7(0x1d8))/0xc);if(ak===ai)break;else aj['push'](aj['shift']());}catch(al){aj['push'](aj['shift']());}}}(a,0x29567));import{g as c}from'./chunk-FMBD7UC4.js';import{a4 as e,a5 as f,a6 as g,a7 as h,a8 as i,a9 as j,aa as l,ab as m,ac as n,ad as o,ae as p,af as q,ag as r,ah as s,ai as t,aj as u,ak as v,al as w,am as y,an as E,ao as F,ap as G,aq as I,ar as J,as as K,_ as L,d as O,l as Q,at as R,au as S,H as T,av as W,aw as Y,ax as Z,u as a0,ay as a1,Q as a2,j as a3,v as a4,B as a5,e as a6,i as a7,az as a8,aA as a9}from'./index22.js';import{k as ab,l as ac,n as ad}from'./transform.js';import{G as af}from'./graph.js';import{c as ag}from'./channel.js';import'./_commonjsHelpers.js';import'./rough.esm.js';function Qe(ah){return Array['isArray'](ah);}function $e(ah){const b8=b;if(e(ah))return ah;const ai=f(ah);if(!tr(ah))return{};if(Qe(ah)){const ak=Array[b8(0x108)](ah);return ah['length']>0x0&&typeof ah[0x0]=='string'&&Object[b8(0x1ce)](ah,'index')&&(ak['index']=ah[b8(0x12c)],ak[b8(0xee)]=ah['input']),ak;}if(g(ah)){const al=ah,am=al['constructor'];return new am(al['buffer'],al[b8(0x110)],al[b8(0x1b4)]);}if(ai===h)return new ArrayBuffer(ah['byteLength']);if(ai===i){const an=ah,ao=an[b8(0x171)],ap=an['byteOffset'],aq=an['byteLength'],as=new ArrayBuffer(aq),au=new Uint8Array(ao,ap,aq);return new Uint8Array(as)['set'](au),new DataView(as);}if(ai===j||ai===l||ai===m){const av=ah['constructor'],aw=new av(ah[b8(0x181)]());return ai===m?rr(aw,ah):yt(aw,ah),aw;}if(ai===n)return new Date(Number(ah));if(ai===o){const ax=ah,ay=new RegExp(ax['source'],ax['flags']);return ay['lastIndex']=ax['lastIndex'],ay;}if(ai===p)return Object(Symbol['prototype'][b8(0x181)]['call'](ah));if(ai===q){const az=ah,aA=new Map();return az['forEach']((aB,aC)=>{aA['set'](aC,aB);}),aA;}if(ai===r){const aB=ah,aC=new Set();return aB['forEach'](aD=>{aC['add'](aD);}),aC;}if(ai===s){const aD=ah,aE={};return yt(aE,aD),aE['length']=aD['length'],aE[Symbol['iterator']]=aD[Symbol['iterator']],aE;}const aj={};return ar(aj,ah),yt(aj,ah),er(aj,ah),aj;}function tr(ah){switch(f(ah)){case s:case K:case h:case i:case j:case n:case J:case I:case G:case F:case E:case q:case l:case y:case o:case r:case m:case p:case w:case v:case u:case t:return!0x0;default:return!0x1;}}function yt(ah,ai){const b9=b;for(const aj in ai)Object[b9(0x1ce)](ai,aj)&&(ah[aj]=ai[aj]);}function er(ah,ai){const bb=b,aj=Object['getOwnPropertySymbols'](ai);for(let ak=0x0;ak<aj['length'];ak++){const al=aj[ak];Object['prototype'][bb(0xe7)]['call'](ai,al)&&(ah[al]=ai[al]);}}function rr(ah,ai){const bc=b,aj=ai['valueOf']()['length'];for(const ak in ai)Object[bc(0x1ce)](ai,ak)&&(Number['isNaN'](Number(ak))||Number(ak)>=aj)&&(ah[ak]=ai[ak]);}function ar(ah,ai){const bd=b,aj=Object[bd(0x129)](ai);aj!==null&&typeof ai['constructor']==bd(0x178)&&Object['setPrototypeOf'](ah,aj);}var mt=(function(){const bf=b;var ah=L(function(aC,aD,aE,aF){for(aE=aE||{},aF=aC['length'];aF--;aE[aC[aF]]=aD);return aE;},'o'),ai=[0x1,0xf],aj=[0x1,0x7],ak=[0x1,0xd],al=[0x1,0xe],am=[0x1,0x13],an=[0x1,0x10],ao=[0x1,0x11],ap=[0x1,0x12],aq=[0x8,0x1e],as=[0x8,0xa,0x15,0x1c,0x1d,0x1e,0x1f,0x27,0x2b,0x2e],au=[0x1,0x17],av=[0x1,0x18],aw=[0x8,0xa,0xf,0x10,0x15,0x1c,0x1d,0x1e,0x1f,0x27,0x2b,0x2e],ax=[0x8,0xa,0xf,0x10,0x15,0x1b,0x1c,0x1d,0x1e,0x1f,0x27,0x2b,0x2e],ay=[0x1,0x31],az={'trace':L(function(){},bf(0x1bd)),'yy':{},'symbols_':{'error':0x2,'spaceLines':0x3,'SPACELINE':0x4,'NL':0x5,'separator':0x6,'SPACE':0x7,'EOF':0x8,'start':0x9,'BLOCK_DIAGRAM_KEY':0xa,'document':0xb,'stop':0xc,'statement':0xd,'link':0xe,'LINK':0xf,'START_LINK':0x10,'LINK_LABEL':0x11,'STR':0x12,'nodeStatement':0x13,'columnsStatement':0x14,'SPACE_BLOCK':0x15,'blockStatement':0x16,'classDefStatement':0x17,'cssClassStatement':0x18,'styleStatement':0x19,'node':0x1a,'SIZE':0x1b,'COLUMNS':0x1c,'id-block':0x1d,'end':0x1e,'NODE_ID':0x1f,'nodeShapeNLabel':0x20,'dirList':0x21,'DIR':0x22,'NODE_DSTART':0x23,'NODE_DEND':0x24,'BLOCK_ARROW_START':0x25,'BLOCK_ARROW_END':0x26,'classDef':0x27,'CLASSDEF_ID':0x28,'CLASSDEF_STYLEOPTS':0x29,'DEFAULT':0x2a,'class':0x2b,'CLASSENTITY_IDS':0x2c,'STYLECLASS':0x2d,'style':0x2e,'STYLE_ENTITY_IDS':0x2f,'STYLE_DEFINITION_DATA':0x30,'$accept':0x0,'$end':0x1},'terminals_':{0x2:'error',0x4:'SPACELINE',0x5:'NL',0x7:'SPACE',0x8:'EOF',0xa:'BLOCK_DIAGRAM_KEY',0xf:'LINK',0x10:'START_LINK',0x11:'LINK_LABEL',0x12:'STR',0x15:'SPACE_BLOCK',0x1b:'SIZE',0x1c:'COLUMNS',0x1d:'id-block',0x1e:'end',0x1f:bf(0x183),0x22:'DIR',0x23:'NODE_DSTART',0x24:'NODE_DEND',0x25:'BLOCK_ARROW_START',0x26:bf(0x116),0x27:'classDef',0x28:bf(0x1d3),0x29:bf(0x114),0x2a:'DEFAULT',0x2b:bf(0x1c0),0x2c:'CLASSENTITY_IDS',0x2d:'STYLECLASS',0x2e:'style',0x2f:bf(0x172),0x30:'STYLE_DEFINITION_DATA'},'productions_':[0x0,[0x3,0x1],[0x3,0x2],[0x3,0x2],[0x6,0x1],[0x6,0x1],[0x6,0x1],[0x9,0x3],[0xc,0x1],[0xc,0x1],[0xc,0x2],[0xc,0x2],[0xb,0x1],[0xb,0x2],[0xe,0x1],[0xe,0x4],[0xd,0x1],[0xd,0x1],[0xd,0x1],[0xd,0x1],[0xd,0x1],[0xd,0x1],[0xd,0x1],[0x13,0x3],[0x13,0x2],[0x13,0x1],[0x14,0x1],[0x16,0x4],[0x16,0x3],[0x1a,0x1],[0x1a,0x2],[0x21,0x1],[0x21,0x2],[0x20,0x3],[0x20,0x4],[0x17,0x3],[0x17,0x3],[0x18,0x3],[0x19,0x3]],'performAction':L(function(aC,aD,aE,aF,aG,aH,aI){const bg=bf;var aJ=aH['length']-0x1;switch(aG){case 0x4:aF['getLogger']()[bg(0x157)](bg(0xf0));break;case 0x5:aF['getLogger']()['debug']('Rule:\x20separator\x20(Space)\x20');break;case 0x6:aF[bg(0x1ac)]()['debug']('Rule:\x20separator\x20(EOF)\x20');break;case 0x7:aF['getLogger']()['debug']('Rule:\x20hierarchy:\x20',aH[aJ-0x1]),aF['setHierarchy'](aH[aJ-0x1]);break;case 0x8:aF['getLogger']()[bg(0x157)]('Stop\x20NL\x20');break;case 0x9:aF[bg(0x1ac)]()['debug']('Stop\x20EOF\x20');break;case 0xa:aF['getLogger']()['debug']('Stop\x20NL2\x20');break;case 0xb:aF['getLogger']()['debug']('Stop\x20EOF2\x20');break;case 0xc:aF['getLogger']()[bg(0x157)](bg(0x159),aH[aJ]),typeof aH[aJ][bg(0x1b4)]=='number'?this['$']=aH[aJ]:this['$']=[aH[aJ]];break;case 0xd:aF['getLogger']()['debug']('Rule:\x20statement\x20#2:\x20',aH[aJ-0x1]),this['$']=[aH[aJ-0x1]]['concat'](aH[aJ]);break;case 0xe:aF[bg(0x1ac)]()['debug']('Rule:\x20link:\x20',aH[aJ],aC),this['$']={'edgeTypeStr':aH[aJ],'label':''};break;case 0xf:aF[bg(0x1ac)]()['debug']('Rule:\x20LABEL\x20link:\x20',aH[aJ-0x3],aH[aJ-0x1],aH[aJ]),this['$']={'edgeTypeStr':aH[aJ],'label':aH[aJ-0x1]};break;case 0x12:const aK=parseInt(aH[aJ]),aL=aF['generateId']();this['$']={'id':aL,'type':bg(0xf8),'label':'','width':aK,'children':[]};break;case 0x17:aF['getLogger']()['debug']('Rule:\x20(nodeStatement\x20link\x20node)\x20',aH[aJ-0x2],aH[aJ-0x1],aH[aJ],'\x20typestr:\x20',aH[aJ-0x1]['edgeTypeStr']);const aM=aF['edgeStrToEdgeData'](aH[aJ-0x1]['edgeTypeStr']),aN=aF[bg(0x1b2)](aH[aJ-0x1]['edgeTypeStr']),aO=aF['edgeStrToThickness'](aH[aJ-0x1]['edgeTypeStr']),aP=aF['edgeStrToPattern'](aH[aJ-0x1][bg(0x164)]);this['$']=[{'id':aH[aJ-0x2]['id'],'label':aH[aJ-0x2]['label'],'type':aH[aJ-0x2][bg(0x103)],'directions':aH[aJ-0x2]['directions']},{'id':aH[aJ-0x2]['id']+'-'+aH[aJ]['id'],'start':aH[aJ-0x2]['id'],'end':aH[aJ]['id'],'label':aH[aJ-0x1]['label'],'type':bg(0x13f),'thickness':aO,'pattern':aP,'directions':aH[aJ]['directions'],'arrowTypeEnd':aM,'arrowTypeStart':aN},{'id':aH[aJ]['id'],'label':aH[aJ]['label'],'type':aF['typeStr2Type'](aH[aJ]['typeStr']),'directions':aH[aJ]['directions']}];break;case 0x18:aF['getLogger']()['debug']('Rule:\x20nodeStatement\x20(abc88\x20node\x20size)\x20',aH[aJ-0x1],aH[aJ]),this['$']={'id':aH[aJ-0x1]['id'],'label':aH[aJ-0x1]['label'],'type':aF['typeStr2Type'](aH[aJ-0x1]['typeStr']),'directions':aH[aJ-0x1][bg(0x137)],'widthInColumns':parseInt(aH[aJ],0xa)};break;case 0x19:aF['getLogger']()['debug']('Rule:\x20nodeStatement\x20(node)\x20',aH[aJ]),this['$']={'id':aH[aJ]['id'],'label':aH[aJ]['label'],'type':aF['typeStr2Type'](aH[aJ]['typeStr']),'directions':aH[aJ]['directions'],'widthInColumns':0x1};break;case 0x1a:aF['getLogger']()['debug']('APA123',this?this:'na'),aF[bg(0x1ac)]()['debug']('COLUMNS:\x20',aH[aJ]),this['$']={'type':'column-setting','columns':aH[aJ]===bg(0x167)?-0x1:parseInt(aH[aJ])};break;case 0x1b:aF['getLogger']()['debug']('Rule:\x20id-block\x20statement\x20:\x20',aH[aJ-0x2],aH[aJ-0x1]),aF[bg(0x188)](),this['$']={...aH[aJ-0x2],'type':'composite','children':aH[aJ-0x1]};break;case 0x1c:aF['getLogger']()['debug']('Rule:\x20blockStatement\x20:\x20',aH[aJ-0x2],aH[aJ-0x1],aH[aJ]);const aQ=aF[bg(0x188)]();this['$']={'id':aQ,'type':'composite','label':'','children':aH[aJ-0x1]};break;case 0x1d:aF[bg(0x1ac)]()['debug']('Rule:\x20node\x20(NODE_ID\x20separator):\x20',aH[aJ]),this['$']={'id':aH[aJ]};break;case 0x1e:aF['getLogger']()['debug'](bg(0x18a),aH[aJ-0x1],aH[aJ]),this['$']={'id':aH[aJ-0x1],'label':aH[aJ]['label'],'typeStr':aH[aJ]['typeStr'],'directions':aH[aJ]['directions']};break;case 0x1f:aF['getLogger']()['debug']('Rule:\x20dirList:\x20',aH[aJ]),this['$']=[aH[aJ]];break;case 0x20:aF['getLogger']()['debug']('Rule:\x20dirList:\x20',aH[aJ-0x1],aH[aJ]),this['$']=[aH[aJ-0x1]]['concat'](aH[aJ]);break;case 0x21:aF['getLogger']()[bg(0x157)]('Rule:\x20nodeShapeNLabel:\x20',aH[aJ-0x2],aH[aJ-0x1],aH[aJ]),this['$']={'typeStr':aH[aJ-0x2]+aH[aJ],'label':aH[aJ-0x1]};break;case 0x22:aF['getLogger']()['debug']('Rule:\x20BLOCK_ARROW\x20nodeShapeNLabel:\x20',aH[aJ-0x3],aH[aJ-0x2],'\x20#3:',aH[aJ-0x1],aH[aJ]),this['$']={'typeStr':aH[aJ-0x3]+aH[aJ],'label':aH[aJ-0x2],'directions':aH[aJ-0x1]};break;case 0x23:case 0x24:this['$']={'type':'classDef','id':aH[aJ-0x1][bg(0xe8)](),'css':aH[aJ][bg(0xe8)]()};break;case 0x25:this['$']={'type':'applyClass','id':aH[aJ-0x1]['trim'](),'styleClass':aH[aJ]['trim']()};break;case 0x26:this['$']={'type':'applyStyles','id':aH[aJ-0x1][bg(0xe8)](),'stylesStr':aH[aJ]['trim']()};break;}},'anonymous'),'table':[{0x9:0x1,0xa:[0x1,0x2]},{0x1:[0x3]},{0xa:ai,0xb:0x3,0xd:0x4,0x13:0x5,0x14:0x6,0x15:aj,0x16:0x8,0x17:0x9,0x18:0xa,0x19:0xb,0x1a:0xc,0x1c:ak,0x1d:al,0x1f:am,0x27:an,0x2b:ao,0x2e:ap},{0x8:[0x1,0x14]},ah(aq,[0x2,0xc],{0xd:0x4,0x13:0x5,0x14:0x6,0x16:0x8,0x17:0x9,0x18:0xa,0x19:0xb,0x1a:0xc,0xb:0x15,0xa:ai,0x15:aj,0x1c:ak,0x1d:al,0x1f:am,0x27:an,0x2b:ao,0x2e:ap}),ah(as,[0x2,0x10],{0xe:0x16,0xf:au,0x10:av}),ah(as,[0x2,0x11]),ah(as,[0x2,0x12]),ah(as,[0x2,0x13]),ah(as,[0x2,0x14]),ah(as,[0x2,0x15]),ah(as,[0x2,0x16]),ah(aw,[0x2,0x19],{0x1b:[0x1,0x19]}),ah(as,[0x2,0x1a]),{0x13:0x1a,0x1a:0xc,0x1f:am},{0xa:ai,0xb:0x1b,0xd:0x4,0x13:0x5,0x14:0x6,0x15:aj,0x16:0x8,0x17:0x9,0x18:0xa,0x19:0xb,0x1a:0xc,0x1c:ak,0x1d:al,0x1f:am,0x27:an,0x2b:ao,0x2e:ap},{0x28:[0x1,0x1c],0x2a:[0x1,0x1d]},{0x2c:[0x1,0x1e]},{0x2f:[0x1,0x1f]},ah(ax,[0x2,0x1d],{0x20:0x20,0x23:[0x1,0x21],0x25:[0x1,0x22]}),{0x1:[0x2,0x7]},ah(aq,[0x2,0xd]),{0x1a:0x23,0x1f:am},{0x1f:[0x2,0xe]},{0x11:[0x1,0x24]},ah(aw,[0x2,0x18]),{0xa:ai,0xb:0x25,0xd:0x4,0xe:0x16,0xf:au,0x10:av,0x13:0x5,0x14:0x6,0x15:aj,0x16:0x8,0x17:0x9,0x18:0xa,0x19:0xb,0x1a:0xc,0x1c:ak,0x1d:al,0x1f:am,0x27:an,0x2b:ao,0x2e:ap},{0x1e:[0x1,0x26]},{0x29:[0x1,0x27]},{0x29:[0x1,0x28]},{0x2d:[0x1,0x29]},{0x30:[0x1,0x2a]},ah(ax,[0x2,0x1e]),{0x12:[0x1,0x2b]},{0x12:[0x1,0x2c]},ah(aw,[0x2,0x17]),{0x12:[0x1,0x2d]},{0x1e:[0x1,0x2e]},ah(as,[0x2,0x1c]),ah(as,[0x2,0x23]),ah(as,[0x2,0x24]),ah(as,[0x2,0x25]),ah(as,[0x2,0x26]),{0x24:[0x1,0x2f]},{0x21:0x30,0x22:ay},{0xf:[0x1,0x32]},ah(as,[0x2,0x1b]),ah(ax,[0x2,0x21]),{0x26:[0x1,0x33]},{0x21:0x34,0x22:ay,0x26:[0x2,0x1f]},{0x1f:[0x2,0xf]},ah(ax,[0x2,0x22]),{0x26:[0x2,0x20]}],'defaultActions':{0x14:[0x2,0x7],0x17:[0x2,0xe],0x32:[0x2,0xf],0x34:[0x2,0x20]},'parseError':L(function(aC,aD){if(aD['recoverable'])this['trace'](aC);else{var aE=new Error(aC);throw aE['hash']=aD,aE;}},'parseError'),'parse':L(function(aC){const bh=bf;var aD=this,aE=[0x0],aF=[],aG=[null],aH=[],aI=this['table'],aJ='',aK=0x0,aL=0x0,aM=0x2,aN=0x1,aO=aH['slice']['call'](arguments,0x1),aP=Object['create'](this['lexer']),aQ={'yy':{}};for(var aR in this['yy'])Object[bh(0x1e3)]['hasOwnProperty']['call'](this['yy'],aR)&&(aQ['yy'][aR]=this['yy'][aR]);aP['setInput'](aC,aQ['yy']),aQ['yy'][bh(0x19a)]=aP,aQ['yy']['parser']=this,typeof aP['yylloc']>'u'&&(aP['yylloc']={});var aS=aP['yylloc'];aH['push'](aS);var aT=aP['options']&&aP['options']['ranges'];typeof aQ['yy']['parseError']=='function'?this['parseError']=aQ['yy']['parseError']:this['parseError']=Object['getPrototypeOf'](this)[bh(0xde)];function aU(b6){const bi=bh;aE['length']=aE['length']-0x2*b6,aG['length']=aG[bi(0x1b4)]-b6,aH['length']=aH['length']-b6;}L(aU,'popStack');function aV(){const bj=bh;var b6;return b6=aF['pop']()||aP[bj(0x17b)]()||aN,typeof b6!='number'&&(b6 instanceof Array&&(aF=b6,b6=aF['pop']()),b6=aD['symbols_'][b6]||b6),b6;}L(aV,'lex');for(var aW,aX,aY,aZ,b0={},b1,b2,b3,b4;;){if(aX=aE[aE[bh(0x1b4)]-0x1],this['defaultActions'][aX]?aY=this['defaultActions'][aX]:((aW===null||typeof aW>'u')&&(aW=aV()),aY=aI[aX]&&aI[aX][aW]),typeof aY>'u'||!aY['length']||!aY[0x0]){var b5='';b4=[];for(b1 in aI[aX])this['terminals_'][b1]&&b1>aM&&b4['push']('\x27'+this['terminals_'][b1]+'\x27');aP[bh(0xfb)]?b5=bh(0x1e2)+(aK+0x1)+':\x0a'+aP[bh(0xfb)]()+'\x0aExpecting\x20'+b4['join'](',\x20')+',\x20got\x20\x27'+(this[bh(0x1a8)][aW]||aW)+'\x27':b5='Parse\x20error\x20on\x20line\x20'+(aK+0x1)+':\x20Unexpected\x20'+(aW==aN?'end\x20of\x20input':'\x27'+(this['terminals_'][aW]||aW)+'\x27'),this['parseError'](b5,{'text':aP['match'],'token':this['terminals_'][aW]||aW,'line':aP['yylineno'],'loc':aS,'expected':b4});}if(aY[0x0]instanceof Array&&aY['length']>0x1)throw new Error('Parse\x20Error:\x20multiple\x20actions\x20possible\x20at\x20state:\x20'+aX+',\x20token:\x20'+aW);switch(aY[0x0]){case 0x1:aE[bh(0x1b9)](aW),aG[bh(0x1b9)](aP['yytext']),aH[bh(0x1b9)](aP['yylloc']),aE['push'](aY[0x1]),aW=null,aL=aP[bh(0xeb)],aJ=aP['yytext'],aK=aP['yylineno'],aS=aP['yylloc'];break;case 0x2:if(b2=this['productions_'][aY[0x1]][0x1],b0['$']=aG[aG['length']-b2],b0['_$']={'first_line':aH[aH['length']-(b2||0x1)]['first_line'],'last_line':aH[aH[bh(0x1b4)]-0x1][bh(0x1b8)],'first_column':aH[aH['length']-(b2||0x1)]['first_column'],'last_column':aH[aH['length']-0x1]['last_column']},aT&&(b0['_$']['range']=[aH[aH['length']-(b2||0x1)]['range'][0x0],aH[aH[bh(0x1b4)]-0x1]['range'][0x1]]),aZ=this['performAction']['apply'](b0,[aJ,aL,aK,aQ['yy'],aY[0x1],aG,aH]['concat'](aO)),typeof aZ<'u')return aZ;b2&&(aE=aE[bh(0x19c)](0x0,-0x1*b2*0x2),aG=aG[bh(0x19c)](0x0,-0x1*b2),aH=aH['slice'](0x0,-0x1*b2)),aE[bh(0x1b9)](this[bh(0x1bc)][aY[0x1]][0x0]),aG['push'](b0['$']),aH['push'](b0['_$']),b3=aI[aE[aE['length']-0x2]][aE[aE[bh(0x1b4)]-0x1]],aE['push'](b3);break;case 0x3:return!0x0;}}return!0x0;},'parse')},aA=(function(){const bs=bf;var aC={'EOF':0x1,'parseError':L(function(aD,aE){const bk=b;if(this['yy'][bk(0x14d)])this['yy']['parser'][bk(0xde)](aD,aE);else throw new Error(aD);},'parseError'),'setInput':L(function(aD,aE){const bl=b;return this['yy']=aE||this['yy']||{},this[bl(0x109)]=aD,this['_more']=this['_backtrack']=this['done']=!0x1,this['yylineno']=this['yyleng']=0x0,this['yytext']=this[bl(0xec)]=this[bl(0x1ab)]='',this['conditionStack']=['INITIAL'],this['yylloc']={'first_line':0x1,'first_column':0x0,'last_line':0x1,'last_column':0x0},this[bl(0x1c7)][bl(0xe2)]&&(this[bl(0x126)]['range']=[0x0,0x0]),this['offset']=0x0,this;},'setInput'),'input':L(function(){const bm=b;var aD=this[bm(0x109)][0x0];this['yytext']+=aD,this['yyleng']++,this['offset']++,this['match']+=aD,this['matched']+=aD;var aE=aD['match'](/(?:\r\n?|\n).*/g);return aE?(this['yylineno']++,this['yylloc']['last_line']++):this['yylloc']['last_column']++,this['options']['ranges']&&this['yylloc']['range'][0x1]++,this['_input']=this['_input']['slice'](0x1),aD;},'input'),'unput':L(function(aD){const bn=b;var aE=aD['length'],aF=aD['split'](/(?:\r\n?|\n)/g);this['_input']=aD+this[bn(0x109)],this['yytext']=this['yytext']['substr'](0x0,this['yytext']['length']-aE),this['offset']-=aE;var aG=this[bn(0x1ab)]['split'](/(?:\r\n?|\n)/g);this['match']=this['match'][bn(0x18c)](0x0,this['match']['length']-0x1),this['matched']=this['matched']['substr'](0x0,this[bn(0xec)]['length']-0x1),aF['length']-0x1&&(this['yylineno']-=aF['length']-0x1);var aH=this[bn(0x126)]['range'];return this['yylloc']={'first_line':this['yylloc']['first_line'],'last_line':this['yylineno']+0x1,'first_column':this['yylloc'][bn(0xdc)],'last_column':aF?(aF['length']===aG['length']?this['yylloc'][bn(0xdc)]:0x0)+aG[aG['length']-aF['length']]['length']-aF[0x0]['length']:this['yylloc']['first_column']-aE},this['options'][bn(0xe2)]&&(this[bn(0x126)]['range']=[aH[0x0],aH[0x0]+this[bn(0xeb)]-aE]),this['yyleng']=this['yytext']['length'],this;},'unput'),'more':L(function(){return this['_more']=!0x0,this;},'more'),'reject':L(function(){const bo=b;if(this['options']['backtrack_lexer'])this['_backtrack']=!0x0;else return this['parseError']('Lexical\x20error\x20on\x20line\x20'+(this['yylineno']+0x1)+bo(0xd1)+this['showPosition'](),{'text':'','token':null,'line':this['yylineno']});return this;},'reject'),'less':L(function(aD){const bp=b;this[bp(0x17c)](this['match']['slice'](aD));},'less'),'pastInput':L(function(){const bq=b;var aD=this['matched']['substr'](0x0,this['matched']['length']-this['match']['length']);return(aD['length']>0x14?'...':'')+aD[bq(0x18c)](-0x14)['replace'](/\n/g,'');},bs(0x16b)),'upcomingInput':L(function(){const bu=bs;var aD=this['match'];return aD['length']<0x14&&(aD+=this[bu(0x109)][bu(0x18c)](0x0,0x14-aD['length'])),(aD[bu(0x18c)](0x0,0x14)+(aD['length']>0x14?'...':''))['replace'](/\n/g,'');},'upcomingInput'),'showPosition':L(function(){const bv=bs;var aD=this['pastInput'](),aE=new Array(aD[bv(0x1b4)]+0x1)['join']('-');return aD+this['upcomingInput']()+'\x0a'+aE+'^';},'showPosition'),'test_match':L(function(aD,aE){const bw=bs;var aF,aG,aH;if(this['options'][bw(0xf5)]&&(aH={'yylineno':this[bw(0x1a9)],'yylloc':{'first_line':this['yylloc']['first_line'],'last_line':this['last_line'],'first_column':this['yylloc']['first_column'],'last_column':this[bw(0x126)][bw(0x1be)]},'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'](0x0),'done':this['done']},this[bw(0x1c7)]['ranges']&&(aH['yylloc']['range']=this['yylloc'][bw(0x197)][bw(0x19c)](0x0))),aG=aD[0x0]['match'](/(?:\r\n?|\n).*/g),aG&&(this['yylineno']+=aG['length']),this['yylloc']={'first_line':this['yylloc']['last_line'],'last_line':this['yylineno']+0x1,'first_column':this[bw(0x126)]['last_column'],'last_column':aG?aG[aG['length']-0x1]['length']-aG[aG[bw(0x1b4)]-0x1][bw(0x1ab)](/\r?\n?/)[0x0][bw(0x1b4)]:this[bw(0x126)]['last_column']+aD[0x0]['length']},this['yytext']+=aD[0x0],this[bw(0x1ab)]+=aD[0x0],this[bw(0xcd)]=aD,this['yyleng']=this[bw(0x112)][bw(0x1b4)],this['options']['ranges']&&(this['yylloc']['range']=[this['offset'],this['offset']+=this[bw(0xeb)]]),this['_more']=!0x1,this['_backtrack']=!0x1,this['_input']=this['_input']['slice'](aD[0x0]['length']),this[bw(0xec)]+=aD[0x0],aF=this[bw(0x1a1)]['call'](this,this['yy'],this,aE,this[bw(0x117)][this['conditionStack'][bw(0x1b4)]-0x1]),this['done']&&this[bw(0x109)]&&(this['done']=!0x1),aF)return aF;if(this[bw(0xe4)]){for(var aI in aH)this[aI]=aH[aI];return!0x1;}return!0x1;},bs(0x1c6)),'next':L(function(){const bx=bs;if(this['done'])return this['EOF'];this['_input']||(this['done']=!0x0);var aD,aE,aF,aG;this['_more']||(this['yytext']='',this['match']='');for(var aH=this[bx(0x182)](),aI=0x0;aI<aH['length'];aI++)if(aF=this['_input']['match'](this[bx(0x192)][aH[aI]]),aF&&(!aE||aF[0x0]['length']>aE[0x0]['length'])){if(aE=aF,aG=aI,this[bx(0x1c7)]['backtrack_lexer']){if(aD=this['test_match'](aF,aH[aI]),aD!==!0x1)return aD;if(this['_backtrack']){aE=!0x1;continue;}else return!0x1;}else{if(!this[bx(0x1c7)]['flex'])break;}}return aE?(aD=this['test_match'](aE,aH[aG]),aD!==!0x1?aD:!0x1):this['_input']===''?this['EOF']:this['parseError']('Lexical\x20error\x20on\x20line\x20'+(this['yylineno']+0x1)+'.\x20Unrecognized\x20text.\x0a'+this[bx(0xfb)](),{'text':'','token':null,'line':this['yylineno']});},'next'),'lex':L(function(){const by=bs;var aD=this['next']();return aD||this[by(0x17b)]();},'lex'),'begin':L(function(aD){this['conditionStack']['push'](aD);},'begin'),'popState':L(function(){const bz=bs;var aD=this['conditionStack']['length']-0x1;return aD>0x0?this['conditionStack']['pop']():this[bz(0x117)][0x0];},'popState'),'_currentRules':L(function(){const bA=bs;return this['conditionStack']['length']&&this[bA(0x117)][this[bA(0x117)]['length']-0x1]?this['conditions'][this['conditionStack'][this['conditionStack']['length']-0x1]]['rules']:this[bA(0x19e)]['INITIAL'][bA(0x192)];},'_currentRules'),'topState':L(function(aD){const bB=bs;return aD=this['conditionStack'][bB(0x1b4)]-0x1-Math['abs'](aD||0x0),aD>=0x0?this['conditionStack'][aD]:bB(0x1c2);},'topState'),'pushState':L(function(aD){this['begin'](aD);},'pushState'),'stateStackSize':L(function(){return this['conditionStack']['length'];},'stateStackSize'),'options':{},'performAction':L(function(aD,aE,aF,aG){const bC=bs;switch(aF){case 0x0:return aD['getLogger']()['debug']('Found\x20block-beta'),0xa;case 0x1:return aD['getLogger']()['debug']('Found\x20id-block'),0x1d;case 0x2:return aD['getLogger']()[bC(0x157)]('Found\x20block'),0xa;case 0x3:aD['getLogger']()['debug']('.',aE[bC(0x112)]);break;case 0x4:aD['getLogger']()['debug']('_',aE['yytext']);break;case 0x5:return 0x5;case 0x6:return aE['yytext']=-0x1,0x1c;case 0x7:return aE[bC(0x112)]=aE['yytext']['replace'](/columns\s+/,''),aD['getLogger']()['debug']('COLUMNS\x20(LEX)',aE['yytext']),0x1c;case 0x8:this['pushState']('md_string');break;case 0x9:return'MD_STR';case 0xa:this['popState']();break;case 0xb:this['pushState']('string');break;case 0xc:aD[bC(0x1ac)]()['debug']('LEX:\x20POPPING\x20STR:',aE['yytext']),this['popState']();break;case 0xd:return aD['getLogger']()['debug']('LEX:\x20STR\x20end:',aE['yytext']),'STR';case 0xe:return aE['yytext']=aE['yytext'][bC(0x19f)](/space\:/,''),aD['getLogger']()['debug']('SPACE\x20NUM\x20(LEX)',aE['yytext']),0x15;case 0xf:return aE['yytext']='1',aD['getLogger']()[bC(0x157)]('COLUMNS\x20(LEX)',aE['yytext']),0x15;case 0x10:return 0x2a;case 0x11:return bC(0x195);case 0x12:return'INTERPOLATE';case 0x13:return this['pushState']('CLASSDEF'),0x27;case 0x14:return this['popState'](),this[bC(0xe1)]('CLASSDEFID'),'DEFAULT_CLASSDEF_ID';case 0x15:return this['popState'](),this['pushState']('CLASSDEFID'),0x28;case 0x16:return this['popState'](),0x29;case 0x17:return this['pushState']('CLASS'),0x2b;case 0x18:return this['popState'](),this['pushState']('CLASS_STYLE'),0x2c;case 0x19:return this['popState'](),0x2d;case 0x1a:return this['pushState']('STYLE_STMNT'),0x2e;case 0x1b:return this['popState'](),this['pushState']('STYLE_DEFINITION'),0x2f;case 0x1c:return this['popState'](),0x30;case 0x1d:return this['pushState']('acc_title'),'acc_title';case 0x1e:return this['popState'](),'acc_title_value';case 0x1f:return this['pushState']('acc_descr'),'acc_descr';case 0x20:return this['popState'](),bC(0x177);case 0x21:this['pushState']('acc_descr_multiline');break;case 0x22:this[bC(0xd3)]();break;case 0x23:return'acc_descr_multiline_value';case 0x24:return 0x1e;case 0x25:return this['popState'](),aD[bC(0x1ac)]()['debug']('Lex:\x20(('),'NODE_DEND';case 0x26:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20(('),'NODE_DEND';case 0x27:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20))'),bC(0xf9);case 0x28:return this['popState'](),aD[bC(0x1ac)]()['debug']('Lex:\x20(('),'NODE_DEND';case 0x29:return this['popState'](),aD[bC(0x1ac)]()['debug']('Lex:\x20(('),'NODE_DEND';case 0x2a:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20(-'),'NODE_DEND';case 0x2b:return this['popState'](),aD[bC(0x1ac)]()[bC(0x157)]('Lex:\x20-)'),'NODE_DEND';case 0x2c:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20(('),bC(0xf9);case 0x2d:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20]]'),'NODE_DEND';case 0x2e:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20('),'NODE_DEND';case 0x2f:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20])'),'NODE_DEND';case 0x30:return this[bC(0xd3)](),aD[bC(0x1ac)]()[bC(0x157)]('Lex:\x20/]'),'NODE_DEND';case 0x31:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20/]'),'NODE_DEND';case 0x32:return this['popState'](),aD['getLogger']()[bC(0x157)]('Lex:\x20)]'),'NODE_DEND';case 0x33:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20)'),'NODE_DEND';case 0x34:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20]>'),'NODE_DEND';case 0x35:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20]'),'NODE_DEND';case 0x36:return aD[bC(0x1ac)]()['debug']('Lexa:\x20-)'),this['pushState']('NODE'),0x23;case 0x37:return aD['getLogger']()[bC(0x157)]('Lexa:\x20(-'),this['pushState']('NODE'),0x23;case 0x38:return aD['getLogger']()['debug'](bC(0x191)),this['pushState']('NODE'),0x23;case 0x39:return aD['getLogger']()['debug'](bC(0x128)),this[bC(0xe1)]('NODE'),0x23;case 0x3a:return aD['getLogger']()['debug']('Lex:\x20((('),this['pushState']('NODE'),0x23;case 0x3b:return aD['getLogger']()[bC(0x157)]('Lexa:\x20)'),this['pushState']('NODE'),0x23;case 0x3c:return aD['getLogger']()['debug'](bC(0x128)),this['pushState'](bC(0x15f)),0x23;case 0x3d:return aD['getLogger']()[bC(0x157)]('Lexa:\x20)'),this[bC(0xe1)]('NODE'),0x23;case 0x3e:return aD['getLogger']()['debug']('Lexc:\x20>'),this['pushState']('NODE'),0x23;case 0x3f:return aD['getLogger']()['debug']('Lexa:\x20(['),this['pushState']('NODE'),0x23;case 0x40:return aD['getLogger']()['debug']('Lexa:\x20)'),this['pushState']('NODE'),0x23;case 0x41:return this['pushState']('NODE'),0x23;case 0x42:return this['pushState']('NODE'),0x23;case 0x43:return this['pushState']('NODE'),0x23;case 0x44:return this['pushState']('NODE'),0x23;case 0x45:return this['pushState']('NODE'),0x23;case 0x46:return this['pushState']('NODE'),0x23;case 0x47:return this['pushState']('NODE'),0x23;case 0x48:return aD['getLogger']()[bC(0x157)](bC(0x1cb)),this['pushState'](bC(0x15f)),0x23;case 0x49:return this['pushState']('BLOCK_ARROW'),aD['getLogger']()[bC(0x157)]('LEX\x20ARR\x20START'),0x25;case 0x4a:return aD['getLogger']()['debug']('Lex:\x20NODE_ID',aE['yytext']),0x1f;case 0x4b:return aD['getLogger']()[bC(0x157)](bC(0x1a0),aE['yytext']),0x8;case 0x4c:this['pushState']('md_string');break;case 0x4d:this[bC(0xe1)]('md_string');break;case 0x4e:return'NODE_DESCR';case 0x4f:this['popState']();break;case 0x50:aD[bC(0x1ac)]()[bC(0x157)]('Lex:\x20Starting\x20string'),this[bC(0xe1)]('string');break;case 0x51:aD['getLogger']()[bC(0x157)](bC(0x12d)),this[bC(0xe1)](bC(0xd2));break;case 0x52:return aD['getLogger']()['debug']('LEX:\x20NODE_DESCR:',aE['yytext']),'NODE_DESCR';case 0x53:aD['getLogger']()['debug']('LEX\x20POPPING'),this['popState']();break;case 0x54:aD['getLogger']()[bC(0x157)]('Lex:\x20=>BAE'),this['pushState']('ARROW_DIR');break;case 0x55:return aE['yytext']=aE['yytext']['replace'](/^,\s*/,''),aD['getLogger']()['debug']('Lex\x20(right):\x20dir:',aE['yytext']),'DIR';case 0x56:return aE['yytext']=aE['yytext'][bC(0x19f)](/^,\s*/,''),aD['getLogger']()['debug']('Lex\x20(left):',aE[bC(0x112)]),'DIR';case 0x57:return aE['yytext']=aE['yytext'][bC(0x19f)](/^,\s*/,''),aD[bC(0x1ac)]()['debug'](bC(0x11d),aE['yytext']),'DIR';case 0x58:return aE[bC(0x112)]=aE['yytext'][bC(0x19f)](/^,\s*/,''),aD[bC(0x1ac)]()['debug']('Lex\x20(y):',aE['yytext']),'DIR';case 0x59:return aE[bC(0x112)]=aE['yytext']['replace'](/^,\s*/,''),aD['getLogger']()['debug']('Lex\x20(up):',aE['yytext']),bC(0x101);case 0x5a:return aE['yytext']=aE['yytext']['replace'](/^,\s*/,''),aD['getLogger']()[bC(0x157)](bC(0x1c1),aE['yytext']),bC(0x101);case 0x5b:return aE['yytext']=']>',aD['getLogger']()[bC(0x157)]('Lex\x20(ARROW_DIR\x20end):',aE['yytext']),this[bC(0xd3)](),this['popState'](),'BLOCK_ARROW_END';case 0x5c:return aD['getLogger']()['debug']('Lex:\x20LINK','#'+aE['yytext']+'#'),0xf;case 0x5d:return aD['getLogger']()['debug']('Lex:\x20LINK',aE['yytext']),0xf;case 0x5e:return aD['getLogger']()['debug']('Lex:\x20LINK',aE['yytext']),0xf;case 0x5f:return aD[bC(0x1ac)]()['debug'](bC(0x1c9),aE['yytext']),0xf;case 0x60:return aD['getLogger']()['debug']('Lex:\x20START_LINK',aE['yytext']),this['pushState']('LLABEL'),0x10;case 0x61:return aD['getLogger']()['debug'](bC(0x150),aE[bC(0x112)]),this['pushState']('LLABEL'),0x10;case 0x62:return aD['getLogger']()['debug']('Lex:\x20START_LINK',aE['yytext']),this['pushState'](bC(0x17d)),0x10;case 0x63:this['pushState'](bC(0xed));break;case 0x64:return aD['getLogger']()['debug'](bC(0x1b0)),this[bC(0xe1)](bC(0xd2)),'LINK_LABEL';case 0x65:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20LINK','#'+aE['yytext']+'#'),0xf;case 0x66:return this[bC(0xd3)](),aD[bC(0x1ac)]()['debug']('Lex:\x20LINK',aE['yytext']),0xf;case 0x67:return this['popState'](),aD['getLogger']()['debug'](bC(0x1c9),aE['yytext']),0xf;case 0x68:return aD['getLogger']()[bC(0x157)]('Lex:\x20COLON',aE[bC(0x112)]),aE[bC(0x112)]=aE['yytext']['slice'](0x1),0x1b;}},'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':[0x1c],'inclusive':!0x1},'STYLE_STMNT':{'rules':[0x1b],'inclusive':!0x1},'CLASSDEFID':{'rules':[0x16],'inclusive':!0x1},'CLASSDEF':{'rules':[0x14,0x15],'inclusive':!0x1},'CLASS_STYLE':{'rules':[0x19],'inclusive':!0x1},'CLASS':{'rules':[0x18],'inclusive':!0x1},'LLABEL':{'rules':[0x63,0x64,0x65,0x66,0x67],'inclusive':!0x1},'ARROW_DIR':{'rules':[0x55,0x56,0x57,0x58,0x59,0x5a,0x5b],'inclusive':!0x1},'BLOCK_ARROW':{'rules':[0x4c,0x51,0x54],'inclusive':!0x1},'NODE':{'rules':[0x25,0x26,0x27,0x28,0x29,0x2a,0x2b,0x2c,0x2d,0x2e,0x2f,0x30,0x31,0x32,0x33,0x34,0x35,0x4d,0x50],'inclusive':!0x1},'md_string':{'rules':[0x9,0xa,0x4e,0x4f],'inclusive':!0x1},'space':{'rules':[],'inclusive':!0x1},'string':{'rules':[0xc,0xd,0x52,0x53],'inclusive':!0x1},'acc_descr_multiline':{'rules':[0x22,0x23],'inclusive':!0x1},'acc_descr':{'rules':[0x20],'inclusive':!0x1},'acc_title':{'rules':[0x1e],'inclusive':!0x1},'INITIAL':{'rules':[0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7,0x8,0xb,0xe,0xf,0x10,0x11,0x12,0x13,0x17,0x1a,0x1d,0x1f,0x21,0x24,0x36,0x37,0x38,0x39,0x3a,0x3b,0x3c,0x3d,0x3e,0x3f,0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a,0x4b,0x5c,0x5d,0x5e,0x5f,0x60,0x61,0x62,0x68],'inclusive':!0x0}}};return aC;}());az['lexer']=aA;function aB(){this['yy']={};}return L(aB,'Parser'),aB['prototype']=az,az[bf(0x12e)]=aB,new aB();}());mt[bD(0x14d)]=mt;var sr=mt,X=new Map(),_t=[],St=new Map(),zt='color',Mt='fill',ir='bgFill',re=',',nr=O(),lt=new Map(),Tt='',cr=L(ah=>a6['sanitizeText'](ah,nr),'sanitizeText'),lr=L(function(ah,ai=''){const bE=bD;let aj=lt['get'](ah);aj||(aj={'id':ah,'styles':[],'textStyles':[]},lt['set'](ah,aj)),ai?.['split'](re)[bE(0x1ba)](ak=>{const bF=bE,al=ak['replace'](/([^;]*);/,'$1')['trim']();if(RegExp(zt)['exec'](ak)){const am=al[bF(0x19f)](Mt,ir)['replace'](zt,Mt);aj['textStyles'][bF(0x1b9)](am);}aj['styles']['push'](al);});},'addStyleClass'),or=L(function(ah,ai=''){const aj=X['get'](ah);ai!=null&&(aj['styles']=ai['split'](re));},'addStyle2Node'),hr=L(function(ah,ai){ah['split'](',')['forEach'](function(aj){const bG=b;let ak=X['get'](aj);if(ak===void 0x0){const al=aj['trim']();ak={'id':al,'type':'na','children':[]},X['set'](al,ak);}ak[bG(0x1cc)]||(ak['classes']=[]),ak['classes']['push'](ai);});},bD(0x1b1)),ae=L((ah,ai)=>{const bH=bD,aj=ah['flat'](),ak=[],al=aj['find'](am=>am?.['type']==='column-setting')?.[bH(0xd0)]??-0x1;for(const am of aj){if(typeof al=='number'&&al>0x0&&am[bH(0x103)]!==bH(0x136)&&typeof am['widthInColumns']=='number'&&am['widthInColumns']>al&&Q['warn']('Block\x20'+am['id']+'\x20width\x20'+am['widthInColumns']+'\x20exceeds\x20configured\x20column\x20width\x20'+al),am['label']&&(am['label']=cr(am[bH(0x1d1)])),am['type']===bH(0xda)){lr(am['id'],am['css']);continue;}if(am['type']===bH(0x135)){hr(am['id'],am?.['styleClass']??'');continue;}if(am['type']==='applyStyles'){am?.['stylesStr']&&or(am['id'],am?.['stylesStr']);continue;}if(am['type']==='column-setting')ai[bH(0xd0)]=am['columns']??-0x1;else{if(am['type']===bH(0x13f)){const an=(St['get'](am['id'])??0x0)+0x1;St['set'](am['id'],an),am['id']=an+'-'+am['id'],_t[bH(0x1b9)](am);}else{am['label']||(am['type']==='composite'?am['label']='':am['label']=am['id']);const ao=X[bH(0x160)](am['id']);if(ao===void 0x0?X['set'](am['id'],am):(am['type']!=='na'&&(ao['type']=am['type']),am['label']!==am['id']&&(ao['label']=am[bH(0x1d1)])),am['children']&&ae(am[bH(0x175)],am),am[bH(0x103)]==='space'){const ap=am[bH(0xd6)]??0x1;for(let aq=0x0;aq<ap;aq++){const as=$e(am);as['id']=as['id']+'-'+aq,X['set'](as['id'],as),ak[bH(0x1b9)](as);}}else ao===void 0x0&&ak['push'](am);}}}ai['children']=ak;},bD(0x147)),Dt=[],rt={'id':'root','type':'composite','children':[],'columns':-0x1},gr=L(()=>{const bI=bD;Q['debug'](bI(0xd7)),a4(),rt={'id':'root','type':'composite','children':[],'columns':-0x1},X=new Map([[bI(0x1d6),rt]]),Dt=[],lt=new Map(),_t=[],St=new Map(),Tt='';},'clear');function se(ah){const bJ=bD;switch(Q[bJ(0x157)](bJ(0x18f),ah),ah){case'[]':return'square';case'()':return Q['debug']('we\x20have\x20a\x20round'),'round';case'(())':return'circle';case'>]':return'rect_left_inv_arrow';case'{}':return'diamond';case'{{}}':return bJ(0xdd);case'([])':return bJ(0x13e);case'[[]]':return'subroutine';case'[()]':return'cylinder';case'((()))':return'doublecircle';case'[//]':return'lean_right';case'[\x5c\x5c]':return'lean_left';case'[/\x5c]':return'trapezoid';case bJ(0xfe):return'inv_trapezoid';case'<[]>':return'block_arrow';default:return'na';}}L(se,'typeStr2Type');function ie(ah){switch(Q['debug']('typeStr2Type',ah),ah){case'==':return'thick';default:return'normal';}}L(ie,bD(0x196));function a(){const d7=['Lex:\x20EOF','performAction','arrowMarkerPath','add','orient','1368824SQbnTf','3049770fKFCiF','annotations','terminals_','yylineno','startLabelLeft','match','getLogger','16bRPUzB','circle','1,0','Lex:\x20Starting\x20string','setCssClass','edgeStrToEdgeStartData','label\x20edgeLabel','length',':first-child','dotted','getBlocksFlat','last_line','push','forEach','176491YPsoLh','productions_','trace','last_column','refX','class','Lex\x20(down):','INITIAL','displayText','endLabelRight','arrow_point','test_match','options','30CFofjI','Lex:\x20LINK','start_left','Lexa:\x20[','classes','-lollipopStart','hasOwn',';\x0a\x20\x20\x20\x20box-shadow:\x20rgba(50,\x2050,\x2093,\x200.25)\x200px\x2013px\x2027px\x20-5px,\x20rgba(0,\x200,\x200,\x200.3)\x200px\x208px\x2016px\x20-8px;\x0a\x20\x20\x20\x20stroke-width:\x201px;\x0a\x20\x20}\x0a\x0a\x20\x20.cluster\x20text\x20{\x0a\x20\x20\x20\x20fill:\x20',';\x0a\x20\x20\x20\x20/*\x0a\x20\x20\x20\x20\x20*\x20This\x20is\x20for\x20backward\x20compatibility\x20with\x20existing\x20code\x20that\x20didn\x27t\x0a\x20\x20\x20\x20\x20*\x20add\x20a\x20`<p>`\x20around\x20edge\x20labels.\x0a\x20\x20\x20\x20\x20*\x0a\x20\x20\x20\x20\x20*\x20TODO:\x20We\x20should\x20probably\x20remove\x20this\x20in\x20a\x20future\x20release.\x0a\x20\x20\x20\x20\x20*/\x0a\x20\x20\x20\x20p\x20{\x0a\x20\x20\x20\x20\x20\x20margin:\x200;\x0a\x20\x20\x20\x20\x20\x20padding:\x200;\x0a\x20\x20\x20\x20\x20\x20display:\x20inline;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20rect\x20{\x0a\x20\x20\x20\x20\x20\x20opacity:\x200.5;\x0a\x20\x20\x20\x20\x20\x20background-color:\x20','label','labelText','CLASSDEF_ID','edgeLabelBackground','endRight','root','node\x20default','12MGSIRi','sandbox','DoubleCircle\x20intersect','18072hajesF','inner',')\x20abc88','getBoundingClientRect','normal','9MMOsdV','fontFamily','Parse\x20error\x20on\x20line\x20','prototype','abc89\x20topp/bott\x20calc,\x20Q\x20','insertEdge','-pointStart',';\x0a\x20\x20}\x0a\x0a\x20\x20.node\x20rect,\x0a\x20\x20.node\x20circle,\x0a\x20\x20.node\x20ellipse,\x0a\x20\x20.node\x20polygon,\x0a\x20\x20.node\x20path\x20{\x0a\x20\x20\x20\x20fill:\x20','matches','getBlock','ellipse','columns','.\x20You\x20can\x20only\x20invoke\x20reject()\x20in\x20the\x20lexer\x20when\x20the\x20lexer\x20is\x20of\x20the\x20backtracking\x20persuasion\x20(options.backtrack_lexer\x20=\x20true).\x0a','string','popState','markerWidth','\x200\x20l\x200,','width','Clear\x20called','getStyles','down','classDef','abs','first_column','hexagon','parseError','getBBox','stroke-width','pushState','ranges','transform','_backtrack','wrappingWidth','block_arrow','propertyIsEnumerable','trim','labelRect','226750TQGLEG','yyleng','matched','md_string','input','height:','Rule:\x20separator\x20(NL)\x20','class_box','translate(','select','widthInColumns','backtrack_lexer','labelStyle','node','space','NODE_DEND','composite','showPosition','\x20siblingHeight\x20','body','[\x5c/]','warn','Making\x20markers\x20for\x20','DIR','\x200,0,0\x20','type','\x20width=','siblingWidth','titleColor','height','from','_input','question','childHeight','choice','floor','9ccmldy','title','byteOffset','min','yytext','has','CLASSDEF_STYLEOPTS','createLabel','BLOCK_ARROW_END','conditionStack','linkTarget','marker\x20composition\x20','diff','polygon','style','Lex\x20(x):','fill','Unknown\x20node\x20property\x20','attr','subroutine','right','startLabelRight','marker','\x20xSize\x20','yylloc','lean_left','Lexa:\x20)','getPrototypeOf','intersect','textColor','index','LEX\x20ARR:\x20Starting\x20string','Parser','\x20x:\x20','classData',';\x0a\x20\x20}\x0a\x20\x20','positioned','set','\x200\x20a\x20','applyClass','column-setting','directions','divider','join','>',',\x20q\x20','draw','point','stadium','edge','block','rect_left_inv_arrow','padding','938436GPwDih','sort','props','-dependencyStart','populateBlockDatabase','classTitle','start','-aggregationStart','curve','size','parser','stroke-dasharray','aggregation','Lex:\x20START_LINK',';\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20text-align:\x20center;\x0a\x20\x20}\x0a\x0a\x20\x20/*\x20For\x20html\x20labels\x20only\x20*/\x0a\x20\x20.labelBkg\x20{\x0a\x20\x20\x20\x20background-color:\x20','insert','end','arrowMarkerAbsolute','layout\x20blocks\x20(<==layoutBlocks)\x20','userSpaceOnUse','debug','marker\x20extension\x20','Rule:\x20statement:\x20','keys','11091982GoRfMx','trapezoid','refY','isInteger','NODE','get','calcTerminalLabelPosition','borders','diamond','edgeTypeStr','\x20startingPos=X',',\x20r\x20','auto','doublecircle','intersectNode','svg:a','pastInput','info','mainBkg','M\x2019,7\x20L9,13\x20L14,7\x20L9,1\x20Z','getBlocks','markerHeight','buffer','STYLE_ENTITY_IDS','group','arrow_open','children','abc88\x20columnsPos','acc_descr_value','function','endLabelLeft','arrowTypeEnd','lex','unput','LLABEL',':s\x20children\x20is\x20','Unknown\x20arrow\x20type:\x20','node\x20','valueOf','_currentRules','NODE_ID','methods','marker\x20lollipop\x20',';\x0a\x20\x20\x20\x20stroke:\x20','path','generateId',';\x0a\x20\x20\x20\x20fill:\x20none;\x0a\x20\x20}\x0a\x0a\x20\x20.edgeLabel\x20{\x0a\x20\x20\x20\x20background-color:\x20','Rule:\x20node\x20(NODE_ID\x20nodeShapeNLabel\x20separator):\x20','append','substr','rect','getNodeFromBlock','typeStr2Type','nodeTextColor','Lexa:\x20))','rules','edgeStrToThickness','marker\x20cross\x20','LINKSTYLE','edgeTypeStr2Type','range','Transforming\x20node','edge-thickness-normal','lexer','line','slice','\x20y:\x20','conditions','replace'];a=function(){return d7;};return a();}function ne(ah){const bK=bD;switch(ah['trim']()['slice'](-0x1)){case'x':return'arrow_cross';case'o':return'arrow_circle';case'>':return bK(0x1c5);default:return'';}}L(ne,'edgeStrToEdgeData');function ce(ah){const bL=bD;switch(ah['trim']()['charAt'](0x0)){case'x':return'arrow_cross';case'o':return'arrow_circle';case'<':return'arrow_point';default:return bL(0x174);}}L(ce,'edgeStrToEdgeStartData');function le(ah){return ah['includes']('==')?'thick':'normal';}L(le,bD(0x193));function oe(ah){const bM=bD;return ah['includes']('.-')?bM(0x1b6):'solid';}L(oe,'edgeStrToPattern');var Pt=0x0,dr=L(()=>(Pt++,'id-'+Math['random']()['toString'](0x24)[bD(0x18c)](0x2,0xc)+'-'+Pt),'generateId'),ur=L(ah=>{rt['children']=ah,ae(ah,rt),Dt=rt['children'];},'setHierarchy'),pr=L(ah=>{const bN=bD,ai=X['get'](ah);return ai?ai['columns']?ai['columns']:ai['children']?ai[bN(0x175)]['length']:-0x1:-0x1;},'getColumns'),fr=L(()=>[...X['values']()],bD(0x1b7)),xr=L(()=>Dt||[],'getBlocks'),yr=L(()=>_t,'getEdges'),br=L(ah=>X[bD(0x160)](ah),'getBlock'),wr=L(ah=>{X['set'](ah['id'],ah);},'setBlock'),mr=L(ah=>{Tt=ah;},'setDiagramId'),Sr=L(()=>Tt,'getDiagramId'),Lr=L(()=>Q,'getLogger'),kr=L(function(){return lt;},'getClasses'),vr={'getConfig':L(()=>T()['block'],'getConfig'),'typeStr2Type':se,'edgeTypeStr2Type':ie,'edgeStrToEdgeData':ne,'edgeStrToEdgeStartData':ce,'edgeStrToThickness':le,'edgeStrToPattern':oe,'getLogger':Lr,'getBlocksFlat':fr,'getBlocks':xr,'getEdges':yr,'setHierarchy':ur,'getBlock':br,'setBlock':wr,'getColumns':pr,'getClasses':kr,'clear':gr,'generateId':dr,'setDiagramId':mr,'getDiagramId':Sr},Er=vr,bt=L((ah,ai)=>{const aj=ag,ak=aj(ah,'r'),al=aj(ah,'g'),am=aj(ah,'b');return a5(ak,al,am,ai);},'fade'),_r=L(ah=>'.label\x20{\x0a\x20\x20\x20\x20font-family:\x20'+ah['fontFamily']+';\x0a\x20\x20\x20\x20color:\x20'+(ah[bD(0x190)]||ah['textColor'])+';\x0a\x20\x20}\x0a\x20\x20.cluster-label\x20text\x20{\x0a\x20\x20\x20\x20fill:\x20'+ah[bD(0x106)]+';\x0a\x20\x20}\x0a\x20\x20.cluster-label\x20span,p\x20{\x0a\x20\x20\x20\x20color:\x20'+ah['titleColor']+';\x0a\x20\x20}\x0a\x0a\x0a\x0a\x20\x20.label\x20text,span,p\x20{\x0a\x20\x20\x20\x20fill:\x20'+(ah['nodeTextColor']||ah['textColor'])+';\x0a\x20\x20\x20\x20color:\x20'+(ah[bD(0x190)]||ah['textColor'])+bD(0xcc)+ah[bD(0x16d)]+bD(0x186)+ah['nodeBorder']+';\x0a\x20\x20\x20\x20stroke-width:\x201px;\x0a\x20\x20}\x0a\x20\x20.flowchart-label\x20text\x20{\x0a\x20\x20\x20\x20text-anchor:\x20middle;\x0a\x20\x20}\x0a\x20\x20//\x20.flowchart-label\x20.text-outer-tspan\x20{\x0a\x20\x20//\x20\x20\x20text-anchor:\x20middle;\x0a\x20\x20//\x20}\x0a\x20\x20//\x20.flowchart-label\x20.text-inner-tspan\x20{\x0a\x20\x20//\x20\x20\x20text-anchor:\x20start;\x0a\x20\x20//\x20}\x0a\x0a\x20\x20.node\x20.label\x20{\x0a\x20\x20\x20\x20text-align:\x20center;\x0a\x20\x20}\x0a\x20\x20.node.clickable\x20{\x0a\x20\x20\x20\x20cursor:\x20pointer;\x0a\x20\x20}\x0a\x0a\x20\x20.arrowheadPath\x20{\x0a\x20\x20\x20\x20fill:\x20'+ah['arrowheadColor']+';\x0a\x20\x20}\x0a\x0a\x20\x20.edgePath\x20.path\x20{\x0a\x20\x20\x20\x20stroke:\x20'+ah['lineColor']+';\x0a\x20\x20\x20\x20stroke-width:\x202.0px;\x0a\x20\x20}\x0a\x0a\x20\x20.flowchart-link\x20{\x0a\x20\x20\x20\x20stroke:\x20'+ah['lineColor']+bD(0x189)+ah[bD(0x1d4)]+bD(0x1d0)+ah['edgeLabelBackground']+';\x0a\x20\x20\x20\x20\x20\x20fill:\x20'+ah['edgeLabelBackground']+bD(0x151)+ah['edgeLabelBackground']+';\x0a\x20\x20}\x0a\x0a\x20\x20.node\x20.cluster\x20{\x0a\x20\x20\x20\x20//\x20fill:\x20'+bt(ah['mainBkg'],0.5)+';\x0a\x20\x20\x20\x20fill:\x20'+bt(ah['clusterBkg'],0.5)+bD(0x186)+bt(ah['clusterBorder'],0.2)+bD(0x1cf)+ah[bD(0x106)]+';\x0a\x20\x20}\x0a\x0a\x20\x20.cluster\x20span,p\x20{\x0a\x20\x20\x20\x20color:\x20'+ah['titleColor']+';\x0a\x20\x20}\x0a\x20\x20/*\x20.cluster\x20div\x20{\x0a\x20\x20\x20\x20color:\x20'+ah['titleColor']+';\x0a\x20\x20}\x20*/\x0a\x0a\x20\x20div.mermaidTooltip\x20{\x0a\x20\x20\x20\x20position:\x20absolute;\x0a\x20\x20\x20\x20text-align:\x20center;\x0a\x20\x20\x20\x20max-width:\x20200px;\x0a\x20\x20\x20\x20padding:\x202px;\x0a\x20\x20\x20\x20font-family:\x20'+ah[bD(0x1e1)]+';\x0a\x20\x20\x20\x20font-size:\x2012px;\x0a\x20\x20\x20\x20background:\x20'+ah['tertiaryColor']+';\x0a\x20\x20\x20\x20border:\x201px\x20solid\x20'+ah['border2']+';\x0a\x20\x20\x20\x20border-radius:\x202px;\x0a\x20\x20\x20\x20pointer-events:\x20none;\x0a\x20\x20\x20\x20z-index:\x20100;\x0a\x20\x20}\x0a\x0a\x20\x20.flowchartTitleText\x20{\x0a\x20\x20\x20\x20text-anchor:\x20middle;\x0a\x20\x20\x20\x20font-size:\x2018px;\x0a\x20\x20\x20\x20fill:\x20'+ah[bD(0x12b)]+bD(0x131)+c()+'\x0a',bD(0xd8)),Tr=_r,Dr=L((ah,ai,aj,ak)=>{ai['forEach'](al=>{Pr[al](ah,aj,ak);});},'insertMarkers'),Br=L((ah,ai,aj)=>{const bO=bD;Q['trace'](bO(0x100),aj),ah['append']('defs')['append']('marker')[bO(0x120)]('id',aj+'_'+ai+'-extensionStart')['attr']('class','marker\x20extension\x20'+ai)['attr']('refX',0x12)['attr']('refY',0x7)['attr'](bO(0xd4),0xbe)[bO(0x120)]('markerHeight',0xf0)['attr']('orient','auto')['append']('path')['attr']('d','M\x201,7\x20L18,13\x20V\x201\x20Z'),ah['append']('defs')['append']('marker')['attr']('id',aj+'_'+ai+'-extensionEnd')['attr']('class',bO(0x158)+ai)['attr']('refX',0x1)['attr']('refY',0x7)[bO(0x120)](bO(0xd4),0x14)['attr']('markerHeight',0x1c)['attr']('orient','auto')['append'](bO(0x187))['attr']('d','M\x201,1\x20V\x2013\x20L18,7\x20Z');},'extension'),Nr=L((ah,ai,aj)=>{const bP=bD;ah['append']('defs')['append']('marker')['attr']('id',aj+'_'+ai+'-compositionStart')['attr']('class',bP(0x119)+ai)[bP(0x120)]('refX',0x12)['attr'](bP(0x15d),0x7)['attr'](bP(0xd4),0xbe)['attr']('markerHeight',0xf0)['attr']('orient',bP(0x167))['append']('path')[bP(0x120)]('d','M\x2018,7\x20L9,13\x20L1,7\x20L9,1\x20Z'),ah[bP(0x18b)]('defs')[bP(0x18b)]('marker')[bP(0x120)]('id',aj+'_'+ai+'-compositionEnd')['attr'](bP(0x1c0),'marker\x20composition\x20'+ai)[bP(0x120)]('refX',0x1)['attr']('refY',0x7)['attr']('markerWidth',0x14)['attr'](bP(0x170),0x1c)['attr'](bP(0x1a4),'auto')['append']('path')['attr']('d','M\x2018,7\x20L9,13\x20L1,7\x20L9,1\x20Z');},'composition'),Ir=L((ah,ai,aj)=>{const bQ=bD;ah['append']('defs')['append']('marker')['attr']('id',aj+'_'+ai+bQ(0x14a))['attr']('class','marker\x20aggregation\x20'+ai)['attr']('refX',0x12)['attr']('refY',0x7)['attr']('markerWidth',0xbe)['attr']('markerHeight',0xf0)['attr']('orient','auto')[bQ(0x18b)]('path')['attr']('d','M\x2018,7\x20L9,13\x20L1,7\x20L9,1\x20Z'),ah['append']('defs')['append']('marker')['attr']('id',aj+'_'+ai+'-aggregationEnd')['attr']('class','marker\x20aggregation\x20'+ai)[bQ(0x120)]('refX',0x1)['attr']('refY',0x7)[bQ(0x120)]('markerWidth',0x14)['attr']('markerHeight',0x1c)[bQ(0x120)]('orient','auto')['append'](bQ(0x187))['attr']('d','M\x2018,7\x20L9,13\x20L1,7\x20L9,1\x20Z');},bD(0x14f)),Cr=L((ah,ai,aj)=>{const bR=bD;ah['append']('defs')['append']('marker')['attr']('id',aj+'_'+ai+bR(0x146))[bR(0x120)]('class','marker\x20dependency\x20'+ai)['attr']('refX',0x6)['attr']('refY',0x7)['attr']('markerWidth',0xbe)['attr']('markerHeight',0xf0)[bR(0x120)]('orient','auto')['append']('path')[bR(0x120)]('d','M\x205,7\x20L9,13\x20L1,7\x20L9,1\x20Z'),ah['append']('defs')['append']('marker')['attr']('id',aj+'_'+ai+'-dependencyEnd')['attr']('class','marker\x20dependency\x20'+ai)['attr']('refX',0xd)['attr']('refY',0x7)['attr'](bR(0xd4),0x14)['attr']('markerHeight',0x1c)[bR(0x120)](bR(0x1a4),'auto')['append']('path')['attr']('d','M\x2018,7\x20L9,13\x20L14,7\x20L9,1\x20Z');},'dependency'),Or=L((ah,ai,aj)=>{const bS=bD;ah['append']('defs')['append']('marker')['attr']('id',aj+'_'+ai+bS(0x1cd))['attr']('class','marker\x20lollipop\x20'+ai)['attr'](bS(0x1bf),0xd)['attr']('refY',0x7)['attr'](bS(0xd4),0xbe)['attr']('markerHeight',0xf0)['attr']('orient','auto')['append'](bS(0x1ae))['attr']('stroke','black')['attr'](bS(0x11e),'transparent')['attr']('cx',0x7)['attr']('cy',0x7)['attr']('r',0x6),ah['append']('defs')['append'](bS(0x124))['attr']('id',aj+'_'+ai+'-lollipopEnd')['attr']('class',bS(0x185)+ai)['attr']('refX',0x1)['attr'](bS(0x15d),0x7)['attr']('markerWidth',0xbe)['attr'](bS(0x170),0xf0)['attr']('orient','auto')['append'](bS(0x1ae))['attr']('stroke','black')['attr']('fill','transparent')['attr']('cx',0x7)['attr']('cy',0x7)['attr']('r',0x6);},'lollipop'),Rr=L((ah,ai,aj)=>{const bT=bD;ah['append']('marker')[bT(0x120)]('id',aj+'_'+ai+'-pointEnd')['attr'](bT(0x1c0),'marker\x20'+ai)['attr']('viewBox','0\x200\x2010\x2010')['attr']('refX',0x6)[bT(0x120)]('refY',0x5)['attr']('markerUnits','userSpaceOnUse')['attr']('markerWidth',0xc)['attr'](bT(0x170),0xc)['attr']('orient','auto')['append']('path')['attr']('d','M\x200\x200\x20L\x2010\x205\x20L\x200\x2010\x20z')['attr']('class',bT(0x1a2))['style']('stroke-width',0x1)['style']('stroke-dasharray',bT(0x1af)),ah['append']('marker')['attr']('id',aj+'_'+ai+bT(0xcb))['attr']('class','marker\x20'+ai)['attr']('viewBox','0\x200\x2010\x2010')['attr']('refX',4.5)['attr']('refY',0x5)['attr']('markerUnits',bT(0x156))['attr']('markerWidth',0xc)['attr']('markerHeight',0xc)['attr']('orient','auto')['append']('path')['attr']('d','M\x200\x205\x20L\x2010\x2010\x20L\x2010\x200\x20z')['attr']('class','arrowMarkerPath')['style']('stroke-width',0x1)['style']('stroke-dasharray','1,0');},'point'),Ar=L((ah,ai,aj)=>{const bU=bD;ah[bU(0x18b)]('marker')['attr']('id',aj+'_'+ai+'-circleEnd')['attr']('class','marker\x20'+ai)['attr']('viewBox','0\x200\x2010\x2010')['attr']('refX',0xb)['attr']('refY',0x5)['attr']('markerUnits','userSpaceOnUse')['attr']('markerWidth',0xb)['attr']('markerHeight',0xb)['attr']('orient','auto')['append']('circle')['attr']('cx','5')['attr']('cy','5')['attr']('r','5')['attr'](bU(0x1c0),'arrowMarkerPath')['style']('stroke-width',0x1)['style']('stroke-dasharray','1,0'),ah[bU(0x18b)](bU(0x124))['attr']('id',aj+'_'+ai+'-circleStart')['attr']('class','marker\x20'+ai)['attr']('viewBox','0\x200\x2010\x2010')['attr']('refX',-0x1)['attr']('refY',0x5)['attr']('markerUnits','userSpaceOnUse')['attr'](bU(0xd4),0xb)['attr']('markerHeight',0xb)['attr'](bU(0x1a4),'auto')['append']('circle')['attr']('cx','5')['attr']('cy','5')[bU(0x120)]('r','5')['attr']('class','arrowMarkerPath')[bU(0x11c)](bU(0xe0),0x1)['style']('stroke-dasharray','1,0');},bD(0x1ae)),zr=L((ah,ai,aj)=>{const bV=bD;ah['append']('marker')['attr']('id',aj+'_'+ai+'-crossEnd')['attr']('class',bV(0x194)+ai)[bV(0x120)]('viewBox','0\x200\x2011\x2011')[bV(0x120)]('refX',0xc)['attr']('refY',5.2)['attr']('markerUnits','userSpaceOnUse')['attr'](bV(0xd4),0xb)['attr']('markerHeight',0xb)['attr']('orient','auto')[bV(0x18b)]('path')['attr']('d','M\x201,1\x20l\x209,9\x20M\x2010,1\x20l\x20-9,9')['attr'](bV(0x1c0),'arrowMarkerPath')['style'](bV(0xe0),0x2)['style']('stroke-dasharray','1,0'),ah['append']('marker')[bV(0x120)]('id',aj+'_'+ai+'-crossStart')['attr']('class',bV(0x194)+ai)['attr']('viewBox','0\x200\x2011\x2011')['attr']('refX',-0x1)['attr']('refY',5.2)['attr']('markerUnits','userSpaceOnUse')['attr']('markerWidth',0xb)['attr']('markerHeight',0xb)['attr']('orient','auto')[bV(0x18b)]('path')['attr']('d','M\x201,1\x20l\x209,9\x20M\x2010,1\x20l\x20-9,9')['attr'](bV(0x1c0),bV(0x1a2))['style']('stroke-width',0x2)['style'](bV(0x14e),bV(0x1af));},'cross'),Mr=L((ah,ai,aj)=>{const bW=bD;ah['append']('defs')['append']('marker')[bW(0x120)]('id',aj+'_'+ai+'-barbEnd')['attr']('refX',0x13)[bW(0x120)]('refY',0x7)['attr']('markerWidth',0x14)['attr']('markerHeight',0xe)['attr']('markerUnits','strokeWidth')['attr']('orient','auto')['append']('path')['attr']('d',bW(0x16e));},'barb'),Pr={'extension':Br,'composition':Nr,'aggregation':Ir,'dependency':Cr,'lollipop':Or,'point':Rr,'circle':Ar,'cross':zr,'barb':Mr},Fr=Dr,C=O()?.['block']?.['padding']??0x8;function Lt(ah,ai){const bX=bD;if(ah===0x0||!Number['isInteger'](ah))throw new Error('Columns\x20must\x20be\x20an\x20integer\x20!==\x200.');if(ai<0x0||!Number[bX(0x15e)](ai))throw new Error('Position\x20must\x20be\x20a\x20non-negative\x20integer.'+ai);if(ah<0x0)return{'px':ai,'py':0x0};if(ah===0x1)return{'px':0x0,'py':ai};const aj=ai%ah,ak=Math[bX(0x10d)](ai/ah);return{'px':aj,'py':ak};}L(Lt,'calculateBlockPosition');var Wr=L(ah=>{const bY=bD;let ai=0x0,aj=0x0;for(const ak of ah[bY(0x175)]){const {width:al,height:am,x:an,y:ao}=ak['size']??{'width':0x0,'height':0x0,'x':0x0,'y':0x0};if(Q['debug']('getMaxChildSize\x20abc95\x20child:',ak['id'],'width:',al,bY(0xef),am,'x:',an,'y:',ao,ak[bY(0x103)]),ak['type']==='space')continue;const ap=al/(ak['widthInColumns']??0x1);ap>ai&&(ai=ap),am>aj&&(aj=am);}return{'width':ai,'height':aj};},'getMaxChildSize');function ot(ah,ai,aj=0x0,ak=0x0){const bZ=bD;Q['debug']('setBlockSizes\x20abc95\x20(start)',ah['id'],ah?.['size']?.['x'],'block\x20width\x20=',ah?.['size'],bZ(0x105),aj),ah?.[bZ(0x14c)]?.['width']||(ah['size']={'width':aj,'height':ak,'x':0x0,'y':0x0});let al=0x0,am=0x0;if(ah['children']?.['length']>0x0){for(const aw of ah['children'])ot(aw,ai);const an=Wr(ah);al=an[bZ(0xd6)],am=an['height'],Q['debug']('setBlockSizes\x20abc95\x20maxWidth\x20of',ah['id'],bZ(0x17e),al,am);for(const ax of ah['children'])ax['size']&&(Q['debug']('abc95\x20Setting\x20size\x20of\x20children\x20of\x20'+ah['id']+'\x20id='+ax['id']+'\x20'+al+'\x20'+am+'\x20'+JSON['stringify'](ax['size'])),ax['size'][bZ(0xd6)]=al*(ax['widthInColumns']??0x1)+C*((ax['widthInColumns']??0x1)-0x1),ax['size']['height']=am,ax['size']['x']=0x0,ax['size']['y']=0x0,Q['debug']('abc95\x20updating\x20size\x20of\x20'+ah['id']+'\x20children\x20child:'+ax['id']+'\x20maxWidth:'+al+'\x20maxHeight:'+am));for(const ay of ah['children'])ot(ay,ai,al,am);const ao=ah['columns']??-0x1;let ap=0x0;for(const az of ah[bZ(0x175)])ap+=az['widthInColumns']??0x1;let aq=ah[bZ(0x175)]['length'];ao>0x0&&ao<ap&&(aq=ao);const as=Math['ceil'](ap/aq);let au=aq*(al+C)+C,av=as*(am+C)+C;if(au<aj){Q['debug']('Detected\x20to\x20small\x20sibling:\x20abc95\x20'+ah['id']+'\x20siblingWidth\x20'+aj+bZ(0xfc)+ak+'\x20width\x20'+au),au=aj,av=ak;const aA=(aj-aq*C-C)/aq,aB=(ak-as*C-C)/as;Q[bZ(0x157)]('Size\x20indata\x20abc88',ah['id'],'childWidth',aA,'maxWidth',al),Q['debug']('Size\x20indata\x20abc88',ah['id'],bZ(0x10b),aB,'maxHeight',am),Q['debug']('Size\x20indata\x20abc88\x20xSize',aq,'padding',C);for(const aC of ah['children'])aC['size']&&(aC['size']['width']=aA,aC['size']['height']=aB,aC['size']['x']=0x0,aC['size']['y']=0x0);}if(Q['debug']('abc95\x20(finale\x20calc)\x20'+ah['id']+bZ(0x125)+aq+'\x20ySize\x20'+as+'\x20columns\x20'+ao+ah['children']['length']+bZ(0x104)+Math['max'](au,ah['size']?.['width']||0x0)),au<(ah?.['size']?.[bZ(0xd6)]||0x0)){au=ah?.[bZ(0x14c)]?.[bZ(0xd6)]||0x0;const aD=ao>0x0?Math['min'](ah['children'][bZ(0x1b4)],ao):ah['children']['length'];if(aD>0x0){const aE=(au-aD*C-C)/aD;Q['debug']('abc95\x20(growing\x20to\x20fit)\x20width',ah['id'],au,ah['size']?.[bZ(0xd6)],aE);for(const aF of ah['children'])aF['size']&&(aF['size']['width']=aE);}}ah[bZ(0x14c)]={'width':au,'height':av,'x':0x0,'y':0x0};}Q['debug']('setBlockSizes\x20abc94\x20(done)',ah['id'],ah?.['size']?.['x'],ah?.['size']?.[bZ(0xd6)],ah?.[bZ(0x14c)]?.['y'],ah?.[bZ(0x14c)]?.[bZ(0x107)]);}L(ot,'setBlockSizes');function Bt(ah,ai){const c0=bD;Q['debug']('abc85\x20layout\x20blocks\x20(=>layoutBlocks)\x20'+ah['id']+'\x20x:\x20'+ah?.['size']?.['x']+'\x20y:\x20'+ah?.['size']?.['y']+'\x20width:\x20'+ah?.['size']?.[c0(0xd6)]);const aj=ah['columns']??-0x1;if(Q['debug']('layoutBlocks\x20columns\x20abc95',ah['id'],'=>',aj,ah),ah['children']&&ah['children']['length']>0x0){const ak=ah?.['children'][0x0]?.['size']?.['width']??0x0,al=ah[c0(0x175)]['length']*ak+(ah['children']['length']-0x1)*C;Q['debug']('widthOfChildren\x2088',al,'posX');const am=new Map();{let as=0x0;for(const au of ah['children']){if(!au[c0(0x14c)])continue;const {py:av}=Lt(aj,as),aw=am['get'](av)??0x0;au['size']['height']>aw&&am['set'](av,au['size']['height']);let ax=au?.['widthInColumns']??0x1;aj>0x0&&(ax=Math['min'](ax,aj-as%aj)),as+=ax;}}const an=new Map();{let ay=0x0;const az=[...am['keys']()][c0(0x144)]((aA,aB)=>aA-aB);for(const aA of az)an[c0(0x133)](aA,ay),ay+=(am['get'](aA)??0x0)+C;}let ao=0x0;Q['debug']('abc91\x20block?.size?.x',ah['id'],ah?.[c0(0x14c)]?.['x']);let ap=ah?.[c0(0x14c)]?.['x']?ah?.[c0(0x14c)]?.['x']+(-ah?.[c0(0x14c)]?.['width']/0x2||0x0):-C,aq=0x0;for(const aB of ah['children']){const aC=ah;if(!aB['size'])continue;const {width:aD,height:aE}=aB['size'],{px:aF,py:aG}=Lt(aj,ao);if(aG!=aq&&(aq=aG,ap=ah?.[c0(0x14c)]?.['x']?ah?.['size']?.['x']+(-ah?.[c0(0x14c)]?.['width']/0x2||0x0):-C,Q['debug']('New\x20row\x20in\x20layout\x20for\x20block',ah['id'],'\x20and\x20child\x20',aB['id'],aq)),Q['debug']('abc89\x20layout\x20blocks\x20(child)\x20id:\x20'+aB['id']+'\x20Pos:\x20'+ao+'\x20(px,\x20py)\x20'+aF+','+aG+'\x20('+aC?.['size']?.['x']+','+aC?.[c0(0x14c)]?.['y']+')\x20parent:\x20'+aC['id']+'\x20width:\x20'+aD+C),aC['size']){const aI=aD/0x2;aB['size']['x']=ap+C+aI,Q['debug']('abc91\x20layout\x20blocks\x20(calc)\x20px,\x20pyid:'+aB['id']+c0(0x165)+ap+'\x20new\x20startingPosX'+aB[c0(0x14c)]['x']+'\x20'+aI+'\x20padding='+C+'\x20width='+aD+'\x20halfWidth='+aI+'\x20=>\x20x:'+aB['size']['x']+'\x20y:'+aB['size']['y']+'\x20'+aB[c0(0xf4)]+'\x20(width\x20*\x20(child?.w\x20||\x201))\x20/\x202\x20'+aD*(aB?.['widthInColumns']??0x1)/0x2),ap=aB['size']['x']+aI;const aJ=an['get'](aG)??0x0,aK=am[c0(0x160)](aG)??aE;aB['size']['y']=aC['size']['y']-aC['size']['height']/0x2+aJ+aK/0x2+C,Q['debug']('abc88\x20layout\x20blocks\x20(calc)\x20px,\x20pyid:'+aB['id']+'startingPosX'+ap+C+aI+'=>x:'+aB['size']['x']+'y:'+aB['size']['y']+aB[c0(0xf4)]+'(width\x20*\x20(child?.w\x20||\x201))\x20/\x202'+aD*(aB?.['widthInColumns']??0x1)/0x2);}aB['children']&&Bt(aB);let aH=aB?.['widthInColumns']??0x1;aj>0x0&&(aH=Math['min'](aH,aj-ao%aj)),ao+=aH,Q['debug'](c0(0x176),aB,ao);}}Q['debug'](c0(0x155)+ah['id']+c0(0x12f)+ah?.[c0(0x14c)]?.['x']+c0(0x19d)+ah?.['size']?.['y']+'\x20width:\x20'+ah?.['size']?.['width']);}L(Bt,'layoutBlocks');function Nt(ah,{minX:ai,minY:aj,maxX:ak,maxY:al}={'minX':0x0,'minY':0x0,'maxX':0x0,'maxY':0x0}){if(ah['size']&&ah['id']!=='root'){const {x:am,y:an,width:ao,height:ap}=ah['size'];am-ao/0x2<ai&&(ai=am-ao/0x2),an-ap/0x2<aj&&(aj=an-ap/0x2),am+ao/0x2>ak&&(ak=am+ao/0x2),an+ap/0x2>al&&(al=an+ap/0x2);}if(ah['children']){for(const aq of ah['children'])({minX:ai,minY:aj,maxX:ak,maxY:al}=Nt(aq,{'minX':ai,'minY':aj,'maxX':ak,'maxY':al}));}return{'minX':ai,'minY':aj,'maxX':ak,'maxY':al};}L(Nt,'findBounds');function he(ah){const c1=bD,ai=ah['getBlock']('root');if(!ai)return;ot(ai,ah,0x0,0x0),Bt(ai),Q[c1(0x157)](c1(0x16f),JSON['stringify'](ai,null,0x2));const {minX:aj,minY:ak,maxX:al,maxY:am}=Nt(ai),an=am-ak,ao=al-aj;return{'x':aj,'y':ak,'width':ao,'height':an};}L(he,'layout');var Yr=L(async(ah,ai,aj,ak=!0x1,al=!0x1)=>{let am=ai||'';typeof am=='object'&&(am=am[0x0]);const an=O(),ao=R(an);return await W(ah,am,{'style':aj,'isTitle':ak,'useHtmlLabels':ao,'markdown':!0x1,'isNode':al,'width':Number['POSITIVE_INFINITY']},an);},bD(0x115)),U=Yr,Hr=L((ah,ai,aj,ak,al)=>{const c2=bD;ai['arrowTypeStart']&&Ft(ah,'start',ai['arrowTypeStart'],aj,ak,al),ai['arrowTypeEnd']&&Ft(ah,'end',ai[c2(0x17a)],aj,ak,al);},'addEdgeMarkers'),Kr={'arrow_cross':'cross','arrow_point':bD(0x13d),'arrow_barb':'barb','arrow_circle':'circle','aggregation':bD(0x14f),'extension':'extension','composition':'composition','dependency':'dependency','lollipop':'lollipop'},Ft=L((ah,ai,aj,ak,al,am)=>{const c3=bD,an=Kr[aj];if(!an){Q['warn'](c3(0x17f)+aj);return;}const ao=ai==='start'?'Start':'End';ah['attr']('marker-'+ai,'url('+ak+'#'+al+'_'+am+'-'+an+ao+')');},'addEdgeMarker'),kt={},M={},Ur=L(async(ah,ai)=>{const c4=bD,aj=O(),ak=R(aj),al=ah['insert']('g')['attr']('class','edgeLabel'),am=al['insert']('g')[c4(0x120)]('class','label'),an=ai['labelType']==='markdown',ao=await W(ah,ai['label'],{'style':ai[c4(0xf6)],'useHtmlLabels':ak,'addSvgBackground':an,'isNode':!0x1,'markdown':an,'width':an?void 0x0:Number['POSITIVE_INFINITY']},aj);am['node']()['appendChild'](ao);let ap=ao[c4(0xdf)](),aq=ap;if(ak){const au=ao['children'][0x0],av=ab(ao);ap=au['getBoundingClientRect'](),aq=ap,av['attr']('width',ap['width']),av['attr']('height',ap['height']);}else{const aw=ab(ao)[c4(0xf3)]('text')['node']();aw&&typeof aw['getBBox']=='function'&&(aq=aw['getBBox']());}am['attr']('transform',Y(aq,ak)),kt[ai['id']]=al,ai['width']=ap['width'],ai[c4(0x107)]=ap['height'];let as;if(ai['startLabelLeft']){const ax=ah['insert']('g')['attr']('class','edgeTerminals'),ay=ax[c4(0x152)]('g')['attr']('class','inner'),az=await U(ay,ai['startLabelLeft'],ai['labelStyle']);as=az;let aA=az['getBBox']();if(ak){const aB=az[c4(0x175)][0x0],aC=ab(az);aA=aB['getBoundingClientRect'](),aC['attr']('width',aA['width']),aC[c4(0x120)]('height',aA[c4(0x107)]);}ay['attr'](c4(0xe3),Y(aA,ak)),M[ai['id']]||(M[ai['id']]={}),M[ai['id']]['startLeft']=ax,et(as,ai['startLabelLeft']);}if(ai[c4(0x123)]){const aD=ah['insert']('g')['attr']('class','edgeTerminals'),aE=aD['insert']('g')[c4(0x120)]('class','inner'),aF=await U(aE,ai['startLabelRight'],ai[c4(0xf6)]);as=aF;let aG=aF[c4(0xdf)]();if(ak){const aH=aF['children'][0x0],aI=ab(aF);aG=aH['getBoundingClientRect'](),aI[c4(0x120)](c4(0xd6),aG['width']),aI['attr']('height',aG[c4(0x107)]);}aE['attr']('transform',Y(aG,ak)),M[ai['id']]||(M[ai['id']]={}),M[ai['id']]['startRight']=aD,et(as,ai['startLabelRight']);}if(ai[c4(0x179)]){const aJ=ah['insert']('g')['attr'](c4(0x1c0),'edgeTerminals'),aK=aJ['insert']('g')[c4(0x120)]('class',c4(0x1dc)),aL=await U(aJ,ai['endLabelLeft'],ai[c4(0xf6)]);as=aL;let aM=aL['getBBox']();if(ak){const aN=aL['children'][0x0],aO=ab(aL);aM=aN['getBoundingClientRect'](),aO[c4(0x120)]('width',aM['width']),aO['attr']('height',aM['height']);}aK[c4(0x120)](c4(0xe3),Y(aM,ak)),M[ai['id']]||(M[ai['id']]={}),M[ai['id']]['endLeft']=aJ,et(as,ai[c4(0x179)]);}if(ai[c4(0x1c4)]){const aP=ah['insert']('g')[c4(0x120)]('class','edgeTerminals'),aQ=aP['insert']('g')['attr']('class','inner'),aR=await U(aP,ai['endLabelRight'],ai['labelStyle']);as=aR;let aS=aR['getBBox']();if(ak){const aT=aR[c4(0x175)][0x0],aU=ab(aR);aS=aT['getBoundingClientRect'](),aU['attr']('width',aS['width']),aU['attr'](c4(0x107),aS['height']);}aQ['attr']('transform',Y(aS,ak)),M[ai['id']]||(M[ai['id']]={}),M[ai['id']]['endRight']=aP,et(as,ai[c4(0x1c4)]);}return ao;},'insertEdgeLabel');function et(ah,ai){const c5=bD;R(O())&&ah&&(ah[c5(0x11c)]['width']=ai['length']*0x9+'px',ah['style']['height']='12px');}L(et,'setTerminalWidth');var Xr=L((ah,ai)=>{const c6=bD;Q['debug']('Moving\x20label\x20abc88\x20',ah['id'],ah['label'],kt[ah['id']],ai);let aj=ai['updatedPath']?ai['updatedPath']:ai['originalPath'];const ak=O(),{subGraphTitleTotalMargin:al}=Z(ak);if(ah['label']){const am=kt[ah['id']];let an=ah['x'],ao=ah['y'];if(aj){const ap=a0['calcLabelPosition'](aj);Q['debug']('Moving\x20label\x20'+ah['label']+'\x20from\x20(',an,',',ao,')\x20to\x20(',ap['x'],',',ap['y'],c6(0x1dd)),ai['updatedPath']&&(an=ap['x'],ao=ap['y']);}am['attr']('transform','translate('+an+',\x20'+(ao+al/0x2)+')');}if(ah[c6(0x1aa)]){const aq=M[ah['id']]['startLeft'];let as=ah['x'],au=ah['y'];if(aj){const av=a0['calcTerminalLabelPosition'](ah['arrowTypeStart']?0xa:0x0,c6(0x1ca),aj);as=av['x'],au=av['y'];}aq['attr'](c6(0xe3),'translate('+as+',\x20'+au+')');}if(ah['startLabelRight']){const aw=M[ah['id']]['startRight'];let ax=ah['x'],ay=ah['y'];if(aj){const az=a0[c6(0x161)](ah['arrowTypeStart']?0xa:0x0,'start_right',aj);ax=az['x'],ay=az['y'];}aw['attr']('transform',c6(0xf2)+ax+',\x20'+ay+')');}if(ah[c6(0x179)]){const aA=M[ah['id']]['endLeft'];let aB=ah['x'],aC=ah['y'];if(aj){const aD=a0['calcTerminalLabelPosition'](ah['arrowTypeEnd']?0xa:0x0,'end_left',aj);aB=aD['x'],aC=aD['y'];}aA['attr']('transform','translate('+aB+',\x20'+aC+')');}if(ah['endLabelRight']){const aE=M[ah['id']][c6(0x1d5)];let aF=ah['x'],aG=ah['y'];if(aj){const aH=a0['calcTerminalLabelPosition'](ah['arrowTypeEnd']?0xa:0x0,'end_right',aj);aF=aH['x'],aG=aH['y'];}aE['attr'](c6(0xe3),'translate('+aF+',\x20'+aG+')');}},'positionEdgeLabel'),Vr=L((ah,ai)=>{const c7=bD,aj=ah['x'],ak=ah['y'],al=Math['abs'](ai['x']-aj),am=Math['abs'](ai['y']-ak),an=ah[c7(0xd6)]/0x2,ao=ah[c7(0x107)]/0x2;return al>=an||am>=ao;},'outsideNode'),jr=L((ah,ai,aj)=>{const c8=bD;Q['debug']('intersection\x20calc\x20abc89:\x0a\x20\x20outsidePoint:\x20'+JSON['stringify'](ai)+'\x0a\x20\x20insidePoint\x20:\x20'+JSON['stringify'](aj)+'\x0a\x20\x20node\x20\x20\x20\x20\x20\x20\x20\x20:\x20x:'+ah['x']+'\x20y:'+ah['y']+'\x20w:'+ah['width']+'\x20h:'+ah[c8(0x107)]);const ak=ah['x'],al=ah['y'],am=Math['abs'](ak-aj['x']),an=ah['width']/0x2;let ao=aj['x']<ai['x']?an-am:an+am;const ap=ah['height']/0x2,aq=Math['abs'](ai['y']-aj['y']),as=Math['abs'](ai['x']-aj['x']);if(Math['abs'](al-ai['y'])*an>Math['abs'](ak-ai['x'])*ap){let au=aj['y']<ai['y']?ai['y']-ap-al:al-ap-ai['y'];ao=as*au/aq;const av={'x':aj['x']<ai['x']?aj['x']+ao:aj['x']-as+ao,'y':aj['y']<ai['y']?aj['y']+aq-au:aj['y']-aq+au};return ao===0x0&&(av['x']=ai['x'],av['y']=ai['y']),as===0x0&&(av['x']=ai['x']),aq===0x0&&(av['y']=ai['y']),Q['debug'](c8(0x1e4)+aq+c8(0x13b)+au+',\x20R\x20'+as+c8(0x166)+ao,av),av;}else{aj['x']<ai['x']?ao=ai['x']-an-ak:ao=ak-an-ai['x'];let aw=aq*ao/as,ax=aj['x']<ai['x']?aj['x']+as-ao:aj['x']-as+ao,ay=aj['y']<ai['y']?aj['y']+aw:aj['y']-aw;return Q[c8(0x157)]('sides\x20calc\x20abc89,\x20Q\x20'+aq+c8(0x13b)+aw+',\x20R\x20'+as+',\x20r\x20'+ao,{'_x':ax,'_y':ay}),ao===0x0&&(ax=ai['x'],ay=ai['y']),as===0x0&&(ax=ai['x']),aq===0x0&&(ay=ai['y']),{'x':ax,'y':ay};}},'intersection'),Wt=L((ah,ai)=>{Q['debug']('abc88\x20cutPathAtIntersect',ah,ai);let aj=[],ak=ah[0x0],al=!0x1;return ah['forEach'](am=>{const c9=b;if(!Vr(ai,am)&&!al){const an=jr(ai,ak,am);let ao=!0x1;aj['forEach'](ap=>{ao=ao||ap['x']===an['x']&&ap['y']===an['y'];}),aj['some'](ap=>ap['x']===an['x']&&ap['y']===an['y'])||aj[c9(0x1b9)](an),al=!0x0;}else ak=am,al||aj['push'](am);}),aj;},'cutPathAtIntersect'),Gr=L(function(ah,ai,aj,ak,al,am,an){const cb=bD;let ao=aj['points'];Q['debug']('abc88\x20InsertEdge:\x20edge=',aj,'e=',ai);let ap=!0x1;const aq=am['node'](ai['v']);var as=am['node'](ai['w']);as?.['intersect']&&aq?.[cb(0x12a)]&&(ao=ao[cb(0x19c)](0x1,aj['points']['length']-0x1),ao['unshift'](aq['intersect'](ao[0x0])),ao['push'](as['intersect'](ao[ao['length']-0x1]))),aj['toCluster']&&(Q['debug']('to\x20cluster\x20abc88',ak[aj['toCluster']]),ao=Wt(aj['points'],ak[aj['toCluster']]['node']),ap=!0x0),aj['fromCluster']&&(Q['debug']('from\x20cluster\x20abc88',ak[aj['fromCluster']]),ao=Wt(ao['reverse'](),ak[aj['fromCluster']]['node'])['reverse'](),ap=!0x0);const au=ao['filter'](aD=>!Number['isNaN'](aD['y']));let av=ad;aj[cb(0x14b)]&&(al==='graph'||al==='flowchart')&&(av=aj['curve']);const {x:aw,y:ax}=a1(aj),ay=ac()['x'](aw)['y'](ax)[cb(0x14b)](av);let az;switch(aj['thickness']){case cb(0x1df):az=cb(0x199);break;case'thick':az='edge-thickness-thick';break;case'invisible':az='edge-thickness-thick';break;default:az='';}switch(aj['pattern']){case'solid':az+='\x20edge-pattern-solid';break;case'dotted':az+='\x20edge-pattern-dotted';break;case'dashed':az+='\x20edge-pattern-dashed';break;}const aA=ah['append']('path')['attr']('d',ay(au))['attr']('id',aj['id'])['attr']('class','\x20'+az+(aj[cb(0x1cc)]?'\x20'+aj[cb(0x1cc)]:''))['attr']('style',aj['style']);let aB='';(O()['flowchart']['arrowMarkerAbsolute']||O()['state'][cb(0x154)])&&(aB=a2(!0x0)),Hr(aA,aj,aB,an,al);let aC={};return ap&&(aC['updatedPath']=ao),aC['originalPath']=aj['points'],aC;},bD(0xca)),Zr=L(ah=>{const cc=bD,ai=new Set();for(const aj of ah)switch(aj){case'x':ai[cc(0x1a3)]('right'),ai['add']('left');break;case'y':ai['add']('up'),ai['add']('down');break;default:ai['add'](aj);break;}return ai;},'expandAndDeduplicateDirections'),qr=L((ah,ai,aj,ak)=>{const cd=bD,al=Zr(ah),am=0x2,an=ai['height']+0x2*aj['padding'],ao=an/am,ap=ak??ai['width']+0x2*ao+aj['padding'],aq=aj['padding']/0x2;return al['has']('right')&&al['has']('left')&&al['has']('up')&&al['has']('down')?[{'x':0x0,'y':0x0},{'x':ao,'y':0x0},{'x':ap/0x2,'y':0x2*aq},{'x':ap-ao,'y':0x0},{'x':ap,'y':0x0},{'x':ap,'y':-an/0x3},{'x':ap+0x2*aq,'y':-an/0x2},{'x':ap,'y':-0x2*an/0x3},{'x':ap,'y':-an},{'x':ap-ao,'y':-an},{'x':ap/0x2,'y':-an-0x2*aq},{'x':ao,'y':-an},{'x':0x0,'y':-an},{'x':0x0,'y':-0x2*an/0x3},{'x':-0x2*aq,'y':-an/0x2},{'x':0x0,'y':-an/0x3}]:al['has']('right')&&al['has']('left')&&al['has']('up')?[{'x':ao,'y':0x0},{'x':ap-ao,'y':0x0},{'x':ap,'y':-an/0x2},{'x':ap-ao,'y':-an},{'x':ao,'y':-an},{'x':0x0,'y':-an/0x2}]:al['has']('right')&&al[cd(0x113)]('left')&&al['has'](cd(0xd9))?[{'x':0x0,'y':0x0},{'x':ao,'y':-an},{'x':ap-ao,'y':-an},{'x':ap,'y':0x0}]:al[cd(0x113)](cd(0x122))&&al['has']('up')&&al['has']('down')?[{'x':0x0,'y':0x0},{'x':ap,'y':-ao},{'x':ap,'y':-an+ao},{'x':0x0,'y':-an}]:al[cd(0x113)]('left')&&al['has']('up')&&al['has']('down')?[{'x':ap,'y':0x0},{'x':0x0,'y':-ao},{'x':0x0,'y':-an+ao},{'x':ap,'y':-an}]:al['has'](cd(0x122))&&al['has']('left')?[{'x':ao,'y':0x0},{'x':ao,'y':-aq},{'x':ap-ao,'y':-aq},{'x':ap-ao,'y':0x0},{'x':ap,'y':-an/0x2},{'x':ap-ao,'y':-an},{'x':ap-ao,'y':-an+aq},{'x':ao,'y':-an+aq},{'x':ao,'y':-an},{'x':0x0,'y':-an/0x2}]:al['has']('up')&&al['has']('down')?[{'x':ap/0x2,'y':0x0},{'x':0x0,'y':-aq},{'x':ao,'y':-aq},{'x':ao,'y':-an+aq},{'x':0x0,'y':-an+aq},{'x':ap/0x2,'y':-an},{'x':ap,'y':-an+aq},{'x':ap-ao,'y':-an+aq},{'x':ap-ao,'y':-aq},{'x':ap,'y':-aq}]:al[cd(0x113)]('right')&&al[cd(0x113)]('up')?[{'x':0x0,'y':0x0},{'x':ap,'y':-ao},{'x':0x0,'y':-an}]:al['has']('right')&&al['has']('down')?[{'x':0x0,'y':0x0},{'x':ap,'y':0x0},{'x':0x0,'y':-an}]:al['has']('left')&&al['has']('up')?[{'x':ap,'y':0x0},{'x':0x0,'y':-ao},{'x':ap,'y':-an}]:al['has']('left')&&al['has'](cd(0xd9))?[{'x':ap,'y':0x0},{'x':0x0,'y':0x0},{'x':ap,'y':-an}]:al[cd(0x113)](cd(0x122))?[{'x':ao,'y':-aq},{'x':ao,'y':-aq},{'x':ap-ao,'y':-aq},{'x':ap-ao,'y':0x0},{'x':ap,'y':-an/0x2},{'x':ap-ao,'y':-an},{'x':ap-ao,'y':-an+aq},{'x':ao,'y':-an+aq},{'x':ao,'y':-an+aq}]:al['has']('left')?[{'x':ao,'y':0x0},{'x':ao,'y':-aq},{'x':ap-ao,'y':-aq},{'x':ap-ao,'y':-an+aq},{'x':ao,'y':-an+aq},{'x':ao,'y':-an},{'x':0x0,'y':-an/0x2}]:al['has']('up')?[{'x':ao,'y':-aq},{'x':ao,'y':-an+aq},{'x':0x0,'y':-an+aq},{'x':ap/0x2,'y':-an},{'x':ap,'y':-an+aq},{'x':ap-ao,'y':-an+aq},{'x':ap-ao,'y':-aq}]:al[cd(0x113)](cd(0xd9))?[{'x':ap/0x2,'y':0x0},{'x':0x0,'y':-aq},{'x':ao,'y':-aq},{'x':ao,'y':-an+aq},{'x':ap-ao,'y':-an+aq},{'x':ap-ao,'y':-aq},{'x':ap,'y':-aq}]:[{'x':0x0,'y':0x0}];},'getArrowPoints');function ge(ah,ai){return ah['intersect'](ai);}L(ge,bD(0x169));var Jr=ge;function de(ah,ai,aj,ak){const cf=bD;var al=ah['x'],am=ah['y'],an=al-ak['x'],ao=am-ak['y'],ap=Math['sqrt'](ai*ai*ao*ao+aj*aj*an*an),aq=Math[cf(0xdb)](ai*aj*an/ap);ak['x']<al&&(aq=-aq);var as=Math['abs'](ai*aj*ao/ap);return ak['y']<am&&(as=-as),{'x':al+aq,'y':am+as};}L(de,'intersectEllipse');var ue=de;function pe(ah,ai,aj){return ue(ah,ai,ai,aj);}L(pe,'intersectCircle');var Qr=pe;function fe(ah,ai,aj,ak){var al,am,an,ao,ap,aq,as,au,av,aw,ax,ay,az,aA,aB;if(al=ai['y']-ah['y'],an=ah['x']-ai['x'],ap=ai['x']*ah['y']-ah['x']*ai['y'],av=al*aj['x']+an*aj['y']+ap,aw=al*ak['x']+an*ak['y']+ap,!(av!==0x0&&aw!==0x0&&vt(av,aw))&&(am=ak['y']-aj['y'],ao=aj['x']-ak['x'],aq=ak['x']*aj['y']-aj['x']*ak['y'],as=am*ah['x']+ao*ah['y']+aq,au=am*ai['x']+ao*ai['y']+aq,!(as!==0x0&&au!==0x0&&vt(as,au))&&(ax=al*ao-am*an,ax!==0x0)))return ay=Math['abs'](ax/0x2),az=an*aq-ao*ap,aA=az<0x0?(az-ay)/ax:(az+ay)/ax,az=am*ap-al*aq,aB=az<0x0?(az-ay)/ax:(az+ay)/ax,{'x':aA,'y':aB};}L(fe,'intersectLine');function vt(ah,ai){return ah*ai>0x0;}L(vt,'sameSign');var $r=fe,ta=xe;function xe(ah,ai,aj){const cg=bD;var ak=ah['x'],al=ah['y'],am=[],an=Number['POSITIVE_INFINITY'],ao=Number['POSITIVE_INFINITY'];typeof ai['forEach']==cg(0x178)?ai['forEach'](function(ax){const ch=cg;an=Math['min'](an,ax['x']),ao=Math[ch(0x111)](ao,ax['y']);}):(an=Math['min'](an,ai['x']),ao=Math[cg(0x111)](ao,ai['y']));for(var ap=ak-ah['width']/0x2-an,aq=al-ah['height']/0x2-ao,as=0x0;as<ai['length'];as++){var au=ai[as],av=ai[as<ai[cg(0x1b4)]-0x1?as+0x1:0x0],aw=$r(ah,aj,{'x':ap+au['x'],'y':aq+au['y']},{'x':ap+av['x'],'y':aq+av['y']});aw&&am[cg(0x1b9)](aw);}return am[cg(0x1b4)]?(am['length']>0x1&&am['sort'](function(ax,ay){var az=ax['x']-aj['x'],aA=ax['y']-aj['y'],aB=Math['sqrt'](az*az+aA*aA),aC=ay['x']-aj['x'],aD=ay['y']-aj['y'],aE=Math['sqrt'](aC*aC+aD*aD);return aB<aE?-0x1:aB===aE?0x0:0x1;}),am[0x0]):ah;}L(xe,'intersectPolygon');var ea=L((ah,ai)=>{const ci=bD;var aj=ah['x'],ak=ah['y'],al=ai['x']-aj,am=ai['y']-ak,an=ah['width']/0x2,ao=ah[ci(0x107)]/0x2,ap,aq;return Math[ci(0xdb)](am)*an>Math[ci(0xdb)](al)*ao?(am<0x0&&(ao=-ao),ap=am===0x0?0x0:ao*al/am,aq=ao):(al<0x0&&(an=-an),ap=an,aq=al===0x0?0x0:an*am/al),{'x':aj+ap,'y':ak+aq};},'intersectRect'),ra=ea,B={'node':Jr,'circle':Qr,'ellipse':ue,'polygon':ta,'rect':ra},z=L(async(ah,ai,aj,ak)=>{const cj=bD,al=O();let am;const an=ai['useHtmlLabels']||R(al);aj?am=aj:am='node\x20default';const ao=ah['insert']('g')['attr']('class',am)['attr']('id',ai['domId']||ai['id']),ap=ao['insert']('g')['attr'](cj(0x1c0),'label')[cj(0x120)]('style',ai['labelStyle']);let aq;ai['labelText']===void 0x0?aq='':aq=typeof ai['labelText']=='string'?ai[cj(0x1d2)]:ai['labelText'][0x0];let as;ai['labelType']==='markdown'?as=W(ap,a7(a8(aq),al),{'useHtmlLabels':an,'width':ai['width']||al['flowchart'][cj(0xe5)],'classes':'markdown-node-label'},al):as=await U(ap,a7(a8(aq),al),ai['labelStyle'],!0x1,ak);let au=as['getBBox']();const av=ai['padding']/0x2;if(R(al)){const aw=as[cj(0x175)][0x0],ax=ab(as);await a9(aw,aq),au=aw['getBoundingClientRect'](),ax['attr']('width',au[cj(0xd6)]),ax[cj(0x120)](cj(0x107),au['height']);}return an?ap['attr']('transform','translate('+-au['width']/0x2+',\x20'+-au['height']/0x2+')'):ap['attr']('transform','translate(0,\x20'+-au['height']/0x2+')'),ai['centerLabel']&&ap['attr'](cj(0xe3),cj(0xf2)+-au['width']/0x2+',\x20'+-au['height']/0x2+')'),ap['insert']('rect',':first-child'),{'shapeSvg':ao,'bbox':au,'halfPadding':av,'label':ap};},'labelHelper'),N=L((ah,ai)=>{const ck=bD,aj=ai[ck(0xf7)]()[ck(0xdf)]();ah[ck(0xd6)]=aj['width'],ah['height']=aj['height'];},'updateNodeBounds');function b(c,d){c=c-0xca;const e=a();let f=e[c];return f;}function V(ah,ai,aj,ak){const cl=bD;return ah['insert']('polygon',':first-child')['attr']('points',ak['map'](function(al){return al['x']+','+al['y'];})['join']('\x20'))[cl(0x120)](cl(0x1c0),'label-container')['attr']('transform',cl(0xf2)+-ai/0x2+','+aj/0x2+')');}L(V,'insertPolygonShape');var aa=L(async(ah,ai)=>{const cm=bD;ai['useHtmlLabels']||R(O())||(ai['centerLabel']=!0x0);const {shapeSvg:aj,bbox:ak,halfPadding:al}=await z(ah,ai,'node\x20'+ai['classes'],!0x0);Q[cm(0x16c)]('Classes\x20=\x20',ai['classes']);const am=aj['insert']('rect',cm(0x1b5));return am['attr']('rx',ai['rx'])['attr']('ry',ai['ry'])['attr']('x',-ak['width']/0x2-al)['attr']('y',-ak[cm(0x107)]/0x2-al)['attr']('width',ak[cm(0xd6)]+ai['padding'])['attr']('height',ak['height']+ai['padding']),N(ai,am),ai['intersect']=function(an){const cn=cm;return B[cn(0x18d)](ai,an);},aj;},'note'),sa=aa,Yt=L(ah=>ah?'\x20'+ah:'','formatClass'),H=L((ah,ai)=>''+(ai||'node\x20default')+Yt(ah['classes'])+'\x20'+Yt(ah['class']),'getClassesFromNode'),Ht=L(async(ah,ai)=>{const co=bD,{shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai,void 0x0),!0x0),al=ak['width']+ai['padding'],am=ak[co(0x107)]+ai['padding'],an=al+am,ao=[{'x':an/0x2,'y':0x0},{'x':an,'y':-an/0x2},{'x':an/0x2,'y':-an},{'x':0x0,'y':-an/0x2}];Q[co(0x16c)]('Question\x20main\x20(Circle)');const ap=V(aj,an,an,ao);return ap['attr']('style',ai['style']),N(ai,ap),ai['intersect']=function(aq){const cp=co;return Q[cp(0xff)]('Intersect\x20called'),B['polygon'](ai,ao,aq);},aj;},'question'),ia=L((ah,ai)=>{const cq=bD,aj=ah['insert']('g')['attr']('class',cq(0x1d7))['attr']('id',ai['domId']||ai['id']),ak=0x1c,al=[{'x':0x0,'y':ak/0x2},{'x':ak/0x2,'y':0x0},{'x':0x0,'y':-ak/0x2},{'x':-ak/0x2,'y':0x0}];return aj['insert']('polygon',cq(0x1b5))[cq(0x120)]('points',al['map'](function(am){return am['x']+','+am['y'];})['join']('\x20'))['attr']('class','state-start')['attr']('r',0x7)[cq(0x120)]('width',0x1c)[cq(0x120)](cq(0x107),0x1c),ai['width']=0x1c,ai['height']=0x1c,ai['intersect']=function(am){return B['circle'](ai,0xe,am);},aj;},bD(0x10c)),na=L(async(ah,ai)=>{const cs=bD,{shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai,void 0x0),!0x0),al=0x4,am=ai['positioned']?ai['height']:ak[cs(0x107)]+ai['padding'],an=am/al,ao=ai[cs(0x132)]?ai['width']:ak['width']+0x2*an+ai['padding'],ap=[{'x':an,'y':0x0},{'x':ao-an,'y':0x0},{'x':ao,'y':-am/0x2},{'x':ao-an,'y':-am},{'x':an,'y':-am},{'x':0x0,'y':-am/0x2}],aq=V(aj,ao,am,ap);return aq['attr'](cs(0x11c),ai['style']),N(ai,aq),ai['intersect']=function(as){return B['polygon'](ai,ap,as);},aj;},bD(0xdd)),ca=L(async(ah,ai)=>{const cu=bD,{shapeSvg:aj,bbox:ak}=await z(ah,ai,void 0x0,!0x0),al=0x2,am=ak[cu(0x107)]+0x2*ai['padding'],an=am/al,ao=ak['width']+0x2*an+ai['padding'],ap=ai['positioned']&&(ai['widthInColumns']??0x1)>0x1&&ai['width']>ao?ai[cu(0xd6)]:ao,aq=qr(ai['directions'],ak,ai,ap),as=V(aj,ap,am,aq);return as[cu(0x120)]('style',ai['style']),N(ai,as),ai[cu(0x12a)]=function(au){return B['polygon'](ai,aq,au);},aj;},'block_arrow'),la=L(async(ah,ai)=>{const cv=bD,{shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai,void 0x0),!0x0),al=ak[cv(0xd6)]+ai['padding'],am=ak[cv(0x107)]+ai['padding'],an=[{'x':-am/0x2,'y':0x0},{'x':al,'y':0x0},{'x':al,'y':-am},{'x':-am/0x2,'y':-am},{'x':0x0,'y':-am/0x2}];return V(aj,al,am,an)['attr']('style',ai['style']),ai['width']=al+am,ai['height']=am,ai['intersect']=function(ao){return B['polygon'](ai,an,ao);},aj;},'rect_left_inv_arrow'),oa=L(async(ah,ai)=>{const cw=bD,{shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai),!0x0),al=ak['width']+ai['padding'],am=ak['height']+ai[cw(0x142)],an=[{'x':-0x2*am/0x6,'y':0x0},{'x':al-am/0x6,'y':0x0},{'x':al+0x2*am/0x6,'y':-am},{'x':am/0x6,'y':-am}],ao=V(aj,al,am,an);return ao['attr']('style',ai['style']),N(ai,ao),ai['intersect']=function(ap){const cx=cw;return B[cx(0x11b)](ai,an,ap);},aj;},'lean_right'),ha=L(async(ah,ai)=>{const cy=bD,{shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai,void 0x0),!0x0),al=ak['width']+ai['padding'],am=ak[cy(0x107)]+ai['padding'],an=[{'x':0x2*am/0x6,'y':0x0},{'x':al+am/0x6,'y':0x0},{'x':al-0x2*am/0x6,'y':-am},{'x':-am/0x6,'y':-am}],ao=V(aj,al,am,an);return ao['attr']('style',ai['style']),N(ai,ao),ai['intersect']=function(ap){return B['polygon'](ai,an,ap);},aj;},'lean_left'),ga=L(async(ah,ai)=>{const {shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai,void 0x0),!0x0),al=ak['width']+ai['padding'],am=ak['height']+ai['padding'],an=[{'x':-0x2*am/0x6,'y':0x0},{'x':al+0x2*am/0x6,'y':0x0},{'x':al-am/0x6,'y':-am},{'x':am/0x6,'y':-am}],ao=V(aj,al,am,an);return ao['attr']('style',ai['style']),N(ai,ao),ai['intersect']=function(ap){return B['polygon'](ai,an,ap);},aj;},bD(0x15c)),da=L(async(ah,ai)=>{const cz=bD,{shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai,void 0x0),!0x0),al=ak[cz(0xd6)]+ai['padding'],am=ak['height']+ai[cz(0x142)],an=[{'x':am/0x6,'y':0x0},{'x':al-am/0x6,'y':0x0},{'x':al+0x2*am/0x6,'y':-am},{'x':-0x2*am/0x6,'y':-am}],ao=V(aj,al,am,an);return ao['attr']('style',ai['style']),N(ai,ao),ai['intersect']=function(ap){return B['polygon'](ai,an,ap);},aj;},'inv_trapezoid'),ua=L(async(ah,ai)=>{const cA=bD,{shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai,void 0x0),!0x0),al=ak[cA(0xd6)]+ai[cA(0x142)],am=ak['height']+ai['padding'],an=[{'x':0x0,'y':0x0},{'x':al+am/0x2,'y':0x0},{'x':al,'y':-am/0x2},{'x':al+am/0x2,'y':-am},{'x':0x0,'y':-am}],ao=V(aj,al,am,an);return ao['attr']('style',ai['style']),N(ai,ao),ai[cA(0x12a)]=function(ap){const cB=cA;return B[cB(0x11b)](ai,an,ap);},aj;},'rect_right_inv_arrow'),pa=L(async(ah,ai)=>{const cC=bD,{shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai,void 0x0),!0x0),al=ak['width']+ai['padding'],am=al/0x2,an=am/(2.5+al/0x32),ao=ak['height']+an+ai['padding'],ap='M\x200,'+an+'\x20a\x20'+am+','+an+'\x200,0,0\x20'+al+cC(0x134)+am+','+an+'\x200,0,0\x20'+-al+cC(0xd5)+ao+'\x20a\x20'+am+','+an+cC(0x102)+al+'\x200\x20l\x200,'+-ao,aq=aj['attr']('label-offset-y',an)['insert']('path',':first-child')['attr']('style',ai['style'])[cC(0x120)]('d',ap)['attr']('transform','translate('+-al/0x2+','+-(ao/0x2+an)+')');return N(ai,aq),ai[cC(0x12a)]=function(as){const cD=cC,au=B[cD(0x18d)](ai,as),av=au['x']-ai['x'];if(am!=0x0&&(Math['abs'](av)<ai[cD(0xd6)]/0x2||Math[cD(0xdb)](av)==ai['width']/0x2&&Math['abs'](au['y']-ai['y'])>ai[cD(0x107)]/0x2-an)){let aw=an*an*(0x1-av*av/(am*am));aw!=0x0&&(aw=Math['sqrt'](aw)),aw=an-aw,as['y']-ai['y']>0x0&&(aw=-aw),au['y']+=aw;}return au;},aj;},'cylinder'),fa=L(async(ah,ai)=>{const cE=bD,{shapeSvg:aj,bbox:ak,halfPadding:al}=await z(ah,ai,cE(0x180)+ai[cE(0x1cc)]+'\x20'+ai['class'],!0x0),am=aj[cE(0x152)](cE(0x18d),':first-child'),an=ai['positioned']?ai['width']:ak['width']+ai['padding'],ao=ai['positioned']?ai['height']:ak['height']+ai['padding'],ap=ai[cE(0x132)]?-an/0x2:-ak['width']/0x2-al,aq=ai['positioned']?-ao/0x2:-ak['height']/0x2-al;if(am['attr']('class','basic\x20label-container')['attr']('style',ai[cE(0x11c)])['attr']('rx',ai['rx'])['attr']('ry',ai['ry'])['attr']('x',ap)['attr']('y',aq)['attr']('width',an)['attr'](cE(0x107),ao),ai['props']){const as=new Set(Object['keys'](ai['props']));ai[cE(0x145)]['borders']&&(ht(am,ai['props'][cE(0x162)],an,ao),as['delete']('borders')),as['forEach'](au=>{Q['warn']('Unknown\x20node\x20property\x20'+au);});}return N(ai,am),ai['intersect']=function(au){return B['rect'](ai,au);},aj;},'rect'),xa=L(async(ah,ai)=>{const cF=bD,{shapeSvg:aj,bbox:ak,halfPadding:al}=await z(ah,ai,'node\x20'+ai['classes'],!0x0),am=aj[cF(0x152)]('rect',cF(0x1b5)),an=ai['positioned']?ai['width']:ak['width']+ai['padding'],ao=ai[cF(0x132)]?ai['height']:ak[cF(0x107)]+ai['padding'],ap=ai[cF(0x132)]?-an/0x2:-ak['width']/0x2-al,aq=ai[cF(0x132)]?-ao/0x2:-ak['height']/0x2-al;if(am['attr']('class','basic\x20cluster\x20composite\x20label-container')['attr']('style',ai[cF(0x11c)])['attr']('rx',ai['rx'])['attr']('ry',ai['ry'])['attr']('x',ap)['attr']('y',aq)['attr']('width',an)['attr']('height',ao),ai['props']){const as=new Set(Object['keys'](ai['props']));ai['props']['borders']&&(ht(am,ai['props']['borders'],an,ao),as['delete']('borders')),as['forEach'](au=>{const cG=cF;Q[cG(0xff)]('Unknown\x20node\x20property\x20'+au);});}return N(ai,am),ai['intersect']=function(au){return B['rect'](ai,au);},aj;},bD(0xfa)),ya=L(async(ah,ai)=>{const cH=bD,{shapeSvg:aj}=await z(ah,ai,'label',!0x0);Q[cH(0x1bd)]('Classes\x20=\x20',ai['class']);const ak=aj['insert'](cH(0x18d),':first-child'),al=0x0,am=0x0;if(ak['attr']('width',al)[cH(0x120)]('height',am),aj['attr']('class',cH(0x1b3)),ai['props']){const an=new Set(Object[cH(0x15a)](ai['props']));ai['props']['borders']&&(ht(ak,ai['props'][cH(0x162)],al,am),an['delete']('borders')),an['forEach'](ao=>{const cI=cH;Q['warn'](cI(0x11f)+ao);});}return N(ai,ak),ai[cH(0x12a)]=function(ao){return B['rect'](ai,ao);},aj;},bD(0xe9));function ht(ah,ai,aj,ak){const cK=bD,al=[],am=L(ao=>{al['push'](ao,0x0);},'addBorder'),an=L(ao=>{const cJ=b;al[cJ(0x1b9)](0x0,ao);},'skipBorder');ai['includes']('t')?(Q['debug']('add\x20top\x20border'),am(aj)):an(aj),ai['includes']('r')?(Q['debug']('add\x20right\x20border'),am(ak)):an(ak),ai['includes']('b')?(Q['debug']('add\x20bottom\x20border'),am(aj)):an(aj),ai['includes']('l')?(Q['debug']('add\x20left\x20border'),am(ak)):an(ak),ah[cK(0x120)]('stroke-dasharray',al['join']('\x20'));}L(ht,'applyNodePropertyBorders');var ba=L(async(ah,ai)=>{const cL=bD;let aj;ai['classes']?aj='node\x20'+ai['classes']:aj='node\x20default';const ak=ah[cL(0x152)]('g')['attr']('class',aj)['attr']('id',ai['domId']||ai['id']),al=ak['insert'](cL(0x18d),':first-child'),am=ak['insert'](cL(0x19b)),an=ak['insert']('g')[cL(0x120)]('class','label'),ao=ai['labelText']['flat']?ai['labelText']['flat']():ai['labelText'];let ap='';typeof ao=='object'?ap=ao[0x0]:ap=ao,Q['info']('Label\x20text\x20abc79',ap,ao,typeof ao=='object');const aq=await U(an,ap,ai['labelStyle'],!0x0,!0x0);let as={'width':0x0,'height':0x0};if(R(O())){const ay=aq['children'][0x0],az=ab(aq);as=ay[cL(0x1de)](),az[cL(0x120)]('width',as['width']),az['attr'](cL(0x107),as[cL(0x107)]);}Q['info']('Text\x202',ao);const au=ao[cL(0x19c)](0x1,ao['length']);let av=aq[cL(0xdf)]();const aw=await U(an,au[cL(0x139)]?au['join']('<br/>'):au,ai['labelStyle'],!0x0,!0x0);if(R(O())){const aA=aw['children'][0x0],aB=ab(aw);as=aA['getBoundingClientRect'](),aB['attr']('width',as['width']),aB[cL(0x120)]('height',as[cL(0x107)]);}const ax=ai['padding']/0x2;return ab(aw)['attr']('transform','translate(\x20'+(as[cL(0xd6)]>av[cL(0xd6)]?0x0:(av[cL(0xd6)]-as['width'])/0x2)+',\x20'+(av['height']+ax+0x5)+')'),ab(aq)['attr'](cL(0xe3),'translate(\x20'+(as['width']<av[cL(0xd6)]?0x0:-(av['width']-as['width'])/0x2)+',\x200)'),as=an[cL(0xf7)]()['getBBox'](),an['attr']('transform','translate('+-as['width']/0x2+',\x20'+(-as['height']/0x2-ax+0x3)+')'),al['attr']('class','outer\x20title-state')[cL(0x120)]('x',-as[cL(0xd6)]/0x2-ax)['attr']('y',-as['height']/0x2-ax)['attr']('width',as[cL(0xd6)]+ai['padding'])['attr'](cL(0x107),as['height']+ai[cL(0x142)]),am['attr'](cL(0x1c0),cL(0x138))['attr']('x1',-as['width']/0x2-ax)['attr']('x2',as[cL(0xd6)]/0x2+ax)[cL(0x120)]('y1',-as['height']/0x2-ax+av['height']+ax)['attr']('y2',-as['height']/0x2-ax+av['height']+ax),N(ai,al),ai['intersect']=function(aC){return B['rect'](ai,aC);},ak;},'rectWithTitle'),wa=L(async(ah,ai)=>{const cM=bD,{shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai,void 0x0),!0x0),al=ak['height']+ai['padding'],am=ak['width']+al/0x4+ai['padding'],an=aj['insert']('rect',':first-child')['attr']('style',ai['style'])['attr']('rx',al/0x2)['attr']('ry',al/0x2)['attr']('x',-am/0x2)[cM(0x120)]('y',-al/0x2)['attr']('width',am)['attr']('height',al);return N(ai,an),ai['intersect']=function(ao){const cN=cM;return B[cN(0x18d)](ai,ao);},aj;},'stadium'),ma=L(async(ah,ai)=>{const cO=bD,{shapeSvg:aj,bbox:ak,halfPadding:al}=await z(ah,ai,H(ai,void 0x0),!0x0),am=aj['insert'](cO(0x1ae),cO(0x1b5));return am['attr']('style',ai['style'])['attr']('rx',ai['rx'])['attr']('ry',ai['ry'])['attr']('r',ak['width']/0x2+al)['attr'](cO(0xd6),ak['width']+ai['padding'])['attr']('height',ak['height']+ai[cO(0x142)]),Q['info']('Circle\x20main'),N(ai,am),ai[cO(0x12a)]=function(an){return Q['info']('Circle\x20intersect',ai,ak['width']/0x2+al,an),B['circle'](ai,ak['width']/0x2+al,an);},aj;},'circle'),Sa=L(async(ah,ai)=>{const cP=bD,{shapeSvg:aj,bbox:ak,halfPadding:al}=await z(ah,ai,H(ai,void 0x0),!0x0),am=0x5,an=aj['insert']('g',':first-child'),ao=an['insert']('circle'),ap=an['insert'](cP(0x1ae));return an['attr'](cP(0x1c0),ai['class']),ao['attr']('style',ai['style'])['attr']('rx',ai['rx'])['attr']('ry',ai['ry'])['attr']('r',ak['width']/0x2+al+am)['attr']('width',ak['width']+ai['padding']+am*0x2)['attr']('height',ak[cP(0x107)]+ai['padding']+am*0x2),ap[cP(0x120)]('style',ai['style'])['attr']('rx',ai['rx'])['attr']('ry',ai['ry'])['attr']('r',ak['width']/0x2+al)['attr']('width',ak['width']+ai[cP(0x142)])['attr']('height',ak[cP(0x107)]+ai['padding']),Q['info']('DoubleCircle\x20main'),N(ai,ao),ai['intersect']=function(aq){const cQ=cP;return Q['info'](cQ(0x1da),ai,ak['width']/0x2+al+am,aq),B['circle'](ai,ak[cQ(0xd6)]/0x2+al+am,aq);},aj;},bD(0x168)),La=L(async(ah,ai)=>{const cR=bD,{shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai,void 0x0),!0x0),al=ak[cR(0xd6)]+ai['padding'],am=ak[cR(0x107)]+ai['padding'],an=[{'x':0x0,'y':0x0},{'x':al,'y':0x0},{'x':al,'y':-am},{'x':0x0,'y':-am},{'x':0x0,'y':0x0},{'x':-0x8,'y':0x0},{'x':al+0x8,'y':0x0},{'x':al+0x8,'y':-am},{'x':-0x8,'y':-am},{'x':-0x8,'y':0x0}],ao=V(aj,al,am,an);return ao['attr']('style',ai['style']),N(ai,ao),ai['intersect']=function(ap){return B['polygon'](ai,an,ap);},aj;},'subroutine'),ka=L((ah,ai)=>{const cS=bD,aj=ah['insert']('g')['attr']('class',cS(0x1d7))['attr']('id',ai['domId']||ai['id']),ak=aj['insert']('circle',':first-child');return ak['attr']('class','state-start')[cS(0x120)]('r',0x7)[cS(0x120)]('width',0xe)['attr'](cS(0x107),0xe),N(ai,ak),ai['intersect']=function(al){return B['circle'](ai,0x7,al);},aj;},'start'),Kt=L((ah,ai,aj)=>{const cT=bD,ak=ah['insert']('g')['attr']('class',cT(0x1d7))['attr']('id',ai['domId']||ai['id']);let al=0x46,am=0xa;aj==='LR'&&(al=0xa,am=0x46);const an=ak['append']('rect')['attr']('x',-0x1*al/0x2)['attr']('y',-0x1*am/0x2)['attr']('width',al)['attr'](cT(0x107),am)['attr'](cT(0x1c0),'fork-join');return N(ai,an),ai[cT(0x107)]=ai[cT(0x107)]+ai['padding']/0x2,ai['width']=ai[cT(0xd6)]+ai['padding']/0x2,ai['intersect']=function(ao){const cU=cT;return B[cU(0x18d)](ai,ao);},ak;},'forkJoin'),va=L((ah,ai)=>{const cV=bD,aj=ah['insert']('g')[cV(0x120)]('class',cV(0x1d7))['attr']('id',ai['domId']||ai['id']),ak=aj['insert']('circle',':first-child'),al=aj['insert']('circle',':first-child');return al[cV(0x120)](cV(0x1c0),'state-start')[cV(0x120)]('r',0x7)['attr']('width',0xe)['attr']('height',0xe),ak['attr']('class','state-end')['attr']('r',0x5)['attr']('width',0xa)['attr'](cV(0x107),0xa),N(ai,al),ai['intersect']=function(am){return B['circle'](ai,0x7,am);},aj;},'end'),Ea=L(async(ah,ai)=>{const cW=bD,aj=ai['padding']/0x2,ak=0x4,al=0x8;let am;ai['classes']?am='node\x20'+ai['classes']:am='node\x20default';const an=ah['insert']('g')['attr']('class',am)[cW(0x120)]('id',ai['domId']||ai['id']),ao=an['insert']('rect',':first-child'),ap=an['insert']('line'),aq=an['insert']('line');let as=0x0,au=ak;const av=an['insert']('g')['attr']('class','label');let aw=0x0;const ax=ai['classData']['annotations']?.[0x0],ay=ai['classData']['annotations'][0x0]?'«'+ai['classData'][cW(0x1a7)][0x0]+'»':'',az=await U(av,ay,ai['labelStyle'],!0x0,!0x0);let aA=az['getBBox']();if(R(O())){const aH=az['children'][0x0],aI=ab(az);aA=aH['getBoundingClientRect'](),aI[cW(0x120)]('width',aA['width']),aI['attr'](cW(0x107),aA['height']);}ai['classData']['annotations'][0x0]&&(au+=aA[cW(0x107)]+ak,as+=aA['width']);let aB=ai[cW(0x130)][cW(0x1d1)];ai['classData']['type']!==void 0x0&&ai['classData'][cW(0x103)]!==''&&(R(O())?aB+='<'+ai['classData'][cW(0x103)]+cW(0x13a):aB+='<'+ai['classData']['type']+'>');const aC=await U(av,aB,ai['labelStyle'],!0x0,!0x0);ab(aC)['attr']('class',cW(0x148));let aD=aC['getBBox']();if(R(O())){const aJ=aC['children'][0x0],aK=ab(aC);aD=aJ['getBoundingClientRect'](),aK[cW(0x120)]('width',aD['width']),aK['attr']('height',aD['height']);}au+=aD['height']+ak,aD['width']>as&&(as=aD[cW(0xd6)]);const aE=[];ai['classData']['members'][cW(0x1ba)](async aL=>{const cX=cW,aM=aL['getDisplayDetails']();let aN=aM[cX(0x1c3)];R(O())&&(aN=aN['replace'](/</g,'<')[cX(0x19f)](/>/g,'>'));const aO=await U(av,aN,aM['cssStyle']?aM['cssStyle']:ai['labelStyle'],!0x0,!0x0);let aP=aO['getBBox']();if(R(O())){const aQ=aO['children'][0x0],aR=ab(aO);aP=aQ[cX(0x1de)](),aR[cX(0x120)]('width',aP['width']),aR['attr']('height',aP[cX(0x107)]);}aP['width']>as&&(as=aP['width']),au+=aP['height']+ak,aE['push'](aO);}),au+=al;const aF=[];if(ai[cW(0x130)][cW(0x184)]['forEach'](async aL=>{const cY=cW,aM=aL['getDisplayDetails']();let aN=aM['displayText'];R(O())&&(aN=aN['replace'](/</g,'<')['replace'](/>/g,'>'));const aO=await U(av,aN,aM['cssStyle']?aM['cssStyle']:ai['labelStyle'],!0x0,!0x0);let aP=aO[cY(0xdf)]();if(R(O())){const aQ=aO['children'][0x0],aR=ab(aO);aP=aQ['getBoundingClientRect'](),aR['attr']('width',aP['width']),aR[cY(0x120)](cY(0x107),aP['height']);}aP['width']>as&&(as=aP['width']),au+=aP['height']+ak,aF['push'](aO);}),au+=al,ax){let aL=(as-aA['width'])/0x2;ab(az)['attr']('transform','translate(\x20'+(-0x1*as/0x2+aL)+',\x20'+-0x1*au/0x2+')'),aw=aA['height']+ak;}let aG=(as-aD[cW(0xd6)])/0x2;return ab(aC)[cW(0x120)]('transform','translate(\x20'+(-0x1*as/0x2+aG)+',\x20'+(-0x1*au/0x2+aw)+')'),aw+=aD['height']+ak,ap[cW(0x120)]('class','divider')['attr']('x1',-as/0x2-aj)[cW(0x120)]('x2',as/0x2+aj)['attr']('y1',-au/0x2-aj+al+aw)[cW(0x120)]('y2',-au/0x2-aj+al+aw),aw+=al,aE['forEach'](aM=>{const cZ=cW;ab(aM)[cZ(0x120)]('transform','translate(\x20'+-as/0x2+',\x20'+(-0x1*au/0x2+aw+al/0x2)+')');const aN=aM?.[cZ(0xdf)]();aw+=(aN?.[cZ(0x107)]??0x0)+ak;}),aw+=al,aq[cW(0x120)]('class','divider')['attr']('x1',-as/0x2-aj)['attr']('x2',as/0x2+aj)['attr']('y1',-au/0x2-aj+al+aw)['attr']('y2',-au/0x2-aj+al+aw),aw+=al,aF['forEach'](aM=>{ab(aM)['attr']('transform','translate(\x20'+-as/0x2+',\x20'+(-0x1*au/0x2+aw)+')');const aN=aM?.['getBBox']();aw+=(aN?.['height']??0x0)+ak;}),ao['attr']('style',ai[cW(0x11c)])['attr'](cW(0x1c0),'outer\x20title-state')['attr']('x',-as/0x2-aj)['attr']('y',-(au/0x2)-aj)['attr']('width',as+ai[cW(0x142)])['attr'](cW(0x107),au+ai['padding']),N(ai,ao),ai[cW(0x12a)]=function(aM){return B['rect'](ai,aM);},an;},bD(0xf1)),Ut={'rhombus':Ht,'composite':xa,'question':Ht,'rect':fa,'labelRect':ya,'rectWithTitle':ba,'choice':ia,'circle':ma,'doublecircle':Sa,'stadium':wa,'hexagon':na,'block_arrow':ca,'rect_left_inv_arrow':la,'lean_right':oa,'lean_left':ha,'trapezoid':ga,'inv_trapezoid':da,'rect_right_inv_arrow':ua,'cylinder':pa,'start':ka,'end':va,'note':sa,'subroutine':La,'fork':Kt,'join':Kt,'class_box':Ea},ct={},ye=L(async(ah,ai,aj)=>{const d0=bD;let ak,al;if(ai['link']){let am;O()['securityLevel']===d0(0x1d9)?am='_top':ai[d0(0x118)]&&(am=ai['linkTarget']||'_blank'),ak=ah['insert'](d0(0x16a))['attr']('xlink:href',ai['link'])['attr']('target',am),al=await Ut[ai['shape']](ak,ai,aj);}else al=await Ut[ai['shape']](ah,ai,aj),ak=al;return ai['tooltip']&&al['attr'](d0(0x10f),ai['tooltip']),ai['class']&&al[d0(0x120)](d0(0x1c0),'node\x20default\x20'+ai['class']),ct[ai['id']]=ak,ai['haveCallback']&&ct[ai['id']]['attr']('class',ct[ai['id']]['attr']('class')+'\x20clickable'),ak;},'insertNode'),_a=L(ah=>{const d1=bD,ai=ct[ah['id']];Q['trace'](d1(0x198),ah['diff'],ah,'translate('+(ah['x']-ah['width']/0x2-0x5)+',\x20'+ah[d1(0xd6)]/0x2+')');const aj=0x8,ak=ah[d1(0x11a)]||0x0;return ah['clusterNode']?ai['attr'](d1(0xe3),d1(0xf2)+(ah['x']+ak-ah['width']/0x2)+',\x20'+(ah['y']-ah['height']/0x2-aj)+')'):ai['attr'](d1(0xe3),d1(0xf2)+ah['x']+',\x20'+ah['y']+')'),ak;},'positionNode');function It(ah,ai,aj=!0x1){const d2=bD,ak=ah;let al='default';(ak?.['classes']?.['length']||0x0)>0x0&&(al=(ak?.[d2(0x1cc)]??[])['join']('\x20')),al=al+'\x20flowchart-label';let am=0x0,an='',ao;switch(ak['type']){case'round':am=0x5,an=d2(0x18d);break;case'composite':am=0x0,an=d2(0xfa),ao=0x0;break;case'square':an=d2(0x18d);break;case d2(0x163):an=d2(0x10a);break;case d2(0xdd):an='hexagon';break;case d2(0xe6):an='block_arrow';break;case'odd':an='rect_left_inv_arrow';break;case'lean_right':an='lean_right';break;case d2(0x127):an='lean_left';break;case'trapezoid':an='trapezoid';break;case'inv_trapezoid':an='inv_trapezoid';break;case'rect_left_inv_arrow':an=d2(0x141);break;case'circle':an='circle';break;case d2(0xcf):an='ellipse';break;case'stadium':an=d2(0x13e);break;case d2(0x121):an='subroutine';break;case'cylinder':an='cylinder';break;case d2(0x173):an='rect';break;case'doublecircle':an='doublecircle';break;default:an='rect';}const ap=S(ak?.['styles']??[]),aq=ak['label'],as=ak['size']??{'width':0x0,'height':0x0,'x':0x0,'y':0x0},au=ai['getDiagramId']();return{'labelStyle':ap['labelStyle'],'shape':an,'labelText':aq,'rx':am,'ry':am,'class':al,'style':ap['style'],'id':ak['id'],'domId':au?au+'-'+ak['id']:ak['id'],'directions':ak[d2(0x137)],'width':as['width'],'height':as['height'],'x':as['x'],'y':as['y'],'positioned':aj,'intersect':void 0x0,'type':ak['type'],'padding':ao??T()?.['block']?.['padding']??0x0,'widthInColumns':ak['widthInColumns']??0x1};}L(It,bD(0x18e));async function be(ah,ai,aj){const d3=bD,ak=It(ai,aj,!0x1);if(ak['type']==='group')return;const al=T(),am=await ye(ah,ak,{'config':al}),an=am[d3(0xf7)]()['getBBox'](),ao=aj['getBlock'](ak['id']);ao[d3(0x14c)]={'width':an['width'],'height':an['height'],'x':0x0,'y':0x0,'node':am},aj['setBlock'](ao),am['remove']();}L(be,'calculateBlockSize');async function we(ah,ai,aj){const d4=bD,ak=It(ai,aj,!0x0);if(aj['getBlock'](ak['id'])['type']!==d4(0xf8)){const al=T();await ye(ah,ak,{'config':al}),ai['intersect']=ak?.[d4(0x12a)],_a(ak);}}L(we,'insertBlockPositioned');async function gt(ah,ai,aj,ak){for(const al of ai)await ak(ah,al,aj),al['children']&&await gt(ah,al['children'],aj,ak);}L(gt,'performOperations');async function me(ah,ai,aj){await gt(ah,ai,aj,be);}L(me,'calculateBlockSizes');async function Se(ah,ai,aj){await gt(ah,ai,aj,we);}L(Se,'insertBlocks');async function Le(ah,ai,aj,ak,al){const d5=bD,am=new af({'multigraph':!0x0,'compound':!0x0});am['setGraph']({'rankdir':'TB','nodesep':0xa,'ranksep':0xa,'marginx':0x8,'marginy':0x8});for(const an of aj)an[d5(0x14c)]&&am['setNode'](an['id'],{'width':an['size']['width'],'height':an['size']['height'],'intersect':an['intersect']});for(const ao of ai)if(ao[d5(0x149)]&&ao['end']){const ap=ak['getBlock'](ao['start']),aq=ak[d5(0xce)](ao[d5(0x153)]);if(ap?.[d5(0x14c)]&&aq?.['size']){const as=ap[d5(0x14c)],au=aq['size'],av=[{'x':as['x'],'y':as['y']},{'x':as['x']+(au['x']-as['x'])/0x2,'y':as['y']+(au['y']-as['y'])/0x2},{'x':au['x'],'y':au['y']}],aw=al?al+'-'+ao['id']:ao['id'],ax=ao['thickness']==='thick'?'edge-thickness-thick':d5(0x199),ay=ao['pattern']==='dotted'?'edge-pattern-dotted':'edge-pattern-solid',az=ax+'\x20'+ay+'\x20flowchart-link\x20LS-a1\x20LE-b1';Gr(ah,{'v':ao['start'],'w':ao['end'],'name':aw},{...ao,'id':aw,'arrowTypeEnd':ao['arrowTypeEnd'],'arrowTypeStart':ao['arrowTypeStart'],'points':av,'classes':az},void 0x0,d5(0x140),am,al),ao['label']&&(await Ur(ah,{...ao,'label':ao['label'],'labelStyle':'stroke:\x20#333;\x20stroke-width:\x201.5px;fill:none;','arrowTypeEnd':ao['arrowTypeEnd'],'arrowTypeStart':ao['arrowTypeStart'],'points':av,'classes':az}),Xr({...ao,'x':av[0x1]['x'],'y':av[0x1]['y']},{'originalPath':av}));}}}L(Le,'insertEdges');var Ta=L(function(ah,ai){return ai['db']['getClasses']();},'getClasses'),Da=L(async function(ah,ai,aj,ak){const d6=bD,{securityLevel:al,block:am}=T(),an=ak['db'];an['setDiagramId'](ai);let ao;al==='sandbox'&&(ao=ab('#i'+ai));const ap=al==='sandbox'?ab(ao['nodes']()[0x0]['contentDocument'][d6(0xfd)]):ab('body'),aq=al==='sandbox'?ap['select']('[id=\x22'+ai+'\x22]'):ab('[id=\x22'+ai+'\x22]');Fr(aq,[d6(0x13d),'circle','cross'],ak[d6(0x103)],ai);const as=an['getBlocks'](),au=an[d6(0x1b7)](),av=an['getEdges'](),aw=aq['insert']('g')[d6(0x120)](d6(0x1c0),'block');await me(aw,as,an);const ax=he(an);if(await Se(aw,as,an),await Le(aw,av,au,an,ai),ax){const ay=ax,az=Math['max'](0x1,Math['round'](0.125*(ay['width']/ay['height']))),aA=ay['height']+az+0xa,aB=ay['width']+0xa,{useMaxWidth:aC}=am;a3(aq,aA,aB,!!aC),Q['debug']('Here\x20Bounds',ax,ay),aq['attr']('viewBox',ay['x']-0x5+'\x20'+(ay['y']-0x5)+'\x20'+(ay['width']+0xa)+'\x20'+(ay['height']+0xa));}},bD(0x13c)),Ba={'draw':Da,'getClasses':Ta},Ma={'parser':sr,'db':Er,'renderer':Ba,'styles':Tr};export{Ma as diagram};
|
|
1
|
+
const bB=b;(function(ah,ai){const b7=b,aj=ah();while(!![]){try{const ak=-parseInt(b7(0x137))/0x1*(parseInt(b7(0x18a))/0x2)+parseInt(b7(0x15a))/0x3*(-parseInt(b7(0x93))/0x4)+parseInt(b7(0xe3))/0x5*(-parseInt(b7(0x95))/0x6)+-parseInt(b7(0x1ad))/0x7*(-parseInt(b7(0xbd))/0x8)+parseInt(b7(0x99))/0x9*(-parseInt(b7(0x8c))/0xa)+parseInt(b7(0x1a4))/0xb*(-parseInt(b7(0x12b))/0xc)+parseInt(b7(0x128))/0xd*(parseInt(b7(0x100))/0xe);if(ak===ai)break;else aj['push'](aj['shift']());}catch(al){aj['push'](aj['shift']());}}}(a,0xd73fd));import{g as c}from'./chunk-FMBD7UC4.js';import{a4 as e,a5 as f,a6 as g,a7 as h,a8 as i,a9 as j,aa as l,ab as m,ac as n,ad as o,ae as p,af as q,ag as r,ah as s,ai as t,aj as u,ak as v,al as w,am as y,an as E,ao as F,ap as G,aq as I,ar as J,as as K,_ as L,d as O,l as Q,at as R,au as S,H as T,av as W,aw as Y,ax as Z,u as a0,ay as a1,Q as a2,j as a3,v as a4,B as a5,e as a6,i as a7,az as a8,aA as a9}from'./index22.js';import{k as ab,l as ac,n as ad}from'./transform.js';import{G as af}from'./graph.js';import{c as ag}from'./channel.js';import'./_commonjsHelpers.js';import'./rough.esm.js';function Qe(ah){return Array['isArray'](ah);}function $e(ah){const b8=b;if(e(ah))return ah;const ai=f(ah);if(!tr(ah))return{};if(Qe(ah)){const ak=Array['from'](ah);return ah[b8(0x171)]>0x0&&typeof ah[0x0]=='string'&&Object['hasOwn'](ah,'index')&&(ak['index']=ah[b8(0xce)],ak['input']=ah['input']),ak;}if(g(ah)){const al=ah,am=al['constructor'];return new am(al[b8(0xc2)],al['byteOffset'],al['length']);}if(ai===h)return new ArrayBuffer(ah['byteLength']);if(ai===i){const an=ah,ao=an['buffer'],ap=an[b8(0xfa)],aq=an['byteLength'],as=new ArrayBuffer(aq),au=new Uint8Array(ao,ap,aq);return new Uint8Array(as)['set'](au),new DataView(as);}if(ai===j||ai===l||ai===m){const av=ah['constructor'],aw=new av(ah['valueOf']());return ai===m?rr(aw,ah):yt(aw,ah),aw;}if(ai===n)return new Date(Number(ah));if(ai===o){const ax=ah,ay=new RegExp(ax['source'],ax['flags']);return ay['lastIndex']=ax['lastIndex'],ay;}if(ai===p)return Object(Symbol['prototype']['valueOf']['call'](ah));if(ai===q){const az=ah,aA=new Map();return az[b8(0x9a)]((aB,aC)=>{const b9=b8;aA[b9(0x108)](aC,aB);}),aA;}if(ai===r){const aB=ah,aC=new Set();return aB['forEach'](aD=>{aC['add'](aD);}),aC;}if(ai===s){const aD=ah,aE={};return yt(aE,aD),aE['length']=aD['length'],aE[Symbol[b8(0x17d)]]=aD[Symbol['iterator']],aE;}const aj={};return ar(aj,ah),yt(aj,ah),er(aj,ah),aj;}function tr(ah){switch(f(ah)){case s:case K:case h:case i:case j:case n:case J:case I:case G:case F:case E:case q:case l:case y:case o:case r:case m:case p:case w:case v:case u:case t:return!0x0;default:return!0x1;}}function yt(ah,ai){for(const aj in ai)Object['hasOwn'](ai,aj)&&(ah[aj]=ai[aj]);}function er(ah,ai){const aj=Object['getOwnPropertySymbols'](ai);for(let ak=0x0;ak<aj['length'];ak++){const al=aj[ak];Object['prototype']['propertyIsEnumerable']['call'](ai,al)&&(ah[al]=ai[al]);}}function rr(ah,ai){const bb=b,aj=ai[bb(0x1aa)]()['length'];for(const ak in ai)Object['hasOwn'](ai,ak)&&(Number[bb(0x19a)](Number(ak))||Number(ak)>=aj)&&(ah[ak]=ai[ak]);}function ar(ah,ai){const bc=b,aj=Object['getPrototypeOf'](ai);aj!==null&&typeof ai[bc(0x141)]==bc(0x11e)&&Object[bc(0x9c)](ah,aj);}var mt=(function(){const bd=b;var ah=L(function(aC,aD,aE,aF){for(aE=aE||{},aF=aC['length'];aF--;aE[aC[aF]]=aD);return aE;},'o'),ai=[0x1,0xf],aj=[0x1,0x7],ak=[0x1,0xd],al=[0x1,0xe],am=[0x1,0x13],an=[0x1,0x10],ao=[0x1,0x11],ap=[0x1,0x12],aq=[0x8,0x1e],as=[0x8,0xa,0x15,0x1c,0x1d,0x1e,0x1f,0x27,0x2b,0x2e],au=[0x1,0x17],av=[0x1,0x18],aw=[0x8,0xa,0xf,0x10,0x15,0x1c,0x1d,0x1e,0x1f,0x27,0x2b,0x2e],ax=[0x8,0xa,0xf,0x10,0x15,0x1b,0x1c,0x1d,0x1e,0x1f,0x27,0x2b,0x2e],ay=[0x1,0x31],az={'trace':L(function(){},'trace'),'yy':{},'symbols_':{'error':0x2,'spaceLines':0x3,'SPACELINE':0x4,'NL':0x5,'separator':0x6,'SPACE':0x7,'EOF':0x8,'start':0x9,'BLOCK_DIAGRAM_KEY':0xa,'document':0xb,'stop':0xc,'statement':0xd,'link':0xe,'LINK':0xf,'START_LINK':0x10,'LINK_LABEL':0x11,'STR':0x12,'nodeStatement':0x13,'columnsStatement':0x14,'SPACE_BLOCK':0x15,'blockStatement':0x16,'classDefStatement':0x17,'cssClassStatement':0x18,'styleStatement':0x19,'node':0x1a,'SIZE':0x1b,'COLUMNS':0x1c,'id-block':0x1d,'end':0x1e,'NODE_ID':0x1f,'nodeShapeNLabel':0x20,'dirList':0x21,'DIR':0x22,'NODE_DSTART':0x23,'NODE_DEND':0x24,'BLOCK_ARROW_START':0x25,'BLOCK_ARROW_END':0x26,'classDef':0x27,'CLASSDEF_ID':0x28,'CLASSDEF_STYLEOPTS':0x29,'DEFAULT':0x2a,'class':0x2b,'CLASSENTITY_IDS':0x2c,'STYLECLASS':0x2d,'style':0x2e,'STYLE_ENTITY_IDS':0x2f,'STYLE_DEFINITION_DATA':0x30,'$accept':0x0,'$end':0x1},'terminals_':{0x2:'error',0x4:bd(0xaf),0x5:'NL',0x7:bd(0x199),0x8:'EOF',0xa:'BLOCK_DIAGRAM_KEY',0xf:'LINK',0x10:'START_LINK',0x11:'LINK_LABEL',0x12:'STR',0x15:'SPACE_BLOCK',0x1b:'SIZE',0x1c:'COLUMNS',0x1d:'id-block',0x1e:'end',0x1f:'NODE_ID',0x22:'DIR',0x23:'NODE_DSTART',0x24:bd(0x136),0x25:'BLOCK_ARROW_START',0x26:bd(0x15d),0x27:bd(0xb9),0x28:'CLASSDEF_ID',0x29:bd(0x175),0x2a:bd(0xbf),0x2b:'class',0x2c:'CLASSENTITY_IDS',0x2d:bd(0xc9),0x2e:bd(0xe2),0x2f:'STYLE_ENTITY_IDS',0x30:'STYLE_DEFINITION_DATA'},'productions_':[0x0,[0x3,0x1],[0x3,0x2],[0x3,0x2],[0x6,0x1],[0x6,0x1],[0x6,0x1],[0x9,0x3],[0xc,0x1],[0xc,0x1],[0xc,0x2],[0xc,0x2],[0xb,0x1],[0xb,0x2],[0xe,0x1],[0xe,0x4],[0xd,0x1],[0xd,0x1],[0xd,0x1],[0xd,0x1],[0xd,0x1],[0xd,0x1],[0xd,0x1],[0x13,0x3],[0x13,0x2],[0x13,0x1],[0x14,0x1],[0x16,0x4],[0x16,0x3],[0x1a,0x1],[0x1a,0x2],[0x21,0x1],[0x21,0x2],[0x20,0x3],[0x20,0x4],[0x17,0x3],[0x17,0x3],[0x18,0x3],[0x19,0x3]],'performAction':L(function(aC,aD,aE,aF,aG,aH,aI){const bf=bd;var aJ=aH['length']-0x1;switch(aG){case 0x4:aF['getLogger']()[bf(0x8b)](bf(0x18d));break;case 0x5:aF[bf(0x11c)]()['debug']('Rule:\x20separator\x20(Space)\x20');break;case 0x6:aF['getLogger']()['debug']('Rule:\x20separator\x20(EOF)\x20');break;case 0x7:aF['getLogger']()['debug']('Rule:\x20hierarchy:\x20',aH[aJ-0x1]),aF['setHierarchy'](aH[aJ-0x1]);break;case 0x8:aF['getLogger']()['debug']('Stop\x20NL\x20');break;case 0x9:aF['getLogger']()['debug']('Stop\x20EOF\x20');break;case 0xa:aF[bf(0x11c)]()['debug']('Stop\x20NL2\x20');break;case 0xb:aF['getLogger']()['debug']('Stop\x20EOF2\x20');break;case 0xc:aF['getLogger']()['debug'](bf(0x16d),aH[aJ]),typeof aH[aJ]['length']=='number'?this['$']=aH[aJ]:this['$']=[aH[aJ]];break;case 0xd:aF[bf(0x11c)]()['debug']('Rule:\x20statement\x20#2:\x20',aH[aJ-0x1]),this['$']=[aH[aJ-0x1]]['concat'](aH[aJ]);break;case 0xe:aF['getLogger']()['debug']('Rule:\x20link:\x20',aH[aJ],aC),this['$']={'edgeTypeStr':aH[aJ],'label':''};break;case 0xf:aF['getLogger']()['debug']('Rule:\x20LABEL\x20link:\x20',aH[aJ-0x3],aH[aJ-0x1],aH[aJ]),this['$']={'edgeTypeStr':aH[aJ],'label':aH[aJ-0x1]};break;case 0x12:const aK=parseInt(aH[aJ]),aL=aF['generateId']();this['$']={'id':aL,'type':'space','label':'','width':aK,'children':[]};break;case 0x17:aF['getLogger']()['debug']('Rule:\x20(nodeStatement\x20link\x20node)\x20',aH[aJ-0x2],aH[aJ-0x1],aH[aJ],'\x20typestr:\x20',aH[aJ-0x1]['edgeTypeStr']);const aM=aF['edgeStrToEdgeData'](aH[aJ-0x1]['edgeTypeStr']),aN=aF['edgeStrToEdgeStartData'](aH[aJ-0x1]['edgeTypeStr']),aO=aF['edgeStrToThickness'](aH[aJ-0x1][bf(0xb6)]),aP=aF['edgeStrToPattern'](aH[aJ-0x1]['edgeTypeStr']);this['$']=[{'id':aH[aJ-0x2]['id'],'label':aH[aJ-0x2]['label'],'type':aH[aJ-0x2]['type'],'directions':aH[aJ-0x2]['directions']},{'id':aH[aJ-0x2]['id']+'-'+aH[aJ]['id'],'start':aH[aJ-0x2]['id'],'end':aH[aJ]['id'],'label':aH[aJ-0x1][bf(0x111)],'type':'edge','thickness':aO,'pattern':aP,'directions':aH[aJ][bf(0xdb)],'arrowTypeEnd':aM,'arrowTypeStart':aN},{'id':aH[aJ]['id'],'label':aH[aJ]['label'],'type':aF['typeStr2Type'](aH[aJ]['typeStr']),'directions':aH[aJ]['directions']}];break;case 0x18:aF[bf(0x11c)]()['debug']('Rule:\x20nodeStatement\x20(abc88\x20node\x20size)\x20',aH[aJ-0x1],aH[aJ]),this['$']={'id':aH[aJ-0x1]['id'],'label':aH[aJ-0x1]['label'],'type':aF['typeStr2Type'](aH[aJ-0x1]['typeStr']),'directions':aH[aJ-0x1]['directions'],'widthInColumns':parseInt(aH[aJ],0xa)};break;case 0x19:aF['getLogger']()['debug']('Rule:\x20nodeStatement\x20(node)\x20',aH[aJ]),this['$']={'id':aH[aJ]['id'],'label':aH[aJ]['label'],'type':aF['typeStr2Type'](aH[aJ][bf(0xab)]),'directions':aH[aJ]['directions'],'widthInColumns':0x1};break;case 0x1a:aF['getLogger']()['debug']('APA123',this?this:'na'),aF[bf(0x11c)]()[bf(0x8b)]('COLUMNS:\x20',aH[aJ]),this['$']={'type':'column-setting','columns':aH[aJ]===bf(0xde)?-0x1:parseInt(aH[aJ])};break;case 0x1b:aF['getLogger']()['debug']('Rule:\x20id-block\x20statement\x20:\x20',aH[aJ-0x2],aH[aJ-0x1]),aF['generateId'](),this['$']={...aH[aJ-0x2],'type':'composite','children':aH[aJ-0x1]};break;case 0x1c:aF['getLogger']()['debug'](bf(0xb1),aH[aJ-0x2],aH[aJ-0x1],aH[aJ]);const aQ=aF['generateId']();this['$']={'id':aQ,'type':'composite','label':'','children':aH[aJ-0x1]};break;case 0x1d:aF['getLogger']()['debug']('Rule:\x20node\x20(NODE_ID\x20separator):\x20',aH[aJ]),this['$']={'id':aH[aJ]};break;case 0x1e:aF['getLogger']()['debug']('Rule:\x20node\x20(NODE_ID\x20nodeShapeNLabel\x20separator):\x20',aH[aJ-0x1],aH[aJ]),this['$']={'id':aH[aJ-0x1],'label':aH[aJ]['label'],'typeStr':aH[aJ]['typeStr'],'directions':aH[aJ]['directions']};break;case 0x1f:aF['getLogger']()[bf(0x8b)]('Rule:\x20dirList:\x20',aH[aJ]),this['$']=[aH[aJ]];break;case 0x20:aF['getLogger']()['debug']('Rule:\x20dirList:\x20',aH[aJ-0x1],aH[aJ]),this['$']=[aH[aJ-0x1]]['concat'](aH[aJ]);break;case 0x21:aF[bf(0x11c)]()[bf(0x8b)]('Rule:\x20nodeShapeNLabel:\x20',aH[aJ-0x2],aH[aJ-0x1],aH[aJ]),this['$']={'typeStr':aH[aJ-0x2]+aH[aJ],'label':aH[aJ-0x1]};break;case 0x22:aF[bf(0x11c)]()[bf(0x8b)]('Rule:\x20BLOCK_ARROW\x20nodeShapeNLabel:\x20',aH[aJ-0x3],aH[aJ-0x2],'\x20#3:',aH[aJ-0x1],aH[aJ]),this['$']={'typeStr':aH[aJ-0x3]+aH[aJ],'label':aH[aJ-0x2],'directions':aH[aJ-0x1]};break;case 0x23:case 0x24:this['$']={'type':'classDef','id':aH[aJ-0x1]['trim'](),'css':aH[aJ][bf(0x189)]()};break;case 0x25:this['$']={'type':'applyClass','id':aH[aJ-0x1][bf(0x189)](),'styleClass':aH[aJ]['trim']()};break;case 0x26:this['$']={'type':'applyStyles','id':aH[aJ-0x1]['trim'](),'stylesStr':aH[aJ][bf(0x189)]()};break;}},'anonymous'),'table':[{0x9:0x1,0xa:[0x1,0x2]},{0x1:[0x3]},{0xa:ai,0xb:0x3,0xd:0x4,0x13:0x5,0x14:0x6,0x15:aj,0x16:0x8,0x17:0x9,0x18:0xa,0x19:0xb,0x1a:0xc,0x1c:ak,0x1d:al,0x1f:am,0x27:an,0x2b:ao,0x2e:ap},{0x8:[0x1,0x14]},ah(aq,[0x2,0xc],{0xd:0x4,0x13:0x5,0x14:0x6,0x16:0x8,0x17:0x9,0x18:0xa,0x19:0xb,0x1a:0xc,0xb:0x15,0xa:ai,0x15:aj,0x1c:ak,0x1d:al,0x1f:am,0x27:an,0x2b:ao,0x2e:ap}),ah(as,[0x2,0x10],{0xe:0x16,0xf:au,0x10:av}),ah(as,[0x2,0x11]),ah(as,[0x2,0x12]),ah(as,[0x2,0x13]),ah(as,[0x2,0x14]),ah(as,[0x2,0x15]),ah(as,[0x2,0x16]),ah(aw,[0x2,0x19],{0x1b:[0x1,0x19]}),ah(as,[0x2,0x1a]),{0x13:0x1a,0x1a:0xc,0x1f:am},{0xa:ai,0xb:0x1b,0xd:0x4,0x13:0x5,0x14:0x6,0x15:aj,0x16:0x8,0x17:0x9,0x18:0xa,0x19:0xb,0x1a:0xc,0x1c:ak,0x1d:al,0x1f:am,0x27:an,0x2b:ao,0x2e:ap},{0x28:[0x1,0x1c],0x2a:[0x1,0x1d]},{0x2c:[0x1,0x1e]},{0x2f:[0x1,0x1f]},ah(ax,[0x2,0x1d],{0x20:0x20,0x23:[0x1,0x21],0x25:[0x1,0x22]}),{0x1:[0x2,0x7]},ah(aq,[0x2,0xd]),{0x1a:0x23,0x1f:am},{0x1f:[0x2,0xe]},{0x11:[0x1,0x24]},ah(aw,[0x2,0x18]),{0xa:ai,0xb:0x25,0xd:0x4,0xe:0x16,0xf:au,0x10:av,0x13:0x5,0x14:0x6,0x15:aj,0x16:0x8,0x17:0x9,0x18:0xa,0x19:0xb,0x1a:0xc,0x1c:ak,0x1d:al,0x1f:am,0x27:an,0x2b:ao,0x2e:ap},{0x1e:[0x1,0x26]},{0x29:[0x1,0x27]},{0x29:[0x1,0x28]},{0x2d:[0x1,0x29]},{0x30:[0x1,0x2a]},ah(ax,[0x2,0x1e]),{0x12:[0x1,0x2b]},{0x12:[0x1,0x2c]},ah(aw,[0x2,0x17]),{0x12:[0x1,0x2d]},{0x1e:[0x1,0x2e]},ah(as,[0x2,0x1c]),ah(as,[0x2,0x23]),ah(as,[0x2,0x24]),ah(as,[0x2,0x25]),ah(as,[0x2,0x26]),{0x24:[0x1,0x2f]},{0x21:0x30,0x22:ay},{0xf:[0x1,0x32]},ah(as,[0x2,0x1b]),ah(ax,[0x2,0x21]),{0x26:[0x1,0x33]},{0x21:0x34,0x22:ay,0x26:[0x2,0x1f]},{0x1f:[0x2,0xf]},ah(ax,[0x2,0x22]),{0x26:[0x2,0x20]}],'defaultActions':{0x14:[0x2,0x7],0x17:[0x2,0xe],0x32:[0x2,0xf],0x34:[0x2,0x20]},'parseError':L(function(aC,aD){if(aD['recoverable'])this['trace'](aC);else{var aE=new Error(aC);throw aE['hash']=aD,aE;}},'parseError'),'parse':L(function(aC){const bg=bd;var aD=this,aE=[0x0],aF=[],aG=[null],aH=[],aI=this['table'],aJ='',aK=0x0,aL=0x0,aM=0x2,aN=0x1,aO=aH['slice'][bg(0x191)](arguments,0x1),aP=Object['create'](this[bg(0xaa)]),aQ={'yy':{}};for(var aR in this['yy'])Object['prototype'][bg(0xfc)]['call'](this['yy'],aR)&&(aQ['yy'][aR]=this['yy'][aR]);aP['setInput'](aC,aQ['yy']),aQ['yy'][bg(0xaa)]=aP,aQ['yy']['parser']=this,typeof aP[bg(0x15f)]>'u'&&(aP['yylloc']={});var aS=aP['yylloc'];aH['push'](aS);var aT=aP[bg(0x179)]&&aP['options']['ranges'];typeof aQ['yy'][bg(0x149)]=='function'?this['parseError']=aQ['yy'][bg(0x149)]:this['parseError']=Object['getPrototypeOf'](this)[bg(0x149)];function aU(b6){aE['length']=aE['length']-0x2*b6,aG['length']=aG['length']-b6,aH['length']=aH['length']-b6;}L(aU,bg(0x15b));function aV(){var b6;return b6=aF['pop']()||aP['lex']()||aN,typeof b6!='number'&&(b6 instanceof Array&&(aF=b6,b6=aF['pop']()),b6=aD['symbols_'][b6]||b6),b6;}L(aV,'lex');for(var aW,aX,aY,aZ,b0={},b1,b2,b3,b4;;){if(aX=aE[aE['length']-0x1],this[bg(0x10a)][aX]?aY=this[bg(0x10a)][aX]:((aW===null||typeof aW>'u')&&(aW=aV()),aY=aI[aX]&&aI[aX][aW]),typeof aY>'u'||!aY['length']||!aY[0x0]){var b5='';b4=[];for(b1 in aI[aX])this['terminals_'][b1]&&b1>aM&&b4[bg(0x190)]('\x27'+this['terminals_'][b1]+'\x27');aP['showPosition']?b5=bg(0xa6)+(aK+0x1)+':\x0a'+aP[bg(0xa0)]()+'\x0aExpecting\x20'+b4[bg(0xc6)](',\x20')+',\x20got\x20\x27'+(this['terminals_'][aW]||aW)+'\x27':b5=bg(0xa6)+(aK+0x1)+':\x20Unexpected\x20'+(aW==aN?'end\x20of\x20input':'\x27'+(this['terminals_'][aW]||aW)+'\x27'),this['parseError'](b5,{'text':aP['match'],'token':this['terminals_'][aW]||aW,'line':aP['yylineno'],'loc':aS,'expected':b4});}if(aY[0x0]instanceof Array&&aY['length']>0x1)throw new Error('Parse\x20Error:\x20multiple\x20actions\x20possible\x20at\x20state:\x20'+aX+',\x20token:\x20'+aW);switch(aY[0x0]){case 0x1:aE['push'](aW),aG['push'](aP['yytext']),aH[bg(0x190)](aP['yylloc']),aE['push'](aY[0x1]),aW=null,aL=aP['yyleng'],aJ=aP['yytext'],aK=aP['yylineno'],aS=aP['yylloc'];break;case 0x2:if(b2=this['productions_'][aY[0x1]][0x1],b0['$']=aG[aG['length']-b2],b0['_$']={'first_line':aH[aH[bg(0x171)]-(b2||0x1)]['first_line'],'last_line':aH[aH['length']-0x1]['last_line'],'first_column':aH[aH['length']-(b2||0x1)]['first_column'],'last_column':aH[aH['length']-0x1]['last_column']},aT&&(b0['_$']['range']=[aH[aH[bg(0x171)]-(b2||0x1)]['range'][0x0],aH[aH['length']-0x1]['range'][0x1]]),aZ=this['performAction']['apply'](b0,[aJ,aL,aK,aQ['yy'],aY[0x1],aG,aH][bg(0xff)](aO)),typeof aZ<'u')return aZ;b2&&(aE=aE['slice'](0x0,-0x1*b2*0x2),aG=aG['slice'](0x0,-0x1*b2),aH=aH[bg(0x158)](0x0,-0x1*b2)),aE['push'](this[bg(0xad)][aY[0x1]][0x0]),aG['push'](b0['$']),aH['push'](b0['_$']),b3=aI[aE[aE[bg(0x171)]-0x2]][aE[aE[bg(0x171)]-0x1]],aE[bg(0x190)](b3);break;case 0x3:return!0x0;}}return!0x0;},'parse')},aA=(function(){const bj=bd;var aC={'EOF':0x1,'parseError':L(function(aD,aE){const bh=b;if(this['yy']['parser'])this['yy'][bh(0x147)]['parseError'](aD,aE);else throw new Error(aD);},'parseError'),'setInput':L(function(aD,aE){const bi=b;return this['yy']=aE||this['yy']||{},this['_input']=aD,this['_more']=this['_backtrack']=this['done']=!0x1,this[bi(0x1a7)]=this['yyleng']=0x0,this['yytext']=this['matched']=this['match']='',this[bi(0x9b)]=['INITIAL'],this['yylloc']={'first_line':0x1,'first_column':0x0,'last_line':0x1,'last_column':0x0},this[bi(0x179)]['ranges']&&(this[bi(0x15f)]['range']=[0x0,0x0]),this[bi(0xc5)]=0x0,this;},bj(0x1a5)),'input':L(function(){const bk=bj;var aD=this['_input'][0x0];this['yytext']+=aD,this[bk(0x1ab)]++,this['offset']++,this['match']+=aD,this['matched']+=aD;var aE=aD['match'](/(?:\r\n?|\n).*/g);return aE?(this['yylineno']++,this['yylloc'][bk(0x18f)]++):this['yylloc']['last_column']++,this['options']['ranges']&&this['yylloc'][bk(0x16a)][0x1]++,this['_input']=this['_input']['slice'](0x1),aD;},'input'),'unput':L(function(aD){const bl=bj;var aE=aD['length'],aF=aD['split'](/(?:\r\n?|\n)/g);this['_input']=aD+this['_input'],this['yytext']=this[bl(0xf0)]['substr'](0x0,this['yytext']['length']-aE),this['offset']-=aE;var aG=this['match']['split'](/(?:\r\n?|\n)/g);this['match']=this['match']['substr'](0x0,this['match']['length']-0x1),this['matched']=this['matched']['substr'](0x0,this['matched'][bl(0x171)]-0x1),aF['length']-0x1&&(this['yylineno']-=aF[bl(0x171)]-0x1);var aH=this['yylloc']['range'];return this['yylloc']={'first_line':this['yylloc']['first_line'],'last_line':this['yylineno']+0x1,'first_column':this[bl(0x15f)]['first_column'],'last_column':aF?(aF['length']===aG[bl(0x171)]?this['yylloc']['first_column']:0x0)+aG[aG['length']-aF['length']][bl(0x171)]-aF[0x0][bl(0x171)]:this[bl(0x15f)]['first_column']-aE},this[bl(0x179)]['ranges']&&(this[bl(0x15f)][bl(0x16a)]=[aH[0x0],aH[0x0]+this['yyleng']-aE]),this['yyleng']=this['yytext']['length'],this;},'unput'),'more':L(function(){return this['_more']=!0x0,this;},'more'),'reject':L(function(){if(this['options']['backtrack_lexer'])this['_backtrack']=!0x0;else return this['parseError']('Lexical\x20error\x20on\x20line\x20'+(this['yylineno']+0x1)+'.\x20You\x20can\x20only\x20invoke\x20reject()\x20in\x20the\x20lexer\x20when\x20the\x20lexer\x20is\x20of\x20the\x20backtracking\x20persuasion\x20(options.backtrack_lexer\x20=\x20true).\x0a'+this['showPosition'](),{'text':'','token':null,'line':this['yylineno']});return this;},'reject'),'less':L(function(aD){const bm=bj;this[bm(0x197)](this['match']['slice'](aD));},'less'),'pastInput':L(function(){const bn=bj;var aD=this['matched']['substr'](0x0,this[bn(0x13c)]['length']-this['match']['length']);return(aD['length']>0x14?'...':'')+aD['substr'](-0x14)[bn(0x11f)](/\n/g,'');},bj(0xe4)),'upcomingInput':L(function(){const bo=bj;var aD=this[bo(0x124)];return aD['length']<0x14&&(aD+=this['_input']['substr'](0x0,0x14-aD[bo(0x171)])),(aD['substr'](0x0,0x14)+(aD['length']>0x14?'...':''))['replace'](/\n/g,'');},'upcomingInput'),'showPosition':L(function(){const bp=bj;var aD=this['pastInput'](),aE=new Array(aD[bp(0x171)]+0x1)['join']('-');return aD+this['upcomingInput']()+'\x0a'+aE+'^';},'showPosition'),'test_match':L(function(aD,aE){const bq=bj;var aF,aG,aH;if(this['options']['backtrack_lexer']&&(aH={'yylineno':this['yylineno'],'yylloc':{'first_line':this[bq(0x15f)]['first_line'],'last_line':this[bq(0x18f)],'first_column':this['yylloc']['first_column'],'last_column':this[bq(0x15f)]['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'][bq(0x158)](0x0),'done':this['done']},this['options'][bq(0x187)]&&(aH['yylloc']['range']=this['yylloc']['range'][bq(0x158)](0x0))),aG=aD[0x0]['match'](/(?:\r\n?|\n).*/g),aG&&(this['yylineno']+=aG[bq(0x171)]),this['yylloc']={'first_line':this['yylloc']['last_line'],'last_line':this['yylineno']+0x1,'first_column':this['yylloc']['last_column'],'last_column':aG?aG[aG['length']-0x1][bq(0x171)]-aG[aG['length']-0x1]['match'](/\r?\n?/)[0x0]['length']:this['yylloc'][bq(0x152)]+aD[0x0]['length']},this['yytext']+=aD[0x0],this[bq(0x124)]+=aD[0x0],this[bq(0x1a0)]=aD,this['yyleng']=this['yytext']['length'],this['options']['ranges']&&(this['yylloc']['range']=[this['offset'],this[bq(0xc5)]+=this['yyleng']]),this['_more']=!0x1,this[bq(0x114)]=!0x1,this['_input']=this['_input'][bq(0x158)](aD[0x0][bq(0x171)]),this[bq(0x13c)]+=aD[0x0],aF=this['performAction']['call'](this,this['yy'],this,aE,this['conditionStack'][this['conditionStack']['length']-0x1]),this['done']&&this[bq(0x139)]&&(this['done']=!0x1),aF)return aF;if(this['_backtrack']){for(var aI in aH)this[aI]=aH[aI];return!0x1;}return!0x1;},bj(0x1a9)),'next':L(function(){const bs=bj;if(this['done'])return this[bs(0x14f)];this['_input']||(this[bs(0x15e)]=!0x0);var aD,aE,aF,aG;this['_more']||(this['yytext']='',this['match']='');for(var aH=this['_currentRules'](),aI=0x0;aI<aH['length'];aI++)if(aF=this['_input']['match'](this['rules'][aH[aI]]),aF&&(!aE||aF[0x0]['length']>aE[0x0][bs(0x171)])){if(aE=aF,aG=aI,this['options']['backtrack_lexer']){if(aD=this[bs(0x1a9)](aF,aH[aI]),aD!==!0x1)return aD;if(this['_backtrack']){aE=!0x1;continue;}else return!0x1;}else{if(!this['options']['flex'])break;}}return aE?(aD=this['test_match'](aE,aH[aG]),aD!==!0x1?aD:!0x1):this['_input']===''?this[bs(0x14f)]:this['parseError']('Lexical\x20error\x20on\x20line\x20'+(this['yylineno']+0x1)+bs(0xcd)+this['showPosition'](),{'text':'','token':null,'line':this[bs(0x1a7)]});},'next'),'lex':L(function(){const bu=bj;var aD=this[bu(0xeb)]();return aD||this['lex']();},'lex'),'begin':L(function(aD){this['conditionStack']['push'](aD);},'begin'),'popState':L(function(){const bv=bj;var aD=this['conditionStack']['length']-0x1;return aD>0x0?this[bv(0x9b)]['pop']():this['conditionStack'][0x0];},'popState'),'_currentRules':L(function(){const bw=bj;return this['conditionStack']['length']&&this[bw(0x9b)][this['conditionStack']['length']-0x1]?this['conditions'][this['conditionStack'][this['conditionStack']['length']-0x1]]['rules']:this['conditions'][bw(0x194)]['rules'];},'_currentRules'),'topState':L(function(aD){return aD=this['conditionStack']['length']-0x1-Math['abs'](aD||0x0),aD>=0x0?this['conditionStack'][aD]:'INITIAL';},'topState'),'pushState':L(function(aD){this['begin'](aD);},'pushState'),'stateStackSize':L(function(){const bx=bj;return this[bx(0x9b)]['length'];},'stateStackSize'),'options':{},'performAction':L(function(aD,aE,aF,aG){const by=bj;switch(aF){case 0x0:return aD['getLogger']()['debug']('Found\x20block-beta'),0xa;case 0x1:return aD['getLogger']()['debug']('Found\x20id-block'),0x1d;case 0x2:return aD['getLogger']()['debug']('Found\x20block'),0xa;case 0x3:aD['getLogger']()[by(0x8b)]('.',aE['yytext']);break;case 0x4:aD['getLogger']()['debug']('_',aE[by(0xf0)]);break;case 0x5:return 0x5;case 0x6:return aE['yytext']=-0x1,0x1c;case 0x7:return aE['yytext']=aE['yytext']['replace'](/columns\s+/,''),aD[by(0x11c)]()['debug']('COLUMNS\x20(LEX)',aE[by(0xf0)]),0x1c;case 0x8:this['pushState']('md_string');break;case 0x9:return'MD_STR';case 0xa:this['popState']();break;case 0xb:this[by(0x131)](by(0x165));break;case 0xc:aD['getLogger']()['debug'](by(0x9f),aE['yytext']),this[by(0x13f)]();break;case 0xd:return aD['getLogger']()['debug']('LEX:\x20STR\x20end:',aE['yytext']),'STR';case 0xe:return aE['yytext']=aE['yytext']['replace'](/space\:/,''),aD['getLogger']()['debug'](by(0x177),aE[by(0xf0)]),0x15;case 0xf:return aE['yytext']='1',aD['getLogger']()[by(0x8b)]('COLUMNS\x20(LEX)',aE[by(0xf0)]),0x15;case 0x10:return 0x2a;case 0x11:return by(0x109);case 0x12:return by(0xa9);case 0x13:return this['pushState']('CLASSDEF'),0x27;case 0x14:return this['popState'](),this['pushState']('CLASSDEFID'),'DEFAULT_CLASSDEF_ID';case 0x15:return this[by(0x13f)](),this['pushState']('CLASSDEFID'),0x28;case 0x16:return this['popState'](),0x29;case 0x17:return this['pushState']('CLASS'),0x2b;case 0x18:return this['popState'](),this['pushState']('CLASS_STYLE'),0x2c;case 0x19:return this['popState'](),0x2d;case 0x1a:return this['pushState'](by(0x13e)),0x2e;case 0x1b:return this['popState'](),this['pushState']('STYLE_DEFINITION'),0x2f;case 0x1c:return this['popState'](),0x30;case 0x1d:return this[by(0x131)]('acc_title'),by(0xec);case 0x1e:return this['popState'](),'acc_title_value';case 0x1f:return this[by(0x131)]('acc_descr'),'acc_descr';case 0x20:return this['popState'](),'acc_descr_value';case 0x21:this['pushState']('acc_descr_multiline');break;case 0x22:this['popState']();break;case 0x23:return'acc_descr_multiline_value';case 0x24:return 0x1e;case 0x25:return this['popState'](),aD[by(0x11c)]()[by(0x8b)]('Lex:\x20(('),by(0x136);case 0x26:return this['popState'](),aD['getLogger']()['debug'](by(0x140)),'NODE_DEND';case 0x27:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20))'),by(0x136);case 0x28:return this['popState'](),aD['getLogger']()[by(0x8b)]('Lex:\x20(('),'NODE_DEND';case 0x29:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20(('),by(0x136);case 0x2a:return this['popState'](),aD[by(0x11c)]()['debug']('Lex:\x20(-'),'NODE_DEND';case 0x2b:return this['popState'](),aD['getLogger']()[by(0x8b)]('Lex:\x20-)'),'NODE_DEND';case 0x2c:return this['popState'](),aD['getLogger']()[by(0x8b)]('Lex:\x20(('),'NODE_DEND';case 0x2d:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20]]'),'NODE_DEND';case 0x2e:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20('),'NODE_DEND';case 0x2f:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20])'),'NODE_DEND';case 0x30:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20/]'),'NODE_DEND';case 0x31:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20/]'),'NODE_DEND';case 0x32:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20)]'),by(0x136);case 0x33:return this['popState'](),aD['getLogger']()['debug']('Lex:\x20)'),'NODE_DEND';case 0x34:return this[by(0x13f)](),aD['getLogger']()['debug']('Lex:\x20]>'),by(0x136);case 0x35:return this['popState'](),aD['getLogger']()['debug'](by(0x1ae)),'NODE_DEND';case 0x36:return aD[by(0x11c)]()[by(0x8b)]('Lexa:\x20-)'),this['pushState']('NODE'),0x23;case 0x37:return aD['getLogger']()['debug']('Lexa:\x20(-'),this['pushState'](by(0x181)),0x23;case 0x38:return aD['getLogger']()['debug']('Lexa:\x20))'),this['pushState']('NODE'),0x23;case 0x39:return aD[by(0x11c)]()['debug']('Lexa:\x20)'),this[by(0x131)]('NODE'),0x23;case 0x3a:return aD['getLogger']()[by(0x8b)]('Lex:\x20((('),this['pushState']('NODE'),0x23;case 0x3b:return aD['getLogger']()['debug'](by(0xd0)),this['pushState'](by(0x181)),0x23;case 0x3c:return aD['getLogger']()['debug']('Lexa:\x20)'),this['pushState']('NODE'),0x23;case 0x3d:return aD['getLogger']()['debug']('Lexa:\x20)'),this['pushState']('NODE'),0x23;case 0x3e:return aD[by(0x11c)]()['debug']('Lexc:\x20>'),this['pushState']('NODE'),0x23;case 0x3f:return aD['getLogger']()['debug']('Lexa:\x20(['),this['pushState']('NODE'),0x23;case 0x40:return aD['getLogger']()[by(0x8b)](by(0xd0)),this['pushState']('NODE'),0x23;case 0x41:return this['pushState']('NODE'),0x23;case 0x42:return this['pushState'](by(0x181)),0x23;case 0x43:return this['pushState']('NODE'),0x23;case 0x44:return this['pushState']('NODE'),0x23;case 0x45:return this['pushState']('NODE'),0x23;case 0x46:return this[by(0x131)]('NODE'),0x23;case 0x47:return this['pushState'](by(0x181)),0x23;case 0x48:return aD['getLogger']()['debug']('Lexa:\x20['),this['pushState']('NODE'),0x23;case 0x49:return this['pushState']('BLOCK_ARROW'),aD[by(0x11c)]()['debug']('LEX\x20ARR\x20START'),0x25;case 0x4a:return aD[by(0x11c)]()['debug']('Lex:\x20NODE_ID',aE[by(0xf0)]),0x1f;case 0x4b:return aD['getLogger']()['debug']('Lex:\x20EOF',aE['yytext']),0x8;case 0x4c:this['pushState']('md_string');break;case 0x4d:this['pushState']('md_string');break;case 0x4e:return'NODE_DESCR';case 0x4f:this['popState']();break;case 0x50:aD['getLogger']()['debug']('Lex:\x20Starting\x20string'),this['pushState']('string');break;case 0x51:aD['getLogger']()['debug']('LEX\x20ARR:\x20Starting\x20string'),this['pushState']('string');break;case 0x52:return aD[by(0x11c)]()['debug']('LEX:\x20NODE_DESCR:',aE['yytext']),'NODE_DESCR';case 0x53:aD['getLogger']()['debug'](by(0x103)),this['popState']();break;case 0x54:aD['getLogger']()['debug']('Lex:\x20=>BAE'),this[by(0x131)]('ARROW_DIR');break;case 0x55:return aE['yytext']=aE[by(0xf0)]['replace'](/^,\s*/,''),aD['getLogger']()[by(0x8b)](by(0x145),aE['yytext']),'DIR';case 0x56:return aE[by(0xf0)]=aE['yytext']['replace'](/^,\s*/,''),aD['getLogger']()['debug']('Lex\x20(left):',aE['yytext']),'DIR';case 0x57:return aE['yytext']=aE[by(0xf0)]['replace'](/^,\s*/,''),aD['getLogger']()[by(0x8b)]('Lex\x20(x):',aE['yytext']),'DIR';case 0x58:return aE['yytext']=aE[by(0xf0)]['replace'](/^,\s*/,''),aD['getLogger']()[by(0x8b)](by(0x19d),aE['yytext']),'DIR';case 0x59:return aE['yytext']=aE['yytext']['replace'](/^,\s*/,''),aD['getLogger']()['debug']('Lex\x20(up):',aE['yytext']),'DIR';case 0x5a:return aE[by(0xf0)]=aE[by(0xf0)][by(0x11f)](/^,\s*/,''),aD['getLogger']()['debug']('Lex\x20(down):',aE['yytext']),'DIR';case 0x5b:return aE['yytext']=']>',aD[by(0x11c)]()['debug'](by(0x195),aE['yytext']),this['popState'](),this['popState'](),'BLOCK_ARROW_END';case 0x5c:return aD['getLogger']()['debug']('Lex:\x20LINK','#'+aE['yytext']+'#'),0xf;case 0x5d:return aD['getLogger']()['debug']('Lex:\x20LINK',aE['yytext']),0xf;case 0x5e:return aD['getLogger']()[by(0x8b)]('Lex:\x20LINK',aE['yytext']),0xf;case 0x5f:return aD[by(0x11c)]()['debug']('Lex:\x20LINK',aE[by(0xf0)]),0xf;case 0x60:return aD['getLogger']()['debug']('Lex:\x20START_LINK',aE['yytext']),this['pushState'](by(0x161)),0x10;case 0x61:return aD['getLogger']()['debug']('Lex:\x20START_LINK',aE['yytext']),this['pushState'](by(0x161)),0x10;case 0x62:return aD['getLogger']()['debug']('Lex:\x20START_LINK',aE['yytext']),this['pushState']('LLABEL'),0x10;case 0x63:this['pushState'](by(0x134));break;case 0x64:return aD['getLogger']()[by(0x8b)]('Lex:\x20Starting\x20string'),this['pushState']('string'),'LINK_LABEL';case 0x65:return this['popState'](),aD[by(0x11c)]()['debug']('Lex:\x20LINK','#'+aE['yytext']+'#'),0xf;case 0x66:return this['popState'](),aD['getLogger']()[by(0x8b)]('Lex:\x20LINK',aE['yytext']),0xf;case 0x67:return this[by(0x13f)](),aD['getLogger']()['debug'](by(0x117),aE['yytext']),0xf;case 0x68:return aD['getLogger']()['debug'](by(0xfd),aE['yytext']),aE['yytext']=aE[by(0xf0)]['slice'](0x1),0x1b;}},bj(0x10f)),'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':[0x1c],'inclusive':!0x1},'STYLE_STMNT':{'rules':[0x1b],'inclusive':!0x1},'CLASSDEFID':{'rules':[0x16],'inclusive':!0x1},'CLASSDEF':{'rules':[0x14,0x15],'inclusive':!0x1},'CLASS_STYLE':{'rules':[0x19],'inclusive':!0x1},'CLASS':{'rules':[0x18],'inclusive':!0x1},'LLABEL':{'rules':[0x63,0x64,0x65,0x66,0x67],'inclusive':!0x1},'ARROW_DIR':{'rules':[0x55,0x56,0x57,0x58,0x59,0x5a,0x5b],'inclusive':!0x1},'BLOCK_ARROW':{'rules':[0x4c,0x51,0x54],'inclusive':!0x1},'NODE':{'rules':[0x25,0x26,0x27,0x28,0x29,0x2a,0x2b,0x2c,0x2d,0x2e,0x2f,0x30,0x31,0x32,0x33,0x34,0x35,0x4d,0x50],'inclusive':!0x1},'md_string':{'rules':[0x9,0xa,0x4e,0x4f],'inclusive':!0x1},'space':{'rules':[],'inclusive':!0x1},'string':{'rules':[0xc,0xd,0x52,0x53],'inclusive':!0x1},'acc_descr_multiline':{'rules':[0x22,0x23],'inclusive':!0x1},'acc_descr':{'rules':[0x20],'inclusive':!0x1},'acc_title':{'rules':[0x1e],'inclusive':!0x1},'INITIAL':{'rules':[0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7,0x8,0xb,0xe,0xf,0x10,0x11,0x12,0x13,0x17,0x1a,0x1d,0x1f,0x21,0x24,0x36,0x37,0x38,0x39,0x3a,0x3b,0x3c,0x3d,0x3e,0x3f,0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a,0x4b,0x5c,0x5d,0x5e,0x5f,0x60,0x61,0x62,0x68],'inclusive':!0x0}}};return aC;}());az['lexer']=aA;function aB(){this['yy']={};}return L(aB,'Parser'),aB['prototype']=az,az['Parser']=aB,new aB();}());mt['parser']=mt;var sr=mt,X=new Map(),_t=[],St=new Map(),zt='color',Mt='fill',ir='bgFill',re=',',nr=O(),lt=new Map(),Tt='',cr=L(ah=>a6['sanitizeText'](ah,nr),'sanitizeText'),lr=L(function(ah,ai=''){const bz=b;let aj=lt['get'](ah);aj||(aj={'id':ah,'styles':[],'textStyles':[]},lt['set'](ah,aj)),ai?.[bz(0x16e)](re)[bz(0x9a)](ak=>{const bA=bz,al=ak['replace'](/([^;]*);/,'$1')['trim']();if(RegExp(zt)['exec'](ak)){const am=al[bA(0x11f)](Mt,ir)[bA(0x11f)](zt,Mt);aj['textStyles']['push'](am);}aj[bA(0xa1)]['push'](al);});},'addStyleClass'),or=L(function(ah,ai=''){const aj=X['get'](ah);ai!=null&&(aj['styles']=ai['split'](re));},bB(0x8a)),hr=L(function(ah,ai){ah['split'](',')['forEach'](function(aj){const bC=b;let ak=X['get'](aj);if(ak===void 0x0){const al=aj['trim']();ak={'id':al,'type':'na','children':[]},X[bC(0x108)](al,ak);}ak[bC(0x10d)]||(ak['classes']=[]),ak['classes']['push'](ai);});},bB(0xf5)),ae=L((ah,ai)=>{const bD=bB,aj=ah['flat'](),ak=[],al=aj['find'](am=>am?.['type']==='column-setting')?.['columns']??-0x1;for(const am of aj){if(typeof al=='number'&&al>0x0&&am[bD(0xd6)]!=='column-setting'&&typeof am['widthInColumns']=='number'&&am[bD(0xe5)]>al&&Q['warn']('Block\x20'+am['id']+'\x20width\x20'+am['widthInColumns']+bD(0x183)+al),am['label']&&(am['label']=cr(am['label'])),am['type']==='classDef'){lr(am['id'],am['css']);continue;}if(am['type']===bD(0x1a6)){hr(am['id'],am?.['styleClass']??'');continue;}if(am[bD(0xd6)]===bD(0x156)){am?.['stylesStr']&&or(am['id'],am?.['stylesStr']);continue;}if(am['type']==='column-setting')ai['columns']=am['columns']??-0x1;else{if(am['type']==='edge'){const an=(St['get'](am['id'])??0x0)+0x1;St['set'](am['id'],an),am['id']=an+'-'+am['id'],_t['push'](am);}else{am[bD(0x111)]||(am[bD(0xd6)]==='composite'?am['label']='':am['label']=am['id']);const ao=X['get'](am['id']);if(ao===void 0x0?X['set'](am['id'],am):(am[bD(0xd6)]!=='na'&&(ao['type']=am['type']),am[bD(0x111)]!==am['id']&&(ao['label']=am[bD(0x111)])),am['children']&&ae(am[bD(0x180)],am),am['type']==='space'){const ap=am['width']??0x1;for(let aq=0x0;aq<ap;aq++){const as=$e(am);as['id']=as['id']+'-'+aq,X['set'](as['id'],as),ak['push'](as);}}else ao===void 0x0&&ak['push'](am);}}}ai[bD(0x180)]=ak;},'populateBlockDatabase'),Dt=[],rt={'id':'root','type':'composite','children':[],'columns':-0x1},gr=L(()=>{const bE=bB;Q['debug']('Clear\x20called'),a4(),rt={'id':'root','type':bE(0x1a2),'children':[],'columns':-0x1},X=new Map([[bE(0x19f),rt]]),Dt=[],lt=new Map(),_t=[],St=new Map(),Tt='';},bB(0x110));function se(ah){const bF=bB;switch(Q['debug']('typeStr2Type',ah),ah){case'[]':return'square';case'()':return Q['debug']('we\x20have\x20a\x20round'),bF(0x163);case'(())':return bF(0x162);case'>]':return'rect_left_inv_arrow';case'{}':return bF(0x120);case bF(0x119):return'hexagon';case'([])':return'stadium';case'[[]]':return bF(0x123);case'[()]':return'cylinder';case'((()))':return'doublecircle';case'[//]':return'lean_right';case bF(0xef):return bF(0xac);case'[/\x5c]':return'trapezoid';case bF(0xa3):return'inv_trapezoid';case bF(0xe8):return'block_arrow';default:return'na';}}L(se,'typeStr2Type');function ie(ah){const bG=bB;switch(Q['debug']('typeStr2Type',ah),ah){case'==':return bG(0x10c);default:return'normal';}}L(ie,'edgeTypeStr2Type');function ne(ah){const bH=bB;switch(ah[bH(0x189)]()['slice'](-0x1)){case'x':return'arrow_cross';case'o':return'arrow_circle';case'>':return'arrow_point';default:return'';}}L(ne,'edgeStrToEdgeData');function ce(ah){switch(ah['trim']()['charAt'](0x0)){case'x':return'arrow_cross';case'o':return'arrow_circle';case'<':return'arrow_point';default:return'arrow_open';}}L(ce,bB(0xb3));function le(ah){return ah['includes']('==')?'thick':'normal';}L(le,'edgeStrToThickness');function oe(ah){const bI=bB;return ah['includes']('.-')?'dotted':bI(0xd8);}L(oe,'edgeStrToPattern');var Pt=0x0,dr=L(()=>(Pt++,'id-'+Math['random']()['toString'](0x24)['substr'](0x2,0xc)+'-'+Pt),'generateId'),ur=L(ah=>{rt['children']=ah,ae(ah,rt),Dt=rt['children'];},bB(0xb5)),pr=L(ah=>{const bJ=bB,ai=X['get'](ah);return ai?ai[bJ(0xcb)]?ai['columns']:ai['children']?ai['children'][bJ(0x171)]:-0x1:-0x1;},bB(0x14d)),fr=L(()=>[...X[bB(0x14a)]()],'getBlocksFlat'),xr=L(()=>Dt||[],'getBlocks'),yr=L(()=>_t,'getEdges'),br=L(ah=>X['get'](ah),'getBlock'),wr=L(ah=>{X['set'](ah['id'],ah);},'setBlock'),mr=L(ah=>{Tt=ah;},'setDiagramId'),Sr=L(()=>Tt,'getDiagramId'),Lr=L(()=>Q,'getLogger'),kr=L(function(){return lt;},'getClasses'),vr={'getConfig':L(()=>T()['block'],'getConfig'),'typeStr2Type':se,'edgeTypeStr2Type':ie,'edgeStrToEdgeData':ne,'edgeStrToEdgeStartData':ce,'edgeStrToThickness':le,'edgeStrToPattern':oe,'getLogger':Lr,'getBlocksFlat':fr,'getBlocks':xr,'getEdges':yr,'setHierarchy':ur,'getBlock':br,'setBlock':wr,'getColumns':pr,'getClasses':kr,'clear':gr,'generateId':dr,'setDiagramId':mr,'getDiagramId':Sr},Er=vr,bt=L((ah,ai)=>{const aj=ag,ak=aj(ah,'r'),al=aj(ah,'g'),am=aj(ah,'b');return a5(ak,al,am,ai);},'fade'),_r=L(ah=>'.label\x20{\x0a\x20\x20\x20\x20font-family:\x20'+ah[bB(0xbb)]+bB(0x19b)+(ah['nodeTextColor']||ah['textColor'])+';\x0a\x20\x20}\x0a\x20\x20.cluster-label\x20text\x20{\x0a\x20\x20\x20\x20fill:\x20'+ah['titleColor']+bB(0x14e)+ah['titleColor']+';\x0a\x20\x20}\x0a\x0a\x0a\x0a\x20\x20.label\x20text,span,p\x20{\x0a\x20\x20\x20\x20fill:\x20'+(ah['nodeTextColor']||ah[bB(0xa5)])+bB(0x19b)+(ah[bB(0x1b0)]||ah['textColor'])+';\x0a\x20\x20}\x0a\x0a\x20\x20.node\x20rect,\x0a\x20\x20.node\x20circle,\x0a\x20\x20.node\x20ellipse,\x0a\x20\x20.node\x20polygon,\x0a\x20\x20.node\x20path\x20{\x0a\x20\x20\x20\x20fill:\x20'+ah['mainBkg']+';\x0a\x20\x20\x20\x20stroke:\x20'+ah['nodeBorder']+';\x0a\x20\x20\x20\x20stroke-width:\x201px;\x0a\x20\x20}\x0a\x20\x20.flowchart-label\x20text\x20{\x0a\x20\x20\x20\x20text-anchor:\x20middle;\x0a\x20\x20}\x0a\x20\x20//\x20.flowchart-label\x20.text-outer-tspan\x20{\x0a\x20\x20//\x20\x20\x20text-anchor:\x20middle;\x0a\x20\x20//\x20}\x0a\x20\x20//\x20.flowchart-label\x20.text-inner-tspan\x20{\x0a\x20\x20//\x20\x20\x20text-anchor:\x20start;\x0a\x20\x20//\x20}\x0a\x0a\x20\x20.node\x20.label\x20{\x0a\x20\x20\x20\x20text-align:\x20center;\x0a\x20\x20}\x0a\x20\x20.node.clickable\x20{\x0a\x20\x20\x20\x20cursor:\x20pointer;\x0a\x20\x20}\x0a\x0a\x20\x20.arrowheadPath\x20{\x0a\x20\x20\x20\x20fill:\x20'+ah['arrowheadColor']+';\x0a\x20\x20}\x0a\x0a\x20\x20.edgePath\x20.path\x20{\x0a\x20\x20\x20\x20stroke:\x20'+ah[bB(0x17a)]+bB(0xf8)+ah['lineColor']+';\x0a\x20\x20\x20\x20fill:\x20none;\x0a\x20\x20}\x0a\x0a\x20\x20.edgeLabel\x20{\x0a\x20\x20\x20\x20background-color:\x20'+ah[bB(0xd4)]+bB(0x184)+ah['edgeLabelBackground']+';\x0a\x20\x20\x20\x20\x20\x20fill:\x20'+ah[bB(0xd4)]+';\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20text-align:\x20center;\x0a\x20\x20}\x0a\x0a\x20\x20/*\x20For\x20html\x20labels\x20only\x20*/\x0a\x20\x20.labelBkg\x20{\x0a\x20\x20\x20\x20background-color:\x20'+ah['edgeLabelBackground']+';\x0a\x20\x20}\x0a\x0a\x20\x20.node\x20.cluster\x20{\x0a\x20\x20\x20\x20//\x20fill:\x20'+bt(ah[bB(0x96)],0.5)+';\x0a\x20\x20\x20\x20fill:\x20'+bt(ah['clusterBkg'],0.5)+';\x0a\x20\x20\x20\x20stroke:\x20'+bt(ah[bB(0x169)],0.2)+';\x0a\x20\x20\x20\x20box-shadow:\x20rgba(50,\x2050,\x2093,\x200.25)\x200px\x2013px\x2027px\x20-5px,\x20rgba(0,\x200,\x200,\x200.3)\x200px\x208px\x2016px\x20-8px;\x0a\x20\x20\x20\x20stroke-width:\x201px;\x0a\x20\x20}\x0a\x0a\x20\x20.cluster\x20text\x20{\x0a\x20\x20\x20\x20fill:\x20'+ah['titleColor']+bB(0x9e)+ah['titleColor']+';\x0a\x20\x20}\x0a\x20\x20/*\x20.cluster\x20div\x20{\x0a\x20\x20\x20\x20color:\x20'+ah['titleColor']+';\x0a\x20\x20}\x20*/\x0a\x0a\x20\x20div.mermaidTooltip\x20{\x0a\x20\x20\x20\x20position:\x20absolute;\x0a\x20\x20\x20\x20text-align:\x20center;\x0a\x20\x20\x20\x20max-width:\x20200px;\x0a\x20\x20\x20\x20padding:\x202px;\x0a\x20\x20\x20\x20font-family:\x20'+ah['fontFamily']+';\x0a\x20\x20\x20\x20font-size:\x2012px;\x0a\x20\x20\x20\x20background:\x20'+ah['tertiaryColor']+';\x0a\x20\x20\x20\x20border:\x201px\x20solid\x20'+ah['border2']+';\x0a\x20\x20\x20\x20border-radius:\x202px;\x0a\x20\x20\x20\x20pointer-events:\x20none;\x0a\x20\x20\x20\x20z-index:\x20100;\x0a\x20\x20}\x0a\x0a\x20\x20.flowchartTitleText\x20{\x0a\x20\x20\x20\x20text-anchor:\x20middle;\x0a\x20\x20\x20\x20font-size:\x2018px;\x0a\x20\x20\x20\x20fill:\x20'+ah['textColor']+';\x0a\x20\x20}\x0a\x20\x20'+c()+'\x0a','getStyles'),Tr=_r,Dr=L((ah,ai,aj,ak)=>{ai['forEach'](al=>{Pr[al](ah,aj,ak);});},'insertMarkers'),Br=L((ah,ai,aj)=>{const bK=bB;Q['trace']('Making\x20markers\x20for\x20',aj),ah[bK(0x8e)]('defs')['append']('marker')['attr']('id',aj+'_'+ai+'-extensionStart')['attr']('class','marker\x20extension\x20'+ai)['attr']('refX',0x12)[bK(0xdf)]('refY',0x7)['attr'](bK(0x1a1),0xbe)['attr'](bK(0xb2),0xf0)['attr']('orient','auto')['append'](bK(0xc0))[bK(0xdf)]('d','M\x201,7\x20L18,13\x20V\x201\x20Z'),ah['append'](bK(0x154))['append']('marker')['attr']('id',aj+'_'+ai+'-extensionEnd')['attr']('class','marker\x20extension\x20'+ai)['attr']('refX',0x1)[bK(0xdf)]('refY',0x7)['attr']('markerWidth',0x14)[bK(0xdf)](bK(0xb2),0x1c)['attr'](bK(0x18c),bK(0xde))['append'](bK(0xc0))['attr']('d','M\x201,1\x20V\x2013\x20L18,7\x20Z');},bB(0x13b)),Nr=L((ah,ai,aj)=>{const bL=bB;ah['append']('defs')[bL(0x8e)]('marker')[bL(0xdf)]('id',aj+'_'+ai+bL(0xc1))[bL(0xdf)]('class','marker\x20composition\x20'+ai)['attr'](bL(0x159),0x12)['attr']('refY',0x7)['attr'](bL(0x1a1),0xbe)['attr']('markerHeight',0xf0)['attr']('orient','auto')['append']('path')['attr']('d','M\x2018,7\x20L9,13\x20L1,7\x20L9,1\x20Z'),ah['append']('defs')['append']('marker')['attr']('id',aj+'_'+ai+'-compositionEnd')[bL(0xdf)]('class','marker\x20composition\x20'+ai)['attr']('refX',0x1)['attr']('refY',0x7)['attr']('markerWidth',0x14)[bL(0xdf)]('markerHeight',0x1c)['attr']('orient','auto')['append'](bL(0xc0))[bL(0xdf)]('d','M\x2018,7\x20L9,13\x20L1,7\x20L9,1\x20Z');},'composition'),Ir=L((ah,ai,aj)=>{const bM=bB;ah['append']('defs')[bM(0x8e)]('marker')['attr']('id',aj+'_'+ai+bM(0x11b))['attr']('class',bM(0x125)+ai)['attr'](bM(0x159),0x12)['attr']('refY',0x7)['attr']('markerWidth',0xbe)['attr']('markerHeight',0xf0)['attr'](bM(0x18c),'auto')[bM(0x8e)]('path')['attr']('d','M\x2018,7\x20L9,13\x20L1,7\x20L9,1\x20Z'),ah[bM(0x8e)](bM(0x154))[bM(0x8e)](bM(0x144))['attr']('id',aj+'_'+ai+bM(0x12c))['attr']('class',bM(0x125)+ai)['attr']('refX',0x1)['attr']('refY',0x7)['attr']('markerWidth',0x14)['attr']('markerHeight',0x1c)[bM(0xdf)]('orient','auto')['append']('path')['attr']('d',bM(0x14c));},bB(0xcf)),Cr=L((ah,ai,aj)=>{const bN=bB;ah['append'](bN(0x154))['append']('marker')[bN(0xdf)]('id',aj+'_'+ai+'-dependencyStart')[bN(0xdf)]('class','marker\x20dependency\x20'+ai)['attr']('refX',0x6)['attr']('refY',0x7)[bN(0xdf)]('markerWidth',0xbe)['attr']('markerHeight',0xf0)['attr']('orient',bN(0xde))['append']('path')['attr']('d','M\x205,7\x20L9,13\x20L1,7\x20L9,1\x20Z'),ah['append']('defs')[bN(0x8e)](bN(0x144))['attr']('id',aj+'_'+ai+'-dependencyEnd')['attr']('class','marker\x20dependency\x20'+ai)['attr']('refX',0xd)['attr']('refY',0x7)['attr'](bN(0x1a1),0x14)['attr'](bN(0xb2),0x1c)['attr']('orient','auto')[bN(0x8e)]('path')['attr']('d','M\x2018,7\x20L9,13\x20L14,7\x20L9,1\x20Z');},'dependency'),Or=L((ah,ai,aj)=>{const bO=bB;ah['append']('defs')['append']('marker')['attr']('id',aj+'_'+ai+'-lollipopStart')['attr']('class',bO(0xea)+ai)['attr']('refX',0xd)['attr']('refY',0x7)[bO(0xdf)](bO(0x1a1),0xbe)['attr']('markerHeight',0xf0)['attr']('orient','auto')['append']('circle')['attr']('stroke','black')[bO(0xdf)]('fill','transparent')[bO(0xdf)]('cx',0x7)['attr']('cy',0x7)['attr']('r',0x6),ah['append']('defs')['append']('marker')['attr']('id',aj+'_'+ai+bO(0x198))[bO(0xdf)]('class','marker\x20lollipop\x20'+ai)['attr']('refX',0x1)['attr'](bO(0xf1),0x7)['attr']('markerWidth',0xbe)['attr']('markerHeight',0xf0)['attr']('orient','auto')['append']('circle')['attr']('stroke','black')['attr']('fill','transparent')['attr']('cx',0x7)[bO(0xdf)]('cy',0x7)['attr']('r',0x6);},'lollipop'),Rr=L((ah,ai,aj)=>{const bP=bB;ah[bP(0x8e)]('marker')[bP(0xdf)]('id',aj+'_'+ai+'-pointEnd')['attr']('class','marker\x20'+ai)[bP(0xdf)]('viewBox','0\x200\x2010\x2010')[bP(0xdf)](bP(0x159),0x6)['attr']('refY',0x5)['attr']('markerUnits','userSpaceOnUse')['attr']('markerWidth',0xc)['attr']('markerHeight',0xc)['attr']('orient','auto')['append']('path')['attr']('d','M\x200\x200\x20L\x2010\x205\x20L\x200\x2010\x20z')[bP(0xdf)]('class',bP(0x16b))['style']('stroke-width',0x1)[bP(0xe2)]('stroke-dasharray','1,0'),ah['append']('marker')[bP(0xdf)]('id',aj+'_'+ai+bP(0xdd))['attr'](bP(0x178),'marker\x20'+ai)['attr'](bP(0x101),'0\x200\x2010\x2010')['attr']('refX',4.5)['attr']('refY',0x5)['attr']('markerUnits','userSpaceOnUse')['attr']('markerWidth',0xc)['attr']('markerHeight',0xc)['attr']('orient','auto')['append'](bP(0xc0))['attr']('d',bP(0x12e))['attr']('class','arrowMarkerPath')['style']('stroke-width',0x1)['style']('stroke-dasharray','1,0');},'point'),Ar=L((ah,ai,aj)=>{const bQ=bB;ah[bQ(0x8e)]('marker')['attr']('id',aj+'_'+ai+'-circleEnd')['attr'](bQ(0x178),'marker\x20'+ai)[bQ(0xdf)]('viewBox','0\x200\x2010\x2010')['attr']('refX',0xb)['attr']('refY',0x5)['attr']('markerUnits',bQ(0xbe))['attr']('markerWidth',0xb)['attr']('markerHeight',0xb)[bQ(0xdf)](bQ(0x18c),'auto')['append'](bQ(0x162))[bQ(0xdf)]('cx','5')[bQ(0xdf)]('cy','5')[bQ(0xdf)]('r','5')['attr']('class','arrowMarkerPath')[bQ(0xe2)]('stroke-width',0x1)['style']('stroke-dasharray','1,0'),ah['append']('marker')[bQ(0xdf)]('id',aj+'_'+ai+'-circleStart')['attr']('class','marker\x20'+ai)['attr']('viewBox','0\x200\x2010\x2010')['attr'](bQ(0x159),-0x1)['attr']('refY',0x5)['attr']('markerUnits','userSpaceOnUse')['attr'](bQ(0x1a1),0xb)['attr']('markerHeight',0xb)['attr'](bQ(0x18c),'auto')[bQ(0x8e)]('circle')['attr']('cx','5')[bQ(0xdf)]('cy','5')['attr']('r','5')[bQ(0xdf)](bQ(0x178),bQ(0x16b))['style']('stroke-width',0x1)[bQ(0xe2)]('stroke-dasharray','1,0');},'circle'),zr=L((ah,ai,aj)=>{const bR=bB;ah['append']('marker')['attr']('id',aj+'_'+ai+'-crossEnd')['attr']('class',bR(0x1a8)+ai)['attr']('viewBox',bR(0x151))[bR(0xdf)]('refX',0xc)['attr']('refY',5.2)[bR(0xdf)]('markerUnits','userSpaceOnUse')['attr']('markerWidth',0xb)['attr']('markerHeight',0xb)['attr']('orient','auto')['append'](bR(0xc0))['attr']('d',bR(0x17b))['attr']('class','arrowMarkerPath')['style']('stroke-width',0x2)[bR(0xe2)]('stroke-dasharray','1,0'),ah['append']('marker')['attr']('id',aj+'_'+ai+bR(0x10e))['attr']('class','marker\x20cross\x20'+ai)['attr']('viewBox','0\x200\x2011\x2011')[bR(0xdf)]('refX',-0x1)['attr']('refY',5.2)['attr']('markerUnits','userSpaceOnUse')[bR(0xdf)]('markerWidth',0xb)[bR(0xdf)]('markerHeight',0xb)['attr']('orient',bR(0xde))[bR(0x8e)]('path')['attr']('d','M\x201,1\x20l\x209,9\x20M\x2010,1\x20l\x20-9,9')['attr']('class',bR(0x16b))['style']('stroke-width',0x2)['style'](bR(0xba),'1,0');},'cross'),Mr=L((ah,ai,aj)=>{const bS=bB;ah['append']('defs')[bS(0x8e)]('marker')['attr']('id',aj+'_'+ai+'-barbEnd')['attr'](bS(0x159),0x13)[bS(0xdf)]('refY',0x7)['attr']('markerWidth',0x14)['attr']('markerHeight',0xe)[bS(0xdf)]('markerUnits','strokeWidth')['attr'](bS(0x18c),'auto')['append']('path')[bS(0xdf)]('d',bS(0xa7));},'barb'),Pr={'extension':Br,'composition':Nr,'aggregation':Ir,'dependency':Cr,'lollipop':Or,'point':Rr,'circle':Ar,'cross':zr,'barb':Mr},Fr=Dr,C=O()?.['block']?.['padding']??0x8;function Lt(ah,ai){if(ah===0x0||!Number['isInteger'](ah))throw new Error('Columns\x20must\x20be\x20an\x20integer\x20!==\x200.');if(ai<0x0||!Number['isInteger'](ai))throw new Error('Position\x20must\x20be\x20a\x20non-negative\x20integer.'+ai);if(ah<0x0)return{'px':ai,'py':0x0};if(ah===0x1)return{'px':0x0,'py':ai};const aj=ai%ah,ak=Math['floor'](ai/ah);return{'px':aj,'py':ak};}L(Lt,'calculateBlockPosition');var Wr=L(ah=>{const bT=bB;let ai=0x0,aj=0x0;for(const ak of ah['children']){const {width:al,height:am,x:an,y:ao}=ak[bT(0x15c)]??{'width':0x0,'height':0x0,'x':0x0,'y':0x0};if(Q['debug']('getMaxChildSize\x20abc95\x20child:',ak['id'],'width:',al,'height:',am,'x:',an,'y:',ao,ak['type']),ak['type']==='space')continue;const ap=al/(ak['widthInColumns']??0x1);ap>ai&&(ai=ap),am>aj&&(aj=am);}return{'width':ai,'height':aj};},'getMaxChildSize');function ot(ah,ai,aj=0x0,ak=0x0){const bU=bB;Q['debug'](bU(0xda),ah['id'],ah?.['size']?.['x'],'block\x20width\x20=',ah?.['size'],'siblingWidth',aj),ah?.['size']?.['width']||(ah['size']={'width':aj,'height':ak,'x':0x0,'y':0x0});let al=0x0,am=0x0;if(ah['children']?.[bU(0x171)]>0x0){for(const aw of ah[bU(0x180)])ot(aw,ai);const an=Wr(ah);al=an['width'],am=an['height'],Q['debug']('setBlockSizes\x20abc95\x20maxWidth\x20of',ah['id'],':s\x20children\x20is\x20',al,am);for(const ax of ah[bU(0x180)])ax['size']&&(Q[bU(0x8b)]('abc95\x20Setting\x20size\x20of\x20children\x20of\x20'+ah['id']+'\x20id='+ax['id']+'\x20'+al+'\x20'+am+'\x20'+JSON[bU(0x16c)](ax['size'])),ax[bU(0x15c)]['width']=al*(ax['widthInColumns']??0x1)+C*((ax['widthInColumns']??0x1)-0x1),ax['size']['height']=am,ax['size']['x']=0x0,ax['size']['y']=0x0,Q[bU(0x8b)]('abc95\x20updating\x20size\x20of\x20'+ah['id']+bU(0x17c)+ax['id']+'\x20maxWidth:'+al+'\x20maxHeight:'+am));for(const ay of ah['children'])ot(ay,ai,al,am);const ao=ah[bU(0xcb)]??-0x1;let ap=0x0;for(const az of ah['children'])ap+=az[bU(0xe5)]??0x1;let aq=ah['children']['length'];ao>0x0&&ao<ap&&(aq=ao);const as=Math['ceil'](ap/aq);let au=aq*(al+C)+C,av=as*(am+C)+C;if(au<aj){Q['debug']('Detected\x20to\x20small\x20sibling:\x20abc95\x20'+ah['id']+'\x20siblingWidth\x20'+aj+'\x20siblingHeight\x20'+ak+'\x20width\x20'+au),au=aj,av=ak;const aA=(aj-aq*C-C)/aq,aB=(ak-as*C-C)/as;Q['debug'](bU(0xfb),ah['id'],'childWidth',aA,'maxWidth',al),Q[bU(0x8b)]('Size\x20indata\x20abc88',ah['id'],'childHeight',aB,'maxHeight',am),Q['debug']('Size\x20indata\x20abc88\x20xSize',aq,'padding',C);for(const aC of ah['children'])aC[bU(0x15c)]&&(aC['size']['width']=aA,aC['size']['height']=aB,aC['size']['x']=0x0,aC['size']['y']=0x0);}if(Q['debug']('abc95\x20(finale\x20calc)\x20'+ah['id']+'\x20xSize\x20'+aq+bU(0x150)+as+'\x20columns\x20'+ao+ah['children'][bU(0x171)]+'\x20width='+Math['max'](au,ah['size']?.['width']||0x0)),au<(ah?.['size']?.[bU(0xc3)]||0x0)){au=ah?.['size']?.['width']||0x0;const aD=ao>0x0?Math['min'](ah[bU(0x180)]['length'],ao):ah['children']['length'];if(aD>0x0){const aE=(au-aD*C-C)/aD;Q['debug']('abc95\x20(growing\x20to\x20fit)\x20width',ah['id'],au,ah['size']?.['width'],aE);for(const aF of ah['children'])aF[bU(0x15c)]&&(aF['size']['width']=aE);}}ah['size']={'width':au,'height':av,'x':0x0,'y':0x0};}Q['debug']('setBlockSizes\x20abc94\x20(done)',ah['id'],ah?.['size']?.['x'],ah?.[bU(0x15c)]?.[bU(0xc3)],ah?.[bU(0x15c)]?.['y'],ah?.[bU(0x15c)]?.['height']);}L(ot,'setBlockSizes');function Bt(ah,ai){const bV=bB;Q['debug'](bV(0x10b)+ah['id']+'\x20x:\x20'+ah?.['size']?.['x']+'\x20y:\x20'+ah?.['size']?.['y']+'\x20width:\x20'+ah?.['size']?.[bV(0xc3)]);const aj=ah['columns']??-0x1;if(Q['debug']('layoutBlocks\x20columns\x20abc95',ah['id'],'=>',aj,ah),ah['children']&&ah['children']['length']>0x0){const ak=ah?.['children'][0x0]?.['size']?.[bV(0xc3)]??0x0,al=ah['children']['length']*ak+(ah['children']['length']-0x1)*C;Q[bV(0x8b)]('widthOfChildren\x2088',al,'posX');const am=new Map();{let as=0x0;for(const au of ah[bV(0x180)]){if(!au['size'])continue;const {py:av}=Lt(aj,as),aw=am[bV(0x17f)](av)??0x0;au['size']['height']>aw&&am['set'](av,au[bV(0x15c)]['height']);let ax=au?.['widthInColumns']??0x1;aj>0x0&&(ax=Math['min'](ax,aj-as%aj)),as+=ax;}}const an=new Map();{let ay=0x0;const az=[...am['keys']()]['sort']((aA,aB)=>aA-aB);for(const aA of az)an['set'](aA,ay),ay+=(am['get'](aA)??0x0)+C;}let ao=0x0;Q[bV(0x8b)]('abc91\x20block?.size?.x',ah['id'],ah?.['size']?.['x']);let ap=ah?.['size']?.['x']?ah?.[bV(0x15c)]?.['x']+(-ah?.['size']?.['width']/0x2||0x0):-C,aq=0x0;for(const aB of ah['children']){const aC=ah;if(!aB['size'])continue;const {width:aD,height:aE}=aB['size'],{px:aF,py:aG}=Lt(aj,ao);if(aG!=aq&&(aq=aG,ap=ah?.['size']?.['x']?ah?.[bV(0x15c)]?.['x']+(-ah?.['size']?.['width']/0x2||0x0):-C,Q['debug']('New\x20row\x20in\x20layout\x20for\x20block',ah['id'],'\x20and\x20child\x20',aB['id'],aq)),Q['debug']('abc89\x20layout\x20blocks\x20(child)\x20id:\x20'+aB['id']+'\x20Pos:\x20'+ao+'\x20(px,\x20py)\x20'+aF+','+aG+'\x20('+aC?.['size']?.['x']+','+aC?.['size']?.['y']+bV(0x118)+aC['id']+'\x20width:\x20'+aD+C),aC['size']){const aI=aD/0x2;aB['size']['x']=ap+C+aI,Q['debug']('abc91\x20layout\x20blocks\x20(calc)\x20px,\x20pyid:'+aB['id']+bV(0x92)+ap+'\x20new\x20startingPosX'+aB['size']['x']+'\x20'+aI+'\x20padding='+C+'\x20width='+aD+'\x20halfWidth='+aI+'\x20=>\x20x:'+aB['size']['x']+'\x20y:'+aB['size']['y']+'\x20'+aB['widthInColumns']+'\x20(width\x20*\x20(child?.w\x20||\x201))\x20/\x202\x20'+aD*(aB?.['widthInColumns']??0x1)/0x2),ap=aB['size']['x']+aI;const aJ=an['get'](aG)??0x0,aK=am[bV(0x17f)](aG)??aE;aB[bV(0x15c)]['y']=aC['size']['y']-aC[bV(0x15c)][bV(0xd5)]/0x2+aJ+aK/0x2+C,Q['debug']('abc88\x20layout\x20blocks\x20(calc)\x20px,\x20pyid:'+aB['id']+'startingPosX'+ap+C+aI+bV(0x113)+aB['size']['x']+'y:'+aB['size']['y']+aB['widthInColumns']+'(width\x20*\x20(child?.w\x20||\x201))\x20/\x202'+aD*(aB?.['widthInColumns']??0x1)/0x2);}aB['children']&&Bt(aB);let aH=aB?.['widthInColumns']??0x1;aj>0x0&&(aH=Math['min'](aH,aj-ao%aj)),ao+=aH,Q[bV(0x8b)](bV(0xf2),aB,ao);}}Q['debug']('layout\x20blocks\x20(<==layoutBlocks)\x20'+ah['id']+'\x20x:\x20'+ah?.['size']?.['x']+'\x20y:\x20'+ah?.['size']?.['y']+'\x20width:\x20'+ah?.['size']?.['width']);}L(Bt,'layoutBlocks');function b(c,d){c=c-0x8a;const e=a();let f=e[c];return f;}function Nt(ah,{minX:ai,minY:aj,maxX:ak,maxY:al}={'minX':0x0,'minY':0x0,'maxX':0x0,'maxY':0x0}){const bW=bB;if(ah['size']&&ah['id']!=='root'){const {x:am,y:an,width:ao,height:ap}=ah[bW(0x15c)];am-ao/0x2<ai&&(ai=am-ao/0x2),an-ap/0x2<aj&&(aj=an-ap/0x2),am+ao/0x2>ak&&(ak=am+ao/0x2),an+ap/0x2>al&&(al=an+ap/0x2);}if(ah['children']){for(const aq of ah['children'])({minX:ai,minY:aj,maxX:ak,maxY:al}=Nt(aq,{'minX':ai,'minY':aj,'maxX':ak,'maxY':al}));}return{'minX':ai,'minY':aj,'maxX':ak,'maxY':al};}L(Nt,'findBounds');function he(ah){const bX=bB,ai=ah['getBlock'](bX(0x19f));if(!ai)return;ot(ai,ah,0x0,0x0),Bt(ai),Q['debug']('getBlocks',JSON['stringify'](ai,null,0x2));const {minX:aj,minY:ak,maxX:al,maxY:am}=Nt(ai),an=am-ak,ao=al-aj;return{'x':aj,'y':ak,'width':ao,'height':an};}L(he,'layout');var Yr=L(async(ah,ai,aj,ak=!0x1,al=!0x1)=>{let am=ai||'';typeof am=='object'&&(am=am[0x0]);const an=O(),ao=R(an);return await W(ah,am,{'style':aj,'isTitle':ak,'useHtmlLabels':ao,'markdown':!0x1,'isNode':al,'width':Number['POSITIVE_INFINITY']},an);},'createLabel'),U=Yr,Hr=L((ah,ai,aj,ak,al)=>{ai['arrowTypeStart']&&Ft(ah,'start',ai['arrowTypeStart'],aj,ak,al),ai['arrowTypeEnd']&&Ft(ah,'end',ai['arrowTypeEnd'],aj,ak,al);},'addEdgeMarkers'),Kr={'arrow_cross':'cross','arrow_point':'point','arrow_barb':'barb','arrow_circle':'circle','aggregation':'aggregation','extension':'extension','composition':'composition','dependency':'dependency','lollipop':'lollipop'},Ft=L((ah,ai,aj,ak,al,am)=>{const bY=bB,an=Kr[aj];if(!an){Q['warn']('Unknown\x20arrow\x20type:\x20'+aj);return;}const ao=ai==='start'?'Start':bY(0x129);ah[bY(0xdf)](bY(0xc8)+ai,'url('+ak+'#'+al+'_'+am+'-'+an+ao+')');},bB(0x121)),kt={},M={},Ur=L(async(ah,ai)=>{const bZ=bB,aj=O(),ak=R(aj),al=ah[bZ(0x174)]('g')['attr']('class',bZ(0x135)),am=al['insert']('g')['attr']('class','label'),an=ai[bZ(0x107)]==='markdown',ao=await W(ah,ai['label'],{'style':ai['labelStyle'],'useHtmlLabels':ak,'addSvgBackground':an,'isNode':!0x1,'markdown':an,'width':an?void 0x0:Number['POSITIVE_INFINITY']},aj);am[bZ(0xc7)]()[bZ(0x122)](ao);let ap=ao[bZ(0xbc)](),aq=ap;if(ak){const au=ao[bZ(0x180)][0x0],av=ab(ao);ap=au['getBoundingClientRect'](),aq=ap,av['attr']('width',ap['width']),av[bZ(0xdf)]('height',ap[bZ(0xd5)]);}else{const aw=ab(ao)['select']('text')['node']();aw&&typeof aw['getBBox']=='function'&&(aq=aw['getBBox']());}am['attr']('transform',Y(aq,ak)),kt[ai['id']]=al,ai['width']=ap[bZ(0xc3)],ai['height']=ap['height'];let as;if(ai[bZ(0x8d)]){const ax=ah['insert']('g')[bZ(0xdf)]('class','edgeTerminals'),ay=ax['insert']('g')['attr']('class','inner'),az=await U(ay,ai['startLabelLeft'],ai['labelStyle']);as=az;let aA=az['getBBox']();if(ak){const aB=az['children'][0x0],aC=ab(az);aA=aB['getBoundingClientRect'](),aC['attr']('width',aA[bZ(0xc3)]),aC['attr']('height',aA['height']);}ay['attr']('transform',Y(aA,ak)),M[ai['id']]||(M[ai['id']]={}),M[ai['id']][bZ(0xe7)]=ax,et(as,ai[bZ(0x8d)]);}if(ai[bZ(0xca)]){const aD=ah[bZ(0x174)]('g')['attr']('class','edgeTerminals'),aE=aD['insert']('g')['attr']('class','inner'),aF=await U(aE,ai['startLabelRight'],ai[bZ(0xf7)]);as=aF;let aG=aF['getBBox']();if(ak){const aH=aF['children'][0x0],aI=ab(aF);aG=aH['getBoundingClientRect'](),aI[bZ(0xdf)]('width',aG['width']),aI['attr']('height',aG['height']);}aE[bZ(0xdf)]('transform',Y(aG,ak)),M[ai['id']]||(M[ai['id']]={}),M[ai['id']]['startRight']=aD,et(as,ai['startLabelRight']);}if(ai['endLabelLeft']){const aJ=ah['insert']('g')['attr']('class','edgeTerminals'),aK=aJ['insert']('g')['attr']('class','inner'),aL=await U(aJ,ai['endLabelLeft'],ai['labelStyle']);as=aL;let aM=aL['getBBox']();if(ak){const aN=aL[bZ(0x180)][0x0],aO=ab(aL);aM=aN[bZ(0x9d)](),aO['attr']('width',aM['width']),aO['attr']('height',aM['height']);}aK['attr']('transform',Y(aM,ak)),M[ai['id']]||(M[ai['id']]={}),M[ai['id']]['endLeft']=aJ,et(as,ai['endLabelLeft']);}if(ai['endLabelRight']){const aP=ah['insert']('g')['attr']('class','edgeTerminals'),aQ=aP['insert']('g')['attr']('class','inner'),aR=await U(aP,ai['endLabelRight'],ai['labelStyle']);as=aR;let aS=aR['getBBox']();if(ak){const aT=aR['children'][0x0],aU=ab(aR);aS=aT['getBoundingClientRect'](),aU['attr']('width',aS['width']),aU[bZ(0xdf)]('height',aS['height']);}aQ['attr']('transform',Y(aS,ak)),M[ai['id']]||(M[ai['id']]={}),M[ai['id']]['endRight']=aP,et(as,ai['endLabelRight']);}return ao;},'insertEdgeLabel');function et(ah,ai){const c0=bB;R(O())&&ah&&(ah['style'][c0(0xc3)]=ai['length']*0x9+'px',ah['style']['height']=c0(0x173));}L(et,'setTerminalWidth');var Xr=L((ah,ai)=>{const c1=bB;Q['debug']('Moving\x20label\x20abc88\x20',ah['id'],ah[c1(0x111)],kt[ah['id']],ai);let aj=ai['updatedPath']?ai['updatedPath']:ai[c1(0x18e)];const ak=O(),{subGraphTitleTotalMargin:al}=Z(ak);if(ah['label']){const am=kt[ah['id']];let an=ah['x'],ao=ah['y'];if(aj){const ap=a0['calcLabelPosition'](aj);Q[c1(0x8b)]('Moving\x20label\x20'+ah['label']+'\x20from\x20(',an,',',ao,c1(0x115),ap['x'],',',ap['y'],')\x20abc88'),ai['updatedPath']&&(an=ap['x'],ao=ap['y']);}am['attr']('transform','translate('+an+',\x20'+(ao+al/0x2)+')');}if(ah['startLabelLeft']){const aq=M[ah['id']][c1(0xe7)];let as=ah['x'],au=ah['y'];if(aj){const av=a0['calcTerminalLabelPosition'](ah['arrowTypeStart']?0xa:0x0,'start_left',aj);as=av['x'],au=av['y'];}aq[c1(0xdf)]('transform','translate('+as+',\x20'+au+')');}if(ah[c1(0xca)]){const aw=M[ah['id']]['startRight'];let ax=ah['x'],ay=ah['y'];if(aj){const az=a0[c1(0xe6)](ah['arrowTypeStart']?0xa:0x0,'start_right',aj);ax=az['x'],ay=az['y'];}aw['attr']('transform','translate('+ax+',\x20'+ay+')');}if(ah['endLabelLeft']){const aA=M[ah['id']]['endLeft'];let aB=ah['x'],aC=ah['y'];if(aj){const aD=a0['calcTerminalLabelPosition'](ah['arrowTypeEnd']?0xa:0x0,'end_left',aj);aB=aD['x'],aC=aD['y'];}aA[c1(0xdf)]('transform','translate('+aB+',\x20'+aC+')');}if(ah['endLabelRight']){const aE=M[ah['id']]['endRight'];let aF=ah['x'],aG=ah['y'];if(aj){const aH=a0[c1(0xe6)](ah['arrowTypeEnd']?0xa:0x0,'end_right',aj);aF=aH['x'],aG=aH['y'];}aE['attr']('transform','translate('+aF+',\x20'+aG+')');}},'positionEdgeLabel'),Vr=L((ah,ai)=>{const c2=bB,aj=ah['x'],ak=ah['y'],al=Math['abs'](ai['x']-aj),am=Math['abs'](ai['y']-ak),an=ah['width']/0x2,ao=ah[c2(0xd5)]/0x2;return al>=an||am>=ao;},'outsideNode'),jr=L((ah,ai,aj)=>{const c3=bB;Q['debug']('intersection\x20calc\x20abc89:\x0a\x20\x20outsidePoint:\x20'+JSON['stringify'](ai)+'\x0a\x20\x20insidePoint\x20:\x20'+JSON['stringify'](aj)+'\x0a\x20\x20node\x20\x20\x20\x20\x20\x20\x20\x20:\x20x:'+ah['x']+'\x20y:'+ah['y']+'\x20w:'+ah[c3(0xc3)]+'\x20h:'+ah['height']);const ak=ah['x'],al=ah['y'],am=Math['abs'](ak-aj['x']),an=ah['width']/0x2;let ao=aj['x']<ai['x']?an-am:an+am;const ap=ah['height']/0x2,aq=Math['abs'](ai['y']-aj['y']),as=Math['abs'](ai['x']-aj['x']);if(Math['abs'](al-ai['y'])*an>Math[c3(0x157)](ak-ai['x'])*ap){let au=aj['y']<ai['y']?ai['y']-ap-al:al-ap-ai['y'];ao=as*au/aq;const av={'x':aj['x']<ai['x']?aj['x']+ao:aj['x']-as+ao,'y':aj['y']<ai['y']?aj['y']+aq-au:aj['y']-aq+au};return ao===0x0&&(av['x']=ai['x'],av['y']=ai['y']),as===0x0&&(av['x']=ai['x']),aq===0x0&&(av['y']=ai['y']),Q['debug']('abc89\x20topp/bott\x20calc,\x20Q\x20'+aq+',\x20q\x20'+au+',\x20R\x20'+as+',\x20r\x20'+ao,av),av;}else{aj['x']<ai['x']?ao=ai['x']-an-ak:ao=ak-an-ai['x'];let aw=aq*ao/as,ax=aj['x']<ai['x']?aj['x']+as-ao:aj['x']-as+ao,ay=aj['y']<ai['y']?aj['y']+aw:aj['y']-aw;return Q[c3(0x8b)]('sides\x20calc\x20abc89,\x20Q\x20'+aq+c3(0x105)+aw+',\x20R\x20'+as+',\x20r\x20'+ao,{'_x':ax,'_y':ay}),ao===0x0&&(ax=ai['x'],ay=ai['y']),as===0x0&&(ax=ai['x']),aq===0x0&&(ay=ai['y']),{'x':ax,'y':ay};}},'intersection'),Wt=L((ah,ai)=>{const c4=bB;Q['debug'](c4(0xc4),ah,ai);let aj=[],ak=ah[0x0],al=!0x1;return ah['forEach'](am=>{const c5=c4;if(!Vr(ai,am)&&!al){const an=jr(ai,ak,am);let ao=!0x1;aj['forEach'](ap=>{ao=ao||ap['x']===an['x']&&ap['y']===an['y'];}),aj['some'](ap=>ap['x']===an['x']&&ap['y']===an['y'])||aj['push'](an),al=!0x0;}else ak=am,al||aj[c5(0x190)](am);}),aj;},'cutPathAtIntersect'),Gr=L(function(ah,ai,aj,ak,al,am,an){const c6=bB;let ao=aj['points'];Q['debug']('abc88\x20InsertEdge:\x20edge=',aj,'e=',ai);let ap=!0x1;const aq=am[c6(0xc7)](ai['v']);var as=am['node'](ai['w']);as?.[c6(0x132)]&&aq?.['intersect']&&(ao=ao['slice'](0x1,aj['points']['length']-0x1),ao['unshift'](aq['intersect'](ao[0x0])),ao['push'](as['intersect'](ao[ao['length']-0x1]))),aj['toCluster']&&(Q['debug']('to\x20cluster\x20abc88',ak[aj['toCluster']]),ao=Wt(aj[c6(0xd7)],ak[aj['toCluster']]['node']),ap=!0x0),aj[c6(0xfe)]&&(Q['debug']('from\x20cluster\x20abc88',ak[aj['fromCluster']]),ao=Wt(ao['reverse'](),ak[aj['fromCluster']]['node'])[c6(0xe0)](),ap=!0x0);const au=ao['filter'](aD=>!Number['isNaN'](aD['y']));let av=ad;aj[c6(0x19e)]&&(al===c6(0x130)||al===c6(0x153))&&(av=aj['curve']);const {x:aw,y:ax}=a1(aj),ay=ac()['x'](aw)['y'](ax)['curve'](av);let az;switch(aj['thickness']){case c6(0xb7):az='edge-thickness-normal';break;case'thick':az='edge-thickness-thick';break;case'invisible':az='edge-thickness-thick';break;default:az='';}switch(aj['pattern']){case'solid':az+=c6(0xf6);break;case c6(0x166):az+='\x20edge-pattern-dotted';break;case'dashed':az+='\x20edge-pattern-dashed';break;}const aA=ah['append']('path')['attr']('d',ay(au))['attr']('id',aj['id'])['attr'](c6(0x178),'\x20'+az+(aj['classes']?'\x20'+aj[c6(0x10d)]:''))['attr']('style',aj['style']);let aB='';(O()['flowchart']['arrowMarkerAbsolute']||O()['state']['arrowMarkerAbsolute'])&&(aB=a2(!0x0)),Hr(aA,aj,aB,an,al);let aC={};return ap&&(aC['updatedPath']=ao),aC['originalPath']=aj['points'],aC;},'insertEdge'),Zr=L(ah=>{const c7=bB,ai=new Set();for(const aj of ah)switch(aj){case'x':ai[c7(0x91)]('right'),ai['add']('left');break;case'y':ai['add']('up'),ai[c7(0x91)]('down');break;default:ai['add'](aj);break;}return ai;},'expandAndDeduplicateDirections'),qr=L((ah,ai,aj,ak)=>{const c8=bB,al=Zr(ah),am=0x2,an=ai['height']+0x2*aj['padding'],ao=an/am,ap=ak??ai[c8(0xc3)]+0x2*ao+aj['padding'],aq=aj['padding']/0x2;return al['has']('right')&&al[c8(0x98)]('left')&&al['has']('up')&&al[c8(0x98)]('down')?[{'x':0x0,'y':0x0},{'x':ao,'y':0x0},{'x':ap/0x2,'y':0x2*aq},{'x':ap-ao,'y':0x0},{'x':ap,'y':0x0},{'x':ap,'y':-an/0x3},{'x':ap+0x2*aq,'y':-an/0x2},{'x':ap,'y':-0x2*an/0x3},{'x':ap,'y':-an},{'x':ap-ao,'y':-an},{'x':ap/0x2,'y':-an-0x2*aq},{'x':ao,'y':-an},{'x':0x0,'y':-an},{'x':0x0,'y':-0x2*an/0x3},{'x':-0x2*aq,'y':-an/0x2},{'x':0x0,'y':-an/0x3}]:al[c8(0x98)]('right')&&al[c8(0x98)](c8(0x1a3))&&al['has']('up')?[{'x':ao,'y':0x0},{'x':ap-ao,'y':0x0},{'x':ap,'y':-an/0x2},{'x':ap-ao,'y':-an},{'x':ao,'y':-an},{'x':0x0,'y':-an/0x2}]:al['has']('right')&&al['has']('left')&&al['has'](c8(0x167))?[{'x':0x0,'y':0x0},{'x':ao,'y':-an},{'x':ap-ao,'y':-an},{'x':ap,'y':0x0}]:al[c8(0x98)]('right')&&al['has']('up')&&al[c8(0x98)]('down')?[{'x':0x0,'y':0x0},{'x':ap,'y':-ao},{'x':ap,'y':-an+ao},{'x':0x0,'y':-an}]:al[c8(0x98)]('left')&&al[c8(0x98)]('up')&&al['has']('down')?[{'x':ap,'y':0x0},{'x':0x0,'y':-ao},{'x':0x0,'y':-an+ao},{'x':ap,'y':-an}]:al['has'](c8(0xcc))&&al['has']('left')?[{'x':ao,'y':0x0},{'x':ao,'y':-aq},{'x':ap-ao,'y':-aq},{'x':ap-ao,'y':0x0},{'x':ap,'y':-an/0x2},{'x':ap-ao,'y':-an},{'x':ap-ao,'y':-an+aq},{'x':ao,'y':-an+aq},{'x':ao,'y':-an},{'x':0x0,'y':-an/0x2}]:al[c8(0x98)]('up')&&al['has']('down')?[{'x':ap/0x2,'y':0x0},{'x':0x0,'y':-aq},{'x':ao,'y':-aq},{'x':ao,'y':-an+aq},{'x':0x0,'y':-an+aq},{'x':ap/0x2,'y':-an},{'x':ap,'y':-an+aq},{'x':ap-ao,'y':-an+aq},{'x':ap-ao,'y':-aq},{'x':ap,'y':-aq}]:al['has']('right')&&al['has']('up')?[{'x':0x0,'y':0x0},{'x':ap,'y':-ao},{'x':0x0,'y':-an}]:al['has'](c8(0xcc))&&al['has']('down')?[{'x':0x0,'y':0x0},{'x':ap,'y':0x0},{'x':0x0,'y':-an}]:al[c8(0x98)]('left')&&al['has']('up')?[{'x':ap,'y':0x0},{'x':0x0,'y':-ao},{'x':ap,'y':-an}]:al['has']('left')&&al[c8(0x98)]('down')?[{'x':ap,'y':0x0},{'x':0x0,'y':0x0},{'x':ap,'y':-an}]:al[c8(0x98)]('right')?[{'x':ao,'y':-aq},{'x':ao,'y':-aq},{'x':ap-ao,'y':-aq},{'x':ap-ao,'y':0x0},{'x':ap,'y':-an/0x2},{'x':ap-ao,'y':-an},{'x':ap-ao,'y':-an+aq},{'x':ao,'y':-an+aq},{'x':ao,'y':-an+aq}]:al['has']('left')?[{'x':ao,'y':0x0},{'x':ao,'y':-aq},{'x':ap-ao,'y':-aq},{'x':ap-ao,'y':-an+aq},{'x':ao,'y':-an+aq},{'x':ao,'y':-an},{'x':0x0,'y':-an/0x2}]:al['has']('up')?[{'x':ao,'y':-aq},{'x':ao,'y':-an+aq},{'x':0x0,'y':-an+aq},{'x':ap/0x2,'y':-an},{'x':ap,'y':-an+aq},{'x':ap-ao,'y':-an+aq},{'x':ap-ao,'y':-aq}]:al[c8(0x98)](c8(0x167))?[{'x':ap/0x2,'y':0x0},{'x':0x0,'y':-aq},{'x':ao,'y':-aq},{'x':ao,'y':-an+aq},{'x':ap-ao,'y':-an+aq},{'x':ap-ao,'y':-aq},{'x':ap,'y':-aq}]:[{'x':0x0,'y':0x0}];},'getArrowPoints');function ge(ah,ai){return ah['intersect'](ai);}L(ge,'intersectNode');var Jr=ge;function de(ah,ai,aj,ak){const c9=bB;var al=ah['x'],am=ah['y'],an=al-ak['x'],ao=am-ak['y'],ap=Math['sqrt'](ai*ai*ao*ao+aj*aj*an*an),aq=Math[c9(0x157)](ai*aj*an/ap);ak['x']<al&&(aq=-aq);var as=Math['abs'](ai*aj*ao/ap);return ak['y']<am&&(as=-as),{'x':al+aq,'y':am+as};}L(de,'intersectEllipse');var ue=de;function pe(ah,ai,aj){return ue(ah,ai,ai,aj);}L(pe,'intersectCircle');var Qr=pe;function fe(ah,ai,aj,ak){const cb=bB;var al,am,an,ao,ap,aq,as,au,av,aw,ax,ay,az,aA,aB;if(al=ai['y']-ah['y'],an=ah['x']-ai['x'],ap=ai['x']*ah['y']-ah['x']*ai['y'],av=al*aj['x']+an*aj['y']+ap,aw=al*ak['x']+an*ak['y']+ap,!(av!==0x0&&aw!==0x0&&vt(av,aw))&&(am=ak['y']-aj['y'],ao=aj['x']-ak['x'],aq=ak['x']*aj['y']-aj['x']*ak['y'],as=am*ah['x']+ao*ah['y']+aq,au=am*ai['x']+ao*ai['y']+aq,!(as!==0x0&&au!==0x0&&vt(as,au))&&(ax=al*ao-am*an,ax!==0x0)))return ay=Math[cb(0x157)](ax/0x2),az=an*aq-ao*ap,aA=az<0x0?(az-ay)/ax:(az+ay)/ax,az=am*ap-al*aq,aB=az<0x0?(az-ay)/ax:(az+ay)/ax,{'x':aA,'y':aB};}L(fe,bB(0xa2));function a(){const cW=['nodeTextColor','addStyle2Node','debug','5710RQwLRz','startLabelLeft','append','edge-thickness-normal','node\x20default','add','\x20startingPos=X','4KLfKCp','getDisplayDetails','6057090qhNjZh','mainBkg','translate(\x20','has','6696ATLwbi','forEach','conditionStack','setPrototypeOf','getBoundingClientRect',';\x0a\x20\x20}\x0a\x0a\x20\x20.cluster\x20span,p\x20{\x0a\x20\x20\x20\x20color:\x20','LEX:\x20POPPING\x20STR:','showPosition','styles','intersectLine','[\x5c/]','arrowTypeEnd','textColor','Parse\x20error\x20on\x20line\x20','M\x2019,7\x20L9,13\x20L14,7\x20L9,1\x20Z','end','INTERPOLATE','lexer','typeStr','lean_left','productions_','rect','SPACELINE','securityLevel','Rule:\x20blockStatement\x20:\x20','markerHeight','edgeStrToEdgeStartData','state-start','setHierarchy','edgeTypeStr','normal','Circle\x20main','classDef','stroke-dasharray','fontFamily','getBBox','8mOoRqh','userSpaceOnUse','DEFAULT','path','-compositionStart','buffer','width','abc88\x20cutPathAtIntersect','offset','join','node','marker-','STYLECLASS','startLabelRight','columns','right','.\x20Unrecognized\x20text.\x0a','index','aggregation','Lexa:\x20)','\x20flowchart-label','centerLabel','props','edgeLabelBackground','height','type','points','solid','object','setBlockSizes\x20abc95\x20(start)','directions','getDiagramId','-pointStart','auto','attr','reverse','delete','style','5GoAnyB','pastInput','widthInColumns','calcTerminalLabelPosition','startLeft','<[]>','borders','marker\x20lollipop\x20','next','acc_title','question','positionNode','[\x5c\x5c]','yytext','refY','abc88\x20columnsPos','[id=\x22','hexagon','setCssClass','\x20edge-pattern-solid','labelStyle',';\x0a\x20\x20\x20\x20stroke-width:\x202.0px;\x0a\x20\x20}\x0a\x0a\x20\x20.flowchart-link\x20{\x0a\x20\x20\x20\x20stroke:\x20','Classes\x20=\x20','byteOffset','Size\x20indata\x20abc88','hasOwnProperty','Lex:\x20COLON','fromCluster','concat','77081480NYaHLS','viewBox','calculateBlockSize','LEX\x20POPPING','calculateBlockSizes',',\x20q\x20','setDiagramId','labelType','set','LINKSTYLE','defaultActions','abc85\x20layout\x20blocks\x20(=>layoutBlocks)\x20','thick','classes','-crossStart','anonymous','clear','label','outer\x20title-state','=>x:','_backtrack',')\x20to\x20(','applyNodePropertyBorders','Lex:\x20LINK',')\x20parent:\x20','{{}}','getClasses','-aggregationStart','getLogger','class_box','function','replace','diamond','addEdgeMarker','appendChild','subroutine','match','marker\x20aggregation\x20','keys','translate(','13CxBKiF','End','rect_left_inv_arrow','2898156NjUGkn','-aggregationEnd','info','M\x200\x205\x20L\x2010\x2010\x20L\x2010\x200\x20z','annotations','graph','pushState','intersect','padding','md_string','edgeLabel','NODE_DEND','2515sqmlbE','doublecircle','_input',':first-child','extension','matched','diff','STYLE_STMNT','popState','Lex:\x20((','constructor','block','add\x20right\x20border','marker','Lex\x20(right):\x20dir:','classData','parser','divider','parseError','values','\x200\x20l\x200,','M\x2018,7\x20L9,13\x20L1,7\x20L9,1\x20Z','getColumns',';\x0a\x20\x20}\x0a\x20\x20.cluster-label\x20span,p\x20{\x0a\x20\x20\x20\x20color:\x20','EOF','\x20ySize\x20','0\x200\x2011\x2011','last_column','flowchart','defs','flat','applyStyles','abs','slice','refX','2700639ubiRmX','popStack','size','BLOCK_ARROW_END','done','yylloc','draw','LLABEL','circle','round','sqrt','string','dotted','down','title','clusterBorder','range','arrowMarkerPath','stringify','Rule:\x20statement:\x20','split','node\x20','ellipse','length','shape','12px','insert','CLASSDEF_STYLEOPTS','includes','SPACE\x20NUM\x20(LEX)','class','options','lineColor','M\x201,1\x20l\x209,9\x20M\x2010,1\x20l\x20-9,9','\x20children\x20child:','iterator','group','get','children','NODE','polygon','\x20exceeds\x20configured\x20column\x20width\x20',';\x0a\x20\x20\x20\x20/*\x0a\x20\x20\x20\x20\x20*\x20This\x20is\x20for\x20backward\x20compatibility\x20with\x20existing\x20code\x20that\x20didn\x27t\x0a\x20\x20\x20\x20\x20*\x20add\x20a\x20`<p>`\x20around\x20edge\x20labels.\x0a\x20\x20\x20\x20\x20*\x0a\x20\x20\x20\x20\x20*\x20TODO:\x20We\x20should\x20probably\x20remove\x20this\x20in\x20a\x20future\x20release.\x0a\x20\x20\x20\x20\x20*/\x0a\x20\x20\x20\x20p\x20{\x0a\x20\x20\x20\x20\x20\x20margin:\x200;\x0a\x20\x20\x20\x20\x20\x20padding:\x200;\x0a\x20\x20\x20\x20\x20\x20display:\x20inline;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20rect\x20{\x0a\x20\x20\x20\x20\x20\x20opacity:\x200.5;\x0a\x20\x20\x20\x20\x20\x20background-color:\x20','cssStyle','POSITIVE_INFINITY','ranges','transform','trim','806dWFHXk','markdown','orient','Rule:\x20separator\x20(NL)\x20','originalPath','last_line','push','call','domId','insertEdges','INITIAL','Lex\x20(ARROW_DIR\x20end):','_blank','unput','-lollipopEnd','SPACE','isNaN',';\x0a\x20\x20\x20\x20color:\x20','warn','Lex\x20(y):','curve','root','matches','markerWidth','composite','left','77mXWVhh','setInput','applyClass','yylineno','marker\x20cross\x20','test_match','valueOf','yyleng','edge-thickness-thick','2901703sNatCj','Lex:\x20]','trapezoid'];a=function(){return cW;};return a();}function vt(ah,ai){return ah*ai>0x0;}L(vt,'sameSign');var $r=fe,ta=xe;function xe(ah,ai,aj){const cc=bB;var ak=ah['x'],al=ah['y'],am=[],an=Number[cc(0x186)],ao=Number[cc(0x186)];typeof ai['forEach']==cc(0x11e)?ai['forEach'](function(ax){an=Math['min'](an,ax['x']),ao=Math['min'](ao,ax['y']);}):(an=Math['min'](an,ai['x']),ao=Math['min'](ao,ai['y']));for(var ap=ak-ah[cc(0xc3)]/0x2-an,aq=al-ah['height']/0x2-ao,as=0x0;as<ai['length'];as++){var au=ai[as],av=ai[as<ai['length']-0x1?as+0x1:0x0],aw=$r(ah,aj,{'x':ap+au['x'],'y':aq+au['y']},{'x':ap+av['x'],'y':aq+av['y']});aw&&am['push'](aw);}return am[cc(0x171)]?(am[cc(0x171)]>0x1&&am['sort'](function(ax,ay){const cd=cc;var az=ax['x']-aj['x'],aA=ax['y']-aj['y'],aB=Math[cd(0x164)](az*az+aA*aA),aC=ay['x']-aj['x'],aD=ay['y']-aj['y'],aE=Math['sqrt'](aC*aC+aD*aD);return aB<aE?-0x1:aB===aE?0x0:0x1;}),am[0x0]):ah;}L(xe,'intersectPolygon');var ea=L((ah,ai)=>{const cf=bB;var aj=ah['x'],ak=ah['y'],al=ai['x']-aj,am=ai['y']-ak,an=ah[cf(0xc3)]/0x2,ao=ah['height']/0x2,ap,aq;return Math[cf(0x157)](am)*an>Math['abs'](al)*ao?(am<0x0&&(ao=-ao),ap=am===0x0?0x0:ao*al/am,aq=ao):(al<0x0&&(an=-an),ap=an,aq=al===0x0?0x0:an*am/al),{'x':aj+ap,'y':ak+aq};},'intersectRect'),ra=ea,B={'node':Jr,'circle':Qr,'ellipse':ue,'polygon':ta,'rect':ra},z=L(async(ah,ai,aj,ak)=>{const cg=bB,al=O();let am;const an=ai['useHtmlLabels']||R(al);aj?am=aj:am=cg(0x90);const ao=ah['insert']('g')['attr']('class',am)['attr']('id',ai['domId']||ai['id']),ap=ao['insert']('g')['attr']('class','label')[cg(0xdf)]('style',ai['labelStyle']);let aq;ai['labelText']===void 0x0?aq='':aq=typeof ai['labelText']==cg(0x165)?ai['labelText']:ai['labelText'][0x0];let as;ai['labelType']===cg(0x18b)?as=W(ap,a7(a8(aq),al),{'useHtmlLabels':an,'width':ai['width']||al['flowchart']['wrappingWidth'],'classes':'markdown-node-label'},al):as=await U(ap,a7(a8(aq),al),ai['labelStyle'],!0x1,ak);let au=as['getBBox']();const av=ai['padding']/0x2;if(R(al)){const aw=as['children'][0x0],ax=ab(as);await a9(aw,aq),au=aw['getBoundingClientRect'](),ax['attr']('width',au['width']),ax[cg(0xdf)]('height',au['height']);}return an?ap['attr']('transform','translate('+-au['width']/0x2+',\x20'+-au['height']/0x2+')'):ap['attr']('transform','translate(0,\x20'+-au['height']/0x2+')'),ai[cg(0xd2)]&&ap['attr']('transform','translate('+-au[cg(0xc3)]/0x2+',\x20'+-au['height']/0x2+')'),ap['insert']('rect',cg(0x13a)),{'shapeSvg':ao,'bbox':au,'halfPadding':av,'label':ap};},'labelHelper'),N=L((ah,ai)=>{const aj=ai['node']()['getBBox']();ah['width']=aj['width'],ah['height']=aj['height'];},'updateNodeBounds');function V(ah,ai,aj,ak){const ch=bB;return ah['insert']('polygon',':first-child')['attr']('points',ak['map'](function(al){return al['x']+','+al['y'];})['join']('\x20'))['attr']('class','label-container')[ch(0xdf)]('transform','translate('+-ai/0x2+','+aj/0x2+')');}L(V,'insertPolygonShape');var aa=L(async(ah,ai)=>{const ci=bB;ai['useHtmlLabels']||R(O())||(ai['centerLabel']=!0x0);const {shapeSvg:aj,bbox:ak,halfPadding:al}=await z(ah,ai,'node\x20'+ai[ci(0x10d)],!0x0);Q['info'](ci(0xf9),ai[ci(0x10d)]);const am=aj['insert'](ci(0xae),':first-child');return am[ci(0xdf)]('rx',ai['rx'])['attr']('ry',ai['ry'])['attr']('x',-ak['width']/0x2-al)['attr']('y',-ak['height']/0x2-al)['attr']('width',ak['width']+ai[ci(0x133)])['attr'](ci(0xd5),ak['height']+ai['padding']),N(ai,am),ai['intersect']=function(an){return B['rect'](ai,an);},aj;},'note'),sa=aa,Yt=L(ah=>ah?'\x20'+ah:'','formatClass'),H=L((ah,ai)=>''+(ai||bB(0x90))+Yt(ah['classes'])+'\x20'+Yt(ah['class']),'getClassesFromNode'),Ht=L(async(ah,ai)=>{const cj=bB,{shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai,void 0x0),!0x0),al=ak['width']+ai['padding'],am=ak['height']+ai['padding'],an=al+am,ao=[{'x':an/0x2,'y':0x0},{'x':an,'y':-an/0x2},{'x':an/0x2,'y':-an},{'x':0x0,'y':-an/0x2}];Q[cj(0x12d)]('Question\x20main\x20(Circle)');const ap=V(aj,an,an,ao);return ap['attr']('style',ai['style']),N(ai,ap),ai['intersect']=function(aq){return Q['warn']('Intersect\x20called'),B['polygon'](ai,ao,aq);},aj;},'question'),ia=L((ah,ai)=>{const ck=bB,aj=ah['insert']('g')[ck(0xdf)]('class','node\x20default')[ck(0xdf)]('id',ai['domId']||ai['id']),ak=0x1c,al=[{'x':0x0,'y':ak/0x2},{'x':ak/0x2,'y':0x0},{'x':0x0,'y':-ak/0x2},{'x':-ak/0x2,'y':0x0}];return aj['insert']('polygon',':first-child')['attr']('points',al['map'](function(am){return am['x']+','+am['y'];})['join']('\x20'))['attr']('class',ck(0xb4))['attr']('r',0x7)['attr']('width',0x1c)['attr']('height',0x1c),ai['width']=0x1c,ai['height']=0x1c,ai['intersect']=function(am){return B['circle'](ai,0xe,am);},aj;},'choice'),na=L(async(ah,ai)=>{const cl=bB,{shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai,void 0x0),!0x0),al=0x4,am=ai['positioned']?ai['height']:ak[cl(0xd5)]+ai['padding'],an=am/al,ao=ai['positioned']?ai['width']:ak[cl(0xc3)]+0x2*an+ai['padding'],ap=[{'x':an,'y':0x0},{'x':ao-an,'y':0x0},{'x':ao,'y':-am/0x2},{'x':ao-an,'y':-am},{'x':an,'y':-am},{'x':0x0,'y':-am/0x2}],aq=V(aj,ao,am,ap);return aq['attr']('style',ai[cl(0xe2)]),N(ai,aq),ai['intersect']=function(as){return B['polygon'](ai,ap,as);},aj;},bB(0xf4)),ca=L(async(ah,ai)=>{const cm=bB,{shapeSvg:aj,bbox:ak}=await z(ah,ai,void 0x0,!0x0),al=0x2,am=ak['height']+0x2*ai['padding'],an=am/al,ao=ak['width']+0x2*an+ai['padding'],ap=ai['positioned']&&(ai['widthInColumns']??0x1)>0x1&&ai[cm(0xc3)]>ao?ai['width']:ao,aq=qr(ai['directions'],ak,ai,ap),as=V(aj,ap,am,aq);return as['attr']('style',ai['style']),N(ai,as),ai['intersect']=function(au){return B['polygon'](ai,aq,au);},aj;},'block_arrow'),la=L(async(ah,ai)=>{const cn=bB,{shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai,void 0x0),!0x0),al=ak['width']+ai[cn(0x133)],am=ak['height']+ai[cn(0x133)],an=[{'x':-am/0x2,'y':0x0},{'x':al,'y':0x0},{'x':al,'y':-am},{'x':-am/0x2,'y':-am},{'x':0x0,'y':-am/0x2}];return V(aj,al,am,an)['attr']('style',ai['style']),ai['width']=al+am,ai[cn(0xd5)]=am,ai['intersect']=function(ao){return B['polygon'](ai,an,ao);},aj;},bB(0x12a)),oa=L(async(ah,ai)=>{const co=bB,{shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai),!0x0),al=ak['width']+ai[co(0x133)],am=ak['height']+ai['padding'],an=[{'x':-0x2*am/0x6,'y':0x0},{'x':al-am/0x6,'y':0x0},{'x':al+0x2*am/0x6,'y':-am},{'x':am/0x6,'y':-am}],ao=V(aj,al,am,an);return ao['attr']('style',ai['style']),N(ai,ao),ai['intersect']=function(ap){const cp=co;return B[cp(0x182)](ai,an,ap);},aj;},'lean_right'),ha=L(async(ah,ai)=>{const cq=bB,{shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai,void 0x0),!0x0),al=ak['width']+ai['padding'],am=ak['height']+ai['padding'],an=[{'x':0x2*am/0x6,'y':0x0},{'x':al+am/0x6,'y':0x0},{'x':al-0x2*am/0x6,'y':-am},{'x':-am/0x6,'y':-am}],ao=V(aj,al,am,an);return ao[cq(0xdf)](cq(0xe2),ai[cq(0xe2)]),N(ai,ao),ai['intersect']=function(ap){return B['polygon'](ai,an,ap);},aj;},'lean_left'),ga=L(async(ah,ai)=>{const cs=bB,{shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai,void 0x0),!0x0),al=ak[cs(0xc3)]+ai['padding'],am=ak['height']+ai['padding'],an=[{'x':-0x2*am/0x6,'y':0x0},{'x':al+0x2*am/0x6,'y':0x0},{'x':al-am/0x6,'y':-am},{'x':am/0x6,'y':-am}],ao=V(aj,al,am,an);return ao['attr']('style',ai['style']),N(ai,ao),ai['intersect']=function(ap){return B['polygon'](ai,an,ap);},aj;},bB(0x1af)),da=L(async(ah,ai)=>{const cu=bB,{shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai,void 0x0),!0x0),al=ak[cu(0xc3)]+ai['padding'],am=ak['height']+ai[cu(0x133)],an=[{'x':am/0x6,'y':0x0},{'x':al-am/0x6,'y':0x0},{'x':al+0x2*am/0x6,'y':-am},{'x':-0x2*am/0x6,'y':-am}],ao=V(aj,al,am,an);return ao['attr']('style',ai['style']),N(ai,ao),ai['intersect']=function(ap){return B['polygon'](ai,an,ap);},aj;},'inv_trapezoid'),ua=L(async(ah,ai)=>{const {shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai,void 0x0),!0x0),al=ak['width']+ai['padding'],am=ak['height']+ai['padding'],an=[{'x':0x0,'y':0x0},{'x':al+am/0x2,'y':0x0},{'x':al,'y':-am/0x2},{'x':al+am/0x2,'y':-am},{'x':0x0,'y':-am}],ao=V(aj,al,am,an);return ao['attr']('style',ai['style']),N(ai,ao),ai['intersect']=function(ap){return B['polygon'](ai,an,ap);},aj;},'rect_right_inv_arrow'),pa=L(async(ah,ai)=>{const cv=bB,{shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai,void 0x0),!0x0),al=ak['width']+ai['padding'],am=al/0x2,an=am/(2.5+al/0x32),ao=ak['height']+an+ai['padding'],ap='M\x200,'+an+'\x20a\x20'+am+','+an+'\x200,0,0\x20'+al+'\x200\x20a\x20'+am+','+an+'\x200,0,0\x20'+-al+'\x200\x20l\x200,'+ao+'\x20a\x20'+am+','+an+'\x200,0,0\x20'+al+cv(0x14b)+-ao,aq=aj['attr']('label-offset-y',an)['insert']('path',':first-child')['attr']('style',ai['style'])['attr']('d',ap)['attr']('transform',cv(0x127)+-al/0x2+','+-(ao/0x2+an)+')');return N(ai,aq),ai['intersect']=function(as){const cw=cv,au=B['rect'](ai,as),av=au['x']-ai['x'];if(am!=0x0&&(Math['abs'](av)<ai[cw(0xc3)]/0x2||Math[cw(0x157)](av)==ai['width']/0x2&&Math['abs'](au['y']-ai['y'])>ai[cw(0xd5)]/0x2-an)){let aw=an*an*(0x1-av*av/(am*am));aw!=0x0&&(aw=Math['sqrt'](aw)),aw=an-aw,as['y']-ai['y']>0x0&&(aw=-aw),au['y']+=aw;}return au;},aj;},'cylinder'),fa=L(async(ah,ai)=>{const cx=bB,{shapeSvg:aj,bbox:ak,halfPadding:al}=await z(ah,ai,'node\x20'+ai[cx(0x10d)]+'\x20'+ai['class'],!0x0),am=aj['insert']('rect',':first-child'),an=ai['positioned']?ai['width']:ak['width']+ai['padding'],ao=ai['positioned']?ai['height']:ak['height']+ai['padding'],ap=ai['positioned']?-an/0x2:-ak['width']/0x2-al,aq=ai['positioned']?-ao/0x2:-ak['height']/0x2-al;if(am[cx(0xdf)]('class','basic\x20label-container')['attr']('style',ai[cx(0xe2)])['attr']('rx',ai['rx'])['attr']('ry',ai['ry'])[cx(0xdf)]('x',ap)[cx(0xdf)]('y',aq)['attr']('width',an)['attr'](cx(0xd5),ao),ai['props']){const as=new Set(Object[cx(0x126)](ai['props']));ai['props'][cx(0xe9)]&&(ht(am,ai[cx(0xd3)]['borders'],an,ao),as['delete'](cx(0xe9))),as['forEach'](au=>{Q['warn']('Unknown\x20node\x20property\x20'+au);});}return N(ai,am),ai[cx(0x132)]=function(au){return B['rect'](ai,au);},aj;},bB(0xae)),xa=L(async(ah,ai)=>{const cy=bB,{shapeSvg:aj,bbox:ak,halfPadding:al}=await z(ah,ai,cy(0x16f)+ai['classes'],!0x0),am=aj['insert']('rect',cy(0x13a)),an=ai['positioned']?ai['width']:ak[cy(0xc3)]+ai['padding'],ao=ai['positioned']?ai['height']:ak['height']+ai['padding'],ap=ai['positioned']?-an/0x2:-ak['width']/0x2-al,aq=ai['positioned']?-ao/0x2:-ak[cy(0xd5)]/0x2-al;if(am['attr']('class','basic\x20cluster\x20composite\x20label-container')['attr'](cy(0xe2),ai['style'])['attr']('rx',ai['rx'])['attr']('ry',ai['ry'])[cy(0xdf)]('x',ap)[cy(0xdf)]('y',aq)[cy(0xdf)](cy(0xc3),an)[cy(0xdf)](cy(0xd5),ao),ai[cy(0xd3)]){const as=new Set(Object[cy(0x126)](ai['props']));ai['props']['borders']&&(ht(am,ai[cy(0xd3)]['borders'],an,ao),as['delete']('borders')),as['forEach'](au=>{const cz=cy;Q[cz(0x19c)]('Unknown\x20node\x20property\x20'+au);});}return N(ai,am),ai['intersect']=function(au){return B['rect'](ai,au);},aj;},bB(0x1a2)),ya=L(async(ah,ai)=>{const cA=bB,{shapeSvg:aj}=await z(ah,ai,'label',!0x0);Q['trace']('Classes\x20=\x20',ai['class']);const ak=aj['insert']('rect',':first-child'),al=0x0,am=0x0;if(ak['attr'](cA(0xc3),al)['attr'](cA(0xd5),am),aj['attr']('class','label\x20edgeLabel'),ai['props']){const an=new Set(Object['keys'](ai['props']));ai['props']['borders']&&(ht(ak,ai['props']['borders'],al,am),an[cA(0xe1)]('borders')),an['forEach'](ao=>{Q['warn']('Unknown\x20node\x20property\x20'+ao);});}return N(ai,ak),ai['intersect']=function(ao){return B['rect'](ai,ao);},aj;},'labelRect');function ht(ah,ai,aj,ak){const cB=bB,al=[],am=L(ao=>{al['push'](ao,0x0);},'addBorder'),an=L(ao=>{al['push'](0x0,ao);},'skipBorder');ai[cB(0x176)]('t')?(Q['debug']('add\x20top\x20border'),am(aj)):an(aj),ai['includes']('r')?(Q['debug'](cB(0x143)),am(ak)):an(ak),ai['includes']('b')?(Q[cB(0x8b)]('add\x20bottom\x20border'),am(aj)):an(aj),ai['includes']('l')?(Q[cB(0x8b)]('add\x20left\x20border'),am(ak)):an(ak),ah['attr']('stroke-dasharray',al['join']('\x20'));}L(ht,bB(0x116));var ba=L(async(ah,ai)=>{const cC=bB;let aj;ai['classes']?aj='node\x20'+ai['classes']:aj='node\x20default';const ak=ah[cC(0x174)]('g')[cC(0xdf)]('class',aj)['attr']('id',ai['domId']||ai['id']),al=ak['insert'](cC(0xae),':first-child'),am=ak['insert']('line'),an=ak['insert']('g')['attr']('class','label'),ao=ai['labelText'][cC(0x155)]?ai['labelText']['flat']():ai['labelText'];let ap='';typeof ao==cC(0xd9)?ap=ao[0x0]:ap=ao,Q[cC(0x12d)]('Label\x20text\x20abc79',ap,ao,typeof ao=='object');const aq=await U(an,ap,ai['labelStyle'],!0x0,!0x0);let as={'width':0x0,'height':0x0};if(R(O())){const ay=aq['children'][0x0],az=ab(aq);as=ay['getBoundingClientRect'](),az['attr'](cC(0xc3),as['width']),az['attr']('height',as['height']);}Q['info']('Text\x202',ao);const au=ao['slice'](0x1,ao['length']);let av=aq['getBBox']();const aw=await U(an,au['join']?au['join']('<br/>'):au,ai['labelStyle'],!0x0,!0x0);if(R(O())){const aA=aw['children'][0x0],aB=ab(aw);as=aA['getBoundingClientRect'](),aB['attr']('width',as[cC(0xc3)]),aB['attr']('height',as['height']);}const ax=ai['padding']/0x2;return ab(aw)[cC(0xdf)](cC(0x188),'translate(\x20'+(as['width']>av[cC(0xc3)]?0x0:(av['width']-as['width'])/0x2)+',\x20'+(av['height']+ax+0x5)+')'),ab(aq)['attr']('transform','translate(\x20'+(as['width']<av['width']?0x0:-(av['width']-as['width'])/0x2)+',\x200)'),as=an['node']()['getBBox'](),an['attr']('transform','translate('+-as[cC(0xc3)]/0x2+',\x20'+(-as['height']/0x2-ax+0x3)+')'),al['attr'](cC(0x178),'outer\x20title-state')['attr']('x',-as['width']/0x2-ax)[cC(0xdf)]('y',-as['height']/0x2-ax)[cC(0xdf)]('width',as['width']+ai['padding'])[cC(0xdf)](cC(0xd5),as['height']+ai['padding']),am['attr'](cC(0x178),cC(0x148))['attr']('x1',-as['width']/0x2-ax)['attr']('x2',as[cC(0xc3)]/0x2+ax)['attr']('y1',-as[cC(0xd5)]/0x2-ax+av['height']+ax)['attr']('y2',-as['height']/0x2-ax+av['height']+ax),N(ai,al),ai['intersect']=function(aC){const cD=cC;return B[cD(0xae)](ai,aC);},ak;},'rectWithTitle'),wa=L(async(ah,ai)=>{const cE=bB,{shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai,void 0x0),!0x0),al=ak['height']+ai[cE(0x133)],am=ak['width']+al/0x4+ai['padding'],an=aj['insert']('rect',cE(0x13a))['attr']('style',ai['style'])['attr']('rx',al/0x2)[cE(0xdf)]('ry',al/0x2)[cE(0xdf)]('x',-am/0x2)['attr']('y',-al/0x2)['attr'](cE(0xc3),am)['attr']('height',al);return N(ai,an),ai['intersect']=function(ao){return B['rect'](ai,ao);},aj;},'stadium'),ma=L(async(ah,ai)=>{const cF=bB,{shapeSvg:aj,bbox:ak,halfPadding:al}=await z(ah,ai,H(ai,void 0x0),!0x0),am=aj['insert'](cF(0x162),':first-child');return am['attr']('style',ai[cF(0xe2)])[cF(0xdf)]('rx',ai['rx'])['attr']('ry',ai['ry'])['attr']('r',ak['width']/0x2+al)['attr']('width',ak['width']+ai['padding'])['attr']('height',ak['height']+ai['padding']),Q['info'](cF(0xb8)),N(ai,am),ai['intersect']=function(an){const cG=cF;return Q['info']('Circle\x20intersect',ai,ak['width']/0x2+al,an),B[cG(0x162)](ai,ak['width']/0x2+al,an);},aj;},'circle'),Sa=L(async(ah,ai)=>{const cH=bB,{shapeSvg:aj,bbox:ak,halfPadding:al}=await z(ah,ai,H(ai,void 0x0),!0x0),am=0x5,an=aj[cH(0x174)]('g',':first-child'),ao=an[cH(0x174)]('circle'),ap=an['insert']('circle');return an['attr']('class',ai['class']),ao['attr']('style',ai[cH(0xe2)])['attr']('rx',ai['rx'])['attr']('ry',ai['ry'])['attr']('r',ak['width']/0x2+al+am)[cH(0xdf)]('width',ak[cH(0xc3)]+ai[cH(0x133)]+am*0x2)[cH(0xdf)]('height',ak['height']+ai['padding']+am*0x2),ap['attr']('style',ai[cH(0xe2)])['attr']('rx',ai['rx'])[cH(0xdf)]('ry',ai['ry'])[cH(0xdf)]('r',ak[cH(0xc3)]/0x2+al)['attr']('width',ak['width']+ai['padding'])['attr']('height',ak[cH(0xd5)]+ai[cH(0x133)]),Q[cH(0x12d)]('DoubleCircle\x20main'),N(ai,ao),ai['intersect']=function(aq){return Q['info']('DoubleCircle\x20intersect',ai,ak['width']/0x2+al+am,aq),B['circle'](ai,ak['width']/0x2+al+am,aq);},aj;},'doublecircle'),La=L(async(ah,ai)=>{const cI=bB,{shapeSvg:aj,bbox:ak}=await z(ah,ai,H(ai,void 0x0),!0x0),al=ak[cI(0xc3)]+ai['padding'],am=ak[cI(0xd5)]+ai[cI(0x133)],an=[{'x':0x0,'y':0x0},{'x':al,'y':0x0},{'x':al,'y':-am},{'x':0x0,'y':-am},{'x':0x0,'y':0x0},{'x':-0x8,'y':0x0},{'x':al+0x8,'y':0x0},{'x':al+0x8,'y':-am},{'x':-0x8,'y':-am},{'x':-0x8,'y':0x0}],ao=V(aj,al,am,an);return ao['attr'](cI(0xe2),ai[cI(0xe2)]),N(ai,ao),ai['intersect']=function(ap){return B['polygon'](ai,an,ap);},aj;},'subroutine'),ka=L((ah,ai)=>{const cJ=bB,aj=ah['insert']('g')['attr'](cJ(0x178),'node\x20default')['attr']('id',ai['domId']||ai['id']),ak=aj[cJ(0x174)]('circle',':first-child');return ak['attr']('class',cJ(0xb4))['attr']('r',0x7)['attr']('width',0xe)['attr']('height',0xe),N(ai,ak),ai[cJ(0x132)]=function(al){return B['circle'](ai,0x7,al);},aj;},'start'),Kt=L((ah,ai,aj)=>{const cK=bB,ak=ah['insert']('g')['attr']('class','node\x20default')['attr']('id',ai[cK(0x192)]||ai['id']);let al=0x46,am=0xa;aj==='LR'&&(al=0xa,am=0x46);const an=ak['append']('rect')['attr']('x',-0x1*al/0x2)['attr']('y',-0x1*am/0x2)['attr']('width',al)['attr']('height',am)['attr']('class','fork-join');return N(ai,an),ai['height']=ai['height']+ai['padding']/0x2,ai['width']=ai['width']+ai['padding']/0x2,ai[cK(0x132)]=function(ao){return B['rect'](ai,ao);},ak;},'forkJoin'),va=L((ah,ai)=>{const cL=bB,aj=ah['insert']('g')['attr']('class','node\x20default')['attr']('id',ai[cL(0x192)]||ai['id']),ak=aj['insert']('circle',cL(0x13a)),al=aj['insert']('circle',cL(0x13a));return al['attr']('class',cL(0xb4))['attr']('r',0x7)['attr']('width',0xe)[cL(0xdf)]('height',0xe),ak['attr']('class','state-end')['attr']('r',0x5)['attr']('width',0xa)[cL(0xdf)](cL(0xd5),0xa),N(ai,al),ai['intersect']=function(am){return B['circle'](ai,0x7,am);},aj;},'end'),Ea=L(async(ah,ai)=>{const cM=bB,aj=ai['padding']/0x2,ak=0x4,al=0x8;let am;ai['classes']?am='node\x20'+ai[cM(0x10d)]:am='node\x20default';const an=ah[cM(0x174)]('g')['attr']('class',am)['attr']('id',ai['domId']||ai['id']),ao=an['insert']('rect',':first-child'),ap=an[cM(0x174)]('line'),aq=an[cM(0x174)]('line');let as=0x0,au=ak;const av=an['insert']('g')[cM(0xdf)]('class','label');let aw=0x0;const ax=ai['classData']['annotations']?.[0x0],ay=ai['classData']['annotations'][0x0]?'«'+ai['classData'][cM(0x12f)][0x0]+'»':'',az=await U(av,ay,ai['labelStyle'],!0x0,!0x0);let aA=az['getBBox']();if(R(O())){const aH=az['children'][0x0],aI=ab(az);aA=aH['getBoundingClientRect'](),aI['attr'](cM(0xc3),aA[cM(0xc3)]),aI['attr']('height',aA['height']);}ai['classData']['annotations'][0x0]&&(au+=aA['height']+ak,as+=aA['width']);let aB=ai['classData']['label'];ai['classData']['type']!==void 0x0&&ai['classData']['type']!==''&&(R(O())?aB+='<'+ai[cM(0x146)][cM(0xd6)]+'>':aB+='<'+ai[cM(0x146)]['type']+'>');const aC=await U(av,aB,ai['labelStyle'],!0x0,!0x0);ab(aC)['attr'](cM(0x178),'classTitle');let aD=aC[cM(0xbc)]();if(R(O())){const aJ=aC['children'][0x0],aK=ab(aC);aD=aJ['getBoundingClientRect'](),aK['attr'](cM(0xc3),aD['width']),aK[cM(0xdf)]('height',aD[cM(0xd5)]);}au+=aD['height']+ak,aD['width']>as&&(as=aD['width']);const aE=[];ai[cM(0x146)]['members']['forEach'](async aL=>{const cN=cM,aM=aL['getDisplayDetails']();let aN=aM['displayText'];R(O())&&(aN=aN['replace'](/</g,'<')['replace'](/>/g,'>'));const aO=await U(av,aN,aM[cN(0x185)]?aM['cssStyle']:ai['labelStyle'],!0x0,!0x0);let aP=aO['getBBox']();if(R(O())){const aQ=aO['children'][0x0],aR=ab(aO);aP=aQ['getBoundingClientRect'](),aR[cN(0xdf)]('width',aP['width']),aR['attr']('height',aP['height']);}aP['width']>as&&(as=aP['width']),au+=aP['height']+ak,aE['push'](aO);}),au+=al;const aF=[];if(ai['classData']['methods']['forEach'](async aL=>{const cO=cM,aM=aL[cO(0x94)]();let aN=aM['displayText'];R(O())&&(aN=aN['replace'](/</g,'<')[cO(0x11f)](/>/g,'>'));const aO=await U(av,aN,aM['cssStyle']?aM['cssStyle']:ai['labelStyle'],!0x0,!0x0);let aP=aO['getBBox']();if(R(O())){const aQ=aO['children'][0x0],aR=ab(aO);aP=aQ[cO(0x9d)](),aR[cO(0xdf)]('width',aP['width']),aR['attr'](cO(0xd5),aP['height']);}aP['width']>as&&(as=aP['width']),au+=aP[cO(0xd5)]+ak,aF['push'](aO);}),au+=al,ax){let aL=(as-aA['width'])/0x2;ab(az)[cM(0xdf)]('transform','translate(\x20'+(-0x1*as/0x2+aL)+',\x20'+-0x1*au/0x2+')'),aw=aA['height']+ak;}let aG=(as-aD['width'])/0x2;return ab(aC)['attr'](cM(0x188),'translate(\x20'+(-0x1*as/0x2+aG)+',\x20'+(-0x1*au/0x2+aw)+')'),aw+=aD['height']+ak,ap['attr']('class','divider')['attr']('x1',-as/0x2-aj)[cM(0xdf)]('x2',as/0x2+aj)['attr']('y1',-au/0x2-aj+al+aw)['attr']('y2',-au/0x2-aj+al+aw),aw+=al,aE['forEach'](aM=>{const cP=cM;ab(aM)['attr']('transform',cP(0x97)+-as/0x2+',\x20'+(-0x1*au/0x2+aw+al/0x2)+')');const aN=aM?.[cP(0xbc)]();aw+=(aN?.['height']??0x0)+ak;}),aw+=al,aq['attr']('class','divider')['attr']('x1',-as/0x2-aj)['attr']('x2',as/0x2+aj)[cM(0xdf)]('y1',-au/0x2-aj+al+aw)['attr']('y2',-au/0x2-aj+al+aw),aw+=al,aF[cM(0x9a)](aM=>{ab(aM)['attr']('transform','translate(\x20'+-as/0x2+',\x20'+(-0x1*au/0x2+aw)+')');const aN=aM?.['getBBox']();aw+=(aN?.['height']??0x0)+ak;}),ao[cM(0xdf)]('style',ai['style'])[cM(0xdf)]('class',cM(0x112))['attr']('x',-as/0x2-aj)['attr']('y',-(au/0x2)-aj)['attr']('width',as+ai[cM(0x133)])['attr'](cM(0xd5),au+ai['padding']),N(ai,ao),ai['intersect']=function(aM){return B['rect'](ai,aM);},an;},bB(0x11d)),Ut={'rhombus':Ht,'composite':xa,'question':Ht,'rect':fa,'labelRect':ya,'rectWithTitle':ba,'choice':ia,'circle':ma,'doublecircle':Sa,'stadium':wa,'hexagon':na,'block_arrow':ca,'rect_left_inv_arrow':la,'lean_right':oa,'lean_left':ha,'trapezoid':ga,'inv_trapezoid':da,'rect_right_inv_arrow':ua,'cylinder':pa,'start':ka,'end':va,'note':sa,'subroutine':La,'fork':Kt,'join':Kt,'class_box':Ea},ct={},ye=L(async(ah,ai,aj)=>{const cQ=bB;let ak,al;if(ai['link']){let am;O()[cQ(0xb0)]==='sandbox'?am='_top':ai['linkTarget']&&(am=ai['linkTarget']||cQ(0x196)),ak=ah['insert']('svg:a')['attr']('xlink:href',ai['link'])['attr']('target',am),al=await Ut[ai['shape']](ak,ai,aj);}else al=await Ut[ai[cQ(0x172)]](ah,ai,aj),ak=al;return ai['tooltip']&&al['attr'](cQ(0x168),ai['tooltip']),ai['class']&&al[cQ(0xdf)]('class','node\x20default\x20'+ai['class']),ct[ai['id']]=ak,ai['haveCallback']&&ct[ai['id']]['attr']('class',ct[ai['id']]['attr']('class')+'\x20clickable'),ak;},'insertNode'),_a=L(ah=>{const cR=bB,ai=ct[ah['id']];Q['trace']('Transforming\x20node',ah[cR(0x13d)],ah,'translate('+(ah['x']-ah[cR(0xc3)]/0x2-0x5)+',\x20'+ah['width']/0x2+')');const aj=0x8,ak=ah['diff']||0x0;return ah['clusterNode']?ai['attr']('transform','translate('+(ah['x']+ak-ah['width']/0x2)+',\x20'+(ah['y']-ah['height']/0x2-aj)+')'):ai['attr']('transform','translate('+ah['x']+',\x20'+ah['y']+')'),ak;},bB(0xee));function It(ah,ai,aj=!0x1){const cS=bB,ak=ah;let al='default';(ak?.['classes']?.['length']||0x0)>0x0&&(al=(ak?.['classes']??[])[cS(0xc6)]('\x20')),al=al+cS(0xd1);let am=0x0,an='',ao;switch(ak[cS(0xd6)]){case'round':am=0x5,an=cS(0xae);break;case'composite':am=0x0,an='composite',ao=0x0;break;case'square':an='rect';break;case'diamond':an=cS(0xed);break;case cS(0xf4):an='hexagon';break;case'block_arrow':an='block_arrow';break;case'odd':an=cS(0x12a);break;case'lean_right':an='lean_right';break;case'lean_left':an='lean_left';break;case'trapezoid':an='trapezoid';break;case'inv_trapezoid':an='inv_trapezoid';break;case cS(0x12a):an=cS(0x12a);break;case'circle':an='circle';break;case'ellipse':an=cS(0x170);break;case'stadium':an='stadium';break;case'subroutine':an=cS(0x123);break;case'cylinder':an='cylinder';break;case'group':an=cS(0xae);break;case cS(0x138):an='doublecircle';break;default:an='rect';}const ap=S(ak?.['styles']??[]),aq=ak['label'],as=ak['size']??{'width':0x0,'height':0x0,'x':0x0,'y':0x0},au=ai[cS(0xdc)]();return{'labelStyle':ap[cS(0xf7)],'shape':an,'labelText':aq,'rx':am,'ry':am,'class':al,'style':ap['style'],'id':ak['id'],'domId':au?au+'-'+ak['id']:ak['id'],'directions':ak['directions'],'width':as['width'],'height':as[cS(0xd5)],'x':as['x'],'y':as['y'],'positioned':aj,'intersect':void 0x0,'type':ak['type'],'padding':ao??T()?.[cS(0x142)]?.['padding']??0x0,'widthInColumns':ak['widthInColumns']??0x1};}L(It,'getNodeFromBlock');async function be(ah,ai,aj){const cT=bB,ak=It(ai,aj,!0x1);if(ak['type']===cT(0x17e))return;const al=T(),am=await ye(ah,ak,{'config':al}),an=am['node']()['getBBox'](),ao=aj['getBlock'](ak['id']);ao['size']={'width':an['width'],'height':an['height'],'x':0x0,'y':0x0,'node':am},aj['setBlock'](ao),am['remove']();}L(be,bB(0x102));async function we(ah,ai,aj){const ak=It(ai,aj,!0x0);if(aj['getBlock'](ak['id'])['type']!=='space'){const al=T();await ye(ah,ak,{'config':al}),ai['intersect']=ak?.['intersect'],_a(ak);}}L(we,'insertBlockPositioned');async function gt(ah,ai,aj,ak){for(const al of ai)await ak(ah,al,aj),al['children']&&await gt(ah,al['children'],aj,ak);}L(gt,'performOperations');async function me(ah,ai,aj){await gt(ah,ai,aj,be);}L(me,bB(0x104));async function Se(ah,ai,aj){await gt(ah,ai,aj,we);}L(Se,'insertBlocks');async function Le(ah,ai,aj,ak,al){const cU=bB,am=new af({'multigraph':!0x0,'compound':!0x0});am['setGraph']({'rankdir':'TB','nodesep':0xa,'ranksep':0xa,'marginx':0x8,'marginy':0x8});for(const an of aj)an['size']&&am['setNode'](an['id'],{'width':an[cU(0x15c)]['width'],'height':an['size'][cU(0xd5)],'intersect':an['intersect']});for(const ao of ai)if(ao['start']&&ao['end']){const ap=ak['getBlock'](ao['start']),aq=ak['getBlock'](ao[cU(0xa8)]);if(ap?.[cU(0x15c)]&&aq?.['size']){const as=ap[cU(0x15c)],au=aq['size'],av=[{'x':as['x'],'y':as['y']},{'x':as['x']+(au['x']-as['x'])/0x2,'y':as['y']+(au['y']-as['y'])/0x2},{'x':au['x'],'y':au['y']}],aw=al?al+'-'+ao['id']:ao['id'],ax=ao['thickness']==='thick'?cU(0x1ac):cU(0x8f),ay=ao['pattern']==='dotted'?'edge-pattern-dotted':'edge-pattern-solid',az=ax+'\x20'+ay+'\x20flowchart-link\x20LS-a1\x20LE-b1';Gr(ah,{'v':ao['start'],'w':ao['end'],'name':aw},{...ao,'id':aw,'arrowTypeEnd':ao['arrowTypeEnd'],'arrowTypeStart':ao['arrowTypeStart'],'points':av,'classes':az},void 0x0,'block',am,al),ao[cU(0x111)]&&(await Ur(ah,{...ao,'label':ao['label'],'labelStyle':'stroke:\x20#333;\x20stroke-width:\x201.5px;fill:none;','arrowTypeEnd':ao[cU(0xa4)],'arrowTypeStart':ao['arrowTypeStart'],'points':av,'classes':az}),Xr({...ao,'x':av[0x1]['x'],'y':av[0x1]['y']},{'originalPath':av}));}}}L(Le,bB(0x193));var Ta=L(function(ah,ai){return ai['db']['getClasses']();},bB(0x11a)),Da=L(async function(ah,ai,aj,ak){const cV=bB,{securityLevel:al,block:am}=T(),an=ak['db'];an[cV(0x106)](ai);let ao;al==='sandbox'&&(ao=ab('#i'+ai));const ap=al==='sandbox'?ab(ao['nodes']()[0x0]['contentDocument']['body']):ab('body'),aq=al==='sandbox'?ap['select']('[id=\x22'+ai+'\x22]'):ab(cV(0xf3)+ai+'\x22]');Fr(aq,['point','circle','cross'],ak['type'],ai);const as=an['getBlocks'](),au=an['getBlocksFlat'](),av=an['getEdges'](),aw=aq[cV(0x174)]('g')['attr']('class','block');await me(aw,as,an);const ax=he(an);if(await Se(aw,as,an),await Le(aw,av,au,an,ai),ax){const ay=ax,az=Math['max'](0x1,Math['round'](0.125*(ay['width']/ay['height']))),aA=ay[cV(0xd5)]+az+0xa,aB=ay['width']+0xa,{useMaxWidth:aC}=am;a3(aq,aA,aB,!!aC),Q['debug']('Here\x20Bounds',ax,ay),aq['attr']('viewBox',ay['x']-0x5+'\x20'+(ay['y']-0x5)+'\x20'+(ay['width']+0xa)+'\x20'+(ay['height']+0xa));}},bB(0x160)),Ba={'draw':Da,'getClasses':Ta},Ma={'parser':sr,'db':Er,'renderer':Ba,'styles':Tr};export{Ma as diagram};
|