aontu 0.12.0 → 0.13.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 +9 -3
- package/dist/aontu.d.ts +3 -0
- package/dist/aontu.js +7 -2
- package/dist/aontu.js.map +1 -1
- package/dist/aontu.min.js +1 -1
- package/dist/lib/err.js +1 -1
- package/dist/lib/err.js.map +1 -1
- package/dist/lib/lang.js +80 -32
- package/dist/lib/lang.js.map +1 -1
- package/dist/lib/op/disjunct.js +2 -2
- package/dist/lib/op/disjunct.js.map +1 -1
- package/dist/lib/op/op.js +1 -1
- package/dist/lib/op/op.js.map +1 -1
- package/dist/lib/op/unite.js +36 -6
- package/dist/lib/op/unite.js.map +1 -1
- package/dist/lib/type.d.ts +10 -8
- package/dist/lib/type.js +2 -27
- package/dist/lib/type.js.map +1 -1
- package/dist/lib/unify.d.ts +7 -4
- package/dist/lib/unify.js +17 -28
- package/dist/lib/unify.js.map +1 -1
- package/dist/lib/val/ConjunctVal.d.ts +7 -4
- package/dist/lib/val/ConjunctVal.js +62 -31
- package/dist/lib/val/ConjunctVal.js.map +1 -1
- package/dist/lib/val/DisjunctVal.d.ts +5 -2
- package/dist/lib/val/DisjunctVal.js +15 -7
- package/dist/lib/val/DisjunctVal.js.map +1 -1
- package/dist/lib/val/ListVal.d.ts +5 -2
- package/dist/lib/val/ListVal.js +39 -19
- package/dist/lib/val/ListVal.js.map +1 -1
- package/dist/lib/val/MapVal.d.ts +5 -2
- package/dist/lib/val/MapVal.js +59 -30
- package/dist/lib/val/MapVal.js.map +1 -1
- package/dist/lib/val/Nil.d.ts +3 -2
- package/dist/lib/val/Nil.js +19 -5
- package/dist/lib/val/Nil.js.map +1 -1
- package/dist/lib/val/PrefVal.d.ts +6 -2
- package/dist/lib/val/PrefVal.js +18 -8
- package/dist/lib/val/PrefVal.js.map +1 -1
- package/dist/lib/val/RefVal.d.ts +11 -5
- package/dist/lib/val/RefVal.js +187 -39
- package/dist/lib/val/RefVal.js.map +1 -1
- package/dist/lib/val/ValBase.d.ts +10 -9
- package/dist/lib/val/ValBase.js +25 -6
- package/dist/lib/val/ValBase.js.map +1 -1
- package/dist/lib/val/VarVal.d.ts +14 -0
- package/dist/lib/val/VarVal.js +68 -0
- package/dist/lib/val/VarVal.js.map +1 -0
- package/dist/lib/val.d.ts +42 -8
- package/dist/lib/val.js +64 -18
- package/dist/lib/val.js.map +1 -1
- package/lib/err.ts +1 -1
- package/lib/lang.ts +91 -38
- package/lib/op/disjunct.ts +10 -3
- package/lib/op/op.ts +1 -1
- package/lib/op/unite.ts +44 -4
- package/lib/type.ts +12 -40
- package/lib/unify.ts +70 -28
- package/lib/val/ConjunctVal.ts +83 -46
- package/lib/val/DisjunctVal.ts +35 -12
- package/lib/val/ListVal.ts +57 -22
- package/lib/val/MapVal.ts +82 -51
- package/lib/val/Nil.ts +29 -9
- package/lib/val/PrefVal.ts +38 -14
- package/lib/val/RefVal.ts +254 -55
- package/lib/val/ValBase.ts +33 -28
- package/lib/val/VarVal.ts +139 -0
- package/lib/val.ts +116 -25
- package/package.json +8 -8
- package/dist/lib/common.d.ts +0 -8
- package/dist/lib/common.js +0 -3
- package/dist/lib/common.js.map +0 -1
package/dist/aontu.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
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 define,module,exports,createModuleFactory=function(e){var t;return function(n){return t||e(t={exports:{},parent:n},t.exports),t.exports}},_$lang_3=createModuleFactory((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Site=t.Lang=void 0;const n=_$multisource_21({}),r=_$type_7({}),i=_$ConjunctVal_10({}),l=_$DisjunctVal_11({}),o=_$MapVal_13({}),s=_$ListVal_12({}),a=_$PrefVal_15({}),u=_$RefVal_16({}),c=_$Nil_14({}),p=_$val_9({});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 d=function(e){e.use(_$pathMin_27.Path);let t=(e,t)=>(e.path=[...t||[]],e);e.options({value:{def:{string:{val:e=>t(new p.ScalarTypeVal(String),e.keep.path)},number:{val:e=>t(new p.ScalarTypeVal(Number),e.keep.path)},integer:{val:e=>t(new p.ScalarTypeVal(p.Integer),e.keep.path)},boolean:{val:e=>t(new p.ScalarTypeVal(Boolean),e.keep.path)},nil:{val:e=>t(new c.Nil("literal"),e.keep.path)},top:{val:()=>r.TOP}}},map:{merge:(e,n)=>{let r=e,l=n;return(null==r?void 0:r.isVal)&&(null==l?void 0:l.isVal)?t(new i.ConjunctVal([r,l]),e.path):(e.___merge=e.___merge||[],e.___merge.push(n),e)}}});let n={"conjunct-infix":(e,n,r)=>t(new i.ConjunctVal(r),e.keep.path),"disjunct-infix":(e,n,r)=>t(new l.DisjunctVal(r),e.keep.path),"dot-prefix":(e,n,r)=>t(new u.RefVal(r,!0),e.keep.path),"dot-infix":(e,n,r)=>t(new u.RefVal(r),e.keep.path),"star-prefix":(e,n,r)=>t(new a.PrefVal(r[0]),e.keep.path)};e.use(_$exprMin_19.Expr,{op:{conjunct:{infix:!0,src:"&",left:14e3,right:15e3},disjunct:{infix:!0,src:"|",left:16e3,right:17e3},"dot-infix":{src:".",infix:!0,left:15e6,right:14e6},"dot-prefix":{src:".",prefix:!0,right:14e6},star:{src:"*",prefix:!0,right:14e6}},evaluate:(e,t,r)=>n[t.name](e,t,r)});let d=e.token["#E&"],f=e.token.CL;e.rule("val",e=>(e.open([{s:[d,f],p:"map",b:2,g:"spread"}]).bc((e,n)=>{let r=e.node,i=typeof r;"string"===i?r=t(new p.StringVal(e.node),e.keep.path):"number"===i?r=Number.isInteger(e.node)?t(new p.IntegerVal(e.node),e.keep.path):t(new p.NumberVal(e.node),e.keep.path):"boolean"===i&&(r=t(new p.BooleanVal(e.node),e.keep.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:[d,f],p:"pair",b:2,g:"spread"}]).bc(e=>{let n=e.node;if(n.___merge){let r={...n};delete r.___merge;let l=new o.MapVal(r);e.node=t(new i.ConjunctVal([l,...n.___merge]),e.keep.path)}else e.node=t(new o.MapVal(n),e.keep.path)}),e)),e.rule("list",e=>(e.bc(e=>{e.node=t(new s.ListVal(e.node),e.keep.path)}),e)),e.rule("pair",e=>(e.open([{s:[d,f],p:"val",u:{spread:!0},g:"spread"}]).bc(e=>{e.use.spread&&(e.node[o.MapVal.SPREAD]=e.node[o.MapVal.SPREAD]||{o:e.o0.src,v:[]},e.node[o.MapVal.SPREAD].v.push(e.child.node))}),e)),e.rule("elem",e=>(e.open([{s:[d,f],p:"val",u:{spread:!0},g:"spread"}]).bc(e=>{e.use.spread&&(e.node[s.ListVal.SPREAD]=e.node[s.ListVal.SPREAD]||{o:e.o0.src,v:[]},e.node[s.ListVal.SPREAD].v.push(e.child.node))}),e))};t.Lang=class{constructor(e){this.options={src:"",print:-1},this.options=Object.assign({},this.options,e);const t=function(e){var t,n;const r=e.require||require;let i=(0,_$mem_25.makeMemResolver)({...(null===(t=e.resolver)||void 0===t?void 0:t.mem)||{}}),l=(0,_$file_24.makeFileResolver)(e=>"string"==typeof e?e:null==e?void 0:e.peg),o=(0,_$pkg_26.makePkgResolver)({require:r,...(null===(n=e.resolver)||void 0===n?void 0:n.pkg)||{}});return function(e,t,n,r,s){let a="string"==typeof e?e:null==e?void 0:e.peg,u=[],c=i(a,t,n,r,s);return c.path=a,c.found||(u=u.concat(c.search),c=l(a,t,n,r,s),c.path=a,c.found||(u=u.concat(c.search),c=o(a,t,n,r,s),c.path=a,c.found||(c.search=u.concat(c.search)))),c}}(this.options);this.jsonic=_$jsonicMin_20.Jsonic.make().use(d).use(n.MultiSource,{resolver:(null==e?void 0:e.resolver)||t})}parse(e,t){let n={multisource:{path:this.options.base,deps:t&&t.deps||void 0}};return t&&null!=t.log&&Number.isInteger(t.log)&&(n.log=t.log),this.jsonic(e,n)}}})),_$ListVal_12=createModuleFactory((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ListVal=void 0;const n=_$type_7({}),r=_$op_5({}),i=_$Nil_14({}),l=_$ValBase_17({}),o=_$ConjunctVal_10({});class s extends l.ValBase{constructor(e,t){super(e,t),this.spread={cj:void 0};let n=this.peg[s.SPREAD];delete this.peg[s.SPREAD],n&&"&"===n.o&&(this.spread.cj=new o.ConjunctVal(Array.isArray(n.v)?n.v:[n.v],t))}unify(e,t){let l=!0,a=n.TOP===e?this:new s([],t);a.spread.cj=this.spread.cj,e instanceof s&&(a.spread.cj=null==a.spread.cj?e.spread.cj:null==e.spread.cj?a.spread.cj:a.spread.cj=new o.ConjunctVal([a.spread.cj,e.spread.cj],t)),a.done=this.done+1,this.spread.cj&&(a.spread.cj=n.DONE!==this.spread.cj.done?(0,r.unite)(t,this.spread.cj):this.spread.cj);let u=a.spread.cj||n.TOP;for(let i in this.peg)a.peg[i]=(0,r.unite)(t.descend(i),this.peg[i],u),l=l&&n.DONE===a.peg[i].done;if(e instanceof s){let o=(0,r.unite)(t,e);for(let e in o.peg){let s=o.peg[e],c=a.peg[e],p=a.peg[e]=void 0===c?s:c instanceof i.Nil?c:s instanceof i.Nil?s:(0,r.unite)(t.descend(e),c,s);this.spread.cj&&(a.peg[e]=(0,r.unite)(t,a.peg[e],u)),l=l&&n.DONE===p.done}}else if(n.TOP!==e)return i.Nil.make(t,"map",this,e);return a.done=l?n.DONE:a.done,a}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=s,s.SPREAD=Symbol("spread")})),_$ConjunctVal_10=createModuleFactory((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ConjunctVal=t.norm=void 0;const n=_$type_7({}),r=_$ValBase_17({}),i=_$Nil_14({}),l=_$RefVal_16({}),o=_$MapVal_13({}),s=_$op_5({});class a extends r.ValBase{constructor(e,t){super(e,t)}append(e){return this.peg.push(e),this}unify(e,t){Math.random();let r=!0,c=[];for(let l=0;l<this.peg.length;l++)if(c[l]=(0,s.unite)(t,this.peg[l],e),r=r&&n.DONE===c[l].done,c[l]instanceof i.Nil)return i.Nil.make(t,"&peer["+c[l].canon+","+e.canon+"]",this.peg[l],e);c=u(c);let p,d,f=[];e:for(let u=0;u<c.length;u++){let e=c[u];if(n.DONE!==e.done){let r=(0,s.unite)(t,e,n.TOP);if(n.DONE!==r.done&&!(r instanceof o.MapVal||r instanceof l.RefVal)){f.push(r);continue e}e=r}let d=c[u+1];if(null==d)f.push(e);else if(e instanceof l.RefVal&&!(d instanceof l.RefVal))f.push(e);else{if(p=(0,s.unite)(t,e,d),r=r&&n.DONE===p.done,p instanceof a)e.id===p.peg[0].id&&(p=e);else if(p instanceof i.Nil)return p;f.push(p),u++}}return d=0===f.length?n.TOP:1===f.length?f[0]:new a(f,t),d.done=r?n.DONE:this.done+1,d}get canon(){return this.peg.map(e=>e.canon).join("&")}gen(e){if(0<this.peg.length){let t,n=this.peg[0];return void 0===n||n instanceof i.Nil||(t=n.gen(e)),t}}}function u(e){let t=[];for(let n=0,r=0;n<e.length;n++,r++)e[n]instanceof a?(t.push(...e[n].peg),r+=e[n].peg.length-1):t[r]=e[n];return t}t.ConjunctVal=a,t.norm=u})),_$RefVal_16=createModuleFactory((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RefVal=void 0;const n=_$type_7({}),r=_$op_5({}),i=_$Nil_14({}),l=_$ValBase_17({}),o=_$ConjunctVal_10({}),s=_$val_9({});class a extends l.ValBase{constructor(e,t){super(""),this.sep=".",this.absolute=!0===t,this.parts=[],"string"==typeof e&&(e=e.split("."));for(let n of e)this.append(n)}append(e){"string"==typeof e?this.parts.push(e):e instanceof s.StringVal?this.parts.push(e.peg):e instanceof a&&(this.parts.push(...e.parts),e.absolute&&(this.absolute=!0)),this.peg=(this.absolute?this.sep:"")+this.parts.join(this.sep)}unify(e,t){let l,s=null==t?this:t.find(this);return s=null==s&&999<this.done?i.Nil.make(t,"no-path",this,e):s||this,s instanceof a?n.TOP===e?l=this:e instanceof i.Nil?l=i.Nil.make(t,"ref["+this.peg+"]",this,e):this.peg===e.peg?l=this:(this.done=n.DONE===this.done?n.DONE:this.done+1,l=new o.ConjunctVal([this,e],t)):l=(0,r.unite)(t,s,e),l.done=n.DONE===l.done?n.DONE:this.done+1,l}same(e){return null!=e&&this.peg===e.peg}get canon(){return this.peg}gen(e){e&&e.err.push(i.Nil.make(e,"ref",this.peg,void 0))}}t.RefVal=a})),_$val_9=createModuleFactory((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.IntegerVal=t.BooleanVal=t.StringVal=t.NumberVal=t.ScalarTypeVal=t.Integer=void 0;const n=_$type_7({}),r=_$unify_8({}),i=_$Nil_14({}),l=_$ValBase_17({});class o{}t.Integer=o;class s extends l.ValBase{constructor(e,t){super(e,t),this.done=n.DONE}unify(e,t){if(e instanceof a)return e.type===this.peg||Number===this.peg&&o===e.type?e:i.Nil.make(t,"no-scalar-unify",this,e);if(e instanceof s){if(Number===this.peg&&o===e.peg)return e;if(Number===e.peg&&o===this.peg)return this}return i.Nil.make(t,"scalar-type",this,e)}get canon(){return this.peg.name.toLowerCase()}same(e){return e instanceof s?this.peg===e.peg:super.same(e)}gen(e){}}t.ScalarTypeVal=s;class a extends l.ValBase{constructor(e,t,r){super(e,r),this.type=t,this.done=n.DONE}unify(e,t){return e instanceof s?e.unify(this,t):i.Nil.make(t,"scalar",this,e)}get canon(){return this.peg.toString()}same(e){return e instanceof a?e.peg===this.peg:super.same(e)}gen(e){return this.peg}}t.NumberVal=class extends a{constructor(e,t){super(e,Number,t)}unify(e,t){return e instanceof a&&e.type===o?e:super.unify(e,t)}},t.IntegerVal=class extends a{constructor(e,t){if(!Number.isInteger(e))throw new Error("not-integer");super(e,o,t)}unify(e,t){return e instanceof s&&e.peg===Number||e instanceof a&&e.type===Number&&this.peg===e.peg?this:super.unify(e,t)}},t.StringVal=class extends a{constructor(e,t){super(e,String,t)}unify(e,t){return super.unify(e,t)}get canon(){return JSON.stringify(this.peg)}};class u extends a{constructor(e,t){super(e,Boolean,t)}unify(e,t){return super.unify(e,t)}}t.BooleanVal=u,u.TRUE=new u(!0,new r.Context({vc:1,root:n.TOP})),u.FALSE=new u(!1,new r.Context({vc:2,root:n.TOP}))})),_$unify_8=createModuleFactory((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Unify=t.Context=void 0;const n=_$type_7({}),r=_$lang_3({}),i=_$op_5({}),l=_$MapVal_13({});class o{constructor(e){this.root=e.root,this.path=[],this.err=e.err||[],this.vc=null==e.vc?1e9:e.vc}clone(e){return new o({root:e.root||this.root,err:e.err||this.err,vc:this.vc})}descend(e){return this.clone({root:this.root,path:this.path.concat(e)})}find(e){if(e.absolute){let t=this.root,n=0;for(;n<e.parts.length;n++){let r=e.parts[n];if(!(t instanceof l.MapVal))break;t=t.peg[r]}if(n===e.parts.length)return t}}}t.Context=o,t.Unify=class{constructor(e,t){this.lang=t||new r.Lang,"string"==typeof e&&(e=this.lang.parse(e)),this.root=e,this.res=e,this.err=[];let l=e,s=new o({root:l,err:this.err});for(this.dc=0;this.dc<999&&n.DONE!==l.done;this.dc++)l=(0,i.unite)(s,l,n.TOP),s=s.clone({root:l});this.res=l}}})),_$MapVal_13=createModuleFactory((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MapVal=void 0;const n=_$type_7({}),r=_$op_5({}),i=_$ValBase_17({}),l=_$Nil_14({}),o=_$ConjunctVal_10({});class s extends i.ValBase{constructor(e,t){super(e,t),this.spread={cj:void 0};let n=this.peg[s.SPREAD];delete this.peg[s.SPREAD],n&&"&"===n.o&&(this.spread.cj=new o.ConjunctVal(Array.isArray(n.v)?n.v:[n.v],t))}unify(e,t){let i=!0,a=n.TOP===e?this:new s({},t);a.spread.cj=this.spread.cj,e instanceof s&&(a.spread.cj=null==a.spread.cj?e.spread.cj:null==e.spread.cj?a.spread.cj:a.spread.cj=new o.ConjunctVal([a.spread.cj,e.spread.cj],t)),a.done=this.done+1,this.spread.cj&&(a.spread.cj=n.DONE!==this.spread.cj.done?(0,r.unite)(t,this.spread.cj):this.spread.cj,i=i&&n.DONE===a.spread.cj.done);let u=a.spread.cj||n.TOP;for(let l in this.peg)a.peg[l]=(0,r.unite)(t.descend(l),this.peg[l],u),i=i&&n.DONE===a.peg[l].done;if(e instanceof s){let o=(0,r.unite)(t,e);for(let e in o.peg){let s=o.peg[e],c=a.peg[e],p=a.peg[e]=void 0===c?s:c instanceof l.Nil?c:s instanceof l.Nil?s:(0,r.unite)(t.descend(e),c,s);this.spread.cj&&(a.peg[e]=(0,r.unite)(t,a.peg[e],u)),i=i&&n.DONE===p.done}}else if(n.TOP!==e)return l.Nil.make(t,"map",this,e);return a.done=i?n.DONE:a.done,a}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=s,s.SPREAD=Symbol("spread")})),_$op_5=createModuleFactory((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.unite=t.disjunct=void 0;const n=_$disjunct_4({});Object.defineProperty(t,"disjunct",{enumerable:!0,get:function(){return n.disjunct}});const r=_$unite_6({});Object.defineProperty(t,"unite",{enumerable:!0,get:function(){return r.unite}})})),_$unite_6=createModuleFactory((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.unite=void 0;const n=_$type_7({}),r=_$ConjunctVal_10({}),i=_$DisjunctVal_11({}),l=_$PrefVal_15({}),o=_$RefVal_16({}),s=_$Nil_14({});function a(e,t){return e}t.unite=(e,t,u,c)=>{let p=t;return!u||n.TOP!==t&&t?!t||n.TOP!==u&&u?t&&u&&n.TOP!==u&&(p=t instanceof s.Nil?a(t):u instanceof s.Nil?a(u):t instanceof r.ConjunctVal?t.unify(u,e):u instanceof r.ConjunctVal||u instanceof i.DisjunctVal||u instanceof o.RefVal||u instanceof l.PrefVal?u.unify(t,e):t.constructor===u.constructor&&t.peg===u.peg?a(t):t.unify(u,e)):p=t:p=u,p&&p.unify||(p=s.Nil.make(e,"unite",t,u)),n.DONE!==p.done&&(p=p.unify(n.TOP,e)),p}})),_$disjunct_4=createModuleFactory((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.disjunct=void 0;const n=_$DisjunctVal_11({});_$ValBase_17({}),t.disjunct=(e,t,r)=>new n.DisjunctVal([],e,[])})),_$DisjunctVal_11=createModuleFactory((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DisjunctVal=void 0;const n=_$type_7({}),r=_$op_5({}),i=_$ValBase_17({}),l=_$Nil_14({}),o=_$PrefVal_15({});class s extends i.ValBase{constructor(e,t,n){super(e,t)}append(e){return this.peg.push(e),this}unify(e,t){let i,o=!0,a=[];for(let l=0;l<this.peg.length;l++)a[l]=(0,r.unite)(t,this.peg[l],e),o=o&&n.DONE===a[l].done;if(1<a.length){for(let t=0;t<a.length;t++)a[t]instanceof s&&a.splice(t,1,...a[t].peg);let e=new l.Nil;for(let t=0;t<a.length;t++)for(let n=t+1;n<a.length;n++)a[n].same(a[t])&&(a[n]=e);a=a.filter(e=>!(e instanceof l.Nil))}if(1==a.length)i=a[0];else{if(0==a.length)return l.Nil.make(t,"|:empty",this);i=new s(a,t)}return i.done=o?n.DONE:this.done+1,i}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 o.PrefVal);t=0===t.length?this.peg:t;let n=t[0];for(let r=1;r<this.peg.length;r++)n=n.unify(this.peg[r],e);return n.gen(e)}}}t.DisjunctVal=s})),_$PrefVal_15=createModuleFactory((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PrefVal=void 0;const n=_$type_7({}),r=_$op_5({}),i=_$Nil_14({}),l=_$ValBase_17({});class o extends l.ValBase{constructor(e,t,n){super(e,n),this.pref=t||e}unify(e,t){let l,s=!0;return l=e instanceof o?new o((0,r.unite)(t,this.peg,e.peg,"Pref000"),(0,r.unite)(t,this.pref,e.pref,"Pref010"),t):new o((0,r.unite)(null==t?void 0:t.clone({err:[]}),this.peg,e,"Pref020"),(0,r.unite)(null==t?void 0:t.clone({err:[]}),this.pref,e,"Pref030"),t),s=s&&n.DONE===l.peg.done&&(null==l.pref||n.DONE===l.pref.done),l.peg instanceof i.Nil?l=l.pref:l.pref instanceof i.Nil&&(l=l.peg),l.done=s?n.DONE:this.done+1,l}same(e){if(null==e)return!1;let t=this.peg===e.peg||this.peg instanceof l.ValBase&&this.peg.same(e.peg),n=e instanceof o&&(this.pref===e.pref||this.pref instanceof l.ValBase&&this.pref.same(e.pref));return t&&n}get canon(){return this.pref instanceof i.Nil?this.peg.canon:"*"+this.pref.canon}gen(e){let t=this.pref instanceof i.Nil?this.peg instanceof i.Nil?void 0:this.peg:this.pref;return void 0===t?void 0:t.gen(e)}}t.PrefVal=o})),_$Nil_14=createModuleFactory((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Nil=void 0;const n=_$type_7({}),r=_$ValBase_17({});class i extends r.ValBase{constructor(e,t){super(null,t),this.nil=!0,this.msg="",this.why=e,this.done=n.DONE}unify(e,t){return this}get canon(){return"nil"}gen(e){}}t.Nil=i,i.make=(e,t,n,r)=>{let l=new i(t,e);return null!=n&&(l.row=n.row,l.col=n.col,l.url=n.url,l.primary=n,null!=r)&&(l.secondary=r,l.url===r.url&&(l.row<r.row||l.row===r.row&&l.col<r.col)&&(l.row=r.row,l.col=r.col,l.url=r.url,l.primary=r,l.secondary=n)),e&&e.err.push(l),l}})),_$ValBase_17=createModuleFactory((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ValBase=void 0;const n=_$lang_3({});t.ValBase=class{constructor(e,t){this.isVal=!0,this.done=0,this.row=-1,this.col=-1,this.url="",this.peg=e,this.path=t&&t.path||[],this.id=t&&t.vc++||9e9+Math.floor(1e9*Math.random())}same(e){return null!=e&&this.id===e.id}get site(){return new n.Site(this)}}})),_$type_7=createModuleFactory((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TOP=t.DONE=void 0;const n=_$lang_3({});t.DONE=-1;const r={isVal:!0,id:0,top:!0,peg:void 0,done:-1,path:[],row:-1,col:-1,url:"",unify:(e,t)=>e,get canon(){return"top"},get site(){return new n.Site(this)},same:e=>r===e,gen:e=>{}};t.TOP=r})),_$multisource_21=createModuleFactory((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TOP=t.NONE=t.resolvePathSpec=t.MultiSource=void 0;const n=_$jsonic_23({});t.NONE="";const r=Symbol("TOP");t.TOP=r;const i=(e,t)=>{const n=t.markchar,r=t.resolver,i=t.processor,{deep:l}=e.util,o=t.implictExt||[];for(let a=0;a<o.length;a++){let e=o[a];o[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 s={name:"multisource",open:n,rules:{open:"val,pair"},action:function(n,o){var s;let a=n.parent.name,u=n.child.node,c=r(u,t,n,o,e);if(!c.found)return null===(s=n.parent)||void 0===s?void 0:s.o0.bad("multisource_not_found",{...c,searchstr:((null==c?void 0:c.search)||[c.full]).join("\n")});c.kind=null==c.kind?"":c.kind,(i[c.kind]||i[""])(c,t,n,o,e),"pair"===a?o.cfg.map.merge?n.parent.parent.node=o.cfg.map.merge(n.parent.parent.node,c.val,n,o):o.cfg.map.extend?n.parent.parent.node=l(n.parent.parent.node,c.val):Object.assign(n.parent.node,c.val):n.node=c.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(_$directiveMin_18.Directive,s)};function l(e){return t=>t.val=e(t.src,t)}t.MultiSource=i;const o=l(e=>e),s=l(e=>null==e?void 0:JSON.parse(e)),a=(0,n.makeJsonicProcessor)(),u=(0,_$js_22.makeJavaScriptProcessor)();i.defaults={markchar:"@",processor:{"":o,jsonic:a,jsc:a,json:s,js:u},implictExt:["jsonic","jsc","json","js"]},t.resolvePathSpec=function(e,t,n,r){var i;let l=null===(i=t.meta)||void 0===i?void 0:i.multisource,o=r(null==l||null==l.path?e.path:l.path),s="string"==typeof n?n:null!=n.path?""+n.path:void 0,a=!(!(null==s?void 0:s.startsWith("/"))&&!(null==s?void 0:s.startsWith("\\"))),u=a?s:null!=s&&""!=s?null!=o&&""!=o?o+"/"+s:s:void 0;return{kind:null==u?"":(u.match(/\.([^.]*)$/)||["",""])[1],path:s,full:u,base:o,abs:a,found:!1}}})),_$jsonic_23=createModuleFactory((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.makeJsonicProcessor=void 0;const n=_$multisource_21({});t.makeJsonicProcessor=function(){return function(e,t,r,i,l){var o;if(null!=e.src&&null!=e.full){let t=(null===(o=i.meta)||void 0===o?void 0:o.multisource)||{},r={...i.meta||{},multisource:{...t,path:e.full}};if(e.val=l(e.src,r),t.deps){let r=t.deps,i=t.path||n.TOP;if(null!=i){let t={tar:i,src:e.full,wen:Date.now()};r[i]=r[i]||{},r[i][e.full]=t}}}}}})),_$jsonicMin_20={exports:{}};(function(e){(function(){!function(t){"object"==typeof _$jsonicMin_20.exports?_$jsonicMin_20.exports=t():"function"==typeof define&&define.amd?define([],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 o=e=>null==e?[]:Object.values(e);t.values=o;const s=e=>null==e?[]:Object.entries(e);t.entries=s;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=_(e,t=g({},t),n,r,i);super(l.message),a(this,l),k(this)}toJSON(){return{...this,__error:!0,name:this.name,message:this.message,stack:this.stack}}}function f(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 h(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,o=null!=i&&(p.object===typeof i||l);if(r&&o&&!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:o?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 o={code:t,details:n,token:r,rule:i,ctx:l};return null==e?"":e.replace(/\$(\{?)([\w_0-9]+)(\}?)/g,(e,t,s,a)=>{let u=null!=o[s]?o[s]:null!=n[s]?n[s]:l.meta&&null!=l.meta[s]?l.meta[s]:null!=r[s]?r[s]:null!=i[s]?i[s]:null!=l.opts[s]?l.opts[s]:null!=l.cfg[s]?l.cfg[s]:null!=l[s]?l[s]:"$"+s,c=t&&a?u:JSON.stringify(u);return c=null==c?"":c,c.replace(/\n/g,"\n ")})}function k(e){e.stack&&(e.stack=e.stack.split("\n").filter(e=>!e.includes("jsonic/jsonic")).map(e=>e.replace(/ at /,"at ")).join("\n"))}function x(e,t,n){let i=0<n.sI?n.sI:0,l=0<n.rI?n.rI:1,o=0<n.cI?n.cI:1,s=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),f=a.length;return[2<f?d(a[f-3]):null,1<f?d(a[f-2]):null,d(a[f-1]+u[0])," ".repeat(c)+" "+" ".repeat(o-1)+"\x1b[31m"+"^".repeat(s.length||1)+" "+t+"\x1b[0m",d(u[1]),d(u[2])].filter(e=>null!=e).join("\n")}function _(e,t,n,r,i){var l,o,s;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,x(i.src(),c,n),"",v((a.hint[e]||(null===(s=null===(o=t.use)||void 0===o?void 0:o.err)||void 0===s?void 0:s.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="+f(n.tin,i.cfg)+(null==n.why?"":"~"+n.why)+"; plugins="+i.plgn().map(e=>e.name).join(",")+"--\x1b[0m\n"].join("\n"),h={internal:{token:n,ctx:i}};return h={...Object.create(h),message:d,code:e,details:t,meta:u,fileName:u?u.fileName:void 0,lineNumber:n.rI,columnNumber:n.cI},h}catch(a){return console.log(a),{}}}function b(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(/]$/,s(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 y(e,t=44){let n;try{n="object"==typeof e?JSON.stringify(e):""+e}catch(r){n=""+e}return j(t<n.length?n.substring(0,t-3)+"...":n,t)}function j(e,t=5){return void 0===e?"":(""+e).substring(0,t).replace(/[\r\n\t]/g,".")}function O(...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 S(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,k,x,_,b,y,j,E,N,T,M,P,I,w,C,$,R,A,V,L,D,F,Y,B,J,U,K,q,z,G,Z,W,H,X,Q,ee,te,ne,re,ie,le,oe,se,ae;const ue=t||{};ue.t=ue.t||{},ue.tI=ue.tI||1;const ce=e=>f(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(S(n.fixed.token),([e,t])=>[t,f(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(S(n.match.value),([e,t])=>[e,t]):{},token:n.match?c(S(n.match.token),([e,t])=>[f(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||{},s(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=s(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:O(null===(v=n.space)||void 0===v?void 0:v.chars),check:null===(k=n.space)||void 0===k?void 0:k.check},ue.line={lex:!!(null===(x=n.line)||void 0===x?void 0:x.lex),chars:O(null===(_=n.line)||void 0===_?void 0:_.chars),rowChars:O(null===(b=n.line)||void 0===b?void 0:b.rowChars),single:!!(null===(y=n.line)||void 0===y?void 0:y.single),check:null===(j=n.line)||void 0===j?void 0:j.check},ue.text={lex:!!(null===(E=n.text)||void 0===E?void 0:E.lex),modify:((null===(N=ue.text)||void 0===N?void 0:N.modify)||[]).concat(([null===(T=n.text)||void 0===T?void 0:T.modify]||[]).flat()).filter(e=>null!=e),check:null===(M=n.text)||void 0===M?void 0:M.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===(w=n.number)||void 0===w?void 0:w.oct),bin:!!(null===(C=n.number)||void 0===C?void 0:C.bin),sep:null!=(null===($=n.number)||void 0===$?void 0:$.sep)&&""!==n.number.sep,exclude:null===(R=n.number)||void 0===R?void 0:R.exclude,sepChar:null===(A=n.number)||void 0===A?void 0:A.sep,check:null===(V=n.number)||void 0===V?void 0:V.check},ue.value={lex:!!(null===(L=n.value)||void 0===L?void 0:L.lex),def:s((null===(D=n.value)||void 0===D?void 0:D.def)||{}).reduce((e,t)=>(null==t[1]||!1===t[1]||t[1].match||(e[t[0]]=t[1]),e),{}),defre:s((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===(B=n.rule)||void 0===B?void 0:B.maxmul)?3:n.rule.maxmul,finish:!!(null===(J=n.rule)||void 0===J?void 0:J.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("|"),fe=(null===(Z=n.comment)||void 0===Z?void 0:Z.lex)?(n.comment.def?o(n.comment.def):[]).filter(e=>e&&e.lex).map(e=>m(e.start)).join("|"):"",he=["([",m(l(O(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,""===fe?"":"|",fe,"|$)"];return ue.rePart={fixed:de,ender:he,commentStart:fe},ue.re={ender:h(null,...he),rowChars:h(null,m(null===(W=n.line)||void 0===W?void 0:W.rowChars)),columns:h(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)?s(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:o(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===(se=null===(oe=n.debug)||void 0===oe?void 0:oe.print)||void 0===se?void 0:se.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=f,t.findTokenSet=function(e,t){return t.tokenSet[e]},t.mesc=function(e,t){return(t=new String(e)).esc=!0,t},t.regexp=h,t.escre=m,t.deep=g,t.errinject=v,t.trimstk=k,t.extract=x,t.errdesc=_,t.badlex=function(e,t,n){let r=e.next.bind(e);return e.next=(e,i,l,o)=>{let s=r(e,i,l,o);if(t===s.tin){let t={};throw null!=s.use&&(t.use=s.use),new d(s.why||p.unexpected,t,s,e,n)}return s},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=b,t.str=y,t.snip=j,t.clone=function(e){return g(Object.create(Object.getPrototypeOf(e)),e)},t.charset=O,t.clean=S,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: "+y(r)+(void 0===n?"":" to value: "+y(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,o){try{return e.start(t,n,l,o)}catch(s){if("SyntaxError"===s.name){let o=0,a=0,u=0,c=r.EMPTY,p=s.message.match(/^Unexpected token (.) .*position\s+(\d+)/i);if(p){c=p[1],o=parseInt(p[2]),a=t.substring(0,o).replace(/[^\n]/g,r.EMPTY).length;let e=o-1;for(;-1<e&&"\n"!==t.charAt(e);)e--;u=Math.max(t.substring(e,o).length,0)}let h=s.token||(0,i.makeToken)("#UK",f("#UK",n.internal().config),void 0,c,(0,i.makePoint)(c.length,o,s.lineNumber||a,s.columnNumber||u));throw new d(s.code||"json",s.details||{msg:s.message},h,{},s.ctx||{uI:-1,opts:n.options,cfg:n.internal().config,token:h,meta:l,src:()=>t,root:()=>{},plgn:()=>n.internal().plugins,inst:()=>n,rule:{name:"no-rule"},sub:{},xs:-1,v2:h,v1:h,t0:h,t1:h,tC:-1,kI:-1,rs:[],rsI:0,rsm:{},n:{},log:l?l.log:void 0,F:b(n.internal().config),use:{},NORULE:{name:"no-rule"},NOTOKEN:{name:"no-token"}})}throw s}}}}})),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 o=(...e)=>new l(...e);n.makePoint=o;class s{constructor(e,t,n,i,l,o,s){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=o,this.why=s,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 s(...e);function u(e,t,n){let r=e.pnt,i=t;if(e.cfg.fixed.lex&&null!=n&&0<n.length){let l,o=e.cfg.fixed.token[n];null!=o&&(l=e.token(o,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,o(-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,o=r.token[e];return null!=o&&(l=t.token(o,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 o=t.pnt,s=t.src.substring(o.sI),a="o"===i.state?0:1;for(let e of n)if(e.match instanceof RegExp){let n=s.match(e.match);if(n){let r=n[0],i=r.length;if(0<i){let l,s=e.val?e.val(n):r;return l=t.token("#VL",s,r,o),o.sI+=i,o.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=s.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,o),o.sI+=i,o.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 o=t.pnt,s=t.src.substring(o.sI),a=o.rI,u=o.cI;for(let i of r)if(s.startsWith(i.start)){let n=s.length,r=i.start.length;for(u+=i.start.length;r<n&&!e.line.chars[s[r]];)u++,r++;if(i.eatline)for(;r<n&&e.line.chars[s[r]];)e.line.rowChars[s[r]]&&a++,r++;let l=s.substring(0,r),c=t.token("#CM",void 0,l,o);return o.sI+=l.length,o.cI=u,o.rI=a,c}for(let r of l)if(s.startsWith(r.start)){let n=s.length,l=r.start.length,c=r.end;for(u+=r.start.length;l<n&&!s.substring(l).startsWith(c);)e.line.rowChars[s[l]]&&(a++,u=0),u++,l++;if(s.substring(l).startsWith(c)){if(u+=c.length,r.eatline)for(;l<n&&e.line.chars[s[l]];)e.line.rowChars[s[l]]&&a++,l++;let i=s.substring(0,l+c.length),p=t.token("#CM",void 0,i,o);return o.sI+=i.length,o.rI=a,o.cI=u,p}return t.bad(i.S.unterminated_comment,o.sI,o.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,o=r.src.substring(l.sI),s=e.value.def,a=e.value.defre,c=o.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=s[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?o: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 o=t.val(e);n=r.token("#VL",o,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,o=t.src.substring(i.sI),s=e.value.def,a=o.match(r);if(a){let n,r=a[1],o=a[9],c=!0;if(null!=r&&(c=!e.number.exclude||!r.match(e.number.exclude))){let o=r.length;if(0<o){let a;if(e.value.lex&&void 0!==(a=s[r]))n=t.token("#VL",a.val,r,i);else{let e=l?r.replace(l,""):r,s=+e;if(isNaN(s)){let t=e[0];"-"!==t&&"+"!==t||(s=("-"===t?-1:1)*+e.substring(1))}isNaN(s)||(n=t.token("#NR",s,r,i),i.sI+=o,i.cI+=o)}}}return c&&(n=u(t,n,o)),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:o,escChar:s,escCharCode:a,multiChars:u,allowUnknown:c,replaceCodeMap:p,hasReplace:d}=n,{pnt:f,src:h}=t,{sI:m,rI:g,cI:v}=f,k=h.length;if(l[h[m]]){const l=h[m],x=m,_=g,b=u[l];++m,++v;let y,j=[];for(;m<k;m++){v++;let r=h[m];if(y=void 0,l===r){m++;break}if(s===r){m++,v++;let e=o[h[m]];if(null!=e)j.push(e);else if("x"===h[m]){m++;let e=parseInt(h.substring(m,m+2),16);if(isNaN(e)){if(n.abandon)return;return m-=2,v-=2,f.sI=m,f.cI=v,t.bad(i.S.invalid_ascii,m,m+4)}let r=String.fromCharCode(e);j.push(r),m+=1,v+=2}else if("u"===h[m]){m++;let e="{"===h[m]?(m++,1):0,r=e?6:4,l=parseInt(h.substring(m,m+r),16);if(isNaN(l)){if(n.abandon)return;return m=m-2-e,v-=2,f.sI=m,f.cI=v,t.bad(i.S.invalid_unicode,m,m+r+2+2*e)}let o=String.fromCodePoint(l);j.push(o),m+=r-1+e,v+=r+e}else{if(!c){if(n.abandon)return;return f.sI=m,f.cI=v-1,t.bad(i.S.unexpected,m,m+1)}j.push(h[m])}}else if(d&&void 0!==(y=p[h.charCodeAt(m)]))j.push(y),v++;else{let r=m,o=l.charCodeAt(0),s=h.charCodeAt(m);for(;(!d||void 0===(y=p[s]))&&m<k&&32<=s&&o!==s&&a!==s;)s=h.charCodeAt(++m),v++;if(v--,void 0===y&&s<32){if(!b||!e.line.chars[h[m]]){if(n.abandon)return;return f.sI=m,f.cI=v,t.bad(i.S.unprintable,m,m+1)}e.line.rowChars[h[m]]&&(f.rI=++g),v=1,j.push(h.substring(r,m+1))}else j.push(h.substring(r,m)),m--}}if(h[m-1]!==l||f.sI===m-1){if(n.abandon)return;return f.rI=_,t.bad(i.S.unterminated_string,x,m)}const O=t.token("#ST",j.join(r.EMPTY),h.substring(f.sI,m),f);return f.sI=m,f.rI=g,f.cI=v,O}}},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:o}=t,{sI:s,rI:a}=l,u=e.line.single;for(u&&(n={});r[o[s]]&&!(n&&(n[o[s]]=(n[o[s]]||0)+1,u&&1<n[o[s]]));)a+=i[o[s]]?1:0,s++;if(l.sI<s){let e=o.substring(l.sI,s);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:o}=r;for(;n[i[l]];)l++,o++;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=o,n}};class c{constructor(e){this.src=r.EMPTY,this.ctx={},this.cfg={},this.pnt=o(-1),this.ctx=e,this.src=e.src(),this.cfg=e.cfg,this.pnt=o(this.src.length)}token(e,t,n,r,l,o){let s,u;return"string"==typeof e?(u=e,s=(0,i.tokenize)(u,this.cfg)):(s=e,u=(0,i.tokenize)(e,this.cfg)),a(u,s,t,n,r||this.pnt,l,o)}next(e,t,n,r){let l,o,s=this.pnt,a=s.sI;if(s.end)l=s.end;else if(0<s.token.length)l=s.token.shift();else if(s.len<=s.sI)s.end=this.token("#ZZ",void 0,"",s),l=s.end;else{try{for(let t of this.cfg.lex.match)if(l=t(this,e,r)){o=t;break}}catch(u){l=l||this.token("#BD",void 0,this.src[s.sI],s,{err:u},u.code||i.S.unexpected)}l=l||this.token("#BD",void 0,this.src[s.sI],s,void 0,i.S.unexpected)}return this.ctx.log&&this.ctx.log(i.S.lex,this.ctx,e,this,s,a,o,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({}),o={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=o;var s={};Object.defineProperty(s,"__esModule",{value:!0}),s.makeRuleSpec=s.makeNoRule=s.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.use=Object.create(null),this.keep=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)}toString(){return"[Rule "+this.name+"~"+this.i+"]"}}const c=(...e)=>new u(...e);s.makeRule=c,s.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),f=d(),h=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",o=this.def[l];return o[r](...i),o=this.def[l]=(0,a.modlist)(o,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,o=l?e:t.NORULE,s=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,o,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 o=f;o.b=0,o.p=r.EMPTY,o.r=r.EMPTY,o.n=void 0,o.h=void 0,o.a=void 0,o.u=void 0,o.k=void 0,o.e=void 0;let s=null,u=0,c=!0,p=1<<l.cfg.t.AA-1,d=l.cfg.tokenSetTins.IGNORE;function h(e,t,r,i){let o;do{o=n.next(e,t,r,i),l.tC++}while(d[o.tin]);return o}let m=t.length;for(u=0;u<m;u++){s=t[u];let n=!1,r=!1;if(c=!0,s.S0){let e=(l.t0=l.NOTOKEN!==l.t0?l.t0:l.t0=h(i,s,u,0)).tin;if(n=!0,c=!!(s.S0[e/31|0]&(1<<e%31-1|p)),c&&(r=null!=s.S1,s.S1)){let e=(l.t1=l.NOTOKEN!==l.t1?l.t1:l.t1=h(i,s,u,1)).tin;r=!0,c=!!(s.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&&s.c&&(c=c&&s.c(i,l,o)),c)break;s=null}c||(o.e=l.t0),s&&(o.n=null!=s.n?s.n:o.n,o.h=null!=s.h?s.h:o.h,o.a=null!=s.a?s.a:o.a,o.u=null!=s.u?s.u:o.u,o.k=null!=s.k?s.k:o.k,o.g=null!=s.g?s.g:o.g,o.e=s.e&&s.e(i,l,o)||void 0,o.p=null!=s.p&&!1!==s.p?"string"==typeof s.p?s.p:s.p(i,l,o):o.p,o.r=null!=s.r&&!1!==s.r?"string"==typeof s.r?s.r:s.r(i,l,o):o.r,o.b=null!=s.b&&!1!==s.b?"number"==typeof s.b?s.b:s.b(i,l,o):o.b);let g=u<t.length;return l.log&&l.log(a.S.parse,l,i,n,g,c,u,s,o),o}(l,p,n,e,t):h;if(m.h&&(m=m.h(e,t,m,o)||m,s+="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.use=Object.assign(e.use,m.u)),m.k&&(e.keep=Object.assign(e.keep,m.k)),m.a){s+="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});o=e.child=c(n,t,e.node),o.parent=e,o.n={...e.n},0<Object.keys(e.keep).length&&(o.keep={...e.keep}),s+="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});o=c(n,t,e.node),o.parent=e.parent,o.prev=e,o.n={...e.n},0<Object.keys(e.keep).length&&(o.keep={...e.keep}),s+="R`"+m.r+"`"}else l||(o=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,o,n),(null==n?void 0:n.isToken)&&(null==n?void 0:n.err))return this.bad(n,e,t,{is_open:l})}o.why=s,t.log&&t.log(a.S.node,t,e,n,o),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),o}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(null!=e.c){let t=e.c.n,n=e.c.d;null==t&&null==n||(e.c=function(e){let r=!0;if(null!=t)for(let n in t)r=r&&(null==e.n[n]||e.n[n]<=(null==t[n]?0:t[n]));return null!=n&&(r=r&&e.d<=n),r},null!=t&&(e.c.n=t),null!=n&&(e.c.d=n))}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]]),o=e;o.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,o.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}s.makeRuleSpec=g;var k={};Object.defineProperty(k,"__esModule",{value:!0}),k.makeParser=k.makeRuleSpec=k.makeRule=void 0;const x=t({}),_=n({});Object.defineProperty(k,"makeRule",{enumerable:!0,get:function(){return s.makeRule}}),Object.defineProperty(k,"makeRuleSpec",{enumerable:!0,get:function(){return s.makeRuleSpec}});class b{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,s.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,o=(0,_.makeToken)("#ZZ",(0,x.tokenize)("#ZZ",this.cfg),void 0,r.EMPTY,(0,_.makePoint)(-1)),a=(0,_.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:o,v1:o,t0:a,t1:a,tC:-2,kI:-1,rs:[],rsI:0,rsm:this.rsm,log:void 0,F:(0,x.srcfmt)(this.cfg),use:{},NOTOKEN:a,NORULE:{}};u=(0,x.deep)(u,i);let c=(0,s.makeNoRule)(u);if(u.NORULE=c,u.rule=c,n&&x.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 x.JsonicError(x.S.unexpected,{src:e},u.t0,c,u)}let p=(0,x.badlex)((0,_.makeLex)(u),(0,x.tokenize)("#BD",this.cfg),u),d=this.rsm[this.cfg.rule.start];if(null==d)return;let f=(0,s.makeRule)(d,u);l=f;let h=2*(0,x.keys)(this.rsm).length*p.src.length*2*u.cfg.rule.maxmul,m=0;for(;c!==f&&m<h;)u.kI=m,u.rule=f,u.log&&u.log("",u.kI+":"),u.sub.rule&&u.sub.rule.map(e=>e(f,u)),f=f.process(u,p),u.log&&u.log(x.S.stack,u,f,p),m++;if(o.tin!==p.next(f).tin)throw new x.JsonicError(x.S.unexpected,{},u.t0,c,u);const g=u.root().node;if(this.cfg.result.fail.includes(g))throw new x.JsonicError(x.S.unexpected,{},u.t0,c,u);return g}clone(e,t){let n=new b(e,t);return n.rsm=Object.keys(this.rsm).reduce((e,t)=>(e[t]=(0,x.filterRules)(this.rsm[t],this.cfg),e),{}),n.norm(),n}norm(){(0,x.values)(this.rsm).map(e=>e.norm())}}k.makeParser=(...e)=>new b(...e);var y={};function j(e){const{deep:t}=e.util,{OB:n,CB:r,OS:i,CS:l,CL:o,CA:s,TX:a,ST:u,ZZ:c}=e.token,{VAL:p,KEY:d}=e.tokenSet,f=(e,t)=>{if(!t.cfg.rule.finish)return t.t0.src="END_OF_SOURCE",t.t0},h=e=>{const t=e.o0,n=u===t.tin||a===t.tin?t.val:t.src;e.use.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,o],p:"val",u:{pair:!0},a:h,g:"map,pair,key,json"}]).bc((e,t)=>{e.use.pair&&(e.use.prev=e.node[e.use.key],e.node[e.use.key]=e.child.node)}).close([{s:[s],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.use.done&&e.node.push(e.child.node)}).close([{s:[s],r:"elem",g:"list,elem,json"},{s:[l],b:1,g:"list,elem,json"}])});const m=(e,n)=>{let r=e.use.key,i=e.child.node;const l=e.use.prev;i=void 0===i?null:i,e.use.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,o],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:[s],c:e=>0===e.d,p:"list",b:1,g:"list,imp,jsonic"},{s:[s],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:[s],c:{n:{dlist:0,dmap:0}},r:"list",u:{implist:!0},g:"list,val,imp,comma,jsonic"},{c:{n:{dlist:0,dmap:0}},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:f,g:"end,jsonic"}]).open([{s:[d,o],p:"pair",b:2,g:"pair,list,val,imp,jsonic"}],{append:!0}).close([{s:[r],c:{n:{pk:0}},g:"end,json"},{s:[r],b:1,g:"path,jsonic"},{s:[[s,l,...p]],b:1,g:"end,path,jsonic"},{s:[c],e:f,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.use.implist&&(e.node.push(e.prev.node),e.prev.node=e.node)}).open({c:e=>e.prev.use.implist,p:"elem"}).open([{s:[s],p:"elem",b:1,g:"list,elem,val,imp,jsonic"},{p:"elem",g:"list,elem.jsonic"}],{append:!0}).close([{s:[c],e:f,g:"end,jsonic"}],{append:!0})}),e.rule("pair",(e,t)=>{e.open([{s:[s],g:"map,pair,comma,jsonic"}],{append:!0}).bc((e,t)=>{e.use.pair&&m(e,t)}).close([{s:[r],c:{n:{pk:0}},b:1,g:"map,pair,json"},{s:[s,r],c:{n:{pk:0}},b:1,g:"map,pair,comma,jsonic"},{s:[s,c],g:"end,jsonic"},{s:[s],c:{n:{pk:0}},r:"pair",g:"map,pair,json"},{s:[s],c:{n:{dmap:1}},r:"pair",g:"map,pair,jsonic"},{s:[d],c:{n:{dmap:1}},r:"pair",b:1,g:"map,pair,imp,jsonic"},{s:[[r,s,l,...d]],b:1,g:"map,pair,imp,path,jsonic",c:e=>0<e.n.pk},{s:[l],e:e=>e.c0,g:"end,jsonic"},{s:[c],e:f,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:[s,s],b:2,u:{done:!0},a:e=>e.node.push(null),g:"list,elem,imp,null,jsonic"},{s:[s],u:{done:!0},a:e=>e.node.push(null),g:"list,elem,imp,null,jsonic"},{s:[d,o],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:h,g:"elem,pair,jsonic"}]).bc((e,t)=>{!0===e.use.pair&&(e.use.prev=e.node[e.use.key],m(e,t))}).close([{s:[s,[l,c]],b:1,g:"list,elem,comma,jsonic"},{s:[s],r:"elem",g:"list,elem,json"},{s:[l],b:1,g:"list,elem,json"},{s:[c],e:f,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(y,"__esModule",{value:!0}),y.makeJSON=y.grammar=void 0,y.grammar=j,y.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 j(t),t};var O={exports:{}};Object.defineProperty(O.exports,"__esModule",{value:!0}),O.exports.root=O.exports.S=O.exports.EMPTY=O.exports.AFTER=O.exports.BEFORE=O.exports.CLOSE=O.exports.OPEN=O.exports.makeTextMatcher=O.exports.makeNumberMatcher=O.exports.makeCommentMatcher=O.exports.makeStringMatcher=O.exports.makeLineMatcher=O.exports.makeSpaceMatcher=O.exports.makeFixedMatcher=O.exports.makeParser=O.exports.makeLex=O.exports.makeRuleSpec=O.exports.makeRule=O.exports.makePoint=O.exports.makeToken=O.exports.make=O.exports.util=O.exports.JsonicError=O.exports.Jsonic=void 0,Object.defineProperty(O.exports,"OPEN",{enumerable:!0,get:function(){return r.OPEN}}),Object.defineProperty(O.exports,"CLOSE",{enumerable:!0,get:function(){return r.CLOSE}}),Object.defineProperty(O.exports,"BEFORE",{enumerable:!0,get:function(){return r.BEFORE}}),Object.defineProperty(O.exports,"AFTER",{enumerable:!0,get:function(){return r.AFTER}}),Object.defineProperty(O.exports,"EMPTY",{enumerable:!0,get:function(){return r.EMPTY}});const S=t({});Object.defineProperty(O.exports,"JsonicError",{enumerable:!0,get:function(){return S.JsonicError}}),Object.defineProperty(O.exports,"S",{enumerable:!0,get:function(){return S.S}});const E=n({});Object.defineProperty(O.exports,"makePoint",{enumerable:!0,get:function(){return E.makePoint}}),Object.defineProperty(O.exports,"makeToken",{enumerable:!0,get:function(){return E.makeToken}}),Object.defineProperty(O.exports,"makeLex",{enumerable:!0,get:function(){return E.makeLex}}),Object.defineProperty(O.exports,"makeFixedMatcher",{enumerable:!0,get:function(){return E.makeFixedMatcher}}),Object.defineProperty(O.exports,"makeSpaceMatcher",{enumerable:!0,get:function(){return E.makeSpaceMatcher}}),Object.defineProperty(O.exports,"makeLineMatcher",{enumerable:!0,get:function(){return E.makeLineMatcher}}),Object.defineProperty(O.exports,"makeStringMatcher",{enumerable:!0,get:function(){return E.makeStringMatcher}}),Object.defineProperty(O.exports,"makeCommentMatcher",{enumerable:!0,get:function(){return E.makeCommentMatcher}}),Object.defineProperty(O.exports,"makeNumberMatcher",{enumerable:!0,get:function(){return E.makeNumberMatcher}}),Object.defineProperty(O.exports,"makeTextMatcher",{enumerable:!0,get:function(){return E.makeTextMatcher}}),Object.defineProperty(O.exports,"makeRule",{enumerable:!0,get:function(){return k.makeRule}}),Object.defineProperty(O.exports,"makeRuleSpec",{enumerable:!0,get:function(){return k.makeRuleSpec}}),Object.defineProperty(O.exports,"makeParser",{enumerable:!0,get:function(){return k.makeParser}});const N={tokenize:S.tokenize,srcfmt:S.srcfmt,clone:S.clone,charset:S.charset,trimstk:S.trimstk,makelog:S.makelog,badlex:S.badlex,extract:S.extract,errinject:S.errinject,errdesc:S.errdesc,configure:S.configure,parserwrap:S.parserwrap,mesc:S.mesc,escre:S.escre,regexp:S.regexp,prop:S.prop,str:S.str,clean:S.clean,deep:S.deep,omap:S.omap,keys:S.keys,values:S.values,entries:S.entries};function T(e,t){let n=!0;if("jsonic"===e)n=!1;else if("json"===e)return(0,y.makeJSON)(M);e="string"==typeof e?{}:e;let r={parser:null,config:null,plugins:[],sub:{lex:void 0,rule:void 0},mark:Math.random()},l=(0,S.deep)({},t?{...t.options}:!1===(null==e?void 0:e.defaults$)?{}:i.defaults,e||{}),o=function(e,t,n){var r;if(S.S.string===typeof e){let i=o.internal();return((null===(r=s.parser)||void 0===r?void 0:r.start)?(0,S.parserwrap)(s.parser):i.parser).start(e,o,t,n)}return e},s=e=>{if(null!=e&&S.S.object===typeof e){(0,S.deep)(l,e),(0,S.configure)(o,r.config,l);let t=o.internal().parser;r.parser=t.clone(l,r.config)}return{...o.options}},a={token:e=>(0,S.tokenize)(e,r.config,o),tokenSet:e=>(0,S.findTokenSet)(e,r.config),fixed:e=>r.config.fixed.ref[e],options:(0,S.deep)(s,l),config:()=>(0,S.deep)(r.config),parse:o,use:function(e,t){if(S.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,S.deep)({},e.defaults||{},t||{});o.options({plugin:{[n]:r}});let i=o.options.plugin[n];return o.internal().plugins.push(e),e.options=i,e(o,i)||o},rule:(e,t)=>o.internal().parser.rule(e,t)||o,make:e=>T(e,o),empty:e=>T({defaults$:!1,standard$:!1,grammar$:!1,...e||{}}),id:"Jsonic/"+Date.now()+"/"+(""+Math.random()).substring(2,8).padEnd(6,"0")+(null==s.tag?"":"/"+s.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)),o),util:N};if((0,S.defprop)(a.make,S.S.name,{value:S.S.make}),n?(0,S.assign)(o,a):(0,S.assign)(o,{empty:a.empty,parse:a.parse,sub:a.sub,id:a.id,toString:a.toString}),(0,S.defprop)(o,"internal",{value:()=>r}),t){for(let n in t)void 0===o[n]&&(o[n]=t[n]);o.parent=t;let e=t.internal();r.config=(0,S.deep)({},e.config),(0,S.configure)(o,r.config,l),(0,S.assign)(o.token,r.config.t),r.plugins=[...e.plugins],r.parser=e.parser.clone(l,r.config)}else{let e={...o,...a};r.config=(0,S.configure)(e,void 0,l),r.plugins=[],r.parser=(0,k.makeParser)(l,r.config),!1!==l.grammar$&&(0,y.grammar)(e)}return o}let M;O.exports.util=N,O.exports.make=T,O.exports.root=M;let P=O.exports.root=M=T("jsonic");return O.exports.Jsonic=P,M.Jsonic=M,M.JsonicError=S.JsonicError,M.makeLex=E.makeLex,M.makeParser=k.makeParser,M.makeToken=E.makeToken,M.makePoint=E.makePoint,M.makeRule=k.makeRule,M.makeRuleSpec=k.makeRuleSpec,M.makeFixedMatcher=E.makeFixedMatcher,M.makeSpaceMatcher=E.makeSpaceMatcher,M.makeLineMatcher=E.makeLineMatcher,M.makeStringMatcher=E.makeStringMatcher,M.makeCommentMatcher=E.makeCommentMatcher,M.makeNumberMatcher=E.makeNumberMatcher,M.makeTextMatcher=E.makeTextMatcher,M.OPEN=r.OPEN,M.CLOSE=r.CLOSE,M.BEFORE=r.BEFORE,M.AFTER=r.AFTER,M.EMPTY=r.EMPTY,M.util=N,M.make=T,M.S=S.S,O.exports.default=P,O.exports=P,O.exports}))}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{}),_$jsonicMin_20=_$jsonicMin_20.exports;var _$directiveMin_18={exports:{}};(function(e){(function(){!function(t){"object"==typeof _$directiveMin_18.exports?_$directiveMin_18.exports=t():"function"==typeof define&&define.amd?define([],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,o={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)},s=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_"+s,f="#CD_"+s,h=e.fixed(a),m=null==u?null:e.fixed(u);if(null!=h)throw new Error("Directive open token already in use: "+a);p[d]=a,null==m&&null!=u&&(p[f]=u),e.options({fixed:{token:p},error:{[s+"_close"]:null==u?null:"directive "+s+' close "'+u+'" without open "'+a+'"'},hint:{[s+"_close"]:null==u?null:`\nThe ${s} 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;h=e.fixed(a),m=null==u?null:e.fixed(u),o.open.forEach(t=>{e.rule(t,e=>(e.open({s:[h],p:s,n:{["dr_"+s]:1},g:"start"}),null!=u&&(e.open({s:[h,m],b:1,p:s,n:{["dr_"+s]:1},g:"start,end"}),e.close({s:[m],b:1,g:"end"})),e))}),null!=u&&o.close.forEach(t=>{e.rule(t,e=>{e.close([{s:[m],c:e=>1===e.n["dr_"+s],b:1,g:"end"},{s:[g,m],c:e=>1===e.n["dr_"+s],b:1,g:"end,comma"}])})}),e.rule(s,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:h,CLOSE:m,name:s})};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:{}),_$directiveMin_18=_$directiveMin_18.exports;var _$js_22={};function makeJavaScriptProcessor(e){const t=t=>{t.val=evaluate(t,e)};return t.opts=e,t}function evaluate(res,opts){let out;if(!0!==(null==opts?void 0:opts.evalOnly))out=require(res.full);else{let exports=null,module={exports:exports};eval(res.src),out=module.exports}return out}Object.defineProperty(_$js_22,"__esModule",{value:!0}),_$js_22.makeJavaScriptProcessor=void 0,_$js_22.makeJavaScriptProcessor=makeJavaScriptProcessor;var _$_empty_28={},_$browser_30={},cachedSetTimeout,cachedClearTimeout,process=_$browser_30={};function defaultSetTimout(){throw new Error("setTimeout has not been defined")}function defaultClearTimeout(){throw new Error("clearTimeout has not been defined")}function runTimeout(e){if(cachedSetTimeout===setTimeout)return setTimeout(e,0);if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout)return cachedSetTimeout=setTimeout,setTimeout(e,0);try{return cachedSetTimeout(e,0)}catch(t){try{return cachedSetTimeout.call(null,e,0)}catch(t){return cachedSetTimeout.call(this,e,0)}}}!function(){try{cachedSetTimeout="function"==typeof setTimeout?setTimeout:defaultSetTimout}catch(e){cachedSetTimeout=defaultSetTimout}try{cachedClearTimeout="function"==typeof clearTimeout?clearTimeout:defaultClearTimeout}catch(e){cachedClearTimeout=defaultClearTimeout}}();var currentQueue,queue=[],draining=!1,queueIndex=-1;function cleanUpNextTick(){draining&¤tQueue&&(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var e=runTimeout(cleanUpNextTick);draining=!0;for(var t=queue.length;t;){for(currentQueue=queue,queue=[];++queueIndex<t;)currentQueue&¤tQueue[queueIndex].run();queueIndex=-1,t=queue.length}currentQueue=null,draining=!1,function(e){if(cachedClearTimeout===clearTimeout)return clearTimeout(e);if((cachedClearTimeout===defaultClearTimeout||!cachedClearTimeout)&&clearTimeout)return cachedClearTimeout=clearTimeout,clearTimeout(e);try{cachedClearTimeout(e)}catch(t){try{return cachedClearTimeout.call(null,e)}catch(t){return cachedClearTimeout.call(this,e)}}}(e)}}function Item(e,t){this.fun=e,this.array=t}function noop(){}process.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];queue.push(new Item(e,t)),1!==queue.length||draining||runTimeout(drainQueue)},Item.prototype.run=function(){this.fun.apply(null,this.array)},process.title="browser",process.browser=!0,process.env={},process.argv=[],process.version="",process.versions={},process.on=noop,process.addListener=noop,process.once=noop,process.off=noop,process.removeListener=noop,process.removeAllListeners=noop,process.emit=noop,process.prependListener=noop,process.prependOnceListener=noop,process.listeners=function(e){return[]},process.binding=function(e){throw new Error("process.binding is not supported")},process.cwd=function(){return"/"},process.chdir=function(e){throw new Error("process.chdir is not supported")},process.umask=function(){return 0};var _$pathBrowserify_29={};(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,o=0,s=0;s<=e.length;++s){if(s<e.length)n=e.charCodeAt(s);else{if(47===n)break;n=47}if(47===n){if(l===s-1||1===o);else if(l!==s-1&&2===o){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=s,o=0;continue}}else if(2===r.length||1===r.length){r="",i=0,l=s,o=0;continue}t&&(r.length>0?r+="/..":r="..",i=2)}else r.length>0?r+="/"+e.slice(l+1,s):r=e.slice(l+1,s),i=s-l-1;l=s,o=0}else 46===n&&-1!==o?++o:o=-1}return r}var r={resolve:function(){for(var r,i="",l=!1,o=arguments.length-1;o>=-1&&!l;o--){var s;o>=0?s=arguments[o]:(void 0===r&&(r=e.cwd()),s=r),t(s),0!==s.length&&(i=s+"/"+i,l=47===s.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,o=l-i,s=1;s<n.length&&47===n.charCodeAt(s);++s);for(var a=n.length-s,u=o<a?o:a,c=-1,p=0;p<=u;++p){if(p===u){if(a>u){if(47===n.charCodeAt(s+p))return n.slice(s+p+1);if(0===p)return n.slice(s+p)}else o>u&&(47===e.charCodeAt(i+p)?c=p:0===p&&(c=0));break}var d=e.charCodeAt(i+p);if(d!==n.charCodeAt(s+p))break;47===d&&(c=p)}var f="";for(p=i+c+1;p<=l;++p)p!==l&&47!==e.charCodeAt(p)||(0===f.length?f+="..":f+="/..");return f.length>0?f+n.slice(s+c):(s+=c,47===n.charCodeAt(s)&&++s,n.slice(s))},_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,o=e.length-1;o>=1;--o)if(47===(n=e.charCodeAt(o))){if(!l){i=o;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,o=!0;if(void 0!==n&&n.length>0&&n.length<=e.length){if(n.length===e.length&&n===e)return"";var s=n.length-1,a=-1;for(r=e.length-1;r>=0;--r){var u=e.charCodeAt(r);if(47===u){if(!o){i=r+1;break}}else-1===a&&(o=!1,a=r+1),s>=0&&(u===n.charCodeAt(s)?-1==--s&&(l=r):(s=-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(!o){i=r+1;break}}else-1===l&&(o=!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,o=0,s=e.length-1;s>=0;--s){var a=e.charCodeAt(s);if(47!==a)-1===i&&(l=!1,i=s+1),46===a?-1===n?n=s:1!==o&&(o=1):-1!==n&&(o=-1);else if(!l){r=s+1;break}}return-1===n||-1===i||0===o||1===o&&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 o=-1,s=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===o?o=c:1!==p&&(p=1):-1!==o&&(p=-1);else if(!u){s=c+1;break}return-1===o||-1===a||0===p||1===p&&o===a-1&&o===s+1?-1!==a&&(n.base=n.name=0===s&&l?e.slice(1,a):e.slice(s,a)):(0===s&&l?(n.name=e.slice(1,o),n.base=e.slice(1,a)):(n.name=e.slice(s,o),n.base=e.slice(s,a)),n.ext=e.slice(o,a)),s>0?n.dir=e.slice(0,s-1):l&&(n.dir="/"),n},sep:"/",delimiter:":",win32:null,posix:null};r.posix=r,_$pathBrowserify_29=r}).call(this)}).call(this,_$browser_30);var _$mem_25={};Object.defineProperty(_$mem_25,"__esModule",{value:!0}),_$mem_25.makeMemResolver=_$mem_25.buildPotentials=void 0;const __multisource_1_25=_$multisource_21({});function buildPotentials(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}_$mem_25.makeMemResolver=function(e){return function(t,n,r,i){let l,o=(0,__multisource_1_25.resolvePathSpec)(n,i,t,function(e){return function(t){let n=t;return e[t]&&(n=(t.replace(/[\\\/]+$/,"").match(/[\\\/]+([^\\\/]+)$/)||["",""])[1]),n}}(e));if(null!=o.full&&(l=e[o.full],null==l&&__multisource_1_25.NONE===o.kind)){let t=buildPotentials(o,n,(...e)=>e.reduce((e,t)=>e+"/"+t));for(let n of t)if(null!=(l=e[n])){o.full=n,o.kind=(n.match(/\.([^.]*)$/)||[__multisource_1_25.NONE,__multisource_1_25.NONE])[1];break}}return{...o,src:l,found:null!=l}}},_$mem_25.buildPotentials=buildPotentials;var _$file_24={},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(_$file_24,"__esModule",{value:!0}),_$file_24.makeFileResolver=void 0;const fs_1=__importDefault(_$_empty_28),path_1=__importDefault(_$pathBrowserify_29),__multisource_1_24=_$multisource_21({});function resolvefolder(e){if("string"!=typeof e)return e;let t=e;return fs_1.default.statSync(e).isFile()&&(t=path_1.default.parse(e).dir),t}function load(e){try{return fs_1.default.readFileSync(e).toString()}catch(t){}}_$file_24.makeFileResolver=function(e){return function(t,n,r,i){let l,o=e?e(t):t,s=(0,__multisource_1_24.resolvePathSpec)(n,i,o,resolvefolder),a=[];if(null!=s.full&&(s.full=path_1.default.resolve(s.full),a.push(s.full),l=load(s.full),null==l&&__multisource_1_24.NONE===s.kind)){let e=(0,_$mem_25.buildPotentials)(s,n,(...e)=>path_1.default.resolve(e.reduce((e,t)=>path_1.default.join(e,t))));a.push(...e);for(let t of e)if(null!=(l=load(t))){s.full=t,s.kind=(t.match(/\.([^.]*)$/)||[__multisource_1_24.NONE,__multisource_1_24.NONE])[1];break}}return{...s,src:l,found:null!=l,search:a}}};var _$pkg_26={},____importDefault_26=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(_$pkg_26,"__esModule",{value:!0}),_$pkg_26.makePkgResolver=void 0;const __fs_1_26=____importDefault_26(_$_empty_28),__path_1_26=____importDefault_26(_$pathBrowserify_29),__multisource_1_26=_$multisource_21({});function __resolvefolder_26(e){if("string"!=typeof e)return e;let t=e;return __fs_1_26.default.statSync(e).isFile()&&(t=__path_1_26.default.parse(e).dir),t}function __load_26(e){try{return __fs_1_26.default.readFileSync(e).toString()}catch(t){}}_$pkg_26.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 o,s=e,a=(0,__multisource_1_26.resolvePathSpec)(r,l,s,__resolvefolder_26),u=[];if(null!=a.path)try{a.full=n.resolve(a.path,t),null!=a.full&&(o=__load_26(a.full))}catch(c){u.push(...(null==t?void 0:t.paths)||n.resolve.paths(a.path).map(e=>__path_1_26.default.join(e,a.path)));let e=(0,_$mem_25.buildPotentials)(a,r,(...e)=>__path_1_26.default.resolve(e.reduce((e,t)=>__path_1_26.default.join(e,t))));for(let r of e)try{a.full=n.resolve(r,t),null!=a.full&&(o=__load_26(a.full))}catch(c){u.push(...(null==t?void 0:t.paths)||n.resolve.paths(r).map(e=>__path_1_26.default.join(e,r)))}}return{...a,src:o,found:null!=o,search:u}}};var _$exprMin_19={exports:{}};(function(e){(function(){!function(t){"object"==typeof _$exprMin_19.exports?_$exprMin_19.exports=t():"function"==typeof define&&define.amd?define([],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 o=e=>null==e?[]:Object.values(e);t.values=o;const s=e=>null==e?[]:Object.entries(e);t.entries=s;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=_(e,t=g({},t),n,r,i);super(l.message),a(this,l),k(this)}toJSON(){return{...this,__error:!0,name:this.name,message:this.message,stack:this.stack}}}function f(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 h(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,o=null!=i&&(p.object===typeof i||l);if(r&&o&&!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:o?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 o={code:t,details:n,token:r,rule:i,ctx:l};return null==e?"":e.replace(/\$([\w_]+)/g,(e,t)=>{let s=JSON.stringify(null!=o[t]?o[t]:null!=n[t]?n[t]:l.meta&&null!=l.meta[t]?l.meta[t]:null!=r[t]?r[t]:null!=i[t]?i[t]:null!=l.opts[t]?l.opts[t]:null!=l.cfg[t]?l.cfg[t]:null!=l[t]?l[t]:"$"+t);return null==s?"":s})}function k(e){e.stack&&(e.stack=e.stack.split("\n").filter(e=>!e.includes("jsonic/jsonic")).map(e=>e.replace(/ at /,"at ")).join("\n"))}function x(e,t,n){let i=0<n.sI?n.sI:0,l=0<n.rI?n.rI:1,o=0<n.cI?n.cI:1,s=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),f=a.length;return[2<f?d(a[f-3]):null,1<f?d(a[f-2]):null,d(a[f-1]+u[0])," ".repeat(c)+" "+" ".repeat(o-1)+"\x1b[31m"+"^".repeat(s.length||1)+" "+t+"\x1b[0m",d(u[1]),d(u[2])].filter(e=>null!=e).join("\n")}function _(e,t,n,r,i){var l,o,s;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,x(i.src(),c,n),"",v((a.hint[e]||(null===(s=null===(o=t.use)||void 0===o?void 0:o.err)||void 0===s?void 0:s.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="+f(n.tin,i.cfg)+(null==n.why?"":"~"+n.why)+"; plugins="+i.plgn().map(e=>e.name).join(",")+"--\x1b[0m\n"].join("\n"),h={internal:{token:n,ctx:i}};return h={...Object.create(h),message:d,code:e,details:t,meta:u,fileName:u?u.fileName:void 0,lineNumber:n.rI,columnNumber:n.cI},h}catch(a){return console.log(a),{}}}function b(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(/]$/,s(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 y(e,t=44){let n;try{n="object"==typeof e?JSON.stringify(e):""+e}catch(r){n=""+e}return j(t<n.length?n.substring(0,t-3)+"...":n,t)}function j(e,t=5){return void 0===e?"":(""+e).substring(0,t).replace(/[\r\n\t]/g,".")}function O(...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 S(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,k,x,_,b,y,j,E,N,T,M,P,I,w,C,$,R,A,V,L,D,F,Y,B,J,U,K,q,z,G,Z,W,H,X,Q,ee,te,ne,re,ie,le,oe,se;const ae=t||{};ae.t=ae.t||{},ae.tI=ae.tI||1;const ue=e=>f(e,ae);!1!==n.standard$&&(ue("#BD"),ue("#ZZ"),ue("#UK"),ue("#AA"),ue("#SP"),ue("#LN"),ue("#CM"),ue("#NR"),ue("#ST"),ue("#TX"),ue("#VL")),ae.fixed={lex:!!(null===(r=n.fixed)||void 0===r?void 0:r.lex),token:n.fixed?c(S(n.fixed.token),([e,t])=>[t,f(e,ae)]):{},ref:void 0,check:null===(i=n.fixed)||void 0===i?void 0:i.check},ae.fixed.ref=c(ae.fixed.token,([e,t])=>[e,t]),ae.fixed.ref=Object.assign(ae.fixed.ref,c(ae.fixed.ref,([e,t])=>[t,e])),ae.match={lex:!!(null===(u=n.match)||void 0===u?void 0:u.lex),value:n.match?c(S(n.match.value),([e,t])=>[e,t]):{},token:n.match?c(S(n.match.token),([e,t])=>[f(e,ae),t]):{},check:null===(p=n.match)||void 0===p?void 0:p.check},c(ae.match.token,([e,t])=>[e,(t.tin$=+e,t)]);const ce=n.tokenSet?Object.keys(n.tokenSet).reduce((e,t)=>(e[t]=n.tokenSet[t].filter(e=>null!=e).map(e=>ue(e)),e),{}):{};ae.tokenSet=ae.tokenSet||{},s(ce).map(e=>{let t=e[0],n=e[1];ae.tokenSet[t]?(ae.tokenSet[t].length=0,ae.tokenSet[t].push(...n)):ae.tokenSet[t]=n}),ae.tokenSetTins=s(ae.tokenSet).reduce((e,t)=>(e[t[0]]=e[t[0]]||{},t[1].map(n=>e[t[0]][n]=!0),e),{}),ae.tokenSetTins.IGNORE=ae.tokenSetTins.IGNORE||{},ae.space={lex:!!(null===(d=n.space)||void 0===d?void 0:d.lex),chars:O(null===(g=n.space)||void 0===g?void 0:g.chars),check:null===(v=n.space)||void 0===v?void 0:v.check},ae.line={lex:!!(null===(k=n.line)||void 0===k?void 0:k.lex),chars:O(null===(x=n.line)||void 0===x?void 0:x.chars),rowChars:O(null===(_=n.line)||void 0===_?void 0:_.rowChars),single:!!(null===(b=n.line)||void 0===b?void 0:b.single),check:null===(y=n.line)||void 0===y?void 0:y.check},ae.text={lex:!!(null===(j=n.text)||void 0===j?void 0:j.lex),modify:((null===(E=ae.text)||void 0===E?void 0:E.modify)||[]).concat(([null===(N=n.text)||void 0===N?void 0:N.modify]||[]).flat()).filter(e=>null!=e),check:null===(T=n.text)||void 0===T?void 0:T.check},ae.number={lex:!!(null===(M=n.number)||void 0===M?void 0:M.lex),hex:!!(null===(P=n.number)||void 0===P?void 0:P.hex),oct:!!(null===(I=n.number)||void 0===I?void 0:I.oct),bin:!!(null===(w=n.number)||void 0===w?void 0:w.bin),sep:null!=(null===(C=n.number)||void 0===C?void 0:C.sep)&&""!==n.number.sep,exclude:null===($=n.number)||void 0===$?void 0:$.exclude,sepChar:null===(R=n.number)||void 0===R?void 0:R.sep,check:null===(A=n.number)||void 0===A?void 0:A.check},ae.value={lex:!!(null===(V=n.value)||void 0===V?void 0:V.lex),def:s((null===(L=n.value)||void 0===L?void 0:L.def)||{}).reduce((e,t)=>(null==t[1]||!1===t[1]||t[1].match||(e[t[0]]=t[1]),e),{}),defre:s((null===(D=n.value)||void 0===D?void 0:D.def)||{}).reduce((e,t)=>(t[1]&&t[1].match&&(e[t[0]]=t[1],e[t[0]].consume=!!e[t[0]].consume),e),{})},ae.rule={start:null==(null===(F=n.rule)||void 0===F?void 0:F.start)?"val":n.rule.start,maxmul:null==(null===(Y=n.rule)||void 0===Y?void 0:Y.maxmul)?3:n.rule.maxmul,finish:!!(null===(B=n.rule)||void 0===B?void 0:B.finish),include:(null===(J=n.rule)||void 0===J?void 0:J.include)?n.rule.include.split(/\s*,+\s*/).filter(e=>""!==e):[],exclude:(null===(U=n.rule)||void 0===U?void 0:U.exclude)?n.rule.exclude.split(/\s*,+\s*/).filter(e=>""!==e):[]},ae.map={extend:!!(null===(K=n.map)||void 0===K?void 0:K.extend),merge:null===(q=n.map)||void 0===q?void 0:q.merge},ae.list={property:!!(null===(z=n.list)||void 0===z?void 0:z.property)};let pe=Object.keys(ae.fixed.token).sort((e,t)=>t.length-e.length).map(e=>m(e)).join("|"),de=(null===(G=n.comment)||void 0===G?void 0:G.lex)?(n.comment.def?o(n.comment.def):[]).filter(e=>e&&e.lex).map(e=>m(e.start)).join("|"):"",fe=["([",m(l(O(ae.space.lex&&ae.space.chars,ae.line.lex&&ae.line.chars)).join("")),"]",("string"==typeof n.ender?n.ender.split(""):Array.isArray(n.ender)?n.ender:[]).map(e=>"|"+m(e)).join(""),""===pe?"":"|",pe,""===de?"":"|",de,"|$)"];return ae.rePart={fixed:pe,ender:fe,commentStart:de},ae.re={ender:h(null,...fe),rowChars:h(null,m(null===(Z=n.line)||void 0===Z?void 0:Z.rowChars)),columns:h(null,"["+m(null===(W=n.line)||void 0===W?void 0:W.chars)+"]","(.*)$")},ae.lex={empty:!!(null===(H=n.lex)||void 0===H?void 0:H.empty),emptyResult:null===(X=n.lex)||void 0===X?void 0:X.emptyResult,match:(null===(Q=n.lex)||void 0===Q?void 0:Q.match)?s(n.lex.match).reduce((e,t)=>{let r=t[0],i=t[1];if(i){let t=i.make(ae,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):[]},ae.parse={prepare:o(null===(ee=n.parse)||void 0===ee?void 0:ee.prepare)},ae.debug={get_console:(null===(te=n.debug)||void 0===te?void 0:te.get_console)||(()=>console),maxlen:null==(null===(ne=n.debug)||void 0===ne?void 0:ne.maxlen)?99:n.debug.maxlen,print:{config:!!(null===(ie=null===(re=n.debug)||void 0===re?void 0:re.print)||void 0===ie?void 0:ie.config),src:null===(oe=null===(le=n.debug)||void 0===le?void 0:le.print)||void 0===oe?void 0:oe.src}},ae.error=n.error||{},ae.hint=n.hint||{},(null===(se=n.config)||void 0===se?void 0:se.modify)&&l(n.config.modify).forEach(e=>n.config.modify[e](ae,n)),ae.debug.print.config&&ae.debug.get_console().dir(ae,{depth:null}),ae.result={fail:[]},n.result&&(ae.result.fail=[...n.result.fail]),a(e.options,n),a(e.token,ae.t),a(e.tokenSet,ae.tokenSet),a(e.fixed,ae.fixed.ref),ae},t.tokenize=f,t.findTokenSet=function(e,t){return t.tokenSet[e]},t.mesc=function(e,t){return(t=new String(e)).esc=!0,t},t.regexp=h,t.escre=m,t.deep=g,t.errinject=v,t.trimstk=k,t.extract=x,t.errdesc=_,t.badlex=function(e,t,n){let r=e.next.bind(e);return e.next=(e,i,l,o)=>{let s=r(e,i,l,o);if(t===s.tin){let t={};throw null!=s.use&&(t.use=s.use),new d(s.why||p.unexpected,t,s,e,n)}return s},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=b,t.str=y,t.snip=j,t.clone=function(e){return g(Object.create(Object.getPrototypeOf(e)),e)},t.charset=O,t.clean=S,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: "+y(r)+(void 0===n?"":" to value: "+y(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,o){try{return e.start(t,n,l,o)}catch(s){if("SyntaxError"===s.name){let o=0,a=0,u=0,c=r.EMPTY,p=s.message.match(/^Unexpected token (.) .*position\s+(\d+)/i);if(p){c=p[1],o=parseInt(p[2]),a=t.substring(0,o).replace(/[^\n]/g,r.EMPTY).length;let e=o-1;for(;-1<e&&"\n"!==t.charAt(e);)e--;u=Math.max(t.substring(e,o).length,0)}let h=s.token||(0,i.makeToken)("#UK",f("#UK",n.internal().config),void 0,c,(0,i.makePoint)(c.length,o,s.lineNumber||a,s.columnNumber||u));throw new d(s.code||"json",s.details||{msg:s.message},h,{},s.ctx||{uI:-1,opts:n.options,cfg:n.internal().config,token:h,meta:l,src:()=>t,root:()=>{},plgn:()=>n.internal().plugins,rule:{name:"no-rule"},sub:{},xs:-1,v2:h,v1:h,t0:h,t1:h,tC:-1,kI:-1,rs:[],rsI:0,rsm:{},n:{},log:l?l.log:void 0,F:b(n.internal().config),use:{},NORULE:{name:"no-rule"},NOTOKEN:{name:"no-token"}})}throw s}}}}})),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 o=(...e)=>new l(...e);n.makePoint=o;class s{constructor(e,t,n,i,l,o,s){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=o,this.why=s,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 s(...e);function u(e,t,n){let r=e.pnt,i=t;if(e.cfg.fixed.lex&&null!=n&&0<n.length){let l,o=e.cfg.fixed.token[n];null!=o&&(l=e.token(o,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,o(-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,o=r.token[e];return null!=o&&(l=t.token(o,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 o=t.pnt,s=t.src.substring(o.sI),a="o"===i.state?0:1;for(let e of n)if(e.match instanceof RegExp){let n=s.match(e.match);if(n){let r=n[0],i=r.length;if(0<i){let l,s=e.val?e.val(n):r;return l=t.token("#VL",s,r,o),o.sI+=i,o.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=s.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,o),o.sI+=i,o.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 o=t.pnt,s=t.src.substring(o.sI),a=o.rI,u=o.cI;for(let i of r)if(s.startsWith(i.start)){let n=s.length,r=i.start.length;for(u+=i.start.length;r<n&&!e.line.chars[s[r]];)u++,r++;if(i.eatline)for(;r<n&&e.line.chars[s[r]];)e.line.rowChars[s[r]]&&a++,r++;let l=s.substring(0,r),c=t.token("#CM",void 0,l,o);return o.sI+=l.length,o.cI=u,o.rI=a,c}for(let r of l)if(s.startsWith(r.start)){let n=s.length,l=r.start.length,c=r.end;for(u+=r.start.length;l<n&&!s.substring(l).startsWith(c);)e.line.rowChars[s[l]]&&(a++,u=0),u++,l++;if(s.substring(l).startsWith(c)){if(u+=c.length,r.eatline)for(;l<n&&e.line.chars[s[l]];)e.line.rowChars[s[l]]&&a++,l++;let i=s.substring(0,l+c.length),p=t.token("#CM",void 0,i,o);return o.sI+=i.length,o.rI=a,o.cI=u,p}return t.bad(i.S.unterminated_comment,o.sI,o.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,o=r.src.substring(l.sI),s=e.value.def,a=e.value.defre,c=o.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=s[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?o: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 o=t.val(e);n=r.token("#VL",o,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,o=t.src.substring(i.sI),s=e.value.def,a=o.match(r);if(a){let n,r=a[1],o=a[9],c=!0;if(null!=r&&(c=!e.number.exclude||!r.match(e.number.exclude))){let o=r.length;if(0<o){let a;if(e.value.lex&&void 0!==(a=s[r]))n=t.token("#VL",a.val,r,i);else{let e=l?r.replace(l,""):r,s=+e;if(isNaN(s)){let t=e[0];"-"!==t&&"+"!==t||(s=("-"===t?-1:1)*+e.substring(1))}isNaN(s)||(n=t.token("#NR",s,r,i),i.sI+=o,i.cI+=o)}}}return c&&(n=u(t,n,o)),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:o,escChar:s,escCharCode:a,multiChars:u,allowUnknown:c,replaceCodeMap:p,hasReplace:d}=n,{pnt:f,src:h}=t,{sI:m,rI:g,cI:v}=f,k=h.length;if(l[h[m]]){const l=h[m],x=m,_=g,b=u[l];++m,++v;let y,j=[];for(;m<k;m++){v++;let r=h[m];if(y=void 0,l===r){m++;break}if(s===r){m++,v++;let e=o[h[m]];if(null!=e)j.push(e);else if("x"===h[m]){m++;let e=parseInt(h.substring(m,m+2),16);if(isNaN(e)){if(n.abandon)return;return m-=2,v-=2,f.sI=m,f.cI=v,t.bad(i.S.invalid_ascii,m,m+4)}let r=String.fromCharCode(e);j.push(r),m+=1,v+=2}else if("u"===h[m]){m++;let e="{"===h[m]?(m++,1):0,r=e?6:4,l=parseInt(h.substring(m,m+r),16);if(isNaN(l)){if(n.abandon)return;return m=m-2-e,v-=2,f.sI=m,f.cI=v,t.bad(i.S.invalid_unicode,m,m+r+2+2*e)}let o=String.fromCodePoint(l);j.push(o),m+=r-1+e,v+=r+e}else{if(!c){if(n.abandon)return;return f.sI=m,f.cI=v-1,t.bad(i.S.unexpected,m,m+1)}j.push(h[m])}}else if(d&&void 0!==(y=p[h.charCodeAt(m)]))j.push(y),v++;else{let r=m,o=l.charCodeAt(0),s=h.charCodeAt(m);for(;(!d||void 0===(y=p[s]))&&m<k&&32<=s&&o!==s&&a!==s;)s=h.charCodeAt(++m),v++;if(v--,void 0===y&&s<32){if(!b||!e.line.chars[h[m]]){if(n.abandon)return;return f.sI=m,f.cI=v,t.bad(i.S.unprintable,m,m+1)}e.line.rowChars[h[m]]&&(f.rI=++g),v=1,j.push(h.substring(r,m+1))}else j.push(h.substring(r,m)),m--}}if(h[m-1]!==l||f.sI===m-1){if(n.abandon)return;return f.rI=_,t.bad(i.S.unterminated_string,x,m)}const O=t.token("#ST",j.join(r.EMPTY),h.substring(f.sI,m),f);return f.sI=m,f.rI=g,f.cI=v,O}}},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:o}=t,{sI:s,rI:a}=l,u=e.line.single;for(u&&(n={});r[o[s]]&&!(n&&(n[o[s]]=(n[o[s]]||0)+1,u&&1<n[o[s]]));)a+=i[o[s]]?1:0,s++;if(l.sI<s){let e=o.substring(l.sI,s);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:o}=r;for(;n[i[l]];)l++,o++;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=o,n}};class c{constructor(e){this.src=r.EMPTY,this.ctx={},this.cfg={},this.pnt=o(-1),this.ctx=e,this.src=e.src(),this.cfg=e.cfg,this.pnt=o(this.src.length)}token(e,t,n,r,l,o){let s,u;return"string"==typeof e?(u=e,s=(0,i.tokenize)(u,this.cfg)):(s=e,u=(0,i.tokenize)(e,this.cfg)),a(u,s,t,n,r||this.pnt,l,o)}next(e,t,n,r){let l,o,s=this.pnt,a=s.sI;if(s.end)l=s.end;else if(0<s.token.length)l=s.token.shift();else if(s.len<=s.sI)s.end=this.token("#ZZ",void 0,"",s),l=s.end;else{try{for(let t of this.cfg.lex.match)if(l=t(this,e,r)){o=t;break}}catch(u){l=l||this.token("#BD",void 0,this.src[s.sI],s,{err:u},u.code||i.S.unexpected)}l=l||this.token("#BD",void 0,this.src[s.sI],s,void 0,i.S.unexpected)}return this.ctx.log&&this.ctx.log(i.S.lex,this.ctx,e,this,s,a,o,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({}),o={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=o;var s={};Object.defineProperty(s,"__esModule",{value:!0}),s.makeRuleSpec=s.makeNoRule=s.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.use=Object.create(null),this.keep=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)}toString(){return"[Rule "+this.name+"~"+this.i+"]"}}const c=(...e)=>new u(...e);s.makeRule=c,s.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),f=d(),h=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",o=this.def[l];return o[r](...i),o=this.def[l]=(0,a.modlist)(o,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,o=l?e:t.NORULE,s=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,o,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 o=f;o.b=0,o.p=r.EMPTY,o.r=r.EMPTY,o.n=void 0,o.h=void 0,o.a=void 0,o.u=void 0,o.k=void 0,o.e=void 0;let s=null,u=0,c=!0,p=1<<l.cfg.t.AA-1,d=l.cfg.tokenSetTins.IGNORE;function h(e,t,r,i){let o;do{o=n.next(e,t,r,i),l.tC++}while(d[o.tin]);return o}let m=t.length;for(u=0;u<m;u++){s=t[u];let n=!1,r=!1;if(c=!0,s.S0){let e=(l.t0=l.NOTOKEN!==l.t0?l.t0:l.t0=h(i,s,u,0)).tin;if(n=!0,c=!!(s.S0[e/31|0]&(1<<e%31-1|p)),c&&(r=null!=s.S1,s.S1)){let e=(l.t1=l.NOTOKEN!==l.t1?l.t1:l.t1=h(i,s,u,1)).tin;r=!0,c=!!(s.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&&s.c&&(c=c&&s.c(i,l,o)),c)break;s=null}c||(o.e=l.t0),s&&(o.n=null!=s.n?s.n:o.n,o.h=null!=s.h?s.h:o.h,o.a=null!=s.a?s.a:o.a,o.u=null!=s.u?s.u:o.u,o.k=null!=s.k?s.k:o.k,o.g=null!=s.g?s.g:o.g,o.e=s.e&&s.e(i,l,o)||void 0,o.p=null!=s.p&&!1!==s.p?"string"==typeof s.p?s.p:s.p(i,l,o):o.p,o.r=null!=s.r&&!1!==s.r?"string"==typeof s.r?s.r:s.r(i,l,o):o.r,o.b=null!=s.b&&!1!==s.b?"number"==typeof s.b?s.b:s.b(i,l,o):o.b);let g=u<t.length;return l.log&&l.log(a.S.parse,l,i,n,g,c,u,s,o),o}(l,p,n,e,t):h;if(m.h&&(m=m.h(e,t,m,o)||m,s+="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.use=Object.assign(e.use,m.u)),m.k&&(e.keep=Object.assign(e.keep,m.k)),m.a){s+="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});o=e.child=c(n,t,e.node),o.parent=e,o.n={...e.n},0<Object.keys(e.keep).length&&(o.keep={...e.keep}),s+="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});o=c(n,t,e.node),o.parent=e.parent,o.prev=e,o.n={...e.n},0<Object.keys(e.keep).length&&(o.keep={...e.keep}),s+="R`"+m.r+"`"}else l||(o=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,o,n),(null==n?void 0:n.isToken)&&(null==n?void 0:n.err))return this.bad(n,e,t,{is_open:l})}o.why=s,t.log&&t.log(a.S.node,t,e,n,o),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),o}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(null!=e.c){let t=e.c.n,n=e.c.d;null==t&&null==n||(e.c=function(e){let r=!0;if(null!=t)for(let n in t)r=r&&(null==e.n[n]||e.n[n]<=(null==t[n]?0:t[n]));return null!=n&&(r=r&&e.d<=n),r},null!=t&&(e.c.n=t),null!=n&&(e.c.d=n))}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]]),o=e;o.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,o.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}s.makeRuleSpec=g;var k={};Object.defineProperty(k,"__esModule",{value:!0}),k.makeParser=k.makeRuleSpec=k.makeRule=void 0;const x=t({}),_=n({});Object.defineProperty(k,"makeRule",{enumerable:!0,get:function(){return s.makeRule}}),Object.defineProperty(k,"makeRuleSpec",{enumerable:!0,get:function(){return s.makeRuleSpec}});class b{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,s.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,o=(0,_.makeToken)("#ZZ",(0,x.tokenize)("#ZZ",this.cfg),void 0,r.EMPTY,(0,_.makePoint)(-1)),a=(0,_.makeNoToken)(),u={uI:0,opts:this.options,cfg:this.cfg,meta:n||{},src:()=>e,root:()=>l,plgn:()=>t.internal().plugins,rule:{},sub:t.internal().sub,xs:-1,v2:o,v1:o,t0:a,t1:a,tC:-2,kI:-1,rs:[],rsI:0,rsm:this.rsm,log:void 0,F:(0,x.srcfmt)(this.cfg),use:{},NOTOKEN:a,NORULE:{}};u=(0,x.deep)(u,i);let c=(0,s.makeNoRule)(u);if(u.NORULE=c,u.rule=c,n&&x.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 x.JsonicError(x.S.unexpected,{src:e},u.t0,c,u)}let p=(0,x.badlex)((0,_.makeLex)(u),(0,x.tokenize)("#BD",this.cfg),u),d=this.rsm[this.cfg.rule.start];if(null==d)return;let f=(0,s.makeRule)(d,u);l=f;let h=2*(0,x.keys)(this.rsm).length*p.src.length*2*u.cfg.rule.maxmul,m=0;for(;c!==f&&m<h;)u.kI=m,u.rule=f,u.log&&u.log("",u.kI+":"),u.sub.rule&&u.sub.rule.map(e=>e(f,u)),f=f.process(u,p),u.log&&u.log(x.S.stack,u,f,p),m++;if(o.tin!==p.next(f).tin)throw new x.JsonicError(x.S.unexpected,{},u.t0,c,u);const g=u.root().node;if(this.cfg.result.fail.includes(g))throw new x.JsonicError(x.S.unexpected,{},u.t0,c,u);return g}clone(e,t){let n=new b(e,t);return n.rsm=Object.keys(this.rsm).reduce((e,t)=>(e[t]=(0,x.filterRules)(this.rsm[t],this.cfg),e),{}),n.norm(),n}norm(){(0,x.values)(this.rsm).map(e=>e.norm())}}k.makeParser=(...e)=>new b(...e);var y={};function j(e){const{deep:t}=e.util,{OB:n,CB:r,OS:i,CS:l,CL:o,CA:s,TX:a,ST:u,ZZ:c}=e.token,{VAL:p,KEY:d}=e.tokenSet,f=(e,t)=>{if(!t.cfg.rule.finish)return t.t0.src="END_OF_SOURCE",t.t0},h=e=>{const t=e.o0,n=u===t.tin||a===t.tin?t.val:t.src;e.use.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={}}).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,o],p:"val",u:{pair:!0},a:h,g:"map,pair,key,json"}]).bc((e,t)=>{e.use.pair&&(e.use.prev=e.node[e.use.key],e.node[e.use.key]=e.child.node)}).close([{s:[s],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.use.done&&e.node.push(e.child.node)}).close([{s:[s],r:"elem",g:"list,elem,json"},{s:[l],b:1,g:"list,elem,json"}])});const m=(e,n)=>{let r=e.use.key,i=e.child.node;const l=e.use.prev;i=void 0===i?null:i,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,o],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:[s],c:e=>0===e.d,p:"list",b:1,g:"list,imp,jsonic"},{s:[s],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:[s],c:{n:{dlist:0,dmap:0}},r:"list",u:{implist:!0},g:"list,val,imp,comma,jsonic"},{c:{n:{dlist:0,dmap:0}},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:f,g:"end,jsonic"}]).open([{s:[d,o],p:"pair",b:2,g:"pair,list,val,imp,jsonic"}],{append:!0}).close([{s:[r],c:{n:{pk:0}},g:"end,json"},{s:[r],b:1,g:"path,jsonic"},{s:[[s,l,...p]],b:1,g:"end,path,jsonic"},{s:[c],e:f,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.use.implist&&(e.node.push(e.prev.node),e.prev.node=e.node)}).open({c:e=>e.prev.use.implist,p:"elem"}).open([{s:[s],p:"elem",b:1,g:"list,elem,val,imp,jsonic"},{p:"elem",g:"list,elem.jsonic"}],{append:!0}).close([{s:[c],e:f,g:"end,jsonic"}],{append:!0})}),e.rule("pair",(e,t)=>{e.open([{s:[s],g:"map,pair,comma,jsonic"}],{append:!0}).bc((e,t)=>{e.use.pair&&m(e,t)}).close([{s:[r],c:{n:{pk:0}},b:1,g:"map,pair,json"},{s:[s,r],c:{n:{pk:0}},b:1,g:"map,pair,comma,jsonic"},{s:[s,c],g:"end,jsonic"},{s:[s],c:{n:{pk:0}},r:"pair",g:"map,pair,json"},{s:[s],c:{n:{dmap:1}},r:"pair",g:"map,pair,jsonic"},{s:[d],c:{n:{dmap:1}},r:"pair",b:1,g:"map,pair,imp,jsonic"},{s:[[r,s,l,...d]],b:1,g:"map,pair,imp,path,jsonic",c:e=>0<e.n.pk},{s:[l],e:e=>e.c0,g:"end,jsonic"},{s:[c],e:f,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:[s,s],b:2,u:{done:!0},a:e=>e.node.push(null),g:"list,elem,imp,null,jsonic"},{s:[s],u:{done:!0},a:e=>e.node.push(null),g:"list,elem,imp,null,jsonic"},{s:[d,o],e:t.cfg.list.property?void 0:(e,t)=>t.t0,p:"val",n:{pk:1,dmap:1},u:{done:!0,pair:!0},a:h,g:"elem,pair,jsonic"}]).bc((e,t)=>{!0===e.use.pair&&(e.use.prev=e.node[e.use.key],m(e,t))}).close([{s:[s,[l,c]],b:1,g:"list,elem,comma,jsonic"},{s:[s],r:"elem",g:"list,elem,json"},{s:[l],b:1,g:"list,elem,json"},{s:[c],e:f,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(y,"__esModule",{value:!0}),y.makeJSON=y.grammar=void 0,y.grammar=j,y.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 j(t),t};var O={};Object.defineProperty(O,"__esModule",{value:!0}),O.root=O.foo=O.S=O.EMPTY=O.AFTER=O.BEFORE=O.CLOSE=O.OPEN=O.makeTextMatcher=O.makeNumberMatcher=O.makeCommentMatcher=O.makeStringMatcher=O.makeLineMatcher=O.makeSpaceMatcher=O.makeFixedMatcher=O.makeParser=O.makeLex=O.makeRuleSpec=O.makeRule=O.makePoint=O.makeToken=O.make=O.util=O.JsonicError=O.Jsonic=void 0,Object.defineProperty(O,"OPEN",{enumerable:!0,get:function(){return r.OPEN}}),Object.defineProperty(O,"CLOSE",{enumerable:!0,get:function(){return r.CLOSE}}),Object.defineProperty(O,"BEFORE",{enumerable:!0,get:function(){return r.BEFORE}}),Object.defineProperty(O,"AFTER",{enumerable:!0,get:function(){return r.AFTER}}),Object.defineProperty(O,"EMPTY",{enumerable:!0,get:function(){return r.EMPTY}});const S=t({});Object.defineProperty(O,"JsonicError",{enumerable:!0,get:function(){return S.JsonicError}}),Object.defineProperty(O,"S",{enumerable:!0,get:function(){return S.S}});const E=n({});Object.defineProperty(O,"makePoint",{enumerable:!0,get:function(){return E.makePoint}}),Object.defineProperty(O,"makeToken",{enumerable:!0,get:function(){return E.makeToken}}),Object.defineProperty(O,"makeLex",{enumerable:!0,get:function(){return E.makeLex}}),Object.defineProperty(O,"makeFixedMatcher",{enumerable:!0,get:function(){return E.makeFixedMatcher}}),Object.defineProperty(O,"makeSpaceMatcher",{enumerable:!0,get:function(){return E.makeSpaceMatcher}}),Object.defineProperty(O,"makeLineMatcher",{enumerable:!0,get:function(){return E.makeLineMatcher}}),Object.defineProperty(O,"makeStringMatcher",{enumerable:!0,get:function(){return E.makeStringMatcher}}),Object.defineProperty(O,"makeCommentMatcher",{enumerable:!0,get:function(){return E.makeCommentMatcher}}),Object.defineProperty(O,"makeNumberMatcher",{enumerable:!0,get:function(){return E.makeNumberMatcher}}),Object.defineProperty(O,"makeTextMatcher",{enumerable:!0,get:function(){return E.makeTextMatcher}}),Object.defineProperty(O,"makeRule",{enumerable:!0,get:function(){return k.makeRule}}),Object.defineProperty(O,"makeRuleSpec",{enumerable:!0,get:function(){return k.makeRuleSpec}}),Object.defineProperty(O,"makeParser",{enumerable:!0,get:function(){return k.makeParser}});const N={tokenize:S.tokenize,srcfmt:S.srcfmt,clone:S.clone,charset:S.charset,trimstk:S.trimstk,makelog:S.makelog,badlex:S.badlex,extract:S.extract,errinject:S.errinject,errdesc:S.errdesc,configure:S.configure,parserwrap:S.parserwrap,mesc:S.mesc,escre:S.escre,regexp:S.regexp,prop:S.prop,str:S.str,clean:S.clean,deep:S.deep,omap:S.omap,keys:S.keys,values:S.values,entries:S.entries};function T(e,t){let n=!0;if("jsonic"===e)n=!1;else if("json"===e)return(0,y.makeJSON)(M);e="string"==typeof e?{}:e;let r={parser:null,config:null,plugins:[],sub:{lex:void 0,rule:void 0},mark:Math.random()},l=(0,S.deep)({},t?{...t.options}:!1===(null==e?void 0:e.defaults$)?{}:i.defaults,e||{}),o=function(e,t,n){var r;if(S.S.string===typeof e){let i=o.internal();return((null===(r=s.parser)||void 0===r?void 0:r.start)?(0,S.parserwrap)(s.parser):i.parser).start(e,o,t,n)}return e},s=e=>{if(null!=e&&S.S.object===typeof e){(0,S.deep)(l,e),(0,S.configure)(o,r.config,l);let t=o.internal().parser;r.parser=t.clone(l,r.config)}return{...o.options}},a={token:e=>(0,S.tokenize)(e,r.config,o),tokenSet:e=>(0,S.findTokenSet)(e,r.config),fixed:e=>r.config.fixed.ref[e],options:(0,S.deep)(s,l),config:()=>(0,S.deep)(r.config),parse:o,use:function(e,t){const n=e.name.toLowerCase(),r=(0,S.deep)({},e.defaults||{},t||{});o.options({plugin:{[n]:r}});let i=o.options.plugin[n];return o.internal().plugins.push(e),e.options=i,e(o,i)||o},rule:(e,t)=>o.internal().parser.rule(e,t)||o,make:e=>T(e,o),empty:e=>T({defaults$:!1,standard$:!1,grammar$:!1,...e||{}}),id:"Jsonic/"+Date.now()+"/"+(""+Math.random()).substring(2,8).padEnd(6,"0")+(null==s.tag?"":"/"+s.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)),o),util:N};if((0,S.defprop)(a.make,S.S.name,{value:S.S.make}),n?(0,S.assign)(o,a):(0,S.assign)(o,{empty:a.empty,parse:a.parse,sub:a.sub,id:a.id,toString:a.toString}),(0,S.defprop)(o,"internal",{value:()=>r}),t){for(let n in t)void 0===o[n]&&(o[n]=t[n]);o.parent=t;let e=t.internal();r.config=(0,S.deep)({},e.config),(0,S.configure)(o,r.config,l),(0,S.assign)(o.token,r.config.t),r.plugins=[...e.plugins],r.parser=e.parser.clone(l,r.config)}else{let e={...o,...a};r.config=(0,S.configure)(e,void 0,l),r.plugins=[],r.parser=(0,k.makeParser)(l,r.config),!1!==l.grammar$&&(0,y.grammar)(e)}return o}let M;O.util=N,O.make=T,O.root=M;let P=O.root=M=T("jsonic");return O.Jsonic=P,M.Jsonic=M,M.JsonicError=S.JsonicError,M.makeLex=E.makeLex,M.makeParser=k.makeParser,M.makeToken=E.makeToken,M.makePoint=E.makePoint,M.makeRule=k.makeRule,M.makeRuleSpec=k.makeRuleSpec,M.makeFixedMatcher=E.makeFixedMatcher,M.makeSpaceMatcher=E.makeSpaceMatcher,M.makeLineMatcher=E.makeLineMatcher,M.makeStringMatcher=E.makeStringMatcher,M.makeCommentMatcher=E.makeCommentMatcher,M.makeNumberMatcher=E.makeNumberMatcher,M.makeTextMatcher=E.makeTextMatcher,M.OPEN=r.OPEN,M.CLOSE=r.CLOSE,M.BEFORE=r.BEFORE,M.AFTER=r.AFTER,M.EMPTY=r.EMPTY,M.util=N,M.make=T,M.S=S.S,O.foo="FOO",O.default=P,O}))}).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,o={};let s=function(e,t){let n=e.token.bind(e),s=e.fixed.bind(e),y=t.op||{};const j=x(n,s,y,"prefix"),O=x(n,s,y,"suffix"),S=x(n,s,y,"infix"),E=x(n,s,y,"ternary"),N=function(e,t,n){return i(n).reduce((n,[r,i])=>{if(i.paren){let l=t(i.osrc)||e("#E"+i.osrc),s=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:s,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:o}}return n},{})}(n,s,y),T=r(N,([e,t])=>[void 0,void 0,t.ctin,t]);let M=Object.values({...N,...T}).reduce((e,t)=>(e[t.otkn]=t.osrc,e[t.ctkn]=t.csrc,e),{}),P=Object.values({...j,...O,...S,...E}).reduce((e,t)=>(e[t.tkn]=t.src,e),{});e.options({fixed:{token:{...P,...M}},lex:{match:{comment:{order:1e5}}}});const I=l(j).map(e=>e.tin),w=l(S).map(e=>e.tin),C=l(O).map(e=>e.tin),$=l(E).filter(e=>0===e.use.ternary.opI).map(e=>e.tin),R=l(E).filter(e=>1===e.use.ternary.opI).map(e=>e.tin),A=l(N).map(e=>e.otin),V=l(T).map(e=>e.ctin),L=0<I.length,D=0<w.length,F=0<C.length,Y=0<$.length&&0<R.length,B=0<A.length&&0<V.length,J=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&&R.includes(e.token.CL)&&(t.def.open.find(e=>e.g.includes("pair")).c=e=>!e.n.expr_ternary),t.open([L?{s:[I],b:1,n:{expr_prefix:1,expr_suffix:0},p:"expr",g:"expr,expr-prefix"}:null,B?{s:[A],b:1,p:"paren",c:(e,t)=>{let n=!0;return N[e.o0.tin].preval.required&&(n="val"===e.prev.name&&e.prev.use.paren_preval),n&&1===e.prev.i&&(t.root=()=>e),n},g:"expr,expr-paren"}:null]).close([Y?{s:[$],c:e=>!e.n.expr,b:1,r:"ternary",g:"expr,expr-ternary"}:null,D?{s:[w],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,B?{s:[V],c:e=>!!e.n.expr_paren,b:1,g:"expr,expr-paren"}:null,B?{s:[A],b:1,r:"val",c:e=>N[e.c0.tin].preval.active,u:{paren_preval:!0},g:"expr,expr-paren,expr-paren-preval"}:null,Y?{s:[R],c:e=>!!e.n.expr_ternary,b:1,g:"expr,expr-ternary"}:null,{s:[J],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.use.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([B&&{s:[V],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([B&&{s:[V],b:e=>K!==e.c0.tin||e.n.expr_paren?1:0}])}),e.rule("elem",e=>{e.close([B?{s:[V],b:1,c:e=>!!e.n.expr_paren,g:"expr,expr-paren,imp,close,list"}:null,B?{s:[A],b:1,r:"elem",g:"expr,expr-paren,imp,open,list"}:null])}),e.rule("pair",e=>{e.close([B?{s:[V],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([L?{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,j);e.node=k(e.parent.node)?_(e.parent.node,t):a(e,e.parent,t)}}:null,D?{s:[w],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,S);k(n.node)&&!v("ternary",n.node)?e.node=_(n.node,r):k(t.node)?(e.node=_(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,O);e.node=k(t.node)?_(t.node,n):a(e,t,n)},g:"expr,expr-suffix"}:null]).bc(e=>{var t;k(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([D?{s:[w],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,B?{s:[V],c:e=>!!e.n.expr_paren,b:1}:null,Y?{s:[$],c:e=>!e.n.expr_prefix,b:1,r:"ternary",g:"expr,expr-ternary"}:null,{s:[J],c:{d:0},n:{expr:0},r:"elem",a:e=>e.parent.node=e.node=[e.node],g:"expr,comma,list,top"},{s:[H],c:{d:0},n:{expr:0},b:1,r:"elem",a:e=>e.parent.node=e.node=[e.node],g:"expr,space,list,top"},{s:[J],c:{n:{pk:0}},n:{expr:0},b:1,h:h,g:"expr,list,val,imp,comma"},{c:{n:{pk:0,expr_suffix:0}},n:{expr:0},h:h,g:"expr,list,val,imp,space"},{n:{expr:0},g:"expr,expr-end"}]).ac(e=>{t.evaluate&&0===e.n.expr&&(e.parent.node=b(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([B?{s:[A,V],b:1,g:"expr,expr-paren,empty",c:e=>N[e.o0.tin].name===T[e.o1.tin].name,a:d(N)}:null,B?{s:[A],p:"val",n:{expr_paren:1,expr:0,expr_prefix:0,expr_suffix:0},g:"expr,expr-paren,open",a:d(N)}:null]).close([B?{s:[V],c:e=>{let t="expr_paren_depth_"+T[e.c0.tin].name;return!!e.n[t]},a:f(T),g:"expr,expr-paren,close"}:null])}),Y&&e.rule("ternary",e=>{e.open([{s:[$],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,E);e.use.expr_ternary_name=t.name,k(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.use.expr_ternary_paren=e.n.expr_paren||e.prev.use.expr_ternary_paren||0,e.n.expr_paren=0}},{p:"val",c:e=>2===e.prev.use.expr_ternary_step,a:e=>{e.use.expr_ternary_step=e.prev.use.expr_ternary_step,e.n.expr_paren=e.use.expr_ternary_paren=e.prev.use.expr_ternary_paren},g:"expr,expr-ternary,step"}]).close([{s:[R],c:e=>1===e.use.expr_ternary_step&&e.use.expr_ternary_name===E[e.c0.tin].name,r:"ternary",a:e=>{e.use.expr_ternary_step++,e.node.push(e.child.node)},g:"expr,expr-ternary,step"},{s:[[J,...V]],c:m,b:(e,t)=>V.includes(t.t0.tin)?1:0,r:(e,t)=>{var n;return V.includes(t.t0.tin)||0!==e.d&&(!e.prev.use.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&&V.includes(t.t0.tin)&&!e.prev.use.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.use.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 k(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:o}}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.use[n]=t.n[n]=1,t.node=void 0}}function f(e){return function(t){(k(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.use[r]===t.n[r]){const e=t.node;t.node=[n],void 0!==e&&(t.node[1]=e),t.parent.prev.use.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 h(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):k(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.use.expr_ternary_step}function g(e,t,n){e.n.expr_paren=e.prev.use.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&&k(t)&&!0===t[0][e]}function k(e){return null!=e&&e[0]&&e[0].OP_MARK===o}function x(e,t,n,r){return Object.entries(n).filter(([e,t])=>t[r]).reduce((n,[i,l])=>{let s="",a=-1,u="";u="string"==typeof l.src?l.src:l.src[0],a=t(u)||e("#E"+u),s=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:s,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:o};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),s=e(a),i.src=u,i.use={ternary:{opI:1}},i.tkn=s,i.tin=a,n[a]=i}return n},{})}function _(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=k(e[i])&&e[i][0].right<t.left?_(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;k(e[n])&&e[n][0].prefix&&e[n][0].right<t.left?_(e[n],t):e[n]=c([],t,e[n])}else c(e,t,p(e));return n}function b(e,t,n){return null==t?t:k(t)?n(e,t[0],t.slice(1).map(t=>b(e,t,n))):t}n.Expr=s,s.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=b;const y={prattify:_,opify:e=>(e.OP_MARK=o,e)};return n.testing=y,n}))}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{}),_$exprMin_19=_$exprMin_19.exports;var _$pathMin_27={exports:{}};(function(e){(function(){!function(t){"object"==typeof _$pathMin_27.exports?_$pathMin_27.exports=t():"function"==typeof define&&define.amd?define([],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=>{0===e.d&&(e.keep.path=[])})}),e.rule("map",e=>{e.bo(e=>{delete e.keep.index})}),e.rule("pair",e=>{e.ao(e=>{0<e.d&&e.use.pair&&(e.child.keep.path=[...e.keep.path,e.use.key],e.child.keep.key=e.use.key)})}),e.rule("list",e=>{e.bo(e=>{e.keep.index=-1})}),e.rule("elem",e=>{e.ao(e=>{0<e.d&&(e.keep.index=1+e.keep.index,e.child.keep.path=[...e.keep.path,e.keep.index],e.child.keep.key=e.keep.index,e.child.keep.index=e.keep.index)})})};return e.Path=t,t.defaults={},e}))}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{}),_$pathMin_27=_$pathMin_27.exports;var _$err_2={};Object.defineProperty(_$err_2,"__esModule",{value:!0}),_$err_2.descErr=void 0;const __Nil_1_2=_$Nil_14({});_$err_2.descErr=function e(t){var n,r,i;if(t instanceof __Nil_1_2.Nil){let e=t.primary||{},l=t.secondary||{};return t.msg="Cannot unify"+(0<(null===(n=t.path)||void 0===n?void 0:n.length)?" path "+t.path.join("."):"")+" "+(t.url?"in "+t.url:"")+":\nLHS: "+(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:"")+"\nRHS: "+(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",t}return t.map(t=>e(t))};var _$aontu_1={};Object.defineProperty(_$aontu_1,"__esModule",{value:!0}),_$aontu_1.util=_$aontu_1.Context=_$aontu_1.Lang=_$aontu_1.Nil=_$aontu_1.Aontu=void 0;const __lang_1_1=_$lang_3({});Object.defineProperty(_$aontu_1,"Lang",{enumerable:!0,get:function(){return __lang_1_1.Lang}});const __unify_1_1=_$unify_8({});Object.defineProperty(_$aontu_1,"Context",{enumerable:!0,get:function(){return __unify_1_1.Context}});const __Nil_1_1=_$Nil_14({});function Aontu(e,t){let n=util.options(e,t),r={},i=new __lang_1_1.Lang(n).parse(n.src,{deps:r}),l=new __unify_1_1.Unify(i),o=l.res,s=l.err;return(0,_$err_2.descErr)(l.err),o.deps=r,o.err=s,o}Object.defineProperty(_$aontu_1,"Nil",{enumerable:!0,get:function(){return __Nil_1_1.Nil}}),_$aontu_1.Aontu=Aontu;const util={options:(e,t)=>({src:"",print:0,..."string"==typeof e?{src:e}:e,...t||{}})};return _$aontu_1.util=util,_$aontu_1.default=Aontu,_$aontu_1}));
|
|
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 i=r({}),l=o({}),f=n({}),h=u({}),m=d({}),v=s({}),k=a({}),x=c({}),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(oe.Path);let t=(e,t)=>(e.path=[...t||[]],e);e.options({value:{def:{string:{val:e=>t(new y.ScalarTypeVal({peg:String}),e.keep.path)},number:{val:e=>t(new y.ScalarTypeVal({peg:Number}),e.keep.path)},integer:{val:e=>t(new y.ScalarTypeVal({peg:y.Integer}),e.keep.path)},boolean:{val:e=>t(new y.ScalarTypeVal({peg:Boolean}),e.keep.path)},nil:{val:e=>t(new m.Nil("literal"),e.keep.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 l.ConjunctVal&&i instanceof l.ConjunctVal||r instanceof l.ConjunctVal?(r.append(i),r):t(new l.ConjunctVal({peg:[r,i]}),e.path):(e.___merge=e.___merge||[],e.___merge.push(n),e)}}});let n={"conjunct-infix":(e,n,r)=>t(new l.ConjunctVal({peg:r}),e.keep.path),"disjunct-infix":(e,n,r)=>t(new i.DisjunctVal({peg:r}),e.keep.path),"dot-prefix":(e,n,r)=>t(new k.RefVal({peg:r,prefix:!0}),e.keep.path),"dot-infix":(e,n,r)=>t(new k.RefVal({peg:r}),e.keep.path),"star-prefix":(e,n,r)=>t(new v.PrefVal({peg:r[0]}),e.keep.path),"dollar-prefix":(e,n,r)=>r[0]instanceof k.RefVal?(r[0].absolute=!0,r[0]):t(new x.VarVal({peg:r[0]}),e.keep.path)};e.use(se.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&"],s=e.token.CL;e.rule("val",e=>(e.open([{s:[r,s],p:"map",b:2,g:"spread"}]).bc((e,n)=>{let r=e.node,i=typeof r;"string"===i?r=t(new y.StringVal({peg:e.node}),e.keep.path):"number"===i?r=Number.isInteger(e.node)?t(new y.IntegerVal({peg:e.node}),e.keep.path):t(new y.NumberVal({peg:e.node}),e.keep.path):"boolean"===i&&(r=t(new y.BooleanVal({peg:e.node}),e.keep.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,s],p:"pair",b:2,g:"spread"}]).bc(e=>{let n=e.node;if(n.___merge){let r={...n};delete r.___merge;let i=new h.MapVal({peg:r});e.node=t(new l.ConjunctVal({peg:[i,...n.___merge]}),e.keep.path)}else e.node=t(new h.MapVal({peg:n}),e.keep.path)}),e)),e.rule("list",e=>(e.bc(e=>{e.node=t(new f.ListVal({peg:e.node}),e.keep.path)}),e)),e.rule("pair",e=>(e.open([{s:[r,s],p:"val",u:{spread:!0},g:"spread"}]).ao(e=>{0<e.d&&e.use.spread&&(e.child.keep.path=[...e.keep.path,"&"],e.child.keep.key="&")}).bc(e=>{e.use.spread&&(e.node[h.MapVal.SPREAD]=e.node[h.MapVal.SPREAD]||{o:e.o0.src,v:[]},e.node[h.MapVal.SPREAD].v.push(e.child.node))}),e)),e.rule("elem",e=>(e.open([{s:[r,s],p:"val",u:{spread:!0},g:"spread"}]).bc(e=>{e.use.spread&&(e.node[f.ListVal.SPREAD]=e.node[f.ListVal.SPREAD]||{o:e.o0.src,v:[]},e.node[f.ListVal.SPREAD].v.push(e.child.node))}),e))};t.Lang=class{constructor(e){this.options={src:"",print:-1},this.options=Object.assign({},this.options,e);const t=function(e){var t,n;const r=e.require||require;let i=(0,q.makeMemResolver)({...(null===(t=e.resolver)||void 0===t?void 0:t.mem)||{}}),l=(0,G.makeFileResolver)(e=>"string"==typeof e?e:null==e?void 0:e.peg),s=(0,ee.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,c=[],u=i(a,t,n,r,o);return u.path=a,u.found||(c=c.concat(u.search),u=l(a,t,n,r,o),u.path=a,u.found||(c=c.concat(u.search),u=s(a,t,n,r,o),u.path=a,u.found||(u.search=c.concat(u.search)))),u}}(this.options);this.jsonic=g.Jsonic.make().use(j).use(b.MultiSource,{resolver:(null==e?void 0:e.resolver)||t})}parse(e,t){let n={multisource:{path:this.options.base,deps:t&&t.deps||void 0}};return t&&null!=t.log&&Number.isInteger(t.log)&&(n.log=t.log),this.jsonic(e,n)}}})),n=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ListVal=void 0;const n=i({}),r=p({}),l=o({}),s=d({}),a=m({});class c extends a.ValBase{constructor(e,t){if(super(e,t),this.spread={cj:void 0},null==this.peg)throw new Error("ListVal spec.peg undefined");let n=this.peg[c.SPREAD];if(delete this.peg[c.SPREAD],n&&"&"===n.o){let e=Array.isArray(n.v)?n.v:[n.v];this.spread.cj=new l.ConjunctVal({peg:e},t)}}unify(e,t){let i=!0,o=r.TOP===e?this:new c({peg:[]},t);o.spread.cj=this.spread.cj,e instanceof c&&(o.spread.cj=null==o.spread.cj?e.spread.cj:null==e.spread.cj?o.spread.cj:o.spread.cj=new l.ConjunctVal({peg:[o.spread.cj,e.spread.cj]},t)),o.done=this.done+1;let a=o.spread.cj||r.TOP;for(let r in this.peg){let e=t.descend(r),l=a.clone(null,e);o.peg[r]=(0,n.unite)(e,this.peg[r],l,"list-own"),i=i&&ae.DONE===o.peg[r].done}if(e instanceof c){let r=(0,n.unite)(t,e,void 0,"list-peer-list");for(let e in r.peg){let c=r.peg[e],u=o.peg[e],p=o.peg[e]=void 0===u?c:u instanceof s.Nil?u:c instanceof s.Nil?c:(0,n.unite)(t.descend(e),u,c,"list-peer");if(this.spread.cj){let n=t.descend(e),r=a.clone(null,n);o.peg[e]=new l.ConjunctVal({peg:[o.peg[e],r]},n),i=!1}i=i&&ae.DONE===p.done}}else if(r.TOP!==e)return s.Nil.make(t,"map",this,e);return o.done=i?ae.DONE:o.done,o}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=c,c.SPREAD=Symbol("spread")})),r=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DisjunctVal=void 0;const n=i({}),r=d({}),l=s({}),o=m({});class a extends o.ValBase{constructor(e,t,n){super(e,t)}append(e){return this.peg.push(e),this}unify(e,t){let i,l=!0,s=[];for(let r=0;r<this.peg.length;r++)s[r]=(0,n.unite)(t,this.peg[r],e),l=l&&ae.DONE===s[r].done;if(1<s.length){for(let t=0;t<s.length;t++)s[t]instanceof a&&s.splice(t,1,...s[t].peg);let e=new r.Nil;for(let t=0;t<s.length;t++)for(let n=t+1;n<s.length;n++)s[n].same(s[t])&&(s[n]=e);s=s.filter(e=>!(e instanceof r.Nil))}if(1==s.length)i=s[0];else{if(0==s.length)return r.Nil.make(t,"|:empty",this);i=new a({peg:s},t)}return i.done=l?ae.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 l.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=a})),i=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.unite=t.disjunct=void 0;const n=h({});Object.defineProperty(t,"disjunct",{enumerable:!0,get:function(){return n.disjunct}});const r=l({});Object.defineProperty(t,"unite",{enumerable:!0,get:function(){return r.unite}})})),l=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.unite=void 0;const n=o({}),i=r({}),l=d({}),c=s({}),u=a({}),f=p({});function h(e,t){return e}t.unite=(e,t,r,s)=>{let o=t,a="u";return!r||f.TOP!==t&&t?!t||f.TOP!==r&&r?t&&r&&f.TOP!==r&&(t instanceof l.Nil?(o=h(t),a="an"):r instanceof l.Nil?(o=h(r),a="bn"):t instanceof n.ConjunctVal?(o=t.unify(r,e),a="acj"):r instanceof n.ConjunctVal||r instanceof i.DisjunctVal||r instanceof u.RefVal||r instanceof c.PrefVal?(o=r.unify(t,e),a="bv"):t.constructor===r.constructor&&t.peg===r.peg?(o=h(t),a="up"):(o=t.unify(r,e),a="ab")):(o=t,a="a"):(o=r,a="b"),o&&o.unify||(o=l.Nil.make(e,"unite",t,r),a+="N"),ae.DONE!==o.done&&(o=o.unify(f.TOP,e),a+="T"),o}})),s=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PrefVal=void 0;const n=i({}),r=d({}),l=m({});class s extends l.ValBase{constructor(e,t){super(e,t),this.pref=e.pref||e.peg}unify(e,t){let i,l=!0;return i=new s(e instanceof s?{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),l=l&&ae.DONE===i.peg.done&&(null==i.pref||ae.DONE===i.pref.done),i.peg instanceof r.Nil?i=i.pref:i.pref instanceof r.Nil&&(i=i.peg),i.done=l?ae.DONE:this.done+1,i}same(e){if(null==e)return!1;let t=this.peg===e.peg||this.peg instanceof l.ValBase&&this.peg.same(e.peg),n=e instanceof s&&(this.pref===e.pref||this.pref instanceof l.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?void 0:this.peg:this.pref;return void 0===t?void 0:t.gen(e)}}t.PrefVal=s})),o=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ConjunctVal=t.norm=void 0;const n=i({}),r=p({}),l=u({}),s=d({}),o=a({}),c=m({});class f extends c.ValBase{constructor(e,t){super(e,t)}append(e){return this.peg.push(e),this}unify(e,t){const i=1e7*Math.random()%1e6|0;let a=!0,c=[];for(let r=0;r<this.peg.length;r++)if(c[r]=(0,n.unite)(t,this.peg[r],e,"cj-own"+i),a=a&&ae.DONE===c[r].done,c[r]instanceof s.Nil)return s.Nil.make(t,"&peer["+c[r].canon+","+e.canon+"]",this.peg[r],e);c=h(c);let u,p,d=[],m=c[0];e:for(let h=0;h<c.length;h++){if(ae.DONE!==m.done){let e=(0,n.unite)(t,m,r.TOP,"cj-peer-t0");if(ae.DONE!==e.done&&!(e instanceof l.MapVal||e instanceof o.RefVal)){d.push(e);continue e}m=e}let e=c[h+1];if(null==e)d.push(m);else if(m instanceof o.RefVal&&!(e instanceof o.RefVal))d.push(m),m=e;else if(u=(0,n.unite)(t,m,e,"cj-peer-t0t1"),a=a&&ae.DONE===u.done,u instanceof f)d.push(m),m=e;else{if(u instanceof s.Nil)return u;m=u}}return p=0===d.length?r.TOP:1===d.length?d[0]:new f({peg:d},t),p.done=a?ae.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){throw new Error("ConjuntVal-gen")}}function h(e){let t=[];for(let n=0,r=0;n<e.length;n++,r++)e[n]instanceof f?(t.push(...e[n].peg),r+=e[n].peg.length-1):t[r]=e[n];return t}t.ConjunctVal=f,t.norm=h})),a=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RefVal=void 0;const n=i({}),r=p({}),l=o({}),s=u({}),a=d({}),f=c({}),h=m({});class g extends h.ValBase{constructor(e,t){super(e,t),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 r.StringVal?(t=e.peg,this.peg.push(t)):e instanceof f.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 i=this;if(this.id!==e.id){let s=null==t?this:this.find(t);s=s||this,null==s&&this.canon===e.canon?i=this:s instanceof g?r.TOP===e?i=this:e instanceof a.Nil?i=a.Nil.make(t,"ref["+this.peg+"]",this,e):this.canon===e.canon?i=this:(this.done=ae.DONE===this.done?ae.DONE:this.done+1,i=new l.ConjunctVal({peg:[this,e]},t)):i=(0,n.unite)(t,s,e,"ref"),i.done=ae.DONE===i.done?ae.DONE:this.done+1}return i}find(e){let t=this.path,n=[],i=[];for(let s=0;s<this.peg.length;s++){let t=this.peg[s];if(t instanceof f.VarVal){let n=t.peg,l=n?""+n.peg:"";if("KEY"===l){if(s!==this.peg.length-1)return;i.push(l)}if("SELF"===l){if(0!==s)return;i.push(l)}else if("PARENT"===l){if(0!==s)return;i.push(l)}else if(0===i.length){if(t=t.unify(r.TOP,e),t instanceof a.Nil)return;t=""+t.peg}}else n.push(t)}t=this.absolute?n:t.slice(0,i.includes("SELF")?0:(i.includes("PARENT"),-1)).concat(n),t=t.reduce((e,t)=>("."===t?e.length=e.length-1:e.push(t),e),[]);let l=e.root,o=0;for(;o<t.length;o++){let e=t[o];if(!(l instanceof s.MapVal))break;l=l.peg[e]}if(o===t.length){if(i.includes("KEY")){let n=t[t.length-1],i=new r.StringVal({peg:null==n?"":n},e);return i.done=ae.DONE,i.path=this.path,i}return l}}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){throw e&&e.err.push(a.Nil.make(e,"ref",this.peg,void 0)),new Error("REF-gen "+this.peg)}}t.RefVal=g})),c=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VarVal=void 0;const n=p({}),r=d({}),i=a({}),l=m({});class s extends l.ValBase{constructor(e,t){super(e,t)}unify(e,t){let l,s;return this.peg.isVal?this.peg instanceof i.RefVal?(this.peg.absolute=!0,s=this.peg):s=this.peg.unify(e):s=new n.StringVal({peg:""+this.peg},t),s instanceof i.RefVal||ae.DONE!==s.done?l=s:s instanceof n.StringVal?(l=t.var[s.peg],null==l&&(l=r.Nil.make(t,"var["+s.peg+"]",this,e))):l=r.Nil.make(t,"var["+typeof s+"]",this,e),l}same(e){return null!=e&&e instanceof s&&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){throw e&&e.err.push(r.Nil.make(e,"var",this.peg,void 0)),new Error("REF-var "+this.peg)}}t.VarVal=s})),u=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MapVal=void 0;const n=i({}),r=p({}),l=o({}),s=d({}),a=m({});class c extends a.ValBase{constructor(e,t){if(super(e,t),this.spread={cj:void 0},null==this.peg)throw new Error("MapVal spec.peg undefined");let n=this.peg[c.SPREAD];if(delete this.peg[c.SPREAD],n&&"&"===n.o){let e=Array.isArray(n.v)?n.v:[n.v];this.spread.cj=new l.ConjunctVal({peg:e},t)}}unify(e,t){let i=!0,o=r.TOP===e?this:new c({peg:{}},t);o.spread.cj=this.spread.cj,e instanceof c&&(o.spread.cj=null==o.spread.cj?e.spread.cj:null==e.spread.cj?o.spread.cj:o.spread.cj=new l.ConjunctVal({peg:[o.spread.cj,e.spread.cj]},t)),o.done=this.done+1;let a=o.spread.cj||r.TOP;for(let r in this.peg){let e=t.descend(r),l=a.clone(null,e);o.peg[r]=(0,n.unite)(e,this.peg[r],l,"map-own"),i=i&&ae.DONE===o.peg[r].done}if(e instanceof c){let r=(0,n.unite)(t,e,void 0,"map-peer-map");for(let e in r.peg){let c=r.peg[e],u=o.peg[e],p=o.peg[e]=void 0===u?c:u instanceof s.Nil?u:c instanceof s.Nil?c:(0,n.unite)(t.descend(e),u,c,"map-peer");if(this.spread.cj){let n=t.descend(e),r=a.clone(null,n);o.peg[e]=new l.ConjunctVal({peg:[o.peg[e],r]},n),i=!1}else i=i&&ae.DONE===p.done}}else if(r.TOP!==e)return s.Nil.make(t,"map",this,e);return o.done=i?ae.DONE:o.done,o}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 a.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=c,c.SPREAD=Symbol("spread")})),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=f({}),i=t({}),l=d({}),s=m({});class o extends s.ValBase{constructor(){super(null),this.isVal=!0,this.id=0,this.top=!0,this.peg=void 0,this.done=ae.DONE,this.path=[],this.row=-1,this.col=-1,this.url="",this.done=ae.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 c{}n.Integer=c;class u extends s.ValBase{constructor(e,t){super(e,t),this.done=ae.DONE}unify(e,t){if(e instanceof p)return e.type===this.peg||Number===this.peg&&c===e.type?e:l.Nil.make(t,"no-scalar-unify",this,e);if(e instanceof u){if(Number===this.peg&&c===e.peg)return e;if(Number===e.peg&&c===this.peg)return this}return l.Nil.make(t,"scalar-type",this,e)}get canon(){return this.peg.name.toLowerCase()}same(e){return e instanceof u?this.peg===e.peg:super.same(e)}gen(e){}}n.ScalarTypeVal=u;class p extends s.ValBase{constructor(e,t){super(e,t),this.type=e.type,this.done=ae.DONE}clone(e,t){return super.clone({peg:this.peg,type:this.type,...e||{}},t)}unify(e,t){return e instanceof u?e.unify(this,t):e.top?this:l.Nil.make(t,"scalar",this,e)}get canon(){return this.peg.toString()}same(e){return e instanceof p?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)}unify(e,t){return e instanceof p&&e.type===c?e: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:c},t)}unify(e,t){return e instanceof u&&e.peg===Number||e instanceof p&&e.type===Number&&this.peg===e.peg?this:super.unify(e,t)}},n.StringVal=class extends p{constructor(e,t){super({peg:e.peg,type:String},t)}unify(e,t){return super.unify(e,t)}get canon(){return JSON.stringify(this.peg)}};class h extends p{constructor(e,t){super({peg:e.peg,type:Boolean},t)}unify(e,t){return super.unify(e,t)}}n.BooleanVal=h,h.TRUE=new h({peg:!0},new r.Context({vc:1,root:a})),h.FALSE=new h({peg:!1},new r.Context({vc:2,root:a}))})),d=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,t),this.nil=!0,this.msg="",this.why=null==e?void 0:e.why,this.done=ae.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){throw new Error("Nil-gen: "+this.why)}}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,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Unify=n.Context=void 0;const r=p({}),l=t({}),s=i({});class o{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 o({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=o,n.Unify=class{constructor(e,t,n){this.lang=t||new l.Lang,"string"==typeof e&&(e=this.lang.parse(e)),this.root=e,this.res=e,this.err=[];let i=e;for(n=n||new o({root:i,err:this.err}),this.cc=0;this.cc<9&&ae.DONE!==i.done;this.cc++)n.cc=this.cc,i=(0,s.unite)(n,i,r.TOP),n=n.clone({root:i});this.res=i}}})),h=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.disjunct=void 0;const n=r({});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 c=Object.defineProperty;t.defprop=c;const u=(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=u;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),k(this)}toJSON(){return{...this,__error:!0,name:this.name,message:this.message,stack:this.stack}}}function f(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 h(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 c=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,u=t&&a?c:JSON.stringify(c);return u=null==u?"":u,u.replace(/\n/g,"\n ")})}function k(e){e.stack&&(e.stack=e.stack.split("\n").filter(e=>!e.includes("jsonic/jsonic")).map(e=>e.replace(/ at /,"at ")).join("\n"))}function x(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"),c=e.substring(i,i+333).split("\n"),u=2+(r.EMPTY+(l+2)).length,p=l<3?1:l-2,d=e=>"\x1b[34m"+(r.EMPTY+p++).padStart(u," ")+" | \x1b[0m"+(null==e?r.EMPTY:e),f=a.length;return[2<f?d(a[f-3]):null,1<f?d(a[f-2]):null,d(a[f-1]+c[0])," ".repeat(u)+" "+" ".repeat(s-1)+"\x1b[31m"+"^".repeat(o.length||1)+" "+t+"\x1b[0m",d(c[1]),d(c[2])].filter(e=>null!=e).join("\n")}function b(e,t,n,r,i){var l,s,o;try{let a=i.cfg,c=i.meta,u=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 "+u," \x1b[34m--\x3e\x1b[0m "+(c&&c.fileName||"<no-file>")+":"+n.rI+":"+n.cI,x(i.src(),u,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="+f(n.tin,i.cfg)+(null==n.why?"":"~"+n.why)+"; plugins="+i.plgn().map(e=>e.name).join(",")+"--\x1b[0m\n"].join("\n"),h={internal:{token:n,ctx:i}};return h={...Object.create(h),message:d,code:e,details:t,meta:c,fileName:c?c.fileName:void 0,lineNumber:n.rI,columnNumber:n.cI},h}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 O(t<n.length?n.substring(0,t-3)+"...":n,t)}function O(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 S(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,c,p,d,g,v,k,x,b,y,j,O,N,_,P,w,T,I,M,C,R,A,V,L,$,D,Y,F,J,B,U,K,q,z,G,Z,W,H,X,Q,ee,te,ne,re,ie,le,se,oe,ae;const ce=t||{};ce.t=ce.t||{},ce.tI=ce.tI||1;const ue=e=>f(e,ce);!1!==n.standard$&&(ue("#BD"),ue("#ZZ"),ue("#UK"),ue("#AA"),ue("#SP"),ue("#LN"),ue("#CM"),ue("#NR"),ue("#ST"),ue("#TX"),ue("#VL")),ce.safe={key:!1!==(null===(r=n.safe)||void 0===r?void 0:r.key)},ce.fixed={lex:!!(null===(i=n.fixed)||void 0===i?void 0:i.lex),token:n.fixed?u(S(n.fixed.token),([e,t])=>[t,f(e,ce)]):{},ref:void 0,check:null===(c=n.fixed)||void 0===c?void 0:c.check},ce.fixed.ref=u(ce.fixed.token,([e,t])=>[e,t]),ce.fixed.ref=Object.assign(ce.fixed.ref,u(ce.fixed.ref,([e,t])=>[t,e])),ce.match={lex:!!(null===(p=n.match)||void 0===p?void 0:p.lex),value:n.match?u(S(n.match.value),([e,t])=>[e,t]):{},token:n.match?u(S(n.match.token),([e,t])=>[f(e,ce),t]):{},check:null===(d=n.match)||void 0===d?void 0:d.check},u(ce.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=>ue(e)),e),{}):{};ce.tokenSet=ce.tokenSet||{},o(pe).map(e=>{let t=e[0],n=e[1];ce.tokenSet[t]?(ce.tokenSet[t].length=0,ce.tokenSet[t].push(...n)):ce.tokenSet[t]=n}),ce.tokenSetTins=o(ce.tokenSet).reduce((e,t)=>(e[t[0]]=e[t[0]]||{},t[1].map(n=>e[t[0]][n]=!0),e),{}),ce.tokenSetTins.IGNORE=ce.tokenSetTins.IGNORE||{},ce.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===(k=n.space)||void 0===k?void 0:k.check},ce.line={lex:!!(null===(x=n.line)||void 0===x?void 0:x.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===(O=n.line)||void 0===O?void 0:O.check},ce.text={lex:!!(null===(N=n.text)||void 0===N?void 0:N.lex),modify:((null===(_=ce.text)||void 0===_?void 0:_.modify)||[]).concat(([null===(P=n.text)||void 0===P?void 0:P.modify]||[]).flat()).filter(e=>null!=e),check:null===(w=n.text)||void 0===w?void 0:w.check},ce.number={lex:!!(null===(T=n.number)||void 0===T?void 0:T.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},ce.value={lex:!!(null===($=n.value)||void 0===$?void 0:$.lex),def:o((null===(D=n.value)||void 0===D?void 0:D.def)||{}).reduce((e,t)=>(null==t[1]||!1===t[1]||t[1].match||(e[t[0]]=t[1]),e),{}),defre:o((null===(Y=n.value)||void 0===Y?void 0:Y.def)||{}).reduce((e,t)=>(t[1]&&t[1].match&&(e[t[0]]=t[1],e[t[0]].consume=!!e[t[0]].consume),e),{})},ce.rule={start:null==(null===(F=n.rule)||void 0===F?void 0:F.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):[]},ce.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},ce.list={property:!!(null===(G=n.list)||void 0===G?void 0:G.property)};let de=Object.keys(ce.fixed.token).sort((e,t)=>t.length-e.length).map(e=>m(e)).join("|"),fe=(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("|"):"",he=["([",m(l(E(ce.space.lex&&ce.space.chars,ce.line.lex&&ce.line.chars)).join("")),"]",("string"==typeof n.ender?n.ender.split(""):Array.isArray(n.ender)?n.ender:[]).map(e=>"|"+m(e)).join(""),""===de?"":"|",de,""===fe?"":"|",fe,"|$)"];return ce.rePart={fixed:de,ender:he,commentStart:fe},ce.re={ender:h(null,...he),rowChars:h(null,m(null===(W=n.line)||void 0===W?void 0:W.rowChars)),columns:h(null,"["+m(null===(H=n.line)||void 0===H?void 0:H.chars)+"]","(.*)$")},ce.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(ce,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):[]},ce.parse={prepare:s(null===(te=n.parse)||void 0===te?void 0:te.prepare)},ce.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}},ce.error=n.error||{},ce.hint=n.hint||{},(null===(ae=n.config)||void 0===ae?void 0:ae.modify)&&l(n.config.modify).forEach(e=>n.config.modify[e](ce,n)),ce.debug.print.config&&ce.debug.get_console().dir(ce,{depth:null}),ce.result={fail:[]},n.result&&(ce.result.fail=[...n.result.fail]),a(e.options,n),a(e.token,ce.t),a(e.tokenSet,ce.tokenSet),a(e.fixed,ce.fixed.ref),ce},t.tokenize=f,t.findTokenSet=function(e,t){return t.tokenSet[e]},t.mesc=function(e,t){return(t=new String(e)).esc=!0,t},t.regexp=h,t.escre=m,t.deep=g,t.errinject=v,t.trimstk=k,t.extract=x,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=O,t.clone=function(e){return g(Object.create(Object.getPrototypeOf(e)),e)},t.charset=E,t.clean=S,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,c=0,u=r.EMPTY,p=o.message.match(/^Unexpected token (.) .*position\s+(\d+)/i);if(p){u=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--;c=Math.max(t.substring(e,s).length,0)}let h=o.token||(0,i.makeToken)("#UK",f("#UK",n.internal().config),void 0,u,(0,i.makePoint)(u.length,s,o.lineNumber||a,o.columnNumber||c));throw new d(o.code||"json",o.details||{msg:o.message},h,{},o.ctx||{uI:-1,opts:n.options,cfg:n.internal().config,token:h,meta:l,src:()=>t,root:()=>{},plgn:()=>n.internal().plugins,inst:()=>n,rule:{name:"no-rule"},sub:{},xs:-1,v2:h,v1:h,t0:h,t1:h,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 c(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,c=s.cI;for(let i of r)if(o.startsWith(i.start)){let n=o.length,r=i.start.length;for(c+=i.start.length;r<n&&!e.line.chars[o[r]];)c++,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),u=t.token("#CM",void 0,l,s);return s.sI+=l.length,s.cI=c,s.rI=a,u}for(let r of l)if(o.startsWith(r.start)){let n=o.length,l=r.start.length,u=r.end;for(c+=r.start.length;l<n&&!o.substring(l).startsWith(u);)e.line.rowChars[o[l]]&&(a++,c=0),c++,l++;if(o.substring(l).startsWith(u)){if(c+=u.length,r.eatline)for(;l<n&&e.line.chars[o[l]];)e.line.rowChars[o[l]]&&a++,l++;let i=o.substring(0,l+u.length),p=t.token("#CM",void 0,i,s);return s.sI+=i.length,s.rI=a,s.cI=c,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,u=s.match(n);if(u){let n,p=u[1],d=u[2];if(null!=p){let t=p.length;if(0<t){let c;if(e.value.lex)if(void 0!==(c=o[p]))n=r.token("#VL",c.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=c(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],u=!0;if(null!=r&&(u=!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 u&&(n=c(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:c,allowUnknown:u,replaceCodeMap:p,hasReplace:d}=n,{pnt:f,src:h}=t,{sI:m,rI:g,cI:v}=f,k=h.length;if(l[h[m]]){const l=h[m],x=m,b=g,y=c[l];++m,++v;let j,O=[];for(;m<k;m++){v++;let r=h[m];if(j=void 0,l===r){m++;break}if(o===r){m++,v++;let e=s[h[m]];if(null!=e)O.push(e);else if("x"===h[m]){m++;let e=parseInt(h.substring(m,m+2),16);if(isNaN(e)){if(n.abandon)return;return m-=2,v-=2,f.sI=m,f.cI=v,t.bad(i.S.invalid_ascii,m,m+4)}let r=String.fromCharCode(e);O.push(r),m+=1,v+=2}else if("u"===h[m]){m++;let e="{"===h[m]?(m++,1):0,r=e?6:4,l=parseInt(h.substring(m,m+r),16);if(isNaN(l)){if(n.abandon)return;return m=m-2-e,v-=2,f.sI=m,f.cI=v,t.bad(i.S.invalid_unicode,m,m+r+2+2*e)}let s=String.fromCodePoint(l);O.push(s),m+=r-1+e,v+=r+e}else{if(!u){if(n.abandon)return;return f.sI=m,f.cI=v-1,t.bad(i.S.unexpected,m,m+1)}O.push(h[m])}}else if(d&&void 0!==(j=p[h.charCodeAt(m)]))O.push(j),v++;else{let r=m,s=l.charCodeAt(0),o=h.charCodeAt(m);for(;(!d||void 0===(j=p[o]))&&m<k&&32<=o&&s!==o&&a!==o;)o=h.charCodeAt(++m),v++;if(v--,void 0===j&&o<32){if(!y||!e.line.chars[h[m]]){if(n.abandon)return;return f.sI=m,f.cI=v,t.bad(i.S.unprintable,m,m+1)}e.line.rowChars[h[m]]&&(f.rI=++g),v=1,O.push(h.substring(r,m+1))}else O.push(h.substring(r,m)),m--}}if(h[m-1]!==l||f.sI===m-1){if(n.abandon)return;return f.rI=b,t.bad(i.S.unterminated_string,x,m)}const E=t.token("#ST",O.join(r.EMPTY),h.substring(f.sI,m),f);return f.sI=m,f.rI=g,f.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,c=e.line.single;for(c&&(n={});r[s[o]]&&!(n&&(n[s[o]]=(n[s[o]]||0)+1,c&&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 u{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,c;return"string"==typeof e?(c=e,o=(0,i.tokenize)(c,this.cfg)):(o=e,c=(0,i.tokenize)(e,this.cfg)),a(c,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(c){l=l||this.token("#BD",void 0,this.src[o.sI],o,{err:c},c.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 u(...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 c{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.use=Object.create(null),this.keep=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)}toString(){return"[Rule "+this.name+"~"+this.i+"]"}}const u=(...e)=>new c(...e);o.makeRule=u,o.makeNoRule=e=>u(g(e.cfg,{}),e);class p{constructor(){this.p=r.EMPTY,this.r=r.EMPTY,this.b=0}}const d=(...e)=>new p(...e),f=d(),h=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",c=this.def,p=l?c.open:c.close,d=l?e.bo?c.bo:null:e.bc?c.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=f;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,c=0,u=!0,p=1<<l.cfg.t.AA-1,d=l.cfg.tokenSetTins.IGNORE;function h(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(c=0;c<m;c++){o=t[c];let n=!1,r=!1;if(u=!0,o.S0){let e=(l.t0=l.NOTOKEN!==l.t0?l.t0:l.t0=h(i,o,c,0)).tin;if(n=!0,u=!!(o.S0[e/31|0]&(1<<e%31-1|p)),u&&(r=null!=o.S1,o.S1)){let e=(l.t1=l.NOTOKEN!==l.t1?l.t1:l.t1=h(i,o,c,1)).tin;r=!0,u=!!(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)),u&&o.c&&(u=u&&o.c(i,l,s)),u)break;o=null}u||(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=c<t.length;return l.log&&l.log(a.S.parse,l,i,n,g,u,c,o,s),s}(l,p,n,e,t):h;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.use=Object.assign(e.use,m.u)),m.k&&(e.keep=Object.assign(e.keep,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=u(n,t,e.node),s.parent=e,s.n={...e.n},0<Object.keys(e.keep).length&&(s.keep={...e.keep}),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=u(n,t,e.node),s.parent=e.parent,s.prev=e,s.n={...e.n},0<Object.keys(e.keep).length&&(s.keep={...e.keep}),o+="R`"+m.r+"`"}else l||(s=t.rs[--t.rsI]||t.NORULE);let g=l?e.ao?c.ao:null:e.ac?c.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(null!=e.c){let t=e.c.n,n=e.c.d;null==t&&null==n||(e.c=function(e){let r=!0;if(null!=t)for(let n in t)r=r&&(null==e.n[n]||e.n[n]<=(null==t[n]?0:t[n]));return null!=n&&(r=r&&e.d<=n),r},null!=t&&(e.c.n=t),null!=n&&(e.c.d=n))}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 k={};Object.defineProperty(k,"__esModule",{value:!0}),k.makeParser=k.makeRuleSpec=k.makeRule=void 0;const x=t({}),b=n({});Object.defineProperty(k,"makeRule",{enumerable:!0,get:function(){return o.makeRule}}),Object.defineProperty(k,"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,x.tokenize)("#ZZ",this.cfg),void 0,r.EMPTY,(0,b.makePoint)(-1)),a=(0,b.makeNoToken)(),c={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,x.srcfmt)(this.cfg),use:{},NOTOKEN:a,NORULE:{}};c=(0,x.deep)(c,i);let u=(0,o.makeNoRule)(c);if(c.NORULE=u,c.rule=u,n&&x.S.function===typeof n.log&&(c.log=n.log),this.cfg.parse.prepare.forEach(e=>e(t,c,n)),""===e){if(this.cfg.lex.empty)return this.cfg.lex.emptyResult;throw new x.JsonicError(x.S.unexpected,{src:e},c.t0,u,c)}let p=(0,x.badlex)((0,b.makeLex)(c),(0,x.tokenize)("#BD",this.cfg),c),d=this.rsm[this.cfg.rule.start];if(null==d)return;let f=(0,o.makeRule)(d,c);l=f;let h=2*(0,x.keys)(this.rsm).length*p.src.length*2*c.cfg.rule.maxmul,m=0;for(;u!==f&&m<h;)c.kI=m,c.rule=f,c.log&&c.log("",c.kI+":"),c.sub.rule&&c.sub.rule.map(e=>e(f,c)),f=f.process(c,p),c.log&&c.log(x.S.stack,c,f,p),m++;if(s.tin!==p.next(f).tin)throw new x.JsonicError(x.S.unexpected,{},c.t0,u,c);const g=c.root().node;if(this.cfg.result.fail.includes(g))throw new x.JsonicError(x.S.unexpected,{},c.t0,u,c);return g}clone(e,t){let n=new y(e,t);return n.rsm=Object.keys(this.rsm).reduce((e,t)=>(e[t]=(0,x.filterRules)(this.rsm[t],this.cfg),e),{}),n.norm(),n}norm(){(0,x.values)(this.rsm).map(e=>e.norm())}}k.makeParser=(...e)=>new y(...e);var j={};function O(e){const{deep:t}=e.util,{OB:n,CB:r,OS:i,CS:l,CL:s,CA:o,TX:a,ST:c,ZZ:u}=e.token,{VAL:p,KEY:d}=e.tokenSet,f=(e,t)=>{if(!t.cfg.rule.finish)return t.t0.src="END_OF_SOURCE",t.t0},h=e=>{const t=e.o0,n=c===t.tin||a===t.tin?t.val:t.src;e.use.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:[u],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:h,g:"map,pair,key,json"}]).bc((e,t)=>{e.use.pair&&(e.use.prev=e.node[e.use.key],e.node[e.use.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.use.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.use.key,i=e.child.node;const l=e.use.prev;i=void 0===i?null:i,e.use.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:[u],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:{n:{dlist:0,dmap:0}},r:"list",u:{implist:!0},g:"list,val,imp,comma,jsonic"},{c:{n:{dlist:0,dmap:0}},r:"list",u:{implist:!0},g:"list,val,imp,space,jsonic",b:1},{s:[u],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,u],b:1,e:f,g:"end,jsonic"}]).open([{s:[d,s],p:"pair",b:2,g:"pair,list,val,imp,jsonic"}],{append:!0}).close([{s:[r],c:{n:{pk:0}},g:"end,json"},{s:[r],b:1,g:"path,jsonic"},{s:[[o,l,...p]],b:1,g:"end,path,jsonic"},{s:[u],e:f,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.use.implist&&(e.node.push(e.prev.node),e.prev.node=e.node)}).open({c:e=>e.prev.use.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:[u],e:f,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.use.pair&&m(e,t)}).close([{s:[r],c:{n:{pk:0}},b:1,g:"map,pair,json"},{s:[o,r],c:{n:{pk:0}},b:1,g:"map,pair,comma,jsonic"},{s:[o,u],g:"end,jsonic"},{s:[o],c:{n:{pk:0}},r:"pair",g:"map,pair,json"},{s:[o],c:{n:{dmap:1}},r:"pair",g:"map,pair,jsonic"},{s:[d],c:{n:{dmap:1}},r:"pair",b:1,g:"map,pair,imp,jsonic"},{s:[[r,o,l,...d]],b:1,g:"map,pair,imp,path,jsonic",c:e=>0<e.n.pk},{s:[l],e:e=>e.c0,g:"end,jsonic"},{s:[u],e:f,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:h,g:"elem,pair,jsonic"}]).bc((e,t)=>{!0===e.use.pair&&(e.use.prev=e.node[e.use.key],m(e,t))}).close([{s:[o,[l,u]],b:1,g:"list,elem,comma,jsonic"},{s:[o],r:"elem",g:"list,elem,json"},{s:[l],b:1,g:"list,elem,json"},{s:[u],e:f,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=O,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 O(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 S=t({});Object.defineProperty(E.exports,"JsonicError",{enumerable:!0,get:function(){return S.JsonicError}}),Object.defineProperty(E.exports,"S",{enumerable:!0,get:function(){return S.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 k.makeRule}}),Object.defineProperty(E.exports,"makeRuleSpec",{enumerable:!0,get:function(){return k.makeRuleSpec}}),Object.defineProperty(E.exports,"makeParser",{enumerable:!0,get:function(){return k.makeParser}});const _={tokenize:S.tokenize,srcfmt:S.srcfmt,clone:S.clone,charset:S.charset,trimstk:S.trimstk,makelog:S.makelog,badlex:S.badlex,extract:S.extract,errinject:S.errinject,errdesc:S.errdesc,configure:S.configure,parserwrap:S.parserwrap,mesc:S.mesc,escre:S.escre,regexp:S.regexp,prop:S.prop,str:S.str,clean:S.clean,deep:S.deep,omap:S.omap,keys:S.keys,values:S.values,entries:S.entries};function P(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,S.deep)({},t?{...t.options}:!1===(null==e?void 0:e.defaults$)?{}:i.defaults,e||{}),s=function(e,t,n){var r;if(S.S.string===typeof e){let i=s.internal();return((null===(r=o.parser)||void 0===r?void 0:r.start)?(0,S.parserwrap)(o.parser):i.parser).start(e,s,t,n)}return e},o=e=>{if(null!=e&&S.S.object===typeof e){(0,S.deep)(l,e),(0,S.configure)(s,r.config,l);let t=s.internal().parser;r.parser=t.clone(l,r.config)}return{...s.options}},a={token:e=>(0,S.tokenize)(e,r.config,s),tokenSet:e=>(0,S.findTokenSet)(e,r.config),fixed:e=>r.config.fixed.ref[e],options:(0,S.deep)(o,l),config:()=>(0,S.deep)(r.config),parse:s,use:function(e,t){if(S.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,S.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=>P(e,s),empty:e=>P({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,S.defprop)(a.make,S.S.name,{value:S.S.make}),n?(0,S.assign)(s,a):(0,S.assign)(s,{empty:a.empty,parse:a.parse,sub:a.sub,id:a.id,toString:a.toString}),(0,S.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,S.deep)({},e.config),(0,S.configure)(s,r.config,l),(0,S.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,S.configure)(e,void 0,l),r.plugins=[],r.parser=(0,k.makeParser)(l,r.config),!1!==l.grammar$&&(0,j.grammar)(e)}return s}let w;E.exports.util=_,E.exports.make=P,E.exports.root=w;let T=E.exports.root=w=P("jsonic");return E.exports.Jsonic=T,w.Jsonic=w,w.JsonicError=S.JsonicError,w.makeLex=N.makeLex,w.makeParser=k.makeParser,w.makeToken=N.makeToken,w.makePoint=N.makePoint,w.makeRule=k.makeRule,w.makeRuleSpec=k.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=P,w.S=S.S,E.exports.default=T,E.exports=T,E.exports}))}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{}),g=g.exports;var v={exports:{}};(function(e){(function(){!function(t){"object"==typeof v.exports?v.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,c=n.close,u=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,f="#CD_"+o,h=e.fixed(a),m=null==c?null:e.fixed(c);if(null!=h)throw new Error("Directive open token already in use: "+a);p[d]=a,null==m&&null!=c&&(p[f]=c),e.options({fixed:{token:p},error:{[o+"_close"]:null==c?null:"directive "+o+' close "'+c+'" without open "'+a+'"'},hint:{[o+"_close"]:null==c?null:`\nThe ${o} directive must start with the characters "${a}" and end\nwith the characters "${c}". The end characters "${c}" may not\nappear without the start characters "${a}" appearing first:\n"${a}...${c}".\n`}});let g=e.token.CA;h=e.fixed(a),m=null==c?null:e.fixed(c),s.open.forEach(t=>{e.rule(t,e=>(e.open({s:[h],p:o,n:{["dr_"+o]:1},g:"start"}),null!=c&&(e.open({s:[h,m],b:1,p:o,n:{["dr_"+o]:1},g:"start,end"}),e.close({s:[m],b:1,g:"end"})),e))}),null!=c&&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!=c?{s:[m],b:1}:null,{p:"val",n:null==c?{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!=c?[{s:[m]},{s:[g,m]}]:[])),u&&u(e,{OPEN:h,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:{}),v=v.exports;var k={};Object.defineProperty(k,"__esModule",{value:!0}),k.makeJsonicProcessor=void 0,k.makeJsonicProcessor=function(){return function(e,t,n,r,i){null!=e.src&&null!=e.full&&(e.val=i(e.src,r.meta))}};var x={};Object.defineProperty(x,"__esModule",{value:!0}),x.makeJavaScriptProcessor=void 0,x.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 b={};Object.defineProperty(b,"__esModule",{value:!0}),b.TOP=b.NONE=b.resolvePathSpec=b.MultiSource=void 0,b.NONE="";const y=Symbol("TOP");b.TOP=y;const j=(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 c=n.parent.name,u=n.child.node,p=r(u,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 f=(null===(a=s.meta)||void 0===a?void 0:a.multisource)||{},h=f.parents||[];null!=f.path&&h.push(f.path);let m={...s.meta||{},fileName:p.path,multisource:{...f,parents:h,path:p.full}};if(f.deps){let e=f.deps,t=f.path||y;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"===c?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(v.Directive,o)};function O(e){return t=>t.val=e(t.src,t)}b.MultiSource=j;const E=O(e=>e),S=g.Jsonic.make("json"),N=O((e,t)=>null==e?void 0:S(e,{fileName:t.path})),_=(0,k.makeJsonicProcessor)(),P=(0,x.makeJavaScriptProcessor)();j.defaults={markchar:"@",processor:{"":E,jsonic:_,jsc:_,json:N,js:P},implictExt:["jsonic","jsc","json","js"]},b.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("\\"))),c=a?o:null!=o&&""!=o?null!=s&&""!=s?s+"/"+o:o:void 0;return{kind:null==c?"":(c.match(/\.([^.]*)$/)||["",""])[1],path:o,full:c,base:s,abs:a,found:!1}};var w,T,I,M={},C=w={};function R(){throw new Error("setTimeout has not been defined")}function A(){throw new Error("clearTimeout has not been defined")}function V(e){if(T===setTimeout)return setTimeout(e,0);if((T===R||!T)&&setTimeout)return T=setTimeout,setTimeout(e,0);try{return T(e,0)}catch(t){try{return T.call(null,e,0)}catch(t){return T.call(this,e,0)}}}!function(){try{T="function"==typeof setTimeout?setTimeout:R}catch(e){T=R}try{I="function"==typeof clearTimeout?clearTimeout:A}catch(e){I=A}}();var L,$=[],D=!1,Y=-1;function F(){D&&L&&(D=!1,L.length?$=L.concat($):Y=-1,$.length&&J())}function J(){if(!D){var e=V(F);D=!0;for(var t=$.length;t;){for(L=$,$=[];++Y<t;)L&&L[Y].run();Y=-1,t=$.length}L=null,D=!1,function(e){if(I===clearTimeout)return clearTimeout(e);if((I===A||!I)&&clearTimeout)return I=clearTimeout,clearTimeout(e);try{I(e)}catch(t){try{return I.call(null,e)}catch(t){return I.call(this,e)}}}(e)}}function B(e,t){this.fun=e,this.array=t}function U(){}C.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];$.push(new B(e,t)),1!==$.length||D||V(J)},B.prototype.run=function(){this.fun.apply(null,this.array)},C.title="browser",C.browser=!0,C.env={},C.argv=[],C.version="",C.versions={},C.on=U,C.addListener=U,C.once=U,C.off=U,C.removeListener=U,C.removeAllListeners=U,C.emit=U,C.prependListener=U,C.prependOnceListener=U,C.listeners=function(e){return[]},C.binding=function(e){throw new Error("process.binding is not supported")},C.cwd=function(){return"/"},C.chdir=function(e){throw new Error("process.chdir is not supported")},C.umask=function(){return 0};var K={};(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,c=s<a?s:a,u=-1,p=0;p<=c;++p){if(p===c){if(a>c){if(47===n.charCodeAt(o+p))return n.slice(o+p+1);if(0===p)return n.slice(o+p)}else s>c&&(47===e.charCodeAt(i+p)?u=p:0===p&&(u=0));break}var d=e.charCodeAt(i+p);if(d!==n.charCodeAt(o+p))break;47===d&&(u=p)}var f="";for(p=i+u+1;p<=l;++p)p!==l&&47!==e.charCodeAt(p)||(0===f.length?f+="..":f+="/..");return f.length>0?f+n.slice(o+u):(o+=u,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 c=e.charCodeAt(r);if(47===c){if(!s){i=r+1;break}}else-1===a&&(s=!1,a=r+1),o>=0&&(c===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,c=!0,u=e.length-1,p=0;u>=r;--u)if(47!==(i=e.charCodeAt(u)))-1===a&&(c=!1,a=u+1),46===i?-1===s?s=u:1!==p&&(p=1):-1!==s&&(p=-1);else if(!c){o=u+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,K=r}).call(this)}).call(this,w);var q={};function z(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(q,"__esModule",{value:!0}),q.makeMemResolver=q.buildPotentials=void 0,q.makeMemResolver=function(e){return function(t,n,r,i){let l,s=(0,b.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&&b.NONE===s.kind)){let t=z(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(/\.([^.]*)$/)||[b.NONE,b.NONE])[1];break}}return{...s,src:l,found:null!=l}}},q.buildPotentials=z;var G={},Z=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(G,"__esModule",{value:!0}),G.makeFileResolver=void 0;const W=Z(M),H=Z(K);function X(e){if("string"!=typeof e)return e;let t=e;return W.default.statSync(e).isFile()&&(t=H.default.parse(e).dir),t}function Q(e){try{return W.default.readFileSync(e).toString()}catch(t){}}G.makeFileResolver=function(e){return function(t,n,r,i){let l,s=e?e(t):t,o=(0,b.resolvePathSpec)(n,i,s,X),a=[];if(null!=o.full&&(o.full=H.default.resolve(o.full),a.push(o.full),l=Q(o.full),null==l&&b.NONE===o.kind)){let e=(0,q.buildPotentials)(o,n,(...e)=>H.default.resolve(e.reduce((e,t)=>H.default.join(e,t))));a.push(...e);for(let t of e)if(null!=(l=Q(t))){o.full=t,o.kind=(t.match(/\.([^.]*)$/)||[b.NONE,b.NONE])[1];break}}return{...o,src:l,found:null!=l,search:a}}};var ee={},te=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ee,"__esModule",{value:!0}),ee.makePkgResolver=void 0;const ne=te(M),re=te(K);function ie(e){if("string"!=typeof e)return e;let t=e;return ne.default.statSync(e).isFile()&&(t=re.default.parse(e).dir),t}function le(e){try{return ne.default.readFileSync(e).toString()}catch(t){}}ee.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,b.resolvePathSpec)(r,l,o,ie),c=[];if(null!=a.path)try{a.full=n.resolve(a.path,t),null!=a.full&&(s=le(a.full),a.kind=(a.full.match(/\.([^.]*)$/)||[b.NONE,b.NONE])[1])}catch(u){c.push(...(null==t?void 0:t.paths)||n.resolve.paths(a.path).map(e=>re.default.join(e,a.path)));let e=(0,q.buildPotentials)(a,r,(...e)=>re.default.resolve(e.reduce((e,t)=>re.default.join(e,t))));for(let r of e)try{if(a.full=n.resolve(r,t),null!=a.full){s=le(a.full),a.kind=(a.full.match(/\.([^.]*)$/)||[b.NONE,b.NONE])[1];break}}catch(u){c.push(...(null==t?void 0:t.paths)||n.resolve.paths(r).map(e=>re.default.join(e,r)))}}return{...a,src:s,found:null!=s,search:c}}};var se={exports:{}};(function(e){(function(){!function(t){"object"==typeof se.exports?se.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 c=Object.defineProperty;t.defprop=c;const u=(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=u;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),k(this)}toJSON(){return{...this,__error:!0,name:this.name,message:this.message,stack:this.stack}}}function f(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 h(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_]+)/g,(e,t)=>{let o=JSON.stringify(null!=s[t]?s[t]:null!=n[t]?n[t]:l.meta&&null!=l.meta[t]?l.meta[t]:null!=r[t]?r[t]:null!=i[t]?i[t]:null!=l.opts[t]?l.opts[t]:null!=l.cfg[t]?l.cfg[t]:null!=l[t]?l[t]:"$"+t);return null==o?"":o})}function k(e){e.stack&&(e.stack=e.stack.split("\n").filter(e=>!e.includes("jsonic/jsonic")).map(e=>e.replace(/ at /,"at ")).join("\n"))}function x(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"),c=e.substring(i,i+333).split("\n"),u=2+(r.EMPTY+(l+2)).length,p=l<3?1:l-2,d=e=>"\x1b[34m"+(r.EMPTY+p++).padStart(u," ")+" | \x1b[0m"+(null==e?r.EMPTY:e),f=a.length;return[2<f?d(a[f-3]):null,1<f?d(a[f-2]):null,d(a[f-1]+c[0])," ".repeat(u)+" "+" ".repeat(s-1)+"\x1b[31m"+"^".repeat(o.length||1)+" "+t+"\x1b[0m",d(c[1]),d(c[2])].filter(e=>null!=e).join("\n")}function b(e,t,n,r,i){var l,s,o;try{let a=i.cfg,c=i.meta,u=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 "+u," \x1b[34m--\x3e\x1b[0m "+(c&&c.fileName||"<no-file>")+":"+n.rI+":"+n.cI,x(i.src(),u,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="+f(n.tin,i.cfg)+(null==n.why?"":"~"+n.why)+"; plugins="+i.plgn().map(e=>e.name).join(",")+"--\x1b[0m\n"].join("\n"),h={internal:{token:n,ctx:i}};return h={...Object.create(h),message:d,code:e,details:t,meta:c,fileName:c?c.fileName:void 0,lineNumber:n.rI,columnNumber:n.cI},h}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 O(t<n.length?n.substring(0,t-3)+"...":n,t)}function O(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 S(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,c,p,d,g,v,k,x,b,y,j,O,N,_,P,w,T,I,M,C,R,A,V,L,$,D,Y,F,J,B,U,K,q,z,G,Z,W,H,X,Q,ee,te,ne,re,ie,le,se,oe;const ae=t||{};ae.t=ae.t||{},ae.tI=ae.tI||1;const ce=e=>f(e,ae);!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")),ae.fixed={lex:!!(null===(r=n.fixed)||void 0===r?void 0:r.lex),token:n.fixed?u(S(n.fixed.token),([e,t])=>[t,f(e,ae)]):{},ref:void 0,check:null===(i=n.fixed)||void 0===i?void 0:i.check},ae.fixed.ref=u(ae.fixed.token,([e,t])=>[e,t]),ae.fixed.ref=Object.assign(ae.fixed.ref,u(ae.fixed.ref,([e,t])=>[t,e])),ae.match={lex:!!(null===(c=n.match)||void 0===c?void 0:c.lex),value:n.match?u(S(n.match.value),([e,t])=>[e,t]):{},token:n.match?u(S(n.match.token),([e,t])=>[f(e,ae),t]):{},check:null===(p=n.match)||void 0===p?void 0:p.check},u(ae.match.token,([e,t])=>[e,(t.tin$=+e,t)]);const ue=n.tokenSet?Object.keys(n.tokenSet).reduce((e,t)=>(e[t]=n.tokenSet[t].filter(e=>null!=e).map(e=>ce(e)),e),{}):{};ae.tokenSet=ae.tokenSet||{},o(ue).map(e=>{let t=e[0],n=e[1];ae.tokenSet[t]?(ae.tokenSet[t].length=0,ae.tokenSet[t].push(...n)):ae.tokenSet[t]=n}),ae.tokenSetTins=o(ae.tokenSet).reduce((e,t)=>(e[t[0]]=e[t[0]]||{},t[1].map(n=>e[t[0]][n]=!0),e),{}),ae.tokenSetTins.IGNORE=ae.tokenSetTins.IGNORE||{},ae.space={lex:!!(null===(d=n.space)||void 0===d?void 0:d.lex),chars:E(null===(g=n.space)||void 0===g?void 0:g.chars),check:null===(v=n.space)||void 0===v?void 0:v.check},ae.line={lex:!!(null===(k=n.line)||void 0===k?void 0:k.lex),chars:E(null===(x=n.line)||void 0===x?void 0:x.chars),rowChars:E(null===(b=n.line)||void 0===b?void 0:b.rowChars),single:!!(null===(y=n.line)||void 0===y?void 0:y.single),check:null===(j=n.line)||void 0===j?void 0:j.check},ae.text={lex:!!(null===(O=n.text)||void 0===O?void 0:O.lex),modify:((null===(N=ae.text)||void 0===N?void 0:N.modify)||[]).concat(([null===(_=n.text)||void 0===_?void 0:_.modify]||[]).flat()).filter(e=>null!=e),check:null===(P=n.text)||void 0===P?void 0:P.check},ae.number={lex:!!(null===(w=n.number)||void 0===w?void 0:w.lex),hex:!!(null===(T=n.number)||void 0===T?void 0:T.hex),oct:!!(null===(I=n.number)||void 0===I?void 0:I.oct),bin:!!(null===(M=n.number)||void 0===M?void 0:M.bin),sep:null!=(null===(C=n.number)||void 0===C?void 0:C.sep)&&""!==n.number.sep,exclude:null===(R=n.number)||void 0===R?void 0:R.exclude,sepChar:null===(A=n.number)||void 0===A?void 0:A.sep,check:null===(V=n.number)||void 0===V?void 0:V.check},ae.value={lex:!!(null===(L=n.value)||void 0===L?void 0:L.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===(D=n.value)||void 0===D?void 0:D.def)||{}).reduce((e,t)=>(t[1]&&t[1].match&&(e[t[0]]=t[1],e[t[0]].consume=!!e[t[0]].consume),e),{})},ae.rule={start:null==(null===(Y=n.rule)||void 0===Y?void 0:Y.start)?"val":n.rule.start,maxmul:null==(null===(F=n.rule)||void 0===F?void 0:F.maxmul)?3:n.rule.maxmul,finish:!!(null===(J=n.rule)||void 0===J?void 0:J.finish),include:(null===(B=n.rule)||void 0===B?void 0:B.include)?n.rule.include.split(/\s*,+\s*/).filter(e=>""!==e):[],exclude:(null===(U=n.rule)||void 0===U?void 0:U.exclude)?n.rule.exclude.split(/\s*,+\s*/).filter(e=>""!==e):[]},ae.map={extend:!!(null===(K=n.map)||void 0===K?void 0:K.extend),merge:null===(q=n.map)||void 0===q?void 0:q.merge},ae.list={property:!!(null===(z=n.list)||void 0===z?void 0:z.property)};let pe=Object.keys(ae.fixed.token).sort((e,t)=>t.length-e.length).map(e=>m(e)).join("|"),de=(null===(G=n.comment)||void 0===G?void 0:G.lex)?(n.comment.def?s(n.comment.def):[]).filter(e=>e&&e.lex).map(e=>m(e.start)).join("|"):"",fe=["([",m(l(E(ae.space.lex&&ae.space.chars,ae.line.lex&&ae.line.chars)).join("")),"]",("string"==typeof n.ender?n.ender.split(""):Array.isArray(n.ender)?n.ender:[]).map(e=>"|"+m(e)).join(""),""===pe?"":"|",pe,""===de?"":"|",de,"|$)"];return ae.rePart={fixed:pe,ender:fe,commentStart:de},ae.re={ender:h(null,...fe),rowChars:h(null,m(null===(Z=n.line)||void 0===Z?void 0:Z.rowChars)),columns:h(null,"["+m(null===(W=n.line)||void 0===W?void 0:W.chars)+"]","(.*)$")},ae.lex={empty:!!(null===(H=n.lex)||void 0===H?void 0:H.empty),emptyResult:null===(X=n.lex)||void 0===X?void 0:X.emptyResult,match:(null===(Q=n.lex)||void 0===Q?void 0:Q.match)?o(n.lex.match).reduce((e,t)=>{let r=t[0],i=t[1];if(i){let t=i.make(ae,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):[]},ae.parse={prepare:s(null===(ee=n.parse)||void 0===ee?void 0:ee.prepare)},ae.debug={get_console:(null===(te=n.debug)||void 0===te?void 0:te.get_console)||(()=>console),maxlen:null==(null===(ne=n.debug)||void 0===ne?void 0:ne.maxlen)?99:n.debug.maxlen,print:{config:!!(null===(ie=null===(re=n.debug)||void 0===re?void 0:re.print)||void 0===ie?void 0:ie.config),src:null===(se=null===(le=n.debug)||void 0===le?void 0:le.print)||void 0===se?void 0:se.src}},ae.error=n.error||{},ae.hint=n.hint||{},(null===(oe=n.config)||void 0===oe?void 0:oe.modify)&&l(n.config.modify).forEach(e=>n.config.modify[e](ae,n)),ae.debug.print.config&&ae.debug.get_console().dir(ae,{depth:null}),ae.result={fail:[]},n.result&&(ae.result.fail=[...n.result.fail]),a(e.options,n),a(e.token,ae.t),a(e.tokenSet,ae.tokenSet),a(e.fixed,ae.fixed.ref),ae},t.tokenize=f,t.findTokenSet=function(e,t){return t.tokenSet[e]},t.mesc=function(e,t){return(t=new String(e)).esc=!0,t},t.regexp=h,t.escre=m,t.deep=g,t.errinject=v,t.trimstk=k,t.extract=x,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=O,t.clone=function(e){return g(Object.create(Object.getPrototypeOf(e)),e)},t.charset=E,t.clean=S,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,c=0,u=r.EMPTY,p=o.message.match(/^Unexpected token (.) .*position\s+(\d+)/i);if(p){u=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--;c=Math.max(t.substring(e,s).length,0)}let h=o.token||(0,i.makeToken)("#UK",f("#UK",n.internal().config),void 0,u,(0,i.makePoint)(u.length,s,o.lineNumber||a,o.columnNumber||c));throw new d(o.code||"json",o.details||{msg:o.message},h,{},o.ctx||{uI:-1,opts:n.options,cfg:n.internal().config,token:h,meta:l,src:()=>t,root:()=>{},plgn:()=>n.internal().plugins,rule:{name:"no-rule"},sub:{},xs:-1,v2:h,v1:h,t0:h,t1:h,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 c(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,c=s.cI;for(let i of r)if(o.startsWith(i.start)){let n=o.length,r=i.start.length;for(c+=i.start.length;r<n&&!e.line.chars[o[r]];)c++,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),u=t.token("#CM",void 0,l,s);return s.sI+=l.length,s.cI=c,s.rI=a,u}for(let r of l)if(o.startsWith(r.start)){let n=o.length,l=r.start.length,u=r.end;for(c+=r.start.length;l<n&&!o.substring(l).startsWith(u);)e.line.rowChars[o[l]]&&(a++,c=0),c++,l++;if(o.substring(l).startsWith(u)){if(c+=u.length,r.eatline)for(;l<n&&e.line.chars[o[l]];)e.line.rowChars[o[l]]&&a++,l++;let i=o.substring(0,l+u.length),p=t.token("#CM",void 0,i,s);return s.sI+=i.length,s.rI=a,s.cI=c,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,u=s.match(n);if(u){let n,p=u[1],d=u[2];if(null!=p){let t=p.length;if(0<t){let c;if(e.value.lex)if(void 0!==(c=o[p]))n=r.token("#VL",c.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=c(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],u=!0;if(null!=r&&(u=!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 u&&(n=c(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:c,allowUnknown:u,replaceCodeMap:p,hasReplace:d}=n,{pnt:f,src:h}=t,{sI:m,rI:g,cI:v}=f,k=h.length;if(l[h[m]]){const l=h[m],x=m,b=g,y=c[l];++m,++v;let j,O=[];for(;m<k;m++){v++;let r=h[m];if(j=void 0,l===r){m++;break}if(o===r){m++,v++;let e=s[h[m]];if(null!=e)O.push(e);else if("x"===h[m]){m++;let e=parseInt(h.substring(m,m+2),16);if(isNaN(e)){if(n.abandon)return;return m-=2,v-=2,f.sI=m,f.cI=v,t.bad(i.S.invalid_ascii,m,m+4)}let r=String.fromCharCode(e);O.push(r),m+=1,v+=2}else if("u"===h[m]){m++;let e="{"===h[m]?(m++,1):0,r=e?6:4,l=parseInt(h.substring(m,m+r),16);if(isNaN(l)){if(n.abandon)return;return m=m-2-e,v-=2,f.sI=m,f.cI=v,t.bad(i.S.invalid_unicode,m,m+r+2+2*e)}let s=String.fromCodePoint(l);O.push(s),m+=r-1+e,v+=r+e}else{if(!u){if(n.abandon)return;return f.sI=m,f.cI=v-1,t.bad(i.S.unexpected,m,m+1)}O.push(h[m])}}else if(d&&void 0!==(j=p[h.charCodeAt(m)]))O.push(j),v++;else{let r=m,s=l.charCodeAt(0),o=h.charCodeAt(m);for(;(!d||void 0===(j=p[o]))&&m<k&&32<=o&&s!==o&&a!==o;)o=h.charCodeAt(++m),v++;if(v--,void 0===j&&o<32){if(!y||!e.line.chars[h[m]]){if(n.abandon)return;return f.sI=m,f.cI=v,t.bad(i.S.unprintable,m,m+1)}e.line.rowChars[h[m]]&&(f.rI=++g),v=1,O.push(h.substring(r,m+1))}else O.push(h.substring(r,m)),m--}}if(h[m-1]!==l||f.sI===m-1){if(n.abandon)return;return f.rI=b,t.bad(i.S.unterminated_string,x,m)}const E=t.token("#ST",O.join(r.EMPTY),h.substring(f.sI,m),f);return f.sI=m,f.rI=g,f.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,c=e.line.single;for(c&&(n={});r[s[o]]&&!(n&&(n[s[o]]=(n[s[o]]||0)+1,c&&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 u{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,c;return"string"==typeof e?(c=e,o=(0,i.tokenize)(c,this.cfg)):(o=e,c=(0,i.tokenize)(e,this.cfg)),a(c,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(c){l=l||this.token("#BD",void 0,this.src[o.sI],o,{err:c},c.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 u(...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={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 c{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.use=Object.create(null),this.keep=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)}toString(){return"[Rule "+this.name+"~"+this.i+"]"}}const u=(...e)=>new c(...e);o.makeRule=u,o.makeNoRule=e=>u(g(e.cfg,{}),e);class p{constructor(){this.p=r.EMPTY,this.r=r.EMPTY,this.b=0}}const d=(...e)=>new p(...e),f=d(),h=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",c=this.def,p=l?c.open:c.close,d=l?e.bo?c.bo:null:e.bc?c.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=f;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,c=0,u=!0,p=1<<l.cfg.t.AA-1,d=l.cfg.tokenSetTins.IGNORE;function h(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(c=0;c<m;c++){o=t[c];let n=!1,r=!1;if(u=!0,o.S0){let e=(l.t0=l.NOTOKEN!==l.t0?l.t0:l.t0=h(i,o,c,0)).tin;if(n=!0,u=!!(o.S0[e/31|0]&(1<<e%31-1|p)),u&&(r=null!=o.S1,o.S1)){let e=(l.t1=l.NOTOKEN!==l.t1?l.t1:l.t1=h(i,o,c,1)).tin;r=!0,u=!!(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)),u&&o.c&&(u=u&&o.c(i,l,s)),u)break;o=null}u||(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=c<t.length;return l.log&&l.log(a.S.parse,l,i,n,g,u,c,o,s),s}(l,p,n,e,t):h;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.use=Object.assign(e.use,m.u)),m.k&&(e.keep=Object.assign(e.keep,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=u(n,t,e.node),s.parent=e,s.n={...e.n},0<Object.keys(e.keep).length&&(s.keep={...e.keep}),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=u(n,t,e.node),s.parent=e.parent,s.prev=e,s.n={...e.n},0<Object.keys(e.keep).length&&(s.keep={...e.keep}),o+="R`"+m.r+"`"}else l||(s=t.rs[--t.rsI]||t.NORULE);let g=l?e.ao?c.ao:null:e.ac?c.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(null!=e.c){let t=e.c.n,n=e.c.d;null==t&&null==n||(e.c=function(e){let r=!0;if(null!=t)for(let n in t)r=r&&(null==e.n[n]||e.n[n]<=(null==t[n]?0:t[n]));return null!=n&&(r=r&&e.d<=n),r},null!=t&&(e.c.n=t),null!=n&&(e.c.d=n))}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 k={};Object.defineProperty(k,"__esModule",{value:!0}),k.makeParser=k.makeRuleSpec=k.makeRule=void 0;const x=t({}),b=n({});Object.defineProperty(k,"makeRule",{enumerable:!0,get:function(){return o.makeRule}}),Object.defineProperty(k,"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,x.tokenize)("#ZZ",this.cfg),void 0,r.EMPTY,(0,b.makePoint)(-1)),a=(0,b.makeNoToken)(),c={uI:0,opts:this.options,cfg:this.cfg,meta:n||{},src:()=>e,root:()=>l,plgn:()=>t.internal().plugins,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,x.srcfmt)(this.cfg),use:{},NOTOKEN:a,NORULE:{}};c=(0,x.deep)(c,i);let u=(0,o.makeNoRule)(c);if(c.NORULE=u,c.rule=u,n&&x.S.function===typeof n.log&&(c.log=n.log),this.cfg.parse.prepare.forEach(e=>e(t,c,n)),""===e){if(this.cfg.lex.empty)return this.cfg.lex.emptyResult;throw new x.JsonicError(x.S.unexpected,{src:e},c.t0,u,c)}let p=(0,x.badlex)((0,b.makeLex)(c),(0,x.tokenize)("#BD",this.cfg),c),d=this.rsm[this.cfg.rule.start];if(null==d)return;let f=(0,o.makeRule)(d,c);l=f;let h=2*(0,x.keys)(this.rsm).length*p.src.length*2*c.cfg.rule.maxmul,m=0;for(;u!==f&&m<h;)c.kI=m,c.rule=f,c.log&&c.log("",c.kI+":"),c.sub.rule&&c.sub.rule.map(e=>e(f,c)),f=f.process(c,p),c.log&&c.log(x.S.stack,c,f,p),m++;if(s.tin!==p.next(f).tin)throw new x.JsonicError(x.S.unexpected,{},c.t0,u,c);const g=c.root().node;if(this.cfg.result.fail.includes(g))throw new x.JsonicError(x.S.unexpected,{},c.t0,u,c);return g}clone(e,t){let n=new y(e,t);return n.rsm=Object.keys(this.rsm).reduce((e,t)=>(e[t]=(0,x.filterRules)(this.rsm[t],this.cfg),e),{}),n.norm(),n}norm(){(0,x.values)(this.rsm).map(e=>e.norm())}}k.makeParser=(...e)=>new y(...e);var j={};function O(e){const{deep:t}=e.util,{OB:n,CB:r,OS:i,CS:l,CL:s,CA:o,TX:a,ST:c,ZZ:u}=e.token,{VAL:p,KEY:d}=e.tokenSet,f=(e,t)=>{if(!t.cfg.rule.finish)return t.t0.src="END_OF_SOURCE",t.t0},h=e=>{const t=e.o0,n=c===t.tin||a===t.tin?t.val:t.src;e.use.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:[u],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={}}).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:h,g:"map,pair,key,json"}]).bc((e,t)=>{e.use.pair&&(e.use.prev=e.node[e.use.key],e.node[e.use.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.use.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.use.key,i=e.child.node;const l=e.use.prev;i=void 0===i?null:i,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:[u],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:{n:{dlist:0,dmap:0}},r:"list",u:{implist:!0},g:"list,val,imp,comma,jsonic"},{c:{n:{dlist:0,dmap:0}},r:"list",u:{implist:!0},g:"list,val,imp,space,jsonic",b:1},{s:[u],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,u],b:1,e:f,g:"end,jsonic"}]).open([{s:[d,s],p:"pair",b:2,g:"pair,list,val,imp,jsonic"}],{append:!0}).close([{s:[r],c:{n:{pk:0}},g:"end,json"},{s:[r],b:1,g:"path,jsonic"},{s:[[o,l,...p]],b:1,g:"end,path,jsonic"},{s:[u],e:f,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.use.implist&&(e.node.push(e.prev.node),e.prev.node=e.node)}).open({c:e=>e.prev.use.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:[u],e:f,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.use.pair&&m(e,t)}).close([{s:[r],c:{n:{pk:0}},b:1,g:"map,pair,json"},{s:[o,r],c:{n:{pk:0}},b:1,g:"map,pair,comma,jsonic"},{s:[o,u],g:"end,jsonic"},{s:[o],c:{n:{pk:0}},r:"pair",g:"map,pair,json"},{s:[o],c:{n:{dmap:1}},r:"pair",g:"map,pair,jsonic"},{s:[d],c:{n:{dmap:1}},r:"pair",b:1,g:"map,pair,imp,jsonic"},{s:[[r,o,l,...d]],b:1,g:"map,pair,imp,path,jsonic",c:e=>0<e.n.pk},{s:[l],e:e=>e.c0,g:"end,jsonic"},{s:[u],e:f,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},a:h,g:"elem,pair,jsonic"}]).bc((e,t)=>{!0===e.use.pair&&(e.use.prev=e.node[e.use.key],m(e,t))}).close([{s:[o,[l,u]],b:1,g:"list,elem,comma,jsonic"},{s:[o],r:"elem",g:"list,elem,json"},{s:[l],b:1,g:"list,elem,json"},{s:[u],e:f,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=O,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 O(t),t};var E={};Object.defineProperty(E,"__esModule",{value:!0}),E.root=E.foo=E.S=E.EMPTY=E.AFTER=E.BEFORE=E.CLOSE=E.OPEN=E.makeTextMatcher=E.makeNumberMatcher=E.makeCommentMatcher=E.makeStringMatcher=E.makeLineMatcher=E.makeSpaceMatcher=E.makeFixedMatcher=E.makeParser=E.makeLex=E.makeRuleSpec=E.makeRule=E.makePoint=E.makeToken=E.make=E.util=E.JsonicError=E.Jsonic=void 0,Object.defineProperty(E,"OPEN",{enumerable:!0,get:function(){return r.OPEN}}),Object.defineProperty(E,"CLOSE",{enumerable:!0,get:function(){return r.CLOSE}}),Object.defineProperty(E,"BEFORE",{enumerable:!0,get:function(){return r.BEFORE}}),Object.defineProperty(E,"AFTER",{enumerable:!0,get:function(){return r.AFTER}}),Object.defineProperty(E,"EMPTY",{enumerable:!0,get:function(){return r.EMPTY}});const S=t({});Object.defineProperty(E,"JsonicError",{enumerable:!0,get:function(){return S.JsonicError}}),Object.defineProperty(E,"S",{enumerable:!0,get:function(){return S.S}});const N=n({});Object.defineProperty(E,"makePoint",{enumerable:!0,get:function(){return N.makePoint}}),Object.defineProperty(E,"makeToken",{enumerable:!0,get:function(){return N.makeToken}}),Object.defineProperty(E,"makeLex",{enumerable:!0,get:function(){return N.makeLex}}),Object.defineProperty(E,"makeFixedMatcher",{enumerable:!0,get:function(){return N.makeFixedMatcher}}),Object.defineProperty(E,"makeSpaceMatcher",{enumerable:!0,get:function(){return N.makeSpaceMatcher}}),Object.defineProperty(E,"makeLineMatcher",{enumerable:!0,get:function(){return N.makeLineMatcher}}),Object.defineProperty(E,"makeStringMatcher",{enumerable:!0,get:function(){return N.makeStringMatcher}}),Object.defineProperty(E,"makeCommentMatcher",{enumerable:!0,get:function(){return N.makeCommentMatcher}}),Object.defineProperty(E,"makeNumberMatcher",{enumerable:!0,get:function(){return N.makeNumberMatcher}}),Object.defineProperty(E,"makeTextMatcher",{enumerable:!0,get:function(){return N.makeTextMatcher}}),Object.defineProperty(E,"makeRule",{enumerable:!0,get:function(){return k.makeRule}}),Object.defineProperty(E,"makeRuleSpec",{enumerable:!0,get:function(){return k.makeRuleSpec}}),Object.defineProperty(E,"makeParser",{enumerable:!0,get:function(){return k.makeParser}});const _={tokenize:S.tokenize,srcfmt:S.srcfmt,clone:S.clone,charset:S.charset,trimstk:S.trimstk,makelog:S.makelog,badlex:S.badlex,extract:S.extract,errinject:S.errinject,errdesc:S.errdesc,configure:S.configure,parserwrap:S.parserwrap,mesc:S.mesc,escre:S.escre,regexp:S.regexp,prop:S.prop,str:S.str,clean:S.clean,deep:S.deep,omap:S.omap,keys:S.keys,values:S.values,entries:S.entries};function P(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,S.deep)({},t?{...t.options}:!1===(null==e?void 0:e.defaults$)?{}:i.defaults,e||{}),s=function(e,t,n){var r;if(S.S.string===typeof e){let i=s.internal();return((null===(r=o.parser)||void 0===r?void 0:r.start)?(0,S.parserwrap)(o.parser):i.parser).start(e,s,t,n)}return e},o=e=>{if(null!=e&&S.S.object===typeof e){(0,S.deep)(l,e),(0,S.configure)(s,r.config,l);let t=s.internal().parser;r.parser=t.clone(l,r.config)}return{...s.options}},a={token:e=>(0,S.tokenize)(e,r.config,s),tokenSet:e=>(0,S.findTokenSet)(e,r.config),fixed:e=>r.config.fixed.ref[e],options:(0,S.deep)(o,l),config:()=>(0,S.deep)(r.config),parse:s,use:function(e,t){const n=e.name.toLowerCase(),r=(0,S.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=>P(e,s),empty:e=>P({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,S.defprop)(a.make,S.S.name,{value:S.S.make}),n?(0,S.assign)(s,a):(0,S.assign)(s,{empty:a.empty,parse:a.parse,sub:a.sub,id:a.id,toString:a.toString}),(0,S.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,S.deep)({},e.config),(0,S.configure)(s,r.config,l),(0,S.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,S.configure)(e,void 0,l),r.plugins=[],r.parser=(0,k.makeParser)(l,r.config),!1!==l.grammar$&&(0,j.grammar)(e)}return s}let w;E.util=_,E.make=P,E.root=w;let T=E.root=w=P("jsonic");return E.Jsonic=T,w.Jsonic=w,w.JsonicError=S.JsonicError,w.makeLex=N.makeLex,w.makeParser=k.makeParser,w.makeToken=N.makeToken,w.makePoint=N.makePoint,w.makeRule=k.makeRule,w.makeRuleSpec=k.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=P,w.S=S.S,E.foo="FOO",E.default=T,E}))}).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 O=x(n,o,j,"prefix"),E=x(n,o,j,"suffix"),S=x(n,o,j,"infix"),N=x(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),c=e(a);n[l]={name:r+"-paren",osrc:i.osrc,csrc:i.csrc,otkn:o,otin:l,ctkn:c,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),P=r(_,([e,t])=>[void 0,void 0,t.ctin,t]);let w=Object.values({..._,...P}).reduce((e,t)=>(e[t.otkn]=t.osrc,e[t.ctkn]=t.csrc,e),{}),T=Object.values({...O,...E,...S,...N}).reduce((e,t)=>(e[t.tkn]=t.src,e),{});e.options({fixed:{token:{...T,...w}},lex:{match:{comment:{order:1e5}}}});const I=l(O).map(e=>e.tin),M=l(S).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(P).map(e=>e.ctin),$=0<I.length,D=0<M.length,Y=0<C.length,F=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=>{F&&A.includes(e.token.CL)&&(t.def.open.find(e=>e.g.includes("pair")).c=e=>!e.n.expr_ternary),t.open([$?{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.use.paren_preval),n&&1===e.prev.i&&(t.root=()=>e),n},g:"expr,expr-paren"}:null]).close([F?{s:[R],c:e=>!e.n.expr,b:1,r:"ternary",g:"expr,expr-ternary"}:null,D?{s:[M],b:1,n:{expr_prefix:0,expr_suffix:0},r:e=>e.n.expr?"":"expr",g:"expr,expr-infix"}:null,Y?{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,F?{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.use.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([$?{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=c(e.o0,O);e.node=k(e.parent.node)?b(e.parent.node,t):a(e,e.parent,t)}}:null,D?{s:[M],p:"val",n:{expr:1,expr_prefix:0,dlist:1,dmap:1},a:e=>{const t=e.prev,n=e.parent,r=c(e.o0,S);k(n.node)&&!v("ternary",n.node)?e.node=b(n.node,r):k(t.node)?(e.node=b(t.node,r),e.parent=t):e.node=a(e,t,r)},g:"expr,expr-infix"}:null,Y?{s:[C],n:{expr:1,expr_prefix:0,dlist:1,dmap:1},a:e=>{const t=e.prev,n=c(e.o0,E);e.node=k(t.node)?b(t.node,n):a(e,t,n)},g:"expr,expr-suffix"}:null]).bc(e=>{var t;k(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([D?{s:[M],c:e=>!e.n.expr_prefix,b:1,r:"expr",g:"expr,expr-infix"}:null,Y?{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,F?{s:[R],c:e=>!e.n.expr_prefix,b:1,r:"ternary",g:"expr,expr-ternary"}:null,{s:[B],c:{d:0},n:{expr:0},r:"elem",a:e=>e.parent.node=e.node=[e.node],g:"expr,comma,list,top"},{s:[H],c:{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:{n:{pk:0}},n:{expr:0},b:1,h:h,g:"expr,list,val,imp,comma"},{c:{n:{pk:0,expr_suffix:0}},n:{expr:0},h:h,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===P[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_"+P[e.c0.tin].name;return!!e.n[t]},a:f(P),g:"expr,expr-paren,close"}:null])}),F&&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=c(e.o0,N);e.use.expr_ternary_name=t.name,k(e.prev.node)?e.node=u(e.prev.node,t,p(e.prev.node)):e.node=e.prev.node=u([],t,e.prev.node),e.use.expr_ternary_paren=e.n.expr_paren||e.prev.use.expr_ternary_paren||0,e.n.expr_paren=0}},{p:"val",c:e=>2===e.prev.use.expr_ternary_step,a:e=>{e.use.expr_ternary_step=e.prev.use.expr_ternary_step,e.n.expr_paren=e.use.expr_ternary_paren=e.prev.use.expr_ternary_paren},g:"expr,expr-ternary,step"}]).close([{s:[A],c:e=>1===e.use.expr_ternary_step&&e.use.expr_ternary_name===N[e.c0.tin].name,r:"ternary",a:e=>{e.use.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.use.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.use.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.use.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 k(t.node)?r=p(t.node):t.node=[],u(t.node,n),n.prefix||(t.node[1]=r),e.parent=t,t.node}function c(e,t){return{...t[e.tin],token:e,OP_MARK:s}}function u(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_"+c(t.o0,e).name;t.use[n]=t.n[n]=1,t.node=void 0}}function f(e){return function(t){(k(t.child.node)||void 0===t.node)&&(t.node=t.child.node);const n=c(t.c0,e);let r="expr_paren_depth_"+n.name;if(t.use[r]===t.n[r]){const e=t.node;t.node=[n],void 0!==e&&(t.node[1]=e),t.parent.prev.use.paren_preval&&(v("paren",t.parent.prev.node)?t.node=u(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 h(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):k(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.use.expr_ternary_step}function g(e,t,n){e.n.expr_paren=e.prev.use.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&&k(t)&&!0===t[0][e]}function k(e){return null!=e&&e[0]&&e[0].OP_MARK===s}function x(e,t,n,r){return Object.entries(n).filter(([e,t])=>t[r]).reduce((n,[i,l])=>{let o="",a=-1,c="";c="string"==typeof l.src?l.src:l.src[0],a=t(c)||e("#E"+c),o=e(a);let u=n[a]={src:c,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(u.ternary){let r=l.src;u.src=r[0],u.use.ternary={opI:0};let i={...u};c=l.src[1],a=t(c)||e("#E"+c),o=e(a),i.src=c,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)u(e,t,p(e));else{const i=r.terms;n=k(e[i])&&e[i][0].right<t.left?b(e[i],t):e[i]=u([],t,e[i])}else if(t.prefix)n=e[r.terms]=u([],t);else if(t.suffix)if(!r.suffix&&r.right<=t.left){const n=r.terms;k(e[n])&&e[n][0].prefix&&e[n][0].right<t.left?b(e[n],t):e[n]=u([],t,e[n])}else u(e,t,p(e));return n}function y(e,t,n){return null==t?t:k(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:{}),se=se.exports;var oe={exports:{}};(function(e){(function(){!function(t){"object"==typeof oe.exports?oe.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=>{0===e.d&&(e.keep.path=[])})}),e.rule("map",e=>{e.bo(e=>{delete e.keep.index})}),e.rule("pair",e=>{e.ao(e=>{0<e.d&&e.use.pair&&(e.child.keep.path=[...e.keep.path,e.use.key],e.child.keep.key=e.use.key)})}),e.rule("list",e=>{e.bo(e=>{e.keep.index=-1})}),e.rule("elem",e=>{e.ao(e=>{0<e.d&&(e.keep.index=1+e.keep.index,e.child.keep.path=[...e.keep.path,e.keep.index],e.child.keep.key=e.keep.index,e.child.keep.index=e.keep.index)})})};return e.Path=t,t.defaults={},e}))}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{}),oe=oe.exports;var ae={};Object.defineProperty(ae,"__esModule",{value:!0}),ae.DONE=void 0,ae.DONE=-1;var ce={};Object.defineProperty(ce,"__esModule",{value:!0}),ce.descErr=void 0;const ue=d({});ce.descErr=function e(t){var n,r,i;if(t instanceof ue.Nil){let e=t.primary||{},l=t.secondary||{};return t.msg="Cannot unify"+(0<(null===(n=t.path)||void 0===n?void 0:n.length)?" path "+t.path.join("."):"")+" "+(t.url?"in "+t.url:"")+":\nLHS: "+(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:"")+"\nRHS: "+(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",t}return t.map(t=>e(t))};var pe={};Object.defineProperty(pe,"__esModule",{value:!0}),pe.util=pe.Context=pe.Lang=pe.Nil=pe.Aontu=void 0;const de=t({});Object.defineProperty(pe,"Lang",{enumerable:!0,get:function(){return de.Lang}});const fe=f({});Object.defineProperty(pe,"Context",{enumerable:!0,get:function(){return fe.Context}});const he=d({});function me(e,t){let n=ge.options(e,t),r={},i=ge.parse(n,{deps:r}),l=new fe.Unify(i),s=l.res,o=l.err;return(0,ce.descErr)(l.err),s.deps=r,s.err=o,s}Object.defineProperty(pe,"Nil",{enumerable:!0,get:function(){return he.Nil}}),pe.Aontu=me;const ge={options:(e,t)=>({src:"",print:0,..."string"==typeof e?{src:e}:e,...t||{}}),parse:(e,t)=>new de.Lang(e).parse(e.src,{deps:t.deps})};return pe.util=ge,pe.default=me,pe}));
|