@flyfish-group/file-viewer3 1.0.18 → 1.0.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (267) hide show
  1. package/README.md +18 -15
  2. package/dist/components/3MFLoader.js +1 -1
  3. package/dist/components/AMFLoader.js +1 -1
  4. package/dist/components/AudioViewer.js +1 -1
  5. package/dist/components/CadViewer.js +1 -1
  6. package/dist/components/CodeViewer.js +1 -1
  7. package/dist/components/ColladaLoader.js +1 -1
  8. package/dist/components/DrawingViewer.js +1 -1
  9. package/dist/components/EdaViewer.js +1 -1
  10. package/dist/components/EmailViewer.js +1 -1
  11. package/dist/components/EpubViewer.js +1 -1
  12. package/dist/components/FBXLoader.js +1 -1
  13. package/dist/components/GLTFLoader.js +1 -1
  14. package/dist/components/ImageViewer.js +1 -1
  15. package/dist/components/KMZLoader.js +1 -1
  16. package/dist/components/MarkdownViewer.js +1 -1
  17. package/dist/components/ModelViewer.js +1 -1
  18. package/dist/components/OBJLoader.js +1 -1
  19. package/dist/components/OfdViewer.js +1 -1
  20. package/dist/components/PCDLoader.js +1 -1
  21. package/dist/components/PLYLoader.js +1 -1
  22. package/dist/components/PdfView.js +4823 -4785
  23. package/dist/components/PptxRender.js +1 -1
  24. package/dist/components/STLLoader.js +1 -1
  25. package/dist/components/TDSLoader.js +1 -1
  26. package/dist/components/TypstViewer.js +1671 -0
  27. package/dist/components/USDLoader.js +1 -1
  28. package/dist/components/UmdViewer.js +1 -1
  29. package/dist/components/VRMLLoader.js +1 -1
  30. package/dist/components/VTKLoader.js +1 -1
  31. package/dist/components/XYZLoader.js +1 -1
  32. package/dist/components/XlsxTable.js +1 -1
  33. package/dist/components/__vite-browser-external.js +1 -1
  34. package/dist/components/_plugin-vue_export-helper.js +1 -1
  35. package/dist/components/ar-SA-G6X2FPQ2.js +1 -1
  36. package/dist/components/arc.js +1 -1
  37. package/dist/components/architecture-7EHR7CIX.js +1 -1
  38. package/dist/components/architectureDiagram-3BPJPVTR.js +1 -1
  39. package/dist/components/archive.js +1 -1
  40. package/dist/components/asyncToGenerator.js +1 -1
  41. package/dist/components/audio.js +1 -1
  42. package/dist/components/az-AZ-76LH7QW2.js +1 -1
  43. package/dist/components/bash.js +1 -1
  44. package/dist/components/bg-BG-XCXSNQG7.js +1 -1
  45. package/dist/components/blockDiagram-GPEHLZMM.js +1 -1
  46. package/dist/components/bn-BD-2XOGV67Q.js +1 -1
  47. package/dist/components/c4Diagram-AAUBKEIU.js +1 -1
  48. package/dist/components/ca-ES-6MX7JW3Y.js +1 -1
  49. package/dist/components/cad.js +1 -1
  50. package/dist/components/cfb.js +1 -1
  51. package/dist/components/channel.js +1 -1
  52. package/dist/components/chunk-2J33WTMH.js +1 -1
  53. package/dist/components/chunk-3OPIFGDE.js +1 -1
  54. package/dist/components/chunk-4BX2VUAB.js +1 -1
  55. package/dist/components/chunk-55IACEB6.js +1 -1
  56. package/dist/components/chunk-5ZQYHXKU.js +1 -1
  57. package/dist/components/chunk-6U3AYISY.js +1 -1
  58. package/dist/components/chunk-727SXJPM.js +1 -1
  59. package/dist/components/chunk-AGHRB4JF.js +1 -1
  60. package/dist/components/chunk-AQP2D5EJ.js +1 -1
  61. package/dist/components/chunk-BSJP7CBP.js +1 -1
  62. package/dist/components/chunk-CSCIHK7Q.js +1 -1
  63. package/dist/components/chunk-FMBD7UC4.js +1 -1
  64. package/dist/components/chunk-K2UTITRG.js +1 -1
  65. package/dist/components/chunk-KSCS5N6A.js +1 -1
  66. package/dist/components/chunk-L5ZTLDWV.js +1 -1
  67. package/dist/components/chunk-LZXEDZCA.js +1 -1
  68. package/dist/components/chunk-ND2GUHAM.js +1 -1
  69. package/dist/components/chunk-NZK2D7GU.js +1 -1
  70. package/dist/components/chunk-O5CBEL6O.js +1 -1
  71. package/dist/components/chunk-QZHKN3VN.js +1 -1
  72. package/dist/components/chunk-SRAX5OIU.js +1 -1
  73. package/dist/components/chunk-WU5MYG2G.js +1 -1
  74. package/dist/components/chunk-XPW4576I.js +1 -1
  75. package/dist/components/chunk-Z3N5DIM6.js +1 -1
  76. package/dist/components/chunk-ZUYEQ4TG.js +1 -1
  77. package/dist/components/chunk.js +1 -1
  78. package/dist/components/classDiagram-4FO5ZUOK.js +1 -1
  79. package/dist/components/classDiagram-v2-Q7XG4LA2.js +1 -1
  80. package/dist/components/compiler.js +1 -0
  81. package/dist/components/core.js +1 -1
  82. package/dist/components/cose-bilkent-S5V4N54A.js +1 -1
  83. package/dist/components/cpp.js +1 -1
  84. package/dist/components/cs-CZ-2BRQDIVT.js +1 -1
  85. package/dist/components/csharp.js +1 -1
  86. package/dist/components/css.js +1 -1
  87. package/dist/components/cytoscape.esm.js +1 -1
  88. package/dist/components/da-DK-5WZEPLOC.js +1 -1
  89. package/dist/components/dagre-BM42HDAG.js +1 -1
  90. package/dist/components/dagre.js +1 -1
  91. package/dist/components/de-DE-XR44H4JA.js +1 -1
  92. package/dist/components/defaultLocale.js +1 -1
  93. package/dist/components/defineProperty.js +1 -1
  94. package/dist/components/diagram-2AECGRRQ.js +1 -1
  95. package/dist/components/diagram-5GNKFQAL.js +1 -1
  96. package/dist/components/diagram-KO2AKTUF.js +1 -1
  97. package/dist/components/diagram-LMA3HP47.js +1 -1
  98. package/dist/components/diagram-OG6HWLK6.js +1 -1
  99. package/dist/components/diff.js +1 -1
  100. package/dist/components/directory-open-01563666.js +1 -1
  101. package/dist/components/directory-open-4ed118d0.js +1 -1
  102. package/dist/components/dist.js +1 -1
  103. package/dist/components/dist2.js +1 -1
  104. package/dist/components/dist3.js +1 -1
  105. package/dist/components/docx-preview.js +1 -1
  106. package/dist/components/drawing.js +1 -1
  107. package/dist/components/ebook.js +1 -1
  108. package/dist/components/eda.js +1 -1
  109. package/dist/components/el-GR-BZB4AONW.js +1 -1
  110. package/dist/components/email.js +1 -1
  111. package/dist/components/en-B4ZKOASM.js +1 -1
  112. package/dist/components/erDiagram-TEJ5UH35.js +1 -1
  113. package/dist/components/es-ES-U4NZUMDT.js +1 -1
  114. package/dist/components/eu-ES-A7QVB2H4.js +1 -1
  115. package/dist/components/eventmodeling-FCH6USID.js +1 -1
  116. package/dist/components/fa-IR-HGAKTJCU.js +1 -1
  117. package/dist/components/fflate.module.js +1 -1
  118. package/dist/components/fi-FI-Z5N7JZ37.js +1 -1
  119. package/dist/components/file-open-002ab408.js +1 -1
  120. package/dist/components/file-open-7c801643.js +1 -1
  121. package/dist/components/file-save-3189631c.js +1 -1
  122. package/dist/components/file-save-745eba88.js +1 -1
  123. package/dist/components/flowDiagram-I6XJVG4X.js +1 -1
  124. package/dist/components/fr-FR-RHASNOE6.js +1 -1
  125. package/dist/components/ganttDiagram-6RSMTGT7.js +1 -1
  126. package/dist/components/gitGraph-WXDBUCRP.js +1 -1
  127. package/dist/components/gitGraphDiagram-PVQCEYII.js +1 -1
  128. package/dist/components/gl-ES-HMX3MZ6V.js +1 -1
  129. package/dist/components/global-compiler.js +1 -0
  130. package/dist/components/global-renderer.js +1 -0
  131. package/dist/components/go.js +1 -1
  132. package/dist/components/graphlib.js +1 -1
  133. package/dist/components/he-IL-6SHJWFNN.js +1 -1
  134. package/dist/components/hi-IN-IWLTKZ5I.js +1 -1
  135. package/dist/components/hu-HU-A5ZG7DT2.js +1 -1
  136. package/dist/components/id-ID-SAP4L64H.js +1 -1
  137. package/dist/components/image-GAAHSSAO.js +1 -1
  138. package/dist/components/image-blob-reduce.esm.js +1 -1
  139. package/dist/components/image.js +1 -1
  140. package/dist/components/info-J43DQDTF.js +1 -1
  141. package/dist/components/infoDiagram-5YYISTIA.js +1 -1
  142. package/dist/components/ini.js +1 -1
  143. package/dist/components/init.js +1 -1
  144. package/dist/components/ishikawaDiagram-YF4QCWOH.js +1 -1
  145. package/dist/components/it-IT-JPQ66NNP.js +1 -1
  146. package/dist/components/ja-JP-DBVTYXUO.js +1 -1
  147. package/dist/components/java.js +1 -1
  148. package/dist/components/javascript.js +1 -1
  149. package/dist/components/journeyDiagram-JHISSGLW.js +1 -1
  150. package/dist/components/json.js +1 -1
  151. package/dist/components/jszip.min.js +1 -1
  152. package/dist/components/kaa-6HZHGXH3.js +1 -1
  153. package/dist/components/kab-KAB-ZGHBKWFO.js +1 -1
  154. package/dist/components/kanban-definition-UN3LZRKU.js +1 -1
  155. package/dist/components/katex.js +1 -1
  156. package/dist/components/kk-KZ-P5N5QNE5.js +1 -1
  157. package/dist/components/km-KH-HSX4SM5Z.js +1 -1
  158. package/dist/components/ko-KR-MTYHY66A.js +1 -1
  159. package/dist/components/ku-TR-6OUDTVRD.js +1 -1
  160. package/dist/components/lib.js +1 -1
  161. package/dist/components/libarchive.js +1 -1
  162. package/dist/components/linear.js +1 -1
  163. package/dist/components/lt-LT-XHIRWOB4.js +1 -1
  164. package/dist/components/lv-LV-5QDEKY6T.js +1 -1
  165. package/dist/components/markdown.js +1 -1
  166. package/dist/components/md.js +1 -1
  167. package/dist/components/mermaid-parser.core.js +1 -1
  168. package/dist/components/mindmap-definition-RKZ34NQL.js +1 -1
  169. package/dist/components/model.js +1 -1
  170. package/dist/components/mp4.js +1 -1
  171. package/dist/components/mr-IN-CRQNXWMA.js +1 -1
  172. package/dist/components/my-MM-5M5IBNSE.js +1 -1
  173. package/dist/components/nb-NO-T6EIAALU.js +1 -1
  174. package/dist/components/nestedRender.js +1 -1
  175. package/dist/components/nl-NL-IS3SIHDZ.js +1 -1
  176. package/dist/components/nn-NO-6E72VCQL.js +1 -1
  177. package/dist/components/objectSpread2.js +1 -1
  178. package/dist/components/objectWithoutProperties.js +1 -1
  179. package/dist/components/oc-FR-POXYY2M6.js +1 -1
  180. package/dist/components/ofd.js +1 -1
  181. package/dist/components/ofd2.js +1 -1
  182. package/dist/components/ordinal.js +1 -1
  183. package/dist/components/pa-IN-N4M65BXN.js +1 -1
  184. package/dist/components/packet-YPE3B663.js +1 -1
  185. package/dist/components/pdf.js +1 -1
  186. package/dist/components/percentages-BXMCSKIN.js +1 -1
  187. package/dist/components/php.js +1 -1
  188. package/dist/components/pica.js +1 -1
  189. package/dist/components/pie-LRSECV5Y.js +1 -1
  190. package/dist/components/pie.js +1 -1
  191. package/dist/components/pieDiagram-4H26LBE5.js +1 -1
  192. package/dist/components/pl-PL-T2D74RX3.js +1 -1
  193. package/dist/components/postal-mime.js +1 -1
  194. package/dist/components/pptx.js +1 -1
  195. package/dist/components/printLayout.js +1 -0
  196. package/dist/components/prod.js +1 -1
  197. package/dist/components/pt-BR-5N22H2LF.js +1 -1
  198. package/dist/components/pt-PT-UZXXM6DQ.js +1 -1
  199. package/dist/components/python.js +1 -1
  200. package/dist/components/quadrantDiagram-W4KKPZXB.js +1 -1
  201. package/dist/components/radar-GUYGQ44K.js +1 -1
  202. package/dist/components/renderer.js +1 -0
  203. package/dist/components/requirementDiagram-4Y6WPE33.js +1 -1
  204. package/dist/components/ro-RO-JPDTUUEW.js +1 -1
  205. package/dist/components/rough.esm.js +1 -1
  206. package/dist/components/roundRect.js +1 -1
  207. package/dist/components/ru-RU-B4JR7IUQ.js +1 -1
  208. package/dist/components/rust.js +1 -1
  209. package/dist/components/sankeyDiagram-5OEKKPKP.js +1 -1
  210. package/dist/components/sequenceDiagram-3UESZ5HK.js +1 -1
  211. package/dist/components/shared.js +1 -1
  212. package/dist/components/shared2.js +1 -1
  213. package/dist/components/si-LK-N5RQ5JYF.js +1 -1
  214. package/dist/components/sk-SK-C5VTKIMK.js +1 -1
  215. package/dist/components/sl-SI-NN7IZMDC.js +1 -1
  216. package/dist/components/sourceLoading.js +1 -0
  217. package/dist/components/sql.js +1 -1
  218. package/dist/components/src.js +1 -1
  219. package/dist/components/src2.js +1 -1
  220. package/dist/components/stateDiagram-AJRCARHV.js +1 -1
  221. package/dist/components/stateDiagram-v2-BHNVJYJU.js +1 -1
  222. package/dist/components/subset-shared.chunk.js +1 -1
  223. package/dist/components/subset-worker.chunk.js +1 -1
  224. package/dist/components/sv-SE-XGPEYMSR.js +1 -1
  225. package/dist/components/ta-IN-2NMHFXQM.js +1 -1
  226. package/dist/components/text.js +1 -1
  227. package/dist/components/th-TH-HPSO5L25.js +1 -1
  228. package/dist/components/three.module.js +1 -1
  229. package/dist/components/time.js +1 -1
  230. package/dist/components/timeline-definition-PNZ67QCA.js +1 -1
  231. package/dist/components/tr-TR-DEFEU3FU.js +1 -1
  232. package/dist/components/treeView-BLDUP644.js +1 -1
  233. package/dist/components/treemap-LRROVOQU.js +1 -1
  234. package/dist/components/typescript.js +1 -1
  235. package/dist/components/typst.js +1 -0
  236. package/dist/components/uk-UA-QMV73CPH.js +1 -1
  237. package/dist/components/umd.js +1 -1
  238. package/dist/components/use.js +1 -1
  239. package/dist/components/util.js +1 -1
  240. package/dist/components/vennDiagram-CIIHVFJN.js +1 -1
  241. package/dist/components/vi-VN-M7AON7JQ.js +1 -1
  242. package/dist/components/wardley-L42UT6IY.js +1 -1
  243. package/dist/components/wardleyDiagram-YWT4CUSO.js +1 -1
  244. package/dist/components/wasm-pack-shim.js +1 -0
  245. package/dist/components/wasm-pack-shim2.js +1 -0
  246. package/dist/components/wasm.js +1 -0
  247. package/dist/components/word.js +1 -1
  248. package/dist/components/worker-ref.js +1 -1
  249. package/dist/components/xlsx.js +1 -1
  250. package/dist/components/xml.js +1 -1
  251. package/dist/components/xychartDiagram-2RQKCTM6.js +1 -1
  252. package/dist/components/yaml.js +1 -1
  253. package/dist/components/zh-CN-LNUGB5OW.js +1 -1
  254. package/dist/components/zh-HK-E62DVLB3.js +1 -1
  255. package/dist/components/zh-TW-RAJ6MFWO.js +1 -1
  256. package/dist/file-viewer3.css +1 -1
  257. package/dist/index.mjs +1 -1
  258. package/dist/src/package/common/printLayout.d.ts +16 -0
  259. package/dist/src/package/common/sourceLoading.d.ts +10 -0
  260. package/dist/src/package/common/type.d.ts +38 -1
  261. package/dist/src/package/components/FileViewer/exportDocumentTemplate.d.ts +9 -0
  262. package/dist/src/package/components/FileViewer/useViewerExport.d.ts +21 -0
  263. package/dist/src/package/vendors/pdf/PdfView.vue.d.ts +2 -1
  264. package/dist/src/package/vendors/typst/TypstViewer.vue.d.ts +15 -0
  265. package/dist/src/package/vendors/typst/index.d.ts +8 -0
  266. package/package.json +5 -1
  267. package/dist/components/wrapAsyncGenerator.js +0 -1
@@ -1 +1 @@
1
- function a0(a,b){a=a-0xc0;const d=c();let e=d[a];return e;}const c7=a0;function c(){const cS=['display','textLines','fontFamily','system_db','lex','diagramMarginX',';\x0a\x20\x20\x20\x20fill:\x20','values','none','addComponent','3PnIxqs','372707WElHlh','Point','cnt','parseError','max','tags','nodeL','external_component','#FFFFFF','techn','clip-rule','wrap','byTspan','setConf','conditionStack','tspan','286648ZHYxOF','birel','push','rel_b','setDirection','direction_lr','20AhrCMS','container_queue','symbol','addPersonOrSystemBoundary','yylineno','middle','accDescription','7.0,7.0','personFontWeight','half','#444444','component_queue','-arrowhead)','COMPONENT_EXT','pop','container_db','defs','insertArrowHead','FontFamily','alias','fontSize','parser','height','less','setData','stateStackSize','from','unput','_input','global','margin','_backtrack','system_ext_queue','auto','starty','typeC4Shape','startPoint','match','acc_descr_multiline_value','bumpLastMargin','descr','c4ShapeFont','_currentRules','trim','substring','yyleng','offset','refX','attr','addDeploymentNode','component_db','NEWLINE','fontWeight','data','updateVal','drawC4Shape','-database','Parse\x20error\x20on\x20line\x20','end\x20of\x20input','fontColor','INITIAL','rel_u','diagramMarginY','image','ranges','textPlacement','text-anchor','type','2327013zHQDiV','C4_CONTAINER','offsetX','last_line','COMPONENT_EXT_QUEUE','update_el_style','external_component_db','find','concat','call','messageFont','evenodd','refY','bgColor','messageFontFamily','split','endPoint','external_person','begin','C4_CONTEXT','unshift','orient','url(#','symbols_','UPDATE_LAYOUT_CONFIG','replaceAll','stroke','performAction','min','sandbox','link','text','style','EOL','length','REL_INDEX','stopx','systemFontFamily','CONTAINER','nextLinePaddingX','getC4Type','startx','SYSTEM','yylloc','fill','last_column','-crosshead','getRels','insertArrowFilledHead','63HgNDAO','boundaryFontFamily','system_queue','mathematical','test_match','1370545wdLoan','widthLimit','slice','EOF','_more','insertDatabaseIcon','setAccDescription','addRel','substr','addPersonOrSystem','font-family','sprite','Mstartx,startyc0,10\x20half,10\x20half,10c0,0\x20half,0\x20half,-10','append','matches','flex','hasOwnProperty','entries','popState','width','markerWidth','0,\x200','FontWeight','label','M\x2010\x200\x20L\x200\x205\x20L\x2010\x2010\x20z','UPDATE_REL_STYLE','2184332KUoupc','external_system_db','showPosition','\x0aExpecting\x20','marker-end','range','C4Dynamic','updateRelStyle','nextData','478190FjZOIQ','acc_title','setInput','stopy','init','getC4ShapeInRow','yytext','textColor','CONTAINER_EXT_DB','object','path','1304946TyBJkQ','container_ext_db','getPrototypeOf','person','setTitle'];c=function(){return cS;};return c();}(function(ak,al){const bO=a0,am=ak();while(!![]){try{const an=-parseInt(bO(0xcc))/0x1+-parseInt(bO(0x17f))/0x2*(parseInt(bO(0xcb))/0x3)+parseInt(bO(0x176))/0x4+parseInt(bO(0x15c))/0x5+parseInt(bO(0x18a))/0x6+parseInt(bO(0x157))/0x7*(-parseInt(bO(0xdc))/0x8)+parseInt(bO(0x126))/0x9*(parseInt(bO(0xe2))/0xa);if(an===al)break;else am['push'](am['shift']());}catch(ao){am['push'](am['shift']());}}}(c,0x977e4));import{n as a1,r as a2}from'./chunk-AGHRB4JF.js';import{H as a3,U as a4,c as a5,r as a6,s as a7,v as a8,x as a9,y as aa,z as ab}from'./chunk-CSCIHK7Q.js';import{Q as ac}from'./src.js';import{_ as ad,n as af,r as ag}from'./chunk-5ZQYHXKU.js';import{t as ah}from'./dist2.js';import{a as ai,s as aj}from'./chunk-ND2GUHAM.js';var y=ah(),b,x,S=(function(){const bP=a0;var ak=a1(function(bh,bi,bj,bk){for(bj=bj||{},bk=bh['length'];bk--;bj[bh[bk]]=bi);return bj;},'o'),al=[0x1,0x18],am=[0x1,0x19],an=[0x1,0x1a],ao=[0x1,0x1b],ap=[0x1,0x1c],aq=[0x1,0x3f],ar=[0x1,0x40],as=[0x1,0x41],at=[0x1,0x42],au=[0x1,0x43],av=[0x1,0x44],aw=[0x1,0x45],ax=[0x1,0x1d],ay=[0x1,0x1e],az=[0x1,0x1f],aA=[0x1,0x20],aB=[0x1,0x21],aC=[0x1,0x22],aD=[0x1,0x23],aE=[0x1,0x24],aF=[0x1,0x25],aG=[0x1,0x26],aH=[0x1,0x27],aI=[0x1,0x28],aJ=[0x1,0x29],aK=[0x1,0x2a],aL=[0x1,0x2b],aM=[0x1,0x2c],aN=[0x1,0x2d],aO=[0x1,0x2e],aP=[0x1,0x2f],aQ=[0x1,0x30],aR=[0x1,0x32],aS=[0x1,0x33],aT=[0x1,0x34],aU=[0x1,0x35],aV=[0x1,0x36],aW=[0x1,0x37],aX=[0x1,0x38],aY=[0x1,0x39],aZ=[0x1,0x3a],b0=[0x1,0x3b],b1=[0x1,0x3c],b2=[0xe,0x2a],b3=[0xe,0x22,0x24,0x25,0x26,0x27,0x28,0x29,0x2a,0x2c,0x2d,0x2e,0x2f,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3a,0x3b,0x3c,0x3d,0x3e,0x3f,0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a],b4=[0xc,0xe,0x22,0x24,0x25,0x26,0x27,0x28,0x29,0x2a,0x2c,0x2d,0x2e,0x2f,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3a,0x3b,0x3c,0x3d,0x3e,0x3f,0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a],b5=[0x1,0x52],b6=[0x1,0x53],b7=[0x1,0x54],b8=[0x1,0x55],b9=[0xc,0xe,0x2a],ba=[0xc,0xe,0x21,0x2a],bb=[0xc,0xe,0x21,0x2a,0x4c,0x4d,0x4f,0x50],bc=[0xc,0x21],bd=[0x22,0x24,0x25,0x26,0x27,0x28,0x29,0x2c,0x2d,0x2e,0x2f,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3a,0x3b,0x3c,0x3d,0x3e,0x3f,0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a],bf={'trace':a1(function(){},'trace'),'yy':{},'symbols_':{'error':0x2,'start':0x3,'mermaidDoc':0x4,'direction':0x5,'direction_tb':0x6,'direction_bt':0x7,'direction_rl':0x8,'direction_lr':0x9,'graphConfig':0xa,'C4_CONTEXT':0xb,'NEWLINE':0xc,'statements':0xd,'EOF':0xe,'C4_CONTAINER':0xf,'C4_COMPONENT':0x10,'C4_DYNAMIC':0x11,'C4_DEPLOYMENT':0x12,'otherStatements':0x13,'diagramStatements':0x14,'otherStatement':0x15,'title':0x16,'accDescription':0x17,'acc_title':0x18,'acc_title_value':0x19,'acc_descr':0x1a,'acc_descr_value':0x1b,'acc_descr_multiline_value':0x1c,'boundaryStatement':0x1d,'boundaryStartStatement':0x1e,'boundaryStopStatement':0x1f,'boundaryStart':0x20,'LBRACE':0x21,'ENTERPRISE_BOUNDARY':0x22,'attributes':0x23,'SYSTEM_BOUNDARY':0x24,'BOUNDARY':0x25,'CONTAINER_BOUNDARY':0x26,'NODE':0x27,'NODE_L':0x28,'NODE_R':0x29,'RBRACE':0x2a,'diagramStatement':0x2b,'PERSON':0x2c,'PERSON_EXT':0x2d,'SYSTEM':0x2e,'SYSTEM_DB':0x2f,'SYSTEM_QUEUE':0x30,'SYSTEM_EXT':0x31,'SYSTEM_EXT_DB':0x32,'SYSTEM_EXT_QUEUE':0x33,'CONTAINER':0x34,'CONTAINER_DB':0x35,'CONTAINER_QUEUE':0x36,'CONTAINER_EXT':0x37,'CONTAINER_EXT_DB':0x38,'CONTAINER_EXT_QUEUE':0x39,'COMPONENT':0x3a,'COMPONENT_DB':0x3b,'COMPONENT_QUEUE':0x3c,'COMPONENT_EXT':0x3d,'COMPONENT_EXT_DB':0x3e,'COMPONENT_EXT_QUEUE':0x3f,'REL':0x40,'BIREL':0x41,'REL_U':0x42,'REL_D':0x43,'REL_L':0x44,'REL_R':0x45,'REL_B':0x46,'REL_INDEX':0x47,'UPDATE_EL_STYLE':0x48,'UPDATE_REL_STYLE':0x49,'UPDATE_LAYOUT_CONFIG':0x4a,'attribute':0x4b,'STR':0x4c,'STR_KEY':0x4d,'STR_VALUE':0x4e,'ATTRIBUTE':0x4f,'ATTRIBUTE_EMPTY':0x50,'$accept':0x0,'$end':0x1},'terminals_':{0x2:'error',0x6:'direction_tb',0x7:'direction_bt',0x8:'direction_rl',0x9:bP(0xe1),0xb:bP(0x139),0xc:bP(0x115),0xe:bP(0x15f),0xf:bP(0x127),0x10:'C4_COMPONENT',0x11:'C4_DYNAMIC',0x12:'C4_DEPLOYMENT',0x16:'title',0x17:bP(0xe8),0x18:bP(0x180),0x19:'acc_title_value',0x1a:'acc_descr',0x1b:'acc_descr_value',0x1c:'acc_descr_multiline_value',0x21:'LBRACE',0x22:'ENTERPRISE_BOUNDARY',0x24:'SYSTEM_BOUNDARY',0x25:'BOUNDARY',0x26:'CONTAINER_BOUNDARY',0x27:'NODE',0x28:'NODE_L',0x29:'NODE_R',0x2a:'RBRACE',0x2c:'PERSON',0x2d:'PERSON_EXT',0x2e:'SYSTEM',0x2f:'SYSTEM_DB',0x30:'SYSTEM_QUEUE',0x31:'SYSTEM_EXT',0x32:'SYSTEM_EXT_DB',0x33:'SYSTEM_EXT_QUEUE',0x34:bP(0x14c),0x35:'CONTAINER_DB',0x36:'CONTAINER_QUEUE',0x37:'CONTAINER_EXT',0x38:bP(0x187),0x39:'CONTAINER_EXT_QUEUE',0x3a:'COMPONENT',0x3b:'COMPONENT_DB',0x3c:'COMPONENT_QUEUE',0x3d:bP(0xef),0x3e:'COMPONENT_EXT_DB',0x3f:bP(0x12a),0x40:'REL',0x41:'BIREL',0x42:'REL_U',0x43:'REL_D',0x44:'REL_L',0x45:'REL_R',0x46:'REL_B',0x47:bP(0x149),0x48:'UPDATE_EL_STYLE',0x49:bP(0x175),0x4a:bP(0x13e),0x4c:'STR',0x4d:'STR_KEY',0x4e:'STR_VALUE',0x4f:'ATTRIBUTE',0x50:'ATTRIBUTE_EMPTY'},'productions_':[0x0,[0x3,0x1],[0x3,0x1],[0x5,0x1],[0x5,0x1],[0x5,0x1],[0x5,0x1],[0x4,0x1],[0xa,0x4],[0xa,0x4],[0xa,0x4],[0xa,0x4],[0xa,0x4],[0xd,0x1],[0xd,0x1],[0xd,0x2],[0x13,0x1],[0x13,0x2],[0x13,0x3],[0x15,0x1],[0x15,0x1],[0x15,0x2],[0x15,0x2],[0x15,0x1],[0x1d,0x3],[0x1e,0x3],[0x1e,0x3],[0x1e,0x4],[0x20,0x2],[0x20,0x2],[0x20,0x2],[0x20,0x2],[0x20,0x2],[0x20,0x2],[0x20,0x2],[0x1f,0x1],[0x14,0x1],[0x14,0x2],[0x14,0x3],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x1],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x23,0x1],[0x23,0x2],[0x4b,0x1],[0x4b,0x2],[0x4b,0x1],[0x4b,0x1]],'performAction':a1(function(bh,bi,bj,bk,bl,bm,bn){const bQ=bP;var bo=bm[bQ(0x148)]-0x1;switch(bl){case 0x3:bk['setDirection']('TB');break;case 0x4:bk[bQ(0xe0)]('BT');break;case 0x5:bk[bQ(0xe0)]('RL');break;case 0x6:bk[bQ(0xe0)]('LR');break;case 0x8:case 0x9:case 0xa:case 0xb:case 0xc:bk['setC4Type'](bm[bo-0x3]);break;case 0x13:bk[bQ(0xc0)](bm[bo]['substring'](0x6)),this['$']=bm[bo]['substring'](0x6);break;case 0x14:bk[bQ(0x162)](bm[bo][bQ(0x10e)](0xf)),this['$']=bm[bo]['substring'](0xf);break;case 0x15:this['$']=bm[bo]['trim'](),bk['setTitle'](this['$']);break;case 0x16:case 0x17:this['$']=bm[bo][bQ(0x10d)](),bk['setAccDescription'](this['$']);break;case 0x1c:bm[bo]['splice'](0x2,0x0,'ENTERPRISE'),bk[bQ(0xe5)](...bm[bo]),this['$']=bm[bo];break;case 0x1d:bm[bo]['splice'](0x2,0x0,bQ(0x150)),bk['addPersonOrSystemBoundary'](...bm[bo]),this['$']=bm[bo];break;case 0x1e:bk[bQ(0xe5)](...bm[bo]),this['$']=bm[bo];break;case 0x1f:bm[bo]['splice'](0x2,0x0,'CONTAINER'),bk['addContainerBoundary'](...bm[bo]),this['$']=bm[bo];break;case 0x20:bk[bQ(0x113)]('node',...bm[bo]),this['$']=bm[bo];break;case 0x21:bk['addDeploymentNode'](bQ(0xd2),...bm[bo]),this['$']=bm[bo];break;case 0x22:bk['addDeploymentNode']('nodeR',...bm[bo]),this['$']=bm[bo];break;case 0x23:bk['popBoundaryParseStack']();break;case 0x27:bk[bQ(0x165)]('person',...bm[bo]),this['$']=bm[bo];break;case 0x28:bk['addPersonOrSystem']('external_person',...bm[bo]),this['$']=bm[bo];break;case 0x29:bk[bQ(0x165)]('system',...bm[bo]),this['$']=bm[bo];break;case 0x2a:bk['addPersonOrSystem']('system_db',...bm[bo]),this['$']=bm[bo];break;case 0x2b:bk['addPersonOrSystem']('system_queue',...bm[bo]),this['$']=bm[bo];break;case 0x2c:bk['addPersonOrSystem']('external_system',...bm[bo]),this['$']=bm[bo];break;case 0x2d:bk['addPersonOrSystem']('external_system_db',...bm[bo]),this['$']=bm[bo];break;case 0x2e:bk[bQ(0x165)]('external_system_queue',...bm[bo]),this['$']=bm[bo];break;case 0x2f:bk['addContainer']('container',...bm[bo]),this['$']=bm[bo];break;case 0x30:bk['addContainer']('container_db',...bm[bo]),this['$']=bm[bo];break;case 0x31:bk['addContainer']('container_queue',...bm[bo]),this['$']=bm[bo];break;case 0x32:bk['addContainer']('external_container',...bm[bo]),this['$']=bm[bo];break;case 0x33:bk['addContainer']('external_container_db',...bm[bo]),this['$']=bm[bo];break;case 0x34:bk['addContainer']('external_container_queue',...bm[bo]),this['$']=bm[bo];break;case 0x35:bk['addComponent']('component',...bm[bo]),this['$']=bm[bo];break;case 0x36:bk['addComponent'](bQ(0x114),...bm[bo]),this['$']=bm[bo];break;case 0x37:bk['addComponent'](bQ(0xed),...bm[bo]),this['$']=bm[bo];break;case 0x38:bk['addComponent']('external_component',...bm[bo]),this['$']=bm[bo];break;case 0x39:bk['addComponent'](bQ(0x12c),...bm[bo]),this['$']=bm[bo];break;case 0x3a:bk['addComponent']('external_component_queue',...bm[bo]),this['$']=bm[bo];break;case 0x3c:bk['addRel']('rel',...bm[bo]),this['$']=bm[bo];break;case 0x3d:bk['addRel']('birel',...bm[bo]),this['$']=bm[bo];break;case 0x3e:bk['addRel']('rel_u',...bm[bo]),this['$']=bm[bo];break;case 0x3f:bk['addRel']('rel_d',...bm[bo]),this['$']=bm[bo];break;case 0x40:bk['addRel']('rel_l',...bm[bo]),this['$']=bm[bo];break;case 0x41:bk['addRel']('rel_r',...bm[bo]),this['$']=bm[bo];break;case 0x42:bk['addRel']('rel_b',...bm[bo]),this['$']=bm[bo];break;case 0x43:bm[bo]['splice'](0x0,0x1),bk['addRel']('rel',...bm[bo]),this['$']=bm[bo];break;case 0x44:bk['updateElStyle'](bQ(0x12b),...bm[bo]),this['$']=bm[bo];break;case 0x45:bk['updateRelStyle']('update_rel_style',...bm[bo]),this['$']=bm[bo];break;case 0x46:bk['updateLayoutConfig']('update_layout_config',...bm[bo]),this['$']=bm[bo];break;case 0x47:this['$']=[bm[bo]];break;case 0x48:bm[bo][bQ(0x13a)](bm[bo-0x1]),this['$']=bm[bo];break;case 0x49:case 0x4b:this['$']=bm[bo]['trim']();break;case 0x4a:let bp={};bp[bm[bo-0x1]['trim']()]=bm[bo][bQ(0x10d)](),this['$']=bp;break;case 0x4c:this['$']='';break;}},'anonymous'),'table':[{0x3:0x1,0x4:0x2,0x5:0x3,0x6:[0x1,0x5],0x7:[0x1,0x6],0x8:[0x1,0x7],0x9:[0x1,0x8],0xa:0x4,0xb:[0x1,0x9],0xf:[0x1,0xa],0x10:[0x1,0xb],0x11:[0x1,0xc],0x12:[0x1,0xd]},{0x1:[0x3]},{0x1:[0x2,0x1]},{0x1:[0x2,0x2]},{0x1:[0x2,0x7]},{0x1:[0x2,0x3]},{0x1:[0x2,0x4]},{0x1:[0x2,0x5]},{0x1:[0x2,0x6]},{0xc:[0x1,0xe]},{0xc:[0x1,0xf]},{0xc:[0x1,0x10]},{0xc:[0x1,0x11]},{0xc:[0x1,0x12]},{0xd:0x13,0x13:0x14,0x14:0x15,0x15:0x16,0x16:al,0x17:am,0x18:an,0x1a:ao,0x1c:ap,0x1d:0x31,0x1e:0x3d,0x20:0x3e,0x22:aq,0x24:ar,0x25:as,0x26:at,0x27:au,0x28:av,0x29:aw,0x2b:0x17,0x2c:ax,0x2d:ay,0x2e:az,0x2f:aA,0x30:aB,0x31:aC,0x32:aD,0x33:aE,0x34:aF,0x35:aG,0x36:aH,0x37:aI,0x38:aJ,0x39:aK,0x3a:aL,0x3b:aM,0x3c:aN,0x3d:aO,0x3e:aP,0x3f:aQ,0x40:aR,0x41:aS,0x42:aT,0x43:aU,0x44:aV,0x45:aW,0x46:aX,0x47:aY,0x48:aZ,0x49:b0,0x4a:b1},{0xd:0x46,0x13:0x14,0x14:0x15,0x15:0x16,0x16:al,0x17:am,0x18:an,0x1a:ao,0x1c:ap,0x1d:0x31,0x1e:0x3d,0x20:0x3e,0x22:aq,0x24:ar,0x25:as,0x26:at,0x27:au,0x28:av,0x29:aw,0x2b:0x17,0x2c:ax,0x2d:ay,0x2e:az,0x2f:aA,0x30:aB,0x31:aC,0x32:aD,0x33:aE,0x34:aF,0x35:aG,0x36:aH,0x37:aI,0x38:aJ,0x39:aK,0x3a:aL,0x3b:aM,0x3c:aN,0x3d:aO,0x3e:aP,0x3f:aQ,0x40:aR,0x41:aS,0x42:aT,0x43:aU,0x44:aV,0x45:aW,0x46:aX,0x47:aY,0x48:aZ,0x49:b0,0x4a:b1},{0xd:0x47,0x13:0x14,0x14:0x15,0x15:0x16,0x16:al,0x17:am,0x18:an,0x1a:ao,0x1c:ap,0x1d:0x31,0x1e:0x3d,0x20:0x3e,0x22:aq,0x24:ar,0x25:as,0x26:at,0x27:au,0x28:av,0x29:aw,0x2b:0x17,0x2c:ax,0x2d:ay,0x2e:az,0x2f:aA,0x30:aB,0x31:aC,0x32:aD,0x33:aE,0x34:aF,0x35:aG,0x36:aH,0x37:aI,0x38:aJ,0x39:aK,0x3a:aL,0x3b:aM,0x3c:aN,0x3d:aO,0x3e:aP,0x3f:aQ,0x40:aR,0x41:aS,0x42:aT,0x43:aU,0x44:aV,0x45:aW,0x46:aX,0x47:aY,0x48:aZ,0x49:b0,0x4a:b1},{0xd:0x48,0x13:0x14,0x14:0x15,0x15:0x16,0x16:al,0x17:am,0x18:an,0x1a:ao,0x1c:ap,0x1d:0x31,0x1e:0x3d,0x20:0x3e,0x22:aq,0x24:ar,0x25:as,0x26:at,0x27:au,0x28:av,0x29:aw,0x2b:0x17,0x2c:ax,0x2d:ay,0x2e:az,0x2f:aA,0x30:aB,0x31:aC,0x32:aD,0x33:aE,0x34:aF,0x35:aG,0x36:aH,0x37:aI,0x38:aJ,0x39:aK,0x3a:aL,0x3b:aM,0x3c:aN,0x3d:aO,0x3e:aP,0x3f:aQ,0x40:aR,0x41:aS,0x42:aT,0x43:aU,0x44:aV,0x45:aW,0x46:aX,0x47:aY,0x48:aZ,0x49:b0,0x4a:b1},{0xd:0x49,0x13:0x14,0x14:0x15,0x15:0x16,0x16:al,0x17:am,0x18:an,0x1a:ao,0x1c:ap,0x1d:0x31,0x1e:0x3d,0x20:0x3e,0x22:aq,0x24:ar,0x25:as,0x26:at,0x27:au,0x28:av,0x29:aw,0x2b:0x17,0x2c:ax,0x2d:ay,0x2e:az,0x2f:aA,0x30:aB,0x31:aC,0x32:aD,0x33:aE,0x34:aF,0x35:aG,0x36:aH,0x37:aI,0x38:aJ,0x39:aK,0x3a:aL,0x3b:aM,0x3c:aN,0x3d:aO,0x3e:aP,0x3f:aQ,0x40:aR,0x41:aS,0x42:aT,0x43:aU,0x44:aV,0x45:aW,0x46:aX,0x47:aY,0x48:aZ,0x49:b0,0x4a:b1},{0xe:[0x1,0x4a]},ak(b2,[0x2,0xd],{0x2b:0x17,0x1d:0x31,0x1e:0x3d,0x20:0x3e,0x14:0x4b,0x22:aq,0x24:ar,0x25:as,0x26:at,0x27:au,0x28:av,0x29:aw,0x2c:ax,0x2d:ay,0x2e:az,0x2f:aA,0x30:aB,0x31:aC,0x32:aD,0x33:aE,0x34:aF,0x35:aG,0x36:aH,0x37:aI,0x38:aJ,0x39:aK,0x3a:aL,0x3b:aM,0x3c:aN,0x3d:aO,0x3e:aP,0x3f:aQ,0x40:aR,0x41:aS,0x42:aT,0x43:aU,0x44:aV,0x45:aW,0x46:aX,0x47:aY,0x48:aZ,0x49:b0,0x4a:b1}),ak(b2,[0x2,0xe]),ak(b3,[0x2,0x10],{0xc:[0x1,0x4c]}),ak(b2,[0x2,0x24],{0xc:[0x1,0x4d]}),ak(b4,[0x2,0x13]),ak(b4,[0x2,0x14]),{0x19:[0x1,0x4e]},{0x1b:[0x1,0x4f]},ak(b4,[0x2,0x17]),{0x23:0x50,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x56,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x57,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x58,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x59,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x5a,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x5b,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x5c,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x5d,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x5e,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x5f,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x60,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x61,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x62,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x63,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x64,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x65,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x66,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x67,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x68,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},ak(b9,[0x2,0x3b]),{0x23:0x69,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x6a,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x6b,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x6c,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x6d,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x6e,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x6f,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x70,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x71,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x72,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x73,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x14:0x74,0x1d:0x31,0x1e:0x3d,0x20:0x3e,0x22:aq,0x24:ar,0x25:as,0x26:at,0x27:au,0x28:av,0x29:aw,0x2b:0x17,0x2c:ax,0x2d:ay,0x2e:az,0x2f:aA,0x30:aB,0x31:aC,0x32:aD,0x33:aE,0x34:aF,0x35:aG,0x36:aH,0x37:aI,0x38:aJ,0x39:aK,0x3a:aL,0x3b:aM,0x3c:aN,0x3d:aO,0x3e:aP,0x3f:aQ,0x40:aR,0x41:aS,0x42:aT,0x43:aU,0x44:aV,0x45:aW,0x46:aX,0x47:aY,0x48:aZ,0x49:b0,0x4a:b1},{0xc:[0x1,0x76],0x21:[0x1,0x75]},{0x23:0x77,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x78,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x79,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x7a,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x7b,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x7c,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x7d,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0xe:[0x1,0x7e]},{0xe:[0x1,0x7f]},{0xe:[0x1,0x80]},{0xe:[0x1,0x81]},{0x1:[0x2,0x8]},ak(b2,[0x2,0xf]),ak(b3,[0x2,0x11],{0x15:0x16,0x13:0x82,0x16:al,0x17:am,0x18:an,0x1a:ao,0x1c:ap}),ak(b2,[0x2,0x25],{0x13:0x14,0x14:0x15,0x15:0x16,0x2b:0x17,0x1d:0x31,0x1e:0x3d,0x20:0x3e,0xd:0x83,0x16:al,0x17:am,0x18:an,0x1a:ao,0x1c:ap,0x22:aq,0x24:ar,0x25:as,0x26:at,0x27:au,0x28:av,0x29:aw,0x2c:ax,0x2d:ay,0x2e:az,0x2f:aA,0x30:aB,0x31:aC,0x32:aD,0x33:aE,0x34:aF,0x35:aG,0x36:aH,0x37:aI,0x38:aJ,0x39:aK,0x3a:aL,0x3b:aM,0x3c:aN,0x3d:aO,0x3e:aP,0x3f:aQ,0x40:aR,0x41:aS,0x42:aT,0x43:aU,0x44:aV,0x45:aW,0x46:aX,0x47:aY,0x48:aZ,0x49:b0,0x4a:b1}),ak(b4,[0x2,0x15]),ak(b4,[0x2,0x16]),ak(b9,[0x2,0x27]),ak(ba,[0x2,0x47],{0x4b:0x51,0x23:0x84,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8}),ak(bb,[0x2,0x49]),{0x4e:[0x1,0x85]},ak(bb,[0x2,0x4b]),ak(bb,[0x2,0x4c]),ak(b9,[0x2,0x28]),ak(b9,[0x2,0x29]),ak(b9,[0x2,0x2a]),ak(b9,[0x2,0x2b]),ak(b9,[0x2,0x2c]),ak(b9,[0x2,0x2d]),ak(b9,[0x2,0x2e]),ak(b9,[0x2,0x2f]),ak(b9,[0x2,0x30]),ak(b9,[0x2,0x31]),ak(b9,[0x2,0x32]),ak(b9,[0x2,0x33]),ak(b9,[0x2,0x34]),ak(b9,[0x2,0x35]),ak(b9,[0x2,0x36]),ak(b9,[0x2,0x37]),ak(b9,[0x2,0x38]),ak(b9,[0x2,0x39]),ak(b9,[0x2,0x3a]),ak(b9,[0x2,0x3c]),ak(b9,[0x2,0x3d]),ak(b9,[0x2,0x3e]),ak(b9,[0x2,0x3f]),ak(b9,[0x2,0x40]),ak(b9,[0x2,0x41]),ak(b9,[0x2,0x42]),ak(b9,[0x2,0x43]),ak(b9,[0x2,0x44]),ak(b9,[0x2,0x45]),ak(b9,[0x2,0x46]),{0x1f:0x86,0x2a:[0x1,0x87]},{0xc:[0x1,0x88]},{0x21:[0x1,0x89]},ak(bc,[0x2,0x1c]),ak(bc,[0x2,0x1d]),ak(bc,[0x2,0x1e]),ak(bc,[0x2,0x1f]),ak(bc,[0x2,0x20]),ak(bc,[0x2,0x21]),ak(bc,[0x2,0x22]),{0x1:[0x2,0x9]},{0x1:[0x2,0xa]},{0x1:[0x2,0xb]},{0x1:[0x2,0xc]},ak(b3,[0x2,0x12]),ak(b2,[0x2,0x26]),ak(ba,[0x2,0x48]),ak(bb,[0x2,0x4a]),ak(b9,[0x2,0x18]),ak(b9,[0x2,0x23]),ak(bd,[0x2,0x19]),ak(bd,[0x2,0x1a],{0xc:[0x1,0x8a]}),ak(bd,[0x2,0x1b])],'defaultActions':{0x2:[0x2,0x1],0x3:[0x2,0x2],0x4:[0x2,0x7],0x5:[0x2,0x3],0x6:[0x2,0x4],0x7:[0x2,0x5],0x8:[0x2,0x6],0x4a:[0x2,0x8],0x7e:[0x2,0x9],0x7f:[0x2,0xa],0x80:[0x2,0xb],0x81:[0x2,0xc]},'parseError':a1(function(bh,bi){if(bi['recoverable'])this['trace'](bh);else{var bj=Error(bh);throw bj['hash']=bi,bj;}},'parseError'),'parse':a1(function(bh){const bR=bP;var bi=this,bj=[0x0],bk=[],bl=[null],bm=[],bn=this['table'],bo='',bp=0x0,bq=0x0,br=0x0,bs=0x2,bt=0x1,bu=bm['slice']['call'](arguments,0x1),bv=Object['create'](this['lexer']),bw={'yy':{}};for(var bx in this['yy'])Object['prototype'][bR(0x16c)]['call'](this['yy'],bx)&&(bw['yy'][bx]=this['yy'][bx]);bv['setInput'](bh,bw['yy']),bw['yy']['lexer']=bv,bw['yy']['parser']=this,bv['yylloc']===void 0x0&&(bv['yylloc']={});var by=bv['yylloc'];bm[bR(0xde)](by);var bz=bv['options']&&bv['options']['ranges'];typeof bw['yy']['parseError']=='function'?this['parseError']=bw['yy']['parseError']:this[bR(0xcf)]=Object[bR(0x18c)](this)['parseError'];function bA(bN){const bS=bR;bj[bS(0x148)]-=0x2*bN,bl['length']-=bN,bm['length']-=bN;}a1(bA,'popStack');function bB(){const bT=bR;var bN=bk[bT(0xf0)]()||bv[bT(0xc5)]()||bt;return typeof bN!='number'&&(bN instanceof Array&&(bk=bN,bN=bk['pop']()),bN=bi[bT(0x13d)][bN]||bN),bN;}a1(bB,'lex');for(var bC,bD,bE,bF,bG,bH={},bI,bJ,bK,bL;;){if(bE=bj[bj['length']-0x1],this['defaultActions'][bE]?bF=this['defaultActions'][bE]:(bC==null&&(bC=bB()),bF=bn[bE]&&bn[bE][bC]),bF===void 0x0||!bF['length']||!bF[0x0]){var bM='';for(bI in(bL=[],bn[bE]))this['terminals_'][bI]&&bI>bs&&bL['push']('\x27'+this['terminals_'][bI]+'\x27');bM=bv['showPosition']?'Parse\x20error\x20on\x20line\x20'+(bp+0x1)+':\x0a'+bv['showPosition']()+bR(0x179)+bL['join'](',\x20')+',\x20got\x20\x27'+(this['terminals_'][bC]||bC)+'\x27':bR(0x11b)+(bp+0x1)+':\x20Unexpected\x20'+(bC==bt?bR(0x11c):'\x27'+(this['terminals_'][bC]||bC)+'\x27'),this['parseError'](bM,{'text':bv['match'],'token':this['terminals_'][bC]||bC,'line':bv['yylineno'],'loc':by,'expected':bL});}if(bF[0x0]instanceof Array&&bF[bR(0x148)]>0x1)throw Error('Parse\x20Error:\x20multiple\x20actions\x20possible\x20at\x20state:\x20'+bE+',\x20token:\x20'+bC);switch(bF[0x0]){case 0x1:bj['push'](bC),bl['push'](bv['yytext']),bm['push'](bv[bR(0x151)]),bj['push'](bF[0x1]),bC=null,bD?(bC=bD,bD=null):(bq=bv['yyleng'],bo=bv['yytext'],bp=bv['yylineno'],by=bv['yylloc'],br>0x0&&br--);break;case 0x2:if(bJ=this['productions_'][bF[0x1]][0x1],bH['$']=bl[bl['length']-bJ],bH['_$']={'first_line':bm[bm['length']-(bJ||0x1)]['first_line'],'last_line':bm[bm[bR(0x148)]-0x1][bR(0x129)],'first_column':bm[bm['length']-(bJ||0x1)]['first_column'],'last_column':bm[bm['length']-0x1]['last_column']},bz&&(bH['_$']['range']=[bm[bm['length']-(bJ||0x1)]['range'][0x0],bm[bm['length']-0x1]['range'][0x1]]),bG=this[bR(0x141)]['apply'](bH,[bo,bq,bp,bw['yy'],bF[0x1],bl,bm][bR(0x12e)](bu)),bG!==void 0x0)return bG;bJ&&(bj=bj['slice'](0x0,-0x1*bJ*0x2),bl=bl[bR(0x15e)](0x0,-0x1*bJ),bm=bm[bR(0x15e)](0x0,-0x1*bJ)),bj['push'](this['productions_'][bF[0x1]][0x0]),bl[bR(0xde)](bH['$']),bm[bR(0xde)](bH['_$']),bK=bn[bj[bj['length']-0x2]][bj[bj['length']-0x1]],bj['push'](bK);break;case 0x3:return!0x0;}}return!0x0;},'parse')};bf['lexer']=(function(){const bV=bP;return{'EOF':0x1,'parseError':a1(function(bh,bi){if(this['yy']['parser'])this['yy']['parser']['parseError'](bh,bi);else throw Error(bh);},'parseError'),'setInput':a1(function(bh,bi){const bU=a0;return this['yy']=bi||this['yy']||{},this['_input']=bh,this['_more']=this['_backtrack']=this['done']=!0x1,this['yylineno']=this['yyleng']=0x0,this['yytext']=this['matched']=this['match']='',this['conditionStack']=['INITIAL'],this['yylloc']={'first_line':0x1,'first_column':0x0,'last_line':0x1,'last_column':0x0},this['options'][bU(0x122)]&&(this['yylloc']['range']=[0x0,0x0]),this['offset']=0x0,this;},bV(0x181)),'input':a1(function(){const bW=bV;var bh=this['_input'][0x0];return this['yytext']+=bh,this['yyleng']++,this['offset']++,this[bW(0x107)]+=bh,this['matched']+=bh,bh['match'](/(?:\r\n?|\n).*/g)?(this['yylineno']++,this[bW(0x151)][bW(0x129)]++):this[bW(0x151)]['last_column']++,this['options']['ranges']&&this['yylloc']['range'][0x1]++,this[bW(0xfe)]=this['_input'][bW(0x15e)](0x1),bh;},'input'),'unput':a1(function(bh){const bX=bV;var bi=bh['length'],bj=bh[bX(0x135)](/(?:\r\n?|\n)/g);this[bX(0xfe)]=bh+this[bX(0xfe)],this[bX(0x185)]=this['yytext']['substr'](0x0,this['yytext'][bX(0x148)]-bi),this['offset']-=bi;var bk=this['match'][bX(0x135)](/(?:\r\n?|\n)/g);this['match']=this['match']['substr'](0x0,this['match']['length']-0x1),this['matched']=this['matched']['substr'](0x0,this['matched']['length']-0x1),bj['length']-0x1&&(this['yylineno']-=bj[bX(0x148)]-0x1);var bl=this['yylloc']['range'];return this['yylloc']={'first_line':this['yylloc']['first_line'],'last_line':this['yylineno']+0x1,'first_column':this['yylloc']['first_column'],'last_column':bj?(bj['length']===bk['length']?this['yylloc']['first_column']:0x0)+bk[bk['length']-bj[bX(0x148)]]['length']-bj[0x0][bX(0x148)]:this['yylloc']['first_column']-bi},this['options']['ranges']&&(this[bX(0x151)][bX(0x17b)]=[bl[0x0],bl[0x0]+this['yyleng']-bi]),this['yyleng']=this['yytext']['length'],this;},bV(0xfd)),'more':a1(function(){return this['_more']=!0x0,this;},'more'),'reject':a1(function(){const bY=bV;if(this['options']['backtrack_lexer'])this[bY(0x101)]=!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[bY(0x178)](),{'text':'','token':null,'line':this['yylineno']});return this;},'reject'),'less':a1(function(bh){const bZ=bV;this[bZ(0xfd)](this['match']['slice'](bh));},bV(0xf9)),'pastInput':a1(function(){var bh=this['matched']['substr'](0x0,this['matched']['length']-this['match']['length']);return(bh['length']>0x14?'...':'')+bh['substr'](-0x14)['replace'](/\n/g,'');},'pastInput'),'upcomingInput':a1(function(){const c0=bV;var bh=this['match'];return bh['length']<0x14&&(bh+=this['_input']['substr'](0x0,0x14-bh['length'])),(bh[c0(0x164)](0x0,0x14)+(bh['length']>0x14?'...':''))['replace'](/\n/g,'');},'upcomingInput'),'showPosition':a1(function(){var bh=this['pastInput'](),bi=Array(bh['length']+0x1)['join']('-');return bh+this['upcomingInput']()+'\x0a'+bi+'^';},'showPosition'),'test_match':a1(function(bh,bi){const c1=bV;var bj,bk,bl;if(this['options']['backtrack_lexer']&&(bl={'yylineno':this[c1(0xe6)],'yylloc':{'first_line':this['yylloc']['first_line'],'last_line':this['last_line'],'first_column':this['yylloc']['first_column'],'last_column':this['yylloc']['last_column']},'yytext':this['yytext'],'match':this[c1(0x107)],'matches':this[c1(0x16a)],'matched':this['matched'],'yyleng':this[c1(0x10f)],'offset':this['offset'],'_more':this['_more'],'_input':this['_input'],'yy':this['yy'],'conditionStack':this[c1(0xda)][c1(0x15e)](0x0),'done':this['done']},this['options']['ranges']&&(bl[c1(0x151)]['range']=this['yylloc']['range'][c1(0x15e)](0x0))),bk=bh[0x0]['match'](/(?:\r\n?|\n).*/g),bk&&(this['yylineno']+=bk['length']),this['yylloc']={'first_line':this['yylloc']['last_line'],'last_line':this[c1(0xe6)]+0x1,'first_column':this['yylloc']['last_column'],'last_column':bk?bk[bk['length']-0x1]['length']-bk[bk['length']-0x1]['match'](/\r?\n?/)[0x0]['length']:this['yylloc'][c1(0x153)]+bh[0x0][c1(0x148)]},this['yytext']+=bh[0x0],this['match']+=bh[0x0],this['matches']=bh,this['yyleng']=this['yytext']['length'],this['options']['ranges']&&(this['yylloc']['range']=[this[c1(0x110)],this[c1(0x110)]+=this['yyleng']]),this[c1(0x160)]=!0x1,this['_backtrack']=!0x1,this[c1(0xfe)]=this['_input']['slice'](bh[0x0]['length']),this['matched']+=bh[0x0],bj=this['performAction'][c1(0x12f)](this,this['yy'],this,bi,this['conditionStack'][this['conditionStack']['length']-0x1]),this['done']&&this['_input']&&(this['done']=!0x1),bj)return bj;if(this['_backtrack']){for(var bm in bl)this[bm]=bl[bm];return!0x1;}return!0x1;},bV(0x15b)),'next':a1(function(){const c2=bV;if(this['done'])return this['EOF'];this['_input']||(this['done']=!0x0);var bh,bi,bj,bk;this['_more']||(this['yytext']='',this['match']='');for(var bl=this[c2(0x10c)](),bm=0x0;bm<bl['length'];bm++)if(bj=this['_input']['match'](this['rules'][bl[bm]]),bj&&(!bi||bj[0x0]['length']>bi[0x0]['length'])){if(bi=bj,bk=bm,this['options']['backtrack_lexer']){if(bh=this[c2(0x15b)](bj,bl[bm]),bh!==!0x1)return bh;if(this['_backtrack']){bi=!0x1;continue;}else return!0x1;}else{if(!this['options'][c2(0x16b)])break;}}return bi?(bh=this['test_match'](bi,bl[bk]),bh===!0x1?!0x1:bh):this['_input']===''?this['EOF']:this['parseError']('Lexical\x20error\x20on\x20line\x20'+(this['yylineno']+0x1)+'.\x20Unrecognized\x20text.\x0a'+this['showPosition'](),{'text':'','token':null,'line':this['yylineno']});},'next'),'lex':a1(function(){const c3=bV;return this['next']()||this[c3(0xc5)]();},'lex'),'begin':a1(function(bh){this['conditionStack']['push'](bh);},'begin'),'popState':a1(function(){const c4=bV;return this[c4(0xda)]['length']-0x1>0x0?this['conditionStack'][c4(0xf0)]():this[c4(0xda)][0x0];},'popState'),'_currentRules':a1(function(){const c5=bV;return this['conditionStack']['length']&&this[c5(0xda)][this['conditionStack'][c5(0x148)]-0x1]?this['conditions'][this['conditionStack'][this['conditionStack']['length']-0x1]]['rules']:this['conditions'][c5(0x11e)]['rules'];},'_currentRules'),'topState':a1(function(bh){return bh=this['conditionStack']['length']-0x1-Math['abs'](bh||0x0),bh>=0x0?this['conditionStack'][bh]:'INITIAL';},'topState'),'pushState':a1(function(bh){this['begin'](bh);},'pushState'),'stateStackSize':a1(function(){return this['conditionStack']['length'];},bV(0xfb)),'options':{},'performAction':a1(function(bh,bi,bj,bk){const c6=bV;switch(bj){case 0x0:return 0x6;case 0x1:return 0x7;case 0x2:return 0x8;case 0x3:return 0x9;case 0x4:return 0x16;case 0x5:return 0x17;case 0x6:return this['begin']('acc_title'),0x18;case 0x7:return this['popState'](),'acc_title_value';case 0x8:return this['begin']('acc_descr'),0x1a;case 0x9:return this['popState'](),'acc_descr_value';case 0xa:this['begin']('acc_descr_multiline');break;case 0xb:this[c6(0x16e)]();break;case 0xc:return c6(0x108);case 0xd:break;case 0xe:c;break;case 0xf:return 0xc;case 0x10:break;case 0x11:return 0xb;case 0x12:return 0xf;case 0x13:return 0x10;case 0x14:return 0x11;case 0x15:return 0x12;case 0x16:return this['begin']('person_ext'),0x2d;case 0x17:return this['begin']('person'),0x2c;case 0x18:return this['begin'](c6(0x102)),0x33;case 0x19:return this['begin']('system_ext_db'),0x32;case 0x1a:return this[c6(0x138)]('system_ext'),0x31;case 0x1b:return this['begin'](c6(0x159)),0x30;case 0x1c:return this['begin']('system_db'),0x2f;case 0x1d:return this['begin']('system'),0x2e;case 0x1e:return this['begin']('boundary'),0x25;case 0x1f:return this[c6(0x138)]('enterprise_boundary'),0x22;case 0x20:return this['begin']('system_boundary'),0x24;case 0x21:return this['begin']('container_ext_queue'),0x39;case 0x22:return this['begin'](c6(0x18b)),0x38;case 0x23:return this['begin']('container_ext'),0x37;case 0x24:return this['begin']('container_queue'),0x36;case 0x25:return this['begin'](c6(0xf1)),0x35;case 0x26:return this[c6(0x138)]('container'),0x34;case 0x27:return this['begin']('container_boundary'),0x26;case 0x28:return this[c6(0x138)]('component_ext_queue'),0x3f;case 0x29:return this['begin']('component_ext_db'),0x3e;case 0x2a:return this['begin']('component_ext'),0x3d;case 0x2b:return this['begin']('component_queue'),0x3c;case 0x2c:return this['begin']('component_db'),0x3b;case 0x2d:return this['begin']('component'),0x3a;case 0x2e:return this['begin']('node'),0x27;case 0x2f:return this[c6(0x138)]('node'),0x27;case 0x30:return this['begin']('node_l'),0x28;case 0x31:return this[c6(0x138)]('node_r'),0x29;case 0x32:return this['begin']('rel'),0x40;case 0x33:return this[c6(0x138)](c6(0xdd)),0x41;case 0x34:return this['begin'](c6(0x11f)),0x42;case 0x35:return this['begin'](c6(0x11f)),0x42;case 0x36:return this['begin']('rel_d'),0x43;case 0x37:return this['begin']('rel_d'),0x43;case 0x38:return this['begin']('rel_l'),0x44;case 0x39:return this['begin']('rel_l'),0x44;case 0x3a:return this['begin']('rel_r'),0x45;case 0x3b:return this['begin']('rel_r'),0x45;case 0x3c:return this['begin']('rel_b'),0x46;case 0x3d:return this['begin']('rel_index'),0x47;case 0x3e:return this['begin']('update_el_style'),0x48;case 0x3f:return this['begin']('update_rel_style'),0x49;case 0x40:return this['begin']('update_layout_config'),0x4a;case 0x41:return'EOF_IN_STRUCT';case 0x42:return this['begin']('attribute'),'ATTRIBUTE_EMPTY';case 0x43:this['begin']('attribute');break;case 0x44:this['popState'](),this['popState']();break;case 0x45:return 0x50;case 0x46:break;case 0x47:return 0x50;case 0x48:this['begin']('string');break;case 0x49:this['popState']();break;case 0x4a:return'STR';case 0x4b:this['begin']('string_kv');break;case 0x4c:return this[c6(0x138)]('string_kv_key'),'STR_KEY';case 0x4d:this[c6(0x16e)](),this['begin']('string_kv_value');break;case 0x4e:return'STR_VALUE';case 0x4f:this[c6(0x16e)](),this[c6(0x16e)]();break;case 0x50:return'STR';case 0x51:return'LBRACE';case 0x52:return'RBRACE';case 0x53:return'SPACE';case 0x54:return c6(0x147);case 0x55:return 0xe;}},'anonymous'),'rules':[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],'conditions':{'acc_descr_multiline':{'rules':[0xb,0xc],'inclusive':!0x1},'acc_descr':{'rules':[0x9],'inclusive':!0x1},'acc_title':{'rules':[0x7],'inclusive':!0x1},'string_kv_value':{'rules':[0x4e,0x4f],'inclusive':!0x1},'string_kv_key':{'rules':[0x4d],'inclusive':!0x1},'string_kv':{'rules':[0x4c],'inclusive':!0x1},'string':{'rules':[0x49,0x4a],'inclusive':!0x1},'attribute':{'rules':[0x44,0x45,0x46,0x47,0x48,0x4b,0x50],'inclusive':!0x1},'update_layout_config':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'update_rel_style':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'update_el_style':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'rel_b':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'rel_r':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'rel_l':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'rel_d':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'rel_u':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'rel_bi':{'rules':[],'inclusive':!0x1},'rel':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'node_r':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'node_l':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'node':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'index':{'rules':[],'inclusive':!0x1},'rel_index':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'component_ext_queue':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'component_ext_db':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'component_ext':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'component_queue':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'component_db':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'component':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'container_boundary':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'container_ext_queue':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'container_ext_db':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'container_ext':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'container_queue':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'container_db':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'container':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'birel':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'system_boundary':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'enterprise_boundary':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'boundary':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'system_ext_queue':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'system_ext_db':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'system_ext':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'system_queue':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'system_db':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'system':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'person_ext':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'person':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'INITIAL':{'rules':[0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x8,0xa,0xd,0xe,0xf,0x10,0x11,0x12,0x13,0x14,0x15,0x16,0x17,0x18,0x19,0x1a,0x1b,0x1c,0x1d,0x1e,0x1f,0x20,0x21,0x22,0x23,0x24,0x25,0x26,0x27,0x28,0x29,0x2a,0x2b,0x2c,0x2d,0x2e,0x2f,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3a,0x3b,0x3c,0x3d,0x3e,0x3f,0x40,0x51,0x52,0x53,0x54,0x55],'inclusive':!0x0}}};}());function bg(){this['yy']={};}return a1(bg,'Parser'),bg['prototype']=bf,bf['Parser']=bg,new bg();}());S[c7(0xf7)]=S;var C=S,w=[],T=[''],E='global',D='',O=[{'alias':'global','label':{'text':'global'},'type':{'text':'global'},'tags':null,'link':null,'parentBoundary':''}],k=[],A='',j=!0x1,M=0x4,N=0x2,P,F=a1(function(){return P;},'getC4Type'),I=a1(function(ak){P=ab(ak,a9());},'setC4Type'),L=a1(function(ak,al,am,an,ao,ap,aq,ar,as){const c8=c7;if(ak==null||al==null||am==null||an==null)return;let at={},au=k['find'](av=>av['from']===al&&av['to']===am);if(au?at=au:k['push'](at),at['type']=ak,at['from']=al,at['to']=am,at['label']={'text':an},ao==null)at['techn']={'text':''};else{if(typeof ao==c8(0x188)){let [av,aw]=Object['entries'](ao)[0x0];at[av]={'text':aw};}else at['techn']={'text':ao};}if(ap==null)at['descr']={'text':''};else{if(typeof ap=='object'){let [ax,ay]=Object[c8(0x16d)](ap)[0x0];at[ax]={'text':ay};}else at['descr']={'text':ap};}if(typeof aq=='object'){let [az,aA]=Object['entries'](aq)[0x0];at[az]=aA;}else at['sprite']=aq;if(typeof ar=='object'){let [aB,aC]=Object[c8(0x16d)](ar)[0x0];at[aB]=aC;}else at[c8(0xd1)]=ar;if(typeof as=='object'){let [aD,aE]=Object['entries'](as)[0x0];at[aD]=aE;}else at['link']=as;at[c8(0xd7)]=de();},c7(0x163)),R=a1(function(ak,al,am,an,ao,ap,aq){const c9=c7;if(al===null||am===null)return;let ar={},as=w['find'](at=>at['alias']===al);if(as&&al===as['alias']?ar=as:(ar['alias']=al,w['push'](ar)),am==null?ar['label']={'text':''}:ar['label']={'text':am},an==null)ar[c9(0x10a)]={'text':''};else{if(typeof an=='object'){let [at,au]=Object['entries'](an)[0x0];ar[at]={'text':au};}else ar['descr']={'text':an};}if(typeof ao=='object'){let [av,aw]=Object[c9(0x16d)](ao)[0x0];ar[av]=aw;}else ar['sprite']=ao;if(typeof ap=='object'){let [ax,ay]=Object[c9(0x16d)](ap)[0x0];ar[ax]=ay;}else ar['tags']=ap;if(typeof aq==c9(0x188)){let [az,aA]=Object['entries'](aq)[0x0];ar[az]=aA;}else ar['link']=aq;ar['typeC4Shape']={'text':ak},ar['parentBoundary']=E,ar['wrap']=de();},'addPersonOrSystem'),z=a1(function(ak,al,am,an,ao,ap,aq,ar){const ca=c7;if(al===null||am===null)return;let as={},at=w['find'](au=>au[ca(0xf5)]===al);if(at&&al===at['alias']?as=at:(as['alias']=al,w['push'](as)),am==null?as['label']={'text':''}:as['label']={'text':am},an==null)as['techn']={'text':''};else{if(typeof an=='object'){let [au,av]=Object[ca(0x16d)](an)[0x0];as[au]={'text':av};}else as[ca(0xd5)]={'text':an};}if(ao==null)as['descr']={'text':''};else{if(typeof ao==ca(0x188)){let [aw,ax]=Object['entries'](ao)[0x0];as[aw]={'text':ax};}else as['descr']={'text':ao};}if(typeof ap=='object'){let [ay,az]=Object[ca(0x16d)](ap)[0x0];as[ay]=az;}else as['sprite']=ap;if(typeof aq==ca(0x188)){let [aA,aB]=Object['entries'](aq)[0x0];as[aA]=aB;}else as['tags']=aq;if(typeof ar=='object'){let [aC,aD]=Object['entries'](ar)[0x0];as[aC]=aD;}else as[ca(0x144)]=ar;as['wrap']=de(),as['typeC4Shape']={'text':ak},as['parentBoundary']=E;},'addContainer'),B=a1(function(ak,al,am,an,ao,ap,aq,ar){const cb=c7;if(al===null||am===null)return;let as={},at=w['find'](au=>au[cb(0xf5)]===al);if(at&&al===at[cb(0xf5)]?as=at:(as[cb(0xf5)]=al,w['push'](as)),am==null?as['label']={'text':''}:as['label']={'text':am},an==null)as['techn']={'text':''};else{if(typeof an=='object'){let [au,av]=Object['entries'](an)[0x0];as[au]={'text':av};}else as['techn']={'text':an};}if(ao==null)as[cb(0x10a)]={'text':''};else{if(typeof ao=='object'){let [aw,ax]=Object['entries'](ao)[0x0];as[aw]={'text':ax};}else as['descr']={'text':ao};}if(typeof ap=='object'){let [ay,az]=Object['entries'](ap)[0x0];as[ay]=az;}else as[cb(0x167)]=ap;if(typeof aq=='object'){let [aA,aB]=Object['entries'](aq)[0x0];as[aA]=aB;}else as['tags']=aq;if(typeof ar==cb(0x188)){let [aC,aD]=Object['entries'](ar)[0x0];as[aC]=aD;}else as['link']=ar;as['wrap']=de(),as['typeC4Shape']={'text':ak},as['parentBoundary']=E;},c7(0xca)),V=a1(function(ak,al,am,an,ao){const cc=c7;if(ak===null||al===null)return;let ap={},aq=O['find'](ar=>ar['alias']===ak);if(aq&&ak===aq['alias']?ap=aq:(ap['alias']=ak,O['push'](ap)),al==null?ap['label']={'text':''}:ap['label']={'text':al},am==null)ap['type']={'text':'system'};else{if(typeof am=='object'){let [ar,as]=Object[cc(0x16d)](am)[0x0];ap[ar]={'text':as};}else ap['type']={'text':am};}if(typeof an==cc(0x188)){let [at,au]=Object[cc(0x16d)](an)[0x0];ap[at]=au;}else ap[cc(0xd1)]=an;if(typeof ao=='object'){let [av,aw]=Object[cc(0x16d)](ao)[0x0];ap[av]=aw;}else ap['link']=ao;ap['parentBoundary']=E,ap['wrap']=de(),D=E,E=ak,T['push'](D);},'addPersonOrSystemBoundary'),H=a1(function(ak,al,am,an,ao){const cd=c7;if(ak===null||al===null)return;let ap={},aq=O[cd(0x12d)](ar=>ar['alias']===ak);if(aq&&ak===aq['alias']?ap=aq:(ap[cd(0xf5)]=ak,O['push'](ap)),al==null?ap['label']={'text':''}:ap['label']={'text':al},am==null)ap['type']={'text':'container'};else{if(typeof am==cd(0x188)){let [ar,as]=Object['entries'](am)[0x0];ap[ar]={'text':as};}else ap['type']={'text':am};}if(typeof an==cd(0x188)){let [at,au]=Object['entries'](an)[0x0];ap[at]=au;}else ap['tags']=an;if(typeof ao==cd(0x188)){let [av,aw]=Object['entries'](ao)[0x0];ap[av]=aw;}else ap[cd(0x144)]=ao;ap['parentBoundary']=E,ap['wrap']=de(),D=E,E=ak,T['push'](D);},'addContainerBoundary'),U=a1(function(ak,al,am,an,ao,ap,aq,ar){const cf=c7;if(al===null||am===null)return;let as={},at=O['find'](au=>au[cf(0xf5)]===al);if(at&&al===at[cf(0xf5)]?as=at:(as['alias']=al,O['push'](as)),am==null?as['label']={'text':''}:as['label']={'text':am},an==null)as['type']={'text':'node'};else{if(typeof an=='object'){let [au,av]=Object['entries'](an)[0x0];as[au]={'text':av};}else as[cf(0x125)]={'text':an};}if(ao==null)as[cf(0x10a)]={'text':''};else{if(typeof ao==cf(0x188)){let [aw,ax]=Object['entries'](ao)[0x0];as[aw]={'text':ax};}else as['descr']={'text':ao};}if(typeof aq=='object'){let [ay,az]=Object['entries'](aq)[0x0];as[ay]=az;}else as['tags']=aq;if(typeof ar=='object'){let [aA,aB]=Object['entries'](ar)[0x0];as[aA]=aB;}else as['link']=ar;as['nodeType']=ak,as['parentBoundary']=E,as['wrap']=de(),D=E,E=al,T[cf(0xde)](D);},'addDeploymentNode'),ee=a1(function(){const cg=c7;E=D,T['pop'](),D=T[cg(0xf0)](),T['push'](D);},'popBoundaryParseStack'),te=a1(function(ak,al,am,an,ao,ap,aq,ar,as,at,au){const ch=c7;let av=w['find'](aw=>aw[ch(0xf5)]===al);if(!(av===void 0x0&&(av=O['find'](aw=>aw['alias']===al),av===void 0x0))){if(am!=null){if(typeof am=='object'){let [aw,ax]=Object['entries'](am)[0x0];av[aw]=ax;}else av['bgColor']=am;}if(an!=null){if(typeof an==ch(0x188)){let [ay,az]=Object['entries'](an)[0x0];av[ay]=az;}else av[ch(0x11d)]=an;}if(ao!=null){if(typeof ao=='object'){let [aA,aB]=Object['entries'](ao)[0x0];av[aA]=aB;}else av['borderColor']=ao;}if(ap!=null){if(typeof ap=='object'){let [aC,aD]=Object['entries'](ap)[0x0];av[aC]=aD;}else av['shadowing']=ap;}if(aq!=null){if(typeof aq=='object'){let [aE,aF]=Object['entries'](aq)[0x0];av[aE]=aF;}else av['shape']=aq;}if(ar!=null){if(typeof ar=='object'){let [aG,aH]=Object['entries'](ar)[0x0];av[aG]=aH;}else av[ch(0x167)]=ar;}if(as!=null){if(typeof as=='object'){let [aI,aJ]=Object['entries'](as)[0x0];av[aI]=aJ;}else av['techn']=as;}if(at!=null){if(typeof at=='object'){let [aK,aL]=Object['entries'](at)[0x0];av[aK]=aL;}else av['legendText']=at;}if(au!=null){if(typeof au=='object'){let [aM,aN]=Object['entries'](au)[0x0];av[aM]=aN;}else av['legendSprite']=au;}}},'updateElStyle'),ne=a1(function(ak,al,am,an,ao,ap,aq){const ci=c7;let ar=k['find'](as=>as[ci(0xfc)]===al&&as['to']===am);if(ar!==void 0x0){if(an!=null){if(typeof an=='object'){let [as,at]=Object['entries'](an)[0x0];ar[as]=at;}else ar[ci(0x186)]=an;}if(ao!=null){if(typeof ao=='object'){let [au,av]=Object['entries'](ao)[0x0];ar[au]=av;}else ar['lineColor']=ao;}if(ap!=null){if(typeof ap=='object'){let [aw,ax]=Object['entries'](ap)[0x0];ar[aw]=parseInt(ax);}else ar['offsetX']=parseInt(ap);}if(aq!=null){if(typeof aq=='object'){let [ay,az]=Object['entries'](aq)[0x0];ar[ay]=parseInt(az);}else ar['offsetY']=parseInt(aq);}}},c7(0x17d)),re=a1(function(ak,al,am){const cj=c7;let an=M,ao=N;if(typeof al=='object'){let ap=Object[cj(0xc8)](al)[0x0];an=parseInt(ap);}else an=parseInt(al);if(typeof am=='object'){let aq=Object[cj(0xc8)](am)[0x0];ao=parseInt(aq);}else ao=parseInt(am);an>=0x1&&(M=an),ao>=0x1&&(N=ao);},'updateLayoutConfig'),ie=a1(function(){return M;},'getC4ShapeInRow'),W=a1(function(){return N;},'getC4BoundaryInRow'),G=a1(function(){return E;},'getCurrentBoundaryParse'),K=a1(function(){return D;},'getParentBoundaryParse'),q=a1(function(ak){return ak==null?w:w['filter'](al=>al['parentBoundary']===ak);},'getC4ShapeArray'),J=a1(function(ak){const ck=c7;return w[ck(0x12d)](al=>al[ck(0xf5)]===ak);},'getC4Shape'),ae=a1(function(ak){return Object['keys'](q(ak));},'getC4ShapeKeys'),oe=a1(function(ak){return ak==null?O:O['filter'](al=>al['parentBoundary']===ak);},'getBoundaries'),se=oe,ce=a1(function(){return k;},c7(0x155)),le=a1(function(){return A;},'getTitle'),ue=a1(function(ak){j=ak;},'setWrap'),de=a1(function(){return j;},'autoWrap'),fe={'addPersonOrSystem':R,'addPersonOrSystemBoundary':V,'addContainer':z,'addContainerBoundary':H,'addComponent':B,'addDeploymentNode':U,'popBoundaryParseStack':ee,'addRel':L,'updateElStyle':te,'updateRelStyle':ne,'updateLayoutConfig':re,'autoWrap':de,'setWrap':ue,'getC4ShapeArray':q,'getC4Shape':J,'getC4ShapeKeys':ae,'getBoundaries':oe,'getBoundarys':se,'getCurrentBoundaryParse':G,'getParentBoundaryParse':K,'getRels':ce,'getTitle':le,'getC4Type':F,'getC4ShapeInRow':ie,'getC4BoundaryInRow':W,'setAccTitle':a4,'getAccTitle':aa,'getAccDescription':a8,'setAccDescription':a3,'getConfig':a1(()=>a9()['c4'],'getConfig'),'clear':a1(function(){const cl=c7;w=[],O=[{'alias':cl(0xff),'label':{'text':'global'},'type':{'text':cl(0xff)},'tags':null,'link':null,'parentBoundary':''}],D='',E='global',T=[''],k=[],T=[''],A='',j=!0x1,M=0x4,N=0x2;},'clear'),'LINETYPE':{'SOLID':0x0,'DOTTED':0x1,'NOTE':0x2,'SOLID_CROSS':0x3,'DOTTED_CROSS':0x4,'SOLID_OPEN':0x5,'DOTTED_OPEN':0x6,'LOOP_START':0xa,'LOOP_END':0xb,'ALT_START':0xc,'ALT_ELSE':0xd,'ALT_END':0xe,'OPT_START':0xf,'OPT_END':0x10,'ACTIVE_START':0x11,'ACTIVE_END':0x12,'PAR_START':0x13,'PAR_AND':0x14,'PAR_END':0x15,'RECT_START':0x16,'RECT_END':0x17,'SOLID_POINT':0x18,'DOTTED_POINT':0x19},'ARROWTYPE':{'FILLED':0x0,'OPEN':0x1},'PLACEMENT':{'LEFTOF':0x0,'RIGHTOF':0x1,'OVER':0x2},'setTitle':a1(function(ak){A=ab(ak,a9());},c7(0xc0)),'setC4Type':I},pe=a1(function(ak,al){return ai(ak,al);},'drawRect'),me=a1(function(ak,al,am,an,ao,ap){const cm=c7;let aq=ak['append']('image');aq['attr']('width',al),aq['attr'](cm(0xf8),am),aq['attr']('x',an),aq['attr']('y',ao);let ar=ap['startsWith']('data:image/png;base64')?ap:(0x0,y['sanitizeUrl'])(ap);aq['attr']('xlink:href',ar);},'drawImage'),he=a1((ak,al,am,an)=>{const cn=c7;let ao=ak[cn(0x169)]('g'),ap=0x0;for(let aq of al){let ar=aq['textColor']?aq['textColor']:'#444444',as=aq['lineColor']?aq['lineColor']:'#444444',at=aq['offsetX']?parseInt(aq[cn(0x128)]):0x0,au=aq['offsetY']?parseInt(aq['offsetY']):0x0;if(ap===0x0){let aw=ao['append']('line');aw['attr']('x1',aq['startPoint']['x']),aw['attr']('y1',aq['startPoint']['y']),aw['attr']('x2',aq['endPoint']['x']),aw['attr']('y2',aq[cn(0x136)]['y']),aw['attr']('stroke-width','1'),aw['attr'](cn(0x140),as),aw['style']('fill','none'),aq['type']!==cn(0xdf)&&aw['attr'](cn(0x17a),'url(#'+an+'-arrowhead)'),(aq['type']==='birel'||aq['type']==='rel_b')&&aw['attr']('marker-start',cn(0x13c)+an+'-arrowend)'),ap=-0x1;}else{let ax=ao[cn(0x169)]('path');ax[cn(0x112)](cn(0x152),'none')['attr']('stroke-width','1')['attr'](cn(0x140),as)['attr']('d','Mstartx,starty\x20Qcontrolx,controly\x20stopx,stopy\x20'['replaceAll']('startx',aq['startPoint']['x'])['replaceAll']('starty',aq['startPoint']['y'])['replaceAll']('controlx',aq['startPoint']['x']+(aq['endPoint']['x']-aq['startPoint']['x'])/0x2-(aq['endPoint']['x']-aq[cn(0x106)]['x'])/0x4)['replaceAll']('controly',aq['startPoint']['y']+(aq['endPoint']['y']-aq[cn(0x106)]['y'])/0x2)['replaceAll']('stopx',aq[cn(0x136)]['x'])['replaceAll']('stopy',aq['endPoint']['y'])),aq['type']!=='rel_b'&&ax['attr'](cn(0x17a),cn(0x13c)+an+cn(0xee)),(aq['type']==='birel'||aq['type']==='rel_b')&&ax[cn(0x112)]('marker-start','url(#'+an+'-arrowend)');}let av=am['messageFont']();Y(am)(aq['label']['text'],ao,Math[cn(0x142)](aq['startPoint']['x'],aq[cn(0x136)]['x'])+Math['abs'](aq['endPoint']['x']-aq['startPoint']['x'])/0x2+at,Math['min'](aq['startPoint']['y'],aq['endPoint']['y'])+Math['abs'](aq[cn(0x136)]['y']-aq[cn(0x106)]['y'])/0x2+au,aq['label']['width'],aq['label']['height'],{'fill':ar},av),aq[cn(0xd5)]&&aq['techn']['text']!==''&&(av=am['messageFont'](),Y(am)('['+aq['techn']['text']+']',ao,Math['min'](aq['startPoint']['x'],aq['endPoint']['x'])+Math['abs'](aq['endPoint']['x']-aq['startPoint']['x'])/0x2+at,Math['min'](aq['startPoint']['y'],aq['endPoint']['y'])+Math['abs'](aq['endPoint']['y']-aq['startPoint']['y'])/0x2+am['messageFontSize']+0x5+au,Math[cn(0xd0)](aq['label']['width'],aq['techn']['width']),aq['techn']['height'],{'fill':ar,'font-style':'italic'},av));}},'drawRels'),ge=a1(function(ak,al,am){const co=c7;let an=ak[co(0x169)]('g'),ao=al['bgColor']?al['bgColor']:co(0xc9),ap=al['borderColor']?al['borderColor']:'#444444',aq=al[co(0x11d)]?al['fontColor']:'black',ar={'stroke-width':0x1,'stroke-dasharray':co(0xe9)};al['nodeType']&&(ar={'stroke-width':0x1}),pe(an,{'x':al['x'],'y':al['y'],'fill':ao,'stroke':ap,'width':al['width'],'height':al['height'],'rx':2.5,'ry':2.5,'attrs':ar});let as=am['boundaryFont']();as['fontWeight']='bold',as['fontSize']+=0x2,as[co(0x11d)]=aq,Y(am)(al['label']['text'],an,al['x'],al['y']+al[co(0x173)]['Y'],al[co(0x16f)],al['height'],{'fill':'#444444'},as),al['type']&&al[co(0x125)]['text']!==''&&(as=am['boundaryFont'](),as[co(0x11d)]=aq,Y(am)(al['type']['text'],an,al['x'],al['y']+al['type']['Y'],al[co(0x16f)],al['height'],{'fill':co(0xec)},as)),al[co(0x10a)]&&al[co(0x10a)][co(0x145)]!==''&&(as=am['boundaryFont'](),as['fontSize']-=0x2,as[co(0x11d)]=aq,Y(am)(al[co(0x10a)]['text'],an,al['x'],al['y']+al['descr']['Y'],al['width'],al['height'],{'fill':'#444444'},as));},'drawBoundary'),_e=a1(function(ak,al,am){const cp=c7;var an;let ao=al['bgColor']?al[cp(0x133)]:am[al['typeC4Shape']['text']+'_bg_color'],ap=al['borderColor']?al['borderColor']:am[al['typeC4Shape']['text']+'_border_color'],aq=al['fontColor']?al[cp(0x11d)]:cp(0xd4),ar='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=';switch(al['typeC4Shape']['text']){case'person':ar='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=';break;case'external_person':ar='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII=';break;}let as=ak[cp(0x169)]('g');as['attr']('class','person-man');let at=aj();switch(al['typeC4Shape']['text']){case'person':case cp(0x137):case'system':case'external_system':case'container':case'external_container':case'component':case cp(0xd3):at['x']=al['x'],at['y']=al['y'],at['fill']=ao,at['width']=al[cp(0x16f)],at['height']=al['height'],at['stroke']=ap,at['rx']=2.5,at['ry']=2.5,at['attrs']={'stroke-width':0.5},pe(as,at);break;case cp(0xc4):case cp(0x177):case'container_db':case'external_container_db':case'component_db':case'external_component_db':as['append'](cp(0x189))['attr']('fill',ao)['attr']('stroke-width','0.5')['attr']('stroke',ap)['attr']('d','Mstartx,startyc0,-10\x20half,-10\x20half,-10c0,0\x20half,0\x20half,10l0,heightc0,10\x20-half,10\x20-half,10c0,0\x20-half,0\x20-half,-10l0,-height'[cp(0x13f)]('startx',al['x'])['replaceAll']('starty',al['y'])['replaceAll'](cp(0xeb),al['width']/0x2)['replaceAll']('height',al['height'])),as['append']('path')['attr']('fill','none')['attr']('stroke-width','0.5')['attr']('stroke',ap)['attr']('d',cp(0x168)[cp(0x13f)]('startx',al['x'])['replaceAll']('starty',al['y'])['replaceAll']('half',al['width']/0x2));break;case cp(0x159):case'external_system_queue':case cp(0xe3):case'external_container_queue':case'component_queue':case'external_component_queue':as['append']('path')['attr']('fill',ao)['attr']('stroke-width','0.5')[cp(0x112)]('stroke',ap)['attr']('d','Mstartx,startylwidth,0c5,0\x205,half\x205,halfc0,0\x200,half\x20-5,halfl-width,0c-5,0\x20-5,-half\x20-5,-halfc0,0\x200,-half\x205,-half'['replaceAll']('startx',al['x'])['replaceAll']('starty',al['y'])[cp(0x13f)]('width',al['width'])['replaceAll']('half',al['height']/0x2)),as['append']('path')[cp(0x112)]('fill','none')['attr']('stroke-width','0.5')['attr']('stroke',ap)['attr']('d','Mstartx,startyc-5,0\x20-5,half\x20-5,halfc0,half\x205,half\x205,half'['replaceAll']('startx',al['x']+al['width'])['replaceAll']('starty',al['y'])['replaceAll']('half',al['height']/0x2));break;}let au=Te(am,al['typeC4Shape']['text']);switch(as['append']('text')['attr']('fill',aq)['attr']('font-family',au['fontFamily'])['attr']('font-size',au['fontSize']-0x2)['attr']('font-style','italic')['attr']('lengthAdjust','spacing')['attr']('textLength',al['typeC4Shape'][cp(0x16f)])['attr']('x',al['x']+al['width']/0x2-al['typeC4Shape']['width']/0x2)['attr']('y',al['y']+al['typeC4Shape']['Y'])[cp(0x145)]('<<'+al['typeC4Shape']['text']+'>>'),al['typeC4Shape']['text']){case'person':case'external_person':me(as,0x30,0x30,al['x']+al[cp(0x16f)]/0x2-0x18,al['y']+al[cp(0x121)]['Y'],ar);break;}let av=am[al['typeC4Shape']['text']+'Font']();return av['fontWeight']='bold',av['fontSize']+=0x2,av['fontColor']=aq,Y(am)(al['label']['text'],as,al['x'],al['y']+al['label']['Y'],al['width'],al['height'],{'fill':aq},av),av=am[al[cp(0x105)]['text']+'Font'](),av[cp(0x11d)]=aq,al['techn']&&((an=al['techn'])==null?void 0x0:an[cp(0x145)])!==''?Y(am)(al[cp(0xd5)]['text'],as,al['x'],al['y']+al['techn']['Y'],al['width'],al['height'],{'fill':aq,'font-style':'italic'},av):al['type']&&al['type']['text']!==''&&Y(am)(al['type']['text'],as,al['x'],al['y']+al['type']['Y'],al['width'],al['height'],{'fill':aq,'font-style':'italic'},av),al['descr']&&al['descr']['text']!==''&&(av=am['personFont'](),av['fontColor']=aq,Y(am)(al['descr']['text'],as,al['x'],al['y']+al['descr']['Y'],al['width'],al[cp(0xf8)],{'fill':aq},av)),al[cp(0xf8)];},c7(0x119)),ve=a1(function(ak,al){const cq=c7;ak['append']('defs')['append']('symbol')['attr']('id',al+cq(0x11a))['attr']('fill-rule',cq(0x131))['attr'](cq(0xd6),'evenodd')['append']('path')['attr']('transform','scale(.5)')[cq(0x112)]('d','M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258\x2020.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z');},c7(0x161)),ye=a1(function(ak,al){const cr=c7;ak[cr(0x169)]('defs')['append'](cr(0xe4))[cr(0x112)]('id',al+'-computer')['attr']('width','24')['attr']('height','24')['append']('path')['attr']('transform','scale(.5)')[cr(0x112)]('d','M2\x202v13h20v-13h-20zm18\x2011h-16v-9h16v9zm-10.228\x206l.466-1h3.524l.467\x201h-4.457zm14.228\x203h-24l2-6h2.104l-1.33\x204h18.45l-1.297-4h2.073l2\x206zm-5-10h-14v-7h14v7z');},'insertComputerIcon'),be=a1(function(ak,al){const cs=c7;ak['append'](cs(0xf2))['append']('symbol')['attr']('id',al+'-clock')['attr'](cs(0x16f),'24')['attr'](cs(0xf8),'24')['append']('path')['attr']('transform','scale(.5)')['attr']('d','M12\x202c5.514\x200\x2010\x204.486\x2010\x2010s-4.486\x2010-10\x2010-10-4.486-10-10\x204.486-10\x2010-10zm0-2c-6.627\x200-12\x205.373-12\x2012s5.373\x2012\x2012\x2012\x2012-5.373\x2012-12-5.373-12-12-12zm5.848\x2012.459c.202.038.202.333.001.372-1.907.361-6.045\x201.111-6.547\x201.111-.719\x200-1.301-.582-1.301-1.301\x200-.512.77-5.447\x201.125-7.445.034-.192.312-.181.343.014l.985\x206.238\x205.394\x201.011z');},'insertClockIcon'),xe=a1(function(ak,al){const ct=c7;ak['append']('defs')['append']('marker')[ct(0x112)]('id',al+'-arrowhead')['attr']('refX',0x9)['attr']('refY',0x5)['attr']('markerUnits','userSpaceOnUse')['attr']('markerWidth',0xc)['attr']('markerHeight',0xc)['attr']('orient','auto')[ct(0x169)]('path')['attr']('d','M\x200\x200\x20L\x2010\x205\x20L\x200\x2010\x20z');},'insertArrowHead'),Se=a1(function(ak,al){const cu=c7;ak[cu(0x169)]('defs')['append']('marker')['attr']('id',al+'-arrowend')['attr']('refX',0x1)['attr']('refY',0x5)['attr']('markerUnits','userSpaceOnUse')['attr']('markerWidth',0xc)['attr']('markerHeight',0xc)[cu(0x112)]('orient',cu(0x103))[cu(0x169)](cu(0x189))['attr']('d',cu(0x174));},'insertArrowEnd'),Ce=a1(function(ak,al){const cv=c7;ak['append']('defs')['append']('marker')['attr']('id',al+'-filled-head')['attr']('refX',0x12)['attr'](cv(0x132),0x7)['attr'](cv(0x170),0x14)[cv(0x112)]('markerHeight',0x1c)[cv(0x112)](cv(0x13b),'auto')['append']('path')['attr']('d','M\x2018,7\x20L9,13\x20L14,7\x20L9,1\x20Z');},'insertArrowFilledHead'),we=a1(function(ak,al){const cw=c7;let am=ak['append']('defs')['append']('marker')['attr']('id',al+cw(0x154))[cw(0x112)](cw(0x170),0xf)[cw(0x112)]('markerHeight',0x8)[cw(0x112)]('orient','auto')['attr'](cw(0x111),0x10)['attr']('refY',0x4);am['append']('path')['attr']('fill','black')[cw(0x112)]('stroke','#000000')['style']('stroke-dasharray',cw(0x171))['attr']('stroke-width','1px')[cw(0x112)]('d','M\x209,2\x20V\x206\x20L16,4\x20Z'),am['append']('path')['attr'](cw(0x152),'none')['attr']('stroke','#000000')['style']('stroke-dasharray','0,\x200')['attr']('stroke-width','1px')['attr']('d','M\x200,1\x20L\x206,7\x20M\x206,1\x20L\x200,7');},'insertArrowCrossHead'),Te=a1((ak,al)=>({'fontFamily':ak[al+'FontFamily'],'fontSize':ak[al+'FontSize'],'fontWeight':ak[al+c7(0x172)]}),'getC4ShapeFont'),Y=(function(){const cz=c7;function ak(ao,ap,aq,ar,as,at,au){const cx=a0;an(ap['append']('text')[cx(0x112)]('x',aq+as/0x2)['attr']('y',ar+at/0x2+0x5)[cx(0x146)]('text-anchor',cx(0xe7))['text'](ao),au);}a1(ak,'byText');function al(ao,ap,aq,ar,as,at,au,av){const cy=a0;let {fontSize:aw,fontFamily:ax,fontWeight:ay}=av,az=ao['split'](a7['lineBreakRegex']);for(let aA=0x0;aA<az[cy(0x148)];aA++){let aB=aA*aw-aw*(az['length']-0x1)/0x2,aC=ap['append']('text')['attr']('x',aq+as/0x2)['attr']('y',ar)['style'](cy(0x124),'middle')['attr']('dominant-baseline','middle')['style']('font-size',aw)[cy(0x146)]('font-weight',ay)['style'](cy(0x166),ax);aC['append'](cy(0xdb))['attr']('dy',aB)['text'](az[aA])['attr']('alignment-baseline',cy(0x15a)),an(aC,au);}}a1(al,cz(0xd8));function am(ao,ap,aq,ar,as,at,au,av){const cA=cz;let aw=ap[cA(0x169)]('switch'),ax=aw['append']('foreignObject')['attr']('x',aq)['attr']('y',ar)[cA(0x112)]('width',as)[cA(0x112)]('height',at)['append']('xhtml:div')['style']('display','table')['style']('height','100%')['style']('width','100%');ax['append']('div')['style'](cA(0xc1),'table-cell')['style']('text-align','center')['style']('vertical-align',cA(0xe7))[cA(0x145)](ao),al(ao,aw,aq,ar,as,at,au,av),an(ax,au);}a1(am,'byFo');function an(ao,ap){const cB=cz;for(let aq in ap)ap[cB(0x16c)](aq)&&ao['attr'](aq,ap[aq]);}return a1(an,'_setTextAttrs'),function(ao){const cC=cz;return ao[cC(0x123)]==='fo'?am:ao['textPlacement']==='old'?ak:al;};}()),X={'drawRect':pe,'drawBoundary':ge,'drawC4Shape':_e,'drawRels':he,'drawImage':me,'insertArrowHead':xe,'insertArrowEnd':Se,'insertArrowFilledHead':Ce,'insertArrowCrossHead':we,'insertDatabaseIcon':ve,'insertComputerIcon':ye,'insertClockIcon':be},Ee=0x0,De=0x0,Oe=0x4,ke=0x2;S['yy']=fe;var Z={},Ae=(b=class{constructor(ak){const cD=c7;this['name']='',this['data']={},this['data'][cD(0x14f)]=void 0x0,this['data']['stopx']=void 0x0,this['data']['starty']=void 0x0,this['data'][cD(0x182)]=void 0x0,this[cD(0x117)]['widthLimit']=void 0x0,this['nextData']={},this['nextData'][cD(0x14f)]=void 0x0,this['nextData']['stopx']=void 0x0,this['nextData']['starty']=void 0x0,this['nextData']['stopy']=void 0x0,this[cD(0x17e)]['cnt']=0x0,je(ak['db']['getConfig']());}['setData'](ak,al,am,an){const cE=c7;this['nextData']['startx']=this['data']['startx']=ak,this[cE(0x17e)]['stopx']=this[cE(0x117)][cE(0x14a)]=al,this[cE(0x17e)]['starty']=this['data'][cE(0x104)]=am,this[cE(0x17e)][cE(0x182)]=this['data'][cE(0x182)]=an;}['updateVal'](ak,al,am,an){ak[al]===void 0x0?ak[al]=am:ak[al]=an(am,ak[al]);}['insert'](ak){const cF=c7;this[cF(0x17e)][cF(0xce)]=this['nextData']['cnt']+0x1;let al=this['nextData']['startx']===this['nextData']['stopx']?this['nextData'][cF(0x14a)]+ak['margin']:this['nextData']['stopx']+ak[cF(0x100)]*0x2,am=al+ak[cF(0x16f)],an=this['nextData'][cF(0x104)]+ak['margin']*0x2,ao=an+ak[cF(0xf8)];(al>=this[cF(0x117)]['widthLimit']||am>=this['data']['widthLimit']||this[cF(0x17e)]['cnt']>Oe)&&(al=this['nextData']['startx']+ak['margin']+Z[cF(0x14d)],an=this['nextData']['stopy']+ak['margin']*0x2,this['nextData']['stopx']=am=al+ak['width'],this[cF(0x17e)]['starty']=this['nextData']['stopy'],this['nextData']['stopy']=ao=an+ak['height'],this['nextData'][cF(0xce)]=0x1),ak['x']=al,ak['y']=an,this['updateVal'](this['data'],'startx',al,Math['min']),this[cF(0x118)](this['data'],'starty',an,Math[cF(0x142)]),this['updateVal'](this['data'],'stopx',am,Math[cF(0xd0)]),this['updateVal'](this['data'],'stopy',ao,Math[cF(0xd0)]),this['updateVal'](this['nextData'],cF(0x14f),al,Math['min']),this[cF(0x118)](this['nextData'],cF(0x104),an,Math[cF(0x142)]),this['updateVal'](this[cF(0x17e)],cF(0x14a),am,Math[cF(0xd0)]),this['updateVal'](this[cF(0x17e)],'stopy',ao,Math['max']);}['init'](ak){const cG=c7;this['name']='',this[cG(0x117)]={'startx':void 0x0,'stopx':void 0x0,'starty':void 0x0,'stopy':void 0x0,'widthLimit':void 0x0},this['nextData']={'startx':void 0x0,'stopx':void 0x0,'starty':void 0x0,'stopy':void 0x0,'cnt':0x0},je(ak['db']['getConfig']());}[c7(0x109)](ak){const cH=c7;this['data']['stopx']+=ak,this[cH(0x117)]['stopy']+=ak;}},a1(b,'Bounds'),b),je=a1(function(ak){const cI=c7;a6(Z,ak),ak['fontFamily']&&(Z['personFontFamily']=Z[cI(0x14b)]=Z[cI(0x134)]=ak[cI(0xc3)]),ak['fontSize']&&(Z['personFontSize']=Z['systemFontSize']=Z['messageFontSize']=ak[cI(0xf6)]),ak['fontWeight']&&(Z[cI(0xea)]=Z['systemFontWeight']=Z['messageFontWeight']=ak['fontWeight']);},'setConf'),Me=a1((ak,al)=>({'fontFamily':ak[al+c7(0xf4)],'fontSize':ak[al+'FontSize'],'fontWeight':ak[al+'FontWeight']}),c7(0x10b)),Ne=a1(ak=>({'fontFamily':ak[c7(0x158)],'fontSize':ak['boundaryFontSize'],'fontWeight':ak['boundaryFontWeight']}),'boundaryFont'),Pe=a1(ak=>({'fontFamily':ak[c7(0x134)],'fontSize':ak['messageFontSize'],'fontWeight':ak['messageFontWeight']}),c7(0x130));function Q(ak,al,am,an,ao){const cJ=c7;if(!al[ak]['width']){if(am)al[ak]['text']=ad(al[ak][cJ(0x145)],ao,an),al[ak]['textLines']=al[ak]['text']['split'](a7['lineBreakRegex'])['length'],al[ak]['width']=ao,al[ak]['height']=af(al[ak]['text'],an);else{let ap=al[ak][cJ(0x145)]['split'](a7['lineBreakRegex']);al[ak]['textLines']=ap['length'];let aq=0x0;al[ak]['height']=0x0,al[ak]['width']=0x0;for(let ar of ap)al[ak]['width']=Math['max'](ag(ar,an),al[ak]['width']),aq=af(ar,an),al[ak]['height']=al[ak][cJ(0xf8)]+aq;}}}a1(Q,'calcC4ShapeTextWH');var Fe=a1(function(ak,al,am){const cK=c7;al['x']=am['data']['startx'],al['y']=am['data']['starty'],al['width']=am['data']['stopx']-am['data']['startx'],al['height']=am['data']['stopy']-am['data']['starty'],al['label']['y']=Z['c4ShapeMargin']-0x23;let an=al[cK(0xd7)]&&Z[cK(0xd7)],ao=Ne(Z);ao[cK(0xf6)]+=0x2,ao[cK(0x116)]='bold',Q('label',al,an,ao,ag(al['label']['text'],ao)),X['drawBoundary'](ak,al,Z);},'drawBoundary'),Ie=a1(function(ak,al,am,an){const cL=c7;let ao=0x0;for(let ap of an){ao=0x0;let aq=am[ap],ar=Me(Z,aq[cL(0x105)][cL(0x145)]);switch(ar['fontSize']-=0x2,aq['typeC4Shape']['width']=ag('«'+aq['typeC4Shape'][cL(0x145)]+'»',ar),aq['typeC4Shape']['height']=ar['fontSize']+0x2,aq['typeC4Shape']['Y']=Z['c4ShapePadding'],ao=aq['typeC4Shape']['Y']+aq['typeC4Shape']['height']-0x4,aq['image']={'width':0x0,'height':0x0,'Y':0x0},aq['typeC4Shape'][cL(0x145)]){case cL(0x18d):case'external_person':aq[cL(0x121)]['width']=0x30,aq['image']['height']=0x30,aq['image']['Y']=ao,ao=aq['image']['Y']+aq['image']['height'];break;}aq['sprite']&&(aq['image']['width']=0x30,aq['image']['height']=0x30,aq[cL(0x121)]['Y']=ao,ao=aq['image']['Y']+aq['image']['height']);let as=aq['wrap']&&Z['wrap'],at=Z['width']-Z['c4ShapePadding']*0x2,au=Me(Z,aq['typeC4Shape'][cL(0x145)]);au['fontSize']+=0x2,au['fontWeight']='bold',Q('label',aq,as,au,at),aq['label']['Y']=ao+0x8,ao=aq[cL(0x173)]['Y']+aq['label'][cL(0xf8)],aq['type']&&aq[cL(0x125)]['text']!==''?(aq['type']['text']='['+aq['type']['text']+']',Q('type',aq,as,Me(Z,aq[cL(0x105)]['text']),at),aq['type']['Y']=ao+0x5,ao=aq['type']['Y']+aq['type'][cL(0xf8)]):aq['techn']&&aq['techn']['text']!==''&&(aq['techn']['text']='['+aq['techn']['text']+']',Q('techn',aq,as,Me(Z,aq['techn']['text']),at),aq['techn']['Y']=ao+0x5,ao=aq['techn']['Y']+aq['techn']['height']);let av=ao,aw=aq['label']['width'];aq['descr']&&aq['descr']['text']!==''&&(Q(cL(0x10a),aq,as,Me(Z,aq['typeC4Shape'][cL(0x145)]),at),aq['descr']['Y']=ao+0x14,ao=aq['descr']['Y']+aq['descr']['height'],aw=Math[cL(0xd0)](aq['label']['width'],aq['descr']['width']),av=ao-aq['descr'][cL(0xc2)]*0x5),aw+=Z['c4ShapePadding'],aq['width']=Math['max'](aq['width']||Z['width'],aw,Z['width']),aq['height']=Math['max'](aq['height']||Z['height'],av,Z['height']),aq['margin']=aq['margin']||Z['c4ShapeMargin'],ak['insert'](aq),X[cL(0x119)](al,aq,Z);}ak['bumpLastMargin'](Z['c4ShapeMargin']);},'drawC4ShapeArray'),$=(x=class{constructor(ak,al){this['x']=ak,this['y']=al;}},a1(x,c7(0xcd)),x),Le=a1(function(ak,al){const cM=c7;let am=ak['x'],an=ak['y'],ao=al['x'],ap=al['y'],aq=am+ak['width']/0x2,ar=an+ak['height']/0x2,as=Math['abs'](am-ao),at=Math['abs'](an-ap),au=at/as,av=ak[cM(0xf8)]/ak['width'],aw=null;return an==ap&&am<ao?aw=new $(am+ak[cM(0x16f)],ar):an==ap&&am>ao?aw=new $(am,ar):am==ao&&an<ap?aw=new $(aq,an+ak['height']):am==ao&&an>ap&&(aw=new $(aq,an)),am>ao&&an<ap?aw=av>=au?new $(am,ar+au*ak['width']/0x2):new $(aq-as/at*ak['height']/0x2,an+ak['height']):am<ao&&an<ap?aw=av>=au?new $(am+ak[cM(0x16f)],ar+au*ak['width']/0x2):new $(aq+as/at*ak[cM(0xf8)]/0x2,an+ak[cM(0xf8)]):am<ao&&an>ap?aw=av>=au?new $(am+ak['width'],ar-au*ak['width']/0x2):new $(aq+ak['height']/0x2*as/at,an):am>ao&&an>ap&&(aw=av>=au?new $(am,ar-ak['width']/0x2*au):new $(aq-ak['height']/0x2*as/at,an)),aw;},'getIntersectPoint'),Re=a1(function(ak,al){const cN=c7;let am={'x':0x0,'y':0x0};am['x']=al['x']+al[cN(0x16f)]/0x2,am['y']=al['y']+al[cN(0xf8)]/0x2;let an=Le(ak,am);return am['x']=ak['x']+ak['width']/0x2,am['y']=ak['y']+ak['height']/0x2,{'startPoint':an,'endPoint':Le(al,am)};},'getIntersectPoints'),ze=a1(function(ak,al,am,an,ao){const cO=c7;let ap=0x0;for(let aq of al){ap+=0x1;let ar=aq[cO(0xd7)]&&Z['wrap'],as=Pe(Z);an['db'][cO(0x14e)]()===cO(0x17c)&&(aq['label']['text']=ap+':\x20'+aq['label']['text']);let at=ag(aq[cO(0x173)]['text'],as);Q('label',aq,ar,as,at),aq['techn']&&aq['techn'][cO(0x145)]!==''&&(at=ag(aq['techn'][cO(0x145)],as),Q('techn',aq,ar,as,at)),aq['descr']&&aq['descr']['text']!==''&&(at=ag(aq['descr']['text'],as),Q(cO(0x10a),aq,ar,as,at));let au=Re(am(aq['from']),am(aq['to']));aq['startPoint']=au['startPoint'],aq['endPoint']=au['endPoint'];}X['drawRels'](ak,al,Z,ao);},'drawRels');function Be(ak,al,am,an,ao){const cP=c7;let ap=new Ae(ao);ap[cP(0x117)]['widthLimit']=am['data']['widthLimit']/Math[cP(0x142)](ke,an['length']);for(let [aq,ar]of an['entries']()){let as=0x0;ar['image']={'width':0x0,'height':0x0,'Y':0x0},ar['sprite']&&(ar['image']['width']=0x30,ar['image'][cP(0xf8)]=0x30,ar['image']['Y']=as,as=ar['image']['Y']+ar['image'][cP(0xf8)]);let at=ar['wrap']&&Z[cP(0xd7)],au=Ne(Z);if(au['fontSize']+=0x2,au['fontWeight']='bold',Q('label',ar,at,au,ap['data']['widthLimit']),ar['label']['Y']=as+0x8,as=ar['label']['Y']+ar['label']['height'],ar['type']&&ar['type']['text']!==''&&(ar['type']['text']='['+ar[cP(0x125)][cP(0x145)]+']',Q('type',ar,at,Ne(Z),ap['data']['widthLimit']),ar[cP(0x125)]['Y']=as+0x5,as=ar['type']['Y']+ar['type'][cP(0xf8)]),ar['descr']&&ar['descr']['text']!==''){let ay=Ne(Z);ay['fontSize']-=0x2,Q('descr',ar,at,ay,ap['data'][cP(0x15d)]),ar['descr']['Y']=as+0x14,as=ar['descr']['Y']+ar['descr'][cP(0xf8)];}if(aq==0x0||aq%ke===0x0){let az=am[cP(0x117)][cP(0x14f)]+Z['diagramMarginX'],aA=am['data'][cP(0x182)]+Z['diagramMarginY']+as;ap['setData'](az,az,aA,aA);}else{let aB=ap['data']['stopx']===ap[cP(0x117)][cP(0x14f)]?ap[cP(0x117)]['startx']:ap['data'][cP(0x14a)]+Z['diagramMarginX'],aC=ap['data']['starty'];ap[cP(0xfa)](aB,aB,aC,aC);}ap['name']=ar['alias'];let av=ao['db']['getC4ShapeArray'](ar['alias']),aw=ao['db']['getC4ShapeKeys'](ar['alias']);aw['length']>0x0&&Ie(ap,ak,av,aw),al=ar['alias'];let ax=ao['db']['getBoundaries'](al);ax['length']>0x0&&Be(ak,al,ap,ax,ao),ar['alias']!==cP(0xff)&&Fe(ak,ar,ap),am['data']['stopy']=Math['max'](ap['data']['stopy']+Z['c4ShapeMargin'],am['data']['stopy']),am['data']['stopx']=Math['max'](ap['data']['stopx']+Z['c4ShapeMargin'],am[cP(0x117)]['stopx']),Ee=Math['max'](Ee,am['data']['stopx']),De=Math['max'](De,am['data'][cP(0x182)]);}}a1(Be,'drawInsideBoundary');var Ve={'drawPersonOrSystemArray':Ie,'drawBoundary':Fe,'setConf':je,'draw':a1(function(ak,al,am,an){const cQ=c7;Z=a9()['c4'];let ao=a9()['securityLevel'],ap;ao==='sandbox'&&(ap=ac('#i'+al));let aq=ac(ao==='sandbox'?ap['nodes']()[0x0]['contentDocument']['body']:'body'),ar=an['db'];an['db']['setWrap'](Z['wrap']),Oe=ar[cQ(0x184)](),ke=ar['getC4BoundaryInRow'](),a2['debug']('C:'+JSON['stringify'](Z,null,0x2));let as=ao===cQ(0x143)?aq['select']('[id=\x22'+al+'\x22]'):ac('[id=\x22'+al+'\x22]');X['insertComputerIcon'](as,al),X['insertDatabaseIcon'](as,al),X['insertClockIcon'](as,al);let at=new Ae(an);at[cQ(0xfa)](Z[cQ(0xc6)],Z['diagramMarginX'],Z['diagramMarginY'],Z['diagramMarginY']),at['data']['widthLimit']=screen['availWidth'],Ee=Z['diagramMarginX'],De=Z['diagramMarginY'];let au=an['db']['getTitle']();Be(as,'',at,an['db']['getBoundaries'](''),an),X[cQ(0xf3)](as,al),X['insertArrowEnd'](as,al),X['insertArrowCrossHead'](as,al),X[cQ(0x156)](as,al),ze(as,an['db']['getRels'](),an['db']['getC4Shape'],an,al),at['data'][cQ(0x14a)]=Ee,at['data']['stopy']=De;let av=at['data'],aw=av['stopy']-av['starty']+0x2*Z['diagramMarginY'],ax=av['stopx']-av['startx']+0x2*Z['diagramMarginX'];au&&as['append'](cQ(0x145))['text'](au)['attr']('x',(av['stopx']-av[cQ(0x14f)])/0x2-0x4*Z['diagramMarginX'])['attr']('y',av['starty']+Z[cQ(0x120)]),a5(as,aw,ax,Z['useMaxWidth']);let ay=au?0x3c:0x0;as[cQ(0x112)]('viewBox',av['startx']-Z['diagramMarginX']+'\x20-'+(Z['diagramMarginY']+ay)+'\x20'+ax+'\x20'+(aw+ay)),a2['debug']('models:',av);},'draw')},He={'parser':C,'db':fe,'renderer':Ve,'styles':a1(ak=>'.person\x20{\x0a\x20\x20\x20\x20stroke:\x20'+ak['personBorder']+c7(0xc7)+ak['personBkg']+';\x0a\x20\x20}\x0a','getStyles'),'init':a1(({c4:ak,wrap:al})=>{const cR=c7;Ve[cR(0xd9)](ak),fe['setWrap'](al);},c7(0x183))};export{He as diagram};
1
+ const c8=a0;(function(ak,al){const bO=a0,am=ak();while(!![]){try{const an=-parseInt(bO(0xe9))/0x1*(parseInt(bO(0xb1))/0x2)+-parseInt(bO(0x152))/0x3+-parseInt(bO(0x16c))/0x4+parseInt(bO(0xf9))/0x5+parseInt(bO(0xed))/0x6+parseInt(bO(0x112))/0x7+-parseInt(bO(0x120))/0x8*(-parseInt(bO(0xfe))/0x9);if(an===al)break;else am['push'](am['shift']());}catch(ao){am['push'](am['shift']());}}}(c,0x800be));import{n as a1,r as a2}from'./chunk-AGHRB4JF.js';import{H as a3,U as a4,c as a5,r as a6,s as a7,v as a8,x as a9,y as aa,z as ab}from'./chunk-CSCIHK7Q.js';import{Q as ac}from'./src.js';import{_ as ad,n as af,r as ag}from'./chunk-5ZQYHXKU.js';import{t as ah}from'./dist2.js';function a0(a,b){a=a-0xae;const d=c();let e=d[a];return e;}import{a as ai,s as aj}from'./chunk-ND2GUHAM.js';var y=ah(),b,x,S=(function(){const bP=a0;var ak=a1(function(bh,bi,bj,bk){for(bj=bj||{},bk=bh['length'];bk--;bj[bh[bk]]=bi);return bj;},'o'),al=[0x1,0x18],am=[0x1,0x19],an=[0x1,0x1a],ao=[0x1,0x1b],ap=[0x1,0x1c],aq=[0x1,0x3f],ar=[0x1,0x40],as=[0x1,0x41],at=[0x1,0x42],au=[0x1,0x43],av=[0x1,0x44],aw=[0x1,0x45],ax=[0x1,0x1d],ay=[0x1,0x1e],az=[0x1,0x1f],aA=[0x1,0x20],aB=[0x1,0x21],aC=[0x1,0x22],aD=[0x1,0x23],aE=[0x1,0x24],aF=[0x1,0x25],aG=[0x1,0x26],aH=[0x1,0x27],aI=[0x1,0x28],aJ=[0x1,0x29],aK=[0x1,0x2a],aL=[0x1,0x2b],aM=[0x1,0x2c],aN=[0x1,0x2d],aO=[0x1,0x2e],aP=[0x1,0x2f],aQ=[0x1,0x30],aR=[0x1,0x32],aS=[0x1,0x33],aT=[0x1,0x34],aU=[0x1,0x35],aV=[0x1,0x36],aW=[0x1,0x37],aX=[0x1,0x38],aY=[0x1,0x39],aZ=[0x1,0x3a],b0=[0x1,0x3b],b1=[0x1,0x3c],b2=[0xe,0x2a],b3=[0xe,0x22,0x24,0x25,0x26,0x27,0x28,0x29,0x2a,0x2c,0x2d,0x2e,0x2f,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3a,0x3b,0x3c,0x3d,0x3e,0x3f,0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a],b4=[0xc,0xe,0x22,0x24,0x25,0x26,0x27,0x28,0x29,0x2a,0x2c,0x2d,0x2e,0x2f,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3a,0x3b,0x3c,0x3d,0x3e,0x3f,0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a],b5=[0x1,0x52],b6=[0x1,0x53],b7=[0x1,0x54],b8=[0x1,0x55],b9=[0xc,0xe,0x2a],ba=[0xc,0xe,0x21,0x2a],bb=[0xc,0xe,0x21,0x2a,0x4c,0x4d,0x4f,0x50],bc=[0xc,0x21],bd=[0x22,0x24,0x25,0x26,0x27,0x28,0x29,0x2c,0x2d,0x2e,0x2f,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3a,0x3b,0x3c,0x3d,0x3e,0x3f,0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a],bf={'trace':a1(function(){},'trace'),'yy':{},'symbols_':{'error':0x2,'start':0x3,'mermaidDoc':0x4,'direction':0x5,'direction_tb':0x6,'direction_bt':0x7,'direction_rl':0x8,'direction_lr':0x9,'graphConfig':0xa,'C4_CONTEXT':0xb,'NEWLINE':0xc,'statements':0xd,'EOF':0xe,'C4_CONTAINER':0xf,'C4_COMPONENT':0x10,'C4_DYNAMIC':0x11,'C4_DEPLOYMENT':0x12,'otherStatements':0x13,'diagramStatements':0x14,'otherStatement':0x15,'title':0x16,'accDescription':0x17,'acc_title':0x18,'acc_title_value':0x19,'acc_descr':0x1a,'acc_descr_value':0x1b,'acc_descr_multiline_value':0x1c,'boundaryStatement':0x1d,'boundaryStartStatement':0x1e,'boundaryStopStatement':0x1f,'boundaryStart':0x20,'LBRACE':0x21,'ENTERPRISE_BOUNDARY':0x22,'attributes':0x23,'SYSTEM_BOUNDARY':0x24,'BOUNDARY':0x25,'CONTAINER_BOUNDARY':0x26,'NODE':0x27,'NODE_L':0x28,'NODE_R':0x29,'RBRACE':0x2a,'diagramStatement':0x2b,'PERSON':0x2c,'PERSON_EXT':0x2d,'SYSTEM':0x2e,'SYSTEM_DB':0x2f,'SYSTEM_QUEUE':0x30,'SYSTEM_EXT':0x31,'SYSTEM_EXT_DB':0x32,'SYSTEM_EXT_QUEUE':0x33,'CONTAINER':0x34,'CONTAINER_DB':0x35,'CONTAINER_QUEUE':0x36,'CONTAINER_EXT':0x37,'CONTAINER_EXT_DB':0x38,'CONTAINER_EXT_QUEUE':0x39,'COMPONENT':0x3a,'COMPONENT_DB':0x3b,'COMPONENT_QUEUE':0x3c,'COMPONENT_EXT':0x3d,'COMPONENT_EXT_DB':0x3e,'COMPONENT_EXT_QUEUE':0x3f,'REL':0x40,'BIREL':0x41,'REL_U':0x42,'REL_D':0x43,'REL_L':0x44,'REL_R':0x45,'REL_B':0x46,'REL_INDEX':0x47,'UPDATE_EL_STYLE':0x48,'UPDATE_REL_STYLE':0x49,'UPDATE_LAYOUT_CONFIG':0x4a,'attribute':0x4b,'STR':0x4c,'STR_KEY':0x4d,'STR_VALUE':0x4e,'ATTRIBUTE':0x4f,'ATTRIBUTE_EMPTY':0x50,'$accept':0x0,'$end':0x1},'terminals_':{0x2:'error',0x6:'direction_tb',0x7:'direction_bt',0x8:'direction_rl',0x9:bP(0x14b),0xb:bP(0x110),0xc:'NEWLINE',0xe:'EOF',0xf:'C4_CONTAINER',0x10:'C4_COMPONENT',0x11:bP(0xb6),0x12:'C4_DEPLOYMENT',0x16:'title',0x17:bP(0x16b),0x18:'acc_title',0x19:'acc_title_value',0x1a:'acc_descr',0x1b:'acc_descr_value',0x1c:'acc_descr_multiline_value',0x21:'LBRACE',0x22:'ENTERPRISE_BOUNDARY',0x24:'SYSTEM_BOUNDARY',0x25:bP(0xea),0x26:'CONTAINER_BOUNDARY',0x27:'NODE',0x28:'NODE_L',0x29:'NODE_R',0x2a:'RBRACE',0x2c:'PERSON',0x2d:bP(0x154),0x2e:'SYSTEM',0x2f:'SYSTEM_DB',0x30:'SYSTEM_QUEUE',0x31:'SYSTEM_EXT',0x32:bP(0xf5),0x33:'SYSTEM_EXT_QUEUE',0x34:'CONTAINER',0x35:'CONTAINER_DB',0x36:'CONTAINER_QUEUE',0x37:bP(0xc8),0x38:'CONTAINER_EXT_DB',0x39:bP(0x11d),0x3a:'COMPONENT',0x3b:'COMPONENT_DB',0x3c:'COMPONENT_QUEUE',0x3d:bP(0x164),0x3e:'COMPONENT_EXT_DB',0x3f:bP(0x159),0x40:'REL',0x41:bP(0xe3),0x42:bP(0x16a),0x43:'REL_D',0x44:'REL_L',0x45:'REL_R',0x46:'REL_B',0x47:bP(0x13c),0x48:'UPDATE_EL_STYLE',0x49:'UPDATE_REL_STYLE',0x4a:'UPDATE_LAYOUT_CONFIG',0x4c:'STR',0x4d:'STR_KEY',0x4e:bP(0x14e),0x4f:'ATTRIBUTE',0x50:'ATTRIBUTE_EMPTY'},'productions_':[0x0,[0x3,0x1],[0x3,0x1],[0x5,0x1],[0x5,0x1],[0x5,0x1],[0x5,0x1],[0x4,0x1],[0xa,0x4],[0xa,0x4],[0xa,0x4],[0xa,0x4],[0xa,0x4],[0xd,0x1],[0xd,0x1],[0xd,0x2],[0x13,0x1],[0x13,0x2],[0x13,0x3],[0x15,0x1],[0x15,0x1],[0x15,0x2],[0x15,0x2],[0x15,0x1],[0x1d,0x3],[0x1e,0x3],[0x1e,0x3],[0x1e,0x4],[0x20,0x2],[0x20,0x2],[0x20,0x2],[0x20,0x2],[0x20,0x2],[0x20,0x2],[0x20,0x2],[0x1f,0x1],[0x14,0x1],[0x14,0x2],[0x14,0x3],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x1],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x2b,0x2],[0x23,0x1],[0x23,0x2],[0x4b,0x1],[0x4b,0x2],[0x4b,0x1],[0x4b,0x1]],'performAction':a1(function(bh,bi,bj,bk,bl,bm,bn){const bQ=bP;var bo=bm['length']-0x1;switch(bl){case 0x3:bk['setDirection']('TB');break;case 0x4:bk['setDirection']('BT');break;case 0x5:bk['setDirection']('RL');break;case 0x6:bk[bQ(0xe2)]('LR');break;case 0x8:case 0x9:case 0xa:case 0xb:case 0xc:bk['setC4Type'](bm[bo-0x3]);break;case 0x13:bk['setTitle'](bm[bo]['substring'](0x6)),this['$']=bm[bo]['substring'](0x6);break;case 0x14:bk['setAccDescription'](bm[bo]['substring'](0xf)),this['$']=bm[bo]['substring'](0xf);break;case 0x15:this['$']=bm[bo]['trim'](),bk['setTitle'](this['$']);break;case 0x16:case 0x17:this['$']=bm[bo]['trim'](),bk['setAccDescription'](this['$']);break;case 0x1c:bm[bo]['splice'](0x2,0x0,'ENTERPRISE'),bk['addPersonOrSystemBoundary'](...bm[bo]),this['$']=bm[bo];break;case 0x1d:bm[bo]['splice'](0x2,0x0,'SYSTEM'),bk['addPersonOrSystemBoundary'](...bm[bo]),this['$']=bm[bo];break;case 0x1e:bk['addPersonOrSystemBoundary'](...bm[bo]),this['$']=bm[bo];break;case 0x1f:bm[bo]['splice'](0x2,0x0,'CONTAINER'),bk['addContainerBoundary'](...bm[bo]),this['$']=bm[bo];break;case 0x20:bk['addDeploymentNode']('node',...bm[bo]),this['$']=bm[bo];break;case 0x21:bk['addDeploymentNode'](bQ(0x115),...bm[bo]),this['$']=bm[bo];break;case 0x22:bk['addDeploymentNode'](bQ(0x170),...bm[bo]),this['$']=bm[bo];break;case 0x23:bk['popBoundaryParseStack']();break;case 0x27:bk['addPersonOrSystem']('person',...bm[bo]),this['$']=bm[bo];break;case 0x28:bk[bQ(0xb5)]('external_person',...bm[bo]),this['$']=bm[bo];break;case 0x29:bk['addPersonOrSystem']('system',...bm[bo]),this['$']=bm[bo];break;case 0x2a:bk['addPersonOrSystem'](bQ(0xfa),...bm[bo]),this['$']=bm[bo];break;case 0x2b:bk['addPersonOrSystem'](bQ(0x12e),...bm[bo]),this['$']=bm[bo];break;case 0x2c:bk['addPersonOrSystem'](bQ(0x126),...bm[bo]),this['$']=bm[bo];break;case 0x2d:bk['addPersonOrSystem']('external_system_db',...bm[bo]),this['$']=bm[bo];break;case 0x2e:bk[bQ(0xb5)](bQ(0xfd),...bm[bo]),this['$']=bm[bo];break;case 0x2f:bk['addContainer'](bQ(0xc9),...bm[bo]),this['$']=bm[bo];break;case 0x30:bk['addContainer']('container_db',...bm[bo]),this['$']=bm[bo];break;case 0x31:bk['addContainer']('container_queue',...bm[bo]),this['$']=bm[bo];break;case 0x32:bk['addContainer'](bQ(0xb0),...bm[bo]),this['$']=bm[bo];break;case 0x33:bk['addContainer']('external_container_db',...bm[bo]),this['$']=bm[bo];break;case 0x34:bk['addContainer']('external_container_queue',...bm[bo]),this['$']=bm[bo];break;case 0x35:bk['addComponent']('component',...bm[bo]),this['$']=bm[bo];break;case 0x36:bk['addComponent']('component_db',...bm[bo]),this['$']=bm[bo];break;case 0x37:bk['addComponent']('component_queue',...bm[bo]),this['$']=bm[bo];break;case 0x38:bk[bQ(0x157)]('external_component',...bm[bo]),this['$']=bm[bo];break;case 0x39:bk['addComponent']('external_component_db',...bm[bo]),this['$']=bm[bo];break;case 0x3a:bk[bQ(0x157)]('external_component_queue',...bm[bo]),this['$']=bm[bo];break;case 0x3c:bk['addRel'](bQ(0x137),...bm[bo]),this['$']=bm[bo];break;case 0x3d:bk['addRel']('birel',...bm[bo]),this['$']=bm[bo];break;case 0x3e:bk['addRel'](bQ(0x12b),...bm[bo]),this['$']=bm[bo];break;case 0x3f:bk['addRel']('rel_d',...bm[bo]),this['$']=bm[bo];break;case 0x40:bk['addRel']('rel_l',...bm[bo]),this['$']=bm[bo];break;case 0x41:bk['addRel']('rel_r',...bm[bo]),this['$']=bm[bo];break;case 0x42:bk['addRel']('rel_b',...bm[bo]),this['$']=bm[bo];break;case 0x43:bm[bo]['splice'](0x0,0x1),bk[bQ(0x143)]('rel',...bm[bo]),this['$']=bm[bo];break;case 0x44:bk['updateElStyle']('update_el_style',...bm[bo]),this['$']=bm[bo];break;case 0x45:bk[bQ(0x10f)]('update_rel_style',...bm[bo]),this['$']=bm[bo];break;case 0x46:bk[bQ(0x11c)]('update_layout_config',...bm[bo]),this['$']=bm[bo];break;case 0x47:this['$']=[bm[bo]];break;case 0x48:bm[bo]['unshift'](bm[bo-0x1]),this['$']=bm[bo];break;case 0x49:case 0x4b:this['$']=bm[bo][bQ(0x163)]();break;case 0x4a:let bp={};bp[bm[bo-0x1]['trim']()]=bm[bo]['trim'](),this['$']=bp;break;case 0x4c:this['$']='';break;}},bP(0x141)),'table':[{0x3:0x1,0x4:0x2,0x5:0x3,0x6:[0x1,0x5],0x7:[0x1,0x6],0x8:[0x1,0x7],0x9:[0x1,0x8],0xa:0x4,0xb:[0x1,0x9],0xf:[0x1,0xa],0x10:[0x1,0xb],0x11:[0x1,0xc],0x12:[0x1,0xd]},{0x1:[0x3]},{0x1:[0x2,0x1]},{0x1:[0x2,0x2]},{0x1:[0x2,0x7]},{0x1:[0x2,0x3]},{0x1:[0x2,0x4]},{0x1:[0x2,0x5]},{0x1:[0x2,0x6]},{0xc:[0x1,0xe]},{0xc:[0x1,0xf]},{0xc:[0x1,0x10]},{0xc:[0x1,0x11]},{0xc:[0x1,0x12]},{0xd:0x13,0x13:0x14,0x14:0x15,0x15:0x16,0x16:al,0x17:am,0x18:an,0x1a:ao,0x1c:ap,0x1d:0x31,0x1e:0x3d,0x20:0x3e,0x22:aq,0x24:ar,0x25:as,0x26:at,0x27:au,0x28:av,0x29:aw,0x2b:0x17,0x2c:ax,0x2d:ay,0x2e:az,0x2f:aA,0x30:aB,0x31:aC,0x32:aD,0x33:aE,0x34:aF,0x35:aG,0x36:aH,0x37:aI,0x38:aJ,0x39:aK,0x3a:aL,0x3b:aM,0x3c:aN,0x3d:aO,0x3e:aP,0x3f:aQ,0x40:aR,0x41:aS,0x42:aT,0x43:aU,0x44:aV,0x45:aW,0x46:aX,0x47:aY,0x48:aZ,0x49:b0,0x4a:b1},{0xd:0x46,0x13:0x14,0x14:0x15,0x15:0x16,0x16:al,0x17:am,0x18:an,0x1a:ao,0x1c:ap,0x1d:0x31,0x1e:0x3d,0x20:0x3e,0x22:aq,0x24:ar,0x25:as,0x26:at,0x27:au,0x28:av,0x29:aw,0x2b:0x17,0x2c:ax,0x2d:ay,0x2e:az,0x2f:aA,0x30:aB,0x31:aC,0x32:aD,0x33:aE,0x34:aF,0x35:aG,0x36:aH,0x37:aI,0x38:aJ,0x39:aK,0x3a:aL,0x3b:aM,0x3c:aN,0x3d:aO,0x3e:aP,0x3f:aQ,0x40:aR,0x41:aS,0x42:aT,0x43:aU,0x44:aV,0x45:aW,0x46:aX,0x47:aY,0x48:aZ,0x49:b0,0x4a:b1},{0xd:0x47,0x13:0x14,0x14:0x15,0x15:0x16,0x16:al,0x17:am,0x18:an,0x1a:ao,0x1c:ap,0x1d:0x31,0x1e:0x3d,0x20:0x3e,0x22:aq,0x24:ar,0x25:as,0x26:at,0x27:au,0x28:av,0x29:aw,0x2b:0x17,0x2c:ax,0x2d:ay,0x2e:az,0x2f:aA,0x30:aB,0x31:aC,0x32:aD,0x33:aE,0x34:aF,0x35:aG,0x36:aH,0x37:aI,0x38:aJ,0x39:aK,0x3a:aL,0x3b:aM,0x3c:aN,0x3d:aO,0x3e:aP,0x3f:aQ,0x40:aR,0x41:aS,0x42:aT,0x43:aU,0x44:aV,0x45:aW,0x46:aX,0x47:aY,0x48:aZ,0x49:b0,0x4a:b1},{0xd:0x48,0x13:0x14,0x14:0x15,0x15:0x16,0x16:al,0x17:am,0x18:an,0x1a:ao,0x1c:ap,0x1d:0x31,0x1e:0x3d,0x20:0x3e,0x22:aq,0x24:ar,0x25:as,0x26:at,0x27:au,0x28:av,0x29:aw,0x2b:0x17,0x2c:ax,0x2d:ay,0x2e:az,0x2f:aA,0x30:aB,0x31:aC,0x32:aD,0x33:aE,0x34:aF,0x35:aG,0x36:aH,0x37:aI,0x38:aJ,0x39:aK,0x3a:aL,0x3b:aM,0x3c:aN,0x3d:aO,0x3e:aP,0x3f:aQ,0x40:aR,0x41:aS,0x42:aT,0x43:aU,0x44:aV,0x45:aW,0x46:aX,0x47:aY,0x48:aZ,0x49:b0,0x4a:b1},{0xd:0x49,0x13:0x14,0x14:0x15,0x15:0x16,0x16:al,0x17:am,0x18:an,0x1a:ao,0x1c:ap,0x1d:0x31,0x1e:0x3d,0x20:0x3e,0x22:aq,0x24:ar,0x25:as,0x26:at,0x27:au,0x28:av,0x29:aw,0x2b:0x17,0x2c:ax,0x2d:ay,0x2e:az,0x2f:aA,0x30:aB,0x31:aC,0x32:aD,0x33:aE,0x34:aF,0x35:aG,0x36:aH,0x37:aI,0x38:aJ,0x39:aK,0x3a:aL,0x3b:aM,0x3c:aN,0x3d:aO,0x3e:aP,0x3f:aQ,0x40:aR,0x41:aS,0x42:aT,0x43:aU,0x44:aV,0x45:aW,0x46:aX,0x47:aY,0x48:aZ,0x49:b0,0x4a:b1},{0xe:[0x1,0x4a]},ak(b2,[0x2,0xd],{0x2b:0x17,0x1d:0x31,0x1e:0x3d,0x20:0x3e,0x14:0x4b,0x22:aq,0x24:ar,0x25:as,0x26:at,0x27:au,0x28:av,0x29:aw,0x2c:ax,0x2d:ay,0x2e:az,0x2f:aA,0x30:aB,0x31:aC,0x32:aD,0x33:aE,0x34:aF,0x35:aG,0x36:aH,0x37:aI,0x38:aJ,0x39:aK,0x3a:aL,0x3b:aM,0x3c:aN,0x3d:aO,0x3e:aP,0x3f:aQ,0x40:aR,0x41:aS,0x42:aT,0x43:aU,0x44:aV,0x45:aW,0x46:aX,0x47:aY,0x48:aZ,0x49:b0,0x4a:b1}),ak(b2,[0x2,0xe]),ak(b3,[0x2,0x10],{0xc:[0x1,0x4c]}),ak(b2,[0x2,0x24],{0xc:[0x1,0x4d]}),ak(b4,[0x2,0x13]),ak(b4,[0x2,0x14]),{0x19:[0x1,0x4e]},{0x1b:[0x1,0x4f]},ak(b4,[0x2,0x17]),{0x23:0x50,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x56,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x57,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x58,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x59,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x5a,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x5b,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x5c,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x5d,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x5e,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x5f,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x60,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x61,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x62,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x63,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x64,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x65,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x66,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x67,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x68,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},ak(b9,[0x2,0x3b]),{0x23:0x69,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x6a,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x6b,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x6c,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x6d,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x6e,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x6f,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x70,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x71,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x72,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x73,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x14:0x74,0x1d:0x31,0x1e:0x3d,0x20:0x3e,0x22:aq,0x24:ar,0x25:as,0x26:at,0x27:au,0x28:av,0x29:aw,0x2b:0x17,0x2c:ax,0x2d:ay,0x2e:az,0x2f:aA,0x30:aB,0x31:aC,0x32:aD,0x33:aE,0x34:aF,0x35:aG,0x36:aH,0x37:aI,0x38:aJ,0x39:aK,0x3a:aL,0x3b:aM,0x3c:aN,0x3d:aO,0x3e:aP,0x3f:aQ,0x40:aR,0x41:aS,0x42:aT,0x43:aU,0x44:aV,0x45:aW,0x46:aX,0x47:aY,0x48:aZ,0x49:b0,0x4a:b1},{0xc:[0x1,0x76],0x21:[0x1,0x75]},{0x23:0x77,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x78,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x79,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x7a,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x7b,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x7c,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0x23:0x7d,0x4b:0x51,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8},{0xe:[0x1,0x7e]},{0xe:[0x1,0x7f]},{0xe:[0x1,0x80]},{0xe:[0x1,0x81]},{0x1:[0x2,0x8]},ak(b2,[0x2,0xf]),ak(b3,[0x2,0x11],{0x15:0x16,0x13:0x82,0x16:al,0x17:am,0x18:an,0x1a:ao,0x1c:ap}),ak(b2,[0x2,0x25],{0x13:0x14,0x14:0x15,0x15:0x16,0x2b:0x17,0x1d:0x31,0x1e:0x3d,0x20:0x3e,0xd:0x83,0x16:al,0x17:am,0x18:an,0x1a:ao,0x1c:ap,0x22:aq,0x24:ar,0x25:as,0x26:at,0x27:au,0x28:av,0x29:aw,0x2c:ax,0x2d:ay,0x2e:az,0x2f:aA,0x30:aB,0x31:aC,0x32:aD,0x33:aE,0x34:aF,0x35:aG,0x36:aH,0x37:aI,0x38:aJ,0x39:aK,0x3a:aL,0x3b:aM,0x3c:aN,0x3d:aO,0x3e:aP,0x3f:aQ,0x40:aR,0x41:aS,0x42:aT,0x43:aU,0x44:aV,0x45:aW,0x46:aX,0x47:aY,0x48:aZ,0x49:b0,0x4a:b1}),ak(b4,[0x2,0x15]),ak(b4,[0x2,0x16]),ak(b9,[0x2,0x27]),ak(ba,[0x2,0x47],{0x4b:0x51,0x23:0x84,0x4c:b5,0x4d:b6,0x4f:b7,0x50:b8}),ak(bb,[0x2,0x49]),{0x4e:[0x1,0x85]},ak(bb,[0x2,0x4b]),ak(bb,[0x2,0x4c]),ak(b9,[0x2,0x28]),ak(b9,[0x2,0x29]),ak(b9,[0x2,0x2a]),ak(b9,[0x2,0x2b]),ak(b9,[0x2,0x2c]),ak(b9,[0x2,0x2d]),ak(b9,[0x2,0x2e]),ak(b9,[0x2,0x2f]),ak(b9,[0x2,0x30]),ak(b9,[0x2,0x31]),ak(b9,[0x2,0x32]),ak(b9,[0x2,0x33]),ak(b9,[0x2,0x34]),ak(b9,[0x2,0x35]),ak(b9,[0x2,0x36]),ak(b9,[0x2,0x37]),ak(b9,[0x2,0x38]),ak(b9,[0x2,0x39]),ak(b9,[0x2,0x3a]),ak(b9,[0x2,0x3c]),ak(b9,[0x2,0x3d]),ak(b9,[0x2,0x3e]),ak(b9,[0x2,0x3f]),ak(b9,[0x2,0x40]),ak(b9,[0x2,0x41]),ak(b9,[0x2,0x42]),ak(b9,[0x2,0x43]),ak(b9,[0x2,0x44]),ak(b9,[0x2,0x45]),ak(b9,[0x2,0x46]),{0x1f:0x86,0x2a:[0x1,0x87]},{0xc:[0x1,0x88]},{0x21:[0x1,0x89]},ak(bc,[0x2,0x1c]),ak(bc,[0x2,0x1d]),ak(bc,[0x2,0x1e]),ak(bc,[0x2,0x1f]),ak(bc,[0x2,0x20]),ak(bc,[0x2,0x21]),ak(bc,[0x2,0x22]),{0x1:[0x2,0x9]},{0x1:[0x2,0xa]},{0x1:[0x2,0xb]},{0x1:[0x2,0xc]},ak(b3,[0x2,0x12]),ak(b2,[0x2,0x26]),ak(ba,[0x2,0x48]),ak(bb,[0x2,0x4a]),ak(b9,[0x2,0x18]),ak(b9,[0x2,0x23]),ak(bd,[0x2,0x19]),ak(bd,[0x2,0x1a],{0xc:[0x1,0x8a]}),ak(bd,[0x2,0x1b])],'defaultActions':{0x2:[0x2,0x1],0x3:[0x2,0x2],0x4:[0x2,0x7],0x5:[0x2,0x3],0x6:[0x2,0x4],0x7:[0x2,0x5],0x8:[0x2,0x6],0x4a:[0x2,0x8],0x7e:[0x2,0x9],0x7f:[0x2,0xa],0x80:[0x2,0xb],0x81:[0x2,0xc]},'parseError':a1(function(bh,bi){const bR=bP;if(bi[bR(0x102)])this['trace'](bh);else{var bj=Error(bh);throw bj['hash']=bi,bj;}},'parseError'),'parse':a1(function(bh){const bS=bP;var bi=this,bj=[0x0],bk=[],bl=[null],bm=[],bn=this['table'],bo='',bp=0x0,bq=0x0,br=0x0,bs=0x2,bt=0x1,bu=bm['slice']['call'](arguments,0x1),bv=Object[bS(0x161)](this['lexer']),bw={'yy':{}};for(var bx in this['yy'])Object['prototype']['hasOwnProperty']['call'](this['yy'],bx)&&(bw['yy'][bx]=this['yy'][bx]);bv['setInput'](bh,bw['yy']),bw['yy']['lexer']=bv,bw['yy']['parser']=this,bv['yylloc']===void 0x0&&(bv['yylloc']={});var by=bv['yylloc'];bm[bS(0x168)](by);var bz=bv['options']&&bv['options']['ranges'];typeof bw['yy'][bS(0xda)]=='function'?this['parseError']=bw['yy'][bS(0xda)]:this['parseError']=Object['getPrototypeOf'](this)['parseError'];function bA(bN){bj['length']-=0x2*bN,bl['length']-=bN,bm['length']-=bN;}a1(bA,bS(0xdc));function bB(){var bN=bk['pop']()||bv['lex']()||bt;return typeof bN!='number'&&(bN instanceof Array&&(bk=bN,bN=bk['pop']()),bN=bi['symbols_'][bN]||bN),bN;}a1(bB,bS(0x128));for(var bC,bD,bE,bF,bG,bH={},bI,bJ,bK,bL;;){if(bE=bj[bj['length']-0x1],this['defaultActions'][bE]?bF=this['defaultActions'][bE]:(bC==null&&(bC=bB()),bF=bn[bE]&&bn[bE][bC]),bF===void 0x0||!bF['length']||!bF[0x0]){var bM='';for(bI in(bL=[],bn[bE]))this['terminals_'][bI]&&bI>bs&&bL[bS(0x168)]('\x27'+this['terminals_'][bI]+'\x27');bM=bv['showPosition']?'Parse\x20error\x20on\x20line\x20'+(bp+0x1)+':\x0a'+bv['showPosition']()+'\x0aExpecting\x20'+bL['join'](',\x20')+',\x20got\x20\x27'+(this[bS(0xd8)][bC]||bC)+'\x27':'Parse\x20error\x20on\x20line\x20'+(bp+0x1)+':\x20Unexpected\x20'+(bC==bt?'end\x20of\x20input':'\x27'+(this['terminals_'][bC]||bC)+'\x27'),this['parseError'](bM,{'text':bv['match'],'token':this[bS(0xd8)][bC]||bC,'line':bv[bS(0xde)],'loc':by,'expected':bL});}if(bF[0x0]instanceof Array&&bF['length']>0x1)throw Error('Parse\x20Error:\x20multiple\x20actions\x20possible\x20at\x20state:\x20'+bE+',\x20token:\x20'+bC);switch(bF[0x0]){case 0x1:bj['push'](bC),bl[bS(0x168)](bv['yytext']),bm[bS(0x168)](bv['yylloc']),bj['push'](bF[0x1]),bC=null,bD?(bC=bD,bD=null):(bq=bv['yyleng'],bo=bv['yytext'],bp=bv['yylineno'],by=bv['yylloc'],br>0x0&&br--);break;case 0x2:if(bJ=this['productions_'][bF[0x1]][0x1],bH['$']=bl[bl['length']-bJ],bH['_$']={'first_line':bm[bm['length']-(bJ||0x1)]['first_line'],'last_line':bm[bm['length']-0x1]['last_line'],'first_column':bm[bm['length']-(bJ||0x1)]['first_column'],'last_column':bm[bm['length']-0x1][bS(0x140)]},bz&&(bH['_$']['range']=[bm[bm['length']-(bJ||0x1)][bS(0x151)][0x0],bm[bm[bS(0xf1)]-0x1]['range'][0x1]]),bG=this['performAction']['apply'](bH,[bo,bq,bp,bw['yy'],bF[0x1],bl,bm][bS(0x14c)](bu)),bG!==void 0x0)return bG;bJ&&(bj=bj['slice'](0x0,-0x1*bJ*0x2),bl=bl['slice'](0x0,-0x1*bJ),bm=bm[bS(0x148)](0x0,-0x1*bJ)),bj['push'](this['productions_'][bF[0x1]][0x0]),bl['push'](bH['$']),bm[bS(0x168)](bH['_$']),bK=bn[bj[bj[bS(0xf1)]-0x2]][bj[bj[bS(0xf1)]-0x1]],bj['push'](bK);break;case 0x3:return!0x0;}}return!0x0;},bP(0x139))};bf['lexer']=(function(){const bW=bP;return{'EOF':0x1,'parseError':a1(function(bh,bi){if(this['yy']['parser'])this['yy']['parser']['parseError'](bh,bi);else throw Error(bh);},'parseError'),'setInput':a1(function(bh,bi){const bT=a0;return this['yy']=bi||this['yy']||{},this[bT(0x162)]=bh,this['_more']=this['_backtrack']=this['done']=!0x1,this['yylineno']=this['yyleng']=0x0,this['yytext']=this['matched']=this['match']='',this[bT(0x135)]=['INITIAL'],this['yylloc']={'first_line':0x1,'first_column':0x0,'last_line':0x1,'last_column':0x0},this['options'][bT(0x15f)]&&(this['yylloc']['range']=[0x0,0x0]),this['offset']=0x0,this;},'setInput'),'input':a1(function(){const bU=a0;var bh=this['_input'][0x0];return this['yytext']+=bh,this['yyleng']++,this['offset']++,this['match']+=bh,this[bU(0x146)]+=bh,bh['match'](/(?:\r\n?|\n).*/g)?(this['yylineno']++,this['yylloc']['last_line']++):this['yylloc'][bU(0x140)]++,this['options']['ranges']&&this['yylloc']['range'][0x1]++,this['_input']=this[bU(0x162)]['slice'](0x1),bh;},'input'),'unput':a1(function(bh){const bV=a0;var bi=bh['length'],bj=bh['split'](/(?:\r\n?|\n)/g);this['_input']=bh+this['_input'],this[bV(0xc3)]=this[bV(0xc3)]['substr'](0x0,this[bV(0xc3)]['length']-bi),this['offset']-=bi;var bk=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']['length']-0x1),bj['length']-0x1&&(this['yylineno']-=bj['length']-0x1);var bl=this['yylloc']['range'];return this['yylloc']={'first_line':this['yylloc']['first_line'],'last_line':this['yylineno']+0x1,'first_column':this['yylloc']['first_column'],'last_column':bj?(bj['length']===bk[bV(0xf1)]?this['yylloc']['first_column']:0x0)+bk[bk['length']-bj['length']]['length']-bj[0x0]['length']:this['yylloc'][bV(0xe7)]-bi},this['options']['ranges']&&(this['yylloc']['range']=[bl[0x0],bl[0x0]+this['yyleng']-bi]),this['yyleng']=this['yytext'][bV(0xf1)],this;},bW(0xf6)),'more':a1(function(){return this['_more']=!0x0,this;},'more'),'reject':a1(function(){const bX=bW;if(this['options']['backtrack_lexer'])this['_backtrack']=!0x0;else return this[bX(0xda)]('Lexical\x20error\x20on\x20line\x20'+(this[bX(0xde)]+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[bX(0x105)](),{'text':'','token':null,'line':this['yylineno']});return this;},'reject'),'less':a1(function(bh){this['unput'](this['match']['slice'](bh));},'less'),'pastInput':a1(function(){const bY=bW;var bh=this['matched']['substr'](0x0,this['matched']['length']-this[bY(0x11b)]['length']);return(bh['length']>0x14?'...':'')+bh['substr'](-0x14)[bY(0x121)](/\n/g,'');},bW(0xce)),'upcomingInput':a1(function(){const bZ=bW;var bh=this['match'];return bh[bZ(0xf1)]<0x14&&(bh+=this['_input']['substr'](0x0,0x14-bh['length'])),(bh['substr'](0x0,0x14)+(bh['length']>0x14?'...':''))['replace'](/\n/g,'');},'upcomingInput'),'showPosition':a1(function(){var bh=this['pastInput'](),bi=Array(bh['length']+0x1)['join']('-');return bh+this['upcomingInput']()+'\x0a'+bi+'^';},'showPosition'),'test_match':a1(function(bh,bi){const c0=bW;var bj,bk,bl;if(this['options']['backtrack_lexer']&&(bl={'yylineno':this['yylineno'],'yylloc':{'first_line':this[c0(0x15c)]['first_line'],'last_line':this['last_line'],'first_column':this['yylloc']['first_column'],'last_column':this[c0(0x15c)]['last_column']},'yytext':this[c0(0xc3)],'match':this['match'],'matches':this[c0(0x16f)],'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[c0(0x104)]},this[c0(0x13d)]['ranges']&&(bl[c0(0x15c)]['range']=this['yylloc']['range']['slice'](0x0))),bk=bh[0x0]['match'](/(?:\r\n?|\n).*/g),bk&&(this['yylineno']+=bk['length']),this['yylloc']={'first_line':this['yylloc']['last_line'],'last_line':this['yylineno']+0x1,'first_column':this['yylloc']['last_column'],'last_column':bk?bk[bk['length']-0x1]['length']-bk[bk[c0(0xf1)]-0x1]['match'](/\r?\n?/)[0x0]['length']:this[c0(0x15c)][c0(0x140)]+bh[0x0][c0(0xf1)]},this['yytext']+=bh[0x0],this['match']+=bh[0x0],this['matches']=bh,this['yyleng']=this['yytext']['length'],this['options']['ranges']&&(this['yylloc']['range']=[this['offset'],this['offset']+=this['yyleng']]),this['_more']=!0x1,this['_backtrack']=!0x1,this['_input']=this['_input']['slice'](bh[0x0]['length']),this['matched']+=bh[0x0],bj=this['performAction']['call'](this,this['yy'],this,bi,this['conditionStack'][this['conditionStack']['length']-0x1]),this['done']&&this['_input']&&(this[c0(0x104)]=!0x1),bj)return bj;if(this['_backtrack']){for(var bm in bl)this[bm]=bl[bm];return!0x1;}return!0x1;},'test_match'),'next':a1(function(){const c1=bW;if(this[c1(0x104)])return this['EOF'];this['_input']||(this['done']=!0x0);var bh,bi,bj,bk;this['_more']||(this['yytext']='',this['match']='');for(var bl=this['_currentRules'](),bm=0x0;bm<bl['length'];bm++)if(bj=this['_input']['match'](this['rules'][bl[bm]]),bj&&(!bi||bj[0x0]['length']>bi[0x0]['length'])){if(bi=bj,bk=bm,this['options']['backtrack_lexer']){if(bh=this['test_match'](bj,bl[bm]),bh!==!0x1)return bh;if(this['_backtrack']){bi=!0x1;continue;}else return!0x1;}else{if(!this[c1(0x13d)]['flex'])break;}}return bi?(bh=this[c1(0x116)](bi,bl[bk]),bh===!0x1?!0x1:bh):this[c1(0x162)]===''?this['EOF']:this['parseError']('Lexical\x20error\x20on\x20line\x20'+(this['yylineno']+0x1)+c1(0xe1)+this['showPosition'](),{'text':'','token':null,'line':this['yylineno']});},'next'),'lex':a1(function(){const c2=bW;return this['next']()||this[c2(0x128)]();},'lex'),'begin':a1(function(bh){const c3=bW;this[c3(0x135)]['push'](bh);},'begin'),'popState':a1(function(){const c4=bW;return this[c4(0x135)]['length']-0x1>0x0?this['conditionStack']['pop']():this['conditionStack'][0x0];},bW(0x103)),'_currentRules':a1(function(){const c5=bW;return this['conditionStack']['length']&&this['conditionStack'][this['conditionStack'][c5(0xf1)]-0x1]?this['conditions'][this['conditionStack'][this[c5(0x135)]['length']-0x1]]['rules']:this['conditions']['INITIAL']['rules'];},'_currentRules'),'topState':a1(function(bh){return bh=this['conditionStack']['length']-0x1-Math['abs'](bh||0x0),bh>=0x0?this['conditionStack'][bh]:'INITIAL';},'topState'),'pushState':a1(function(bh){this['begin'](bh);},'pushState'),'stateStackSize':a1(function(){return this['conditionStack']['length'];},bW(0xf7)),'options':{},'performAction':a1(function(bh,bi,bj,bk){const c6=bW;switch(bj){case 0x0:return 0x6;case 0x1:return 0x7;case 0x2:return 0x8;case 0x3:return 0x9;case 0x4:return 0x16;case 0x5:return 0x17;case 0x6:return this['begin'](c6(0xae)),0x18;case 0x7:return this['popState'](),'acc_title_value';case 0x8:return this[c6(0xcb)](c6(0xbd)),0x1a;case 0x9:return this['popState'](),'acc_descr_value';case 0xa:this['begin']('acc_descr_multiline');break;case 0xb:this['popState']();break;case 0xc:return'acc_descr_multiline_value';case 0xd:break;case 0xe:c;break;case 0xf:return 0xc;case 0x10:break;case 0x11:return 0xb;case 0x12:return 0xf;case 0x13:return 0x10;case 0x14:return 0x11;case 0x15:return 0x12;case 0x16:return this['begin'](c6(0xf2)),0x2d;case 0x17:return this['begin']('person'),0x2c;case 0x18:return this['begin'](c6(0x127)),0x33;case 0x19:return this[c6(0xcb)]('system_ext_db'),0x32;case 0x1a:return this['begin'](c6(0x13f)),0x31;case 0x1b:return this[c6(0xcb)]('system_queue'),0x30;case 0x1c:return this[c6(0xcb)]('system_db'),0x2f;case 0x1d:return this['begin'](c6(0x13e)),0x2e;case 0x1e:return this['begin']('boundary'),0x25;case 0x1f:return this['begin'](c6(0xb2)),0x22;case 0x20:return this['begin']('system_boundary'),0x24;case 0x21:return this['begin']('container_ext_queue'),0x39;case 0x22:return this['begin']('container_ext_db'),0x38;case 0x23:return this['begin']('container_ext'),0x37;case 0x24:return this['begin']('container_queue'),0x36;case 0x25:return this[c6(0xcb)](c6(0x122)),0x35;case 0x26:return this['begin']('container'),0x34;case 0x27:return this['begin']('container_boundary'),0x26;case 0x28:return this[c6(0xcb)]('component_ext_queue'),0x3f;case 0x29:return this[c6(0xcb)]('component_ext_db'),0x3e;case 0x2a:return this['begin']('component_ext'),0x3d;case 0x2b:return this['begin'](c6(0xb9)),0x3c;case 0x2c:return this['begin']('component_db'),0x3b;case 0x2d:return this['begin']('component'),0x3a;case 0x2e:return this[c6(0xcb)]('node'),0x27;case 0x2f:return this['begin']('node'),0x27;case 0x30:return this['begin']('node_l'),0x28;case 0x31:return this['begin']('node_r'),0x29;case 0x32:return this['begin']('rel'),0x40;case 0x33:return this[c6(0xcb)]('birel'),0x41;case 0x34:return this['begin'](c6(0x12b)),0x42;case 0x35:return this['begin']('rel_u'),0x42;case 0x36:return this['begin']('rel_d'),0x43;case 0x37:return this['begin']('rel_d'),0x43;case 0x38:return this[c6(0xcb)]('rel_l'),0x44;case 0x39:return this['begin']('rel_l'),0x44;case 0x3a:return this['begin']('rel_r'),0x45;case 0x3b:return this['begin']('rel_r'),0x45;case 0x3c:return this['begin']('rel_b'),0x46;case 0x3d:return this['begin']('rel_index'),0x47;case 0x3e:return this[c6(0xcb)]('update_el_style'),0x48;case 0x3f:return this[c6(0xcb)]('update_rel_style'),0x49;case 0x40:return this['begin']('update_layout_config'),0x4a;case 0x41:return'EOF_IN_STRUCT';case 0x42:return this['begin']('attribute'),c6(0xf8);case 0x43:this['begin']('attribute');break;case 0x44:this[c6(0x103)](),this['popState']();break;case 0x45:return 0x50;case 0x46:break;case 0x47:return 0x50;case 0x48:this[c6(0xcb)]('string');break;case 0x49:this[c6(0x103)]();break;case 0x4a:return'STR';case 0x4b:this['begin']('string_kv');break;case 0x4c:return this['begin']('string_kv_key'),'STR_KEY';case 0x4d:this[c6(0x103)](),this[c6(0xcb)]('string_kv_value');break;case 0x4e:return c6(0x14e);case 0x4f:this['popState'](),this['popState']();break;case 0x50:return'STR';case 0x51:return'LBRACE';case 0x52:return'RBRACE';case 0x53:return'SPACE';case 0x54:return'EOL';case 0x55:return 0xe;}},'anonymous'),'rules':[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],'conditions':{'acc_descr_multiline':{'rules':[0xb,0xc],'inclusive':!0x1},'acc_descr':{'rules':[0x9],'inclusive':!0x1},'acc_title':{'rules':[0x7],'inclusive':!0x1},'string_kv_value':{'rules':[0x4e,0x4f],'inclusive':!0x1},'string_kv_key':{'rules':[0x4d],'inclusive':!0x1},'string_kv':{'rules':[0x4c],'inclusive':!0x1},'string':{'rules':[0x49,0x4a],'inclusive':!0x1},'attribute':{'rules':[0x44,0x45,0x46,0x47,0x48,0x4b,0x50],'inclusive':!0x1},'update_layout_config':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'update_rel_style':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'update_el_style':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'rel_b':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'rel_r':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'rel_l':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'rel_d':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'rel_u':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'rel_bi':{'rules':[],'inclusive':!0x1},'rel':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'node_r':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'node_l':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'node':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'index':{'rules':[],'inclusive':!0x1},'rel_index':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'component_ext_queue':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'component_ext_db':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'component_ext':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'component_queue':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'component_db':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'component':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'container_boundary':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'container_ext_queue':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'container_ext_db':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'container_ext':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'container_queue':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'container_db':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'container':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'birel':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'system_boundary':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'enterprise_boundary':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'boundary':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'system_ext_queue':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'system_ext_db':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'system_ext':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'system_queue':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'system_db':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'system':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'person_ext':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'person':{'rules':[0x41,0x42,0x43,0x44],'inclusive':!0x1},'INITIAL':{'rules':[0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x8,0xa,0xd,0xe,0xf,0x10,0x11,0x12,0x13,0x14,0x15,0x16,0x17,0x18,0x19,0x1a,0x1b,0x1c,0x1d,0x1e,0x1f,0x20,0x21,0x22,0x23,0x24,0x25,0x26,0x27,0x28,0x29,0x2a,0x2b,0x2c,0x2d,0x2e,0x2f,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3a,0x3b,0x3c,0x3d,0x3e,0x3f,0x40,0x51,0x52,0x53,0x54,0x55],'inclusive':!0x0}}};}());function bg(){this['yy']={};}return a1(bg,'Parser'),bg['prototype']=bf,bf[bP(0x129)]=bg,new bg();}());S['parser']=S;var C=S,w=[],T=[''],E='global',D='',O=[{'alias':'global','label':{'text':'global'},'type':{'text':'global'},'tags':null,'link':null,'parentBoundary':''}],k=[],A='',j=!0x1,M=0x4,N=0x2,P,F=a1(function(){return P;},'getC4Type'),I=a1(function(ak){P=ab(ak,a9());},'setC4Type'),L=a1(function(ak,al,am,an,ao,ap,aq,ar,as){const c7=a0;if(ak==null||al==null||am==null||an==null)return;let at={},au=k['find'](av=>av['from']===al&&av['to']===am);if(au?at=au:k['push'](at),at['type']=ak,at[c7(0xb3)]=al,at['to']=am,at['label']={'text':an},ao==null)at['techn']={'text':''};else{if(typeof ao=='object'){let [av,aw]=Object['entries'](ao)[0x0];at[av]={'text':aw};}else at['techn']={'text':ao};}if(ap==null)at[c7(0x16d)]={'text':''};else{if(typeof ap=='object'){let [ax,ay]=Object['entries'](ap)[0x0];at[ax]={'text':ay};}else at['descr']={'text':ap};}if(typeof aq=='object'){let [az,aA]=Object['entries'](aq)[0x0];at[az]=aA;}else at['sprite']=aq;if(typeof ar==c7(0x100)){let [aB,aC]=Object[c7(0x15e)](ar)[0x0];at[aB]=aC;}else at['tags']=ar;if(typeof as=='object'){let [aD,aE]=Object['entries'](as)[0x0];at[aD]=aE;}else at[c7(0xaf)]=as;at['wrap']=de();},c8(0x143)),R=a1(function(ak,al,am,an,ao,ap,aq){const c9=c8;if(al===null||am===null)return;let ar={},as=w['find'](at=>at['alias']===al);if(as&&al===as[c9(0x109)]?ar=as:(ar['alias']=al,w[c9(0x168)](ar)),am==null?ar['label']={'text':''}:ar['label']={'text':am},an==null)ar['descr']={'text':''};else{if(typeof an==c9(0x100)){let [at,au]=Object['entries'](an)[0x0];ar[at]={'text':au};}else ar['descr']={'text':an};}if(typeof ao=='object'){let [av,aw]=Object['entries'](ao)[0x0];ar[av]=aw;}else ar['sprite']=ao;if(typeof ap=='object'){let [ax,ay]=Object['entries'](ap)[0x0];ar[ax]=ay;}else ar['tags']=ap;if(typeof aq=='object'){let [az,aA]=Object['entries'](aq)[0x0];ar[az]=aA;}else ar[c9(0xaf)]=aq;ar['typeC4Shape']={'text':ak},ar['parentBoundary']=E,ar['wrap']=de();},c8(0xb5)),z=a1(function(ak,al,am,an,ao,ap,aq,ar){const ca=c8;if(al===null||am===null)return;let as={},at=w['find'](au=>au['alias']===al);if(at&&al===at[ca(0x109)]?as=at:(as['alias']=al,w['push'](as)),am==null?as['label']={'text':''}:as['label']={'text':am},an==null)as['techn']={'text':''};else{if(typeof an=='object'){let [au,av]=Object['entries'](an)[0x0];as[au]={'text':av};}else as['techn']={'text':an};}if(ao==null)as['descr']={'text':''};else{if(typeof ao==ca(0x100)){let [aw,ax]=Object['entries'](ao)[0x0];as[aw]={'text':ax};}else as['descr']={'text':ao};}if(typeof ap=='object'){let [ay,az]=Object['entries'](ap)[0x0];as[ay]=az;}else as['sprite']=ap;if(typeof aq=='object'){let [aA,aB]=Object[ca(0x15e)](aq)[0x0];as[aA]=aB;}else as['tags']=aq;if(typeof ar=='object'){let [aC,aD]=Object['entries'](ar)[0x0];as[aC]=aD;}else as['link']=ar;as[ca(0x145)]=de(),as['typeC4Shape']={'text':ak},as['parentBoundary']=E;},'addContainer'),B=a1(function(ak,al,am,an,ao,ap,aq,ar){const cb=c8;if(al===null||am===null)return;let as={},at=w[cb(0x14a)](au=>au[cb(0x109)]===al);if(at&&al===at['alias']?as=at:(as['alias']=al,w['push'](as)),am==null?as['label']={'text':''}:as[cb(0x15a)]={'text':am},an==null)as['techn']={'text':''};else{if(typeof an=='object'){let [au,av]=Object['entries'](an)[0x0];as[au]={'text':av};}else as[cb(0x150)]={'text':an};}if(ao==null)as['descr']={'text':''};else{if(typeof ao=='object'){let [aw,ax]=Object['entries'](ao)[0x0];as[aw]={'text':ax};}else as[cb(0x16d)]={'text':ao};}if(typeof ap==cb(0x100)){let [ay,az]=Object['entries'](ap)[0x0];as[ay]=az;}else as['sprite']=ap;if(typeof aq==cb(0x100)){let [aA,aB]=Object[cb(0x15e)](aq)[0x0];as[aA]=aB;}else as['tags']=aq;if(typeof ar=='object'){let [aC,aD]=Object[cb(0x15e)](ar)[0x0];as[aC]=aD;}else as[cb(0xaf)]=ar;as['wrap']=de(),as['typeC4Shape']={'text':ak},as['parentBoundary']=E;},'addComponent'),V=a1(function(ak,al,am,an,ao){const cc=c8;if(ak===null||al===null)return;let ap={},aq=O[cc(0x14a)](ar=>ar['alias']===ak);if(aq&&ak===aq[cc(0x109)]?ap=aq:(ap['alias']=ak,O[cc(0x168)](ap)),al==null?ap['label']={'text':''}:ap[cc(0x15a)]={'text':al},am==null)ap['type']={'text':cc(0x13e)};else{if(typeof am=='object'){let [ar,as]=Object[cc(0x15e)](am)[0x0];ap[ar]={'text':as};}else ap['type']={'text':am};}if(typeof an=='object'){let [at,au]=Object['entries'](an)[0x0];ap[at]=au;}else ap['tags']=an;if(typeof ao=='object'){let [av,aw]=Object['entries'](ao)[0x0];ap[av]=aw;}else ap[cc(0xaf)]=ao;ap['parentBoundary']=E,ap['wrap']=de(),D=E,E=ak,T[cc(0x168)](D);},'addPersonOrSystemBoundary'),H=a1(function(ak,al,am,an,ao){const cd=c8;if(ak===null||al===null)return;let ap={},aq=O['find'](ar=>ar['alias']===ak);if(aq&&ak===aq[cd(0x109)]?ap=aq:(ap[cd(0x109)]=ak,O['push'](ap)),al==null?ap['label']={'text':''}:ap[cd(0x15a)]={'text':al},am==null)ap['type']={'text':'container'};else{if(typeof am=='object'){let [ar,as]=Object['entries'](am)[0x0];ap[ar]={'text':as};}else ap[cd(0xf0)]={'text':am};}if(typeof an=='object'){let [at,au]=Object['entries'](an)[0x0];ap[at]=au;}else ap['tags']=an;if(typeof ao==cd(0x100)){let [av,aw]=Object['entries'](ao)[0x0];ap[av]=aw;}else ap['link']=ao;ap['parentBoundary']=E,ap['wrap']=de(),D=E,E=ak,T['push'](D);},'addContainerBoundary'),U=a1(function(ak,al,am,an,ao,ap,aq,ar){const cf=c8;if(al===null||am===null)return;let as={},at=O[cf(0x14a)](au=>au['alias']===al);if(at&&al===at['alias']?as=at:(as['alias']=al,O['push'](as)),am==null?as['label']={'text':''}:as['label']={'text':am},an==null)as['type']={'text':'node'};else{if(typeof an=='object'){let [au,av]=Object[cf(0x15e)](an)[0x0];as[au]={'text':av};}else as['type']={'text':an};}if(ao==null)as['descr']={'text':''};else{if(typeof ao=='object'){let [aw,ax]=Object['entries'](ao)[0x0];as[aw]={'text':ax};}else as['descr']={'text':ao};}if(typeof aq=='object'){let [ay,az]=Object['entries'](aq)[0x0];as[ay]=az;}else as['tags']=aq;if(typeof ar==cf(0x100)){let [aA,aB]=Object['entries'](ar)[0x0];as[aA]=aB;}else as['link']=ar;as['nodeType']=ak,as['parentBoundary']=E,as['wrap']=de(),D=E,E=al,T['push'](D);},c8(0xf4)),ee=a1(function(){const cg=c8;E=D,T[cg(0xdf)](),D=T['pop'](),T['push'](D);},'popBoundaryParseStack'),te=a1(function(ak,al,am,an,ao,ap,aq,ar,as,at,au){const ch=c8;let av=w['find'](aw=>aw['alias']===al);if(!(av===void 0x0&&(av=O['find'](aw=>aw['alias']===al),av===void 0x0))){if(am!=null){if(typeof am=='object'){let [aw,ax]=Object['entries'](am)[0x0];av[aw]=ax;}else av[ch(0xb8)]=am;}if(an!=null){if(typeof an=='object'){let [ay,az]=Object[ch(0x15e)](an)[0x0];av[ay]=az;}else av[ch(0x10d)]=an;}if(ao!=null){if(typeof ao=='object'){let [aA,aB]=Object['entries'](ao)[0x0];av[aA]=aB;}else av['borderColor']=ao;}if(ap!=null){if(typeof ap=='object'){let [aC,aD]=Object['entries'](ap)[0x0];av[aC]=aD;}else av[ch(0x117)]=ap;}if(aq!=null){if(typeof aq=='object'){let [aE,aF]=Object['entries'](aq)[0x0];av[aE]=aF;}else av[ch(0x132)]=aq;}if(ar!=null){if(typeof ar=='object'){let [aG,aH]=Object['entries'](ar)[0x0];av[aG]=aH;}else av[ch(0xd6)]=ar;}if(as!=null){if(typeof as==ch(0x100)){let [aI,aJ]=Object['entries'](as)[0x0];av[aI]=aJ;}else av['techn']=as;}if(at!=null){if(typeof at=='object'){let [aK,aL]=Object[ch(0x15e)](at)[0x0];av[aK]=aL;}else av['legendText']=at;}if(au!=null){if(typeof au==ch(0x100)){let [aM,aN]=Object['entries'](au)[0x0];av[aM]=aN;}else av['legendSprite']=au;}}},'updateElStyle'),ne=a1(function(ak,al,am,an,ao,ap,aq){const ci=c8;let ar=k['find'](as=>as['from']===al&&as['to']===am);if(ar!==void 0x0){if(an!=null){if(typeof an=='object'){let [as,at]=Object['entries'](an)[0x0];ar[as]=at;}else ar['textColor']=an;}if(ao!=null){if(typeof ao=='object'){let [au,av]=Object['entries'](ao)[0x0];ar[au]=av;}else ar[ci(0xdd)]=ao;}if(ap!=null){if(typeof ap=='object'){let [aw,ax]=Object['entries'](ap)[0x0];ar[aw]=parseInt(ax);}else ar['offsetX']=parseInt(ap);}if(aq!=null){if(typeof aq=='object'){let [ay,az]=Object['entries'](aq)[0x0];ar[ay]=parseInt(az);}else ar['offsetY']=parseInt(aq);}}},c8(0x10f)),re=a1(function(ak,al,am){const cj=c8;let an=M,ao=N;if(typeof al=='object'){let ap=Object['values'](al)[0x0];an=parseInt(ap);}else an=parseInt(al);if(typeof am==cj(0x100)){let aq=Object['values'](am)[0x0];ao=parseInt(aq);}else ao=parseInt(am);an>=0x1&&(M=an),ao>=0x1&&(N=ao);},c8(0x11c)),ie=a1(function(){return M;},'getC4ShapeInRow'),W=a1(function(){return N;},'getC4BoundaryInRow'),G=a1(function(){return E;},'getCurrentBoundaryParse'),K=a1(function(){return D;},'getParentBoundaryParse'),q=a1(function(ak){const ck=c8;return ak==null?w:w['filter'](al=>al[ck(0xd9)]===ak);},'getC4ShapeArray'),J=a1(function(ak){return w['find'](al=>al['alias']===ak);},'getC4Shape'),ae=a1(function(ak){return Object['keys'](q(ak));},'getC4ShapeKeys'),oe=a1(function(ak){return ak==null?O:O['filter'](al=>al['parentBoundary']===ak);},'getBoundaries'),se=oe,ce=a1(function(){return k;},'getRels'),le=a1(function(){return A;},'getTitle'),ue=a1(function(ak){j=ak;},'setWrap'),de=a1(function(){return j;},c8(0x166)),fe={'addPersonOrSystem':R,'addPersonOrSystemBoundary':V,'addContainer':z,'addContainerBoundary':H,'addComponent':B,'addDeploymentNode':U,'popBoundaryParseStack':ee,'addRel':L,'updateElStyle':te,'updateRelStyle':ne,'updateLayoutConfig':re,'autoWrap':de,'setWrap':ue,'getC4ShapeArray':q,'getC4Shape':J,'getC4ShapeKeys':ae,'getBoundaries':oe,'getBoundarys':se,'getCurrentBoundaryParse':G,'getParentBoundaryParse':K,'getRels':ce,'getTitle':le,'getC4Type':F,'getC4ShapeInRow':ie,'getC4BoundaryInRow':W,'setAccTitle':a4,'getAccTitle':aa,'getAccDescription':a8,'setAccDescription':a3,'getConfig':a1(()=>a9()['c4'],c8(0x149)),'clear':a1(function(){const cl=c8;w=[],O=[{'alias':cl(0x167),'label':{'text':cl(0x167)},'type':{'text':'global'},'tags':null,'link':null,'parentBoundary':''}],D='',E='global',T=[''],k=[],T=[''],A='',j=!0x1,M=0x4,N=0x2;},'clear'),'LINETYPE':{'SOLID':0x0,'DOTTED':0x1,'NOTE':0x2,'SOLID_CROSS':0x3,'DOTTED_CROSS':0x4,'SOLID_OPEN':0x5,'DOTTED_OPEN':0x6,'LOOP_START':0xa,'LOOP_END':0xb,'ALT_START':0xc,'ALT_ELSE':0xd,'ALT_END':0xe,'OPT_START':0xf,'OPT_END':0x10,'ACTIVE_START':0x11,'ACTIVE_END':0x12,'PAR_START':0x13,'PAR_AND':0x14,'PAR_END':0x15,'RECT_START':0x16,'RECT_END':0x17,'SOLID_POINT':0x18,'DOTTED_POINT':0x19},'ARROWTYPE':{'FILLED':0x0,'OPEN':0x1},'PLACEMENT':{'LEFTOF':0x0,'RIGHTOF':0x1,'OVER':0x2},'setTitle':a1(function(ak){A=ab(ak,a9());},'setTitle'),'setC4Type':I},pe=a1(function(ak,al){return ai(ak,al);},'drawRect'),me=a1(function(ak,al,am,an,ao,ap){const cm=c8;let aq=ak['append']('image');aq[cm(0xeb)]('width',al),aq[cm(0xeb)]('height',am),aq[cm(0xeb)]('x',an),aq['attr']('y',ao);let ar=ap['startsWith']('data:image/png;base64')?ap:(0x0,y[cm(0xb4)])(ap);aq['attr']('xlink:href',ar);},'drawImage'),he=a1((ak,al,am,an)=>{const cn=c8;let ao=ak['append']('g'),ap=0x0;for(let aq of al){let ar=aq['textColor']?aq['textColor']:'#444444',as=aq['lineColor']?aq['lineColor']:'#444444',at=aq['offsetX']?parseInt(aq['offsetX']):0x0,au=aq[cn(0x10b)]?parseInt(aq['offsetY']):0x0;if(ap===0x0){let aw=ao['append']('line');aw[cn(0xeb)]('x1',aq['startPoint']['x']),aw['attr']('y1',aq['startPoint']['y']),aw['attr']('x2',aq['endPoint']['x']),aw['attr']('y2',aq['endPoint']['y']),aw['attr']('stroke-width','1'),aw['attr']('stroke',as),aw['style']('fill','none'),aq['type']!=='rel_b'&&aw['attr']('marker-end',cn(0x158)+an+'-arrowhead)'),(aq['type']===cn(0xd5)||aq['type']==='rel_b')&&aw['attr']('marker-start','url(#'+an+'-arrowend)'),ap=-0x1;}else{let ax=ao[cn(0xd0)](cn(0x156));ax['attr']('fill',cn(0xdb))['attr']('stroke-width','1')['attr']('stroke',as)[cn(0xeb)]('d',cn(0x13b)['replaceAll'](cn(0x125),aq['startPoint']['x'])['replaceAll'](cn(0x12c),aq['startPoint']['y'])['replaceAll']('controlx',aq['startPoint']['x']+(aq['endPoint']['x']-aq['startPoint']['x'])/0x2-(aq['endPoint']['x']-aq[cn(0xbe)]['x'])/0x4)[cn(0x131)]('controly',aq['startPoint']['y']+(aq['endPoint']['y']-aq['startPoint']['y'])/0x2)['replaceAll']('stopx',aq[cn(0xd3)]['x'])['replaceAll'](cn(0x12a),aq['endPoint']['y'])),aq['type']!=='rel_b'&&ax['attr']('marker-end','url(#'+an+'-arrowhead)'),(aq['type']==='birel'||aq[cn(0xf0)]===cn(0xba))&&ax['attr']('marker-start','url(#'+an+'-arrowend)');}let av=am['messageFont']();Y(am)(aq['label']['text'],ao,Math[cn(0xee)](aq['startPoint']['x'],aq[cn(0xd3)]['x'])+Math['abs'](aq['endPoint']['x']-aq['startPoint']['x'])/0x2+at,Math['min'](aq['startPoint']['y'],aq['endPoint']['y'])+Math['abs'](aq['endPoint']['y']-aq['startPoint']['y'])/0x2+au,aq['label']['width'],aq['label'][cn(0x130)],{'fill':ar},av),aq[cn(0x150)]&&aq['techn']['text']!==''&&(av=am['messageFont'](),Y(am)('['+aq[cn(0x150)]['text']+']',ao,Math['min'](aq['startPoint']['x'],aq['endPoint']['x'])+Math['abs'](aq['endPoint']['x']-aq['startPoint']['x'])/0x2+at,Math['min'](aq['startPoint']['y'],aq[cn(0xd3)]['y'])+Math['abs'](aq['endPoint']['y']-aq['startPoint']['y'])/0x2+am['messageFontSize']+0x5+au,Math['max'](aq['label'][cn(0x153)],aq['techn'][cn(0x153)]),aq['techn']['height'],{'fill':ar,'font-style':'italic'},av));}},c8(0x12d)),ge=a1(function(ak,al,am){const co=c8;let an=ak['append']('g'),ao=al['bgColor']?al['bgColor']:co(0xdb),ap=al['borderColor']?al['borderColor']:'#444444',aq=al['fontColor']?al[co(0x10d)]:'black',ar={'stroke-width':0x1,'stroke-dasharray':'7.0,7.0'};al[co(0xd1)]&&(ar={'stroke-width':0x1}),pe(an,{'x':al['x'],'y':al['y'],'fill':ao,'stroke':ap,'width':al['width'],'height':al['height'],'rx':2.5,'ry':2.5,'attrs':ar});let as=am[co(0x111)]();as['fontWeight']='bold',as['fontSize']+=0x2,as['fontColor']=aq,Y(am)(al['label'][co(0xca)],an,al['x'],al['y']+al['label']['Y'],al['width'],al['height'],{'fill':'#444444'},as),al['type']&&al['type']['text']!==''&&(as=am['boundaryFont'](),as['fontColor']=aq,Y(am)(al['type'][co(0xca)],an,al['x'],al['y']+al['type']['Y'],al['width'],al[co(0x130)],{'fill':'#444444'},as)),al['descr']&&al['descr']['text']!==''&&(as=am['boundaryFont'](),as['fontSize']-=0x2,as['fontColor']=aq,Y(am)(al['descr'][co(0xca)],an,al['x'],al['y']+al['descr']['Y'],al['width'],al['height'],{'fill':co(0x12f)},as));},'drawBoundary'),_e=a1(function(ak,al,am){const cp=c8;var an;let ao=al[cp(0xb8)]?al['bgColor']:am[al['typeC4Shape']['text']+'_bg_color'],ap=al['borderColor']?al['borderColor']:am[al['typeC4Shape']['text']+cp(0x14d)],aq=al['fontColor']?al['fontColor']:'#FFFFFF',ar=cp(0x144);switch(al['typeC4Shape'][cp(0xca)]){case'person':ar='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=';break;case'external_person':ar=cp(0x133);break;}let as=ak['append']('g');as['attr']('class',cp(0x11a));let at=aj();switch(al['typeC4Shape']['text']){case'person':case cp(0x11f):case'system':case'external_system':case'container':case'external_container':case'component':case'external_component':at['x']=al['x'],at['y']=al['y'],at['fill']=ao,at[cp(0x153)]=al['width'],at['height']=al['height'],at['stroke']=ap,at['rx']=2.5,at['ry']=2.5,at[cp(0xc4)]={'stroke-width':0.5},pe(as,at);break;case'system_db':case'external_system_db':case cp(0x122):case cp(0xef):case'component_db':case'external_component_db':as['append']('path')['attr'](cp(0x138),ao)[cp(0xeb)]('stroke-width','0.5')['attr']('stroke',ap)['attr']('d','Mstartx,startyc0,-10\x20half,-10\x20half,-10c0,0\x20half,0\x20half,10l0,heightc0,10\x20-half,10\x20-half,10c0,0\x20-half,0\x20-half,-10l0,-height'['replaceAll']('startx',al['x'])['replaceAll'](cp(0x12c),al['y'])['replaceAll']('half',al[cp(0x153)]/0x2)['replaceAll']('height',al['height'])),as['append']('path')['attr']('fill','none')['attr']('stroke-width',cp(0x119))['attr']('stroke',ap)['attr']('d','Mstartx,startyc0,10\x20half,10\x20half,10c0,0\x20half,0\x20half,-10'['replaceAll']('startx',al['x'])['replaceAll']('starty',al['y'])['replaceAll']('half',al['width']/0x2));break;case'system_queue':case cp(0xfd):case'container_queue':case cp(0x10e):case'component_queue':case'external_component_queue':as[cp(0xd0)]('path')[cp(0xeb)]('fill',ao)[cp(0xeb)]('stroke-width','0.5')['attr'](cp(0xc7),ap)['attr']('d','Mstartx,startylwidth,0c5,0\x205,half\x205,halfc0,0\x200,half\x20-5,halfl-width,0c-5,0\x20-5,-half\x20-5,-halfc0,0\x200,-half\x205,-half'['replaceAll']('startx',al['x'])['replaceAll']('starty',al['y'])['replaceAll']('width',al['width'])['replaceAll']('half',al['height']/0x2)),as['append'](cp(0x156))['attr']('fill','none')['attr']('stroke-width','0.5')['attr']('stroke',ap)['attr']('d','Mstartx,startyc-5,0\x20-5,half\x20-5,halfc0,half\x205,half\x205,half'[cp(0x131)]('startx',al['x']+al['width'])[cp(0x131)]('starty',al['y'])[cp(0x131)](cp(0x101),al['height']/0x2));break;}let au=Te(am,al['typeC4Shape']['text']);switch(as['append']('text')['attr']('fill',aq)[cp(0xeb)]('font-family',au['fontFamily'])['attr']('font-size',au[cp(0x123)]-0x2)['attr']('font-style','italic')['attr'](cp(0xd4),'spacing')['attr']('textLength',al['typeC4Shape']['width'])['attr']('x',al['x']+al['width']/0x2-al['typeC4Shape']['width']/0x2)['attr']('y',al['y']+al['typeC4Shape']['Y'])['text']('<<'+al['typeC4Shape']['text']+'>>'),al['typeC4Shape'][cp(0xca)]){case'person':case'external_person':me(as,0x30,0x30,al['x']+al['width']/0x2-0x18,al['y']+al['image']['Y'],ar);break;}let av=am[al['typeC4Shape']['text']+'Font']();return av['fontWeight']='bold',av['fontSize']+=0x2,av[cp(0x10d)]=aq,Y(am)(al[cp(0x15a)]['text'],as,al['x'],al['y']+al['label']['Y'],al['width'],al['height'],{'fill':aq},av),av=am[al['typeC4Shape'][cp(0xca)]+'Font'](),av['fontColor']=aq,al['techn']&&((an=al['techn'])==null?void 0x0:an['text'])!==''?Y(am)(al['techn']['text'],as,al['x'],al['y']+al[cp(0x150)]['Y'],al[cp(0x153)],al['height'],{'fill':aq,'font-style':'italic'},av):al['type']&&al[cp(0xf0)]['text']!==''&&Y(am)(al['type'][cp(0xca)],as,al['x'],al['y']+al['type']['Y'],al['width'],al['height'],{'fill':aq,'font-style':'italic'},av),al['descr']&&al['descr']['text']!==''&&(av=am['personFont'](),av['fontColor']=aq,Y(am)(al['descr'][cp(0xca)],as,al['x'],al['y']+al['descr']['Y'],al['width'],al['height'],{'fill':aq},av)),al[cp(0x130)];},'drawC4Shape'),ve=a1(function(ak,al){const cq=c8;ak['append'](cq(0x14f))['append']('symbol')[cq(0xeb)]('id',al+'-database')['attr']('fill-rule','evenodd')['attr'](cq(0xc5),cq(0x142))['append']('path')['attr'](cq(0xfc),'scale(.5)')['attr']('d','M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258\x2020.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z');},'insertDatabaseIcon'),ye=a1(function(ak,al){const cr=c8;ak['append']('defs')['append'](cr(0xb7))[cr(0xeb)]('id',al+'-computer')['attr']('width','24')[cr(0xeb)]('height','24')['append']('path')[cr(0xeb)](cr(0xfc),'scale(.5)')['attr']('d','M2\x202v13h20v-13h-20zm18\x2011h-16v-9h16v9zm-10.228\x206l.466-1h3.524l.467\x201h-4.457zm14.228\x203h-24l2-6h2.104l-1.33\x204h18.45l-1.297-4h2.073l2\x206zm-5-10h-14v-7h14v7z');},'insertComputerIcon'),be=a1(function(ak,al){const cs=c8;ak['append']('defs')['append']('symbol')[cs(0xeb)]('id',al+'-clock')[cs(0xeb)]('width','24')['attr']('height','24')['append']('path')['attr']('transform','scale(.5)')['attr']('d','M12\x202c5.514\x200\x2010\x204.486\x2010\x2010s-4.486\x2010-10\x2010-10-4.486-10-10\x204.486-10\x2010-10zm0-2c-6.627\x200-12\x205.373-12\x2012s5.373\x2012\x2012\x2012\x2012-5.373\x2012-12-5.373-12-12-12zm5.848\x2012.459c.202.038.202.333.001.372-1.907.361-6.045\x201.111-6.547\x201.111-.719\x200-1.301-.582-1.301-1.301\x200-.512.77-5.447\x201.125-7.445.034-.192.312-.181.343.014l.985\x206.238\x205.394\x201.011z');},c8(0xf3)),xe=a1(function(ak,al){const ct=c8;ak['append']('defs')['append']('marker')[ct(0xeb)]('id',al+'-arrowhead')['attr'](ct(0x15d),0x9)[ct(0xeb)]('refY',0x5)['attr']('markerUnits','userSpaceOnUse')['attr']('markerWidth',0xc)[ct(0xeb)](ct(0xd7),0xc)['attr']('orient','auto')[ct(0xd0)]('path')['attr']('d','M\x200\x200\x20L\x2010\x205\x20L\x200\x2010\x20z');},c8(0xff)),Se=a1(function(ak,al){const cu=c8;ak['append']('defs')['append'](cu(0xbc))['attr']('id',al+'-arrowend')[cu(0xeb)]('refX',0x1)['attr']('refY',0x5)['attr']('markerUnits','userSpaceOnUse')['attr'](cu(0xec),0xc)['attr'](cu(0xd7),0xc)['attr']('orient','auto')['append'](cu(0x156))['attr']('d','M\x2010\x200\x20L\x200\x205\x20L\x2010\x2010\x20z');},c8(0x114)),Ce=a1(function(ak,al){const cv=c8;ak['append']('defs')['append']('marker')['attr']('id',al+'-filled-head')['attr']('refX',0x12)['attr']('refY',0x7)['attr']('markerWidth',0x14)['attr'](cv(0xd7),0x1c)['attr']('orient','auto')['append']('path')['attr']('d','M\x2018,7\x20L9,13\x20L14,7\x20L9,1\x20Z');},'insertArrowFilledHead'),we=a1(function(ak,al){const cw=c8;let am=ak['append']('defs')[cw(0xd0)]('marker')[cw(0xeb)]('id',al+'-crosshead')['attr']('markerWidth',0xf)[cw(0xeb)]('markerHeight',0x8)['attr']('orient','auto')['attr']('refX',0x10)['attr']('refY',0x4);am['append'](cw(0x156))['attr']('fill','black')[cw(0xeb)]('stroke','#000000')[cw(0x155)]('stroke-dasharray','0,\x200')['attr']('stroke-width','1px')['attr']('d','M\x209,2\x20V\x206\x20L16,4\x20Z'),am['append']('path')['attr']('fill','none')['attr']('stroke','#000000')[cw(0x155)]('stroke-dasharray','0,\x200')['attr']('stroke-width',cw(0x124))[cw(0xeb)]('d','M\x200,1\x20L\x206,7\x20M\x206,1\x20L\x200,7');},'insertArrowCrossHead'),Te=a1((ak,al)=>({'fontFamily':ak[al+'FontFamily'],'fontSize':ak[al+'FontSize'],'fontWeight':ak[al+'FontWeight']}),'getC4ShapeFont'),Y=(function(){function ak(ao,ap,aq,ar,as,at,au){const cx=a0;an(ap[cx(0xd0)]('text')['attr']('x',aq+as/0x2)['attr']('y',ar+at/0x2+0x5)[cx(0x155)](cx(0xc2),'middle')['text'](ao),au);}a1(ak,'byText');function al(ao,ap,aq,ar,as,at,au,av){const cy=a0;let {fontSize:aw,fontFamily:ax,fontWeight:ay}=av,az=ao[cy(0x10c)](a7[cy(0xcf)]);for(let aA=0x0;aA<az['length'];aA++){let aB=aA*aw-aw*(az['length']-0x1)/0x2,aC=ap['append']('text')['attr']('x',aq+as/0x2)['attr']('y',ar)['style']('text-anchor',cy(0x15b))['attr'](cy(0x118),cy(0x15b))['style']('font-size',aw)['style']('font-weight',ay)['style'](cy(0xcc),ax);aC['append']('tspan')['attr']('dy',aB)['text'](az[aA])['attr']('alignment-baseline','mathematical'),an(aC,au);}}a1(al,'byTspan');function am(ao,ap,aq,ar,as,at,au,av){const cz=a0;let aw=ap['append']('switch'),ax=aw['append']('foreignObject')['attr']('x',aq)['attr']('y',ar)['attr']('width',as)['attr'](cz(0x130),at)['append']('xhtml:div')['style']('display','table')['style']('height','100%')['style']('width','100%');ax['append']('div')['style']('display','table-cell')[cz(0x155)]('text-align','center')['style'](cz(0xc1),cz(0x15b))[cz(0xca)](ao),al(ao,aw,aq,ar,as,at,au,av),an(ax,au);}a1(am,'byFo');function an(ao,ap){const cA=a0;for(let aq in ap)ap[cA(0xc0)](aq)&&ao['attr'](aq,ap[aq]);}return a1(an,'_setTextAttrs'),function(ao){return ao['textPlacement']==='fo'?am:ao['textPlacement']==='old'?ak:al;};}()),X={'drawRect':pe,'drawBoundary':ge,'drawC4Shape':_e,'drawRels':he,'drawImage':me,'insertArrowHead':xe,'insertArrowEnd':Se,'insertArrowFilledHead':Ce,'insertArrowCrossHead':we,'insertDatabaseIcon':ve,'insertComputerIcon':ye,'insertClockIcon':be},Ee=0x0,De=0x0,Oe=0x4,ke=0x2;S['yy']=fe;var Z={},Ae=(b=class{constructor(ak){const cB=c8;this['name']='',this['data']={},this['data'][cB(0x125)]=void 0x0,this['data']['stopx']=void 0x0,this[cB(0xe8)][cB(0x12c)]=void 0x0,this[cB(0xe8)]['stopy']=void 0x0,this['data'][cB(0x165)]=void 0x0,this['nextData']={},this['nextData']['startx']=void 0x0,this['nextData']['stopx']=void 0x0,this[cB(0xe4)]['starty']=void 0x0,this[cB(0xe4)][cB(0x12a)]=void 0x0,this[cB(0xe4)][cB(0x106)]=0x0,je(ak['db'][cB(0x149)]());}['setData'](ak,al,am,an){const cC=c8;this['nextData'][cC(0x125)]=this[cC(0xe8)]['startx']=ak,this['nextData'][cC(0xe5)]=this['data'][cC(0xe5)]=al,this['nextData']['starty']=this['data']['starty']=am,this[cC(0xe4)]['stopy']=this['data']['stopy']=an;}['updateVal'](ak,al,am,an){ak[al]===void 0x0?ak[al]=am:ak[al]=an(am,ak[al]);}['insert'](ak){const cD=c8;this[cD(0xe4)]['cnt']=this['nextData'][cD(0x106)]+0x1;let al=this['nextData']['startx']===this['nextData']['stopx']?this['nextData'][cD(0xe5)]+ak['margin']:this['nextData']['stopx']+ak['margin']*0x2,am=al+ak['width'],an=this['nextData']['starty']+ak[cD(0x10a)]*0x2,ao=an+ak['height'];(al>=this['data']['widthLimit']||am>=this['data']['widthLimit']||this['nextData']['cnt']>Oe)&&(al=this['nextData']['startx']+ak['margin']+Z['nextLinePaddingX'],an=this['nextData'][cD(0x12a)]+ak['margin']*0x2,this['nextData']['stopx']=am=al+ak[cD(0x153)],this[cD(0xe4)][cD(0x12c)]=this[cD(0xe4)]['stopy'],this['nextData']['stopy']=ao=an+ak[cD(0x130)],this[cD(0xe4)]['cnt']=0x1),ak['x']=al,ak['y']=an,this['updateVal'](this['data'],cD(0x125),al,Math['min']),this['updateVal'](this['data'],'starty',an,Math['min']),this['updateVal'](this[cD(0xe8)],'stopx',am,Math['max']),this['updateVal'](this[cD(0xe8)],'stopy',ao,Math['max']),this['updateVal'](this[cD(0xe4)],'startx',al,Math['min']),this['updateVal'](this['nextData'],'starty',an,Math['min']),this['updateVal'](this['nextData'],'stopx',am,Math['max']),this['updateVal'](this[cD(0xe4)],cD(0x12a),ao,Math[cD(0xd2)]);}['init'](ak){const cE=c8;this[cE(0x13a)]='',this['data']={'startx':void 0x0,'stopx':void 0x0,'starty':void 0x0,'stopy':void 0x0,'widthLimit':void 0x0},this['nextData']={'startx':void 0x0,'stopx':void 0x0,'starty':void 0x0,'stopy':void 0x0,'cnt':0x0},je(ak['db']['getConfig']());}['bumpLastMargin'](ak){this['data']['stopx']+=ak,this['data']['stopy']+=ak;}},a1(b,'Bounds'),b),je=a1(function(ak){const cF=c8;a6(Z,ak),ak['fontFamily']&&(Z['personFontFamily']=Z['systemFontFamily']=Z['messageFontFamily']=ak['fontFamily']),ak['fontSize']&&(Z['personFontSize']=Z['systemFontSize']=Z['messageFontSize']=ak['fontSize']),ak['fontWeight']&&(Z['personFontWeight']=Z['systemFontWeight']=Z['messageFontWeight']=ak[cF(0x134)]);},'setConf'),Me=a1((ak,al)=>({'fontFamily':ak[al+c8(0x113)],'fontSize':ak[al+'FontSize'],'fontWeight':ak[al+'FontWeight']}),'c4ShapeFont'),Ne=a1(ak=>({'fontFamily':ak['boundaryFontFamily'],'fontSize':ak['boundaryFontSize'],'fontWeight':ak[c8(0xbf)]}),'boundaryFont'),Pe=a1(ak=>({'fontFamily':ak[c8(0xbb)],'fontSize':ak['messageFontSize'],'fontWeight':ak['messageFontWeight']}),c8(0x136));function Q(ak,al,am,an,ao){const cG=c8;if(!al[ak]['width']){if(am)al[ak]['text']=ad(al[ak]['text'],ao,an),al[ak]['textLines']=al[ak]['text']['split'](a7[cG(0xcf)])[cG(0xf1)],al[ak][cG(0x153)]=ao,al[ak]['height']=af(al[ak]['text'],an);else{let ap=al[ak]['text'][cG(0x10c)](a7['lineBreakRegex']);al[ak]['textLines']=ap[cG(0xf1)];let aq=0x0;al[ak]['height']=0x0,al[ak]['width']=0x0;for(let ar of ap)al[ak]['width']=Math[cG(0xd2)](ag(ar,an),al[ak]['width']),aq=af(ar,an),al[ak]['height']=al[ak]['height']+aq;}}}function c(){const cO=['447111dpiYGC','width','PERSON_EXT','style','path','addComponent','url(#','COMPONENT_EXT_QUEUE','label','middle','yylloc','refX','entries','ranges','typeC4Shape','create','_input','trim','COMPONENT_EXT','widthLimit','autoWrap','global','push','[id=\x22','REL_U','accDescription','3927148PHaNBc','descr','c4ShapeMargin','matches','nodeR','acc_title','link','external_container','1702586XaRIaH','enterprise_boundary','from','sanitizeUrl','addPersonOrSystem','C4_DYNAMIC','symbol','bgColor','component_queue','rel_b','messageFontFamily','marker','acc_descr','startPoint','boundaryFontWeight','hasOwnProperty','vertical-align','text-anchor','yytext','attrs','clip-rule','Point','stroke','CONTAINER_EXT','container','text','begin','font-family','diagramMarginX','pastInput','lineBreakRegex','append','nodeType','max','endPoint','lengthAdjust','birel','sprite','markerHeight','terminals_','parentBoundary','parseError','none','popStack','lineColor','yylineno','pop','image','.\x20Unrecognized\x20text.\x0a','setDirection','BIREL','nextData','stopx','C4Dynamic','first_column','data','1kzyOfy','BOUNDARY','attr','markerWidth','4431654zBuaGw','min','external_container_db','type','length','person_ext','insertClockIcon','addDeploymentNode','SYSTEM_EXT_DB','unput','stateStackSize','ATTRIBUTE_EMPTY','1600845QPrlaf','system_db','calcC4ShapeTextWH','transform','external_system_queue','5093559ZnCxmj','insertArrowHead','object','half','recoverable','popState','done','showPosition','cnt','diagramMarginY','models:','alias','margin','offsetY','split','fontColor','external_container_queue','updateRelStyle','C4_CONTEXT','boundaryFont','2211405jjTxJJ','FontFamily','insertArrowEnd','nodeL','test_match','shadowing','dominant-baseline','0.5','person-man','match','updateLayoutConfig','CONTAINER_EXT_QUEUE','bold','external_person','16yXevJw','replace','container_db','fontSize','1px','startx','external_system','system_ext_queue','lex','Parser','stopy','rel_u','starty','drawRels','system_queue','#444444','height','replaceAll','shape','data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII=','fontWeight','conditionStack','messageFont','rel','fill','parse','name','Mstartx,starty\x20Qcontrolx,controly\x20stopx,stopy\x20','REL_INDEX','options','system','system_ext','last_column','anonymous','evenodd','addRel','data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=','wrap','matched','setData','slice','getConfig','find','direction_lr','concat','_border_color','STR_VALUE','defs','techn','range'];c=function(){return cO;};return c();}a1(Q,c8(0xfb));var Fe=a1(function(ak,al,am){const cH=c8;al['x']=am['data']['startx'],al['y']=am['data']['starty'],al['width']=am['data']['stopx']-am['data'][cH(0x125)],al['height']=am['data']['stopy']-am[cH(0xe8)][cH(0x12c)],al['label']['y']=Z['c4ShapeMargin']-0x23;let an=al['wrap']&&Z['wrap'],ao=Ne(Z);ao['fontSize']+=0x2,ao['fontWeight']='bold',Q('label',al,an,ao,ag(al['label']['text'],ao)),X['drawBoundary'](ak,al,Z);},'drawBoundary'),Ie=a1(function(ak,al,am,an){const cI=c8;let ao=0x0;for(let ap of an){ao=0x0;let aq=am[ap],ar=Me(Z,aq['typeC4Shape']['text']);switch(ar['fontSize']-=0x2,aq[cI(0x160)][cI(0x153)]=ag('«'+aq['typeC4Shape']['text']+'»',ar),aq[cI(0x160)][cI(0x130)]=ar['fontSize']+0x2,aq['typeC4Shape']['Y']=Z['c4ShapePadding'],ao=aq['typeC4Shape']['Y']+aq['typeC4Shape']['height']-0x4,aq['image']={'width':0x0,'height':0x0,'Y':0x0},aq['typeC4Shape']['text']){case'person':case'external_person':aq['image']['width']=0x30,aq['image']['height']=0x30,aq['image']['Y']=ao,ao=aq['image']['Y']+aq['image']['height'];break;}aq['sprite']&&(aq[cI(0xe0)][cI(0x153)]=0x30,aq['image']['height']=0x30,aq['image']['Y']=ao,ao=aq['image']['Y']+aq['image'][cI(0x130)]);let as=aq['wrap']&&Z['wrap'],at=Z['width']-Z['c4ShapePadding']*0x2,au=Me(Z,aq['typeC4Shape']['text']);au['fontSize']+=0x2,au['fontWeight']=cI(0x11e),Q('label',aq,as,au,at),aq['label']['Y']=ao+0x8,ao=aq['label']['Y']+aq[cI(0x15a)]['height'],aq['type']&&aq['type']['text']!==''?(aq['type']['text']='['+aq['type'][cI(0xca)]+']',Q(cI(0xf0),aq,as,Me(Z,aq['typeC4Shape']['text']),at),aq['type']['Y']=ao+0x5,ao=aq['type']['Y']+aq[cI(0xf0)][cI(0x130)]):aq['techn']&&aq['techn'][cI(0xca)]!==''&&(aq['techn'][cI(0xca)]='['+aq['techn']['text']+']',Q('techn',aq,as,Me(Z,aq['techn'][cI(0xca)]),at),aq['techn']['Y']=ao+0x5,ao=aq['techn']['Y']+aq['techn']['height']);let av=ao,aw=aq['label']['width'];aq[cI(0x16d)]&&aq[cI(0x16d)]['text']!==''&&(Q('descr',aq,as,Me(Z,aq['typeC4Shape']['text']),at),aq['descr']['Y']=ao+0x14,ao=aq['descr']['Y']+aq['descr']['height'],aw=Math['max'](aq['label']['width'],aq['descr']['width']),av=ao-aq['descr']['textLines']*0x5),aw+=Z['c4ShapePadding'],aq['width']=Math['max'](aq['width']||Z['width'],aw,Z['width']),aq['height']=Math['max'](aq['height']||Z['height'],av,Z['height']),aq['margin']=aq['margin']||Z['c4ShapeMargin'],ak['insert'](aq),X['drawC4Shape'](al,aq,Z);}ak['bumpLastMargin'](Z['c4ShapeMargin']);},'drawC4ShapeArray'),$=(x=class{constructor(ak,al){this['x']=ak,this['y']=al;}},a1(x,c8(0xc6)),x),Le=a1(function(ak,al){const cJ=c8;let am=ak['x'],an=ak['y'],ao=al['x'],ap=al['y'],aq=am+ak['width']/0x2,ar=an+ak['height']/0x2,as=Math['abs'](am-ao),at=Math['abs'](an-ap),au=at/as,av=ak[cJ(0x130)]/ak[cJ(0x153)],aw=null;return an==ap&&am<ao?aw=new $(am+ak['width'],ar):an==ap&&am>ao?aw=new $(am,ar):am==ao&&an<ap?aw=new $(aq,an+ak['height']):am==ao&&an>ap&&(aw=new $(aq,an)),am>ao&&an<ap?aw=av>=au?new $(am,ar+au*ak['width']/0x2):new $(aq-as/at*ak['height']/0x2,an+ak['height']):am<ao&&an<ap?aw=av>=au?new $(am+ak[cJ(0x153)],ar+au*ak[cJ(0x153)]/0x2):new $(aq+as/at*ak['height']/0x2,an+ak[cJ(0x130)]):am<ao&&an>ap?aw=av>=au?new $(am+ak[cJ(0x153)],ar-au*ak[cJ(0x153)]/0x2):new $(aq+ak[cJ(0x130)]/0x2*as/at,an):am>ao&&an>ap&&(aw=av>=au?new $(am,ar-ak['width']/0x2*au):new $(aq-ak[cJ(0x130)]/0x2*as/at,an)),aw;},'getIntersectPoint'),Re=a1(function(ak,al){const cK=c8;let am={'x':0x0,'y':0x0};am['x']=al['x']+al['width']/0x2,am['y']=al['y']+al['height']/0x2;let an=Le(ak,am);return am['x']=ak['x']+ak[cK(0x153)]/0x2,am['y']=ak['y']+ak['height']/0x2,{'startPoint':an,'endPoint':Le(al,am)};},'getIntersectPoints'),ze=a1(function(ak,al,am,an,ao){const cL=c8;let ap=0x0;for(let aq of al){ap+=0x1;let ar=aq['wrap']&&Z['wrap'],as=Pe(Z);an['db']['getC4Type']()===cL(0xe6)&&(aq['label']['text']=ap+':\x20'+aq['label'][cL(0xca)]);let at=ag(aq['label']['text'],as);Q('label',aq,ar,as,at),aq['techn']&&aq[cL(0x150)]['text']!==''&&(at=ag(aq['techn']['text'],as),Q(cL(0x150),aq,ar,as,at)),aq['descr']&&aq['descr'][cL(0xca)]!==''&&(at=ag(aq['descr'][cL(0xca)],as),Q(cL(0x16d),aq,ar,as,at));let au=Re(am(aq['from']),am(aq['to']));aq['startPoint']=au['startPoint'],aq['endPoint']=au['endPoint'];}X['drawRels'](ak,al,Z,ao);},c8(0x12d));function Be(ak,al,am,an,ao){const cM=c8;let ap=new Ae(ao);ap['data']['widthLimit']=am['data'][cM(0x165)]/Math[cM(0xee)](ke,an['length']);for(let [aq,ar]of an['entries']()){let as=0x0;ar['image']={'width':0x0,'height':0x0,'Y':0x0},ar['sprite']&&(ar['image']['width']=0x30,ar['image']['height']=0x30,ar['image']['Y']=as,as=ar['image']['Y']+ar['image']['height']);let at=ar['wrap']&&Z[cM(0x145)],au=Ne(Z);if(au['fontSize']+=0x2,au['fontWeight']='bold',Q(cM(0x15a),ar,at,au,ap['data']['widthLimit']),ar['label']['Y']=as+0x8,as=ar[cM(0x15a)]['Y']+ar[cM(0x15a)][cM(0x130)],ar['type']&&ar['type']['text']!==''&&(ar['type']['text']='['+ar['type']['text']+']',Q('type',ar,at,Ne(Z),ap['data']['widthLimit']),ar[cM(0xf0)]['Y']=as+0x5,as=ar[cM(0xf0)]['Y']+ar['type']['height']),ar['descr']&&ar['descr']['text']!==''){let ay=Ne(Z);ay[cM(0x123)]-=0x2,Q('descr',ar,at,ay,ap['data']['widthLimit']),ar['descr']['Y']=as+0x14,as=ar['descr']['Y']+ar['descr']['height'];}if(aq==0x0||aq%ke===0x0){let az=am['data']['startx']+Z['diagramMarginX'],aA=am['data']['stopy']+Z['diagramMarginY']+as;ap['setData'](az,az,aA,aA);}else{let aB=ap['data']['stopx']===ap[cM(0xe8)][cM(0x125)]?ap['data']['startx']:ap['data']['stopx']+Z['diagramMarginX'],aC=ap[cM(0xe8)]['starty'];ap[cM(0x147)](aB,aB,aC,aC);}ap['name']=ar['alias'];let av=ao['db']['getC4ShapeArray'](ar['alias']),aw=ao['db']['getC4ShapeKeys'](ar['alias']);aw['length']>0x0&&Ie(ap,ak,av,aw),al=ar[cM(0x109)];let ax=ao['db']['getBoundaries'](al);ax[cM(0xf1)]>0x0&&Be(ak,al,ap,ax,ao),ar[cM(0x109)]!=='global'&&Fe(ak,ar,ap),am['data']['stopy']=Math[cM(0xd2)](ap['data']['stopy']+Z['c4ShapeMargin'],am[cM(0xe8)]['stopy']),am['data']['stopx']=Math['max'](ap['data']['stopx']+Z[cM(0x16e)],am['data']['stopx']),Ee=Math['max'](Ee,am[cM(0xe8)]['stopx']),De=Math['max'](De,am['data']['stopy']);}}a1(Be,'drawInsideBoundary');var Ve={'drawPersonOrSystemArray':Ie,'drawBoundary':Fe,'setConf':je,'draw':a1(function(ak,al,am,an){const cN=c8;Z=a9()['c4'];let ao=a9()['securityLevel'],ap;ao==='sandbox'&&(ap=ac('#i'+al));let aq=ac(ao==='sandbox'?ap['nodes']()[0x0]['contentDocument']['body']:'body'),ar=an['db'];an['db']['setWrap'](Z['wrap']),Oe=ar['getC4ShapeInRow'](),ke=ar['getC4BoundaryInRow'](),a2['debug']('C:'+JSON['stringify'](Z,null,0x2));let as=ao==='sandbox'?aq['select']('[id=\x22'+al+'\x22]'):ac(cN(0x169)+al+'\x22]');X['insertComputerIcon'](as,al),X['insertDatabaseIcon'](as,al),X['insertClockIcon'](as,al);let at=new Ae(an);at['setData'](Z['diagramMarginX'],Z['diagramMarginX'],Z['diagramMarginY'],Z['diagramMarginY']),at['data']['widthLimit']=screen['availWidth'],Ee=Z['diagramMarginX'],De=Z['diagramMarginY'];let au=an['db']['getTitle']();Be(as,'',at,an['db']['getBoundaries'](''),an),X['insertArrowHead'](as,al),X['insertArrowEnd'](as,al),X['insertArrowCrossHead'](as,al),X['insertArrowFilledHead'](as,al),ze(as,an['db']['getRels'](),an['db']['getC4Shape'],an,al),at[cN(0xe8)]['stopx']=Ee,at['data']['stopy']=De;let av=at['data'],aw=av['stopy']-av['starty']+0x2*Z['diagramMarginY'],ax=av['stopx']-av['startx']+0x2*Z['diagramMarginX'];au&&as['append']('text')['text'](au)[cN(0xeb)]('x',(av['stopx']-av['startx'])/0x2-0x4*Z[cN(0xcd)])['attr']('y',av[cN(0x12c)]+Z['diagramMarginY']),a5(as,aw,ax,Z['useMaxWidth']);let ay=au?0x3c:0x0;as['attr']('viewBox',av['startx']-Z['diagramMarginX']+'\x20-'+(Z[cN(0x107)]+ay)+'\x20'+ax+'\x20'+(aw+ay)),a2['debug'](cN(0x108),av);},'draw')},He={'parser':C,'db':fe,'renderer':Ve,'styles':a1(ak=>'.person\x20{\x0a\x20\x20\x20\x20stroke:\x20'+ak['personBorder']+';\x0a\x20\x20\x20\x20fill:\x20'+ak['personBkg']+';\x0a\x20\x20}\x0a','getStyles'),'init':a1(({c4:ak,wrap:al})=>{Ve['setConf'](ak),fe['setWrap'](al);},'init')};export{He as diagram};