aontu 0.21.1 → 0.23.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/aontu.ts +1 -12
- package/dist/aontu.js +3 -13
- package/dist/aontu.js.map +1 -1
- package/dist/aontu.min.js +64 -1
- package/dist/aontu.min.js.tmp-browserify-24272745041996834914 +0 -0
- package/dist/lib/err.js +3 -3
- package/dist/lib/err.js.map +1 -1
- package/dist/lib/lang.js +25 -10
- package/dist/lib/lang.js.map +1 -1
- package/dist/lib/type.d.ts +1 -0
- package/dist/lib/type.js.map +1 -1
- package/dist/lib/unify.js +1 -0
- package/dist/lib/unify.js.map +1 -1
- package/dist/lib/utility.js +1 -2
- package/dist/lib/utility.js.map +1 -1
- package/dist/lib/val/ConjunctVal.js +2 -2
- package/dist/lib/val/ConjunctVal.js.map +1 -1
- package/dist/lib/val/MapVal.js +18 -9
- package/dist/lib/val/MapVal.js.map +1 -1
- package/dist/lib/val/OpVal.d.ts +17 -0
- package/dist/lib/val/OpVal.js +89 -0
- package/dist/lib/val/OpVal.js.map +1 -0
- package/dist/lib/val/PlusVal.d.ts +12 -0
- package/dist/lib/val/PlusVal.js +32 -0
- package/dist/lib/val/PlusVal.js.map +1 -0
- package/dist/lib/val/RefVal.js +23 -15
- package/dist/lib/val/RefVal.js.map +1 -1
- package/dist/lib/val/ValBase.d.ts +1 -0
- package/dist/lib/val/ValBase.js +13 -6
- package/dist/lib/val/ValBase.js.map +1 -1
- package/lib/err.ts +3 -1
- package/lib/lang.ts +33 -7
- package/lib/type.ts +1 -0
- package/lib/unify.ts +2 -0
- package/lib/val/MapVal.ts +26 -12
- package/lib/val/OpVal.ts +159 -0
- package/lib/val/OpVal.ts~ +158 -0
- package/lib/val/PlusVal.ts +76 -0
- package/lib/val/PlusVal.ts~ +158 -0
- package/lib/val/RefVal.ts +33 -17
- package/lib/val/ValBase.ts +16 -5
- package/package.json +11 -11
package/aontu.ts
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
/* Copyright (c) 2021-
|
|
1
|
+
/* Copyright (c) 2021-2024 Richard Rodger, MIT License */
|
|
2
2
|
|
|
3
3
|
import type { Val, Options } from './lib/type'
|
|
4
4
|
|
|
5
|
-
// import { Lang, includeFileResolver } from './lib/lang'
|
|
6
5
|
import { Lang } from './lib/lang'
|
|
7
6
|
import { Unify, Context } from './lib/unify'
|
|
8
7
|
import { Nil } from './lib/val/Nil'
|
|
@@ -25,15 +24,6 @@ also trace deps into top val and watch via model
|
|
|
25
24
|
// TODO: debug tracing
|
|
26
25
|
// TODO: providers - e.g source files from paths
|
|
27
26
|
|
|
28
|
-
// const NoResolver: Resolver = () => ({
|
|
29
|
-
// kind: '<no-kind>',
|
|
30
|
-
// path: '<no-path>',
|
|
31
|
-
// full: '<no-full>',
|
|
32
|
-
// base: '<no-base>',
|
|
33
|
-
// abs: true,
|
|
34
|
-
// found: false,
|
|
35
|
-
// })
|
|
36
|
-
|
|
37
27
|
// TODO: Aontu should return final generated version?
|
|
38
28
|
|
|
39
29
|
/* `Aontu('a:1') => opts={src:'a:1',print:0,...}`
|
|
@@ -68,7 +58,6 @@ const util = {
|
|
|
68
58
|
...{
|
|
69
59
|
src: '',
|
|
70
60
|
print: 0,
|
|
71
|
-
// resolver: includeFileResolver,
|
|
72
61
|
},
|
|
73
62
|
...srcopts,
|
|
74
63
|
...(popts || {}),
|
package/dist/aontu.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
/* Copyright (c) 2021-
|
|
2
|
+
/* Copyright (c) 2021-2024 Richard Rodger, MIT License */
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.util = exports.Context = exports.Lang = exports.Nil =
|
|
5
|
-
|
|
4
|
+
exports.util = exports.Context = exports.Lang = exports.Nil = void 0;
|
|
5
|
+
exports.Aontu = Aontu;
|
|
6
6
|
const lang_1 = require("./lib/lang");
|
|
7
7
|
Object.defineProperty(exports, "Lang", { enumerable: true, get: function () { return lang_1.Lang; } });
|
|
8
8
|
const unify_1 = require("./lib/unify");
|
|
@@ -22,14 +22,6 @@ also trace deps into top val and watch via model
|
|
|
22
22
|
// TODO: error reporting
|
|
23
23
|
// TODO: debug tracing
|
|
24
24
|
// TODO: providers - e.g source files from paths
|
|
25
|
-
// const NoResolver: Resolver = () => ({
|
|
26
|
-
// kind: '<no-kind>',
|
|
27
|
-
// path: '<no-path>',
|
|
28
|
-
// full: '<no-full>',
|
|
29
|
-
// base: '<no-base>',
|
|
30
|
-
// abs: true,
|
|
31
|
-
// found: false,
|
|
32
|
-
// })
|
|
33
25
|
// TODO: Aontu should return final generated version?
|
|
34
26
|
/* `Aontu('a:1') => opts={src:'a:1',print:0,...}`
|
|
35
27
|
* `Aontu('a:1',{print:1}) => opts={src:'a:1',print:1,...}`
|
|
@@ -47,7 +39,6 @@ function Aontu(src, popts) {
|
|
|
47
39
|
res.err = err;
|
|
48
40
|
return res;
|
|
49
41
|
}
|
|
50
|
-
exports.Aontu = Aontu;
|
|
51
42
|
const util = {
|
|
52
43
|
options: (src, popts) => {
|
|
53
44
|
// Convert convenience first param into Options.src
|
|
@@ -56,7 +47,6 @@ const util = {
|
|
|
56
47
|
...{
|
|
57
48
|
src: '',
|
|
58
49
|
print: 0,
|
|
59
|
-
// resolver: includeFileResolver,
|
|
60
50
|
},
|
|
61
51
|
...srcopts,
|
|
62
52
|
...(popts || {}),
|
package/dist/aontu.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aontu.js","sourceRoot":"","sources":["../aontu.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;
|
|
1
|
+
{"version":3,"file":"aontu.js","sourceRoot":"","sources":["../aontu.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;AA0EhD,sBAAK;AAtEd,qCAAiC;AAsEP,qFAtEjB,WAAI,OAsEiB;AArE9B,uCAA4C;AAqEZ,wFArEhB,eAAO,OAqEgB;AApEvC,uCAAmC;AAoEd,oFApEZ,SAAG,OAoEY;AAnExB,mCAAmC;AAEnC,6DAA6D;AAE7D,mCAAmC;AACnC,mFAAmF;AAEnF;;;;;EAKE;AAEF,wBAAwB;AAExB,sBAAsB;AACtB,gDAAgD;AAEhD,qDAAqD;AAErD;;;GAGG;AACH,SAAS,KAAK,CAAC,GAA8B,EAAE,KAAwB;IACrE,IAAI,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IACnC,IAAI,IAAI,GAAG,EAAE,CAAA;IACb,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;IACpC,IAAI,GAAG,GAAG,IAAI,aAAK,CAAC,GAAqB,CAAC,CAAA;IAC1C,IAAI,GAAG,GAAG,GAAG,CAAC,GAAG,CAAA;IACjB,IAAI,GAAG,GAAG,GAAG,CAAC,GAAG,CAAA;IAEjB,IAAA,aAAO,EAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAEhB,GAAG,CAAC,IAAI,GAAG,IAAI,CAAA;IACf,GAAG,CAAC,GAAG,GAAG,GAAG,CAAA;IAEb,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,MAAM,IAAI,GAAG;IACX,OAAO,EAAE,CACP,GAA8B,EAC9B,KAAwB,EACf,EAAE;QACX,mDAAmD;QACnD,IAAI,OAAO,GAAqB,QAAQ,KAAK,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA;QAEvE,IAAI,IAAI,GAAY;YAClB,GAAG;gBACD,GAAG,EAAE,EAAE;gBACP,KAAK,EAAE,CAAC;aACT;YACD,GAAG,OAAO;YACV,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;SACjB,CAAA;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,IAAa,EAAE,GAAkB;QACrC,IAAI,IAAI,GAAG,IAAI,WAAI,CAAC,IAAI,CAAC,CAAA;QACzB,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAA;QAClD,OAAO,GAAG,CAAA;IACZ,CAAC;CACF,CAAA;AAEwC,oBAAI;AAC7C,kBAAe,KAAK,CAAA"}
|
package/dist/aontu.min.js
CHANGED
|
@@ -1 +1,64 @@
|
|
|
1
|
-
!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).Aontu=e()}}((function(){var e=function(e){var t;return function(n){return t||e(t={exports:{},parent:n},t.exports),t.exports}},t=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Site=t.Lang=void 0;const u=o({}),c=n({}),d=s({}),f=l({}),m=h({}),x=a({}),k=r({}),b=i({}),y=p({});t.Site=class{constructor(e){this.row=-1,this.col=-1,this.url="",this.row=e.row,this.col=e.col,this.url=e.url}};let j=function(e){e.use(ke.Path);let t=(e,t)=>(e.path=[...t||[]],e);e.options({value:{def:{string:{val:e=>t(new y.ScalarTypeVal({peg:String}),e.k.path)},number:{val:e=>t(new y.ScalarTypeVal({peg:Number}),e.k.path)},integer:{val:e=>t(new y.ScalarTypeVal({peg:y.Integer}),e.k.path)},boolean:{val:e=>t(new y.ScalarTypeVal({peg:Boolean}),e.k.path)},nil:{val:e=>t(new m.Nil("literal"),e.k.path)},top:{val:()=>y.TOP}}},map:{merge:(e,n)=>{let r=e,i=n;return(null==r?void 0:r.isVal)&&(null==i?void 0:i.isVal)?r instanceof c.ConjunctVal&&i instanceof c.ConjunctVal||r instanceof c.ConjunctVal?(r.append(i),r):t(new c.ConjunctVal({peg:[r,i]}),e.path):(e.___merge=e.___merge||[],e.___merge.push(n),e)}}});let n={"conjunct-infix":(e,n,r)=>t(new c.ConjunctVal({peg:r}),e.k.path),"disjunct-infix":(e,n,r)=>t(new u.DisjunctVal({peg:r}),e.k.path),"dot-prefix":(e,n,r)=>t(new k.RefVal({peg:r,prefix:!0}),e.k.path),"dot-infix":(e,n,r)=>t(new k.RefVal({peg:r}),e.k.path),"star-prefix":(e,n,r)=>t(new x.PrefVal({peg:r[0]}),e.k.path),"dollar-prefix":(e,n,r)=>r[0]instanceof k.RefVal?(r[0].absolute=!0,r[0]):t(new b.VarVal({peg:r[0]}),e.k.path)};e.use(xe.Expr,{op:{conjunct:{infix:!0,src:"&",left:14e6,right:15e6},disjunct:{infix:!0,src:"|",left:16e6,right:17e6},"dollar-prefix":{src:"$",prefix:!0,right:31e6},"dot-infix":{src:".",infix:!0,left:25e6,right:24e6},"dot-prefix":{src:".",prefix:!0,right:24e6},star:{src:"*",prefix:!0,right:24e6}},evaluate:(e,t,r)=>n[t.name](e,t,r)});let r=e.token["#E&"],i=e.token.CL;e.rule("val",e=>(e.open([{s:[r,i],p:"map",b:2,n:{pk:1},g:"spread"}]).bc((e,n)=>{let r=e.node,i=typeof r;"string"===i?r=t(new y.StringVal({peg:e.node}),e.k.path):"number"===i?r=Number.isInteger(e.node)?t(new y.IntegerVal({peg:e.node}),e.k.path):t(new y.NumberVal({peg:e.node}),e.k.path):"boolean"===i&&(r=t(new y.BooleanVal({peg:e.node}),e.k.path));let l=e.o0;r.row=l.rI,r.col=l.cI,r.url=n.meta.multisource&&n.meta.multisource.path,e.node=r}),e)),e.rule("map",e=>(e.open([{s:[r,i],p:"pair",b:2,g:"spread"}]).bc(e=>{let n=e.node;if(n.___merge){let r={...n};delete r.___merge;let i=new f.MapVal({peg:r});e.node=t(new c.ConjunctVal({peg:[i,...n.___merge]}),e.k.path)}else e.node=t(new f.MapVal({peg:n}),e.k.path)}),e)),e.rule("list",e=>(e.bc(e=>{e.node=t(new d.ListVal({peg:e.node}),e.k.path)}),e)),e.rule("pair",e=>(e.open([{s:[r,i],p:"val",u:{spread:!0},g:"spread"}]).ao(e=>{0<e.d&&e.u.spread&&(e.child.k.path=[...e.k.path,"&"],e.child.k.key="&")}).bc(e=>{e.u.spread&&(e.node[f.MapVal.SPREAD]=e.node[f.MapVal.SPREAD]||{o:e.o0.src,v:[]},e.node[f.MapVal.SPREAD].v.push(e.child.node))}),e)),e.rule("elem",e=>(e.open([{s:[r,i],p:"val",u:{spread:!0},n:{pk:1},g:"spread"}]).bc(e=>{e.u.spread&&(e.node[d.ListVal.SPREAD]=e.node[d.ListVal.SPREAD]||{o:e.o0.src,v:[]},e.node[d.ListVal.SPREAD].v.push(e.child.node))}),e))};t.Lang=class{constructor(e){this.options={src:"",print:-1,debug:!1},this.options=Object.assign({},this.options,e);const t=function(e){var t,n;const r=e.require||require;let i=(0,ie.makeMemResolver)({...(null===(t=e.resolver)||void 0===t?void 0:t.mem)||{}}),l=(0,se.makeFileResolver)(e=>"string"==typeof e?e:null==e?void 0:e.peg),s=(0,de.makePkgResolver)({require:r,...(null===(n=e.resolver)||void 0===n?void 0:n.pkg)||{}});return function(e,t,n,r,o){let a="string"==typeof e?e:null==e?void 0:e.peg,u=[],c=i(a,t,n,r,o);return c.path=a,c.found||(u=u.concat(c.search),c=l(a,t,n,r,o),c.path=a,c.found||(u=u.concat(c.search),c=s(a,t,n,r,o),c.path=a,c.found||(c.search=u.concat(c.search)))),c}}(this.options);this.jsonic=g.Jsonic.make(),this.options.debug&&this.jsonic.use(v.Debug,{trace:!0}),this.jsonic.use(j).use(M.MultiSource,{resolver:(null==e?void 0:e.resolver)||t})}parse(e,t){let n,r={fileName:this.options.path,multisource:{path:this.options.path,deps:t&&t.deps||void 0}};t&&null!=t.log&&Number.isInteger(t.log)&&(r.log=t.log);try{n=this.jsonic(e,r)}catch(i){if(!(i instanceof g.JsonicError||"JsonicError"===i.constructor.name))throw i;n=new m.Nil({why:"parse",err:new m.Nil({why:"syntax",msg:i.message,err:i})})}return n}}})),n=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ConjunctVal=t.norm=void 0;const n=u({}),i=p({}),o=s({}),a=l({}),c=h({}),d=r({}),f=m({});class g extends f.ValBase{constructor(e,t){super(e,t),this.isConjunctVal=!0}append(e){return this.peg.push(e),this}unify(e,t){const r=1e7*Math.random()%1e6|0;let l=!0,s=[];for(let i=0;i<this.peg.length;i++)if(s[i]=(0,n.unite)(t,this.peg[i],e,"cj-own"+r),l=l&&be.DONE===s[i].done,s[i]instanceof c.Nil)return c.Nil.make(t,"&peer["+s[i].canon+","+e.canon+"]",this.peg[i],e);s=v(s),s.sort((e,t)=>e.constructor.name===t.constructor.name?0:e.constructor.name<t.constructor.name?-1:1);let u,p,h=[],f=s[0];e:for(let m=0;m<s.length;m++){if(be.DONE!==f.done){let e=(0,n.unite)(t,f,i.TOP,"cj-peer-t0");if(be.DONE!==e.done&&!(e instanceof a.MapVal||e instanceof o.ListVal||e instanceof d.RefVal)){h.push(e);continue e}f=e}let e=s[m+1];if(null==e)h.push(f);else if(f instanceof d.RefVal&&!(e instanceof d.RefVal))h.push(f),f=e;else if(e instanceof d.RefVal&&!(f instanceof d.RefVal))h.push(f),f=e;else if(u=(0,n.unite)(t,f,e,"cj-peer-t0t1"),l=l&&be.DONE===u.done,u instanceof g)h.push(f),f=e;else{if(u instanceof c.Nil)return u;f=u}}return p=0===h.length?i.TOP:1===h.length?h[0]:new g({peg:h},t),p.done=l?be.DONE:this.done+1,p}clone(e,t){let n=super.clone(e,t);return n.peg=this.peg.map(e=>e.clone(null,t)),n}get canon(){return this.peg.map(e=>e.canon).join("&")}gen(e){let t=c.Nil.make(e,"conjunct",this,void 0);if(t.path=this.path,t.url=this.url,t.row=this.row,t.col=this.col,(0,ye.descErr)(t),!e)throw new Error(t.msg);e.err.push(t)}}function v(e){let t=[];for(let n=0,r=0;n<e.length;n++,r++)e[n]instanceof g?(t.push(...e[n].peg),r+=e[n].peg.length-1):t[r]=e[n];return t}t.ConjunctVal=g,t.norm=v})),r=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RefVal=void 0;const r=u({}),s=p({}),o=n({}),a=l({}),c=h({}),d=i({}),f=m({});class g extends f.ValBase{constructor(e,t){super(e,t),this.isRefVal=!0,this.absolute=!1,this.prefix=!1,this.peg=[],this.absolute=!0===this.absolute||!0===e.absolute,this.prefix=!0===e.prefix;for(let n=0;n<e.peg.length;n++)this.append(e.peg[n])}append(e){let t;"string"==typeof e?(t=e,this.peg.push(t)):e instanceof s.StringVal?(t=e.peg,this.peg.push(t)):e instanceof d.VarVal?(t=e,this.peg.push(t)):e instanceof g&&(e.absolute&&(this.absolute=!0),this.prefix?e.prefix&&this.peg.push("."):e.prefix&&(0===this.peg.length?this.prefix=!0:0<this.peg.length&&this.peg.push(".")),this.peg.push(...e.peg))}unify(e,t){let n=this;if(this.id!==e.id){let i=null==t?this:this.find(t);i=i||this,null==i&&this.canon===e.canon?n=this:i instanceof g?s.TOP===e?n=this:e instanceof c.Nil?n=c.Nil.make(t,"ref["+this.peg+"]",this,e):this.canon===e.canon?n=this:(this.done=be.DONE===this.done?be.DONE:this.done+1,n=new o.ConjunctVal({peg:[this,e]},t)):n=(0,r.unite)(t,i,e,"ref"),n.done=be.DONE===n.done?be.DONE:this.done+1}return n}find(e){let t=this.path,n=[],r=[];for(let o=0;o<this.peg.length;o++){let t=this.peg[o];if(t instanceof d.VarVal){let n=t.peg,i=n?""+n.peg:"";if("KEY"===i){if(o!==this.peg.length-1)return;r.push(i)}if("SELF"===i){if(0!==o)return;r.push(i)}else if("PARENT"===i){if(0!==o)return;r.push(i)}else if(0===r.length){if(t=t.unify(s.TOP,e),t instanceof c.Nil)return;t=""+t.peg}}else n.push(t)}t=this.absolute?n:t.slice(0,r.includes("SELF")?0:(r.includes("PARENT"),-1)).concat(n),t=t.reduce((e,t)=>("."===t?e.length=e.length-1:e.push(t),e),[]);let i=e.root,l=0;for(;l<t.length;l++){let e=t[l];if(!(i instanceof a.MapVal))break;i=i.peg[e]}if(l===t.length){if(r.includes("KEY")){let n=t[t.length-1],r=new s.StringVal({peg:null==n?"":n},e);return r.done=be.DONE,r.path=this.path,r}return i}}same(e){return null!=e&&this.peg===e.peg}clone(e,t){return super.clone({peg:this.peg,absolute:this.absolute,...e||{}},t)}get canon(){return(this.absolute?"$":"")+(0<this.peg.length?".":"")+this.peg.map(e=>"."===e?"":e.isVal?e.canon:""+e).join(".")}gen(e){let t=c.Nil.make(e,"ref",this,void 0);if(t.path=this.path,t.url=this.url,t.row=this.row,t.col=this.col,(0,ye.descErr)(t),!e)throw new Error(t.msg);e.err.push(t)}}t.RefVal=g})),i=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VarVal=void 0;const n=p({}),i=h({}),l=r({}),s=m({});class o extends s.ValBase{constructor(e,t){super(e,t),this.isVarVal=!0}unify(e,t){let r,s;return this.peg.isVal?this.peg instanceof l.RefVal?(this.peg.absolute=!0,s=this.peg):s=this.peg.unify(e):s=new n.StringVal({peg:""+this.peg},t),s instanceof l.RefVal||be.DONE!==s.done?r=s:s instanceof n.StringVal?(r=t.var[s.peg],null==r&&(r=i.Nil.make(t,"var["+s.peg+"]",this,e))):r=i.Nil.make(t,"var["+typeof s+"]",this,e),r}same(e){return null!=e&&e instanceof o&&this.peg===e.peg}clone(e,t){return super.clone(e,t)}get canon(){var e;return"$"+((null===(e=this.peg)||void 0===e?void 0:e.isVal)?this.peg.canon:""+this.peg)}gen(e){let t=i.Nil.make(e,"var",this,void 0);if(t.path=this.path,t.url=this.url,t.row=this.row,t.col=this.col,(0,ye.descErr)(t),!e)throw new Error(t.msg);e.err.push(t)}}t.VarVal=o})),l=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MapVal=void 0;const r=u({}),i=p({}),l=n({}),s=h({}),o=m({});class a extends o.ValBase{constructor(e,t){if(super(e,t),this.isMapVal=!0,this.spread={cj:void 0},null==this.peg)throw new Error("MapVal spec.peg undefined");let n=this.peg[a.SPREAD];delete this.peg[a.SPREAD],n&&"&"===n.o&&(this.spread.cj=Array.isArray(n.v)?1<n.v.length?new l.ConjunctVal({peg:n.v},t):n.v[0]:n.v)}unify(e,t){let n=!0,l=i.TOP===e?this:new a({peg:{}},t);l.spread.cj=this.spread.cj,e instanceof a&&(l.spread.cj=null==l.spread.cj?e.spread.cj:null==e.spread.cj?l.spread.cj:l.spread.cj=(0,r.unite)(t,l.spread.cj,e.spread.cj)),l.done=this.done+1;let o=l.spread.cj||i.TOP;for(let i in this.peg){let e=t.descend(i),s=o.clone(null,e);l.peg[i]=(0,r.unite)(e,this.peg[i],s,"map-own"),n=n&&be.DONE===l.peg[i].done}if(e instanceof a){let i=(0,r.unite)(t,e,void 0,"map-peer-map");for(let e in i.peg){let a=i.peg[e],u=l.peg[e],c=l.peg[e]=void 0===u?a:u instanceof s.Nil?u:a instanceof s.Nil?a:(0,r.unite)(t.descend(e),u,a,"map-peer");if(this.spread.cj){let n=t.descend(e),i=o.clone(null,n);c=l.peg[e]=(0,r.unite)(n,l.peg[e],i)}n=n&&be.DONE===c.done}}else if(i.TOP!==e)return s.Nil.make(t,"map",this,e);return l.done=n?be.DONE:l.done,l}clone(e,t){let n=super.clone(e,t);n.peg={};for(let r of Object.entries(this.peg))n.peg[r[0]]=r[1]instanceof o.ValBase?r[1].clone(null,t):r[1];return this.spread.cj&&(n.spread.cj=this.spread.cj.clone(null,t)),n}get canon(){let e=Object.keys(this.peg);return"{"+(this.spread.cj?"&:"+this.spread.cj.canon+(0<e.length?",":""):"")+e.map(e=>[JSON.stringify(e)+":"+this.peg[e].canon]).join(",")+"}"}gen(e){let t={};for(let n in this.peg)t[n]=this.peg[n].gen(e);return t}}t.MapVal=a,a.SPREAD=Symbol("spread")})),s=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ListVal=void 0;const r=u({}),i=p({}),l=n({}),s=h({}),o=m({});class a extends o.ValBase{constructor(e,t){if(super(e,t),this.isListVal=!0,this.spread={cj:void 0},null==this.peg)throw new Error("ListVal spec.peg undefined");let n=this.peg[a.SPREAD];delete this.peg[a.SPREAD],n&&"&"===n.o&&(this.spread.cj=Array.isArray(n.v)&&1<n.v.length?new l.ConjunctVal({peg:n.v},t):n.v)}unify(e,t){let n=!0,l=i.TOP===e?this:new a({peg:[]},t);l.spread.cj=this.spread.cj,e instanceof a&&(l.spread.cj=null==l.spread.cj?e.spread.cj:null==e.spread.cj?l.spread.cj:l.spread.cj=(0,r.unite)(t,l.spread.cj,e.spread.cj)),l.done=this.done+1;let o=l.spread.cj||i.TOP;for(let i in this.peg){let e=t.descend(i),s=o.clone(null,e);l.peg[i]=(0,r.unite)(e,this.peg[i],s,"list-own"),n=n&&be.DONE===l.peg[i].done}if(e instanceof a){let i=(0,r.unite)(t,e,void 0,"list-peer-list");for(let e in i.peg){let a=i.peg[e],u=l.peg[e],c=l.peg[e]=void 0===u?a:u instanceof s.Nil?u:a instanceof s.Nil?a:(0,r.unite)(t.descend(e),u,a,"list-peer");if(this.spread.cj){let n=t.descend(e),i=o.clone(null,n);c=l.peg[e]=(0,r.unite)(n,l.peg[e],i)}n=n&&be.DONE===c.done}}else if(i.TOP!==e)return s.Nil.make(t,"map",this,e);return l.done=n?be.DONE:l.done,l}clone(e,t){let n=super.clone(e,t);return n.peg=this.peg.map(e=>e.clone(null,t)),this.spread.cj&&(n.spread.cj=this.spread.cj.clone(null,t)),n}get canon(){let e=Object.keys(this.peg);return"["+(this.spread.cj?"&:"+this.spread.cj.canon+(0<e.length?",":""):"")+e.map(e=>[this.peg[e].canon]).join(",")+"]"}gen(e){return this.peg.map(t=>t.gen(e))}}t.ListVal=a,a.SPREAD=Symbol("spread")})),o=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DisjunctVal=void 0;const n=u({}),r=h({}),i=a({}),l=m({});class s extends l.ValBase{constructor(e,t,n){super(e,t),this.isDisjunctVal=!0}append(e){return this.peg.push(e),this}unify(e,t){let i,l=!0,o=[];for(let r=0;r<this.peg.length;r++)o[r]=(0,n.unite)(t,this.peg[r],e),l=l&&be.DONE===o[r].done;if(1<o.length){for(let t=0;t<o.length;t++)o[t]instanceof s&&o.splice(t,1,...o[t].peg);let e=new r.Nil;for(let t=0;t<o.length;t++)for(let n=t+1;n<o.length;n++)o[n].same(o[t])&&(o[n]=e);o=o.filter(e=>!(e instanceof r.Nil))}if(1==o.length)i=o[0];else{if(0==o.length)return r.Nil.make(t,"|:empty",this);i=new s({peg:o},t)}return i.done=l?be.DONE:this.done+1,i}clone(e,t){let n=super.clone(e,t);return n.peg=this.peg.map(e=>e.clone(null,t)),n}get canon(){return this.peg.map(e=>e.canon).join("|")}gen(e){if(0<this.peg.length){let t=this.peg.filter(e=>e instanceof i.PrefVal);t=0===t.length?this.peg:t;let n=t[0];for(let r=1;r<this.peg.length;r++){let t=n.unify(this.peg[r],e);n=t}return n.gen(e)}}}t.DisjunctVal=s})),a=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PrefVal=void 0;const n=u({}),r=h({}),i=m({});class l extends i.ValBase{constructor(e,t){super(e,t),this.isPrefVal=!0,this.pref=e.pref||e.peg}unify(e,t){let i,s=!0;return i=new l(e instanceof l?{peg:(0,n.unite)(t,this.peg,e.peg,"Pref000"),pref:(0,n.unite)(t,this.pref,e.pref,"Pref010")}:{peg:(0,n.unite)(null==t?void 0:t.clone({err:[]}),this.peg,e,"Pref020"),pref:(0,n.unite)(null==t?void 0:t.clone({err:[]}),this.pref,e,"Pref030")},t),s=s&&be.DONE===i.peg.done&&(null==i.pref||be.DONE===i.pref.done),i.peg instanceof r.Nil?i=i.pref:i.pref instanceof r.Nil&&(i=i.peg),i.done=s?be.DONE:this.done+1,i}same(e){if(null==e)return!1;let t=this.peg===e.peg||this.peg instanceof i.ValBase&&this.peg.same(e.peg),n=e instanceof l&&(this.pref===e.pref||this.pref instanceof i.ValBase&&this.pref.same(e.pref));return t&&n}clone(e,t){let n=super.clone(e,t);return n.pref=this.pref.clone(null,t),n}get canon(){return this.pref instanceof r.Nil?this.peg.canon:"*"+this.pref.canon}gen(e){let t=this.pref instanceof r.Nil?this.peg instanceof r.Nil?this.pref:this.peg:this.pref;if(t instanceof r.Nil){if((0,ye.descErr)(t),!e)throw new Error(t.msg);e.err.push(t)}return t.gen(e)}}t.PrefVal=l})),u=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.unite=t.disjunct=void 0;const n=f({});Object.defineProperty(t,"disjunct",{enumerable:!0,get:function(){return n.disjunct}});const r=c({});Object.defineProperty(t,"unite",{enumerable:!0,get:function(){return r.unite}})})),c=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.unite=void 0;const n=h({}),r=p({});function i(e,t){return e}t.unite=(e,t,l,s)=>{let o=t,a="u",u=!1;return!l||r.TOP!==t&&t?!t||r.TOP!==l&&l?t&&l&&r.TOP!==l&&(t.isNil?(o=i(t),a="an"):l.isNil?(o=i(l),a="bn"):t.isConjunctVal?(o=t.unify(l,e),u=!0,a="acj"):l.isConjunctVal||l.isDisjunctVal||l.isRefVal||l.isPrefVal?(o=l.unify(t,e),u=!0,a="bv"):t.constructor===l.constructor&&t.peg===l.peg?(o=i(t),a="up"):(o=t.unify(l,e),u=!0,a="ab")):(o=t,a="a"):(o=l,a="b"),o&&o.unify||(o=n.Nil.make(e,"unite",t,l),a+="N"),be.DONE===o.done||u||(o=o.unify(r.TOP,e),a+="T"),o}})),p=e((function(e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.IntegerVal=n.BooleanVal=n.StringVal=n.NumberVal=n.ScalarTypeVal=n.Integer=n.TOP=void 0;const r=d({}),i=t({}),l=h({}),s=m({});class o extends s.ValBase{constructor(){super(null),this.isTop=!0,this.id=0,this.top=!0,this.peg=void 0,this.done=be.DONE,this.path=[],this.row=-1,this.col=-1,this.url="",this.done=be.DONE}unify(e,t){return e}get canon(){return"top"}get site(){return new i.Site(this)}same(e){return this===e}clone(){return this}gen(e){}}const a=new o;n.TOP=a;class u{}n.Integer=u;class c extends s.ValBase{constructor(e,t){super(e,t),this.isScalarTypeVal=!0,this.done=be.DONE}unify(e,t){if(null==e?void 0:e.isScalarVal)return e.type===this.peg||Number===this.peg&&u===e.type?e:l.Nil.make(t,"no-scalar-unify",this,e);if(null==e?void 0:e.isScalarTypeVal){if(Number===this.peg&&u===e.peg)return e;if(Number===e.peg&&u===this.peg)return this}return l.Nil.make(t,"scalar-type",this,e)}get canon(){return this.peg.name.toLowerCase()}same(e){return(null==e?void 0:e.isScalarTypeVal)?this.peg===(null==e?void 0:e.peg):super.same(e)}gen(e){}}n.ScalarTypeVal=c;class p extends s.ValBase{constructor(e,t){super(e,t),this.isScalarVal=!0,this.type=e.type,this.done=be.DONE}clone(e,t){return super.clone({peg:this.peg,type:this.type,...e||{}},t)}unify(e,t){return(null==e?void 0:e.isScalarTypeVal)?e.unify(this,t):e.top?this:l.Nil.make(t,"scalar",this,e)}get canon(){return this.peg.toString()}same(e){return(null==e?void 0:e.isScalarVal)?e.peg===this.peg:super.same(e)}gen(e){return this.peg}}n.NumberVal=class extends p{constructor(e,t){super({peg:e.peg,type:Number},t),this.isNumberVal=!0}unify(e,t){if(null!=e){if(e.isScalarTypeVal&&e.type===Number)return this;if(e.isScalarVal&&e.peg===this.peg)return e.isIntegerVal?e:this}return super.unify(e,t)}},n.IntegerVal=class extends p{constructor(e,t){if(!Number.isInteger(e.peg))throw new Error("not-integer");super({peg:e.peg,type:u},t),this.isIntegerVal=!0}unify(e,t){if(null!=e){if(e.isScalarTypeVal&&(e.peg===Number||e.peg===u))return this;if(e.isScalarVal&&e.peg===this.peg)return this}return super.unify(e,t)}},n.StringVal=class extends p{constructor(e,t){super({peg:e.peg,type:String},t),this.isStringVal=!0}unify(e,t){return super.unify(e,t)}get canon(){return JSON.stringify(this.peg)}};class f extends p{constructor(e,t){super({peg:e.peg,type:Boolean},t),this.isBooleanVal=!0}unify(e,t){return super.unify(e,t)}}n.BooleanVal=f,f.TRUE=new f({peg:!0},new r.Context({vc:1,root:a})),f.FALSE=new f({peg:!1},new r.Context({vc:2,root:a}))})),d=e((function(e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Unify=n.Context=void 0;const r=p({}),i=t({}),l=u({});class s{constructor(e){this.cc=-1,this.var={},this.root=e.root,this.path=e.path||[],this.err=e.err||[],this.vc=null==e.vc?1e9:e.vc,this.cc=null==e.cc?this.cc:e.cc,this.var=e.var||this.var}clone(e){return new s({root:e.root||this.root,path:e.path,err:e.err||this.err,vc:this.vc,cc:this.cc,var:{...this.var}})}descend(e){return this.clone({root:this.root,path:this.path.concat(e)})}}n.Context=s,n.Unify=class{constructor(e,t,n){this.lang=t||new i.Lang,"string"==typeof e&&(e=this.lang.parse(e)),this.cc=0,this.root=e,this.res=e,this.err=e.err||[];let o=e;if(!e.nil){n=n||new s({root:o,err:this.err});let e=9;for(;this.cc<e&&be.DONE!==o.done;this.cc++)n.cc=this.cc,o=(0,l.unite)(n,o,r.TOP),n=n.clone({root:o})}this.res=o}}})),h=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Nil=void 0;const n=m({});class r extends n.ValBase{constructor(e,t){super(e&&"string"!=typeof e?e:{},t),this.isNil=!0,this.nil=!0,this.msg="",e&&"object"==typeof e&&(this.why=null==e?void 0:e.why,this.msg="string"==typeof(null==e?void 0:e.msg)?e.msg:this.msg,this.err=e?Array.isArray(e.err)?[...e.err]:[e.err]:[]),this.done=be.DONE}unify(e,t){return this}clone(e,t){let n=super.clone(e,t);return n.why=this.why,n.primary=this.primary,n.secondary=this.secondary,n.msg=this.msg,n}get canon(){return"nil"}gen(e){if((0,ye.descErr)(this),!e)throw new Error(this.msg);e.err.push(this)}}t.Nil=r,r.make=(e,t,n,i)=>{let l=new r({why:t},e);return null!=n&&(l.row=n.row,l.col=n.col,l.url=n.url,l.primary=n,null!=i)&&(l.secondary=i,l.url===i.url&&(l.row<i.row||l.row===i.row&&l.col<i.col)&&(l.row=i.row,l.col=i.col,l.url=i.url,l.primary=i,l.secondary=n)),e&&e.err.push(l),l}})),f=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.disjunct=void 0;const n=o({});m({}),t.disjunct=(e,t,r)=>new n.DisjunctVal({peg:[]},e,[])})),m=e((function(e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.ValBase=void 0;const r=t({});n.ValBase=class{constructor(e,t){this.isVal=!0,this.done=0,this.path=[],this.row=-1,this.col=-1,this.url="",this.top=!1,this.peg=void 0,this.err=[],this.peg=null==e?void 0:e.peg,this.path=(null==t?void 0:t.path)||[],this.id=9e9+Math.floor(1e9*Math.random())}same(e){return null!=e&&this.id===e.id}clone(e,t){let n=t?t.clone({path:t.path.concat(this.path.slice(t.path.length))}):void 0,r=new this.constructor(e||{peg:this.peg},n);return null==n&&(r.path=this.path.slice(0)),r}get site(){return new r.Site(this)}unify(e,t){return this}get canon(){return""}gen(e){return null}}})),g={exports:{}};(function(e){(function(){!function(t){"object"==typeof g.exports?g.exports=t():("undefined"!=typeof window?window:void 0!==e?e:"undefined"!=typeof self?self:this).Jsonic=t()}((function(){var e=function(e){var t;return function(n){return t||e(t={exports:{},parent:n},t.exports),t.exports}},t=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.modlist=t.findTokenSet=t.values=t.keys=t.omap=t.str=t.prop=t.parserwrap=t.trimstk=t.tokenize=t.srcfmt=t.snip=t.regexp=t.mesc=t.makelog=t.isarr=t.filterRules=t.extract=t.escre=t.errinject=t.errdesc=t.entries=t.defprop=t.deep=t.configure=t.clone=t.clean=t.charset=t.badlex=t.assign=t.S=t.JsonicError=void 0;const i=n({}),l=e=>null==e?[]:Object.keys(e);t.keys=l;const s=e=>null==e?[]:Object.values(e);t.values=s;const o=e=>null==e?[]:Object.entries(e);t.entries=o;const a=(e,...t)=>Object.assign(null==e?{}:e,...t);t.assign=a,t.isarr=e=>Array.isArray(e);const u=Object.defineProperty;t.defprop=u;const c=(e,t)=>Object.entries(e||{}).reduce((e,n)=>{let r=t?t(n):n;void 0===r[0]?delete e[n[0]]:e[r[0]]=r[1];let i=2;for(;void 0!==r[i];)e[r[i]]=r[i+1],i+=2;return e},{});t.omap=c;const p={indent:". ",logindent:" ",space:" ",gap:" ",Object:"Object",Array:"Array",object:"object",string:"string",function:"function",unexpected:"unexpected",map:"map",list:"list",elem:"elem",pair:"pair",val:"val",node:"node",no_re_flags:r.EMPTY,unprintable:"unprintable",invalid_ascii:"invalid_ascii",invalid_unicode:"invalid_unicode",invalid_lex_state:"invalid_lex_state",unterminated_string:"unterminated_string",unterminated_comment:"unterminated_comment",lex:"lex",parse:"parse",error:"error",none:"none",imp_map:"imp,map",imp_list:"imp,list",imp_null:"imp,null",end:"end",open:"open",close:"close",rule:"rule",stack:"stack",nUll:"null",name:"name",make:"make",colon:":"};t.S=p;class d extends SyntaxError{constructor(e,t,n,r,i){let l=b(e,t=g({},t),n,r,i);super(l.message),a(this,l),x(this)}toJSON(){return{...this,__error:!0,name:this.name,message:this.message,stack:this.stack}}}function h(e,t,n){let i=t.t,l=i[e];return null==l&&r.STRING===typeof e&&(l=t.tI++,i[l]=e,i[e]=l,i[e.substring(1)]=l,null!=n&&a(n.token,t.t)),l}function f(e,...t){return new RegExp(t.map(e=>e.esc?m(e.toString()):e).join(r.EMPTY),null==e?"":e)}function m(e){return null==e?"":e.replace(/[-\\|\]{}()[^$+*?.!=]/g,"\\$&").replace(/\t/g,"\\t").replace(/\r/g,"\\r").replace(/\n/g,"\\n")}function g(e,...t){let n=p.function===typeof e,r=null!=e&&(p.object===typeof e||n);for(let i of t){let t,l=p.function===typeof i,s=null!=i&&(p.object===typeof i||l);if(r&&s&&!l&&Array.isArray(e)===Array.isArray(i))for(let n in i)e[n]=g(e[n],i[n]);else e=void 0===i?e:l?i:s?p.function===typeof(t=i.constructor)&&p.Object!==t.name&&p.Array!==t.name?i:g(Array.isArray(i)?[]:{},i):i,n=p.function===typeof e,r=null!=e&&(p.object===typeof e||n)}return e}function v(e,t,n,r,i,l){let s={code:t,details:n,token:r,rule:i,ctx:l};return null==e?"":e.replace(/\$(\{?)([\w_0-9]+)(\}?)/g,(e,t,o,a)=>{let u=null!=s[o]?s[o]:null!=n[o]?n[o]:l.meta&&null!=l.meta[o]?l.meta[o]:null!=r[o]?r[o]:null!=i[o]?i[o]:null!=l.opts[o]?l.opts[o]:null!=l.cfg[o]?l.cfg[o]:null!=l[o]?l[o]:"$"+o,c=t&&a?u:JSON.stringify(u);return c=null==c?"":c,c.replace(/\n/g,"\n ")})}function x(e){e.stack&&(e.stack=e.stack.split("\n").filter(e=>!e.includes("jsonic/jsonic")).map(e=>e.replace(/ at /,"at ")).join("\n"))}function k(e,t,n){let i=0<n.sI?n.sI:0,l=0<n.rI?n.rI:1,s=0<n.cI?n.cI:1,o=null==n.src?r.EMPTY:n.src,a=e.substring(Math.max(0,i-333),i).split("\n"),u=e.substring(i,i+333).split("\n"),c=2+(r.EMPTY+(l+2)).length,p=l<3?1:l-2,d=e=>"\x1b[34m"+(r.EMPTY+p++).padStart(c," ")+" | \x1b[0m"+(null==e?r.EMPTY:e),h=a.length;return[2<h?d(a[h-3]):null,1<h?d(a[h-2]):null,d(a[h-1]+u[0])," ".repeat(c)+" "+" ".repeat(s-1)+"\x1b[31m"+"^".repeat(o.length||1)+" "+t+"\x1b[0m",d(u[1]),d(u[2])].filter(e=>null!=e).join("\n")}function b(e,t,n,r,i){var l,s,o;try{let a=i.cfg,u=i.meta,c=v(a.error[e]||(null===(l=null==t?void 0:t.use)||void 0===l?void 0:l.err)&&(t.use.err.code||t.use.err.message)||a.error.unknown,e,t,n,r,i);p.function===typeof a.hint&&(a.hint={...a.hint(),...a.hint});let d=["\x1b[31m[jsonic/"+e+"]:\x1b[0m "+c," \x1b[34m--\x3e\x1b[0m "+(u&&u.fileName||"<no-file>")+":"+n.rI+":"+n.cI,k(i.src(),c,n),"",v((a.hint[e]||(null===(o=null===(s=t.use)||void 0===s?void 0:s.err)||void 0===o?void 0:o.message)||a.hint.unknown||"").trim().split("\n").map(e=>" "+e).join("\n"),e,t,n,r,i),""," \x1b[2mhttps://jsonic.senecajs.org\x1b[0m"," \x1b[2m--internal: rule="+r.name+"~"+r.state+"; token="+h(n.tin,i.cfg)+(null==n.why?"":"~"+n.why)+"; plugins="+i.plgn().map(e=>e.name).join(",")+"--\x1b[0m\n"].join("\n"),f={internal:{token:n,ctx:i}};return f={...Object.create(f),message:d,code:e,details:t,meta:u,fileName:u?u.fileName:void 0,lineNumber:n.rI,columnNumber:n.cI},f}catch(a){return console.log(a),{}}}function y(e){return"function"==typeof e.debug.print.src?e.debug.print.src:t=>{let n=null==t?r.EMPTY:Array.isArray(t)?JSON.stringify(t).replace(/]$/,o(t).filter(e=>isNaN(e[0])).map((e,t)=>(0===t?", ":"")+e[0]+": "+JSON.stringify(e[1]))+"]"):JSON.stringify(t);return n=n.substring(0,e.debug.maxlen)+(e.debug.maxlen<n.length?"...":r.EMPTY),n}}function j(e,t=44){let n;try{n="object"==typeof e?JSON.stringify(e):""+e}catch(r){n=""+e}return S(t<n.length?n.substring(0,t-3)+"...":n,t)}function S(e,t=5){return void 0===e?"":(""+e).substring(0,t).replace(/[\r\n\t]/g,".")}function E(...e){return null==e?{}:e.filter(e=>!1!==e).map(e=>"object"==typeof e?l(e).join(r.EMPTY):e).join(r.EMPTY).split(r.EMPTY).reduce((e,t)=>(e[t]=t.charCodeAt(0),e),{})}function O(e){for(let t in e)null==e[t]&&delete e[t];return e}t.JsonicError=d,t.configure=function(e,t,n){var r,i,u,p,d,g,v,x,k,b,y,j,S,N,_,T,w,P,I,M,C,R,A,V,L,D,$,F,Y,J,B,U,K,q,z,G,Z,W,H,X,Q,ee,te,ne,re,ie,le,se,oe,ae;const ue=t||{};ue.t=ue.t||{},ue.tI=ue.tI||1;const ce=e=>h(e,ue);!1!==n.standard$&&(ce("#BD"),ce("#ZZ"),ce("#UK"),ce("#AA"),ce("#SP"),ce("#LN"),ce("#CM"),ce("#NR"),ce("#ST"),ce("#TX"),ce("#VL")),ue.safe={key:!1!==(null===(r=n.safe)||void 0===r?void 0:r.key)},ue.fixed={lex:!!(null===(i=n.fixed)||void 0===i?void 0:i.lex),token:n.fixed?c(O(n.fixed.token),([e,t])=>[t,h(e,ue)]):{},ref:void 0,check:null===(u=n.fixed)||void 0===u?void 0:u.check},ue.fixed.ref=c(ue.fixed.token,([e,t])=>[e,t]),ue.fixed.ref=Object.assign(ue.fixed.ref,c(ue.fixed.ref,([e,t])=>[t,e])),ue.match={lex:!!(null===(p=n.match)||void 0===p?void 0:p.lex),value:n.match?c(O(n.match.value),([e,t])=>[e,t]):{},token:n.match?c(O(n.match.token),([e,t])=>[h(e,ue),t]):{},check:null===(d=n.match)||void 0===d?void 0:d.check},c(ue.match.token,([e,t])=>[e,(t.tin$=+e,t)]);const pe=n.tokenSet?Object.keys(n.tokenSet).reduce((e,t)=>(e[t]=n.tokenSet[t].filter(e=>null!=e).map(e=>ce(e)),e),{}):{};ue.tokenSet=ue.tokenSet||{},o(pe).map(e=>{let t=e[0],n=e[1];ue.tokenSet[t]?(ue.tokenSet[t].length=0,ue.tokenSet[t].push(...n)):ue.tokenSet[t]=n}),ue.tokenSetTins=o(ue.tokenSet).reduce((e,t)=>(e[t[0]]=e[t[0]]||{},t[1].map(n=>e[t[0]][n]=!0),e),{}),ue.tokenSetTins.IGNORE=ue.tokenSetTins.IGNORE||{},ue.space={lex:!!(null===(g=n.space)||void 0===g?void 0:g.lex),chars:E(null===(v=n.space)||void 0===v?void 0:v.chars),check:null===(x=n.space)||void 0===x?void 0:x.check},ue.line={lex:!!(null===(k=n.line)||void 0===k?void 0:k.lex),chars:E(null===(b=n.line)||void 0===b?void 0:b.chars),rowChars:E(null===(y=n.line)||void 0===y?void 0:y.rowChars),single:!!(null===(j=n.line)||void 0===j?void 0:j.single),check:null===(S=n.line)||void 0===S?void 0:S.check},ue.text={lex:!!(null===(N=n.text)||void 0===N?void 0:N.lex),modify:((null===(_=ue.text)||void 0===_?void 0:_.modify)||[]).concat(([null===(T=n.text)||void 0===T?void 0:T.modify]||[]).flat()).filter(e=>null!=e),check:null===(w=n.text)||void 0===w?void 0:w.check},ue.number={lex:!!(null===(P=n.number)||void 0===P?void 0:P.lex),hex:!!(null===(I=n.number)||void 0===I?void 0:I.hex),oct:!!(null===(M=n.number)||void 0===M?void 0:M.oct),bin:!!(null===(C=n.number)||void 0===C?void 0:C.bin),sep:null!=(null===(R=n.number)||void 0===R?void 0:R.sep)&&""!==n.number.sep,exclude:null===(A=n.number)||void 0===A?void 0:A.exclude,sepChar:null===(V=n.number)||void 0===V?void 0:V.sep,check:null===(L=n.number)||void 0===L?void 0:L.check},ue.value={lex:!!(null===(D=n.value)||void 0===D?void 0:D.lex),def:o((null===($=n.value)||void 0===$?void 0:$.def)||{}).reduce((e,t)=>(null==t[1]||!1===t[1]||t[1].match||(e[t[0]]=t[1]),e),{}),defre:o((null===(F=n.value)||void 0===F?void 0:F.def)||{}).reduce((e,t)=>(t[1]&&t[1].match&&(e[t[0]]=t[1],e[t[0]].consume=!!e[t[0]].consume),e),{})},ue.rule={start:null==(null===(Y=n.rule)||void 0===Y?void 0:Y.start)?"val":n.rule.start,maxmul:null==(null===(J=n.rule)||void 0===J?void 0:J.maxmul)?3:n.rule.maxmul,finish:!!(null===(B=n.rule)||void 0===B?void 0:B.finish),include:(null===(U=n.rule)||void 0===U?void 0:U.include)?n.rule.include.split(/\s*,+\s*/).filter(e=>""!==e):[],exclude:(null===(K=n.rule)||void 0===K?void 0:K.exclude)?n.rule.exclude.split(/\s*,+\s*/).filter(e=>""!==e):[]},ue.map={extend:!!(null===(q=n.map)||void 0===q?void 0:q.extend),merge:null===(z=n.map)||void 0===z?void 0:z.merge},ue.list={property:!!(null===(G=n.list)||void 0===G?void 0:G.property)};let de=Object.keys(ue.fixed.token).sort((e,t)=>t.length-e.length).map(e=>m(e)).join("|"),he=(null===(Z=n.comment)||void 0===Z?void 0:Z.lex)?(n.comment.def?s(n.comment.def):[]).filter(e=>e&&e.lex).map(e=>m(e.start)).join("|"):"",fe=["([",m(l(E(ue.space.lex&&ue.space.chars,ue.line.lex&&ue.line.chars)).join("")),"]",("string"==typeof n.ender?n.ender.split(""):Array.isArray(n.ender)?n.ender:[]).map(e=>"|"+m(e)).join(""),""===de?"":"|",de,""===he?"":"|",he,"|$)"];return ue.rePart={fixed:de,ender:fe,commentStart:he},ue.re={ender:f(null,...fe),rowChars:f(null,m(null===(W=n.line)||void 0===W?void 0:W.rowChars)),columns:f(null,"["+m(null===(H=n.line)||void 0===H?void 0:H.chars)+"]","(.*)$")},ue.lex={empty:!!(null===(X=n.lex)||void 0===X?void 0:X.empty),emptyResult:null===(Q=n.lex)||void 0===Q?void 0:Q.emptyResult,match:(null===(ee=n.lex)||void 0===ee?void 0:ee.match)?o(n.lex.match).reduce((e,t)=>{let r=t[0],i=t[1];if(i){let t=i.make(ue,n);t&&(t.matcher=r,t.make=i.make,t.order=i.order),e.push(t)}return e},[]).filter(e=>null!=e&&!1!==e&&-1<+e.order).sort((e,t)=>e.order-t.order):[]},ue.parse={prepare:s(null===(te=n.parse)||void 0===te?void 0:te.prepare)},ue.debug={get_console:(null===(ne=n.debug)||void 0===ne?void 0:ne.get_console)||(()=>console),maxlen:null==(null===(re=n.debug)||void 0===re?void 0:re.maxlen)?99:n.debug.maxlen,print:{config:!!(null===(le=null===(ie=n.debug)||void 0===ie?void 0:ie.print)||void 0===le?void 0:le.config),src:null===(oe=null===(se=n.debug)||void 0===se?void 0:se.print)||void 0===oe?void 0:oe.src}},ue.error=n.error||{},ue.hint=n.hint||{},(null===(ae=n.config)||void 0===ae?void 0:ae.modify)&&l(n.config.modify).forEach(e=>n.config.modify[e](ue,n)),ue.debug.print.config&&ue.debug.get_console().dir(ue,{depth:null}),ue.result={fail:[]},n.result&&(ue.result.fail=[...n.result.fail]),a(e.options,n),a(e.token,ue.t),a(e.tokenSet,ue.tokenSet),a(e.fixed,ue.fixed.ref),ue},t.tokenize=h,t.findTokenSet=function(e,t){return t.tokenSet[e]},t.mesc=function(e,t){return(t=new String(e)).esc=!0,t},t.regexp=f,t.escre=m,t.deep=g,t.errinject=v,t.trimstk=x,t.extract=k,t.errdesc=b,t.badlex=function(e,t,n){let r=e.next.bind(e);return e.next=(e,i,l,s)=>{let o=r(e,i,l,s);if(t===o.tin){let t={};throw null!=o.use&&(t.use=o.use),new d(o.why||p.unexpected,t,o,e,n)}return o},e},t.makelog=function(e,t){var n,r,i;let l=null===(i=null===(r=null===(n=e.opts)||void 0===n?void 0:n.plugin)||void 0===r?void 0:r.debug)||void 0===i?void 0:i.trace;if(t||l)if("number"==typeof(null==t?void 0:t.log)||l){let n=!1,r=null==t?void 0:t.log;(-1===r||l)&&(r=1,n=!0),e.log=(...t)=>{if(n){let n=t.filter(e=>p.object!=typeof e).map(e=>p.function==typeof e?e.name:e).join(p.gap);e.cfg.debug.get_console().log(n)}else e.cfg.debug.get_console().dir(t,{depth:r})}}else"function"==typeof t.log&&(e.log=t.log);return e.log},t.srcfmt=y,t.str=j,t.snip=S,t.clone=function(e){return g(Object.create(Object.getPrototypeOf(e)),e)},t.charset=E,t.clean=O,t.filterRules=function(e,t){let n=["open","close"];for(let r of n)e.def[r]=e.def[r].map(e=>(e.g="string"==typeof e.g?(e.g||"").split(/\s*,+\s*/):e.g||[],e)).filter(e=>t.rule.include.reduce((t,n)=>t||null!=e.g&&-1!==e.g.indexOf(n),0===t.rule.include.length)).filter(e=>t.rule.exclude.reduce((t,n)=>t&&(null==e.g||-1===e.g.indexOf(n)),!0));return e},t.prop=function(e,t,n){let r=e;try{let r,i=t.split(".");for(let t=0;t<i.length;t++)r=i[t],t<i.length-1&&(e=e[r]=e[r]||{});return void 0!==n&&(e[r]=n),e[r]}catch(i){throw new Error("Cannot "+(void 0===n?"get":"set")+" path "+t+" on object: "+j(r)+(void 0===n?"":" to value: "+j(n,22)))}},t.modlist=function(e,t){if(t&&e){if(0<e.length){if(t.delete&&0<t.delete.length)for(let r=0;r<t.delete.length;r++){let n=t.delete[r];(n<0?-1*n<=e.length:n<e.length)&&(e[(e.length+n)%e.length]=null)}if(t.move)for(let r=0;r<t.move.length;r+=2){let n=(e.length+t.move[r])%e.length,i=(e.length+t.move[r+1])%e.length,l=e[n];e.splice(n,1),e.splice(i,0,l)}let n=e.filter(e=>null!=e);n.length!==e.length&&(e.length=0,e.push(...n))}if(t.custom){let n=t.custom(e);null!=n&&(e=n)}}return e},t.parserwrap=function(e){return{start:function(t,n,l,s){try{return e.start(t,n,l,s)}catch(o){if("SyntaxError"===o.name){let s=0,a=0,u=0,c=r.EMPTY,p=o.message.match(/^Unexpected token (.) .*position\s+(\d+)/i);if(p){c=p[1],s=parseInt(p[2]),a=t.substring(0,s).replace(/[^\n]/g,r.EMPTY).length;let e=s-1;for(;-1<e&&"\n"!==t.charAt(e);)e--;u=Math.max(t.substring(e,s).length,0)}let f=o.token||(0,i.makeToken)("#UK",h("#UK",n.internal().config),void 0,c,(0,i.makePoint)(c.length,s,o.lineNumber||a,o.columnNumber||u));throw new d(o.code||"json",o.details||{msg:o.message},f,{},o.ctx||{uI:-1,opts:n.options,cfg:n.internal().config,token:f,meta:l,src:()=>t,root:()=>{},plgn:()=>n.internal().plugins,inst:()=>n,rule:{name:"no-rule"},sub:{},xs:-1,v2:f,v1:f,t0:f,t1:f,tC:-1,kI:-1,rs:[],rsI:0,rsm:{},n:{},log:l?l.log:void 0,F:y(n.internal().config),u:{},NORULE:{name:"no-rule"},NOTOKEN:{name:"no-token"}})}throw o}}}}})),n=e((function(e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.makeTextMatcher=n.makeNumberMatcher=n.makeCommentMatcher=n.makeStringMatcher=n.makeLineMatcher=n.makeSpaceMatcher=n.makeFixedMatcher=n.makeMatchMatcher=n.makeToken=n.makePoint=n.makeLex=n.makeNoToken=void 0;const i=t({});class l{constructor(e,t,n,r){this.len=-1,this.sI=0,this.rI=1,this.cI=1,this.token=[],this.len=e,null!=t&&(this.sI=t),null!=n&&(this.rI=n),null!=r&&(this.cI=r)}toString(){return"Point["+[this.sI+"/"+this.len,this.rI,this.cI]+(0<this.token.length?" "+this.token:"")+"]"}[r.INSPECT](){return this.toString()}}const s=(...e)=>new l(...e);n.makePoint=s;class o{constructor(e,t,n,i,l,s,o){this.isToken=!0,this.name=r.EMPTY,this.tin=-1,this.val=void 0,this.src=r.EMPTY,this.sI=-1,this.rI=-1,this.cI=-1,this.len=-1,this.name=e,this.tin=t,this.src=i,this.val=n,this.sI=l.sI,this.rI=l.rI,this.cI=l.cI,this.use=s,this.why=o,this.len=null==i?0:i.length}resolveVal(e,t){return"function"==typeof this.val?this.val(e,t):this.val}bad(e,t){return this.err=e,null!=t&&(this.use=(0,i.deep)(this.use||{},t)),this}toString(){return"Token["+this.name+"="+this.tin+" "+(0,i.snip)(this.src)+(void 0===this.val||"#ST"===this.name||"#TX"===this.name?"":"="+(0,i.snip)(this.val))+" "+[this.sI,this.rI,this.cI]+(null==this.use?"":" "+(0,i.snip)(""+JSON.stringify(this.use).replace(/"/g,""),22))+(null==this.err?"":" "+this.err)+(null==this.why?"":" "+(0,i.snip)(""+this.why,22))+"]"}[r.INSPECT](){return this.toString()}}const a=(...e)=>new o(...e);function u(e,t,n){let r=e.pnt,i=t;if(e.cfg.fixed.lex&&null!=n&&0<n.length){let l,s=e.cfg.fixed.token[n];null!=s&&(l=e.token(s,void 0,n,r)),null!=l&&(r.sI+=l.src.length,r.cI+=l.src.length,null==t?i=l:r.token.push(l))}return i}n.makeToken=a,n.makeNoToken=()=>a("",-1,void 0,r.EMPTY,s(-1)),n.makeFixedMatcher=(e,t)=>{let n=(0,i.regexp)(null,"^(",e.rePart.fixed,")");return function(t){let r=e.fixed;if(!r.lex)return;if(e.fixed.check){let n=e.fixed.check(t);if(n&&n.done)return n.token}let i=t.pnt,l=t.src.substring(i.sI).match(n);if(l){let e=l[1],n=e.length;if(0<n){let l,s=r.token[e];return null!=s&&(l=t.token(s,void 0,e,i),i.sI+=n,i.cI+=n),l}}}},n.makeMatchMatcher=(e,t)=>{let n=(0,i.values)(e.match.value),r=(0,i.values)(e.match.token);return 0===n.length&&0===r.length?null:function(t,i,l=0){if(!e.match.lex)return;if(e.match.check){let n=e.match.check(t);if(n&&n.done)return n.token}let s=t.pnt,o=t.src.substring(s.sI),a="o"===i.state?0:1;for(let e of n)if(e.match instanceof RegExp){let n=o.match(e.match);if(n){let r=n[0],i=r.length;if(0<i){let l,o=e.val?e.val(n):r;return l=t.token("#VL",o,r,s),s.sI+=i,s.cI+=i,l}}}else{let n=e.match(t,i);if(null!=n)return n}for(let e of r)if(!e.tin$||i.spec.def.tcol[a][l].includes(e.tin$))if(e instanceof RegExp){let n=o.match(e);if(n){let r=n[0],i=r.length;if(0<i){let n,l=e.tin$;return n=t.token(l,r,r,s),s.sI+=i,s.cI+=i,n}}}else{let n=e(t,i);if(null!=n)return n}}},n.makeCommentMatcher=(e,t)=>{let n=t.comment;e.comment={lex:!!n&&!!n.lex,def:((null==n?void 0:n.def)?(0,i.entries)(n.def):[]).reduce((e,[t,n])=>{if(null==n||!1===n)return e;let r={name:t,start:n.start,end:n.end,line:!!n.line,lex:!!n.lex,eatline:!!n.eatline};return e[t]=r,e},{})};let r=e.comment.lex?(0,i.values)(e.comment.def).filter(e=>e.lex&&e.line):[],l=e.comment.lex?(0,i.values)(e.comment.def).filter(e=>e.lex&&!e.line):[];return function(t,n){if(!e.comment.lex)return;if(e.comment.check){let n=e.comment.check(t);if(n&&n.done)return n.token}let s=t.pnt,o=t.src.substring(s.sI),a=s.rI,u=s.cI;for(let i of r)if(o.startsWith(i.start)){let n=o.length,r=i.start.length;for(u+=i.start.length;r<n&&!e.line.chars[o[r]];)u++,r++;if(i.eatline)for(;r<n&&e.line.chars[o[r]];)e.line.rowChars[o[r]]&&a++,r++;let l=o.substring(0,r),c=t.token("#CM",void 0,l,s);return s.sI+=l.length,s.cI=u,s.rI=a,c}for(let r of l)if(o.startsWith(r.start)){let n=o.length,l=r.start.length,c=r.end;for(u+=r.start.length;l<n&&!o.substring(l).startsWith(c);)e.line.rowChars[o[l]]&&(a++,u=0),u++,l++;if(o.substring(l).startsWith(c)){if(u+=c.length,r.eatline)for(;l<n&&e.line.chars[o[l]];)e.line.rowChars[o[l]]&&a++,l++;let i=o.substring(0,l+c.length),p=t.token("#CM",void 0,i,s);return s.sI+=i.length,s.rI=a,s.cI=u,p}return t.bad(i.S.unterminated_comment,s.sI,s.sI+9*r.start.length)}}},n.makeTextMatcher=(e,t)=>{let n=(0,i.regexp)(e.line.lex?null:"s","^(.*?)",...e.rePart.ender);return function(r){if(e.text.check){let t=e.text.check(r);if(t&&t.done)return t.token}let i=e.text,l=r.pnt,s=r.src.substring(l.sI),o=e.value.def,a=e.value.defre,c=s.match(n);if(c){let n,p=c[1],d=c[2];if(null!=p){let t=p.length;if(0<t){let u;if(e.value.lex)if(void 0!==(u=o[p]))n=r.token("#VL",u.val,p,l),l.sI+=t,l.cI+=t;else for(let e in a){let t=a[e];if(t.match){let e=t.match.exec(t.consume?s:p);if(e&&(t.consume||e[0].length===p.length)){let i=e[0];if(null==t.val)n=r.token("#VL",i,i,l);else{let s=t.val(e);n=r.token("#VL",s,i,l)}l.sI+=i.length,l.cI+=i.length}}}null==n&&i.lex&&(n=r.token("#TX",p,p,l),l.sI+=t,l.cI+=t)}}if(n&&(n=u(r,n,d)),n&&0<e.text.modify.length){const i=e.text.modify;for(let l=0;l<i.length;l++)n.val=i[l](n.val,r,e,t)}return n}}},n.makeNumberMatcher=(e,t)=>{let n=e.number,r=(0,i.regexp)(null,["^([-+]?(0(",[n.hex?"x[0-9a-fA-F_]+":null,n.oct?"o[0-7_]+":null,n.bin?"b[01_]+":null].filter(e=>null!=e).join("|"),")|\\.?[0-9]+([0-9_]*[0-9])?)","(\\.[0-9]?([0-9_]*[0-9])?)?","([eE][-+]?[0-9]+([0-9_]*[0-9])?)?"].join("").replace(/_/g,n.sep?(0,i.escre)(n.sepChar):""),")",...e.rePart.ender),l=n.sep?(0,i.regexp)("g",(0,i.escre)(n.sepChar)):void 0;return function(t){if(n=e.number,!n.lex)return;if(e.number.check){let n=e.number.check(t);if(n&&n.done)return n.token}let i=t.pnt,s=t.src.substring(i.sI),o=e.value.def,a=s.match(r);if(a){let n,r=a[1],s=a[9],c=!0;if(null!=r&&(c=!e.number.exclude||!r.match(e.number.exclude))){let s=r.length;if(0<s){let a;if(e.value.lex&&void 0!==(a=o[r]))n=t.token("#VL",a.val,r,i);else{let e=l?r.replace(l,""):r,o=+e;if(isNaN(o)){let t=e[0];"-"!==t&&"+"!==t||(o=("-"===t?-1:1)*+e.substring(1))}isNaN(o)||(n=t.token("#NR",o,r,i),i.sI+=s,i.cI+=s)}}}return c&&(n=u(t,n,s)),n}}},n.makeStringMatcher=(e,t)=>{let n=t.string||{};return e.string=e.string||{},e.string=(0,i.deep)(e.string,{lex:!!(null==n?void 0:n.lex),quoteMap:(0,i.charset)(n.chars),multiChars:(0,i.charset)(n.multiChars),escMap:{...n.escape},escChar:n.escapeChar,escCharCode:null==n.escapeChar?void 0:n.escapeChar.charCodeAt(0),allowUnknown:!!n.allowUnknown,replaceCodeMap:(0,i.omap)((0,i.clean)({...n.replace}),([e,t])=>[e.charCodeAt(0),t]),hasReplace:!1,abandon:!!n.abandon}),e.string.escMap=(0,i.clean)(e.string.escMap),e.string.hasReplace=0<(0,i.keys)(e.string.replaceCodeMap).length,function(t){let n=e.string;if(!n.lex)return;if(e.string.check){let n=e.string.check(t);if(n&&n.done)return n.token}let{quoteMap:l,escMap:s,escChar:o,escCharCode:a,multiChars:u,allowUnknown:c,replaceCodeMap:p,hasReplace:d}=n,{pnt:h,src:f}=t,{sI:m,rI:g,cI:v}=h,x=f.length;if(l[f[m]]){const l=f[m],k=m,b=g,y=u[l];++m,++v;let j,S=[];for(;m<x;m++){v++;let r=f[m];if(j=void 0,l===r){m++;break}if(o===r){m++,v++;let e=s[f[m]];if(null!=e)S.push(e);else if("x"===f[m]){m++;let e=parseInt(f.substring(m,m+2),16);if(isNaN(e)){if(n.abandon)return;return m-=2,v-=2,h.sI=m,h.cI=v,t.bad(i.S.invalid_ascii,m,m+4)}let r=String.fromCharCode(e);S.push(r),m+=1,v+=2}else if("u"===f[m]){m++;let e="{"===f[m]?(m++,1):0,r=e?6:4,l=parseInt(f.substring(m,m+r),16);if(isNaN(l)){if(n.abandon)return;return m=m-2-e,v-=2,h.sI=m,h.cI=v,t.bad(i.S.invalid_unicode,m,m+r+2+2*e)}let s=String.fromCodePoint(l);S.push(s),m+=r-1+e,v+=r+e}else{if(!c){if(n.abandon)return;return h.sI=m,h.cI=v-1,t.bad(i.S.unexpected,m,m+1)}S.push(f[m])}}else if(d&&void 0!==(j=p[f.charCodeAt(m)]))S.push(j),v++;else{let r=m,s=l.charCodeAt(0),o=f.charCodeAt(m);for(;(!d||void 0===(j=p[o]))&&m<x&&32<=o&&s!==o&&a!==o;)o=f.charCodeAt(++m),v++;if(v--,void 0===j&&o<32){if(!y||!e.line.chars[f[m]]){if(n.abandon)return;return h.sI=m,h.cI=v,t.bad(i.S.unprintable,m,m+1)}e.line.rowChars[f[m]]&&(h.rI=++g),v=1,S.push(f.substring(r,m+1))}else S.push(f.substring(r,m)),m--}}if(f[m-1]!==l||h.sI===m-1){if(n.abandon)return;return h.rI=b,t.bad(i.S.unterminated_string,k,m)}const E=t.token("#ST",S.join(r.EMPTY),f.substring(h.sI,m),h);return h.sI=m,h.rI=g,h.cI=v,E}}},n.makeLineMatcher=(e,t)=>function(t){if(!e.line.lex)return;if(e.line.check){let n=e.line.check(t);if(n&&n.done)return n.token}let n,{chars:r,rowChars:i}=e.line,{pnt:l,src:s}=t,{sI:o,rI:a}=l,u=e.line.single;for(u&&(n={});r[s[o]]&&!(n&&(n[s[o]]=(n[s[o]]||0)+1,u&&1<n[s[o]]));)a+=i[s[o]]?1:0,o++;if(l.sI<o){let e=s.substring(l.sI,o);const n=t.token("#LN",void 0,e,l);return l.sI+=e.length,l.rI=a,l.cI=1,n}},n.makeSpaceMatcher=(e,t)=>function(t){if(!e.space.lex)return;if(e.space.check){let n=e.space.check(t);if(n&&n.done)return n.token}let{chars:n}=e.space,{pnt:r,src:i}=t,{sI:l,cI:s}=r;for(;n[i[l]];)l++,s++;if(r.sI<l){let e=i.substring(r.sI,l);const n=t.token("#SP",void 0,e,r);return r.sI+=e.length,r.cI=s,n}};class c{constructor(e){this.src=r.EMPTY,this.ctx={},this.cfg={},this.pnt=s(-1),this.ctx=e,this.src=e.src(),this.cfg=e.cfg,this.pnt=s(this.src.length)}token(e,t,n,r,l,s){let o,u;return"string"==typeof e?(u=e,o=(0,i.tokenize)(u,this.cfg)):(o=e,u=(0,i.tokenize)(e,this.cfg)),a(u,o,t,n,r||this.pnt,l,s)}next(e,t,n,r){let l,s,o=this.pnt,a=o.sI;if(o.end)l=o.end;else if(0<o.token.length)l=o.token.shift();else if(o.len<=o.sI)o.end=this.token("#ZZ",void 0,"",o),l=o.end;else{try{for(let t of this.cfg.lex.match)if(l=t(this,e,r)){s=t;break}}catch(u){l=l||this.token("#BD",void 0,this.src[o.sI],o,{err:u},u.code||i.S.unexpected)}l=l||this.token("#BD",void 0,this.src[o.sI],o,void 0,i.S.unexpected)}return this.ctx.log&&this.ctx.log(i.S.lex,this.ctx,e,this,o,a,s,l,t,n,r),this.ctx.sub.lex&&this.ctx.sub.lex.map(t=>t(l,e,this.ctx)),l}tokenize(e){return(0,i.tokenize)(e,this.cfg)}bad(e,t,n){return this.token("#BD",void 0,0<=t&&t<=n?this.src.substring(t,n):this.src[this.pnt.sI],void 0,void 0,e)}}n.makeLex=(...e)=>new c(...e)})),r={};Object.defineProperty(r,"__esModule",{value:!0}),r.STRING=r.INSPECT=r.EMPTY=r.AFTER=r.BEFORE=r.CLOSE=r.OPEN=void 0,r.OPEN="o",r.CLOSE="c",r.BEFORE="b",r.AFTER="a",r.EMPTY="",r.INSPECT=Symbol.for("nodejs.util.inspect.custom"),r.STRING="string";var i={};Object.defineProperty(i,"__esModule",{value:!0}),i.defaults=void 0;const l=n({}),s={safe:{key:!0},tag:"-",fixed:{lex:!0,token:{"#OB":"{","#CB":"}","#OS":"[","#CS":"]","#CL":":","#CA":","}},match:{lex:!0,token:{}},tokenSet:{IGNORE:["#SP","#LN","#CM"],VAL:["#TX","#NR","#ST","#VL"],KEY:["#TX","#NR","#ST","#VL"]},space:{lex:!0,chars:" \t"},line:{lex:!0,chars:"\r\n",rowChars:"\n",single:!1},text:{lex:!0},number:{lex:!0,hex:!0,oct:!0,bin:!0,sep:"_",exclude:void 0},comment:{lex:!0,def:{hash:{line:!0,start:"#",lex:!0,eatline:!1},slash:{line:!0,start:"//",lex:!0,eatline:!1},multi:{line:!1,start:"/*",end:"*/",lex:!0,eatline:!1}}},string:{lex:!0,chars:"'\"`",multiChars:"`",escapeChar:"\\",escape:{b:"\b",f:"\f",n:"\n",r:"\r",t:"\t",v:"\v",'"':'"',"'":"'","`":"`","\\":"\\","/":"/"},allowUnknown:!0,abandon:!1},map:{extend:!0,merge:void 0},list:{property:!0},value:{lex:!0,def:{true:{val:!0},false:{val:!1},null:{val:null}}},ender:[],plugin:{},debug:{get_console:()=>console,maxlen:99,print:{config:!1,src:void 0}},error:{unknown:"unknown error: $code",unexpected:"unexpected character(s): $src",invalid_unicode:"invalid unicode escape: $src",invalid_ascii:"invalid ascii escape: $src",unprintable:"unprintable character: $src",unterminated_string:"unterminated string: $src",unterminated_comment:"unterminated comment: $src",unknown_rule:"unknown rule: $rulename"},hint:function(e=((e,t="replace")=>e[t](/[A-Z]/g,e=>" "+e.toLowerCase())[t](/[~%][a-z]/g,e=>("~"==e[0]?" ":"")+e[1].toUpperCase())),t="~sinceTheErrorIsUnknown,ThisIsProbablyABugInsideJsonic\nitself,OrAPlugin.~pleaseConsiderPostingAGithubIssue -Thanks!\n\n~code: $code,~details: \n$details|~theCharacter(s) $srcWereNotExpectedAtThisPointAsTheyDoNot\nmatchTheExpectedSyntax,EvenUnderTheRelaxedJsonicRules.~ifIt\nisNotObviouslyWrong,TheActualSyntaxErrorMayBeElsewhere.~try\ncommentingOutLargerAreasAroundThisPointUntilYouGetNoErrors,\nthenRemoveTheCommentsInSmallSectionsUntilYouFindThe\noffendingSyntax.~n%o%t%e:~alsoCheckIfAnyPluginsYouAreUsing\nexpectDifferentSyntaxInThisCase.|~theEscapeSequence $srcDoesNotEncodeAValidUnicodeCodePoint\nnumber.~youMayNeedToValidateYourStringDataManuallyUsingTest\ncodeToSeeHow~javaScriptWillInterpretIt.~alsoConsiderThatYour\ndataMayHaveBecomeCorrupted,OrTheEscapeSequenceHasNotBeen\ngeneratedCorrectly.|~theEscapeSequence $srcDoesNotEncodeAValid~a%s%c%i%iCharacter.~you\nmayNeedToValidateYourStringDataManuallyUsingTestCodeToSee\nhow~javaScriptWillInterpretIt.~alsoConsiderThatYourDataMay\nhaveBecomeCorrupted,OrTheEscapeSequenceHasNotBeenGenerated\ncorrectly.|~stringValuesCannotContainUnprintableCharacters (characterCodes\nbelow 32).~theCharacter $srcIsUnprintable.~youMayNeedToRemove\ntheseCharactersFromYourSourceData.~alsoCheckThatItHasNot\nbecomeCorrupted.|~thisStringHasNoEndQuote.|~thisCommentIsNeverClosed.|~noRuleNamed $rulenameIsDefined.~thisIsProbablyAnErrorInThe\ngrammarOfAPlugin.".split("|")){return"unknown|unexpected|invalid_unicode|invalid_ascii|unprintable|unterminated_string|unterminated_comment|unknown_rule".split("|").reduce((n,r,i)=>(n[r]=e(t[i]),n),{})},lex:{match:{match:{order:1e6,make:l.makeMatchMatcher},fixed:{order:2e6,make:l.makeFixedMatcher},space:{order:3e6,make:l.makeSpaceMatcher},line:{order:4e6,make:l.makeLineMatcher},string:{order:5e6,make:l.makeStringMatcher},comment:{order:6e6,make:l.makeCommentMatcher},number:{order:7e6,make:l.makeNumberMatcher},text:{order:8e6,make:l.makeTextMatcher}},empty:!0,emptyResult:void 0},parse:{prepare:{}},rule:{start:"val",finish:!0,maxmul:3,include:"",exclude:""},result:{fail:[]},config:{modify:{}},parser:{start:void 0}};i.defaults=s;var o={};Object.defineProperty(o,"__esModule",{value:!0}),o.makeRuleSpec=o.makeNoRule=o.makeRule=void 0;const a=t({});class u{constructor(e,t,n){this.i=-1,this.name=r.EMPTY,this.node=null,this.state=r.OPEN,this.n=Object.create(null),this.d=-1,this.u=Object.create(null),this.k=Object.create(null),this.bo=!1,this.ao=!1,this.bc=!1,this.ac=!1,this.os=0,this.cs=0,this.need=0,this.i=t.uI++,this.name=e.name,this.spec=e,this.child=t.NORULE,this.parent=t.NORULE,this.prev=t.NORULE,this.o0=t.NOTOKEN,this.o1=t.NOTOKEN,this.c0=t.NOTOKEN,this.c1=t.NOTOKEN,this.node=n,this.d=t.rsI,this.bo=null!=e.def.bo,this.ao=null!=e.def.ao,this.bc=null!=e.def.bc,this.ac=null!=e.def.ac}process(e,t){return this.spec.process(this,e,t,this.state)}eq(e,t=0){let n=this.n[e];return null==n||n===t}lt(e,t=0){let n=this.n[e];return null==n||n<t}gt(e,t=0){let n=this.n[e];return null==n||n>t}lte(e,t=0){let n=this.n[e];return null==n||n<=t}gte(e,t=0){let n=this.n[e];return null==n||n>=t}toString(){return"[Rule "+this.name+"~"+this.i+"]"}}const c=(...e)=>new u(...e);o.makeRule=c,o.makeNoRule=e=>c(g(e.cfg,{}),e);class p{constructor(){this.p=r.EMPTY,this.r=r.EMPTY,this.b=0}}const d=(...e)=>new p(...e),h=d(),f=d();class m{constructor(e,t){this.name=r.EMPTY,this.def={open:[],close:[],bo:[],bc:[],ao:[],ac:[],tcol:[]},this.cfg=e,this.def=Object.assign(this.def,t),this.def.open=(this.def.open||[]).filter(e=>null!=e),this.def.close=(this.def.close||[]).filter(e=>null!=e);for(let n of[...this.def.open,...this.def.close])v(n)}tin(e){return(0,a.tokenize)(e,this.cfg)}add(e,t,n){let r=(null==n?void 0:n.append)?"push":"unshift",i=((0,a.isarr)(t)?t:[t]).filter(e=>null!=e&&"object"==typeof e).map(e=>v(e)),l="o"===e?"open":"close",s=this.def[l];return s[r](...i),s=this.def[l]=(0,a.modlist)(s,n),(0,a.filterRules)(this,this.cfg),this.norm(),this}open(e,t){return this.add("o",e,t)}close(e,t){return this.add("c",e,t)}action(e,t,n,r){let i=this.def[t+n];return e?i.push(r):i.unshift(r),this}bo(e,t){return this.action(!t||!!e,r.BEFORE,r.OPEN,t||e)}ao(e,t){return this.action(!t||!!e,r.AFTER,r.OPEN,t||e)}bc(e,t){return this.action(!t||!!e,r.BEFORE,r.CLOSE,t||e)}ac(e,t){return this.action(!t||!!e,r.AFTER,r.CLOSE,t||e)}clear(){return this.def.open.length=0,this.def.close.length=0,this.def.bo.length=0,this.def.ao.length=0,this.def.bc.length=0,this.def.ac.length=0,this}norm(){this.def.open.map(e=>v(e)),this.def.close.map(e=>v(e));const e=[];function t(e,t,n){return n[e]=n[e]||[],[function(e,n){if(n.s&&n.s[t]){let r=[...new Set(e.concat(n.s[t]))];e.length=0,e.push(...r)}return e},n[e][t]=n[e][t]||[]]}return this.def.open.reduce(...t(0,0,e)),this.def.open.reduce(...t(0,1,e)),this.def.close.reduce(...t(1,0,e)),this.def.close.reduce(...t(1,1,e)),this.def.tcol=e,this}process(e,t,n,i){t.log&&t.log(a.S.rule,t,e,n);let l="o"===i,s=l?e:t.NORULE,o=l?"O":"C",u=this.def,p=l?u.open:u.close,d=l?e.bo?u.bo:null:e.bc?u.bc:null;if(d){let n;for(let r=0;r<d.length;r++)if(n=d[r].call(this,e,t,s,n),(null==n?void 0:n.isToken)&&(null==n?void 0:n.err))return this.bad(n,e,t,{is_open:l})}let m=0<p.length?function(e,t,n,i,l){let s=h;s.b=0,s.p=r.EMPTY,s.r=r.EMPTY,s.n=void 0,s.h=void 0,s.a=void 0,s.u=void 0,s.k=void 0,s.e=void 0;let o=null,u=0,c=!0,p=1<<l.cfg.t.AA-1,d=l.cfg.tokenSetTins.IGNORE;function f(e,t,r,i){let s;do{s=n.next(e,t,r,i),l.tC++}while(d[s.tin]);return s}let m=t.length;for(u=0;u<m;u++){o=t[u];let n=!1,r=!1;if(c=!0,o.S0){let e=(l.t0=l.NOTOKEN!==l.t0?l.t0:l.t0=f(i,o,u,0)).tin;if(n=!0,c=!!(o.S0[e/31|0]&(1<<e%31-1|p)),c&&(r=null!=o.S1,o.S1)){let e=(l.t1=l.NOTOKEN!==l.t1?l.t1:l.t1=f(i,o,u,1)).tin;r=!0,c=!!(o.S1[e/31|0]&(1<<e%31-1|p))}}if(e?(i.o0=n?l.t0:l.NOTOKEN,i.o1=r?l.t1:l.NOTOKEN,i.os=(n?1:0)+(r?1:0)):(i.c0=n?l.t0:l.NOTOKEN,i.c1=r?l.t1:l.NOTOKEN,i.cs=(n?1:0)+(r?1:0)),c&&o.c&&(c=c&&o.c(i,l,s)),c)break;o=null}c||(s.e=l.t0),o&&(s.n=null!=o.n?o.n:s.n,s.h=null!=o.h?o.h:s.h,s.a=null!=o.a?o.a:s.a,s.u=null!=o.u?o.u:s.u,s.k=null!=o.k?o.k:s.k,s.g=null!=o.g?o.g:s.g,s.e=o.e&&o.e(i,l,s)||void 0,s.p=null!=o.p&&!1!==o.p?"string"==typeof o.p?o.p:o.p(i,l,s):s.p,s.r=null!=o.r&&!1!==o.r?"string"==typeof o.r?o.r:o.r(i,l,s):s.r,s.b=null!=o.b&&!1!==o.b?"number"==typeof o.b?o.b:o.b(i,l,s):s.b);let g=u<t.length;return l.log&&l.log(a.S.parse,l,i,n,g,c,u,o,s),s}(l,p,n,e,t):f;if(m.h&&(m=m.h(e,t,m,s)||m,o+="H"),m.e)return this.bad(m.e,e,t,{is_open:l});if(m.n)for(let r in m.n)e.n[r]=0===m.n[r]?0:(null==e.n[r]?0:e.n[r])+m.n[r];if(m.u&&(e.u=Object.assign(e.u,m.u)),m.k&&(e.k=Object.assign(e.k,m.k)),m.a){o+="A";let n=m.a(e,t,m);if(n&&n.isToken&&n.err)return this.bad(n,e,t,{is_open:l})}if(m.p){t.rs[t.rsI++]=e;let n=t.rsm[m.p];if(!n)return this.bad(this.unknownRule(t.t0,m.p),e,t,{is_open:l});s=e.child=c(n,t,e.node),s.parent=e,s.n={...e.n},0<Object.keys(e.k).length&&(s.k={...e.k}),o+="P`"+m.p+"`"}else if(m.r){let n=t.rsm[m.r];if(!n)return this.bad(this.unknownRule(t.t0,m.r),e,t,{is_open:l});s=c(n,t,e.node),s.parent=e.parent,s.prev=e,s.n={...e.n},0<Object.keys(e.k).length&&(s.k={...e.k}),o+="R`"+m.r+"`"}else l||(s=t.rs[--t.rsI]||t.NORULE);let g=l?e.ao?u.ao:null:e.ac?u.ac:null;if(g){let n;for(let r=0;r<g.length;r++)if(n=g[r](e,t,s,n),(null==n?void 0:n.isToken)&&(null==n?void 0:n.err))return this.bad(n,e,t,{is_open:l})}s.why=o,t.log&&t.log(a.S.node,t,e,n,s),r.OPEN===e.state&&(e.state=r.CLOSE);let v=e[l?"os":"cs"]-(m.b||0);return 1===v?(t.v2=t.v1,t.v1=t.t0,t.t0=t.t1,t.t1=t.NOTOKEN):2==v&&(t.v2=t.t1,t.v1=t.t0,t.t0=t.NOTOKEN,t.t1=t.NOTOKEN),s}bad(e,t,n,r){throw new a.JsonicError(e.err||a.S.unexpected,{...e.use,state:r.is_open?a.S.open:a.S.close},e,t,n)}unknownRule(e,t){return e.err="unknown_rule",e.use=e.use||{},e.use.rulename=t,e}}const g=(...e)=>new m(...e);function v(e){if(r.STRING===typeof e.g?e.g=e.g.split(/\s*,\s*/):null==e.g&&(e.g=[]),e.g=e.g.sort(),e.s&&0!==e.s.length){const t=e=>e.flat().filter(e=>"number"==typeof e),n=(e,t)=>e.filter(e=>31*t<=e&&e<31*(t+1)),r=(e,t)=>e.reduce((e,n)=>1<<n-(31*t+1)|e,0),i=t([e.s[0]]),l=t([e.s[1]]),s=e;s.S0=0<i.length?new Array(Math.max(...i.map(e=>1+e/31|0))).fill(null).map((e,t)=>t).map(e=>r(n(i,e),e)):null,s.S1=0<l.length?new Array(Math.max(...l.map(e=>1+e/31|0))).fill(null).map((e,t)=>t).map(e=>r(n(l,e),e)):null}else e.s=null;return e.p||(e.p=null),e.r||(e.r=null),e.b||(e.b=null),e}o.makeRuleSpec=g;var x={};Object.defineProperty(x,"__esModule",{value:!0}),x.makeParser=x.makeRuleSpec=x.makeRule=void 0;const k=t({}),b=n({});Object.defineProperty(x,"makeRule",{enumerable:!0,get:function(){return o.makeRule}}),Object.defineProperty(x,"makeRuleSpec",{enumerable:!0,get:function(){return o.makeRuleSpec}});class y{constructor(e,t){this.rsm={},this.options=e,this.cfg=t}rule(e,t){if(null==e)return this.rsm;let n=this.rsm[e];if(null===t)delete this.rsm[e];else if(void 0!==t)return n=this.rsm[e]=this.rsm[e]||(0,o.makeRuleSpec)(this.cfg,{}),n=this.rsm[e]=t(this.rsm[e],this)||this.rsm[e],void(n.name=e);return n}start(e,t,n,i){let l,s=(0,b.makeToken)("#ZZ",(0,k.tokenize)("#ZZ",this.cfg),void 0,r.EMPTY,(0,b.makePoint)(-1)),a=(0,b.makeNoToken)(),u={uI:0,opts:this.options,cfg:this.cfg,meta:n||{},src:()=>e,root:()=>l,plgn:()=>t.internal().plugins,inst:()=>t,rule:{},sub:t.internal().sub,xs:-1,v2:s,v1:s,t0:a,t1:a,tC:-2,kI:-1,rs:[],rsI:0,rsm:this.rsm,log:void 0,F:(0,k.srcfmt)(this.cfg),u:{},NOTOKEN:a,NORULE:{}};u=(0,k.deep)(u,i);let c=(0,o.makeNoRule)(u);if(u.NORULE=c,u.rule=c,n&&k.S.function===typeof n.log&&(u.log=n.log),this.cfg.parse.prepare.forEach(e=>e(t,u,n)),""===e){if(this.cfg.lex.empty)return this.cfg.lex.emptyResult;throw new k.JsonicError(k.S.unexpected,{src:e},u.t0,c,u)}let p=(0,k.badlex)((0,b.makeLex)(u),(0,k.tokenize)("#BD",this.cfg),u),d=this.rsm[this.cfg.rule.start];if(null==d)return;let h=(0,o.makeRule)(d,u);l=h;let f=2*(0,k.keys)(this.rsm).length*p.src.length*2*u.cfg.rule.maxmul,m=0;for(;c!==h&&m<f;)u.kI=m,u.rule=h,u.log&&u.log("",u.kI+":"),u.sub.rule&&u.sub.rule.map(e=>e(h,u)),h=h.process(u,p),u.log&&u.log(k.S.stack,u,h,p),m++;if(s.tin!==p.next(h).tin)throw new k.JsonicError(k.S.unexpected,{},u.t0,c,u);const g=u.root().node;if(this.cfg.result.fail.includes(g))throw new k.JsonicError(k.S.unexpected,{},u.t0,c,u);return g}clone(e,t){let n=new y(e,t);return n.rsm=Object.keys(this.rsm).reduce((e,t)=>(e[t]=(0,k.filterRules)(this.rsm[t],this.cfg),e),{}),n.norm(),n}norm(){(0,k.values)(this.rsm).map(e=>e.norm())}}x.makeParser=(...e)=>new y(...e);var j={};function S(e){const{deep:t}=e.util,{OB:n,CB:r,OS:i,CS:l,CL:s,CA:o,TX:a,ST:u,ZZ:c}=e.token,{VAL:p,KEY:d}=e.tokenSet,h=(e,t)=>{if(!t.cfg.rule.finish)return t.t0.src="END_OF_SOURCE",t.t0},f=e=>{const t=e.o0,n=u===t.tin||a===t.tin?t.val:t.src;e.u.key=n};e.rule("val",e=>{e.bo(e=>e.node=void 0).open([{s:[n],p:"map",b:1,g:"map,json"},{s:[i],p:"list",b:1,g:"list,json"},{s:[p],g:"val,json"}]).close([{s:[c],g:"end,json"},{b:1,g:"more,json"}]).bc((e,t)=>{e.node=void 0===e.node?void 0===e.child.node?0===e.os?void 0:e.o0.resolveVal(e,t):e.child.node:e.node})}),e.rule("map",e=>{e.bo(e=>{e.node=Object.create(null)}).open([{s:[n,r],b:1,n:{pk:0},g:"map,json"},{s:[n],p:"pair",n:{pk:0},g:"map,json,pair"}]).close([{s:[r],g:"end,json"}])}),e.rule("list",e=>{e.bo(e=>{e.node=[]}).open([{s:[i,l],b:1,g:"list,json"},{s:[i],p:"elem",g:"list,elem,json"}]).close([{s:[l],g:"end,json"}])}),e.rule("pair",e=>{e.open([{s:[d,s],p:"val",u:{pair:!0},a:f,g:"map,pair,key,json"}]).bc((e,t)=>{e.u.pair&&(e.u.prev=e.node[e.u.key],e.node[e.u.key]=e.child.node)}).close([{s:[o],r:"pair",g:"map,pair,json"},{s:[r],b:1,g:"map,pair,json"}])}),e.rule("elem",e=>{e.open([{p:"val",g:"list,elem,val,json"}]).bc(e=>{!0!==e.u.done&&e.node.push(e.child.node)}).close([{s:[o],r:"elem",g:"list,elem,json"},{s:[l],b:1,g:"list,elem,json"}])});const m=(e,n)=>{let r=e.u.key,i=e.child.node;const l=e.u.prev;i=void 0===i?null:i,e.u.list&&n.cfg.safe.key&&("__proto__"===r||"constructor"===r)||(e.node[r]=null==l?i:n.cfg.map.merge?n.cfg.map.merge(l,i,e,n):n.cfg.map.extend?t(l,i):i)};e.rule("val",e=>{e.open([{s:[d,s],p:"map",b:2,n:{pk:1},g:"pair,jsonic"},{s:[p],g:"val,json"},{s:[[r,l]],b:1,c:e=>0<e.d,g:"val,imp,null,jsonic"},{s:[o],c:e=>0===e.d,p:"list",b:1,g:"list,imp,jsonic"},{s:[o],b:1,g:"list,val,imp,null,jsonic"},{s:[c],g:"jsonic"}],{append:!0,delete:[2]}).close([{s:[[r,l]],b:1,g:"val,json,close",e:(e,t)=>0===e.d?t.t0:void 0},{s:[o],c:e=>e.lte("dlist")&&e.lte("dmap"),r:"list",u:{implist:!0},g:"list,val,imp,comma,jsonic"},{c:e=>e.lte("dlist")&&e.lte("dmap"),r:"list",u:{implist:!0},g:"list,val,imp,space,jsonic",b:1},{s:[c],g:"jsonic"}],{append:!0,move:[1,-1]})}),e.rule("map",e=>{e.bo(e=>{e.n.dmap=1+(e.n.dmap?e.n.dmap:0)}).open([{s:[n,c],b:1,e:h,g:"end,jsonic"}]).open([{s:[d,s],p:"pair",b:2,g:"pair,list,val,imp,jsonic"}],{append:!0}).close([{s:[r],c:e=>e.lte("pk"),g:"end,json"},{s:[r],b:1,g:"path,jsonic"},{s:[[o,l,...p]],b:1,g:"end,path,jsonic"},{s:[c],e:h,g:"end,jsonic"}],{append:!0,delete:[0]})}),e.rule("list",e=>{e.bo(e=>{e.n.dlist=1+(e.n.dlist?e.n.dlist:0),e.prev.u.implist&&(e.node.push(e.prev.node),e.prev.node=e.node)}).open({c:e=>e.prev.u.implist,p:"elem"}).open([{s:[o],p:"elem",b:1,g:"list,elem,val,imp,jsonic"},{p:"elem",g:"list,elem.jsonic"}],{append:!0}).close([{s:[c],e:h,g:"end,jsonic"}],{append:!0})}),e.rule("pair",(e,t)=>{e.open([{s:[o],g:"map,pair,comma,jsonic"}],{append:!0}).bc((e,t)=>{e.u.pair&&m(e,t)}).close([{s:[r],c:e=>e.lte("pk"),b:1,g:"map,pair,json"},{s:[o,r],c:e=>e.lte("pk"),b:1,g:"map,pair,comma,jsonic"},{s:[o,c],g:"end,jsonic"},{s:[o],c:e=>e.lte("pk"),r:"pair",g:"map,pair,json"},{s:[o],c:e=>e.lte("dmap",1),r:"pair",g:"map,pair,jsonic"},{s:[d],c:e=>e.lte("dmap",1),r:"pair",b:1,g:"map,pair,imp,jsonic"},{s:[[r,o,l,...d]],c:e=>0<e.n.pk,b:1,g:"map,pair,imp,path,jsonic"},{s:[l],e:e=>e.c0,g:"end,jsonic"},{s:[c],e:h,g:"map,pair,json"},{r:"pair",b:1,g:"map,pair,imp,jsonic"}],{append:!0,delete:[0,1]})}),e.rule("elem",(e,t)=>{e.open([{s:[o,o],b:2,u:{done:!0},a:e=>e.node.push(null),g:"list,elem,imp,null,jsonic"},{s:[o],u:{done:!0},a:e=>e.node.push(null),g:"list,elem,imp,null,jsonic"},{s:[d,s],e:t.cfg.list.property?void 0:(e,t)=>t.t0,p:"val",n:{pk:1,dmap:1},u:{done:!0,pair:!0,list:!0},a:f,g:"elem,pair,jsonic"}]).bc((e,t)=>{!0===e.u.pair&&(e.u.prev=e.node[e.u.key],m(e,t))}).close([{s:[o,[l,c]],b:1,g:"list,elem,comma,jsonic"},{s:[o],r:"elem",g:"list,elem,json"},{s:[l],b:1,g:"list,elem,json"},{s:[c],e:h,g:"list,elem,json"},{s:[r],e:e=>e.c0,g:"end,jsonic"},{r:"elem",b:1,g:"list,elem,imp,jsonic"}],{delete:[-1,-2]})})}Object.defineProperty(j,"__esModule",{value:!0}),j.makeJSON=j.grammar=void 0,j.grammar=S,j.makeJSON=function(e){let t=e.make({grammar$:!1,text:{lex:!1},number:{hex:!1,oct:!1,bin:!1,sep:null,exclude:/^00+/},string:{chars:'"',multiChars:"",allowUnknown:!1,escape:{v:null}},comment:{lex:!1},map:{extend:!1},lex:{empty:!1},rule:{finish:!1,include:"json"},result:{fail:[void 0,NaN]},tokenSet:{KEY:["#ST",null,null,null]}});return S(t),t};var E={exports:{}};Object.defineProperty(E.exports,"__esModule",{value:!0}),E.exports.root=E.exports.S=E.exports.EMPTY=E.exports.AFTER=E.exports.BEFORE=E.exports.CLOSE=E.exports.OPEN=E.exports.makeTextMatcher=E.exports.makeNumberMatcher=E.exports.makeCommentMatcher=E.exports.makeStringMatcher=E.exports.makeLineMatcher=E.exports.makeSpaceMatcher=E.exports.makeFixedMatcher=E.exports.makeParser=E.exports.makeLex=E.exports.makeRuleSpec=E.exports.makeRule=E.exports.makePoint=E.exports.makeToken=E.exports.make=E.exports.util=E.exports.JsonicError=E.exports.Jsonic=void 0,Object.defineProperty(E.exports,"OPEN",{enumerable:!0,get:function(){return r.OPEN}}),Object.defineProperty(E.exports,"CLOSE",{enumerable:!0,get:function(){return r.CLOSE}}),Object.defineProperty(E.exports,"BEFORE",{enumerable:!0,get:function(){return r.BEFORE}}),Object.defineProperty(E.exports,"AFTER",{enumerable:!0,get:function(){return r.AFTER}}),Object.defineProperty(E.exports,"EMPTY",{enumerable:!0,get:function(){return r.EMPTY}});const O=t({});Object.defineProperty(E.exports,"JsonicError",{enumerable:!0,get:function(){return O.JsonicError}}),Object.defineProperty(E.exports,"S",{enumerable:!0,get:function(){return O.S}});const N=n({});Object.defineProperty(E.exports,"makePoint",{enumerable:!0,get:function(){return N.makePoint}}),Object.defineProperty(E.exports,"makeToken",{enumerable:!0,get:function(){return N.makeToken}}),Object.defineProperty(E.exports,"makeLex",{enumerable:!0,get:function(){return N.makeLex}}),Object.defineProperty(E.exports,"makeFixedMatcher",{enumerable:!0,get:function(){return N.makeFixedMatcher}}),Object.defineProperty(E.exports,"makeSpaceMatcher",{enumerable:!0,get:function(){return N.makeSpaceMatcher}}),Object.defineProperty(E.exports,"makeLineMatcher",{enumerable:!0,get:function(){return N.makeLineMatcher}}),Object.defineProperty(E.exports,"makeStringMatcher",{enumerable:!0,get:function(){return N.makeStringMatcher}}),Object.defineProperty(E.exports,"makeCommentMatcher",{enumerable:!0,get:function(){return N.makeCommentMatcher}}),Object.defineProperty(E.exports,"makeNumberMatcher",{enumerable:!0,get:function(){return N.makeNumberMatcher}}),Object.defineProperty(E.exports,"makeTextMatcher",{enumerable:!0,get:function(){return N.makeTextMatcher}}),Object.defineProperty(E.exports,"makeRule",{enumerable:!0,get:function(){return x.makeRule}}),Object.defineProperty(E.exports,"makeRuleSpec",{enumerable:!0,get:function(){return x.makeRuleSpec}}),Object.defineProperty(E.exports,"makeParser",{enumerable:!0,get:function(){return x.makeParser}});const _={tokenize:O.tokenize,srcfmt:O.srcfmt,clone:O.clone,charset:O.charset,trimstk:O.trimstk,makelog:O.makelog,badlex:O.badlex,extract:O.extract,errinject:O.errinject,errdesc:O.errdesc,configure:O.configure,parserwrap:O.parserwrap,mesc:O.mesc,escre:O.escre,regexp:O.regexp,prop:O.prop,str:O.str,clean:O.clean,deep:O.deep,omap:O.omap,keys:O.keys,values:O.values,entries:O.entries};function T(e,t){let n=!0;if("jsonic"===e)n=!1;else if("json"===e)return(0,j.makeJSON)(w);e="string"==typeof e?{}:e;let r={parser:null,config:null,plugins:[],sub:{lex:void 0,rule:void 0},mark:Math.random()},l=(0,O.deep)({},t?{...t.options}:!1===(null==e?void 0:e.defaults$)?{}:i.defaults,e||{}),s=function(e,t,n){var r;if(O.S.string===typeof e){let i=s.internal();return((null===(r=o.parser)||void 0===r?void 0:r.start)?(0,O.parserwrap)(o.parser):i.parser).start(e,s,t,n)}return e},o=e=>{if(null!=e&&O.S.object===typeof e){(0,O.deep)(l,e),(0,O.configure)(s,r.config,l);let t=s.internal().parser;r.parser=t.clone(l,r.config)}return{...s.options}},a={token:e=>(0,O.tokenize)(e,r.config,s),tokenSet:e=>(0,O.findTokenSet)(e,r.config),fixed:e=>r.config.fixed.ref[e],options:(0,O.deep)(o,l),config:()=>(0,O.deep)(r.config),parse:s,use:function(e,t){if(O.S.function!==typeof e)throw new Error("Jsonic.use: the first argument must be a function defining a plugin. See https://jsonic.senecajs.org/plugin");const n=e.name.toLowerCase(),r=(0,O.deep)({},e.defaults||{},t||{});s.options({plugin:{[n]:r}});let i=s.options.plugin[n];return s.internal().plugins.push(e),e.options=i,e(s,i)||s},rule:(e,t)=>s.internal().parser.rule(e,t)||s,make:e=>T(e,s),empty:e=>T({defaults$:!1,standard$:!1,grammar$:!1,...e||{}}),id:"Jsonic/"+Date.now()+"/"+(""+Math.random()).substring(2,8).padEnd(6,"0")+(null==o.tag?"":"/"+o.tag),toString:()=>a.id,sub:e=>(e.lex&&(r.sub.lex=r.sub.lex||[],r.sub.lex.push(e.lex)),e.rule&&(r.sub.rule=r.sub.rule||[],r.sub.rule.push(e.rule)),s),util:_};if((0,O.defprop)(a.make,O.S.name,{value:O.S.make}),n?(0,O.assign)(s,a):(0,O.assign)(s,{empty:a.empty,parse:a.parse,sub:a.sub,id:a.id,toString:a.toString}),(0,O.defprop)(s,"internal",{value:()=>r}),t){for(let n in t)void 0===s[n]&&(s[n]=t[n]);s.parent=t;let e=t.internal();r.config=(0,O.deep)({},e.config),(0,O.configure)(s,r.config,l),(0,O.assign)(s.token,r.config.t),r.plugins=[...e.plugins],r.parser=e.parser.clone(l,r.config)}else{let e={...s,...a};r.config=(0,O.configure)(e,void 0,l),r.plugins=[],r.parser=(0,x.makeParser)(l,r.config),!1!==l.grammar$&&(0,j.grammar)(e)}return s}let w;E.exports.util=_,E.exports.make=T,E.exports.root=w;let P=E.exports.root=w=T("jsonic");return E.exports.Jsonic=P,w.Jsonic=w,w.JsonicError=O.JsonicError,w.makeLex=N.makeLex,w.makeParser=x.makeParser,w.makeToken=N.makeToken,w.makePoint=N.makePoint,w.makeRule=x.makeRule,w.makeRuleSpec=x.makeRuleSpec,w.makeFixedMatcher=N.makeFixedMatcher,w.makeSpaceMatcher=N.makeSpaceMatcher,w.makeLineMatcher=N.makeLineMatcher,w.makeStringMatcher=N.makeStringMatcher,w.makeCommentMatcher=N.makeCommentMatcher,w.makeNumberMatcher=N.makeNumberMatcher,w.makeTextMatcher=N.makeTextMatcher,w.OPEN=r.OPEN,w.CLOSE=r.CLOSE,w.BEFORE=r.BEFORE,w.AFTER=r.AFTER,w.EMPTY=r.EMPTY,w.util=_,w.make=T,w.S=O.S,E.exports.default=P,E.exports=P,E.exports}))}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{}),g=g.exports;var v={};Object.defineProperty(v,"__esModule",{value:!0}),v.Debug=void 0;const{entries:x,tokenize:k}=g.util,b=(e,t)=>{const{keys:n,values:r,entries:i}=e.util;e.debug={describe:function(){let t=e.internal().config,l=t.lex.match,s=e.rule();return["========= TOKENS ========",Object.entries(t.t).filter(e=>"string"==typeof e[1]).map(e=>{return" "+e[0]+"\t"+e[1]+"\t"+((n=t.fixed.ref[e[0]]||"")?'"'+n+'"':"");var n}).join("\n"),"\n","========= RULES =========",j(e,n(s),s),"\n","========= ALTS =========",r(s).map(t=>" "+t.name+":\n"+y(e,t,"open")+y(e,t,"close")).join("\n\n"),"\n","========= LEXER ========="," "+(l&&l.map(e=>e.order+": "+e.matcher+" ("+e.make.name+")")||[]).join("\n "),"\n","\n","========= PLUGIN ========="," "+e.internal().plugins.map(e=>e.name+(e.options?i(e.options).reduce((e,t)=>e+"\n "+t[0]+": "+JSON.stringify(t[1]),""):"")).join("\n "),"\n"].join("\n")}};const l=e.use.bind(e);e.use=(...e)=>{let n=l(...e);return t.print&&n.internal().config.debug.get_console().log("USE:",e[0].name,"\n\n",n.debug.describe()),n},t.trace&&e.options({parse:{prepare:{debug:(e,t,n)=>{t.log=t.log||((e,...n)=>{T[e]&&t.cfg.debug.get_console().log(T[e](...n).filter(e=>"object"!=typeof e).map(e=>"function"==typeof e?e.name:e).join(" "))})}}}})};function y(e,t,n){const{entries:r}=e.util;return 0===t.def[n].length?"":" "+n.toUpperCase()+":\n"+t.def[n].map((t,n)=>{var i,l;return" "+(""+n).padStart(5," ")+" "+("["+(t.s||[]).map(t=>null==t?"***INVALID***":"number"==typeof t?e.token[t]:"["+t.map(t=>e.token[t])+"]").join(" ")+"] ").padEnd(32," ")+(t.r?" r="+("string"==typeof t.r?t.r:"<F>"):"")+(t.p?" p="+("string"==typeof t.p?t.p:"<F>"):"")+(t.r||t.p?"":"\t")+"\t"+(null==t.b?"":"b="+t.b)+"\t"+(null==t.n?"":"n="+r(t.n).map(([e,t])=>e+":"+t))+"\t"+(null==t.a?"":"A")+(null==t.c?"":"C")+(null==t.h?"":"H")+"\t"+(null==(null===(i=t.c)||void 0===i?void 0:i.n)?"\t":" CN="+r(t.c.n).map(([e,t])=>e+":"+t))+(null==(null===(l=t.c)||void 0===l?void 0:l.d)?"":" CD="+t.c.d)+(t.g?"\tg="+t.g:"")}).join("\n")+"\n"}function j(e,t,n){const{values:r,omap:i}=e.util;return t.reduce((e,t)=>e+=" "+t+":\n "+r(i({op:S(n,t,"open","p"),or:S(n,t,"open","r"),cp:S(n,t,"close","p"),cr:S(n,t,"close","r")},([e,t])=>[1<t.length?e:void 0,e+": "+t])).join("\n ")+"\n","")}function S(e,t,n,r){return[...new Set(e[t].def[n].filter(e=>e[r]).map(e=>e[r]).map(e=>"string"==typeof e?e:"<F>"))].join(" ")}function E(e,t,n){return e.F(e.src().substring(n.pnt.sI,n.pnt.sI+16)).padEnd(18," ")+" "+function(e){return"["+(e.NOTOKEN===e.t0?"":e.F(e.t0.src))+(e.NOTOKEN===e.t1?"":" "+e.F(e.t1.src))+"]~["+(e.NOTOKEN===e.t0?"":k(e.t0.tin,e.cfg))+(e.NOTOKEN===e.t1?"":" "+k(e.t1.tin,e.cfg))+"]"}(e).padEnd(34," ")+" "+(""+t.d).padStart(4," ")}function O(e,t){let n=x(t.n),r=x(t.u),i=x(t.k);return(0===n.length?"":" N<"+n.filter(e=>e[1]).map(e=>e[0]+"="+e[1]).join(";")+">")+(0===r.length?"":" U<"+r.map(t=>t[0]+"="+e.F(t[1])).join(";")+">")+(0===i.length?"":" K<"+i.map(t=>t[0]+"="+e.F(t[1])).join(";")+">")}function N(e,t){return"["+(e.s||[]).map(e=>"number"==typeof e?k(e,t):Array.isArray(e)?"["+e.map(e=>k(e,t))+"]":"").join(" ")+"] "}v.Debug=b;const _={o:g.S.open.toUpperCase(),c:g.S.close.toUpperCase()},T={"":(...e)=>e,stack:(e,t,n)=>[g.S.logindent+g.S.stack,E(e,t,n),g.S.indent.repeat(t.d)+"/"+e.rs.slice(0,t.d).map(e=>e.name+"~"+e.i).join("/"),"~","/"+e.rs.slice(0,t.d).map(t=>e.F(t.node)).join("/"),e,t,n],rule:(e,t,n)=>[t,e,n,g.S.logindent+g.S.rule+g.S.space,E(e,t,n),g.S.indent.repeat(t.d)+(t.name+"~"+t.i+g.S.colon+_[t.state]).padEnd(16),("prev="+t.prev.i+" parent="+t.parent.i+" child="+t.child.i).padEnd(28),O(e,t)],node:(e,t,n,r)=>[t,e,n,r,g.S.logindent+g.S.node+g.S.space,E(e,t,n),g.S.indent.repeat(t.d)+("why="+r.why+g.S.space+"<"+e.F(t.node)+">").padEnd(46),O(e,t)],parse:(e,t,n,r,i,l,s,o)=>{let a=r&&o.n?x(o.n):null,u=r&&o.u?x(o.u):null,c=r&&o.k?x(o.k):null;return[e,t,n,g.S.logindent+g.S.parse,E(e,t,n),g.S.indent.repeat(t.d)+(r?"alt="+l:"no-alt"),r&&s?N(s,e.cfg):"",r&&o.g?"g:"+o.g+" ":"",(r&&o.p?"p:"+o.p+" ":"")+(r&&o.r?"r:"+o.r+" ":"")+(r&&o.b?"b:"+o.b+" ":""),s&&s.c?"c:"+i:g.EMPTY,null==a?"":"n:"+a.map(e=>e[0]+"="+e[1]).join(";"),null==u?"":"u:"+u.map(e=>e[0]+"="+e[1]).join(";"),null==c?"":"k:"+c.map(e=>e[0]+"="+e[1]).join(";")]},lex:(e,t,n,r,i,l,s,o,a,u)=>[g.S.logindent+g.S.lex+g.S.space+g.S.space,E(e,t,n),g.S.indent.repeat(t.d)+k(s.tin,e.cfg),e.F(s.src),r.sI,r.rI+":"+r.cI,(null==l?void 0:l.name)||"",o?"on:alt="+a+";"+o.g+";t="+u+";"+N(o,e.cfg):"",e.F(n.src.substring(i,i+16)),e,t,n]};b.defaults={print:!0,trace:!1};var w={exports:{}};(function(e){(function(){!function(t){"object"==typeof w.exports?w.exports=t():("undefined"!=typeof window?window:void 0!==e?e:"undefined"!=typeof self?self:this).JsonicDirective=t()}((function(){var e={};Object.defineProperty(e,"__esModule",{value:!0}),e.Directive=void 0;const t=e=>("string"==typeof e?e.split(/\s*,\s*/):e||[]).filter(e=>null!=e&&""!==e),n=(e,n)=>{var r,i;let l,s={open:t(null===(r=null==n?void 0:n.rules)||void 0===r?void 0:r.open),close:t(null===(i=null==n?void 0:n.rules)||void 0===i?void 0:i.close)},o=n.name,a=n.open,u=n.close,c=n.custom;if("string"==typeof n.action){let t=n.action;l=n=>n.node=e.util.prop(e.options,t)}else l=n.action;let p={},d="#OD_"+o,h="#CD_"+o,f=e.fixed(a),m=null==u?null:e.fixed(u);if(null!=f)throw new Error("Directive open token already in use: "+a);p[d]=a,null==m&&null!=u&&(p[h]=u),e.options({fixed:{token:p},error:{[o+"_close"]:null==u?null:"directive "+o+' close "'+u+'" without open "'+a+'"'},hint:{[o+"_close"]:null==u?null:`\nThe ${o} directive must start with the characters "${a}" and end\nwith the characters "${u}". The end characters "${u}" may not\nappear without the start characters "${a}" appearing first:\n"${a}...${u}".\n`}});let g=e.token.CA;f=e.fixed(a),m=null==u?null:e.fixed(u),s.open.forEach(t=>{e.rule(t,e=>(e.open({s:[f],p:o,n:{["dr_"+o]:1},g:"start"}),null!=u&&(e.open({s:[f,m],b:1,p:o,n:{["dr_"+o]:1},g:"start,end"}),e.close({s:[m],b:1,g:"end"})),e))}),null!=u&&s.close.forEach(t=>{e.rule(t,e=>{e.close([{s:[m],c:e=>1===e.n["dr_"+o],b:1,g:"end"},{s:[g,m],c:e=>1===e.n["dr_"+o],b:1,g:"end,comma"}])})}),e.rule(o,e=>e.clear().bo(e=>{e.node={}}).open([null!=u?{s:[m],b:1}:null,{p:"val",n:null==u?{dlist:1,dmap:1}:{dlist:0,dmap:0}}]).bc((function(e,t,n,r){let i=l.call(this,e,t,n,r);if(null==i?void 0:i.isToken)return i})).close(null!=u?[{s:[m]},{s:[g,m]}]:[])),c&&c(e,{OPEN:f,CLOSE:m,name:o})};return e.Directive=n,n.defaults={rules:{open:"val",close:"list,elem,map,pair"}},e}))}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{}),w=w.exports;var P={};Object.defineProperty(P,"__esModule",{value:!0}),P.makeJsonicProcessor=void 0,P.makeJsonicProcessor=function(){return function(e,t,n,r,i){null!=e.src&&null!=e.full&&(e.val=i(e.src,r.meta))}};var I={};Object.defineProperty(I,"__esModule",{value:!0}),I.makeJavaScriptProcessor=void 0,I.makeJavaScriptProcessor=function(e){const t=e=>{e.val=function(e,t){let n;return n=require(e.full),n=null!=n.default?n.default:n,n}(e)};return t.opts=e,t};var M={};Object.defineProperty(M,"__esModule",{value:!0}),M.meta=M.TOP=M.NONE=M.resolvePathSpec=M.MultiSource=void 0;M.NONE="";const C=Symbol("TOP");M.TOP=C;const R=(e,t)=>{const n=t.markchar,r=t.resolver,i=t.processor,{deep:l}=e.util,s=t.implictExt||[];for(let a=0;a<s.length;a++){let e=s[a];s[a]=e.startsWith(".")?e:"."+e}e.options({error:{multisource_not_found:"source not found: $path"},hint:{multisource_not_found:"The source path $path was not found.\n\nSearch paths:\n${searchstr}"}});let o={name:"multisource",open:n,rules:{open:"val,pair"},action:function(n,s){var o,a;let u=n.parent.name,c=n.child.node,p=r(c,t,n,s,e);if(!p.found)return null===(o=n.parent)||void 0===o?void 0:o.o0.bad("multisource_not_found",{...p,searchstr:((null==p?void 0:p.search)||[p.full]).join("\n")});let d=null!=p.full?p.full:null!=p.path?p.path:"no-path";p.kind=null==p.kind?"":p.kind;let h=(null===(a=s.meta)||void 0===a?void 0:a.multisource)||{},f=h.parents||[];null!=h.path&&f.push(h.path);let m={...s.meta||{},fileName:p.path,multisource:{...h,parents:f,path:p.full}};if(n.k.path&&Array.isArray(n.k.path)&&(m.path={base:n.k.path.slice(0)}),h.deps){let e=h.deps,t=h.path||C;if(null!=t){let n={tar:t,src:d,wen:Date.now()};e[t]=e[t]||{},e[t][d]=n}}let g={...s,meta:m};(i[p.kind]||i[""])(p,t,n,g,e),"pair"===u?s.cfg.map.merge?n.parent.parent.node=s.cfg.map.merge(n.parent.parent.node,p.val,n,s):s.cfg.map.extend?n.parent.parent.node=l(n.parent.parent.node,p.val):Object.assign(n.parent.node,p.val):n.node=p.val},custom:(e,{OPEN:t,name:n})=>{e.rule("val",e=>{e.open({s:[t],c:e=>0===e.d,p:"map",b:1,n:{[n+"_top"]:1}})}),e.rule("map",e=>{e.open({s:[t],c:e=>1===e.d&&1===e.n[n+"_top"],p:"pair",b:1})})}};e.use(w.Directive,o)};function A(e){return t=>t.val=e(t.src,t)}M.MultiSource=R;const V=A(e=>e),L=g.Jsonic.make("json"),D=A((e,t)=>null==e?void 0:L(e,{fileName:t.path})),$=(0,P.makeJsonicProcessor)(),F=(0,I.makeJavaScriptProcessor)();R.defaults={markchar:"@",processor:{"":V,jsonic:$,jsc:$,json:D,js:F},implictExt:["jsonic","jsc","json","js"]},M.resolvePathSpec=function(e,t,n,r){var i;let l=null===(i=t.meta)||void 0===i?void 0:i.multisource,s=r(null==l||null==l.path?e.path:l.path),o="string"==typeof n?n:null!=n.path?""+n.path:void 0,a=!(!(null==o?void 0:o.startsWith("/"))&&!(null==o?void 0:o.startsWith("\\"))),u=a?o:null!=o&&""!=o?null!=s&&""!=s?s+"/"+o:o:void 0;return{kind:null==u?"":(u.match(/\.([^.]*)$/)||["",""])[1],path:o,full:u,base:s,abs:a,found:!1}},M.meta={name:"MultiSource"};var Y,J,B,U={},K=Y={};function q(){throw new Error("setTimeout has not been defined")}function z(){throw new Error("clearTimeout has not been defined")}function G(e){if(J===setTimeout)return setTimeout(e,0);if((J===q||!J)&&setTimeout)return J=setTimeout,setTimeout(e,0);try{return J(e,0)}catch(t){try{return J.call(null,e,0)}catch(t){return J.call(this,e,0)}}}!function(){try{J="function"==typeof setTimeout?setTimeout:q}catch(e){J=q}try{B="function"==typeof clearTimeout?clearTimeout:z}catch(e){B=z}}();var Z,W=[],H=!1,X=-1;function Q(){H&&Z&&(H=!1,Z.length?W=Z.concat(W):X=-1,W.length&&ee())}function ee(){if(!H){var e=G(Q);H=!0;for(var t=W.length;t;){for(Z=W,W=[];++X<t;)Z&&Z[X].run();X=-1,t=W.length}Z=null,H=!1,function(e){if(B===clearTimeout)return clearTimeout(e);if((B===z||!B)&&clearTimeout)return B=clearTimeout,clearTimeout(e);try{B(e)}catch(t){try{return B.call(null,e)}catch(t){return B.call(this,e)}}}(e)}}function te(e,t){this.fun=e,this.array=t}function ne(){}K.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];W.push(new te(e,t)),1!==W.length||H||G(ee)},te.prototype.run=function(){this.fun.apply(null,this.array)},K.title="browser",K.browser=!0,K.env={},K.argv=[],K.version="",K.versions={},K.on=ne,K.addListener=ne,K.once=ne,K.off=ne,K.removeListener=ne,K.removeAllListeners=ne,K.emit=ne,K.prependListener=ne,K.prependOnceListener=ne,K.listeners=function(e){return[]},K.binding=function(e){throw new Error("process.binding is not supported")},K.cwd=function(){return"/"},K.chdir=function(e){throw new Error("process.chdir is not supported")},K.umask=function(){return 0};var re={};(function(e){(function(){"use strict";function t(e){if("string"!=typeof e)throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}function n(e,t){for(var n,r="",i=0,l=-1,s=0,o=0;o<=e.length;++o){if(o<e.length)n=e.charCodeAt(o);else{if(47===n)break;n=47}if(47===n){if(l===o-1||1===s);else if(l!==o-1&&2===s){if(r.length<2||2!==i||46!==r.charCodeAt(r.length-1)||46!==r.charCodeAt(r.length-2))if(r.length>2){var a=r.lastIndexOf("/");if(a!==r.length-1){-1===a?(r="",i=0):i=(r=r.slice(0,a)).length-1-r.lastIndexOf("/"),l=o,s=0;continue}}else if(2===r.length||1===r.length){r="",i=0,l=o,s=0;continue}t&&(r.length>0?r+="/..":r="..",i=2)}else r.length>0?r+="/"+e.slice(l+1,o):r=e.slice(l+1,o),i=o-l-1;l=o,s=0}else 46===n&&-1!==s?++s:s=-1}return r}var r={resolve:function(){for(var r,i="",l=!1,s=arguments.length-1;s>=-1&&!l;s--){var o;s>=0?o=arguments[s]:(void 0===r&&(r=e.cwd()),o=r),t(o),0!==o.length&&(i=o+"/"+i,l=47===o.charCodeAt(0))}return i=n(i,!l),l?i.length>0?"/"+i:"/":i.length>0?i:"."},normalize:function(e){if(t(e),0===e.length)return".";var r=47===e.charCodeAt(0),i=47===e.charCodeAt(e.length-1);return 0!==(e=n(e,!r)).length||r||(e="."),e.length>0&&i&&(e+="/"),r?"/"+e:e},isAbsolute:function(e){return t(e),e.length>0&&47===e.charCodeAt(0)},join:function(){if(0===arguments.length)return".";for(var e,n=0;n<arguments.length;++n){var i=arguments[n];t(i),i.length>0&&(void 0===e?e=i:e+="/"+i)}return void 0===e?".":r.normalize(e)},relative:function(e,n){if(t(e),t(n),e===n)return"";if((e=r.resolve(e))===(n=r.resolve(n)))return"";for(var i=1;i<e.length&&47===e.charCodeAt(i);++i);for(var l=e.length,s=l-i,o=1;o<n.length&&47===n.charCodeAt(o);++o);for(var a=n.length-o,u=s<a?s:a,c=-1,p=0;p<=u;++p){if(p===u){if(a>u){if(47===n.charCodeAt(o+p))return n.slice(o+p+1);if(0===p)return n.slice(o+p)}else s>u&&(47===e.charCodeAt(i+p)?c=p:0===p&&(c=0));break}var d=e.charCodeAt(i+p);if(d!==n.charCodeAt(o+p))break;47===d&&(c=p)}var h="";for(p=i+c+1;p<=l;++p)p!==l&&47!==e.charCodeAt(p)||(0===h.length?h+="..":h+="/..");return h.length>0?h+n.slice(o+c):(o+=c,47===n.charCodeAt(o)&&++o,n.slice(o))},_makeLong:function(e){return e},dirname:function(e){if(t(e),0===e.length)return".";for(var n=e.charCodeAt(0),r=47===n,i=-1,l=!0,s=e.length-1;s>=1;--s)if(47===(n=e.charCodeAt(s))){if(!l){i=s;break}}else l=!1;return-1===i?r?"/":".":r&&1===i?"//":e.slice(0,i)},basename:function(e,n){if(void 0!==n&&"string"!=typeof n)throw new TypeError('"ext" argument must be a string');t(e);var r,i=0,l=-1,s=!0;if(void 0!==n&&n.length>0&&n.length<=e.length){if(n.length===e.length&&n===e)return"";var o=n.length-1,a=-1;for(r=e.length-1;r>=0;--r){var u=e.charCodeAt(r);if(47===u){if(!s){i=r+1;break}}else-1===a&&(s=!1,a=r+1),o>=0&&(u===n.charCodeAt(o)?-1==--o&&(l=r):(o=-1,l=a))}return i===l?l=a:-1===l&&(l=e.length),e.slice(i,l)}for(r=e.length-1;r>=0;--r)if(47===e.charCodeAt(r)){if(!s){i=r+1;break}}else-1===l&&(s=!1,l=r+1);return-1===l?"":e.slice(i,l)},extname:function(e){t(e);for(var n=-1,r=0,i=-1,l=!0,s=0,o=e.length-1;o>=0;--o){var a=e.charCodeAt(o);if(47!==a)-1===i&&(l=!1,i=o+1),46===a?-1===n?n=o:1!==s&&(s=1):-1!==n&&(s=-1);else if(!l){r=o+1;break}}return-1===n||-1===i||0===s||1===s&&n===i-1&&n===r+1?"":e.slice(n,i)},format:function(e){if(null===e||"object"!=typeof e)throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof e);return function(e,t){var n=t.dir||t.root,r=t.base||(t.name||"")+(t.ext||"");return n?n===t.root?n+r:n+"/"+r:r}(0,e)},parse:function(e){t(e);var n={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return n;var r,i=e.charCodeAt(0),l=47===i;l?(n.root="/",r=1):r=0;for(var s=-1,o=0,a=-1,u=!0,c=e.length-1,p=0;c>=r;--c)if(47!==(i=e.charCodeAt(c)))-1===a&&(u=!1,a=c+1),46===i?-1===s?s=c:1!==p&&(p=1):-1!==s&&(p=-1);else if(!u){o=c+1;break}return-1===s||-1===a||0===p||1===p&&s===a-1&&s===o+1?-1!==a&&(n.base=n.name=0===o&&l?e.slice(1,a):e.slice(o,a)):(0===o&&l?(n.name=e.slice(1,s),n.base=e.slice(1,a)):(n.name=e.slice(o,s),n.base=e.slice(o,a)),n.ext=e.slice(s,a)),o>0?n.dir=e.slice(0,o-1):l&&(n.dir="/"),n},sep:"/",delimiter:":",win32:null,posix:null};r.posix=r,re=r}).call(this)}).call(this,Y);var ie={};function le(e,t,n){let r=e.full,i=[],l=t.implictExt||[];if(!r.match(l.join("|")+"$")){for(let e of l)i.push(r+e);for(let e of l)i.push(n(r,"index"+e));if(null!=e.path){let t=(e.path.replace(/[\\\/]+$/,"").match(/[^\\\/]+$/)||[])[0];if(null!=t)for(let e of l)i.push(n(r,"index."+t+e))}}return i}Object.defineProperty(ie,"__esModule",{value:!0}),ie.makeMemResolver=ie.buildPotentials=void 0,ie.makeMemResolver=function(e){return function(t,n,r,i){let l,s=(0,M.resolvePathSpec)(n,i,t,function(e){return function(t){let n=t;return e[t]&&(n=(t.replace(/[\\\/]+$/,"").match(/[\\\/]+([^\\\/]+)$/)||["",""])[1]),n}}(e));if(null!=s.full&&(l=e[s.full],null==l&&M.NONE===s.kind)){let t=le(s,n,(...e)=>e.reduce((e,t)=>e+"/"+t));for(let n of t)if(null!=(l=e[n])){s.full=n,s.kind=(n.match(/\.([^.]*)$/)||[M.NONE,M.NONE])[1];break}}return{...s,src:l,found:null!=l}}},ie.buildPotentials=le;var se={},oe=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(se,"__esModule",{value:!0}),se.makeFileResolver=void 0;const ae=oe(U),ue=oe(re);function ce(e){if("string"!=typeof e)return e;let t=e;return ae.default.statSync(e).isFile()&&(t=ue.default.parse(e).dir),t}function pe(e){try{return ae.default.readFileSync(e).toString()}catch(t){}}se.makeFileResolver=function(e){return function(t,n,r,i){let l,s=e?e(t):t,o=(0,M.resolvePathSpec)(n,i,s,ce),a=[];if(null!=o.full&&(o.full=ue.default.resolve(o.full),a.push(o.full),l=pe(o.full),null==l&&M.NONE===o.kind)){let e=(0,ie.buildPotentials)(o,n,(...e)=>ue.default.resolve(e.reduce((e,t)=>ue.default.join(e,t))));a.push(...e);for(let t of e)if(null!=(l=pe(t))){o.full=t,o.kind=(t.match(/\.([^.]*)$/)||[M.NONE,M.NONE])[1];break}}return{...o,src:l,found:null!=l,search:a}}};var de={},he=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(de,"__esModule",{value:!0}),de.makePkgResolver=void 0;const fe=he(U),me=he(re);function ge(e){if("string"!=typeof e)return e;let t=e;return fe.default.statSync(e).isFile()&&(t=me.default.parse(e).dir),t}function ve(e){try{return fe.default.readFileSync(e).toString()}catch(t){}}de.makePkgResolver=function(e){let t,n=require;return"function"==typeof e.require?n=e.require:Array.isArray(e.require)?t={paths:e.require}:"string"==typeof e.require&&(t={paths:[e.require]}),function(e,r,i,l){let s,o=e,a=(0,M.resolvePathSpec)(r,l,o,ge),u=[];if(null!=a.path)try{a.full=n.resolve(a.path,t),null!=a.full&&(s=ve(a.full),a.kind=(a.full.match(/\.([^.]*)$/)||[M.NONE,M.NONE])[1])}catch(c){u.push(...(null==t?void 0:t.paths)||n.resolve.paths(a.path).map(e=>me.default.join(e,a.path)));let e=(0,ie.buildPotentials)(a,r,(...e)=>me.default.resolve(e.reduce((e,t)=>me.default.join(e,t))));for(let r of e)try{if(a.full=n.resolve(r,t),null!=a.full){s=ve(a.full),a.kind=(a.full.match(/\.([^.]*)$/)||[M.NONE,M.NONE])[1];break}}catch(c){u.push(...(null==t?void 0:t.paths)||n.resolve.paths(r).map(e=>me.default.join(e,r)))}}return{...a,src:s,found:null!=s,search:u}}};var xe={exports:{}};(function(e){(function(){!function(t){"object"==typeof xe.exports?xe.exports=t():("undefined"!=typeof window?window:void 0!==e?e:"undefined"!=typeof self?self:this).JsonicExpr=t()}((function(){var t={exports:{}};(function(e){(function(){!function(n){"object"==typeof t.exports?t.exports=n():("undefined"!=typeof window?window:void 0!==e?e:"undefined"!=typeof self?self:this).Jsonic=n()}((function(){var e=function(e){var t;return function(n){return t||e(t={exports:{},parent:n},t.exports),t.exports}},t=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.modlist=t.findTokenSet=t.values=t.keys=t.omap=t.str=t.prop=t.parserwrap=t.trimstk=t.tokenize=t.srcfmt=t.snip=t.regexp=t.mesc=t.makelog=t.isarr=t.filterRules=t.extract=t.escre=t.errinject=t.errdesc=t.entries=t.defprop=t.deep=t.configure=t.clone=t.clean=t.charset=t.badlex=t.assign=t.S=t.JsonicError=void 0;const i=n({}),l=e=>null==e?[]:Object.keys(e);t.keys=l;const s=e=>null==e?[]:Object.values(e);t.values=s;const o=e=>null==e?[]:Object.entries(e);t.entries=o;const a=(e,...t)=>Object.assign(null==e?{}:e,...t);t.assign=a,t.isarr=e=>Array.isArray(e);const u=Object.defineProperty;t.defprop=u;const c=(e,t)=>Object.entries(e||{}).reduce((e,n)=>{let r=t?t(n):n;void 0===r[0]?delete e[n[0]]:e[r[0]]=r[1];let i=2;for(;void 0!==r[i];)e[r[i]]=r[i+1],i+=2;return e},{});t.omap=c;const p={indent:". ",logindent:" ",space:" ",gap:" ",Object:"Object",Array:"Array",object:"object",string:"string",function:"function",unexpected:"unexpected",map:"map",list:"list",elem:"elem",pair:"pair",val:"val",node:"node",no_re_flags:r.EMPTY,unprintable:"unprintable",invalid_ascii:"invalid_ascii",invalid_unicode:"invalid_unicode",invalid_lex_state:"invalid_lex_state",unterminated_string:"unterminated_string",unterminated_comment:"unterminated_comment",lex:"lex",parse:"parse",error:"error",none:"none",imp_map:"imp,map",imp_list:"imp,list",imp_null:"imp,null",end:"end",open:"open",close:"close",rule:"rule",stack:"stack",nUll:"null",name:"name",make:"make",colon:":"};t.S=p;class d extends SyntaxError{constructor(e,t,n,r,i){let l=b(e,t=g({},t),n,r,i);super(l.message),a(this,l),x(this)}toJSON(){return{...this,__error:!0,name:this.name,message:this.message,stack:this.stack}}}function h(e,t,n){let i=t.t,l=i[e];return null==l&&r.STRING===typeof e&&(l=t.tI++,i[l]=e,i[e]=l,i[e.substring(1)]=l,null!=n&&a(n.token,t.t)),l}function f(e,...t){return new RegExp(t.map(e=>e.esc?m(e.toString()):e).join(r.EMPTY),null==e?"":e)}function m(e){return null==e?"":e.replace(/[-\\|\]{}()[^$+*?.!=]/g,"\\$&").replace(/\t/g,"\\t").replace(/\r/g,"\\r").replace(/\n/g,"\\n")}function g(e,...t){let n=p.function===typeof e,r=null!=e&&(p.object===typeof e||n);for(let i of t){let t,l=p.function===typeof i,s=null!=i&&(p.object===typeof i||l);if(r&&s&&!l&&Array.isArray(e)===Array.isArray(i))for(let n in i)e[n]=g(e[n],i[n]);else e=void 0===i?e:l?i:s?p.function===typeof(t=i.constructor)&&p.Object!==t.name&&p.Array!==t.name?i:g(Array.isArray(i)?[]:{},i):i,n=p.function===typeof e,r=null!=e&&(p.object===typeof e||n)}return e}function v(e,t,n,r,i,l){let s={code:t,details:n,token:r,rule:i,ctx:l};return null==e?"":e.replace(/\$(\{?)([\w_0-9]+)(\}?)/g,(e,t,o,a)=>{let u=null!=s[o]?s[o]:null!=n[o]?n[o]:l.meta&&null!=l.meta[o]?l.meta[o]:null!=r[o]?r[o]:null!=i[o]?i[o]:null!=l.opts[o]?l.opts[o]:null!=l.cfg[o]?l.cfg[o]:null!=l[o]?l[o]:"$"+o,c=t&&a?u:JSON.stringify(u);return c=null==c?"":c,c.replace(/\n/g,"\n ")})}function x(e){e.stack&&(e.stack=e.stack.split("\n").filter(e=>!e.includes("jsonic/jsonic")).map(e=>e.replace(/ at /,"at ")).join("\n"))}function k(e,t,n){let i=0<n.sI?n.sI:0,l=0<n.rI?n.rI:1,s=0<n.cI?n.cI:1,o=null==n.src?r.EMPTY:n.src,a=e.substring(Math.max(0,i-333),i).split("\n"),u=e.substring(i,i+333).split("\n"),c=2+(r.EMPTY+(l+2)).length,p=l<3?1:l-2,d=e=>"\x1b[34m"+(r.EMPTY+p++).padStart(c," ")+" | \x1b[0m"+(null==e?r.EMPTY:e),h=a.length;return[2<h?d(a[h-3]):null,1<h?d(a[h-2]):null,d(a[h-1]+u[0])," ".repeat(c)+" "+" ".repeat(s-1)+"\x1b[31m"+"^".repeat(o.length||1)+" "+t+"\x1b[0m",d(u[1]),d(u[2])].filter(e=>null!=e).join("\n")}function b(e,t,n,r,i){var l,s,o;try{let a=i.cfg,u=i.meta,c=v(a.error[e]||(null===(l=null==t?void 0:t.use)||void 0===l?void 0:l.err)&&(t.use.err.code||t.use.err.message)||a.error.unknown,e,t,n,r,i);p.function===typeof a.hint&&(a.hint={...a.hint(),...a.hint});let d=["\x1b[31m[jsonic/"+e+"]:\x1b[0m "+c," \x1b[34m--\x3e\x1b[0m "+(u&&u.fileName||"<no-file>")+":"+n.rI+":"+n.cI,k(i.src(),c,n),"",v((a.hint[e]||(null===(o=null===(s=t.use)||void 0===s?void 0:s.err)||void 0===o?void 0:o.message)||a.hint.unknown||"").trim().split("\n").map(e=>" "+e).join("\n"),e,t,n,r,i),""," \x1b[2mhttps://jsonic.senecajs.org\x1b[0m"," \x1b[2m--internal: rule="+r.name+"~"+r.state+"; token="+h(n.tin,i.cfg)+(null==n.why?"":"~"+n.why)+"; plugins="+i.plgn().map(e=>e.name).join(",")+"--\x1b[0m\n"].join("\n"),f={internal:{token:n,ctx:i}};return f={...Object.create(f),message:d,code:e,details:t,meta:u,fileName:u?u.fileName:void 0,lineNumber:n.rI,columnNumber:n.cI},f}catch(a){return console.log(a),{}}}function y(e){return"function"==typeof e.debug.print.src?e.debug.print.src:t=>{let n=null==t?r.EMPTY:Array.isArray(t)?JSON.stringify(t).replace(/]$/,o(t).filter(e=>isNaN(e[0])).map((e,t)=>(0===t?", ":"")+e[0]+": "+JSON.stringify(e[1]))+"]"):JSON.stringify(t);return n=n.substring(0,e.debug.maxlen)+(e.debug.maxlen<n.length?"...":r.EMPTY),n}}function j(e,t=44){let n;try{n="object"==typeof e?JSON.stringify(e):""+e}catch(r){n=""+e}return S(t<n.length?n.substring(0,t-3)+"...":n,t)}function S(e,t=5){return void 0===e?"":(""+e).substring(0,t).replace(/[\r\n\t]/g,".")}function E(...e){return null==e?{}:e.filter(e=>!1!==e).map(e=>"object"==typeof e?l(e).join(r.EMPTY):e).join(r.EMPTY).split(r.EMPTY).reduce((e,t)=>(e[t]=t.charCodeAt(0),e),{})}function O(e){for(let t in e)null==e[t]&&delete e[t];return e}t.JsonicError=d,t.configure=function(e,t,n){var r,i,u,p,d,g,v,x,k,b,y,j,S,N,_,T,w,P,I,M,C,R,A,V,L,D,$,F,Y,J,B,U,K,q,z,G,Z,W,H,X,Q,ee,te,ne,re,ie,le,se,oe,ae;const ue=t||{};ue.t=ue.t||{},ue.tI=ue.tI||1;const ce=e=>h(e,ue);!1!==n.standard$&&(ce("#BD"),ce("#ZZ"),ce("#UK"),ce("#AA"),ce("#SP"),ce("#LN"),ce("#CM"),ce("#NR"),ce("#ST"),ce("#TX"),ce("#VL")),ue.safe={key:!1!==(null===(r=n.safe)||void 0===r?void 0:r.key)},ue.fixed={lex:!!(null===(i=n.fixed)||void 0===i?void 0:i.lex),token:n.fixed?c(O(n.fixed.token),([e,t])=>[t,h(e,ue)]):{},ref:void 0,check:null===(u=n.fixed)||void 0===u?void 0:u.check},ue.fixed.ref=c(ue.fixed.token,([e,t])=>[e,t]),ue.fixed.ref=Object.assign(ue.fixed.ref,c(ue.fixed.ref,([e,t])=>[t,e])),ue.match={lex:!!(null===(p=n.match)||void 0===p?void 0:p.lex),value:n.match?c(O(n.match.value),([e,t])=>[e,t]):{},token:n.match?c(O(n.match.token),([e,t])=>[h(e,ue),t]):{},check:null===(d=n.match)||void 0===d?void 0:d.check},c(ue.match.token,([e,t])=>[e,(t.tin$=+e,t)]);const pe=n.tokenSet?Object.keys(n.tokenSet).reduce((e,t)=>(e[t]=n.tokenSet[t].filter(e=>null!=e).map(e=>ce(e)),e),{}):{};ue.tokenSet=ue.tokenSet||{},o(pe).map(e=>{let t=e[0],n=e[1];ue.tokenSet[t]?(ue.tokenSet[t].length=0,ue.tokenSet[t].push(...n)):ue.tokenSet[t]=n}),ue.tokenSetTins=o(ue.tokenSet).reduce((e,t)=>(e[t[0]]=e[t[0]]||{},t[1].map(n=>e[t[0]][n]=!0),e),{}),ue.tokenSetTins.IGNORE=ue.tokenSetTins.IGNORE||{},ue.space={lex:!!(null===(g=n.space)||void 0===g?void 0:g.lex),chars:E(null===(v=n.space)||void 0===v?void 0:v.chars),check:null===(x=n.space)||void 0===x?void 0:x.check},ue.line={lex:!!(null===(k=n.line)||void 0===k?void 0:k.lex),chars:E(null===(b=n.line)||void 0===b?void 0:b.chars),rowChars:E(null===(y=n.line)||void 0===y?void 0:y.rowChars),single:!!(null===(j=n.line)||void 0===j?void 0:j.single),check:null===(S=n.line)||void 0===S?void 0:S.check},ue.text={lex:!!(null===(N=n.text)||void 0===N?void 0:N.lex),modify:((null===(_=ue.text)||void 0===_?void 0:_.modify)||[]).concat(([null===(T=n.text)||void 0===T?void 0:T.modify]||[]).flat()).filter(e=>null!=e),check:null===(w=n.text)||void 0===w?void 0:w.check},ue.number={lex:!!(null===(P=n.number)||void 0===P?void 0:P.lex),hex:!!(null===(I=n.number)||void 0===I?void 0:I.hex),oct:!!(null===(M=n.number)||void 0===M?void 0:M.oct),bin:!!(null===(C=n.number)||void 0===C?void 0:C.bin),sep:null!=(null===(R=n.number)||void 0===R?void 0:R.sep)&&""!==n.number.sep,exclude:null===(A=n.number)||void 0===A?void 0:A.exclude,sepChar:null===(V=n.number)||void 0===V?void 0:V.sep,check:null===(L=n.number)||void 0===L?void 0:L.check},ue.value={lex:!!(null===(D=n.value)||void 0===D?void 0:D.lex),def:o((null===($=n.value)||void 0===$?void 0:$.def)||{}).reduce((e,t)=>(null==t[1]||!1===t[1]||t[1].match||(e[t[0]]=t[1]),e),{}),defre:o((null===(F=n.value)||void 0===F?void 0:F.def)||{}).reduce((e,t)=>(t[1]&&t[1].match&&(e[t[0]]=t[1],e[t[0]].consume=!!e[t[0]].consume),e),{})},ue.rule={start:null==(null===(Y=n.rule)||void 0===Y?void 0:Y.start)?"val":n.rule.start,maxmul:null==(null===(J=n.rule)||void 0===J?void 0:J.maxmul)?3:n.rule.maxmul,finish:!!(null===(B=n.rule)||void 0===B?void 0:B.finish),include:(null===(U=n.rule)||void 0===U?void 0:U.include)?n.rule.include.split(/\s*,+\s*/).filter(e=>""!==e):[],exclude:(null===(K=n.rule)||void 0===K?void 0:K.exclude)?n.rule.exclude.split(/\s*,+\s*/).filter(e=>""!==e):[]},ue.map={extend:!!(null===(q=n.map)||void 0===q?void 0:q.extend),merge:null===(z=n.map)||void 0===z?void 0:z.merge},ue.list={property:!!(null===(G=n.list)||void 0===G?void 0:G.property)};let de=Object.keys(ue.fixed.token).sort((e,t)=>t.length-e.length).map(e=>m(e)).join("|"),he=(null===(Z=n.comment)||void 0===Z?void 0:Z.lex)?(n.comment.def?s(n.comment.def):[]).filter(e=>e&&e.lex).map(e=>m(e.start)).join("|"):"",fe=["([",m(l(E(ue.space.lex&&ue.space.chars,ue.line.lex&&ue.line.chars)).join("")),"]",("string"==typeof n.ender?n.ender.split(""):Array.isArray(n.ender)?n.ender:[]).map(e=>"|"+m(e)).join(""),""===de?"":"|",de,""===he?"":"|",he,"|$)"];return ue.rePart={fixed:de,ender:fe,commentStart:he},ue.re={ender:f(null,...fe),rowChars:f(null,m(null===(W=n.line)||void 0===W?void 0:W.rowChars)),columns:f(null,"["+m(null===(H=n.line)||void 0===H?void 0:H.chars)+"]","(.*)$")},ue.lex={empty:!!(null===(X=n.lex)||void 0===X?void 0:X.empty),emptyResult:null===(Q=n.lex)||void 0===Q?void 0:Q.emptyResult,match:(null===(ee=n.lex)||void 0===ee?void 0:ee.match)?o(n.lex.match).reduce((e,t)=>{let r=t[0],i=t[1];if(i){let t=i.make(ue,n);t&&(t.matcher=r,t.make=i.make,t.order=i.order),e.push(t)}return e},[]).filter(e=>null!=e&&!1!==e&&-1<+e.order).sort((e,t)=>e.order-t.order):[]},ue.parse={prepare:s(null===(te=n.parse)||void 0===te?void 0:te.prepare)},ue.debug={get_console:(null===(ne=n.debug)||void 0===ne?void 0:ne.get_console)||(()=>console),maxlen:null==(null===(re=n.debug)||void 0===re?void 0:re.maxlen)?99:n.debug.maxlen,print:{config:!!(null===(le=null===(ie=n.debug)||void 0===ie?void 0:ie.print)||void 0===le?void 0:le.config),src:null===(oe=null===(se=n.debug)||void 0===se?void 0:se.print)||void 0===oe?void 0:oe.src}},ue.error=n.error||{},ue.hint=n.hint||{},(null===(ae=n.config)||void 0===ae?void 0:ae.modify)&&l(n.config.modify).forEach(e=>n.config.modify[e](ue,n)),ue.debug.print.config&&ue.debug.get_console().dir(ue,{depth:null}),ue.result={fail:[]},n.result&&(ue.result.fail=[...n.result.fail]),a(e.options,n),a(e.token,ue.t),a(e.tokenSet,ue.tokenSet),a(e.fixed,ue.fixed.ref),ue},t.tokenize=h,t.findTokenSet=function(e,t){return t.tokenSet[e]},t.mesc=function(e,t){return(t=new String(e)).esc=!0,t},t.regexp=f,t.escre=m,t.deep=g,t.errinject=v,t.trimstk=x,t.extract=k,t.errdesc=b,t.badlex=function(e,t,n){let r=e.next.bind(e);return e.next=(e,i,l,s)=>{let o=r(e,i,l,s);if(t===o.tin){let t={};throw null!=o.use&&(t.use=o.use),new d(o.why||p.unexpected,t,o,e,n)}return o},e},t.makelog=function(e,t){var n,r,i;let l=null===(i=null===(r=null===(n=e.opts)||void 0===n?void 0:n.plugin)||void 0===r?void 0:r.debug)||void 0===i?void 0:i.trace;if(t||l)if("number"==typeof(null==t?void 0:t.log)||l){let n=!1,r=null==t?void 0:t.log;(-1===r||l)&&(r=1,n=!0),e.log=(...t)=>{if(n){let n=t.filter(e=>p.object!=typeof e).map(e=>p.function==typeof e?e.name:e).join(p.gap);e.cfg.debug.get_console().log(n)}else e.cfg.debug.get_console().dir(t,{depth:r})}}else"function"==typeof t.log&&(e.log=t.log);return e.log},t.srcfmt=y,t.str=j,t.snip=S,t.clone=function(e){return g(Object.create(Object.getPrototypeOf(e)),e)},t.charset=E,t.clean=O,t.filterRules=function(e,t){let n=["open","close"];for(let r of n)e.def[r]=e.def[r].map(e=>(e.g="string"==typeof e.g?(e.g||"").split(/\s*,+\s*/):e.g||[],e)).filter(e=>t.rule.include.reduce((t,n)=>t||null!=e.g&&-1!==e.g.indexOf(n),0===t.rule.include.length)).filter(e=>t.rule.exclude.reduce((t,n)=>t&&(null==e.g||-1===e.g.indexOf(n)),!0));return e},t.prop=function(e,t,n){let r=e;try{let r,i=t.split(".");for(let t=0;t<i.length;t++)r=i[t],t<i.length-1&&(e=e[r]=e[r]||{});return void 0!==n&&(e[r]=n),e[r]}catch(i){throw new Error("Cannot "+(void 0===n?"get":"set")+" path "+t+" on object: "+j(r)+(void 0===n?"":" to value: "+j(n,22)))}},t.modlist=function(e,t){if(t&&e){if(0<e.length){if(t.delete&&0<t.delete.length)for(let r=0;r<t.delete.length;r++){let n=t.delete[r];(n<0?-1*n<=e.length:n<e.length)&&(e[(e.length+n)%e.length]=null)}if(t.move)for(let r=0;r<t.move.length;r+=2){let n=(e.length+t.move[r])%e.length,i=(e.length+t.move[r+1])%e.length,l=e[n];e.splice(n,1),e.splice(i,0,l)}let n=e.filter(e=>null!=e);n.length!==e.length&&(e.length=0,e.push(...n))}if(t.custom){let n=t.custom(e);null!=n&&(e=n)}}return e},t.parserwrap=function(e){return{start:function(t,n,l,s){try{return e.start(t,n,l,s)}catch(o){if("SyntaxError"===o.name){let s=0,a=0,u=0,c=r.EMPTY,p=o.message.match(/^Unexpected token (.) .*position\s+(\d+)/i);if(p){c=p[1],s=parseInt(p[2]),a=t.substring(0,s).replace(/[^\n]/g,r.EMPTY).length;let e=s-1;for(;-1<e&&"\n"!==t.charAt(e);)e--;u=Math.max(t.substring(e,s).length,0)}let f=o.token||(0,i.makeToken)("#UK",h("#UK",n.internal().config),void 0,c,(0,i.makePoint)(c.length,s,o.lineNumber||a,o.columnNumber||u));throw new d(o.code||"json",o.details||{msg:o.message},f,{},o.ctx||{uI:-1,opts:n.options,cfg:n.internal().config,token:f,meta:l,src:()=>t,root:()=>{},plgn:()=>n.internal().plugins,inst:()=>n,rule:{name:"no-rule"},sub:{},xs:-1,v2:f,v1:f,t0:f,t1:f,tC:-1,kI:-1,rs:[],rsI:0,rsm:{},n:{},log:l?l.log:void 0,F:y(n.internal().config),use:{},NORULE:{name:"no-rule"},NOTOKEN:{name:"no-token"}})}throw o}}}}})),n=e((function(e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.makeTextMatcher=n.makeNumberMatcher=n.makeCommentMatcher=n.makeStringMatcher=n.makeLineMatcher=n.makeSpaceMatcher=n.makeFixedMatcher=n.makeMatchMatcher=n.makeToken=n.makePoint=n.makeLex=n.makeNoToken=void 0;const i=t({});class l{constructor(e,t,n,r){this.len=-1,this.sI=0,this.rI=1,this.cI=1,this.token=[],this.len=e,null!=t&&(this.sI=t),null!=n&&(this.rI=n),null!=r&&(this.cI=r)}toString(){return"Point["+[this.sI+"/"+this.len,this.rI,this.cI]+(0<this.token.length?" "+this.token:"")+"]"}[r.INSPECT](){return this.toString()}}const s=(...e)=>new l(...e);n.makePoint=s;class o{constructor(e,t,n,i,l,s,o){this.isToken=!0,this.name=r.EMPTY,this.tin=-1,this.val=void 0,this.src=r.EMPTY,this.sI=-1,this.rI=-1,this.cI=-1,this.len=-1,this.name=e,this.tin=t,this.src=i,this.val=n,this.sI=l.sI,this.rI=l.rI,this.cI=l.cI,this.use=s,this.why=o,this.len=null==i?0:i.length}resolveVal(e,t){return"function"==typeof this.val?this.val(e,t):this.val}bad(e,t){return this.err=e,null!=t&&(this.use=(0,i.deep)(this.use||{},t)),this}toString(){return"Token["+this.name+"="+this.tin+" "+(0,i.snip)(this.src)+(void 0===this.val||"#ST"===this.name||"#TX"===this.name?"":"="+(0,i.snip)(this.val))+" "+[this.sI,this.rI,this.cI]+(null==this.use?"":" "+(0,i.snip)(""+JSON.stringify(this.use).replace(/"/g,""),22))+(null==this.err?"":" "+this.err)+(null==this.why?"":" "+(0,i.snip)(""+this.why,22))+"]"}[r.INSPECT](){return this.toString()}}const a=(...e)=>new o(...e);function u(e,t,n){let r=e.pnt,i=t;if(e.cfg.fixed.lex&&null!=n&&0<n.length){let l,s=e.cfg.fixed.token[n];null!=s&&(l=e.token(s,void 0,n,r)),null!=l&&(r.sI+=l.src.length,r.cI+=l.src.length,null==t?i=l:r.token.push(l))}return i}n.makeToken=a,n.makeNoToken=()=>a("",-1,void 0,r.EMPTY,s(-1)),n.makeFixedMatcher=(e,t)=>{let n=(0,i.regexp)(null,"^(",e.rePart.fixed,")");return function(t){let r=e.fixed;if(!r.lex)return;if(e.fixed.check){let n=e.fixed.check(t);if(n&&n.done)return n.token}let i=t.pnt,l=t.src.substring(i.sI).match(n);if(l){let e=l[1],n=e.length;if(0<n){let l,s=r.token[e];return null!=s&&(l=t.token(s,void 0,e,i),i.sI+=n,i.cI+=n),l}}}},n.makeMatchMatcher=(e,t)=>{let n=(0,i.values)(e.match.value),r=(0,i.values)(e.match.token);return 0===n.length&&0===r.length?null:function(t,i,l=0){if(!e.match.lex)return;if(e.match.check){let n=e.match.check(t);if(n&&n.done)return n.token}let s=t.pnt,o=t.src.substring(s.sI),a="o"===i.state?0:1;for(let e of n)if(e.match instanceof RegExp){let n=o.match(e.match);if(n){let r=n[0],i=r.length;if(0<i){let l,o=e.val?e.val(n):r;return l=t.token("#VL",o,r,s),s.sI+=i,s.cI+=i,l}}}else{let n=e.match(t,i);if(null!=n)return n}for(let e of r)if(!e.tin$||i.spec.def.tcol[a][l].includes(e.tin$))if(e instanceof RegExp){let n=o.match(e);if(n){let r=n[0],i=r.length;if(0<i){let n,l=e.tin$;return n=t.token(l,r,r,s),s.sI+=i,s.cI+=i,n}}}else{let n=e(t,i);if(null!=n)return n}}},n.makeCommentMatcher=(e,t)=>{let n=t.comment;e.comment={lex:!!n&&!!n.lex,def:((null==n?void 0:n.def)?(0,i.entries)(n.def):[]).reduce((e,[t,n])=>{if(null==n||!1===n)return e;let r={name:t,start:n.start,end:n.end,line:!!n.line,lex:!!n.lex,eatline:!!n.eatline};return e[t]=r,e},{})};let r=e.comment.lex?(0,i.values)(e.comment.def).filter(e=>e.lex&&e.line):[],l=e.comment.lex?(0,i.values)(e.comment.def).filter(e=>e.lex&&!e.line):[];return function(t,n){if(!e.comment.lex)return;if(e.comment.check){let n=e.comment.check(t);if(n&&n.done)return n.token}let s=t.pnt,o=t.src.substring(s.sI),a=s.rI,u=s.cI;for(let i of r)if(o.startsWith(i.start)){let n=o.length,r=i.start.length;for(u+=i.start.length;r<n&&!e.line.chars[o[r]];)u++,r++;if(i.eatline)for(;r<n&&e.line.chars[o[r]];)e.line.rowChars[o[r]]&&a++,r++;let l=o.substring(0,r),c=t.token("#CM",void 0,l,s);return s.sI+=l.length,s.cI=u,s.rI=a,c}for(let r of l)if(o.startsWith(r.start)){let n=o.length,l=r.start.length,c=r.end;for(u+=r.start.length;l<n&&!o.substring(l).startsWith(c);)e.line.rowChars[o[l]]&&(a++,u=0),u++,l++;if(o.substring(l).startsWith(c)){if(u+=c.length,r.eatline)for(;l<n&&e.line.chars[o[l]];)e.line.rowChars[o[l]]&&a++,l++;let i=o.substring(0,l+c.length),p=t.token("#CM",void 0,i,s);return s.sI+=i.length,s.rI=a,s.cI=u,p}return t.bad(i.S.unterminated_comment,s.sI,s.sI+9*r.start.length)}}},n.makeTextMatcher=(e,t)=>{let n=(0,i.regexp)(e.line.lex?null:"s","^(.*?)",...e.rePart.ender);return function(r){if(e.text.check){let t=e.text.check(r);if(t&&t.done)return t.token}let i=e.text,l=r.pnt,s=r.src.substring(l.sI),o=e.value.def,a=e.value.defre,c=s.match(n);if(c){let n,p=c[1],d=c[2];if(null!=p){let t=p.length;if(0<t){let u;if(e.value.lex)if(void 0!==(u=o[p]))n=r.token("#VL",u.val,p,l),l.sI+=t,l.cI+=t;else for(let e in a){let t=a[e];if(t.match){let e=t.match.exec(t.consume?s:p);if(e&&(t.consume||e[0].length===p.length)){let i=e[0];if(null==t.val)n=r.token("#VL",i,i,l);else{let s=t.val(e);n=r.token("#VL",s,i,l)}l.sI+=i.length,l.cI+=i.length}}}null==n&&i.lex&&(n=r.token("#TX",p,p,l),l.sI+=t,l.cI+=t)}}if(n&&(n=u(r,n,d)),n&&0<e.text.modify.length){const i=e.text.modify;for(let l=0;l<i.length;l++)n.val=i[l](n.val,r,e,t)}return n}}},n.makeNumberMatcher=(e,t)=>{let n=e.number,r=(0,i.regexp)(null,["^([-+]?(0(",[n.hex?"x[0-9a-fA-F_]+":null,n.oct?"o[0-7_]+":null,n.bin?"b[01_]+":null].filter(e=>null!=e).join("|"),")|\\.?[0-9]+([0-9_]*[0-9])?)","(\\.[0-9]?([0-9_]*[0-9])?)?","([eE][-+]?[0-9]+([0-9_]*[0-9])?)?"].join("").replace(/_/g,n.sep?(0,i.escre)(n.sepChar):""),")",...e.rePart.ender),l=n.sep?(0,i.regexp)("g",(0,i.escre)(n.sepChar)):void 0;return function(t){if(n=e.number,!n.lex)return;if(e.number.check){let n=e.number.check(t);if(n&&n.done)return n.token}let i=t.pnt,s=t.src.substring(i.sI),o=e.value.def,a=s.match(r);if(a){let n,r=a[1],s=a[9],c=!0;if(null!=r&&(c=!e.number.exclude||!r.match(e.number.exclude))){let s=r.length;if(0<s){let a;if(e.value.lex&&void 0!==(a=o[r]))n=t.token("#VL",a.val,r,i);else{let e=l?r.replace(l,""):r,o=+e;if(isNaN(o)){let t=e[0];"-"!==t&&"+"!==t||(o=("-"===t?-1:1)*+e.substring(1))}isNaN(o)||(n=t.token("#NR",o,r,i),i.sI+=s,i.cI+=s)}}}return c&&(n=u(t,n,s)),n}}},n.makeStringMatcher=(e,t)=>{let n=t.string||{};return e.string=e.string||{},e.string=(0,i.deep)(e.string,{lex:!!(null==n?void 0:n.lex),quoteMap:(0,i.charset)(n.chars),multiChars:(0,i.charset)(n.multiChars),escMap:{...n.escape},escChar:n.escapeChar,escCharCode:null==n.escapeChar?void 0:n.escapeChar.charCodeAt(0),allowUnknown:!!n.allowUnknown,replaceCodeMap:(0,i.omap)((0,i.clean)({...n.replace}),([e,t])=>[e.charCodeAt(0),t]),hasReplace:!1,abandon:!!n.abandon}),e.string.escMap=(0,i.clean)(e.string.escMap),e.string.hasReplace=0<(0,i.keys)(e.string.replaceCodeMap).length,function(t){let n=e.string;if(!n.lex)return;if(e.string.check){let n=e.string.check(t);if(n&&n.done)return n.token}let{quoteMap:l,escMap:s,escChar:o,escCharCode:a,multiChars:u,allowUnknown:c,replaceCodeMap:p,hasReplace:d}=n,{pnt:h,src:f}=t,{sI:m,rI:g,cI:v}=h,x=f.length;if(l[f[m]]){const l=f[m],k=m,b=g,y=u[l];++m,++v;let j,S=[];for(;m<x;m++){v++;let r=f[m];if(j=void 0,l===r){m++;break}if(o===r){m++,v++;let e=s[f[m]];if(null!=e)S.push(e);else if("x"===f[m]){m++;let e=parseInt(f.substring(m,m+2),16);if(isNaN(e)){if(n.abandon)return;return m-=2,v-=2,h.sI=m,h.cI=v,t.bad(i.S.invalid_ascii,m,m+4)}let r=String.fromCharCode(e);S.push(r),m+=1,v+=2}else if("u"===f[m]){m++;let e="{"===f[m]?(m++,1):0,r=e?6:4,l=parseInt(f.substring(m,m+r),16);if(isNaN(l)){if(n.abandon)return;return m=m-2-e,v-=2,h.sI=m,h.cI=v,t.bad(i.S.invalid_unicode,m,m+r+2+2*e)}let s=String.fromCodePoint(l);S.push(s),m+=r-1+e,v+=r+e}else{if(!c){if(n.abandon)return;return h.sI=m,h.cI=v-1,t.bad(i.S.unexpected,m,m+1)}S.push(f[m])}}else if(d&&void 0!==(j=p[f.charCodeAt(m)]))S.push(j),v++;else{let r=m,s=l.charCodeAt(0),o=f.charCodeAt(m);for(;(!d||void 0===(j=p[o]))&&m<x&&32<=o&&s!==o&&a!==o;)o=f.charCodeAt(++m),v++;if(v--,void 0===j&&o<32){if(!y||!e.line.chars[f[m]]){if(n.abandon)return;return h.sI=m,h.cI=v,t.bad(i.S.unprintable,m,m+1)}e.line.rowChars[f[m]]&&(h.rI=++g),v=1,S.push(f.substring(r,m+1))}else S.push(f.substring(r,m)),m--}}if(f[m-1]!==l||h.sI===m-1){if(n.abandon)return;return h.rI=b,t.bad(i.S.unterminated_string,k,m)}const E=t.token("#ST",S.join(r.EMPTY),f.substring(h.sI,m),h);return h.sI=m,h.rI=g,h.cI=v,E}}},n.makeLineMatcher=(e,t)=>function(t){if(!e.line.lex)return;if(e.line.check){let n=e.line.check(t);if(n&&n.done)return n.token}let n,{chars:r,rowChars:i}=e.line,{pnt:l,src:s}=t,{sI:o,rI:a}=l,u=e.line.single;for(u&&(n={});r[s[o]]&&!(n&&(n[s[o]]=(n[s[o]]||0)+1,u&&1<n[s[o]]));)a+=i[s[o]]?1:0,o++;if(l.sI<o){let e=s.substring(l.sI,o);const n=t.token("#LN",void 0,e,l);return l.sI+=e.length,l.rI=a,l.cI=1,n}},n.makeSpaceMatcher=(e,t)=>function(t){if(!e.space.lex)return;if(e.space.check){let n=e.space.check(t);if(n&&n.done)return n.token}let{chars:n}=e.space,{pnt:r,src:i}=t,{sI:l,cI:s}=r;for(;n[i[l]];)l++,s++;if(r.sI<l){let e=i.substring(r.sI,l);const n=t.token("#SP",void 0,e,r);return r.sI+=e.length,r.cI=s,n}};class c{constructor(e){this.src=r.EMPTY,this.ctx={},this.cfg={},this.pnt=s(-1),this.ctx=e,this.src=e.src(),this.cfg=e.cfg,this.pnt=s(this.src.length)}token(e,t,n,r,l,s){let o,u;return"string"==typeof e?(u=e,o=(0,i.tokenize)(u,this.cfg)):(o=e,u=(0,i.tokenize)(e,this.cfg)),a(u,o,t,n,r||this.pnt,l,s)}next(e,t,n,r){let l,s,o=this.pnt,a=o.sI;if(o.end)l=o.end;else if(0<o.token.length)l=o.token.shift();else if(o.len<=o.sI)o.end=this.token("#ZZ",void 0,"",o),l=o.end;else{try{for(let t of this.cfg.lex.match)if(l=t(this,e,r)){s=t;break}}catch(u){l=l||this.token("#BD",void 0,this.src[o.sI],o,{err:u},u.code||i.S.unexpected)}l=l||this.token("#BD",void 0,this.src[o.sI],o,void 0,i.S.unexpected)}return this.ctx.log&&this.ctx.log(i.S.lex,this.ctx,e,this,o,a,s,l,t,n,r),this.ctx.sub.lex&&this.ctx.sub.lex.map(t=>t(l,e,this.ctx)),l}tokenize(e){return(0,i.tokenize)(e,this.cfg)}bad(e,t,n){return this.token("#BD",void 0,0<=t&&t<=n?this.src.substring(t,n):this.src[this.pnt.sI],void 0,void 0,e)}}n.makeLex=(...e)=>new c(...e)})),r={};Object.defineProperty(r,"__esModule",{value:!0}),r.STRING=r.INSPECT=r.EMPTY=r.AFTER=r.BEFORE=r.CLOSE=r.OPEN=void 0,r.OPEN="o",r.CLOSE="c",r.BEFORE="b",r.AFTER="a",r.EMPTY="",r.INSPECT=Symbol.for("nodejs.util.inspect.custom"),r.STRING="string";var i={};Object.defineProperty(i,"__esModule",{value:!0}),i.defaults=void 0;const l=n({}),s={safe:{key:!0},tag:"-",fixed:{lex:!0,token:{"#OB":"{","#CB":"}","#OS":"[","#CS":"]","#CL":":","#CA":","}},match:{lex:!0,token:{}},tokenSet:{IGNORE:["#SP","#LN","#CM"],VAL:["#TX","#NR","#ST","#VL"],KEY:["#TX","#NR","#ST","#VL"]},space:{lex:!0,chars:" \t"},line:{lex:!0,chars:"\r\n",rowChars:"\n",single:!1},text:{lex:!0},number:{lex:!0,hex:!0,oct:!0,bin:!0,sep:"_",exclude:void 0},comment:{lex:!0,def:{hash:{line:!0,start:"#",lex:!0,eatline:!1},slash:{line:!0,start:"//",lex:!0,eatline:!1},multi:{line:!1,start:"/*",end:"*/",lex:!0,eatline:!1}}},string:{lex:!0,chars:"'\"`",multiChars:"`",escapeChar:"\\",escape:{b:"\b",f:"\f",n:"\n",r:"\r",t:"\t",v:"\v",'"':'"',"'":"'","`":"`","\\":"\\","/":"/"},allowUnknown:!0,abandon:!1},map:{extend:!0,merge:void 0},list:{property:!0},value:{lex:!0,def:{true:{val:!0},false:{val:!1},null:{val:null}}},ender:[],plugin:{},debug:{get_console:()=>console,maxlen:99,print:{config:!1,src:void 0}},error:{unknown:"unknown error: $code",unexpected:"unexpected character(s): $src",invalid_unicode:"invalid unicode escape: $src",invalid_ascii:"invalid ascii escape: $src",unprintable:"unprintable character: $src",unterminated_string:"unterminated string: $src",unterminated_comment:"unterminated comment: $src",unknown_rule:"unknown rule: $rulename"},hint:function(e=((e,t="replace")=>e[t](/[A-Z]/g,e=>" "+e.toLowerCase())[t](/[~%][a-z]/g,e=>("~"==e[0]?" ":"")+e[1].toUpperCase())),t="~sinceTheErrorIsUnknown,ThisIsProbablyABugInsideJsonic\nitself,OrAPlugin.~pleaseConsiderPostingAGithubIssue -Thanks!\n\n~code: $code,~details: \n$details|~theCharacter(s) $srcWereNotExpectedAtThisPointAsTheyDoNot\nmatchTheExpectedSyntax,EvenUnderTheRelaxedJsonicRules.~ifIt\nisNotObviouslyWrong,TheActualSyntaxErrorMayBeElsewhere.~try\ncommentingOutLargerAreasAroundThisPointUntilYouGetNoErrors,\nthenRemoveTheCommentsInSmallSectionsUntilYouFindThe\noffendingSyntax.~n%o%t%e:~alsoCheckIfAnyPluginsYouAreUsing\nexpectDifferentSyntaxInThisCase.|~theEscapeSequence $srcDoesNotEncodeAValidUnicodeCodePoint\nnumber.~youMayNeedToValidateYourStringDataManuallyUsingTest\ncodeToSeeHow~javaScriptWillInterpretIt.~alsoConsiderThatYour\ndataMayHaveBecomeCorrupted,OrTheEscapeSequenceHasNotBeen\ngeneratedCorrectly.|~theEscapeSequence $srcDoesNotEncodeAValid~a%s%c%i%iCharacter.~you\nmayNeedToValidateYourStringDataManuallyUsingTestCodeToSee\nhow~javaScriptWillInterpretIt.~alsoConsiderThatYourDataMay\nhaveBecomeCorrupted,OrTheEscapeSequenceHasNotBeenGenerated\ncorrectly.|~stringValuesCannotContainUnprintableCharacters (characterCodes\nbelow 32).~theCharacter $srcIsUnprintable.~youMayNeedToRemove\ntheseCharactersFromYourSourceData.~alsoCheckThatItHasNot\nbecomeCorrupted.|~thisStringHasNoEndQuote.|~thisCommentIsNeverClosed.|~noRuleNamed $rulenameIsDefined.~thisIsProbablyAnErrorInThe\ngrammarOfAPlugin.".split("|")){return"unknown|unexpected|invalid_unicode|invalid_ascii|unprintable|unterminated_string|unterminated_comment|unknown_rule".split("|").reduce((n,r,i)=>(n[r]=e(t[i]),n),{})},lex:{match:{match:{order:1e6,make:l.makeMatchMatcher},fixed:{order:2e6,make:l.makeFixedMatcher},space:{order:3e6,make:l.makeSpaceMatcher},line:{order:4e6,make:l.makeLineMatcher},string:{order:5e6,make:l.makeStringMatcher},comment:{order:6e6,make:l.makeCommentMatcher},number:{order:7e6,make:l.makeNumberMatcher},text:{order:8e6,make:l.makeTextMatcher}},empty:!0,emptyResult:void 0},parse:{prepare:{}},rule:{start:"val",finish:!0,maxmul:3,include:"",exclude:""},result:{fail:[]},config:{modify:{}},parser:{start:void 0}};i.defaults=s;var o={};Object.defineProperty(o,"__esModule",{value:!0}),o.makeRuleSpec=o.makeNoRule=o.makeRule=void 0;const a=t({});class u{constructor(e,t,n){this.i=-1,this.name=r.EMPTY,this.node=null,this.state=r.OPEN,this.n=Object.create(null),this.d=-1,this.u=Object.create(null),this.k=Object.create(null),this.bo=!1,this.ao=!1,this.bc=!1,this.ac=!1,this.os=0,this.cs=0,this.need=0,this.i=t.uI++,this.name=e.name,this.spec=e,this.child=t.NORULE,this.parent=t.NORULE,this.prev=t.NORULE,this.o0=t.NOTOKEN,this.o1=t.NOTOKEN,this.c0=t.NOTOKEN,this.c1=t.NOTOKEN,this.node=n,this.d=t.rsI,this.bo=null!=e.def.bo,this.ao=null!=e.def.ao,this.bc=null!=e.def.bc,this.ac=null!=e.def.ac}process(e,t){return this.spec.process(this,e,t,this.state)}eq(e,t=0){let n=this.n[e];return null==n||n===t}lt(e,t=0){let n=this.n[e];return null==n||n<t}gt(e,t=0){let n=this.n[e];return null==n||n>t}lte(e,t=0){let n=this.n[e];return null==n||n<=t}gte(e,t=0){let n=this.n[e];return null==n||n>=t}toString(){return"[Rule "+this.name+"~"+this.i+"]"}}const c=(...e)=>new u(...e);o.makeRule=c,o.makeNoRule=e=>c(g(e.cfg,{}),e);class p{constructor(){this.p=r.EMPTY,this.r=r.EMPTY,this.b=0}}const d=(...e)=>new p(...e),h=d(),f=d();class m{constructor(e,t){this.name=r.EMPTY,this.def={open:[],close:[],bo:[],bc:[],ao:[],ac:[],tcol:[]},this.cfg=e,this.def=Object.assign(this.def,t),this.def.open=(this.def.open||[]).filter(e=>null!=e),this.def.close=(this.def.close||[]).filter(e=>null!=e);for(let n of[...this.def.open,...this.def.close])v(n)}tin(e){return(0,a.tokenize)(e,this.cfg)}add(e,t,n){let r=(null==n?void 0:n.append)?"push":"unshift",i=((0,a.isarr)(t)?t:[t]).filter(e=>null!=e&&"object"==typeof e).map(e=>v(e)),l="o"===e?"open":"close",s=this.def[l];return s[r](...i),s=this.def[l]=(0,a.modlist)(s,n),(0,a.filterRules)(this,this.cfg),this.norm(),this}open(e,t){return this.add("o",e,t)}close(e,t){return this.add("c",e,t)}action(e,t,n,r){let i=this.def[t+n];return e?i.push(r):i.unshift(r),this}bo(e,t){return this.action(!t||!!e,r.BEFORE,r.OPEN,t||e)}ao(e,t){return this.action(!t||!!e,r.AFTER,r.OPEN,t||e)}bc(e,t){return this.action(!t||!!e,r.BEFORE,r.CLOSE,t||e)}ac(e,t){return this.action(!t||!!e,r.AFTER,r.CLOSE,t||e)}clear(){return this.def.open.length=0,this.def.close.length=0,this.def.bo.length=0,this.def.ao.length=0,this.def.bc.length=0,this.def.ac.length=0,this}norm(){this.def.open.map(e=>v(e)),this.def.close.map(e=>v(e));const e=[];function t(e,t,n){return n[e]=n[e]||[],[function(e,n){if(n.s&&n.s[t]){let r=[...new Set(e.concat(n.s[t]))];e.length=0,e.push(...r)}return e},n[e][t]=n[e][t]||[]]}return this.def.open.reduce(...t(0,0,e)),this.def.open.reduce(...t(0,1,e)),this.def.close.reduce(...t(1,0,e)),this.def.close.reduce(...t(1,1,e)),this.def.tcol=e,this}process(e,t,n,i){t.log&&t.log(a.S.rule,t,e,n);let l="o"===i,s=l?e:t.NORULE,o=l?"O":"C",u=this.def,p=l?u.open:u.close,d=l?e.bo?u.bo:null:e.bc?u.bc:null;if(d){let n;for(let r=0;r<d.length;r++)if(n=d[r].call(this,e,t,s,n),(null==n?void 0:n.isToken)&&(null==n?void 0:n.err))return this.bad(n,e,t,{is_open:l})}let m=0<p.length?function(e,t,n,i,l){let s=h;s.b=0,s.p=r.EMPTY,s.r=r.EMPTY,s.n=void 0,s.h=void 0,s.a=void 0,s.u=void 0,s.k=void 0,s.e=void 0;let o=null,u=0,c=!0,p=1<<l.cfg.t.AA-1,d=l.cfg.tokenSetTins.IGNORE;function f(e,t,r,i){let s;do{s=n.next(e,t,r,i),l.tC++}while(d[s.tin]);return s}let m=t.length;for(u=0;u<m;u++){o=t[u];let n=!1,r=!1;if(c=!0,o.S0){let e=(l.t0=l.NOTOKEN!==l.t0?l.t0:l.t0=f(i,o,u,0)).tin;if(n=!0,c=!!(o.S0[e/31|0]&(1<<e%31-1|p)),c&&(r=null!=o.S1,o.S1)){let e=(l.t1=l.NOTOKEN!==l.t1?l.t1:l.t1=f(i,o,u,1)).tin;r=!0,c=!!(o.S1[e/31|0]&(1<<e%31-1|p))}}if(e?(i.o0=n?l.t0:l.NOTOKEN,i.o1=r?l.t1:l.NOTOKEN,i.os=(n?1:0)+(r?1:0)):(i.c0=n?l.t0:l.NOTOKEN,i.c1=r?l.t1:l.NOTOKEN,i.cs=(n?1:0)+(r?1:0)),c&&o.c&&(c=c&&o.c(i,l,s)),c)break;o=null}c||(s.e=l.t0),o&&(s.n=null!=o.n?o.n:s.n,s.h=null!=o.h?o.h:s.h,s.a=null!=o.a?o.a:s.a,s.u=null!=o.u?o.u:s.u,s.k=null!=o.k?o.k:s.k,s.g=null!=o.g?o.g:s.g,s.e=o.e&&o.e(i,l,s)||void 0,s.p=null!=o.p&&!1!==o.p?"string"==typeof o.p?o.p:o.p(i,l,s):s.p,s.r=null!=o.r&&!1!==o.r?"string"==typeof o.r?o.r:o.r(i,l,s):s.r,s.b=null!=o.b&&!1!==o.b?"number"==typeof o.b?o.b:o.b(i,l,s):s.b);let g=u<t.length;return l.log&&l.log(a.S.parse,l,i,n,g,c,u,o,s),s}(l,p,n,e,t):f;if(m.h&&(m=m.h(e,t,m,s)||m,o+="H"),m.e)return this.bad(m.e,e,t,{is_open:l});if(m.n)for(let r in m.n)e.n[r]=0===m.n[r]?0:(null==e.n[r]?0:e.n[r])+m.n[r];if(m.u&&(e.u=Object.assign(e.u,m.u)),m.k&&(e.k=Object.assign(e.k,m.k)),m.a){o+="A";let n=m.a(e,t,m);if(n&&n.isToken&&n.err)return this.bad(n,e,t,{is_open:l})}if(m.p){t.rs[t.rsI++]=e;let n=t.rsm[m.p];if(!n)return this.bad(this.unknownRule(t.t0,m.p),e,t,{is_open:l});s=e.child=c(n,t,e.node),s.parent=e,s.n={...e.n},0<Object.keys(e.k).length&&(s.k={...e.k}),o+="P`"+m.p+"`"}else if(m.r){let n=t.rsm[m.r];if(!n)return this.bad(this.unknownRule(t.t0,m.r),e,t,{is_open:l});s=c(n,t,e.node),s.parent=e.parent,s.prev=e,s.n={...e.n},0<Object.keys(e.k).length&&(s.k={...e.k}),o+="R`"+m.r+"`"}else l||(s=t.rs[--t.rsI]||t.NORULE);let g=l?e.ao?u.ao:null:e.ac?u.ac:null;if(g){let n;for(let r=0;r<g.length;r++)if(n=g[r](e,t,s,n),(null==n?void 0:n.isToken)&&(null==n?void 0:n.err))return this.bad(n,e,t,{is_open:l})}s.why=o,t.log&&t.log(a.S.node,t,e,n,s),r.OPEN===e.state&&(e.state=r.CLOSE);let v=e[l?"os":"cs"]-(m.b||0);return 1===v?(t.v2=t.v1,t.v1=t.t0,t.t0=t.t1,t.t1=t.NOTOKEN):2==v&&(t.v2=t.t1,t.v1=t.t0,t.t0=t.NOTOKEN,t.t1=t.NOTOKEN),s}bad(e,t,n,r){throw new a.JsonicError(e.err||a.S.unexpected,{...e.use,state:r.is_open?a.S.open:a.S.close},e,t,n)}unknownRule(e,t){return e.err="unknown_rule",e.use=e.use||{},e.use.rulename=t,e}}const g=(...e)=>new m(...e);function v(e){if(r.STRING===typeof e.g?e.g=e.g.split(/\s*,\s*/):null==e.g&&(e.g=[]),e.g=e.g.sort(),e.s&&0!==e.s.length){const t=e=>e.flat().filter(e=>"number"==typeof e),n=(e,t)=>e.filter(e=>31*t<=e&&e<31*(t+1)),r=(e,t)=>e.reduce((e,n)=>1<<n-(31*t+1)|e,0),i=t([e.s[0]]),l=t([e.s[1]]),s=e;s.S0=0<i.length?new Array(Math.max(...i.map(e=>1+e/31|0))).fill(null).map((e,t)=>t).map(e=>r(n(i,e),e)):null,s.S1=0<l.length?new Array(Math.max(...l.map(e=>1+e/31|0))).fill(null).map((e,t)=>t).map(e=>r(n(l,e),e)):null}else e.s=null;return e.p||(e.p=null),e.r||(e.r=null),e.b||(e.b=null),e}o.makeRuleSpec=g;var x={};Object.defineProperty(x,"__esModule",{value:!0}),x.makeParser=x.makeRuleSpec=x.makeRule=void 0;const k=t({}),b=n({});Object.defineProperty(x,"makeRule",{enumerable:!0,get:function(){return o.makeRule}}),Object.defineProperty(x,"makeRuleSpec",{enumerable:!0,get:function(){return o.makeRuleSpec}});class y{constructor(e,t){this.rsm={},this.options=e,this.cfg=t}rule(e,t){if(null==e)return this.rsm;let n=this.rsm[e];if(null===t)delete this.rsm[e];else if(void 0!==t)return n=this.rsm[e]=this.rsm[e]||(0,o.makeRuleSpec)(this.cfg,{}),n=this.rsm[e]=t(this.rsm[e],this)||this.rsm[e],void(n.name=e);return n}start(e,t,n,i){let l,s=(0,b.makeToken)("#ZZ",(0,k.tokenize)("#ZZ",this.cfg),void 0,r.EMPTY,(0,b.makePoint)(-1)),a=(0,b.makeNoToken)(),u={uI:0,opts:this.options,cfg:this.cfg,meta:n||{},src:()=>e,root:()=>l,plgn:()=>t.internal().plugins,inst:()=>t,rule:{},sub:t.internal().sub,xs:-1,v2:s,v1:s,t0:a,t1:a,tC:-2,kI:-1,rs:[],rsI:0,rsm:this.rsm,log:void 0,F:(0,k.srcfmt)(this.cfg),use:{},NOTOKEN:a,NORULE:{}};u=(0,k.deep)(u,i);let c=(0,o.makeNoRule)(u);if(u.NORULE=c,u.rule=c,n&&k.S.function===typeof n.log&&(u.log=n.log),this.cfg.parse.prepare.forEach(e=>e(t,u,n)),""===e){if(this.cfg.lex.empty)return this.cfg.lex.emptyResult;throw new k.JsonicError(k.S.unexpected,{src:e},u.t0,c,u)}let p=(0,k.badlex)((0,b.makeLex)(u),(0,k.tokenize)("#BD",this.cfg),u),d=this.rsm[this.cfg.rule.start];if(null==d)return;let h=(0,o.makeRule)(d,u);l=h;let f=2*(0,k.keys)(this.rsm).length*p.src.length*2*u.cfg.rule.maxmul,m=0;for(;c!==h&&m<f;)u.kI=m,u.rule=h,u.log&&u.log("",u.kI+":"),u.sub.rule&&u.sub.rule.map(e=>e(h,u)),h=h.process(u,p),u.log&&u.log(k.S.stack,u,h,p),m++;if(s.tin!==p.next(h).tin)throw new k.JsonicError(k.S.unexpected,{},u.t0,c,u);const g=u.root().node;if(this.cfg.result.fail.includes(g))throw new k.JsonicError(k.S.unexpected,{},u.t0,c,u);return g}clone(e,t){let n=new y(e,t);return n.rsm=Object.keys(this.rsm).reduce((e,t)=>(e[t]=(0,k.filterRules)(this.rsm[t],this.cfg),e),{}),n.norm(),n}norm(){(0,k.values)(this.rsm).map(e=>e.norm())}}x.makeParser=(...e)=>new y(...e);var j={};function S(e){const{deep:t}=e.util,{OB:n,CB:r,OS:i,CS:l,CL:s,CA:o,TX:a,ST:u,ZZ:c}=e.token,{VAL:p,KEY:d}=e.tokenSet,h=(e,t)=>{if(!t.cfg.rule.finish)return t.t0.src="END_OF_SOURCE",t.t0},f=e=>{const t=e.o0,n=u===t.tin||a===t.tin?t.val:t.src;e.u.key=n};e.rule("val",e=>{e.bo(e=>e.node=void 0).open([{s:[n],p:"map",b:1,g:"map,json"},{s:[i],p:"list",b:1,g:"list,json"},{s:[p],g:"val,json"}]).close([{s:[c],g:"end,json"},{b:1,g:"more,json"}]).bc((e,t)=>{e.node=void 0===e.node?void 0===e.child.node?0===e.os?void 0:e.o0.resolveVal(e,t):e.child.node:e.node})}),e.rule("map",e=>{e.bo(e=>{e.node=Object.create(null)}).open([{s:[n,r],b:1,n:{pk:0},g:"map,json"},{s:[n],p:"pair",n:{pk:0},g:"map,json,pair"}]).close([{s:[r],g:"end,json"}])}),e.rule("list",e=>{e.bo(e=>{e.node=[]}).open([{s:[i,l],b:1,g:"list,json"},{s:[i],p:"elem",g:"list,elem,json"}]).close([{s:[l],g:"end,json"}])}),e.rule("pair",e=>{e.open([{s:[d,s],p:"val",u:{pair:!0},a:f,g:"map,pair,key,json"}]).bc((e,t)=>{e.u.pair&&(e.u.prev=e.node[e.u.key],e.node[e.u.key]=e.child.node)}).close([{s:[o],r:"pair",g:"map,pair,json"},{s:[r],b:1,g:"map,pair,json"}])}),e.rule("elem",e=>{e.open([{p:"val",g:"list,elem,val,json"}]).bc(e=>{!0!==e.u.done&&e.node.push(e.child.node)}).close([{s:[o],r:"elem",g:"list,elem,json"},{s:[l],b:1,g:"list,elem,json"}])});const m=(e,n)=>{let r=e.u.key,i=e.child.node;const l=e.u.prev;i=void 0===i?null:i,e.u.list&&n.cfg.safe.key&&("__proto__"===r||"constructor"===r)||(e.node[r]=null==l?i:n.cfg.map.merge?n.cfg.map.merge(l,i,e,n):n.cfg.map.extend?t(l,i):i)};e.rule("val",e=>{e.open([{s:[d,s],p:"map",b:2,n:{pk:1},g:"pair,jsonic"},{s:[p],g:"val,json"},{s:[[r,l]],b:1,c:e=>0<e.d,g:"val,imp,null,jsonic"},{s:[o],c:e=>0===e.d,p:"list",b:1,g:"list,imp,jsonic"},{s:[o],b:1,g:"list,val,imp,null,jsonic"},{s:[c],g:"jsonic"}],{append:!0,delete:[2]}).close([{s:[[r,l]],b:1,g:"val,json,close",e:(e,t)=>0===e.d?t.t0:void 0},{s:[o],c:e=>e.lte("dlist")&&e.lte("dmap"),r:"list",u:{implist:!0},g:"list,val,imp,comma,jsonic"},{c:e=>e.lte("dlist")&&e.lte("dmap"),r:"list",u:{implist:!0},g:"list,val,imp,space,jsonic",b:1},{s:[c],g:"jsonic"}],{append:!0,move:[1,-1]})}),e.rule("map",e=>{e.bo(e=>{e.n.dmap=1+(e.n.dmap?e.n.dmap:0)}).open([{s:[n,c],b:1,e:h,g:"end,jsonic"}]).open([{s:[d,s],p:"pair",b:2,g:"pair,list,val,imp,jsonic"}],{append:!0}).close([{s:[r],c:e=>e.lte("pk"),g:"end,json"},{s:[r],b:1,g:"path,jsonic"},{s:[[o,l,...p]],b:1,g:"end,path,jsonic"},{s:[c],e:h,g:"end,jsonic"}],{append:!0,delete:[0]})}),e.rule("list",e=>{e.bo(e=>{e.n.dlist=1+(e.n.dlist?e.n.dlist:0),e.prev.u.implist&&(e.node.push(e.prev.node),e.prev.node=e.node)}).open({c:e=>e.prev.u.implist,p:"elem"}).open([{s:[o],p:"elem",b:1,g:"list,elem,val,imp,jsonic"},{p:"elem",g:"list,elem.jsonic"}],{append:!0}).close([{s:[c],e:h,g:"end,jsonic"}],{append:!0})}),e.rule("pair",(e,t)=>{e.open([{s:[o],g:"map,pair,comma,jsonic"}],{append:!0}).bc((e,t)=>{e.u.pair&&m(e,t)}).close([{s:[r],c:e=>e.lte("pk"),b:1,g:"map,pair,json"},{s:[o,r],c:e=>e.lte("pk"),b:1,g:"map,pair,comma,jsonic"},{s:[o,c],g:"end,jsonic"},{s:[o],c:e=>e.lte("pk"),r:"pair",g:"map,pair,json"},{s:[o],c:e=>e.lte("dmap",1),r:"pair",g:"map,pair,jsonic"},{s:[d],c:e=>e.lte("dmap",1),r:"pair",b:1,g:"map,pair,imp,jsonic"},{s:[[r,o,l,...d]],c:e=>0<e.n.pk,b:1,g:"map,pair,imp,path,jsonic"},{s:[l],e:e=>e.c0,g:"end,jsonic"},{s:[c],e:h,g:"map,pair,json"},{r:"pair",b:1,g:"map,pair,imp,jsonic"}],{append:!0,delete:[0,1]})}),e.rule("elem",(e,t)=>{e.open([{s:[o,o],b:2,u:{done:!0},a:e=>e.node.push(null),g:"list,elem,imp,null,jsonic"},{s:[o],u:{done:!0},a:e=>e.node.push(null),g:"list,elem,imp,null,jsonic"},{s:[d,s],e:t.cfg.list.property?void 0:(e,t)=>t.t0,p:"val",n:{pk:1,dmap:1},u:{done:!0,pair:!0,list:!0},a:f,g:"elem,pair,jsonic"}]).bc((e,t)=>{!0===e.u.pair&&(e.u.prev=e.node[e.u.key],m(e,t))}).close([{s:[o,[l,c]],b:1,g:"list,elem,comma,jsonic"},{s:[o],r:"elem",g:"list,elem,json"},{s:[l],b:1,g:"list,elem,json"},{s:[c],e:h,g:"list,elem,json"},{s:[r],e:e=>e.c0,g:"end,jsonic"},{r:"elem",b:1,g:"list,elem,imp,jsonic"}],{delete:[-1,-2]})})}Object.defineProperty(j,"__esModule",{value:!0}),j.makeJSON=j.grammar=void 0,j.grammar=S,j.makeJSON=function(e){let t=e.make({grammar$:!1,text:{lex:!1},number:{hex:!1,oct:!1,bin:!1,sep:null,exclude:/^00+/},string:{chars:'"',multiChars:"",allowUnknown:!1,escape:{v:null}},comment:{lex:!1},map:{extend:!1},lex:{empty:!1},rule:{finish:!1,include:"json"},result:{fail:[void 0,NaN]},tokenSet:{KEY:["#ST",null,null,null]}});return S(t),t};var E={exports:{}};Object.defineProperty(E.exports,"__esModule",{value:!0}),E.exports.root=E.exports.S=E.exports.EMPTY=E.exports.AFTER=E.exports.BEFORE=E.exports.CLOSE=E.exports.OPEN=E.exports.makeTextMatcher=E.exports.makeNumberMatcher=E.exports.makeCommentMatcher=E.exports.makeStringMatcher=E.exports.makeLineMatcher=E.exports.makeSpaceMatcher=E.exports.makeFixedMatcher=E.exports.makeParser=E.exports.makeLex=E.exports.makeRuleSpec=E.exports.makeRule=E.exports.makePoint=E.exports.makeToken=E.exports.make=E.exports.util=E.exports.JsonicError=E.exports.Jsonic=void 0,Object.defineProperty(E.exports,"OPEN",{enumerable:!0,get:function(){return r.OPEN}}),Object.defineProperty(E.exports,"CLOSE",{enumerable:!0,get:function(){return r.CLOSE}}),Object.defineProperty(E.exports,"BEFORE",{enumerable:!0,get:function(){return r.BEFORE}}),Object.defineProperty(E.exports,"AFTER",{enumerable:!0,get:function(){return r.AFTER}}),Object.defineProperty(E.exports,"EMPTY",{enumerable:!0,get:function(){return r.EMPTY}});const O=t({});Object.defineProperty(E.exports,"JsonicError",{enumerable:!0,get:function(){return O.JsonicError}}),Object.defineProperty(E.exports,"S",{enumerable:!0,get:function(){return O.S}});const N=n({});Object.defineProperty(E.exports,"makePoint",{enumerable:!0,get:function(){return N.makePoint}}),Object.defineProperty(E.exports,"makeToken",{enumerable:!0,get:function(){return N.makeToken}}),Object.defineProperty(E.exports,"makeLex",{enumerable:!0,get:function(){return N.makeLex}}),Object.defineProperty(E.exports,"makeFixedMatcher",{enumerable:!0,get:function(){return N.makeFixedMatcher}}),Object.defineProperty(E.exports,"makeSpaceMatcher",{enumerable:!0,get:function(){return N.makeSpaceMatcher}}),Object.defineProperty(E.exports,"makeLineMatcher",{enumerable:!0,get:function(){return N.makeLineMatcher}}),Object.defineProperty(E.exports,"makeStringMatcher",{enumerable:!0,get:function(){return N.makeStringMatcher}}),Object.defineProperty(E.exports,"makeCommentMatcher",{enumerable:!0,get:function(){return N.makeCommentMatcher}}),Object.defineProperty(E.exports,"makeNumberMatcher",{enumerable:!0,get:function(){return N.makeNumberMatcher}}),Object.defineProperty(E.exports,"makeTextMatcher",{enumerable:!0,get:function(){return N.makeTextMatcher}}),Object.defineProperty(E.exports,"makeRule",{enumerable:!0,get:function(){return x.makeRule}}),Object.defineProperty(E.exports,"makeRuleSpec",{enumerable:!0,get:function(){return x.makeRuleSpec}}),Object.defineProperty(E.exports,"makeParser",{enumerable:!0,get:function(){return x.makeParser}});const _={tokenize:O.tokenize,srcfmt:O.srcfmt,clone:O.clone,charset:O.charset,trimstk:O.trimstk,makelog:O.makelog,badlex:O.badlex,extract:O.extract,errinject:O.errinject,errdesc:O.errdesc,configure:O.configure,parserwrap:O.parserwrap,mesc:O.mesc,escre:O.escre,regexp:O.regexp,prop:O.prop,str:O.str,clean:O.clean,deep:O.deep,omap:O.omap,keys:O.keys,values:O.values,entries:O.entries};function T(e,t){let n=!0;if("jsonic"===e)n=!1;else if("json"===e)return(0,j.makeJSON)(w);e="string"==typeof e?{}:e;let r={parser:null,config:null,plugins:[],sub:{lex:void 0,rule:void 0},mark:Math.random()},l=(0,O.deep)({},t?{...t.options}:!1===(null==e?void 0:e.defaults$)?{}:i.defaults,e||{}),s=function(e,t,n){var r;if(O.S.string===typeof e){let i=s.internal();return((null===(r=o.parser)||void 0===r?void 0:r.start)?(0,O.parserwrap)(o.parser):i.parser).start(e,s,t,n)}return e},o=e=>{if(null!=e&&O.S.object===typeof e){(0,O.deep)(l,e),(0,O.configure)(s,r.config,l);let t=s.internal().parser;r.parser=t.clone(l,r.config)}return{...s.options}},a={token:e=>(0,O.tokenize)(e,r.config,s),tokenSet:e=>(0,O.findTokenSet)(e,r.config),fixed:e=>r.config.fixed.ref[e],options:(0,O.deep)(o,l),config:()=>(0,O.deep)(r.config),parse:s,use:function(e,t){if(O.S.function!==typeof e)throw new Error("Jsonic.use: the first argument must be a function defining a plugin. See https://jsonic.senecajs.org/plugin");const n=e.name.toLowerCase(),r=(0,O.deep)({},e.defaults||{},t||{});s.options({plugin:{[n]:r}});let i=s.options.plugin[n];return s.internal().plugins.push(e),e.options=i,e(s,i)||s},rule:(e,t)=>s.internal().parser.rule(e,t)||s,make:e=>T(e,s),empty:e=>T({defaults$:!1,standard$:!1,grammar$:!1,...e||{}}),id:"Jsonic/"+Date.now()+"/"+(""+Math.random()).substring(2,8).padEnd(6,"0")+(null==o.tag?"":"/"+o.tag),toString:()=>a.id,sub:e=>(e.lex&&(r.sub.lex=r.sub.lex||[],r.sub.lex.push(e.lex)),e.rule&&(r.sub.rule=r.sub.rule||[],r.sub.rule.push(e.rule)),s),util:_};if((0,O.defprop)(a.make,O.S.name,{value:O.S.make}),n?(0,O.assign)(s,a):(0,O.assign)(s,{empty:a.empty,parse:a.parse,sub:a.sub,id:a.id,toString:a.toString}),(0,O.defprop)(s,"internal",{value:()=>r}),t){for(let n in t)void 0===s[n]&&(s[n]=t[n]);s.parent=t;let e=t.internal();r.config=(0,O.deep)({},e.config),(0,O.configure)(s,r.config,l),(0,O.assign)(s.token,r.config.t),r.plugins=[...e.plugins],r.parser=e.parser.clone(l,r.config)}else{let e={...s,...a};r.config=(0,O.configure)(e,void 0,l),r.plugins=[],r.parser=(0,x.makeParser)(l,r.config),!1!==l.grammar$&&(0,j.grammar)(e)}return s}let w;E.exports.util=_,E.exports.make=T,E.exports.root=w;let P=E.exports.root=w=T("jsonic");return E.exports.Jsonic=P,w.Jsonic=w,w.JsonicError=O.JsonicError,w.makeLex=N.makeLex,w.makeParser=x.makeParser,w.makeToken=N.makeToken,w.makePoint=N.makePoint,w.makeRule=x.makeRule,w.makeRuleSpec=x.makeRuleSpec,w.makeFixedMatcher=N.makeFixedMatcher,w.makeSpaceMatcher=N.makeSpaceMatcher,w.makeLineMatcher=N.makeLineMatcher,w.makeStringMatcher=N.makeStringMatcher,w.makeCommentMatcher=N.makeCommentMatcher,w.makeNumberMatcher=N.makeNumberMatcher,w.makeTextMatcher=N.makeTextMatcher,w.OPEN=r.OPEN,w.CLOSE=r.CLOSE,w.BEFORE=r.BEFORE,w.AFTER=r.AFTER,w.EMPTY=r.EMPTY,w.util=_,w.make=T,w.S=O.S,E.exports.default=P,E.exports=P,E.exports}))}).call(this)}).call(this,void 0!==e?e:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{}),t=t.exports;var n={};Object.defineProperty(n,"__esModule",{value:!0}),n.testing=n.evaluate=n.Expr=void 0;const{omap:r,entries:i,values:l}=t.util,s={};let o=function(e,t){let n=e.token.bind(e),o=e.fixed.bind(e),j=t.op||{};const S=k(n,o,j,"prefix"),E=k(n,o,j,"suffix"),O=k(n,o,j,"infix"),N=k(n,o,j,"ternary"),_=function(e,t,n){return i(n).reduce((n,[r,i])=>{if(i.paren){let l=t(i.osrc)||e("#E"+i.osrc),o=e(l),a=t(i.csrc)||e("#E"+i.csrc),u=e(a);n[l]={name:r+"-paren",osrc:i.osrc,csrc:i.csrc,otkn:o,otin:l,ctkn:u,ctin:a,preval:{active:null!=i.preval&&(null==i.preval.active||i.preval.active),required:null!=i.preval&&null!=i.preval.required&&i.preval.required},use:{},paren:!0,src:i.osrc,left:Number.MIN_SAFE_INTEGER,right:Number.MAX_SAFE_INTEGER,infix:!1,prefix:!1,suffix:!1,ternary:!1,tkn:"",tin:-1,terms:1,token:{},OP_MARK:s}}return n},{})}(n,o,j),T=r(_,([e,t])=>[void 0,void 0,t.ctin,t]);let w=Object.values({..._,...T}).reduce((e,t)=>(e[t.otkn]=t.osrc,e[t.ctkn]=t.csrc,e),{}),P=Object.values({...S,...E,...O,...N}).reduce((e,t)=>(e[t.tkn]=t.src,e),{});e.options({fixed:{token:{...P,...w}},lex:{match:{comment:{order:1e5}}}});const I=l(S).map(e=>e.tin),M=l(O).map(e=>e.tin),C=l(E).map(e=>e.tin),R=l(N).filter(e=>0===e.use.ternary.opI).map(e=>e.tin),A=l(N).filter(e=>1===e.use.ternary.opI).map(e=>e.tin),V=l(_).map(e=>e.otin),L=l(T).map(e=>e.ctin),D=0<I.length,$=0<M.length,F=0<C.length,Y=0<R.length&&0<A.length,J=0<V.length&&0<L.length,B=e.token.CA,U=e.token.CS,K=e.token.CB,q=e.token.TX,z=e.token.NR,G=e.token.ST,Z=e.token.VL,W=e.token.ZZ,H=[q,z,G,Z];e.rule("val",t=>{Y&&A.includes(e.token.CL)&&(t.def.open.find(e=>e.g.includes("pair")).c=e=>!e.n.expr_ternary),t.open([D?{s:[I],b:1,n:{expr_prefix:1,expr_suffix:0},p:"expr",g:"expr,expr-prefix"}:null,J?{s:[V],b:1,p:"paren",c:(e,t)=>{let n=!0;return _[e.o0.tin].preval.required&&(n="val"===e.prev.name&&e.prev.u.paren_preval),n&&1===e.prev.i&&(t.root=()=>e),n},g:"expr,expr-paren"}:null]).close([Y?{s:[R],c:e=>!e.n.expr,b:1,r:"ternary",g:"expr,expr-ternary"}:null,$?{s:[M],b:1,n:{expr_prefix:0,expr_suffix:0},r:e=>e.n.expr?"":"expr",g:"expr,expr-infix"}:null,F?{s:[C],b:1,n:{expr_prefix:0,expr_suffix:1},r:e=>e.n.expr?"":"expr",g:"expr,expr-suffix"}:null,J?{s:[L],c:e=>!!e.n.expr_paren,b:1,g:"expr,expr-paren"}:null,J?{s:[V],b:1,r:"val",c:e=>_[e.c0.tin].preval.active,u:{paren_preval:!0},g:"expr,expr-paren,expr-paren-preval"}:null,Y?{s:[A],c:e=>!!e.n.expr_ternary,b:1,g:"expr,expr-ternary"}:null,{s:[B],c:e=>1===e.d&&(1<=e.n.expr||1<=e.n.expr_ternary)||1<=e.n.expr_ternary&&1<=e.n.expr_paren,b:1,g:"expr,list,val,imp,comma,top"},{s:[H],c:e=>1===e.d&&(1<=e.n.expr||1<=e.n.expr_ternary)||1<=e.n.expr_ternary&&1<=e.n.expr_paren,b:1,g:"expr,list,val,imp,space,top"}])}),e.rule("list",e=>{e.bo(!1,e=>{e.prev.u.implist||(e.n.expr=0,e.n.expr_prefix=0,e.n.expr_suffix=0,e.n.expr_paren=0,e.n.expr_ternary=0)}).close([J&&{s:[L],b:e=>U!==e.c0.tin||e.n.expr_paren?1:0}])}),e.rule("map",e=>{e.bo(!1,(...e)=>{e[0].n.expr=0,e[0].n.expr_prefix=0,e[0].n.expr_suffix=0,e[0].n.expr_paren=0,e[0].n.expr_ternary=0}).close([J&&{s:[L],b:e=>K!==e.c0.tin||e.n.expr_paren?1:0}])}),e.rule("elem",e=>{e.close([J?{s:[L],b:1,c:e=>!!e.n.expr_paren,g:"expr,expr-paren,imp,close,list"}:null,J?{s:[V],b:1,r:"elem",g:"expr,expr-paren,imp,open,list"}:null])}),e.rule("pair",e=>{e.close([J?{s:[L],b:1,c:e=>!!e.n.expr_paren||0<e.n.pk,g:"expr,expr-paren,imp,map"}:null])}),e.rule("expr",e=>{e.open([D?{s:[I],c:e=>!!e.n.expr_prefix,n:{expr:1,dlist:1,dmap:1},p:"val",g:"expr,expr-prefix",a:e=>{const t=u(e.o0,S);e.node=x(e.parent.node)?b(e.parent.node,t):a(e,e.parent,t)}}:null,$?{s:[M],p:"val",n:{expr:1,expr_prefix:0,dlist:1,dmap:1},a:e=>{const t=e.prev,n=e.parent,r=u(e.o0,O);x(n.node)&&!v("ternary",n.node)?e.node=b(n.node,r):x(t.node)?(e.node=b(t.node,r),e.parent=t):e.node=a(e,t,r)},g:"expr,expr-infix"}:null,F?{s:[C],n:{expr:1,expr_prefix:0,dlist:1,dmap:1},a:e=>{const t=e.prev,n=u(e.o0,E);e.node=x(t.node)?b(t.node,n):a(e,t,n)},g:"expr,expr-suffix"}:null]).bc(e=>{var t;x(e.node)&&(null===(t=e.node)||void 0===t?void 0:t.length)-1<e.node[0].terms&&e.node.push(e.child.node)}).close([$?{s:[M],c:e=>!e.n.expr_prefix,b:1,r:"expr",g:"expr,expr-infix"}:null,F?{s:[C],c:e=>!e.n.expr_prefix,b:1,r:"expr",g:"expr,expr-suffix"}:null,J?{s:[L],c:e=>!!e.n.expr_paren,b:1}:null,Y?{s:[R],c:e=>!e.n.expr_prefix,b:1,r:"ternary",g:"expr,expr-ternary"}:null,{s:[B],c:e=>e.d<=0,n:{expr:0},r:"elem",a:e=>e.parent.node=e.node=[e.node],g:"expr,comma,list,top"},{s:[H],c:e=>e.d<=0,n:{expr:0},b:1,r:"elem",a:e=>e.parent.node=e.node=[e.node],g:"expr,space,list,top"},{s:[B],c:e=>e.lte("pk"),n:{expr:0},b:1,h:f,g:"expr,list,val,imp,comma"},{c:e=>e.lte("pk")&&e.lte("expr_suffix"),n:{expr:0},h:f,g:"expr,list,val,imp,space"},{n:{expr:0},g:"expr,expr-end"}]).ac(e=>{t.evaluate&&0===e.n.expr&&(e.parent.node=y(e.parent,e.parent.node,t.evaluate))})}),e.rule("paren",e=>{e.bo(e=>{e.n.dmap=0,e.n.dlist=0,e.n.pk=0}).open([J?{s:[V,L],b:1,g:"expr,expr-paren,empty",c:e=>_[e.o0.tin].name===T[e.o1.tin].name,a:d(_)}:null,J?{s:[V],p:"val",n:{expr_paren:1,expr:0,expr_prefix:0,expr_suffix:0},g:"expr,expr-paren,open",a:d(_)}:null]).close([J?{s:[L],c:e=>{let t="expr_paren_depth_"+T[e.c0.tin].name;return!!e.n[t]},a:h(T),g:"expr,expr-paren,close"}:null])}),Y&&e.rule("ternary",e=>{e.open([{s:[R],p:"val",n:{expr_ternary:1,expr:0,expr_prefix:0,expr_suffix:0},u:{expr_ternary_step:1},g:"expr,expr-ternary,open",a:e=>{let t=u(e.o0,N);e.u.expr_ternary_name=t.name,x(e.prev.node)?e.node=c(e.prev.node,t,p(e.prev.node)):e.node=e.prev.node=c([],t,e.prev.node),e.u.expr_ternary_paren=e.n.expr_paren||e.prev.u.expr_ternary_paren||0,e.n.expr_paren=0}},{p:"val",c:e=>2===e.prev.u.expr_ternary_step,a:e=>{e.u.expr_ternary_step=e.prev.u.expr_ternary_step,e.n.expr_paren=e.u.expr_ternary_paren=e.prev.u.expr_ternary_paren},g:"expr,expr-ternary,step"}]).close([{s:[A],c:e=>1===e.u.expr_ternary_step&&e.u.expr_ternary_name===N[e.c0.tin].name,r:"ternary",a:e=>{e.u.expr_ternary_step++,e.node.push(e.child.node)},g:"expr,expr-ternary,step"},{s:[[B,...L]],c:m,b:(e,t)=>L.includes(t.t0.tin)?1:0,r:(e,t)=>{var n;return L.includes(t.t0.tin)||0!==e.d&&(!e.prev.u.expr_ternary_paren||(null===(n=e.parent.node)||void 0===n?void 0:n.length))?"":"elem"},a:g,g:"expr,expr-ternary,list,val,imp,comma"},{c:m,r:(e,t)=>{var n;return 0!==e.d&&L.includes(t.t0.tin)&&!e.prev.u.expr_ternary_paren||(null===(n=e.parent.node)||void 0===n?void 0:n.length)||W===t.t0.tin?"":"elem"},a:g,g:"expr,expr-ternary,list,val,imp,space"},{c:e=>0<e.d&&2===e.u.expr_ternary_step,a:e=>{e.node.push(e.child.node)},g:"expr,expr-ternary,close"}])})};function a(e,t,n){let r=t.node;return x(t.node)?r=p(t.node):t.node=[],c(t.node,n),n.prefix||(t.node[1]=r),e.parent=t,t.node}function u(e,t){return{...t[e.tin],token:e,OP_MARK:s}}function c(e,t,...n){let r=e;r[0]=t;let i=0;for(;i<n.length;i++)r[i+1]=n[i];return r.length=i+1,r}function p(e){return[...e]}function d(e){return function(t){let n="expr_paren_depth_"+u(t.o0,e).name;t.u[n]=t.n[n]=1,t.node=void 0}}function h(e){return function(t){(x(t.child.node)||void 0===t.node)&&(t.node=t.child.node);const n=u(t.c0,e);let r="expr_paren_depth_"+n.name;if(t.u[r]===t.n[r]){const e=t.node;t.node=[n],void 0!==e&&(t.node[1]=e),t.parent.prev.u.paren_preval&&(v("paren",t.parent.prev.node)?t.node=c(t.parent.prev.node,t.node[0],p(t.parent.prev.node),t.node[1]):(t.node.splice(1,0,t.parent.prev.node),t.parent.prev.node=t.node))}}}function f(e,t,n){let r=null;for(let i=t.rsI-1;-1<i;i--)if("paren"===t.rs[i].name){r=t.rs[i];break}return r&&(null==r.child.node?(r.child.node=[e.node],n.r="elem",n.b=0):x(r.child.node)&&(r.child.node=[r.child.node],n.r="elem",n.b=0),e.node=r.child.node),n}function m(e){return(0===e.d||1<=e.n.expr_paren)&&!e.n.pk&&2===e.u.expr_ternary_step}function g(e,t,n){e.n.expr_paren=e.prev.u.expr_ternary_paren,e.node.push(e.child.node),"elem"===n.r&&(e.node[0]=p(e.node),e.node.length=1)}function v(e,t){return null!=t&&x(t)&&!0===t[0][e]}function x(e){return null!=e&&e[0]&&e[0].OP_MARK===s}function k(e,t,n,r){return Object.entries(n).filter(([e,t])=>t[r]).reduce((n,[i,l])=>{let o="",a=-1,u="";u="string"==typeof l.src?l.src:l.src[0],a=t(u)||e("#E"+u),o=e(a);let c=n[a]={src:u,left:l.left||Number.MIN_SAFE_INTEGER,right:l.right||Number.MAX_SAFE_INTEGER,name:i+(i.endsWith("-"+r)?"":"-"+r),infix:"infix"===r,prefix:"prefix"===r,suffix:"suffix"===r,ternary:"ternary"===r,tkn:o,tin:a,terms:"ternary"===r?3:"infix"===r?2:1,use:{},paren:!1,osrc:"",csrc:"",otkn:"",ctkn:"",otin:-1,ctin:-1,preval:{active:!1,required:!1},token:{},OP_MARK:s};if(c.ternary){let r=l.src;c.src=r[0],c.use.ternary={opI:0};let i={...c};u=l.src[1],a=t(u)||e("#E"+u),o=e(a),i.src=u,i.use={ternary:{opI:1}},i.tkn=o,i.tin=a,n[a]=i}return n},{})}function b(e,t){let n=e,r=e[0];if(t)if(t.infix)if(r.suffix||t.left<=r.right)c(e,t,p(e));else{const i=r.terms;n=x(e[i])&&e[i][0].right<t.left?b(e[i],t):e[i]=c([],t,e[i])}else if(t.prefix)n=e[r.terms]=c([],t);else if(t.suffix)if(!r.suffix&&r.right<=t.left){const n=r.terms;x(e[n])&&e[n][0].prefix&&e[n][0].right<t.left?b(e[n],t):e[n]=c([],t,e[n])}else c(e,t,p(e));return n}function y(e,t,n){return null==t?t:x(t)?n(e,t[0],t.slice(1).map(t=>y(e,t,n))):t}n.Expr=o,o.defaults={op:{positive:{prefix:!0,right:14e3,src:"+"},negative:{prefix:!0,right:14e3,src:"-"},addition:{infix:!0,left:140,right:150,src:"+"},subtraction:{infix:!0,left:140,right:150,src:"-"},multiplication:{infix:!0,left:160,right:170,src:"*"},division:{infix:!0,left:160,right:170,src:"/"},remainder:{infix:!0,left:160,right:170,src:"%"},plain:{paren:!0,osrc:"(",csrc:")"}}},n.evaluate=y;const j={prattify:b,opify:e=>(e.OP_MARK=s,e)};return n.testing=j,n}))}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{}),xe=xe.exports;var ke={exports:{}};(function(e){(function(){!function(t){"object"==typeof ke.exports?ke.exports=t():("undefined"!=typeof window?window:void 0!==e?e:"undefined"!=typeof self?self:this).JsonicPath=t()}((function(){var e={};Object.defineProperty(e,"__esModule",{value:!0}),e.Path=void 0;const t=(e,t)=>{e.rule("val",e=>{e.bo((e,t)=>{var n,r;0===e.d&&(e.k.path=(null===(r=null===(n=t.meta.path)||void 0===n?void 0:n.base)||void 0===r?void 0:r.slice(0))||[])})}),e.rule("map",e=>{e.bo(e=>{delete e.k.index})}),e.rule("pair",e=>{e.ao(e=>{0<e.d&&e.u.pair&&(e.child.k.path=[...e.k.path,e.u.key],e.child.k.key=e.u.key)})}),e.rule("list",e=>{e.bo(e=>{e.k.index=-1})}),e.rule("elem",e=>{e.ao(e=>{0<e.d&&(e.k.index=1+e.k.index,e.child.k.path=[...e.k.path,e.k.index],e.child.k.key=e.k.index,e.child.k.index=e.k.index)})})};return e.Path=t,t.defaults={},e}))}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{}),ke=ke.exports;var be={};Object.defineProperty(be,"__esModule",{value:!0}),be.DONE=void 0,be.DONE=-1;var ye={};Object.defineProperty(ye,"__esModule",{value:!0}),ye.descErr=void 0,ye.descErr=function e(t){var n,r,i;if(null==t?void 0:t.isNil){if(null==t.msg||""===t.msg){let e=t.primary,l=t.secondary;t.msg="Cannot "+(null==l?"resolve":"unify")+(0<(null===(n=t.path)||void 0===n?void 0:n.length)?" path "+t.path.join("."):"")+" "+(t.url?"in "+t.url:"")+":\n"+(null==e?"":"LHS: "+(0<(null===(r=e.path)||void 0===r?void 0:r.length)?e.path.join(".")+":":"")+`<${e.canon}>:${e.row}:${e.col} `+(e.url&&e.url!==t.url?" in "+e.url:"")+"\n")+(null==l?"":"RHS: "+(0<(null===(i=l.path)||void 0===i?void 0:i.length)?l.path.join(".")+":":"")+`<${l.canon}>:${l.row}:${l.col} `+(l.url&&l.url!==t.url?" in "+l.url:"")+"\n")}return t}return t.map(t=>e(t))};var je={};Object.defineProperty(je,"__esModule",{value:!0}),je.util=je.Context=je.Lang=je.Nil=je.Aontu=void 0;const Se=t({});Object.defineProperty(je,"Lang",{enumerable:!0,get:function(){return Se.Lang}});const Ee=d({});Object.defineProperty(je,"Context",{enumerable:!0,get:function(){return Ee.Context}});const Oe=h({});function Ne(e,t){let n=_e.options(e,t),r={},i=_e.parse(n,{deps:r}),l=new Ee.Unify(i),s=l.res,o=l.err;return(0,ye.descErr)(l.err),s.deps=r,s.err=o,s}Object.defineProperty(je,"Nil",{enumerable:!0,get:function(){return Oe.Nil}}),je.Aontu=Ne;const _e={options:(e,t)=>({src:"",print:0,..."string"==typeof e?{src:e}:e,...t||{}}),parse:(e,t)=>new Se.Lang(e).parse(e.src,{deps:t.deps})};return je.util=_e,je.default=Ne,je}));
|
|
1
|
+
"use strict";
|
|
2
|
+
/* Copyright (c) 2021-2024 Richard Rodger, MIT License */
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.util = exports.Context = exports.Lang = exports.Nil = void 0;
|
|
5
|
+
exports.Aontu = Aontu;
|
|
6
|
+
const lang_1 = require("./lib/lang");
|
|
7
|
+
Object.defineProperty(exports, "Lang", { enumerable: true, get: function () { return lang_1.Lang; } });
|
|
8
|
+
const unify_1 = require("./lib/unify");
|
|
9
|
+
Object.defineProperty(exports, "Context", { enumerable: true, get: function () { return unify_1.Context; } });
|
|
10
|
+
const Nil_1 = require("./lib/val/Nil");
|
|
11
|
+
Object.defineProperty(exports, "Nil", { enumerable: true, get: function () { return Nil_1.Nil; } });
|
|
12
|
+
const err_1 = require("./lib/err");
|
|
13
|
+
// TODO: BUG: foo: { bar: {} } zed: {} puts zed a wrong level
|
|
14
|
+
// TODO: exclude tests from dist!!!
|
|
15
|
+
// TODO: propogate property path and url properly over unification, and multisource
|
|
16
|
+
/*
|
|
17
|
+
NEXT:
|
|
18
|
+
inject path from multisource into Vals when created
|
|
19
|
+
report via nil error
|
|
20
|
+
also trace deps into top val and watch via model
|
|
21
|
+
*/
|
|
22
|
+
// TODO: error reporting
|
|
23
|
+
// TODO: debug tracing
|
|
24
|
+
// TODO: providers - e.g source files from paths
|
|
25
|
+
// TODO: Aontu should return final generated version?
|
|
26
|
+
/* `Aontu('a:1') => opts={src:'a:1',print:0,...}`
|
|
27
|
+
* `Aontu('a:1',{print:1}) => opts={src:'a:1',print:1,...}`
|
|
28
|
+
* `Aontu({src:'a:1'},{src:'a:2'}) => opts={src:'a:2',print:0,...}`
|
|
29
|
+
*/
|
|
30
|
+
function Aontu(src, popts) {
|
|
31
|
+
let opts = util.options(src, popts);
|
|
32
|
+
let deps = {};
|
|
33
|
+
let val = util.parse(opts, { deps });
|
|
34
|
+
let uni = new unify_1.Unify(val);
|
|
35
|
+
let res = uni.res;
|
|
36
|
+
let err = uni.err;
|
|
37
|
+
(0, err_1.descErr)(uni.err);
|
|
38
|
+
res.deps = deps;
|
|
39
|
+
res.err = err;
|
|
40
|
+
return res;
|
|
41
|
+
}
|
|
42
|
+
const util = {
|
|
43
|
+
options: (src, popts) => {
|
|
44
|
+
// Convert convenience first param into Options.src
|
|
45
|
+
let srcopts = 'string' === typeof src ? { src } : src;
|
|
46
|
+
let opts = {
|
|
47
|
+
...{
|
|
48
|
+
src: '',
|
|
49
|
+
print: 0,
|
|
50
|
+
},
|
|
51
|
+
...srcopts,
|
|
52
|
+
...(popts || {}),
|
|
53
|
+
};
|
|
54
|
+
return opts;
|
|
55
|
+
},
|
|
56
|
+
parse(opts, ctx) {
|
|
57
|
+
let lang = new lang_1.Lang(opts);
|
|
58
|
+
let val = lang.parse(opts.src, { deps: ctx.deps });
|
|
59
|
+
return val;
|
|
60
|
+
},
|
|
61
|
+
};
|
|
62
|
+
exports.util = util;
|
|
63
|
+
exports.default = Aontu;
|
|
64
|
+
//# sourceMappingURL=aontu.js.map
|
|
File without changes
|
package/dist/lib/err.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
/* Copyright (c) 2021-
|
|
2
|
+
/* Copyright (c) 2021-2024 Richard Rodger, MIT License */
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.descErr =
|
|
4
|
+
exports.descErr = descErr;
|
|
5
5
|
// TODO: move to utility?
|
|
6
6
|
function descErr(err) {
|
|
7
7
|
var _a, _b, _c;
|
|
8
8
|
if (err === null || err === void 0 ? void 0 : err.isNil) {
|
|
9
|
+
// console.trace()
|
|
9
10
|
if (null == err.msg || '' === err.msg) {
|
|
10
11
|
let v1 = err.primary;
|
|
11
12
|
let v2 = err.secondary;
|
|
@@ -33,5 +34,4 @@ function descErr(err) {
|
|
|
33
34
|
return err.map((n) => descErr(n));
|
|
34
35
|
}
|
|
35
36
|
}
|
|
36
|
-
exports.descErr = descErr;
|
|
37
37
|
//# sourceMappingURL=err.js.map
|
package/dist/lib/err.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"err.js","sourceRoot":"","sources":["../../lib/err.ts"],"names":[],"mappings":";AAAA,yDAAyD
|
|
1
|
+
{"version":3,"file":"err.js","sourceRoot":"","sources":["../../lib/err.ts"],"names":[],"mappings":";AAAA,yDAAyD;;AAgDvD,0BAAO;AA1CT,yBAAyB;AACzB,SAAS,OAAO,CAA2B,GAAe;;IACxD,IAAI,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,KAAK,EAAE,CAAC;QACf,kBAAkB;QAElB,IAAI,IAAI,IAAI,GAAG,CAAC,GAAG,IAAI,EAAE,KAAK,GAAG,CAAC,GAAG,EAAE,CAAC;YACtC,IAAI,EAAE,GAAQ,GAAG,CAAC,OAAO,CAAA;YACzB,IAAI,EAAE,GAAQ,GAAG,CAAC,SAAS,CAAA;YAE3B,mBAAmB;YAEnB,GAAG,CAAC,GAAG;gBACL,SAAS;oBACT,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;oBAElC,CAAC,CAAC,IAAG,MAAA,GAAG,CAAC,IAAI,0CAAE,MAAM,CAAA,CAAC,CAAC,CAAC,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC3D,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK;oBAE9C,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;wBAChB,OAAO;4BACP,CAAC,CAAC,IAAG,MAAA,EAAE,CAAC,IAAI,0CAAE,MAAM,CAAA,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;4BACpD,IAAI,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,GAAG;4BACzC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAC/D;oBAED,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;wBAChB,OAAO;4BACP,CAAC,CAAC,IAAG,MAAA,EAAE,CAAC,IAAI,0CAAE,MAAM,CAAA,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;4BACpD,IAAI,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,GAAG;4BACzC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAC/D;oBACD,EAAE,CAAA;QACN,CAAC;QACD,OAAO,GAAG,CAAA;IACZ,CAAC;SACI,CAAC;QACJ,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;IACxC,CAAC;AACH,CAAC"}
|