@mc-wiki/snbt
Version:
A library for parsing SNBT (Stringified NBT) format
1 lines • 43 kB
JavaScript
function push(t,e,r){t.push({start:e.start.offset,end:e.end.offset,type:r})}function peg$subclass$1(t,e){function r(){this.constructor=t}r.prototype=e.prototype,t.prototype=new r}function peg$SyntaxError$1(t,e,r,n){t=Error.call(this,t);return Object.setPrototypeOf&&Object.setPrototypeOf(t,peg$SyntaxError$1.prototype),t.expected=e,t.found=r,t.location=n,t.name="SyntaxError",t}function peg$padEnd$1(t,e,r){return r=r||" ",t.length>e?t:t+(r+=r.repeat(e-=t.length)).slice(0,e)}function peg$parse$1(l,t){let e=[];var c={},O=(t=void 0!==t?t:{}).grammarSource,r={literal:S},n=S,q="0",s=".",D="x",k="u",R="U",G="N",a="{",V="}",H="\\",i='"',f="'",h=",",j="(",z=")",M=":",X="[",Z=";",W="]",Y=/^[ \t\n\f\r\xA0\u2007\u202F\v\x1C-\x1F]/,J=/^[+\-]/,K=/^[BILSbils]/,Q=/^[.0-9\-+]/,tt=/^[uU]/,et=/^[sS]/,rt=/^[01_]/,nt=/^[0-9_]/,ut=/^[0-9a-fA-F_]/,ot=/^[xX]/,st=/^[bB]/,at=/^[fF]/,it=/^[dD]/,lt=/^[eE]/,ct=/^['"]/,ft=/^[0-9A-Fa-f]/,ht=/^[\-a-zA-Z0-9 ]/,pt=/^[bstnfr\\'"]/,gt=/^[^"'\\]/,xt=/^[0-9A-Za-z_.+\-]/,dt=/^[{]/,vt=/^[[]/,At=/^[BLI]/,_t=y("literal"),bt=y("whitespace"),Pt=m([" ","\t","\n","\f","\r"," "," "," ","\v",["",""]],!1,!1),mt=y("sign"),yt=m(["+","-"],!1,!1),Ct=m(["B","I","L","S","b","i","l","s"],!1,!1),St=m([".",["0","9"],"-","+"],!1,!1),Et=y("integer_suffix"),It=m(["u","U"],!1,!1),Ft=m(["s","S"],!1,!1),$t=y("binary_numeral_char"),Bt=m(["0","1","_"],!1,!1),Nt=y("decimal_numeral_char"),Tt=m([["0","9"],"_"],!1,!1),wt=y("hex_numeral_char"),Lt=m([["0","9"],["a","f"],["A","F"],"_"],!1,!1),Ut=y("binary_numeral"),Ot=y("decimal_numeral"),qt=y("hex_numeral"),Dt=y("number_sequence"),kt=P("0",!1),Rt=m(["x","X"],!1,!1),Gt=m(["b","B"],!1,!1),Vt=y("integer_literal"),Ht=m(["f","F"],!1,!1),jt=m(["d","D"],!1,!1),zt=y("float_exponent_part"),Mt=m(["e","E"],!1,!1),Xt=y("float_whole_part"),Zt=y("float_fraction_part"),Wt=y("float_literal"),Yt=P(".",!1),Jt=m(["'",'"'],!1,!1),Kt=y("hexadecimal_literal"),Qt=m([["0","9"],["A","F"],["a","f"]],!1,!1),te=y("string_hex_2"),ee=y("string_hex_4"),re=y("string_hex_8"),ne=y("unicode_name"),ue=m(["-",["a","z"],["A","Z"],["0","9"]," "],!1,!1),oe=y("string_escape_sequence"),se=m(["b","s","t","n","f","r","\\","'",'"'],!1,!1),ae=P("x",!1),ie=P("u",!1),le=P("U",!1),ce=P("N",!1),fe=P("{",!1),he=P("}",!1),pe=y("string_plain_contents"),ge=m(['"',"'","\\"],!0,!1),xe=y("string_contents"),de=P("\\",!1),ve=y("single_quoted_string_chunk"),p=P('"',!1),Ae=y("single_quoted_string_contents"),_e=y("double_quoted_string_chunk"),g=P("'",!1),be=y("double_quoted_string_contents"),Pe=y("quoted_string_literal"),me=y("unquoted_string"),ye=m([["0","9"],["A","Z"],["a","z"],"_",".","+","-"],!1,!1),Ce=y("arguments"),x=P(",",!1),Se=y("unquoted_string_or_builtin"),Ee=P("(",!1),Ie=P(")",!1),Fe=m(["{"],!1,!1),$e=y("map_key"),Be=y("map_entry"),Ne=P(":",!1),Te=y("map_entries"),we=y("map_literal"),Le=m(["["],!1,!1),Ue=y("list_entries"),Oe=y("array_prefix"),qe=m(["B","L","I"],!1,!1),De=y("int_array_entries"),ke=y("list_literal"),Re=P("[",!1),Ge=P(";",!1),Ve=P("]",!1),He=function(){return e},je=function(){return e},ze=function(){return e},Me=function(){return e},Xe=function(){return e},Ze=function(){push(e,b(),"numberSuffix")},We=function(){push(e,b(),"numberSuffix")},Ye=function(){push(e,b(),"numberSuffix")},Je=function(){push(e,b(),"number")},Ke=function(){push(e,b(),"numberSuffix")},Qe=function(){push(e,b(),"numberSuffix")},tr=function(){push(e,b(),"number")},er=function(){push(e,b(),"number")},rr=function(){push(e,b(),"number")},nr=function(){push(e,b(),"number")},ur=function(){push(e,b(),"string")},or=function(){push(e,b(),"string")},sr=function(){push(e,b(),"operation")},ar=function(){push(e,b(),"string")},ir=function(){push(e,b(),"key")},lr=function(){push(e,b(),"key")},cr=function(){push(e,b(),"key")},fr=function(){push(e,b(),"arrayType")},d=0|t.peg$currPos,v=d,u=[{line:1,column:1}],o=d,A=t.peg$maxFailExpected||[],_=0|t.peg$silentFails;if(t.startRule){if(!(t.startRule in r))throw new Error("Can't start parsing from rule \""+t.startRule+'".');n=r[t.startRule]}function b(){return pr(v,d)}function P(t,e){return{type:"literal",text:t,ignoreCase:e}}function m(t,e,r){return{type:"class",parts:t,inverted:e,ignoreCase:r}}function y(t){return{type:"other",description:t}}function hr(t){var e,r=u[t];if(r)return r;if(t>=u.length)e=u.length-1;else for(e=t;!u[--e];);for(r={line:(r=u[e]).line,column:r.column};e<t;)10===l.charCodeAt(e)?(r.line++,r.column=1):r.column++,e++;return u[t]=r}function pr(t,e){var r=hr(t),n=hr(e);return{source:O,start:{offset:t,line:r.line,column:r.column},end:{offset:e,line:n.line,column:n.column}}}function C(t){d<o||(o<d&&(o=d,A=[]),A.push(t))}function S(){var t,e,r;return _++,e=t=d,_++,r=(()=>{var t;return t=l.charAt(d),Q.test(t)?d++:(t=c,0===_&&C(St)),t})(),_--,(t=(e=r!==c?void(d=e):c)!==c&&(r=(r=(()=>{var t,e,r,n,u,o;return _++,e=t=d,(r=I())===c&&(r=null),n=E(),e=(u=w())!==c&&(E(),46===l.charCodeAt(d)?(o=s,d++):(o=c,0===_&&C(Yt)),o!==c)?(E(),Ar(),E(),T(),v=e,tr()):(d=e,c),(t=e!==c?(r=E(),n=N(),e=[e,r,n=n===c?null:n]):(d=t,c))===c&&(e=t=d,(r=I())===c&&(r=null),n=E(),46===l.charCodeAt(d)?(u=s,d++):(u=c,0===_&&C(Yt)),e=u!==c&&(E(),(o=Ar())!==c)?(E(),T(),v=e,er()):(d=e,c),(t=e!==c?(r=E(),n=N(),e=[e,r,n=n===c?null:n]):(d=t,c))===c)&&(e=t=d,(r=I())===c&&(r=null),n=E(),u=w(),e=u!==c&&(E(),(o=T())!==c)?(v=e,rr()):(d=e,c),(t=e!==c?(r=E(),n=N(),e=[e,r,n=n===c?null:n]):(d=t,c))===c)&&(e=t=d,(r=I())===c&&(r=null),n=E(),u=w(),e=u!==c?(E(),(o=T())===c&&(o=null),v=e,nr()):(d=e,c),t=e!==c&&(r=E(),(n=N())!==c)?e=[e,r,n]:(d=t,c)),_--,t===c&&(e=c,0===_)&&C(Wt),t})())===c?B():r)!==c?(v=t,He()):(d=t,c))===c&&(e=t=d,_++,r=(()=>{var t;return t=l.charAt(d),ct.test(t)?d++:(t=c,0===_&&C(Jt)),t})(),_--,(t=(e=r!==c?void(d=e):c)!==c&&(r=(()=>{var t,e,r,n;return _++,t=d,34===l.charCodeAt(d)?(e=i,d++):(e=c,0===_&&C(p)),(t=e!==c&&(r=d,n=Cr(),v=r,n=ur(),r=n,34===l.charCodeAt(d)?(n=i,d++):(n=c,0===_&&C(p)),n!==c)?e=[e,r,n]:(d=t,c))===c&&(t=d,39===l.charCodeAt(d)?(e=f,d++):(e=c,0===_&&C(g)),t=e!==c&&(r=d,n=mr(),v=r,n=or(),r=n,39===l.charCodeAt(d)?(n=f,d++):(n=c,0===_&&C(g)),n!==c)?e=[e,r,n]:(d=t,c)),_--,t===c&&(e=c,0===_)&&C(Pe),t})())!==c?(v=t,je()):(d=t,c))===c)&&(e=t=d,_++,r=(()=>{var t;return t=l.charAt(d),dt.test(t)?d++:(t=c,0===_&&C(Fe)),t})(),_--,(t=(e=r!==c?void(d=e):c)!==c&&(r=(()=>{var t,e,r,n,u,o;return _++,t=d,123===l.charCodeAt(d)?(e=a,d++):(e=c,0===_&&C(fe)),t=e!==c&&(r=E(),(n=(()=>{var t,e,r,n,u,o,s,a;for(_++,e=t=d,r=[],n=Sr();n!==c;)r.push(n),u=n=d,o=E(),44===l.charCodeAt(d)?(s=h,d++):(s=c,0===_&&C(x)),u=s!==c?(a=E(),o=[o,s,a]):(d=u,c),n=u!==c&&(u=Sr())===c?(d=n,c):u;return e=r.length<1?(d=e,c):r,t=e!==c?(r=E(),44===l.charCodeAt(d)?(n=h,d++):(n=c,0===_&&C(x)),e=[e,r,n=n===c?null:n]):(d=t,c),_--,t===c&&(e=c,0===_)&&C(Te),t})())===c&&(n=null),u=E(),125===l.charCodeAt(d)?(o=V,d++):(o=c,0===_&&C(he)),o!==c)?e=[e,r,n,u,o]:(d=t,c),_--,t===c&&(e=c,0===_)&&C(we),t})())!==c?(v=t,ze()):(d=t,c))===c)&&(e=t=d,_++,r=(()=>{var t;return t=l.charAt(d),vt.test(t)?d++:(t=c,0===_&&C(Le)),t})(),_--,(t=(e=r!==c?void(d=e):c)!==c&&(r=(()=>{var t,e,r,n,u,o,s,a,i;return _++,t=d,91===l.charCodeAt(d)?(e=X,d++):(e=c,0===_&&C(Re)),t=e!==c&&(r=E(),n=d,u=(()=>{var t,e;return _++,t=d,e=l.charAt(d),At.test(e)?d++:(e=c,0===_&&C(qe)),e!==c&&(v=t,e=fr()),_--,(t=e)===c&&(e=c,0===_)&&C(Oe),t})(),(n=(n=u!==c&&(o=E(),59===l.charCodeAt(d)?(s=Z,d++):(s=c,0===_&&C(Ge)),s!==c)&&(a=E(),(i=(()=>{var t,e,r,n,u,o,s,a;for(_++,e=t=d,r=[],n=B();n!==c;)r.push(n),u=n=d,o=E(),44===l.charCodeAt(d)?(s=h,d++):(s=c,0===_&&C(x)),u=s!==c?(a=E(),o=[o,s,a]):(d=u,c),n=u!==c&&(u=B())===c?(d=n,c):u;return e=r.length<1?(d=e,c):r,t=e!==c?(r=E(),44===l.charCodeAt(d)?(n=h,d++):(n=c,0===_&&C(x)),e=[e,r,n=n===c?null:n]):(d=t,c),_--,t===c&&(e=c,0===_)&&C(De),t})())!==c)?u=[u,o,s,a,i]:(d=n,c))===c?(()=>{var t,e,r,n,u,o,s,a;for(_++,e=t=d,r=[],n=S();n!==c;)r.push(n),u=n=d,o=E(),44===l.charCodeAt(d)?(s=h,d++):(s=c,0===_&&C(x)),u=s!==c?(a=E(),o=[o,s,a]):(d=u,c),n=u!==c&&(u=S())===c?(d=n,c):u;return e=r.length<1?(d=e,c):r,t=e!==c?(r=E(),44===l.charCodeAt(d)?(n=h,d++):(n=c,0===_&&C(x)),e=[e,r,n=n===c?null:n]):(d=t,c),_--,t===c&&(e=c,0===_)&&C(Ue),t})():n)===c&&(n=null),u=E(),93===l.charCodeAt(d)?(o=W,d++):(o=c,0===_&&C(Ve)),o!==c)?e=[e,r,n,u,o]:(d=t,c),_--,t===c&&(e=c,0===_)&&C(ke),t})())!==c?(v=t,Me()):(d=t,c))===c)&&(t=d,(e=(()=>{var t,e,r,n,u,o,s,a;return _++,e=t=d,(r=U())!==c&&(v=e,r=sr()),(t=(e=r)!==c&&(r=E(),40===l.charCodeAt(d)?(n=j,d++):(n=c,0===_&&C(Ee)),n!==c)&&(u=E(),(o=(()=>{var t,e,r,n,u,o,s,a;for(_++,e=t=d,r=[],n=S();n!==c;)r.push(n),u=n=d,o=E(),44===l.charCodeAt(d)?(s=h,d++):(s=c,0===_&&C(x)),u=s!==c?(a=E(),o=[o,s,a]):(d=u,c),n=u!==c&&(u=S())===c?(d=n,c):u;return e=r.length<1?(d=e,c):r,t=e!==c?(r=E(),44===l.charCodeAt(d)?(n=h,d++):(n=c,0===_&&C(x)),e=[e,r,n=n===c?null:n]):(d=t,c),_--,t===c&&(e=c,0===_)&&C(Ce),t})())===c&&(o=null),s=E(),41===l.charCodeAt(d)?(a=z,d++):(a=c,0===_&&C(Ie)),a!==c)?e=[e,r,n,u,o,s,a]:(d=t,c))===c&&(t=d,(e=U())!==c&&(v=t,e=ar()),t=e),_--,t===c&&(e=c,0===_)&&C(Se),t})())!==c&&(v=t,e=Xe()),t=e),_--,t===c&&(e=c,0===_)&&C(_t),t}function E(){var t,e;for(_++,t=[],e=l.charAt(d),Y.test(e)?d++:(e=c,0===_&&C(Pt));e!==c;)t.push(e),e=l.charAt(d),Y.test(e)?d++:(e=c,0===_&&C(Pt));return e=c,0===--_&&C(bt),t}function I(){var t;return _++,t=l.charAt(d),J.test(t)?d++:(t=c,0===_&&C(yt)),_--,t===c&&0===_&&C(mt),t}function F(){var t=l.charAt(d);return K.test(t)?d++:(t=c,0===_&&C(Ct)),t}function gr(){var t;return _++,t=l.charAt(d),rt.test(t)?d++:(t=c,0===_&&C(Bt)),_--,t===c&&0===_&&C($t),t}function xr(){var t;return _++,t=l.charAt(d),nt.test(t)?d++:(t=c,0===_&&C(Tt)),_--,t===c&&0===_&&C(Nt),t}function dr(){var t;return _++,t=l.charAt(d),ut.test(t)?d++:(t=c,0===_&&C(Lt)),_--,t===c&&0===_&&C(wt),t}function $(){var t,e;if(_++,t=[],(e=xr())!==c)for(;e!==c;)t.push(e),e=xr();else t=c;return _--,t===c&&(e=c,0===_)&&C(Ot),t}function vr(){var t,e,r,n,u,o,s;return _++,t=d,48===l.charCodeAt(d)?(e=q,d++):(e=c,0===_&&C(kt)),(t=e!==c&&(r=E(),n=d,u=l.charAt(d),ot.test(u)?d++:(u=c,0===_&&C(Rt)),(n=u!==c&&(o=E(),(s=(()=>{var t,e;if(_++,t=[],(e=dr())!==c)for(;e!==c;)t.push(e),e=dr();else t=c;return _--,t===c&&(e=c,0===_)&&C(qt),t})())!==c)?u=[u,o,s]:(d=n,c))===c&&(n=d,u=l.charAt(d),st.test(u)?d++:(u=c,0===_&&C(Gt)),n=u!==c&&(o=E(),(s=(()=>{var t,e;if(_++,t=[],(e=gr())!==c)for(;e!==c;)t.push(e),e=gr();else t=c;return _--,t===c&&(e=c,0===_)&&C(Ut),t})())!==c)?u=[u,o,s]:(d=n,c)),n!==c)?e=[e,r,n]:(d=t,c))===c&&(t=$()),_--,t===c&&(e=c,0===_)&&C(Dt),t}function B(){var t,e,r,n,u;return _++,e=t=d,(r=I())===c&&(r=null),E(),t=(e=vr()!==c?(v=e,Je()):(d=e,c))!==c?(r=E(),_++,n=d,u=l.charAt(d),tt.test(u)?d++:(u=c,0===_&&C(It)),(n=u!==c?(E(),F(),v=n,Ze()):(d=n,c))===c&&(n=d,u=l.charAt(d),et.test(u)?d++:(u=c,0===_&&C(Ft)),(n=u!==c?(E(),F(),v=n,We()):(d=n,c))===c)&&(n=d,(u=F())!==c&&(v=n,u=Ye()),n=u),_--,n===c&&(u=c,0===_)&&C(Et),e=[e,r,n===c?null:n]):(d=t,c),_--,t===c&&(e=c,0===_)&&C(Vt),t}function N(){var t=d,e=l.charAt(d);return at.test(e)?d++:(e=c,0===_&&C(Ht)),e!==c&&(v=t,e=Ke()),(t=e)===c&&(t=d,e=l.charAt(d),it.test(e)?d++:(e=c,0===_&&C(jt)),e!==c&&(v=t,e=Qe()),t=e),t}function T(){var t,e,r,n,u,o;return _++,t=d,e=l.charAt(d),lt.test(e)?d++:(e=c,0===_&&C(Mt)),t=e!==c&&(r=E(),(n=I())===c&&(n=null),u=E(),(o=$())!==c)?e=[e,r,n,u,o]:(d=t,c),_--,t===c&&(e=c,0===_)&&C(zt),t}function w(){var t;return _++,t=$(),_--,t===c&&0===_&&C(Xt),t}function Ar(){var t;return _++,t=$(),_--,t===c&&0===_&&C(Zt),t}function L(){var t;return _++,t=l.charAt(d),ft.test(t)?d++:(t=c,0===_&&C(Qt)),_--,t===c&&0===_&&C(Kt),t}function _r(){var t,e,r,n,u;return _++,t=l.charAt(d),pt.test(t)?d++:(t=c,0===_&&C(se)),t===c&&(t=d,120===l.charCodeAt(d)?(e=D,d++):(e=c,0===_&&C(ae)),(t=e!==c&&(r=(()=>{var t,e,r;for(_++,t=d,e=[],r=L();r!==c;)e.push(r),r=2<=e.length?c:L();return t=e.length<2?(d=t,c):e,_--,t===c&&(e=c,0===_)&&C(te),t})())!==c?e=[e,r]:(d=t,c))===c)&&(t=d,117===l.charCodeAt(d)?(e=k,d++):(e=c,0===_&&C(ie)),(t=e!==c&&(r=(()=>{var t,e,r;for(_++,t=d,e=[],r=L();r!==c;)e.push(r),r=4<=e.length?c:L();return t=e.length<4?(d=t,c):e,_--,t===c&&(e=c,0===_)&&C(ee),t})())!==c?e=[e,r]:(d=t,c))===c)&&(t=d,85===l.charCodeAt(d)?(e=R,d++):(e=c,0===_&&C(le)),(t=e!==c&&(r=(()=>{var t,e,r;for(_++,t=d,e=[],r=L();r!==c;)e.push(r),r=8<=e.length?c:L();return t=e.length<8?(d=t,c):e,_--,t===c&&(e=c,0===_)&&C(re),t})())!==c?e=[e,r]:(d=t,c))===c)&&(t=d,78===l.charCodeAt(d)?(e=G,d++):(e=c,0===_&&C(ce)),t=e!==c&&(123===l.charCodeAt(d)?(r=a,d++):(r=c,0===_&&C(fe)),r!==c)&&(n=(()=>{var t,e;if(_++,t=[],e=l.charAt(d),ht.test(e)?d++:(e=c,0===_&&C(ue)),e!==c)for(;e!==c;)t.push(e),e=l.charAt(d),ht.test(e)?d++:(e=c,0===_&&C(ue));else t=c;return _--,t===c&&(e=c,0===_)&&C(ne),t})())!==c&&(125===l.charCodeAt(d)?(u=V,d++):(u=c,0===_&&C(he)),u!==c)?e=[e,r,n,u]:(d=t,c)),_--,t===c&&(e=c,0===_)&&C(oe),t}function br(){var t,e,r;return _++,(t=(()=>{var t,e;if(_++,t=[],e=l.charAt(d),gt.test(e)?d++:(e=c,0===_&&C(ge)),e!==c)for(;e!==c;)t.push(e),e=l.charAt(d),gt.test(e)?d++:(e=c,0===_&&C(ge));else t=c;return _--,t===c&&(e=c,0===_)&&C(pe),t})())===c&&(t=d,92===l.charCodeAt(d)?(e=H,d++):(e=c,0===_&&C(de)),t=e!==c&&(r=_r())!==c?e=[e,r]:(d=t,c)),_--,t===c&&(e=c,0===_)&&C(xe),t}function Pr(){var t;return _++,(t=br())===c&&(34===l.charCodeAt(d)?(t=i,d++):(t=c,0===_&&C(p))),_--,t===c&&0===_&&C(ve),t}function mr(){var t,e;for(_++,t=[],e=Pr();e!==c;)t.push(e),e=Pr();return e=c,0===--_&&C(Ae),t}function yr(){var t;return _++,(t=br())===c&&(39===l.charCodeAt(d)?(t=f,d++):(t=c,0===_&&C(g))),_--,t===c&&0===_&&C(_e),t}function Cr(){var t,e;for(_++,t=[],e=yr();e!==c;)t.push(e),e=yr();return e=c,0===--_&&C(be),t}function U(){var t,e;if(_++,t=[],e=l.charAt(d),xt.test(e)?d++:(e=c,0===_&&C(ye)),e!==c)for(;e!==c;)t.push(e),e=l.charAt(d),xt.test(e)?d++:(e=c,0===_&&C(ye));else t=c;return _--,t===c&&(e=c,0===_)&&C(me),t}function Sr(){var t,e,r,n,u,o;return _++,_++,r=t=d,34===l.charCodeAt(d)?(n=i,d++):(n=c,0===_&&C(p)),(r=n!==c&&(u=d,o=Cr(),v=u,u=o=ir(),34===l.charCodeAt(d)?(o=i,d++):(o=c,0===_&&C(p)),o!==c)?n=[n,u,o]:(d=r,c))===c&&(r=d,39===l.charCodeAt(d)?(n=f,d++):(n=c,0===_&&C(g)),(r=n!==c&&(u=d,o=mr(),v=u,u=o=lr(),39===l.charCodeAt(d)?(o=f,d++):(o=c,0===_&&C(g)),o!==c)?n=[n,u,o]:(d=r,c))===c)&&(r=d,(n=U())!==c&&(v=r,n=cr()),r=n),_--,r===c&&(n=c,0===_)&&C($e),t=(u=r)!==c&&(o=E(),58===l.charCodeAt(d)?(e=M,d++):(e=c,0===_&&C(Ne)),e!==c)&&(n=E(),(r=S())!==c)?u=[u,o,e,n,r]:(d=t,c),_--,t===c&&(u=c,0===_)&&C(Be),t}if(r=n(),t.peg$library)return{peg$result:r,peg$currPos:d,peg$FAILED:c,peg$maxFailExpected:A,peg$maxFailPos:o};if(r!==c&&d===l.length)return r;throw r!==c&&d<l.length&&C({type:"end"}),n=A,t=o<l.length?l.charAt(o):null,r=pr(o,o<l.length?o+1:o),new peg$SyntaxError$1(peg$SyntaxError$1.buildMessage(n,t),n,t,r)}peg$subclass$1(peg$SyntaxError$1,Error),peg$SyntaxError$1.prototype.format=function(t){var e="Error: "+this.message;if(this.location){for(var r=null,n=0;n<t.length;n++)if(t[n].source===this.location.source){r=t[n].text.split(/\r\n|\n|\r/g);break}var u,o,s,a=this.location.start,i=this.location.source&&"function"==typeof this.location.source.offset?this.location.source.offset(a):a,l=this.location.source+":"+i.line+":"+i.column;r?(s=this.location.end,u=peg$padEnd$1("",i.line.toString().length," "),o=r[a.line-1],s=(a.line===s.line?s.column:o.length+1)-a.column||1,e+="\n --\x3e "+l+"\n"+u+" |\n"+i.line+" | "+o+"\n"+u+" | "+peg$padEnd$1("",a.column-1," ")+peg$padEnd$1("",s,"^")):e+="\n at "+l}return e},peg$SyntaxError$1.buildMessage=function(t,e){var r={literal:function(t){return'"'+u(t.text)+'"'},class:function(t){var e=t.parts.map(function(t){return Array.isArray(t)?o(t[0])+"-"+o(t[1]):o(t)});return"["+(t.inverted?"^":"")+e.join("")+"]"},any:function(){return"any character"},end:function(){return"end of input"},other:function(t){return t.description}};function n(t){return t.charCodeAt(0).toString(16).toUpperCase()}function u(t){return t.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(t){return"\\x0"+n(t)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(t){return"\\x"+n(t)})}function o(t){return t.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(t){return"\\x0"+n(t)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(t){return"\\x"+n(t)})}function s(t){return r[t.type](t)}return"Expected "+(t=>{var e,r,n=t.map(s);if(n.sort(),0<n.length){for(r=e=1;e<n.length;e++)n[e-1]!==n[e]&&(n[r]=n[e],r++);n.length=r}switch(n.length){case 1:return n[0];case 2:return n[0]+" or "+n[1];default:return n.slice(0,-1).join(", ")+", or "+n[n.length-1]}})(t)+" but "+((t=e)?'"'+u(t)+'"':"end of input")+" found."};class IntegerValue{value;signed;type;resolved=!1;constructor(t,e,r){this.value=t,this.signed=e,this.type=r}_resolve(t,e){if(!this.resolved){t=this.type??t??"int",t=base.getBitsForInteger(t);if(this.signed){if(this.value>(1n<<t-1n)-1n||this.value<-(1n<<t-1n))return e?.("Value out of range."),this}else if(this.value>(1n<<t)-1n||this.value<0n)return e?.("Value out of range."),this;this.value=BigInt.asIntN(Number(t),this.value),this.resolved=!0}return this}}class FloatValue{value;type}class IntegerList{values;type}function createInteger(t,e,r){return new IntegerValue(BigInt(t),e??!0,r??null)._resolve()}function createFloat(t,e){var r;return"float"===e&&((r=new Float32Array(new ArrayBuffer(4)))[0]=t,t=r[0]),{value:t,type:e??"double"}}var base;function peg$subclass(t,e){function r(){this.constructor=t}r.prototype=e.prototype,t.prototype=new r}function peg$SyntaxError(t,e,r,n){t=Error.call(this,t);return Object.setPrototypeOf&&Object.setPrototypeOf(t,peg$SyntaxError.prototype),t.expected=e,t.found=r,t.location=n,t.name="SyntaxError",t}function peg$padEnd(t,e,r){return r=r||" ",t.length>e?t:t+(r+=r.repeat(e-=t.length)).slice(0,e)}function peg$parse(l,t){var c={},O=(t=void 0!==t?t:{}).grammarSource,e={literal:E},r=E,q="0",a=".",D="b",k="s",R="t",G="n",V="f",H="r",o="\\",s="'",i='"',j="x",z="u",M="U",X="N",f="{",Z="}",h=",",W="(",Y=")",J=":",K="[",Q=";",tt="]",et=/^[ \t\n\f\r\xA0\u2007\u202F\v\x1C-\x1F]/,rt=/^[+\-]/,nt=/^[BILSbils]/,ut=/^[.0-9\-+]/,ot=/^[uU]/,st=/^[sS]/,at=/^[01_]/,it=/^[0-9_]/,lt=/^[0-9a-fA-F_]/,ct=/^[xX]/,ft=/^[bB]/,ht=/^[DFdf]/,pt=/^[eE]/,gt=/^['"]/,xt=/^[0-9A-Fa-f]/,dt=/^[\-a-zA-Z0-9 ]/,vt=/^[^"'\\]/,At=/^[0-9A-Za-z_.+\-]/,_t=/^[{]/,bt=/^[[]/,Pt=/^[BLI]/,mt=C("literal"),yt=C("whitespace"),Ct=y([" ","\t","\n","\f","\r"," "," "," ","\v",["",""]],!1,!1),St=C("sign"),Et=y(["+","-"],!1,!1),It=y(["B","I","L","S","b","i","l","s"],!1,!1),Ft=y([".",["0","9"],"-","+"],!1,!1),$t=C("integer_suffix"),Bt=y(["u","U"],!1,!1),Nt=y(["s","S"],!1,!1),Tt=C("binary_numeral_char"),wt=y(["0","1","_"],!1,!1),Lt=C("decimal_numeral_char"),Ut=y([["0","9"],"_"],!1,!1),Ot=C("hex_numeral_char"),qt=y([["0","9"],["a","f"],["A","F"],"_"],!1,!1),Dt=C("binary_numeral"),kt=C("decimal_numeral"),Rt=C("hex_numeral"),Gt=C("number_sequence"),Vt=m("0",!1),Ht=y(["x","X"],!1,!1),jt=y(["b","B"],!1,!1),zt=C("integer_literal"),Mt=y(["D","F","d","f"],!1,!1),Xt=C("float_exponent_part"),Zt=y(["e","E"],!1,!1),Wt=C("float_whole_part"),Yt=C("float_fraction_part"),Jt=C("float_sequence"),Kt=m(".",!1),Qt=C("float_literal"),te=y(["'",'"'],!1,!1),ee=C("hexadecimal_literal"),re=y([["0","9"],["A","F"],["a","f"]],!1,!1),ne=C("string_hex_2"),ue=C("string_hex_4"),oe=C("string_hex_8"),se=C("unicode_name"),ae=y(["-",["a","z"],["A","Z"],["0","9"]," "],!1,!1),ie=C("string_escape_sequence"),le=m("b",!1),ce=m("s",!1),fe=m("t",!1),he=m("n",!1),pe=m("f",!1),ge=m("r",!1),xe=m("\\",!1),p=m("'",!1),g=m('"',!1),de=m("x",!1),ve=m("u",!1),Ae=m("U",!1),_e=m("N",!1),be=m("{",!1),Pe=m("}",!1),me=C("string_plain_contents"),ye=y(['"',"'","\\"],!0,!1),Ce=C("string_contents"),Se=C("single_quoted_string_chunk"),Ee=C("single_quoted_string_contents"),Ie=C("double_quoted_string_chunk"),Fe=C("double_quoted_string_contents"),$e=C("quoted_string_literal"),Be=C("unquoted_string"),Ne=y([["0","9"],["A","Z"],["a","z"],"_",".","+","-"],!1,!1),Te=C("arguments"),x=m(",",!1),we=C("unquoted_string_or_builtin"),Le=m("(",!1),Ue=m(")",!1),Oe=y(["{"],!1,!1),qe=C("map_key"),De=C("map_entry"),ke=m(":",!1),Re=C("map_entries"),Ge=C("map_literal"),Ve=y(["["],!1,!1),He=C("list_entries"),je=C("array_prefix"),ze=y(["B","L","I"],!1,!1),Me=C("int_array_entries"),Xe=C("list_literal"),Ze=m("[",!1),We=m(";",!1),Ye=m("]",!1),Je=function(t){return t._resolve?t._resolve():t},Ke=function(t){return t},Qe=function(t){return t},tr=function(t){return t},er=function(t){return{signed:base.SignedPrefix.UNSIGNED,type:base.convertToIntTypeSuffix(t)}},rr=function(t){return{signed:base.SignedPrefix.SIGNED,type:base.convertToIntTypeSuffix(t)}},nr=function(t){return{signed:null,type:base.convertToIntTypeSuffix(t)}},ur=function(t){return base.checkNum(t,P)},or=function(t){return base.checkNum(t,P)},sr=function(t){return base.checkNum(t,P)},ar=function(t){return{base:base.Base.HEX,value:t}},ir=function(t){return{base:base.Base.BIN,value:t}},lr=function(t){return t},cr=function(t){return t.startsWith("0")&&1!==t.length&&P("Leading zeros are not allowed"),{base:base.Base.DEC,value:t}},fr=function(t,e,r){return base.convertNum({sign:t||base.Sign.PLUS,suffix:r,...e},P)},hr=function(t,e){return{sign:t||base.Sign.PLUS,value:e}},pr=function(t,e,r,n){return{integer:t,frac:e,exp:r,suf:base.convertToFloatTypeSuffix(n)}},gr=function(t,e,r){return{integer:"0",frac:t,exp:e,suf:base.convertToFloatTypeSuffix(r)}},xr=function(t,e,r){return{integer:t,frac:"0",exp:e,suf:base.convertToFloatTypeSuffix(r)}},dr=function(t,e,r){return{integer:t,frac:"0",exp:e,suf:base.convertToFloatTypeSuffix(r)}},vr=function(t,e){return base.convertFloat({sign:t||base.Sign.PLUS,...e},P)},Ar=function(){return"\b"},_r=function(){return" "},br=function(){return"\t"},Pr=function(){return"\n"},mr=function(){return"\f"},yr=function(){return"\r"},Cr=function(){return"\\"},Sr=function(){return"'"},Er=function(){return'"'},Ir=function(t){return base.convertHexString(t,P)},Fr=function(t){return base.convertHexString(t,P)},$r=function(t){return base.convertHexString(t,P)},Br=function(t){return base.convertUnicodeNameString(t,P)},Nr=function(t){return t},Tr=function(t){return t.join("")},wr=function(t){return t.join("")},Lr=function(t){return t},Ur=function(t,e){return e},Or=function(t,e){return base.convertUnquotedOrBuiltin(t,e,P)},qr=function(t,e){return{[t]:e}},Dr=function(t){return t},kr=function(t){return t?.reduce((t,e)=>({...t,...e}),{})??{}},Rr=function(t){return t},Gr=function(t){return t},Vr=function(t,e){return base.convertIntList(t,e,P)},Hr=function(t){return t??[]},d=0|t.peg$currPos,v=d,n=[{line:1,column:1}],u=d,A=t.peg$maxFailExpected||[],_=0|t.peg$silentFails,b={};if(t.startRule){if(!(t.startRule in e))throw new Error("Can't start parsing from rule \""+t.startRule+'".');r=e[t.startRule]}function P(t,e){throw e=void 0!==e?e:zr(v,d),new peg$SyntaxError(t,null,null,e)}function m(t,e){return{type:"literal",text:t,ignoreCase:e}}function y(t,e,r){return{type:"class",parts:t,inverted:e,ignoreCase:r}}function C(t){return{type:"other",description:t}}function jr(t){var e,r=n[t];if(r)return r;if(t>=n.length)e=n.length-1;else for(e=t;!n[--e];);for(r={line:(r=n[e]).line,column:r.column};e<t;)10===l.charCodeAt(e)?(r.line++,r.column=1):r.column++,e++;return n[t]=r}function zr(t,e){var r=jr(t),n=jr(e);return{source:O,start:{offset:t,line:r.line,column:r.column},end:{offset:e,line:n.line,column:n.column}}}function S(t){d<u||(u<d&&(u=d,A=[]),A.push(t))}function E(){var t,e,r=47*d+0,n=b[r];return n?(d=n.nextPos,n.result):(_++,t=n=d,_++,e=(()=>{var t=47*d+4,e=b[t];return e?(d=e.nextPos,e.result):(e=l.charAt(d),ut.test(e)?d++:(e=c,0===_&&S(Ft)),b[t]={nextPos:d,result:e},e)})(),_--,(n=(t=e!==c?void(d=t):c)!==c&&(e=(e=(()=>{var t,e,r=47*d+19,n=b[r];return n?(d=n.nextPos,n.result):(_++,n=d,(t=F())===c&&(t=null),I(),n=(e=(()=>{var t,e,r,n,u,o=47*d+18,s=b[o];return s?(d=s.nextPos,s.result):(_++,s=d,(s=(t=L())!==c&&(I(),46===l.charCodeAt(d)?(e=a,d++):(e=c,0===_&&S(Kt)),e!==c)?(I(),(r=Yr())===c&&(r=null),I(),(n=w())===c&&(n=null),I(),u=T(),v=s,pr(t,r,n,u=u===c?null:u)):(d=s,c))===c&&(s=d,46===l.charCodeAt(d)?(t=a,d++):(t=c,0===_&&S(Kt)),(s=t!==c&&(I(),(e=Yr())!==c)?(I(),(r=w())===c&&(r=null),I(),n=T(),v=s,gr(e,r,n=n===c?null:n)):(d=s,c))===c)&&(s=d,t=L(),(s=t!==c&&(I(),(e=w())!==c)?(I(),r=T(),v=s,xr(t,e,r=r===c?null:r)):(d=s,c))===c)&&(s=d,t=L(),s=t!==c&&(I(),(e=w())===c&&(e=null),I(),(r=T())!==c)?(v=s,dr(t,e,r)):(d=s,c)),_--,s===c&&(t=c,0===_)&&S(Jt),b[o]={nextPos:d,result:s},s)})())!==c?(v=n,vr(t,e)):(d=n,c),_--,n===c&&(t=c,0===_)&&S(Qt),b[r]={nextPos:d,result:n},n)})())===c?N():e)!==c?(v=n,Je(e)):(d=n,c))===c&&(t=n=d,_++,e=(()=>{var t=47*d+20,e=b[t];return e?(d=e.nextPos,e.result):(e=l.charAt(d),gt.test(e)?d++:(e=c,0===_&&S(te)),b[t]={nextPos:d,result:e},e)})(),_--,(n=(t=e!==c?void(d=t):c)!==c&&(e=en())!==c?(v=n,Ke(e)):(d=n,c))===c)&&(t=n=d,_++,e=(()=>{var t=47*d+37,e=b[t];return e?(d=e.nextPos,e.result):(e=l.charAt(d),_t.test(e)?d++:(e=c,0===_&&S(Oe)),b[t]={nextPos:d,result:e},e)})(),_--,(n=(t=e!==c?void(d=t):c)!==c&&(e=(()=>{var t,e,r,n=47*d+41,u=b[n];return u?(d=u.nextPos,u.result):(_++,u=d,123===l.charCodeAt(d)?(t=f,d++):(t=c,0===_&&S(be)),u=t!==c&&(I(),(e=(()=>{var t,e,r,n,u,o,s,a=47*d+40,i=b[a];if(i)return d=i.nextPos,i.result;for(_++,t=i=d,e=[],r=nn();r!==c;)e.push(r),n=r=d,u=I(),44===l.charCodeAt(d)?(o=h,d++):(o=c,0===_&&S(x)),n=o!==c?(s=I(),u=[u,o,s]):(d=n,c),r=n!==c&&(n=nn())===c?(d=r,c):n;return t=e.length<1?(d=t,c):e,i=t!==c?(e=I(),44===l.charCodeAt(d)?(r=h,d++):(r=c,0===_&&S(x)),r===c&&(r=null),v=i,Dr(t)):(d=i,c),_--,i===c&&(t=c,0===_)&&S(Re),b[a]={nextPos:d,result:i},i})())===c&&(e=null),I(),125===l.charCodeAt(d)?(r=Z,d++):(r=c,0===_&&S(Pe)),r!==c)?(v=u,kr(e)):(d=u,c),_--,u===c&&(t=c,0===_)&&S(Ge),b[n]={nextPos:d,result:u},u)})())!==c?(v=n,Qe(e)):(d=n,c))===c)&&(t=n=d,_++,e=(()=>{var t=47*d+42,e=b[t];return e?(d=e.nextPos,e.result):(e=l.charAt(d),bt.test(e)?d++:(e=c,0===_&&S(Ve)),b[t]={nextPos:d,result:e},e)})(),_--,(n=(t=e!==c?void(d=t):c)!==c&&(e=(()=>{var t,e,r,n,u,o=47*d+46,s=b[o];return s?(d=s.nextPos,s.result):(_++,s=d,91===l.charCodeAt(d)?(t=K,d++):(t=c,0===_&&S(Ze)),s=t!==c&&(I(),e=d,r=(()=>{var t=47*d+44,e=b[t];return e?(d=e.nextPos,e.result):(_++,e=l.charAt(d),Pt.test(e)?d++:(e=c,0===_&&S(ze)),_--,e===c&&0===_&&S(je),b[t]={nextPos:d,result:e},e)})(),(e=(e=r!==c&&(n=I(),59===l.charCodeAt(d)?(u=Q,d++):(u=c,0===_&&S(We)),u!==c)&&(I(),(u=(()=>{var t,e,r,n,u,o,s,a=47*d+45,i=b[a];if(i)return d=i.nextPos,i.result;for(_++,t=i=d,e=[],r=N();r!==c;)e.push(r),n=r=d,u=I(),44===l.charCodeAt(d)?(o=h,d++):(o=c,0===_&&S(x)),n=o!==c?(s=I(),u=[u,o,s]):(d=n,c),r=n!==c&&(n=N())===c?(d=r,c):n;return t=e.length<1?(d=t,c):e,i=t!==c?(e=I(),44===l.charCodeAt(d)?(r=h,d++):(r=c,0===_&&S(x)),r===c&&(r=null),v=i,Gr(t)):(d=i,c),_--,i===c&&(t=c,0===_)&&S(Me),b[a]={nextPos:d,result:i},i})())!==c)?(v=e,Vr(r,u)):(d=e,c))===c?(()=>{var t,e,r,n,u,o,s,a=47*d+43,i=b[a];if(i)return d=i.nextPos,i.result;for(_++,t=i=d,e=[],r=E();r!==c;)e.push(r),n=r=d,u=I(),44===l.charCodeAt(d)?(o=h,d++):(o=c,0===_&&S(x)),n=o!==c?(s=I(),u=[u,o,s]):(d=n,c),r=n!==c&&(n=E())===c?(d=r,c):n;return t=e.length<1?(d=t,c):e,i=t!==c?(e=I(),44===l.charCodeAt(d)?(r=h,d++):(r=c,0===_&&S(x)),r===c&&(r=null),v=i,Rr(t)):(d=i,c),_--,i===c&&(t=c,0===_)&&S(He),b[a]={nextPos:d,result:i},i})():e)===c&&(e=null),r=I(),93===l.charCodeAt(d)?(n=tt,d++):(n=c,0===_&&S(Ye)),n!==c)?(v=s,Hr(e)):(d=s,c),_--,s===c&&(t=c,0===_)&&S(Xe),b[o]={nextPos:d,result:s},s)})())!==c?(v=n,tr(e)):(d=n,c))===c)&&(n=(()=>{var t,e,r,n,u=47*d+36,o=b[u];return o?(d=o.nextPos,o.result):(_++,t=o=d,t=(e=rn())!==c?l.substring(t,d):e,o=t!==c?(e=I(),e=d,40===l.charCodeAt(d)?(r=W,d++):(r=c,0===_&&S(Le)),e=r!==c&&(I(),(r=(()=>{var t,e,r,n,u,o,s,a=47*d+35,i=b[a];if(i)return d=i.nextPos,i.result;for(_++,t=i=d,e=[],r=E();r!==c;)e.push(r),n=r=d,u=I(),44===l.charCodeAt(d)?(o=h,d++):(o=c,0===_&&S(x)),n=o!==c?(s=I(),u=[u,o,s]):(d=n,c),r=n!==c&&(n=E())===c?(d=r,c):n;return t=e.length<1?(d=t,c):e,i=t!==c?(e=I(),44===l.charCodeAt(d)?(r=h,d++):(r=c,0===_&&S(x)),r===c&&(r=null),v=i,Lr(t)):(d=i,c),_--,i===c&&(t=c,0===_)&&S(Te),b[a]={nextPos:d,result:i},i})())===c&&(r=null),I(),41===l.charCodeAt(d)?(n=Y,d++):(n=c,0===_&&S(Ue)),n!==c)?(v=e,Ur(t,r)):(d=e,c),v=o,Or(t,e=e===c?null:e)):(d=o,c),_--,o===c&&(t=c,0===_)&&S(we),b[u]={nextPos:d,result:o},o)})()),_--,n===c&&(t=c,0===_)&&S(mt),b[r]={nextPos:d,result:n},n)}function I(){var t,e,r=47*d+1,n=b[r];if(n)return d=n.nextPos,n.result;for(_++,t=[],e=l.charAt(d),et.test(e)?d++:(e=c,0===_&&S(Ct));e!==c;)t.push(e),e=l.charAt(d),et.test(e)?d++:(e=c,0===_&&S(Ct));return e=c,0===--_&&S(yt),b[r]={nextPos:d,result:t},t}function F(){var t=47*d+2,e=b[t];return e?(d=e.nextPos,e.result):(_++,e=l.charAt(d),rt.test(e)?d++:(e=c,0===_&&S(Et)),_--,e===c&&0===_&&S(St),b[t]={nextPos:d,result:e},e)}function $(){var t=47*d+3,e=b[t];return e?(d=e.nextPos,e.result):(e=l.charAt(d),nt.test(e)?d++:(e=c,0===_&&S(It)),b[t]={nextPos:d,result:e},e)}function Mr(){var t=47*d+6,e=b[t];return e?(d=e.nextPos,e.result):(_++,e=l.charAt(d),at.test(e)?d++:(e=c,0===_&&S(wt)),_--,e===c&&0===_&&S(Tt),b[t]={nextPos:d,result:e},e)}function Xr(){var t=47*d+7,e=b[t];return e?(d=e.nextPos,e.result):(_++,e=l.charAt(d),it.test(e)?d++:(e=c,0===_&&S(Ut)),_--,e===c&&0===_&&S(Lt),b[t]={nextPos:d,result:e},e)}function Zr(){var t=47*d+8,e=b[t];return e?(d=e.nextPos,e.result):(_++,e=l.charAt(d),lt.test(e)?d++:(e=c,0===_&&S(qt)),_--,e===c&&0===_&&S(Ot),b[t]={nextPos:d,result:e},e)}function B(){var t,e,r,n=47*d+10,u=b[n];if(u)return d=u.nextPos,u.result;if(_++,t=u=d,e=[],(r=Xr())!==c)for(;r!==c;)e.push(r),r=Xr();else e=c;return(t=e!==c?l.substring(t,d):e)!==c&&(v=u,t=or(t)),_--,(u=t)===c&&(t=c,0===_)&&S(kt),b[n]={nextPos:d,result:u},u}function Wr(){var t,e,r,n,u=47*d+12,o=b[u];return o?(d=o.nextPos,o.result):(_++,o=d,48===l.charCodeAt(d)?(t=q,d++):(t=c,0===_&&S(Vt)),(o=t!==c&&(I(),e=d,r=l.charAt(d),ct.test(r)?d++:(r=c,0===_&&S(Ht)),(e=r!==c&&(I(),(n=(()=>{var t,e,r,n=47*d+11,u=b[n];if(u)return d=u.nextPos,u.result;if(_++,t=u=d,e=[],(r=Zr())!==c)for(;r!==c;)e.push(r),r=Zr();else e=c;return(t=e!==c?l.substring(t,d):e)!==c&&(v=u,t=sr(t)),_--,(u=t)===c&&(t=c,0===_)&&S(Rt),b[n]={nextPos:d,result:u},u})())!==c)?(v=e,ar(n)):(d=e,c))===c&&(e=d,r=l.charAt(d),ft.test(r)?d++:(r=c,0===_&&S(jt)),e=r!==c&&(I(),(n=(()=>{var t,e,r,n=47*d+9,u=b[n];if(u)return d=u.nextPos,u.result;if(_++,t=u=d,e=[],(r=Mr())!==c)for(;r!==c;)e.push(r),r=Mr();else e=c;return(t=e!==c?l.substring(t,d):e)!==c&&(v=u,t=ur(t)),_--,(u=t)===c&&(t=c,0===_)&&S(Dt),b[n]={nextPos:d,result:u},u})())!==c)?(v=e,ir(n)):(d=e,c)),e!==c)?(v=o,lr(e)):(d=o,c))===c&&(o=d,(t=B())!==c&&(v=o,t=cr(t)),o=t),_--,o===c&&(t=c,0===_)&&S(Gt),b[u]={nextPos:d,result:o},o)}function N(){var t,e,r,n,u,o,s,a=47*d+13,i=b[a];return i?(d=i.nextPos,i.result):(_++,i=d,(t=F())===c&&(t=null),I(),i=(e=Wr())!==c?(I(),u=(s=b[o=47*d+5])?(d=s.nextPos,s.result):(_++,s=d,r=l.charAt(d),ot.test(r)?d++:(r=c,0===_&&S(Bt)),(s=r!==c?(n=I(),u=d,$(),u=l.substring(u,d),v=s,er(u)):(d=s,c))===c&&(s=d,r=l.charAt(d),st.test(r)?d++:(r=c,0===_&&S(Nt)),(s=r!==c?(n=I(),u=d,$(),u=l.substring(u,d),v=s,rr(u)):(d=s,c))===c)&&(r=s=d,(r=(n=$())!==c?l.substring(r,d):n)!==c&&(v=s,r=nr(r)),s=r),_--,s===c&&(r=c,0===_)&&S($t),b[o]={nextPos:d,result:s},s),v=i,fr(t,e,u=u===c?null:u)):(d=i,c),_--,i===c&&(t=c,0===_)&&S(zt),b[a]={nextPos:d,result:i},i)}function T(){var t=47*d+14,e=b[t];return e?(d=e.nextPos,e.result):(e=l.charAt(d),ht.test(e)?d++:(e=c,0===_&&S(Mt)),b[t]={nextPos:d,result:e},e)}function w(){var t,e,r,n=47*d+15,u=b[n];return u?(d=u.nextPos,u.result):(_++,u=d,t=l.charAt(d),pt.test(t)?d++:(t=c,0===_&&S(Zt)),u=t!==c&&(I(),(e=F())===c&&(e=null),I(),(r=B())!==c)?(v=u,hr(e,r)):(d=u,c),_--,u===c&&(t=c,0===_)&&S(Xt),b[n]={nextPos:d,result:u},u)}function L(){var t=47*d+16,e=b[t];return e?(d=e.nextPos,e.result):(_++,e=B(),_--,e===c&&0===_&&S(Wt),b[t]={nextPos:d,result:e},e)}function Yr(){var t=47*d+17,e=b[t];return e?(d=e.nextPos,e.result):(_++,e=B(),_--,e===c&&0===_&&S(Yt),b[t]={nextPos:d,result:e},e)}function U(){var t=47*d+21,e=b[t];return e?(d=e.nextPos,e.result):(_++,e=l.charAt(d),xt.test(e)?d++:(e=c,0===_&&S(re)),_--,e===c&&0===_&&S(ee),b[t]={nextPos:d,result:e},e)}function Jr(){var t,e,r,n=47*d+26,u=b[n];return u?(d=u.nextPos,u.result):(_++,u=d,98===l.charCodeAt(d)?(t=D,d++):(t=c,0===_&&S(le)),t!==c&&(v=u,t=Ar()),(u=t)===c&&(u=d,115===l.charCodeAt(d)?(t=k,d++):(t=c,0===_&&S(ce)),t!==c&&(v=u,t=_r()),(u=t)===c)&&(u=d,116===l.charCodeAt(d)?(t=R,d++):(t=c,0===_&&S(fe)),t!==c&&(v=u,t=br()),(u=t)===c)&&(u=d,110===l.charCodeAt(d)?(t=G,d++):(t=c,0===_&&S(he)),t!==c&&(v=u,t=Pr()),(u=t)===c)&&(u=d,102===l.charCodeAt(d)?(t=V,d++):(t=c,0===_&&S(pe)),t!==c&&(v=u,t=mr()),(u=t)===c)&&(u=d,114===l.charCodeAt(d)?(t=H,d++):(t=c,0===_&&S(ge)),t!==c&&(v=u,t=yr()),(u=t)===c)&&(u=d,92===l.charCodeAt(d)?(t=o,d++):(t=c,0===_&&S(xe)),t!==c&&(v=u,t=Cr()),(u=t)===c)&&(u=d,39===l.charCodeAt(d)?(t=s,d++):(t=c,0===_&&S(p)),t!==c&&(v=u,t=Sr()),(u=t)===c)&&(u=d,34===l.charCodeAt(d)?(t=i,d++):(t=c,0===_&&S(g)),t!==c&&(v=u,t=Er()),(u=t)===c)&&(u=d,120===l.charCodeAt(d)?(t=j,d++):(t=c,0===_&&S(de)),(u=t!==c&&(r=d,(r=(e=(()=>{var t,e,r=47*d+22,n=b[r];if(n)return d=n.nextPos,n.result;for(_++,n=d,t=[],e=U();e!==c;)t.push(e),e=2<=t.length?c:U();return n=t.length<2?(d=n,c):t,_--,n===c&&(t=c,0===_)&&S(ne),b[r]={nextPos:d,result:n},n})())!==c?l.substring(r,d):e)!==c)?(v=u,Ir(r)):(d=u,c))===c)&&(u=d,117===l.charCodeAt(d)?(t=z,d++):(t=c,0===_&&S(ve)),(u=t!==c&&(r=d,(r=(e=(()=>{var t,e,r=47*d+23,n=b[r];if(n)return d=n.nextPos,n.result;for(_++,n=d,t=[],e=U();e!==c;)t.push(e),e=4<=t.length?c:U();return n=t.length<4?(d=n,c):t,_--,n===c&&(t=c,0===_)&&S(ue),b[r]={nextPos:d,result:n},n})())!==c?l.substring(r,d):e)!==c)?(v=u,Fr(r)):(d=u,c))===c)&&(u=d,85===l.charCodeAt(d)?(t=M,d++):(t=c,0===_&&S(Ae)),(u=t!==c&&(r=d,(r=(e=(()=>{var t,e,r=47*d+24,n=b[r];if(n)return d=n.nextPos,n.result;for(_++,n=d,t=[],e=U();e!==c;)t.push(e),e=8<=t.length?c:U();return n=t.length<8?(d=n,c):t,_--,n===c&&(t=c,0===_)&&S(oe),b[r]={nextPos:d,result:n},n})())!==c?l.substring(r,d):e)!==c)?(v=u,$r(r)):(d=u,c))===c)&&(u=d,78===l.charCodeAt(d)?(t=X,d++):(t=c,0===_&&S(_e)),u=t!==c&&(123===l.charCodeAt(d)?(r=f,d++):(r=c,0===_&&S(be)),r!==c)&&(e=d,(e=(r=(()=>{var t,e,r=47*d+25,n=b[r];if(n)return d=n.nextPos,n.result;if(_++,t=[],e=l.charAt(d),dt.test(e)?d++:(e=c,0===_&&S(ae)),e!==c)for(;e!==c;)t.push(e),e=l.charAt(d),dt.test(e)?d++:(e=c,0===_&&S(ae));else t=c;return _--,t===c&&(e=c,0===_)&&S(se),b[r]={nextPos:d,result:t},t})())!==c?l.substring(e,d):r)!==c)&&(125===l.charCodeAt(d)?(r=Z,d++):(r=c,0===_&&S(Pe)),r!==c)?(v=u,Br(e)):(d=u,c)),_--,u===c&&(t=c,0===_)&&S(ie),b[n]={nextPos:d,result:u},u)}function Kr(){var t,e,r=47*d+28,n=b[r];return n?(d=n.nextPos,n.result):(_++,n=d,(n=(t=(()=>{var t,e,r=47*d+27,n=b[r];if(n)return d=n.nextPos,n.result;if(_++,t=[],e=l.charAt(d),vt.test(e)?d++:(e=c,0===_&&S(ye)),e!==c)for(;e!==c;)t.push(e),e=l.charAt(d),vt.test(e)?d++:(e=c,0===_&&S(ye));else t=c;return _--,t===c&&(e=c,0===_)&&S(me),b[r]={nextPos:d,result:t},t})())!==c?l.substring(n,d):t)===c&&(n=d,92===l.charCodeAt(d)?(t=o,d++):(t=c,0===_&&S(xe)),n=t!==c&&(e=Jr())!==c?(v=n,Nr(e)):(d=n,c)),_--,n===c&&(t=c,0===_)&&S(Ce),b[r]={nextPos:d,result:n},n)}function Qr(){var t=47*d+29,e=b[t];return e?(d=e.nextPos,e.result):(_++,(e=Kr())===c&&(34===l.charCodeAt(d)?(e=i,d++):(e=c,0===_&&S(g))),_--,e===c&&0===_&&S(Se),b[t]={nextPos:d,result:e},e)}function tn(){var t=47*d+31,e=b[t];return e?(d=e.nextPos,e.result):(_++,(e=Kr())===c&&(39===l.charCodeAt(d)?(e=s,d++):(e=c,0===_&&S(p))),_--,e===c&&0===_&&S(Ie),b[t]={nextPos:d,result:e},e)}function en(){var t,e,r,n=47*d+33,u=b[n];return u?(d=u.nextPos,u.result):(_++,u=d,34===l.charCodeAt(d)?(t=i,d++):(t=c,0===_&&S(g)),(u=t!==c&&(e=(()=>{var t,e,r=47*d+32,n=b[r];if(n)return d=n.nextPos,n.result;for(_++,t=[],e=tn();e!==c;)t.push(e),e=tn();return e=c,0===--_&&S(Fe),b[r]={nextPos:d,result:t},t})(),34===l.charCodeAt(d)?(r=i,d++):(r=c,0===_&&S(g)),r!==c)?(v=u,Tr(e)):(d=u,c))===c&&(u=d,39===l.charCodeAt(d)?(t=s,d++):(t=c,0===_&&S(p)),u=t!==c&&(e=(()=>{var t,e,r=47*d+30,n=b[r];if(n)return d=n.nextPos,n.result;for(_++,t=[],e=Qr();e!==c;)t.push(e),e=Qr();return e=c,0===--_&&S(Ee),b[r]={nextPos:d,result:t},t})(),39===l.charCodeAt(d)?(r=s,d++):(r=c,0===_&&S(p)),r!==c)?(v=u,wr(e)):(d=u,c)),_--,u===c&&(t=c,0===_)&&S($e),b[n]={nextPos:d,result:u},u)}function rn(){var t,e,r=47*d+34,n=b[r];if(n)return d=n.nextPos,n.result;if(_++,t=[],e=l.charAt(d),At.test(e)?d++:(e=c,0===_&&S(Ne)),e!==c)for(;e!==c;)t.push(e),e=l.charAt(d),At.test(e)?d++:(e=c,0===_&&S(Ne));else t=c;return _--,t===c&&(e=c,0===_)&&S(Be),b[r]={nextPos:d,result:t},t}function nn(){var t,e,r,n,u=47*d+39,o=b[u];return o?(d=o.nextPos,o.result):(_++,o=(r=(n=b[r=47*(o=d)+38])?(d=n.nextPos,n.result):(_++,(n=en())===c&&(n=d,n=(e=rn())!==c?l.substring(n,d):e),_--,n===c&&(e=c,0===_)&&S(qe),b[r]={nextPos:d,result:n},n))!==c&&(I(),58===l.charCodeAt(d)?(t=J,d++):(t=c,0===_&&S(ke)),t!==c)&&(I(),(n=E())!==c)?(v=o,qr(r,n)):(d=o,c),_--,o===c&&(r=c,0===_)&&S(De),b[u]={nextPos:d,result:o},o)}if(e=r(),t.peg$library)return{peg$result:e,peg$currPos:d,peg$FAILED:c,peg$maxFailExpected:A,peg$maxFailPos:u};if(e!==c&&d===l.length)return e;throw e!==c&&d<l.length&&S({type:"end"}),r=A,t=u<l.length?l.charAt(u):null,e=zr(u,u<l.length?u+1:u),new peg$SyntaxError(peg$SyntaxError.buildMessage(r,t),r,t,e)}(t=>{let e;(r=e=t.IntegerTypeSuffix||(t.IntegerTypeSuffix={})).BYTE="byte",r.SHORT="short",r.INTEGER="int",r.LONG="long";let n;(r=n=t.FloatTypeSuffix||(t.FloatTypeSuffix={})).FLOAT="float",r.DOUBLE="double";let u;(r=u=t.SignedPrefix||(t.SignedPrefix={})).SIGNED="signed",r.UNSIGNED="unsigned";let o;(r=o=t.Sign||(t.Sign={})).PLUS="+",r.MINUS="-";let s;function a(t){switch(t){case e.BYTE:return 8n;case e.SHORT:return 16n;case e.INTEGER:return 32n;case e.LONG:return 64n}}(r=s=t.Base||(t.Base={}))[r.HEX=16]="HEX",r[r.DEC=10]="DEC",r[r.BIN=2]="BIN",t.getBitsForInteger=a;let i;{var r=i=t.BuiltinOperation||(t.BuiltinOperation={});let n=new Map;function l(t,e,r){n.set(r+"-"+t,e)}r.register=l,r.get=function(t,e){return n.get(e+"-"+t)},l("bool",(t,e)=>"boolean"==typeof e?e:e instanceof IntegerValue?0n!==e.value:e instanceof FloatValue?0!==e.value:void t("Expect number or boolean"),1),l("uuid",(t,e)=>{if("string"!=typeof e)return t("Expect string uuid"),"";36<e.length&&t("Expect string uuid");e=e.split("-"),5!==e.length&&t("Expect string uuid"),t=(0xffffffffn&BigInt("0x"+e[0]))<<96n|(0xffffn&BigInt("0x"+e[1]))<<80n|(0xffffn&BigInt("0x"+e[2]))<<64n|(0xffffn&BigInt("0x"+e[3]))<<48n|0xffffffffffffn&BigInt("0x"+e[4]);return{values:[BigInt.asIntN(32,t>>96n),BigInt.asIntN(32,t>>64n),BigInt.asIntN(32,t>>32n),BigInt.asIntN(32,t)],type:"int"}},1)}function c(t){switch(t){case"b":case"B":return e.BYTE;case"s":case"S":return e.SHORT;case"i":case"I":return e.INTEGER;case"l":case"L":return e.LONG}}function f(t){return t=t.includes("_")?t.replace(/_/g,""):t}t.convertToIntTypeSuffix=c,t.convertToFloatTypeSuffix=function(t){switch(t){case"f":case"F":return n.FLOAT;case"d":case"D":return n.DOUBLE}return null},t.checkNum=function(t,e){return(t.startsWith("_")||t.endsWith("_"))&&e("Underscore is not allowed"),t},t.convertNum=function(t,e){var r=(t.suffix?t.suffix.signed:10===t.base?u.SIGNED:u.UNSIGNED)===u.SIGNED,e=(r||t.sign!==o.MINUS||e("Expected non negative number"),t.value=f(t.value),(t.base===s.HEX?"0x":t.base===s.BIN?"0b":"")+t.value);let n=BigInt(e);return r&&t.sign===o.MINUS&&(n=-n),new IntegerValue(n,r,t.suffix?.type??null)},t.convertFloat=function(t,e){t.integer=f(t.integer),t.frac=f(t.frac),t.exp&&(t.exp.value=f(t.exp.value));var r=""+t.sign+t.integer+"."+t.frac+(t.exp?"e"+t.exp.sign+t.exp.value:""),r=parseFloat(r),e=(isFinite(r)||e("Infinity not allowed"),t.suf||n.DOUBLE);return createFloat(r,e)},t.convertHexString=function(t,e){return 1114111<(t=parseInt(t,16))&&e("Invalid codepoint U+"+t.toString(16).toUpperCase().padStart(8,"0")),String.fromCodePoint(t)},t.convertUnicodeNameString=function(t,e){return t},t.convertUnquotedOrBuiltin=function(t,e,r){if(t.charAt(0).match(/[-+.0-9]/)&&r("Invalid unquoted start"),e){var n=i.get(t,e.length);if(n){n=n(r,...e);if(n)return n}r("No such operation")}return"true"===t.toLowerCase()||"false"!==t.toLowerCase()&&t},t.convertIntList=function(t,e,r){let n=c(t);return e.filter(t=>!!t.type).some(t=>a(t.type)>a(n))&&r("Invalid array element type"),{type:n,values:e.map(t=>t._resolve(n).value)}}})(base=base||{}),peg$subclass(peg$SyntaxError,Error),peg$SyntaxError.prototype.format=function(t){var e="Error: "+this.message;if(this.location){for(var r=null,n=0;n<t.length;n++)if(t[n].source===this.location.source){r=t[n].text.split(/\r\n|\n|\r/g);break}var u,o,s,a=this.location.start,i=this.location.source&&"function"==typeof this.location.source.offset?this.location.source.offset(a):a,l=this.location.source+":"+i.line+":"+i.column;r?(s=this.location.end,u=peg$padEnd("",i.line.toString().length," "),o=r[a.line-1],s=(a.line===s.line?s.column:o.length+1)-a.column||1,e+="\n --\x3e "+l+"\n"+u+" |\n"+i.line+" | "+o+"\n"+u+" | "+peg$padEnd("",a.column-1," ")+peg$padEnd("",s,"^")):e+="\n at "+l}return e},peg$SyntaxError.buildMessage=function(t,e){var r={literal:function(t){return'"'+u(t.text)+'"'},class:function(t){var e=t.parts.map(function(t){return Array.isArray(t)?o(t[0])+"-"+o(t[1]):o(t)});return"["+(t.inverted?"^":"")+e.join("")+"]"},any:function(){return"any character"},end:function(){return"end of input"},other:function(t){return t.description}};function n(t){return t.charCodeAt(0).toString(16).toUpperCase()}function u(t){return t.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(t){return"\\x0"+n(t)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(t){return"\\x"+n(t)})}function o(t){return t.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(t){return"\\x0"+n(t)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(t){return"\\x"+n(t)})}function s(t){return r[t.type](t)}return"Expected "+(t=>{var e,r,n=t.map(s);if(n.sort(),0<n.length){for(r=e=1;e<n.length;e++)n[e-1]!==n[e]&&(n[r]=n[e],r++);n.length=r}switch(n.length){case 1:return n[0];case 2:return n[0]+" or "+n[1];default:return n.slice(0,-1).join(", ")+", or "+n[n.length-1]}})(t)+" but "+((t=e)?'"'+u(t)+'"':"end of input")+" found."};let parse=peg$parse,highlights=(t,e)=>{t=peg$parse$1(t,e);let r=[];return t.reverse().filter(e=>!r.some(t=>e.start<=t[1]-1&&t[0]<=e.end-1)&&(r.push([e.start,e.end]),!0)).reverse()};exports.FloatValue=FloatValue,exports.IntegerList=IntegerList,exports.IntegerValue=IntegerValue,exports.createFloat=createFloat,exports.createInteger=createInteger,exports.highlights=highlights,exports.parse=parse;