@famibee/skynovel 1.64.22 → 2.0.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/README.md +3 -3
- package/dist/Button.js +131 -163
- package/dist/Button.js.map +1 -1
- package/dist/CallStack.js +19 -22
- package/dist/CallStack.js.map +1 -1
- package/dist/CmnInterface.js +91 -0
- package/dist/CmnInterface.js.map +1 -0
- package/dist/CmnLib.js +94 -0
- package/dist/CmnLib.js.map +1 -0
- package/dist/Config.js +26 -0
- package/dist/Config.js.map +1 -0
- package/dist/ConfigBase.js +152 -0
- package/dist/ConfigBase.js.map +1 -0
- package/dist/DebugMng.js +89 -102
- package/dist/DebugMng.js.map +1 -1
- package/dist/EventListenerCtn.js +21 -0
- package/dist/EventListenerCtn.js.map +1 -0
- package/dist/EventMng.js +1435 -1577
- package/dist/EventMng.js.map +1 -1
- package/dist/Grammar.js +194 -0
- package/dist/Grammar.js.map +1 -0
- package/dist/GrpLayer.js +163 -195
- package/dist/GrpLayer.js.map +1 -1
- package/dist/Layer.js +260 -0
- package/dist/Layer.js.map +1 -0
- package/dist/LayerMng.js +810 -992
- package/dist/LayerMng.js.map +1 -1
- package/dist/Main.js +144 -393
- package/dist/Main.js.map +1 -1
- package/dist/PropParser.js +936 -834
- package/dist/PropParser.js.map +1 -1
- package/dist/Reading.js +918 -786
- package/dist/Reading.js.map +1 -1
- package/dist/RubySpliter.js +59 -89
- package/dist/RubySpliter.js.map +1 -1
- package/dist/ScriptIterator.js +805 -1035
- package/dist/ScriptIterator.js.map +1 -1
- package/dist/SndBuf.js +1097 -1326
- package/dist/SndBuf.js.map +1 -1
- package/dist/SoundMng.js +124 -135
- package/dist/SoundMng.js.map +1 -1
- package/dist/SpritesMng.js +220 -232
- package/dist/SpritesMng.js.map +1 -1
- package/dist/SysBase.js +1729 -0
- package/dist/SysBase.js.map +1 -0
- package/dist/TxtLayer.js +1212 -1398
- package/dist/TxtLayer.js.map +1 -1
- package/dist/Variable.js +398 -466
- package/dist/Variable.js.map +1 -1
- package/dist/chunk.js +18 -0
- package/dist/gamepad.js +723 -511
- package/dist/gamepad.js.map +1 -1
- package/dist/pixi.js +13422 -0
- package/dist/pixi.js.map +1 -0
- package/dist/platform.js +424 -369
- package/dist/platform.js.map +1 -1
- package/dist/sn/AnalyzeTagArg.d.ts +1 -1
- package/dist/sn/AnalyzeTagArg.d.ts.map +1 -1
- package/dist/sn/CmnInterface.d.ts +3 -1
- package/dist/sn/CmnInterface.d.ts.map +1 -1
- package/dist/sn/CmnLib.d.ts.map +1 -1
- package/dist/sn/CmnTween.d.ts +7 -7
- package/dist/sn/CmnTween.d.ts.map +1 -1
- package/dist/sn/EventMng.d.ts.map +1 -1
- package/dist/sn/FocusMng.d.ts.map +1 -1
- package/dist/sn/Grammar.d.ts +1 -1
- package/dist/sn/Grammar.d.ts.map +1 -1
- package/dist/sn/Log.d.ts.map +1 -1
- package/dist/sn/Main.d.ts.map +1 -1
- package/dist/sn/Pages.d.ts.map +1 -1
- package/dist/sn/PropParser.d.ts +2 -2
- package/dist/sn/PropParser.d.ts.map +1 -1
- package/dist/sn/Reading.d.ts +7 -0
- package/dist/sn/Reading.d.ts.map +1 -1
- package/dist/sn/RubySpliter.d.ts.map +1 -1
- package/dist/sn/ScriptIterator.d.ts.map +1 -1
- package/dist/sn/SndBuf.d.ts +27 -16
- package/dist/sn/SndBuf.d.ts.map +1 -1
- package/dist/sn/SoundMng.d.ts +4 -1
- package/dist/sn/SoundMng.d.ts.map +1 -1
- package/dist/sn/SysBase.d.ts.map +1 -1
- package/dist/sn/TxtStage.d.ts +4 -1
- package/dist/sn/TxtStage.d.ts.map +1 -1
- package/dist/test/ValTest.d.ts +1 -1
- package/dist/test/ValTest.d.ts.map +1 -1
- package/dist/web.js +653 -8
- package/dist/web.js.map +1 -1
- package/dist_app/Button.js +131 -163
- package/dist_app/Button.js.map +1 -1
- package/dist_app/CallStack.js +19 -22
- package/dist_app/CallStack.js.map +1 -1
- package/dist_app/CmnInterface.js +91 -0
- package/dist_app/CmnInterface.js.map +1 -0
- package/dist_app/CmnLib.js +94 -0
- package/dist_app/CmnLib.js.map +1 -0
- package/dist_app/Config.js +26 -0
- package/dist_app/Config.js.map +1 -0
- package/dist_app/ConfigBase.js +152 -0
- package/dist_app/ConfigBase.js.map +1 -0
- package/dist_app/DebugMng.js +92 -0
- package/dist_app/DebugMng.js.map +1 -0
- package/dist_app/EventListenerCtn.js +21 -0
- package/dist_app/EventListenerCtn.js.map +1 -0
- package/dist_app/EventMng.js +1435 -1577
- package/dist_app/EventMng.js.map +1 -1
- package/dist_app/Grammar.js +194 -0
- package/dist_app/Grammar.js.map +1 -0
- package/dist_app/GrpLayer.js +163 -195
- package/dist_app/GrpLayer.js.map +1 -1
- package/dist_app/Layer.js +260 -0
- package/dist_app/Layer.js.map +1 -0
- package/dist_app/LayerMng.js +810 -992
- package/dist_app/LayerMng.js.map +1 -1
- package/dist_app/Main.js +144 -392
- package/dist_app/Main.js.map +1 -1
- package/dist_app/PropParser.js +936 -834
- package/dist_app/PropParser.js.map +1 -1
- package/dist_app/Reading.js +918 -786
- package/dist_app/Reading.js.map +1 -1
- package/dist_app/RubySpliter.js +59 -89
- package/dist_app/RubySpliter.js.map +1 -1
- package/dist_app/ScriptIterator.js +805 -1034
- package/dist_app/ScriptIterator.js.map +1 -1
- package/dist_app/SndBuf.js +1097 -1326
- package/dist_app/SndBuf.js.map +1 -1
- package/dist_app/SoundMng.js +124 -135
- package/dist_app/SoundMng.js.map +1 -1
- package/dist_app/SpritesMng.js +220 -231
- package/dist_app/SpritesMng.js.map +1 -1
- package/dist_app/SysBase.js +1729 -0
- package/dist_app/SysBase.js.map +1 -0
- package/dist_app/TxtLayer.js +1212 -1397
- package/dist_app/TxtLayer.js.map +1 -1
- package/dist_app/Variable.js +398 -466
- package/dist_app/Variable.js.map +1 -1
- package/dist_app/app.js +211 -8
- package/dist_app/app.js.map +1 -1
- package/dist_app/appMain.js +20 -21
- package/dist_app/appMain.js.map +1 -1
- package/dist_app/chunk.js +18 -0
- package/dist_app/gamepad.js +723 -511
- package/dist_app/gamepad.js.map +1 -1
- package/dist_app/pixi.js +11181 -0
- package/dist_app/pixi.js.map +1 -0
- package/dist_app/platform.js +424 -369
- package/dist_app/platform.js.map +1 -1
- package/dist_app/preload.js +2 -2
- package/dist_app/preload.js.map +1 -1
- package/dist_app/sn/AnalyzeTagArg.d.ts +1 -1
- package/dist_app/sn/AnalyzeTagArg.d.ts.map +1 -1
- package/dist_app/sn/CmnInterface.d.ts +3 -1
- package/dist_app/sn/CmnInterface.d.ts.map +1 -1
- package/dist_app/sn/CmnLib.d.ts.map +1 -1
- package/dist_app/sn/CmnTween.d.ts +7 -7
- package/dist_app/sn/CmnTween.d.ts.map +1 -1
- package/dist_app/sn/EventMng.d.ts.map +1 -1
- package/dist_app/sn/FocusMng.d.ts.map +1 -1
- package/dist_app/sn/Grammar.d.ts +1 -1
- package/dist_app/sn/Grammar.d.ts.map +1 -1
- package/dist_app/sn/Log.d.ts.map +1 -1
- package/dist_app/sn/Main.d.ts.map +1 -1
- package/dist_app/sn/Pages.d.ts.map +1 -1
- package/dist_app/sn/PropParser.d.ts +2 -2
- package/dist_app/sn/PropParser.d.ts.map +1 -1
- package/dist_app/sn/Reading.d.ts +7 -0
- package/dist_app/sn/Reading.d.ts.map +1 -1
- package/dist_app/sn/RubySpliter.d.ts.map +1 -1
- package/dist_app/sn/ScriptIterator.d.ts.map +1 -1
- package/dist_app/sn/SndBuf.d.ts +27 -16
- package/dist_app/sn/SndBuf.d.ts.map +1 -1
- package/dist_app/sn/SoundMng.d.ts +4 -1
- package/dist_app/sn/SoundMng.d.ts.map +1 -1
- package/dist_app/sn/SysBase.d.ts.map +1 -1
- package/dist_app/sn/TxtStage.d.ts +4 -1
- package/dist_app/sn/TxtStage.d.ts.map +1 -1
- package/dist_app/test/ValTest.d.ts +1 -1
- package/dist_app/test/ValTest.d.ts.map +1 -1
- package/package.json +24 -14
- package/dist/CmnTween.js +0 -193
- package/dist/CmnTween.js.map +0 -1
- package/dist/web2.js +0 -21644
- package/dist/web2.js.map +0 -1
- package/dist_app/CmnTween.js +0 -193
- package/dist_app/CmnTween.js.map +0 -1
- package/dist_app/app2.js +0 -18547
- package/dist_app/app2.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PropParser.js","sources":["../node_modules/parsimmon/build/parsimmon.umd.min.js","../src/sn/PropParser.ts"],"sourcesContent":["!function(n,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.Parsimmon=t():n.Parsimmon=t()}(\"undefined\"!=typeof self?self:this,function(){return function(n){var t={};function r(e){if(t[e])return t[e].exports;var u=t[e]={i:e,l:!1,exports:{}};return n[e].call(u.exports,u,u.exports,r),u.l=!0,u.exports}return r.m=n,r.c=t,r.d=function(n,t,e){r.o(n,t)||Object.defineProperty(n,t,{configurable:!1,enumerable:!0,get:e})},r.r=function(n){Object.defineProperty(n,\"__esModule\",{value:!0})},r.n=function(n){var t=n&&n.__esModule?function(){return n.default}:function(){return n};return r.d(t,\"a\",t),t},r.o=function(n,t){return Object.prototype.hasOwnProperty.call(n,t)},r.p=\"\",r(r.s=0)}([function(n,t,r){\"use strict\";function e(n){if(!(this instanceof e))return new e(n);this._=n}var u=e.prototype;function o(n,t){for(var r=0;r<n;r++)t(r)}function i(n,t,r){return function(n,t){o(t.length,function(r){n(t[r],r,t)})}(function(r,e,u){t=n(t,r,e,u)},r),t}function a(n,t){return i(function(t,r,e,u){return t.concat([n(r,e,u)])},[],t)}function f(n,t){var r={v:0,buf:t};return o(n,function(){var n;r={v:r.v<<1|(n=r.buf,n[0]>>7),buf:function(n){var t=i(function(n,t,r,e){return n.concat(r===e.length-1?Buffer.from([t,0]).readUInt16BE(0):e.readUInt16BE(r))},[],n);return Buffer.from(a(function(n){return(n<<1&65535)>>8},t))}(r.buf)}}),r}function c(){return\"undefined\"!=typeof Buffer}function s(){if(!c())throw new Error(\"Buffer global does not exist; please use webpack if you need to parse Buffers in the browser.\")}function l(n){s();var t=i(function(n,t){return n+t},0,n);if(t%8!=0)throw new Error(\"The bits [\"+n.join(\", \")+\"] add up to \"+t+\" which is not an even number of bytes; the total should be divisible by 8\");var r,u=t/8,o=(r=function(n){return n>48},i(function(n,t){return n||(r(t)?t:n)},null,n));if(o)throw new Error(o+\" bit range requested exceeds 48 bit (6 byte) Number max.\");return new e(function(t,r){var e=u+r;return e>t.length?x(r,u.toString()+\" bytes\"):b(e,i(function(n,t){var r=f(t,n.buf);return{coll:n.coll.concat(r.v),buf:r.buf}},{coll:[],buf:t.slice(r,e)},n).coll)})}function h(n,t){return new e(function(r,e){return s(),e+t>r.length?x(e,t+\" bytes for \"+n):b(e+t,r.slice(e,e+t))})}function p(n,t){if(\"number\"!=typeof(r=t)||Math.floor(r)!==r||t<0||t>6)throw new Error(n+\" requires integer length in range [0, 6].\");var r}function d(n){return p(\"uintBE\",n),h(\"uintBE(\"+n+\")\",n).map(function(t){return t.readUIntBE(0,n)})}function v(n){return p(\"uintLE\",n),h(\"uintLE(\"+n+\")\",n).map(function(t){return t.readUIntLE(0,n)})}function g(n){return p(\"intBE\",n),h(\"intBE(\"+n+\")\",n).map(function(t){return t.readIntBE(0,n)})}function m(n){return p(\"intLE\",n),h(\"intLE(\"+n+\")\",n).map(function(t){return t.readIntLE(0,n)})}function y(n){return n instanceof e}function E(n){return\"[object Array]\"==={}.toString.call(n)}function w(n){return c()&&Buffer.isBuffer(n)}function b(n,t){return{status:!0,index:n,value:t,furthest:-1,expected:[]}}function x(n,t){return E(t)||(t=[t]),{status:!1,index:-1,value:null,furthest:n,expected:t}}function B(n,t){if(!t)return n;if(n.furthest>t.furthest)return n;var r=n.furthest===t.furthest?function(n,t){if(function(){if(void 0!==e._supportsSet)return e._supportsSet;var n=\"undefined\"!=typeof Set;return e._supportsSet=n,n}()&&Array.from){for(var r=new Set(n),u=0;u<t.length;u++)r.add(t[u]);var o=Array.from(r);return o.sort(),o}for(var i={},a=0;a<n.length;a++)i[n[a]]=!0;for(var f=0;f<t.length;f++)i[t[f]]=!0;var c=[];for(var s in i)({}).hasOwnProperty.call(i,s)&&c.push(s);return c.sort(),c}(n.expected,t.expected):t.expected;return{status:n.status,index:n.index,value:n.value,furthest:t.furthest,expected:r}}var j={};function S(n,t){if(w(n))return{offset:t,line:-1,column:-1};n in j||(j[n]={});for(var r=j[n],e=0,u=0,o=0,i=t;i>=0;){if(i in r){e=r[i].line,0===o&&(o=r[i].lineStart);break}(\"\\n\"===n.charAt(i)||\"\\r\"===n.charAt(i)&&\"\\n\"!==n.charAt(i+1))&&(u++,0===o&&(o=i+1)),i--}var a=e+u,f=t-o;return r[t]={line:a,lineStart:o},{offset:t,line:a+1,column:f+1}}function _(n){if(!y(n))throw new Error(\"not a parser: \"+n)}function L(n,t){return\"string\"==typeof n?n.charAt(t):n[t]}function O(n){if(\"number\"!=typeof n)throw new Error(\"not a number: \"+n)}function k(n){if(\"function\"!=typeof n)throw new Error(\"not a function: \"+n)}function P(n){if(\"string\"!=typeof n)throw new Error(\"not a string: \"+n)}var q=2,A=3,I=8,F=5*I,M=4*I,z=\" \";function R(n,t){return new Array(t+1).join(n)}function U(n,t,r){var e=t-n.length;return e<=0?n:R(r,e)+n}function W(n,t,r,e){return{from:n-t>0?n-t:0,to:n+r>e?e:n+r}}function D(n,t){var r,e,u,o,f,c=t.index,s=c.offset,l=1;if(s===n.length)return\"Got the end of the input\";if(w(n)){var h=s-s%I,p=s-h,d=W(h,F,M+I,n.length),v=a(function(n){return a(function(n){return U(n.toString(16),2,\"0\")},n)},function(n,t){var r=n.length,e=[],u=0;if(r<=t)return[n.slice()];for(var o=0;o<r;o++)e[u]||e.push([]),e[u].push(n[o]),(o+1)%t==0&&u++;return e}(n.slice(d.from,d.to).toJSON().data,I));o=function(n){return 0===n.from&&1===n.to?{from:n.from,to:n.to}:{from:n.from/I,to:Math.floor(n.to/I)}}(d),e=h/I,r=3*p,p>=4&&(r+=1),l=2,u=a(function(n){return n.length<=4?n.join(\" \"):n.slice(0,4).join(\" \")+\" \"+n.slice(4).join(\" \")},v),(f=(8*(o.to>0?o.to-1:o.to)).toString(16).length)<2&&(f=2)}else{var g=n.split(/\\r\\n|[\\n\\r\\u2028\\u2029]/);r=c.column-1,e=c.line-1,o=W(e,q,A,g.length),u=g.slice(o.from,o.to),f=o.to.toString().length}var m=e-o.from;return w(n)&&(f=(8*(o.to>0?o.to-1:o.to)).toString(16).length)<2&&(f=2),i(function(t,e,u){var i,a=u===m,c=a?\"> \":z;return i=w(n)?U((8*(o.from+u)).toString(16),f,\"0\"):U((o.from+u+1).toString(),f,\" \"),[].concat(t,[c+i+\" | \"+e],a?[z+R(\" \",f)+\" | \"+U(\"\",r,\" \")+R(\"^\",l)]:[])},[],u).join(\"\\n\")}function N(n,t){return[\"\\n\",\"-- PARSING FAILED \"+R(\"-\",50),\"\\n\\n\",D(n,t),\"\\n\\n\",(r=t.expected,1===r.length?\"Expected:\\n\\n\"+r[0]:\"Expected one of the following: \\n\\n\"+r.join(\", \")),\"\\n\"].join(\"\");var r}function G(n){return void 0!==n.flags?n.flags:[n.global?\"g\":\"\",n.ignoreCase?\"i\":\"\",n.multiline?\"m\":\"\",n.unicode?\"u\":\"\",n.sticky?\"y\":\"\"].join(\"\")}function C(){for(var n=[].slice.call(arguments),t=n.length,r=0;r<t;r+=1)_(n[r]);return e(function(r,e){for(var u,o=new Array(t),i=0;i<t;i+=1){if(!(u=B(n[i]._(r,e),u)).status)return u;o[i]=u.value,e=u.index}return B(b(e,o),u)})}function J(){var n=[].slice.call(arguments);if(0===n.length)throw new Error(\"seqMap needs at least one argument\");var t=n.pop();return k(t),C.apply(null,n).map(function(n){return t.apply(null,n)})}function T(){var n=[].slice.call(arguments),t=n.length;if(0===t)return Y(\"zero alternates\");for(var r=0;r<t;r+=1)_(n[r]);return e(function(t,r){for(var e,u=0;u<n.length;u+=1)if((e=B(n[u]._(t,r),e)).status)return e;return e})}function V(n,t){return H(n,t).or(X([]))}function H(n,t){return _(n),_(t),J(n,t.then(n).many(),function(n,t){return[n].concat(t)})}function K(n){P(n);var t=\"'\"+n+\"'\";return e(function(r,e){var u=e+n.length,o=r.slice(e,u);return o===n?b(u,o):x(e,t)})}function Q(n,t){!function(n){if(!(n instanceof RegExp))throw new Error(\"not a regexp: \"+n);for(var t=G(n),r=0;r<t.length;r++){var e=t.charAt(r);if(\"i\"!==e&&\"m\"!==e&&\"u\"!==e&&\"s\"!==e)throw new Error('unsupported regexp flag \"'+e+'\": '+n)}}(n),arguments.length>=2?O(t):t=0;var r=function(n){return RegExp(\"^(?:\"+n.source+\")\",G(n))}(n),u=\"\"+n;return e(function(n,e){var o=r.exec(n.slice(e));if(o){if(0<=t&&t<=o.length){var i=o[0],a=o[t];return b(e+i.length,a)}return x(e,\"valid match group (0 to \"+o.length+\") in \"+u)}return x(e,u)})}function X(n){return e(function(t,r){return b(r,n)})}function Y(n){return e(function(t,r){return x(r,n)})}function Z(n){if(y(n))return e(function(t,r){var e=n._(t,r);return e.index=r,e.value=\"\",e});if(\"string\"==typeof n)return Z(K(n));if(n instanceof RegExp)return Z(Q(n));throw new Error(\"not a string, regexp, or parser: \"+n)}function $(n){return _(n),e(function(t,r){var e=n._(t,r),u=t.slice(r,e.index);return e.status?x(r,'not \"'+u+'\"'):b(r,null)})}function nn(n){return k(n),e(function(t,r){var e=L(t,r);return r<t.length&&n(e)?b(r+1,e):x(r,\"a character/byte matching \"+n)})}function tn(n,t){arguments.length<2&&(t=n,n=void 0);var r=e(function(n,e){return r._=t()._,r._(n,e)});return n?r.desc(n):r}function rn(){return Y(\"fantasy-land/empty\")}u.parse=function(n){if(\"string\"!=typeof n&&!w(n))throw new Error(\".parse must be called with a string or Buffer as its argument\");var t,r=this.skip(an)._(n,0);return t=r.status?{status:!0,value:r.value}:{status:!1,index:S(n,r.furthest),expected:r.expected},delete j[n],t},u.tryParse=function(n){var t=this.parse(n);if(t.status)return t.value;var r=N(n,t),e=new Error(r);throw e.type=\"ParsimmonError\",e.result=t,e},u.assert=function(n,t){return this.chain(function(r){return n(r)?X(r):Y(t)})},u.or=function(n){return T(this,n)},u.trim=function(n){return this.wrap(n,n)},u.wrap=function(n,t){return J(n,this,t,function(n,t){return t})},u.thru=function(n){return n(this)},u.then=function(n){return _(n),C(this,n).map(function(n){return n[1]})},u.many=function(){var n=this;return e(function(t,r){for(var e=[],u=void 0;;){if(!(u=B(n._(t,r),u)).status)return B(b(r,e),u);if(r===u.index)throw new Error(\"infinite loop detected in .many() parser --- calling .many() on a parser which can accept zero characters is usually the cause\");r=u.index,e.push(u.value)}})},u.tieWith=function(n){return P(n),this.map(function(t){if(function(n){if(!E(n))throw new Error(\"not an array: \"+n)}(t),t.length){P(t[0]);for(var r=t[0],e=1;e<t.length;e++)P(t[e]),r+=n+t[e];return r}return\"\"})},u.tie=function(){return this.tieWith(\"\")},u.times=function(n,t){var r=this;return arguments.length<2&&(t=n),O(n),O(t),e(function(e,u){for(var o=[],i=void 0,a=void 0,f=0;f<n;f+=1){if(a=B(i=r._(e,u),a),!i.status)return a;u=i.index,o.push(i.value)}for(;f<t&&(a=B(i=r._(e,u),a),i.status);f+=1)u=i.index,o.push(i.value);return B(b(u,o),a)})},u.result=function(n){return this.map(function(){return n})},u.atMost=function(n){return this.times(0,n)},u.atLeast=function(n){return J(this.times(n),this.many(),function(n,t){return n.concat(t)})},u.map=function(n){k(n);var t=this;return e(function(r,e){var u=t._(r,e);return u.status?B(b(u.index,n(u.value)),u):u})},u.contramap=function(n){k(n);var t=this;return e(function(r,e){var u=t.parse(n(r.slice(e)));return u.status?b(e+r.length,u.value):u})},u.promap=function(n,t){return k(n),k(t),this.contramap(n).map(t)},u.skip=function(n){return C(this,n).map(function(n){return n[0]})},u.mark=function(){return J(en,this,en,function(n,t,r){return{start:n,value:t,end:r}})},u.node=function(n){return J(en,this,en,function(t,r,e){return{name:n,value:r,start:t,end:e}})},u.sepBy=function(n){return V(this,n)},u.sepBy1=function(n){return H(this,n)},u.lookahead=function(n){return this.skip(Z(n))},u.notFollowedBy=function(n){return this.skip($(n))},u.desc=function(n){E(n)||(n=[n]);var t=this;return e(function(r,e){var u=t._(r,e);return u.status||(u.expected=n),u})},u.fallback=function(n){return this.or(X(n))},u.ap=function(n){return J(n,this,function(n,t){return n(t)})},u.chain=function(n){var t=this;return e(function(r,e){var u=t._(r,e);return u.status?B(n(u.value)._(r,u.index),u):u})},u.concat=u.or,u.empty=rn,u.of=X,u[\"fantasy-land/ap\"]=u.ap,u[\"fantasy-land/chain\"]=u.chain,u[\"fantasy-land/concat\"]=u.concat,u[\"fantasy-land/empty\"]=u.empty,u[\"fantasy-land/of\"]=u.of,u[\"fantasy-land/map\"]=u.map;var en=e(function(n,t){return b(t,S(n,t))}),un=e(function(n,t){return t>=n.length?x(t,\"any character/byte\"):b(t+1,L(n,t))}),on=e(function(n,t){return b(n.length,n.slice(t))}),an=e(function(n,t){return t<n.length?x(t,\"EOF\"):b(t,null)}),fn=Q(/[0-9]/).desc(\"a digit\"),cn=Q(/[0-9]*/).desc(\"optional digits\"),sn=Q(/[a-z]/i).desc(\"a letter\"),ln=Q(/[a-z]*/i).desc(\"optional letters\"),hn=Q(/\\s*/).desc(\"optional whitespace\"),pn=Q(/\\s+/).desc(\"whitespace\"),dn=K(\"\\r\"),vn=K(\"\\n\"),gn=K(\"\\r\\n\"),mn=T(gn,vn,dn).desc(\"newline\"),yn=T(mn,an);e.all=on,e.alt=T,e.any=un,e.cr=dn,e.createLanguage=function(n){var t={};for(var r in n)({}).hasOwnProperty.call(n,r)&&function(r){t[r]=tn(function(){return n[r](t)})}(r);return t},e.crlf=gn,e.custom=function(n){return e(n(b,x))},e.digit=fn,e.digits=cn,e.empty=rn,e.end=yn,e.eof=an,e.fail=Y,e.formatError=N,e.index=en,e.isParser=y,e.lazy=tn,e.letter=sn,e.letters=ln,e.lf=vn,e.lookahead=Z,e.makeFailure=x,e.makeSuccess=b,e.newline=mn,e.noneOf=function(n){return nn(function(t){return n.indexOf(t)<0}).desc(\"none of '\"+n+\"'\")},e.notFollowedBy=$,e.of=X,e.oneOf=function(n){for(var t=n.split(\"\"),r=0;r<t.length;r++)t[r]=\"'\"+t[r]+\"'\";return nn(function(t){return n.indexOf(t)>=0}).desc(t)},e.optWhitespace=hn,e.Parser=e,e.range=function(n,t){return nn(function(r){return n<=r&&r<=t}).desc(n+\"-\"+t)},e.regex=Q,e.regexp=Q,e.sepBy=V,e.sepBy1=H,e.seq=C,e.seqMap=J,e.seqObj=function(){for(var n,t={},r=0,u=(n=arguments,Array.prototype.slice.call(n)),o=u.length,i=0;i<o;i+=1){var a=u[i];if(!y(a)){if(E(a)&&2===a.length&&\"string\"==typeof a[0]&&y(a[1])){var f=a[0];if(Object.prototype.hasOwnProperty.call(t,f))throw new Error(\"seqObj: duplicate key \"+f);t[f]=!0,r++;continue}throw new Error(\"seqObj arguments must be parsers or [string, parser] array pairs.\")}}if(0===r)throw new Error(\"seqObj expects at least one named parser, found zero\");return e(function(n,t){for(var r,e={},i=0;i<o;i+=1){var a,f;if(E(u[i])?(a=u[i][0],f=u[i][1]):(a=null,f=u[i]),!(r=B(f._(n,t),r)).status)return r;a&&(e[a]=r.value),t=r.index}return B(b(t,e),r)})},e.string=K,e.succeed=X,e.takeWhile=function(n){return k(n),e(function(t,r){for(var e=r;e<t.length&&n(L(t,e));)e++;return b(e,t.slice(r,e))})},e.test=nn,e.whitespace=pn,e[\"fantasy-land/empty\"]=rn,e[\"fantasy-land/of\"]=X,e.Binary={bitSeq:l,bitSeqObj:function(n){s();var t={},r=0,e=a(function(n){if(E(n)){var e=n;if(2!==e.length)throw new Error(\"[\"+e.join(\", \")+\"] should be length 2, got length \"+e.length);if(P(e[0]),O(e[1]),Object.prototype.hasOwnProperty.call(t,e[0]))throw new Error(\"duplicate key in bitSeqObj: \"+e[0]);return t[e[0]]=!0,r++,e}return O(n),[null,n]},n);if(r<1)throw new Error(\"bitSeqObj expects at least one named pair, got [\"+n.join(\", \")+\"]\");var u=a(function(n){return n[0]},e);return l(a(function(n){return n[1]},e)).map(function(n){return i(function(n,t){return null!==t[0]&&(n[t[0]]=t[1]),n},{},a(function(t,r){return[t,n[r]]},u))})},byte:function(n){if(s(),O(n),n>255)throw new Error(\"Value specified to byte constructor (\"+n+\"=0x\"+n.toString(16)+\") is larger in value than a single byte.\");var t=(n>15?\"0x\":\"0x0\")+n.toString(16);return e(function(r,e){var u=L(r,e);return u===n?b(e+1,u):x(e,t)})},buffer:function(n){return h(\"buffer\",n).map(function(n){return Buffer.from(n)})},encodedString:function(n,t){return h(\"string\",t).map(function(t){return t.toString(n)})},uintBE:d,uint8BE:d(1),uint16BE:d(2),uint32BE:d(4),uintLE:v,uint8LE:v(1),uint16LE:v(2),uint32LE:v(4),intBE:g,int8BE:g(1),int16BE:g(2),int32BE:g(4),intLE:m,int8LE:m(1),int16LE:m(2),int32LE:m(4),floatBE:h(\"floatBE\",4).map(function(n){return n.readFloatBE(0)}),floatLE:h(\"floatLE\",4).map(function(n){return n.readFloatLE(0)}),doubleBE:h(\"doubleBE\",8).map(function(n){return n.readDoubleBE(0)}),doubleLE:h(\"doubleLE\",8).map(function(n){return n.readDoubleLE(0)})},n.exports=e}])});","/* eslint-disable @typescript-eslint/no-unsafe-call */\n/* eslint-disable @typescript-eslint/no-non-null-assertion */\n/* eslint-disable @typescript-eslint/no-unsafe-assignment */\n/* eslint-disable @typescript-eslint/no-unsafe-member-access */\n/* eslint-disable @typescript-eslint/no-unsafe-return */\n/* eslint-disable @typescript-eslint/no-unsafe-argument */\n/* eslint-disable @typescript-eslint/no-explicit-any */\n/* ***** BEGIN LICENSE BLOCK *****\n\tCopyright (c) 2018-2025 Famibee (famibee.blog38.fc2.com)\n\n\tThis software is released under the MIT License.\n\thttp://opensource.org/licenses/mit-license.php\n** ***** END LICENSE BLOCK ***** */\n\nimport {alt, lazy, of, optWhitespace, regex, seq, seqMap, string} from 'parsimmon';\nimport {int} from './CmnLib';\nimport type {T_PropParser, T_Variable, T_VAL_DATA, Scope} from './CmnInterface';\n\ntype IFncCalc = (a: any[]) => any\ntype IHFncCalc = { [key: string]: IFncCalc; }\n\nexport type T_RET_getValName = {\n\tscope\t: Scope;\n\tname\t: string;\n\tat\t\t: string;\n}\n\n\nexport class PropParser implements T_PropParser {\n\t#parser: any = null;\n\n\tconstructor(private readonly val: T_Variable, ce = '\\\\') {\n\t\tfunction ope(a: (string | RegExp)[]) {\n\t\t\tconst ps = [];\n\t\t\tfor (const v of a) ps.push(\n\t\t\t\t(typeof v === 'string' ?string(v) :regex(v))\n\t\t\t\t.trim(optWhitespace)\n\t\t\t);\n\t\t\treturn alt(...ps);\n\t\t}\n\t\tfunction opeH(ops: {[name: string]: string | RegExp}) {\n\t\t\tconst keys = Object.keys(ops).sort();\n\t\t\tconst ps = keys.map(k=>\n\t\t\t\t(typeof ops[k] === 'string'\n\t\t\t\t\t? string(ops[k]) :regex(ops[k]!))\n\t\t\t\t.trim(optWhitespace)\n\t\t\t\t.result(k)\n\t\t\t);\n\t\t\treturn alt(...ps);\n\t\t}\n\n\t\tfunction PREFIX(operatorsParser: any, nextParser: any) {\n\t\t\tconst parser: any = lazy(()=> seq(operatorsParser, parser).or(nextParser));\n\t\t\treturn parser;\n\t\t}\n\t\tfunction POSTFIX(operatorsParser: any, nextParser: any) {\n\t\t\treturn seqMap(nextParser, operatorsParser.many(), (x, suffixes: any)=> suffixes.reduce((acc: any, x: any) => [x, acc], x));\n\t\t}\n\n\t\t// right. (e.g. 1^2^3 is 1^(2^3) not (1^2)^3)\n\t\tfunction BINARY_RIGHT(operatorsParser: any, nextParser: any) {\n\t\t\tconst parser = lazy(\n\t\t\t\t()=> nextParser.chain(\n\t\t\t\t\t(next: any)=> seq(\n\t\t\t\t\t\toperatorsParser,\n\t\t\t\t\t\tof(next),\n\t\t\t\t\t\tparser\n\t\t\t\t\t).or(of(next))\n\t\t\t\t)\n\t\t\t);\n\t\t\treturn parser;\n\t\t}\n\n\t\t// left. (e.g. 1-2-3 is (1-2)-3 not 1-(2-3))\n\t\tfunction BINARY_LEFT(operatorsParser: any, nextParser: any) {\n\t\t\treturn seqMap(\n\t\t\t\tnextParser,\n\t\t\t\tseq(operatorsParser, nextParser).many(),\n\t\t\t\t(first, rest)=> rest.reduce((acc, ch)=> [ch[0], acc, ch[1]], first)\n\t\t\t);\n\t\t}\n\n\t\tconst Num = alt(\n\t\t\talt(\n\t\t\t\tregex(/-?(0|[1-9][0-9]*)\\.[0-9]+/),\n\t\t\t\tregex(/0x[0-9a-fA-F]+/)\n\t\t\t).map(Number),\n\t\t\talt(\n\t\t\t\tregex(/-?(0|[1-9][0-9]*)/)\n\t\t\t).map(n=> int(n))\n\t\t)\n\t\t.map(str=> ['!num!', str])\n\t\t.desc('number');\n\n\t\tconst NullLiteral = string('null')\n\t\t.map(()=> ['!str!', null]);\n\n\t\tconst BooleanLiteral = regex(/(true|false)/)\n\t\t.map(b=> ['!bool!', b === 'true'])\n\t\t.desc('boolean');\n\n\t\t// (new RegExp(\"~\")) の場合は、バックスラッシュは2つ必要\n\t\tconst StringLiteral = regex(new RegExp(`(?:\"(?:\\\\${ce}[\"'#\\\\n]|[^\"])*\"|'(?:\\\\${ce}[\"'#\\\\n]|[^'])*'|\\\\#(?:\\\\${ce}[\"'#\\\\n]|[^#])*\\\\#)`))\n\t\t\t// https://regex101.com/r/Fs5wL3/1\n\t\t\t// 15 matches (279 steps, 0.1ms) by PCRE2\n\t\t.map(b=> ['!str!', b.slice(1, -1).replaceAll(ce, '')])\n\t\t.desc('string');\n\n\t\tconst REG_BRACKETS = /\\[[^\\]]+\\]/g;\n\t\tconst VarLiteral = regex(/-?(?:(?:tmp|sys|save|mp):)?[^\\s!-/:-@[-^`{-~]+(?:\\.[^\\s!-/:-@[-^`{-~]+|\\[[^\\]]+\\])*(?:@str)?/)\n\t\t.map(b=> {\n\t\t\t//console.log(' 👺 VarLiteral:0 b:%O:', b);\n\t\t\tconst s = b.replaceAll(REG_BRACKETS, v=>\n\t\t\t\t// eslint-disable-next-line @typescript-eslint/restrict-plus-operands\n\t\t\t\t'.'+ this.parse(v.slice(1, -1))\n\t\t\t);\n\t\t\tconst v = this.val.getVal(s);\n\t\t\t// console.log(' 👹 val:%O: s:%O: v:%o', val, s, v);\n\t\t\tif (v === null || v === undefined) return ['!str!', v];\t// v == null は eqeqeq違反\n\t\t\tif (typeof v === 'boolean') return ['!bool!', v];\n\n\t\t\treturn Object.prototype.toString.call(v) === '[object String]'\n\t\t\t\t? ['!str!', String(v)]\n\t\t\t\t: ['!num!', Number(v)];\n\t\t})\n\t\t.desc('string');\n\n\t\tconst Basic = lazy(()=>\n\t\t\tstring('(').then(this.#parser).skip(string(')'))\n\t\t\t.or(Num)\n\t\t\t.or(NullLiteral)\n\t\t\t.or(BooleanLiteral)\n\t\t\t.or(StringLiteral)\n\t\t\t.or(VarLiteral)\n\t\t);\n\n\t\tconst table = [\n\t\t\t// 演算子の優先順位 - JavaScript | MDN https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Operators/Operator_precedence\n\t\t\t// 優先順位:18(メンバーへのアクセス、計算値によるメンバーへのアクセス)\n\t\t\t\t// a.b a[b]\n\t\t\t{type: PREFIX, ops: ope([/[A-Za-z_][A-Za-z0-9_]*(?=\\()/])},\n\n\t\t\t// 優先順位:16\n\t\t\t{type: POSTFIX, ops: opeH({PostfixInc: '++'})},\n\t\t\t{type: POSTFIX, ops: opeH({PostfixDec: '--'})},\n\t\t\t\t// 【未サポート】後置インクリメント・デクリメント\n\t\t\t// 優先順位:15\n\t\t\t{type: PREFIX, ops: ope([/!(?!=)|~/])},\t// 論理 NOT (!)、ビット単位 NOT (~)\n\t\t\t{type: PREFIX, ops: opeH({PrefixInc: '++'})},\n\t\t\t{type: PREFIX, ops: opeH({PrefixDec: '--'})},\n\t\t\t\t// 【未サポート】前置インクリメント・デクリメント\n\t\t//\t{type: PREFIX, ops: opeH({Unaryplus: /\\+(?!\\+)/})},\t// 単項プラス\n\t\t\t{type: PREFIX, ops: opeH({UnaryNegate: /-(?!-)/})},\t// 単項マイナス\n\n\t\t\t// 優先順位:14以下(並びに注意)\n\t\t\t{type: BINARY_RIGHT, ops: ope(['**'])},\n\t\t\t{type: BINARY_LEFT, ops: ope(['*', '/', '¥', '%'])},\n\t\t\t{type: BINARY_LEFT, ops: ope(['+', '-'])},\n\t\t\t{type: BINARY_LEFT, ops: ope([/>>>|<<|>>/])},\n\t\t\t{type: BINARY_LEFT, ops: ope([/<=|<|>=|>/])},\n\t\t\t{type: BINARY_LEFT, ops: ope([/===|!==|==|!=/])},\n\t\t\t{type: BINARY_LEFT, ops: ope([/&(?!&)/])},\n\t\t\t{type: BINARY_LEFT, ops: ope(['^'])},\n\t\t\t{type: BINARY_LEFT, ops: ope([/\\|(?!\\|)/])},\n\t\t\t{type: BINARY_LEFT, ops: ope(['&&'])},\n\t\t\t{type: BINARY_LEFT, ops: ope(['||'])},\n\t\t\t{type: BINARY_RIGHT, ops: ope([':'])},\n\t\t\t{type: BINARY_RIGHT, ops: ope(['?'])},\n\t\t];\n\n\t\tconst tableParser = table.reduce(\n\t\t\t(acc, level)=> level.type(level.ops, acc),\n\t\t\tBasic\n\t\t);\n\t\tthis.#parser = tableParser.trim(optWhitespace);\n\t}\n\n\tparse(s: string): T_VAL_DATA {\n\t\t//console.log(\"🌱 Parsimmon'%s'\", s);\n\t\tconst p = this.#parser.parse(s);\n\t\tif (! p.status) throw Error('(PropParser)文法エラー【'+ s +'】');\n\n\t\tconst a = p.value;\n\t\tif (a[0] === '!str!') return this.#procEmbedVar(a[1]);\n\n\t\treturn this.#calc(a);\n\t}\n\t#calc(a: any[]): T_VAL_DATA {\n\t\t//console.log('🌷 calc%O', {...a});\n\t\tconst elm = a.shift();\n\t\tif (elm instanceof Array) return this.#calc(elm);\n\n\t\tconst fnc = this.#hFnc[elm];\n\t\treturn fnc ?fnc(a) :Object(null);\n\t}\n\t#hFnc: IHFncCalc = {\n\t\t'!num!': a=> a.shift(),\n\t\t'!str!': a=> this.#procEmbedVar(a.shift()),\n\t\t'!bool!':a=> a.shift(),\n\n\t\tPostfixInc:\t_=> {throw Error('(PropParser)後置インクリメントは未サポートです')},\n\t\tPostfixDec:\t_=> {throw Error('(PropParser)後置デクリメントは未サポートです')},\n\t\tPrefixInc:\t_=> {throw Error('(PropParser)前置インクリメントは未サポートです')},\n\t\tPrefixDec:\t_=> {throw Error('(PropParser)前置デクリメントは未サポートです')},\n\n\t\t// 論理 NOT\n\t\t'!':\ta=> ! this.#hFnc.Boolean!(a),\n\t\t// チルダ演算子(ビット反転)\n\t\t'~':\ta=> ~ Number(this.#calc(a.shift())),\n\n//\t\tUnaryNegate:\ta=> -Number(this.#calc(a.shift())),\n\t\tUnaryNegate:\ta=> -this.#hFnc.Number!(a),\n\t//\tUnaryplus:\t\ta=> this.#hFnc['Number'](a),\n\n\t\t// 乗算、除算、剰余\n\t\t'**':\ta=> Number(this.#calc(a.shift())) **\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\t\t'*':\ta=> Number(this.#calc(a.shift())) *\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\t\t'/':\ta=> Number(this.#calc(a.shift())) /\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\t\t'¥':\ta=> Math.floor( this.#hFnc['/']!(a) ),\n\t\t'%':\ta=> Number(this.#calc(a.shift())) %\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\n\t\t// 加算、減算、文字列の連結\n\t\t'+':\ta=> {\n\t\t\tconst b = this.#calc(a.shift());\n\t\t\tconst c = this.#calc(a.shift());\n\t\t\treturn Object.prototype.toString.call(b) === '[object String]'\n\t\t\t\t|| Object.prototype.toString.call(c) === '[object String]'\n\t\t\t\t\t? String(b) + String(c) : Number(b) + Number(c);\n\t\t},\n\t\t'-':\ta=> Number(this.#calc(a.shift())) -\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\n\t\t// 関数\n\t\t'int':\t\ta=> int(this.#fncSub_ChkNum(a.shift())),\n\t\t'parseInt':\ta=> int(this.#hFnc.Number!(a)),\n\t\t'Number':\ta=> {\n\t\t\tconst b = this.#calc(a.shift());\n\t\t\treturn Object.prototype.toString.call(b) === '[object String]'\n\t\t\t\t? this.#fncSub_ChkNum(this.#parser.parse(String(b)).value)\n\t\t\t\t: Number(b);\n\t\t},\n\t\t'Boolean':\ta=> {\n\t\t\tconst b = a.shift();\n\t\t\treturn b[0] === '!bool!'\n\t\t\t\t? Boolean( b[1] )\n\t\t\t\t: Boolean(this.#calc(b));\n\t\t},\n\t\t'ceil':\t\ta=> Math.ceil( this.#fncSub_ChkNum(a.shift()) ),\n\t\t'floor':\ta=> Math.floor( this.#fncSub_ChkNum(a.shift()) ),\n\t\t'round':\ta=> Math.round( this.#fncSub_ChkNum(a.shift()) ),\n\t\t'isNaN':\ta=> Number.isNaN( this.#fncSub_ChkNum(a.shift()) ),\n\n\t\t// ビットシフト\n\t\t'<<':\ta=> Number(this.#calc(a.shift())) <<\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\t\t'>>':\ta=> Number(this.#calc(a.shift())) >>\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\t\t'>>>':\ta=> Number(this.#calc(a.shift())) >>>\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\n\t\t// 等値、非等値、厳密等価、厳密非等価\n\t\t'<':\ta=> Number(this.#calc(a.shift())) <\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\t\t'<=':\ta=> Number(this.#calc(a.shift())) <=\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\t\t'>':\ta=> Number(this.#calc(a.shift())) >\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\t\t'>=':\ta=> Number(this.#calc(a.shift())) >=\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\n\t\t// 小なり、以下、大なり、以上\n\t\t'==':\ta=> {\n\t\t\tconst b = this.#calc(a.shift());\n\t\t\tconst c = this.#calc(a.shift());\n\t\t\t// eslint-disable-next-line eqeqeq\n\t\t\treturn b == null && c == null\n\t\t\t\t// eslint-disable-next-line eqeqeq\n\t\t\t\t? b == c : String(b) === String(c);\n\t\t},\n\t\t'!=':\ta=> ! this.#hFnc['==']!(a),\n\t\t'===':\ta=> {\n\t\t\tconst b = this.#calc(a.shift());\n\t\t\tconst c = this.#calc(a.shift());\n\t\t\t// eslint-disable-next-line eqeqeq\n\t\t\treturn Object.prototype.toString.call(b) !=\n\t\t\t\t\tObject.prototype.toString.call(c)\n\t\t\t\t\t? false : String(b) === String(c);\n\t\t},\n\t\t'!==':\ta=> ! this.#hFnc['===']!(a),\n\n\t\t// ビット演算子\n\t\t'&':\ta=> Number(this.#calc(a.shift())) &\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\t\t'^':\ta=> Number(this.#calc(a.shift())) ^\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\t\t'|':\ta=> Number(this.#calc(a.shift())) |\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\n\t\t// 論理 AND,OR\n\t\t'&&':\ta=> String(this.#calc(a.shift())) === 'true' &&\n\t\t\t\t\tString(this.#calc(a.shift())) === 'true',\n\t\t'||':\ta=> String(this.#calc(a.shift())) === 'true' ||\n\t\t\t\t\tString(this.#calc(a.shift())) === 'true',\n\n\t\t// 条件\n\t\t'?':\ta=> {\n\t\t\tconst cond = this.#hFnc.Boolean!(a);\n\t\t\tconst elm2 = a.shift();\n\t\t\tif (elm2[0] !== ':') throw Error('(PropParser)三項演算子の文法エラーです。: が見つかりません');\n\n\t\t\treturn this.#calc(elm2[cond ?1 :2]);\n\t\t},\n\t\t':':\t()=> {throw Error('(PropParser)三項演算子の文法エラーです。? が見つかりません')},\n\t}\n\t#fncSub_ChkNum(v: any[]): number {\n\t\tconst b = this.#calc(v);\n\t\tif (Object.prototype.toString.call(b) !== '[object Number]') throw Error('(PropParser)引数【'+ String(b) +'】が数値ではありません');\n\t\treturn Number(b);\n\t}\n\n\treadonly #REG_EMBEDVAR\n\t\t= /(\\$((tmp|sys|save|mp):)?[^\\s!--/:-@[-^`{-~]+|#\\{[^}]+})/g;\n\t#procEmbedVar(b: any): any {\n\t\tif (b === null || b === undefined) return b;\n\t\t\t// b == null は eqeqeq違反\n\n\t\treturn String(b).replaceAll(\n\t\t\tthis.#REG_EMBEDVAR,\n\t\t\tv=> String(v.startsWith('$')\n\t\t\t\t? this.val.getVal(v.slice(1))\n\t\t\t\t: this.parse(v.slice(2, -1)))\n\t\t);\n\t}\n\n\n\tgetValAmpersand = (val: string)=> val.startsWith('&')\n\t\t? String(this.parse(val.slice(1)))\n\t\t: val;\n\n\n\tstatic\treadonly\t#REG_VAL\n\t\t= /^((?<scope>\\w+?):)?(?<name>[^\\s :@]+)(?<at>@str)?$/;\n\t\t// 522 match 18413 step(~10ms) https://regex101.com/r/tmCKuE/1\n\t\t\t// →これは改良しようがない。いい意味で改善の余地なし\n\tstatic\tgetValName(arg_name: string): T_RET_getValName | null {\n\t\tconst e = this.#REG_VAL.exec(arg_name.trim());\n\t\tconst g = e?.groups;\n\t\tif (! g) return null;\n\n\t\tconst {scope='tmp', name, at=''} = <T_RET_getValName>g;\n\t\tif (! PropParser.#A_SCOPE.includes(scope)) throw `[変数に値セット] scopeが異常【${scope}】です`;\n\t\treturn {\n\t\t\tscope,\n\t\t\tname\t: PropParser.#getValName_B2D(name),\n\t\t\tat,\n\t\t};\n\t}\n\tstatic\treadonly\t#A_SCOPE = ['tmp', 'sys', 'save', 'mp'];\n\n\tstatic\t#getValName_B2D(str: string): string {\n\t\tlet i = 0, e = 0, s = str;\n\t\t// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n\t\twhile (true) {\n\t\t\ti = s.indexOf('[\"');\n\t\t\tif (i < 0) {\n\t\t\t\ti = s.indexOf('[\\'');\n\t\t\t\tif (i < 0) break;\n\n\t\t\t\te = s.indexOf('\\']', i+2);\n\t\t\t}\n\t\t\telse {\n\t\t\t\te = s.indexOf('\"]', i+2);\n\t\t\t}\n\t\t\tif (e < 0) break;\n\n\t\t\ts = s.slice(0, i) +'.'+ s.slice(i+2, e)\n\t\t\t\t+ s.slice(e+2);\n\t\t\ti = e-2;\t// -3+1\n\t\t}\n\n\t\treturn s;\n\t}\n\n}\n"],"names":["n","t","module","this","r","e","u","o","i","a","f","c","s","l","x","h","p","d","v","g","m","y","w","B","j","S","_","L","O","k","P","q","A","I","F","M","z","R","U","W","D","N","G","C","J","T","Y","V","H","X","Q","Z","$","nn","tn","rn","an","en","un","on","fn","cn","sn","ln","hn","pn","dn","vn","gn","mn","yn","PropParser","val","ce","ope","ps","string","regex","optWhitespace","alt","opeH","ops","PREFIX","operatorsParser","nextParser","parser","lazy","seq","POSTFIX","seqMap","suffixes","acc","BINARY_RIGHT","next","of","BINARY_LEFT","first","rest","ch","Num","int","str","NullLiteral","BooleanLiteral","b","StringLiteral","REG_BRACKETS","VarLiteral","Basic","#parser","tableParser","level","#procEmbedVar","#calc","elm","fnc","#hFnc","#fncSub_ChkNum","cond","elm2","#REG_EMBEDVAR","#REG_VAL","arg_name","scope","name","at","#A_SCOPE","#getValName_B2D"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"PropParser.js","names":["n","t","r","e","u","o","i","a","f","c","s","l","h","p","d","v","g","m","val: T_Variable","parser: any","#parser","#procEmbedVar","#calc","#hFnc","#fncSub_ChkNum","#REG_EMBEDVAR","#REG_VAL","#A_SCOPE","#getValName_B2D"],"sources":["../node_modules/parsimmon/build/parsimmon.umd.min.js","../src/sn/PropParser.ts"],"sourcesContent":["!function(n,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.Parsimmon=t():n.Parsimmon=t()}(\"undefined\"!=typeof self?self:this,function(){return function(n){var t={};function r(e){if(t[e])return t[e].exports;var u=t[e]={i:e,l:!1,exports:{}};return n[e].call(u.exports,u,u.exports,r),u.l=!0,u.exports}return r.m=n,r.c=t,r.d=function(n,t,e){r.o(n,t)||Object.defineProperty(n,t,{configurable:!1,enumerable:!0,get:e})},r.r=function(n){Object.defineProperty(n,\"__esModule\",{value:!0})},r.n=function(n){var t=n&&n.__esModule?function(){return n.default}:function(){return n};return r.d(t,\"a\",t),t},r.o=function(n,t){return Object.prototype.hasOwnProperty.call(n,t)},r.p=\"\",r(r.s=0)}([function(n,t,r){\"use strict\";function e(n){if(!(this instanceof e))return new e(n);this._=n}var u=e.prototype;function o(n,t){for(var r=0;r<n;r++)t(r)}function i(n,t,r){return function(n,t){o(t.length,function(r){n(t[r],r,t)})}(function(r,e,u){t=n(t,r,e,u)},r),t}function a(n,t){return i(function(t,r,e,u){return t.concat([n(r,e,u)])},[],t)}function f(n,t){var r={v:0,buf:t};return o(n,function(){var n;r={v:r.v<<1|(n=r.buf,n[0]>>7),buf:function(n){var t=i(function(n,t,r,e){return n.concat(r===e.length-1?Buffer.from([t,0]).readUInt16BE(0):e.readUInt16BE(r))},[],n);return Buffer.from(a(function(n){return(n<<1&65535)>>8},t))}(r.buf)}}),r}function c(){return\"undefined\"!=typeof Buffer}function s(){if(!c())throw new Error(\"Buffer global does not exist; please use webpack if you need to parse Buffers in the browser.\")}function l(n){s();var t=i(function(n,t){return n+t},0,n);if(t%8!=0)throw new Error(\"The bits [\"+n.join(\", \")+\"] add up to \"+t+\" which is not an even number of bytes; the total should be divisible by 8\");var r,u=t/8,o=(r=function(n){return n>48},i(function(n,t){return n||(r(t)?t:n)},null,n));if(o)throw new Error(o+\" bit range requested exceeds 48 bit (6 byte) Number max.\");return new e(function(t,r){var e=u+r;return e>t.length?x(r,u.toString()+\" bytes\"):b(e,i(function(n,t){var r=f(t,n.buf);return{coll:n.coll.concat(r.v),buf:r.buf}},{coll:[],buf:t.slice(r,e)},n).coll)})}function h(n,t){return new e(function(r,e){return s(),e+t>r.length?x(e,t+\" bytes for \"+n):b(e+t,r.slice(e,e+t))})}function p(n,t){if(\"number\"!=typeof(r=t)||Math.floor(r)!==r||t<0||t>6)throw new Error(n+\" requires integer length in range [0, 6].\");var r}function d(n){return p(\"uintBE\",n),h(\"uintBE(\"+n+\")\",n).map(function(t){return t.readUIntBE(0,n)})}function v(n){return p(\"uintLE\",n),h(\"uintLE(\"+n+\")\",n).map(function(t){return t.readUIntLE(0,n)})}function g(n){return p(\"intBE\",n),h(\"intBE(\"+n+\")\",n).map(function(t){return t.readIntBE(0,n)})}function m(n){return p(\"intLE\",n),h(\"intLE(\"+n+\")\",n).map(function(t){return t.readIntLE(0,n)})}function y(n){return n instanceof e}function E(n){return\"[object Array]\"==={}.toString.call(n)}function w(n){return c()&&Buffer.isBuffer(n)}function b(n,t){return{status:!0,index:n,value:t,furthest:-1,expected:[]}}function x(n,t){return E(t)||(t=[t]),{status:!1,index:-1,value:null,furthest:n,expected:t}}function B(n,t){if(!t)return n;if(n.furthest>t.furthest)return n;var r=n.furthest===t.furthest?function(n,t){if(function(){if(void 0!==e._supportsSet)return e._supportsSet;var n=\"undefined\"!=typeof Set;return e._supportsSet=n,n}()&&Array.from){for(var r=new Set(n),u=0;u<t.length;u++)r.add(t[u]);var o=Array.from(r);return o.sort(),o}for(var i={},a=0;a<n.length;a++)i[n[a]]=!0;for(var f=0;f<t.length;f++)i[t[f]]=!0;var c=[];for(var s in i)({}).hasOwnProperty.call(i,s)&&c.push(s);return c.sort(),c}(n.expected,t.expected):t.expected;return{status:n.status,index:n.index,value:n.value,furthest:t.furthest,expected:r}}var j={};function S(n,t){if(w(n))return{offset:t,line:-1,column:-1};n in j||(j[n]={});for(var r=j[n],e=0,u=0,o=0,i=t;i>=0;){if(i in r){e=r[i].line,0===o&&(o=r[i].lineStart);break}(\"\\n\"===n.charAt(i)||\"\\r\"===n.charAt(i)&&\"\\n\"!==n.charAt(i+1))&&(u++,0===o&&(o=i+1)),i--}var a=e+u,f=t-o;return r[t]={line:a,lineStart:o},{offset:t,line:a+1,column:f+1}}function _(n){if(!y(n))throw new Error(\"not a parser: \"+n)}function L(n,t){return\"string\"==typeof n?n.charAt(t):n[t]}function O(n){if(\"number\"!=typeof n)throw new Error(\"not a number: \"+n)}function k(n){if(\"function\"!=typeof n)throw new Error(\"not a function: \"+n)}function P(n){if(\"string\"!=typeof n)throw new Error(\"not a string: \"+n)}var q=2,A=3,I=8,F=5*I,M=4*I,z=\" \";function R(n,t){return new Array(t+1).join(n)}function U(n,t,r){var e=t-n.length;return e<=0?n:R(r,e)+n}function W(n,t,r,e){return{from:n-t>0?n-t:0,to:n+r>e?e:n+r}}function D(n,t){var r,e,u,o,f,c=t.index,s=c.offset,l=1;if(s===n.length)return\"Got the end of the input\";if(w(n)){var h=s-s%I,p=s-h,d=W(h,F,M+I,n.length),v=a(function(n){return a(function(n){return U(n.toString(16),2,\"0\")},n)},function(n,t){var r=n.length,e=[],u=0;if(r<=t)return[n.slice()];for(var o=0;o<r;o++)e[u]||e.push([]),e[u].push(n[o]),(o+1)%t==0&&u++;return e}(n.slice(d.from,d.to).toJSON().data,I));o=function(n){return 0===n.from&&1===n.to?{from:n.from,to:n.to}:{from:n.from/I,to:Math.floor(n.to/I)}}(d),e=h/I,r=3*p,p>=4&&(r+=1),l=2,u=a(function(n){return n.length<=4?n.join(\" \"):n.slice(0,4).join(\" \")+\" \"+n.slice(4).join(\" \")},v),(f=(8*(o.to>0?o.to-1:o.to)).toString(16).length)<2&&(f=2)}else{var g=n.split(/\\r\\n|[\\n\\r\\u2028\\u2029]/);r=c.column-1,e=c.line-1,o=W(e,q,A,g.length),u=g.slice(o.from,o.to),f=o.to.toString().length}var m=e-o.from;return w(n)&&(f=(8*(o.to>0?o.to-1:o.to)).toString(16).length)<2&&(f=2),i(function(t,e,u){var i,a=u===m,c=a?\"> \":z;return i=w(n)?U((8*(o.from+u)).toString(16),f,\"0\"):U((o.from+u+1).toString(),f,\" \"),[].concat(t,[c+i+\" | \"+e],a?[z+R(\" \",f)+\" | \"+U(\"\",r,\" \")+R(\"^\",l)]:[])},[],u).join(\"\\n\")}function N(n,t){return[\"\\n\",\"-- PARSING FAILED \"+R(\"-\",50),\"\\n\\n\",D(n,t),\"\\n\\n\",(r=t.expected,1===r.length?\"Expected:\\n\\n\"+r[0]:\"Expected one of the following: \\n\\n\"+r.join(\", \")),\"\\n\"].join(\"\");var r}function G(n){return void 0!==n.flags?n.flags:[n.global?\"g\":\"\",n.ignoreCase?\"i\":\"\",n.multiline?\"m\":\"\",n.unicode?\"u\":\"\",n.sticky?\"y\":\"\"].join(\"\")}function C(){for(var n=[].slice.call(arguments),t=n.length,r=0;r<t;r+=1)_(n[r]);return e(function(r,e){for(var u,o=new Array(t),i=0;i<t;i+=1){if(!(u=B(n[i]._(r,e),u)).status)return u;o[i]=u.value,e=u.index}return B(b(e,o),u)})}function J(){var n=[].slice.call(arguments);if(0===n.length)throw new Error(\"seqMap needs at least one argument\");var t=n.pop();return k(t),C.apply(null,n).map(function(n){return t.apply(null,n)})}function T(){var n=[].slice.call(arguments),t=n.length;if(0===t)return Y(\"zero alternates\");for(var r=0;r<t;r+=1)_(n[r]);return e(function(t,r){for(var e,u=0;u<n.length;u+=1)if((e=B(n[u]._(t,r),e)).status)return e;return e})}function V(n,t){return H(n,t).or(X([]))}function H(n,t){return _(n),_(t),J(n,t.then(n).many(),function(n,t){return[n].concat(t)})}function K(n){P(n);var t=\"'\"+n+\"'\";return e(function(r,e){var u=e+n.length,o=r.slice(e,u);return o===n?b(u,o):x(e,t)})}function Q(n,t){!function(n){if(!(n instanceof RegExp))throw new Error(\"not a regexp: \"+n);for(var t=G(n),r=0;r<t.length;r++){var e=t.charAt(r);if(\"i\"!==e&&\"m\"!==e&&\"u\"!==e&&\"s\"!==e)throw new Error('unsupported regexp flag \"'+e+'\": '+n)}}(n),arguments.length>=2?O(t):t=0;var r=function(n){return RegExp(\"^(?:\"+n.source+\")\",G(n))}(n),u=\"\"+n;return e(function(n,e){var o=r.exec(n.slice(e));if(o){if(0<=t&&t<=o.length){var i=o[0],a=o[t];return b(e+i.length,a)}return x(e,\"valid match group (0 to \"+o.length+\") in \"+u)}return x(e,u)})}function X(n){return e(function(t,r){return b(r,n)})}function Y(n){return e(function(t,r){return x(r,n)})}function Z(n){if(y(n))return e(function(t,r){var e=n._(t,r);return e.index=r,e.value=\"\",e});if(\"string\"==typeof n)return Z(K(n));if(n instanceof RegExp)return Z(Q(n));throw new Error(\"not a string, regexp, or parser: \"+n)}function $(n){return _(n),e(function(t,r){var e=n._(t,r),u=t.slice(r,e.index);return e.status?x(r,'not \"'+u+'\"'):b(r,null)})}function nn(n){return k(n),e(function(t,r){var e=L(t,r);return r<t.length&&n(e)?b(r+1,e):x(r,\"a character/byte matching \"+n)})}function tn(n,t){arguments.length<2&&(t=n,n=void 0);var r=e(function(n,e){return r._=t()._,r._(n,e)});return n?r.desc(n):r}function rn(){return Y(\"fantasy-land/empty\")}u.parse=function(n){if(\"string\"!=typeof n&&!w(n))throw new Error(\".parse must be called with a string or Buffer as its argument\");var t,r=this.skip(an)._(n,0);return t=r.status?{status:!0,value:r.value}:{status:!1,index:S(n,r.furthest),expected:r.expected},delete j[n],t},u.tryParse=function(n){var t=this.parse(n);if(t.status)return t.value;var r=N(n,t),e=new Error(r);throw e.type=\"ParsimmonError\",e.result=t,e},u.assert=function(n,t){return this.chain(function(r){return n(r)?X(r):Y(t)})},u.or=function(n){return T(this,n)},u.trim=function(n){return this.wrap(n,n)},u.wrap=function(n,t){return J(n,this,t,function(n,t){return t})},u.thru=function(n){return n(this)},u.then=function(n){return _(n),C(this,n).map(function(n){return n[1]})},u.many=function(){var n=this;return e(function(t,r){for(var e=[],u=void 0;;){if(!(u=B(n._(t,r),u)).status)return B(b(r,e),u);if(r===u.index)throw new Error(\"infinite loop detected in .many() parser --- calling .many() on a parser which can accept zero characters is usually the cause\");r=u.index,e.push(u.value)}})},u.tieWith=function(n){return P(n),this.map(function(t){if(function(n){if(!E(n))throw new Error(\"not an array: \"+n)}(t),t.length){P(t[0]);for(var r=t[0],e=1;e<t.length;e++)P(t[e]),r+=n+t[e];return r}return\"\"})},u.tie=function(){return this.tieWith(\"\")},u.times=function(n,t){var r=this;return arguments.length<2&&(t=n),O(n),O(t),e(function(e,u){for(var o=[],i=void 0,a=void 0,f=0;f<n;f+=1){if(a=B(i=r._(e,u),a),!i.status)return a;u=i.index,o.push(i.value)}for(;f<t&&(a=B(i=r._(e,u),a),i.status);f+=1)u=i.index,o.push(i.value);return B(b(u,o),a)})},u.result=function(n){return this.map(function(){return n})},u.atMost=function(n){return this.times(0,n)},u.atLeast=function(n){return J(this.times(n),this.many(),function(n,t){return n.concat(t)})},u.map=function(n){k(n);var t=this;return e(function(r,e){var u=t._(r,e);return u.status?B(b(u.index,n(u.value)),u):u})},u.contramap=function(n){k(n);var t=this;return e(function(r,e){var u=t.parse(n(r.slice(e)));return u.status?b(e+r.length,u.value):u})},u.promap=function(n,t){return k(n),k(t),this.contramap(n).map(t)},u.skip=function(n){return C(this,n).map(function(n){return n[0]})},u.mark=function(){return J(en,this,en,function(n,t,r){return{start:n,value:t,end:r}})},u.node=function(n){return J(en,this,en,function(t,r,e){return{name:n,value:r,start:t,end:e}})},u.sepBy=function(n){return V(this,n)},u.sepBy1=function(n){return H(this,n)},u.lookahead=function(n){return this.skip(Z(n))},u.notFollowedBy=function(n){return this.skip($(n))},u.desc=function(n){E(n)||(n=[n]);var t=this;return e(function(r,e){var u=t._(r,e);return u.status||(u.expected=n),u})},u.fallback=function(n){return this.or(X(n))},u.ap=function(n){return J(n,this,function(n,t){return n(t)})},u.chain=function(n){var t=this;return e(function(r,e){var u=t._(r,e);return u.status?B(n(u.value)._(r,u.index),u):u})},u.concat=u.or,u.empty=rn,u.of=X,u[\"fantasy-land/ap\"]=u.ap,u[\"fantasy-land/chain\"]=u.chain,u[\"fantasy-land/concat\"]=u.concat,u[\"fantasy-land/empty\"]=u.empty,u[\"fantasy-land/of\"]=u.of,u[\"fantasy-land/map\"]=u.map;var en=e(function(n,t){return b(t,S(n,t))}),un=e(function(n,t){return t>=n.length?x(t,\"any character/byte\"):b(t+1,L(n,t))}),on=e(function(n,t){return b(n.length,n.slice(t))}),an=e(function(n,t){return t<n.length?x(t,\"EOF\"):b(t,null)}),fn=Q(/[0-9]/).desc(\"a digit\"),cn=Q(/[0-9]*/).desc(\"optional digits\"),sn=Q(/[a-z]/i).desc(\"a letter\"),ln=Q(/[a-z]*/i).desc(\"optional letters\"),hn=Q(/\\s*/).desc(\"optional whitespace\"),pn=Q(/\\s+/).desc(\"whitespace\"),dn=K(\"\\r\"),vn=K(\"\\n\"),gn=K(\"\\r\\n\"),mn=T(gn,vn,dn).desc(\"newline\"),yn=T(mn,an);e.all=on,e.alt=T,e.any=un,e.cr=dn,e.createLanguage=function(n){var t={};for(var r in n)({}).hasOwnProperty.call(n,r)&&function(r){t[r]=tn(function(){return n[r](t)})}(r);return t},e.crlf=gn,e.custom=function(n){return e(n(b,x))},e.digit=fn,e.digits=cn,e.empty=rn,e.end=yn,e.eof=an,e.fail=Y,e.formatError=N,e.index=en,e.isParser=y,e.lazy=tn,e.letter=sn,e.letters=ln,e.lf=vn,e.lookahead=Z,e.makeFailure=x,e.makeSuccess=b,e.newline=mn,e.noneOf=function(n){return nn(function(t){return n.indexOf(t)<0}).desc(\"none of '\"+n+\"'\")},e.notFollowedBy=$,e.of=X,e.oneOf=function(n){for(var t=n.split(\"\"),r=0;r<t.length;r++)t[r]=\"'\"+t[r]+\"'\";return nn(function(t){return n.indexOf(t)>=0}).desc(t)},e.optWhitespace=hn,e.Parser=e,e.range=function(n,t){return nn(function(r){return n<=r&&r<=t}).desc(n+\"-\"+t)},e.regex=Q,e.regexp=Q,e.sepBy=V,e.sepBy1=H,e.seq=C,e.seqMap=J,e.seqObj=function(){for(var n,t={},r=0,u=(n=arguments,Array.prototype.slice.call(n)),o=u.length,i=0;i<o;i+=1){var a=u[i];if(!y(a)){if(E(a)&&2===a.length&&\"string\"==typeof a[0]&&y(a[1])){var f=a[0];if(Object.prototype.hasOwnProperty.call(t,f))throw new Error(\"seqObj: duplicate key \"+f);t[f]=!0,r++;continue}throw new Error(\"seqObj arguments must be parsers or [string, parser] array pairs.\")}}if(0===r)throw new Error(\"seqObj expects at least one named parser, found zero\");return e(function(n,t){for(var r,e={},i=0;i<o;i+=1){var a,f;if(E(u[i])?(a=u[i][0],f=u[i][1]):(a=null,f=u[i]),!(r=B(f._(n,t),r)).status)return r;a&&(e[a]=r.value),t=r.index}return B(b(t,e),r)})},e.string=K,e.succeed=X,e.takeWhile=function(n){return k(n),e(function(t,r){for(var e=r;e<t.length&&n(L(t,e));)e++;return b(e,t.slice(r,e))})},e.test=nn,e.whitespace=pn,e[\"fantasy-land/empty\"]=rn,e[\"fantasy-land/of\"]=X,e.Binary={bitSeq:l,bitSeqObj:function(n){s();var t={},r=0,e=a(function(n){if(E(n)){var e=n;if(2!==e.length)throw new Error(\"[\"+e.join(\", \")+\"] should be length 2, got length \"+e.length);if(P(e[0]),O(e[1]),Object.prototype.hasOwnProperty.call(t,e[0]))throw new Error(\"duplicate key in bitSeqObj: \"+e[0]);return t[e[0]]=!0,r++,e}return O(n),[null,n]},n);if(r<1)throw new Error(\"bitSeqObj expects at least one named pair, got [\"+n.join(\", \")+\"]\");var u=a(function(n){return n[0]},e);return l(a(function(n){return n[1]},e)).map(function(n){return i(function(n,t){return null!==t[0]&&(n[t[0]]=t[1]),n},{},a(function(t,r){return[t,n[r]]},u))})},byte:function(n){if(s(),O(n),n>255)throw new Error(\"Value specified to byte constructor (\"+n+\"=0x\"+n.toString(16)+\") is larger in value than a single byte.\");var t=(n>15?\"0x\":\"0x0\")+n.toString(16);return e(function(r,e){var u=L(r,e);return u===n?b(e+1,u):x(e,t)})},buffer:function(n){return h(\"buffer\",n).map(function(n){return Buffer.from(n)})},encodedString:function(n,t){return h(\"string\",t).map(function(t){return t.toString(n)})},uintBE:d,uint8BE:d(1),uint16BE:d(2),uint32BE:d(4),uintLE:v,uint8LE:v(1),uint16LE:v(2),uint32LE:v(4),intBE:g,int8BE:g(1),int16BE:g(2),int32BE:g(4),intLE:m,int8LE:m(1),int16LE:m(2),int32LE:m(4),floatBE:h(\"floatBE\",4).map(function(n){return n.readFloatBE(0)}),floatLE:h(\"floatLE\",4).map(function(n){return n.readFloatLE(0)}),doubleBE:h(\"doubleBE\",8).map(function(n){return n.readDoubleBE(0)}),doubleLE:h(\"doubleLE\",8).map(function(n){return n.readDoubleLE(0)})},n.exports=e}])});","/* eslint-disable @typescript-eslint/no-unsafe-call */\n/* eslint-disable @typescript-eslint/no-non-null-assertion */\n/* eslint-disable @typescript-eslint/no-unsafe-assignment */\n/* eslint-disable @typescript-eslint/no-unsafe-member-access */\n/* eslint-disable @typescript-eslint/no-unsafe-return */\n/* eslint-disable @typescript-eslint/no-unsafe-argument */\n/* eslint-disable @typescript-eslint/no-explicit-any */\n/* ***** BEGIN LICENSE BLOCK *****\n\tCopyright (c) 2018-2025 Famibee (famibee.blog38.fc2.com)\n\n\tThis software is released under the MIT License.\n\thttp://opensource.org/licenses/mit-license.php\n** ***** END LICENSE BLOCK ***** */\n\nimport {alt, lazy, of, optWhitespace, regex, seq, seqMap, string} from 'parsimmon';\nimport {int} from './CmnLib';\nimport type {T_PropParser, T_Variable, T_VAL_DATA, Scope} from './CmnInterface';\n\ntype IFncCalc = (a: any[]) => any\ntype IHFncCalc = { [key: string]: IFncCalc; }\n\nexport type T_RET_getValName = {\n\tscope?\t: Scope;\n\tname\t: string;\n\tat?\t\t: string;\n}\n\n\nexport class PropParser implements T_PropParser {\n\t#parser: any = null;\n\n\tconstructor(private readonly val: T_Variable, ce = '\\\\') {\n\t\tfunction ope(a: (string | RegExp)[]) {\n\t\t\tconst ps = [];\n\t\t\tfor (const v of a) ps.push(\n\t\t\t\t(typeof v === 'string' ?string(v) :regex(v))\n\t\t\t\t.trim(optWhitespace)\n\t\t\t);\n\t\t\treturn alt(...ps);\n\t\t}\n\t\tfunction opeH(ops: {[name: string]: string | RegExp}) {\n\t\t\tconst keys = Object.keys(ops).sort();\n\t\t\tconst ps = keys.map(k=>\n\t\t\t\t(typeof ops[k] === 'string'\n\t\t\t\t\t? string(ops[k]) :regex(ops[k]!))\n\t\t\t\t.trim(optWhitespace)\n\t\t\t\t.result(k)\n\t\t\t);\n\t\t\treturn alt(...ps);\n\t\t}\n\n\t\tfunction PREFIX(operatorsParser: any, nextParser: any) {\n\t\t\tconst parser: any = lazy(()=> seq(operatorsParser, parser).or(nextParser));\n\t\t\treturn parser;\n\t\t}\n\t\tfunction POSTFIX(operatorsParser: any, nextParser: any) {\n\t\t\treturn seqMap(nextParser, operatorsParser.many(), (x, suffixes: any)=> suffixes.reduce((acc: any, x: any) => [x, acc], x));\n\t\t}\n\n\t\t// right. (e.g. 1^2^3 is 1^(2^3) not (1^2)^3)\n\t\tfunction BINARY_RIGHT(operatorsParser: any, nextParser: any) {\n\t\t\tconst parser = lazy(\n\t\t\t\t()=> nextParser.chain(\n\t\t\t\t\t(next: any)=> seq(\n\t\t\t\t\t\toperatorsParser,\n\t\t\t\t\t\tof(next),\n\t\t\t\t\t\tparser\n\t\t\t\t\t).or(of(next))\n\t\t\t\t)\n\t\t\t);\n\t\t\treturn parser;\n\t\t}\n\n\t\t// left. (e.g. 1-2-3 is (1-2)-3 not 1-(2-3))\n\t\tfunction BINARY_LEFT(operatorsParser: any, nextParser: any) {\n\t\t\treturn seqMap(\n\t\t\t\tnextParser,\n\t\t\t\tseq(operatorsParser, nextParser).many(),\n\t\t\t\t(first, rest)=> rest.reduce((acc, ch)=> [ch[0], acc, ch[1]], first)\n\t\t\t);\n\t\t}\n\n\t\tconst Num = alt(\n\t\t\talt(\n\t\t\t\tregex(/-?(0|[1-9][0-9]*)\\.[0-9]+/),\n\t\t\t\tregex(/0x[0-9a-fA-F]+/)\n\t\t\t).map(Number),\n\t\t\talt(\n\t\t\t\tregex(/-?(0|[1-9][0-9]*)/)\n\t\t\t).map(n=> int(n))\n\t\t)\n\t\t.map(str=> ['!num!', str])\n\t\t.desc('number');\n\n\t\tconst NullLiteral = string('null')\n\t\t.map(()=> ['!str!', null]);\n\n\t\tconst BooleanLiteral = regex(/(true|false)/)\n\t\t.map(b=> ['!bool!', b === 'true'])\n\t\t.desc('boolean');\n\n\t\t// (new RegExp(\"~\")) の場合は、バックスラッシュは2つ必要\n\t\tconst StringLiteral = regex(new RegExp(`(?:\"(?:\\\\${ce}[\"'#\\\\n]|[^\"])*\"|'(?:\\\\${ce}[\"'#\\\\n]|[^'])*'|\\\\#(?:\\\\${ce}[\"'#\\\\n]|[^#])*\\\\#)`))\n\t\t\t// https://regex101.com/r/Fs5wL3/1\n\t\t\t// 15 matches (279 steps, 0.1ms) by PCRE2\n\t\t.map(b=> ['!str!', b.slice(1, -1).replaceAll(ce, '')])\n\t\t.desc('string');\n\n\t\tconst REG_BRACKETS = /\\[[^\\]]+\\]/g;\n\t\tconst VarLiteral = regex(/-?(?:(?:tmp|sys|save|mp):)?[^\\s!-/:-@[-^`{-~]+(?:\\.[^\\s!-/:-@[-^`{-~]+|\\[[^\\]]+\\])*(?:@str)?/)\n\t\t.map(b=> {\n\t\t\t//console.log(' 👺 VarLiteral:0 b:%O:', b);\n\t\t\tconst s = b.replaceAll(REG_BRACKETS, v=>\n\t\t\t\t// eslint-disable-next-line @typescript-eslint/restrict-plus-operands\n\t\t\t\t'.'+ this.parse(v.slice(1, -1))\n\t\t\t);\n\t\t\tconst v = this.val.getVal(s);\n\t\t\t// console.log(' 👹 val:%O: s:%O: v:%o', val, s, v);\n\t\t\tif (v === null || v === undefined) return ['!str!', v];\t// v == null は eqeqeq違反\n\t\t\tif (typeof v === 'boolean') return ['!bool!', v];\n\n\t\t\treturn Object.prototype.toString.call(v) === '[object String]'\n\t\t\t\t? ['!str!', String(v)]\n\t\t\t\t: ['!num!', Number(v)];\n\t\t})\n\t\t.desc('string');\n\n\t\tconst Basic = lazy(()=>\n\t\t\tstring('(').then(this.#parser).skip(string(')'))\n\t\t\t.or(Num)\n\t\t\t.or(NullLiteral)\n\t\t\t.or(BooleanLiteral)\n\t\t\t.or(StringLiteral)\n\t\t\t.or(VarLiteral)\n\t\t);\n\n\t\tconst table = [\n\t\t\t// 演算子の優先順位 - JavaScript | MDN https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Operators/Operator_precedence\n\t\t\t// 優先順位:18(メンバーへのアクセス、計算値によるメンバーへのアクセス)\n\t\t\t\t// a.b a[b]\n\t\t\t{type: PREFIX, ops: ope([/[A-Za-z_][A-Za-z0-9_]*(?=\\()/])},\n\n\t\t\t// 優先順位:16\n\t\t\t{type: POSTFIX, ops: opeH({PostfixInc: '++'})},\n\t\t\t{type: POSTFIX, ops: opeH({PostfixDec: '--'})},\n\t\t\t\t// 【未サポート】後置インクリメント・デクリメント\n\t\t\t// 優先順位:15\n\t\t\t{type: PREFIX, ops: ope([/!(?!=)|~/])},\t// 論理 NOT (!)、ビット単位 NOT (~)\n\t\t\t{type: PREFIX, ops: opeH({PrefixInc: '++'})},\n\t\t\t{type: PREFIX, ops: opeH({PrefixDec: '--'})},\n\t\t\t\t// 【未サポート】前置インクリメント・デクリメント\n\t\t//\t{type: PREFIX, ops: opeH({Unaryplus: /\\+(?!\\+)/})},\t// 単項プラス\n\t\t\t{type: PREFIX, ops: opeH({UnaryNegate: /-(?!-)/})},\t// 単項マイナス\n\n\t\t\t// 優先順位:14以下(並びに注意)\n\t\t\t{type: BINARY_RIGHT, ops: ope(['**'])},\n\t\t\t{type: BINARY_LEFT, ops: ope(['*', '/', '¥', '%'])},\n\t\t\t{type: BINARY_LEFT, ops: ope(['+', '-'])},\n\t\t\t{type: BINARY_LEFT, ops: ope([/>>>|<<|>>/])},\n\t\t\t{type: BINARY_LEFT, ops: ope([/<=|<|>=|>/])},\n\t\t\t{type: BINARY_LEFT, ops: ope([/===|!==|==|!=/])},\n\t\t\t{type: BINARY_LEFT, ops: ope([/&(?!&)/])},\n\t\t\t{type: BINARY_LEFT, ops: ope(['^'])},\n\t\t\t{type: BINARY_LEFT, ops: ope([/\\|(?!\\|)/])},\n\t\t\t{type: BINARY_LEFT, ops: ope(['&&'])},\n\t\t\t{type: BINARY_LEFT, ops: ope(['||'])},\n\t\t\t{type: BINARY_RIGHT, ops: ope([':'])},\n\t\t\t{type: BINARY_RIGHT, ops: ope(['?'])},\n\t\t];\n\n\t\tconst tableParser = table.reduce(\n\t\t\t(acc, level)=> level.type(level.ops, acc),\n\t\t\tBasic\n\t\t);\n\t\tthis.#parser = tableParser.trim(optWhitespace);\n\t}\n\n\tparse(s: string): T_VAL_DATA {\n\t\t//console.log(\"🌱 Parsimmon'%s'\", s);\n\t\tconst p = this.#parser.parse(s);\n\t\tif (! p.status) throw Error('(PropParser)文法エラー【'+ s +'】');\n\n\t\tconst a = p.value;\n\t\tif (a[0] === '!str!') return this.#procEmbedVar(a[1]);\n\n\t\treturn this.#calc(a);\n\t}\n\t#calc(a: any[]): T_VAL_DATA {\n\t\t//console.log('🌷 calc%O', {...a});\n\t\tconst elm = a.shift();\n\t\tif (elm instanceof Array) return this.#calc(elm);\n\n\t\tconst fnc = this.#hFnc[elm];\n\t\treturn fnc ?fnc(a) :Object(null);\n\t}\n\t#hFnc: IHFncCalc = {\n\t\t'!num!': a=> a.shift(),\n\t\t'!str!': a=> this.#procEmbedVar(a.shift()),\n\t\t'!bool!':a=> a.shift(),\n\n\t\tPostfixInc:\t_=> {throw Error('(PropParser)後置インクリメントは未サポートです')},\n\t\tPostfixDec:\t_=> {throw Error('(PropParser)後置デクリメントは未サポートです')},\n\t\tPrefixInc:\t_=> {throw Error('(PropParser)前置インクリメントは未サポートです')},\n\t\tPrefixDec:\t_=> {throw Error('(PropParser)前置デクリメントは未サポートです')},\n\n\t\t// 論理 NOT\n\t\t'!':\ta=> ! this.#hFnc.Boolean!(a),\n\t\t// チルダ演算子(ビット反転)\n\t\t'~':\ta=> ~ Number(this.#calc(a.shift())),\n\n//\t\tUnaryNegate:\ta=> -Number(this.#calc(a.shift())),\n\t\tUnaryNegate:\ta=> -this.#hFnc.Number!(a),\n\t//\tUnaryplus:\t\ta=> this.#hFnc['Number'](a),\n\n\t\t// 乗算、除算、剰余\n\t\t'**':\ta=> Number(this.#calc(a.shift())) **\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\t\t'*':\ta=> Number(this.#calc(a.shift())) *\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\t\t'/':\ta=> Number(this.#calc(a.shift())) /\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\t\t'¥':\ta=> Math.floor( this.#hFnc['/']!(a) ),\n\t\t'%':\ta=> Number(this.#calc(a.shift())) %\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\n\t\t// 加算、減算、文字列の連結\n\t\t'+':\ta=> {\n\t\t\tconst b = this.#calc(a.shift());\n\t\t\tconst c = this.#calc(a.shift());\n\t\t\treturn Object.prototype.toString.call(b) === '[object String]'\n\t\t\t\t|| Object.prototype.toString.call(c) === '[object String]'\n\t\t\t\t\t? String(b) + String(c) : Number(b) + Number(c);\n\t\t},\n\t\t'-':\ta=> Number(this.#calc(a.shift())) -\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\n\t\t// 関数\n\t\t'int':\t\ta=> int(this.#fncSub_ChkNum(a.shift())),\n\t\t'parseInt':\ta=> int(this.#hFnc.Number!(a)),\n\t\t'Number':\ta=> {\n\t\t\tconst b = this.#calc(a.shift());\n\t\t\treturn Object.prototype.toString.call(b) === '[object String]'\n\t\t\t\t? this.#fncSub_ChkNum(this.#parser.parse(String(b)).value)\n\t\t\t\t: Number(b);\n\t\t},\n\t\t'Boolean':\ta=> {\n\t\t\tconst b = a.shift();\n\t\t\treturn b[0] === '!bool!'\n\t\t\t\t? Boolean( b[1] )\n\t\t\t\t: Boolean(this.#calc(b));\n\t\t},\n\t\t'ceil':\t\ta=> Math.ceil( this.#fncSub_ChkNum(a.shift()) ),\n\t\t'floor':\ta=> Math.floor( this.#fncSub_ChkNum(a.shift()) ),\n\t\t'round':\ta=> Math.round( this.#fncSub_ChkNum(a.shift()) ),\n\t\t'isNaN':\ta=> Number.isNaN( this.#fncSub_ChkNum(a.shift()) ),\n\n\t\t// ビットシフト\n\t\t'<<':\ta=> Number(this.#calc(a.shift())) <<\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\t\t'>>':\ta=> Number(this.#calc(a.shift())) >>\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\t\t'>>>':\ta=> Number(this.#calc(a.shift())) >>>\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\n\t\t// 等値、非等値、厳密等価、厳密非等価\n\t\t'<':\ta=> Number(this.#calc(a.shift())) <\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\t\t'<=':\ta=> Number(this.#calc(a.shift())) <=\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\t\t'>':\ta=> Number(this.#calc(a.shift())) >\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\t\t'>=':\ta=> Number(this.#calc(a.shift())) >=\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\n\t\t// 小なり、以下、大なり、以上\n\t\t'==':\ta=> {\n\t\t\tconst b = this.#calc(a.shift());\n\t\t\tconst c = this.#calc(a.shift());\n\t\t\t// eslint-disable-next-line eqeqeq\n\t\t\treturn b == null && c == null\n\t\t\t\t// eslint-disable-next-line eqeqeq\n\t\t\t\t? b == c : String(b) === String(c);\n\t\t},\n\t\t'!=':\ta=> ! this.#hFnc['==']!(a),\n\t\t'===':\ta=> {\n\t\t\tconst b = this.#calc(a.shift());\n\t\t\tconst c = this.#calc(a.shift());\n\t\t\t// eslint-disable-next-line eqeqeq\n\t\t\treturn Object.prototype.toString.call(b) !=\n\t\t\t\t\tObject.prototype.toString.call(c)\n\t\t\t\t\t? false : String(b) === String(c);\n\t\t},\n\t\t'!==':\ta=> ! this.#hFnc['===']!(a),\n\n\t\t// ビット演算子\n\t\t'&':\ta=> Number(this.#calc(a.shift())) &\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\t\t'^':\ta=> Number(this.#calc(a.shift())) ^\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\t\t'|':\ta=> Number(this.#calc(a.shift())) |\n\t\t\t\t\tNumber(this.#calc(a.shift())),\n\n\t\t// 論理 AND,OR\n\t\t'&&':\ta=> String(this.#calc(a.shift())) === 'true' &&\n\t\t\t\t\tString(this.#calc(a.shift())) === 'true',\n\t\t'||':\ta=> String(this.#calc(a.shift())) === 'true' ||\n\t\t\t\t\tString(this.#calc(a.shift())) === 'true',\n\n\t\t// 条件\n\t\t'?':\ta=> {\n\t\t\tconst cond = this.#hFnc.Boolean!(a);\n\t\t\tconst elm2 = a.shift();\n\t\t\tif (elm2[0] !== ':') throw Error('(PropParser)三項演算子の文法エラーです。: が見つかりません');\n\n\t\t\treturn this.#calc(elm2[cond ?1 :2]);\n\t\t},\n\t\t':':\t()=> {throw Error('(PropParser)三項演算子の文法エラーです。? が見つかりません')},\n\t}\n\t#fncSub_ChkNum(v: any[]): number {\n\t\tconst b = this.#calc(v);\n\t\tif (Object.prototype.toString.call(b) !== '[object Number]') throw Error('(PropParser)引数【'+ String(b) +'】が数値ではありません');\n\t\treturn Number(b);\n\t}\n\n\treadonly #REG_EMBEDVAR\n\t\t= /(\\$((tmp|sys|save|mp):)?[^\\s!--/:-@[-^`{-~]+|#\\{[^}]+})/g;\n\t#procEmbedVar(b: any): any {\n\t\tif (b === null || b === undefined) return b;\n\t\t\t// b == null は eqeqeq違反\n\n\t\treturn String(b).replaceAll(\n\t\t\tthis.#REG_EMBEDVAR,\n\t\t\tv=> String(v.startsWith('$')\n\t\t\t\t? this.val.getVal(v.slice(1))\n\t\t\t\t: this.parse(v.slice(2, -1)))\n\t\t);\n\t}\n\n\n\tgetValAmpersand = (val: string)=> val.startsWith('&')\n\t\t? String(this.parse(val.slice(1)))\n\t\t: val;\n\n\n\tstatic\treadonly\t#REG_VAL\n\t\t= /^((?<scope>\\w+?):)?(?<name>[^\\s :@]+)(?<at>@str)?$/;\n\t\t// 522 match 18413 step(~10ms) https://regex101.com/r/tmCKuE/1\n\t\t\t// →これは改良しようがない。いい意味で改善の余地なし\n\tstatic\tgetValName(arg_name: string): T_RET_getValName | null {\n\t\tconst e = this.#REG_VAL.exec(arg_name.trim());\n\t\tconst g = e?.groups;\n\t\tif (! g) return null;\n\n\t\tconst {scope='tmp', name, at=''} = <T_RET_getValName>g;\n\t\tif (! PropParser.#A_SCOPE.includes(scope)) throw `[変数に値セット] scopeが異常【${scope}】です`;\n\t\treturn {\n\t\t\tscope,\n\t\t\tname\t: PropParser.#getValName_B2D(name),\n\t\t\tat,\n\t\t};\n\t}\n\tstatic\treadonly\t#A_SCOPE = ['tmp', 'sys', 'save', 'mp'];\n\n\tstatic\t#getValName_B2D(str: string): string {\n\t\tlet i = 0, e = 0, s = str;\n\t\t// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n\t\twhile (true) {\n\t\t\ti = s.indexOf('[\"');\n\t\t\tif (i < 0) {\n\t\t\t\ti = s.indexOf('[\\'');\n\t\t\t\tif (i < 0) break;\n\n\t\t\t\te = s.indexOf('\\']', i+2);\n\t\t\t}\n\t\t\telse {\n\t\t\t\te = s.indexOf('\"]', i+2);\n\t\t\t}\n\t\t\tif (e < 0) break;\n\n\t\t\ts = s.slice(0, i) +'.'+ s.slice(i+2, e)\n\t\t\t\t+ s.slice(e+2);\n\t\t\ti = e-2;\t// -3+1\n\t\t}\n\n\t\treturn s;\n\t}\n\n}\n"],"x_google_ignoreList":[0],"mappings":";;;AAAA,EAAC,SAAS,GAAE,GAAE;AAAC,EAAU,OAAO,KAAjB,YAAoC,OAAO,KAAjB,WAAwB,EAAO,UAAQ,GAAG,GAAa,OAAO,UAAnB,cAA2B,OAAO,MAAI,OAAO,EAAE,EAAC,EAAE,GAAW,OAAO,KAAjB,WAAyB,EAAQ,YAAU,GAAG,GAAC,EAAE,YAAU,GAAG;IAAe,OAAO,OAApB,MAAyB,OAAA,GAAU,WAAU;AAAC,SAAO,SAAS,GAAE;GAAC,IAAI,IAAE,EAAE;GAAC,SAAS,EAAE,GAAE;AAAC,QAAG,EAAE,GAAG,QAAO,EAAE,GAAG;IAAQ,IAAI,IAAE,EAAE,KAAG;KAAC,GAAE;KAAE,GAAE,CAAC;KAAE,SAAQ,EAAE;KAAC;AAAC,WAAO,EAAE,GAAG,KAAK,EAAE,SAAQ,GAAE,EAAE,SAAQ,EAAE,EAAC,EAAE,IAAE,CAAC,GAAE,EAAE;;AAAQ,UAAO,EAAE,IAAE,GAAE,EAAE,IAAE,GAAE,EAAE,IAAE,SAAS,GAAE,GAAE,GAAE;AAAC,MAAE,EAAEA,GAAEC,EAAE,IAAE,OAAO,eAAeD,GAAEC,GAAE;KAAC,cAAa,CAAC;KAAE,YAAW,CAAC;KAAE,KAAI;KAAE,CAAC;MAAE,EAAE,IAAE,SAAS,GAAE;AAAC,WAAO,eAAeD,GAAE,cAAa,EAAC,OAAM,CAAC,GAAE,CAAC;MAAE,EAAE,IAAE,SAAS,GAAE;IAAC,IAAIC,IAAED,KAAGA,EAAE,aAAW,WAAU;AAAC,YAAOA,EAAE;QAAS,WAAU;AAAC,YAAOA;;AAAG,WAAO,EAAE,EAAEC,GAAE,KAAIA,EAAE,EAACA;MAAG,EAAE,IAAE,SAAS,GAAE,GAAE;AAAC,WAAO,OAAO,UAAU,eAAe,KAAKD,GAAEC,EAAE;MAAE,EAAE,IAAE,IAAG,EAAE,EAAE,IAAE,EAAE;IAAE,CAAC,SAAS,GAAE,GAAE,GAAE;GAAc,SAAS,EAAE,GAAE;AAAC,QAAG,EAAE,gBAAgB,GAAG,QAAO,IAAI,EAAED,EAAE;AAAC,SAAK,IAAEA;;GAAE,IAAI,IAAE,EAAE;GAAU,SAAS,EAAE,GAAE,GAAE;AAAC,SAAI,IAAIE,IAAE,GAAEA,IAAEF,GAAE,IAAI,GAAEE,EAAE;;GAAC,SAAS,EAAE,GAAE,GAAE,GAAE;AAAC,WAAO,SAAS,GAAE,GAAE;AAAC,OAAED,EAAE,QAAO,SAAS,GAAE;AAAC,QAAEA,EAAEC,IAAGA,GAAED,EAAE;OAAE;MAAE,SAAS,GAAE,GAAE,GAAE;AAAC,SAAED,EAAEC,GAAEC,GAAEC,GAAEC,EAAE;OAAEF,EAAE,EAACD;;GAAE,SAAS,EAAE,GAAE,GAAE;AAAC,WAAO,EAAE,SAAS,GAAE,GAAE,GAAE,GAAE;AAAC,YAAOA,EAAE,OAAO,CAACD,EAAEE,GAAEC,GAAEC,EAAE,CAAC,CAAC;OAAE,EAAE,EAACH,EAAE;;GAAC,SAAS,EAAE,GAAE,GAAE;IAAC,IAAIC,IAAE;KAAC,GAAE;KAAE,KAAID;KAAE;AAAC,WAAO,EAAED,GAAE,WAAU;KAAC,IAAIA;AAAE,SAAE;MAAC,GAAEE,EAAE,KAAG,KAAG,IAAEA,EAAE,KAAIF,EAAE,MAAI;MAAG,KAAI,SAAS,GAAE;OAAC,IAAIC,IAAE,EAAE,SAAS,GAAE,GAAE,GAAE,GAAE;AAAC,eAAOD,EAAE,OAAOE,MAAIC,EAAE,SAAO,IAAE,OAAO,KAAK,CAACF,GAAE,EAAE,CAAC,CAAC,aAAa,EAAE,GAACE,EAAE,aAAaD,EAAE,CAAC;UAAE,EAAE,EAACF,EAAE;AAAC,cAAO,OAAO,KAAK,EAAE,SAAS,GAAE;AAAC,gBAAOA,KAAG,IAAE,UAAQ;UAAGC,EAAE,CAAC;QAAEC,EAAE,IAAI;MAAC;MAAE,EAACA;;GAAE,SAAS,IAAG;AAAC,WAAmB,OAAO,SAApB;;GAA2B,SAAS,IAAG;AAAC,QAAG,CAAC,GAAG,CAAC,OAAU,MAAM,gGAAgG;;GAAC,SAAS,EAAE,GAAE;AAAC,OAAG;IAAC,IAAID,IAAE,EAAE,SAAS,GAAE,GAAE;AAAC,YAAOD,IAAEC;OAAG,GAAED,EAAE;AAAC,QAAGC,IAAE,KAAG,EAAE,OAAU,MAAM,eAAaD,EAAE,KAAK,KAAK,GAAC,iBAAeC,IAAE,4EAA4E;IAAC,IAAIC,GAAEE,IAAEH,IAAE,GAAEI,KAAG,IAAE,SAAS,GAAE;AAAC,YAAOL,IAAE;OAAI,EAAE,SAAS,GAAE,GAAE;AAAC,YAAOA,MAAIE,EAAED,EAAE,GAACA,IAAED;OAAI,MAAKA,EAAE;AAAE,QAAGK,EAAE,OAAU,MAAMA,IAAE,2DAA2D;AAAC,WAAO,IAAI,EAAE,SAAS,GAAE,GAAE;KAAC,IAAIF,IAAEC,IAAEF;AAAE,YAAOC,IAAEF,EAAE,SAAO,EAAEC,GAAEE,EAAE,UAAU,GAAC,SAAS,GAAC,EAAED,GAAE,EAAE,SAAS,GAAE,GAAE;MAAC,IAAID,IAAE,EAAED,GAAED,EAAE,IAAI;AAAC,aAAM;OAAC,MAAKA,EAAE,KAAK,OAAOE,EAAE,EAAE;OAAC,KAAIA,EAAE;OAAI;QAAE;MAAC,MAAK,EAAE;MAAC,KAAID,EAAE,MAAMC,GAAEC,EAAE;MAAC,EAACH,EAAE,CAAC,KAAK;MAAE;;GAAC,SAAS,EAAE,GAAE,GAAE;AAAC,WAAO,IAAI,EAAE,SAAS,GAAE,GAAE;AAAC,YAAO,GAAG,EAACG,IAAEF,IAAEC,EAAE,SAAO,EAAEC,GAAEF,IAAE,gBAAcD,EAAE,GAAC,EAAEG,IAAEF,GAAEC,EAAE,MAAMC,GAAEA,IAAEF,EAAE,CAAC;MAAE;;GAAC,SAAS,EAAE,GAAE,GAAE;AAAC,QAAa,QAAO,IAAEA,MAAnB,YAAuB,KAAK,MAAMC,EAAE,KAAGA,KAAGD,IAAE,KAAGA,IAAE,EAAE,OAAU,MAAMD,IAAE,4CAA4C;IAAC,IAAIE;;GAAE,SAAS,EAAE,GAAE;AAAC,WAAO,EAAE,UAASF,EAAE,EAAC,EAAE,YAAUA,IAAE,KAAIA,EAAE,CAAC,IAAI,SAAS,GAAE;AAAC,YAAOC,EAAE,WAAW,GAAED,EAAE;MAAE;;GAAC,SAAS,EAAE,GAAE;AAAC,WAAO,EAAE,UAASA,EAAE,EAAC,EAAE,YAAUA,IAAE,KAAIA,EAAE,CAAC,IAAI,SAAS,GAAE;AAAC,YAAOC,EAAE,WAAW,GAAED,EAAE;MAAE;;GAAC,SAAS,EAAE,GAAE;AAAC,WAAO,EAAE,SAAQA,EAAE,EAAC,EAAE,WAASA,IAAE,KAAIA,EAAE,CAAC,IAAI,SAAS,GAAE;AAAC,YAAOC,EAAE,UAAU,GAAED,EAAE;MAAE;;GAAC,SAAS,EAAE,GAAE;AAAC,WAAO,EAAE,SAAQA,EAAE,EAAC,EAAE,WAASA,IAAE,KAAIA,EAAE,CAAC,IAAI,SAAS,GAAE;AAAC,YAAOC,EAAE,UAAU,GAAED,EAAE;MAAE;;GAAC,SAAS,EAAE,GAAE;AAAC,WAAOA,aAAa;;GAAE,SAAS,EAAE,GAAE;AAAC,WAAyB,EAAE,CAAC,SAAS,KAAKA,EAAE,KAAtC;;GAAuC,SAAS,EAAE,GAAE;AAAC,WAAO,GAAG,IAAE,OAAO,SAASA,EAAE;;GAAC,SAAS,EAAE,GAAE,GAAE;AAAC,WAAM;KAAC,QAAO,CAAC;KAAE,OAAMA;KAAE,OAAMC;KAAE,UAAS;KAAG,UAAS,EAAE;KAAC;;GAAC,SAAS,EAAE,GAAE,GAAE;AAAC,WAAO,EAAEA,EAAE,KAAG,IAAE,CAACA,EAAE,GAAE;KAAC,QAAO,CAAC;KAAE,OAAM;KAAG,OAAM;KAAK,UAASD;KAAE,UAASC;KAAE;;GAAC,SAAS,EAAE,GAAE,GAAE;AAAgB,QAAZ,CAACA,KAAcD,EAAE,WAASC,EAAE,SAAS,QAAOD;IAAE,IAAIE,IAAEF,EAAE,aAAWC,EAAE,WAAS,SAAS,GAAE,GAAE;AAAC,SAAG,WAAU;AAAC,UAAY,EAAE,iBAAX,KAAK,EAAmB,QAAO,EAAE;MAAa,IAAID,IAAe,OAAO,MAApB;AAAwB,aAAO,EAAE,eAAaA,GAAEA;QAAI,IAAE,MAAM,MAAK;AAAC,WAAI,IAAIE,IAAE,IAAI,IAAIF,EAAE,EAACI,IAAE,GAAEA,IAAEH,EAAE,QAAO,IAAI,GAAE,IAAIA,EAAEG,GAAG;MAAC,IAAIC,IAAE,MAAM,KAAKH,EAAE;AAAC,aAAOG,EAAE,MAAM,EAACA;;AAAE,UAAI,IAAIC,IAAE,EAAE,EAACC,IAAE,GAAEA,IAAEP,EAAE,QAAO,IAAI,GAAEA,EAAEO,MAAI,CAAC;AAAE,UAAI,IAAIC,IAAE,GAAEA,IAAEP,EAAE,QAAO,IAAI,GAAEA,EAAEO,MAAI,CAAC;KAAE,IAAIC,IAAE,EAAE;AAAC,UAAI,IAAIC,KAAKJ,EAAE,EAAC,EAAE,EAAE,eAAe,KAAKA,GAAEI,EAAE,IAAED,EAAE,KAAKC,EAAE;AAAC,YAAOD,EAAE,MAAM,EAACA;MAAGT,EAAE,UAASC,EAAE,SAAS,GAACA,EAAE;AAAS,WAAM;KAAC,QAAOD,EAAE;KAAO,OAAMA,EAAE;KAAM,OAAMA,EAAE;KAAM,UAASC,EAAE;KAAS,UAASC;KAAE;;GAAC,IAAI,IAAE,EAAE;GAAC,SAAS,EAAE,GAAE,GAAE;AAAC,QAAG,EAAEF,EAAE,CAAC,QAAM;KAAC,QAAOC;KAAE,MAAK;KAAG,QAAO;KAAG;AAAC,SAAK,MAAI,EAAED,KAAG,EAAE;AAAE,SAAI,IAAIE,IAAE,EAAEF,IAAGG,IAAE,GAAEC,IAAE,GAAEC,IAAE,GAAEC,IAAEL,GAAEK,KAAG,IAAG;AAAC,SAAGA,KAAKJ,GAAE;AAAC,UAAEA,EAAEI,GAAG,MAASD,MAAJ,MAAQ,IAAEH,EAAEI,GAAG;AAAW;;AAAM,MAAQN,EAAE,OAAOM,EAAE,KAAlB,QAA2BN,EAAE,OAAOM,EAAE,KAAlB,QAA2BN,EAAE,OAAOM,IAAE,EAAE,KAApB,UAAwB,KAAQD,MAAJ,MAAQ,IAAEC,IAAE,KAAI;;IAAI,IAAIC,IAAEJ,IAAEC,GAAEI,IAAEP,IAAEI;AAAE,WAAO,EAAEJ,KAAG;KAAC,MAAKM;KAAE,WAAUF;KAAE,EAAC;KAAC,QAAOJ;KAAE,MAAKM,IAAE;KAAE,QAAOC,IAAE;KAAE;;GAAC,SAAS,EAAE,GAAE;AAAC,QAAG,CAAC,EAAER,EAAE,CAAC,OAAU,MAAM,mBAAiBA,EAAE;;GAAC,SAAS,EAAE,GAAE,GAAE;AAAC,WAAgB,OAAOA,KAAjB,WAAmBA,EAAE,OAAOC,EAAE,GAACD,EAAEC;;GAAG,SAAS,EAAE,GAAE;AAAC,QAAa,OAAOD,KAAjB,SAAmB,OAAU,MAAM,mBAAiBA,EAAE;;GAAC,SAAS,EAAE,GAAE;AAAC,QAAe,OAAOA,KAAnB,WAAqB,OAAU,MAAM,qBAAmBA,EAAE;;GAAC,SAAS,EAAE,GAAE;AAAC,QAAa,OAAOA,KAAjB,SAAmB,OAAU,MAAM,mBAAiBA,EAAE;;GAAC,IAAI,KAAE,GAAE,KAAE,GAAE,IAAE,GAAE,KAAE,IAAE,GAAE,KAAE,IAAE,GAAE,IAAE;GAAK,SAAS,EAAE,GAAE,GAAE;AAAC,WAAW,MAAMC,IAAE,EAAE,CAAC,KAAKD,EAAE;;GAAC,SAAS,EAAE,GAAE,GAAE,GAAE;IAAC,IAAIG,IAAEF,IAAED,EAAE;AAAO,WAAOG,KAAG,IAAEH,IAAE,EAAEE,GAAEC,EAAE,GAACH;;GAAE,SAAS,EAAE,GAAE,GAAE,GAAE,GAAE;AAAC,WAAM;KAAC,MAAKA,IAAEC,IAAE,IAAED,IAAEC,IAAE;KAAE,IAAGD,IAAEE,IAAEC,IAAEA,IAAEH,IAAEE;KAAE;;GAAC,SAAS,GAAE,GAAE,GAAE;IAAC,IAAIA,GAAEC,GAAEC,GAAEC,GAAEG,GAAEC,IAAER,EAAE,OAAMS,IAAED,EAAE,QAAOE,IAAE;AAAE,QAAGD,MAAIV,EAAE,OAAO,QAAM;AAA2B,QAAG,EAAEA,EAAE,EAAC;KAAC,IAAIY,IAAEF,IAAEA,IAAE,GAAEG,IAAEH,IAAEE,GAAEE,IAAE,EAAEF,GAAE,IAAE,KAAE,GAAEZ,EAAE,OAAO,EAACe,IAAE,EAAE,SAAS,GAAE;AAAC,aAAO,EAAE,SAAS,GAAE;AAAC,cAAO,EAAEf,EAAE,SAAS,GAAG,EAAC,GAAE,IAAI;SAAEA,EAAE;QAAE,SAAS,GAAE,GAAE;MAAC,IAAIE,IAAEF,EAAE,QAAOG,IAAE,EAAE,EAACC,IAAE;AAAE,UAAGF,KAAGD,EAAE,QAAM,CAACD,EAAE,OAAO,CAAC;AAAC,WAAI,IAAIK,IAAE,GAAEA,IAAEH,GAAE,IAAI,GAAEE,MAAID,EAAE,KAAK,EAAE,CAAC,EAACA,EAAEC,GAAG,KAAKJ,EAAEK,GAAG,GAAEA,IAAE,KAAGJ,KAAG,KAAG;AAAI,aAAOE;OAAGH,EAAE,MAAMc,EAAE,MAAKA,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAK,EAAE,CAAC;AAAC,SAAE,SAAS,GAAE;AAAC,aAAWd,EAAE,SAAN,KAAgBA,EAAE,OAAN,IAAS;OAAC,MAAKA,EAAE;OAAK,IAAGA,EAAE;OAAG,GAAC;OAAC,MAAKA,EAAE,OAAK;OAAE,IAAG,KAAK,MAAMA,EAAE,KAAG,EAAE;OAAC;OAAEc,EAAE,EAAC,IAAEF,IAAE,GAAE,IAAE,IAAEC,GAAEA,KAAG,MAAI,KAAG,IAAG,IAAE,GAAE,IAAE,EAAE,SAAS,GAAE;AAAC,aAAOb,EAAE,UAAQ,IAAEA,EAAE,KAAK,IAAI,GAACA,EAAE,MAAM,GAAE,EAAE,CAAC,KAAK,IAAI,GAAC,OAAKA,EAAE,MAAM,EAAE,CAAC,KAAK,IAAI;QAAEe,EAAE,GAAE,KAAG,KAAGV,EAAE,KAAG,IAAEA,EAAE,KAAG,IAAEA,EAAE,KAAK,SAAS,GAAG,CAAC,UAAQ,MAAI,IAAE;WAAO;KAAC,IAAIW,IAAEhB,EAAE,MAAM,0BAA0B;AAAC,SAAES,EAAE,SAAO,GAAE,IAAEA,EAAE,OAAK,GAAE,IAAE,EAAEN,GAAE,IAAE,IAAEa,EAAE,OAAO,EAAC,IAAEA,EAAE,MAAMX,EAAE,MAAKA,EAAE,GAAG,EAAC,IAAEA,EAAE,GAAG,UAAU,CAAC;;IAAO,IAAIY,IAAEd,IAAEE,EAAE;AAAK,WAAO,EAAEL,EAAE,KAAG,KAAG,KAAGK,EAAE,KAAG,IAAEA,EAAE,KAAG,IAAEA,EAAE,KAAK,SAAS,GAAG,CAAC,UAAQ,MAAI,IAAE,IAAG,EAAE,SAAS,GAAE,GAAE,GAAE;KAAC,IAAIC,GAAEC,IAAEH,MAAIa,GAAER,IAAEF,IAAE,OAAK;AAAE,YAAO,IAAE,EAAEP,EAAE,GAAC,GAAG,KAAGK,EAAE,OAAKD,IAAI,SAAS,GAAG,EAACI,GAAE,IAAI,GAAC,GAAGH,EAAE,OAAKD,IAAE,GAAG,UAAU,EAACI,GAAE,IAAI,EAAC,EAAE,CAAC,OAAOP,GAAE,CAACQ,IAAEH,IAAE,QAAMH,EAAE,EAACI,IAAE,CAAC,IAAE,EAAE,KAAIC,EAAE,GAAC,QAAM,EAAE,IAAGN,GAAE,IAAI,GAAC,EAAE,KAAIS,EAAE,CAAC,GAAC,EAAE,CAAC;OAAE,EAAE,EAACP,EAAE,CAAC,KAAK,KAAK;;GAAC,SAAS,EAAE,GAAE,GAAE;AAAC,WAAM;KAAC;KAAK,uBAAqB,EAAE,KAAI,GAAG;KAAC;KAAO,GAAEJ,GAAEC,EAAE;KAAC;MAAQ,IAAEA,EAAE,UAAaC,EAAE,WAAN,IAAa,kBAAgBA,EAAE,KAAG,wCAAsCA,EAAE,KAAK,KAAK;KAAE;KAAK,CAAC,KAAK,GAAG;QAAKA;;GAAE,SAAS,EAAE,GAAE;AAAC,WAAgBF,EAAE,UAAX,KAAK,IAAoB;KAACA,EAAE,SAAO,MAAI;KAAGA,EAAE,aAAW,MAAI;KAAGA,EAAE,YAAU,MAAI;KAAGA,EAAE,UAAQ,MAAI;KAAGA,EAAE,SAAO,MAAI;KAAG,CAAC,KAAK,GAAG,GAA1GA,EAAE;;GAAyG,SAAS,IAAG;AAAC,SAAI,IAAIA,IAAE,EAAE,CAAC,MAAM,KAAK,UAAU,EAACC,IAAED,EAAE,QAAOE,IAAE,GAAEA,IAAED,GAAE,KAAG,EAAE,GAAED,EAAEE,GAAG;AAAC,WAAO,EAAE,SAAS,GAAE,GAAE;AAAC,UAAI,IAAIE,GAAEC,IAAM,MAAMJ,EAAE,EAACK,IAAE,GAAEA,IAAEL,GAAE,KAAG,GAAE;AAAC,UAAG,EAAE,IAAE,EAAED,EAAEM,GAAG,EAAEJ,GAAEC,EAAE,EAACC,EAAE,EAAE,OAAO,QAAOA;AAAE,QAAEE,KAAGF,EAAE,OAAM,IAAEA,EAAE;;AAAM,YAAO,EAAE,EAAED,GAAEE,EAAE,EAACD,EAAE;MAAE;;GAAC,SAAS,IAAG;IAAC,IAAIJ,IAAE,EAAE,CAAC,MAAM,KAAK,UAAU;AAAC,QAAOA,EAAE,WAAN,EAAa,OAAU,MAAM,qCAAqC;IAAC,IAAIC,IAAED,EAAE,KAAK;AAAC,WAAO,EAAEC,EAAE,EAAC,EAAE,MAAM,MAAKD,EAAE,CAAC,IAAI,SAAS,GAAE;AAAC,YAAOC,EAAE,MAAM,MAAKD,EAAE;MAAE;;GAAC,SAAS,IAAG;IAAC,IAAIA,IAAE,EAAE,CAAC,MAAM,KAAK,UAAU,EAACC,IAAED,EAAE;AAAO,QAAOC,MAAJ,EAAM,QAAO,EAAE,kBAAkB;AAAC,SAAI,IAAIC,IAAE,GAAEA,IAAED,GAAE,KAAG,EAAE,GAAED,EAAEE,GAAG;AAAC,WAAO,EAAE,SAAS,GAAE,GAAE;AAAC,UAAI,IAAIC,GAAEC,IAAE,GAAEA,IAAEJ,EAAE,QAAO,KAAG,EAAE,MAAI,IAAE,EAAEA,EAAEI,GAAG,EAAEH,GAAEC,EAAE,EAACC,EAAE,EAAE,OAAO,QAAOA;AAAE,YAAOA;MAAG;;GAAC,SAAS,GAAE,GAAE,GAAE;AAAC,WAAO,EAAEH,GAAEC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;;GAAC,SAAS,EAAE,GAAE,GAAE;AAAC,WAAO,EAAED,EAAE,EAAC,EAAEC,EAAE,EAAC,EAAED,GAAEC,EAAE,KAAKD,EAAE,CAAC,MAAM,EAAC,SAAS,GAAE,GAAE;AAAC,YAAM,CAACA,EAAE,CAAC,OAAOC,EAAE;MAAE;;GAAC,SAAS,EAAE,GAAE;AAAC,MAAED,EAAE;IAAC,IAAIC,IAAE,MAAID,IAAE;AAAI,WAAO,EAAE,SAAS,GAAE,GAAE;KAAC,IAAII,IAAED,IAAEH,EAAE,QAAOK,IAAEH,EAAE,MAAMC,GAAEC,EAAE;AAAC,YAAOC,MAAIL,IAAE,EAAEI,GAAEC,EAAE,GAAC,EAAEF,GAAEF,EAAE;MAAE;;GAAC,SAAS,EAAE,GAAE,GAAE;AAAC,KAAC,SAAS,GAAE;AAAC,SAAG,EAAED,aAAa,QAAQ,OAAU,MAAM,mBAAiBA,EAAE;AAAC,UAAI,IAAIC,IAAE,EAAED,EAAE,EAACE,IAAE,GAAEA,IAAED,EAAE,QAAO,KAAI;MAAC,IAAIE,IAAEF,EAAE,OAAOC,EAAE;AAAC,UAASC,MAAN,OAAeA,MAAN,OAAeA,MAAN,OAAeA,MAAN,IAAQ,OAAU,MAAM,+BAA4BA,IAAE,SAAMH,EAAE;;OAAGA,EAAE,EAAC,UAAU,UAAQ,IAAE,EAAEC,EAAE,GAAC,IAAE;IAAE,IAAIC,IAAE,SAAS,GAAE;AAAC,YAAO,OAAO,SAAOF,EAAE,SAAO,KAAI,EAAEA,EAAE,CAAC;MAAEA,EAAE,EAACI,IAAE,KAAGJ;AAAE,WAAO,EAAE,SAAS,GAAE,GAAE;KAAC,IAAIK,IAAEH,EAAE,KAAKF,EAAE,MAAMG,EAAE,CAAC;AAAC,SAAGE,GAAE;AAAC,UAAG,KAAGJ,KAAGA,KAAGI,EAAE,QAAO;OAAC,IAAIC,IAAED,EAAE,IAAGE,IAAEF,EAAEJ;AAAG,cAAO,EAAEE,IAAEG,EAAE,QAAOC,EAAE;;AAAC,aAAO,EAAEJ,GAAE,6BAA2BE,EAAE,SAAO,UAAQD,EAAE;;AAAC,YAAO,EAAED,GAAEC,EAAE;MAAE;;GAAC,SAAS,EAAE,GAAE;AAAC,WAAO,EAAE,SAAS,GAAE,GAAE;AAAC,YAAO,EAAEF,GAAEF,EAAE;MAAE;;GAAC,SAAS,EAAE,GAAE;AAAC,WAAO,EAAE,SAAS,GAAE,GAAE;AAAC,YAAO,EAAEE,GAAEF,EAAE;MAAE;;GAAC,SAAS,EAAE,GAAE;AAAC,QAAG,EAAEA,EAAE,CAAC,QAAO,EAAE,SAAS,GAAE,GAAE;KAAC,IAAIG,IAAEH,EAAE,EAAEC,GAAEC,EAAE;AAAC,YAAO,EAAE,QAAMA,GAAE,EAAE,QAAM,IAAGC;MAAG;AAAC,QAAa,OAAOH,KAAjB,SAAmB,QAAO,EAAE,EAAEA,EAAE,CAAC;AAAC,QAAGA,aAAa,OAAO,QAAO,EAAE,EAAEA,EAAE,CAAC;AAAC,UAAU,MAAM,sCAAoCA,EAAE;;GAAC,SAAS,EAAE,GAAE;AAAC,WAAO,EAAEA,EAAE,EAAC,EAAE,SAAS,GAAE,GAAE;KAAC,IAAIG,IAAEH,EAAE,EAAEC,GAAEC,EAAE,EAACE,IAAEH,EAAE,MAAMC,GAAEC,EAAE,MAAM;AAAC,YAAOA,EAAE,SAAO,EAAED,GAAE,WAAQE,IAAE,KAAI,GAAC,EAAEF,GAAE,KAAK;MAAE;;GAAC,SAAS,EAAG,GAAE;AAAC,WAAO,EAAEF,EAAE,EAAC,EAAE,SAAS,GAAE,GAAE;KAAC,IAAIG,IAAE,EAAEF,GAAEC,EAAE;AAAC,YAAOA,IAAED,EAAE,UAAQD,EAAEG,EAAE,GAAC,EAAED,IAAE,GAAEC,EAAE,GAAC,EAAED,GAAE,+BAA6BF,EAAE;MAAE;;GAAC,SAAS,EAAG,GAAE,GAAE;AAAC,cAAU,SAAO,MAAI,IAAEA,GAAE,IAAE,KAAK;IAAG,IAAIE,IAAE,EAAE,SAAS,GAAE,GAAE;AAAC,YAAO,EAAE,IAAED,GAAG,CAAC,GAAEC,EAAE,EAAEF,GAAEG,EAAE;MAAE;AAAC,WAAOH,IAAEE,EAAE,KAAKF,EAAE,GAACE;;GAAE,SAAS,IAAI;AAAC,WAAO,EAAE,qBAAqB;;AAAC,KAAE,QAAM,SAAS,GAAE;AAAC,QAAa,OAAOF,KAAjB,YAAoB,CAAC,EAAEA,EAAE,CAAC,OAAU,MAAM,gEAAgE;IAAC,IAAIC,GAAEC,IAAE,KAAK,KAAK,EAAG,CAAC,EAAEF,GAAE,EAAE;AAAC,WAAO,IAAEE,EAAE,SAAO;KAAC,QAAO,CAAC;KAAE,OAAMA,EAAE;KAAM,GAAC;KAAC,QAAO,CAAC;KAAE,OAAM,EAAEF,GAAEE,EAAE,SAAS;KAAC,UAASA,EAAE;KAAS,EAAC,OAAO,EAAEF,IAAGC;MAAG,EAAE,WAAS,SAAS,GAAE;IAAC,IAAIA,IAAE,KAAK,MAAMD,EAAE;AAAC,QAAGC,EAAE,OAAO,QAAOA,EAAE;IAAM,IAAIC,IAAE,EAAEF,GAAEC,EAAE,EAACE,IAAM,MAAMD,EAAE;AAAC,UAAM,EAAE,OAAK,kBAAiB,EAAE,SAAOD,GAAEE;MAAG,EAAE,SAAO,SAAS,GAAE,GAAE;AAAC,WAAO,KAAK,MAAM,SAAS,GAAE;AAAC,YAAOH,EAAEE,EAAE,GAAC,EAAEA,EAAE,GAAC,EAAED,EAAE;MAAE;MAAE,EAAE,KAAG,SAAS,GAAE;AAAC,WAAO,EAAE,MAAKD,EAAE;MAAE,EAAE,OAAK,SAAS,GAAE;AAAC,WAAO,KAAK,KAAKA,GAAEA,EAAE;MAAE,EAAE,OAAK,SAAS,GAAE,GAAE;AAAC,WAAO,EAAEA,GAAE,MAAKC,GAAE,SAAS,GAAE,GAAE;AAAC,YAAOA;MAAG;MAAE,EAAE,OAAK,SAAS,GAAE;AAAC,WAAOD,EAAE,KAAK;MAAE,EAAE,OAAK,SAAS,GAAE;AAAC,WAAO,EAAEA,EAAE,EAAC,EAAE,MAAKA,EAAE,CAAC,IAAI,SAAS,GAAE;AAAC,YAAOA,EAAE;MAAI;MAAE,EAAE,OAAK,WAAU;IAAC,IAAIA,IAAE;AAAK,WAAO,EAAE,SAAS,GAAE,GAAE;AAAC,UAAI,IAAIG,IAAE,EAAE,EAACC,IAAE,KAAK,KAAI;AAAC,UAAG,EAAE,IAAE,EAAEJ,EAAE,EAAEC,GAAEC,EAAE,EAACE,EAAE,EAAE,OAAO,QAAO,EAAE,EAAEF,GAAEC,EAAE,EAACC,EAAE;AAAC,UAAGF,MAAIE,EAAE,MAAM,OAAU,MAAM,iIAAiI;AAAC,UAAEA,EAAE,OAAMD,EAAE,KAAKC,EAAE,MAAM;;MAAG;MAAE,EAAE,UAAQ,SAAS,GAAE;AAAC,WAAO,EAAEJ,EAAE,EAAC,KAAK,IAAI,SAAS,GAAE;AAAC,SAAG,SAAS,GAAE;AAAC,UAAG,CAAC,EAAEA,EAAE,CAAC,OAAU,MAAM,mBAAiBA,EAAE;OAAEC,EAAE,EAACA,EAAE,QAAO;AAAC,QAAEA,EAAE,GAAG;AAAC,WAAI,IAAIC,IAAED,EAAE,IAAGE,IAAE,GAAEA,IAAEF,EAAE,QAAO,IAAI,GAAEA,EAAEE,GAAG,EAAC,KAAGH,IAAEC,EAAEE;AAAG,aAAOD;;AAAE,YAAM;MAAI;MAAE,EAAE,MAAI,WAAU;AAAC,WAAO,KAAK,QAAQ,GAAG;MAAE,EAAE,QAAM,SAAS,GAAE,GAAE;IAAC,IAAIA,IAAE;AAAK,WAAO,UAAU,SAAO,MAAI,IAAEF,IAAG,EAAEA,EAAE,EAAC,EAAEC,EAAE,EAAC,EAAE,SAAS,GAAE,GAAE;AAAC,UAAI,IAAII,IAAE,EAAE,EAACC,IAAE,KAAK,GAAEC,IAAE,KAAK,GAAEC,IAAE,GAAEA,IAAER,GAAE,KAAG,GAAE;AAAC,UAAG,IAAE,EAAE,IAAEE,EAAE,EAAEC,GAAEC,EAAE,EAACG,EAAE,EAAC,CAACD,EAAE,OAAO,QAAOC;AAAE,UAAED,EAAE,OAAMD,EAAE,KAAKC,EAAE,MAAM;;AAAC,YAAKE,IAAEP,MAAI,IAAE,EAAE,IAAEC,EAAE,EAAEC,GAAEC,EAAE,EAACG,EAAE,EAACD,EAAE,SAAQ,KAAG,EAAE,KAAEA,EAAE,OAAMD,EAAE,KAAKC,EAAE,MAAM;AAAC,YAAO,EAAE,EAAEF,GAAEC,EAAE,EAACE,EAAE;MAAE;MAAE,EAAE,SAAO,SAAS,GAAE;AAAC,WAAO,KAAK,IAAI,WAAU;AAAC,YAAOP;MAAG;MAAE,EAAE,SAAO,SAAS,GAAE;AAAC,WAAO,KAAK,MAAM,GAAEA,EAAE;MAAE,EAAE,UAAQ,SAAS,GAAE;AAAC,WAAO,EAAE,KAAK,MAAMA,EAAE,EAAC,KAAK,MAAM,EAAC,SAAS,GAAE,GAAE;AAAC,YAAOA,EAAE,OAAOC,EAAE;MAAE;MAAE,EAAE,MAAI,SAAS,GAAE;AAAC,MAAED,EAAE;IAAC,IAAIC,IAAE;AAAK,WAAO,EAAE,SAAS,GAAE,GAAE;KAAC,IAAIG,IAAEH,EAAE,EAAEC,GAAEC,EAAE;AAAC,YAAOC,EAAE,SAAO,EAAE,EAAEA,EAAE,OAAMJ,EAAEI,EAAE,MAAM,CAAC,EAACA,EAAE,GAACA;MAAG;MAAE,EAAE,YAAU,SAAS,GAAE;AAAC,MAAEJ,EAAE;IAAC,IAAIC,IAAE;AAAK,WAAO,EAAE,SAAS,GAAE,GAAE;KAAC,IAAIG,IAAEH,EAAE,MAAMD,EAAEE,EAAE,MAAMC,EAAE,CAAC,CAAC;AAAC,YAAOC,EAAE,SAAO,EAAED,IAAED,EAAE,QAAOE,EAAE,MAAM,GAACA;MAAG;MAAE,EAAE,SAAO,SAAS,GAAE,GAAE;AAAC,WAAO,EAAEJ,EAAE,EAAC,EAAEC,EAAE,EAAC,KAAK,UAAUD,EAAE,CAAC,IAAIC,EAAE;MAAE,EAAE,OAAK,SAAS,GAAE;AAAC,WAAO,EAAE,MAAKD,EAAE,CAAC,IAAI,SAAS,GAAE;AAAC,YAAOA,EAAE;MAAI;MAAE,EAAE,OAAK,WAAU;AAAC,WAAO,EAAE,GAAG,MAAK,GAAG,SAAS,GAAE,GAAE,GAAE;AAAC,YAAM;MAAC,OAAMA;MAAE,OAAMC;MAAE,KAAIC;MAAE;MAAE;MAAE,EAAE,OAAK,SAAS,GAAE;AAAC,WAAO,EAAE,GAAG,MAAK,GAAG,SAAS,GAAE,GAAE,GAAE;AAAC,YAAM;MAAC,MAAKF;MAAE,OAAME;MAAE,OAAMD;MAAE,KAAIE;MAAE;MAAE;MAAE,EAAE,QAAM,SAAS,GAAE;AAAC,WAAO,GAAE,MAAKH,EAAE;MAAE,EAAE,SAAO,SAAS,GAAE;AAAC,WAAO,EAAE,MAAKA,EAAE;MAAE,EAAE,YAAU,SAAS,GAAE;AAAC,WAAO,KAAK,KAAK,EAAEA,EAAE,CAAC;MAAE,EAAE,gBAAc,SAAS,GAAE;AAAC,WAAO,KAAK,KAAK,EAAEA,EAAE,CAAC;MAAE,EAAE,OAAK,SAAS,GAAE;AAAC,MAAEA,EAAE,KAAG,IAAE,CAACA,EAAE;IAAE,IAAIC,IAAE;AAAK,WAAO,EAAE,SAAS,GAAE,GAAE;KAAC,IAAIG,IAAEH,EAAE,EAAEC,GAAEC,EAAE;AAAC,YAAOC,EAAE,WAAS,EAAE,WAASJ,IAAGI;MAAG;MAAE,EAAE,WAAS,SAAS,GAAE;AAAC,WAAO,KAAK,GAAG,EAAEJ,EAAE,CAAC;MAAE,EAAE,KAAG,SAAS,GAAE;AAAC,WAAO,EAAEA,GAAE,MAAK,SAAS,GAAE,GAAE;AAAC,YAAOA,EAAEC,EAAE;MAAE;MAAE,EAAE,QAAM,SAAS,GAAE;IAAC,IAAIA,IAAE;AAAK,WAAO,EAAE,SAAS,GAAE,GAAE;KAAC,IAAIG,IAAEH,EAAE,EAAEC,GAAEC,EAAE;AAAC,YAAOC,EAAE,SAAO,EAAEJ,EAAEI,EAAE,MAAM,CAAC,EAAEF,GAAEE,EAAE,MAAM,EAACA,EAAE,GAACA;MAAG;MAAE,EAAE,SAAO,EAAE,IAAG,EAAE,QAAM,GAAG,EAAE,KAAG,GAAE,EAAE,qBAAmB,EAAE,IAAG,EAAE,wBAAsB,EAAE,OAAM,EAAE,yBAAuB,EAAE,QAAO,EAAE,wBAAsB,EAAE,OAAM,EAAE,qBAAmB,EAAE,IAAG,EAAE,sBAAoB,EAAE;GAAI,IAAI,IAAG,EAAE,SAAS,GAAE,GAAE;AAAC,WAAO,EAAEH,GAAE,EAAED,GAAEC,EAAE,CAAC;KAAE,EAAC,KAAG,EAAE,SAAS,GAAE,GAAE;AAAC,WAAOA,KAAGD,EAAE,SAAO,EAAEC,GAAE,qBAAqB,GAAC,EAAEA,IAAE,GAAE,EAAED,GAAEC,EAAE,CAAC;KAAE,EAAC,KAAG,EAAE,SAAS,GAAE,GAAE;AAAC,WAAO,EAAED,EAAE,QAAOA,EAAE,MAAMC,EAAE,CAAC;KAAE,EAAC,IAAG,EAAE,SAAS,GAAE,GAAE;AAAC,WAAOA,IAAED,EAAE,SAAO,EAAEC,GAAE,MAAM,GAAC,EAAEA,GAAE,KAAK;KAAE,EAAC,KAAG,EAAE,QAAQ,CAAC,KAAK,UAAU,EAAC,KAAG,EAAE,SAAS,CAAC,KAAK,kBAAkB,EAAC,KAAG,EAAE,SAAS,CAAC,KAAK,WAAW,EAAC,KAAG,EAAE,UAAU,CAAC,KAAK,mBAAmB,EAAC,KAAG,EAAE,MAAM,CAAC,KAAK,sBAAsB,EAAC,KAAG,EAAE,MAAM,CAAC,KAAK,aAAa,EAAC,IAAG,EAAE,KAAK,EAAC,KAAG,EAAE,KAAK,EAAC,KAAG,EAAE,OAAO,EAAC,KAAG,EAAE,IAAG,IAAG,EAAG,CAAC,KAAK,UAAU,EAAC,KAAG,EAAE,IAAG,EAAG;AAAC,KAAE,MAAI,IAAG,EAAE,MAAI,GAAE,EAAE,MAAI,IAAG,EAAE,KAAG,GAAG,EAAE,iBAAe,SAAS,GAAE;IAAC,IAAIA,IAAE,EAAE;AAAC,SAAI,IAAIC,KAAKF,EAAE,EAAC,EAAE,EAAE,eAAe,KAAKA,GAAEE,EAAE,IAAE,SAAS,GAAE;AAAC,OAAEA,KAAG,EAAG,WAAU;AAAC,aAAOF,EAAEE,GAAGD,EAAE;OAAE;MAAEC,EAAE;AAAC,WAAOD;MAAG,EAAE,OAAK,IAAG,EAAE,SAAO,SAAS,GAAE;AAAC,WAAO,EAAED,EAAE,GAAE,EAAE,CAAC;MAAE,EAAE,QAAM,IAAG,EAAE,SAAO,IAAG,EAAE,QAAM,GAAG,EAAE,MAAI,IAAG,EAAE,MAAI,GAAG,EAAE,OAAK,GAAE,EAAE,cAAY,GAAE,EAAE,QAAM,GAAG,EAAE,WAAS,GAAE,EAAE,OAAK,GAAG,EAAE,SAAO,IAAG,EAAE,UAAQ,IAAG,EAAE,KAAG,IAAG,EAAE,YAAU,GAAE,EAAE,cAAY,GAAE,EAAE,cAAY,GAAE,EAAE,UAAQ,IAAG,EAAE,SAAO,SAAS,GAAE;AAAC,WAAO,EAAG,SAAS,GAAE;AAAC,YAAOA,EAAE,QAAQC,EAAE,GAAC;MAAG,CAAC,KAAK,cAAYD,IAAE,IAAI;MAAE,EAAE,gBAAc,GAAE,EAAE,KAAG,GAAE,EAAE,QAAM,SAAS,GAAE;AAAC,SAAI,IAAIC,IAAED,EAAE,MAAM,GAAG,EAACE,IAAE,GAAEA,IAAED,EAAE,QAAO,IAAI,GAAEC,KAAG,MAAID,EAAEC,KAAG;AAAI,WAAO,EAAG,SAAS,GAAE;AAAC,YAAOF,EAAE,QAAQC,EAAE,IAAE;MAAG,CAAC,KAAKA,EAAE;MAAE,EAAE,gBAAc,IAAG,EAAE,SAAO,GAAE,EAAE,QAAM,SAAS,GAAE,GAAE;AAAC,WAAO,EAAG,SAAS,GAAE;AAAC,YAAOD,KAAGE,KAAGA,KAAGD;MAAG,CAAC,KAAKD,IAAE,MAAIC,EAAE;MAAE,EAAE,QAAM,GAAE,EAAE,SAAO,GAAE,EAAE,QAAM,IAAE,EAAE,SAAO,GAAE,EAAE,MAAI,GAAE,EAAE,SAAO,GAAE,EAAE,SAAO,WAAU;AAAC,SAAI,IAAID,GAAEC,IAAE,EAAE,EAACC,IAAE,GAAEE,KAAG,IAAE,WAAU,MAAM,UAAU,MAAM,KAAKJ,EAAE,GAAEK,IAAED,EAAE,QAAOE,IAAE,GAAEA,IAAED,GAAE,KAAG,GAAE;KAAC,IAAIE,IAAEH,EAAEE;AAAG,SAAG,CAAC,EAAEC,EAAE,EAAC;AAAC,UAAG,EAAEA,EAAE,IAAMA,EAAE,WAAN,KAAwB,OAAOA,EAAE,MAAnB,YAAuB,EAAEA,EAAE,GAAG,EAAC;OAAC,IAAIC,IAAED,EAAE;AAAG,WAAG,OAAO,UAAU,eAAe,KAAKN,GAAEO,EAAE,CAAC,OAAU,MAAM,2BAAyBA,EAAE;AAAC,SAAEA,KAAG,CAAC,GAAE;AAAI;;AAAS,YAAU,MAAM,oEAAoE;;;AAAE,QAAON,MAAJ,EAAM,OAAU,MAAM,uDAAuD;AAAC,WAAO,EAAE,SAAS,GAAE,GAAE;AAAC,UAAI,IAAIA,GAAEC,IAAE,EAAE,EAACG,IAAE,GAAEA,IAAED,GAAE,KAAG,GAAE;MAAC,IAAIE,GAAEC;AAAE,UAAG,EAAEJ,EAAEE,GAAG,IAAE,IAAEF,EAAEE,GAAG,IAAG,IAAEF,EAAEE,GAAG,OAAK,IAAE,MAAK,IAAEF,EAAEE,KAAI,EAAE,IAAE,EAAEE,EAAE,EAAER,GAAEC,EAAE,EAACC,EAAE,EAAE,OAAO,QAAOA;AAAE,YAAI,EAAEK,KAAGL,EAAE,QAAO,IAAEA,EAAE;;AAAM,YAAO,EAAE,EAAED,GAAEE,EAAE,EAACD,EAAE;MAAE;MAAE,EAAE,SAAO,GAAE,EAAE,UAAQ,GAAE,EAAE,YAAU,SAAS,GAAE;AAAC,WAAO,EAAEF,EAAE,EAAC,EAAE,SAAS,GAAE,GAAE;AAAC,UAAI,IAAIG,IAAED,GAAEC,IAAEF,EAAE,UAAQD,EAAE,EAAEC,GAAEE,EAAE,CAAC,EAAE;AAAI,YAAO,EAAEA,GAAEF,EAAE,MAAMC,GAAEC,EAAE,CAAC;MAAE;MAAE,EAAE,OAAK,GAAG,EAAE,aAAW,IAAG,EAAE,wBAAsB,GAAG,EAAE,qBAAmB,GAAE,EAAE,SAAO;IAAC,QAAO;IAAE,WAAU,SAAS,GAAE;AAAC,QAAG;KAAC,IAAIF,IAAE,EAAE,EAACC,IAAE,GAAEC,IAAE,EAAE,SAAS,GAAE;AAAC,UAAG,EAAEH,EAAE,EAAC;OAAC,IAAIG,IAAEH;AAAE,WAAOG,EAAE,WAAN,EAAa,OAAU,MAAM,MAAIA,EAAE,KAAK,KAAK,GAAC,sCAAoCA,EAAE,OAAO;AAAC,WAAG,EAAEA,EAAE,GAAG,EAAC,EAAEA,EAAE,GAAG,EAAC,OAAO,UAAU,eAAe,KAAKF,GAAEE,EAAE,GAAG,CAAC,OAAU,MAAM,iCAA+BA,EAAE,GAAG;AAAC,cAAO,EAAEA,EAAE,MAAI,CAAC,GAAE,KAAIA;;AAAE,aAAO,EAAEH,EAAE,EAAC,CAAC,MAAKA,EAAE;QAAEA,EAAE;AAAC,SAAGE,IAAE,EAAE,OAAU,MAAM,qDAAmDF,EAAE,KAAK,KAAK,GAAC,IAAI;KAAC,IAAII,IAAE,EAAE,SAAS,GAAE;AAAC,aAAOJ,EAAE;QAAIG,EAAE;AAAC,YAAO,EAAE,EAAE,SAAS,GAAE;AAAC,aAAOH,EAAE;QAAIG,EAAE,CAAC,CAAC,IAAI,SAAS,GAAE;AAAC,aAAO,EAAE,SAAS,GAAE,GAAE;AAAC,cAAcF,EAAE,OAAT,SAAc,EAAEA,EAAE,MAAIA,EAAE,KAAID;SAAG,EAAE,EAAC,EAAE,SAAS,GAAE,GAAE;AAAC,cAAM,CAACC,GAAED,EAAEE,GAAG;SAAEE,EAAE,CAAC;OAAE;;IAAE,MAAK,SAAS,GAAE;AAAC,SAAG,GAAG,EAAC,EAAEJ,EAAE,EAACA,IAAE,IAAI,OAAU,MAAM,0CAAwCA,IAAE,QAAMA,EAAE,SAAS,GAAG,GAAC,2CAA2C;KAAC,IAAIC,KAAGD,IAAE,KAAG,OAAK,SAAOA,EAAE,SAAS,GAAG;AAAC,YAAO,EAAE,SAAS,GAAE,GAAE;MAAC,IAAII,IAAE,EAAEF,GAAEC,EAAE;AAAC,aAAOC,MAAIJ,IAAE,EAAEG,IAAE,GAAEC,EAAE,GAAC,EAAED,GAAEF,EAAE;OAAE;;IAAE,QAAO,SAAS,GAAE;AAAC,YAAO,EAAE,UAASD,EAAE,CAAC,IAAI,SAAS,GAAE;AAAC,aAAO,OAAO,KAAKA,EAAE;OAAE;;IAAE,eAAc,SAAS,GAAE,GAAE;AAAC,YAAO,EAAE,UAASC,EAAE,CAAC,IAAI,SAAS,GAAE;AAAC,aAAOA,EAAE,SAASD,EAAE;OAAE;;IAAE,QAAO;IAAE,SAAQ,EAAE,EAAE;IAAC,UAAS,EAAE,EAAE;IAAC,UAAS,EAAE,EAAE;IAAC,QAAO;IAAE,SAAQ,EAAE,EAAE;IAAC,UAAS,EAAE,EAAE;IAAC,UAAS,EAAE,EAAE;IAAC,OAAM;IAAE,QAAO,EAAE,EAAE;IAAC,SAAQ,EAAE,EAAE;IAAC,SAAQ,EAAE,EAAE;IAAC,OAAM;IAAE,QAAO,EAAE,EAAE;IAAC,SAAQ,EAAE,EAAE;IAAC,SAAQ,EAAE,EAAE;IAAC,SAAQ,EAAE,WAAU,EAAE,CAAC,IAAI,SAAS,GAAE;AAAC,YAAOA,EAAE,YAAY,EAAE;MAAE;IAAC,SAAQ,EAAE,WAAU,EAAE,CAAC,IAAI,SAAS,GAAE;AAAC,YAAOA,EAAE,YAAY,EAAE;MAAE;IAAC,UAAS,EAAE,YAAW,EAAE,CAAC,IAAI,SAAS,GAAE;AAAC,YAAOA,EAAE,aAAa,EAAE;MAAE;IAAC,UAAS,EAAE,YAAW,EAAE,CAAC,IAAI,SAAS,GAAE;AAAC,YAAOA,EAAE,aAAa,EAAE;MAAE;IAAC,EAAC,EAAE,UAAQ;IAAG,CAAC;GAAE;QC4B/1d,aAAb,MAAa,EAAmC;CAC/C,KAAe;CAEf,YAAY,GAAkC,IAAK,MAAM;AAA5B,OAAA,MAAA;EAC5B,SAAS,EAAI,GAAwB;GACpC,IAAM,IAAK,EAAE;AACb,QAAK,IAAM,KAAK,EAAG,GAAG,MACpB,OAAO,KAAM,YAAA,GAAA,yBAAA,QAAiB,EAAE,IAAA,GAAA,yBAAA,OAAQ,EAAE,EAC1C,KAAK,yBAAA,cAAc,CACpB;AACD,WAAA,GAAA,yBAAA,KAAW,GAAG,EAAG;;EAElB,SAAS,EAAK,GAAwC;AAQrD,WAAA,GAAA,yBAAA,KAAW,GAPE,OAAO,KAAK,EAAI,CAAC,MAAM,CACpB,KAAI,OAClB,OAAO,EAAI,MAAO,YAAA,GAAA,yBAAA,QACT,EAAI,GAAG,IAAA,GAAA,yBAAA,OAAQ,EAAI,GAAI,EAChC,KAAK,yBAAA,cAAc,CACnB,OAAO,EAAE,CACV,CACgB;;EAGlB,SAAS,EAAO,GAAsB,GAAiB;GACtD,IAAMmB,KAAAA,GAAAA,yBAAAA,aAAAA,GAAAA,yBAAAA,KAA4B,GAAiB,EAAO,CAAC,GAAG,EAAW,CAAC;AAC1E,UAAO;;EAER,SAAS,EAAQ,GAAsB,GAAiB;AACvD,WAAA,GAAA,yBAAA,QAAc,GAAY,EAAgB,MAAM,GAAG,GAAG,MAAiB,EAAS,QAAQ,GAAU,MAAW,CAAC,GAAG,EAAI,EAAE,EAAE,CAAC;;EAI3H,SAAS,EAAa,GAAsB,GAAiB;GAC5D,IAAM,KAAA,GAAA,yBAAA,YACA,EAAW,OACd,OAAA,GAAA,yBAAA,KACA,IAAA,GAAA,yBAAA,IACG,EAAK,EACR,EACA,CAAC,IAAA,GAAA,yBAAA,IAAM,EAAK,CAAC,CACd,CACD;AACD,UAAO;;EAIR,SAAS,EAAY,GAAsB,GAAiB;AAC3D,WAAA,GAAA,yBAAA,QACC,IAAA,GAAA,yBAAA,KACI,GAAiB,EAAW,CAAC,MAAM,GACtC,GAAO,MAAQ,EAAK,QAAQ,GAAK,MAAM;IAAC,EAAG;IAAI;IAAK,EAAG;IAAG,EAAE,EAAM,CACnE;;EAGF,IAAM,KAAA,GAAA,yBAAA,MAAA,GAAA,yBAAA,MAAA,GAAA,yBAAA,OAEE,4BAA4B,GAAA,GAAA,yBAAA,OAC5B,iBAAiB,CACvB,CAAC,IAAI,OAAO,GAAA,GAAA,yBAAA,MAAA,GAAA,yBAAA,OAEN,oBAAoB,CAC1B,CAAC,KAAI,MAAI,IAAI,EAAE,CAAC,CACjB,CACA,KAAI,MAAM,CAAC,SAAS,EAAI,CAAC,CACzB,KAAK,SAAS,EAET,KAAA,GAAA,yBAAA,QAAqB,OAAO,CACjC,UAAS,CAAC,SAAS,KAAK,CAAC,EAEpB,KAAA,GAAA,yBAAA,OAAuB,eAAe,CAC3C,KAAI,MAAI,CAAC,UAAU,MAAM,OAAO,CAAC,CACjC,KAAK,UAAU,EAGV,KAAA,GAAA,yBAAA,OAAsB,gBAAI,OAAO,YAAY,EAAG,yBAAyB,EAAG,2BAA2B,EAAG,qBAAqB,CAAC,CAGrI,KAAI,MAAI,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC,WAAW,GAAI,GAAG,CAAC,CAAC,CACrD,KAAK,SAAS,EAET,IAAe,eACf,KAAA,GAAA,yBAAA,OAAmB,+FAA+F,CACvH,KAAI,MAAI;GAER,IAAM,IAAI,EAAE,WAAW,IAAc,MAEpC,MAAK,KAAK,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,CAC/B,EACK,IAAI,KAAK,IAAI,OAAO,EAAE;AAK5B,UAHI,KAAM,OAAgC,CAAC,SAAS,EAAE,GAClD,OAAO,KAAM,YAAkB,CAAC,UAAU,EAAE,GAEzC,OAAO,UAAU,SAAS,KAAK,EAAE,KAAK,oBAC1C,CAAC,SAAS,OAAO,EAAE,CAAC,GACpB,CAAC,SAAS,OAAO,EAAE,CAAC;IACtB,CACD,KAAK,SAAS,EAET,KAAA,GAAA,yBAAA,aAAA,GAAA,yBAAA,QACE,IAAI,CAAC,KAAK,MAAA,EAAa,CAAC,MAAA,GAAA,yBAAA,QAAY,IAAI,CAAC,CAC/C,GAAG,EAAI,CACP,GAAG,EAAY,CACf,GAAG,EAAe,CAClB,GAAG,EAAc,CACjB,GAAG,EAAW,CACf;AAwCD,QAAA,IAtCc;GAIb;IAAC,MAAM;IAAQ,KAAK,EAAI,CAAC,+BAA+B,CAAC;IAAC;GAG1D;IAAC,MAAM;IAAS,KAAK,EAAK,EAAC,YAAY,MAAK,CAAC;IAAC;GAC9C;IAAC,MAAM;IAAS,KAAK,EAAK,EAAC,YAAY,MAAK,CAAC;IAAC;GAG9C;IAAC,MAAM;IAAQ,KAAK,EAAI,CAAC,WAAW,CAAC;IAAC;GACtC;IAAC,MAAM;IAAQ,KAAK,EAAK,EAAC,WAAW,MAAK,CAAC;IAAC;GAC5C;IAAC,MAAM;IAAQ,KAAK,EAAK,EAAC,WAAW,MAAK,CAAC;IAAC;GAG5C;IAAC,MAAM;IAAQ,KAAK,EAAK,EAAC,aAAa,UAAS,CAAC;IAAC;GAGlD;IAAC,MAAM;IAAc,KAAK,EAAI,CAAC,KAAK,CAAC;IAAC;GACtC;IAAC,MAAM;IAAa,KAAK,EAAI;KAAC;KAAK;KAAK;KAAK;KAAI,CAAC;IAAC;GACnD;IAAC,MAAM;IAAa,KAAK,EAAI,CAAC,KAAK,IAAI,CAAC;IAAC;GACzC;IAAC,MAAM;IAAa,KAAK,EAAI,CAAC,YAAY,CAAC;IAAC;GAC5C;IAAC,MAAM;IAAa,KAAK,EAAI,CAAC,YAAY,CAAC;IAAC;GAC5C;IAAC,MAAM;IAAa,KAAK,EAAI,CAAC,gBAAgB,CAAC;IAAC;GAChD;IAAC,MAAM;IAAa,KAAK,EAAI,CAAC,SAAS,CAAC;IAAC;GACzC;IAAC,MAAM;IAAa,KAAK,EAAI,CAAC,IAAI,CAAC;IAAC;GACpC;IAAC,MAAM;IAAa,KAAK,EAAI,CAAC,WAAW,CAAC;IAAC;GAC3C;IAAC,MAAM;IAAa,KAAK,EAAI,CAAC,KAAK,CAAC;IAAC;GACrC;IAAC,MAAM;IAAa,KAAK,EAAI,CAAC,KAAK,CAAC;IAAC;GACrC;IAAC,MAAM;IAAc,KAAK,EAAI,CAAC,IAAI,CAAC;IAAC;GACrC;IAAC,MAAM;IAAc,KAAK,EAAI,CAAC,IAAI,CAAC;IAAC;GACrC,CAEyB,QACxB,GAAK,MAAS,EAAM,KAAK,EAAM,KAAK,EAAI,EACzC,EACA,CAC0B,KAAK,yBAAA,cAAc;;CAG/C,MAAM,GAAuB;EAE5B,IAAM,IAAI,MAAA,EAAa,MAAM,EAAE;AAC/B,MAAI,CAAE,EAAE,OAAQ,OAAM,MAAM,uBAAsB,IAAG,IAAI;EAEzD,IAAM,IAAI,EAAE;AAGZ,SAFI,EAAE,OAAO,UAAgB,MAAA,EAAmB,EAAE,GAAG,GAE9C,MAAA,EAAW,EAAE;;CAErB,GAAM,GAAsB;EAE3B,IAAM,IAAM,EAAE,OAAO;AACrB,MAAI,aAAe,MAAO,QAAO,MAAA,EAAW,EAAI;EAEhD,IAAM,IAAM,MAAA,EAAW;AACvB,SAAO,IAAK,EAAI,EAAE,GAAE,OAAO,KAAK;;CAEjC,KAAmB;EAClB,UAAS,MAAI,EAAE,OAAO;EACtB,UAAS,MAAI,MAAA,EAAmB,EAAE,OAAO,CAAC;EAC1C,WAAS,MAAI,EAAE,OAAO;EAEtB,aAAY,MAAI;AAAC,SAAM,MAAM,gCAAgC;;EAC7D,aAAY,MAAI;AAAC,SAAM,MAAM,+BAA+B;;EAC5D,YAAW,MAAI;AAAC,SAAM,MAAM,gCAAgC;;EAC5D,YAAW,MAAI;AAAC,SAAM,MAAM,+BAA+B;;EAG3D,MAAK,MAAI,CAAE,MAAA,EAAW,QAAS,EAAE;EAEjC,MAAK,MAAI,CAAE,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC;EAGxC,cAAa,MAAI,CAAC,MAAA,EAAW,OAAQ,EAAE;EAIvC,OAAM,MAAI,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC,IACpC,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC;EAChC,MAAK,MAAI,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC,GACnC,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC;EAChC,MAAK,MAAI,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC,GACnC,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC;EAChC,MAAK,MAAI,KAAK,MAAO,MAAA,EAAW,KAAM,EAAE,CAAE;EAC1C,MAAK,MAAI,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC,GACnC,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC;EAGhC,MAAK,MAAI;GACR,IAAM,IAAI,MAAA,EAAW,EAAE,OAAO,CAAC,EACzB,IAAI,MAAA,EAAW,EAAE,OAAO,CAAC;AAC/B,UAAO,OAAO,UAAU,SAAS,KAAK,EAAE,KAAK,qBACzC,OAAO,UAAU,SAAS,KAAK,EAAE,KAAK,oBACtC,OAAO,EAAE,GAAG,OAAO,EAAE,GAAG,OAAO,EAAE,GAAG,OAAO,EAAE;;EAElD,MAAK,MAAI,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC,GACnC,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC;EAGhC,MAAQ,MAAI,IAAI,MAAA,EAAoB,EAAE,OAAO,CAAC,CAAC;EAC/C,WAAY,MAAI,IAAI,MAAA,EAAW,OAAQ,EAAE,CAAC;EAC1C,SAAU,MAAI;GACb,IAAM,IAAI,MAAA,EAAW,EAAE,OAAO,CAAC;AAC/B,UAAO,OAAO,UAAU,SAAS,KAAK,EAAE,KAAK,oBAC1C,MAAA,EAAoB,MAAA,EAAa,MAAM,OAAO,EAAE,CAAC,CAAC,MAAM,GACxD,OAAO,EAAE;;EAEb,UAAW,MAAI;GACd,IAAM,IAAI,EAAE,OAAO;AACnB,UAAO,EAAE,OAAO,WACb,EAAS,EAAE,KACX,EAAQ,MAAA,EAAW,EAAE;;EAEzB,OAAS,MAAI,KAAK,KAAM,MAAA,EAAoB,EAAE,OAAO,CAAC,CAAE;EACxD,QAAS,MAAI,KAAK,MAAO,MAAA,EAAoB,EAAE,OAAO,CAAC,CAAE;EACzD,QAAS,MAAI,KAAK,MAAO,MAAA,EAAoB,EAAE,OAAO,CAAC,CAAE;EACzD,QAAS,MAAI,OAAO,MAAO,MAAA,EAAoB,EAAE,OAAO,CAAC,CAAE;EAG3D,OAAM,MAAI,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC,IACpC,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC;EAChC,OAAM,MAAI,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC,IACpC,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC;EAChC,QAAO,MAAI,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC,KACrC,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC;EAGhC,MAAK,MAAI,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC,GACnC,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC;EAChC,OAAM,MAAI,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC,IACpC,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC;EAChC,MAAK,MAAI,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC,GACnC,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC;EAChC,OAAM,MAAI,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC,IACpC,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC;EAGhC,OAAM,MAAI;GACT,IAAM,IAAI,MAAA,EAAW,EAAE,OAAO,CAAC,EACzB,IAAI,MAAA,EAAW,EAAE,OAAO,CAAC;AAE/B,UAAO,KAAK,QAAQ,KAAK,OAEtB,KAAK,IAAI,OAAO,EAAE,KAAK,OAAO,EAAE;;EAEpC,OAAM,MAAI,CAAE,MAAA,EAAW,MAAO,EAAE;EAChC,QAAO,MAAI;GACV,IAAM,IAAI,MAAA,EAAW,EAAE,OAAO,CAAC,EACzB,IAAI,MAAA,EAAW,EAAE,OAAO,CAAC;AAE/B,UAAO,OAAO,UAAU,SAAS,KAAK,EAAE,IACtC,OAAO,UAAU,SAAS,KAAK,EAAE,GACvB,OAAO,EAAE,KAAK,OAAO,EAAE,GAA/B;;EAEL,QAAO,MAAI,CAAE,MAAA,EAAW,OAAQ,EAAE;EAGlC,MAAK,MAAI,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC,GACnC,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC;EAChC,MAAK,MAAI,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC,GACnC,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC;EAChC,MAAK,MAAI,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC,GACnC,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC;EAGhC,OAAM,MAAI,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC,KAAK,UACzC,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC,KAAK;EACrC,OAAM,MAAI,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC,KAAK,UACzC,OAAO,MAAA,EAAW,EAAE,OAAO,CAAC,CAAC,KAAK;EAGrC,MAAK,MAAI;GACR,IAAM,IAAO,MAAA,EAAW,QAAS,EAAE,EAC7B,IAAO,EAAE,OAAO;AACtB,OAAI,EAAK,OAAO,IAAK,OAAM,MAAM,uCAAuC;AAExE,UAAO,MAAA,EAAW,EAAK,IAAM,IAAG,GAAG;;EAEpC,WAAU;AAAC,SAAM,MAAM,uCAAuC;;EAC9D;CACD,GAAe,GAAkB;EAChC,IAAM,IAAI,MAAA,EAAW,EAAE;AACvB,MAAI,OAAO,UAAU,SAAS,KAAK,EAAE,KAAK,kBAAmB,OAAM,MAAM,oBAAmB,OAAO,EAAE,GAAE,cAAc;AACrH,SAAO,OAAO,EAAE;;CAGjB,KACG;CACH,GAAc,GAAa;AAI1B,SAHI,KAAM,OAAgC,IAGnC,OAAO,EAAE,CAAC,WAChB,MAAA,IACA,MAAI,OAAO,EAAE,WAAW,IAAI,GACzB,KAAK,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC,GAC3B,KAAK,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,CAAC,CAC9B;;CAIF,mBAAmB,MAAe,EAAI,WAAW,IAAI,GAClD,OAAO,KAAK,MAAM,EAAI,MAAM,EAAE,CAAC,CAAC,GAChC;CAGH,QAAA,IACG;CAGH,OAAO,WAAW,GAA2C;EAE5D,IAAM,IADI,MAAA,EAAc,KAAK,EAAS,MAAM,CAAC,EAChC;AACb,MAAI,CAAE,EAAG,QAAO;EAEhB,IAAM,EAAC,WAAM,OAAO,SAAM,QAAG,OAAwB;AACrD,MAAI,CAAE,GAAA,EAAoB,SAAS,EAAM,CAAE,OAAM,sBAAsB,EAAM;AAC7E,SAAO;GACN;GACA,MAAO,GAAA,EAA2B,EAAK;GACvC;GACA;;CAEF,QAAA,IAA2B;EAAC;EAAO;EAAO;EAAQ;EAAK;CAEvD,QAAA,EAAuB,GAAqB;EAC3C,IAAI,IAAI,GAAG,IAAI,GAAG,IAAI;AAEtB,WAAa;AAEZ,OADA,IAAI,EAAE,QAAQ,MAAK,EACf,IAAI,GAAG;AAEV,QADA,IAAI,EAAE,QAAQ,KAAM,EAChB,IAAI,EAAG;AAEX,QAAI,EAAE,QAAQ,MAAO,IAAE,EAAE;SAGzB,KAAI,EAAE,QAAQ,OAAM,IAAE,EAAE;AAEzB,OAAI,IAAI,EAAG;AAIX,GAFA,IAAI,EAAE,MAAM,GAAG,EAAE,GAAE,MAAK,EAAE,MAAM,IAAE,GAAG,EAAE,GACpC,EAAE,MAAM,IAAE,EAAE,EACf,IAAI,IAAE;;AAGP,SAAO"}
|