@xano/xanoscript-monaco-editor 0.1.7 → 0.1.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (23) hide show
  1. package/dist/.vite/manifest.json +49 -49
  2. package/dist/assets/{editor-Q-H44Xk5.js → editor-CTk4XCQG.js} +1 -1
  3. package/dist/assets/{fileCommands._save-_f7KuzoK.js → fileCommands._save-BslznhnO.js} +3 -3
  4. package/dist/assets/{iconv-lite-umd-D8Xc-NRZ.js → iconv-lite-umd-vDmZu3o7.js} +1 -1
  5. package/dist/assets/{index-kz8GV9yO.js → index-B9LREvGB.js} +1 -1
  6. package/dist/assets/{index-BQHo-Z-Y.js → index-BMTVGxzX.js} +2 -2
  7. package/dist/assets/{index-fzRRQ7Qh.js → index-Be1WCD4s.js} +1 -1
  8. package/dist/assets/{index-DcZHpPDm.js → index-BfLChBOe.js} +1 -1
  9. package/dist/assets/{index-CQIJkuYI.js → index-BpdMCZU7.js} +1 -1
  10. package/dist/assets/{index-GR_3sv6M.js → index-Ca2GOtQx.js} +2 -2
  11. package/dist/assets/{index-CLAWxbMR.js → index-CzmSOBI6.js} +1 -1
  12. package/dist/assets/{index-CHwATtBn.js → index-DqIUrgd9.js} +3 -3
  13. package/dist/assets/{index-D9lSNsHR.js → index-GPQU4rv1.js} +3 -3
  14. package/dist/assets/{main-BtCp5aH0.js → main-CuAxLb8K.js} +1 -1
  15. package/dist/assets/{main-BnV5RNdt.js → main-kYU-Ynn2.js} +1 -1
  16. package/dist/assets/{tokenClassificationRegistry-BP6RVP9u.js → tokenClassificationRegistry-BA6yuF5K.js} +2 -2
  17. package/dist/assets/{views-Hn-QKMUh.js → views-Dck1c7fK.js} +2 -2
  18. package/dist/assets/workbenchThemeService.service-DlXrxy4t.js +1 -0
  19. package/dist/index.html +1 -1
  20. package/dist/logic-assistant-script.js +60 -62
  21. package/dist/worker.js +92 -94
  22. package/package.json +3 -2
  23. package/dist/assets/workbenchThemeService.service-CDwCNsAv.js +0 -1
@@ -1,63 +1,63 @@
1
- (()=>{var MM=Object.defineProperty;var r=(e,t)=>MM(e,"name",{value:t,configurable:!0});var FM=typeof global=="object"&&global&&global.Object===Object&&global,Ni=FM;var IM=typeof self=="object"&&self&&self.Object===Object&&self,vM=Ni||IM||Function("return this")(),Ae=vM;var wM=Ae.Symbol,be=wM;var oT=Object.prototype,PM=oT.hasOwnProperty,BM=oT.toString,Oa=be?be.toStringTag:void 0;function GM(e){var t=PM.call(e,Oa),o=e[Oa];try{e[Oa]=void 0;var n=!0}catch{}var a=BM.call(e);return n&&(t?e[Oa]=o:delete e[Oa]),a}r(GM,"getRawTag");var nT=GM;var DM=Object.prototype,VM=DM.toString;function qM(e){return VM.call(e)}r(qM,"objectToString");var aT=qM;var jM="[object Null]",WM="[object Undefined]",iT=be?be.toStringTag:void 0;function KM(e){return e==null?e===void 0?WM:jM:iT&&iT in Object(e)?nT(e):aT(e)}r(KM,"baseGetTag");var je=KM;function YM(e){return e!=null&&typeof e=="object"}r(YM,"isObjectLike");var Te=YM;var HM="[object Symbol]";function zM(e){return typeof e=="symbol"||Te(e)&&je(e)==HM}r(zM,"isSymbol");var cr=zM;function JM(e,t){for(var o=-1,n=e==null?0:e.length,a=Array(n);++o<n;)a[o]=t(e[o],o,e);return a}r(JM,"arrayMap");var yt=JM;var XM=Array.isArray,F=XM;var QM=1/0,sT=be?be.prototype:void 0,lT=sT?sT.toString:void 0;function cT(e){if(typeof e=="string")return e;if(F(e))return yt(e,cT)+"";if(cr(e))return lT?lT.call(e):"";var t=e+"";return t=="0"&&1/e==-QM?"-0":t}r(cT,"baseToString");var pT=cT;var ZM=/\s/;function $M(e){for(var t=e.length;t--&&ZM.test(e.charAt(t)););return t}r($M,"trimmedEndIndex");var uT=$M;var eF=/^\s+/;function tF(e){return e&&e.slice(0,uT(e)+1).replace(eF,"")}r(tF,"baseTrim");var fT=tF;function rF(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}r(rF,"isObject");var ce=rF;var mT=NaN,oF=/^[-+]0x[0-9a-f]+$/i,nF=/^0b[01]+$/i,aF=/^0o[0-7]+$/i,iF=parseInt;function sF(e){if(typeof e=="number")return e;if(cr(e))return mT;if(ce(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=ce(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=fT(e);var o=nF.test(e);return o||aF.test(e)?iF(e.slice(2),o?2:8):oF.test(e)?mT:+e}r(sF,"toNumber");var dT=sF;var hT=1/0,lF=17976931348623157e292;function cF(e){if(!e)return e===0?e:0;if(e=dT(e),e===hT||e===-hT){var t=e<0?-1:1;return t*lF}return e===e?e:0}r(cF,"toFinite");var TT=cF;function pF(e){var t=TT(e),o=t%1;return t===t?o?t-o:t:0}r(pF,"toInteger");var bt=pF;function uF(e){return e}r(uF,"identity");var dt=uF;var fF="[object AsyncFunction]",mF="[object Function]",dF="[object GeneratorFunction]",hF="[object Proxy]";function TF(e){if(!ce(e))return!1;var t=je(e);return t==mF||t==dF||t==fF||t==hF}r(TF,"isFunction");var We=TF;var EF=Ae["__core-js_shared__"],yi=EF;var ET=(function(){var e=/[^.]+$/.exec(yi&&yi.keys&&yi.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""})();function SF(e){return!!ET&&ET in e}r(SF,"isMasked");var ST=SF;var gF=Function.prototype,xF=gF.toString;function AF(e){if(e!=null){try{return xF.call(e)}catch{}try{return e+""}catch{}}return""}r(AF,"toSource");var Ht=AF;var UF=/[\\^$.*+?()[\]{}|]/g,RF=/^\[object .+?Constructor\]$/,LF=Function.prototype,kF=Object.prototype,OF=LF.toString,CF=kF.hasOwnProperty,NF=RegExp("^"+OF.call(CF).replace(UF,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function yF(e){if(!ce(e)||ST(e))return!1;var t=We(e)?NF:RF;return t.test(Ht(e))}r(yF,"baseIsNative");var gT=yF;function bF(e,t){return e?.[t]}r(bF,"getValue");var xT=bF;function _F(e,t){var o=xT(e,t);return gT(o)?o:void 0}r(_F,"getNative");var $e=_F;var MF=$e(Ae,"WeakMap"),bi=MF;var AT=Object.create,FF=(function(){function e(){}return r(e,"object"),function(t){if(!ce(t))return{};if(AT)return AT(t);e.prototype=t;var o=new e;return e.prototype=void 0,o}})(),UT=FF;function IF(e,t,o){switch(o.length){case 0:return e.call(t);case 1:return e.call(t,o[0]);case 2:return e.call(t,o[0],o[1]);case 3:return e.call(t,o[0],o[1],o[2])}return e.apply(t,o)}r(IF,"apply");var RT=IF;function vF(){}r(vF,"noop");var pe=vF;function wF(e,t){var o=-1,n=e.length;for(t||(t=Array(n));++o<n;)t[o]=e[o];return t}r(wF,"copyArray");var LT=wF;var PF=800,BF=16,GF=Date.now;function DF(e){var t=0,o=0;return function(){var n=GF(),a=BF-(n-o);if(o=n,a>0){if(++t>=PF)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}r(DF,"shortOut");var kT=DF;function VF(e){return function(){return e}}r(VF,"constant");var OT=VF;var qF=(function(){try{var e=$e(Object,"defineProperty");return e({},"",{}),e}catch{}})(),So=qF;var jF=So?function(e,t){return So(e,"toString",{configurable:!0,enumerable:!1,value:OT(t),writable:!0})}:dt,CT=jF;var WF=kT(CT),NT=WF;function KF(e,t){for(var o=-1,n=e==null?0:e.length;++o<n&&t(e[o],o,e)!==!1;);return e}r(KF,"arrayEach");var _i=KF;function YF(e,t,o,n){for(var a=e.length,s=o+(n?1:-1);n?s--:++s<a;)if(t(e[s],s,e))return s;return-1}r(YF,"baseFindIndex");var Mi=YF;function HF(e){return e!==e}r(HF,"baseIsNaN");var yT=HF;function zF(e,t,o){for(var n=o-1,a=e.length;++n<a;)if(e[n]===t)return n;return-1}r(zF,"strictIndexOf");var bT=zF;function JF(e,t,o){return t===t?bT(e,t,o):Mi(e,yT,o)}r(JF,"baseIndexOf");var go=JF;function XF(e,t){var o=e==null?0:e.length;return!!o&&go(e,t,0)>-1}r(XF,"arrayIncludes");var Fi=XF;var QF=9007199254740991,ZF=/^(?:0|[1-9]\d*)$/;function $F(e,t){var o=typeof e;return t=t??QF,!!t&&(o=="number"||o!="symbol"&&ZF.test(e))&&e>-1&&e%1==0&&e<t}r($F,"isIndex");var pr=$F;function eI(e,t,o){t=="__proto__"&&So?So(e,t,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[t]=o}r(eI,"baseAssignValue");var xo=eI;function tI(e,t){return e===t||e!==e&&t!==t}r(tI,"eq");var _t=tI;var rI=Object.prototype,oI=rI.hasOwnProperty;function nI(e,t,o){var n=e[t];(!(oI.call(e,t)&&_t(n,o))||o===void 0&&!(t in e))&&xo(e,t,o)}r(nI,"assignValue");var ur=nI;function aI(e,t,o,n){var a=!o;o||(o={});for(var s=-1,l=t.length;++s<l;){var c=t[s],p=n?n(o[c],e[c],c,o,e):void 0;p===void 0&&(p=e[c]),a?xo(o,c,p):ur(o,c,p)}return o}r(aI,"copyObject");var Mt=aI;var _T=Math.max;function iI(e,t,o){return t=_T(t===void 0?e.length-1:t,0),function(){for(var n=arguments,a=-1,s=_T(n.length-t,0),l=Array(s);++a<s;)l[a]=n[t+a];a=-1;for(var c=Array(t+1);++a<t;)c[a]=n[a];return c[t]=o(l),RT(e,this,c)}}r(iI,"overRest");var MT=iI;function sI(e,t){return NT(MT(e,t,dt),e+"")}r(sI,"baseRest");var Ao=sI;var lI=9007199254740991;function cI(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=lI}r(cI,"isLength");var Uo=cI;function pI(e){return e!=null&&Uo(e.length)&&!We(e)}r(pI,"isArrayLike");var Ue=pI;function uI(e,t,o){if(!ce(o))return!1;var n=typeof t;return(n=="number"?Ue(o)&&pr(t,o.length):n=="string"&&t in o)?_t(o[t],e):!1}r(uI,"isIterateeCall");var fr=uI;function fI(e){return Ao(function(t,o){var n=-1,a=o.length,s=a>1?o[a-1]:void 0,l=a>2?o[2]:void 0;for(s=e.length>3&&typeof s=="function"?(a--,s):void 0,l&&fr(o[0],o[1],l)&&(s=a<3?void 0:s,a=1),t=Object(t);++n<a;){var c=o[n];c&&e(t,c,n,s)}return t})}r(fI,"createAssigner");var FT=fI;var mI=Object.prototype;function dI(e){var t=e&&e.constructor,o=typeof t=="function"&&t.prototype||mI;return e===o}r(dI,"isPrototype");var Ft=dI;function hI(e,t){for(var o=-1,n=Array(e);++o<e;)n[o]=t(o);return n}r(hI,"baseTimes");var IT=hI;var TI="[object Arguments]";function EI(e){return Te(e)&&je(e)==TI}r(EI,"baseIsArguments");var Cd=EI;var vT=Object.prototype,SI=vT.hasOwnProperty,gI=vT.propertyIsEnumerable,xI=Cd((function(){return arguments})())?Cd:function(e){return Te(e)&&SI.call(e,"callee")&&!gI.call(e,"callee")},mr=xI;function AI(){return!1}r(AI,"stubFalse");var wT=AI;var GT=typeof exports=="object"&&exports&&!exports.nodeType&&exports,PT=GT&&typeof module=="object"&&module&&!module.nodeType&&module,UI=PT&&PT.exports===GT,BT=UI?Ae.Buffer:void 0,RI=BT?BT.isBuffer:void 0,LI=RI||wT,zt=LI;var kI="[object Arguments]",OI="[object Array]",CI="[object Boolean]",NI="[object Date]",yI="[object Error]",bI="[object Function]",_I="[object Map]",MI="[object Number]",FI="[object Object]",II="[object RegExp]",vI="[object Set]",wI="[object String]",PI="[object WeakMap]",BI="[object ArrayBuffer]",GI="[object DataView]",DI="[object Float32Array]",VI="[object Float64Array]",qI="[object Int8Array]",jI="[object Int16Array]",WI="[object Int32Array]",KI="[object Uint8Array]",YI="[object Uint8ClampedArray]",HI="[object Uint16Array]",zI="[object Uint32Array]",re={};re[DI]=re[VI]=re[qI]=re[jI]=re[WI]=re[KI]=re[YI]=re[HI]=re[zI]=!0;re[kI]=re[OI]=re[BI]=re[CI]=re[GI]=re[NI]=re[yI]=re[bI]=re[_I]=re[MI]=re[FI]=re[II]=re[vI]=re[wI]=re[PI]=!1;function JI(e){return Te(e)&&Uo(e.length)&&!!re[je(e)]}r(JI,"baseIsTypedArray");var DT=JI;function XI(e){return function(t){return e(t)}}r(XI,"baseUnary");var It=XI;var VT=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Ca=VT&&typeof module=="object"&&module&&!module.nodeType&&module,QI=Ca&&Ca.exports===VT,Nd=QI&&Ni.process,ZI=(function(){try{var e=Ca&&Ca.require&&Ca.require("util").types;return e||Nd&&Nd.binding&&Nd.binding("util")}catch{}})(),ht=ZI;var qT=ht&&ht.isTypedArray,$I=qT?It(qT):DT,Ro=$I;var ev=Object.prototype,tv=ev.hasOwnProperty;function rv(e,t){var o=F(e),n=!o&&mr(e),a=!o&&!n&&zt(e),s=!o&&!n&&!a&&Ro(e),l=o||n||a||s,c=l?IT(e.length,String):[],p=c.length;for(var f in e)(t||tv.call(e,f))&&!(l&&(f=="length"||a&&(f=="offset"||f=="parent")||s&&(f=="buffer"||f=="byteLength"||f=="byteOffset")||pr(f,p)))&&c.push(f);return c}r(rv,"arrayLikeKeys");var Ii=rv;function ov(e,t){return function(o){return e(t(o))}}r(ov,"overArg");var vi=ov;var nv=vi(Object.keys,Object),jT=nv;var av=Object.prototype,iv=av.hasOwnProperty;function sv(e){if(!Ft(e))return jT(e);var t=[];for(var o in Object(e))iv.call(e,o)&&o!="constructor"&&t.push(o);return t}r(sv,"baseKeys");var wi=sv;function lv(e){return Ue(e)?Ii(e):wi(e)}r(lv,"keys");var X=lv;var cv=Object.prototype,pv=cv.hasOwnProperty,uv=FT(function(e,t){if(Ft(t)||Ue(t)){Mt(t,X(t),e);return}for(var o in t)pv.call(t,o)&&ur(e,o,t[o])}),Lo=uv;function fv(e){var t=[];if(e!=null)for(var o in Object(e))t.push(o);return t}r(fv,"nativeKeysIn");var WT=fv;var mv=Object.prototype,dv=mv.hasOwnProperty;function hv(e){if(!ce(e))return WT(e);var t=Ft(e),o=[];for(var n in e)n=="constructor"&&(t||!dv.call(e,n))||o.push(n);return o}r(hv,"baseKeysIn");var KT=hv;function Tv(e){return Ue(e)?Ii(e,!0):KT(e)}r(Tv,"keysIn");var dr=Tv;var Ev=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Sv=/^\w*$/;function gv(e,t){if(F(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||cr(e)?!0:Sv.test(e)||!Ev.test(e)||t!=null&&e in Object(t)}r(gv,"isKey");var ko=gv;var xv=$e(Object,"create"),Jt=xv;function Av(){this.__data__=Jt?Jt(null):{},this.size=0}r(Av,"hashClear");var YT=Av;function Uv(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}r(Uv,"hashDelete");var HT=Uv;var Rv="__lodash_hash_undefined__",Lv=Object.prototype,kv=Lv.hasOwnProperty;function Ov(e){var t=this.__data__;if(Jt){var o=t[e];return o===Rv?void 0:o}return kv.call(t,e)?t[e]:void 0}r(Ov,"hashGet");var zT=Ov;var Cv=Object.prototype,Nv=Cv.hasOwnProperty;function yv(e){var t=this.__data__;return Jt?t[e]!==void 0:Nv.call(t,e)}r(yv,"hashHas");var JT=yv;var bv="__lodash_hash_undefined__";function _v(e,t){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=Jt&&t===void 0?bv:t,this}r(_v,"hashSet");var XT=_v;function Oo(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}r(Oo,"Hash");Oo.prototype.clear=YT;Oo.prototype.delete=HT;Oo.prototype.get=zT;Oo.prototype.has=JT;Oo.prototype.set=XT;var yd=Oo;function Mv(){this.__data__=[],this.size=0}r(Mv,"listCacheClear");var QT=Mv;function Fv(e,t){for(var o=e.length;o--;)if(_t(e[o][0],t))return o;return-1}r(Fv,"assocIndexOf");var hr=Fv;var Iv=Array.prototype,vv=Iv.splice;function wv(e){var t=this.__data__,o=hr(t,e);if(o<0)return!1;var n=t.length-1;return o==n?t.pop():vv.call(t,o,1),--this.size,!0}r(wv,"listCacheDelete");var ZT=wv;function Pv(e){var t=this.__data__,o=hr(t,e);return o<0?void 0:t[o][1]}r(Pv,"listCacheGet");var $T=Pv;function Bv(e){return hr(this.__data__,e)>-1}r(Bv,"listCacheHas");var eE=Bv;function Gv(e,t){var o=this.__data__,n=hr(o,e);return n<0?(++this.size,o.push([e,t])):o[n][1]=t,this}r(Gv,"listCacheSet");var tE=Gv;function Co(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}r(Co,"ListCache");Co.prototype.clear=QT;Co.prototype.delete=ZT;Co.prototype.get=$T;Co.prototype.has=eE;Co.prototype.set=tE;var Tr=Co;var Dv=$e(Ae,"Map"),Er=Dv;function Vv(){this.size=0,this.__data__={hash:new yd,map:new(Er||Tr),string:new yd}}r(Vv,"mapCacheClear");var rE=Vv;function qv(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}r(qv,"isKeyable");var oE=qv;function jv(e,t){var o=e.__data__;return oE(t)?o[typeof t=="string"?"string":"hash"]:o.map}r(jv,"getMapData");var Sr=jv;function Wv(e){var t=Sr(this,e).delete(e);return this.size-=t?1:0,t}r(Wv,"mapCacheDelete");var nE=Wv;function Kv(e){return Sr(this,e).get(e)}r(Kv,"mapCacheGet");var aE=Kv;function Yv(e){return Sr(this,e).has(e)}r(Yv,"mapCacheHas");var iE=Yv;function Hv(e,t){var o=Sr(this,e),n=o.size;return o.set(e,t),this.size+=o.size==n?0:1,this}r(Hv,"mapCacheSet");var sE=Hv;function No(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}r(No,"MapCache");No.prototype.clear=rE;No.prototype.delete=nE;No.prototype.get=aE;No.prototype.has=iE;No.prototype.set=sE;var eo=No;var zv="Expected a function";function bd(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(zv);var o=r(function(){var n=arguments,a=t?t.apply(this,n):n[0],s=o.cache;if(s.has(a))return s.get(a);var l=e.apply(this,n);return o.cache=s.set(a,l)||s,l},"memoized");return o.cache=new(bd.Cache||eo),o}r(bd,"memoize");bd.Cache=eo;var lE=bd;var Jv=500;function Xv(e){var t=lE(e,function(n){return o.size===Jv&&o.clear(),n}),o=t.cache;return t}r(Xv,"memoizeCapped");var cE=Xv;var Qv=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Zv=/\\(\\)?/g,$v=cE(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(Qv,function(o,n,a,s){t.push(a?s.replace(Zv,"$1"):n||o)}),t}),pE=$v;function ew(e){return e==null?"":pT(e)}r(ew,"toString");var uE=ew;function tw(e,t){return F(e)?e:ko(e,t)?[e]:pE(uE(e))}r(tw,"castPath");var gr=tw;var rw=1/0;function ow(e){if(typeof e=="string"||cr(e))return e;var t=e+"";return t=="0"&&1/e==-rw?"-0":t}r(ow,"toKey");var vt=ow;function nw(e,t){t=gr(t,e);for(var o=0,n=t.length;e!=null&&o<n;)e=e[vt(t[o++])];return o&&o==n?e:void 0}r(nw,"baseGet");var yo=nw;function aw(e,t,o){var n=e==null?void 0:yo(e,t);return n===void 0?o:n}r(aw,"get");var fE=aw;function iw(e,t){for(var o=-1,n=t.length,a=e.length;++o<n;)e[a+o]=t[o];return e}r(iw,"arrayPush");var bo=iw;var mE=be?be.isConcatSpreadable:void 0;function sw(e){return F(e)||mr(e)||!!(mE&&e&&e[mE])}r(sw,"isFlattenable");var dE=sw;function hE(e,t,o,n,a){var s=-1,l=e.length;for(o||(o=dE),a||(a=[]);++s<l;){var c=e[s];t>0&&o(c)?t>1?hE(c,t-1,o,n,a):bo(a,c):n||(a[a.length]=c)}return a}r(hE,"baseFlatten");var _o=hE;function lw(e){var t=e==null?0:e.length;return t?_o(e,1):[]}r(lw,"flatten");var Ne=lw;var cw=vi(Object.getPrototypeOf,Object),Pi=cw;function pw(e,t,o){var n=-1,a=e.length;t<0&&(t=-t>a?0:a+t),o=o>a?a:o,o<0&&(o+=a),a=t>o?0:o-t>>>0,t>>>=0;for(var s=Array(a);++n<a;)s[n]=e[n+t];return s}r(pw,"baseSlice");var Bi=pw;function uw(e,t,o,n){var a=-1,s=e==null?0:e.length;for(n&&s&&(o=e[++a]);++a<s;)o=t(o,e[a],a,e);return o}r(uw,"arrayReduce");var TE=uw;function fw(){this.__data__=new Tr,this.size=0}r(fw,"stackClear");var EE=fw;function mw(e){var t=this.__data__,o=t.delete(e);return this.size=t.size,o}r(mw,"stackDelete");var SE=mw;function dw(e){return this.__data__.get(e)}r(dw,"stackGet");var gE=dw;function hw(e){return this.__data__.has(e)}r(hw,"stackHas");var xE=hw;var Tw=200;function Ew(e,t){var o=this.__data__;if(o instanceof Tr){var n=o.__data__;if(!Er||n.length<Tw-1)return n.push([e,t]),this.size=++o.size,this;o=this.__data__=new eo(n)}return o.set(e,t),this.size=o.size,this}r(Ew,"stackSet");var AE=Ew;function Mo(e){var t=this.__data__=new Tr(e);this.size=t.size}r(Mo,"Stack");Mo.prototype.clear=EE;Mo.prototype.delete=SE;Mo.prototype.get=gE;Mo.prototype.has=xE;Mo.prototype.set=AE;var xr=Mo;function Sw(e,t){return e&&Mt(t,X(t),e)}r(Sw,"baseAssign");var UE=Sw;function gw(e,t){return e&&Mt(t,dr(t),e)}r(gw,"baseAssignIn");var RE=gw;var CE=typeof exports=="object"&&exports&&!exports.nodeType&&exports,LE=CE&&typeof module=="object"&&module&&!module.nodeType&&module,xw=LE&&LE.exports===CE,kE=xw?Ae.Buffer:void 0,OE=kE?kE.allocUnsafe:void 0;function Aw(e,t){if(t)return e.slice();var o=e.length,n=OE?OE(o):new e.constructor(o);return e.copy(n),n}r(Aw,"cloneBuffer");var NE=Aw;function Uw(e,t){for(var o=-1,n=e==null?0:e.length,a=0,s=[];++o<n;){var l=e[o];t(l,o,e)&&(s[a++]=l)}return s}r(Uw,"arrayFilter");var Fo=Uw;function Rw(){return[]}r(Rw,"stubArray");var Gi=Rw;var Lw=Object.prototype,kw=Lw.propertyIsEnumerable,yE=Object.getOwnPropertySymbols,Ow=yE?function(e){return e==null?[]:(e=Object(e),Fo(yE(e),function(t){return kw.call(e,t)}))}:Gi,Io=Ow;function Cw(e,t){return Mt(e,Io(e),t)}r(Cw,"copySymbols");var bE=Cw;var Nw=Object.getOwnPropertySymbols,yw=Nw?function(e){for(var t=[];e;)bo(t,Io(e)),e=Pi(e);return t}:Gi,Di=yw;function bw(e,t){return Mt(e,Di(e),t)}r(bw,"copySymbolsIn");var _E=bw;function _w(e,t,o){var n=t(e);return F(e)?n:bo(n,o(e))}r(_w,"baseGetAllKeys");var Vi=_w;function Mw(e){return Vi(e,X,Io)}r(Mw,"getAllKeys");var Na=Mw;function Fw(e){return Vi(e,dr,Di)}r(Fw,"getAllKeysIn");var qi=Fw;var Iw=$e(Ae,"DataView"),ji=Iw;var vw=$e(Ae,"Promise"),Wi=vw;var ww=$e(Ae,"Set"),Ar=ww;var ME="[object Map]",Pw="[object Object]",FE="[object Promise]",IE="[object Set]",vE="[object WeakMap]",wE="[object DataView]",Bw=Ht(ji),Gw=Ht(Er),Dw=Ht(Wi),Vw=Ht(Ar),qw=Ht(bi),to=je;(ji&&to(new ji(new ArrayBuffer(1)))!=wE||Er&&to(new Er)!=ME||Wi&&to(Wi.resolve())!=FE||Ar&&to(new Ar)!=IE||bi&&to(new bi)!=vE)&&(to=r(function(e){var t=je(e),o=t==Pw?e.constructor:void 0,n=o?Ht(o):"";if(n)switch(n){case Bw:return wE;case Gw:return ME;case Dw:return FE;case Vw:return IE;case qw:return vE}return t},"getTag"));var Rt=to;var jw=Object.prototype,Ww=jw.hasOwnProperty;function Kw(e){var t=e.length,o=new e.constructor(t);return t&&typeof e[0]=="string"&&Ww.call(e,"index")&&(o.index=e.index,o.input=e.input),o}r(Kw,"initCloneArray");var PE=Kw;var Yw=Ae.Uint8Array,vo=Yw;function Hw(e){var t=new e.constructor(e.byteLength);return new vo(t).set(new vo(e)),t}r(Hw,"cloneArrayBuffer");var wo=Hw;function zw(e,t){var o=t?wo(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}r(zw,"cloneDataView");var BE=zw;var Jw=/\w*$/;function Xw(e){var t=new e.constructor(e.source,Jw.exec(e));return t.lastIndex=e.lastIndex,t}r(Xw,"cloneRegExp");var GE=Xw;var DE=be?be.prototype:void 0,VE=DE?DE.valueOf:void 0;function Qw(e){return VE?Object(VE.call(e)):{}}r(Qw,"cloneSymbol");var qE=Qw;function Zw(e,t){var o=t?wo(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}r(Zw,"cloneTypedArray");var jE=Zw;var $w="[object Boolean]",eP="[object Date]",tP="[object Map]",rP="[object Number]",oP="[object RegExp]",nP="[object Set]",aP="[object String]",iP="[object Symbol]",sP="[object ArrayBuffer]",lP="[object DataView]",cP="[object Float32Array]",pP="[object Float64Array]",uP="[object Int8Array]",fP="[object Int16Array]",mP="[object Int32Array]",dP="[object Uint8Array]",hP="[object Uint8ClampedArray]",TP="[object Uint16Array]",EP="[object Uint32Array]";function SP(e,t,o){var n=e.constructor;switch(t){case sP:return wo(e);case $w:case eP:return new n(+e);case lP:return BE(e,o);case cP:case pP:case uP:case fP:case mP:case dP:case hP:case TP:case EP:return jE(e,o);case tP:return new n;case rP:case aP:return new n(e);case oP:return GE(e);case nP:return new n;case iP:return qE(e)}}r(SP,"initCloneByTag");var WE=SP;function gP(e){return typeof e.constructor=="function"&&!Ft(e)?UT(Pi(e)):{}}r(gP,"initCloneObject");var KE=gP;var xP="[object Map]";function AP(e){return Te(e)&&Rt(e)==xP}r(AP,"baseIsMap");var YE=AP;var HE=ht&&ht.isMap,UP=HE?It(HE):YE,zE=UP;var RP="[object Set]";function LP(e){return Te(e)&&Rt(e)==RP}r(LP,"baseIsSet");var JE=LP;var XE=ht&&ht.isSet,kP=XE?It(XE):JE,QE=kP;var OP=1,CP=2,NP=4,ZE="[object Arguments]",yP="[object Array]",bP="[object Boolean]",_P="[object Date]",MP="[object Error]",$E="[object Function]",FP="[object GeneratorFunction]",IP="[object Map]",vP="[object Number]",eS="[object Object]",wP="[object RegExp]",PP="[object Set]",BP="[object String]",GP="[object Symbol]",DP="[object WeakMap]",VP="[object ArrayBuffer]",qP="[object DataView]",jP="[object Float32Array]",WP="[object Float64Array]",KP="[object Int8Array]",YP="[object Int16Array]",HP="[object Int32Array]",zP="[object Uint8Array]",JP="[object Uint8ClampedArray]",XP="[object Uint16Array]",QP="[object Uint32Array]",Q={};Q[ZE]=Q[yP]=Q[VP]=Q[qP]=Q[bP]=Q[_P]=Q[jP]=Q[WP]=Q[KP]=Q[YP]=Q[HP]=Q[IP]=Q[vP]=Q[eS]=Q[wP]=Q[PP]=Q[BP]=Q[GP]=Q[zP]=Q[JP]=Q[XP]=Q[QP]=!0;Q[MP]=Q[$E]=Q[DP]=!1;function Ki(e,t,o,n,a,s){var l,c=t&OP,p=t&CP,f=t&NP;if(o&&(l=a?o(e,n,a,s):o(e)),l!==void 0)return l;if(!ce(e))return e;var d=F(e);if(d){if(l=PE(e),!c)return LT(e,l)}else{var h=Rt(e),T=h==$E||h==FP;if(zt(e))return NE(e,c);if(h==eS||h==ZE||T&&!a){if(l=p||T?{}:KE(e),!c)return p?_E(e,RE(l,e)):bE(e,UE(l,e))}else{if(!Q[h])return a?e:{};l=WE(e,h,c)}}s||(s=new xr);var S=s.get(e);if(S)return S;s.set(e,l),QE(e)?e.forEach(function(y){l.add(Ki(y,t,o,y,e,s))}):zE(e)&&e.forEach(function(y,O){l.set(O,Ki(y,t,o,O,e,s))});var R=f?p?qi:Na:p?dr:X,U=d?void 0:R(e);return _i(U||e,function(y,O){U&&(O=y,y=e[O]),ur(l,O,Ki(y,t,o,O,e,s))}),l}r(Ki,"baseClone");var tS=Ki;var ZP=4;function $P(e){return tS(e,ZP)}r($P,"clone");var Z=$P;function eB(e){for(var t=-1,o=e==null?0:e.length,n=0,a=[];++t<o;){var s=e[t];s&&(a[n++]=s)}return a}r(eB,"compact");var wt=eB;var tB="__lodash_hash_undefined__";function rB(e){return this.__data__.set(e,tB),this}r(rB,"setCacheAdd");var rS=rB;function oB(e){return this.__data__.has(e)}r(oB,"setCacheHas");var oS=oB;function Yi(e){var t=-1,o=e==null?0:e.length;for(this.__data__=new eo;++t<o;)this.add(e[t])}r(Yi,"SetCache");Yi.prototype.add=Yi.prototype.push=rS;Yi.prototype.has=oS;var Po=Yi;function nB(e,t){for(var o=-1,n=e==null?0:e.length;++o<n;)if(t(e[o],o,e))return!0;return!1}r(nB,"arraySome");var Hi=nB;function aB(e,t){return e.has(t)}r(aB,"cacheHas");var Bo=aB;var iB=1,sB=2;function lB(e,t,o,n,a,s){var l=o&iB,c=e.length,p=t.length;if(c!=p&&!(l&&p>c))return!1;var f=s.get(e),d=s.get(t);if(f&&d)return f==t&&d==e;var h=-1,T=!0,S=o&sB?new Po:void 0;for(s.set(e,t),s.set(t,e);++h<c;){var R=e[h],U=t[h];if(n)var y=l?n(U,R,h,t,e,s):n(R,U,h,e,t,s);if(y!==void 0){if(y)continue;T=!1;break}if(S){if(!Hi(t,function(O,C){if(!Bo(S,C)&&(R===O||a(R,O,o,n,s)))return S.push(C)})){T=!1;break}}else if(!(R===U||a(R,U,o,n,s))){T=!1;break}}return s.delete(e),s.delete(t),T}r(lB,"equalArrays");var zi=lB;function cB(e){var t=-1,o=Array(e.size);return e.forEach(function(n,a){o[++t]=[a,n]}),o}r(cB,"mapToArray");var nS=cB;function pB(e){var t=-1,o=Array(e.size);return e.forEach(function(n){o[++t]=n}),o}r(pB,"setToArray");var Go=pB;var uB=1,fB=2,mB="[object Boolean]",dB="[object Date]",hB="[object Error]",TB="[object Map]",EB="[object Number]",SB="[object RegExp]",gB="[object Set]",xB="[object String]",AB="[object Symbol]",UB="[object ArrayBuffer]",RB="[object DataView]",aS=be?be.prototype:void 0,_d=aS?aS.valueOf:void 0;function LB(e,t,o,n,a,s,l){switch(o){case RB:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case UB:return!(e.byteLength!=t.byteLength||!s(new vo(e),new vo(t)));case mB:case dB:case EB:return _t(+e,+t);case hB:return e.name==t.name&&e.message==t.message;case SB:case xB:return e==t+"";case TB:var c=nS;case gB:var p=n&uB;if(c||(c=Go),e.size!=t.size&&!p)return!1;var f=l.get(e);if(f)return f==t;n|=fB,l.set(e,t);var d=zi(c(e),c(t),n,a,s,l);return l.delete(e),d;case AB:if(_d)return _d.call(e)==_d.call(t)}return!1}r(LB,"equalByTag");var iS=LB;var kB=1,OB=Object.prototype,CB=OB.hasOwnProperty;function NB(e,t,o,n,a,s){var l=o&kB,c=Na(e),p=c.length,f=Na(t),d=f.length;if(p!=d&&!l)return!1;for(var h=p;h--;){var T=c[h];if(!(l?T in t:CB.call(t,T)))return!1}var S=s.get(e),R=s.get(t);if(S&&R)return S==t&&R==e;var U=!0;s.set(e,t),s.set(t,e);for(var y=l;++h<p;){T=c[h];var O=e[T],C=t[T];if(n)var N=l?n(C,O,T,t,e,s):n(O,C,T,e,t,s);if(!(N===void 0?O===C||a(O,C,o,n,s):N)){U=!1;break}y||(y=T=="constructor")}if(U&&!y){var I=e.constructor,v=t.constructor;I!=v&&"constructor"in e&&"constructor"in t&&!(typeof I=="function"&&I instanceof I&&typeof v=="function"&&v instanceof v)&&(U=!1)}return s.delete(e),s.delete(t),U}r(NB,"equalObjects");var sS=NB;var yB=1,lS="[object Arguments]",cS="[object Array]",Ji="[object Object]",bB=Object.prototype,pS=bB.hasOwnProperty;function _B(e,t,o,n,a,s){var l=F(e),c=F(t),p=l?cS:Rt(e),f=c?cS:Rt(t);p=p==lS?Ji:p,f=f==lS?Ji:f;var d=p==Ji,h=f==Ji,T=p==f;if(T&&zt(e)){if(!zt(t))return!1;l=!0,d=!1}if(T&&!d)return s||(s=new xr),l||Ro(e)?zi(e,t,o,n,a,s):iS(e,t,p,o,n,a,s);if(!(o&yB)){var S=d&&pS.call(e,"__wrapped__"),R=h&&pS.call(t,"__wrapped__");if(S||R){var U=S?e.value():e,y=R?t.value():t;return s||(s=new xr),a(U,y,o,n,s)}}return T?(s||(s=new xr),sS(e,t,o,n,a,s)):!1}r(_B,"baseIsEqualDeep");var uS=_B;function fS(e,t,o,n,a){return e===t?!0:e==null||t==null||!Te(e)&&!Te(t)?e!==e&&t!==t:uS(e,t,o,n,fS,a)}r(fS,"baseIsEqual");var Xi=fS;var MB=1,FB=2;function IB(e,t,o,n){var a=o.length,s=a,l=!n;if(e==null)return!s;for(e=Object(e);a--;){var c=o[a];if(l&&c[2]?c[1]!==e[c[0]]:!(c[0]in e))return!1}for(;++a<s;){c=o[a];var p=c[0],f=e[p],d=c[1];if(l&&c[2]){if(f===void 0&&!(p in e))return!1}else{var h=new xr;if(n)var T=n(f,d,p,e,t,h);if(!(T===void 0?Xi(d,f,MB|FB,n,h):T))return!1}}return!0}r(IB,"baseIsMatch");var mS=IB;function vB(e){return e===e&&!ce(e)}r(vB,"isStrictComparable");var Qi=vB;function wB(e){for(var t=X(e),o=t.length;o--;){var n=t[o],a=e[n];t[o]=[n,a,Qi(a)]}return t}r(wB,"getMatchData");var dS=wB;function PB(e,t){return function(o){return o==null?!1:o[e]===t&&(t!==void 0||e in Object(o))}}r(PB,"matchesStrictComparable");var Zi=PB;function BB(e){var t=dS(e);return t.length==1&&t[0][2]?Zi(t[0][0],t[0][1]):function(o){return o===e||mS(o,e,t)}}r(BB,"baseMatches");var hS=BB;function GB(e,t){return e!=null&&t in Object(e)}r(GB,"baseHasIn");var TS=GB;function DB(e,t,o){t=gr(t,e);for(var n=-1,a=t.length,s=!1;++n<a;){var l=vt(t[n]);if(!(s=e!=null&&o(e,l)))break;e=e[l]}return s||++n!=a?s:(a=e==null?0:e.length,!!a&&Uo(a)&&pr(l,a)&&(F(e)||mr(e)))}r(DB,"hasPath");var $i=DB;function VB(e,t){return e!=null&&$i(e,t,TS)}r(VB,"hasIn");var ES=VB;var qB=1,jB=2;function WB(e,t){return ko(e)&&Qi(t)?Zi(vt(e),t):function(o){var n=fE(o,e);return n===void 0&&n===t?ES(o,e):Xi(t,n,qB|jB)}}r(WB,"baseMatchesProperty");var SS=WB;function KB(e){return function(t){return t?.[e]}}r(KB,"baseProperty");var gS=KB;function YB(e){return function(t){return yo(t,e)}}r(YB,"basePropertyDeep");var xS=YB;function HB(e){return ko(e)?gS(vt(e)):xS(e)}r(HB,"property");var AS=HB;function zB(e){return typeof e=="function"?e:e==null?dt:typeof e=="object"?F(e)?SS(e[0],e[1]):hS(e):AS(e)}r(zB,"baseIteratee");var Re=zB;function JB(e,t,o,n){for(var a=-1,s=e==null?0:e.length;++a<s;){var l=e[a];t(n,l,o(l),e)}return n}r(JB,"arrayAggregator");var US=JB;function XB(e){return function(t,o,n){for(var a=-1,s=Object(t),l=n(t),c=l.length;c--;){var p=l[e?c:++a];if(o(s[p],p,s)===!1)break}return t}}r(XB,"createBaseFor");var RS=XB;var QB=RS(),LS=QB;function ZB(e,t){return e&&LS(e,t,X)}r(ZB,"baseForOwn");var kS=ZB;function $B(e,t){return function(o,n){if(o==null)return o;if(!Ue(o))return e(o,n);for(var a=o.length,s=t?a:-1,l=Object(o);(t?s--:++s<a)&&n(l[s],s,l)!==!1;);return o}}r($B,"createBaseEach");var OS=$B;var eG=OS(kS),et=eG;function tG(e,t,o,n){return et(e,function(a,s,l){t(n,a,o(a),l)}),n}r(tG,"baseAggregator");var CS=tG;function rG(e,t){return function(o,n){var a=F(o)?US:CS,s=t?t():{};return a(o,e,Re(n,2),s)}}r(rG,"createAggregator");var NS=rG;var yS=Object.prototype,oG=yS.hasOwnProperty,nG=Ao(function(e,t){e=Object(e);var o=-1,n=t.length,a=n>2?t[2]:void 0;for(a&&fr(t[0],t[1],a)&&(n=1);++o<n;)for(var s=t[o],l=dr(s),c=-1,p=l.length;++c<p;){var f=l[c],d=e[f];(d===void 0||_t(d,yS[f])&&!oG.call(e,f))&&(e[f]=s[f])}return e}),Do=nG;function aG(e){return Te(e)&&Ue(e)}r(aG,"isArrayLikeObject");var Md=aG;function iG(e,t,o){for(var n=-1,a=e==null?0:e.length;++n<a;)if(o(t,e[n]))return!0;return!1}r(iG,"arrayIncludesWith");var es=iG;var sG=200;function lG(e,t,o,n){var a=-1,s=Fi,l=!0,c=e.length,p=[],f=t.length;if(!c)return p;o&&(t=yt(t,It(o))),n?(s=es,l=!1):t.length>=sG&&(s=Bo,l=!1,t=new Po(t));e:for(;++a<c;){var d=e[a],h=o==null?d:o(d);if(d=n||d!==0?d:0,l&&h===h){for(var T=f;T--;)if(t[T]===h)continue e;p.push(d)}else s(t,h,n)||p.push(d)}return p}r(lG,"baseDifference");var bS=lG;var cG=Ao(function(e,t){return Md(e)?bS(e,_o(t,1,Md,!0)):[]}),Ur=cG;function pG(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}r(pG,"last");var Lt=pG;function uG(e,t,o){var n=e==null?0:e.length;return n?(t=o||t===void 0?1:bt(t),Bi(e,t<0?0:t,n)):[]}r(uG,"drop");var Ee=uG;function fG(e,t,o){var n=e==null?0:e.length;return n?(t=o||t===void 0?1:bt(t),t=n-t,Bi(e,0,t<0?0:t)):[]}r(fG,"dropRight");var Xt=fG;function mG(e){return typeof e=="function"?e:dt}r(mG,"castFunction");var _S=mG;function dG(e,t){var o=F(e)?_i:et;return o(e,_S(t))}r(dG,"forEach");var _=dG;function hG(e,t){for(var o=-1,n=e==null?0:e.length;++o<n;)if(!t(e[o],o,e))return!1;return!0}r(hG,"arrayEvery");var MS=hG;function TG(e,t){var o=!0;return et(e,function(n,a,s){return o=!!t(n,a,s),o}),o}r(TG,"baseEvery");var FS=TG;function EG(e,t,o){var n=F(e)?MS:FS;return o&&fr(e,t,o)&&(t=void 0),n(e,Re(t,3))}r(EG,"every");var tt=EG;function SG(e,t){var o=[];return et(e,function(n,a,s){t(n,a,s)&&o.push(n)}),o}r(SG,"baseFilter");var ts=SG;function gG(e,t){var o=F(e)?Fo:ts;return o(e,Re(t,3))}r(gG,"filter");var Be=gG;function xG(e){return function(t,o,n){var a=Object(t);if(!Ue(t)){var s=Re(o,3);t=X(t),o=r(function(c){return s(a[c],c,a)},"predicate")}var l=e(t,o,n);return l>-1?a[s?t[l]:l]:void 0}}r(xG,"createFind");var IS=xG;var AG=Math.max;function UG(e,t,o){var n=e==null?0:e.length;if(!n)return-1;var a=o==null?0:bt(o);return a<0&&(a=AG(n+a,0)),Mi(e,Re(t,3),a)}r(UG,"findIndex");var vS=UG;var RG=IS(vS),Pt=RG;function LG(e){return e&&e.length?e[0]:void 0}r(LG,"head");var _e=LG;function kG(e,t){var o=-1,n=Ue(e)?Array(e.length):[];return et(e,function(a,s,l){n[++o]=t(a,s,l)}),n}r(kG,"baseMap");var wS=kG;function OG(e,t){var o=F(e)?yt:wS;return o(e,Re(t,3))}r(OG,"map");var b=OG;function CG(e,t){return _o(b(e,t),1)}r(CG,"flatMap");var Ke=CG;var NG=Object.prototype,yG=NG.hasOwnProperty,bG=NS(function(e,t,o){yG.call(e,o)?e[o].push(t):xo(e,o,[t])}),Fd=bG;var _G=Object.prototype,MG=_G.hasOwnProperty;function FG(e,t){return e!=null&&MG.call(e,t)}r(FG,"baseHas");var PS=FG;function IG(e,t){return e!=null&&$i(e,t,PS)}r(IG,"has");var M=IG;var vG="[object String]";function wG(e){return typeof e=="string"||!F(e)&&Te(e)&&je(e)==vG}r(wG,"isString");var Ye=wG;function PG(e,t){return yt(t,function(o){return e[o]})}r(PG,"baseValues");var BS=PG;function BG(e){return e==null?[]:BS(e,X(e))}r(BG,"values");var Y=BG;var GG=Math.max;function DG(e,t,o,n){e=Ue(e)?e:Y(e),o=o&&!n?bt(o):0;var a=e.length;return o<0&&(o=GG(a+o,0)),Ye(e)?o<=a&&e.indexOf(t,o)>-1:!!a&&go(e,t,o)>-1}r(DG,"includes");var me=DG;var VG=Math.max;function qG(e,t,o){var n=e==null?0:e.length;if(!n)return-1;var a=o==null?0:bt(o);return a<0&&(a=VG(n+a,0)),go(e,t,a)}r(qG,"indexOf");var rs=qG;var jG="[object Map]",WG="[object Set]",KG=Object.prototype,YG=KG.hasOwnProperty;function HG(e){if(e==null)return!0;if(Ue(e)&&(F(e)||typeof e=="string"||typeof e.splice=="function"||zt(e)||Ro(e)||mr(e)))return!e.length;var t=Rt(e);if(t==jG||t==WG)return!e.size;if(Ft(e))return!wi(e).length;for(var o in e)if(YG.call(e,o))return!1;return!0}r(HG,"isEmpty");var D=HG;var zG="[object RegExp]";function JG(e){return Te(e)&&je(e)==zG}r(JG,"baseIsRegExp");var GS=JG;var DS=ht&&ht.isRegExp,XG=DS?It(DS):GS,Bt=XG;function QG(e){return e===void 0}r(QG,"isUndefined");var Ge=QG;var ZG="Expected a function";function $G(e){if(typeof e!="function")throw new TypeError(ZG);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}r($G,"negate");var VS=$G;function eD(e,t,o,n){if(!ce(e))return e;t=gr(t,e);for(var a=-1,s=t.length,l=s-1,c=e;c!=null&&++a<s;){var p=vt(t[a]),f=o;if(p==="__proto__"||p==="constructor"||p==="prototype")return e;if(a!=l){var d=c[p];f=n?n(d,p,c):void 0,f===void 0&&(f=ce(d)?d:pr(t[a+1])?[]:{})}ur(c,p,f),c=c[p]}return e}r(eD,"baseSet");var qS=eD;function tD(e,t,o){for(var n=-1,a=t.length,s={};++n<a;){var l=t[n],c=yo(e,l);o(c,l)&&qS(s,gr(l,e),c)}return s}r(tD,"basePickBy");var jS=tD;function rD(e,t){if(e==null)return{};var o=yt(qi(e),function(n){return[n]});return t=Re(t),jS(e,o,function(n,a){return t(n,a[0])})}r(rD,"pickBy");var Id=rD;function oD(e,t,o,n,a){return a(e,function(s,l,c){o=n?(n=!1,s):t(o,s,l,c)}),o}r(oD,"baseReduce");var WS=oD;function nD(e,t,o){var n=F(e)?TE:WS,a=arguments.length<3;return n(e,Re(t,4),o,a,et)}r(nD,"reduce");var Le=nD;function aD(e,t){var o=F(e)?Fo:ts;return o(e,VS(Re(t,3)))}r(aD,"reject");var Rr=aD;function iD(e,t){var o;return et(e,function(n,a,s){return o=t(n,a,s),!o}),!!o}r(iD,"baseSome");var KS=iD;function sD(e,t,o){var n=F(e)?Hi:KS;return o&&fr(e,t,o)&&(t=void 0),n(e,Re(t,3))}r(sD,"some");var vd=sD;var lD=1/0,cD=Ar&&1/Go(new Ar([,-0]))[1]==lD?function(e){return new Ar(e)}:pe,YS=cD;var pD=200;function uD(e,t,o){var n=-1,a=Fi,s=e.length,l=!0,c=[],p=c;if(o)l=!1,a=es;else if(s>=pD){var f=t?null:YS(e);if(f)return Go(f);l=!1,a=Bo,p=new Po}else p=t?[]:c;e:for(;++n<s;){var d=e[n],h=t?t(d):d;if(d=o||d!==0?d:0,l&&h===h){for(var T=p.length;T--;)if(p[T]===h)continue e;t&&p.push(h),c.push(d)}else a(p,h,o)||(p!==c&&p.push(h),c.push(d))}return c}r(uD,"baseUniq");var HS=uD;function fD(e){return e&&e.length?HS(e):[]}r(fD,"uniq");var Vo=fD;function qo(e){console&&console.error&&console.error(`Error: ${e}`)}r(qo,"PRINT_ERROR");function ya(e){console&&console.warn&&console.warn(`Warning: ${e}`)}r(ya,"PRINT_WARNING");function ba(e){let t=new Date().getTime(),o=e();return{time:new Date().getTime()-t,value:o}}r(ba,"timer");function _a(e){function t(){}r(t,"FakeConstructor"),t.prototype=e;let o=new t;function n(){return typeof o.bar}return r(n,"fakeAccess"),n(),n(),e;(0,eval)(e)}r(_a,"toFastProperties");var mD=typeof global=="object"&&global&&global.Object===Object&&global,os=mD;var dD=typeof self=="object"&&self&&self.Object===Object&&self,hD=os||dD||Function("return this")(),Me=hD;var TD=Me.Symbol,Tt=TD;var zS=Object.prototype,ED=zS.hasOwnProperty,SD=zS.toString,Ma=Tt?Tt.toStringTag:void 0;function gD(e){var t=ED.call(e,Ma),o=e[Ma];try{e[Ma]=void 0;var n=!0}catch{}var a=SD.call(e);return n&&(t?e[Ma]=o:delete e[Ma]),a}r(gD,"getRawTag");var JS=gD;var xD=Object.prototype,AD=xD.toString;function UD(e){return AD.call(e)}r(UD,"objectToString");var XS=UD;var RD="[object Null]",LD="[object Undefined]",QS=Tt?Tt.toStringTag:void 0;function kD(e){return e==null?e===void 0?LD:RD:QS&&QS in Object(e)?JS(e):XS(e)}r(kD,"baseGetTag");var He=kD;function OD(e){return e!=null&&typeof e=="object"}r(OD,"isObjectLike");var ze=OD;var CD="[object Symbol]";function ND(e){return typeof e=="symbol"||ze(e)&&He(e)==CD}r(ND,"isSymbol");var Lr=ND;function yD(e,t){for(var o=-1,n=e==null?0:e.length,a=Array(n);++o<n;)a[o]=t(e[o],o,e);return a}r(yD,"arrayMap");var kr=yD;var bD=Array.isArray,J=bD;var _D=1/0,ZS=Tt?Tt.prototype:void 0,$S=ZS?ZS.toString:void 0;function eg(e){if(typeof e=="string")return e;if(J(e))return kr(e,eg)+"";if(Lr(e))return $S?$S.call(e):"";var t=e+"";return t=="0"&&1/e==-_D?"-0":t}r(eg,"baseToString");var tg=eg;var MD=/\s/;function FD(e){for(var t=e.length;t--&&MD.test(e.charAt(t)););return t}r(FD,"trimmedEndIndex");var rg=FD;var ID=/^\s+/;function vD(e){return e&&e.slice(0,rg(e)+1).replace(ID,"")}r(vD,"baseTrim");var og=vD;function wD(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}r(wD,"isObject");var De=wD;var ng=NaN,PD=/^[-+]0x[0-9a-f]+$/i,BD=/^0b[01]+$/i,GD=/^0o[0-7]+$/i,DD=parseInt;function VD(e){if(typeof e=="number")return e;if(Lr(e))return ng;if(De(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=De(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=og(e);var o=BD.test(e);return o||GD.test(e)?DD(e.slice(2),o?2:8):PD.test(e)?ng:+e}r(VD,"toNumber");var ag=VD;var ig=1/0,qD=17976931348623157e292;function jD(e){if(!e)return e===0?e:0;if(e=ag(e),e===ig||e===-ig){var t=e<0?-1:1;return t*qD}return e===e?e:0}r(jD,"toFinite");var sg=jD;function WD(e){var t=sg(e),o=t%1;return t===t?o?t-o:t:0}r(WD,"toInteger");var lg=WD;function KD(e){return e}r(KD,"identity");var Or=KD;var YD="[object AsyncFunction]",HD="[object Function]",zD="[object GeneratorFunction]",JD="[object Proxy]";function XD(e){if(!De(e))return!1;var t=He(e);return t==HD||t==zD||t==YD||t==JD}r(XD,"isFunction");var ns=XD;var QD=Me["__core-js_shared__"],as=QD;var cg=(function(){var e=/[^.]+$/.exec(as&&as.keys&&as.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""})();function ZD(e){return!!cg&&cg in e}r(ZD,"isMasked");var pg=ZD;var $D=Function.prototype,e1=$D.toString;function t1(e){if(e!=null){try{return e1.call(e)}catch{}try{return e+""}catch{}}return""}r(t1,"toSource");var Qt=t1;var r1=/[\\^$.*+?()[\]{}|]/g,o1=/^\[object .+?Constructor\]$/,n1=Function.prototype,a1=Object.prototype,i1=n1.toString,s1=a1.hasOwnProperty,l1=RegExp("^"+i1.call(s1).replace(r1,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function c1(e){if(!De(e)||pg(e))return!1;var t=ns(e)?l1:o1;return t.test(Qt(e))}r(c1,"baseIsNative");var ug=c1;function p1(e,t){return e?.[t]}r(p1,"getValue");var fg=p1;function u1(e,t){var o=fg(e,t);return ug(o)?o:void 0}r(u1,"getNative");var rt=u1;var f1=rt(Me,"WeakMap"),is=f1;function m1(e,t,o){switch(o.length){case 0:return e.call(t);case 1:return e.call(t,o[0]);case 2:return e.call(t,o[0],o[1]);case 3:return e.call(t,o[0],o[1],o[2])}return e.apply(t,o)}r(m1,"apply");var mg=m1;var d1=800,h1=16,T1=Date.now;function E1(e){var t=0,o=0;return function(){var n=T1(),a=h1-(n-o);if(o=n,a>0){if(++t>=d1)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}r(E1,"shortOut");var dg=E1;function S1(e){return function(){return e}}r(S1,"constant");var hg=S1;var g1=(function(){try{var e=rt(Object,"defineProperty");return e({},"",{}),e}catch{}})(),jo=g1;var x1=jo?function(e,t){return jo(e,"toString",{configurable:!0,enumerable:!1,value:hg(t),writable:!0})}:Or,Tg=x1;var A1=dg(Tg),Eg=A1;function U1(e,t){for(var o=-1,n=e==null?0:e.length;++o<n&&t(e[o],o,e)!==!1;);return e}r(U1,"arrayEach");var Sg=U1;function R1(e,t,o,n){for(var a=e.length,s=o+(n?1:-1);n?s--:++s<a;)if(t(e[s],s,e))return s;return-1}r(R1,"baseFindIndex");var gg=R1;function L1(e){return e!==e}r(L1,"baseIsNaN");var xg=L1;function k1(e,t,o){for(var n=o-1,a=e.length;++n<a;)if(e[n]===t)return n;return-1}r(k1,"strictIndexOf");var Ag=k1;function O1(e,t,o){return t===t?Ag(e,t,o):gg(e,xg,o)}r(O1,"baseIndexOf");var Ug=O1;var C1=9007199254740991,N1=/^(?:0|[1-9]\d*)$/;function y1(e,t){var o=typeof e;return t=t??C1,!!t&&(o=="number"||o!="symbol"&&N1.test(e))&&e>-1&&e%1==0&&e<t}r(y1,"isIndex");var Cr=y1;function b1(e,t,o){t=="__proto__"&&jo?jo(e,t,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[t]=o}r(b1,"baseAssignValue");var ss=b1;function _1(e,t){return e===t||e!==e&&t!==t}r(_1,"eq");var Nr=_1;var M1=Object.prototype,F1=M1.hasOwnProperty;function I1(e,t,o){var n=e[t];(!(F1.call(e,t)&&Nr(n,o))||o===void 0&&!(t in e))&&ss(e,t,o)}r(I1,"assignValue");var Wo=I1;function v1(e,t,o,n){var a=!o;o||(o={});for(var s=-1,l=t.length;++s<l;){var c=t[s],p=n?n(o[c],e[c],c,o,e):void 0;p===void 0&&(p=e[c]),a?ss(o,c,p):Wo(o,c,p)}return o}r(v1,"copyObject");var Rg=v1;var Lg=Math.max;function w1(e,t,o){return t=Lg(t===void 0?e.length-1:t,0),function(){for(var n=arguments,a=-1,s=Lg(n.length-t,0),l=Array(s);++a<s;)l[a]=n[t+a];a=-1;for(var c=Array(t+1);++a<t;)c[a]=n[a];return c[t]=o(l),mg(e,this,c)}}r(w1,"overRest");var kg=w1;function P1(e,t){return Eg(kg(e,t,Or),e+"")}r(P1,"baseRest");var Og=P1;var B1=9007199254740991;function G1(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=B1}r(G1,"isLength");var Ko=G1;function D1(e){return e!=null&&Ko(e.length)&&!ns(e)}r(D1,"isArrayLike");var ot=D1;function V1(e,t,o){if(!De(o))return!1;var n=typeof t;return(n=="number"?ot(o)&&Cr(t,o.length):n=="string"&&t in o)?Nr(o[t],e):!1}r(V1,"isIterateeCall");var Yo=V1;function q1(e){return Og(function(t,o){var n=-1,a=o.length,s=a>1?o[a-1]:void 0,l=a>2?o[2]:void 0;for(s=e.length>3&&typeof s=="function"?(a--,s):void 0,l&&Yo(o[0],o[1],l)&&(s=a<3?void 0:s,a=1),t=Object(t);++n<a;){var c=o[n];c&&e(t,c,n,s)}return t})}r(q1,"createAssigner");var Cg=q1;var j1=Object.prototype;function W1(e){var t=e&&e.constructor,o=typeof t=="function"&&t.prototype||j1;return e===o}r(W1,"isPrototype");var Ho=W1;function K1(e,t){for(var o=-1,n=Array(e);++o<e;)n[o]=t(o);return n}r(K1,"baseTimes");var Ng=K1;var Y1="[object Arguments]";function H1(e){return ze(e)&&He(e)==Y1}r(H1,"baseIsArguments");var wd=H1;var yg=Object.prototype,z1=yg.hasOwnProperty,J1=yg.propertyIsEnumerable,X1=wd((function(){return arguments})())?wd:function(e){return ze(e)&&z1.call(e,"callee")&&!J1.call(e,"callee")},ls=X1;function Q1(){return!1}r(Q1,"stubFalse");var bg=Q1;var Fg=typeof exports=="object"&&exports&&!exports.nodeType&&exports,_g=Fg&&typeof module=="object"&&module&&!module.nodeType&&module,Z1=_g&&_g.exports===Fg,Mg=Z1?Me.Buffer:void 0,$1=Mg?Mg.isBuffer:void 0,e0=$1||bg,Fa=e0;var t0="[object Arguments]",r0="[object Array]",o0="[object Boolean]",n0="[object Date]",a0="[object Error]",i0="[object Function]",s0="[object Map]",l0="[object Number]",c0="[object Object]",p0="[object RegExp]",u0="[object Set]",f0="[object String]",m0="[object WeakMap]",d0="[object ArrayBuffer]",h0="[object DataView]",T0="[object Float32Array]",E0="[object Float64Array]",S0="[object Int8Array]",g0="[object Int16Array]",x0="[object Int32Array]",A0="[object Uint8Array]",U0="[object Uint8ClampedArray]",R0="[object Uint16Array]",L0="[object Uint32Array]",oe={};oe[T0]=oe[E0]=oe[S0]=oe[g0]=oe[x0]=oe[A0]=oe[U0]=oe[R0]=oe[L0]=!0;oe[t0]=oe[r0]=oe[d0]=oe[o0]=oe[h0]=oe[n0]=oe[a0]=oe[i0]=oe[s0]=oe[l0]=oe[c0]=oe[p0]=oe[u0]=oe[f0]=oe[m0]=!1;function k0(e){return ze(e)&&Ko(e.length)&&!!oe[He(e)]}r(k0,"baseIsTypedArray");var Ig=k0;function O0(e){return function(t){return e(t)}}r(O0,"baseUnary");var cs=O0;var vg=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Ia=vg&&typeof module=="object"&&module&&!module.nodeType&&module,C0=Ia&&Ia.exports===vg,Pd=C0&&os.process,N0=(function(){try{var e=Ia&&Ia.require&&Ia.require("util").types;return e||Pd&&Pd.binding&&Pd.binding("util")}catch{}})(),zo=N0;var wg=zo&&zo.isTypedArray,y0=wg?cs(wg):Ig,ps=y0;var b0=Object.prototype,_0=b0.hasOwnProperty;function M0(e,t){var o=J(e),n=!o&&ls(e),a=!o&&!n&&Fa(e),s=!o&&!n&&!a&&ps(e),l=o||n||a||s,c=l?Ng(e.length,String):[],p=c.length;for(var f in e)(t||_0.call(e,f))&&!(l&&(f=="length"||a&&(f=="offset"||f=="parent")||s&&(f=="buffer"||f=="byteLength"||f=="byteOffset")||Cr(f,p)))&&c.push(f);return c}r(M0,"arrayLikeKeys");var us=M0;function F0(e,t){return function(o){return e(t(o))}}r(F0,"overArg");var fs=F0;var I0=fs(Object.keys,Object),Pg=I0;var v0=Object.prototype,w0=v0.hasOwnProperty;function P0(e){if(!Ho(e))return Pg(e);var t=[];for(var o in Object(e))w0.call(e,o)&&o!="constructor"&&t.push(o);return t}r(P0,"baseKeys");var Bg=P0;function B0(e){return ot(e)?us(e):Bg(e)}r(B0,"keys");var Gt=B0;var G0=Object.prototype,D0=G0.hasOwnProperty,V0=Cg(function(e,t){if(Ho(t)||ot(t)){Rg(t,Gt(t),e);return}for(var o in t)D0.call(t,o)&&Wo(e,o,t[o])}),Et=V0;function q0(e){var t=[];if(e!=null)for(var o in Object(e))t.push(o);return t}r(q0,"nativeKeysIn");var Gg=q0;var j0=Object.prototype,W0=j0.hasOwnProperty;function K0(e){if(!De(e))return Gg(e);var t=Ho(e),o=[];for(var n in e)n=="constructor"&&(t||!W0.call(e,n))||o.push(n);return o}r(K0,"baseKeysIn");var Dg=K0;function Y0(e){return ot(e)?us(e,!0):Dg(e)}r(Y0,"keysIn");var Vg=Y0;var H0=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,z0=/^\w*$/;function J0(e,t){if(J(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||Lr(e)?!0:z0.test(e)||!H0.test(e)||t!=null&&e in Object(t)}r(J0,"isKey");var Jo=J0;var X0=rt(Object,"create"),Zt=X0;function Q0(){this.__data__=Zt?Zt(null):{},this.size=0}r(Q0,"hashClear");var qg=Q0;function Z0(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}r(Z0,"hashDelete");var jg=Z0;var $0="__lodash_hash_undefined__",eV=Object.prototype,tV=eV.hasOwnProperty;function rV(e){var t=this.__data__;if(Zt){var o=t[e];return o===$0?void 0:o}return tV.call(t,e)?t[e]:void 0}r(rV,"hashGet");var Wg=rV;var oV=Object.prototype,nV=oV.hasOwnProperty;function aV(e){var t=this.__data__;return Zt?t[e]!==void 0:nV.call(t,e)}r(aV,"hashHas");var Kg=aV;var iV="__lodash_hash_undefined__";function sV(e,t){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=Zt&&t===void 0?iV:t,this}r(sV,"hashSet");var Yg=sV;function Xo(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}r(Xo,"Hash");Xo.prototype.clear=qg;Xo.prototype.delete=jg;Xo.prototype.get=Wg;Xo.prototype.has=Kg;Xo.prototype.set=Yg;var Bd=Xo;function lV(){this.__data__=[],this.size=0}r(lV,"listCacheClear");var Hg=lV;function cV(e,t){for(var o=e.length;o--;)if(Nr(e[o][0],t))return o;return-1}r(cV,"assocIndexOf");var yr=cV;var pV=Array.prototype,uV=pV.splice;function fV(e){var t=this.__data__,o=yr(t,e);if(o<0)return!1;var n=t.length-1;return o==n?t.pop():uV.call(t,o,1),--this.size,!0}r(fV,"listCacheDelete");var zg=fV;function mV(e){var t=this.__data__,o=yr(t,e);return o<0?void 0:t[o][1]}r(mV,"listCacheGet");var Jg=mV;function dV(e){return yr(this.__data__,e)>-1}r(dV,"listCacheHas");var Xg=dV;function hV(e,t){var o=this.__data__,n=yr(o,e);return n<0?(++this.size,o.push([e,t])):o[n][1]=t,this}r(hV,"listCacheSet");var Qg=hV;function Qo(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}r(Qo,"ListCache");Qo.prototype.clear=Hg;Qo.prototype.delete=zg;Qo.prototype.get=Jg;Qo.prototype.has=Xg;Qo.prototype.set=Qg;var br=Qo;var TV=rt(Me,"Map"),_r=TV;function EV(){this.size=0,this.__data__={hash:new Bd,map:new(_r||br),string:new Bd}}r(EV,"mapCacheClear");var Zg=EV;function SV(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}r(SV,"isKeyable");var $g=SV;function gV(e,t){var o=e.__data__;return $g(t)?o[typeof t=="string"?"string":"hash"]:o.map}r(gV,"getMapData");var Mr=gV;function xV(e){var t=Mr(this,e).delete(e);return this.size-=t?1:0,t}r(xV,"mapCacheDelete");var ex=xV;function AV(e){return Mr(this,e).get(e)}r(AV,"mapCacheGet");var tx=AV;function UV(e){return Mr(this,e).has(e)}r(UV,"mapCacheHas");var rx=UV;function RV(e,t){var o=Mr(this,e),n=o.size;return o.set(e,t),this.size+=o.size==n?0:1,this}r(RV,"mapCacheSet");var ox=RV;function Zo(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}r(Zo,"MapCache");Zo.prototype.clear=Zg;Zo.prototype.delete=ex;Zo.prototype.get=tx;Zo.prototype.has=rx;Zo.prototype.set=ox;var ro=Zo;var LV="Expected a function";function Gd(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(LV);var o=r(function(){var n=arguments,a=t?t.apply(this,n):n[0],s=o.cache;if(s.has(a))return s.get(a);var l=e.apply(this,n);return o.cache=s.set(a,l)||s,l},"memoized");return o.cache=new(Gd.Cache||ro),o}r(Gd,"memoize");Gd.Cache=ro;var nx=Gd;var kV=500;function OV(e){var t=nx(e,function(n){return o.size===kV&&o.clear(),n}),o=t.cache;return t}r(OV,"memoizeCapped");var ax=OV;var CV=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,NV=/\\(\\)?/g,yV=ax(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(CV,function(o,n,a,s){t.push(a?s.replace(NV,"$1"):n||o)}),t}),ix=yV;function bV(e){return e==null?"":tg(e)}r(bV,"toString");var sx=bV;function _V(e,t){return J(e)?e:Jo(e,t)?[e]:ix(sx(e))}r(_V,"castPath");var Fr=_V;var MV=1/0;function FV(e){if(typeof e=="string"||Lr(e))return e;var t=e+"";return t=="0"&&1/e==-MV?"-0":t}r(FV,"toKey");var Dt=FV;function IV(e,t){t=Fr(t,e);for(var o=0,n=t.length;e!=null&&o<n;)e=e[Dt(t[o++])];return o&&o==n?e:void 0}r(IV,"baseGet");var $o=IV;function vV(e,t,o){var n=e==null?void 0:$o(e,t);return n===void 0?o:n}r(vV,"get");var lx=vV;function wV(e,t){for(var o=-1,n=t.length,a=e.length;++o<n;)e[a+o]=t[o];return e}r(wV,"arrayPush");var ms=wV;var PV=fs(Object.getPrototypeOf,Object),cx=PV;function BV(){this.__data__=new br,this.size=0}r(BV,"stackClear");var px=BV;function GV(e){var t=this.__data__,o=t.delete(e);return this.size=t.size,o}r(GV,"stackDelete");var ux=GV;function DV(e){return this.__data__.get(e)}r(DV,"stackGet");var fx=DV;function VV(e){return this.__data__.has(e)}r(VV,"stackHas");var mx=VV;var qV=200;function jV(e,t){var o=this.__data__;if(o instanceof br){var n=o.__data__;if(!_r||n.length<qV-1)return n.push([e,t]),this.size=++o.size,this;o=this.__data__=new ro(n)}return o.set(e,t),this.size=o.size,this}r(jV,"stackSet");var dx=jV;function en(e){var t=this.__data__=new br(e);this.size=t.size}r(en,"Stack");en.prototype.clear=px;en.prototype.delete=ux;en.prototype.get=fx;en.prototype.has=mx;en.prototype.set=dx;var tn=en;function WV(e,t){for(var o=-1,n=e==null?0:e.length,a=0,s=[];++o<n;){var l=e[o];t(l,o,e)&&(s[a++]=l)}return s}r(WV,"arrayFilter");var hx=WV;function KV(){return[]}r(KV,"stubArray");var ds=KV;var YV=Object.prototype,HV=YV.propertyIsEnumerable,Tx=Object.getOwnPropertySymbols,zV=Tx?function(e){return e==null?[]:(e=Object(e),hx(Tx(e),function(t){return HV.call(e,t)}))}:ds,hs=zV;var JV=Object.getOwnPropertySymbols,XV=JV?function(e){for(var t=[];e;)ms(t,hs(e)),e=cx(e);return t}:ds,Ex=XV;function QV(e,t,o){var n=t(e);return J(e)?n:ms(n,o(e))}r(QV,"baseGetAllKeys");var Ts=QV;function ZV(e){return Ts(e,Gt,hs)}r(ZV,"getAllKeys");var Dd=ZV;function $V(e){return Ts(e,Vg,Ex)}r($V,"getAllKeysIn");var Sx=$V;var eq=rt(Me,"DataView"),Es=eq;var tq=rt(Me,"Promise"),Ss=tq;var rq=rt(Me,"Set"),gs=rq;var gx="[object Map]",oq="[object Object]",xx="[object Promise]",Ax="[object Set]",Ux="[object WeakMap]",Rx="[object DataView]",nq=Qt(Es),aq=Qt(_r),iq=Qt(Ss),sq=Qt(gs),lq=Qt(is),oo=He;(Es&&oo(new Es(new ArrayBuffer(1)))!=Rx||_r&&oo(new _r)!=gx||Ss&&oo(Ss.resolve())!=xx||gs&&oo(new gs)!=Ax||is&&oo(new is)!=Ux)&&(oo=r(function(e){var t=He(e),o=t==oq?e.constructor:void 0,n=o?Qt(o):"";if(n)switch(n){case nq:return Rx;case aq:return gx;case iq:return xx;case sq:return Ax;case lq:return Ux}return t},"getTag"));var Vd=oo;var cq=Me.Uint8Array,qd=cq;var pq="__lodash_hash_undefined__";function uq(e){return this.__data__.set(e,pq),this}r(uq,"setCacheAdd");var Lx=uq;function fq(e){return this.__data__.has(e)}r(fq,"setCacheHas");var kx=fq;function xs(e){var t=-1,o=e==null?0:e.length;for(this.__data__=new ro;++t<o;)this.add(e[t])}r(xs,"SetCache");xs.prototype.add=xs.prototype.push=Lx;xs.prototype.has=kx;var Ox=xs;function mq(e,t){for(var o=-1,n=e==null?0:e.length;++o<n;)if(t(e[o],o,e))return!0;return!1}r(mq,"arraySome");var As=mq;function dq(e,t){return e.has(t)}r(dq,"cacheHas");var Cx=dq;var hq=1,Tq=2;function Eq(e,t,o,n,a,s){var l=o&hq,c=e.length,p=t.length;if(c!=p&&!(l&&p>c))return!1;var f=s.get(e),d=s.get(t);if(f&&d)return f==t&&d==e;var h=-1,T=!0,S=o&Tq?new Ox:void 0;for(s.set(e,t),s.set(t,e);++h<c;){var R=e[h],U=t[h];if(n)var y=l?n(U,R,h,t,e,s):n(R,U,h,e,t,s);if(y!==void 0){if(y)continue;T=!1;break}if(S){if(!As(t,function(O,C){if(!Cx(S,C)&&(R===O||a(R,O,o,n,s)))return S.push(C)})){T=!1;break}}else if(!(R===U||a(R,U,o,n,s))){T=!1;break}}return s.delete(e),s.delete(t),T}r(Eq,"equalArrays");var Us=Eq;function Sq(e){var t=-1,o=Array(e.size);return e.forEach(function(n,a){o[++t]=[a,n]}),o}r(Sq,"mapToArray");var Nx=Sq;function gq(e){var t=-1,o=Array(e.size);return e.forEach(function(n){o[++t]=n}),o}r(gq,"setToArray");var yx=gq;var xq=1,Aq=2,Uq="[object Boolean]",Rq="[object Date]",Lq="[object Error]",kq="[object Map]",Oq="[object Number]",Cq="[object RegExp]",Nq="[object Set]",yq="[object String]",bq="[object Symbol]",_q="[object ArrayBuffer]",Mq="[object DataView]",bx=Tt?Tt.prototype:void 0,jd=bx?bx.valueOf:void 0;function Fq(e,t,o,n,a,s,l){switch(o){case Mq:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case _q:return!(e.byteLength!=t.byteLength||!s(new qd(e),new qd(t)));case Uq:case Rq:case Oq:return Nr(+e,+t);case Lq:return e.name==t.name&&e.message==t.message;case Cq:case yq:return e==t+"";case kq:var c=Nx;case Nq:var p=n&xq;if(c||(c=yx),e.size!=t.size&&!p)return!1;var f=l.get(e);if(f)return f==t;n|=Aq,l.set(e,t);var d=Us(c(e),c(t),n,a,s,l);return l.delete(e),d;case bq:if(jd)return jd.call(e)==jd.call(t)}return!1}r(Fq,"equalByTag");var _x=Fq;var Iq=1,vq=Object.prototype,wq=vq.hasOwnProperty;function Pq(e,t,o,n,a,s){var l=o&Iq,c=Dd(e),p=c.length,f=Dd(t),d=f.length;if(p!=d&&!l)return!1;for(var h=p;h--;){var T=c[h];if(!(l?T in t:wq.call(t,T)))return!1}var S=s.get(e),R=s.get(t);if(S&&R)return S==t&&R==e;var U=!0;s.set(e,t),s.set(t,e);for(var y=l;++h<p;){T=c[h];var O=e[T],C=t[T];if(n)var N=l?n(C,O,T,t,e,s):n(O,C,T,e,t,s);if(!(N===void 0?O===C||a(O,C,o,n,s):N)){U=!1;break}y||(y=T=="constructor")}if(U&&!y){var I=e.constructor,v=t.constructor;I!=v&&"constructor"in e&&"constructor"in t&&!(typeof I=="function"&&I instanceof I&&typeof v=="function"&&v instanceof v)&&(U=!1)}return s.delete(e),s.delete(t),U}r(Pq,"equalObjects");var Mx=Pq;var Bq=1,Fx="[object Arguments]",Ix="[object Array]",Rs="[object Object]",Gq=Object.prototype,vx=Gq.hasOwnProperty;function Dq(e,t,o,n,a,s){var l=J(e),c=J(t),p=l?Ix:Vd(e),f=c?Ix:Vd(t);p=p==Fx?Rs:p,f=f==Fx?Rs:f;var d=p==Rs,h=f==Rs,T=p==f;if(T&&Fa(e)){if(!Fa(t))return!1;l=!0,d=!1}if(T&&!d)return s||(s=new tn),l||ps(e)?Us(e,t,o,n,a,s):_x(e,t,p,o,n,a,s);if(!(o&Bq)){var S=d&&vx.call(e,"__wrapped__"),R=h&&vx.call(t,"__wrapped__");if(S||R){var U=S?e.value():e,y=R?t.value():t;return s||(s=new tn),a(U,y,o,n,s)}}return T?(s||(s=new tn),Mx(e,t,o,n,a,s)):!1}r(Dq,"baseIsEqualDeep");var wx=Dq;function Px(e,t,o,n,a){return e===t?!0:e==null||t==null||!ze(e)&&!ze(t)?e!==e&&t!==t:wx(e,t,o,n,Px,a)}r(Px,"baseIsEqual");var Ls=Px;var Vq=1,qq=2;function jq(e,t,o,n){var a=o.length,s=a,l=!n;if(e==null)return!s;for(e=Object(e);a--;){var c=o[a];if(l&&c[2]?c[1]!==e[c[0]]:!(c[0]in e))return!1}for(;++a<s;){c=o[a];var p=c[0],f=e[p],d=c[1];if(l&&c[2]){if(f===void 0&&!(p in e))return!1}else{var h=new tn;if(n)var T=n(f,d,p,e,t,h);if(!(T===void 0?Ls(d,f,Vq|qq,n,h):T))return!1}}return!0}r(jq,"baseIsMatch");var Bx=jq;function Wq(e){return e===e&&!De(e)}r(Wq,"isStrictComparable");var ks=Wq;function Kq(e){for(var t=Gt(e),o=t.length;o--;){var n=t[o],a=e[n];t[o]=[n,a,ks(a)]}return t}r(Kq,"getMatchData");var Gx=Kq;function Yq(e,t){return function(o){return o==null?!1:o[e]===t&&(t!==void 0||e in Object(o))}}r(Yq,"matchesStrictComparable");var Os=Yq;function Hq(e){var t=Gx(e);return t.length==1&&t[0][2]?Os(t[0][0],t[0][1]):function(o){return o===e||Bx(o,e,t)}}r(Hq,"baseMatches");var Dx=Hq;function zq(e,t){return e!=null&&t in Object(e)}r(zq,"baseHasIn");var Vx=zq;function Jq(e,t,o){t=Fr(t,e);for(var n=-1,a=t.length,s=!1;++n<a;){var l=Dt(t[n]);if(!(s=e!=null&&o(e,l)))break;e=e[l]}return s||++n!=a?s:(a=e==null?0:e.length,!!a&&Ko(a)&&Cr(l,a)&&(J(e)||ls(e)))}r(Jq,"hasPath");var qx=Jq;function Xq(e,t){return e!=null&&qx(e,t,Vx)}r(Xq,"hasIn");var jx=Xq;var Qq=1,Zq=2;function $q(e,t){return Jo(e)&&ks(t)?Os(Dt(e),t):function(o){var n=lx(o,e);return n===void 0&&n===t?jx(o,e):Ls(t,n,Qq|Zq)}}r($q,"baseMatchesProperty");var Wx=$q;function ej(e){return function(t){return t?.[e]}}r(ej,"baseProperty");var Kx=ej;function tj(e){return function(t){return $o(t,e)}}r(tj,"basePropertyDeep");var Yx=tj;function rj(e){return Jo(e)?Kx(Dt(e)):Yx(e)}r(rj,"property");var Hx=rj;function oj(e){return typeof e=="function"?e:e==null?Or:typeof e=="object"?J(e)?Wx(e[0],e[1]):Dx(e):Hx(e)}r(oj,"baseIteratee");var Ir=oj;function nj(e){return function(t,o,n){for(var a=-1,s=Object(t),l=n(t),c=l.length;c--;){var p=l[e?c:++a];if(o(s[p],p,s)===!1)break}return t}}r(nj,"createBaseFor");var zx=nj;var aj=zx(),Jx=aj;function ij(e,t){return e&&Jx(e,t,Gt)}r(ij,"baseForOwn");var Xx=ij;function sj(e,t){return function(o,n){if(o==null)return o;if(!ot(o))return e(o,n);for(var a=o.length,s=t?a:-1,l=Object(o);(t?s--:++s<a)&&n(l[s],s,l)!==!1;);return o}}r(sj,"createBaseEach");var Qx=sj;var lj=Qx(Xx),vr=lj;function cj(e){return typeof e=="function"?e:Or}r(cj,"castFunction");var Zx=cj;function pj(e,t){var o=J(e)?Sg:vr;return o(e,Zx(t))}r(pj,"forEach");var Wd=pj;function uj(e,t){for(var o=-1,n=e==null?0:e.length;++o<n;)if(!t(e[o],o,e))return!1;return!0}r(uj,"arrayEvery");var $x=uj;function fj(e,t){var o=!0;return vr(e,function(n,a,s){return o=!!t(n,a,s),o}),o}r(fj,"baseEvery");var eA=fj;function mj(e,t,o){var n=J(e)?$x:eA;return o&&Yo(e,t,o)&&(t=void 0),n(e,Ir(t,3))}r(mj,"every");var Kd=mj;function dj(e,t){var o=-1,n=ot(e)?Array(e.length):[];return vr(e,function(a,s,l){n[++o]=t(a,s,l)}),n}r(dj,"baseMap");var tA=dj;function hj(e,t){var o=J(e)?kr:tA;return o(e,Ir(t,3))}r(hj,"map");var Cs=hj;var Tj="[object String]";function Ej(e){return typeof e=="string"||!J(e)&&ze(e)&&He(e)==Tj}r(Ej,"isString");var no=Ej;function Sj(e,t){return kr(t,function(o){return e[o]})}r(Sj,"baseValues");var rA=Sj;function gj(e){return e==null?[]:rA(e,Gt(e))}r(gj,"values");var oA=gj;var xj=Math.max;function Aj(e,t,o,n){e=ot(e)?e:oA(e),o=o&&!n?lg(o):0;var a=e.length;return o<0&&(o=xj(a+o,0)),no(e)?o<=a&&e.indexOf(t,o)>-1:!!a&&Ug(e,t,o)>-1}r(Aj,"includes");var Yd=Aj;var Uj="[object RegExp]";function Rj(e){return ze(e)&&He(e)==Uj}r(Rj,"baseIsRegExp");var nA=Rj;var aA=zo&&zo.isRegExp,Lj=aA?cs(aA):nA,Hd=Lj;function kj(e,t,o,n){if(!De(e))return e;t=Fr(t,e);for(var a=-1,s=t.length,l=s-1,c=e;c!=null&&++a<s;){var p=Dt(t[a]),f=o;if(p==="__proto__"||p==="constructor"||p==="prototype")return e;if(a!=l){var d=c[p];f=n?n(d,p,c):void 0,f===void 0&&(f=De(d)?d:Cr(t[a+1])?[]:{})}Wo(c,p,f),c=c[p]}return e}r(kj,"baseSet");var iA=kj;function Oj(e,t,o){for(var n=-1,a=t.length,s={};++n<a;){var l=t[n],c=$o(e,l);o(c,l)&&iA(s,Fr(l,e),c)}return s}r(Oj,"basePickBy");var sA=Oj;function Cj(e,t){if(e==null)return{};var o=kr(Sx(e),function(n){return[n]});return t=Ir(t),sA(e,o,function(n,a){return t(n,a[0])})}r(Cj,"pickBy");var St=Cj;function Nj(e,t){var o;return vr(e,function(n,a,s){return o=t(n,a,s),!o}),!!o}r(Nj,"baseSome");var lA=Nj;function yj(e,t,o){var n=J(e)?As:lA;return o&&Yo(e,t,o)&&(t=void 0),n(e,Ir(t,3))}r(yj,"some");var zd=yj;function bj(e){return _j(e)?e.LABEL:e.name}r(bj,"tokenLabel");function _j(e){return no(e.LABEL)&&e.LABEL!==""}r(_j,"hasTokenLabel");var pt=class{static{r(this,"AbstractProduction")}get definition(){return this._definition}set definition(t){this._definition=t}constructor(t){this._definition=t}accept(t){t.visit(this),Wd(this.definition,o=>{o.accept(t)})}},$=class extends pt{static{r(this,"NonTerminal")}constructor(t){super([]),this.idx=1,Et(this,St(t,o=>o!==void 0))}set definition(t){}get definition(){return this.referencedRule!==void 0?this.referencedRule.definition:[]}accept(t){t.visit(this)}},Je=class extends pt{static{r(this,"Rule")}constructor(t){super(t.definition),this.orgText="",Et(this,St(t,o=>o!==void 0))}},ee=class extends pt{static{r(this,"Alternative")}constructor(t){super(t.definition),this.ignoreAmbiguities=!1,Et(this,St(t,o=>o!==void 0))}},ne=class extends pt{static{r(this,"Option")}constructor(t){super(t.definition),this.idx=1,Et(this,St(t,o=>o!==void 0))}},Se=class extends pt{static{r(this,"RepetitionMandatory")}constructor(t){super(t.definition),this.idx=1,Et(this,St(t,o=>o!==void 0))}},ge=class extends pt{static{r(this,"RepetitionMandatoryWithSeparator")}constructor(t){super(t.definition),this.idx=1,Et(this,St(t,o=>o!==void 0))}},K=class extends pt{static{r(this,"Repetition")}constructor(t){super(t.definition),this.idx=1,Et(this,St(t,o=>o!==void 0))}},de=class extends pt{static{r(this,"RepetitionWithSeparator")}constructor(t){super(t.definition),this.idx=1,Et(this,St(t,o=>o!==void 0))}},he=class extends pt{static{r(this,"Alternation")}get definition(){return this._definition}set definition(t){this._definition=t}constructor(t){super(t.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,Et(this,St(t,o=>o!==void 0))}},q=class{static{r(this,"Terminal")}constructor(t){this.idx=1,Et(this,St(t,o=>o!==void 0))}accept(t){t.visit(this)}};function Ns(e){return Cs(e,rn)}r(Ns,"serializeGrammar");function rn(e){function t(o){return Cs(o,rn)}if(r(t,"convertDefinition"),e instanceof $){let o={type:"NonTerminal",name:e.nonTerminalName,idx:e.idx};return no(e.label)&&(o.label=e.label),o}else{if(e instanceof ee)return{type:"Alternative",definition:t(e.definition)};if(e instanceof ne)return{type:"Option",idx:e.idx,definition:t(e.definition)};if(e instanceof Se)return{type:"RepetitionMandatory",idx:e.idx,definition:t(e.definition)};if(e instanceof ge)return{type:"RepetitionMandatoryWithSeparator",idx:e.idx,separator:rn(new q({terminalType:e.separator})),definition:t(e.definition)};if(e instanceof de)return{type:"RepetitionWithSeparator",idx:e.idx,separator:rn(new q({terminalType:e.separator})),definition:t(e.definition)};if(e instanceof K)return{type:"Repetition",idx:e.idx,definition:t(e.definition)};if(e instanceof he)return{type:"Alternation",idx:e.idx,definition:t(e.definition)};if(e instanceof q){let o={type:"Terminal",name:e.terminalType.name,label:bj(e.terminalType),idx:e.idx};no(e.label)&&(o.terminalLabel=e.label);let n=e.terminalType.PATTERN;return e.terminalType.PATTERN&&(o.pattern=Hd(n)?n.source:n),o}else{if(e instanceof Je)return{type:"Rule",name:e.name,orgText:e.orgText,definition:t(e.definition)};throw Error("non exhaustive match")}}}r(rn,"serializeProduction");var Xe=class{static{r(this,"GAstVisitor")}visit(t){let o=t;switch(o.constructor){case $:return this.visitNonTerminal(o);case ee:return this.visitAlternative(o);case ne:return this.visitOption(o);case Se:return this.visitRepetitionMandatory(o);case ge:return this.visitRepetitionMandatoryWithSeparator(o);case de:return this.visitRepetitionWithSeparator(o);case K:return this.visitRepetition(o);case he:return this.visitAlternation(o);case q:return this.visitTerminal(o);case Je:return this.visitRule(o);default:throw Error("non exhaustive match")}}visitNonTerminal(t){}visitAlternative(t){}visitOption(t){}visitRepetition(t){}visitRepetitionMandatory(t){}visitRepetitionMandatoryWithSeparator(t){}visitRepetitionWithSeparator(t){}visitAlternation(t){}visitTerminal(t){}visitRule(t){}};function Jd(e){return e instanceof ee||e instanceof ne||e instanceof K||e instanceof Se||e instanceof ge||e instanceof de||e instanceof q||e instanceof Je}r(Jd,"isSequenceProd");function ao(e,t=[]){return e instanceof ne||e instanceof K||e instanceof de?!0:e instanceof he?zd(e.definition,n=>ao(n,t)):e instanceof $&&Yd(t,e)?!1:e instanceof pt?(e instanceof $&&t.push(e),Kd(e.definition,n=>ao(n,t))):!1}r(ao,"isOptionalProd");function Xd(e){return e instanceof he}r(Xd,"isBranchingProd");function nt(e){if(e instanceof $)return"SUBRULE";if(e instanceof ne)return"OPTION";if(e instanceof he)return"OR";if(e instanceof Se)return"AT_LEAST_ONE";if(e instanceof ge)return"AT_LEAST_ONE_SEP";if(e instanceof de)return"MANY_SEP";if(e instanceof K)return"MANY";if(e instanceof q)return"CONSUME";throw Error("non exhaustive match")}r(nt,"getProductionDslName");var $t=class{static{r(this,"RestWalker")}walk(t,o=[]){_(t.definition,(n,a)=>{let s=Ee(t.definition,a+1);if(n instanceof $)this.walkProdRef(n,s,o);else if(n instanceof q)this.walkTerminal(n,s,o);else if(n instanceof ee)this.walkFlat(n,s,o);else if(n instanceof ne)this.walkOption(n,s,o);else if(n instanceof Se)this.walkAtLeastOne(n,s,o);else if(n instanceof ge)this.walkAtLeastOneSep(n,s,o);else if(n instanceof de)this.walkManySep(n,s,o);else if(n instanceof K)this.walkMany(n,s,o);else if(n instanceof he)this.walkOr(n,s,o);else throw Error("non exhaustive match")})}walkTerminal(t,o,n){}walkProdRef(t,o,n){}walkFlat(t,o,n){let a=o.concat(n);this.walk(t,a)}walkOption(t,o,n){let a=o.concat(n);this.walk(t,a)}walkAtLeastOne(t,o,n){let a=[new ne({definition:t.definition})].concat(o,n);this.walk(t,a)}walkAtLeastOneSep(t,o,n){let a=cA(t,o,n);this.walk(t,a)}walkMany(t,o,n){let a=[new ne({definition:t.definition})].concat(o,n);this.walk(t,a)}walkManySep(t,o,n){let a=cA(t,o,n);this.walk(t,a)}walkOr(t,o,n){let a=o.concat(n);_(t.definition,s=>{let l=new ee({definition:[s]});this.walk(l,a)})}};function cA(e,t,o){return[new ne({definition:[new q({terminalType:e.separator})].concat(e.definition)})].concat(t,o)}r(cA,"restForRepetitionWithSeparator");function io(e){if(e instanceof $)return io(e.referencedRule);if(e instanceof q)return Ij(e);if(Jd(e))return Mj(e);if(Xd(e))return Fj(e);throw Error("non exhaustive match")}r(io,"first");function Mj(e){let t=[],o=e.definition,n=0,a=o.length>n,s,l=!0;for(;a&&l;)s=o[n],l=ao(s),t=t.concat(io(s)),n=n+1,a=o.length>n;return Vo(t)}r(Mj,"firstForSequence");function Fj(e){let t=b(e.definition,o=>io(o));return Vo(Ne(t))}r(Fj,"firstForBranching");function Ij(e){return[e.terminalType]}r(Ij,"firstForTerminal");var ys="_~IN~_";var Qd=class extends $t{static{r(this,"ResyncFollowsWalker")}constructor(t){super(),this.topProd=t,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(t,o,n){}walkProdRef(t,o,n){let a=vj(t.referencedRule,t.idx)+this.topProd.name,s=o.concat(n),l=new ee({definition:s}),c=io(l);this.follows[a]=c}};function pA(e){let t={};return _(e,o=>{let n=new Qd(o).startWalking();Lo(t,n)}),t}r(pA,"computeAllProdsFollows");function vj(e,t){return e.name+t+ys}r(vj,"buildBetweenProdsFollowPrefix");function w(e){return e.charCodeAt(0)}r(w,"cc");function bs(e,t){Array.isArray(e)?e.forEach(function(o){t.push(o)}):t.push(e)}r(bs,"insertToSet");function on(e,t){if(e[t]===!0)throw"duplicate flag "+t;let o=e[t];e[t]=!0}r(on,"addFlag");function so(e){if(e===void 0)throw Error("Internal Error - Should never get here!");return!0}r(so,"ASSERT_EXISTS");function va(){throw Error("Internal Error - Should never get here!")}r(va,"ASSERT_NEVER_REACH_HERE");function Zd(e){return e.type==="Character"}r(Zd,"isCharacter");var wa=[];for(let e=w("0");e<=w("9");e++)wa.push(e);var Pa=[w("_")].concat(wa);for(let e=w("a");e<=w("z");e++)Pa.push(e);for(let e=w("A");e<=w("Z");e++)Pa.push(e);var $d=[w(" "),w("\f"),w(`
2
- `),w("\r"),w(" "),w("\v"),w(" "),w("\xA0"),w("\u1680"),w("\u2000"),w("\u2001"),w("\u2002"),w("\u2003"),w("\u2004"),w("\u2005"),w("\u2006"),w("\u2007"),w("\u2008"),w("\u2009"),w("\u200A"),w("\u2028"),w("\u2029"),w("\u202F"),w("\u205F"),w("\u3000"),w("\uFEFF")];var wj=/[0-9a-fA-F]/,_s=/[0-9]/,Pj=/[1-9]/,Ba=class{static{r(this,"RegExpParser")}constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(t){this.idx=t.idx,this.input=t.input,this.groupIdx=t.groupIdx}pattern(t){this.idx=0,this.input=t,this.groupIdx=0,this.consumeChar("/");let o=this.disjunction();this.consumeChar("/");let n={type:"Flags",loc:{begin:this.idx,end:t.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":on(n,"global");break;case"i":on(n,"ignoreCase");break;case"m":on(n,"multiLine");break;case"u":on(n,"unicode");break;case"y":on(n,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:n,value:o,loc:this.loc(0)}}disjunction(){let t=[],o=this.idx;for(t.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),t.push(this.alternative());return{type:"Disjunction",value:t,loc:this.loc(o)}}alternative(){let t=[],o=this.idx;for(;this.isTerm();)t.push(this.term());return{type:"Alternative",value:t,loc:this.loc(o)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){let t=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(t)};case"$":return{type:"EndAnchor",loc:this.loc(t)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(t)};case"B":return{type:"NonWordBoundary",loc:this.loc(t)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let o;switch(this.popChar()){case"=":o="Lookahead";break;case"!":o="NegativeLookahead";break;case"<":{switch(this.popChar()){case"=":o="Lookbehind";break;case"!":o="NegativeLookbehind"}break}}so(o);let n=this.disjunction();return this.consumeChar(")"),{type:o,value:n,loc:this.loc(t)}}return va()}quantifier(t=!1){let o,n=this.idx;switch(this.popChar()){case"*":o={atLeast:0,atMost:1/0};break;case"+":o={atLeast:1,atMost:1/0};break;case"?":o={atLeast:0,atMost:1};break;case"{":let a=this.integerIncludingZero();switch(this.popChar()){case"}":o={atLeast:a,atMost:a};break;case",":let s;this.isDigit()?(s=this.integerIncludingZero(),o={atLeast:a,atMost:s}):o={atLeast:a,atMost:1/0},this.consumeChar("}");break}if(t===!0&&o===void 0)return;so(o);break}if(!(t===!0&&o===void 0)&&so(o))return this.peekChar(0)==="?"?(this.consumeChar("?"),o.greedy=!1):o.greedy=!0,o.type="Quantifier",o.loc=this.loc(n),o}atom(){let t,o=this.idx;switch(this.peekChar()){case".":t=this.dotAll();break;case"\\":t=this.atomEscape();break;case"[":t=this.characterClass();break;case"(":t=this.group();break}return t===void 0&&this.isPatternCharacter()&&(t=this.patternCharacter()),so(t)?(t.loc=this.loc(o),this.isQuantifier()&&(t.quantifier=this.quantifier()),t):va()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[w(`
3
- `),w("\r"),w("\u2028"),w("\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 t,o=!1;switch(this.popChar()){case"d":t=wa;break;case"D":t=wa,o=!0;break;case"s":t=$d;break;case"S":t=$d,o=!0;break;case"w":t=Pa;break;case"W":t=Pa,o=!0;break}return so(t)?{type:"Set",value:t,complement:o}:va()}controlEscapeAtom(){let t;switch(this.popChar()){case"f":t=w("\f");break;case"n":t=w(`
4
- `);break;case"r":t=w("\r");break;case"t":t=w(" ");break;case"v":t=w("\v");break}return so(t)?{type:"Character",value:t}:va()}controlLetterEscapeAtom(){this.consumeChar("c");let t=this.popChar();if(/[a-zA-Z]/.test(t)===!1)throw Error("Invalid ");return{type:"Character",value:t.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:w("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){let t=this.popChar();return{type:"Character",value:w(t)}}classPatternCharacterAtom(){switch(this.peekChar()){case`
5
- `:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:let t=this.popChar();return{type:"Character",value:w(t)}}}characterClass(){let t=[],o=!1;for(this.consumeChar("["),this.peekChar(0)==="^"&&(this.consumeChar("^"),o=!0);this.isClassAtom();){let n=this.classAtom(),a=n.type==="Character";if(Zd(n)&&this.isRangeDash()){this.consumeChar("-");let s=this.classAtom(),l=s.type==="Character";if(Zd(s)){if(s.value<n.value)throw Error("Range out of order in character class");t.push({from:n.value,to:s.value})}else bs(n.value,t),t.push(w("-")),bs(s.value,t)}else bs(n.value,t)}return this.consumeChar("]"),{type:"Set",complement:o,value:t}}classAtom(){switch(this.peekChar()){case"]":case`
6
- `: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:w("\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 t=!0;switch(this.consumeChar("("),this.peekChar(0)){case"?":this.consumeChar("?"),this.consumeChar(":"),t=!1;break;default:this.groupIdx++;break}let o=this.disjunction();this.consumeChar(")");let n={type:"Group",capturing:t,value:o};return t&&(n.idx=this.groupIdx),n}positiveInteger(){let t=this.popChar();if(Pj.test(t)===!1)throw Error("Expecting a positive integer");for(;_s.test(this.peekChar(0));)t+=this.popChar();return parseInt(t,10)}integerIncludingZero(){let t=this.popChar();if(_s.test(t)===!1)throw Error("Expecting an integer");for(;_s.test(this.peekChar(0));)t+=this.popChar();return parseInt(t,10)}patternCharacter(){let t=this.popChar();switch(t){case`
7
- `: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:w(t)}}}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 _s.test(this.peekChar(0))}isClassAtom(t=0){switch(this.peekChar(t)){case"]":case`
1
+ (()=>{var Ex=Object.defineProperty;var r=(e,t)=>Ex(e,"name",{value:t,configurable:!0});var hx=typeof global=="object"&&global&&global.Object===Object&&global,ea=hx;var Sx=typeof self=="object"&&self&&self.Object===Object&&self,Ax=ea||Sx||Function("return this")(),he=Ax;var Ux=he.Symbol,Ne=Ux;var cf=Object.prototype,gx=cf.hasOwnProperty,kx=cf.toString,rn=Ne?Ne.toStringTag:void 0;function Rx(e){var t=gx.call(e,rn),o=e[rn];try{e[rn]=void 0;var n=!0}catch{}var i=kx.call(e);return n&&(t?e[rn]=o:delete e[rn]),i}r(Rx,"getRawTag");var lf=Rx;var Lx=Object.prototype,xx=Lx.toString;function Cx(e){return xx.call(e)}r(Cx,"objectToString");var uf=Cx;var Ox="[object Null]",Nx="[object Undefined]",pf=Ne?Ne.toStringTag:void 0;function bx(e){return e==null?e===void 0?Nx:Ox:pf&&pf in Object(e)?lf(e):uf(e)}r(bx,"baseGetTag");var Fe=bx;function yx(e){return e!=null&&typeof e=="object"}r(yx,"isObjectLike");var ie=yx;var Mx="[object Symbol]";function Fx(e){return typeof e=="symbol"||ie(e)&&Fe(e)==Mx}r(Fx,"isSymbol");var Vt=Fx;function _x(e,t){for(var o=-1,n=e==null?0:e.length,i=Array(n);++o<n;)i[o]=t(e[o],o,e);return i}r(_x,"arrayMap");var dt=_x;var Ix=Array.isArray,b=Ix;var vx=1/0,mf=Ne?Ne.prototype:void 0,ff=mf?mf.toString:void 0;function df(e){if(typeof e=="string")return e;if(b(e))return dt(e,df)+"";if(Vt(e))return ff?ff.call(e):"";var t=e+"";return t=="0"&&1/e==-vx?"-0":t}r(df,"baseToString");var Tf=df;var wx=/\s/;function Bx(e){for(var t=e.length;t--&&wx.test(e.charAt(t)););return t}r(Bx,"trimmedEndIndex");var Ef=Bx;var Px=/^\s+/;function Gx(e){return e&&e.slice(0,Ef(e)+1).replace(Px,"")}r(Gx,"baseTrim");var hf=Gx;function Dx(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}r(Dx,"isObject");var se=Dx;var Sf=NaN,Vx=/^[-+]0x[0-9a-f]+$/i,qx=/^0b[01]+$/i,jx=/^0o[0-7]+$/i,Wx=parseInt;function Yx(e){if(typeof e=="number")return e;if(Vt(e))return Sf;if(se(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=se(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=hf(e);var o=qx.test(e);return o||jx.test(e)?Wx(e.slice(2),o?2:8):Vx.test(e)?Sf:+e}r(Yx,"toNumber");var Af=Yx;var Uf=1/0,Kx=17976931348623157e292;function Hx(e){if(!e)return e===0?e:0;if(e=Af(e),e===Uf||e===-Uf){var t=e<0?-1:1;return t*Kx}return e===e?e:0}r(Hx,"toFinite");var gf=Hx;function zx(e){var t=gf(e),o=t%1;return t===t?o?t-o:t:0}r(zx,"toInteger");var Tt=zx;function Jx(e){return e}r(Jx,"identity");var rt=Jx;var Xx="[object AsyncFunction]",Qx="[object Function]",Zx="[object GeneratorFunction]",$x="[object Proxy]";function eC(e){if(!se(e))return!1;var t=Fe(e);return t==Qx||t==Zx||t==Xx||t==$x}r(eC,"isFunction");var De=eC;var tC=he["__core-js_shared__"],ta=tC;var kf=(function(){var e=/[^.]+$/.exec(ta&&ta.keys&&ta.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""})();function rC(e){return!!kf&&kf in e}r(rC,"isMasked");var Rf=rC;var oC=Function.prototype,nC=oC.toString;function aC(e){if(e!=null){try{return nC.call(e)}catch{}try{return e+""}catch{}}return""}r(aC,"toSource");var bt=aC;var iC=/[\\^$.*+?()[\]{}|]/g,sC=/^\[object .+?Constructor\]$/,cC=Function.prototype,lC=Object.prototype,uC=cC.toString,pC=lC.hasOwnProperty,mC=RegExp("^"+uC.call(pC).replace(iC,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function fC(e){if(!se(e)||Rf(e))return!1;var t=De(e)?mC:sC;return t.test(bt(e))}r(fC,"baseIsNative");var Lf=fC;function dC(e,t){return e?.[t]}r(dC,"getValue");var xf=dC;function TC(e,t){var o=xf(e,t);return Lf(o)?o:void 0}r(TC,"getNative");var Ye=TC;var EC=Ye(he,"WeakMap"),ra=EC;var Cf=Object.create,hC=(function(){function e(){}return r(e,"object"),function(t){if(!se(t))return{};if(Cf)return Cf(t);e.prototype=t;var o=new e;return e.prototype=void 0,o}})(),Of=hC;function SC(e,t,o){switch(o.length){case 0:return e.call(t);case 1:return e.call(t,o[0]);case 2:return e.call(t,o[0],o[1]);case 3:return e.call(t,o[0],o[1],o[2])}return e.apply(t,o)}r(SC,"apply");var Nf=SC;function AC(){}r(AC,"noop");var ce=AC;function UC(e,t){var o=-1,n=e.length;for(t||(t=Array(n));++o<n;)t[o]=e[o];return t}r(UC,"copyArray");var bf=UC;var gC=800,kC=16,RC=Date.now;function LC(e){var t=0,o=0;return function(){var n=RC(),i=kC-(n-o);if(o=n,i>0){if(++t>=gC)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}r(LC,"shortOut");var yf=LC;function xC(e){return function(){return e}}r(xC,"constant");var Mf=xC;var CC=(function(){try{var e=Ye(Object,"defineProperty");return e({},"",{}),e}catch{}})(),xr=CC;var OC=xr?function(e,t){return xr(e,"toString",{configurable:!0,enumerable:!1,value:Mf(t),writable:!0})}:rt,Ff=OC;var NC=yf(Ff),_f=NC;function bC(e,t){for(var o=-1,n=e==null?0:e.length;++o<n&&t(e[o],o,e)!==!1;);return e}r(bC,"arrayEach");var oa=bC;function yC(e,t,o,n){for(var i=e.length,s=o+(n?1:-1);n?s--:++s<i;)if(t(e[s],s,e))return s;return-1}r(yC,"baseFindIndex");var na=yC;function MC(e){return e!==e}r(MC,"baseIsNaN");var If=MC;function FC(e,t,o){for(var n=o-1,i=e.length;++n<i;)if(e[n]===t)return n;return-1}r(FC,"strictIndexOf");var vf=FC;function _C(e,t,o){return t===t?vf(e,t,o):na(e,If,o)}r(_C,"baseIndexOf");var Cr=_C;function IC(e,t){var o=e==null?0:e.length;return!!o&&Cr(e,t,0)>-1}r(IC,"arrayIncludes");var aa=IC;var vC=9007199254740991,wC=/^(?:0|[1-9]\d*)$/;function BC(e,t){var o=typeof e;return t=t??vC,!!t&&(o=="number"||o!="symbol"&&wC.test(e))&&e>-1&&e%1==0&&e<t}r(BC,"isIndex");var qt=BC;function PC(e,t,o){t=="__proto__"&&xr?xr(e,t,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[t]=o}r(PC,"baseAssignValue");var Or=PC;function GC(e,t){return e===t||e!==e&&t!==t}r(GC,"eq");var Et=GC;var DC=Object.prototype,VC=DC.hasOwnProperty;function qC(e,t,o){var n=e[t];(!(VC.call(e,t)&&Et(n,o))||o===void 0&&!(t in e))&&Or(e,t,o)}r(qC,"assignValue");var jt=qC;function jC(e,t,o,n){var i=!o;o||(o={});for(var s=-1,c=t.length;++s<c;){var l=t[s],p=n?n(o[l],e[l],l,o,e):void 0;p===void 0&&(p=e[l]),i?Or(o,l,p):jt(o,l,p)}return o}r(jC,"copyObject");var ht=jC;var wf=Math.max;function WC(e,t,o){return t=wf(t===void 0?e.length-1:t,0),function(){for(var n=arguments,i=-1,s=wf(n.length-t,0),c=Array(s);++i<s;)c[i]=n[t+i];i=-1;for(var l=Array(t+1);++i<t;)l[i]=n[i];return l[t]=o(c),Nf(e,this,l)}}r(WC,"overRest");var Bf=WC;function YC(e,t){return _f(Bf(e,t,rt),e+"")}r(YC,"baseRest");var Wt=YC;var KC=9007199254740991;function HC(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=KC}r(HC,"isLength");var Nr=HC;function zC(e){return e!=null&&Nr(e.length)&&!De(e)}r(zC,"isArrayLike");var Se=zC;function JC(e,t,o){if(!se(o))return!1;var n=typeof t;return(n=="number"?Se(o)&&qt(t,o.length):n=="string"&&t in o)?Et(o[t],e):!1}r(JC,"isIterateeCall");var Yt=JC;function XC(e){return Wt(function(t,o){var n=-1,i=o.length,s=i>1?o[i-1]:void 0,c=i>2?o[2]:void 0;for(s=e.length>3&&typeof s=="function"?(i--,s):void 0,c&&Yt(o[0],o[1],c)&&(s=i<3?void 0:s,i=1),t=Object(t);++n<i;){var l=o[n];l&&e(t,l,n,s)}return t})}r(XC,"createAssigner");var Pf=XC;var QC=Object.prototype;function ZC(e){var t=e&&e.constructor,o=typeof t=="function"&&t.prototype||QC;return e===o}r(ZC,"isPrototype");var St=ZC;function $C(e,t){for(var o=-1,n=Array(e);++o<e;)n[o]=t(o);return n}r($C,"baseTimes");var Gf=$C;var eO="[object Arguments]";function tO(e){return ie(e)&&Fe(e)==eO}r(tO,"baseIsArguments");var nm=tO;var Df=Object.prototype,rO=Df.hasOwnProperty,oO=Df.propertyIsEnumerable,nO=nm((function(){return arguments})())?nm:function(e){return ie(e)&&rO.call(e,"callee")&&!oO.call(e,"callee")},Kt=nO;function aO(){return!1}r(aO,"stubFalse");var Vf=aO;var Wf=typeof exports=="object"&&exports&&!exports.nodeType&&exports,qf=Wf&&typeof module=="object"&&module&&!module.nodeType&&module,iO=qf&&qf.exports===Wf,jf=iO?he.Buffer:void 0,sO=jf?jf.isBuffer:void 0,cO=sO||Vf,yt=cO;var lO="[object Arguments]",uO="[object Array]",pO="[object Boolean]",mO="[object Date]",fO="[object Error]",dO="[object Function]",TO="[object Map]",EO="[object Number]",hO="[object Object]",SO="[object RegExp]",AO="[object Set]",UO="[object String]",gO="[object WeakMap]",kO="[object ArrayBuffer]",RO="[object DataView]",LO="[object Float32Array]",xO="[object Float64Array]",CO="[object Int8Array]",OO="[object Int16Array]",NO="[object Int32Array]",bO="[object Uint8Array]",yO="[object Uint8ClampedArray]",MO="[object Uint16Array]",FO="[object Uint32Array]",ee={};ee[LO]=ee[xO]=ee[CO]=ee[OO]=ee[NO]=ee[bO]=ee[yO]=ee[MO]=ee[FO]=!0;ee[lO]=ee[uO]=ee[kO]=ee[pO]=ee[RO]=ee[mO]=ee[fO]=ee[dO]=ee[TO]=ee[EO]=ee[hO]=ee[SO]=ee[AO]=ee[UO]=ee[gO]=!1;function _O(e){return ie(e)&&Nr(e.length)&&!!ee[Fe(e)]}r(_O,"baseIsTypedArray");var Yf=_O;function IO(e){return function(t){return e(t)}}r(IO,"baseUnary");var At=IO;var Kf=typeof exports=="object"&&exports&&!exports.nodeType&&exports,on=Kf&&typeof module=="object"&&module&&!module.nodeType&&module,vO=on&&on.exports===Kf,am=vO&&ea.process,wO=(function(){try{var e=on&&on.require&&on.require("util").types;return e||am&&am.binding&&am.binding("util")}catch{}})(),ot=wO;var Hf=ot&&ot.isTypedArray,BO=Hf?At(Hf):Yf,br=BO;var PO=Object.prototype,GO=PO.hasOwnProperty;function DO(e,t){var o=b(e),n=!o&&Kt(e),i=!o&&!n&&yt(e),s=!o&&!n&&!i&&br(e),c=o||n||i||s,l=c?Gf(e.length,String):[],p=l.length;for(var f in e)(t||GO.call(e,f))&&!(c&&(f=="length"||i&&(f=="offset"||f=="parent")||s&&(f=="buffer"||f=="byteLength"||f=="byteOffset")||qt(f,p)))&&l.push(f);return l}r(DO,"arrayLikeKeys");var ia=DO;function VO(e,t){return function(o){return e(t(o))}}r(VO,"overArg");var sa=VO;var qO=sa(Object.keys,Object),zf=qO;var jO=Object.prototype,WO=jO.hasOwnProperty;function YO(e){if(!St(e))return zf(e);var t=[];for(var o in Object(e))WO.call(e,o)&&o!="constructor"&&t.push(o);return t}r(YO,"baseKeys");var ca=YO;function KO(e){return Se(e)?ia(e):ca(e)}r(KO,"keys");var W=KO;var HO=Object.prototype,zO=HO.hasOwnProperty,JO=Pf(function(e,t){if(St(t)||Se(t)){ht(t,W(t),e);return}for(var o in t)zO.call(t,o)&&jt(e,o,t[o])}),_e=JO;function XO(e){var t=[];if(e!=null)for(var o in Object(e))t.push(o);return t}r(XO,"nativeKeysIn");var Jf=XO;var QO=Object.prototype,ZO=QO.hasOwnProperty;function $O(e){if(!se(e))return Jf(e);var t=St(e),o=[];for(var n in e)n=="constructor"&&(t||!ZO.call(e,n))||o.push(n);return o}r($O,"baseKeysIn");var Xf=$O;function eN(e){return Se(e)?ia(e,!0):Xf(e)}r(eN,"keysIn");var Ht=eN;var tN=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,rN=/^\w*$/;function oN(e,t){if(b(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||Vt(e)?!0:rN.test(e)||!tN.test(e)||t!=null&&e in Object(t)}r(oN,"isKey");var yr=oN;var nN=Ye(Object,"create"),Mt=nN;function aN(){this.__data__=Mt?Mt(null):{},this.size=0}r(aN,"hashClear");var Qf=aN;function iN(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}r(iN,"hashDelete");var Zf=iN;var sN="__lodash_hash_undefined__",cN=Object.prototype,lN=cN.hasOwnProperty;function uN(e){var t=this.__data__;if(Mt){var o=t[e];return o===sN?void 0:o}return lN.call(t,e)?t[e]:void 0}r(uN,"hashGet");var $f=uN;var pN=Object.prototype,mN=pN.hasOwnProperty;function fN(e){var t=this.__data__;return Mt?t[e]!==void 0:mN.call(t,e)}r(fN,"hashHas");var ed=fN;var dN="__lodash_hash_undefined__";function TN(e,t){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=Mt&&t===void 0?dN:t,this}r(TN,"hashSet");var td=TN;function Mr(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}r(Mr,"Hash");Mr.prototype.clear=Qf;Mr.prototype.delete=Zf;Mr.prototype.get=$f;Mr.prototype.has=ed;Mr.prototype.set=td;var im=Mr;function EN(){this.__data__=[],this.size=0}r(EN,"listCacheClear");var rd=EN;function hN(e,t){for(var o=e.length;o--;)if(Et(e[o][0],t))return o;return-1}r(hN,"assocIndexOf");var zt=hN;var SN=Array.prototype,AN=SN.splice;function UN(e){var t=this.__data__,o=zt(t,e);if(o<0)return!1;var n=t.length-1;return o==n?t.pop():AN.call(t,o,1),--this.size,!0}r(UN,"listCacheDelete");var od=UN;function gN(e){var t=this.__data__,o=zt(t,e);return o<0?void 0:t[o][1]}r(gN,"listCacheGet");var nd=gN;function kN(e){return zt(this.__data__,e)>-1}r(kN,"listCacheHas");var ad=kN;function RN(e,t){var o=this.__data__,n=zt(o,e);return n<0?(++this.size,o.push([e,t])):o[n][1]=t,this}r(RN,"listCacheSet");var id=RN;function Fr(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}r(Fr,"ListCache");Fr.prototype.clear=rd;Fr.prototype.delete=od;Fr.prototype.get=nd;Fr.prototype.has=ad;Fr.prototype.set=id;var Jt=Fr;var LN=Ye(he,"Map"),Xt=LN;function xN(){this.size=0,this.__data__={hash:new im,map:new(Xt||Jt),string:new im}}r(xN,"mapCacheClear");var sd=xN;function CN(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}r(CN,"isKeyable");var cd=CN;function ON(e,t){var o=e.__data__;return cd(t)?o[typeof t=="string"?"string":"hash"]:o.map}r(ON,"getMapData");var Qt=ON;function NN(e){var t=Qt(this,e).delete(e);return this.size-=t?1:0,t}r(NN,"mapCacheDelete");var ld=NN;function bN(e){return Qt(this,e).get(e)}r(bN,"mapCacheGet");var ud=bN;function yN(e){return Qt(this,e).has(e)}r(yN,"mapCacheHas");var pd=yN;function MN(e,t){var o=Qt(this,e),n=o.size;return o.set(e,t),this.size+=o.size==n?0:1,this}r(MN,"mapCacheSet");var md=MN;function _r(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}r(_r,"MapCache");_r.prototype.clear=sd;_r.prototype.delete=ld;_r.prototype.get=ud;_r.prototype.has=pd;_r.prototype.set=md;var dr=_r;var FN="Expected a function";function sm(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(FN);var o=r(function(){var n=arguments,i=t?t.apply(this,n):n[0],s=o.cache;if(s.has(i))return s.get(i);var c=e.apply(this,n);return o.cache=s.set(i,c)||s,c},"memoized");return o.cache=new(sm.Cache||dr),o}r(sm,"memoize");sm.Cache=dr;var fd=sm;var _N=500;function IN(e){var t=fd(e,function(n){return o.size===_N&&o.clear(),n}),o=t.cache;return t}r(IN,"memoizeCapped");var dd=IN;var vN=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,wN=/\\(\\)?/g,BN=dd(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(vN,function(o,n,i,s){t.push(i?s.replace(wN,"$1"):n||o)}),t}),Td=BN;function PN(e){return e==null?"":Tf(e)}r(PN,"toString");var Ed=PN;function GN(e,t){return b(e)?e:yr(e,t)?[e]:Td(Ed(e))}r(GN,"castPath");var Zt=GN;var DN=1/0;function VN(e){if(typeof e=="string"||Vt(e))return e;var t=e+"";return t=="0"&&1/e==-DN?"-0":t}r(VN,"toKey");var Ut=VN;function qN(e,t){t=Zt(t,e);for(var o=0,n=t.length;e!=null&&o<n;)e=e[Ut(t[o++])];return o&&o==n?e:void 0}r(qN,"baseGet");var Ir=qN;function jN(e,t,o){var n=e==null?void 0:Ir(e,t);return n===void 0?o:n}r(jN,"get");var Tr=jN;function WN(e,t){for(var o=-1,n=t.length,i=e.length;++o<n;)e[i+o]=t[o];return e}r(WN,"arrayPush");var vr=WN;var hd=Ne?Ne.isConcatSpreadable:void 0;function YN(e){return b(e)||Kt(e)||!!(hd&&e&&e[hd])}r(YN,"isFlattenable");var Sd=YN;function Ad(e,t,o,n,i){var s=-1,c=e.length;for(o||(o=Sd),i||(i=[]);++s<c;){var l=e[s];t>0&&o(l)?t>1?Ad(l,t-1,o,n,i):vr(i,l):n||(i[i.length]=l)}return i}r(Ad,"baseFlatten");var wr=Ad;function KN(e){var t=e==null?0:e.length;return t?wr(e,1):[]}r(KN,"flatten");var xe=KN;var HN=sa(Object.getPrototypeOf,Object),Br=HN;var zN="[object Object]",JN=Function.prototype,XN=Object.prototype,Ud=JN.toString,QN=XN.hasOwnProperty,ZN=Ud.call(Object);function $N(e){if(!ie(e)||Fe(e)!=zN)return!1;var t=Br(e);if(t===null)return!0;var o=QN.call(t,"constructor")&&t.constructor;return typeof o=="function"&&o instanceof o&&Ud.call(o)==ZN}r($N,"isPlainObject");var la=$N;function eb(e,t,o){var n=-1,i=e.length;t<0&&(t=-t>i?0:i+t),o=o>i?i:o,o<0&&(o+=i),i=t>o?0:o-t>>>0,t>>>=0;for(var s=Array(i);++n<i;)s[n]=e[n+t];return s}r(eb,"baseSlice");var ua=eb;function tb(e,t,o,n){var i=-1,s=e==null?0:e.length;for(n&&s&&(o=e[++i]);++i<s;)o=t(o,e[i],i,e);return o}r(tb,"arrayReduce");var gd=tb;function rb(){this.__data__=new Jt,this.size=0}r(rb,"stackClear");var kd=rb;function ob(e){var t=this.__data__,o=t.delete(e);return this.size=t.size,o}r(ob,"stackDelete");var Rd=ob;function nb(e){return this.__data__.get(e)}r(nb,"stackGet");var Ld=nb;function ab(e){return this.__data__.has(e)}r(ab,"stackHas");var xd=ab;var ib=200;function sb(e,t){var o=this.__data__;if(o instanceof Jt){var n=o.__data__;if(!Xt||n.length<ib-1)return n.push([e,t]),this.size=++o.size,this;o=this.__data__=new dr(n)}return o.set(e,t),this.size=o.size,this}r(sb,"stackSet");var Cd=sb;function Pr(e){var t=this.__data__=new Jt(e);this.size=t.size}r(Pr,"Stack");Pr.prototype.clear=kd;Pr.prototype.delete=Rd;Pr.prototype.get=Ld;Pr.prototype.has=xd;Pr.prototype.set=Cd;var $t=Pr;function cb(e,t){return e&&ht(t,W(t),e)}r(cb,"baseAssign");var Od=cb;function lb(e,t){return e&&ht(t,Ht(t),e)}r(lb,"baseAssignIn");var Nd=lb;var Fd=typeof exports=="object"&&exports&&!exports.nodeType&&exports,bd=Fd&&typeof module=="object"&&module&&!module.nodeType&&module,ub=bd&&bd.exports===Fd,yd=ub?he.Buffer:void 0,Md=yd?yd.allocUnsafe:void 0;function pb(e,t){if(t)return e.slice();var o=e.length,n=Md?Md(o):new e.constructor(o);return e.copy(n),n}r(pb,"cloneBuffer");var _d=pb;function mb(e,t){for(var o=-1,n=e==null?0:e.length,i=0,s=[];++o<n;){var c=e[o];t(c,o,e)&&(s[i++]=c)}return s}r(mb,"arrayFilter");var Gr=mb;function fb(){return[]}r(fb,"stubArray");var pa=fb;var db=Object.prototype,Tb=db.propertyIsEnumerable,Id=Object.getOwnPropertySymbols,Eb=Id?function(e){return e==null?[]:(e=Object(e),Gr(Id(e),function(t){return Tb.call(e,t)}))}:pa,Dr=Eb;function hb(e,t){return ht(e,Dr(e),t)}r(hb,"copySymbols");var vd=hb;var Sb=Object.getOwnPropertySymbols,Ab=Sb?function(e){for(var t=[];e;)vr(t,Dr(e)),e=Br(e);return t}:pa,ma=Ab;function Ub(e,t){return ht(e,ma(e),t)}r(Ub,"copySymbolsIn");var wd=Ub;function gb(e,t,o){var n=t(e);return b(e)?n:vr(n,o(e))}r(gb,"baseGetAllKeys");var fa=gb;function kb(e){return fa(e,W,Dr)}r(kb,"getAllKeys");var nn=kb;function Rb(e){return fa(e,Ht,ma)}r(Rb,"getAllKeysIn");var da=Rb;var Lb=Ye(he,"DataView"),Ta=Lb;var xb=Ye(he,"Promise"),Ea=xb;var Cb=Ye(he,"Set"),er=Cb;var Bd="[object Map]",Ob="[object Object]",Pd="[object Promise]",Gd="[object Set]",Dd="[object WeakMap]",Vd="[object DataView]",Nb=bt(Ta),bb=bt(Xt),yb=bt(Ea),Mb=bt(er),Fb=bt(ra),Er=Fe;(Ta&&Er(new Ta(new ArrayBuffer(1)))!=Vd||Xt&&Er(new Xt)!=Bd||Ea&&Er(Ea.resolve())!=Pd||er&&Er(new er)!=Gd||ra&&Er(new ra)!=Dd)&&(Er=r(function(e){var t=Fe(e),o=t==Ob?e.constructor:void 0,n=o?bt(o):"";if(n)switch(n){case Nb:return Vd;case bb:return Bd;case yb:return Pd;case Mb:return Gd;case Fb:return Dd}return t},"getTag"));var st=Er;var _b=Object.prototype,Ib=_b.hasOwnProperty;function vb(e){var t=e.length,o=new e.constructor(t);return t&&typeof e[0]=="string"&&Ib.call(e,"index")&&(o.index=e.index,o.input=e.input),o}r(vb,"initCloneArray");var qd=vb;var wb=he.Uint8Array,Vr=wb;function Bb(e){var t=new e.constructor(e.byteLength);return new Vr(t).set(new Vr(e)),t}r(Bb,"cloneArrayBuffer");var qr=Bb;function Pb(e,t){var o=t?qr(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}r(Pb,"cloneDataView");var jd=Pb;var Gb=/\w*$/;function Db(e){var t=new e.constructor(e.source,Gb.exec(e));return t.lastIndex=e.lastIndex,t}r(Db,"cloneRegExp");var Wd=Db;var Yd=Ne?Ne.prototype:void 0,Kd=Yd?Yd.valueOf:void 0;function Vb(e){return Kd?Object(Kd.call(e)):{}}r(Vb,"cloneSymbol");var Hd=Vb;function qb(e,t){var o=t?qr(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}r(qb,"cloneTypedArray");var zd=qb;var jb="[object Boolean]",Wb="[object Date]",Yb="[object Map]",Kb="[object Number]",Hb="[object RegExp]",zb="[object Set]",Jb="[object String]",Xb="[object Symbol]",Qb="[object ArrayBuffer]",Zb="[object DataView]",$b="[object Float32Array]",ey="[object Float64Array]",ty="[object Int8Array]",ry="[object Int16Array]",oy="[object Int32Array]",ny="[object Uint8Array]",ay="[object Uint8ClampedArray]",iy="[object Uint16Array]",sy="[object Uint32Array]";function cy(e,t,o){var n=e.constructor;switch(t){case Qb:return qr(e);case jb:case Wb:return new n(+e);case Zb:return jd(e,o);case $b:case ey:case ty:case ry:case oy:case ny:case ay:case iy:case sy:return zd(e,o);case Yb:return new n;case Kb:case Jb:return new n(e);case Hb:return Wd(e);case zb:return new n;case Xb:return Hd(e)}}r(cy,"initCloneByTag");var Jd=cy;function ly(e){return typeof e.constructor=="function"&&!St(e)?Of(Br(e)):{}}r(ly,"initCloneObject");var Xd=ly;var uy="[object Map]";function py(e){return ie(e)&&st(e)==uy}r(py,"baseIsMap");var Qd=py;var Zd=ot&&ot.isMap,my=Zd?At(Zd):Qd,$d=my;var fy="[object Set]";function dy(e){return ie(e)&&st(e)==fy}r(dy,"baseIsSet");var eT=dy;var tT=ot&&ot.isSet,Ty=tT?At(tT):eT,rT=Ty;var Ey=1,hy=2,Sy=4,oT="[object Arguments]",Ay="[object Array]",Uy="[object Boolean]",gy="[object Date]",ky="[object Error]",nT="[object Function]",Ry="[object GeneratorFunction]",Ly="[object Map]",xy="[object Number]",aT="[object Object]",Cy="[object RegExp]",Oy="[object Set]",Ny="[object String]",by="[object Symbol]",yy="[object WeakMap]",My="[object ArrayBuffer]",Fy="[object DataView]",_y="[object Float32Array]",Iy="[object Float64Array]",vy="[object Int8Array]",wy="[object Int16Array]",By="[object Int32Array]",Py="[object Uint8Array]",Gy="[object Uint8ClampedArray]",Dy="[object Uint16Array]",Vy="[object Uint32Array]",J={};J[oT]=J[Ay]=J[My]=J[Fy]=J[Uy]=J[gy]=J[_y]=J[Iy]=J[vy]=J[wy]=J[By]=J[Ly]=J[xy]=J[aT]=J[Cy]=J[Oy]=J[Ny]=J[by]=J[Py]=J[Gy]=J[Dy]=J[Vy]=!0;J[ky]=J[nT]=J[yy]=!1;function ha(e,t,o,n,i,s){var c,l=t&Ey,p=t&hy,f=t&Sy;if(o&&(c=i?o(e,n,i,s):o(e)),c!==void 0)return c;if(!se(e))return e;var d=b(e);if(d){if(c=qd(e),!l)return bf(e,c)}else{var T=st(e),S=T==nT||T==Ry;if(yt(e))return _d(e,l);if(T==aT||T==oT||S&&!i){if(c=p||S?{}:Xd(e),!l)return p?wd(e,Nd(c,e)):vd(e,Od(c,e))}else{if(!J[T])return i?e:{};c=Jd(e,T,l)}}s||(s=new $t);var g=s.get(e);if(g)return g;s.set(e,c),rT(e)?e.forEach(function(_){c.add(ha(_,t,o,_,e,s))}):$d(e)&&e.forEach(function(_,O){c.set(O,ha(_,t,o,O,e,s))});var x=f?p?da:nn:p?Ht:W,L=d?void 0:x(e);return oa(L||e,function(_,O){L&&(O=_,_=e[O]),jt(c,O,ha(_,t,o,O,e,s))}),c}r(ha,"baseClone");var iT=ha;var qy=4;function jy(e){return iT(e,qy)}r(jy,"clone");var X=jy;function Wy(e){for(var t=-1,o=e==null?0:e.length,n=0,i=[];++t<o;){var s=e[t];s&&(i[n++]=s)}return i}r(Wy,"compact");var gt=Wy;var Yy="__lodash_hash_undefined__";function Ky(e){return this.__data__.set(e,Yy),this}r(Ky,"setCacheAdd");var sT=Ky;function Hy(e){return this.__data__.has(e)}r(Hy,"setCacheHas");var cT=Hy;function Sa(e){var t=-1,o=e==null?0:e.length;for(this.__data__=new dr;++t<o;)this.add(e[t])}r(Sa,"SetCache");Sa.prototype.add=Sa.prototype.push=sT;Sa.prototype.has=cT;var jr=Sa;function zy(e,t){for(var o=-1,n=e==null?0:e.length;++o<n;)if(t(e[o],o,e))return!0;return!1}r(zy,"arraySome");var Aa=zy;function Jy(e,t){return e.has(t)}r(Jy,"cacheHas");var Wr=Jy;var Xy=1,Qy=2;function Zy(e,t,o,n,i,s){var c=o&Xy,l=e.length,p=t.length;if(l!=p&&!(c&&p>l))return!1;var f=s.get(e),d=s.get(t);if(f&&d)return f==t&&d==e;var T=-1,S=!0,g=o&Qy?new jr:void 0;for(s.set(e,t),s.set(t,e);++T<l;){var x=e[T],L=t[T];if(n)var _=c?n(L,x,T,t,e,s):n(x,L,T,e,t,s);if(_!==void 0){if(_)continue;S=!1;break}if(g){if(!Aa(t,function(O,N){if(!Wr(g,N)&&(x===O||i(x,O,o,n,s)))return g.push(N)})){S=!1;break}}else if(!(x===L||i(x,L,o,n,s))){S=!1;break}}return s.delete(e),s.delete(t),S}r(Zy,"equalArrays");var Ua=Zy;function $y(e){var t=-1,o=Array(e.size);return e.forEach(function(n,i){o[++t]=[i,n]}),o}r($y,"mapToArray");var lT=$y;function eM(e){var t=-1,o=Array(e.size);return e.forEach(function(n){o[++t]=n}),o}r(eM,"setToArray");var Yr=eM;var tM=1,rM=2,oM="[object Boolean]",nM="[object Date]",aM="[object Error]",iM="[object Map]",sM="[object Number]",cM="[object RegExp]",lM="[object Set]",uM="[object String]",pM="[object Symbol]",mM="[object ArrayBuffer]",fM="[object DataView]",uT=Ne?Ne.prototype:void 0,cm=uT?uT.valueOf:void 0;function dM(e,t,o,n,i,s,c){switch(o){case fM:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case mM:return!(e.byteLength!=t.byteLength||!s(new Vr(e),new Vr(t)));case oM:case nM:case sM:return Et(+e,+t);case aM:return e.name==t.name&&e.message==t.message;case cM:case uM:return e==t+"";case iM:var l=lT;case lM:var p=n&tM;if(l||(l=Yr),e.size!=t.size&&!p)return!1;var f=c.get(e);if(f)return f==t;n|=rM,c.set(e,t);var d=Ua(l(e),l(t),n,i,s,c);return c.delete(e),d;case pM:if(cm)return cm.call(e)==cm.call(t)}return!1}r(dM,"equalByTag");var pT=dM;var TM=1,EM=Object.prototype,hM=EM.hasOwnProperty;function SM(e,t,o,n,i,s){var c=o&TM,l=nn(e),p=l.length,f=nn(t),d=f.length;if(p!=d&&!c)return!1;for(var T=p;T--;){var S=l[T];if(!(c?S in t:hM.call(t,S)))return!1}var g=s.get(e),x=s.get(t);if(g&&x)return g==t&&x==e;var L=!0;s.set(e,t),s.set(t,e);for(var _=c;++T<p;){S=l[T];var O=e[S],N=t[S];if(n)var C=c?n(N,O,S,t,e,s):n(O,N,S,e,t,s);if(!(C===void 0?O===N||i(O,N,o,n,s):C)){L=!1;break}_||(_=S=="constructor")}if(L&&!_){var v=e.constructor,w=t.constructor;v!=w&&"constructor"in e&&"constructor"in t&&!(typeof v=="function"&&v instanceof v&&typeof w=="function"&&w instanceof w)&&(L=!1)}return s.delete(e),s.delete(t),L}r(SM,"equalObjects");var mT=SM;var AM=1,fT="[object Arguments]",dT="[object Array]",ga="[object Object]",UM=Object.prototype,TT=UM.hasOwnProperty;function gM(e,t,o,n,i,s){var c=b(e),l=b(t),p=c?dT:st(e),f=l?dT:st(t);p=p==fT?ga:p,f=f==fT?ga:f;var d=p==ga,T=f==ga,S=p==f;if(S&&yt(e)){if(!yt(t))return!1;c=!0,d=!1}if(S&&!d)return s||(s=new $t),c||br(e)?Ua(e,t,o,n,i,s):pT(e,t,p,o,n,i,s);if(!(o&AM)){var g=d&&TT.call(e,"__wrapped__"),x=T&&TT.call(t,"__wrapped__");if(g||x){var L=g?e.value():e,_=x?t.value():t;return s||(s=new $t),i(L,_,o,n,s)}}return S?(s||(s=new $t),mT(e,t,o,n,i,s)):!1}r(gM,"baseIsEqualDeep");var ET=gM;function hT(e,t,o,n,i){return e===t?!0:e==null||t==null||!ie(e)&&!ie(t)?e!==e&&t!==t:ET(e,t,o,n,hT,i)}r(hT,"baseIsEqual");var ka=hT;var kM=1,RM=2;function LM(e,t,o,n){var i=o.length,s=i,c=!n;if(e==null)return!s;for(e=Object(e);i--;){var l=o[i];if(c&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++i<s;){l=o[i];var p=l[0],f=e[p],d=l[1];if(c&&l[2]){if(f===void 0&&!(p in e))return!1}else{var T=new $t;if(n)var S=n(f,d,p,e,t,T);if(!(S===void 0?ka(d,f,kM|RM,n,T):S))return!1}}return!0}r(LM,"baseIsMatch");var ST=LM;function xM(e){return e===e&&!se(e)}r(xM,"isStrictComparable");var Ra=xM;function CM(e){for(var t=W(e),o=t.length;o--;){var n=t[o],i=e[n];t[o]=[n,i,Ra(i)]}return t}r(CM,"getMatchData");var AT=CM;function OM(e,t){return function(o){return o==null?!1:o[e]===t&&(t!==void 0||e in Object(o))}}r(OM,"matchesStrictComparable");var La=OM;function NM(e){var t=AT(e);return t.length==1&&t[0][2]?La(t[0][0],t[0][1]):function(o){return o===e||ST(o,e,t)}}r(NM,"baseMatches");var UT=NM;function bM(e,t){return e!=null&&t in Object(e)}r(bM,"baseHasIn");var gT=bM;function yM(e,t,o){t=Zt(t,e);for(var n=-1,i=t.length,s=!1;++n<i;){var c=Ut(t[n]);if(!(s=e!=null&&o(e,c)))break;e=e[c]}return s||++n!=i?s:(i=e==null?0:e.length,!!i&&Nr(i)&&qt(c,i)&&(b(e)||Kt(e)))}r(yM,"hasPath");var xa=yM;function MM(e,t){return e!=null&&xa(e,t,gT)}r(MM,"hasIn");var kT=MM;var FM=1,_M=2;function IM(e,t){return yr(e)&&Ra(t)?La(Ut(e),t):function(o){var n=Tr(o,e);return n===void 0&&n===t?kT(o,e):ka(t,n,FM|_M)}}r(IM,"baseMatchesProperty");var RT=IM;function vM(e){return function(t){return t?.[e]}}r(vM,"baseProperty");var LT=vM;function wM(e){return function(t){return Ir(t,e)}}r(wM,"basePropertyDeep");var xT=wM;function BM(e){return yr(e)?LT(Ut(e)):xT(e)}r(BM,"property");var CT=BM;function PM(e){return typeof e=="function"?e:e==null?rt:typeof e=="object"?b(e)?RT(e[0],e[1]):UT(e):CT(e)}r(PM,"baseIteratee");var Ae=PM;function GM(e,t,o,n){for(var i=-1,s=e==null?0:e.length;++i<s;){var c=e[i];t(n,c,o(c),e)}return n}r(GM,"arrayAggregator");var OT=GM;function DM(e){return function(t,o,n){for(var i=-1,s=Object(t),c=n(t),l=c.length;l--;){var p=c[e?l:++i];if(o(s[p],p,s)===!1)break}return t}}r(DM,"createBaseFor");var NT=DM;var VM=NT(),bT=VM;function qM(e,t){return e&&bT(e,t,W)}r(qM,"baseForOwn");var yT=qM;function jM(e,t){return function(o,n){if(o==null)return o;if(!Se(o))return e(o,n);for(var i=o.length,s=t?i:-1,c=Object(o);(t?s--:++s<i)&&n(c[s],s,c)!==!1;);return o}}r(jM,"createBaseEach");var MT=jM;var WM=MT(yT),Ke=WM;function YM(e,t,o,n){return Ke(e,function(i,s,c){t(n,i,o(i),c)}),n}r(YM,"baseAggregator");var FT=YM;function KM(e,t){return function(o,n){var i=b(o)?OT:FT,s=t?t():{};return i(o,e,Ae(n,2),s)}}r(KM,"createAggregator");var Ca=KM;var _T=Object.prototype,HM=_T.hasOwnProperty,zM=Wt(function(e,t){e=Object(e);var o=-1,n=t.length,i=n>2?t[2]:void 0;for(i&&Yt(t[0],t[1],i)&&(n=1);++o<n;)for(var s=t[o],c=Ht(s),l=-1,p=c.length;++l<p;){var f=c[l],d=e[f];(d===void 0||Et(d,_T[f])&&!HM.call(e,f))&&(e[f]=s[f])}return e}),Kr=zM;function JM(e){return ie(e)&&Se(e)}r(JM,"isArrayLikeObject");var an=JM;function XM(e,t,o){for(var n=-1,i=e==null?0:e.length;++n<i;)if(o(t,e[n]))return!0;return!1}r(XM,"arrayIncludesWith");var Oa=XM;var QM=200;function ZM(e,t,o,n){var i=-1,s=aa,c=!0,l=e.length,p=[],f=t.length;if(!l)return p;o&&(t=dt(t,At(o))),n?(s=Oa,c=!1):t.length>=QM&&(s=Wr,c=!1,t=new jr(t));e:for(;++i<l;){var d=e[i],T=o==null?d:o(d);if(d=n||d!==0?d:0,c&&T===T){for(var S=f;S--;)if(t[S]===T)continue e;p.push(d)}else s(t,T,n)||p.push(d)}return p}r(ZM,"baseDifference");var Na=ZM;var $M=Wt(function(e,t){return an(e)?Na(e,wr(t,1,an,!0)):[]}),tr=$M;function eF(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}r(eF,"last");var ct=eF;function tF(e,t,o){var n=e==null?0:e.length;return n?(t=o||t===void 0?1:Tt(t),ua(e,t<0?0:t,n)):[]}r(tF,"drop");var fe=tF;function rF(e,t,o){var n=e==null?0:e.length;return n?(t=o||t===void 0?1:Tt(t),t=n-t,ua(e,0,t<0?0:t)):[]}r(rF,"dropRight");var Ft=rF;function oF(e){return typeof e=="function"?e:rt}r(oF,"castFunction");var IT=oF;function nF(e,t){var o=b(e)?oa:Ke;return o(e,IT(t))}r(nF,"forEach");var M=nF;function aF(e,t){for(var o=-1,n=e==null?0:e.length;++o<n;)if(!t(e[o],o,e))return!1;return!0}r(aF,"arrayEvery");var vT=aF;function iF(e,t){var o=!0;return Ke(e,function(n,i,s){return o=!!t(n,i,s),o}),o}r(iF,"baseEvery");var wT=iF;function sF(e,t,o){var n=b(e)?vT:wT;return o&&Yt(e,t,o)&&(t=void 0),n(e,Ae(t,3))}r(sF,"every");var be=sF;function cF(e,t){var o=[];return Ke(e,function(n,i,s){t(n,i,s)&&o.push(n)}),o}r(cF,"baseFilter");var ba=cF;function lF(e,t){var o=b(e)?Gr:ba;return o(e,Ae(t,3))}r(lF,"filter");var we=lF;function uF(e){return function(t,o,n){var i=Object(t);if(!Se(t)){var s=Ae(o,3);t=W(t),o=r(function(l){return s(i[l],l,i)},"predicate")}var c=e(t,o,n);return c>-1?i[s?t[c]:c]:void 0}}r(uF,"createFind");var BT=uF;var pF=Math.max;function mF(e,t,o){var n=e==null?0:e.length;if(!n)return-1;var i=o==null?0:Tt(o);return i<0&&(i=pF(n+i,0)),na(e,Ae(t,3),i)}r(mF,"findIndex");var PT=mF;var fF=BT(PT),kt=fF;function dF(e){return e&&e.length?e[0]:void 0}r(dF,"head");var Ue=dF;function TF(e,t){var o=-1,n=Se(e)?Array(e.length):[];return Ke(e,function(i,s,c){n[++o]=t(i,s,c)}),n}r(TF,"baseMap");var GT=TF;function EF(e,t){var o=b(e)?dt:GT;return o(e,Ae(t,3))}r(EF,"map");var y=EF;function hF(e,t){return wr(y(e,t),1)}r(hF,"flatMap");var Ve=hF;var SF=Object.prototype,AF=SF.hasOwnProperty,UF=Ca(function(e,t,o){AF.call(e,o)?e[o].push(t):Or(e,o,[t])}),lm=UF;var gF=Object.prototype,kF=gF.hasOwnProperty;function RF(e,t){return e!=null&&kF.call(e,t)}r(RF,"baseHas");var DT=RF;function LF(e,t){return e!=null&&xa(e,t,DT)}r(LF,"has");var F=LF;var xF="[object String]";function CF(e){return typeof e=="string"||!b(e)&&ie(e)&&Fe(e)==xF}r(CF,"isString");var Ce=CF;function OF(e,t){return dt(t,function(o){return e[o]})}r(OF,"baseValues");var VT=OF;function NF(e){return e==null?[]:VT(e,W(e))}r(NF,"values");var K=NF;var bF=Math.max;function yF(e,t,o,n){e=Se(e)?e:K(e),o=o&&!n?Tt(o):0;var i=e.length;return o<0&&(o=bF(i+o,0)),Ce(e)?o<=i&&e.indexOf(t,o)>-1:!!i&&Cr(e,t,o)>-1}r(yF,"includes");var oe=yF;var MF=Math.max;function FF(e,t,o){var n=e==null?0:e.length;if(!n)return-1;var i=o==null?0:Tt(o);return i<0&&(i=MF(n+i,0)),Cr(e,t,i)}r(FF,"indexOf");var ya=FF;var _F="[object Map]",IF="[object Set]",vF=Object.prototype,wF=vF.hasOwnProperty;function BF(e){if(e==null)return!0;if(Se(e)&&(b(e)||typeof e=="string"||typeof e.splice=="function"||yt(e)||br(e)||Kt(e)))return!e.length;var t=st(e);if(t==_F||t==IF)return!e.size;if(St(e))return!ca(e).length;for(var o in e)if(wF.call(e,o))return!1;return!0}r(BF,"isEmpty");var D=BF;var PF="[object RegExp]";function GF(e){return ie(e)&&Fe(e)==PF}r(GF,"baseIsRegExp");var qT=GF;var jT=ot&&ot.isRegExp,DF=jT?At(jT):qT,nt=DF;function VF(e){return e===void 0}r(VF,"isUndefined");var Be=VF;var qF="Expected a function";function jF(e){if(typeof e!="function")throw new TypeError(qF);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}r(jF,"negate");var WT=jF;function WF(e,t,o,n){if(!se(e))return e;t=Zt(t,e);for(var i=-1,s=t.length,c=s-1,l=e;l!=null&&++i<s;){var p=Ut(t[i]),f=o;if(p==="__proto__"||p==="constructor"||p==="prototype")return e;if(i!=c){var d=l[p];f=n?n(d,p,l):void 0,f===void 0&&(f=se(d)?d:qt(t[i+1])?[]:{})}jt(l,p,f),l=l[p]}return e}r(WF,"baseSet");var YT=WF;function YF(e,t,o){for(var n=-1,i=t.length,s={};++n<i;){var c=t[n],l=Ir(e,c);o(l,c)&&YT(s,Zt(c,e),l)}return s}r(YF,"basePickBy");var KT=YF;function KF(e,t){if(e==null)return{};var o=dt(da(e),function(n){return[n]});return t=Ae(t),KT(e,o,function(n,i){return t(n,i[0])})}r(KF,"pickBy");var He=KF;var HF=Ca(function(e,t,o){e[o?0:1].push(t)},function(){return[[],[]]}),um=HF;function zF(e,t,o,n,i){return i(e,function(s,c,l){o=n?(n=!1,s):t(o,s,c,l)}),o}r(zF,"baseReduce");var HT=zF;function JF(e,t,o){var n=b(e)?gd:HT,i=arguments.length<3;return n(e,Ae(t,4),o,i,Ke)}r(JF,"reduce");var ge=JF;function XF(e,t){var o=b(e)?Gr:ba;return o(e,WT(Ae(t,3)))}r(XF,"reject");var rr=XF;function QF(e,t){var o;return Ke(e,function(n,i,s){return o=t(n,i,s),!o}),!!o}r(QF,"baseSome");var zT=QF;function ZF(e,t,o){var n=b(e)?Aa:zT;return o&&Yt(e,t,o)&&(t=void 0),n(e,Ae(t,3))}r(ZF,"some");var lt=ZF;var $F=1/0,e_=er&&1/Yr(new er([,-0]))[1]==$F?function(e){return new er(e)}:ce,JT=e_;var t_=200;function r_(e,t,o){var n=-1,i=aa,s=e.length,c=!0,l=[],p=l;if(o)c=!1,i=Oa;else if(s>=t_){var f=t?null:JT(e);if(f)return Yr(f);c=!1,i=Wr,p=new jr}else p=t?[]:l;e:for(;++n<s;){var d=e[n],T=t?t(d):d;if(d=o||d!==0?d:0,c&&T===T){for(var S=p.length;S--;)if(p[S]===T)continue e;t&&p.push(T),l.push(d)}else i(p,T,o)||(p!==l&&p.push(T),l.push(d))}return l}r(r_,"baseUniq");var XT=r_;function o_(e){return e&&e.length?XT(e):[]}r(o_,"uniq");var or=o_;var n_=Wt(function(e,t){return an(e)?Na(e,t):[]}),pm=n_;function Hr(e){console&&console.error&&console.error(`Error: ${e}`)}r(Hr,"PRINT_ERROR");function sn(e){console&&console.warn&&console.warn(`Warning: ${e}`)}r(sn,"PRINT_WARNING");function cn(e){let t=new Date().getTime(),o=e();return{time:new Date().getTime()-t,value:o}}r(cn,"timer");function ln(e){function t(){}r(t,"FakeConstructor"),t.prototype=e;let o=new t;function n(){return typeof o.bar}return r(n,"fakeAccess"),n(),n(),e;(0,eval)(e)}r(ln,"toFastProperties");function a_(e){return i_(e)?e.LABEL:e.name}r(a_,"tokenLabel");function i_(e){return Ce(e.LABEL)&&e.LABEL!==""}r(i_,"hasTokenLabel");var $e=class{static{r(this,"AbstractProduction")}get definition(){return this._definition}set definition(t){this._definition=t}constructor(t){this._definition=t}accept(t){t.visit(this),M(this.definition,o=>{o.accept(t)})}},Q=class extends $e{static{r(this,"NonTerminal")}constructor(t){super([]),this.idx=1,_e(this,He(t,o=>o!==void 0))}set definition(t){}get definition(){return this.referencedRule!==void 0?this.referencedRule.definition:[]}accept(t){t.visit(this)}},qe=class extends $e{static{r(this,"Rule")}constructor(t){super(t.definition),this.orgText="",_e(this,He(t,o=>o!==void 0))}},Z=class extends $e{static{r(this,"Alternative")}constructor(t){super(t.definition),this.ignoreAmbiguities=!1,_e(this,He(t,o=>o!==void 0))}},te=class extends $e{static{r(this,"Option")}constructor(t){super(t.definition),this.idx=1,_e(this,He(t,o=>o!==void 0))}},de=class extends $e{static{r(this,"RepetitionMandatory")}constructor(t){super(t.definition),this.idx=1,_e(this,He(t,o=>o!==void 0))}},Te=class extends $e{static{r(this,"RepetitionMandatoryWithSeparator")}constructor(t){super(t.definition),this.idx=1,_e(this,He(t,o=>o!==void 0))}},Y=class extends $e{static{r(this,"Repetition")}constructor(t){super(t.definition),this.idx=1,_e(this,He(t,o=>o!==void 0))}},pe=class extends $e{static{r(this,"RepetitionWithSeparator")}constructor(t){super(t.definition),this.idx=1,_e(this,He(t,o=>o!==void 0))}},me=class extends $e{static{r(this,"Alternation")}get definition(){return this._definition}set definition(t){this._definition=t}constructor(t){super(t.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,_e(this,He(t,o=>o!==void 0))}},q=class{static{r(this,"Terminal")}constructor(t){this.idx=1,_e(this,He(t,o=>o!==void 0))}accept(t){t.visit(this)}};function Ma(e){return y(e,zr)}r(Ma,"serializeGrammar");function zr(e){function t(o){return y(o,zr)}if(r(t,"convertDefinition"),e instanceof Q){let o={type:"NonTerminal",name:e.nonTerminalName,idx:e.idx};return Ce(e.label)&&(o.label=e.label),o}else{if(e instanceof Z)return{type:"Alternative",definition:t(e.definition)};if(e instanceof te)return{type:"Option",idx:e.idx,definition:t(e.definition)};if(e instanceof de)return{type:"RepetitionMandatory",idx:e.idx,definition:t(e.definition)};if(e instanceof Te)return{type:"RepetitionMandatoryWithSeparator",idx:e.idx,separator:zr(new q({terminalType:e.separator})),definition:t(e.definition)};if(e instanceof pe)return{type:"RepetitionWithSeparator",idx:e.idx,separator:zr(new q({terminalType:e.separator})),definition:t(e.definition)};if(e instanceof Y)return{type:"Repetition",idx:e.idx,definition:t(e.definition)};if(e instanceof me)return{type:"Alternation",idx:e.idx,definition:t(e.definition)};if(e instanceof q){let o={type:"Terminal",name:e.terminalType.name,label:a_(e.terminalType),idx:e.idx};Ce(e.label)&&(o.terminalLabel=e.label);let n=e.terminalType.PATTERN;return e.terminalType.PATTERN&&(o.pattern=nt(n)?n.source:n),o}else{if(e instanceof qe)return{type:"Rule",name:e.name,orgText:e.orgText,definition:t(e.definition)};throw Error("non exhaustive match")}}}r(zr,"serializeProduction");var je=class{static{r(this,"GAstVisitor")}visit(t){let o=t;switch(o.constructor){case Q:return this.visitNonTerminal(o);case Z:return this.visitAlternative(o);case te:return this.visitOption(o);case de:return this.visitRepetitionMandatory(o);case Te:return this.visitRepetitionMandatoryWithSeparator(o);case pe:return this.visitRepetitionWithSeparator(o);case Y:return this.visitRepetition(o);case me:return this.visitAlternation(o);case q:return this.visitTerminal(o);case qe:return this.visitRule(o);default:throw Error("non exhaustive match")}}visitNonTerminal(t){}visitAlternative(t){}visitOption(t){}visitRepetition(t){}visitRepetitionMandatory(t){}visitRepetitionMandatoryWithSeparator(t){}visitRepetitionWithSeparator(t){}visitAlternation(t){}visitTerminal(t){}visitRule(t){}};function mm(e){return e instanceof Z||e instanceof te||e instanceof Y||e instanceof de||e instanceof Te||e instanceof pe||e instanceof q||e instanceof qe}r(mm,"isSequenceProd");function hr(e,t=[]){return e instanceof te||e instanceof Y||e instanceof pe?!0:e instanceof me?lt(e.definition,n=>hr(n,t)):e instanceof Q&&oe(t,e)?!1:e instanceof $e?(e instanceof Q&&t.push(e),be(e.definition,n=>hr(n,t))):!1}r(hr,"isOptionalProd");function fm(e){return e instanceof me}r(fm,"isBranchingProd");function ze(e){if(e instanceof Q)return"SUBRULE";if(e instanceof te)return"OPTION";if(e instanceof me)return"OR";if(e instanceof de)return"AT_LEAST_ONE";if(e instanceof Te)return"AT_LEAST_ONE_SEP";if(e instanceof pe)return"MANY_SEP";if(e instanceof Y)return"MANY";if(e instanceof q)return"CONSUME";throw Error("non exhaustive match")}r(ze,"getProductionDslName");var _t=class{static{r(this,"RestWalker")}walk(t,o=[]){M(t.definition,(n,i)=>{let s=fe(t.definition,i+1);if(n instanceof Q)this.walkProdRef(n,s,o);else if(n instanceof q)this.walkTerminal(n,s,o);else if(n instanceof Z)this.walkFlat(n,s,o);else if(n instanceof te)this.walkOption(n,s,o);else if(n instanceof de)this.walkAtLeastOne(n,s,o);else if(n instanceof Te)this.walkAtLeastOneSep(n,s,o);else if(n instanceof pe)this.walkManySep(n,s,o);else if(n instanceof Y)this.walkMany(n,s,o);else if(n instanceof me)this.walkOr(n,s,o);else throw Error("non exhaustive match")})}walkTerminal(t,o,n){}walkProdRef(t,o,n){}walkFlat(t,o,n){let i=o.concat(n);this.walk(t,i)}walkOption(t,o,n){let i=o.concat(n);this.walk(t,i)}walkAtLeastOne(t,o,n){let i=[new te({definition:t.definition})].concat(o,n);this.walk(t,i)}walkAtLeastOneSep(t,o,n){let i=QT(t,o,n);this.walk(t,i)}walkMany(t,o,n){let i=[new te({definition:t.definition})].concat(o,n);this.walk(t,i)}walkManySep(t,o,n){let i=QT(t,o,n);this.walk(t,i)}walkOr(t,o,n){let i=o.concat(n);M(t.definition,s=>{let c=new Z({definition:[s]});this.walk(c,i)})}};function QT(e,t,o){return[new te({definition:[new q({terminalType:e.separator})].concat(e.definition)})].concat(t,o)}r(QT,"restForRepetitionWithSeparator");function Sr(e){if(e instanceof Q)return Sr(e.referencedRule);if(e instanceof q)return l_(e);if(mm(e))return s_(e);if(fm(e))return c_(e);throw Error("non exhaustive match")}r(Sr,"first");function s_(e){let t=[],o=e.definition,n=0,i=o.length>n,s,c=!0;for(;i&&c;)s=o[n],c=hr(s),t=t.concat(Sr(s)),n=n+1,i=o.length>n;return or(t)}r(s_,"firstForSequence");function c_(e){let t=y(e.definition,o=>Sr(o));return or(xe(t))}r(c_,"firstForBranching");function l_(e){return[e.terminalType]}r(l_,"firstForTerminal");var Fa="_~IN~_";var dm=class extends _t{static{r(this,"ResyncFollowsWalker")}constructor(t){super(),this.topProd=t,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(t,o,n){}walkProdRef(t,o,n){let i=u_(t.referencedRule,t.idx)+this.topProd.name,s=o.concat(n),c=new Z({definition:s}),l=Sr(c);this.follows[i]=l}};function ZT(e){let t={};return M(e,o=>{let n=new dm(o).startWalking();_e(t,n)}),t}r(ZT,"computeAllProdsFollows");function u_(e,t){return e.name+t+Fa}r(u_,"buildBetweenProdsFollowPrefix");function I(e){return e.charCodeAt(0)}r(I,"cc");function _a(e,t){Array.isArray(e)?e.forEach(function(o){t.push(o)}):t.push(e)}r(_a,"insertToSet");function Jr(e,t){if(e[t]===!0)throw"duplicate flag "+t;let o=e[t];e[t]=!0}r(Jr,"addFlag");function Ar(e){if(e===void 0)throw Error("Internal Error - Should never get here!");return!0}r(Ar,"ASSERT_EXISTS");function un(){throw Error("Internal Error - Should never get here!")}r(un,"ASSERT_NEVER_REACH_HERE");function Tm(e){return e.type==="Character"}r(Tm,"isCharacter");var pn=[];for(let e=I("0");e<=I("9");e++)pn.push(e);var mn=[I("_")].concat(pn);for(let e=I("a");e<=I("z");e++)mn.push(e);for(let e=I("A");e<=I("Z");e++)mn.push(e);var Em=[I(" "),I("\f"),I(`
2
+ `),I("\r"),I(" "),I("\v"),I(" "),I("\xA0"),I("\u1680"),I("\u2000"),I("\u2001"),I("\u2002"),I("\u2003"),I("\u2004"),I("\u2005"),I("\u2006"),I("\u2007"),I("\u2008"),I("\u2009"),I("\u200A"),I("\u2028"),I("\u2029"),I("\u202F"),I("\u205F"),I("\u3000"),I("\uFEFF")];var p_=/[0-9a-fA-F]/,Ia=/[0-9]/,m_=/[1-9]/,fn=class{static{r(this,"RegExpParser")}constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(t){this.idx=t.idx,this.input=t.input,this.groupIdx=t.groupIdx}pattern(t){this.idx=0,this.input=t,this.groupIdx=0,this.consumeChar("/");let o=this.disjunction();this.consumeChar("/");let n={type:"Flags",loc:{begin:this.idx,end:t.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":Jr(n,"global");break;case"i":Jr(n,"ignoreCase");break;case"m":Jr(n,"multiLine");break;case"u":Jr(n,"unicode");break;case"y":Jr(n,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:n,value:o,loc:this.loc(0)}}disjunction(){let t=[],o=this.idx;for(t.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),t.push(this.alternative());return{type:"Disjunction",value:t,loc:this.loc(o)}}alternative(){let t=[],o=this.idx;for(;this.isTerm();)t.push(this.term());return{type:"Alternative",value:t,loc:this.loc(o)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){let t=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(t)};case"$":return{type:"EndAnchor",loc:this.loc(t)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(t)};case"B":return{type:"NonWordBoundary",loc:this.loc(t)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let o;switch(this.popChar()){case"=":o="Lookahead";break;case"!":o="NegativeLookahead";break;case"<":{switch(this.popChar()){case"=":o="Lookbehind";break;case"!":o="NegativeLookbehind"}break}}Ar(o);let n=this.disjunction();return this.consumeChar(")"),{type:o,value:n,loc:this.loc(t)}}return un()}quantifier(t=!1){let o,n=this.idx;switch(this.popChar()){case"*":o={atLeast:0,atMost:1/0};break;case"+":o={atLeast:1,atMost:1/0};break;case"?":o={atLeast:0,atMost:1};break;case"{":let i=this.integerIncludingZero();switch(this.popChar()){case"}":o={atLeast:i,atMost:i};break;case",":let s;this.isDigit()?(s=this.integerIncludingZero(),o={atLeast:i,atMost:s}):o={atLeast:i,atMost:1/0},this.consumeChar("}");break}if(t===!0&&o===void 0)return;Ar(o);break}if(!(t===!0&&o===void 0)&&Ar(o))return this.peekChar(0)==="?"?(this.consumeChar("?"),o.greedy=!1):o.greedy=!0,o.type="Quantifier",o.loc=this.loc(n),o}atom(){let t,o=this.idx;switch(this.peekChar()){case".":t=this.dotAll();break;case"\\":t=this.atomEscape();break;case"[":t=this.characterClass();break;case"(":t=this.group();break}return t===void 0&&this.isPatternCharacter()&&(t=this.patternCharacter()),Ar(t)?(t.loc=this.loc(o),this.isQuantifier()&&(t.quantifier=this.quantifier()),t):un()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[I(`
3
+ `),I("\r"),I("\u2028"),I("\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 t,o=!1;switch(this.popChar()){case"d":t=pn;break;case"D":t=pn,o=!0;break;case"s":t=Em;break;case"S":t=Em,o=!0;break;case"w":t=mn;break;case"W":t=mn,o=!0;break}return Ar(t)?{type:"Set",value:t,complement:o}:un()}controlEscapeAtom(){let t;switch(this.popChar()){case"f":t=I("\f");break;case"n":t=I(`
4
+ `);break;case"r":t=I("\r");break;case"t":t=I(" ");break;case"v":t=I("\v");break}return Ar(t)?{type:"Character",value:t}:un()}controlLetterEscapeAtom(){this.consumeChar("c");let t=this.popChar();if(/[a-zA-Z]/.test(t)===!1)throw Error("Invalid ");return{type:"Character",value:t.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:I("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){let t=this.popChar();return{type:"Character",value:I(t)}}classPatternCharacterAtom(){switch(this.peekChar()){case`
5
+ `:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:let t=this.popChar();return{type:"Character",value:I(t)}}}characterClass(){let t=[],o=!1;for(this.consumeChar("["),this.peekChar(0)==="^"&&(this.consumeChar("^"),o=!0);this.isClassAtom();){let n=this.classAtom(),i=n.type==="Character";if(Tm(n)&&this.isRangeDash()){this.consumeChar("-");let s=this.classAtom(),c=s.type==="Character";if(Tm(s)){if(s.value<n.value)throw Error("Range out of order in character class");t.push({from:n.value,to:s.value})}else _a(n.value,t),t.push(I("-")),_a(s.value,t)}else _a(n.value,t)}return this.consumeChar("]"),{type:"Set",complement:o,value:t}}classAtom(){switch(this.peekChar()){case"]":case`
6
+ `: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:I("\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 t=!0;switch(this.consumeChar("("),this.peekChar(0)){case"?":this.consumeChar("?"),this.consumeChar(":"),t=!1;break;default:this.groupIdx++;break}let o=this.disjunction();this.consumeChar(")");let n={type:"Group",capturing:t,value:o};return t&&(n.idx=this.groupIdx),n}positiveInteger(){let t=this.popChar();if(m_.test(t)===!1)throw Error("Expecting a positive integer");for(;Ia.test(this.peekChar(0));)t+=this.popChar();return parseInt(t,10)}integerIncludingZero(){let t=this.popChar();if(Ia.test(t)===!1)throw Error("Expecting an integer");for(;Ia.test(this.peekChar(0));)t+=this.popChar();return parseInt(t,10)}patternCharacter(){let t=this.popChar();switch(t){case`
7
+ `: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:I(t)}}}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 Ia.test(this.peekChar(0))}isClassAtom(t=0){switch(this.peekChar(t)){case"]":case`
8
8
  `: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(){let t=this.saveState();try{return this.quantifier(!0)!==void 0}catch{return!1}finally{this.restoreState(t)}}isPatternCharacter(){switch(this.peekChar()){case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":case"/":case`
9
- `:case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}parseHexDigits(t){let o="";for(let a=0;a<t;a++){let s=this.popChar();if(wj.test(s)===!1)throw Error("Expecting a HexDecimal digits");o+=s}return{type:"Character",value:parseInt(o,16)}}peekChar(t=0){return this.input[this.idx+t]}popChar(){let t=this.peekChar(0);return this.consumeChar(void 0),t}consumeChar(t){if(t!==void 0&&this.input[this.idx]!==t)throw Error("Expected: '"+t+"' 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(t){return{begin:t,end:this.idx}}};var wr=class{static{r(this,"BaseRegExpVisitor")}visitChildren(t){for(let o in t){let n=t[o];t.hasOwnProperty(o)&&(n.type!==void 0?this.visit(n):Array.isArray(n)&&n.forEach(a=>{this.visit(a)},this))}}visit(t){switch(t.type){case"Pattern":this.visitPattern(t);break;case"Flags":this.visitFlags(t);break;case"Disjunction":this.visitDisjunction(t);break;case"Alternative":this.visitAlternative(t);break;case"StartAnchor":this.visitStartAnchor(t);break;case"EndAnchor":this.visitEndAnchor(t);break;case"WordBoundary":this.visitWordBoundary(t);break;case"NonWordBoundary":this.visitNonWordBoundary(t);break;case"Lookahead":this.visitLookahead(t);break;case"NegativeLookahead":this.visitNegativeLookahead(t);break;case"Lookbehind":this.visitLookbehind(t);break;case"NegativeLookbehind":this.visitNegativeLookbehind(t);break;case"Character":this.visitCharacter(t);break;case"Set":this.visitSet(t);break;case"Group":this.visitGroup(t);break;case"GroupBackReference":this.visitGroupBackReference(t);break;case"Quantifier":this.visitQuantifier(t);break}this.visitChildren(t)}visitPattern(t){}visitFlags(t){}visitDisjunction(t){}visitAlternative(t){}visitStartAnchor(t){}visitEndAnchor(t){}visitWordBoundary(t){}visitNonWordBoundary(t){}visitLookahead(t){}visitNegativeLookahead(t){}visitLookbehind(t){}visitNegativeLookbehind(t){}visitCharacter(t){}visitSet(t){}visitGroup(t){}visitGroupBackReference(t){}visitQuantifier(t){}};var Ms={},Bj=new Ba;function nn(e){let t=e.toString();if(Ms.hasOwnProperty(t))return Ms[t];{let o=Bj.pattern(t);return Ms[t]=o,o}}r(nn,"getRegExpAst");function uA(){Ms={}}r(uA,"clearRegExpParserCache");var mA="Complement Sets are not supported for first char optimization",Ga=`Unable to use "first char" lexer optimizations:
10
- `;function dA(e,t=!1){try{let o=nn(e);return eh(o.value,{},o.flags.ignoreCase)}catch(o){if(o.message===mA)t&&ya(`${Ga} Unable to optimize: < ${e.toString()} >
9
+ `:case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}parseHexDigits(t){let o="";for(let i=0;i<t;i++){let s=this.popChar();if(p_.test(s)===!1)throw Error("Expecting a HexDecimal digits");o+=s}return{type:"Character",value:parseInt(o,16)}}peekChar(t=0){return this.input[this.idx+t]}popChar(){let t=this.peekChar(0);return this.consumeChar(void 0),t}consumeChar(t){if(t!==void 0&&this.input[this.idx]!==t)throw Error("Expected: '"+t+"' 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(t){return{begin:t,end:this.idx}}};var nr=class{static{r(this,"BaseRegExpVisitor")}visitChildren(t){for(let o in t){let n=t[o];t.hasOwnProperty(o)&&(n.type!==void 0?this.visit(n):Array.isArray(n)&&n.forEach(i=>{this.visit(i)},this))}}visit(t){switch(t.type){case"Pattern":this.visitPattern(t);break;case"Flags":this.visitFlags(t);break;case"Disjunction":this.visitDisjunction(t);break;case"Alternative":this.visitAlternative(t);break;case"StartAnchor":this.visitStartAnchor(t);break;case"EndAnchor":this.visitEndAnchor(t);break;case"WordBoundary":this.visitWordBoundary(t);break;case"NonWordBoundary":this.visitNonWordBoundary(t);break;case"Lookahead":this.visitLookahead(t);break;case"NegativeLookahead":this.visitNegativeLookahead(t);break;case"Lookbehind":this.visitLookbehind(t);break;case"NegativeLookbehind":this.visitNegativeLookbehind(t);break;case"Character":this.visitCharacter(t);break;case"Set":this.visitSet(t);break;case"Group":this.visitGroup(t);break;case"GroupBackReference":this.visitGroupBackReference(t);break;case"Quantifier":this.visitQuantifier(t);break}this.visitChildren(t)}visitPattern(t){}visitFlags(t){}visitDisjunction(t){}visitAlternative(t){}visitStartAnchor(t){}visitEndAnchor(t){}visitWordBoundary(t){}visitNonWordBoundary(t){}visitLookahead(t){}visitNegativeLookahead(t){}visitLookbehind(t){}visitNegativeLookbehind(t){}visitCharacter(t){}visitSet(t){}visitGroup(t){}visitGroupBackReference(t){}visitQuantifier(t){}};var va={},f_=new fn;function Xr(e){let t=e.toString();if(va.hasOwnProperty(t))return va[t];{let o=f_.pattern(t);return va[t]=o,o}}r(Xr,"getRegExpAst");function $T(){va={}}r($T,"clearRegExpParserCache");var tE="Complement Sets are not supported for first char optimization",dn=`Unable to use "first char" lexer optimizations:
10
+ `;function rE(e,t=!1){try{let o=Xr(e);return hm(o.value,{},o.flags.ignoreCase)}catch(o){if(o.message===tE)t&&sn(`${dn} Unable to optimize: < ${e.toString()} >
11
11
  Complement Sets cannot be automatically optimized.
12
12
  This will disable the lexer's first char optimizations.
13
13
  See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{let n="";t&&(n=`
14
14
  This will disable the lexer's first char optimizations.
15
- See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`),qo(`${Ga}
15
+ See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`),Hr(`${dn}
16
16
  Failed parsing: < ${e.toString()} >
17
17
  Using the @chevrotain/regexp-to-ast library
18
- Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+n)}}return[]}r(dA,"getOptimizedStartCodesIndices");function eh(e,t,o){switch(e.type){case"Disjunction":for(let a=0;a<e.value.length;a++)eh(e.value[a],t,o);break;case"Alternative":let n=e.value;for(let a=0;a<n.length;a++){let s=n[a];switch(s.type){case"EndAnchor":case"GroupBackReference":case"Lookahead":case"NegativeLookahead":case"Lookbehind":case"NegativeLookbehind":case"StartAnchor":case"WordBoundary":case"NonWordBoundary":continue}let l=s;switch(l.type){case"Character":Fs(l.value,t,o);break;case"Set":if(l.complement===!0)throw Error(mA);_(l.value,p=>{if(typeof p=="number")Fs(p,t,o);else{let f=p;if(o===!0)for(let d=f.from;d<=f.to;d++)Fs(d,t,o);else{for(let d=f.from;d<=f.to&&d<an;d++)Fs(d,t,o);if(f.to>=an){let d=f.from>=an?f.from:an,h=f.to,T=Vt(d),S=Vt(h);for(let R=T;R<=S;R++)t[R]=R}}}});break;case"Group":eh(l.value,t,o);break;default:throw Error("Non Exhaustive Match")}let c=l.quantifier!==void 0&&l.quantifier.atLeast===0;if(l.type==="Group"&&th(l)===!1||l.type!=="Group"&&c===!1)break}break;default:throw Error("non exhaustive match!")}return Y(t)}r(eh,"firstCharOptimizedIndices");function Fs(e,t,o){let n=Vt(e);t[n]=n,o===!0&&Gj(e,t)}r(Fs,"addOptimizedIdxToResult");function Gj(e,t){let o=String.fromCharCode(e),n=o.toUpperCase();if(n!==o){let a=Vt(n.charCodeAt(0));t[a]=a}else{let a=o.toLowerCase();if(a!==o){let s=Vt(a.charCodeAt(0));t[s]=s}}}r(Gj,"handleIgnoreCase");function fA(e,t){return Pt(e.value,o=>{if(typeof o=="number")return me(t,o);{let n=o;return Pt(t,a=>n.from<=a&&a<=n.to)!==void 0}})}r(fA,"findCode");function th(e){let t=e.quantifier;return t&&t.atLeast===0?!0:e.value?F(e.value)?tt(e.value,th):th(e.value):!1}r(th,"isWholeOptional");var rh=class extends wr{static{r(this,"CharCodeFinder")}constructor(t){super(),this.targetCharCodes=t,this.found=!1}visitChildren(t){if(this.found!==!0){switch(t.type){case"Lookahead":this.visitLookahead(t);return;case"NegativeLookahead":this.visitNegativeLookahead(t);return;case"Lookbehind":this.visitLookbehind(t);return;case"NegativeLookbehind":this.visitNegativeLookbehind(t);return}super.visitChildren(t)}}visitCharacter(t){me(this.targetCharCodes,t.value)&&(this.found=!0)}visitSet(t){t.complement?fA(t,this.targetCharCodes)===void 0&&(this.found=!0):fA(t,this.targetCharCodes)!==void 0&&(this.found=!0)}};function Is(e,t){if(t instanceof RegExp){let o=nn(t),n=new rh(e);return n.visit(o),n.found}else return Pt(t,o=>me(e,o.charCodeAt(0)))!==void 0}r(Is,"canMatchCharCode");var lo="PATTERN",sn="defaultMode",vs="modes",nh=typeof new RegExp("(?:)").sticky=="boolean";function EA(e,t){t=Do(t,{useSticky:nh,debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",`
19
- `],tracer:r((C,N)=>N(),"tracer")});let o=t.tracer;o("initCharCodeToOptimizedIndexMap",()=>{nW()});let n;o("Reject Lexer.NA",()=>{n=Rr(e,C=>C[lo]===ue.NA)});let a=!1,s;o("Transform Patterns",()=>{a=!1,s=b(n,C=>{let N=C[lo];if(Bt(N)){let I=N.source;return I.length===1&&I!=="^"&&I!=="$"&&I!=="."&&!N.ignoreCase?I:I.length===2&&I[0]==="\\"&&!me(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],I[1])?I[1]:t.useSticky?TA(N):hA(N)}else{if(We(N))return a=!0,{exec:N};if(typeof N=="object")return a=!0,N;if(typeof N=="string"){if(N.length===1)return N;{let I=N.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),v=new RegExp(I);return t.useSticky?TA(v):hA(v)}}else throw Error("non exhaustive match")}})});let l,c,p,f,d;o("misc mapping",()=>{l=b(n,C=>C.tokenTypeIdx),c=b(n,C=>{let N=C.GROUP;if(N!==ue.SKIPPED){if(Ye(N))return N;if(Ge(N))return!1;throw Error("non exhaustive match")}}),p=b(n,C=>{let N=C.LONGER_ALT;if(N)return F(N)?b(N,v=>rs(n,v)):[rs(n,N)]}),f=b(n,C=>C.PUSH_MODE),d=b(n,C=>M(C,"POP_MODE"))});let h;o("Line Terminator Handling",()=>{let C=kA(t.lineTerminatorCharacters);h=b(n,N=>!1),t.positionTracking!=="onlyOffset"&&(h=b(n,N=>M(N,"LINE_BREAKS")?!!N.LINE_BREAKS:LA(N,C)===!1&&Is(C,N.PATTERN)))});let T,S,R,U;o("Misc Mapping #2",()=>{T=b(n,UA),S=b(s,rW),R=Le(n,(C,N)=>{let I=N.GROUP;return Ye(I)&&I!==ue.SKIPPED&&(C[I]=[]),C},{}),U=b(s,(C,N)=>({pattern:s[N],longerAlt:p[N],canLineTerminator:h[N],isCustom:T[N],short:S[N],group:c[N],push:f[N],pop:d[N],tokenTypeIdx:l[N],tokenType:n[N]}))});let y=!0,O=[];return t.safeMode||o("First Char Optimization",()=>{O=Le(n,(C,N,I)=>{if(typeof N.PATTERN=="string"){let v=N.PATTERN.charCodeAt(0),lt=Vt(v);oh(C,lt,U[I])}else if(F(N.START_CHARS_HINT)){let v;_(N.START_CHARS_HINT,lt=>{let Rd=typeof lt=="string"?lt.charCodeAt(0):lt,Nt=Vt(Rd);v!==Nt&&(v=Nt,oh(C,Nt,U[I]))})}else if(Bt(N.PATTERN))if(N.PATTERN.unicode)y=!1,t.ensureOptimizations&&qo(`${Ga} Unable to analyze < ${N.PATTERN.toString()} > pattern.
18
+ Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+n)}}return[]}r(rE,"getOptimizedStartCodesIndices");function hm(e,t,o){switch(e.type){case"Disjunction":for(let i=0;i<e.value.length;i++)hm(e.value[i],t,o);break;case"Alternative":let n=e.value;for(let i=0;i<n.length;i++){let s=n[i];switch(s.type){case"EndAnchor":case"GroupBackReference":case"Lookahead":case"NegativeLookahead":case"Lookbehind":case"NegativeLookbehind":case"StartAnchor":case"WordBoundary":case"NonWordBoundary":continue}let c=s;switch(c.type){case"Character":wa(c.value,t,o);break;case"Set":if(c.complement===!0)throw Error(tE);M(c.value,p=>{if(typeof p=="number")wa(p,t,o);else{let f=p;if(o===!0)for(let d=f.from;d<=f.to;d++)wa(d,t,o);else{for(let d=f.from;d<=f.to&&d<Qr;d++)wa(d,t,o);if(f.to>=Qr){let d=f.from>=Qr?f.from:Qr,T=f.to,S=Rt(d),g=Rt(T);for(let x=S;x<=g;x++)t[x]=x}}}});break;case"Group":hm(c.value,t,o);break;default:throw Error("Non Exhaustive Match")}let l=c.quantifier!==void 0&&c.quantifier.atLeast===0;if(c.type==="Group"&&Sm(c)===!1||c.type!=="Group"&&l===!1)break}break;default:throw Error("non exhaustive match!")}return K(t)}r(hm,"firstCharOptimizedIndices");function wa(e,t,o){let n=Rt(e);t[n]=n,o===!0&&d_(e,t)}r(wa,"addOptimizedIdxToResult");function d_(e,t){let o=String.fromCharCode(e),n=o.toUpperCase();if(n!==o){let i=Rt(n.charCodeAt(0));t[i]=i}else{let i=o.toLowerCase();if(i!==o){let s=Rt(i.charCodeAt(0));t[s]=s}}}r(d_,"handleIgnoreCase");function eE(e,t){return kt(e.value,o=>{if(typeof o=="number")return oe(t,o);{let n=o;return kt(t,i=>n.from<=i&&i<=n.to)!==void 0}})}r(eE,"findCode");function Sm(e){let t=e.quantifier;return t&&t.atLeast===0?!0:e.value?b(e.value)?be(e.value,Sm):Sm(e.value):!1}r(Sm,"isWholeOptional");var Am=class extends nr{static{r(this,"CharCodeFinder")}constructor(t){super(),this.targetCharCodes=t,this.found=!1}visitChildren(t){if(this.found!==!0){switch(t.type){case"Lookahead":this.visitLookahead(t);return;case"NegativeLookahead":this.visitNegativeLookahead(t);return;case"Lookbehind":this.visitLookbehind(t);return;case"NegativeLookbehind":this.visitNegativeLookbehind(t);return}super.visitChildren(t)}}visitCharacter(t){oe(this.targetCharCodes,t.value)&&(this.found=!0)}visitSet(t){t.complement?eE(t,this.targetCharCodes)===void 0&&(this.found=!0):eE(t,this.targetCharCodes)!==void 0&&(this.found=!0)}};function Ba(e,t){if(t instanceof RegExp){let o=Xr(t),n=new Am(e);return n.visit(o),n.found}else return kt(t,o=>oe(e,o.charCodeAt(0)))!==void 0}r(Ba,"canMatchCharCode");var Ur="PATTERN",Zr="defaultMode",Pa="modes",gm=typeof new RegExp("(?:)").sticky=="boolean";function aE(e,t){t=Kr(t,{useSticky:gm,debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",`
19
+ `],tracer:r((N,C)=>C(),"tracer")});let o=t.tracer;o("initCharCodeToOptimizedIndexMap",()=>{__()});let n;o("Reject Lexer.NA",()=>{n=rr(e,N=>N[Ur]===le.NA)});let i=!1,s;o("Transform Patterns",()=>{i=!1,s=y(n,N=>{let C=N[Ur];if(nt(C)){let v=C.source;return v.length===1&&v!=="^"&&v!=="$"&&v!=="."&&!C.ignoreCase?v:v.length===2&&v[0]==="\\"&&!oe(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],v[1])?v[1]:t.useSticky?nE(C):oE(C)}else{if(De(C))return i=!0,{exec:C};if(typeof C=="object")return i=!0,C;if(typeof C=="string"){if(C.length===1)return C;{let v=C.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),w=new RegExp(v);return t.useSticky?nE(w):oE(w)}}else throw Error("non exhaustive match")}})});let c,l,p,f,d;o("misc mapping",()=>{c=y(n,N=>N.tokenTypeIdx),l=y(n,N=>{let C=N.GROUP;if(C!==le.SKIPPED){if(Ce(C))return C;if(Be(C))return!1;throw Error("non exhaustive match")}}),p=y(n,N=>{let C=N.LONGER_ALT;if(C)return b(C)?y(C,w=>ya(n,w)):[ya(n,C)]}),f=y(n,N=>N.PUSH_MODE),d=y(n,N=>F(N,"POP_MODE"))});let T;o("Line Terminator Handling",()=>{let N=fE(t.lineTerminatorCharacters);T=y(n,C=>!1),t.positionTracking!=="onlyOffset"&&(T=y(n,C=>F(C,"LINE_BREAKS")?!!C.LINE_BREAKS:mE(C,N)===!1&&Ba(N,C.PATTERN)))});let S,g,x,L;o("Misc Mapping #2",()=>{S=y(n,uE),g=y(s,M_),x=ge(n,(N,C)=>{let v=C.GROUP;return Ce(v)&&v!==le.SKIPPED&&(N[v]=[]),N},{}),L=y(s,(N,C)=>({pattern:s[C],longerAlt:p[C],canLineTerminator:T[C],isCustom:S[C],short:g[C],group:l[C],push:f[C],pop:d[C],tokenTypeIdx:c[C],tokenType:n[C]}))});let _=!0,O=[];return t.safeMode||o("First Char Optimization",()=>{O=ge(n,(N,C,v)=>{if(typeof C.PATTERN=="string"){let w=C.PATTERN.charCodeAt(0),Qe=Rt(w);Um(N,Qe,L[v])}else if(b(C.START_CHARS_HINT)){let w;M(C.START_CHARS_HINT,Qe=>{let em=typeof Qe=="string"?Qe.charCodeAt(0):Qe,ft=Rt(em);w!==ft&&(w=ft,Um(N,ft,L[v]))})}else if(nt(C.PATTERN))if(C.PATTERN.unicode)_=!1,t.ensureOptimizations&&Hr(`${dn} Unable to analyze < ${C.PATTERN.toString()} > pattern.
20
20
  The regexp unicode flag is not currently supported by the regexp-to-ast library.
21
21
  This will disable the lexer's first char optimizations.
22
- For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{let v=dA(N.PATTERN,t.ensureOptimizations);D(v)&&(y=!1),_(v,lt=>{oh(C,lt,U[I])})}else t.ensureOptimizations&&qo(`${Ga} TokenType: <${N.name}> is using a custom token pattern without providing <start_chars_hint> parameter.
22
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{let w=rE(C.PATTERN,t.ensureOptimizations);D(w)&&(_=!1),M(w,Qe=>{Um(N,Qe,L[v])})}else t.ensureOptimizations&&Hr(`${dn} TokenType: <${C.name}> is using a custom token pattern without providing <start_chars_hint> parameter.
23
23
  This will disable the lexer's first char optimizations.
24
- For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),y=!1;return C},[])}),{emptyGroups:R,patternIdxToConfig:U,charCodeToPatternIdxToConfig:O,hasCustom:a,canBeOptimized:y}}r(EA,"analyzeTokenTypes");function SA(e,t){let o=[],n=Vj(e);o=o.concat(n.errors);let a=qj(n.valid),s=a.valid;return o=o.concat(a.errors),o=o.concat(Dj(s)),o=o.concat(Xj(s)),o=o.concat(Qj(s,t)),o=o.concat(Zj(s)),o}r(SA,"validatePatterns");function Dj(e){let t=[],o=Be(e,n=>Bt(n[lo]));return t=t.concat(Wj(o)),t=t.concat(Hj(o)),t=t.concat(zj(o)),t=t.concat(Jj(o)),t=t.concat(Kj(o)),t}r(Dj,"validateRegExpPattern");function Vj(e){let t=Be(e,a=>!M(a,lo)),o=b(t,a=>({message:"Token Type: ->"+a.name+"<- missing static 'PATTERN' property",type:se.MISSING_PATTERN,tokenTypes:[a]})),n=Ur(e,t);return{errors:o,valid:n}}r(Vj,"findMissingPatterns");function qj(e){let t=Be(e,a=>{let s=a[lo];return!Bt(s)&&!We(s)&&!M(s,"exec")&&!Ye(s)}),o=b(t,a=>({message:"Token Type: ->"+a.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:se.INVALID_PATTERN,tokenTypes:[a]})),n=Ur(e,t);return{errors:o,valid:n}}r(qj,"findInvalidPatterns");var jj=/[^\\][$]/;function Wj(e){class t extends wr{static{r(this,"EndAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitEndAnchor(s){this.found=!0}}let o=Be(e,a=>{let s=a.PATTERN;try{let l=nn(s),c=new t;return c.visit(l),c.found}catch{return jj.test(s.source)}});return b(o,a=>({message:`Unexpected RegExp Anchor Error:
25
- Token Type: ->`+a.name+`<- static 'PATTERN' cannot contain end of input anchor '$'
26
- See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:se.EOI_ANCHOR_FOUND,tokenTypes:[a]}))}r(Wj,"findEndOfInputAnchor");function Kj(e){let t=Be(e,n=>n.PATTERN.test(""));return b(t,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' must not match an empty string",type:se.EMPTY_MATCH_PATTERN,tokenTypes:[n]}))}r(Kj,"findEmptyMatchRegExps");var Yj=/[^\\[][\^]|^\^/;function Hj(e){class t extends wr{static{r(this,"StartAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitStartAnchor(s){this.found=!0}}let o=Be(e,a=>{let s=a.PATTERN;try{let l=nn(s),c=new t;return c.visit(l),c.found}catch{return Yj.test(s.source)}});return b(o,a=>({message:`Unexpected RegExp Anchor Error:
27
- Token Type: ->`+a.name+`<- static 'PATTERN' cannot contain start of input anchor '^'
28
- See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:se.SOI_ANCHOR_FOUND,tokenTypes:[a]}))}r(Hj,"findStartOfInputAnchor");function zj(e){let t=Be(e,n=>{let a=n[lo];return a instanceof RegExp&&(a.multiline||a.global)});return b(t,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:se.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[n]}))}r(zj,"findUnsupportedFlags");function Jj(e){let t=[],o=b(e,s=>Le(e,(l,c)=>(s.PATTERN.source===c.PATTERN.source&&!me(t,c)&&c.PATTERN!==ue.NA&&(t.push(c),l.push(c)),l),[]));o=wt(o);let n=Be(o,s=>s.length>1);return b(n,s=>{let l=b(s,p=>p.name);return{message:`The same RegExp pattern ->${_e(s).PATTERN}<-has been used in all of the following Token Types: ${l.join(", ")} <-`,type:se.DUPLICATE_PATTERNS_FOUND,tokenTypes:s}})}r(Jj,"findDuplicatePatterns");function Xj(e){let t=Be(e,n=>{if(!M(n,"GROUP"))return!1;let a=n.GROUP;return a!==ue.SKIPPED&&a!==ue.NA&&!Ye(a)});return b(t,n=>({message:"Token Type: ->"+n.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:se.INVALID_GROUP_TYPE_FOUND,tokenTypes:[n]}))}r(Xj,"findInvalidGroupType");function Qj(e,t){let o=Be(e,a=>a.PUSH_MODE!==void 0&&!me(t,a.PUSH_MODE));return b(o,a=>({message:`Token Type: ->${a.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${a.PUSH_MODE}<-which does not exist`,type:se.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[a]}))}r(Qj,"findModesThatDoNotExist");function Zj(e){let t=[],o=Le(e,(n,a,s)=>{let l=a.PATTERN;return l===ue.NA||(Ye(l)?n.push({str:l,idx:s,tokenType:a}):Bt(l)&&eW(l)&&n.push({str:l.source,idx:s,tokenType:a})),n},[]);return _(e,(n,a)=>{_(o,({str:s,idx:l,tokenType:c})=>{if(a<l&&$j(s,n.PATTERN)){let p=`Token: ->${c.name}<- can never be matched.
24
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),_=!1;return N},[])}),{emptyGroups:x,patternIdxToConfig:L,charCodeToPatternIdxToConfig:O,hasCustom:i,canBeOptimized:_}}r(aE,"analyzeTokenTypes");function iE(e,t){let o=[],n=E_(e);o=o.concat(n.errors);let i=h_(n.valid),s=i.valid;return o=o.concat(i.errors),o=o.concat(T_(s)),o=o.concat(x_(s)),o=o.concat(C_(s,t)),o=o.concat(O_(s)),o}r(iE,"validatePatterns");function T_(e){let t=[],o=we(e,n=>nt(n[Ur]));return t=t.concat(A_(o)),t=t.concat(k_(o)),t=t.concat(R_(o)),t=t.concat(L_(o)),t=t.concat(U_(o)),t}r(T_,"validateRegExpPattern");function E_(e){let t=we(e,i=>!F(i,Ur)),o=y(t,i=>({message:"Token Type: ->"+i.name+"<- missing static 'PATTERN' property",type:ne.MISSING_PATTERN,tokenTypes:[i]})),n=tr(e,t);return{errors:o,valid:n}}r(E_,"findMissingPatterns");function h_(e){let t=we(e,i=>{let s=i[Ur];return!nt(s)&&!De(s)&&!F(s,"exec")&&!Ce(s)}),o=y(t,i=>({message:"Token Type: ->"+i.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:ne.INVALID_PATTERN,tokenTypes:[i]})),n=tr(e,t);return{errors:o,valid:n}}r(h_,"findInvalidPatterns");var S_=/[^\\][$]/;function A_(e){class t extends nr{static{r(this,"EndAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitEndAnchor(s){this.found=!0}}let o=we(e,i=>{let s=i.PATTERN;try{let c=Xr(s),l=new t;return l.visit(c),l.found}catch{return S_.test(s.source)}});return y(o,i=>({message:`Unexpected RegExp Anchor Error:
25
+ Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain end of input anchor '$'
26
+ See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:ne.EOI_ANCHOR_FOUND,tokenTypes:[i]}))}r(A_,"findEndOfInputAnchor");function U_(e){let t=we(e,n=>n.PATTERN.test(""));return y(t,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' must not match an empty string",type:ne.EMPTY_MATCH_PATTERN,tokenTypes:[n]}))}r(U_,"findEmptyMatchRegExps");var g_=/[^\\[][\^]|^\^/;function k_(e){class t extends nr{static{r(this,"StartAnchorFinder")}constructor(){super(...arguments),this.found=!1}visitStartAnchor(s){this.found=!0}}let o=we(e,i=>{let s=i.PATTERN;try{let c=Xr(s),l=new t;return l.visit(c),l.found}catch{return g_.test(s.source)}});return y(o,i=>({message:`Unexpected RegExp Anchor Error:
27
+ Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain start of input anchor '^'
28
+ See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:ne.SOI_ANCHOR_FOUND,tokenTypes:[i]}))}r(k_,"findStartOfInputAnchor");function R_(e){let t=we(e,n=>{let i=n[Ur];return i instanceof RegExp&&(i.multiline||i.global)});return y(t,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:ne.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[n]}))}r(R_,"findUnsupportedFlags");function L_(e){let t=[],o=y(e,s=>ge(e,(c,l)=>(s.PATTERN.source===l.PATTERN.source&&!oe(t,l)&&l.PATTERN!==le.NA&&(t.push(l),c.push(l)),c),[]));o=gt(o);let n=we(o,s=>s.length>1);return y(n,s=>{let c=y(s,p=>p.name);return{message:`The same RegExp pattern ->${Ue(s).PATTERN}<-has been used in all of the following Token Types: ${c.join(", ")} <-`,type:ne.DUPLICATE_PATTERNS_FOUND,tokenTypes:s}})}r(L_,"findDuplicatePatterns");function x_(e){let t=we(e,n=>{if(!F(n,"GROUP"))return!1;let i=n.GROUP;return i!==le.SKIPPED&&i!==le.NA&&!Ce(i)});return y(t,n=>({message:"Token Type: ->"+n.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:ne.INVALID_GROUP_TYPE_FOUND,tokenTypes:[n]}))}r(x_,"findInvalidGroupType");function C_(e,t){let o=we(e,i=>i.PUSH_MODE!==void 0&&!oe(t,i.PUSH_MODE));return y(o,i=>({message:`Token Type: ->${i.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${i.PUSH_MODE}<-which does not exist`,type:ne.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[i]}))}r(C_,"findModesThatDoNotExist");function O_(e){let t=[],o=ge(e,(n,i,s)=>{let c=i.PATTERN;return c===le.NA||(Ce(c)?n.push({str:c,idx:s,tokenType:i}):nt(c)&&b_(c)&&n.push({str:c.source,idx:s,tokenType:i})),n},[]);return M(e,(n,i)=>{M(o,({str:s,idx:c,tokenType:l})=>{if(i<c&&N_(s,n.PATTERN)){let p=`Token: ->${l.name}<- can never be matched.
29
29
  Because it appears AFTER the Token Type ->${n.name}<-in the lexer's definition.
30
- See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;t.push({message:p,type:se.UNREACHABLE_PATTERN,tokenTypes:[n,c]})}})}),t}r(Zj,"findUnreachablePatterns");function $j(e,t){if(Bt(t)){if(tW(t))return!1;let o=t.exec(e);return o!==null&&o.index===0}else{if(We(t))return t(e,0,[],{});if(M(t,"exec"))return t.exec(e,0,[],{});if(typeof t=="string")return t===e;throw Error("non exhaustive match")}}r($j,"tryToMatchStrToPattern");function eW(e){return Pt([".","\\","[","]","|","^","$","(",")","?","*","+","{"],o=>e.source.indexOf(o)!==-1)===void 0}r(eW,"noMetaChar");function tW(e){return/(\(\?=)|(\(\?!)|(\(\?<=)|(\(\?<!)/.test(e.source)}r(tW,"usesLookAheadOrBehind");function hA(e){let t=e.ignoreCase?"i":"";return new RegExp(`^(?:${e.source})`,t)}r(hA,"addStartOfInput");function TA(e){let t=e.ignoreCase?"iy":"y";return new RegExp(`${e.source}`,t)}r(TA,"addStickyFlag");function gA(e,t,o){let n=[];return M(e,sn)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+sn+`> property in its definition
31
- `,type:se.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),M(e,vs)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+vs+`> property in its definition
32
- `,type:se.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),M(e,vs)&&M(e,sn)&&!M(e.modes,e.defaultMode)&&n.push({message:`A MultiMode Lexer cannot be initialized with a ${sn}: <${e.defaultMode}>which does not exist
33
- `,type:se.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),M(e,vs)&&_(e.modes,(a,s)=>{_(a,(l,c)=>{if(Ge(l))n.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${s}> at index: <${c}>
34
- `,type:se.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if(M(l,"LONGER_ALT")){let p=F(l.LONGER_ALT)?l.LONGER_ALT:[l.LONGER_ALT];_(p,f=>{!Ge(f)&&!me(a,f)&&n.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${f.name}> on token <${l.name}> outside of mode <${s}>
35
- `,type:se.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})}})}),n}r(gA,"performRuntimeChecks");function xA(e,t,o){let n=[],a=!1,s=wt(Ne(Y(e.modes))),l=Rr(s,p=>p[lo]===ue.NA),c=kA(o);return t&&_(l,p=>{let f=LA(p,c);if(f!==!1){let h={message:oW(p,f),type:f.issue,tokenType:p};n.push(h)}else M(p,"LINE_BREAKS")?p.LINE_BREAKS===!0&&(a=!0):Is(c,p.PATTERN)&&(a=!0)}),t&&!a&&n.push({message:`Warning: No LINE_BREAKS Found.
30
+ See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;t.push({message:p,type:ne.UNREACHABLE_PATTERN,tokenTypes:[n,l]})}})}),t}r(O_,"findUnreachablePatterns");function N_(e,t){if(nt(t)){if(y_(t))return!1;let o=t.exec(e);return o!==null&&o.index===0}else{if(De(t))return t(e,0,[],{});if(F(t,"exec"))return t.exec(e,0,[],{});if(typeof t=="string")return t===e;throw Error("non exhaustive match")}}r(N_,"tryToMatchStrToPattern");function b_(e){return kt([".","\\","[","]","|","^","$","(",")","?","*","+","{"],o=>e.source.indexOf(o)!==-1)===void 0}r(b_,"noMetaChar");function y_(e){return/(\(\?=)|(\(\?!)|(\(\?<=)|(\(\?<!)/.test(e.source)}r(y_,"usesLookAheadOrBehind");function oE(e){let t=e.ignoreCase?"i":"";return new RegExp(`^(?:${e.source})`,t)}r(oE,"addStartOfInput");function nE(e){let t=e.ignoreCase?"iy":"y";return new RegExp(`${e.source}`,t)}r(nE,"addStickyFlag");function sE(e,t,o){let n=[];return F(e,Zr)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+Zr+`> property in its definition
31
+ `,type:ne.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),F(e,Pa)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+Pa+`> property in its definition
32
+ `,type:ne.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),F(e,Pa)&&F(e,Zr)&&!F(e.modes,e.defaultMode)&&n.push({message:`A MultiMode Lexer cannot be initialized with a ${Zr}: <${e.defaultMode}>which does not exist
33
+ `,type:ne.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),F(e,Pa)&&M(e.modes,(i,s)=>{M(i,(c,l)=>{if(Be(c))n.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${s}> at index: <${l}>
34
+ `,type:ne.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if(F(c,"LONGER_ALT")){let p=b(c.LONGER_ALT)?c.LONGER_ALT:[c.LONGER_ALT];M(p,f=>{!Be(f)&&!oe(i,f)&&n.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${f.name}> on token <${c.name}> outside of mode <${s}>
35
+ `,type:ne.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})}})}),n}r(sE,"performRuntimeChecks");function cE(e,t,o){let n=[],i=!1,s=gt(xe(K(e.modes))),c=rr(s,p=>p[Ur]===le.NA),l=fE(o);return t&&M(c,p=>{let f=mE(p,l);if(f!==!1){let T={message:F_(p,f),type:f.issue,tokenType:p};n.push(T)}else F(p,"LINE_BREAKS")?p.LINE_BREAKS===!0&&(i=!0):Ba(l,p.PATTERN)&&(i=!0)}),t&&!i&&n.push({message:`Warning: No LINE_BREAKS Found.
36
36
  This Lexer has been defined to track line and column information,
37
37
  But none of the Token Types can be identified as matching a line terminator.
38
38
  See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS
39
- for details.`,type:se.NO_LINE_BREAKS_FLAGS}),n}r(xA,"performWarningRuntimeChecks");function AA(e){let t={},o=X(e);return _(o,n=>{let a=e[n];if(F(a))t[n]=[];else throw Error("non exhaustive match")}),t}r(AA,"cloneEmptyGroups");function UA(e){let t=e.PATTERN;if(Bt(t))return!1;if(We(t))return!0;if(M(t,"exec"))return!0;if(Ye(t))return!1;throw Error("non exhaustive match")}r(UA,"isCustomPattern");function rW(e){return Ye(e)&&e.length===1?e.charCodeAt(0):!1}r(rW,"isShortPattern");var RA={test:r(function(e){let t=e.length;for(let o=this.lastIndex;o<t;o++){let n=e.charCodeAt(o);if(n===10)return this.lastIndex=o+1,!0;if(n===13)return e.charCodeAt(o+1)===10?this.lastIndex=o+2:this.lastIndex=o+1,!0}return!1},"test"),lastIndex:0};function LA(e,t){if(M(e,"LINE_BREAKS"))return!1;if(Bt(e.PATTERN)){try{Is(t,e.PATTERN)}catch(o){return{issue:se.IDENTIFY_TERMINATOR,errMsg:o.message}}return!1}else{if(Ye(e.PATTERN))return!1;if(UA(e))return{issue:se.CUSTOM_LINE_BREAK};throw Error("non exhaustive match")}}r(LA,"checkLineBreaksIssues");function oW(e,t){if(t.issue===se.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern.
39
+ for details.`,type:ne.NO_LINE_BREAKS_FLAGS}),n}r(cE,"performWarningRuntimeChecks");function lE(e){let t={},o=W(e);return M(o,n=>{let i=e[n];if(b(i))t[n]=[];else throw Error("non exhaustive match")}),t}r(lE,"cloneEmptyGroups");function uE(e){let t=e.PATTERN;if(nt(t))return!1;if(De(t))return!0;if(F(t,"exec"))return!0;if(Ce(t))return!1;throw Error("non exhaustive match")}r(uE,"isCustomPattern");function M_(e){return Ce(e)&&e.length===1?e.charCodeAt(0):!1}r(M_,"isShortPattern");var pE={test:r(function(e){let t=e.length;for(let o=this.lastIndex;o<t;o++){let n=e.charCodeAt(o);if(n===10)return this.lastIndex=o+1,!0;if(n===13)return e.charCodeAt(o+1)===10?this.lastIndex=o+2:this.lastIndex=o+1,!0}return!1},"test"),lastIndex:0};function mE(e,t){if(F(e,"LINE_BREAKS"))return!1;if(nt(e.PATTERN)){try{Ba(t,e.PATTERN)}catch(o){return{issue:ne.IDENTIFY_TERMINATOR,errMsg:o.message}}return!1}else{if(Ce(e.PATTERN))return!1;if(uE(e))return{issue:ne.CUSTOM_LINE_BREAK};throw Error("non exhaustive match")}}r(mE,"checkLineBreaksIssues");function F_(e,t){if(t.issue===ne.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern.
40
40
  The problem is in the <${e.name}> Token Type
41
41
  Root cause: ${t.errMsg}.
42
- For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(t.issue===se.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the <line_breaks> option.
42
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(t.issue===ne.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the <line_breaks> option.
43
43
  The problem is in the <${e.name}> Token Type
44
- For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}r(oW,"buildLineBreakIssueMessage");function kA(e){return b(e,o=>Ye(o)?o.charCodeAt(0):o)}r(kA,"getCharCodes");function oh(e,t,o){e[t]===void 0?e[t]=[o]:e[t].push(o)}r(oh,"addToMapOfArrays");var an=256,ws=[];function Vt(e){return e<an?e:ws[e]}r(Vt,"charCodeToOptimizedIndex");function nW(){if(D(ws)){ws=new Array(65536);for(let e=0;e<65536;e++)ws[e]=e>255?255+~~(e/255):e}}r(nW,"initCharCodeToOptimizedIndexMap");function er(e,t){let o=e.tokenTypeIdx;return o===t.tokenTypeIdx?!0:t.isParent===!0&&t.categoryMatchesMap[o]===!0}r(er,"tokenStructuredMatcher");function ln(e,t){return e.tokenTypeIdx===t.tokenTypeIdx}r(ln,"tokenStructuredMatcherNoCategories");var OA=1,NA={};function tr(e){let t=aW(e);iW(t),lW(t),sW(t),_(t,o=>{o.isParent=o.categoryMatches.length>0})}r(tr,"augmentTokenTypes");function aW(e){let t=Z(e),o=e,n=!0;for(;n;){o=wt(Ne(b(o,s=>s.CATEGORIES)));let a=Ur(o,t);t=t.concat(a),D(a)?n=!1:o=a}return t}r(aW,"expandCategories");function iW(e){_(e,t=>{ah(t)||(NA[OA]=t,t.tokenTypeIdx=OA++),CA(t)&&!F(t.CATEGORIES)&&(t.CATEGORIES=[t.CATEGORIES]),CA(t)||(t.CATEGORIES=[]),cW(t)||(t.categoryMatches=[]),pW(t)||(t.categoryMatchesMap={})})}r(iW,"assignTokenDefaultProps");function sW(e){_(e,t=>{t.categoryMatches=[],_(t.categoryMatchesMap,(o,n)=>{t.categoryMatches.push(NA[n].tokenTypeIdx)})})}r(sW,"assignCategoriesTokensProp");function lW(e){_(e,t=>{yA([],t)})}r(lW,"assignCategoriesMapProp");function yA(e,t){_(e,o=>{t.categoryMatchesMap[o.tokenTypeIdx]=!0}),_(t.CATEGORIES,o=>{let n=e.concat(t);me(n,o)||yA(n,o)})}r(yA,"singleAssignCategoriesToksMap");function ah(e){return M(e,"tokenTypeIdx")}r(ah,"hasShortKeyProperty");function CA(e){return M(e,"CATEGORIES")}r(CA,"hasCategoriesProperty");function cW(e){return M(e,"categoryMatches")}r(cW,"hasExtendingTokensTypesProperty");function pW(e){return M(e,"categoryMatchesMap")}r(pW,"hasExtendingTokensTypesMapProperty");function bA(e){return M(e,"tokenTypeIdx")}r(bA,"isTokenType");var ih={buildUnableToPopLexerModeMessage(e){return`Unable to pop Lexer Mode after encountering Token ->${e.image}<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(e,t,o,n,a,s){return`unexpected character: ->${e.charAt(t)}<- at offset: ${t}, skipped ${o} characters.`}};var se;(function(e){e[e.MISSING_PATTERN=0]="MISSING_PATTERN",e[e.INVALID_PATTERN=1]="INVALID_PATTERN",e[e.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",e[e.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",e[e.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",e[e.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",e[e.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",e[e.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",e[e.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",e[e.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",e[e.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",e[e.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",e[e.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",e[e.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",e[e.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",e[e.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",e[e.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",e[e.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"})(se||(se={}));var Da={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[`
45
- `,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:ih,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(Da);var ue=class{static{r(this,"Lexer")}constructor(t,o=Da){if(this.lexerDefinition=t,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},this.TRACE_INIT=(a,s)=>{if(this.traceInitPerf===!0){this.traceInitIndent++;let l=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${l}--> <${a}>`);let{time:c,value:p}=ba(s),f=c>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&f(`${l}<-- <${a}> time: ${c}ms`),this.traceInitIndent--,p}else return s()},typeof o=="boolean")throw Error(`The second argument to the Lexer constructor is now an ILexerConfig Object.
46
- a boolean 2nd argument is no longer supported`);this.config=Lo({},Da,o);let n=this.config.traceInitPerf;n===!0?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):typeof n=="number"&&(this.traceInitMaxIdent=n,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let a,s=!0;this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===Da.lineTerminatorsPattern)this.config.lineTerminatorsPattern=RA;else if(this.config.lineTerminatorCharacters===Da.lineTerminatorCharacters)throw Error(`Error: Missing <lineTerminatorCharacters> property on the Lexer config.
47
- For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS`);if(o.safeMode&&o.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),F(t)?a={modes:{defaultMode:Z(t)},defaultMode:sn}:(s=!1,a=Z(t))}),this.config.skipValidations===!1&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(gA(a,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(xA(a,this.trackStartLines,this.config.lineTerminatorCharacters))})),a.modes=a.modes?a.modes:{},_(a.modes,(c,p)=>{a.modes[p]=Rr(c,f=>Ge(f))});let l=X(a.modes);if(_(a.modes,(c,p)=>{this.TRACE_INIT(`Mode: <${p}> processing`,()=>{if(this.modes.push(p),this.config.skipValidations===!1&&this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(SA(c,l))}),D(this.lexerDefinitionErrors)){tr(c);let f;this.TRACE_INIT("analyzeTokenTypes",()=>{f=EA(c,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:o.positionTracking,ensureOptimizations:o.ensureOptimizations,safeMode:o.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[p]=f.patternIdxToConfig,this.charCodeToPatternIdxToConfig[p]=f.charCodeToPatternIdxToConfig,this.emptyGroups=Lo({},this.emptyGroups,f.emptyGroups),this.hasCustom=f.hasCustom||this.hasCustom,this.canModeBeOptimized[p]=f.canBeOptimized}})}),this.defaultMode=a.defaultMode,!D(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling){let p=b(this.lexerDefinitionErrors,f=>f.message).join(`-----------------------
44
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}r(F_,"buildLineBreakIssueMessage");function fE(e){return y(e,o=>Ce(o)?o.charCodeAt(0):o)}r(fE,"getCharCodes");function Um(e,t,o){e[t]===void 0?e[t]=[o]:e[t].push(o)}r(Um,"addToMapOfArrays");var Qr=256,Ga=[];function Rt(e){return e<Qr?e:Ga[e]}r(Rt,"charCodeToOptimizedIndex");function __(){if(D(Ga)){Ga=new Array(65536);for(let e=0;e<65536;e++)Ga[e]=e>255?255+~~(e/255):e}}r(__,"initCharCodeToOptimizedIndexMap");function It(e,t){let o=e.tokenTypeIdx;return o===t.tokenTypeIdx?!0:t.isParent===!0&&t.categoryMatchesMap[o]===!0}r(It,"tokenStructuredMatcher");function $r(e,t){return e.tokenTypeIdx===t.tokenTypeIdx}r($r,"tokenStructuredMatcherNoCategories");var dE=1,EE={};function vt(e){let t=I_(e);v_(t),B_(t),w_(t),M(t,o=>{o.isParent=o.categoryMatches.length>0})}r(vt,"augmentTokenTypes");function I_(e){let t=X(e),o=e,n=!0;for(;n;){o=gt(xe(y(o,s=>s.CATEGORIES)));let i=tr(o,t);t=t.concat(i),D(i)?n=!1:o=i}return t}r(I_,"expandCategories");function v_(e){M(e,t=>{km(t)||(EE[dE]=t,t.tokenTypeIdx=dE++),TE(t)&&!b(t.CATEGORIES)&&(t.CATEGORIES=[t.CATEGORIES]),TE(t)||(t.CATEGORIES=[]),P_(t)||(t.categoryMatches=[]),G_(t)||(t.categoryMatchesMap={})})}r(v_,"assignTokenDefaultProps");function w_(e){M(e,t=>{t.categoryMatches=[],M(t.categoryMatchesMap,(o,n)=>{t.categoryMatches.push(EE[n].tokenTypeIdx)})})}r(w_,"assignCategoriesTokensProp");function B_(e){M(e,t=>{hE([],t)})}r(B_,"assignCategoriesMapProp");function hE(e,t){M(e,o=>{t.categoryMatchesMap[o.tokenTypeIdx]=!0}),M(t.CATEGORIES,o=>{let n=e.concat(t);oe(n,o)||hE(n,o)})}r(hE,"singleAssignCategoriesToksMap");function km(e){return F(e,"tokenTypeIdx")}r(km,"hasShortKeyProperty");function TE(e){return F(e,"CATEGORIES")}r(TE,"hasCategoriesProperty");function P_(e){return F(e,"categoryMatches")}r(P_,"hasExtendingTokensTypesProperty");function G_(e){return F(e,"categoryMatchesMap")}r(G_,"hasExtendingTokensTypesMapProperty");function SE(e){return F(e,"tokenTypeIdx")}r(SE,"isTokenType");var Rm={buildUnableToPopLexerModeMessage(e){return`Unable to pop Lexer Mode after encountering Token ->${e.image}<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(e,t,o,n,i,s){return`unexpected character: ->${e.charAt(t)}<- at offset: ${t}, skipped ${o} characters.`}};var ne;(function(e){e[e.MISSING_PATTERN=0]="MISSING_PATTERN",e[e.INVALID_PATTERN=1]="INVALID_PATTERN",e[e.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",e[e.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",e[e.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",e[e.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",e[e.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",e[e.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",e[e.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",e[e.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",e[e.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",e[e.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",e[e.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",e[e.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",e[e.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",e[e.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",e[e.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",e[e.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"})(ne||(ne={}));var Tn={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[`
45
+ `,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:Rm,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(Tn);var le=class{static{r(this,"Lexer")}constructor(t,o=Tn){if(this.lexerDefinition=t,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},this.TRACE_INIT=(i,s)=>{if(this.traceInitPerf===!0){this.traceInitIndent++;let c=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${c}--> <${i}>`);let{time:l,value:p}=cn(s),f=l>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&f(`${c}<-- <${i}> time: ${l}ms`),this.traceInitIndent--,p}else return s()},typeof o=="boolean")throw Error(`The second argument to the Lexer constructor is now an ILexerConfig Object.
46
+ a boolean 2nd argument is no longer supported`);this.config=_e({},Tn,o);let n=this.config.traceInitPerf;n===!0?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):typeof n=="number"&&(this.traceInitMaxIdent=n,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let i,s=!0;this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===Tn.lineTerminatorsPattern)this.config.lineTerminatorsPattern=pE;else if(this.config.lineTerminatorCharacters===Tn.lineTerminatorCharacters)throw Error(`Error: Missing <lineTerminatorCharacters> property on the Lexer config.
47
+ For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS`);if(o.safeMode&&o.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),b(t)?i={modes:{defaultMode:X(t)},defaultMode:Zr}:(s=!1,i=X(t))}),this.config.skipValidations===!1&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(sE(i,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(cE(i,this.trackStartLines,this.config.lineTerminatorCharacters))})),i.modes=i.modes?i.modes:{},M(i.modes,(l,p)=>{i.modes[p]=rr(l,f=>Be(f))});let c=W(i.modes);if(M(i.modes,(l,p)=>{this.TRACE_INIT(`Mode: <${p}> processing`,()=>{if(this.modes.push(p),this.config.skipValidations===!1&&this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(iE(l,c))}),D(this.lexerDefinitionErrors)){vt(l);let f;this.TRACE_INIT("analyzeTokenTypes",()=>{f=aE(l,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:o.positionTracking,ensureOptimizations:o.ensureOptimizations,safeMode:o.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[p]=f.patternIdxToConfig,this.charCodeToPatternIdxToConfig[p]=f.charCodeToPatternIdxToConfig,this.emptyGroups=_e({},this.emptyGroups,f.emptyGroups),this.hasCustom=f.hasCustom||this.hasCustom,this.canModeBeOptimized[p]=f.canBeOptimized}})}),this.defaultMode=i.defaultMode,!D(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling){let p=y(this.lexerDefinitionErrors,f=>f.message).join(`-----------------------
48
48
  `);throw new Error(`Errors detected in definition of Lexer:
49
- `+p)}_(this.lexerDefinitionWarning,c=>{ya(c.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(nh?(this.chopInput=dt,this.match=this.matchWithTest):(this.updateLastIndex=pe,this.match=this.matchWithExec),s&&(this.handleModes=pe),this.trackStartLines===!1&&(this.computeNewColumn=dt),this.trackEndLines===!1&&(this.updateTokenEndLineColumnLocation=pe),/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))this.createTokenInstance=this.createOffsetOnlyToken;else throw Error(`Invalid <positionTracking> config option: "${this.config.positionTracking}"`);this.hasCustom?(this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom):(this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom)}),this.TRACE_INIT("Failed Optimization Warnings",()=>{let c=Le(this.canModeBeOptimized,(p,f,d)=>(f===!1&&p.push(d),p),[]);if(o.ensureOptimizations&&!D(c))throw Error(`Lexer Modes: < ${c.join(", ")} > cannot be optimized.
49
+ `+p)}M(this.lexerDefinitionWarning,l=>{sn(l.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(gm?(this.chopInput=rt,this.match=this.matchWithTest):(this.updateLastIndex=ce,this.match=this.matchWithExec),s&&(this.handleModes=ce),this.trackStartLines===!1&&(this.computeNewColumn=rt),this.trackEndLines===!1&&(this.updateTokenEndLineColumnLocation=ce),/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))this.createTokenInstance=this.createOffsetOnlyToken;else throw Error(`Invalid <positionTracking> config option: "${this.config.positionTracking}"`);this.hasCustom?(this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom):(this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom)}),this.TRACE_INIT("Failed Optimization Warnings",()=>{let l=ge(this.canModeBeOptimized,(p,f,d)=>(f===!1&&p.push(d),p),[]);if(o.ensureOptimizations&&!D(l))throw Error(`Lexer Modes: < ${l.join(", ")} > cannot be optimized.
50
50
  Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode.
51
- Or inspect the console log for details on how to resolve these issues.`)}),this.TRACE_INIT("clearRegExpParserCache",()=>{uA()}),this.TRACE_INIT("toFastProperties",()=>{_a(this)})})}tokenize(t,o=this.defaultMode){if(!D(this.lexerDefinitionErrors)){let a=b(this.lexerDefinitionErrors,s=>s.message).join(`-----------------------
51
+ Or inspect the console log for details on how to resolve these issues.`)}),this.TRACE_INIT("clearRegExpParserCache",()=>{$T()}),this.TRACE_INIT("toFastProperties",()=>{ln(this)})})}tokenize(t,o=this.defaultMode){if(!D(this.lexerDefinitionErrors)){let i=y(this.lexerDefinitionErrors,s=>s.message).join(`-----------------------
52
52
  `);throw new Error(`Unable to Tokenize because Errors detected in definition of Lexer:
53
- `+a)}return this.tokenizeInternal(t,o)}tokenizeInternal(t,o){let n,a,s,l,c,p,f,d,h,T,S,R,U,y,O,C,N=t,I=N.length,v=0,lt=0,Rd=this.hasCustom?0:Math.floor(t.length/10),Nt=new Array(Rd),Ld=[],Aa=this.trackStartLines?1:void 0,ir=this.trackStartLines?1:void 0,Ua=AA(this.emptyGroups),bM=this.trackStartLines,kd=this.config.lineTerminatorsPattern,Ci=0,sr=[],Ra=[],La=[],Qh=[];Object.freeze(Qh);let ka;function Zh(){return sr}r(Zh,"getPossiblePatternsSlow");function $h(Pe){let mt=Vt(Pe),Eo=Ra[mt];return Eo===void 0?Qh:Eo}r($h,"getPossiblePatternsOptimized");let _M=r(Pe=>{if(La.length===1&&Pe.tokenType.PUSH_MODE===void 0){let mt=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(Pe);Ld.push({offset:Pe.startOffset,line:Pe.startLine,column:Pe.startColumn,length:Pe.image.length,message:mt})}else{La.pop();let mt=Lt(La);sr=this.patternIdxToConfig[mt],Ra=this.charCodeToPatternIdxToConfig[mt],Ci=sr.length;let Eo=this.canModeBeOptimized[mt]&&this.config.safeMode===!1;Ra&&Eo?ka=$h:ka=Zh}},"pop_mode");function eT(Pe){La.push(Pe),Ra=this.charCodeToPatternIdxToConfig[Pe],sr=this.patternIdxToConfig[Pe],Ci=sr.length,Ci=sr.length;let mt=this.canModeBeOptimized[Pe]&&this.config.safeMode===!1;Ra&&mt?ka=$h:ka=Zh}r(eT,"push_mode"),eT.call(this,o);let Ut,tT=this.config.recoveryEnabled;for(;v<I;){p=null;let Pe=N.charCodeAt(v),mt=ka(Pe),Eo=mt.length;for(n=0;n<Eo;n++){Ut=mt[n];let ct=Ut.pattern;f=null;let Kt=Ut.short;if(Kt!==!1?Pe===Kt&&(p=ct):Ut.isCustom===!0?(C=ct.exec(N,v,Nt,Ua),C!==null?(p=C[0],C.payload!==void 0&&(f=C.payload)):p=null):(this.updateLastIndex(ct,v),p=this.match(ct,t,v)),p!==null){if(c=Ut.longerAlt,c!==void 0){let lr=c.length;for(s=0;s<lr;s++){let Yt=sr[c[s]],$r=Yt.pattern;if(d=null,Yt.isCustom===!0?(C=$r.exec(N,v,Nt,Ua),C!==null?(l=C[0],C.payload!==void 0&&(d=C.payload)):l=null):(this.updateLastIndex($r,v),l=this.match($r,t,v)),l&&l.length>p.length){p=l,f=d,Ut=Yt;break}}}break}}if(p!==null){if(h=p.length,T=Ut.group,T!==void 0&&(S=Ut.tokenTypeIdx,R=this.createTokenInstance(p,v,S,Ut.tokenType,Aa,ir,h),this.handlePayload(R,f),T===!1?lt=this.addToken(Nt,lt,R):Ua[T].push(R)),t=this.chopInput(t,h),v=v+h,ir=this.computeNewColumn(ir,h),bM===!0&&Ut.canLineTerminator===!0){let ct=0,Kt,lr;kd.lastIndex=0;do Kt=kd.test(p),Kt===!0&&(lr=kd.lastIndex-1,ct++);while(Kt===!0);ct!==0&&(Aa=Aa+ct,ir=h-lr,this.updateTokenEndLineColumnLocation(R,T,lr,ct,Aa,ir,h))}this.handleModes(Ut,_M,eT,R)}else{let ct=v,Kt=Aa,lr=ir,Yt=tT===!1;for(;Yt===!1&&v<I;)for(t=this.chopInput(t,1),v++,a=0;a<Ci;a++){let $r=sr[a],Od=$r.pattern,rT=$r.short;if(rT!==!1?N.charCodeAt(v)===rT&&(Yt=!0):$r.isCustom===!0?Yt=Od.exec(N,v,Nt,Ua)!==null:(this.updateLastIndex(Od,v),Yt=Od.exec(t)!==null),Yt===!0)break}if(U=v-ct,ir=this.computeNewColumn(ir,U),O=this.config.errorMessageProvider.buildUnexpectedCharactersMessage(N,ct,U,Kt,lr,Lt(La)),Ld.push({offset:ct,line:Kt,column:lr,length:U,message:O}),tT===!1)break}}return this.hasCustom||(Nt.length=lt),{tokens:Nt,groups:Ua,errors:Ld}}handleModes(t,o,n,a){if(t.pop===!0){let s=t.push;o(a),s!==void 0&&n.call(this,s)}else t.push!==void 0&&n.call(this,t.push)}chopInput(t,o){return t.substring(o)}updateLastIndex(t,o){t.lastIndex=o}updateTokenEndLineColumnLocation(t,o,n,a,s,l,c){let p,f;o!==void 0&&(p=n===c-1,f=p?-1:0,a===1&&p===!0||(t.endLine=s+f,t.endColumn=l-1+-f))}computeNewColumn(t,o){return t+o}createOffsetOnlyToken(t,o,n,a){return{image:t,startOffset:o,tokenTypeIdx:n,tokenType:a}}createStartOnlyToken(t,o,n,a,s,l){return{image:t,startOffset:o,startLine:s,startColumn:l,tokenTypeIdx:n,tokenType:a}}createFullToken(t,o,n,a,s,l,c){return{image:t,startOffset:o,endOffset:o+c-1,startLine:s,endLine:s,startColumn:l,endColumn:l+c-1,tokenTypeIdx:n,tokenType:a}}addTokenUsingPush(t,o,n){return t.push(n),o}addTokenUsingMemberAccess(t,o,n){return t[o]=n,o++,o}handlePayloadNoCustom(t,o){}handlePayloadWithCustom(t,o){o!==null&&(t.payload=o)}matchWithTest(t,o,n){return t.test(o)===!0?o.substring(n,t.lastIndex):null}matchWithExec(t,o){let n=t.exec(o);return n!==null?n[0]:null}};ue.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.";ue.NA=/NOT_APPLICABLE/;function co(e){return sh(e)?e.LABEL:e.name}r(co,"tokenLabel");function sh(e){return Ye(e.LABEL)&&e.LABEL!==""}r(sh,"hasTokenLabel");var uW="parent",_A="categories",MA="label",FA="group",IA="push_mode",vA="pop_mode",wA="longer_alt",PA="line_breaks",BA="start_chars_hint";function rr(e){return fW(e)}r(rr,"createToken");function fW(e){let t=e.pattern,o={};if(o.name=e.name,Ge(t)||(o.PATTERN=t),M(e,uW))throw`The parent property is no longer supported.
54
- See: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details.`;return M(e,_A)&&(o.CATEGORIES=e[_A]),tr([o]),M(e,MA)&&(o.LABEL=e[MA]),M(e,FA)&&(o.GROUP=e[FA]),M(e,vA)&&(o.POP_MODE=e[vA]),M(e,IA)&&(o.PUSH_MODE=e[IA]),M(e,wA)&&(o.LONGER_ALT=e[wA]),M(e,PA)&&(o.LINE_BREAKS=e[PA]),M(e,BA)&&(o.START_CHARS_HINT=e[BA]),o}r(fW,"createTokenInternal");var kt=rr({name:"EOF",pattern:ue.NA});tr([kt]);function po(e,t,o,n,a,s,l,c){return{image:t,startOffset:o,endOffset:n,startLine:a,endLine:s,startColumn:l,endColumn:c,tokenTypeIdx:e.tokenTypeIdx,tokenType:e}}r(po,"createTokenInstance");function lh(e,t){return er(e,t)}r(lh,"tokenMatcher");var or={buildMismatchTokenMessage({expected:e,actual:t,previous:o,ruleName:n}){return`Expecting ${sh(e)?`--> ${co(e)} <--`:`token of type --> ${e.name} <--`} but found --> '${t.image}' <--`},buildNotAllInputParsedMessage({firstRedundant:e,ruleName:t}){return"Redundant input, expecting EOF but found: "+e.image},buildNoViableAltMessage({expectedPathsPerAlt:e,actual:t,previous:o,customUserDescription:n,ruleName:a}){let s="Expecting: ",c=`
55
- but found: '`+_e(t).image+"'";if(n)return s+n+c;{let p=Le(e,(T,S)=>T.concat(S),[]),f=b(p,T=>`[${b(T,S=>co(S)).join(", ")}]`),h=`one of these possible Token sequences:
56
- ${b(f,(T,S)=>` ${S+1}. ${T}`).join(`
57
- `)}`;return s+h+c}},buildEarlyExitMessage({expectedIterationPaths:e,actual:t,customUserDescription:o,ruleName:n}){let a="Expecting: ",l=`
58
- but found: '`+_e(t).image+"'";if(o)return a+o+l;{let p=`expecting at least one iteration which starts with one of these possible Token sequences::
59
- <${b(e,f=>`[${b(f,d=>co(d)).join(",")}]`).join(" ,")}>`;return a+p+l}}};Object.freeze(or);var GA={buildRuleNotFoundError(e,t){return"Invalid grammar, reference to a rule which is not defined: ->"+t.nonTerminalName+`<-
60
- inside top level rule: ->`+e.name+"<-"}},Ot={buildDuplicateFoundError(e,t){function o(d){return d instanceof q?d.terminalType.name:d instanceof $?d.nonTerminalName:""}r(o,"getExtraProductionArgument");let n=e.name,a=_e(t),s=a.idx,l=nt(a),c=o(a),p=s>0,f=`->${l}${p?s:""}<- ${c?`with argument: ->${c}<-`:""}
53
+ `+i)}return this.tokenizeInternal(t,o)}tokenizeInternal(t,o){let n,i,s,c,l,p,f,d,T,S,g,x,L,_,O,N,C=t,v=C.length,w=0,Qe=0,em=this.hasCustom?0:Math.floor(t.length/10),ft=new Array(em),tm=[],Qo=this.trackStartLines?1:void 0,Pt=this.trackStartLines?1:void 0,Zo=lE(this.emptyGroups),dx=this.trackStartLines,rm=this.config.lineTerminatorsPattern,$n=0,Gt=[],$o=[],en=[],tf=[];Object.freeze(tf);let tn;function rf(){return Gt}r(rf,"getPossiblePatternsSlow");function of(ve){let tt=Rt(ve),Lr=$o[tt];return Lr===void 0?tf:Lr}r(of,"getPossiblePatternsOptimized");let Tx=r(ve=>{if(en.length===1&&ve.tokenType.PUSH_MODE===void 0){let tt=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(ve);tm.push({offset:ve.startOffset,line:ve.startLine,column:ve.startColumn,length:ve.image.length,message:tt})}else{en.pop();let tt=ct(en);Gt=this.patternIdxToConfig[tt],$o=this.charCodeToPatternIdxToConfig[tt],$n=Gt.length;let Lr=this.canModeBeOptimized[tt]&&this.config.safeMode===!1;$o&&Lr?tn=of:tn=rf}},"pop_mode");function nf(ve){en.push(ve),$o=this.charCodeToPatternIdxToConfig[ve],Gt=this.patternIdxToConfig[ve],$n=Gt.length,$n=Gt.length;let tt=this.canModeBeOptimized[ve]&&this.config.safeMode===!1;$o&&tt?tn=of:tn=rf}r(nf,"push_mode"),nf.call(this,o);let it,af=this.config.recoveryEnabled;for(;w<v;){p=null;let ve=C.charCodeAt(w),tt=tn(ve),Lr=tt.length;for(n=0;n<Lr;n++){it=tt[n];let Ze=it.pattern;f=null;let Ot=it.short;if(Ot!==!1?ve===Ot&&(p=Ze):it.isCustom===!0?(N=Ze.exec(C,w,ft,Zo),N!==null?(p=N[0],N.payload!==void 0&&(f=N.payload)):p=null):(this.updateLastIndex(Ze,w),p=this.match(Ze,t,w)),p!==null){if(l=it.longerAlt,l!==void 0){let Dt=l.length;for(s=0;s<Dt;s++){let Nt=Gt[l[s]],fr=Nt.pattern;if(d=null,Nt.isCustom===!0?(N=fr.exec(C,w,ft,Zo),N!==null?(c=N[0],N.payload!==void 0&&(d=N.payload)):c=null):(this.updateLastIndex(fr,w),c=this.match(fr,t,w)),c&&c.length>p.length){p=c,f=d,it=Nt;break}}}break}}if(p!==null){if(T=p.length,S=it.group,S!==void 0&&(g=it.tokenTypeIdx,x=this.createTokenInstance(p,w,g,it.tokenType,Qo,Pt,T),this.handlePayload(x,f),S===!1?Qe=this.addToken(ft,Qe,x):Zo[S].push(x)),t=this.chopInput(t,T),w=w+T,Pt=this.computeNewColumn(Pt,T),dx===!0&&it.canLineTerminator===!0){let Ze=0,Ot,Dt;rm.lastIndex=0;do Ot=rm.test(p),Ot===!0&&(Dt=rm.lastIndex-1,Ze++);while(Ot===!0);Ze!==0&&(Qo=Qo+Ze,Pt=T-Dt,this.updateTokenEndLineColumnLocation(x,S,Dt,Ze,Qo,Pt,T))}this.handleModes(it,Tx,nf,x)}else{let Ze=w,Ot=Qo,Dt=Pt,Nt=af===!1;for(;Nt===!1&&w<v;)for(t=this.chopInput(t,1),w++,i=0;i<$n;i++){let fr=Gt[i],om=fr.pattern,sf=fr.short;if(sf!==!1?C.charCodeAt(w)===sf&&(Nt=!0):fr.isCustom===!0?Nt=om.exec(C,w,ft,Zo)!==null:(this.updateLastIndex(om,w),Nt=om.exec(t)!==null),Nt===!0)break}if(L=w-Ze,Pt=this.computeNewColumn(Pt,L),O=this.config.errorMessageProvider.buildUnexpectedCharactersMessage(C,Ze,L,Ot,Dt,ct(en)),tm.push({offset:Ze,line:Ot,column:Dt,length:L,message:O}),af===!1)break}}return this.hasCustom||(ft.length=Qe),{tokens:ft,groups:Zo,errors:tm}}handleModes(t,o,n,i){if(t.pop===!0){let s=t.push;o(i),s!==void 0&&n.call(this,s)}else t.push!==void 0&&n.call(this,t.push)}chopInput(t,o){return t.substring(o)}updateLastIndex(t,o){t.lastIndex=o}updateTokenEndLineColumnLocation(t,o,n,i,s,c,l){let p,f;o!==void 0&&(p=n===l-1,f=p?-1:0,i===1&&p===!0||(t.endLine=s+f,t.endColumn=c-1+-f))}computeNewColumn(t,o){return t+o}createOffsetOnlyToken(t,o,n,i){return{image:t,startOffset:o,tokenTypeIdx:n,tokenType:i}}createStartOnlyToken(t,o,n,i,s,c){return{image:t,startOffset:o,startLine:s,startColumn:c,tokenTypeIdx:n,tokenType:i}}createFullToken(t,o,n,i,s,c,l){return{image:t,startOffset:o,endOffset:o+l-1,startLine:s,endLine:s,startColumn:c,endColumn:c+l-1,tokenTypeIdx:n,tokenType:i}}addTokenUsingPush(t,o,n){return t.push(n),o}addTokenUsingMemberAccess(t,o,n){return t[o]=n,o++,o}handlePayloadNoCustom(t,o){}handlePayloadWithCustom(t,o){o!==null&&(t.payload=o)}matchWithTest(t,o,n){return t.test(o)===!0?o.substring(n,t.lastIndex):null}matchWithExec(t,o){let n=t.exec(o);return n!==null?n[0]:null}};le.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.";le.NA=/NOT_APPLICABLE/;function gr(e){return Lm(e)?e.LABEL:e.name}r(gr,"tokenLabel");function Lm(e){return Ce(e.LABEL)&&e.LABEL!==""}r(Lm,"hasTokenLabel");var D_="parent",AE="categories",UE="label",gE="group",kE="push_mode",RE="pop_mode",LE="longer_alt",xE="line_breaks",CE="start_chars_hint";function wt(e){return V_(e)}r(wt,"createToken");function V_(e){let t=e.pattern,o={};if(o.name=e.name,Be(t)||(o.PATTERN=t),F(e,D_))throw`The parent property is no longer supported.
54
+ See: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details.`;return F(e,AE)&&(o.CATEGORIES=e[AE]),vt([o]),F(e,UE)&&(o.LABEL=e[UE]),F(e,gE)&&(o.GROUP=e[gE]),F(e,RE)&&(o.POP_MODE=e[RE]),F(e,kE)&&(o.PUSH_MODE=e[kE]),F(e,LE)&&(o.LONGER_ALT=e[LE]),F(e,xE)&&(o.LINE_BREAKS=e[xE]),F(e,CE)&&(o.START_CHARS_HINT=e[CE]),o}r(V_,"createTokenInternal");var ut=wt({name:"EOF",pattern:le.NA});vt([ut]);function kr(e,t,o,n,i,s,c,l){return{image:t,startOffset:o,endOffset:n,startLine:i,endLine:s,startColumn:c,endColumn:l,tokenTypeIdx:e.tokenTypeIdx,tokenType:e}}r(kr,"createTokenInstance");function xm(e,t){return It(e,t)}r(xm,"tokenMatcher");var Bt={buildMismatchTokenMessage({expected:e,actual:t,previous:o,ruleName:n}){return`Expecting ${Lm(e)?`--> ${gr(e)} <--`:`token of type --> ${e.name} <--`} but found --> '${t.image}' <--`},buildNotAllInputParsedMessage({firstRedundant:e,ruleName:t}){return"Redundant input, expecting EOF but found: "+e.image},buildNoViableAltMessage({expectedPathsPerAlt:e,actual:t,previous:o,customUserDescription:n,ruleName:i}){let s="Expecting: ",l=`
55
+ but found: '`+Ue(t).image+"'";if(n)return s+n+l;{let p=ge(e,(S,g)=>S.concat(g),[]),f=y(p,S=>`[${y(S,g=>gr(g)).join(", ")}]`),T=`one of these possible Token sequences:
56
+ ${y(f,(S,g)=>` ${g+1}. ${S}`).join(`
57
+ `)}`;return s+T+l}},buildEarlyExitMessage({expectedIterationPaths:e,actual:t,customUserDescription:o,ruleName:n}){let i="Expecting: ",c=`
58
+ but found: '`+Ue(t).image+"'";if(o)return i+o+c;{let p=`expecting at least one iteration which starts with one of these possible Token sequences::
59
+ <${y(e,f=>`[${y(f,d=>gr(d)).join(",")}]`).join(" ,")}>`;return i+p+c}}};Object.freeze(Bt);var OE={buildRuleNotFoundError(e,t){return"Invalid grammar, reference to a rule which is not defined: ->"+t.nonTerminalName+`<-
60
+ inside top level rule: ->`+e.name+"<-"}},pt={buildDuplicateFoundError(e,t){function o(d){return d instanceof q?d.terminalType.name:d instanceof Q?d.nonTerminalName:""}r(o,"getExtraProductionArgument");let n=e.name,i=Ue(t),s=i.idx,c=ze(i),l=o(i),p=s>0,f=`->${c}${p?s:""}<- ${l?`with argument: ->${l}<-`:""}
61
61
  appears more than once (${t.length} times) in the top level rule: ->${n}<-.
62
62
  For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES
63
63
  `;return f=f.replace(/[ \t]+/g," "),f=f.replace(/\s\s+/g,`
@@ -65,54 +65,52 @@ inside top level rule: ->`+e.name+"<-"}},Ot={buildDuplicateFoundError(e,t){funct
65
65
  The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${e.name}>.
66
66
  To resolve this make sure each Terminal and Non-Terminal names are unique
67
67
  This is easy to accomplish by using the convention that Terminal names start with an uppercase letter
68
- and Non-Terminal names start with a lower case letter.`},buildAlternationPrefixAmbiguityError(e){let t=b(e.prefixPath,a=>co(a)).join(", "),o=e.alternation.idx===0?"":e.alternation.idx;return`Ambiguous alternatives: <${e.ambiguityIndices.join(" ,")}> due to common lookahead prefix
68
+ and Non-Terminal names start with a lower case letter.`},buildAlternationPrefixAmbiguityError(e){let t=y(e.prefixPath,i=>gr(i)).join(", "),o=e.alternation.idx===0?"":e.alternation.idx;return`Ambiguous alternatives: <${e.ambiguityIndices.join(" ,")}> due to common lookahead prefix
69
69
  in <OR${o}> inside <${e.topLevelRule.name}> Rule,
70
70
  <${t}> may appears as a prefix path in all these alternatives.
71
71
  See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX
72
- For Further details.`},buildAlternationAmbiguityError(e){let t=b(e.prefixPath,a=>co(a)).join(", "),o=e.alternation.idx===0?"":e.alternation.idx,n=`Ambiguous Alternatives Detected: <${e.ambiguityIndices.join(" ,")}> in <OR${o}> inside <${e.topLevelRule.name}> Rule,
72
+ For Further details.`},buildAlternationAmbiguityError(e){let t=y(e.prefixPath,i=>gr(i)).join(", "),o=e.alternation.idx===0?"":e.alternation.idx,n=`Ambiguous Alternatives Detected: <${e.ambiguityIndices.join(" ,")}> in <OR${o}> inside <${e.topLevelRule.name}> Rule,
73
73
  <${t}> may appears as a prefix path in all these alternatives.
74
74
  `;return n=n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
75
- For Further details.`,n},buildEmptyRepetitionError(e){let t=nt(e.repetition);return e.repetition.idx!==0&&(t+=e.repetition.idx),`The repetition <${t}> within Rule <${e.topLevelRule.name}> can never consume any tokens.
75
+ For Further details.`,n},buildEmptyRepetitionError(e){let t=ze(e.repetition);return e.repetition.idx!==0&&(t+=e.repetition.idx),`The repetition <${t}> within Rule <${e.topLevelRule.name}> can never consume any tokens.
76
76
  This could lead to an infinite loop.`},buildTokenNameError(e){return"deprecated"},buildEmptyAlternationError(e){return`Ambiguous empty alternative: <${e.emptyChoiceIdx+1}> in <OR${e.alternation.idx}> inside <${e.topLevelRule.name}> Rule.
77
77
  Only the last alternative may be an empty alternative.`},buildTooManyAlternativesError(e){return`An Alternation cannot have more than 256 alternatives:
78
78
  <OR${e.alternation.idx}> inside <${e.topLevelRule.name}> Rule.
79
- has ${e.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(e){let t=e.topLevelRule.name,o=b(e.leftRecursionPath,s=>s.name),n=`${t} --> ${o.concat([t]).join(" --> ")}`;return`Left Recursion found in grammar.
79
+ has ${e.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(e){let t=e.topLevelRule.name,o=y(e.leftRecursionPath,s=>s.name),n=`${t} --> ${o.concat([t]).join(" --> ")}`;return`Left Recursion found in grammar.
80
80
  rule: <${t}> can be invoked from itself (directly or indirectly)
81
81
  without consuming any Tokens. The grammar path that causes this is:
82
82
  ${n}
83
83
  To fix this refactor your grammar to remove the left recursion.
84
- see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError(e){return"deprecated"},buildDuplicateRuleNameError(e){let t;return e.topLevelRule instanceof Je?t=e.topLevelRule.name:t=e.topLevelRule,`Duplicate definition, rule: ->${t}<- is already defined in the grammar: ->${e.grammarName}<-`}};function DA(e,t){let o=new ch(e,t);return o.resolveRefs(),o.errors}r(DA,"resolveGrammar");var ch=class extends Xe{static{r(this,"GastRefResolverVisitor")}constructor(t,o){super(),this.nameToTopRule=t,this.errMsgProvider=o,this.errors=[]}resolveRefs(){_(Y(this.nameToTopRule),t=>{this.currTopLevel=t,t.accept(this)})}visitNonTerminal(t){let o=this.nameToTopRule[t.nonTerminalName];if(o)t.referencedRule=o;else{let n=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,t);this.errors.push({message:n,type:ye.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:t.nonTerminalName})}}};var ph=class extends $t{static{r(this,"AbstractNextPossibleTokensWalker")}constructor(t,o){super(),this.topProd=t,this.path=o,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=Z(this.path.ruleStack).reverse(),this.occurrenceStack=Z(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(t,o=[]){this.found||super.walk(t,o)}walkProdRef(t,o,n){if(t.referencedRule.name===this.nextProductionName&&t.idx===this.nextProductionOccurrence){let a=o.concat(n);this.updateExpectedNext(),this.walk(t.referencedRule,a)}}updateExpectedNext(){D(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}},Ps=class extends ph{static{r(this,"NextAfterTokenWalker")}constructor(t,o){super(t,o),this.path=o,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(t,o,n){if(this.isAtEndOfPath&&t.terminalType.name===this.nextTerminalName&&t.idx===this.nextTerminalOccurrence&&!this.found){let a=o.concat(n),s=new ee({definition:a});this.possibleTokTypes=io(s),this.found=!0}}},cn=class extends $t{static{r(this,"AbstractNextTerminalAfterProductionWalker")}constructor(t,o){super(),this.topRule=t,this.occurrence=o,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}},Bs=class extends cn{static{r(this,"NextTerminalAfterManyWalker")}walkMany(t,o,n){if(t.idx===this.occurrence){let a=_e(o.concat(n));this.result.isEndOfRule=a===void 0,a instanceof q&&(this.result.token=a.terminalType,this.result.occurrence=a.idx)}else super.walkMany(t,o,n)}},Va=class extends cn{static{r(this,"NextTerminalAfterManySepWalker")}walkManySep(t,o,n){if(t.idx===this.occurrence){let a=_e(o.concat(n));this.result.isEndOfRule=a===void 0,a instanceof q&&(this.result.token=a.terminalType,this.result.occurrence=a.idx)}else super.walkManySep(t,o,n)}},Gs=class extends cn{static{r(this,"NextTerminalAfterAtLeastOneWalker")}walkAtLeastOne(t,o,n){if(t.idx===this.occurrence){let a=_e(o.concat(n));this.result.isEndOfRule=a===void 0,a instanceof q&&(this.result.token=a.terminalType,this.result.occurrence=a.idx)}else super.walkAtLeastOne(t,o,n)}},qa=class extends cn{static{r(this,"NextTerminalAfterAtLeastOneSepWalker")}walkAtLeastOneSep(t,o,n){if(t.idx===this.occurrence){let a=_e(o.concat(n));this.result.isEndOfRule=a===void 0,a instanceof q&&(this.result.token=a.terminalType,this.result.occurrence=a.idx)}else super.walkAtLeastOneSep(t,o,n)}};function Ds(e,t,o=[]){o=Z(o);let n=[],a=0;function s(c){return c.concat(Ee(e,a+1))}r(s,"remainingPathWith");function l(c){let p=Ds(s(c),t,o);return n.concat(p)}for(r(l,"getAlternativesForProd");o.length<t&&a<e.length;){let c=e[a];if(c instanceof ee)return l(c.definition);if(c instanceof $)return l(c.definition);if(c instanceof ne)n=l(c.definition);else if(c instanceof Se){let p=c.definition.concat([new K({definition:c.definition})]);return l(p)}else if(c instanceof ge){let p=[new ee({definition:c.definition}),new K({definition:[new q({terminalType:c.separator})].concat(c.definition)})];return l(p)}else if(c instanceof de){let p=c.definition.concat([new K({definition:[new q({terminalType:c.separator})].concat(c.definition)})]);n=l(p)}else if(c instanceof K){let p=c.definition.concat([new K({definition:c.definition})]);n=l(p)}else{if(c instanceof he)return _(c.definition,p=>{D(p.definition)===!1&&(n=l(p.definition))}),n;if(c instanceof q)o.push(c.terminalType);else throw Error("non exhaustive match")}a++}return n.push({partialPath:o,suffixDef:Ee(e,a)}),n}r(Ds,"possiblePathsFrom");function Vs(e,t,o,n){let a="EXIT_NONE_TERMINAL",s=[a],l="EXIT_ALTERNATIVE",c=!1,p=t.length,f=p-n-1,d=[],h=[];for(h.push({idx:-1,def:e,ruleStack:[],occurrenceStack:[]});!D(h);){let T=h.pop();if(T===l){c&&Lt(h).idx<=f&&h.pop();continue}let S=T.def,R=T.idx,U=T.ruleStack,y=T.occurrenceStack;if(D(S))continue;let O=S[0];if(O===a){let C={idx:R,def:Ee(S),ruleStack:Xt(U),occurrenceStack:Xt(y)};h.push(C)}else if(O instanceof q)if(R<p-1){let C=R+1,N=t[C];if(o(N,O.terminalType)){let I={idx:C,def:Ee(S),ruleStack:U,occurrenceStack:y};h.push(I)}}else if(R===p-1)d.push({nextTokenType:O.terminalType,nextTokenOccurrence:O.idx,ruleStack:U,occurrenceStack:y}),c=!0;else throw Error("non exhaustive match");else if(O instanceof $){let C=Z(U);C.push(O.nonTerminalName);let N=Z(y);N.push(O.idx);let I={idx:R,def:O.definition.concat(s,Ee(S)),ruleStack:C,occurrenceStack:N};h.push(I)}else if(O instanceof ne){let C={idx:R,def:Ee(S),ruleStack:U,occurrenceStack:y};h.push(C),h.push(l);let N={idx:R,def:O.definition.concat(Ee(S)),ruleStack:U,occurrenceStack:y};h.push(N)}else if(O instanceof Se){let C=new K({definition:O.definition,idx:O.idx}),N=O.definition.concat([C],Ee(S)),I={idx:R,def:N,ruleStack:U,occurrenceStack:y};h.push(I)}else if(O instanceof ge){let C=new q({terminalType:O.separator}),N=new K({definition:[C].concat(O.definition),idx:O.idx}),I=O.definition.concat([N],Ee(S)),v={idx:R,def:I,ruleStack:U,occurrenceStack:y};h.push(v)}else if(O instanceof de){let C={idx:R,def:Ee(S),ruleStack:U,occurrenceStack:y};h.push(C),h.push(l);let N=new q({terminalType:O.separator}),I=new K({definition:[N].concat(O.definition),idx:O.idx}),v=O.definition.concat([I],Ee(S)),lt={idx:R,def:v,ruleStack:U,occurrenceStack:y};h.push(lt)}else if(O instanceof K){let C={idx:R,def:Ee(S),ruleStack:U,occurrenceStack:y};h.push(C),h.push(l);let N=new K({definition:O.definition,idx:O.idx}),I=O.definition.concat([N],Ee(S)),v={idx:R,def:I,ruleStack:U,occurrenceStack:y};h.push(v)}else if(O instanceof he)for(let C=O.definition.length-1;C>=0;C--){let N=O.definition[C],I={idx:R,def:N.definition.concat(Ee(S)),ruleStack:U,occurrenceStack:y};h.push(I),h.push(l)}else if(O instanceof ee)h.push({idx:R,def:O.definition.concat(Ee(S)),ruleStack:U,occurrenceStack:y});else if(O instanceof Je)h.push(mW(O,R,U,y));else throw Error("non exhaustive match")}return d}r(Vs,"nextPossibleTokensAfter");function mW(e,t,o,n){let a=Z(o);a.push(e.name);let s=Z(n);return s.push(1),{idx:t,def:e.definition,ruleStack:a,occurrenceStack:s}}r(mW,"expandTopLevelRule");var fe;(function(e){e[e.OPTION=0]="OPTION",e[e.REPETITION=1]="REPETITION",e[e.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",e[e.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",e[e.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",e[e.ALTERNATION=5]="ALTERNATION"})(fe||(fe={}));function js(e){if(e instanceof ne||e==="Option")return fe.OPTION;if(e instanceof K||e==="Repetition")return fe.REPETITION;if(e instanceof Se||e==="RepetitionMandatory")return fe.REPETITION_MANDATORY;if(e instanceof ge||e==="RepetitionMandatoryWithSeparator")return fe.REPETITION_MANDATORY_WITH_SEPARATOR;if(e instanceof de||e==="RepetitionWithSeparator")return fe.REPETITION_WITH_SEPARATOR;if(e instanceof he||e==="Alternation")return fe.ALTERNATION;throw Error("non exhaustive match")}r(js,"getProdType");function qA(e,t,o,n,a,s){let l=ja(e,t,o),c=zA(l)?ln:er;return s(l,n,c,a)}r(qA,"buildLookaheadFuncForOr");function jA(e,t,o,n,a,s){let l=Wa(e,t,a,o),c=zA(l)?ln:er;return s(l[0],c,n)}r(jA,"buildLookaheadFuncForOptionalProd");function WA(e,t,o,n){let a=e.length,s=tt(e,l=>tt(l,c=>c.length===1));if(t)return function(l){let c=b(l,p=>p.GATE);for(let p=0;p<a;p++){let f=e[p],d=f.length,h=c[p];if(!(h!==void 0&&h.call(this)===!1))e:for(let T=0;T<d;T++){let S=f[T],R=S.length;for(let U=0;U<R;U++){let y=this.LA(U+1);if(o(y,S[U])===!1)continue e}return p}}};if(s&&!n){let l=b(e,p=>Ne(p)),c=Le(l,(p,f,d)=>(_(f,h=>{M(p,h.tokenTypeIdx)||(p[h.tokenTypeIdx]=d),_(h.categoryMatches,T=>{M(p,T)||(p[T]=d)})}),p),{});return function(){let p=this.LA(1);return c[p.tokenTypeIdx]}}else return function(){for(let l=0;l<a;l++){let c=e[l],p=c.length;e:for(let f=0;f<p;f++){let d=c[f],h=d.length;for(let T=0;T<h;T++){let S=this.LA(T+1);if(o(S,d[T])===!1)continue e}return l}}}}r(WA,"buildAlternativesLookAheadFunc");function KA(e,t,o){let n=tt(e,s=>s.length===1),a=e.length;if(n&&!o){let s=Ne(e);if(s.length===1&&D(s[0].categoryMatches)){let c=s[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===c}}else{let l=Le(s,(c,p,f)=>(c[p.tokenTypeIdx]=!0,_(p.categoryMatches,d=>{c[d]=!0}),c),[]);return function(){let c=this.LA(1);return l[c.tokenTypeIdx]===!0}}}else return function(){e:for(let s=0;s<a;s++){let l=e[s],c=l.length;for(let p=0;p<c;p++){let f=this.LA(p+1);if(t(f,l[p])===!1)continue e}return!0}return!1}}r(KA,"buildSingleAlternativeLookaheadFunction");var fh=class extends $t{static{r(this,"RestDefinitionFinderWalker")}constructor(t,o,n){super(),this.topProd=t,this.targetOccurrence=o,this.targetProdType=n}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(t,o,n,a){return t.idx===this.targetOccurrence&&this.targetProdType===o?(this.restDef=n.concat(a),!0):!1}walkOption(t,o,n){this.checkIsTarget(t,fe.OPTION,o,n)||super.walkOption(t,o,n)}walkAtLeastOne(t,o,n){this.checkIsTarget(t,fe.REPETITION_MANDATORY,o,n)||super.walkOption(t,o,n)}walkAtLeastOneSep(t,o,n){this.checkIsTarget(t,fe.REPETITION_MANDATORY_WITH_SEPARATOR,o,n)||super.walkOption(t,o,n)}walkMany(t,o,n){this.checkIsTarget(t,fe.REPETITION,o,n)||super.walkOption(t,o,n)}walkManySep(t,o,n){this.checkIsTarget(t,fe.REPETITION_WITH_SEPARATOR,o,n)||super.walkOption(t,o,n)}},qs=class extends Xe{static{r(this,"InsideDefinitionFinderVisitor")}constructor(t,o,n){super(),this.targetOccurrence=t,this.targetProdType=o,this.targetRef=n,this.result=[]}checkIsTarget(t,o){t.idx===this.targetOccurrence&&this.targetProdType===o&&(this.targetRef===void 0||t===this.targetRef)&&(this.result=t.definition)}visitOption(t){this.checkIsTarget(t,fe.OPTION)}visitRepetition(t){this.checkIsTarget(t,fe.REPETITION)}visitRepetitionMandatory(t){this.checkIsTarget(t,fe.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(t){this.checkIsTarget(t,fe.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(t){this.checkIsTarget(t,fe.REPETITION_WITH_SEPARATOR)}visitAlternation(t){this.checkIsTarget(t,fe.ALTERNATION)}};function VA(e){let t=new Array(e);for(let o=0;o<e;o++)t[o]=[];return t}r(VA,"initializeArrayOfArrays");function uh(e){let t=[""];for(let o=0;o<e.length;o++){let n=e[o],a=[];for(let s=0;s<t.length;s++){let l=t[s];a.push(l+"_"+n.tokenTypeIdx);for(let c=0;c<n.categoryMatches.length;c++){let p="_"+n.categoryMatches[c];a.push(l+p)}}t=a}return t}r(uh,"pathToHashKeys");function dW(e,t,o){for(let n=0;n<e.length;n++){if(n===o)continue;let a=e[n];for(let s=0;s<t.length;s++){let l=t[s];if(a[l]===!0)return!1}}return!0}r(dW,"isUniquePrefixHash");function YA(e,t){let o=b(e,l=>Ds([l],1)),n=VA(o.length),a=b(o,l=>{let c={};return _(l,p=>{let f=uh(p.partialPath);_(f,d=>{c[d]=!0})}),c}),s=o;for(let l=1;l<=t;l++){let c=s;s=VA(c.length);for(let p=0;p<c.length;p++){let f=c[p];for(let d=0;d<f.length;d++){let h=f[d].partialPath,T=f[d].suffixDef,S=uh(h);if(dW(a,S,p)||D(T)||h.length===t){let U=n[p];if(Ws(U,h)===!1){U.push(h);for(let y=0;y<S.length;y++){let O=S[y];a[p][O]=!0}}}else{let U=Ds(T,l+1,h);s[p]=s[p].concat(U),_(U,y=>{let O=uh(y.partialPath);_(O,C=>{a[p][C]=!0})})}}}}return n}r(YA,"lookAheadSequenceFromAlternatives");function ja(e,t,o,n){let a=new qs(e,fe.ALTERNATION,n);return t.accept(a),YA(a.result,o)}r(ja,"getLookaheadPathsForOr");function Wa(e,t,o,n){let a=new qs(e,o);t.accept(a);let s=a.result,c=new fh(t,e,o).startWalking(),p=new ee({definition:s}),f=new ee({definition:c});return YA([p,f],n)}r(Wa,"getLookaheadPathsForOptionalProd");function Ws(e,t){e:for(let o=0;o<e.length;o++){let n=e[o];if(n.length===t.length){for(let a=0;a<n.length;a++){let s=t[a],l=n[a];if((s===l||l.categoryMatchesMap[s.tokenTypeIdx]!==void 0)===!1)continue e}return!0}}return!1}r(Ws,"containsPath");function HA(e,t){return e.length<t.length&&tt(e,(o,n)=>{let a=t[n];return o===a||a.categoryMatchesMap[o.tokenTypeIdx]})}r(HA,"isStrictPrefixOfPath");function zA(e){return tt(e,t=>tt(t,o=>tt(o,n=>D(n.categoryMatches))))}r(zA,"areTokenCategoriesNotUsed");function JA(e){let t=e.lookaheadStrategy.validate({rules:e.rules,tokenTypes:e.tokenTypes,grammarName:e.grammarName});return b(t,o=>Object.assign({type:ye.CUSTOM_LOOKAHEAD_VALIDATION},o))}r(JA,"validateLookahead");function XA(e,t,o,n){let a=Ke(e,p=>hW(p,o)),s=AW(e,t,o),l=Ke(e,p=>SW(p,o)),c=Ke(e,p=>EW(p,e,n,o));return a.concat(s,l,c)}r(XA,"validateGrammar");function hW(e,t){let o=new mh;e.accept(o);let n=o.allProductions,a=Fd(n,TW),s=Id(a,c=>c.length>1);return b(Y(s),c=>{let p=_e(c),f=t.buildDuplicateFoundError(e,c),d=nt(p),h={message:f,type:ye.DUPLICATE_PRODUCTIONS,ruleName:e.name,dslName:d,occurrence:p.idx},T=QA(p);return T&&(h.parameter=T),h})}r(hW,"validateDuplicateProductions");function TW(e){return`${nt(e)}_#_${e.idx}_#_${QA(e)}`}r(TW,"identifyProductionForDuplicates");function QA(e){return e instanceof q?e.terminalType.name:e instanceof $?e.nonTerminalName:""}r(QA,"getExtraProductionArgument");var mh=class extends Xe{static{r(this,"OccurrenceValidationCollector")}constructor(){super(...arguments),this.allProductions=[]}visitNonTerminal(t){this.allProductions.push(t)}visitOption(t){this.allProductions.push(t)}visitRepetitionWithSeparator(t){this.allProductions.push(t)}visitRepetitionMandatory(t){this.allProductions.push(t)}visitRepetitionMandatoryWithSeparator(t){this.allProductions.push(t)}visitRepetition(t){this.allProductions.push(t)}visitAlternation(t){this.allProductions.push(t)}visitTerminal(t){this.allProductions.push(t)}};function EW(e,t,o,n){let a=[];if(Le(t,(l,c)=>c.name===e.name?l+1:l,0)>1){let l=n.buildDuplicateRuleNameError({topLevelRule:e,grammarName:o});a.push({message:l,type:ye.DUPLICATE_RULE_NAME,ruleName:e.name})}return a}r(EW,"validateRuleDoesNotAlreadyExist");function ZA(e,t,o){let n=[],a;return me(t,e)||(a=`Invalid rule override, rule: ->${e}<- cannot be overridden in the grammar: ->${o}<-as it is not defined in any of the super grammars `,n.push({message:a,type:ye.INVALID_RULE_OVERRIDE,ruleName:e})),n}r(ZA,"validateRuleIsOverridden");function hh(e,t,o,n=[]){let a=[],s=Ks(t.definition);if(D(s))return[];{let l=e.name;me(s,e)&&a.push({message:o.buildLeftRecursionError({topLevelRule:e,leftRecursionPath:n}),type:ye.LEFT_RECURSION,ruleName:l});let p=Ur(s,n.concat([e])),f=Ke(p,d=>{let h=Z(n);return h.push(d),hh(e,d,o,h)});return a.concat(f)}}r(hh,"validateNoLeftRecursion");function Ks(e){let t=[];if(D(e))return t;let o=_e(e);if(o instanceof $)t.push(o.referencedRule);else if(o instanceof ee||o instanceof ne||o instanceof Se||o instanceof ge||o instanceof de||o instanceof K)t=t.concat(Ks(o.definition));else if(o instanceof he)t=Ne(b(o.definition,s=>Ks(s.definition)));else if(!(o instanceof q))throw Error("non exhaustive match");let n=ao(o),a=e.length>1;if(n&&a){let s=Ee(e);return t.concat(Ks(s))}else return t}r(Ks,"getFirstNoneTerminal");var Ka=class extends Xe{static{r(this,"OrCollector")}constructor(){super(...arguments),this.alternations=[]}visitAlternation(t){this.alternations.push(t)}};function $A(e,t){let o=new Ka;e.accept(o);let n=o.alternations;return Ke(n,s=>{let l=Xt(s.definition);return Ke(l,(c,p)=>{let f=Vs([c],[],er,1);return D(f)?[{message:t.buildEmptyAlternationError({topLevelRule:e,alternation:s,emptyChoiceIdx:p}),type:ye.NONE_LAST_EMPTY_ALT,ruleName:e.name,occurrence:s.idx,alternative:p+1}]:[]})})}r($A,"validateEmptyOrAlternative");function eU(e,t,o){let n=new Ka;e.accept(n);let a=n.alternations;return a=Rr(a,l=>l.ignoreAmbiguities===!0),Ke(a,l=>{let c=l.idx,p=l.maxLookahead||t,f=ja(c,e,p,l),d=gW(f,l,e,o),h=xW(f,l,e,o);return d.concat(h)})}r(eU,"validateAmbiguousAlternationAlternatives");var dh=class extends Xe{static{r(this,"RepetitionCollector")}constructor(){super(...arguments),this.allProductions=[]}visitRepetitionWithSeparator(t){this.allProductions.push(t)}visitRepetitionMandatory(t){this.allProductions.push(t)}visitRepetitionMandatoryWithSeparator(t){this.allProductions.push(t)}visitRepetition(t){this.allProductions.push(t)}};function SW(e,t){let o=new Ka;e.accept(o);let n=o.alternations;return Ke(n,s=>s.definition.length>255?[{message:t.buildTooManyAlternativesError({topLevelRule:e,alternation:s}),type:ye.TOO_MANY_ALTS,ruleName:e.name,occurrence:s.idx}]:[])}r(SW,"validateTooManyAlts");function tU(e,t,o){let n=[];return _(e,a=>{let s=new dh;a.accept(s);let l=s.allProductions;_(l,c=>{let p=js(c),f=c.maxLookahead||t,d=c.idx,T=Wa(d,a,p,f)[0];if(D(Ne(T))){let S=o.buildEmptyRepetitionError({topLevelRule:a,repetition:c});n.push({message:S,type:ye.NO_NON_EMPTY_LOOKAHEAD,ruleName:a.name})}})}),n}r(tU,"validateSomeNonEmptyLookaheadPath");function gW(e,t,o,n){let a=[],s=Le(e,(c,p,f)=>(t.definition[f].ignoreAmbiguities===!0||_(p,d=>{let h=[f];_(e,(T,S)=>{f!==S&&Ws(T,d)&&t.definition[S].ignoreAmbiguities!==!0&&h.push(S)}),h.length>1&&!Ws(a,d)&&(a.push(d),c.push({alts:h,path:d}))}),c),[]);return b(s,c=>{let p=b(c.alts,d=>d+1);return{message:n.buildAlternationAmbiguityError({topLevelRule:o,alternation:t,ambiguityIndices:p,prefixPath:c.path}),type:ye.AMBIGUOUS_ALTS,ruleName:o.name,occurrence:t.idx,alternatives:c.alts}})}r(gW,"checkAlternativesAmbiguities");function xW(e,t,o,n){let a=Le(e,(l,c,p)=>{let f=b(c,d=>({idx:p,path:d}));return l.concat(f)},[]);return wt(Ke(a,l=>{if(t.definition[l.idx].ignoreAmbiguities===!0)return[];let p=l.idx,f=l.path,d=Be(a,T=>t.definition[T.idx].ignoreAmbiguities!==!0&&T.idx<p&&HA(T.path,f));return b(d,T=>{let S=[T.idx+1,p+1],R=t.idx===0?"":t.idx;return{message:n.buildAlternationPrefixAmbiguityError({topLevelRule:o,alternation:t,ambiguityIndices:S,prefixPath:T.path}),type:ye.AMBIGUOUS_PREFIX_ALTS,ruleName:o.name,occurrence:R,alternatives:S}})}))}r(xW,"checkPrefixAlternativesAmbiguities");function AW(e,t,o){let n=[],a=b(t,s=>s.name);return _(e,s=>{let l=s.name;if(me(a,l)){let c=o.buildNamespaceConflictError(s);n.push({message:c,type:ye.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:l})}}),n}r(AW,"checkTerminalAndNoneTerminalsNameSpace");function rU(e){let t=Do(e,{errMsgProvider:GA}),o={};return _(e.rules,n=>{o[n.name]=n}),DA(o,t.errMsgProvider)}r(rU,"resolveGrammar");function oU(e){return e=Do(e,{errMsgProvider:Ot}),XA(e.rules,e.tokenTypes,e.errMsgProvider,e.grammarName)}r(oU,"validateGrammar");var nU="MismatchedTokenException",aU="NoViableAltException",iU="EarlyExitException",sU="NotAllInputParsedException",lU=[nU,aU,iU,sU];Object.freeze(lU);function Pr(e){return me(lU,e.name)}r(Pr,"isRecognitionException");var pn=class extends Error{static{r(this,"RecognitionException")}constructor(t,o){super(t),this.token=o,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},ke=class extends pn{static{r(this,"MismatchedTokenException")}constructor(t,o,n){super(t,o),this.previousToken=n,this.name=nU}},Ya=class extends pn{static{r(this,"NoViableAltException")}constructor(t,o,n){super(t,o),this.previousToken=n,this.name=aU}},Ha=class extends pn{static{r(this,"NotAllInputParsedException")}constructor(t,o){super(t,o),this.name=sU}},za=class extends pn{static{r(this,"EarlyExitException")}constructor(t,o,n){super(t,o),this.previousToken=n,this.name=iU}};var Th={},Sh="InRuleRecoveryException",Eh=class extends Error{static{r(this,"InRuleRecoveryException")}constructor(t){super(t),this.name=Sh}},Ys=class{static{r(this,"Recoverable")}initRecoverable(t){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=M(t,"recoveryEnabled")?t.recoveryEnabled:Qe.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=UW)}getTokenToInsert(t){let o=po(t,"",NaN,NaN,NaN,NaN,NaN,NaN);return o.isInsertedInRecovery=!0,o}canTokenTypeBeInsertedInRecovery(t){return!0}canTokenTypeBeDeletedInRecovery(t){return!0}tryInRepetitionRecovery(t,o,n,a){let s=this.findReSyncTokenType(),l=this.exportLexerState(),c=[],p=!1,f=this.LA(1),d=this.LA(1),h=r(()=>{let T=this.LA(0),S=this.errorMessageProvider.buildMismatchTokenMessage({expected:a,actual:f,previous:T,ruleName:this.getCurrRuleFullName()}),R=new ke(S,f,this.LA(0));R.resyncedTokens=Xt(c),this.SAVE_ERROR(R)},"generateErrorMessage");for(;!p;)if(this.tokenMatcher(d,a)){h();return}else if(n.call(this)){h(),t.apply(this,o);return}else this.tokenMatcher(d,s)?p=!0:(d=this.SKIP_TOKEN(),this.addToResyncTokens(d,c));this.importLexerState(l)}shouldInRepetitionRecoveryBeTried(t,o,n){return!(n===!1||this.tokenMatcher(this.LA(1),t)||this.isBackTracking()||this.canPerformInRuleRecovery(t,this.getFollowsForInRuleRecovery(t,o)))}getFollowsForInRuleRecovery(t,o){let n=this.getCurrentGrammarPath(t,o);return this.getNextPossibleTokenTypes(n)}tryInRuleRecovery(t,o){if(this.canRecoverWithSingleTokenInsertion(t,o))return this.getTokenToInsert(t);if(this.canRecoverWithSingleTokenDeletion(t)){let n=this.SKIP_TOKEN();return this.consumeToken(),n}throw new Eh("sad sad panda")}canPerformInRuleRecovery(t,o){return this.canRecoverWithSingleTokenInsertion(t,o)||this.canRecoverWithSingleTokenDeletion(t)}canRecoverWithSingleTokenInsertion(t,o){if(!this.canTokenTypeBeInsertedInRecovery(t)||D(o))return!1;let n=this.LA(1);return Pt(o,s=>this.tokenMatcher(n,s))!==void 0}canRecoverWithSingleTokenDeletion(t){return this.canTokenTypeBeDeletedInRecovery(t)?this.tokenMatcher(this.LA(2),t):!1}isInCurrentRuleReSyncSet(t){let o=this.getCurrFollowKey(),n=this.getFollowSetFromFollowKey(o);return me(n,t)}findReSyncTokenType(){let t=this.flattenFollowSet(),o=this.LA(1),n=2;for(;;){let a=Pt(t,s=>lh(o,s));if(a!==void 0)return a;o=this.LA(n),n++}}getCurrFollowKey(){if(this.RULE_STACK.length===1)return Th;let t=this.getLastExplicitRuleShortName(),o=this.getLastExplicitRuleOccurrenceIndex(),n=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(t),idxInCallingRule:o,inRule:this.shortRuleNameToFullName(n)}}buildFullFollowKeyStack(){let t=this.RULE_STACK,o=this.RULE_OCCURRENCE_STACK;return b(t,(n,a)=>a===0?Th:{ruleName:this.shortRuleNameToFullName(n),idxInCallingRule:o[a],inRule:this.shortRuleNameToFullName(t[a-1])})}flattenFollowSet(){let t=b(this.buildFullFollowKeyStack(),o=>this.getFollowSetFromFollowKey(o));return Ne(t)}getFollowSetFromFollowKey(t){if(t===Th)return[kt];let o=t.ruleName+t.idxInCallingRule+ys+t.inRule;return this.resyncFollows[o]}addToResyncTokens(t,o){return this.tokenMatcher(t,kt)||o.push(t),o}reSyncTo(t){let o=[],n=this.LA(1);for(;this.tokenMatcher(n,t)===!1;)n=this.SKIP_TOKEN(),this.addToResyncTokens(n,o);return Xt(o)}attemptInRepetitionRecovery(t,o,n,a,s,l,c){}getCurrentGrammarPath(t,o){let n=this.getHumanReadableRuleStack(),a=Z(this.RULE_OCCURRENCE_STACK);return{ruleStack:n,occurrenceStack:a,lastTok:t,lastTokOccurrence:o}}getHumanReadableRuleStack(){return b(this.RULE_STACK,t=>this.shortRuleNameToFullName(t))}};function UW(e,t,o,n,a,s,l){let c=this.getKeyForAutomaticLookahead(n,a),p=this.firstAfterRepMap[c];if(p===void 0){let T=this.getCurrRuleFullName(),S=this.getGAstProductions()[T];p=new s(S,a).startWalking(),this.firstAfterRepMap[c]=p}let f=p.token,d=p.occurrence,h=p.isEndOfRule;this.RULE_STACK.length===1&&h&&f===void 0&&(f=kt,d=1),!(f===void 0||d===void 0)&&this.shouldInRepetitionRecoveryBeTried(f,d,l)&&this.tryInRepetitionRecovery(e,t,o,f)}r(UW,"attemptInRepetitionRecovery");function Hs(e,t,o){return o|t|e}r(Hs,"getKeyForAutomaticLookahead");var Ja=class{static{r(this,"LLkLookaheadStrategy")}constructor(t){var o;this.maxLookahead=(o=t?.maxLookahead)!==null&&o!==void 0?o:Qe.maxLookahead}validate(t){let o=this.validateNoLeftRecursion(t.rules);if(D(o)){let n=this.validateEmptyOrAlternatives(t.rules),a=this.validateAmbiguousAlternationAlternatives(t.rules,this.maxLookahead),s=this.validateSomeNonEmptyLookaheadPath(t.rules,this.maxLookahead);return[...o,...n,...a,...s]}return o}validateNoLeftRecursion(t){return Ke(t,o=>hh(o,o,Ot))}validateEmptyOrAlternatives(t){return Ke(t,o=>$A(o,Ot))}validateAmbiguousAlternationAlternatives(t,o){return Ke(t,n=>eU(n,o,Ot))}validateSomeNonEmptyLookaheadPath(t,o){return tU(t,o,Ot)}buildLookaheadForAlternation(t){return qA(t.prodOccurrence,t.rule,t.maxLookahead,t.hasPredicates,t.dynamicTokensEnabled,WA)}buildLookaheadForOptional(t){return jA(t.prodOccurrence,t.rule,t.maxLookahead,t.dynamicTokensEnabled,js(t.prodType),KA)}};var Js=class{static{r(this,"LooksAhead")}initLooksAhead(t){this.dynamicTokensEnabled=M(t,"dynamicTokensEnabled")?t.dynamicTokensEnabled:Qe.dynamicTokensEnabled,this.maxLookahead=M(t,"maxLookahead")?t.maxLookahead:Qe.maxLookahead,this.lookaheadStrategy=M(t,"lookaheadStrategy")?t.lookaheadStrategy:new Ja({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(t){_(t,o=>{this.TRACE_INIT(`${o.name} Rule Lookahead`,()=>{let{alternation:n,repetition:a,option:s,repetitionMandatory:l,repetitionMandatoryWithSeparator:c,repetitionWithSeparator:p}=RW(o);_(n,f=>{let d=f.idx===0?"":f.idx;this.TRACE_INIT(`${nt(f)}${d}`,()=>{let h=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:f.idx,rule:o,maxLookahead:f.maxLookahead||this.maxLookahead,hasPredicates:f.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),T=Hs(this.fullRuleNameToShort[o.name],256,f.idx);this.setLaFuncCache(T,h)})}),_(a,f=>{this.computeLookaheadFunc(o,f.idx,768,"Repetition",f.maxLookahead,nt(f))}),_(s,f=>{this.computeLookaheadFunc(o,f.idx,512,"Option",f.maxLookahead,nt(f))}),_(l,f=>{this.computeLookaheadFunc(o,f.idx,1024,"RepetitionMandatory",f.maxLookahead,nt(f))}),_(c,f=>{this.computeLookaheadFunc(o,f.idx,1536,"RepetitionMandatoryWithSeparator",f.maxLookahead,nt(f))}),_(p,f=>{this.computeLookaheadFunc(o,f.idx,1280,"RepetitionWithSeparator",f.maxLookahead,nt(f))})})})}computeLookaheadFunc(t,o,n,a,s,l){this.TRACE_INIT(`${l}${o===0?"":o}`,()=>{let c=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:o,rule:t,maxLookahead:s||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:a}),p=Hs(this.fullRuleNameToShort[t.name],n,o);this.setLaFuncCache(p,c)})}getKeyForAutomaticLookahead(t,o){let n=this.getLastExplicitRuleShortName();return Hs(n,t,o)}getLaFuncFromCache(t){return this.lookAheadFuncsCache.get(t)}setLaFuncCache(t,o){this.lookAheadFuncsCache.set(t,o)}},gh=class extends Xe{static{r(this,"DslMethodsCollectorVisitor")}constructor(){super(...arguments),this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(t){this.dslMethods.option.push(t)}visitRepetitionWithSeparator(t){this.dslMethods.repetitionWithSeparator.push(t)}visitRepetitionMandatory(t){this.dslMethods.repetitionMandatory.push(t)}visitRepetitionMandatoryWithSeparator(t){this.dslMethods.repetitionMandatoryWithSeparator.push(t)}visitRepetition(t){this.dslMethods.repetition.push(t)}visitAlternation(t){this.dslMethods.alternation.push(t)}},zs=new gh;function RW(e){zs.reset(),e.accept(zs);let t=zs.dslMethods;return zs.reset(),t}r(RW,"collectMethods");function Uh(e,t){isNaN(e.startOffset)===!0?(e.startOffset=t.startOffset,e.endOffset=t.endOffset):e.endOffset<t.endOffset&&(e.endOffset=t.endOffset)}r(Uh,"setNodeLocationOnlyOffset");function Rh(e,t){isNaN(e.startOffset)===!0?(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&&(e.endOffset=t.endOffset,e.endColumn=t.endColumn,e.endLine=t.endLine)}r(Rh,"setNodeLocationFull");function cU(e,t,o){e.children[o]===void 0?e.children[o]=[t]:e.children[o].push(t)}r(cU,"addTerminalToCst");function pU(e,t,o){e.children[t]===void 0?e.children[t]=[o]:e.children[t].push(o)}r(pU,"addNoneTerminalToCst");var LW="name";function Lh(e,t){Object.defineProperty(e,LW,{enumerable:!1,configurable:!0,writable:!1,value:t})}r(Lh,"defineNameProp");function kW(e,t){let o=X(e),n=o.length;for(let a=0;a<n;a++){let s=o[a],l=e[s],c=l.length;for(let p=0;p<c;p++){let f=l[p];f.tokenTypeIdx===void 0&&this[f.name](f.children,t)}}}r(kW,"defaultVisit");function uU(e,t){let o=r(function(){},"derivedConstructor");Lh(o,e+"BaseSemantics");let n={visit:r(function(a,s){if(F(a)&&(a=a[0]),!Ge(a))return this[a.name](a.children,s)},"visit"),validateVisitor:r(function(){let a=OW(this,t);if(!D(a)){let s=b(a,l=>l.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>:
84
+ see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError(e){return"deprecated"},buildDuplicateRuleNameError(e){let t;return e.topLevelRule instanceof qe?t=e.topLevelRule.name:t=e.topLevelRule,`Duplicate definition, rule: ->${t}<- is already defined in the grammar: ->${e.grammarName}<-`}};function NE(e,t){let o=new Cm(e,t);return o.resolveRefs(),o.errors}r(NE,"resolveGrammar");var Cm=class extends je{static{r(this,"GastRefResolverVisitor")}constructor(t,o){super(),this.nameToTopRule=t,this.errMsgProvider=o,this.errors=[]}resolveRefs(){M(K(this.nameToTopRule),t=>{this.currTopLevel=t,t.accept(this)})}visitNonTerminal(t){let o=this.nameToTopRule[t.nonTerminalName];if(o)t.referencedRule=o;else{let n=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,t);this.errors.push({message:n,type:Oe.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:t.nonTerminalName})}}};var Om=class extends _t{static{r(this,"AbstractNextPossibleTokensWalker")}constructor(t,o){super(),this.topProd=t,this.path=o,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=X(this.path.ruleStack).reverse(),this.occurrenceStack=X(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(t,o=[]){this.found||super.walk(t,o)}walkProdRef(t,o,n){if(t.referencedRule.name===this.nextProductionName&&t.idx===this.nextProductionOccurrence){let i=o.concat(n);this.updateExpectedNext(),this.walk(t.referencedRule,i)}}updateExpectedNext(){D(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}},Da=class extends Om{static{r(this,"NextAfterTokenWalker")}constructor(t,o){super(t,o),this.path=o,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(t,o,n){if(this.isAtEndOfPath&&t.terminalType.name===this.nextTerminalName&&t.idx===this.nextTerminalOccurrence&&!this.found){let i=o.concat(n),s=new Z({definition:i});this.possibleTokTypes=Sr(s),this.found=!0}}},eo=class extends _t{static{r(this,"AbstractNextTerminalAfterProductionWalker")}constructor(t,o){super(),this.topRule=t,this.occurrence=o,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}},Va=class extends eo{static{r(this,"NextTerminalAfterManyWalker")}walkMany(t,o,n){if(t.idx===this.occurrence){let i=Ue(o.concat(n));this.result.isEndOfRule=i===void 0,i instanceof q&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkMany(t,o,n)}},En=class extends eo{static{r(this,"NextTerminalAfterManySepWalker")}walkManySep(t,o,n){if(t.idx===this.occurrence){let i=Ue(o.concat(n));this.result.isEndOfRule=i===void 0,i instanceof q&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkManySep(t,o,n)}},qa=class extends eo{static{r(this,"NextTerminalAfterAtLeastOneWalker")}walkAtLeastOne(t,o,n){if(t.idx===this.occurrence){let i=Ue(o.concat(n));this.result.isEndOfRule=i===void 0,i instanceof q&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOne(t,o,n)}},hn=class extends eo{static{r(this,"NextTerminalAfterAtLeastOneSepWalker")}walkAtLeastOneSep(t,o,n){if(t.idx===this.occurrence){let i=Ue(o.concat(n));this.result.isEndOfRule=i===void 0,i instanceof q&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOneSep(t,o,n)}};function ja(e,t,o=[]){o=X(o);let n=[],i=0;function s(l){return l.concat(fe(e,i+1))}r(s,"remainingPathWith");function c(l){let p=ja(s(l),t,o);return n.concat(p)}for(r(c,"getAlternativesForProd");o.length<t&&i<e.length;){let l=e[i];if(l instanceof Z)return c(l.definition);if(l instanceof Q)return c(l.definition);if(l instanceof te)n=c(l.definition);else if(l instanceof de){let p=l.definition.concat([new Y({definition:l.definition})]);return c(p)}else if(l instanceof Te){let p=[new Z({definition:l.definition}),new Y({definition:[new q({terminalType:l.separator})].concat(l.definition)})];return c(p)}else if(l instanceof pe){let p=l.definition.concat([new Y({definition:[new q({terminalType:l.separator})].concat(l.definition)})]);n=c(p)}else if(l instanceof Y){let p=l.definition.concat([new Y({definition:l.definition})]);n=c(p)}else{if(l instanceof me)return M(l.definition,p=>{D(p.definition)===!1&&(n=c(p.definition))}),n;if(l instanceof q)o.push(l.terminalType);else throw Error("non exhaustive match")}i++}return n.push({partialPath:o,suffixDef:fe(e,i)}),n}r(ja,"possiblePathsFrom");function Wa(e,t,o,n){let i="EXIT_NONE_TERMINAL",s=[i],c="EXIT_ALTERNATIVE",l=!1,p=t.length,f=p-n-1,d=[],T=[];for(T.push({idx:-1,def:e,ruleStack:[],occurrenceStack:[]});!D(T);){let S=T.pop();if(S===c){l&&ct(T).idx<=f&&T.pop();continue}let g=S.def,x=S.idx,L=S.ruleStack,_=S.occurrenceStack;if(D(g))continue;let O=g[0];if(O===i){let N={idx:x,def:fe(g),ruleStack:Ft(L),occurrenceStack:Ft(_)};T.push(N)}else if(O instanceof q)if(x<p-1){let N=x+1,C=t[N];if(o(C,O.terminalType)){let v={idx:N,def:fe(g),ruleStack:L,occurrenceStack:_};T.push(v)}}else if(x===p-1)d.push({nextTokenType:O.terminalType,nextTokenOccurrence:O.idx,ruleStack:L,occurrenceStack:_}),l=!0;else throw Error("non exhaustive match");else if(O instanceof Q){let N=X(L);N.push(O.nonTerminalName);let C=X(_);C.push(O.idx);let v={idx:x,def:O.definition.concat(s,fe(g)),ruleStack:N,occurrenceStack:C};T.push(v)}else if(O instanceof te){let N={idx:x,def:fe(g),ruleStack:L,occurrenceStack:_};T.push(N),T.push(c);let C={idx:x,def:O.definition.concat(fe(g)),ruleStack:L,occurrenceStack:_};T.push(C)}else if(O instanceof de){let N=new Y({definition:O.definition,idx:O.idx}),C=O.definition.concat([N],fe(g)),v={idx:x,def:C,ruleStack:L,occurrenceStack:_};T.push(v)}else if(O instanceof Te){let N=new q({terminalType:O.separator}),C=new Y({definition:[N].concat(O.definition),idx:O.idx}),v=O.definition.concat([C],fe(g)),w={idx:x,def:v,ruleStack:L,occurrenceStack:_};T.push(w)}else if(O instanceof pe){let N={idx:x,def:fe(g),ruleStack:L,occurrenceStack:_};T.push(N),T.push(c);let C=new q({terminalType:O.separator}),v=new Y({definition:[C].concat(O.definition),idx:O.idx}),w=O.definition.concat([v],fe(g)),Qe={idx:x,def:w,ruleStack:L,occurrenceStack:_};T.push(Qe)}else if(O instanceof Y){let N={idx:x,def:fe(g),ruleStack:L,occurrenceStack:_};T.push(N),T.push(c);let C=new Y({definition:O.definition,idx:O.idx}),v=O.definition.concat([C],fe(g)),w={idx:x,def:v,ruleStack:L,occurrenceStack:_};T.push(w)}else if(O instanceof me)for(let N=O.definition.length-1;N>=0;N--){let C=O.definition[N],v={idx:x,def:C.definition.concat(fe(g)),ruleStack:L,occurrenceStack:_};T.push(v),T.push(c)}else if(O instanceof Z)T.push({idx:x,def:O.definition.concat(fe(g)),ruleStack:L,occurrenceStack:_});else if(O instanceof qe)T.push(q_(O,x,L,_));else throw Error("non exhaustive match")}return d}r(Wa,"nextPossibleTokensAfter");function q_(e,t,o,n){let i=X(o);i.push(e.name);let s=X(n);return s.push(1),{idx:t,def:e.definition,ruleStack:i,occurrenceStack:s}}r(q_,"expandTopLevelRule");var ue;(function(e){e[e.OPTION=0]="OPTION",e[e.REPETITION=1]="REPETITION",e[e.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",e[e.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",e[e.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",e[e.ALTERNATION=5]="ALTERNATION"})(ue||(ue={}));function Ka(e){if(e instanceof te||e==="Option")return ue.OPTION;if(e instanceof Y||e==="Repetition")return ue.REPETITION;if(e instanceof de||e==="RepetitionMandatory")return ue.REPETITION_MANDATORY;if(e instanceof Te||e==="RepetitionMandatoryWithSeparator")return ue.REPETITION_MANDATORY_WITH_SEPARATOR;if(e instanceof pe||e==="RepetitionWithSeparator")return ue.REPETITION_WITH_SEPARATOR;if(e instanceof me||e==="Alternation")return ue.ALTERNATION;throw Error("non exhaustive match")}r(Ka,"getProdType");function yE(e,t,o,n,i,s){let c=Sn(e,t,o),l=wE(c)?$r:It;return s(c,n,l,i)}r(yE,"buildLookaheadFuncForOr");function ME(e,t,o,n,i,s){let c=An(e,t,i,o),l=wE(c)?$r:It;return s(c[0],l,n)}r(ME,"buildLookaheadFuncForOptionalProd");function FE(e,t,o,n){let i=e.length,s=be(e,c=>be(c,l=>l.length===1));if(t)return function(c){let l=y(c,p=>p.GATE);for(let p=0;p<i;p++){let f=e[p],d=f.length,T=l[p];if(!(T!==void 0&&T.call(this)===!1))e:for(let S=0;S<d;S++){let g=f[S],x=g.length;for(let L=0;L<x;L++){let _=this.LA(L+1);if(o(_,g[L])===!1)continue e}return p}}};if(s&&!n){let c=y(e,p=>xe(p)),l=ge(c,(p,f,d)=>(M(f,T=>{F(p,T.tokenTypeIdx)||(p[T.tokenTypeIdx]=d),M(T.categoryMatches,S=>{F(p,S)||(p[S]=d)})}),p),{});return function(){let p=this.LA(1);return l[p.tokenTypeIdx]}}else return function(){for(let c=0;c<i;c++){let l=e[c],p=l.length;e:for(let f=0;f<p;f++){let d=l[f],T=d.length;for(let S=0;S<T;S++){let g=this.LA(S+1);if(o(g,d[S])===!1)continue e}return c}}}}r(FE,"buildAlternativesLookAheadFunc");function _E(e,t,o){let n=be(e,s=>s.length===1),i=e.length;if(n&&!o){let s=xe(e);if(s.length===1&&D(s[0].categoryMatches)){let l=s[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===l}}else{let c=ge(s,(l,p,f)=>(l[p.tokenTypeIdx]=!0,M(p.categoryMatches,d=>{l[d]=!0}),l),[]);return function(){let l=this.LA(1);return c[l.tokenTypeIdx]===!0}}}else return function(){e:for(let s=0;s<i;s++){let c=e[s],l=c.length;for(let p=0;p<l;p++){let f=this.LA(p+1);if(t(f,c[p])===!1)continue e}return!0}return!1}}r(_E,"buildSingleAlternativeLookaheadFunction");var bm=class extends _t{static{r(this,"RestDefinitionFinderWalker")}constructor(t,o,n){super(),this.topProd=t,this.targetOccurrence=o,this.targetProdType=n}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(t,o,n,i){return t.idx===this.targetOccurrence&&this.targetProdType===o?(this.restDef=n.concat(i),!0):!1}walkOption(t,o,n){this.checkIsTarget(t,ue.OPTION,o,n)||super.walkOption(t,o,n)}walkAtLeastOne(t,o,n){this.checkIsTarget(t,ue.REPETITION_MANDATORY,o,n)||super.walkOption(t,o,n)}walkAtLeastOneSep(t,o,n){this.checkIsTarget(t,ue.REPETITION_MANDATORY_WITH_SEPARATOR,o,n)||super.walkOption(t,o,n)}walkMany(t,o,n){this.checkIsTarget(t,ue.REPETITION,o,n)||super.walkOption(t,o,n)}walkManySep(t,o,n){this.checkIsTarget(t,ue.REPETITION_WITH_SEPARATOR,o,n)||super.walkOption(t,o,n)}},Ya=class extends je{static{r(this,"InsideDefinitionFinderVisitor")}constructor(t,o,n){super(),this.targetOccurrence=t,this.targetProdType=o,this.targetRef=n,this.result=[]}checkIsTarget(t,o){t.idx===this.targetOccurrence&&this.targetProdType===o&&(this.targetRef===void 0||t===this.targetRef)&&(this.result=t.definition)}visitOption(t){this.checkIsTarget(t,ue.OPTION)}visitRepetition(t){this.checkIsTarget(t,ue.REPETITION)}visitRepetitionMandatory(t){this.checkIsTarget(t,ue.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(t){this.checkIsTarget(t,ue.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(t){this.checkIsTarget(t,ue.REPETITION_WITH_SEPARATOR)}visitAlternation(t){this.checkIsTarget(t,ue.ALTERNATION)}};function bE(e){let t=new Array(e);for(let o=0;o<e;o++)t[o]=[];return t}r(bE,"initializeArrayOfArrays");function Nm(e){let t=[""];for(let o=0;o<e.length;o++){let n=e[o],i=[];for(let s=0;s<t.length;s++){let c=t[s];i.push(c+"_"+n.tokenTypeIdx);for(let l=0;l<n.categoryMatches.length;l++){let p="_"+n.categoryMatches[l];i.push(c+p)}}t=i}return t}r(Nm,"pathToHashKeys");function j_(e,t,o){for(let n=0;n<e.length;n++){if(n===o)continue;let i=e[n];for(let s=0;s<t.length;s++){let c=t[s];if(i[c]===!0)return!1}}return!0}r(j_,"isUniquePrefixHash");function IE(e,t){let o=y(e,c=>ja([c],1)),n=bE(o.length),i=y(o,c=>{let l={};return M(c,p=>{let f=Nm(p.partialPath);M(f,d=>{l[d]=!0})}),l}),s=o;for(let c=1;c<=t;c++){let l=s;s=bE(l.length);for(let p=0;p<l.length;p++){let f=l[p];for(let d=0;d<f.length;d++){let T=f[d].partialPath,S=f[d].suffixDef,g=Nm(T);if(j_(i,g,p)||D(S)||T.length===t){let L=n[p];if(Ha(L,T)===!1){L.push(T);for(let _=0;_<g.length;_++){let O=g[_];i[p][O]=!0}}}else{let L=ja(S,c+1,T);s[p]=s[p].concat(L),M(L,_=>{let O=Nm(_.partialPath);M(O,N=>{i[p][N]=!0})})}}}}return n}r(IE,"lookAheadSequenceFromAlternatives");function Sn(e,t,o,n){let i=new Ya(e,ue.ALTERNATION,n);return t.accept(i),IE(i.result,o)}r(Sn,"getLookaheadPathsForOr");function An(e,t,o,n){let i=new Ya(e,o);t.accept(i);let s=i.result,l=new bm(t,e,o).startWalking(),p=new Z({definition:s}),f=new Z({definition:l});return IE([p,f],n)}r(An,"getLookaheadPathsForOptionalProd");function Ha(e,t){e:for(let o=0;o<e.length;o++){let n=e[o];if(n.length===t.length){for(let i=0;i<n.length;i++){let s=t[i],c=n[i];if((s===c||c.categoryMatchesMap[s.tokenTypeIdx]!==void 0)===!1)continue e}return!0}}return!1}r(Ha,"containsPath");function vE(e,t){return e.length<t.length&&be(e,(o,n)=>{let i=t[n];return o===i||i.categoryMatchesMap[o.tokenTypeIdx]})}r(vE,"isStrictPrefixOfPath");function wE(e){return be(e,t=>be(t,o=>be(o,n=>D(n.categoryMatches))))}r(wE,"areTokenCategoriesNotUsed");function BE(e){let t=e.lookaheadStrategy.validate({rules:e.rules,tokenTypes:e.tokenTypes,grammarName:e.grammarName});return y(t,o=>Object.assign({type:Oe.CUSTOM_LOOKAHEAD_VALIDATION},o))}r(BE,"validateLookahead");function PE(e,t,o,n){let i=Ve(e,p=>W_(p,o)),s=X_(e,t,o),c=Ve(e,p=>H_(p,o)),l=Ve(e,p=>K_(p,e,n,o));return i.concat(s,c,l)}r(PE,"validateGrammar");function W_(e,t){let o=new ym;e.accept(o);let n=o.allProductions,i=lm(n,Y_),s=He(i,l=>l.length>1);return y(K(s),l=>{let p=Ue(l),f=t.buildDuplicateFoundError(e,l),d=ze(p),T={message:f,type:Oe.DUPLICATE_PRODUCTIONS,ruleName:e.name,dslName:d,occurrence:p.idx},S=GE(p);return S&&(T.parameter=S),T})}r(W_,"validateDuplicateProductions");function Y_(e){return`${ze(e)}_#_${e.idx}_#_${GE(e)}`}r(Y_,"identifyProductionForDuplicates");function GE(e){return e instanceof q?e.terminalType.name:e instanceof Q?e.nonTerminalName:""}r(GE,"getExtraProductionArgument");var ym=class extends je{static{r(this,"OccurrenceValidationCollector")}constructor(){super(...arguments),this.allProductions=[]}visitNonTerminal(t){this.allProductions.push(t)}visitOption(t){this.allProductions.push(t)}visitRepetitionWithSeparator(t){this.allProductions.push(t)}visitRepetitionMandatory(t){this.allProductions.push(t)}visitRepetitionMandatoryWithSeparator(t){this.allProductions.push(t)}visitRepetition(t){this.allProductions.push(t)}visitAlternation(t){this.allProductions.push(t)}visitTerminal(t){this.allProductions.push(t)}};function K_(e,t,o,n){let i=[];if(ge(t,(c,l)=>l.name===e.name?c+1:c,0)>1){let c=n.buildDuplicateRuleNameError({topLevelRule:e,grammarName:o});i.push({message:c,type:Oe.DUPLICATE_RULE_NAME,ruleName:e.name})}return i}r(K_,"validateRuleDoesNotAlreadyExist");function DE(e,t,o){let n=[],i;return oe(t,e)||(i=`Invalid rule override, rule: ->${e}<- cannot be overridden in the grammar: ->${o}<-as it is not defined in any of the super grammars `,n.push({message:i,type:Oe.INVALID_RULE_OVERRIDE,ruleName:e})),n}r(DE,"validateRuleIsOverridden");function Fm(e,t,o,n=[]){let i=[],s=za(t.definition);if(D(s))return[];{let c=e.name;oe(s,e)&&i.push({message:o.buildLeftRecursionError({topLevelRule:e,leftRecursionPath:n}),type:Oe.LEFT_RECURSION,ruleName:c});let p=tr(s,n.concat([e])),f=Ve(p,d=>{let T=X(n);return T.push(d),Fm(e,d,o,T)});return i.concat(f)}}r(Fm,"validateNoLeftRecursion");function za(e){let t=[];if(D(e))return t;let o=Ue(e);if(o instanceof Q)t.push(o.referencedRule);else if(o instanceof Z||o instanceof te||o instanceof de||o instanceof Te||o instanceof pe||o instanceof Y)t=t.concat(za(o.definition));else if(o instanceof me)t=xe(y(o.definition,s=>za(s.definition)));else if(!(o instanceof q))throw Error("non exhaustive match");let n=hr(o),i=e.length>1;if(n&&i){let s=fe(e);return t.concat(za(s))}else return t}r(za,"getFirstNoneTerminal");var Un=class extends je{static{r(this,"OrCollector")}constructor(){super(...arguments),this.alternations=[]}visitAlternation(t){this.alternations.push(t)}};function VE(e,t){let o=new Un;e.accept(o);let n=o.alternations;return Ve(n,s=>{let c=Ft(s.definition);return Ve(c,(l,p)=>{let f=Wa([l],[],It,1);return D(f)?[{message:t.buildEmptyAlternationError({topLevelRule:e,alternation:s,emptyChoiceIdx:p}),type:Oe.NONE_LAST_EMPTY_ALT,ruleName:e.name,occurrence:s.idx,alternative:p+1}]:[]})})}r(VE,"validateEmptyOrAlternative");function qE(e,t,o){let n=new Un;e.accept(n);let i=n.alternations;return i=rr(i,c=>c.ignoreAmbiguities===!0),Ve(i,c=>{let l=c.idx,p=c.maxLookahead||t,f=Sn(l,e,p,c),d=z_(f,c,e,o),T=J_(f,c,e,o);return d.concat(T)})}r(qE,"validateAmbiguousAlternationAlternatives");var Mm=class extends je{static{r(this,"RepetitionCollector")}constructor(){super(...arguments),this.allProductions=[]}visitRepetitionWithSeparator(t){this.allProductions.push(t)}visitRepetitionMandatory(t){this.allProductions.push(t)}visitRepetitionMandatoryWithSeparator(t){this.allProductions.push(t)}visitRepetition(t){this.allProductions.push(t)}};function H_(e,t){let o=new Un;e.accept(o);let n=o.alternations;return Ve(n,s=>s.definition.length>255?[{message:t.buildTooManyAlternativesError({topLevelRule:e,alternation:s}),type:Oe.TOO_MANY_ALTS,ruleName:e.name,occurrence:s.idx}]:[])}r(H_,"validateTooManyAlts");function jE(e,t,o){let n=[];return M(e,i=>{let s=new Mm;i.accept(s);let c=s.allProductions;M(c,l=>{let p=Ka(l),f=l.maxLookahead||t,d=l.idx,S=An(d,i,p,f)[0];if(D(xe(S))){let g=o.buildEmptyRepetitionError({topLevelRule:i,repetition:l});n.push({message:g,type:Oe.NO_NON_EMPTY_LOOKAHEAD,ruleName:i.name})}})}),n}r(jE,"validateSomeNonEmptyLookaheadPath");function z_(e,t,o,n){let i=[],s=ge(e,(l,p,f)=>(t.definition[f].ignoreAmbiguities===!0||M(p,d=>{let T=[f];M(e,(S,g)=>{f!==g&&Ha(S,d)&&t.definition[g].ignoreAmbiguities!==!0&&T.push(g)}),T.length>1&&!Ha(i,d)&&(i.push(d),l.push({alts:T,path:d}))}),l),[]);return y(s,l=>{let p=y(l.alts,d=>d+1);return{message:n.buildAlternationAmbiguityError({topLevelRule:o,alternation:t,ambiguityIndices:p,prefixPath:l.path}),type:Oe.AMBIGUOUS_ALTS,ruleName:o.name,occurrence:t.idx,alternatives:l.alts}})}r(z_,"checkAlternativesAmbiguities");function J_(e,t,o,n){let i=ge(e,(c,l,p)=>{let f=y(l,d=>({idx:p,path:d}));return c.concat(f)},[]);return gt(Ve(i,c=>{if(t.definition[c.idx].ignoreAmbiguities===!0)return[];let p=c.idx,f=c.path,d=we(i,S=>t.definition[S.idx].ignoreAmbiguities!==!0&&S.idx<p&&vE(S.path,f));return y(d,S=>{let g=[S.idx+1,p+1],x=t.idx===0?"":t.idx;return{message:n.buildAlternationPrefixAmbiguityError({topLevelRule:o,alternation:t,ambiguityIndices:g,prefixPath:S.path}),type:Oe.AMBIGUOUS_PREFIX_ALTS,ruleName:o.name,occurrence:x,alternatives:g}})}))}r(J_,"checkPrefixAlternativesAmbiguities");function X_(e,t,o){let n=[],i=y(t,s=>s.name);return M(e,s=>{let c=s.name;if(oe(i,c)){let l=o.buildNamespaceConflictError(s);n.push({message:l,type:Oe.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:c})}}),n}r(X_,"checkTerminalAndNoneTerminalsNameSpace");function WE(e){let t=Kr(e,{errMsgProvider:OE}),o={};return M(e.rules,n=>{o[n.name]=n}),NE(o,t.errMsgProvider)}r(WE,"resolveGrammar");function YE(e){return e=Kr(e,{errMsgProvider:pt}),PE(e.rules,e.tokenTypes,e.errMsgProvider,e.grammarName)}r(YE,"validateGrammar");var KE="MismatchedTokenException",HE="NoViableAltException",zE="EarlyExitException",JE="NotAllInputParsedException",XE=[KE,HE,zE,JE];Object.freeze(XE);function ar(e){return oe(XE,e.name)}r(ar,"isRecognitionException");var to=class extends Error{static{r(this,"RecognitionException")}constructor(t,o){super(t),this.token=o,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},ke=class extends to{static{r(this,"MismatchedTokenException")}constructor(t,o,n){super(t,o),this.previousToken=n,this.name=KE}},gn=class extends to{static{r(this,"NoViableAltException")}constructor(t,o,n){super(t,o),this.previousToken=n,this.name=HE}},kn=class extends to{static{r(this,"NotAllInputParsedException")}constructor(t,o){super(t,o),this.name=JE}},Rn=class extends to{static{r(this,"EarlyExitException")}constructor(t,o,n){super(t,o),this.previousToken=n,this.name=zE}};var _m={},vm="InRuleRecoveryException",Im=class extends Error{static{r(this,"InRuleRecoveryException")}constructor(t){super(t),this.name=vm}},Ja=class{static{r(this,"Recoverable")}initRecoverable(t){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=F(t,"recoveryEnabled")?t.recoveryEnabled:We.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=Q_)}getTokenToInsert(t){let o=kr(t,"",NaN,NaN,NaN,NaN,NaN,NaN);return o.isInsertedInRecovery=!0,o}canTokenTypeBeInsertedInRecovery(t){return!0}canTokenTypeBeDeletedInRecovery(t){return!0}tryInRepetitionRecovery(t,o,n,i){let s=this.findReSyncTokenType(),c=this.exportLexerState(),l=[],p=!1,f=this.LA(1),d=this.LA(1),T=r(()=>{let S=this.LA(0),g=this.errorMessageProvider.buildMismatchTokenMessage({expected:i,actual:f,previous:S,ruleName:this.getCurrRuleFullName()}),x=new ke(g,f,this.LA(0));x.resyncedTokens=Ft(l),this.SAVE_ERROR(x)},"generateErrorMessage");for(;!p;)if(this.tokenMatcher(d,i)){T();return}else if(n.call(this)){T(),t.apply(this,o);return}else this.tokenMatcher(d,s)?p=!0:(d=this.SKIP_TOKEN(),this.addToResyncTokens(d,l));this.importLexerState(c)}shouldInRepetitionRecoveryBeTried(t,o,n){return!(n===!1||this.tokenMatcher(this.LA(1),t)||this.isBackTracking()||this.canPerformInRuleRecovery(t,this.getFollowsForInRuleRecovery(t,o)))}getFollowsForInRuleRecovery(t,o){let n=this.getCurrentGrammarPath(t,o);return this.getNextPossibleTokenTypes(n)}tryInRuleRecovery(t,o){if(this.canRecoverWithSingleTokenInsertion(t,o))return this.getTokenToInsert(t);if(this.canRecoverWithSingleTokenDeletion(t)){let n=this.SKIP_TOKEN();return this.consumeToken(),n}throw new Im("sad sad panda")}canPerformInRuleRecovery(t,o){return this.canRecoverWithSingleTokenInsertion(t,o)||this.canRecoverWithSingleTokenDeletion(t)}canRecoverWithSingleTokenInsertion(t,o){if(!this.canTokenTypeBeInsertedInRecovery(t)||D(o))return!1;let n=this.LA(1);return kt(o,s=>this.tokenMatcher(n,s))!==void 0}canRecoverWithSingleTokenDeletion(t){return this.canTokenTypeBeDeletedInRecovery(t)?this.tokenMatcher(this.LA(2),t):!1}isInCurrentRuleReSyncSet(t){let o=this.getCurrFollowKey(),n=this.getFollowSetFromFollowKey(o);return oe(n,t)}findReSyncTokenType(){let t=this.flattenFollowSet(),o=this.LA(1),n=2;for(;;){let i=kt(t,s=>xm(o,s));if(i!==void 0)return i;o=this.LA(n),n++}}getCurrFollowKey(){if(this.RULE_STACK.length===1)return _m;let t=this.getLastExplicitRuleShortName(),o=this.getLastExplicitRuleOccurrenceIndex(),n=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(t),idxInCallingRule:o,inRule:this.shortRuleNameToFullName(n)}}buildFullFollowKeyStack(){let t=this.RULE_STACK,o=this.RULE_OCCURRENCE_STACK;return y(t,(n,i)=>i===0?_m:{ruleName:this.shortRuleNameToFullName(n),idxInCallingRule:o[i],inRule:this.shortRuleNameToFullName(t[i-1])})}flattenFollowSet(){let t=y(this.buildFullFollowKeyStack(),o=>this.getFollowSetFromFollowKey(o));return xe(t)}getFollowSetFromFollowKey(t){if(t===_m)return[ut];let o=t.ruleName+t.idxInCallingRule+Fa+t.inRule;return this.resyncFollows[o]}addToResyncTokens(t,o){return this.tokenMatcher(t,ut)||o.push(t),o}reSyncTo(t){let o=[],n=this.LA(1);for(;this.tokenMatcher(n,t)===!1;)n=this.SKIP_TOKEN(),this.addToResyncTokens(n,o);return Ft(o)}attemptInRepetitionRecovery(t,o,n,i,s,c,l){}getCurrentGrammarPath(t,o){let n=this.getHumanReadableRuleStack(),i=X(this.RULE_OCCURRENCE_STACK);return{ruleStack:n,occurrenceStack:i,lastTok:t,lastTokOccurrence:o}}getHumanReadableRuleStack(){return y(this.RULE_STACK,t=>this.shortRuleNameToFullName(t))}};function Q_(e,t,o,n,i,s,c){let l=this.getKeyForAutomaticLookahead(n,i),p=this.firstAfterRepMap[l];if(p===void 0){let S=this.getCurrRuleFullName(),g=this.getGAstProductions()[S];p=new s(g,i).startWalking(),this.firstAfterRepMap[l]=p}let f=p.token,d=p.occurrence,T=p.isEndOfRule;this.RULE_STACK.length===1&&T&&f===void 0&&(f=ut,d=1),!(f===void 0||d===void 0)&&this.shouldInRepetitionRecoveryBeTried(f,d,c)&&this.tryInRepetitionRecovery(e,t,o,f)}r(Q_,"attemptInRepetitionRecovery");function Xa(e,t,o){return o|t|e}r(Xa,"getKeyForAutomaticLookahead");var Ln=class{static{r(this,"LLkLookaheadStrategy")}constructor(t){var o;this.maxLookahead=(o=t?.maxLookahead)!==null&&o!==void 0?o:We.maxLookahead}validate(t){let o=this.validateNoLeftRecursion(t.rules);if(D(o)){let n=this.validateEmptyOrAlternatives(t.rules),i=this.validateAmbiguousAlternationAlternatives(t.rules,this.maxLookahead),s=this.validateSomeNonEmptyLookaheadPath(t.rules,this.maxLookahead);return[...o,...n,...i,...s]}return o}validateNoLeftRecursion(t){return Ve(t,o=>Fm(o,o,pt))}validateEmptyOrAlternatives(t){return Ve(t,o=>VE(o,pt))}validateAmbiguousAlternationAlternatives(t,o){return Ve(t,n=>qE(n,o,pt))}validateSomeNonEmptyLookaheadPath(t,o){return jE(t,o,pt)}buildLookaheadForAlternation(t){return yE(t.prodOccurrence,t.rule,t.maxLookahead,t.hasPredicates,t.dynamicTokensEnabled,FE)}buildLookaheadForOptional(t){return ME(t.prodOccurrence,t.rule,t.maxLookahead,t.dynamicTokensEnabled,Ka(t.prodType),_E)}};var Za=class{static{r(this,"LooksAhead")}initLooksAhead(t){this.dynamicTokensEnabled=F(t,"dynamicTokensEnabled")?t.dynamicTokensEnabled:We.dynamicTokensEnabled,this.maxLookahead=F(t,"maxLookahead")?t.maxLookahead:We.maxLookahead,this.lookaheadStrategy=F(t,"lookaheadStrategy")?t.lookaheadStrategy:new Ln({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(t){M(t,o=>{this.TRACE_INIT(`${o.name} Rule Lookahead`,()=>{let{alternation:n,repetition:i,option:s,repetitionMandatory:c,repetitionMandatoryWithSeparator:l,repetitionWithSeparator:p}=Z_(o);M(n,f=>{let d=f.idx===0?"":f.idx;this.TRACE_INIT(`${ze(f)}${d}`,()=>{let T=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:f.idx,rule:o,maxLookahead:f.maxLookahead||this.maxLookahead,hasPredicates:f.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),S=Xa(this.fullRuleNameToShort[o.name],256,f.idx);this.setLaFuncCache(S,T)})}),M(i,f=>{this.computeLookaheadFunc(o,f.idx,768,"Repetition",f.maxLookahead,ze(f))}),M(s,f=>{this.computeLookaheadFunc(o,f.idx,512,"Option",f.maxLookahead,ze(f))}),M(c,f=>{this.computeLookaheadFunc(o,f.idx,1024,"RepetitionMandatory",f.maxLookahead,ze(f))}),M(l,f=>{this.computeLookaheadFunc(o,f.idx,1536,"RepetitionMandatoryWithSeparator",f.maxLookahead,ze(f))}),M(p,f=>{this.computeLookaheadFunc(o,f.idx,1280,"RepetitionWithSeparator",f.maxLookahead,ze(f))})})})}computeLookaheadFunc(t,o,n,i,s,c){this.TRACE_INIT(`${c}${o===0?"":o}`,()=>{let l=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:o,rule:t,maxLookahead:s||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:i}),p=Xa(this.fullRuleNameToShort[t.name],n,o);this.setLaFuncCache(p,l)})}getKeyForAutomaticLookahead(t,o){let n=this.getLastExplicitRuleShortName();return Xa(n,t,o)}getLaFuncFromCache(t){return this.lookAheadFuncsCache.get(t)}setLaFuncCache(t,o){this.lookAheadFuncsCache.set(t,o)}},wm=class extends je{static{r(this,"DslMethodsCollectorVisitor")}constructor(){super(...arguments),this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(t){this.dslMethods.option.push(t)}visitRepetitionWithSeparator(t){this.dslMethods.repetitionWithSeparator.push(t)}visitRepetitionMandatory(t){this.dslMethods.repetitionMandatory.push(t)}visitRepetitionMandatoryWithSeparator(t){this.dslMethods.repetitionMandatoryWithSeparator.push(t)}visitRepetition(t){this.dslMethods.repetition.push(t)}visitAlternation(t){this.dslMethods.alternation.push(t)}},Qa=new wm;function Z_(e){Qa.reset(),e.accept(Qa);let t=Qa.dslMethods;return Qa.reset(),t}r(Z_,"collectMethods");function Gm(e,t){isNaN(e.startOffset)===!0?(e.startOffset=t.startOffset,e.endOffset=t.endOffset):e.endOffset<t.endOffset&&(e.endOffset=t.endOffset)}r(Gm,"setNodeLocationOnlyOffset");function Dm(e,t){isNaN(e.startOffset)===!0?(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&&(e.endOffset=t.endOffset,e.endColumn=t.endColumn,e.endLine=t.endLine)}r(Dm,"setNodeLocationFull");function QE(e,t,o){e.children[o]===void 0?e.children[o]=[t]:e.children[o].push(t)}r(QE,"addTerminalToCst");function ZE(e,t,o){e.children[t]===void 0?e.children[t]=[o]:e.children[t].push(o)}r(ZE,"addNoneTerminalToCst");var $_="name";function Vm(e,t){Object.defineProperty(e,$_,{enumerable:!1,configurable:!0,writable:!1,value:t})}r(Vm,"defineNameProp");function eI(e,t){let o=W(e),n=o.length;for(let i=0;i<n;i++){let s=o[i],c=e[s],l=c.length;for(let p=0;p<l;p++){let f=c[p];f.tokenTypeIdx===void 0&&this[f.name](f.children,t)}}}r(eI,"defaultVisit");function $E(e,t){let o=r(function(){},"derivedConstructor");Vm(o,e+"BaseSemantics");let n={visit:r(function(i,s){if(b(i)&&(i=i[0]),!Be(i))return this[i.name](i.children,s)},"visit"),validateVisitor:r(function(){let i=tI(this,t);if(!D(i)){let s=y(i,c=>c.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>:
85
85
  ${s.join(`
86
86
 
87
87
  `).replace(/\n/g,`
88
- `)}`)}},"validateVisitor")};return o.prototype=n,o.prototype.constructor=o,o._RULE_NAMES=t,o}r(uU,"createBaseSemanticVisitorConstructor");function fU(e,t,o){let n=r(function(){},"derivedConstructor");Lh(n,e+"BaseSemanticsWithDefaults");let a=Object.create(o.prototype);return _(t,s=>{a[s]=kW}),n.prototype=a,n.prototype.constructor=n,n}r(fU,"createBaseVisitorConstructorWithDefaults");var kh;(function(e){e[e.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",e[e.MISSING_METHOD=1]="MISSING_METHOD"})(kh||(kh={}));function OW(e,t){return CW(e,t)}r(OW,"validateVisitor");function CW(e,t){let o=Be(t,a=>We(e[a])===!1),n=b(o,a=>({msg:`Missing visitor method: <${a}> on ${e.constructor.name} CST Visitor.`,type:kh.MISSING_METHOD,methodName:a}));return wt(n)}r(CW,"validateMissingCstMethods");var $s=class{static{r(this,"TreeBuilder")}initTreeBuilder(t){if(this.CST_STACK=[],this.outputCst=t.outputCst,this.nodeLocationTracking=M(t,"nodeLocationTracking")?t.nodeLocationTracking:Qe.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=pe,this.cstFinallyStateUpdate=pe,this.cstPostTerminal=pe,this.cstPostNonTerminal=pe,this.cstPostRule=pe;else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=Rh,this.setNodeLocationFromNode=Rh,this.cstPostRule=pe,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=pe,this.setNodeLocationFromNode=pe,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=Uh,this.setNodeLocationFromNode=Uh,this.cstPostRule=pe,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=pe,this.setNodeLocationFromNode=pe,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=pe,this.setNodeLocationFromNode=pe,this.cstPostRule=pe,this.setInitialNodeLocation=pe;else throw Error(`Invalid <nodeLocationTracking> config option: "${t.nodeLocationTracking}"`)}setInitialNodeLocationOnlyOffsetRecovery(t){t.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(t){t.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(t){t.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(t){let o=this.LA(1);t.location={startOffset:o.startOffset,startLine:o.startLine,startColumn:o.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(t){let o={name:t,children:Object.create(null)};this.setInitialNodeLocation(o),this.CST_STACK.push(o)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(t){let o=this.LA(0),n=t.location;n.startOffset<=o.startOffset?(n.endOffset=o.endOffset,n.endLine=o.endLine,n.endColumn=o.endColumn):(n.startOffset=NaN,n.startLine=NaN,n.startColumn=NaN)}cstPostRuleOnlyOffset(t){let o=this.LA(0),n=t.location;n.startOffset<=o.startOffset?n.endOffset=o.endOffset:n.startOffset=NaN}cstPostTerminal(t,o){let n=this.CST_STACK[this.CST_STACK.length-1];cU(n,o,t),this.setNodeLocationFromToken(n.location,o)}cstPostNonTerminal(t,o){let n=this.CST_STACK[this.CST_STACK.length-1];pU(n,o,t),this.setNodeLocationFromNode(n.location,t.location)}getBaseCstVisitorConstructor(){if(Ge(this.baseCstVisitorConstructor)){let t=uU(this.className,X(this.gastProductionsCache));return this.baseCstVisitorConstructor=t,t}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(Ge(this.baseCstVisitorWithDefaultsConstructor)){let t=fU(this.className,X(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=t,t}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){let t=this.RULE_STACK;return t[t.length-1]}getPreviousExplicitRuleShortName(){let t=this.RULE_STACK;return t[t.length-2]}getLastExplicitRuleOccurrenceIndex(){let t=this.RULE_OCCURRENCE_STACK;return t[t.length-1]}};var el=class{static{r(this,"LexerAdapter")}initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(t){if(this.selfAnalysisDone!==!0)throw Error("Missing <performSelfAnalysis> invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=t,this.tokVectorLength=t.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVector.length-2?(this.consumeToken(),this.LA(1)):un}LA(t){let o=this.currIdx+t;return o<0||this.tokVectorLength<=o?un:this.tokVector[o]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(t){this.currIdx=t}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVector.length-1}getLexerPosition(){return this.exportLexerState()}};var tl=class{static{r(this,"RecognizerApi")}ACTION(t){return t.call(this)}consume(t,o,n){return this.consumeInternal(o,t,n)}subrule(t,o,n){return this.subruleInternal(o,t,n)}option(t,o){return this.optionInternal(o,t)}or(t,o){return this.orInternal(o,t)}many(t,o){return this.manyInternal(t,o)}atLeastOne(t,o){return this.atLeastOneInternal(t,o)}CONSUME(t,o){return this.consumeInternal(t,0,o)}CONSUME1(t,o){return this.consumeInternal(t,1,o)}CONSUME2(t,o){return this.consumeInternal(t,2,o)}CONSUME3(t,o){return this.consumeInternal(t,3,o)}CONSUME4(t,o){return this.consumeInternal(t,4,o)}CONSUME5(t,o){return this.consumeInternal(t,5,o)}CONSUME6(t,o){return this.consumeInternal(t,6,o)}CONSUME7(t,o){return this.consumeInternal(t,7,o)}CONSUME8(t,o){return this.consumeInternal(t,8,o)}CONSUME9(t,o){return this.consumeInternal(t,9,o)}SUBRULE(t,o){return this.subruleInternal(t,0,o)}SUBRULE1(t,o){return this.subruleInternal(t,1,o)}SUBRULE2(t,o){return this.subruleInternal(t,2,o)}SUBRULE3(t,o){return this.subruleInternal(t,3,o)}SUBRULE4(t,o){return this.subruleInternal(t,4,o)}SUBRULE5(t,o){return this.subruleInternal(t,5,o)}SUBRULE6(t,o){return this.subruleInternal(t,6,o)}SUBRULE7(t,o){return this.subruleInternal(t,7,o)}SUBRULE8(t,o){return this.subruleInternal(t,8,o)}SUBRULE9(t,o){return this.subruleInternal(t,9,o)}OPTION(t){return this.optionInternal(t,0)}OPTION1(t){return this.optionInternal(t,1)}OPTION2(t){return this.optionInternal(t,2)}OPTION3(t){return this.optionInternal(t,3)}OPTION4(t){return this.optionInternal(t,4)}OPTION5(t){return this.optionInternal(t,5)}OPTION6(t){return this.optionInternal(t,6)}OPTION7(t){return this.optionInternal(t,7)}OPTION8(t){return this.optionInternal(t,8)}OPTION9(t){return this.optionInternal(t,9)}OR(t){return this.orInternal(t,0)}OR1(t){return this.orInternal(t,1)}OR2(t){return this.orInternal(t,2)}OR3(t){return this.orInternal(t,3)}OR4(t){return this.orInternal(t,4)}OR5(t){return this.orInternal(t,5)}OR6(t){return this.orInternal(t,6)}OR7(t){return this.orInternal(t,7)}OR8(t){return this.orInternal(t,8)}OR9(t){return this.orInternal(t,9)}MANY(t){this.manyInternal(0,t)}MANY1(t){this.manyInternal(1,t)}MANY2(t){this.manyInternal(2,t)}MANY3(t){this.manyInternal(3,t)}MANY4(t){this.manyInternal(4,t)}MANY5(t){this.manyInternal(5,t)}MANY6(t){this.manyInternal(6,t)}MANY7(t){this.manyInternal(7,t)}MANY8(t){this.manyInternal(8,t)}MANY9(t){this.manyInternal(9,t)}MANY_SEP(t){this.manySepFirstInternal(0,t)}MANY_SEP1(t){this.manySepFirstInternal(1,t)}MANY_SEP2(t){this.manySepFirstInternal(2,t)}MANY_SEP3(t){this.manySepFirstInternal(3,t)}MANY_SEP4(t){this.manySepFirstInternal(4,t)}MANY_SEP5(t){this.manySepFirstInternal(5,t)}MANY_SEP6(t){this.manySepFirstInternal(6,t)}MANY_SEP7(t){this.manySepFirstInternal(7,t)}MANY_SEP8(t){this.manySepFirstInternal(8,t)}MANY_SEP9(t){this.manySepFirstInternal(9,t)}AT_LEAST_ONE(t){this.atLeastOneInternal(0,t)}AT_LEAST_ONE1(t){return this.atLeastOneInternal(1,t)}AT_LEAST_ONE2(t){this.atLeastOneInternal(2,t)}AT_LEAST_ONE3(t){this.atLeastOneInternal(3,t)}AT_LEAST_ONE4(t){this.atLeastOneInternal(4,t)}AT_LEAST_ONE5(t){this.atLeastOneInternal(5,t)}AT_LEAST_ONE6(t){this.atLeastOneInternal(6,t)}AT_LEAST_ONE7(t){this.atLeastOneInternal(7,t)}AT_LEAST_ONE8(t){this.atLeastOneInternal(8,t)}AT_LEAST_ONE9(t){this.atLeastOneInternal(9,t)}AT_LEAST_ONE_SEP(t){this.atLeastOneSepFirstInternal(0,t)}AT_LEAST_ONE_SEP1(t){this.atLeastOneSepFirstInternal(1,t)}AT_LEAST_ONE_SEP2(t){this.atLeastOneSepFirstInternal(2,t)}AT_LEAST_ONE_SEP3(t){this.atLeastOneSepFirstInternal(3,t)}AT_LEAST_ONE_SEP4(t){this.atLeastOneSepFirstInternal(4,t)}AT_LEAST_ONE_SEP5(t){this.atLeastOneSepFirstInternal(5,t)}AT_LEAST_ONE_SEP6(t){this.atLeastOneSepFirstInternal(6,t)}AT_LEAST_ONE_SEP7(t){this.atLeastOneSepFirstInternal(7,t)}AT_LEAST_ONE_SEP8(t){this.atLeastOneSepFirstInternal(8,t)}AT_LEAST_ONE_SEP9(t){this.atLeastOneSepFirstInternal(9,t)}RULE(t,o,n=fn){if(me(this.definedRulesNames,t)){let l={message:Ot.buildDuplicateRuleNameError({topLevelRule:t,grammarName:this.className}),type:ye.DUPLICATE_RULE_NAME,ruleName:t};this.definitionErrors.push(l)}this.definedRulesNames.push(t);let a=this.defineRule(t,o,n);return this[t]=a,a}OVERRIDE_RULE(t,o,n=fn){let a=ZA(t,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(a);let s=this.defineRule(t,o,n);return this[t]=s,s}BACKTRACK(t,o){return function(){this.isBackTrackingStack.push(1);let n=this.saveRecogState();try{return t.apply(this,o),!0}catch(a){if(Pr(a))return!1;throw a}finally{this.reloadRecogState(n),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return Ns(Y(this.gastProductionsCache))}};var rl=class{static{r(this,"RecognizerEngine")}initRecognizerEngine(t,o){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=ln,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},M(o,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a <serializedGrammar> property.
88
+ `)}`)}},"validateVisitor")};return o.prototype=n,o.prototype.constructor=o,o._RULE_NAMES=t,o}r($E,"createBaseSemanticVisitorConstructor");function eh(e,t,o){let n=r(function(){},"derivedConstructor");Vm(n,e+"BaseSemanticsWithDefaults");let i=Object.create(o.prototype);return M(t,s=>{i[s]=eI}),n.prototype=i,n.prototype.constructor=n,n}r(eh,"createBaseVisitorConstructorWithDefaults");var qm;(function(e){e[e.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",e[e.MISSING_METHOD=1]="MISSING_METHOD"})(qm||(qm={}));function tI(e,t){return rI(e,t)}r(tI,"validateVisitor");function rI(e,t){let o=we(t,i=>De(e[i])===!1),n=y(o,i=>({msg:`Missing visitor method: <${i}> on ${e.constructor.name} CST Visitor.`,type:qm.MISSING_METHOD,methodName:i}));return gt(n)}r(rI,"validateMissingCstMethods");var ri=class{static{r(this,"TreeBuilder")}initTreeBuilder(t){if(this.CST_STACK=[],this.outputCst=t.outputCst,this.nodeLocationTracking=F(t,"nodeLocationTracking")?t.nodeLocationTracking:We.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=ce,this.cstFinallyStateUpdate=ce,this.cstPostTerminal=ce,this.cstPostNonTerminal=ce,this.cstPostRule=ce;else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=Dm,this.setNodeLocationFromNode=Dm,this.cstPostRule=ce,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=ce,this.setNodeLocationFromNode=ce,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=Gm,this.setNodeLocationFromNode=Gm,this.cstPostRule=ce,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=ce,this.setNodeLocationFromNode=ce,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=ce,this.setNodeLocationFromNode=ce,this.cstPostRule=ce,this.setInitialNodeLocation=ce;else throw Error(`Invalid <nodeLocationTracking> config option: "${t.nodeLocationTracking}"`)}setInitialNodeLocationOnlyOffsetRecovery(t){t.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(t){t.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(t){t.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(t){let o=this.LA(1);t.location={startOffset:o.startOffset,startLine:o.startLine,startColumn:o.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(t){let o={name:t,children:Object.create(null)};this.setInitialNodeLocation(o),this.CST_STACK.push(o)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(t){let o=this.LA(0),n=t.location;n.startOffset<=o.startOffset?(n.endOffset=o.endOffset,n.endLine=o.endLine,n.endColumn=o.endColumn):(n.startOffset=NaN,n.startLine=NaN,n.startColumn=NaN)}cstPostRuleOnlyOffset(t){let o=this.LA(0),n=t.location;n.startOffset<=o.startOffset?n.endOffset=o.endOffset:n.startOffset=NaN}cstPostTerminal(t,o){let n=this.CST_STACK[this.CST_STACK.length-1];QE(n,o,t),this.setNodeLocationFromToken(n.location,o)}cstPostNonTerminal(t,o){let n=this.CST_STACK[this.CST_STACK.length-1];ZE(n,o,t),this.setNodeLocationFromNode(n.location,t.location)}getBaseCstVisitorConstructor(){if(Be(this.baseCstVisitorConstructor)){let t=$E(this.className,W(this.gastProductionsCache));return this.baseCstVisitorConstructor=t,t}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(Be(this.baseCstVisitorWithDefaultsConstructor)){let t=eh(this.className,W(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=t,t}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){let t=this.RULE_STACK;return t[t.length-1]}getPreviousExplicitRuleShortName(){let t=this.RULE_STACK;return t[t.length-2]}getLastExplicitRuleOccurrenceIndex(){let t=this.RULE_OCCURRENCE_STACK;return t[t.length-1]}};var oi=class{static{r(this,"LexerAdapter")}initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(t){if(this.selfAnalysisDone!==!0)throw Error("Missing <performSelfAnalysis> invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=t,this.tokVectorLength=t.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVector.length-2?(this.consumeToken(),this.LA(1)):ro}LA(t){let o=this.currIdx+t;return o<0||this.tokVectorLength<=o?ro:this.tokVector[o]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(t){this.currIdx=t}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVector.length-1}getLexerPosition(){return this.exportLexerState()}};var ni=class{static{r(this,"RecognizerApi")}ACTION(t){return t.call(this)}consume(t,o,n){return this.consumeInternal(o,t,n)}subrule(t,o,n){return this.subruleInternal(o,t,n)}option(t,o){return this.optionInternal(o,t)}or(t,o){return this.orInternal(o,t)}many(t,o){return this.manyInternal(t,o)}atLeastOne(t,o){return this.atLeastOneInternal(t,o)}CONSUME(t,o){return this.consumeInternal(t,0,o)}CONSUME1(t,o){return this.consumeInternal(t,1,o)}CONSUME2(t,o){return this.consumeInternal(t,2,o)}CONSUME3(t,o){return this.consumeInternal(t,3,o)}CONSUME4(t,o){return this.consumeInternal(t,4,o)}CONSUME5(t,o){return this.consumeInternal(t,5,o)}CONSUME6(t,o){return this.consumeInternal(t,6,o)}CONSUME7(t,o){return this.consumeInternal(t,7,o)}CONSUME8(t,o){return this.consumeInternal(t,8,o)}CONSUME9(t,o){return this.consumeInternal(t,9,o)}SUBRULE(t,o){return this.subruleInternal(t,0,o)}SUBRULE1(t,o){return this.subruleInternal(t,1,o)}SUBRULE2(t,o){return this.subruleInternal(t,2,o)}SUBRULE3(t,o){return this.subruleInternal(t,3,o)}SUBRULE4(t,o){return this.subruleInternal(t,4,o)}SUBRULE5(t,o){return this.subruleInternal(t,5,o)}SUBRULE6(t,o){return this.subruleInternal(t,6,o)}SUBRULE7(t,o){return this.subruleInternal(t,7,o)}SUBRULE8(t,o){return this.subruleInternal(t,8,o)}SUBRULE9(t,o){return this.subruleInternal(t,9,o)}OPTION(t){return this.optionInternal(t,0)}OPTION1(t){return this.optionInternal(t,1)}OPTION2(t){return this.optionInternal(t,2)}OPTION3(t){return this.optionInternal(t,3)}OPTION4(t){return this.optionInternal(t,4)}OPTION5(t){return this.optionInternal(t,5)}OPTION6(t){return this.optionInternal(t,6)}OPTION7(t){return this.optionInternal(t,7)}OPTION8(t){return this.optionInternal(t,8)}OPTION9(t){return this.optionInternal(t,9)}OR(t){return this.orInternal(t,0)}OR1(t){return this.orInternal(t,1)}OR2(t){return this.orInternal(t,2)}OR3(t){return this.orInternal(t,3)}OR4(t){return this.orInternal(t,4)}OR5(t){return this.orInternal(t,5)}OR6(t){return this.orInternal(t,6)}OR7(t){return this.orInternal(t,7)}OR8(t){return this.orInternal(t,8)}OR9(t){return this.orInternal(t,9)}MANY(t){this.manyInternal(0,t)}MANY1(t){this.manyInternal(1,t)}MANY2(t){this.manyInternal(2,t)}MANY3(t){this.manyInternal(3,t)}MANY4(t){this.manyInternal(4,t)}MANY5(t){this.manyInternal(5,t)}MANY6(t){this.manyInternal(6,t)}MANY7(t){this.manyInternal(7,t)}MANY8(t){this.manyInternal(8,t)}MANY9(t){this.manyInternal(9,t)}MANY_SEP(t){this.manySepFirstInternal(0,t)}MANY_SEP1(t){this.manySepFirstInternal(1,t)}MANY_SEP2(t){this.manySepFirstInternal(2,t)}MANY_SEP3(t){this.manySepFirstInternal(3,t)}MANY_SEP4(t){this.manySepFirstInternal(4,t)}MANY_SEP5(t){this.manySepFirstInternal(5,t)}MANY_SEP6(t){this.manySepFirstInternal(6,t)}MANY_SEP7(t){this.manySepFirstInternal(7,t)}MANY_SEP8(t){this.manySepFirstInternal(8,t)}MANY_SEP9(t){this.manySepFirstInternal(9,t)}AT_LEAST_ONE(t){this.atLeastOneInternal(0,t)}AT_LEAST_ONE1(t){return this.atLeastOneInternal(1,t)}AT_LEAST_ONE2(t){this.atLeastOneInternal(2,t)}AT_LEAST_ONE3(t){this.atLeastOneInternal(3,t)}AT_LEAST_ONE4(t){this.atLeastOneInternal(4,t)}AT_LEAST_ONE5(t){this.atLeastOneInternal(5,t)}AT_LEAST_ONE6(t){this.atLeastOneInternal(6,t)}AT_LEAST_ONE7(t){this.atLeastOneInternal(7,t)}AT_LEAST_ONE8(t){this.atLeastOneInternal(8,t)}AT_LEAST_ONE9(t){this.atLeastOneInternal(9,t)}AT_LEAST_ONE_SEP(t){this.atLeastOneSepFirstInternal(0,t)}AT_LEAST_ONE_SEP1(t){this.atLeastOneSepFirstInternal(1,t)}AT_LEAST_ONE_SEP2(t){this.atLeastOneSepFirstInternal(2,t)}AT_LEAST_ONE_SEP3(t){this.atLeastOneSepFirstInternal(3,t)}AT_LEAST_ONE_SEP4(t){this.atLeastOneSepFirstInternal(4,t)}AT_LEAST_ONE_SEP5(t){this.atLeastOneSepFirstInternal(5,t)}AT_LEAST_ONE_SEP6(t){this.atLeastOneSepFirstInternal(6,t)}AT_LEAST_ONE_SEP7(t){this.atLeastOneSepFirstInternal(7,t)}AT_LEAST_ONE_SEP8(t){this.atLeastOneSepFirstInternal(8,t)}AT_LEAST_ONE_SEP9(t){this.atLeastOneSepFirstInternal(9,t)}RULE(t,o,n=oo){if(oe(this.definedRulesNames,t)){let c={message:pt.buildDuplicateRuleNameError({topLevelRule:t,grammarName:this.className}),type:Oe.DUPLICATE_RULE_NAME,ruleName:t};this.definitionErrors.push(c)}this.definedRulesNames.push(t);let i=this.defineRule(t,o,n);return this[t]=i,i}OVERRIDE_RULE(t,o,n=oo){let i=DE(t,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(i);let s=this.defineRule(t,o,n);return this[t]=s,s}BACKTRACK(t,o){return function(){this.isBackTrackingStack.push(1);let n=this.saveRecogState();try{return t.apply(this,o),!0}catch(i){if(ar(i))return!1;throw i}finally{this.reloadRecogState(n),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return Ma(K(this.gastProductionsCache))}};var ai=class{static{r(this,"RecognizerEngine")}initRecognizerEngine(t,o){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=$r,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},F(o,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a <serializedGrammar> property.
89
89
  See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0
90
- For Further details.`);if(F(t)){if(D(t))throw Error(`A Token Vocabulary cannot be empty.
90
+ For Further details.`);if(b(t)){if(D(t))throw Error(`A Token Vocabulary cannot be empty.
91
91
  Note that the first argument for the parser constructor
92
92
  is no longer a Token vector (since v4.0).`);if(typeof t[0].startOffset=="number")throw Error(`The Parser constructor no longer accepts a token vector as the first argument.
93
93
  See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0
94
- For Further details.`)}if(F(t))this.tokensMap=Le(t,(s,l)=>(s[l.name]=l,s),{});else if(M(t,"modes")&&tt(Ne(Y(t.modes)),bA)){let s=Ne(Y(t.modes)),l=Vo(s);this.tokensMap=Le(l,(c,p)=>(c[p.name]=p,c),{})}else if(ce(t))this.tokensMap=Z(t);else throw new Error("<tokensDictionary> argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=kt;let n=M(t,"modes")?Ne(Y(t.modes)):Y(t),a=tt(n,s=>D(s.categoryMatches));this.tokenMatcher=a?ln:er,tr(Y(this.tokensMap))}defineRule(t,o,n){if(this.selfAnalysisDone)throw Error(`Grammar rule <${t}> may not be defined after the 'performSelfAnalysis' method has been called'
95
- Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);let a=M(n,"resyncEnabled")?n.resyncEnabled:fn.resyncEnabled,s=M(n,"recoveryValueFunc")?n.recoveryValueFunc:fn.recoveryValueFunc,l=this.ruleShortNameIdx<<12;this.ruleShortNameIdx++,this.shortRuleNameToFull[l]=t,this.fullRuleNameToShort[t]=l;let c;return this.outputCst===!0?c=r(function(...d){try{this.ruleInvocationStateUpdate(l,t,this.subruleIdx),o.apply(this,d);let h=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(h),h}catch(h){return this.invokeRuleCatch(h,a,s)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTry"):c=r(function(...d){try{return this.ruleInvocationStateUpdate(l,t,this.subruleIdx),o.apply(this,d)}catch(h){return this.invokeRuleCatch(h,a,s)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTryCst"),Object.assign(c,{ruleName:t,originalGrammarAction:o})}invokeRuleCatch(t,o,n){let a=this.RULE_STACK.length===1,s=o&&!this.isBackTracking()&&this.recoveryEnabled;if(Pr(t)){let l=t;if(s){let c=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(c))if(l.resyncedTokens=this.reSyncTo(c),this.outputCst){let p=this.CST_STACK[this.CST_STACK.length-1];return p.recoveredNode=!0,p}else return n(t);else{if(this.outputCst){let p=this.CST_STACK[this.CST_STACK.length-1];p.recoveredNode=!0,l.partialCstResult=p}throw l}}else{if(a)return this.moveToTerminatedState(),n(t);throw l}}else throw t}optionInternal(t,o){let n=this.getKeyForAutomaticLookahead(512,o);return this.optionInternalLogic(t,o,n)}optionInternalLogic(t,o,n){let a=this.getLaFuncFromCache(n),s;if(typeof t!="function"){s=t.DEF;let l=t.GATE;if(l!==void 0){let c=a;a=r(()=>l.call(this)&&c.call(this),"lookAheadFunc")}}else s=t;if(a.call(this)===!0)return s.call(this)}atLeastOneInternal(t,o){let n=this.getKeyForAutomaticLookahead(1024,t);return this.atLeastOneInternalLogic(t,o,n)}atLeastOneInternalLogic(t,o,n){let a=this.getLaFuncFromCache(n),s;if(typeof o!="function"){s=o.DEF;let l=o.GATE;if(l!==void 0){let c=a;a=r(()=>l.call(this)&&c.call(this),"lookAheadFunc")}}else s=o;if(a.call(this)===!0){let l=this.doSingleRepetition(s);for(;a.call(this)===!0&&l===!0;)l=this.doSingleRepetition(s)}else throw this.raiseEarlyExitException(t,fe.REPETITION_MANDATORY,o.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[t,o],a,1024,t,Gs)}atLeastOneSepFirstInternal(t,o){let n=this.getKeyForAutomaticLookahead(1536,t);this.atLeastOneSepFirstInternalLogic(t,o,n)}atLeastOneSepFirstInternalLogic(t,o,n){let a=o.DEF,s=o.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){a.call(this);let c=r(()=>this.tokenMatcher(this.LA(1),s),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA(1),s)===!0;)this.CONSUME(s),a.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[t,s,c,a,qa],c,1536,t,qa)}else throw this.raiseEarlyExitException(t,fe.REPETITION_MANDATORY_WITH_SEPARATOR,o.ERR_MSG)}manyInternal(t,o){let n=this.getKeyForAutomaticLookahead(768,t);return this.manyInternalLogic(t,o,n)}manyInternalLogic(t,o,n){let a=this.getLaFuncFromCache(n),s;if(typeof o!="function"){s=o.DEF;let c=o.GATE;if(c!==void 0){let p=a;a=r(()=>c.call(this)&&p.call(this),"lookaheadFunction")}}else s=o;let l=!0;for(;a.call(this)===!0&&l===!0;)l=this.doSingleRepetition(s);this.attemptInRepetitionRecovery(this.manyInternal,[t,o],a,768,t,Bs,l)}manySepFirstInternal(t,o){let n=this.getKeyForAutomaticLookahead(1280,t);this.manySepFirstInternalLogic(t,o,n)}manySepFirstInternalLogic(t,o,n){let a=o.DEF,s=o.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){a.call(this);let c=r(()=>this.tokenMatcher(this.LA(1),s),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA(1),s)===!0;)this.CONSUME(s),a.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[t,s,c,a,Va],c,1280,t,Va)}}repetitionSepSecondInternal(t,o,n,a,s){for(;n();)this.CONSUME(o),a.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[t,o,n,a,s],n,1536,t,s)}doSingleRepetition(t){let o=this.getLexerPosition();return t.call(this),this.getLexerPosition()>o}orInternal(t,o){let n=this.getKeyForAutomaticLookahead(256,o),a=F(t)?t:t.DEF,l=this.getLaFuncFromCache(n).call(this,a);if(l!==void 0)return a[l].ALT.call(this);this.raiseNoAltException(o,t.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){let t=this.LA(1),o=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:t,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new Ha(o,t))}}subruleInternal(t,o,n){let a;try{let s=n!==void 0?n.ARGS:void 0;return this.subruleIdx=o,a=t.apply(this,s),this.cstPostNonTerminal(a,n!==void 0&&n.LABEL!==void 0?n.LABEL:t.ruleName),a}catch(s){throw this.subruleInternalError(s,n,t.ruleName)}}subruleInternalError(t,o,n){throw Pr(t)&&t.partialCstResult!==void 0&&(this.cstPostNonTerminal(t.partialCstResult,o!==void 0&&o.LABEL!==void 0?o.LABEL:n),delete t.partialCstResult),t}consumeInternal(t,o,n){let a;try{let s=this.LA(1);this.tokenMatcher(s,t)===!0?(this.consumeToken(),a=s):this.consumeInternalError(t,s,n)}catch(s){a=this.consumeInternalRecovery(t,o,s)}return this.cstPostTerminal(n!==void 0&&n.LABEL!==void 0?n.LABEL:t.name,a),a}consumeInternalError(t,o,n){let a,s=this.LA(0);throw n!==void 0&&n.ERR_MSG?a=n.ERR_MSG:a=this.errorMessageProvider.buildMismatchTokenMessage({expected:t,actual:o,previous:s,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new ke(a,o,s))}consumeInternalRecovery(t,o,n){if(this.recoveryEnabled&&n.name==="MismatchedTokenException"&&!this.isBackTracking()){let a=this.getFollowsForInRuleRecovery(t,o);try{return this.tryInRuleRecovery(t,a)}catch(s){throw s.name===Sh?n:s}}else throw n}saveRecogState(){let t=this.errors,o=Z(this.RULE_STACK);return{errors:t,lexerState:this.exportLexerState(),RULE_STACK:o,CST_STACK:this.CST_STACK}}reloadRecogState(t){this.errors=t.errors,this.importLexerState(t.lexerState),this.RULE_STACK=t.RULE_STACK}ruleInvocationStateUpdate(t,o,n){this.RULE_OCCURRENCE_STACK.push(n),this.RULE_STACK.push(t),this.cstInvocationStateUpdate(o)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){let t=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[t]}shortRuleNameToFullName(t){return this.shortRuleNameToFull[t]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),kt)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}};var ol=class{static{r(this,"ErrorHandler")}initErrorHandler(t){this._errors=[],this.errorMessageProvider=M(t,"errorMessageProvider")?t.errorMessageProvider:Qe.errorMessageProvider}SAVE_ERROR(t){if(Pr(t))return t.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:Z(this.RULE_OCCURRENCE_STACK)},this._errors.push(t),t;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return Z(this._errors)}set errors(t){this._errors=t}raiseEarlyExitException(t,o,n){let a=this.getCurrRuleFullName(),s=this.getGAstProductions()[a],c=Wa(t,s,o,this.maxLookahead)[0],p=[];for(let d=1;d<=this.maxLookahead;d++)p.push(this.LA(d));let f=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:c,actual:p,previous:this.LA(0),customUserDescription:n,ruleName:a});throw this.SAVE_ERROR(new za(f,this.LA(1),this.LA(0)))}raiseNoAltException(t,o){let n=this.getCurrRuleFullName(),a=this.getGAstProductions()[n],s=ja(t,a,this.maxLookahead),l=[];for(let f=1;f<=this.maxLookahead;f++)l.push(this.LA(f));let c=this.LA(0),p=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:s,actual:l,previous:c,customUserDescription:o,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new Ya(p,this.LA(1),c))}};var nl=class{static{r(this,"ContentAssist")}initContentAssist(){}computeContentAssist(t,o){let n=this.gastProductionsCache[t];if(Ge(n))throw Error(`Rule ->${t}<- does not exist in this grammar.`);return Vs([n],o,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(t){let o=_e(t.ruleStack),a=this.getGAstProductions()[o];return new Ps(a,t).startWalking()}};var sl={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(sl);var mU=!0,dU=Math.pow(2,8)-1,TU=rr({name:"RECORDING_PHASE_TOKEN",pattern:ue.NA});tr([TU]);var EU=po(TU,`This IToken indicates the Parser is in Recording Phase
96
- See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,-1,-1,-1,-1,-1,-1);Object.freeze(EU);var yW={name:`This CSTNode indicates the Parser is in Recording Phase
97
- See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},al=class{static{r(this,"GastRecorder")}initGastRecorder(t){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",()=>{for(let t=0;t<10;t++){let o=t>0?t:"";this[`CONSUME${o}`]=function(n,a){return this.consumeInternalRecord(n,t,a)},this[`SUBRULE${o}`]=function(n,a){return this.subruleInternalRecord(n,t,a)},this[`OPTION${o}`]=function(n){return this.optionInternalRecord(n,t)},this[`OR${o}`]=function(n){return this.orInternalRecord(n,t)},this[`MANY${o}`]=function(n){this.manyInternalRecord(t,n)},this[`MANY_SEP${o}`]=function(n){this.manySepFirstInternalRecord(t,n)},this[`AT_LEAST_ONE${o}`]=function(n){this.atLeastOneInternalRecord(t,n)},this[`AT_LEAST_ONE_SEP${o}`]=function(n){this.atLeastOneSepFirstInternalRecord(t,n)}}this.consume=function(t,o,n){return this.consumeInternalRecord(o,t,n)},this.subrule=function(t,o,n){return this.subruleInternalRecord(o,t,n)},this.option=function(t,o){return this.optionInternalRecord(o,t)},this.or=function(t,o){return this.orInternalRecord(o,t)},this.many=function(t,o){this.manyInternalRecord(t,o)},this.atLeastOne=function(t,o){this.atLeastOneInternalRecord(t,o)},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",()=>{let t=this;for(let o=0;o<10;o++){let n=o>0?o:"";delete t[`CONSUME${n}`],delete t[`SUBRULE${n}`],delete t[`OPTION${n}`],delete t[`OR${n}`],delete t[`MANY${n}`],delete t[`MANY_SEP${n}`],delete t[`AT_LEAST_ONE${n}`],delete t[`AT_LEAST_ONE_SEP${n}`]}delete t.consume,delete t.subrule,delete t.option,delete t.or,delete t.many,delete t.atLeastOne,delete t.ACTION,delete t.BACKTRACK,delete t.LA})}ACTION_RECORD(t){}BACKTRACK_RECORD(t,o){return()=>!0}LA_RECORD(t){return un}topLevelRuleRecord(t,o){try{let n=new Je({definition:[],name:t});return n.name=t,this.recordingProdStack.push(n),o.call(this),this.recordingProdStack.pop(),n}catch(n){if(n.KNOWN_RECORDER_ERROR!==!0)try{n.message=n.message+`
94
+ For Further details.`)}if(b(t))this.tokensMap=ge(t,(s,c)=>(s[c.name]=c,s),{});else if(F(t,"modes")&&be(xe(K(t.modes)),SE)){let s=xe(K(t.modes)),c=or(s);this.tokensMap=ge(c,(l,p)=>(l[p.name]=p,l),{})}else if(se(t))this.tokensMap=X(t);else throw new Error("<tokensDictionary> argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=ut;let n=F(t,"modes")?xe(K(t.modes)):K(t),i=be(n,s=>D(s.categoryMatches));this.tokenMatcher=i?$r:It,vt(K(this.tokensMap))}defineRule(t,o,n){if(this.selfAnalysisDone)throw Error(`Grammar rule <${t}> may not be defined after the 'performSelfAnalysis' method has been called'
95
+ Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);let i=F(n,"resyncEnabled")?n.resyncEnabled:oo.resyncEnabled,s=F(n,"recoveryValueFunc")?n.recoveryValueFunc:oo.recoveryValueFunc,c=this.ruleShortNameIdx<<12;this.ruleShortNameIdx++,this.shortRuleNameToFull[c]=t,this.fullRuleNameToShort[t]=c;let l;return this.outputCst===!0?l=r(function(...d){try{this.ruleInvocationStateUpdate(c,t,this.subruleIdx),o.apply(this,d);let T=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(T),T}catch(T){return this.invokeRuleCatch(T,i,s)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTry"):l=r(function(...d){try{return this.ruleInvocationStateUpdate(c,t,this.subruleIdx),o.apply(this,d)}catch(T){return this.invokeRuleCatch(T,i,s)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTryCst"),Object.assign(l,{ruleName:t,originalGrammarAction:o})}invokeRuleCatch(t,o,n){let i=this.RULE_STACK.length===1,s=o&&!this.isBackTracking()&&this.recoveryEnabled;if(ar(t)){let c=t;if(s){let l=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(l))if(c.resyncedTokens=this.reSyncTo(l),this.outputCst){let p=this.CST_STACK[this.CST_STACK.length-1];return p.recoveredNode=!0,p}else return n(t);else{if(this.outputCst){let p=this.CST_STACK[this.CST_STACK.length-1];p.recoveredNode=!0,c.partialCstResult=p}throw c}}else{if(i)return this.moveToTerminatedState(),n(t);throw c}}else throw t}optionInternal(t,o){let n=this.getKeyForAutomaticLookahead(512,o);return this.optionInternalLogic(t,o,n)}optionInternalLogic(t,o,n){let i=this.getLaFuncFromCache(n),s;if(typeof t!="function"){s=t.DEF;let c=t.GATE;if(c!==void 0){let l=i;i=r(()=>c.call(this)&&l.call(this),"lookAheadFunc")}}else s=t;if(i.call(this)===!0)return s.call(this)}atLeastOneInternal(t,o){let n=this.getKeyForAutomaticLookahead(1024,t);return this.atLeastOneInternalLogic(t,o,n)}atLeastOneInternalLogic(t,o,n){let i=this.getLaFuncFromCache(n),s;if(typeof o!="function"){s=o.DEF;let c=o.GATE;if(c!==void 0){let l=i;i=r(()=>c.call(this)&&l.call(this),"lookAheadFunc")}}else s=o;if(i.call(this)===!0){let c=this.doSingleRepetition(s);for(;i.call(this)===!0&&c===!0;)c=this.doSingleRepetition(s)}else throw this.raiseEarlyExitException(t,ue.REPETITION_MANDATORY,o.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[t,o],i,1024,t,qa)}atLeastOneSepFirstInternal(t,o){let n=this.getKeyForAutomaticLookahead(1536,t);this.atLeastOneSepFirstInternalLogic(t,o,n)}atLeastOneSepFirstInternalLogic(t,o,n){let i=o.DEF,s=o.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);let l=r(()=>this.tokenMatcher(this.LA(1),s),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA(1),s)===!0;)this.CONSUME(s),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[t,s,l,i,hn],l,1536,t,hn)}else throw this.raiseEarlyExitException(t,ue.REPETITION_MANDATORY_WITH_SEPARATOR,o.ERR_MSG)}manyInternal(t,o){let n=this.getKeyForAutomaticLookahead(768,t);return this.manyInternalLogic(t,o,n)}manyInternalLogic(t,o,n){let i=this.getLaFuncFromCache(n),s;if(typeof o!="function"){s=o.DEF;let l=o.GATE;if(l!==void 0){let p=i;i=r(()=>l.call(this)&&p.call(this),"lookaheadFunction")}}else s=o;let c=!0;for(;i.call(this)===!0&&c===!0;)c=this.doSingleRepetition(s);this.attemptInRepetitionRecovery(this.manyInternal,[t,o],i,768,t,Va,c)}manySepFirstInternal(t,o){let n=this.getKeyForAutomaticLookahead(1280,t);this.manySepFirstInternalLogic(t,o,n)}manySepFirstInternalLogic(t,o,n){let i=o.DEF,s=o.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);let l=r(()=>this.tokenMatcher(this.LA(1),s),"separatorLookAheadFunc");for(;this.tokenMatcher(this.LA(1),s)===!0;)this.CONSUME(s),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[t,s,l,i,En],l,1280,t,En)}}repetitionSepSecondInternal(t,o,n,i,s){for(;n();)this.CONSUME(o),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[t,o,n,i,s],n,1536,t,s)}doSingleRepetition(t){let o=this.getLexerPosition();return t.call(this),this.getLexerPosition()>o}orInternal(t,o){let n=this.getKeyForAutomaticLookahead(256,o),i=b(t)?t:t.DEF,c=this.getLaFuncFromCache(n).call(this,i);if(c!==void 0)return i[c].ALT.call(this);this.raiseNoAltException(o,t.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){let t=this.LA(1),o=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:t,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new kn(o,t))}}subruleInternal(t,o,n){let i;try{let s=n!==void 0?n.ARGS:void 0;return this.subruleIdx=o,i=t.apply(this,s),this.cstPostNonTerminal(i,n!==void 0&&n.LABEL!==void 0?n.LABEL:t.ruleName),i}catch(s){throw this.subruleInternalError(s,n,t.ruleName)}}subruleInternalError(t,o,n){throw ar(t)&&t.partialCstResult!==void 0&&(this.cstPostNonTerminal(t.partialCstResult,o!==void 0&&o.LABEL!==void 0?o.LABEL:n),delete t.partialCstResult),t}consumeInternal(t,o,n){let i;try{let s=this.LA(1);this.tokenMatcher(s,t)===!0?(this.consumeToken(),i=s):this.consumeInternalError(t,s,n)}catch(s){i=this.consumeInternalRecovery(t,o,s)}return this.cstPostTerminal(n!==void 0&&n.LABEL!==void 0?n.LABEL:t.name,i),i}consumeInternalError(t,o,n){let i,s=this.LA(0);throw n!==void 0&&n.ERR_MSG?i=n.ERR_MSG:i=this.errorMessageProvider.buildMismatchTokenMessage({expected:t,actual:o,previous:s,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new ke(i,o,s))}consumeInternalRecovery(t,o,n){if(this.recoveryEnabled&&n.name==="MismatchedTokenException"&&!this.isBackTracking()){let i=this.getFollowsForInRuleRecovery(t,o);try{return this.tryInRuleRecovery(t,i)}catch(s){throw s.name===vm?n:s}}else throw n}saveRecogState(){let t=this.errors,o=X(this.RULE_STACK);return{errors:t,lexerState:this.exportLexerState(),RULE_STACK:o,CST_STACK:this.CST_STACK}}reloadRecogState(t){this.errors=t.errors,this.importLexerState(t.lexerState),this.RULE_STACK=t.RULE_STACK}ruleInvocationStateUpdate(t,o,n){this.RULE_OCCURRENCE_STACK.push(n),this.RULE_STACK.push(t),this.cstInvocationStateUpdate(o)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){let t=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[t]}shortRuleNameToFullName(t){return this.shortRuleNameToFull[t]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),ut)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}};var ii=class{static{r(this,"ErrorHandler")}initErrorHandler(t){this._errors=[],this.errorMessageProvider=F(t,"errorMessageProvider")?t.errorMessageProvider:We.errorMessageProvider}SAVE_ERROR(t){if(ar(t))return t.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:X(this.RULE_OCCURRENCE_STACK)},this._errors.push(t),t;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return X(this._errors)}set errors(t){this._errors=t}raiseEarlyExitException(t,o,n){let i=this.getCurrRuleFullName(),s=this.getGAstProductions()[i],l=An(t,s,o,this.maxLookahead)[0],p=[];for(let d=1;d<=this.maxLookahead;d++)p.push(this.LA(d));let f=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:l,actual:p,previous:this.LA(0),customUserDescription:n,ruleName:i});throw this.SAVE_ERROR(new Rn(f,this.LA(1),this.LA(0)))}raiseNoAltException(t,o){let n=this.getCurrRuleFullName(),i=this.getGAstProductions()[n],s=Sn(t,i,this.maxLookahead),c=[];for(let f=1;f<=this.maxLookahead;f++)c.push(this.LA(f));let l=this.LA(0),p=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:s,actual:c,previous:l,customUserDescription:o,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new gn(p,this.LA(1),l))}};var si=class{static{r(this,"ContentAssist")}initContentAssist(){}computeContentAssist(t,o){let n=this.gastProductionsCache[t];if(Be(n))throw Error(`Rule ->${t}<- does not exist in this grammar.`);return Wa([n],o,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(t){let o=Ue(t.ruleStack),i=this.getGAstProductions()[o];return new Da(i,t).startWalking()}};var ui={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(ui);var th=!0,rh=Math.pow(2,8)-1,nh=wt({name:"RECORDING_PHASE_TOKEN",pattern:le.NA});vt([nh]);var ah=kr(nh,`This IToken indicates the Parser is in Recording Phase
96
+ See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,-1,-1,-1,-1,-1,-1);Object.freeze(ah);var nI={name:`This CSTNode indicates the Parser is in Recording Phase
97
+ See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},ci=class{static{r(this,"GastRecorder")}initGastRecorder(t){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",()=>{for(let t=0;t<10;t++){let o=t>0?t:"";this[`CONSUME${o}`]=function(n,i){return this.consumeInternalRecord(n,t,i)},this[`SUBRULE${o}`]=function(n,i){return this.subruleInternalRecord(n,t,i)},this[`OPTION${o}`]=function(n){return this.optionInternalRecord(n,t)},this[`OR${o}`]=function(n){return this.orInternalRecord(n,t)},this[`MANY${o}`]=function(n){this.manyInternalRecord(t,n)},this[`MANY_SEP${o}`]=function(n){this.manySepFirstInternalRecord(t,n)},this[`AT_LEAST_ONE${o}`]=function(n){this.atLeastOneInternalRecord(t,n)},this[`AT_LEAST_ONE_SEP${o}`]=function(n){this.atLeastOneSepFirstInternalRecord(t,n)}}this.consume=function(t,o,n){return this.consumeInternalRecord(o,t,n)},this.subrule=function(t,o,n){return this.subruleInternalRecord(o,t,n)},this.option=function(t,o){return this.optionInternalRecord(o,t)},this.or=function(t,o){return this.orInternalRecord(o,t)},this.many=function(t,o){this.manyInternalRecord(t,o)},this.atLeastOne=function(t,o){this.atLeastOneInternalRecord(t,o)},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",()=>{let t=this;for(let o=0;o<10;o++){let n=o>0?o:"";delete t[`CONSUME${n}`],delete t[`SUBRULE${n}`],delete t[`OPTION${n}`],delete t[`OR${n}`],delete t[`MANY${n}`],delete t[`MANY_SEP${n}`],delete t[`AT_LEAST_ONE${n}`],delete t[`AT_LEAST_ONE_SEP${n}`]}delete t.consume,delete t.subrule,delete t.option,delete t.or,delete t.many,delete t.atLeastOne,delete t.ACTION,delete t.BACKTRACK,delete t.LA})}ACTION_RECORD(t){}BACKTRACK_RECORD(t,o){return()=>!0}LA_RECORD(t){return ro}topLevelRuleRecord(t,o){try{let n=new qe({definition:[],name:t});return n.name=t,this.recordingProdStack.push(n),o.call(this),this.recordingProdStack.pop(),n}catch(n){if(n.KNOWN_RECORDER_ERROR!==!0)try{n.message=n.message+`
98
98
  This error was thrown during the "grammar recording phase" For more info see:
99
- https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch{throw n}throw n}}optionInternalRecord(t,o){return Qa.call(this,ne,t,o)}atLeastOneInternalRecord(t,o){Qa.call(this,Se,o,t)}atLeastOneSepFirstInternalRecord(t,o){Qa.call(this,ge,o,t,mU)}manyInternalRecord(t,o){Qa.call(this,K,o,t)}manySepFirstInternalRecord(t,o){Qa.call(this,de,o,t,mU)}orInternalRecord(t,o){return bW.call(this,t,o)}subruleInternalRecord(t,o,n){if(il(o),!t||M(t,"ruleName")===!1){let c=new Error(`<SUBRULE${hU(o)}> argument is invalid expecting a Parser method reference but got: <${JSON.stringify(t)}>
100
- inside top level rule: <${this.recordingProdStack[0].name}>`);throw c.KNOWN_RECORDER_ERROR=!0,c}let a=Lt(this.recordingProdStack),s=t.ruleName,l=new $({idx:o,nonTerminalName:s,label:n?.LABEL,referencedRule:void 0});return a.definition.push(l),this.outputCst?yW:sl}consumeInternalRecord(t,o,n){if(il(o),!ah(t)){let l=new Error(`<CONSUME${hU(o)}> argument is invalid expecting a TokenType reference but got: <${JSON.stringify(t)}>
101
- inside top level rule: <${this.recordingProdStack[0].name}>`);throw l.KNOWN_RECORDER_ERROR=!0,l}let a=Lt(this.recordingProdStack),s=new q({idx:o,terminalType:t,label:n?.LABEL});return a.definition.push(s),EU}};function Qa(e,t,o,n=!1){il(o);let a=Lt(this.recordingProdStack),s=We(t)?t:t.DEF,l=new e({definition:[],idx:o});return n&&(l.separator=t.SEP),M(t,"MAX_LOOKAHEAD")&&(l.maxLookahead=t.MAX_LOOKAHEAD),this.recordingProdStack.push(l),s.call(this),a.definition.push(l),this.recordingProdStack.pop(),sl}r(Qa,"recordProd");function bW(e,t){il(t);let o=Lt(this.recordingProdStack),n=F(e)===!1,a=n===!1?e:e.DEF,s=new he({definition:[],idx:t,ignoreAmbiguities:n&&e.IGNORE_AMBIGUITIES===!0});M(e,"MAX_LOOKAHEAD")&&(s.maxLookahead=e.MAX_LOOKAHEAD);let l=vd(a,c=>We(c.GATE));return s.hasPredicates=l,o.definition.push(s),_(a,c=>{let p=new ee({definition:[]});s.definition.push(p),M(c,"IGNORE_AMBIGUITIES")?p.ignoreAmbiguities=c.IGNORE_AMBIGUITIES:M(c,"GATE")&&(p.ignoreAmbiguities=!0),this.recordingProdStack.push(p),c.ALT.call(this),this.recordingProdStack.pop()}),sl}r(bW,"recordOrProd");function hU(e){return e===0?"":`${e}`}r(hU,"getIdxSuffix");function il(e){if(e<0||e>dU){let t=new Error(`Invalid DSL Method idx value: <${e}>
102
- Idx value must be a none negative value smaller than ${dU+1}`);throw t.KNOWN_RECORDER_ERROR=!0,t}}r(il,"assertMethodIdxIsValid");var ll=class{static{r(this,"PerformanceTracer")}initPerformanceTracer(t){if(M(t,"traceInitPerf")){let o=t.traceInitPerf,n=typeof o=="number";this.traceInitMaxIdent=n?o:1/0,this.traceInitPerf=n?o>0:o}else this.traceInitMaxIdent=0,this.traceInitPerf=Qe.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(t,o){if(this.traceInitPerf===!0){this.traceInitIndent++;let n=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${n}--> <${t}>`);let{time:a,value:s}=ba(o),l=a>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&l(`${n}<-- <${t}> time: ${a}ms`),this.traceInitIndent--,s}else return o()}};function SU(e,t){t.forEach(o=>{let n=o.prototype;Object.getOwnPropertyNames(n).forEach(a=>{if(a==="constructor")return;let s=Object.getOwnPropertyDescriptor(n,a);s&&(s.get||s.set)?Object.defineProperty(e.prototype,a,s):e.prototype[a]=o.prototype[a]})})}r(SU,"applyMixins");var un=po(kt,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(un);var Qe=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:or,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),fn=Object.freeze({recoveryValueFunc:r(()=>{},"recoveryValueFunc"),resyncEnabled:!0}),ye;(function(e){e[e.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",e[e.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",e[e.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",e[e.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",e[e.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",e[e.LEFT_RECURSION=5]="LEFT_RECURSION",e[e.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",e[e.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",e[e.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",e[e.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",e[e.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",e[e.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",e[e.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",e[e.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION"})(ye||(ye={}));var Za=class e{static{r(this,"Parser")}static performSelfAnalysis(t){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let t;this.selfAnalysisDone=!0;let o=this.className;this.TRACE_INIT("toFastProps",()=>{_a(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),_(this.definedRulesNames,a=>{let l=this[a].originalGrammarAction,c;this.TRACE_INIT(`${a} Rule`,()=>{c=this.topLevelRuleRecord(a,l)}),this.gastProductionsCache[a]=c})}finally{this.disableRecording()}});let n=[];if(this.TRACE_INIT("Grammar Resolving",()=>{n=rU({rules:Y(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(n)}),this.TRACE_INIT("Grammar Validations",()=>{if(D(n)&&this.skipValidations===!1){let a=oU({rules:Y(this.gastProductionsCache),tokenTypes:Y(this.tokensMap),errMsgProvider:Ot,grammarName:o}),s=JA({lookaheadStrategy:this.lookaheadStrategy,rules:Y(this.gastProductionsCache),tokenTypes:Y(this.tokensMap),grammarName:o});this.definitionErrors=this.definitionErrors.concat(a,s)}}),D(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{let a=pA(Y(this.gastProductionsCache));this.resyncFollows=a}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var a,s;(s=(a=this.lookaheadStrategy).initialize)===null||s===void 0||s.call(a,{rules:Y(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(Y(this.gastProductionsCache))})),!e.DEFER_DEFINITION_ERRORS_HANDLING&&!D(this.definitionErrors))throw t=b(this.definitionErrors,a=>a.message),new Error(`Parser Definition Errors detected:
99
+ https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch{throw n}throw n}}optionInternalRecord(t,o){return Cn.call(this,te,t,o)}atLeastOneInternalRecord(t,o){Cn.call(this,de,o,t)}atLeastOneSepFirstInternalRecord(t,o){Cn.call(this,Te,o,t,th)}manyInternalRecord(t,o){Cn.call(this,Y,o,t)}manySepFirstInternalRecord(t,o){Cn.call(this,pe,o,t,th)}orInternalRecord(t,o){return aI.call(this,t,o)}subruleInternalRecord(t,o,n){if(li(o),!t||F(t,"ruleName")===!1){let l=new Error(`<SUBRULE${oh(o)}> argument is invalid expecting a Parser method reference but got: <${JSON.stringify(t)}>
100
+ inside top level rule: <${this.recordingProdStack[0].name}>`);throw l.KNOWN_RECORDER_ERROR=!0,l}let i=ct(this.recordingProdStack),s=t.ruleName,c=new Q({idx:o,nonTerminalName:s,label:n?.LABEL,referencedRule:void 0});return i.definition.push(c),this.outputCst?nI:ui}consumeInternalRecord(t,o,n){if(li(o),!km(t)){let c=new Error(`<CONSUME${oh(o)}> argument is invalid expecting a TokenType reference but got: <${JSON.stringify(t)}>
101
+ inside top level rule: <${this.recordingProdStack[0].name}>`);throw c.KNOWN_RECORDER_ERROR=!0,c}let i=ct(this.recordingProdStack),s=new q({idx:o,terminalType:t,label:n?.LABEL});return i.definition.push(s),ah}};function Cn(e,t,o,n=!1){li(o);let i=ct(this.recordingProdStack),s=De(t)?t:t.DEF,c=new e({definition:[],idx:o});return n&&(c.separator=t.SEP),F(t,"MAX_LOOKAHEAD")&&(c.maxLookahead=t.MAX_LOOKAHEAD),this.recordingProdStack.push(c),s.call(this),i.definition.push(c),this.recordingProdStack.pop(),ui}r(Cn,"recordProd");function aI(e,t){li(t);let o=ct(this.recordingProdStack),n=b(e)===!1,i=n===!1?e:e.DEF,s=new me({definition:[],idx:t,ignoreAmbiguities:n&&e.IGNORE_AMBIGUITIES===!0});F(e,"MAX_LOOKAHEAD")&&(s.maxLookahead=e.MAX_LOOKAHEAD);let c=lt(i,l=>De(l.GATE));return s.hasPredicates=c,o.definition.push(s),M(i,l=>{let p=new Z({definition:[]});s.definition.push(p),F(l,"IGNORE_AMBIGUITIES")?p.ignoreAmbiguities=l.IGNORE_AMBIGUITIES:F(l,"GATE")&&(p.ignoreAmbiguities=!0),this.recordingProdStack.push(p),l.ALT.call(this),this.recordingProdStack.pop()}),ui}r(aI,"recordOrProd");function oh(e){return e===0?"":`${e}`}r(oh,"getIdxSuffix");function li(e){if(e<0||e>rh){let t=new Error(`Invalid DSL Method idx value: <${e}>
102
+ Idx value must be a none negative value smaller than ${rh+1}`);throw t.KNOWN_RECORDER_ERROR=!0,t}}r(li,"assertMethodIdxIsValid");var pi=class{static{r(this,"PerformanceTracer")}initPerformanceTracer(t){if(F(t,"traceInitPerf")){let o=t.traceInitPerf,n=typeof o=="number";this.traceInitMaxIdent=n?o:1/0,this.traceInitPerf=n?o>0:o}else this.traceInitMaxIdent=0,this.traceInitPerf=We.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(t,o){if(this.traceInitPerf===!0){this.traceInitIndent++;let n=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent<this.traceInitMaxIdent&&console.log(`${n}--> <${t}>`);let{time:i,value:s}=cn(o),c=i>10?console.warn:console.log;return this.traceInitIndent<this.traceInitMaxIdent&&c(`${n}<-- <${t}> time: ${i}ms`),this.traceInitIndent--,s}else return o()}};function ih(e,t){t.forEach(o=>{let n=o.prototype;Object.getOwnPropertyNames(n).forEach(i=>{if(i==="constructor")return;let s=Object.getOwnPropertyDescriptor(n,i);s&&(s.get||s.set)?Object.defineProperty(e.prototype,i,s):e.prototype[i]=o.prototype[i]})})}r(ih,"applyMixins");var ro=kr(ut,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(ro);var We=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:Bt,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),oo=Object.freeze({recoveryValueFunc:r(()=>{},"recoveryValueFunc"),resyncEnabled:!0}),Oe;(function(e){e[e.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",e[e.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",e[e.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",e[e.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",e[e.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",e[e.LEFT_RECURSION=5]="LEFT_RECURSION",e[e.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",e[e.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",e[e.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",e[e.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",e[e.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",e[e.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",e[e.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",e[e.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION"})(Oe||(Oe={}));var On=class e{static{r(this,"Parser")}static performSelfAnalysis(t){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let t;this.selfAnalysisDone=!0;let o=this.className;this.TRACE_INIT("toFastProps",()=>{ln(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),M(this.definedRulesNames,i=>{let c=this[i].originalGrammarAction,l;this.TRACE_INIT(`${i} Rule`,()=>{l=this.topLevelRuleRecord(i,c)}),this.gastProductionsCache[i]=l})}finally{this.disableRecording()}});let n=[];if(this.TRACE_INIT("Grammar Resolving",()=>{n=WE({rules:K(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(n)}),this.TRACE_INIT("Grammar Validations",()=>{if(D(n)&&this.skipValidations===!1){let i=YE({rules:K(this.gastProductionsCache),tokenTypes:K(this.tokensMap),errMsgProvider:pt,grammarName:o}),s=BE({lookaheadStrategy:this.lookaheadStrategy,rules:K(this.gastProductionsCache),tokenTypes:K(this.tokensMap),grammarName:o});this.definitionErrors=this.definitionErrors.concat(i,s)}}),D(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{let i=ZT(K(this.gastProductionsCache));this.resyncFollows=i}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var i,s;(s=(i=this.lookaheadStrategy).initialize)===null||s===void 0||s.call(i,{rules:K(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(K(this.gastProductionsCache))})),!e.DEFER_DEFINITION_ERRORS_HANDLING&&!D(this.definitionErrors))throw t=y(this.definitionErrors,i=>i.message),new Error(`Parser Definition Errors detected:
103
103
  ${t.join(`
104
104
  -------------------------------
105
- `)}`)})}constructor(t,o){this.definitionErrors=[],this.selfAnalysisDone=!1;let n=this;if(n.initErrorHandler(o),n.initLexerAdapter(),n.initLooksAhead(o),n.initRecognizerEngine(t,o),n.initRecoverable(o),n.initTreeBuilder(o),n.initContentAssist(),n.initGastRecorder(o),n.initPerformanceTracer(o),M(o,"ignoredIssues"))throw new Error(`The <ignoredIssues> IParserConfig property has been deprecated.
105
+ `)}`)})}constructor(t,o){this.definitionErrors=[],this.selfAnalysisDone=!1;let n=this;if(n.initErrorHandler(o),n.initLexerAdapter(),n.initLooksAhead(o),n.initRecognizerEngine(t,o),n.initRecoverable(o),n.initTreeBuilder(o),n.initContentAssist(),n.initGastRecorder(o),n.initPerformanceTracer(o),F(o,"ignoredIssues"))throw new Error(`The <ignoredIssues> IParserConfig property has been deprecated.
106
106
  Please use the <IGNORE_AMBIGUITIES> flag on the relevant DSL method instead.
107
107
  See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES
108
- For further details.`);this.skipValidations=M(o,"skipValidations")?o.skipValidations:Qe.skipValidations}};Za.DEFER_DEFINITION_ERRORS_HANDLING=!1;SU(Za,[Ys,Js,$s,el,rl,tl,ol,nl,al,ll]);var $a=class extends Za{static{r(this,"CstParser")}constructor(t,o=Qe){let n=Z(o);n.outputCst=!0,super(t,n)}};var MW=typeof global=="object"&&global&&global.Object===Object&&global,cl=MW;var FW=typeof self=="object"&&self&&self.Object===Object&&self,IW=cl||FW||Function("return this")(),Fe=IW;var vW=Fe.Symbol,gt=vW;var gU=Object.prototype,wW=gU.hasOwnProperty,PW=gU.toString,ei=gt?gt.toStringTag:void 0;function BW(e){var t=wW.call(e,ei),o=e[ei];try{e[ei]=void 0;var n=!0}catch{}var a=PW.call(e);return n&&(t?e[ei]=o:delete e[ei]),a}r(BW,"getRawTag");var xU=BW;var GW=Object.prototype,DW=GW.toString;function VW(e){return DW.call(e)}r(VW,"objectToString");var AU=VW;var qW="[object Null]",jW="[object Undefined]",UU=gt?gt.toStringTag:void 0;function WW(e){return e==null?e===void 0?jW:qW:UU&&UU in Object(e)?xU(e):AU(e)}r(WW,"baseGetTag");var ut=WW;function KW(e){return e!=null&&typeof e=="object"}r(KW,"isObjectLike");var Ze=KW;var YW="[object Symbol]";function HW(e){return typeof e=="symbol"||Ze(e)&&ut(e)==YW}r(HW,"isSymbol");var mn=HW;function zW(e,t){for(var o=-1,n=e==null?0:e.length,a=Array(n);++o<n;)a[o]=t(e[o],o,e);return a}r(zW,"arrayMap");var pl=zW;var JW=Array.isArray,j=JW;var XW=1/0,RU=gt?gt.prototype:void 0,LU=RU?RU.toString:void 0;function kU(e){if(typeof e=="string")return e;if(j(e))return pl(e,kU)+"";if(mn(e))return LU?LU.call(e):"";var t=e+"";return t=="0"&&1/e==-XW?"-0":t}r(kU,"baseToString");var OU=kU;function QW(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}r(QW,"isObject");var Br=QW;function ZW(e){return e}r(ZW,"identity");var dn=ZW;var $W="[object AsyncFunction]",e2="[object Function]",t2="[object GeneratorFunction]",r2="[object Proxy]";function o2(e){if(!Br(e))return!1;var t=ut(e);return t==e2||t==t2||t==$W||t==r2}r(o2,"isFunction");var ul=o2;var n2=Fe["__core-js_shared__"],fl=n2;var CU=(function(){var e=/[^.]+$/.exec(fl&&fl.keys&&fl.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""})();function a2(e){return!!CU&&CU in e}r(a2,"isMasked");var NU=a2;var i2=Function.prototype,s2=i2.toString;function l2(e){if(e!=null){try{return s2.call(e)}catch{}try{return e+""}catch{}}return""}r(l2,"toSource");var nr=l2;var c2=/[\\^$.*+?()[\]{}|]/g,p2=/^\[object .+?Constructor\]$/,u2=Function.prototype,f2=Object.prototype,m2=u2.toString,d2=f2.hasOwnProperty,h2=RegExp("^"+m2.call(d2).replace(c2,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function T2(e){if(!Br(e)||NU(e))return!1;var t=ul(e)?h2:p2;return t.test(nr(e))}r(T2,"baseIsNative");var yU=T2;function E2(e,t){return e?.[t]}r(E2,"getValue");var bU=E2;function S2(e,t){var o=bU(e,t);return yU(o)?o:void 0}r(S2,"getNative");var at=S2;var g2=at(Fe,"WeakMap"),ml=g2;function x2(e,t,o){switch(o.length){case 0:return e.call(t);case 1:return e.call(t,o[0]);case 2:return e.call(t,o[0],o[1]);case 3:return e.call(t,o[0],o[1],o[2])}return e.apply(t,o)}r(x2,"apply");var _U=x2;function A2(){}r(A2,"noop");var MU=A2;var U2=800,R2=16,L2=Date.now;function k2(e){var t=0,o=0;return function(){var n=L2(),a=R2-(n-o);if(o=n,a>0){if(++t>=U2)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}r(k2,"shortOut");var FU=k2;function O2(e){return function(){return e}}r(O2,"constant");var IU=O2;var C2=(function(){try{var e=at(Object,"defineProperty");return e({},"",{}),e}catch{}})(),Ch=C2;var N2=Ch?function(e,t){return Ch(e,"toString",{configurable:!0,enumerable:!1,value:IU(t),writable:!0})}:dn,vU=N2;var y2=FU(vU),wU=y2;function b2(e,t,o,n){for(var a=e.length,s=o+(n?1:-1);n?s--:++s<a;)if(t(e[s],s,e))return s;return-1}r(b2,"baseFindIndex");var PU=b2;function _2(e){return e!==e}r(_2,"baseIsNaN");var BU=_2;function M2(e,t,o){for(var n=o-1,a=e.length;++n<a;)if(e[n]===t)return n;return-1}r(M2,"strictIndexOf");var GU=M2;function F2(e,t,o){return t===t?GU(e,t,o):PU(e,BU,o)}r(F2,"baseIndexOf");var DU=F2;function I2(e,t){var o=e==null?0:e.length;return!!o&&DU(e,t,0)>-1}r(I2,"arrayIncludes");var dl=I2;var v2=9007199254740991,w2=/^(?:0|[1-9]\d*)$/;function P2(e,t){var o=typeof e;return t=t??v2,!!t&&(o=="number"||o!="symbol"&&w2.test(e))&&e>-1&&e%1==0&&e<t}r(P2,"isIndex");var hn=P2;function B2(e,t){return e===t||e!==e&&t!==t}r(B2,"eq");var Tn=B2;var VU=Math.max;function G2(e,t,o){return t=VU(t===void 0?e.length-1:t,0),function(){for(var n=arguments,a=-1,s=VU(n.length-t,0),l=Array(s);++a<s;)l[a]=n[t+a];a=-1;for(var c=Array(t+1);++a<t;)c[a]=n[a];return c[t]=o(l),_U(e,this,c)}}r(G2,"overRest");var qU=G2;function D2(e,t){return wU(qU(e,t,dn),e+"")}r(D2,"baseRest");var jU=D2;var V2=9007199254740991;function q2(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=V2}r(q2,"isLength");var En=q2;function j2(e){return e!=null&&En(e.length)&&!ul(e)}r(j2,"isArrayLike");var Gr=j2;function W2(e,t,o){if(!Br(o))return!1;var n=typeof t;return(n=="number"?Gr(o)&&hn(t,o.length):n=="string"&&t in o)?Tn(o[t],e):!1}r(W2,"isIterateeCall");var hl=W2;var K2=Object.prototype;function Y2(e){var t=e&&e.constructor,o=typeof t=="function"&&t.prototype||K2;return e===o}r(Y2,"isPrototype");var WU=Y2;function H2(e,t){for(var o=-1,n=Array(e);++o<e;)n[o]=t(o);return n}r(H2,"baseTimes");var KU=H2;var z2="[object Arguments]";function J2(e){return Ze(e)&&ut(e)==z2}r(J2,"baseIsArguments");var Nh=J2;var YU=Object.prototype,X2=YU.hasOwnProperty,Q2=YU.propertyIsEnumerable,Z2=Nh((function(){return arguments})())?Nh:function(e){return Ze(e)&&X2.call(e,"callee")&&!Q2.call(e,"callee")},Tl=Z2;function $2(){return!1}r($2,"stubFalse");var HU=$2;var XU=typeof exports=="object"&&exports&&!exports.nodeType&&exports,zU=XU&&typeof module=="object"&&module&&!module.nodeType&&module,eK=zU&&zU.exports===XU,JU=eK?Fe.Buffer:void 0,tK=JU?JU.isBuffer:void 0,rK=tK||HU,ti=rK;var oK="[object Arguments]",nK="[object Array]",aK="[object Boolean]",iK="[object Date]",sK="[object Error]",lK="[object Function]",cK="[object Map]",pK="[object Number]",uK="[object Object]",fK="[object RegExp]",mK="[object Set]",dK="[object String]",hK="[object WeakMap]",TK="[object ArrayBuffer]",EK="[object DataView]",SK="[object Float32Array]",gK="[object Float64Array]",xK="[object Int8Array]",AK="[object Int16Array]",UK="[object Int32Array]",RK="[object Uint8Array]",LK="[object Uint8ClampedArray]",kK="[object Uint16Array]",OK="[object Uint32Array]",ae={};ae[SK]=ae[gK]=ae[xK]=ae[AK]=ae[UK]=ae[RK]=ae[LK]=ae[kK]=ae[OK]=!0;ae[oK]=ae[nK]=ae[TK]=ae[aK]=ae[EK]=ae[iK]=ae[sK]=ae[lK]=ae[cK]=ae[pK]=ae[uK]=ae[fK]=ae[mK]=ae[dK]=ae[hK]=!1;function CK(e){return Ze(e)&&En(e.length)&&!!ae[ut(e)]}r(CK,"baseIsTypedArray");var QU=CK;function NK(e){return function(t){return e(t)}}r(NK,"baseUnary");var El=NK;var ZU=typeof exports=="object"&&exports&&!exports.nodeType&&exports,ri=ZU&&typeof module=="object"&&module&&!module.nodeType&&module,yK=ri&&ri.exports===ZU,yh=yK&&cl.process,bK=(function(){try{var e=ri&&ri.require&&ri.require("util").types;return e||yh&&yh.binding&&yh.binding("util")}catch{}})(),bh=bK;var $U=bh&&bh.isTypedArray,_K=$U?El($U):QU,Sl=_K;var MK=Object.prototype,FK=MK.hasOwnProperty;function IK(e,t){var o=j(e),n=!o&&Tl(e),a=!o&&!n&&ti(e),s=!o&&!n&&!a&&Sl(e),l=o||n||a||s,c=l?KU(e.length,String):[],p=c.length;for(var f in e)(t||FK.call(e,f))&&!(l&&(f=="length"||a&&(f=="offset"||f=="parent")||s&&(f=="buffer"||f=="byteLength"||f=="byteOffset")||hn(f,p)))&&c.push(f);return c}r(IK,"arrayLikeKeys");var eR=IK;function vK(e,t){return function(o){return e(t(o))}}r(vK,"overArg");var gl=vK;var wK=gl(Object.keys,Object),tR=wK;var PK=Object.prototype,BK=PK.hasOwnProperty;function GK(e){if(!WU(e))return tR(e);var t=[];for(var o in Object(e))BK.call(e,o)&&o!="constructor"&&t.push(o);return t}r(GK,"baseKeys");var rR=GK;function DK(e){return Gr(e)?eR(e):rR(e)}r(DK,"keys");var xt=DK;var VK=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,qK=/^\w*$/;function jK(e,t){if(j(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||mn(e)?!0:qK.test(e)||!VK.test(e)||t!=null&&e in Object(t)}r(jK,"isKey");var Sn=jK;var WK=at(Object,"create"),ar=WK;function KK(){this.__data__=ar?ar(null):{},this.size=0}r(KK,"hashClear");var oR=KK;function YK(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}r(YK,"hashDelete");var nR=YK;var HK="__lodash_hash_undefined__",zK=Object.prototype,JK=zK.hasOwnProperty;function XK(e){var t=this.__data__;if(ar){var o=t[e];return o===HK?void 0:o}return JK.call(t,e)?t[e]:void 0}r(XK,"hashGet");var aR=XK;var QK=Object.prototype,ZK=QK.hasOwnProperty;function $K(e){var t=this.__data__;return ar?t[e]!==void 0:ZK.call(t,e)}r($K,"hashHas");var iR=$K;var eY="__lodash_hash_undefined__";function tY(e,t){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=ar&&t===void 0?eY:t,this}r(tY,"hashSet");var sR=tY;function gn(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}r(gn,"Hash");gn.prototype.clear=oR;gn.prototype.delete=nR;gn.prototype.get=aR;gn.prototype.has=iR;gn.prototype.set=sR;var _h=gn;function rY(){this.__data__=[],this.size=0}r(rY,"listCacheClear");var lR=rY;function oY(e,t){for(var o=e.length;o--;)if(Tn(e[o][0],t))return o;return-1}r(oY,"assocIndexOf");var Dr=oY;var nY=Array.prototype,aY=nY.splice;function iY(e){var t=this.__data__,o=Dr(t,e);if(o<0)return!1;var n=t.length-1;return o==n?t.pop():aY.call(t,o,1),--this.size,!0}r(iY,"listCacheDelete");var cR=iY;function sY(e){var t=this.__data__,o=Dr(t,e);return o<0?void 0:t[o][1]}r(sY,"listCacheGet");var pR=sY;function lY(e){return Dr(this.__data__,e)>-1}r(lY,"listCacheHas");var uR=lY;function cY(e,t){var o=this.__data__,n=Dr(o,e);return n<0?(++this.size,o.push([e,t])):o[n][1]=t,this}r(cY,"listCacheSet");var fR=cY;function xn(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}r(xn,"ListCache");xn.prototype.clear=lR;xn.prototype.delete=cR;xn.prototype.get=pR;xn.prototype.has=uR;xn.prototype.set=fR;var Vr=xn;var pY=at(Fe,"Map"),qr=pY;function uY(){this.size=0,this.__data__={hash:new _h,map:new(qr||Vr),string:new _h}}r(uY,"mapCacheClear");var mR=uY;function fY(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}r(fY,"isKeyable");var dR=fY;function mY(e,t){var o=e.__data__;return dR(t)?o[typeof t=="string"?"string":"hash"]:o.map}r(mY,"getMapData");var jr=mY;function dY(e){var t=jr(this,e).delete(e);return this.size-=t?1:0,t}r(dY,"mapCacheDelete");var hR=dY;function hY(e){return jr(this,e).get(e)}r(hY,"mapCacheGet");var TR=hY;function TY(e){return jr(this,e).has(e)}r(TY,"mapCacheHas");var ER=TY;function EY(e,t){var o=jr(this,e),n=o.size;return o.set(e,t),this.size+=o.size==n?0:1,this}r(EY,"mapCacheSet");var SR=EY;function An(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}r(An,"MapCache");An.prototype.clear=mR;An.prototype.delete=hR;An.prototype.get=TR;An.prototype.has=ER;An.prototype.set=SR;var uo=An;var SY="Expected a function";function Mh(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(SY);var o=r(function(){var n=arguments,a=t?t.apply(this,n):n[0],s=o.cache;if(s.has(a))return s.get(a);var l=e.apply(this,n);return o.cache=s.set(a,l)||s,l},"memoized");return o.cache=new(Mh.Cache||uo),o}r(Mh,"memoize");Mh.Cache=uo;var gR=Mh;var gY=500;function xY(e){var t=gR(e,function(n){return o.size===gY&&o.clear(),n}),o=t.cache;return t}r(xY,"memoizeCapped");var xR=xY;var AY=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,UY=/\\(\\)?/g,RY=xR(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(AY,function(o,n,a,s){t.push(a?s.replace(UY,"$1"):n||o)}),t}),AR=RY;function LY(e){return e==null?"":OU(e)}r(LY,"toString");var UR=LY;function kY(e,t){return j(e)?e:Sn(e,t)?[e]:AR(UR(e))}r(kY,"castPath");var xl=kY;var OY=1/0;function CY(e){if(typeof e=="string"||mn(e))return e;var t=e+"";return t=="0"&&1/e==-OY?"-0":t}r(CY,"toKey");var Wr=CY;function NY(e,t){t=xl(t,e);for(var o=0,n=t.length;e!=null&&o<n;)e=e[Wr(t[o++])];return o&&o==n?e:void 0}r(NY,"baseGet");var Al=NY;function yY(e,t,o){var n=e==null?void 0:Al(e,t);return n===void 0?o:n}r(yY,"get");var fo=yY;function bY(e,t){for(var o=-1,n=t.length,a=e.length;++o<n;)e[a+o]=t[o];return e}r(bY,"arrayPush");var RR=bY;var _Y=gl(Object.getPrototypeOf,Object),LR=_Y;var MY="[object Object]",FY=Function.prototype,IY=Object.prototype,kR=FY.toString,vY=IY.hasOwnProperty,wY=kR.call(Object);function PY(e){if(!Ze(e)||ut(e)!=MY)return!1;var t=LR(e);if(t===null)return!0;var o=vY.call(t,"constructor")&&t.constructor;return typeof o=="function"&&o instanceof o&&kR.call(o)==wY}r(PY,"isPlainObject");var Ul=PY;function BY(){this.__data__=new Vr,this.size=0}r(BY,"stackClear");var OR=BY;function GY(e){var t=this.__data__,o=t.delete(e);return this.size=t.size,o}r(GY,"stackDelete");var CR=GY;function DY(e){return this.__data__.get(e)}r(DY,"stackGet");var NR=DY;function VY(e){return this.__data__.has(e)}r(VY,"stackHas");var yR=VY;var qY=200;function jY(e,t){var o=this.__data__;if(o instanceof Vr){var n=o.__data__;if(!qr||n.length<qY-1)return n.push([e,t]),this.size=++o.size,this;o=this.__data__=new uo(n)}return o.set(e,t),this.size=o.size,this}r(jY,"stackSet");var bR=jY;function Un(e){var t=this.__data__=new Vr(e);this.size=t.size}r(Un,"Stack");Un.prototype.clear=OR;Un.prototype.delete=CR;Un.prototype.get=NR;Un.prototype.has=yR;Un.prototype.set=bR;var Rn=Un;function WY(e,t){for(var o=-1,n=e==null?0:e.length,a=0,s=[];++o<n;){var l=e[o];t(l,o,e)&&(s[a++]=l)}return s}r(WY,"arrayFilter");var _R=WY;function KY(){return[]}r(KY,"stubArray");var MR=KY;var YY=Object.prototype,HY=YY.propertyIsEnumerable,FR=Object.getOwnPropertySymbols,zY=FR?function(e){return e==null?[]:(e=Object(e),_R(FR(e),function(t){return HY.call(e,t)}))}:MR,IR=zY;function JY(e,t,o){var n=t(e);return j(e)?n:RR(n,o(e))}r(JY,"baseGetAllKeys");var vR=JY;function XY(e){return vR(e,xt,IR)}r(XY,"getAllKeys");var Fh=XY;var QY=at(Fe,"DataView"),Rl=QY;var ZY=at(Fe,"Promise"),Ll=ZY;var $Y=at(Fe,"Set"),Kr=$Y;var wR="[object Map]",eH="[object Object]",PR="[object Promise]",BR="[object Set]",GR="[object WeakMap]",DR="[object DataView]",tH=nr(Rl),rH=nr(qr),oH=nr(Ll),nH=nr(Kr),aH=nr(ml),mo=ut;(Rl&&mo(new Rl(new ArrayBuffer(1)))!=DR||qr&&mo(new qr)!=wR||Ll&&mo(Ll.resolve())!=PR||Kr&&mo(new Kr)!=BR||ml&&mo(new ml)!=GR)&&(mo=r(function(e){var t=ut(e),o=t==eH?e.constructor:void 0,n=o?nr(o):"";if(n)switch(n){case tH:return DR;case rH:return wR;case oH:return PR;case nH:return BR;case aH:return GR}return t},"getTag"));var Ih=mo;var iH=Fe.Uint8Array,vh=iH;var sH="__lodash_hash_undefined__";function lH(e){return this.__data__.set(e,sH),this}r(lH,"setCacheAdd");var VR=lH;function cH(e){return this.__data__.has(e)}r(cH,"setCacheHas");var qR=cH;function kl(e){var t=-1,o=e==null?0:e.length;for(this.__data__=new uo;++t<o;)this.add(e[t])}r(kl,"SetCache");kl.prototype.add=kl.prototype.push=VR;kl.prototype.has=qR;var Ln=kl;function pH(e,t){for(var o=-1,n=e==null?0:e.length;++o<n;)if(t(e[o],o,e))return!0;return!1}r(pH,"arraySome");var Ol=pH;function uH(e,t){return e.has(t)}r(uH,"cacheHas");var kn=uH;var fH=1,mH=2;function dH(e,t,o,n,a,s){var l=o&fH,c=e.length,p=t.length;if(c!=p&&!(l&&p>c))return!1;var f=s.get(e),d=s.get(t);if(f&&d)return f==t&&d==e;var h=-1,T=!0,S=o&mH?new Ln:void 0;for(s.set(e,t),s.set(t,e);++h<c;){var R=e[h],U=t[h];if(n)var y=l?n(U,R,h,t,e,s):n(R,U,h,e,t,s);if(y!==void 0){if(y)continue;T=!1;break}if(S){if(!Ol(t,function(O,C){if(!kn(S,C)&&(R===O||a(R,O,o,n,s)))return S.push(C)})){T=!1;break}}else if(!(R===U||a(R,U,o,n,s))){T=!1;break}}return s.delete(e),s.delete(t),T}r(dH,"equalArrays");var Cl=dH;function hH(e){var t=-1,o=Array(e.size);return e.forEach(function(n,a){o[++t]=[a,n]}),o}r(hH,"mapToArray");var jR=hH;function TH(e){var t=-1,o=Array(e.size);return e.forEach(function(n){o[++t]=n}),o}r(TH,"setToArray");var On=TH;var EH=1,SH=2,gH="[object Boolean]",xH="[object Date]",AH="[object Error]",UH="[object Map]",RH="[object Number]",LH="[object RegExp]",kH="[object Set]",OH="[object String]",CH="[object Symbol]",NH="[object ArrayBuffer]",yH="[object DataView]",WR=gt?gt.prototype:void 0,wh=WR?WR.valueOf:void 0;function bH(e,t,o,n,a,s,l){switch(o){case yH:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case NH:return!(e.byteLength!=t.byteLength||!s(new vh(e),new vh(t)));case gH:case xH:case RH:return Tn(+e,+t);case AH:return e.name==t.name&&e.message==t.message;case LH:case OH:return e==t+"";case UH:var c=jR;case kH:var p=n&EH;if(c||(c=On),e.size!=t.size&&!p)return!1;var f=l.get(e);if(f)return f==t;n|=SH,l.set(e,t);var d=Cl(c(e),c(t),n,a,s,l);return l.delete(e),d;case CH:if(wh)return wh.call(e)==wh.call(t)}return!1}r(bH,"equalByTag");var KR=bH;var _H=1,MH=Object.prototype,FH=MH.hasOwnProperty;function IH(e,t,o,n,a,s){var l=o&_H,c=Fh(e),p=c.length,f=Fh(t),d=f.length;if(p!=d&&!l)return!1;for(var h=p;h--;){var T=c[h];if(!(l?T in t:FH.call(t,T)))return!1}var S=s.get(e),R=s.get(t);if(S&&R)return S==t&&R==e;var U=!0;s.set(e,t),s.set(t,e);for(var y=l;++h<p;){T=c[h];var O=e[T],C=t[T];if(n)var N=l?n(C,O,T,t,e,s):n(O,C,T,e,t,s);if(!(N===void 0?O===C||a(O,C,o,n,s):N)){U=!1;break}y||(y=T=="constructor")}if(U&&!y){var I=e.constructor,v=t.constructor;I!=v&&"constructor"in e&&"constructor"in t&&!(typeof I=="function"&&I instanceof I&&typeof v=="function"&&v instanceof v)&&(U=!1)}return s.delete(e),s.delete(t),U}r(IH,"equalObjects");var YR=IH;var vH=1,HR="[object Arguments]",zR="[object Array]",Nl="[object Object]",wH=Object.prototype,JR=wH.hasOwnProperty;function PH(e,t,o,n,a,s){var l=j(e),c=j(t),p=l?zR:Ih(e),f=c?zR:Ih(t);p=p==HR?Nl:p,f=f==HR?Nl:f;var d=p==Nl,h=f==Nl,T=p==f;if(T&&ti(e)){if(!ti(t))return!1;l=!0,d=!1}if(T&&!d)return s||(s=new Rn),l||Sl(e)?Cl(e,t,o,n,a,s):KR(e,t,p,o,n,a,s);if(!(o&vH)){var S=d&&JR.call(e,"__wrapped__"),R=h&&JR.call(t,"__wrapped__");if(S||R){var U=S?e.value():e,y=R?t.value():t;return s||(s=new Rn),a(U,y,o,n,s)}}return T?(s||(s=new Rn),YR(e,t,o,n,a,s)):!1}r(PH,"baseIsEqualDeep");var XR=PH;function QR(e,t,o,n,a){return e===t?!0:e==null||t==null||!Ze(e)&&!Ze(t)?e!==e&&t!==t:XR(e,t,o,n,QR,a)}r(QR,"baseIsEqual");var yl=QR;var BH=1,GH=2;function DH(e,t,o,n){var a=o.length,s=a,l=!n;if(e==null)return!s;for(e=Object(e);a--;){var c=o[a];if(l&&c[2]?c[1]!==e[c[0]]:!(c[0]in e))return!1}for(;++a<s;){c=o[a];var p=c[0],f=e[p],d=c[1];if(l&&c[2]){if(f===void 0&&!(p in e))return!1}else{var h=new Rn;if(n)var T=n(f,d,p,e,t,h);if(!(T===void 0?yl(d,f,BH|GH,n,h):T))return!1}}return!0}r(DH,"baseIsMatch");var ZR=DH;function VH(e){return e===e&&!Br(e)}r(VH,"isStrictComparable");var bl=VH;function qH(e){for(var t=xt(e),o=t.length;o--;){var n=t[o],a=e[n];t[o]=[n,a,bl(a)]}return t}r(qH,"getMatchData");var $R=qH;function jH(e,t){return function(o){return o==null?!1:o[e]===t&&(t!==void 0||e in Object(o))}}r(jH,"matchesStrictComparable");var _l=jH;function WH(e){var t=$R(e);return t.length==1&&t[0][2]?_l(t[0][0],t[0][1]):function(o){return o===e||ZR(o,e,t)}}r(WH,"baseMatches");var eL=WH;function KH(e,t){return e!=null&&t in Object(e)}r(KH,"baseHasIn");var tL=KH;function YH(e,t,o){t=xl(t,e);for(var n=-1,a=t.length,s=!1;++n<a;){var l=Wr(t[n]);if(!(s=e!=null&&o(e,l)))break;e=e[l]}return s||++n!=a?s:(a=e==null?0:e.length,!!a&&En(a)&&hn(l,a)&&(j(e)||Tl(e)))}r(YH,"hasPath");var rL=YH;function HH(e,t){return e!=null&&rL(e,t,tL)}r(HH,"hasIn");var oL=HH;var zH=1,JH=2;function XH(e,t){return Sn(e)&&bl(t)?_l(Wr(e),t):function(o){var n=fo(o,e);return n===void 0&&n===t?oL(o,e):yl(t,n,zH|JH)}}r(XH,"baseMatchesProperty");var nL=XH;function QH(e){return function(t){return t?.[e]}}r(QH,"baseProperty");var aL=QH;function ZH(e){return function(t){return Al(t,e)}}r(ZH,"basePropertyDeep");var iL=ZH;function $H(e){return Sn(e)?aL(Wr(e)):iL(e)}r($H,"property");var sL=$H;function ez(e){return typeof e=="function"?e:e==null?dn:typeof e=="object"?j(e)?nL(e[0],e[1]):eL(e):sL(e)}r(ez,"baseIteratee");var Cn=ez;function tz(e,t,o,n){for(var a=-1,s=e==null?0:e.length;++a<s;){var l=e[a];t(n,l,o(l),e)}return n}r(tz,"arrayAggregator");var lL=tz;function rz(e){return function(t,o,n){for(var a=-1,s=Object(t),l=n(t),c=l.length;c--;){var p=l[e?c:++a];if(o(s[p],p,s)===!1)break}return t}}r(rz,"createBaseFor");var cL=rz;var oz=cL(),pL=oz;function nz(e,t){return e&&pL(e,t,xt)}r(nz,"baseForOwn");var uL=nz;function az(e,t){return function(o,n){if(o==null)return o;if(!Gr(o))return e(o,n);for(var a=o.length,s=t?a:-1,l=Object(o);(t?s--:++s<a)&&n(l[s],s,l)!==!1;);return o}}r(az,"createBaseEach");var fL=az;var iz=fL(uL),Nn=iz;function sz(e,t,o,n){return Nn(e,function(a,s,l){t(n,a,o(a),l)}),n}r(sz,"baseAggregator");var mL=sz;function lz(e,t){return function(o,n){var a=j(o)?lL:mL,s=t?t():{};return a(o,e,Cn(n,2),s)}}r(lz,"createAggregator");var dL=lz;function cz(e){return Ze(e)&&Gr(e)}r(cz,"isArrayLikeObject");var hL=cz;function pz(e,t,o){for(var n=-1,a=e==null?0:e.length;++n<a;)if(o(t,e[n]))return!0;return!1}r(pz,"arrayIncludesWith");var Ml=pz;var uz=200;function fz(e,t,o,n){var a=-1,s=dl,l=!0,c=e.length,p=[],f=t.length;if(!c)return p;o&&(t=pl(t,El(o))),n?(s=Ml,l=!1):t.length>=uz&&(s=kn,l=!1,t=new Ln(t));e:for(;++a<c;){var d=e[a],h=o==null?d:o(d);if(d=n||d!==0?d:0,l&&h===h){for(var T=f;T--;)if(t[T]===h)continue e;p.push(d)}else s(t,h,n)||p.push(d)}return p}r(fz,"baseDifference");var TL=fz;function mz(e,t){for(var o=-1,n=e==null?0:e.length;++o<n;)if(!t(e[o],o,e))return!1;return!0}r(mz,"arrayEvery");var EL=mz;function dz(e,t){var o=!0;return Nn(e,function(n,a,s){return o=!!t(n,a,s),o}),o}r(dz,"baseEvery");var SL=dz;function hz(e,t,o){var n=j(e)?EL:SL;return o&&hl(e,t,o)&&(t=void 0),n(e,Cn(t,3))}r(hz,"every");var Ph=hz;function Tz(e){return e&&e.length?e[0]:void 0}r(Tz,"head");var Fl=Tz;var Ez=dL(function(e,t,o){e[o?0:1].push(t)},function(){return[[],[]]}),Bh=Ez;function Sz(e,t){var o;return Nn(e,function(n,a,s){return o=t(n,a,s),!o}),!!o}r(Sz,"baseSome");var gL=Sz;function gz(e,t,o){var n=j(e)?Ol:gL;return o&&hl(e,t,o)&&(t=void 0),n(e,Cn(t,3))}r(gz,"some");var ho=gz;var xz=1/0,Az=Kr&&1/On(new Kr([,-0]))[1]==xz?function(e){return new Kr(e)}:MU,xL=Az;var Uz=200;function Rz(e,t,o){var n=-1,a=dl,s=e.length,l=!0,c=[],p=c;if(o)l=!1,a=Ml;else if(s>=Uz){var f=t?null:xL(e);if(f)return On(f);l=!1,a=kn,p=new Ln}else p=t?[]:c;e:for(;++n<s;){var d=e[n],h=t?t(d):d;if(d=o||d!==0?d:0,l&&h===h){for(var T=p.length;T--;)if(p[T]===h)continue e;t&&p.push(h),c.push(d)}else a(p,h,o)||(p!==c&&p.push(h),c.push(d))}return c}r(Rz,"baseUniq");var AL=Rz;function Lz(e){return e&&e.length?AL(e):[]}r(Lz,"uniq");var UL=Lz;var kz=jU(function(e,t){return hL(e)?TL(e,t):[]}),Gh=kz;var Dh=new Map;function k(e){let{pattern:t}=e,o=t.toString();if(Dh.has(o))return Dh.get(o);let n=rr(e);return Dh.set(o,n),n}r(k,"createUniqToken");function u(e,t){return k({name:`${e} token`,pattern:new RegExp(e),label:e,...t})}r(u,"createTokenByName");var Vh=k({name:"DisabledStatementToken",pattern:/![a-zA-Z][\w.]*/}),RL=k({name:"IntCast",pattern:/!int/,label:"!int"}),LL=k({name:"BoolCast",pattern:/!bool/,label:"!bool"}),kL=k({name:"ArrayCast",pattern:/!array/,label:"!array"}),OL=k({name:"TextCast",pattern:/!text/,label:"!text"}),CL=k({name:"ExpressionCast",pattern:/!expr/,label:"!expr"}),NL=k({name:"DecimalCast",pattern:/!decimal/,label:"!decimal"}),yL=k({name:"ObjectCast",pattern:/!object/,label:"!object"}),bL=k({name:"TimestampCast",pattern:/!timestamp/,label:"!timestamp"}),Ie=k({name:"ExclamationToken",pattern:/!/}),Il=[RL,kL,OL,CL,NL,yL,bL,LL,Ie];function _L(e){switch(e){case RL.name:case kL.name:case OL.name:case CL.name:case NL.name:case yL.name:case bL.name:case LL.name:return"type";case Vh.name:return"comment";case Ie.name:return"operator";default:return null}}r(_L,"mapTokenToType");var i=k({name:"Identifier",pattern:/[a-zA-Z_]\w*/});var vl=u("action",{longer_alt:i,categories:[i]}),Yr=u("call",{longer_alt:i,categories:[i]}),ML=[vl,Yr];function FL(e){switch(e){case vl.name:return"keyword";case Yr.name:return"function";default:return null}}r(FL,"mapTokenToType");var yn=u("addon",{longer_alt:i,categories:[i]}),wl=u("call",{longer_alt:i,categories:[i]}),IL=[yn,wl];function vL(e){switch(e){case yn.name:return"keyword";case wl.name:return"function";default:return null}}r(vL,"mapTokenToType");var Pl=u("agent",{longer_alt:i,categories:[i]}),Bl=u("llm",{longer_alt:i,categories:[i]}),Gl=u("tools",{longer_alt:i,categories:[i]}),wL=[Pl,Bl,Gl];function PL(e){switch(e){case Pl.name:case Bl.name:case Gl.name:return"keyword";default:return null}}r(PL,"mapTokenToType");var Dl=u("actions",{longer_alt:i,categories:[i]}),Vl=u("active",{longer_alt:i,categories:[i]}),ql=u("agent_trigger",{longer_alt:i,categories:[i]}),BL=[Dl,Vl,ql];function GL(e){switch(e){case Dl.name:case ql.name:return"keyword";case Vl.name:return"variable";default:return null}}r(GL,"mapTokenToType");var jl=u("ai",{longer_alt:i,categories:[i]}),Wl=u("agent",{longer_alt:i,categories:[i]}),bn=u("run",{longer_alt:i,categories:[i]}),Kl=u("external",{longer_alt:i,categories:[i]}),Yl=u("mcp",{longer_alt:i,categories:[i]}),Hl=u("tool",{longer_alt:i,categories:[i]}),zl=u("list",{longer_alt:i,categories:[i]}),Jl=u("server_details",{longer_alt:i,categories:[i]}),DL=[jl,Wl,bn,Kl,Yl,Hl,zl,Jl];function VL(e){switch(e){case jl.name:case Wl.name:case bn.name:case Kl.name:case Yl.name:case Hl.name:case zl.name:case Jl.name:return"keyword";default:return null}}r(VL,"mapTokenToType");var Xl=u("api",{longer_alt:i,categories:[i]}),Ql=u("webflow",{longer_alt:i,categories:[i]}),_n=u("request",{longer_alt:i,categories:[i]}),Zl=u("call",{longer_alt:i,categories:[i]}),$l=u("realtime_event",{longer_alt:i,categories:[i]}),ec=u("stream",{longer_alt:i,categories:[i]}),tc=u("lambda",{longer_alt:i,categories:[i]}),qL=u("microservice",{longer_alt:i,categories:[i]}),jL=[Xl,Ql,_n,Zl,$l,ec,tc,qL];function WL(e){switch(e){case Xl.name:case Ql.name:case _n.name:case tc.name:case $l.name:case ec.name:case qL.name:case Zl.name:return"function";default:return null}}r(WL,"mapTokenToType");var Mn=u("active",{longer_alt:i,categories:[i]}),Fn=u("api_group",{longer_alt:i,categories:[i]}),rc=u("canonical",{longer_alt:i,categories:[i]}),oc=u("cors",{longer_alt:i,categories:[i]}),nc=u("swagger",{longer_alt:i,categories:[i]}),KL=[Mn,Fn,rc,oc,nc];function YL(e){switch(e){case Fn.name:return"keyword";case Mn.name:case rc.name:case oc.name:case nc.name:return"variable";default:return null}}r(YL,"mapTokenToType");var ac=u("array",{longer_alt:i,categories:[i]}),ic=u("every",{longer_alt:i,categories:[i]}),sc=u("filter_count",{longer_alt:i,categories:[i]}),lc=u("filter",{longer_alt:i,categories:[i]}),cc=u("find",{longer_alt:i,categories:[i]}),pc=u("find_index",{longer_alt:i,categories:[i]}),uc=u("has",{longer_alt:i,categories:[i]}),fc=u("merge",{longer_alt:i,categories:[i]}),mc=u("pop",{longer_alt:i,categories:[i]}),dc=u("push",{longer_alt:i,categories:[i]}),hc=u("shift",{longer_alt:i,categories:[i]}),Tc=u("unshift",{longer_alt:i,categories:[i]}),Ec=u("map",{longer_alt:i,categories:[i]}),Sc=u("partition",{longer_alt:i,categories:[i]}),gc=u("group_by",{longer_alt:i,categories:[i]}),xc=u("difference",{longer_alt:i,categories:[i]}),Ac=u("intersection",{longer_alt:i,categories:[i]}),Uc=u("union",{longer_alt:i,categories:[i]}),HL=[ac,ic,sc,lc,pc,cc,uc,fc,mc,dc,hc,Tc,Ec,Sc,gc,xc,Ac,Uc];function zL(e){switch(e){case ac.name:case ic.name:case sc.name:case lc.name:case cc.name:case pc.name:case uc.name:case fc.name:case mc.name:case dc.name:case hc.name:case Tc.name:case Ec.name:case Sc.name:case gc.name:case xc.name:case Ac.name:case Uc.name:return"function";default:return null}}r(zL,"mapTokenToType");var Rc=u("branch",{longer_alt:i,categories:[i]}),JL=u("color",{longer_alt:i,categories:[i]}),XL=[Rc,JL];function QL(e){switch(e){case Rc.name:return"keyword";case JL.name:return"variable";default:return null}}r(QL,"mapTokenToType");var Lc=u("cloud",{longer_alt:i,categories:[i]}),kc=u("algolia",{longer_alt:i,categories:[i]}),Oc=u("google",{longer_alt:i,categories:[i]}),Cc=u("aws",{longer_alt:i,categories:[i]}),Nc=u("elasticsearch",{longer_alt:i,categories:[i]}),yc=u("azure",{longer_alt:i,categories:[i]}),bc=u("storage",{longer_alt:i,categories:[i]}),_c=u("read_file",{longer_alt:i,categories:[i]}),Mc=u("delete_file",{longer_alt:i,categories:[i]}),Fc=u("get_file_info",{longer_alt:i,categories:[i]}),Ic=u("list_directory",{longer_alt:i,categories:[i]}),vc=u("s3",{longer_alt:i,categories:[i]}),wc=u("sign_url",{longer_alt:i,categories:[i]}),Pc=u("upload_file",{longer_alt:i,categories:[i]}),Bc=u("opensearch",{longer_alt:i,categories:[i]}),Gc=u("document",{longer_alt:i,categories:[i]}),Dc=u("query",{longer_alt:i,categories:[i]}),In=u("request",{longer_alt:i,categories:[i]}),ZL=[Lc,kc,Oc,Cc,Nc,yc,bc,_c,Mc,Fc,Ic,vc,wc,Pc,Bc,Gc,Dc,In];function $L(e){switch(e){case Lc.name:case kc.name:case Oc.name:case Cc.name:case Nc.name:case yc.name:case bc.name:case vc.name:case Bc.name:case _c.name:case Mc.name:case Fc.name:case Ic.name:case wc.name:case Pc.name:case Gc.name:case Dc.name:case In.name:return"function";default:return null}}r($L,"mapTokenToType");var Vc=u("int",{longer_alt:i,categories:[i]}),qc=u("timestamp",{longer_alt:i,categories:[i]}),vn=u("text",{longer_alt:i,categories:[i]}),jc=u("uuid",{longer_alt:i,categories:[i]}),Wc=u("vector",{longer_alt:i,categories:[i]}),Kc=u("enum",{longer_alt:i,categories:[i]}),Yc=u("date",{longer_alt:i,categories:[i]}),Hc=u("bool",{longer_alt:i,categories:[i]}),zc=u("decimal",{longer_alt:i,categories:[i]}),Jc=u("email",{longer_alt:i,categories:[i]}),Xc=u("password",{longer_alt:i,categories:[i]}),Qc=u("json",{longer_alt:i,categories:[i]}),Zc=u("file",{longer_alt:i,categories:[i]}),$c=u("object",{longer_alt:i,categories:[i]}),ep=u("image",{longer_alt:i,categories:[i]}),tp=u("video",{longer_alt:i,categories:[i]}),rp=u("audio",{longer_alt:i,categories:[i]}),op=u("attachment",{longer_alt:i,categories:[i]}),np=u("geo_point",{longer_alt:i,categories:[i]}),ap=u("geo_multipoint",{longer_alt:i,categories:[i]}),ip=u("geo_linestring",{longer_alt:i,categories:[i]}),sp=u("geo_multilinestring",{longer_alt:i,categories:[i]}),lp=u("geo_polygon",{longer_alt:i,categories:[i]}),cp=u("geo_multipolygon",{longer_alt:i,categories:[i]}),pp=u("dblink",{longer_alt:i,categories:[i]}),up=u("agent",{longer_alt:i,categories:[i]}),fp=u("mcp_server",{longer_alt:i,categories:[i]}),mp=u("channel",{longer_alt:i,categories:[i]}),dp=u("canonical",{longer_alt:i,categories:[i]}),ek=[up,dp,fp,mp,pp,Vc,qc,vn,jc,Wc,Kc,Yc,Hc,zc,Jc,Xc,Qc,Zc,$c,ep,tp,rp,op,np,ap,ip,sp,lp,cp];function tk(e){switch(e){case up.name:case dp.name:case fp.name:case mp.name:case pp.name:case Vc.name:case qc.name:case vn.name:case jc.name:case Wc.name:case Kc.name:case Yc.name:case Hc.name:case zc.name:case Jc.name:case Xc.name:case Qc.name:case Zc.name:case $c.name:case ep.name:case tp.name:case rp.name:case op.name:case np.name:case ap.name:case ip.name:case sp.name:case lp.name:case cp.name:return"type";default:return null}}r(tk,"mapTokenToType");var ie=k({name:"CommentToken",label:"// comment",pattern:{exec:r((e,t)=>{if(!e.slice(t).startsWith("//"))return null;if(t===0)return e.slice(t).match(/.*(?=\n|$)/);let o=t-1;for(;o>=0;){let n=e[o];if(n===`
109
- `||n==="\r")return e.slice(t).match(/.*(?=\n|$)/);if(n!==" "&&n!==" ")return null;o--}return e.slice(t).match(/.*(?=\n|$)/)},"exec")},line_breaks:!1}),rk=[ie];function ok(e){switch(e){case ie.name:return"comment";default:return}}r(ok,"mapTokenToType");var hp=k({name:"ExpressionLiteral",label:"`...`",pattern:/`([^`\\]|\\.)*`/}),E=k({name:"StringLiteral",label:'"..."',pattern:/"([^"\\]|\\.)*"/}),qt=k({name:"SingleQuotedStringLiteral",pattern:/'([^'\\]|\\.)*'/,label:"''"}),we=k({name:"FloatLiteral",label:"floating point number",pattern:/-?\d+\.\d+/}),te=k({name:"IntegerLiteral",label:"integer",pattern:/-?\d+/,longer_alt:we}),v_e=k({name:"DoubleDollar",label:"$$",pattern:/\$\$/}),Tp=k({name:"TimestampLiteral",pattern:/\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])\s([01]\d|2[0-3]):([0-5]\d):([0-5]\d)[+-]\d{4}/}),nk=[Tp,hp,E,qt,we,te];function ak(e){switch(e){case hp.name:return"macro";case E.name:case Tp.name:return"doubleString";case qt.name:return"singleString";case te.name:case we.name:return"number";default:return null}}r(ak,"mapTokenToType");var Ep=u("conditional",{longer_alt:i,categories:[i]}),wn=u("if",{longer_alt:i,categories:[i]}),Sp=u("else",{longer_alt:i,categories:[i]}),gp=u("elseif",{longer_alt:i,categories:[i]}),xp=u("for",{longer_alt:i,categories:[i]}),Ap=u("foreach",{longer_alt:i,categories:[i]}),Up=u("remove",{longer_alt:i,categories:[i]}),Rp=u("await",{longer_alt:i,categories:[i]}),Ct=u("each",{longer_alt:i,categories:[i]}),Lp=u("try_catch",{longer_alt:i,categories:[i]}),oi=u("try",{longer_alt:i,categories:[i]}),ni=u("catch",{longer_alt:i,categories:[i]}),kp=u("finally",{longer_alt:i,categories:[i]}),At=u("as",{longer_alt:i,categories:[i]}),Op=u("return",{longer_alt:i,categories:[i]}),Cp=u("switch",{longer_alt:i,categories:[i]}),Np=u("case",{longer_alt:i,categories:[i]}),yp=u("default",{longer_alt:i,categories:[i]}),bp=u("while",{longer_alt:i,categories:[i]}),_p=u("group",{longer_alt:i,categories:[i]}),Mp=u("throw",{longer_alt:i,categories:[i]}),Pn=u("break",{longer_alt:i,categories:[i]}),Fp=u("continue",{longer_alt:i,categories:[i]}),ai=k({name:"GreaterThan",pattern:/>/,label:">"}),ii=k({name:"GreaterThanOrEqual",pattern:/>=/,label:">="}),si=k({name:"SmallerThan",pattern:/</,label:"<"}),li=k({name:"SmallerThanOrEq",pattern:/<=/,label:"<="}),Ip=k({name:"Minus",pattern:/-/,label:"-",longer_alt:te}),vp=k({name:"Plus",pattern:/\+/,label:"+"}),wp=k({name:"Multiply",pattern:/\*/,label:"*"}),Pp=k({name:"Divide",pattern:/\//,label:"/"}),Bp=k({name:"Modulus",pattern:/%/,label:"%"}),ci=k({name:"IsEqual",label:"==",pattern:/==/}),Gp=k({name:"IsStrictEqual",label:"===",pattern:/===/}),pi=k({name:"IsNotEqual",label:"!=",pattern:/!=/}),Dp=k({name:"IsStrictNotEqual",label:"!==",pattern:/!==/}),g=k({name:"EqualToken",label:"=",pattern:/=/}),x=k({name:"LCurly",pattern:/{/,label:"{"}),A=k({name:"RCurly",pattern:/}/,label:"}"}),H=k({name:"LSquare",pattern:/\[/,label:"["}),z=k({name:"RSquare",pattern:/]/,label:"]"}),P=k({name:"LParent",pattern:/\(/,label:"("}),B=k({name:"RParent",pattern:/\)/,label:")"}),ft=k({name:"Question",pattern:/\?/,label:"?"}),xe=k({name:"ColonToken",pattern:/:/,label:":"}),ve=k({name:"PipeToken",pattern:/\|/,label:"|"}),le=k({name:"CommaToken",pattern:/,/,label:","}),Vp=k({name:"AndTestToken",pattern:/&&/,label:"&&"}),qp=k({name:"NullishCoalescingToken",pattern:/\?\?/,label:"??"}),jp=k({name:"OrTestToken",pattern:/\|\|/,label:"||"}),ui=k({name:"JsonBetweenToken",pattern:/between/,label:"between",longer_alt:i,categories:[i]}),fi=k({name:"JsonContainsToken",pattern:/@>/,label:"@>"}),mi=k({name:"JsonContainsStringToken",pattern:/contains/,label:"contains",longer_alt:i,categories:[i]}),qh=k({name:"JsonEqualToken",pattern:/=/,label:"="}),di=k({name:"JsonILikeToken",pattern:/ilike/,label:"ilike",longer_alt:i,categories:[i]}),hi=k({name:"JsonIncludesToken",pattern:/includes/,label:"includes",longer_alt:i,categories:[i]}),Ti=k({name:"JsonLikeToken",pattern:/like/,label:"like",longer_alt:i,categories:[i]}),Ei=k({name:"JsonNotBetweenToken",pattern:/not between/,label:"not between"}),Si=k({name:"JsonNotContainsToken",pattern:/not contains/,label:"not contains"}),gi=k({name:"JsonNotILikeToken",pattern:/not ilike/,label:"not ilike"}),xi=k({name:"JsonNotInToken",pattern:/not in/,label:"not in"}),Ai=k({name:"JsonNotIncludesToken",pattern:/not includes/,label:"not includes"}),Ui=k({name:"JsonNotLikeToken",pattern:/not like/,label:"not like"}),Ri=k({name:"JsonNotOverlapsToken",pattern:/not overlaps/,label:"not overlaps"}),Li=k({name:"JsonNotRegexToken",pattern:/!~/,label:"!~"}),ki=k({name:"JsonOverlapsToken",pattern:/overlaps/,label:"overlaps",longer_alt:i,categories:[i]}),Wp=k({name:"JsonRegexToken",pattern:/~/,label:"~"}),Kp=k({name:"JsonSearchToken",pattern:/search/,label:"search",longer_alt:i,categories:[i]}),ik=[Ei,Si,gi,Ai,xi,ui,fi,mi,di,hi,Ti,Ui,Ri,Li,ki,Wp,Kp,qp,Vp,jp,Ep,wn,gp,Sp,Ap,xp,Ct,Up,Rp,At,Op,Cp,Np,yp,bp,_p,Mp,Pn,Fp,ii,ai,li,si,Ip,vp,wp,Pp,Bp,Gp,ci,Dp,pi,g,x,A,H,z,P,B,ft,xe,ve,le,Lp,oi,ni,kp,qh];function sk(e){switch(e){case wn.name:case Sp.name:case gp.name:case Ct.name:case At.name:case oi.name:case ni.name:case kp.name:return"keyword";case Ep.name:case Rp.name:case Op.name:case _p.name:case Mp.name:case Pn.name:case Fp.name:case xp.name:case Cp.name:case Up.name:case Ap.name:case bp.name:case Np.name:case yp.name:case Lp.name:return"function";case x.name:return"operator.openingCurly";case A.name:return"operator.closingCurly";case H.name:return"operator.openingSquare";case z.name:return"operator.closingSquare";case P.name:return"operator.openingParenthesis";case B.name:return"operator.closingParenthesis";case ai.name:case ii.name:case si.name:case li.name:case Ip.name:case vp.name:case Vp.name:case jp.name:case wp.name:case Pp.name:case Bp.name:case g.name:case ci.name:case pi.name:case qp.name:case Ei.name:case Si.name:case gi.name:case Ai.name:case xi.name:case ui.name:case fi.name:case mi.name:case di.name:case hi.name:case Ti.name:case Ui.name:case Ri.name:case Li.name:case ki.name:case Wp.name:return"operator";case Kp.name:return"variable";case ft.name:case xe.name:case ve.name:case le.name:return"punctuation";default:return null}}r(sk,"mapTokenToType");var Bn=u("db",{longer_alt:i,categories:[i]}),Yp=u("query",{longer_alt:i,categories:[i]}),Hp=u("get",{longer_alt:i,categories:[i]}),Gn=u("add",{longer_alt:i,categories:[i]}),zp=u("add_or_edit",{longer_alt:i,categories:[i]}),Jp=u("del",{longer_alt:i,categories:[i]}),Xp=u("delete",{longer_alt:i,categories:[i]}),Qp=u("edit",{longer_alt:i,categories:[i]}),Zp=u("update",{longer_alt:i,categories:[i]}),$p=u("has",{longer_alt:i,categories:[i]}),Dn=u("patch",{longer_alt:i,categories:[i]}),eu=u("schema",{longer_alt:i,categories:[i]}),tu=u("transaction",{longer_alt:i,categories:[i]}),ru=u("truncate",{longer_alt:i,categories:[i]}),Vn=u("direct_query",{longer_alt:i,categories:[i]}),ou=u("set_datasource",{longer_alt:i,categories:[i]}),nu=u("bulk",{longer_alt:i,categories:[i]}),au=u("external",{longer_alt:i,categories:[i]}),iu=u("mssql",{longer_alt:i,categories:[i]}),su=u("mysql",{longer_alt:i,categories:[i]}),lu=u("postgres",{longer_alt:i,categories:[i]}),cu=u("oracle",{longer_alt:i,categories:[i]}),lk=[Bn,Yp,Hp,zp,Gn,Xp,Jp,Qp,Zp,$p,Dn,eu,tu,ru,Vn,ou,nu,au,iu,su,lu,cu];function ck(e){switch(e){case eu.name:return"keyword";case Bn.name:case nu.name:case au.name:case iu.name:case su.name:case lu.name:case cu.name:case Yp.name:case Hp.name:case Gn.name:case zp.name:case Xp.name:case Jp.name:case Qp.name:case Zp.name:case $p.name:case Dn.name:case tu.name:case ru.name:case Vn.name:case ou.name:return"function";default:return null}}r(ck,"mapTokenToType");var pu=u("debug",{longer_alt:i,categories:[i]}),uu=u("stop",{longer_alt:i,categories:[i]}),fu=u("log",{longer_alt:i,categories:[i]}),pk=[pu,uu,fu];function uk(e){switch(e){case pu.name:case uu.name:case fu.name:return"function";default:return null}}r(uk,"mapTokenToType");var qn=u("expect",{longer_alt:i,categories:[i]}),jn=u("to_be_true",{longer_alt:i,categories:[i]}),Wn=u("to_be_false",{longer_alt:i,categories:[i]}),Kn=u("to_be_in_the_past",{longer_alt:i,categories:[i]}),Yn=u("to_be_in_the_future",{longer_alt:i,categories:[i]}),Hn=u("to_be_defined",{longer_alt:i,categories:[i]}),zn=u("to_not_be_defined",{longer_alt:i,categories:[i]}),Jn=u("to_be_null",{longer_alt:i,categories:[i]}),Xn=u("to_not_be_null",{longer_alt:i,categories:[i]}),Qn=u("to_be_empty",{longer_alt:i,categories:[i]}),Zn=u("to_start_with",{longer_alt:i,categories:[i]}),$n=u("to_end_with",{longer_alt:i,categories:[i]}),ea=u("to_be_greater_than",{longer_alt:i,categories:[i]}),ta=u("to_be_less_than",{longer_alt:i,categories:[i]}),ra=u("to_match",{longer_alt:i,categories:[i]}),oa=u("to_equal",{longer_alt:i,categories:[i]}),na=u("to_not_equal",{longer_alt:i,categories:[i]}),aa=u("to_contain",{longer_alt:i,categories:[i]}),ia=u("to_be_within",{longer_alt:i,categories:[i]}),sa=u("to_throw",{longer_alt:i,categories:[i]}),fk=[qn,jn,Wn,Kn,Yn,Hn,zn,Jn,Xn,Qn,Zn,$n,ea,ta,ra,oa,na,aa,ia,sa];function mk(e){switch(e){case qn.name:case jn.name:case Wn.name:case Kn.name:case Yn.name:case Hn.name:case zn.name:case Jn.name:case Xn.name:case Qn.name:case Zn.name:case $n.name:case ea.name:case ta.name:case ra.name:case oa.name:case na.name:case aa.name:case ia.name:case sa.name:return"function";default:return null}}r(mk,"mapTokenToType");var Hr=u("function",{longer_alt:i,categories:[i]}),mu=u("run",{longer_alt:i,categories:[i]}),du=u("call",{longer_alt:i,categories:[i]}),dk=[Hr,mu,du];function hk(e){switch(e){case Hr.name:return"keyword";case mu.name:case du.name:return"function";default:return null}}r(hk,"mapTokenToType");var hu=u("math",{longer_alt:i,categories:[i]}),Tu=u("add",{longer_alt:i,categories:[i]}),Eu=u("div",{longer_alt:i,categories:[i]}),Su=u("mod",{longer_alt:i,categories:[i]}),gu=u("mul",{longer_alt:i,categories:[i]}),xu=u("sub",{longer_alt:i,categories:[i]}),Au=u("bitwise",{longer_alt:i,categories:[i]}),Uu=u("and",{longer_alt:i,categories:[i]}),Ru=u("or",{longer_alt:i,categories:[i]}),Lu=u("xor",{longer_alt:i,categories:[i]}),Tk=[hu,Tu,Eu,Su,gu,xu,Au,Uu,Ru,Lu];function Ek(e){switch(e){case hu.name:case Tu.name:case Eu.name:case Su.name:case gu.name:case xu.name:case Au.name:case Uu.name:case Ru.name:case Lu.name:return"function";default:return null}}r(Ek,"mapTokenToType");var ku=u("instructions",{longer_alt:i,categories:[i]}),zr=u("tool",{longer_alt:i,categories:[i]}),Sk=u("call",{longer_alt:i,categories:[i]}),gk=[ku,zr,Sk];function xk(e){switch(e){case zr.name:return"keyword";case ku.name:return"variable";case Sk.name:return"function";default:return null}}r(xk,"mapTokenToType");var Ou=u("active",{longer_alt:i,categories:[i]}),Cu=u("instructions",{longer_alt:i,categories:[i]}),Nu=u("mcp_server",{longer_alt:i,categories:[i]}),yu=u("tools",{longer_alt:zr,categories:[i]}),Ak=[Ou,Cu,Nu,yu];function Uk(e){switch(e){case Ou.name:case Nu.name:case yu.name:return"keyword";case Cu.name:return"variable";default:return null}}r(Uk,"mapTokenToType");var bu=u("actions",{longer_alt:i,categories:[i]}),_u=u("active",{longer_alt:i,categories:[i]}),Mu=u("mcp_server_trigger",{longer_alt:i,categories:[i]}),Rk=[bu,_u,Mu];function Lk(e){switch(e){case bu.name:case Mu.name:return"keyword";case _u.name:return"variable";default:return null}}r(Lk,"mapTokenToType");var Fu=u("exception_policy",{longer_alt:i,categories:[i]}),la=u("middleware",{longer_alt:i,categories:[i]}),Iu=u("response_strategy",{longer_alt:i,categories:[i]}),kk=[Fu,la,Iu];function Ok(e){switch(e){case la.name:return"keyword";case Fu.name:case Iu.name:return"variable";default:return null}}r(Ok,"mapTokenToType");var Ve=rr({name:'"""..."""',pattern:/("""\r?\n(?:[\s\S]*?\r?\n)?[ ]*""")|('''\r?\n(?:[\s\S]*?\r?\n)?[ ]*''')/}),vu=rr({name:"MultiLineExpression",pattern:/```\r?\n(?:[\s\S]*?\r?\n)?[ ]*```/}),Ck=[Ve,vu];function Nk(e){switch(e){case Ve.name:return"tripleString";case vu.name:return"tripleMacro";default:return null}}r(Nk,"mapTokenToType");var wu=u("object",{longer_alt:i,categories:[i]}),Pu=u("entries",{longer_alt:i,categories:[i]}),Bu=u("keys",{longer_alt:i,categories:[i]}),Gu=u("values",{longer_alt:i,categories:[i]}),yk=[wu,Pu,Bu,Gu];function bk(e){switch(e){case wu.name:case Pu.name:case Bu.name:case Gu.name:return"function";default:return null}}r(bk,"mapTokenToType");var Du=u("query",{longer_alt:i,categories:[i]}),ca=u("verb",{longer_alt:i,categories:[i]}),pa=u("GET",{longer_alt:i,categories:[i]}),ua=u("PATCH",{longer_alt:i,categories:[i]}),fa=u("POST",{longer_alt:i,categories:[i]}),ma=u("PUT",{longer_alt:i,categories:[i]}),da=u("DELETE",{categories:[i],longer_alt:i}),Vu=u("response_type",{longer_alt:i,categories:[i]}),_k=u("dblink",{longer_alt:i,categories:[i]}),qu=u("output",{longer_alt:i,categories:[i]}),Mk=u("addon",{longer_alt:i,categories:[i]}),Fk=[Vu,Du,ca,pa,ua,fa,ma,da,_k,qu,Mk];function Ik(e){switch(e){case Du.name:case ca.name:case Vu.name:return"keyword";case pa.name:case ua.name:case fa.name:case ma.name:case da.name:return"enumMember";case _k.name:case qu.name:case Mk.name:return"property";default:return null}}r(Ik,"mapTokenToType");var ju=u("actions",{longer_alt:i,categories:[i]}),Wu=u("active",{longer_alt:i,categories:[i]}),Ku=u("realtime_trigger",{longer_alt:i,categories:[i]}),Yu=u("realtime_channel",{longer_alt:i,categories:[i]}),vk=[ju,Wu,Ku,Yu];function wk(e){switch(e){case ju.name:case Ku.name:case Yu.name:return"keyword";case Wu.name:return"variable";default:return null}}r(wk,"mapTokenToType");var Hu=u("redis",{longer_alt:i,categories:[i]}),zu=u("count",{longer_alt:i,categories:[i]}),Ju=u("decr",{longer_alt:i,categories:[i]}),Xu=u("del",{longer_alt:i,categories:[i]}),Qu=u("get",{longer_alt:i,categories:[i]}),Zu=u("has",{longer_alt:i,categories:[i]}),$u=u("incr",{longer_alt:i,categories:[i]}),ef=u("keys",{longer_alt:i,categories:[i]}),tf=u("pop",{longer_alt:i,categories:[i]}),rf=u("push",{longer_alt:i,categories:[i]}),of=u("range",{longer_alt:i,categories:[i]}),nf=u("ratelimit",{longer_alt:i,categories:[i]}),af=u("remove",{longer_alt:i,categories:[i]}),sf=u("set",{longer_alt:i,categories:[i]}),lf=u("shift",{longer_alt:i,categories:[i]}),cf=u("unshift",{longer_alt:i,categories:[i]}),Pk=[Hu,zu,Ju,Xu,Qu,Zu,$u,ef,tf,rf,of,nf,af,sf,lf,cf];function Bk(e){switch(e){case Hu.name:case zu.name:case Ju.name:case Xu.name:case Qu.name:case Zu.name:case $u.name:case ef.name:case tf.name:case rf.name:case of.name:case nf.name:case af.name:case sf.name:case lf.name:case cf.name:return"function";default:return null}}r(Bk,"mapTokenToType");var pf=u("run",{longer_alt:i,categories:[i]}),uf=u("job",{longer_alt:i,categories:[i]}),ff=u("service",{longer_alt:i,categories:[i]}),Gk=[pf,uf,ff];function Dk(e){switch(e){case pf.name:case uf.name:case ff.name:return"keyword";default:return null}}r(Dk,"mapTokenToType");var mf=u("security",{longer_alt:i,categories:[i]}),df=u("check_password",{longer_alt:i,categories:[i]}),hf=u("create_password",{longer_alt:i,categories:[i]}),Tf=u("create_uuid",{longer_alt:i,categories:[i]}),Ef=u("create_auth_token",{longer_alt:i,categories:[i]}),Sf=u("create_curve_key",{longer_alt:i,categories:[i]}),gf=u("create_rsa_key",{longer_alt:i,categories:[i]}),xf=u("create_secret_key",{longer_alt:i,categories:[i]}),Af=u("decrypt",{llt:i,categories:[i]}),Uf=u("encrypt",{llt:i,categories:[i]}),Vk=u("generate_pass",{longer_alt:i,categories:[i]}),qk=u("generate_uuid",{longer_alt:i,categories:[i]}),Rf=u("jwe_decode",{longer_alt:i,categories:[i]}),Lf=u("jwe_encode",{longer_alt:i,categories:[i]}),kf=u("jws_decode",{longer_alt:i,categories:[i]}),Of=u("jws_encode",{longer_alt:i,categories:[i]}),Cf=u("random_bytes",{longer_alt:i,categories:[i]}),Nf=u("random_number",{longer_alt:i,categories:[i]}),jk=[df,hf,Tf,Ef,Sf,gf,xf,Af,Uf,Vk,qk,Rf,Lf,kf,Of,Cf,Nf,mf];function Wk(e){switch(e){case mf.name:case df.name:case hf.name:case Tf.name:case Ef.name:case Sf.name:case gf.name:case xf.name:case Af.name:case Uf.name:case Vk.name:case qk.name:case Rf.name:case Lf.name:case kf.name:case Of.name:case Cf.name:case Nf.name:return"function";default:return null}}r(Wk,"mapTokenToType");var yf=u("storage",{longer_alt:i,categories:[i]}),bf=u("create_image",{longer_alt:i,categories:[i]}),_f=u("create_attachment",{longer_alt:i,categories:[i]}),Mf=u("read_file_resource",{longer_alt:i,categories:[i]}),Ff=u("create_file_resource",{longer_alt:i,categories:[i]}),Kk=u("read_file",{longer_alt:i,categories:[i]}),If=u("create_audio",{longer_alt:i,categories:[i]}),vf=u("create_video",{longer_alt:i,categories:[i]}),wf=u("delete_file",{longer_alt:i,categories:[i]}),Pf=u("sign_private_url",{longer_alt:i,categories:[i]}),Yk=[yf,bf,_f,Mf,Ff,Kk,If,vf,wf,Pf];function Hk(e){switch(e){case yf.name:case bf.name:case _f.name:case Mf.name:case Ff.name:case Kk.name:case wf.name:case Pf.name:case If.name:case vf.name:return"function";default:return null}}r(Hk,"mapTokenToType");var Bf=u("stream",{longer_alt:i,categories:[i]}),Gf=u("from_csv",{longer_alt:i,categories:[i]}),Df=u("from_jsonl",{longer_alt:i,categories:[i]}),Vf=u("from_request",{longer_alt:i,categories:[i]}),zk=[Bf,Gf,Df,Vf];function Jk(e){switch(e){case Bf.name:case Gf.name:case Df.name:case Vf.name:return"function";default:return null}}r(Jk,"mapTokenToType");var Jr=u("table",{longer_alt:i,categories:[i]}),qf=u("autocomplete",{longer_alt:i,categories:[i]}),jf=u("items",{longer_alt:i,categories:[i]}),Xk=[Jr,qf,jf];function Qk(e){switch(e){case Jr.name:return"keyword";case qf.name:case jf.name:return"identifier";default:return null}}r(Qk,"mapTokenToType");var Wf=u("actions",{longer_alt:i,categories:[i]}),Kf=u("active",{longer_alt:i,categories:[i]}),Yf=u("datasources",{longer_alt:i,categories:[i]}),Hf=u("table_trigger",{longer_alt:i,categories:[i]}),Zk=[Wf,Kf,Yf,Hf];function $k(e){switch(e){case Wf.name:case Hf.name:return"keyword";case Kf.name:case Yf.name:return"variable";default:return null}}r($k,"mapTokenToType");var zf=u("call",{longer_alt:i,categories:[i]}),Jf=u("datasource",{longer_alt:i,categories:[i]}),eO=u("ends_on",{longer_alt:i,categories:[i]}),tO=u("events",{longer_alt:i,categories:[i]}),rO=u("freq",{longer_alt:i,categories:[i]}),Xf=u("schedule",{longer_alt:i,categories:[i]}),oO=u("starts_on",{longer_alt:i,categories:[i]}),ha=u("task",{longer_alt:i,categories:[i]}),nO=[zf,Jf,eO,tO,rO,Xf,oO,ha];function aO(e){switch(e){case Jf.name:case Xf.name:case ha.name:return"keyword";case eO.name:case tO.name:case rO.name:case oO.name:return"variable";case zf.name:return"function";default:return null}}r(aO,"mapTokenToType");var iO=u("text",{longer_alt:i,categories:[i]}),Qf=u("append",{longer_alt:i,categories:[i]}),Zf=u("contains",{longer_alt:i,categories:[i]}),$f=u("ends_with",{longer_alt:i,categories:[i]}),em=u("icontains",{longer_alt:i,categories:[i]}),tm=u("iends_with",{longer_alt:i,categories:[i]}),rm=u("istarts_with",{longer_alt:i,categories:[i]}),om=u("ltrim",{longer_alt:i,categories:[i]}),nm=u("prepend",{longer_alt:i,categories:[i]}),am=u("rtrim",{longer_alt:i,categories:[i]}),im=u("starts_with",{longer_alt:i,categories:[i]}),sm=u("trim",{longer_alt:i,categories:[i]}),sO=[iO,Qf,Zf,$f,em,tm,rm,om,nm,am,im,sm];function lO(e){switch(e){case iO.name:return"namespace";case Qf.name:case Zf.name:case $f.name:case em.name:case tm.name:case rm.name:case om.name:case nm.name:case am.name:case im.name:case sm.name:return"method";default:return null}}r(lO,"mapTokenToType");var lm=u("util",{longer_alt:i,categories:[i]}),cm=u("send_email",{longer_alt:i,categories:[i]}),pm=u("geo_distance",{longer_alt:i,categories:[i]}),um=u("get_all_input",{longer_alt:i,categories:[i]}),fm=u("template_engine",{longer_alt:i,categories:[i]}),mm=u("get_env",{longer_alt:i,categories:[i]}),dm=u("get_raw_input",{longer_alt:i,categories:[i]}),hm=u("get_vars",{longer_alt:i,categories:[i]}),Tm=u("ip_lookup",{longer_alt:i,categories:[i]}),Em=u("post_process",{longer_alt:i,categories:[i]}),Sm=u("precondition",{longer_alt:i,categories:[i]}),gm=u("set_header",{longer_alt:i,categories:[i]}),xm=u("sleep",{longer_alt:i,categories:[i]}),cO=[lm,fm,pm,cm,um,mm,dm,hm,Tm,Em,Sm,gm,xm];function pO(e){switch(e){case lm.name:case pm.name:case um.name:case mm.name:case dm.name:case hm.name:case Tm.name:case Em.name:case Sm.name:case gm.name:case xm.name:case fm.name:case cm.name:return"function";default:return null}}r(pO,"mapTokenToType");var Am=u("var",{longer_alt:i,categories:[i]}),Um=u("update",{longer_alt:i,categories:[i]}),uO=[Am,Um];function fO(e){switch(e){case Am.name:case Um.name:return"function";default:return null}}r(fO,"mapTokenToType");var V=k({name:"ShortFormVariable",pattern:/(\$[a-zA-Z_]\w*)|(\$\$)/,label:"$"}),Xr=k({name:"ResponseVariable",pattern:/\$response/,label:"$response",categories:[V],longer_alt:V}),Qr=k({name:"LongFormVariable",pattern:/\$var/,label:"$var",longer_alt:V}),mO=k({name:"$this",pattern:/\$this/,longer_alt:V,categories:[V]}),Rm=k({name:"InputVariable",pattern:/\$input/,longer_alt:V}),Lm=k({name:"EnvVariable",pattern:/\$env/,label:"$env",longer_alt:V}),km=k({name:"AuthVariable",pattern:/\$auth/,label:"$auth",longer_alt:V}),Om=k({name:"$remote_ip",pattern:/\$remote_ip/,longer_alt:V}),Cm=k({name:"$tenant",pattern:/\$tenant/,longer_alt:V}),Nm=k({name:"$error",pattern:/\$error/,longer_alt:V}),ym=k({name:"$remote_port",pattern:/\$remote_port/,longer_alt:V}),bm=k({name:"$remote_user",pattern:/\$remote_user/,longer_alt:V}),_m=k({name:"$http_headers",pattern:/\$http_headers/,longer_alt:V}),Mm=k({name:"$webflow",pattern:/\$webflow/,longer_alt:V}),Fm=k({name:"$api_baseurl",pattern:/\$api_baseurl/,longer_alt:V}),Im=k({name:"$request_uri",pattern:/\$request_uri/,longer_alt:V}),vm=k({name:"$request_querystring",pattern:/\$request_querystring/,longer_alt:V}),wm=k({name:"$request_auth_token",pattern:/\$request_auth_token/,longer_alt:V}),Pm=k({name:"$datasource",pattern:/\$datasource/,longer_alt:V}),Bm=k({name:"$branch",pattern:/\$branch/,longer_alt:V}),Gm=k({name:"$remote_passwd",pattern:/\$remote_passwd/,longer_alt:V}),Dm=k({name:"$remote_host",pattern:/\$remote_host/,longer_alt:V}),Vm=k({name:"$request_method",pattern:/\$request_method/,longer_alt:V}),dO=[Xr,mO,Qr,Rm,Lm,km,Nm,Om,Cm,ym,bm,Gm,Dm,Vm,_m,Mm,Fm,Im,vm,wm,Pm,Bm,V];function hO(e){switch(e){case Rm.name:case Nm.name:case Lm.name:case km.name:case Om.name:case Cm.name:case ym.name:case bm.name:case Gm.name:case Dm.name:case Vm.name:case Xr.name:case Qr.name:case _m.name:case Mm.name:case Fm.name:case Im.name:case vm.name:case wm.name:case Pm.name:case Bm.name:return"enumMember";case mO.name:case V.name:return"variable";default:return null}}r(hO,"mapTokenToType");var Ta=u("datasource",{longer_alt:i,categories:[i]}),qm=u("workflow_test",{longer_alt:i,categories:[i]}),TO=u("exception",{longer_alt:i,categories:[i]}),EO=[Ta,qm,TO];function SO(e){switch(e){case qm.name:return"keyword";case TO.name:case Ta.name:return"variable";default:return null}}r(SO,"mapTokenToType");var jm=u("workspace",{longer_alt:i,categories:[i]}),gO=[jm];function xO(e){switch(e){case jm.name:return"keyword";default:return null}}r(xO,"mapTokenToType");var Wm=u("actions",{longer_alt:i,categories:[i]}),Km=u("active",{longer_alt:i,categories:[i]}),Ym=u("workspace_trigger",{longer_alt:i,categories:[i]}),AO=[Wm,Km,Ym];function UO(e){switch(e){case Wm.name:case Ym.name:return"keyword";case Km.name:return"variable";default:return null}}r(UO,"mapTokenToType");var Hm=u("zip",{longer_alt:i,categories:[i]}),zm=u("add_to_archive",{longer_alt:i,categories:[i]}),Jm=u("create_archive",{longer_alt:i,categories:[i]}),Xm=u("delete_from_archive",{longer_alt:i,categories:[i]}),Qm=u("extract",{longer_alt:i,categories:[i]}),Zm=u("view_contents",{longer_alt:i,categories:[i]}),RO=[Hm,zm,Jm,Xm,Qm,Zm];function LO(e){switch(e){case Hm.name:case zm.name:case Jm.name:case Xm.name:case Qm.name:case Zm.name:return"function"}}r(LO,"mapTokenToType");var $Fe=k({name:"ObjectIdentifier",pattern:/[0-9a-zA-Z_]\w*/});var L=k({name:"Dot",pattern:/\./,label:"."}),$m=u("tags",{longer_alt:i,categories:[i]}),Zr=u("now",{longer_alt:i}),jt=u("null",{longer_alt:i}),ed=k({name:"RegExpToken",label:"regexp",pattern:/\/(?:[^/\n\\]|\\.)+\//}),kO=k({name:"WhiteSpace",pattern:/[ \t]+/,group:ue.SKIPPED,label:"whitespace"}),m=k({name:"NewlineToken",pattern:/(\r?\n)/}),OO=u("type",{longer_alt:i,categories:[i]}),CO=u("field",{longer_alt:i,categories:[i]}),Oe=u("true",{longer_alt:i}),Ce=u("false",{longer_alt:i}),Ea=u("input",{longer_alt:i,categories:[i]}),Sa=u("stack",{longer_alt:i,categories:[i]}),td=u("test",{longer_alt:i,categories:[i]}),rd=u("response",{longer_alt:i,categories:[i]}),od=u("view",{longer_alt:i,categories:[i]}),nd=u("middleware",{longer_alt:i,categories:[i]}),NO=u("return_aggregate",{pattern:/return_aggregate/}),ga=u("auth",{longer_alt:i,categories:[i]}),yO=u("security",{longer_alt:i,categories:[i]}),ad=u("history",{longer_alt:i,categories:[i]}),id=u("cache",{longer_alt:i,categories:[i]}),bO=u("guid",{longer_alt:i,categories:[i]}),sd=u("schema",{longer_alt:i,categories:[i]}),ld=u("index",{longer_alt:i,categories:[i]}),cd=u("values",{longer_alt:i,categories:[i]}),pd=u("value",{longer_alt:i,categories:[i]}),ud=u("filters",{longer_alt:i,categories:[i]}),fd=k({name:"DbLinkFilter",label:"@",pattern:/@/}),md=u("sensitive",{longer_alt:i,categories:[i]}),dd=u("description",{longer_alt:i,categories:[i]}),hd=u("disabled",{longer_alt:i,categories:[i]}),Td=u("mock",{longer_alt:i,categories:[i]}),Ed=u("docs",{longer_alt:i,categories:[i]}),Sd=k({name:"DbIdentifier",label:"db.identifier",pattern:/dbo=\d+/}),Oi=k({name:"JsonInToken",pattern:/in/,label:"in",longer_alt:i,categories:[i]}),xa=UL([kO,m,...Ck,...rk,ed,ld,Ea,NO,ud,...BL,...Rk,...Ak,...vk,...HL,...ek,...nk,...ik,...Fk,...Il,fd,Sd,cd,pd,Oe,Ce,OO,CO,ga,bO,md,$m,dd,Ed,hd,Td,sd,Sa,td,nd,...kk,rd,jt,Zr,ad,id,yO,...Yk,...RO,...dk,...jk,...cO,...Zk,...AO,...nO,...EO,...KL,...jL,...dO,...Xk,...ZL,...lk,...Pk,...sO,...Gk,...yk,...zk,...pk,...fk,...uO,...Tk,...DL,...wL,...gk,...IL,...ML,...XL,...gO,od,Oi,L,i]),Oz=[vL,FL,VL,PL,GL,YL,WL,zL,QL,_L,$L,tk,ok,sk,ck,uk,mk,hk,ak,Ek,Uk,Lk,Ok,Nk,bk,Ik,wk,Bk,Dk,Wk,Hk,Jk,Qk,$k,aO,lO,xk,pO,fO,hO,SO,xO,UO,LO],jh=new Map;function Cz(){let e={[id.name]:"keyword",[ad.name]:"keyword",[ld.name]:"keyword",[Ea.name]:"keyword",[nd.name]:"keyword",[Td.name]:"keyword",[rd.name]:"keyword",[od.name]:"keyword",[sd.name]:"keyword",[yO.name]:"keyword",[Sa.name]:"keyword",[td.name]:"keyword",[ud.name]:"keyword",[fd.name]:"function",[ga.name]:"variable",[Sd.name]:"variable",[NO.name]:"variable",[dd.name]:"variable",[hd.name]:"variable",[Ed.name]:"variable",[CO.name]:"variable",[bO.name]:"variable",[md.name]:"variable",[$m.name]:"variable",[OO.name]:"variable",[pd.name]:"variable",[cd.name]:"variable",[i.name]:"property",[Ce.name]:"enumMember",[Zr.name]:"enumMember",[jt.name]:"enumMember",[Oe.name]:"enumMember",[L.name]:"punctuation",[ed.name]:"regexp",[Oi.name]:"operator",[m.name]:null,[kO.name]:null};for(let[t,o]of Object.entries(e))jh.set(t,o);for(let t of xa)if(!jh.has(t.name))for(let o of Oz){let n=o(t.name);if(n){jh.set(t.name,n);break}}}r(Cz,"buildTokenTypeMap");Cz();var Nz=new ue(xa),yz=new ue([...Gh(xa,Ie),Vh]);function _O(e,t=!1){return t?yz.tokenize(e):Nz.tokenize(e)}r(_O,"lexDocument");var bz={addon:"addon",agent:"agent",agent_trigger:"agent_trigger",api_group:"api_group",branch:"branch",function:"cfn",mcp_server:"mcp_server",mcp_server_trigger:"mcp_server_trigger",middleware:"middleware",query:"api",realtime_trigger:"realtime_trigger",realtime_channel:"realtime_channel",run:"run",table:"db",table_trigger:"table_trigger",task:"task",tool:"tool",workflow_test:"workflow_test",workspace:"workspace",workspace_trigger:"workspace_trigger"},_z=/^(?:\s|\/\/[^\n]*\n)*(\w+)/;function gd(e){let t=e.match(_z)?.[1];return bz[t]||"cfn"}r(gd,"getSchemeFromContent");function MO(e){return()=>{let t=!1,o=!1,n=!1,a=!1;e.sectionStack.push("addonDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let s=e.CONSUME(yn);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.CONSUME(ie),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.SUBRULE(e.inputClause)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.CONSUME(Sa),e.CONSUME1(x),e.OPTION(()=>{e.AT_LEAST_ONE1(()=>e.CONSUME3(m)),e.CONSUME(Bn),e.CONSUME(L),e.SUBRULE(e.dbQueryFn)}),e.AT_LEAST_ONE2(()=>e.CONSUME4(m)),e.CONSUME1(A)},"ALT")},{GATE:r(()=>!a,"GATE"),ALT:r(()=>{a=!0,e.SUBRULE(e.tagsAttribute)},"ALT")}])}),o||e.addMissingError(s,"{} is missing an input clause"),n||e.addMissingError(s,"{} is missing a stack clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(MO,"addonDeclaration");var W=r(e=>e?e.tokenType===E?e.image.slice(1,-1):e.image:"","getVarName");function FO(e){return()=>{let t=!1,o=!1,n=!1,a=!1,s=!1,l=!1,c=!1,p=!1;e.sectionStack.push("agentDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let f=e.CONSUME(Pl);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.MANY4(()=>e.CONSUME5(ie)),e.MANY5(()=>e.CONSUME6(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.commentBlockFn),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.SUBRULE(e.canonicalClause)},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.docsFieldAttribute)},"ALT")},{GATE:r(()=>!a,"GATE"),ALT:r(()=>{a=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0;let d=e.CONSUME(Bl);e.CONSUME(g);let h={anthropic:["type","max_steps","model","temperature","headers"],"google-genai":["type","max_steps","model","temperature","headers","search_grounding","include_thoughts"],openai:["type","max_steps","model","temperature","reasoning_effort"],xano_free:["type","max_steps","temperature","search_grounding"]},T={anthropic:[...h.anthropic,"system_prompt","prompt","messages","api_key","reasoning","thinking_tokens","baseURL"],"google-genai":[...h["google-genai"],"system_prompt","prompt","messages","api_key","thinking_tokens","baseURL","safety_settings","dynamic_retrival","reasoning"],openai:[...h.openai,"system_prompt","prompt","messages","api_key","baseURL","headers","organization","project","compatibility"],"xano-free":[...h.xano_free,"system_prompt","prompt","messages","baseURL","headers","safety_settings","dynamic_retrival","thinking_tokens","include_thoughts"]},S={};e.SUBRULE(e.schemaParseObjectFn,{ARGS:[d,{type:["anthropic","google-genai","openai","xano-free"],max_steps:"[number]","prompt?":"[string]","messages?":"[string]","api_key?":"[string]","baseURL?":"[string]","compatibility?":["strict","compatible",""],"dynamic_retrival?":["enabled","disabled",""],"headers?":"[string]","include_thoughts?":"[boolean]","model?":"[string]","organization?":"[string]","project?":"[string]","reasoning_effort?":"[string]","reasoning?":"[boolean]","safety_settings?":"[string]","search_grounding?":"[boolean]","system_prompt?":"[string]","temperature?":"[number]","thinking_tokens?":"[number]"},S]}),e.ACTION(()=>{let R=W(S.type?.value),U=h[R]||[];for(let I of U)Object.prototype.hasOwnProperty.call(S,I)||e.addMissingError(d,`llm of type "${R}" requires a "${I}" field`);let y=T[R]||[],O=[];for(let I in S){let v=W(S[I].key);O.push(v),y.includes(v)||e.addIllegalAttributeError(S[I].key)}let C=O.includes("prompt"),N=O.includes("messages");C&&N?e.addIllegalAttributeError(S.messages.key,`llm of type "${R}" cannot have both "prompt" and "messages" fields`):!C&&!N&&e.addMissingError(d,`llm of type "${R}" requires either a "prompt" or "messages" field`)})},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.tagsAttribute)},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.outputClause)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0;let d=e.CONSUME(Gl);e.CONSUME2(g),e.SUBRULE(e.arrayOfObjectAttrReq,{ARGS:[d,["name"],["active","auth"],{types:{active:"boolean",auth:"string",name:"string"}}]})},"ALT")}])}),s||e.addMissingError(f,"{} is missing llm clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(FO,"agentDeclaration");function IO(e){return()=>{let t=!1,o=!1,n=!1,a=!1,s=!1,l=!1,c=!1,p=!1,f=!1,d=!1;e.sectionStack.push("agentTriggerDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let h=e.CONSUME(ql);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.CONSUME(ie),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0;let T=e.CONSUME(Dl);e.CONSUME(g),e.SUBRULE(e.schemaParseObjectFn,{ARGS:[T,{"connection?":"[boolean]"}]})},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.CONSUME(Vl),e.CONSUME2(g),e.SUBRULE(e.booleanValue)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.agentClause)},"ALT")},{GATE:r(()=>!a,"GATE"),ALT:r(()=>{a=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.docsFieldAttribute)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.inputClause)},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.responseClause)},"ALT")},{GATE:r(()=>!f,"GATE"),ALT:r(()=>{f=!0,e.SUBRULE(e.stackClause)},"ALT")},{GATE:r(()=>!d,"GATE"),ALT:r(()=>{d=!0,e.SUBRULE(e.tagsAttribute)},"ALT")}])}),n||e.addMissingError(h,"{} is missing agent clause"),c||e.addMissingError(h,"{} is missing an input clause"),f||e.addMissingError(h,"{} is missing a stack clause"),p||e.addMissingError(h,"{} is missing a response clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(IO,"agentTriggerDeclaration");function vO(e){return()=>{let t=!1,o=!1,n=!1,a=!1,s=!1,l=!1,c=!1,p=!1;e.sectionStack.push("apiGroupDeclaration"),e.SUBRULE(e.optionalCommentBlockFn),e.CONSUME(Fn),e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.CONSUME(ie),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.CONSUME(Mn),e.CONSUME1(g),e.SUBRULE(e.booleanValue)},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.CONSUME(rc),e.CONSUME2(g),e.CONSUME2(E)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0;let f=e.CONSUME(oc);e.CONSUME3(g),e.SUBRULE(e.objectAttrReq,{ARGS:[f,[],["mode","origins","methods","headers","credentials","max_age"],{types:{mode:"string",origins:r(d=>d.SUBRULE(d.arrayOfStringLiterals),"origins"),methods:r(d=>d.SUBRULE1(d.arrayOfStringLiterals),"methods"),headers:r(d=>d.SUBRULE2(d.arrayOfStringLiterals),"headers"),credentials:"boolean",max_age:"number"}}]})},"ALT")},{GATE:r(()=>!a,"GATE"),ALT:r(()=>{a=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.docsFieldAttribute)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0;let f=e.CONSUME(nc);e.CONSUME4(g),e.SUBRULE2(e.objectAttrReq,{ARGS:[f,[],["active","token"],{active:"boolean",token:"string"}]})},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.tagsAttribute)},"ALT")}])}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(vO,"apiGroupDeclaration");function wO(e){return()=>{e.sectionStack.push("columnDefaultValueAttribute"),e.CONSUME(g),e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(we),"ALT")},{ALT:r(()=>e.CONSUME(te),"ALT")},{ALT:r(()=>e.CONSUME(Oe),"ALT")},{ALT:r(()=>e.CONSUME(Ce),"ALT")},{ALT:r(()=>e.CONSUME(Zr),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]),e.sectionStack.pop()}}r(wO,"columnDefaultValueAttribute");function PO(e){return()=>{e.sectionStack.push("descriptionFieldAttribute"),e.CONSUME(dd),e.CONSUME(g),e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(Ve),"ALT")}]),e.sectionStack.pop()}}r(PO,"descriptionFieldAttribute");function BO(e){return()=>{e.sectionStack.push("disabledFieldAttribute"),e.CONSUME(hd),e.CONSUME(g),e.OR([{ALT:r(()=>e.CONSUME(Oe),"ALT")},{ALT:r(()=>e.CONSUME(Ce),"ALT")}]),e.sectionStack.pop()}}r(BO,"disabledFieldAttribute");function GO(e){return()=>{e.sectionStack.push("docsFieldAttribute"),e.CONSUME(Ed),e.CONSUME(g),e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(Ve),"ALT")}]),e.sectionStack.pop()}}r(GO,"docsFieldAttribute");var DO=["deg2rad","rad2deg","number_format","sin","asin","asinh","cos","acos","acosh","tan","atan","atanh","floor","ceil","round","first","last","count","range","reverse","unique","safe_array","flatten","filter_empty","filter_empty_text","filter_null","filter_empty_array","filter_empty_object","filter_zero","filter_false","sort","shuffle","diff","diff_assoc","intersect","intersect_assoc","merge","merge_recursive","index_by","push","pop","unshift","shift","remove","append","prepend","abs","sqrt","exp","log","log10","ln","pow","array_min","min","array_max","max","sum","avg","product","equals","not_equals","greater_than","greater_than_or_equal","less_than","less_than_or_equal","odd","even","in","add","subtract","multiply","modulus","divide","bitwise_and","bitwise_or","bitwise_xor","not","bitwise_not","is_null","is_empty","is_object","is_array","is_int","is_decimal","is_bool","is_text","addslashes","escape","list_encodings","detect_encoding","to_utf8","from_utf8","convert_encoding","to_lower","to_upper","trim","ltrim","rtrim","capitalize","substr","split","join","slice","strlen","strip_html","unaccent","index","iindex","starts_with","istarts_with","ends_with","iends_with","contains","icontains","set","set_conditional","set_ifnotempty","set_ifnotnull","first_notnull","first_notempty","unset","transform","get","has","fill","fill_keys","keys","values","entries","to_expr","to_text","to_int","to_decimal","to_bool","to_timestamp","to_ms","to_seconds","to_minutes","to_hours","to_days","create_object","create_object_from_entries","json_decode","json_encode","xml_decode","csv_parse","csv_decode","csv_encode","csv_create","url_decode","url_decode_rfc3986","url_encode","url_encode_rfc3986","url_addarg","url_delarg","url_hasarg","url_getarg","url_parse","querystring_parse","yaml_decode","yaml_encode","hex2bin","bin2hex","dechex","hexdec","decbin","bindec","decoct","octdec","base_convert","base64_decode","base64_encode","base64_decode_urlsafe","base64_encode_urlsafe","encrypt","decrypt","jws_encode","jws_decode","jwe_encode","jwe_decode","concat","sprintf","replace","secureid_encode","secureid_decode","md5","sha1","sha256","sha384","sha512","hmac_md5","hmac_sha1","hmac_sha256","hmac_sha384","hmac_sha512","create_uid","uuid","parse_timestamp","format_timestamp","transform_timestamp","add_secs_to_timestamp","add_ms_to_timestamp","regex_matches","regex_get_first_match","regex_get_all_matches","regex_quote","regex_replace","map","filter","filter_null","filter_empty_text","filter_empty_object","filter_empty_array","some","every","find","findIndex","reduce","pick","unpick","text_unescape","text_escape","sql_esc","sql_alias","is_uuid"],Wh={text:["trim","min","max","startsWith","prevent","lower","upper","alphaOk","digitOk","ok","pattern"],decimal:["min","max"],int:["min","max"],email:["trim","lower"],password:["min","max","minAlpha","minLowerAlpha","minUpperAlpha","minDigit","minSymbol"],blob:[],blob_img:[],blob_video:[],blob_audio:[],enum:[],file:[],json:[],obj:[],epochms:[]},VO=["covers","l1_distance_manhattan","l2_distance_euclidean","inner_product","negative_inner_product","cosine_distance","cosine_similarity","distance","within","between","length","floor","ceil","round","to_lower","to_upper","concat","substr","coalesce","unaccent","add","sub","mul","div","search_rank","timestamp_month","timestamp_year","timestamp_week","timestamp_hour","timestamp_minute","timestamp_day_of_month","timestamp_day_of_week","timestamp_day_of_year","timestamp_epoch_day","timestamp_epoch_hour","timestamp_epoch_minute","timestamp_epoch_sec","timestamp_add_seconds","timestamp_subtract_seconds","timestamp_add_minutes","timestamp_subtract_minutes","timestamp_add_hours","timestamp_subtract_hours","timestamp_add_days","timestamp_subtract_days","timestamp_add_months","timestamp_subtract_months","timestamp_add_years","timestamp_subtract_years"];function qO(e){return t=>{e.sectionStack.push("inputFilterFn"),e.OR([{ALT:r(()=>{e.OPTION(()=>e.CONSUME(Ie));let o=e.CONSUME(i);e.MANY1(()=>{e.CONSUME1(xe),e.OR2([{ALT:r(()=>e.CONSUME2(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")},{ALT:r(()=>e.CONSUME1(ed),"ALT")},{ALT:r(()=>e.CONSUME1(te),"ALT")},{ALT:r(()=>e.CONSUME1(we),"ALT")},{ALT:r(()=>e.CONSUME1(Ce),"ALT")},{ALT:r(()=>e.CONSUME1(Oe),"ALT")}])}),t&&Wh[t.image]&&!Wh[t.image].includes(o.image)&&e.addInvalidValueError(o,`Filter '${o.image}' cannot be applied to input of type '${t.image}'`)},"ALT")},{ALT:r(()=>{e.CONSUME(fd),e.CONSUME2(xe),e.CONSUME(Sd)},"ALT")}]),e.sectionStack.pop()}}r(qO,"inputFilterFn");var jO=r(e=>()=>{e.sectionStack.push("sensitiveFieldAttribute"),e.CONSUME(md),e.CONSUME(g),e.OR([{ALT:r(()=>e.CONSUME(Oe),"ALT")},{ALT:r(()=>e.CONSUME(Ce),"ALT")}]),e.sectionStack.pop()},"sensitiveFieldAttribute");function WO(e){return()=>{e.sectionStack.push("valueFieldAttribute");let t=e.CONSUME(pd);e.CONSUME(g),e.SUBRULE(e.expressionFn,{ARGS:[t,{allowIdentifier:!1}]}),e.sectionStack.pop()}}r(WO,"valueFieldAttribute");function KO(e){return()=>{e.sectionStack.push("valuesFieldAttribute"),e.CONSUME(cd),e.CONSUME(g),e.SUBRULE(e.stringArray),e.sectionStack.pop()}}r(KO,"valuesFieldAttribute");var YO=r(e=>{e.columnDefaultValueAttribute=e.RULE("columnDefaultValueAttribute",wO(e)),e.descriptionFieldAttribute=e.RULE("descriptionFieldAttribute",PO(e)),e.disabledFieldAttribute=e.RULE("disabledFieldAttribute",BO(e)),e.docsFieldAttribute=e.RULE("docsFieldAttribute",GO(e)),e.inputFilterFn=e.RULE("inputFilterFn",qO(e)),e.sensitiveFieldAttribute=e.RULE("sensitiveFieldAttribute",jO(e)),e.valueFieldAttribute=e.RULE("valueFieldAttribute",WO(e)),e.valuesFieldAttribute=e.RULE("valuesFieldAttribute",KO(e))},"register");function HO(e){return()=>{e.sectionStack.push("branchDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let t=e.CONSUME(Rc);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]);let o={pre:[{name:"[string]"}],post:[{name:"[string]"}]};e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{color:"[string]","description?":"[string]",middleware:{function:o,query:o,task:o,tool:o},history:{function:[!1,10,100,1e3,1e4,"all"],query:[!1,10,100,1e3,1e4,"all"],task:[!1,10,100,1e3,1e4,"all"],tool:[!1,10,100,1e3,1e4,"all"],trigger:[!1,10,100,1e3,1e4,"all"],middleware:[!1,10,100,1e3,1e4,"all"]}}]}),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(HO,"branchDeclaration");var zO=r(e=>()=>{e.sectionStack.push("agentClause");let t=e.CONSUME(up);e.CONSUME(g),e.CONSUME(E).image==='""'&&e.addMissingError(t,"agent cannot be empty"),e.sectionStack.pop()},"agentClause");var JO=r(e=>()=>{e.sectionStack.push("authClause"),e.CONSUME(ga),e.CONSUME(g),e.OR([{ALT:r(()=>e.CONSUME(Oe),"ALT")},{ALT:r(()=>e.CONSUME(Ce),"ALT")}]),e.sectionStack.pop()},"authClause");function XO(e){return()=>{e.sectionStack.push("cacheClause");let t=e.CONSUME(id);e.CONSUME(g),e.SUBRULE(e.objectAttrReq,{ARGS:[t,["ttl","input","auth","datasource","ip"],["headers","env"],{types:{ttl:"number",input:"boolean",auth:"boolean",datasource:"boolean",ip:"boolean"}}]}),e.sectionStack.pop()}}r(XO,"cacheClause");var QO=r(e=>()=>{e.sectionStack.push("canonicalClause");let t=e.CONSUME(dp);e.CONSUME(g),e.CONSUME(E).image==='""'&&e.addMissingError(t,"canonical cannot be empty"),e.sectionStack.pop()},"canonicalClause");var ZO=r(e=>()=>{e.sectionStack.push("channelClause");let t=e.CONSUME(mp);e.CONSUME(g),e.CONSUME(E).image==='""'&&e.addMissingError(t,"channel cannot be empty"),e.sectionStack.pop()},"channelClause");var $O=r(e=>()=>{e.sectionStack.push("dbTableClause");let t=e.CONSUME(Jr);e.CONSUME(g),e.CONSUME(E).image==='""'&&e.addMissingError(t,"table cannot be empty"),e.sectionStack.pop()},"dbTableClause");function eC(e){return t=>{let o=t?.[0]||i,n=t?.[1]??!0;e.sectionStack.push(o.name+"Clause"),e.CONSUME(o),e.CONSUME(g);let a=e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(Ve),"ALT")}]);n||a.image==='""'&&e.addMissingError(a,"value cannot be empty"),e.sectionStack.pop()}}r(eC,"flexibleStringClause");function tC(e){return()=>{e.sectionStack.push("historyClause");let t=e.CONSUME(ad);e.CONSUME(g),e.SUBRULE(e.schemaParseEnumFn,{ARGS:[t,[!1,"inherit",0,10,100,1e3,1e4,"all"]]}),e.sectionStack.pop()}}r(tC,"historyClause");function rC(e){return()=>{e.sectionStack.push("indexClause");let t=e.CONSUME(ld);e.CONSUME(g),e.SUBRULE(e.schemaFn,{ARGS:[t,[{type:["primary","btree","gin","btree|unique","search","vector"],field:[{name:"[string]","op?":"[string]"}],"lang?":"[string]","name?":"[string]"}]]}),e.sectionStack.pop()}}r(rC,"indexClause");function oC(e){return()=>{e.sectionStack.push("inputClause"),e.CONSUME(Ea),e.OPTION(()=>{e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE1(()=>e.CONSUME1(m)),e.SUBRULE(e.optionalCommentBlockFn),e.OR([{ALT:r(()=>e.SUBRULE(e.objectColumnDefinition),"ALT")},{ALT:r(()=>e.SUBRULE(e.enumColumnDefinition),"ALT")},{ALT:r(()=>e.SUBRULE(e.columnDefinition,{ARGS:[{include_file:!0}]}),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbLinkColumnDefinition),"ALT")}])}),e.AT_LEAST_ONE2(()=>e.CONSUME2(m)),e.CONSUME(A)}),e.sectionStack.pop()}}r(oC,"inputClause");var nC=r(e=>()=>{e.sectionStack.push("mcpServerClause");let t=e.CONSUME(fp);e.CONSUME(g),e.CONSUME(E).image==='""'&&e.addMissingError(t,"mcp_server cannot be empty"),e.sectionStack.pop()},"mcpServerClause");function aC(e){return()=>{e.sectionStack.push("middlewareClause");let t=e.CONSUME(nd);e.CONSUME(g),e.SUBRULE(e.schemaParseObjectFn,{ARGS:[t,{"pre?":[{name:"[string]","active?":"[boolean]","required?":"[boolean]"}],"post?":[{name:"[string]","active?":"[boolean]","required?":"[boolean]"}]}]}),e.sectionStack.pop()}}r(aC,"middlewareClause");var Kh={allowExpectStatements:!1,allowCallStatements:!1};function iC(e){return(t={})=>{t={...Kh,...t},e.sectionStack.push("nakedStackFn"),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE1(()=>e.CONSUME1(m)),e.OPTION(()=>e.CONSUME(Ie)),e.OR([{ALT:r(()=>e.CONSUME(ie),"ALT")},{ALT:r(()=>e.SUBRULE(e.aiFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.varFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.mathFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.textFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.preconditionFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.zipFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.objectFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.apiFn,{ARGS:[t]}),"ALT")},{ALT:r(()=>e.SUBRULE(e.webflowFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.controlFn,{ARGS:[t]}),"ALT")},{ALT:r(()=>e.SUBRULE(e.debugFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.storageFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.streamFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.actionCallFn),"ALT")},{GATE:r(()=>t.allowCallStatements,"GATE"),ALT:r(()=>e.SUBRULE(e.toolCallFn),"ALT")},{GATE:r(()=>t.allowCallStatements,"GATE"),ALT:r(()=>e.SUBRULE(e.addonCallFn),"ALT")},{GATE:r(()=>t.allowCallStatements,"GATE"),ALT:r(()=>e.SUBRULE(e.middlewareCallFn),"ALT")},{GATE:r(()=>t.allowExpectStatements,"GATE"),ALT:r(()=>e.SUBRULE(e.workflowExpectFn),"ALT")}])}),e.AT_LEAST_ONE2(()=>e.CONSUME2(m)),e.CONSUME(A),e.sectionStack.pop()}}r(iC,"nakedStackFn");function sC(e){return()=>{e.sectionStack.push("outputClause"),e.CONSUME(qu),e.OPTION(()=>{e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE1(()=>e.CONSUME1(m)),e.OR([{ALT:r(()=>e.SUBRULE(e.objectColumnDefinition),"ALT")},{ALT:r(()=>e.SUBRULE(e.enumColumnDefinition),"ALT")},{ALT:r(()=>e.SUBRULE(e.columnDefinition,{ARGS:[{include_file:!1}]}),"ALT")}])}),e.AT_LEAST_ONE2(()=>e.CONSUME2(m)),e.CONSUME(A)}),e.sectionStack.pop()}}r(sC,"outputClause");function lC(e){return()=>{e.sectionStack.push("responseClause");let t=e.CONSUME(rd);e.CONSUME(g),e.SUBRULE(e.expressionFn,{ARGS:[t,{allowDisabledKeys:!0}]}),e.sectionStack.pop()}}r(lC,"responseClause");function cC(e){return()=>{e.sectionStack.push("scheduleClause");let t=e.CONSUME(Xf);e.CONSUME(g),e.SUBRULE(e.schemaFn,{ARGS:[t,[{starts_on:"[timestamp]","ends_on?":"[timestamp]","freq?":"[number]"}]]}),e.sectionStack.pop()}}r(cC,"scheduleClause");var Mz={include_file:!0,isTableSchema:!1};function pC(e){return(t={},o={})=>{t={...Mz,...t},e.sectionStack.push("schemaClause");let n=e.CONSUME(sd);if(e.OPTION(()=>{e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE1(()=>e.CONSUME1(m)),e.OR([{ALT:r(()=>e.CONSUME(ie),"ALT")},{ALT:r(()=>e.SUBRULE(e.objectColumnDefinition,{ARGS:[o]}),"ALT")},{ALT:r(()=>e.SUBRULE(e.enumColumnDefinition,{ARGS:[o]}),"ALT")},{ALT:r(()=>e.SUBRULE(e.columnDefinition,{ARGS:[{include_file:t.include_file,isTableSchema:t.isTableSchema},o]}),"ALT")}])}),e.MANY1(()=>e.CONSUME2(m)),e.CONSUME(A)}),t.isTableSchema){let a=o.id;a?["int","uuid"].includes(a.typeToken.image)||e.addInvalidValueError(a.typeToken,'The "id" column can only be of type "int" or "uuid"'):e.addMissingError(n,"{} must have an 'id' of type uuid or int column defined")}e.sectionStack.pop()}}r(pC,"schemaClause");function uC(e){return(t={})=>{t={...Kh,...t},e.sectionStack.push("stackClause"),e.CONSUME(Sa),e.OPTION(()=>e.SUBRULE(e.nakedStackFn,{ARGS:[t]})),e.sectionStack.pop()}}r(uC,"stackClause");function fC(e){return t=>{let o=!1,n=!1;t=t||[],e.sectionStack.push("testClause"),e.CONSUME(td);let a=e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]);if(a&&a.image){let s=a.image.replaceAll('"',"");t.includes(s)&&e.addDuplicateNameError(a,"test"),t.push(a.image.replaceAll('"',""))}e.CONSUME(x),e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.MANY(()=>{e.OR1([{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.CONSUME(Ea),e.CONSUME(g),e.SUBRULE(e.objectWithAttributes)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.CONSUME(Ta),e.CONSUME1(g),e.CONSUME1(E)},"ALT")},{ALT:r(()=>e.SUBRULE(e.unitExpectFn),"ALT")}]),e.AT_LEAST_ONE1(()=>e.CONSUME1(m))}),e.CONSUME(A),e.sectionStack.pop()}}r(fC,"testClause");function mC(e){return()=>{e.sectionStack.push("viewClause");let t=e.CONSUME(od);e.CONSUME(g);let o={};e.SUBRULE(e.schemaParseObjectFn,{ARGS:[t,{"[string]":{"search?":"[query]","hide?":["[string]"],sort:{"[string]":["asc","desc","rand"]},id:"[string]","alias?":"[string]"}},o]});for(let n in o)!o[n].search&&!o[n].hide&&e.addMissingError(t,`view ${n} must have either a search or hide criteria`);e.sectionStack.pop()}}r(mC,"viewClause");var dC=r(e=>{e.agentClause=e.RULE("agentClause",zO(e)),e.authClause=e.RULE("authClause",JO(e)),e.cacheClause=e.RULE("cacheClause",XO(e)),e.canonicalClause=e.RULE("canonicalClause",QO(e)),e.channelClause=e.RULE("channelClause",ZO(e)),e.dbTableClause=e.RULE("dbTableClause",$O(e)),e.flexibleStringClause=e.RULE("flexibleStringClause",eC(e)),e.historyClause=e.RULE("historyClause",tC(e)),e.indexClause=e.RULE("indexClause",rC(e)),e.inputClause=e.RULE("inputClause",oC(e)),e.outputClause=e.RULE("outputClause",sC(e)),e.mcpServerClause=e.RULE("mcpServerClause",nC(e)),e.middlewareClause=e.RULE("middlewareClause",aC(e)),e.nakedStackFn=e.RULE("nakedStackFn",iC(e)),e.responseClause=e.RULE("responseClause",lC(e)),e.scheduleClause=e.RULE("scheduleClause",cC(e)),e.schemaClause=e.RULE("schemaClause",pC(e)),e.stackClause=e.RULE("stackClause",uC(e)),e.testClause=e.RULE("testClause",fC(e)),e.viewClause=e.RULE("viewClause",mC(e))},"register");function hC(e){return()=>{e.sectionStack.push("arraySlice");let t=null,o=null;if(e.OR([{ALT:r(()=>{e.CONSUME(H),e.CONSUME(z)},"ALT")},{ALT:r(()=>{e.CONSUME1(H),t=e.CONSUME1(te),e.CONSUME1(xe),e.OPTION(()=>o=e.CONSUME3(te)),e.CONSUME1(z)},"ALT")},{ALT:r(()=>{e.CONSUME2(H),e.CONSUME2(xe),o=e.CONSUME2(te),e.CONSUME2(z)},"ALT")}]),t&&t.image.startsWith("-")&&e.addInvalidValueError(t,"Array slice start index cannot be negative"),o&&o.image.startsWith("-")&&e.addInvalidValueError(o,"Array slice end index cannot be negative"),t&&o){let n=parseInt(t.image,10);parseInt(o.image,10)<n&&e.addInvalidValueError(o,"Array slice end index cannot be less than start index")}e.sectionStack.pop()}}r(hC,"arraySlice");var Fz={include_file:!1,isTableSchema:!1};function TC(e){return(t={},o={})=>{t={...Fz,...t};let n=!1,a=!1,s=!1;e.sectionStack.push("columnDefinition");let l=e.OR([{ALT:r(()=>e.CONSUME(Vc),"ALT")},{ALT:r(()=>e.CONSUME(qc),"ALT")},{ALT:r(()=>e.CONSUME(vn),"ALT")},{ALT:r(()=>e.CONSUME(jc),"ALT")},{ALT:r(()=>e.CONSUME(Wc),"ALT")},{ALT:r(()=>e.CONSUME(Yc),"ALT")},{ALT:r(()=>e.CONSUME(Hc),"ALT")},{ALT:r(()=>e.CONSUME(zc),"ALT")},{ALT:r(()=>e.CONSUME(Jc),"ALT")},{ALT:r(()=>e.CONSUME(Xc),"ALT")},{ALT:r(()=>e.CONSUME(Qc),"ALT")},{ALT:r(()=>e.CONSUME(ep),"ALT")},{ALT:r(()=>e.CONSUME(tp),"ALT")},{ALT:r(()=>e.CONSUME(rp),"ALT")},{ALT:r(()=>e.CONSUME(op),"ALT")},{ALT:r(()=>e.CONSUME(np),"ALT")},{ALT:r(()=>e.CONSUME(ap),"ALT")},{ALT:r(()=>e.CONSUME(ip),"ALT")},{ALT:r(()=>e.CONSUME(sp),"ALT")},{ALT:r(()=>e.CONSUME(lp),"ALT")},{ALT:r(()=>e.CONSUME(cp),"ALT")},{GATE:r(()=>!!t.include_file,"GATE"),ALT:r(()=>e.CONSUME(Zc),"ALT")}]);e.OPTION1(()=>{a=!0,e.SUBRULE(e.arraySlice)}),e.OPTION2(()=>{n=!0,e.CONSUME(ft)});let c=e.CONSUME(i);e.OPTION6(()=>{s=!0,e.CONSUME1(ft)}),e.OPTION3(()=>e.SUBRULE(e.columnDefaultValueAttribute)),e.OPTION4(()=>e.SUBRULE(e.filterDefinition,{ARGS:[l]}));let p={};e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[c,{"description?":"[string]","table?":"[string]","size?":"[number]","sensitive?":"[boolean]"},p]}),l.image=="vector"&&!p.size&&e.addWarning('Column named "vector" should have a size attribute defining its length.',c),o[W(c)]={typeToken:l,nameToken:c},e.addInput(c.image,l.image,a,n,s),e.sectionStack.pop()}}r(TC,"columnDefinition");function EC(e){return()=>{e.sectionStack.push("dbLinkColumnDefinition");let t=e.CONSUME(pp);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{table:"[string]","override?":{"[string]":{hidden:"[boolean]"}}}]}),e.sectionStack.pop()}}r(EC,"dbLinkColumnDefinition");function SC(e){return(t={})=>{e.sectionStack.push("enumColumnDefinition");let o=e.CONSUME(Kc),n=!1,a=!1,s=!1;e.OPTION1(()=>{n=!0,e.SUBRULE(e.arraySlice)}),e.OPTION2(()=>{a=!0,e.CONSUME(ft)});let l=e.CONSUME(i);t[W(l)]={typeToken:o,nameToken:l},e.OPTION(()=>{s=!0,e.CONSUME1(ft)}),e.OPTION3(()=>e.SUBRULE(e.columnDefaultValueAttribute)),e.SUBRULE(e.enumColumnMetadataDefinition,{ARGS:[o]}),e.addInput(l.image,"enum",n,a,s),e.sectionStack.pop()}}r(SC,"enumColumnDefinition");function gC(e){return(t=null)=>{e.sectionStack.push("filterDefinition"),e.CONSUME(ud),e.CONSUME(g),e.AT_LEAST_ONE_SEP({SEP:ve,DEF:r(()=>e.SUBRULE(e.inputFilterFn,{ARGS:[t]}),"DEF")}),e.sectionStack.pop()}}r(gC,"filterDefinition");function xC(e){return(t={})=>{e.sectionStack.push("objectColumnDefinition");let o=e.CONSUME($c),n=!1,a=!1,s=!1;e.OPTION2(()=>{n=!0,e.SUBRULE(e.arraySlice)});let l=e.CONSUME(i);t[W(l)]={typeToken:o,nameToken:l},e.OPTION(()=>{s=!0,e.CONSUME(ft)}),e.SUBRULE(e.objectColumnMetadataDefinition),e.addInput(l.image,"enum",n,a,s),e.sectionStack.pop()}}r(xC,"objectColumnDefinition");var AC=r(e=>{e.arraySlice=e.RULE("arraySlice",hC(e)),e.columnDefinition=e.RULE("columnDefinition",TC(e)),e.dbLinkColumnDefinition=e.RULE("dbLinkColumnDefinition",EC(e)),e.enumColumnDefinition=e.RULE("enumColumnDefinition",SC(e)),e.filterDefinition=e.RULE("filterDefinition",gC(e)),e.objectColumnDefinition=e.RULE("objectColumnDefinition",xC(e))},"register");function UC(e){return()=>{let t=!1,o=!1,n=!1,a=!1,s=!1,l=!1,c=!1,p=!1,f=!1,d=[];e.sectionStack.push("functionDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let h=e.CONSUME(Hr);e.OR([{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME(E),"ALT")}]),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.CONSUME(ie),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.SUBRULE(e.cacheClause)},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.docsFieldAttribute)},"ALT")},{GATE:r(()=>!a,"GATE"),ALT:r(()=>{a=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.inputClause)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.middlewareClause)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.responseClause)},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.stackClause)},"ALT")},{GATE:r(()=>!f,"GATE"),ALT:r(()=>{f=!0,e.SUBRULE(e.tagsAttribute)},"ALT")},{ALT:r(()=>{e.SUBRULE(e.testClause,{ARGS:[d]})},"ALT")}])}),s||e.addMissingError(h,"{} is missing an input clause"),p||e.addMissingError(h,"{} is missing a stack clause"),c||e.addMissingError(h,"{} is missing a response clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(UC,"functionDeclaration");function RC(e){return()=>{e.sectionStack.push("actionCallFn"),e.CONSUME(vl),e.CONSUME(L);let t=e.CONSUME(Yr);e.OR([{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}]),e.OPTION(()=>{e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"package?":"[string]","input?":{"[string]":"[expression]"},"mock?":{"![string]":"[expression]"},"registry?":{"[string]":"[expression]"},"description?":"[string]","disabled?":"[boolean]"}]})}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(RC,"actionCallFn");function LC(e){return()=>{e.sectionStack.push("addonCallFn"),e.CONSUME(yn),e.CONSUME(L);let t=e.CONSUME(wl);e.OR([{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}]),e.OPTION(()=>{e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"input?":{"[string]":"[expression]"},"mock?":{"![string]":"[expression]"},"description?":"[string]","disabled?":"[boolean]"}]})}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(LC,"addonCallFn");function kC(e){return()=>{e.sectionStack.push("aiAgentRunFn");let t=e.CONSUME(bn);e.OR({DEF:[{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME(E),"ALT")}],ERR_MSG:"Expected an agent name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"args?":"[expression]","runtime_mode?":["async-shared","async-dedicated"],"allow_tool_execution?":"[expression]","description?":"[string]","disabled?":"[boolean]","version?":"[string]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(kC,"aiAgentRunFn");function OC(e){return()=>{e.sectionStack.push("aiExternalMcpServerDetailsFn");let t=e.CONSUME(Jl);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{url:"[expression]",bearer_token:"[expression]",connection_type:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(OC,"aiExternalMcpServerDetailsFn");function CC(e){return()=>{e.sectionStack.push("aiExternalMcpToolListFn");let t=e.CONSUME(zl);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{url:"[expression]",bearer_token:"[expression]",connection_type:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(CC,"aiExternalMcpToolListFn");function NC(e){return()=>{e.sectionStack.push("aiExternalMcpToolRunFn");let t=e.CONSUME(bn);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{url:"[expression]",bearer_token:"[expression]",connection_type:"[expression]",tool:"[expression]",args:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(NC,"aiExternalMcpToolRunFn");var yC=r(e=>{e.aiAgentRunFn=e.RULE("aiAgentRunFn",kC(e)),e.aiExternalMcpToolListFn=e.RULE("aiExternalMcpToolListFn",CC(e)),e.aiExternalMcpToolRunFn=e.RULE("aiExternalMcpToolRunFn",NC(e)),e.aiExternalMcpServerDetailsFn=e.RULE("aiExternalMcpServerDetailsFn",OC(e))},"register");function bC(e){return()=>{e.sectionStack.push("ai"),e.CONSUME(jl),e.CONSUME(L),e.OR([{ALT:r(()=>{e.CONSUME(Wl),e.CONSUME1(L),e.SUBRULE(e.aiAgentRunFn)},"ALT")},{ALT:r(()=>{e.CONSUME(Kl),e.CONSUME2(L),e.CONSUME(Yl),e.CONSUME3(L),e.OR1([{ALT:r(()=>e.SUBRULE(e.aiExternalMcpServerDetailsFn),"ALT")},{ALT:r(()=>{e.CONSUME(Hl),e.CONSUME4(L),e.OR2([{ALT:r(()=>e.SUBRULE(e.aiExternalMcpToolListFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.aiExternalMcpToolRunFn),"ALT")}])},"ALT")}])},"ALT")}]),e.sectionStack.pop()}}r(bC,"aiFn");function _C(e){return()=>{e.sectionStack.push("apiCallFn");let t=e.CONSUME(Zl);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]),e.CONSUME(ca),e.CONSUME(g),e.OR1([{ALT:r(()=>e.CONSUME(da),"ALT")},{ALT:r(()=>e.CONSUME(pa),"ALT")},{ALT:r(()=>e.CONSUME(ua),"ALT")},{ALT:r(()=>e.CONSUME(fa),"ALT")},{ALT:r(()=>e.CONSUME(ma),"ALT")}]),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{api_group:"[string]","description?":"[string]","disabled?":"[boolean]","headers?":"[expression]","input?":{"[string]":"[expression]"}}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(_C,"apiCallFn");function MC(e){let t=["code","timeout"],o=["description","disabled"];return()=>{e.sectionStack.push("apiLambdaFn");let n=e.CONSUME(tc);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(MC,"apiLambdaFn");function FC(e){let t=["channel","data","auth_table","auth_id"],o=["description","disabled"];return()=>{e.sectionStack.push("apiRealtimeEventFn");let n=e.CONSUME($l);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(FC,"apiRealtimeEventFn");function IC(e){return()=>{e.sectionStack.push("apiRequestFn");let t=e.CONSUME(_n);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{url:"[expression]",method:"[expression]","description?":"[string]","disabled?":"[boolean]","params?":"[expression]","headers?":"[expression]","timeout?":"[number]","follow_location?":"[expression]","ca_certificate?":"[string]","certificate?":"[string]","certificate_pass?":"[string]","private_key?":"[string]","verify_host?":"[boolean]","verify_peer?":"[boolean]","mock?":{"![string]":"[expression]"}}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(IC,"apiRequestFn");function vC(e){let t=["value"],o=["description","disabled"];return()=>{e.sectionStack.push("apiStreamFn");let n=e.CONSUME(ec);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(vC,"apiStreamFn");function wC(e){return()=>{e.sectionStack.push("webflowRequestFn");let t=e.CONSUME(_n);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{path:"[expression]",method:"[expression]","description?":"[string]","disabled?":"[boolean]","params?":"[expression]","headers?":"[expression]","timeout?":"[number]","follow_location?":"[expression]","ca_certificate?":"[string]","certificate?":"[string]","certificate_pass?":"[string]","private_key?":"[string]","verify_host?":"[boolean]","verify_peer?":"[boolean]","mock?":{"![string]":"[expression]"}}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(wC,"webflowRequestFn");var PC=r(e=>{e.apiLambdaFn=e.RULE("apiLambdaFn",MC(e)),e.apiRealtimeEventFn=e.RULE("apiRealtimeEventFn",FC(e)),e.apiRequestFn=e.RULE("apiRequestFn",IC(e)),e.apiStreamFn=e.RULE("apiStreamFn",vC(e)),e.apiCallFn=e.RULE("apiCallFn",_C(e)),e.webflowRequestFn=e.RULE("webflowRequestFn",wC(e))},"register");function BC(e){return(t={})=>{e.sectionStack.push("api"),e.CONSUME(Xl),e.CONSUME(L),e.OR([{GATE:r(()=>t.allowCallStatements,"GATE"),ALT:r(()=>e.SUBRULE(e.apiCallFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.apiLambdaFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.apiRequestFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.apiRealtimeEventFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.apiStreamFn),"ALT")}]),e.sectionStack.pop()}}r(BC,"apiFn");function GC(e){return()=>{e.sectionStack.push("arrayDifferenceFn");let t=e.CONSUME(xc);e.CONSUME(P),e.SUBRULE(e.expressionFn),e.OPTION(()=>e.CONSUME(m)),e.CONSUME(B),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{value:"[expression]",by:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(GC,"arrayDifferenceFn");function DC(e){return()=>{e.sectionStack.push("arrayEveryFn");let t=e.CONSUME(ic);e.SUBRULE(e.arrayValueIfAs,{ARGS:[t]}),e.sectionStack.pop()}}r(DC,"arrayEveryFn");function VC(e){return()=>{e.sectionStack.push("arrayFilterCountFn");let t=e.CONSUME(sc);e.SUBRULE(e.arrayValueIfAs,{ARGS:[t]}),e.sectionStack.pop()}}r(VC,"arrayFilterCountFn");function qC(e){return()=>{e.sectionStack.push("arrayFilterFn");let t=e.CONSUME(lc);e.SUBRULE(e.arrayValueIfAs,{ARGS:[t]}),e.sectionStack.pop()}}r(qC,"arrayFilterFn");function jC(e){return()=>{e.sectionStack.push("arrayFindFn");let t=e.CONSUME(cc);e.SUBRULE(e.arrayValueIfAs,{ARGS:[t]}),e.sectionStack.pop()}}r(jC,"arrayFindFn");function WC(e){return()=>{e.sectionStack.push("arrayFindIndexFn");let t=e.CONSUME(pc);e.SUBRULE(e.arrayValueIfAs,{ARGS:[t]}),e.sectionStack.pop()}}r(WC,"arrayFindIndexFn");function KC(e){return()=>{e.sectionStack.push("arrayGroupByFn");let t=e.CONSUME(gc);e.CONSUME(P),e.SUBRULE(e.expressionFn),e.OPTION(()=>e.CONSUME(m)),e.CONSUME(B),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{by:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(KC,"arrayGroupByFn");function YC(e){return()=>{e.sectionStack.push("arrayHasFn");let t=e.CONSUME(uc);e.SUBRULE(e.arrayValueIfAs,{ARGS:[t]}),e.sectionStack.pop()}}r(YC,"arrayHasFn");function HC(e){return()=>{e.sectionStack.push("arrayIntersectionFn");let t=e.CONSUME(Ac);e.CONSUME(P),e.SUBRULE(e.expressionFn),e.OPTION(()=>e.CONSUME(m)),e.CONSUME(B),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{value:"[expression]",by:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(HC,"arrayIntersectionFn");function zC(e){return()=>{e.sectionStack.push("arrayMapFn");let t=e.CONSUME(Ec);e.CONSUME(P),e.SUBRULE(e.expressionFn),e.OPTION(()=>e.CONSUME(m)),e.CONSUME(B),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{by:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(zC,"arrayMapFn");function JC(e){return()=>{e.sectionStack.push("arrayMergeFn"),e.CONSUME(fc),e.SUBRULE(e.variableOnly),e.SUBRULE(e.arrayValueOnly),e.sectionStack.pop()}}r(JC,"arrayMergeFn");function XC(e){return()=>{e.sectionStack.push("arrayNoValueAs"),e.OPTION(()=>{e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")}])}),e.OPTION1(()=>e.CONSUME1(m)),e.CONSUME(A)}),e.CONSUME(At),e.SUBRULE(e.variableOnly),e.sectionStack.pop()}}r(XC,"arrayNoValueAs");function QC(e){return()=>{e.sectionStack.push("arrayPartitionFn");let t=e.CONSUME(Sc);e.SUBRULE(e.arrayValueIfAs,{ARGS:[t]}),e.sectionStack.pop()}}r(QC,"arrayPartitionFn");function ZC(e){return()=>{e.sectionStack.push("arrayPopFn"),e.CONSUME(mc),e.SUBRULE(e.variableOnly),e.SUBRULE(e.arrayNoValueAs),e.sectionStack.pop()}}r(ZC,"arrayPopFn");function $C(e){return()=>{e.sectionStack.push("arrayPushFn"),e.CONSUME(dc),e.SUBRULE(e.variableOnly),e.SUBRULE(e.arrayValueOnly),e.sectionStack.pop()}}r($C,"arrayPushFn");function eN(e){return()=>{e.sectionStack.push("arrayShiftFn"),e.CONSUME(hc),e.SUBRULE(e.variableOnly),e.SUBRULE(e.arrayNoValueAs),e.sectionStack.pop()}}r(eN,"arrayShiftFn");function tN(e){return()=>{e.sectionStack.push("arrayUnionFn");let t=e.CONSUME(Uc);e.CONSUME(P),e.SUBRULE(e.expressionFn),e.OPTION(()=>e.CONSUME(m)),e.CONSUME(B),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{value:"[expression]",by:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(tN,"arrayUnionFn");function rN(e){return()=>{e.sectionStack.push("arrayUnshiftFn"),e.CONSUME(Tc),e.SUBRULE(e.variableOnly),e.SUBRULE(e.arrayValueOnly),e.sectionStack.pop()}}r(rN,"arrayUnshiftFn");function oN(e){return(t,o={})=>{e.sectionStack.push("arrayValueIfAs");let n=!1;e.CONSUME(P),e.MANY(()=>e.CONSUME(m)),e.SUBRULE(e.expressionFn),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(B),e.OPTION(()=>{n=!0,e.CONSUME(wn),e.CONSUME1(P),e.SUBRULE1(e.expressionFn),e.CONSUME1(B)}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"description?":"[string]","disabled?":"[boolean]",...o}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),n||e.addWarning("`if (...)` conditional statement is missing",t),e.sectionStack.pop()}}r(oN,"arrayValueIfAs");function nN(e){return()=>{e.sectionStack.push("arrayValueOnly");let t=!1;e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>{t=!0,e.SUBRULE(e.valueFieldAttribute)},"ALT")},{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")}])}),t||e.SUBRULE(e.valueFieldAttribute),e.OPTION1(()=>e.CONSUME1(m)),e.CONSUME(A),e.sectionStack.pop()}}r(nN,"arrayValueOnly");function aN(e){return t=>{e.sectionStack.push("valueAttrOnly");let o=!1,n=!1,a=!1;e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>{o=!0,e.SUBRULE(e.valueFieldAttribute)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{GATE:r(()=>!a,"GATE"),ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")}])}),o||e.addMissingError(t,"{} is missing a stack clause"),e.OPTION1(()=>e.CONSUME1(m)),e.CONSUME(A),e.sectionStack.pop()}}r(aN,"valueAttrOnly");var iN=r(e=>{e.arrayEveryFn=e.RULE("arrayEveryFn",DC(e)),e.arrayFilterCountFn=e.RULE("arrayFilterCountFn",VC(e)),e.arrayFilterFn=e.RULE("arrayFilterFn",qC(e)),e.arrayFindFn=e.RULE("arrayFindFn",jC(e)),e.arrayFindIndexFn=e.RULE("arrayFindIndexFn",WC(e)),e.arrayHasFn=e.RULE("arrayHasFn",YC(e)),e.arrayMergeFn=e.RULE("arrayMergeFn",JC(e)),e.arrayNoValueAs=e.RULE("arrayNoValueAs",XC(e)),e.arrayPopFn=e.RULE("arrayPopFn",ZC(e)),e.arrayPushFn=e.RULE("arrayPushFn",$C(e)),e.arrayShiftFn=e.RULE("arrayShiftFn",eN(e)),e.arrayUnshiftFn=e.RULE("arrayUnshiftFn",rN(e)),e.arrayValueIfAs=e.RULE("arrayValueIfAs",oN(e)),e.arrayValueOnly=e.RULE("arrayValueOnly",nN(e)),e.valueAttrOnly=e.RULE("valueAttrOnly",aN(e)),e.arrayMapFn=e.RULE("arrayMapFn",zC(e)),e.arrayPartitionFn=e.RULE("arrayPartitionFn",QC(e)),e.arrayGroupByFn=e.RULE("arrayGroupByFn",KC(e)),e.arrayUnionFn=e.RULE("arrayUnionFn",tN(e)),e.arrayDifferenceFn=e.RULE("arrayDifferenceFn",GC(e)),e.arrayIntersectionFn=e.RULE("arrayIntersectionFn",HC(e))},"register");function sN(e){return()=>{e.sectionStack.push("array"),e.CONSUME(ac),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.arrayEveryFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayFilterCountFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayFilterFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayFindFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayFindIndexFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayHasFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayShiftFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayPopFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayUnshiftFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayPushFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayMergeFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayMapFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayPartitionFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayGroupByFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayUnionFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayDifferenceFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayIntersectionFn),"ALT")}]),e.sectionStack.pop()}}r(sN,"arrayFn");function lN(e){return()=>{e.sectionStack.push("cloudAlgoliaFn"),e.CONSUME(kc),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.cloudAlgoliaRequestFn),"ALT")}]),e.sectionStack.pop()}}r(lN,"cloudAlgoliaFn");function cN(e){return()=>{e.sectionStack.push("cloudAlgoliaRequestFn");let t=e.CONSUME(In);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"description?":"[string]","application_id?":"[expression]","api_key?":"[expression]",url:"[expression]","method?":["POST","GET"],payload:"[expression]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(cN,"cloudAlgoliaRequestFn");function pN(e){return()=>{e.sectionStack.push("cloudAwsFn"),e.CONSUME(Cc),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.cloudAwsS3Fn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudAwsOpenSearchFn),"ALT")}]),e.sectionStack.pop()}}r(pN,"cloudAwsFn");function uN(e){return()=>{e.sectionStack.push("cloudAwsOpenSearchFn"),e.CONSUME(Bc),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.cloudSearchDocumentFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudSearchQueryFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudSearchRequestFn),"ALT")}]),e.sectionStack.pop()}}r(uN,"cloudAwsOpenSearchFn");function fN(e){return()=>{e.sectionStack.push("cloudAwsS3Fn"),e.CONSUME(vc),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.cloudListDirectoryFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudSignUrlFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudUploadFileFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudDeleteFileFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudReadFileFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudGetFileInfoFn),"ALT")}]),e.sectionStack.pop()}}r(fN,"cloudAwsS3Fn");function mN(e){return()=>{e.sectionStack.push("cloudAzureFn"),e.CONSUME(yc),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.cloudStorageFn),"ALT")}]),e.sectionStack.pop()}}r(mN,"cloudAzureFn");function dN(e){return()=>{e.sectionStack.push("cloudDeleteFileFn"),e.CONSUME(Mc),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.sectionStack.pop()}}r(dN,"cloudDeleteFileFn");function hN(e){return()=>{e.sectionStack.push("cloudElasticSearchFn"),e.CONSUME(Nc),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.cloudSearchDocumentFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudSearchQueryFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudSearchRequestFn),"ALT")}]),e.sectionStack.pop()}}r(hN,"cloudElasticSearchFn");function TN(e){return()=>{e.sectionStack.push("cloudGetFileInfoFn");let t=e.CONSUME(Fc);e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(TN,"cloudGetFileInfoFn");function EN(e){return()=>{e.sectionStack.push("cloudGoogleFn"),e.CONSUME(Oc),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.cloudStorageFn),"ALT")}]),e.sectionStack.pop()}}r(EN,"cloudGoogleFn");function SN(e){return()=>{e.sectionStack.push("cloudListDirectoryFn");let t=e.CONSUME(Ic);e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(SN,"cloudListDirectoryFn");function gN(e){return()=>{e.sectionStack.push("cloudReadFileFn");let t=e.CONSUME(_c);e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(gN,"cloudReadFileFn");function xN(e){return()=>{e.sectionStack.push("cloudSearchDocumentFn");let t=e.CONSUME(Gc);e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(xN,"cloudSearchDocumentFn");function AN(e){return()=>{e.sectionStack.push("cloudSearchQueryFn");let t=e.CONSUME(Dc);e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(AN,"cloudSearchQueryFn");function UN(e){return()=>{e.sectionStack.push("cloudSearchRequestFn");let t=e.CONSUME(In);e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(UN,"cloudSearchRequestFn");function RN(e){return()=>{e.sectionStack.push("cloudSignUrlFn");let t=e.CONSUME(wc);e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(RN,"cloudSignUrlFn");function LN(e){return()=>{e.sectionStack.push("cloudStorageFn"),e.CONSUME(bc),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.cloudListDirectoryFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudSignUrlFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudUploadFileFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudDeleteFileFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudReadFileFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudGetFileInfoFn),"ALT")}]),e.sectionStack.pop()}}r(LN,"cloudStorageFn");function kN(e){return()=>{e.sectionStack.push("cloudUploadFileFn");let t=e.CONSUME(Pc);e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(kN,"cloudUploadFileFn");var ON=r(e=>{e.cloudAlgoliaFn=e.RULE("cloudAlgoliaFn",lN(e)),e.cloudAlgoliaRequestFn=e.RULE("cloudAlgoliaRequestFn",cN(e)),e.cloudAwsFn=e.RULE("cloudAwsFn",pN(e)),e.cloudAwsOpenSearchFn=e.RULE("cloudAwsOpenSearchFn",uN(e)),e.cloudAwsS3Fn=e.RULE("cloudAwsS3Fn",fN(e)),e.cloudAzureFn=e.RULE("cloudAzureFn",mN(e)),e.cloudDeleteFileFn=e.RULE("cloudDeleteFileFn",dN(e)),e.cloudElasticSearchFn=e.RULE("cloudElasticSearchFn",hN(e)),e.cloudGetFileInfoFn=e.RULE("cloudGetFileInfoFn",TN(e)),e.cloudGoogleFn=e.RULE("cloudGoogleFn",EN(e)),e.cloudListDirectoryFn=e.RULE("cloudListDirectoryFn",SN(e)),e.cloudReadFileFn=e.RULE("cloudReadFileFn",gN(e)),e.cloudSearchDocumentFn=e.RULE("cloudSearchDocumentFn",xN(e)),e.cloudSearchQueryFn=e.RULE("cloudSearchQueryFn",AN(e)),e.cloudSearchRequestFn=e.RULE("cloudSearchRequestFn",UN(e)),e.cloudSignUrlFn=e.RULE("cloudSignUrlFn",RN(e)),e.cloudStorageFn=e.RULE("cloudStorageFn",LN(e)),e.cloudUploadFileFn=e.RULE("cloudUploadFileFn",kN(e))},"register");function CN(e){return()=>{e.sectionStack.push("cloud"),e.CONSUME(Lc),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.cloudGoogleFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudAwsFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudElasticSearchFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudAzureFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudAlgoliaFn),"ALT")}]),e.sectionStack.pop()}}r(CN,"cloudFn");function NN(e){return(t={})=>{e.OR([{ALT:r(()=>e.CONSUME(Pn),"ALT")},{ALT:r(()=>e.CONSUME(Fp),"ALT")},{ALT:r(()=>e.SUBRULE(e.awaitFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.conditionalFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.forEachFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.forFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.functionRunFn),"ALT")},{GATE:r(()=>t.allowFunctionCalls,"GATE"),ALT:r(()=>e.SUBRULE(e.functionCallFn),"ALT")},{GATE:r(()=>t.allowFunctionCalls,"GATE"),ALT:r(()=>e.SUBRULE(e.taskCallFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.groupFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.returnFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.switchFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.whileFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.throwFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.tryCatchFn),"ALT")}]),e.sectionStack.pop()}}r(NN,"controlFn");function yN(e){let t=["ids","timeout"],o=["description","disabled"];return()=>{e.sectionStack.push("awaitFn");let n=e.CONSUME(Rp);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(yN,"awaitFn");function bN(e){return()=>{e.sectionStack.push("conditionalElifFn"),e.CONSUME(gp),e.CONSUME(P),e.MANY(()=>e.CONSUME(m)),e.SUBRULE(e.expressionFn),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(B),e.OPTION(()=>e.SUBRULE(e.nakedStackFn)),e.sectionStack.pop()}}r(bN,"conditionalElifFn");function _N(e){return()=>{e.sectionStack.push("conditionalElseFn"),e.CONSUME(Sp),e.SUBRULE(e.nakedStackFn),e.sectionStack.pop()}}r(_N,"conditionalElseFn");function MN(e){return()=>{let t=!1,o=!1,n=!1;e.sectionStack.push("conditionalFn");let a=e.CONSUME(Ep);e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>e.CONSUME(ie),"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.disabledFieldAttribute)},"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.SUBRULE(e.conditionalIfFn),e.MANY1(()=>{e.AT_LEAST_ONE1(()=>e.CONSUME3(m)),e.SUBRULE(e.conditionalElifFn)}),e.OPTION(()=>{e.AT_LEAST_ONE2(()=>e.CONSUME4(m)),e.SUBRULE(e.conditionalElseFn)})},"ALT")}])}),t||e.addMissingError(a,"{} is missing the if statement"),e.MANY2(()=>e.CONSUME1(m)),e.CONSUME(A),e.sectionStack.pop()}}r(MN,"conditionalFn");function FN(e){return()=>{e.sectionStack.push("conditionalIfFn"),e.CONSUME(wn),e.CONSUME(P),e.MANY(()=>e.CONSUME(m)),e.SUBRULE(e.expressionFn),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(B),e.OPTION(()=>e.SUBRULE(e.nakedStackFn)),e.sectionStack.pop()}}r(FN,"conditionalIfFn");function IN(e){return()=>{let t=!1;e.sectionStack.push("forEachFn"),e.CONSUME(Ap),e.OR([{ALT:r(()=>{e.CONSUME(L),e.CONSUME(Up)},"ALT")},{ALT:r(()=>{e.CONSUME(P),e.SUBRULE(e.expressionFn),e.CONSUME(B),e.OPTION(()=>{e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR1([{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")},{ALT:r(()=>{t=!0,e.CONSUME(Ct),e.CONSUME(At),e.SUBRULE(e.assignableVariableAs),e.OPTION1(()=>e.SUBRULE1(e.nakedStackFn))},"ALT")}])}),t||(e.CONSUME1(Ct),e.CONSUME1(At),e.SUBRULE(e.assignableVariableAs),e.OPTION2(()=>e.SUBRULE2(e.nakedStackFn))),e.MANY2(()=>e.CONSUME1(m)),e.CONSUME(A)})},"ALT")}]),e.sectionStack.pop()}}r(IN,"forEachFn");function vN(e){return()=>{let t=!1;e.sectionStack.push("forFn"),e.CONSUME(xp),e.CONSUME(P),e.SUBRULE(e.expressionFn),e.CONSUME(B),e.OPTION(()=>{e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")},{ALT:r(()=>{t=!0,e.CONSUME(Ct),e.CONSUME(At),e.SUBRULE(e.assignableVariableAs),e.OPTION1(()=>e.SUBRULE1(e.nakedStackFn))},"ALT")}])}),t||(e.CONSUME1(Ct),e.CONSUME1(At),e.SUBRULE(e.assignableVariableAs),e.OPTION2(()=>e.SUBRULE2(e.nakedStackFn))),e.MANY2(()=>e.CONSUME1(m)),e.CONSUME(A)}),e.sectionStack.pop()}}r(vN,"forFn");function wN(e){let t=[],o=["input","description","disabled"];return()=>{e.sectionStack.push("functionCallFn"),e.CONSUME(Hr),e.CONSUME(L);let n=e.CONSUME(du);e.OR([{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}]),e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o,{allowObject:["input"]}]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(wN,"functionCallFn");function PN(e){return()=>{e.sectionStack.push("functionRunFn"),e.CONSUME(Hr),e.CONSUME(L);let t=e.CONSUME(mu);e.OR([{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}]),e.OPTION(()=>{e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"input?":{"[string]?":"[expression]"},"description?":"[string]","disabled?":"[boolean]","runtime_mode?":["async-shared","async-dedicated"],"mock?":{"![string]":"[expression]"}}]})}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(PN,"functionRunFn");function BN(e){return()=>{let t=!1;e.sectionStack.push("groupFn"),e.CONSUME(_p),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")},{ALT:r(()=>{t=!0,e.SUBRULE(e.stackClause)},"ALT")}])}),t||e.SUBRULE(e.stackClause),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.sectionStack.pop()}}r(BN,"groupFn");function GN(e){return()=>{e.sectionStack.push("preconditionFn");let t=e.CONSUME(Sm);e.CONSUME(P),e.SUBRULE(e.expressionFn),e.CONSUME(B),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"description?":"[string]","disabled?":"[boolean]","payload?":"[expression]","error?":"[expression]","error_type?":["standard","notfound","accessdenied","toomanyrequests","unauthorized","badrequest","inputerror"]}]}),e.sectionStack.pop()}}r(GN,"preconditionFn");function DN(e){let t=["value"],o=["description","disabled"];return()=>{e.sectionStack.push("return");let n=e.CONSUME(Op);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(DN,"returnFn");function VN(e){return()=>{e.sectionStack.push("switchCaseFn"),e.CONSUME(Np),e.CONSUME(P),e.SUBRULE(e.expressionFn),e.CONSUME(B),e.OPTION(()=>e.SUBRULE(e.nakedStackFn)),e.OPTION1(()=>e.CONSUME(Pn)),e.sectionStack.pop()}}r(VN,"switchCaseFn");function qN(e){return()=>{e.sectionStack.push("switchDefaultFn"),e.CONSUME(yp),e.SUBRULE(e.nakedStackFn),e.sectionStack.pop()}}r(qN,"switchDefaultFn");function jN(e){return()=>{e.sectionStack.push("switchFn"),e.CONSUME(Cp),e.CONSUME(P),e.SUBRULE(e.expressionFn),e.CONSUME(B),e.OPTION(()=>{e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")},{ALT:r(()=>{e.MANY1(()=>{e.MANY3(()=>e.CONSUME3(m)),e.SUBRULE(e.switchCaseFn)})},"ALT")}])}),e.OPTION1(()=>{e.MANY4(()=>e.CONSUME4(m)),e.SUBRULE(e.switchDefaultFn)}),e.MANY2(()=>e.CONSUME1(m)),e.CONSUME(A)}),e.sectionStack.pop()}}r(jN,"switchFn");function WN(e){let t=[],o=["description","disabled"];return()=>{e.sectionStack.push("taskCallFn"),e.CONSUME(ha),e.CONSUME(L);let n=e.CONSUME(zf);e.OR([{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}]),e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(WN,"taskCallFn");function KN(e){let t=["value","name"],o=["description","disabled"];return()=>{e.sectionStack.push("throw");let n=e.CONSUME(Mp);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(KN,"throwFn");function YN(e){return()=>{let t=!1,o=!1;e.sectionStack.push("tryCatchFn"),e.CONSUME(Lp),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")},{ALT:r(()=>{t=!0,e.CONSUME(oi),e.OPTION(()=>e.SUBRULE(e.nakedStackFn))},"ALT")},{ALT:r(()=>{o=!0,e.CONSUME(ni),e.sectionStack.push("catchFn"),e.OPTION1(()=>e.SUBRULE1(e.nakedStackFn)),e.sectionStack.pop()},"ALT")},{ALT:r(()=>{e.CONSUME(kp),e.OPTION2(()=>e.SUBRULE2(e.nakedStackFn))},"ALT")}])}),t||(e.CONSUME(oi),e.SUBRULE(e.nakedStackFn)),o||(e.CONSUME(ni),e.SUBRULE(e.nakedStackFn)),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.sectionStack.pop()}}r(YN,"tryCatchFn");function HN(e){return()=>{let t=!1;e.sectionStack.push("whileFn"),e.CONSUME(bp),e.CONSUME(P),e.MANY(()=>e.CONSUME(m)),e.SUBRULE(e.expressionFn),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(B),e.OPTION(()=>{e.CONSUME(x),e.MANY2(()=>{e.AT_LEAST_ONE(()=>e.CONSUME2(m)),e.OR([{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")},{ALT:r(()=>{t=!0,e.CONSUME(Ct),e.OPTION1(()=>e.SUBRULE(e.nakedStackFn))},"ALT")}])}),t||(e.CONSUME(Ct),e.SUBRULE(e.nakedStackFn)),e.MANY3(()=>e.CONSUME3(m)),e.CONSUME(A)}),e.sectionStack.pop()}}r(HN,"whileFn");var zN=r(e=>{e.awaitFn=e.RULE("awaitFn",yN(e)),e.conditionalElifFn=e.RULE("conditionalElifFn",bN(e)),e.conditionalElseFn=e.RULE("conditionalElseFn",_N(e)),e.conditionalFn=e.RULE("conditionalFn",MN(e)),e.conditionalIfFn=e.RULE("conditionalIfFn",FN(e)),e.forEachFn=e.RULE("forEachFn",IN(e)),e.forFn=e.RULE("forFn",vN(e)),e.functionRunFn=e.RULE("functionRunFn",PN(e)),e.functionCallFn=e.RULE("functionCallFn",wN(e)),e.taskCallFn=e.RULE("taskCallFn",WN(e)),e.groupFn=e.RULE("groupFn",BN(e)),e.preconditionFn=e.RULE("preconditionFn",GN(e)),e.returnFn=e.RULE("returnFn",DN(e)),e.switchCaseFn=e.RULE("switchCaseFn",VN(e)),e.switchDefaultFn=e.RULE("switchDefaultFn",qN(e)),e.switchFn=e.RULE("switchFn",jN(e)),e.throwFn=e.RULE("throwFn",KN(e)),e.tryCatchFn=e.RULE("tryCatchFn",YN(e)),e.whileFn=e.RULE("whileFn",HN(e))},"register");var qe={name:"[string]","input?":{"[string]":"[expression]"},"as?":"[string]","output?":["[string]"]};qe["addon?"]=[qe];function JN(e){return()=>{e.sectionStack.push("dbAddFn");let t=e.CONSUME(Gn);e.OR({DEF:[{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{data:{"[string]":"[expression]"},"description?":"[string]","disabled?":"[boolean]","addon?":[qe],"mock?":{"![string]":"[expression]"},"output?":["[string]"]}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(JN,"dbAddFn");function XN(e){return t=>{e.sectionStack.push("dbAddonAttr"),e.SUBRULE(e.schemaFn,{ARGS:[t,[qe]]}),e.sectionStack.pop()}}r(XN,"dbAddonAttr");function QN(e){return()=>{e.sectionStack.push("dbAddOrEditFn");let t=e.CONSUME(zp);e.OR({DEF:[{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{field_name:"[expression]",field_value:"[expression]",data:{"[string]":"[expression]"},"description?":"[string]","disabled?":"[boolean]","addon?":[qe],"mock?":{"![string]":"[expression]"}}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(QN,"dbAddOrEditFn");function ZN(e){return()=>{e.sectionStack.push("dbBulkAddFn");let t=e.CONSUME(Gn);e.OR({DEF:[{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"});let o={};e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"items?":"[expression]","allow_id_field?":"[boolean]","description?":"[string]","disabled?":"[boolean]"},o]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(ZN,"dbBulkAddFn");function $N(e){return()=>{e.sectionStack.push("dbBulkDeleteFn");let t=e.CONSUME(Xp);e.OR({DEF:[{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"where?":"[query]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r($N,"dbBulkDeleteFn");function ey(e){return()=>{e.sectionStack.push("db.bulk"),e.CONSUME(nu),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.dbBulkDeleteFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbBulkUpdateFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbBulkPatchFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbBulkAddFn),"ALT")}]),e.sectionStack.pop()}}r(ey,"dbBulkFn");function ty(e){return()=>{e.sectionStack.push("dbBulkPatchFn");let t=e.CONSUME(Dn);e.OR({DEF:[{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"items?":"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(ty,"dbBulkPatchFn");function ry(e){return()=>{e.sectionStack.push("dbBulkUpdateFn");let t=e.CONSUME(Zp);e.OR({DEF:[{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"items?":"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(ry,"dbBulkUpdateFn");function oy(e){return()=>{e.sectionStack.push("dbDelFn");let t=e.CONSUME(Jp);e.OR({DEF:[{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{field_name:"[expression]",field_value:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.sectionStack.pop()}}r(oy,"dbDelFn");function ny(e){return()=>{e.sectionStack.push("dbDirectQueryFn");let t=e.CONSUME(Vn);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{sql:"[expression]","response_type?":["list","single"],"parser?":["template_engine","prepared"],"description?":"[string]","disabled?":"[boolean]","arg*":"[expression]","mock?":{"![string]":"[expression]"}}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(ny,"dbDirectQueryFn");function ay(e){return()=>{e.sectionStack.push("dbEditFn");let t=e.CONSUME(Qp);e.OR({DEF:[{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{field_name:"[expression]",field_value:"[expression]",data:{"[string]":"[expression]"},"description?":"[string]","disabled?":"[boolean]","output?":["[string]"],"addon?":[qe],"mock?":{"![string]":"[expression]"}}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(ay,"dbEditFn");function iy(e){return()=>{e.sectionStack.push("dbExternalDirectQueryFn");let t=e.CONSUME(Vn);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{sql:"[expression]",response_type:["list","single"],connection_string:"[expression]","description?":"[string]","disabled?":"[boolean]","arg*":"[expression]","mock?":{"![string]":"[expression]"}}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(iy,"dbExternalDirectQueryFn");function sy(e){return()=>{e.sectionStack.push("dbExternalFn"),e.CONSUME(au),e.CONSUME(L),e.OR([{ALT:r(()=>e.CONSUME(iu),"ALT")},{ALT:r(()=>e.CONSUME(su),"ALT")},{ALT:r(()=>e.CONSUME(cu),"ALT")},{ALT:r(()=>e.CONSUME(lu),"ALT")}]),e.CONSUME1(L),e.SUBRULE(e.dbExternalDirectQueryFn),e.sectionStack.pop()}}r(sy,"dbExternalFn");function ly(e){return()=>{e.sectionStack.push("dbGetFn");let t=e.CONSUME(Hp);e.OR({DEF:[{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{field_name:"[expression]",field_value:"[expression]","description?":"[string]","disabled?":"[boolean]","output?":["[string]"],"lock?":"[boolean]","addon?":[qe],"mock?":{"![string]":"[expression]"}}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(ly,"dbGetFn");function cy(e){return()=>{e.sectionStack.push("dbHasFn");let t=e.CONSUME($p);e.OR({DEF:[{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{field_name:"[expression]",field_value:"[expression]","description?":"[string]","disabled?":"[boolean]","mock?":{"![string]":"[expression]"}}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(cy,"dbHasFn");function py(e){return()=>{e.sectionStack.push("dbPatchFn");let t=e.CONSUME(Dn);e.OR({DEF:[{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{field_name:"[expression]",field_value:"[expression]",data:"[expression]","description?":"[string]","disabled?":"[boolean]","addon?":[qe],"mock?":{"![string]":"[expression]"}}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(py,"dbPatchFn");function uy(e){return()=>{e.sectionStack.push("dbQueryFn");let t=e.CONSUME(Yp);e.OR([{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}]),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"eval?":{"[string]":"[query]"},"return?":{type:["list","stream","exists","count","single","aggregate"],"paging?":{"page?":"[expression]","per_page?":"[expression]","offset?":"[expression]","totals?":"[boolean]","metadata?":"[boolean]"},"distinct?":["yes","no"],"group?":{"[string]":"[query]"},"eval?":{"[string]":"[expression]"}},"join?":{"[string]":{table:"[string]","type?":["inner","left","right"],"where?":"[query]"}},"lock?":"[boolean]","disabled?":"[boolean]","description?":"[string]","mock?":{"![string]":"[expression]"},"addon?":[qe],"sort?":{"[string]":["asc","desc","rand"]},"override_sort?":"[expression]","output?":["[string]"],"where?":"[query]","additional_where?":"[query]"}]});let o=e.sectionStack.includes("addonDeclaration");e.OR1([{GATE:r(()=>!o,"GATE"),ALT:r(()=>e.SUBRULE(e.asVariable,{ARGS:[t]}),"ALT")},{GATE:r(()=>o,"GATE"),ALT:r(()=>{},"ALT")}]),e.sectionStack.pop()}}r(uy,"dbQueryFn");function fy(e){return()=>{let t=[],o=["description","disabled","path"];e.sectionStack.push("dbSchemaFn");let n=e.CONSUME(eu);e.OR([{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}]),e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(fy,"dbSchemaFn");function my(e){let t=["value"],o=["description","disabled"];return()=>{e.sectionStack.push("dbSetDatasourceFn");let n=e.CONSUME(ou);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(my,"dbSetDatasourceFn");function dy(e){return()=>{let t=!1;e.sectionStack.push("dbTransactionFn"),e.CONSUME(tu),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")},{ALT:r(()=>{t=!0,e.SUBRULE(e.stackClause)},"ALT")}])}),t||e.SUBRULE(e.stackClause),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.sectionStack.pop()}}r(dy,"dbTransactionFn");function hy(e){return()=>{e.sectionStack.push("dbTruncateFn");let t=e.CONSUME(ru);e.OR({DEF:[{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"reset?":"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.sectionStack.pop()}}r(hy,"dbTruncateFn");var Ty=r(e=>{e.dbAddFn=e.RULE("dbAddFn",JN(e)),e.dbBulkFn=e.RULE("dbBulkFn",ey(e)),e.dbBulkAddFn=e.RULE("dbBulkAddFn",ZN(e)),e.dbBulkDeleteFn=e.RULE("dbBulkDeleteFn",$N(e)),e.dbBulkUpdateFn=e.RULE("dbBulkUpdateFn",ry(e)),e.dbBulkPatchFn=e.RULE("dbBulkPatchFn",ty(e)),e.dbDelFn=e.RULE("dbDelFn",oy(e)),e.dbDirectQueryFn=e.RULE("dbDirectQueryFn",ny(e)),e.dbEditFn=e.RULE("dbEditFn",ay(e)),e.dbExternalDirectQueryFn=e.RULE("dbExternalDirectQueryFn",iy(e)),e.dbExternalFn=e.RULE("dbExternalFn",sy(e)),e.dbGetFn=e.RULE("dbGetFn",ly(e)),e.dbHasFn=e.RULE("dbHasnpmFn",cy(e)),e.dbPatchFn=e.RULE("dbPatchFn",py(e)),e.dbQueryFn=e.RULE("dbQueryFn",uy(e)),e.dbSchemaFn=e.RULE("dbSchemaFn",fy(e)),e.dbSetDatasourceFn=e.RULE("dbSetDatasourceFn",my(e)),e.dbTransactionFn=e.RULE("dbTransactionFn",dy(e)),e.dbTruncateFn=e.RULE("dbTruncateFn",hy(e)),e.dbAddOrEditFn=e.RULE("dbAddOrEditFn",QN(e)),e.dbAddonAttr=e.RULE("dbAddonAttr",XN(e))},"register");function Ey(e){return()=>{e.sectionStack.push("db"),e.CONSUME(Bn),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.dbExternalFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbGetFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbHasFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbEditFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbDelFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbAddFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbDirectQueryFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbSetDatasourceFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbQueryFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbSchemaFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbTruncateFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbTransactionFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbPatchFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbBulkFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbAddOrEditFn),"ALT")}]),e.sectionStack.pop()}}r(Ey,"dbFn");function Sy(e){let t=["value"],o=["description","disabled"];return()=>{e.sectionStack.push("debugLog");let n=e.CONSUME(fu);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(Sy,"debugLogFn");function gy(e){let t=["value"],o=["description","disabled"];return()=>{e.sectionStack.push("debugStop");let n=e.CONSUME(uu);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(gy,"debugStopFn");var xy=r(e=>{e.debugLogFn=e.RULE("debugLogFn",Sy(e)),e.debugStopFn=e.RULE("debugStopFn",gy(e))},"register");function Ay(e){return()=>{e.sectionStack.push("debug"),e.CONSUME(pu),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.debugLogFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.debugStopFn),"ALT")}]),e.sectionStack.pop()}}r(Ay,"debugFn");function Uy(e){let t=["min","max"],o=[];return()=>{e.sectionStack.push("unitExpectToBeWithinFn");let n=e.CONSUME(ia);e.CONSUME(P),e.CONSUME(Xr),e.MANY(()=>{e.CONSUME(L),e.CONSUME(i)}),e.CONSUME(B),e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(Uy,"unitExpectToBeWithinFn");function Ry(e){return()=>{e.sectionStack.push("unitExpectToThrowFn");let t=e.CONSUME(sa);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"exception?":"[string]"}]}),e.sectionStack.pop()}}r(Ry,"unitExpectToThrowFn");function Ly(e){return()=>{e.sectionStack.push("unitExpectWithArgumentsFn");let t=e.OR([{ALT:r(()=>e.CONSUME(oa),"ALT")},{ALT:r(()=>e.CONSUME(Zn),"ALT")},{ALT:r(()=>e.CONSUME($n),"ALT")},{ALT:r(()=>e.CONSUME(ea),"ALT")},{ALT:r(()=>e.CONSUME(ta),"ALT")},{ALT:r(()=>e.CONSUME(ra),"ALT")},{ALT:r(()=>e.CONSUME(na),"ALT")},{ALT:r(()=>e.CONSUME(aa),"ALT")}]);e.CONSUME(P),e.CONSUME(Xr),e.MANY(()=>{e.CONSUME(L),e.CONSUME(i)}),e.CONSUME(B),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{value:"[constant]"}]}),e.sectionStack.pop()}}r(Ly,"unitExpectWithArgumentsFn");function ky(e){return()=>{e.sectionStack.push("unitExpectWithoutArgumentsFn"),e.OR([{ALT:r(()=>e.CONSUME(jn),"ALT")},{ALT:r(()=>e.CONSUME(Wn),"ALT")},{ALT:r(()=>e.CONSUME(Kn),"ALT")},{ALT:r(()=>e.CONSUME(Yn),"ALT")},{ALT:r(()=>e.CONSUME(Hn),"ALT")},{ALT:r(()=>e.CONSUME(zn),"ALT")},{ALT:r(()=>e.CONSUME(Jn),"ALT")},{ALT:r(()=>e.CONSUME(Xn),"ALT")},{ALT:r(()=>e.CONSUME(Qn),"ALT")}]),e.CONSUME(P),e.CONSUME(Xr),e.MANY(()=>{e.CONSUME(L),e.CONSUME(i)}),e.CONSUME(B),e.sectionStack.pop()}}r(ky,"unitExpectWithoutArgumentsFn");function Oy(e){let t=["min","max"],o=["description","disabled"];return()=>{e.sectionStack.push("workflowExpectToBeWithinFn");let n=e.CONSUME(ia);e.CONSUME(P),e.SUBRULE(e.expressionFn),e.CONSUME(B),e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(Oy,"workflowExpectToBeWithinFn");function Cy(e){return()=>{e.sectionStack.push("workflowExpectToThrowFn");let t=e.CONSUME(sa);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"stack?":"[test-stack]","exception?":"[string]"}]}),e.sectionStack.pop()}}r(Cy,"workflowExpectToThrowFn");function Ny(e){let t=["value"],o=["description","disabled"];return()=>{e.sectionStack.push("workflowExpectWithArgumentsFn");let n=e.OR([{ALT:r(()=>e.CONSUME(oa),"ALT")},{ALT:r(()=>e.CONSUME(Zn),"ALT")},{ALT:r(()=>e.CONSUME($n),"ALT")},{ALT:r(()=>e.CONSUME(ea),"ALT")},{ALT:r(()=>e.CONSUME(ta),"ALT")},{ALT:r(()=>e.CONSUME(ra),"ALT")},{ALT:r(()=>e.CONSUME(na),"ALT")},{ALT:r(()=>e.CONSUME(aa),"ALT")}]);e.CONSUME(P),e.SUBRULE(e.expressionFn),e.CONSUME(B),e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(Ny,"workflowExpectWithArgumentsFn");function yy(e){return()=>{e.sectionStack.push("workflowExpectWithoutArgumentsFn");let t=e.OR([{ALT:r(()=>e.CONSUME(jn),"ALT")},{ALT:r(()=>e.CONSUME(Wn),"ALT")},{ALT:r(()=>e.CONSUME(Kn),"ALT")},{ALT:r(()=>e.CONSUME(Yn),"ALT")},{ALT:r(()=>e.CONSUME(Hn),"ALT")},{ALT:r(()=>e.CONSUME(zn),"ALT")},{ALT:r(()=>e.CONSUME(Jn),"ALT")},{ALT:r(()=>e.CONSUME(Xn),"ALT")},{ALT:r(()=>e.CONSUME(Qn),"ALT")}]);e.CONSUME(P),e.SUBRULE(e.expressionFn),e.CONSUME(B),e.SUBRULE(e.functionAttrReq,{ARGS:[t,[],["description","disabled"]]}),e.sectionStack.pop()}}r(yy,"workflowExpectWithoutArgumentsFn");var by=r(e=>{e.unitExpectWithArgumentsFn=e.RULE("unitExpectWithArgumentsFn",Ly(e)),e.unitExpectWithoutArgumentsFn=e.RULE("unitExpectWithoutArgumentsFn",ky(e)),e.unitExpectToThrowFn=e.RULE("unitExpectToThrowFn",Ry(e)),e.unitExpectToBeWithinFn=e.RULE("unitExpectToBeWithinFn",Uy(e)),e.workflowExpectWithArgumentsFn=e.RULE("workflowExpectWithArgumentsFn",Ny(e)),e.workflowExpectWithoutArgumentsFn=e.RULE("workflowExpectWithoutArgumentsFn",yy(e)),e.workflowExpectToThrowFn=e.RULE("workflowExpectToThrowFn",Cy(e)),e.workflowExpectToBeWithinFn=e.RULE("workflowExpectToBeWithinFn",Oy(e))},"register");function _y(e){return()=>{let t=!1;e.sectionStack.push("allMathFn"),e.OR([{ALT:r(()=>e.CONSUME(Tu),"ALT")},{ALT:r(()=>e.CONSUME(Eu),"ALT")},{ALT:r(()=>e.CONSUME(Su),"ALT")},{ALT:r(()=>e.CONSUME(gu),"ALT")},{ALT:r(()=>e.CONSUME(xu),"ALT")},{ALT:r(()=>{e.CONSUME(Au),e.CONSUME(L),e.OR1([{ALT:r(()=>e.CONSUME(Uu),"ALT")},{ALT:r(()=>e.CONSUME(Ru),"ALT")},{ALT:r(()=>e.CONSUME(Lu),"ALT")}])},"ALT")}]),e.SUBRULE(e.assignableVariableProperty),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>{t=!0,e.SUBRULE(e.valueFieldAttribute)},"ALT")},{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")}])}),t||e.SUBRULE(e.valueFieldAttribute),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.sectionStack.pop()}}r(_y,"allMathFn");var My=r(e=>{e.allMathFn=e.RULE("allMathFn",_y(e))},"register");function Fy(e){return()=>{e.sectionStack.push("math"),e.CONSUME(hu),e.CONSUME(L),e.SUBRULE(e.allMathFn),e.sectionStack.pop()}}r(Fy,"mathFn");function Iy(e){return()=>{e.sectionStack.push("middlewareCallFn"),e.CONSUME(la),e.CONSUME(L);let t=e.CONSUME(Yr);e.OR([{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}]),e.OPTION(()=>{e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{input:{vars:"[expression]",type:"[expression]"},"mock?":{"![string]":"[expression]"},"description?":"[string]","disabled?":"[boolean]"}]})}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Iy,"middlewareCallFn");function vy(e){return()=>{let t=["value"],o=["description","disabled"];e.sectionStack.push("objectEntriesFn");let n=e.CONSUME(Pu);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(vy,"objectEntriesFn");function wy(e){return()=>{let t=["value"],o=["description","disabled"];e.sectionStack.push("objectKeysFn");let n=e.CONSUME(Bu);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(wy,"objectKeysFn");function Py(e){return()=>{let t=["value"],o=["description","disabled"];e.sectionStack.push("objectValuesFn");let n=e.CONSUME(Gu);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(Py,"objectValuesFn");var By=r(e=>{e.objectEntriesFn=e.RULE("objectEntriesFn",vy(e)),e.objectKeysFn=e.RULE("objectKeysFn",wy(e)),e.objectValuesFn=e.RULE("objectValuesFn",Py(e))},"register");function Gy(e){return()=>{e.sectionStack.push("object"),e.CONSUME(wu),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.objectEntriesFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.objectKeysFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.objectValuesFn),"ALT")}]),e.sectionStack.pop()}}r(Gy,"objectFn");function Dy(e){return()=>{e.sectionStack.push("redisCountFn");let t=e.CONSUME(zu);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Dy,"redisCountFn");function Vy(e){return()=>{e.sectionStack.push("redisDecrFn");let t=e.CONSUME(Ju);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]",by:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Vy,"redisDecrFn");function qy(e){return()=>{e.sectionStack.push("redisDelFn");let t=e.CONSUME(Xu);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.sectionStack.pop()}}r(qy,"redisDelFn");function jy(e){return()=>{e.sectionStack.push("redisGetFn");let t=e.CONSUME(Qu);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(jy,"redisGetFn");function Wy(e){return()=>{e.sectionStack.push("redisHasFn");let t=e.CONSUME(Zu);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Wy,"redisHasFn");function Ky(e){return()=>{e.sectionStack.push("redisIncrFn");let t=e.CONSUME($u);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]",by:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Ky,"redisIncrFn");function Yy(e){return()=>{e.sectionStack.push("redisKeysFn");let t=e.CONSUME(ef);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{search:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Yy,"redisKeysFn");function Hy(e){return()=>{e.sectionStack.push("redisPopFn");let t=e.CONSUME(tf);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Hy,"redisPopFn");function zy(e){return()=>{e.sectionStack.push("redisPushFn");let t=e.CONSUME(rf);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]",value:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(zy,"redisPushFn");function Jy(e){return()=>{e.sectionStack.push("redisRangeFn");let t=e.CONSUME(of);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]",start:"[expression]",stop:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Jy,"redisRangeFn");function Xy(e){return()=>{e.sectionStack.push("redisRateLimitFn");let t=e.CONSUME(nf);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]",max:"[expression]",ttl:"[expression]",error:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Xy,"redisRateLimitFn");function Qy(e){return()=>{e.sectionStack.push("redisRemoveFn");let t=e.CONSUME(af);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]",value:"[expression]",count:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.sectionStack.pop()}}r(Qy,"redisRemoveFn");function Zy(e){return()=>{e.sectionStack.push("redisSetFn");let t=e.CONSUME(sf);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]",data:"[expression]",ttl:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.sectionStack.pop()}}r(Zy,"redisSetFn");function $y(e){return()=>{e.sectionStack.push("redisShiftFn");let t=e.CONSUME(lf);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r($y,"redisShiftFn");function eb(e){return()=>{e.sectionStack.push("redisUnshiftFn");let t=e.CONSUME(cf);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]",value:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(eb,"redisUnshiftFn");var tb=r(e=>{e.redisCountFn=e.RULE("redisCountFn",Dy(e)),e.redisDecrFn=e.RULE("redisDecrFn",Vy(e)),e.redisDelFn=e.RULE("redisDelFn",qy(e)),e.redisGetFn=e.RULE("redisGetFn",jy(e)),e.redisHasFn=e.RULE("redisHasFn",Wy(e)),e.redisIncrFn=e.RULE("redisIncrFn",Ky(e)),e.redisKeysFn=e.RULE("redisKeysFn",Yy(e)),e.redisPopFn=e.RULE("redisPopFn",Hy(e)),e.redisPushFn=e.RULE("redisPushFn",zy(e)),e.redisRangeFn=e.RULE("redisRangeFn",Jy(e)),e.redisRateLimitFn=e.RULE("redisRateLimitFn",Xy(e)),e.redisRemoveFn=e.RULE("redisRemoveFn",Qy(e)),e.redisSetFn=e.RULE("redisSetFn",Zy(e)),e.redisShiftFn=e.RULE("redisShiftFn",$y(e)),e.redisUnshiftFn=e.RULE("redisUnshiftFn",eb(e))},"register");function rb(e){return()=>{e.sectionStack.push("redis"),e.CONSUME(Hu),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.redisDelFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisSetFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisGetFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisHasFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisIncrFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisDecrFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisKeysFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisPushFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisUnshiftFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisPopFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisShiftFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisRemoveFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisCountFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisRangeFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisRateLimitFn),"ALT")}]),e.sectionStack.pop()}}r(rb,"redisFn");function ob(e){return(t,o,n={},a)=>{let s=!1;n.value=[],e.CONSUME(H),e.MANY1(()=>e.CONSUME(m)),e.MANY(()=>{let l={};e.SUBRULE(e.schemaFn,{ARGS:[t,Fl(o),l,a]}),s&&e.addInvalidValueError("Expected a comma, a new line or closing bracket"),n.value.push(l),s=!0,e.OPTION(()=>(s=!1,e.CONSUME1(le))),e.MANY2(()=>{s=!1,e.CONSUME1(m)})}),e.CONSUME(z)}}r(ob,"schemaParseArrayFn");function Yh(e){return typeof e!="object"||!Array.isArray(e)?!1:e.length==1}r(Yh,"schemaExpectArray");function Wt(e){return!e||typeof e!="string"?!1:e.endsWith("?")||e.endsWith("*")}r(Wt,"isOptionalAttribute");function xd(e){return!e||typeof e!="string"?!1:e.endsWith("*")}r(xd,"isMultiAttribute");function To(e){return!e||typeof e!="string"?!1:e.startsWith("!")}r(To,"canBeDisabledAttribute");function it(e){return!e||typeof e!="string"?!1:(Wt(e)&&(e=e.slice(0,-1)),To(e)&&(e=e.slice(1)),e.startsWith("[")&&e.endsWith("]"))}r(it,"isSchemaGenericType");function Iz(e){return To(e)&&(e=e.slice(1)),Wt(e)&&(e=e.slice(0,-1)),e}r(Iz,"getSchemaConstantValue");function nb(e){return it(e)?(Wt(e)&&(e=e.slice(0,-1)),To(e)&&(e=e.slice(1)),e.slice(1,-1)):null}r(nb,"getSchemaGenericTypeName");function st(e,t){return it(e)?t.includes(nb(e)):!1}r(st,"schemaExpectOneOf");var Ad=r((e,t)=>{for(let o of t)if(it(o))switch(nb(o)){case"string":if(typeof e=="string")return o;break;case"number":if(!isNaN(Number(e)))return o;break;case"boolean":if(e==="true"||e==="false")return o;break}else{if(Iz(o)===e)return o;if(e===o)return o}return!1},"valueMatchRequirements");function ab(e){return(t,o,n={})=>{let a=null,s=e.OR({IGNORE_AMBIGUITIES:!0,DEF:[{ALT:r(()=>(a="string",e.CONSUME(E)),"ALT")},{ALT:r(()=>(a="string",e.CONSUME(Ve)),"ALT")},{ALT:r(()=>(a="string",e.CONSUME(qt)),"ALT")},{ALT:r(()=>(a="number",e.CONSUME(te)),"ALT")},{ALT:r(()=>(a="number",e.CONSUME(we)),"ALT")},{ALT:r(()=>(a="boolean",e.CONSUME(Oe)),"ALT")},{ALT:r(()=>(a="boolean",e.CONSUME(Ce)),"ALT")},{ALT:r(()=>(a="null",e.CONSUME(jt)),"ALT")}]});n.value=s,e.ACTION(()=>{ib(a,s.image,o)||e.addExpectedValueError(t,o)})}}r(ab,"schemaParseConstantFn");function ib(e,t,o){let n=o!==null?o.toString():o;if(j(o))return ho(o,a=>ib(e,t,a));switch(e){case"string":return(t.startsWith('"""')||t.startsWith("'''"))&&(t=t.slice(4,-4).trim()),(t.startsWith('"')||t.startsWith("'"))&&(t=t.slice(1,-1)),t===n;case"number":case"boolean":return t===n;case"null":return n===null;default:throw new Error(`schemaParseConstantFn called with non-constant attribute: ${o}`)}}r(ib,"matchValueToSchema");function Hh(e){return it(e)?!1:typeof e=="string"||typeof e=="number"||typeof e=="boolean"||e===null}r(Hh,"schemaExpectConstant");function sb(e){return(t,o,n={})=>{let[a,s]=Bh(o,it);e.ACTION(()=>{if(s.length>0&&a.length>0)throw new Error("schemaParseEnumFn does not support mixing constant and immutable types in the same enum, received: "+JSON.stringify(o))}),e.OR({IGNORE_AMBIGUITIES:!0,DEF:[{GATE:r(()=>s.length>0,"GATE"),ALT:r(()=>e.SUBRULE(e.schemaParseConstantFn,{ARGS:[t,s,n]}),"ALT")},{GATE:r(()=>a.length>0,"GATE"),ALT:r(()=>e.SUBRULE(e.schemaParseImmutableFn,{ARGS:[t,a,n]}),"ALT")}]})}}r(sb,"schemaParseEnumFn");function zh(e){return!!(j(e)&&e.length>1)}r(zh,"schemaExpectEnum");function lb(e){return(t,o,n={},a)=>{let s=!1,l=null,c=xt(o),p=[...c],f=[];if(e.ACTION(()=>{if(c.length>1&&ho(c,d=>it(d)))throw new Error("schemaParseObjectFn supports only one generic type when multiple keys are defined")}),e.CONSUME(x),e.MANY(()=>{e.MANY1(()=>{s=!1,e.CONSUME(m)}),s&&e.addInvalidValueError(l,"Expected a comma, a new line or closing bracket");let d=e.OPTION1(()=>e.CONSUME(Ie)),h,T=e.OR([{ALT:r(()=>{h=e.CONSUME(i);let U=[h];return e.MANY3(()=>{U.push(e.CONSUME(L)),U.push(e.CONSUME1(i))}),U.map(O=>O.image).join(".")},"ALT")},{ALT:r(()=>e.CONSUME(E).image.slice(1,-1),"ALT")}]),S=Ad(T,c);S?d&&!To(S)&&e.addInvalidValueError(d,`The key '${T}' cannot be disabled`):e.addInvalidValueError(h,`The key '${T}' is not valid in this context`),f.includes(T)&&!xd(S)?e.addInvalidValueError(h,`Duplicate key '${T}' found`):(f.push(T),n[T]={key:h,value:null}),p.splice(p.indexOf(S),1),e.CONSUME(xe);let R=fo(o,S,null);e.SUBRULE(e.schemaFn,{ARGS:[h,R,n[T],a]}),s=!0,e.OPTION(()=>{s=!1,e.CONSUME1(le)}),e.MANY2(()=>{s=!1,e.CONSUME1(m)})}),e.CONSUME(A),p.length){let d=p.filter(h=>!Wt(h));d.length>1?e.addMissingError(l||t,`{} is missing the following required entries: ${d.join(", ")}`):d.length===1&&(it(d[0])?e.addMissingError(l||t,"{} requires a least one entry"):e.addMissingError(l||t,`{} is missing required key '${d[0]}'`))}return{foo:"foo-bar"}}}r(lb,"schemaParseObjectFn");function Jh(e){return Ul(e)}r(Jh,"schemaExpectObject");var vz=r(e=>st(e,["string","number","boolean","timestamp","null"])?j(e)?`Expected one of the following types: ${e.join(", ")}`:`Expected a ${e}`:Hh(e)?j(e)?`Expected one of the following constants: ${e.join(", ")}`:`Expected a ${e}`:Yh(e)?`Expected an array of ${e[0]}`:Jh(e)?"Expected an object {}":zh(e)?`Expected one of the following enum values: ${e.join(", ")}`:st(e,["mock"])?"Expected a mock":st(e,["expression"])?"Expected an expression":st(e,["query"])?"Expected a database query expression":st(e,["constant"])?"Expected a value expression (no variables allowed)":st(e,["stack"])?"Expected a stack definition":`Invalid schema: received ${JSON.stringify(e)}`,"getErrorMessageForSchema");function cb(e){return(t,o,n={},a)=>{e.sectionStack.push("schema"),e.OR({IGNORE_AMBIGUITIES:!0,ERR_MSG:vz(o),DEF:[{GATE:r(()=>st(o,["string","number","boolean","timestamp"],n),"GATE"),ALT:r(()=>(e.SUBRULE(e.schemaParseImmutableFn,{ARGS:[t,o,n]}),!0),"ALT")},{GATE:r(()=>Hh(o),"GATE"),ALT:r(()=>(e.SUBRULE(e.schemaParseConstantFn,{ARGS:[t,o,n]}),!0),"ALT")},{GATE:r(()=>Yh(o),"GATE"),ALT:r(()=>(e.SUBRULE(e.schemaParseArrayFn,{ARGS:[t,o,n]}),!0),"ALT")},{GATE:r(()=>Jh(o),"GATE"),ALT:r(()=>(e.SUBRULE(e.schemaParseObjectFn,{ARGS:[t,o,n]}),!0),"ALT")},{GATE:r(()=>zh(o),"GATE"),ALT:r(()=>(e.SUBRULE(e.schemaParseEnumFn,{ARGS:[t,o,n]}),!0),"ALT")},{GATE:r(()=>st(o,["expression","constant","query","stack","test-stack"]),"GATE"),ALT:r(()=>{e.OR1({IGNORE_AMBIGUITIES:!0,DEF:[{GATE:r(()=>st(o,["stack","test-stack"]),"GATE"),ALT:r(()=>{let s=st(o,["test-stack"]);e.SUBRULE(e.nakedStackFn,{ARGS:[{allowExpectStatements:s,allowCallStatements:s}]})},"ALT")},{GATE:r(()=>st(o,["expression","query","constant"]),"GATE"),ALT:r(()=>{let s=st(o,["query"]),l=st(o,["constant"]);e.SUBRULE(e.expressionFn,{ARGS:[t,a||{allowQueryExpression:s,allowVariable:!l,allowExpression:!l,allowComparison:!l}]})},"ALT")}]})},"ALT")}]}),e.sectionStack.pop()}}r(cb,"schemaFn");function pb(e){return e.requireRules(wz),(t,o,n={})=>{let a=xt(o).every(s=>Wt(s));e.OR([{GATE:r(()=>a,"GATE"),ALT:r(()=>{e.OPTION(()=>e.SUBRULE(e._schemaParseAttributeFn,{ARGS:[t,o,n]}))},"ALT")},{GATE:r(()=>!a,"GATE"),ALT:r(()=>e.SUBRULE1(e._schemaParseAttributeFn,{ARGS:[t,o,n]}),"ALT")}])}}r(pb,"schemaParseAttributeFn");function wz(e){return(t,o,n={})=>{let a=!1,s=null,l=xt(o),c=[...l],p=[];if(e.ACTION(()=>{if(l.length>1&&ho(l,f=>it(f)))throw new Error("schemaParseAttributeFn supports only one generic type when multiple keys are defined")}),e.CONSUME(x),e.MANY(()=>{e.MANY1(()=>{a=!1,e.CONSUME(m)}),a&&e.addInvalidValueError(s,"Expected a comma, a new line or closing bracket");let f=e.OPTION1(()=>e.CONSUME(Ie)),d,h=e.OR([{ALT:r(()=>(d=e.CONSUME1(i),d.image),"ALT")},{ALT:r(()=>e.CONSUME1(E).image.slice(1,-1),"ALT")}]),T=Ad(h,l);T?f&&!To(T)&&e.addInvalidValueError(f,`The argument '${h}' cannot be disabled`):e.addInvalidValueError(d,`The argument '${h}' is not valid in this context`),p.includes(h)&&!xd(T)?e.addInvalidValueError(d,`Duplicate argument '${h}' found`):(p.push(h),n[h]={key:d,value:null}),c.splice(c.indexOf(T),1);let S=fo(o,T,null),R=["[stack]","[test-stack]"].includes(S);e.OR1([{GATE:r(()=>!R,"GATE"),ALT:r(()=>e.CONSUME(g),"ALT")},{GATE:r(()=>R,"GATE"),ALT:r(()=>!1,"ALT")}]),e.SUBRULE(e.schemaFn,{ARGS:[d,S,n[h]]}),a=!0,e.MANY2(()=>{a=!1,e.CONSUME1(m)}),e.OPTION(()=>{a=!1,e.CONSUME1(le)})}),e.CONSUME(A),c.length){let f=c.filter(d=>!Wt(d));f.length>1?e.addInvalidValueError(s||t,`The following required arguments are missing: ${f.join(", ")}`):f.length===1&&e.addInvalidValueError(s||t,`Missing required argument '${f[0]}'`)}}}r(wz,"_schemaParseAttributeFn");function fb(e){return(t,o,n={})=>{let a,s=e.OR({DEF:[{ALT:r(()=>(a="string",e.CONSUME(E)),"ALT")},{ALT:r(()=>(a="string",e.CONSUME(qt)),"ALT")},{ALT:r(()=>(a="string",e.CONSUME(Ve)),"ALT")},{ALT:r(()=>(a="number",e.CONSUME(we)),"ALT")},{ALT:r(()=>(a="number",e.CONSUME(te)),"ALT")},{ALT:r(()=>{a="boolean",e.SUBRULE(e.booleanValue)},"ALT")},{ALT:r(()=>(a="timestamp",e.CONSUME(Tp)),"ALT")},{ALT:r(()=>(a="null",e.CONSUME(jt)),"ALT")},{ALT:r(()=>!1,"ALT")}]});e.OPTION({GATE:r(()=>!s,"GATE"),DEF:r(()=>{e.addExpectedValueTypeError(a,"invalid immutable value"),e.CONSUME(i)},"DEF")}),n.value=s,e.ACTION(()=>{let l=j(o),c=l?o.map(ub):ub(o);if(l){if(!Ph(c))throw new Error(`schemaParseImmutableFn called with invalid enum attribute: ${o}`);c.includes(a)||e.addExpectedValueTypeError(t,c.join(" or "))}else{if(!c)throw new Error(`schemaParseImmutableFn called with invalid attribute: ${o}`);a!==c&&e.addExpectedValueTypeError(t,c)}})}}r(fb,"schemaParseImmutableFn");function ub(e){let t=["string","number","boolean","timestamp","null"];if(it(e)){let o=Wt(e)?e.slice(1,-2):e.slice(1,-1);if(t.includes(o))return o}return null}r(ub,"getImmutableAttributeType");var mb=r(e=>{e.schemaFn=e.RULE("schemaFn",cb(e)),e.schemaParseImmutableFn=e.RULE("schemaParseImmutableFn",fb(e)),e.schemaParseEnumFn=e.RULE("schemaParseEnumFn",sb(e)),e.schemaParseConstantFn=e.RULE("schemaParseConstantFn",ab(e)),e.schemaParseArrayFn=e.RULE("schemaParseArrayFn",ob(e)),e.schemaParseObjectFn=e.RULE("schemaParseObjectFn",lb(e)),e.schemaParseAttributeFn=e.RULE("schemaParseAttributeFn",pb(e))},"register");function db(e){return()=>{e.sectionStack.push("securityCheckPasswordFn");let t=e.CONSUME(df);e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(db,"securityCheckPasswordFn");function hb(e){return()=>{e.sectionStack.push("securityCreateAuthTokenFn");let t=e.CONSUME(Ef);e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(hb,"securityCreateAuthTokenFn");function Tb(e){let t=["curve","format"],o=["description","disabled"];return()=>{e.sectionStack.push("securityCreateCurveKeyFn");let n=e.CONSUME(Sf);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(Tb,"securityCreateCurveKeyFn");function Eb(e){let t=["character_count","require_lowercase","require_uppercase","require_digit","require_symbol","symbol_whitelist"],o=["description","disabled"];return()=>{e.sectionStack.push("securityCreatePasswordFn");let n=e.CONSUME(hf);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(Eb,"securityCreatePasswordFn");function Sb(e){let t=["bits","format"],o=["description","disabled"];return()=>{e.sectionStack.push("securityCreateRsaKeyFn");let n=e.CONSUME(gf);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(Sb,"securityCreateRsaKeyFn");function gb(e){return()=>{e.sectionStack.push("securityCreateSecretKeyFn");let t=e.CONSUME(xf);e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(gb,"securityCreateSecretKeyFn");function xb(e){return()=>{e.sectionStack.push("securityCreateUuidFn");let t=e.CONSUME(Tf);e.OPTION(()=>{e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A)}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(xb,"securityCreateUuidFn");function Ab(e){return()=>{e.sectionStack.push("securityDecryptFn");let t=e.CONSUME(Af);e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Ab,"securityDecryptFn");function Ub(e){return()=>{e.sectionStack.push("securityEncryptFn");let t=e.CONSUME(Uf);e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Ub,"securityEncryptFn");function Rb(e){return()=>{e.sectionStack.push("securityJweDecodeFn");let t=e.CONSUME(Rf);e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Rb,"securityJweDecodeFn");function Lb(e){return()=>{e.sectionStack.push("securityJweEncodeFn");let t=e.CONSUME(Lf);e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Lb,"securityJweEncodeFn");function kb(e){return()=>{e.sectionStack.push("securityJwsDecodeFn");let t=e.CONSUME(kf);e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(kb,"securityJwsDecodeFn");function Ob(e){return()=>{e.sectionStack.push("securityJwsEncodeFn");let t=e.CONSUME(Of);e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Ob,"securityJwsEncodeFn");function Cb(e){return()=>{e.sectionStack.push("securityRandomBytesFn");let t=e.CONSUME(Cf);e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Cb,"securityRandomBytesFn");function Nb(e){return()=>{e.sectionStack.push("securityRandomNumberFn");let t=e.CONSUME(Nf);e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(i),e.CONSUME(g),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Nb,"securityRandomNumberFn");var yb=r(e=>{e.securityCheckPasswordFn=e.RULE("securityCheckPasswordFn",db(e)),e.securityCreateAuthTokenFn=e.RULE("securityCreateAuthTokenFn",hb(e)),e.securityCreateCurveKeyFn=e.RULE("securityCreateCurveKeyFn",Tb(e)),e.securityCreatePasswordFn=e.RULE("securityCreatePasswordFn",Eb(e)),e.securityCreateRsaKeyFn=e.RULE("securityCreateRsaKeyFn",Sb(e)),e.securityCreateSecretKeyFn=e.RULE("securityCreateSecretKeyFn",gb(e)),e.securityCreateUuidFn=e.RULE("securityCreateUuidFn",xb(e)),e.securityDecryptFn=e.RULE("securityDecryptFn",Ab(e)),e.securityEncryptFn=e.RULE("securityEncryptFn",Ub(e)),e.securityJweDecodeFn=e.RULE("securityJweDecodeFn",Rb(e)),e.securityJweEncodeFn=e.RULE("securityJweEncodeFn",Lb(e)),e.securityJwsDecodeFn=e.RULE("securityJwsDecodeFn",kb(e)),e.securityJwsEncodeFn=e.RULE("securityJwsEncodeFn",Ob(e)),e.securityRandomBytesFn=e.RULE("securityRandomBytesFn",Cb(e)),e.securityRandomNumberFn=e.RULE("securityRandomNumberFn",Nb(e))},"register");function bb(e){return()=>{e.sectionStack.push("security"),e.CONSUME(mf),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.securityCheckPasswordFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityCreateAuthTokenFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityCreateCurveKeyFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityCreatePasswordFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityCreateRsaKeyFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityCreateSecretKeyFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityCreateUuidFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityDecryptFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityEncryptFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityJweDecodeFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityJweEncodeFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityJwsDecodeFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityJwsEncodeFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityRandomBytesFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityRandomNumberFn),"ALT")}]),e.sectionStack.pop()}}r(bb,"securityFn");function _b(e){return()=>{e.sectionStack.push("storageCreateAttachmentFn");let t=e.CONSUME(_f);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{value:"[expression]",access:["public","private"],filename:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(_b,"storageCreateAttachmentFn");function Mb(e){return()=>{e.sectionStack.push("storageCreateAudioFn");let t=e.CONSUME(If);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{value:"[expression]","access?":["public","private"],"filename?":"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Mb,"storageCreateAudioFn");function Fb(e){return()=>{let t=["filename","filedata"],o=["description","disabled"];e.sectionStack.push("storageCreateFileResourceFn");let n=e.CONSUME(Ff);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(Fb,"storageCreateFileResourceFn");function Ib(e){return()=>{e.sectionStack.push("storageCreateImageFn");let t=e.CONSUME(bf);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{value:"[expression]",access:["public","private"],filename:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Ib,"storageCreateImageFn");function vb(e){return()=>{e.sectionStack.push("storageCreateVideoFn");let t=e.CONSUME(vf);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{value:"[expression]","access?":["public","private"],"filename?":"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(vb,"storageCreateVideoFn");function wb(e){return()=>{let t=["pathname"],o=["description","disabled"];e.sectionStack.push("storageDeleteFileFn");let n=e.CONSUME(wf);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(wb,"storageDeleteFileFn");function Pb(e){return()=>{let t=["value"],o=["description","disabled"];e.sectionStack.push("storageReadFileResourceFn");let n=e.CONSUME(Mf);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(Pb,"storageReadFileResourceFn");function Bb(e){return()=>{let t=["pathname","ttl"],o=["description","disabled"];e.sectionStack.push("storageSignPrivateUrlFn");let n=e.CONSUME(Pf);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(Bb,"storageSignPrivateUrlFn");var Gb=r(e=>{e.storageCreateAttachmentFn=e.RULE("storageCreateAttachmentFn",_b(e)),e.storageCreateFileResourceFn=e.RULE("storageCreateFileResourceFn",Fb(e)),e.storageCreateImageFn=e.RULE("storageCreateImageFn",Ib(e)),e.storageDeleteFileFn=e.RULE("storageDeleteFileFn",wb(e)),e.storageReadFileResourceFn=e.RULE("storageReadFileResourceFn",Pb(e)),e.storageSignPrivateUrlFn=e.RULE("storageSignPrivateUrlFn",Bb(e)),e.storageCreateAudioFn=e.RULE("storageCreateAudioFn",Mb(e)),e.storageCreateVideoFn=e.RULE("storageCreateVideoFn",vb(e))},"register");function Db(e){return()=>{e.sectionStack.push("storage"),e.CONSUME(yf),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.storageCreateAttachmentFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.storageCreateFileResourceFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.storageCreateImageFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.storageDeleteFileFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.storageReadFileResourceFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.storageSignPrivateUrlFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.storageCreateAudioFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.storageCreateVideoFn),"ALT")}]),e.sectionStack.pop()}}r(Db,"storageFn");function Vb(e){let t=["value","separator","enclosure","escape_char"],o=["description","disabled"];return()=>{e.sectionStack.push("streamFromCsv");let n=e.CONSUME(Gf);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(Vb,"streamFromCsvFn");function qb(e){let t=["value"],o=["description","disabled"];return()=>{e.sectionStack.push("streamFromJsonl");let n=e.CONSUME(Df);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(qb,"streamFromJsonlFn");function jb(e){return()=>{e.sectionStack.push("streamFromRequest");let t=e.CONSUME(Vf);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{url:"[expression]",method:"[expression]","params?":"[expression]","headers?":"[expression]","timeout?":"[expression]","follow_location?":"[expression]","description?":"[string]","disabled?":"[boolean]","verify_host?":"[expression]","verify_peer?":"[expression]","ca_certificate?":"[expression]","certificate?":"[expression]","certificate_pass?":"[expression]","private_key?":"[expression]","private_key_pass?":"[expression]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(jb,"streamFromRequestFn");var Wb=r(e=>{e.streamFromCsvFn=e.RULE("streamFromCsvFn",Vb(e)),e.streamFromJsonlFn=e.RULE("streamFromJsonlFn",qb(e)),e.streamFromRequestFn=e.RULE("streamFromRequestFn",jb(e))},"register");function Kb(e){return()=>{e.sectionStack.push("stream"),e.CONSUME(Bf),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.streamFromCsvFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.streamFromJsonlFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.streamFromRequestFn),"ALT")}]),e.sectionStack.pop()}}r(Kb,"streamFn");function Yb(e){return()=>{let t=["value"],o=["description","disabled"];e.sectionStack.push("allTextWithoutReturnValueFn");let n=e.OR([{ALT:r(()=>e.CONSUME(Qf),"ALT")},{ALT:r(()=>e.CONSUME(om),"ALT")},{ALT:r(()=>e.CONSUME(nm),"ALT")},{ALT:r(()=>e.CONSUME(am),"ALT")},{ALT:r(()=>e.CONSUME(sm),"ALT")}]);e.SUBRULE(e.assignableVariableProperty),e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(Yb,"allTextWithoutReturnValueFn");function Hb(e){return()=>{let t=["value"],o=["description","disabled"];e.sectionStack.push("allTextWithReturnValueFn");let n=e.OR([{ALT:r(()=>e.CONSUME(Zf),"ALT")},{ALT:r(()=>e.CONSUME($f),"ALT")},{ALT:r(()=>e.CONSUME(em),"ALT")},{ALT:r(()=>e.CONSUME(tm),"ALT")},{ALT:r(()=>e.CONSUME(rm),"ALT")},{ALT:r(()=>e.CONSUME(im),"ALT")}]);e.SUBRULE(e.assignableVariableProperty),e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(Hb,"allTextWithReturnValueFn");var zb=r(e=>{e.allTextWithoutReturnValueFn=e.RULE("allTextWithoutReturnValueFn",Yb(e)),e.allTextWithReturnValueFn=e.RULE("allTextWithReturnValueFn",Hb(e))},"register");function Jb(e){return()=>{e.sectionStack.push("text"),e.CONSUME(vn),e.CONSUME(L);let t=e.LA(1).image,o=["contains","ends_with","icontains","iends_with","istarts_with","starts_with"],n=["append","ltrim","prepend","rtrim","trim"];o.includes(t)?e.SUBRULE(e.allTextWithReturnValueFn):n.includes(t)&&e.SUBRULE(e.allTextWithoutReturnValueFn),e.sectionStack.pop()}}r(Jb,"textFn");function Xb(e){return()=>{e.sectionStack.push("toolCallFn"),e.CONSUME(zr),e.CONSUME(L);let t=e.CONSUME(Yr);e.OR([{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}]),e.OPTION(()=>{e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"input?":{"[string]":"[expression]"},"mock?":{"![string]":"[expression]"},"description?":"[string]","disabled?":"[boolean]"}]})}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Xb,"toolCallFn");function Qb(e){return()=>{e.sectionStack.push("unitExpect"),e.CONSUME(qn),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.unitExpectWithArgumentsFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.unitExpectWithoutArgumentsFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.unitExpectToThrowFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.unitExpectToBeWithinFn),"ALT")}]),e.sectionStack.pop()}}r(Qb,"unitExpectFn");function Zb(e){return()=>{let t=["latitude_1","longitude_1","latitude_2","longitude_2"],o=["description","disabled"];e.sectionStack.push("utilGeoDistanceFn");let n=e.CONSUME(pm);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(Zb,"utilGeoDistanceFn");function $b(e){let t=[],o=["description","disabled"];return()=>{e.sectionStack.push("utilGetAllInputFn");let n=e.CONSUME(um);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r($b,"utilGetAllInputFn");function e_(e){return()=>{let t=[],o=["description","disabled"];e.sectionStack.push("utilGetEnvFn");let n=e.CONSUME(mm);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(e_,"utilGetEnvFn");function t_(e){return()=>{e.sectionStack.push("utilGetRawInputFn");let t=e.CONSUME(dm);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"encoding?":["json","yaml","x-www-form-urlencoded",""],"description?":"[string]","disabled?":"[boolean]","exclude_middleware?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(t_,"utilGetRawInputFn");function r_(e){return()=>{let t=[],o=["description","disabled"];e.sectionStack.push("utilGetVarsFn");let n=e.CONSUME(hm);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(r_,"utilGetVarsFn");function o_(e){return()=>{let t=["value"],o=["description","disabled"];e.sectionStack.push("utilIpLookupFn");let n=e.CONSUME(Tm);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(o_,"utilIpLookupFn");function n_(e){return()=>{let t=!1;e.sectionStack.push("utilPostProcessFn"),e.CONSUME(Em),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")},{ALT:r(()=>{t=!0,e.SUBRULE(e.stackClause)},"ALT")}])}),t||e.SUBRULE(e.stackClause),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.sectionStack.pop()}}r(n_,"utilPostProcessFn");function a_(e){return()=>{e.sectionStack.push("utilSendEmailFn");let t=e.CONSUME(cm),o={};e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"description?":"[string]","disabled?":"[boolean]","service_provider?":["resend","xano"],"api_key?":"[expression]","subject?":"[expression]","message?":"[expression]","to?":"[expression]","bcc?":"[expression]","cc?":"[expression]","from?":"[expression]","reply_to?":"[expression]","scheduled_at?":"[expression]","mock?":{"![string]":"[expression]"}},o]}),e.SUBRULE(e.asVariable,{ARGS:[t]});let n={xano:["description","disabled","service_provider","subject","message","mock"],resend:["description","disabled","service_provider","api_key","subject","message","to","bcc","cc","from","reply_to","scheduled_at","mock"]},a={xano:["subject","message"],resend:["api_key","subject","message","from","to"]};e.ACTION(()=>{let s=W(o.service_provider?.value),l=a[s]||[];for(let d of l)Object.prototype.hasOwnProperty.call(o,d)||e.addMissingError(t,`Missing required field '${d}' for service_provider '${s}'`);let c=n[s]||[],p=new Set([...n.xano,...n.resend]),f=[];for(let d in o){let h=W(o[d].key);f.push(h),p.has(h)?c.includes(h)||e.addWarning(`${h} is not used with service_provider '${s}'`,o[d].key):e.addIllegalAttributeError(o[d].key,`Field '${h}' is not allowed in send_email`)}}),e.sectionStack.pop()}}r(a_,"utilSendEmailFn");function i_(e){return()=>{let t=["value","duplicates"],o=["description","disabled"];e.sectionStack.push("utilSetHeaderFn");let n=e.CONSUME(gm);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(i_,"utilSetHeaderFn");function s_(e){return()=>{let t=["value"],o=["description","disabled"];e.sectionStack.push("utilSleepFn");let n=e.CONSUME(xm);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(s_,"utilSleepFn");function l_(e){let t=["value"],o=["description","disabled"];return()=>{e.sectionStack.push("utilTemplateFn");let n=e.CONSUME(fm);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(l_,"utilTemplateFn");var c_=r(e=>{e.utilGeoDistanceFn=e.RULE("utilGeoDistanceFn",Zb(e)),e.utilGetAllInputFn=e.RULE("utilGetAllInputFn",$b(e)),e.utilGetEnvFn=e.RULE("utilGetEnvFn",e_(e)),e.utilGetRawInputFn=e.RULE("utilGetRawInputFn",t_(e)),e.utilGetVarsFn=e.RULE("utilGetVarsFn",r_(e)),e.utilIpLookupFn=e.RULE("utilIpLookupFn",o_(e)),e.utilPostProcessFn=e.RULE("utilPostProcessFn",n_(e)),e.utilSetHeaderFn=e.RULE("utilSetHeaderFn",i_(e)),e.utilSleepFn=e.RULE("utilSleepFn",s_(e)),e.utilTemplateFn=e.RULE("utilTemplateFn",l_(e)),e.utilSendEmailFn=e.RULE("utilSendEmailFn",a_(e))},"register");function p_(e){return()=>{e.sectionStack.push("util"),e.CONSUME(lm),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.utilIpLookupFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilGetEnvFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilSleepFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilGetAllInputFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilGetRawInputFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilGetVarsFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilGeoDistanceFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilPostProcessFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilSetHeaderFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilTemplateFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilSendEmailFn),"ALT")}]),e.sectionStack.pop()}}r(p_,"utilFn");function u_(e){return()=>{e.sectionStack.push("var");let t=e.CONSUME(Am);e.OR([{ALT:r(()=>{let o=e.CONSUME(V);o.image&&e.addVariable(o.image,"unknown")},"ALT")},{ALT:r(()=>{e.CONSUME(L),e.CONSUME(Um),e.SUBRULE(e.assignableVariableProperty)},"ALT")}]),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{value:"[expression]","description?":"[string]","disabled?":"[boolean]","mock?":{"![string]":"[expression]"}}]}),e.sectionStack.pop()}}r(u_,"varFn");function f_(e){return()=>{e.sectionStack.push("webflow"),e.CONSUME(Ql),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.webflowRequestFn),"ALT")}]),e.sectionStack.pop()}}r(f_,"webflowFn");function m_(e){return()=>{e.sectionStack.push("workflowExpect"),e.CONSUME(qn),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.workflowExpectWithArgumentsFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.workflowExpectWithoutArgumentsFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.workflowExpectToThrowFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.workflowExpectToBeWithinFn),"ALT")}]),e.sectionStack.pop()}}r(m_,"workflowExpectFn");function d_(e){return()=>{let t=["file","zip"],o=["description","disabled","password","password_encryption","filename"];e.sectionStack.push("zipAddToArchiveFn");let n=e.CONSUME(zm);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(d_,"zipAddToArchiveFn");function h_(e){return()=>{let t=["filename"],o=["description","disabled","password","password_encryption"];e.sectionStack.push("zipCreateArchiveFn");let n=e.CONSUME(Jm);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(h_,"zipCreateArchiveFn");function T_(e){return()=>{let t=["filename","zip"],o=["description","disabled","password"];e.sectionStack.push("zipDeleteFromArchiveFn");let n=e.CONSUME(Xm);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(T_,"zipDeleteFromArchiveFn");function E_(e){return()=>{let t=["zip"],o=["description","disabled","password"];e.sectionStack.push("zipExtractFn");let n=e.CONSUME(Qm);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(E_,"zipExtractFn");function S_(e){return()=>{let t=["zip"],o=["description","disabled","password"];e.sectionStack.push("zipViewContentsFn");let n=e.CONSUME(Zm);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(S_,"zipViewContentsFn");var g_=r(e=>{e.zipAddToArchiveFn=e.RULE("zipAddToArchiveFn",d_(e)),e.zipCreateArchiveFn=e.RULE("zipCreateArchiveFn",h_(e)),e.zipDeleteFromArchiveFn=e.RULE("zipDeleteFromArchiveFn",T_(e)),e.zipExtractFn=e.RULE("zipExtractFn",E_(e)),e.zipViewContentsFn=e.RULE("zipViewContentsFn",S_(e))},"register");function x_(e){return()=>{e.sectionStack.push("zip"),e.CONSUME(Hm),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.zipCreateArchiveFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.zipAddToArchiveFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.zipDeleteFromArchiveFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.zipExtractFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.zipViewContentsFn),"ALT")}]),e.sectionStack.pop()}}r(x_,"zipFn");var A_=r(e=>{e.addonCallFn=e.RULE("addonCallFn",LC(e)),e.actionCallFn=e.RULE("actionCallFn",RC(e)),e.middlewareCallFn=e.RULE("middlewareCallFn",Iy(e)),e.aiFn=e.RULE("aiFn",bC(e)),e.apiFn=e.RULE("apiFn",BC(e)),e.webflowFn=e.RULE("webflowFn",f_(e)),e.arrayFn=e.RULE("arrayFn",sN(e)),e.cloudFn=e.RULE("cloudFn",CN(e)),e.controlFn=e.RULE("controlFn",NN(e)),e.dbFn=e.RULE("dbFn",Ey(e)),e.debugFn=e.RULE("debugFn",Ay(e)),e.mathFn=e.RULE("mathFn",Fy(e)),e.objectFn=e.RULE("objectFn",Gy(e)),e.redisFn=e.RULE("redisFn",rb(e)),e.securityFn=e.RULE("securityFn",bb(e)),e.storageFn=e.RULE("storageFn",Db(e)),e.streamFn=e.RULE("streamFn",Kb(e)),e.textFn=e.RULE("textFn",Jb(e)),e.utilFn=e.RULE("utilFn",p_(e)),e.varFn=e.RULE("varFn",u_(e)),e.zipFn=e.RULE("zipFn",x_(e)),e.unitExpectFn=e.RULE("unitExpectFn",Qb(e)),e.workflowExpectFn=e.RULE("workflowExpectFn",m_(e)),e.toolCallFn=e.RULE("toolCallFn",Xb(e)),yC(e),mb(e),PC(e),iN(e),ON(e),zN(e),Ty(e),xy(e),My(e),By(e),tb(e),yb(e),Gb(e),Wb(e),zb(e),c_(e),g_(e),by(e)},"register");function U_(e){return(t,o,n,a={})=>{e.CONSUME(H),e.OPTION(()=>{e.OR([{ALT:r(()=>{e.CONSUME(m),e.AT_LEAST_ONE(()=>{e.SUBRULE(e.objectAttrReq,{ARGS:[t,o,n,a]}),e.OPTION1(()=>e.CONSUME(le)),e.AT_LEAST_ONE1(()=>e.CONSUME3(m))})},"ALT")},{ALT:r(()=>{e.AT_LEAST_ONE_SEP({SEP:le,DEF:r(()=>{e.SUBRULE1(e.objectAttrReq,{ARGS:[t,o,n,a]})},"DEF")}),e.MANY(()=>e.CONSUME2(m))},"ALT")}])}),e.CONSUME(z)}}r(U_,"arrayOfObjectAttrReq");function R_(e){return()=>{e.CONSUME(H),e.OPTION(()=>{e.OR([{ALT:r(()=>{e.CONSUME(m),e.AT_LEAST_ONE(()=>{e.CONSUME(E),e.OPTION1(()=>e.CONSUME(le)),e.AT_LEAST_ONE1(()=>e.CONSUME3(m))})},"ALT")},{ALT:r(()=>{e.AT_LEAST_ONE_SEP({SEP:le,DEF:r(()=>{e.CONSUME1(E)},"DEF")}),e.MANY(()=>e.CONSUME2(m))},"ALT")}])}),e.CONSUME(z)}}r(R_,"arrayOfStringLiterals");function L_(e){return(t={})=>{let o=!1,n=e.CONSUME(H);e.MANY(()=>{e.MANY1(()=>{o=!1,e.CONSUME(m)}),o&&e.addMissingError(le,"Expected ',' between array values"),e.SUBRULE(e.expressionFn,{ARGS:[n,{...t,allowObject:!0,allowArray:!0}]}),o=!0,e.OPTION1(()=>{o=!1,e.CONSUME1(le)}),e.MANY2(()=>{o=!1,e.CONSUME1(m)})}),e.CONSUME(z)}}r(L_,"arrayWithValues");function k_(e){return()=>{e.OR([{ALT:r(()=>{e.CONSUME(V)},"ALT")},{ALT:r(()=>{e.CONSUME(Qr),e.CONSUME(L),e.CONSUME(i)},"ALT")}])}}r(k_,"assignableVariableAs");function O_(e){return()=>{let t="";e.OR({DEF:[{ALT:r(()=>{t=e.CONSUME(V).image},"ALT")},{ALT:r(()=>{e.CONSUME(Qr),e.CONSUME(L),t=`$${e.CONSUME(i).image}`},"ALT")}],ERR_MSG:"expecting variable (e.g. $variable or $var.variable)"}),e.SUBRULE(e.chainedIdentifier),e.MANY({GATE:r(()=>e.LA(1).tokenType===ve||e.LA(1).tokenType===m&&e.LA(2).tokenType===ve,"GATE"),DEF:r(()=>{e.SUBRULE(e.filterFn)},"DEF")}),t&&e.addVariable(t,"unknown")}}r(O_,"assignableVariableProperty");function C_(e){return t=>{let o=!1;e.OPTION(()=>{o=!0,e.CONSUME(At),e.SUBRULE(e.assignableVariableProperty)}),!o&&t&&e.addWarning("`as <variable>` is missing",t)}}r(C_,"asVariable");function N_(e){return()=>{e.OR([{ALT:r(()=>{e.CONSUME(Oe)},"ALT")},{ALT:r(()=>{e.CONSUME(Ce)},"ALT")}])}}r(N_,"booleanValue");function y_(e){return()=>{e.CONSUME(H),e.SUBRULE(e.expressionFn),e.CONSUME(z)}}r(y_,"bracketAccessor");function b_(e){return()=>{e.OR([{ALT:r(()=>{e.CONSUME(H),e.SUBRULE(e.expressionFn),e.CONSUME(z)},"ALT")},{ALT:r(()=>{e.CONSUME(L),e.OR1([{ALT:r(()=>e.CONSUME(te),"ALT")},{ALT:r(()=>{e.CONSUME1(H),e.SUBRULE1(e.expressionFn),e.CONSUME1(z)},"ALT")}])},"ALT")}])}}r(b_,"bracketArrayAccessor");function __(e){return()=>{e.OR(Il.map(t=>({ALT:r(()=>e.CONSUME(t),"ALT")}))),e.CONSUME(E)}}r(__,"castedValue");function M_(e){return()=>{e.MANY(()=>e.SUBRULE(e.singleChainedIdentifier))}}r(M_,"chainedIdentifier");function F_(e){return()=>{e.OR([{ALT:r(()=>{e.CONSUME(L),e.OR1([{ALT:r(()=>{let t=e.CONSUME(V);e.addWarning(`Using \`$\` prefixed properties '${t.image}' is discouraged.`,t)},"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME2(te),"ALT")},{ALT:r(()=>e.SUBRULE(e.bracketAccessor),"ALT")}])},"ALT")},{ALT:r(()=>e.SUBRULE1(e.bracketAccessor),"ALT")}])}}r(F_,"singleChainedIdentifier");function I_(e){return()=>{e.CONSUME(km),e.SUBRULE(e.chainedIdentifier)}}r(I_,"completeAuthVariable");function v_(e){return()=>{e.CONSUME(Lm),e.OR([{ALT:r(()=>{e.CONSUME(L),e.OR1([{ALT:r(()=>e.CONSUME(Fm),"ALT")},{ALT:r(()=>e.CONSUME(Bm),"ALT")},{ALT:r(()=>e.CONSUME(Pm),"ALT")},{ALT:r(()=>{e.CONSUME(_m),e.SUBRULE(e.singleChainedIdentifier)},"ALT")},{ALT:r(()=>e.CONSUME(Dm),"ALT")},{ALT:r(()=>e.CONSUME(Om),"ALT")},{ALT:r(()=>e.CONSUME(Gm),"ALT")},{ALT:r(()=>e.CONSUME(ym),"ALT")},{ALT:r(()=>e.CONSUME(bm),"ALT")},{ALT:r(()=>e.CONSUME(wm),"ALT")},{ALT:r(()=>e.CONSUME(Vm),"ALT")},{ALT:r(()=>e.CONSUME(vm),"ALT")},{ALT:r(()=>e.CONSUME(Im),"ALT")},{ALT:r(()=>e.CONSUME(Cm),"ALT")},{ALT:r(()=>{e.CONSUME(Mm),e.SUBRULE1(e.singleChainedIdentifier)},"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>{let t=e.CONSUME(V);e.addWarning(`Using \`$\` prefixed environment variables '${t.image}' is discouraged.`,t)},"ALT")},{ALT:r(()=>e.SUBRULE(e.bracketAccessor),"ALT")}])},"ALT")},{ALT:r(()=>e.SUBRULE1(e.bracketAccessor),"ALT")}])}}r(v_,"completeEnvVariable");function w_(e){let t=new Set(["name","code","message","result"]);return()=>{let o=e.CONSUME(Nm);e.sectionStack.includes("catchFn")||e.addInvalidValueError(o,"Invalid use of $error variable outside of a catch block."),e.OPTION(()=>{e.CONSUME(L);let n=e.CONSUME(i);t.has(n.image)||e.addInvalidValueError(n,`Invalid property '${n.image}' for $error variable. Allowed properties are: ${Array.from(t).join(", ")}.`),e.SUBRULE(e.chainedIdentifier)})}}r(w_,"completeErrorVariable");function P_(e){return()=>{e.CONSUME(Rm),e.OR([{ALT:r(()=>{e.CONSUME(L),e.OR1([{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>{e.CONSUME(H),e.CONSUME(E),e.CONSUME(z)},"ALT")}])},"ALT")},{ALT:r(()=>{e.CONSUME2(H),e.CONSUME2(E),e.CONSUME2(z)},"ALT")}]),e.SUBRULE(e.chainedIdentifier)}}r(P_,"completeInputVariable");function B_(e){return(...t)=>{let o=t||[],n=e.CONSUME3(E),a=W(n);o.includes(a)||e.addMissingError(n,`Invalid value "${a}". Must be one of: ${o.map(s=>`"${s}"`).join(", ")}`)}}r(B_,"enumValue");var Pz={allowQueryExpression:!1,allowExpression:!0,allowIdentifier:!0,allowVariable:!0,allowFilter:!0,allowComparison:!0,allowDisabledKeys:!1},Bz=[ai,ii,si,li,Gp,ci,Dp,pi,Oi,Ei,Si,gi,Ai,xi,ui,fi,mi,di,hi,Ti,Ui,Ri,Li,ki];function G_(e){return(t,o={})=>{o={...Pz,...o};let n=!1,a=!1,s=!1;e.OR([{ALT:r(()=>{e.MANY1(()=>e.CONSUME(Ie)),e.OR2([{ALT:r(()=>{e.CONSUME(P),e.OR3([{ALT:r(()=>e.SUBRULE(e.expressionFn,{ARGS:[t,o]}),"ALT")},{ALT:r(()=>e.SUBRULE(e.multilineFilterFn,{ARGS:[o]}),"ALT")}]),e.OPTION(()=>e.CONSUME1(m)),e.CONSUME(B),e.MANY(()=>{e.CONSUME(L),e.CONSUME(i)})},"ALT")},{ALT:r(()=>e.SUBRULE(e.simpleExpressionFn,{ARGS:[t,o]}),"ALT")}])},"ALT")},{ALT:r(()=>{e.SUBRULE(e.schemaParseArrayFn,{ARGS:[t,o.allowQueryExpression?["[query]"]:["[expression]"],{},o]})},"ALT")},{ALT:r(()=>{let c=o.allowDisabledKeys?"![string]?":"[string]?";e.SUBRULE(e.schemaParseObjectFn,{ARGS:[t,{[c]:o.allowQueryExpression?"[query]":"[expression]"},{},o]}),e.SUBRULE(e.chainedIdentifier)},"ALT")}]),e.MANY2(()=>{e.SUBRULE(e.bracketArrayAccessor)}),e.MANY3({GATE:r(()=>o.allowFilter&&e.LA(1).tokenType===ve||e.LA(1).tokenType===m&&e.LA(2).tokenType===ve,"GATE"),DEF:r(()=>{n=!0,e.SUBRULE(e.filterFn,{ARGS:[o]})},"DEF")});let l=e.OPTION1({GATE:r(()=>o.allowComparison,"GATE"),DEF:r(()=>(a=!0,e.OR1([{ALT:r(()=>e.SUBRULE(e.expressionTestFn,{ARGS:[t,o]}),"ALT")},{ALT:r(()=>{s=!0;let c=e.CONSUME(ft);return e.SUBRULE2(e.expressionFn,{ARGS:[c,o]}),e.OPTION2(()=>{e.CONSUME2(xe),e.SUBRULE3(e.expressionFn,{ARGS:[c,o]})}),c},"ALT")}])),"DEF")});n&&a&&e.addInvalidValueError(t,"An expression should be wrapped in parentheses when combining filters and tests"),o.allowQueryExpression&&s&&e.addInvalidValueError(l,"Ternary expressions are not allowed in a where clause")}}r(G_,"expressionFn");function D_(e){return(t,o={})=>{let n=e.OR([{ALT:r(()=>e.CONSUME(ai),"ALT")},{ALT:r(()=>e.CONSUME(ii),"ALT")},{ALT:r(()=>e.CONSUME(si),"ALT")},{ALT:r(()=>e.CONSUME(li),"ALT")},{ALT:r(()=>e.CONSUME(Gp),"ALT")},{ALT:r(()=>e.CONSUME(ci),"ALT")},{ALT:r(()=>e.CONSUME(Dp),"ALT")},{ALT:r(()=>e.CONSUME(pi),"ALT")},{ALT:r(()=>e.CONSUME(vp),"ALT")},{ALT:r(()=>e.CONSUME(Ip),"ALT")},{ALT:r(()=>e.CONSUME(wp),"ALT")},{ALT:r(()=>e.CONSUME(Pp),"ALT")},{ALT:r(()=>e.CONSUME(Bp),"ALT")},{ALT:r(()=>e.CONSUME(qp),"ALT")},{ALT:r(()=>e.CONSUME(Vp),"ALT")},{ALT:r(()=>e.CONSUME(jp),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(qh),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Oi),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Ei),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Si),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(gi),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Ai),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(xi),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(ui),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(fi),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(mi),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(di),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(hi),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Ti),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Ui),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Ri),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Li),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(ki),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Kp),"ALT")},{ALT:r(()=>e.CONSUME(Wp),"ALT")}]);e.OPTION({GATE:r(()=>o.allowQueryExpression&&Bz.includes(n.tokenType),"GATE"),DEF:r(()=>e.CONSUME1(ft),"DEF")}),e.SUBRULE(e.expressionFn,{ARGS:[t,o]})}}r(D_,"expressionTestFn");function V_(e){return(t,o)=>{e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(qt),"ALT")},{ALT:r(()=>e.CONSUME(te),"ALT")},{ALT:r(()=>e.CONSUME(we),"ALT")},{ALT:r(()=>e.CONSUME(Oe),"ALT")},{ALT:r(()=>e.CONSUME(Ce),"ALT")},{ALT:r(()=>e.CONSUME(jt),"ALT")},{ALT:r(()=>e.CONSUME(Zr),"ALT")},{GATE:r(()=>o.allowExpression,"GATE"),ALT:r(()=>e.CONSUME(Ve),"ALT")},{GATE:r(()=>o.allowExpression,"GATE"),ALT:r(()=>e.CONSUME(vu),"ALT")},{GATE:r(()=>o.allowExpression,"GATE"),ALT:r(()=>e.CONSUME(hp),"ALT")},{GATE:r(()=>o.allowVariable,"GATE"),ALT:r(()=>e.SUBRULE(e.longFormVariable),"ALT")},{GATE:r(()=>o.allowVariable,"GATE"),ALT:r(()=>e.SUBRULE(e.completeAuthVariable),"ALT")},{GATE:r(()=>o.allowVariable,"GATE"),ALT:r(()=>e.SUBRULE(e.completeEnvVariable),"ALT")},{GATE:r(()=>o.allowVariable,"GATE"),ALT:r(()=>e.SUBRULE(e.completeInputVariable),"ALT")},{GATE:r(()=>o.allowVariable,"GATE"),ALT:r(()=>e.SUBRULE(e.completeErrorVariable),"ALT")},{GATE:r(()=>o.allowVariable,"GATE"),ALT:r(()=>e.SUBRULE(e.shortFormVariable),"ALT")},{ALT:r(()=>e.SUBRULE(e.castedValue),"ALT")}])}}r(V_,"simpleExpressionFn");function q_(e){return(t={},o=null)=>{e.OR([{ALT:r(()=>{e.CONSUME(m),e.CONSUME(ve)},"ALT")},{ALT:r(()=>e.CONSUME1(ve),"ALT")}]);let n=t.allowQueryExpression===!0?VO:DO;e.OPTION(()=>e.CONSUME(Ie));let a=e.CONSUME(i);n.includes(a.image)||e.addInvalidValueError(a,`Unknown filter function '${a.image}'`),e.MANY1(()=>{e.CONSUME(xe),e.SUBRULE(e.expressionFn,{ARGS:[a,t,o]})})}}r(q_,"filterFn");var Gz={allowDuplicates:[],allowQueryExpression:!1,allowDisabledKeys:!1,types:{}};function j_(e){return(t,o,n,a={})=>{o=o||[],n=n||[];let s=!1,l=!1;a={...Gz,...a};let c=[],p=[...o,...n];e.OR({IGNORE_AMBIGUITIES:!0,DEF:[{GATE:r(()=>o.length===0,"GATE"),ALT:r(()=>{e.OPTION(()=>{e.CONSUME(x),e.MANY(()=>{e.OR1([{GATE:r(()=>!s,"GATE"),ALT:r(()=>e.MANY1(()=>e.CONSUME1(m)),"ALT")},{GATE:r(()=>s,"GATE"),ALT:r(()=>e.AT_LEAST_ONE(()=>e.CONSUME2(m)),"ALT")}]),e.OR2([{ALT:r(()=>{let S=e.CONSUME(i);c.push(S),e.CONSUME(g);let R=W(S),U=a.types[R];if(typeof U=="function")U.call(null,e,S);else if(Array.isArray(U)){let y=e.CONSUME3(E),O=W(y);U.includes(O)||e.addMissingError(y,`Invalid value "${O}". Must be one of: ${U.map(C=>`"${C}"`).join(", ")}`)}else e.OR4({DEF:[{GATE:r(()=>U==="boolean","GATE"),ALT:r(()=>e.SUBRULE(e.booleanValue),"ALT")},{GATE:r(()=>U==="number","GATE"),ALT:r(()=>e.SUBRULE(e.numberValue),"ALT")},{GATE:r(()=>U==="string","GATE"),ALT:r(()=>e.CONSUME1(E),"ALT")},{GATE:r(()=>U==="object","GATE"),ALT:r(()=>e.SUBRULE1(e.objectWithAttributes,{ARGS:[a]}),"ALT")},{GATE:r(()=>!U,"GATE"),ALT:r(()=>e.SUBRULE(e.expressionFn,{ARGS:[S,a]}),"ALT")}],ERR_MSG:U?`${U} for attribute ${S.image}`:void 0});s=!0},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.mockAttribute),s=!0},"ALT")}])}),e.MANY2(()=>e.CONSUME3(m)),e.CONSUME(A)})},"ALT")},{GATE:r(()=>o.length>0,"GATE"),ALT:r(()=>{e.CONSUME1(x),e.MANY4(()=>{e.OR3([{GATE:r(()=>!s,"GATE"),ALT:r(()=>e.MANY5(()=>e.CONSUME4(m)),"ALT")},{GATE:r(()=>s,"GATE"),ALT:r(()=>e.AT_LEAST_ONE1(()=>e.CONSUME5(m)),"ALT")}]),e.OR5([{ALT:r(()=>{let S=e.CONSUME1(i);c.push(S),e.CONSUME1(g);let R=W(S),U=a.types[R];if(typeof U=="function")U.call(null,e,S);else if(Array.isArray(U)){let y=e.CONSUME3(E),O=W(y);U.includes(O)||e.addMissingError(y,`Invalid value "${O}". Must be one of: ${U.map(C=>`"${C}"`).join(", ")}`)}else e.OR6({DEF:[{GATE:r(()=>U==="boolean","GATE"),ALT:r(()=>e.SUBRULE2(e.booleanValue),"ALT")},{GATE:r(()=>U==="number","GATE"),ALT:r(()=>e.SUBRULE2(e.numberValue),"ALT")},{GATE:r(()=>U==="string","GATE"),ALT:r(()=>e.CONSUME2(E),"ALT")},{GATE:r(()=>U==="object","GATE"),ALT:r(()=>e.SUBRULE2(e.objectWithAttributes,{ARGS:[a]}),"ALT")},{GATE:r(()=>!U,"GATE"),ALT:r(()=>e.SUBRULE2(e.expressionFn,{ARGS:[S,a]}),"ALT")}],ERR_MSG:U?`${U} for attribute ${S.image}`:void 0});s=!0},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{e.SUBRULE2(e.mockAttribute),l=!0,s=!0},"ALT")}])}),e.MANY6(()=>e.CONSUME6(m)),e.CONSUME1(A)},"ALT")}]});let f=c.filter((S,R)=>!a.allowDuplicates.includes(S.image)&&c.findIndex(U=>U.image===S.image)!==R);for(let S of f)e.addDuplicateAttributeError(S);let d=c.filter(S=>!p.includes(S.image));for(let S of d)e.addIllegalAttributeError(S);let h=c.map(S=>S.image),T=o.filter(S=>!h.includes(S));T.length>0&&e.addMissingAttributeError(t,T),e.sectionStack.pop()}}r(j_,"functionAttrReq");function W_(e){return()=>{e.CONSUME(Qr),e.OR([{ALT:r(()=>{e.CONSUME(L),e.OR1([{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>{e.CONSUME(H),e.CONSUME(E),e.CONSUME(z)},"ALT")}])},"ALT")},{ALT:r(()=>{e.CONSUME2(H),e.CONSUME2(E),e.CONSUME2(z)},"ALT")}]),e.SUBRULE(e.chainedIdentifier)}}r(W_,"longFormVariable");function K_(e){return()=>{e.sectionStack.push("minimalFnBody"),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")}])}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.sectionStack.pop()}}r(K_,"minimalFnBody");function Y_(e){return()=>{e.sectionStack.push("mockAttribute");let t=e.CONSUME(Td);e.CONSUME(g),e.SUBRULE(e.schemaParseObjectFn,{ARGS:[t,{"![string]":"[expression]"}]}),e.MANY(()=>e.CONSUME(m)),e.sectionStack.pop()}}r(Y_,"mockAttribute");function H_(e){return(t={})=>{e.SUBRULE(e.filterFn,{ARGS:[t]}),e.MANY({GATE:r(()=>e.LA(1).tokenType===ve||e.LA(1).tokenType===m&&e.LA(2).tokenType===ve,"GATE"),DEF:r(()=>{e.SUBRULE1(e.filterFn,{ARGS:[t]})},"DEF")})}}r(H_,"multilineFilterFn");function z_(e){return()=>{e.OR([{ALT:r(()=>{e.CONSUME(te,{ERR_MSG:"Integer literal expected"})},"ALT")},{ALT:r(()=>{e.CONSUME(we,{ERR_MSG:"Float literal expected"})},"ALT")}],{ERR_MSG:"Number literal expected"})}}r(z_,"numberValue");var Dz={allowDuplicates:[],allowQueryExpression:!1,recursive:[],recursiveArray:[],allowVariables:!0,types:{}};function J_(e){return(t,o,n,a={})=>{o=o||[],n=n||[],a={...Dz,...a};let s=[],l=[...o,...n],c;e.CONSUME(x),e.OPTION(()=>{e.OR([{ALT:r(()=>{e.AT_LEAST_ONE_SEP({SEP:le,DEF:r(()=>{c=e.OR1([{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME(E),"ALT")}]),s.push(c);let T=W(c);if(e.CONSUME(xe),a.recursive.includes(T))e.SUBRULE(e.objectAttrReq,{ARGS:[c,o,n,a]});else if(a.recursiveArray.includes(T))e.SUBRULE(e.arrayOfObjectAttrReq,{ARGS:[c,o,n,a]});else{let S=a.types[T];if(typeof S=="function")S.call(null,e,c);else if(Array.isArray(S)){let R=e.CONSUME3(E),U=W(R);S.includes(U)||e.addMissingError(R,`Invalid value "${U}". Must be one of: ${S.map(y=>`"${y}"`).join(", ")}`)}else e.OR4([{GATE:r(()=>S==="boolean","GATE"),ALT:r(()=>e.SUBRULE(e.booleanValue),"ALT")},{GATE:r(()=>S==="number","GATE"),ALT:r(()=>e.SUBRULE(e.numberValue),"ALT")},{GATE:r(()=>S==="string","GATE"),ALT:r(()=>e.CONSUME3(E),"ALT")},{GATE:r(()=>S==="object","GATE"),ALT:r(()=>e.SUBRULE1(e.objectWithAttributes,{ARGS:[a]}),"ALT")},{GATE:r(()=>!S,"GATE"),ALT:r(()=>e.SUBRULE(e.expressionFn,{ARGS:[c,a]}),"ALT")}])}},"DEF")})},"ALT")},{ALT:r(()=>{e.CONSUME(m),e.AT_LEAST_ONE(()=>{let T=e.OR2([{ALT:r(()=>e.CONSUME2(i),"ALT")},{ALT:r(()=>e.CONSUME2(E),"ALT")}]);s.push(T),e.CONSUME1(xe);let S=W(T);if(a.recursive.includes(S))e.SUBRULE(e.objectAttrReq,{ARGS:[T,o,n,a]});else if(a.recursiveArray.includes(S))e.SUBRULE(e.arrayOfObjectAttrReq,{ARGS:[T,o,n,a]});else{let R=a.types[S];if(typeof R=="function")R.call(null,e,T);else if(Array.isArray(R)){let U=e.CONSUME3(E),y=W(U);R.includes(y)||e.SAVE_ERROR(new ke(`Invalid value "${y}". Must be one of: ${R.map(O=>`"${O}"`).join(", ")}`,U,U))}else e.OR3([{GATE:r(()=>R==="boolean","GATE"),ALT:r(()=>e.SUBRULE1(e.booleanValue),"ALT")},{GATE:r(()=>R==="number","GATE"),ALT:r(()=>e.SUBRULE1(e.numberValue),"ALT")},{GATE:r(()=>R==="string","GATE"),ALT:r(()=>e.OR5([{ALT:r(()=>e.CONSUME1(E),"ALT")},{ALT:r(()=>e.CONSUME(Ve),"ALT")}]),"ALT")},{GATE:r(()=>R==="object","GATE"),ALT:r(()=>e.SUBRULE(e.objectWithAttributes,{ARGS:[a]}),"ALT")},{GATE:r(()=>!R,"GATE"),ALT:r(()=>e.SUBRULE1(e.expressionFn,{ARGS:[T,a]}),"ALT")}])}e.OPTION1(()=>e.CONSUME(le)),e.AT_LEAST_ONE1(()=>e.CONSUME1(m))})},"ALT")}])}),e.CONSUME(A);let p=s.filter((T,S)=>!a.allowDuplicates.includes(W(T))&&s.findIndex(R=>W(R)===W(T))!==S);for(let T of p)e.addDuplicateAttributeError(T);let f=s.filter(T=>!l.includes(W(T)));for(let T of f)e.addIllegalAttributeError(T);let d=s.map(W),h=o.filter(T=>!d.includes(T));h.length>0&&e.addMissingAttributeError(t,h)}}r(J_,"objectAttrReq");function X_(e){return(t={})=>{let o=[],n=e.CONSUME(x);e.MANY(()=>e.CONSUME(m)),e.MANY_SEP({SEP:m,DEF:r(()=>{let a=!1,s=!1;e.MANY1(()=>{a&&!s&&e.addMissingError(n,"Expected a separator between attributes"),e.OPTION1({GATE:r(()=>t.allowDisabledKeys===!0,"GATE"),DEF:r(()=>e.CONSUME(Ie),"DEF")});let l=e.OR1([{ALT:r(()=>e.CONSUME2(i),"ALT")},{ALT:r(()=>e.CONSUME2(E),"ALT")}]),c=W(l);o.includes(c)?e.addDuplicateAttributeError(l):o.push(c),e.CONSUME(xe),e.SUBRULE(e.expressionFn,{ARGS:[l,t]}),e.OPTION(()=>{e.CONSUME(le),s=!0}),a=!0})},"DEF")}),e.MANY3(()=>e.CONSUME3(m)),e.CONSUME(A)}}r(X_,"objectWithAttributes");function Q_(e){return()=>{e.sectionStack.push("optionalCommentBlockFn"),e.MANY(()=>{e.CONSUME(ie),e.CONSUME(m)}),e.sectionStack.pop()}}r(Q_,"optionalCommentBlockFn");function Z_(e){return()=>{e.sectionStack.push("commentBlockFn"),e.AT_LEAST_ONE(()=>{e.CONSUME(ie),e.CONSUME(m)}),e.sectionStack.pop()}}r(Z_,"commentBlockFn");function $_(e){return()=>{e.AT_LEAST_ONE(()=>{e.CONSUME(ve),e.CONSUME(i),e.MANY1(()=>{e.CONSUME(xe),e.SUBRULE(e.expressionFn)})})}}r($_,"pipedFilter");function eM(e){return()=>{e.sectionStack.push("requiredValueFnBody");let t=!1;e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>{t=!0,e.SUBRULE(e.valueFieldAttribute)},"ALT")},{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")}])}),t||e.SUBRULE(e.valueFieldAttribute),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.sectionStack.pop()}}r(eM,"requiredValueFnBody");function tM(e){return()=>{e.CONSUME(V),e.SUBRULE(e.chainedIdentifier)}}r(tM,"shortFormVariable");var rM=r(e=>()=>{let t=!0,o=e.CONSUME(H);e.MANY(()=>e.CONSUME(m)),e.MANY1(()=>{t||e.addMissingError(o,"Missing comma or newline between string values in the array"),o=e.CONSUME(E),t=!1,e.OPTION(()=>{e.CONSUME(le),t=!0}),e.MANY2(()=>{e.CONSUME1(m),t=!0})}),e.CONSUME(z)},"stringArray");function oM(e){return()=>{e.CONSUME($m),e.CONSUME(g),e.SUBRULE(e.stringArray)}}r(oM,"tagsAttribute");function nM(e){return Object.hasOwn(e,"emptyArray")||(e.emptyArray=e.RULE("emptyArray",()=>{e.CONSUME(H),e.CONSUME(z)})),()=>{e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(qt),"ALT")},{ALT:r(()=>e.CONSUME(we),"ALT")},{ALT:r(()=>e.CONSUME(te),"ALT")},{ALT:r(()=>e.CONSUME(Oe),"ALT")},{ALT:r(()=>e.CONSUME(Ce),"ALT")},{ALT:r(()=>e.CONSUME(Zr),"ALT")},{ALT:r(()=>e.CONSUME(jt),"ALT")},{ALT:r(()=>e.SUBRULE(e.longFormVariable),"ALT")},{ALT:r(()=>e.SUBRULE(e.completeAuthVariable),"ALT")},{ALT:r(()=>e.SUBRULE(e.completeEnvVariable),"ALT")},{ALT:r(()=>e.SUBRULE(e.completeInputVariable),"ALT")},{ALT:r(()=>e.SUBRULE(e.shortFormVariable),"ALT")},{ALT:r(()=>e.SUBRULE(e.castedValue),"ALT")},{ALT:r(()=>e.SUBRULE(e.emptyArray),"ALT")}]),e.OPTION(()=>{e.SUBRULE(e.pipedFilter)})}}r(nM,"valueExpressionForResponse");function aM(e){return()=>{e.OR([{ALT:r(()=>e.SUBRULE(e.longFormVariable),"ALT")},{ALT:r(()=>e.SUBRULE(e.shortFormVariable),"ALT")}]),e.OPTION(()=>e.SUBRULE(e.pipedFilter))}}r(aM,"variableOnly");var iM=r(e=>{e.mockAttribute=e.RULE("mockAttribute",Y_(e)),e.arrayOfObjectAttrReq=e.RULE("arrayOfObjectAttrReq",U_(e)),e.arrayOfStringLiterals=e.RULE("arrayOfStringLiterals",R_(e)),e.arrayWithValues=e.RULE("arrayWithValues",L_(e)),e.assignableVariableAs=e.RULE("assignableVariableAs",k_(e)),e.assignableVariableProperty=e.RULE("assignableVariableProperty",O_(e)),e.booleanValue=e.RULE("booleanValue",N_(e)),e.castedValue=e.RULE("castedValue",__(e)),e.chainedIdentifier=e.RULE("chainedIdentifier",M_(e)),e.singleChainedIdentifier=e.RULE("singleChainedIdentifier",F_(e)),e.enumValue=e.RULE("enumValue",B_(e)),e.expressionFn=e.RULE("expressionFn",G_(e)),e.simpleExpressionFn=e.RULE("simpleExpressionFn",V_(e)),e.expressionTestFn=e.RULE("expressionTestFn",D_(e)),e.functionAttrReq=e.RULE("functionAttrReq",j_(e)),e.filterFn=e.RULE("filterFn",q_(e)),e.multilineFilterFn=e.RULE("multilineFilterFn",H_(e)),e.longFormVariable=e.RULE("longFormVariable",W_(e)),e.minimalFnBody=e.RULE("minimalFnBody",K_(e)),e.numberValue=e.RULE("numberValue",z_(e)),e.objectAttrReq=e.RULE("objectAttrReq",J_(e)),e.objectWithAttributes=e.RULE("objectWithAttributes",X_(e)),e.pipedFilter=e.RULE("pipedFilter",$_(e)),e.requiredValueFnBody=e.RULE("requiredValueFnBody",eM(e)),e.shortFormVariable=e.RULE("shortFormVariable",tM(e)),e.stringArray=e.RULE("stringArray",rM(e)),e.tagsAttribute=e.RULE("tagsAttribute",oM(e)),e.expressionFnForResponse=e.RULE("valueExpressionForResponse",nM(e)),e.variableOnly=e.RULE("variableOnly",aM(e)),e.completeAuthVariable=e.RULE("completeAuthVariable",I_(e)),e.bracketAccessor=e.RULE("bracketAccessor",y_(e)),e.bracketArrayAccessor=e.RULE("bracketArrayAccessor",b_(e)),e.completeInputVariable=e.RULE("completeInputVariable",P_(e)),e.completeErrorVariable=e.RULE("completeErrorVariable",w_(e)),e.completeEnvVariable=e.RULE("completeEnvVariable",v_(e)),e.asVariable=e.RULE("asVariable",C_(e)),e.optionalCommentBlockFn=e.RULE("optionalCommentBlockFn",Q_(e)),e.commentBlockFn=e.RULE("commentBlockFn",Z_(e))},"register");function sM(e){return()=>{let t=!1,o=!1,n=!1,a=!1,s=!1,l=!1,c=!1,p=!1;e.sectionStack.push("mcpServerDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let f=e.CONSUME(Nu);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.commentBlockFn),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.CONSUME(Ou),e.CONSUME(g),e.SUBRULE(e.booleanValue)},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.SUBRULE(e.canonicalClause)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!a,"GATE"),ALT:r(()=>{a=!0,e.SUBRULE(e.docsFieldAttribute)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE1(e.flexibleStringClause,{ARGS:[Cu]})},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.tagsAttribute)},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0;let d=e.CONSUME(yu);e.CONSUME2(g),e.SUBRULE(e.arrayOfObjectAttrReq,{ARGS:[d,["name"],["active","auth"],{types:{active:"boolean",auth:"string",name:"string"}}]})},"ALT")}])}),p||e.addMissingError(f,"{} is missing tools clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(sM,"mcpServerDeclaration");function lM(e){return()=>{let t=!1,o=!1,n=!1,a=!1,s=!1,l=!1,c=!1,p=!1,f=!1;e.sectionStack.push("mcpServerTriggerDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let d=e.CONSUME(Mu);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.commentBlockFn),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0;let h=e.CONSUME(bu);e.CONSUME(g),e.SUBRULE(e.objectAttrReq,{ARGS:[h,["connection"],[],{types:{connection:"boolean"}}]})},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.CONSUME(_u),e.CONSUME2(g),e.SUBRULE(e.booleanValue)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!a,"GATE"),ALT:r(()=>{a=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.inputClause)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.mcpServerClause)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.responseClause)},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.stackClause)},"ALT")},{GATE:r(()=>!f,"GATE"),ALT:r(()=>{f=!0,e.SUBRULE(e.tagsAttribute)},"ALT")}])}),l||e.addMissingError(d,"{} is missing mcp_server clause"),s||e.addMissingError(d,"{} is missing an input clause"),p||e.addMissingError(d,"{} is missing a stack clause"),c||e.addMissingError(d,"{} is missing a response clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(lM,"mcpServerTriggerDeclaration");function cM(e){return()=>{e.sectionStack.push("columnMetadataDefinition"),e.CONSUME(x),e.AT_LEAST_ONE(()=>{e.CONSUME(m),e.OR([{ALT:r(()=>e.SUBRULE(e.sensitiveFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>{e.CONSUME(Jr),e.CONSUME(g),e.CONSUME(E)},"ALT")}])}),e.AT_LEAST_ONE1(()=>e.CONSUME1(m)),e.CONSUME(A),e.sectionStack.pop()}}r(cM,"columnMetadataDefinition");function pM(e){return t=>{e.sectionStack.push("enumColumnMetadataDefinition"),e.CONSUME(x);let o=!1,n=!1,a=!1;e.MANY(()=>{e.AT_LEAST_ONE1(()=>e.CONSUME1(m)),e.OR([{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.SUBRULE(e.valuesFieldAttribute)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>e.SUBRULE(e.sensitiveFieldAttribute),"ALT")},{GATE:r(()=>!a,"GATE"),ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")}])}),o||e.addMissingError(t,"{} is missing the values attribute"),e.AT_LEAST_ONE2(()=>e.CONSUME2(m)),e.CONSUME(A),e.sectionStack.pop()}}r(pM,"enumColumnMetadataDefinition");function uM(e){return()=>{e.sectionStack.push("objectColumnMetadataDefinition"),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>e.SUBRULE(e.sensitiveFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.schemaClause,{ARGS:[{include_file:!1}]}),"ALT")}])}),e.AT_LEAST_ONE1(()=>e.CONSUME1(m)),e.CONSUME(A),e.sectionStack.pop()}}r(uM,"objectColumnMetadataDefinition");function fM(e){e.columnMetadataDefinition=e.RULE("columnMetadataDefinition",cM(e)),e.enumColumnMetadataDefinition=e.RULE("enumColumnMetadataDefinition",pM(e)),e.objectColumnMetadataDefinition=e.RULE("objectColumnMetadataDefinition",uM(e))}r(fM,"register");function mM(e){return()=>{let t=!1,o=!1,n=!1,a=!1,s=!1,l=!1,c=!1,p=!1,f=!1,d=[];e.sectionStack.push("middlewareDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let h=e.CONSUME(la);e.OR([{ALT:r(()=>e.CONSUME(i),"ALT")},{ALT:r(()=>e.CONSUME(E),"ALT")}]),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.commentBlockFn),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.SUBRULE(e.docsFieldAttribute)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.CONSUME(Fu),e.CONSUME(g),e.SUBRULE(e.enumValue,{ARGS:["silent","rethrow","critical"]})},"ALT")},{GATE:r(()=>!a,"GATE"),ALT:r(()=>{a=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.inputClause)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.responseClause)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.CONSUME(Iu),e.CONSUME2(g),e.SUBRULE2(e.enumValue,{ARGS:["merge","replace"]})},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.stackClause)},"ALT")},{GATE:r(()=>!f,"GATE"),ALT:r(()=>{f=!0,e.SUBRULE(e.tagsAttribute)},"ALT")},{ALT:r(()=>{e.SUBRULE(e.testClause,{ARGS:[d]})},"ALT")}])}),s||e.addMissingError(h,"{} is missing an input clause"),p||e.addMissingError(h,"{} is missing a stack clause"),l||e.addMissingError(h,"{} is missing a response clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(mM,"middlewareDeclaration");function dM(e){return()=>{let t=!1,o=!1,n=!1,a=!1,s=!1,l=!1,c=!1,p=!1,f=!1,d=!1,h=!1,T=!1,S=[];e.sectionStack.push("queryDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let R=e.CONSUME(Du);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]),e.CONSUME(ca),e.CONSUME(g),e.OR1([{ALT:r(()=>e.CONSUME(da),"ALT")},{ALT:r(()=>e.CONSUME(pa),"ALT")},{ALT:r(()=>e.CONSUME(ua),"ALT")},{ALT:r(()=>e.CONSUME(fa),"ALT")},{ALT:r(()=>e.CONSUME(ma),"ALT")}]),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.CONSUME(ie),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.CONSUME(ga),e.CONSUME1(g),e.CONSUME1(E)},"ALT")},{GATE:r(()=>!T,"GATE"),ALT:r(()=>{T=!0,e.CONSUME(Vu),e.CONSUME8(g);let U=e.CONSUME2(E),y=W(U);["stream","standard"].includes(y)||e.addInvalidValueError(U,"response_type must be either 'stream' or 'standard'")},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.SUBRULE(e.cacheClause)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!h,"GATE"),ALT:r(()=>{h=!0,e.CONSUME(Fn),e.CONSUME2(g),e.CONSUME3(E)},"ALT")},{GATE:r(()=>!a,"GATE"),ALT:r(()=>{a=!0,e.SUBRULE(e.docsFieldAttribute)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.inputClause)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.middlewareClause)},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.responseClause)},"ALT")},{GATE:r(()=>!f,"GATE"),ALT:r(()=>{f=!0,e.SUBRULE(e.stackClause)},"ALT")},{GATE:r(()=>!d,"GATE"),ALT:r(()=>{d=!0,e.SUBRULE(e.tagsAttribute)},"ALT")},{ALT:r(()=>{e.SUBRULE(e.testClause,{ARGS:[S]})},"ALT")}])}),l||e.addMissingError(R,"{} is missing an input clause"),f||e.addMissingError(R,"{} is missing a stack clause"),p||e.addMissingError(R,"{} is missing a response clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(dM,"queryDeclaration");function hM(e){return()=>{e.sectionStack.push("realtimeChannelDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let t=e.CONSUME(Yu);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"description?":"[string]","active?":"[boolean]","public_messaging?":{"active?":"[boolean]","auth?":"[boolean]"},"private_messaging?":{"active?":"[boolean]","auth?":"[boolean]"},"settings?":{anonymous_clients:"[boolean]",nested_channels:"[boolean]",message_history:[0,25,50,100,250,1e3],auth_channel:"[boolean]",presence:"[boolean]"}}]}),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(hM,"realtimeChannelDeclaration");function TM(e){return()=>{let t=!1,o=!1,n=!1,a=!1,s=!1,l=!1,c=!1,p=!1,f=!1;e.sectionStack.push("realtimeTriggerDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let d=e.CONSUME(Ku);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.commentBlockFn),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0;let h=e.CONSUME(ju);e.CONSUME(g),e.SUBRULE(e.objectAttrReq,{ARGS:[h,[],["join","message"],{types:{join:"boolean",message:"boolean"}}]})},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.CONSUME(Wu),e.CONSUME2(g),e.SUBRULE(e.booleanValue)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.channelClause)},"ALT")},{GATE:r(()=>!a,"GATE"),ALT:r(()=>{a=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.inputClause)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.responseClause)},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.stackClause)},"ALT")},{GATE:r(()=>!f,"GATE"),ALT:r(()=>{f=!0,e.SUBRULE(e.tagsAttribute)},"ALT")}])}),n||e.addMissingError(d,"{} is missing channel clause"),l||e.addMissingError(d,"{} is missing an input clause"),p||e.addMissingError(d,"{} is missing a stack clause"),c||e.addMissingError(d,"{} is missing a response clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(TM,"realtimeTriggerDeclaration");function EM(e){return()=>{e.sectionStack.push("runDeclaration"),e.SUBRULE(e.optionalCommentBlockFn),e.CONSUME(pf),e.CONSUME(L),e.OR([{ALT:r(()=>e.SUBRULE(e.runJobClause),"ALT")},{ALT:r(()=>e.SUBRULE(e.runServiceClause),"ALT")}]),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(EM,"runDeclaration");function SM(e){return()=>{let t=e.CONSUME(uf);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{main:{name:"[string]",input:{"[string]?":"[constant]"}},"env?":["[string]"]}]})}}r(SM,"runJobClause");function gM(e){return()=>{let t=e.CONSUME(ff);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"pre?":{name:"[string]",input:{"[string]?":"[constant]"}},"env?":["[string]"]}]})}}r(gM,"runServiceClause");function xM(e){return()=>{e.sectionStack.push("tableDeclaration"),e.SUBRULE(e.optionalCommentBlockFn),e.CONSUME(Jr),e.OR1([{ALT:r(()=>e.CONSUME(E,{ERR_MSG:"expected table name after table statement"}),"ALT")},{ALT:r(()=>e.CONSUME(i,{ERR_MSG:"expected table name after table statement"}),"ALT")}]);let t=!1,o=!1,n=!1,a=!1,s=!1,l=!1,c=!1,p=!1,f={};e.CONSUME(x),e.sectionStack.push("tableBody"),e.MANY(()=>e.CONSUME(m)),e.MANY1(()=>{e.OR([{ALT:r(()=>e.CONSUME(ie),"ALT")},{GATE:r(()=>!a,"GATE"),ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>e.SUBRULE(e.tagsAttribute),"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>e.SUBRULE(e.authClause),"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>e.SUBRULE(e.viewClause),"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0;let d=e.CONSUME(jf);e.CONSUME(g),e.SUBRULE(e.schemaParseArrayFn,{ARGS:[d,[{"[string]":"[expression]"}]]})},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0;let d=e.CONSUME(qf);e.CONSUME1(g),e.SUBRULE1(e.schemaParseArrayFn,{ARGS:[d,[{"[string]":"[string]"}]]})},"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>e.SUBRULE(e.schemaClause,{ARGS:[{isTableSchema:!0},f]}),"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>e.SUBRULE(e.indexClause),"ALT")}]),e.AT_LEAST_ONE1(()=>e.CONSUME1(m))}),e.sectionStack.pop(),e.CONSUME(A),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(xM,"tableDeclaration");function AM(e){return()=>{let t=!1,o=!1,n=!1,a=!1,s=!1,l=!1,c=!1,p=!1,f=!1;e.sectionStack.push("tableTriggerDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let d=e.CONSUME(Hf);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.commentBlockFn),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0;let h=e.CONSUME(Wf);e.CONSUME(g),e.SUBRULE(e.objectAttrReq,{ARGS:[h,[],["delete","insert","truncate","update"],{types:{delete:"boolean",insert:"boolean",truncate:"boolean",update:"boolean"}}]})},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.CONSUME(Kf),e.CONSUME2(g),e.SUBRULE(e.booleanValue)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.CONSUME(Yf),e.CONSUME3(g),e.SUBRULE(e.arrayOfStringLiterals)},"ALT")},{GATE:r(()=>!a,"GATE"),ALT:r(()=>{a=!0,e.SUBRULE(e.dbTableClause)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.inputClause)},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.stackClause)},"ALT")},{GATE:r(()=>!f,"GATE"),ALT:r(()=>{f=!0,e.SUBRULE(e.tagsAttribute)},"ALT")}])}),a||e.addMissingError(d,"{} is missing table clause"),c||e.addMissingError(d,"{} is missing an input clause"),p||e.addMissingError(d,"{} is missing a stack clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(AM,"tableTriggerDeclaration");function UM(e){return()=>{let t=!1,o=!1,n=!1,a=!1,s=!1,l=!1,c=!1,p=!1,f=!1,d=[];e.sectionStack.push("taskDeclaration"),e.SUBRULE(e.optionalCommentBlockFn),e.CONSUME(ha),e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.commentBlockFn),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.CONSUME(Mn),e.CONSUME(g),e.SUBRULE(e.booleanValue)},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.CONSUME(Jf),e.CONSUME2(g),e.CONSUME2(E)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!a,"GATE"),ALT:r(()=>{a=!0,e.SUBRULE(e.docsFieldAttribute)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.middlewareClause)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.scheduleClause)},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.stackClause)},"ALT")},{GATE:r(()=>!f,"GATE"),ALT:r(()=>{f=!0,e.SUBRULE(e.tagsAttribute)},"ALT")},{ALT:r(()=>{e.SUBRULE(e.testClause,{ARGS:[d]})},"ALT")}])}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(UM,"taskDeclaration");function RM(e){return()=>{let t=!1,o=!1,n=!1,a=!1,s=!1,l=!1,c=!1,p=!1,f=!1;e.sectionStack.push("toolDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let d=e.CONSUME(zr);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.commentBlockFn),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.SUBRULE(e.docsFieldAttribute)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!a,"GATE"),ALT:r(()=>{a=!0,e.SUBRULE(e.inputClause)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.flexibleStringClause,{ARGS:[ku]})},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.middlewareClause)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.responseClause)},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.stackClause,{ARGS:[{allowCallStatements:!0}]})},"ALT")},{GATE:r(()=>!f,"GATE"),ALT:r(()=>{f=!0,e.SUBRULE(e.tagsAttribute)},"ALT")}])}),a||e.addMissingError(d,"{} is missing an input clause"),p||e.addMissingError(d,"{} is missing a stack clause"),c||e.addMissingError(d,"{} is missing a response clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(RM,"toolDeclaration");function LM(e){return()=>{let t=!1,o=!1,n=!1,a=!1;e.sectionStack.push("workflowTestDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let s=e.CONSUME(qm);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.commentBlockFn),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.CONSUME(Ta),e.CONSUME(g),e.CONSUME2(E)},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.stackClause,{ARGS:[{allowExpectStatements:!0,allowCallStatements:!0}]})},"ALT")},{GATE:r(()=>!a,"GATE"),ALT:r(()=>{a=!0,e.SUBRULE(e.tagsAttribute)},"ALT")}])}),n||e.addMissingError(s,"{} is missing a stack clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(LM,"workflowTestDeclaration");function kM(e){return()=>{e.sectionStack.push("workspaceDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let t=e.CONSUME(jm);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"env?":{"[string]":"[string]"},"acceptance?":{"ai_terms?":"[boolean]"},"description?":"[string]","preferences?":{"internal_docs?":"[boolean]","sql_columns?":"[boolean]","sql_names?":"[boolean]","track_performance?":"[boolean]"},"realtime?":{"canonical?":"[string]"}}]}),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(kM,"workspaceDeclaration");function OM(e){return()=>{let t=!1,o=!1,n=!1,a=!1,s=!1,l=!1,c=!1;e.sectionStack.push("workspaceTriggerDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let p=e.CONSUME(Ym);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(i),"ALT")}]),e.CONSUME(x),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.commentBlockFn),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0;let f=e.CONSUME(Wm);e.CONSUME(g),e.SUBRULE(e.objectAttrReq,{ARGS:[f,[],["branch_live","branch_merge","branch_new"],{types:{branch_live:"boolean",branch_merge:"boolean",branch_new:"boolean"}}]})},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.CONSUME(Km),e.CONSUME2(g),e.SUBRULE(e.booleanValue)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!a,"GATE"),ALT:r(()=>{a=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.inputClause)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.stackClause)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.tagsAttribute)},"ALT")}])}),s||e.addMissingError(p,"{} is missing an input clause"),l||e.addMissingError(p,"{} is missing a stack clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(A),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(OM,"workspaceTriggerDeclaration");var CM=r(e=>{iM(e),AC(e),YO(e),A_(e),fM(e),dC(e),e.addonDeclaration=e.RULE("addonDeclaration",MO(e)),e.agentDeclaration=e.RULE("agentDeclaration",FO(e)),e.agentTriggerDeclaration=e.RULE("agentTriggerDeclaration",IO(e)),e.queryDeclaration=e.RULE("queryDeclaration",dM(e)),e.apiGroupDeclaration=e.RULE("apiGroupDeclaration",vO(e)),e.branchDeclaration=e.RULE("branchDeclaration",HO(e)),e.tableDeclaration=e.RULE("tableDeclaration",xM(e)),e.mcpServerDeclaration=e.RULE("mcpServerDeclaration",sM(e)),e.mcpServerTriggerDeclaration=e.RULE("mcpServerTriggerDeclaration",lM(e)),e.middlewareDeclaration=e.RULE("middlewareDeclaration",mM(e)),e.realtimeTriggerDeclaration=e.RULE("realtimeTriggerDeclaration",TM(e)),e.realtimeChannelDeclaration=e.RULE("realtimeChannelDeclaration",hM(e)),e.runDeclaration=e.RULE("runDeclaration",EM(e)),e.runJobClause=e.RULE("runJobClause",SM(e)),e.runServiceClause=e.RULE("runServiceClause",gM(e)),e.tableTriggerDeclaration=e.RULE("tableTriggerDeclaration",AM(e)),e.taskDeclaration=e.RULE("taskDeclaration",UM(e)),e.toolDeclaration=e.RULE("toolDeclaration",RM(e)),e.workflowTestDeclaration=e.RULE("workflowTestDeclaration",LM(e)),e.workspaceDeclaration=e.RULE("workspaceDeclaration",kM(e)),e.workspaceTriggerDeclaration=e.RULE("workspaceTriggerDeclaration",OM(e)),e.functionDeclaration=e.RULE("functionDeclaration",UC(e))},"register");var Vz={buildMismatchTokenMessage:or.buildMismatchTokenMessage,buildEarlyExitMessage:or.buildEarlyExitMessage,buildNotAllInputParsedMessage:or.buildNotAllInputParsedMessage,buildNoViableAltMessage:or.buildNoViableAltMessage},Ud=class extends $a{static{r(this,"XanoBaseParser")}constructor(t){super(t,{errorMessageProvider:Vz,recoveryEnabled:!1}),CM(this),this.sectionStack=[],this.warnings=[],this.reset()}functionAttrReq(){}addVariable(t,o,n=null){this.__symbolTable.var[t]={type:o,value:n}}addInput(t,o,n=!1,a=!1,s=!1){this.__symbolTable.input[t]={type:o,iterable:n,nullable:a,optional:s}}addWarning(t,o){o=o||this.LA(0),this.warnings.push({message:t,token:o})}addInformation(t,o){o=o||this.LA(0),this.informations.push({message:t,token:o})}addHint(t,o){o=o||this.LA(0),this.hints.push({message:t,token:o})}addMissingError(t,o){t=t||this.LA(0),this.SAVE_ERROR(new ke(o.replaceAll("{}",t.image),t))}addMissingAttributeError(t,o){t=t||this.LA(0),o=[].concat(o);let n=o.join(", "),a=o.length===1?`${t.image} is missing the ${n} attribute`:`${t.image} is missing the following attributes: ${n}`;this.SAVE_ERROR(new ke(a,t))}addIllegalAttributeError(t,o){t=t||this.LA(0),o||(o=`Attribute \`${t.image}\` is not allowed`),this.SAVE_ERROR(new ke(o,t))}addExpectedValueTypeError(t,o){t=t||this.LA(0),this.SAVE_ERROR(new ke(`Expected value of \`${t.image}\` to be of type \`${o}\``,t))}addExpectedValueError(t,o){t=t||this.LA(0),j(o)&&o.length>1?this.SAVE_ERROR(new ke(`Expected value of \`${t.image}\` to be one of ${o.map(n=>`\`${n}\``).join(", ")}`,t)):this.SAVE_ERROR(new ke(`Expected value of \`${t.image}\` to be \`${o}\``,t))}addDuplicateAttributeError(t){t=t||this.LA(0),this.SAVE_ERROR(new ke(`Duplicate attribute \`${t.image}\``,t))}addDuplicateNameError(t,o){t=t||this.LA(0),o?this.SAVE_ERROR(new ke(`Duplicate ${o} name '${t.image}'`,t)):this.SAVE_ERROR(new ke(`Duplicate name '${t.image}'`,t))}addInvalidValueError(t,o){t=t||this.LA(0),this.SAVE_ERROR(new ke(o,t))}requireRules(...t){for(let o of t){if(typeof o!="function")throw new Error(`requireRules only accepts functions, ${typeof o} given`);Object.hasOwn(this,o.name)||(this[o.name]=this.RULE(o.name,o(this)))}}reset(){super.reset(),this.sectionStack=[],this.warnings=[],this.informations=[],this.hints=[],this.__symbolTable={input:{},var:{},auth:{},env:{}}}};function NM(e,t,o=null){t||(t=gd(e));let n=o||_O(e);switch(G.input=n.tokens,t.toLowerCase()){case"addon":return G.addonDeclaration(),G;case"agent":return G.agentDeclaration(),G;case"agent_trigger":return G.agentTriggerDeclaration(),G;case"api":return G.queryDeclaration(),G;case"api_group":return G.apiGroupDeclaration(),G;case"branch":return G.branchDeclaration(),G;case"db":return G.tableDeclaration(),G;case"mcp_server":return G.mcpServerDeclaration(),G;case"mcp_server_trigger":return G.mcpServerTriggerDeclaration(),G;case"middleware":return G.middlewareDeclaration(),G;case"realtime_trigger":return G.realtimeTriggerDeclaration(),G;case"realtime_channel":return G.realtimeChannelDeclaration(),G;case"run":return G.runDeclaration(),G;case"table_trigger":return G.tableTriggerDeclaration(),G;case"task":return G.taskDeclaration(),G;case"tool":return G.toolDeclaration(),G;case"workflow_test":return G.workflowTestDeclaration(),G;case"workspace":return G.workspaceDeclaration(),G;case"workspace_trigger":return G.workspaceTriggerDeclaration(),G;case"cfn":default:return G.functionDeclaration(),G}}r(NM,"xanoscriptParser");var Xh=class extends Ud{static{r(this,"XanoScriptParser")}constructor(){super(xa),this.performSelfAnalysis()}},G=new Xh;function yM(e,t){let o=gd(t??e);try{let n=NM(e,o);return n.errors.length===0?[]:n.errors.map(s=>{let l=s.token?.startOffset??0,c=s.token?.endOffset??5,p=e.substring(0,l).split(`
110
- `),f=p.length-1,d=p[p.length-1].length,h=e.substring(0,c+1).split(`
111
- `),T=h.length-1,S=h[h.length-1].length;return{range:{start:{line:f,character:d},end:{line:T,character:S}},message:s.message,source:s.name||"XanoScript Parser"}})}catch(n){console.error("Error checking for XanoScripterrors:",n)}}r(yM,"onCheckError");function qz(e,t){return yM(e,t)}r(qz,"checkError");window.xsLanguageServer={checkError:qz};})();
108
+ For further details.`);this.skipValidations=F(o,"skipValidations")?o.skipValidations:We.skipValidations}};On.DEFER_DEFINITION_ERRORS_HANDLING=!1;ih(On,[Ja,Za,ri,oi,ai,ni,ii,si,ci,pi]);var Nn=class extends On{static{r(this,"CstParser")}constructor(t,o=We){let n=X(o);n.outputCst=!0,super(t,n)}};var Wm=new Map;function R(e){let{pattern:t}=e,o=t.toString();if(Wm.has(o))return Wm.get(o);let n=wt(e);return Wm.set(o,n),n}r(R,"createUniqToken");function u(e,t){return R({name:`${e} token`,pattern:new RegExp(e),label:e,...t})}r(u,"createTokenByName");var Ym=R({name:"DisabledStatementToken",pattern:/![a-zA-Z][\w.]*/}),sh=R({name:"IntCast",pattern:/!int/,label:"!int"}),ch=R({name:"BoolCast",pattern:/!bool/,label:"!bool"}),lh=R({name:"ArrayCast",pattern:/!array/,label:"!array"}),uh=R({name:"TextCast",pattern:/!text/,label:"!text"}),ph=R({name:"ExpressionCast",pattern:/!expr/,label:"!expr"}),mh=R({name:"DecimalCast",pattern:/!decimal/,label:"!decimal"}),fh=R({name:"ObjectCast",pattern:/!object/,label:"!object"}),dh=R({name:"TimestampCast",pattern:/!timestamp/,label:"!timestamp"}),ye=R({name:"ExclamationToken",pattern:/!/}),mi=[sh,lh,uh,ph,mh,fh,dh,ch,ye];function Th(e){switch(e){case sh.name:case lh.name:case uh.name:case ph.name:case mh.name:case fh.name:case dh.name:case ch.name:return"type";case Ym.name:return"comment";case ye.name:return"operator";default:return null}}r(Th,"mapTokenToType");var a=R({name:"Identifier",pattern:/[a-zA-Z_]\w*/});var fi=u("action",{longer_alt:a,categories:[a]}),ir=u("call",{longer_alt:a,categories:[a]}),Eh=[fi,ir];function hh(e){switch(e){case fi.name:return"keyword";case ir.name:return"function";default:return null}}r(hh,"mapTokenToType");var no=u("addon",{longer_alt:a,categories:[a]}),di=u("call",{longer_alt:a,categories:[a]}),Sh=[no,di];function Ah(e){switch(e){case no.name:return"keyword";case di.name:return"function";default:return null}}r(Ah,"mapTokenToType");var Ti=u("agent",{longer_alt:a,categories:[a]}),Ei=u("llm",{longer_alt:a,categories:[a]}),hi=u("tools",{longer_alt:a,categories:[a]}),Uh=[Ti,Ei,hi];function gh(e){switch(e){case Ti.name:case Ei.name:case hi.name:return"keyword";default:return null}}r(gh,"mapTokenToType");var Si=u("actions",{longer_alt:a,categories:[a]}),Ai=u("active",{longer_alt:a,categories:[a]}),Ui=u("agent_trigger",{longer_alt:a,categories:[a]}),kh=[Si,Ai,Ui];function Rh(e){switch(e){case Si.name:case Ui.name:return"keyword";case Ai.name:return"variable";default:return null}}r(Rh,"mapTokenToType");var gi=u("ai",{longer_alt:a,categories:[a]}),ki=u("agent",{longer_alt:a,categories:[a]}),ao=u("run",{longer_alt:a,categories:[a]}),Ri=u("external",{longer_alt:a,categories:[a]}),Li=u("mcp",{longer_alt:a,categories:[a]}),xi=u("tool",{longer_alt:a,categories:[a]}),Ci=u("list",{longer_alt:a,categories:[a]}),Oi=u("server_details",{longer_alt:a,categories:[a]}),Lh=[gi,ki,ao,Ri,Li,xi,Ci,Oi];function xh(e){switch(e){case gi.name:case ki.name:case ao.name:case Ri.name:case Li.name:case xi.name:case Ci.name:case Oi.name:return"keyword";default:return null}}r(xh,"mapTokenToType");var Ni=u("api",{longer_alt:a,categories:[a]}),bi=u("webflow",{longer_alt:a,categories:[a]}),io=u("request",{longer_alt:a,categories:[a]}),yi=u("call",{longer_alt:a,categories:[a]}),Mi=u("realtime_event",{longer_alt:a,categories:[a]}),Fi=u("stream",{longer_alt:a,categories:[a]}),_i=u("lambda",{longer_alt:a,categories:[a]}),Ch=u("microservice",{longer_alt:a,categories:[a]}),Oh=[Ni,bi,io,yi,Mi,Fi,_i,Ch];function Nh(e){switch(e){case Ni.name:case bi.name:case io.name:case _i.name:case Mi.name:case Fi.name:case Ch.name:case yi.name:return"function";default:return null}}r(Nh,"mapTokenToType");var so=u("active",{longer_alt:a,categories:[a]}),co=u("api_group",{longer_alt:a,categories:[a]}),Ii=u("canonical",{longer_alt:a,categories:[a]}),vi=u("cors",{longer_alt:a,categories:[a]}),wi=u("swagger",{longer_alt:a,categories:[a]}),bh=[so,co,Ii,vi,wi];function yh(e){switch(e){case co.name:return"keyword";case so.name:case Ii.name:case vi.name:case wi.name:return"variable";default:return null}}r(yh,"mapTokenToType");var Bi=u("array",{longer_alt:a,categories:[a]}),Pi=u("every",{longer_alt:a,categories:[a]}),Gi=u("filter_count",{longer_alt:a,categories:[a]}),Di=u("filter",{longer_alt:a,categories:[a]}),Vi=u("find",{longer_alt:a,categories:[a]}),qi=u("find_index",{longer_alt:a,categories:[a]}),ji=u("has",{longer_alt:a,categories:[a]}),Wi=u("merge",{longer_alt:a,categories:[a]}),Yi=u("pop",{longer_alt:a,categories:[a]}),Ki=u("push",{longer_alt:a,categories:[a]}),Hi=u("shift",{longer_alt:a,categories:[a]}),zi=u("unshift",{longer_alt:a,categories:[a]}),Ji=u("map",{longer_alt:a,categories:[a]}),Xi=u("partition",{longer_alt:a,categories:[a]}),Qi=u("group_by",{longer_alt:a,categories:[a]}),Zi=u("difference",{longer_alt:a,categories:[a]}),$i=u("intersection",{longer_alt:a,categories:[a]}),es=u("union",{longer_alt:a,categories:[a]}),Mh=[Bi,Pi,Gi,Di,qi,Vi,ji,Wi,Yi,Ki,Hi,zi,Ji,Xi,Qi,Zi,$i,es];function Fh(e){switch(e){case Bi.name:case Pi.name:case Gi.name:case Di.name:case Vi.name:case qi.name:case ji.name:case Wi.name:case Yi.name:case Ki.name:case Hi.name:case zi.name:case Ji.name:case Xi.name:case Qi.name:case Zi.name:case $i.name:case es.name:return"function";default:return null}}r(Fh,"mapTokenToType");var ts=u("branch",{longer_alt:a,categories:[a]}),_h=u("color",{longer_alt:a,categories:[a]}),Ih=[ts,_h];function vh(e){switch(e){case ts.name:return"keyword";case _h.name:return"variable";default:return null}}r(vh,"mapTokenToType");var rs=u("cloud",{longer_alt:a,categories:[a]}),os=u("algolia",{longer_alt:a,categories:[a]}),ns=u("google",{longer_alt:a,categories:[a]}),as=u("aws",{longer_alt:a,categories:[a]}),is=u("elasticsearch",{longer_alt:a,categories:[a]}),ss=u("azure",{longer_alt:a,categories:[a]}),cs=u("storage",{longer_alt:a,categories:[a]}),ls=u("read_file",{longer_alt:a,categories:[a]}),us=u("delete_file",{longer_alt:a,categories:[a]}),ps=u("get_file_info",{longer_alt:a,categories:[a]}),ms=u("list_directory",{longer_alt:a,categories:[a]}),fs=u("s3",{longer_alt:a,categories:[a]}),ds=u("sign_url",{longer_alt:a,categories:[a]}),Ts=u("upload_file",{longer_alt:a,categories:[a]}),Es=u("opensearch",{longer_alt:a,categories:[a]}),hs=u("document",{longer_alt:a,categories:[a]}),Ss=u("query",{longer_alt:a,categories:[a]}),lo=u("request",{longer_alt:a,categories:[a]}),wh=[rs,os,ns,as,is,ss,cs,ls,us,ps,ms,fs,ds,Ts,Es,hs,Ss,lo];function Bh(e){switch(e){case rs.name:case os.name:case ns.name:case as.name:case is.name:case ss.name:case cs.name:case fs.name:case Es.name:case ls.name:case us.name:case ps.name:case ms.name:case ds.name:case Ts.name:case hs.name:case Ss.name:case lo.name:return"function";default:return null}}r(Bh,"mapTokenToType");var As=u("int",{longer_alt:a,categories:[a]}),Us=u("timestamp",{longer_alt:a,categories:[a]}),uo=u("text",{longer_alt:a,categories:[a]}),gs=u("uuid",{longer_alt:a,categories:[a]}),ks=u("vector",{longer_alt:a,categories:[a]}),Rs=u("enum",{longer_alt:a,categories:[a]}),Ls=u("date",{longer_alt:a,categories:[a]}),xs=u("bool",{longer_alt:a,categories:[a]}),Cs=u("decimal",{longer_alt:a,categories:[a]}),Os=u("email",{longer_alt:a,categories:[a]}),Ns=u("password",{longer_alt:a,categories:[a]}),bs=u("json",{longer_alt:a,categories:[a]}),ys=u("file",{longer_alt:a,categories:[a]}),Ms=u("object",{longer_alt:a,categories:[a]}),Fs=u("image",{longer_alt:a,categories:[a]}),_s=u("video",{longer_alt:a,categories:[a]}),Is=u("audio",{longer_alt:a,categories:[a]}),vs=u("attachment",{longer_alt:a,categories:[a]}),ws=u("geo_point",{longer_alt:a,categories:[a]}),Bs=u("geo_multipoint",{longer_alt:a,categories:[a]}),Ps=u("geo_linestring",{longer_alt:a,categories:[a]}),Gs=u("geo_multilinestring",{longer_alt:a,categories:[a]}),Ds=u("geo_polygon",{longer_alt:a,categories:[a]}),Vs=u("geo_multipolygon",{longer_alt:a,categories:[a]}),qs=u("dblink",{longer_alt:a,categories:[a]}),js=u("agent",{longer_alt:a,categories:[a]}),Ws=u("mcp_server",{longer_alt:a,categories:[a]}),Ys=u("channel",{longer_alt:a,categories:[a]}),Ks=u("canonical",{longer_alt:a,categories:[a]}),Ph=[js,Ks,Ws,Ys,qs,As,Us,uo,gs,ks,Rs,Ls,xs,Cs,Os,Ns,bs,ys,Ms,Fs,_s,Is,vs,ws,Bs,Ps,Gs,Ds,Vs];function Gh(e){switch(e){case js.name:case Ks.name:case Ws.name:case Ys.name:case qs.name:case As.name:case Us.name:case uo.name:case gs.name:case ks.name:case Rs.name:case Ls.name:case xs.name:case Cs.name:case Os.name:case Ns.name:case bs.name:case ys.name:case Ms.name:case Fs.name:case _s.name:case Is.name:case vs.name:case ws.name:case Bs.name:case Ps.name:case Gs.name:case Ds.name:case Vs.name:return"type";default:return null}}r(Gh,"mapTokenToType");var re=R({name:"CommentToken",label:"// comment",pattern:{exec:r((e,t)=>{if(!e.slice(t).startsWith("//"))return null;if(t===0)return e.slice(t).match(/.*(?=\n|$)/);let o=t-1;for(;o>=0;){let n=e[o];if(n===`
109
+ `||n==="\r")return e.slice(t).match(/.*(?=\n|$)/);if(n!==" "&&n!==" ")return null;o--}return e.slice(t).match(/.*(?=\n|$)/)},"exec")},line_breaks:!1}),Dh=[re];function Vh(e){switch(e){case re.name:return"comment";default:return}}r(Vh,"mapTokenToType");var Hs=R({name:"ExpressionLiteral",label:"`...`",pattern:/`([^`\\]|\\.)*`/}),E=R({name:"StringLiteral",label:'"..."',pattern:/"([^"\\]|\\.)*"/}),Lt=R({name:"SingleQuotedStringLiteral",pattern:/'([^'\\]|\\.)*'/,label:"''"}),Ie=R({name:"FloatLiteral",label:"floating point number",pattern:/-?\d+\.\d+/}),$=R({name:"IntegerLiteral",label:"integer",pattern:/-?\d+/,longer_alt:Ie}),p4=R({name:"DoubleDollar",label:"$$",pattern:/\$\$/}),zs=R({name:"TimestampLiteral",pattern:/\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])\s([01]\d|2[0-3]):([0-5]\d):([0-5]\d)[+-]\d{4}/}),qh=[zs,Hs,E,Lt,Ie,$];function jh(e){switch(e){case Hs.name:return"macro";case E.name:case zs.name:return"doubleString";case Lt.name:return"singleString";case $.name:case Ie.name:return"number";default:return null}}r(jh,"mapTokenToType");var Js=u("conditional",{longer_alt:a,categories:[a]}),po=u("if",{longer_alt:a,categories:[a]}),Xs=u("else",{longer_alt:a,categories:[a]}),Qs=u("elseif",{longer_alt:a,categories:[a]}),Zs=u("for",{longer_alt:a,categories:[a]}),$s=u("foreach",{longer_alt:a,categories:[a]}),ec=u("remove",{longer_alt:a,categories:[a]}),tc=u("await",{longer_alt:a,categories:[a]}),mt=u("each",{longer_alt:a,categories:[a]}),rc=u("try_catch",{longer_alt:a,categories:[a]}),bn=u("try",{longer_alt:a,categories:[a]}),yn=u("catch",{longer_alt:a,categories:[a]}),oc=u("finally",{longer_alt:a,categories:[a]}),at=u("as",{longer_alt:a,categories:[a]}),nc=u("return",{longer_alt:a,categories:[a]}),ac=u("switch",{longer_alt:a,categories:[a]}),ic=u("case",{longer_alt:a,categories:[a]}),sc=u("default",{longer_alt:a,categories:[a]}),cc=u("while",{longer_alt:a,categories:[a]}),lc=u("group",{longer_alt:a,categories:[a]}),uc=u("throw",{longer_alt:a,categories:[a]}),mo=u("break",{longer_alt:a,categories:[a]}),pc=u("continue",{longer_alt:a,categories:[a]}),Mn=R({name:"GreaterThan",pattern:/>/,label:">"}),Fn=R({name:"GreaterThanOrEqual",pattern:/>=/,label:">="}),_n=R({name:"SmallerThan",pattern:/</,label:"<"}),In=R({name:"SmallerThanOrEq",pattern:/<=/,label:"<="}),mc=R({name:"Minus",pattern:/-/,label:"-",longer_alt:$}),fc=R({name:"Plus",pattern:/\+/,label:"+"}),dc=R({name:"Multiply",pattern:/\*/,label:"*"}),Tc=R({name:"Divide",pattern:/\//,label:"/"}),Ec=R({name:"Modulus",pattern:/%/,label:"%"}),vn=R({name:"IsEqual",label:"==",pattern:/==/}),hc=R({name:"IsStrictEqual",label:"===",pattern:/===/}),wn=R({name:"IsNotEqual",label:"!=",pattern:/!=/}),Sc=R({name:"IsStrictNotEqual",label:"!==",pattern:/!==/}),h=R({name:"EqualToken",label:"=",pattern:/=/}),A=R({name:"LCurly",pattern:/{/,label:"{"}),U=R({name:"RCurly",pattern:/}/,label:"}"}),H=R({name:"LSquare",pattern:/\[/,label:"["}),z=R({name:"RSquare",pattern:/]/,label:"]"}),B=R({name:"LParent",pattern:/\(/,label:"("}),P=R({name:"RParent",pattern:/\)/,label:")"}),et=R({name:"Question",pattern:/\?/,label:"?"}),Ee=R({name:"ColonToken",pattern:/:/,label:":"}),Me=R({name:"PipeToken",pattern:/\|/,label:"|"}),ae=R({name:"CommaToken",pattern:/,/,label:","}),Ac=R({name:"AndTestToken",pattern:/&&/,label:"&&"}),Uc=R({name:"NullishCoalescingToken",pattern:/\?\?/,label:"??"}),gc=R({name:"OrTestToken",pattern:/\|\|/,label:"||"}),Bn=R({name:"JsonBetweenToken",pattern:/between/,label:"between",longer_alt:a,categories:[a]}),Pn=R({name:"JsonContainsToken",pattern:/@>/,label:"@>"}),Gn=R({name:"JsonContainsStringToken",pattern:/contains/,label:"contains",longer_alt:a,categories:[a]}),Km=R({name:"JsonEqualToken",pattern:/=/,label:"="}),Dn=R({name:"JsonILikeToken",pattern:/ilike/,label:"ilike",longer_alt:a,categories:[a]}),Vn=R({name:"JsonIncludesToken",pattern:/includes/,label:"includes",longer_alt:a,categories:[a]}),qn=R({name:"JsonLikeToken",pattern:/like/,label:"like",longer_alt:a,categories:[a]}),jn=R({name:"JsonNotBetweenToken",pattern:/not between/,label:"not between"}),Wn=R({name:"JsonNotContainsToken",pattern:/not contains/,label:"not contains"}),Yn=R({name:"JsonNotILikeToken",pattern:/not ilike/,label:"not ilike"}),Kn=R({name:"JsonNotInToken",pattern:/not in/,label:"not in"}),Hn=R({name:"JsonNotIncludesToken",pattern:/not includes/,label:"not includes"}),zn=R({name:"JsonNotLikeToken",pattern:/not like/,label:"not like"}),Jn=R({name:"JsonNotOverlapsToken",pattern:/not overlaps/,label:"not overlaps"}),Xn=R({name:"JsonNotRegexToken",pattern:/!~/,label:"!~"}),Qn=R({name:"JsonOverlapsToken",pattern:/overlaps/,label:"overlaps",longer_alt:a,categories:[a]}),kc=R({name:"JsonRegexToken",pattern:/~/,label:"~"}),Rc=R({name:"JsonSearchToken",pattern:/search/,label:"search",longer_alt:a,categories:[a]}),Wh=[jn,Wn,Yn,Hn,Kn,Bn,Pn,Gn,Dn,Vn,qn,zn,Jn,Xn,Qn,kc,Rc,Uc,Ac,gc,Js,po,Qs,Xs,$s,Zs,mt,ec,tc,at,nc,ac,ic,sc,cc,lc,uc,mo,pc,Fn,Mn,In,_n,mc,fc,dc,Tc,Ec,hc,vn,Sc,wn,h,A,U,H,z,B,P,et,Ee,Me,ae,rc,bn,yn,oc,Km];function Yh(e){switch(e){case po.name:case Xs.name:case Qs.name:case mt.name:case at.name:case bn.name:case yn.name:case oc.name:return"keyword";case Js.name:case tc.name:case nc.name:case lc.name:case uc.name:case mo.name:case pc.name:case Zs.name:case ac.name:case ec.name:case $s.name:case cc.name:case ic.name:case sc.name:case rc.name:return"function";case A.name:return"operator.openingCurly";case U.name:return"operator.closingCurly";case H.name:return"operator.openingSquare";case z.name:return"operator.closingSquare";case B.name:return"operator.openingParenthesis";case P.name:return"operator.closingParenthesis";case Mn.name:case Fn.name:case _n.name:case In.name:case mc.name:case fc.name:case Ac.name:case gc.name:case dc.name:case Tc.name:case Ec.name:case h.name:case vn.name:case wn.name:case Uc.name:case jn.name:case Wn.name:case Yn.name:case Hn.name:case Kn.name:case Bn.name:case Pn.name:case Gn.name:case Dn.name:case Vn.name:case qn.name:case zn.name:case Jn.name:case Xn.name:case Qn.name:case kc.name:return"operator";case Rc.name:return"variable";case et.name:case Ee.name:case Me.name:case ae.name:return"punctuation";default:return null}}r(Yh,"mapTokenToType");var fo=u("db",{longer_alt:a,categories:[a]}),Lc=u("query",{longer_alt:a,categories:[a]}),xc=u("get",{longer_alt:a,categories:[a]}),To=u("add",{longer_alt:a,categories:[a]}),Cc=u("add_or_edit",{longer_alt:a,categories:[a]}),Oc=u("del",{longer_alt:a,categories:[a]}),Nc=u("delete",{longer_alt:a,categories:[a]}),bc=u("edit",{longer_alt:a,categories:[a]}),yc=u("update",{longer_alt:a,categories:[a]}),Mc=u("has",{longer_alt:a,categories:[a]}),Eo=u("patch",{longer_alt:a,categories:[a]}),Fc=u("schema",{longer_alt:a,categories:[a]}),_c=u("transaction",{longer_alt:a,categories:[a]}),Ic=u("truncate",{longer_alt:a,categories:[a]}),ho=u("direct_query",{longer_alt:a,categories:[a]}),vc=u("set_datasource",{longer_alt:a,categories:[a]}),wc=u("bulk",{longer_alt:a,categories:[a]}),Bc=u("external",{longer_alt:a,categories:[a]}),Pc=u("mssql",{longer_alt:a,categories:[a]}),Gc=u("mysql",{longer_alt:a,categories:[a]}),Dc=u("postgres",{longer_alt:a,categories:[a]}),Vc=u("oracle",{longer_alt:a,categories:[a]}),Kh=[fo,Lc,xc,Cc,To,Nc,Oc,bc,yc,Mc,Eo,Fc,_c,Ic,ho,vc,wc,Bc,Pc,Gc,Dc,Vc];function Hh(e){switch(e){case Fc.name:return"keyword";case fo.name:case wc.name:case Bc.name:case Pc.name:case Gc.name:case Dc.name:case Vc.name:case Lc.name:case xc.name:case To.name:case Cc.name:case Nc.name:case Oc.name:case bc.name:case yc.name:case Mc.name:case Eo.name:case _c.name:case Ic.name:case ho.name:case vc.name:return"function";default:return null}}r(Hh,"mapTokenToType");var qc=u("debug",{longer_alt:a,categories:[a]}),jc=u("stop",{longer_alt:a,categories:[a]}),Wc=u("log",{longer_alt:a,categories:[a]}),zh=[qc,jc,Wc];function Jh(e){switch(e){case qc.name:case jc.name:case Wc.name:return"function";default:return null}}r(Jh,"mapTokenToType");var So=u("expect",{longer_alt:a,categories:[a]}),Ao=u("to_be_true",{longer_alt:a,categories:[a]}),Uo=u("to_be_false",{longer_alt:a,categories:[a]}),go=u("to_be_in_the_past",{longer_alt:a,categories:[a]}),ko=u("to_be_in_the_future",{longer_alt:a,categories:[a]}),Ro=u("to_be_defined",{longer_alt:a,categories:[a]}),Lo=u("to_not_be_defined",{longer_alt:a,categories:[a]}),xo=u("to_be_null",{longer_alt:a,categories:[a]}),Co=u("to_not_be_null",{longer_alt:a,categories:[a]}),Oo=u("to_be_empty",{longer_alt:a,categories:[a]}),No=u("to_start_with",{longer_alt:a,categories:[a]}),bo=u("to_end_with",{longer_alt:a,categories:[a]}),yo=u("to_be_greater_than",{longer_alt:a,categories:[a]}),Mo=u("to_be_less_than",{longer_alt:a,categories:[a]}),Fo=u("to_match",{longer_alt:a,categories:[a]}),_o=u("to_equal",{longer_alt:a,categories:[a]}),Io=u("to_not_equal",{longer_alt:a,categories:[a]}),vo=u("to_contain",{longer_alt:a,categories:[a]}),wo=u("to_be_within",{longer_alt:a,categories:[a]}),Bo=u("to_throw",{longer_alt:a,categories:[a]}),Xh=[So,Ao,Uo,go,ko,Ro,Lo,xo,Co,Oo,No,bo,yo,Mo,Fo,_o,Io,vo,wo,Bo];function Qh(e){switch(e){case So.name:case Ao.name:case Uo.name:case go.name:case ko.name:case Ro.name:case Lo.name:case xo.name:case Co.name:case Oo.name:case No.name:case bo.name:case yo.name:case Mo.name:case Fo.name:case _o.name:case Io.name:case vo.name:case wo.name:case Bo.name:return"function";default:return null}}r(Qh,"mapTokenToType");var sr=u("function",{longer_alt:a,categories:[a]}),Yc=u("run",{longer_alt:a,categories:[a]}),Kc=u("call",{longer_alt:a,categories:[a]}),Zh=[sr,Yc,Kc];function $h(e){switch(e){case sr.name:return"keyword";case Yc.name:case Kc.name:return"function";default:return null}}r($h,"mapTokenToType");var Hc=u("math",{longer_alt:a,categories:[a]}),zc=u("add",{longer_alt:a,categories:[a]}),Jc=u("div",{longer_alt:a,categories:[a]}),Xc=u("mod",{longer_alt:a,categories:[a]}),Qc=u("mul",{longer_alt:a,categories:[a]}),Zc=u("sub",{longer_alt:a,categories:[a]}),$c=u("bitwise",{longer_alt:a,categories:[a]}),el=u("and",{longer_alt:a,categories:[a]}),tl=u("or",{longer_alt:a,categories:[a]}),rl=u("xor",{longer_alt:a,categories:[a]}),eS=[Hc,zc,Jc,Xc,Qc,Zc,$c,el,tl,rl];function tS(e){switch(e){case Hc.name:case zc.name:case Jc.name:case Xc.name:case Qc.name:case Zc.name:case $c.name:case el.name:case tl.name:case rl.name:return"function";default:return null}}r(tS,"mapTokenToType");var ol=u("instructions",{longer_alt:a,categories:[a]}),cr=u("tool",{longer_alt:a,categories:[a]}),rS=u("call",{longer_alt:a,categories:[a]}),oS=[ol,cr,rS];function nS(e){switch(e){case cr.name:return"keyword";case ol.name:return"variable";case rS.name:return"function";default:return null}}r(nS,"mapTokenToType");var nl=u("active",{longer_alt:a,categories:[a]}),al=u("instructions",{longer_alt:a,categories:[a]}),il=u("mcp_server",{longer_alt:a,categories:[a]}),sl=u("tools",{longer_alt:cr,categories:[a]}),aS=[nl,al,il,sl];function iS(e){switch(e){case nl.name:case il.name:case sl.name:return"keyword";case al.name:return"variable";default:return null}}r(iS,"mapTokenToType");var cl=u("actions",{longer_alt:a,categories:[a]}),ll=u("active",{longer_alt:a,categories:[a]}),ul=u("mcp_server_trigger",{longer_alt:a,categories:[a]}),sS=[cl,ll,ul];function cS(e){switch(e){case cl.name:case ul.name:return"keyword";case ll.name:return"variable";default:return null}}r(cS,"mapTokenToType");var pl=u("exception_policy",{longer_alt:a,categories:[a]}),Po=u("middleware",{longer_alt:a,categories:[a]}),ml=u("response_strategy",{longer_alt:a,categories:[a]}),lS=[pl,Po,ml];function uS(e){switch(e){case Po.name:return"keyword";case pl.name:case ml.name:return"variable";default:return null}}r(uS,"mapTokenToType");var Pe=wt({name:'"""..."""',pattern:/("""\r?\n(?:[\s\S]*?\r?\n)?[ ]*""")|('''\r?\n(?:[\s\S]*?\r?\n)?[ ]*''')/}),fl=wt({name:"MultiLineExpression",pattern:/```\r?\n(?:[\s\S]*?\r?\n)?[ ]*```/}),pS=[Pe,fl];function mS(e){switch(e){case Pe.name:return"tripleString";case fl.name:return"tripleMacro";default:return null}}r(mS,"mapTokenToType");var dl=u("object",{longer_alt:a,categories:[a]}),Tl=u("entries",{longer_alt:a,categories:[a]}),El=u("keys",{longer_alt:a,categories:[a]}),hl=u("values",{longer_alt:a,categories:[a]}),fS=[dl,Tl,El,hl];function dS(e){switch(e){case dl.name:case Tl.name:case El.name:case hl.name:return"function";default:return null}}r(dS,"mapTokenToType");var Sl=u("query",{longer_alt:a,categories:[a]}),Go=u("verb",{longer_alt:a,categories:[a]}),Do=u("GET",{longer_alt:a,categories:[a]}),Vo=u("PATCH",{longer_alt:a,categories:[a]}),qo=u("POST",{longer_alt:a,categories:[a]}),jo=u("PUT",{longer_alt:a,categories:[a]}),Wo=u("DELETE",{categories:[a],longer_alt:a}),Al=u("response_type",{longer_alt:a,categories:[a]}),TS=u("dblink",{longer_alt:a,categories:[a]}),Ul=u("output",{longer_alt:a,categories:[a]}),ES=u("addon",{longer_alt:a,categories:[a]}),hS=[Al,Sl,Go,Do,Vo,qo,jo,Wo,TS,Ul,ES];function SS(e){switch(e){case Sl.name:case Go.name:case Al.name:return"keyword";case Do.name:case Vo.name:case qo.name:case jo.name:case Wo.name:return"enumMember";case TS.name:case Ul.name:case ES.name:return"property";default:return null}}r(SS,"mapTokenToType");var gl=u("actions",{longer_alt:a,categories:[a]}),kl=u("active",{longer_alt:a,categories:[a]}),Rl=u("realtime_trigger",{longer_alt:a,categories:[a]}),Ll=u("realtime_channel",{longer_alt:a,categories:[a]}),AS=[gl,kl,Rl,Ll];function US(e){switch(e){case gl.name:case Rl.name:case Ll.name:return"keyword";case kl.name:return"variable";default:return null}}r(US,"mapTokenToType");var xl=u("redis",{longer_alt:a,categories:[a]}),Cl=u("count",{longer_alt:a,categories:[a]}),Ol=u("decr",{longer_alt:a,categories:[a]}),Nl=u("del",{longer_alt:a,categories:[a]}),bl=u("get",{longer_alt:a,categories:[a]}),yl=u("has",{longer_alt:a,categories:[a]}),Ml=u("incr",{longer_alt:a,categories:[a]}),Fl=u("keys",{longer_alt:a,categories:[a]}),_l=u("pop",{longer_alt:a,categories:[a]}),Il=u("push",{longer_alt:a,categories:[a]}),vl=u("range",{longer_alt:a,categories:[a]}),wl=u("ratelimit",{longer_alt:a,categories:[a]}),Bl=u("remove",{longer_alt:a,categories:[a]}),Pl=u("set",{longer_alt:a,categories:[a]}),Gl=u("shift",{longer_alt:a,categories:[a]}),Dl=u("unshift",{longer_alt:a,categories:[a]}),gS=[xl,Cl,Ol,Nl,bl,yl,Ml,Fl,_l,Il,vl,wl,Bl,Pl,Gl,Dl];function kS(e){switch(e){case xl.name:case Cl.name:case Ol.name:case Nl.name:case bl.name:case yl.name:case Ml.name:case Fl.name:case _l.name:case Il.name:case vl.name:case wl.name:case Bl.name:case Pl.name:case Gl.name:case Dl.name:return"function";default:return null}}r(kS,"mapTokenToType");var Vl=u("run",{longer_alt:a,categories:[a]}),ql=u("job",{longer_alt:a,categories:[a]}),jl=u("service",{longer_alt:a,categories:[a]}),RS=[Vl,ql,jl];function LS(e){switch(e){case Vl.name:case ql.name:case jl.name:return"keyword";default:return null}}r(LS,"mapTokenToType");var Wl=u("security",{longer_alt:a,categories:[a]}),Yl=u("check_password",{longer_alt:a,categories:[a]}),Kl=u("create_password",{longer_alt:a,categories:[a]}),Hl=u("create_uuid",{longer_alt:a,categories:[a]}),zl=u("create_auth_token",{longer_alt:a,categories:[a]}),Jl=u("create_curve_key",{longer_alt:a,categories:[a]}),Xl=u("create_rsa_key",{longer_alt:a,categories:[a]}),Ql=u("create_secret_key",{longer_alt:a,categories:[a]}),Zl=u("decrypt",{llt:a,categories:[a]}),$l=u("encrypt",{llt:a,categories:[a]}),xS=u("generate_pass",{longer_alt:a,categories:[a]}),CS=u("generate_uuid",{longer_alt:a,categories:[a]}),eu=u("jwe_decode",{longer_alt:a,categories:[a]}),tu=u("jwe_encode",{longer_alt:a,categories:[a]}),ru=u("jws_decode",{longer_alt:a,categories:[a]}),ou=u("jws_encode",{longer_alt:a,categories:[a]}),nu=u("random_bytes",{longer_alt:a,categories:[a]}),au=u("random_number",{longer_alt:a,categories:[a]}),OS=[Yl,Kl,Hl,zl,Jl,Xl,Ql,Zl,$l,xS,CS,eu,tu,ru,ou,nu,au,Wl];function NS(e){switch(e){case Wl.name:case Yl.name:case Kl.name:case Hl.name:case zl.name:case Jl.name:case Xl.name:case Ql.name:case Zl.name:case $l.name:case xS.name:case CS.name:case eu.name:case tu.name:case ru.name:case ou.name:case nu.name:case au.name:return"function";default:return null}}r(NS,"mapTokenToType");var iu=u("storage",{longer_alt:a,categories:[a]}),su=u("create_image",{longer_alt:a,categories:[a]}),cu=u("create_attachment",{longer_alt:a,categories:[a]}),lu=u("read_file_resource",{longer_alt:a,categories:[a]}),uu=u("create_file_resource",{longer_alt:a,categories:[a]}),bS=u("read_file",{longer_alt:a,categories:[a]}),pu=u("create_audio",{longer_alt:a,categories:[a]}),mu=u("create_video",{longer_alt:a,categories:[a]}),fu=u("delete_file",{longer_alt:a,categories:[a]}),du=u("sign_private_url",{longer_alt:a,categories:[a]}),yS=[iu,su,cu,lu,uu,bS,pu,mu,fu,du];function MS(e){switch(e){case iu.name:case su.name:case cu.name:case lu.name:case uu.name:case bS.name:case fu.name:case du.name:case pu.name:case mu.name:return"function";default:return null}}r(MS,"mapTokenToType");var Tu=u("stream",{longer_alt:a,categories:[a]}),Eu=u("from_csv",{longer_alt:a,categories:[a]}),hu=u("from_jsonl",{longer_alt:a,categories:[a]}),Su=u("from_request",{longer_alt:a,categories:[a]}),FS=[Tu,Eu,hu,Su];function _S(e){switch(e){case Tu.name:case Eu.name:case hu.name:case Su.name:return"function";default:return null}}r(_S,"mapTokenToType");var lr=u("table",{longer_alt:a,categories:[a]}),Au=u("autocomplete",{longer_alt:a,categories:[a]}),Uu=u("items",{longer_alt:a,categories:[a]}),IS=[lr,Au,Uu];function vS(e){switch(e){case lr.name:return"keyword";case Au.name:case Uu.name:return"identifier";default:return null}}r(vS,"mapTokenToType");var gu=u("actions",{longer_alt:a,categories:[a]}),ku=u("active",{longer_alt:a,categories:[a]}),Ru=u("datasources",{longer_alt:a,categories:[a]}),Lu=u("table_trigger",{longer_alt:a,categories:[a]}),wS=[gu,ku,Ru,Lu];function BS(e){switch(e){case gu.name:case Lu.name:return"keyword";case ku.name:case Ru.name:return"variable";default:return null}}r(BS,"mapTokenToType");var xu=u("call",{longer_alt:a,categories:[a]}),Cu=u("datasource",{longer_alt:a,categories:[a]}),PS=u("ends_on",{longer_alt:a,categories:[a]}),GS=u("events",{longer_alt:a,categories:[a]}),DS=u("freq",{longer_alt:a,categories:[a]}),Ou=u("schedule",{longer_alt:a,categories:[a]}),VS=u("starts_on",{longer_alt:a,categories:[a]}),Yo=u("task",{longer_alt:a,categories:[a]}),qS=[xu,Cu,PS,GS,DS,Ou,VS,Yo];function jS(e){switch(e){case Cu.name:case Ou.name:case Yo.name:return"keyword";case PS.name:case GS.name:case DS.name:case VS.name:return"variable";case xu.name:return"function";default:return null}}r(jS,"mapTokenToType");var WS=u("text",{longer_alt:a,categories:[a]}),Nu=u("append",{longer_alt:a,categories:[a]}),bu=u("contains",{longer_alt:a,categories:[a]}),yu=u("ends_with",{longer_alt:a,categories:[a]}),Mu=u("icontains",{longer_alt:a,categories:[a]}),Fu=u("iends_with",{longer_alt:a,categories:[a]}),_u=u("istarts_with",{longer_alt:a,categories:[a]}),Iu=u("ltrim",{longer_alt:a,categories:[a]}),vu=u("prepend",{longer_alt:a,categories:[a]}),wu=u("rtrim",{longer_alt:a,categories:[a]}),Bu=u("starts_with",{longer_alt:a,categories:[a]}),Pu=u("trim",{longer_alt:a,categories:[a]}),YS=[WS,Nu,bu,yu,Mu,Fu,_u,Iu,vu,wu,Bu,Pu];function KS(e){switch(e){case WS.name:return"namespace";case Nu.name:case bu.name:case yu.name:case Mu.name:case Fu.name:case _u.name:case Iu.name:case vu.name:case wu.name:case Bu.name:case Pu.name:return"method";default:return null}}r(KS,"mapTokenToType");var Gu=u("util",{longer_alt:a,categories:[a]}),Du=u("send_email",{longer_alt:a,categories:[a]}),Vu=u("geo_distance",{longer_alt:a,categories:[a]}),qu=u("get_all_input",{longer_alt:a,categories:[a]}),ju=u("template_engine",{longer_alt:a,categories:[a]}),Wu=u("get_env",{longer_alt:a,categories:[a]}),Yu=u("get_raw_input",{longer_alt:a,categories:[a]}),Ku=u("get_vars",{longer_alt:a,categories:[a]}),Hu=u("ip_lookup",{longer_alt:a,categories:[a]}),zu=u("post_process",{longer_alt:a,categories:[a]}),Ju=u("precondition",{longer_alt:a,categories:[a]}),Xu=u("set_header",{longer_alt:a,categories:[a]}),Qu=u("sleep",{longer_alt:a,categories:[a]}),HS=[Gu,ju,Vu,Du,qu,Wu,Yu,Ku,Hu,zu,Ju,Xu,Qu];function zS(e){switch(e){case Gu.name:case Vu.name:case qu.name:case Wu.name:case Yu.name:case Ku.name:case Hu.name:case zu.name:case Ju.name:case Xu.name:case Qu.name:case ju.name:case Du.name:return"function";default:return null}}r(zS,"mapTokenToType");var Zu=u("var",{longer_alt:a,categories:[a]}),$u=u("update",{longer_alt:a,categories:[a]}),JS=[Zu,$u];function XS(e){switch(e){case Zu.name:case $u.name:return"function";default:return null}}r(XS,"mapTokenToType");var V=R({name:"ShortFormVariable",pattern:/(\$[a-zA-Z_]\w*)|(\$\$)/,label:"$"}),ur=R({name:"ResponseVariable",pattern:/\$response/,label:"$response",categories:[V],longer_alt:V}),pr=R({name:"LongFormVariable",pattern:/\$var/,label:"$var",longer_alt:V}),QS=R({name:"$this",pattern:/\$this/,longer_alt:V,categories:[V]}),ep=R({name:"InputVariable",pattern:/\$input/,longer_alt:V}),tp=R({name:"EnvVariable",pattern:/\$env/,label:"$env",longer_alt:V}),rp=R({name:"AuthVariable",pattern:/\$auth/,label:"$auth",longer_alt:V}),op=R({name:"$remote_ip",pattern:/\$remote_ip/,longer_alt:V}),np=R({name:"$tenant",pattern:/\$tenant/,longer_alt:V}),ap=R({name:"$error",pattern:/\$error/,longer_alt:V}),ip=R({name:"$remote_port",pattern:/\$remote_port/,longer_alt:V}),sp=R({name:"$remote_user",pattern:/\$remote_user/,longer_alt:V}),cp=R({name:"$http_headers",pattern:/\$http_headers/,longer_alt:V}),lp=R({name:"$webflow",pattern:/\$webflow/,longer_alt:V}),up=R({name:"$api_baseurl",pattern:/\$api_baseurl/,longer_alt:V}),pp=R({name:"$request_uri",pattern:/\$request_uri/,longer_alt:V}),mp=R({name:"$request_querystring",pattern:/\$request_querystring/,longer_alt:V}),fp=R({name:"$request_auth_token",pattern:/\$request_auth_token/,longer_alt:V}),dp=R({name:"$datasource",pattern:/\$datasource/,longer_alt:V}),Tp=R({name:"$branch",pattern:/\$branch/,longer_alt:V}),Ep=R({name:"$remote_passwd",pattern:/\$remote_passwd/,longer_alt:V}),hp=R({name:"$remote_host",pattern:/\$remote_host/,longer_alt:V}),Sp=R({name:"$request_method",pattern:/\$request_method/,longer_alt:V}),ZS=[ur,QS,pr,ep,tp,rp,ap,op,np,ip,sp,Ep,hp,Sp,cp,lp,up,pp,mp,fp,dp,Tp,V];function $S(e){switch(e){case ep.name:case ap.name:case tp.name:case rp.name:case op.name:case np.name:case ip.name:case sp.name:case Ep.name:case hp.name:case Sp.name:case ur.name:case pr.name:case cp.name:case lp.name:case up.name:case pp.name:case mp.name:case fp.name:case dp.name:case Tp.name:return"enumMember";case QS.name:case V.name:return"variable";default:return null}}r($S,"mapTokenToType");var Ko=u("datasource",{longer_alt:a,categories:[a]}),Ap=u("workflow_test",{longer_alt:a,categories:[a]}),eA=u("exception",{longer_alt:a,categories:[a]}),tA=[Ko,Ap,eA];function rA(e){switch(e){case Ap.name:return"keyword";case eA.name:case Ko.name:return"variable";default:return null}}r(rA,"mapTokenToType");var Up=u("workspace",{longer_alt:a,categories:[a]}),oA=[Up];function nA(e){switch(e){case Up.name:return"keyword";default:return null}}r(nA,"mapTokenToType");var gp=u("actions",{longer_alt:a,categories:[a]}),kp=u("active",{longer_alt:a,categories:[a]}),Rp=u("workspace_trigger",{longer_alt:a,categories:[a]}),aA=[gp,kp,Rp];function iA(e){switch(e){case gp.name:case Rp.name:return"keyword";case kp.name:return"variable";default:return null}}r(iA,"mapTokenToType");var Lp=u("zip",{longer_alt:a,categories:[a]}),xp=u("add_to_archive",{longer_alt:a,categories:[a]}),Cp=u("create_archive",{longer_alt:a,categories:[a]}),Op=u("delete_from_archive",{longer_alt:a,categories:[a]}),Np=u("extract",{longer_alt:a,categories:[a]}),bp=u("view_contents",{longer_alt:a,categories:[a]}),sA=[Lp,xp,Cp,Op,Np,bp];function cA(e){switch(e){case Lp.name:case xp.name:case Cp.name:case Op.name:case Np.name:case bp.name:return"function"}}r(cA,"mapTokenToType");var b5=R({name:"ObjectIdentifier",pattern:/[0-9a-zA-Z_]\w*/});var k=R({name:"Dot",pattern:/\./,label:"."}),yp=u("tags",{longer_alt:a,categories:[a]}),mr=u("now",{longer_alt:a}),xt=u("null",{longer_alt:a}),Mp=R({name:"RegExpToken",label:"regexp",pattern:/\/(?:[^/\n\\]|\\.)+\//}),lA=R({name:"WhiteSpace",pattern:/[ \t]+/,group:le.SKIPPED,label:"whitespace"}),m=R({name:"NewlineToken",pattern:/(\r?\n)/}),uA=u("type",{longer_alt:a,categories:[a]}),pA=u("field",{longer_alt:a,categories:[a]}),Re=u("true",{longer_alt:a}),Le=u("false",{longer_alt:a}),Ho=u("input",{longer_alt:a,categories:[a]}),zo=u("stack",{longer_alt:a,categories:[a]}),Fp=u("test",{longer_alt:a,categories:[a]}),_p=u("response",{longer_alt:a,categories:[a]}),Ip=u("view",{longer_alt:a,categories:[a]}),vp=u("middleware",{longer_alt:a,categories:[a]}),mA=u("return_aggregate",{pattern:/return_aggregate/}),Jo=u("auth",{longer_alt:a,categories:[a]}),fA=u("security",{longer_alt:a,categories:[a]}),wp=u("history",{longer_alt:a,categories:[a]}),Bp=u("cache",{longer_alt:a,categories:[a]}),dA=u("guid",{longer_alt:a,categories:[a]}),Pp=u("schema",{longer_alt:a,categories:[a]}),Gp=u("index",{longer_alt:a,categories:[a]}),Dp=u("values",{longer_alt:a,categories:[a]}),Vp=u("value",{longer_alt:a,categories:[a]}),qp=u("filters",{longer_alt:a,categories:[a]}),jp=R({name:"DbLinkFilter",label:"@",pattern:/@/}),Wp=u("sensitive",{longer_alt:a,categories:[a]}),Yp=u("description",{longer_alt:a,categories:[a]}),Kp=u("disabled",{longer_alt:a,categories:[a]}),Hp=u("mock",{longer_alt:a,categories:[a]}),zp=u("docs",{longer_alt:a,categories:[a]}),Jp=R({name:"DbIdentifier",label:"db.identifier",pattern:/dbo=\d+/}),Zn=R({name:"JsonInToken",pattern:/in/,label:"in",longer_alt:a,categories:[a]}),Xo=or([lA,m,...pS,...Dh,Mp,Gp,Ho,mA,qp,...kh,...sS,...aS,...AS,...Mh,...Ph,...qh,...Wh,...hS,...mi,jp,Jp,Dp,Vp,Re,Le,uA,pA,Jo,dA,Wp,yp,Yp,zp,Kp,Hp,Pp,zo,Fp,vp,...lS,_p,xt,mr,wp,Bp,fA,...yS,...sA,...Zh,...OS,...HS,...wS,...aA,...qS,...tA,...bh,...Oh,...ZS,...IS,...wh,...Kh,...gS,...YS,...RS,...fS,...FS,...zh,...Xh,...JS,...eS,...Lh,...Uh,...oS,...Sh,...Eh,...Ih,...oA,Ip,Zn,k,a]),sI=[Ah,hh,xh,gh,Rh,yh,Nh,Fh,vh,Th,Bh,Gh,Vh,Yh,Hh,Jh,Qh,$h,jh,tS,iS,cS,uS,mS,dS,SS,US,kS,LS,NS,MS,_S,vS,BS,jS,KS,nS,zS,XS,$S,rA,nA,iA,cA],Hm=new Map;function cI(){let e={[Bp.name]:"keyword",[wp.name]:"keyword",[Gp.name]:"keyword",[Ho.name]:"keyword",[vp.name]:"keyword",[Hp.name]:"keyword",[_p.name]:"keyword",[Ip.name]:"keyword",[Pp.name]:"keyword",[fA.name]:"keyword",[zo.name]:"keyword",[Fp.name]:"keyword",[qp.name]:"keyword",[jp.name]:"function",[Jo.name]:"variable",[Jp.name]:"variable",[mA.name]:"variable",[Yp.name]:"variable",[Kp.name]:"variable",[zp.name]:"variable",[pA.name]:"variable",[dA.name]:"variable",[Wp.name]:"variable",[yp.name]:"variable",[uA.name]:"variable",[Vp.name]:"variable",[Dp.name]:"variable",[a.name]:"property",[Le.name]:"enumMember",[mr.name]:"enumMember",[xt.name]:"enumMember",[Re.name]:"enumMember",[k.name]:"punctuation",[Mp.name]:"regexp",[Zn.name]:"operator",[m.name]:null,[lA.name]:null};for(let[t,o]of Object.entries(e))Hm.set(t,o);for(let t of Xo)if(!Hm.has(t.name))for(let o of sI){let n=o(t.name);if(n){Hm.set(t.name,n);break}}}r(cI,"buildTokenTypeMap");cI();var lI=new le(Xo),uI=new le([...pm(Xo,ye),Ym]);function TA(e,t=!1){return t?uI.tokenize(e):lI.tokenize(e)}r(TA,"lexDocument");var pI={addon:"addon",agent:"agent",agent_trigger:"agent_trigger",api_group:"api_group",branch:"branch",function:"cfn",mcp_server:"mcp_server",mcp_server_trigger:"mcp_server_trigger",middleware:"middleware",query:"api",realtime_trigger:"realtime_trigger",realtime_channel:"realtime_channel",run:"run",table:"db",table_trigger:"table_trigger",task:"task",tool:"tool",workflow_test:"workflow_test",workspace:"workspace",workspace_trigger:"workspace_trigger"},mI=/^(?:\s|\/\/[^\n]*\n)*(\w+)/;function Xp(e){let t=e.match(mI)?.[1];return pI[t]||"cfn"}r(Xp,"getSchemeFromContent");function EA(e){return()=>{let t=!1,o=!1,n=!1,i=!1;e.sectionStack.push("addonDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let s=e.CONSUME(no);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.CONSUME(re),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.SUBRULE(e.inputClause)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.CONSUME(zo),e.CONSUME1(A),e.OPTION(()=>{e.AT_LEAST_ONE1(()=>e.CONSUME3(m)),e.CONSUME(fo),e.CONSUME(k),e.SUBRULE(e.dbQueryFn)}),e.AT_LEAST_ONE2(()=>e.CONSUME4(m)),e.CONSUME1(U)},"ALT")},{GATE:r(()=>!i,"GATE"),ALT:r(()=>{i=!0,e.SUBRULE(e.tagsAttribute)},"ALT")}])}),o||e.addMissingError(s,"{} is missing an input clause"),n||e.addMissingError(s,"{} is missing a stack clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(EA,"addonDeclaration");var j=r(e=>e?e.tokenType===E?e.image.slice(1,-1):e.image:"","getVarName");function hA(e){return()=>{let t=!1,o=!1,n=!1,i=!1,s=!1,c=!1,l=!1,p=!1;e.sectionStack.push("agentDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let f=e.CONSUME(Ti);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.MANY4(()=>e.CONSUME5(re)),e.MANY5(()=>e.CONSUME6(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.commentBlockFn),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.SUBRULE(e.canonicalClause)},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.docsFieldAttribute)},"ALT")},{GATE:r(()=>!i,"GATE"),ALT:r(()=>{i=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0;let d=e.CONSUME(Ei);e.CONSUME(h);let T={anthropic:["type","max_steps","model","temperature","headers"],"google-genai":["type","max_steps","model","temperature","headers","search_grounding","include_thoughts"],openai:["type","max_steps","model","temperature","reasoning_effort"],xano_free:["type","max_steps","temperature","search_grounding"]},S={anthropic:[...T.anthropic,"system_prompt","prompt","messages","api_key","reasoning","thinking_tokens","baseURL"],"google-genai":[...T["google-genai"],"system_prompt","prompt","messages","api_key","thinking_tokens","baseURL","safety_settings","dynamic_retrival","reasoning"],openai:[...T.openai,"system_prompt","prompt","messages","api_key","baseURL","headers","organization","project","compatibility"],"xano-free":[...T.xano_free,"system_prompt","prompt","messages","baseURL","headers","safety_settings","dynamic_retrival","thinking_tokens","include_thoughts"]},g={};e.SUBRULE(e.schemaParseObjectFn,{ARGS:[d,{type:["anthropic","google-genai","openai","xano-free"],max_steps:"[number]","prompt?":"[string]","messages?":"[string]","api_key?":"[string]","baseURL?":"[string]","compatibility?":["strict","compatible",""],"dynamic_retrival?":["enabled","disabled",""],"headers?":"[string]","include_thoughts?":"[boolean]","model?":"[string]","organization?":"[string]","project?":"[string]","reasoning_effort?":"[string]","reasoning?":"[boolean]","safety_settings?":"[string]","search_grounding?":"[boolean]","system_prompt?":"[string]","temperature?":"[number]","thinking_tokens?":"[number]"},g]}),e.ACTION(()=>{let x=j(g.type?.value),L=T[x]||[];for(let v of L)Object.prototype.hasOwnProperty.call(g,v)||e.addMissingError(d,`llm of type "${x}" requires a "${v}" field`);let _=S[x]||[],O=[];for(let v in g){let w=j(g[v].key);O.push(w),_.includes(w)||e.addIllegalAttributeError(g[v].key)}let N=O.includes("prompt"),C=O.includes("messages");N&&C?e.addIllegalAttributeError(g.messages.key,`llm of type "${x}" cannot have both "prompt" and "messages" fields`):!N&&!C&&e.addMissingError(d,`llm of type "${x}" requires either a "prompt" or "messages" field`)})},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.tagsAttribute)},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.outputClause)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0;let d=e.CONSUME(hi);e.CONSUME2(h),e.SUBRULE(e.arrayOfObjectAttrReq,{ARGS:[d,["name"],["active","auth"],{types:{active:"boolean",auth:"string",name:"string"}}]})},"ALT")}])}),s||e.addMissingError(f,"{} is missing llm clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(hA,"agentDeclaration");function SA(e){return()=>{let t=!1,o=!1,n=!1,i=!1,s=!1,c=!1,l=!1,p=!1,f=!1,d=!1;e.sectionStack.push("agentTriggerDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let T=e.CONSUME(Ui);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.CONSUME(re),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0;let S=e.CONSUME(Si);e.CONSUME(h),e.SUBRULE(e.schemaParseObjectFn,{ARGS:[S,{"connection?":"[boolean]"}]})},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.CONSUME(Ai),e.CONSUME2(h),e.SUBRULE(e.booleanValue)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.agentClause)},"ALT")},{GATE:r(()=>!i,"GATE"),ALT:r(()=>{i=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.docsFieldAttribute)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.inputClause)},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.responseClause)},"ALT")},{GATE:r(()=>!f,"GATE"),ALT:r(()=>{f=!0,e.SUBRULE(e.stackClause)},"ALT")},{GATE:r(()=>!d,"GATE"),ALT:r(()=>{d=!0,e.SUBRULE(e.tagsAttribute)},"ALT")}])}),n||e.addMissingError(T,"{} is missing agent clause"),l||e.addMissingError(T,"{} is missing an input clause"),f||e.addMissingError(T,"{} is missing a stack clause"),p||e.addMissingError(T,"{} is missing a response clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(SA,"agentTriggerDeclaration");function AA(e){return()=>{let t=!1,o=!1,n=!1,i=!1,s=!1,c=!1,l=!1,p=!1;e.sectionStack.push("apiGroupDeclaration"),e.SUBRULE(e.optionalCommentBlockFn),e.CONSUME(co),e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.CONSUME(re),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.CONSUME(so),e.CONSUME1(h),e.SUBRULE(e.booleanValue)},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.CONSUME(Ii),e.CONSUME2(h),e.CONSUME2(E)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0;let f=e.CONSUME(vi);e.CONSUME3(h),e.SUBRULE(e.objectAttrReq,{ARGS:[f,[],["mode","origins","methods","headers","credentials","max_age"],{types:{mode:"string",origins:r(d=>d.SUBRULE(d.arrayOfStringLiterals),"origins"),methods:r(d=>d.SUBRULE1(d.arrayOfStringLiterals),"methods"),headers:r(d=>d.SUBRULE2(d.arrayOfStringLiterals),"headers"),credentials:"boolean",max_age:"number"}}]})},"ALT")},{GATE:r(()=>!i,"GATE"),ALT:r(()=>{i=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.docsFieldAttribute)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0;let f=e.CONSUME(wi);e.CONSUME4(h),e.SUBRULE2(e.objectAttrReq,{ARGS:[f,[],["active","token"],{active:"boolean",token:"string"}]})},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.tagsAttribute)},"ALT")}])}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(AA,"apiGroupDeclaration");function UA(e){return()=>{e.sectionStack.push("columnDefaultValueAttribute"),e.CONSUME(h),e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(Ie),"ALT")},{ALT:r(()=>e.CONSUME($),"ALT")},{ALT:r(()=>e.CONSUME(Re),"ALT")},{ALT:r(()=>e.CONSUME(Le),"ALT")},{ALT:r(()=>e.CONSUME(mr),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]),e.sectionStack.pop()}}r(UA,"columnDefaultValueAttribute");function gA(e){return()=>{e.sectionStack.push("descriptionFieldAttribute"),e.CONSUME(Yp),e.CONSUME(h),e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(Pe),"ALT")}]),e.sectionStack.pop()}}r(gA,"descriptionFieldAttribute");function kA(e){return()=>{e.sectionStack.push("disabledFieldAttribute"),e.CONSUME(Kp),e.CONSUME(h),e.OR([{ALT:r(()=>e.CONSUME(Re),"ALT")},{ALT:r(()=>e.CONSUME(Le),"ALT")}]),e.sectionStack.pop()}}r(kA,"disabledFieldAttribute");function RA(e){return()=>{e.sectionStack.push("docsFieldAttribute"),e.CONSUME(zp),e.CONSUME(h),e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(Pe),"ALT")}]),e.sectionStack.pop()}}r(RA,"docsFieldAttribute");var LA=["deg2rad","rad2deg","number_format","sin","asin","asinh","cos","acos","acosh","tan","atan","atanh","floor","ceil","round","first","last","count","range","reverse","unique","safe_array","flatten","filter_empty","filter_empty_text","filter_null","filter_empty_array","filter_empty_object","filter_zero","filter_false","sort","shuffle","diff","diff_assoc","intersect","intersect_assoc","merge","merge_recursive","index_by","push","pop","unshift","shift","remove","append","prepend","abs","sqrt","exp","log","log10","ln","pow","array_min","min","array_max","max","sum","avg","product","equals","not_equals","greater_than","greater_than_or_equal","less_than","less_than_or_equal","odd","even","in","add","subtract","multiply","modulus","divide","bitwise_and","bitwise_or","bitwise_xor","not","bitwise_not","is_null","is_empty","is_object","is_array","is_int","is_decimal","is_bool","is_text","addslashes","escape","list_encodings","detect_encoding","to_utf8","from_utf8","convert_encoding","to_lower","to_upper","trim","ltrim","rtrim","capitalize","substr","split","join","slice","strlen","strip_html","unaccent","index","iindex","starts_with","istarts_with","ends_with","iends_with","contains","icontains","set","set_conditional","set_ifnotempty","set_ifnotnull","first_notnull","first_notempty","unset","transform","get","has","fill","fill_keys","keys","values","entries","to_expr","to_text","to_int","to_decimal","to_bool","to_timestamp","to_ms","to_seconds","to_minutes","to_hours","to_days","create_object","create_object_from_entries","json_decode","json_encode","xml_decode","csv_parse","csv_decode","csv_encode","csv_create","url_decode","url_decode_rfc3986","url_encode","url_encode_rfc3986","url_addarg","url_delarg","url_hasarg","url_getarg","url_parse","querystring_parse","yaml_decode","yaml_encode","hex2bin","bin2hex","dechex","hexdec","decbin","bindec","decoct","octdec","base_convert","base64_decode","base64_encode","base64_decode_urlsafe","base64_encode_urlsafe","encrypt","decrypt","jws_encode","jws_decode","jwe_encode","jwe_decode","concat","sprintf","replace","secureid_encode","secureid_decode","md5","sha1","sha256","sha384","sha512","hmac_md5","hmac_sha1","hmac_sha256","hmac_sha384","hmac_sha512","create_uid","uuid","parse_timestamp","format_timestamp","transform_timestamp","add_secs_to_timestamp","add_ms_to_timestamp","regex_matches","regex_get_first_match","regex_get_all_matches","regex_quote","regex_replace","map","filter","filter_null","filter_empty_text","filter_empty_object","filter_empty_array","some","every","find","findIndex","reduce","pick","unpick","text_unescape","text_escape","sql_esc","sql_alias","is_uuid"],zm={text:["trim","min","max","startsWith","prevent","lower","upper","alphaOk","digitOk","ok","pattern"],decimal:["min","max"],int:["min","max"],email:["trim","lower"],password:["min","max","minAlpha","minLowerAlpha","minUpperAlpha","minDigit","minSymbol"],blob:[],blob_img:[],blob_video:[],blob_audio:[],enum:[],file:[],json:[],obj:[],epochms:[]},xA=["covers","l1_distance_manhattan","l2_distance_euclidean","inner_product","negative_inner_product","cosine_distance","cosine_similarity","distance","within","between","length","floor","ceil","round","to_lower","to_upper","concat","substr","coalesce","unaccent","add","sub","mul","div","search_rank","timestamp_month","timestamp_year","timestamp_week","timestamp_hour","timestamp_minute","timestamp_day_of_month","timestamp_day_of_week","timestamp_day_of_year","timestamp_epoch_day","timestamp_epoch_hour","timestamp_epoch_minute","timestamp_epoch_sec","timestamp_add_seconds","timestamp_subtract_seconds","timestamp_add_minutes","timestamp_subtract_minutes","timestamp_add_hours","timestamp_subtract_hours","timestamp_add_days","timestamp_subtract_days","timestamp_add_months","timestamp_subtract_months","timestamp_add_years","timestamp_subtract_years"];function CA(e){return t=>{e.sectionStack.push("inputFilterFn"),e.OR([{ALT:r(()=>{e.OPTION(()=>e.CONSUME(ye));let o=e.CONSUME(a);e.MANY1(()=>{e.CONSUME1(Ee),e.OR2([{ALT:r(()=>e.CONSUME2(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")},{ALT:r(()=>e.CONSUME1(Mp),"ALT")},{ALT:r(()=>e.CONSUME1($),"ALT")},{ALT:r(()=>e.CONSUME1(Ie),"ALT")},{ALT:r(()=>e.CONSUME1(Le),"ALT")},{ALT:r(()=>e.CONSUME1(Re),"ALT")}])}),t&&zm[t.image]&&!zm[t.image].includes(o.image)&&e.addInvalidValueError(o,`Filter '${o.image}' cannot be applied to input of type '${t.image}'`)},"ALT")},{ALT:r(()=>{e.CONSUME(jp),e.CONSUME2(Ee),e.CONSUME(Jp)},"ALT")}]),e.sectionStack.pop()}}r(CA,"inputFilterFn");var OA=r(e=>()=>{e.sectionStack.push("sensitiveFieldAttribute"),e.CONSUME(Wp),e.CONSUME(h),e.OR([{ALT:r(()=>e.CONSUME(Re),"ALT")},{ALT:r(()=>e.CONSUME(Le),"ALT")}]),e.sectionStack.pop()},"sensitiveFieldAttribute");function NA(e){return()=>{e.sectionStack.push("valueFieldAttribute");let t=e.CONSUME(Vp);e.CONSUME(h),e.SUBRULE(e.expressionFn,{ARGS:[t,{allowIdentifier:!1}]}),e.sectionStack.pop()}}r(NA,"valueFieldAttribute");function bA(e){return()=>{e.sectionStack.push("valuesFieldAttribute"),e.CONSUME(Dp),e.CONSUME(h),e.SUBRULE(e.stringArray),e.sectionStack.pop()}}r(bA,"valuesFieldAttribute");var yA=r(e=>{e.columnDefaultValueAttribute=e.RULE("columnDefaultValueAttribute",UA(e)),e.descriptionFieldAttribute=e.RULE("descriptionFieldAttribute",gA(e)),e.disabledFieldAttribute=e.RULE("disabledFieldAttribute",kA(e)),e.docsFieldAttribute=e.RULE("docsFieldAttribute",RA(e)),e.inputFilterFn=e.RULE("inputFilterFn",CA(e)),e.sensitiveFieldAttribute=e.RULE("sensitiveFieldAttribute",OA(e)),e.valueFieldAttribute=e.RULE("valueFieldAttribute",NA(e)),e.valuesFieldAttribute=e.RULE("valuesFieldAttribute",bA(e))},"register");function MA(e){return()=>{e.sectionStack.push("branchDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let t=e.CONSUME(ts);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]);let o={pre:[{name:"[string]"}],post:[{name:"[string]"}]};e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{color:"[string]","description?":"[string]",middleware:{function:o,query:o,task:o,tool:o},history:{function:[!1,10,100,1e3,1e4,"all"],query:[!1,10,100,1e3,1e4,"all"],task:[!1,10,100,1e3,1e4,"all"],tool:[!1,10,100,1e3,1e4,"all"],trigger:[!1,10,100,1e3,1e4,"all"],middleware:[!1,10,100,1e3,1e4,"all"]}}]}),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(MA,"branchDeclaration");var FA=r(e=>()=>{e.sectionStack.push("agentClause");let t=e.CONSUME(js);e.CONSUME(h),e.CONSUME(E).image==='""'&&e.addMissingError(t,"agent cannot be empty"),e.sectionStack.pop()},"agentClause");var _A=r(e=>()=>{e.sectionStack.push("authClause"),e.CONSUME(Jo),e.CONSUME(h),e.OR([{ALT:r(()=>e.CONSUME(Re),"ALT")},{ALT:r(()=>e.CONSUME(Le),"ALT")}]),e.sectionStack.pop()},"authClause");function IA(e){return()=>{e.sectionStack.push("cacheClause");let t=e.CONSUME(Bp);e.CONSUME(h),e.SUBRULE(e.objectAttrReq,{ARGS:[t,["ttl","input","auth","datasource","ip"],["headers","env"],{types:{ttl:"number",input:"boolean",auth:"boolean",datasource:"boolean",ip:"boolean"}}]}),e.sectionStack.pop()}}r(IA,"cacheClause");var vA=r(e=>()=>{e.sectionStack.push("canonicalClause");let t=e.CONSUME(Ks);e.CONSUME(h),e.CONSUME(E).image==='""'&&e.addMissingError(t,"canonical cannot be empty"),e.sectionStack.pop()},"canonicalClause");var wA=r(e=>()=>{e.sectionStack.push("channelClause");let t=e.CONSUME(Ys);e.CONSUME(h),e.CONSUME(E).image==='""'&&e.addMissingError(t,"channel cannot be empty"),e.sectionStack.pop()},"channelClause");var BA=r(e=>()=>{e.sectionStack.push("dbTableClause");let t=e.CONSUME(lr);e.CONSUME(h),e.CONSUME(E).image==='""'&&e.addMissingError(t,"table cannot be empty"),e.sectionStack.pop()},"dbTableClause");function PA(e){return t=>{let o=t?.[0]||a,n=t?.[1]??!0;e.sectionStack.push(o.name+"Clause"),e.CONSUME(o),e.CONSUME(h);let i=e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(Pe),"ALT")}]);n||i.image==='""'&&e.addMissingError(i,"value cannot be empty"),e.sectionStack.pop()}}r(PA,"flexibleStringClause");function GA(e){return()=>{e.sectionStack.push("historyClause");let t=e.CONSUME(wp);e.CONSUME(h),e.SUBRULE(e.schemaParseEnumFn,{ARGS:[t,[!1,"inherit",0,10,100,1e3,1e4,"all"]]}),e.sectionStack.pop()}}r(GA,"historyClause");function DA(e){return()=>{e.sectionStack.push("indexClause");let t=e.CONSUME(Gp);e.CONSUME(h),e.SUBRULE(e.schemaFn,{ARGS:[t,[{type:["primary","btree","gin","btree|unique","search","vector"],field:[{name:"[string]","op?":"[string]"}],"lang?":"[string]","name?":"[string]"}]]}),e.sectionStack.pop()}}r(DA,"indexClause");function VA(e){return()=>{e.sectionStack.push("inputClause"),e.CONSUME(Ho),e.OPTION(()=>{e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE1(()=>e.CONSUME1(m)),e.SUBRULE(e.optionalCommentBlockFn),e.OR([{ALT:r(()=>e.SUBRULE(e.objectColumnDefinition),"ALT")},{ALT:r(()=>e.SUBRULE(e.enumColumnDefinition),"ALT")},{ALT:r(()=>e.SUBRULE(e.columnDefinition,{ARGS:[{include_file:!0}]}),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbLinkColumnDefinition),"ALT")}])}),e.AT_LEAST_ONE2(()=>e.CONSUME2(m)),e.CONSUME(U)}),e.sectionStack.pop()}}r(VA,"inputClause");var qA=r(e=>()=>{e.sectionStack.push("mcpServerClause");let t=e.CONSUME(Ws);e.CONSUME(h),e.CONSUME(E).image==='""'&&e.addMissingError(t,"mcp_server cannot be empty"),e.sectionStack.pop()},"mcpServerClause");function jA(e){return()=>{e.sectionStack.push("middlewareClause");let t=e.CONSUME(vp);e.CONSUME(h),e.SUBRULE(e.schemaParseObjectFn,{ARGS:[t,{"pre?":[{name:"[string]","active?":"[boolean]","required?":"[boolean]"}],"post?":[{name:"[string]","active?":"[boolean]","required?":"[boolean]"}]}]}),e.sectionStack.pop()}}r(jA,"middlewareClause");var Jm={allowExpectStatements:!1,allowCallStatements:!1};function WA(e){return(t={})=>{t={...Jm,...t},e.sectionStack.push("nakedStackFn"),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE1(()=>e.CONSUME1(m)),e.OPTION(()=>e.CONSUME(ye)),e.OR([{ALT:r(()=>e.CONSUME(re),"ALT")},{ALT:r(()=>e.SUBRULE(e.aiFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.varFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.mathFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.textFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.preconditionFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.zipFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.objectFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.apiFn,{ARGS:[t]}),"ALT")},{ALT:r(()=>e.SUBRULE(e.webflowFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.controlFn,{ARGS:[t]}),"ALT")},{ALT:r(()=>e.SUBRULE(e.debugFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.storageFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.streamFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.actionCallFn),"ALT")},{GATE:r(()=>t.allowCallStatements,"GATE"),ALT:r(()=>e.SUBRULE(e.toolCallFn),"ALT")},{GATE:r(()=>t.allowCallStatements,"GATE"),ALT:r(()=>e.SUBRULE(e.addonCallFn),"ALT")},{GATE:r(()=>t.allowCallStatements,"GATE"),ALT:r(()=>e.SUBRULE(e.middlewareCallFn),"ALT")},{GATE:r(()=>t.allowExpectStatements,"GATE"),ALT:r(()=>e.SUBRULE(e.workflowExpectFn),"ALT")}])}),e.AT_LEAST_ONE2(()=>e.CONSUME2(m)),e.CONSUME(U),e.sectionStack.pop()}}r(WA,"nakedStackFn");function YA(e){return()=>{e.sectionStack.push("outputClause"),e.CONSUME(Ul),e.OPTION(()=>{e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE1(()=>e.CONSUME1(m)),e.OR([{ALT:r(()=>e.SUBRULE(e.objectColumnDefinition),"ALT")},{ALT:r(()=>e.SUBRULE(e.enumColumnDefinition),"ALT")},{ALT:r(()=>e.SUBRULE(e.columnDefinition,{ARGS:[{include_file:!1}]}),"ALT")}])}),e.AT_LEAST_ONE2(()=>e.CONSUME2(m)),e.CONSUME(U)}),e.sectionStack.pop()}}r(YA,"outputClause");function KA(e){return()=>{e.sectionStack.push("responseClause");let t=e.CONSUME(_p);e.CONSUME(h),e.SUBRULE(e.expressionFn,{ARGS:[t,{allowDisabledKeys:!0}]}),e.sectionStack.pop()}}r(KA,"responseClause");function HA(e){return()=>{e.sectionStack.push("scheduleClause");let t=e.CONSUME(Ou);e.CONSUME(h),e.SUBRULE(e.schemaFn,{ARGS:[t,[{starts_on:"[timestamp]","ends_on?":"[timestamp]","freq?":"[number]"}]]}),e.sectionStack.pop()}}r(HA,"scheduleClause");var fI={include_file:!0,isTableSchema:!1};function zA(e){return(t={},o={})=>{t={...fI,...t},e.sectionStack.push("schemaClause");let n=e.CONSUME(Pp);if(e.OPTION(()=>{e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE1(()=>e.CONSUME1(m)),e.OR([{ALT:r(()=>e.CONSUME(re),"ALT")},{ALT:r(()=>e.SUBRULE(e.objectColumnDefinition,{ARGS:[o]}),"ALT")},{ALT:r(()=>e.SUBRULE(e.enumColumnDefinition,{ARGS:[o]}),"ALT")},{ALT:r(()=>e.SUBRULE(e.columnDefinition,{ARGS:[{include_file:t.include_file,isTableSchema:t.isTableSchema},o]}),"ALT")}])}),e.MANY1(()=>e.CONSUME2(m)),e.CONSUME(U)}),t.isTableSchema){let i=o.id;i?["int","uuid"].includes(i.typeToken.image)||e.addInvalidValueError(i.typeToken,'The "id" column can only be of type "int" or "uuid"'):e.addMissingError(n,"{} must have an 'id' of type uuid or int column defined")}e.sectionStack.pop()}}r(zA,"schemaClause");function JA(e){return(t={})=>{t={...Jm,...t},e.sectionStack.push("stackClause"),e.CONSUME(zo),e.OPTION(()=>e.SUBRULE(e.nakedStackFn,{ARGS:[t]})),e.sectionStack.pop()}}r(JA,"stackClause");function XA(e){return t=>{let o=!1,n=!1;t=t||[],e.sectionStack.push("testClause"),e.CONSUME(Fp);let i=e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]);if(i&&i.image){let s=i.image.replaceAll('"',"");t.includes(s)&&e.addDuplicateNameError(i,"test"),t.push(i.image.replaceAll('"',""))}e.CONSUME(A),e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.MANY(()=>{e.OR1([{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.CONSUME(Ho),e.CONSUME(h),e.SUBRULE(e.objectWithAttributes)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.CONSUME(Ko),e.CONSUME1(h),e.CONSUME1(E)},"ALT")},{ALT:r(()=>e.SUBRULE(e.unitExpectFn),"ALT")}]),e.AT_LEAST_ONE1(()=>e.CONSUME1(m))}),e.CONSUME(U),e.sectionStack.pop()}}r(XA,"testClause");function QA(e){return()=>{e.sectionStack.push("viewClause");let t=e.CONSUME(Ip);e.CONSUME(h);let o={};e.SUBRULE(e.schemaParseObjectFn,{ARGS:[t,{"[string]":{"search?":"[query]","hide?":["[string]"],sort:{"[string]":["asc","desc","rand"]},id:"[string]","alias?":"[string]"}},o]});for(let n in o)!o[n].search&&!o[n].hide&&e.addMissingError(t,`view ${n} must have either a search or hide criteria`);e.sectionStack.pop()}}r(QA,"viewClause");var ZA=r(e=>{e.agentClause=e.RULE("agentClause",FA(e)),e.authClause=e.RULE("authClause",_A(e)),e.cacheClause=e.RULE("cacheClause",IA(e)),e.canonicalClause=e.RULE("canonicalClause",vA(e)),e.channelClause=e.RULE("channelClause",wA(e)),e.dbTableClause=e.RULE("dbTableClause",BA(e)),e.flexibleStringClause=e.RULE("flexibleStringClause",PA(e)),e.historyClause=e.RULE("historyClause",GA(e)),e.indexClause=e.RULE("indexClause",DA(e)),e.inputClause=e.RULE("inputClause",VA(e)),e.outputClause=e.RULE("outputClause",YA(e)),e.mcpServerClause=e.RULE("mcpServerClause",qA(e)),e.middlewareClause=e.RULE("middlewareClause",jA(e)),e.nakedStackFn=e.RULE("nakedStackFn",WA(e)),e.responseClause=e.RULE("responseClause",KA(e)),e.scheduleClause=e.RULE("scheduleClause",HA(e)),e.schemaClause=e.RULE("schemaClause",zA(e)),e.stackClause=e.RULE("stackClause",JA(e)),e.testClause=e.RULE("testClause",XA(e)),e.viewClause=e.RULE("viewClause",QA(e))},"register");function $A(e){return()=>{e.sectionStack.push("arraySlice");let t=null,o=null;if(e.OR([{ALT:r(()=>{e.CONSUME(H),e.CONSUME(z)},"ALT")},{ALT:r(()=>{e.CONSUME1(H),t=e.CONSUME1($),e.CONSUME1(Ee),e.OPTION(()=>o=e.CONSUME3($)),e.CONSUME1(z)},"ALT")},{ALT:r(()=>{e.CONSUME2(H),e.CONSUME2(Ee),o=e.CONSUME2($),e.CONSUME2(z)},"ALT")}]),t&&t.image.startsWith("-")&&e.addInvalidValueError(t,"Array slice start index cannot be negative"),o&&o.image.startsWith("-")&&e.addInvalidValueError(o,"Array slice end index cannot be negative"),t&&o){let n=parseInt(t.image,10);parseInt(o.image,10)<n&&e.addInvalidValueError(o,"Array slice end index cannot be less than start index")}e.sectionStack.pop()}}r($A,"arraySlice");var dI={include_file:!1,isTableSchema:!1};function eU(e){return(t={},o={})=>{t={...dI,...t};let n=!1,i=!1,s=!1;e.sectionStack.push("columnDefinition");let c=e.OR([{ALT:r(()=>e.CONSUME(As),"ALT")},{ALT:r(()=>e.CONSUME(Us),"ALT")},{ALT:r(()=>e.CONSUME(uo),"ALT")},{ALT:r(()=>e.CONSUME(gs),"ALT")},{ALT:r(()=>e.CONSUME(ks),"ALT")},{ALT:r(()=>e.CONSUME(Ls),"ALT")},{ALT:r(()=>e.CONSUME(xs),"ALT")},{ALT:r(()=>e.CONSUME(Cs),"ALT")},{ALT:r(()=>e.CONSUME(Os),"ALT")},{ALT:r(()=>e.CONSUME(Ns),"ALT")},{ALT:r(()=>e.CONSUME(bs),"ALT")},{ALT:r(()=>e.CONSUME(Fs),"ALT")},{ALT:r(()=>e.CONSUME(_s),"ALT")},{ALT:r(()=>e.CONSUME(Is),"ALT")},{ALT:r(()=>e.CONSUME(vs),"ALT")},{ALT:r(()=>e.CONSUME(ws),"ALT")},{ALT:r(()=>e.CONSUME(Bs),"ALT")},{ALT:r(()=>e.CONSUME(Ps),"ALT")},{ALT:r(()=>e.CONSUME(Gs),"ALT")},{ALT:r(()=>e.CONSUME(Ds),"ALT")},{ALT:r(()=>e.CONSUME(Vs),"ALT")},{GATE:r(()=>!!t.include_file,"GATE"),ALT:r(()=>e.CONSUME(ys),"ALT")}]);e.OPTION1(()=>{i=!0,e.SUBRULE(e.arraySlice)}),e.OPTION2(()=>{n=!0,e.CONSUME(et)});let l=e.CONSUME(a);e.OPTION6(()=>{s=!0,e.CONSUME1(et)}),e.OPTION3(()=>e.SUBRULE(e.columnDefaultValueAttribute)),e.OPTION4(()=>e.SUBRULE(e.filterDefinition,{ARGS:[c]}));let p={};e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[l,{"description?":"[string]","table?":"[string]","size?":"[number]","sensitive?":"[boolean]"},p]}),c.image=="vector"&&!p.size&&e.addWarning('Column named "vector" should have a size attribute defining its length.',l),o[j(l)]={typeToken:c,nameToken:l},e.addInput(l.image,c.image,i,n,s),e.sectionStack.pop()}}r(eU,"columnDefinition");function tU(e){return()=>{e.sectionStack.push("dbLinkColumnDefinition");let t=e.CONSUME(qs);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{table:"[string]","override?":{"[string]":{hidden:"[boolean]"}}}]}),e.sectionStack.pop()}}r(tU,"dbLinkColumnDefinition");function rU(e){return(t={})=>{e.sectionStack.push("enumColumnDefinition");let o=e.CONSUME(Rs),n=!1,i=!1,s=!1;e.OPTION1(()=>{n=!0,e.SUBRULE(e.arraySlice)}),e.OPTION2(()=>{i=!0,e.CONSUME(et)});let c=e.CONSUME(a);t[j(c)]={typeToken:o,nameToken:c},e.OPTION(()=>{s=!0,e.CONSUME1(et)}),e.OPTION3(()=>e.SUBRULE(e.columnDefaultValueAttribute)),e.SUBRULE(e.enumColumnMetadataDefinition,{ARGS:[o]}),e.addInput(c.image,"enum",n,i,s),e.sectionStack.pop()}}r(rU,"enumColumnDefinition");function oU(e){return(t=null)=>{e.sectionStack.push("filterDefinition"),e.CONSUME(qp),e.CONSUME(h),e.AT_LEAST_ONE_SEP({SEP:Me,DEF:r(()=>e.SUBRULE(e.inputFilterFn,{ARGS:[t]}),"DEF")}),e.sectionStack.pop()}}r(oU,"filterDefinition");function nU(e){return(t={})=>{e.sectionStack.push("objectColumnDefinition");let o=e.CONSUME(Ms),n=!1,i=!1,s=!1;e.OPTION2(()=>{n=!0,e.SUBRULE(e.arraySlice)});let c=e.CONSUME(a);t[j(c)]={typeToken:o,nameToken:c},e.OPTION(()=>{s=!0,e.CONSUME(et)}),e.SUBRULE(e.objectColumnMetadataDefinition),e.addInput(c.image,"enum",n,i,s),e.sectionStack.pop()}}r(nU,"objectColumnDefinition");var aU=r(e=>{e.arraySlice=e.RULE("arraySlice",$A(e)),e.columnDefinition=e.RULE("columnDefinition",eU(e)),e.dbLinkColumnDefinition=e.RULE("dbLinkColumnDefinition",tU(e)),e.enumColumnDefinition=e.RULE("enumColumnDefinition",rU(e)),e.filterDefinition=e.RULE("filterDefinition",oU(e)),e.objectColumnDefinition=e.RULE("objectColumnDefinition",nU(e))},"register");function iU(e){return()=>{let t=!1,o=!1,n=!1,i=!1,s=!1,c=!1,l=!1,p=!1,f=!1,d=[];e.sectionStack.push("functionDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let T=e.CONSUME(sr);e.OR([{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME(E),"ALT")}]),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.CONSUME(re),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.SUBRULE(e.cacheClause)},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.docsFieldAttribute)},"ALT")},{GATE:r(()=>!i,"GATE"),ALT:r(()=>{i=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.inputClause)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.middlewareClause)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.responseClause)},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.stackClause)},"ALT")},{GATE:r(()=>!f,"GATE"),ALT:r(()=>{f=!0,e.SUBRULE(e.tagsAttribute)},"ALT")},{ALT:r(()=>{e.SUBRULE(e.testClause,{ARGS:[d]})},"ALT")}])}),s||e.addMissingError(T,"{} is missing an input clause"),p||e.addMissingError(T,"{} is missing a stack clause"),l||e.addMissingError(T,"{} is missing a response clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(iU,"functionDeclaration");function sU(e){return()=>{e.sectionStack.push("actionCallFn"),e.CONSUME(fi),e.CONSUME(k);let t=e.CONSUME(ir);e.OR([{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}]),e.OPTION(()=>{e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"package?":"[string]","input?":{"[string]":"[expression]"},"mock?":{"![string]":"[expression]"},"registry?":{"[string]":"[expression]"},"description?":"[string]","disabled?":"[boolean]"}]})}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(sU,"actionCallFn");function cU(e){return()=>{e.sectionStack.push("addonCallFn"),e.CONSUME(no),e.CONSUME(k);let t=e.CONSUME(di);e.OR([{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}]),e.OPTION(()=>{e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"input?":{"[string]":"[expression]"},"mock?":{"![string]":"[expression]"},"description?":"[string]","disabled?":"[boolean]"}]})}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(cU,"addonCallFn");function lU(e){return()=>{e.sectionStack.push("aiAgentRunFn");let t=e.CONSUME(ao);e.OR({DEF:[{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME(E),"ALT")}],ERR_MSG:"Expected an agent name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"args?":"[expression]","runtime_mode?":["async-shared","async-dedicated"],"allow_tool_execution?":"[expression]","description?":"[string]","disabled?":"[boolean]","version?":"[string]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(lU,"aiAgentRunFn");function uU(e){return()=>{e.sectionStack.push("aiExternalMcpServerDetailsFn");let t=e.CONSUME(Oi);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{url:"[expression]",bearer_token:"[expression]",connection_type:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(uU,"aiExternalMcpServerDetailsFn");function pU(e){return()=>{e.sectionStack.push("aiExternalMcpToolListFn");let t=e.CONSUME(Ci);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{url:"[expression]",bearer_token:"[expression]",connection_type:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(pU,"aiExternalMcpToolListFn");function mU(e){return()=>{e.sectionStack.push("aiExternalMcpToolRunFn");let t=e.CONSUME(ao);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{url:"[expression]",bearer_token:"[expression]",connection_type:"[expression]",tool:"[expression]",args:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(mU,"aiExternalMcpToolRunFn");var fU=r(e=>{e.aiAgentRunFn=e.RULE("aiAgentRunFn",lU(e)),e.aiExternalMcpToolListFn=e.RULE("aiExternalMcpToolListFn",pU(e)),e.aiExternalMcpToolRunFn=e.RULE("aiExternalMcpToolRunFn",mU(e)),e.aiExternalMcpServerDetailsFn=e.RULE("aiExternalMcpServerDetailsFn",uU(e))},"register");function dU(e){return()=>{e.sectionStack.push("ai"),e.CONSUME(gi),e.CONSUME(k),e.OR([{ALT:r(()=>{e.CONSUME(ki),e.CONSUME1(k),e.SUBRULE(e.aiAgentRunFn)},"ALT")},{ALT:r(()=>{e.CONSUME(Ri),e.CONSUME2(k),e.CONSUME(Li),e.CONSUME3(k),e.OR1([{ALT:r(()=>e.SUBRULE(e.aiExternalMcpServerDetailsFn),"ALT")},{ALT:r(()=>{e.CONSUME(xi),e.CONSUME4(k),e.OR2([{ALT:r(()=>e.SUBRULE(e.aiExternalMcpToolListFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.aiExternalMcpToolRunFn),"ALT")}])},"ALT")}])},"ALT")}]),e.sectionStack.pop()}}r(dU,"aiFn");function TU(e){return()=>{e.sectionStack.push("apiCallFn");let t=e.CONSUME(yi);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]),e.CONSUME(Go),e.CONSUME(h),e.OR1([{ALT:r(()=>e.CONSUME(Wo),"ALT")},{ALT:r(()=>e.CONSUME(Do),"ALT")},{ALT:r(()=>e.CONSUME(Vo),"ALT")},{ALT:r(()=>e.CONSUME(qo),"ALT")},{ALT:r(()=>e.CONSUME(jo),"ALT")}]),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{api_group:"[string]","description?":"[string]","disabled?":"[boolean]","headers?":"[expression]","input?":{"[string]":"[expression]"}}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(TU,"apiCallFn");function EU(e){let t=["code","timeout"],o=["description","disabled"];return()=>{e.sectionStack.push("apiLambdaFn");let n=e.CONSUME(_i);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(EU,"apiLambdaFn");function hU(e){let t=["channel","data","auth_table","auth_id"],o=["description","disabled"];return()=>{e.sectionStack.push("apiRealtimeEventFn");let n=e.CONSUME(Mi);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(hU,"apiRealtimeEventFn");function SU(e){return()=>{e.sectionStack.push("apiRequestFn");let t=e.CONSUME(io);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{url:"[expression]",method:"[expression]","description?":"[string]","disabled?":"[boolean]","params?":"[expression]","headers?":"[expression]","timeout?":"[number]","follow_location?":"[expression]","ca_certificate?":"[string]","certificate?":"[string]","certificate_pass?":"[string]","private_key?":"[string]","verify_host?":"[boolean]","verify_peer?":"[boolean]","mock?":{"![string]":"[expression]"}}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(SU,"apiRequestFn");function AU(e){let t=["value"],o=["description","disabled"];return()=>{e.sectionStack.push("apiStreamFn");let n=e.CONSUME(Fi);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(AU,"apiStreamFn");function UU(e){return()=>{e.sectionStack.push("webflowRequestFn");let t=e.CONSUME(io);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{path:"[expression]",method:"[expression]","description?":"[string]","disabled?":"[boolean]","params?":"[expression]","headers?":"[expression]","timeout?":"[number]","follow_location?":"[expression]","ca_certificate?":"[string]","certificate?":"[string]","certificate_pass?":"[string]","private_key?":"[string]","verify_host?":"[boolean]","verify_peer?":"[boolean]","mock?":{"![string]":"[expression]"}}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(UU,"webflowRequestFn");var gU=r(e=>{e.apiLambdaFn=e.RULE("apiLambdaFn",EU(e)),e.apiRealtimeEventFn=e.RULE("apiRealtimeEventFn",hU(e)),e.apiRequestFn=e.RULE("apiRequestFn",SU(e)),e.apiStreamFn=e.RULE("apiStreamFn",AU(e)),e.apiCallFn=e.RULE("apiCallFn",TU(e)),e.webflowRequestFn=e.RULE("webflowRequestFn",UU(e))},"register");function kU(e){return(t={})=>{e.sectionStack.push("api"),e.CONSUME(Ni),e.CONSUME(k),e.OR([{GATE:r(()=>t.allowCallStatements,"GATE"),ALT:r(()=>e.SUBRULE(e.apiCallFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.apiLambdaFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.apiRequestFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.apiRealtimeEventFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.apiStreamFn),"ALT")}]),e.sectionStack.pop()}}r(kU,"apiFn");function RU(e){return()=>{e.sectionStack.push("arrayDifferenceFn");let t=e.CONSUME(Zi);e.CONSUME(B),e.SUBRULE(e.expressionFn),e.OPTION(()=>e.CONSUME(m)),e.CONSUME(P),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{value:"[expression]",by:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(RU,"arrayDifferenceFn");function LU(e){return()=>{e.sectionStack.push("arrayEveryFn");let t=e.CONSUME(Pi);e.SUBRULE(e.arrayValueIfAs,{ARGS:[t]}),e.sectionStack.pop()}}r(LU,"arrayEveryFn");function xU(e){return()=>{e.sectionStack.push("arrayFilterCountFn");let t=e.CONSUME(Gi);e.SUBRULE(e.arrayValueIfAs,{ARGS:[t]}),e.sectionStack.pop()}}r(xU,"arrayFilterCountFn");function CU(e){return()=>{e.sectionStack.push("arrayFilterFn");let t=e.CONSUME(Di);e.SUBRULE(e.arrayValueIfAs,{ARGS:[t]}),e.sectionStack.pop()}}r(CU,"arrayFilterFn");function OU(e){return()=>{e.sectionStack.push("arrayFindFn");let t=e.CONSUME(Vi);e.SUBRULE(e.arrayValueIfAs,{ARGS:[t]}),e.sectionStack.pop()}}r(OU,"arrayFindFn");function NU(e){return()=>{e.sectionStack.push("arrayFindIndexFn");let t=e.CONSUME(qi);e.SUBRULE(e.arrayValueIfAs,{ARGS:[t]}),e.sectionStack.pop()}}r(NU,"arrayFindIndexFn");function bU(e){return()=>{e.sectionStack.push("arrayGroupByFn");let t=e.CONSUME(Qi);e.CONSUME(B),e.SUBRULE(e.expressionFn),e.OPTION(()=>e.CONSUME(m)),e.CONSUME(P),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{by:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(bU,"arrayGroupByFn");function yU(e){return()=>{e.sectionStack.push("arrayHasFn");let t=e.CONSUME(ji);e.SUBRULE(e.arrayValueIfAs,{ARGS:[t]}),e.sectionStack.pop()}}r(yU,"arrayHasFn");function MU(e){return()=>{e.sectionStack.push("arrayIntersectionFn");let t=e.CONSUME($i);e.CONSUME(B),e.SUBRULE(e.expressionFn),e.OPTION(()=>e.CONSUME(m)),e.CONSUME(P),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{value:"[expression]",by:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(MU,"arrayIntersectionFn");function FU(e){return()=>{e.sectionStack.push("arrayMapFn");let t=e.CONSUME(Ji);e.CONSUME(B),e.SUBRULE(e.expressionFn),e.OPTION(()=>e.CONSUME(m)),e.CONSUME(P),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{by:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(FU,"arrayMapFn");function _U(e){return()=>{e.sectionStack.push("arrayMergeFn"),e.CONSUME(Wi),e.SUBRULE(e.variableOnly),e.SUBRULE(e.arrayValueOnly),e.sectionStack.pop()}}r(_U,"arrayMergeFn");function IU(e){return()=>{e.sectionStack.push("arrayNoValueAs"),e.OPTION(()=>{e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")}])}),e.OPTION1(()=>e.CONSUME1(m)),e.CONSUME(U)}),e.CONSUME(at),e.SUBRULE(e.variableOnly),e.sectionStack.pop()}}r(IU,"arrayNoValueAs");function vU(e){return()=>{e.sectionStack.push("arrayPartitionFn");let t=e.CONSUME(Xi);e.SUBRULE(e.arrayValueIfAs,{ARGS:[t]}),e.sectionStack.pop()}}r(vU,"arrayPartitionFn");function wU(e){return()=>{e.sectionStack.push("arrayPopFn"),e.CONSUME(Yi),e.SUBRULE(e.variableOnly),e.SUBRULE(e.arrayNoValueAs),e.sectionStack.pop()}}r(wU,"arrayPopFn");function BU(e){return()=>{e.sectionStack.push("arrayPushFn"),e.CONSUME(Ki),e.SUBRULE(e.variableOnly),e.SUBRULE(e.arrayValueOnly),e.sectionStack.pop()}}r(BU,"arrayPushFn");function PU(e){return()=>{e.sectionStack.push("arrayShiftFn"),e.CONSUME(Hi),e.SUBRULE(e.variableOnly),e.SUBRULE(e.arrayNoValueAs),e.sectionStack.pop()}}r(PU,"arrayShiftFn");function GU(e){return()=>{e.sectionStack.push("arrayUnionFn");let t=e.CONSUME(es);e.CONSUME(B),e.SUBRULE(e.expressionFn),e.OPTION(()=>e.CONSUME(m)),e.CONSUME(P),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{value:"[expression]",by:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(GU,"arrayUnionFn");function DU(e){return()=>{e.sectionStack.push("arrayUnshiftFn"),e.CONSUME(zi),e.SUBRULE(e.variableOnly),e.SUBRULE(e.arrayValueOnly),e.sectionStack.pop()}}r(DU,"arrayUnshiftFn");function VU(e){return(t,o={})=>{e.sectionStack.push("arrayValueIfAs");let n=!1;e.CONSUME(B),e.MANY(()=>e.CONSUME(m)),e.SUBRULE(e.expressionFn),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(P),e.OPTION(()=>{n=!0,e.CONSUME(po),e.CONSUME1(B),e.SUBRULE1(e.expressionFn),e.CONSUME1(P)}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"description?":"[string]","disabled?":"[boolean]",...o}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),n||e.addWarning("`if (...)` conditional statement is missing",t),e.sectionStack.pop()}}r(VU,"arrayValueIfAs");function qU(e){return()=>{e.sectionStack.push("arrayValueOnly");let t=!1;e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>{t=!0,e.SUBRULE(e.valueFieldAttribute)},"ALT")},{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")}])}),t||e.SUBRULE(e.valueFieldAttribute),e.OPTION1(()=>e.CONSUME1(m)),e.CONSUME(U),e.sectionStack.pop()}}r(qU,"arrayValueOnly");function jU(e){return t=>{e.sectionStack.push("valueAttrOnly");let o=!1,n=!1,i=!1;e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>{o=!0,e.SUBRULE(e.valueFieldAttribute)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{GATE:r(()=>!i,"GATE"),ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")}])}),o||e.addMissingError(t,"{} is missing a stack clause"),e.OPTION1(()=>e.CONSUME1(m)),e.CONSUME(U),e.sectionStack.pop()}}r(jU,"valueAttrOnly");var WU=r(e=>{e.arrayEveryFn=e.RULE("arrayEveryFn",LU(e)),e.arrayFilterCountFn=e.RULE("arrayFilterCountFn",xU(e)),e.arrayFilterFn=e.RULE("arrayFilterFn",CU(e)),e.arrayFindFn=e.RULE("arrayFindFn",OU(e)),e.arrayFindIndexFn=e.RULE("arrayFindIndexFn",NU(e)),e.arrayHasFn=e.RULE("arrayHasFn",yU(e)),e.arrayMergeFn=e.RULE("arrayMergeFn",_U(e)),e.arrayNoValueAs=e.RULE("arrayNoValueAs",IU(e)),e.arrayPopFn=e.RULE("arrayPopFn",wU(e)),e.arrayPushFn=e.RULE("arrayPushFn",BU(e)),e.arrayShiftFn=e.RULE("arrayShiftFn",PU(e)),e.arrayUnshiftFn=e.RULE("arrayUnshiftFn",DU(e)),e.arrayValueIfAs=e.RULE("arrayValueIfAs",VU(e)),e.arrayValueOnly=e.RULE("arrayValueOnly",qU(e)),e.valueAttrOnly=e.RULE("valueAttrOnly",jU(e)),e.arrayMapFn=e.RULE("arrayMapFn",FU(e)),e.arrayPartitionFn=e.RULE("arrayPartitionFn",vU(e)),e.arrayGroupByFn=e.RULE("arrayGroupByFn",bU(e)),e.arrayUnionFn=e.RULE("arrayUnionFn",GU(e)),e.arrayDifferenceFn=e.RULE("arrayDifferenceFn",RU(e)),e.arrayIntersectionFn=e.RULE("arrayIntersectionFn",MU(e))},"register");function YU(e){return()=>{e.sectionStack.push("array"),e.CONSUME(Bi),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.arrayEveryFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayFilterCountFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayFilterFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayFindFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayFindIndexFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayHasFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayShiftFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayPopFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayUnshiftFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayPushFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayMergeFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayMapFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayPartitionFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayGroupByFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayUnionFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayDifferenceFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.arrayIntersectionFn),"ALT")}]),e.sectionStack.pop()}}r(YU,"arrayFn");function KU(e){return()=>{e.sectionStack.push("cloudAlgoliaFn"),e.CONSUME(os),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.cloudAlgoliaRequestFn),"ALT")}]),e.sectionStack.pop()}}r(KU,"cloudAlgoliaFn");function HU(e){return()=>{e.sectionStack.push("cloudAlgoliaRequestFn");let t=e.CONSUME(lo);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"description?":"[string]","application_id?":"[expression]","api_key?":"[expression]",url:"[expression]","method?":["POST","GET"],payload:"[expression]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(HU,"cloudAlgoliaRequestFn");function zU(e){return()=>{e.sectionStack.push("cloudAwsFn"),e.CONSUME(as),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.cloudAwsS3Fn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudAwsOpenSearchFn),"ALT")}]),e.sectionStack.pop()}}r(zU,"cloudAwsFn");function JU(e){return()=>{e.sectionStack.push("cloudAwsOpenSearchFn"),e.CONSUME(Es),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.cloudSearchDocumentFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudSearchQueryFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudSearchRequestFn),"ALT")}]),e.sectionStack.pop()}}r(JU,"cloudAwsOpenSearchFn");function XU(e){return()=>{e.sectionStack.push("cloudAwsS3Fn"),e.CONSUME(fs),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.cloudListDirectoryFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudSignUrlFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudUploadFileFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudDeleteFileFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudReadFileFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudGetFileInfoFn),"ALT")}]),e.sectionStack.pop()}}r(XU,"cloudAwsS3Fn");function QU(e){return()=>{e.sectionStack.push("cloudAzureFn"),e.CONSUME(ss),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.cloudStorageFn),"ALT")}]),e.sectionStack.pop()}}r(QU,"cloudAzureFn");function ZU(e){return()=>{e.sectionStack.push("cloudDeleteFileFn"),e.CONSUME(us),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.sectionStack.pop()}}r(ZU,"cloudDeleteFileFn");function $U(e){return()=>{e.sectionStack.push("cloudElasticSearchFn"),e.CONSUME(is),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.cloudSearchDocumentFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudSearchQueryFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudSearchRequestFn),"ALT")}]),e.sectionStack.pop()}}r($U,"cloudElasticSearchFn");function eg(e){return()=>{e.sectionStack.push("cloudGetFileInfoFn");let t=e.CONSUME(ps);e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(eg,"cloudGetFileInfoFn");function tg(e){return()=>{e.sectionStack.push("cloudGoogleFn"),e.CONSUME(ns),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.cloudStorageFn),"ALT")}]),e.sectionStack.pop()}}r(tg,"cloudGoogleFn");function rg(e){return()=>{e.sectionStack.push("cloudListDirectoryFn");let t=e.CONSUME(ms);e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(rg,"cloudListDirectoryFn");function og(e){return()=>{e.sectionStack.push("cloudReadFileFn");let t=e.CONSUME(ls);e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(og,"cloudReadFileFn");function ng(e){return()=>{e.sectionStack.push("cloudSearchDocumentFn");let t=e.CONSUME(hs);e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(ng,"cloudSearchDocumentFn");function ag(e){return()=>{e.sectionStack.push("cloudSearchQueryFn");let t=e.CONSUME(Ss);e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(ag,"cloudSearchQueryFn");function ig(e){return()=>{e.sectionStack.push("cloudSearchRequestFn");let t=e.CONSUME(lo);e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(ig,"cloudSearchRequestFn");function sg(e){return()=>{e.sectionStack.push("cloudSignUrlFn");let t=e.CONSUME(ds);e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(sg,"cloudSignUrlFn");function cg(e){return()=>{e.sectionStack.push("cloudStorageFn"),e.CONSUME(cs),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.cloudListDirectoryFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudSignUrlFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudUploadFileFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudDeleteFileFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudReadFileFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudGetFileInfoFn),"ALT")}]),e.sectionStack.pop()}}r(cg,"cloudStorageFn");function lg(e){return()=>{e.sectionStack.push("cloudUploadFileFn");let t=e.CONSUME(Ts);e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(lg,"cloudUploadFileFn");var ug=r(e=>{e.cloudAlgoliaFn=e.RULE("cloudAlgoliaFn",KU(e)),e.cloudAlgoliaRequestFn=e.RULE("cloudAlgoliaRequestFn",HU(e)),e.cloudAwsFn=e.RULE("cloudAwsFn",zU(e)),e.cloudAwsOpenSearchFn=e.RULE("cloudAwsOpenSearchFn",JU(e)),e.cloudAwsS3Fn=e.RULE("cloudAwsS3Fn",XU(e)),e.cloudAzureFn=e.RULE("cloudAzureFn",QU(e)),e.cloudDeleteFileFn=e.RULE("cloudDeleteFileFn",ZU(e)),e.cloudElasticSearchFn=e.RULE("cloudElasticSearchFn",$U(e)),e.cloudGetFileInfoFn=e.RULE("cloudGetFileInfoFn",eg(e)),e.cloudGoogleFn=e.RULE("cloudGoogleFn",tg(e)),e.cloudListDirectoryFn=e.RULE("cloudListDirectoryFn",rg(e)),e.cloudReadFileFn=e.RULE("cloudReadFileFn",og(e)),e.cloudSearchDocumentFn=e.RULE("cloudSearchDocumentFn",ng(e)),e.cloudSearchQueryFn=e.RULE("cloudSearchQueryFn",ag(e)),e.cloudSearchRequestFn=e.RULE("cloudSearchRequestFn",ig(e)),e.cloudSignUrlFn=e.RULE("cloudSignUrlFn",sg(e)),e.cloudStorageFn=e.RULE("cloudStorageFn",cg(e)),e.cloudUploadFileFn=e.RULE("cloudUploadFileFn",lg(e))},"register");function pg(e){return()=>{e.sectionStack.push("cloud"),e.CONSUME(rs),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.cloudGoogleFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudAwsFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudElasticSearchFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudAzureFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.cloudAlgoliaFn),"ALT")}]),e.sectionStack.pop()}}r(pg,"cloudFn");function mg(e){return(t={})=>{e.OR([{ALT:r(()=>e.CONSUME(mo),"ALT")},{ALT:r(()=>e.CONSUME(pc),"ALT")},{ALT:r(()=>e.SUBRULE(e.awaitFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.conditionalFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.forEachFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.forFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.functionRunFn),"ALT")},{GATE:r(()=>t.allowFunctionCalls,"GATE"),ALT:r(()=>e.SUBRULE(e.functionCallFn),"ALT")},{GATE:r(()=>t.allowFunctionCalls,"GATE"),ALT:r(()=>e.SUBRULE(e.taskCallFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.groupFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.returnFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.switchFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.whileFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.throwFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.tryCatchFn),"ALT")}]),e.sectionStack.pop()}}r(mg,"controlFn");function fg(e){let t=["ids","timeout"],o=["description","disabled"];return()=>{e.sectionStack.push("awaitFn");let n=e.CONSUME(tc);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(fg,"awaitFn");function dg(e){return()=>{e.sectionStack.push("conditionalElifFn"),e.CONSUME(Qs),e.CONSUME(B),e.MANY(()=>e.CONSUME(m)),e.SUBRULE(e.expressionFn),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(P),e.OPTION(()=>e.SUBRULE(e.nakedStackFn)),e.sectionStack.pop()}}r(dg,"conditionalElifFn");function Tg(e){return()=>{e.sectionStack.push("conditionalElseFn"),e.CONSUME(Xs),e.SUBRULE(e.nakedStackFn),e.sectionStack.pop()}}r(Tg,"conditionalElseFn");function Eg(e){return()=>{let t=!1,o=!1,n=!1;e.sectionStack.push("conditionalFn");let i=e.CONSUME(Js);e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>e.CONSUME(re),"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.disabledFieldAttribute)},"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.SUBRULE(e.conditionalIfFn),e.MANY1(()=>{e.AT_LEAST_ONE1(()=>e.CONSUME3(m)),e.SUBRULE(e.conditionalElifFn)}),e.OPTION(()=>{e.AT_LEAST_ONE2(()=>e.CONSUME4(m)),e.SUBRULE(e.conditionalElseFn)})},"ALT")}])}),t||e.addMissingError(i,"{} is missing the if statement"),e.MANY2(()=>e.CONSUME1(m)),e.CONSUME(U),e.sectionStack.pop()}}r(Eg,"conditionalFn");function hg(e){return()=>{e.sectionStack.push("conditionalIfFn"),e.CONSUME(po),e.CONSUME(B),e.MANY(()=>e.CONSUME(m)),e.SUBRULE(e.expressionFn),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(P),e.OPTION(()=>e.SUBRULE(e.nakedStackFn)),e.sectionStack.pop()}}r(hg,"conditionalIfFn");function Sg(e){return()=>{let t=!1;e.sectionStack.push("forEachFn"),e.CONSUME($s),e.OR([{ALT:r(()=>{e.CONSUME(k),e.CONSUME(ec)},"ALT")},{ALT:r(()=>{e.CONSUME(B),e.SUBRULE(e.expressionFn),e.CONSUME(P),e.OPTION(()=>{e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR1([{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")},{ALT:r(()=>{t=!0,e.CONSUME(mt),e.CONSUME(at),e.SUBRULE(e.assignableVariableAs),e.OPTION1(()=>e.SUBRULE1(e.nakedStackFn))},"ALT")}])}),t||(e.CONSUME1(mt),e.CONSUME1(at),e.SUBRULE(e.assignableVariableAs),e.OPTION2(()=>e.SUBRULE2(e.nakedStackFn))),e.MANY2(()=>e.CONSUME1(m)),e.CONSUME(U)})},"ALT")}]),e.sectionStack.pop()}}r(Sg,"forEachFn");function Ag(e){return()=>{let t=!1;e.sectionStack.push("forFn"),e.CONSUME(Zs),e.CONSUME(B),e.SUBRULE(e.expressionFn),e.CONSUME(P),e.OPTION(()=>{e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")},{ALT:r(()=>{t=!0,e.CONSUME(mt),e.CONSUME(at),e.SUBRULE(e.assignableVariableAs),e.OPTION1(()=>e.SUBRULE1(e.nakedStackFn))},"ALT")}])}),t||(e.CONSUME1(mt),e.CONSUME1(at),e.SUBRULE(e.assignableVariableAs),e.OPTION2(()=>e.SUBRULE2(e.nakedStackFn))),e.MANY2(()=>e.CONSUME1(m)),e.CONSUME(U)}),e.sectionStack.pop()}}r(Ag,"forFn");function Ug(e){let t=[],o=["input","description","disabled"];return()=>{e.sectionStack.push("functionCallFn"),e.CONSUME(sr),e.CONSUME(k);let n=e.CONSUME(Kc);e.OR([{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}]),e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o,{allowObject:["input"]}]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(Ug,"functionCallFn");function gg(e){return()=>{e.sectionStack.push("functionRunFn"),e.CONSUME(sr),e.CONSUME(k);let t=e.CONSUME(Yc);e.OR([{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}]),e.OPTION(()=>{e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"input?":{"[string]?":"[expression]"},"description?":"[string]","disabled?":"[boolean]","runtime_mode?":["async-shared","async-dedicated"],"mock?":{"![string]":"[expression]"}}]})}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(gg,"functionRunFn");function kg(e){return()=>{let t=!1;e.sectionStack.push("groupFn"),e.CONSUME(lc),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")},{ALT:r(()=>{t=!0,e.SUBRULE(e.stackClause)},"ALT")}])}),t||e.SUBRULE(e.stackClause),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.sectionStack.pop()}}r(kg,"groupFn");function Rg(e){return()=>{e.sectionStack.push("preconditionFn");let t=e.CONSUME(Ju);e.CONSUME(B),e.SUBRULE(e.expressionFn),e.CONSUME(P),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"description?":"[string]","disabled?":"[boolean]","payload?":"[expression]","error?":"[expression]","error_type?":["standard","notfound","accessdenied","toomanyrequests","unauthorized","badrequest","inputerror"]}]}),e.sectionStack.pop()}}r(Rg,"preconditionFn");function Lg(e){let t=["value"],o=["description","disabled"];return()=>{e.sectionStack.push("return");let n=e.CONSUME(nc);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(Lg,"returnFn");function xg(e){return()=>{e.sectionStack.push("switchCaseFn"),e.CONSUME(ic),e.CONSUME(B),e.SUBRULE(e.expressionFn),e.CONSUME(P),e.OPTION(()=>e.SUBRULE(e.nakedStackFn)),e.OPTION1(()=>e.CONSUME(mo)),e.sectionStack.pop()}}r(xg,"switchCaseFn");function Cg(e){return()=>{e.sectionStack.push("switchDefaultFn"),e.CONSUME(sc),e.SUBRULE(e.nakedStackFn),e.sectionStack.pop()}}r(Cg,"switchDefaultFn");function Og(e){return()=>{e.sectionStack.push("switchFn"),e.CONSUME(ac),e.CONSUME(B),e.SUBRULE(e.expressionFn),e.CONSUME(P),e.OPTION(()=>{e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")},{ALT:r(()=>{e.MANY1(()=>{e.MANY3(()=>e.CONSUME3(m)),e.SUBRULE(e.switchCaseFn)})},"ALT")}])}),e.OPTION1(()=>{e.MANY4(()=>e.CONSUME4(m)),e.SUBRULE(e.switchDefaultFn)}),e.MANY2(()=>e.CONSUME1(m)),e.CONSUME(U)}),e.sectionStack.pop()}}r(Og,"switchFn");function Ng(e){let t=[],o=["description","disabled"];return()=>{e.sectionStack.push("taskCallFn"),e.CONSUME(Yo),e.CONSUME(k);let n=e.CONSUME(xu);e.OR([{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}]),e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(Ng,"taskCallFn");function bg(e){let t=["value","name"],o=["description","disabled"];return()=>{e.sectionStack.push("throw");let n=e.CONSUME(uc);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(bg,"throwFn");function yg(e){return()=>{let t=!1,o=!1;e.sectionStack.push("tryCatchFn"),e.CONSUME(rc),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")},{ALT:r(()=>{t=!0,e.CONSUME(bn),e.OPTION(()=>e.SUBRULE(e.nakedStackFn))},"ALT")},{ALT:r(()=>{o=!0,e.CONSUME(yn),e.sectionStack.push("catchFn"),e.OPTION1(()=>e.SUBRULE1(e.nakedStackFn)),e.sectionStack.pop()},"ALT")},{ALT:r(()=>{e.CONSUME(oc),e.OPTION2(()=>e.SUBRULE2(e.nakedStackFn))},"ALT")}])}),t||(e.CONSUME(bn),e.SUBRULE(e.nakedStackFn)),o||(e.CONSUME(yn),e.SUBRULE(e.nakedStackFn)),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.sectionStack.pop()}}r(yg,"tryCatchFn");function Mg(e){return()=>{let t=!1;e.sectionStack.push("whileFn"),e.CONSUME(cc),e.CONSUME(B),e.MANY(()=>e.CONSUME(m)),e.SUBRULE(e.expressionFn),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(P),e.OPTION(()=>{e.CONSUME(A),e.MANY2(()=>{e.AT_LEAST_ONE(()=>e.CONSUME2(m)),e.OR([{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")},{ALT:r(()=>{t=!0,e.CONSUME(mt),e.OPTION1(()=>e.SUBRULE(e.nakedStackFn))},"ALT")}])}),t||(e.CONSUME(mt),e.SUBRULE(e.nakedStackFn)),e.MANY3(()=>e.CONSUME3(m)),e.CONSUME(U)}),e.sectionStack.pop()}}r(Mg,"whileFn");var Fg=r(e=>{e.awaitFn=e.RULE("awaitFn",fg(e)),e.conditionalElifFn=e.RULE("conditionalElifFn",dg(e)),e.conditionalElseFn=e.RULE("conditionalElseFn",Tg(e)),e.conditionalFn=e.RULE("conditionalFn",Eg(e)),e.conditionalIfFn=e.RULE("conditionalIfFn",hg(e)),e.forEachFn=e.RULE("forEachFn",Sg(e)),e.forFn=e.RULE("forFn",Ag(e)),e.functionRunFn=e.RULE("functionRunFn",gg(e)),e.functionCallFn=e.RULE("functionCallFn",Ug(e)),e.taskCallFn=e.RULE("taskCallFn",Ng(e)),e.groupFn=e.RULE("groupFn",kg(e)),e.preconditionFn=e.RULE("preconditionFn",Rg(e)),e.returnFn=e.RULE("returnFn",Lg(e)),e.switchCaseFn=e.RULE("switchCaseFn",xg(e)),e.switchDefaultFn=e.RULE("switchDefaultFn",Cg(e)),e.switchFn=e.RULE("switchFn",Og(e)),e.throwFn=e.RULE("throwFn",bg(e)),e.tryCatchFn=e.RULE("tryCatchFn",yg(e)),e.whileFn=e.RULE("whileFn",Mg(e))},"register");var Ge={name:"[string]","input?":{"[string]":"[expression]"},"as?":"[string]","output?":["[string]"]};Ge["addon?"]=[Ge];function _g(e){return()=>{e.sectionStack.push("dbAddFn");let t=e.CONSUME(To);e.OR({DEF:[{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{data:{"[string]":"[expression]"},"description?":"[string]","disabled?":"[boolean]","addon?":[Ge],"mock?":{"![string]":"[expression]"},"output?":["[string]"]}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(_g,"dbAddFn");function Ig(e){return t=>{e.sectionStack.push("dbAddonAttr"),e.SUBRULE(e.schemaFn,{ARGS:[t,[Ge]]}),e.sectionStack.pop()}}r(Ig,"dbAddonAttr");function vg(e){return()=>{e.sectionStack.push("dbAddOrEditFn");let t=e.CONSUME(Cc);e.OR({DEF:[{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{field_name:"[expression]",field_value:"[expression]",data:{"[string]":"[expression]"},"description?":"[string]","disabled?":"[boolean]","addon?":[Ge],"mock?":{"![string]":"[expression]"}}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(vg,"dbAddOrEditFn");function wg(e){return()=>{e.sectionStack.push("dbBulkAddFn");let t=e.CONSUME(To);e.OR({DEF:[{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"});let o={};e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"items?":"[expression]","allow_id_field?":"[boolean]","description?":"[string]","disabled?":"[boolean]"},o]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(wg,"dbBulkAddFn");function Bg(e){return()=>{e.sectionStack.push("dbBulkDeleteFn");let t=e.CONSUME(Nc);e.OR({DEF:[{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"where?":"[query]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Bg,"dbBulkDeleteFn");function Pg(e){return()=>{e.sectionStack.push("db.bulk"),e.CONSUME(wc),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.dbBulkDeleteFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbBulkUpdateFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbBulkPatchFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbBulkAddFn),"ALT")}]),e.sectionStack.pop()}}r(Pg,"dbBulkFn");function Gg(e){return()=>{e.sectionStack.push("dbBulkPatchFn");let t=e.CONSUME(Eo);e.OR({DEF:[{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"items?":"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Gg,"dbBulkPatchFn");function Dg(e){return()=>{e.sectionStack.push("dbBulkUpdateFn");let t=e.CONSUME(yc);e.OR({DEF:[{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"items?":"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Dg,"dbBulkUpdateFn");function Vg(e){return()=>{e.sectionStack.push("dbDelFn");let t=e.CONSUME(Oc);e.OR({DEF:[{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{field_name:"[expression]",field_value:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.sectionStack.pop()}}r(Vg,"dbDelFn");function qg(e){return()=>{e.sectionStack.push("dbDirectQueryFn");let t=e.CONSUME(ho);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{sql:"[expression]","response_type?":["list","single"],"parser?":["template_engine","prepared"],"description?":"[string]","disabled?":"[boolean]","arg*":"[expression]","mock?":{"![string]":"[expression]"}}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(qg,"dbDirectQueryFn");function jg(e){return()=>{e.sectionStack.push("dbEditFn");let t=e.CONSUME(bc);e.OR({DEF:[{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{field_name:"[expression]",field_value:"[expression]",data:{"[string]":"[expression]"},"description?":"[string]","disabled?":"[boolean]","output?":["[string]"],"addon?":[Ge],"mock?":{"![string]":"[expression]"}}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(jg,"dbEditFn");function Wg(e){return()=>{e.sectionStack.push("dbExternalDirectQueryFn");let t=e.CONSUME(ho);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{sql:"[expression]",response_type:["list","single"],connection_string:"[expression]","description?":"[string]","disabled?":"[boolean]","arg*":"[expression]","mock?":{"![string]":"[expression]"}}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Wg,"dbExternalDirectQueryFn");function Yg(e){return()=>{e.sectionStack.push("dbExternalFn"),e.CONSUME(Bc),e.CONSUME(k),e.OR([{ALT:r(()=>e.CONSUME(Pc),"ALT")},{ALT:r(()=>e.CONSUME(Gc),"ALT")},{ALT:r(()=>e.CONSUME(Vc),"ALT")},{ALT:r(()=>e.CONSUME(Dc),"ALT")}]),e.CONSUME1(k),e.SUBRULE(e.dbExternalDirectQueryFn),e.sectionStack.pop()}}r(Yg,"dbExternalFn");function Kg(e){return()=>{e.sectionStack.push("dbGetFn");let t=e.CONSUME(xc);e.OR({DEF:[{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{field_name:"[expression]",field_value:"[expression]","description?":"[string]","disabled?":"[boolean]","output?":["[string]"],"lock?":"[boolean]","addon?":[Ge],"mock?":{"![string]":"[expression]"}}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Kg,"dbGetFn");function Hg(e){return()=>{e.sectionStack.push("dbHasFn");let t=e.CONSUME(Mc);e.OR({DEF:[{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{field_name:"[expression]",field_value:"[expression]","description?":"[string]","disabled?":"[boolean]","mock?":{"![string]":"[expression]"}}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Hg,"dbHasFn");function zg(e){return()=>{e.sectionStack.push("dbPatchFn");let t=e.CONSUME(Eo);e.OR({DEF:[{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{field_name:"[expression]",field_value:"[expression]",data:"[expression]","description?":"[string]","disabled?":"[boolean]","addon?":[Ge],"mock?":{"![string]":"[expression]"}}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(zg,"dbPatchFn");function Jg(e){return()=>{e.sectionStack.push("dbQueryFn");let t=e.CONSUME(Lc);e.OR([{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}]),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"eval?":{"[string]":"[query]"},"return?":{type:["list","stream","exists","count","single","aggregate"],"paging?":{"page?":"[expression]","per_page?":"[expression]","offset?":"[expression]","totals?":"[boolean]","metadata?":"[boolean]"},"distinct?":["yes","no"],"group?":{"[string]":"[query]"},"eval?":{"[string]":"[expression]"}},"join?":{"[string]":{table:"[string]","type?":["inner","left","right"],"where?":"[query]"}},"lock?":"[boolean]","disabled?":"[boolean]","description?":"[string]","mock?":{"![string]":"[expression]"},"addon?":[Ge],"sort?":{"[string]":["asc","desc","rand"]},"override_sort?":"[expression]","output?":["[string]"],"where?":"[query]","additional_where?":"[query]"}]});let o=e.sectionStack.includes("addonDeclaration");e.OR1([{GATE:r(()=>!o,"GATE"),ALT:r(()=>e.SUBRULE(e.asVariable,{ARGS:[t]}),"ALT")},{GATE:r(()=>o,"GATE"),ALT:r(()=>{},"ALT")}]),e.sectionStack.pop()}}r(Jg,"dbQueryFn");function Xg(e){return()=>{let t=[],o=["description","disabled","path"];e.sectionStack.push("dbSchemaFn");let n=e.CONSUME(Fc);e.OR([{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}]),e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(Xg,"dbSchemaFn");function Qg(e){let t=["value"],o=["description","disabled"];return()=>{e.sectionStack.push("dbSetDatasourceFn");let n=e.CONSUME(vc);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(Qg,"dbSetDatasourceFn");function Zg(e){return()=>{let t=!1;e.sectionStack.push("dbTransactionFn"),e.CONSUME(_c),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")},{ALT:r(()=>{t=!0,e.SUBRULE(e.stackClause)},"ALT")}])}),t||e.SUBRULE(e.stackClause),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.sectionStack.pop()}}r(Zg,"dbTransactionFn");function $g(e){return()=>{e.sectionStack.push("dbTruncateFn");let t=e.CONSUME(Ic);e.OR({DEF:[{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}],ERR_MSG:"Expected a table name"}),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"reset?":"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.sectionStack.pop()}}r($g,"dbTruncateFn");var ek=r(e=>{e.dbAddFn=e.RULE("dbAddFn",_g(e)),e.dbBulkFn=e.RULE("dbBulkFn",Pg(e)),e.dbBulkAddFn=e.RULE("dbBulkAddFn",wg(e)),e.dbBulkDeleteFn=e.RULE("dbBulkDeleteFn",Bg(e)),e.dbBulkUpdateFn=e.RULE("dbBulkUpdateFn",Dg(e)),e.dbBulkPatchFn=e.RULE("dbBulkPatchFn",Gg(e)),e.dbDelFn=e.RULE("dbDelFn",Vg(e)),e.dbDirectQueryFn=e.RULE("dbDirectQueryFn",qg(e)),e.dbEditFn=e.RULE("dbEditFn",jg(e)),e.dbExternalDirectQueryFn=e.RULE("dbExternalDirectQueryFn",Wg(e)),e.dbExternalFn=e.RULE("dbExternalFn",Yg(e)),e.dbGetFn=e.RULE("dbGetFn",Kg(e)),e.dbHasFn=e.RULE("dbHasnpmFn",Hg(e)),e.dbPatchFn=e.RULE("dbPatchFn",zg(e)),e.dbQueryFn=e.RULE("dbQueryFn",Jg(e)),e.dbSchemaFn=e.RULE("dbSchemaFn",Xg(e)),e.dbSetDatasourceFn=e.RULE("dbSetDatasourceFn",Qg(e)),e.dbTransactionFn=e.RULE("dbTransactionFn",Zg(e)),e.dbTruncateFn=e.RULE("dbTruncateFn",$g(e)),e.dbAddOrEditFn=e.RULE("dbAddOrEditFn",vg(e)),e.dbAddonAttr=e.RULE("dbAddonAttr",Ig(e))},"register");function tk(e){return()=>{e.sectionStack.push("db"),e.CONSUME(fo),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.dbExternalFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbGetFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbHasFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbEditFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbDelFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbAddFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbDirectQueryFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbSetDatasourceFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbQueryFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbSchemaFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbTruncateFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbTransactionFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbPatchFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbBulkFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.dbAddOrEditFn),"ALT")}]),e.sectionStack.pop()}}r(tk,"dbFn");function rk(e){let t=["value"],o=["description","disabled"];return()=>{e.sectionStack.push("debugLog");let n=e.CONSUME(Wc);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(rk,"debugLogFn");function ok(e){let t=["value"],o=["description","disabled"];return()=>{e.sectionStack.push("debugStop");let n=e.CONSUME(jc);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(ok,"debugStopFn");var nk=r(e=>{e.debugLogFn=e.RULE("debugLogFn",rk(e)),e.debugStopFn=e.RULE("debugStopFn",ok(e))},"register");function ak(e){return()=>{e.sectionStack.push("debug"),e.CONSUME(qc),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.debugLogFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.debugStopFn),"ALT")}]),e.sectionStack.pop()}}r(ak,"debugFn");function ik(e){let t=["min","max"],o=[];return()=>{e.sectionStack.push("unitExpectToBeWithinFn");let n=e.CONSUME(wo);e.CONSUME(B),e.CONSUME(ur),e.MANY(()=>{e.CONSUME(k),e.CONSUME(a)}),e.CONSUME(P),e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(ik,"unitExpectToBeWithinFn");function sk(e){return()=>{e.sectionStack.push("unitExpectToThrowFn");let t=e.CONSUME(Bo);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"exception?":"[string]"}]}),e.sectionStack.pop()}}r(sk,"unitExpectToThrowFn");function ck(e){return()=>{e.sectionStack.push("unitExpectWithArgumentsFn");let t=e.OR([{ALT:r(()=>e.CONSUME(_o),"ALT")},{ALT:r(()=>e.CONSUME(No),"ALT")},{ALT:r(()=>e.CONSUME(bo),"ALT")},{ALT:r(()=>e.CONSUME(yo),"ALT")},{ALT:r(()=>e.CONSUME(Mo),"ALT")},{ALT:r(()=>e.CONSUME(Fo),"ALT")},{ALT:r(()=>e.CONSUME(Io),"ALT")},{ALT:r(()=>e.CONSUME(vo),"ALT")}]);e.CONSUME(B),e.CONSUME(ur),e.MANY(()=>{e.CONSUME(k),e.CONSUME(a)}),e.CONSUME(P),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{value:"[constant]"}]}),e.sectionStack.pop()}}r(ck,"unitExpectWithArgumentsFn");function lk(e){return()=>{e.sectionStack.push("unitExpectWithoutArgumentsFn"),e.OR([{ALT:r(()=>e.CONSUME(Ao),"ALT")},{ALT:r(()=>e.CONSUME(Uo),"ALT")},{ALT:r(()=>e.CONSUME(go),"ALT")},{ALT:r(()=>e.CONSUME(ko),"ALT")},{ALT:r(()=>e.CONSUME(Ro),"ALT")},{ALT:r(()=>e.CONSUME(Lo),"ALT")},{ALT:r(()=>e.CONSUME(xo),"ALT")},{ALT:r(()=>e.CONSUME(Co),"ALT")},{ALT:r(()=>e.CONSUME(Oo),"ALT")}]),e.CONSUME(B),e.CONSUME(ur),e.MANY(()=>{e.CONSUME(k),e.CONSUME(a)}),e.CONSUME(P),e.sectionStack.pop()}}r(lk,"unitExpectWithoutArgumentsFn");function uk(e){let t=["min","max"],o=["description","disabled"];return()=>{e.sectionStack.push("workflowExpectToBeWithinFn");let n=e.CONSUME(wo);e.CONSUME(B),e.SUBRULE(e.expressionFn),e.CONSUME(P),e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(uk,"workflowExpectToBeWithinFn");function pk(e){return()=>{e.sectionStack.push("workflowExpectToThrowFn");let t=e.CONSUME(Bo);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"stack?":"[test-stack]","exception?":"[string]"}]}),e.sectionStack.pop()}}r(pk,"workflowExpectToThrowFn");function mk(e){let t=["value"],o=["description","disabled"];return()=>{e.sectionStack.push("workflowExpectWithArgumentsFn");let n=e.OR([{ALT:r(()=>e.CONSUME(_o),"ALT")},{ALT:r(()=>e.CONSUME(No),"ALT")},{ALT:r(()=>e.CONSUME(bo),"ALT")},{ALT:r(()=>e.CONSUME(yo),"ALT")},{ALT:r(()=>e.CONSUME(Mo),"ALT")},{ALT:r(()=>e.CONSUME(Fo),"ALT")},{ALT:r(()=>e.CONSUME(Io),"ALT")},{ALT:r(()=>e.CONSUME(vo),"ALT")}]);e.CONSUME(B),e.SUBRULE(e.expressionFn),e.CONSUME(P),e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(mk,"workflowExpectWithArgumentsFn");function fk(e){return()=>{e.sectionStack.push("workflowExpectWithoutArgumentsFn");let t=e.OR([{ALT:r(()=>e.CONSUME(Ao),"ALT")},{ALT:r(()=>e.CONSUME(Uo),"ALT")},{ALT:r(()=>e.CONSUME(go),"ALT")},{ALT:r(()=>e.CONSUME(ko),"ALT")},{ALT:r(()=>e.CONSUME(Ro),"ALT")},{ALT:r(()=>e.CONSUME(Lo),"ALT")},{ALT:r(()=>e.CONSUME(xo),"ALT")},{ALT:r(()=>e.CONSUME(Co),"ALT")},{ALT:r(()=>e.CONSUME(Oo),"ALT")}]);e.CONSUME(B),e.SUBRULE(e.expressionFn),e.CONSUME(P),e.SUBRULE(e.functionAttrReq,{ARGS:[t,[],["description","disabled"]]}),e.sectionStack.pop()}}r(fk,"workflowExpectWithoutArgumentsFn");var dk=r(e=>{e.unitExpectWithArgumentsFn=e.RULE("unitExpectWithArgumentsFn",ck(e)),e.unitExpectWithoutArgumentsFn=e.RULE("unitExpectWithoutArgumentsFn",lk(e)),e.unitExpectToThrowFn=e.RULE("unitExpectToThrowFn",sk(e)),e.unitExpectToBeWithinFn=e.RULE("unitExpectToBeWithinFn",ik(e)),e.workflowExpectWithArgumentsFn=e.RULE("workflowExpectWithArgumentsFn",mk(e)),e.workflowExpectWithoutArgumentsFn=e.RULE("workflowExpectWithoutArgumentsFn",fk(e)),e.workflowExpectToThrowFn=e.RULE("workflowExpectToThrowFn",pk(e)),e.workflowExpectToBeWithinFn=e.RULE("workflowExpectToBeWithinFn",uk(e))},"register");function Tk(e){return()=>{let t=!1;e.sectionStack.push("allMathFn"),e.OR([{ALT:r(()=>e.CONSUME(zc),"ALT")},{ALT:r(()=>e.CONSUME(Jc),"ALT")},{ALT:r(()=>e.CONSUME(Xc),"ALT")},{ALT:r(()=>e.CONSUME(Qc),"ALT")},{ALT:r(()=>e.CONSUME(Zc),"ALT")},{ALT:r(()=>{e.CONSUME($c),e.CONSUME(k),e.OR1([{ALT:r(()=>e.CONSUME(el),"ALT")},{ALT:r(()=>e.CONSUME(tl),"ALT")},{ALT:r(()=>e.CONSUME(rl),"ALT")}])},"ALT")}]),e.SUBRULE(e.assignableVariableProperty),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>{t=!0,e.SUBRULE(e.valueFieldAttribute)},"ALT")},{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")}])}),t||e.SUBRULE(e.valueFieldAttribute),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.sectionStack.pop()}}r(Tk,"allMathFn");var Ek=r(e=>{e.allMathFn=e.RULE("allMathFn",Tk(e))},"register");function hk(e){return()=>{e.sectionStack.push("math"),e.CONSUME(Hc),e.CONSUME(k),e.SUBRULE(e.allMathFn),e.sectionStack.pop()}}r(hk,"mathFn");function Sk(e){return()=>{e.sectionStack.push("middlewareCallFn"),e.CONSUME(Po),e.CONSUME(k);let t=e.CONSUME(ir);e.OR([{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}]),e.OPTION(()=>{e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{input:{vars:"[expression]",type:"[expression]"},"mock?":{"![string]":"[expression]"},"description?":"[string]","disabled?":"[boolean]"}]})}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Sk,"middlewareCallFn");function Ak(e){return()=>{let t=["value"],o=["description","disabled"];e.sectionStack.push("objectEntriesFn");let n=e.CONSUME(Tl);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(Ak,"objectEntriesFn");function Uk(e){return()=>{let t=["value"],o=["description","disabled"];e.sectionStack.push("objectKeysFn");let n=e.CONSUME(El);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(Uk,"objectKeysFn");function gk(e){return()=>{let t=["value"],o=["description","disabled"];e.sectionStack.push("objectValuesFn");let n=e.CONSUME(hl);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(gk,"objectValuesFn");var kk=r(e=>{e.objectEntriesFn=e.RULE("objectEntriesFn",Ak(e)),e.objectKeysFn=e.RULE("objectKeysFn",Uk(e)),e.objectValuesFn=e.RULE("objectValuesFn",gk(e))},"register");function Rk(e){return()=>{e.sectionStack.push("object"),e.CONSUME(dl),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.objectEntriesFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.objectKeysFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.objectValuesFn),"ALT")}]),e.sectionStack.pop()}}r(Rk,"objectFn");function Lk(e){return()=>{e.sectionStack.push("redisCountFn");let t=e.CONSUME(Cl);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Lk,"redisCountFn");function xk(e){return()=>{e.sectionStack.push("redisDecrFn");let t=e.CONSUME(Ol);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]",by:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(xk,"redisDecrFn");function Ck(e){return()=>{e.sectionStack.push("redisDelFn");let t=e.CONSUME(Nl);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.sectionStack.pop()}}r(Ck,"redisDelFn");function Ok(e){return()=>{e.sectionStack.push("redisGetFn");let t=e.CONSUME(bl);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Ok,"redisGetFn");function Nk(e){return()=>{e.sectionStack.push("redisHasFn");let t=e.CONSUME(yl);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Nk,"redisHasFn");function bk(e){return()=>{e.sectionStack.push("redisIncrFn");let t=e.CONSUME(Ml);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]",by:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(bk,"redisIncrFn");function yk(e){return()=>{e.sectionStack.push("redisKeysFn");let t=e.CONSUME(Fl);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{search:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(yk,"redisKeysFn");function Mk(e){return()=>{e.sectionStack.push("redisPopFn");let t=e.CONSUME(_l);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Mk,"redisPopFn");function Fk(e){return()=>{e.sectionStack.push("redisPushFn");let t=e.CONSUME(Il);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]",value:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Fk,"redisPushFn");function _k(e){return()=>{e.sectionStack.push("redisRangeFn");let t=e.CONSUME(vl);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]",start:"[expression]",stop:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(_k,"redisRangeFn");function Ik(e){return()=>{e.sectionStack.push("redisRateLimitFn");let t=e.CONSUME(wl);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]",max:"[expression]",ttl:"[expression]",error:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Ik,"redisRateLimitFn");function vk(e){return()=>{e.sectionStack.push("redisRemoveFn");let t=e.CONSUME(Bl);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]",value:"[expression]",count:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.sectionStack.pop()}}r(vk,"redisRemoveFn");function wk(e){return()=>{e.sectionStack.push("redisSetFn");let t=e.CONSUME(Pl);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]",data:"[expression]",ttl:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.sectionStack.pop()}}r(wk,"redisSetFn");function Bk(e){return()=>{e.sectionStack.push("redisShiftFn");let t=e.CONSUME(Gl);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Bk,"redisShiftFn");function Pk(e){return()=>{e.sectionStack.push("redisUnshiftFn");let t=e.CONSUME(Dl);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{key:"[expression]",value:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Pk,"redisUnshiftFn");var Gk=r(e=>{e.redisCountFn=e.RULE("redisCountFn",Lk(e)),e.redisDecrFn=e.RULE("redisDecrFn",xk(e)),e.redisDelFn=e.RULE("redisDelFn",Ck(e)),e.redisGetFn=e.RULE("redisGetFn",Ok(e)),e.redisHasFn=e.RULE("redisHasFn",Nk(e)),e.redisIncrFn=e.RULE("redisIncrFn",bk(e)),e.redisKeysFn=e.RULE("redisKeysFn",yk(e)),e.redisPopFn=e.RULE("redisPopFn",Mk(e)),e.redisPushFn=e.RULE("redisPushFn",Fk(e)),e.redisRangeFn=e.RULE("redisRangeFn",_k(e)),e.redisRateLimitFn=e.RULE("redisRateLimitFn",Ik(e)),e.redisRemoveFn=e.RULE("redisRemoveFn",vk(e)),e.redisSetFn=e.RULE("redisSetFn",wk(e)),e.redisShiftFn=e.RULE("redisShiftFn",Bk(e)),e.redisUnshiftFn=e.RULE("redisUnshiftFn",Pk(e))},"register");function Dk(e){return()=>{e.sectionStack.push("redis"),e.CONSUME(xl),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.redisDelFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisSetFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisGetFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisHasFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisIncrFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisDecrFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisKeysFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisPushFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisUnshiftFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisPopFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisShiftFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisRemoveFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisCountFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisRangeFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.redisRateLimitFn),"ALT")}]),e.sectionStack.pop()}}r(Dk,"redisFn");function Vk(e){return(t,o,n={},i)=>{let s=!1;n.value=[],e.CONSUME(H),e.MANY1(()=>e.CONSUME(m)),e.MANY(()=>{let c={};e.SUBRULE(e.schemaFn,{ARGS:[t,Ue(o),c,i]}),s&&e.addInvalidValueError("Expected a comma, a new line or closing bracket"),n.value.push(c),s=!0,e.OPTION(()=>(s=!1,e.CONSUME1(ae))),e.MANY2(()=>{s=!1,e.CONSUME1(m)})}),e.CONSUME(z)}}r(Vk,"schemaParseArrayFn");function Xm(e){return typeof e!="object"||!Array.isArray(e)?!1:e.length==1}r(Xm,"schemaExpectArray");function Ct(e){return!e||typeof e!="string"?!1:e.endsWith("?")||e.endsWith("*")}r(Ct,"isOptionalAttribute");function Qp(e){return!e||typeof e!="string"?!1:e.endsWith("*")}r(Qp,"isMultiAttribute");function Rr(e){return!e||typeof e!="string"?!1:e.startsWith("!")}r(Rr,"canBeDisabledAttribute");function Je(e){return!e||typeof e!="string"?!1:(Ct(e)&&(e=e.slice(0,-1)),Rr(e)&&(e=e.slice(1)),e.startsWith("[")&&e.endsWith("]"))}r(Je,"isSchemaGenericType");function TI(e){return Rr(e)&&(e=e.slice(1)),Ct(e)&&(e=e.slice(0,-1)),e}r(TI,"getSchemaConstantValue");function qk(e){return Je(e)?(Ct(e)&&(e=e.slice(0,-1)),Rr(e)&&(e=e.slice(1)),e.slice(1,-1)):null}r(qk,"getSchemaGenericTypeName");function Xe(e,t){return Je(e)?t.includes(qk(e)):!1}r(Xe,"schemaExpectOneOf");var Zp=r((e,t)=>{for(let o of t)if(Je(o))switch(qk(o)){case"string":if(typeof e=="string")return o;break;case"number":if(!isNaN(Number(e)))return o;break;case"boolean":if(e==="true"||e==="false")return o;break}else{if(TI(o)===e)return o;if(e===o)return o}return!1},"valueMatchRequirements");function jk(e){return(t,o,n={})=>{let i=null,s=e.OR({IGNORE_AMBIGUITIES:!0,DEF:[{ALT:r(()=>(i="string",e.CONSUME(E)),"ALT")},{ALT:r(()=>(i="string",e.CONSUME(Pe)),"ALT")},{ALT:r(()=>(i="string",e.CONSUME(Lt)),"ALT")},{ALT:r(()=>(i="number",e.CONSUME($)),"ALT")},{ALT:r(()=>(i="number",e.CONSUME(Ie)),"ALT")},{ALT:r(()=>(i="boolean",e.CONSUME(Re)),"ALT")},{ALT:r(()=>(i="boolean",e.CONSUME(Le)),"ALT")},{ALT:r(()=>(i="null",e.CONSUME(xt)),"ALT")}]});n.value=s,e.ACTION(()=>{Wk(i,s.image,o)||e.addExpectedValueError(t,o)})}}r(jk,"schemaParseConstantFn");function Wk(e,t,o){let n=o!==null?o.toString():o;if(b(o))return lt(o,i=>Wk(e,t,i));switch(e){case"string":return(t.startsWith('"""')||t.startsWith("'''"))&&(t=t.slice(4,-4).trim()),(t.startsWith('"')||t.startsWith("'"))&&(t=t.slice(1,-1)),t===n;case"number":case"boolean":return t===n;case"null":return n===null;default:throw new Error(`schemaParseConstantFn called with non-constant attribute: ${o}`)}}r(Wk,"matchValueToSchema");function Qm(e){return Je(e)?!1:typeof e=="string"||typeof e=="number"||typeof e=="boolean"||e===null}r(Qm,"schemaExpectConstant");function Yk(e){return(t,o,n={})=>{let[i,s]=um(o,Je);e.ACTION(()=>{if(s.length>0&&i.length>0)throw new Error("schemaParseEnumFn does not support mixing constant and immutable types in the same enum, received: "+JSON.stringify(o))}),e.OR({IGNORE_AMBIGUITIES:!0,DEF:[{GATE:r(()=>s.length>0,"GATE"),ALT:r(()=>e.SUBRULE(e.schemaParseConstantFn,{ARGS:[t,s,n]}),"ALT")},{GATE:r(()=>i.length>0,"GATE"),ALT:r(()=>e.SUBRULE(e.schemaParseImmutableFn,{ARGS:[t,i,n]}),"ALT")}]})}}r(Yk,"schemaParseEnumFn");function Zm(e){return!!(b(e)&&e.length>1)}r(Zm,"schemaExpectEnum");function Kk(e){return(t,o,n={},i)=>{let s=!1,c=null,l=W(o),p=[...l],f=[];if(e.ACTION(()=>{if(l.length>1&&lt(l,d=>Je(d)))throw new Error("schemaParseObjectFn supports only one generic type when multiple keys are defined")}),e.CONSUME(A),e.MANY(()=>{e.MANY1(()=>{s=!1,e.CONSUME(m)}),s&&e.addInvalidValueError(c,"Expected a comma, a new line or closing bracket");let d=e.OPTION1(()=>e.CONSUME(ye)),T,S=e.OR([{ALT:r(()=>{T=e.CONSUME(a);let L=[T];return e.MANY3(()=>{L.push(e.CONSUME(k)),L.push(e.CONSUME1(a))}),L.map(O=>O.image).join(".")},"ALT")},{ALT:r(()=>e.CONSUME(E).image.slice(1,-1),"ALT")}]),g=Zp(S,l);g?d&&!Rr(g)&&e.addInvalidValueError(d,`The key '${S}' cannot be disabled`):e.addInvalidValueError(T,`The key '${S}' is not valid in this context`),f.includes(S)&&!Qp(g)?e.addInvalidValueError(T,`Duplicate key '${S}' found`):(f.push(S),n[S]={key:T,value:null}),p.splice(p.indexOf(g),1),e.CONSUME(Ee);let x=Tr(o,g,null);e.SUBRULE(e.schemaFn,{ARGS:[T,x,n[S],i]}),s=!0,e.OPTION(()=>{s=!1,e.CONSUME1(ae)}),e.MANY2(()=>{s=!1,e.CONSUME1(m)})}),e.CONSUME(U),p.length){let d=p.filter(T=>!Ct(T));d.length>1?e.addMissingError(c||t,`{} is missing the following required entries: ${d.join(", ")}`):d.length===1&&(Je(d[0])?e.addMissingError(c||t,"{} requires a least one entry"):e.addMissingError(c||t,`{} is missing required key '${d[0]}'`))}return{foo:"foo-bar"}}}r(Kk,"schemaParseObjectFn");function $m(e){return la(e)}r($m,"schemaExpectObject");var EI=r(e=>Xe(e,["string","number","boolean","timestamp","null"])?b(e)?`Expected one of the following types: ${e.join(", ")}`:`Expected a ${e}`:Qm(e)?b(e)?`Expected one of the following constants: ${e.join(", ")}`:`Expected a ${e}`:Xm(e)?`Expected an array of ${e[0]}`:$m(e)?"Expected an object {}":Zm(e)?`Expected one of the following enum values: ${e.join(", ")}`:Xe(e,["mock"])?"Expected a mock":Xe(e,["expression"])?"Expected an expression":Xe(e,["query"])?"Expected a database query expression":Xe(e,["constant"])?"Expected a value expression (no variables allowed)":Xe(e,["stack"])?"Expected a stack definition":`Invalid schema: received ${JSON.stringify(e)}`,"getErrorMessageForSchema");function Hk(e){return(t,o,n={},i)=>{e.sectionStack.push("schema"),e.OR({IGNORE_AMBIGUITIES:!0,ERR_MSG:EI(o),DEF:[{GATE:r(()=>Xe(o,["string","number","boolean","timestamp"],n),"GATE"),ALT:r(()=>(e.SUBRULE(e.schemaParseImmutableFn,{ARGS:[t,o,n]}),!0),"ALT")},{GATE:r(()=>Qm(o),"GATE"),ALT:r(()=>(e.SUBRULE(e.schemaParseConstantFn,{ARGS:[t,o,n]}),!0),"ALT")},{GATE:r(()=>Xm(o),"GATE"),ALT:r(()=>(e.SUBRULE(e.schemaParseArrayFn,{ARGS:[t,o,n]}),!0),"ALT")},{GATE:r(()=>$m(o),"GATE"),ALT:r(()=>(e.SUBRULE(e.schemaParseObjectFn,{ARGS:[t,o,n]}),!0),"ALT")},{GATE:r(()=>Zm(o),"GATE"),ALT:r(()=>(e.SUBRULE(e.schemaParseEnumFn,{ARGS:[t,o,n]}),!0),"ALT")},{GATE:r(()=>Xe(o,["expression","constant","query","stack","test-stack"]),"GATE"),ALT:r(()=>{e.OR1({IGNORE_AMBIGUITIES:!0,DEF:[{GATE:r(()=>Xe(o,["stack","test-stack"]),"GATE"),ALT:r(()=>{let s=Xe(o,["test-stack"]);e.SUBRULE(e.nakedStackFn,{ARGS:[{allowExpectStatements:s,allowCallStatements:s}]})},"ALT")},{GATE:r(()=>Xe(o,["expression","query","constant"]),"GATE"),ALT:r(()=>{let s=Xe(o,["query"]),c=Xe(o,["constant"]);e.SUBRULE(e.expressionFn,{ARGS:[t,i||{allowQueryExpression:s,allowVariable:!c,allowExpression:!c,allowComparison:!c}]})},"ALT")}]})},"ALT")}]}),e.sectionStack.pop()}}r(Hk,"schemaFn");function zk(e){return e.requireRules(hI),(t,o,n={})=>{let i=W(o).every(s=>Ct(s));e.OR([{GATE:r(()=>i,"GATE"),ALT:r(()=>{e.OPTION(()=>e.SUBRULE(e._schemaParseAttributeFn,{ARGS:[t,o,n]}))},"ALT")},{GATE:r(()=>!i,"GATE"),ALT:r(()=>e.SUBRULE1(e._schemaParseAttributeFn,{ARGS:[t,o,n]}),"ALT")}])}}r(zk,"schemaParseAttributeFn");function hI(e){return(t,o,n={})=>{let i=!1,s=null,c=W(o),l=[...c],p=[];if(e.ACTION(()=>{if(c.length>1&&lt(c,f=>Je(f)))throw new Error("schemaParseAttributeFn supports only one generic type when multiple keys are defined")}),e.CONSUME(A),e.MANY(()=>{e.MANY1(()=>{i=!1,e.CONSUME(m)}),i&&e.addInvalidValueError(s,"Expected a comma, a new line or closing bracket");let f=e.OPTION1(()=>e.CONSUME(ye)),d,T=e.OR([{ALT:r(()=>(d=e.CONSUME1(a),d.image),"ALT")},{ALT:r(()=>e.CONSUME1(E).image.slice(1,-1),"ALT")}]),S=Zp(T,c);S?f&&!Rr(S)&&e.addInvalidValueError(f,`The argument '${T}' cannot be disabled`):e.addInvalidValueError(d,`The argument '${T}' is not valid in this context`),p.includes(T)&&!Qp(S)?e.addInvalidValueError(d,`Duplicate argument '${T}' found`):(p.push(T),n[T]={key:d,value:null}),l.splice(l.indexOf(S),1);let g=Tr(o,S,null),x=["[stack]","[test-stack]"].includes(g);e.OR1([{GATE:r(()=>!x,"GATE"),ALT:r(()=>e.CONSUME(h),"ALT")},{GATE:r(()=>x,"GATE"),ALT:r(()=>!1,"ALT")}]),e.SUBRULE(e.schemaFn,{ARGS:[d,g,n[T]]}),i=!0,e.MANY2(()=>{i=!1,e.CONSUME1(m)}),e.OPTION(()=>{i=!1,e.CONSUME1(ae)})}),e.CONSUME(U),l.length){let f=l.filter(d=>!Ct(d));f.length>1?e.addInvalidValueError(s||t,`The following required arguments are missing: ${f.join(", ")}`):f.length===1&&e.addInvalidValueError(s||t,`Missing required argument '${f[0]}'`)}}}r(hI,"_schemaParseAttributeFn");function Xk(e){return(t,o,n={})=>{let i,s=e.OR({DEF:[{ALT:r(()=>(i="string",e.CONSUME(E)),"ALT")},{ALT:r(()=>(i="string",e.CONSUME(Lt)),"ALT")},{ALT:r(()=>(i="string",e.CONSUME(Pe)),"ALT")},{ALT:r(()=>(i="number",e.CONSUME(Ie)),"ALT")},{ALT:r(()=>(i="number",e.CONSUME($)),"ALT")},{ALT:r(()=>{i="boolean",e.SUBRULE(e.booleanValue)},"ALT")},{ALT:r(()=>(i="timestamp",e.CONSUME(zs)),"ALT")},{ALT:r(()=>(i="null",e.CONSUME(xt)),"ALT")},{ALT:r(()=>!1,"ALT")}]});e.OPTION({GATE:r(()=>!s,"GATE"),DEF:r(()=>{e.addExpectedValueTypeError(i,"invalid immutable value"),e.CONSUME(a)},"DEF")}),n.value=s,e.ACTION(()=>{let c=b(o),l=c?o.map(Jk):Jk(o);if(c){if(!be(l))throw new Error(`schemaParseImmutableFn called with invalid enum attribute: ${o}`);l.includes(i)||e.addExpectedValueTypeError(t,l.join(" or "))}else{if(!l)throw new Error(`schemaParseImmutableFn called with invalid attribute: ${o}`);i!==l&&e.addExpectedValueTypeError(t,l)}})}}r(Xk,"schemaParseImmutableFn");function Jk(e){let t=["string","number","boolean","timestamp","null"];if(Je(e)){let o=Ct(e)?e.slice(1,-2):e.slice(1,-1);if(t.includes(o))return o}return null}r(Jk,"getImmutableAttributeType");var Qk=r(e=>{e.schemaFn=e.RULE("schemaFn",Hk(e)),e.schemaParseImmutableFn=e.RULE("schemaParseImmutableFn",Xk(e)),e.schemaParseEnumFn=e.RULE("schemaParseEnumFn",Yk(e)),e.schemaParseConstantFn=e.RULE("schemaParseConstantFn",jk(e)),e.schemaParseArrayFn=e.RULE("schemaParseArrayFn",Vk(e)),e.schemaParseObjectFn=e.RULE("schemaParseObjectFn",Kk(e)),e.schemaParseAttributeFn=e.RULE("schemaParseAttributeFn",zk(e))},"register");function Zk(e){return()=>{e.sectionStack.push("securityCheckPasswordFn");let t=e.CONSUME(Yl);e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(Zk,"securityCheckPasswordFn");function $k(e){return()=>{e.sectionStack.push("securityCreateAuthTokenFn");let t=e.CONSUME(zl);e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r($k,"securityCreateAuthTokenFn");function eR(e){let t=["curve","format"],o=["description","disabled"];return()=>{e.sectionStack.push("securityCreateCurveKeyFn");let n=e.CONSUME(Jl);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(eR,"securityCreateCurveKeyFn");function tR(e){let t=["character_count","require_lowercase","require_uppercase","require_digit","require_symbol","symbol_whitelist"],o=["description","disabled"];return()=>{e.sectionStack.push("securityCreatePasswordFn");let n=e.CONSUME(Kl);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(tR,"securityCreatePasswordFn");function rR(e){let t=["bits","format"],o=["description","disabled"];return()=>{e.sectionStack.push("securityCreateRsaKeyFn");let n=e.CONSUME(Xl);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(rR,"securityCreateRsaKeyFn");function oR(e){return()=>{e.sectionStack.push("securityCreateSecretKeyFn");let t=e.CONSUME(Ql);e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(oR,"securityCreateSecretKeyFn");function nR(e){return()=>{e.sectionStack.push("securityCreateUuidFn");let t=e.CONSUME(Hl);e.OPTION(()=>{e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U)}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(nR,"securityCreateUuidFn");function aR(e){return()=>{e.sectionStack.push("securityDecryptFn");let t=e.CONSUME(Zl);e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(aR,"securityDecryptFn");function iR(e){return()=>{e.sectionStack.push("securityEncryptFn");let t=e.CONSUME($l);e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(iR,"securityEncryptFn");function sR(e){return()=>{e.sectionStack.push("securityJweDecodeFn");let t=e.CONSUME(eu);e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(sR,"securityJweDecodeFn");function cR(e){return()=>{e.sectionStack.push("securityJweEncodeFn");let t=e.CONSUME(tu);e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(cR,"securityJweEncodeFn");function lR(e){return()=>{e.sectionStack.push("securityJwsDecodeFn");let t=e.CONSUME(ru);e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(lR,"securityJwsDecodeFn");function uR(e){return()=>{e.sectionStack.push("securityJwsEncodeFn");let t=e.CONSUME(ou);e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(uR,"securityJwsEncodeFn");function pR(e){return()=>{e.sectionStack.push("securityRandomBytesFn");let t=e.CONSUME(nu);e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(pR,"securityRandomBytesFn");function mR(e){return()=>{e.sectionStack.push("securityRandomNumberFn");let t=e.CONSUME(au);e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.CONSUME1(a),e.CONSUME(h),e.SUBRULE(e.expressionFn)}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(mR,"securityRandomNumberFn");var fR=r(e=>{e.securityCheckPasswordFn=e.RULE("securityCheckPasswordFn",Zk(e)),e.securityCreateAuthTokenFn=e.RULE("securityCreateAuthTokenFn",$k(e)),e.securityCreateCurveKeyFn=e.RULE("securityCreateCurveKeyFn",eR(e)),e.securityCreatePasswordFn=e.RULE("securityCreatePasswordFn",tR(e)),e.securityCreateRsaKeyFn=e.RULE("securityCreateRsaKeyFn",rR(e)),e.securityCreateSecretKeyFn=e.RULE("securityCreateSecretKeyFn",oR(e)),e.securityCreateUuidFn=e.RULE("securityCreateUuidFn",nR(e)),e.securityDecryptFn=e.RULE("securityDecryptFn",aR(e)),e.securityEncryptFn=e.RULE("securityEncryptFn",iR(e)),e.securityJweDecodeFn=e.RULE("securityJweDecodeFn",sR(e)),e.securityJweEncodeFn=e.RULE("securityJweEncodeFn",cR(e)),e.securityJwsDecodeFn=e.RULE("securityJwsDecodeFn",lR(e)),e.securityJwsEncodeFn=e.RULE("securityJwsEncodeFn",uR(e)),e.securityRandomBytesFn=e.RULE("securityRandomBytesFn",pR(e)),e.securityRandomNumberFn=e.RULE("securityRandomNumberFn",mR(e))},"register");function dR(e){return()=>{e.sectionStack.push("security"),e.CONSUME(Wl),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.securityCheckPasswordFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityCreateAuthTokenFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityCreateCurveKeyFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityCreatePasswordFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityCreateRsaKeyFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityCreateSecretKeyFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityCreateUuidFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityDecryptFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityEncryptFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityJweDecodeFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityJweEncodeFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityJwsDecodeFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityJwsEncodeFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityRandomBytesFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.securityRandomNumberFn),"ALT")}]),e.sectionStack.pop()}}r(dR,"securityFn");function TR(e){return()=>{e.sectionStack.push("storageCreateAttachmentFn");let t=e.CONSUME(cu);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{value:"[expression]",access:["public","private"],filename:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(TR,"storageCreateAttachmentFn");function ER(e){return()=>{e.sectionStack.push("storageCreateAudioFn");let t=e.CONSUME(pu);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{value:"[expression]","access?":["public","private"],"filename?":"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(ER,"storageCreateAudioFn");function hR(e){return()=>{let t=["filename","filedata"],o=["description","disabled"];e.sectionStack.push("storageCreateFileResourceFn");let n=e.CONSUME(uu);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(hR,"storageCreateFileResourceFn");function SR(e){return()=>{e.sectionStack.push("storageCreateImageFn");let t=e.CONSUME(su);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{value:"[expression]",access:["public","private"],filename:"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(SR,"storageCreateImageFn");function AR(e){return()=>{e.sectionStack.push("storageCreateVideoFn");let t=e.CONSUME(mu);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{value:"[expression]","access?":["public","private"],"filename?":"[expression]","description?":"[string]","disabled?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(AR,"storageCreateVideoFn");function UR(e){return()=>{let t=["pathname"],o=["description","disabled"];e.sectionStack.push("storageDeleteFileFn");let n=e.CONSUME(fu);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(UR,"storageDeleteFileFn");function gR(e){return()=>{let t=["value"],o=["description","disabled"];e.sectionStack.push("storageReadFileResourceFn");let n=e.CONSUME(lu);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(gR,"storageReadFileResourceFn");function kR(e){return()=>{let t=["pathname","ttl"],o=["description","disabled"];e.sectionStack.push("storageSignPrivateUrlFn");let n=e.CONSUME(du);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(kR,"storageSignPrivateUrlFn");var RR=r(e=>{e.storageCreateAttachmentFn=e.RULE("storageCreateAttachmentFn",TR(e)),e.storageCreateFileResourceFn=e.RULE("storageCreateFileResourceFn",hR(e)),e.storageCreateImageFn=e.RULE("storageCreateImageFn",SR(e)),e.storageDeleteFileFn=e.RULE("storageDeleteFileFn",UR(e)),e.storageReadFileResourceFn=e.RULE("storageReadFileResourceFn",gR(e)),e.storageSignPrivateUrlFn=e.RULE("storageSignPrivateUrlFn",kR(e)),e.storageCreateAudioFn=e.RULE("storageCreateAudioFn",ER(e)),e.storageCreateVideoFn=e.RULE("storageCreateVideoFn",AR(e))},"register");function LR(e){return()=>{e.sectionStack.push("storage"),e.CONSUME(iu),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.storageCreateAttachmentFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.storageCreateFileResourceFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.storageCreateImageFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.storageDeleteFileFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.storageReadFileResourceFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.storageSignPrivateUrlFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.storageCreateAudioFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.storageCreateVideoFn),"ALT")}]),e.sectionStack.pop()}}r(LR,"storageFn");function xR(e){let t=["value","separator","enclosure","escape_char"],o=["description","disabled"];return()=>{e.sectionStack.push("streamFromCsv");let n=e.CONSUME(Eu);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(xR,"streamFromCsvFn");function CR(e){let t=["value"],o=["description","disabled"];return()=>{e.sectionStack.push("streamFromJsonl");let n=e.CONSUME(hu);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(CR,"streamFromJsonlFn");function OR(e){return()=>{e.sectionStack.push("streamFromRequest");let t=e.CONSUME(Su);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{url:"[expression]",method:"[expression]","params?":"[expression]","headers?":"[expression]","timeout?":"[expression]","follow_location?":"[expression]","description?":"[string]","disabled?":"[boolean]","verify_host?":"[expression]","verify_peer?":"[expression]","ca_certificate?":"[expression]","certificate?":"[expression]","certificate_pass?":"[expression]","private_key?":"[expression]","private_key_pass?":"[expression]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(OR,"streamFromRequestFn");var NR=r(e=>{e.streamFromCsvFn=e.RULE("streamFromCsvFn",xR(e)),e.streamFromJsonlFn=e.RULE("streamFromJsonlFn",CR(e)),e.streamFromRequestFn=e.RULE("streamFromRequestFn",OR(e))},"register");function bR(e){return()=>{e.sectionStack.push("stream"),e.CONSUME(Tu),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.streamFromCsvFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.streamFromJsonlFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.streamFromRequestFn),"ALT")}]),e.sectionStack.pop()}}r(bR,"streamFn");function yR(e){return()=>{let t=["value"],o=["description","disabled"];e.sectionStack.push("allTextWithoutReturnValueFn");let n=e.OR([{ALT:r(()=>e.CONSUME(Nu),"ALT")},{ALT:r(()=>e.CONSUME(Iu),"ALT")},{ALT:r(()=>e.CONSUME(vu),"ALT")},{ALT:r(()=>e.CONSUME(wu),"ALT")},{ALT:r(()=>e.CONSUME(Pu),"ALT")}]);e.SUBRULE(e.assignableVariableProperty),e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(yR,"allTextWithoutReturnValueFn");function MR(e){return()=>{let t=["value"],o=["description","disabled"];e.sectionStack.push("allTextWithReturnValueFn");let n=e.OR([{ALT:r(()=>e.CONSUME(bu),"ALT")},{ALT:r(()=>e.CONSUME(yu),"ALT")},{ALT:r(()=>e.CONSUME(Mu),"ALT")},{ALT:r(()=>e.CONSUME(Fu),"ALT")},{ALT:r(()=>e.CONSUME(_u),"ALT")},{ALT:r(()=>e.CONSUME(Bu),"ALT")}]);e.SUBRULE(e.assignableVariableProperty),e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(MR,"allTextWithReturnValueFn");var FR=r(e=>{e.allTextWithoutReturnValueFn=e.RULE("allTextWithoutReturnValueFn",yR(e)),e.allTextWithReturnValueFn=e.RULE("allTextWithReturnValueFn",MR(e))},"register");function _R(e){return()=>{e.sectionStack.push("text"),e.CONSUME(uo),e.CONSUME(k);let t=e.LA(1).image,o=["contains","ends_with","icontains","iends_with","istarts_with","starts_with"],n=["append","ltrim","prepend","rtrim","trim"];o.includes(t)?e.SUBRULE(e.allTextWithReturnValueFn):n.includes(t)&&e.SUBRULE(e.allTextWithoutReturnValueFn),e.sectionStack.pop()}}r(_R,"textFn");function IR(e){return()=>{e.sectionStack.push("toolCallFn"),e.CONSUME(cr),e.CONSUME(k);let t=e.CONSUME(ir);e.OR([{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME1(E),"ALT")}]),e.OPTION(()=>{e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"input?":{"[string]":"[expression]"},"mock?":{"![string]":"[expression]"},"description?":"[string]","disabled?":"[boolean]"}]})}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(IR,"toolCallFn");function vR(e){return()=>{e.sectionStack.push("unitExpect"),e.CONSUME(So),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.unitExpectWithArgumentsFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.unitExpectWithoutArgumentsFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.unitExpectToThrowFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.unitExpectToBeWithinFn),"ALT")}]),e.sectionStack.pop()}}r(vR,"unitExpectFn");function wR(e){return()=>{let t=["latitude_1","longitude_1","latitude_2","longitude_2"],o=["description","disabled"];e.sectionStack.push("utilGeoDistanceFn");let n=e.CONSUME(Vu);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(wR,"utilGeoDistanceFn");function BR(e){let t=[],o=["description","disabled"];return()=>{e.sectionStack.push("utilGetAllInputFn");let n=e.CONSUME(qu);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(BR,"utilGetAllInputFn");function PR(e){return()=>{let t=[],o=["description","disabled"];e.sectionStack.push("utilGetEnvFn");let n=e.CONSUME(Wu);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(PR,"utilGetEnvFn");function GR(e){return()=>{e.sectionStack.push("utilGetRawInputFn");let t=e.CONSUME(Yu);e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"encoding?":["json","yaml","x-www-form-urlencoded",""],"description?":"[string]","disabled?":"[boolean]","exclude_middleware?":"[boolean]"}]}),e.SUBRULE(e.asVariable,{ARGS:[t]}),e.sectionStack.pop()}}r(GR,"utilGetRawInputFn");function DR(e){return()=>{let t=[],o=["description","disabled"];e.sectionStack.push("utilGetVarsFn");let n=e.CONSUME(Ku);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(DR,"utilGetVarsFn");function VR(e){return()=>{let t=["value"],o=["description","disabled"];e.sectionStack.push("utilIpLookupFn");let n=e.CONSUME(Hu);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(VR,"utilIpLookupFn");function qR(e){return()=>{let t=!1;e.sectionStack.push("utilPostProcessFn"),e.CONSUME(zu),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")},{ALT:r(()=>{t=!0,e.SUBRULE(e.stackClause)},"ALT")}])}),t||e.SUBRULE(e.stackClause),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.sectionStack.pop()}}r(qR,"utilPostProcessFn");function jR(e){return()=>{e.sectionStack.push("utilSendEmailFn");let t=e.CONSUME(Du),o={};e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"description?":"[string]","disabled?":"[boolean]","service_provider?":["resend","xano"],"api_key?":"[expression]","subject?":"[expression]","message?":"[expression]","to?":"[expression]","bcc?":"[expression]","cc?":"[expression]","from?":"[expression]","reply_to?":"[expression]","scheduled_at?":"[expression]","mock?":{"![string]":"[expression]"}},o]}),e.SUBRULE(e.asVariable,{ARGS:[t]});let n={xano:["description","disabled","service_provider","subject","message","mock"],resend:["description","disabled","service_provider","api_key","subject","message","to","bcc","cc","from","reply_to","scheduled_at","mock"]},i={xano:["subject","message"],resend:["api_key","subject","message","from","to"]};e.ACTION(()=>{let s=j(o.service_provider?.value),c=i[s]||[];for(let d of c)Object.prototype.hasOwnProperty.call(o,d)||e.addMissingError(t,`Missing required field '${d}' for service_provider '${s}'`);let l=n[s]||[],p=new Set([...n.xano,...n.resend]),f=[];for(let d in o){let T=j(o[d].key);f.push(T),p.has(T)?l.includes(T)||e.addWarning(`${T} is not used with service_provider '${s}'`,o[d].key):e.addIllegalAttributeError(o[d].key,`Field '${T}' is not allowed in send_email`)}}),e.sectionStack.pop()}}r(jR,"utilSendEmailFn");function WR(e){return()=>{let t=["value","duplicates"],o=["description","disabled"];e.sectionStack.push("utilSetHeaderFn");let n=e.CONSUME(Xu);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(WR,"utilSetHeaderFn");function YR(e){return()=>{let t=["value"],o=["description","disabled"];e.sectionStack.push("utilSleepFn");let n=e.CONSUME(Qu);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(YR,"utilSleepFn");function KR(e){let t=["value"],o=["description","disabled"];return()=>{e.sectionStack.push("utilTemplateFn");let n=e.CONSUME(ju);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(KR,"utilTemplateFn");var HR=r(e=>{e.utilGeoDistanceFn=e.RULE("utilGeoDistanceFn",wR(e)),e.utilGetAllInputFn=e.RULE("utilGetAllInputFn",BR(e)),e.utilGetEnvFn=e.RULE("utilGetEnvFn",PR(e)),e.utilGetRawInputFn=e.RULE("utilGetRawInputFn",GR(e)),e.utilGetVarsFn=e.RULE("utilGetVarsFn",DR(e)),e.utilIpLookupFn=e.RULE("utilIpLookupFn",VR(e)),e.utilPostProcessFn=e.RULE("utilPostProcessFn",qR(e)),e.utilSetHeaderFn=e.RULE("utilSetHeaderFn",WR(e)),e.utilSleepFn=e.RULE("utilSleepFn",YR(e)),e.utilTemplateFn=e.RULE("utilTemplateFn",KR(e)),e.utilSendEmailFn=e.RULE("utilSendEmailFn",jR(e))},"register");function zR(e){return()=>{e.sectionStack.push("util"),e.CONSUME(Gu),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.utilIpLookupFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilGetEnvFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilSleepFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilGetAllInputFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilGetRawInputFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilGetVarsFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilGeoDistanceFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilPostProcessFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilSetHeaderFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilTemplateFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.utilSendEmailFn),"ALT")}]),e.sectionStack.pop()}}r(zR,"utilFn");function JR(e){return()=>{e.sectionStack.push("var");let t=e.CONSUME(Zu);e.OR([{ALT:r(()=>{let o=e.CONSUME(V);o.image&&e.addVariable(o.image,"unknown")},"ALT")},{ALT:r(()=>{e.CONSUME(k),e.CONSUME($u),e.SUBRULE(e.assignableVariableProperty)},"ALT")}]),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{value:"[expression]","description?":"[string]","disabled?":"[boolean]","mock?":{"![string]":"[expression]"}}]}),e.sectionStack.pop()}}r(JR,"varFn");function XR(e){return()=>{e.sectionStack.push("webflow"),e.CONSUME(bi),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.webflowRequestFn),"ALT")}]),e.sectionStack.pop()}}r(XR,"webflowFn");function QR(e){return()=>{e.sectionStack.push("workflowExpect"),e.CONSUME(So),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.workflowExpectWithArgumentsFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.workflowExpectWithoutArgumentsFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.workflowExpectToThrowFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.workflowExpectToBeWithinFn),"ALT")}]),e.sectionStack.pop()}}r(QR,"workflowExpectFn");function ZR(e){return()=>{let t=["file","zip"],o=["description","disabled","password","password_encryption","filename"];e.sectionStack.push("zipAddToArchiveFn");let n=e.CONSUME(xp);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(ZR,"zipAddToArchiveFn");function $R(e){return()=>{let t=["filename"],o=["description","disabled","password","password_encryption"];e.sectionStack.push("zipCreateArchiveFn");let n=e.CONSUME(Cp);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r($R,"zipCreateArchiveFn");function eL(e){return()=>{let t=["filename","zip"],o=["description","disabled","password"];e.sectionStack.push("zipDeleteFromArchiveFn");let n=e.CONSUME(Op);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.sectionStack.pop()}}r(eL,"zipDeleteFromArchiveFn");function tL(e){return()=>{let t=["zip"],o=["description","disabled","password"];e.sectionStack.push("zipExtractFn");let n=e.CONSUME(Np);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(tL,"zipExtractFn");function rL(e){return()=>{let t=["zip"],o=["description","disabled","password"];e.sectionStack.push("zipViewContentsFn");let n=e.CONSUME(bp);e.SUBRULE(e.functionAttrReq,{ARGS:[n,t,o]}),e.SUBRULE(e.asVariable,{ARGS:[n]}),e.sectionStack.pop()}}r(rL,"zipViewContentsFn");var oL=r(e=>{e.zipAddToArchiveFn=e.RULE("zipAddToArchiveFn",ZR(e)),e.zipCreateArchiveFn=e.RULE("zipCreateArchiveFn",$R(e)),e.zipDeleteFromArchiveFn=e.RULE("zipDeleteFromArchiveFn",eL(e)),e.zipExtractFn=e.RULE("zipExtractFn",tL(e)),e.zipViewContentsFn=e.RULE("zipViewContentsFn",rL(e))},"register");function nL(e){return()=>{e.sectionStack.push("zip"),e.CONSUME(Lp),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.zipCreateArchiveFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.zipAddToArchiveFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.zipDeleteFromArchiveFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.zipExtractFn),"ALT")},{ALT:r(()=>e.SUBRULE(e.zipViewContentsFn),"ALT")}]),e.sectionStack.pop()}}r(nL,"zipFn");var aL=r(e=>{e.addonCallFn=e.RULE("addonCallFn",cU(e)),e.actionCallFn=e.RULE("actionCallFn",sU(e)),e.middlewareCallFn=e.RULE("middlewareCallFn",Sk(e)),e.aiFn=e.RULE("aiFn",dU(e)),e.apiFn=e.RULE("apiFn",kU(e)),e.webflowFn=e.RULE("webflowFn",XR(e)),e.arrayFn=e.RULE("arrayFn",YU(e)),e.cloudFn=e.RULE("cloudFn",pg(e)),e.controlFn=e.RULE("controlFn",mg(e)),e.dbFn=e.RULE("dbFn",tk(e)),e.debugFn=e.RULE("debugFn",ak(e)),e.mathFn=e.RULE("mathFn",hk(e)),e.objectFn=e.RULE("objectFn",Rk(e)),e.redisFn=e.RULE("redisFn",Dk(e)),e.securityFn=e.RULE("securityFn",dR(e)),e.storageFn=e.RULE("storageFn",LR(e)),e.streamFn=e.RULE("streamFn",bR(e)),e.textFn=e.RULE("textFn",_R(e)),e.utilFn=e.RULE("utilFn",zR(e)),e.varFn=e.RULE("varFn",JR(e)),e.zipFn=e.RULE("zipFn",nL(e)),e.unitExpectFn=e.RULE("unitExpectFn",vR(e)),e.workflowExpectFn=e.RULE("workflowExpectFn",QR(e)),e.toolCallFn=e.RULE("toolCallFn",IR(e)),fU(e),Qk(e),gU(e),WU(e),ug(e),Fg(e),ek(e),nk(e),Ek(e),kk(e),Gk(e),fR(e),RR(e),NR(e),FR(e),HR(e),oL(e),dk(e)},"register");function iL(e){return(t,o,n,i={})=>{e.CONSUME(H),e.OPTION(()=>{e.OR([{ALT:r(()=>{e.CONSUME(m),e.AT_LEAST_ONE(()=>{e.SUBRULE(e.objectAttrReq,{ARGS:[t,o,n,i]}),e.OPTION1(()=>e.CONSUME(ae)),e.AT_LEAST_ONE1(()=>e.CONSUME3(m))})},"ALT")},{ALT:r(()=>{e.AT_LEAST_ONE_SEP({SEP:ae,DEF:r(()=>{e.SUBRULE1(e.objectAttrReq,{ARGS:[t,o,n,i]})},"DEF")}),e.MANY(()=>e.CONSUME2(m))},"ALT")}])}),e.CONSUME(z)}}r(iL,"arrayOfObjectAttrReq");function sL(e){return()=>{e.CONSUME(H),e.OPTION(()=>{e.OR([{ALT:r(()=>{e.CONSUME(m),e.AT_LEAST_ONE(()=>{e.CONSUME(E),e.OPTION1(()=>e.CONSUME(ae)),e.AT_LEAST_ONE1(()=>e.CONSUME3(m))})},"ALT")},{ALT:r(()=>{e.AT_LEAST_ONE_SEP({SEP:ae,DEF:r(()=>{e.CONSUME1(E)},"DEF")}),e.MANY(()=>e.CONSUME2(m))},"ALT")}])}),e.CONSUME(z)}}r(sL,"arrayOfStringLiterals");function cL(e){return(t={})=>{let o=!1,n=e.CONSUME(H);e.MANY(()=>{e.MANY1(()=>{o=!1,e.CONSUME(m)}),o&&e.addMissingError(ae,"Expected ',' between array values"),e.SUBRULE(e.expressionFn,{ARGS:[n,{...t,allowObject:!0,allowArray:!0}]}),o=!0,e.OPTION1(()=>{o=!1,e.CONSUME1(ae)}),e.MANY2(()=>{o=!1,e.CONSUME1(m)})}),e.CONSUME(z)}}r(cL,"arrayWithValues");function lL(e){return()=>{e.OR([{ALT:r(()=>{e.CONSUME(V)},"ALT")},{ALT:r(()=>{e.CONSUME(pr),e.CONSUME(k),e.CONSUME(a)},"ALT")}])}}r(lL,"assignableVariableAs");function uL(e){return()=>{let t="";e.OR({DEF:[{ALT:r(()=>{t=e.CONSUME(V).image},"ALT")},{ALT:r(()=>{e.CONSUME(pr),e.CONSUME(k),t=`$${e.CONSUME(a).image}`},"ALT")}],ERR_MSG:"expecting variable (e.g. $variable or $var.variable)"}),e.SUBRULE(e.chainedIdentifier),e.MANY({GATE:r(()=>e.LA(1).tokenType===Me||e.LA(1).tokenType===m&&e.LA(2).tokenType===Me,"GATE"),DEF:r(()=>{e.SUBRULE(e.filterFn)},"DEF")}),t&&e.addVariable(t,"unknown")}}r(uL,"assignableVariableProperty");function pL(e){return t=>{let o=!1;e.OPTION(()=>{o=!0,e.CONSUME(at),e.SUBRULE(e.assignableVariableProperty)}),!o&&t&&e.addWarning("`as <variable>` is missing",t)}}r(pL,"asVariable");function mL(e){return()=>{e.OR([{ALT:r(()=>{e.CONSUME(Re)},"ALT")},{ALT:r(()=>{e.CONSUME(Le)},"ALT")}])}}r(mL,"booleanValue");function fL(e){return()=>{e.CONSUME(H),e.SUBRULE(e.expressionFn),e.CONSUME(z)}}r(fL,"bracketAccessor");function dL(e){return()=>{e.OR([{ALT:r(()=>{e.CONSUME(H),e.SUBRULE(e.expressionFn),e.CONSUME(z)},"ALT")},{ALT:r(()=>{e.CONSUME(k),e.OR1([{ALT:r(()=>e.CONSUME($),"ALT")},{ALT:r(()=>{e.CONSUME1(H),e.SUBRULE1(e.expressionFn),e.CONSUME1(z)},"ALT")}])},"ALT")}])}}r(dL,"bracketArrayAccessor");function TL(e){return()=>{e.OR(mi.map(t=>({ALT:r(()=>e.CONSUME(t),"ALT")}))),e.CONSUME(E)}}r(TL,"castedValue");function EL(e){return()=>{e.MANY(()=>e.SUBRULE(e.singleChainedIdentifier))}}r(EL,"chainedIdentifier");function hL(e){return()=>{e.OR([{ALT:r(()=>{e.CONSUME(k),e.OR1([{ALT:r(()=>{let t=e.CONSUME(V);e.addWarning(`Using \`$\` prefixed properties '${t.image}' is discouraged.`,t)},"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME2($),"ALT")},{ALT:r(()=>e.SUBRULE(e.bracketAccessor),"ALT")}])},"ALT")},{ALT:r(()=>e.SUBRULE1(e.bracketAccessor),"ALT")}])}}r(hL,"singleChainedIdentifier");function SL(e){return()=>{e.CONSUME(rp),e.SUBRULE(e.chainedIdentifier)}}r(SL,"completeAuthVariable");function AL(e){return()=>{e.CONSUME(tp),e.OR([{ALT:r(()=>{e.CONSUME(k),e.OR1([{ALT:r(()=>e.CONSUME(up),"ALT")},{ALT:r(()=>e.CONSUME(Tp),"ALT")},{ALT:r(()=>e.CONSUME(dp),"ALT")},{ALT:r(()=>{e.CONSUME(cp),e.SUBRULE(e.singleChainedIdentifier)},"ALT")},{ALT:r(()=>e.CONSUME(hp),"ALT")},{ALT:r(()=>e.CONSUME(op),"ALT")},{ALT:r(()=>e.CONSUME(Ep),"ALT")},{ALT:r(()=>e.CONSUME(ip),"ALT")},{ALT:r(()=>e.CONSUME(sp),"ALT")},{ALT:r(()=>e.CONSUME(fp),"ALT")},{ALT:r(()=>e.CONSUME(Sp),"ALT")},{ALT:r(()=>e.CONSUME(mp),"ALT")},{ALT:r(()=>e.CONSUME(pp),"ALT")},{ALT:r(()=>e.CONSUME(np),"ALT")},{ALT:r(()=>{e.CONSUME(lp),e.SUBRULE1(e.singleChainedIdentifier)},"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>{let t=e.CONSUME(V);e.addWarning(`Using \`$\` prefixed environment variables '${t.image}' is discouraged.`,t)},"ALT")},{ALT:r(()=>e.SUBRULE(e.bracketAccessor),"ALT")}])},"ALT")},{ALT:r(()=>e.SUBRULE1(e.bracketAccessor),"ALT")}])}}r(AL,"completeEnvVariable");function UL(e){let t=new Set(["name","code","message","result"]);return()=>{let o=e.CONSUME(ap);e.sectionStack.includes("catchFn")||e.addInvalidValueError(o,"Invalid use of $error variable outside of a catch block."),e.OPTION(()=>{e.CONSUME(k);let n=e.CONSUME(a);t.has(n.image)||e.addInvalidValueError(n,`Invalid property '${n.image}' for $error variable. Allowed properties are: ${Array.from(t).join(", ")}.`),e.SUBRULE(e.chainedIdentifier)})}}r(UL,"completeErrorVariable");function gL(e){return()=>{e.CONSUME(ep),e.OR([{ALT:r(()=>{e.CONSUME(k),e.OR1([{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>{e.CONSUME(H),e.CONSUME(E),e.CONSUME(z)},"ALT")}])},"ALT")},{ALT:r(()=>{e.CONSUME2(H),e.CONSUME2(E),e.CONSUME2(z)},"ALT")}]),e.SUBRULE(e.chainedIdentifier)}}r(gL,"completeInputVariable");function kL(e){return(...t)=>{let o=t||[],n=e.CONSUME3(E),i=j(n);o.includes(i)||e.addMissingError(n,`Invalid value "${i}". Must be one of: ${o.map(s=>`"${s}"`).join(", ")}`)}}r(kL,"enumValue");var SI={allowQueryExpression:!1,allowExpression:!0,allowIdentifier:!0,allowVariable:!0,allowFilter:!0,allowComparison:!0,allowDisabledKeys:!1},AI=[Mn,Fn,_n,In,hc,vn,Sc,wn,Zn,jn,Wn,Yn,Hn,Kn,Bn,Pn,Gn,Dn,Vn,qn,zn,Jn,Xn,Qn];function RL(e){return(t,o={})=>{o={...SI,...o};let n=!1,i=!1,s=!1;e.OR([{ALT:r(()=>{e.MANY1(()=>e.CONSUME(ye)),e.OR2([{ALT:r(()=>{e.CONSUME(B),e.OR3([{ALT:r(()=>e.SUBRULE(e.expressionFn,{ARGS:[t,o]}),"ALT")},{ALT:r(()=>e.SUBRULE(e.multilineFilterFn,{ARGS:[o]}),"ALT")}]),e.OPTION(()=>e.CONSUME1(m)),e.CONSUME(P),e.MANY(()=>{e.CONSUME(k),e.CONSUME(a)})},"ALT")},{ALT:r(()=>e.SUBRULE(e.simpleExpressionFn,{ARGS:[t,o]}),"ALT")}])},"ALT")},{ALT:r(()=>{e.SUBRULE(e.schemaParseArrayFn,{ARGS:[t,o.allowQueryExpression?["[query]"]:["[expression]"],{},o]})},"ALT")},{ALT:r(()=>{let l=o.allowDisabledKeys?"![string]?":"[string]?";e.SUBRULE(e.schemaParseObjectFn,{ARGS:[t,{[l]:o.allowQueryExpression?"[query]":"[expression]"},{},o]}),e.SUBRULE(e.chainedIdentifier)},"ALT")}]),e.MANY2(()=>{e.SUBRULE(e.bracketArrayAccessor)}),e.MANY3({GATE:r(()=>o.allowFilter&&e.LA(1).tokenType===Me||e.LA(1).tokenType===m&&e.LA(2).tokenType===Me,"GATE"),DEF:r(()=>{n=!0,e.SUBRULE(e.filterFn,{ARGS:[o]})},"DEF")});let c=e.OPTION1({GATE:r(()=>o.allowComparison,"GATE"),DEF:r(()=>(i=!0,e.OR1([{ALT:r(()=>e.SUBRULE(e.expressionTestFn,{ARGS:[t,o]}),"ALT")},{ALT:r(()=>{s=!0;let l=e.CONSUME(et);return e.SUBRULE2(e.expressionFn,{ARGS:[l,o]}),e.OPTION2(()=>{e.CONSUME2(Ee),e.SUBRULE3(e.expressionFn,{ARGS:[l,o]})}),l},"ALT")}])),"DEF")});n&&i&&e.addInvalidValueError(t,"An expression should be wrapped in parentheses when combining filters and tests"),o.allowQueryExpression&&s&&e.addInvalidValueError(c,"Ternary expressions are not allowed in a where clause")}}r(RL,"expressionFn");function LL(e){return(t,o={})=>{let n=e.OR([{ALT:r(()=>e.CONSUME(Mn),"ALT")},{ALT:r(()=>e.CONSUME(Fn),"ALT")},{ALT:r(()=>e.CONSUME(_n),"ALT")},{ALT:r(()=>e.CONSUME(In),"ALT")},{ALT:r(()=>e.CONSUME(hc),"ALT")},{ALT:r(()=>e.CONSUME(vn),"ALT")},{ALT:r(()=>e.CONSUME(Sc),"ALT")},{ALT:r(()=>e.CONSUME(wn),"ALT")},{ALT:r(()=>e.CONSUME(fc),"ALT")},{ALT:r(()=>e.CONSUME(mc),"ALT")},{ALT:r(()=>e.CONSUME(dc),"ALT")},{ALT:r(()=>e.CONSUME(Tc),"ALT")},{ALT:r(()=>e.CONSUME(Ec),"ALT")},{ALT:r(()=>e.CONSUME(Uc),"ALT")},{ALT:r(()=>e.CONSUME(Ac),"ALT")},{ALT:r(()=>e.CONSUME(gc),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Km),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Zn),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(jn),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Wn),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Yn),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Hn),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Kn),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Bn),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Pn),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Gn),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Dn),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Vn),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(qn),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(zn),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Jn),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Xn),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Qn),"ALT")},{GATE:r(()=>o.allowQueryExpression,"GATE"),ALT:r(()=>e.CONSUME(Rc),"ALT")},{ALT:r(()=>e.CONSUME(kc),"ALT")}]);e.OPTION({GATE:r(()=>o.allowQueryExpression&&AI.includes(n.tokenType),"GATE"),DEF:r(()=>e.CONSUME1(et),"DEF")}),e.SUBRULE(e.expressionFn,{ARGS:[t,o]})}}r(LL,"expressionTestFn");function xL(e){return(t,o)=>{e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(Lt),"ALT")},{ALT:r(()=>e.CONSUME($),"ALT")},{ALT:r(()=>e.CONSUME(Ie),"ALT")},{ALT:r(()=>e.CONSUME(Re),"ALT")},{ALT:r(()=>e.CONSUME(Le),"ALT")},{ALT:r(()=>e.CONSUME(xt),"ALT")},{ALT:r(()=>e.CONSUME(mr),"ALT")},{GATE:r(()=>o.allowExpression,"GATE"),ALT:r(()=>e.CONSUME(Pe),"ALT")},{GATE:r(()=>o.allowExpression,"GATE"),ALT:r(()=>e.CONSUME(fl),"ALT")},{GATE:r(()=>o.allowExpression,"GATE"),ALT:r(()=>e.CONSUME(Hs),"ALT")},{GATE:r(()=>o.allowVariable,"GATE"),ALT:r(()=>e.SUBRULE(e.longFormVariable),"ALT")},{GATE:r(()=>o.allowVariable,"GATE"),ALT:r(()=>e.SUBRULE(e.completeAuthVariable),"ALT")},{GATE:r(()=>o.allowVariable,"GATE"),ALT:r(()=>e.SUBRULE(e.completeEnvVariable),"ALT")},{GATE:r(()=>o.allowVariable,"GATE"),ALT:r(()=>e.SUBRULE(e.completeInputVariable),"ALT")},{GATE:r(()=>o.allowVariable,"GATE"),ALT:r(()=>e.SUBRULE(e.completeErrorVariable),"ALT")},{GATE:r(()=>o.allowVariable,"GATE"),ALT:r(()=>e.SUBRULE(e.shortFormVariable),"ALT")},{ALT:r(()=>e.SUBRULE(e.castedValue),"ALT")}])}}r(xL,"simpleExpressionFn");function CL(e){return(t={},o=null)=>{e.OR([{ALT:r(()=>{e.CONSUME(m),e.CONSUME(Me)},"ALT")},{ALT:r(()=>e.CONSUME1(Me),"ALT")}]);let n=t.allowQueryExpression===!0?xA:LA;e.OPTION(()=>e.CONSUME(ye));let i=e.CONSUME(a);n.includes(i.image)||e.addInvalidValueError(i,`Unknown filter function '${i.image}'`),e.MANY1(()=>{e.CONSUME(Ee),e.SUBRULE(e.expressionFn,{ARGS:[i,t,o]})})}}r(CL,"filterFn");var UI={allowDuplicates:[],allowQueryExpression:!1,allowDisabledKeys:!1,types:{}};function OL(e){return(t,o,n,i={})=>{o=o||[],n=n||[];let s=!1,c=!1;i={...UI,...i};let l=[],p=[...o,...n];e.OR({IGNORE_AMBIGUITIES:!0,DEF:[{GATE:r(()=>o.length===0,"GATE"),ALT:r(()=>{e.OPTION(()=>{e.CONSUME(A),e.MANY(()=>{e.OR1([{GATE:r(()=>!s,"GATE"),ALT:r(()=>e.MANY1(()=>e.CONSUME1(m)),"ALT")},{GATE:r(()=>s,"GATE"),ALT:r(()=>e.AT_LEAST_ONE(()=>e.CONSUME2(m)),"ALT")}]),e.OR2([{ALT:r(()=>{let g=e.CONSUME(a);l.push(g),e.CONSUME(h);let x=j(g),L=i.types[x];if(typeof L=="function")L.call(null,e,g);else if(Array.isArray(L)){let _=e.CONSUME3(E),O=j(_);L.includes(O)||e.addMissingError(_,`Invalid value "${O}". Must be one of: ${L.map(N=>`"${N}"`).join(", ")}`)}else e.OR4({DEF:[{GATE:r(()=>L==="boolean","GATE"),ALT:r(()=>e.SUBRULE(e.booleanValue),"ALT")},{GATE:r(()=>L==="number","GATE"),ALT:r(()=>e.SUBRULE(e.numberValue),"ALT")},{GATE:r(()=>L==="string","GATE"),ALT:r(()=>e.CONSUME1(E),"ALT")},{GATE:r(()=>L==="object","GATE"),ALT:r(()=>e.SUBRULE1(e.objectWithAttributes,{ARGS:[i]}),"ALT")},{GATE:r(()=>!L,"GATE"),ALT:r(()=>e.SUBRULE(e.expressionFn,{ARGS:[g,i]}),"ALT")}],ERR_MSG:L?`${L} for attribute ${g.image}`:void 0});s=!0},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.mockAttribute),s=!0},"ALT")}])}),e.MANY2(()=>e.CONSUME3(m)),e.CONSUME(U)})},"ALT")},{GATE:r(()=>o.length>0,"GATE"),ALT:r(()=>{e.CONSUME1(A),e.MANY4(()=>{e.OR3([{GATE:r(()=>!s,"GATE"),ALT:r(()=>e.MANY5(()=>e.CONSUME4(m)),"ALT")},{GATE:r(()=>s,"GATE"),ALT:r(()=>e.AT_LEAST_ONE1(()=>e.CONSUME5(m)),"ALT")}]),e.OR5([{ALT:r(()=>{let g=e.CONSUME1(a);l.push(g),e.CONSUME1(h);let x=j(g),L=i.types[x];if(typeof L=="function")L.call(null,e,g);else if(Array.isArray(L)){let _=e.CONSUME3(E),O=j(_);L.includes(O)||e.addMissingError(_,`Invalid value "${O}". Must be one of: ${L.map(N=>`"${N}"`).join(", ")}`)}else e.OR6({DEF:[{GATE:r(()=>L==="boolean","GATE"),ALT:r(()=>e.SUBRULE2(e.booleanValue),"ALT")},{GATE:r(()=>L==="number","GATE"),ALT:r(()=>e.SUBRULE2(e.numberValue),"ALT")},{GATE:r(()=>L==="string","GATE"),ALT:r(()=>e.CONSUME2(E),"ALT")},{GATE:r(()=>L==="object","GATE"),ALT:r(()=>e.SUBRULE2(e.objectWithAttributes,{ARGS:[i]}),"ALT")},{GATE:r(()=>!L,"GATE"),ALT:r(()=>e.SUBRULE2(e.expressionFn,{ARGS:[g,i]}),"ALT")}],ERR_MSG:L?`${L} for attribute ${g.image}`:void 0});s=!0},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{e.SUBRULE2(e.mockAttribute),c=!0,s=!0},"ALT")}])}),e.MANY6(()=>e.CONSUME6(m)),e.CONSUME1(U)},"ALT")}]});let f=l.filter((g,x)=>!i.allowDuplicates.includes(g.image)&&l.findIndex(L=>L.image===g.image)!==x);for(let g of f)e.addDuplicateAttributeError(g);let d=l.filter(g=>!p.includes(g.image));for(let g of d)e.addIllegalAttributeError(g);let T=l.map(g=>g.image),S=o.filter(g=>!T.includes(g));S.length>0&&e.addMissingAttributeError(t,S),e.sectionStack.pop()}}r(OL,"functionAttrReq");function NL(e){return()=>{e.CONSUME(pr),e.OR([{ALT:r(()=>{e.CONSUME(k),e.OR1([{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>{e.CONSUME(H),e.CONSUME(E),e.CONSUME(z)},"ALT")}])},"ALT")},{ALT:r(()=>{e.CONSUME2(H),e.CONSUME2(E),e.CONSUME2(z)},"ALT")}]),e.SUBRULE(e.chainedIdentifier)}}r(NL,"longFormVariable");function bL(e){return()=>{e.sectionStack.push("minimalFnBody"),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")}])}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.sectionStack.pop()}}r(bL,"minimalFnBody");function yL(e){return()=>{e.sectionStack.push("mockAttribute");let t=e.CONSUME(Hp);e.CONSUME(h),e.SUBRULE(e.schemaParseObjectFn,{ARGS:[t,{"![string]":"[expression]"}]}),e.MANY(()=>e.CONSUME(m)),e.sectionStack.pop()}}r(yL,"mockAttribute");function ML(e){return(t={})=>{e.SUBRULE(e.filterFn,{ARGS:[t]}),e.MANY({GATE:r(()=>e.LA(1).tokenType===Me||e.LA(1).tokenType===m&&e.LA(2).tokenType===Me,"GATE"),DEF:r(()=>{e.SUBRULE1(e.filterFn,{ARGS:[t]})},"DEF")})}}r(ML,"multilineFilterFn");function FL(e){return()=>{e.OR([{ALT:r(()=>{e.CONSUME($,{ERR_MSG:"Integer literal expected"})},"ALT")},{ALT:r(()=>{e.CONSUME(Ie,{ERR_MSG:"Float literal expected"})},"ALT")}],{ERR_MSG:"Number literal expected"})}}r(FL,"numberValue");var gI={allowDuplicates:[],allowQueryExpression:!1,recursive:[],recursiveArray:[],allowVariables:!0,types:{}};function _L(e){return(t,o,n,i={})=>{o=o||[],n=n||[],i={...gI,...i};let s=[],c=[...o,...n],l;e.CONSUME(A),e.OPTION(()=>{e.OR([{ALT:r(()=>{e.AT_LEAST_ONE_SEP({SEP:ae,DEF:r(()=>{l=e.OR1([{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME(E),"ALT")}]),s.push(l);let S=j(l);if(e.CONSUME(Ee),i.recursive.includes(S))e.SUBRULE(e.objectAttrReq,{ARGS:[l,o,n,i]});else if(i.recursiveArray.includes(S))e.SUBRULE(e.arrayOfObjectAttrReq,{ARGS:[l,o,n,i]});else{let g=i.types[S];if(typeof g=="function")g.call(null,e,l);else if(Array.isArray(g)){let x=e.CONSUME3(E),L=j(x);g.includes(L)||e.addMissingError(x,`Invalid value "${L}". Must be one of: ${g.map(_=>`"${_}"`).join(", ")}`)}else e.OR4([{GATE:r(()=>g==="boolean","GATE"),ALT:r(()=>e.SUBRULE(e.booleanValue),"ALT")},{GATE:r(()=>g==="number","GATE"),ALT:r(()=>e.SUBRULE(e.numberValue),"ALT")},{GATE:r(()=>g==="string","GATE"),ALT:r(()=>e.CONSUME3(E),"ALT")},{GATE:r(()=>g==="object","GATE"),ALT:r(()=>e.SUBRULE1(e.objectWithAttributes,{ARGS:[i]}),"ALT")},{GATE:r(()=>!g,"GATE"),ALT:r(()=>e.SUBRULE(e.expressionFn,{ARGS:[l,i]}),"ALT")}])}},"DEF")})},"ALT")},{ALT:r(()=>{e.CONSUME(m),e.AT_LEAST_ONE(()=>{let S=e.OR2([{ALT:r(()=>e.CONSUME2(a),"ALT")},{ALT:r(()=>e.CONSUME2(E),"ALT")}]);s.push(S),e.CONSUME1(Ee);let g=j(S);if(i.recursive.includes(g))e.SUBRULE(e.objectAttrReq,{ARGS:[S,o,n,i]});else if(i.recursiveArray.includes(g))e.SUBRULE(e.arrayOfObjectAttrReq,{ARGS:[S,o,n,i]});else{let x=i.types[g];if(typeof x=="function")x.call(null,e,S);else if(Array.isArray(x)){let L=e.CONSUME3(E),_=j(L);x.includes(_)||e.SAVE_ERROR(new ke(`Invalid value "${_}". Must be one of: ${x.map(O=>`"${O}"`).join(", ")}`,L,L))}else e.OR3([{GATE:r(()=>x==="boolean","GATE"),ALT:r(()=>e.SUBRULE1(e.booleanValue),"ALT")},{GATE:r(()=>x==="number","GATE"),ALT:r(()=>e.SUBRULE1(e.numberValue),"ALT")},{GATE:r(()=>x==="string","GATE"),ALT:r(()=>e.OR5([{ALT:r(()=>e.CONSUME1(E),"ALT")},{ALT:r(()=>e.CONSUME(Pe),"ALT")}]),"ALT")},{GATE:r(()=>x==="object","GATE"),ALT:r(()=>e.SUBRULE(e.objectWithAttributes,{ARGS:[i]}),"ALT")},{GATE:r(()=>!x,"GATE"),ALT:r(()=>e.SUBRULE1(e.expressionFn,{ARGS:[S,i]}),"ALT")}])}e.OPTION1(()=>e.CONSUME(ae)),e.AT_LEAST_ONE1(()=>e.CONSUME1(m))})},"ALT")}])}),e.CONSUME(U);let p=s.filter((S,g)=>!i.allowDuplicates.includes(j(S))&&s.findIndex(x=>j(x)===j(S))!==g);for(let S of p)e.addDuplicateAttributeError(S);let f=s.filter(S=>!c.includes(j(S)));for(let S of f)e.addIllegalAttributeError(S);let d=s.map(j),T=o.filter(S=>!d.includes(S));T.length>0&&e.addMissingAttributeError(t,T)}}r(_L,"objectAttrReq");function IL(e){return(t={})=>{let o=[],n=e.CONSUME(A);e.MANY(()=>e.CONSUME(m)),e.MANY_SEP({SEP:m,DEF:r(()=>{let i=!1,s=!1;e.MANY1(()=>{i&&!s&&e.addMissingError(n,"Expected a separator between attributes"),e.OPTION1({GATE:r(()=>t.allowDisabledKeys===!0,"GATE"),DEF:r(()=>e.CONSUME(ye),"DEF")});let c=e.OR1([{ALT:r(()=>e.CONSUME2(a),"ALT")},{ALT:r(()=>e.CONSUME2(E),"ALT")}]),l=j(c);o.includes(l)?e.addDuplicateAttributeError(c):o.push(l),e.CONSUME(Ee),e.SUBRULE(e.expressionFn,{ARGS:[c,t]}),e.OPTION(()=>{e.CONSUME(ae),s=!0}),i=!0})},"DEF")}),e.MANY3(()=>e.CONSUME3(m)),e.CONSUME(U)}}r(IL,"objectWithAttributes");function vL(e){return()=>{e.sectionStack.push("optionalCommentBlockFn"),e.MANY(()=>{e.CONSUME(re),e.CONSUME(m)}),e.sectionStack.pop()}}r(vL,"optionalCommentBlockFn");function wL(e){return()=>{e.sectionStack.push("commentBlockFn"),e.AT_LEAST_ONE(()=>{e.CONSUME(re),e.CONSUME(m)}),e.sectionStack.pop()}}r(wL,"commentBlockFn");function BL(e){return()=>{e.AT_LEAST_ONE(()=>{e.CONSUME(Me),e.CONSUME(a),e.MANY1(()=>{e.CONSUME(Ee),e.SUBRULE(e.expressionFn)})})}}r(BL,"pipedFilter");function PL(e){return()=>{e.sectionStack.push("requiredValueFnBody");let t=!1;e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>{t=!0,e.SUBRULE(e.valueFieldAttribute)},"ALT")},{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.disabledFieldAttribute),"ALT")}])}),t||e.SUBRULE(e.valueFieldAttribute),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.sectionStack.pop()}}r(PL,"requiredValueFnBody");function GL(e){return()=>{e.CONSUME(V),e.SUBRULE(e.chainedIdentifier)}}r(GL,"shortFormVariable");var DL=r(e=>()=>{let t=!0,o=e.CONSUME(H);e.MANY(()=>e.CONSUME(m)),e.MANY1(()=>{t||e.addMissingError(o,"Missing comma or newline between string values in the array"),o=e.CONSUME(E),t=!1,e.OPTION(()=>{e.CONSUME(ae),t=!0}),e.MANY2(()=>{e.CONSUME1(m),t=!0})}),e.CONSUME(z)},"stringArray");function VL(e){return()=>{e.CONSUME(yp),e.CONSUME(h),e.SUBRULE(e.stringArray)}}r(VL,"tagsAttribute");function qL(e){return Object.hasOwn(e,"emptyArray")||(e.emptyArray=e.RULE("emptyArray",()=>{e.CONSUME(H),e.CONSUME(z)})),()=>{e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(Lt),"ALT")},{ALT:r(()=>e.CONSUME(Ie),"ALT")},{ALT:r(()=>e.CONSUME($),"ALT")},{ALT:r(()=>e.CONSUME(Re),"ALT")},{ALT:r(()=>e.CONSUME(Le),"ALT")},{ALT:r(()=>e.CONSUME(mr),"ALT")},{ALT:r(()=>e.CONSUME(xt),"ALT")},{ALT:r(()=>e.SUBRULE(e.longFormVariable),"ALT")},{ALT:r(()=>e.SUBRULE(e.completeAuthVariable),"ALT")},{ALT:r(()=>e.SUBRULE(e.completeEnvVariable),"ALT")},{ALT:r(()=>e.SUBRULE(e.completeInputVariable),"ALT")},{ALT:r(()=>e.SUBRULE(e.shortFormVariable),"ALT")},{ALT:r(()=>e.SUBRULE(e.castedValue),"ALT")},{ALT:r(()=>e.SUBRULE(e.emptyArray),"ALT")}]),e.OPTION(()=>{e.SUBRULE(e.pipedFilter)})}}r(qL,"valueExpressionForResponse");function jL(e){return()=>{e.OR([{ALT:r(()=>e.SUBRULE(e.longFormVariable),"ALT")},{ALT:r(()=>e.SUBRULE(e.shortFormVariable),"ALT")}]),e.OPTION(()=>e.SUBRULE(e.pipedFilter))}}r(jL,"variableOnly");var WL=r(e=>{e.mockAttribute=e.RULE("mockAttribute",yL(e)),e.arrayOfObjectAttrReq=e.RULE("arrayOfObjectAttrReq",iL(e)),e.arrayOfStringLiterals=e.RULE("arrayOfStringLiterals",sL(e)),e.arrayWithValues=e.RULE("arrayWithValues",cL(e)),e.assignableVariableAs=e.RULE("assignableVariableAs",lL(e)),e.assignableVariableProperty=e.RULE("assignableVariableProperty",uL(e)),e.booleanValue=e.RULE("booleanValue",mL(e)),e.castedValue=e.RULE("castedValue",TL(e)),e.chainedIdentifier=e.RULE("chainedIdentifier",EL(e)),e.singleChainedIdentifier=e.RULE("singleChainedIdentifier",hL(e)),e.enumValue=e.RULE("enumValue",kL(e)),e.expressionFn=e.RULE("expressionFn",RL(e)),e.simpleExpressionFn=e.RULE("simpleExpressionFn",xL(e)),e.expressionTestFn=e.RULE("expressionTestFn",LL(e)),e.functionAttrReq=e.RULE("functionAttrReq",OL(e)),e.filterFn=e.RULE("filterFn",CL(e)),e.multilineFilterFn=e.RULE("multilineFilterFn",ML(e)),e.longFormVariable=e.RULE("longFormVariable",NL(e)),e.minimalFnBody=e.RULE("minimalFnBody",bL(e)),e.numberValue=e.RULE("numberValue",FL(e)),e.objectAttrReq=e.RULE("objectAttrReq",_L(e)),e.objectWithAttributes=e.RULE("objectWithAttributes",IL(e)),e.pipedFilter=e.RULE("pipedFilter",BL(e)),e.requiredValueFnBody=e.RULE("requiredValueFnBody",PL(e)),e.shortFormVariable=e.RULE("shortFormVariable",GL(e)),e.stringArray=e.RULE("stringArray",DL(e)),e.tagsAttribute=e.RULE("tagsAttribute",VL(e)),e.expressionFnForResponse=e.RULE("valueExpressionForResponse",qL(e)),e.variableOnly=e.RULE("variableOnly",jL(e)),e.completeAuthVariable=e.RULE("completeAuthVariable",SL(e)),e.bracketAccessor=e.RULE("bracketAccessor",fL(e)),e.bracketArrayAccessor=e.RULE("bracketArrayAccessor",dL(e)),e.completeInputVariable=e.RULE("completeInputVariable",gL(e)),e.completeErrorVariable=e.RULE("completeErrorVariable",UL(e)),e.completeEnvVariable=e.RULE("completeEnvVariable",AL(e)),e.asVariable=e.RULE("asVariable",pL(e)),e.optionalCommentBlockFn=e.RULE("optionalCommentBlockFn",vL(e)),e.commentBlockFn=e.RULE("commentBlockFn",wL(e))},"register");function YL(e){return()=>{let t=!1,o=!1,n=!1,i=!1,s=!1,c=!1,l=!1,p=!1;e.sectionStack.push("mcpServerDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let f=e.CONSUME(il);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.commentBlockFn),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.CONSUME(nl),e.CONSUME(h),e.SUBRULE(e.booleanValue)},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.SUBRULE(e.canonicalClause)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!i,"GATE"),ALT:r(()=>{i=!0,e.SUBRULE(e.docsFieldAttribute)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE1(e.flexibleStringClause,{ARGS:[al]})},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.tagsAttribute)},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0;let d=e.CONSUME(sl);e.CONSUME2(h),e.SUBRULE(e.arrayOfObjectAttrReq,{ARGS:[d,["name"],["active","auth"],{types:{active:"boolean",auth:"string",name:"string"}}]})},"ALT")}])}),p||e.addMissingError(f,"{} is missing tools clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(YL,"mcpServerDeclaration");function KL(e){return()=>{let t=!1,o=!1,n=!1,i=!1,s=!1,c=!1,l=!1,p=!1,f=!1;e.sectionStack.push("mcpServerTriggerDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let d=e.CONSUME(ul);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.commentBlockFn),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0;let T=e.CONSUME(cl);e.CONSUME(h),e.SUBRULE(e.objectAttrReq,{ARGS:[T,["connection"],[],{types:{connection:"boolean"}}]})},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.CONSUME(ll),e.CONSUME2(h),e.SUBRULE(e.booleanValue)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!i,"GATE"),ALT:r(()=>{i=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.inputClause)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.mcpServerClause)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.responseClause)},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.stackClause)},"ALT")},{GATE:r(()=>!f,"GATE"),ALT:r(()=>{f=!0,e.SUBRULE(e.tagsAttribute)},"ALT")}])}),c||e.addMissingError(d,"{} is missing mcp_server clause"),s||e.addMissingError(d,"{} is missing an input clause"),p||e.addMissingError(d,"{} is missing a stack clause"),l||e.addMissingError(d,"{} is missing a response clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(KL,"mcpServerTriggerDeclaration");function HL(e){return()=>{e.sectionStack.push("columnMetadataDefinition"),e.CONSUME(A),e.AT_LEAST_ONE(()=>{e.CONSUME(m),e.OR([{ALT:r(()=>e.SUBRULE(e.sensitiveFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>{e.CONSUME(lr),e.CONSUME(h),e.CONSUME(E)},"ALT")}])}),e.AT_LEAST_ONE1(()=>e.CONSUME1(m)),e.CONSUME(U),e.sectionStack.pop()}}r(HL,"columnMetadataDefinition");function zL(e){return t=>{e.sectionStack.push("enumColumnMetadataDefinition"),e.CONSUME(A);let o=!1,n=!1,i=!1;e.MANY(()=>{e.AT_LEAST_ONE1(()=>e.CONSUME1(m)),e.OR([{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.SUBRULE(e.valuesFieldAttribute)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>e.SUBRULE(e.sensitiveFieldAttribute),"ALT")},{GATE:r(()=>!i,"GATE"),ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")}])}),o||e.addMissingError(t,"{} is missing the values attribute"),e.AT_LEAST_ONE2(()=>e.CONSUME2(m)),e.CONSUME(U),e.sectionStack.pop()}}r(zL,"enumColumnMetadataDefinition");function JL(e){return()=>{e.sectionStack.push("objectColumnMetadataDefinition"),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR([{ALT:r(()=>e.SUBRULE(e.sensitiveFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{ALT:r(()=>e.SUBRULE(e.schemaClause,{ARGS:[{include_file:!1}]}),"ALT")}])}),e.AT_LEAST_ONE1(()=>e.CONSUME1(m)),e.CONSUME(U),e.sectionStack.pop()}}r(JL,"objectColumnMetadataDefinition");function XL(e){e.columnMetadataDefinition=e.RULE("columnMetadataDefinition",HL(e)),e.enumColumnMetadataDefinition=e.RULE("enumColumnMetadataDefinition",zL(e)),e.objectColumnMetadataDefinition=e.RULE("objectColumnMetadataDefinition",JL(e))}r(XL,"register");function QL(e){return()=>{let t=!1,o=!1,n=!1,i=!1,s=!1,c=!1,l=!1,p=!1,f=!1,d=[];e.sectionStack.push("middlewareDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let T=e.CONSUME(Po);e.OR([{ALT:r(()=>e.CONSUME(a),"ALT")},{ALT:r(()=>e.CONSUME(E),"ALT")}]),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.commentBlockFn),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.SUBRULE(e.docsFieldAttribute)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.CONSUME(pl),e.CONSUME(h),e.SUBRULE(e.enumValue,{ARGS:["silent","rethrow","critical"]})},"ALT")},{GATE:r(()=>!i,"GATE"),ALT:r(()=>{i=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.inputClause)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.responseClause)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.CONSUME(ml),e.CONSUME2(h),e.SUBRULE2(e.enumValue,{ARGS:["merge","replace"]})},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.stackClause)},"ALT")},{GATE:r(()=>!f,"GATE"),ALT:r(()=>{f=!0,e.SUBRULE(e.tagsAttribute)},"ALT")},{ALT:r(()=>{e.SUBRULE(e.testClause,{ARGS:[d]})},"ALT")}])}),s||e.addMissingError(T,"{} is missing an input clause"),p||e.addMissingError(T,"{} is missing a stack clause"),c||e.addMissingError(T,"{} is missing a response clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(QL,"middlewareDeclaration");function ZL(e){return()=>{let t=!1,o=!1,n=!1,i=!1,s=!1,c=!1,l=!1,p=!1,f=!1,d=!1,T=!1,S=!1,g=[];e.sectionStack.push("queryDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let x=e.CONSUME(Sl);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]),e.CONSUME(Go),e.CONSUME(h),e.OR1([{ALT:r(()=>e.CONSUME(Wo),"ALT")},{ALT:r(()=>e.CONSUME(Do),"ALT")},{ALT:r(()=>e.CONSUME(Vo),"ALT")},{ALT:r(()=>e.CONSUME(qo),"ALT")},{ALT:r(()=>e.CONSUME(jo),"ALT")}]),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.CONSUME(re),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.CONSUME(Jo),e.CONSUME1(h),e.CONSUME1(E)},"ALT")},{GATE:r(()=>!S,"GATE"),ALT:r(()=>{S=!0,e.CONSUME(Al),e.CONSUME8(h);let L=e.CONSUME2(E),_=j(L);["stream","standard"].includes(_)||e.addInvalidValueError(L,"response_type must be either 'stream' or 'standard'")},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.SUBRULE(e.cacheClause)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!T,"GATE"),ALT:r(()=>{T=!0,e.CONSUME(co),e.CONSUME2(h),e.CONSUME3(E)},"ALT")},{GATE:r(()=>!i,"GATE"),ALT:r(()=>{i=!0,e.SUBRULE(e.docsFieldAttribute)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.inputClause)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.middlewareClause)},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.responseClause)},"ALT")},{GATE:r(()=>!f,"GATE"),ALT:r(()=>{f=!0,e.SUBRULE(e.stackClause)},"ALT")},{GATE:r(()=>!d,"GATE"),ALT:r(()=>{d=!0,e.SUBRULE(e.tagsAttribute)},"ALT")},{ALT:r(()=>{e.SUBRULE(e.testClause,{ARGS:[g]})},"ALT")}])}),T||e.addWarning("api_group is not provided, defaulting to api_group.xs defined in the same folder",x),c||e.addMissingError(x,"{} is missing an input clause"),f||e.addMissingError(x,"{} is missing a stack clause"),p||e.addMissingError(x,"{} is missing a response clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(ZL,"queryDeclaration");function $L(e){return()=>{e.sectionStack.push("realtimeChannelDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let t=e.CONSUME(Ll);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"description?":"[string]","active?":"[boolean]","public_messaging?":{"active?":"[boolean]","auth?":"[boolean]"},"private_messaging?":{"active?":"[boolean]","auth?":"[boolean]"},"settings?":{anonymous_clients:"[boolean]",nested_channels:"[boolean]",message_history:[0,25,50,100,250,1e3],auth_channel:"[boolean]",presence:"[boolean]"}}]}),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r($L,"realtimeChannelDeclaration");function ex(e){return()=>{let t=!1,o=!1,n=!1,i=!1,s=!1,c=!1,l=!1,p=!1,f=!1;e.sectionStack.push("realtimeTriggerDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let d=e.CONSUME(Rl);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.commentBlockFn),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0;let T=e.CONSUME(gl);e.CONSUME(h),e.SUBRULE(e.objectAttrReq,{ARGS:[T,[],["join","message"],{types:{join:"boolean",message:"boolean"}}]})},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.CONSUME(kl),e.CONSUME2(h),e.SUBRULE(e.booleanValue)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.channelClause)},"ALT")},{GATE:r(()=>!i,"GATE"),ALT:r(()=>{i=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.inputClause)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.responseClause)},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.stackClause)},"ALT")},{GATE:r(()=>!f,"GATE"),ALT:r(()=>{f=!0,e.SUBRULE(e.tagsAttribute)},"ALT")}])}),n||e.addMissingError(d,"{} is missing channel clause"),c||e.addMissingError(d,"{} is missing an input clause"),p||e.addMissingError(d,"{} is missing a stack clause"),l||e.addMissingError(d,"{} is missing a response clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(ex,"realtimeTriggerDeclaration");function tx(e){return()=>{e.sectionStack.push("runDeclaration"),e.SUBRULE(e.optionalCommentBlockFn),e.CONSUME(Vl),e.CONSUME(k),e.OR([{ALT:r(()=>e.SUBRULE(e.runJobClause),"ALT")},{ALT:r(()=>e.SUBRULE(e.runServiceClause),"ALT")}]),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(tx,"runDeclaration");function rx(e){return()=>{let t=e.CONSUME(ql);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{main:{name:"[string]",input:{"[string]?":"[constant]"}},"env?":["[string]"]}]})}}r(rx,"runJobClause");function ox(e){return()=>{let t=e.CONSUME(jl);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"pre?":{name:"[string]",input:{"[string]?":"[constant]"}},"env?":["[string]"]}]})}}r(ox,"runServiceClause");function nx(e){return()=>{e.sectionStack.push("tableDeclaration"),e.SUBRULE(e.optionalCommentBlockFn),e.CONSUME(lr),e.OR1([{ALT:r(()=>e.CONSUME(E,{ERR_MSG:"expected table name after table statement"}),"ALT")},{ALT:r(()=>e.CONSUME(a,{ERR_MSG:"expected table name after table statement"}),"ALT")}]);let t=!1,o=!1,n=!1,i=!1,s=!1,c=!1,l=!1,p=!1,f={};e.CONSUME(A),e.sectionStack.push("tableBody"),e.MANY(()=>e.CONSUME(m)),e.MANY1(()=>{e.OR([{ALT:r(()=>e.CONSUME(re),"ALT")},{GATE:r(()=>!i,"GATE"),ALT:r(()=>e.SUBRULE(e.descriptionFieldAttribute),"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>e.SUBRULE(e.tagsAttribute),"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>e.SUBRULE(e.authClause),"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>e.SUBRULE(e.viewClause),"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0;let d=e.CONSUME(Uu);e.CONSUME(h),e.SUBRULE(e.schemaParseArrayFn,{ARGS:[d,[{"[string]":"[expression]"}]]})},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0;let d=e.CONSUME(Au);e.CONSUME1(h),e.SUBRULE1(e.schemaParseArrayFn,{ARGS:[d,[{"[string]":"[string]"}]]})},"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>e.SUBRULE(e.schemaClause,{ARGS:[{isTableSchema:!0},f]}),"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>e.SUBRULE(e.indexClause),"ALT")}]),e.AT_LEAST_ONE1(()=>e.CONSUME1(m))}),e.sectionStack.pop(),e.CONSUME(U),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(nx,"tableDeclaration");function ax(e){return()=>{let t=!1,o=!1,n=!1,i=!1,s=!1,c=!1,l=!1,p=!1,f=!1;e.sectionStack.push("tableTriggerDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let d=e.CONSUME(Lu);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.commentBlockFn),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0;let T=e.CONSUME(gu);e.CONSUME(h),e.SUBRULE(e.objectAttrReq,{ARGS:[T,[],["delete","insert","truncate","update"],{types:{delete:"boolean",insert:"boolean",truncate:"boolean",update:"boolean"}}]})},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.CONSUME(ku),e.CONSUME2(h),e.SUBRULE(e.booleanValue)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.CONSUME(Ru),e.CONSUME3(h),e.SUBRULE(e.arrayOfStringLiterals)},"ALT")},{GATE:r(()=>!i,"GATE"),ALT:r(()=>{i=!0,e.SUBRULE(e.dbTableClause)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.inputClause)},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.stackClause)},"ALT")},{GATE:r(()=>!f,"GATE"),ALT:r(()=>{f=!0,e.SUBRULE(e.tagsAttribute)},"ALT")}])}),i||e.addMissingError(d,"{} is missing table clause"),l||e.addMissingError(d,"{} is missing an input clause"),p||e.addMissingError(d,"{} is missing a stack clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(ax,"tableTriggerDeclaration");function ix(e){return()=>{let t=!1,o=!1,n=!1,i=!1,s=!1,c=!1,l=!1,p=!1,f=!1,d=[];e.sectionStack.push("taskDeclaration"),e.SUBRULE(e.optionalCommentBlockFn),e.CONSUME(Yo),e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.commentBlockFn),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.CONSUME(so),e.CONSUME(h),e.SUBRULE(e.booleanValue)},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.CONSUME(Cu),e.CONSUME2(h),e.CONSUME2(E)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!i,"GATE"),ALT:r(()=>{i=!0,e.SUBRULE(e.docsFieldAttribute)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.middlewareClause)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.scheduleClause)},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.stackClause)},"ALT")},{GATE:r(()=>!f,"GATE"),ALT:r(()=>{f=!0,e.SUBRULE(e.tagsAttribute)},"ALT")},{ALT:r(()=>{e.SUBRULE(e.testClause,{ARGS:[d]})},"ALT")}])}),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(ix,"taskDeclaration");function sx(e){return()=>{let t=!1,o=!1,n=!1,i=!1,s=!1,c=!1,l=!1,p=!1,f=!1;e.sectionStack.push("toolDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let d=e.CONSUME(cr);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.commentBlockFn),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.SUBRULE(e.docsFieldAttribute)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!i,"GATE"),ALT:r(()=>{i=!0,e.SUBRULE(e.inputClause)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.flexibleStringClause,{ARGS:[ol]})},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.middlewareClause)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.responseClause)},"ALT")},{GATE:r(()=>!p,"GATE"),ALT:r(()=>{p=!0,e.SUBRULE(e.stackClause,{ARGS:[{allowCallStatements:!0}]})},"ALT")},{GATE:r(()=>!f,"GATE"),ALT:r(()=>{f=!0,e.SUBRULE(e.tagsAttribute)},"ALT")}])}),i||e.addMissingError(d,"{} is missing an input clause"),p||e.addMissingError(d,"{} is missing a stack clause"),l||e.addMissingError(d,"{} is missing a response clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(sx,"toolDeclaration");function cx(e){return()=>{let t=!1,o=!1,n=!1,i=!1;e.sectionStack.push("workflowTestDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let s=e.CONSUME(Ap);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.commentBlockFn),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0,e.CONSUME(Ko),e.CONSUME(h),e.CONSUME2(E)},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.stackClause,{ARGS:[{allowExpectStatements:!0,allowCallStatements:!0}]})},"ALT")},{GATE:r(()=>!i,"GATE"),ALT:r(()=>{i=!0,e.SUBRULE(e.tagsAttribute)},"ALT")}])}),n||e.addMissingError(s,"{} is missing a stack clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(cx,"workflowTestDeclaration");function lx(e){return()=>{e.sectionStack.push("workspaceDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let t=e.CONSUME(Up);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]),e.SUBRULE(e.schemaParseAttributeFn,{ARGS:[t,{"env?":{"[string]":"[string]"},"acceptance?":{"ai_terms?":"[boolean]"},"description?":"[string]","preferences?":{"internal_docs?":"[boolean]","sql_columns?":"[boolean]","sql_names?":"[boolean]","track_performance?":"[boolean]"},"realtime?":{"canonical?":"[string]"}}]}),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(lx,"workspaceDeclaration");function ux(e){return()=>{let t=!1,o=!1,n=!1,i=!1,s=!1,c=!1,l=!1;e.sectionStack.push("workspaceTriggerDeclaration"),e.SUBRULE(e.optionalCommentBlockFn);let p=e.CONSUME(Rp);e.OR([{ALT:r(()=>e.CONSUME(E),"ALT")},{ALT:r(()=>e.CONSUME(a),"ALT")}]),e.CONSUME(A),e.MANY(()=>{e.AT_LEAST_ONE(()=>e.CONSUME(m)),e.OR2([{ALT:r(()=>e.SUBRULE(e.commentBlockFn),"ALT")},{GATE:r(()=>!t,"GATE"),ALT:r(()=>{t=!0;let f=e.CONSUME(gp);e.CONSUME(h),e.SUBRULE(e.objectAttrReq,{ARGS:[f,[],["branch_live","branch_merge","branch_new"],{types:{branch_live:"boolean",branch_merge:"boolean",branch_new:"boolean"}}]})},"ALT")},{GATE:r(()=>!o,"GATE"),ALT:r(()=>{o=!0,e.CONSUME(kp),e.CONSUME2(h),e.SUBRULE(e.booleanValue)},"ALT")},{GATE:r(()=>!n,"GATE"),ALT:r(()=>{n=!0,e.SUBRULE(e.descriptionFieldAttribute)},"ALT")},{GATE:r(()=>!i,"GATE"),ALT:r(()=>{i=!0,e.SUBRULE(e.historyClause)},"ALT")},{GATE:r(()=>!s,"GATE"),ALT:r(()=>{s=!0,e.SUBRULE(e.inputClause)},"ALT")},{GATE:r(()=>!c,"GATE"),ALT:r(()=>{c=!0,e.SUBRULE(e.stackClause)},"ALT")},{GATE:r(()=>!l,"GATE"),ALT:r(()=>{l=!0,e.SUBRULE(e.tagsAttribute)},"ALT")}])}),s||e.addMissingError(p,"{} is missing an input clause"),c||e.addMissingError(p,"{} is missing a stack clause"),e.MANY1(()=>e.CONSUME1(m)),e.CONSUME(U),e.MANY2(()=>e.CONSUME2(m)),e.sectionStack.pop()}}r(ux,"workspaceTriggerDeclaration");var px=r(e=>{WL(e),aU(e),yA(e),aL(e),XL(e),ZA(e),e.addonDeclaration=e.RULE("addonDeclaration",EA(e)),e.agentDeclaration=e.RULE("agentDeclaration",hA(e)),e.agentTriggerDeclaration=e.RULE("agentTriggerDeclaration",SA(e)),e.queryDeclaration=e.RULE("queryDeclaration",ZL(e)),e.apiGroupDeclaration=e.RULE("apiGroupDeclaration",AA(e)),e.branchDeclaration=e.RULE("branchDeclaration",MA(e)),e.tableDeclaration=e.RULE("tableDeclaration",nx(e)),e.mcpServerDeclaration=e.RULE("mcpServerDeclaration",YL(e)),e.mcpServerTriggerDeclaration=e.RULE("mcpServerTriggerDeclaration",KL(e)),e.middlewareDeclaration=e.RULE("middlewareDeclaration",QL(e)),e.realtimeTriggerDeclaration=e.RULE("realtimeTriggerDeclaration",ex(e)),e.realtimeChannelDeclaration=e.RULE("realtimeChannelDeclaration",$L(e)),e.runDeclaration=e.RULE("runDeclaration",tx(e)),e.runJobClause=e.RULE("runJobClause",rx(e)),e.runServiceClause=e.RULE("runServiceClause",ox(e)),e.tableTriggerDeclaration=e.RULE("tableTriggerDeclaration",ax(e)),e.taskDeclaration=e.RULE("taskDeclaration",ix(e)),e.toolDeclaration=e.RULE("toolDeclaration",sx(e)),e.workflowTestDeclaration=e.RULE("workflowTestDeclaration",cx(e)),e.workspaceDeclaration=e.RULE("workspaceDeclaration",lx(e)),e.workspaceTriggerDeclaration=e.RULE("workspaceTriggerDeclaration",ux(e)),e.functionDeclaration=e.RULE("functionDeclaration",iU(e))},"register");var kI={buildMismatchTokenMessage:Bt.buildMismatchTokenMessage,buildEarlyExitMessage:Bt.buildEarlyExitMessage,buildNotAllInputParsedMessage:Bt.buildNotAllInputParsedMessage,buildNoViableAltMessage:Bt.buildNoViableAltMessage},$p=class extends Nn{static{r(this,"XanoBaseParser")}constructor(t){super(t,{errorMessageProvider:kI,recoveryEnabled:!1}),px(this),this.sectionStack=[],this.warnings=[],this.reset()}functionAttrReq(){}addVariable(t,o,n=null){this.__symbolTable.var[t]={type:o,value:n}}addInput(t,o,n=!1,i=!1,s=!1){this.__symbolTable.input[t]={type:o,iterable:n,nullable:i,optional:s}}addWarning(t,o){o=o||this.LA(0),this.warnings.push({message:t,token:o})}addInformation(t,o){o=o||this.LA(0),this.informations.push({message:t,token:o})}addHint(t,o){o=o||this.LA(0),this.hints.push({message:t,token:o})}addMissingError(t,o){t=t||this.LA(0),this.SAVE_ERROR(new ke(o.replaceAll("{}",t.image),t))}addMissingAttributeError(t,o){t=t||this.LA(0),o=[].concat(o);let n=o.join(", "),i=o.length===1?`${t.image} is missing the ${n} attribute`:`${t.image} is missing the following attributes: ${n}`;this.SAVE_ERROR(new ke(i,t))}addIllegalAttributeError(t,o){t=t||this.LA(0),o||(o=`Attribute \`${t.image}\` is not allowed`),this.SAVE_ERROR(new ke(o,t))}addExpectedValueTypeError(t,o){t=t||this.LA(0),this.SAVE_ERROR(new ke(`Expected value of \`${t.image}\` to be of type \`${o}\``,t))}addExpectedValueError(t,o){t=t||this.LA(0),b(o)&&o.length>1?this.SAVE_ERROR(new ke(`Expected value of \`${t.image}\` to be one of ${o.map(n=>`\`${n}\``).join(", ")}`,t)):this.SAVE_ERROR(new ke(`Expected value of \`${t.image}\` to be \`${o}\``,t))}addDuplicateAttributeError(t){t=t||this.LA(0),this.SAVE_ERROR(new ke(`Duplicate attribute \`${t.image}\``,t))}addDuplicateNameError(t,o){t=t||this.LA(0),o?this.SAVE_ERROR(new ke(`Duplicate ${o} name '${t.image}'`,t)):this.SAVE_ERROR(new ke(`Duplicate name '${t.image}'`,t))}addInvalidValueError(t,o){t=t||this.LA(0),this.SAVE_ERROR(new ke(o,t))}requireRules(...t){for(let o of t){if(typeof o!="function")throw new Error(`requireRules only accepts functions, ${typeof o} given`);Object.hasOwn(this,o.name)||(this[o.name]=this.RULE(o.name,o(this)))}}reset(){super.reset(),this.sectionStack=[],this.warnings=[],this.informations=[],this.hints=[],this.__symbolTable={input:{},var:{},auth:{},env:{}}}};function mx(e,t,o=null){t||(t=Xp(e));let n=o||TA(e);switch(G.input=n.tokens,t.toLowerCase()){case"addon":return G.addonDeclaration(),G;case"agent":return G.agentDeclaration(),G;case"agent_trigger":return G.agentTriggerDeclaration(),G;case"api":return G.queryDeclaration(),G;case"api_group":return G.apiGroupDeclaration(),G;case"branch":return G.branchDeclaration(),G;case"db":return G.tableDeclaration(),G;case"mcp_server":return G.mcpServerDeclaration(),G;case"mcp_server_trigger":return G.mcpServerTriggerDeclaration(),G;case"middleware":return G.middlewareDeclaration(),G;case"realtime_trigger":return G.realtimeTriggerDeclaration(),G;case"realtime_channel":return G.realtimeChannelDeclaration(),G;case"run":return G.runDeclaration(),G;case"table_trigger":return G.tableTriggerDeclaration(),G;case"task":return G.taskDeclaration(),G;case"tool":return G.toolDeclaration(),G;case"workflow_test":return G.workflowTestDeclaration(),G;case"workspace":return G.workspaceDeclaration(),G;case"workspace_trigger":return G.workspaceTriggerDeclaration(),G;case"cfn":default:return G.functionDeclaration(),G}}r(mx,"xanoscriptParser");var ef=class extends $p{static{r(this,"XanoScriptParser")}constructor(){super(Xo),this.performSelfAnalysis()}},G=new ef;function fx(e,t){let o=Xp(t??e);try{let n=mx(e,o);return n.errors.length===0?[]:n.errors.map(s=>{let c=s.token?.startOffset??0,l=s.token?.endOffset??5,p=e.substring(0,c).split(`
110
+ `),f=p.length-1,d=p[p.length-1].length,T=e.substring(0,l+1).split(`
111
+ `),S=T.length-1,g=T[T.length-1].length;return{range:{start:{line:f,character:d},end:{line:S,character:g}},message:s.message,source:s.name||"XanoScript Parser"}})}catch(n){console.error("Error checking for XanoScripterrors:",n)}}r(fx,"onCheckError");function RI(e,t){return fx(e,t)}r(RI,"checkError");window.xsLanguageServer={checkError:RI};})();
112
112
  /*! Bundled license information:
113
113
 
114
- lodash-es/lodash.js:
115
- lodash-es/lodash.js:
116
114
  lodash-es/lodash.js:
117
115
  (**
118
116
  * @license