filecat 7.7.1 → 7.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/dist/1045.0e4bdc838c37771a7f50.js +1 -0
- package/build/dist/1075.493acb74297c1e753de2.js +1 -0
- package/build/dist/1128.b80776fbdbdda36034c3.js +1 -0
- package/build/dist/1388.1dcf844b452e3aae3dc0.js +1 -0
- package/build/dist/1671.fb137d27b5763953487e.js +1 -0
- package/build/dist/{6887.93191dae462af3692775.js → 1738.b8ab2bd79df131e60051.js} +1 -1
- package/build/dist/1802.e43e833638f6ba8e22d7.js +1 -0
- package/build/dist/1964.bd3d684b50aa5191b413.js +1 -0
- package/build/dist/200.bb7f6ce5543bd7ff6d97.js +1 -0
- package/build/dist/2105.e4ba1c1d506b3fe14e8e.js +1 -0
- package/build/dist/2122.bc10dcdbbfc38e0ef883.js +1 -0
- package/build/dist/{3457.18b45379d8bcf7f5f3b5.js → 2180.df641ebaead77c4ada71.js} +1 -1
- package/build/dist/2300.9e1baa1c0368abe53d96.js +2 -0
- package/build/dist/2479.15722ac55b05c521f4f7.js +1 -0
- package/build/dist/2572.8fdddfebb4da2f29dbd8.js +1 -0
- package/build/dist/259.81bb9e049e5ef587a96f.js +1 -0
- package/build/dist/2674.0c822a9c458f923a4eff.js +1 -0
- package/build/dist/{1001.44a1a25c7d6d3f294bf3.js → 2822.9417e764a14f8f5f57dc.js} +1 -1
- package/build/dist/2994.c492be0d907fa468a9be.js +1 -0
- package/build/dist/{3140.b078ec311f99170b7f4c.js → 3140.794a212da633caf38b3a.js} +2 -2
- package/build/dist/3230.7798ab546facfa058b34.js +1 -0
- package/build/dist/3233.fb6bffd5e097e4ac9423.js +1 -0
- package/build/dist/3283.9386fc7f67aef46604fb.js +1 -0
- package/build/dist/3299.d01f5a742d80f4e6e25b.js +1 -0
- package/build/dist/3300.b8a3bc571293a6280ed8.js +1 -0
- package/build/dist/{3402.d412940350051a52d7ac.js → 3402.b6dc28d2f9bace7cde85.js} +1 -1
- package/build/dist/3509.cbcb309fbf49db53229f.js +1 -0
- package/build/dist/{3727.b8d9cbae9de47bf8d49b.js → 3510.b975b8bfdee5e8518215.js} +1 -1
- package/build/dist/{587.c75ed69a8373139346f9.js → 3566.ba323afadcf41fad2fa7.js} +1 -1
- package/build/dist/3608.aff9429024b740ac5cd0.js +1 -0
- package/build/dist/3990.5e16453f57b90b01d539.js +1 -0
- package/build/dist/4004.de90f1192487a24a0a9a.js +1 -0
- package/build/dist/4061.c0eb5824eeb6a59fa827.js +1 -0
- package/build/dist/4220.b65b40382726a69ba0bc.js +1 -0
- package/build/dist/{3883.70d42c3a335d6833f07e.js → 4376.b022a792fb34fbe50398.js} +1 -1
- package/build/dist/4437.4d5a0965043471411a00.js +1 -0
- package/build/dist/4469.536491f90535e831ce3e.js +1 -0
- package/build/dist/453.8877eb10f13258c290bc.js +1 -0
- package/build/dist/4560.8ef2e4b60cc86d019dd6.js +1 -0
- package/build/dist/4735.838cd0f656bbf7d99ff6.js +1 -0
- package/build/dist/4772.9b95c402a4def0f576e3.js +1 -0
- package/build/dist/4985.44cb7d829ca477e368b8.js +1 -0
- package/build/dist/5516.645e4a900df9bdc1806c.js +1 -0
- package/build/dist/5526.6b4867751becda056ed8.js +1 -0
- package/build/dist/5614.fb6bffd5e097e4ac9423.js +1 -0
- package/build/dist/5617.8efc3b1d218f80df9b39.js +1 -0
- package/build/dist/5744.e9f1efb88a617b05b709.js +1 -0
- package/build/dist/583.cef46d6b21c6fa6454cf.js +1 -0
- package/build/dist/6089.6d5d19a327284ff3b11c.js +1 -0
- package/build/dist/6164.7dae9989dd129479f952.js +1 -0
- package/build/dist/6284.10deb80685728f50aa45.js +1 -0
- package/build/dist/629.b75b024aacc43e0d69cf.js +1 -0
- package/build/dist/6344.291e5dadc74e62739774.js +1 -0
- package/build/dist/6492.3ee4060598de873d8e8f.js +1 -0
- package/build/dist/6571.b381c44055704e3ba649.js +1 -0
- package/build/dist/6731.6763296ce5ae210bc0fe.js +1 -0
- package/build/dist/6759.f88b50c41207cb8345d1.js +1 -0
- package/build/dist/{4951.88718d978aea2dd40006.js → 6789.34921a30c8a81f0a6407.js} +1 -1
- package/build/dist/6800.ee99fd0a88b6acbaaf2c.js +1 -0
- package/build/dist/6803.fe4297b1e51c3bfc7f50.js +1 -0
- package/build/dist/{313.d51fc773856f078487ad.js → 6806.9ebf089eba60f3b8e946.js} +1 -1
- package/build/dist/7038.4e4fc8e405c56d3080e2.js +1 -0
- package/build/dist/7310.bf944d03f24fcf109680.js +1 -0
- package/build/dist/{359.1b95bd6368196ccaa731.js → 7430.25bf8437ad8f7c1fd36f.js} +1 -1
- package/build/dist/7483.5e26ada69b33418c31a8.js +1 -0
- package/build/dist/{4087.4796ff56340985c35542.js → 7486.fe0b5f867c08b40a3360.js} +1 -1
- package/build/dist/7567.09e1b34ad9bd3e463eb4.js +1 -0
- package/build/dist/7834.7a593dcb80ca09f58586.js +1 -0
- package/build/dist/784.48a3b71205680f427109.js +1 -0
- package/build/dist/7943.54c702542d55f576a576.js +1 -0
- package/build/dist/7954.6ce241a8ed27cb26efc6.js +1 -0
- package/build/dist/8079.f6f2be43e5d933ae1f6f.js +1 -0
- package/build/dist/8677.860320b7f36947e57d11.js +1 -0
- package/build/dist/8727.3628c746061aed7a4077.js +1 -0
- package/build/dist/9299.ed4de6cd4f4bfa0a966a.js +1 -0
- package/build/dist/9324.ef229da9b943484298ba.js +1 -0
- package/build/dist/9364.d2570d78afc50fe1b23e.js +1 -0
- package/build/dist/9463.2629a7daf4c2865b9b96.js +1 -0
- package/build/dist/index.html +1 -1
- package/build/dist/main.98bb29605335d9b2219f.js +2 -0
- package/build/main.js +1 -1
- package/build/threads.work.filecat.js +1 -1
- package/package.json +4 -5
- package/shell/config/webpack.web.config.js +2 -2
- package/build/dist/1075.3ef2e1902e9f7e9e37b1.js +0 -1
- package/build/dist/1312.199a506fb836a2412255.js +0 -1
- package/build/dist/136.e3bb3c50051edb17454d.js +0 -1
- package/build/dist/1478.c58a43bb24820a13eaed.js +0 -1
- package/build/dist/1491.901cce0168c42ad319fa.js +0 -1
- package/build/dist/1566.4f405afd26063b55129c.js +0 -1
- package/build/dist/161.98f6c2a50bf3824a6efb.js +0 -1
- package/build/dist/1654.a21a099e2749ef167ea9.js +0 -1
- package/build/dist/1875.46dd3a6cc071d45a32f1.js +0 -1
- package/build/dist/1883.14c90bbe93fe206906f0.js +0 -1
- package/build/dist/1924.c7bd2a2aa0e9bc78c9ba.js +0 -1
- package/build/dist/2000.f55ddba9e6313243f028.js +0 -1
- package/build/dist/2101.d4efa6a2c1e9169d9225.js +0 -1
- package/build/dist/2180.60fe32ab12c2fa1570a4.js +0 -1
- package/build/dist/2191.4c4f2fd5127168a81877.js +0 -1
- package/build/dist/2213.ceffb8fd7be66b35d079.js +0 -1
- package/build/dist/2463.6e530d1e9b5c58dba166.js +0 -1
- package/build/dist/2623.8b1e5e391dd4e05fc119.js +0 -1
- package/build/dist/2674.3713c09449bdd57b1066.js +0 -1
- package/build/dist/2894.8395ec5e280cc6b6c4dc.js +0 -1
- package/build/dist/3042.f490cfa4208208262398.js +0 -1
- package/build/dist/3096.d0b2c77a23418c545c01.js +0 -1
- package/build/dist/311.da79ace98b69a635c41c.js +0 -1
- package/build/dist/3166.088cf4a0356c3a6e30a0.js +0 -1
- package/build/dist/3233.80bcbba8a50c0f85ceee.js +0 -1
- package/build/dist/3357.4f1bf81ecc3c11a3f813.js +0 -1
- package/build/dist/3475.d10d21b637761d7d886d.js +0 -1
- package/build/dist/3708.04401b24d95214d641e5.js +0 -1
- package/build/dist/3752.01fc1f14b29f340e41fd.js +0 -1
- package/build/dist/3871.7a387a9dc21883d08423.js +0 -1
- package/build/dist/3994.19fb81947d65fc81b0a2.js +0 -1
- package/build/dist/4012.b516fdc981e55be2ebb2.js +0 -1
- package/build/dist/4122.9ea6b5dd8dc9d2265825.js +0 -1
- package/build/dist/4141.06960673a6a484e7b88d.js +0 -1
- package/build/dist/4190.ff72264b4f07f6542d33.js +0 -1
- package/build/dist/4239.1b49d7c26192fb637d57.js +0 -1
- package/build/dist/4288.8dc8f5d962720e084952.js +0 -1
- package/build/dist/434.04cdc2a05316f92d1d38.js +0 -1
- package/build/dist/4376.f3c60897f70dd4e33d2f.js +0 -1
- package/build/dist/4472.38816dfb835d527175d6.js +0 -1
- package/build/dist/4473.b42b37616f13be64199b.js +0 -1
- package/build/dist/449.3fd75e05da22fe1c5ecc.js +0 -1
- package/build/dist/452.4974390f4f4d991216e5.js +0 -1
- package/build/dist/4547.36b5848220c04c47bc80.js +0 -1
- package/build/dist/4605.ef0f4204b3bf3a18efa6.js +0 -1
- package/build/dist/4804.fbd0ffcf57d9dffc15b7.js +0 -1
- package/build/dist/482.0c7512372a1fbf61d704.js +0 -1
- package/build/dist/4963.22d7db9b376a42d3f00b.js +0 -1
- package/build/dist/5097.a0de16bf7b90a8b1157d.js +0 -1
- package/build/dist/5123.d9ed79af478b5cc4f1b2.js +0 -1
- package/build/dist/5332.8b6e85d8764e907a01d5.js +0 -1
- package/build/dist/536.660d866952b46ba53180.js +0 -1
- package/build/dist/548.d3d912d0c0c7e835e1dc.js +0 -1
- package/build/dist/5516.cc92dfbf06ddcd133dbc.js +0 -1
- package/build/dist/5590.585778da623ec71f7722.js +0 -1
- package/build/dist/5614.80bcbba8a50c0f85ceee.js +0 -1
- package/build/dist/5616.14df0fe505c4dadf4042.js +0 -1
- package/build/dist/5695.95dc69f3b02812eb9e93.js +0 -1
- package/build/dist/5697.6ac62f99ca19a979f1eb.js +0 -1
- package/build/dist/5741.237d817efc942de875e5.js +0 -1
- package/build/dist/5849.d26365d4b19533db6fd6.js +0 -1
- package/build/dist/5902.3969a79465383ff4bbb4.js +0 -1
- package/build/dist/5937.c3f14ccc441bfd06e13d.js +0 -1
- package/build/dist/5942.981e03467a3b2c653ab8.js +0 -1
- package/build/dist/6029.63e4beb66df7afc65a90.js +0 -1
- package/build/dist/6054.f91307b52046172fc5f8.js +0 -1
- package/build/dist/6089.0863a6a09be2b97e84e1.js +0 -1
- package/build/dist/6095.d845e356a4db8a241cdb.js +0 -1
- package/build/dist/6114.ca67e88c701691b3bb1e.js +0 -1
- package/build/dist/612.74d77e32957a5c6eb197.js +0 -1
- package/build/dist/625.d9e531476b3306e0b837.js +0 -1
- package/build/dist/6318.66541f9cef18d14ea3ea.js +0 -1
- package/build/dist/6455.5c950f6eb61015409eb6.js +0 -1
- package/build/dist/6527.436d2d5d81376e6a54ae.js +0 -1
- package/build/dist/6530.2f1b283a902603262048.js +0 -1
- package/build/dist/6610.b92f337fcc1b347350fb.js +0 -1
- package/build/dist/6926.2786af754adcdabfbede.js +0 -1
- package/build/dist/697.62f8b1ec6d2cd40ed316.js +0 -1
- package/build/dist/70.be2f9130c93c4175d12f.js +0 -1
- package/build/dist/7081.9e1e196fecfcccb4bfb9.js +0 -1
- package/build/dist/7128.3573ab2a5f28b79ba89e.js +0 -1
- package/build/dist/7163.ad09accaa87e565b8dc0.js +0 -1
- package/build/dist/72.a1d87dabb7f0615b3a21.js +0 -1
- package/build/dist/7229.50a1700104d1e4732735.js +0 -1
- package/build/dist/7332.d024ae75a3da2f7674a1.js +0 -1
- package/build/dist/7509.370c49d7ff43e289190c.js +0 -1
- package/build/dist/7514.dbf525bade6ffbd70af6.js +0 -2
- package/build/dist/7557.7d62939c56391a647067.js +0 -1
- package/build/dist/7588.2d840229f62de92b22e5.js +0 -1
- package/build/dist/7632.5660653552f755580adc.js +0 -1
- package/build/dist/7639.b3c6382de2fde652a40b.js +0 -1
- package/build/dist/779.91614fabf5c9eb3aafa0.js +0 -1
- package/build/dist/7810.979796e8a3aad6d4d72f.js +0 -1
- package/build/dist/7897.8b8070d6abe5c2327168.js +0 -1
- package/build/dist/7941.dbef0b0f412899800b13.js +0 -1
- package/build/dist/7953.5cd280effe2e967ea490.js +0 -1
- package/build/dist/7954.efecc100b407af204add.js +0 -1
- package/build/dist/7959.e31a21f28ff463d9d5e9.js +0 -1
- package/build/dist/8034.301f1099c4a7ce6c2829.js +0 -1
- package/build/dist/8080.e1c9af30bdd818b08c6e.js +0 -1
- package/build/dist/8087.6452b67614a0855535a4.js +0 -1
- package/build/dist/8140.bbccc589b007f9d410d1.js +0 -1
- package/build/dist/8162.e47cccbe327b26a2ea6f.js +0 -1
- package/build/dist/8177.d669c6337f8814781f49.js +0 -1
- package/build/dist/8322.56c8f4b4ad93b1a866c8.js +0 -1
- package/build/dist/8376.01a9f23ba06a78922364.js +0 -1
- package/build/dist/8433.e54d57e2cc9408e5e411.js +0 -1
- package/build/dist/8460.25f0859cb2266f764113.js +0 -1
- package/build/dist/8524.7945bff0063dc5c5903d.js +0 -1
- package/build/dist/8782.a5498372f1eb6bab41b7.js +0 -1
- package/build/dist/8953.23fe6fe13b28168428d3.js +0 -1
- package/build/dist/8964.bdf168262ab40956654a.js +0 -1
- package/build/dist/9003.69a0d15e722e1ed455b0.js +0 -1
- package/build/dist/9299.c2699815e5339e4045f8.js +0 -1
- package/build/dist/9385.2b1afe7b55d4c16f97ad.js +0 -1
- package/build/dist/9428.3176bab8f5780f060d51.js +0 -1
- package/build/dist/9456.506d55e351dec4f45566.js +0 -1
- package/build/dist/9465.8ff5871fb708cf7c1021.js +0 -1
- package/build/dist/9500.95d19d78b580734ec35e.js +0 -1
- package/build/dist/9512.03215278f26dc63c056d.js +0 -1
- package/build/dist/9614.cfdbe03d8e2960b0a53a.js +0 -1
- package/build/dist/9651.6bf3e34362f10c1aa35d.js +0 -1
- package/build/dist/9788.4a1c2f3626e532d3b44c.js +0 -1
- package/build/dist/9943.b62436bd9d0730c715a9.js +0 -1
- package/build/dist/9967.216bc8d26440bcbaf785.js +0 -1
- package/build/dist/9970.aa60aa700a790ba226f0.js +0 -1
- package/build/dist/main.401995af1fd441fa9164.js +0 -2
- /package/build/dist/{7514.dbf525bade6ffbd70af6.js.LICENSE.txt → 2300.9e1baa1c0368abe53d96.js.LICENSE.txt} +0 -0
- /package/build/dist/{3140.b078ec311f99170b7f4c.js.LICENSE.txt → 3140.794a212da633caf38b3a.js.LICENSE.txt} +0 -0
- /package/build/dist/{main.401995af1fd441fa9164.js.LICENSE.txt → main.98bb29605335d9b2219f.js.LICENSE.txt} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[4376],{48066(e,t,r){r.d(t,{S:()=>o});var n=r(41303),i=class extends n.mR{static{(0,n.K2)(this,"ArchitectureTokenBuilder")}constructor(){super(["architecture"])}},a=class extends n.dg{static{(0,n.K2)(this,"ArchitectureValueConverter")}runCustomConverter(e,t,r){if("ARCH_ICON"===e.name)return t.replace(/[()]/g,"").trim();if("ARCH_TEXT_ICON"===e.name)return t.replace(/["()]/g,"");if("ARCH_TITLE"===e.name){let e=t.replace(/^\[|]$/g,"").trim();return(e.startsWith('"')&&e.endsWith('"')||e.startsWith("'")&&e.endsWith("'"))&&(e=e.slice(1,-1),e=e.replace(/\\"/g,'"').replace(/\\'/g,"'")),e.trim()}}},s={parser:{TokenBuilder:(0,n.K2)(()=>new i,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new a,"ValueConverter")}};function o(e=n.DD){const t=(0,n.WQ)((0,n.uM)(e),n.sr),r=(0,n.WQ)((0,n.tG)({shared:t}),n.wV,s);return t.ServiceRegistry.register(r),{shared:t,Architecture:r}}(0,n.K2)(o,"createArchitectureServices")},85547(e,t,r){r.d(t,{v:()=>s});var n=r(41303),i=class extends n.mR{static{(0,n.K2)(this,"InfoTokenBuilder")}constructor(){super(["info","showInfo"])}},a={parser:{TokenBuilder:(0,n.K2)(()=>new i,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new n.Tm,"ValueConverter")}};function s(e=n.DD){const t=(0,n.WQ)((0,n.uM)(e),n.sr),r=(0,n.WQ)((0,n.tG)({shared:t}),n.FZ,a);return t.ServiceRegistry.register(r),{shared:t,Info:r}}(0,n.K2)(s,"createInfoServices")},53239(e,t,r){r.d(t,{d:()=>c});var n=r(41303),i=class extends n.mR{static{(0,n.K2)(this,"TreemapTokenBuilder")}constructor(){super(["treemap"])}},a=/classDef\s+([A-Z_a-z]\w+)(?:\s+([^\n\r;]*))?;?/,s=class extends n.dg{static{(0,n.K2)(this,"TreemapValueConverter")}runCustomConverter(e,t,r){if("NUMBER2"===e.name)return parseFloat(t.replace(/,/g,""));if("SEPARATOR"===e.name)return t.substring(1,t.length-1);if("STRING2"===e.name)return t.substring(1,t.length-1);if("INDENTATION"===e.name)return t.length;if("ClassDef"===e.name){if("string"!=typeof t)return t;const e=a.exec(t);if(e)return{$type:"ClassDefStatement",className:e[1],styleText:e[2]||void 0}}}};function o(e){const t=e.validation.TreemapValidator,r=e.validation.ValidationRegistry;if(r){const e={Treemap:t.checkSingleRoot.bind(t)};r.register(e,t)}}(0,n.K2)(o,"registerValidationChecks");var l=class{static{(0,n.K2)(this,"TreemapValidator")}checkSingleRoot(e,t){let r;for(const n of e.TreemapRows)n.item&&(void 0===r&&void 0===n.indent?r=0:(void 0===n.indent||void 0!==r&&r>=parseInt(n.indent,10))&&t("error","Multiple root nodes are not allowed in a treemap.",{node:n,property:"item"}))}},u={parser:{TokenBuilder:(0,n.K2)(()=>new i,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new s,"ValueConverter")},validation:{TreemapValidator:(0,n.K2)(()=>new l,"TreemapValidator")}};function c(e=n.DD){const t=(0,n.WQ)((0,n.uM)(e),n.sr),r=(0,n.WQ)((0,n.tG)({shared:t}),n.XE,u);return t.ServiceRegistry.register(r),o(r),{shared:t,Treemap:r}}(0,n.K2)(c,"createTreemapServices")},85411(e,t,r){r.d(t,{J:()=>s});var n=r(41303),i=class extends n.dg{static{(0,n.K2)(this,"WardleyValueConverter")}runCustomConverter(e,t,r){if("LINK_LABEL"===e.name.toUpperCase())return t.substring(1).trim()}},a={parser:{ValueConverter:(0,n.K2)(()=>new i,"ValueConverter")}};function s(e=n.DD){const t=(0,n.WQ)((0,n.uM)(e),n.sr),r=(0,n.WQ)((0,n.tG)({shared:t}),n.Xr,a);return t.ServiceRegistry.register(r),{shared:t,Wardley:r}}(0,n.K2)(s,"createWardleyServices")},7845(e,t,r){r.d(t,{P:()=>l});var n=r(41303),i=class extends n.mR{static{(0,n.K2)(this,"RailroadPegTokenBuilder")}constructor(){super(["railroad-peg-beta"])}},a=(0,n.K2)(e=>{const t=e.slice(1,-1);let r="";for(let e=0;e<t.length;e++){const n=t[e];if("\\"===n&&e+1<t.length){e++;const n=t[e];switch(n){case"n":r+="\n";break;case"r":r+="\r";break;case"t":r+="\t";break;default:r+=n}continue}r+=n}return r},"decodeEscapedString"),s=class extends n.dg{static{(0,n.K2)(this,"RailroadPegValueConverter")}runConverter(e,t,r){const n=super.runConverter(e,t,r);if("TITLE"===e.name&&"string"==typeof n){const e=n.trim();if(e.startsWith('"')&&e.endsWith('"')||e.startsWith("'")&&e.endsWith("'"))return a(e)}return n}runCustomConverter(e,t,r){if("PEG_STRING"===e.name)return a(t)}},o={parser:{TokenBuilder:(0,n.K2)(()=>new i,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new s,"ValueConverter")}};function l(e=n.DD){const t=(0,n.WQ)((0,n.uM)(e),n.sr),r=(0,n.WQ)((0,n.tG)({shared:t}),n.dj,o);return t.ServiceRegistry.register(r),{shared:t,RailroadPeg:r}}(0,n.K2)(l,"createRailroadPegServices")},19911(e,t,r){r.d(t,{W:()=>l});var n=r(41303),i=class extends n.mR{static{(0,n.K2)(this,"RailroadEbnfTokenBuilder")}constructor(){super(["railroad-ebnf-beta"])}},a=(0,n.K2)(e=>{const t=e.slice(1,-1);let r="";for(let e=0;e<t.length;e++){const n=t[e];if("\\"===n&&e+1<t.length){e++;const n=t[e];switch(n){case"n":r+="\n";break;case"r":r+="\r";break;case"t":r+="\t";break;default:r+=n}continue}r+=n}return r},"decodeEscapedString"),s=class extends n.dg{static{(0,n.K2)(this,"RailroadEbnfValueConverter")}runConverter(e,t,r){const n=super.runConverter(e,t,r);if("TITLE"===e.name&&"string"==typeof n){const e=n.trim();if(e.startsWith('"')&&e.endsWith('"')||e.startsWith("'")&&e.endsWith("'"))return a(e)}return n}runCustomConverter(e,t,r){return"EBNF_STRING"===e.name?a(t):"EBNF_SPECIAL_SEQUENCE"===e.name?t.slice(1,-1).trim():void 0}},o={parser:{TokenBuilder:(0,n.K2)(()=>new i,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new s,"ValueConverter")}};function l(e=n.DD){const t=(0,n.WQ)((0,n.uM)(e),n.sr),r=(0,n.WQ)((0,n.tG)({shared:t}),n.U4,o);return t.ServiceRegistry.register(r),{shared:t,RailroadEbnf:r}}(0,n.K2)(l,"createRailroadEbnfServices")},97530(e,t,r){r.d(t,{I:()=>o});var n=r(41303),i=class extends n.dg{static{(0,n.K2)(this,"TreeViewValueConverter")}runCustomConverter(e,t,r){if("INDENTATION"===e.name)return t?.length||0;if("QUOTED_NAME"===e.name)return t.substring(1,t.length-1);if("BARE_NAME"===e.name)return t.replace(/[\t ]+$/,"");if("CLASS_ANNOTATION"===e.name){return t.trim().substring(3).trim()}if("ICON_ANNOTATION"===e.name){const e=t.trim();return e.substring(5,e.length-1)}if("DESC_ANNOTATION"===e.name){return t.trim().substring(2).trim()}}},a=class extends n.mR{static{(0,n.K2)(this,"TreeViewTokenBuilder")}constructor(){super(["treeView-beta"])}},s={parser:{TokenBuilder:(0,n.K2)(()=>new a,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new i,"ValueConverter")}};function o(e=n.DD){const t=(0,n.WQ)((0,n.uM)(e),n.sr),r=(0,n.WQ)((0,n.tG)({shared:t}),n.CZ,s);return t.ServiceRegistry.register(r),{shared:t,TreeView:r}}(0,n.K2)(o,"createTreeViewServices")},41303(e,t,r){r.d(t,{Bg:()=>J_,Bi:()=>rN,CZ:()=>aN,DD:()=>AC,D_:()=>Z_,F5:()=>qA,FZ:()=>X_,Jn:()=>W_,K2:()=>Ue,Tm:()=>uN,U4:()=>tN,WQ:()=>nC,XE:()=>iN,Xr:()=>sN,d$:()=>Y_,dg:()=>lN,dj:()=>nN,mR:()=>cN,oI:()=>eN,p5:()=>Q_,sr:()=>B_,tG:()=>tC,uM:()=>rC,wV:()=>V_,x0:()=>H_});var n,i,a,s,o,l,u,c,p,d,f,m,h,y,g,T,v,R,$,C,E,b,A,S,x,k,w,_,N,I,O,P,D,L,M,j,F,K,G,z,q,U,B,V,W,H,Y,X,Q,Z,J,ee,te,re,ne,ie,ae,se,oe,le,ue,ce,pe,de,fe,me,he,ye,ge,Te,ve,Re,$e,Ce,Ee,be,Ae,Se,xe,ke,we,_e,Ne,Ie,Oe,Pe,De,Le,Me,je=Object.create,Fe=Object.defineProperty,Ke=Object.getOwnPropertyDescriptor,Ge=Object.getOwnPropertyNames,ze=Object.getPrototypeOf,qe=Object.prototype.hasOwnProperty,Ue=(e,t)=>Fe(e,"name",{value:t,configurable:!0}),Be=(e,t)=>function(){return t||(0,e[Ge(e)[0]])((t={exports:{}}).exports,t),t.exports},Ve=(e,t,r,n)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let i of Ge(t))qe.call(e,i)||i===r||Fe(e,i,{get:()=>t[i],enumerable:!(n=Ke(t,i))||n.enumerable});return e},We=(e,t,r)=>(r=null!=e?je(ze(e)):{},Ve(!t&&e&&e.__esModule?r:Fe(r,"default",{value:e,enumerable:!0}),e)),He=e=>Ve(Fe({},"__esModule",{value:!0}),e),Ye=Be({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/is.js"(e){function t(e){return!0===e||!1===e}function r(e){return"string"==typeof e||e instanceof String}function n(e){return"number"==typeof e||e instanceof Number}function i(e){return e instanceof Error}function a(e){return"function"==typeof e}function s(e){return Array.isArray(e)}function o(e){return s(e)&&e.every(e=>r(e))}Object.defineProperty(e,"__esModule",{value:!0}),e.boolean=t,e.string=r,e.number=n,e.error=i,e.func=a,e.array=s,e.stringArray=o,Ue(t,"boolean"),Ue(r,"string"),Ue(n,"number"),Ue(i,"error"),Ue(a,"func"),Ue(s,"array"),Ue(o,"stringArray")}}),Xe=Be({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/messages.js"(e){var t=e&&e.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:Ue(function(){return t[r]},"get")}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),r=e&&e.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=e&&e.__importStar||function(){var e=Ue(function(t){return(e=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t})(t)},"ownKeys");return function(n){if(n&&n.__esModule)return n;var i={};if(null!=n)for(var a=e(n),s=0;s<a.length;s++)"default"!==a[s]&&t(i,n,a[s]);return r(i,n),i}}();Object.defineProperty(e,"__esModule",{value:!0}),e.Message=e.NotificationType9=e.NotificationType8=e.NotificationType7=e.NotificationType6=e.NotificationType5=e.NotificationType4=e.NotificationType3=e.NotificationType2=e.NotificationType1=e.NotificationType0=e.NotificationType=e.RequestType9=e.RequestType8=e.RequestType7=e.RequestType6=e.RequestType5=e.RequestType4=e.RequestType3=e.RequestType2=e.RequestType1=e.RequestType=e.RequestType0=e.AbstractMessageSignature=e.ParameterStructures=e.ResponseError=e.ErrorCodes=void 0;var i,a,s=n(Ye());(a=i||(e.ErrorCodes=i={})).ParseError=-32700,a.InvalidRequest=-32600,a.MethodNotFound=-32601,a.InvalidParams=-32602,a.InternalError=-32603,a.jsonrpcReservedErrorRangeStart=-32099,a.serverErrorStart=-32099,a.MessageWriteError=-32099,a.MessageReadError=-32098,a.PendingResponseRejected=-32097,a.ConnectionInactive=-32096,a.ServerNotInitialized=-32002,a.UnknownErrorCode=-32001,a.jsonrpcReservedErrorRangeEnd=-32e3,a.serverErrorEnd=-32e3;var o=class e extends Error{static{Ue(this,"ResponseError")}code;data;constructor(t,r,n){super(r),this.code=s.number(t)?t:i.UnknownErrorCode,this.data=n,Object.setPrototypeOf(this,e.prototype)}toJson(){const e={code:this.code,message:this.message};return void 0!==this.data&&(e.data=this.data),e}};e.ResponseError=o;var l=class e{static{Ue(this,"ParameterStructures")}kind;static auto=new e("auto");static byPosition=new e("byPosition");static byName=new e("byName");constructor(e){this.kind=e}static is(t){return t===e.auto||t===e.byName||t===e.byPosition}toString(){return this.kind}};e.ParameterStructures=l;var u=class{static{Ue(this,"AbstractMessageSignature")}method;numberOfParams;constructor(e,t){this.method=e,this.numberOfParams=t}get parameterStructures(){return l.auto}};e.AbstractMessageSignature=u;var c=class extends u{static{Ue(this,"RequestType0")}_;constructor(e){super(e,0)}};e.RequestType0=c;var p=class extends u{static{Ue(this,"RequestType")}_parameterStructures;_;constructor(e,t=l.auto){super(e,1),this._parameterStructures=t}get parameterStructures(){return this._parameterStructures}};e.RequestType=p;var d=class extends u{static{Ue(this,"RequestType1")}_parameterStructures;_;constructor(e,t=l.auto){super(e,1),this._parameterStructures=t}get parameterStructures(){return this._parameterStructures}};e.RequestType1=d;var f=class extends u{static{Ue(this,"RequestType2")}_;constructor(e){super(e,2)}};e.RequestType2=f;var m=class extends u{static{Ue(this,"RequestType3")}_;constructor(e){super(e,3)}};e.RequestType3=m;var h=class extends u{static{Ue(this,"RequestType4")}_;constructor(e){super(e,4)}};e.RequestType4=h;var y=class extends u{static{Ue(this,"RequestType5")}_;constructor(e){super(e,5)}};e.RequestType5=y;var g=class extends u{static{Ue(this,"RequestType6")}_;constructor(e){super(e,6)}};e.RequestType6=g;var T=class extends u{static{Ue(this,"RequestType7")}_;constructor(e){super(e,7)}};e.RequestType7=T;var v=class extends u{static{Ue(this,"RequestType8")}_;constructor(e){super(e,8)}};e.RequestType8=v;var R=class extends u{static{Ue(this,"RequestType9")}_;constructor(e){super(e,9)}};e.RequestType9=R;var $=class extends u{static{Ue(this,"NotificationType")}_parameterStructures;_;constructor(e,t=l.auto){super(e,1),this._parameterStructures=t}get parameterStructures(){return this._parameterStructures}};e.NotificationType=$;var C=class extends u{static{Ue(this,"NotificationType0")}_;constructor(e){super(e,0)}};e.NotificationType0=C;var E=class extends u{static{Ue(this,"NotificationType1")}_parameterStructures;_;constructor(e,t=l.auto){super(e,1),this._parameterStructures=t}get parameterStructures(){return this._parameterStructures}};e.NotificationType1=E;var b=class extends u{static{Ue(this,"NotificationType2")}_;constructor(e){super(e,2)}};e.NotificationType2=b;var A=class extends u{static{Ue(this,"NotificationType3")}_;constructor(e){super(e,3)}};e.NotificationType3=A;var S=class extends u{static{Ue(this,"NotificationType4")}_;constructor(e){super(e,4)}};e.NotificationType4=S;var x=class extends u{static{Ue(this,"NotificationType5")}_;constructor(e){super(e,5)}};e.NotificationType5=x;var k=class extends u{static{Ue(this,"NotificationType6")}_;constructor(e){super(e,6)}};e.NotificationType6=k;var w=class extends u{static{Ue(this,"NotificationType7")}_;constructor(e){super(e,7)}};e.NotificationType7=w;var _=class extends u{static{Ue(this,"NotificationType8")}_;constructor(e){super(e,8)}};e.NotificationType8=_;var N,I=class extends u{static{Ue(this,"NotificationType9")}_;constructor(e){super(e,9)}};e.NotificationType9=I,function(e){function t(e){const t=e;return t&&s.string(t.method)&&(s.string(t.id)||s.number(t.id))}function r(e){const t=e;return t&&s.string(t.method)&&void 0===e.id}function n(e){const t=e;return t&&(void 0!==t.result||!!t.error)&&(s.string(t.id)||s.number(t.id)||null===t.id)}Ue(t,"isRequest"),e.isRequest=t,Ue(r,"isNotification"),e.isNotification=r,Ue(n,"isResponse"),e.isResponse=n}(N||(e.Message=N={}))}}),Qe=Be({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/linkedMap.js"(e){var t,r;Object.defineProperty(e,"__esModule",{value:!0}),e.LRUCache=e.LinkedMap=e.Touch=void 0,(r=t||(e.Touch=t={})).None=0,r.First=1,r.AsOld=r.First,r.Last=2,r.AsNew=r.Last;var n=class{static{Ue(this,"LinkedMap")}[Symbol.toStringTag]="LinkedMap";_map;_head;_tail;_size;_state;constructor(){this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}before(e){const t=this._map.get(e);return t?t.previous?.value:void 0}after(e){const t=this._map.get(e);return t?t.next?.value:void 0}has(e){return this._map.has(e)}get(e,r=t.None){const n=this._map.get(e);if(n)return r!==t.None&&this.touch(n,r),n.value}set(e,r,n=t.None){let i=this._map.get(e);if(i)i.value=r,n!==t.None&&this.touch(i,n);else{switch(i={key:e,value:r,next:void 0,previous:void 0},n){case t.None:this.addItemLast(i);break;case t.First:this.addItemFirst(i);break;case t.Last:default:this.addItemLast(i)}this._map.set(e,i),this._size++}return this}delete(e){return!!this.remove(e)}remove(e){const t=this._map.get(e);if(t)return this._map.delete(e),this.removeItem(t),this._size--,t.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");const e=this._head;return this._map.delete(e.key),this.removeItem(e),this._size--,e.value}forEach(e,t){const r=this._state;let n=this._head;for(;n;){if(t?e.bind(t)(n.value,n.key,this):e(n.value,n.key,this),this._state!==r)throw new Error("LinkedMap got modified during iteration.");n=n.next}}keys(){const e=this._state;let t=this._head;const r={[Symbol.iterator]:()=>r,next:Ue(()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(t){const e={value:t.key,done:!1};return t=t.next,e}return{value:void 0,done:!0}},"next")};return r}values(){const e=this._state;let t=this._head;const r={[Symbol.iterator]:()=>r,next:Ue(()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(t){const e={value:t.value,done:!1};return t=t.next,e}return{value:void 0,done:!0}},"next")};return r}entries(){const e=this._state;let t=this._head;const r={[Symbol.iterator]:()=>r,next:Ue(()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(t){const e={value:[t.key,t.value],done:!1};return t=t.next,e}return{value:void 0,done:!0}},"next")};return r}[Symbol.iterator](){return this.entries()}trimOld(e){if(e>=this.size)return;if(0===e)return void this.clear();let t=this._head,r=this.size;for(;t&&r>e;)this._map.delete(t.key),t=t.next,r--;this._head=t,this._size=r,t&&(t.previous=void 0),this._state++}addItemFirst(e){if(this._head||this._tail){if(!this._head)throw new Error("Invalid list");e.next=this._head,this._head.previous=e}else this._tail=e;this._head=e,this._state++}addItemLast(e){if(this._head||this._tail){if(!this._tail)throw new Error("Invalid list");e.previous=this._tail,this._tail.next=e}else this._head=e;this._tail=e,this._state++}removeItem(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw new Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw new Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{const t=e.next,r=e.previous;if(!t||!r)throw new Error("Invalid list");t.previous=r,r.next=t}e.next=void 0,e.previous=void 0,this._state++}touch(e,r){if(!this._head||!this._tail)throw new Error("Invalid list");if(r===t.First||r===t.Last)if(r===t.First){if(e===this._head)return;const t=e.next,r=e.previous;e===this._tail?(r.next=void 0,this._tail=r):(t.previous=r,r.next=t),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(r===t.Last){if(e===this._tail)return;const t=e.next,r=e.previous;e===this._head?(t.previous=void 0,this._head=t):(t.previous=r,r.next=t),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}toJSON(){const e=[];return this.forEach((t,r)=>{e.push([r,t])}),e}fromJSON(e){this.clear();for(const[t,r]of e)this.set(t,r)}};e.LinkedMap=n;var i=class extends n{static{Ue(this,"LRUCache")}_limit;_ratio;constructor(e,t=1){super(),this._limit=e,this._ratio=Math.min(Math.max(0,t),1)}get limit(){return this._limit}set limit(e){this._limit=e,this.checkTrim()}get ratio(){return this._ratio}set ratio(e){this._ratio=Math.min(Math.max(0,e),1),this.checkTrim()}get(e,r=t.AsNew){return super.get(e,r)}peek(e){return super.get(e,t.None)}set(e,r){return super.set(e,r,t.Last),this.checkTrim(),this}checkTrim(){this.size>this._limit&&this.trimOld(Math.round(this._limit*this._ratio))}};e.LRUCache=i}}),Ze=Be({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/disposable.js"(e){var t;Object.defineProperty(e,"__esModule",{value:!0}),e.Disposable=void 0,function(e){function t(e){return{dispose:e}}Ue(t,"create"),e.create=t}(t||(e.Disposable=t={}))}}),Je=Be({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/ral.js"(e){var t;function r(){if(void 0===t)throw new Error("No runtime abstraction layer installed");return t}Object.defineProperty(e,"__esModule",{value:!0}),Ue(r,"RAL"),function(e){function r(e){if(void 0===e)throw new Error("No runtime abstraction layer provided");t=e}Ue(r,"install"),e.install=r}(r||(r={})),e.default=r}}),et=Be({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/events.js"(e){var t=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,"__esModule",{value:!0}),e.Emitter=e.Event=void 0;var r,n=t(Je());!function(e){const t={dispose(){}};e.None=function(){return t}}(r||(e.Event=r={}));var i=class{static{Ue(this,"CallbackList")}_callbacks;_contexts;add(e,t=null,r){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(e),this._contexts.push(t),Array.isArray(r)&&r.push({dispose:Ue(()=>this.remove(e,t),"dispose")})}remove(e,t=null){if(!this._callbacks)return;let r=!1;for(let n=0,i=this._callbacks.length;n<i;n++)if(this._callbacks[n]===e){if(this._contexts[n]===t)return this._callbacks.splice(n,1),void this._contexts.splice(n,1);r=!0}if(r)throw new Error("When adding a listener with a context, you should remove it with the same context")}invoke(...e){if(!this._callbacks)return[];const t=[],r=this._callbacks.slice(0),i=this._contexts.slice(0);for(let a=0,s=r.length;a<s;a++)try{t.push(r[a].apply(i[a],e))}catch(e){(0,n.default)().console.error(e)}return t}isEmpty(){return!this._callbacks||0===this._callbacks.length}dispose(){this._callbacks=void 0,this._contexts=void 0}},a=class e{static{Ue(this,"Emitter")}_options;static _noop=Ue(function(){},"_noop");_event;_callbacks;constructor(e){this._options=e}get event(){return this._event||(this._event=(t,r,n)=>{this._callbacks||(this._callbacks=new i),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(t,r);const a={dispose:Ue(()=>{this._callbacks&&(this._callbacks.remove(t,r),a.dispose=e._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))},"dispose")};return Array.isArray(n)&&n.push(a),a}),this._event}fire(e){this._callbacks&&this._callbacks.invoke.call(this._callbacks,e)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}};e.Emitter=a}}),tt=Be({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/cancellation.js"(e){var t=e&&e.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:Ue(function(){return t[r]},"get")}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),r=e&&e.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=e&&e.__importStar||function(){var e=Ue(function(t){return(e=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t})(t)},"ownKeys");return function(n){if(n&&n.__esModule)return n;var i={};if(null!=n)for(var a=e(n),s=0;s<a.length;s++)"default"!==a[s]&&t(i,n,a[s]);return r(i,n),i}}(),i=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,"__esModule",{value:!0}),e.CancellationTokenSource=e.CancellationToken=void 0;var a,s=i(Je()),o=n(Ye()),l=et();!function(e){function t(t){const r=t;return r&&(r===e.None||r===e.Cancelled||o.boolean(r.isCancellationRequested)&&!!r.onCancellationRequested)}e.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:l.Event.None}),e.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:l.Event.None}),Ue(t,"is"),e.is=t}(a||(e.CancellationToken=a={}));var u=Object.freeze(function(e,t){const r=(0,s.default)().timer.setTimeout(e.bind(t),0);return{dispose(){r.dispose()}}}),c=class{static{Ue(this,"MutableToken")}_isCancelled=!1;_emitter;cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?u:(this._emitter||(this._emitter=new l.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}},p=class{static{Ue(this,"CancellationTokenSource")}_token;get token(){return this._token||(this._token=new c),this._token}cancel(){this._token?this._token.cancel():this._token=a.Cancelled}dispose(){this._token?this._token instanceof c&&this._token.dispose():this._token=a.None}};e.CancellationTokenSource=p}}),rt=Be({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.SharedArrayReceiverStrategy=e.SharedArraySenderStrategy=void 0;var t,r,n=tt();(r=t||(t={})).Continue=0,r.Cancelled=1;var i=class{static{Ue(this,"SharedArraySenderStrategy")}buffers;constructor(){this.buffers=new Map}enableCancellation(e){if(null===e.id)return;const r=new SharedArrayBuffer(4);new Int32Array(r,0,1)[0]=t.Continue,this.buffers.set(e.id,r),e.$cancellationData=r}async sendCancellation(e,r){const n=this.buffers.get(r);if(void 0===n)return;const i=new Int32Array(n,0,1);Atomics.store(i,0,t.Cancelled)}cleanup(e){this.buffers.delete(e)}dispose(){this.buffers.clear()}};e.SharedArraySenderStrategy=i;var a=class{static{Ue(this,"SharedArrayBufferCancellationToken")}data;constructor(e){this.data=new Int32Array(e,0,1)}get isCancellationRequested(){return Atomics.load(this.data,0)===t.Cancelled}get onCancellationRequested(){throw new Error("Cancellation over SharedArrayBuffer doesn't support cancellation events")}},s=class{static{Ue(this,"SharedArrayBufferCancellationTokenSource")}token;constructor(e){this.token=new a(e)}cancel(){}dispose(){}},o=class{static{Ue(this,"SharedArrayReceiverStrategy")}kind="request";createCancellationTokenSource(e){const t=e.$cancellationData;return void 0===t?new n.CancellationTokenSource:new s(t)}};e.SharedArrayReceiverStrategy=o}}),nt=Be({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/semaphore.js"(e){var t=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,"__esModule",{value:!0}),e.Semaphore=void 0;var r=t(Je()),n=class{static{Ue(this,"Semaphore")}_capacity;_active;_waiting;constructor(e=1){if(e<=0)throw new Error("Capacity must be greater than 0");this._capacity=e,this._active=0,this._waiting=[]}lock(e){return new Promise((t,r)=>{this._waiting.push({thunk:e,resolve:t,reject:r}),this.runNext()})}get active(){return this._active}runNext(){0!==this._waiting.length&&this._active!==this._capacity&&(0,r.default)().timer.setImmediate(()=>this.doRunNext())}doRunNext(){if(0===this._waiting.length||this._active===this._capacity)return;const e=this._waiting.shift();if(this._active++,this._active>this._capacity)throw new Error("Too many thunks active");try{const t=e.thunk();t instanceof Promise?t.then(t=>{this._active--,e.resolve(t),this.runNext()},t=>{this._active--,e.reject(t),this.runNext()}):(this._active--,e.resolve(t),this.runNext())}catch(t){this._active--,e.reject(t),this.runNext()}}};e.Semaphore=n}}),it=Be({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/messageReader.js"(e){var t=e&&e.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:Ue(function(){return t[r]},"get")}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),r=e&&e.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=e&&e.__importStar||function(){var e=Ue(function(t){return(e=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t})(t)},"ownKeys");return function(n){if(n&&n.__esModule)return n;var i={};if(null!=n)for(var a=e(n),s=0;s<a.length;s++)"default"!==a[s]&&t(i,n,a[s]);return r(i,n),i}}(),i=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,"__esModule",{value:!0}),e.ReadableStreamMessageReader=e.AbstractMessageReader=e.MessageReader=void 0;var a,s=i(Je()),o=n(Ye()),l=et(),u=nt();!function(e){function t(e){const t=e;return t&&o.func(t.listen)&&o.func(t.dispose)&&o.func(t.onError)&&o.func(t.onClose)&&o.func(t.onPartialMessage)}Ue(t,"is"),e.is=t}(a||(e.MessageReader=a={}));var c,p=class{static{Ue(this,"AbstractMessageReader")}errorEmitter;closeEmitter;partialMessageEmitter;constructor(){this.errorEmitter=new l.Emitter,this.closeEmitter=new l.Emitter,this.partialMessageEmitter=new l.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose(),this.partialMessageEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e){this.errorEmitter.fire(this.asError(e))}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}get onPartialMessage(){return this.partialMessageEmitter.event}firePartialMessage(e){this.partialMessageEmitter.fire(e)}asError(e){return e instanceof Error?e:new Error(`Reader received error. Reason: ${o.string(e.message)?e.message:"unknown"}`)}};e.AbstractMessageReader=p,function(e){function t(e){let t,r;const n=new Map;let i;const a=new Map;if(void 0===e||"string"==typeof e)t=e??"utf-8";else{if(t=e.charset??"utf-8",void 0!==e.contentDecoder&&(r=e.contentDecoder,n.set(r.name,r)),void 0!==e.contentDecoders)for(const t of e.contentDecoders)n.set(t.name,t);if(void 0!==e.contentTypeDecoder&&(i=e.contentTypeDecoder,a.set(i.name,i)),void 0!==e.contentTypeDecoders)for(const t of e.contentTypeDecoders)a.set(t.name,t)}return void 0===i&&(i=(0,s.default)().applicationJson.decoder,a.set(i.name,i)),{charset:t,contentDecoder:r,contentDecoders:n,contentTypeDecoder:i,contentTypeDecoders:a}}Ue(t,"fromOptions"),e.fromOptions=t}(c||(c={}));var d=class extends p{static{Ue(this,"ReadableStreamMessageReader")}readable;options;callback;nextMessageLength;messageToken;buffer;partialMessageTimer;_partialMessageTimeout;readSemaphore;constructor(e,t){super(),this.readable=e,this.options=c.fromOptions(t),this.buffer=(0,s.default)().messageBuffer.create(this.options.charset),this._partialMessageTimeout=1e4,this.nextMessageLength=-1,this.messageToken=0,this.readSemaphore=new u.Semaphore(1)}set partialMessageTimeout(e){this._partialMessageTimeout=e}get partialMessageTimeout(){return this._partialMessageTimeout}listen(e){this.nextMessageLength=-1,this.messageToken=0,this.partialMessageTimer=void 0,this.callback=e;const t=this.readable.onData(e=>{this.onData(e)});return this.readable.onError(e=>this.fireError(e)),this.readable.onClose(()=>this.fireClose()),t}onData(e){try{for(this.buffer.append(e);;){if(-1===this.nextMessageLength){const e=this.buffer.tryReadHeaders(!0);if(!e)return;const t=e.get("content-length");if(!t)return void this.fireError(new Error(`Header must provide a Content-Length property.\n${JSON.stringify(Object.fromEntries(e))}`));const r=parseInt(t);if(isNaN(r))return void this.fireError(new Error(`Content-Length value must be a number. Got ${t}`));this.nextMessageLength=r}const e=this.buffer.tryReadBody(this.nextMessageLength);if(void 0===e)return void this.setPartialMessageTimer();this.clearPartialMessageTimer(),this.nextMessageLength=-1,this.readSemaphore.lock(async()=>{const t=void 0!==this.options.contentDecoder?await this.options.contentDecoder.decode(e):e,r=await this.options.contentTypeDecoder.decode(t,this.options);this.callback(r)}).catch(e=>{this.fireError(e)})}}catch(e){this.fireError(e)}}clearPartialMessageTimer(){this.partialMessageTimer&&(this.partialMessageTimer.dispose(),this.partialMessageTimer=void 0)}setPartialMessageTimer(){this.clearPartialMessageTimer(),this._partialMessageTimeout<=0||(this.partialMessageTimer=(0,s.default)().timer.setTimeout((e,t)=>{this.partialMessageTimer=void 0,e===this.messageToken&&(this.firePartialMessage({messageToken:e,waitingTime:t}),this.setPartialMessageTimer())},this._partialMessageTimeout,this.messageToken,this._partialMessageTimeout))}};e.ReadableStreamMessageReader=d}}),at=Be({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/messageWriter.js"(e){var t=e&&e.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:Ue(function(){return t[r]},"get")}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),r=e&&e.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=e&&e.__importStar||function(){var e=Ue(function(t){return(e=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t})(t)},"ownKeys");return function(n){if(n&&n.__esModule)return n;var i={};if(null!=n)for(var a=e(n),s=0;s<a.length;s++)"default"!==a[s]&&t(i,n,a[s]);return r(i,n),i}}(),i=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,"__esModule",{value:!0}),e.WriteableStreamMessageWriter=e.AbstractMessageWriter=e.MessageWriter=void 0;var a,s=i(Je()),o=n(Ye()),l=nt(),u=et();!function(e){function t(e){const t=e;return t&&o.func(t.dispose)&&o.func(t.onClose)&&o.func(t.onError)&&o.func(t.write)}Ue(t,"is"),e.is=t}(a||(e.MessageWriter=a={}));var c,p=class{static{Ue(this,"AbstractMessageWriter")}errorEmitter;closeEmitter;constructor(){this.errorEmitter=new u.Emitter,this.closeEmitter=new u.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e,t,r){this.errorEmitter.fire([this.asError(e),t,r])}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}asError(e){return e instanceof Error?e:new Error(`Writer received error. Reason: ${o.string(e.message)?e.message:"unknown"}`)}};e.AbstractMessageWriter=p,function(e){function t(e){return void 0===e||"string"==typeof e?{charset:e??"utf-8",contentTypeEncoder:(0,s.default)().applicationJson.encoder}:{charset:e.charset??"utf-8",contentEncoder:e.contentEncoder,contentTypeEncoder:e.contentTypeEncoder??(0,s.default)().applicationJson.encoder}}Ue(t,"fromOptions"),e.fromOptions=t}(c||(c={}));var d=class extends p{static{Ue(this,"WriteableStreamMessageWriter")}writable;options;errorCount;writeSemaphore;constructor(e,t){super(),this.writable=e,this.options=c.fromOptions(t),this.errorCount=0,this.writeSemaphore=new l.Semaphore(1),this.writable.onError(e=>this.fireError(e)),this.writable.onClose(()=>this.fireClose())}async write(e){return this.writeSemaphore.lock(async()=>this.options.contentTypeEncoder.encode(e,this.options).then(e=>void 0!==this.options.contentEncoder?this.options.contentEncoder.encode(e):e).then(t=>{const r=[];return r.push("Content-Length: ",t.byteLength.toString(),"\r\n"),r.push("\r\n"),this.doWrite(e,r,t)},e=>{throw this.fireError(e),e}))}async doWrite(e,t,r){try{return await this.writable.write(t.join(""),"ascii"),this.writable.write(r)}catch(t){return this.handleError(t,e),Promise.reject(t)}}handleError(e,t){this.errorCount++,this.fireError(e,t,this.errorCount)}end(){this.writable.end()}};e.WriteableStreamMessageWriter=d}}),st=Be({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractMessageBuffer=void 0;var t=class{static{Ue(this,"AbstractMessageBuffer")}_encoding;_chunks;_totalLength;constructor(e="utf-8"){this._encoding=e,this._chunks=[],this._totalLength=0}get encoding(){return this._encoding}append(e){const t="string"==typeof e?this.fromString(e,this._encoding):e;this._chunks.push(t),this._totalLength+=t.byteLength}tryReadHeaders(e=!1){if(0===this._chunks.length)return;let t=0,r=0,n=0,i=0;e:for(;r<this._chunks.length;){const e=this._chunks[r];for(n=0;n<e.length;){switch(e[n]){case 13:switch(t){case 0:t=1;break;case 2:t=3;break;default:t=0}break;case 10:switch(t){case 1:t=2;break;case 3:t=4,n++;break e;default:t=0}break;default:t=0}n++}i+=e.byteLength,r++}if(4!==t)return;const a=this._read(i+n),s=new Map,o=this.toString(a,"ascii").split("\r\n");if(o.length<2)return s;for(let t=0;t<o.length-2;t++){const r=o[t],n=r.indexOf(":");if(-1===n)throw new Error(`Message header must separate key and value using ':'\n${r}`);const i=r.substr(0,n),a=r.substr(n+1).trim();s.set(e?i.toLowerCase():i,a)}return s}tryReadBody(e){if(!(this._totalLength<e))return this._read(e)}get numberOfBytes(){return this._totalLength}_read(e){if(0===e)return this.emptyBuffer();if(e>this._totalLength)throw new Error("Cannot read so many bytes!");if(this._chunks[0].byteLength===e){const t=this._chunks[0];return this._chunks.shift(),this._totalLength-=e,this.asNative(t)}if(this._chunks[0].byteLength>e){const t=this._chunks[0],r=this.asNative(t,e);return this._chunks[0]=t.slice(e),this._totalLength-=e,r}const t=this.allocNative(e);let r=0;for(;e>0;){const n=this._chunks[0];if(n.byteLength>e){const i=n.slice(0,e);t.set(i,r),r+=e,this._chunks[0]=n.slice(e),this._totalLength-=e,e-=e}else t.set(n,r),r+=n.byteLength,this._chunks.shift(),this._totalLength-=n.byteLength,e-=n.byteLength}return t}};e.AbstractMessageBuffer=t}}),ot=Be({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/connection.js"(e){var t=e&&e.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:Ue(function(){return t[r]},"get")}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),r=e&&e.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=e&&e.__importStar||function(){var e=Ue(function(t){return(e=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t})(t)},"ownKeys");return function(n){if(n&&n.__esModule)return n;var i={};if(null!=n)for(var a=e(n),s=0;s<a.length;s++)"default"!==a[s]&&t(i,n,a[s]);return r(i,n),i}}(),i=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,"__esModule",{value:!0}),e.ConnectionOptions=e.MessageStrategy=e.CancellationStrategy=e.CancellationSenderStrategy=e.CancellationReceiverStrategy=e.RequestCancellationReceiverStrategy=e.IdCancellationReceiverStrategy=e.ConnectionStrategy=e.ConnectionError=e.ConnectionErrors=e.LogTraceNotification=e.SetTraceNotification=e.TraceFormat=e.TraceValues=e.TraceValue=e.Trace=e.NullLogger=e.ProgressType=e.ProgressToken=void 0,e.createMessageConnection=M;var a,s,o,l=i(Je()),u=n(Ye()),c=Xe(),p=Qe(),d=et(),f=tt();(a||(a={})).type=new c.NotificationType("$/cancelRequest"),function(e){function t(e){return"string"==typeof e||"number"==typeof e}Ue(t,"is"),e.is=t}(s||(e.ProgressToken=s={})),(o||(o={})).type=new c.NotificationType("$/progress");var m,h,y,g,T,v,R,$,C,E,b,A=class{static{Ue(this,"ProgressType")}__;_pr;constructor(){}};e.ProgressType=A,function(e){function t(e){return u.func(e)}Ue(t,"is"),e.is=t}(m||(m={})),e.NullLogger=Object.freeze({error:Ue(()=>{},"error"),warn:Ue(()=>{},"warn"),info:Ue(()=>{},"info"),log:Ue(()=>{},"log")}),(y=h||(e.Trace=h={}))[y.Off=0]="Off",y[y.Messages=1]="Messages",y[y.Compact=2]="Compact",y[y.Verbose=3]="Verbose",(T=g||(e.TraceValue=g={})).Off="off",T.Messages="messages",T.Compact="compact",T.Verbose="verbose",e.TraceValues=g,function(e){function t(t){if(!u.string(t))return e.Off;switch(t=t.toLowerCase()){case"off":default:return e.Off;case"messages":return e.Messages;case"compact":return e.Compact;case"verbose":return e.Verbose}}function r(t){switch(t){case e.Off:return"off";case e.Messages:return"messages";case e.Compact:return"compact";case e.Verbose:return"verbose";default:return"off"}}Ue(t,"fromString"),e.fromString=t,Ue(r,"toString"),e.toString=r}(h||(e.Trace=h={})),(R=v||(e.TraceFormat=v={})).Text="text",R.JSON="json",function(e){function t(t){return u.string(t)&&"json"===(t=t.toLowerCase())?e.JSON:e.Text}Ue(t,"fromString"),e.fromString=t}(v||(e.TraceFormat=v={})),($||(e.SetTraceNotification=$={})).type=new c.NotificationType("$/setTrace"),(C||(e.LogTraceNotification=C={})).type=new c.NotificationType("$/logTrace"),(b=E||(e.ConnectionErrors=E={}))[b.Closed=1]="Closed",b[b.Disposed=2]="Disposed",b[b.AlreadyListening=3]="AlreadyListening";var S,x,k,w,_,N,I,O,P,D,L=class e extends Error{static{Ue(this,"ConnectionError")}code;constructor(t,r){super(r),this.code=t,Object.setPrototypeOf(this,e.prototype)}};function M(t,r,n,i){const y=void 0!==n?n:e.NullLogger;let g=0,T=0,R=0;const b="2.0",A=i?.maxParallelism??-1;let S,k=0;const w=new Map;let _;const O=new Map,D=new Map;let M,j,F=new p.LinkedMap,K=new Map,G=new Set,z=new Map,q=h.Off,U=v.Text,B=P.New;const V=new d.Emitter,W=new d.Emitter,H=new d.Emitter,Y=new d.Emitter,X=new d.Emitter,Q=i&&i.cancellationStrategy?i.cancellationStrategy:N.Message;function Z(e){}function J(){return B===P.Listening}function ee(){return B===P.Closed}function te(){return B===P.Disposed}function re(){B!==P.New&&B!==P.Listening||(B=P.Closed,W.fire(void 0))}function ne(e){V.fire([e,void 0,void 0])}function ie(e){V.fire(e)}function ae(e){if(null===e)throw new Error("Can't send requests with id null since the response can't be correlated.");return"req-"+e.toString()}function se(e){return null===e?"res-unknown-"+(++R).toString():"res-"+e.toString()}function oe(){return"not-"+(++T).toString()}function le(e,t){c.Message.isRequest(t)?e.set(ae(t.id),t):c.Message.isResponse(t)?-1===A?e.set(se(t.id),t):fe(t):e.set(oe(),t)}function ue(){M||0===F.size||-1!==A&&k>=A||(M=(0,l.default)().timer.setImmediate(async()=>{if(M=void 0,0===F.size)return;if(-1!==A&&k>=A)return;const e=F.shift();let t;try{k++;const r=i?.messageStrategy;t=I.is(r)?r.handleMessage(e,ce):ce(e)}catch(e){y.error(`Processing message queue failed: ${e.toString()}`)}finally{t instanceof Promise?t.then(()=>{k--,ue()}).catch(e=>{y.error(`Processing message queue failed: ${e.toString()}`)}):k--,ue()}}))}async function ce(e){return c.Message.isRequest(e)?de(e):c.Message.isNotification(e)?me(e):c.Message.isResponse(e)?fe(e):he(e)}Ue(Z,"cancelUndispatched"),Ue(J,"isListening"),Ue(ee,"isClosed"),Ue(te,"isDisposed"),Ue(re,"closeHandler"),Ue(ne,"readErrorHandler"),Ue(ie,"writeErrorHandler"),t.onClose(re),t.onError(ne),r.onClose(re),r.onError(ie),Ue(ae,"createRequestQueueKey"),Ue(se,"createResponseQueueKey"),Ue(oe,"createNotificationQueueKey"),Ue(le,"addMessageToQueue"),Ue(ue,"triggerMessageQueue"),Ue(ce,"handleMessage");const pe=Ue(e=>{try{if(c.Message.isNotification(e)&&e.method===a.type.method){const t=e.params.id,n=ae(t),a=F.get(n);if(c.Message.isRequest(a)){const s=i?.connectionStrategy,o=s&&s.cancelUndispatched?s.cancelUndispatched(a,Z):void 0;if(o&&(void 0!==o.error||void 0!==o.result))return F.delete(n),z.delete(t),o.id=a.id,ve(o,e.method,Date.now()),void r.write(o).catch(()=>y.error("Sending response for canceled message failed."))}const s=z.get(t);if(void 0!==s)return s.cancel(),void $e(e);G.add(t)}le(F,e)}finally{ue()}},"callback");async function de(e){if(te())return Promise.resolve();function t(t,n,i){const a={jsonrpc:b,id:e.id};return t instanceof c.ResponseError?a.error=t.toJson():a.result=void 0===t?null:t,ve(a,n,i),r.write(a)}function n(t,n,i){const a={jsonrpc:b,id:e.id,error:t.toJson()};return ve(a,n,i),r.write(a)}Ue(t,"reply"),Ue(n,"replyError"),Re(e);const i=w.get(e.method);let a,s;i&&(a=i.type,s=i.handler);const o=Date.now();if(s||S){const r=e.id??String(Date.now()),i=x.is(Q.receiver)?Q.receiver.createCancellationTokenSource(r):Q.receiver.createCancellationTokenSource(e);null!==e.id&&G.has(e.id)&&i.cancel(),null!==e.id&&z.set(r,i);try{let r;if(s)if(void 0===e.params){if(void 0!==a&&0!==a.numberOfParams)return n(new c.ResponseError(c.ErrorCodes.InvalidParams,`Request ${e.method} defines ${a.numberOfParams} params but received none.`),e.method,o);r=s(i.token)}else if(Array.isArray(e.params)){if(void 0!==a&&a.parameterStructures===c.ParameterStructures.byName)return n(new c.ResponseError(c.ErrorCodes.InvalidParams,`Request ${e.method} defines parameters by name but received parameters by position`),e.method,o);r=s(...e.params,i.token)}else{if(void 0!==a&&a.parameterStructures===c.ParameterStructures.byPosition)return n(new c.ResponseError(c.ErrorCodes.InvalidParams,`Request ${e.method} defines parameters by position but received parameters by name`),e.method,o);r=s(e.params,i.token)}else S&&(r=S(e.method,e.params,i.token));const l=await r;await t(l,e.method,o)}catch(r){r instanceof c.ResponseError?await t(r,e.method,o):r&&u.string(r.message)?await n(new c.ResponseError(c.ErrorCodes.InternalError,`Request ${e.method} failed with message: ${r.message}`),e.method,o):await n(new c.ResponseError(c.ErrorCodes.InternalError,`Request ${e.method} failed unexpectedly without providing any details.`),e.method,o)}finally{z.delete(r)}}else await n(new c.ResponseError(c.ErrorCodes.MethodNotFound,`Unhandled method ${e.method}`),e.method,o)}function fe(e){if(!te())if(null===e.id)e.error?y.error(`Received response message without id: Error is: \n${JSON.stringify(e.error,void 0,4)}`):y.error("Received response message without id. No further error information provided.");else{const t=e.id,r=K.get(t);if(Ce(e,r),void 0!==r){K.delete(t);try{if(e.error){const t=e.error;r.reject(new c.ResponseError(t.code,t.message,t.data))}else{if(void 0===e.result)throw new Error("Should never happen.");r.resolve(e.result)}}catch(e){e.message?y.error(`Response handler '${r.method}' failed with message: ${e.message}`):y.error(`Response handler '${r.method}' failed unexpectedly.`)}}}}async function me(e){if(te())return;let t,r;if(e.method===a.type.method){const t=e.params.id;return G.delete(t),void $e(e)}{const n=O.get(e.method);n&&(r=n.handler,t=n.type)}if(r||_)try{if($e(e),r)if(void 0===e.params)void 0!==t&&0!==t.numberOfParams&&t.parameterStructures!==c.ParameterStructures.byName&&y.error(`Notification ${e.method} defines ${t.numberOfParams} params but received none.`),await r();else if(Array.isArray(e.params)){const n=e.params;e.method===o.type.method&&2===n.length&&s.is(n[0])?await r({token:n[0],value:n[1]}):(void 0!==t&&(t.parameterStructures===c.ParameterStructures.byName&&y.error(`Notification ${e.method} defines parameters by name but received parameters by position`),t.numberOfParams!==e.params.length&&y.error(`Notification ${e.method} defines ${t.numberOfParams} params but received ${n.length} arguments`)),await r(...n))}else void 0!==t&&t.parameterStructures===c.ParameterStructures.byPosition&&y.error(`Notification ${e.method} defines parameters by position but received parameters by name`),await r(e.params);else _&&await _(e.method,e.params)}catch(t){t.message?y.error(`Notification handler '${e.method}' failed with message: ${t.message}`):y.error(`Notification handler '${e.method}' failed unexpectedly.`)}else H.fire(e)}function he(e){if(!e)return void y.error("Received empty message.");y.error(`Received message which is neither a response nor a notification message:\n${JSON.stringify(e,null,4)}`);const t=e;if(u.string(t.id)||u.number(t.id)){const e=t.id,r=K.get(e);r&&r.reject(new Error("The received response has neither a result nor an error property."))}}function ye(e){if(null!=e)switch(q){case h.Verbose:return JSON.stringify(e,null,4);case h.Compact:return JSON.stringify(e);default:return}}function ge(e){if(q!==h.Off&&j)if(U===v.Text){let t;q!==h.Verbose&&q!==h.Compact||!e.params||(t=`Params: ${ye(e.params)}`),j.log(`Sending request '${e.method} - (${e.id})'.`,t)}else Ee("send-request",e)}function Te(e){if(q!==h.Off&&j)if(U===v.Text){let t;q!==h.Verbose&&q!==h.Compact||(t=e.params?`Params: ${ye(e.params)}`:"No parameters provided."),j.log(`Sending notification '${e.method}'.`,t)}else Ee("send-notification",e)}function ve(e,t,r){if(q!==h.Off&&j)if(U===v.Text){let n;q!==h.Verbose&&q!==h.Compact||(e.error&&e.error.data?n=`Error data: ${ye(e.error.data)}`:e.result?n=`Result: ${ye(e.result)}`:void 0===e.error&&(n="No result returned."));const i=e.error?` Request failed: ${e.error.message} (${e.error.code}).`:"";j.log(`Sending response '${t} - (${e.id})'. Processing request took ${Date.now()-r}ms.${i}`,n)}else Ee("send-response",e)}function Re(e){if(q!==h.Off&&j)if(U===v.Text){let t;q!==h.Verbose&&q!==h.Compact||!e.params||(t=`Params: ${ye(e.params)}`),j.log(`Received request '${e.method} - (${e.id})'.`,t)}else Ee("receive-request",e)}function $e(e){if(q!==h.Off&&j&&e.method!==C.type.method)if(U===v.Text){let t;q!==h.Verbose&&q!==h.Compact||(t=e.params?`Params: ${ye(e.params)}`:"No parameters provided."),j.log(`Received notification '${e.method}'.`,t)}else Ee("receive-notification",e)}function Ce(e,t){if(q!==h.Off&&j)if(U===v.Text){let r;if(q!==h.Verbose&&q!==h.Compact||(e.error&&e.error.data?r=`Error data: ${ye(e.error.data)}`:e.result?r=`Result: ${ye(e.result)}`:void 0===e.error&&(r="No result returned.")),t){const n=e.error?` Request failed: ${e.error.message} (${e.error.code}).`:"";j.log(`Received response '${t.method} - (${e.id})' in ${Date.now()-t.timerStart}ms.${n}`,r)}else j.log(`Received response ${e.id} without active response promise.`,r)}else Ee("receive-response",e)}function Ee(e,t){if(!j||q===h.Off)return;const r={isLSPMessage:!0,type:e,message:t,timestamp:Date.now()};j.log(r)}function be(){if(ee())throw new L(E.Closed,"Connection is closed.");if(te())throw new L(E.Disposed,"Connection is disposed.")}function Ae(){if(J())throw new L(E.AlreadyListening,"Connection is already listening")}function Se(){if(!J())throw new Error("Call listen() first.")}function xe(e){return void 0===e?null:e}function ke(e){return null===e?void 0:e}function we(e){return null!=e&&!Array.isArray(e)&&"object"==typeof e}function _e(e,t){switch(e){case c.ParameterStructures.auto:return we(t)?ke(t):[xe(t)];case c.ParameterStructures.byName:if(!we(t))throw new Error("Received parameters by name but param is not an object literal.");return ke(t);case c.ParameterStructures.byPosition:return[xe(t)];default:throw new Error(`Unknown parameter structure ${e.toString()}`)}}function Ne(e,t){let r;const n=e.numberOfParams;switch(n){case 0:r=void 0;break;case 1:r=_e(e.parameterStructures,t[0]);break;default:r=[];for(let e=0;e<t.length&&e<n;e++)r.push(xe(t[e]));if(t.length<n)for(let e=t.length;e<n;e++)r.push(null)}return r}Ue(de,"handleRequest"),Ue(fe,"handleResponse"),Ue(me,"handleNotification"),Ue(he,"handleInvalidMessage"),Ue(ye,"stringifyTrace"),Ue(ge,"traceSendingRequest"),Ue(Te,"traceSendingNotification"),Ue(ve,"traceSendingResponse"),Ue(Re,"traceReceivedRequest"),Ue($e,"traceReceivedNotification"),Ue(Ce,"traceReceivedResponse"),Ue(Ee,"logLSPMessage"),Ue(be,"throwIfClosedOrDisposed"),Ue(Ae,"throwIfListening"),Ue(Se,"throwIfNotListening"),Ue(xe,"undefinedToNull"),Ue(ke,"nullToUndefined"),Ue(we,"isNamedParam"),Ue(_e,"computeSingleParam"),Ue(Ne,"computeMessageParams");const Ie={sendNotification:Ue((e,...t)=>{let n,i;if(be(),u.string(e)){n=e;const r=t[0];let a=0,s=c.ParameterStructures.auto;c.ParameterStructures.is(r)&&(a=1,s=r);const o=t.length,l=o-a;switch(l){case 0:i=void 0;break;case 1:i=_e(s,t[a]);break;default:if(s===c.ParameterStructures.byName)throw new Error(`Received ${l} parameters for 'by Name' notification parameter structure.`);i=t.slice(a,o).map(e=>xe(e))}}else{const r=t;n=e.method,i=Ne(e,r)}const a={jsonrpc:b,method:n,params:i};return Te(a),r.write(a).catch(e=>{throw y.error("Sending notification failed."),e})},"sendNotification"),onNotification:Ue((e,t)=>{let r;return be(),u.func(e)?_=e:t&&(u.string(e)?(r=e,O.set(e,{type:void 0,handler:t})):(r=e.method,O.set(e.method,{type:e,handler:t}))),{dispose:Ue(()=>{void 0!==r?O.get(r)?.handler===t&&O.delete(r):_===e&&(_=void 0)},"dispose")}},"onNotification"),onProgress:Ue((e,t,r)=>{if(D.has(t))throw new Error(`Progress handler for token ${t} already registered`);return D.set(t,r),{dispose:Ue(()=>{D.get(t)===r&&D.delete(t)},"dispose")}},"onProgress"),sendProgress:Ue((e,t,r)=>Ie.sendNotification(o.type,{token:t,value:r}),"sendProgress"),onUnhandledProgress:Y.event,sendRequest:Ue((e,...t)=>{function n(e,t){const r=Q.sender.sendCancellation(e,t);void 0===r?y.log(`Received no promise from cancellation strategy when cancelling id ${t}`):r.catch(()=>{y.log(`Sending cancellation messages for id ${t} failed.`)})}let i,a,s;if(be(),Se(),Ue(n,"sendCancellation"),u.string(e)){i=e;const r=t[0],n=t[t.length-1];let o=0,l=c.ParameterStructures.auto;c.ParameterStructures.is(r)&&(o=1,l=r);let u=t.length;f.CancellationToken.is(n)&&(u-=1,s=n);const p=u-o;switch(p){case 0:a=void 0;break;case 1:a=_e(l,t[o]);break;default:if(l===c.ParameterStructures.byName)throw new Error(`Received ${p} parameters for 'by Name' request parameter structure.`);a=t.slice(o,u).map(e=>xe(e))}}else{const r=t;i=e.method,a=Ne(e,r);const n=e.numberOfParams;s=f.CancellationToken.is(r[n])?r[n]:void 0}const o=g++;let l,p=!1;void 0!==s&&(s.isCancellationRequested?p=!0:l=s.onCancellationRequested(()=>{n(Ie,o)}));const d={jsonrpc:b,id:o,method:i,params:a};return ge(d),"function"==typeof Q.sender.enableCancellation&&Q.sender.enableCancellation(d),new Promise(async(e,t)=>{const a=Ue(t=>{e(t),Q.sender.cleanup(o),l?.dispose()},"resolveWithCleanup"),s=Ue(e=>{t(e),Q.sender.cleanup(o),l?.dispose()},"rejectWithCleanup"),u={method:i,timerStart:Date.now(),resolve:a,reject:s};try{K.set(o,u),await r.write(d),p&&n(Ie,o)}catch(e){K.delete(o),u.reject(new c.ResponseError(c.ErrorCodes.MessageWriteError,e.message?e.message:"Unknown reason")),y.error("Sending request failed.")}})},"sendRequest"),onRequest:Ue((e,t)=>{be();let r=null;return m.is(e)?(r=void 0,S=e):u.string(e)?(r=null,void 0!==t&&(r=e,w.set(e,{handler:t,type:void 0}))):void 0!==t&&(r=e.method,w.set(e.method,{type:e,handler:t})),{dispose:Ue(()=>{null!==r&&(void 0!==r?w.get(r)?.handler===t&&w.delete(r):S===e&&(S=void 0))},"dispose")}},"onRequest"),hasPendingResponse:Ue(()=>K.size>0,"hasPendingResponse"),trace:Ue(async(e,t,r)=>{let n=!1,i=v.Text;void 0!==r&&(u.boolean(r)?n=r:(n=r.sendNotification||!1,i=r.traceFormat||v.Text)),q=e,U=i,j=q===h.Off?void 0:t,!n||ee()||te()||await Ie.sendNotification($.type,{value:h.toString(e)})},"trace"),onError:V.event,onClose:W.event,onUnhandledNotification:H.event,onDispose:X.event,end:Ue(()=>{r.end()},"end"),dispose:Ue(()=>{if(te())return;B=P.Disposed,X.fire(void 0);const e=new c.ResponseError(c.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(const t of K.values())t.reject(e);K=new Map,z=new Map,G=new Set,F=new p.LinkedMap,u.func(r.dispose)&&r.dispose(),u.func(t.dispose)&&t.dispose()},"dispose"),listen:Ue(()=>{be(),Ae(),B=P.Listening,t.listen(pe)},"listen"),inspect:Ue(()=>{(0,l.default)().console.log("inspect")},"inspect")};return Ie.onNotification(C.type,e=>{if(q===h.Off||!j)return;const t=q===h.Verbose||q===h.Compact;j.log(e.message,t?e.verbose:void 0)}),Ie.onNotification(o.type,async e=>{const t=D.get(e.token);t?await t(e.value):Y.fire(e)}),Ie}e.ConnectionError=L,function(e){function t(e){const t=e;return t&&u.func(t.cancelUndispatched)}Ue(t,"is"),e.is=t}(S||(e.ConnectionStrategy=S={})),function(e){function t(e){const t=e;return t&&(void 0===t.kind||"id"===t.kind)&&u.func(t.createCancellationTokenSource)&&(void 0===t.dispose||u.func(t.dispose))}Ue(t,"is"),e.is=t}(x||(e.IdCancellationReceiverStrategy=x={})),function(e){function t(e){const t=e;return t&&"request"===t.kind&&u.func(t.createCancellationTokenSource)&&(void 0===t.dispose||u.func(t.dispose))}Ue(t,"is"),e.is=t}(k||(e.RequestCancellationReceiverStrategy=k={})),function(e){function t(e){return x.is(e)||k.is(e)}e.Message=Object.freeze({createCancellationTokenSource:e=>new f.CancellationTokenSource}),Ue(t,"is"),e.is=t}(w||(e.CancellationReceiverStrategy=w={})),function(e){function t(e){const t=e;return t&&u.func(t.sendCancellation)&&u.func(t.cleanup)}e.Message=Object.freeze({sendCancellation:(e,t)=>e.sendNotification(a.type,{id:t}),cleanup(e){}}),Ue(t,"is"),e.is=t}(_||(e.CancellationSenderStrategy=_={})),function(e){function t(e){const t=e;return t&&w.is(t.receiver)&&_.is(t.sender)}e.Message=Object.freeze({receiver:w.Message,sender:_.Message}),Ue(t,"is"),e.is=t}(N||(e.CancellationStrategy=N={})),function(e){function t(e){const t=e;return t&&u.func(t.handleMessage)}Ue(t,"is"),e.is=t}(I||(e.MessageStrategy=I={})),function(e){function t(e){const t=e;return t&&(N.is(t.cancellationStrategy)||S.is(t.connectionStrategy)||I.is(t.messageStrategy)||u.number(t.maxParallelism))}Ue(t,"is"),e.is=t}(O||(e.ConnectionOptions=O={})),(D=P||(P={}))[D.New=1]="New",D[D.Listening=2]="Listening",D[D.Closed=3]="Closed",D[D.Disposed=4]="Disposed",Ue(M,"createMessageConnection")}}),lt=Be({"../../node_modules/.pnpm/vscode-jsonrpc@9.0.3/node_modules/vscode-jsonrpc/lib/common/api.js"(e){var t=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,"__esModule",{value:!0}),e.ProgressType=e.ProgressToken=e.createMessageConnection=e.NullLogger=e.ConnectionOptions=e.ConnectionStrategy=e.AbstractMessageBuffer=e.WriteableStreamMessageWriter=e.AbstractMessageWriter=e.MessageWriter=e.ReadableStreamMessageReader=e.AbstractMessageReader=e.MessageReader=e.SharedArrayReceiverStrategy=e.SharedArraySenderStrategy=e.CancellationToken=e.CancellationTokenSource=e.Emitter=e.Event=e.Disposable=e.LRUCache=e.Touch=e.LinkedMap=e.ParameterStructures=e.NotificationType9=e.NotificationType8=e.NotificationType7=e.NotificationType6=e.NotificationType5=e.NotificationType4=e.NotificationType3=e.NotificationType2=e.NotificationType1=e.NotificationType0=e.NotificationType=e.ErrorCodes=e.ResponseError=e.RequestType9=e.RequestType8=e.RequestType7=e.RequestType6=e.RequestType5=e.RequestType4=e.RequestType3=e.RequestType2=e.RequestType1=e.RequestType0=e.RequestType=e.Message=e.RAL=void 0,e.MessageStrategy=e.CancellationStrategy=e.CancellationSenderStrategy=e.RequestCancellationReceiverStrategy=e.IdCancellationReceiverStrategy=e.CancellationReceiverStrategy=e.ConnectionError=e.ConnectionErrors=e.LogTraceNotification=e.SetTraceNotification=e.TraceFormat=e.TraceValues=e.TraceValue=e.Trace=void 0;var r=Xe();Object.defineProperty(e,"Message",{enumerable:!0,get:Ue(function(){return r.Message},"get")}),Object.defineProperty(e,"RequestType",{enumerable:!0,get:Ue(function(){return r.RequestType},"get")}),Object.defineProperty(e,"RequestType0",{enumerable:!0,get:Ue(function(){return r.RequestType0},"get")}),Object.defineProperty(e,"RequestType1",{enumerable:!0,get:Ue(function(){return r.RequestType1},"get")}),Object.defineProperty(e,"RequestType2",{enumerable:!0,get:Ue(function(){return r.RequestType2},"get")}),Object.defineProperty(e,"RequestType3",{enumerable:!0,get:Ue(function(){return r.RequestType3},"get")}),Object.defineProperty(e,"RequestType4",{enumerable:!0,get:Ue(function(){return r.RequestType4},"get")}),Object.defineProperty(e,"RequestType5",{enumerable:!0,get:Ue(function(){return r.RequestType5},"get")}),Object.defineProperty(e,"RequestType6",{enumerable:!0,get:Ue(function(){return r.RequestType6},"get")}),Object.defineProperty(e,"RequestType7",{enumerable:!0,get:Ue(function(){return r.RequestType7},"get")}),Object.defineProperty(e,"RequestType8",{enumerable:!0,get:Ue(function(){return r.RequestType8},"get")}),Object.defineProperty(e,"RequestType9",{enumerable:!0,get:Ue(function(){return r.RequestType9},"get")}),Object.defineProperty(e,"ResponseError",{enumerable:!0,get:Ue(function(){return r.ResponseError},"get")}),Object.defineProperty(e,"ErrorCodes",{enumerable:!0,get:Ue(function(){return r.ErrorCodes},"get")}),Object.defineProperty(e,"NotificationType",{enumerable:!0,get:Ue(function(){return r.NotificationType},"get")}),Object.defineProperty(e,"NotificationType0",{enumerable:!0,get:Ue(function(){return r.NotificationType0},"get")}),Object.defineProperty(e,"NotificationType1",{enumerable:!0,get:Ue(function(){return r.NotificationType1},"get")}),Object.defineProperty(e,"NotificationType2",{enumerable:!0,get:Ue(function(){return r.NotificationType2},"get")}),Object.defineProperty(e,"NotificationType3",{enumerable:!0,get:Ue(function(){return r.NotificationType3},"get")}),Object.defineProperty(e,"NotificationType4",{enumerable:!0,get:Ue(function(){return r.NotificationType4},"get")}),Object.defineProperty(e,"NotificationType5",{enumerable:!0,get:Ue(function(){return r.NotificationType5},"get")}),Object.defineProperty(e,"NotificationType6",{enumerable:!0,get:Ue(function(){return r.NotificationType6},"get")}),Object.defineProperty(e,"NotificationType7",{enumerable:!0,get:Ue(function(){return r.NotificationType7},"get")}),Object.defineProperty(e,"NotificationType8",{enumerable:!0,get:Ue(function(){return r.NotificationType8},"get")}),Object.defineProperty(e,"NotificationType9",{enumerable:!0,get:Ue(function(){return r.NotificationType9},"get")}),Object.defineProperty(e,"ParameterStructures",{enumerable:!0,get:Ue(function(){return r.ParameterStructures},"get")});var n=Qe();Object.defineProperty(e,"LinkedMap",{enumerable:!0,get:Ue(function(){return n.LinkedMap},"get")}),Object.defineProperty(e,"LRUCache",{enumerable:!0,get:Ue(function(){return n.LRUCache},"get")}),Object.defineProperty(e,"Touch",{enumerable:!0,get:Ue(function(){return n.Touch},"get")});var i=Ze();Object.defineProperty(e,"Disposable",{enumerable:!0,get:Ue(function(){return i.Disposable},"get")});var a=et();Object.defineProperty(e,"Event",{enumerable:!0,get:Ue(function(){return a.Event},"get")}),Object.defineProperty(e,"Emitter",{enumerable:!0,get:Ue(function(){return a.Emitter},"get")});var s=tt();Object.defineProperty(e,"CancellationTokenSource",{enumerable:!0,get:Ue(function(){return s.CancellationTokenSource},"get")}),Object.defineProperty(e,"CancellationToken",{enumerable:!0,get:Ue(function(){return s.CancellationToken},"get")});var o=rt();Object.defineProperty(e,"SharedArraySenderStrategy",{enumerable:!0,get:Ue(function(){return o.SharedArraySenderStrategy},"get")}),Object.defineProperty(e,"SharedArrayReceiverStrategy",{enumerable:!0,get:Ue(function(){return o.SharedArrayReceiverStrategy},"get")});var l=it();Object.defineProperty(e,"MessageReader",{enumerable:!0,get:Ue(function(){return l.MessageReader},"get")}),Object.defineProperty(e,"AbstractMessageReader",{enumerable:!0,get:Ue(function(){return l.AbstractMessageReader},"get")}),Object.defineProperty(e,"ReadableStreamMessageReader",{enumerable:!0,get:Ue(function(){return l.ReadableStreamMessageReader},"get")});var u=at();Object.defineProperty(e,"MessageWriter",{enumerable:!0,get:Ue(function(){return u.MessageWriter},"get")}),Object.defineProperty(e,"AbstractMessageWriter",{enumerable:!0,get:Ue(function(){return u.AbstractMessageWriter},"get")}),Object.defineProperty(e,"WriteableStreamMessageWriter",{enumerable:!0,get:Ue(function(){return u.WriteableStreamMessageWriter},"get")});var c=st();Object.defineProperty(e,"AbstractMessageBuffer",{enumerable:!0,get:Ue(function(){return c.AbstractMessageBuffer},"get")});var p=ot();Object.defineProperty(e,"ConnectionStrategy",{enumerable:!0,get:Ue(function(){return p.ConnectionStrategy},"get")}),Object.defineProperty(e,"ConnectionOptions",{enumerable:!0,get:Ue(function(){return p.ConnectionOptions},"get")}),Object.defineProperty(e,"NullLogger",{enumerable:!0,get:Ue(function(){return p.NullLogger},"get")}),Object.defineProperty(e,"createMessageConnection",{enumerable:!0,get:Ue(function(){return p.createMessageConnection},"get")}),Object.defineProperty(e,"ProgressToken",{enumerable:!0,get:Ue(function(){return p.ProgressToken},"get")}),Object.defineProperty(e,"ProgressType",{enumerable:!0,get:Ue(function(){return p.ProgressType},"get")}),Object.defineProperty(e,"Trace",{enumerable:!0,get:Ue(function(){return p.Trace},"get")}),Object.defineProperty(e,"TraceValue",{enumerable:!0,get:Ue(function(){return p.TraceValue},"get")}),Object.defineProperty(e,"TraceFormat",{enumerable:!0,get:Ue(function(){return p.TraceFormat},"get")}),Object.defineProperty(e,"SetTraceNotification",{enumerable:!0,get:Ue(function(){return p.SetTraceNotification},"get")}),Object.defineProperty(e,"LogTraceNotification",{enumerable:!0,get:Ue(function(){return p.LogTraceNotification},"get")}),Object.defineProperty(e,"ConnectionErrors",{enumerable:!0,get:Ue(function(){return p.ConnectionErrors},"get")}),Object.defineProperty(e,"ConnectionError",{enumerable:!0,get:Ue(function(){return p.ConnectionError},"get")}),Object.defineProperty(e,"CancellationReceiverStrategy",{enumerable:!0,get:Ue(function(){return p.CancellationReceiverStrategy},"get")}),Object.defineProperty(e,"IdCancellationReceiverStrategy",{enumerable:!0,get:Ue(function(){return p.IdCancellationReceiverStrategy},"get")}),Object.defineProperty(e,"RequestCancellationReceiverStrategy",{enumerable:!0,get:Ue(function(){return p.RequestCancellationReceiverStrategy},"get")}),Object.defineProperty(e,"CancellationSenderStrategy",{enumerable:!0,get:Ue(function(){return p.CancellationSenderStrategy},"get")}),Object.defineProperty(e,"CancellationStrategy",{enumerable:!0,get:Ue(function(){return p.CancellationStrategy},"get")}),Object.defineProperty(e,"MessageStrategy",{enumerable:!0,get:Ue(function(){return p.MessageStrategy},"get")}),Object.defineProperty(e,"TraceValues",{enumerable:!0,get:Ue(function(){return p.TraceValues},"get")});var d=t(Je());e.RAL=d.default}}),ut={};((e,t)=>{for(var r in t)Fe(e,r,{get:t[r],enumerable:!0})})(ut,{AnnotatedTextEdit:()=>A,ApplyKind:()=>W,ChangeAnnotation:()=>E,ChangeAnnotationIdentifier:()=>b,CodeAction:()=>de,CodeActionContext:()=>ce,CodeActionKind:()=>le,CodeActionTag:()=>pe,CodeActionTriggerKind:()=>ue,CodeDescription:()=>v,CodeLens:()=>fe,Color:()=>p,ColorInformation:()=>d,ColorPresentation:()=>f,Command:()=>$,CompletionItem:()=>Y,CompletionItemKind:()=>z,CompletionItemLabelDetails:()=>H,CompletionItemTag:()=>U,CompletionList:()=>X,CreateFile:()=>x,DeleteFile:()=>w,Diagnostic:()=>R,DiagnosticRelatedInformation:()=>y,DiagnosticSeverity:()=>g,DiagnosticTag:()=>T,DocumentHighlight:()=>re,DocumentHighlightKind:()=>te,DocumentLink:()=>he,DocumentSymbol:()=>oe,DocumentUri:()=>n,EOL:()=>Pe,FoldingRange:()=>h,FoldingRangeKind:()=>m,FormattingOptions:()=>me,Hover:()=>Z,InlayHint:()=>Se,InlayHintKind:()=>be,InlayHintLabelPart:()=>Ae,InlineCompletionContext:()=>Ie,InlineCompletionItem:()=>ke,InlineCompletionList:()=>we,InlineCompletionTriggerKind:()=>_e,InlineValueContext:()=>Ee,InlineValueEvaluatableExpression:()=>Ce,InlineValueText:()=>Re,InlineValueVariableLookup:()=>$e,InsertReplaceEdit:()=>B,InsertTextFormat:()=>q,InsertTextMode:()=>V,LanguageKind:()=>j,Location:()=>u,LocationLink:()=>c,MarkedString:()=>Q,MarkupContent:()=>G,MarkupKind:()=>K,OptionalVersionedTextDocumentIdentifier:()=>M,ParameterInformation:()=>J,Position:()=>o,Range:()=>l,RenameFile:()=>k,SelectedCompletionInfo:()=>Ne,SelectionRange:()=>ye,SemanticTokenModifiers:()=>Te,SemanticTokenTypes:()=>ge,SemanticTokens:()=>ve,SignatureInformation:()=>ee,SnippetTextEdit:()=>I,StringValue:()=>xe,SymbolInformation:()=>ae,SymbolKind:()=>ne,SymbolTag:()=>ie,TextDocument:()=>De,TextDocumentEdit:()=>S,TextDocumentIdentifier:()=>D,TextDocumentItem:()=>F,TextEdit:()=>C,URI:()=>i,VersionedTextDocumentIdentifier:()=>L,WorkspaceChange:()=>P,WorkspaceEdit:()=>_,WorkspaceFolder:()=>Oe,WorkspaceSymbol:()=>se,integer:()=>a,uinteger:()=>s});var ct,pt,dt=(ct={"../../node_modules/.pnpm/vscode-languageserver-types@3.18.4/node_modules/vscode-languageserver-types/lib/esm/main.js"(){var e,t,r,je,Fe,Ke,Ge,ze,qe,Be,Ve,We,He,Ye,Xe;!function(e){function t(e){return"string"==typeof e}Ue(t,"is"),e.is=t}(n||(n={})),function(e){function t(e){return"string"==typeof e}Ue(t,"is"),e.is=t}(i||(i={})),function(e){function t(t){return"number"==typeof t&&e.MIN_VALUE<=t&&t<=e.MAX_VALUE}e.MIN_VALUE=-2147483648,e.MAX_VALUE=2147483647,Ue(t,"is"),e.is=t}(a||(a={})),function(e){function t(t){return"number"==typeof t&&e.MIN_VALUE<=t&&t<=e.MAX_VALUE}e.MIN_VALUE=0,e.MAX_VALUE=2147483647,Ue(t,"is"),e.is=t}(s||(s={})),function(e){function t(e,t){return e===Number.MAX_VALUE&&(e=s.MAX_VALUE),t===Number.MAX_VALUE&&(t=s.MAX_VALUE),{line:e,character:t}}function r(e){const t=e;return Me.objectLiteral(t)&&Me.uinteger(t.line)&&Me.uinteger(t.character)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(o||(o={})),function(e){function t(e,t,r,n){if(Me.uinteger(e)&&Me.uinteger(t)&&Me.uinteger(r)&&Me.uinteger(n))return{start:o.create(e,t),end:o.create(r,n)};if(o.is(e)&&o.is(t))return{start:e,end:t};throw new Error(`Range#create called with invalid arguments[${e}, ${t}, ${r}, ${n}]`)}function r(e){const t=e;return Me.objectLiteral(t)&&o.is(t.start)&&o.is(t.end)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(l||(l={})),function(e){function t(e,t){return{uri:e,range:t}}function r(e){const t=e;return Me.objectLiteral(t)&&l.is(t.range)&&(Me.string(t.uri)||Me.undefined(t.uri))}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(u||(u={})),function(e){function t(e,t,r,n){return{targetUri:e,targetRange:t,targetSelectionRange:r,originSelectionRange:n}}function r(e){const t=e;return Me.objectLiteral(t)&&l.is(t.targetRange)&&Me.string(t.targetUri)&&l.is(t.targetSelectionRange)&&(l.is(t.originSelectionRange)||Me.undefined(t.originSelectionRange))}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(c||(c={})),function(e){function t(e,t,r,n){return{red:e,green:t,blue:r,alpha:n}}function r(e){const t=e;return Me.objectLiteral(t)&&Me.numberRange(t.red,0,1)&&Me.numberRange(t.green,0,1)&&Me.numberRange(t.blue,0,1)&&Me.numberRange(t.alpha,0,1)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(p||(p={})),function(e){function t(e,t){return{range:e,color:t}}function r(e){const t=e;return Me.objectLiteral(t)&&l.is(t.range)&&p.is(t.color)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(d||(d={})),function(e){function t(e,t,r){return{label:e,textEdit:t,additionalTextEdits:r}}function r(e){const t=e;return Me.objectLiteral(t)&&Me.string(t.label)&&(Me.undefined(t.textEdit)||C.is(t))&&(Me.undefined(t.additionalTextEdits)||Me.typedArray(t.additionalTextEdits,C.is))}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(f||(f={})),(e=m||(m={})).Comment="comment",e.Imports="imports",e.Region="region",function(e){function t(e,t,r,n,i,a){const s={startLine:e,endLine:t};return Me.defined(r)&&(s.startCharacter=r),Me.defined(n)&&(s.endCharacter=n),Me.defined(i)&&(s.kind=i),Me.defined(a)&&(s.collapsedText=a),s}function r(e){const t=e;return Me.objectLiteral(t)&&Me.uinteger(t.startLine)&&Me.uinteger(t.startLine)&&(Me.undefined(t.startCharacter)||Me.uinteger(t.startCharacter))&&(Me.undefined(t.endCharacter)||Me.uinteger(t.endCharacter))&&(Me.undefined(t.kind)||Me.string(t.kind))}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(h||(h={})),function(e){function t(e,t){return{location:e,message:t}}function r(e){const t=e;return Me.defined(t)&&u.is(t.location)&&Me.string(t.message)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(y||(y={})),(t=g||(g={})).Error=1,t.Warning=2,t.Information=3,t.Hint=4,(r=T||(T={})).Unnecessary=1,r.Deprecated=2,function(e){function t(e){const t=e;return Me.objectLiteral(t)&&Me.string(t.href)}Ue(t,"is"),e.is=t}(v||(v={})),function(e){function t(e,t,r,n,i,a){const s={range:e,message:t};return Me.defined(r)&&(s.severity=r),Me.defined(n)&&(s.code=n),Me.defined(i)&&(s.source=i),Me.defined(a)&&(s.relatedInformation=a),s}function r(e){var t;const r=e;return Me.defined(r)&&l.is(r.range)&&(Me.string(r.message)||G.is(r.message))&&(Me.number(r.severity)||Me.undefined(r.severity))&&(Me.integer(r.code)||Me.string(r.code)||Me.undefined(r.code))&&(Me.undefined(r.codeDescription)||Me.string(null===(t=r.codeDescription)||void 0===t?void 0:t.href))&&(Me.string(r.source)||Me.undefined(r.source))&&(Me.undefined(r.relatedInformation)||Me.typedArray(r.relatedInformation,y.is))}function n(e){return Me.string(e.message)}function i(e){if(Me.string(e.message))return e.message;if(G.is(e.message))return e.message.value;throw new Error("Unknown message type "+typeof e.message)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r,Ue(n,"is3_17"),e.is3_17=n,Ue(i,"getMessageString"),e.getMessageString=i}(R||(R={})),function(e){function t(e,t,...r){const n={title:e,command:t};return Me.defined(r)&&r.length>0&&(n.arguments=r),n}function r(e){const t=e;return Me.defined(t)&&Me.string(t.title)&&(void 0===t.tooltip||Me.string(t.tooltip))&&Me.string(t.command)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}($||($={})),function(e){function t(e,t){return{range:e,newText:t}}function r(e,t){return{range:{start:e,end:e},newText:t}}function n(e){return{range:e,newText:""}}function i(e){const t=e;return Me.objectLiteral(t)&&Me.string(t.newText)&&l.is(t.range)}Ue(t,"replace"),e.replace=t,Ue(r,"insert"),e.insert=r,Ue(n,"del"),e.del=n,Ue(i,"is"),e.is=i}(C||(C={})),function(e){function t(e,t,r){const n={label:e};return void 0!==t&&(n.needsConfirmation=t),void 0!==r&&(n.description=r),n}function r(e){const t=e;return Me.objectLiteral(t)&&Me.string(t.label)&&(Me.boolean(t.needsConfirmation)||void 0===t.needsConfirmation)&&(Me.string(t.description)||void 0===t.description)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(E||(E={})),function(e){function t(e){const t=e;return Me.string(t)}Ue(t,"is"),e.is=t}(b||(b={})),function(e){function t(e,t,r){return{range:e,newText:t,annotationId:r}}function r(e,t,r){return{range:{start:e,end:e},newText:t,annotationId:r}}function n(e,t){return{range:e,newText:"",annotationId:t}}function i(e){const t=e;return C.is(t)&&(E.is(t.annotationId)||b.is(t.annotationId))}Ue(t,"replace"),e.replace=t,Ue(r,"insert"),e.insert=r,Ue(n,"del"),e.del=n,Ue(i,"is"),e.is=i}(A||(A={})),function(e){function t(e,t){return{textDocument:e,edits:t}}function r(e){const t=e;return Me.defined(t)&&M.is(t.textDocument)&&Array.isArray(t.edits)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(S||(S={})),function(e){function t(e,t,r){const n={kind:"create",uri:e};return void 0===t||void 0===t.overwrite&&void 0===t.ignoreIfExists||(n.options=t),void 0!==r&&(n.annotationId=r),n}function r(e){const t=e;return t&&"create"===t.kind&&Me.string(t.uri)&&(void 0===t.options||(void 0===t.options.overwrite||Me.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||Me.boolean(t.options.ignoreIfExists)))&&(void 0===t.annotationId||b.is(t.annotationId))}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(x||(x={})),function(e){function t(e,t,r,n){const i={kind:"rename",oldUri:e,newUri:t};return void 0===r||void 0===r.overwrite&&void 0===r.ignoreIfExists||(i.options=r),void 0!==n&&(i.annotationId=n),i}function r(e){const t=e;return t&&"rename"===t.kind&&Me.string(t.oldUri)&&Me.string(t.newUri)&&(void 0===t.options||(void 0===t.options.overwrite||Me.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||Me.boolean(t.options.ignoreIfExists)))&&(void 0===t.annotationId||b.is(t.annotationId))}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(k||(k={})),function(e){function t(e,t,r){const n={kind:"delete",uri:e};return void 0===t||void 0===t.recursive&&void 0===t.ignoreIfNotExists||(n.options=t),void 0!==r&&(n.annotationId=r),n}function r(e){const t=e;return t&&"delete"===t.kind&&Me.string(t.uri)&&(void 0===t.options||(void 0===t.options.recursive||Me.boolean(t.options.recursive))&&(void 0===t.options.ignoreIfNotExists||Me.boolean(t.options.ignoreIfNotExists)))&&(void 0===t.annotationId||b.is(t.annotationId))}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(w||(w={})),function(e){function t(e){const t=e;return t&&(void 0!==t.changes||void 0!==t.documentChanges)&&(void 0===t.documentChanges||t.documentChanges.every(e=>Me.string(e.kind)?x.is(e)||k.is(e)||w.is(e):S.is(e)))}Ue(t,"is"),e.is=t}(_||(_={})),N=class{static{Ue(this,"TextEditChangeImpl")}constructor(e,t){this.edits=e,this.changeAnnotations=t}insert(e,t,r){let n,i;if(void 0===r?n=C.insert(e,t):b.is(r)?(i=r,n=A.insert(e,t,r)):(this.assertChangeAnnotations(this.changeAnnotations),i=this.changeAnnotations.manage(r),n=A.insert(e,t,i)),this.edits.push(n),void 0!==i)return i}replace(e,t,r){let n,i;if(void 0===r?n=C.replace(e,t):b.is(r)?(i=r,n=A.replace(e,t,r)):(this.assertChangeAnnotations(this.changeAnnotations),i=this.changeAnnotations.manage(r),n=A.replace(e,t,i)),this.edits.push(n),void 0!==i)return i}delete(e,t){let r,n;if(void 0===t?r=C.del(e):b.is(t)?(n=t,r=A.del(e,t)):(this.assertChangeAnnotations(this.changeAnnotations),n=this.changeAnnotations.manage(t),r=A.del(e,n)),this.edits.push(r),void 0!==n)return n}add(e){this.edits.push(e)}all(){return this.edits}clear(){this.edits.splice(0,this.edits.length)}assertChangeAnnotations(e){if(void 0===e)throw new Error("Text edit change is not configured to manage change annotations.")}},function(e){function t(e){const t=e;return Me.objectLiteral(t)&&l.is(t.range)&&xe.isSnippet(t.snippet)&&(void 0===t.annotationId||E.is(t.annotationId)||b.is(t.annotationId))}Ue(t,"is"),e.is=t}(I||(I={})),O=class{static{Ue(this,"ChangeAnnotations")}constructor(e){this._annotations=void 0===e?Object.create(null):e,this._counter=0,this._size=0}all(){return this._annotations}get size(){return this._size}manage(e,t){let r;if(b.is(e)?r=e:(r=this.nextId(),t=e),void 0!==this._annotations[r])throw new Error(`Id ${r} is already in use.`);if(void 0===t)throw new Error(`No annotation provided for id ${r}`);return this._annotations[r]=t,this._size++,r}nextId(){return this._counter++,this._counter.toString()}},P=class{static{Ue(this,"WorkspaceChange")}constructor(e){this._textEditChanges=Object.create(null),void 0!==e?(this._workspaceEdit=e,e.documentChanges?(this._changeAnnotations=new O(e.changeAnnotations),e.changeAnnotations=this._changeAnnotations.all(),e.documentChanges.forEach(e=>{if(S.is(e)){const t=new N(e.edits,this._changeAnnotations);this._textEditChanges[e.textDocument.uri]=t}})):e.changes&&Object.keys(e.changes).forEach(t=>{const r=new N(e.changes[t]);this._textEditChanges[t]=r})):this._workspaceEdit={}}get edit(){return this.initDocumentChanges(),void 0!==this._changeAnnotations&&(0===this._changeAnnotations.size?this._workspaceEdit.changeAnnotations=void 0:this._workspaceEdit.changeAnnotations=this._changeAnnotations.all()),this._workspaceEdit}getTextEditChange(e){if(M.is(e)){if(this.initDocumentChanges(),void 0===this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.");const t={uri:e.uri,version:e.version};let r=this._textEditChanges[t.uri];if(!r){const e=[],n={textDocument:t,edits:e};this._workspaceEdit.documentChanges.push(n),r=new N(e,this._changeAnnotations),this._textEditChanges[t.uri]=r}return r}{if(this.initChanges(),void 0===this._workspaceEdit.changes)throw new Error("Workspace edit is not configured for normal text edit changes.");let t=this._textEditChanges[e];if(!t){const r=[];this._workspaceEdit.changes[e]=r,t=new N(r),this._textEditChanges[e]=t}return t}}initDocumentChanges(){void 0===this._workspaceEdit.documentChanges&&void 0===this._workspaceEdit.changes&&(this._changeAnnotations=new O,this._workspaceEdit.documentChanges=[],this._workspaceEdit.changeAnnotations=this._changeAnnotations.all())}initChanges(){void 0===this._workspaceEdit.documentChanges&&void 0===this._workspaceEdit.changes&&(this._workspaceEdit.changes=Object.create(null))}createFile(e,t,r){if(this.initDocumentChanges(),void 0===this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.");let n,i,a;if(E.is(t)||b.is(t)?n=t:r=t,void 0===n?i=x.create(e,r):(a=b.is(n)?n:this._changeAnnotations.manage(n),i=x.create(e,r,a)),this._workspaceEdit.documentChanges.push(i),void 0!==a)return a}renameFile(e,t,r,n){if(this.initDocumentChanges(),void 0===this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.");let i,a,s;if(E.is(r)||b.is(r)?i=r:n=r,void 0===i?a=k.create(e,t,n):(s=b.is(i)?i:this._changeAnnotations.manage(i),a=k.create(e,t,n,s)),this._workspaceEdit.documentChanges.push(a),void 0!==s)return s}deleteFile(e,t,r){if(this.initDocumentChanges(),void 0===this._workspaceEdit.documentChanges)throw new Error("Workspace edit is not configured for document changes.");let n,i,a;if(E.is(t)||b.is(t)?n=t:r=t,void 0===n?i=w.create(e,r):(a=b.is(n)?n:this._changeAnnotations.manage(n),i=w.create(e,r,a)),this._workspaceEdit.documentChanges.push(i),void 0!==a)return a}},function(e){function t(e){return{uri:e}}function r(e){const t=e;return Me.defined(t)&&Me.string(t.uri)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(D||(D={})),function(e){function t(e,t){return{uri:e,version:t}}function r(e){const t=e;return Me.defined(t)&&Me.string(t.uri)&&Me.integer(t.version)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(L||(L={})),function(e){function t(e,t){return{uri:e,version:t}}function r(e){const t=e;return Me.defined(t)&&Me.string(t.uri)&&(null===t.version||Me.integer(t.version))}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(M||(M={})),(je=j||(j={})).ABAP="abap",je.WindowsBat="bat",je.BibTeX="bibtex",je.Clojure="clojure",je.Coffeescript="coffeescript",je.C="c",je.CPP="cpp",je.CSharp="csharp",je.CSS="css",je.D="d",je.Delphi="pascal",je.Diff="diff",je.Dart="dart",je.Dockerfile="dockerfile",je.Elixir="elixir",je.Erlang="erlang",je.FSharp="fsharp",je.GitCommit="git-commit",je.GitRebase="git-rebase",je.Go="go",je.Groovy="groovy",je.Handlebars="handlebars",je.Haskell="haskell",je.HTML="html",je.Ini="ini",je.Java="java",je.JavaScript="javascript",je.JavaScriptReact="javascriptreact",je.JSON="json",je.LaTeX="latex",je.Less="less",je.Lua="lua",je.Makefile="makefile",je.Markdown="markdown",je.ObjectiveC="objective-c",je.ObjectiveCPP="objective-cpp",je.Pascal="pascal",je.Perl="perl",je.Perl6="perl6",je.PHP="php",je.Plaintext="plaintext",je.Powershell="powershell",je.Pug="jade",je.Python="python",je.R="r",je.Razor="razor",je.Ruby="ruby",je.Rust="rust",je.SCSS="scss",je.SASS="sass",je.Scala="scala",je.ShaderLab="shaderlab",je.ShellScript="shellscript",je.SQL="sql",je.Swift="swift",je.TypeScript="typescript",je.TypeScriptReact="typescriptreact",je.TeX="tex",je.VisualBasic="vb",je.XML="xml",je.XSL="xsl",je.YAML="yaml",function(e){function t(e,t,r,n){return{uri:e,languageId:t,version:r,text:n}}function r(e){const t=e;return Me.defined(t)&&Me.string(t.uri)&&Me.string(t.languageId)&&Me.integer(t.version)&&Me.string(t.text)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(F||(F={})),function(e){function t(t){const r=t;return r===e.PlainText||r===e.Markdown}e.PlainText="plaintext",e.Markdown="markdown",Ue(t,"is"),e.is=t}(K||(K={})),function(e){function t(e){const t=e;return Me.objectLiteral(e)&&K.is(t.kind)&&Me.string(t.value)}Ue(t,"is"),e.is=t}(G||(G={})),(Fe=z||(z={})).Text=1,Fe.Method=2,Fe.Function=3,Fe.Constructor=4,Fe.Field=5,Fe.Variable=6,Fe.Class=7,Fe.Interface=8,Fe.Module=9,Fe.Property=10,Fe.Unit=11,Fe.Value=12,Fe.Enum=13,Fe.Keyword=14,Fe.Snippet=15,Fe.Color=16,Fe.File=17,Fe.Reference=18,Fe.Folder=19,Fe.EnumMember=20,Fe.Constant=21,Fe.Struct=22,Fe.Event=23,Fe.Operator=24,Fe.TypeParameter=25,(Ke=q||(q={})).PlainText=1,Ke.Snippet=2,(U||(U={})).Deprecated=1,function(e){function t(e,t,r){return{newText:e,insert:t,replace:r}}function r(e){const t=e;return t&&Me.string(t.newText)&&l.is(t.insert)&&l.is(t.replace)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(B||(B={})),(Ge=V||(V={})).asIs=1,Ge.adjustIndentation=2,(ze=W||(W={})).Replace=1,ze.Merge=2,function(e){function t(e){const t=e;return t&&(Me.string(t.detail)||void 0===t.detail)&&(Me.string(t.description)||void 0===t.description)}Ue(t,"is"),e.is=t}(H||(H={})),function(e){function t(e){return{label:e}}Ue(t,"create"),e.create=t}(Y||(Y={})),function(e){function t(e,t){return{items:e||[],isIncomplete:!!t}}Ue(t,"create"),e.create=t}(X||(X={})),function(e){function t(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}function r(e){const t=e;return Me.string(t)||Me.objectLiteral(t)&&Me.string(t.language)&&Me.string(t.value)}Ue(t,"fromPlainText"),e.fromPlainText=t,Ue(r,"is"),e.is=r}(Q||(Q={})),function(e){function t(e){const t=e;return!!t&&Me.objectLiteral(t)&&(G.is(t.contents)||Q.is(t.contents)||Me.typedArray(t.contents,Q.is))&&(void 0===e.range||l.is(e.range))}Ue(t,"is"),e.is=t}(Z||(Z={})),function(e){function t(e,t){return t?{label:e,documentation:t}:{label:e}}Ue(t,"create"),e.create=t}(J||(J={})),function(e){function t(e,t,...r){const n={label:e};return Me.defined(t)&&(n.documentation=t),Me.defined(r)?n.parameters=r:n.parameters=[],n}Ue(t,"create"),e.create=t}(ee||(ee={})),(qe=te||(te={})).Text=1,qe.Read=2,qe.Write=3,function(e){function t(e,t){const r={range:e};return Me.number(t)&&(r.kind=t),r}Ue(t,"create"),e.create=t}(re||(re={})),(Be=ne||(ne={})).File=1,Be.Module=2,Be.Namespace=3,Be.Package=4,Be.Class=5,Be.Method=6,Be.Property=7,Be.Field=8,Be.Constructor=9,Be.Enum=10,Be.Interface=11,Be.Function=12,Be.Variable=13,Be.Constant=14,Be.String=15,Be.Number=16,Be.Boolean=17,Be.Array=18,Be.Object=19,Be.Key=20,Be.Null=21,Be.EnumMember=22,Be.Struct=23,Be.Event=24,Be.Operator=25,Be.TypeParameter=26,(ie||(ie={})).Deprecated=1,function(e){function t(e,t,r,n,i){const a={name:e,kind:t,location:{uri:n,range:r}};return i&&(a.containerName=i),a}Ue(t,"create"),e.create=t}(ae||(ae={})),function(e){function t(e,t,r,n){return void 0!==n?{name:e,kind:t,location:{uri:r,range:n}}:{name:e,kind:t,location:{uri:r}}}Ue(t,"create"),e.create=t}(se||(se={})),function(e){function t(e,t,r,n,i,a){const s={name:e,detail:t,kind:r,range:n,selectionRange:i};return void 0!==a&&(s.children=a),s}function r(e){const t=e;return t&&Me.string(t.name)&&Me.number(t.kind)&&l.is(t.range)&&l.is(t.selectionRange)&&(void 0===t.detail||Me.string(t.detail))&&(void 0===t.deprecated||Me.boolean(t.deprecated))&&(void 0===t.children||Array.isArray(t.children))&&(void 0===t.tags||Array.isArray(t.tags))}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(oe||(oe={})),(Ve=le||(le={})).Empty="",Ve.QuickFix="quickfix",Ve.Refactor="refactor",Ve.RefactorExtract="refactor.extract",Ve.RefactorInline="refactor.inline",Ve.RefactorMove="refactor.move",Ve.RefactorRewrite="refactor.rewrite",Ve.Source="source",Ve.SourceOrganizeImports="source.organizeImports",Ve.SourceFixAll="source.fixAll",Ve.Notebook="notebook",(We=ue||(ue={})).Invoked=1,We.Automatic=2,function(e){function t(e,t,r){const n={diagnostics:e};return null!=t&&(n.only=t),null!=r&&(n.triggerKind=r),n}function r(e){const t=e;return Me.defined(t)&&Me.typedArray(t.diagnostics,R.is)&&(void 0===t.only||Me.typedArray(t.only,Me.string))&&(void 0===t.triggerKind||t.triggerKind===ue.Invoked||t.triggerKind===ue.Automatic)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(ce||(ce={})),function(e){function t(t){return Me.defined(t)&&t===e.LLMGenerated}e.LLMGenerated=1,Ue(t,"is"),e.is=t}(pe||(pe={})),function(e){function t(e,t,r){const n={title:e};let i=!0;return"string"==typeof t?(i=!1,n.kind=t):$.is(t)?n.command=t:n.edit=t,i&&void 0!==r&&(n.kind=r),n}function r(e){const t=e;return t&&Me.string(t.title)&&(void 0===t.diagnostics||Me.typedArray(t.diagnostics,R.is))&&(void 0===t.kind||Me.string(t.kind))&&(void 0!==t.edit||void 0!==t.command)&&(void 0===t.command||$.is(t.command))&&(void 0===t.isPreferred||Me.boolean(t.isPreferred))&&(void 0===t.edit||_.is(t.edit))&&(void 0===t.tags||Me.typedArray(t.tags,pe.is))}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(de||(de={})),function(e){function t(e,t){const r={range:e};return Me.defined(t)&&(r.data=t),r}function r(e){const t=e;return Me.defined(t)&&l.is(t.range)&&(Me.undefined(t.command)||$.is(t.command))}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(fe||(fe={})),function(e){function t(e,t){return{tabSize:e,insertSpaces:t}}function r(e){const t=e;return Me.defined(t)&&Me.uinteger(t.tabSize)&&Me.boolean(t.insertSpaces)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(me||(me={})),function(e){function t(e,t,r){return{range:e,target:t,data:r}}function r(e){const t=e;return Me.defined(t)&&l.is(t.range)&&(Me.undefined(t.target)||Me.string(t.target))}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(he||(he={})),function(e){function t(e,t){return{range:e,parent:t}}function r(t){const r=t;return Me.objectLiteral(r)&&l.is(r.range)&&(void 0===r.parent||e.is(r.parent))}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(ye||(ye={})),(He=ge||(ge={})).namespace="namespace",He.type="type",He.class="class",He.enum="enum",He.interface="interface",He.struct="struct",He.typeParameter="typeParameter",He.parameter="parameter",He.variable="variable",He.property="property",He.enumMember="enumMember",He.event="event",He.function="function",He.method="method",He.macro="macro",He.keyword="keyword",He.modifier="modifier",He.comment="comment",He.string="string",He.number="number",He.regexp="regexp",He.operator="operator",He.decorator="decorator",He.label="label",(Ye=Te||(Te={})).declaration="declaration",Ye.definition="definition",Ye.readonly="readonly",Ye.static="static",Ye.deprecated="deprecated",Ye.abstract="abstract",Ye.async="async",Ye.modification="modification",Ye.documentation="documentation",Ye.defaultLibrary="defaultLibrary",function(e){function t(e){const t=e;return Me.objectLiteral(t)&&(void 0===t.resultId||"string"==typeof t.resultId)&&Array.isArray(t.data)&&(0===t.data.length||"number"==typeof t.data[0])}Ue(t,"is"),e.is=t}(ve||(ve={})),function(e){function t(e,t){return{range:e,text:t}}function r(e){const t=e;return null!=t&&l.is(t.range)&&Me.string(t.text)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(Re||(Re={})),function(e){function t(e,t,r){return{range:e,variableName:t,caseSensitiveLookup:r}}function r(e){const t=e;return null!=t&&l.is(t.range)&&Me.boolean(t.caseSensitiveLookup)&&(Me.string(t.variableName)||void 0===t.variableName)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}($e||($e={})),function(e){function t(e,t){return{range:e,expression:t}}function r(e){const t=e;return null!=t&&l.is(t.range)&&(Me.string(t.expression)||void 0===t.expression)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(Ce||(Ce={})),function(e){function t(e,t){return{frameId:e,stoppedLocation:t}}function r(e){const t=e;return Me.defined(t)&&l.is(e.stoppedLocation)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(Ee||(Ee={})),function(e){function t(e){return 1===e||2===e}e.Type=1,e.Parameter=2,Ue(t,"is"),e.is=t}(be||(be={})),function(e){function t(e){return{value:e}}function r(e){const t=e;return Me.objectLiteral(t)&&(void 0===t.tooltip||Me.string(t.tooltip)||G.is(t.tooltip))&&(void 0===t.location||u.is(t.location))&&(void 0===t.command||$.is(t.command))}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(Ae||(Ae={})),function(e){function t(e,t,r){const n={position:e,label:t};return void 0!==r&&(n.kind=r),n}function r(e){const t=e;return Me.objectLiteral(t)&&o.is(t.position)&&(Me.string(t.label)||Me.typedArray(t.label,Ae.is))&&(void 0===t.kind||be.is(t.kind))&&void 0===t.textEdits||Me.typedArray(t.textEdits,C.is)&&(void 0===t.tooltip||Me.string(t.tooltip)||G.is(t.tooltip))&&(void 0===t.paddingLeft||Me.boolean(t.paddingLeft))&&(void 0===t.paddingRight||Me.boolean(t.paddingRight))}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(Se||(Se={})),function(e){function t(e){return{kind:"snippet",value:e}}function r(e){const t=e;return Me.objectLiteral(t)&&"snippet"===t.kind&&Me.string(t.value)}Ue(t,"createSnippet"),e.createSnippet=t,Ue(r,"isSnippet"),e.isSnippet=r}(xe||(xe={})),function(e){function t(e,t,r,n){return{insertText:e,filterText:t,range:r,command:n}}Ue(t,"create"),e.create=t}(ke||(ke={})),function(e){function t(e){return{items:e}}Ue(t,"create"),e.create=t}(we||(we={})),(Xe=_e||(_e={})).Invoked=1,Xe.Automatic=2,function(e){function t(e,t){return{range:e,text:t}}Ue(t,"create"),e.create=t}(Ne||(Ne={})),function(e){function t(e,t){return{triggerKind:e,selectedCompletionInfo:t}}Ue(t,"create"),e.create=t}(Ie||(Ie={})),function(e){function t(e){const t=e;return Me.objectLiteral(t)&&i.is(t.uri)&&Me.string(t.name)}Ue(t,"is"),e.is=t}(Oe||(Oe={})),Pe=["\n","\r\n","\r"],function(e){function t(e,t,r,n){return new Le(e,t,r,n)}function r(e){const t=e;return!!(Me.defined(t)&&Me.string(t.uri)&&(Me.undefined(t.languageId)||Me.string(t.languageId))&&Me.uinteger(t.lineCount)&&Me.func(t.getText)&&Me.func(t.positionAt)&&Me.func(t.offsetAt))}function n(e,t){let r=e.getText();const n=i(t,(e,t)=>{const r=e.range.start.line-t.range.start.line;return 0===r?e.range.start.character-t.range.start.character:r});let a=r.length;for(let t=n.length-1;t>=0;t--){const i=n[t],s=e.offsetAt(i.range.start),o=e.offsetAt(i.range.end);if(!(o<=a))throw new Error("Overlapping edit");r=r.substring(0,s)+i.newText+r.substring(o,r.length),a=s}return r}function i(e,t){if(e.length<=1)return e;const r=e.length/2|0,n=e.slice(0,r),a=e.slice(r);i(n,t),i(a,t);let s=0,o=0,l=0;for(;s<n.length&&o<a.length;){const r=t(n[s],a[o]);e[l++]=r<=0?n[s++]:a[o++]}for(;s<n.length;)e[l++]=n[s++];for(;o<a.length;)e[l++]=a[o++];return e}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r,Ue(n,"applyEdits"),e.applyEdits=n,Ue(i,"mergeSort")}(De||(De={})),Le=class{static{Ue(this,"FullTextDocument")}constructor(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){const t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content}update(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0}getLineOffsets(){if(void 0===this._lineOffsets){const e=[],t=this._content;let r=!0;for(let n=0;n<t.length;n++){r&&(e.push(n),r=!1);const i=t.charAt(n);r="\r"===i||"\n"===i,"\r"===i&&n+1<t.length&&"\n"===t.charAt(n+1)&&n++}r&&t.length>0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);const t=this.getLineOffsets();let r=0,n=t.length;if(0===n)return o.create(0,e);for(;r<n;){const i=Math.floor((r+n)/2);t[i]>e?n=i:r=i+1}const i=r-1;return o.create(i,e-t[i])}offsetAt(e){const t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;const r=t[e.line],n=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(r+e.character,n),r)}get lineCount(){return this.getLineOffsets().length}},function(e){const t=Object.prototype.toString;function r(e){return void 0!==e}function n(e){return void 0===e}function i(e){return!0===e||!1===e}function a(e){return"[object String]"===t.call(e)}function s(e){return"[object Number]"===t.call(e)}function o(e,r,n){return"[object Number]"===t.call(e)&&r<=e&&e<=n}function l(e){return"[object Number]"===t.call(e)&&-2147483648<=e&&e<=2147483647}function u(e){return"[object Number]"===t.call(e)&&0<=e&&e<=2147483647}function c(e){return"[object Function]"===t.call(e)}function p(e){return null!==e&&"object"==typeof e}function d(e,t){return Array.isArray(e)&&e.every(t)}Ue(r,"defined"),e.defined=r,Ue(n,"undefined"),e.undefined=n,Ue(i,"boolean"),e.boolean=i,Ue(a,"string"),e.string=a,Ue(s,"number"),e.number=s,Ue(o,"numberRange"),e.numberRange=o,Ue(l,"integer"),e.integer=l,Ue(u,"uinteger"),e.uinteger=u,Ue(c,"func"),e.func=c,Ue(p,"objectLiteral"),e.objectLiteral=p,Ue(d,"typedArray"),e.typedArray=d}(Me||(Me={}))}},function(){return ct&&(pt=(0,ct[Ge(ct)[0]])(ct=0)),pt}),ft=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/messages.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.CM=e.ProtocolNotificationType=e.ProtocolNotificationType0=e.ProtocolRequestType=e.ProtocolRequestType0=e.RegistrationType=e.MessageDirection=void 0;var t,r,n=lt();(r=t||(e.MessageDirection=t={})).clientToServer="clientToServer",r.serverToClient="serverToClient",r.both="both";var i=class{static{Ue(this,"RegistrationType")}____;method;constructor(e){this.method=e}};e.RegistrationType=i;var a=class extends n.RequestType0{static{Ue(this,"ProtocolRequestType0")}__;___;____;_pr;constructor(e){super(e)}};e.ProtocolRequestType0=a;var s=class extends n.RequestType{static{Ue(this,"ProtocolRequestType")}__;___;____;_pr;constructor(e){super(e,n.ParameterStructures.byName)}};e.ProtocolRequestType=s;var o=class extends n.NotificationType0{static{Ue(this,"ProtocolNotificationType0")}___;____;constructor(e){super(e)}};e.ProtocolNotificationType0=o;var l,u=class extends n.NotificationType{static{Ue(this,"ProtocolNotificationType")}___;____;constructor(e){super(e,n.ParameterStructures.byName)}};e.ProtocolNotificationType=u,function(e){function t(e,t){return{client:e,server:t}}Ue(t,"create"),e.create=t}(l||(e.CM=l={}))}}),mt=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js"(e){function t(e){return!0===e||!1===e}function r(e){return"string"==typeof e||e instanceof String}function n(e){return"number"==typeof e||e instanceof Number}function i(e){return e instanceof Error}function a(e){return"function"==typeof e}function s(e){return Array.isArray(e)}function o(e){return s(e)&&e.every(e=>r(e))}function l(e,t){return Array.isArray(e)&&e.every(t)}function u(e){return null!==e&&"object"==typeof e}Object.defineProperty(e,"__esModule",{value:!0}),e.boolean=t,e.string=r,e.number=n,e.error=i,e.func=a,e.array=s,e.stringArray=o,e.typedArray=l,e.objectLiteral=u,Ue(t,"boolean"),Ue(r,"string"),Ue(n,"number"),Ue(i,"error"),Ue(a,"func"),Ue(s,"array"),Ue(o,"stringArray"),Ue(l,"typedArray"),Ue(u,"objectLiteral")}}),ht=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ImplementationRequest=void 0;var t,r,n=ft();(r=t||(e.ImplementationRequest=t={})).method="textDocument/implementation",r.messageDirection=n.MessageDirection.clientToServer,r.type=new n.ProtocolRequestType(r.method),r.capabilities=n.CM.create("textDocument.implementation","implementationProvider")}}),yt=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.TypeDefinitionRequest=void 0;var t,r,n=ft();(r=t||(e.TypeDefinitionRequest=t={})).method="textDocument/typeDefinition",r.messageDirection=n.MessageDirection.clientToServer,r.type=new n.ProtocolRequestType(r.method),r.capabilities=n.CM.create("textDocument.typeDefinition","typeDefinitionProvider")}}),gt=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.DidChangeWorkspaceFoldersNotification=e.WorkspaceFoldersRequest=void 0;var t,r,n,i,a=ft();(r=t||(e.WorkspaceFoldersRequest=t={})).method="workspace/workspaceFolders",r.messageDirection=a.MessageDirection.serverToClient,r.type=new a.ProtocolRequestType0(r.method),r.capabilities=a.CM.create("workspace.workspaceFolders","workspace.workspaceFolders"),(i=n||(e.DidChangeWorkspaceFoldersNotification=n={})).method="workspace/didChangeWorkspaceFolders",i.messageDirection=a.MessageDirection.clientToServer,i.type=new a.ProtocolNotificationType(i.method),i.capabilities=a.CM.create(void 0,"workspace.workspaceFolders.changeNotifications")}}),Tt=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ConfigurationRequest=void 0;var t,r,n=ft();(r=t||(e.ConfigurationRequest=t={})).method="workspace/configuration",r.messageDirection=n.MessageDirection.serverToClient,r.type=new n.ProtocolRequestType(r.method),r.capabilities=n.CM.create("workspace.configuration",void 0)}}),vt=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ColorPresentationRequest=e.DocumentColorRequest=void 0;var t,r,n,i,a=ft();(r=t||(e.DocumentColorRequest=t={})).method="textDocument/documentColor",r.messageDirection=a.MessageDirection.clientToServer,r.type=new a.ProtocolRequestType(r.method),r.capabilities=a.CM.create("textDocument.colorProvider","colorProvider"),(i=n||(e.ColorPresentationRequest=n={})).method="textDocument/colorPresentation",i.messageDirection=a.MessageDirection.clientToServer,i.type=new a.ProtocolRequestType(i.method),i.capabilities=a.CM.create("textDocument.colorProvider","colorProvider")}}),Rt=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.FoldingRangeRefreshRequest=e.FoldingRangeRequest=void 0;var t,r,n,i,a=ft();(r=t||(e.FoldingRangeRequest=t={})).method="textDocument/foldingRange",r.messageDirection=a.MessageDirection.clientToServer,r.type=new a.ProtocolRequestType(r.method),r.capabilities=a.CM.create("textDocument.foldingRange","foldingRangeProvider"),(i=n||(e.FoldingRangeRefreshRequest=n={})).method="workspace/foldingRange/refresh",i.messageDirection=a.MessageDirection.serverToClient,i.type=new a.ProtocolRequestType0(i.method),i.capabilities=a.CM.create("workspace.foldingRange.refreshSupport",void 0)}}),$t=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.DeclarationRequest=void 0;var t,r,n=ft();(r=t||(e.DeclarationRequest=t={})).method="textDocument/declaration",r.messageDirection=n.MessageDirection.clientToServer,r.type=new n.ProtocolRequestType(r.method),r.capabilities=n.CM.create("textDocument.declaration","declarationProvider")}}),Ct=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.SelectionRangeRequest=void 0;var t,r,n=ft();(r=t||(e.SelectionRangeRequest=t={})).method="textDocument/selectionRange",r.messageDirection=n.MessageDirection.clientToServer,r.type=new n.ProtocolRequestType(r.method),r.capabilities=n.CM.create("textDocument.selectionRange","selectionRangeProvider")}}),Et=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.WorkDoneProgressCancelNotification=e.WorkDoneProgressCreateRequest=e.WorkDoneProgress=void 0;var t,r,n,i,a,s=lt(),o=ft();!function(e){function t(t){return t===e.type}e.type=new s.ProgressType,Ue(t,"is"),e.is=t}(t||(e.WorkDoneProgress=t={})),(n=r||(e.WorkDoneProgressCreateRequest=r={})).method="window/workDoneProgress/create",n.messageDirection=o.MessageDirection.serverToClient,n.type=new o.ProtocolRequestType(n.method),n.capabilities=o.CM.create("window.workDoneProgress",void 0),(a=i||(e.WorkDoneProgressCancelNotification=i={})).method="window/workDoneProgress/cancel",a.messageDirection=o.MessageDirection.clientToServer,a.type=new o.ProtocolNotificationType(a.method)}}),bt=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.CallHierarchyOutgoingCallsRequest=e.CallHierarchyIncomingCallsRequest=e.CallHierarchyPrepareRequest=void 0;var t,r,n,i,a,s,o=ft();(r=t||(e.CallHierarchyPrepareRequest=t={})).method="textDocument/prepareCallHierarchy",r.messageDirection=o.MessageDirection.clientToServer,r.type=new o.ProtocolRequestType(r.method),r.capabilities=o.CM.create("textDocument.callHierarchy","callHierarchyProvider"),(i=n||(e.CallHierarchyIncomingCallsRequest=n={})).method="callHierarchy/incomingCalls",i.messageDirection=o.MessageDirection.clientToServer,i.type=new o.ProtocolRequestType(i.method),i.capabilities=o.CM.create("textDocument.callHierarchy","callHierarchyProvider"),(s=a||(e.CallHierarchyOutgoingCallsRequest=a={})).method="callHierarchy/outgoingCalls",s.messageDirection=o.MessageDirection.clientToServer,s.type=new o.ProtocolRequestType(s.method),s.capabilities=o.CM.create("textDocument.callHierarchy","callHierarchyProvider")}}),At=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.SemanticTokensRefreshRequest=e.SemanticTokensRangeRequest=e.SemanticTokensDeltaRequest=e.SemanticTokensRequest=e.SemanticTokensRegistrationType=e.TokenFormat=void 0;var t,r,n,i,a,s,o,l,u,c,p,d=ft();(t||(e.TokenFormat=t={})).Relative="relative",(n=r||(e.SemanticTokensRegistrationType=r={})).method="textDocument/semanticTokens",n.type=new d.RegistrationType(n.method),(a=i||(e.SemanticTokensRequest=i={})).method="textDocument/semanticTokens/full",a.messageDirection=d.MessageDirection.clientToServer,a.type=new d.ProtocolRequestType(a.method),a.registrationMethod=r.method,a.capabilities=d.CM.create("textDocument.semanticTokens","semanticTokensProvider"),(o=s||(e.SemanticTokensDeltaRequest=s={})).method="textDocument/semanticTokens/full/delta",o.messageDirection=d.MessageDirection.clientToServer,o.type=new d.ProtocolRequestType(o.method),o.registrationMethod=r.method,o.capabilities=d.CM.create("textDocument.semanticTokens.requests.full.delta","semanticTokensProvider.full.delta"),(u=l||(e.SemanticTokensRangeRequest=l={})).method="textDocument/semanticTokens/range",u.messageDirection=d.MessageDirection.clientToServer,u.type=new d.ProtocolRequestType(u.method),u.registrationMethod=r.method,u.capabilities=d.CM.create("textDocument.semanticTokens.requests.range","semanticTokensProvider.range"),(p=c||(e.SemanticTokensRefreshRequest=c={})).method="workspace/semanticTokens/refresh",p.messageDirection=d.MessageDirection.serverToClient,p.type=new d.ProtocolRequestType0(p.method),p.capabilities=d.CM.create("workspace.semanticTokens.refreshSupport",void 0)}}),St=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ShowDocumentRequest=void 0;var t,r,n=ft();(r=t||(e.ShowDocumentRequest=t={})).method="window/showDocument",r.messageDirection=n.MessageDirection.serverToClient,r.type=new n.ProtocolRequestType(r.method),r.capabilities=n.CM.create("window.showDocument.support",void 0)}}),xt=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.LinkedEditingRangeRequest=void 0;var t,r,n=ft();(r=t||(e.LinkedEditingRangeRequest=t={})).method="textDocument/linkedEditingRange",r.messageDirection=n.MessageDirection.clientToServer,r.type=new n.ProtocolRequestType(r.method),r.capabilities=n.CM.create("textDocument.linkedEditingRange","linkedEditingRangeProvider")}}),kt=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.WillDeleteFilesRequest=e.DidDeleteFilesNotification=e.DidRenameFilesNotification=e.WillRenameFilesRequest=e.DidCreateFilesNotification=e.WillCreateFilesRequest=e.FileOperationPatternKind=void 0;var t,r,n,i,a,s,o,l,u,c,p,d,f,m,h=ft();(r=t||(e.FileOperationPatternKind=t={})).file="file",r.folder="folder",(i=n||(e.WillCreateFilesRequest=n={})).method="workspace/willCreateFiles",i.messageDirection=h.MessageDirection.clientToServer,i.type=new h.ProtocolRequestType(i.method),i.capabilities=h.CM.create("workspace.fileOperations.willCreate","workspace.fileOperations.willCreate"),(s=a||(e.DidCreateFilesNotification=a={})).method="workspace/didCreateFiles",s.messageDirection=h.MessageDirection.clientToServer,s.type=new h.ProtocolNotificationType(s.method),s.capabilities=h.CM.create("workspace.fileOperations.didCreate","workspace.fileOperations.didCreate"),(l=o||(e.WillRenameFilesRequest=o={})).method="workspace/willRenameFiles",l.messageDirection=h.MessageDirection.clientToServer,l.type=new h.ProtocolRequestType(l.method),l.capabilities=h.CM.create("workspace.fileOperations.willRename","workspace.fileOperations.willRename"),(c=u||(e.DidRenameFilesNotification=u={})).method="workspace/didRenameFiles",c.messageDirection=h.MessageDirection.clientToServer,c.type=new h.ProtocolNotificationType(c.method),c.capabilities=h.CM.create("workspace.fileOperations.didRename","workspace.fileOperations.didRename"),(d=p||(e.DidDeleteFilesNotification=p={})).method="workspace/didDeleteFiles",d.messageDirection=h.MessageDirection.clientToServer,d.type=new h.ProtocolNotificationType(d.method),d.capabilities=h.CM.create("workspace.fileOperations.didDelete","workspace.fileOperations.didDelete"),(m=f||(e.WillDeleteFilesRequest=f={})).method="workspace/willDeleteFiles",m.messageDirection=h.MessageDirection.clientToServer,m.type=new h.ProtocolRequestType(m.method),m.capabilities=h.CM.create("workspace.fileOperations.willDelete","workspace.fileOperations.willDelete")}}),wt=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.MonikerRequest=e.MonikerKind=e.UniquenessLevel=void 0;var t,r,n,i,a,s,o=ft();(r=t||(e.UniquenessLevel=t={})).document="document",r.project="project",r.group="group",r.scheme="scheme",r.global="global",(i=n||(e.MonikerKind=n={})).$import="import",i.$export="export",i.local="local",(s=a||(e.MonikerRequest=a={})).method="textDocument/moniker",s.messageDirection=o.MessageDirection.clientToServer,s.type=new o.ProtocolRequestType(s.method),s.capabilities=o.CM.create("textDocument.moniker","monikerProvider")}}),_t=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHierarchySubtypesRequest=e.TypeHierarchySupertypesRequest=e.TypeHierarchyPrepareRequest=void 0;var t,r,n,i,a,s,o=ft();(r=t||(e.TypeHierarchyPrepareRequest=t={})).method="textDocument/prepareTypeHierarchy",r.messageDirection=o.MessageDirection.clientToServer,r.type=new o.ProtocolRequestType(r.method),r.capabilities=o.CM.create("textDocument.typeHierarchy","typeHierarchyProvider"),(i=n||(e.TypeHierarchySupertypesRequest=n={})).method="typeHierarchy/supertypes",i.messageDirection=o.MessageDirection.clientToServer,i.type=new o.ProtocolRequestType(i.method),(s=a||(e.TypeHierarchySubtypesRequest=a={})).method="typeHierarchy/subtypes",s.messageDirection=o.MessageDirection.clientToServer,s.type=new o.ProtocolRequestType(s.method)}}),Nt=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.InlineValueRefreshRequest=e.InlineValueRequest=void 0;var t,r,n,i,a=ft();(r=t||(e.InlineValueRequest=t={})).method="textDocument/inlineValue",r.messageDirection=a.MessageDirection.clientToServer,r.type=new a.ProtocolRequestType(r.method),r.capabilities=a.CM.create("textDocument.inlineValue","inlineValueProvider"),(i=n||(e.InlineValueRefreshRequest=n={})).method="workspace/inlineValue/refresh",i.messageDirection=a.MessageDirection.serverToClient,i.type=new a.ProtocolRequestType0(i.method),i.capabilities=a.CM.create("workspace.inlineValue.refreshSupport",void 0)}}),It=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.InlayHintRefreshRequest=e.InlayHintResolveRequest=e.InlayHintRequest=void 0;var t,r,n,i,a,s,o=ft();(r=t||(e.InlayHintRequest=t={})).method="textDocument/inlayHint",r.messageDirection=o.MessageDirection.clientToServer,r.type=new o.ProtocolRequestType(r.method),r.capabilities=o.CM.create("textDocument.inlayHint","inlayHintProvider"),(i=n||(e.InlayHintResolveRequest=n={})).method="inlayHint/resolve",i.messageDirection=o.MessageDirection.clientToServer,i.type=new o.ProtocolRequestType(i.method),i.capabilities=o.CM.create("textDocument.inlayHint.resolveSupport","inlayHintProvider.resolveProvider"),(s=a||(e.InlayHintRefreshRequest=a={})).method="workspace/inlayHint/refresh",s.messageDirection=o.MessageDirection.serverToClient,s.type=new o.ProtocolRequestType0(s.method),s.capabilities=o.CM.create("workspace.inlayHint.refreshSupport",void 0)}}),Ot=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js"(e){var t=e&&e.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:Ue(function(){return t[r]},"get")}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),r=e&&e.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=e&&e.__importStar||function(){var e=Ue(function(t){return(e=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t})(t)},"ownKeys");return function(n){if(n&&n.__esModule)return n;var i={};if(null!=n)for(var a=e(n),s=0;s<a.length;s++)"default"!==a[s]&&t(i,n,a[s]);return r(i,n),i}}();Object.defineProperty(e,"__esModule",{value:!0}),e.DiagnosticRefreshRequest=e.WorkspaceDiagnosticRequest=e.DocumentDiagnosticRequest=e.DocumentDiagnosticReportKind=e.DiagnosticServerCancellationData=void 0;var i,a,s,o,l,u,c,p,d,f=lt(),m=n(mt()),h=ft();!function(e){function t(e){const t=e;return t&&m.boolean(t.retriggerRequest)}Ue(t,"is"),e.is=t}(i||(e.DiagnosticServerCancellationData=i={})),(s=a||(e.DocumentDiagnosticReportKind=a={})).Full="full",s.Unchanged="unchanged",(l=o||(e.DocumentDiagnosticRequest=o={})).method="textDocument/diagnostic",l.messageDirection=h.MessageDirection.clientToServer,l.type=new h.ProtocolRequestType(l.method),l.partialResult=new f.ProgressType,l.capabilities=h.CM.create("textDocument.diagnostic","diagnosticProvider"),(c=u||(e.WorkspaceDiagnosticRequest=u={})).method="workspace/diagnostic",c.messageDirection=h.MessageDirection.clientToServer,c.type=new h.ProtocolRequestType(c.method),c.partialResult=new f.ProgressType,c.capabilities=h.CM.create("workspace.diagnostics","diagnosticProvider.workspaceDiagnostics"),(d=p||(e.DiagnosticRefreshRequest=p={})).method="workspace/diagnostic/refresh",d.messageDirection=h.MessageDirection.serverToClient,d.type=new h.ProtocolRequestType0(d.method),d.capabilities=h.CM.create("workspace.diagnostics.refreshSupport",void 0)}}),Pt=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js"(e){var t=e&&e.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:Ue(function(){return t[r]},"get")}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),r=e&&e.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=e&&e.__importStar||function(){var e=Ue(function(t){return(e=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t})(t)},"ownKeys");return function(n){if(n&&n.__esModule)return n;var i={};if(null!=n)for(var a=e(n),s=0;s<a.length;s++)"default"!==a[s]&&t(i,n,a[s]);return r(i,n),i}}();Object.defineProperty(e,"__esModule",{value:!0}),e.DidCloseNotebookDocumentNotification=e.DidSaveNotebookDocumentNotification=e.DidChangeNotebookDocumentNotification=e.NotebookCellArrayChange=e.DidOpenNotebookDocumentNotification=e.NotebookDocumentSyncRegistrationType=e.NotebookDocument=e.NotebookCell=e.ExecutionSummary=e.NotebookCellKind=void 0;var i,a,s,o,l,u,c,p,d,f,m,h,y,g,T,v=(dt(),He(ut)),R=n(mt()),$=ft();!function(e){function t(e){return 1===e||2===e}e.Markup=1,e.Code=2,Ue(t,"is"),e.is=t}(i||(e.NotebookCellKind=i={})),function(e){function t(e,t){const r={executionOrder:e};return!0!==t&&!1!==t||(r.success=t),r}function r(e){const t=e;return R.objectLiteral(t)&&v.uinteger.is(t.executionOrder)&&(void 0===t.success||R.boolean(t.success))}function n(e,t){return e===t||null!=e&&null!=t&&(e.executionOrder===t.executionOrder&&e.success===t.success)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r,Ue(n,"equals"),e.equals=n}(a||(e.ExecutionSummary=a={})),function(e){function t(e,t){return{kind:e,document:t}}function r(e){const t=e;return R.objectLiteral(t)&&i.is(t.kind)&&v.DocumentUri.is(t.document)&&(void 0===t.metadata||R.objectLiteral(t.metadata))}function n(e,t){const r=new Set;return e.document!==t.document&&r.add("document"),e.kind!==t.kind&&r.add("kind"),e.executionSummary!==t.executionSummary&&r.add("executionSummary"),void 0===e.metadata&&void 0===t.metadata||s(e.metadata,t.metadata)||r.add("metadata"),void 0===e.executionSummary&&void 0===t.executionSummary||a.equals(e.executionSummary,t.executionSummary)||r.add("executionSummary"),r}function s(e,t){if(e===t)return!0;if(null==e||null==t)return!1;if(typeof e!=typeof t)return!1;if("object"!=typeof e)return!1;const r=Array.isArray(e),n=Array.isArray(t);if(r!==n)return!1;if(r&&n){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(!s(e[r],t[r]))return!1}if(R.objectLiteral(e)&&R.objectLiteral(t)){const r=Object.keys(e),n=Object.keys(t);if(r.length!==n.length)return!1;if(r.sort(),n.sort(),!s(r,n))return!1;for(let n=0;n<r.length;n++){const i=r[n];if(!s(e[i],t[i]))return!1}}return!0}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r,Ue(n,"diff"),e.diff=n,Ue(s,"equalsMetadata")}(s||(e.NotebookCell=s={})),function(e){function t(e,t,r,n){return{uri:e,notebookType:t,version:r,cells:n}}function r(e){const t=e;return R.objectLiteral(t)&&R.string(t.uri)&&v.integer.is(t.version)&&R.typedArray(t.cells,s.is)}Ue(t,"create"),e.create=t,Ue(r,"is"),e.is=r}(o||(e.NotebookDocument=o={})),(u=l||(e.NotebookDocumentSyncRegistrationType=l={})).method="notebookDocument/sync",u.messageDirection=$.MessageDirection.clientToServer,u.type=new $.RegistrationType(u.method),(p=c||(e.DidOpenNotebookDocumentNotification=c={})).method="notebookDocument/didOpen",p.messageDirection=$.MessageDirection.clientToServer,p.type=new $.ProtocolNotificationType(p.method),p.registrationMethod=l.method,function(e){function t(e){const t=e;return R.objectLiteral(t)&&v.uinteger.is(t.start)&&v.uinteger.is(t.deleteCount)&&(void 0===t.cells||R.typedArray(t.cells,s.is))}function r(e,t,r){const n={start:e,deleteCount:t};return void 0!==r&&(n.cells=r),n}Ue(t,"is"),e.is=t,Ue(r,"create"),e.create=r}(d||(e.NotebookCellArrayChange=d={})),(m=f||(e.DidChangeNotebookDocumentNotification=f={})).method="notebookDocument/didChange",m.messageDirection=$.MessageDirection.clientToServer,m.type=new $.ProtocolNotificationType(m.method),m.registrationMethod=l.method,(y=h||(e.DidSaveNotebookDocumentNotification=h={})).method="notebookDocument/didSave",y.messageDirection=$.MessageDirection.clientToServer,y.type=new $.ProtocolNotificationType(y.method),y.registrationMethod=l.method,(T=g||(e.DidCloseNotebookDocumentNotification=g={})).method="notebookDocument/didClose",T.messageDirection=$.MessageDirection.clientToServer,T.type=new $.ProtocolNotificationType(T.method),T.registrationMethod=l.method}}),Dt=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.InlineCompletionRequest=void 0;var t,r,n=ft();(r=t||(e.InlineCompletionRequest=t={})).method="textDocument/inlineCompletion",r.messageDirection=n.MessageDirection.clientToServer,r.type=new n.ProtocolRequestType(r.method),r.capabilities=n.CM.create("textDocument.inlineCompletion","inlineCompletionProvider")}}),Lt=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.textDocumentContent.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.TextDocumentContentRefreshRequest=e.TextDocumentContentRequest=void 0;var t,r,n,i,a=ft();(r=t||(e.TextDocumentContentRequest=t={})).method="workspace/textDocumentContent",r.messageDirection=a.MessageDirection.clientToServer,r.type=new a.ProtocolRequestType(r.method),r.capabilities=a.CM.create("workspace.textDocumentContent","workspace.textDocumentContent"),(i=n||(e.TextDocumentContentRefreshRequest=n={})).method="workspace/textDocumentContent/refresh",i.messageDirection=a.MessageDirection.serverToClient,i.type=new a.ProtocolRequestType(i.method)}}),Mt=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/protocol.js"(e){var t=e&&e.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:Ue(function(){return t[r]},"get")}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),r=e&&e.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=e&&e.__importStar||function(){var e=Ue(function(t){return(e=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t})(t)},"ownKeys");return function(n){if(n&&n.__esModule)return n;var i={};if(null!=n)for(var a=e(n),s=0;s<a.length;s++)"default"!==a[s]&&t(i,n,a[s]);return r(i,n),i}}();Object.defineProperty(e,"__esModule",{value:!0}),e.CodeActionRequest=e.DocumentSymbolRequest=e.DocumentHighlightRequest=e.ReferencesRequest=e.DefinitionRequest=e.SignatureHelpRequest=e.SignatureHelpTriggerKind=e.HoverRequest=e.CompletionResolveRequest=e.CompletionRequest=e.CompletionTriggerKind=e.PublishDiagnosticsNotification=e.WatchKind=e.GlobPattern=e.RelativePattern=e.FileChangeType=e.DidChangeWatchedFilesNotification=e.WillSaveTextDocumentWaitUntilRequest=e.WillSaveTextDocumentNotification=e.TextDocumentSaveReason=e.DidSaveTextDocumentNotification=e.DidCloseTextDocumentNotification=e.DidChangeTextDocumentNotification=e.TextDocumentContentChangeEvent=e.DidOpenTextDocumentNotification=e.TextDocumentSyncKind=e.TelemetryEventNotification=e.LogMessageNotification=e.ShowMessageRequest=e.ShowMessageNotification=e.MessageType=e.DidChangeConfigurationNotification=e.ExitNotification=e.ShutdownRequest=e.InitializedNotification=e.InitializeErrorCodes=e.InitializeRequest=e.WorkDoneProgressOptions=e.TextDocumentRegistrationOptions=e.StaticRegistrationOptions=e.PositionEncodingKind=e.RegularExpressionEngineKind=e.FailureHandlingKind=e.ResourceOperationKind=e.UnregistrationRequest=e.RegistrationRequest=e.DocumentSelector=e.NotebookCellTextDocumentFilter=e.NotebookDocumentFilter=e.TextDocumentFilter=void 0,e.UniquenessLevel=e.WillDeleteFilesRequest=e.DidDeleteFilesNotification=e.WillRenameFilesRequest=e.DidRenameFilesNotification=e.WillCreateFilesRequest=e.DidCreateFilesNotification=e.FileOperationPatternKind=e.LinkedEditingRangeRequest=e.ShowDocumentRequest=e.SemanticTokensRegistrationType=e.SemanticTokensRefreshRequest=e.SemanticTokensRangeRequest=e.SemanticTokensDeltaRequest=e.SemanticTokensRequest=e.TokenFormat=e.CallHierarchyPrepareRequest=e.CallHierarchyOutgoingCallsRequest=e.CallHierarchyIncomingCallsRequest=e.WorkDoneProgressCancelNotification=e.WorkDoneProgressCreateRequest=e.WorkDoneProgress=e.SelectionRangeRequest=e.DeclarationRequest=e.FoldingRangeRefreshRequest=e.FoldingRangeRequest=e.ColorPresentationRequest=e.DocumentColorRequest=e.ConfigurationRequest=e.DidChangeWorkspaceFoldersNotification=e.WorkspaceFoldersRequest=e.TypeDefinitionRequest=e.ImplementationRequest=e.ApplyWorkspaceEditRequest=e.ExecuteCommandRequest=e.PrepareRenameRequest=e.RenameRequest=e.PrepareSupportDefaultBehavior=e.DocumentOnTypeFormattingRequest=e.DocumentRangesFormattingRequest=e.DocumentRangeFormattingRequest=e.DocumentFormattingRequest=e.DocumentLinkResolveRequest=e.DocumentLinkRequest=e.CodeLensRefreshRequest=e.CodeLensResolveRequest=e.CodeLensRequest=e.WorkspaceSymbolResolveRequest=e.WorkspaceSymbolRequest=e.CodeActionResolveRequest=void 0,e.TextDocumentContentRefreshRequest=e.TextDocumentContentRequest=e.InlineCompletionRequest=e.DidCloseNotebookDocumentNotification=e.DidSaveNotebookDocumentNotification=e.DidChangeNotebookDocumentNotification=e.NotebookCellArrayChange=e.DidOpenNotebookDocumentNotification=e.NotebookDocumentSyncRegistrationType=e.NotebookDocument=e.NotebookCell=e.ExecutionSummary=e.NotebookCellKind=e.DiagnosticRefreshRequest=e.WorkspaceDiagnosticRequest=e.DocumentDiagnosticRequest=e.DocumentDiagnosticReportKind=e.DiagnosticServerCancellationData=e.InlayHintRefreshRequest=e.InlayHintResolveRequest=e.InlayHintRequest=e.InlineValueRefreshRequest=e.InlineValueRequest=e.TypeHierarchySupertypesRequest=e.TypeHierarchySubtypesRequest=e.TypeHierarchyPrepareRequest=e.MonikerRequest=e.MonikerKind=void 0;var i=ft(),a=(dt(),He(ut)),s=n(mt()),o=ht();Object.defineProperty(e,"ImplementationRequest",{enumerable:!0,get:Ue(function(){return o.ImplementationRequest},"get")});var l=yt();Object.defineProperty(e,"TypeDefinitionRequest",{enumerable:!0,get:Ue(function(){return l.TypeDefinitionRequest},"get")});var u=gt();Object.defineProperty(e,"WorkspaceFoldersRequest",{enumerable:!0,get:Ue(function(){return u.WorkspaceFoldersRequest},"get")}),Object.defineProperty(e,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:Ue(function(){return u.DidChangeWorkspaceFoldersNotification},"get")});var c=Tt();Object.defineProperty(e,"ConfigurationRequest",{enumerable:!0,get:Ue(function(){return c.ConfigurationRequest},"get")});var p=vt();Object.defineProperty(e,"DocumentColorRequest",{enumerable:!0,get:Ue(function(){return p.DocumentColorRequest},"get")}),Object.defineProperty(e,"ColorPresentationRequest",{enumerable:!0,get:Ue(function(){return p.ColorPresentationRequest},"get")});var d=Rt();Object.defineProperty(e,"FoldingRangeRequest",{enumerable:!0,get:Ue(function(){return d.FoldingRangeRequest},"get")}),Object.defineProperty(e,"FoldingRangeRefreshRequest",{enumerable:!0,get:Ue(function(){return d.FoldingRangeRefreshRequest},"get")});var f=$t();Object.defineProperty(e,"DeclarationRequest",{enumerable:!0,get:Ue(function(){return f.DeclarationRequest},"get")});var m=Ct();Object.defineProperty(e,"SelectionRangeRequest",{enumerable:!0,get:Ue(function(){return m.SelectionRangeRequest},"get")});var h=Et();Object.defineProperty(e,"WorkDoneProgress",{enumerable:!0,get:Ue(function(){return h.WorkDoneProgress},"get")}),Object.defineProperty(e,"WorkDoneProgressCreateRequest",{enumerable:!0,get:Ue(function(){return h.WorkDoneProgressCreateRequest},"get")}),Object.defineProperty(e,"WorkDoneProgressCancelNotification",{enumerable:!0,get:Ue(function(){return h.WorkDoneProgressCancelNotification},"get")});var y=bt();Object.defineProperty(e,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:Ue(function(){return y.CallHierarchyIncomingCallsRequest},"get")}),Object.defineProperty(e,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:Ue(function(){return y.CallHierarchyOutgoingCallsRequest},"get")}),Object.defineProperty(e,"CallHierarchyPrepareRequest",{enumerable:!0,get:Ue(function(){return y.CallHierarchyPrepareRequest},"get")});var g=At();Object.defineProperty(e,"TokenFormat",{enumerable:!0,get:Ue(function(){return g.TokenFormat},"get")}),Object.defineProperty(e,"SemanticTokensRequest",{enumerable:!0,get:Ue(function(){return g.SemanticTokensRequest},"get")}),Object.defineProperty(e,"SemanticTokensDeltaRequest",{enumerable:!0,get:Ue(function(){return g.SemanticTokensDeltaRequest},"get")}),Object.defineProperty(e,"SemanticTokensRangeRequest",{enumerable:!0,get:Ue(function(){return g.SemanticTokensRangeRequest},"get")}),Object.defineProperty(e,"SemanticTokensRefreshRequest",{enumerable:!0,get:Ue(function(){return g.SemanticTokensRefreshRequest},"get")}),Object.defineProperty(e,"SemanticTokensRegistrationType",{enumerable:!0,get:Ue(function(){return g.SemanticTokensRegistrationType},"get")});var T=St();Object.defineProperty(e,"ShowDocumentRequest",{enumerable:!0,get:Ue(function(){return T.ShowDocumentRequest},"get")});var v=xt();Object.defineProperty(e,"LinkedEditingRangeRequest",{enumerable:!0,get:Ue(function(){return v.LinkedEditingRangeRequest},"get")});var R=kt();Object.defineProperty(e,"FileOperationPatternKind",{enumerable:!0,get:Ue(function(){return R.FileOperationPatternKind},"get")}),Object.defineProperty(e,"DidCreateFilesNotification",{enumerable:!0,get:Ue(function(){return R.DidCreateFilesNotification},"get")}),Object.defineProperty(e,"WillCreateFilesRequest",{enumerable:!0,get:Ue(function(){return R.WillCreateFilesRequest},"get")}),Object.defineProperty(e,"DidRenameFilesNotification",{enumerable:!0,get:Ue(function(){return R.DidRenameFilesNotification},"get")}),Object.defineProperty(e,"WillRenameFilesRequest",{enumerable:!0,get:Ue(function(){return R.WillRenameFilesRequest},"get")}),Object.defineProperty(e,"DidDeleteFilesNotification",{enumerable:!0,get:Ue(function(){return R.DidDeleteFilesNotification},"get")}),Object.defineProperty(e,"WillDeleteFilesRequest",{enumerable:!0,get:Ue(function(){return R.WillDeleteFilesRequest},"get")});var $=wt();Object.defineProperty(e,"UniquenessLevel",{enumerable:!0,get:Ue(function(){return $.UniquenessLevel},"get")}),Object.defineProperty(e,"MonikerKind",{enumerable:!0,get:Ue(function(){return $.MonikerKind},"get")}),Object.defineProperty(e,"MonikerRequest",{enumerable:!0,get:Ue(function(){return $.MonikerRequest},"get")});var C=_t();Object.defineProperty(e,"TypeHierarchyPrepareRequest",{enumerable:!0,get:Ue(function(){return C.TypeHierarchyPrepareRequest},"get")}),Object.defineProperty(e,"TypeHierarchySubtypesRequest",{enumerable:!0,get:Ue(function(){return C.TypeHierarchySubtypesRequest},"get")}),Object.defineProperty(e,"TypeHierarchySupertypesRequest",{enumerable:!0,get:Ue(function(){return C.TypeHierarchySupertypesRequest},"get")});var E=Nt();Object.defineProperty(e,"InlineValueRequest",{enumerable:!0,get:Ue(function(){return E.InlineValueRequest},"get")}),Object.defineProperty(e,"InlineValueRefreshRequest",{enumerable:!0,get:Ue(function(){return E.InlineValueRefreshRequest},"get")});var b=It();Object.defineProperty(e,"InlayHintRequest",{enumerable:!0,get:Ue(function(){return b.InlayHintRequest},"get")}),Object.defineProperty(e,"InlayHintResolveRequest",{enumerable:!0,get:Ue(function(){return b.InlayHintResolveRequest},"get")}),Object.defineProperty(e,"InlayHintRefreshRequest",{enumerable:!0,get:Ue(function(){return b.InlayHintRefreshRequest},"get")});var A=Ot();Object.defineProperty(e,"DiagnosticServerCancellationData",{enumerable:!0,get:Ue(function(){return A.DiagnosticServerCancellationData},"get")}),Object.defineProperty(e,"DocumentDiagnosticReportKind",{enumerable:!0,get:Ue(function(){return A.DocumentDiagnosticReportKind},"get")}),Object.defineProperty(e,"DocumentDiagnosticRequest",{enumerable:!0,get:Ue(function(){return A.DocumentDiagnosticRequest},"get")}),Object.defineProperty(e,"WorkspaceDiagnosticRequest",{enumerable:!0,get:Ue(function(){return A.WorkspaceDiagnosticRequest},"get")}),Object.defineProperty(e,"DiagnosticRefreshRequest",{enumerable:!0,get:Ue(function(){return A.DiagnosticRefreshRequest},"get")});var S=Pt();Object.defineProperty(e,"NotebookCellKind",{enumerable:!0,get:Ue(function(){return S.NotebookCellKind},"get")}),Object.defineProperty(e,"ExecutionSummary",{enumerable:!0,get:Ue(function(){return S.ExecutionSummary},"get")}),Object.defineProperty(e,"NotebookCell",{enumerable:!0,get:Ue(function(){return S.NotebookCell},"get")}),Object.defineProperty(e,"NotebookDocument",{enumerable:!0,get:Ue(function(){return S.NotebookDocument},"get")}),Object.defineProperty(e,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:Ue(function(){return S.NotebookDocumentSyncRegistrationType},"get")}),Object.defineProperty(e,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:Ue(function(){return S.DidOpenNotebookDocumentNotification},"get")}),Object.defineProperty(e,"NotebookCellArrayChange",{enumerable:!0,get:Ue(function(){return S.NotebookCellArrayChange},"get")}),Object.defineProperty(e,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:Ue(function(){return S.DidChangeNotebookDocumentNotification},"get")}),Object.defineProperty(e,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:Ue(function(){return S.DidSaveNotebookDocumentNotification},"get")}),Object.defineProperty(e,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:Ue(function(){return S.DidCloseNotebookDocumentNotification},"get")});var x=Dt();Object.defineProperty(e,"InlineCompletionRequest",{enumerable:!0,get:Ue(function(){return x.InlineCompletionRequest},"get")});var k,w,_,N,I,O,P,D,L,M,j,F,K,G,z,q,U,B,V,W,H,Y,X,Q,Z,J,ee,te,re,ne,ie,ae,se,oe,le,ue,ce,pe,de,fe,me,he,ye,ge,Te,ve,Re,$e,Ce,Ee,be,Ae,Se,xe,ke,we,_e,Ne,Ie,Oe,Pe,De,Le,Me,je,Fe,Ke,Ge,ze,qe,Be,Ve,We,Ye,Xe,Qe,Ze,Je,et,tt,rt,nt,it,at,st,ot,lt,ct,pt,Mt,jt,Ft,Kt,Gt,zt,qt,Ut,Bt,Vt,Wt,Ht,Yt,Xt,Qt,Zt,Jt,er,tr,rr,nr,ir,ar,sr,or,lr,ur,cr,pr,dr,fr,mr,hr=Lt();Object.defineProperty(e,"TextDocumentContentRequest",{enumerable:!0,get:Ue(function(){return hr.TextDocumentContentRequest},"get")}),Object.defineProperty(e,"TextDocumentContentRefreshRequest",{enumerable:!0,get:Ue(function(){return hr.TextDocumentContentRefreshRequest},"get")}),function(e){function t(e){const t=e;return s.string(t)||s.string(t.language)||s.string(t.scheme)||De.is(t.pattern)}Ue(t,"is"),e.is=t}(k||(e.TextDocumentFilter=k={})),function(e){function t(e){const t=e;return s.objectLiteral(t)&&(s.string(t.notebookType)||s.string(t.scheme)||s.string(t.pattern))}Ue(t,"is"),e.is=t}(w||(e.NotebookDocumentFilter=w={})),function(e){function t(e){const t=e;return s.objectLiteral(t)&&(s.string(t.notebook)||w.is(t.notebook))&&(void 0===t.language||s.string(t.language))}Ue(t,"is"),e.is=t}(_||(e.NotebookCellTextDocumentFilter=_={})),function(e){function t(e){if(!Array.isArray(e))return!1;for(const t of e)if(!s.string(t)&&!k.is(t)&&!_.is(t))return!1;return!0}Ue(t,"is"),e.is=t}(N||(e.DocumentSelector=N={})),(O=I||(e.RegistrationRequest=I={})).method="client/registerCapability",O.messageDirection=i.MessageDirection.serverToClient,O.type=new i.ProtocolRequestType(O.method),(D=P||(e.UnregistrationRequest=P={})).method="client/unregisterCapability",D.messageDirection=i.MessageDirection.serverToClient,D.type=new i.ProtocolRequestType(D.method),(M=L||(e.ResourceOperationKind=L={})).Create="create",M.Rename="rename",M.Delete="delete",(F=j||(e.FailureHandlingKind=j={})).Abort="abort",F.Transactional="transactional",F.TextOnlyTransactional="textOnlyTransactional",F.Undo="undo",(K||(e.RegularExpressionEngineKind=K={})).ES2020="ES2020",(z=G||(e.PositionEncodingKind=G={})).UTF8="utf-8",z.UTF16="utf-16",z.UTF32="utf-32",function(e){function t(e){const t=e;return t&&s.string(t.id)&&t.id.length>0}Ue(t,"hasId"),e.hasId=t}(q||(e.StaticRegistrationOptions=q={})),function(e){function t(e){const t=e;return t&&(null===t.documentSelector||N.is(t.documentSelector))}Ue(t,"is"),e.is=t}(U||(e.TextDocumentRegistrationOptions=U={})),function(e){function t(e){const t=e;return s.objectLiteral(t)&&(void 0===t.workDoneProgress||s.boolean(t.workDoneProgress))}function r(e){const t=e;return t&&s.boolean(t.workDoneProgress)}Ue(t,"is"),e.is=t,Ue(r,"hasWorkDoneProgress"),e.hasWorkDoneProgress=r}(B||(e.WorkDoneProgressOptions=B={})),(W=V||(e.InitializeRequest=V={})).method="initialize",W.messageDirection=i.MessageDirection.clientToServer,W.type=new i.ProtocolRequestType(W.method),(H||(e.InitializeErrorCodes=H={})).unknownProtocolVersion=1,(X=Y||(e.InitializedNotification=Y={})).method="initialized",X.messageDirection=i.MessageDirection.clientToServer,X.type=new i.ProtocolNotificationType(X.method),(Z=Q||(e.ShutdownRequest=Q={})).method="shutdown",Z.messageDirection=i.MessageDirection.clientToServer,Z.type=new i.ProtocolRequestType0(Z.method),(ee=J||(e.ExitNotification=J={})).method="exit",ee.messageDirection=i.MessageDirection.clientToServer,ee.type=new i.ProtocolNotificationType0(ee.method),(re=te||(e.DidChangeConfigurationNotification=te={})).method="workspace/didChangeConfiguration",re.messageDirection=i.MessageDirection.clientToServer,re.type=new i.ProtocolNotificationType(re.method),re.capabilities=i.CM.create("workspace.didChangeConfiguration",void 0),(ie=ne||(e.MessageType=ne={})).Error=1,ie.Warning=2,ie.Info=3,ie.Log=4,ie.Debug=5,(se=ae||(e.ShowMessageNotification=ae={})).method="window/showMessage",se.messageDirection=i.MessageDirection.serverToClient,se.type=new i.ProtocolNotificationType(se.method),se.capabilities=i.CM.create("window.showMessage",void 0),(le=oe||(e.ShowMessageRequest=oe={})).method="window/showMessageRequest",le.messageDirection=i.MessageDirection.serverToClient,le.type=new i.ProtocolRequestType(le.method),le.capabilities=i.CM.create("window.showMessage",void 0),(ce=ue||(e.LogMessageNotification=ue={})).method="window/logMessage",ce.messageDirection=i.MessageDirection.serverToClient,ce.type=new i.ProtocolNotificationType(ce.method),(de=pe||(e.TelemetryEventNotification=pe={})).method="telemetry/event",de.messageDirection=i.MessageDirection.serverToClient,de.type=new i.ProtocolNotificationType(de.method),(me=fe||(e.TextDocumentSyncKind=fe={})).None=0,me.Full=1,me.Incremental=2,(ye=he||(e.DidOpenTextDocumentNotification=he={})).method="textDocument/didOpen",ye.messageDirection=i.MessageDirection.clientToServer,ye.type=new i.ProtocolNotificationType(ye.method),ye.capabilities=i.CM.create("textDocument.synchronization","textDocumentSync.openClose"),function(e){function t(e){const t=e;return null!=t&&"string"==typeof t.text&&void 0!==t.range&&(void 0===t.rangeLength||"number"==typeof t.rangeLength)}function r(e){const t=e;return null!=t&&"string"==typeof t.text&&void 0===t.range&&void 0===t.rangeLength}Ue(t,"isIncremental"),e.isIncremental=t,Ue(r,"isFull"),e.isFull=r}(ge||(e.TextDocumentContentChangeEvent=ge={})),(ve=Te||(e.DidChangeTextDocumentNotification=Te={})).method="textDocument/didChange",ve.messageDirection=i.MessageDirection.clientToServer,ve.type=new i.ProtocolNotificationType(ve.method),ve.capabilities=i.CM.create("textDocument.synchronization","textDocumentSync"),($e=Re||(e.DidCloseTextDocumentNotification=Re={})).method="textDocument/didClose",$e.messageDirection=i.MessageDirection.clientToServer,$e.type=new i.ProtocolNotificationType($e.method),$e.capabilities=i.CM.create("textDocument.synchronization","textDocumentSync.openClose"),(Ee=Ce||(e.DidSaveTextDocumentNotification=Ce={})).method="textDocument/didSave",Ee.messageDirection=i.MessageDirection.clientToServer,Ee.type=new i.ProtocolNotificationType(Ee.method),Ee.capabilities=i.CM.create("textDocument.synchronization.didSave","textDocumentSync.save"),(Ae=be||(e.TextDocumentSaveReason=be={})).Manual=1,Ae.AfterDelay=2,Ae.FocusOut=3,(xe=Se||(e.WillSaveTextDocumentNotification=Se={})).method="textDocument/willSave",xe.messageDirection=i.MessageDirection.clientToServer,xe.type=new i.ProtocolNotificationType(xe.method),xe.capabilities=i.CM.create("textDocument.synchronization.willSave","textDocumentSync.willSave"),(we=ke||(e.WillSaveTextDocumentWaitUntilRequest=ke={})).method="textDocument/willSaveWaitUntil",we.messageDirection=i.MessageDirection.clientToServer,we.type=new i.ProtocolRequestType(we.method),we.capabilities=i.CM.create("textDocument.synchronization.willSaveWaitUntil","textDocumentSync.willSaveWaitUntil"),(Ne=_e||(e.DidChangeWatchedFilesNotification=_e={})).method="workspace/didChangeWatchedFiles",Ne.messageDirection=i.MessageDirection.clientToServer,Ne.type=new i.ProtocolNotificationType(Ne.method),Ne.capabilities=i.CM.create("workspace.didChangeWatchedFiles",void 0),(Oe=Ie||(e.FileChangeType=Ie={})).Created=1,Oe.Changed=2,Oe.Deleted=3,function(e){function t(e){const t=e;return s.objectLiteral(t)&&(a.URI.is(t.baseUri)||a.WorkspaceFolder.is(t.baseUri))&&s.string(t.pattern)}Ue(t,"is"),e.is=t}(Pe||(e.RelativePattern=Pe={})),function(e){function t(e){const t=e;return s.string(t)||Pe.is(t)}Ue(t,"is"),e.is=t}(De||(e.GlobPattern=De={})),(Me=Le||(e.WatchKind=Le={})).Create=1,Me.Change=2,Me.Delete=4,(Fe=je||(e.PublishDiagnosticsNotification=je={})).method="textDocument/publishDiagnostics",Fe.messageDirection=i.MessageDirection.serverToClient,Fe.type=new i.ProtocolNotificationType(Fe.method),Fe.capabilities=i.CM.create("textDocument.publishDiagnostics",void 0),(Ge=Ke||(e.CompletionTriggerKind=Ke={})).Invoked=1,Ge.TriggerCharacter=2,Ge.TriggerForIncompleteCompletions=3,(qe=ze||(e.CompletionRequest=ze={})).method="textDocument/completion",qe.messageDirection=i.MessageDirection.clientToServer,qe.type=new i.ProtocolRequestType(qe.method),qe.capabilities=i.CM.create("textDocument.completion","completionProvider"),(Ve=Be||(e.CompletionResolveRequest=Be={})).method="completionItem/resolve",Ve.messageDirection=i.MessageDirection.clientToServer,Ve.type=new i.ProtocolRequestType(Ve.method),Ve.capabilities=i.CM.create("textDocument.completion.completionItem.resolveSupport","completionProvider.resolveProvider"),(Ye=We||(e.HoverRequest=We={})).method="textDocument/hover",Ye.messageDirection=i.MessageDirection.clientToServer,Ye.type=new i.ProtocolRequestType(Ye.method),Ye.capabilities=i.CM.create("textDocument.hover","hoverProvider"),(Qe=Xe||(e.SignatureHelpTriggerKind=Xe={})).Invoked=1,Qe.TriggerCharacter=2,Qe.ContentChange=3,(Je=Ze||(e.SignatureHelpRequest=Ze={})).method="textDocument/signatureHelp",Je.messageDirection=i.MessageDirection.clientToServer,Je.type=new i.ProtocolRequestType(Je.method),Je.capabilities=i.CM.create("textDocument.signatureHelp","signatureHelpProvider"),(tt=et||(e.DefinitionRequest=et={})).method="textDocument/definition",tt.messageDirection=i.MessageDirection.clientToServer,tt.type=new i.ProtocolRequestType(tt.method),tt.capabilities=i.CM.create("textDocument.definition","definitionProvider"),(nt=rt||(e.ReferencesRequest=rt={})).method="textDocument/references",nt.messageDirection=i.MessageDirection.clientToServer,nt.type=new i.ProtocolRequestType(nt.method),nt.capabilities=i.CM.create("textDocument.references","referencesProvider"),(at=it||(e.DocumentHighlightRequest=it={})).method="textDocument/documentHighlight",at.messageDirection=i.MessageDirection.clientToServer,at.type=new i.ProtocolRequestType(at.method),at.capabilities=i.CM.create("textDocument.documentHighlight","documentHighlightProvider"),(ot=st||(e.DocumentSymbolRequest=st={})).method="textDocument/documentSymbol",ot.messageDirection=i.MessageDirection.clientToServer,ot.type=new i.ProtocolRequestType(ot.method),ot.capabilities=i.CM.create("textDocument.documentSymbol","documentSymbolProvider"),(ct=lt||(e.CodeActionRequest=lt={})).method="textDocument/codeAction",ct.messageDirection=i.MessageDirection.clientToServer,ct.type=new i.ProtocolRequestType(ct.method),ct.capabilities=i.CM.create("textDocument.codeAction","codeActionProvider"),(Mt=pt||(e.CodeActionResolveRequest=pt={})).method="codeAction/resolve",Mt.messageDirection=i.MessageDirection.clientToServer,Mt.type=new i.ProtocolRequestType(Mt.method),Mt.capabilities=i.CM.create("textDocument.codeAction.resolveSupport","codeActionProvider.resolveProvider"),(Ft=jt||(e.WorkspaceSymbolRequest=jt={})).method="workspace/symbol",Ft.messageDirection=i.MessageDirection.clientToServer,Ft.type=new i.ProtocolRequestType(Ft.method),Ft.capabilities=i.CM.create("workspace.symbol","workspaceSymbolProvider"),(Gt=Kt||(e.WorkspaceSymbolResolveRequest=Kt={})).method="workspaceSymbol/resolve",Gt.messageDirection=i.MessageDirection.clientToServer,Gt.type=new i.ProtocolRequestType(Gt.method),Gt.capabilities=i.CM.create("workspace.symbol.resolveSupport","workspaceSymbolProvider.resolveProvider"),(qt=zt||(e.CodeLensRequest=zt={})).method="textDocument/codeLens",qt.messageDirection=i.MessageDirection.clientToServer,qt.type=new i.ProtocolRequestType(qt.method),qt.capabilities=i.CM.create("textDocument.codeLens","codeLensProvider"),(Bt=Ut||(e.CodeLensResolveRequest=Ut={})).method="codeLens/resolve",Bt.messageDirection=i.MessageDirection.clientToServer,Bt.type=new i.ProtocolRequestType(Bt.method),Bt.capabilities=i.CM.create("textDocument.codeLens.resolveSupport","codeLensProvider.resolveProvider"),(Wt=Vt||(e.CodeLensRefreshRequest=Vt={})).method="workspace/codeLens/refresh",Wt.messageDirection=i.MessageDirection.serverToClient,Wt.type=new i.ProtocolRequestType0(Wt.method),Wt.capabilities=i.CM.create("workspace.codeLens",void 0),(Yt=Ht||(e.DocumentLinkRequest=Ht={})).method="textDocument/documentLink",Yt.messageDirection=i.MessageDirection.clientToServer,Yt.type=new i.ProtocolRequestType(Yt.method),Yt.capabilities=i.CM.create("textDocument.documentLink","documentLinkProvider"),(Qt=Xt||(e.DocumentLinkResolveRequest=Xt={})).method="documentLink/resolve",Qt.messageDirection=i.MessageDirection.clientToServer,Qt.type=new i.ProtocolRequestType(Qt.method),Qt.capabilities=i.CM.create("textDocument.documentLink","documentLinkProvider.resolveProvider"),(Jt=Zt||(e.DocumentFormattingRequest=Zt={})).method="textDocument/formatting",Jt.messageDirection=i.MessageDirection.clientToServer,Jt.type=new i.ProtocolRequestType(Jt.method),Jt.capabilities=i.CM.create("textDocument.formatting","documentFormattingProvider"),(tr=er||(e.DocumentRangeFormattingRequest=er={})).method="textDocument/rangeFormatting",tr.messageDirection=i.MessageDirection.clientToServer,tr.type=new i.ProtocolRequestType(tr.method),tr.capabilities=i.CM.create("textDocument.rangeFormatting","documentRangeFormattingProvider"),(nr=rr||(e.DocumentRangesFormattingRequest=rr={})).method="textDocument/rangesFormatting",nr.messageDirection=i.MessageDirection.clientToServer,nr.type=new i.ProtocolRequestType(nr.method),nr.capabilities=i.CM.create("textDocument.rangeFormatting.rangesSupport","documentRangeFormattingProvider.rangesSupport"),(ar=ir||(e.DocumentOnTypeFormattingRequest=ir={})).method="textDocument/onTypeFormatting",ar.messageDirection=i.MessageDirection.clientToServer,ar.type=new i.ProtocolRequestType(ar.method),ar.capabilities=i.CM.create("textDocument.onTypeFormatting","documentOnTypeFormattingProvider"),(sr||(e.PrepareSupportDefaultBehavior=sr={})).Identifier=1,(lr=or||(e.RenameRequest=or={})).method="textDocument/rename",lr.messageDirection=i.MessageDirection.clientToServer,lr.type=new i.ProtocolRequestType(lr.method),lr.capabilities=i.CM.create("textDocument.rename","renameProvider"),(cr=ur||(e.PrepareRenameRequest=ur={})).method="textDocument/prepareRename",cr.messageDirection=i.MessageDirection.clientToServer,cr.type=new i.ProtocolRequestType(cr.method),cr.capabilities=i.CM.create("textDocument.rename.prepareSupport","renameProvider.prepareProvider"),(dr=pr||(e.ExecuteCommandRequest=pr={})).method="workspace/executeCommand",dr.messageDirection=i.MessageDirection.clientToServer,dr.type=new i.ProtocolRequestType(dr.method),dr.capabilities=i.CM.create("workspace.executeCommand","executeCommandProvider"),(mr=fr||(e.ApplyWorkspaceEditRequest=fr={})).method="workspace/applyEdit",mr.messageDirection=i.MessageDirection.serverToClient,mr.type=new i.ProtocolRequestType("workspace/applyEdit"),mr.capabilities=i.CM.create("workspace.applyEdit",void 0)}}),jt=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/connection.js"(e){Object.defineProperty(e,"__esModule",{value:!0}),e.createProtocolConnection=r;var t=lt();function r(e,r,n,i){return t.ConnectionStrategy.is(i)&&(i={connectionStrategy:i}),(0,t.createMessageConnection)(e,r,n,i)}Ue(r,"createProtocolConnection")}}),Ft=Be({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.18.4/node_modules/vscode-languageserver-protocol/lib/common/api.js"(e){var t=e&&e.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:Ue(function(){return t[r]},"get")}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),r=e&&e.__exportStar||function(e,r){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(r,n)||t(r,e,n)};Object.defineProperty(e,"__esModule",{value:!0}),e.LSPErrorCodes=e.createProtocolConnection=void 0,r(lt(),e),r((dt(),He(ut)),e),r(ft(),e),r(Mt(),e);var n,i,a=jt();Object.defineProperty(e,"createProtocolConnection",{enumerable:!0,get:Ue(function(){return a.createProtocolConnection},"get")}),(i=n||(e.LSPErrorCodes=n={})).lspReservedErrorRangeStart=-32899,i.RequestFailed=-32803,i.ServerCancelled=-32802,i.ContentModified=-32801,i.RequestCancelled=-32800,i.lspReservedErrorRangeEnd=-32800}});function Kt(e){return"object"==typeof e&&null!==e&&"string"==typeof e.$type}function Gt(e){return"object"==typeof e&&null!==e&&"string"==typeof e.$refText&&"ref"in e}function zt(e){return"object"==typeof e&&null!==e&&"string"==typeof e.$refText&&"items"in e}function qt(e){return"object"==typeof e&&null!==e&&"string"==typeof e.name&&"string"==typeof e.type&&"string"==typeof e.path}function Ut(e){return"object"==typeof e&&null!==e&&"object"==typeof e.info&&"string"==typeof e.message}Ue(Kt,"isAstNode"),Ue(Gt,"isReference"),Ue(zt,"isMultiReference"),Ue(qt,"isAstNodeDescription"),Ue(Ut,"isLinkingError");var Bt=class{static{Ue(this,"AbstractAstReflection")}constructor(){this.subtypes={},this.allSubtypes={}}getAllTypes(){return Object.keys(this.types)}getReferenceType(e){const t=this.types[e.container.$type];if(!t)throw new Error(`Type ${e.container.$type||"undefined"} not found.`);const r=t.properties[e.property]?.referenceType;if(!r)throw new Error(`Property ${e.property||"undefined"} of type ${e.container.$type} is not a reference.`);return r}getTypeMetaData(e){const t=this.types[e];return t||{name:e,properties:{},superTypes:[]}}isInstance(e,t){return Kt(e)&&this.isSubtype(e.$type,t)}isSubtype(e,t){if(e===t)return!0;let r=this.subtypes[e];r||(r=this.subtypes[e]={});const n=r[t];if(void 0!==n)return n;{const n=this.types[e],i=!!n&&n.superTypes.some(e=>this.isSubtype(e,t));return r[t]=i,i}}getAllSubTypes(e){const t=this.allSubtypes[e];if(t)return t;{const t=this.getAllTypes(),r=[];for(const n of t)this.isSubtype(n,e)&&r.push(n);return this.allSubtypes[e]=r,r}}isComplete(e){const t=this.getTypeMetaData(e.$type);for(const r of Object.keys(t.properties)){const n=t.properties[r];if(n.optional)continue;const i=e[n.name];if(null==i)return!1}return!0}};function Vt(e){return"object"==typeof e&&null!==e&&Array.isArray(e.content)}function Wt(e){return"object"==typeof e&&null!==e&&"object"==typeof e.tokenType}function Ht(e){return Vt(e)&&"string"==typeof e.fullText}Ue(Vt,"isCompositeCstNode"),Ue(Wt,"isLeafCstNode"),Ue(Ht,"isRootCstNode");var Yt=class e{static{Ue(this,"StreamImpl")}constructor(e,t){this.startFn=e,this.nextFn=t}iterator(){const e={state:this.startFn(),next:Ue(()=>this.nextFn(e.state),"next"),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){const e=this.iterator();return Boolean(e.next().done)}count(){const e=this.iterator();let t=0,r=e.next();for(;!r.done;)t++,r=e.next();return t}toArray(){const e=[],t=this.iterator();let r;do{r=t.next(),void 0!==r.value&&e.push(r.value)}while(!r.done);return e}toSet(){return new Set(this)}toMap(e,t){const r=this.map(r=>[e?e(r):r,t?t(r):r]);return new Map(r)}toString(){return this.join()}concat(t){return new e(()=>({first:this.startFn(),firstDone:!1,iterator:t[Symbol.iterator]()}),e=>{let t;if(!e.firstDone){do{if(t=this.nextFn(e.first),!t.done)return t}while(!t.done);e.firstDone=!0}do{if(t=e.iterator.next(),!t.done)return t}while(!t.done);return Jt})}join(e=","){const t=this.iterator();let r,n="",i=!1;do{r=t.next(),r.done||(i&&(n+=e),n+=Xt(r.value)),i=!0}while(!r.done);return n}indexOf(e,t=0){const r=this.iterator();let n=0,i=r.next();for(;!i.done;){if(n>=t&&i.value===e)return n;i=r.next(),n++}return-1}every(e){const t=this.iterator();let r=t.next();for(;!r.done;){if(!e(r.value))return!1;r=t.next()}return!0}some(e){const t=this.iterator();let r=t.next();for(;!r.done;){if(e(r.value))return!0;r=t.next()}return!1}forEach(e){const t=this.iterator();let r=0,n=t.next();for(;!n.done;)e(n.value,r),n=t.next(),r++}map(t){return new e(this.startFn,e=>{const{done:r,value:n}=this.nextFn(e);return r?Jt:{done:!1,value:t(n)}})}filter(t){return new e(this.startFn,e=>{let r;do{if(r=this.nextFn(e),!r.done&&t(r.value))return r}while(!r.done);return Jt})}nonNullable(){return this.filter(e=>null!=e)}reduce(e,t){const r=this.iterator();let n=t,i=r.next();for(;!i.done;)n=void 0===n?i.value:e(n,i.value),i=r.next();return n}reduceRight(e,t){return this.recursiveReduce(this.iterator(),e,t)}recursiveReduce(e,t,r){const n=e.next();if(n.done)return r;const i=this.recursiveReduce(e,t,r);return void 0===i?n.value:t(i,n.value)}find(e){const t=this.iterator();let r=t.next();for(;!r.done;){if(e(r.value))return r.value;r=t.next()}}findIndex(e){const t=this.iterator();let r=0,n=t.next();for(;!n.done;){if(e(n.value))return r;n=t.next(),r++}return-1}includes(e){const t=this.iterator();let r=t.next();for(;!r.done;){if(r.value===e)return!0;r=t.next()}return!1}flatMap(t){return new e(()=>({this:this.startFn()}),e=>{do{if(e.iterator){const t=e.iterator.next();if(!t.done)return t;e.iterator=void 0}const{done:r,value:n}=this.nextFn(e.this);if(!r){const r=t(n);if(!Qt(r))return{done:!1,value:r};e.iterator=r[Symbol.iterator]()}}while(e.iterator);return Jt})}flat(t){if(void 0===t&&(t=1),t<=0)return this;const r=t>1?this.flat(t-1):this;return new e(()=>({this:r.startFn()}),e=>{do{if(e.iterator){const t=e.iterator.next();if(!t.done)return t;e.iterator=void 0}const{done:t,value:n}=r.nextFn(e.this);if(!t){if(!Qt(n))return{done:!1,value:n};e.iterator=n[Symbol.iterator]()}}while(e.iterator);return Jt})}head(){const e=this.iterator().next();if(!e.done)return e.value}tail(t=1){return new e(()=>{const e=this.startFn();for(let r=0;r<t;r++){if(this.nextFn(e).done)return e}return e},this.nextFn)}limit(t){return new e(()=>({size:0,state:this.startFn()}),e=>(e.size++,e.size>t?Jt:this.nextFn(e.state)))}distinct(t){return new e(()=>({set:new Set,internalState:this.startFn()}),e=>{let r;do{if(r=this.nextFn(e.internalState),!r.done){const n=t?t(r.value):r.value;if(!e.set.has(n))return e.set.add(n),r}}while(!r.done);return Jt})}exclude(e,t){const r=new Set;for(const n of e){const e=t?t(n):n;r.add(e)}return this.filter(e=>{const n=t?t(e):e;return!r.has(n)})}};function Xt(e){return"string"==typeof e?e:void 0===e?"undefined":"function"==typeof e.toString?e.toString():Object.prototype.toString.call(e)}function Qt(e){return!!e&&"function"==typeof e[Symbol.iterator]}Ue(Xt,"toString"),Ue(Qt,"isIterable");var Zt=new Yt(()=>{},()=>Jt),Jt=Object.freeze({done:!0,value:void 0});function er(...e){if(1===e.length){const t=e[0];if(t instanceof Yt)return t;if(Qt(t))return new Yt(()=>t[Symbol.iterator](),e=>e.next());if("number"==typeof t.length)return new Yt(()=>({index:0}),e=>e.index<t.length?{done:!1,value:t[e.index++]}:Jt)}return e.length>1?new Yt(()=>({collIndex:0,arrIndex:0}),t=>{do{if(t.iterator){const e=t.iterator.next();if(!e.done)return e;t.iterator=void 0}if(t.array){if(t.arrIndex<t.array.length)return{done:!1,value:t.array[t.arrIndex++]};t.array=void 0,t.arrIndex=0}if(t.collIndex<e.length){const r=e[t.collIndex++];Qt(r)?t.iterator=r[Symbol.iterator]():r&&"number"==typeof r.length&&(t.array=r)}}while(t.iterator||t.array||t.collIndex<e.length);return Jt}):Zt}Ue(er,"stream");var tr,rr=class extends Yt{static{Ue(this,"TreeStreamImpl")}constructor(e,t,r){super(()=>({iterators:r?.includeRoot?[[e][Symbol.iterator]()]:[t(e)[Symbol.iterator]()],pruned:!1}),e=>{for(e.pruned&&(e.iterators.pop(),e.pruned=!1);e.iterators.length>0;){const r=e.iterators[e.iterators.length-1].next();if(!r.done)return e.iterators.push(t(r.value)[Symbol.iterator]()),r;e.iterators.pop()}return Jt})}iterator(){const e={state:this.startFn(),next:Ue(()=>this.nextFn(e.state),"next"),prune:Ue(()=>{e.state.pruned=!0},"prune"),[Symbol.iterator]:()=>e};return e}};function nr(e,t={}){for(const[r,n]of Object.entries(e))r.startsWith("$")||(Array.isArray(n)?n.forEach((n,i)=>{Kt(n)&&(n.$container=e,n.$containerProperty=r,n.$containerIndex=i,t.deep&&nr(n,t))}):Kt(n)&&(n.$container=e,n.$containerProperty=r,t.deep&&nr(n,t)))}function ir(e,t){let r=e;for(;r;){if(t(r))return r;r=r.$container}}function ar(e){const t=sr(e).$document;if(!t)throw new Error("AST node has no document.");return t}function sr(e){for(;e.$container;)e=e.$container;return e}function or(e){return Gt(e)?e.ref?[e.ref]:[]:zt(e)?e.items.map(e=>e.ref):[]}function lr(e,t){if(!e)throw new Error("Node must be an AstNode.");const r=t?.range;return new Yt(()=>({keys:Object.keys(e),keyIndex:0,arrayIndex:0}),t=>{for(;t.keyIndex<t.keys.length;){const n=t.keys[t.keyIndex];if(!n.startsWith("$")){const i=e[n];if(Kt(i)){if(t.keyIndex++,pr(i,r))return{done:!1,value:i}}else if(Array.isArray(i)){for(;t.arrayIndex<i.length;){const e=i[t.arrayIndex++];if(Kt(e)&&pr(e,r))return{done:!1,value:e}}t.arrayIndex=0}}t.keyIndex++}return Jt})}function ur(e,t){if(!e)throw new Error("Root node must be an AstNode.");return new rr(e,e=>lr(e,t))}function cr(e,t){if(!e)throw new Error("Root node must be an AstNode.");return t?.range&&!pr(e,t.range)?new rr(e,()=>[]):new rr(e,e=>lr(e,t),{includeRoot:!0})}function pr(e,t){if(!t)return!0;const r=e.$cstNode?.range;return!!r&&Cs(r,t)}function dr(e){return new Yt(()=>({keys:Object.keys(e),keyIndex:0,arrayIndex:0}),t=>{for(;t.keyIndex<t.keys.length;){const r=t.keys[t.keyIndex];if(!r.startsWith("$")){const n=e[r];if(Gt(n)||zt(n))return t.keyIndex++,{done:!1,value:{reference:n,container:e,property:r}};if(Array.isArray(n)){for(;t.arrayIndex<n.length;){const i=t.arrayIndex++,a=n[i];if(Gt(a)||zt(a))return{done:!1,value:{reference:a,container:e,property:r,index:i}}}t.arrayIndex=0}}t.keyIndex++}return Jt})}function fr(e,t){const r=e.getTypeMetaData(t.$type),n=t;for(const e of Object.values(r.properties))void 0!==e.defaultValue&&void 0===n[e.name]&&(n[e.name]=mr(e.defaultValue))}function mr(e){return Array.isArray(e)?[...e.map(mr)]:e}!function(e){function t(e){return e.reduce((e,t)=>e+t,0)}function r(e){return e.reduce((e,t)=>e*t,0)}function n(e){return e.reduce((e,t)=>Math.min(e,t))}function i(e){return e.reduce((e,t)=>Math.max(e,t))}Ue(t,"sum"),e.sum=t,Ue(r,"product"),e.product=r,Ue(n,"min"),e.min=n,Ue(i,"max"),e.max=i}(tr||(tr={})),Ue(nr,"linkContentToContainer"),Ue(ir,"getContainerOfType"),Ue(ar,"getDocument"),Ue(sr,"findRootNode"),Ue(or,"getReferenceNodes"),Ue(lr,"streamContents"),Ue(ur,"streamAllContents"),Ue(cr,"streamAst"),Ue(pr,"isAstNodeInRange"),Ue(dr,"streamReferences"),Ue(fr,"assignMandatoryProperties"),Ue(mr,"copyDefaultValue");var hr="AbstractElement",yr="cardinality";function gr(e){return hs.isInstance(e,hr)}Ue(gr,"isAbstractElement");var Tr="AbstractParserRule";function vr(e){return hs.isInstance(e,Tr)}Ue(vr,"isAbstractParserRule");var Rr="AbstractRule",$r="AbstractType",Cr="Action",Er="cardinality",br="feature",Ar="inferredType",Sr="operator",xr="type";function kr(e){return hs.isInstance(e,Cr)}Ue(kr,"isAction");var wr="Alternatives",_r="cardinality",Nr="elements";function Ir(e){return hs.isInstance(e,wr)}Ue(Ir,"isAlternatives");var Or="ArrayLiteral",Pr="elements",Dr="ArrayType",Lr="elementType",Mr="Assignment",jr="cardinality",Fr="feature",Kr="operator",Gr="predicate",zr="terminal";function qr(e){return hs.isInstance(e,Mr)}Ue(qr,"isAssignment");var Ur="BooleanLiteral",Br="true";function Vr(e){return hs.isInstance(e,Ur)}Ue(Vr,"isBooleanLiteral");var Wr="CharacterRange",Hr="cardinality",Yr="left",Xr="lookahead",Qr="parenthesized",Zr="right";function Jr(e){return hs.isInstance(e,Wr)}Ue(Jr,"isCharacterRange");var en="Condition",tn="Conjunction",rn="left",nn="right";function an(e){return hs.isInstance(e,tn)}Ue(an,"isConjunction");var sn="CrossReference",on="cardinality",ln="deprecatedSyntax",un="isMulti",cn="terminal",pn="type";function dn(e){return hs.isInstance(e,sn)}Ue(dn,"isCrossReference");var fn="Disjunction",mn="left",hn="right";function yn(e){return hs.isInstance(e,fn)}Ue(yn,"isDisjunction");var gn="EndOfFile",Tn="cardinality";function vn(e){return hs.isInstance(e,gn)}Ue(vn,"isEndOfFile");var Rn="Grammar",$n="imports",Cn="interfaces",En="isDeclared",bn="name",An="rules",Sn="types",xn="GrammarImport",kn="path",wn="Group",_n="cardinality",Nn="elements",In="guardCondition",On="predicate";function Pn(e){return hs.isInstance(e,wn)}Ue(Pn,"isGroup");var Dn="InferredType",Ln="name";function Mn(e){return hs.isInstance(e,Dn)}Ue(Mn,"isInferredType");var jn="InfixRule",Fn="call",Kn="dataType",Gn="inferredType",zn="name",qn="operators",Un="parameters",Bn="returnType";function Vn(e){return hs.isInstance(e,jn)}Ue(Vn,"isInfixRule");var Wn="InfixRuleOperatorList",Hn="associativity",Yn="operators",Xn="InfixRuleOperators",Qn="precedences",Zn="Interface",Jn="attributes",ei="name",ti="superTypes";function ri(e){return hs.isInstance(e,Zn)}Ue(ri,"isInterface");var ni="Keyword",ii="cardinality",ai="predicate",si="value";function oi(e){return hs.isInstance(e,ni)}Ue(oi,"isKeyword");var li="NamedArgument",ui="calledByName",ci="parameter",pi="value",di="NegatedToken",fi="cardinality",mi="lookahead",hi="parenthesized",yi="terminal";function gi(e){return hs.isInstance(e,di)}Ue(gi,"isNegatedToken");var Ti="Negation",vi="value";function Ri(e){return hs.isInstance(e,Ti)}Ue(Ri,"isNegation");var $i="NumberLiteral",Ci="value",Ei="Parameter",bi="name",Ai="ParameterReference",Si="parameter";function xi(e){return hs.isInstance(e,Ai)}Ue(xi,"isParameterReference");var ki="ParserRule",wi="dataType",_i="definition",Ni="entry",Ii="fragment",Oi="inferredType",Pi="name",Di="parameters",Li="returnType";function Mi(e){return hs.isInstance(e,ki)}Ue(Mi,"isParserRule");var ji="ReferenceType",Fi="isMulti",Ki="referenceType",Gi="RegexToken",zi="cardinality",qi="lookahead",Ui="parenthesized",Bi="regex";function Vi(e){return hs.isInstance(e,Gi)}Ue(Vi,"isRegexToken");var Wi="ReturnType",Hi="name";function Yi(e){return hs.isInstance(e,Wi)}Ue(Yi,"isReturnType");var Xi="RuleCall",Qi="arguments",Zi="cardinality",Ji="predicate",ea="rule";function ta(e){return hs.isInstance(e,Xi)}Ue(ta,"isRuleCall");var ra="SimpleType",na="primitiveType",ia="stringType",aa="typeRef";function sa(e){return hs.isInstance(e,ra)}Ue(sa,"isSimpleType");var oa="StringLiteral",la="value",ua="TerminalAlternatives",ca="cardinality",pa="elements",da="lookahead",fa="parenthesized";function ma(e){return hs.isInstance(e,ua)}Ue(ma,"isTerminalAlternatives");var ha="TerminalElement",ya="cardinality",ga="lookahead",Ta="parenthesized",va="TerminalGroup",Ra="cardinality",$a="elements",Ca="lookahead",Ea="parenthesized";function ba(e){return hs.isInstance(e,va)}Ue(ba,"isTerminalGroup");var Aa="TerminalRule",Sa="definition",xa="fragment",ka="hidden",wa="name",_a="type";function Na(e){return hs.isInstance(e,Aa)}Ue(Na,"isTerminalRule");var Ia="TerminalRuleCall",Oa="cardinality",Pa="lookahead",Da="parenthesized",La="rule";function Ma(e){return hs.isInstance(e,Ia)}Ue(Ma,"isTerminalRuleCall");var ja="Type",Fa="name",Ka="type";function Ga(e){return hs.isInstance(e,ja)}Ue(Ga,"isType");var za="TypeAttribute",qa="defaultValue",Ua="isOptional",Ba="name",Va="type",Wa="TypeDefinition",Ha="UnionType",Ya="types",Xa="UnorderedGroup",Qa="cardinality",Za="elements";function Ja(e){return hs.isInstance(e,Xa)}Ue(Ja,"isUnorderedGroup");var es="UntilToken",ts="cardinality",rs="lookahead",ns="parenthesized",is="terminal";function as(e){return hs.isInstance(e,es)}Ue(as,"isUntilToken");var ss="ValueLiteral",os="Wildcard",ls="cardinality",us="lookahead",cs="parenthesized";function ps(e){return hs.isInstance(e,os)}Ue(ps,"isWildcard");var ds,fs,ms=class extends Bt{static{Ue(this,"LangiumGrammarAstReflection")}constructor(){super(...arguments),this.types={AbstractElement:{name:hr,properties:{cardinality:{name:yr,optional:!0}},superTypes:[]},AbstractParserRule:{name:Tr,properties:{},superTypes:[Rr,$r]},AbstractRule:{name:Rr,properties:{},superTypes:[]},AbstractType:{name:$r,properties:{},superTypes:[]},Action:{name:Cr,properties:{cardinality:{name:Er,optional:!0},feature:{name:br,optional:!0},inferredType:{name:Ar,optional:!0},operator:{name:Sr,optional:!0},type:{name:xr,referenceType:$r,optional:!0}},superTypes:[hr]},Alternatives:{name:wr,properties:{cardinality:{name:_r,optional:!0},elements:{name:Nr,defaultValue:[]}},superTypes:[hr]},ArrayLiteral:{name:Or,properties:{elements:{name:Pr,defaultValue:[]}},superTypes:[ss]},ArrayType:{name:Dr,properties:{elementType:{name:Lr}},superTypes:[Wa]},Assignment:{name:Mr,properties:{cardinality:{name:jr,optional:!0},feature:{name:Fr},operator:{name:Kr},predicate:{name:Gr,optional:!0},terminal:{name:zr}},superTypes:[hr]},BooleanLiteral:{name:Ur,properties:{true:{name:Br,defaultValue:!1}},superTypes:[en,ss]},CharacterRange:{name:Wr,properties:{cardinality:{name:Hr,optional:!0},left:{name:Yr},lookahead:{name:Xr,optional:!0},parenthesized:{name:Qr,defaultValue:!1,optional:!0},right:{name:Zr,optional:!0}},superTypes:[ha]},Condition:{name:en,properties:{},superTypes:[]},Conjunction:{name:tn,properties:{left:{name:rn},right:{name:nn}},superTypes:[en]},CrossReference:{name:sn,properties:{cardinality:{name:on,optional:!0},deprecatedSyntax:{name:ln,defaultValue:!1},isMulti:{name:un,defaultValue:!1},terminal:{name:cn,optional:!0},type:{name:pn,referenceType:$r}},superTypes:[hr]},Disjunction:{name:fn,properties:{left:{name:mn},right:{name:hn}},superTypes:[en]},EndOfFile:{name:gn,properties:{cardinality:{name:Tn,optional:!0}},superTypes:[hr]},Grammar:{name:Rn,properties:{imports:{name:$n,defaultValue:[]},interfaces:{name:Cn,defaultValue:[]},isDeclared:{name:En,defaultValue:!1},name:{name:bn,optional:!0},rules:{name:An,defaultValue:[]},types:{name:Sn,defaultValue:[]}},superTypes:[]},GrammarImport:{name:xn,properties:{path:{name:kn}},superTypes:[]},Group:{name:wn,properties:{cardinality:{name:_n,optional:!0},elements:{name:Nn,defaultValue:[]},guardCondition:{name:In,optional:!0},predicate:{name:On,optional:!0}},superTypes:[hr]},InferredType:{name:Dn,properties:{name:{name:Ln}},superTypes:[$r]},InfixRule:{name:jn,properties:{call:{name:Fn},dataType:{name:Kn,optional:!0},inferredType:{name:Gn,optional:!0},name:{name:zn},operators:{name:qn},parameters:{name:Un,defaultValue:[]},returnType:{name:Bn,referenceType:$r,optional:!0}},superTypes:[Tr]},InfixRuleOperatorList:{name:Wn,properties:{associativity:{name:Hn,optional:!0},operators:{name:Yn,defaultValue:[]}},superTypes:[]},InfixRuleOperators:{name:Xn,properties:{precedences:{name:Qn,defaultValue:[]}},superTypes:[]},Interface:{name:Zn,properties:{attributes:{name:Jn,defaultValue:[]},name:{name:ei},superTypes:{name:ti,defaultValue:[],referenceType:$r}},superTypes:[$r]},Keyword:{name:ni,properties:{cardinality:{name:ii,optional:!0},predicate:{name:ai,optional:!0},value:{name:si}},superTypes:[hr]},NamedArgument:{name:li,properties:{calledByName:{name:ui,defaultValue:!1},parameter:{name:ci,referenceType:Ei,optional:!0},value:{name:pi}},superTypes:[]},NegatedToken:{name:di,properties:{cardinality:{name:fi,optional:!0},lookahead:{name:mi,optional:!0},parenthesized:{name:hi,defaultValue:!1,optional:!0},terminal:{name:yi}},superTypes:[ha]},Negation:{name:Ti,properties:{value:{name:vi}},superTypes:[en]},NumberLiteral:{name:$i,properties:{value:{name:Ci}},superTypes:[ss]},Parameter:{name:Ei,properties:{name:{name:bi}},superTypes:[]},ParameterReference:{name:Ai,properties:{parameter:{name:Si,referenceType:Ei}},superTypes:[en]},ParserRule:{name:ki,properties:{dataType:{name:wi,optional:!0},definition:{name:_i},entry:{name:Ni,defaultValue:!1},fragment:{name:Ii,defaultValue:!1},inferredType:{name:Oi,optional:!0},name:{name:Pi},parameters:{name:Di,defaultValue:[]},returnType:{name:Li,referenceType:$r,optional:!0}},superTypes:[Tr]},ReferenceType:{name:ji,properties:{isMulti:{name:Fi,defaultValue:!1},referenceType:{name:Ki}},superTypes:[Wa]},RegexToken:{name:Gi,properties:{cardinality:{name:zi,optional:!0},lookahead:{name:qi,optional:!0},parenthesized:{name:Ui,defaultValue:!1,optional:!0},regex:{name:Bi}},superTypes:[ha]},ReturnType:{name:Wi,properties:{name:{name:Hi}},superTypes:[]},RuleCall:{name:Xi,properties:{arguments:{name:Qi,defaultValue:[]},cardinality:{name:Zi,optional:!0},predicate:{name:Ji,optional:!0},rule:{name:ea,referenceType:Rr}},superTypes:[hr]},SimpleType:{name:ra,properties:{primitiveType:{name:na,optional:!0},stringType:{name:ia,optional:!0},typeRef:{name:aa,referenceType:$r,optional:!0}},superTypes:[Wa]},StringLiteral:{name:oa,properties:{value:{name:la}},superTypes:[ss]},TerminalAlternatives:{name:ua,properties:{cardinality:{name:ca,optional:!0},elements:{name:pa,defaultValue:[]},lookahead:{name:da,optional:!0},parenthesized:{name:fa,defaultValue:!1,optional:!0}},superTypes:[ha]},TerminalElement:{name:ha,properties:{cardinality:{name:ya,optional:!0},lookahead:{name:ga,optional:!0},parenthesized:{name:Ta,defaultValue:!1,optional:!0}},superTypes:[hr]},TerminalGroup:{name:va,properties:{cardinality:{name:Ra,optional:!0},elements:{name:$a,defaultValue:[]},lookahead:{name:Ca,optional:!0},parenthesized:{name:Ea,defaultValue:!1,optional:!0}},superTypes:[ha]},TerminalRule:{name:Aa,properties:{definition:{name:Sa},fragment:{name:xa,defaultValue:!1},hidden:{name:ka,defaultValue:!1},name:{name:wa},type:{name:_a,optional:!0}},superTypes:[Rr]},TerminalRuleCall:{name:Ia,properties:{cardinality:{name:Oa,optional:!0},lookahead:{name:Pa,optional:!0},parenthesized:{name:Da,defaultValue:!1,optional:!0},rule:{name:La,referenceType:Aa}},superTypes:[ha]},Type:{name:ja,properties:{name:{name:Fa},type:{name:Ka}},superTypes:[$r]},TypeAttribute:{name:za,properties:{defaultValue:{name:qa,optional:!0},isOptional:{name:Ua,defaultValue:!1},name:{name:Ba},type:{name:Va}},superTypes:[]},TypeDefinition:{name:Wa,properties:{},superTypes:[]},UnionType:{name:Ha,properties:{types:{name:Ya,defaultValue:[]}},superTypes:[Wa]},UnorderedGroup:{name:Xa,properties:{cardinality:{name:Qa,optional:!0},elements:{name:Za,defaultValue:[]}},superTypes:[hr]},UntilToken:{name:es,properties:{cardinality:{name:ts,optional:!0},lookahead:{name:rs,optional:!0},parenthesized:{name:ns,defaultValue:!1,optional:!0},terminal:{name:is}},superTypes:[ha]},ValueLiteral:{name:ss,properties:{},superTypes:[]},Wildcard:{name:os,properties:{cardinality:{name:ls,optional:!0},lookahead:{name:us,optional:!0},parenthesized:{name:cs,defaultValue:!1,optional:!0}},superTypes:[ha]}}}},hs=new ms;function ys(e){return new rr(e,e=>Vt(e)?e.content:[],{includeRoot:!0})}function gs(e,t){for(;e.container;)if((e=e.container)===t)return!0;return!1}function Ts(e){return{start:{line:e.startLine-1,character:e.startColumn-1},end:{line:e.endLine-1,character:e.endColumn}}}function vs(e){const{startOffset:t,endOffset:r}=e;return"number"==typeof t&&Number.isFinite(t)&&t>=0&&"number"==typeof r&&Number.isFinite(r)&&r>=t}function Rs(e){if(!e)return;const{offset:t,end:r,range:n}=e;return{range:n,offset:t,end:r,length:r-t}}function $s(e,t){if(e.end.line<t.start.line||e.end.line===t.start.line&&e.end.character<=t.start.character)return ds.Before;if(e.start.line>t.end.line||e.start.line===t.end.line&&e.start.character>=t.end.character)return ds.After;const r=e.start.line>t.start.line||e.start.line===t.start.line&&e.start.character>=t.start.character,n=e.end.line<t.end.line||e.end.line===t.end.line&&e.end.character<=t.end.character;return r&&n?ds.Inside:r?ds.OverlapBack:n?ds.OverlapFront:ds.Outside}function Cs(e,t){return $s(e,t)>ds.After}Ue(ys,"streamCst"),Ue(gs,"isChildNode"),Ue(Ts,"tokenToRange"),Ue(vs,"isValidTokenRange"),Ue(Rs,"toDocumentSegment"),(fs=ds||(ds={}))[fs.Before=0]="Before",fs[fs.After=1]="After",fs[fs.OverlapFront=2]="OverlapFront",fs[fs.OverlapBack=3]="OverlapBack",fs[fs.Inside=4]="Inside",fs[fs.Outside=5]="Outside",Ue($s,"compareRange"),Ue(Cs,"inRange");var Es=/^[\w\p{L}]$/u;function bs(e,t){if(e){const r=Ss(e,!0);if(r&&As(r,t))return r;if(Ht(e)){for(let r=e.content.findIndex(e=>!e.hidden)-1;r>=0;r--){const n=e.content[r];if(As(n,t))return n}}}}function As(e,t){return Wt(e)&&t.includes(e.tokenType.name)}function Ss(e,t=!0){for(;e.container;){const r=e.container;let n=r.content.indexOf(e);for(;n>0;){n--;const e=r.content[n];if(t||!e.hidden)return e}e=r}}Ue(bs,"findCommentNode"),Ue(As,"isCommentNode"),Ue(Ss,"getPreviousNode");var xs=class extends Error{static{Ue(this,"ErrorWithLocation")}constructor(e,t){const r="string"==typeof t?t:t();super(e?`${r} at ${e.range.start.line}:${e.range.start.character}`:r)}};function ks(e,t="Error: Got unexpected value."){throw new Error("string"==typeof t?t:t())}function ws(e){return e.charCodeAt(0)}function _s(e,t){Array.isArray(e)?e.forEach(function(e){t.push(e)}):t.push(e)}function Ns(e,t){if(!0===e[t])throw"duplicate flag "+t;e[t];e[t]=!0}function Is(e){if(void 0===e)throw Error("Internal Error - Should never get here!");return!0}function Os(){throw Error("Internal Error - Should never get here!")}function Ps(e){return"Character"===e.type}Ue(ks,"assertUnreachable"),Ue(ws,"cc"),Ue(_s,"insertToSet"),Ue(Ns,"addFlag"),Ue(Is,"ASSERT_EXISTS"),Ue(Os,"ASSERT_NEVER_REACH_HERE"),Ue(Ps,"isCharacter");var Ds=[];for(let e=ws("0");e<=ws("9");e++)Ds.push(e);var Ls=[ws("_")].concat(Ds);for(let e=ws("a");e<=ws("z");e++)Ls.push(e);for(let e=ws("A");e<=ws("Z");e++)Ls.push(e);var Ms=[ws(" "),ws("\f"),ws("\n"),ws("\r"),ws("\t"),ws("\v"),ws("\t"),ws(" "),ws(" "),ws(" "),ws(" "),ws(" "),ws(" "),ws(" "),ws(" "),ws(" "),ws(" "),ws(" "),ws(" "),ws(" "),ws("\u2028"),ws("\u2029"),ws(" "),ws(" "),ws(" "),ws("\ufeff")],js=/[0-9a-fA-F]/,Fs=/[0-9]/,Ks=/[1-9]/,Gs=class{static{Ue(this,"RegExpParser")}constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(e){this.idx=e.idx,this.input=e.input,this.groupIdx=e.groupIdx}pattern(e){this.idx=0,this.input=e,this.groupIdx=0,this.consumeChar("/");const t=this.disjunction();this.consumeChar("/");const r={type:"Flags",loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":Ns(r,"global");break;case"i":Ns(r,"ignoreCase");break;case"m":Ns(r,"multiLine");break;case"u":Ns(r,"unicode");break;case"y":Ns(r,"sticky")}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:r,value:t,loc:this.loc(0)}}disjunction(){const e=[],t=this.idx;for(e.push(this.alternative());"|"===this.peekChar();)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(t)}}alternative(){const e=[],t=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(t)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){const e=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(e)};case"$":return{type:"EndAnchor",loc:this.loc(e)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(e)};case"B":return{type:"NonWordBoundary",loc:this.loc(e)}}throw Error("Invalid Assertion Escape");case"(":let t;switch(this.consumeChar("?"),this.popChar()){case"=":t="Lookahead";break;case"!":t="NegativeLookahead";break;case"<":switch(this.popChar()){case"=":t="Lookbehind";break;case"!":t="NegativeLookbehind"}}Is(t);const r=this.disjunction();return this.consumeChar(")"),{type:t,value:r,loc:this.loc(e)}}return Os()}quantifier(e=!1){let t;const r=this.idx;switch(this.popChar()){case"*":t={atLeast:0,atMost:1/0};break;case"+":t={atLeast:1,atMost:1/0};break;case"?":t={atLeast:0,atMost:1};break;case"{":const r=this.integerIncludingZero();switch(this.popChar()){case"}":t={atLeast:r,atMost:r};break;case",":let e;this.isDigit()?(e=this.integerIncludingZero(),t={atLeast:r,atMost:e}):t={atLeast:r,atMost:1/0},this.consumeChar("}")}if(!0===e&&void 0===t)return;Is(t)}if(!0!==e||void 0!==t)return Is(t)?("?"===this.peekChar(0)?(this.consumeChar("?"),t.greedy=!1):t.greedy=!0,t.type="Quantifier",t.loc=this.loc(r),t):void 0}atom(){let e;const t=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group()}return void 0===e&&this.isPatternCharacter()&&(e=this.patternCharacter()),Is(e)?(e.loc=this.loc(t),this.isQuantifier()&&(e.quantifier=this.quantifier()),e):Os()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[ws("\n"),ws("\r"),ws("\u2028"),ws("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let e,t=!1;switch(this.popChar()){case"d":e=Ds;break;case"D":e=Ds,t=!0;break;case"s":e=Ms;break;case"S":e=Ms,t=!0;break;case"w":e=Ls;break;case"W":e=Ls,t=!0}return Is(e)?{type:"Set",value:e,complement:t}:Os()}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=ws("\f");break;case"n":e=ws("\n");break;case"r":e=ws("\r");break;case"t":e=ws("\t");break;case"v":e=ws("\v")}return Is(e)?{type:"Character",value:e}:Os()}controlLetterEscapeAtom(){this.consumeChar("c");const e=this.popChar();if(!1===/[a-zA-Z]/.test(e))throw Error("Invalid ");return{type:"Character",value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:ws("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){return{type:"Character",value:ws(this.popChar())}}classPatternCharacterAtom(){switch(this.peekChar()){case"\n":case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:return{type:"Character",value:ws(this.popChar())}}}characterClass(){const e=[];let t=!1;for(this.consumeChar("["),"^"===this.peekChar(0)&&(this.consumeChar("^"),t=!0);this.isClassAtom();){const t=this.classAtom();t.type;if(Ps(t)&&this.isRangeDash()){this.consumeChar("-");const r=this.classAtom();r.type;if(Ps(r)){if(r.value<t.value)throw Error("Range out of order in character class");e.push({from:t.value,to:r.value})}else _s(t.value,e),e.push(ws("-")),_s(r.value,e)}else _s(t.value,e)}return this.consumeChar("]"),{type:"Set",complement:t,value:e}}classAtom(){switch(this.peekChar()){case"]":case"\n":case"\r":case"\u2028":case"\u2029":throw Error("TBD");case"\\":return this.classEscape();default:return this.classPatternCharacterAtom()}}classEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"b":return this.consumeChar("b"),{type:"Character",value:ws("\b")};case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}group(){let e=!0;if(this.consumeChar("("),"?"===this.peekChar(0))this.consumeChar("?"),this.consumeChar(":"),e=!1;else this.groupIdx++;const t=this.disjunction();this.consumeChar(")");const r={type:"Group",capturing:e,value:t};return e&&(r.idx=this.groupIdx),r}positiveInteger(){let e=this.popChar();if(!1===Ks.test(e))throw Error("Expecting a positive integer");for(;Fs.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}integerIncludingZero(){let e=this.popChar();if(!1===Fs.test(e))throw Error("Expecting an integer");for(;Fs.test(this.peekChar(0));)e+=this.popChar();return parseInt(e,10)}patternCharacter(){const e=this.popChar();switch(e){case"\n":case"\r":case"\u2028":case"\u2029":case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":throw Error("TBD");default:return{type:"Character",value:ws(e)}}}isRegExpFlag(){switch(this.peekChar(0)){case"g":case"i":case"m":case"u":case"y":return!0;default:return!1}}isRangeDash(){return"-"===this.peekChar()&&this.isClassAtom(1)}isDigit(){return Fs.test(this.peekChar(0))}isClassAtom(e=0){switch(this.peekChar(e)){case"]":case"\n":case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}isTerm(){return this.isAtom()||this.isAssertion()}isAtom(){if(this.isPatternCharacter())return!0;switch(this.peekChar(0)){case".":case"\\":case"[":case"(":return!0;default:return!1}}isAssertion(){switch(this.peekChar(0)){case"^":case"$":return!0;case"\\":switch(this.peekChar(1)){case"b":case"B":return!0;default:return!1}case"(":return"?"===this.peekChar(1)&&("="===this.peekChar(2)||"!"===this.peekChar(2)||"<"===this.peekChar(2)&&("="===this.peekChar(3)||"!"===this.peekChar(3)));default:return!1}}isQuantifier(){const e=this.saveState();try{return void 0!==this.quantifier(!0)}catch(e){return!1}finally{this.restoreState(e)}}isPatternCharacter(){switch(this.peekChar()){case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":case"/":case"\n":case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}parseHexDigits(e){let t="";for(let r=0;r<e;r++){const e=this.popChar();if(!1===js.test(e))throw Error("Expecting a HexDecimal digits");t+=e}return{type:"Character",value:parseInt(t,16)}}peekChar(e=0){return this.input[this.idx+e]}popChar(){const e=this.peekChar(0);return this.consumeChar(void 0),e}consumeChar(e){if(void 0!==e&&this.input[this.idx]!==e)throw Error("Expected: '"+e+"' but found: '"+this.input[this.idx]+"' at offset: "+this.idx);if(this.idx>=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(e){return{begin:e,end:this.idx}}},zs=class{static{Ue(this,"BaseRegExpVisitor")}visitChildren(e){for(const t in e){const r=e[t];e.hasOwnProperty(t)&&(void 0!==r.type?this.visit(r):Array.isArray(r)&&r.forEach(e=>{this.visit(e)},this))}}visit(e){switch(e.type){case"Pattern":this.visitPattern(e);break;case"Flags":this.visitFlags(e);break;case"Disjunction":this.visitDisjunction(e);break;case"Alternative":this.visitAlternative(e);break;case"StartAnchor":this.visitStartAnchor(e);break;case"EndAnchor":this.visitEndAnchor(e);break;case"WordBoundary":this.visitWordBoundary(e);break;case"NonWordBoundary":this.visitNonWordBoundary(e);break;case"Lookahead":this.visitLookahead(e);break;case"NegativeLookahead":this.visitNegativeLookahead(e);break;case"Lookbehind":this.visitLookbehind(e);break;case"NegativeLookbehind":this.visitNegativeLookbehind(e);break;case"Character":this.visitCharacter(e);break;case"Set":this.visitSet(e);break;case"Group":this.visitGroup(e);break;case"GroupBackReference":this.visitGroupBackReference(e);break;case"Quantifier":this.visitQuantifier(e)}this.visitChildren(e)}visitPattern(e){}visitFlags(e){}visitDisjunction(e){}visitAlternative(e){}visitStartAnchor(e){}visitEndAnchor(e){}visitWordBoundary(e){}visitNonWordBoundary(e){}visitLookahead(e){}visitNegativeLookahead(e){}visitLookbehind(e){}visitNegativeLookbehind(e){}visitCharacter(e){}visitSet(e){}visitGroup(e){}visitGroupBackReference(e){}visitQuantifier(e){}},qs=/\r?\n/gm,Us=new Gs,Bs=class extends zs{static{Ue(this,"TerminalRegExpVisitor")}constructor(){super(...arguments),this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(e){this.multiline=!1,this.regex=e,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(e){e.quantifier&&(this.isStarting=!1,this.endRegexpStack=[])}visitCharacter(e){const t=String.fromCharCode(e.value);if(this.multiline||"\n"!==t||(this.multiline=!0),e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{const e=Xs(t);this.endRegexpStack.push(e),this.isStarting&&(this.startRegexp+=e)}}visitSet(e){if(!this.multiline){const t=this.regex.substring(e.loc.begin,e.loc.end),r=new RegExp(t);this.multiline=Boolean("\n".match(r))}if(e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{const t=this.regex.substring(e.loc.begin,e.loc.end);this.endRegexpStack.push(t),this.isStarting&&(this.startRegexp+=t)}}visitChildren(e){if("Group"===e.type){if(e.quantifier)return}super.visitChildren(e)}},Vs=new Bs;function Ws(e){try{return"string"==typeof e&&(e=new RegExp(e)),e=e.toString(),Vs.reset(e),Vs.visit(Us.pattern(e)),Vs.multiline}catch{return!1}}Ue(Ws,"isMultilineComment");var Hs="\f\n\r\t\v \u2028\u2029 \ufeff".split("");function Ys(e){const t="string"==typeof e?new RegExp(e):e;return Hs.some(e=>t.test(e))}function Xs(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Qs(e,t){const r=Zs(e),n=t.match(r);return!!n&&n[0].length>0}function Zs(e){"string"==typeof e&&(e=new RegExp(e));const t=e,r=e.source;let n=0;function i(){let e,a="";function s(e){a+=r.substr(n,e),n+=e}function o(e){a+="(?:"+r.substr(n,e)+"|$)",n+=e}for(Ue(s,"appendRaw"),Ue(o,"appendOptional");n<r.length;)switch(r[n]){case"\\":switch(r[n+1]){case"c":o(3);break;case"x":o(4);break;case"u":t.unicode?"{"===r[n+2]?o(r.indexOf("}",n)-n+1):o(6):o(2);break;case"p":case"P":t.unicode?o(r.indexOf("}",n)-n+1):o(2);break;case"k":o(r.indexOf(">",n)-n+1);break;default:o(2)}break;case"[":e=/\[(?:\\.|.)*?\]/g,e.lastIndex=n,e=e.exec(r)||[],o(e[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":s(1);break;case"{":e=/\{\d+,?\d*\}/g,e.lastIndex=n,e=e.exec(r),e?s(e[0].length):o(1);break;case"(":if("?"===r[n+1])switch(r[n+2]){case":":a+="(?:",n+=3,a+=i()+"|$)";break;case"=":a+="(?=",n+=3,a+=i()+")";break;case"!":e=n,n+=3,i(),a+=r.substr(e,n-e);break;case"<":switch(r[n+3]){case"=":case"!":e=n,n+=4,i(),a+=r.substr(e,n-e);break;default:s(r.indexOf(">",n)-n+1),a+=i()+"|$)"}}else s(1),a+=i()+"|$)";break;case")":return++n,a;default:o(1)}return a}return Ue(i,"process"),new RegExp(i(),e.flags)}function Js(e){return e.rules.find(e=>Mi(e)&&e.entry)}function eo(e){return e.rules.filter(e=>Na(e)&&e.hidden)}function to(e,t){const r=new Set,n=Js(e);if(!n)return new Set(e.rules);const i=[n].concat(eo(e));for(const e of i)ro(e,r,t);const a=new Set;for(const t of e.rules)(r.has(t.name)||Na(t)&&t.hidden)&&a.add(t);return a}function ro(e,t,r){t.add(e.name),ur(e).forEach(e=>{if(ta(e)||r&&Ma(e)){const n=e.rule.ref;n&&!t.has(n.name)&&ro(n,t,r)}})}function no(e){if(e.terminal)return e.terminal;if(e.type.ref){const t=po(e.type.ref);return t?.terminal}}function io(e){return e.hidden&&!Ys(Ro(e))}function ao(e,t){return e&&t?oo(e,t,e.astNode,!0):[]}function so(e,t,r){if(!e||!t)return;const n=oo(e,t,e.astNode,!0);return 0!==n.length?n[r=void 0!==r?Math.max(0,Math.min(r,n.length-1)):0]:void 0}function oo(e,t,r,n){if(!n){const r=ir(e.grammarSource,qr);if(r&&r.feature===t)return[e]}return Vt(e)&&e.astNode===r?e.content.flatMap(e=>oo(e,t,r,!1)):[]}function lo(e,t,r){if(!e)return;const n=uo(e,t,e?.astNode);return 0!==n.length?n[r=void 0!==r?Math.max(0,Math.min(r,n.length-1)):0]:void 0}function uo(e,t,r){if(e.astNode!==r)return[];if(oi(e.grammarSource)&&e.grammarSource.value===t)return[e];const n=ys(e).iterator();let i;const a=[];do{if(i=n.next(),!i.done){const e=i.value;e.astNode===r?oi(e.grammarSource)&&e.grammarSource.value===t&&a.push(e):n.prune()}}while(!i.done);return a}function co(e){const t=e.astNode;for(;t===e.container?.astNode;){const t=ir(e.grammarSource,qr);if(t)return t;e=e.container}}function po(e){let t=e;return Mn(t)&&(kr(t.$container)?t=t.$container.$container:vr(t.$container)?t=t.$container:ks(t.$container)),fo(e,t,new Map)}function fo(e,t,r){function n(t,n){let i;return ir(t,qr)||(i=fo(n,n,r)),r.set(e,i),i}if(Ue(n,"go"),r.has(e))return r.get(e);r.set(e,void 0);for(const i of ur(t)){if(qr(i)&&"name"===i.feature.toLowerCase())return r.set(e,i),i;if(ta(i)&&Mi(i.rule.ref))return n(i,i.rule.ref);if(sa(i)&&i.typeRef?.ref)return n(i,i.typeRef.ref)}}function mo(e){return ho(e,new Set)}function ho(e,t){if(t.has(e))return!0;t.add(e);for(const r of ur(e))if(ta(r)){if(!r.rule.ref)return!1;if(Mi(r.rule.ref)&&!ho(r.rule.ref,t))return!1;if(Vn(r.rule.ref))return!1}else{if(qr(r))return!1;if(kr(r))return!1}return Boolean(e.definition)}function yo(e){if(!Na(e)){if(e.inferredType)return e.inferredType.name;if(e.dataType)return e.dataType;if(e.returnType){const t=e.returnType.ref;if(t)return t.name}}}function go(e){if(vr(e))return Mi(e)&&mo(e)?e.name:yo(e)??e.name;if(ri(e)||Ga(e)||Yi(e))return e.name;if(kr(e)){const t=To(e);if(t)return t}else if(Mn(e))return e.name;throw new Error("Cannot get name of Unknown Type")}function To(e){return e.inferredType?e.inferredType.name:e.type?.ref?go(e.type.ref):void 0}function vo(e){return Na(e)?e.type?.name??"string":yo(e)??e.name}function Ro(e){const t={s:!1,i:!1,u:!1},r=Co(e.definition,t),n=Object.entries(t).filter(([,e])=>e).map(([e])=>e).join("");return new RegExp(r,n)}Ue(Ys,"isWhitespace"),Ue(Xs,"escapeRegExp"),Ue(Qs,"partialMatches"),Ue(Zs,"partialRegExp"),Ue(Js,"getEntryRule"),Ue(eo,"getHiddenRules"),Ue(to,"getAllReachableRules"),Ue(ro,"ruleDfs"),Ue(no,"getCrossReferenceTerminal"),Ue(io,"isCommentTerminal"),Ue(ao,"findNodesForProperty"),Ue(so,"findNodeForProperty"),Ue(oo,"findNodesForPropertyInternal"),Ue(lo,"findNodeForKeyword"),Ue(uo,"findNodesForKeywordInternal"),Ue(co,"findAssignment"),Ue(po,"findNameAssignment"),Ue(fo,"findNameAssignmentInternal"),Ue(mo,"isDataTypeRule"),Ue(ho,"isDataTypeRuleInternal"),Ue(yo,"getExplicitRuleType"),Ue(go,"getTypeName"),Ue(To,"getActionType"),Ue(vo,"getRuleType"),Ue(Ro,"terminalRegex");var $o=/[\s\S]/.source;function Co(e,t){if(ma(e))return Eo(e);if(ba(e))return bo(e);if(Jr(e))return xo(e);if(Ma(e)){const t=e.rule.ref;if(!t)throw new Error("Missing rule reference.");return wo(Co(t.definition),{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized})}if(gi(e))return So(e);if(as(e))return Ao(e);if(Vi(e)){const r=e.regex.lastIndexOf("/"),n=e.regex.substring(1,r),i=e.regex.substring(r+1);return t&&(t.i=i.includes("i"),t.s=i.includes("s"),t.u=i.includes("u")),wo(n,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1})}if(ps(e))return wo($o,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized});throw new Error(`Invalid terminal element: ${e?.$type}, ${e?.$cstNode?.text}`)}function Eo(e){return wo(e.elements.map(e=>Co(e)).join("|"),{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1})}function bo(e){return wo(e.elements.map(e=>Co(e)).join(""),{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1})}function Ao(e){return wo(`${$o}*?${Co(e.terminal)}`,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized})}function So(e){return wo(`(?!${Co(e.terminal)})${$o}*?`,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized})}function xo(e){return e.right?wo(`[${ko(e.left)}-${ko(e.right)}]`,{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1}):wo(ko(e.left),{cardinality:e.cardinality,lookahead:e.lookahead,parenthesized:e.parenthesized,wrap:!1})}function ko(e){return Xs(e.value)}function wo(e,t){if(t.parenthesized||t.lookahead||!1!==t.wrap){e=`(${t.lookahead??(t.parenthesized?"":"?:")}${e})`}return t.cardinality?`${e}${t.cardinality}`:e}function _o(e){const t=[],r=e.Grammar;for(const e of r.rules)Na(e)&&io(e)&&Ws(Ro(e))&&t.push(e.name);return{multilineCommentRules:t,nameRegexp:Es}}function No(e){console&&console.error&&console.error(`Error: ${e}`)}function Io(e){console&&console.warn&&console.warn(`Warning: ${e}`)}function Oo(e){const t=(new Date).getTime(),r=e();return{time:(new Date).getTime()-t,value:r}}function Po(e){function t(){}Ue(t,"FakeConstructor"),t.prototype=e;const r=new t;function n(){return typeof r.bar}return Ue(n,"fakeAccess"),n(),n(),e}function Do(e){return Lo(e)?e.LABEL:e.name}function Lo(e){return"string"==typeof e.LABEL&&""!==e.LABEL}Ue(Co,"abstractElementToRegex"),Ue(Eo,"terminalAlternativesToRegex"),Ue(bo,"terminalGroupToRegex"),Ue(Ao,"untilTokenToRegex"),Ue(So,"negateTokenToRegex"),Ue(xo,"characterRangeToRegex"),Ue(ko,"keywordToRegex"),Ue(wo,"withCardinality"),Ue(_o,"createGrammarConfig"),Ue(No,"PRINT_ERROR"),Ue(Io,"PRINT_WARNING"),Ue(Oo,"timer"),Ue(Po,"toFastProperties"),Ue(Do,"tokenLabel"),Ue(Lo,"hasTokenLabel");var Mo=class{static{Ue(this,"AbstractProduction")}get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),this.definition.forEach(t=>{t.accept(e)})}},jo=class extends Mo{static{Ue(this,"NonTerminal")}constructor(e){super([]),this.idx=1,Object.assign(this,Xo(e))}set definition(e){}get definition(){return void 0!==this.referencedRule?this.referencedRule.definition:[]}accept(e){e.visit(this)}},Fo=class extends Mo{static{Ue(this,"Rule")}constructor(e){super(e.definition),this.orgText="",Object.assign(this,Xo(e))}},Ko=class extends Mo{static{Ue(this,"Alternative")}constructor(e){super(e.definition),this.ignoreAmbiguities=!1,Object.assign(this,Xo(e))}},Go=class extends Mo{static{Ue(this,"Option")}constructor(e){super(e.definition),this.idx=1,Object.assign(this,Xo(e))}},zo=class extends Mo{static{Ue(this,"RepetitionMandatory")}constructor(e){super(e.definition),this.idx=1,Object.assign(this,Xo(e))}},qo=class extends Mo{static{Ue(this,"RepetitionMandatoryWithSeparator")}constructor(e){super(e.definition),this.idx=1,Object.assign(this,Xo(e))}},Uo=class extends Mo{static{Ue(this,"Repetition")}constructor(e){super(e.definition),this.idx=1,Object.assign(this,Xo(e))}},Bo=class extends Mo{static{Ue(this,"RepetitionWithSeparator")}constructor(e){super(e.definition),this.idx=1,Object.assign(this,Xo(e))}},Vo=class extends Mo{static{Ue(this,"Alternation")}get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){super(e.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,Object.assign(this,Xo(e))}},Wo=class{static{Ue(this,"Terminal")}constructor(e){this.idx=1,Object.assign(this,Xo(e))}accept(e){e.visit(this)}};function Ho(e){return e.map(Yo)}function Yo(e){function t(e){return e.map(Yo)}if(Ue(t,"convertDefinition"),e instanceof jo){const t={type:"NonTerminal",name:e.nonTerminalName,idx:e.idx};return"string"==typeof e.label&&(t.label=e.label),t}if(e instanceof Ko)return{type:"Alternative",definition:t(e.definition)};if(e instanceof Go)return{type:"Option",idx:e.idx,definition:t(e.definition)};if(e instanceof zo)return{type:"RepetitionMandatory",idx:e.idx,definition:t(e.definition)};if(e instanceof qo)return{type:"RepetitionMandatoryWithSeparator",idx:e.idx,separator:Yo(new Wo({terminalType:e.separator})),definition:t(e.definition)};if(e instanceof Bo)return{type:"RepetitionWithSeparator",idx:e.idx,separator:Yo(new Wo({terminalType:e.separator})),definition:t(e.definition)};if(e instanceof Uo)return{type:"Repetition",idx:e.idx,definition:t(e.definition)};if(e instanceof Vo)return{type:"Alternation",idx:e.idx,definition:t(e.definition)};if(e instanceof Wo){const t={type:"Terminal",name:e.terminalType.name,label:Do(e.terminalType),idx:e.idx};"string"==typeof e.label&&(t.terminalLabel=e.label);const r=e.terminalType.PATTERN;return e.terminalType.PATTERN&&(t.pattern=r instanceof RegExp?r.source:r),t}if(e instanceof Fo)return{type:"Rule",name:e.name,orgText:e.orgText,definition:t(e.definition)};throw Error("non exhaustive match")}function Xo(e){return Object.fromEntries(Object.entries(e).filter(([,e])=>void 0!==e))}Ue(Ho,"serializeGrammar"),Ue(Yo,"serializeProduction"),Ue(Xo,"pickOnlyDefined");var Qo=class{static{Ue(this,"GAstVisitor")}visit(e){const t=e;switch(t.constructor){case jo:return this.visitNonTerminal(t);case Ko:return this.visitAlternative(t);case Go:return this.visitOption(t);case zo:return this.visitRepetitionMandatory(t);case qo:return this.visitRepetitionMandatoryWithSeparator(t);case Bo:return this.visitRepetitionWithSeparator(t);case Uo:return this.visitRepetition(t);case Vo:return this.visitAlternation(t);case Wo:return this.visitTerminal(t);case Fo:return this.visitRule(t);default:throw Error("non exhaustive match")}}visitNonTerminal(e){}visitAlternative(e){}visitOption(e){}visitRepetition(e){}visitRepetitionMandatory(e){}visitRepetitionMandatoryWithSeparator(e){}visitRepetitionWithSeparator(e){}visitAlternation(e){}visitTerminal(e){}visitRule(e){}};function Zo(e){return e instanceof Ko||e instanceof Go||e instanceof Uo||e instanceof zo||e instanceof qo||e instanceof Bo||e instanceof Wo||e instanceof Fo}function Jo(e,t=[]){return!!(e instanceof Go||e instanceof Uo||e instanceof Bo)||(e instanceof Vo?e.definition.some(e=>Jo(e,t)):!(e instanceof jo&&t.includes(e))&&(e instanceof Mo&&(e instanceof jo&&t.push(e),e.definition.every(e=>Jo(e,t)))))}function el(e){return e instanceof Vo}function tl(e){if(e instanceof jo)return"SUBRULE";if(e instanceof Go)return"OPTION";if(e instanceof Vo)return"OR";if(e instanceof zo)return"AT_LEAST_ONE";if(e instanceof qo)return"AT_LEAST_ONE_SEP";if(e instanceof Bo)return"MANY_SEP";if(e instanceof Uo)return"MANY";if(e instanceof Wo)return"CONSUME";throw Error("non exhaustive match")}Ue(Zo,"isSequenceProd"),Ue(Jo,"isOptionalProd"),Ue(el,"isBranchingProd"),Ue(tl,"getProductionDslName");var rl=class{static{Ue(this,"RestWalker")}walk(e,t=[]){e.definition.forEach((r,n)=>{const i=e.definition.slice(n+1);if(r instanceof jo)this.walkProdRef(r,i,t);else if(r instanceof Wo)this.walkTerminal(r,i,t);else if(r instanceof Ko)this.walkFlat(r,i,t);else if(r instanceof Go)this.walkOption(r,i,t);else if(r instanceof zo)this.walkAtLeastOne(r,i,t);else if(r instanceof qo)this.walkAtLeastOneSep(r,i,t);else if(r instanceof Bo)this.walkManySep(r,i,t);else if(r instanceof Uo)this.walkMany(r,i,t);else{if(!(r instanceof Vo))throw Error("non exhaustive match");this.walkOr(r,i,t)}})}walkTerminal(e,t,r){}walkProdRef(e,t,r){}walkFlat(e,t,r){const n=t.concat(r);this.walk(e,n)}walkOption(e,t,r){const n=t.concat(r);this.walk(e,n)}walkAtLeastOne(e,t,r){const n=[new Go({definition:e.definition})].concat(t,r);this.walk(e,n)}walkAtLeastOneSep(e,t,r){const n=nl(e,t,r);this.walk(e,n)}walkMany(e,t,r){const n=[new Go({definition:e.definition})].concat(t,r);this.walk(e,n)}walkManySep(e,t,r){const n=nl(e,t,r);this.walk(e,n)}walkOr(e,t,r){const n=t.concat(r);e.definition.forEach(e=>{const t=new Ko({definition:[e]});this.walk(t,n)})}};function nl(e,t,r){return[new Go({definition:[new Wo({terminalType:e.separator})].concat(e.definition)})].concat(t,r)}function il(e){if(e instanceof jo)return il(e.referencedRule);if(e instanceof Wo)return ol(e);if(Zo(e))return al(e);if(el(e))return sl(e);throw Error("non exhaustive match")}function al(e){let t=[];const r=e.definition;let n,i=0,a=r.length>i,s=!0;for(;a&&s;)n=r[i],s=Jo(n),t=t.concat(il(n)),i+=1,a=r.length>i;return[...new Set(t)]}function sl(e){const t=e.definition.map(e=>il(e));return[...new Set(t.flat())]}function ol(e){return[e.terminalType]}Ue(nl,"restForRepetitionWithSeparator"),Ue(il,"first"),Ue(al,"firstForSequence"),Ue(sl,"firstForBranching"),Ue(ol,"firstForTerminal");var ll="_~IN~_",ul=class extends rl{static{Ue(this,"ResyncFollowsWalker")}constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,t,r){}walkProdRef(e,t,r){const n=pl(e.referencedRule,e.idx)+this.topProd.name,i=t.concat(r),a=il(new Ko({definition:i}));this.follows[n]=a}};function cl(e){const t={};return e.forEach(e=>{const r=new ul(e).startWalking();Object.assign(t,r)}),t}function pl(e,t){return e.name+t+ll}Ue(cl,"computeAllProdsFollows"),Ue(pl,"buildBetweenProdsFollowPrefix");var dl={},fl=new Gs;function ml(e){const t=e.toString();if(dl.hasOwnProperty(t))return dl[t];{const e=fl.pattern(t);return dl[t]=e,e}}function hl(){dl={}}Ue(ml,"getRegExpAst"),Ue(hl,"clearRegExpParserCache");var yl="Complement Sets are not supported for first char optimization",gl='Unable to use "first char" lexer optimizations:\n';function Tl(e,t=!1){try{const t=ml(e);return vl(t.value,{},t.flags.ignoreCase)}catch(r){if(r.message===yl)t&&Io(`${gl}\tUnable to optimize: < ${e.toString()} >\n\tComplement Sets cannot be automatically optimized.\n\tThis will disable the lexer's first char optimizations.\n\tSee: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{let r="";t&&(r="\n\tThis will disable the lexer's first char optimizations.\n\tSee: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details."),No(`${gl}\n\tFailed parsing: < ${e.toString()} >\n\tUsing the @chevrotain/regexp-to-ast library\n\tPlease open an issue at: https://github.com/chevrotain/chevrotain/issues`+r)}}return[]}function vl(e,t,r){switch(e.type){case"Disjunction":for(let n=0;n<e.value.length;n++)vl(e.value[n],t,r);break;case"Alternative":const n=e.value;for(let e=0;e<n.length;e++){const i=n[e];switch(i.type){case"EndAnchor":case"GroupBackReference":case"Lookahead":case"NegativeLookahead":case"Lookbehind":case"NegativeLookbehind":case"StartAnchor":case"WordBoundary":case"NonWordBoundary":continue}const a=i;switch(a.type){case"Character":Rl(a.value,t,r);break;case"Set":if(!0===a.complement)throw Error(yl);a.value.forEach(e=>{if("number"==typeof e)Rl(e,t,r);else{const n=e;if(!0===r)for(let e=n.from;e<=n.to;e++)Rl(e,t,r);else{for(let e=n.from;e<=n.to&&e<iu;e++)Rl(e,t,r);if(n.to>=iu){const e=n.from>=iu?n.from:iu,r=n.to,i=su(e),a=su(r);for(let e=i;e<=a;e++)t[e]=e}}}});break;case"Group":vl(a.value,t,r);break;default:throw Error("Non Exhaustive Match")}const s=void 0!==a.quantifier&&0===a.quantifier.atLeast;if("Group"===a.type&&!1===El(a)||"Group"!==a.type&&!1===s)break}break;default:throw Error("non exhaustive match!")}return Object.values(t)}function Rl(e,t,r){const n=su(e);t[n]=n,!0===r&&$l(e,t)}function $l(e,t){const r=String.fromCharCode(e),n=r.toUpperCase();if(n!==r){const e=su(n.charCodeAt(0));t[e]=e}else{const e=r.toLowerCase();if(e!==r){const r=su(e.charCodeAt(0));t[r]=r}}}function Cl(e,t){return e.value.find(e=>{if("number"==typeof e)return t.includes(e);{const r=e;return void 0!==t.find(e=>r.from<=e&&e<=r.to)}})}function El(e){const t=e.quantifier;return!(!t||0!==t.atLeast)||!!e.value&&(Array.isArray(e.value)?e.value.every(El):El(e.value))}Ue(Tl,"getOptimizedStartCodesIndices"),Ue(vl,"firstCharOptimizedIndices"),Ue(Rl,"addOptimizedIdxToResult"),Ue($l,"handleIgnoreCase"),Ue(Cl,"findCode"),Ue(El,"isWholeOptional");var bl=class extends zs{static{Ue(this,"CharCodeFinder")}constructor(e){super(),this.targetCharCodes=e,this.found=!1}visitChildren(e){if(!0!==this.found){switch(e.type){case"Lookahead":return void this.visitLookahead(e);case"NegativeLookahead":return void this.visitNegativeLookahead(e);case"Lookbehind":return void this.visitLookbehind(e);case"NegativeLookbehind":return void this.visitNegativeLookbehind(e)}super.visitChildren(e)}}visitCharacter(e){this.targetCharCodes.includes(e.value)&&(this.found=!0)}visitSet(e){e.complement?void 0===Cl(e,this.targetCharCodes)&&(this.found=!0):void 0!==Cl(e,this.targetCharCodes)&&(this.found=!0)}};function Al(e,t){if(t instanceof RegExp){const r=ml(t),n=new bl(e);return n.visit(r),n.found}for(const r of t){const t=r.charCodeAt(0);if(e.includes(t))return!0}return!1}Ue(Al,"canMatchCharCode");var Sl="PATTERN",xl="defaultMode",kl="modes";function wl(e,t){const r=(t=Object.assign({safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r","\n"],tracer:Ue((e,t)=>t(),"tracer")},t)).tracer;let n;r("initCharCodeToOptimizedIndexMap",()=>{ou()}),r("Reject Lexer.NA",()=>{n=e.filter(e=>e[Sl]!==xu.NA)});let i,a,s,o,l,u,c,p,d,f,m,h=!1;r("Transform Patterns",()=>{h=!1,i=n.map(e=>{const t=e[Sl];if(t instanceof RegExp){const e=t.source;return 1!==e.length||"^"===e||"$"===e||"."===e||t.ignoreCase?2!==e.length||"\\"!==e[0]||["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"].includes(e[1])?Hl(t):e[1]:e}if("function"==typeof t)return h=!0,{exec:t};if("object"==typeof t)return h=!0,t;if("string"==typeof t){if(1===t.length)return t;{const e=t.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&");return Hl(new RegExp(e))}}throw Error("non exhaustive match")})}),r("misc mapping",()=>{a=n.map(e=>e.tokenTypeIdx),s=n.map(e=>{const t=e.GROUP;if(t!==xu.SKIPPED){if("string"==typeof t)return t;if(void 0===t)return!1;throw Error("non exhaustive match")}}),o=n.map(e=>{const t=e.LONGER_ALT;if(t){return Array.isArray(t)?t.map(e=>n.indexOf(e)):[n.indexOf(t)]}}),l=n.map(e=>e.PUSH_MODE),u=n.map(e=>Object.hasOwn(e,"POP_MODE"))}),r("Line Terminator Handling",()=>{const e=ru(t.lineTerminatorCharacters);c=n.map(e=>!1),"onlyOffset"!==t.positionTracking&&(c=n.map(t=>Object.hasOwn(t,"LINE_BREAKS")?!!t.LINE_BREAKS:!1===eu(t,e)&&Al(e,t.PATTERN)))}),r("Misc Mapping #2",()=>{p=n.map(Ql),d=i.map(Zl),f=n.reduce((e,t)=>{const r=t.GROUP;return"string"==typeof r&&r!==xu.SKIPPED&&(e[r]=[]),e},{}),m=i.map((e,t)=>{const r=void 0===s[t]&&void 0===o[t]?_l(n[t].PATTERN):void 0;return{pattern:i[t],asciiClass:r,longerAlt:o[t],canLineTerminator:c[t],matchType:void 0!==r?3:!1!==d[t]?0:p[t]?1:2,short:d[t],group:s[t],push:l[t],pop:u[t],tokenTypeIdx:a[t],tokenType:n[t]}})});let y=!0,g=[];return t.safeMode||r("First Char Optimization",()=>{g=n.reduce((e,r,n)=>{if("string"==typeof r.PATTERN){const t=su(r.PATTERN.charCodeAt(0));nu(e,t,m[n])}else if(Array.isArray(r.START_CHARS_HINT)){let t;r.START_CHARS_HINT.forEach(r=>{const i=su("string"==typeof r?r.charCodeAt(0):r);t!==i&&(t=i,nu(e,i,m[n]))})}else if(r.PATTERN instanceof RegExp)if(r.PATTERN.unicode)y=!1,t.ensureOptimizations&&No(`${gl}\tUnable to analyze < ${r.PATTERN.toString()} > pattern.\n\tThe regexp unicode flag is not currently supported by the regexp-to-ast library.\n\tThis will disable the lexer's first char optimizations.\n\tFor details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{const i=Tl(r.PATTERN,t.ensureOptimizations);0===i.length&&(y=!1),i.forEach(t=>{nu(e,t,m[n])})}else t.ensureOptimizations&&No(`${gl}\tTokenType: <${r.name}> is using a custom token pattern without providing <start_chars_hint> parameter.\n\tThis will disable the lexer's first char optimizations.\n\tFor details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),y=!1;return e},[])}),{emptyGroups:f,patternIdxToConfig:m,charCodeToPatternIdxToConfig:g,hasCustom:h,canBeOptimized:y}}function _l(e){var t,r;if(!(e instanceof RegExp)||""!==e.flags)return;let n;try{n=ml(e)}catch(e){return}if(1!==n.value.value.length||1!==n.value.value[0].value.length)return;let i,a=n.value.value[0].value[0];for(;"Group"===a.type;){if(a.capturing||void 0!==a.quantifier&&void 0!==i||1!==a.value.value.length||1!==a.value.value[0].value.length)return;i=null!==(t=a.quantifier)&&void 0!==t?t:i,a=a.value.value[0].value[0]}if("Set"!==a.type||a.complement||void 0!==a.quantifier&&void 0!==i)return;if(i=null!==(r=a.quantifier)&&void 0!==r?r:i,1!==(null==i?void 0:i.atLeast)||i.atMost!==1/0||!i.greedy)return;const s=new Uint8Array(128);for(const e of a.value){const t="number"==typeof e?e:e.from,r="number"==typeof e?e:e.to;if(t<0||r>=s.length)return;s.fill(1,t,r+1)}return s}function Nl(e,t){let r=[];const n=Ol(e);r=r.concat(n.errors);const i=Pl(n.valid),a=i.valid;return r=r.concat(i.errors),r=r.concat(Il(a)),r=r.concat(zl(a)),r=r.concat(ql(a,t)),r=r.concat(Ul(a)),r}function Il(e){let t=[];const r=e.filter(e=>e[Sl]instanceof RegExp);return t=t.concat(Ll(r)),t=t.concat(Fl(r)),t=t.concat(Kl(r)),t=t.concat(Gl(r)),t=t.concat(Ml(r)),t}function Ol(e){const t=e.filter(e=>!Object.hasOwn(e,Sl));return{errors:t.map(e=>({message:"Token Type: ->"+e.name+"<- missing static 'PATTERN' property",type:Eu.MISSING_PATTERN,tokenTypes:[e]})),valid:e.filter(e=>!t.includes(e))}}function Pl(e){const t=e.filter(e=>{const t=e[Sl];return!(t instanceof RegExp||"function"==typeof t||Object.hasOwn(t,"exec")||"string"==typeof t)});return{errors:t.map(e=>({message:"Token Type: ->"+e.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:Eu.INVALID_PATTERN,tokenTypes:[e]})),valid:e.filter(e=>!t.includes(e))}}Ue(wl,"analyzeTokenTypes"),Ue(_l,"getAsciiClass"),Ue(Nl,"validatePatterns"),Ue(Il,"validateRegExpPattern"),Ue(Ol,"findMissingPatterns"),Ue(Pl,"findInvalidPatterns");var Dl=/[^\\][$]/;function Ll(e){class t extends zs{static{Ue(this,"EndAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitEndAnchor(e){this.found=!0}}return e.filter(e=>{const r=e.PATTERN;try{const e=ml(r),n=new t;return n.visit(e),n.found}catch(e){return Dl.test(r.source)}}).map(e=>({message:"Unexpected RegExp Anchor Error:\n\tToken Type: ->"+e.name+"<- static 'PATTERN' cannot contain end of input anchor '$'\n\tSee chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS\tfor details.",type:Eu.EOI_ANCHOR_FOUND,tokenTypes:[e]}))}function Ml(e){return e.filter(e=>e.PATTERN.test("")).map(e=>({message:"Token Type: ->"+e.name+"<- static 'PATTERN' must not match an empty string",type:Eu.EMPTY_MATCH_PATTERN,tokenTypes:[e]}))}Ue(Ll,"findEndOfInputAnchor"),Ue(Ml,"findEmptyMatchRegExps");var jl=/[^\\[][\^]|^\^/;function Fl(e){class t extends zs{static{Ue(this,"StartAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitStartAnchor(e){this.found=!0}}return e.filter(e=>{const r=e.PATTERN;try{const e=ml(r),n=new t;return n.visit(e),n.found}catch(e){return jl.test(r.source)}}).map(e=>({message:"Unexpected RegExp Anchor Error:\n\tToken Type: ->"+e.name+"<- static 'PATTERN' cannot contain start of input anchor '^'\n\tSee https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS\tfor details.",type:Eu.SOI_ANCHOR_FOUND,tokenTypes:[e]}))}function Kl(e){return e.filter(e=>{const t=e[Sl];return t instanceof RegExp&&(t.multiline||t.global)}).map(e=>({message:"Token Type: ->"+e.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:Eu.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[e]}))}function Gl(e){const t=[];let r=e.map(r=>e.reduce((e,n)=>(r.PATTERN.source!==n.PATTERN.source||t.includes(n)||n.PATTERN===xu.NA||(t.push(n),e.push(n)),e),[]));r=r.filter(Boolean);return r.filter(e=>e.length>1).map(e=>{const t=e.map(e=>e.name);return{message:`The same RegExp pattern ->${e[0].PATTERN}<-has been used in all of the following Token Types: ${t.join(", ")} <-`,type:Eu.DUPLICATE_PATTERNS_FOUND,tokenTypes:e}})}function zl(e){return e.filter(e=>{if(!Object.hasOwn(e,"GROUP"))return!1;const t=e.GROUP;return t!==xu.SKIPPED&&t!==xu.NA&&!("string"==typeof t)}).map(e=>({message:"Token Type: ->"+e.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:Eu.INVALID_GROUP_TYPE_FOUND,tokenTypes:[e]}))}function ql(e,t){return e.filter(e=>void 0!==e.PUSH_MODE&&!t.includes(e.PUSH_MODE)).map(e=>({message:`Token Type: ->${e.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${e.PUSH_MODE}<-which does not exist`,type:Eu.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[e]}))}function Ul(e){const t=[],r=e.reduce((e,t,r)=>{const n=t.PATTERN;return n===xu.NA||("string"==typeof n?e.push({str:n,idx:r,tokenType:t}):n instanceof RegExp&&Vl(n)&&e.push({str:n.source,idx:r,tokenType:t})),e},[]);return e.forEach((e,n)=>{r.forEach(({str:r,idx:i,tokenType:a})=>{if(n<i&&Bl(r,e.PATTERN)){const r=`Token: ->${a.name}<- can never be matched.\nBecause it appears AFTER the Token Type ->${e.name}<-in the lexer's definition.\nSee https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;t.push({message:r,type:Eu.UNREACHABLE_PATTERN,tokenTypes:[e,a]})}})}),t}function Bl(e,t){if(t instanceof RegExp){if(Wl(t))return!1;const r=t.exec(e);return null!==r&&0===r.index}if("function"==typeof t)return t(e,0,[],{});if(Object.hasOwn(t,"exec"))return t.exec(e,0,[],{});if("string"==typeof t)return t===e;throw Error("non exhaustive match")}function Vl(e){return void 0===[".","\\","[","]","|","^","$","(",")","?","*","+","{"].find(t=>-1!==e.source.indexOf(t))}function Wl(e){return/(\(\?=)|(\(\?!)|(\(\?<=)|(\(\?<!)/.test(e.source)}function Hl(e){const t=e.ignoreCase?"iy":"y";return new RegExp(`${e.source}`,t)}function Yl(e,t,r){const n=[];return Object.hasOwn(e,xl)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+xl+"> property in its definition\n",type:Eu.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),Object.hasOwn(e,kl)||n.push({message:"A MultiMode Lexer cannot be initialized without a <modes> property in its definition\n",type:Eu.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),Object.hasOwn(e,kl)&&Object.hasOwn(e,xl)&&!Object.hasOwn(e.modes,e.defaultMode)&&n.push({message:`A MultiMode Lexer cannot be initialized with a ${xl}: <${e.defaultMode}>which does not exist\n`,type:Eu.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),Object.hasOwn(e,kl)&&Object.keys(e.modes).forEach(t=>{const r=e.modes[t];r.forEach((e,i)=>{if(void 0===e)n.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${t}> at index: <${i}>\n`,type:Eu.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if(Object.hasOwn(e,"LONGER_ALT")){(Array.isArray(e.LONGER_ALT)?e.LONGER_ALT:[e.LONGER_ALT]).forEach(i=>{void 0===i||r.includes(i)||n.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${i.name}> on token <${e.name}> outside of mode <${t}>\n`,type:Eu.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})}})}),n}function Xl(e,t,r){const n=[];let i=!1;const a=Object.values(e.modes||{}).flat().filter(Boolean).filter(e=>e[Sl]!==xu.NA),s=ru(r);return t&&a.forEach(e=>{const t=eu(e,s);if(!1!==t){const r={message:tu(e,t),type:t.issue,tokenType:e};n.push(r)}else Object.hasOwn(e,"LINE_BREAKS")?!0===e.LINE_BREAKS&&(i=!0):Al(s,e.PATTERN)&&(i=!0)}),t&&!i&&n.push({message:"Warning: No LINE_BREAKS Found.\n\tThis Lexer has been defined to track line and column information,\n\tBut none of the Token Types can be identified as matching a line terminator.\n\tSee https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS \n\tfor details.",type:Eu.NO_LINE_BREAKS_FLAGS}),n}function Ql(e){const t=e.PATTERN;if(t instanceof RegExp)return!1;if("function"==typeof t)return!0;if(Object.hasOwn(t,"exec"))return!0;if("string"==typeof t)return!1;throw Error("non exhaustive match")}function Zl(e){return"string"==typeof e&&1===e.length&&e.charCodeAt(0)}Ue(Fl,"findStartOfInputAnchor"),Ue(Kl,"findUnsupportedFlags"),Ue(Gl,"findDuplicatePatterns"),Ue(zl,"findInvalidGroupType"),Ue(ql,"findModesThatDoNotExist"),Ue(Ul,"findUnreachablePatterns"),Ue(Bl,"tryToMatchStrToPattern"),Ue(Vl,"noMetaChar"),Ue(Wl,"usesLookAheadOrBehind"),Ue(Hl,"addStickyFlag"),Ue(Yl,"performRuntimeChecks"),Ue(Xl,"performWarningRuntimeChecks"),Ue(Ql,"isCustomPattern"),Ue(Zl,"isShortPattern");var Jl={test:Ue(function(e){const t=e.length;for(let r=this.lastIndex;r<t;r++){const t=e.charCodeAt(r);if(10===t)return this.lastIndex=r+1,!0;if(13===t)return 10===e.charCodeAt(r+1)?this.lastIndex=r+2:this.lastIndex=r+1,!0}return!1},"test"),lastIndex:0};function eu(e,t){if(Object.hasOwn(e,"LINE_BREAKS"))return!1;if(e.PATTERN instanceof RegExp){try{Al(t,e.PATTERN)}catch(e){return{issue:Eu.IDENTIFY_TERMINATOR,errMsg:e.message}}return!1}if("string"==typeof e.PATTERN)return!1;if(Ql(e))return{issue:Eu.CUSTOM_LINE_BREAK};throw Error("non exhaustive match")}function tu(e,t){if(t.issue===Eu.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern.\n\tThe problem is in the <${e.name}> Token Type\n\t Root cause: ${t.errMsg}.\n\tFor details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(t.issue===Eu.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the <line_breaks> option.\n\tThe problem is in the <${e.name}> Token Type\n\tFor details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}function ru(e){return e.map(e=>"string"==typeof e?e.charCodeAt(0):e)}function nu(e,t,r){void 0===e[t]?e[t]=[r]:e[t].push(r)}Ue(eu,"checkLineBreaksIssues"),Ue(tu,"buildLineBreakIssueMessage"),Ue(ru,"getCharCodes"),Ue(nu,"addToMapOfArrays");var iu=256,au=[];function su(e){return e<iu?e:au[e]}function ou(){if(0===au.length){au=new Array(65536);for(let e=0;e<65536;e++)au[e]=e>255?255+~~(e/255):e}}function lu(e,t){const r=e.tokenTypeIdx;return r===t.tokenTypeIdx||!0===t.isParent&&!0===t.categoryMatchesMap[r]}function uu(e,t){return e.tokenTypeIdx===t.tokenTypeIdx}Ue(su,"charCodeToOptimizedIndex"),Ue(ou,"initCharCodeToOptimizedIndexMap"),Ue(lu,"tokenStructuredMatcher"),Ue(uu,"tokenStructuredMatcherNoCategories");var cu=1,pu={};function du(e){const t=fu(e);mu(t),yu(t),hu(t),t.forEach(e=>{e.isParent=e.categoryMatches.length>0})}function fu(e){let t=[...e],r=e,n=!0;for(;n;){r=r.map(e=>e.CATEGORIES).flat().filter(Boolean);const e=r.filter(e=>!t.includes(e));t=t.concat(e),0===e.length?n=!1:r=e}return t}function mu(e){e.forEach(e=>{Tu(e)||(pu[cu]=e,e.tokenTypeIdx=cu++),vu(e)&&!Array.isArray(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),vu(e)||(e.CATEGORIES=[]),Ru(e)||(e.categoryMatches=[]),$u(e)||(e.categoryMatchesMap={})})}function hu(e){e.forEach(e=>{e.categoryMatches=[],Object.keys(e.categoryMatchesMap).forEach(t=>{e.categoryMatches.push(pu[t].tokenTypeIdx)})})}function yu(e){e.forEach(e=>{gu([],e)})}function gu(e,t){e.forEach(e=>{t.categoryMatchesMap[e.tokenTypeIdx]=!0}),t.CATEGORIES.forEach(r=>{const n=e.concat(t);n.includes(r)||gu(n,r)})}function Tu(e){return Object.hasOwn(null!=e?e:{},"tokenTypeIdx")}function vu(e){return Object.hasOwn(null!=e?e:{},"CATEGORIES")}function Ru(e){return Object.hasOwn(null!=e?e:{},"categoryMatches")}function $u(e){return Object.hasOwn(null!=e?e:{},"categoryMatchesMap")}function Cu(e){return Object.hasOwn(null!=e?e:{},"tokenTypeIdx")}Ue(du,"augmentTokenTypes"),Ue(fu,"expandCategories"),Ue(mu,"assignTokenDefaultProps"),Ue(hu,"assignCategoriesTokensProp"),Ue(yu,"assignCategoriesMapProp"),Ue(gu,"singleAssignCategoriesToksMap"),Ue(Tu,"hasShortKeyProperty"),Ue(vu,"hasCategoriesProperty"),Ue(Ru,"hasExtendingTokensTypesProperty"),Ue($u,"hasExtendingTokensTypesMapProperty"),Ue(Cu,"isTokenType");var Eu,bu,Au={buildUnableToPopLexerModeMessage:e=>`Unable to pop Lexer Mode after encountering Token ->${e.image}<- The Mode Stack is empty`,buildUnexpectedCharactersMessage:(e,t,r,n,i,a)=>`unexpected character: ->${e.charAt(t)}<- at offset: ${t}, skipped ${r} characters.`};(bu=Eu||(Eu={}))[bu.MISSING_PATTERN=0]="MISSING_PATTERN",bu[bu.INVALID_PATTERN=1]="INVALID_PATTERN",bu[bu.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",bu[bu.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",bu[bu.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",bu[bu.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",bu[bu.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",bu[bu.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",bu[bu.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",bu[bu.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",bu[bu.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",bu[bu.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",bu[bu.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",bu[bu.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",bu[bu.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",bu[bu.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",bu[bu.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",bu[bu.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE";var Su={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:["\n","\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:Au,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(Su);var xu=class{static{Ue(this,"Lexer")}constructor(e,t=Su){if(this.lexerDefinition=e,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.cachedGroupKeys=[],this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},this.TRACE_INIT=(e,t)=>{if(!0===this.traceInitPerf){this.traceInitIndent++;const r=new Array(this.traceInitIndent+1).join("\t");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${r}--\x3e <${e}>`);const{time:n,value:i}=Oo(t),a=n>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&a(`${r}<-- <${e}> time: ${n}ms`),this.traceInitIndent--,i}return t()},"boolean"==typeof t)throw Error("The second argument to the Lexer constructor is now an ILexerConfig Object.\na boolean 2nd argument is no longer supported");this.config=Object.assign({},Su,t);const r=this.config.traceInitPerf;!0===r?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):"number"==typeof r&&(this.traceInitMaxIdent=r,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let r,n=!0;this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===Su.lineTerminatorsPattern)this.config.lineTerminatorsPattern=Jl;else if(this.config.lineTerminatorCharacters===Su.lineTerminatorCharacters)throw Error("Error: Missing <lineTerminatorCharacters> property on the Lexer config.\n\tFor details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS");if(t.safeMode&&t.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');this.trackStartLines=/full|onlyStart/i.test(this.config.positionTracking),this.trackEndLines=/full/i.test(this.config.positionTracking),Array.isArray(e)?r={modes:{defaultMode:[...e]},defaultMode:xl}:(n=!1,r=Object.assign({},e))}),!1===this.config.skipValidations&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(Yl(r,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(Xl(r,this.trackStartLines,this.config.lineTerminatorCharacters))})),r.modes=r.modes?r.modes:{},Object.entries(r.modes).forEach(([e,t])=>{r.modes[e]=t.filter(e=>void 0!==e)});const i=Object.keys(r.modes);if(Object.entries(r.modes).forEach(([e,r])=>{this.TRACE_INIT(`Mode: <${e}> processing`,()=>{if(this.modes.push(e),!1===this.config.skipValidations&&this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(Nl(r,i))}),0===this.lexerDefinitionErrors.length){let n;du(r),this.TRACE_INIT("analyzeTokenTypes",()=>{n=wl(r,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:t.positionTracking,ensureOptimizations:t.ensureOptimizations,safeMode:t.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[e]=n.patternIdxToConfig,this.charCodeToPatternIdxToConfig[e]=n.charCodeToPatternIdxToConfig,this.emptyGroups=Object.assign({},this.emptyGroups,n.emptyGroups),this.hasCustom=n.hasCustom||this.hasCustom,this.canModeBeOptimized[e]=n.canBeOptimized}})}),this.defaultMode=r.defaultMode,this.cachedGroupKeys=Object.keys(this.emptyGroups),this.lexerDefinitionErrors.length>0&&!this.config.deferDefinitionErrorsHandling){const e=this.lexerDefinitionErrors.map(e=>e.message).join("-----------------------\n");throw new Error("Errors detected in definition of Lexer:\n"+e)}this.lexerDefinitionWarning.forEach(e=>{Io(e.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(n&&(this.handleModes=()=>{}),!1===this.trackStartLines&&(this.computeNewColumn=e=>e),!1===this.trackEndLines&&(this.updateTokenEndLineColumnLocation=()=>{}),/full/i.test(this.config.positionTracking))this.createTokenInstance=this.createFullToken;else if(/onlyStart/i.test(this.config.positionTracking))this.createTokenInstance=this.createStartOnlyToken;else{if(!/onlyOffset/i.test(this.config.positionTracking))throw Error(`Invalid <positionTracking> config option: "${this.config.positionTracking}"`);this.createTokenInstance=this.createOffsetOnlyToken}this.hasCustom?(this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom):(this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom)}),this.TRACE_INIT("Failed Optimization Warnings",()=>{const e=Object.entries(this.canModeBeOptimized).reduce((e,[t,r])=>(!1===r&&e.push(t),e),[]);if(t.ensureOptimizations&&e.length>0)throw Error(`Lexer Modes: < ${e.join(", ")} > cannot be optimized.\n\t Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode.\n\t Or inspect the console log for details on how to resolve these issues.`)}),this.TRACE_INIT("clearRegExpParserCache",()=>{hl()}),this.TRACE_INIT("toFastProperties",()=>{Po(this)})})}tokenize(e,t=this.defaultMode){if(this.lexerDefinitionErrors.length>0){const e=this.lexerDefinitionErrors.map(e=>e.message).join("-----------------------\n");throw new Error("Unable to Tokenize because Errors detected in definition of Lexer:\n"+e)}return this.tokenizeInternal(e,t)}tokenizeInternal(e,t){let r,n,i,a,s,o,l,u,c,p,d,f,m,h,y;const g=e,T=g.length;let v=0,R=0;const $=this.hasCustom?0:Math.floor(e.length/10),C=new Array($),E=[];let b=this.trackStartLines?1:void 0,A=this.trackStartLines?1:void 0;const S={};for(let e=0;e<this.cachedGroupKeys.length;e++)S[this.cachedGroupKeys[e]]=[];const x=this.trackStartLines,k=this.config.lineTerminatorsPattern;let w=0,_=[],N=[];const I=[],O=[];Object.freeze(O);let P=!1;const D=Ue(e=>{if(1===I.length&&void 0===e.tokenType.PUSH_MODE){const t=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(e);E.push({offset:e.startOffset,line:e.startLine,column:e.startColumn,length:e.image.length,message:t})}else{I.pop();const e=I.at(-1);_=this.patternIdxToConfig[e],N=this.charCodeToPatternIdxToConfig[e],w=_.length;const t=this.canModeBeOptimized[e]&&!1===this.config.safeMode;P=!(!N||!t)}},"pop_mode");function L(e){I.push(e),N=this.charCodeToPatternIdxToConfig[e],_=this.patternIdxToConfig[e],w=_.length;const t=this.canModeBeOptimized[e]&&!1===this.config.safeMode;P=!(!N||!t)}let M;Ue(L,"push_mode"),L.call(this,t);const j=this.config.recoveryEnabled;for(;v<T;){o=null,c=-1;const t=g.charCodeAt(v);let $;if(P){const e=su(t),r=N[e];$=void 0!==r?r:O}else $=_;const F=$.length;for(r=0;r<F;r++){M=$[r];const n=M.pattern;switch(l=null,M.matchType){case 0:t===M.short&&(c=1,o=n);break;case 1:y=n.exec(g,v,C,S),null!==y?(o=y[0],c=o.length,void 0!==y.payload&&(l=y.payload)):o=null;break;case 3:{const e=M.asciiClass;if(1!==e[t]){n.lastIndex=0;break}let r=v+1;for(;1===e[g.charCodeAt(r)];)r++;c=r-v,n.lastIndex=r;break}case 2:n.lastIndex=v,c=this.matchLength(n,e,v)}if(-1!==c){if(s=M.longerAlt,void 0!==s){o=e.substring(v,v+c);const t=s.length;for(i=0;i<t;i++){const t=_[s[i]],r=t.pattern;if(u=null,1===t.matchType?(y=r.exec(g,v,C,S),null!==y?(a=y[0],void 0!==y.payload&&(u=y.payload)):a=null):(r.lastIndex=v,a=this.match(r,e,v)),a&&a.length>o.length){o=a,c=a.length,l=u,M=t;break}}}break}}if(-1!==c){if(p=M.group,void 0!==p&&(o=null!==o?o:e.substring(v,v+c),d=M.tokenTypeIdx,f=this.createTokenInstance(o,v,d,M.tokenType,b,A,c),this.handlePayload(f,l),!1===p?R=this.addToken(C,R,f):S[p].push(f)),!0===x&&!0===M.canLineTerminator){let t,r,n=0;k.lastIndex=0;do{o=null!==o?o:e.substring(v,v+c),t=k.test(o),!0===t&&(r=k.lastIndex-1,n++)}while(!0===t);0!==n?(b+=n,A=c-r,this.updateTokenEndLineColumnLocation(f,p,r,n,b,A,c)):A=this.computeNewColumn(A,c)}else A=this.computeNewColumn(A,c);v+=c,this.handleModes(M,D,L,f)}else{const t=v,r=b,i=A;let a=!1===j;for(;!1===a&&v<T;)for(v++,n=0;n<w;n++){const t=_[n],r=t.pattern;switch(t.matchType){case 0:g.charCodeAt(v)===t.short&&(a=!0);break;case 1:a=null!==r.exec(g,v,C,S);break;case 3:case 2:r.lastIndex=v,a=null!==r.exec(e)}if(!0===a)break}if(m=v-t,A=this.computeNewColumn(A,m),h=this.config.errorMessageProvider.buildUnexpectedCharactersMessage(g,t,m,r,i,I.at(-1)),E.push({offset:t,line:r,column:i,length:m,message:h}),!1===j)break}}return this.hasCustom||(C.length=R),{tokens:C,groups:S,errors:E}}handleModes(e,t,r,n){if(!0===e.pop){const i=e.push;t(n),void 0!==i&&r.call(this,i)}else void 0!==e.push&&r.call(this,e.push)}updateTokenEndLineColumnLocation(e,t,r,n,i,a,s){let o,l;void 0!==t&&(o=r===s-1,l=o?-1:0,1===n&&!0===o||(e.endLine=i+l,e.endColumn=a-1-l))}computeNewColumn(e,t){return e+t}createOffsetOnlyToken(e,t,r,n){return{image:e,startOffset:t,tokenTypeIdx:r,tokenType:n}}createStartOnlyToken(e,t,r,n,i,a){return{image:e,startOffset:t,startLine:i,startColumn:a,tokenTypeIdx:r,tokenType:n}}createFullToken(e,t,r,n,i,a,s){return{image:e,startOffset:t,endOffset:t+s-1,startLine:i,endLine:i,startColumn:a,endColumn:a+s-1,tokenTypeIdx:r,tokenType:n}}addTokenUsingPush(e,t,r){return e.push(r),t}addTokenUsingMemberAccess(e,t,r){return e[t]=r,++t}handlePayloadNoCustom(e,t){}handlePayloadWithCustom(e,t){null!==t&&(e.payload=t)}match(e,t,r){return!0===e.test(t)?t.substring(r,e.lastIndex):null}matchLength(e,t,r){return!0===e.test(t)?e.lastIndex-r:-1}};function ku(e){return wu(e)?e.LABEL:e.name}function wu(e){return"string"==typeof e.LABEL&&""!==e.LABEL}xu.SKIPPED="This marks a skipped Token pattern, this means each token identified by it will be consumed and then thrown into oblivion, this can be used to for example to completely ignore whitespace.",xu.NA=/NOT_APPLICABLE/,Ue(ku,"tokenLabel"),Ue(wu,"hasTokenLabel");var _u="categories",Nu="label",Iu="group",Ou="push_mode",Pu="pop_mode",Du="longer_alt",Lu="line_breaks",Mu="start_chars_hint";function ju(e){return Fu(e)}function Fu(e){const t=e.pattern,r={};if(r.name=e.name,void 0!==t&&(r.PATTERN=t),Object.hasOwn(e,"parent"))throw"The parent property is no longer supported.\nSee: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details.";return Object.hasOwn(e,_u)&&(r.CATEGORIES=e[_u]),du([r]),Object.hasOwn(e,Nu)&&(r.LABEL=e[Nu]),Object.hasOwn(e,Iu)&&(r.GROUP=e[Iu]),Object.hasOwn(e,Pu)&&(r.POP_MODE=e[Pu]),Object.hasOwn(e,Ou)&&(r.PUSH_MODE=e[Ou]),Object.hasOwn(e,Du)&&(r.LONGER_ALT=e[Du]),Object.hasOwn(e,Lu)&&(r.LINE_BREAKS=e[Lu]),Object.hasOwn(e,Mu)&&(r.START_CHARS_HINT=e[Mu]),r}Ue(ju,"createToken"),Ue(Fu,"createTokenInternal");var Ku=ju({name:"EOF",pattern:xu.NA});function Gu(e,t,r,n,i,a,s,o){return{image:t,startOffset:r,endOffset:n,startLine:i,endLine:a,startColumn:s,endColumn:o,tokenTypeIdx:e.tokenTypeIdx,tokenType:e}}function zu(e,t){return lu(e,t)}du([Ku]),Ue(Gu,"createTokenInstance"),Ue(zu,"tokenMatcher");var qu={buildMismatchTokenMessage:({expected:e,actual:t,previous:r,ruleName:n})=>`Expecting ${wu(e)?`--\x3e ${ku(e)} <--`:`token of type --\x3e ${e.name} <--`} but found --\x3e '${t.image}' <--`,buildNotAllInputParsedMessage:({firstRedundant:e,ruleName:t})=>"Redundant input, expecting EOF but found: "+e.image,buildNoViableAltMessage({expectedPathsPerAlt:e,actual:t,previous:r,customUserDescription:n,ruleName:i}){const a="Expecting: ",s="\nbut found: '"+t[0].image+"'";if(n)return a+n+s;return a+`one of these possible Token sequences:\n${e.reduce((e,t)=>e.concat(t),[]).map(e=>`[${e.map(e=>ku(e)).join(", ")}]`).map((e,t)=>` ${t+1}. ${e}`).join("\n")}`+s},buildEarlyExitMessage({expectedIterationPaths:e,actual:t,customUserDescription:r,ruleName:n}){const i="Expecting: ",a="\nbut found: '"+t[0].image+"'";if(r)return i+r+a;return i+`expecting at least one iteration which starts with one of these possible Token sequences::\n <${e.map(e=>`[${e.map(e=>ku(e)).join(",")}]`).join(" ,")}>`+a}};Object.freeze(qu);var Uu={buildRuleNotFoundError:(e,t)=>"Invalid grammar, reference to a rule which is not defined: ->"+t.nonTerminalName+"<-\ninside top level rule: ->"+e.name+"<-"},Bu={buildDuplicateFoundError(e,t){function r(e){return e instanceof Wo?e.terminalType.name:e instanceof jo?e.nonTerminalName:""}Ue(r,"getExtraProductionArgument");const n=e.name,i=t[0],a=i.idx,s=tl(i),o=r(i);let l=`->${s}${a>0?a:""}<- ${o?`with argument: ->${o}<-`:""}\n appears more than once (${t.length} times) in the top level rule: ->${n}<-. \n For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES \n `;return l=l.replace(/[ \t]+/g," "),l=l.replace(/\s\s+/g,"\n"),l},buildNamespaceConflictError:e=>`Namespace conflict found in grammar.\nThe grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${e.name}>.\nTo resolve this make sure each Terminal and Non-Terminal names are unique\nThis is easy to accomplish by using the convention that Terminal names start with an uppercase letter\nand Non-Terminal names start with a lower case letter.`,buildAlternationPrefixAmbiguityError(e){const t=e.prefixPath.map(e=>ku(e)).join(", "),r=0===e.alternation.idx?"":e.alternation.idx;return`Ambiguous alternatives: <${e.ambiguityIndices.join(" ,")}> due to common lookahead prefix\nin <OR${r}> inside <${e.topLevelRule.name}> Rule,\n<${t}> may appears as a prefix path in all these alternatives.\nSee: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX\nFor Further details.`},buildAlternationAmbiguityError(e){const t=0===e.alternation.idx?"":e.alternation.idx,r=0===e.prefixPath.length;let n=`Ambiguous Alternatives Detected: <${e.ambiguityIndices.join(" ,")}> in <OR${t}> inside <${e.topLevelRule.name}> Rule,\n`;if(r)n+="These alternatives are all empty (match no tokens), making them indistinguishable.\nOnly the last alternative may be empty.\n";else{n+=`<${e.prefixPath.map(e=>ku(e)).join(", ")}> may appears as a prefix path in all these alternatives.\n`}return n+="See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES\nFor Further details.",n},buildEmptyRepetitionError(e){let t=tl(e.repetition);0!==e.repetition.idx&&(t+=e.repetition.idx);return`The repetition <${t}> within Rule <${e.topLevelRule.name}> can never consume any tokens.\nThis could lead to an infinite loop.`},buildTokenNameError:e=>"deprecated",buildEmptyAlternationError:e=>`Ambiguous empty alternative: <${e.emptyChoiceIdx+1}> in <OR${e.alternation.idx}> inside <${e.topLevelRule.name}> Rule.\nOnly the last alternative may be an empty alternative.`,buildTooManyAlternativesError:e=>`An Alternation cannot have more than 256 alternatives:\n<OR${e.alternation.idx}> inside <${e.topLevelRule.name}> Rule.\n has ${e.alternation.definition.length+1} alternatives.`,buildLeftRecursionError(e){const t=e.topLevelRule.name;return`Left Recursion found in grammar.\nrule: <${t}> can be invoked from itself (directly or indirectly)\nwithout consuming any Tokens. The grammar path that causes this is: \n ${`${t} --\x3e ${e.leftRecursionPath.map(e=>e.name).concat([t]).join(" --\x3e ")}`}\n To fix this refactor your grammar to remove the left recursion.\nsee: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError:e=>"deprecated",buildDuplicateRuleNameError(e){let t;t=e.topLevelRule instanceof Fo?e.topLevelRule.name:e.topLevelRule;return`Duplicate definition, rule: ->${t}<- is already defined in the grammar: ->${e.grammarName}<-`}};function Vu(e,t){const r=new Yu(e,t);return r.resolveRefs(),r.errors}Ue(Vu,"resolveGrammar");var Wu,Hu,Yu=class extends Qo{static{Ue(this,"GastRefResolverVisitor")}constructor(e,t){super(),this.nameToTopRule=e,this.errMsgProvider=t,this.errors=[]}resolveRefs(){Object.values(this.nameToTopRule).forEach(e=>{this.currTopLevel=e,e.accept(this)})}visitNonTerminal(e){const t=this.nameToTopRule[e.nonTerminalName];if(t)e.referencedRule=t;else{const t=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,e);this.errors.push({message:t,type:Up.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:e.nonTerminalName})}}},Xu=class extends rl{static{Ue(this,"AbstractNextPossibleTokensWalker")}constructor(e,t){super(),this.topProd=e,this.path=t,this.possibleTokTypes=[],this.nextProductionName="",this.nextProductionOccurrence=0,this.found=!1,this.isAtEndOfPath=!1}startWalking(){if(this.found=!1,this.path.ruleStack[0]!==this.topProd.name)throw Error("The path does not start with the walker's top Rule!");return this.ruleStack=[...this.path.ruleStack].reverse(),this.occurrenceStack=[...this.path.occurrenceStack].reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(e,t=[]){this.found||super.walk(e,t)}walkProdRef(e,t,r){if(e.referencedRule.name===this.nextProductionName&&e.idx===this.nextProductionOccurrence){const n=t.concat(r);this.updateExpectedNext(),this.walk(e.referencedRule,n)}}updateExpectedNext(){0===this.ruleStack.length?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}},Qu=class extends Xu{static{Ue(this,"NextAfterTokenWalker")}constructor(e,t){super(e,t),this.path=t,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(e,t,r){if(this.isAtEndOfPath&&e.terminalType.name===this.nextTerminalName&&e.idx===this.nextTerminalOccurrence&&!this.found){const e=t.concat(r),n=new Ko({definition:e});this.possibleTokTypes=il(n),this.found=!0}}},Zu=class extends rl{static{Ue(this,"AbstractNextTerminalAfterProductionWalker")}constructor(e,t){super(),this.topRule=e,this.occurrence=t,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}},Ju=class extends Zu{static{Ue(this,"NextTerminalAfterManyWalker")}walkMany(e,t,r){if(e.idx===this.occurrence){const e=t.concat(r)[0];this.result.isEndOfRule=void 0===e,e instanceof Wo&&(this.result.token=e.terminalType,this.result.occurrence=e.idx)}else super.walkMany(e,t,r)}},ec=class extends Zu{static{Ue(this,"NextTerminalAfterManySepWalker")}walkManySep(e,t,r){if(e.idx===this.occurrence){const e=t.concat(r)[0];this.result.isEndOfRule=void 0===e,e instanceof Wo&&(this.result.token=e.terminalType,this.result.occurrence=e.idx)}else super.walkManySep(e,t,r)}},tc=class extends Zu{static{Ue(this,"NextTerminalAfterAtLeastOneWalker")}walkAtLeastOne(e,t,r){if(e.idx===this.occurrence){const e=t.concat(r)[0];this.result.isEndOfRule=void 0===e,e instanceof Wo&&(this.result.token=e.terminalType,this.result.occurrence=e.idx)}else super.walkAtLeastOne(e,t,r)}},rc=class extends Zu{static{Ue(this,"NextTerminalAfterAtLeastOneSepWalker")}walkAtLeastOneSep(e,t,r){if(e.idx===this.occurrence){const e=t.concat(r)[0];this.result.isEndOfRule=void 0===e,e instanceof Wo&&(this.result.token=e.terminalType,this.result.occurrence=e.idx)}else super.walkAtLeastOneSep(e,t,r)}};function nc(e,t,r=[]){r=[...r];let n=[],i=0;function a(t){return t.concat(e.slice(i+1))}function s(e){const i=nc(a(e),t,r);return n.concat(i)}for(Ue(a,"remainingPathWith"),Ue(s,"getAlternativesForProd");r.length<t&&i<e.length;){const t=e[i];if(t instanceof Ko)return s(t.definition);if(t instanceof jo)return s(t.definition);if(t instanceof Go)n=s(t.definition);else{if(t instanceof zo){return s(t.definition.concat([new Uo({definition:t.definition})]))}if(t instanceof qo){return s([new Ko({definition:t.definition}),new Uo({definition:[new Wo({terminalType:t.separator})].concat(t.definition)})])}if(t instanceof Bo){const e=t.definition.concat([new Uo({definition:[new Wo({terminalType:t.separator})].concat(t.definition)})]);n=s(e)}else if(t instanceof Uo){const e=t.definition.concat([new Uo({definition:t.definition})]);n=s(e)}else{if(t instanceof Vo)return t.definition.forEach(e=>{0!==e.definition.length&&(n=s(e.definition))}),n;if(!(t instanceof Wo))throw Error("non exhaustive match");r.push(t.terminalType)}}i++}return n.push({partialPath:r,suffixDef:e.slice(i)}),n}function ic(e,t,r,n){const i="EXIT_NONE_TERMINAL",a=[i],s="EXIT_ALTERNATIVE";let o=!1;const l=t.length,u=l-n-1,c=[],p=[];for(p.push({idx:-1,def:e,ruleStack:[],occurrenceStack:[]});0!==p.length;){const e=p.pop();if(e===s){o&&p.at(-1).idx<=u&&p.pop();continue}const n=e.def,d=e.idx,f=e.ruleStack,m=e.occurrenceStack;if(0===n.length)continue;const h=n[0];if(h===i){const e={idx:d,def:n.slice(1),ruleStack:f.slice(0,-1),occurrenceStack:m.slice(0,-1)};p.push(e)}else if(h instanceof Wo)if(d<l-1){const e=d+1;if(r(t[e],h.terminalType)){const t={idx:e,def:n.slice(1),ruleStack:f,occurrenceStack:m};p.push(t)}}else{if(d!==l-1)throw Error("non exhaustive match");c.push({nextTokenType:h.terminalType,nextTokenOccurrence:h.idx,ruleStack:f,occurrenceStack:m}),o=!0}else if(h instanceof jo){const e=[...f];e.push(h.nonTerminalName);const t=[...m];t.push(h.idx);const r={idx:d,def:h.definition.concat(a,n.slice(1)),ruleStack:e,occurrenceStack:t};p.push(r)}else if(h instanceof Go){const e={idx:d,def:n.slice(1),ruleStack:f,occurrenceStack:m};p.push(e),p.push(s);const t={idx:d,def:h.definition.concat(n.slice(1)),ruleStack:f,occurrenceStack:m};p.push(t)}else if(h instanceof zo){const e=new Uo({definition:h.definition,idx:h.idx}),t={idx:d,def:h.definition.concat([e],n.slice(1)),ruleStack:f,occurrenceStack:m};p.push(t)}else if(h instanceof qo){const e=new Wo({terminalType:h.separator}),t=new Uo({definition:[e].concat(h.definition),idx:h.idx}),r={idx:d,def:h.definition.concat([t],n.slice(1)),ruleStack:f,occurrenceStack:m};p.push(r)}else if(h instanceof Bo){const e={idx:d,def:n.slice(1),ruleStack:f,occurrenceStack:m};p.push(e),p.push(s);const t=new Wo({terminalType:h.separator}),r=new Uo({definition:[t].concat(h.definition),idx:h.idx}),i={idx:d,def:h.definition.concat([r],n.slice(1)),ruleStack:f,occurrenceStack:m};p.push(i)}else if(h instanceof Uo){const e={idx:d,def:n.slice(1),ruleStack:f,occurrenceStack:m};p.push(e),p.push(s);const t=new Uo({definition:h.definition,idx:h.idx}),r={idx:d,def:h.definition.concat([t],n.slice(1)),ruleStack:f,occurrenceStack:m};p.push(r)}else if(h instanceof Vo)for(let e=h.definition.length-1;e>=0;e--){const t={idx:d,def:h.definition[e].definition.concat(n.slice(1)),ruleStack:f,occurrenceStack:m};p.push(t),p.push(s)}else if(h instanceof Ko)p.push({idx:d,def:h.definition.concat(n.slice(1)),ruleStack:f,occurrenceStack:m});else{if(!(h instanceof Fo))throw Error("non exhaustive match");p.push(ac(h,d,f,m))}}return c}function ac(e,t,r,n){const i=[...r];i.push(e.name);const a=[...n];return a.push(1),{idx:t,def:e.definition,ruleStack:i,occurrenceStack:a}}function sc(e){if(e instanceof Go||"Option"===e)return Wu.OPTION;if(e instanceof Uo||"Repetition"===e)return Wu.REPETITION;if(e instanceof zo||"RepetitionMandatory"===e)return Wu.REPETITION_MANDATORY;if(e instanceof qo||"RepetitionMandatoryWithSeparator"===e)return Wu.REPETITION_MANDATORY_WITH_SEPARATOR;if(e instanceof Bo||"RepetitionWithSeparator"===e)return Wu.REPETITION_WITH_SEPARATOR;if(e instanceof Vo||"Alternation"===e)return Wu.ALTERNATION;throw Error("non exhaustive match")}function oc(e){const{occurrence:t,rule:r,prodType:n,maxLookahead:i}=e,a=sc(n);return a===Wu.ALTERNATION?Tc(t,r,i):vc(t,r,a,i)}function lc(e,t,r,n,i,a){const s=Tc(e,t,r);return a(s,n,Cc(s)?uu:lu,i)}function uc(e,t,r,n,i,a){const s=vc(e,t,i,r),o=Cc(s)?uu:lu;return a(s[0],o,n)}function cc(e,t,r,n){const i=e.length,a=e.every(e=>e.every(e=>1===e.length));if(t)return function(t){const n=t.map(e=>e.GATE);for(let t=0;t<i;t++){const i=e[t],a=i.length,s=n[t];if(void 0===s||!1!==s.call(this))e:for(let e=0;e<a;e++){const n=i[e],a=n.length;for(let e=0;e<a;e++){const t=this.LA_FAST(e+1);if(!1===r(t,n[e]))continue e}return t}}};if(a&&!n){const t=e.map(e=>e.flat()).reduce((e,t,r)=>(t.forEach(t=>{t.tokenTypeIdx in e||(e[t.tokenTypeIdx]=r),t.categoryMatches.forEach(t=>{Object.hasOwn(e,t)||(e[t]=r)})}),e),{});return function(){const e=this.LA_FAST(1);return t[e.tokenTypeIdx]}}return function(){for(let t=0;t<i;t++){const n=e[t],i=n.length;e:for(let e=0;e<i;e++){const i=n[e],a=i.length;for(let e=0;e<a;e++){const t=this.LA_FAST(e+1);if(!1===r(t,i[e]))continue e}return t}}}}function pc(e,t,r){const n=e.every(e=>1===e.length),i=e.length;if(n&&!r){const t=e.flat();if(1===t.length&&0===t[0].categoryMatches.length){const e=t[0].tokenTypeIdx;return function(){return this.LA_FAST(1).tokenTypeIdx===e}}{const e=t.reduce((e,t,r)=>(e[t.tokenTypeIdx]=!0,t.categoryMatches.forEach(t=>{e[t]=!0}),e),[]);return function(){const t=this.LA_FAST(1);return!0===e[t.tokenTypeIdx]}}}return function(){e:for(let r=0;r<i;r++){const n=e[r],i=n.length;for(let e=0;e<i;e++){const r=this.LA_FAST(e+1);if(!1===t(r,n[e]))continue e}return!0}return!1}}Ue(nc,"possiblePathsFrom"),Ue(ic,"nextPossibleTokensAfter"),Ue(ac,"expandTopLevelRule"),(Hu=Wu||(Wu={}))[Hu.OPTION=0]="OPTION",Hu[Hu.REPETITION=1]="REPETITION",Hu[Hu.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",Hu[Hu.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",Hu[Hu.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",Hu[Hu.ALTERNATION=5]="ALTERNATION",Ue(sc,"getProdType"),Ue(oc,"getLookaheadPaths"),Ue(lc,"buildLookaheadFuncForOr"),Ue(uc,"buildLookaheadFuncForOptionalProd"),Ue(cc,"buildAlternativesLookAheadFunc"),Ue(pc,"buildSingleAlternativeLookaheadFunction");var dc=class extends rl{static{Ue(this,"RestDefinitionFinderWalker")}constructor(e,t,r){super(),this.topProd=e,this.targetOccurrence=t,this.targetProdType=r}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(e,t,r,n){return e.idx===this.targetOccurrence&&this.targetProdType===t&&(this.restDef=r.concat(n),!0)}walkOption(e,t,r){this.checkIsTarget(e,Wu.OPTION,t,r)||super.walkOption(e,t,r)}walkAtLeastOne(e,t,r){this.checkIsTarget(e,Wu.REPETITION_MANDATORY,t,r)||super.walkOption(e,t,r)}walkAtLeastOneSep(e,t,r){this.checkIsTarget(e,Wu.REPETITION_MANDATORY_WITH_SEPARATOR,t,r)||super.walkOption(e,t,r)}walkMany(e,t,r){this.checkIsTarget(e,Wu.REPETITION,t,r)||super.walkOption(e,t,r)}walkManySep(e,t,r){this.checkIsTarget(e,Wu.REPETITION_WITH_SEPARATOR,t,r)||super.walkOption(e,t,r)}},fc=class extends Qo{static{Ue(this,"InsideDefinitionFinderVisitor")}constructor(e,t,r){super(),this.targetOccurrence=e,this.targetProdType=t,this.targetRef=r,this.result=[]}checkIsTarget(e,t){e.idx!==this.targetOccurrence||this.targetProdType!==t||void 0!==this.targetRef&&e!==this.targetRef||(this.result=e.definition)}visitOption(e){this.checkIsTarget(e,Wu.OPTION)}visitRepetition(e){this.checkIsTarget(e,Wu.REPETITION)}visitRepetitionMandatory(e){this.checkIsTarget(e,Wu.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(e){this.checkIsTarget(e,Wu.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(e){this.checkIsTarget(e,Wu.REPETITION_WITH_SEPARATOR)}visitAlternation(e){this.checkIsTarget(e,Wu.ALTERNATION)}};function mc(e){const t=new Array(e);for(let r=0;r<e;r++)t[r]=[];return t}function hc(e){let t=[""];for(let r=0;r<e.length;r++){const n=e[r],i=[];for(let e=0;e<t.length;e++){const r=t[e];i.push(r+"_"+n.tokenTypeIdx);for(let e=0;e<n.categoryMatches.length;e++){const t="_"+n.categoryMatches[e];i.push(r+t)}}t=i}return t}function yc(e,t,r){for(let n=0;n<e.length;n++){if(n===r)continue;const i=e[n];for(let e=0;e<t.length;e++){if(!0===i[t[e]])return!1}}return!0}function gc(e,t){const r=e.map(e=>nc([e],1)),n=mc(r.length),i=r.map(e=>{const t={};return e.forEach(e=>{hc(e.partialPath).forEach(e=>{t[e]=!0})}),t});let a=r;for(let e=1;e<=t;e++){const r=a;a=mc(r.length);for(let s=0;s<r.length;s++){const o=r[s];for(let r=0;r<o.length;r++){const l=o[r].partialPath,u=o[r].suffixDef,c=hc(l);if(yc(i,c,s)||0===u.length||l.length===t){const e=n[s];if(!1===Rc(e,l)){e.push(l);for(let e=0;e<c.length;e++){const t=c[e];i[s][t]=!0}}}else{const t=nc(u,e+1,l);a[s]=a[s].concat(t),t.forEach(e=>{hc(e.partialPath).forEach(e=>{i[s][e]=!0})})}}}}return n}function Tc(e,t,r,n){const i=new fc(e,Wu.ALTERNATION,n);return t.accept(i),gc(i.result,r)}function vc(e,t,r,n){const i=new fc(e,r);t.accept(i);const a=i.result,s=new dc(t,e,r).startWalking();return gc([new Ko({definition:a}),new Ko({definition:s})],n)}function Rc(e,t){e:for(let r=0;r<e.length;r++){const n=e[r];if(n.length===t.length){for(let e=0;e<n.length;e++){const r=t[e],i=n[e];if(!1===(r===i||void 0!==i.categoryMatchesMap[r.tokenTypeIdx]))continue e}return!0}}return!1}function $c(e,t){return e.length<t.length&&e.every((e,r)=>{const n=t[r];return e===n||n.categoryMatchesMap[e.tokenTypeIdx]})}function Cc(e){return e.every(e=>e.every(e=>e.every(e=>0===e.categoryMatches.length)))}function Ec(e){return e.lookaheadStrategy.validate({rules:e.rules,tokenTypes:e.tokenTypes,grammarName:e.grammarName}).map(e=>Object.assign({type:Up.CUSTOM_LOOKAHEAD_VALIDATION},e))}function bc(e,t,r,n){const i=e.flatMap(e=>Ac(e,r)),a=Gc(e,t,r),s=e.flatMap(e=>Mc(e,r)),o=e.flatMap(t=>wc(t,e,n,r));return i.concat(a,s,o)}function Ac(e,t){const r=new kc;e.accept(r);const n=r.allProductions,i=Object.groupBy(n,Sc),a=Object.fromEntries(Object.entries(i).filter(([e,t])=>t.length>1));return Object.values(a).map(r=>{const n=r[0],i=t.buildDuplicateFoundError(e,r),a=tl(n),s={message:i,type:Up.DUPLICATE_PRODUCTIONS,ruleName:e.name,dslName:a,occurrence:n.idx},o=xc(n);return o&&(s.parameter=o),s})}function Sc(e){return`${tl(e)}_#_${e.idx}_#_${xc(e)}`}function xc(e){return e instanceof Wo?e.terminalType.name:e instanceof jo?e.nonTerminalName:""}Ue(mc,"initializeArrayOfArrays"),Ue(hc,"pathToHashKeys"),Ue(yc,"isUniquePrefixHash"),Ue(gc,"lookAheadSequenceFromAlternatives"),Ue(Tc,"getLookaheadPathsForOr"),Ue(vc,"getLookaheadPathsForOptionalProd"),Ue(Rc,"containsPath"),Ue($c,"isStrictPrefixOfPath"),Ue(Cc,"areTokenCategoriesNotUsed"),Ue(Ec,"validateLookahead"),Ue(bc,"validateGrammar"),Ue(Ac,"validateDuplicateProductions"),Ue(Sc,"identifyProductionForDuplicates"),Ue(xc,"getExtraProductionArgument");var kc=class extends Qo{static{Ue(this,"OccurrenceValidationCollector")}constructor(){super(...arguments),this.allProductions=[]}visitNonTerminal(e){this.allProductions.push(e)}visitOption(e){this.allProductions.push(e)}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}visitAlternation(e){this.allProductions.push(e)}visitTerminal(e){this.allProductions.push(e)}};function wc(e,t,r,n){const i=[];if(t.reduce((t,r)=>r.name===e.name?t+1:t,0)>1){const t=n.buildDuplicateRuleNameError({topLevelRule:e,grammarName:r});i.push({message:t,type:Up.DUPLICATE_RULE_NAME,ruleName:e.name})}return i}function _c(e,t,r){const n=[];let i;return t.includes(e)||(i=`Invalid rule override, rule: ->${e}<- cannot be overridden in the grammar: ->${r}<-as it is not defined in any of the super grammars `,n.push({message:i,type:Up.INVALID_RULE_OVERRIDE,ruleName:e})),n}function Nc(e,t,r,n=[]){const i=[],a=Ic(t.definition);if(0===a.length)return[];{const t=e.name;a.includes(e)&&i.push({message:r.buildLeftRecursionError({topLevelRule:e,leftRecursionPath:n}),type:Up.LEFT_RECURSION,ruleName:t});const s=n.concat([e]),o=a.filter(e=>!s.includes(e)).flatMap(t=>{const i=[...n];return i.push(t),Nc(e,t,r,i)});return i.concat(o)}}function Ic(e){let t=[];if(0===e.length)return t;const r=e[0];if(r instanceof jo)t.push(r.referencedRule);else if(r instanceof Ko||r instanceof Go||r instanceof zo||r instanceof qo||r instanceof Bo||r instanceof Uo)t=t.concat(Ic(r.definition));else if(r instanceof Vo)t=r.definition.map(e=>Ic(e.definition)).flat();else if(!(r instanceof Wo))throw Error("non exhaustive match");const n=Jo(r),i=e.length>1;if(n&&i){const r=e.slice(1);return t.concat(Ic(r))}return t}Ue(wc,"validateRuleDoesNotAlreadyExist"),Ue(_c,"validateRuleIsOverridden"),Ue(Nc,"validateNoLeftRecursion"),Ue(Ic,"getFirstNoneTerminal");var Oc=class extends Qo{static{Ue(this,"OrCollector")}constructor(){super(...arguments),this.alternations=[]}visitAlternation(e){this.alternations.push(e)}};function Pc(e,t){const r=new Oc;e.accept(r);return r.alternations.flatMap(r=>r.definition.slice(0,-1).flatMap((n,i)=>0===ic([n],[],lu,1).length?[{message:t.buildEmptyAlternationError({topLevelRule:e,alternation:r,emptyChoiceIdx:i}),type:Up.NONE_LAST_EMPTY_ALT,ruleName:e.name,occurrence:r.idx,alternative:i+1}]:[]))}function Dc(e,t,r){const n=new Oc;e.accept(n);let i=n.alternations;i=i.filter(e=>!0!==e.ignoreAmbiguities);return i.flatMap(n=>{const i=n.idx,a=n.maxLookahead||t,s=Tc(i,e,a,n),o=Fc(s,n,e,r),l=Kc(s,n,e,r);return o.concat(l)})}Ue(Pc,"validateEmptyOrAlternative"),Ue(Dc,"validateAmbiguousAlternationAlternatives");var Lc=class extends Qo{static{Ue(this,"RepetitionCollector")}constructor(){super(...arguments),this.allProductions=[]}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}};function Mc(e,t){const r=new Oc;e.accept(r);return r.alternations.flatMap(r=>r.definition.length>255?[{message:t.buildTooManyAlternativesError({topLevelRule:e,alternation:r}),type:Up.TOO_MANY_ALTS,ruleName:e.name,occurrence:r.idx}]:[])}function jc(e,t,r){const n=[];return e.forEach(e=>{const i=new Lc;e.accept(i);i.allProductions.forEach(i=>{const a=sc(i),s=i.maxLookahead||t;if(0===vc(i.idx,e,a,s)[0].flat().length){const t=r.buildEmptyRepetitionError({topLevelRule:e,repetition:i});n.push({message:t,type:Up.NO_NON_EMPTY_LOOKAHEAD,ruleName:e.name})}})}),n}function Fc(e,t,r,n){const i=[];return e.reduce((r,n,a)=>(!0===t.definition[a].ignoreAmbiguities||n.forEach(n=>{const s=[a];e.forEach((e,r)=>{a!==r&&Rc(e,n)&&!0!==t.definition[r].ignoreAmbiguities&&s.push(r)}),s.length>1&&!Rc(i,n)&&(i.push(n),r.push({alts:s,path:n}))}),r),[]).map(e=>{const i=e.alts.map(e=>e+1);return{message:n.buildAlternationAmbiguityError({topLevelRule:r,alternation:t,ambiguityIndices:i,prefixPath:e.path}),type:Up.AMBIGUOUS_ALTS,ruleName:r.name,occurrence:t.idx,alternatives:e.alts}})}function Kc(e,t,r,n){const i=e.reduce((e,t,r)=>{const n=t.map(e=>({idx:r,path:e}));return e.concat(n)},[]);return i.flatMap(e=>{if(!0===t.definition[e.idx].ignoreAmbiguities)return[];const a=e.idx,s=e.path;return i.filter(e=>!0!==t.definition[e.idx].ignoreAmbiguities&&e.idx<a&&$c(e.path,s)).map(e=>{const i=[e.idx+1,a+1],s=0===t.idx?"":t.idx;return{message:n.buildAlternationPrefixAmbiguityError({topLevelRule:r,alternation:t,ambiguityIndices:i,prefixPath:e.path}),type:Up.AMBIGUOUS_PREFIX_ALTS,ruleName:r.name,occurrence:s,alternatives:i}})})}function Gc(e,t,r){const n=[],i=t.map(e=>e.name);return e.forEach(e=>{const t=e.name;if(i.includes(t)){const i=r.buildNamespaceConflictError(e);n.push({message:i,type:Up.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:t})}}),n}function zc(e){const t=Object.assign({errMsgProvider:Uu},e),r={};return e.rules.forEach(e=>{r[e.name]=e}),Vu(r,t.errMsgProvider)}function qc(e){var t;const r=null!==(t=e.errMsgProvider)&&void 0!==t?t:Bu;return bc(e.rules,e.tokenTypes,r,e.grammarName)}Ue(Mc,"validateTooManyAlts"),Ue(jc,"validateSomeNonEmptyLookaheadPath"),Ue(Fc,"checkAlternativesAmbiguities"),Ue(Kc,"checkPrefixAlternativesAmbiguities"),Ue(Gc,"checkTerminalAndNoneTerminalsNameSpace"),Ue(zc,"resolveGrammar"),Ue(qc,"validateGrammar");var Uc="MismatchedTokenException",Bc="NoViableAltException",Vc="EarlyExitException",Wc="NotAllInputParsedException",Hc=[Uc,Bc,Vc,Wc];function Yc(e){return Hc.includes(e.name)}Object.freeze(Hc),Ue(Yc,"isRecognitionException");var Xc=class extends Error{static{Ue(this,"RecognitionException")}constructor(e,t){super(e),this.token=t,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},Qc=class extends Xc{static{Ue(this,"MismatchedTokenException")}constructor(e,t,r){super(e,t),this.previousToken=r,this.name=Uc}},Zc=class extends Xc{static{Ue(this,"NoViableAltException")}constructor(e,t,r){super(e,t),this.previousToken=r,this.name=Bc}},Jc=class extends Xc{static{Ue(this,"NotAllInputParsedException")}constructor(e,t){super(e,t),this.name=Wc}},ep=class extends Xc{static{Ue(this,"EarlyExitException")}constructor(e,t,r){super(e,t),this.previousToken=r,this.name=Vc}},tp={},rp="InRuleRecoveryException",np=class extends Error{static{Ue(this,"InRuleRecoveryException")}constructor(e){super(e),this.name=rp}},ip=class{static{Ue(this,"Recoverable")}initRecoverable(e){this.firstAfterRepMap=[],this.resyncFollows={},this.recoveryEnabled=Object.hasOwn(e,"recoveryEnabled")?e.recoveryEnabled:Vp.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=ap)}getTokenToInsert(e){const t=Gu(e,"",-1,-1,-1,-1,-1,-1);return t.isInsertedInRecovery=!0,t}canTokenTypeBeInsertedInRecovery(e){return!0}canTokenTypeBeDeletedInRecovery(e){return!0}tryInRepetitionRecovery(e,t,r,n){const i=this.findReSyncTokenType(),a=this.exportLexerState(),s=[];let o=!1;const l=this.LA_FAST(1);let u=this.LA_FAST(1);const c=Ue(()=>{const e=this.LA(0),t=this.errorMessageProvider.buildMismatchTokenMessage({expected:n,actual:l,previous:e,ruleName:this.getCurrRuleFullName()}),r=new Qc(t,l,this.LA(0));r.resyncedTokens=s.slice(0,-1),this.SAVE_ERROR(r)},"generateErrorMessage");for(;!o;){if(this.tokenMatcher(u,n))return void c();if(r.call(this))return c(),void e.apply(this,t);this.tokenMatcher(u,i)?o=!0:(u=this.SKIP_TOKEN(),this.addToResyncTokens(u,s))}this.importLexerState(a)}shouldInRepetitionRecoveryBeTried(e,t,r){return!1!==r&&(!this.tokenMatcher(this.LA_FAST(1),e)&&(!this.isBackTracking()&&!this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,t))))}getNextPossibleTokenTypes(e){const t=e.ruleStack[0],r=this.getGAstProductions()[t];return new Qu(r,e).startWalking()}getFollowsForInRuleRecovery(e,t){const r=this.getCurrentGrammarPath(e,t);return this.getNextPossibleTokenTypes(r)}tryInRuleRecovery(e,t){if(this.canRecoverWithSingleTokenInsertion(e,t)){return this.getTokenToInsert(e)}if(this.canRecoverWithSingleTokenDeletion(e)){const e=this.SKIP_TOKEN();return this.consumeToken(),e}throw new np("sad sad panda")}canPerformInRuleRecovery(e,t){return this.canRecoverWithSingleTokenInsertion(e,t)||this.canRecoverWithSingleTokenDeletion(e)}canRecoverWithSingleTokenInsertion(e,t){if(!this.canTokenTypeBeInsertedInRecovery(e))return!1;if(0===t.length)return!1;const r=this.LA_FAST(1);return void 0!==t.find(e=>this.tokenMatcher(r,e))}canRecoverWithSingleTokenDeletion(e){if(!this.canTokenTypeBeDeletedInRecovery(e))return!1;return this.tokenMatcher(this.LA(2),e)}isInCurrentRuleReSyncSet(e){const t=this.getCurrFollowKey();return this.getFollowSetFromFollowKey(t).includes(e)}findReSyncTokenType(){const e=this.flattenFollowSet();let t=this.LA_FAST(1),r=2;for(;;){const n=e.find(e=>zu(t,e));if(void 0!==n)return n;t=this.LA(r),r++}}getCurrFollowKey(){if(0===this.RULE_STACK_IDX)return tp;const e=this.currRuleShortName,t=this.getLastExplicitRuleOccurrenceIndex(),r=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:t,inRule:this.shortRuleNameToFullName(r)}}buildFullFollowKeyStack(){const e=this.RULE_STACK,t=this.RULE_OCCURRENCE_STACK,r=this.RULE_STACK_IDX+1,n=new Array(r);for(let i=0;i<r;i++)n[i]=0===i?tp:{ruleName:this.shortRuleNameToFullName(e[i]),idxInCallingRule:t[i],inRule:this.shortRuleNameToFullName(e[i-1])};return n}flattenFollowSet(){return this.buildFullFollowKeyStack().map(e=>this.getFollowSetFromFollowKey(e)).flat()}getFollowSetFromFollowKey(e){if(e===tp)return[Ku];const t=e.ruleName+e.idxInCallingRule+ll+e.inRule;return this.resyncFollows[t]}addToResyncTokens(e,t){return this.tokenMatcher(e,Ku)||t.push(e),t}reSyncTo(e){const t=[];let r=this.LA_FAST(1);for(;!1===this.tokenMatcher(r,e);)r=this.SKIP_TOKEN(),this.addToResyncTokens(r,t);return t.slice(0,-1)}attemptInRepetitionRecovery(e,t,r,n,i,a,s){}getCurrentGrammarPath(e,t){return{ruleStack:this.getHumanReadableRuleStack(),occurrenceStack:this.RULE_OCCURRENCE_STACK.slice(0,this.RULE_OCCURRENCE_STACK_IDX+1),lastTok:e,lastTokOccurrence:t}}getHumanReadableRuleStack(){const e=this.RULE_STACK_IDX+1,t=new Array(e);for(let r=0;r<e;r++)t[r]=this.shortRuleNameToFullName(this.RULE_STACK[r]);return t}};function ap(e,t,r,n,i,a,s){var o,l,u;const c=n|i,p=null!==(o=(l=this.firstAfterRepMap)[u=this.currRuleShortName])&&void 0!==o?o:l[u]=[];let d=p[c];if(void 0===d){const e=this.getCurrRuleFullName();d=new a(this.getGAstProductions()[e],i).startWalking(),p[c]=d}let f=d.token,m=d.occurrence;const h=d.isEndOfRule;0===this.RULE_STACK_IDX&&h&&void 0===f&&(f=Ku,m=1),void 0!==f&&void 0!==m&&this.shouldInRepetitionRecoveryBeTried(f,m,s)&&this.tryInRepetitionRecovery(e,t,r,f)}Ue(ap,"attemptInRepetitionRecovery");var sp=1024,op=1280,lp=1536,up=class{static{Ue(this,"LLkLookaheadStrategy")}constructor(e){var t;this.maxLookahead=null!==(t=null==e?void 0:e.maxLookahead)&&void 0!==t?t:Vp.maxLookahead}validate(e){const t=this.validateNoLeftRecursion(e.rules);if(0===t.length){const r=this.validateEmptyOrAlternatives(e.rules),n=this.validateAmbiguousAlternationAlternatives(e.rules,this.maxLookahead),i=this.validateSomeNonEmptyLookaheadPath(e.rules,this.maxLookahead);return[...t,...r,...n,...i]}return t}validateNoLeftRecursion(e){return e.flatMap(e=>Nc(e,e,Bu))}validateEmptyOrAlternatives(e){return e.flatMap(e=>Pc(e,Bu))}validateAmbiguousAlternationAlternatives(e,t){return e.flatMap(e=>Dc(e,t,Bu))}validateSomeNonEmptyLookaheadPath(e,t){return jc(e,t,Bu)}buildLookaheadForAlternation(e){return lc(e.prodOccurrence,e.rule,e.maxLookahead,e.hasPredicates,e.dynamicTokensEnabled,cc)}buildLookaheadForOptional(e){return uc(e.prodOccurrence,e.rule,e.maxLookahead,e.dynamicTokensEnabled,sc(e.prodType),pc)}},cp=class{static{Ue(this,"LooksAhead")}initLooksAhead(e){this.dynamicTokensEnabled=Object.hasOwn(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:Vp.dynamicTokensEnabled,this.maxLookahead=Object.hasOwn(e,"maxLookahead")?e.maxLookahead:Vp.maxLookahead,this.lookaheadStrategy=Object.hasOwn(e,"lookaheadStrategy")?e.lookaheadStrategy:new up({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=[],this.currRuleLookaheadFuncs=[]}preComputeLookaheadFunctions(e){e.forEach(e=>{this.TRACE_INIT(`${e.name} Rule Lookahead`,()=>{const{alternation:t,repetition:r,option:n,repetitionMandatory:i,repetitionMandatoryWithSeparator:a,repetitionWithSeparator:s}=fp(e);t.forEach(t=>{const r=0===t.idx?"":t.idx;this.TRACE_INIT(`${tl(t)}${r}`,()=>{const r=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:t.idx,rule:e,maxLookahead:t.maxLookahead||this.maxLookahead,hasPredicates:t.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled});this.setLaFuncCache(this.fullRuleNameToShort[e.name],256|t.idx,r)})}),r.forEach(t=>{this.computeLookaheadFunc(e,t.idx,768,"Repetition",t.maxLookahead,tl(t))}),n.forEach(t=>{this.computeLookaheadFunc(e,t.idx,512,"Option",t.maxLookahead,tl(t))}),i.forEach(t=>{this.computeLookaheadFunc(e,t.idx,sp,"RepetitionMandatory",t.maxLookahead,tl(t))}),a.forEach(t=>{this.computeLookaheadFunc(e,t.idx,lp,"RepetitionMandatoryWithSeparator",t.maxLookahead,tl(t))}),s.forEach(t=>{this.computeLookaheadFunc(e,t.idx,op,"RepetitionWithSeparator",t.maxLookahead,tl(t))})})})}computeLookaheadFunc(e,t,r,n,i,a){this.TRACE_INIT(`${a}${0===t?"":t}`,()=>{const a=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:t,rule:e,maxLookahead:i||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:n});this.setLaFuncCache(this.fullRuleNameToShort[e.name],r|t,a)})}setLaFuncCache(e,t,r){let n=this.lookAheadFuncsCache[e];void 0===n&&(n=[],this.lookAheadFuncsCache[e]=n),n[t]=r}},pp=class extends Qo{static{Ue(this,"DslMethodsCollectorVisitor")}constructor(){super(...arguments),this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(e){this.dslMethods.option.push(e)}visitRepetitionWithSeparator(e){this.dslMethods.repetitionWithSeparator.push(e)}visitRepetitionMandatory(e){this.dslMethods.repetitionMandatory.push(e)}visitRepetitionMandatoryWithSeparator(e){this.dslMethods.repetitionMandatoryWithSeparator.push(e)}visitRepetition(e){this.dslMethods.repetition.push(e)}visitAlternation(e){this.dslMethods.alternation.push(e)}},dp=new pp;function fp(e){dp.reset(),e.accept(dp);const t=dp.dslMethods;return dp.reset(),t}function mp(e,t){-1===e.startOffset?(e.startOffset=t.startOffset,e.endOffset=t.endOffset):e.endOffset<t.endOffset==!0&&(e.endOffset=t.endOffset)}function hp(e,t){-1===e.startOffset?(e.startOffset=t.startOffset,e.startColumn=t.startColumn,e.startLine=t.startLine,e.endOffset=t.endOffset,e.endColumn=t.endColumn,e.endLine=t.endLine):e.endOffset<t.endOffset==!0&&(e.endOffset=t.endOffset,e.endColumn=t.endColumn,e.endLine=t.endLine)}function yp(e,t,r){void 0===e.children[r]?e.children[r]=[t]:e.children[r].push(t)}function gp(e,t,r){void 0===e.children[t]?e.children[t]=[r]:e.children[t].push(r)}Ue(fp,"collectMethods"),Ue(mp,"setNodeLocationOnlyOffset"),Ue(hp,"setNodeLocationFull"),Ue(yp,"addTerminalToCst"),Ue(gp,"addNoneTerminalToCst");var Tp,vp;function Rp(e,t){Object.defineProperty(e,"name",{enumerable:!1,configurable:!0,writable:!1,value:t})}function $p(e,t){const r=Object.keys(e),n=r.length;for(let i=0;i<n;i++){const n=e[r[i]],a=n.length;for(let e=0;e<a;e++){const r=n[e];void 0===r.tokenTypeIdx&&this[r.name](r.children,t)}}}function Cp(e,t){const r=Ue(function(){},"derivedConstructor");Rp(r,e+"BaseSemantics");const n={visit:Ue(function(e,t){if(Array.isArray(e)&&(e=e[0]),void 0!==e)return this[e.name](e.children,t)},"visit"),validateVisitor:Ue(function(){const e=bp(this,t);if(0!==e.length){const t=e.map(e=>e.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>:\n\t${t.join("\n\n").replace(/\n/g,"\n\t")}`)}},"validateVisitor")};return r.prototype=n,r.prototype.constructor=r,r._RULE_NAMES=t,r}function Ep(e,t,r){const n=Ue(function(){},"derivedConstructor");Rp(n,e+"BaseSemanticsWithDefaults");const i=Object.create(r.prototype);return t.forEach(e=>{i[e]=$p}),n.prototype=i,n.prototype.constructor=n,n}function bp(e,t){return Ap(e,t)}function Ap(e,t){return t.filter(t=>"function"==typeof e[t]==!1).map(t=>({msg:`Missing visitor method: <${t}> on ${e.constructor.name} CST Visitor.`,type:Tp.MISSING_METHOD,methodName:t})).filter(Boolean)}Ue(Rp,"defineNameProp"),Ue($p,"defaultVisit"),Ue(Cp,"createBaseSemanticVisitorConstructor"),Ue(Ep,"createBaseVisitorConstructorWithDefaults"),(vp=Tp||(Tp={}))[vp.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",vp[vp.MISSING_METHOD=1]="MISSING_METHOD",Ue(bp,"validateVisitor"),Ue(Ap,"validateMissingCstMethods");var Sp=class{static{Ue(this,"TreeBuilder")}initTreeBuilder(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=Object.hasOwn(e,"nodeLocationTracking")?e.nodeLocationTracking:Vp.nodeLocationTracking,this.outputCst)if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=hp,this.setNodeLocationFromNode=hp,this.cstPostRule=()=>{},this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=()=>{},this.setNodeLocationFromNode=()=>{},this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=mp,this.setNodeLocationFromNode=mp,this.cstPostRule=()=>{},this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=()=>{},this.setNodeLocationFromNode=()=>{},this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else{if(!/none/i.test(this.nodeLocationTracking))throw Error(`Invalid <nodeLocationTracking> config option: "${e.nodeLocationTracking}"`);this.setNodeLocationFromToken=()=>{},this.setNodeLocationFromNode=()=>{},this.cstPostRule=()=>{},this.setInitialNodeLocation=()=>{}}else this.cstInvocationStateUpdate=()=>{},this.cstFinallyStateUpdate=()=>{},this.cstPostTerminal=()=>{},this.cstPostNonTerminal=()=>{},this.cstPostRule=()=>{}}setInitialNodeLocationOnlyOffsetRecovery(e){e.location={startOffset:-1,endOffset:-1}}setInitialNodeLocationOnlyOffsetRegular(e){e.location={startOffset:this.LA_FAST(1).startOffset,endOffset:-1}}setInitialNodeLocationFullRecovery(e){e.location={startOffset:-1,startLine:-1,startColumn:-1,endOffset:-1,endLine:-1,endColumn:-1}}setInitialNodeLocationFullRegular(e){const t=this.LA_FAST(1);e.location={startOffset:t.startOffset,startLine:t.startLine,startColumn:t.startColumn,endOffset:-1,endLine:-1,endColumn:-1}}cstInvocationStateUpdate(e){const t={name:e,children:Object.create(null)};this.setInitialNodeLocation(t),this.CST_STACK.push(t)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(e){const t=this.LA(0),r=e.location;-1!==r.startOffset&&r.startOffset<=t.startOffset==!0?(r.endOffset=t.endOffset,r.endLine=t.endLine,r.endColumn=t.endColumn):(r.startOffset=-1,r.startLine=-1,r.startColumn=-1)}cstPostRuleOnlyOffset(e){const t=this.LA(0),r=e.location;-1!==r.startOffset&&r.startOffset<=t.startOffset==!0?r.endOffset=t.endOffset:r.startOffset=-1}cstPostTerminal(e,t){const r=this.CST_STACK[this.CST_STACK.length-1];yp(r,t,e),this.setNodeLocationFromToken(r.location,t)}cstPostNonTerminal(e,t){const r=this.CST_STACK[this.CST_STACK.length-1];gp(r,t,e),this.setNodeLocationFromNode(r.location,e.location)}get currCSTNode(){return this.CST_STACK[this.CST_STACK.length-1]}getBaseCstVisitorConstructor(){if(void 0===this.baseCstVisitorConstructor){const e=Cp(this.className,Object.keys(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(void 0===this.baseCstVisitorWithDefaultsConstructor){const e=Ep(this.className,Object.keys(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor}getPreviousExplicitRuleShortName(){return this.RULE_STACK[this.RULE_STACK_IDX-1]}getLastExplicitRuleOccurrenceIndex(){return this.RULE_OCCURRENCE_STACK[this.RULE_OCCURRENCE_STACK_IDX]}},xp=class{static{Ue(this,"LexerAdapter")}initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(e){if(!0!==this.selfAnalysisDone)throw Error("Missing <performSelfAnalysis> invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=e,this.tokVectorLength=e.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVectorLength-2?(this.consumeToken(),this.LA_FAST(1)):qp}LA_FAST(e){const t=this.currIdx+e;return this.tokVector[t]}LA(e){const t=this.currIdx+e;return t<0||this.tokVectorLength<=t?qp:this.tokVector[t]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(e){this.currIdx=e}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVectorLength-1}getLexerPosition(){return this.exportLexerState()}},kp=class{static{Ue(this,"RecognizerApi")}ACTION(e){return e.call(this)}consume(e,t,r){return this.consumeInternal(t,e,r)}subrule(e,t,r){return this.subruleInternal(t,e,r)}option(e,t){return this.optionInternal(t,e)}or(e,t){return this.orInternal(t,e)}many(e,t){return this.manyInternal(e,t)}atLeastOne(e,t){return this.atLeastOneInternal(e,t)}CONSUME(e,t){return this.consumeInternal(e,0,t)}CONSUME1(e,t){return this.consumeInternal(e,1,t)}CONSUME2(e,t){return this.consumeInternal(e,2,t)}CONSUME3(e,t){return this.consumeInternal(e,3,t)}CONSUME4(e,t){return this.consumeInternal(e,4,t)}CONSUME5(e,t){return this.consumeInternal(e,5,t)}CONSUME6(e,t){return this.consumeInternal(e,6,t)}CONSUME7(e,t){return this.consumeInternal(e,7,t)}CONSUME8(e,t){return this.consumeInternal(e,8,t)}CONSUME9(e,t){return this.consumeInternal(e,9,t)}SUBRULE(e,t){return this.subruleInternal(e,0,t)}SUBRULE1(e,t){return this.subruleInternal(e,1,t)}SUBRULE2(e,t){return this.subruleInternal(e,2,t)}SUBRULE3(e,t){return this.subruleInternal(e,3,t)}SUBRULE4(e,t){return this.subruleInternal(e,4,t)}SUBRULE5(e,t){return this.subruleInternal(e,5,t)}SUBRULE6(e,t){return this.subruleInternal(e,6,t)}SUBRULE7(e,t){return this.subruleInternal(e,7,t)}SUBRULE8(e,t){return this.subruleInternal(e,8,t)}SUBRULE9(e,t){return this.subruleInternal(e,9,t)}OPTION(e){return this.optionInternal(e,0)}OPTION1(e){return this.optionInternal(e,1)}OPTION2(e){return this.optionInternal(e,2)}OPTION3(e){return this.optionInternal(e,3)}OPTION4(e){return this.optionInternal(e,4)}OPTION5(e){return this.optionInternal(e,5)}OPTION6(e){return this.optionInternal(e,6)}OPTION7(e){return this.optionInternal(e,7)}OPTION8(e){return this.optionInternal(e,8)}OPTION9(e){return this.optionInternal(e,9)}OR(e){return this.orInternal(e,0)}OR1(e){return this.orInternal(e,1)}OR2(e){return this.orInternal(e,2)}OR3(e){return this.orInternal(e,3)}OR4(e){return this.orInternal(e,4)}OR5(e){return this.orInternal(e,5)}OR6(e){return this.orInternal(e,6)}OR7(e){return this.orInternal(e,7)}OR8(e){return this.orInternal(e,8)}OR9(e){return this.orInternal(e,9)}MANY(e){this.manyInternal(0,e)}MANY1(e){this.manyInternal(1,e)}MANY2(e){this.manyInternal(2,e)}MANY3(e){this.manyInternal(3,e)}MANY4(e){this.manyInternal(4,e)}MANY5(e){this.manyInternal(5,e)}MANY6(e){this.manyInternal(6,e)}MANY7(e){this.manyInternal(7,e)}MANY8(e){this.manyInternal(8,e)}MANY9(e){this.manyInternal(9,e)}MANY_SEP(e){this.manySepFirstInternal(0,e)}MANY_SEP1(e){this.manySepFirstInternal(1,e)}MANY_SEP2(e){this.manySepFirstInternal(2,e)}MANY_SEP3(e){this.manySepFirstInternal(3,e)}MANY_SEP4(e){this.manySepFirstInternal(4,e)}MANY_SEP5(e){this.manySepFirstInternal(5,e)}MANY_SEP6(e){this.manySepFirstInternal(6,e)}MANY_SEP7(e){this.manySepFirstInternal(7,e)}MANY_SEP8(e){this.manySepFirstInternal(8,e)}MANY_SEP9(e){this.manySepFirstInternal(9,e)}AT_LEAST_ONE(e){this.atLeastOneInternal(0,e)}AT_LEAST_ONE1(e){return this.atLeastOneInternal(1,e)}AT_LEAST_ONE2(e){this.atLeastOneInternal(2,e)}AT_LEAST_ONE3(e){this.atLeastOneInternal(3,e)}AT_LEAST_ONE4(e){this.atLeastOneInternal(4,e)}AT_LEAST_ONE5(e){this.atLeastOneInternal(5,e)}AT_LEAST_ONE6(e){this.atLeastOneInternal(6,e)}AT_LEAST_ONE7(e){this.atLeastOneInternal(7,e)}AT_LEAST_ONE8(e){this.atLeastOneInternal(8,e)}AT_LEAST_ONE9(e){this.atLeastOneInternal(9,e)}AT_LEAST_ONE_SEP(e){this.atLeastOneSepFirstInternal(0,e)}AT_LEAST_ONE_SEP1(e){this.atLeastOneSepFirstInternal(1,e)}AT_LEAST_ONE_SEP2(e){this.atLeastOneSepFirstInternal(2,e)}AT_LEAST_ONE_SEP3(e){this.atLeastOneSepFirstInternal(3,e)}AT_LEAST_ONE_SEP4(e){this.atLeastOneSepFirstInternal(4,e)}AT_LEAST_ONE_SEP5(e){this.atLeastOneSepFirstInternal(5,e)}AT_LEAST_ONE_SEP6(e){this.atLeastOneSepFirstInternal(6,e)}AT_LEAST_ONE_SEP7(e){this.atLeastOneSepFirstInternal(7,e)}AT_LEAST_ONE_SEP8(e){this.atLeastOneSepFirstInternal(8,e)}AT_LEAST_ONE_SEP9(e){this.atLeastOneSepFirstInternal(9,e)}RULE(e,t,r=Wp){if(this.definedRulesNames.includes(e)){const t={message:Bu.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),type:Up.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(t)}this.definedRulesNames.push(e);const n=this.defineRule(e,t,r);return this[e]=n,n}OVERRIDE_RULE(e,t,r=Wp){const n=_c(e,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(n);const i=this.defineRule(e,t,r);return this[e]=i,i}BACKTRACK(e,t){var r;const n=null!==(r=e.coreRule)&&void 0!==r?r:e;return function(){this.isBackTrackingStack.push(1);const e=this.saveRecogState();try{return n.apply(this,t),!0}catch(e){if(Yc(e))return!1;throw e}finally{this.reloadRecogState(e),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return Ho(Object.values(this.gastProductionsCache))}},wp=class{static{Ue(this,"RecognizerEngine")}initRecognizerEngine(e,t){if(this.className=this.constructor.name,this.shortRuleNameToFull=[],this.fullRuleNameToShort={},this.ruleShortNameIdx=0,this.tokenMatcher=uu,this.subruleIdx=0,this.currRuleShortName=-1,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_STACK_IDX=-1,this.RULE_OCCURRENCE_STACK=[],this.RULE_OCCURRENCE_STACK_IDX=-1,this.gastProductionsCache={},Object.hasOwn(t,"serializedGrammar"))throw Error("The Parser's configuration can no longer contain a <serializedGrammar> property.\n\tSee: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0\n\tFor Further details.");if(Array.isArray(e)){if(0===e.length)throw Error("A Token Vocabulary cannot be empty.\n\tNote that the first argument for the parser constructor\n\tis no longer a Token vector (since v4.0).");if("number"==typeof e[0].startOffset)throw Error("The Parser constructor no longer accepts a token vector as the first argument.\n\tSee: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0\n\tFor Further details.")}if(Array.isArray(e))this.tokensMap=e.reduce((e,t)=>(e[t.name]=t,e),{});else if(Object.hasOwn(e,"modes")&&Object.values(e.modes).flat().every(Cu)){const t=Object.values(e.modes).flat(),r=[...new Set(t)];this.tokensMap=r.reduce((e,t)=>(e[t.name]=t,e),{})}else{if("object"!=typeof e||null===e)throw new Error("<tokensDictionary> argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap=Object.assign({},e)}this.tokensMap.EOF=Ku;const r=(Object.hasOwn(e,"modes")?Object.values(e.modes).flat():Object.values(e)).every(e=>{var t;return 0==(null===(t=e.categoryMatches)||void 0===t?void 0:t.length)});this.tokenMatcher=r?uu:lu,du(Object.values(this.tokensMap))}defineRule(e,t,r){if(this.selfAnalysisDone)throw Error(`Grammar rule <${e}> may not be defined after the 'performSelfAnalysis' method has been called'\nMake sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);const n=Object.hasOwn(r,"resyncEnabled")?r.resyncEnabled:Wp.resyncEnabled,i=Object.hasOwn(r,"recoveryValueFunc")?r.recoveryValueFunc:Wp.recoveryValueFunc,a=this.ruleShortNameIdx++;let s;this.shortRuleNameToFull[a]=e,this.fullRuleNameToShort[e]=a,s=!0===this.outputCst?Ue(function(...r){try{this.ruleInvocationStateUpdate(a,e,this.subruleIdx),t.apply(this,r);const n=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(n),n}catch(e){return this.invokeRuleCatch(e,n,i)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTry"):Ue(function(...r){try{return this.ruleInvocationStateUpdate(a,e,this.subruleIdx),t.apply(this,r)}catch(e){return this.invokeRuleCatch(e,n,i)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTryCst");const o=Ue(function(...t){this.onBeforeParse(e);try{return s.apply(this,t)}finally{this.onAfterParse(e)}},"rootRule");return Object.assign(o,{ruleName:e,originalGrammarAction:t,coreRule:s})}invokeRuleCatch(e,t,r){const n=0===this.RULE_STACK_IDX,i=t&&!this.isBackTracking()&&this.recoveryEnabled;if(Yc(e)){const t=e;if(i){const n=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(n)){if(t.resyncedTokens=this.reSyncTo(n),this.outputCst){const e=this.CST_STACK[this.CST_STACK.length-1];return e.recoveredNode=!0,e}return r(e)}if(this.outputCst){const e=this.CST_STACK[this.CST_STACK.length-1];e.recoveredNode=!0,t.partialCstResult=e}throw t}if(n)return this.moveToTerminatedState(),r(e);throw t}throw e}optionInternal(e,t){const r=512|t;return this.optionInternalLogic(e,t,r)}optionInternalLogic(e,t,r){let n,i=this.currRuleLookaheadFuncs[r];if("function"!=typeof e){n=e.DEF;const t=e.GATE;if(void 0!==t){const e=i;i=Ue(()=>t.call(this)&&e.call(this),"lookAheadFunc")}}else n=e;if(!0===i.call(this))return n.call(this)}atLeastOneInternal(e,t){const r=sp|e;return this.atLeastOneInternalLogic(e,t,r)}atLeastOneInternalLogic(e,t,r){let n,i=this.currRuleLookaheadFuncs[r];if("function"!=typeof t){n=t.DEF;const e=t.GATE;if(void 0!==e){const t=i;i=Ue(()=>e.call(this)&&t.call(this),"lookAheadFunc")}}else n=t;if(!0!==i.call(this))throw this.raiseEarlyExitException(e,Wu.REPETITION_MANDATORY,t.ERR_MSG);{let e=this.doSingleRepetition(n);for(;!0===i.call(this)&&!0===e;)e=this.doSingleRepetition(n)}this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,t],i,sp,e,tc)}atLeastOneSepFirstInternal(e,t){const r=lp|e;this.atLeastOneSepFirstInternalLogic(e,t,r)}atLeastOneSepFirstInternalLogic(e,t,r){const n=t.DEF,i=t.SEP;if(!0!==this.currRuleLookaheadFuncs[r].call(this))throw this.raiseEarlyExitException(e,Wu.REPETITION_MANDATORY_WITH_SEPARATOR,t.ERR_MSG);{n.call(this);const t=Ue(()=>this.tokenMatcher(this.LA_FAST(1),i),"separatorLookAheadFunc");for(;!0===this.tokenMatcher(this.LA_FAST(1),i);)this.CONSUME(i),n.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,i,t,n,rc],t,lp,e,rc)}}manyInternal(e,t){const r=768|e;return this.manyInternalLogic(e,t,r)}manyInternalLogic(e,t,r){let n,i=this.currRuleLookaheadFuncs[r];if("function"!=typeof t){n=t.DEF;const e=t.GATE;if(void 0!==e){const t=i;i=Ue(()=>e.call(this)&&t.call(this),"lookaheadFunction")}}else n=t;let a=!0;for(;!0===i.call(this)&&!0===a;)a=this.doSingleRepetition(n);this.attemptInRepetitionRecovery(this.manyInternal,[e,t],i,768,e,Ju,a)}manySepFirstInternal(e,t){const r=op|e;this.manySepFirstInternalLogic(e,t,r)}manySepFirstInternalLogic(e,t,r){const n=t.DEF,i=t.SEP;if(!0===this.currRuleLookaheadFuncs[r].call(this)){n.call(this);const t=Ue(()=>this.tokenMatcher(this.LA_FAST(1),i),"separatorLookAheadFunc");for(;!0===this.tokenMatcher(this.LA_FAST(1),i);)this.CONSUME(i),n.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,i,t,n,ec],t,op,e,ec)}}repetitionSepSecondInternal(e,t,r,n,i){for(;r();)this.CONSUME(t),n.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,t,r,n,i],r,lp,e,i)}doSingleRepetition(e){const t=this.getLexerPosition();e.call(this);return this.getLexerPosition()>t}orInternal(e,t){const r=256|t,n=Array.isArray(e)?e:e.DEF,i=this.currRuleLookaheadFuncs[r].call(this,n);if(void 0!==i){return n[i].ALT.call(this)}this.raiseNoAltException(t,e.ERR_MSG)}ruleFinallyStateUpdate(){this.RULE_STACK_IDX--,this.RULE_OCCURRENCE_STACK_IDX--,this.RULE_STACK_IDX>=0&&(this.currRuleShortName=this.RULE_STACK[this.RULE_STACK_IDX],this.currRuleLookaheadFuncs=this.lookAheadFuncsCache[this.currRuleShortName]),this.cstFinallyStateUpdate()}subruleInternal(e,t,r){let n;try{const i=void 0!==r?r.ARGS:void 0;return this.subruleIdx=t,n=e.coreRule.apply(this,i),this.cstPostNonTerminal(n,void 0!==r&&void 0!==r.LABEL?r.LABEL:e.ruleName),n}catch(t){throw this.subruleInternalError(t,r,e.ruleName)}}subruleInternalError(e,t,r){throw Yc(e)&&void 0!==e.partialCstResult&&(this.cstPostNonTerminal(e.partialCstResult,void 0!==t&&void 0!==t.LABEL?t.LABEL:r),delete e.partialCstResult),e}consumeInternal(e,t,r){let n;try{const t=this.LA_FAST(1);!0===this.tokenMatcher(t,e)?(this.consumeToken(),n=t):this.consumeInternalError(e,t,r)}catch(r){n=this.consumeInternalRecovery(e,t,r)}return this.cstPostTerminal(void 0!==r&&void 0!==r.LABEL?r.LABEL:e.name,n),n}consumeInternalError(e,t,r){let n;const i=this.LA(0);throw n=void 0!==r&&r.ERR_MSG?r.ERR_MSG:this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:t,previous:i,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new Qc(n,t,i))}consumeInternalRecovery(e,t,r){if(!this.recoveryEnabled||"MismatchedTokenException"!==r.name||this.isBackTracking())throw r;{const n=this.getFollowsForInRuleRecovery(e,t);try{return this.tryInRuleRecovery(e,n)}catch(e){throw e.name===rp?r:e}}}saveRecogState(){const e=this.errors,t=this.RULE_STACK.slice(0,this.RULE_STACK_IDX+1);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:t,CST_STACK:this.CST_STACK}}reloadRecogState(e){this.errors=e.errors,this.importLexerState(e.lexerState);const t=e.RULE_STACK;for(let e=0;e<t.length;e++)this.RULE_STACK[e]=t[e];this.RULE_STACK_IDX=t.length-1,this.RULE_STACK_IDX>=0&&(this.currRuleShortName=this.RULE_STACK[this.RULE_STACK_IDX],this.currRuleLookaheadFuncs=this.lookAheadFuncsCache[this.currRuleShortName])}ruleInvocationStateUpdate(e,t,r){this.RULE_OCCURRENCE_STACK[++this.RULE_OCCURRENCE_STACK_IDX]=r,this.RULE_STACK[++this.RULE_STACK_IDX]=e,this.currRuleShortName=e,this.currRuleLookaheadFuncs=this.lookAheadFuncsCache[e],this.cstInvocationStateUpdate(t)}isBackTracking(){return 0!==this.isBackTrackingStack.length}getCurrRuleFullName(){const e=this.currRuleShortName;return this.shortRuleNameToFull[e]}shortRuleNameToFullName(e){return this.shortRuleNameToFull[e]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),Ku)}reset(){this.resetLexerState(),this.subruleIdx=0,this.currRuleShortName=-1,this.currRuleLookaheadFuncs=[],this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK_IDX=-1,this.RULE_OCCURRENCE_STACK_IDX=-1,this.CST_STACK=[]}onBeforeParse(e){for(let e=0;e<this.maxLookahead+1;e++)this.tokVector.push(qp)}onAfterParse(e){if(!1===this.isAtEndOfInput()){const e=this.LA(1),t=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:e,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new Jc(t,e))}for(;this.tokVector.at(-1)===qp;)this.tokVector.pop()}},_p=class{static{Ue(this,"ErrorHandler")}initErrorHandler(e){this._errors=[],this.errorMessageProvider=Object.hasOwn(e,"errorMessageProvider")?e.errorMessageProvider:Vp.errorMessageProvider}SAVE_ERROR(e){if(Yc(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:this.RULE_OCCURRENCE_STACK.slice(0,this.RULE_OCCURRENCE_STACK_IDX+1)},this._errors.push(e),e;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return[...this._errors]}set errors(e){this._errors=e}raiseEarlyExitException(e,t,r){const n=this.getCurrRuleFullName(),i=vc(e,this.getGAstProductions()[n],t,this.maxLookahead)[0],a=[];for(let e=1;e<=this.maxLookahead;e++)a.push(this.LA(e));const s=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:i,actual:a,previous:this.LA(0),customUserDescription:r,ruleName:n});throw this.SAVE_ERROR(new ep(s,this.LA(1),this.LA(0)))}raiseNoAltException(e,t){const r=this.getCurrRuleFullName(),n=Tc(e,this.getGAstProductions()[r],this.maxLookahead),i=[];for(let e=1;e<=this.maxLookahead;e++)i.push(this.LA(e));const a=this.LA(0),s=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:n,actual:i,previous:a,customUserDescription:t,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new Zc(s,this.LA(1),a))}},Np={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(Np);var Ip=!0,Op=ju({name:"RECORDING_PHASE_TOKEN",pattern:xu.NA});du([Op]);var Pp=Gu(Op,"This IToken indicates the Parser is in Recording Phase\n\tSee: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details",-1,-1,-1,-1,-1,-1);Object.freeze(Pp);var Dp={name:"This CSTNode indicates the Parser is in Recording Phase\n\tSee: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details",children:{}},Lp=class{static{Ue(this,"GastRecorder")}initGastRecorder(e){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",()=>{for(let e=0;e<10;e++){const t=e>0?e:"";this[`CONSUME${t}`]=function(t,r){return this.consumeInternalRecord(t,e,r)},this[`SUBRULE${t}`]=function(t,r){return this.subruleInternalRecord(t,e,r)},this[`OPTION${t}`]=function(t){return this.optionInternalRecord(t,e)},this[`OR${t}`]=function(t){return this.orInternalRecord(t,e)},this[`MANY${t}`]=function(t){this.manyInternalRecord(e,t)},this[`MANY_SEP${t}`]=function(t){this.manySepFirstInternalRecord(e,t)},this[`AT_LEAST_ONE${t}`]=function(t){this.atLeastOneInternalRecord(e,t)},this[`AT_LEAST_ONE_SEP${t}`]=function(t){this.atLeastOneSepFirstInternalRecord(e,t)}}this.consume=function(e,t,r){return this.consumeInternalRecord(t,e,r)},this.subrule=function(e,t,r){return this.subruleInternalRecord(t,e,r)},this.option=function(e,t){return this.optionInternalRecord(t,e)},this.or=function(e,t){return this.orInternalRecord(t,e)},this.many=function(e,t){this.manyInternalRecord(e,t)},this.atLeastOne=function(e,t){this.atLeastOneInternalRecord(e,t)},this.ACTION=this.ACTION_RECORD,this.BACKTRACK=this.BACKTRACK_RECORD,this.LA=this.LA_RECORD})}disableRecording(){this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",()=>{const e=this;for(let t=0;t<10;t++){const r=t>0?t:"";delete e[`CONSUME${r}`],delete e[`SUBRULE${r}`],delete e[`OPTION${r}`],delete e[`OR${r}`],delete e[`MANY${r}`],delete e[`MANY_SEP${r}`],delete e[`AT_LEAST_ONE${r}`],delete e[`AT_LEAST_ONE_SEP${r}`]}delete e.consume,delete e.subrule,delete e.option,delete e.or,delete e.many,delete e.atLeastOne,delete e.ACTION,delete e.BACKTRACK,delete e.LA})}ACTION_RECORD(e){}BACKTRACK_RECORD(e,t){return()=>!0}LA_RECORD(e){return qp}topLevelRuleRecord(e,t){try{const r=new Fo({definition:[],name:e});return r.name=e,this.recordingProdStack.push(r),t.call(this),this.recordingProdStack.pop(),r}catch(e){if(!0!==e.KNOWN_RECORDER_ERROR)try{e.message=e.message+'\n\t This error was thrown during the "grammar recording phase" For more info see:\n\thttps://chevrotain.io/docs/guide/internals.html#grammar-recording'}catch(t){throw e}throw e}}optionInternalRecord(e,t){return Mp.call(this,Go,e,t)}atLeastOneInternalRecord(e,t){Mp.call(this,zo,t,e)}atLeastOneSepFirstInternalRecord(e,t){Mp.call(this,qo,t,e,Ip)}manyInternalRecord(e,t){Mp.call(this,Uo,t,e)}manySepFirstInternalRecord(e,t){Mp.call(this,Bo,t,e,Ip)}orInternalRecord(e,t){return jp.call(this,e,t)}subruleInternalRecord(e,t,r){if(Kp(t),!e||!Object.hasOwn(e,"ruleName")){const r=new Error(`<SUBRULE${Fp(t)}> argument is invalid expecting a Parser method reference but got: <${JSON.stringify(e)}>\n inside top level rule: <${this.recordingProdStack[0].name}>`);throw r.KNOWN_RECORDER_ERROR=!0,r}const n=this.recordingProdStack.at(-1),i=e.ruleName,a=new jo({idx:t,nonTerminalName:i,label:null==r?void 0:r.LABEL,referencedRule:void 0});return n.definition.push(a),this.outputCst?Dp:Np}consumeInternalRecord(e,t,r){if(Kp(t),!Tu(e)){const r=new Error(`<CONSUME${Fp(t)}> argument is invalid expecting a TokenType reference but got: <${JSON.stringify(e)}>\n inside top level rule: <${this.recordingProdStack[0].name}>`);throw r.KNOWN_RECORDER_ERROR=!0,r}const n=this.recordingProdStack.at(-1),i=new Wo({idx:t,terminalType:e,label:null==r?void 0:r.LABEL});return n.definition.push(i),Pp}};function Mp(e,t,r,n=!1){Kp(r);const i=this.recordingProdStack.at(-1),a="function"==typeof t?t:t.DEF,s=new e({definition:[],idx:r});return n&&(s.separator=t.SEP),Object.hasOwn(t,"MAX_LOOKAHEAD")&&(s.maxLookahead=t.MAX_LOOKAHEAD),this.recordingProdStack.push(s),a.call(this),i.definition.push(s),this.recordingProdStack.pop(),Np}function jp(e,t){Kp(t);const r=this.recordingProdStack.at(-1),n=!1===Array.isArray(e),i=!1===n?e:e.DEF,a=new Vo({definition:[],idx:t,ignoreAmbiguities:n&&!0===e.IGNORE_AMBIGUITIES});Object.hasOwn(e,"MAX_LOOKAHEAD")&&(a.maxLookahead=e.MAX_LOOKAHEAD);const s=i.some(e=>"function"==typeof e.GATE);return a.hasPredicates=s,r.definition.push(a),i.forEach(e=>{const t=new Ko({definition:[]});a.definition.push(t),Object.hasOwn(e,"IGNORE_AMBIGUITIES")?t.ignoreAmbiguities=e.IGNORE_AMBIGUITIES:Object.hasOwn(e,"GATE")&&(t.ignoreAmbiguities=!0),this.recordingProdStack.push(t),e.ALT.call(this),this.recordingProdStack.pop()}),Np}function Fp(e){return 0===e?"":`${e}`}function Kp(e){if(e<0||e>255){const t=new Error(`Invalid DSL Method idx value: <${e}>\n\tIdx value must be a none negative value smaller than 256`);throw t.KNOWN_RECORDER_ERROR=!0,t}}Ue(Mp,"recordProd"),Ue(jp,"recordOrProd"),Ue(Fp,"getIdxSuffix"),Ue(Kp,"assertMethodIdxIsValid");var Gp=class{static{Ue(this,"PerformanceTracer")}initPerformanceTracer(e){if(Object.hasOwn(e,"traceInitPerf")){const t=e.traceInitPerf,r="number"==typeof t;this.traceInitMaxIdent=r?t:1/0,this.traceInitPerf=r?t>0:t}else this.traceInitMaxIdent=0,this.traceInitPerf=Vp.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(e,t){if(!0===this.traceInitPerf){this.traceInitIndent++;const r=new Array(this.traceInitIndent+1).join("\t");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${r}--\x3e <${e}>`);const{time:n,value:i}=Oo(t),a=n>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&a(`${r}<-- <${e}> time: ${n}ms`),this.traceInitIndent--,i}return t()}};function zp(e,t){t.forEach(t=>{const r=t.prototype;Object.getOwnPropertyNames(r).forEach(n=>{if("constructor"===n)return;const i=Object.getOwnPropertyDescriptor(r,n);i&&(i.get||i.set)?Object.defineProperty(e.prototype,n,i):e.prototype[n]=t.prototype[n]})})}Ue(zp,"applyMixins");var qp=Gu(Ku,"",-1,-1,-1,-1,-1,-1);Object.freeze(qp);var Up,Bp,Vp=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:qu,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),Wp=Object.freeze({recoveryValueFunc:Ue(()=>{},"recoveryValueFunc"),resyncEnabled:!0});function Hp(e=void 0){return function(){return e}}(Bp=Up||(Up={}))[Bp.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",Bp[Bp.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",Bp[Bp.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",Bp[Bp.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",Bp[Bp.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",Bp[Bp.LEFT_RECURSION=5]="LEFT_RECURSION",Bp[Bp.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",Bp[Bp.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",Bp[Bp.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",Bp[Bp.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",Bp[Bp.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",Bp[Bp.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",Bp[Bp.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",Bp[Bp.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION",Ue(Hp,"EMPTY_ALT");var Yp=class e{static{Ue(this,"Parser")}static performSelfAnalysis(e){throw Error("The **static** `performSelfAnalysis` method has been deprecated.\t\nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let t;this.selfAnalysisDone=!0;const r=this.className;this.TRACE_INIT("toFastProps",()=>{Po(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),this.definedRulesNames.forEach(e=>{const t=this[e].originalGrammarAction;let r;this.TRACE_INIT(`${e} Rule`,()=>{r=this.topLevelRuleRecord(e,t)}),this.gastProductionsCache[e]=r})}finally{this.disableRecording()}});let n=[];if(this.TRACE_INIT("Grammar Resolving",()=>{n=zc({rules:Object.values(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(n)}),this.TRACE_INIT("Grammar Validations",()=>{if(0===n.length&&!1===this.skipValidations){const e=qc({rules:Object.values(this.gastProductionsCache),tokenTypes:Object.values(this.tokensMap),errMsgProvider:Bu,grammarName:r}),t=Ec({lookaheadStrategy:this.lookaheadStrategy,rules:Object.values(this.gastProductionsCache),tokenTypes:Object.values(this.tokensMap),grammarName:r});this.definitionErrors=this.definitionErrors.concat(e,t)}}),0===this.definitionErrors.length&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{const e=cl(Object.values(this.gastProductionsCache));this.resyncFollows=e}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var e,t;null===(t=(e=this.lookaheadStrategy).initialize)||void 0===t||t.call(e,{rules:Object.values(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(Object.values(this.gastProductionsCache))})),!e.DEFER_DEFINITION_ERRORS_HANDLING&&0!==this.definitionErrors.length)throw t=this.definitionErrors.map(e=>e.message),new Error(`Parser Definition Errors detected:\n ${t.join("\n-------------------------------\n")}`)})}constructor(e,t){this.definitionErrors=[],this.selfAnalysisDone=!1;const r=this;if(r.initErrorHandler(t),r.initLexerAdapter(),r.initLooksAhead(t),r.initRecognizerEngine(e,t),r.initRecoverable(t),r.initTreeBuilder(t),r.initGastRecorder(t),r.initPerformanceTracer(t),Object.hasOwn(t,"ignoredIssues"))throw new Error("The <ignoredIssues> IParserConfig property has been deprecated.\n\tPlease use the <IGNORE_AMBIGUITIES> flag on the relevant DSL method instead.\n\tSee: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES\n\tFor further details.");this.skipValidations=Object.hasOwn(t,"skipValidations")?t.skipValidations:Vp.skipValidations}};Yp.DEFER_DEFINITION_ERRORS_HANDLING=!1,zp(Yp,[ip,cp,Sp,xp,wp,kp,_p,Lp,Gp]);var Xp=class extends Yp{static{Ue(this,"EmbeddedActionsParser")}constructor(e,t=Vp){const r=Object.assign({},t);r.outputCst=!1,super(e,r)}};function Qp(e,t){for(var r=-1,n=null==e?0:e.length,i=Array(n);++r<n;)i[r]=t(e[r],r,e);return i}Ue(Qp,"arrayMap");var Zp=Qp;function Jp(){this.__data__=[],this.size=0}Ue(Jp,"listCacheClear");var ed=Jp;function td(e,t){return e===t||e!=e&&t!=t}Ue(td,"eq");var rd=td;function nd(e,t){for(var r=e.length;r--;)if(rd(e[r][0],t))return r;return-1}Ue(nd,"assocIndexOf");var id=nd,ad=Array.prototype.splice;function sd(e){var t=this.__data__,r=id(t,e);return!(r<0)&&(r==t.length-1?t.pop():ad.call(t,r,1),--this.size,!0)}Ue(sd,"listCacheDelete");var od=sd;function ld(e){var t=this.__data__,r=id(t,e);return r<0?void 0:t[r][1]}Ue(ld,"listCacheGet");var ud=ld;function cd(e){return id(this.__data__,e)>-1}Ue(cd,"listCacheHas");var pd=cd;function dd(e,t){var r=this.__data__,n=id(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}Ue(dd,"listCacheSet");var fd=dd;function md(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}Ue(md,"ListCache"),md.prototype.clear=ed,md.prototype.delete=od,md.prototype.get=ud,md.prototype.has=pd,md.prototype.set=fd;var hd=md;function yd(){this.__data__=new hd,this.size=0}Ue(yd,"stackClear");var gd=yd;function Td(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}Ue(Td,"stackDelete");var vd=Td;function Rd(e){return this.__data__.get(e)}Ue(Rd,"stackGet");var $d=Rd;function Cd(e){return this.__data__.has(e)}Ue(Cd,"stackHas");var Ed=Cd,bd="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,Ad="object"==typeof self&&self&&self.Object===Object&&self,Sd=bd||Ad||Function("return this")(),xd=Sd.Symbol,kd=Object.prototype,wd=kd.hasOwnProperty,_d=kd.toString,Nd=xd?xd.toStringTag:void 0;function Id(e){var t=wd.call(e,Nd),r=e[Nd];try{e[Nd]=void 0;var n=!0}catch(e){}var i=_d.call(e);return n&&(t?e[Nd]=r:delete e[Nd]),i}Ue(Id,"getRawTag");var Od=Id,Pd=Object.prototype.toString;function Dd(e){return Pd.call(e)}Ue(Dd,"objectToString");var Ld=Dd,Md=xd?xd.toStringTag:void 0;function jd(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":Md&&Md in Object(e)?Od(e):Ld(e)}Ue(jd,"baseGetTag");var Fd=jd;function Kd(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}Ue(Kd,"isObject");var Gd=Kd;function zd(e){if(!Gd(e))return!1;var t=Fd(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}Ue(zd,"isFunction");var qd,Ud=zd,Bd=Sd["__core-js_shared__"],Vd=(qd=/[^.]+$/.exec(Bd&&Bd.keys&&Bd.keys.IE_PROTO||""))?"Symbol(src)_1."+qd:"";function Wd(e){return!!Vd&&Vd in e}Ue(Wd,"isMasked");var Hd=Wd,Yd=Function.prototype.toString;function Xd(e){if(null!=e){try{return Yd.call(e)}catch(e){}try{return e+""}catch(e){}}return""}Ue(Xd,"toSource");var Qd=Xd,Zd=/^\[object .+?Constructor\]$/,Jd=Function.prototype,ef=Object.prototype,tf=Jd.toString,rf=ef.hasOwnProperty,nf=RegExp("^"+tf.call(rf).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function af(e){return!(!Gd(e)||Hd(e))&&(Ud(e)?nf:Zd).test(Qd(e))}Ue(af,"baseIsNative");var sf=af;function of(e,t){return null==e?void 0:e[t]}Ue(of,"getValue");var lf=of;function uf(e,t){var r=lf(e,t);return sf(r)?r:void 0}Ue(uf,"getNative");var cf=uf,pf=cf(Sd,"Map"),df=cf(Object,"create");function ff(){this.__data__=df?df(null):{},this.size=0}Ue(ff,"hashClear");var mf=ff;function hf(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}Ue(hf,"hashDelete");var yf=hf,gf=Object.prototype.hasOwnProperty;function Tf(e){var t=this.__data__;if(df){var r=t[e];return"__lodash_hash_undefined__"===r?void 0:r}return gf.call(t,e)?t[e]:void 0}Ue(Tf,"hashGet");var vf=Tf,Rf=Object.prototype.hasOwnProperty;function $f(e){var t=this.__data__;return df?void 0!==t[e]:Rf.call(t,e)}Ue($f,"hashHas");var Cf=$f;function Ef(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=df&&void 0===t?"__lodash_hash_undefined__":t,this}Ue(Ef,"hashSet");var bf=Ef;function Af(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}Ue(Af,"Hash"),Af.prototype.clear=mf,Af.prototype.delete=yf,Af.prototype.get=vf,Af.prototype.has=Cf,Af.prototype.set=bf;var Sf=Af;function xf(){this.size=0,this.__data__={hash:new Sf,map:new(pf||hd),string:new Sf}}Ue(xf,"mapCacheClear");var kf=xf;function wf(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}Ue(wf,"isKeyable");var _f=wf;function Nf(e,t){var r=e.__data__;return _f(t)?r["string"==typeof t?"string":"hash"]:r.map}Ue(Nf,"getMapData");var If=Nf;function Of(e){var t=If(this,e).delete(e);return this.size-=t?1:0,t}Ue(Of,"mapCacheDelete");var Pf=Of;function Df(e){return If(this,e).get(e)}Ue(Df,"mapCacheGet");var Lf=Df;function Mf(e){return If(this,e).has(e)}Ue(Mf,"mapCacheHas");var jf=Mf;function Ff(e,t){var r=If(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this}Ue(Ff,"mapCacheSet");var Kf=Ff;function Gf(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}Ue(Gf,"MapCache"),Gf.prototype.clear=kf,Gf.prototype.delete=Pf,Gf.prototype.get=Lf,Gf.prototype.has=jf,Gf.prototype.set=Kf;var zf=Gf;function qf(e,t){var r=this.__data__;if(r instanceof hd){var n=r.__data__;if(!pf||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new zf(n)}return r.set(e,t),this.size=r.size,this}Ue(qf,"stackSet");var Uf=qf;function Bf(e){var t=this.__data__=new hd(e);this.size=t.size}Ue(Bf,"Stack"),Bf.prototype.clear=gd,Bf.prototype.delete=vd,Bf.prototype.get=$d,Bf.prototype.has=Ed,Bf.prototype.set=Uf;var Vf=Bf;function Wf(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this}Ue(Wf,"setCacheAdd");var Hf=Wf;function Yf(e){return this.__data__.has(e)}Ue(Yf,"setCacheHas");var Xf=Yf;function Qf(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new zf;++t<r;)this.add(e[t])}Ue(Qf,"SetCache"),Qf.prototype.add=Qf.prototype.push=Hf,Qf.prototype.has=Xf;var Zf=Qf;function Jf(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}Ue(Jf,"arraySome");var em=Jf;function tm(e,t){return e.has(t)}Ue(tm,"cacheHas");var rm=tm;function nm(e,t,r,n,i,a){var s=1&r,o=e.length,l=t.length;if(o!=l&&!(s&&l>o))return!1;var u=a.get(e),c=a.get(t);if(u&&c)return u==t&&c==e;var p=-1,d=!0,f=2&r?new Zf:void 0;for(a.set(e,t),a.set(t,e);++p<o;){var m=e[p],h=t[p];if(n)var y=s?n(h,m,p,t,e,a):n(m,h,p,e,t,a);if(void 0!==y){if(y)continue;d=!1;break}if(f){if(!em(t,function(e,t){if(!rm(f,t)&&(m===e||i(m,e,r,n,a)))return f.push(t)})){d=!1;break}}else if(m!==h&&!i(m,h,r,n,a)){d=!1;break}}return a.delete(e),a.delete(t),d}Ue(nm,"equalArrays");var im=nm,am=Sd.Uint8Array;function sm(e){var t=-1,r=Array(e.size);return e.forEach(function(e,n){r[++t]=[n,e]}),r}Ue(sm,"mapToArray");var om=sm;function lm(e){var t=-1,r=Array(e.size);return e.forEach(function(e){r[++t]=e}),r}Ue(lm,"setToArray");var um=lm,cm=xd?xd.prototype:void 0,pm=cm?cm.valueOf:void 0;function dm(e,t,r,n,i,a,s){switch(r){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=t.byteLength||!a(new am(e),new am(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return rd(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var o=om;case"[object Set]":var l=1&n;if(o||(o=um),e.size!=t.size&&!l)return!1;var u=s.get(e);if(u)return u==t;n|=2,s.set(e,t);var c=im(o(e),o(t),n,i,a,s);return s.delete(e),c;case"[object Symbol]":if(pm)return pm.call(e)==pm.call(t)}return!1}Ue(dm,"equalByTag");var fm=dm;function mm(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}Ue(mm,"arrayPush");var hm=mm,ym=Array.isArray;function gm(e,t,r){var n=t(e);return ym(e)?n:hm(n,r(e))}Ue(gm,"baseGetAllKeys");var Tm=gm;function vm(e,t){for(var r=-1,n=null==e?0:e.length,i=0,a=[];++r<n;){var s=e[r];t(s,r,e)&&(a[i++]=s)}return a}Ue(vm,"arrayFilter");var Rm=vm;function $m(){return[]}Ue($m,"stubArray");var Cm=$m,Em=Object.prototype.propertyIsEnumerable,bm=Object.getOwnPropertySymbols,Am=bm?function(e){return null==e?[]:(e=Object(e),Rm(bm(e),function(t){return Em.call(e,t)}))}:Cm;function Sm(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}Ue(Sm,"baseTimes");var xm=Sm;function km(e){return null!=e&&"object"==typeof e}Ue(km,"isObjectLike");var wm=km;function _m(e){return wm(e)&&"[object Arguments]"==Fd(e)}Ue(_m,"baseIsArguments");var Nm=_m,Im=Object.prototype,Om=Im.hasOwnProperty,Pm=Im.propertyIsEnumerable,Dm=Nm(function(){return arguments}())?Nm:function(e){return wm(e)&&Om.call(e,"callee")&&!Pm.call(e,"callee")},Lm=Dm;function Mm(){return!1}Ue(Mm,"stubFalse");var jm=Mm,Fm="object"==typeof exports&&exports&&!exports.nodeType&&exports,Km=Fm&&"object"==typeof module&&module&&!module.nodeType&&module,Gm=Km&&Km.exports===Fm?Sd.Buffer:void 0,zm=(Gm?Gm.isBuffer:void 0)||jm,qm=/^(?:0|[1-9]\d*)$/;function Um(e,t){var r=typeof e;return!!(t=t??9007199254740991)&&("number"==r||"symbol"!=r&&qm.test(e))&&e>-1&&e%1==0&&e<t}Ue(Um,"isIndex");var Bm=Um;function Vm(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}Ue(Vm,"isLength");var Wm=Vm,Hm={};function Ym(e){return wm(e)&&Wm(e.length)&&!!Hm[Fd(e)]}Hm["[object Float32Array]"]=Hm["[object Float64Array]"]=Hm["[object Int8Array]"]=Hm["[object Int16Array]"]=Hm["[object Int32Array]"]=Hm["[object Uint8Array]"]=Hm["[object Uint8ClampedArray]"]=Hm["[object Uint16Array]"]=Hm["[object Uint32Array]"]=!0,Hm["[object Arguments]"]=Hm["[object Array]"]=Hm["[object ArrayBuffer]"]=Hm["[object Boolean]"]=Hm["[object DataView]"]=Hm["[object Date]"]=Hm["[object Error]"]=Hm["[object Function]"]=Hm["[object Map]"]=Hm["[object Number]"]=Hm["[object Object]"]=Hm["[object RegExp]"]=Hm["[object Set]"]=Hm["[object String]"]=Hm["[object WeakMap]"]=!1,Ue(Ym,"baseIsTypedArray");var Xm=Ym;function Qm(e){return function(t){return e(t)}}Ue(Qm,"baseUnary");var Zm=Qm,Jm="object"==typeof exports&&exports&&!exports.nodeType&&exports,eh=Jm&&"object"==typeof module&&module&&!module.nodeType&&module,th=eh&&eh.exports===Jm&&bd.process,rh=function(){try{var e=eh&&eh.require&&eh.require("util").types;return e||th&&th.binding&&th.binding("util")}catch(e){}}(),nh=rh&&rh.isTypedArray,ih=nh?Zm(nh):Xm,ah=Object.prototype.hasOwnProperty;function sh(e,t){var r=ym(e),n=!r&&Lm(e),i=!r&&!n&&zm(e),a=!r&&!n&&!i&&ih(e),s=r||n||i||a,o=s?xm(e.length,String):[],l=o.length;for(var u in e)!t&&!ah.call(e,u)||s&&("length"==u||i&&("offset"==u||"parent"==u)||a&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||Bm(u,l))||o.push(u);return o}Ue(sh,"arrayLikeKeys");var oh=sh,lh=Object.prototype;function uh(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||lh)}Ue(uh,"isPrototype");var ch=uh;function ph(e,t){return function(r){return e(t(r))}}Ue(ph,"overArg");var dh=ph(Object.keys,Object),fh=Object.prototype.hasOwnProperty;function mh(e){if(!ch(e))return dh(e);var t=[];for(var r in Object(e))fh.call(e,r)&&"constructor"!=r&&t.push(r);return t}Ue(mh,"baseKeys");var hh=mh;function yh(e){return null!=e&&Wm(e.length)&&!Ud(e)}Ue(yh,"isArrayLike");var gh=yh;function Th(e){return gh(e)?oh(e):hh(e)}Ue(Th,"keys");var vh=Th;function Rh(e){return Tm(e,vh,Am)}Ue(Rh,"getAllKeys");var $h=Rh,Ch=Object.prototype.hasOwnProperty;function Eh(e,t,r,n,i,a){var s=1&r,o=$h(e),l=o.length;if(l!=$h(t).length&&!s)return!1;for(var u=l;u--;){var c=o[u];if(!(s?c in t:Ch.call(t,c)))return!1}var p=a.get(e),d=a.get(t);if(p&&d)return p==t&&d==e;var f=!0;a.set(e,t),a.set(t,e);for(var m=s;++u<l;){var h=e[c=o[u]],y=t[c];if(n)var g=s?n(y,h,c,t,e,a):n(h,y,c,e,t,a);if(!(void 0===g?h===y||i(h,y,r,n,a):g)){f=!1;break}m||(m="constructor"==c)}if(f&&!m){var T=e.constructor,v=t.constructor;T==v||!("constructor"in e)||!("constructor"in t)||"function"==typeof T&&T instanceof T&&"function"==typeof v&&v instanceof v||(f=!1)}return a.delete(e),a.delete(t),f}Ue(Eh,"equalObjects");var bh=Eh,Ah=cf(Sd,"DataView"),Sh=cf(Sd,"Promise"),xh=cf(Sd,"Set"),kh=cf(Sd,"WeakMap"),wh="[object Map]",_h="[object Promise]",Nh="[object Set]",Ih="[object WeakMap]",Oh="[object DataView]",Ph=Qd(Ah),Dh=Qd(pf),Lh=Qd(Sh),Mh=Qd(xh),jh=Qd(kh),Fh=Fd;(Ah&&Fh(new Ah(new ArrayBuffer(1)))!=Oh||pf&&Fh(new pf)!=wh||Sh&&Fh(Sh.resolve())!=_h||xh&&Fh(new xh)!=Nh||kh&&Fh(new kh)!=Ih)&&(Fh=Ue(function(e){var t=Fd(e),r="[object Object]"==t?e.constructor:void 0,n=r?Qd(r):"";if(n)switch(n){case Ph:return Oh;case Dh:return wh;case Lh:return _h;case Mh:return Nh;case jh:return Ih}return t},"getTag"));var Kh=Fh,Gh="[object Arguments]",zh="[object Array]",qh="[object Object]",Uh=Object.prototype.hasOwnProperty;function Bh(e,t,r,n,i,a){var s=ym(e),o=ym(t),l=s?zh:Kh(e),u=o?zh:Kh(t),c=(l=l==Gh?qh:l)==qh,p=(u=u==Gh?qh:u)==qh,d=l==u;if(d&&zm(e)){if(!zm(t))return!1;s=!0,c=!1}if(d&&!c)return a||(a=new Vf),s||ih(e)?im(e,t,r,n,i,a):fm(e,t,l,r,n,i,a);if(!(1&r)){var f=c&&Uh.call(e,"__wrapped__"),m=p&&Uh.call(t,"__wrapped__");if(f||m){var h=f?e.value():e,y=m?t.value():t;return a||(a=new Vf),i(h,y,r,n,a)}}return!!d&&(a||(a=new Vf),bh(e,t,r,n,i,a))}Ue(Bh,"baseIsEqualDeep");var Vh=Bh;function Wh(e,t,r,n,i){return e===t||(null==e||null==t||!wm(e)&&!wm(t)?e!=e&&t!=t:Vh(e,t,r,n,Wh,i))}Ue(Wh,"baseIsEqual");var Hh=Wh;function Yh(e,t,r,n){var i=r.length,a=i,s=!n;if(null==e)return!a;for(e=Object(e);i--;){var o=r[i];if(s&&o[2]?o[1]!==e[o[0]]:!(o[0]in e))return!1}for(;++i<a;){var l=(o=r[i])[0],u=e[l],c=o[1];if(s&&o[2]){if(void 0===u&&!(l in e))return!1}else{var p=new Vf;if(n)var d=n(u,c,l,e,t,p);if(!(void 0===d?Hh(c,u,3,n,p):d))return!1}}return!0}Ue(Yh,"baseIsMatch");var Xh=Yh;function Qh(e){return e==e&&!Gd(e)}Ue(Qh,"isStrictComparable");var Zh=Qh;function Jh(e){for(var t=vh(e),r=t.length;r--;){var n=t[r],i=e[n];t[r]=[n,i,Zh(i)]}return t}Ue(Jh,"getMatchData");var ey=Jh;function ty(e,t){return function(r){return null!=r&&(r[e]===t&&(void 0!==t||e in Object(r)))}}Ue(ty,"matchesStrictComparable");var ry=ty;function ny(e){var t=ey(e);return 1==t.length&&t[0][2]?ry(t[0][0],t[0][1]):function(r){return r===e||Xh(r,e,t)}}Ue(ny,"baseMatches");var iy=ny;function ay(e){return"symbol"==typeof e||wm(e)&&"[object Symbol]"==Fd(e)}Ue(ay,"isSymbol");var sy=ay,oy=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ly=/^\w*$/;function uy(e,t){if(ym(e))return!1;var r=typeof e;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=e&&!sy(e))||(ly.test(e)||!oy.test(e)||null!=t&&e in Object(t))}Ue(uy,"isKey");var cy=uy;function py(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var r=Ue(function(){var n=arguments,i=t?t.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var s=e.apply(this,n);return r.cache=a.set(i,s)||a,s},"memoized");return r.cache=new(py.Cache||zf),r}Ue(py,"memoize"),py.Cache=zf;var dy=py;function fy(e){var t=dy(e,function(e){return 500===r.size&&r.clear(),e}),r=t.cache;return t}Ue(fy,"memoizeCapped");var my=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,hy=/\\(\\)?/g,yy=fy(function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(my,function(e,r,n,i){t.push(n?i.replace(hy,"$1"):r||e)}),t}),gy=xd?xd.prototype:void 0,Ty=gy?gy.toString:void 0;function vy(e){if("string"==typeof e)return e;if(ym(e))return Zp(e,vy)+"";if(sy(e))return Ty?Ty.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}Ue(vy,"baseToString");var Ry=vy;function $y(e){return null==e?"":Ry(e)}Ue($y,"toString");var Cy=$y;function Ey(e,t){return ym(e)?e:cy(e,t)?[e]:yy(Cy(e))}Ue(Ey,"castPath");var by=Ey;function Ay(e){if("string"==typeof e||sy(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}Ue(Ay,"toKey");var Sy=Ay;function xy(e,t){for(var r=0,n=(t=by(t,e)).length;null!=e&&r<n;)e=e[Sy(t[r++])];return r&&r==n?e:void 0}Ue(xy,"baseGet");var ky=xy;function wy(e,t,r){var n=null==e?void 0:ky(e,t);return void 0===n?r:n}Ue(wy,"get");var _y=wy;function Ny(e,t){return null!=e&&t in Object(e)}Ue(Ny,"baseHasIn");var Iy=Ny;function Oy(e,t,r){for(var n=-1,i=(t=by(t,e)).length,a=!1;++n<i;){var s=Sy(t[n]);if(!(a=null!=e&&r(e,s)))break;e=e[s]}return a||++n!=i?a:!!(i=null==e?0:e.length)&&Wm(i)&&Bm(s,i)&&(ym(e)||Lm(e))}Ue(Oy,"hasPath");var Py=Oy;function Dy(e,t){return null!=e&&Py(e,t,Iy)}Ue(Dy,"hasIn");var Ly=Dy;function My(e,t){return cy(e)&&Zh(t)?ry(Sy(e),t):function(r){var n=_y(r,e);return void 0===n&&n===t?Ly(r,e):Hh(t,n,3)}}Ue(My,"baseMatchesProperty");var jy=My;function Fy(e){return e}Ue(Fy,"identity");var Ky=Fy;function Gy(e){return function(t){return null==t?void 0:t[e]}}Ue(Gy,"baseProperty");var zy=Gy;function qy(e){return function(t){return ky(t,e)}}Ue(qy,"basePropertyDeep");var Uy=qy;function By(e){return cy(e)?zy(Sy(e)):Uy(e)}Ue(By,"property");var Vy=By;function Wy(e){return"function"==typeof e?e:null==e?Ky:"object"==typeof e?ym(e)?jy(e[0],e[1]):iy(e):Vy(e)}Ue(Wy,"baseIteratee");var Hy=Wy;function Yy(e){return function(t,r,n){for(var i=-1,a=Object(t),s=n(t),o=s.length;o--;){var l=s[e?o:++i];if(!1===r(a[l],l,a))break}return t}}Ue(Yy,"createBaseFor");var Xy=Yy();function Qy(e,t){return e&&Xy(e,t,vh)}Ue(Qy,"baseForOwn");var Zy=Qy;function Jy(e,t){return function(r,n){if(null==r)return r;if(!gh(r))return e(r,n);for(var i=r.length,a=t?i:-1,s=Object(r);(t?a--:++a<i)&&!1!==n(s[a],a,s););return r}}Ue(Jy,"createBaseEach");var eg=Jy(Zy);function tg(e,t){var r=-1,n=gh(e)?Array(e.length):[];return eg(e,function(e,i,a){n[++r]=t(e,i,a)}),n}Ue(tg,"baseMap");var rg=tg;function ng(e,t){return(ym(e)?Zp:rg)(e,Hy(t,3))}Ue(ng,"map");var ig=ng;function ag(e,t){var r=[];return eg(e,function(e,n,i){t(e,n,i)&&r.push(e)}),r}Ue(ag,"baseFilter");var sg=ag;function og(e,t){return(ym(e)?Rm:sg)(e,Hy(t,3))}Ue(og,"filter");var lg=og;function ug(e,t,r){return`${e.name}_${t}_${r}`}Ue(ug,"buildATNKey");var cg=class{static{Ue(this,"AbstractTransition")}constructor(e){this.target=e}isEpsilon(){return!1}},pg=class extends cg{static{Ue(this,"AtomTransition")}constructor(e,t){super(e),this.tokenType=t}},dg=class extends cg{static{Ue(this,"EpsilonTransition")}constructor(e){super(e)}isEpsilon(){return!0}},fg=class extends cg{static{Ue(this,"RuleTransition")}constructor(e,t,r){super(e),this.rule=t,this.followState=r}isEpsilon(){return!0}};function mg(e){const t={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};hg(t,e);const r=e.length;for(let n=0;n<r;n++){const r=e[n],i=Eg(t,r,r);void 0!==i&&Og(t,r,i)}return t}function hg(e,t){const r=t.length;for(let n=0;n<r;n++){const r=t[n],i=Dg(e,r,void 0,{type:2}),a=Dg(e,r,void 0,{type:7});i.stop=a,e.ruleToStartState.set(r,i),e.ruleToStopState.set(r,a)}}function yg(e,t,r){return r instanceof Wo?Ng(e,t,r.terminalType,r):r instanceof jo?Ig(e,t,r):r instanceof Vo?$g(e,t,r):r instanceof Go?Cg(e,t,r):r instanceof Uo?gg(e,t,r):r instanceof Bo?Tg(e,t,r):r instanceof zo?vg(e,t,r):r instanceof qo?Rg(e,t,r):Eg(e,t,r)}function gg(e,t,r){const n=Dg(e,t,r,{type:5});xg(e,n);return Ag(e,t,r,kg(e,t,n,r,Eg(e,t,r)))}function Tg(e,t,r){const n=Dg(e,t,r,{type:5});xg(e,n);return Ag(e,t,r,kg(e,t,n,r,Eg(e,t,r)),Ng(e,t,r.separator,r))}function vg(e,t,r){const n=Dg(e,t,r,{type:4});xg(e,n);return bg(e,t,r,kg(e,t,n,r,Eg(e,t,r)))}function Rg(e,t,r){const n=Dg(e,t,r,{type:4});xg(e,n);return bg(e,t,r,kg(e,t,n,r,Eg(e,t,r)),Ng(e,t,r.separator,r))}function $g(e,t,r){const n=Dg(e,t,r,{type:1});xg(e,n);const i=ig(r.definition,r=>yg(e,t,r));return kg(e,t,n,r,...i)}function Cg(e,t,r){const n=Dg(e,t,r,{type:1});xg(e,n);return Sg(e,t,r,kg(e,t,n,r,Eg(e,t,r)))}function Eg(e,t,r){const n=lg(ig(r.definition,r=>yg(e,t,r)),e=>void 0!==e);return 1===n.length?n[0]:0===n.length?void 0:_g(e,n)}function bg(e,t,r,n,i){const a=n.left,s=n.right,o=Dg(e,t,r,{type:11});xg(e,o);const l=Dg(e,t,r,{type:12});return a.loopback=o,l.loopback=o,e.decisionMap[ug(t,i?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",r.idx)]=o,Pg(s,o),void 0===i?(Pg(o,a),Pg(o,l)):(Pg(o,l),Pg(o,i.left),Pg(i.right,a)),{left:a,right:l}}function Ag(e,t,r,n,i){const a=n.left,s=n.right,o=Dg(e,t,r,{type:10});xg(e,o);const l=Dg(e,t,r,{type:12}),u=Dg(e,t,r,{type:9});return o.loopback=u,l.loopback=u,Pg(o,a),Pg(o,l),Pg(s,u),void 0!==i?(Pg(u,l),Pg(u,i.left),Pg(i.right,a)):Pg(u,o),e.decisionMap[ug(t,i?"RepetitionWithSeparator":"Repetition",r.idx)]=o,{left:o,right:l}}function Sg(e,t,r,n){const i=n.left;return Pg(i,n.right),e.decisionMap[ug(t,"Option",r.idx)]=i,n}function xg(e,t){return e.decisionStates.push(t),t.decision=e.decisionStates.length-1,t.decision}function kg(e,t,r,n,...i){const a=Dg(e,t,n,{type:8,start:r});r.end=a;for(const e of i)void 0!==e?(Pg(r,e.left),Pg(e.right,a)):Pg(r,a);const s={left:r,right:a};return e.decisionMap[ug(t,wg(n),n.idx)]=r,s}function wg(e){if(e instanceof Vo)return"Alternation";if(e instanceof Go)return"Option";if(e instanceof Uo)return"Repetition";if(e instanceof Bo)return"RepetitionWithSeparator";if(e instanceof zo)return"RepetitionMandatory";if(e instanceof qo)return"RepetitionMandatoryWithSeparator";throw new Error("Invalid production type encountered")}function _g(e,t){const r=t.length;for(let n=0;n<r-1;n++){const r=t[n];let i;1===r.left.transitions.length&&(i=r.left.transitions[0]);const a=i instanceof fg,s=i,o=t[n+1].left;1===r.left.type&&1===r.right.type&&void 0!==i&&(a&&s.followState===r.right||i.target===r.right)?(a?s.followState=o:i.target=o,Mg(e,r.right)):Pg(r.right,o)}const n=t[0],i=t[r-1];return{left:n.left,right:i.right}}function Ng(e,t,r,n){const i=Dg(e,t,n,{type:1}),a=Dg(e,t,n,{type:1});return Lg(i,new pg(a,r)),{left:i,right:a}}function Ig(e,t,r){const n=r.referencedRule,i=e.ruleToStartState.get(n),a=Dg(e,t,r,{type:1}),s=Dg(e,t,r,{type:1});return Lg(a,new fg(i,n,s)),{left:a,right:s}}function Og(e,t,r){const n=e.ruleToStartState.get(t);Pg(n,r.left);const i=e.ruleToStopState.get(t);Pg(r.right,i);return{left:n,right:i}}function Pg(e,t){Lg(e,new dg(t))}function Dg(e,t,r,n){const i=Object.assign({atn:e,production:r,epsilonOnlyTransitions:!1,rule:t,transitions:[],nextTokenWithinRule:[],stateNumber:e.states.length},n);return e.states.push(i),i}function Lg(e,t){0===e.transitions.length&&(e.epsilonOnlyTransitions=t.isEpsilon()),e.transitions.push(t)}function Mg(e,t){e.states.splice(e.states.indexOf(t),1)}Ue(mg,"createATN"),Ue(hg,"createRuleStartAndStopATNStates"),Ue(yg,"atom"),Ue(gg,"repetition"),Ue(Tg,"repetitionSep"),Ue(vg,"repetitionMandatory"),Ue(Rg,"repetitionMandatorySep"),Ue($g,"alternation"),Ue(Cg,"option"),Ue(Eg,"block"),Ue(bg,"plus"),Ue(Ag,"star"),Ue(Sg,"optional"),Ue(xg,"defineDecisionState"),Ue(kg,"makeAlts"),Ue(wg,"getProdType"),Ue(_g,"makeBlock"),Ue(Ng,"tokenRef"),Ue(Ig,"ruleRef"),Ue(Og,"buildRuleHandle"),Ue(Pg,"epsilon"),Ue(Dg,"newState"),Ue(Lg,"addTransition"),Ue(Mg,"removeState");var jg={},Fg=class{static{Ue(this,"ATNConfigSet")}constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(e){const t=Kg(e);t in this.map||(this.map[t]=this.configs.length,this.configs.push(e))}get elements(){return this.configs}get alts(){return ig(this.configs,e=>e.alt)}get key(){let e="";for(const t in this.map)e+=t+":";return e}};function Kg(e,t=!0){return`${t?`a${e.alt}`:""}s${e.state.stateNumber}:${e.stack.map(e=>e.stateNumber.toString()).join("_")}`}function Gg(e,t,r){for(var n=-1,i=e.length;++n<i;){var a=e[n],s=t(a);if(null!=s&&(void 0===o?s==s&&!sy(s):r(s,o)))var o=s,l=a}return l}Ue(Kg,"getATNConfigKey"),Ue(Gg,"baseExtremum");var zg=Gg;function qg(e,t){return e<t}Ue(qg,"baseLt");var Ug=qg;function Bg(e){return e&&e.length?zg(e,Ky,Ug):void 0}Ue(Bg,"min");var Vg=Bg,Wg=xd?xd.isConcatSpreadable:void 0;function Hg(e){return ym(e)||Lm(e)||!!(Wg&&e&&e[Wg])}Ue(Hg,"isFlattenable");var Yg=Hg;function Xg(e,t,r,n,i){var a=-1,s=e.length;for(r||(r=Yg),i||(i=[]);++a<s;){var o=e[a];t>0&&r(o)?t>1?Xg(o,t-1,r,n,i):hm(i,o):n||(i[i.length]=o)}return i}Ue(Xg,"baseFlatten");var Qg=Xg;function Zg(e,t){return Qg(ig(e,t),1)}Ue(Zg,"flatMap");var Jg=Zg;function eT(e,t,r,n){for(var i=e.length,a=r+(n?1:-1);n?a--:++a<i;)if(t(e[a],a,e))return a;return-1}Ue(eT,"baseFindIndex");var tT=eT;function rT(e){return e!=e}Ue(rT,"baseIsNaN");var nT=rT;function iT(e,t,r){for(var n=r-1,i=e.length;++n<i;)if(e[n]===t)return n;return-1}Ue(iT,"strictIndexOf");var aT=iT;function sT(e,t,r){return t==t?aT(e,t,r):tT(e,nT,r)}Ue(sT,"baseIndexOf");var oT=sT;function lT(e,t){return!!(null==e?0:e.length)&&oT(e,t,0)>-1}Ue(lT,"arrayIncludes");var uT=lT;function cT(e,t,r){for(var n=-1,i=null==e?0:e.length;++n<i;)if(r(t,e[n]))return!0;return!1}Ue(cT,"arrayIncludesWith");var pT=cT;function dT(){}Ue(dT,"noop");var fT=dT,mT=xh&&1/um(new xh([,-0]))[1]==1/0?function(e){return new xh(e)}:fT;function hT(e,t,r){var n=-1,i=uT,a=e.length,s=!0,o=[],l=o;if(r)s=!1,i=pT;else if(a>=200){var u=t?null:mT(e);if(u)return um(u);s=!1,i=rm,l=new Zf}else l=t?[]:o;e:for(;++n<a;){var c=e[n],p=t?t(c):c;if(c=r||0!==c?c:0,s&&p==p){for(var d=l.length;d--;)if(l[d]===p)continue e;t&&l.push(p),o.push(c)}else i(l,p,r)||(l!==o&&l.push(p),o.push(c))}return o}Ue(hT,"baseUniq");var yT=hT;function gT(e,t){return e&&e.length?yT(e,Hy(t,2)):[]}Ue(gT,"uniqBy");var TT=gT;function vT(e){return(null==e?0:e.length)?Qg(e,1):[]}Ue(vT,"flatten");var RT=vT;function $T(e,t){for(var r=-1,n=null==e?0:e.length;++r<n&&!1!==t(e[r],r,e););return e}Ue($T,"arrayEach");var CT=$T;function ET(e){return"function"==typeof e?e:Ky}Ue(ET,"castFunction");var bT=ET;function AT(e,t){return(ym(e)?CT:eg)(e,bT(t))}Ue(AT,"forEach");var ST=AT,xT=Object.prototype.hasOwnProperty;function kT(e){if(null==e)return!0;if(gh(e)&&(ym(e)||"string"==typeof e||"function"==typeof e.splice||zm(e)||ih(e)||Lm(e)))return!e.length;var t=Kh(e);if("[object Map]"==t||"[object Set]"==t)return!e.size;if(ch(e))return!hh(e).length;for(var r in e)if(xT.call(e,r))return!1;return!0}Ue(kT,"isEmpty");var wT=kT;function _T(e,t,r,n){var i=-1,a=null==e?0:e.length;for(n&&a&&(r=e[++i]);++i<a;)r=t(r,e[i],i,e);return r}Ue(_T,"arrayReduce");var NT=_T;function IT(e,t,r,n,i){return i(e,function(e,i,a){r=n?(n=!1,e):t(r,e,i,a)}),r}Ue(IT,"baseReduce");var OT=IT;function PT(e,t,r){var n=ym(e)?NT:OT,i=arguments.length<3;return n(e,Hy(t,4),r,i,eg)}Ue(PT,"reduce");var DT=PT;function LT(e,t){const r={};return n=>{const i=n.toString();let a=r[i];return void 0!==a||(a={atnStartState:e,decision:t,states:{}},r[i]=a),a}}Ue(LT,"createDFACache");var MT=class{static{Ue(this,"PredicateSet")}constructor(){this.predicates=[]}is(e){return e>=this.predicates.length||this.predicates[e]}set(e,t){this.predicates[e]=t}toString(){let e="";const t=this.predicates.length;for(let r=0;r<t;r++)e+=!0===this.predicates[r]?"1":"0";return e}},jT=new MT,FT=class extends up{static{Ue(this,"LLStarLookaheadStrategy")}constructor(e){var t,r;super(),this.logging=null!==(t=null==e?void 0:e.logging)&&void 0!==t?t:e=>console.log(e),this.incomplete=null!==(r=null==e?void 0:e.incomplete)&&void 0!==r&&r}initialize(e){this.atn=mg(e.rules),this.dfas=UT(this.atn),this.callers=GT(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(e){const{prodOccurrence:t,rule:r,hasPredicates:n,dynamicTokensEnabled:i}=e,a=this.dfas,s=this.logging,o=this.incomplete,l=ug(r,"Alternation",t),u=this.atn.decisionMap[l].decision,c=ig(oc({maxLookahead:1,occurrence:t,prodType:"Alternation",rule:r}),e=>ig(e,e=>e[0]));if(KT(c,!1)&&!i){const e=DT(c,(e,t,r)=>(ST(t,t=>{t&&(e[t.tokenTypeIdx]=r,ST(t.categoryMatches,t=>{e[t]=r}))}),e),{});return n?function(t){var r;const n=this.LA_FAST(1),i=e[n.tokenTypeIdx];if(void 0!==t&&void 0!==i){const e=null===(r=t[i])||void 0===r?void 0:r.GATE;if(void 0!==e&&!1===e.call(this))return}return i}:function(){const t=this.LA_FAST(1);return e[t.tokenTypeIdx]}}return n?function(e){const t=new MT,r=void 0===e?0:e.length;for(let n=0;n<r;n++){const r=null==e?void 0:e[n].GATE;t.set(n,void 0===r||r.call(this))}const n=BT.call(this,a,u,t,s,o);return"number"==typeof n?n:void 0}:function(){const e=BT.call(this,a,u,jT,s,o);return"number"==typeof e?e:void 0}}buildLookaheadForOptional(e){const{prodOccurrence:t,rule:r,prodType:n,dynamicTokensEnabled:i}=e,a=this.dfas,s=this.logging,o=this.incomplete,l=this.callers,u=ug(r,n,t),c=this.atn.decisionMap[u],p=c.decision,d=ig(oc({maxLookahead:1,occurrence:t,prodType:n,rule:r}),e=>ig(e,e=>e[0]));if(KT(d)&&d[0][0]&&!i&&!qT(c,n,l)){const e=d[0],t=RT(e);if(1===t.length&&wT(t[0].categoryMatches)){const e=t[0].tokenTypeIdx;return function(){return this.LA_FAST(1).tokenTypeIdx===e}}{const e=DT(t,(e,t)=>(void 0!==t&&(e[t.tokenTypeIdx]=!0,ST(t.categoryMatches,t=>{e[t]=!0})),e),{});return function(){const t=this.LA_FAST(1);return!0===e[t.tokenTypeIdx]}}}return function(){const e=BT.call(this,a,p,jT,s,o);return"object"!=typeof e&&0===e}}};function KT(e,t=!0){const r=new Set;for(const n of e){const e=new Set;for(const i of n){if(void 0===i){if(t)break;return!1}const n=[i.tokenTypeIdx].concat(i.categoryMatches);for(const t of n)if(r.has(t)){if(!e.has(t))return!1}else r.add(t),e.add(t)}}return!0}function GT(e){const t=new Map;for(const r of e.states)for(const e of r.transitions)if(e instanceof fg){let r=t.get(e.rule);void 0===r&&(r=[],t.set(e.rule,r)),r.push(e.followState)}return t}function zT(e,t){const r=new Set,n=new Set,i=[e];for(;i.length>0;){const e=i.shift();if(!n.has(e))if(n.add(e),7!==e.type)for(const t of e.transitions)if(t instanceof pg){r.add(t.tokenType.tokenTypeIdx);for(const e of t.tokenType.categoryMatches)r.add(e)}else i.push(t.target);else if(void 0!==t){const r=t.get(e.rule);void 0!==r&&i.push(...r)}}return r}function qT(e,t,r){const n="RepetitionMandatoryWithSeparator"===t,i=e.transitions[n?1:0],a=e.transitions[n?0:1];if(void 0===i||void 0===a)return!1;const s=zT(i.target),o=zT(a.target,r);for(const e of s)if(o.has(e))return!0;return!1}function UT(e){const t=e.decisionStates.length,r=Array(t);for(let n=0;n<t;n++)r[n]=LT(e.decisionStates[n],n);return r}function BT(e,t,r,n,i){const a=e[t](r);let s=a.start;if(void 0===s){s=iv(a,rv(av(a.atnStartState))),a.start=s}return VT.apply(this,[a,s,r,n,i])}function VT(e,t,r,n,i){let a=t,s=1;const o=[];let l=this.LA_FAST(s++);for(;;){let t=ZT(a,l);if(void 0===t&&(t=WT.apply(this,[e,a,l,s,r,n])),t===jg)return QT(o,a,l);if(!0===t.isAcceptState){if(!0===i&&zu(l,Ku)){const e=mv(a,r);if(void 0!==e)return e}return t.prediction}a=t,o.push(l),l=this.LA(s++)}}function WT(e,t,r,n,i,a){const s=JT(t.configs,r,i);if(0===s.size)return nv(e,t,r,jg),jg;let o=rv(s);const l=tv(s,i);if(void 0!==l)o.isAcceptState=!0,o.prediction=l,o.configs.uniqueAlt=l;else if(cv(s)){const t=Vg(s.alts);o.isAcceptState=!0,o.prediction=t,o.configs.uniqueAlt=t,HT.apply(this,[e,n,s.alts,a])}return o=nv(e,t,r,o),o}function HT(e,t,r,n){const i=[];for(let e=1;e<=t;e++)i.push(this.LA(e).tokenType);const a=e.atnStartState;n(YT({topLevelRule:a.rule,ambiguityIndices:r,production:a.production,prefixPath:i}))}function YT(e){const t=ig(e.prefixPath,e=>ku(e)).join(", "),r=0===e.production.idx?"":e.production.idx;let n=`Ambiguous Alternatives Detected: <${e.ambiguityIndices.join(", ")}> in <${XT(e.production)}${r}> inside <${e.topLevelRule.name}> Rule,\n<${t}> may appears as a prefix path in all these alternatives.\n`;return n+="See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES\nFor Further details.",n}function XT(e){if(e instanceof jo)return"SUBRULE";if(e instanceof Go)return"OPTION";if(e instanceof Vo)return"OR";if(e instanceof zo)return"AT_LEAST_ONE";if(e instanceof qo)return"AT_LEAST_ONE_SEP";if(e instanceof Bo)return"MANY_SEP";if(e instanceof Uo)return"MANY";if(e instanceof Wo)return"CONSUME";throw Error("non exhaustive match")}function QT(e,t,r){const n=Jg(t.configs.elements,e=>e.state.transitions);return{actualToken:r,possibleTokenTypes:TT(n.filter(e=>e instanceof pg).map(e=>e.tokenType),e=>e.tokenTypeIdx),tokenPath:e}}function ZT(e,t){return e.edges[t.tokenTypeIdx]}function JT(e,t,r){const n=new Fg,i=[];for(const a of e.elements){if(!1===r.is(a.alt))continue;if(7===a.state.type){i.push(a);continue}const e=a.state.transitions.length;for(let r=0;r<e;r++){const e=ev(a.state.transitions[r],t);void 0!==e&&n.add({state:e,alt:a.alt,stack:a.stack})}}let a;if(0===i.length&&1===n.size&&(a=n),void 0===a){a=new Fg;for(const e of n.elements)sv(e,a)}if(i.length>0&&!lv(a))for(const e of i)a.add(e);return a}function ev(e,t){if(e instanceof pg&&zu(t,e.tokenType))return e.target}function tv(e,t){let r;for(const n of e.elements)if(!0===t.is(n.alt))if(void 0===r)r=n.alt;else if(r!==n.alt)return;return r}function rv(e){return{configs:e,edges:{},isAcceptState:!1,prediction:-1}}function nv(e,t,r,n){return n=iv(e,n),t.edges[r.tokenTypeIdx]=n,n}function iv(e,t){if(t===jg)return t;const r=t.configs.key,n=e.states[r];return void 0!==n?n:(t.configs.finalize(),e.states[r]=t,t)}function av(e){const t=new Fg,r=e.transitions.length;for(let n=0;n<r;n++){sv({state:e.transitions[n].target,alt:n,stack:[]},t)}return t}function sv(e,t){const r=e.state;if(7===r.type){if(e.stack.length>0){const r=[...e.stack];sv({state:r.pop(),alt:e.alt,stack:r},t)}else t.add(e);return}r.epsilonOnlyTransitions||t.add(e);const n=r.transitions.length;for(let i=0;i<n;i++){const n=ov(e,r.transitions[i]);void 0!==n&&sv(n,t)}}function ov(e,t){if(t instanceof dg)return{state:t.target,alt:e.alt,stack:e.stack};if(t instanceof fg){const r=[...e.stack,t.followState];return{state:t.target,alt:e.alt,stack:r}}}function lv(e){for(const t of e.elements)if(7===t.state.type)return!0;return!1}function uv(e){for(const t of e.elements)if(7!==t.state.type)return!1;return!0}function cv(e){if(uv(e))return!0;const t=pv(e.elements);return dv(t)&&!fv(t)}function pv(e){const t=new Map;for(const r of e){const e=Kg(r,!1);let n=t.get(e);void 0===n&&(n={},t.set(e,n)),n[r.alt]=!0}return t}function dv(e){for(const t of Array.from(e.values()))if(Object.keys(t).length>1)return!0;return!1}function fv(e){for(const t of Array.from(e.values()))if(1===Object.keys(t).length)return!0;return!1}function mv(e,t){let r;for(const n of e.configs.elements)if(!1!==t.is(n.alt)&&7!==n.state.type)if(void 0===r)r=n.alt;else if(r!==n.alt)return;return r}Ue(KT,"isLL1Sequence"),Ue(GT,"buildCallers"),Ue(zT,"firstSet"),Ue(qT,"optionalHasFollowConflict"),Ue(UT,"initATNSimulator"),Ue(BT,"adaptivePredict"),Ue(VT,"performLookahead"),Ue(WT,"computeLookaheadTarget"),Ue(HT,"reportLookaheadAmbiguity"),Ue(YT,"buildAmbiguityError"),Ue(XT,"getProductionDslName"),Ue(QT,"buildAdaptivePredictError"),Ue(ZT,"getExistingTargetState"),Ue(JT,"computeReachSet"),Ue(ev,"getReachableTarget"),Ue(tv,"getUniqueAlt"),Ue(rv,"newDFAState"),Ue(nv,"addDFAEdge"),Ue(iv,"addDFAState"),Ue(av,"computeStartState"),Ue(sv,"closure"),Ue(ov,"getEpsilonTarget"),Ue(lv,"hasConfigInRuleStopState"),Ue(uv,"allConfigsInRuleStopStates"),Ue(cv,"hasConflictTerminatingPrediction"),Ue(pv,"getConflictingAltSets"),Ue(dv,"hasConflictingAltSet"),Ue(fv,"hasStateAssociatedWithOneAlt"),Ue(mv,"getBestGuess");var hv=class{static{Ue(this,"CstNodeBuilder")}constructor(){this.nodeStack=[]}get current(){return this.nodeStack[this.nodeStack.length-1]??this.rootNode}buildRootNode(e){return this.rootNode=new Rv(e),this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(e){const t=new vv;return t.grammarSource=e,this.appendChild(this.current,t),this.nodeStack.push(t),t}buildLeafNode(e,t){const r=this.createLeafNode(e,!t);return t&&(r.grammarSource=t),this.appendChild(this.current,r),r}createLeafNode(e,t){return new gv(e.startOffset,e.image.length,e.startLine-1,e.startColumn-1,e.endLine-1,e.endColumn,e.tokenType,t)}appendChild(e,t){t.container=e,e.content.push(t)}appendChildren(e,t){for(const r of t)r.container=e;0===e.content.length?e.content=t.slice():e.content.push(...t)}insertChildren(e,t,r){for(const t of r)t.container=e;e.content.splice(t,0,...r)}removeNode(e){const t=e.container;if(t){const r=t.content.indexOf(e);r>=0&&t.content.splice(r,1)}}addHiddenNodes(e){const t=[];for(const r of e)t.push(this.createLeafNode(r,!0));let r=this.current,n=!1;if(r.content.length>0)this.appendChildren(r,t);else{for(;r.container;){const e=r.container.content.indexOf(r);if(e>0){this.insertChildren(r.container,e,t),n=!0;break}r=r.container}n||this.insertChildren(this.rootNode,0,t)}}construct(e){const t=this.current;e.$cstNode=t;const r=this.nodeStack.pop();r&&(0===r.content.length?this.removeNode(r):r.content=r.content.slice())}},yv=class{static{Ue(this,"AbstractCstNode")}constructor(){this.container=void 0,this.grammarSource=void 0}get root(){let e=this;for(;e.container;)e=e.container;return e}get text(){return this.root.fullText.substring(this.offset,this.end)}},gv=class extends yv{static{Ue(this,"LeafCstNodeImpl")}get offset(){return this._offset}get length(){return this._length}get end(){return this._offset+this._length}get hidden(){return this._hidden}get tokenType(){return this._tokenType}get astNode(){const e=this.container;if(!e)throw new Error("This node has no associated AST element");return e.astNode}get range(){return{start:{line:this._startLine,character:this._startColumn},end:{line:this._endLine,character:this._endColumn}}}constructor(e,t,r,n,i,a,s,o=!1){super(),this._hidden=o,this._offset=Tv(e),this._length=Tv(t),this._startLine=Tv(r),this._startColumn=Tv(n),this._endLine=Tv(i),this._endColumn=Tv(a),this._tokenType=s}};function Tv(e){return 0|e}Ue(Tv,"toSmi");var vv=class extends yv{static{Ue(this,"CompositeCstNodeImpl")}constructor(){super(...arguments),this.content=[],this._astNode=void 0,this._rangeCache=void 0}get astNode(){let e=this;for(;e;){if(e._astNode)return e._astNode;e=e.container}throw new Error("This node has no associated AST element")}set astNode(e){this._astNode=e}get hidden(){return!1}get offset(){return this.firstNonHiddenNode?.offset??0}get length(){return this.end-this.offset}get end(){return this.lastNonHiddenNode?.end??0}get range(){let e=this._rangeCache;if(void 0===e){const t=this.firstNonHiddenNode,r=this.lastNonHiddenNode;if(!t||!r)return{start:{line:0,character:0},end:{line:0,character:0}};{const{range:n}=t,{range:i}=r;this._rangeCache=e={start:n.start,end:i.end.line<n.start.line?n.start:i.end}}}return e}get firstNonHiddenNode(){for(const e of this.content)if(!e.hidden)return e;return this.content[0]}get lastNonHiddenNode(){for(let e=this.content.length-1;e>=0;e--){const t=this.content[e];if(!t.hidden)return t}return this.content[this.content.length-1]}},Rv=class extends vv{static{Ue(this,"RootCstNodeImpl")}get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(e){super(),this._text="",this._text=e??""}},$v=Symbol("Datatype");function Cv(e){return e.$type===$v}Ue(Cv,"isDataTypeNode");var Ev=Ue(e=>e.endsWith("")?e:e+"","withRuleSuffix"),bv=class{static{Ue(this,"AbstractLangiumParser")}constructor(e,t){this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=e.parser.Lexer;const r=this.lexer.definition,n="production"===e.LanguageMetaData.mode;e.shared.profilers.LangiumProfiler?.isActive("parsing")?this.wrapper=new Nv(r,{...e.parser.ParserConfig,skipValidations:n,errorMessageProvider:e.parser.ParserErrorMessageProvider},t,e.shared.profilers.LangiumProfiler.createTask("parsing",e.LanguageMetaData.languageId)):this.wrapper=new _v(r,{...e.parser.ParserConfig,skipValidations:n,errorMessageProvider:e.parser.ParserErrorMessageProvider},t)}alternatives(e,t){this.wrapper.wrapOr(e,t)}optional(e,t){this.wrapper.wrapOption(e,t)}many(e,t){this.wrapper.wrapMany(e,t)}atLeastOne(e,t){this.wrapper.wrapAtLeastOne(e,t)}getRule(e){return this.allRules.get(e)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}},Av=class extends bv{static{Ue(this,"LangiumParser")}get current(){return this.stack[this.stack.length-1]}constructor(e){super(e,!1),this.nodeBuilder=new hv,this.stack=[],this.assignmentMap=new Map,this.operatorPrecedence=new Map,this.linker=e.references.Linker,this.converter=e.parser.ValueConverter,this.astReflection=e.shared.AstReflection}rule(e,t){const r=this.computeRuleType(e);let n;Vn(e)&&(n=e.name,this.registerPrecedenceMap(e));const i=this.wrapper.DEFINE_RULE(Ev(e.name),this.startImplementation(r,n,t).bind(this));return this.allRules.set(e.name,i),Mi(e)&&e.entry&&(this.mainRule=i),i}registerPrecedenceMap(e){const t=e.name,r=new Map;for(let t=0;t<e.operators.precedences.length;t++){const n=e.operators.precedences[t];for(const e of n.operators)r.set(e.value,{precedence:t,rightAssoc:"right"===n.associativity})}this.operatorPrecedence.set(t,r)}computeRuleType(e){return Vn(e)?go(e):e.fragment?void 0:mo(e)?$v:go(e)}parse(e,t={}){this.nodeBuilder.buildRootNode(e);const r=this.lexerResult=this.lexer.tokenize(e);this.wrapper.input=r.tokens;const n=t.rule?this.allRules.get(t.rule):this.mainRule;if(!n)throw new Error(t.rule?`No rule found with name '${t.rule}'`:"No main rule available.");const i=this.doParse(n);return this.nodeBuilder.addHiddenNodes(r.hidden),this.unorderedGroups.clear(),this.lexerResult=void 0,nr(i,{deep:!0}),{value:i,lexerErrors:r.errors,lexerReport:r.report,parserErrors:this.wrapper.errors}}doParse(e){let t=this.wrapper.rule(e);if(this.stack.length>0&&(t=this.construct()),void 0===t)throw new Error("No result from parser");if(this.stack.length>0)throw new Error("Parser stack is not empty after parsing");return this.linkCstNode(t),t}linkCstNode(e){Kt(e)&&e.$cstNode&&(e.$cstNode.astNode=e)}startImplementation(e,t,r){return n=>{const i=!this.isRecording()&&void 0!==e;if(i){const r={$type:e};this.stack.push(r),e===$v?r.value="":void 0!==t&&(r.$infixName=t)}return r(n),i?this.construct():void 0}}extractHiddenTokens(e){const t=this.lexerResult.hidden;if(!t.length)return[];const r=e.startOffset;for(let e=0;e<t.length;e++){if(t[e].startOffset>r)return t.splice(0,e)}return t.splice(0,t.length)}consume(e,t,r){const n=this.wrapper.wrapConsume(e,t);if(!this.isRecording()&&this.isValidToken(n)){const e=this.extractHiddenTokens(n);this.nodeBuilder.addHiddenNodes(e);const t=this.nodeBuilder.buildLeafNode(n,r),{assignment:i,crossRef:a}=this.getAssignment(r),s=this.current;if(i){const e=oi(r)?n.image:this.converter.convert(n.image,t);this.assign(i.operator,i.feature,e,t,a)}else if(Cv(s)){let e=n.image;oi(r)||(e=this.converter.convert(e,t).toString()),s.value+=e}}}isValidToken(e){return!e.isInsertedInRecovery&&vs(e)}subrule(e,t,r,n,i){let a,s;this.isRecording()||r||(a=this.nodeBuilder.buildCompositeNode(n));try{s=this.wrapper.wrapSubrule(e,t,i)}finally{this.isRecording()||(void 0!==s||r||(s=this.construct()),void 0!==s&&a&&a.length>0&&this.performSubruleAssignment(s,n,a))}}performSubruleAssignment(e,t,r){const{assignment:n,crossRef:i}=this.getAssignment(t);if(n)this.assign(n.operator,n.feature,e,r,i);else if(!n){const t=this.current;if(Cv(t))t.value+=e.toString();else if("object"==typeof e&&e){const r=this.assignWithoutOverride(e,t);this.stack.pop(),this.stack.push(r)}}}action(e,t){if(!this.isRecording()){let r=this.current;if(t.feature&&t.operator){r=this.construct(),this.nodeBuilder.removeNode(r.$cstNode);const n=this.nodeBuilder.buildCompositeNode(t);this.nodeBuilder.appendChild(n,r.$cstNode);const i={$type:e};this.stack.push(i),this.assign(t.operator,t.feature,r,r.$cstNode)}else r.$type=e}}construct(){if(this.isRecording())return;const e=this.stack.pop();return this.nodeBuilder.construct(e),"$infixName"in e?this.constructInfix(e,this.operatorPrecedence.get(e.$infixName)):Cv(e)?this.converter.convert(e.value,e.$cstNode):(fr(this.astReflection,e),e)}constructInfix(e,t){const r=e.parts;if(!Array.isArray(r)||0===r.length)return;const n=e.operators;if(!Array.isArray(n)||r.length<2)return r[0];let i=0,a=-1;for(let e=0;e<n.length;e++){const r=n[e],s=t.get(r)??{precedence:1/0,rightAssoc:!1};s.precedence>a?(a=s.precedence,i=e):s.precedence===a&&(s.rightAssoc||(i=e))}const s=n.slice(0,i),o=n.slice(i+1),l=r.slice(0,i+1),u=r.slice(i+1),c={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:l,operators:s},p={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:u,operators:o},d=this.constructInfix(c,t),f=this.constructInfix(p,t);return{$type:e.$type,$cstNode:e.$cstNode,left:d,operator:n[i],right:f}}getAssignment(e){if(!this.assignmentMap.has(e)){const t=ir(e,qr);this.assignmentMap.set(e,{assignment:t,crossRef:t&&dn(t.terminal)?t.terminal.isMulti?"multi":"single":void 0})}return this.assignmentMap.get(e)}assign(e,t,r,n,i){const a=this.current;let s;switch(s="single"===i&&"string"==typeof r?this.linker.buildReference(a,t,n,r):"multi"===i&&"string"==typeof r?this.linker.buildMultiReference(a,t,n,r):r,this.linkCstNode(s),e){case"=":a[t]=s;break;case"?=":a[t]=!0;break;case"+=":Array.isArray(a[t])||(a[t]=[]),a[t].push(s)}}assignWithoutOverride(e,t){for(const[r,n]of Object.entries(t)){const t=e[r];void 0===t?e[r]=n:Array.isArray(t)&&Array.isArray(n)&&(n.push(...t),e[r]=n)}return e.$cstNode=void 0,e}get definitionErrors(){return this.wrapper.definitionErrors}},Sv=class{static{Ue(this,"AbstractParserErrorMessageProvider")}buildMismatchTokenMessage(e){return qu.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return qu.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return qu.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return qu.buildEarlyExitMessage(e)}},xv=class extends Sv{static{Ue(this,"LangiumParserErrorMessageProvider")}buildMismatchTokenMessage({expected:e,actual:t}){return`Expecting ${e.LABEL?"`"+e.LABEL+"`":e.name.endsWith(":KW")?`keyword '${e.name.substring(0,e.name.length-3)}'`:`token of type '${e.name}'`} but found \`${t.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:e}){return`Expecting end of file but found \`${e.image}\`.`}},kv=class extends bv{static{Ue(this,"LangiumCompletionParser")}constructor(e){super(e,!0),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(e){this.resetState();const t=this.lexer.tokenize(e,{mode:"partial"});return this.tokens=t.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(e,t){const r=this.wrapper.DEFINE_RULE(Ev(e.name),this.startImplementation(t).bind(this));return this.allRules.set(e.name,r),e.entry&&(this.mainRule=r),r}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(e){return t=>{const r=this.keepStackSize();try{e(t)}finally{this.resetStackSize(r)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){const e=this.elementStack.length;return this.stackSize=e,e}resetStackSize(e){this.removeUnexpectedElements(),this.stackSize=e}consume(e,t,r){this.wrapper.wrapConsume(e,t),this.isRecording()||(this.lastElementStack=[...this.elementStack,r],this.nextTokenIndex=this.currIdx+1)}subrule(e,t,r,n,i){this.before(n),this.wrapper.wrapSubrule(e,t,i),this.after(n)}before(e){this.isRecording()||this.elementStack.push(e)}after(e){if(!this.isRecording()){const t=this.elementStack.lastIndexOf(e);t>=0&&this.elementStack.splice(t)}}get currIdx(){return this.wrapper.currIdx}},wv={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new xv},_v=class extends Xp{static{Ue(this,"ChevrotainWrapper")}constructor(e,t,r){super(e,{...wv,lookaheadStrategy:t&&"maxLookahead"in t?new up({maxLookahead:t.maxLookahead}):new FT({logging:t.skipValidations?()=>{}:void 0,incomplete:r}),...t})}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(e,t,r){return this.RULE(e,t,r)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(e,t){return this.consume(e,t,void 0)}wrapSubrule(e,t,r){return this.subrule(e,t,{ARGS:[r]})}wrapOr(e,t){this.or(e,t)}wrapOption(e,t){this.option(e,t)}wrapMany(e,t){this.many(e,t)}wrapAtLeastOne(e,t){this.atLeastOne(e,t)}rule(e){return e.call(this,{})}},Nv=class extends _v{static{Ue(this,"ProfilerWrapper")}constructor(e,t,r,n){super(e,t,r),this.task=n}rule(e){this.task.start(),this.task.startSubTask(this.ruleName(e));try{return super.rule(e)}finally{this.task.stopSubTask(this.ruleName(e)),this.task.stop()}}ruleName(e){return e.ruleName}subrule(e,t,r){this.task.startSubTask(this.ruleName(t));try{return super.subrule(e,t,r)}finally{this.task.stopSubTask(this.ruleName(t))}}};function Iv(e,t,r){return Ov({parser:t,tokens:r,ruleNames:new Map},e),t}function Ov(e,t){const r=to(t,!1),n=er(t.rules).filter(Mi).filter(e=>r.has(e));for(const t of n){const r={...e,consume:1,optional:1,subrule:1,many:1,or:1};e.parser.rule(t,Dv(r,t.definition))}const i=er(t.rules).filter(Vn).filter(e=>r.has(e));for(const t of i)e.parser.rule(t,Pv(e,t))}function Pv(e,t){const r=t.call.rule.ref;if(!r)throw new Error("Could not resolve reference to infix operator rule: "+t.call.rule.$refText);if(Na(r))throw new Error("Cannot use terminal rule in infix expression");const n=t.operators.precedences.flatMap(e=>e.operators),i={$type:"Group",elements:[]},a={$container:i,$type:"Assignment",feature:"parts",operator:"+=",terminal:t.call},s={$container:i,$type:"Group",elements:[],cardinality:"*"};i.elements.push(a,s);const o={$container:s,$type:"Assignment",feature:"operators",operator:"+=",terminal:{$type:"Alternatives",elements:n}},l={...a,$container:s};s.elements.push(o,l);const u=n.map(t=>e.tokens[t.value]).map((t,r)=>({ALT:Ue(()=>e.parser.consume(r,t,o),"ALT")}));let c;return t=>{c??(c=Wv(e,r)),e.parser.subrule(0,c,!1,a,t),e.parser.many(0,{DEF:Ue(()=>{e.parser.alternatives(0,u),e.parser.subrule(1,c,!1,l,t)},"DEF")})}}function Dv(e,t,r=!1){let n;if(oi(t))n=Bv(e,t);else if(kr(t))n=Lv(e,t);else if(qr(t))n=Dv(e,t.terminal);else if(dn(t))n=Uv(e,t);else if(ta(t))n=Mv(e,t);else if(Ir(t))n=Kv(e,t);else if(Ja(t))n=Gv(e,t);else if(Pn(t))n=zv(e,t);else{if(!vn(t))throw new xs(t.$cstNode,`Unexpected element type: ${t.$type}`);{const r=e.consume++;n=Ue(()=>e.parser.consume(r,Ku,t),"method")}}return Vv(e,r?void 0:qv(t),n,t.cardinality)}function Lv(e,t){const r=go(t);return()=>e.parser.action(r,t)}function Mv(e,t){const r=t.rule.ref;if(vr(r)){const n=e.subrule++,i=Mi(r)&&r.fragment,a=t.arguments.length>0?jv(r,t.arguments):()=>({});let s;return o=>{s??(s=Wv(e,r)),e.parser.subrule(n,s,i,t,a(o))}}if(Na(r)){const n=e.consume++,i=Yv(e,r.name);return()=>e.parser.consume(n,i,t)}if(!r)throw new xs(t.$cstNode,`Undefined rule: ${t.rule.$refText}`);ks()}function jv(e,t){if(t.some(e=>e.calledByName)){const e=t.map(e=>({parameterName:e.parameter?.ref?.name,predicate:Fv(e.value)}));return t=>{const r={};for(const{parameterName:n,predicate:i}of e)n&&(r[n]=i(t));return r}}{const r=t.map(e=>Fv(e.value));return t=>{const n={};for(let i=0;i<r.length;i++)if(i<e.parameters.length){const a=e.parameters[i].name,s=r[i];n[a]=s(t)}return n}}}function Fv(e){if(yn(e)){const t=Fv(e.left),r=Fv(e.right);return e=>t(e)||r(e)}if(an(e)){const t=Fv(e.left),r=Fv(e.right);return e=>t(e)&&r(e)}if(Ri(e)){const t=Fv(e.value);return e=>!t(e)}if(xi(e)){const t=e.parameter.ref.name;return e=>void 0!==e&&!0===e[t]}if(Vr(e)){const t=Boolean(e.true);return()=>t}ks()}function Kv(e,t){if(1===t.elements.length)return Dv(e,t.elements[0]);{const r=[];for(const n of t.elements){const t={ALT:Dv(e,n,!0)},i=qv(n);i&&(t.GATE=Fv(i)),r.push(t)}const n=e.or++;return t=>e.parser.alternatives(n,r.map(e=>{const r={ALT:Ue(()=>e.ALT(t),"ALT")},n=e.GATE;return n&&(r.GATE=()=>n(t)),r}))}}function Gv(e,t){if(1===t.elements.length)return Dv(e,t.elements[0]);const r=[];for(const n of t.elements){const t={ALT:Dv(e,n,!0)},i=qv(n);i&&(t.GATE=Fv(i)),r.push(t)}const n=e.or++,i=Ue((e,t)=>`uGroup_${e}_${t.getRuleStack().join("-")}`,"idFunc"),a=Ue(t=>e.parser.alternatives(n,r.map((r,a)=>{const s={ALT:Ue(()=>!0,"ALT")},o=e.parser;s.ALT=()=>{if(r.ALT(t),!o.isRecording()){const e=i(n,o);o.unorderedGroups.get(e)||o.unorderedGroups.set(e,[]);const t=o.unorderedGroups.get(e);void 0===t?.[a]&&(t[a]=!0)}};const l=r.GATE;return s.GATE=l?()=>l(t):()=>{const e=o.unorderedGroups.get(i(n,o));return!e?.[a]},s})),"alternatives"),s=Vv(e,qv(t),a,"*");return t=>{s(t),e.parser.isRecording()||e.parser.unorderedGroups.delete(i(n,e.parser))}}function zv(e,t){const r=t.elements.map(t=>Dv(e,t));return e=>r.forEach(t=>t(e))}function qv(e){if(Pn(e))return e.guardCondition}function Uv(e,t,r=t.terminal){if(r){if(ta(r)&&Mi(r.rule.ref)){const n=r.rule.ref,i=e.subrule++;let a;return r=>{a??(a=Wv(e,n)),e.parser.subrule(i,a,!1,t,r)}}if(ta(r)&&Na(r.rule.ref)){const n=e.consume++,i=Yv(e,r.rule.ref.name);return()=>e.parser.consume(n,i,t)}if(oi(r)){const n=e.consume++,i=Yv(e,r.value);return()=>e.parser.consume(n,i,t)}throw new Error("Could not build cross reference parser")}{if(!t.type.ref)throw new Error("Could not resolve reference to type: "+t.type.$refText);const r=po(t.type.ref),n=r?.terminal;if(!n)throw new Error("Could not find name assignment for type: "+go(t.type.ref));return Uv(e,t,n)}}function Bv(e,t){const r=e.consume++,n=e.tokens[t.value];if(!n)throw new Error("Could not find token for keyword: "+t.value);return()=>e.parser.consume(r,n,t)}function Vv(e,t,r,n){const i=t&&Fv(t);if(!n){if(i){const t=e.or++;return n=>e.parser.alternatives(t,[{ALT:Ue(()=>r(n),"ALT"),GATE:Ue(()=>i(n),"GATE")},{ALT:Hp(),GATE:Ue(()=>!i(n),"GATE")}])}return r}if("*"===n){const t=e.many++;return n=>e.parser.many(t,{DEF:Ue(()=>r(n),"DEF"),GATE:i?()=>i(n):void 0})}if("+"===n){const t=e.many++;if(i){const n=e.or++;return a=>e.parser.alternatives(n,[{ALT:Ue(()=>e.parser.atLeastOne(t,{DEF:Ue(()=>r(a),"DEF")}),"ALT"),GATE:Ue(()=>i(a),"GATE")},{ALT:Hp(),GATE:Ue(()=>!i(a),"GATE")}])}return n=>e.parser.atLeastOne(t,{DEF:Ue(()=>r(n),"DEF")})}if("?"===n){const t=e.optional++;return n=>e.parser.optional(t,{DEF:Ue(()=>r(n),"DEF"),GATE:i?()=>i(n):void 0})}ks()}function Wv(e,t){const r=Hv(e,t),n=e.parser.getRule(r);if(!n)throw new Error(`Rule "${r}" not found."`);return n}function Hv(e,t){if(vr(t))return t.name;if(e.ruleNames.has(t))return e.ruleNames.get(t);{let r=t,n=r.$container,i=t.$type;for(;!Mi(n);){if(Pn(n)||Ir(n)||Ja(n)){i=n.elements.indexOf(r).toString()+":"+i}r=n,n=n.$container}return i=n.name+":"+i,e.ruleNames.set(t,i),i}}function Yv(e,t){const r=e.tokens[t];if(!r)throw new Error(`Token "${t}" not found."`);return r}function Xv(e){const t=e.Grammar,r=e.parser.Lexer,n=new kv(e);return Iv(t,n,r.definition),n.finalize(),n}function Qv(e){const t=Zv(e);return t.finalize(),t}function Zv(e){const t=e.Grammar,r=e.parser.Lexer;return Iv(t,new Av(e),r.definition)}Ue(Iv,"createParser"),Ue(Ov,"buildRules"),Ue(Pv,"buildInfixRule"),Ue(Dv,"buildElement"),Ue(Lv,"buildAction"),Ue(Mv,"buildRuleCall"),Ue(jv,"buildRuleCallPredicate"),Ue(Fv,"buildPredicate"),Ue(Kv,"buildAlternatives"),Ue(Gv,"buildUnorderedGroup"),Ue(zv,"buildGroup"),Ue(qv,"getGuardCondition"),Ue(Uv,"buildCrossReference"),Ue(Bv,"buildKeyword"),Ue(Vv,"wrap"),Ue(Wv,"getRule"),Ue(Hv,"getRuleName"),Ue(Yv,"getToken"),Ue(Xv,"createCompletionParser"),Ue(Qv,"createLangiumParser"),Ue(Zv,"prepareLangiumParser");var Jv,eR=class{static{Ue(this,"DefaultTokenBuilder")}constructor(){this.diagnostics=[]}buildTokens(e,t){const r=er(to(e,!1)),n=this.buildTerminalTokens(r),i=this.buildKeywordTokens(r,n,t);return i.push(...n),i}flushLexingReport(e){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){const e=[...this.diagnostics];return this.diagnostics=[],e}buildTerminalTokens(e){return e.filter(Na).filter(e=>!e.fragment).map(e=>this.buildTerminalToken(e)).toArray()}buildTerminalToken(e){const t=Ro(e),r=this.requiresCustomPattern(t)?this.regexPatternFunction(t):t,n={name:e.name,PATTERN:r};return"function"==typeof r&&(n.LINE_BREAKS=!0),e.hidden&&(n.GROUP=Ys(t)?xu.SKIPPED:"hidden"),n}requiresCustomPattern(e){return!(!e.flags.includes("u")&&!e.flags.includes("s"))}regexPatternFunction(e){const t=new RegExp(e,e.flags+"y");return(e,r)=>{t.lastIndex=r;return t.exec(e)}}buildKeywordTokens(e,t,r){return e.filter(vr).flatMap(e=>ur(e).filter(oi)).distinct(e=>e.value).toArray().sort((e,t)=>t.value.length-e.value.length).map(e=>this.buildKeywordToken(e,t,Boolean(r?.caseInsensitive)))}buildKeywordToken(e,t,r){const n=this.buildKeywordPattern(e,r),i={name:e.value,PATTERN:n,LONGER_ALT:this.findLongerAlt(e,t)};return"function"==typeof n&&(i.LINE_BREAKS=!0),i}buildKeywordPattern(e,t){return t?new RegExp(Xs(e.value),"i"):e.value}findLongerAlt(e,t){return t.reduce((t,r)=>{const n=r?.PATTERN;return n?.source&&Qs("^"+n.source+"$",e.value)&&t.push(r),t},[])}},tR=class{static{Ue(this,"DefaultValueConverter")}convert(e,t){let r=t.grammarSource;if(dn(r)&&(r=no(r)),ta(r)){const n=r.rule.ref;if(!n)throw new Error("This cst node was not parsed by a rule.");return this.runConverter(n,e,t)}return e}runConverter(e,t,r){switch(e.name.toUpperCase()){case"INT":return Jv.convertInt(t);case"STRING":return Jv.convertString(t);case"ID":return Jv.convertID(t)}switch(vo(e)?.toLowerCase()){case"number":return Jv.convertNumber(t);case"boolean":return Jv.convertBoolean(t);case"bigint":return Jv.convertBigint(t);case"date":return Jv.convertDate(t);default:return t}}};!function(e){function t(e){let t="";for(let n=1;n<e.length-1;n++){const i=e.charAt(n);if("\\"===i){t+=r(e.charAt(++n))}else t+=i}return t}function r(e){switch(e){case"b":return"\b";case"f":return"\f";case"n":return"\n";case"r":return"\r";case"t":return"\t";case"v":return"\v";case"0":return"\0";default:return e}}function n(e){return"^"===e.charAt(0)?e.substring(1):e}function i(e){return parseInt(e)}function a(e){return BigInt(e)}function s(e){return new Date(e)}function o(e){return Number(e)}function l(e){return"true"===e.toLowerCase()}Ue(t,"convertString"),e.convertString=t,Ue(r,"convertEscapeCharacter"),Ue(n,"convertID"),e.convertID=n,Ue(i,"convertInt"),e.convertInt=i,Ue(a,"convertBigint"),e.convertBigint=a,Ue(s,"convertDate"),e.convertDate=s,Ue(o,"convertNumber"),e.convertNumber=o,Ue(l,"convertBoolean"),e.convertBoolean=l}(Jv||(Jv={}));var rR=We(Ft(),1);function nR(){return new Promise(e=>{"undefined"==typeof setImmediate?setTimeout(e,0):setImmediate(e)})}Ue(nR,"delayNextTick");var iR=0;function aR(){return iR=performance.now(),new rR.CancellationTokenSource}Ue(aR,"startCancelableOperation");var sR=Symbol("OperationCancelled");function oR(e){return e===sR}async function lR(e){if(e===rR.CancellationToken.None)return;const t=performance.now();if(t-iR>=10&&(iR=t,await nR(),iR=performance.now()),e.isCancellationRequested)throw sR}Ue(oR,"isOperationCancelled"),Ue(lR,"interruptAndCheck");var uR,cR,pR=class{static{Ue(this,"Deferred")}constructor(){this.promise=new Promise((e,t)=>{this.resolve=t=>(e(t),this),this.reject=e=>(t(e),this)})}},dR=class e{static{Ue(this,"FullTextDocument")}constructor(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){const t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content}update(t,r){for(const r of t)if(e.isIncremental(r)){const e=yR(r.range),t=this.offsetAt(e.start),n=this.offsetAt(e.end);this._content=this._content.substring(0,t)+r.text+this._content.substring(n,this._content.length);const i=Math.max(e.start.line,0),a=Math.max(e.end.line,0);let s=this._lineOffsets;const o=mR(r.text,!1,t);if(a-i===o.length)for(let e=0,t=o.length;e<t;e++)s[e+i+1]=o[e];else o.length<1e4?s.splice(i+1,a-i,...o):this._lineOffsets=s=s.slice(0,i+1).concat(o,s.slice(a+1));const l=r.text.length-(n-t);if(0!==l)for(let e=i+1+o.length,t=s.length;e<t;e++)s[e]=s[e]+l}else{if(!e.isFull(r))throw new Error("Unknown change event received");this._content=r.text,this._lineOffsets=void 0}this._version=r}getLineOffsets(){return void 0===this._lineOffsets&&(this._lineOffsets=mR(this._content,!0)),this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);const t=this.getLineOffsets();let r=0,n=t.length;if(0===n)return{line:0,character:e};for(;r<n;){const i=Math.floor((r+n)/2);t[i]>e?n=i:r=i+1}const i=r-1;return{line:i,character:(e=this.ensureBeforeEOL(e,t[i]))-t[i]}}offsetAt(e){const t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;const r=t[e.line];if(e.character<=0)return r;const n=e.line+1<t.length?t[e.line+1]:this._content.length,i=Math.min(r+e.character,n);return this.ensureBeforeEOL(i,r)}getLineRange(e){const t=this.getLineOffsets();if(e>=t.length){const e=t.length-1;return{start:{line:e,character:0},end:{line:e,character:this._content.length-t[e]}}}if(e<0)return{start:{line:0,character:0},end:{line:0,character:0}};const r=t[e],n=e+1<t.length?t[e+1]:this._content.length;return{start:{line:e,character:0},end:{line:e,character:this.ensureBeforeEOL(n,r)-r}}}getEOLCharacters(e){const t=this.getLineOffsets();if(e>=t.length)return"";if(e<0)return"";const r=e+1<t.length?t[e+1]:this._content.length,n=this.ensureBeforeEOL(r,t[e]);return this._content.substring(n,r)}ensureBeforeEOL(e,t){for(;e>t&&hR(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){const t=e;return null!=t&&"string"==typeof t.text&&void 0!==t.range&&(void 0===t.rangeLength||"number"==typeof t.rangeLength)}static isFull(e){const t=e;return null!=t&&"string"==typeof t.text&&void 0===t.range&&void 0===t.rangeLength}};function fR(e,t){if(e.length<=1)return e;const r=e.length/2|0,n=e.slice(0,r),i=e.slice(r);fR(n,t),fR(i,t);let a=0,s=0,o=0;for(;a<n.length&&s<i.length;){const r=t(n[a],i[s]);e[o++]=r<=0?n[a++]:i[s++]}for(;a<n.length;)e[o++]=n[a++];for(;s<i.length;)e[o++]=i[s++];return e}function mR(e,t,r=0){const n=t?[r]:[];for(let t=0;t<e.length;t++){const i=e.charCodeAt(t);hR(i)&&(13===i&&t+1<e.length&&10===e.charCodeAt(t+1)&&t++,n.push(r+t+1))}return n}function hR(e){return 13===e||10===e}function yR(e){const t=e.start,r=e.end;return t.line>r.line||t.line===r.line&&t.character>r.character?{start:r,end:t}:e}function gR(e){const t=yR(e.range);return t!==e.range?{newText:e.newText,range:t}:e}!function(e){function t(e,t,r,n){return new dR(e,t,r,n)}function r(e,t,r){if(e instanceof dR)return e.update(t,r),e;throw new Error("TextDocument.update: document must be created by TextDocument.create")}function n(e,t){const r=e.getText(),n=fR(t.map(gR),(e,t)=>{const r=e.range.start.line-t.range.start.line;return 0===r?e.range.start.character-t.range.start.character:r});let i=0;const a=[];for(const t of n){const n=e.offsetAt(t.range.start);if(n<i)throw new Error("Overlapping edit");n>i&&a.push(r.substring(i,n)),t.newText.length&&a.push(t.newText),i=e.offsetAt(t.range.end)}return a.push(r.substr(i)),a.join("")}Ue(t,"create"),e.create=t,Ue(r,"update"),e.update=r,Ue(n,"applyEdits"),e.applyEdits=n}(uR||(uR={})),Ue(fR,"mergeSort"),Ue(mR,"computeLineOffsets"),Ue(hR,"isEOL"),Ue(yR,"getWellformedRange"),Ue(gR,"getWellformedEdit"),(()=>{var e={975:e=>{function t(e){if("string"!=typeof e)throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}function r(e,t){for(var r,n="",i=0,a=-1,s=0,o=0;o<=e.length;++o){if(o<e.length)r=e.charCodeAt(o);else{if(47===r)break;r=47}if(47===r){if(a===o-1||1===s);else if(a!==o-1&&2===s){if(n.length<2||2!==i||46!==n.charCodeAt(n.length-1)||46!==n.charCodeAt(n.length-2))if(n.length>2){var l=n.lastIndexOf("/");if(l!==n.length-1){-1===l?(n="",i=0):i=(n=n.slice(0,l)).length-1-n.lastIndexOf("/"),a=o,s=0;continue}}else if(2===n.length||1===n.length){n="",i=0,a=o,s=0;continue}t&&(n.length>0?n+="/..":n="..",i=2)}else n.length>0?n+="/"+e.slice(a+1,o):n=e.slice(a+1,o),i=o-a-1;a=o,s=0}else 46===r&&-1!==s?++s:s=-1}return n}Ue(t,"e"),Ue(r,"r");var n={resolve:Ue(function(){for(var e,n="",i=!1,a=arguments.length-1;a>=-1&&!i;a--){var s;a>=0?s=arguments[a]:(void 0===e&&(e=process.cwd()),s=e),t(s),0!==s.length&&(n=s+"/"+n,i=47===s.charCodeAt(0))}return n=r(n,!i),i?n.length>0?"/"+n:"/":n.length>0?n:"."},"resolve"),normalize:Ue(function(e){if(t(e),0===e.length)return".";var n=47===e.charCodeAt(0),i=47===e.charCodeAt(e.length-1);return 0!==(e=r(e,!n)).length||n||(e="."),e.length>0&&i&&(e+="/"),n?"/"+e:e},"normalize"),isAbsolute:Ue(function(e){return t(e),e.length>0&&47===e.charCodeAt(0)},"isAbsolute"),join:Ue(function(){if(0===arguments.length)return".";for(var e,r=0;r<arguments.length;++r){var i=arguments[r];t(i),i.length>0&&(void 0===e?e=i:e+="/"+i)}return void 0===e?".":n.normalize(e)},"join"),relative:Ue(function(e,r){if(t(e),t(r),e===r)return"";if((e=n.resolve(e))===(r=n.resolve(r)))return"";for(var i=1;i<e.length&&47===e.charCodeAt(i);++i);for(var a=e.length,s=a-i,o=1;o<r.length&&47===r.charCodeAt(o);++o);for(var l=r.length-o,u=s<l?s:l,c=-1,p=0;p<=u;++p){if(p===u){if(l>u){if(47===r.charCodeAt(o+p))return r.slice(o+p+1);if(0===p)return r.slice(o+p)}else s>u&&(47===e.charCodeAt(i+p)?c=p:0===p&&(c=0));break}var d=e.charCodeAt(i+p);if(d!==r.charCodeAt(o+p))break;47===d&&(c=p)}var f="";for(p=i+c+1;p<=a;++p)p!==a&&47!==e.charCodeAt(p)||(0===f.length?f+="..":f+="/..");return f.length>0?f+r.slice(o+c):(o+=c,47===r.charCodeAt(o)&&++o,r.slice(o))},"relative"),_makeLong:Ue(function(e){return e},"_makeLong"),dirname:Ue(function(e){if(t(e),0===e.length)return".";for(var r=e.charCodeAt(0),n=47===r,i=-1,a=!0,s=e.length-1;s>=1;--s)if(47===(r=e.charCodeAt(s))){if(!a){i=s;break}}else a=!1;return-1===i?n?"/":".":n&&1===i?"//":e.slice(0,i)},"dirname"),basename:Ue(function(e,r){if(void 0!==r&&"string"!=typeof r)throw new TypeError('"ext" argument must be a string');t(e);var n,i=0,a=-1,s=!0;if(void 0!==r&&r.length>0&&r.length<=e.length){if(r.length===e.length&&r===e)return"";var o=r.length-1,l=-1;for(n=e.length-1;n>=0;--n){var u=e.charCodeAt(n);if(47===u){if(!s){i=n+1;break}}else-1===l&&(s=!1,l=n+1),o>=0&&(u===r.charCodeAt(o)?-1==--o&&(a=n):(o=-1,a=l))}return i===a?a=l:-1===a&&(a=e.length),e.slice(i,a)}for(n=e.length-1;n>=0;--n)if(47===e.charCodeAt(n)){if(!s){i=n+1;break}}else-1===a&&(s=!1,a=n+1);return-1===a?"":e.slice(i,a)},"basename"),extname:Ue(function(e){t(e);for(var r=-1,n=0,i=-1,a=!0,s=0,o=e.length-1;o>=0;--o){var l=e.charCodeAt(o);if(47!==l)-1===i&&(a=!1,i=o+1),46===l?-1===r?r=o:1!==s&&(s=1):-1!==r&&(s=-1);else if(!a){n=o+1;break}}return-1===r||-1===i||0===s||1===s&&r===i-1&&r===n+1?"":e.slice(r,i)},"extname"),format:Ue(function(e){if(null===e||"object"!=typeof e)throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof e);return r=(t=e).dir||t.root,n=t.base||(t.name||"")+(t.ext||""),r?r===t.root?r+n:r+"/"+n:n;var t,r,n},"format"),parse:Ue(function(e){t(e);var r={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return r;var n,i=e.charCodeAt(0),a=47===i;a?(r.root="/",n=1):n=0;for(var s=-1,o=0,l=-1,u=!0,c=e.length-1,p=0;c>=n;--c)if(47!==(i=e.charCodeAt(c)))-1===l&&(u=!1,l=c+1),46===i?-1===s?s=c:1!==p&&(p=1):-1!==s&&(p=-1);else if(!u){o=c+1;break}return-1===s||-1===l||0===p||1===p&&s===l-1&&s===o+1?-1!==l&&(r.base=r.name=0===o&&a?e.slice(1,l):e.slice(o,l)):(0===o&&a?(r.name=e.slice(1,s),r.base=e.slice(1,l)):(r.name=e.slice(o,s),r.base=e.slice(o,l)),r.ext=e.slice(s,l)),o>0?r.dir=e.slice(0,o-1):a&&(r.dir="/"),r},"parse"),sep:"/",delimiter:":",win32:null,posix:null};n.posix=n,e.exports=n}},t={};function r(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={exports:{}};return e[n](a,a.exports,r),a.exports}Ue(r,"r"),r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};let i;if(r.r(n),r.d(n,{URI:Ue(()=>d,"URI"),Utils:Ue(()=>S,"Utils")}),"object"==typeof process)i="win32"===process.platform;else if("object"==typeof navigator){let e=navigator.userAgent;i=e.indexOf("Windows")>=0}const a=/^\w[\w\d+.-]*$/,s=/^\//,o=/^\/\//;function l(e,t){if(!e.scheme&&t)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${e.authority}", path: "${e.path}", query: "${e.query}", fragment: "${e.fragment}"}`);if(e.scheme&&!a.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!s.test(e.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(o.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}Ue(l,"a");const u="",c="/",p=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class d{static{Ue(this,"l")}static isUri(e){return e instanceof d||!!e&&"string"==typeof e.authority&&"string"==typeof e.fragment&&"string"==typeof e.path&&"string"==typeof e.query&&"string"==typeof e.scheme&&"string"==typeof e.fsPath&&"function"==typeof e.with&&"function"==typeof e.toString}scheme;authority;path;query;fragment;constructor(e,t,r,n,i,a=!1){"object"==typeof e?(this.scheme=e.scheme||u,this.authority=e.authority||u,this.path=e.path||u,this.query=e.query||u,this.fragment=e.fragment||u):(this.scheme=function(e,t){return e||t?e:"file"}(e,a),this.authority=t||u,this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==c&&(t=c+t):t=c}return t}(this.scheme,r||u),this.query=n||u,this.fragment=i||u,l(this,a))}get fsPath(){return T(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:r,path:n,query:i,fragment:a}=e;return void 0===t?t=this.scheme:null===t&&(t=u),void 0===r?r=this.authority:null===r&&(r=u),void 0===n?n=this.path:null===n&&(n=u),void 0===i?i=this.query:null===i&&(i=u),void 0===a?a=this.fragment:null===a&&(a=u),t===this.scheme&&r===this.authority&&n===this.path&&i===this.query&&a===this.fragment?this:new m(t,r,n,i,a)}static parse(e,t=!1){const r=p.exec(e);return r?new m(r[2]||u,C(r[4]||u),C(r[5]||u),C(r[7]||u),C(r[9]||u),t):new m(u,u,u,u,u)}static file(e){let t=u;if(i&&(e=e.replace(/\\/g,c)),e[0]===c&&e[1]===c){const r=e.indexOf(c,2);-1===r?(t=e.substring(2),e=c):(t=e.substring(2,r),e=e.substring(r)||c)}return new m("file",t,e,u,u)}static from(e){const t=new m(e.scheme,e.authority,e.path,e.query,e.fragment);return l(t,!0),t}toString(e=!1){return v(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof d)return e;{const t=new m(e);return t._formatted=e.external,t._fsPath=e._sep===f?e.fsPath:null,t}}return e}}const f=i?1:void 0;class m extends d{static{Ue(this,"d")}_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=T(this,!1)),this._fsPath}toString(e=!1){return e?v(this,!0):(this._formatted||(this._formatted=v(this,!1)),this._formatted)}toJSON(){const e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=f),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e}}const h={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function y(e,t,r){let n,i=-1;for(let a=0;a<e.length;a++){const s=e.charCodeAt(a);if(s>=97&&s<=122||s>=65&&s<=90||s>=48&&s<=57||45===s||46===s||95===s||126===s||t&&47===s||r&&91===s||r&&93===s||r&&58===s)-1!==i&&(n+=encodeURIComponent(e.substring(i,a)),i=-1),void 0!==n&&(n+=e.charAt(a));else{void 0===n&&(n=e.substr(0,a));const t=h[s];void 0!==t?(-1!==i&&(n+=encodeURIComponent(e.substring(i,a)),i=-1),n+=t):-1===i&&(i=a)}}return-1!==i&&(n+=encodeURIComponent(e.substring(i))),void 0!==n?n:e}function g(e){let t;for(let r=0;r<e.length;r++){const n=e.charCodeAt(r);35===n||63===n?(void 0===t&&(t=e.substr(0,r)),t+=h[n]):void 0!==t&&(t+=e[r])}return void 0!==t?t:e}function T(e,t){let r;return r=e.authority&&e.path.length>1&&"file"===e.scheme?`//${e.authority}${e.path}`:47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&58===e.path.charCodeAt(2)?t?e.path.substr(1):e.path[1].toLowerCase()+e.path.substr(2):e.path,i&&(r=r.replace(/\//g,"\\")),r}function v(e,t){const r=t?g:y;let n="",{scheme:i,authority:a,path:s,query:o,fragment:l}=e;if(i&&(n+=i,n+=":"),(a||"file"===i)&&(n+=c,n+=c),a){let e=a.indexOf("@");if(-1!==e){const t=a.substr(0,e);a=a.substr(e+1),e=t.lastIndexOf(":"),-1===e?n+=r(t,!1,!1):(n+=r(t.substr(0,e),!1,!1),n+=":",n+=r(t.substr(e+1),!1,!0)),n+="@"}a=a.toLowerCase(),e=a.lastIndexOf(":"),-1===e?n+=r(a,!1,!0):(n+=r(a.substr(0,e),!1,!0),n+=a.substr(e))}if(s){if(s.length>=3&&47===s.charCodeAt(0)&&58===s.charCodeAt(2)){const e=s.charCodeAt(1);e>=65&&e<=90&&(s=`/${String.fromCharCode(e+32)}:${s.substr(3)}`)}else if(s.length>=2&&58===s.charCodeAt(1)){const e=s.charCodeAt(0);e>=65&&e<=90&&(s=`${String.fromCharCode(e+32)}:${s.substr(2)}`)}n+=r(s,!0,!1)}return o&&(n+="?",n+=r(o,!1,!1)),l&&(n+="#",n+=t?l:y(l,!1,!1)),n}function R(e){try{return decodeURIComponent(e)}catch{return e.length>3?e.substr(0,3)+R(e.substr(3)):e}}Ue(y,"m"),Ue(g,"y"),Ue(T,"v"),Ue(v,"b"),Ue(R,"C");const $=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function C(e){return e.match($)?e.replace($,e=>R(e)):e}Ue(C,"w");var E=r(975);const b=E.posix||E,A="/";var S,x;(x=S||(S={})).joinPath=function(e,...t){return e.with({path:b.join(e.path,...t)})},x.resolvePath=function(e,...t){let r=e.path,n=!1;r[0]!==A&&(r=A+r,n=!0);let i=b.resolve(r,...t);return n&&i[0]===A&&!e.authority&&(i=i.substring(1)),e.with({path:i})},x.dirname=function(e){if(0===e.path.length||e.path===A)return e;let t=b.dirname(e.path);return 1===t.length&&46===t.charCodeAt(0)&&(t=""),e.with({path:t})},x.basename=function(e){return b.basename(e.path)},x.extname=function(e){return b.extname(e.path)},cR=n})();var TR,{URI:vR,Utils:RR}=cR;!function(e){e.basename=RR.basename,e.dirname=RR.dirname,e.extname=RR.extname,e.joinPath=RR.joinPath,e.resolvePath=RR.resolvePath;const t="object"==typeof process&&"win32"===process?.platform;function r(e,t){return e?.toString()===t?.toString()}function n(e,r){const n="string"==typeof e?vR.parse(e).path:e.path,i="string"==typeof r?vR.parse(r).path:r.path,a=n.split("/").filter(e=>e.length>0),s=i.split("/").filter(e=>e.length>0);if(t){const e=/^[A-Z]:$/;if(a[0]&&e.test(a[0])&&(a[0]=a[0].toLowerCase()),s[0]&&e.test(s[0])&&(s[0]=s[0].toLowerCase()),a[0]!==s[0])return i.substring(1)}let o=0;for(;o<a.length&&a[o]===s[o];o++);return"../".repeat(a.length-o)+s.slice(o).join("/")}function i(e){return vR.parse(e.toString()).toString()}function a(e,t){const r="string"==typeof e?vR.parse(e):e,n="string"==typeof t?vR.parse(t):t;if(r.scheme!==n.scheme)return!1;let i=r.path,a=n.path;return"/"===a.charAt(a.length-1)&&(a=a.slice(0,-1)),"/"===i.charAt(i.length-1)&&(i=i.slice(0,-1)),a===i||!(a.length<i.length)&&("/"===a.charAt(i.length)&&a.startsWith(i))}Ue(r,"equals"),e.equals=r,Ue(n,"relative"),e.relative=n,Ue(i,"normalize"),e.normalize=i,Ue(a,"contains"),e.contains=a}(TR||(TR={}));var $R,CR,ER=class{static{Ue(this,"UriTrie")}constructor(){this.root={name:"",children:new Map}}normalizeUri(e){return TR.normalize(e)}clear(){this.root.children.clear()}insert(e,t){this.getNode(this.normalizeUri(e),!0).element=t}delete(e){const t=this.getNode(this.normalizeUri(e),!1);t?.parent&&t.parent.children.delete(t.name)}has(e){return void 0!==this.getNode(this.normalizeUri(e),!1)?.element}hasNode(e){return void 0!==this.getNode(this.normalizeUri(e),!1)}find(e){return this.getNode(this.normalizeUri(e),!1)?.element}findNode(e){const t=this.normalizeUri(e),r=this.getNode(t,!1);if(r)return{name:r.name,uri:TR.joinPath(vR.parse(t),r.name).toString(),element:r.element}}findChildren(e){const t=this.normalizeUri(e),r=this.getNode(t,!1);return r?Array.from(r.children.values()).map(e=>({name:e.name,uri:TR.joinPath(vR.parse(t),e.name).toString(),element:e.element})):[]}all(){return this.collectValues(this.root)}findAll(e){const t=this.getNode(this.normalizeUri(e),!1);return t?this.collectValues(t):[]}getNode(e,t){const r=e.split("/");"/"===e.charAt(e.length-1)&&r.pop();let n=this.root;for(const e of r){let r=n.children.get(e);if(!r){if(!t)return;r={name:e,children:new Map,parent:n},n.children.set(e,r)}n=r}return n}collectValues(e){const t=[];e.element&&t.push(e.element);for(const r of e.children.values())t.push(...this.collectValues(r));return t}};(CR=$R||($R={}))[CR.Changed=0]="Changed",CR[CR.Parsed=1]="Parsed",CR[CR.IndexedContent=2]="IndexedContent",CR[CR.ComputedScopes=3]="ComputedScopes",CR[CR.Linked=4]="Linked",CR[CR.IndexedReferences=5]="IndexedReferences",CR[CR.Validated=6]="Validated";var bR=class{static{Ue(this,"DefaultLangiumDocumentFactory")}constructor(e){this.serviceRegistry=e.ServiceRegistry,this.textDocuments=e.workspace.TextDocuments,this.fileSystemProvider=e.workspace.FileSystemProvider}async fromUri(e,t=rR.CancellationToken.None){const r=await this.getInitialText(e,t);return this.createAsync(e,r,t)}async getInitialText(e,t){return this.fileSystemProvider.readFile(e)}fromTextDocument(e,t,r){return t=t??vR.parse(e.uri),rR.CancellationToken.is(r)?this.createAsync(t,e,r):this.create(t,e,r)}fromString(e,t,r){return rR.CancellationToken.is(r)?this.createAsync(t,e,r):this.create(t,e,r)}fromModel(e,t){return this.create(t,{$model:e})}create(e,t,r){if("string"==typeof t){const n=this.parse(e,t,r);return this.createLangiumDocument(n,e,void 0,t)}if("$model"in t){const r={value:t.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(r,e)}{const n=this.parse(e,t.getText(),r);return this.createLangiumDocument(n,e,t)}}async createAsync(e,t,r){if("string"==typeof t){const n=await this.parseAsync(e,t,r);return this.createLangiumDocument(n,e,void 0,t)}{const n=await this.parseAsync(e,t.getText(),r);return this.createLangiumDocument(n,e,t)}}createLangiumDocument(e,t,r,n){let i;if(r)i={parseResult:e,uri:t,state:$R.Parsed,references:[],textDocument:r};else{const r=this.createTextDocumentGetter(t,n);i={parseResult:e,uri:t,state:$R.Parsed,references:[],get textDocument(){return r()}}}return e.value.$document=i,i}async update(e,t){const r=e.parseResult.value.$cstNode?.root.fullText,n=this.textDocuments?.get(e.uri.toString()),i=await this.getUpdatedText(e,n,t);if(n)Object.defineProperty(e,"textDocument",{value:n});else{const t=this.createTextDocumentGetter(e.uri,i);Object.defineProperty(e,"textDocument",{get:t})}return r!==i&&(e.parseResult=await this.parseAsync(e.uri,i,t),e.parseResult.value.$document=e),e.state=$R.Parsed,e}async getUpdatedText(e,t,r){return t?t.getText():await this.fileSystemProvider.readFile(e.uri)}parse(e,t,r){return this.serviceRegistry.getServices(e).parser.LangiumParser.parse(t,r)}parseAsync(e,t,r){return this.serviceRegistry.getServices(e).parser.AsyncParser.parse(t,r)}createTextDocumentGetter(e,t){const r=this.serviceRegistry;let n;return()=>n??(n=uR.create(e.toString(),r.getServices(e).LanguageMetaData.languageId,0,t??""))}},AR=class{static{Ue(this,"DefaultLangiumDocuments")}constructor(e){this.documentTrie=new ER,this.services=e,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.documentBuilder=()=>e.workspace.DocumentBuilder}get all(){return er(this.documentTrie.all())}addDocument(e){const t=e.uri.toString();if(this.documentTrie.has(t))throw new Error(`A document with the URI '${t}' is already present.`);this.documentTrie.insert(t,e)}getDocument(e){const t=e.toString();return this.documentTrie.find(t)}getDocuments(e){const t=e.toString();return this.documentTrie.findAll(t)}async getOrCreateDocument(e,t){let r=this.getDocument(e);return r||(r=await this.langiumDocumentFactory.fromUri(e,t),this.addDocument(r),r)}createDocument(e,t,r){if(r)return this.langiumDocumentFactory.fromString(t,e,r).then(e=>(this.addDocument(e),e));{const r=this.langiumDocumentFactory.fromString(t,e);return this.addDocument(r),r}}hasDocument(e){return this.documentTrie.has(e.toString())}invalidateDocument(e){const t=e.toString(),r=this.documentTrie.find(t);return r&&this.documentBuilder().resetToState(r,$R.Changed),r}deleteDocument(e){const t=e.toString(),r=this.documentTrie.find(t);return r&&(r.state=$R.Changed,this.documentTrie.delete(t)),r}deleteDocuments(e){const t=e.toString(),r=this.documentTrie.findAll(t);for(const e of r)e.state=$R.Changed;return this.documentTrie.delete(t),r}},SR=Symbol("RefResolving"),xR=class{static{Ue(this,"DefaultReferenceImpl")}constructor(e,t,r,n,i){this.resolver=e,this.node=t,this.property=r,this._ref=void 0,this.$refNode=n,this.$refText=i}get ref(){return this.resolver.resolveReference(this,this.node,this.property)}get $nodeDescription(){return this._nodeDescription}get error(){return Ut(this._ref)?this._ref:void 0}},kR=class{static{Ue(this,"DefaultMultiReferenceImpl")}constructor(e,t,r,n,i){this.resolver=e,this.node=t,this.property=r,this._items=void 0,this.$refNode=n,this.$refText=i}get items(){return this.resolver.resolveMultiReference(this,this.node,this.property)}get error(){return this._linkingError}},wR=class{static{Ue(this,"DefaultLinker")}constructor(e){this.reflection=e.shared.AstReflection,this.langiumDocuments=()=>e.shared.workspace.LangiumDocuments,this.scopeProvider=e.references.ScopeProvider,this.astNodeLocator=e.workspace.AstNodeLocator,this.profiler=e.shared.profilers.LangiumProfiler,this.languageId=e.LanguageMetaData.languageId,this.referenceResolver={resolveReference:this.resolveReference.bind(this),resolveMultiReference:this.resolveMultiReference.bind(this)}}async link(e,t=rR.CancellationToken.None){if(this.profiler?.isActive("linking")){const r=this.profiler.createTask("linking",this.languageId);r.start();try{for(const n of cr(e.parseResult.value))await lR(t),dr(n).forEach(t=>{const i=`${n.$type}:${t.property}`;r.startSubTask(i);try{this.doLink(t,e)}finally{r.stopSubTask(i)}})}finally{r.stop()}}else for(const r of cr(e.parseResult.value))await lR(t),dr(r).forEach(t=>this.doLink(t,e))}doLink(e,t){const r=e.reference;if("_ref"in r&&void 0===r._ref){r._ref=SR;try{const t=this.getCandidate(e);if(Ut(t))r._ref=t;else{r._nodeDescription=t;const n=this.loadAstNode(t);r._ref=n??this.createLinkingError(e,t)}}catch(t){console.error(`An error occurred while resolving reference to '${r.$refText}':`,t);const n=t.message??String(t);r._ref={info:e,message:`An error occurred while resolving reference to '${r.$refText}': ${n}`}}t.references.push(r)}else if("_items"in r&&void 0===r._items){r._items=SR;try{const t=this.getCandidates(e),n=[];if(Ut(t))r._linkingError=t;else for(const e of t){const t=this.loadAstNode(e);t&&n.push({ref:t,$nodeDescription:e})}r._items=n}catch(t){r._linkingError={info:e,message:`An error occurred while resolving reference to '${r.$refText}': ${t}`},r._items=[]}t.references.push(r)}}unlink(e){for(const t of e.references)"_ref"in t?(t._ref=void 0,delete t._nodeDescription):"_items"in t&&(t._items=void 0,delete t._linkingError);e.references=[]}getCandidate(e){return this.scopeProvider.getScope(e).getElement(e.reference.$refText)??this.createLinkingError(e)}getCandidates(e){const t=this.scopeProvider.getScope(e).getElements(e.reference.$refText).distinct(e=>`${e.documentUri}#${e.path}`).toArray();return t.length>0?t:this.createLinkingError(e)}buildReference(e,t,r,n){return new xR(this.referenceResolver,e,t,r,n)}buildMultiReference(e,t,r,n){return new kR(this.referenceResolver,e,t,r,n)}resolveReference(e,t,r){if(Kt(e._ref))return e._ref;if(qt(e._nodeDescription)){const n=this.loadAstNode(e._nodeDescription);e._ref=n??this.createLinkingError({reference:e,container:t,property:r},e._nodeDescription)}else if(void 0===e._ref){e._ref=SR;const n=sr(t).$document,i=this.getLinkedNode({reference:e,container:t,property:r});if(i.error&&n&&n.state<$R.ComputedScopes)return e._ref=void 0;e._ref=i.node??i.error,e._nodeDescription=i.descr,n?.references.push(e)}else e._ref===SR&&this.throwCyclicReferenceError(t,r,e.$refText);return Kt(e._ref)?e._ref:void 0}resolveMultiReference(e,t,r){if(Array.isArray(e._items))return e._items;if(void 0===e._items){e._items=SR;const n=sr(t).$document,i=this.getCandidates({reference:e,container:t,property:r}),a=[];if(Ut(i))e._linkingError=i;else{for(const e of i){const t=this.loadAstNode(e);t&&a.push({ref:t,$nodeDescription:e})}0===a.length&&(e._linkingError=this.createLinkingError({reference:e,container:t,property:r}))}e._items=a,n?.references.push(e)}else e._items===SR&&this.throwCyclicReferenceError(t,r,e.$refText);return Array.isArray(e._items)?e._items:[]}throwCyclicReferenceError(e,t,r){throw new Error(`Cyclic reference resolution detected: ${this.astNodeLocator.getAstNodePath(e)}/${t} (symbol '${r}')`)}getLinkedNode(e){try{const t=this.getCandidate(e);if(Ut(t))return{error:t};const r=this.loadAstNode(t);return r?{node:r,descr:t}:{descr:t,error:this.createLinkingError(e,t)}}catch(t){console.error(`An error occurred while resolving reference to '${e.reference.$refText}':`,t);const r=t.message??String(t);return{error:{info:e,message:`An error occurred while resolving reference to '${e.reference.$refText}': ${r}`}}}}loadAstNode(e){if(e.node)return e.node;const t=this.langiumDocuments().getDocument(e.documentUri);return t?this.astNodeLocator.getAstNode(t.parseResult.value,e.path):void 0}createLinkingError(e,t){const r=sr(e.container).$document;r&&r.state<$R.ComputedScopes&&console.warn(`Attempted reference resolution before document reached ComputedScopes state (${r.uri}).`);return{info:e,message:`Could not resolve reference to ${this.reflection.getReferenceType(e)} named '${e.reference.$refText}'.`,targetDescription:t}}};function _R(e){return"string"==typeof e.name}Ue(_R,"isNamed");var NR=class{static{Ue(this,"DefaultNameProvider")}getName(e){if(_R(e))return e.name}getNameNode(e){return so(e.$cstNode,"name")}},IR=class{static{Ue(this,"DefaultReferences")}constructor(e){this.nameProvider=e.references.NameProvider,this.index=e.shared.workspace.IndexManager,this.nodeLocator=e.workspace.AstNodeLocator,this.documents=e.shared.workspace.LangiumDocuments,this.hasMultiReference=cr(e.Grammar).some(e=>dn(e)&&e.isMulti)}findDeclarations(e){if(e){const t=co(e),r=e.astNode;if(t&&r){const n=r[t.feature];if(Gt(n)||zt(n))return or(n);if(Array.isArray(n))for(const t of n)if((Gt(t)||zt(t))&&t.$refNode&&t.$refNode.offset<=e.offset&&t.$refNode.end>=e.end)return or(t)}if(r){const t=this.nameProvider.getNameNode(r);if(t&&(t===e||gs(e,t)))return this.getSelfNodes(r)}}return[]}getSelfNodes(e){if(this.hasMultiReference){const t=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e)),r=this.getNodeFromReferenceDescription(t.head());if(r)for(const t of dr(r))if(zt(t.reference)&&t.reference.items.some(t=>t.ref===e))return t.reference.items.map(e=>e.ref);return[e]}return[e]}getNodeFromReferenceDescription(e){if(!e)return;const t=this.documents.getDocument(e.sourceUri);return t?this.nodeLocator.getAstNode(t.parseResult.value,e.sourcePath):void 0}findDeclarationNodes(e){const t=this.findDeclarations(e),r=[];for(const e of t){const t=this.nameProvider.getNameNode(e)??e.$cstNode;t&&r.push(t)}return r}findReferences(e,t){const r=[];t.includeDeclaration&&r.push(...this.getSelfReferences(e));let n=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e));return t.documentUri&&(n=n.filter(e=>TR.equals(e.sourceUri,t.documentUri))),r.push(...n),er(r)}getSelfReferences(e){const t=this.getSelfNodes(e),r=[];for(const e of t){const t=this.nameProvider.getNameNode(e);if(t){const n=ar(e),i=this.nodeLocator.getAstNodePath(e);r.push({sourceUri:n.uri,sourcePath:i,targetUri:n.uri,targetPath:i,segment:Rs(t),local:!0})}}return r}},OR=class{static{Ue(this,"MultiMap")}constructor(e){if(this.map=new Map,e)for(const[t,r]of e)this.add(t,r)}get size(){return tr.sum(er(this.map.values()).map(e=>e.length))}clear(){this.map.clear()}delete(e,t){if(void 0===t)return this.map.delete(e);{const r=this.map.get(e);if(r){const n=r.indexOf(t);if(n>=0)return 1===r.length?this.map.delete(e):r.splice(n,1),!0}return!1}}get(e){return this.map.get(e)??[]}getStream(e){const t=this.map.get(e);return t?er(t):Zt}has(e,t){if(void 0===t)return this.map.has(e);{const r=this.map.get(e);return!!r&&r.indexOf(t)>=0}}add(e,t){return this.map.has(e)?this.map.get(e).push(t):this.map.set(e,[t]),this}addAll(e,t){return this.map.has(e)?this.map.get(e).push(...t):this.map.set(e,Array.from(t)),this}forEach(e){this.map.forEach((t,r)=>t.forEach(t=>e(t,r,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return er(this.map.entries()).flatMap(([e,t])=>t.map(t=>[e,t]))}keys(){return er(this.map.keys())}values(){return er(this.map.values()).flat()}entriesGroupedByKey(){return er(this.map.entries())}},PR=class{static{Ue(this,"BiMap")}get size(){return this.map.size}constructor(e){if(this.map=new Map,this.inverse=new Map,e)for(const[t,r]of e)this.set(t,r)}clear(){this.map.clear(),this.inverse.clear()}set(e,t){return this.map.set(e,t),this.inverse.set(t,e),this}get(e){return this.map.get(e)}getKey(e){return this.inverse.get(e)}delete(e){const t=this.map.get(e);return void 0!==t&&(this.map.delete(e),this.inverse.delete(t),!0)}},DR=class{static{Ue(this,"DefaultScopeComputation")}constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}async collectExportedSymbols(e,t=rR.CancellationToken.None){return this.collectExportedSymbolsForNode(e.parseResult.value,e,void 0,t)}async collectExportedSymbolsForNode(e,t,r=lr,n=rR.CancellationToken.None){const i=[];this.addExportedSymbol(e,i,t);for(const a of r(e))await lR(n),this.addExportedSymbol(a,i,t);return i}addExportedSymbol(e,t,r){const n=this.nameProvider.getName(e);n&&t.push(this.descriptions.createDescription(e,n,r))}async collectLocalSymbols(e,t=rR.CancellationToken.None){const r=e.parseResult.value,n=new OR;for(const i of ur(r))await lR(t),this.addLocalSymbol(i,e,n);return n}addLocalSymbol(e,t,r){const n=e.$container;if(n){const i=this.nameProvider.getName(e);i&&r.add(n,this.descriptions.createDescription(e,i,t))}}},LR=class{static{Ue(this,"StreamScope")}constructor(e,t,r){this.elements=e,this.outerScope=t,this.caseInsensitive=r?.caseInsensitive??!1,this.concatOuterScope=r?.concatOuterScope??!0}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(e){const t=this.caseInsensitive?e.toLowerCase():e,r=this.caseInsensitive?this.elements.find(e=>e.name.toLowerCase()===t):this.elements.find(t=>t.name===e);return r||(this.outerScope?this.outerScope.getElement(e):void 0)}getElements(e){const t=this.caseInsensitive?e.toLowerCase():e,r=this.caseInsensitive?this.elements.filter(e=>e.name.toLowerCase()===t):this.elements.filter(t=>t.name===e);return(this.concatOuterScope||r.isEmpty())&&this.outerScope?r.concat(this.outerScope.getElements(e)):r}},MR=class{static{Ue(this,"MultiMapScope")}constructor(e,t,r){this.elements=new OR,this.caseInsensitive=r?.caseInsensitive??!1,this.concatOuterScope=r?.concatOuterScope??!0;for(const t of e){const e=this.caseInsensitive?t.name.toLowerCase():t.name;this.elements.add(e,t)}this.outerScope=t}getElement(e){const t=this.caseInsensitive?e.toLowerCase():e,r=this.elements.get(t)[0];return r||(this.outerScope?this.outerScope.getElement(e):void 0)}getElements(e){const t=this.caseInsensitive?e.toLowerCase():e,r=this.elements.get(t);return(this.concatOuterScope||0===r.length)&&this.outerScope?er(r).concat(this.outerScope.getElements(e)):er(r)}getAllElements(){let e=er(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},jR=class{static{Ue(this,"DisposableCache")}constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(e){this.toDispose.push(e)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach(e=>e.dispose())}throwIfDisposed(){if(this.isDisposed)throw new Error("This cache has already been disposed")}},FR=class extends jR{static{Ue(this,"SimpleCache")}constructor(){super(...arguments),this.cache=new Map}has(e){return this.throwIfDisposed(),this.cache.has(e)}set(e,t){this.throwIfDisposed(),this.cache.set(e,t)}get(e,t){if(this.throwIfDisposed(),this.cache.has(e))return this.cache.get(e);if(t){const r=t();return this.cache.set(e,r),r}}delete(e){return this.throwIfDisposed(),this.cache.delete(e)}clear(){this.throwIfDisposed(),this.cache.clear()}},KR=class extends jR{static{Ue(this,"ContextCache")}constructor(e){super(),this.cache=new Map,this.converter=e??(e=>e)}has(e,t){return this.throwIfDisposed(),this.cacheForContext(e).has(t)}set(e,t,r){this.throwIfDisposed(),this.cacheForContext(e).set(t,r)}get(e,t,r){this.throwIfDisposed();const n=this.cacheForContext(e);if(n.has(t))return n.get(t);if(r){const e=r();return n.set(t,e),e}}delete(e,t){return this.throwIfDisposed(),this.cacheForContext(e).delete(t)}clear(e){if(this.throwIfDisposed(),e){const t=this.converter(e);this.cache.delete(t)}else this.cache.clear()}cacheForContext(e){const t=this.converter(e);let r=this.cache.get(t);return r||(r=new Map,this.cache.set(t,r)),r}},GR=class extends FR{static{Ue(this,"WorkspaceCache")}constructor(e,t){super(),t?(this.toDispose.push(e.workspace.DocumentBuilder.onBuildPhase(t,()=>{this.clear()})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((e,t)=>{t.length>0&&this.clear()}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}},zR=class{static{Ue(this,"DefaultScopeProvider")}constructor(e){this.reflection=e.shared.AstReflection,this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider,this.indexManager=e.shared.workspace.IndexManager,this.globalScopeCache=new GR(e.shared)}getScope(e){const t=[],r=this.reflection.getReferenceType(e),n=ar(e.container).localSymbols;if(n){let i=e.container;do{n.has(i)&&t.push(n.getStream(i).filter(e=>this.reflection.isSubtype(e.type,r))),i=i.$container}while(i)}let i=this.getGlobalScope(r,e);for(let e=t.length-1;e>=0;e--)i=this.createScope(t[e],i);return i}createScope(e,t,r){return new LR(er(e),t,r)}createScopeForNodes(e,t,r){const n=er(e).map(e=>{const t=this.nameProvider.getName(e);if(t)return this.descriptions.createDescription(e,t)}).nonNullable();return new LR(n,t,r)}getGlobalScope(e,t){return this.globalScopeCache.get(e,()=>new MR(this.indexManager.allElements(e)))}};function qR(e){return"string"==typeof e.$comment}function UR(e){return"object"==typeof e&&!!e&&("$ref"in e||"$refs"in e||"$error"in e)}Ue(qR,"isAstNodeWithComment"),Ue(UR,"isIntermediateReference");var BR,VR,WR=class{static{Ue(this,"DefaultJsonSerializer")}constructor(e){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=e.shared.workspace.LangiumDocuments,this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider,this.commentProvider=e.documentation.CommentProvider}serialize(e,t){const r=t??{},n=t?.replacer,i=Ue((e,t)=>this.replacer(e,t,r),"defaultReplacer"),a=n?(e,t)=>n(e,t,i):i;try{return this.currentDocument=ar(e),JSON.stringify(e,a,t?.space)}finally{this.currentDocument=void 0}}deserialize(e,t){const r=t??{},n=JSON.parse(e);return this.linkNode(n,n,r),n}replacer(e,t,{refText:r,sourceText:n,textRegions:i,comments:a,uriConverter:s}){if(!this.ignoreProperties.has(e)){if(Gt(t)){const e=t.ref,n=r?t.$refText:void 0;if(e){const t=ar(e);let r="";this.currentDocument&&this.currentDocument!==t&&(r=s?s(t.uri,e):t.uri.toString());return{$ref:`${r}#${this.astNodeLocator.getAstNodePath(e)}`,$refText:n}}return{$error:t.error?.message??"Could not resolve reference",$refText:n}}if(zt(t)){const e=r?t.$refText:void 0,n=[];for(const e of t.items){const t=e.ref,r=ar(e.ref);let i="";this.currentDocument&&this.currentDocument!==r&&(i=s?s(r.uri,t):r.uri.toString());const a=this.astNodeLocator.getAstNodePath(t);n.push(`${i}#${a}`)}return{$refs:n,$refText:e}}if(Kt(t)){let r;if(i&&(r=this.addAstNodeRegionWithAssignmentsTo({...t}),e&&!t.$document||!r?.$textRegion||(r.$textRegion.documentURI=this.currentDocument?.uri.toString())),n&&!e&&(r??(r={...t}),r.$sourceText=t.$cstNode?.text),a){r??(r={...t});const e=this.commentProvider.getComment(t);e&&(r.$comment=e.replace(/\r/g,""))}return r??t}return t}}addAstNodeRegionWithAssignmentsTo(e){const t=Ue(e=>({offset:e.offset,end:e.end,length:e.length,range:e.range}),"createDocumentSegment");if(e.$cstNode){const r=(e.$textRegion=t(e.$cstNode)).assignments={};return Object.keys(e).filter(e=>!e.startsWith("$")).forEach(n=>{const i=ao(e.$cstNode,n).map(t);0!==i.length&&(r[n]=i)}),e}}linkNode(e,t,r,n,i,a){for(const[n,i]of Object.entries(e))if(Array.isArray(i))for(let a=0;a<i.length;a++){const s=i[a];UR(s)?i[a]=this.reviveReference(e,n,t,s,r):Kt(s)&&this.linkNode(s,t,r,e,n,a)}else UR(i)?e[n]=this.reviveReference(e,n,t,i,r):Kt(i)&&this.linkNode(i,t,r,e,n);const s=e;s.$container=n,s.$containerProperty=i,s.$containerIndex=a}reviveReference(e,t,r,n,i){let a,s=n.$refText,o=n.$error;if(n.$ref){const e=this.getRefNode(r,n.$ref,i.uriConverter);if(Kt(e))return s||(s=this.nameProvider.getName(e)),{$refText:s??"",ref:e};o=e}else if(n.$refs){const e=[];for(const t of n.$refs){const n=this.getRefNode(r,t,i.uriConverter);Kt(n)&&e.push({ref:n})}if(0!==e.length)return{$refText:s??"",items:e};a={$refText:s??"",items:e},o??(o="Could not resolve multi-reference")}return o?(a??(a={$refText:s??"",ref:void 0}),a.error={info:{container:e,property:t,reference:a},message:o},a):void 0}getRefNode(e,t,r){try{const n=t.indexOf("#");if(0===n){const r=this.astNodeLocator.getAstNode(e,t.substring(1));return r||"Could not resolve path: "+t}if(n<0){const e=r?r(t):vR.parse(t),n=this.langiumDocuments.getDocument(e);return n?n.parseResult.value:"Could not find document for URI: "+t}const i=r?r(t.substring(0,n)):vR.parse(t.substring(0,n)),a=this.langiumDocuments.getDocument(i);if(!a)return"Could not find document for URI: "+t;if(n===t.length-1)return a.parseResult.value;const s=this.astNodeLocator.getAstNode(a.parseResult.value,t.substring(n+1));return s||"Could not resolve URI: "+t}catch(e){return String(e)}}},HR=class{static{Ue(this,"DefaultServiceRegistry")}get map(){return this.fileExtensionMap}constructor(e){this.languageIdMap=new Map,this.fileExtensionMap=new Map,this.fileNameMap=new Map,this.textDocuments=e?.workspace.TextDocuments}register(e){const t=e.LanguageMetaData;for(const r of t.fileExtensions)this.fileExtensionMap.has(r)&&console.warn(`The file extension ${r} is used by multiple languages. It is now assigned to '${t.languageId}'.`),this.fileExtensionMap.set(r,e);if(t.fileNames)for(const r of t.fileNames)this.fileNameMap.has(r)&&console.warn(`The file name ${r} is used by multiple languages. It is now assigned to '${t.languageId}'.`),this.fileNameMap.set(r,e);this.languageIdMap.set(t.languageId,e)}getServices(e){if(0===this.languageIdMap.size)throw new Error("The service registry is empty. Use `register` to register the services of a language.");const t=this.textDocuments?.get(e)?.languageId;if(void 0!==t){const e=this.languageIdMap.get(t);if(e)return e}const r=TR.extname(e),n=TR.basename(e),i=this.fileNameMap.get(n)??this.fileExtensionMap.get(r);if(!i)throw t?new Error(`The service registry contains no services for the extension '${r}' for language '${t}'.`):new Error(`The service registry contains no services for the extension '${r}'.`);return i}hasServices(e){try{return this.getServices(e),!0}catch{return!1}}get all(){return Array.from(this.languageIdMap.values())}};function YR(e){return{code:e}}Ue(YR,"diagnosticData"),(VR=BR||(BR={})).defaults=["fast","slow","built-in"],VR.all=VR.defaults;var XR,QR,ZR=class{static{Ue(this,"ValidationRegistry")}constructor(e){this.entries=new OR,this.knownCategories=new Set(BR.defaults),this.entriesBefore=[],this.entriesAfter=[],this.reflection=e.shared.AstReflection}register(e,t=this,r="fast"){if("built-in"===r)throw new Error("The 'built-in' category is reserved for lexer, parser, and linker errors.");this.knownCategories.add(r);for(const[n,i]of Object.entries(e)){const e=i;if(Array.isArray(e))for(const i of e){const e={check:this.wrapValidationException(i,t),category:r};this.addEntry(n,e)}else if("function"==typeof e){const i={check:this.wrapValidationException(e,t),category:r};this.addEntry(n,i)}else ks()}}wrapValidationException(e,t){return async(r,n,i)=>{await this.handleException(()=>e.call(t,r,n,i),"An error occurred during validation",n,r)}}async handleException(e,t,r,n){try{await e()}catch(e){if(oR(e))throw e;console.error(`${t}:`,e),e instanceof Error&&e.stack&&console.error(e.stack);r("error",`${t}: ${e instanceof Error?e.message:String(e)}`,{node:n})}}addEntry(e,t){if("AstNode"!==e)for(const r of this.reflection.getAllSubTypes(e))this.entries.add(r,t);else this.entries.add("AstNode",t)}getChecks(e,t){let r=er(this.entries.get(e)).concat(this.entries.get("AstNode"));return t&&(r=r.filter(e=>t.includes(e.category))),r.map(e=>e.check)}registerBeforeDocument(e,t=this){this.entriesBefore.push(this.wrapPreparationException(e,"An error occurred during set-up of the validation",t))}registerAfterDocument(e,t=this){this.entriesAfter.push(this.wrapPreparationException(e,"An error occurred during tear-down of the validation",t))}wrapPreparationException(e,t,r){return async(n,i,a,s)=>{await this.handleException(()=>e.call(r,n,i,a,s),t,i,n)}}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}getAllValidationCategories(e){return this.knownCategories}},JR=Object.freeze({validateNode:!0,validateChildren:!0}),e$=class{static{Ue(this,"DefaultDocumentValidator")}constructor(e){this.validationRegistry=e.validation.ValidationRegistry,this.metadata=e.LanguageMetaData,this.profiler=e.shared.profilers.LangiumProfiler,this.languageId=e.LanguageMetaData.languageId}async validateDocument(e,t={},r=rR.CancellationToken.None){const n=e.parseResult,i=[];if(await lR(r),!t.categories||t.categories.includes("built-in")){if(this.processLexingErrors(n,i,t),t.stopAfterLexingErrors&&i.some(e=>e.data?.code===XR.LexingError))return i;if(this.processParsingErrors(n,i,t),t.stopAfterParsingErrors&&i.some(e=>e.data?.code===XR.ParsingError))return i;if(this.processLinkingErrors(e,i,t),t.stopAfterLinkingErrors&&i.some(e=>e.data?.code===XR.LinkingError))return i}try{i.push(...await this.validateAst(n.value,t,r))}catch(e){if(oR(e))throw e;console.error("An error occurred during validation:",e)}return await lR(r),i}processLexingErrors(e,t,r){const n=[...e.lexerErrors,...e.lexerReport?.diagnostics??[]];for(const e of n){const r=e.severity??"error",n={severity:r$(r),range:{start:{line:e.line-1,character:e.column-1},end:{line:e.line-1,character:e.column+e.length-1}},message:e.message,data:n$(r),source:this.getSource()};t.push(n)}}processParsingErrors(e,t,r){for(const r of e.parserErrors){let e;if(vs(r.token))e=Ts(r.token);else if("previousToken"in r){const t=r.previousToken;if(vs(t)){const r={line:t.endLine-1,character:t.endColumn};e={start:r,end:r}}else{const t={line:0,character:0};e={start:t,end:t}}}if(e){const n={severity:r$("error"),range:e,message:r.message,data:YR(XR.ParsingError),source:this.getSource()};t.push(n)}}}processLinkingErrors(e,t,r){for(const r of e.references){const e=r.error;if(e){const n={node:e.info.container,range:r.$refNode?.range,property:e.info.property,index:e.info.index,data:{code:XR.LinkingError,containerType:e.info.container.$type,property:e.info.property,refText:e.info.reference.$refText}};t.push(this.toDiagnostic("error",e.message,n))}}}async validateAst(e,t,r=rR.CancellationToken.None){const n=[],i=Ue((e,t,r)=>{n.push(this.toDiagnostic(e,t,r))},"acceptor");return await this.validateAstBefore(e,t,i,r),await this.validateAstNodes(e,t,i,r),await this.validateAstAfter(e,t,i,r),n}async validateAstBefore(e,t,r,n=rR.CancellationToken.None){const i=this.validationRegistry.checksBefore;for(const a of i)await lR(n),await a(e,r,t.categories??[],n)}async validateAstNodes(e,t,r,n=rR.CancellationToken.None){if(this.profiler?.isActive("validating")){const i=this.profiler.createTask("validating",this.languageId);i.start();try{const a=cr(e).iterator();for(const e of a){i.startSubTask(e.$type);const s=this.validateSingleNodeOptions(e,t);if(s.validateNode)try{const i=this.validationRegistry.getChecks(e.$type,t.categories);for(const t of i)await t(e,r,n)}finally{i.stopSubTask(e.$type)}s.validateChildren||a.prune()}}finally{i.stop()}}else{const i=cr(e).iterator();for(const e of i){await lR(n);const a=this.validateSingleNodeOptions(e,t);if(a.validateNode){const i=this.validationRegistry.getChecks(e.$type,t.categories);for(const t of i)await t(e,r,n)}a.validateChildren||i.prune()}}}validateSingleNodeOptions(e,t){return JR}async validateAstAfter(e,t,r,n=rR.CancellationToken.None){const i=this.validationRegistry.checksAfter;for(const a of i)await lR(n),await a(e,r,t.categories??[],n)}toDiagnostic(e,t,r){return{message:t,range:t$(r),severity:r$(e),code:r.code,codeDescription:r.codeDescription,tags:r.tags,relatedInformation:r.relatedInformation,data:r.data,source:this.getSource()}}getSource(){return this.metadata.languageId}};function t$(e){if(e.range)return e.range;let t;return"string"==typeof e.property?t=so(e.node.$cstNode,e.property,e.index):"string"==typeof e.keyword&&(t=lo(e.node.$cstNode,e.keyword,e.index)),t??(t=e.node.$cstNode),t?t.range:{start:{line:0,character:0},end:{line:0,character:0}}}function r$(e){switch(e){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw new Error("Invalid diagnostic severity: "+e)}}function n$(e){switch(e){case"error":return YR(XR.LexingError);case"warning":return YR(XR.LexingWarning);case"info":return YR(XR.LexingInfo);case"hint":return YR(XR.LexingHint);default:throw new Error("Invalid diagnostic severity: "+e)}}Ue(t$,"getDiagnosticRange"),Ue(r$,"toDiagnosticSeverity"),Ue(n$,"toDiagnosticData"),(QR=XR||(XR={})).LexingError="lexing-error",QR.LexingWarning="lexing-warning",QR.LexingInfo="lexing-info",QR.LexingHint="lexing-hint",QR.ParsingError="parsing-error",QR.LinkingError="linking-error";var i$,a$=class{static{Ue(this,"DefaultAstNodeDescriptionProvider")}constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,t,r){const n=r??ar(e);t??(t=this.nameProvider.getName(e));const i=this.astNodeLocator.getAstNodePath(e);if(!t)throw new Error(`Node at path ${i} has no name.`);let a;const s=Ue(()=>a??(a=Rs(this.nameProvider.getNameNode(e)??e.$cstNode)),"nameSegmentGetter");return{node:e,name:t,get nameSegment(){return s()},selectionSegment:Rs(e.$cstNode),type:e.$type,documentUri:n.uri,path:i}}},s$=class{static{Ue(this,"DefaultReferenceDescriptionProvider")}constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}async createDescriptions(e,t=rR.CancellationToken.None){const r=[],n=e.parseResult.value;for(const e of cr(n))await lR(t),dr(e).forEach(e=>{e.reference.error||r.push(...this.createInfoDescriptions(e))});return r}createInfoDescriptions(e){const t=e.reference;if(t.error||!t.$refNode)return[];let r=[];Gt(t)&&t.$nodeDescription?r=[t.$nodeDescription]:zt(t)&&(r=t.items.map(e=>e.$nodeDescription).filter(e=>void 0!==e));const n=ar(e.container).uri,i=this.nodeLocator.getAstNodePath(e.container),a=[],s=Rs(t.$refNode);for(const e of r)a.push({sourceUri:n,sourcePath:i,targetUri:e.documentUri,targetPath:e.path,segment:s,local:TR.equals(e.documentUri,n)});return a}},o$=class{static{Ue(this,"DefaultAstNodeLocator")}constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(e){if(e.$container){const t=this.getAstNodePath(e.$container),r=this.getPathSegment(e);return t+this.segmentSeparator+r}return""}getPathSegment({$containerProperty:e,$containerIndex:t}){if(!e)throw new Error("Missing '$containerProperty' in AST node.");return void 0!==t?e+this.indexSeparator+t:e}getAstNode(e,t){return t.split(this.segmentSeparator).reduce((e,t)=>{if(!e||0===t.length)return e;const r=t.indexOf(this.indexSeparator);if(r>0){const n=t.substring(0,r),i=parseInt(t.substring(r+1)),a=e[n];return a?.[i]}return e[t]},e)}},l$=We(Ft(),1),u$=class{static{Ue(this,"DefaultConfigurationProvider")}constructor(e){this._ready=new pR,this.onConfigurationSectionUpdateEmitter=new l$.Emitter,this.settings={},this.workspaceConfig=!1,this.serviceRegistry=e.ServiceRegistry}get ready(){return this._ready.promise}initialize(e){this.workspaceConfig=e.capabilities.workspace?.configuration??!1}async initialized(e){if(this.workspaceConfig){if(e.register){const t=this.serviceRegistry.all;e.register({section:t.map(e=>this.toSectionName(e.LanguageMetaData.languageId))})}if(e.fetchConfiguration){const t=this.serviceRegistry.all.map(e=>({section:this.toSectionName(e.LanguageMetaData.languageId)})),r=await e.fetchConfiguration(t);t.forEach((e,t)=>{this.updateSectionConfiguration(e.section,r[t])})}}this._ready.resolve()}updateConfiguration(e){"object"==typeof e.settings&&null!==e.settings&&Object.entries(e.settings).forEach(([e,t])=>{this.updateSectionConfiguration(e,t),this.onConfigurationSectionUpdateEmitter.fire({section:e,configuration:t})})}updateSectionConfiguration(e,t){this.settings[e]=t}async getConfiguration(e,t){await this.ready;const r=this.toSectionName(e);if(this.settings[r])return this.settings[r][t]}toSectionName(e){return`${e}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}},c$=We(Ft(),1);!function(e){function t(e){return{dispose:Ue(async()=>await e(),"dispose")}}Ue(t,"create"),e.create=t}(i$||(i$={}));var p$=class{static{Ue(this,"DefaultDocumentBuilder")}constructor(e){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new OR,this.documentPhaseListeners=new OR,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=$R.Changed,this.langiumDocuments=e.workspace.LangiumDocuments,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.textDocuments=e.workspace.TextDocuments,this.indexManager=e.workspace.IndexManager,this.fileSystemProvider=e.workspace.FileSystemProvider,this.workspaceManager=()=>e.workspace.WorkspaceManager,this.serviceRegistry=e.ServiceRegistry}async build(e,t={},r=rR.CancellationToken.None){for(const r of e){const e=r.uri.toString();if(r.state===$R.Validated){if("boolean"==typeof t.validation&&t.validation)this.resetToState(r,$R.IndexedReferences);else if("object"==typeof t.validation){const n=this.findMissingValidationCategories(r,t);n.length>0&&(this.buildState.set(e,{completed:!1,options:{validation:{categories:n}},result:this.buildState.get(e)?.result}),r.state=$R.IndexedReferences)}}else this.buildState.delete(e)}this.currentState=$R.Changed,await this.emitUpdate(e.map(e=>e.uri),[]),await this.buildDocuments(e,t,r)}async update(e,t,r=rR.CancellationToken.None){this.currentState=$R.Changed;const n=[];for(const e of t){const t=this.langiumDocuments.deleteDocuments(e);for(const e of t)n.push(e.uri),this.cleanUpDeleted(e)}const i=(await Promise.all(e.map(e=>this.findChangedUris(e)))).flat();for(const e of i){let t=this.langiumDocuments.getDocument(e);void 0===t&&(t=this.langiumDocumentFactory.fromModel({$type:"INVALID"},e),t.state=$R.Changed,this.langiumDocuments.addDocument(t)),this.resetToState(t,$R.Changed)}const a=er(i).concat(n).map(e=>e.toString()).toSet();this.langiumDocuments.all.filter(e=>!a.has(e.uri.toString())&&this.shouldRelink(e,a)).forEach(e=>this.resetToState(e,$R.ComputedScopes)),await this.emitUpdate(i,n),await lR(r);const s=this.sortDocuments(this.langiumDocuments.all.filter(e=>e.state<$R.Validated||!this.buildState.get(e.uri.toString())?.completed||this.resultsAreIncomplete(e,this.updateBuildOptions)).toArray());await this.buildDocuments(s,this.updateBuildOptions,r)}resultsAreIncomplete(e,t){return this.findMissingValidationCategories(e,t).length>=1}findMissingValidationCategories(e,t){const r=this.buildState.get(e.uri.toString()),n=this.serviceRegistry.getServices(e.uri).validation.ValidationRegistry.getAllValidationCategories(e),i=r?.result?.validationChecks?new Set(r?.result?.validationChecks):r?.completed?n:new Set;return er(void 0===t||!0===t.validation?n:"object"==typeof t.validation?t.validation.categories??n:[]).filter(e=>!i.has(e)).toArray()}async findChangedUris(e){if(this.langiumDocuments.getDocument(e)??this.textDocuments?.get(e))return[e];try{const t=await this.fileSystemProvider.stat(e);if(t.isDirectory){return await this.workspaceManager().searchFolder(e)}if(this.workspaceManager().shouldIncludeEntry(t))return[e]}catch{}return[]}async emitUpdate(e,t){await Promise.all(this.updateListeners.map(r=>r(e,t)))}sortDocuments(e){let t=0,r=e.length-1;for(;t<r;){for(;t<e.length&&this.hasTextDocument(e[t]);)t++;for(;r>=0&&!this.hasTextDocument(e[r]);)r--;t<r&&([e[t],e[r]]=[e[r],e[t]])}return e}hasTextDocument(e){return Boolean(this.textDocuments?.get(e.uri))}shouldRelink(e,t){return!!e.references.some(e=>void 0!==e.error)||this.indexManager.isAffected(e,t)}onUpdate(e){return this.updateListeners.push(e),i$.create(()=>{const t=this.updateListeners.indexOf(e);t>=0&&this.updateListeners.splice(t,1)})}resetToState(e,t){switch(t){case $R.Changed:case $R.Parsed:this.indexManager.removeContent(e.uri);case $R.IndexedContent:e.localSymbols=void 0;case $R.ComputedScopes:this.serviceRegistry.getServices(e.uri).references.Linker.unlink(e);case $R.Linked:this.indexManager.removeReferences(e.uri);case $R.IndexedReferences:e.diagnostics=void 0,this.buildState.delete(e.uri.toString());case $R.Validated:}e.state>t&&(e.state=t)}cleanUpDeleted(e){this.buildState.delete(e.uri.toString()),this.indexManager.remove(e.uri),e.state=$R.Changed}async buildDocuments(e,t,r){this.prepareBuild(e,t),await this.runCancelable(e,$R.Parsed,r,e=>this.langiumDocumentFactory.update(e,r)),await this.runCancelable(e,$R.IndexedContent,r,e=>this.indexManager.updateContent(e,r)),await this.runCancelable(e,$R.ComputedScopes,r,async e=>{const t=this.serviceRegistry.getServices(e.uri).references.ScopeComputation;e.localSymbols=await t.collectLocalSymbols(e,r)});const n=e.filter(e=>this.shouldLink(e));await this.runCancelable(n,$R.Linked,r,e=>this.serviceRegistry.getServices(e.uri).references.Linker.link(e,r)),await this.runCancelable(n,$R.IndexedReferences,r,e=>this.indexManager.updateReferences(e,r));const i=e.filter(e=>!!this.shouldValidate(e)||(this.markAsCompleted(e),!1));await this.runCancelable(i,$R.Validated,r,async e=>{await this.validate(e,r),this.markAsCompleted(e)})}markAsCompleted(e){const t=this.buildState.get(e.uri.toString());t&&(t.completed=!0)}prepareBuild(e,t){for(const r of e){const e=r.uri.toString(),n=this.buildState.get(e);n&&!n.completed||this.buildState.set(e,{completed:!1,options:t,result:n?.result})}}async runCancelable(e,t,r,n){for(const i of e)i.state<t&&(await lR(r),await n(i),i.state=t,await this.notifyDocumentPhase(i,t,r));const i=e.filter(e=>e.state===t);await this.notifyBuildPhase(i,t,r),this.currentState=t}onBuildPhase(e,t){return this.buildPhaseListeners.add(e,t),i$.create(()=>{this.buildPhaseListeners.delete(e,t)})}onDocumentPhase(e,t){return this.documentPhaseListeners.add(e,t),i$.create(()=>{this.documentPhaseListeners.delete(e,t)})}waitUntil(e,t,r){let n;return t&&"path"in t?n=t:r=t,r??(r=rR.CancellationToken.None),n?this.awaitDocumentState(e,n,r):this.awaitBuilderState(e,r)}awaitDocumentState(e,t,r){const n=this.langiumDocuments.getDocument(t);return n?n.state>=e?Promise.resolve(t):r.isCancellationRequested?Promise.reject(sR):this.currentState>=e&&e>n.state?Promise.reject(new c$.ResponseError(c$.LSPErrorCodes.RequestFailed,`Document state of ${t.toString()} is ${$R[n.state]}, requiring ${$R[e]}, but workspace state is already ${$R[this.currentState]}. Returning undefined.`)):new Promise((n,i)=>{const a=this.onDocumentPhase(e,e=>{TR.equals(e.uri,t)&&(a.dispose(),s.dispose(),n(e.uri))}),s=r.onCancellationRequested(()=>{a.dispose(),s.dispose(),i(sR)})}):Promise.reject(new c$.ResponseError(c$.LSPErrorCodes.ServerCancelled,`No document found for URI: ${t.toString()}`))}awaitBuilderState(e,t){return this.currentState>=e?Promise.resolve():t.isCancellationRequested?Promise.reject(sR):new Promise((r,n)=>{const i=this.onBuildPhase(e,()=>{i.dispose(),a.dispose(),r()}),a=t.onCancellationRequested(()=>{i.dispose(),a.dispose(),n(sR)})})}async notifyDocumentPhase(e,t,r){const n=this.documentPhaseListeners.get(t).slice();for(const t of n)try{await lR(r),await t(e,r)}catch(e){if(!oR(e))throw e}}async notifyBuildPhase(e,t,r){if(0===e.length)return;const n=this.buildPhaseListeners.get(t).slice();for(const t of n)await lR(r),await t(e,r)}shouldLink(e){return this.getBuildOptions(e).eagerLinking??!0}shouldValidate(e){return Boolean(this.getBuildOptions(e).validation)}async validate(e,t){const r=this.serviceRegistry.getServices(e.uri).validation.DocumentValidator,n=this.getBuildOptions(e),i="object"==typeof n.validation?{...n.validation}:{};i.categories=this.findMissingValidationCategories(e,n);const a=await r.validateDocument(e,i,t);e.diagnostics?e.diagnostics.push(...a):e.diagnostics=a;const s=this.buildState.get(e.uri.toString());s&&(s.result??(s.result={}),s.result.validationChecks?s.result.validationChecks=er(s.result.validationChecks).concat(i.categories).distinct().toArray():s.result.validationChecks=[...i.categories])}getBuildOptions(e){return this.buildState.get(e.uri.toString())?.options??{}}},d$=class{static{Ue(this,"DefaultIndexManager")}constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new KR,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,t){const r=ar(e).uri,n=[];return this.referenceIndex.forEach(e=>{e.forEach(e=>{TR.equals(e.targetUri,r)&&e.targetPath===t&&n.push(e)})}),er(n)}allElements(e,t){let r=er(this.symbolIndex.keys());return t&&(r=r.filter(e=>!t||t.has(e))),r.map(t=>this.getFileDescriptions(t,e)).flat()}getFileDescriptions(e,t){if(!t)return this.symbolIndex.get(e)??[];return this.symbolByTypeIndex.get(e,t,()=>(this.symbolIndex.get(e)??[]).filter(e=>this.astReflection.isSubtype(e.type,t)))}remove(e){this.removeContent(e),this.removeReferences(e)}removeContent(e){const t=e.toString();this.symbolIndex.delete(t),this.symbolByTypeIndex.clear(t)}removeReferences(e){const t=e.toString();this.referenceIndex.delete(t)}async updateContent(e,t=rR.CancellationToken.None){const r=this.serviceRegistry.getServices(e.uri),n=await r.references.ScopeComputation.collectExportedSymbols(e,t),i=e.uri.toString();this.symbolIndex.set(i,n),this.symbolByTypeIndex.clear(i)}async updateReferences(e,t=rR.CancellationToken.None){const r=this.serviceRegistry.getServices(e.uri),n=await r.workspace.ReferenceDescriptionProvider.createDescriptions(e,t);this.referenceIndex.set(e.uri.toString(),n)}isAffected(e,t){const r=this.referenceIndex.get(e.uri.toString());return!!r&&r.some(e=>!e.local&&t.has(e.targetUri.toString()))}},f$=class{static{Ue(this,"DefaultWorkspaceManager")}constructor(e){this.initialBuildOptions={},this._ready=new pR,this.serviceRegistry=e.ServiceRegistry,this.langiumDocuments=e.workspace.LangiumDocuments,this.documentBuilder=e.workspace.DocumentBuilder,this.fileSystemProvider=e.workspace.FileSystemProvider,this.mutex=e.workspace.WorkspaceLock}get ready(){return this._ready.promise}get workspaceFolders(){return this.folders}initialize(e){this.folders=e.workspaceFolders??void 0}initialized(e){return this.mutex.write(e=>this.initializeWorkspace(this.folders??[],e))}async initializeWorkspace(e,t=rR.CancellationToken.None){const r=await this.performStartup(e);await lR(t),await this.documentBuilder.build(r,this.initialBuildOptions,t)}async performStartup(e){const t=[],r=Ue(e=>{t.push(e),this.langiumDocuments.hasDocument(e.uri)||this.langiumDocuments.addDocument(e)},"collector");await this.loadAdditionalDocuments(e,r);const n=[];await Promise.all(e.map(e=>this.getRootFolder(e)).map(async e=>this.traverseFolder(e,n)));const i=er(n).distinct(e=>e.toString()).filter(e=>!this.langiumDocuments.hasDocument(e));return await this.loadWorkspaceDocuments(i,r),this._ready.resolve(),t}async loadWorkspaceDocuments(e,t){await Promise.all(e.map(async e=>{const r=await this.langiumDocuments.getOrCreateDocument(e);t(r)}))}loadAdditionalDocuments(e,t){return Promise.resolve()}getRootFolder(e){return vR.parse(e.uri)}async traverseFolder(e,t){try{const r=await this.fileSystemProvider.readDirectory(e);await Promise.all(r.map(async e=>{this.shouldIncludeEntry(e)&&(e.isDirectory?await this.traverseFolder(e.uri,t):e.isFile&&t.push(e.uri))}))}catch(t){console.error("Failure to read directory content of "+e.toString(!0),t)}}async searchFolder(e){const t=[];return await this.traverseFolder(e,t),t}shouldIncludeEntry(e){const t=TR.basename(e.uri);return!t.startsWith(".")&&(e.isDirectory?"node_modules"!==t&&"out"!==t:!!e.isFile&&this.serviceRegistry.hasServices(e.uri))}},m$=class{static{Ue(this,"DefaultLexerErrorMessageProvider")}buildUnexpectedCharactersMessage(e,t,r,n,i){return Au.buildUnexpectedCharactersMessage(e,t,r,n,i)}buildUnableToPopLexerModeMessage(e){return Au.buildUnableToPopLexerModeMessage(e)}},h$={mode:"full"},y$=class{static{Ue(this,"DefaultLexer")}constructor(e){this.errorMessageProvider=e.parser.LexerErrorMessageProvider,this.tokenBuilder=e.parser.TokenBuilder;const t=this.tokenBuilder.buildTokens(e.Grammar,{caseInsensitive:e.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(t);const r=v$(t)?Object.values(t):t,n="production"===e.LanguageMetaData.mode;this.chevrotainLexer=new xu(r,{positionTracking:"full",skipValidations:n,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(e,t=h$){const r=this.chevrotainLexer.tokenize(e);return{tokens:r.tokens,errors:r.errors,hidden:r.groups.hidden??[],report:this.tokenBuilder.flushLexingReport?.(e)}}toTokenTypeDictionary(e){if(v$(e))return e;const t=T$(e)?Object.values(e.modes).flat():e,r={};return t.forEach(e=>r[e.name]=e),r}};function g$(e){return Array.isArray(e)&&(0===e.length||"name"in e[0])}function T$(e){return e&&"modes"in e&&"defaultMode"in e}function v$(e){return!g$(e)&&!T$(e)}function R$(e,t,r){let n,i;"string"==typeof e?(i=t,n=r):(i=e.range.start,n=t),i||(i=o.create(0,0));return N$({index:0,tokens:A$({lines:C$(e),position:i,options:j$(n)}),position:i})}function $$(e,t){const r=j$(t),n=C$(e);if(0===n.length)return!1;const i=n[0],a=n[n.length-1],s=r.start,o=r.end;return Boolean(s?.exec(i))&&Boolean(o?.exec(a))}function C$(e){let t="";t="string"==typeof e?e:e.text;return t.split(qs)}Ue(g$,"isTokenTypeArray"),Ue(T$,"isIMultiModeLexerDefinition"),Ue(v$,"isTokenTypeDictionary"),dt(),Ue(R$,"parseJSDoc"),Ue($$,"isJSDoc"),Ue(C$,"getLines");var E$=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,b$=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;function A$(e){const t=[];let r=e.position.line,n=e.position.character;for(let i=0;i<e.lines.length;i++){const a=0===i,s=i===e.lines.length-1;let u=e.lines[i],c=0;if(a&&e.options.start){const t=e.options.start?.exec(u);t&&(c=t.index+t[0].length)}else{const t=e.options.line?.exec(u);t&&(c=t.index+t[0].length)}if(s){const t=e.options.end?.exec(u);t&&(u=u.substring(0,t.index))}u=u.substring(0,_$(u));if(w$(u,c)>=u.length){if(t.length>0){const e=o.create(r,n);t.push({type:"break",content:"",range:l.create(e,e)})}}else{E$.lastIndex=c;const e=E$.exec(u);if(e){const i=e[0],a=e[1],s=o.create(r,n+c),p=o.create(r,n+c+i.length);t.push({type:"tag",content:a,range:l.create(s,p)}),c+=i.length,c=w$(u,c)}if(c<u.length){const e=u.substring(c),i=Array.from(e.matchAll(b$));t.push(...S$(i,e,r,n+c))}}r++,n=0}return t.length>0&&"break"===t[t.length-1].type?t.slice(0,-1):t}function S$(e,t,r,n){const i=[];if(0===e.length){const e=o.create(r,n),a=o.create(r,n+t.length);i.push({type:"text",content:t,range:l.create(e,a)})}else{let a=0;for(const s of e){const e=s.index,u=t.substring(a,e);u.length>0&&i.push({type:"text",content:t.substring(a,e),range:l.create(o.create(r,a+n),o.create(r,e+n))});let c=u.length+1;const p=s[1];if(i.push({type:"inline-tag",content:p,range:l.create(o.create(r,a+c+n),o.create(r,a+c+p.length+n))}),c+=p.length,4===s.length){c+=s[2].length;const e=s[3];i.push({type:"text",content:e,range:l.create(o.create(r,a+c+n),o.create(r,a+c+e.length+n))})}else i.push({type:"text",content:"",range:l.create(o.create(r,a+c+n),o.create(r,a+c+n))});a=e+s[0].length}const s=t.substring(a);s.length>0&&i.push({type:"text",content:s,range:l.create(o.create(r,a+n),o.create(r,a+n+s.length))})}return i}Ue(A$,"tokenize"),Ue(S$,"buildInlineTokens");var x$=/\S/,k$=/\s*$/;function w$(e,t){const r=e.substring(t).match(x$);return r?t+r.index:e.length}function _$(e){const t=e.match(k$);if(t&&"number"==typeof t.index)return t.index}function N$(e){const t=o.create(e.position.line,e.position.character);if(0===e.tokens.length)return new K$([],l.create(t,t));const r=[];for(;e.index<e.tokens.length;){const t=I$(e,r[r.length-1]);t&&r.push(t)}const n=r[0]?.range.start??t,i=r[r.length-1]?.range.end??t;return new K$(r,l.create(n,i))}function I$(e,t){const r=e.tokens[e.index];return"tag"===r.type?L$(e,!1):"text"===r.type||"inline-tag"===r.type?P$(e):(O$(r,t),void e.index++)}function O$(e,t){if(t){const r=new B$("",e.range);"inlines"in t?t.inlines.push(r):t.content.inlines.push(r)}}function P$(e){let t=e.tokens[e.index];const r=t;let n=t;const i=[];for(;t&&"break"!==t.type&&"tag"!==t.type;)i.push(D$(e)),n=t,t=e.tokens[e.index];return new U$(i,l.create(r.range.start,n.range.end))}function D$(e){return"inline-tag"===e.tokens[e.index].type?L$(e,!0):M$(e)}function L$(e,t){const r=e.tokens[e.index++],n=r.content.substring(1),i=e.tokens[e.index];if("text"===i?.type){if(t){const i=M$(e);return new G$(n,new U$([i],i.range),t,l.create(r.range.start,i.range.end))}{const i=P$(e);return new G$(n,i,t,l.create(r.range.start,i.range.end))}}{const e=r.range;return new G$(n,new U$([],e),t,e)}}function M$(e){const t=e.tokens[e.index++];return new B$(t.content,t.range)}function j$(e){if(!e)return j$({start:"/**",end:"*/",line:"*"});const{start:t,end:r,line:n}=e;return{start:F$(t,!0),end:F$(r,!1),line:F$(n,!0)}}function F$(e,t){if("string"==typeof e||"object"==typeof e){const r="string"==typeof e?Xs(e):e.source;return t?new RegExp(`^\\s*${r}`):new RegExp(`\\s*${r}\\s*$`)}return e}Ue(w$,"skipWhitespace"),Ue(_$,"lastCharacter"),Ue(N$,"parseJSDocComment"),Ue(I$,"parseJSDocElement"),Ue(O$,"appendEmptyLine"),Ue(P$,"parseJSDocText"),Ue(D$,"parseJSDocInline"),Ue(L$,"parseJSDocTag"),Ue(M$,"parseJSDocLine"),Ue(j$,"normalizeOptions"),Ue(F$,"normalizeOption");var K$=class{static{Ue(this,"JSDocCommentImpl")}constructor(e,t){this.elements=e,this.range=t}getTag(e){return this.getAllTags().find(t=>t.name===e)}getTags(e){return this.getAllTags().filter(t=>t.name===e)}getAllTags(){return this.elements.filter(e=>"name"in e)}toString(){let e="";for(const t of this.elements)if(0===e.length)e=t.toString();else{const r=t.toString();e+=V$(e)+r}return e.trim()}toMarkdown(e){let t="";for(const r of this.elements)if(0===t.length)t=r.toMarkdown(e);else{const n=r.toMarkdown(e);t+=V$(t)+n}return t.trim()}},G$=class{static{Ue(this,"JSDocTagImpl")}constructor(e,t,r,n){this.name=e,this.content=t,this.inline=r,this.range=n}toString(){let e=`@${this.name}`;const t=this.content.toString();return 1===this.content.inlines.length?e=`${e} ${t}`:this.content.inlines.length>1&&(e=`${e}\n${t}`),this.inline?`{${e}}`:e}toMarkdown(e){return e?.renderTag?.(this)??this.toMarkdownDefault(e)}toMarkdownDefault(e){const t=this.content.toMarkdown(e);if(this.inline){const r=z$(this.name,t,e??{});if("string"==typeof r)return r}let r="";"italic"===e?.tag||void 0===e?.tag?r="*":"bold"===e?.tag?r="**":"bold-italic"===e?.tag&&(r="***");let n=`${r}@${this.name}${r}`;return 1===this.content.inlines.length?n=`${n} — ${t}`:this.content.inlines.length>1&&(n=`${n}\n${t}`),this.inline?`{${n}}`:n}};function z$(e,t,r){if("linkplain"===e||"linkcode"===e||"link"===e){const n=t.indexOf(" ");let i=t;if(n>0){const e=w$(t,n);i=t.substring(e),t=t.substring(0,n)}("linkcode"===e||"link"===e&&"code"===r.link)&&(i=`\`${i}\``);return r.renderLink?.(t,i)??q$(t,i)}}function q$(e,t){try{return vR.parse(e,!0),`[${t}](${e})`}catch{return e}}Ue(z$,"renderInlineTag"),Ue(q$,"renderLinkDefault");var U$=class{static{Ue(this,"JSDocTextImpl")}constructor(e,t){this.inlines=e,this.range=t}toString(){let e="";for(let t=0;t<this.inlines.length;t++){const r=this.inlines[t],n=this.inlines[t+1];e+=r.toString(),n&&n.range.start.line>r.range.start.line&&(e+="\n")}return e}toMarkdown(e){let t="";for(let r=0;r<this.inlines.length;r++){const n=this.inlines[r],i=this.inlines[r+1];t+=n.toMarkdown(e),i&&i.range.start.line>n.range.start.line&&(t+="\n")}return t}},B$=class{static{Ue(this,"JSDocLineImpl")}constructor(e,t){this.text=e,this.range=t}toString(){return this.text}toMarkdown(){return this.text}};function V$(e){return e.endsWith("\n")?"\n":"\n\n"}Ue(V$,"fillNewlines");var W$,H$,Y$=class{static{Ue(this,"JSDocDocumentationProvider")}constructor(e){this.indexManager=e.shared.workspace.IndexManager,this.commentProvider=e.documentation.CommentProvider}getDocumentation(e){const t=this.commentProvider.getComment(e);if(t&&$$(t)){return R$(t).toMarkdown({renderLink:Ue((t,r)=>this.documentationLinkRenderer(e,t,r),"renderLink"),renderTag:Ue(t=>this.documentationTagRenderer(e,t),"renderTag")})}}documentationLinkRenderer(e,t,r){const n=this.findNameInLocalSymbols(e,t)??this.findNameInGlobalScope(e,t);if(n&&n.nameSegment){const e=n.nameSegment.range.start.line+1,t=n.nameSegment.range.start.character+1;return`[${r}](${n.documentUri.with({fragment:`L${e},${t}`}).toString()})`}}documentationTagRenderer(e,t){}findNameInLocalSymbols(e,t){const r=ar(e).localSymbols;if(!r)return;let n=e;do{const e=r.getStream(n).find(e=>e.name===t);if(e)return e;n=n.$container}while(n)}findNameInGlobalScope(e,t){return this.indexManager.allElements().find(e=>e.name===t)}},X$=class{static{Ue(this,"DefaultCommentProvider")}constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){return qR(e)?e.$comment:bs(e.$cstNode,this.grammarConfig().multilineCommentRules)?.text}},Q$=class{static{Ue(this,"DefaultAsyncParser")}constructor(e){this.syncParser=e.parser.LangiumParser}parse(e,t){return Promise.resolve(this.syncParser.parse(e))}};(H$=W$||(W$={}))[H$.Normal=0]="Normal",H$[H$.Immediate=1]="Immediate";var Z$,J$=class{static{Ue(this,"DefaultWorkspaceLock")}constructor(){this.previousTokenSource=new rR.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.immediateReads=[],this.done=!0}write(e){this.cancelWrite();const t=aR();return this.previousTokenSource=t,this.enqueue(this.writeQueue,e,t.token)}read(e,t=W$.Normal){if(t===W$.Immediate){const t=Promise.resolve().then(()=>e());this.immediateReads.push(t);const r=Ue(()=>{this.immediateReads.splice(this.immediateReads.indexOf(t),1)},"remove");return t.then(r,r),t}return this.enqueue(this.readQueue,e)}enqueue(e,t,r=rR.CancellationToken.None){const n=new pR,i={action:t,deferred:n,cancellationToken:r};return e.push(i),this.performNextOperation(),n.promise}async performNextOperation(){if(!this.done)return;const e=[];if(this.writeQueue.length>0)for(e.push(this.writeQueue.shift()),this.done=!1;this.immediateReads.length>0;)await Promise.allSettled(this.immediateReads.slice());else{if(!(this.readQueue.length>0))return;e.push(...this.readQueue.splice(0,this.readQueue.length)),this.done=!1}await Promise.all(e.map(async({action:e,deferred:t,cancellationToken:r})=>{try{const n=await Promise.resolve().then(()=>e(r));t.resolve(n)}catch(e){oR(e)?t.resolve(void 0):t.reject(e)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}},eC=class{static{Ue(this,"DefaultHydrator")}constructor(e){this.grammarElementIdMap=new PR,this.tokenTypeIdMap=new PR,this.cstNodeBuilder=new hv,this.grammar=e.Grammar,this.lexer=e.parser.Lexer,this.linker=e.references.Linker}dehydrate(e){return{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport?this.dehydrateLexerReport(e.lexerReport):void 0,parserErrors:e.parserErrors.map(e=>({...e,message:e.message})),value:this.dehydrateAstNode(e.value,this.createDehyrationContext(e.value))}}dehydrateLexerReport(e){return e}createDehyrationContext(e){const t=new Map,r=new Map;for(const r of cr(e))t.set(r,{});if(e.$cstNode)for(const t of ys(e.$cstNode))r.set(t,{});return{astNodes:t,cstNodes:r}}dehydrateAstNode(e,t){const r=t.astNodes.get(e);r.$type=e.$type,r.$containerIndex=e.$containerIndex,r.$containerProperty=e.$containerProperty,void 0!==e.$cstNode&&(r.$cstNode=this.dehydrateCstNode(e.$cstNode,t));for(const[n,i]of Object.entries(e))if(!n.startsWith("$"))if(Array.isArray(i)){const e=[];r[n]=e;for(const r of i)Kt(r)?e.push(this.dehydrateAstNode(r,t)):Gt(r)?e.push(this.dehydrateReference(r,t)):e.push(r)}else Kt(i)?r[n]=this.dehydrateAstNode(i,t):Gt(i)?r[n]=this.dehydrateReference(i,t):void 0!==i&&(r[n]=i);return r}dehydrateReference(e,t){const r={};return r.$refText=e.$refText,e.$refNode&&(r.$refNode=t.cstNodes.get(e.$refNode)),r}dehydrateCstNode(e,t){const r=t.cstNodes.get(e);if(Ht(e)?r.fullText=e.fullText:r.grammarSource=this.getGrammarElementId(e.grammarSource),r.hidden=e.hidden,Vt(e))r.content=e.content.map(e=>this.dehydrateCstNode(e,t));else if(Wt(e)){r.tokenType=e.tokenType.name,r.offset=e.offset,r.length=e.length;const{start:t,end:n}=e.range;r.startLine=t.line,r.startColumn=t.character,r.endLine=n.line,r.endColumn=n.character}return r}hydrate(e){const t=e.value,r=this.createHydrationContext(t);return"$cstNode"in t&&this.hydrateCstNode(t.$cstNode,r),{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport,parserErrors:e.parserErrors,value:this.hydrateAstNode(t,r)}}createHydrationContext(e){const t=new Map,r=new Map;for(const r of cr(e))t.set(r,{});if(e.$cstNode)for(const t of ys(e.$cstNode)){let e;"fullText"in t?e=new Rv(t.fullText):"content"in t?e=new vv:"tokenType"in t&&(e=this.hydrateCstLeafNode(t)),e&&r.set(t,e)}return{astNodes:t,cstNodes:r,linkedCstNodes:new Set}}hydrateAstNode(e,t){const r=t.astNodes.get(e);if(r.$type=e.$type,r.$containerIndex=e.$containerIndex,r.$containerProperty=e.$containerProperty,e.$cstNode){const n=t.cstNodes.get(e.$cstNode);r.$cstNode=n,n&&!t.linkedCstNodes.has(n)&&(t.linkedCstNodes.add(n),n.astNode=r)}for(const[n,i]of Object.entries(e))if(!n.startsWith("$"))if(Array.isArray(i)){const e=[];r[n]=e;for(const a of i)Kt(a)?e.push(this.setParent(this.hydrateAstNode(a,t),r)):Gt(a)?e.push(this.hydrateReference(a,r,n,t)):e.push(a)}else Kt(i)?r[n]=this.setParent(this.hydrateAstNode(i,t),r):Gt(i)?r[n]=this.hydrateReference(i,r,n,t):void 0!==i&&(r[n]=i);return r}setParent(e,t){return e.$container=t,e}hydrateReference(e,t,r,n){return this.linker.buildReference(t,r,n.cstNodes.get(e.$refNode),e.$refText)}hydrateCstNode(e,t,r=0){const n=t.cstNodes.get(e);if("number"==typeof e.grammarSource&&(n.grammarSource=this.getGrammarElement(e.grammarSource)),Vt(n)){const i=[];for(const n of e.content)i.push(this.hydrateCstNode(n,t,r++));this.cstNodeBuilder.appendChildren(n,i)}return n}hydrateCstLeafNode(e){const t=this.getTokenType(e.tokenType);return new gv(e.offset,e.length,e.startLine,e.startColumn,e.endLine,e.endColumn,t,e.hidden)}getTokenType(e){return this.lexer.definition[e]}getGrammarElementId(e){if(e)return 0===this.grammarElementIdMap.size&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(e)}getGrammarElement(e){0===this.grammarElementIdMap.size&&this.createGrammarElementIdMap();return this.grammarElementIdMap.getKey(e)}createGrammarElementIdMap(){let e=0;for(const t of cr(this.grammar))gr(t)&&this.grammarElementIdMap.set(t,e++)}};function tC(e){return{documentation:{CommentProvider:Ue(e=>new X$(e),"CommentProvider"),DocumentationProvider:Ue(e=>new Y$(e),"DocumentationProvider")},parser:{AsyncParser:Ue(e=>new Q$(e),"AsyncParser"),GrammarConfig:Ue(e=>_o(e),"GrammarConfig"),LangiumParser:Ue(e=>Qv(e),"LangiumParser"),CompletionParser:Ue(e=>Xv(e),"CompletionParser"),ValueConverter:Ue(()=>new tR,"ValueConverter"),TokenBuilder:Ue(()=>new eR,"TokenBuilder"),Lexer:Ue(e=>new y$(e),"Lexer"),ParserErrorMessageProvider:Ue(()=>new xv,"ParserErrorMessageProvider"),LexerErrorMessageProvider:Ue(()=>new m$,"LexerErrorMessageProvider")},workspace:{AstNodeLocator:Ue(()=>new o$,"AstNodeLocator"),AstNodeDescriptionProvider:Ue(e=>new a$(e),"AstNodeDescriptionProvider"),ReferenceDescriptionProvider:Ue(e=>new s$(e),"ReferenceDescriptionProvider")},references:{Linker:Ue(e=>new wR(e),"Linker"),NameProvider:Ue(()=>new NR,"NameProvider"),ScopeProvider:Ue(e=>new zR(e),"ScopeProvider"),ScopeComputation:Ue(e=>new DR(e),"ScopeComputation"),References:Ue(e=>new IR(e),"References")},serializer:{Hydrator:Ue(e=>new eC(e),"Hydrator"),JsonSerializer:Ue(e=>new WR(e),"JsonSerializer")},validation:{DocumentValidator:Ue(e=>new e$(e),"DocumentValidator"),ValidationRegistry:Ue(e=>new ZR(e),"ValidationRegistry")},shared:Ue(()=>e.shared,"shared")}}function rC(e){return{ServiceRegistry:Ue(e=>new HR(e),"ServiceRegistry"),workspace:{LangiumDocuments:Ue(e=>new AR(e),"LangiumDocuments"),LangiumDocumentFactory:Ue(e=>new bR(e),"LangiumDocumentFactory"),DocumentBuilder:Ue(e=>new p$(e),"DocumentBuilder"),IndexManager:Ue(e=>new d$(e),"IndexManager"),WorkspaceManager:Ue(e=>new f$(e),"WorkspaceManager"),FileSystemProvider:Ue(t=>e.fileSystemProvider(t),"FileSystemProvider"),WorkspaceLock:Ue(()=>new J$,"WorkspaceLock"),ConfigurationProvider:Ue(e=>new u$(e),"ConfigurationProvider")},profilers:{}}}function nC(e,t,r,n,i,a,s,o,l){return aC([e,t,r,n,i,a,s,o,l].reduce(lC,{}))}Ue(tC,"createDefaultCoreModule"),Ue(rC,"createDefaultSharedCoreModule"),(Z$||(Z$={})).merge=(e,t)=>lC(lC({},e),t),Ue(nC,"inject");var iC=Symbol("isProxy");function aC(e,t){const r=new Proxy({},{deleteProperty:Ue(()=>!1,"deleteProperty"),set:Ue(()=>{throw new Error("Cannot set property on injected service container")},"set"),get:Ue((n,i)=>i===iC||oC(n,i,e,t||r),"get"),getOwnPropertyDescriptor:Ue((n,i)=>(oC(n,i,e,t||r),Object.getOwnPropertyDescriptor(n,i)),"getOwnPropertyDescriptor"),has:Ue((t,r)=>r in e,"has"),ownKeys:Ue(()=>[...Object.getOwnPropertyNames(e)],"ownKeys")});return r}Ue(aC,"_inject");var sC=Symbol();function oC(e,t,r,n){if(t in e){if(e[t]instanceof Error)throw new Error("Construction failure. Please make sure that your dependencies are constructable. Cause: "+e[t]);if(e[t]===sC)throw new Error('Cycle detected. Please make "'+String(t)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return e[t]}if(t in r){const i=r[t];e[t]=sC;try{e[t]="function"==typeof i?i(n):aC(i,n)}catch(r){throw e[t]=r instanceof Error?r:void 0,r}return e[t]}}function lC(e,t){if(t)for(const[r,n]of Object.entries(t))if("__proto__"!==r&&"constructor"!==r&&"prototype"!==r&&null!=n)if("object"==typeof n){const t=e[r];e[r]=lC("object"==typeof t&&null!==t?t:{},n)}else e[r]=n;return e}Ue(oC,"_resolve"),Ue(lC,"_merge");var uC,cC,pC,dC,fC,mC,hC,yC,gC,TC,vC,RC,$C,CC,EC,bC=class{static{Ue(this,"EmptyFileSystemProvider")}stat(e){throw new Error("No file system is available.")}statSync(e){throw new Error("No file system is available.")}async exists(){return!1}existsSync(){return!1}readBinary(){throw new Error("No file system is available.")}readBinarySync(){throw new Error("No file system is available.")}readFile(){throw new Error("No file system is available.")}readFileSync(){throw new Error("No file system is available.")}async readDirectory(){return[]}readDirectorySync(){return[]}},AC={fileSystemProvider:Ue(()=>new bC,"fileSystemProvider")},SC={Grammar:Ue(()=>{},"Grammar"),LanguageMetaData:Ue(()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"}),"LanguageMetaData")},xC={AstReflection:Ue(()=>new ms,"AstReflection")};function kC(){const e=nC(rC(AC),xC),t=nC(tC({shared:e}),SC);return e.ServiceRegistry.register(t),t}function wC(e){const t=kC(),r=t.serializer.JsonSerializer.deserialize(e);return t.shared.workspace.LangiumDocumentFactory.fromModel(r,vR.parse(`memory:/${r.name??"grammar"}.langium`)),r}Ue(kC,"createMinimalGrammarServices"),Ue(wC,"loadGrammarFromJson"),(uC||(uC={})).Terminals={ARROW_DIRECTION:/L|R|T|B/,ARROW_GROUP:/\{group\}/,ARROW_INTO:/<|>/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,ARCH_ICON:/\([\w-:]+\)/,ARCH_TITLE:/\[(?:"([^"\\]|\\.)*"|'([^'\\]|\\.)*'|[^\[\]\r\n]+)\]/},(cC||(cC={})).Terminals={DOMAIN_NAME:/complex|complicated|clear|chaotic|confusion/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},(pC||(pC={})).Terminals={EM_ID:/[_a-zA-Z][\w_]*/,EM_FID:/\d{1,3}/,EM_DATA_INLINE:/\{(.*)\}|"(.*)"|'(.*)'/,EM_DATA_BLOCK:/\{[\t ]*\r?\n(?:[\S\s]*?\r?\n)?\}(?:\r?\n|(?!\S))/,EM_ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,EM_ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,EM_TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,EM_WS:/\s+/,EM_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,EM_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,EM_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,EM_ML_COMMENT:/\/\*[\s\S]*?\*\//,EM_SL_COMMENT:/\/\/[^\n\r]*/},(dC||(dC={})).Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,REFERENCE:/\w([-\./\w]*[-\w])?/},(fC||(fC={})).Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},(mC||(mC={})).Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},(hC||(hC={})).Terminals={NUMBER_PIE:/(?:-?[0-9]+\.[0-9]+(?!\.))|(?:-?(0|[1-9][0-9]*)(?!\.))/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},(yC||(yC={})).Terminals={GRATICULE:/circle|polygon/,BOOLEAN:/true|false/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NUMBER:/(?:[0-9]+\.[0-9]+(?!\.))|(?:0|[1-9][0-9]*(?!\.))/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/},(gC||(gC={})).Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ABNF_RULENAME:/[A-Za-z][A-Za-z0-9-]*/,ABNF_STRING:/"[^"]*"/,ABNF_NUMVAL:/%[xXdDbB][0-9A-Fa-f]+(?:-[0-9A-Fa-f]+|\.[0-9A-Fa-f]+)*/,ABNF_REPEAT:/[0-9]*\*[0-9]*/,ABNF_EXACT_REPEAT:/[0-9]+/,ABNF_WHITESPACE:/[\t \r\n]+/,ABNF_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,ABNF_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,ABNF_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,ABNF_COMMENT:/;[^\n\r]*/},(TC||(TC={})).Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,EBNF_ID:/[A-Z_a-z][\w-]*/,EBNF_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,EBNF_SPECIAL_SEQUENCE:/\?(?=[^?;]*[^?\s;][^?;]*\?)[^?;]*\?/,EBNF_WHITESPACE:/[\t \r\n]+/,EBNF_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,EBNF_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,EBNF_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,EBNF_BLOCK_COMMENT:/\/\*[\s\S]*?\*\//,EBNF_ISO_COMMENT:/\(\*[\s\S]*?\*\)/},(vC||(vC={})).Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,RR_ID:/[A-Z_a-z][\w-]*/,RR_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,RR_WHITESPACE:/[\t \r\n]+/,RR_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,RR_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,RR_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,RR_BLOCK_COMMENT:/\/\*[\s\S]*?\*\//},(RC||(RC={})).Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,PEG_ID:/[A-Z_a-z][\w-]*/,PEG_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,PEG_WHITESPACE:/[\t \r\n]+/,PEG_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,PEG_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,PEG_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,PEG_LINE_COMMENT:/#[^\n\r]*/},($C||($C={})).Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,TREEMAP_KEYWORD:/treemap-beta|treemap/,CLASS_DEF:/classDef\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\s+([^;\r\n]*))?(?:;)?/,STYLE_SEPARATOR:/:::/,SEPARATOR:/:/,COMMA:/,/,INDENTATION:/[ \t]{1,}/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,ID2:/[a-zA-Z_][a-zA-Z0-9_]*/,NUMBER2:/[0-9_\.\,]+/,STRING2:/"[^"]*"|'[^']*'/},(CC||(CC={})).Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,CLASS_ANNOTATION:/[ \t]+:::[ \t]*[A-Za-z_][\w-]*/,ICON_ANNOTATION:/[ \t]+icon\([\w-]*(?::[\w-]+)?\)/,DESC_ANNOTATION:/[ \t]+##[^\n\r]*/,INDENTATION:/[ \t]{1,}/,QUOTED_NAME:/"[^"]*"|'[^']*'/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,BARE_NAME:/(?!:::|icon\(|##)[^ \t\n\r"'](?:(?![ \t]+:::[ \t]*[A-Za-z_]|[ \t]+icon\(|[ \t]+##)[^\n\r])*/},(EC||(EC={})).Terminals={WARDLEY_NUMBER:/[0-9]+\.[0-9]+/,ARROW:/->/,LINK_PORT:/\+<>|\+>|\+</,LINK_ARROW:/-->|-\.->|>|\+'[^']*'<>|\+'[^']*'<|\+'[^']*'>/,LINK_LABEL:/;[^\n\r]+/,STRATEGY:/build|buy|outsource|market/,KW_WARDLEY:/wardley-beta/,KW_SIZE:/size/,KW_EVOLUTION:/evolution/,KW_ANCHOR:/anchor/,KW_COMPONENT:/component/,KW_LABEL:/label/,KW_INERTIA:/inertia/,KW_EVOLVE:/evolve/,KW_PIPELINE:/pipeline/,KW_NOTE:/note/,KW_ANNOTATIONS:/annotations/,KW_ANNOTATION:/annotation/,KW_ACCELERATOR:/accelerator/,KW_DEACCELERATOR:/deaccelerator/,NAME_WITH_SPACES:/(?!title\s|accTitle|accDescr)[A-Za-z](?:[A-Za-z0-9_()&]|-(?!>))*(?:[ \t]+[A-Za-z(](?:[A-Za-z0-9_()&]|-(?!>))*)*/,WS:/[ \t]+/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/};uC.Terminals,cC.Terminals,pC.Terminals,dC.Terminals,fC.Terminals,mC.Terminals,hC.Terminals,yC.Terminals,gC.Terminals,TC.Terminals,vC.Terminals,RC.Terminals,CC.Terminals,$C.Terminals,EC.Terminals;var _C="AbnfAlternation",NC="alternatives",IC="AbnfConcatenation",OC="elements",PC="AbnfElement",DC="primary",LC="repeat",MC="AbnfGroup",jC="element",FC="AbnfNumVal",KC="value",GC="AbnfOptionalGroup",zC="element",qC="AbnfPrimary",UC="AbnfRule",BC="definition",VC="name",WC="AbnfRuleName",HC="name",YC="AbnfStringLiteral",XC="value",QC="Accelerator",ZC="name",JC="x",eE="y",tE="Alignment",rE="direction",nE="members",iE="Anchor",aE="evolution",sE="name",oE="visibility",lE="Annotation",uE="number",cE="text",pE="x",dE="y",fE="Annotations",mE="x",hE="y",yE="Architecture",gE="accDescr",TE="accTitle",vE="alignments",RE="edges",$E="groups",CE="junctions",EE="services",bE="title";Ue(function(e){return m_.isInstance(e,yE)},"isArchitecture");var AE="Axis",SE="label",xE="name",kE="Branch",wE="name",_E="order";Ue(function(e){return m_.isInstance(e,kE)},"isBranch");var NE="Checkout",IE="branch",OE="CherryPicking",PE="id",DE="parent",LE="tags",ME="ClassDefStatement",jE="className",FE="styleText",KE="Commit",GE="id",zE="message",qE="tags",UE="type";Ue(function(e){return m_.isInstance(e,KE)},"isCommit");var BE="Common",VE="accDescr",WE="accTitle",HE="title",YE="Component",XE="decorator",QE="evolution",ZE="inertia",JE="label",eb="name",tb="visibility",rb="Curve",nb="entries",ib="label",ab="name",sb="Cynefin",ob="accDescr",lb="accTitle",ub="domains",cb="title",pb="transitions";Ue(function(e){return m_.isInstance(e,sb)},"isCynefin");var db="Deaccelerator",fb="name",mb="x",hb="y",yb="Decorator",gb="strategy",Tb="Direction",vb="accDescr",Rb="accTitle",$b="dir",Cb="statements",Eb="title",bb="DomainBlock",Ab="domain",Sb="items";Ue(function(e){return m_.isInstance(e,bb)},"isDomainBlock");var xb="DomainItem",kb="label";Ue(function(e){return m_.isInstance(e,xb)},"isDomainItem");var wb="EbnfChoice",_b="alternatives",Nb="EbnfExceptionPostfix",Ib="except",Ob="EbnfGroup",Pb="element",Db="EbnfNonTerminal",Lb="name",Mb="EbnfOneOrMorePostfix",jb="operator",Fb="EbnfOptional",Kb="element",Gb="EbnfOptionalPostfix",zb="operator",qb="EbnfPostfix",Ub="EbnfPrimary",Bb="EbnfRepetition",Vb="element",Wb="EbnfRule",Hb="definition",Yb="name",Xb="EbnfSequence",Qb="elements",Zb="EbnfSpecial",Jb="text",eA="EbnfTerm",tA="base",rA="postfixes",nA="EbnfTerminal",iA="value",aA="EbnfZeroOrMorePostfix",sA="operator",oA="Edge",lA="lhsDir",uA="lhsGroup",cA="lhsId",pA="lhsInto",dA="rhsDir",fA="rhsGroup",mA="rhsId",hA="rhsInto",yA="title",gA="EmDataEntity",TA="dataBlockValue",vA="dataType",RA="name",$A="EmFrame",CA="EmGwt",EA="givenStatements",bA="sourceFrame",AA="thenStatements",SA="whenStatements",xA="EmGwtStatement",kA="entityIdentifier",wA="EmModelEntity",_A="name";Ue(function(e){return"rmo"===e||"readmodel"===e||"ui"===e||"cmd"===e||"command"===e||"evt"===e||"event"===e||"pcr"===e||"processor"===e},"isEmModelEntityType");var NA="EmNoteEntity",IA="dataBlockValue",OA="dataType",PA="sourceFrame",DA="EmResetFrame",LA="dataInlineValue",MA="dataReference",jA="dataType",FA="entityIdentifier",KA="modelEntityType",GA="name",zA="sourceFrames";function qA(e){return m_.isInstance(e,DA)}Ue(qA,"isEmResetFrame");var UA="EmTimeFrame",BA="dataInlineValue",VA="dataReference",WA="dataType",HA="entityIdentifier",YA="modelEntityType",XA="name",QA="sourceFrames",ZA="Entry",JA="axis",eS="value",tS="EventModel",rS="accDescr",nS="accTitle",iS="dataEntities",aS="frames",sS="gwtEntities",oS="modelEntities",lS="noteEntities",uS="title",cS="Evolution",pS="stages",dS="EvolutionStage",fS="boundary",mS="name",hS="secondName",yS="Evolve",gS="component",TS="target",vS="GitGraph",RS="accDescr",$S="accTitle",CS="statements",ES="title";Ue(function(e){return m_.isInstance(e,vS)},"isGitGraph");var bS="Group",AS="icon",SS="id",xS="in",kS="title",wS="Info",_S="accDescr",NS="accTitle",IS="title";Ue(function(e){return m_.isInstance(e,wS)},"isInfo");var OS="Item",PS="classSelector",DS="name",LS="Junction",MS="id",jS="in",FS="Label",KS="negX",GS="negY",zS="offsetX",qS="offsetY",US="Leaf",BS="classSelector",VS="name",WS="value",HS="Link",YS="arrow",XS="from",QS="fromPort",ZS="linkLabel",JS="to",ex="toPort",tx="Merge",rx="branch",nx="id",ix="tags",ax="type";Ue(function(e){return m_.isInstance(e,tx)},"isMerge");var sx="Note",ox="evolution",lx="text",ux="visibility",cx="Option",px="name",dx="value",fx="Packet",mx="accDescr",hx="accTitle",yx="blocks",gx="title";Ue(function(e){return m_.isInstance(e,fx)},"isPacket");var Tx="PacketBlock",vx="bits",Rx="end",$x="label",Cx="start";Ue(function(e){return m_.isInstance(e,Tx)},"isPacketBlock");var Ex="PegAny",bx="dot",Ax="PegGroup",Sx="element",xx="PegIdentifier",kx="name",wx="PegLiteral",_x="value",Nx="PegOrderedChoice",Ix="alternatives",Ox="PegPrefix",Px="operator",Dx="suffix",Lx="PegPrimary",Mx="PegRule",jx="definition",Fx="name",Kx="PegSequence",Gx="elements",zx="PegSuffix",qx="operator",Ux="primary",Bx="Pie",Vx="accDescr",Wx="accTitle",Hx="sections",Yx="showData",Xx="title";Ue(function(e){return m_.isInstance(e,Bx)},"isPie");var Qx="PieSection",Zx="label",Jx="value";Ue(function(e){return m_.isInstance(e,Qx)},"isPieSection");var ek="Pipeline",tk="components",rk="parent",nk="PipelineComponent",ik="evolution",ak="label",sk="name",ok="Radar",lk="accDescr",uk="accTitle",ck="axes",pk="curves",dk="options",fk="title",mk="Railroad",hk="accDescr",yk="accTitle",gk="rules",Tk="title";Ue(function(e){return m_.isInstance(e,mk)},"isRailroad");var vk="RailroadAbnf",Rk="accDescr",$k="accTitle",Ck="rules",Ek="title";Ue(function(e){return m_.isInstance(e,vk)},"isRailroadAbnf");var bk="RailroadChoiceExpr",Ak="alternatives",Sk="RailroadEbnf",xk="accDescr",kk="accTitle",wk="rules",_k="title";Ue(function(e){return m_.isInstance(e,Sk)},"isRailroadEbnf");var Nk="RailroadExpression",Ik="RailroadNonTerminalExpr",Ok="name",Pk="RailroadOneOrMoreExpr",Dk="element",Lk="RailroadOptionalExpr",Mk="element",jk="RailroadPeg",Fk="accDescr",Kk="accTitle",Gk="rules",zk="title";Ue(function(e){return m_.isInstance(e,jk)},"isRailroadPeg");var qk="RailroadRule",Uk="definition",Bk="name",Vk="RailroadSequenceExpr",Wk="elements",Hk="RailroadSpecialExpr",Yk="text",Xk="RailroadTerminalExpr",Qk="value",Zk="RailroadZeroOrMoreExpr",Jk="element",ew="Section",tw="classSelector",rw="name",nw="Service",iw="icon",aw="iconText",sw="id",ow="in",lw="title",uw="Size",cw="height",pw="width",dw="Statement",fw="Transition",mw="from",hw="label",yw="to";Ue(function(e){return m_.isInstance(e,fw)},"isTransition");var gw="Treemap",Tw="accDescr",vw="accTitle",Rw="title",$w="TreemapRows";Ue(function(e){return m_.isInstance(e,gw)},"isTreemap");var Cw="TreemapRow",Ew="indent",bw="item",Aw="TreeNode",Sw="classAnnotation",xw="descAnnotation",kw="iconAnnotation",ww="indent",_w="name",Nw="TreeView",Iw="accDescr",Ow="accTitle",Pw="nodes",Dw="title",Lw="Wardley",Mw="accDescr",jw="accelerators",Fw="accTitle",Kw="anchors",Gw="annotation",zw="annotations",qw="components",Uw="deaccelerators",Bw="evolution",Vw="evolves",Ww="links",Hw="notes",Yw="pipelines",Xw="size",Qw="title";Ue(function(e){return m_.isInstance(e,Lw)},"isWardley");var Zw,Jw,e_,t_,r_,n_,i_,a_,s_,o_,l_,u_,c_,p_,d_,f_=class extends Bt{constructor(){super(...arguments),this.types={AbnfAlternation:{name:_C,properties:{alternatives:{name:NC,defaultValue:[]}},superTypes:[]},AbnfConcatenation:{name:IC,properties:{elements:{name:OC,defaultValue:[]}},superTypes:[]},AbnfElement:{name:PC,properties:{primary:{name:DC},repeat:{name:LC,optional:!0}},superTypes:[]},AbnfGroup:{name:MC,properties:{element:{name:jC}},superTypes:[qC]},AbnfNumVal:{name:FC,properties:{value:{name:KC}},superTypes:[qC]},AbnfOptionalGroup:{name:GC,properties:{element:{name:zC}},superTypes:[qC]},AbnfPrimary:{name:qC,properties:{},superTypes:[]},AbnfRule:{name:UC,properties:{definition:{name:BC},name:{name:VC}},superTypes:[]},AbnfRuleName:{name:WC,properties:{name:{name:HC}},superTypes:[qC]},AbnfStringLiteral:{name:YC,properties:{value:{name:XC}},superTypes:[qC]},Accelerator:{name:QC,properties:{name:{name:ZC},x:{name:JC},y:{name:eE}},superTypes:[]},Alignment:{name:tE,properties:{direction:{name:rE},members:{name:nE,defaultValue:[]}},superTypes:[]},Anchor:{name:iE,properties:{evolution:{name:aE},name:{name:sE},visibility:{name:oE}},superTypes:[]},Annotation:{name:lE,properties:{number:{name:uE},text:{name:cE},x:{name:pE},y:{name:dE}},superTypes:[]},Annotations:{name:fE,properties:{x:{name:mE},y:{name:hE}},superTypes:[]},Architecture:{name:yE,properties:{accDescr:{name:gE,optional:!0},accTitle:{name:TE,optional:!0},alignments:{name:vE,defaultValue:[],optional:!0},edges:{name:RE,defaultValue:[],optional:!0},groups:{name:$E,defaultValue:[],optional:!0},junctions:{name:CE,defaultValue:[],optional:!0},services:{name:EE,defaultValue:[],optional:!0},title:{name:bE,optional:!0}},superTypes:[]},Axis:{name:AE,properties:{label:{name:SE,optional:!0},name:{name:xE}},superTypes:[]},Branch:{name:kE,properties:{name:{name:wE},order:{name:_E}},superTypes:[dw]},Checkout:{name:NE,properties:{branch:{name:IE}},superTypes:[dw]},CherryPicking:{name:OE,properties:{id:{name:PE},parent:{name:DE},tags:{name:LE,defaultValue:[]}},superTypes:[dw]},ClassDefStatement:{name:ME,properties:{className:{name:jE},styleText:{name:FE}},superTypes:[]},Commit:{name:KE,properties:{id:{name:GE},message:{name:zE},tags:{name:qE,defaultValue:[]},type:{name:UE}},superTypes:[dw]},Common:{name:BE,properties:{accDescr:{name:VE,optional:!0},accTitle:{name:WE,optional:!0},title:{name:HE,optional:!0}},superTypes:[]},Component:{name:YE,properties:{decorator:{name:XE,optional:!0},evolution:{name:QE},inertia:{name:ZE,defaultValue:!1},label:{name:JE,optional:!0},name:{name:eb},visibility:{name:tb}},superTypes:[]},Curve:{name:rb,properties:{entries:{name:nb,defaultValue:[]},label:{name:ib,optional:!0},name:{name:ab}},superTypes:[]},Cynefin:{name:sb,properties:{accDescr:{name:ob,optional:!0},accTitle:{name:lb,optional:!0},domains:{name:ub,defaultValue:[],optional:!0},title:{name:cb,optional:!0},transitions:{name:pb,defaultValue:[],optional:!0}},superTypes:[]},Deaccelerator:{name:db,properties:{name:{name:fb},x:{name:mb},y:{name:hb}},superTypes:[]},Decorator:{name:yb,properties:{strategy:{name:gb}},superTypes:[]},Direction:{name:Tb,properties:{accDescr:{name:vb},accTitle:{name:Rb},dir:{name:$b},statements:{name:Cb,defaultValue:[]},title:{name:Eb}},superTypes:[vS]},DomainBlock:{name:bb,properties:{domain:{name:Ab},items:{name:Sb,defaultValue:[],optional:!0}},superTypes:[]},DomainItem:{name:xb,properties:{label:{name:kb}},superTypes:[]},EbnfChoice:{name:wb,properties:{alternatives:{name:_b,defaultValue:[]}},superTypes:[]},EbnfExceptionPostfix:{name:Nb,properties:{except:{name:Ib}},superTypes:[qb]},EbnfGroup:{name:Ob,properties:{element:{name:Pb}},superTypes:[Ub]},EbnfNonTerminal:{name:Db,properties:{name:{name:Lb}},superTypes:[Ub]},EbnfOneOrMorePostfix:{name:Mb,properties:{operator:{name:jb}},superTypes:[qb]},EbnfOptional:{name:Fb,properties:{element:{name:Kb}},superTypes:[Ub]},EbnfOptionalPostfix:{name:Gb,properties:{operator:{name:zb}},superTypes:[qb]},EbnfPostfix:{name:qb,properties:{},superTypes:[]},EbnfPrimary:{name:Ub,properties:{},superTypes:[]},EbnfRepetition:{name:Bb,properties:{element:{name:Vb}},superTypes:[Ub]},EbnfRule:{name:Wb,properties:{definition:{name:Hb},name:{name:Yb}},superTypes:[]},EbnfSequence:{name:Xb,properties:{elements:{name:Qb,defaultValue:[]}},superTypes:[]},EbnfSpecial:{name:Zb,properties:{text:{name:Jb}},superTypes:[Ub]},EbnfTerm:{name:eA,properties:{base:{name:tA},postfixes:{name:rA,defaultValue:[]}},superTypes:[]},EbnfTerminal:{name:nA,properties:{value:{name:iA}},superTypes:[Ub]},EbnfZeroOrMorePostfix:{name:aA,properties:{operator:{name:sA}},superTypes:[qb]},Edge:{name:oA,properties:{lhsDir:{name:lA},lhsGroup:{name:uA,defaultValue:!1,optional:!0},lhsId:{name:cA},lhsInto:{name:pA,defaultValue:!1,optional:!0},rhsDir:{name:dA},rhsGroup:{name:fA,defaultValue:!1,optional:!0},rhsId:{name:mA},rhsInto:{name:hA,defaultValue:!1,optional:!0},title:{name:yA,optional:!0}},superTypes:[]},EmDataEntity:{name:gA,properties:{dataBlockValue:{name:TA},dataType:{name:vA,optional:!0},name:{name:RA}},superTypes:[]},EmFrame:{name:$A,properties:{},superTypes:[]},EmGwt:{name:CA,properties:{givenStatements:{name:EA,defaultValue:[]},sourceFrame:{name:bA,referenceType:$A},thenStatements:{name:AA,defaultValue:[]},whenStatements:{name:SA,defaultValue:[],optional:!0}},superTypes:[]},EmGwtStatement:{name:xA,properties:{entityIdentifier:{name:kA,referenceType:wA}},superTypes:[]},EmModelEntity:{name:wA,properties:{name:{name:_A}},superTypes:[]},EmNoteEntity:{name:NA,properties:{dataBlockValue:{name:IA},dataType:{name:OA,optional:!0},sourceFrame:{name:PA,referenceType:$A}},superTypes:[]},EmResetFrame:{name:DA,properties:{dataInlineValue:{name:LA,optional:!0},dataReference:{name:MA,referenceType:gA,optional:!0},dataType:{name:jA,optional:!0},entityIdentifier:{name:FA},modelEntityType:{name:KA},name:{name:GA},sourceFrames:{name:zA,defaultValue:[],referenceType:$A,optional:!0}},superTypes:[$A]},EmTimeFrame:{name:UA,properties:{dataInlineValue:{name:BA,optional:!0},dataReference:{name:VA,referenceType:gA,optional:!0},dataType:{name:WA,optional:!0},entityIdentifier:{name:HA},modelEntityType:{name:YA},name:{name:XA},sourceFrames:{name:QA,defaultValue:[],referenceType:$A,optional:!0}},superTypes:[$A]},Entry:{name:ZA,properties:{axis:{name:JA,referenceType:AE,optional:!0},value:{name:eS}},superTypes:[]},EventModel:{name:tS,properties:{accDescr:{name:rS,optional:!0},accTitle:{name:nS,optional:!0},dataEntities:{name:iS,defaultValue:[],optional:!0},frames:{name:aS,defaultValue:[],optional:!0},gwtEntities:{name:sS,defaultValue:[],optional:!0},modelEntities:{name:oS,defaultValue:[],optional:!0},noteEntities:{name:lS,defaultValue:[],optional:!0},title:{name:uS,optional:!0}},superTypes:[]},Evolution:{name:cS,properties:{stages:{name:pS,defaultValue:[]}},superTypes:[]},EvolutionStage:{name:dS,properties:{boundary:{name:fS,optional:!0},name:{name:mS},secondName:{name:hS,optional:!0}},superTypes:[]},Evolve:{name:yS,properties:{component:{name:gS},target:{name:TS}},superTypes:[]},GitGraph:{name:vS,properties:{accDescr:{name:RS},accTitle:{name:$S},statements:{name:CS,defaultValue:[]},title:{name:ES}},superTypes:[]},Group:{name:bS,properties:{icon:{name:AS,optional:!0},id:{name:SS},in:{name:xS},title:{name:kS,optional:!0}},superTypes:[]},Info:{name:wS,properties:{accDescr:{name:_S,optional:!0},accTitle:{name:NS,optional:!0},title:{name:IS,optional:!0}},superTypes:[]},Item:{name:OS,properties:{classSelector:{name:PS,optional:!0},name:{name:DS}},superTypes:[]},Junction:{name:LS,properties:{id:{name:MS},in:{name:jS}},superTypes:[]},Label:{name:FS,properties:{negX:{name:KS,defaultValue:!1,optional:!0},negY:{name:GS,defaultValue:!1,optional:!0},offsetX:{name:zS},offsetY:{name:qS}},superTypes:[]},Leaf:{name:US,properties:{classSelector:{name:BS,optional:!0},name:{name:VS},value:{name:WS}},superTypes:[OS]},Link:{name:HS,properties:{arrow:{name:YS,optional:!0},from:{name:XS},fromPort:{name:QS,optional:!0},linkLabel:{name:ZS,optional:!0},to:{name:JS},toPort:{name:ex,optional:!0}},superTypes:[]},Merge:{name:tx,properties:{branch:{name:rx},id:{name:nx},tags:{name:ix,defaultValue:[]},type:{name:ax}},superTypes:[dw]},Note:{name:sx,properties:{evolution:{name:ox},text:{name:lx},visibility:{name:ux}},superTypes:[]},Option:{name:cx,properties:{name:{name:px},value:{name:dx,defaultValue:!1}},superTypes:[]},Packet:{name:fx,properties:{accDescr:{name:mx,optional:!0},accTitle:{name:hx,optional:!0},blocks:{name:yx,defaultValue:[],optional:!0},title:{name:gx,optional:!0}},superTypes:[]},PacketBlock:{name:Tx,properties:{bits:{name:vx},end:{name:Rx,optional:!0},label:{name:$x},start:{name:Cx}},superTypes:[]},PegAny:{name:Ex,properties:{dot:{name:bx}},superTypes:[Lx]},PegGroup:{name:Ax,properties:{element:{name:Sx}},superTypes:[Lx]},PegIdentifier:{name:xx,properties:{name:{name:kx}},superTypes:[Lx]},PegLiteral:{name:wx,properties:{value:{name:_x}},superTypes:[Lx]},PegOrderedChoice:{name:Nx,properties:{alternatives:{name:Ix,defaultValue:[]}},superTypes:[]},PegPrefix:{name:Ox,properties:{operator:{name:Px,optional:!0},suffix:{name:Dx}},superTypes:[]},PegPrimary:{name:Lx,properties:{},superTypes:[]},PegRule:{name:Mx,properties:{definition:{name:jx},name:{name:Fx}},superTypes:[]},PegSequence:{name:Kx,properties:{elements:{name:Gx,defaultValue:[]}},superTypes:[]},PegSuffix:{name:zx,properties:{operator:{name:qx,optional:!0},primary:{name:Ux}},superTypes:[]},Pie:{name:Bx,properties:{accDescr:{name:Vx,optional:!0},accTitle:{name:Wx,optional:!0},sections:{name:Hx,defaultValue:[],optional:!0},showData:{name:Yx,defaultValue:!1,optional:!0},title:{name:Xx,optional:!0}},superTypes:[]},PieSection:{name:Qx,properties:{label:{name:Zx},value:{name:Jx}},superTypes:[]},Pipeline:{name:ek,properties:{components:{name:tk,defaultValue:[]},parent:{name:rk}},superTypes:[]},PipelineComponent:{name:nk,properties:{evolution:{name:ik},label:{name:ak,optional:!0},name:{name:sk}},superTypes:[]},Radar:{name:ok,properties:{accDescr:{name:lk,optional:!0},accTitle:{name:uk,optional:!0},axes:{name:ck,defaultValue:[],optional:!0},curves:{name:pk,defaultValue:[],optional:!0},options:{name:dk,defaultValue:[],optional:!0},title:{name:fk,optional:!0}},superTypes:[]},Railroad:{name:mk,properties:{accDescr:{name:hk,optional:!0},accTitle:{name:yk,optional:!0},rules:{name:gk,defaultValue:[]},title:{name:Tk,optional:!0}},superTypes:[]},RailroadAbnf:{name:vk,properties:{accDescr:{name:Rk,optional:!0},accTitle:{name:$k,optional:!0},rules:{name:Ck,defaultValue:[]},title:{name:Ek,optional:!0}},superTypes:[]},RailroadChoiceExpr:{name:bk,properties:{alternatives:{name:Ak,defaultValue:[]}},superTypes:[Nk]},RailroadEbnf:{name:Sk,properties:{accDescr:{name:xk,optional:!0},accTitle:{name:kk,optional:!0},rules:{name:wk,defaultValue:[]},title:{name:_k,optional:!0}},superTypes:[]},RailroadExpression:{name:Nk,properties:{},superTypes:[]},RailroadNonTerminalExpr:{name:Ik,properties:{name:{name:Ok}},superTypes:[Nk]},RailroadOneOrMoreExpr:{name:Pk,properties:{element:{name:Dk}},superTypes:[Nk]},RailroadOptionalExpr:{name:Lk,properties:{element:{name:Mk}},superTypes:[Nk]},RailroadPeg:{name:jk,properties:{accDescr:{name:Fk,optional:!0},accTitle:{name:Kk,optional:!0},rules:{name:Gk,defaultValue:[]},title:{name:zk,optional:!0}},superTypes:[]},RailroadRule:{name:qk,properties:{definition:{name:Uk},name:{name:Bk}},superTypes:[]},RailroadSequenceExpr:{name:Vk,properties:{elements:{name:Wk,defaultValue:[]}},superTypes:[Nk]},RailroadSpecialExpr:{name:Hk,properties:{text:{name:Yk}},superTypes:[Nk]},RailroadTerminalExpr:{name:Xk,properties:{value:{name:Qk}},superTypes:[Nk]},RailroadZeroOrMoreExpr:{name:Zk,properties:{element:{name:Jk}},superTypes:[Nk]},Section:{name:ew,properties:{classSelector:{name:tw,optional:!0},name:{name:rw}},superTypes:[OS]},Service:{name:nw,properties:{icon:{name:iw,optional:!0},iconText:{name:aw,optional:!0},id:{name:sw},in:{name:ow},title:{name:lw,optional:!0}},superTypes:[]},Size:{name:uw,properties:{height:{name:cw},width:{name:pw}},superTypes:[]},Statement:{name:dw,properties:{},superTypes:[]},Transition:{name:fw,properties:{from:{name:mw},label:{name:hw},to:{name:yw}},superTypes:[]},TreeNode:{name:Aw,properties:{classAnnotation:{name:Sw,optional:!0},descAnnotation:{name:xw,optional:!0},iconAnnotation:{name:kw,optional:!0},indent:{name:ww,optional:!0},name:{name:_w}},superTypes:[]},TreeView:{name:Nw,properties:{accDescr:{name:Iw,optional:!0},accTitle:{name:Ow,optional:!0},nodes:{name:Pw,defaultValue:[]},title:{name:Dw,optional:!0}},superTypes:[]},Treemap:{name:gw,properties:{accDescr:{name:Tw,optional:!0},accTitle:{name:vw,optional:!0},title:{name:Rw,optional:!0},TreemapRows:{name:$w,defaultValue:[]}},superTypes:[]},TreemapRow:{name:Cw,properties:{indent:{name:Ew,optional:!0},item:{name:bw}},superTypes:[]},Wardley:{name:Lw,properties:{accDescr:{name:Mw,optional:!0},accelerators:{name:jw,defaultValue:[],optional:!0},accTitle:{name:Fw,optional:!0},anchors:{name:Kw,defaultValue:[],optional:!0},annotation:{name:Gw,defaultValue:[],optional:!0},annotations:{name:zw,defaultValue:[],optional:!0},components:{name:qw,defaultValue:[],optional:!0},deaccelerators:{name:Uw,defaultValue:[],optional:!0},evolution:{name:Bw,optional:!0},evolves:{name:Vw,defaultValue:[],optional:!0},links:{name:Ww,defaultValue:[],optional:!0},notes:{name:Hw,defaultValue:[],optional:!0},pipelines:{name:Yw,defaultValue:[],optional:!0},size:{name:Xw,optional:!0},title:{name:Qw,optional:!0}},superTypes:[]}}}static{Ue(this,"MermaidAstReflection")}},m_=new f_,h_=Ue(()=>Zw??(Zw=wC('{"$type":"Grammar","isDeclared":true,"name":"ArchitectureGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Architecture","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"groups","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"services","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"junctions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"edges","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"alignments","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"LeftPort","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"RightPort","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Arrow","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Assignment","feature":"lhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"--"},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Alignment","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"align"},{"$type":"Assignment","feature":"direction","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"row"},{"$type":"Keyword","value":"column"}]}},{"$type":"Assignment","feature":"members","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"members","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},"cardinality":"+"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@19"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@20"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[(?:\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'|[^\\\\[\\\\]\\\\r\\\\n]+)\\\\]/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}')),"ArchitectureGrammarGrammar"),y_=Ue(()=>Jw??(Jw=wC('{"$type":"Grammar","isDeclared":true,"name":"CynefinGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Cynefin","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"cynefin-beta"},{"$type":"Keyword","value":"cynefin-beta:"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Assignment","feature":"domains","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"transitions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"DomainBlock","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"domain","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Assignment","feature":"items","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"DomainItem","definition":{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Transition","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"from","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":"--\x3e"},{"$type":"Assignment","feature":"to","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"DOMAIN_NAME","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"complex"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"complicated"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"clear"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"chaotic"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"confusion"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"CynefinGrammarGrammar"),g_=Ue(()=>e_??(e_=wC('{"$type":"Grammar","isDeclared":true,"name":"EventModeling","interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"rules":[{"$type":"ParserRule","entry":true,"name":"EventModel","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"eventmodeling"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"modelEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"frames","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"dataEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"noteEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"gwtEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmModelEntityType","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"rmo"},{"$type":"Keyword","value":"readmodel"},{"$type":"Keyword","value":"ui"},{"$type":"Keyword","value":"cmd"},{"$type":"Keyword","value":"command"},{"$type":"Keyword","value":"evt"},{"$type":"Keyword","value":"event"},{"$type":"Keyword","value":"pcr"},{"$type":"Keyword","value":"processor"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmDataType","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"json"},{"$type":"Keyword","value":"jsobj"},{"$type":"Keyword","value":"figma"},{"$type":"Keyword","value":"salt"},{"$type":"Keyword","value":"uri"},{"$type":"Keyword","value":"md"},{"$type":"Keyword","value":"html"},{"$type":"Keyword","value":"text"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"EmDataInline","definition":{"$type":"Group","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"`"},{"$type":"Assignment","feature":"dataType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Keyword","value":"`"}],"cardinality":"?"},{"$type":"Assignment","feature":"dataInlineValue","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"EmDataBlock","definition":{"$type":"Group","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"`"},{"$type":"Assignment","feature":"dataType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Keyword","value":"`"}],"cardinality":"?"},{"$type":"Assignment","feature":"dataBlockValue","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"QualifiedName","dataType":"string","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"Group","elements":[{"$type":"Keyword","value":"."},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmTimeFrame","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"tf"},{"$type":"Keyword","value":"timeframe"}]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"modelEntityType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"entityIdentifier","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"->>"},{"$type":"Assignment","feature":"sourceFrames","operator":"+=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}}],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"[["},{"$type":"Assignment","feature":"dataReference","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@10"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":"]]"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmResetFrame","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"rf"},{"$type":"Keyword","value":"resetframe"}]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"modelEntityType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"entityIdentifier","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"->>"},{"$type":"Assignment","feature":"sourceFrames","operator":"+=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}}],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"[["},{"$type":"Assignment","feature":"dataReference","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@10"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":"]]"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmFrame","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmModelEntity","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"entity"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmDataEntity","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"data"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmNoteEntity","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"note"},{"$type":"Assignment","feature":"sourceFrame","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmGwt","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"gwt"},{"$type":"Assignment","feature":"sourceFrame","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":"given"},{"$type":"Assignment","feature":"givenStatements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"+"},{"$type":"Group","elements":[{"$type":"Keyword","value":"when"},{"$type":"Assignment","feature":"whenStatements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"+"}],"cardinality":"?"},{"$type":"Keyword","value":"then"},{"$type":"Assignment","feature":"thenStatements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"+"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmGwtStatement","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},{"$type":"Assignment","feature":"entityIdentifier","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@9"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EM_EID","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EM_FI","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"EM_ID","definition":{"$type":"RegexToken","regex":"/[_a-zA-Z][\\\\w_]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_FID","definition":{"$type":"RegexToken","regex":"/\\\\d{1,3}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_DATA_INLINE","definition":{"$type":"RegexToken","regex":"/\\\\{(.*)\\\\}|\\"(.*)\\"|\'(.*)\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_DATA_BLOCK","definition":{"$type":"RegexToken","regex":"/\\\\{[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?\\\\}(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"EM_WS","definition":{"$type":"RegexToken","regex":"/\\\\s+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_SL_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\/[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"imports":[],"types":[]}')),"EventModelingGrammar"),T_=Ue(()=>t_??(t_=wC('{"$type":"Grammar","isDeclared":true,"name":"GitGraphGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"GitGraph","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Keyword","value":":"}]},{"$type":"Keyword","value":"gitGraph:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Keyword","value":":"}]}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"Assignment","feature":"statements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Direction","definition":{"$type":"Assignment","feature":"dir","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"LR"},{"$type":"Keyword","value":"TB"},{"$type":"Keyword","value":"BT"}]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Commit","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"commit"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"msg:","cardinality":"?"},{"$type":"Assignment","feature":"message","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Branch","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"branch"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"order:"},{"$type":"Assignment","feature":"order","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Merge","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"merge"},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Checkout","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"checkout"},{"$type":"Keyword","value":"switch"}]},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"CherryPicking","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"cherry-pick"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"parent:"},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@14"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"REFERENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\w([-\\\\./\\\\w]*[-\\\\w])?/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}')),"GitGraphGrammarGrammar"),v_=Ue(()=>r_??(r_=wC('{"$type":"Grammar","isDeclared":true,"name":"InfoGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Info","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"info"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"showInfo"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"?"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@7"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"InfoGrammarGrammar"),R_=Ue(()=>n_??(n_=wC('{"$type":"Grammar","isDeclared":true,"name":"PacketGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Packet","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"packet"},{"$type":"Keyword","value":"packet-beta"}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PacketBlock","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"start","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"end","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}],"cardinality":"?"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"+"},{"$type":"Assignment","feature":"bits","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]}]},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@9"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"PacketGrammarGrammar"),$_=Ue(()=>i_??(i_=wC('{"$type":"Grammar","isDeclared":true,"name":"PieGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Pie","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"pie"},{"$type":"Assignment","feature":"showData","operator":"?=","terminal":{"$type":"Keyword","value":"showData"},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PieSection","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"FLOAT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?(0|[1-9][0-9]*)(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@2"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@3"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"PieGrammarGrammar"),C_=Ue(()=>a_??(a_=wC('{"$type":"Grammar","isDeclared":true,"name":"RadarGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Radar","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":"radar-beta:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":":"}]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},{"$type":"Group","elements":[{"$type":"Keyword","value":"axis"},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"curve"},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Label","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Axis","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Curve","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Keyword","value":"}"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Entries","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"DetailedEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"axis","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@2"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":":","cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"NumberEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Option","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"showLegend"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"ticks"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"max"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"min"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"graticule"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"GRATICULE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"circle"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"polygon"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@16"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[{"$type":"Interface","name":"Entry","attributes":[{"$type":"TypeAttribute","name":"axis","isOptional":true,"type":{"$type":"ReferenceType","referenceType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@2"}},"isMulti":false}},{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}],"superTypes":[]}],"types":[]}')),"RadarGrammarGrammar"),E_=Ue(()=>s_??(s_=wC('{"$type":"Grammar","isDeclared":true,"name":"RailroadAbnfGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_RULENAME","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Za-z][A-Za-z0-9-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_NUMVAL","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/%[xXdDbB][0-9A-Fa-f]+(?:-[0-9A-Fa-f]+|\\\\.[0-9A-Fa-f]+)*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_REPEAT","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[0-9]*\\\\*[0-9]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_EXACT_REPEAT","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[0-9]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_COMMENT","definition":{"$type":"RegexToken","regex":"/;[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadAbnf","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-abnf-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"="},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfAlternation","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfConcatenation","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},"cardinality":"+"},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfElement","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"repeat","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"repeat","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"primary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfPrimary","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfStringLiteral","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfNumVal","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfRuleName","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfGroup","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfOptionalGroup","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadAbnf","attributes":[{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfAlternation","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfConcatenation","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfElement","attributes":[{"$type":"TypeAttribute","name":"repeat","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"primary","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"AbnfStringLiteral","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfNumVal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfRuleName","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"AbnfOptionalGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadAbnfGrammarGrammar"),b_=Ue(()=>o_??(o_=wC('{"$type":"Grammar","isDeclared":true,"name":"RailroadEbnfGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_SPECIAL_SEQUENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\?(?=[^?;]*[^?\\\\s;][^?;]*\\\\?)[^?;]*\\\\?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_BLOCK_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_ISO_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\(\\\\*[\\\\s\\\\S]*?\\\\*\\\\)/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadEbnf","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-ebnf-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"="},{"$type":"Keyword","value":"::="}]},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfChoice","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"|"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfSequence","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":",","cardinality":"?"},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfTerm","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"base","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"postfixes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfPrimary","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfTerminal","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfNonTerminal","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfSpecial","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfGroup","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOptional","returnType":{"$ref":"#/interfaces@11"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfRepetition","returnType":{"$ref":"#/interfaces@12"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"{"},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":"}"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfPostfix","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@25"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@26"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@27"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOptionalPostfix","returnType":{"$ref":"#/interfaces@13"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"?"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfZeroOrMorePostfix","returnType":{"$ref":"#/interfaces@14"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"*"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOneOrMorePostfix","returnType":{"$ref":"#/interfaces@15"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"+"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfExceptionPostfix","returnType":{"$ref":"#/interfaces@16"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"except","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadEbnf","attributes":[{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfChoice","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfSequence","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfTerm","attributes":[{"$type":"TypeAttribute","name":"base","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false},{"$type":"TypeAttribute","name":"postfixes","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@6"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"EbnfPostfix","attributes":[],"superTypes":[]},{"$type":"Interface","name":"EbnfTerminal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfNonTerminal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfSpecial","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"text","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfOptional","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfRepetition","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfOptionalPostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfZeroOrMorePostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfOneOrMorePostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfExceptionPostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"except","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadEbnfGrammarGrammar"),A_=Ue(()=>l_??(l_=wC('{"$type":"Grammar","isDeclared":true,"name":"RailroadGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"RR_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"RR_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"RR_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_BLOCK_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"Railroad","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"="},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadExpression","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadSequenceExpr","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"sequence"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadChoiceExpr","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"choice"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadOptionalExpr","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"optional"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadOneOrMoreExpr","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"oneOrMore"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadZeroOrMoreExpr","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"zeroOrMore"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadTerminalExpr","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"terminal"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadNonTerminalExpr","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"nonterminal"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadSpecialExpr","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"special"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"Railroad","attributes":[{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"RailroadRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"RailroadExpression","attributes":[],"superTypes":[]},{"$type":"Interface","name":"RailroadSequenceExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}}},"isOptional":false}]},{"$type":"Interface","name":"RailroadChoiceExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}}},"isOptional":false}]},{"$type":"Interface","name":"RailroadOptionalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadOneOrMoreExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadZeroOrMoreExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadTerminalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"RailroadNonTerminalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"RailroadSpecialExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"text","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadGrammarGrammar"),S_=Ue(()=>u_??(u_=wC('{"$type":"Grammar","isDeclared":true,"name":"RailroadPegGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"PEG_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"PEG_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/#[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadPeg","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-peg-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"<-"},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegOrderedChoice","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegSequence","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"+"},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegPrefix","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"&"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"!"}}],"cardinality":"?"},{"$type":"Assignment","feature":"suffix","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegSuffix","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"primary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"?"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"*"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"+"}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegPrimary","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegLiteral","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegIdentifier","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegGroup","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegAny","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Assignment","feature":"dot","operator":"=","terminal":{"$type":"Keyword","value":"."}},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadPeg","attributes":[{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegOrderedChoice","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegSequence","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegPrefix","attributes":[{"$type":"TypeAttribute","name":"operator","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"suffix","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegSuffix","attributes":[{"$type":"TypeAttribute","name":"primary","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@6"}},"isOptional":false},{"$type":"TypeAttribute","name":"operator","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"PegPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"PegLiteral","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"PegIdentifier","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"PegGroup","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"PegAny","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"dot","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadPegGrammarGrammar"),x_=Ue(()=>c_??(c_=wC('{"$type":"Grammar","isDeclared":true,"name":"TreemapGrammar","rules":[{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"Treemap","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]},{"$type":"Assignment","feature":"TreemapRows","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"TREEMAP_KEYWORD","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap-beta"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"CLASS_DEF","definition":{"$type":"RegexToken","regex":"/classDef\\\\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\\\\s+([^;\\\\r\\\\n]*))?(?:;)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STYLE_SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":::"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"COMMA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":","},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false},{"$type":"ParserRule","name":"TreemapRow","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"item","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"ClassDef","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Item","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Section","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Leaf","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[],"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ID2","definition":{"$type":"RegexToken","regex":"/[a-zA-Z_][a-zA-Z0-9_]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER2","definition":{"$type":"RegexToken","regex":"/[0-9_\\\\.\\\\,]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"MyNumber","dataType":"number","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"STRING2","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|\'[^\']*\'/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[{"$type":"Interface","name":"Item","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"classSelector","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"Section","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[]},{"$type":"Interface","name":"Leaf","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}]},{"$type":"Interface","name":"ClassDefStatement","attributes":[{"$type":"TypeAttribute","name":"className","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"styleText","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"Treemap","attributes":[{"$type":"TypeAttribute","name":"TreemapRows","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@15"}}},"isOptional":false},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"imports":[],"types":[],"$comment":"/**\\n * Treemap grammar for Langium\\n * Converted from mindmap grammar\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treemap keyword, allowing for empty lines and comments before the\\n * treemap declaration.\\n */"}')),"TreemapGrammarGrammar"),k_=Ue(()=>p_??(p_=wC('{"$type":"Grammar","isDeclared":true,"name":"TreeViewGrammar","rules":[{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"TreeView","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"treeView-beta"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"nodes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"CLASS_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+:::[ \\\\t]*[A-Za-z_][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ICON_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+icon\\\\([\\\\w-]*(?::[\\\\w-]+)?\\\\)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"DESC_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+##[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"QUOTED_NAME","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|\'[^\']*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"BARE_NAME","definition":{"$type":"RegexToken","regex":"/(?!:::|icon\\\\(|##)[^ \\\\t\\\\n\\\\r\\"\'](?:(?![ \\\\t]+:::[ \\\\t]*[A-Za-z_]|[ \\\\t]+icon\\\\(|[ \\\\t]+##)[^\\\\n\\\\r])*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"TreeNode","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}]},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"classAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"iconAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"descAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"TreeView","attributes":[{"$type":"TypeAttribute","name":"nodes","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@14"}}},"isOptional":false},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"imports":[],"types":[],"$comment":"/**\\n * TreeView grammar for Langium\\n *\\n * Supports both quoted labels (\\"my file\\") and bare labels (index.js).\\n * Annotations (:::class, icon(), ## description) are parsed directly into\\n * AST fields by the grammar. Value conversion for stripping quotes, extracting\\n * class names, icon names, and description text happens in valueConverter.ts.\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treeView keyword, allowing for empty lines and comments before the\\n * treeView declaration.\\n */"}')),"TreeViewGrammarGrammar"),w_=Ue(()=>d_??(d_=wC('{"$type":"Grammar","isDeclared":true,"name":"WardleyGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Wardley","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@25"},"arguments":[]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@42"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"size","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"anchors","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"components","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"links","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"evolves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"pipelines","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"notes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Assignment","feature":"annotations","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Assignment","feature":"annotation","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"accelerators","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"deaccelerators","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Size","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@26"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"width","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"height","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Evolution","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@27"},"arguments":[]},{"$type":"Assignment","feature":"stages","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"Assignment","feature":"stages","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}}],"cardinality":"+"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EvolutionStage","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"@"},{"$type":"Assignment","feature":"boundary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}}],"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"secondName","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Anchor","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Component","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"decorator","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"inertia","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@31"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"inertia","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@31"},"arguments":[]}},{"$type":"Keyword","value":")"}]}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Label","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"negX","operator":"?=","terminal":{"$type":"Keyword","value":"-"},"cardinality":"?"},{"$type":"Assignment","feature":"offsetX","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"negY","operator":"?=","terminal":{"$type":"Keyword","value":"-"},"cardinality":"?"},{"$type":"Assignment","feature":"offsetY","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Decorator","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"strategy","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Link","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"from","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"fromPort","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"arrow","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"cardinality":"?"},{"$type":"Assignment","feature":"to","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"toPort","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"linkLabel","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Evolve","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@32"},"arguments":[]},{"$type":"Assignment","feature":"component","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"target","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Pipeline","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@33"},"arguments":[]},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"+"},{"$type":"Assignment","feature":"components","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"+"},{"$type":"Keyword","value":"}"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PipelineComponent","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Note","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@34"},"arguments":[]},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Annotations","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@35"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Annotation","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@36"},"arguments":[]},{"$type":"Assignment","feature":"number","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"CoordinateValue","dataType":"number","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Accelerator","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@37"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Deaccelerator","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@38"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"WARDLEY_NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"->"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_PORT","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+<>"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+>"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+<"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_ARROW","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"--\x3e"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"-.->"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":">"},"parenthesized":false}],"parenthesized":false},{"$type":"RegexToken","regex":"/\\\\+\'[^\']*\'<>/","parenthesized":false}],"parenthesized":false},{"$type":"RegexToken","regex":"/\\\\+\'[^\']*\'</","parenthesized":false}],"parenthesized":false},{"$type":"RegexToken","regex":"/\\\\+\'[^\']*\'>/","parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_LABEL","definition":{"$type":"RegexToken","regex":"/;[^\\\\n\\\\r]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRATEGY","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"build"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"buy"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"outsource"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"market"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_WARDLEY","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"wardley-beta"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_SIZE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"size"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_EVOLUTION","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"evolution"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANCHOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"anchor"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_COMPONENT","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"component"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_LABEL","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"label"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_INERTIA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"inertia"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_EVOLVE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"evolve"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_PIPELINE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"pipeline"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_NOTE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"note"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANNOTATIONS","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"annotations"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANNOTATION","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"annotation"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ACCELERATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"accelerator"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_DEACCELERATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"deaccelerator"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NAME_WITH_SPACES","definition":{"$type":"RegexToken","regex":"/(?!title\\\\s|accTitle|accDescr)[A-Za-z](?:[A-Za-z0-9_()&]|-(?!>))*(?:[ \\\\t]+[A-Za-z(](?:[A-Za-z0-9_()&]|-(?!>))*)*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@44"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@45"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@46"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@47"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@48"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"WardleyGrammarGrammar"),__={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},N_={languageId:"cynefin",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},I_={languageId:"eventmodeling",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},O_={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},P_={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},D_={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},L_={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},M_={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},j_={languageId:"railroadAbnf",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},F_={languageId:"railroadEbnf",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},K_={languageId:"railroad",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},G_={languageId:"railroadPeg",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},z_={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},q_={languageId:"treeView",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},U_={languageId:"wardley",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},B_={AstReflection:Ue(()=>new f_,"AstReflection")},V_={Grammar:Ue(()=>h_(),"Grammar"),LanguageMetaData:Ue(()=>__,"LanguageMetaData"),parser:{}},W_={Grammar:Ue(()=>y_(),"Grammar"),LanguageMetaData:Ue(()=>N_,"LanguageMetaData"),parser:{}},H_={Grammar:Ue(()=>g_(),"Grammar"),LanguageMetaData:Ue(()=>I_,"LanguageMetaData"),parser:{}},Y_={Grammar:Ue(()=>T_(),"Grammar"),LanguageMetaData:Ue(()=>O_,"LanguageMetaData"),parser:{}},X_={Grammar:Ue(()=>v_(),"Grammar"),LanguageMetaData:Ue(()=>P_,"LanguageMetaData"),parser:{}},Q_={Grammar:Ue(()=>R_(),"Grammar"),LanguageMetaData:Ue(()=>D_,"LanguageMetaData"),parser:{}},Z_={Grammar:Ue(()=>$_(),"Grammar"),LanguageMetaData:Ue(()=>L_,"LanguageMetaData"),parser:{}},J_={Grammar:Ue(()=>C_(),"Grammar"),LanguageMetaData:Ue(()=>M_,"LanguageMetaData"),parser:{}},eN={Grammar:Ue(()=>E_(),"Grammar"),LanguageMetaData:Ue(()=>j_,"LanguageMetaData"),parser:{}},tN={Grammar:Ue(()=>b_(),"Grammar"),LanguageMetaData:Ue(()=>F_,"LanguageMetaData"),parser:{}},rN={Grammar:Ue(()=>A_(),"Grammar"),LanguageMetaData:Ue(()=>K_,"LanguageMetaData"),parser:{}},nN={Grammar:Ue(()=>S_(),"Grammar"),LanguageMetaData:Ue(()=>G_,"LanguageMetaData"),parser:{}},iN={Grammar:Ue(()=>x_(),"Grammar"),LanguageMetaData:Ue(()=>z_,"LanguageMetaData"),parser:{}},aN={Grammar:Ue(()=>k_(),"Grammar"),LanguageMetaData:Ue(()=>q_,"LanguageMetaData"),parser:{}},sN={Grammar:Ue(()=>w_(),"Grammar"),LanguageMetaData:Ue(()=>U_,"LanguageMetaData"),parser:{}},oN={ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/accTitle[\t ]*:([^\n\r]*)/,TITLE:/title([\t ][^\n\r]*|)/},lN=class extends tR{static{Ue(this,"AbstractMermaidValueConverter")}runConverter(e,t,r){let n=this.runCommonConverter(e,t,r);return void 0===n&&(n=this.runCustomConverter(e,t,r)),void 0===n?super.runConverter(e,t,r):n}runCommonConverter(e,t,r){const n=oN[e.name];if(void 0===n)return;const i=n.exec(t);return null!==i?void 0!==i[1]?i[1].trim().replace(/[\t ]{2,}/gm," "):void 0!==i[2]?i[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,"\n"):void 0:void 0}},uN=class extends lN{static{Ue(this,"CommonValueConverter")}runCustomConverter(e,t,r){}},cN=class extends eR{static{Ue(this,"AbstractMermaidTokenBuilder")}constructor(e){super(),this.keywords=new Set(e)}buildKeywordTokens(e,t,r){const n=super.buildKeywordTokens(e,t,r);return n.forEach(e=>{this.keywords.has(e.name)&&void 0!==e.PATTERN&&(e.PATTERN=new RegExp(e.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),n}};(class extends cN{static{Ue(this,"CommonTokenBuilder")}})},6211(e,t,r){r.d(t,{$:()=>s});var n=r(41303),i=class extends n.mR{static{(0,n.K2)(this,"PacketTokenBuilder")}constructor(){super(["packet"])}},a={parser:{TokenBuilder:(0,n.K2)(()=>new i,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new n.Tm,"ValueConverter")}};function s(e=n.DD){const t=(0,n.WQ)((0,n.uM)(e),n.sr),r=(0,n.WQ)((0,n.tG)({shared:t}),n.p5,a);return t.ServiceRegistry.register(r),{shared:t,Packet:r}}(0,n.K2)(s,"createPacketServices")},77994(e,t,r){r.d(t,{f:()=>o});var n=r(41303),i=class extends n.mR{static{(0,n.K2)(this,"PieTokenBuilder")}constructor(){super(["pie","showData"])}},a=class extends n.dg{static{(0,n.K2)(this,"PieValueConverter")}runCustomConverter(e,t,r){if("PIE_SECTION_LABEL"===e.name)return t.replace(/"/g,"").trim()}},s={parser:{TokenBuilder:(0,n.K2)(()=>new i,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new a,"ValueConverter")}};function o(e=n.DD){const t=(0,n.WQ)((0,n.uM)(e),n.sr),r=(0,n.WQ)((0,n.tG)({shared:t}),n.D_,s);return t.ServiceRegistry.register(r),{shared:t,Pie:r}}(0,n.K2)(o,"createPieServices")},33543(e,t,r){r.d(t,{g:()=>f});var n=r(41303),i=class extends n.mR{static{(0,n.K2)(this,"EventModelingTokenBuilder")}constructor(){super(["eventmodeling"])}},a=new Set(["cmd","command"]),s=new Set(["evt","event"]),o=new Set(["rmo","readmodel"]),l=new Set(["pcr","processor"]),u=new Set(["ui"]);function c(e){const t=e.validation.EventModelingValidator,r=e.validation.ValidationRegistry;if(r){const e={EmTimeFrame:t.checkSourceFrameTypes.bind(t),EmResetFrame:t.checkSourceFrameTypes.bind(t)};r.register(e,t)}}(0,n.K2)(c,"registerValidationChecks");var p=class{static{(0,n.K2)(this,"EventModelingValidator")}checkSourceFrameTypes(e,t){0!==e.sourceFrames.length&&(a.has(e.modelEntityType)?this.validateSources(e,new Set([...u,...l]),"command","ui or processor",t):s.has(e.modelEntityType)?this.validateSources(e,a,"event","command",t):o.has(e.modelEntityType)?this.validateSources(e,s,"read model","event",t):l.has(e.modelEntityType)?this.validateSources(e,o,"processor","read model",t):u.has(e.modelEntityType)&&this.validateSources(e,o,"ui","read model",t))}validateSources(e,t,r,n,i){for(const a of e.sourceFrames){const s=a.ref;void 0===s||t.has(s.modelEntityType)||i("error",`A ${r} can only receive input from a ${n}, not from '${s.modelEntityType}'.`,{node:e,property:"sourceFrames"})}}},d={parser:{TokenBuilder:(0,n.K2)(()=>new i,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new n.Tm,"ValueConverter")},validation:{EventModelingValidator:(0,n.K2)(()=>new p,"EventModelingValidator")}};function f(e=n.DD){const t=(0,n.WQ)((0,n.uM)(e),n.sr),r=(0,n.WQ)((0,n.tG)({shared:t}),n.x0,d);return t.ServiceRegistry.register(r),c(r),{shared:t,EventModel:r}}(0,n.K2)(f,"createEventModelingServices")},2831(e,t,r){r.d(t,{t:()=>s});var n=r(41303),i=class extends n.mR{static{(0,n.K2)(this,"CynefinTokenBuilder")}constructor(){super(["cynefin-beta"])}},a={parser:{TokenBuilder:(0,n.K2)(()=>new i,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new n.Tm,"ValueConverter")}};function s(e=n.DD){const t=(0,n.WQ)((0,n.uM)(e),n.sr),r=(0,n.WQ)((0,n.tG)({shared:t}),n.Jn,a);return t.ServiceRegistry.register(r),{shared:t,Cynefin:r}}(0,n.K2)(s,"createCynefinServices")},75563(e,t,r){r.d(t,{f:()=>s});var n=r(41303),i=class extends n.mR{static{(0,n.K2)(this,"RadarTokenBuilder")}constructor(){super(["radar-beta"])}},a={parser:{TokenBuilder:(0,n.K2)(()=>new i,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new n.Tm,"ValueConverter")}};function s(e=n.DD){const t=(0,n.WQ)((0,n.uM)(e),n.sr),r=(0,n.WQ)((0,n.tG)({shared:t}),n.Bg,a);return t.ServiceRegistry.register(r),{shared:t,Radar:r}}(0,n.K2)(s,"createRadarServices")},37143(e,t,r){r.d(t,{b:()=>s});var n=r(41303),i=class extends n.mR{static{(0,n.K2)(this,"GitGraphTokenBuilder")}constructor(){super(["gitGraph"])}},a={parser:{TokenBuilder:(0,n.K2)(()=>new i,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new n.Tm,"ValueConverter")}};function s(e=n.DD){const t=(0,n.WQ)((0,n.uM)(e),n.sr),r=(0,n.WQ)((0,n.tG)({shared:t}),n.d$,a);return t.ServiceRegistry.register(r),{shared:t,GitGraph:r}}(0,n.K2)(s,"createGitGraphServices")},14924(e,t,r){r.d(t,{s:()=>o});var n=r(41303),i=class extends n.mR{static{(0,n.K2)(this,"RailroadAbnfTokenBuilder")}constructor(){super(["railroad-abnf-beta"])}},a=class extends n.dg{static{(0,n.K2)(this,"RailroadAbnfValueConverter")}runConverter(e,t,r){const n=super.runConverter(e,t,r);if("TITLE"===e.name&&"string"==typeof n){const e=n.trim();if(e.startsWith('"')&&e.endsWith('"')||e.startsWith("'")&&e.endsWith("'"))return e.slice(1,-1)}return n}runCustomConverter(e,t,r){if("ABNF_STRING"===e.name)return t.slice(1,-1)}},s={parser:{TokenBuilder:(0,n.K2)(()=>new i,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new a,"ValueConverter")}};function o(e=n.DD){const t=(0,n.WQ)((0,n.uM)(e),n.sr),r=(0,n.WQ)((0,n.tG)({shared:t}),n.oI,s);return t.ServiceRegistry.register(r),{shared:t,RailroadAbnf:r}}(0,n.K2)(o,"createRailroadAbnfServices")},55498(e,t,r){r.d(t,{l:()=>l});var n=r(41303),i=class extends n.mR{static{(0,n.K2)(this,"RailroadTokenBuilder")}constructor(){super(["railroad-beta"])}},a=(0,n.K2)(e=>{const t=e.slice(1,-1);let r="";for(let e=0;e<t.length;e++){const n=t[e];if("\\"===n&&e+1<t.length){e++;const n=t[e];switch(n){case"n":r+="\n";break;case"r":r+="\r";break;case"t":r+="\t";break;default:r+=n}continue}r+=n}return r},"decodeEscapedString"),s=class extends n.dg{static{(0,n.K2)(this,"RailroadValueConverter")}runConverter(e,t,r){const n=super.runConverter(e,t,r);if("TITLE"===e.name&&"string"==typeof n){const e=n.trim();if(e.startsWith('"')&&e.endsWith('"')||e.startsWith("'")&&e.endsWith("'"))return a(e)}return n}runCustomConverter(e,t,r){if("RR_STRING"===e.name)return a(t)}},o={parser:{TokenBuilder:(0,n.K2)(()=>new i,"TokenBuilder"),ValueConverter:(0,n.K2)(()=>new s,"ValueConverter")}};function l(e=n.DD){const t=(0,n.WQ)((0,n.uM)(e),n.sr),r=(0,n.WQ)((0,n.tG)({shared:t}),n.Bi,o);return t.ServiceRegistry.register(r),{shared:t,Railroad:r}}(0,n.K2)(l,"createRailroadServices")},34376(e,t,r){r.d(t,{F5:()=>o.F5,Pz:()=>s.P,WG:()=>i.W,lz:()=>n.l,qg:()=>c,sB:()=>a.s,zg:()=>d});r(75563);var n=r(55498),i=r(19911),a=r(14924),s=r(7845),o=(r(53239),r(85411),r(2831),r(37143),r(85547),r(6211),r(77994),r(97530),r(48066),r(33543),r(41303)),l={},u={info:(0,o.K2)(async()=>{const{createInfoServices:e}=await r.e(6054).then(r.bind(r,76054)),t=e().Info.parser.LangiumParser;l.info=t},"info"),packet:(0,o.K2)(async()=>{const{createPacketServices:e}=await r.e(4547).then(r.bind(r,74547)),t=e().Packet.parser.LangiumParser;l.packet=t},"packet"),pie:(0,o.K2)(async()=>{const{createPieServices:e}=await r.e(9385).then(r.bind(r,39385)),t=e().Pie.parser.LangiumParser;l.pie=t},"pie"),treeView:(0,o.K2)(async()=>{const{createTreeViewServices:e}=await r.e(779).then(r.bind(r,40779)),t=e().TreeView.parser.LangiumParser;l.treeView=t},"treeView"),architecture:(0,o.K2)(async()=>{const{createArchitectureServices:e}=await r.e(7953).then(r.bind(r,77953)),t=e().Architecture.parser.LangiumParser;l.architecture=t},"architecture"),gitGraph:(0,o.K2)(async()=>{const{createGitGraphServices:e}=await r.e(70).then(r.bind(r,60070)),t=e().GitGraph.parser.LangiumParser;l.gitGraph=t},"gitGraph"),eventmodeling:(0,o.K2)(async()=>{const{createEventModelingServices:e}=await r.e(8782).then(r.bind(r,38782)),t=e().EventModel.parser.LangiumParser;l.eventmodeling=t},"eventmodeling"),radar:(0,o.K2)(async()=>{const{createRadarServices:e}=await r.e(1312).then(r.bind(r,51312)),t=e().Radar.parser.LangiumParser;l.radar=t},"radar"),railroad:(0,o.K2)(async()=>{const{createRailroadServices:e}=await r.e(452).then(r.bind(r,90452)),t=e().Railroad.parser.LangiumParser;l.railroad=t},"railroad"),railroadEbnf:(0,o.K2)(async()=>{const{createRailroadEbnfServices:e}=await r.e(2213).then(r.bind(r,62213)),t=e().RailroadEbnf.parser.LangiumParser;l.railroadEbnf=t},"railroadEbnf"),railroadAbnf:(0,o.K2)(async()=>{const{createRailroadAbnfServices:e}=await r.e(1875).then(r.bind(r,81875)),t=e().RailroadAbnf.parser.LangiumParser;l.railroadAbnf=t},"railroadAbnf"),railroadPeg:(0,o.K2)(async()=>{const{createRailroadPegServices:e}=await r.e(482).then(r.bind(r,50482)),t=e().RailroadPeg.parser.LangiumParser;l.railroadPeg=t},"railroadPeg"),treemap:(0,o.K2)(async()=>{const{createTreemapServices:e}=await r.e(3357).then(r.bind(r,33357)),t=e().Treemap.parser.LangiumParser;l.treemap=t},"treemap"),wardley:(0,o.K2)(async()=>{const{createWardleyServices:e}=await r.e(3475).then(r.bind(r,43475)),t=e().Wardley.parser.LangiumParser;l.wardley=t},"wardley"),cynefin:(0,o.K2)(async()=>{const{createCynefinServices:e}=await r.e(7959).then(r.bind(r,37959)),t=e().Cynefin.parser.LangiumParser;l.cynefin=t},"cynefin")};async function c(e,t){const r=u[e];if(!r)throw new Error(`Unknown diagram type: ${e}`);l[e]||await r();const n=l[e].parse(t);if(n.lexerErrors.length>0||n.parserErrors.length>0)throw new d(n);return n.value}(0,o.K2)(c,"parse");var p=(0,o.K2)(e=>void 0!==e&&e>=0?e:"?","formatLocation"),d=class extends Error{constructor(e){super(`Parsing failed: ${e.lexerErrors.map(e=>`Lexer error on line ${p(e.line)}, column ${p(e.column)}: ${e.message}`).join("\n")} ${e.parserErrors.map(e=>`Parse error on line ${p(e.token.startLine)}, column ${p(e.token.startColumn)}: ${e.message}`).join("\n")}`),this.result=e}static{(0,o.K2)(this,"MermaidParseError")}}}}]);
|