w-trade-solve 1.0.2 → 1.0.3

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.
@@ -1,19 +1,19 @@
1
1
  /*!
2
- * w-trade-solve v1.0.2
2
+ * w-trade-solve v1.0.3
3
3
  * (c) 2018-2021 yuda-lyu(semisphere)
4
4
  * Released under the MIT License.
5
5
  */
6
- !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("path"),require("fs")):"function"==typeof define&&define.amd?define(["path","fs"],e):(t="undefined"!=typeof globalThis?globalThis:t||self)["w-trade-solve"]=e(t.path,t.fs)}(this,function(t,e){"use strict";var r=Array.isArray,n="object"==typeof global&&global&&global.Object===Object&&global,i="object"==typeof self&&self&&self.Object===Object&&self,o=n||i||Function("return this")(),u=o.Symbol,s=Object.prototype,a=s.hasOwnProperty,f=s.toString,c=u?u.toStringTag:void 0;var l=Object.prototype.toString;var d=u?u.toStringTag:void 0;function h(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":d&&d in Object(t)?function(t){var e=a.call(t,c),r=t[c];try{t[c]=void 0;var n=!0}catch(t){}var i=f.call(t);return n&&(e?t[c]=r:delete t[c]),i}(t):function(t){return l.call(t)}(t)}function p(t){return null!=t&&"object"==typeof t}function v(t){return"symbol"==typeof t||p(t)&&"[object Symbol]"==h(t)}var y=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,m=/^\w*$/;function g(t,e){if(r(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!v(t))||(m.test(t)||!y.test(t)||null!=e&&t in Object(e))}function b(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function w(t){if(!b(t))return!1;var e=h(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}var _,j=o["__core-js_shared__"],O=(_=/[^.]+$/.exec(j&&j.keys&&j.keys.IE_PROTO||""))?"Symbol(src)_1."+_:"";var S=Function.prototype.toString;function $(t){if(null!=t){try{return S.call(t)}catch(t){}try{return t+""}catch(t){}}return""}var E=/^\[object .+?Constructor\]$/,M=Function.prototype,N=Object.prototype,A=M.toString,x=N.hasOwnProperty,T=RegExp("^"+A.call(x).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function P(t){return!(!b(t)||(e=t,O&&O in e))&&(w(t)?T:E).test($(t));var e}function L(t,e){var r=function(t,e){return null==t?void 0:t[e]}(t,e);return P(r)?r:void 0}var k=L(Object,"create");var F=Object.prototype.hasOwnProperty;var D=Object.prototype.hasOwnProperty;function C(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}function R(t,e){return t===e||t!=t&&e!=e}function I(t,e){for(var r=t.length;r--;)if(R(t[r][0],e))return r;return-1}C.prototype.clear=function(){this.__data__=k?k(null):{},this.size=0},C.prototype.delete=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e},C.prototype.get=function(t){var e=this.__data__;if(k){var r=e[t];return"__lodash_hash_undefined__"===r?void 0:r}return F.call(e,t)?e[t]:void 0},C.prototype.has=function(t){var e=this.__data__;return k?void 0!==e[t]:D.call(e,t)},C.prototype.set=function(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=k&&void 0===e?"__lodash_hash_undefined__":e,this};var q=Array.prototype.splice;function z(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}z.prototype.clear=function(){this.__data__=[],this.size=0},z.prototype.delete=function(t){var e=this.__data__,r=I(e,t);return!(r<0)&&(r==e.length-1?e.pop():q.call(e,r,1),--this.size,!0)},z.prototype.get=function(t){var e=this.__data__,r=I(e,t);return r<0?void 0:e[r][1]},z.prototype.has=function(t){return I(this.__data__,t)>-1},z.prototype.set=function(t,e){var r=this.__data__,n=I(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this};var U=L(o,"Map");function Y(t,e){var r,n,i=t.__data__;return("string"==(n=typeof(r=e))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof e?"string":"hash"]:i.map}function B(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}B.prototype.clear=function(){this.size=0,this.__data__={hash:new C,map:new(U||z),string:new C}},B.prototype.delete=function(t){var e=Y(this,t).delete(t);return this.size-=e?1:0,e},B.prototype.get=function(t){return Y(this,t).get(t)},B.prototype.has=function(t){return Y(this,t).has(t)},B.prototype.set=function(t,e){var r=Y(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this};function H(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError("Expected a function");var r=function(){var n=arguments,i=e?e.apply(this,n):n[0],o=r.cache;if(o.has(i))return o.get(i);var u=t.apply(this,n);return r.cache=o.set(i,u)||o,u};return r.cache=new(H.Cache||B),r}H.Cache=B;var G,Z,V,W=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,J=/\\(\\)?/g,K=(G=function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(W,function(t,r,n,i){e.push(n?i.replace(J,"$1"):r||t)}),e},Z=H(G,function(t){return 500===V.size&&V.clear(),t}),V=Z.cache,Z),Q=K;function X(t,e){for(var r=-1,n=null==t?0:t.length,i=Array(n);++r<n;)i[r]=e(t[r],r,t);return i}var tt=u?u.prototype:void 0,et=tt?tt.toString:void 0;function rt(t){if("string"==typeof t)return t;if(r(t))return X(t,rt)+"";if(v(t))return et?et.call(t):"";var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function nt(t){return null==t?"":rt(t)}function it(t,e){return r(t)?t:g(t,e)?[t]:Q(nt(t))}function ot(t){if("string"==typeof t||v(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function ut(t,e){for(var r=0,n=(e=it(e,t)).length;null!=t&&r<n;)t=t[ot(e[r++])];return r&&r==n?t:void 0}function st(t,e,r){var n=null==t?void 0:ut(t,e);return void 0===n?r:n}var at=Math.floor,ft=Math.random;function ct(t,e){return t+at(ft()*(e-t+1))}function lt(t){var e=t.length;return e?t[ct(0,e-1)]:void 0}function dt(t){return p(t)&&"[object Arguments]"==h(t)}var ht=Object.prototype,pt=ht.hasOwnProperty,vt=ht.propertyIsEnumerable,yt=dt(function(){return arguments}())?dt:function(t){return p(t)&&pt.call(t,"callee")&&!vt.call(t,"callee")},mt=yt;var gt="object"==typeof exports&&exports&&!exports.nodeType&&exports,bt=gt&&"object"==typeof module&&module&&!module.nodeType&&module,wt=bt&&bt.exports===gt?o.Buffer:void 0,_t=(wt?wt.isBuffer:void 0)||function(){return!1},jt=/^(?:0|[1-9]\d*)$/;function Ot(t,e){var r=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==r||"symbol"!=r&&jt.test(t))&&t>-1&&t%1==0&&t<e}function St(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}var $t={};function Et(t){return function(e){return t(e)}}$t["[object Float32Array]"]=$t["[object Float64Array]"]=$t["[object Int8Array]"]=$t["[object Int16Array]"]=$t["[object Int32Array]"]=$t["[object Uint8Array]"]=$t["[object Uint8ClampedArray]"]=$t["[object Uint16Array]"]=$t["[object Uint32Array]"]=!0,$t["[object Arguments]"]=$t["[object Array]"]=$t["[object ArrayBuffer]"]=$t["[object Boolean]"]=$t["[object DataView]"]=$t["[object Date]"]=$t["[object Error]"]=$t["[object Function]"]=$t["[object Map]"]=$t["[object Number]"]=$t["[object Object]"]=$t["[object RegExp]"]=$t["[object Set]"]=$t["[object String]"]=$t["[object WeakMap]"]=!1;var Mt="object"==typeof exports&&exports&&!exports.nodeType&&exports,Nt=Mt&&"object"==typeof module&&module&&!module.nodeType&&module,At=Nt&&Nt.exports===Mt&&n.process,xt=function(){try{var t=Nt&&Nt.require&&Nt.require("util").types;return t||At&&At.binding&&At.binding("util")}catch(t){}}(),Tt=xt&&xt.isTypedArray,Pt=Tt?Et(Tt):function(t){return p(t)&&St(t.length)&&!!$t[h(t)]},Lt=Object.prototype.hasOwnProperty;function kt(t,e){var n=r(t),i=!n&&mt(t),o=!n&&!i&&_t(t),u=!n&&!i&&!o&&Pt(t),s=n||i||o||u,a=s?function(t,e){for(var r=-1,n=Array(t);++r<t;)n[r]=e(r);return n}(t.length,String):[],f=a.length;for(var c in t)!e&&!Lt.call(t,c)||s&&("length"==c||o&&("offset"==c||"parent"==c)||u&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||Ot(c,f))||a.push(c);return a}var Ft=Object.prototype;function Dt(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||Ft)}function Ct(t,e){return function(r){return t(e(r))}}var Rt=Ct(Object.keys,Object),It=Object.prototype.hasOwnProperty;function qt(t){if(!Dt(t))return Rt(t);var e=[];for(var r in Object(t))It.call(t,r)&&"constructor"!=r&&e.push(r);return e}function zt(t){return null!=t&&St(t.length)&&!w(t)}function Ut(t){return zt(t)?kt(t):qt(t)}function Yt(t){return null==t?[]:function(t,e){return X(e,function(e){return t[e]})}(t,Ut(t))}function Bt(t){return lt(Yt(t))}function Ht(t){return"[object String]"===Object.prototype.toString.call(t)}function Gt(t){return!(!Ht(t)||""===t)}function Zt(t){var e=this.__data__=new z(t);this.size=e.size}Zt.prototype.clear=function(){this.__data__=new z,this.size=0},Zt.prototype.delete=function(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r},Zt.prototype.get=function(t){return this.__data__.get(t)},Zt.prototype.has=function(t){return this.__data__.has(t)},Zt.prototype.set=function(t,e){var r=this.__data__;if(r instanceof z){var n=r.__data__;if(!U||n.length<199)return n.push([t,e]),this.size=++r.size,this;r=this.__data__=new B(n)}return r.set(t,e),this.size=r.size,this};function Vt(t){var e=-1,r=null==t?0:t.length;for(this.__data__=new B;++e<r;)this.add(t[e])}function Wt(t,e){for(var r=-1,n=null==t?0:t.length;++r<n;)if(e(t[r],r,t))return!0;return!1}function Jt(t,e){return t.has(e)}Vt.prototype.add=Vt.prototype.push=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this},Vt.prototype.has=function(t){return this.__data__.has(t)};function Kt(t,e,r,n,i,o){var u=1&r,s=t.length,a=e.length;if(s!=a&&!(u&&a>s))return!1;var f=o.get(t),c=o.get(e);if(f&&c)return f==e&&c==t;var l=-1,d=!0,h=2&r?new Vt:void 0;for(o.set(t,e),o.set(e,t);++l<s;){var p=t[l],v=e[l];if(n)var y=u?n(v,p,l,e,t,o):n(p,v,l,t,e,o);if(void 0!==y){if(y)continue;d=!1;break}if(h){if(!Wt(e,function(t,e){if(!Jt(h,e)&&(p===t||i(p,t,r,n,o)))return h.push(e)})){d=!1;break}}else if(p!==v&&!i(p,v,r,n,o)){d=!1;break}}return o.delete(t),o.delete(e),d}var Qt=o.Uint8Array;function Xt(t){var e=-1,r=Array(t.size);return t.forEach(function(t,n){r[++e]=[n,t]}),r}function te(t){var e=-1,r=Array(t.size);return t.forEach(function(t){r[++e]=t}),r}var ee=u?u.prototype:void 0,re=ee?ee.valueOf:void 0;function ne(t,e){for(var r=-1,n=e.length,i=t.length;++r<n;)t[i+r]=e[r];return t}function ie(t,e,n){var i=e(t);return r(t)?i:ne(i,n(t))}function oe(t,e){for(var r=-1,n=null==t?0:t.length,i=0,o=[];++r<n;){var u=t[r];e(u,r,t)&&(o[i++]=u)}return o}function ue(){return[]}var se=Object.prototype.propertyIsEnumerable,ae=Object.getOwnPropertySymbols,fe=ae?function(t){return null==t?[]:(t=Object(t),oe(ae(t),function(e){return se.call(t,e)}))}:ue;function ce(t){return ie(t,Ut,fe)}var le=Object.prototype.hasOwnProperty;var de=L(o,"DataView"),he=L(o,"Promise"),pe=L(o,"Set"),ve=L(o,"WeakMap"),ye="[object Map]",me="[object Promise]",ge="[object Set]",be="[object WeakMap]",we="[object DataView]",_e=$(de),je=$(U),Oe=$(he),Se=$(pe),$e=$(ve),Ee=h;(de&&Ee(new de(new ArrayBuffer(1)))!=we||U&&Ee(new U)!=ye||he&&Ee(he.resolve())!=me||pe&&Ee(new pe)!=ge||ve&&Ee(new ve)!=be)&&(Ee=function(t){var e=h(t),r="[object Object]"==e?t.constructor:void 0,n=r?$(r):"";if(n)switch(n){case _e:return we;case je:return ye;case Oe:return me;case Se:return ge;case $e:return be}return e});var Me=Ee,Ne="[object Arguments]",Ae="[object Array]",xe="[object Object]",Te=Object.prototype.hasOwnProperty;function Pe(t,e,n,i,o,u){var s=r(t),a=r(e),f=s?Ae:Me(t),c=a?Ae:Me(e),l=(f=f==Ne?xe:f)==xe,d=(c=c==Ne?xe:c)==xe,h=f==c;if(h&&_t(t)){if(!_t(e))return!1;s=!0,l=!1}if(h&&!l)return u||(u=new Zt),s||Pt(t)?Kt(t,e,n,i,o,u):function(t,e,r,n,i,o,u){switch(r){case"[object DataView]":if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=e.byteLength||!o(new Qt(t),new Qt(e)));case"[object Boolean]":case"[object Date]":case"[object Number]":return R(+t,+e);case"[object Error]":return t.name==e.name&&t.message==e.message;case"[object RegExp]":case"[object String]":return t==e+"";case"[object Map]":var s=Xt;case"[object Set]":var a=1&n;if(s||(s=te),t.size!=e.size&&!a)return!1;var f=u.get(t);if(f)return f==e;n|=2,u.set(t,e);var c=Kt(s(t),s(e),n,i,o,u);return u.delete(t),c;case"[object Symbol]":if(re)return re.call(t)==re.call(e)}return!1}(t,e,f,n,i,o,u);if(!(1&n)){var p=l&&Te.call(t,"__wrapped__"),v=d&&Te.call(e,"__wrapped__");if(p||v){var y=p?t.value():t,m=v?e.value():e;return u||(u=new Zt),o(y,m,n,i,u)}}return!!h&&(u||(u=new Zt),function(t,e,r,n,i,o){var u=1&r,s=ce(t),a=s.length;if(a!=ce(e).length&&!u)return!1;for(var f=a;f--;){var c=s[f];if(!(u?c in e:le.call(e,c)))return!1}var l=o.get(t),d=o.get(e);if(l&&d)return l==e&&d==t;var h=!0;o.set(t,e),o.set(e,t);for(var p=u;++f<a;){var v=t[c=s[f]],y=e[c];if(n)var m=u?n(y,v,c,e,t,o):n(v,y,c,t,e,o);if(!(void 0===m?v===y||i(v,y,r,n,o):m)){h=!1;break}p||(p="constructor"==c)}if(h&&!p){var g=t.constructor,b=e.constructor;g==b||!("constructor"in t)||!("constructor"in e)||"function"==typeof g&&g instanceof g&&"function"==typeof b&&b instanceof b||(h=!1)}return o.delete(t),o.delete(e),h}(t,e,n,i,o,u))}function Le(t,e,r,n,i){return t===e||(null==t||null==e||!p(t)&&!p(e)?t!=t&&e!=e:Pe(t,e,r,n,Le,i))}function ke(t){return t==t&&!b(t)}function Fe(t,e){return function(r){return null!=r&&(r[t]===e&&(void 0!==e||t in Object(r)))}}function De(t){var e=function(t){for(var e=Ut(t),r=e.length;r--;){var n=e[r],i=t[n];e[r]=[n,i,ke(i)]}return e}(t);return 1==e.length&&e[0][2]?Fe(e[0][0],e[0][1]):function(r){return r===t||function(t,e,r,n){var i=r.length,o=i,u=!n;if(null==t)return!o;for(t=Object(t);i--;){var s=r[i];if(u&&s[2]?s[1]!==t[s[0]]:!(s[0]in t))return!1}for(;++i<o;){var a=(s=r[i])[0],f=t[a],c=s[1];if(u&&s[2]){if(void 0===f&&!(a in t))return!1}else{var l=new Zt;if(n)var d=n(f,c,a,t,e,l);if(!(void 0===d?Le(c,f,3,n,l):d))return!1}}return!0}(r,t,e)}}function Ce(t,e){return null!=t&&e in Object(t)}function Re(t,e){return null!=t&&function(t,e,n){for(var i=-1,o=(e=it(e,t)).length,u=!1;++i<o;){var s=ot(e[i]);if(!(u=null!=t&&n(t,s)))break;t=t[s]}return u||++i!=o?u:!!(o=null==t?0:t.length)&&St(o)&&Ot(s,o)&&(r(t)||mt(t))}(t,e,Ce)}function Ie(t){return t}function qe(t){return function(e){return null==e?void 0:e[t]}}function ze(t){return g(t)?qe(ot(t)):function(t){return function(e){return ut(e,t)}}(t)}function Ue(t){return"function"==typeof t?t:null==t?Ie:"object"==typeof t?r(t)?function(t,e){return g(t)&&ke(e)?Fe(ot(t),e):function(r){var n=st(r,t);return void 0===n&&n===e?Re(r,t):Le(e,n,3)}}(t[0],t[1]):De(t):ze(t)}var Ye,Be=function(t,e,r){for(var n=-1,i=Object(t),o=r(t),u=o.length;u--;){var s=o[Ye?u:++n];if(!1===e(i[s],s,i))break}return t};var He=function(t,e){return function(r,n){if(null==r)return r;if(!zt(r))return t(r,n);for(var i=r.length,o=e?i:-1,u=Object(r);(e?o--:++o<i)&&!1!==n(u[o],o,u););return r}}(function(t,e){return t&&Be(t,e,Ut)}),Ge=He;function Ze(t,e){var r=-1,n=zt(t)?Array(t.length):[];return Ge(t,function(t,i,o){n[++r]=e(t,i,o)}),n}function Ve(t,e){return(r(t)?X:Ze)(t,Ue(e))}var We=qe("length"),Je=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");function Ke(t){return Je.test(t)}var Qe="\\ud800-\\udfff",Xe="["+Qe+"]",tr="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",er="\\ud83c[\\udffb-\\udfff]",rr="[^"+Qe+"]",nr="(?:\\ud83c[\\udde6-\\uddff]){2}",ir="[\\ud800-\\udbff][\\udc00-\\udfff]",or="(?:"+tr+"|"+er+")"+"?",ur="[\\ufe0e\\ufe0f]?",sr=ur+or+("(?:\\u200d(?:"+[rr,nr,ir].join("|")+")"+ur+or+")*"),ar="(?:"+[rr+tr+"?",tr,nr,ir,Xe].join("|")+")",fr=RegExp(er+"(?="+er+")|"+ar+sr,"g");function cr(t){return Ke(t)?function(t){for(var e=fr.lastIndex=0;fr.test(t);)++e;return e}(t):We(t)}function lr(t){if(null==t)return 0;if(zt(t))return"string"==typeof(e=t)||!r(e)&&p(e)&&"[object String]"==h(e)?cr(t):t.length;var e,n=Me(t);return"[object Map]"==n||"[object Set]"==n?t.size:qt(t).length}var dr=/\s/;var hr=/^\s+/;function pr(t){return t?t.slice(0,function(t){for(var e=t.length;e--&&dr.test(t.charAt(e)););return e}(t)+1).replace(hr,""):t}var vr=/^[-+]0x[0-9a-f]+$/i,yr=/^0b[01]+$/i,mr=/^0o[0-7]+$/i,gr=parseInt;function br(t){if("number"==typeof t)return t;if(v(t))return NaN;if(b(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=b(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=pr(t);var r=yr.test(t);return r||mr.test(t)?gr(t.slice(2),r?2:8):vr.test(t)?NaN:+t}var wr=1/0;function _r(t){return t?(t=br(t))===wr||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function jr(t){var e=_r(t),r=e%1;return e==e?r?e-r:e:0}var Or=o.isFinite,Sr=Math.min;var $r=function(t){var e=Math[t];return function(t,r){if(t=br(t),(r=null==r?0:Sr(jr(r),292))&&Or(t)){var n=(nt(t)+"e").split("e");return+((n=(nt(e(n[0]+"e"+(+n[1]+r)))+"e").split("e"))[0]+"e"+(+n[1]-r))}return e(t)}}("round"),Er=$r;function Mr(t){return t!=t}function Nr(t){let e=!1;if(Gt(t))e=!isNaN(Number(t));else if(function(t){return"[object Number]"===Object.prototype.toString.call(t)}(t)){if(Mr(t))return!1;e=!0}return e}function Ar(t){if(!Nr(t))return 0;return _r(t)}function xr(t){if(!Nr(t))return 0;t=Ar(t);let e=Er(t);return"0"===String(e)?0:e}var Tr=Math.ceil,Pr=Math.max;function Lr(t,e,r){if(!b(r))return!1;var n=typeof e;return!!("number"==n?zt(r)&&Ot(e,r.length):"string"==n&&e in r)&&R(r[e],t)}var kr=function(t){return function(e,r,n){return n&&"number"!=typeof n&&Lr(e,r,n)&&(r=n=void 0),e=_r(e),void 0===r?(r=e,e=0):r=_r(r),function(t,e,r,n){for(var i=-1,o=Pr(Tr((e-t)/(r||1)),0),u=Array(o);o--;)u[n?o:++i]=t,t+=r;return u}(e,r,n=void 0===n?e<r?1:-1:_r(n),t)}}(),Fr=kr;function Dr(t,e,r){return t==t&&(void 0!==r&&(t=t<=r?t:r),void 0!==e&&(t=t>=e?t:e)),t}function Cr(t,e){var r=-1,n=t.length;for(e||(e=Array(n));++r<n;)e[r]=t[r];return e}function Rr(t,e){var r=-1,n=t.length,i=n-1;for(e=void 0===e?n:e;++r<e;){var o=ct(r,i),u=t[o];t[o]=t[r],t[r]=u}return t.length=e,t}function Ir(t,e){return Rr(Cr(t),Dr(e,0,t.length))}function qr(t,e){var r=Yt(t);return Rr(r,Dr(e,0,r.length))}function zr(t){return!!Nr(t)&&(t=Ar(t),"number"==typeof(e=t)&&e==jr(e));var e}function Ur(t){if(!zr(t))return!1;return xr(t)>0}function Yr(t=0,e=100,n){if(zr(t)||(t=0),t=xr(t),zr(e)||(e=100),e=xr(e),Ur(n)||(n=1),n=xr(n),t>e)throw new Error(`vstart[${t}] > vend[${e}]`);let i=function(t,e,n){return e=(n?Lr(t,e,n):void 0===e)?1:jr(e),(r(t)?Ir:qr)(t,e)}(Fr(t,e+1),n);return i}function Br(t,e){for(var r=-1,n=null==t?0:t.length;++r<n&&!1!==e(t[r],r,t););return t}function Hr(t,e){var n;return(r(t)?Br:Ge)(t,"function"==typeof(n=e)?n:Ie)}function Gr(t,e,r){var n=-1,i=t.length;e<0&&(e=-e>i?0:i+e),(r=r>i?i:r)<0&&(r+=i),i=e>r?0:r-e>>>0,e>>>=0;for(var o=Array(i);++n<i;)o[n]=t[n+e];return o}function Zr(t){return t!=t}function Vr(t,e,r){return e==e?function(t,e,r){for(var n=r-1,i=t.length;++n<i;)if(t[n]===e)return n;return-1}(t,e,r):function(t,e,r,n){for(var i=t.length,o=r+(n?1:-1);n?o--:++o<i;)if(e(t[o],o,t))return o;return-1}(t,Zr,r)}var Wr="\\ud800-\\udfff",Jr="["+Wr+"]",Kr="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",Qr="\\ud83c[\\udffb-\\udfff]",Xr="[^"+Wr+"]",tn="(?:\\ud83c[\\udde6-\\uddff]){2}",en="[\\ud800-\\udbff][\\udc00-\\udfff]",rn="(?:"+Kr+"|"+Qr+")"+"?",nn="[\\ufe0e\\ufe0f]?",on=nn+rn+("(?:\\u200d(?:"+[Xr,tn,en].join("|")+")"+nn+rn+")*"),un="(?:"+[Xr+Kr+"?",Kr,tn,en,Jr].join("|")+")",sn=RegExp(Qr+"(?="+Qr+")|"+un+on,"g");function an(t){return Ke(t)?function(t){return t.match(sn)||[]}(t):function(t){return t.split("")}(t)}function fn(t,e,r){if((t=nt(t))&&(r||void 0===e))return pr(t);if(!t||!(e=rt(e)))return t;var n=an(t),i=an(e),o=function(t,e){for(var r=-1,n=t.length;++r<n&&Vr(e,t[r],0)>-1;);return r}(n,i),u=function(t,e){for(var r=t.length;r--&&Vr(e,t[r],0)>-1;);return r}(n,i)+1;return function(t,e,r){var n=t.length;return r=void 0===r?n:r,!e&&r>=n?t:Gr(t,e,r)}(n,o,u).join("")}function cn(t,e){if(!Gt(t))return[];if(!Gt(e))return[];let r=function(t,e){return Gt(t)&&Gt(e)?t.split(e):[]}(t,e);r=Ve(r,fn);let n=[];return Hr(r,function(t){Gt(t)&&n.push(t)}),n}function ln(t){let e=Object.prototype.toString.call(t);return"[object Function]"===e||"[object AsyncFunction]"===e}var dn="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function hn(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var pn={exports:{}};
6
+ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("path"),require("fs")):"function"==typeof define&&define.amd?define(["path","fs"],e):(t="undefined"!=typeof globalThis?globalThis:t||self)["w-trade-solve"]=e(t.path,t.fs)}(this,function(t,e){"use strict";var r=Array.isArray,n="object"==typeof global&&global&&global.Object===Object&&global,i="object"==typeof self&&self&&self.Object===Object&&self,o=n||i||Function("return this")(),s=o.Symbol,u=Object.prototype,a=u.hasOwnProperty,l=u.toString,f=s?s.toStringTag:void 0;var c=Object.prototype.toString;var d=s?s.toStringTag:void 0;function h(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":d&&d in Object(t)?function(t){var e=a.call(t,f),r=t[f];try{t[f]=void 0;var n=!0}catch(t){}var i=l.call(t);return n&&(e?t[f]=r:delete t[f]),i}(t):function(t){return c.call(t)}(t)}function p(t){return null!=t&&"object"==typeof t}function v(t){return"symbol"==typeof t||p(t)&&"[object Symbol]"==h(t)}var m=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,y=/^\w*$/;function g(t,e){if(r(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!v(t))||(y.test(t)||!m.test(t)||null!=e&&t in Object(e))}function w(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function b(t){if(!w(t))return!1;var e=h(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}var M,_=o["__core-js_shared__"],j=(M=/[^.]+$/.exec(_&&_.keys&&_.keys.IE_PROTO||""))?"Symbol(src)_1."+M:"";var O=Function.prototype.toString;function S(t){if(null!=t){try{return O.call(t)}catch(t){}try{return t+""}catch(t){}}return""}var E=/^\[object .+?Constructor\]$/,$=Function.prototype,N=Object.prototype,C=$.toString,A=N.hasOwnProperty,x=RegExp("^"+C.call(A).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function L(t){return!(!w(t)||(e=t,j&&j in e))&&(b(t)?x:E).test(S(t));var e}function P(t,e){var r=function(t,e){return null==t?void 0:t[e]}(t,e);return L(r)?r:void 0}var R=P(Object,"create");var T=Object.prototype.hasOwnProperty;var k=Object.prototype.hasOwnProperty;function F(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}function D(t,e){return t===e||t!=t&&e!=e}function B(t,e){for(var r=t.length;r--;)if(D(t[r][0],e))return r;return-1}F.prototype.clear=function(){this.__data__=R?R(null):{},this.size=0},F.prototype.delete=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e},F.prototype.get=function(t){var e=this.__data__;if(R){var r=e[t];return"__lodash_hash_undefined__"===r?void 0:r}return T.call(e,t)?e[t]:void 0},F.prototype.has=function(t){var e=this.__data__;return R?void 0!==e[t]:k.call(e,t)},F.prototype.set=function(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=R&&void 0===e?"__lodash_hash_undefined__":e,this};var I=Array.prototype.splice;function q(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}q.prototype.clear=function(){this.__data__=[],this.size=0},q.prototype.delete=function(t){var e=this.__data__,r=B(e,t);return!(r<0)&&(r==e.length-1?e.pop():I.call(e,r,1),--this.size,!0)},q.prototype.get=function(t){var e=this.__data__,r=B(e,t);return r<0?void 0:e[r][1]},q.prototype.has=function(t){return B(this.__data__,t)>-1},q.prototype.set=function(t,e){var r=this.__data__,n=B(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this};var U=P(o,"Map");function G(t,e){var r,n,i=t.__data__;return("string"==(n=typeof(r=e))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof e?"string":"hash"]:i.map}function z(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}z.prototype.clear=function(){this.size=0,this.__data__={hash:new F,map:new(U||q),string:new F}},z.prototype.delete=function(t){var e=G(this,t).delete(t);return this.size-=e?1:0,e},z.prototype.get=function(t){return G(this,t).get(t)},z.prototype.has=function(t){return G(this,t).has(t)},z.prototype.set=function(t,e){var r=G(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this};function H(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError("Expected a function");var r=function(){var n=arguments,i=e?e.apply(this,n):n[0],o=r.cache;if(o.has(i))return o.get(i);var s=t.apply(this,n);return r.cache=o.set(i,s)||o,s};return r.cache=new(H.Cache||z),r}H.Cache=z;var Y,Z,V,W=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,J=/\\(\\)?/g,K=(Y=function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(W,function(t,r,n,i){e.push(n?i.replace(J,"$1"):r||t)}),e},Z=H(Y,function(t){return 500===V.size&&V.clear(),t}),V=Z.cache,Z),X=K;function Q(t,e){for(var r=-1,n=null==t?0:t.length,i=Array(n);++r<n;)i[r]=e(t[r],r,t);return i}var tt=s?s.prototype:void 0,et=tt?tt.toString:void 0;function rt(t){if("string"==typeof t)return t;if(r(t))return Q(t,rt)+"";if(v(t))return et?et.call(t):"";var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function nt(t){return null==t?"":rt(t)}function it(t,e){return r(t)?t:g(t,e)?[t]:X(nt(t))}function ot(t){if("string"==typeof t||v(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function st(t,e){for(var r=0,n=(e=it(e,t)).length;null!=t&&r<n;)t=t[ot(e[r++])];return r&&r==n?t:void 0}function ut(t,e,r){var n=null==t?void 0:st(t,e);return void 0===n?r:n}var at=Math.floor,lt=Math.random;function ft(t,e){return t+at(lt()*(e-t+1))}function ct(t){var e=t.length;return e?t[ft(0,e-1)]:void 0}function dt(t){return p(t)&&"[object Arguments]"==h(t)}var ht=Object.prototype,pt=ht.hasOwnProperty,vt=ht.propertyIsEnumerable,mt=dt(function(){return arguments}())?dt:function(t){return p(t)&&pt.call(t,"callee")&&!vt.call(t,"callee")},yt=mt;var gt="object"==typeof exports&&exports&&!exports.nodeType&&exports,wt=gt&&"object"==typeof module&&module&&!module.nodeType&&module,bt=wt&&wt.exports===gt?o.Buffer:void 0,Mt=(bt?bt.isBuffer:void 0)||function(){return!1},_t=/^(?:0|[1-9]\d*)$/;function jt(t,e){var r=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==r||"symbol"!=r&&_t.test(t))&&t>-1&&t%1==0&&t<e}function Ot(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}var St={};function Et(t){return function(e){return t(e)}}St["[object Float32Array]"]=St["[object Float64Array]"]=St["[object Int8Array]"]=St["[object Int16Array]"]=St["[object Int32Array]"]=St["[object Uint8Array]"]=St["[object Uint8ClampedArray]"]=St["[object Uint16Array]"]=St["[object Uint32Array]"]=!0,St["[object Arguments]"]=St["[object Array]"]=St["[object ArrayBuffer]"]=St["[object Boolean]"]=St["[object DataView]"]=St["[object Date]"]=St["[object Error]"]=St["[object Function]"]=St["[object Map]"]=St["[object Number]"]=St["[object Object]"]=St["[object RegExp]"]=St["[object Set]"]=St["[object String]"]=St["[object WeakMap]"]=!1;var $t="object"==typeof exports&&exports&&!exports.nodeType&&exports,Nt=$t&&"object"==typeof module&&module&&!module.nodeType&&module,Ct=Nt&&Nt.exports===$t&&n.process,At=function(){try{var t=Nt&&Nt.require&&Nt.require("util").types;return t||Ct&&Ct.binding&&Ct.binding("util")}catch(t){}}(),xt=At&&At.isTypedArray,Lt=xt?Et(xt):function(t){return p(t)&&Ot(t.length)&&!!St[h(t)]},Pt=Object.prototype.hasOwnProperty;function Rt(t,e){var n=r(t),i=!n&&yt(t),o=!n&&!i&&Mt(t),s=!n&&!i&&!o&&Lt(t),u=n||i||o||s,a=u?function(t,e){for(var r=-1,n=Array(t);++r<t;)n[r]=e(r);return n}(t.length,String):[],l=a.length;for(var f in t)!e&&!Pt.call(t,f)||u&&("length"==f||o&&("offset"==f||"parent"==f)||s&&("buffer"==f||"byteLength"==f||"byteOffset"==f)||jt(f,l))||a.push(f);return a}var Tt=Object.prototype;function kt(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||Tt)}function Ft(t,e){return function(r){return t(e(r))}}var Dt=Ft(Object.keys,Object),Bt=Object.prototype.hasOwnProperty;function It(t){if(!kt(t))return Dt(t);var e=[];for(var r in Object(t))Bt.call(t,r)&&"constructor"!=r&&e.push(r);return e}function qt(t){return null!=t&&Ot(t.length)&&!b(t)}function Ut(t){return qt(t)?Rt(t):It(t)}function Gt(t){return null==t?[]:function(t,e){return Q(e,function(e){return t[e]})}(t,Ut(t))}function zt(t){return ct(Gt(t))}function Ht(t){return"[object String]"===Object.prototype.toString.call(t)}function Yt(t){return!(!Ht(t)||""===t)}function Zt(t){var e=this.__data__=new q(t);this.size=e.size}Zt.prototype.clear=function(){this.__data__=new q,this.size=0},Zt.prototype.delete=function(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r},Zt.prototype.get=function(t){return this.__data__.get(t)},Zt.prototype.has=function(t){return this.__data__.has(t)},Zt.prototype.set=function(t,e){var r=this.__data__;if(r instanceof q){var n=r.__data__;if(!U||n.length<199)return n.push([t,e]),this.size=++r.size,this;r=this.__data__=new z(n)}return r.set(t,e),this.size=r.size,this};function Vt(t){var e=-1,r=null==t?0:t.length;for(this.__data__=new z;++e<r;)this.add(t[e])}function Wt(t,e){for(var r=-1,n=null==t?0:t.length;++r<n;)if(e(t[r],r,t))return!0;return!1}function Jt(t,e){return t.has(e)}Vt.prototype.add=Vt.prototype.push=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this},Vt.prototype.has=function(t){return this.__data__.has(t)};function Kt(t,e,r,n,i,o){var s=1&r,u=t.length,a=e.length;if(u!=a&&!(s&&a>u))return!1;var l=o.get(t),f=o.get(e);if(l&&f)return l==e&&f==t;var c=-1,d=!0,h=2&r?new Vt:void 0;for(o.set(t,e),o.set(e,t);++c<u;){var p=t[c],v=e[c];if(n)var m=s?n(v,p,c,e,t,o):n(p,v,c,t,e,o);if(void 0!==m){if(m)continue;d=!1;break}if(h){if(!Wt(e,function(t,e){if(!Jt(h,e)&&(p===t||i(p,t,r,n,o)))return h.push(e)})){d=!1;break}}else if(p!==v&&!i(p,v,r,n,o)){d=!1;break}}return o.delete(t),o.delete(e),d}var Xt=o.Uint8Array;function Qt(t){var e=-1,r=Array(t.size);return t.forEach(function(t,n){r[++e]=[n,t]}),r}function te(t){var e=-1,r=Array(t.size);return t.forEach(function(t){r[++e]=t}),r}var ee=s?s.prototype:void 0,re=ee?ee.valueOf:void 0;function ne(t,e){for(var r=-1,n=e.length,i=t.length;++r<n;)t[i+r]=e[r];return t}function ie(t,e,n){var i=e(t);return r(t)?i:ne(i,n(t))}function oe(t,e){for(var r=-1,n=null==t?0:t.length,i=0,o=[];++r<n;){var s=t[r];e(s,r,t)&&(o[i++]=s)}return o}function se(){return[]}var ue=Object.prototype.propertyIsEnumerable,ae=Object.getOwnPropertySymbols,le=ae?function(t){return null==t?[]:(t=Object(t),oe(ae(t),function(e){return ue.call(t,e)}))}:se;function fe(t){return ie(t,Ut,le)}var ce=Object.prototype.hasOwnProperty;var de=P(o,"DataView"),he=P(o,"Promise"),pe=P(o,"Set"),ve=P(o,"WeakMap"),me="[object Map]",ye="[object Promise]",ge="[object Set]",we="[object WeakMap]",be="[object DataView]",Me=S(de),_e=S(U),je=S(he),Oe=S(pe),Se=S(ve),Ee=h;(de&&Ee(new de(new ArrayBuffer(1)))!=be||U&&Ee(new U)!=me||he&&Ee(he.resolve())!=ye||pe&&Ee(new pe)!=ge||ve&&Ee(new ve)!=we)&&(Ee=function(t){var e=h(t),r="[object Object]"==e?t.constructor:void 0,n=r?S(r):"";if(n)switch(n){case Me:return be;case _e:return me;case je:return ye;case Oe:return ge;case Se:return we}return e});var $e=Ee,Ne="[object Arguments]",Ce="[object Array]",Ae="[object Object]",xe=Object.prototype.hasOwnProperty;function Le(t,e,n,i,o,s){var u=r(t),a=r(e),l=u?Ce:$e(t),f=a?Ce:$e(e),c=(l=l==Ne?Ae:l)==Ae,d=(f=f==Ne?Ae:f)==Ae,h=l==f;if(h&&Mt(t)){if(!Mt(e))return!1;u=!0,c=!1}if(h&&!c)return s||(s=new Zt),u||Lt(t)?Kt(t,e,n,i,o,s):function(t,e,r,n,i,o,s){switch(r){case"[object DataView]":if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=e.byteLength||!o(new Xt(t),new Xt(e)));case"[object Boolean]":case"[object Date]":case"[object Number]":return D(+t,+e);case"[object Error]":return t.name==e.name&&t.message==e.message;case"[object RegExp]":case"[object String]":return t==e+"";case"[object Map]":var u=Qt;case"[object Set]":var a=1&n;if(u||(u=te),t.size!=e.size&&!a)return!1;var l=s.get(t);if(l)return l==e;n|=2,s.set(t,e);var f=Kt(u(t),u(e),n,i,o,s);return s.delete(t),f;case"[object Symbol]":if(re)return re.call(t)==re.call(e)}return!1}(t,e,l,n,i,o,s);if(!(1&n)){var p=c&&xe.call(t,"__wrapped__"),v=d&&xe.call(e,"__wrapped__");if(p||v){var m=p?t.value():t,y=v?e.value():e;return s||(s=new Zt),o(m,y,n,i,s)}}return!!h&&(s||(s=new Zt),function(t,e,r,n,i,o){var s=1&r,u=fe(t),a=u.length;if(a!=fe(e).length&&!s)return!1;for(var l=a;l--;){var f=u[l];if(!(s?f in e:ce.call(e,f)))return!1}var c=o.get(t),d=o.get(e);if(c&&d)return c==e&&d==t;var h=!0;o.set(t,e),o.set(e,t);for(var p=s;++l<a;){var v=t[f=u[l]],m=e[f];if(n)var y=s?n(m,v,f,e,t,o):n(v,m,f,t,e,o);if(!(void 0===y?v===m||i(v,m,r,n,o):y)){h=!1;break}p||(p="constructor"==f)}if(h&&!p){var g=t.constructor,w=e.constructor;g==w||!("constructor"in t)||!("constructor"in e)||"function"==typeof g&&g instanceof g&&"function"==typeof w&&w instanceof w||(h=!1)}return o.delete(t),o.delete(e),h}(t,e,n,i,o,s))}function Pe(t,e,r,n,i){return t===e||(null==t||null==e||!p(t)&&!p(e)?t!=t&&e!=e:Le(t,e,r,n,Pe,i))}function Re(t){return t==t&&!w(t)}function Te(t,e){return function(r){return null!=r&&(r[t]===e&&(void 0!==e||t in Object(r)))}}function ke(t){var e=function(t){for(var e=Ut(t),r=e.length;r--;){var n=e[r],i=t[n];e[r]=[n,i,Re(i)]}return e}(t);return 1==e.length&&e[0][2]?Te(e[0][0],e[0][1]):function(r){return r===t||function(t,e,r,n){var i=r.length,o=i,s=!n;if(null==t)return!o;for(t=Object(t);i--;){var u=r[i];if(s&&u[2]?u[1]!==t[u[0]]:!(u[0]in t))return!1}for(;++i<o;){var a=(u=r[i])[0],l=t[a],f=u[1];if(s&&u[2]){if(void 0===l&&!(a in t))return!1}else{var c=new Zt;if(n)var d=n(l,f,a,t,e,c);if(!(void 0===d?Pe(f,l,3,n,c):d))return!1}}return!0}(r,t,e)}}function Fe(t,e){return null!=t&&e in Object(t)}function De(t,e){return null!=t&&function(t,e,n){for(var i=-1,o=(e=it(e,t)).length,s=!1;++i<o;){var u=ot(e[i]);if(!(s=null!=t&&n(t,u)))break;t=t[u]}return s||++i!=o?s:!!(o=null==t?0:t.length)&&Ot(o)&&jt(u,o)&&(r(t)||yt(t))}(t,e,Fe)}function Be(t){return t}function Ie(t){return function(e){return null==e?void 0:e[t]}}function qe(t){return g(t)?Ie(ot(t)):function(t){return function(e){return st(e,t)}}(t)}function Ue(t){return"function"==typeof t?t:null==t?Be:"object"==typeof t?r(t)?function(t,e){return g(t)&&Re(e)?Te(ot(t),e):function(r){var n=ut(r,t);return void 0===n&&n===e?De(r,t):Pe(e,n,3)}}(t[0],t[1]):ke(t):qe(t)}var Ge,ze=function(t,e,r){for(var n=-1,i=Object(t),o=r(t),s=o.length;s--;){var u=o[Ge?s:++n];if(!1===e(i[u],u,i))break}return t};var He=function(t,e){return function(r,n){if(null==r)return r;if(!qt(r))return t(r,n);for(var i=r.length,o=e?i:-1,s=Object(r);(e?o--:++o<i)&&!1!==n(s[o],o,s););return r}}(function(t,e){return t&&ze(t,e,Ut)}),Ye=He;function Ze(t,e){var r=-1,n=qt(t)?Array(t.length):[];return Ye(t,function(t,i,o){n[++r]=e(t,i,o)}),n}function Ve(t,e){return(r(t)?Q:Ze)(t,Ue(e))}var We=Ie("length"),Je=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");function Ke(t){return Je.test(t)}var Xe="\\ud800-\\udfff",Qe="["+Xe+"]",tr="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",er="\\ud83c[\\udffb-\\udfff]",rr="[^"+Xe+"]",nr="(?:\\ud83c[\\udde6-\\uddff]){2}",ir="[\\ud800-\\udbff][\\udc00-\\udfff]",or="(?:"+tr+"|"+er+")"+"?",sr="[\\ufe0e\\ufe0f]?",ur=sr+or+("(?:\\u200d(?:"+[rr,nr,ir].join("|")+")"+sr+or+")*"),ar="(?:"+[rr+tr+"?",tr,nr,ir,Qe].join("|")+")",lr=RegExp(er+"(?="+er+")|"+ar+ur,"g");function fr(t){return Ke(t)?function(t){for(var e=lr.lastIndex=0;lr.test(t);)++e;return e}(t):We(t)}function cr(t){if(null==t)return 0;if(qt(t))return"string"==typeof(e=t)||!r(e)&&p(e)&&"[object String]"==h(e)?fr(t):t.length;var e,n=$e(t);return"[object Map]"==n||"[object Set]"==n?t.size:It(t).length}var dr=/\s/;var hr=/^\s+/;function pr(t){return t?t.slice(0,function(t){for(var e=t.length;e--&&dr.test(t.charAt(e)););return e}(t)+1).replace(hr,""):t}var vr=/^[-+]0x[0-9a-f]+$/i,mr=/^0b[01]+$/i,yr=/^0o[0-7]+$/i,gr=parseInt;function wr(t){if("number"==typeof t)return t;if(v(t))return NaN;if(w(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=w(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=pr(t);var r=mr.test(t);return r||yr.test(t)?gr(t.slice(2),r?2:8):vr.test(t)?NaN:+t}var br=1/0;function Mr(t){return t?(t=wr(t))===br||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function _r(t){var e=Mr(t),r=e%1;return e==e?r?e-r:e:0}var jr=o.isFinite,Or=Math.min;var Sr=function(t){var e=Math[t];return function(t,r){if(t=wr(t),(r=null==r?0:Or(_r(r),292))&&jr(t)){var n=(nt(t)+"e").split("e");return+((n=(nt(e(n[0]+"e"+(+n[1]+r)))+"e").split("e"))[0]+"e"+(+n[1]-r))}return e(t)}}("round"),Er=Sr;function $r(t){return t!=t}function Nr(t){let e=!1;if(Yt(t))e=!isNaN(Number(t));else if(function(t){return"[object Number]"===Object.prototype.toString.call(t)}(t)){if($r(t))return!1;e=!0}return e}function Cr(t){if(!Nr(t))return 0;return Mr(t)}function Ar(t){if(!Nr(t))return 0;t=Cr(t);let e=Er(t);return"0"===String(e)?0:e}var xr=Math.ceil,Lr=Math.max;function Pr(t,e,r){if(!w(r))return!1;var n=typeof e;return!!("number"==n?qt(r)&&jt(e,r.length):"string"==n&&e in r)&&D(r[e],t)}var Rr=function(t){return function(e,r,n){return n&&"number"!=typeof n&&Pr(e,r,n)&&(r=n=void 0),e=Mr(e),void 0===r?(r=e,e=0):r=Mr(r),function(t,e,r,n){for(var i=-1,o=Lr(xr((e-t)/(r||1)),0),s=Array(o);o--;)s[n?o:++i]=t,t+=r;return s}(e,r,n=void 0===n?e<r?1:-1:Mr(n),t)}}(),Tr=Rr;function kr(t,e,r){return t==t&&(void 0!==r&&(t=t<=r?t:r),void 0!==e&&(t=t>=e?t:e)),t}function Fr(t,e){var r=-1,n=t.length;for(e||(e=Array(n));++r<n;)e[r]=t[r];return e}function Dr(t,e){var r=-1,n=t.length,i=n-1;for(e=void 0===e?n:e;++r<e;){var o=ft(r,i),s=t[o];t[o]=t[r],t[r]=s}return t.length=e,t}function Br(t,e){return Dr(Fr(t),kr(e,0,t.length))}function Ir(t,e){var r=Gt(t);return Dr(r,kr(e,0,r.length))}function qr(t){return!!Nr(t)&&(t=Cr(t),"number"==typeof(e=t)&&e==_r(e));var e}function Ur(t){if(!qr(t))return!1;return Ar(t)>0}function Gr(t=0,e=100,n){if(qr(t)||(t=0),t=Ar(t),qr(e)||(e=100),e=Ar(e),Ur(n)||(n=1),n=Ar(n),t>e)throw new Error(`vstart[${t}] > vend[${e}]`);let i=function(t,e,n){return e=(n?Pr(t,e,n):void 0===e)?1:_r(e),(r(t)?Br:Ir)(t,e)}(Tr(t,e+1),n);return i}function zr(t,e){for(var r=-1,n=null==t?0:t.length;++r<n&&!1!==e(t[r],r,t););return t}function Hr(t,e){var n;return(r(t)?zr:Ye)(t,"function"==typeof(n=e)?n:Be)}function Yr(t,e,r){var n=-1,i=t.length;e<0&&(e=-e>i?0:i+e),(r=r>i?i:r)<0&&(r+=i),i=e>r?0:r-e>>>0,e>>>=0;for(var o=Array(i);++n<i;)o[n]=t[n+e];return o}function Zr(t){return t!=t}function Vr(t,e,r){return e==e?function(t,e,r){for(var n=r-1,i=t.length;++n<i;)if(t[n]===e)return n;return-1}(t,e,r):function(t,e,r,n){for(var i=t.length,o=r+(n?1:-1);n?o--:++o<i;)if(e(t[o],o,t))return o;return-1}(t,Zr,r)}var Wr="\\ud800-\\udfff",Jr="["+Wr+"]",Kr="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",Xr="\\ud83c[\\udffb-\\udfff]",Qr="[^"+Wr+"]",tn="(?:\\ud83c[\\udde6-\\uddff]){2}",en="[\\ud800-\\udbff][\\udc00-\\udfff]",rn="(?:"+Kr+"|"+Xr+")"+"?",nn="[\\ufe0e\\ufe0f]?",on=nn+rn+("(?:\\u200d(?:"+[Qr,tn,en].join("|")+")"+nn+rn+")*"),sn="(?:"+[Qr+Kr+"?",Kr,tn,en,Jr].join("|")+")",un=RegExp(Xr+"(?="+Xr+")|"+sn+on,"g");function an(t){return Ke(t)?function(t){return t.match(un)||[]}(t):function(t){return t.split("")}(t)}function ln(t,e,r){if((t=nt(t))&&(r||void 0===e))return pr(t);if(!t||!(e=rt(e)))return t;var n=an(t),i=an(e),o=function(t,e){for(var r=-1,n=t.length;++r<n&&Vr(e,t[r],0)>-1;);return r}(n,i),s=function(t,e){for(var r=t.length;r--&&Vr(e,t[r],0)>-1;);return r}(n,i)+1;return function(t,e,r){var n=t.length;return r=void 0===r?n:r,!e&&r>=n?t:Yr(t,e,r)}(n,o,s).join("")}function fn(t,e){if(!Yt(t))return[];if(!Yt(e))return[];let r=function(t,e){return Yt(t)&&Yt(e)?t.split(e):[]}(t,e);r=Ve(r,ln);let n=[];return Hr(r,function(t){Yt(t)&&n.push(t)}),n}function cn(t){let e=Object.prototype.toString.call(t);return"[object Function]"===e||"[object AsyncFunction]"===e}var dn="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function hn(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var pn={exports:{}};
7
7
  /*!
8
8
  * w-data-tdprovide v1.0.4
9
9
  * (c) 2018-2021 yuda-lyu(semisphere)
10
10
  * Released under the MIT License.
11
- */!function(r,n){r.exports=function(t,e){function i(t,e){for(var r=-1,n=null==t?0:t.length;++r<n&&!1!==e(t[r],r,t););return t}var o=function(t,e,r){for(var n=-1,i=Object(t),o=r(t),u=o.length;u--;){var s=o[++n];if(!1===e(i[s],s,i))break}return t},u="object"==typeof dn&&dn&&dn.Object===Object&&dn,s="object"==typeof self&&self&&self.Object===Object&&self,a=u||s||Function("return this")(),f=a.Symbol,c=Object.prototype,l=c.hasOwnProperty,d=c.toString,h=f?f.toStringTag:void 0,p=Object.prototype.toString,v=f?f.toStringTag:void 0;function y(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":v&&v in Object(t)?function(t){var e=l.call(t,h),r=t[h];try{t[h]=void 0;var n=!0}catch(t){}var i=d.call(t);return n&&(e?t[h]=r:delete t[h]),i}(t):function(t){return p.call(t)}(t)}function m(t){return null!=t&&"object"==typeof t}function g(t){return m(t)&&"[object Arguments]"==y(t)}var b=Object.prototype,w=b.hasOwnProperty,_=b.propertyIsEnumerable,j=g(function(){return arguments}())?g:function(t){return m(t)&&w.call(t,"callee")&&!_.call(t,"callee")},O=j,S=Array.isArray,$=n&&!n.nodeType&&n,E=$&&r&&!r.nodeType&&r,M=E&&E.exports===$?a.Buffer:void 0,N=(M?M.isBuffer:void 0)||function(){return!1},A=/^(?:0|[1-9]\d*)$/;function x(t,e){var r=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==r||"symbol"!=r&&A.test(t))&&t>-1&&t%1==0&&t<e}function T(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}var P={};function L(t){return function(e){return t(e)}}P["[object Float32Array]"]=P["[object Float64Array]"]=P["[object Int8Array]"]=P["[object Int16Array]"]=P["[object Int32Array]"]=P["[object Uint8Array]"]=P["[object Uint8ClampedArray]"]=P["[object Uint16Array]"]=P["[object Uint32Array]"]=!0,P["[object Arguments]"]=P["[object Array]"]=P["[object ArrayBuffer]"]=P["[object Boolean]"]=P["[object DataView]"]=P["[object Date]"]=P["[object Error]"]=P["[object Function]"]=P["[object Map]"]=P["[object Number]"]=P["[object Object]"]=P["[object RegExp]"]=P["[object Set]"]=P["[object String]"]=P["[object WeakMap]"]=!1;var k=n&&!n.nodeType&&n,F=k&&r&&!r.nodeType&&r,D=F&&F.exports===k&&u.process,C=function(){try{return F&&F.require&&F.require("util").types||D&&D.binding&&D.binding("util")}catch(t){}}(),R=C&&C.isTypedArray,I=R?L(R):function(t){return m(t)&&T(t.length)&&!!P[y(t)]},q=Object.prototype.hasOwnProperty;function z(t,e){var r=S(t),n=!r&&O(t),i=!r&&!n&&N(t),o=!r&&!n&&!i&&I(t),u=r||n||i||o,s=u?function(t,e){for(var r=-1,n=Array(t);++r<t;)n[r]=e(r);return n}(t.length,String):[],a=s.length;for(var f in t)!e&&!q.call(t,f)||u&&("length"==f||i&&("offset"==f||"parent"==f)||o&&("buffer"==f||"byteLength"==f||"byteOffset"==f)||x(f,a))||s.push(f);return s}var U,Y,B=Object.prototype,H=(U=Object.keys,Y=Object,function(t){return U(Y(t))}),G=Object.prototype.hasOwnProperty;function Z(t){if(r=(e=t)&&e.constructor,e!==("function"==typeof r&&r.prototype||B))return H(t);var e,r,n=[];for(var i in Object(t))G.call(t,i)&&"constructor"!=i&&n.push(i);return n}function V(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function W(t){if(!V(t))return!1;var e=y(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}function J(t){return null!=t&&T(t.length)&&!W(t)}function K(t){return J(t)?z(t):Z(t)}var Q=function(t,e){return function(r,n){if(null==r)return r;if(!J(r))return t(r,n);for(var i=r.length,o=e?i:-1,u=Object(r);(e?o--:++o<i)&&!1!==n(u[o],o,u););return r}}(function(t,e){return t&&o(t,e,K)}),X=Q;function tt(t){return t}function et(t,e){var r;return(S(t)?i:X)(t,"function"==typeof(r=e)?r:tt)}function rt(t,e){for(var r=-1,n=null==t?0:t.length,i=0,o=[];++r<n;){var u=t[r];e(u,r,t)&&(o[i++]=u)}return o}function nt(t,e){var r=[];return X(t,function(t,n,i){e(t,n,i)&&r.push(t)}),r}function it(t,e){return t===e||t!=t&&e!=e}function ot(t,e){for(var r=t.length;r--;)if(it(t[r][0],e))return r;return-1}var ut=Array.prototype.splice;function st(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}st.prototype.clear=function(){this.__data__=[],this.size=0},st.prototype.delete=function(t){var e=this.__data__,r=ot(e,t);return!(r<0||(r==e.length-1?e.pop():ut.call(e,r,1),--this.size,0))},st.prototype.get=function(t){var e=this.__data__,r=ot(e,t);return r<0?void 0:e[r][1]},st.prototype.has=function(t){return ot(this.__data__,t)>-1},st.prototype.set=function(t,e){var r=this.__data__,n=ot(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this};var at,ft=a["__core-js_shared__"],ct=(at=/[^.]+$/.exec(ft&&ft.keys&&ft.keys.IE_PROTO||""))?"Symbol(src)_1."+at:"",lt=Function.prototype.toString;function dt(t){if(null!=t){try{return lt.call(t)}catch(t){}try{return t+""}catch(t){}}return""}var ht=/^\[object .+?Constructor\]$/,pt=Function.prototype,vt=Object.prototype,yt=pt.toString,mt=vt.hasOwnProperty,gt=RegExp("^"+yt.call(mt).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function bt(t){return!(!V(t)||function(t){return!!ct&&ct in t}(t))&&(W(t)?gt:ht).test(dt(t))}function wt(t,e){var r=function(t,e){return null==t?void 0:t[e]}(t,e);return bt(r)?r:void 0}var _t=wt(a,"Map"),jt=wt(Object,"create"),Ot=Object.prototype.hasOwnProperty,St=Object.prototype.hasOwnProperty;function $t(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}function Et(t,e){var r,n,i=t.__data__;return("string"==(n=typeof(r=e))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof e?"string":"hash"]:i.map}function Mt(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}function Nt(t){var e=this.__data__=new st(t);this.size=e.size}function At(t){var e=-1,r=null==t?0:t.length;for(this.__data__=new Mt;++e<r;)this.add(t[e])}function xt(t,e){for(var r=-1,n=null==t?0:t.length;++r<n;)if(e(t[r],r,t))return!0;return!1}function Tt(t,e,r,n,i,o){var u=1&r,s=t.length,a=e.length;if(s!=a&&!(u&&a>s))return!1;var f=o.get(t),c=o.get(e);if(f&&c)return f==e&&c==t;var l=-1,d=!0,h=2&r?new At:void 0;for(o.set(t,e),o.set(e,t);++l<s;){var p=t[l],v=e[l];if(n)var y=u?n(v,p,l,e,t,o):n(p,v,l,t,e,o);if(void 0!==y){if(y)continue;d=!1;break}if(h){if(!xt(e,function(t,e){if(u=e,!h.has(u)&&(p===t||i(p,t,r,n,o)))return h.push(e);var u})){d=!1;break}}else if(p!==v&&!i(p,v,r,n,o)){d=!1;break}}return o.delete(t),o.delete(e),d}$t.prototype.clear=function(){this.__data__=jt?jt(null):{},this.size=0},$t.prototype.delete=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e},$t.prototype.get=function(t){var e=this.__data__;if(jt){var r=e[t];return"__lodash_hash_undefined__"===r?void 0:r}return Ot.call(e,t)?e[t]:void 0},$t.prototype.has=function(t){var e=this.__data__;return jt?void 0!==e[t]:St.call(e,t)},$t.prototype.set=function(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=jt&&void 0===e?"__lodash_hash_undefined__":e,this},Mt.prototype.clear=function(){this.size=0,this.__data__={hash:new $t,map:new(_t||st),string:new $t}},Mt.prototype.delete=function(t){var e=Et(this,t).delete(t);return this.size-=e?1:0,e},Mt.prototype.get=function(t){return Et(this,t).get(t)},Mt.prototype.has=function(t){return Et(this,t).has(t)},Mt.prototype.set=function(t,e){var r=Et(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this},Nt.prototype.clear=function(){this.__data__=new st,this.size=0},Nt.prototype.delete=function(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r},Nt.prototype.get=function(t){return this.__data__.get(t)},Nt.prototype.has=function(t){return this.__data__.has(t)},Nt.prototype.set=function(t,e){var r=this.__data__;if(r instanceof st){var n=r.__data__;if(!_t||n.length<199)return n.push([t,e]),this.size=++r.size,this;r=this.__data__=new Mt(n)}return r.set(t,e),this.size=r.size,this},At.prototype.add=At.prototype.push=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this},At.prototype.has=function(t){return this.__data__.has(t)};var Pt=a.Uint8Array;function Lt(t){var e=-1,r=Array(t.size);return t.forEach(function(t,n){r[++e]=[n,t]}),r}function kt(t){var e=-1,r=Array(t.size);return t.forEach(function(t){r[++e]=t}),r}var Ft=f?f.prototype:void 0,Dt=Ft?Ft.valueOf:void 0,Ct=Object.prototype.propertyIsEnumerable,Rt=Object.getOwnPropertySymbols,It=Rt?function(t){return null==t?[]:(t=Object(t),rt(Rt(t),function(e){return Ct.call(t,e)}))}:function(){return[]};function qt(t){return function(t,e,r){var n=e(t);return S(t)?n:function(t,e){for(var r=-1,n=e.length,i=t.length;++r<n;)t[i+r]=e[r];return t}(n,r(t))}(t,K,It)}var zt=Object.prototype.hasOwnProperty,Ut=wt(a,"DataView"),Yt=wt(a,"Promise"),Bt=wt(a,"Set"),Ht=wt(a,"WeakMap"),Gt="[object Map]",Zt="[object Promise]",Vt="[object Set]",Wt="[object WeakMap]",Jt="[object DataView]",Kt=dt(Ut),Qt=dt(_t),Xt=dt(Yt),te=dt(Bt),ee=dt(Ht),re=y;(Ut&&re(new Ut(new ArrayBuffer(1)))!=Jt||_t&&re(new _t)!=Gt||Yt&&re(Yt.resolve())!=Zt||Bt&&re(new Bt)!=Vt||Ht&&re(new Ht)!=Wt)&&(re=function(t){var e=y(t),r="[object Object]"==e?t.constructor:void 0,n=r?dt(r):"";if(n)switch(n){case Kt:return Jt;case Qt:return Gt;case Xt:return Zt;case te:return Vt;case ee:return Wt}return e});var ne=re,ie="[object Arguments]",oe="[object Array]",ue="[object Object]",se=Object.prototype.hasOwnProperty;function ae(t,e,r,n,i,o){var u=S(t),s=S(e),a=u?oe:ne(t),f=s?oe:ne(e),c=(a=a==ie?ue:a)==ue,l=(f=f==ie?ue:f)==ue,d=a==f;if(d&&N(t)){if(!N(e))return!1;u=!0,c=!1}if(d&&!c)return o||(o=new Nt),u||I(t)?Tt(t,e,r,n,i,o):function(t,e,r,n,i,o,u){switch(r){case"[object DataView]":if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=e.byteLength||!o(new Pt(t),new Pt(e)));case"[object Boolean]":case"[object Date]":case"[object Number]":return it(+t,+e);case"[object Error]":return t.name==e.name&&t.message==e.message;case"[object RegExp]":case"[object String]":return t==e+"";case"[object Map]":var s=Lt;case"[object Set]":var a=1&n;if(s||(s=kt),t.size!=e.size&&!a)return!1;var f=u.get(t);if(f)return f==e;n|=2,u.set(t,e);var c=Tt(s(t),s(e),n,i,o,u);return u.delete(t),c;case"[object Symbol]":if(Dt)return Dt.call(t)==Dt.call(e)}return!1}(t,e,a,r,n,i,o);if(!(1&r)){var h=c&&se.call(t,"__wrapped__"),p=l&&se.call(e,"__wrapped__");if(h||p){var v=h?t.value():t,y=p?e.value():e;return o||(o=new Nt),i(v,y,r,n,o)}}return!!d&&(o||(o=new Nt),function(t,e,r,n,i,o){var u=1&r,s=qt(t),a=s.length;if(a!=qt(e).length&&!u)return!1;for(var f=a;f--;){var c=s[f];if(!(u?c in e:zt.call(e,c)))return!1}var l=o.get(t),d=o.get(e);if(l&&d)return l==e&&d==t;var h=!0;o.set(t,e),o.set(e,t);for(var p=u;++f<a;){var v=t[c=s[f]],y=e[c];if(n)var m=u?n(y,v,c,e,t,o):n(v,y,c,t,e,o);if(!(void 0===m?v===y||i(v,y,r,n,o):m)){h=!1;break}p||(p="constructor"==c)}if(h&&!p){var g=t.constructor,b=e.constructor;g==b||!("constructor"in t)||!("constructor"in e)||"function"==typeof g&&g instanceof g&&"function"==typeof b&&b instanceof b||(h=!1)}return o.delete(t),o.delete(e),h}(t,e,r,n,i,o))}function fe(t,e,r,n,i){return t===e||(null==t||null==e||!m(t)&&!m(e)?t!=t&&e!=e:ae(t,e,r,n,fe,i))}function ce(t){return t==t&&!V(t)}function le(t,e){return function(r){return null!=r&&r[t]===e&&(void 0!==e||t in Object(r))}}function de(t){var e=function(t){for(var e=K(t),r=e.length;r--;){var n=e[r],i=t[n];e[r]=[n,i,ce(i)]}return e}(t);return 1==e.length&&e[0][2]?le(e[0][0],e[0][1]):function(r){return r===t||function(t,e,r,n){var i=r.length,o=i,u=!n;if(null==t)return!o;for(t=Object(t);i--;){var s=r[i];if(u&&s[2]?s[1]!==t[s[0]]:!(s[0]in t))return!1}for(;++i<o;){var a=(s=r[i])[0],f=t[a],c=s[1];if(u&&s[2]){if(void 0===f&&!(a in t))return!1}else{var l=new Nt;if(n)var d=n(f,c,a,t,e,l);if(!(void 0===d?fe(c,f,3,n,l):d))return!1}}return!0}(r,t,e)}}function he(t){return"symbol"==typeof t||m(t)&&"[object Symbol]"==y(t)}var pe=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ve=/^\w*$/;function ye(t,e){if(S(t))return!1;var r=typeof t;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=t&&!he(t))||ve.test(t)||!pe.test(t)||null!=e&&t in Object(e)}function me(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError("Expected a function");var r=function(){var n=arguments,i=e?e.apply(this,n):n[0],o=r.cache;if(o.has(i))return o.get(i);var u=t.apply(this,n);return r.cache=o.set(i,u)||o,u};return r.cache=new(me.Cache||Mt),r}me.Cache=Mt;var ge=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,be=/\\(\\)?/g,we=function(t){var e=me(t,function(t){return 500===r.size&&r.clear(),t}),r=e.cache;return e}(function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(ge,function(t,r,n,i){e.push(n?i.replace(be,"$1"):r||t)}),e}),_e=we;function je(t,e){for(var r=-1,n=null==t?0:t.length,i=Array(n);++r<n;)i[r]=e(t[r],r,t);return i}var Oe=f?f.prototype:void 0,Se=Oe?Oe.toString:void 0;function $e(t){if("string"==typeof t)return t;if(S(t))return je(t,$e)+"";if(he(t))return Se?Se.call(t):"";var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Ee(t){return null==t?"":$e(t)}function Me(t,e){return S(t)?t:ye(t,e)?[t]:_e(Ee(t))}function Ne(t){if("string"==typeof t||he(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Ae(t,e){for(var r=0,n=(e=Me(e,t)).length;null!=t&&r<n;)t=t[Ne(e[r++])];return r&&r==n?t:void 0}function xe(t,e,r){var n=null==t?void 0:Ae(t,e);return void 0===n?r:n}function Te(t,e){return null!=t&&e in Object(t)}function Pe(t,e){return null!=t&&function(t,e,r){for(var n=-1,i=(e=Me(e,t)).length,o=!1;++n<i;){var u=Ne(e[n]);if(!(o=null!=t&&r(t,u)))break;t=t[u]}return o||++n!=i?o:!!(i=null==t?0:t.length)&&T(i)&&x(u,i)&&(S(t)||O(t))}(t,e,Te)}function Le(t){return function(e){return null==e?void 0:e[t]}}function ke(t){return ye(t)?Le(Ne(t)):function(t){return function(e){return Ae(e,t)}}(t)}function Fe(t){return"function"==typeof t?t:null==t?tt:"object"==typeof t?S(t)?function(t,e){return ye(t)&&ce(e)?le(Ne(t),e):function(r){var n=xe(r,t);return void 0===n&&n===e?Pe(r,t):fe(e,n,3)}}(t[0],t[1]):de(t):ke(t)}function De(t,e){return(S(t)?rt:nt)(t,Fe(e))}function Ce(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}function Re(t,e){var r=-1,n=J(t)?Array(t.length):[];return X(t,function(t,i,o){n[++r]=e(t,i,o)}),n}var Ie=Le("length"),qe=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");function ze(t){return qe.test(t)}var Ue="\\ud800-\\udfff",Ye="["+Ue+"]",Be="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",He="\\ud83c[\\udffb-\\udfff]",Ge="[^"+Ue+"]",Ze="(?:\\ud83c[\\udde6-\\uddff]){2}",Ve="[\\ud800-\\udbff][\\udc00-\\udfff]",We="(?:"+Be+"|"+He+")?",Je="[\\ufe0e\\ufe0f]?",Ke=Je+We+"(?:\\u200d(?:"+[Ge,Ze,Ve].join("|")+")"+Je+We+")*",Qe="(?:"+[Ge+Be+"?",Be,Ze,Ve,Ye].join("|")+")",Xe=RegExp(He+"(?="+He+")|"+Qe+Ke,"g");function tr(t){return ze(t)?function(t){for(var e=Xe.lastIndex=0;Xe.test(t);)++e;return e}(t):Ie(t)}function er(t){if(null==t)return 0;if(J(t))return"string"==typeof(e=t)||!S(e)&&m(e)&&"[object String]"==y(e)?tr(t):t.length;var e,r=ne(t);return"[object Map]"==r||"[object Set]"==r?t.size:Z(t).length}function rr(t,e={}){let r=xe(e,"fs"),n=!1;try{r.statSync(t),n=!0}catch{n=!1}return n}function nr(t){return function(t,e={}){let r=xe(e,"fs");return!!rr(t,{fs:r})&&!r.lstatSync(t).isDirectory()&&!r.lstatSync(t).isSymbolicLink()}(t,{fs:e})}function ir(t){let r=null,n=function(t,e={}){let r=null,n=xe(e,"fs"),i="";try{i=n.readFileSync(t,"utf8")}catch(t){r=t}return null!==r?{error:r}:{success:i}}(t,{fs:e});if(n.error)return n;let i=n.success,o=null;try{o=JSON.parse(i)}catch(t){r=t}return null!==r?{error:r}:{success:o}}var or=/\s/,ur=/^\s+/;function sr(t){return t?t.slice(0,function(t){for(var e=t.length;e--&&or.test(t.charAt(e)););return e}(t)+1).replace(ur,""):t}var ar=/^[-+]0x[0-9a-f]+$/i,fr=/^0b[01]+$/i,cr=/^0o[0-7]+$/i,lr=parseInt;function dr(t){if("number"==typeof t)return t;if(he(t))return NaN;if(V(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=V(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=sr(t);var r=fr.test(t);return r||cr.test(t)?lr(t.slice(2),r?2:8):ar.test(t)?NaN:+t}var hr=1/0;function pr(t){return t?(t=dr(t))===hr||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function vr(t){var e=pr(t),r=e%1;return e==e?r?e-r:e:0}function yr(t){return"[object String]"===Object.prototype.toString.call(t)}function mr(t){return!(!yr(t)||""===t)}function gr(t){return t!=t}function br(t){let e=!1;if(mr(t))e=!isNaN(Number(t));else if(function(t){return"[object Number]"===Object.prototype.toString.call(t)}(t)){if(gr(t))return!1;e=!0}return e}function wr(t){return br(t)?pr(t):0}function _r(t){return!!br(t)&&"number"==typeof(e=t=wr(t))&&e==vr(e);var e}var jr=a.isFinite,Or=Math.min,Sr=function(){var t=Math.round;return function(e,r){if(e=dr(e),(r=null==r?0:Or(vr(r),292))&&jr(e)){var n=(Ee(e)+"e").split("e");return+((n=(Ee(t(n[0]+"e"+(+n[1]+r)))+"e").split("e"))[0]+"e"+(+n[1]-r))}return t(e)}}(),$r=Sr;function Er(t){if(!br(t))return 0;t=wr(t);let e=$r(t);return"0"===String(e)?0:e}function Mr(t,e={}){let r=xe(e,"fs");if(!rr(t,{fs:r}))return!1;let n=r.lstatSync(t);return!n.isFile()&&!n.isSymbolicLink()}function Nr(t,e=1,r={}){let n=1,i=xe(r,"path"),o=xe(r,"fs");if(!Mr(t,{fs:o}))throw new Error(`fd[${t}] is not a folder`);var u;return null!==e&&_r(u=e)&&Er(u)>0&&(e=Er(e))<1&&(e=1),function t(r){let u=[];return Mr(r,{fs:o})?(et(o.readdirSync(r),function(s){let a=i.resolve(r,s),f=null;try{f=o.statSync(a)}catch(t){}f&&f.isDirectory()?(u.push({isFolder:!0,level:n,path:a,name:i.basename(a)}),n+=1,(n<=e||null===e)&&(u=u.concat(t(a))),n-=1):u.push({isFolder:!1,level:n,path:a,name:i.basename(a)})}),u):u}(t)}function Ar(r,n=1){return Nr(r,n,{path:t,fs:e})}function xr(t,e,r){var n=-1,i=t.length;e<0&&(e=-e>i?0:i+e),(r=r>i?i:r)<0&&(r+=i),i=e>r?0:r-e>>>0,e>>>=0;for(var o=Array(i);++n<i;)o[n]=t[n+e];return o}var Tr=C&&C.isRegExp,Pr=Tr?L(Tr):function(t){return m(t)&&"[object RegExp]"==y(t)},Lr="\\ud800-\\udfff",kr="["+Lr+"]",Fr="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",Dr="\\ud83c[\\udffb-\\udfff]",Cr="[^"+Lr+"]",Rr="(?:\\ud83c[\\udde6-\\uddff]){2}",Ir="[\\ud800-\\udbff][\\udc00-\\udfff]",qr="(?:"+Fr+"|"+Dr+")?",zr="[\\ufe0e\\ufe0f]?",Ur=zr+qr+"(?:\\u200d(?:"+[Cr,Rr,Ir].join("|")+")"+zr+qr+")*",Yr="(?:"+[Cr+Fr+"?",Fr,Rr,Ir,kr].join("|")+")",Br=RegExp(Dr+"(?="+Dr+")|"+Yr+Ur,"g");function Hr(t){return ze(t)?function(t){return t.match(Br)||[]}(t):function(t){return t.split("")}(t)}function Gr(t,e,r){return r&&"number"!=typeof r&&function(t,e,r){if(!V(r))return!1;var n=typeof e;return!!("number"==n?J(r)&&x(e,r.length):"string"==n&&e in r)&&it(r[e],t)}(t,e,r)&&(e=r=void 0),(r=void 0===r?4294967295:r>>>0)?(t=Ee(t))&&("string"==typeof e||null!=e&&!Pr(e))&&!(e=$e(e))&&ze(t)?(i=0,o=r,u=(n=Hr(t)).length,o=void 0===o?u:o,!i&&o>=u?n:xr(n,i,o)):t.split(e,r):[];var n,i,o,u}function Zr(t){return!!_r(t)&&Er(t)>=0}function Vr(t,e){if(!mr(t))return"";if(!Zr(e))return"";if(0===(e=Er(e)))return"";let r=t.length-e;return r<0&&(r=0),t.substring(r,r+e)}function Wr(t,e){return mr(t)&&Zr(e)?0===(e=Er(e))?t:function(t,e){return mr(t)&&Zr(e)?0===(e=Er(e))?"":t.substring(0,e):""}(t,t.length-e):""}function Jr(t){if(!mr(t))return"";let e=function(t){if(!mr(t))return{path:"",isRoot:!1};for(;t.indexOf("\\\\")>=0;)t=t.replace("\\\\","\\");for(;t.indexOf("//")>=0;)t=t.replace("//","/");if(":"===Vr(t,1))return{path:`${t}\\`,isRoot:!0};if("\\"===Vr(t,1)){let e=Wr(t,1);return":"===Vr(e,1)?{path:t,isRoot:!0}:{path:e,isRoot:!1}}if("/"===Vr(t,1)){let e=Wr(t,1);return 0===e.length?{path:t,isRoot:!0}:{path:e,isRoot:!1}}return{path:t,isRoot:!1}}(t);if(e.isRoot)return e.path;let r=e.path;try{r=r.split("\\").pop().split("/").pop()}catch(t){}return r}var Kr=Array.prototype.join;function Qr(t){if(!mr(t))return"";let e=Jr(t),r=Gr(e,".");if(er(r)<=1)return e;let n="";try{r=(s=null==(i=r)?0:i.length)?xr(i,0,(o=s-(o=u||void 0===o?1:vr(o)))<0?0:o):[],n=function(t,e){return null==t?"":Kr.call(t,e)}(r,".")}catch(t){}var i,o,u,s;return n}function Xr(t){return"[object Object]"===Object.prototype.toString.call(t)}function tn(t,e){return!!Xr(t)&&!(!mr(e)&&!br(e))&&e in t}function en(t){return"[object Array]"===Object.prototype.toString.call(t)}function rn(t){return!!(function(t){return"[object Undefined]"===Object.prototype.toString.call(t)}(t)||function(t){return"[object Null]"===Object.prototype.toString.call(t)}(t)||function(t){if(Xr(t)){for(let e in t)return!1;return!0}return!1}(t)||function(t){return!(!yr(t)||""!==t)}(t)||function(t){return!!en(t)&&0===t.length}(t)||gr(t))}function nn(t){return!(!en(t)||0===t.length||1===t.length&&rn(t[0]))}function on(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var un={exports:{}};!function(t){t.exports=function(){var t=1e3,e=6e4,r=36e5,n="millisecond",i="second",o="minute",u="hour",s="day",a="week",f="month",c="quarter",l="year",d="date",h="Invalid Date",p=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,v=/\[([^\]]+)]|YYYY|YY|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,y={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(t){var e=["th","st","nd","rd"],r=t%100;return"["+t+(e[(r-20)%10]||e[r]||e[0])+"]"}},m=function(t,e,r){var n=String(t);return!n||n.length>=e?t:""+Array(e+1-n.length).join(r)+t},g={s:m,z:function(t){var e=-t.utcOffset(),r=Math.abs(e),n=Math.floor(r/60),i=r%60;return(e<=0?"+":"-")+m(n,2,"0")+":"+m(i,2,"0")},m:function t(e,r){if(e.date()<r.date())return-t(r,e);var n=12*(r.year()-e.year())+(r.month()-e.month()),i=e.clone().add(n,f),o=r-i<0,u=e.clone().add(n+(o?-1:1),f);return+(-(n+(r-i)/(o?i-u:u-i))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(t){return{M:f,y:l,w:a,d:s,D:d,h:u,m:o,s:i,ms:n,Q:c}[t]||String(t||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},b="en",w={};w[b]=y;var _="$isDayjsObject",j=function(t){return t instanceof E||!(!t||!t[_])},O=function t(e,r,n){var i;if(!e)return b;if("string"==typeof e){var o=e.toLowerCase();w[o]&&(i=o),r&&(w[o]=r,i=o);var u=e.split("-");if(!i&&u.length>1)return t(u[0])}else{var s=e.name;w[s]=e,i=s}return!n&&i&&(b=i),i||!n&&b},S=function(t,e){if(j(t))return t.clone();var r="object"==typeof e?e:{};return r.date=t,r.args=arguments,new E(r)},$=g;$.l=O,$.i=j,$.w=function(t,e){return S(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var E=function(){function y(t){this.$L=O(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[_]=!0}var m=y.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,r=t.utc;if(null===e)return new Date(NaN);if($.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var n=e.match(p);if(n){var i=n[2]-1||0,o=(n[7]||"0").substring(0,3);return r?new Date(Date.UTC(n[1],i,n[3]||1,n[4]||0,n[5]||0,n[6]||0,o)):new Date(n[1],i,n[3]||1,n[4]||0,n[5]||0,n[6]||0,o)}}return new Date(e)}(t),this.init()},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},m.$utils=function(){return $},m.isValid=function(){return!(this.$d.toString()===h)},m.isSame=function(t,e){var r=S(t);return this.startOf(e)<=r&&r<=this.endOf(e)},m.isAfter=function(t,e){return S(t)<this.startOf(e)},m.isBefore=function(t,e){return this.endOf(e)<S(t)},m.$g=function(t,e,r){return $.u(t)?this[e]:this.set(r,t)},m.unix=function(){return Math.floor(this.valueOf()/1e3)},m.valueOf=function(){return this.$d.getTime()},m.startOf=function(t,e){var r=this,n=!!$.u(e)||e,c=$.p(t),h=function(t,e){var i=$.w(r.$u?Date.UTC(r.$y,e,t):new Date(r.$y,e,t),r);return n?i:i.endOf(s)},p=function(t,e){return $.w(r.toDate()[t].apply(r.toDate("s"),(n?[0,0,0,0]:[23,59,59,999]).slice(e)),r)},v=this.$W,y=this.$M,m=this.$D,g="set"+(this.$u?"UTC":"");switch(c){case l:return n?h(1,0):h(31,11);case f:return n?h(1,y):h(0,y+1);case a:var b=this.$locale().weekStart||0,w=(v<b?v+7:v)-b;return h(n?m-w:m+(6-w),y);case s:case d:return p(g+"Hours",0);case u:return p(g+"Minutes",1);case o:return p(g+"Seconds",2);case i:return p(g+"Milliseconds",3);default:return this.clone()}},m.endOf=function(t){return this.startOf(t,!1)},m.$set=function(t,e){var r,a=$.p(t),c="set"+(this.$u?"UTC":""),h=(r={},r[s]=c+"Date",r[d]=c+"Date",r[f]=c+"Month",r[l]=c+"FullYear",r[u]=c+"Hours",r[o]=c+"Minutes",r[i]=c+"Seconds",r[n]=c+"Milliseconds",r)[a],p=a===s?this.$D+(e-this.$W):e;if(a===f||a===l){var v=this.clone().set(d,1);v.$d[h](p),v.init(),this.$d=v.set(d,Math.min(this.$D,v.daysInMonth())).$d}else h&&this.$d[h](p);return this.init(),this},m.set=function(t,e){return this.clone().$set(t,e)},m.get=function(t){return this[$.p(t)]()},m.add=function(n,c){var d,h=this;n=Number(n);var p=$.p(c),v=function(t){var e=S(h);return $.w(e.date(e.date()+Math.round(t*n)),h)};if(p===f)return this.set(f,this.$M+n);if(p===l)return this.set(l,this.$y+n);if(p===s)return v(1);if(p===a)return v(7);var y=(d={},d[o]=e,d[u]=r,d[i]=t,d)[p]||1,m=this.$d.getTime()+n*y;return $.w(m,this)},m.subtract=function(t,e){return this.add(-1*t,e)},m.format=function(t){var e=this,r=this.$locale();if(!this.isValid())return r.invalidDate||h;var n=t||"YYYY-MM-DDTHH:mm:ssZ",i=$.z(this),o=this.$H,u=this.$m,s=this.$M,a=r.weekdays,f=r.months,c=r.meridiem,l=function(t,r,i,o){return t&&(t[r]||t(e,n))||i[r].slice(0,o)},d=function(t){return $.s(o%12||12,t,"0")},p=c||function(t,e,r){var n=t<12?"AM":"PM";return r?n.toLowerCase():n};return n.replace(v,function(t,n){return n||function(t){switch(t){case"YY":return String(e.$y).slice(-2);case"YYYY":return $.s(e.$y,4,"0");case"M":return s+1;case"MM":return $.s(s+1,2,"0");case"MMM":return l(r.monthsShort,s,f,3);case"MMMM":return l(f,s);case"D":return e.$D;case"DD":return $.s(e.$D,2,"0");case"d":return String(e.$W);case"dd":return l(r.weekdaysMin,e.$W,a,2);case"ddd":return l(r.weekdaysShort,e.$W,a,3);case"dddd":return a[e.$W];case"H":return String(o);case"HH":return $.s(o,2,"0");case"h":return d(1);case"hh":return d(2);case"a":return p(o,u,!0);case"A":return p(o,u,!1);case"m":return String(u);case"mm":return $.s(u,2,"0");case"s":return String(e.$s);case"ss":return $.s(e.$s,2,"0");case"SSS":return $.s(e.$ms,3,"0");case"Z":return i}return null}(t)||i.replace(":","")})},m.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},m.diff=function(n,d,h){var p,v=this,y=$.p(d),m=S(n),g=(m.utcOffset()-this.utcOffset())*e,b=this-m,w=function(){return $.m(v,m)};switch(y){case l:p=w()/12;break;case f:p=w();break;case c:p=w()/3;break;case a:p=(b-g)/6048e5;break;case s:p=(b-g)/864e5;break;case u:p=b/r;break;case o:p=b/e;break;case i:p=b/t;break;default:p=b}return h?p:$.a(p)},m.daysInMonth=function(){return this.endOf(f).$D},m.$locale=function(){return w[this.$L]},m.locale=function(t,e){if(!t)return this.$L;var r=this.clone(),n=O(t,e,!0);return n&&(r.$L=n),r},m.clone=function(){return $.w(this.$d,this)},m.toDate=function(){return new Date(this.valueOf())},m.toJSON=function(){return this.isValid()?this.toISOString():null},m.toISOString=function(){return this.$d.toISOString()},m.toString=function(){return this.$d.toUTCString()},y}(),M=E.prototype;return S.prototype=M,[["$ms",n],["$s",i],["$m",o],["$H",u],["$W",s],["$M",f],["$y",l],["$D",d]].forEach(function(t){M[t[1]]=function(e){return this.$g(e,t[0],t[1])}}),S.extend=function(t,e){return t.$i||(t(e,E,S),t.$i=!0),S},S.locale=O,S.isDayjs=j,S.unix=function(t){return S(1e3*t)},S.en=w[b],S.Ls=w,S.p={},S}()}(un);var sn=on(un.exports);function an(t){if(!mr(t))return!1;let e="YYYY-MM-DDTHH:mm:ss";return t===sn(t,e).format(e)}function fn(t){let e=Object.prototype.toString.call(t);return"[object Function]"===e||"[object AsyncFunction]"===e}function cn(t,e){let r=function(){let t,e,r=new Promise(function(){t=arguments[0],e=arguments[1]});return r.resolve=t,r.reject=e,r}();if(!en(t)&&!Xr(t))return r.reject("rs is not an array or object"),r;let n=!1;if(Xr(t)){n=!0;let e=[];et(t,(t,r)=>{e.push({k:r,v:t})}),t=e}fn(e)||(e=function(t){return t});let i=-1,o=[];return t.reduce(function(t,r){return t.then(function(t){o.push(t),i+=1;let u=i,s=r;return n&&(u=r.k,s=r.v),fn(e)?e(s,u):s})},Promise.resolve()).then(function(t){var e,n,i;o.push(t),i=null==(e=o)?0:e.length,o=i?xr(e,(n=void 0===n?1:vr(n))<0?0:n,i):[],r.resolve(o)}).catch(function(t){r.reject(t)}),r}return(e,r)=>{let n={},i=async i=>{if(tn(n,i))return n[i];let o=await(async n=>{let i=t.resolve(r,`${n}.json`),o=t.resolve(e,`${n}.json`),u="";if(nr(i))u=i;else{if(!nr(o))throw console.log(`fpParam[${i}] or fpOhlc[${o}] do not exist`),new Error(`invalid key[${n}]`);u=o}let s=xe(ir(u),"success",null);if(!nn(s))throw new Error(`fp[${u}] no data`);return s})(i);return n[i]=o,o},o=[],u=async()=>{if(er(o)>0)return o;let t=t=>{let e=Ar(t);return e=De(e,t=>"json"===function(t){if(!mr(t))return"";let e=Gr(Jr(t),".");if(er(e)<=1)return"";let r="";try{r=Ce(e)}catch(t){}return r}(t.name)),e},n=[],u=t(e);await cn(u,async t=>{let e=Qr(t.name),r=await i(e);n.push({type:"ohlc",key:e,arr:r})});let s=t(r);return await cn(s,async t=>{let e=Qr(t.name),r=await i(e);n.push({type:"param",key:e,arr:r})}),o=n,n},s={},a=async(t,e)=>{if(!an(t))throw new Error("invalid timeStart");if(!an(e))throw new Error("invalid timeEnd");let r=`${t}:${e}`;if(tn(s,r))return s[r];let n=await u(),i="1000-01-01T00:00:00",o="9999-01-01T00:00:00";if(et(n,t=>{let e=(r=t.arr)&&r.length?r[0]:void 0;var r;let n=Ce(t.arr),u=xe(e,"time",""),s=xe(n,"time","");"ohlc"===t.type&&i<u&&(i=u),o>s&&(o=s)}),t<i)throw new Error(`timeStart[${t}] < timeStartData[${i}]`);if(e>o)throw new Error(`timeEnd[${e}] > timeEndData[${o}]`);let a=[];return et(n,r=>{let n=De(r.arr,r=>r.time>=t&&r.time<=e);a.push({key:r.key,arr:n})}),s[r]=a,a},f={getKeysParam:()=>{let t=Ar(r);var e,n;return n=t=>Qr(t.name),(S(e=t)?je:Re)(e,Fe(n))},getTimeSeries:i,getTimeSeriesByTimeRange:async(t,e,r)=>{let n=await i(t);return n=De(n,t=>t.time>=e&&t.time<=r),n},getTimeSeriesFull:u,getTimeSeriesFullByTimeRange:a,buildGetTimeSeriesByTimeRange:async(t,e)=>{let r=await a(t,e),n={};return et(r,t=>{n[t.key]=t.arr}),async r=>{let i=xe(n,r,[]);if(!nn(i))throw new Error(`can not get series by key[${r}] bewteen timeStart[${t}] and timeEnd[${e}]`);return i}},buildGetTimeValueByTimeRange:async(t,e)=>{let r=await a(t,e),n={};return et(r,t=>{et(t.arr,e=>{let r=`${t.key}_${e.time}`;n[r]=e})}),async(r,i)=>{let o=xe(n,`${r}_${i}`,{});if(!function(t){if(Xr(t)){for(let e in t)return!0;return!1}return!1}(o))throw new Error(`can not get value by key[${r}] and time[${i}] bewteen timeStart[${t}] and timeEnd[${e}]`);return o}}};return f}}(t,e)}(pn,pn.exports);var vn=hn(pn.exports);function yn(t){if(!zr(t))return!1;return xr(t)>=0}function mn(t,e=0){if(!Nr(t))return"";if(!yn(e))return"";return t=Ar(t),Er(t,e).toFixed(e)}function gn(t,e={}){let r=st(e,"fs"),n=!1;try{r.statSync(t),n=!0}catch{n=!1}return n}function bn(t,e={}){let r=st(e,"fs");if(!gn(t,{fs:r}))return!1;let n=r.lstatSync(t);return!n.isFile()&&!n.isSymbolicLink()}function wn(t,e={}){let r=st(e,"fs");if(bn(t,{fs:r}))return{success:"input folder is already exists: "+t};if(gn(t,{fs:r}))return{error:"input path already exists: "+t};try{r.mkdirSync(t,{recursive:!0})}catch(t){return{error:t}}return{success:"done: "+t}}function _n(t,e={}){let r=st(e,"fs");if(!gn(t,{fs:r}))return{success:"file does not exist: "+t};if(!function(t,e={}){let r=st(e,"fs");return!!gn(t,{fs:r})&&!r.lstatSync(t).isDirectory()&&!r.lstatSync(t).isSymbolicLink()}(t,{fs:r}))return{error:"input path is not a file: "+t};try{r.unlinkSync(t)}catch(t){return{error:t}}return{success:"done: "+t}}function jn(t){return bn(t,{fs:e})}function On(t){return"[object Object]"===Object.prototype.toString.call(t)}function Sn(t){return"[object Array]"===Object.prototype.toString.call(t)}function $n(t){return!0===(e=t)||!1===e||p(e)&&"[object Boolean]"==h(e);var e}function En(t,e){if(!Gt(t))return"";if(!yn(e))return"";if(0===(e=xr(e)))return"";let r=t.length-e;return r<0&&(r=0),t.substring(r,r+e)}function Mn(t,e){return Gt(t)&&yn(e)?0===(e=xr(e))?t:function(t,e){return Gt(t)&&yn(e)?0===(e=xr(e))?"":t.substring(0,e):""}(t,t.length-e):""}function Nn(t){if(!Gt(t))return{path:"",isRoot:!1};for(;t.indexOf("\\\\")>=0;)t=t.replace("\\\\","\\");for(;t.indexOf("//")>=0;)t=t.replace("//","/");if(":"===En(t,1))return{path:`${t}\\`,isRoot:!0};if("\\"===En(t,1)){let e=Mn(t,1);return":"===En(e,1)?{path:t,isRoot:!0}:{path:e,isRoot:!1}}if("/"===En(t,1)){let e=Mn(t,1);return 0===e.length?{path:t,isRoot:!0}:{path:e,isRoot:!1}}return{path:t,isRoot:!1}}function An(t){if(!Gt(t))return"";let e=Nn(t);if(e.isRoot)return e.path;let r=function(t){if(!Gt(t))return"";let e=Nn(t);if(e.isRoot)return e.path;let r=e.path;try{r=r.split("\\").pop().split("/").pop()}catch(t){}return r}(t=e.path);if(!Gt(r))return t;let n=Nn(t=Mn(t,r.length));return n.isRoot,n.path}function xn(t,r,n={}){let i=null;if(!On(r)&&!Sn(r))return{error:"inp is not an object or array"};let o=st(n,"useFormat",null);$n(o)||(o=!1);let u="";try{u=o?JSON.stringify(r,null,2):JSON.stringify(r)}catch(t){i=t}if(null!==i)return{error:i};let s=function(t,e,r={}){let n=null,i=st(r,"fs"),o=An(t);bn(o,{fs:i})||wn(o,{fs:i});try{i.writeFileSync(t,e,"utf8")}catch(t){n=t}return null!==n?{error:n}:{success:t}}(t,u,{fs:e});return s}function Tn(t,e){return!!On(t)&&(!(!Gt(e)&&!Nr(e))&&e in t)}function Pn(t){return!!function(t){return"[object Undefined]"===Object.prototype.toString.call(t)}(t)||(!!function(t){return"[object Null]"===Object.prototype.toString.call(t)}(t)||(!!function(t){if(On(t)){for(let e in t)return!1;return!0}return!1}(t)||(!!function(t){return!(!Ht(t)||""!==t)}(t)||(!!function(t){return!!Sn(t)&&0===t.length}(t)||!!Mr(t)))))}function Ln(t){return!!Sn(t)&&(0!==t.length&&(1!==t.length||!Pn(t[0])))}function kn(t,e,r=2){if(!Nr(t))return[];if(t=Ar(t),!Nr(e))return[];if(e=Ar(e),Ur(r)||(r=2),(r=xr(r))<=0)throw new Error(`num[${r}] <= 0`);let n=(e-t)/r,i=t,o=[];for(let t=0;t<=r;t++)o.push(i),i+=n;return o}
11
+ */!function(r,n){r.exports=function(t,e){function i(t,e){for(var r=-1,n=null==t?0:t.length;++r<n&&!1!==e(t[r],r,t););return t}var o=function(t,e,r){for(var n=-1,i=Object(t),o=r(t),s=o.length;s--;){var u=o[++n];if(!1===e(i[u],u,i))break}return t},s="object"==typeof dn&&dn&&dn.Object===Object&&dn,u="object"==typeof self&&self&&self.Object===Object&&self,a=s||u||Function("return this")(),l=a.Symbol,f=Object.prototype,c=f.hasOwnProperty,d=f.toString,h=l?l.toStringTag:void 0,p=Object.prototype.toString,v=l?l.toStringTag:void 0;function m(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":v&&v in Object(t)?function(t){var e=c.call(t,h),r=t[h];try{t[h]=void 0;var n=!0}catch(t){}var i=d.call(t);return n&&(e?t[h]=r:delete t[h]),i}(t):function(t){return p.call(t)}(t)}function y(t){return null!=t&&"object"==typeof t}function g(t){return y(t)&&"[object Arguments]"==m(t)}var w=Object.prototype,b=w.hasOwnProperty,M=w.propertyIsEnumerable,_=g(function(){return arguments}())?g:function(t){return y(t)&&b.call(t,"callee")&&!M.call(t,"callee")},j=_,O=Array.isArray,S=n&&!n.nodeType&&n,E=S&&r&&!r.nodeType&&r,$=E&&E.exports===S?a.Buffer:void 0,N=($?$.isBuffer:void 0)||function(){return!1},C=/^(?:0|[1-9]\d*)$/;function A(t,e){var r=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==r||"symbol"!=r&&C.test(t))&&t>-1&&t%1==0&&t<e}function x(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}var L={};function P(t){return function(e){return t(e)}}L["[object Float32Array]"]=L["[object Float64Array]"]=L["[object Int8Array]"]=L["[object Int16Array]"]=L["[object Int32Array]"]=L["[object Uint8Array]"]=L["[object Uint8ClampedArray]"]=L["[object Uint16Array]"]=L["[object Uint32Array]"]=!0,L["[object Arguments]"]=L["[object Array]"]=L["[object ArrayBuffer]"]=L["[object Boolean]"]=L["[object DataView]"]=L["[object Date]"]=L["[object Error]"]=L["[object Function]"]=L["[object Map]"]=L["[object Number]"]=L["[object Object]"]=L["[object RegExp]"]=L["[object Set]"]=L["[object String]"]=L["[object WeakMap]"]=!1;var R=n&&!n.nodeType&&n,T=R&&r&&!r.nodeType&&r,k=T&&T.exports===R&&s.process,F=function(){try{return T&&T.require&&T.require("util").types||k&&k.binding&&k.binding("util")}catch(t){}}(),D=F&&F.isTypedArray,B=D?P(D):function(t){return y(t)&&x(t.length)&&!!L[m(t)]},I=Object.prototype.hasOwnProperty;function q(t,e){var r=O(t),n=!r&&j(t),i=!r&&!n&&N(t),o=!r&&!n&&!i&&B(t),s=r||n||i||o,u=s?function(t,e){for(var r=-1,n=Array(t);++r<t;)n[r]=e(r);return n}(t.length,String):[],a=u.length;for(var l in t)!e&&!I.call(t,l)||s&&("length"==l||i&&("offset"==l||"parent"==l)||o&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||A(l,a))||u.push(l);return u}var U,G,z=Object.prototype,H=(U=Object.keys,G=Object,function(t){return U(G(t))}),Y=Object.prototype.hasOwnProperty;function Z(t){if(r=(e=t)&&e.constructor,e!==("function"==typeof r&&r.prototype||z))return H(t);var e,r,n=[];for(var i in Object(t))Y.call(t,i)&&"constructor"!=i&&n.push(i);return n}function V(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function W(t){if(!V(t))return!1;var e=m(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}function J(t){return null!=t&&x(t.length)&&!W(t)}function K(t){return J(t)?q(t):Z(t)}var X=function(t,e){return function(r,n){if(null==r)return r;if(!J(r))return t(r,n);for(var i=r.length,o=e?i:-1,s=Object(r);(e?o--:++o<i)&&!1!==n(s[o],o,s););return r}}(function(t,e){return t&&o(t,e,K)}),Q=X;function tt(t){return t}function et(t,e){var r;return(O(t)?i:Q)(t,"function"==typeof(r=e)?r:tt)}function rt(t,e){for(var r=-1,n=null==t?0:t.length,i=0,o=[];++r<n;){var s=t[r];e(s,r,t)&&(o[i++]=s)}return o}function nt(t,e){var r=[];return Q(t,function(t,n,i){e(t,n,i)&&r.push(t)}),r}function it(t,e){return t===e||t!=t&&e!=e}function ot(t,e){for(var r=t.length;r--;)if(it(t[r][0],e))return r;return-1}var st=Array.prototype.splice;function ut(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}ut.prototype.clear=function(){this.__data__=[],this.size=0},ut.prototype.delete=function(t){var e=this.__data__,r=ot(e,t);return!(r<0||(r==e.length-1?e.pop():st.call(e,r,1),--this.size,0))},ut.prototype.get=function(t){var e=this.__data__,r=ot(e,t);return r<0?void 0:e[r][1]},ut.prototype.has=function(t){return ot(this.__data__,t)>-1},ut.prototype.set=function(t,e){var r=this.__data__,n=ot(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this};var at,lt=a["__core-js_shared__"],ft=(at=/[^.]+$/.exec(lt&&lt.keys&&lt.keys.IE_PROTO||""))?"Symbol(src)_1."+at:"",ct=Function.prototype.toString;function dt(t){if(null!=t){try{return ct.call(t)}catch(t){}try{return t+""}catch(t){}}return""}var ht=/^\[object .+?Constructor\]$/,pt=Function.prototype,vt=Object.prototype,mt=pt.toString,yt=vt.hasOwnProperty,gt=RegExp("^"+mt.call(yt).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function wt(t){return!(!V(t)||function(t){return!!ft&&ft in t}(t))&&(W(t)?gt:ht).test(dt(t))}function bt(t,e){var r=function(t,e){return null==t?void 0:t[e]}(t,e);return wt(r)?r:void 0}var Mt=bt(a,"Map"),_t=bt(Object,"create"),jt=Object.prototype.hasOwnProperty,Ot=Object.prototype.hasOwnProperty;function St(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}function Et(t,e){var r,n,i=t.__data__;return("string"==(n=typeof(r=e))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof e?"string":"hash"]:i.map}function $t(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}function Nt(t){var e=this.__data__=new ut(t);this.size=e.size}function Ct(t){var e=-1,r=null==t?0:t.length;for(this.__data__=new $t;++e<r;)this.add(t[e])}function At(t,e){for(var r=-1,n=null==t?0:t.length;++r<n;)if(e(t[r],r,t))return!0;return!1}function xt(t,e,r,n,i,o){var s=1&r,u=t.length,a=e.length;if(u!=a&&!(s&&a>u))return!1;var l=o.get(t),f=o.get(e);if(l&&f)return l==e&&f==t;var c=-1,d=!0,h=2&r?new Ct:void 0;for(o.set(t,e),o.set(e,t);++c<u;){var p=t[c],v=e[c];if(n)var m=s?n(v,p,c,e,t,o):n(p,v,c,t,e,o);if(void 0!==m){if(m)continue;d=!1;break}if(h){if(!At(e,function(t,e){if(s=e,!h.has(s)&&(p===t||i(p,t,r,n,o)))return h.push(e);var s})){d=!1;break}}else if(p!==v&&!i(p,v,r,n,o)){d=!1;break}}return o.delete(t),o.delete(e),d}St.prototype.clear=function(){this.__data__=_t?_t(null):{},this.size=0},St.prototype.delete=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e},St.prototype.get=function(t){var e=this.__data__;if(_t){var r=e[t];return"__lodash_hash_undefined__"===r?void 0:r}return jt.call(e,t)?e[t]:void 0},St.prototype.has=function(t){var e=this.__data__;return _t?void 0!==e[t]:Ot.call(e,t)},St.prototype.set=function(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=_t&&void 0===e?"__lodash_hash_undefined__":e,this},$t.prototype.clear=function(){this.size=0,this.__data__={hash:new St,map:new(Mt||ut),string:new St}},$t.prototype.delete=function(t){var e=Et(this,t).delete(t);return this.size-=e?1:0,e},$t.prototype.get=function(t){return Et(this,t).get(t)},$t.prototype.has=function(t){return Et(this,t).has(t)},$t.prototype.set=function(t,e){var r=Et(this,t),n=r.size;return r.set(t,e),this.size+=r.size==n?0:1,this},Nt.prototype.clear=function(){this.__data__=new ut,this.size=0},Nt.prototype.delete=function(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r},Nt.prototype.get=function(t){return this.__data__.get(t)},Nt.prototype.has=function(t){return this.__data__.has(t)},Nt.prototype.set=function(t,e){var r=this.__data__;if(r instanceof ut){var n=r.__data__;if(!Mt||n.length<199)return n.push([t,e]),this.size=++r.size,this;r=this.__data__=new $t(n)}return r.set(t,e),this.size=r.size,this},Ct.prototype.add=Ct.prototype.push=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this},Ct.prototype.has=function(t){return this.__data__.has(t)};var Lt=a.Uint8Array;function Pt(t){var e=-1,r=Array(t.size);return t.forEach(function(t,n){r[++e]=[n,t]}),r}function Rt(t){var e=-1,r=Array(t.size);return t.forEach(function(t){r[++e]=t}),r}var Tt=l?l.prototype:void 0,kt=Tt?Tt.valueOf:void 0,Ft=Object.prototype.propertyIsEnumerable,Dt=Object.getOwnPropertySymbols,Bt=Dt?function(t){return null==t?[]:(t=Object(t),rt(Dt(t),function(e){return Ft.call(t,e)}))}:function(){return[]};function It(t){return function(t,e,r){var n=e(t);return O(t)?n:function(t,e){for(var r=-1,n=e.length,i=t.length;++r<n;)t[i+r]=e[r];return t}(n,r(t))}(t,K,Bt)}var qt=Object.prototype.hasOwnProperty,Ut=bt(a,"DataView"),Gt=bt(a,"Promise"),zt=bt(a,"Set"),Ht=bt(a,"WeakMap"),Yt="[object Map]",Zt="[object Promise]",Vt="[object Set]",Wt="[object WeakMap]",Jt="[object DataView]",Kt=dt(Ut),Xt=dt(Mt),Qt=dt(Gt),te=dt(zt),ee=dt(Ht),re=m;(Ut&&re(new Ut(new ArrayBuffer(1)))!=Jt||Mt&&re(new Mt)!=Yt||Gt&&re(Gt.resolve())!=Zt||zt&&re(new zt)!=Vt||Ht&&re(new Ht)!=Wt)&&(re=function(t){var e=m(t),r="[object Object]"==e?t.constructor:void 0,n=r?dt(r):"";if(n)switch(n){case Kt:return Jt;case Xt:return Yt;case Qt:return Zt;case te:return Vt;case ee:return Wt}return e});var ne=re,ie="[object Arguments]",oe="[object Array]",se="[object Object]",ue=Object.prototype.hasOwnProperty;function ae(t,e,r,n,i,o){var s=O(t),u=O(e),a=s?oe:ne(t),l=u?oe:ne(e),f=(a=a==ie?se:a)==se,c=(l=l==ie?se:l)==se,d=a==l;if(d&&N(t)){if(!N(e))return!1;s=!0,f=!1}if(d&&!f)return o||(o=new Nt),s||B(t)?xt(t,e,r,n,i,o):function(t,e,r,n,i,o,s){switch(r){case"[object DataView]":if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=e.byteLength||!o(new Lt(t),new Lt(e)));case"[object Boolean]":case"[object Date]":case"[object Number]":return it(+t,+e);case"[object Error]":return t.name==e.name&&t.message==e.message;case"[object RegExp]":case"[object String]":return t==e+"";case"[object Map]":var u=Pt;case"[object Set]":var a=1&n;if(u||(u=Rt),t.size!=e.size&&!a)return!1;var l=s.get(t);if(l)return l==e;n|=2,s.set(t,e);var f=xt(u(t),u(e),n,i,o,s);return s.delete(t),f;case"[object Symbol]":if(kt)return kt.call(t)==kt.call(e)}return!1}(t,e,a,r,n,i,o);if(!(1&r)){var h=f&&ue.call(t,"__wrapped__"),p=c&&ue.call(e,"__wrapped__");if(h||p){var v=h?t.value():t,m=p?e.value():e;return o||(o=new Nt),i(v,m,r,n,o)}}return!!d&&(o||(o=new Nt),function(t,e,r,n,i,o){var s=1&r,u=It(t),a=u.length;if(a!=It(e).length&&!s)return!1;for(var l=a;l--;){var f=u[l];if(!(s?f in e:qt.call(e,f)))return!1}var c=o.get(t),d=o.get(e);if(c&&d)return c==e&&d==t;var h=!0;o.set(t,e),o.set(e,t);for(var p=s;++l<a;){var v=t[f=u[l]],m=e[f];if(n)var y=s?n(m,v,f,e,t,o):n(v,m,f,t,e,o);if(!(void 0===y?v===m||i(v,m,r,n,o):y)){h=!1;break}p||(p="constructor"==f)}if(h&&!p){var g=t.constructor,w=e.constructor;g==w||!("constructor"in t)||!("constructor"in e)||"function"==typeof g&&g instanceof g&&"function"==typeof w&&w instanceof w||(h=!1)}return o.delete(t),o.delete(e),h}(t,e,r,n,i,o))}function le(t,e,r,n,i){return t===e||(null==t||null==e||!y(t)&&!y(e)?t!=t&&e!=e:ae(t,e,r,n,le,i))}function fe(t){return t==t&&!V(t)}function ce(t,e){return function(r){return null!=r&&r[t]===e&&(void 0!==e||t in Object(r))}}function de(t){var e=function(t){for(var e=K(t),r=e.length;r--;){var n=e[r],i=t[n];e[r]=[n,i,fe(i)]}return e}(t);return 1==e.length&&e[0][2]?ce(e[0][0],e[0][1]):function(r){return r===t||function(t,e,r,n){var i=r.length,o=i,s=!n;if(null==t)return!o;for(t=Object(t);i--;){var u=r[i];if(s&&u[2]?u[1]!==t[u[0]]:!(u[0]in t))return!1}for(;++i<o;){var a=(u=r[i])[0],l=t[a],f=u[1];if(s&&u[2]){if(void 0===l&&!(a in t))return!1}else{var c=new Nt;if(n)var d=n(l,f,a,t,e,c);if(!(void 0===d?le(f,l,3,n,c):d))return!1}}return!0}(r,t,e)}}function he(t){return"symbol"==typeof t||y(t)&&"[object Symbol]"==m(t)}var pe=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ve=/^\w*$/;function me(t,e){if(O(t))return!1;var r=typeof t;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=t&&!he(t))||ve.test(t)||!pe.test(t)||null!=e&&t in Object(e)}function ye(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError("Expected a function");var r=function(){var n=arguments,i=e?e.apply(this,n):n[0],o=r.cache;if(o.has(i))return o.get(i);var s=t.apply(this,n);return r.cache=o.set(i,s)||o,s};return r.cache=new(ye.Cache||$t),r}ye.Cache=$t;var ge=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,we=/\\(\\)?/g,be=function(t){var e=ye(t,function(t){return 500===r.size&&r.clear(),t}),r=e.cache;return e}(function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(ge,function(t,r,n,i){e.push(n?i.replace(we,"$1"):r||t)}),e}),Me=be;function _e(t,e){for(var r=-1,n=null==t?0:t.length,i=Array(n);++r<n;)i[r]=e(t[r],r,t);return i}var je=l?l.prototype:void 0,Oe=je?je.toString:void 0;function Se(t){if("string"==typeof t)return t;if(O(t))return _e(t,Se)+"";if(he(t))return Oe?Oe.call(t):"";var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Ee(t){return null==t?"":Se(t)}function $e(t,e){return O(t)?t:me(t,e)?[t]:Me(Ee(t))}function Ne(t){if("string"==typeof t||he(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Ce(t,e){for(var r=0,n=(e=$e(e,t)).length;null!=t&&r<n;)t=t[Ne(e[r++])];return r&&r==n?t:void 0}function Ae(t,e,r){var n=null==t?void 0:Ce(t,e);return void 0===n?r:n}function xe(t,e){return null!=t&&e in Object(t)}function Le(t,e){return null!=t&&function(t,e,r){for(var n=-1,i=(e=$e(e,t)).length,o=!1;++n<i;){var s=Ne(e[n]);if(!(o=null!=t&&r(t,s)))break;t=t[s]}return o||++n!=i?o:!!(i=null==t?0:t.length)&&x(i)&&A(s,i)&&(O(t)||j(t))}(t,e,xe)}function Pe(t){return function(e){return null==e?void 0:e[t]}}function Re(t){return me(t)?Pe(Ne(t)):function(t){return function(e){return Ce(e,t)}}(t)}function Te(t){return"function"==typeof t?t:null==t?tt:"object"==typeof t?O(t)?function(t,e){return me(t)&&fe(e)?ce(Ne(t),e):function(r){var n=Ae(r,t);return void 0===n&&n===e?Le(r,t):le(e,n,3)}}(t[0],t[1]):de(t):Re(t)}function ke(t,e){return(O(t)?rt:nt)(t,Te(e))}function Fe(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}function De(t,e){var r=-1,n=J(t)?Array(t.length):[];return Q(t,function(t,i,o){n[++r]=e(t,i,o)}),n}var Be=Pe("length"),Ie=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");function qe(t){return Ie.test(t)}var Ue="\\ud800-\\udfff",Ge="["+Ue+"]",ze="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",He="\\ud83c[\\udffb-\\udfff]",Ye="[^"+Ue+"]",Ze="(?:\\ud83c[\\udde6-\\uddff]){2}",Ve="[\\ud800-\\udbff][\\udc00-\\udfff]",We="(?:"+ze+"|"+He+")?",Je="[\\ufe0e\\ufe0f]?",Ke=Je+We+"(?:\\u200d(?:"+[Ye,Ze,Ve].join("|")+")"+Je+We+")*",Xe="(?:"+[Ye+ze+"?",ze,Ze,Ve,Ge].join("|")+")",Qe=RegExp(He+"(?="+He+")|"+Xe+Ke,"g");function tr(t){return qe(t)?function(t){for(var e=Qe.lastIndex=0;Qe.test(t);)++e;return e}(t):Be(t)}function er(t){if(null==t)return 0;if(J(t))return"string"==typeof(e=t)||!O(e)&&y(e)&&"[object String]"==m(e)?tr(t):t.length;var e,r=ne(t);return"[object Map]"==r||"[object Set]"==r?t.size:Z(t).length}function rr(t,e={}){let r=Ae(e,"fs"),n=!1;try{r.statSync(t),n=!0}catch{n=!1}return n}function nr(t){return function(t,e={}){let r=Ae(e,"fs");return!!rr(t,{fs:r})&&!r.lstatSync(t).isDirectory()&&!r.lstatSync(t).isSymbolicLink()}(t,{fs:e})}function ir(t){let r=null,n=function(t,e={}){let r=null,n=Ae(e,"fs"),i="";try{i=n.readFileSync(t,"utf8")}catch(t){r=t}return null!==r?{error:r}:{success:i}}(t,{fs:e});if(n.error)return n;let i=n.success,o=null;try{o=JSON.parse(i)}catch(t){r=t}return null!==r?{error:r}:{success:o}}var or=/\s/,sr=/^\s+/;function ur(t){return t?t.slice(0,function(t){for(var e=t.length;e--&&or.test(t.charAt(e)););return e}(t)+1).replace(sr,""):t}var ar=/^[-+]0x[0-9a-f]+$/i,lr=/^0b[01]+$/i,fr=/^0o[0-7]+$/i,cr=parseInt;function dr(t){if("number"==typeof t)return t;if(he(t))return NaN;if(V(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=V(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=ur(t);var r=lr.test(t);return r||fr.test(t)?cr(t.slice(2),r?2:8):ar.test(t)?NaN:+t}var hr=1/0;function pr(t){return t?(t=dr(t))===hr||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function vr(t){var e=pr(t),r=e%1;return e==e?r?e-r:e:0}function mr(t){return"[object String]"===Object.prototype.toString.call(t)}function yr(t){return!(!mr(t)||""===t)}function gr(t){return t!=t}function wr(t){let e=!1;if(yr(t))e=!isNaN(Number(t));else if(function(t){return"[object Number]"===Object.prototype.toString.call(t)}(t)){if(gr(t))return!1;e=!0}return e}function br(t){return wr(t)?pr(t):0}function Mr(t){return!!wr(t)&&"number"==typeof(e=t=br(t))&&e==vr(e);var e}var _r=a.isFinite,jr=Math.min,Or=function(){var t=Math.round;return function(e,r){if(e=dr(e),(r=null==r?0:jr(vr(r),292))&&_r(e)){var n=(Ee(e)+"e").split("e");return+((n=(Ee(t(n[0]+"e"+(+n[1]+r)))+"e").split("e"))[0]+"e"+(+n[1]-r))}return t(e)}}(),Sr=Or;function Er(t){if(!wr(t))return 0;t=br(t);let e=Sr(t);return"0"===String(e)?0:e}function $r(t,e={}){let r=Ae(e,"fs");if(!rr(t,{fs:r}))return!1;let n=r.lstatSync(t);return!n.isFile()&&!n.isSymbolicLink()}function Nr(t,e=1,r={}){let n=1,i=Ae(r,"path"),o=Ae(r,"fs");if(!$r(t,{fs:o}))throw new Error(`fd[${t}] is not a folder`);var s;return null!==e&&Mr(s=e)&&Er(s)>0&&(e=Er(e))<1&&(e=1),function t(r){let s=[];return $r(r,{fs:o})?(et(o.readdirSync(r),function(u){let a=i.resolve(r,u),l=null;try{l=o.statSync(a)}catch(t){}l&&l.isDirectory()?(s.push({isFolder:!0,level:n,path:a,name:i.basename(a)}),n+=1,(n<=e||null===e)&&(s=s.concat(t(a))),n-=1):s.push({isFolder:!1,level:n,path:a,name:i.basename(a)})}),s):s}(t)}function Cr(r,n=1){return Nr(r,n,{path:t,fs:e})}function Ar(t,e,r){var n=-1,i=t.length;e<0&&(e=-e>i?0:i+e),(r=r>i?i:r)<0&&(r+=i),i=e>r?0:r-e>>>0,e>>>=0;for(var o=Array(i);++n<i;)o[n]=t[n+e];return o}var xr=F&&F.isRegExp,Lr=xr?P(xr):function(t){return y(t)&&"[object RegExp]"==m(t)},Pr="\\ud800-\\udfff",Rr="["+Pr+"]",Tr="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",kr="\\ud83c[\\udffb-\\udfff]",Fr="[^"+Pr+"]",Dr="(?:\\ud83c[\\udde6-\\uddff]){2}",Br="[\\ud800-\\udbff][\\udc00-\\udfff]",Ir="(?:"+Tr+"|"+kr+")?",qr="[\\ufe0e\\ufe0f]?",Ur=qr+Ir+"(?:\\u200d(?:"+[Fr,Dr,Br].join("|")+")"+qr+Ir+")*",Gr="(?:"+[Fr+Tr+"?",Tr,Dr,Br,Rr].join("|")+")",zr=RegExp(kr+"(?="+kr+")|"+Gr+Ur,"g");function Hr(t){return qe(t)?function(t){return t.match(zr)||[]}(t):function(t){return t.split("")}(t)}function Yr(t,e,r){return r&&"number"!=typeof r&&function(t,e,r){if(!V(r))return!1;var n=typeof e;return!!("number"==n?J(r)&&A(e,r.length):"string"==n&&e in r)&&it(r[e],t)}(t,e,r)&&(e=r=void 0),(r=void 0===r?4294967295:r>>>0)?(t=Ee(t))&&("string"==typeof e||null!=e&&!Lr(e))&&!(e=Se(e))&&qe(t)?(i=0,o=r,s=(n=Hr(t)).length,o=void 0===o?s:o,!i&&o>=s?n:Ar(n,i,o)):t.split(e,r):[];var n,i,o,s}function Zr(t){return!!Mr(t)&&Er(t)>=0}function Vr(t,e){if(!yr(t))return"";if(!Zr(e))return"";if(0===(e=Er(e)))return"";let r=t.length-e;return r<0&&(r=0),t.substring(r,r+e)}function Wr(t,e){return yr(t)&&Zr(e)?0===(e=Er(e))?t:function(t,e){return yr(t)&&Zr(e)?0===(e=Er(e))?"":t.substring(0,e):""}(t,t.length-e):""}function Jr(t){if(!yr(t))return"";let e=function(t){if(!yr(t))return{path:"",isRoot:!1};for(;t.indexOf("\\\\")>=0;)t=t.replace("\\\\","\\");for(;t.indexOf("//")>=0;)t=t.replace("//","/");if(":"===Vr(t,1))return{path:`${t}\\`,isRoot:!0};if("\\"===Vr(t,1)){let e=Wr(t,1);return":"===Vr(e,1)?{path:t,isRoot:!0}:{path:e,isRoot:!1}}if("/"===Vr(t,1)){let e=Wr(t,1);return 0===e.length?{path:t,isRoot:!0}:{path:e,isRoot:!1}}return{path:t,isRoot:!1}}(t);if(e.isRoot)return e.path;let r=e.path;try{r=r.split("\\").pop().split("/").pop()}catch(t){}return r}var Kr=Array.prototype.join;function Xr(t){if(!yr(t))return"";let e=Jr(t),r=Yr(e,".");if(er(r)<=1)return e;let n="";try{r=(u=null==(i=r)?0:i.length)?Ar(i,0,(o=u-(o=s||void 0===o?1:vr(o)))<0?0:o):[],n=function(t,e){return null==t?"":Kr.call(t,e)}(r,".")}catch(t){}var i,o,s,u;return n}function Qr(t){return"[object Object]"===Object.prototype.toString.call(t)}function tn(t,e){return!!Qr(t)&&!(!yr(e)&&!wr(e))&&e in t}function en(t){return"[object Array]"===Object.prototype.toString.call(t)}function rn(t){return!!(function(t){return"[object Undefined]"===Object.prototype.toString.call(t)}(t)||function(t){return"[object Null]"===Object.prototype.toString.call(t)}(t)||function(t){if(Qr(t)){for(let e in t)return!1;return!0}return!1}(t)||function(t){return!(!mr(t)||""!==t)}(t)||function(t){return!!en(t)&&0===t.length}(t)||gr(t))}function nn(t){return!(!en(t)||0===t.length||1===t.length&&rn(t[0]))}function on(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var sn={exports:{}};!function(t){t.exports=function(){var t=1e3,e=6e4,r=36e5,n="millisecond",i="second",o="minute",s="hour",u="day",a="week",l="month",f="quarter",c="year",d="date",h="Invalid Date",p=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,v=/\[([^\]]+)]|YYYY|YY|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,m={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(t){var e=["th","st","nd","rd"],r=t%100;return"["+t+(e[(r-20)%10]||e[r]||e[0])+"]"}},y=function(t,e,r){var n=String(t);return!n||n.length>=e?t:""+Array(e+1-n.length).join(r)+t},g={s:y,z:function(t){var e=-t.utcOffset(),r=Math.abs(e),n=Math.floor(r/60),i=r%60;return(e<=0?"+":"-")+y(n,2,"0")+":"+y(i,2,"0")},m:function t(e,r){if(e.date()<r.date())return-t(r,e);var n=12*(r.year()-e.year())+(r.month()-e.month()),i=e.clone().add(n,l),o=r-i<0,s=e.clone().add(n+(o?-1:1),l);return+(-(n+(r-i)/(o?i-s:s-i))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(t){return{M:l,y:c,w:a,d:u,D:d,h:s,m:o,s:i,ms:n,Q:f}[t]||String(t||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},w="en",b={};b[w]=m;var M="$isDayjsObject",_=function(t){return t instanceof E||!(!t||!t[M])},j=function t(e,r,n){var i;if(!e)return w;if("string"==typeof e){var o=e.toLowerCase();b[o]&&(i=o),r&&(b[o]=r,i=o);var s=e.split("-");if(!i&&s.length>1)return t(s[0])}else{var u=e.name;b[u]=e,i=u}return!n&&i&&(w=i),i||!n&&w},O=function(t,e){if(_(t))return t.clone();var r="object"==typeof e?e:{};return r.date=t,r.args=arguments,new E(r)},S=g;S.l=j,S.i=_,S.w=function(t,e){return O(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var E=function(){function m(t){this.$L=j(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[M]=!0}var y=m.prototype;return y.parse=function(t){this.$d=function(t){var e=t.date,r=t.utc;if(null===e)return new Date(NaN);if(S.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var n=e.match(p);if(n){var i=n[2]-1||0,o=(n[7]||"0").substring(0,3);return r?new Date(Date.UTC(n[1],i,n[3]||1,n[4]||0,n[5]||0,n[6]||0,o)):new Date(n[1],i,n[3]||1,n[4]||0,n[5]||0,n[6]||0,o)}}return new Date(e)}(t),this.init()},y.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},y.$utils=function(){return S},y.isValid=function(){return!(this.$d.toString()===h)},y.isSame=function(t,e){var r=O(t);return this.startOf(e)<=r&&r<=this.endOf(e)},y.isAfter=function(t,e){return O(t)<this.startOf(e)},y.isBefore=function(t,e){return this.endOf(e)<O(t)},y.$g=function(t,e,r){return S.u(t)?this[e]:this.set(r,t)},y.unix=function(){return Math.floor(this.valueOf()/1e3)},y.valueOf=function(){return this.$d.getTime()},y.startOf=function(t,e){var r=this,n=!!S.u(e)||e,f=S.p(t),h=function(t,e){var i=S.w(r.$u?Date.UTC(r.$y,e,t):new Date(r.$y,e,t),r);return n?i:i.endOf(u)},p=function(t,e){return S.w(r.toDate()[t].apply(r.toDate("s"),(n?[0,0,0,0]:[23,59,59,999]).slice(e)),r)},v=this.$W,m=this.$M,y=this.$D,g="set"+(this.$u?"UTC":"");switch(f){case c:return n?h(1,0):h(31,11);case l:return n?h(1,m):h(0,m+1);case a:var w=this.$locale().weekStart||0,b=(v<w?v+7:v)-w;return h(n?y-b:y+(6-b),m);case u:case d:return p(g+"Hours",0);case s:return p(g+"Minutes",1);case o:return p(g+"Seconds",2);case i:return p(g+"Milliseconds",3);default:return this.clone()}},y.endOf=function(t){return this.startOf(t,!1)},y.$set=function(t,e){var r,a=S.p(t),f="set"+(this.$u?"UTC":""),h=(r={},r[u]=f+"Date",r[d]=f+"Date",r[l]=f+"Month",r[c]=f+"FullYear",r[s]=f+"Hours",r[o]=f+"Minutes",r[i]=f+"Seconds",r[n]=f+"Milliseconds",r)[a],p=a===u?this.$D+(e-this.$W):e;if(a===l||a===c){var v=this.clone().set(d,1);v.$d[h](p),v.init(),this.$d=v.set(d,Math.min(this.$D,v.daysInMonth())).$d}else h&&this.$d[h](p);return this.init(),this},y.set=function(t,e){return this.clone().$set(t,e)},y.get=function(t){return this[S.p(t)]()},y.add=function(n,f){var d,h=this;n=Number(n);var p=S.p(f),v=function(t){var e=O(h);return S.w(e.date(e.date()+Math.round(t*n)),h)};if(p===l)return this.set(l,this.$M+n);if(p===c)return this.set(c,this.$y+n);if(p===u)return v(1);if(p===a)return v(7);var m=(d={},d[o]=e,d[s]=r,d[i]=t,d)[p]||1,y=this.$d.getTime()+n*m;return S.w(y,this)},y.subtract=function(t,e){return this.add(-1*t,e)},y.format=function(t){var e=this,r=this.$locale();if(!this.isValid())return r.invalidDate||h;var n=t||"YYYY-MM-DDTHH:mm:ssZ",i=S.z(this),o=this.$H,s=this.$m,u=this.$M,a=r.weekdays,l=r.months,f=r.meridiem,c=function(t,r,i,o){return t&&(t[r]||t(e,n))||i[r].slice(0,o)},d=function(t){return S.s(o%12||12,t,"0")},p=f||function(t,e,r){var n=t<12?"AM":"PM";return r?n.toLowerCase():n};return n.replace(v,function(t,n){return n||function(t){switch(t){case"YY":return String(e.$y).slice(-2);case"YYYY":return S.s(e.$y,4,"0");case"M":return u+1;case"MM":return S.s(u+1,2,"0");case"MMM":return c(r.monthsShort,u,l,3);case"MMMM":return c(l,u);case"D":return e.$D;case"DD":return S.s(e.$D,2,"0");case"d":return String(e.$W);case"dd":return c(r.weekdaysMin,e.$W,a,2);case"ddd":return c(r.weekdaysShort,e.$W,a,3);case"dddd":return a[e.$W];case"H":return String(o);case"HH":return S.s(o,2,"0");case"h":return d(1);case"hh":return d(2);case"a":return p(o,s,!0);case"A":return p(o,s,!1);case"m":return String(s);case"mm":return S.s(s,2,"0");case"s":return String(e.$s);case"ss":return S.s(e.$s,2,"0");case"SSS":return S.s(e.$ms,3,"0");case"Z":return i}return null}(t)||i.replace(":","")})},y.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},y.diff=function(n,d,h){var p,v=this,m=S.p(d),y=O(n),g=(y.utcOffset()-this.utcOffset())*e,w=this-y,b=function(){return S.m(v,y)};switch(m){case c:p=b()/12;break;case l:p=b();break;case f:p=b()/3;break;case a:p=(w-g)/6048e5;break;case u:p=(w-g)/864e5;break;case s:p=w/r;break;case o:p=w/e;break;case i:p=w/t;break;default:p=w}return h?p:S.a(p)},y.daysInMonth=function(){return this.endOf(l).$D},y.$locale=function(){return b[this.$L]},y.locale=function(t,e){if(!t)return this.$L;var r=this.clone(),n=j(t,e,!0);return n&&(r.$L=n),r},y.clone=function(){return S.w(this.$d,this)},y.toDate=function(){return new Date(this.valueOf())},y.toJSON=function(){return this.isValid()?this.toISOString():null},y.toISOString=function(){return this.$d.toISOString()},y.toString=function(){return this.$d.toUTCString()},m}(),$=E.prototype;return O.prototype=$,[["$ms",n],["$s",i],["$m",o],["$H",s],["$W",u],["$M",l],["$y",c],["$D",d]].forEach(function(t){$[t[1]]=function(e){return this.$g(e,t[0],t[1])}}),O.extend=function(t,e){return t.$i||(t(e,E,O),t.$i=!0),O},O.locale=j,O.isDayjs=_,O.unix=function(t){return O(1e3*t)},O.en=b[w],O.Ls=b,O.p={},O}()}(sn);var un=on(sn.exports);function an(t){if(!yr(t))return!1;let e="YYYY-MM-DDTHH:mm:ss";return t===un(t,e).format(e)}function ln(t){let e=Object.prototype.toString.call(t);return"[object Function]"===e||"[object AsyncFunction]"===e}function fn(t,e){let r=function(){let t,e,r=new Promise(function(){t=arguments[0],e=arguments[1]});return r.resolve=t,r.reject=e,r}();if(!en(t)&&!Qr(t))return r.reject("rs is not an array or object"),r;let n=!1;if(Qr(t)){n=!0;let e=[];et(t,(t,r)=>{e.push({k:r,v:t})}),t=e}ln(e)||(e=function(t){return t});let i=-1,o=[];return t.reduce(function(t,r){return t.then(function(t){o.push(t),i+=1;let s=i,u=r;return n&&(s=r.k,u=r.v),ln(e)?e(u,s):u})},Promise.resolve()).then(function(t){var e,n,i;o.push(t),i=null==(e=o)?0:e.length,o=i?Ar(e,(n=void 0===n?1:vr(n))<0?0:n,i):[],r.resolve(o)}).catch(function(t){r.reject(t)}),r}return(e,r)=>{let n={},i=async i=>{if(tn(n,i))return n[i];let o=await(async n=>{let i=t.resolve(r,`${n}.json`),o=t.resolve(e,`${n}.json`),s="";if(nr(i))s=i;else{if(!nr(o))throw console.log(`fpParam[${i}] or fpOhlc[${o}] do not exist`),new Error(`invalid key[${n}]`);s=o}let u=Ae(ir(s),"success",null);if(!nn(u))throw new Error(`fp[${s}] no data`);return u})(i);return n[i]=o,o},o=[],s=async()=>{if(er(o)>0)return o;let t=t=>{let e=Cr(t);return e=ke(e,t=>"json"===function(t){if(!yr(t))return"";let e=Yr(Jr(t),".");if(er(e)<=1)return"";let r="";try{r=Fe(e)}catch(t){}return r}(t.name)),e},n=[],s=t(e);await fn(s,async t=>{let e=Xr(t.name),r=await i(e);n.push({type:"ohlc",key:e,arr:r})});let u=t(r);return await fn(u,async t=>{let e=Xr(t.name),r=await i(e);n.push({type:"param",key:e,arr:r})}),o=n,n},u={},a=async(t,e)=>{if(!an(t))throw new Error("invalid timeStart");if(!an(e))throw new Error("invalid timeEnd");let r=`${t}:${e}`;if(tn(u,r))return u[r];let n=await s(),i="1000-01-01T00:00:00",o="9999-01-01T00:00:00";if(et(n,t=>{let e=(r=t.arr)&&r.length?r[0]:void 0;var r;let n=Fe(t.arr),s=Ae(e,"time",""),u=Ae(n,"time","");"ohlc"===t.type&&i<s&&(i=s),o>u&&(o=u)}),t<i)throw new Error(`timeStart[${t}] < timeStartData[${i}]`);if(e>o)throw new Error(`timeEnd[${e}] > timeEndData[${o}]`);let a=[];return et(n,r=>{let n=ke(r.arr,r=>r.time>=t&&r.time<=e);a.push({key:r.key,arr:n})}),u[r]=a,a},l={getKeysParam:()=>{let t=Cr(r);var e,n;return n=t=>Xr(t.name),(O(e=t)?_e:De)(e,Te(n))},getTimeSeries:i,getTimeSeriesByTimeRange:async(t,e,r)=>{let n=await i(t);return n=ke(n,t=>t.time>=e&&t.time<=r),n},getTimeSeriesFull:s,getTimeSeriesFullByTimeRange:a,buildGetTimeSeriesByTimeRange:async(t,e)=>{let r=await a(t,e),n={};return et(r,t=>{n[t.key]=t.arr}),async r=>{let i=Ae(n,r,[]);if(!nn(i))throw new Error(`can not get series by key[${r}] bewteen timeStart[${t}] and timeEnd[${e}]`);return i}},buildGetTimeValueByTimeRange:async(t,e)=>{let r=await a(t,e),n={};return et(r,t=>{et(t.arr,e=>{let r=`${t.key}_${e.time}`;n[r]=e})}),async(r,i)=>{let o=Ae(n,`${r}_${i}`,{});if(!function(t){if(Qr(t)){for(let e in t)return!0;return!1}return!1}(o))throw new Error(`can not get value by key[${r}] and time[${i}] bewteen timeStart[${t}] and timeEnd[${e}]`);return o}}};return l}}(t,e)}(pn,pn.exports);var vn=hn(pn.exports);function mn(t){if(!qr(t))return!1;return Ar(t)>=0}function yn(t,e=0){if(!Nr(t))return"";if(!mn(e))return"";return t=Cr(t),Er(t,e).toFixed(e)}function gn(t,e={}){let r=ut(e,"fs"),n=!1;try{r.statSync(t),n=!0}catch{n=!1}return n}function wn(t,e={}){let r=ut(e,"fs");if(!gn(t,{fs:r}))return!1;let n=r.lstatSync(t);return!n.isFile()&&!n.isSymbolicLink()}function bn(t,e={}){let r=ut(e,"fs");if(wn(t,{fs:r}))return{success:"input folder is already exists: "+t};if(gn(t,{fs:r}))return{error:"input path already exists: "+t};try{r.mkdirSync(t,{recursive:!0})}catch(t){return{error:t}}return{success:"done: "+t}}function Mn(t,e={}){let r=ut(e,"fs");if(!gn(t,{fs:r}))return{success:"file does not exist: "+t};if(!function(t,e={}){let r=ut(e,"fs");return!!gn(t,{fs:r})&&!r.lstatSync(t).isDirectory()&&!r.lstatSync(t).isSymbolicLink()}(t,{fs:r}))return{error:"input path is not a file: "+t};try{r.unlinkSync(t)}catch(t){return{error:t}}return{success:"done: "+t}}function _n(t){return wn(t,{fs:e})}function jn(t){return"[object Object]"===Object.prototype.toString.call(t)}function On(t){return"[object Array]"===Object.prototype.toString.call(t)}function Sn(t){return!0===(e=t)||!1===e||p(e)&&"[object Boolean]"==h(e);var e}function En(t,e){if(!Yt(t))return"";if(!mn(e))return"";if(0===(e=Ar(e)))return"";let r=t.length-e;return r<0&&(r=0),t.substring(r,r+e)}function $n(t,e){return Yt(t)&&mn(e)?0===(e=Ar(e))?t:function(t,e){return Yt(t)&&mn(e)?0===(e=Ar(e))?"":t.substring(0,e):""}(t,t.length-e):""}function Nn(t){if(!Yt(t))return{path:"",isRoot:!1};for(;t.indexOf("\\\\")>=0;)t=t.replace("\\\\","\\");for(;t.indexOf("//")>=0;)t=t.replace("//","/");if(":"===En(t,1))return{path:`${t}\\`,isRoot:!0};if("\\"===En(t,1)){let e=$n(t,1);return":"===En(e,1)?{path:t,isRoot:!0}:{path:e,isRoot:!1}}if("/"===En(t,1)){let e=$n(t,1);return 0===e.length?{path:t,isRoot:!0}:{path:e,isRoot:!1}}return{path:t,isRoot:!1}}function Cn(t){if(!Yt(t))return"";let e=Nn(t);if(e.isRoot)return e.path;let r=function(t){if(!Yt(t))return"";let e=Nn(t);if(e.isRoot)return e.path;let r=e.path;try{r=r.split("\\").pop().split("/").pop()}catch(t){}return r}(t=e.path);if(!Yt(r))return t;let n=Nn(t=$n(t,r.length));return n.isRoot,n.path}function An(t,r,n={}){let i=null;if(!jn(r)&&!On(r))return{error:"inp is not an object or array"};let o=ut(n,"useFormat",null);Sn(o)||(o=!1);let s="";try{s=o?JSON.stringify(r,null,2):JSON.stringify(r)}catch(t){i=t}if(null!==i)return{error:i};let u=function(t,e,r={}){let n=null,i=ut(r,"fs"),o=Cn(t);wn(o,{fs:i})||bn(o,{fs:i});try{i.writeFileSync(t,e,"utf8")}catch(t){n=t}return null!==n?{error:n}:{success:t}}(t,s,{fs:e});return u}function xn(t,e){return!!jn(t)&&(!(!Yt(e)&&!Nr(e))&&e in t)}function Ln(t){return!!function(t){return"[object Undefined]"===Object.prototype.toString.call(t)}(t)||(!!function(t){return"[object Null]"===Object.prototype.toString.call(t)}(t)||(!!function(t){if(jn(t)){for(let e in t)return!1;return!0}return!1}(t)||(!!function(t){return!(!Ht(t)||""!==t)}(t)||(!!function(t){return!!On(t)&&0===t.length}(t)||!!$r(t)))))}function Pn(t){return!!On(t)&&(0!==t.length&&(1!==t.length||!Ln(t[0])))}function Rn(t,e,r=2){if(!Nr(t))return[];if(t=Cr(t),!Nr(e))return[];if(e=Cr(e),Ur(r)||(r=2),(r=Ar(r))<=0)throw new Error(`num[${r}] <= 0`);let n=(e-t)/r,i=t,o=[];for(let t=0;t<=r;t++)o.push(i),i+=n;return o}
12
12
  /*!
13
13
  * decimal.js v10.6.0
14
14
  * An arbitrary-precision Decimal type for JavaScript.
15
15
  * https://github.com/MikeMcl/decimal.js
16
16
  * Copyright (c) 2025 Michael Mclaughlin <M8ch88l@gmail.com>
17
17
  * MIT Licence
18
- */var Fn,Dn,Cn=9e15,Rn=1e9,In="0123456789abcdef",qn="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",zn="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",Un={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-Cn,maxE:Cn,crypto:!1},Yn=!0,Bn="[DecimalError] ",Hn=Bn+"Invalid argument: ",Gn=Bn+"Precision limit exceeded",Zn=Bn+"crypto unavailable",Vn="[object Decimal]",Wn=Math.floor,Jn=Math.pow,Kn=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,Qn=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,Xn=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,ti=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,ei=1e7,ri=qn.length-1,ni=zn.length-1,ii={toStringTag:Vn};function oi(t){var e,r,n,i=t.length-1,o="",u=t[0];if(i>0){for(o+=u,e=1;e<i;e++)(r=7-(n=t[e]+"").length)&&(o+=yi(r)),o+=n;(r=7-(n=(u=t[e])+"").length)&&(o+=yi(r))}else if(0===u)return"0";for(;u%10==0;)u/=10;return o+u}function ui(t,e,r){if(t!==~~t||t<e||t>r)throw Error(Hn+t)}function si(t,e,r,n){var i,o,u,s;for(o=t[0];o>=10;o/=10)--e;return--e<0?(e+=7,i=0):(i=Math.ceil((e+1)/7),e%=7),o=Jn(10,7-e),s=t[i]%o|0,null==n?e<3?(0==e?s=s/100|0:1==e&&(s=s/10|0),u=r<4&&99999==s||r>3&&49999==s||5e4==s||0==s):u=(r<4&&s+1==o||r>3&&s+1==o/2)&&(t[i+1]/o/100|0)==Jn(10,e-2)-1||(s==o/2||0==s)&&!(t[i+1]/o/100|0):e<4?(0==e?s=s/1e3|0:1==e?s=s/100|0:2==e&&(s=s/10|0),u=(n||r<4)&&9999==s||!n&&r>3&&4999==s):u=((n||r<4)&&s+1==o||!n&&r>3&&s+1==o/2)&&(t[i+1]/o/1e3|0)==Jn(10,e-3)-1,u}function ai(t,e,r){for(var n,i,o=[0],u=0,s=t.length;u<s;){for(i=o.length;i--;)o[i]*=e;for(o[0]+=In.indexOf(t.charAt(u++)),n=0;n<o.length;n++)o[n]>r-1&&(void 0===o[n+1]&&(o[n+1]=0),o[n+1]+=o[n]/r|0,o[n]%=r)}return o.reverse()}ii.absoluteValue=ii.abs=function(){var t=new this.constructor(this);return t.s<0&&(t.s=1),ci(t)},ii.ceil=function(){return ci(new this.constructor(this),this.e+1,2)},ii.clampedTo=ii.clamp=function(t,e){var r=this,n=r.constructor;if(t=new n(t),e=new n(e),!t.s||!e.s)return new n(NaN);if(t.gt(e))throw Error(Hn+e);return r.cmp(t)<0?t:r.cmp(e)>0?e:new n(r)},ii.comparedTo=ii.cmp=function(t){var e,r,n,i,o=this,u=o.d,s=(t=new o.constructor(t)).d,a=o.s,f=t.s;if(!u||!s)return a&&f?a!==f?a:u===s?0:!u^a<0?1:-1:NaN;if(!u[0]||!s[0])return u[0]?a:s[0]?-f:0;if(a!==f)return a;if(o.e!==t.e)return o.e>t.e^a<0?1:-1;for(e=0,r=(n=u.length)<(i=s.length)?n:i;e<r;++e)if(u[e]!==s[e])return u[e]>s[e]^a<0?1:-1;return n===i?0:n>i^a<0?1:-1},ii.cosine=ii.cos=function(){var t,e,r=this,n=r.constructor;return r.d?r.d[0]?(t=n.precision,e=n.rounding,n.precision=t+Math.max(r.e,r.sd())+7,n.rounding=1,r=function(t,e){var r,n,i;if(e.isZero())return e;n=e.d.length,n<32?i=(1/Ei(4,r=Math.ceil(n/3))).toString():(r=16,i="2.3283064365386962890625e-10");t.precision+=r,e=$i(t,1,e.times(i),new t(1));for(var o=r;o--;){var u=e.times(e);e=u.times(u).minus(u).times(8).plus(1)}return t.precision-=r,e}(n,Mi(n,r)),n.precision=t,n.rounding=e,ci(2==Dn||3==Dn?r.neg():r,t,e,!0)):new n(1):new n(NaN)},ii.cubeRoot=ii.cbrt=function(){var t,e,r,n,i,o,u,s,a,f,c=this,l=c.constructor;if(!c.isFinite()||c.isZero())return new l(c);for(Yn=!1,(o=c.s*Jn(c.s*c,1/3))&&Math.abs(o)!=1/0?n=new l(o.toString()):(r=oi(c.d),(o=((t=c.e)-r.length+1)%3)&&(r+=1==o||-2==o?"0":"00"),o=Jn(r,1/3),t=Wn((t+1)/3)-(t%3==(t<0?-1:2)),(n=new l(r=o==1/0?"5e"+t:(r=o.toExponential()).slice(0,r.indexOf("e")+1)+t)).s=c.s),u=(t=l.precision)+3;;)if(f=(a=(s=n).times(s).times(s)).plus(c),n=fi(f.plus(c).times(s),f.plus(a),u+2,1),oi(s.d).slice(0,u)===(r=oi(n.d)).slice(0,u)){if("9999"!=(r=r.slice(u-3,u+1))&&(i||"4999"!=r)){+r&&(+r.slice(1)||"5"!=r.charAt(0))||(ci(n,t+1,1),e=!n.times(n).times(n).eq(c));break}if(!i&&(ci(s,t+1,0),s.times(s).times(s).eq(c))){n=s;break}u+=4,i=1}return Yn=!0,ci(n,t,l.rounding,e)},ii.decimalPlaces=ii.dp=function(){var t,e=this.d,r=NaN;if(e){if(r=7*((t=e.length-1)-Wn(this.e/7)),t=e[t])for(;t%10==0;t/=10)r--;r<0&&(r=0)}return r},ii.dividedBy=ii.div=function(t){return fi(this,new this.constructor(t))},ii.dividedToIntegerBy=ii.divToInt=function(t){var e=this.constructor;return ci(fi(this,new e(t),0,1,1),e.precision,e.rounding)},ii.equals=ii.eq=function(t){return 0===this.cmp(t)},ii.floor=function(){return ci(new this.constructor(this),this.e+1,3)},ii.greaterThan=ii.gt=function(t){return this.cmp(t)>0},ii.greaterThanOrEqualTo=ii.gte=function(t){var e=this.cmp(t);return 1==e||0===e},ii.hyperbolicCosine=ii.cosh=function(){var t,e,r,n,i,o=this,u=o.constructor,s=new u(1);if(!o.isFinite())return new u(o.s?1/0:NaN);if(o.isZero())return s;r=u.precision,n=u.rounding,u.precision=r+Math.max(o.e,o.sd())+4,u.rounding=1,(i=o.d.length)<32?e=(1/Ei(4,t=Math.ceil(i/3))).toString():(t=16,e="2.3283064365386962890625e-10"),o=$i(u,1,o.times(e),new u(1),!0);for(var a,f=t,c=new u(8);f--;)a=o.times(o),o=s.minus(a.times(c.minus(a.times(c))));return ci(o,u.precision=r,u.rounding=n,!0)},ii.hyperbolicSine=ii.sinh=function(){var t,e,r,n,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(e=o.precision,r=o.rounding,o.precision=e+Math.max(i.e,i.sd())+4,o.rounding=1,(n=i.d.length)<3)i=$i(o,2,i,i,!0);else{t=(t=1.4*Math.sqrt(n))>16?16:0|t,i=$i(o,2,i=i.times(1/Ei(5,t)),i,!0);for(var u,s=new o(5),a=new o(16),f=new o(20);t--;)u=i.times(i),i=i.times(s.plus(u.times(a.times(u).plus(f))))}return o.precision=e,o.rounding=r,ci(i,e,r,!0)},ii.hyperbolicTangent=ii.tanh=function(){var t,e,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(t=n.precision,e=n.rounding,n.precision=t+7,n.rounding=1,fi(r.sinh(),r.cosh(),n.precision=t,n.rounding=e)):new n(r.s)},ii.inverseCosine=ii.acos=function(){var t=this,e=t.constructor,r=t.abs().cmp(1),n=e.precision,i=e.rounding;return-1!==r?0===r?t.isNeg()?pi(e,n,i):new e(0):new e(NaN):t.isZero()?pi(e,n+4,i).times(.5):(e.precision=n+6,e.rounding=1,t=new e(1).minus(t).div(t.plus(1)).sqrt().atan(),e.precision=n,e.rounding=i,t.times(2))},ii.inverseHyperbolicCosine=ii.acosh=function(){var t,e,r=this,n=r.constructor;return r.lte(1)?new n(r.eq(1)?0:NaN):r.isFinite()?(t=n.precision,e=n.rounding,n.precision=t+Math.max(Math.abs(r.e),r.sd())+4,n.rounding=1,Yn=!1,r=r.times(r).minus(1).sqrt().plus(r),Yn=!0,n.precision=t,n.rounding=e,r.ln()):new n(r)},ii.inverseHyperbolicSine=ii.asinh=function(){var t,e,r=this,n=r.constructor;return!r.isFinite()||r.isZero()?new n(r):(t=n.precision,e=n.rounding,n.precision=t+2*Math.max(Math.abs(r.e),r.sd())+6,n.rounding=1,Yn=!1,r=r.times(r).plus(1).sqrt().plus(r),Yn=!0,n.precision=t,n.rounding=e,r.ln())},ii.inverseHyperbolicTangent=ii.atanh=function(){var t,e,r,n,i=this,o=i.constructor;return i.isFinite()?i.e>=0?new o(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(t=o.precision,e=o.rounding,n=i.sd(),Math.max(n,t)<2*-i.e-1?ci(new o(i),t,e,!0):(o.precision=r=n-i.e,i=fi(i.plus(1),new o(1).minus(i),r+t,1),o.precision=t+4,o.rounding=1,i=i.ln(),o.precision=t,o.rounding=e,i.times(.5))):new o(NaN)},ii.inverseSine=ii.asin=function(){var t,e,r,n,i=this,o=i.constructor;return i.isZero()?new o(i):(e=i.abs().cmp(1),r=o.precision,n=o.rounding,-1!==e?0===e?((t=pi(o,r+4,n).times(.5)).s=i.s,t):new o(NaN):(o.precision=r+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=r,o.rounding=n,i.times(2)))},ii.inverseTangent=ii.atan=function(){var t,e,r,n,i,o,u,s,a,f=this,c=f.constructor,l=c.precision,d=c.rounding;if(f.isFinite()){if(f.isZero())return new c(f);if(f.abs().eq(1)&&l+4<=ni)return(u=pi(c,l+4,d).times(.25)).s=f.s,u}else{if(!f.s)return new c(NaN);if(l+4<=ni)return(u=pi(c,l+4,d).times(.5)).s=f.s,u}for(c.precision=s=l+10,c.rounding=1,t=r=Math.min(28,s/7+2|0);t;--t)f=f.div(f.times(f).plus(1).sqrt().plus(1));for(Yn=!1,e=Math.ceil(s/7),n=1,a=f.times(f),u=new c(f),i=f;-1!==t;)if(i=i.times(a),o=u.minus(i.div(n+=2)),i=i.times(a),void 0!==(u=o.plus(i.div(n+=2))).d[e])for(t=e;u.d[t]===o.d[t]&&t--;);return r&&(u=u.times(2<<r-1)),Yn=!0,ci(u,c.precision=l,c.rounding=d,!0)},ii.isFinite=function(){return!!this.d},ii.isInteger=ii.isInt=function(){return!!this.d&&Wn(this.e/7)>this.d.length-2},ii.isNaN=function(){return!this.s},ii.isNegative=ii.isNeg=function(){return this.s<0},ii.isPositive=ii.isPos=function(){return this.s>0},ii.isZero=function(){return!!this.d&&0===this.d[0]},ii.lessThan=ii.lt=function(t){return this.cmp(t)<0},ii.lessThanOrEqualTo=ii.lte=function(t){return this.cmp(t)<1},ii.logarithm=ii.log=function(t){var e,r,n,i,o,u,s,a,f=this,c=f.constructor,l=c.precision,d=c.rounding;if(null==t)t=new c(10),e=!0;else{if(r=(t=new c(t)).d,t.s<0||!r||!r[0]||t.eq(1))return new c(NaN);e=t.eq(10)}if(r=f.d,f.s<0||!r||!r[0]||f.eq(1))return new c(r&&!r[0]?-1/0:1!=f.s?NaN:r?0:1/0);if(e)if(r.length>1)o=!0;else{for(i=r[0];i%10==0;)i/=10;o=1!==i}if(Yn=!1,u=_i(f,s=l+5),n=e?hi(c,s+10):_i(t,s),si((a=fi(u,n,s,1)).d,i=l,d))do{if(u=_i(f,s+=10),n=e?hi(c,s+10):_i(t,s),a=fi(u,n,s,1),!o){+oi(a.d).slice(i+1,i+15)+1==1e14&&(a=ci(a,l+1,0));break}}while(si(a.d,i+=10,d));return Yn=!0,ci(a,l,d)},ii.minus=ii.sub=function(t){var e,r,n,i,o,u,s,a,f,c,l,d,h=this,p=h.constructor;if(t=new p(t),!h.d||!t.d)return h.s&&t.s?h.d?t.s=-t.s:t=new p(t.d||h.s!==t.s?h:NaN):t=new p(NaN),t;if(h.s!=t.s)return t.s=-t.s,h.plus(t);if(f=h.d,d=t.d,s=p.precision,a=p.rounding,!f[0]||!d[0]){if(d[0])t.s=-t.s;else{if(!f[0])return new p(3===a?-0:0);t=new p(h)}return Yn?ci(t,s,a):t}if(r=Wn(t.e/7),c=Wn(h.e/7),f=f.slice(),o=c-r){for((l=o<0)?(e=f,o=-o,u=d.length):(e=d,r=c,u=f.length),o>(n=Math.max(Math.ceil(s/7),u)+2)&&(o=n,e.length=1),e.reverse(),n=o;n--;)e.push(0);e.reverse()}else{for((l=(n=f.length)<(u=d.length))&&(u=n),n=0;n<u;n++)if(f[n]!=d[n]){l=f[n]<d[n];break}o=0}for(l&&(e=f,f=d,d=e,t.s=-t.s),u=f.length,n=d.length-u;n>0;--n)f[u++]=0;for(n=d.length;n>o;){if(f[--n]<d[n]){for(i=n;i&&0===f[--i];)f[i]=ei-1;--f[i],f[n]+=ei}f[n]-=d[n]}for(;0===f[--u];)f.pop();for(;0===f[0];f.shift())--r;return f[0]?(t.d=f,t.e=di(f,r),Yn?ci(t,s,a):t):new p(3===a?-0:0)},ii.modulo=ii.mod=function(t){var e,r=this,n=r.constructor;return t=new n(t),!r.d||!t.s||t.d&&!t.d[0]?new n(NaN):!t.d||r.d&&!r.d[0]?ci(new n(r),n.precision,n.rounding):(Yn=!1,9==n.modulo?(e=fi(r,t.abs(),0,3,1)).s*=t.s:e=fi(r,t,0,n.modulo,1),e=e.times(t),Yn=!0,r.minus(e))},ii.naturalExponential=ii.exp=function(){return wi(this)},ii.naturalLogarithm=ii.ln=function(){return _i(this)},ii.negated=ii.neg=function(){var t=new this.constructor(this);return t.s=-t.s,ci(t)},ii.plus=ii.add=function(t){var e,r,n,i,o,u,s,a,f,c,l=this,d=l.constructor;if(t=new d(t),!l.d||!t.d)return l.s&&t.s?l.d||(t=new d(t.d||l.s===t.s?l:NaN)):t=new d(NaN),t;if(l.s!=t.s)return t.s=-t.s,l.minus(t);if(f=l.d,c=t.d,s=d.precision,a=d.rounding,!f[0]||!c[0])return c[0]||(t=new d(l)),Yn?ci(t,s,a):t;if(o=Wn(l.e/7),n=Wn(t.e/7),f=f.slice(),i=o-n){for(i<0?(r=f,i=-i,u=c.length):(r=c,n=o,u=f.length),i>(u=(o=Math.ceil(s/7))>u?o+1:u+1)&&(i=u,r.length=1),r.reverse();i--;)r.push(0);r.reverse()}for((u=f.length)-(i=c.length)<0&&(i=u,r=c,c=f,f=r),e=0;i;)e=(f[--i]=f[i]+c[i]+e)/ei|0,f[i]%=ei;for(e&&(f.unshift(e),++n),u=f.length;0==f[--u];)f.pop();return t.d=f,t.e=di(f,n),Yn?ci(t,s,a):t},ii.precision=ii.sd=function(t){var e,r=this;if(void 0!==t&&t!==!!t&&1!==t&&0!==t)throw Error(Hn+t);return r.d?(e=vi(r.d),t&&r.e+1>e&&(e=r.e+1)):e=NaN,e},ii.round=function(){var t=this,e=t.constructor;return ci(new e(t),t.e+1,e.rounding)},ii.sine=ii.sin=function(){var t,e,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(t=n.precision,e=n.rounding,n.precision=t+Math.max(r.e,r.sd())+7,n.rounding=1,r=function(t,e){var r,n=e.d.length;if(n<3)return e.isZero()?e:$i(t,2,e,e);r=(r=1.4*Math.sqrt(n))>16?16:0|r,e=e.times(1/Ei(5,r)),e=$i(t,2,e,e);for(var i,o=new t(5),u=new t(16),s=new t(20);r--;)i=e.times(e),e=e.times(o.plus(i.times(u.times(i).minus(s))));return e}(n,Mi(n,r)),n.precision=t,n.rounding=e,ci(Dn>2?r.neg():r,t,e,!0)):new n(NaN)},ii.squareRoot=ii.sqrt=function(){var t,e,r,n,i,o,u=this,s=u.d,a=u.e,f=u.s,c=u.constructor;if(1!==f||!s||!s[0])return new c(!f||f<0&&(!s||s[0])?NaN:s?u:1/0);for(Yn=!1,0==(f=Math.sqrt(+u))||f==1/0?(((e=oi(s)).length+a)%2==0&&(e+="0"),f=Math.sqrt(e),a=Wn((a+1)/2)-(a<0||a%2),n=new c(e=f==1/0?"5e"+a:(e=f.toExponential()).slice(0,e.indexOf("e")+1)+a)):n=new c(f.toString()),r=(a=c.precision)+3;;)if(n=(o=n).plus(fi(u,o,r+2,1)).times(.5),oi(o.d).slice(0,r)===(e=oi(n.d)).slice(0,r)){if("9999"!=(e=e.slice(r-3,r+1))&&(i||"4999"!=e)){+e&&(+e.slice(1)||"5"!=e.charAt(0))||(ci(n,a+1,1),t=!n.times(n).eq(u));break}if(!i&&(ci(o,a+1,0),o.times(o).eq(u))){n=o;break}r+=4,i=1}return Yn=!0,ci(n,a,c.rounding,t)},ii.tangent=ii.tan=function(){var t,e,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(t=n.precision,e=n.rounding,n.precision=t+10,n.rounding=1,(r=r.sin()).s=1,r=fi(r,new n(1).minus(r.times(r)).sqrt(),t+10,0),n.precision=t,n.rounding=e,ci(2==Dn||4==Dn?r.neg():r,t,e,!0)):new n(NaN)},ii.times=ii.mul=function(t){var e,r,n,i,o,u,s,a,f,c=this,l=c.constructor,d=c.d,h=(t=new l(t)).d;if(t.s*=c.s,!(d&&d[0]&&h&&h[0]))return new l(!t.s||d&&!d[0]&&!h||h&&!h[0]&&!d?NaN:d&&h?0*t.s:t.s/0);for(r=Wn(c.e/7)+Wn(t.e/7),(a=d.length)<(f=h.length)&&(o=d,d=h,h=o,u=a,a=f,f=u),o=[],n=u=a+f;n--;)o.push(0);for(n=f;--n>=0;){for(e=0,i=a+n;i>n;)s=o[i]+h[n]*d[i-n-1]+e,o[i--]=s%ei|0,e=s/ei|0;o[i]=(o[i]+e)%ei|0}for(;!o[--u];)o.pop();return e?++r:o.shift(),t.d=o,t.e=di(o,r),Yn?ci(t,l.precision,l.rounding):t},ii.toBinary=function(t,e){return Ni(this,2,t,e)},ii.toDecimalPlaces=ii.toDP=function(t,e){var r=this,n=r.constructor;return r=new n(r),void 0===t?r:(ui(t,0,Rn),void 0===e?e=n.rounding:ui(e,0,8),ci(r,t+r.e+1,e))},ii.toExponential=function(t,e){var r,n=this,i=n.constructor;return void 0===t?r=li(n,!0):(ui(t,0,Rn),void 0===e?e=i.rounding:ui(e,0,8),r=li(n=ci(new i(n),t+1,e),!0,t+1)),n.isNeg()&&!n.isZero()?"-"+r:r},ii.toFixed=function(t,e){var r,n,i=this,o=i.constructor;return void 0===t?r=li(i):(ui(t,0,Rn),void 0===e?e=o.rounding:ui(e,0,8),r=li(n=ci(new o(i),t+i.e+1,e),!1,t+n.e+1)),i.isNeg()&&!i.isZero()?"-"+r:r},ii.toFraction=function(t){var e,r,n,i,o,u,s,a,f,c,l,d,h=this,p=h.d,v=h.constructor;if(!p)return new v(h);if(f=r=new v(1),n=a=new v(0),u=(o=(e=new v(n)).e=vi(p)-h.e-1)%7,e.d[0]=Jn(10,u<0?7+u:u),null==t)t=o>0?e:f;else{if(!(s=new v(t)).isInt()||s.lt(f))throw Error(Hn+s);t=s.gt(e)?o>0?e:f:s}for(Yn=!1,s=new v(oi(p)),c=v.precision,v.precision=o=7*p.length*2;l=fi(s,e,0,1,1),1!=(i=r.plus(l.times(n))).cmp(t);)r=n,n=i,i=f,f=a.plus(l.times(i)),a=i,i=e,e=s.minus(l.times(i)),s=i;return i=fi(t.minus(r),n,0,1,1),a=a.plus(i.times(f)),r=r.plus(i.times(n)),a.s=f.s=h.s,d=fi(f,n,o,1).minus(h).abs().cmp(fi(a,r,o,1).minus(h).abs())<1?[f,n]:[a,r],v.precision=c,Yn=!0,d},ii.toHexadecimal=ii.toHex=function(t,e){return Ni(this,16,t,e)},ii.toNearest=function(t,e){var r=this,n=r.constructor;if(r=new n(r),null==t){if(!r.d)return r;t=new n(1),e=n.rounding}else{if(t=new n(t),void 0===e?e=n.rounding:ui(e,0,8),!r.d)return t.s?r:t;if(!t.d)return t.s&&(t.s=r.s),t}return t.d[0]?(Yn=!1,r=fi(r,t,0,e,1).times(t),Yn=!0,ci(r)):(t.s=r.s,r=t),r},ii.toNumber=function(){return+this},ii.toOctal=function(t,e){return Ni(this,8,t,e)},ii.toPower=ii.pow=function(t){var e,r,n,i,o,u,s=this,a=s.constructor,f=+(t=new a(t));if(!(s.d&&t.d&&s.d[0]&&t.d[0]))return new a(Jn(+s,f));if((s=new a(s)).eq(1))return s;if(n=a.precision,o=a.rounding,t.eq(1))return ci(s,n,o);if((e=Wn(t.e/7))>=t.d.length-1&&(r=f<0?-f:f)<=9007199254740991)return i=mi(a,s,r,n),t.s<0?new a(1).div(i):ci(i,n,o);if((u=s.s)<0){if(e<t.d.length-1)return new a(NaN);if(1&t.d[e]||(u=1),0==s.e&&1==s.d[0]&&1==s.d.length)return s.s=u,s}return(e=0!=(r=Jn(+s,f))&&isFinite(r)?new a(r+"").e:Wn(f*(Math.log("0."+oi(s.d))/Math.LN10+s.e+1)))>a.maxE+1||e<a.minE-1?new a(e>0?u/0:0):(Yn=!1,a.rounding=s.s=1,r=Math.min(12,(e+"").length),(i=wi(t.times(_i(s,n+r)),n)).d&&si((i=ci(i,n+5,1)).d,n,o)&&(e=n+10,+oi((i=ci(wi(t.times(_i(s,e+r)),e),e+5,1)).d).slice(n+1,n+15)+1==1e14&&(i=ci(i,n+1,0))),i.s=u,Yn=!0,a.rounding=o,ci(i,n,o))},ii.toPrecision=function(t,e){var r,n=this,i=n.constructor;return void 0===t?r=li(n,n.e<=i.toExpNeg||n.e>=i.toExpPos):(ui(t,1,Rn),void 0===e?e=i.rounding:ui(e,0,8),r=li(n=ci(new i(n),t,e),t<=n.e||n.e<=i.toExpNeg,t)),n.isNeg()&&!n.isZero()?"-"+r:r},ii.toSignificantDigits=ii.toSD=function(t,e){var r=this.constructor;return void 0===t?(t=r.precision,e=r.rounding):(ui(t,1,Rn),void 0===e?e=r.rounding:ui(e,0,8)),ci(new r(this),t,e)},ii.toString=function(){var t=this,e=t.constructor,r=li(t,t.e<=e.toExpNeg||t.e>=e.toExpPos);return t.isNeg()&&!t.isZero()?"-"+r:r},ii.truncated=ii.trunc=function(){return ci(new this.constructor(this),this.e+1,1)},ii.valueOf=ii.toJSON=function(){var t=this,e=t.constructor,r=li(t,t.e<=e.toExpNeg||t.e>=e.toExpPos);return t.isNeg()?"-"+r:r};var fi=function(){function t(t,e,r){var n,i=0,o=t.length;for(t=t.slice();o--;)n=t[o]*e+i,t[o]=n%r|0,i=n/r|0;return i&&t.unshift(i),t}function e(t,e,r,n){var i,o;if(r!=n)o=r>n?1:-1;else for(i=o=0;i<r;i++)if(t[i]!=e[i]){o=t[i]>e[i]?1:-1;break}return o}function r(t,e,r,n){for(var i=0;r--;)t[r]-=i,i=t[r]<e[r]?1:0,t[r]=i*n+t[r]-e[r];for(;!t[0]&&t.length>1;)t.shift()}return function(n,i,o,u,s,a){var f,c,l,d,h,p,v,y,m,g,b,w,_,j,O,S,$,E,M,N,A=n.constructor,x=n.s==i.s?1:-1,T=n.d,P=i.d;if(!(T&&T[0]&&P&&P[0]))return new A(n.s&&i.s&&(T?!P||T[0]!=P[0]:P)?T&&0==T[0]||!P?0*x:x/0:NaN);for(a?(h=1,c=n.e-i.e):(a=ei,h=7,c=Wn(n.e/h)-Wn(i.e/h)),M=P.length,$=T.length,g=(m=new A(x)).d=[],l=0;P[l]==(T[l]||0);l++);if(P[l]>(T[l]||0)&&c--,null==o?(j=o=A.precision,u=A.rounding):j=s?o+(n.e-i.e)+1:o,j<0)g.push(1),p=!0;else{if(j=j/h+2|0,l=0,1==M){for(d=0,P=P[0],j++;(l<$||d)&&j--;l++)O=d*a+(T[l]||0),g[l]=O/P|0,d=O%P|0;p=d||l<$}else{for((d=a/(P[0]+1)|0)>1&&(P=t(P,d,a),T=t(T,d,a),M=P.length,$=T.length),S=M,w=(b=T.slice(0,M)).length;w<M;)b[w++]=0;(N=P.slice()).unshift(0),E=P[0],P[1]>=a/2&&++E;do{d=0,(f=e(P,b,M,w))<0?(_=b[0],M!=w&&(_=_*a+(b[1]||0)),(d=_/E|0)>1?(d>=a&&(d=a-1),1==(f=e(v=t(P,d,a),b,y=v.length,w=b.length))&&(d--,r(v,M<y?N:P,y,a))):(0==d&&(f=d=1),v=P.slice()),(y=v.length)<w&&v.unshift(0),r(b,v,w,a),-1==f&&(f=e(P,b,M,w=b.length))<1&&(d++,r(b,M<w?N:P,w,a)),w=b.length):0===f&&(d++,b=[0]),g[l++]=d,f&&b[0]?b[w++]=T[S]||0:(b=[T[S]],w=1)}while((S++<$||void 0!==b[0])&&j--);p=void 0!==b[0]}g[0]||g.shift()}if(1==h)m.e=c,Fn=p;else{for(l=1,d=g[0];d>=10;d/=10)l++;m.e=l+c*h-1,ci(m,s?o+m.e+1:o,u,p)}return m}}();function ci(t,e,r,n){var i,o,u,s,a,f,c,l,d,h=t.constructor;t:if(null!=e){if(!(l=t.d))return t;for(i=1,s=l[0];s>=10;s/=10)i++;if((o=e-i)<0)o+=7,u=e,a=(c=l[d=0])/Jn(10,i-u-1)%10|0;else if((d=Math.ceil((o+1)/7))>=(s=l.length)){if(!n)break t;for(;s++<=d;)l.push(0);c=a=0,i=1,u=(o%=7)-7+1}else{for(c=s=l[d],i=1;s>=10;s/=10)i++;a=(u=(o%=7)-7+i)<0?0:c/Jn(10,i-u-1)%10|0}if(n=n||e<0||void 0!==l[d+1]||(u<0?c:c%Jn(10,i-u-1)),f=r<4?(a||n)&&(0==r||r==(t.s<0?3:2)):a>5||5==a&&(4==r||n||6==r&&(o>0?u>0?c/Jn(10,i-u):0:l[d-1])%10&1||r==(t.s<0?8:7)),e<1||!l[0])return l.length=0,f?(e-=t.e+1,l[0]=Jn(10,(7-e%7)%7),t.e=-e||0):l[0]=t.e=0,t;if(0==o?(l.length=d,s=1,d--):(l.length=d+1,s=Jn(10,7-o),l[d]=u>0?(c/Jn(10,i-u)%Jn(10,u)|0)*s:0),f)for(;;){if(0==d){for(o=1,u=l[0];u>=10;u/=10)o++;for(u=l[0]+=s,s=1;u>=10;u/=10)s++;o!=s&&(t.e++,l[0]==ei&&(l[0]=1));break}if(l[d]+=s,l[d]!=ei)break;l[d--]=0,s=1}for(o=l.length;0===l[--o];)l.pop()}return Yn&&(t.e>h.maxE?(t.d=null,t.e=NaN):t.e<h.minE&&(t.e=0,t.d=[0])),t}function li(t,e,r){if(!t.isFinite())return ji(t);var n,i=t.e,o=oi(t.d),u=o.length;return e?(r&&(n=r-u)>0?o=o.charAt(0)+"."+o.slice(1)+yi(n):u>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(t.e<0?"e":"e+")+t.e):i<0?(o="0."+yi(-i-1)+o,r&&(n=r-u)>0&&(o+=yi(n))):i>=u?(o+=yi(i+1-u),r&&(n=r-i-1)>0&&(o=o+"."+yi(n))):((n=i+1)<u&&(o=o.slice(0,n)+"."+o.slice(n)),r&&(n=r-u)>0&&(i+1===u&&(o+="."),o+=yi(n))),o}function di(t,e){var r=t[0];for(e*=7;r>=10;r/=10)e++;return e}function hi(t,e,r){if(e>ri)throw Yn=!0,r&&(t.precision=r),Error(Gn);return ci(new t(qn),e,1,!0)}function pi(t,e,r){if(e>ni)throw Error(Gn);return ci(new t(zn),e,r,!0)}function vi(t){var e=t.length-1,r=7*e+1;if(e=t[e]){for(;e%10==0;e/=10)r--;for(e=t[0];e>=10;e/=10)r++}return r}function yi(t){for(var e="";t--;)e+="0";return e}function mi(t,e,r,n){var i,o=new t(1),u=Math.ceil(n/7+4);for(Yn=!1;;){if(r%2&&Ai((o=o.times(e)).d,u)&&(i=!0),0===(r=Wn(r/2))){r=o.d.length-1,i&&0===o.d[r]&&++o.d[r];break}Ai((e=e.times(e)).d,u)}return Yn=!0,o}function gi(t){return 1&t.d[t.d.length-1]}function bi(t,e,r){for(var n,i,o=new t(e[0]),u=0;++u<e.length;){if(!(i=new t(e[u])).s){o=i;break}((n=o.cmp(i))===r||0===n&&o.s===r)&&(o=i)}return o}function wi(t,e){var r,n,i,o,u,s,a,f=0,c=0,l=0,d=t.constructor,h=d.rounding,p=d.precision;if(!t.d||!t.d[0]||t.e>17)return new d(t.d?t.d[0]?t.s<0?0:1/0:1:t.s?t.s<0?0:t:NaN);for(null==e?(Yn=!1,a=p):a=e,s=new d(.03125);t.e>-2;)t=t.times(s),l+=5;for(a+=n=Math.log(Jn(2,l))/Math.LN10*2+5|0,r=o=u=new d(1),d.precision=a;;){if(o=ci(o.times(t),a,1),r=r.times(++c),oi((s=u.plus(fi(o,r,a,1))).d).slice(0,a)===oi(u.d).slice(0,a)){for(i=l;i--;)u=ci(u.times(u),a,1);if(null!=e)return d.precision=p,u;if(!(f<3&&si(u.d,a-n,h,f)))return ci(u,d.precision=p,h,Yn=!0);d.precision=a+=10,r=o=s=new d(1),c=0,f++}u=s}}function _i(t,e){var r,n,i,o,u,s,a,f,c,l,d,h=1,p=t,v=p.d,y=p.constructor,m=y.rounding,g=y.precision;if(p.s<0||!v||!v[0]||!p.e&&1==v[0]&&1==v.length)return new y(v&&!v[0]?-1/0:1!=p.s?NaN:v?0:p);if(null==e?(Yn=!1,c=g):c=e,y.precision=c+=10,n=(r=oi(v)).charAt(0),!(Math.abs(o=p.e)<15e14))return f=hi(y,c+2,g).times(o+""),p=_i(new y(n+"."+r.slice(1)),c-10).plus(f),y.precision=g,null==e?ci(p,g,m,Yn=!0):p;for(;n<7&&1!=n||1==n&&r.charAt(1)>3;)n=(r=oi((p=p.times(t)).d)).charAt(0),h++;for(o=p.e,n>1?(p=new y("0."+r),o++):p=new y(n+"."+r.slice(1)),l=p,a=u=p=fi(p.minus(1),p.plus(1),c,1),d=ci(p.times(p),c,1),i=3;;){if(u=ci(u.times(d),c,1),oi((f=a.plus(fi(u,new y(i),c,1))).d).slice(0,c)===oi(a.d).slice(0,c)){if(a=a.times(2),0!==o&&(a=a.plus(hi(y,c+2,g).times(o+""))),a=fi(a,new y(h),c,1),null!=e)return y.precision=g,a;if(!si(a.d,c-10,m,s))return ci(a,y.precision=g,m,Yn=!0);y.precision=c+=10,f=u=p=fi(l.minus(1),l.plus(1),c,1),d=ci(p.times(p),c,1),i=s=1}a=f,i+=2}}function ji(t){return String(t.s*t.s/0)}function Oi(t,e){var r,n,i;for((r=e.indexOf("."))>-1&&(e=e.replace(".","")),(n=e.search(/e/i))>0?(r<0&&(r=n),r+=+e.slice(n+1),e=e.substring(0,n)):r<0&&(r=e.length),n=0;48===e.charCodeAt(n);n++);for(i=e.length;48===e.charCodeAt(i-1);--i);if(e=e.slice(n,i)){if(i-=n,t.e=r=r-n-1,t.d=[],n=(r+1)%7,r<0&&(n+=7),n<i){for(n&&t.d.push(+e.slice(0,n)),i-=7;n<i;)t.d.push(+e.slice(n,n+=7));n=7-(e=e.slice(n)).length}else n-=i;for(;n--;)e+="0";t.d.push(+e),Yn&&(t.e>t.constructor.maxE?(t.d=null,t.e=NaN):t.e<t.constructor.minE&&(t.e=0,t.d=[0]))}else t.e=0,t.d=[0];return t}function Si(t,e){var r,n,i,o,u,s,a,f,c;if(e.indexOf("_")>-1){if(e=e.replace(/(\d)_(?=\d)/g,"$1"),ti.test(e))return Oi(t,e)}else if("Infinity"===e||"NaN"===e)return+e||(t.s=NaN),t.e=NaN,t.d=null,t;if(Qn.test(e))r=16,e=e.toLowerCase();else if(Kn.test(e))r=2;else{if(!Xn.test(e))throw Error(Hn+e);r=8}for((o=e.search(/p/i))>0?(a=+e.slice(o+1),e=e.substring(2,o)):e=e.slice(2),u=(o=e.indexOf("."))>=0,n=t.constructor,u&&(o=(s=(e=e.replace(".","")).length)-o,i=mi(n,new n(r),o,2*o)),o=c=(f=ai(e,r,ei)).length-1;0===f[o];--o)f.pop();return o<0?new n(0*t.s):(t.e=di(f,c),t.d=f,Yn=!1,u&&(t=fi(t,i,4*s)),a&&(t=t.times(Math.abs(a)<54?Jn(2,a):mo.pow(2,a))),Yn=!0,t)}function $i(t,e,r,n,i){var o,u,s,a,f=t.precision,c=Math.ceil(f/7);for(Yn=!1,a=r.times(r),s=new t(n);;){if(u=fi(s.times(a),new t(e++*e++),f,1),s=i?n.plus(u):n.minus(u),n=fi(u.times(a),new t(e++*e++),f,1),void 0!==(u=s.plus(n)).d[c]){for(o=c;u.d[o]===s.d[o]&&o--;);if(-1==o)break}o=s,s=n,n=u,u=o}return Yn=!0,u.d.length=c+1,u}function Ei(t,e){for(var r=t;--e;)r*=t;return r}function Mi(t,e){var r,n=e.s<0,i=pi(t,t.precision,1),o=i.times(.5);if((e=e.abs()).lte(o))return Dn=n?4:1,e;if((r=e.divToInt(i)).isZero())Dn=n?3:2;else{if((e=e.minus(r.times(i))).lte(o))return Dn=gi(r)?n?2:3:n?4:1,e;Dn=gi(r)?n?1:4:n?3:2}return e.minus(i).abs()}function Ni(t,e,r,n){var i,o,u,s,a,f,c,l,d,h=t.constructor,p=void 0!==r;if(p?(ui(r,1,Rn),void 0===n?n=h.rounding:ui(n,0,8)):(r=h.precision,n=h.rounding),t.isFinite()){for(p?(i=2,16==e?r=4*r-3:8==e&&(r=3*r-2)):i=e,(u=(c=li(t)).indexOf("."))>=0&&(c=c.replace(".",""),(d=new h(1)).e=c.length-u,d.d=ai(li(d),10,i),d.e=d.d.length),o=a=(l=ai(c,10,i)).length;0==l[--a];)l.pop();if(l[0]){if(u<0?o--:((t=new h(t)).d=l,t.e=o,l=(t=fi(t,d,r,n,0,i)).d,o=t.e,f=Fn),u=l[r],s=i/2,f=f||void 0!==l[r+1],f=n<4?(void 0!==u||f)&&(0===n||n===(t.s<0?3:2)):u>s||u===s&&(4===n||f||6===n&&1&l[r-1]||n===(t.s<0?8:7)),l.length=r,f)for(;++l[--r]>i-1;)l[r]=0,r||(++o,l.unshift(1));for(a=l.length;!l[a-1];--a);for(u=0,c="";u<a;u++)c+=In.charAt(l[u]);if(p){if(a>1)if(16==e||8==e){for(u=16==e?4:3,--a;a%u;a++)c+="0";for(a=(l=ai(c,i,e)).length;!l[a-1];--a);for(u=1,c="1.";u<a;u++)c+=In.charAt(l[u])}else c=c.charAt(0)+"."+c.slice(1);c=c+(o<0?"p":"p+")+o}else if(o<0){for(;++o;)c="0"+c;c="0."+c}else if(++o>a)for(o-=a;o--;)c+="0";else o<a&&(c=c.slice(0,o)+"."+c.slice(o))}else c=p?"0p+0":"0";c=(16==e?"0x":2==e?"0b":8==e?"0o":"")+c}else c=ji(t);return t.s<0?"-"+c:c}function Ai(t,e){if(t.length>e)return t.length=e,!0}function xi(t){return new this(t).abs()}function Ti(t){return new this(t).acos()}function Pi(t){return new this(t).acosh()}function Li(t,e){return new this(t).plus(e)}function ki(t){return new this(t).asin()}function Fi(t){return new this(t).asinh()}function Di(t){return new this(t).atan()}function Ci(t){return new this(t).atanh()}function Ri(t,e){t=new this(t),e=new this(e);var r,n=this.precision,i=this.rounding,o=n+4;return t.s&&e.s?t.d||e.d?!e.d||t.isZero()?(r=e.s<0?pi(this,n,i):new this(0)).s=t.s:!t.d||e.isZero()?(r=pi(this,o,1).times(.5)).s=t.s:e.s<0?(this.precision=o,this.rounding=1,r=this.atan(fi(t,e,o,1)),e=pi(this,o,1),this.precision=n,this.rounding=i,r=t.s<0?r.minus(e):r.plus(e)):r=this.atan(fi(t,e,o,1)):(r=pi(this,o,1).times(e.s>0?.25:.75)).s=t.s:r=new this(NaN),r}function Ii(t){return new this(t).cbrt()}function qi(t){return ci(t=new this(t),t.e+1,2)}function zi(t,e,r){return new this(t).clamp(e,r)}function Ui(t){if(!t||"object"!=typeof t)throw Error(Bn+"Object expected");var e,r,n,i=!0===t.defaults,o=["precision",1,Rn,"rounding",0,8,"toExpNeg",-Cn,0,"toExpPos",0,Cn,"maxE",0,Cn,"minE",-Cn,0,"modulo",0,9];for(e=0;e<o.length;e+=3)if(r=o[e],i&&(this[r]=Un[r]),void 0!==(n=t[r])){if(!(Wn(n)===n&&n>=o[e+1]&&n<=o[e+2]))throw Error(Hn+r+": "+n);this[r]=n}if(r="crypto",i&&(this[r]=Un[r]),void 0!==(n=t[r])){if(!0!==n&&!1!==n&&0!==n&&1!==n)throw Error(Hn+r+": "+n);if(n){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw Error(Zn);this[r]=!0}else this[r]=!1}return this}function Yi(t){return new this(t).cos()}function Bi(t){return new this(t).cosh()}function Hi(t,e){return new this(t).div(e)}function Gi(t){return new this(t).exp()}function Zi(t){return ci(t=new this(t),t.e+1,3)}function Vi(){var t,e,r=new this(0);for(Yn=!1,t=0;t<arguments.length;)if((e=new this(arguments[t++])).d)r.d&&(r=r.plus(e.times(e)));else{if(e.s)return Yn=!0,new this(1/0);r=e}return Yn=!0,r.sqrt()}function Wi(t){return t instanceof mo||t&&t.toStringTag===Vn||!1}function Ji(t){return new this(t).ln()}function Ki(t,e){return new this(t).log(e)}function Qi(t){return new this(t).log(2)}function Xi(t){return new this(t).log(10)}function to(){return bi(this,arguments,-1)}function eo(){return bi(this,arguments,1)}function ro(t,e){return new this(t).mod(e)}function no(t,e){return new this(t).mul(e)}function io(t,e){return new this(t).pow(e)}function oo(t){var e,r,n,i,o=0,u=new this(1),s=[];if(void 0===t?t=this.precision:ui(t,1,Rn),n=Math.ceil(t/7),this.crypto)if(crypto.getRandomValues)for(e=crypto.getRandomValues(new Uint32Array(n));o<n;)(i=e[o])>=429e7?e[o]=crypto.getRandomValues(new Uint32Array(1))[0]:s[o++]=i%1e7;else{if(!crypto.randomBytes)throw Error(Zn);for(e=crypto.randomBytes(n*=4);o<n;)(i=e[o]+(e[o+1]<<8)+(e[o+2]<<16)+((127&e[o+3])<<24))>=214e7?crypto.randomBytes(4).copy(e,o):(s.push(i%1e7),o+=4);o=n/4}else for(;o<n;)s[o++]=1e7*Math.random()|0;for(t%=7,(n=s[--o])&&t&&(i=Jn(10,7-t),s[o]=(n/i|0)*i);0===s[o];o--)s.pop();if(o<0)r=0,s=[0];else{for(r=-1;0===s[0];r-=7)s.shift();for(n=1,i=s[0];i>=10;i/=10)n++;n<7&&(r-=7-n)}return u.e=r,u.d=s,u}function uo(t){return ci(t=new this(t),t.e+1,this.rounding)}function so(t){return(t=new this(t)).d?t.d[0]?t.s:0*t.s:t.s||NaN}function ao(t){return new this(t).sin()}function fo(t){return new this(t).sinh()}function co(t){return new this(t).sqrt()}function lo(t,e){return new this(t).sub(e)}function ho(){var t=0,e=arguments,r=new this(e[t]);for(Yn=!1;r.s&&++t<e.length;)r=r.plus(e[t]);return Yn=!0,ci(r,this.precision,this.rounding)}function po(t){return new this(t).tan()}function vo(t){return new this(t).tanh()}function yo(t){return ci(t=new this(t),t.e+1,1)}ii[Symbol.for("nodejs.util.inspect.custom")]=ii.toString,ii[Symbol.toStringTag]="Decimal";var mo=ii.constructor=function t(e){var r,n,i;function o(t){var e,r,n,i=this;if(!(i instanceof o))return new o(t);if(i.constructor=o,Wi(t))return i.s=t.s,void(Yn?!t.d||t.e>o.maxE?(i.e=NaN,i.d=null):t.e<o.minE?(i.e=0,i.d=[0]):(i.e=t.e,i.d=t.d.slice()):(i.e=t.e,i.d=t.d?t.d.slice():t.d));if("number"===(n=typeof t)){if(0===t)return i.s=1/t<0?-1:1,i.e=0,void(i.d=[0]);if(t<0?(t=-t,i.s=-1):i.s=1,t===~~t&&t<1e7){for(e=0,r=t;r>=10;r/=10)e++;return void(Yn?e>o.maxE?(i.e=NaN,i.d=null):e<o.minE?(i.e=0,i.d=[0]):(i.e=e,i.d=[t]):(i.e=e,i.d=[t]))}return 0*t!=0?(t||(i.s=NaN),i.e=NaN,void(i.d=null)):Oi(i,t.toString())}if("string"===n)return 45===(r=t.charCodeAt(0))?(t=t.slice(1),i.s=-1):(43===r&&(t=t.slice(1)),i.s=1),ti.test(t)?Oi(i,t):Si(i,t);if("bigint"===n)return t<0?(t=-t,i.s=-1):i.s=1,Oi(i,t.toString());throw Error(Hn+t)}if(o.prototype=ii,o.ROUND_UP=0,o.ROUND_DOWN=1,o.ROUND_CEIL=2,o.ROUND_FLOOR=3,o.ROUND_HALF_UP=4,o.ROUND_HALF_DOWN=5,o.ROUND_HALF_EVEN=6,o.ROUND_HALF_CEIL=7,o.ROUND_HALF_FLOOR=8,o.EUCLID=9,o.config=o.set=Ui,o.clone=t,o.isDecimal=Wi,o.abs=xi,o.acos=Ti,o.acosh=Pi,o.add=Li,o.asin=ki,o.asinh=Fi,o.atan=Di,o.atanh=Ci,o.atan2=Ri,o.cbrt=Ii,o.ceil=qi,o.clamp=zi,o.cos=Yi,o.cosh=Bi,o.div=Hi,o.exp=Gi,o.floor=Zi,o.hypot=Vi,o.ln=Ji,o.log=Ki,o.log10=Xi,o.log2=Qi,o.max=to,o.min=eo,o.mod=ro,o.mul=no,o.pow=io,o.random=oo,o.round=uo,o.sign=so,o.sin=ao,o.sinh=fo,o.sqrt=co,o.sub=lo,o.sum=ho,o.tan=po,o.tanh=vo,o.trunc=yo,void 0===e&&(e={}),e&&!0!==e.defaults)for(i=["precision","rounding","toExpNeg","toExpPos","maxE","minE","modulo","crypto"],r=0;r<i.length;)e.hasOwnProperty(n=i[r++])||(e[n]=this[n]);return o.config(e),o}(Un);function go(t,e=0,r={}){yn(e)||(e=0),e=xr(e);let n=st(r,"rounding","");return"ROUND_HALF_UP"!==n&&"ROUND_HALF_EVEN"!==n&&(n="ROUND_HALF_UP"),Nr(t)?new mo(t).toDecimalPlaces(e,mo[n]).toNumber():""}qn=new mo(qn),zn=new mo(zn);var bo=u?u.isConcatSpreadable:void 0;function wo(t){return r(t)||mt(t)||!!(bo&&t&&t[bo])}function _o(t,e,r,n,i){var o=-1,u=t.length;for(r||(r=wo),i||(i=[]);++o<u;){var s=t[o];e>0&&r(s)?e>1?_o(s,e-1,r,n,i):ne(i,s):n||(i[i.length]=s)}return i}function jo(t,e){if(t!==e){var r=void 0!==t,n=null===t,i=t==t,o=v(t),u=void 0!==e,s=null===e,a=e==e,f=v(e);if(!s&&!f&&!o&&t>e||o&&u&&a&&!s&&!f||n&&u&&a||!r&&a||!i)return 1;if(!n&&!o&&!f&&t<e||f&&r&&i&&!n&&!o||s&&r&&i||!u&&i||!a)return-1}return 0}function Oo(t,e,n){e=e.length?X(e,function(t){return r(t)?function(e){return ut(e,1===t.length?t[0]:t)}:t}):[Ie];var i=-1;return e=X(e,Et(Ue)),function(t,e){var r=t.length;for(t.sort(e);r--;)t[r]=t[r].value;return t}(Ze(t,function(t,r,n){return{criteria:X(e,function(e){return e(t)}),index:++i,value:t}}),function(t,e){return function(t,e,r){for(var n=-1,i=t.criteria,o=e.criteria,u=i.length,s=r.length;++n<u;){var a=jo(i[n],o[n]);if(a)return n>=s?a:a*("desc"==r[n]?-1:1)}return t.index-e.index}(t,e,n)})}var So=Math.max;var $o=function(){try{var t=L(Object,"defineProperty");return t({},"",{}),t}catch(t){}}(),Eo=$o,Mo=Eo?function(t,e){return Eo(t,"toString",{configurable:!0,enumerable:!1,value:(r=e,function(){return r}),writable:!0});var r}:Ie,No=Mo,Ao=Date.now;var xo=function(t){var e=0,r=0;return function(){var n=Ao(),i=16-(n-r);if(r=n,i>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}(No),To=xo;var Po=function(t,e){return To(function(t,e,r){return e=So(void 0===e?t.length-1:e,0),function(){for(var n=arguments,i=-1,o=So(n.length-e,0),u=Array(o);++i<o;)u[i]=n[e+i];i=-1;for(var s=Array(e+1);++i<e;)s[i]=n[i];return s[e]=r(u),function(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}(t,this,s)}}(t,e,Ie),t+"")}(function(t,e){if(null==t)return[];var r=e.length;return r>1&&Lr(t,e[0],e[1])?e=[]:r>2&&Lr(e[0],e[1],e[2])&&(e=[e[0]]),Oo(t,_o(e,1),[])}),Lo=Po;function ko(t,e,r){"__proto__"==e&&Eo?Eo(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}var Fo=Object.prototype.hasOwnProperty;function Do(t,e,r){var n=t[e];Fo.call(t,e)&&R(n,r)&&(void 0!==r||e in t)||ko(t,e,r)}function Co(t,e,r,n){var i=!r;r||(r={});for(var o=-1,u=e.length;++o<u;){var s=e[o],a=n?n(r[s],t[s],s,r,t):void 0;void 0===a&&(a=t[s]),i?ko(r,s,a):Do(r,s,a)}return r}var Ro=Object.prototype.hasOwnProperty;function Io(t){if(!b(t))return function(t){var e=[];if(null!=t)for(var r in Object(t))e.push(r);return e}(t);var e=Dt(t),r=[];for(var n in t)("constructor"!=n||!e&&Ro.call(t,n))&&r.push(n);return r}function qo(t){return zt(t)?kt(t,!0):Io(t)}var zo="object"==typeof exports&&exports&&!exports.nodeType&&exports,Uo=zo&&"object"==typeof module&&module&&!module.nodeType&&module,Yo=Uo&&Uo.exports===zo?o.Buffer:void 0,Bo=Yo?Yo.allocUnsafe:void 0;var Ho=Ct(Object.getPrototypeOf,Object),Go=Object.getOwnPropertySymbols?function(t){for(var e=[];t;)ne(e,fe(t)),t=Ho(t);return e}:ue,Zo=Go;function Vo(t){return ie(t,qo,Zo)}var Wo=Object.prototype.hasOwnProperty;function Jo(t){var e=new t.constructor(t.byteLength);return new Qt(e).set(new Qt(t)),e}var Ko=/\w*$/;var Qo=u?u.prototype:void 0,Xo=Qo?Qo.valueOf:void 0;function tu(t,e,r){var n,i=t.constructor;switch(e){case"[object ArrayBuffer]":return Jo(t);case"[object Boolean]":case"[object Date]":return new i(+t);case"[object DataView]":return function(t,e){var r=e?Jo(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}(t,r);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return function(t,e){var r=e?Jo(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}(t,r);case"[object Map]":case"[object Set]":return new i;case"[object Number]":case"[object String]":return new i(t);case"[object RegExp]":return function(t){var e=new t.constructor(t.source,Ko.exec(t));return e.lastIndex=t.lastIndex,e}(t);case"[object Symbol]":return n=t,Xo?Object(Xo.call(n)):{}}}var eu=Object.create,ru=function(){function t(){}return function(e){if(!b(e))return{};if(eu)return eu(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}}(),nu=ru;var iu=xt&&xt.isMap,ou=iu?Et(iu):function(t){return p(t)&&"[object Map]"==Me(t)};var uu=xt&&xt.isSet,su=uu?Et(uu):function(t){return p(t)&&"[object Set]"==Me(t)},au="[object Arguments]",fu="[object Function]",cu="[object Object]",lu={};function du(t,e,n,i,o,u){var s,a=1&e,f=2&e,c=4&e;if(n&&(s=o?n(t,i,o,u):n(t)),void 0!==s)return s;if(!b(t))return t;var l=r(t);if(l){if(s=function(t){var e=t.length,r=new t.constructor(e);return e&&"string"==typeof t[0]&&Wo.call(t,"index")&&(r.index=t.index,r.input=t.input),r}(t),!a)return Cr(t,s)}else{var d=Me(t),h=d==fu||"[object GeneratorFunction]"==d;if(_t(t))return function(t,e){if(e)return t.slice();var r=t.length,n=Bo?Bo(r):new t.constructor(r);return t.copy(n),n}(t,a);if(d==cu||d==au||h&&!o){if(s=f||h?{}:function(t){return"function"!=typeof t.constructor||Dt(t)?{}:nu(Ho(t))}(t),!a)return f?function(t,e){return Co(t,Zo(t),e)}(t,function(t,e){return t&&Co(e,qo(e),t)}(s,t)):function(t,e){return Co(t,fe(t),e)}(t,function(t,e){return t&&Co(e,Ut(e),t)}(s,t))}else{if(!lu[d])return o?t:{};s=tu(t,d,a)}}u||(u=new Zt);var p=u.get(t);if(p)return p;u.set(t,s),su(t)?t.forEach(function(r){s.add(du(r,e,n,r,t,u))}):ou(t)&&t.forEach(function(r,i){s.set(i,du(r,e,n,i,t,u))});var v=l?void 0:(c?f?Vo:ce:f?qo:Ut)(t);return Br(v||t,function(r,i){v&&(r=t[i=r]),Do(s,i,du(r,e,n,i,t,u))}),s}lu[au]=lu["[object Array]"]=lu["[object ArrayBuffer]"]=lu["[object DataView]"]=lu["[object Boolean]"]=lu["[object Date]"]=lu["[object Float32Array]"]=lu["[object Float64Array]"]=lu["[object Int8Array]"]=lu["[object Int16Array]"]=lu["[object Int32Array]"]=lu["[object Map]"]=lu["[object Number]"]=lu[cu]=lu["[object RegExp]"]=lu["[object Set]"]=lu["[object String]"]=lu["[object Symbol]"]=lu["[object Uint8Array]"]=lu["[object Uint8ClampedArray]"]=lu["[object Uint16Array]"]=lu["[object Uint32Array]"]=!0,lu["[object Error]"]=lu[fu]=lu["[object WeakMap]"]=!1;function hu(t){return du(t,5)}function pu(t){let e,r=Object.prototype.toString.call(t);if(e="[object Promise]"===r,e)return!0;if("[object Function]"!==r)return!1;try{e="function"!=typeof t.subscribe&&"function"==typeof t.then}catch(t){}return e}function vu(t,e){return Le(t,e)}function yu(t,e){function r(t){return Sn(t)?t:[t]}if(Pn(t))return!1;if(0===(t=r(t)).length)return!1;if(Pn(t))return!1;if(0===(e=r(e)).length)return!1;for(let r=0;r<t.length;r++)for(let n=0;n<e.length;n++)if(vu(t[r],e[n]))return!0;return!1}function mu(t){return"number"==typeof t||p(t)&&"[object Number]"==h(t)}function gu(t){if(!(Gt(t)||Nr(t)||v(t)||function(t){return"[object BigInt]"===Object.prototype.toString.call(t)}(t)))return"";let e="";try{e=String(t)}catch(t){}try{e=t.toString()}catch(t){}return e}let bu=0;let wu=function(t="start1",e=!1){void 0===t?t=(new Date).getTime():"start1"===t&&(bu++,t=bu);let r=624,n=397,i=2147483648,o=2147483647,u=new Array(r),s=625,a=t=>{var e;for(mu(t)?u[0]=t>>>0:(t=gu(t),u[0]=Ht(e=t)?""===e?0:e.split("").reduce((t,e)=>e.charCodeAt(0)+(t<<6)+(t<<16)-t,0):null),s=1;s<r;s++){let t=u[s-1]^u[s-1]>>>30;u[s]=(1812433253*((4294901760&t)>>>16)<<16)+1812433253*(65535&t)+s,u[s]>>>=0}},f=()=>(()=>{let t,e=new Array(2567483615);if(s>=r){let f;for(625===s&&a(5489),f=0;f<227;f++)t=u[f]&i|u[f+1]&o,u[f]=u[f+n]^t>>>1^e[1&t];for(;f<623;f++)t=u[f]&i|u[f+1]&o,u[f]=u[f+(n-r)]^t>>>1^e[1&t];t=u[623]&i|u[0]&o,u[623]=u[396]^t>>>1^e[1&t],s=0}return t=u[s++],t^=t>>>11,t^=t<<7&2636928640,t^=t<<15&4022730752,t^=t>>>18,t>>>0})()*(1/4294967296);a(t);let c=null;return c=e?f:f(),c}((new Date).getTime(),!0);function _u(t=0,e=100){if(zr(t)||(t=0),t=xr(t),zr(e)||(e=100),t>(e=xr(e)))throw new Error(`vstart[${t}] > vend[${e}]`);let r=wu()*(e-t+1)+t;return r=Math.floor(r),r}function ju(t){if(0===lr(t))throw new Error("dps is not an effective array");let e=Ve(t,t=>{let e=st(t,"values",[]);if(0===lr(e))throw new Error("dp.values is not an effective array");let r=st(t,"n",0);if(r<=0)throw new Error("n<=0");let n=_u(0,r-1);return{ind:n,value:e[n]}});return{ps:e,fitness:null}}function Ou(t,e,r="Mapping"){if(!zr(t))throw new Error(`ind[${t}] in not an integer`);if(t=xr(t),!yn(e))throw new Error(`iUp[${e}]<0`);if(0===(e=xr(e)))return 0;if("Limit"===r)t=Math.min(t,e),t=Math.max(t,0);else if("Mapping"===r){let r=e+1;t=(t%r+r)%r}else{if("Random"!==r)throw new Error(`invalid mode[${r}]`);(t<0||t>e)&&(t=_u(0,e))}return t}function Su(t,e){let r=t.ps,n=e.ps;if(lr(r)!==lr(n))return!1;for(let t=0;t<r.length;t++)if(r[t].ind!==n[t].ind)return!1;return!0}function $u(t,e,r,n,i){if(t===e)return t;if(r<-4)return e;if(r>4)return t;if(i<=1)return t;let o;return o=r>=0?Math.pow(n/(i-1),Math.exp(r)):1-Math.pow((i-1-n)/(i-1),Math.exp(-r)),o*(e-t)+t}function Eu(t,e,r,n,i){for(let o=0;o<t.length;++o)t[o]=e*r[o]+n*i[o]}function Mu(t,e){return t.y-e.y}function Nu(t,e,r){if(0===lr(r))throw new Error("dps is not an effective array");let n=st(r,e),i=st(n,"values",[]),o=null,u=null,s=1e20;return Hr(i,(e,r)=>{let n=t-e;n=Math.abs(n),s>n&&(s=n,o=r,u=e)}),{ind:o,value:u}}function Au(t,e,r){let n=hu(t.ps),i=_u(0,e.length-1),o=Math.random()<.5?-1:1,u=n[i].ind,s=u+o;return s=Ou(s,e[i].n-1,r),n[i].ind=s,n[i].value=e[i].values[s],{ps:n,changed:s!==u}}function xu(t){if(On(t)){for(let e in t)return!0;return!1}return!1}function Tu(t){if(!Ln(t))throw new Error("dps is not an effective array");Hr(t,(t,e)=>{if(!xu(t))throw new Error(`dps[${e}] is not an effective object`);let r=st(t,"values");if(!Ln(r))throw new Error(`dps[${e}].values is not an effective array`);let n=r.length,i=st(t,"n");if(!Ur(i))throw new Error(`dps[${e}].n is not a positive integer, got ${i}`);if(i!==n)throw new Error(`dps[${e}] invariant violated: n[${i}] !== values.length[${n}]`)})}async function Pu(t,e,r={}){Tu(t);let n=st(r,"Nl","");Ur(n)||(n=1e4),n=xr(n);let i=st(r,"NContiguous","");Ur(i)||(i=200),i=xr(i);let o=st(r,"NCore","");Ur(o)||(o=1e6),o=xr(o);let u=st(r,"ModeOutLimit","");yu(u,["Mapping","Limit","Random"])||(u="Mapping");let s=st(r,"taThresholdType","");yu(s,["Arithmetic Series","Geometric Series","Trapezoid Series"])||(s="Geometric Series");let a=st(r,"taThresholdInitial","");Nr(a)||(a=1),a=Ar(a);let f=st(r,"UseHists","");$n(f)||(f=!0);let c=st(r,"funGetBetter"),l=st(r,"funEndLoop"),d=0,h=st(r,"calcFitness");ln(h)||(h=async(t,r)=>{d++;let n=Ve(t.ps,"value"),i=e(n);return pu(i)&&(i=await i),{ps:t.ps,fitness:i}});let p,v=st(r,"initSolution");if(v&&Ln(v.ps)&&Nr(v.fitness))p=hu(v);else{let e=ju(t);p=await h(e,"init")}let y=function(t,e,r){let n=new Array(r).fill(0);if("Arithmetic Series"===t)for(let t=0;t<r;t++)n[t]=e*(r-1-t)/Math.max(r-1,1);else if("Geometric Series"===t){let t=.6,i=e;for(let e=0;e<r;e++)n[e]=i,i*=t}else{if("Trapezoid Series"!==t)throw new Error(`invalid thresholdType[${t}]`);{let t=Math.floor(r/3),i=Math.floor(r/2),o=r-t-i,u=Math.max(t+o-1,1);for(let r=0;r<t;r++)n[r]=e*(t+o-1-r)/u;let s=n[t-1]||0;for(let e=t;e<t+i;e++)n[e]=s;for(let r=t+i;r<t+i+o;r++)n[r]=e*(t+o-1-(r-i))/u}}return n}(s,a,n),m=hu(p),g=[],b="",w=0,_=0,j=0;f&&g.push(hu(p));let O=-1;for(;;){if(O++,O>=n){b=`stop by Nl[${n}]`,w=O,_=d;break}let e,r=Au(p,t,u);if(e=r.changed?await h({ps:r.ps},"neighbor"):{ps:r.ps,fitness:p.fitness},e.fitness-p.fitness<y[O]&&(p=e),m.fitness>p.fitness?(m=hu(p),ln(c)&&c(hu(m),O),j=0):j+=1,f&&g.push(hu(p)),j>=i?b=`stop by iContinue[${j}] >= NContiguous[${i}]`:d>=o&&(b=`stop by iExecute[${d}] >= NCore[${o}]`),Gt(b)){w=O,_=d;break}ln(l)&&l(hu(p),hu(m),O)}return{bestSolution:m,hists:g,stopMode:b,stopNl:w,stopExecutions:_}}async function Lu(t,e,r,n,i,o){let u=e.length,s=hu(t),a=0,f=-1,c=0;for(let l=0;l<u;l++)for(let u=-1;u<=1;u+=2){if(i===l&&o===-u)continue;let d=t.ps[l].ind,h=d+u;if(h=Ou(h,e[l].n-1,r),h!==d){let r=hu(t.ps);r[l].ind=h,r[l].value=e[l].values[h];let i=await n({ps:r},"sdmNeighbor"),o=t.fitness-i.fitness;a<o&&(a=o,s=i,f=l,c=u)}}return{sMove:s,level:f,dir:c}}async function ku(t,e,r){let n=e.length,i=[],o=new Array(n).fill(0),u=hu(t);for(let o=0;o<n;o++){i.push([0,0]);for(let n=0;n<=1;n++){let s=0===n?-1:1,a=t.ps[o].ind,f=a+s;if(f=Ou(f,e[o].n-1,"Limit"),f!==a){let s=hu(t.ps);s[o].ind=f,s[o].value=e[o].values[f];let a=await r({ps:s},"sdmGold");u.fitness>a.fitness&&(u=a),i[o][n]=t.fitness-a.fitness}else i[o][n]=0}}let s=0;for(let t=0;t<n;t++)i[t][0]<=0&&i[t][1]<=0&&s++;if(s===n)return t.fitness<u.fitness?t:u;let a=0;for(let t=0;t<n;t++){let e=i[t][0],r=i[t][1];o[t]=e>=0&&r>=0?e>r?-e:r:e>=0&&r<0?-e:e<0&&r>=0?r:0,a+=o[t]*o[t]}if(a=Math.sqrt(a),0===a)return t.fitness<u.fitness?t:u;for(let t=0;t<n;t++)o[t]=o[t]/a;let f=0;for(let t=0;t<n;t++)f+=e[t].n*e[t].n;f=Math.sqrt(f),f>32768&&(f=32768);let c=hu(t),l=hu(t),d=hu(t),h=1/1.618,p="",v=0;for(;;){let i="none",s=null;for(;;){if(h*=1.618,h>f){i="over";break}let r=hu(t.ps),u=0;for(let i=0;i<n;i++){let n=t.ps[i].ind+Math.round(o[i]*h);n=Ou(n,e[i].n-1,"Limit"),r[i].ind=n,r[i].value=e[i].values[n],n===t.ps[i].ind&&u++}if(u!==n){i="move",s={ps:r,fitness:null};break}}if("over"===i){p="over";break}if(s=await r(s,"sdmGold"),u.fitness>s.fitness&&(u=s),v++,1===v){if(!(d.fitness>s.fitness))return c.fitness<u.fitness?c:u;d=s}else{if(!(d.fitness>s.fitness)){l=s,p="concave";break}d=s}}if("over"===p)return d.fitness<u.fitness?d:u;let y=0;for(;y++,!(y>50);){let t=hu(d.ps);for(let r=0;r<n;r++){let n=Math.round(.5*c.ps[r].ind+.5*l.ps[r].ind);t[r].ind=n,t[r].value=e[r].values[n]}let i=await r({ps:t},"sdmGold");u.fitness>i.fitness&&(u=i);let o=i.ps.every((t,e)=>t.ind===c.ps[e].ind),s=i.ps.every((t,e)=>t.ind===l.ps[e].ind);if(o||s)return[c,l,u].reduce((t,e)=>t.fitness<e.fitness?t:e);if(i.fitness<=c.fitness&&i.fitness<=l.fitness)c.fitness<=l.fitness?l=i:c=i,d=i;else if(i.fitness>=c.fitness&&i.fitness<=l.fitness)l=i;else{if(!(i.fitness<=c.fitness&&i.fitness>=l.fitness))return[c,l,u].reduce((t,e)=>t.fitness<e.fitness?t:e);c=i}}return[c,l,u].reduce((t,e)=>t.fitness<e.fitness?t:e)}async function Fu(t,e,r,n,i,o,u={}){if("None"===t)return e;if("NelderMead"===t){let t=async t=>{let e={ps:Ve(t,(t,e)=>Nu(t,e,r)),fitness:null};return(await i(e,"localSearchNelderMead")).fitness},n=Ve(e.ps,"value"),o=await async function(t,e,r={}){if(!ln(t))return Promise.reject("invalid fun");if(!Ln(e))return Promise.reject("params is not an effective array");let n=lr(e),i=st(r,"maxIterations");Nr(i)||(i=200*n),i=Ar(i);let o=st(r,"nonZeroDelta");Nr(o)||(o=1.05),o=Ar(o);let u=st(r,"delta");Nr(u)||(u=.001),u=Ar(u);let s=st(r,"minErrorDelta");Nr(s)||(s=1e-6),s=Ar(s);let a=st(r,"minTolerance");Nr(a)||(a=1e-5),a=Ar(a);let f=st(r,"rho");Nr(f)||(f=1),f=Ar(f);let c=st(r,"chi");Nr(c)||(c=2),c=Ar(c);let l=st(r,"psi");Nr(l)||(l=-.5),l=Ar(l);let d=st(r,"sigma");Nr(d)||(d=.5),d=Ar(d);let h=0;async function p(){let e=t(...arguments);return pu(e)&&(e=await e),h++,e}let v=new Array(n+1);v[0]=e,v[0].y=await p(e),v[0].id=0;for(let t=0;t<n;++t){let r=e.slice();r[t]=r[t]?r[t]*o:u,v[t+1]=r,v[t+1].y=await p(r),v[t+1].id=t+1}let y,m=t=>{for(let e=0;e<t.length;e++)v[n][e]=t[e];v[n].y=t.y},g=e.slice(),b=e.slice(),w=e.slice(),_=e.slice();for(let t=0;t<i;++t){v.sort(Mu),y=0;for(let t=0;t<n;++t)y=Math.max(y,Math.abs(v[0][t]-v[1][t]));if(Math.abs(v[0].y-v[n].y)<s&&y<a)break;for(let t=0;t<n;++t){g[t]=0;for(let e=0;e<n;++e)g[t]+=v[e][t];g[t]/=n}let t=v[n];if(Eu(b,1+f,g,-f,t),b.y=await p(b),b.y<v[0].y)Eu(_,1+c,g,-c,t),_.y=await p(_),_.y<b.y?m(_):m(b);else if(b.y>=v[n-1].y){let e=!1;if(b.y>t.y?(Eu(w,1+l,g,-l,t),w.y=await p(w),w.y<t.y?m(w):e=!0):(Eu(w,1-l*f,g,l*f,t),w.y=await p(w),w.y<b.y?m(w):e=!0),e){if(d>=1)break;for(let t=1;t<v.length;++t)Eu(v[t],1-d,v[0],d,v[t]),v[t].y=await p(v[t])}}else m(b)}v.sort(Mu);let j=[],O=v[0];for(let t=0;t<n;t++)j.push(O[t]);return{count:h,y:v[0].y,x:j}}(t,n);return o.y>=e.fitness?e:{ps:Ve(o.x,(t,e)=>Nu(t,e,r)),fitness:o.y}}if("Neighbor"===t||"OneGold"===t||"Gold"===t){let u=await async function(t,e,r={}){Tu(t);let n=st(r,"sdmMode","");yu(n,["Neighbor","OneGold","Gold"])||(n="Neighbor");let i=st(r,"ModeOutLimit","");yu(i,["Mapping","Limit","Random"])||(i="Mapping");let o=0,u=st(r,"calcFitness");ln(u)||(u=async(t,r)=>{o++;let n=Ve(t.ps,"value"),i=e(n);return pu(i)&&(i=await i),{ps:t.ps,fitness:i}});let s,a=st(r,"initSolution");if(a&&Ln(a.ps)&&Nr(a.fitness))s=hu(a);else{let e=ju(t);s=await u(e,"init")}let f=hu(s);if("Neighbor"===n){let e=-1,r=0;for(;;){let n=await Lu(s,t,i,u,e,r);if(s.fitness===n.sMove.fitness)break;s=n.sMove,e=n.level,r=n.dir,f.fitness>s.fitness&&(f=hu(s))}}else if("OneGold"===n){let e=await ku(s,t,u);f.fitness>e.fitness&&(f=e)}else if("Gold"===n){let e=50,r=0;for(;r++,!(r>e);){let e=await ku(s,t,u);if(s.fitness===e.fitness)break;s=e,f.fitness>s.fitness&&(f=hu(s))}}return{bestSolution:f,stopExecutions:o}}(r,n,{sdmMode:t,ModeOutLimit:o,initSolution:e,calcFitness:i});return u.bestSolution}if("SA"===t){let t=await async function(t,e,r={}){Tu(t);let n=st(r,"Nl","");Ur(n)||(n=1e4),n=xr(n);let i=st(r,"NContiguous","");Ur(i)||(i=200),i=xr(i);let o=st(r,"NCore","");Ur(o)||(o=1e6),o=xr(o);let u=st(r,"ModeOutLimit","");yu(u,["Mapping","Limit","Random"])||(u="Mapping");let s=st(r,"saInitialTemperature","");Nr(s)||(s=100),s=Ar(s);let a=st(r,"saAlpha","");Nr(a)||(a=.9),a=Ar(a);let f=st(r,"UseHists","");$n(f)||(f=!0);let c=st(r,"funGetBetter"),l=st(r,"funEndLoop"),d=0,h=st(r,"calcFitness");ln(h)||(h=async(t,r)=>{d++;let n=Ve(t.ps,"value"),i=e(n);return pu(i)&&(i=await i),{ps:t.ps,fitness:i}});let p,v=st(r,"initSolution");if(v&&Ln(v.ps)&&Nr(v.fitness))p=hu(v);else{let e=ju(t);p=await h(e,"init")}let y=hu(p),m=[],g="",b=0,w=0,_=0,j=s;f&&m.push(hu(p));let O=-1;for(;;){O++;let e,r=Au(p,t,u);e=r.changed?await h({ps:r.ps},"neighbor"):{ps:r.ps,fitness:p.fitness};let s=e.fitness-p.fitness;if(s<0?(p=e,j*=a):Math.random()<Math.exp(-s/j)&&(p=e),y.fitness>p.fitness?(y=hu(p),ln(c)&&c(hu(y),O),_=0):_+=1,f&&m.push(hu(p)),O>=n?g=`stop by Nl[${n}]`:_>=i?g=`stop by iContinue[${_}] >= NContiguous[${i}]`:d>=o&&(g=`stop by iExecute[${d}] >= NCore[${o}]`),Gt(g)){b=O,w=d;break}ln(l)&&l(hu(p),hu(y),O)}return{bestSolution:y,hists:m,stopMode:g,stopNl:b,stopExecutions:w}}(r,n,{initSolution:e,calcFitness:i,ModeOutLimit:o,Nl:1e3,NContiguous:5,saInitialTemperature:Math.max(.05*e.fitness,1),saAlpha:.9,UseHists:!1});return t.bestSolution}if("TA"===t){return(await Pu(r,n,{initSolution:e,calcFitness:i,ModeOutLimit:o,Nl:1e3,NContiguous:5,taThresholdType:"Geometric Series",taThresholdInitial:Math.max(.05*e.fitness,1),UseHists:!1})).bestSolution}throw new Error(`invalid LocalSearchMethod[${t}]`)}function Du(t,e,r){var n=null==t?0:t.length;return n?Gr(t,(e=r||void 0===e?1:jr(e))<0?0:e,n):[]}var Cu=Array.prototype.reverse;function Ru(t,e){return Gt(t)&&yn(e)?0===(e=xr(e))?t:En(t,t.length-e):""}function Iu(t,e={}){let r=st(e,"excludeString");if($n(r)||(r=!1),!Gt(t))return"";let n=t=>t>="0"&&t<="9"||"."===t||"-"===t||"+"===t,i=fn(t);if(r){let t=i.split("");for(let e=0;e<t.length;e++)if(n(t[e])){i=Ru(i,e),t=Du(t,e);break}t=null==(o=t)?o:Cu.call(o);for(let e=0;e<t.length;e++)if(n(t[e])){i=Mn(i,e);break}}var o;return i}function qu(t){let e=0,r=0,n=0,i=lr(t);Hr(t,t=>{Nr(t)?e+=1:Ht(t)?r+=1:On(t)&&(n+=1)});let o="";return e===i?o="num":r===i?o="str":n===i?o="obj":e+r===i?o="str":console.log("eles in array are non-homogeneous",t),o}function zu(t,e,r={}){let n=[];if("num"!==e&&"str"!==e&&"files"!==e)throw new Error(`invalid type[${e}]`);if("num"===e)n=Ve(t,(t,e)=>({key:e,payload:t,value:Ar(t)}));else if("files"===e)n=Ve(t,(t,e)=>({key:e,payload:t,value:gu(t)}));else if("str"===e){let e=Ve(t,t=>Iu(t,{excludeString:!0})),r=0;Hr(e,t=>{Nr(t)&&r++});let i=r===lr(e);n=Ve(t,(t,r)=>{let n=t;return i?(n=e[r],n=Ar(n)):n=gu(n),{key:r,payload:t,value:n}})}return n}function Uu(t,e){let r=Lo(t,"value");return Ve(r,e?"key":"payload")}function Yu(t,e){let r=function(t,e){let r=hu(t);return r.sort((t,r)=>t[e].localeCompare(r[e],"standard",{numeric:!0})),r}(t,"value");return Ve(r,e?"key":"payload")}function Bu(t,e){let r=function(){let t,e,r=new Promise(function(){t=arguments[0],e=arguments[1]});return r.resolve=t,r.reject=e,r}();if(!Sn(t)&&!On(t))return r.reject("rs is not an array or object"),r;let n=!1;if(On(t)){n=!0;let e=[];Hr(t,(t,r)=>{e.push({k:r,v:t})}),t=e}ln(e)||(e=function(t){return t});let i=-1,o=[];return t.reduce(function(t,r){return t.then(function(t){o.push(t),i+=1;let u=i,s=r;return n&&(u=r.k,s=r.v),ln(e)?e(s,u):s})},Promise.resolve()).then(function(t){o.push(t),o=Du(o),r.resolve(o)}).catch(function(t){r.reject(t)}),r}function Hu(t,e){var r=[];return Ge(t,function(t,n,i){e(t,n,i)&&r.push(t)}),r}function Gu(t,e){return(r(t)?oe:Hu)(t,Ue(e))}let Zu=(t,e,r,n,i)=>{if(!(Nr(o=e)&&Ar(o)>0))throw new Error(`uIni[${e}] is not a positive number`);var o;if(!Gt(n))throw new Error(`invalid timeOhlcStart[${n}]`);if(!Gt(i))throw new Error(`invalid timeOhlcEnd[${i}]`);r=Lo(r,"timeStart");let u=[],s=[];Hr(r,t=>{Gt(t.modeResult)?u.push(t):s.push(t)});let a=lr(r),f=lr(u),c=lr(s),l=mn(lr(Gu(r,{modeResult:"profit"}))/f*100,2)+"%",d=0,h="",p="",v=0,y="",m="",g="",b=0,w="",_=0,j=0,O=e,S=e,$={},E={};Hr(r,t=>{if(Gt(t.modeResult)){O=Math.max(O,t.uEquity);let e=O-t.uEquity,r=mn(e/O*100,2)+"%";e>d&&(d=e,S=O,h=r)}{let e=null;e=1,Gt(t.timeStart)&&(Tn($,t.timeStart)||($[t.timeStart]=0),$[t.timeStart]+=e*t.uTrade,Tn(E,t.timeStart)||(E[t.timeStart]=0),E[t.timeStart]+=1),Gt(t.timeEnd)&&(Tn($,t.timeEnd)||($[t.timeEnd]=0),$[t.timeEnd]-=e*t.uTrade,Tn(E,t.timeEnd)||(E[t.timeEnd]=0),E[t.timeEnd]-=1)}});{let t=[];Hr($,(e,r)=>{if(!mu(e))throw console.log("time",r),new Error(`invalid uTradeAll[${e}]`);t.push({time:r,uTradeAll:e})}),t=Lo(t,"time");let e=0,r=Ve(t,t=>(e+=t.uTradeAll,{...t,uAccm:e})),n={};Hr(r,t=>{n[t.time]=t.uAccm}),$=n}{let t=[];Hr(E,(e,r)=>{if(!mu(e))throw console.log("time",r),new Error(`invalid numTradeAll[${e}]`);t.push({time:r,numTradeAll:e})}),t=Lo(t,"time");let e=0,r=Ve(t,t=>(e+=t.numTradeAll,{...t,nAccm:e})),n={};Hr(r,t=>{n[t.time]=t.nAccm}),E=n}r=Ve(r,t=>{let r=st($,t.timeStart,null);if(!mu(r))throw new Error("invalid uTradeAll");r=Math.abs(r),t.uTradeAll=r;let n=mn(t.uTradeAll/e*100,2)+"%";t.rTradeAll=n,b<t.uTradeAll&&(b=t.uTradeAll,w=t.rTradeAll);let i=st(E,t.timeStart,null);if(!mu(i))throw new Error("invalid numTradeAll");return t.numTradeAll=i,_<t.numTradeAll&&(_=t.numTradeAll),t});{let t=lr(u)-1;v=st(u,`${t}.uEquity`,""),y=st(u,`${t}.uCumuProfitOrLoss`,""),m=st(u,`${t}.rCumuProfitOrLoss`,"")}{let t;t=S-e+b>0?d/(S-e+b):0,p=mn(100*t,2)+"%"}g=b>0&&mu(y)?y/b:0,g=mn(100*g,2)+"%";{let t=0,e=0,r=0,n=0;Hr(u,t=>{let e=t.rProfitOrLossDay*t.dayHold;r+=e;let i=t.dayHold;n+=i}),n>0&&(t=r/n);let i=0;Hr(u,e=>{let r=e.rProfitOrLossDay-t,n=e.dayHold*(r*r);i+=n}),n>1&&(e=Math.sqrt(i/(n-1))),e>0&&(j=t/e*Math.sqrt(252)),j<-10&&(j=-10),j>10&&(j=10)}let M=t(n),N=t(i).diff(M,"day"),A=N/365,x="";{let t;t=0===e||0===A?0:(v-e)/e/A,x=`${mn(100*t,2)}%`}let T="";{let t;t=0===b||0===A?0:(v-e)/b/A,T=`${mn(100*t,2)}%`}return{btDays:N,btYears:mn(A,1),numTrade:a,numTradeFin:f,numTradeUnsettled:c,uTradeAllMax:b,rTradeAllMax:w,numTradeAllMax:_,uDrawdownMax:d,rDrawdownMax:h,rEquivalentDrawdownMax:p,rSharpe:j,rWin:l,uEquityFinal:v,uCumuProfitOrLossFinal:y,rCumuProfitOrLossFinal:m,rCumuProfitOrLossFinalNormYear:x,rEquivalentCumuProfitOrLossFinal:g,rEquivalentCumuProfitOrLossFinalNormYear:T}},Vu=async(t,e,r,n={})=>{let i=st(e,"mode","");if("long"!==i&&"short"!==i)throw new Error(`invalid strategy.mode[${i}] not 'long' or 'short'`);let o=st(e,"keyOhlc","");if(!Gt(o))throw new Error("invalid strategy.keyOhlc");let u=st(e,"conds",[]);if(!Ln(u))throw new Error("invalid strategy.conds");let s=lr(u),a=st(e,"settings",{});if(xu(a)||(a={uIni:1e3,uTrade:1,rTakeProfit:.05,rStopLoss:.03,rFee:5e-4}),!ln(r))throw new Error("funGetSeries is not a function");let f=st(n,"withCalcOrderProfitOrLoss",!0),c=st(n,"withSummary",!0),l=await r(o),d={},h={};await Bu(u,async t=>{let e=await r(t.key);Tn(h,t.key)||(h[t.key]={}),Hr(e,e=>{h[t.key][e.time]=e.param,Tn(d,e.time)||(d[e.time]=0),d[e.time]+=1})});let p=[];Hr(d,(t,e)=>{t===s&&p.push(e)}),p=function(t,e={}){if(!Ln(t))return[];if(1===lr(t))return t;let r=st(e,"localeCompare");$n(r)||(r=!1);let n=st(e,"returnIndex");$n(n)||(n=!1);let i=st(e,"compareKey",null),o=null;o=r?Yu:Uu;let u,s=qu(t);if(""===s)return[];if("obj"===s){if(!Gt(i))return[];let s=Ve(t,(t,e)=>st(t,i,"")),a=qu(s);if("num"!==a&&"str"!==a)return[];{r&&(a="files");let i=o(zu(s,a,e),!0);u=n?i:Ve(i,e=>t[e])}}else"num"!==s&&"str"!==s||(r&&(s="files"),u=o(zu(t,s,e),n));return u}(p);let v={};Hr(p,t=>{v[t]=!0});let y={};Hr(p,t=>{y[t]={},Hr(u,e=>{y[t][e.key]=h[e.key][t]})});let m=st((g=l)&&g.length?g[0]:void 0,"time","");var g;let b=st(function(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}(l),"time",""),w=[];await Bu(l,async t=>{let e=st(t,"time");if(!Tn(v,e))return!0;let r=!0;{let t=[];Hr(u,(r,n)=>{let i=y[e][r.key],o=st(r,"sym",">"),u=st(r,"th",0),s=st(r,"opr",null);"and"!==s&&"or"!==s&&(s="and");let a=!1;a=">"===o?i>u:i<u,t.push({opr:s,b:a})});let n=t.filter(t=>"and"===t.opr).every(t=>t.b),i=t.filter(t=>"or"===t.opr),o=0===i.length||i.some(t=>t.b);r=n&&o}let n=!1,o=!1;if(r&&("long"===i?n=!0:o=!0),n){let r={mode:"long",timeStart:e,priceStart:t.Close,uTrade:a.uTrade,rTakeProfit:a.rTakeProfit,priceTakeProfit:(1+a.rTakeProfit)*t.Close,rStopLoss:a.rStopLoss,priceStopLoss:(1-a.rStopLoss)*t.Close,timeEnd:"",priceEnd:"",modeResult:"",rFee:a.rFee,uFee:a.rFee*a.uTrade,uProfitOrLoss:"",rProfitOrLoss:"",uCumuProfitOrLoss:"",rCumuProfitOrLoss:"",uEquity:"",uTradeAll:"",rTradeAll:""};w.push(r)}else if(o){let r={mode:"short",timeStart:e,priceStart:t.Close,uTrade:a.uTrade,rTakeProfit:a.rTakeProfit,priceTakeProfit:(1-a.rTakeProfit)*t.Close,rStopLoss:a.rStopLoss,priceStopLoss:(1+a.rStopLoss)*t.Close,timeEnd:"",priceEnd:"",modeResult:"",rFee:a.rFee,uFee:a.rFee*a.uTrade,uProfitOrLoss:"",rProfitOrLoss:"",uCumuProfitOrLoss:"",rCumuProfitOrLoss:"",uEquity:"",uTradeAll:"",rTradeAll:""};w.push(r)}}),f&&(w=await(async(t,e,r={})=>{e=Lo(e,"timeStart");let n=st(r,"uIni",1e3),i={};Hr(t,t=>{i[t.time]=t});let o={},u=n,s=0;Hr(e,(t,e)=>{Hr(i,r=>{if(r.time<=t.timeStart)return delete i[r.time],!0;if("long"===t.mode){if(r.Low<=t.priceStopLoss)return t.timeEnd=r.time,t.priceEnd=t.priceStopLoss,t.uProfitOrLoss=t.uTrade*(t.priceEnd/t.priceStart)-t.uTrade-2*t.uFee,t.rProfitOrLoss=t.uProfitOrLoss/t.uTrade,s+=t.uProfitOrLoss,t.uCumuProfitOrLoss=s,t.rCumuProfitOrLoss=mn(t.uCumuProfitOrLoss/n*100,2)+"%",u+=t.uProfitOrLoss,t.uEquity=u,t.modeResult=t.uProfitOrLoss<0?"loss":"profit",o[e]=t,!1;if(r.High>=t.priceTakeProfit)return t.timeEnd=r.time,t.priceEnd=t.priceTakeProfit,t.uProfitOrLoss=t.uTrade*(t.priceEnd/t.priceStart)-t.uTrade-2*t.uFee,t.rProfitOrLoss=t.uProfitOrLoss/t.uTrade,s+=t.uProfitOrLoss,t.uCumuProfitOrLoss=s,t.rCumuProfitOrLoss=mn(t.uCumuProfitOrLoss/n*100,2)+"%",u+=t.uProfitOrLoss,t.uEquity=u,t.modeResult=t.uProfitOrLoss<0?"loss":"profit",o[e]=t,!1}else{if(r.High>=t.priceStopLoss)return t.timeEnd=r.time,t.priceEnd=t.priceStopLoss,t.uProfitOrLoss=(t.priceStart-t.priceEnd)*(t.uTrade/t.priceStart)-2*t.uFee,t.rProfitOrLoss=t.uProfitOrLoss/t.uTrade,s+=t.uProfitOrLoss,t.uCumuProfitOrLoss=s,t.rCumuProfitOrLoss=mn(t.uCumuProfitOrLoss/n*100,2)+"%",u+=t.uProfitOrLoss,t.uEquity=u,t.modeResult=t.uProfitOrLoss<0?"loss":"profit",o[e]=t,!1;if(r.Low<=t.priceTakeProfit)return t.timeEnd=r.time,t.priceEnd=t.priceTakeProfit,t.uProfitOrLoss=(t.priceStart-t.priceEnd)*(t.uTrade/t.priceStart)-2*t.uFee,t.rProfitOrLoss=t.uProfitOrLoss/t.uTrade,s+=t.uProfitOrLoss,t.uCumuProfitOrLoss=s,t.rCumuProfitOrLoss=mn(t.uCumuProfitOrLoss/n*100,2)+"%",u+=t.uProfitOrLoss,t.uEquity=u,t.modeResult=t.uProfitOrLoss<0?"loss":"profit",o[e]=t,!1}})});{let t=[];Hr(e,(e,r)=>{let n=null;n=Tn(o,r)?o[r]:e,t.push(n)}),e=t}return e})(l,w,{uIni:a.uIni}));let _={timeTest:t().format("YYYY-MM-DDTHH:mm:ssZ"),timeOhlcStart:m,timeOhlcEnd:b,uIni:st(a,"uIni","")};if(c){w=((t,e)=>Ve(e,e=>{if(!Gt(e.modeResult))return e;let r=t(e.timeStart),n=t(e.timeEnd),i=r.format("YYYY-MM-DD"),o=n.format("YYYY-MM-DD"),u=t(i,"YYYY-MM-DD"),s=t(o,"YYYY-MM-DD").diff(u,"day")+1;e.dayHold=s;let a=0;return 1+e.rProfitOrLoss>=0&&(a=Math.pow(1+e.rProfitOrLoss,1/e.dayHold)-1),e.rProfitOrLossDay=a,e}))(t,w);let e=Zu(t,a.uIni,w,m,b);_={..._,...e}}return{orders:w,summary:_}};function Wu(t){let r=null,n=function(t,e={}){let r=null,n=st(e,"fs"),i="";try{i=n.readFileSync(t,"utf8")}catch(t){r=t}return null!==r?{error:r}:{success:i}}(t,{fs:e});if(n.error)return n;let i=n.success,o=null;try{o=JSON.parse(i)}catch(t){r=t}return null!==r?{error:r}:{success:o}}function Ju(r,n=1){return function(t,e=1,r={}){let n=1,i=st(r,"path"),o=st(r,"fs");if(!bn(t,{fs:o}))throw new Error(`fd[${t}] is not a folder`);return null!==e&&Ur(e)&&(e=xr(e))<1&&(e=1),function t(r){let u=[];return bn(r,{fs:o})?(Hr(o.readdirSync(r),function(s){let a=i.resolve(r,s),f=null;try{f=o.statSync(a)}catch(t){}f&&f.isDirectory()?(u.push({isFolder:!0,level:n,path:a,name:i.basename(a)}),n+=1,(n<=e||null===e)&&(u=u.concat(t(a))),n-=1):u.push({isFolder:!1,level:n,path:a,name:i.basename(a)})}),u):u}(t)}(r,n,{path:t,fs:e})}let Ku={dlmSeps:" ║ ",dlmPkgs:" ⊙ "},Qu=(t,e={})=>{let r=st(e,"readContent",!1);if(!jn(t))return console.log(`invalid fd[${t}]`),[];let n=Ju(t);if(n=Gu(n,{isFolder:!1}),0===lr(n))return console.log(`fd[${t}] no files`),[];let i=[];return Hr(n,t=>{let e=function(t,e,r){return Gt(t)&&Gt(e)&&Ht(r)?String(t).replaceAll(e,r):""}(t.name,".json",""),n=cn(e,Ku.dlmPkgs),o=st(n,0,"");if(!Gt(o))return!0;let u=st(n,1,""),s=st(n,2,""),a=cn(o,Ku.dlmSeps),f=st(a,0,"");a=Du(a);let c=`${o}:${u}`,l={path:t.path,name:t.name,tkid:c,tid:o,levelNumTrade:u,rEquivalentCumuProfitOrLossFinalNormYear:s,mode:f,ps:a};if(r){let e=Wu(t.path);l.data=st(e,"success",null)}i.push(l)}),i};var Xu=Array.prototype.join;function ts(t,e){return null==t?"":Xu.call(t,e)}let es=(t,e,r,n)=>{let i=ts([r,...n],Ku.dlmSeps);return i=i.replaceAll(`${t}_`,""),i=i.replaceAll(`${e}_`,""),i=i.replaceAll("price_","p_"),i=i.replaceAll("index_","i_"),i=i.replaceAll("Ohlc_","o_"),i=i.replaceAll("Close_","c_"),i=i.replaceAll("Volumn_","v_"),i},rs=(t,e,r,n)=>{let i=ts([r,...Ve(n,t=>`${t.key}${t.sym}${t.th}`)],Ku.dlmSeps);return i=i.replaceAll(`${t}_`,""),i=i.replaceAll(`${e}_`,""),i=i.replaceAll("price_","p_"),i=i.replaceAll("index_","i_"),i=i.replaceAll("Ohlc_","o_"),i=i.replaceAll("Close_","c_"),i=i.replaceAll("Volumn_","v_"),i},ns=t=>(t=gu(t)).indexOf("%")<0?0:(t=Ar(t=t.replace("%","")),t/=100),is=t=>{if(!Nr(t))throw new Error(`numTrade[${t}] is not a number`);let e=0;return e=(t=xr(t))<=0?0:t<=5?1:t<=9?2:t<=24?11:t<=49?12:t<=74?13:t<=99?14:t<=249?101:t<=499?102:t<=749?103:t<=999?104:t<=1999?1001:t<=2999?1002:t<=3999?1003:t<=4999?1004:100,e},os=(t,e)=>{let r=xr(e.numTrade),n=t.uIni,i=e.uEquityFinal-n,o=ns(e.rEquivalentCumuProfitOrLossFinalNormYear);o=Math.min(Math.max(o,0),.5),o/=.5;let u=1-o,s=ns(e.rWin);s=Math.min(Math.max(s,0),1);let a=0;return a+=2*(1-s),a+=1*u,0===r&&(a+=1e6),i<=0&&(a+=1e6),a},us=(t,e,r,n,i,o)=>{let u=es(t,e,r,n),s=xr(o.numTrade),a=is(s),f=o.rEquivalentCumuProfitOrLossFinalNormYear;return`${u}${Ku.dlmPkgs}${a}${Ku.dlmPkgs}${f}.json`},ss=async(r,n,i,o,u,s,a,f,c,l={})=>{if(!Gt(i))throw new Error(`invalid fdOhlc[${i}]`);if(!Gt(o))throw new Error(`invalid fdParam[${o}]`);if(!Gt(u))throw new Error(`invalid timeStart[${u}]`);if(!Gt(s))throw new Error(`invalid timeEnd[${s}]`);if("long"!==a&&"short"!==a)throw new Error(`invalid mode[${a}]`);if(!Ln(f))throw new Error(`invalid keys[${f}]`);if(!Gt(c))throw new Error(`invalid fdData[${c}]`);let d=st(l,"keySettings","");if(!Gt(d))throw new Error(`invalid opt.keySettings[${d}]`);let h=st(l,"thsTp",null);Ln(h)||(h=[1,2,3,4,5,6,7,8,9,10]);let p=st(l,"thsSl",null);Ln(p)||(p=[1,2,3,4,5,6,7,8,9,10]);let v=st(l,"thNumTrade",null);Nr(v)||(v=1);let y=st(l,"thRWin",null);Nr(y)||(y=.5);let m=st(l,"thREquivalentCumuProfitOrLossFinalNormYear",null);Nr(m)||(m=.15);let g=st(l,"useShowLog",null),b=vn(i,o),w=st(n,`${d}.name`,""),_=st(n,`${d}.symbol`,""),j=st(n,`${d}.interval`,"");jn(c)||wn(c,{fs:e});let O=await b.buildGetTimeSeriesByTimeRange(u,s),S=es(w,j,a,f),$=[];{let t;t=p,t=Ve(t,t=>t/100),$.push({values:t,n:lr(t)}),t=h,t=Ve(t,t=>t/100),$.push({values:t,n:lr(t)})}Hr(f,()=>{let t=kn(-2,2,40);t=Ve(t,t=>t+10);let e=kn(-2,2,40);e=Ve(e,t=>t-10);let r=[...t,...e];$.push({values:r,n:lr(r)})});let E=0,M=1e20,N=await async function(t,e,r={}){Tu(t);let n=st(r,"Nl","");Ur(n)||(n=1e4),n=xr(n);let i=st(r,"Np","");Ur(i)||(i=40),i=xr(i);let o=lr(t),u=st(r,"NContiguous","");Ur(u)||(u=100),u=xr(u);let s=st(r,"NRepeat","");Ur(s)||(s=1),s=xr(s);let a=st(r,"NCore","");Ur(a)||(a=1e6),a=xr(a);let f=st(r,"ModeOutLimit","");yu(f,["Mapping","Limit","Random"])||(f="Mapping");let c=st(r,"UseRepeat","");$n(c)||(c=!0);let l=st(r,"UseImmigration","");$n(l)||(l=!0);let d=st(r,"LocalSearchMethod","");yu(d,["None","Neighbor","TA","SA","OneGold","Gold","NelderMead"])||(d="NelderMead");let h=st(r,"funGetBetter"),p=st(r,"funEndLoop"),v=st(r,"funGenerationBefore"),y=st(r,"funGenerationAfter"),m=st(r,"psoC1Start","");Nr(m)||(m=2),m=Ar(m);let g=st(r,"psoC1End","");Nr(g)||(g=2),g=Ar(g);let b=st(r,"psoC1Dynamic","");Nr(b)||(b=0),b=Ar(b);let w=st(r,"psoC2Start","");Nr(w)||(w=2),w=Ar(w);let _=st(r,"psoC2End","");Nr(_)||(_=2),_=Ar(_);let j=st(r,"psoC2Dynamic","");Nr(j)||(j=0),j=Ar(j);let O=st(r,"psoBeta","");Nr(O)||(O=.9),O=Ar(O);let S=st(r,"psoGamma","");Nr(S)||(S=.5),S=Ar(S);let $=st(r,"psoInertiaMin","");Nr($)||($=.4),$=Ar($);let E=0,M=0,N=0,A=async(t,r)=>{N++;let n=Ve(t.ps,"value"),i=e(n);return pu(i)&&(i=await i),{ps:t.ps,fitness:i}},x=async e=>{let r=ju(t),n=await A(r),i=[];for(let e=0;e<o;e++){let r=t[e].n;i.push(_u(-(r-1),r-1))}let u=(1+Math.random())*$;return{ps:n.ps,fitness:n.fitness,bs:hu(n),velocity:i,inertia:u}},T=null,P=[],L="",k=0,F=0,D=[],C=null;for(let t=0;t<i;t++){let t=await x();D.push(t)}D=Lo(D,"fitness"),C={ps:hu(D[0].ps),fitness:D[0].fitness},P.push(hu(D[0])),T={ps:hu(D[0].ps),fitness:D[0].fitness};let R=async(e,r)=>{let n,u=e+r;n=u>4?2/Math.abs(2-u-Math.sqrt(u*u-4*u)):1;for(let u=0;u<i;u++){let i=D[u],s=Math.random(),a=Math.random();for(let u=0;u<o;u++){let o=0;o+=i.inertia*i.velocity[u],o+=e*s*(i.bs.ps[u].ind-i.ps[u].ind),o+=r*a*(C.ps[u].ind-i.ps[u].ind),o*=n;let f=S*(t[u].n-1),c=-f;i.velocity[u]=Math.max(Math.min(o,f),c)}let c=O*i.inertia;i.inertia=Math.max(Math.min(c,1e4),$);for(let e=0;e<o;e++){let r=Math.round(i.ps[e].ind+i.velocity[e]);r=Ou(r,t[e].n-1,f),i.ps[e].ind=r,i.ps[e].value=t[e].values[r]}let l=await A(i);i.fitness=l.fitness,i.bs.fitness>i.fitness&&(i.bs={ps:hu(i.ps),fitness:i.fitness}),C.fitness>i.fitness&&(C={ps:hu(i.ps),fitness:i.fitness})}},I=-1;for(;;){I++;let r={psoC1:$u(m,g,b,M,u),psoC2:$u(w,_,j,M,u),psoBeta:O,psoGamma:S,psoInertiaMin:$,ModeOutLimit:f,LocalSearchMethod:d};if(ln(v)){let t=await v({params:hu(r)});t&&t.params&&(r={...r,...t.params})}O=r.psoBeta,S=r.psoGamma,$=r.psoInertiaMin,f=r.ModeOutLimit,d=r.LocalSearchMethod;let o=r.psoC1,q=r.psoC2;await R(o,q),D=Lo(D,"fitness");let z=async()=>{for(let t=i-1;t>=1;t--)if(Su(D[t-1],D[t])){let e=await x();D[t]=e}D=Lo(D,"fitness"),C.fitness>D[0].fitness&&(C={ps:hu(D[0].ps),fitness:D[0].fitness})};l&&await z();let U=async()=>{let r={ps:hu(D[0].ps),fitness:D[0].fitness},n=await Fu(d,r,t,e,A,f);n.fitness>=D[0].fitness||(D[0].ps=n.ps,D[0].fitness=n.fitness,C.fitness>n.fitness&&(C={ps:hu(n.ps),fitness:n.fitness}))};await U(),P.push(hu(D[0])),T.fitness>D[0].fitness?(T={ps:hu(D[0].ps),fitness:D[0].fitness},ln(h)&&h(hu(T),I),M=0):M+=1;let Y=async()=>{for(let t=1;t<=i-1;t++){let e=await x();D[t]=e}D=Lo(D,"fitness"),M=0,E+=1};if(c&&M>=u&&E<s&&await Y(),I>=n?L=`stop by Nl[${n}]`:M>=u?L=`stop by iContinue[${M}] >= NContiguous[${u}]`:N>=a&&(L=`stop by iExecute[${N}] >= NCore[${a}]`),ln(y)&&await y({params:hu(r),childrenBestFitness:D[0].fitness}),Gt(L)){k=I,F=N;break}ln(p)&&p(hu(D),hu(T),I)}return{bestSolution:T,hists:P,stopMode:L,stopNl:k,stopIteration:k,stopExecutions:F}}($,async n=>{E++;let i=n[0];i=Er(i,3);let o=n[1];o=Er(o,3);let u=Ve(f,(t,e)=>{let r=e+2,i=st(n,r,null);if(null===i)throw console.log("xs",n),console.log("ix",r),console.log("key",t),console.log("i",e),new Error("invalid x");let o="",u=null;return i<0?(o="<",u=i+10,u=go(u,3)):(o=">",u=i-10,u=go(u,3)),{key:t,sym:o,th:u}}),s=rs(w,j,a,u),l={tid:S,sid:s,name:w,symbol:_,interval:j,keyOhlc:`${w}_price_${j}`,mode:a,conds:u,settings:{uIni:1e3,uTrade:1,rTakeProfit:o,rStopLoss:i,rFee:5e-4}},d=await Vu(r,l,O),h=xr(d.summary.numTrade),p=ns(d.summary.rWin),b=ns(d.summary.rEquivalentCumuProfitOrLossFinalNormYear),$=os(l.settings,d.summary),N={...l,summary:d.summary,fitness:$},A={"方向":N.mode,"每次下單金額":N.settings.uTrade,"止盈":mn(100*N.settings.rTakeProfit,1)+"%","止損":mn(100*N.settings.rStopLoss,1)+"%","最大持倉比例":N.summary.rTradeAllMax,"交易次數":N.summary.numTrade,"最大回撤率":N.summary.rDrawdownMax,"勝率":N.summary.rWin,"夏普值":mn(N.summary.rSharpe,4),"最終盈虧":N.summary.rCumuProfitOrLossFinal,"最終等效盈虧":N.summary.rEquivalentCumuProfitOrLossFinal,"最終等效年化盈虧":N.summary.rEquivalentCumuProfitOrLossFinalNormYear,fitness:N.fitness};if(M>$&&(g&&console.log(E,"更新最佳解",A),M=$),h>=v&&p>=y&&b>=m){g&&console.log(E,"可用參數組",A);let r={};Hr(Qu(c,{readContent:!1}),t=>{r[t.tkid]=t});let n=is(h),i=`${S}:${n}`,o=!1,u=b;if(Tn(r,i)){let t=ns(r[i].rEquivalentCumuProfitOrLossFinalNormYear);u>t&&(o=!0,g&&console.log("刪除較差策略...",`${u} > ${t}`,r[i].path),function(t){_n(t,{fs:e})}(r[i].path))}else o=!0;if(o){let e=us(w,j,a,f,0,d.summary);xn(t.resolve(c,e),N,{useFormat:!0})}}return $},{...l});return g&&(console.log("bestSolution",N.bestSolution),console.log("stopMode",N.stopMode),console.log("stopIteration",N.stopIteration),console.log("stopExecutions",N.stopExecutions)),N},as=async(t,e,r,n,i,o,u,s,a,f={})=>{if(!Gt(r))throw new Error(`invalid fdOhlc[${r}]`);if(!Gt(n))throw new Error(`invalid fdParam[${n}]`);if(!Gt(i))throw new Error(`invalid timeStart[${i}]`);if(!Gt(o))throw new Error(`invalid timeEnd[${o}]`);if("long"!==u&&"short"!==u)throw new Error(`invalid mode[${u}]`);if(!ln(s))throw new Error("funPickKeys is not a function");if(!Gt(a))throw new Error(`invalid fdData[${a}]`);let c=st(f,"funFilterKeysNorm",null),l=st(f,"funFilterKeysIndex",null),d=st(f,"funFilterKeysVolumn",null),h=vn(r,n).getKeysParam(),p=[],v=[],y=[];Hr(h,t=>{let e=0===t.indexOf("index_"),r=t.indexOf("_vbs_")>=0,n=!(e||r);e?p.push(t):r?v.push(t):n&&y.push(t)}),ln(c)&&(y=await c(y)),ln(l)&&(p=await l(p)),ln(d)&&(v=await d(v));let m=s({keysNorm:y,keysIndex:p,keysVolumn:v});await ss(t,e,r,n,i,o,u,m,a,f)},fs=async(t,e,r,n,i,o,u,s,a,f={})=>{if(!Gt(r))throw new Error(`invalid fdOhlc[${r}]`);if(!Gt(n))throw new Error(`invalid fdParam[${n}]`);if(!Gt(i))throw new Error(`invalid timeStart[${i}]`);if(!Gt(o))throw new Error(`invalid timeEnd[${o}]`);if("long"!==u&&"short"!==u)throw new Error(`invalid mode[${u}]`);if(!Gt(s))throw new Error(`invalid comps[${s}]`);if(!Gt(a))throw new Error(`invalid fdData[${a}]`);let c=cn(s,",");if(3!==lr(c))throw new Error(`comps[${s}]非預期`);c=Ve(c,xr);let l=(t,e)=>Ve(Yr(0,lr(t)-1,e),e=>st(t,e));await as(t,e,r,n,i,o,u,({keysNorm:t,keysIndex:e,keysVolumn:r})=>{let n=[];return c[0]>=1&&(n=[...n,...l(t,c[0])]),c[1]>=1&&(n=[...n,...l(e,c[1])]),c[2]>=1&&(n=[...n,...l(r,c[2])]),n},a,f)};return{estimFinder:async(t,e,n,i,o,u={})=>{if(!Gt(n))throw new Error(`invalid fdOhlc[${n}]`);if(!Gt(i))throw new Error(`invalid fdParam[${i}]`);if(!Gt(o))throw new Error(`invalid fdData[${o}]`);let s=st(u,"mode",null),a=st(u,"timeStart",null),f=st(u,"timeEnd",null),c=st(u,"comps",null),l="";l=Gt(s)?s:Math.random()<.5?"long":"short";let d="2022-07-01T00:00:00";Gt(a)&&(d=a);let h="";h=Gt(f)?f:"long"===l?"2025-04-08T00:00:00":"2025-10-06T00:00:00";let p=["2,0,0","3,0,0","4,0,0","2,1,0","3,1,0","4,1,0","2,2,0","3,2,0","4,2,0","2,0,1","3,0,1","4,0,1","2,1,1","3,1,1","4,1,1","2,2,1","3,2,1","4,2,1"],v="";var y;v=Gt(c)?c:(r(y=p)?lt:Bt)(y),await fs(t,e,n,i,d,h,l,v,o,u)},estimComps:fs,estimPicks:as,estimKeys:ss,readStrategies:Qu,genTid:es,genSid:rs,genStrategyFileName:us,calcLevelNumTrade:is,calcFitness:os,cont:Ku}});
18
+ */var Tn,kn,Fn=9e15,Dn=1e9,Bn="0123456789abcdef",In="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",qn="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",Un={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-Fn,maxE:Fn,crypto:!1},Gn=!0,zn="[DecimalError] ",Hn=zn+"Invalid argument: ",Yn=zn+"Precision limit exceeded",Zn=zn+"crypto unavailable",Vn="[object Decimal]",Wn=Math.floor,Jn=Math.pow,Kn=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,Xn=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,Qn=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,ti=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,ei=1e7,ri=In.length-1,ni=qn.length-1,ii={toStringTag:Vn};function oi(t){var e,r,n,i=t.length-1,o="",s=t[0];if(i>0){for(o+=s,e=1;e<i;e++)(r=7-(n=t[e]+"").length)&&(o+=mi(r)),o+=n;(r=7-(n=(s=t[e])+"").length)&&(o+=mi(r))}else if(0===s)return"0";for(;s%10==0;)s/=10;return o+s}function si(t,e,r){if(t!==~~t||t<e||t>r)throw Error(Hn+t)}function ui(t,e,r,n){var i,o,s,u;for(o=t[0];o>=10;o/=10)--e;return--e<0?(e+=7,i=0):(i=Math.ceil((e+1)/7),e%=7),o=Jn(10,7-e),u=t[i]%o|0,null==n?e<3?(0==e?u=u/100|0:1==e&&(u=u/10|0),s=r<4&&99999==u||r>3&&49999==u||5e4==u||0==u):s=(r<4&&u+1==o||r>3&&u+1==o/2)&&(t[i+1]/o/100|0)==Jn(10,e-2)-1||(u==o/2||0==u)&&!(t[i+1]/o/100|0):e<4?(0==e?u=u/1e3|0:1==e?u=u/100|0:2==e&&(u=u/10|0),s=(n||r<4)&&9999==u||!n&&r>3&&4999==u):s=((n||r<4)&&u+1==o||!n&&r>3&&u+1==o/2)&&(t[i+1]/o/1e3|0)==Jn(10,e-3)-1,s}function ai(t,e,r){for(var n,i,o=[0],s=0,u=t.length;s<u;){for(i=o.length;i--;)o[i]*=e;for(o[0]+=Bn.indexOf(t.charAt(s++)),n=0;n<o.length;n++)o[n]>r-1&&(void 0===o[n+1]&&(o[n+1]=0),o[n+1]+=o[n]/r|0,o[n]%=r)}return o.reverse()}ii.absoluteValue=ii.abs=function(){var t=new this.constructor(this);return t.s<0&&(t.s=1),fi(t)},ii.ceil=function(){return fi(new this.constructor(this),this.e+1,2)},ii.clampedTo=ii.clamp=function(t,e){var r=this,n=r.constructor;if(t=new n(t),e=new n(e),!t.s||!e.s)return new n(NaN);if(t.gt(e))throw Error(Hn+e);return r.cmp(t)<0?t:r.cmp(e)>0?e:new n(r)},ii.comparedTo=ii.cmp=function(t){var e,r,n,i,o=this,s=o.d,u=(t=new o.constructor(t)).d,a=o.s,l=t.s;if(!s||!u)return a&&l?a!==l?a:s===u?0:!s^a<0?1:-1:NaN;if(!s[0]||!u[0])return s[0]?a:u[0]?-l:0;if(a!==l)return a;if(o.e!==t.e)return o.e>t.e^a<0?1:-1;for(e=0,r=(n=s.length)<(i=u.length)?n:i;e<r;++e)if(s[e]!==u[e])return s[e]>u[e]^a<0?1:-1;return n===i?0:n>i^a<0?1:-1},ii.cosine=ii.cos=function(){var t,e,r=this,n=r.constructor;return r.d?r.d[0]?(t=n.precision,e=n.rounding,n.precision=t+Math.max(r.e,r.sd())+7,n.rounding=1,r=function(t,e){var r,n,i;if(e.isZero())return e;n=e.d.length,n<32?i=(1/Ei(4,r=Math.ceil(n/3))).toString():(r=16,i="2.3283064365386962890625e-10");t.precision+=r,e=Si(t,1,e.times(i),new t(1));for(var o=r;o--;){var s=e.times(e);e=s.times(s).minus(s).times(8).plus(1)}return t.precision-=r,e}(n,$i(n,r)),n.precision=t,n.rounding=e,fi(2==kn||3==kn?r.neg():r,t,e,!0)):new n(1):new n(NaN)},ii.cubeRoot=ii.cbrt=function(){var t,e,r,n,i,o,s,u,a,l,f=this,c=f.constructor;if(!f.isFinite()||f.isZero())return new c(f);for(Gn=!1,(o=f.s*Jn(f.s*f,1/3))&&Math.abs(o)!=1/0?n=new c(o.toString()):(r=oi(f.d),(o=((t=f.e)-r.length+1)%3)&&(r+=1==o||-2==o?"0":"00"),o=Jn(r,1/3),t=Wn((t+1)/3)-(t%3==(t<0?-1:2)),(n=new c(r=o==1/0?"5e"+t:(r=o.toExponential()).slice(0,r.indexOf("e")+1)+t)).s=f.s),s=(t=c.precision)+3;;)if(l=(a=(u=n).times(u).times(u)).plus(f),n=li(l.plus(f).times(u),l.plus(a),s+2,1),oi(u.d).slice(0,s)===(r=oi(n.d)).slice(0,s)){if("9999"!=(r=r.slice(s-3,s+1))&&(i||"4999"!=r)){+r&&(+r.slice(1)||"5"!=r.charAt(0))||(fi(n,t+1,1),e=!n.times(n).times(n).eq(f));break}if(!i&&(fi(u,t+1,0),u.times(u).times(u).eq(f))){n=u;break}s+=4,i=1}return Gn=!0,fi(n,t,c.rounding,e)},ii.decimalPlaces=ii.dp=function(){var t,e=this.d,r=NaN;if(e){if(r=7*((t=e.length-1)-Wn(this.e/7)),t=e[t])for(;t%10==0;t/=10)r--;r<0&&(r=0)}return r},ii.dividedBy=ii.div=function(t){return li(this,new this.constructor(t))},ii.dividedToIntegerBy=ii.divToInt=function(t){var e=this.constructor;return fi(li(this,new e(t),0,1,1),e.precision,e.rounding)},ii.equals=ii.eq=function(t){return 0===this.cmp(t)},ii.floor=function(){return fi(new this.constructor(this),this.e+1,3)},ii.greaterThan=ii.gt=function(t){return this.cmp(t)>0},ii.greaterThanOrEqualTo=ii.gte=function(t){var e=this.cmp(t);return 1==e||0===e},ii.hyperbolicCosine=ii.cosh=function(){var t,e,r,n,i,o=this,s=o.constructor,u=new s(1);if(!o.isFinite())return new s(o.s?1/0:NaN);if(o.isZero())return u;r=s.precision,n=s.rounding,s.precision=r+Math.max(o.e,o.sd())+4,s.rounding=1,(i=o.d.length)<32?e=(1/Ei(4,t=Math.ceil(i/3))).toString():(t=16,e="2.3283064365386962890625e-10"),o=Si(s,1,o.times(e),new s(1),!0);for(var a,l=t,f=new s(8);l--;)a=o.times(o),o=u.minus(a.times(f.minus(a.times(f))));return fi(o,s.precision=r,s.rounding=n,!0)},ii.hyperbolicSine=ii.sinh=function(){var t,e,r,n,i=this,o=i.constructor;if(!i.isFinite()||i.isZero())return new o(i);if(e=o.precision,r=o.rounding,o.precision=e+Math.max(i.e,i.sd())+4,o.rounding=1,(n=i.d.length)<3)i=Si(o,2,i,i,!0);else{t=(t=1.4*Math.sqrt(n))>16?16:0|t,i=Si(o,2,i=i.times(1/Ei(5,t)),i,!0);for(var s,u=new o(5),a=new o(16),l=new o(20);t--;)s=i.times(i),i=i.times(u.plus(s.times(a.times(s).plus(l))))}return o.precision=e,o.rounding=r,fi(i,e,r,!0)},ii.hyperbolicTangent=ii.tanh=function(){var t,e,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(t=n.precision,e=n.rounding,n.precision=t+7,n.rounding=1,li(r.sinh(),r.cosh(),n.precision=t,n.rounding=e)):new n(r.s)},ii.inverseCosine=ii.acos=function(){var t=this,e=t.constructor,r=t.abs().cmp(1),n=e.precision,i=e.rounding;return-1!==r?0===r?t.isNeg()?pi(e,n,i):new e(0):new e(NaN):t.isZero()?pi(e,n+4,i).times(.5):(e.precision=n+6,e.rounding=1,t=new e(1).minus(t).div(t.plus(1)).sqrt().atan(),e.precision=n,e.rounding=i,t.times(2))},ii.inverseHyperbolicCosine=ii.acosh=function(){var t,e,r=this,n=r.constructor;return r.lte(1)?new n(r.eq(1)?0:NaN):r.isFinite()?(t=n.precision,e=n.rounding,n.precision=t+Math.max(Math.abs(r.e),r.sd())+4,n.rounding=1,Gn=!1,r=r.times(r).minus(1).sqrt().plus(r),Gn=!0,n.precision=t,n.rounding=e,r.ln()):new n(r)},ii.inverseHyperbolicSine=ii.asinh=function(){var t,e,r=this,n=r.constructor;return!r.isFinite()||r.isZero()?new n(r):(t=n.precision,e=n.rounding,n.precision=t+2*Math.max(Math.abs(r.e),r.sd())+6,n.rounding=1,Gn=!1,r=r.times(r).plus(1).sqrt().plus(r),Gn=!0,n.precision=t,n.rounding=e,r.ln())},ii.inverseHyperbolicTangent=ii.atanh=function(){var t,e,r,n,i=this,o=i.constructor;return i.isFinite()?i.e>=0?new o(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(t=o.precision,e=o.rounding,n=i.sd(),Math.max(n,t)<2*-i.e-1?fi(new o(i),t,e,!0):(o.precision=r=n-i.e,i=li(i.plus(1),new o(1).minus(i),r+t,1),o.precision=t+4,o.rounding=1,i=i.ln(),o.precision=t,o.rounding=e,i.times(.5))):new o(NaN)},ii.inverseSine=ii.asin=function(){var t,e,r,n,i=this,o=i.constructor;return i.isZero()?new o(i):(e=i.abs().cmp(1),r=o.precision,n=o.rounding,-1!==e?0===e?((t=pi(o,r+4,n).times(.5)).s=i.s,t):new o(NaN):(o.precision=r+6,o.rounding=1,i=i.div(new o(1).minus(i.times(i)).sqrt().plus(1)).atan(),o.precision=r,o.rounding=n,i.times(2)))},ii.inverseTangent=ii.atan=function(){var t,e,r,n,i,o,s,u,a,l=this,f=l.constructor,c=f.precision,d=f.rounding;if(l.isFinite()){if(l.isZero())return new f(l);if(l.abs().eq(1)&&c+4<=ni)return(s=pi(f,c+4,d).times(.25)).s=l.s,s}else{if(!l.s)return new f(NaN);if(c+4<=ni)return(s=pi(f,c+4,d).times(.5)).s=l.s,s}for(f.precision=u=c+10,f.rounding=1,t=r=Math.min(28,u/7+2|0);t;--t)l=l.div(l.times(l).plus(1).sqrt().plus(1));for(Gn=!1,e=Math.ceil(u/7),n=1,a=l.times(l),s=new f(l),i=l;-1!==t;)if(i=i.times(a),o=s.minus(i.div(n+=2)),i=i.times(a),void 0!==(s=o.plus(i.div(n+=2))).d[e])for(t=e;s.d[t]===o.d[t]&&t--;);return r&&(s=s.times(2<<r-1)),Gn=!0,fi(s,f.precision=c,f.rounding=d,!0)},ii.isFinite=function(){return!!this.d},ii.isInteger=ii.isInt=function(){return!!this.d&&Wn(this.e/7)>this.d.length-2},ii.isNaN=function(){return!this.s},ii.isNegative=ii.isNeg=function(){return this.s<0},ii.isPositive=ii.isPos=function(){return this.s>0},ii.isZero=function(){return!!this.d&&0===this.d[0]},ii.lessThan=ii.lt=function(t){return this.cmp(t)<0},ii.lessThanOrEqualTo=ii.lte=function(t){return this.cmp(t)<1},ii.logarithm=ii.log=function(t){var e,r,n,i,o,s,u,a,l=this,f=l.constructor,c=f.precision,d=f.rounding;if(null==t)t=new f(10),e=!0;else{if(r=(t=new f(t)).d,t.s<0||!r||!r[0]||t.eq(1))return new f(NaN);e=t.eq(10)}if(r=l.d,l.s<0||!r||!r[0]||l.eq(1))return new f(r&&!r[0]?-1/0:1!=l.s?NaN:r?0:1/0);if(e)if(r.length>1)o=!0;else{for(i=r[0];i%10==0;)i/=10;o=1!==i}if(Gn=!1,s=Mi(l,u=c+5),n=e?hi(f,u+10):Mi(t,u),ui((a=li(s,n,u,1)).d,i=c,d))do{if(s=Mi(l,u+=10),n=e?hi(f,u+10):Mi(t,u),a=li(s,n,u,1),!o){+oi(a.d).slice(i+1,i+15)+1==1e14&&(a=fi(a,c+1,0));break}}while(ui(a.d,i+=10,d));return Gn=!0,fi(a,c,d)},ii.minus=ii.sub=function(t){var e,r,n,i,o,s,u,a,l,f,c,d,h=this,p=h.constructor;if(t=new p(t),!h.d||!t.d)return h.s&&t.s?h.d?t.s=-t.s:t=new p(t.d||h.s!==t.s?h:NaN):t=new p(NaN),t;if(h.s!=t.s)return t.s=-t.s,h.plus(t);if(l=h.d,d=t.d,u=p.precision,a=p.rounding,!l[0]||!d[0]){if(d[0])t.s=-t.s;else{if(!l[0])return new p(3===a?-0:0);t=new p(h)}return Gn?fi(t,u,a):t}if(r=Wn(t.e/7),f=Wn(h.e/7),l=l.slice(),o=f-r){for((c=o<0)?(e=l,o=-o,s=d.length):(e=d,r=f,s=l.length),o>(n=Math.max(Math.ceil(u/7),s)+2)&&(o=n,e.length=1),e.reverse(),n=o;n--;)e.push(0);e.reverse()}else{for((c=(n=l.length)<(s=d.length))&&(s=n),n=0;n<s;n++)if(l[n]!=d[n]){c=l[n]<d[n];break}o=0}for(c&&(e=l,l=d,d=e,t.s=-t.s),s=l.length,n=d.length-s;n>0;--n)l[s++]=0;for(n=d.length;n>o;){if(l[--n]<d[n]){for(i=n;i&&0===l[--i];)l[i]=ei-1;--l[i],l[n]+=ei}l[n]-=d[n]}for(;0===l[--s];)l.pop();for(;0===l[0];l.shift())--r;return l[0]?(t.d=l,t.e=di(l,r),Gn?fi(t,u,a):t):new p(3===a?-0:0)},ii.modulo=ii.mod=function(t){var e,r=this,n=r.constructor;return t=new n(t),!r.d||!t.s||t.d&&!t.d[0]?new n(NaN):!t.d||r.d&&!r.d[0]?fi(new n(r),n.precision,n.rounding):(Gn=!1,9==n.modulo?(e=li(r,t.abs(),0,3,1)).s*=t.s:e=li(r,t,0,n.modulo,1),e=e.times(t),Gn=!0,r.minus(e))},ii.naturalExponential=ii.exp=function(){return bi(this)},ii.naturalLogarithm=ii.ln=function(){return Mi(this)},ii.negated=ii.neg=function(){var t=new this.constructor(this);return t.s=-t.s,fi(t)},ii.plus=ii.add=function(t){var e,r,n,i,o,s,u,a,l,f,c=this,d=c.constructor;if(t=new d(t),!c.d||!t.d)return c.s&&t.s?c.d||(t=new d(t.d||c.s===t.s?c:NaN)):t=new d(NaN),t;if(c.s!=t.s)return t.s=-t.s,c.minus(t);if(l=c.d,f=t.d,u=d.precision,a=d.rounding,!l[0]||!f[0])return f[0]||(t=new d(c)),Gn?fi(t,u,a):t;if(o=Wn(c.e/7),n=Wn(t.e/7),l=l.slice(),i=o-n){for(i<0?(r=l,i=-i,s=f.length):(r=f,n=o,s=l.length),i>(s=(o=Math.ceil(u/7))>s?o+1:s+1)&&(i=s,r.length=1),r.reverse();i--;)r.push(0);r.reverse()}for((s=l.length)-(i=f.length)<0&&(i=s,r=f,f=l,l=r),e=0;i;)e=(l[--i]=l[i]+f[i]+e)/ei|0,l[i]%=ei;for(e&&(l.unshift(e),++n),s=l.length;0==l[--s];)l.pop();return t.d=l,t.e=di(l,n),Gn?fi(t,u,a):t},ii.precision=ii.sd=function(t){var e,r=this;if(void 0!==t&&t!==!!t&&1!==t&&0!==t)throw Error(Hn+t);return r.d?(e=vi(r.d),t&&r.e+1>e&&(e=r.e+1)):e=NaN,e},ii.round=function(){var t=this,e=t.constructor;return fi(new e(t),t.e+1,e.rounding)},ii.sine=ii.sin=function(){var t,e,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(t=n.precision,e=n.rounding,n.precision=t+Math.max(r.e,r.sd())+7,n.rounding=1,r=function(t,e){var r,n=e.d.length;if(n<3)return e.isZero()?e:Si(t,2,e,e);r=(r=1.4*Math.sqrt(n))>16?16:0|r,e=e.times(1/Ei(5,r)),e=Si(t,2,e,e);for(var i,o=new t(5),s=new t(16),u=new t(20);r--;)i=e.times(e),e=e.times(o.plus(i.times(s.times(i).minus(u))));return e}(n,$i(n,r)),n.precision=t,n.rounding=e,fi(kn>2?r.neg():r,t,e,!0)):new n(NaN)},ii.squareRoot=ii.sqrt=function(){var t,e,r,n,i,o,s=this,u=s.d,a=s.e,l=s.s,f=s.constructor;if(1!==l||!u||!u[0])return new f(!l||l<0&&(!u||u[0])?NaN:u?s:1/0);for(Gn=!1,0==(l=Math.sqrt(+s))||l==1/0?(((e=oi(u)).length+a)%2==0&&(e+="0"),l=Math.sqrt(e),a=Wn((a+1)/2)-(a<0||a%2),n=new f(e=l==1/0?"5e"+a:(e=l.toExponential()).slice(0,e.indexOf("e")+1)+a)):n=new f(l.toString()),r=(a=f.precision)+3;;)if(n=(o=n).plus(li(s,o,r+2,1)).times(.5),oi(o.d).slice(0,r)===(e=oi(n.d)).slice(0,r)){if("9999"!=(e=e.slice(r-3,r+1))&&(i||"4999"!=e)){+e&&(+e.slice(1)||"5"!=e.charAt(0))||(fi(n,a+1,1),t=!n.times(n).eq(s));break}if(!i&&(fi(o,a+1,0),o.times(o).eq(s))){n=o;break}r+=4,i=1}return Gn=!0,fi(n,a,f.rounding,t)},ii.tangent=ii.tan=function(){var t,e,r=this,n=r.constructor;return r.isFinite()?r.isZero()?new n(r):(t=n.precision,e=n.rounding,n.precision=t+10,n.rounding=1,(r=r.sin()).s=1,r=li(r,new n(1).minus(r.times(r)).sqrt(),t+10,0),n.precision=t,n.rounding=e,fi(2==kn||4==kn?r.neg():r,t,e,!0)):new n(NaN)},ii.times=ii.mul=function(t){var e,r,n,i,o,s,u,a,l,f=this,c=f.constructor,d=f.d,h=(t=new c(t)).d;if(t.s*=f.s,!(d&&d[0]&&h&&h[0]))return new c(!t.s||d&&!d[0]&&!h||h&&!h[0]&&!d?NaN:d&&h?0*t.s:t.s/0);for(r=Wn(f.e/7)+Wn(t.e/7),(a=d.length)<(l=h.length)&&(o=d,d=h,h=o,s=a,a=l,l=s),o=[],n=s=a+l;n--;)o.push(0);for(n=l;--n>=0;){for(e=0,i=a+n;i>n;)u=o[i]+h[n]*d[i-n-1]+e,o[i--]=u%ei|0,e=u/ei|0;o[i]=(o[i]+e)%ei|0}for(;!o[--s];)o.pop();return e?++r:o.shift(),t.d=o,t.e=di(o,r),Gn?fi(t,c.precision,c.rounding):t},ii.toBinary=function(t,e){return Ni(this,2,t,e)},ii.toDecimalPlaces=ii.toDP=function(t,e){var r=this,n=r.constructor;return r=new n(r),void 0===t?r:(si(t,0,Dn),void 0===e?e=n.rounding:si(e,0,8),fi(r,t+r.e+1,e))},ii.toExponential=function(t,e){var r,n=this,i=n.constructor;return void 0===t?r=ci(n,!0):(si(t,0,Dn),void 0===e?e=i.rounding:si(e,0,8),r=ci(n=fi(new i(n),t+1,e),!0,t+1)),n.isNeg()&&!n.isZero()?"-"+r:r},ii.toFixed=function(t,e){var r,n,i=this,o=i.constructor;return void 0===t?r=ci(i):(si(t,0,Dn),void 0===e?e=o.rounding:si(e,0,8),r=ci(n=fi(new o(i),t+i.e+1,e),!1,t+n.e+1)),i.isNeg()&&!i.isZero()?"-"+r:r},ii.toFraction=function(t){var e,r,n,i,o,s,u,a,l,f,c,d,h=this,p=h.d,v=h.constructor;if(!p)return new v(h);if(l=r=new v(1),n=a=new v(0),s=(o=(e=new v(n)).e=vi(p)-h.e-1)%7,e.d[0]=Jn(10,s<0?7+s:s),null==t)t=o>0?e:l;else{if(!(u=new v(t)).isInt()||u.lt(l))throw Error(Hn+u);t=u.gt(e)?o>0?e:l:u}for(Gn=!1,u=new v(oi(p)),f=v.precision,v.precision=o=7*p.length*2;c=li(u,e,0,1,1),1!=(i=r.plus(c.times(n))).cmp(t);)r=n,n=i,i=l,l=a.plus(c.times(i)),a=i,i=e,e=u.minus(c.times(i)),u=i;return i=li(t.minus(r),n,0,1,1),a=a.plus(i.times(l)),r=r.plus(i.times(n)),a.s=l.s=h.s,d=li(l,n,o,1).minus(h).abs().cmp(li(a,r,o,1).minus(h).abs())<1?[l,n]:[a,r],v.precision=f,Gn=!0,d},ii.toHexadecimal=ii.toHex=function(t,e){return Ni(this,16,t,e)},ii.toNearest=function(t,e){var r=this,n=r.constructor;if(r=new n(r),null==t){if(!r.d)return r;t=new n(1),e=n.rounding}else{if(t=new n(t),void 0===e?e=n.rounding:si(e,0,8),!r.d)return t.s?r:t;if(!t.d)return t.s&&(t.s=r.s),t}return t.d[0]?(Gn=!1,r=li(r,t,0,e,1).times(t),Gn=!0,fi(r)):(t.s=r.s,r=t),r},ii.toNumber=function(){return+this},ii.toOctal=function(t,e){return Ni(this,8,t,e)},ii.toPower=ii.pow=function(t){var e,r,n,i,o,s,u=this,a=u.constructor,l=+(t=new a(t));if(!(u.d&&t.d&&u.d[0]&&t.d[0]))return new a(Jn(+u,l));if((u=new a(u)).eq(1))return u;if(n=a.precision,o=a.rounding,t.eq(1))return fi(u,n,o);if((e=Wn(t.e/7))>=t.d.length-1&&(r=l<0?-l:l)<=9007199254740991)return i=yi(a,u,r,n),t.s<0?new a(1).div(i):fi(i,n,o);if((s=u.s)<0){if(e<t.d.length-1)return new a(NaN);if(1&t.d[e]||(s=1),0==u.e&&1==u.d[0]&&1==u.d.length)return u.s=s,u}return(e=0!=(r=Jn(+u,l))&&isFinite(r)?new a(r+"").e:Wn(l*(Math.log("0."+oi(u.d))/Math.LN10+u.e+1)))>a.maxE+1||e<a.minE-1?new a(e>0?s/0:0):(Gn=!1,a.rounding=u.s=1,r=Math.min(12,(e+"").length),(i=bi(t.times(Mi(u,n+r)),n)).d&&ui((i=fi(i,n+5,1)).d,n,o)&&(e=n+10,+oi((i=fi(bi(t.times(Mi(u,e+r)),e),e+5,1)).d).slice(n+1,n+15)+1==1e14&&(i=fi(i,n+1,0))),i.s=s,Gn=!0,a.rounding=o,fi(i,n,o))},ii.toPrecision=function(t,e){var r,n=this,i=n.constructor;return void 0===t?r=ci(n,n.e<=i.toExpNeg||n.e>=i.toExpPos):(si(t,1,Dn),void 0===e?e=i.rounding:si(e,0,8),r=ci(n=fi(new i(n),t,e),t<=n.e||n.e<=i.toExpNeg,t)),n.isNeg()&&!n.isZero()?"-"+r:r},ii.toSignificantDigits=ii.toSD=function(t,e){var r=this.constructor;return void 0===t?(t=r.precision,e=r.rounding):(si(t,1,Dn),void 0===e?e=r.rounding:si(e,0,8)),fi(new r(this),t,e)},ii.toString=function(){var t=this,e=t.constructor,r=ci(t,t.e<=e.toExpNeg||t.e>=e.toExpPos);return t.isNeg()&&!t.isZero()?"-"+r:r},ii.truncated=ii.trunc=function(){return fi(new this.constructor(this),this.e+1,1)},ii.valueOf=ii.toJSON=function(){var t=this,e=t.constructor,r=ci(t,t.e<=e.toExpNeg||t.e>=e.toExpPos);return t.isNeg()?"-"+r:r};var li=function(){function t(t,e,r){var n,i=0,o=t.length;for(t=t.slice();o--;)n=t[o]*e+i,t[o]=n%r|0,i=n/r|0;return i&&t.unshift(i),t}function e(t,e,r,n){var i,o;if(r!=n)o=r>n?1:-1;else for(i=o=0;i<r;i++)if(t[i]!=e[i]){o=t[i]>e[i]?1:-1;break}return o}function r(t,e,r,n){for(var i=0;r--;)t[r]-=i,i=t[r]<e[r]?1:0,t[r]=i*n+t[r]-e[r];for(;!t[0]&&t.length>1;)t.shift()}return function(n,i,o,s,u,a){var l,f,c,d,h,p,v,m,y,g,w,b,M,_,j,O,S,E,$,N,C=n.constructor,A=n.s==i.s?1:-1,x=n.d,L=i.d;if(!(x&&x[0]&&L&&L[0]))return new C(n.s&&i.s&&(x?!L||x[0]!=L[0]:L)?x&&0==x[0]||!L?0*A:A/0:NaN);for(a?(h=1,f=n.e-i.e):(a=ei,h=7,f=Wn(n.e/h)-Wn(i.e/h)),$=L.length,S=x.length,g=(y=new C(A)).d=[],c=0;L[c]==(x[c]||0);c++);if(L[c]>(x[c]||0)&&f--,null==o?(_=o=C.precision,s=C.rounding):_=u?o+(n.e-i.e)+1:o,_<0)g.push(1),p=!0;else{if(_=_/h+2|0,c=0,1==$){for(d=0,L=L[0],_++;(c<S||d)&&_--;c++)j=d*a+(x[c]||0),g[c]=j/L|0,d=j%L|0;p=d||c<S}else{for((d=a/(L[0]+1)|0)>1&&(L=t(L,d,a),x=t(x,d,a),$=L.length,S=x.length),O=$,b=(w=x.slice(0,$)).length;b<$;)w[b++]=0;(N=L.slice()).unshift(0),E=L[0],L[1]>=a/2&&++E;do{d=0,(l=e(L,w,$,b))<0?(M=w[0],$!=b&&(M=M*a+(w[1]||0)),(d=M/E|0)>1?(d>=a&&(d=a-1),1==(l=e(v=t(L,d,a),w,m=v.length,b=w.length))&&(d--,r(v,$<m?N:L,m,a))):(0==d&&(l=d=1),v=L.slice()),(m=v.length)<b&&v.unshift(0),r(w,v,b,a),-1==l&&(l=e(L,w,$,b=w.length))<1&&(d++,r(w,$<b?N:L,b,a)),b=w.length):0===l&&(d++,w=[0]),g[c++]=d,l&&w[0]?w[b++]=x[O]||0:(w=[x[O]],b=1)}while((O++<S||void 0!==w[0])&&_--);p=void 0!==w[0]}g[0]||g.shift()}if(1==h)y.e=f,Tn=p;else{for(c=1,d=g[0];d>=10;d/=10)c++;y.e=c+f*h-1,fi(y,u?o+y.e+1:o,s,p)}return y}}();function fi(t,e,r,n){var i,o,s,u,a,l,f,c,d,h=t.constructor;t:if(null!=e){if(!(c=t.d))return t;for(i=1,u=c[0];u>=10;u/=10)i++;if((o=e-i)<0)o+=7,s=e,a=(f=c[d=0])/Jn(10,i-s-1)%10|0;else if((d=Math.ceil((o+1)/7))>=(u=c.length)){if(!n)break t;for(;u++<=d;)c.push(0);f=a=0,i=1,s=(o%=7)-7+1}else{for(f=u=c[d],i=1;u>=10;u/=10)i++;a=(s=(o%=7)-7+i)<0?0:f/Jn(10,i-s-1)%10|0}if(n=n||e<0||void 0!==c[d+1]||(s<0?f:f%Jn(10,i-s-1)),l=r<4?(a||n)&&(0==r||r==(t.s<0?3:2)):a>5||5==a&&(4==r||n||6==r&&(o>0?s>0?f/Jn(10,i-s):0:c[d-1])%10&1||r==(t.s<0?8:7)),e<1||!c[0])return c.length=0,l?(e-=t.e+1,c[0]=Jn(10,(7-e%7)%7),t.e=-e||0):c[0]=t.e=0,t;if(0==o?(c.length=d,u=1,d--):(c.length=d+1,u=Jn(10,7-o),c[d]=s>0?(f/Jn(10,i-s)%Jn(10,s)|0)*u:0),l)for(;;){if(0==d){for(o=1,s=c[0];s>=10;s/=10)o++;for(s=c[0]+=u,u=1;s>=10;s/=10)u++;o!=u&&(t.e++,c[0]==ei&&(c[0]=1));break}if(c[d]+=u,c[d]!=ei)break;c[d--]=0,u=1}for(o=c.length;0===c[--o];)c.pop()}return Gn&&(t.e>h.maxE?(t.d=null,t.e=NaN):t.e<h.minE&&(t.e=0,t.d=[0])),t}function ci(t,e,r){if(!t.isFinite())return _i(t);var n,i=t.e,o=oi(t.d),s=o.length;return e?(r&&(n=r-s)>0?o=o.charAt(0)+"."+o.slice(1)+mi(n):s>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(t.e<0?"e":"e+")+t.e):i<0?(o="0."+mi(-i-1)+o,r&&(n=r-s)>0&&(o+=mi(n))):i>=s?(o+=mi(i+1-s),r&&(n=r-i-1)>0&&(o=o+"."+mi(n))):((n=i+1)<s&&(o=o.slice(0,n)+"."+o.slice(n)),r&&(n=r-s)>0&&(i+1===s&&(o+="."),o+=mi(n))),o}function di(t,e){var r=t[0];for(e*=7;r>=10;r/=10)e++;return e}function hi(t,e,r){if(e>ri)throw Gn=!0,r&&(t.precision=r),Error(Yn);return fi(new t(In),e,1,!0)}function pi(t,e,r){if(e>ni)throw Error(Yn);return fi(new t(qn),e,r,!0)}function vi(t){var e=t.length-1,r=7*e+1;if(e=t[e]){for(;e%10==0;e/=10)r--;for(e=t[0];e>=10;e/=10)r++}return r}function mi(t){for(var e="";t--;)e+="0";return e}function yi(t,e,r,n){var i,o=new t(1),s=Math.ceil(n/7+4);for(Gn=!1;;){if(r%2&&Ci((o=o.times(e)).d,s)&&(i=!0),0===(r=Wn(r/2))){r=o.d.length-1,i&&0===o.d[r]&&++o.d[r];break}Ci((e=e.times(e)).d,s)}return Gn=!0,o}function gi(t){return 1&t.d[t.d.length-1]}function wi(t,e,r){for(var n,i,o=new t(e[0]),s=0;++s<e.length;){if(!(i=new t(e[s])).s){o=i;break}((n=o.cmp(i))===r||0===n&&o.s===r)&&(o=i)}return o}function bi(t,e){var r,n,i,o,s,u,a,l=0,f=0,c=0,d=t.constructor,h=d.rounding,p=d.precision;if(!t.d||!t.d[0]||t.e>17)return new d(t.d?t.d[0]?t.s<0?0:1/0:1:t.s?t.s<0?0:t:NaN);for(null==e?(Gn=!1,a=p):a=e,u=new d(.03125);t.e>-2;)t=t.times(u),c+=5;for(a+=n=Math.log(Jn(2,c))/Math.LN10*2+5|0,r=o=s=new d(1),d.precision=a;;){if(o=fi(o.times(t),a,1),r=r.times(++f),oi((u=s.plus(li(o,r,a,1))).d).slice(0,a)===oi(s.d).slice(0,a)){for(i=c;i--;)s=fi(s.times(s),a,1);if(null!=e)return d.precision=p,s;if(!(l<3&&ui(s.d,a-n,h,l)))return fi(s,d.precision=p,h,Gn=!0);d.precision=a+=10,r=o=u=new d(1),f=0,l++}s=u}}function Mi(t,e){var r,n,i,o,s,u,a,l,f,c,d,h=1,p=t,v=p.d,m=p.constructor,y=m.rounding,g=m.precision;if(p.s<0||!v||!v[0]||!p.e&&1==v[0]&&1==v.length)return new m(v&&!v[0]?-1/0:1!=p.s?NaN:v?0:p);if(null==e?(Gn=!1,f=g):f=e,m.precision=f+=10,n=(r=oi(v)).charAt(0),!(Math.abs(o=p.e)<15e14))return l=hi(m,f+2,g).times(o+""),p=Mi(new m(n+"."+r.slice(1)),f-10).plus(l),m.precision=g,null==e?fi(p,g,y,Gn=!0):p;for(;n<7&&1!=n||1==n&&r.charAt(1)>3;)n=(r=oi((p=p.times(t)).d)).charAt(0),h++;for(o=p.e,n>1?(p=new m("0."+r),o++):p=new m(n+"."+r.slice(1)),c=p,a=s=p=li(p.minus(1),p.plus(1),f,1),d=fi(p.times(p),f,1),i=3;;){if(s=fi(s.times(d),f,1),oi((l=a.plus(li(s,new m(i),f,1))).d).slice(0,f)===oi(a.d).slice(0,f)){if(a=a.times(2),0!==o&&(a=a.plus(hi(m,f+2,g).times(o+""))),a=li(a,new m(h),f,1),null!=e)return m.precision=g,a;if(!ui(a.d,f-10,y,u))return fi(a,m.precision=g,y,Gn=!0);m.precision=f+=10,l=s=p=li(c.minus(1),c.plus(1),f,1),d=fi(p.times(p),f,1),i=u=1}a=l,i+=2}}function _i(t){return String(t.s*t.s/0)}function ji(t,e){var r,n,i;for((r=e.indexOf("."))>-1&&(e=e.replace(".","")),(n=e.search(/e/i))>0?(r<0&&(r=n),r+=+e.slice(n+1),e=e.substring(0,n)):r<0&&(r=e.length),n=0;48===e.charCodeAt(n);n++);for(i=e.length;48===e.charCodeAt(i-1);--i);if(e=e.slice(n,i)){if(i-=n,t.e=r=r-n-1,t.d=[],n=(r+1)%7,r<0&&(n+=7),n<i){for(n&&t.d.push(+e.slice(0,n)),i-=7;n<i;)t.d.push(+e.slice(n,n+=7));n=7-(e=e.slice(n)).length}else n-=i;for(;n--;)e+="0";t.d.push(+e),Gn&&(t.e>t.constructor.maxE?(t.d=null,t.e=NaN):t.e<t.constructor.minE&&(t.e=0,t.d=[0]))}else t.e=0,t.d=[0];return t}function Oi(t,e){var r,n,i,o,s,u,a,l,f;if(e.indexOf("_")>-1){if(e=e.replace(/(\d)_(?=\d)/g,"$1"),ti.test(e))return ji(t,e)}else if("Infinity"===e||"NaN"===e)return+e||(t.s=NaN),t.e=NaN,t.d=null,t;if(Xn.test(e))r=16,e=e.toLowerCase();else if(Kn.test(e))r=2;else{if(!Qn.test(e))throw Error(Hn+e);r=8}for((o=e.search(/p/i))>0?(a=+e.slice(o+1),e=e.substring(2,o)):e=e.slice(2),s=(o=e.indexOf("."))>=0,n=t.constructor,s&&(o=(u=(e=e.replace(".","")).length)-o,i=yi(n,new n(r),o,2*o)),o=f=(l=ai(e,r,ei)).length-1;0===l[o];--o)l.pop();return o<0?new n(0*t.s):(t.e=di(l,f),t.d=l,Gn=!1,s&&(t=li(t,i,4*u)),a&&(t=t.times(Math.abs(a)<54?Jn(2,a):yo.pow(2,a))),Gn=!0,t)}function Si(t,e,r,n,i){var o,s,u,a,l=t.precision,f=Math.ceil(l/7);for(Gn=!1,a=r.times(r),u=new t(n);;){if(s=li(u.times(a),new t(e++*e++),l,1),u=i?n.plus(s):n.minus(s),n=li(s.times(a),new t(e++*e++),l,1),void 0!==(s=u.plus(n)).d[f]){for(o=f;s.d[o]===u.d[o]&&o--;);if(-1==o)break}o=u,u=n,n=s,s=o}return Gn=!0,s.d.length=f+1,s}function Ei(t,e){for(var r=t;--e;)r*=t;return r}function $i(t,e){var r,n=e.s<0,i=pi(t,t.precision,1),o=i.times(.5);if((e=e.abs()).lte(o))return kn=n?4:1,e;if((r=e.divToInt(i)).isZero())kn=n?3:2;else{if((e=e.minus(r.times(i))).lte(o))return kn=gi(r)?n?2:3:n?4:1,e;kn=gi(r)?n?1:4:n?3:2}return e.minus(i).abs()}function Ni(t,e,r,n){var i,o,s,u,a,l,f,c,d,h=t.constructor,p=void 0!==r;if(p?(si(r,1,Dn),void 0===n?n=h.rounding:si(n,0,8)):(r=h.precision,n=h.rounding),t.isFinite()){for(p?(i=2,16==e?r=4*r-3:8==e&&(r=3*r-2)):i=e,(s=(f=ci(t)).indexOf("."))>=0&&(f=f.replace(".",""),(d=new h(1)).e=f.length-s,d.d=ai(ci(d),10,i),d.e=d.d.length),o=a=(c=ai(f,10,i)).length;0==c[--a];)c.pop();if(c[0]){if(s<0?o--:((t=new h(t)).d=c,t.e=o,c=(t=li(t,d,r,n,0,i)).d,o=t.e,l=Tn),s=c[r],u=i/2,l=l||void 0!==c[r+1],l=n<4?(void 0!==s||l)&&(0===n||n===(t.s<0?3:2)):s>u||s===u&&(4===n||l||6===n&&1&c[r-1]||n===(t.s<0?8:7)),c.length=r,l)for(;++c[--r]>i-1;)c[r]=0,r||(++o,c.unshift(1));for(a=c.length;!c[a-1];--a);for(s=0,f="";s<a;s++)f+=Bn.charAt(c[s]);if(p){if(a>1)if(16==e||8==e){for(s=16==e?4:3,--a;a%s;a++)f+="0";for(a=(c=ai(f,i,e)).length;!c[a-1];--a);for(s=1,f="1.";s<a;s++)f+=Bn.charAt(c[s])}else f=f.charAt(0)+"."+f.slice(1);f=f+(o<0?"p":"p+")+o}else if(o<0){for(;++o;)f="0"+f;f="0."+f}else if(++o>a)for(o-=a;o--;)f+="0";else o<a&&(f=f.slice(0,o)+"."+f.slice(o))}else f=p?"0p+0":"0";f=(16==e?"0x":2==e?"0b":8==e?"0o":"")+f}else f=_i(t);return t.s<0?"-"+f:f}function Ci(t,e){if(t.length>e)return t.length=e,!0}function Ai(t){return new this(t).abs()}function xi(t){return new this(t).acos()}function Li(t){return new this(t).acosh()}function Pi(t,e){return new this(t).plus(e)}function Ri(t){return new this(t).asin()}function Ti(t){return new this(t).asinh()}function ki(t){return new this(t).atan()}function Fi(t){return new this(t).atanh()}function Di(t,e){t=new this(t),e=new this(e);var r,n=this.precision,i=this.rounding,o=n+4;return t.s&&e.s?t.d||e.d?!e.d||t.isZero()?(r=e.s<0?pi(this,n,i):new this(0)).s=t.s:!t.d||e.isZero()?(r=pi(this,o,1).times(.5)).s=t.s:e.s<0?(this.precision=o,this.rounding=1,r=this.atan(li(t,e,o,1)),e=pi(this,o,1),this.precision=n,this.rounding=i,r=t.s<0?r.minus(e):r.plus(e)):r=this.atan(li(t,e,o,1)):(r=pi(this,o,1).times(e.s>0?.25:.75)).s=t.s:r=new this(NaN),r}function Bi(t){return new this(t).cbrt()}function Ii(t){return fi(t=new this(t),t.e+1,2)}function qi(t,e,r){return new this(t).clamp(e,r)}function Ui(t){if(!t||"object"!=typeof t)throw Error(zn+"Object expected");var e,r,n,i=!0===t.defaults,o=["precision",1,Dn,"rounding",0,8,"toExpNeg",-Fn,0,"toExpPos",0,Fn,"maxE",0,Fn,"minE",-Fn,0,"modulo",0,9];for(e=0;e<o.length;e+=3)if(r=o[e],i&&(this[r]=Un[r]),void 0!==(n=t[r])){if(!(Wn(n)===n&&n>=o[e+1]&&n<=o[e+2]))throw Error(Hn+r+": "+n);this[r]=n}if(r="crypto",i&&(this[r]=Un[r]),void 0!==(n=t[r])){if(!0!==n&&!1!==n&&0!==n&&1!==n)throw Error(Hn+r+": "+n);if(n){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw Error(Zn);this[r]=!0}else this[r]=!1}return this}function Gi(t){return new this(t).cos()}function zi(t){return new this(t).cosh()}function Hi(t,e){return new this(t).div(e)}function Yi(t){return new this(t).exp()}function Zi(t){return fi(t=new this(t),t.e+1,3)}function Vi(){var t,e,r=new this(0);for(Gn=!1,t=0;t<arguments.length;)if((e=new this(arguments[t++])).d)r.d&&(r=r.plus(e.times(e)));else{if(e.s)return Gn=!0,new this(1/0);r=e}return Gn=!0,r.sqrt()}function Wi(t){return t instanceof yo||t&&t.toStringTag===Vn||!1}function Ji(t){return new this(t).ln()}function Ki(t,e){return new this(t).log(e)}function Xi(t){return new this(t).log(2)}function Qi(t){return new this(t).log(10)}function to(){return wi(this,arguments,-1)}function eo(){return wi(this,arguments,1)}function ro(t,e){return new this(t).mod(e)}function no(t,e){return new this(t).mul(e)}function io(t,e){return new this(t).pow(e)}function oo(t){var e,r,n,i,o=0,s=new this(1),u=[];if(void 0===t?t=this.precision:si(t,1,Dn),n=Math.ceil(t/7),this.crypto)if(crypto.getRandomValues)for(e=crypto.getRandomValues(new Uint32Array(n));o<n;)(i=e[o])>=429e7?e[o]=crypto.getRandomValues(new Uint32Array(1))[0]:u[o++]=i%1e7;else{if(!crypto.randomBytes)throw Error(Zn);for(e=crypto.randomBytes(n*=4);o<n;)(i=e[o]+(e[o+1]<<8)+(e[o+2]<<16)+((127&e[o+3])<<24))>=214e7?crypto.randomBytes(4).copy(e,o):(u.push(i%1e7),o+=4);o=n/4}else for(;o<n;)u[o++]=1e7*Math.random()|0;for(t%=7,(n=u[--o])&&t&&(i=Jn(10,7-t),u[o]=(n/i|0)*i);0===u[o];o--)u.pop();if(o<0)r=0,u=[0];else{for(r=-1;0===u[0];r-=7)u.shift();for(n=1,i=u[0];i>=10;i/=10)n++;n<7&&(r-=7-n)}return s.e=r,s.d=u,s}function so(t){return fi(t=new this(t),t.e+1,this.rounding)}function uo(t){return(t=new this(t)).d?t.d[0]?t.s:0*t.s:t.s||NaN}function ao(t){return new this(t).sin()}function lo(t){return new this(t).sinh()}function fo(t){return new this(t).sqrt()}function co(t,e){return new this(t).sub(e)}function ho(){var t=0,e=arguments,r=new this(e[t]);for(Gn=!1;r.s&&++t<e.length;)r=r.plus(e[t]);return Gn=!0,fi(r,this.precision,this.rounding)}function po(t){return new this(t).tan()}function vo(t){return new this(t).tanh()}function mo(t){return fi(t=new this(t),t.e+1,1)}ii[Symbol.for("nodejs.util.inspect.custom")]=ii.toString,ii[Symbol.toStringTag]="Decimal";var yo=ii.constructor=function t(e){var r,n,i;function o(t){var e,r,n,i=this;if(!(i instanceof o))return new o(t);if(i.constructor=o,Wi(t))return i.s=t.s,void(Gn?!t.d||t.e>o.maxE?(i.e=NaN,i.d=null):t.e<o.minE?(i.e=0,i.d=[0]):(i.e=t.e,i.d=t.d.slice()):(i.e=t.e,i.d=t.d?t.d.slice():t.d));if("number"===(n=typeof t)){if(0===t)return i.s=1/t<0?-1:1,i.e=0,void(i.d=[0]);if(t<0?(t=-t,i.s=-1):i.s=1,t===~~t&&t<1e7){for(e=0,r=t;r>=10;r/=10)e++;return void(Gn?e>o.maxE?(i.e=NaN,i.d=null):e<o.minE?(i.e=0,i.d=[0]):(i.e=e,i.d=[t]):(i.e=e,i.d=[t]))}return 0*t!=0?(t||(i.s=NaN),i.e=NaN,void(i.d=null)):ji(i,t.toString())}if("string"===n)return 45===(r=t.charCodeAt(0))?(t=t.slice(1),i.s=-1):(43===r&&(t=t.slice(1)),i.s=1),ti.test(t)?ji(i,t):Oi(i,t);if("bigint"===n)return t<0?(t=-t,i.s=-1):i.s=1,ji(i,t.toString());throw Error(Hn+t)}if(o.prototype=ii,o.ROUND_UP=0,o.ROUND_DOWN=1,o.ROUND_CEIL=2,o.ROUND_FLOOR=3,o.ROUND_HALF_UP=4,o.ROUND_HALF_DOWN=5,o.ROUND_HALF_EVEN=6,o.ROUND_HALF_CEIL=7,o.ROUND_HALF_FLOOR=8,o.EUCLID=9,o.config=o.set=Ui,o.clone=t,o.isDecimal=Wi,o.abs=Ai,o.acos=xi,o.acosh=Li,o.add=Pi,o.asin=Ri,o.asinh=Ti,o.atan=ki,o.atanh=Fi,o.atan2=Di,o.cbrt=Bi,o.ceil=Ii,o.clamp=qi,o.cos=Gi,o.cosh=zi,o.div=Hi,o.exp=Yi,o.floor=Zi,o.hypot=Vi,o.ln=Ji,o.log=Ki,o.log10=Qi,o.log2=Xi,o.max=to,o.min=eo,o.mod=ro,o.mul=no,o.pow=io,o.random=oo,o.round=so,o.sign=uo,o.sin=ao,o.sinh=lo,o.sqrt=fo,o.sub=co,o.sum=ho,o.tan=po,o.tanh=vo,o.trunc=mo,void 0===e&&(e={}),e&&!0!==e.defaults)for(i=["precision","rounding","toExpNeg","toExpPos","maxE","minE","modulo","crypto"],r=0;r<i.length;)e.hasOwnProperty(n=i[r++])||(e[n]=this[n]);return o.config(e),o}(Un);function go(t,e=0,r={}){mn(e)||(e=0),e=Ar(e);let n=ut(r,"rounding","");return"ROUND_HALF_UP"!==n&&"ROUND_HALF_EVEN"!==n&&(n="ROUND_HALF_UP"),Nr(t)?new yo(t).toDecimalPlaces(e,yo[n]).toNumber():""}In=new yo(In),qn=new yo(qn);var wo=s?s.isConcatSpreadable:void 0;function bo(t){return r(t)||yt(t)||!!(wo&&t&&t[wo])}function Mo(t,e,r,n,i){var o=-1,s=t.length;for(r||(r=bo),i||(i=[]);++o<s;){var u=t[o];e>0&&r(u)?e>1?Mo(u,e-1,r,n,i):ne(i,u):n||(i[i.length]=u)}return i}function _o(t,e){if(t!==e){var r=void 0!==t,n=null===t,i=t==t,o=v(t),s=void 0!==e,u=null===e,a=e==e,l=v(e);if(!u&&!l&&!o&&t>e||o&&s&&a&&!u&&!l||n&&s&&a||!r&&a||!i)return 1;if(!n&&!o&&!l&&t<e||l&&r&&i&&!n&&!o||u&&r&&i||!s&&i||!a)return-1}return 0}function jo(t,e,n){e=e.length?Q(e,function(t){return r(t)?function(e){return st(e,1===t.length?t[0]:t)}:t}):[Be];var i=-1;return e=Q(e,Et(Ue)),function(t,e){var r=t.length;for(t.sort(e);r--;)t[r]=t[r].value;return t}(Ze(t,function(t,r,n){return{criteria:Q(e,function(e){return e(t)}),index:++i,value:t}}),function(t,e){return function(t,e,r){for(var n=-1,i=t.criteria,o=e.criteria,s=i.length,u=r.length;++n<s;){var a=_o(i[n],o[n]);if(a)return n>=u?a:a*("desc"==r[n]?-1:1)}return t.index-e.index}(t,e,n)})}var Oo=Math.max;var So=function(){try{var t=P(Object,"defineProperty");return t({},"",{}),t}catch(t){}}(),Eo=So,$o=Eo?function(t,e){return Eo(t,"toString",{configurable:!0,enumerable:!1,value:(r=e,function(){return r}),writable:!0});var r}:Be,No=$o,Co=Date.now;var Ao=function(t){var e=0,r=0;return function(){var n=Co(),i=16-(n-r);if(r=n,i>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}(No),xo=Ao;var Lo=function(t,e){return xo(function(t,e,r){return e=Oo(void 0===e?t.length-1:e,0),function(){for(var n=arguments,i=-1,o=Oo(n.length-e,0),s=Array(o);++i<o;)s[i]=n[e+i];i=-1;for(var u=Array(e+1);++i<e;)u[i]=n[i];return u[e]=r(s),function(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}(t,this,u)}}(t,e,Be),t+"")}(function(t,e){if(null==t)return[];var r=e.length;return r>1&&Pr(t,e[0],e[1])?e=[]:r>2&&Pr(e[0],e[1],e[2])&&(e=[e[0]]),jo(t,Mo(e,1),[])}),Po=Lo;function Ro(t,e,r){"__proto__"==e&&Eo?Eo(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}var To=Object.prototype.hasOwnProperty;function ko(t,e,r){var n=t[e];To.call(t,e)&&D(n,r)&&(void 0!==r||e in t)||Ro(t,e,r)}function Fo(t,e,r,n){var i=!r;r||(r={});for(var o=-1,s=e.length;++o<s;){var u=e[o],a=n?n(r[u],t[u],u,r,t):void 0;void 0===a&&(a=t[u]),i?Ro(r,u,a):ko(r,u,a)}return r}var Do=Object.prototype.hasOwnProperty;function Bo(t){if(!w(t))return function(t){var e=[];if(null!=t)for(var r in Object(t))e.push(r);return e}(t);var e=kt(t),r=[];for(var n in t)("constructor"!=n||!e&&Do.call(t,n))&&r.push(n);return r}function Io(t){return qt(t)?Rt(t,!0):Bo(t)}var qo="object"==typeof exports&&exports&&!exports.nodeType&&exports,Uo=qo&&"object"==typeof module&&module&&!module.nodeType&&module,Go=Uo&&Uo.exports===qo?o.Buffer:void 0,zo=Go?Go.allocUnsafe:void 0;var Ho=Ft(Object.getPrototypeOf,Object),Yo=Object.getOwnPropertySymbols?function(t){for(var e=[];t;)ne(e,le(t)),t=Ho(t);return e}:se,Zo=Yo;function Vo(t){return ie(t,Io,Zo)}var Wo=Object.prototype.hasOwnProperty;function Jo(t){var e=new t.constructor(t.byteLength);return new Xt(e).set(new Xt(t)),e}var Ko=/\w*$/;var Xo=s?s.prototype:void 0,Qo=Xo?Xo.valueOf:void 0;function ts(t,e,r){var n,i=t.constructor;switch(e){case"[object ArrayBuffer]":return Jo(t);case"[object Boolean]":case"[object Date]":return new i(+t);case"[object DataView]":return function(t,e){var r=e?Jo(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}(t,r);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return function(t,e){var r=e?Jo(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}(t,r);case"[object Map]":case"[object Set]":return new i;case"[object Number]":case"[object String]":return new i(t);case"[object RegExp]":return function(t){var e=new t.constructor(t.source,Ko.exec(t));return e.lastIndex=t.lastIndex,e}(t);case"[object Symbol]":return n=t,Qo?Object(Qo.call(n)):{}}}var es=Object.create,rs=function(){function t(){}return function(e){if(!w(e))return{};if(es)return es(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}}(),ns=rs;var is=At&&At.isMap,os=is?Et(is):function(t){return p(t)&&"[object Map]"==$e(t)};var ss=At&&At.isSet,us=ss?Et(ss):function(t){return p(t)&&"[object Set]"==$e(t)},as="[object Arguments]",ls="[object Function]",fs="[object Object]",cs={};function ds(t,e,n,i,o,s){var u,a=1&e,l=2&e,f=4&e;if(n&&(u=o?n(t,i,o,s):n(t)),void 0!==u)return u;if(!w(t))return t;var c=r(t);if(c){if(u=function(t){var e=t.length,r=new t.constructor(e);return e&&"string"==typeof t[0]&&Wo.call(t,"index")&&(r.index=t.index,r.input=t.input),r}(t),!a)return Fr(t,u)}else{var d=$e(t),h=d==ls||"[object GeneratorFunction]"==d;if(Mt(t))return function(t,e){if(e)return t.slice();var r=t.length,n=zo?zo(r):new t.constructor(r);return t.copy(n),n}(t,a);if(d==fs||d==as||h&&!o){if(u=l||h?{}:function(t){return"function"!=typeof t.constructor||kt(t)?{}:ns(Ho(t))}(t),!a)return l?function(t,e){return Fo(t,Zo(t),e)}(t,function(t,e){return t&&Fo(e,Io(e),t)}(u,t)):function(t,e){return Fo(t,le(t),e)}(t,function(t,e){return t&&Fo(e,Ut(e),t)}(u,t))}else{if(!cs[d])return o?t:{};u=ts(t,d,a)}}s||(s=new Zt);var p=s.get(t);if(p)return p;s.set(t,u),us(t)?t.forEach(function(r){u.add(ds(r,e,n,r,t,s))}):os(t)&&t.forEach(function(r,i){u.set(i,ds(r,e,n,i,t,s))});var v=c?void 0:(f?l?Vo:fe:l?Io:Ut)(t);return zr(v||t,function(r,i){v&&(r=t[i=r]),ko(u,i,ds(r,e,n,i,t,s))}),u}cs[as]=cs["[object Array]"]=cs["[object ArrayBuffer]"]=cs["[object DataView]"]=cs["[object Boolean]"]=cs["[object Date]"]=cs["[object Float32Array]"]=cs["[object Float64Array]"]=cs["[object Int8Array]"]=cs["[object Int16Array]"]=cs["[object Int32Array]"]=cs["[object Map]"]=cs["[object Number]"]=cs[fs]=cs["[object RegExp]"]=cs["[object Set]"]=cs["[object String]"]=cs["[object Symbol]"]=cs["[object Uint8Array]"]=cs["[object Uint8ClampedArray]"]=cs["[object Uint16Array]"]=cs["[object Uint32Array]"]=!0,cs["[object Error]"]=cs[ls]=cs["[object WeakMap]"]=!1;function hs(t){return ds(t,5)}function ps(t){let e,r=Object.prototype.toString.call(t);if(e="[object Promise]"===r,e)return!0;if("[object Function]"!==r)return!1;try{e="function"!=typeof t.subscribe&&"function"==typeof t.then}catch(t){}return e}function vs(t,e){return Pe(t,e)}function ms(t,e){function r(t){return On(t)?t:[t]}if(Ln(t))return!1;if(0===(t=r(t)).length)return!1;if(Ln(t))return!1;if(0===(e=r(e)).length)return!1;for(let r=0;r<t.length;r++)for(let n=0;n<e.length;n++)if(vs(t[r],e[n]))return!0;return!1}function ys(t){return"number"==typeof t||p(t)&&"[object Number]"==h(t)}function gs(t){if(!(Yt(t)||Nr(t)||v(t)||function(t){return"[object BigInt]"===Object.prototype.toString.call(t)}(t)))return"";let e="";try{e=String(t)}catch(t){}try{e=t.toString()}catch(t){}return e}let ws=0;let bs=function(t="start1",e=!1){void 0===t?t=(new Date).getTime():"start1"===t&&(ws++,t=ws);let r=624,n=397,i=2147483648,o=2147483647,s=new Array(r),u=625,a=t=>{var e;for(ys(t)?s[0]=t>>>0:(t=gs(t),s[0]=Ht(e=t)?""===e?0:e.split("").reduce((t,e)=>e.charCodeAt(0)+(t<<6)+(t<<16)-t,0):null),u=1;u<r;u++){let t=s[u-1]^s[u-1]>>>30;s[u]=(1812433253*((4294901760&t)>>>16)<<16)+1812433253*(65535&t)+u,s[u]>>>=0}},l=()=>(()=>{let t,e=new Array(2567483615);if(u>=r){let l;for(625===u&&a(5489),l=0;l<227;l++)t=s[l]&i|s[l+1]&o,s[l]=s[l+n]^t>>>1^e[1&t];for(;l<623;l++)t=s[l]&i|s[l+1]&o,s[l]=s[l+(n-r)]^t>>>1^e[1&t];t=s[623]&i|s[0]&o,s[623]=s[396]^t>>>1^e[1&t],u=0}return t=s[u++],t^=t>>>11,t^=t<<7&2636928640,t^=t<<15&4022730752,t^=t>>>18,t>>>0})()*(1/4294967296);a(t);let f=null;return f=e?l:l(),f}((new Date).getTime(),!0);function Ms(t=0,e=100){if(qr(t)||(t=0),t=Ar(t),qr(e)||(e=100),t>(e=Ar(e)))throw new Error(`vstart[${t}] > vend[${e}]`);let r=bs()*(e-t+1)+t;return r=Math.floor(r),r}function _s(t){if(0===cr(t))throw new Error("dps is not an effective array");return{ps:Ve(t,t=>{if(0===cr(ut(t,"values",[])))throw new Error("dp.values is not an effective array");if(ut(t,"n",0)<=0)throw new Error("n<=0");return{ind:null,value:null}}),fitness:null}}function js(t){if(0===cr(t))throw new Error("dps is not an effective array");let e=Ve(t,t=>{let e=ut(t,"values",[]);if(0===cr(e))throw new Error("dp.values is not an effective array");let r=ut(t,"n",0);if(r<=0)throw new Error("n<=0");let n=Ms(0,r-1);return{ind:n,value:e[n]}});return{ps:e,fitness:null}}function Os(t,e,r="Mapping"){if(!qr(t))throw new Error(`ind[${t}] in not an integer`);if(t=Ar(t),!mn(e))throw new Error(`iUp[${e}]<0`);if(0===(e=Ar(e)))return 0;if("Limit"===r)t=Math.min(t,e),t=Math.max(t,0);else if("Mapping"===r){let r=e+1;t=(t%r+r)%r}else{if("Random"!==r)throw new Error(`invalid mode[${r}]`);(t<0||t>e)&&(t=Ms(0,e))}return t}function Ss(t,e){let r=t.ps,n=e.ps;if(cr(r)!==cr(n))return!1;for(let t=0;t<r.length;t++)if(r[t].ind!==n[t].ind)return!1;return!0}function Es(t,e,r,n,i){if(t===e)return t;if(r<-4)return e;if(r>4)return t;if(i<=1)return t;let o;return o=r>=0?Math.pow(n/(i-1),Math.exp(r)):1-Math.pow((i-1-n)/(i-1),Math.exp(-r)),o*(e-t)+t}function $s(t,e){let r=0;for(let e of t)e>0&&(r+=e);if(r<=0)return Ms(0,t.length-1);let n=e*r,i=0;for(let e=0;e<t.length;e++)if(t[e]>0&&(i+=t[e],n<i))return e;return t.length-1}function Ns(t,e,r,n,i){for(let o=0;o<t.length;++o)t[o]=e*r[o]+n*i[o]}function Cs(t,e){return t.y-e.y}function As(t,e,r){if(0===cr(r))throw new Error("dps is not an effective array");let n=ut(r,e),i=ut(n,"values",[]),o=null,s=null,u=1e20;return Hr(i,(e,r)=>{let n=t-e;n=Math.abs(n),u>n&&(u=n,o=r,s=e)}),{ind:o,value:s}}function xs(t,e,r){let n=hs(t.ps),i=Ms(0,e.length-1),o=Math.random()<.5?-1:1,s=n[i].ind,u=s+o;return u=Os(u,e[i].n-1,r),n[i].ind=u,n[i].value=e[i].values[u],{ps:n,changed:u!==s}}function Ls(t){if(jn(t)){for(let e in t)return!0;return!1}return!1}function Ps(t){if(!Pn(t))throw new Error("dps is not an effective array");Hr(t,(t,e)=>{if(!Ls(t))throw new Error(`dps[${e}] is not an effective object`);let r=ut(t,"values");if(!Pn(r))throw new Error(`dps[${e}].values is not an effective array`);let n=r.length,i=ut(t,"n");if(!Ur(i))throw new Error(`dps[${e}].n is not a positive integer, got ${i}`);if(i!==n)throw new Error(`dps[${e}] invariant violated: n[${i}] !== values.length[${n}]`)})}async function Rs(t,e,r={}){Ps(t);let n=ut(r,"Nl","");Ur(n)||(n=1e4),n=Ar(n);let i=ut(r,"NContiguous","");Ur(i)||(i=200),i=Ar(i);let o=ut(r,"NCore","");Ur(o)||(o=1e6),o=Ar(o);let s=ut(r,"ModeOutLimit","");ms(s,["Mapping","Limit","Random"])||(s="Mapping");let u=ut(r,"taThresholdType","");ms(u,["Arithmetic Series","Geometric Series","Trapezoid Series"])||(u="Geometric Series");let a=ut(r,"taThresholdInitial","");Nr(a)||(a=1),a=Cr(a);let l=ut(r,"UseHists","");Sn(l)||(l=!0);let f=ut(r,"funGetBetter"),c=ut(r,"funEndLoop"),d=0,h=ut(r,"calcFitness");cn(h)||(h=async(t,r)=>{d++;let n=Ve(t.ps,"value"),i=e(n);return ps(i)&&(i=await i),{ps:t.ps,fitness:i}});let p,v=ut(r,"initSolution");if(v&&Pn(v.ps)&&Nr(v.fitness))p=hs(v);else{let e=js(t);p=await h(e,"init")}let m=function(t,e,r){let n=new Array(r).fill(0);if("Arithmetic Series"===t)for(let t=0;t<r;t++)n[t]=e*(r-1-t)/Math.max(r-1,1);else if("Geometric Series"===t){let t=.6,i=e;for(let e=0;e<r;e++)n[e]=i,i*=t}else{if("Trapezoid Series"!==t)throw new Error(`invalid thresholdType[${t}]`);{let t=Math.floor(r/3),i=Math.floor(r/2),o=r-t-i,s=Math.max(t+o-1,1);for(let r=0;r<t;r++)n[r]=e*(t+o-1-r)/s;let u=n[t-1]||0;for(let e=t;e<t+i;e++)n[e]=u;for(let r=t+i;r<t+i+o;r++)n[r]=e*(t+o-1-(r-i))/s}}return n}(u,a,n),y=hs(p),g=[],w="",b=0,M=0,_=0;l&&g.push(hs(p));let j=-1;for(;;){if(j++,j>=n){w=`stop by Nl[${n}]`,b=j,M=d;break}let e,r=xs(p,t,s);if(e=r.changed?await h({ps:r.ps},"neighbor"):{ps:r.ps,fitness:p.fitness},e.fitness-p.fitness<m[j]&&(p=e),y.fitness>p.fitness?(y=hs(p),cn(f)&&f(hs(y),j),_=0):_+=1,l&&g.push(hs(p)),_>=i?w=`stop by iContinue[${_}] >= NContiguous[${i}]`:d>=o&&(w=`stop by iExecute[${d}] >= NCore[${o}]`),Yt(w)){b=j,M=d;break}cn(c)&&c(hs(p),hs(y),j)}return{bestSolution:y,hists:g,stopMode:w,stopNl:b,stopExecutions:M}}async function Ts(t,e,r,n,i,o){let s=e.length,u=hs(t),a=0,l=-1,f=0;for(let c=0;c<s;c++)for(let s=-1;s<=1;s+=2){if(i===c&&o===-s)continue;let d=t.ps[c].ind,h=d+s;if(h=Os(h,e[c].n-1,r),h!==d){let r=hs(t.ps);r[c].ind=h,r[c].value=e[c].values[h];let i=await n({ps:r},"sdmNeighbor"),o=t.fitness-i.fitness;a<o&&(a=o,u=i,l=c,f=s)}}return{sMove:u,level:l,dir:f}}async function ks(t,e,r){let n=e.length,i=[],o=new Array(n).fill(0),s=hs(t);for(let o=0;o<n;o++){i.push([0,0]);for(let n=0;n<=1;n++){let u=0===n?-1:1,a=t.ps[o].ind,l=a+u;if(l=Os(l,e[o].n-1,"Limit"),l!==a){let u=hs(t.ps);u[o].ind=l,u[o].value=e[o].values[l];let a=await r({ps:u},"sdmGold");s.fitness>a.fitness&&(s=a),i[o][n]=t.fitness-a.fitness}else i[o][n]=0}}let u=0;for(let t=0;t<n;t++)i[t][0]<=0&&i[t][1]<=0&&u++;if(u===n)return t.fitness<s.fitness?t:s;let a=0;for(let t=0;t<n;t++){let e=i[t][0],r=i[t][1];o[t]=e>=0&&r>=0?e>r?-e:r:e>=0&&r<0?-e:e<0&&r>=0?r:0,a+=o[t]*o[t]}if(a=Math.sqrt(a),0===a)return t.fitness<s.fitness?t:s;for(let t=0;t<n;t++)o[t]=o[t]/a;let l=0;for(let t=0;t<n;t++)l+=e[t].n*e[t].n;l=Math.sqrt(l),l>32768&&(l=32768);let f=hs(t),c=hs(t),d=hs(t),h=1/1.618,p="",v=0;for(;;){let i="none",u=null;for(;;){if(h*=1.618,h>l){i="over";break}let r=hs(t.ps),s=0;for(let i=0;i<n;i++){let n=t.ps[i].ind+Math.round(o[i]*h);n=Os(n,e[i].n-1,"Limit"),r[i].ind=n,r[i].value=e[i].values[n],n===t.ps[i].ind&&s++}if(s!==n){i="move",u={ps:r,fitness:null};break}}if("over"===i){p="over";break}if(u=await r(u,"sdmGold"),s.fitness>u.fitness&&(s=u),v++,1===v){if(!(d.fitness>u.fitness))return f.fitness<s.fitness?f:s;d=u}else{if(!(d.fitness>u.fitness)){c=u,p="concave";break}d=u}}if("over"===p)return d.fitness<s.fitness?d:s;let m=0;for(;m++,!(m>50);){let t=hs(d.ps);for(let r=0;r<n;r++){let n=Math.round(.5*f.ps[r].ind+.5*c.ps[r].ind);t[r].ind=n,t[r].value=e[r].values[n]}let i=await r({ps:t},"sdmGold");s.fitness>i.fitness&&(s=i);let o=i.ps.every((t,e)=>t.ind===f.ps[e].ind),u=i.ps.every((t,e)=>t.ind===c.ps[e].ind);if(o||u)return[f,c,s].reduce((t,e)=>t.fitness<e.fitness?t:e);if(i.fitness<=f.fitness&&i.fitness<=c.fitness)f.fitness<=c.fitness?c=i:f=i,d=i;else if(i.fitness>=f.fitness&&i.fitness<=c.fitness)c=i;else{if(!(i.fitness<=f.fitness&&i.fitness>=c.fitness))return[f,c,s].reduce((t,e)=>t.fitness<e.fitness?t:e);f=i}}return[f,c,s].reduce((t,e)=>t.fitness<e.fitness?t:e)}async function Fs(t,e,r,n,i,o,s={}){if("None"===t)return e;if("NelderMead"===t){let t=async t=>{let e={ps:Ve(t,(t,e)=>As(t,e,r)),fitness:null};return(await i(e,"localSearchNelderMead")).fitness},n=Ve(e.ps,"value"),o=await async function(t,e,r={}){if(!cn(t))return Promise.reject("invalid fun");if(!Pn(e))return Promise.reject("params is not an effective array");let n=cr(e),i=ut(r,"maxIterations");Nr(i)||(i=200*n),i=Cr(i);let o=ut(r,"nonZeroDelta");Nr(o)||(o=1.05),o=Cr(o);let s=ut(r,"delta");Nr(s)||(s=.001),s=Cr(s);let u=ut(r,"minErrorDelta");Nr(u)||(u=1e-6),u=Cr(u);let a=ut(r,"minTolerance");Nr(a)||(a=1e-5),a=Cr(a);let l=ut(r,"rho");Nr(l)||(l=1),l=Cr(l);let f=ut(r,"chi");Nr(f)||(f=2),f=Cr(f);let c=ut(r,"psi");Nr(c)||(c=-.5),c=Cr(c);let d=ut(r,"sigma");Nr(d)||(d=.5),d=Cr(d);let h=0;async function p(){let e=t(...arguments);return ps(e)&&(e=await e),h++,e}let v=new Array(n+1);v[0]=e,v[0].y=await p(e),v[0].id=0;for(let t=0;t<n;++t){let r=e.slice();r[t]=r[t]?r[t]*o:s,v[t+1]=r,v[t+1].y=await p(r),v[t+1].id=t+1}let m,y=t=>{for(let e=0;e<t.length;e++)v[n][e]=t[e];v[n].y=t.y},g=e.slice(),w=e.slice(),b=e.slice(),M=e.slice();for(let t=0;t<i;++t){v.sort(Cs),m=0;for(let t=0;t<n;++t)m=Math.max(m,Math.abs(v[0][t]-v[1][t]));if(Math.abs(v[0].y-v[n].y)<u&&m<a)break;for(let t=0;t<n;++t){g[t]=0;for(let e=0;e<n;++e)g[t]+=v[e][t];g[t]/=n}let t=v[n];if(Ns(w,1+l,g,-l,t),w.y=await p(w),w.y<v[0].y)Ns(M,1+f,g,-f,t),M.y=await p(M),M.y<w.y?y(M):y(w);else if(w.y>=v[n-1].y){let e=!1;if(w.y>t.y?(Ns(b,1+c,g,-c,t),b.y=await p(b),b.y<t.y?y(b):e=!0):(Ns(b,1-c*l,g,c*l,t),b.y=await p(b),b.y<w.y?y(b):e=!0),e){if(d>=1)break;for(let t=1;t<v.length;++t)Ns(v[t],1-d,v[0],d,v[t]),v[t].y=await p(v[t])}}else y(w)}v.sort(Cs);let _=[],j=v[0];for(let t=0;t<n;t++)_.push(j[t]);return{count:h,y:v[0].y,x:_}}(t,n);return o.y>=e.fitness?e:{ps:Ve(o.x,(t,e)=>As(t,e,r)),fitness:o.y}}if("Neighbor"===t||"OneGold"===t||"Gold"===t){let s=await async function(t,e,r={}){Ps(t);let n=ut(r,"sdmMode","");ms(n,["Neighbor","OneGold","Gold"])||(n="Neighbor");let i=ut(r,"ModeOutLimit","");ms(i,["Mapping","Limit","Random"])||(i="Mapping");let o=0,s=ut(r,"calcFitness");cn(s)||(s=async(t,r)=>{o++;let n=Ve(t.ps,"value"),i=e(n);return ps(i)&&(i=await i),{ps:t.ps,fitness:i}});let u,a=ut(r,"initSolution");if(a&&Pn(a.ps)&&Nr(a.fitness))u=hs(a);else{let e=js(t);u=await s(e,"init")}let l=hs(u);if("Neighbor"===n){let e=-1,r=0;for(;;){let n=await Ts(u,t,i,s,e,r);if(u.fitness===n.sMove.fitness)break;u=n.sMove,e=n.level,r=n.dir,l.fitness>u.fitness&&(l=hs(u))}}else if("OneGold"===n){let e=await ks(u,t,s);l.fitness>e.fitness&&(l=e)}else if("Gold"===n){let e=50,r=0;for(;r++,!(r>e);){let e=await ks(u,t,s);if(u.fitness===e.fitness)break;u=e,l.fitness>u.fitness&&(l=hs(u))}}return{bestSolution:l,stopExecutions:o}}(r,n,{sdmMode:t,ModeOutLimit:o,initSolution:e,calcFitness:i});return s.bestSolution}if("SA"===t){let t=await async function(t,e,r={}){Ps(t);let n=ut(r,"Nl","");Ur(n)||(n=1e4),n=Ar(n);let i=ut(r,"NContiguous","");Ur(i)||(i=200),i=Ar(i);let o=ut(r,"NCore","");Ur(o)||(o=1e6),o=Ar(o);let s=ut(r,"ModeOutLimit","");ms(s,["Mapping","Limit","Random"])||(s="Mapping");let u=ut(r,"saInitialTemperature","");Nr(u)||(u=100),u=Cr(u);let a=ut(r,"saAlpha","");Nr(a)||(a=.9),a=Cr(a);let l=ut(r,"UseHists","");Sn(l)||(l=!0);let f=ut(r,"funGetBetter"),c=ut(r,"funEndLoop"),d=0,h=ut(r,"calcFitness");cn(h)||(h=async(t,r)=>{d++;let n=Ve(t.ps,"value"),i=e(n);return ps(i)&&(i=await i),{ps:t.ps,fitness:i}});let p,v=ut(r,"initSolution");if(v&&Pn(v.ps)&&Nr(v.fitness))p=hs(v);else{let e=js(t);p=await h(e,"init")}let m=hs(p),y=[],g="",w=0,b=0,M=0,_=u;l&&y.push(hs(p));let j=-1;for(;;){j++;let e,r=xs(p,t,s);e=r.changed?await h({ps:r.ps},"neighbor"):{ps:r.ps,fitness:p.fitness};let u=e.fitness-p.fitness;if(u<0?(p=e,_*=a):Math.random()<Math.exp(-u/_)&&(p=e),m.fitness>p.fitness?(m=hs(p),cn(f)&&f(hs(m),j),M=0):M+=1,l&&y.push(hs(p)),j>=n?g=`stop by Nl[${n}]`:M>=i?g=`stop by iContinue[${M}] >= NContiguous[${i}]`:d>=o&&(g=`stop by iExecute[${d}] >= NCore[${o}]`),Yt(g)){w=j,b=d;break}cn(c)&&c(hs(p),hs(m),j)}return{bestSolution:m,hists:y,stopMode:g,stopNl:w,stopExecutions:b}}(r,n,{initSolution:e,calcFitness:i,ModeOutLimit:o,Nl:1e3,NContiguous:5,saInitialTemperature:Math.max(.05*e.fitness,1),saAlpha:.9,UseHists:!1});return t.bestSolution}if("TA"===t){return(await Rs(r,n,{initSolution:e,calcFitness:i,ModeOutLimit:o,Nl:1e3,NContiguous:5,taThresholdType:"Geometric Series",taThresholdInitial:Math.max(.05*e.fitness,1),UseHists:!1})).bestSolution}throw new Error(`invalid LocalSearchMethod[${t}]`)}function Ds(t){let e=cr(t);if(0===e)return 0;let r=0;for(let e of t)r+=e;r/=e;let n=0;for(let e of t)n+=(e-r)*(e-r);return Math.sqrt(n/e)}async function Bs(t,e,r={}){Ps(t);let n=ut(r,"Ng","");Ur(n)||(n=1e4),n=Ar(n);let i=ut(r,"Np","");Ur(i)||(i=40),i=Ar(i);let o=cr(t),s=ut(r,"NContiguous","");Ur(s)||(s=100),s=Ar(s);let u=ut(r,"NRepeat","");Ur(u)||(u=1),u=Ar(u);let a=ut(r,"NCore","");Ur(a)||(a=1e6),a=Ar(a);let l=ut(r,"ModeOutLimit","");ms(l,["Mapping","Limit","Random"])||(l="Mapping");let f=ut(r,"UseRepeat","");Sn(f)||(f=!0);let c=ut(r,"UseImmigration","");Sn(c)||(c=!0);let d=ut(r,"LocalSearchMethod","");ms(d,["None","Neighbor","TA","SA","OneGold","Gold","NelderMead"])||(d="NelderMead");let h=ut(r,"funGetBetter"),p=ut(r,"funGenerationBefore"),v=ut(r,"funGenerationAfter"),m=ut(r,"rgaMutationRateStart","");Nr(m)||(m=.05),m=Cr(m);let y=ut(r,"rgaMutationRateEnd","");Nr(y)||(y=.05),y=Cr(y);let g=ut(r,"rgaMutationRateDynamic","");Nr(g)||(g=0),g=Cr(g);let w=ut(r,"rgaSelection","");ms(w,["Roulette Wheel Selection","Tournament Selection","Ranking Selection","Uniform Selection"])||(w="Tournament Selection");let b=ut(r,"rgaCrossover","");ms(b,["Flat Crossover","BLX-a Crossover","Linear Crossover","Arithmetical Crossover","Chung Crossover","DE1 Crossover","3P Crossover","3PB Crossover","DE2 Crossover","4P Crossover","4PB Crossover","HS Crossover","Guiding Function"])||(b="BLX-a Crossover");let M=ut(r,"rgaMutation","");ms(M,["Constant1","Constant2","Constant3","Linear0.1","Linear0.2","Linear0.3","Exponent0.1","Exponent0.2","Exponent0.3","Global Space"])||(M="Linear0.1");let _=ut(r,"rgaElitism","");ms(_,["None","BestOne","HalfPop","AllPop"])||(_="BestOne");let j={"Flat Crossover":2,"BLX-a Crossover":2,"Linear Crossover":2,"Arithmetical Crossover":2,"Chung Crossover":2,"DE1 Crossover":3,"3P Crossover":3,"3PB Crossover":3,"DE2 Crossover":4,"4P Crossover":4,"4PB Crossover":4,"HS Crossover":2,"Guiding Function":2};if(i<j[b])throw new Error(`Np[${i}] is less than the minimum[${j[b]}] required by rgaCrossover[${b}]`);let O=0,S=0,E=0,$=async(t,r)=>{E++;let n=Ve(t.ps,"value"),i=e(n);return ps(i)&&(i=await i),{ps:t.ps,fitness:i}},N=null,C=[],A="",x=0,L=0,P=[],R=[];for(let e=0;e<i;e++){let e=js(t),r=await $(e);P.push(r)}P=Po(P,"fitness"),C.push(hs(P[0])),N=hs(P[0]);let T=(t=[])=>{let e=new Set(t),r=()=>{let t=Ms(0,i-1),r=0;for(;e.has(t)&&(t=Ms(0,i-1),r++,!(r>10*i)););return t};if("Roulette Wheel Selection"===w){let t=r(),n=P[t].fitness;for(let t=0;t<i;t++)e.has(t)||n>P[t].fitness&&(n=P[t].fitness);let o=new Array(i).fill(0);for(let t=0;t<i;t++)e.has(t)||(o[t]=1/(P[t].fitness-n+1));return $s(o,Math.random())}if("Tournament Selection"===w){let t=r(),n=t,o=0;for(;(n===t||e.has(n))&&(n=Ms(0,i-1),o++,!(o>10*i)););return P[t].fitness<P[n].fitness?t:n}if("Ranking Selection"===w){let t=new Array(i).fill(0);for(let r=0;r<i;r++)e.has(r)||(t[r]=i-r);return $s(t,Math.random())}if("Uniform Selection"===w)return r();throw new Error(`invalid rgaSelection[${w}]`)},k=(e,r,n)=>{let i=_s(t);for(let s=0;s<o;s++){let o=P[e].ps[s].ind,u=P[r].ps[s].ind,a=Math.min(o,u),l=Math.max(o,u),f=Math.round(n*(l-a));l+=f,a-=f,l=Math.min(l,t[s].n-1),a=Math.max(a,0);let c=Ms(a,l);i.ps[s].ind=c,i.ps[s].value=t[s].values[c]}return i},F=(e,r,n,i)=>{let s=_s(t);for(let u=0;u<o;u++){let o=P[e].ps[u].ind,a=P[r].ps[u].ind,f=Math.round(n*o+i*a);f=Os(f,t[u].n-1,l),s.ps[u].ind=f,s.ps[u].value=t[u].values[f]}return s},D=(e,r,n)=>{let i=_s(t),s=_s(t),u=Ms(0,o-1),a=P[e].ps[u].ind,l=P[r].ps[u].ind,f=Math.min(a,l),c=Math.max(a,l),d=Math.round(n*(c-f));c+=d,f-=d,c=Math.min(c,t[u].n-1),f=Math.max(f,0);let h=Ms(f,c);i.ps[u].ind=h,i.ps[u].value=t[u].values[h],s.ps[u].ind=h,s.ps[u].value=t[u].values[h];for(let t=0;t<u;t++)i.ps[t].ind=P[e].ps[t].ind,i.ps[t].value=P[e].ps[t].value,s.ps[t].ind=P[r].ps[t].ind,s.ps[t].value=P[r].ps[t].value;for(let t=u+1;t<o;t++)i.ps[t].ind=P[r].ps[t].ind,i.ps[t].value=P[r].ps[t].value,s.ps[t].ind=P[e].ps[t].ind,s.ps[t].value=P[e].ps[t].value;return[i,s]},B=(e,r,n,i,s,u)=>{let a=_s(t);for(let f=0;f<o;f++){let o=P[e].ps[f].ind,c=P[r].ps[f].ind,d=P[n].ps[f].ind,h=Math.round(i*o+s*c+u*d);h=Os(h,t[f].n-1,l),a.ps[f].ind=h,a.ps[f].value=t[f].values[h]}return a},I=(e,r,n,i,s,u,a,f)=>{let c=_s(t);for(let d=0;d<o;d++){let o=P[e].ps[d].ind,h=P[r].ps[d].ind,p=P[n].ps[d].ind,v=P[i].ps[d].ind,m=Math.round(s*o+u*h+a*p+f*v);m=Os(m,t[d].n-1,l),c.ps[d].ind=m,c.ps[d].value=t[d].values[m]}return c},q=()=>{let e=[];if("Flat Crossover"===b||"BLX-a Crossover"===b||"Linear Crossover"===b||"Arithmetical Crossover"===b||"Chung Crossover"===b)for(;e.length<i;){let t=T(),r=T([t]);if("Flat Crossover"===b)e.push(k(t,r,0));else if("BLX-a Crossover"===b)e.push(k(t,r,.25));else if("Linear Crossover"===b){if(e.push(F(t,r,.5,.5)),e.length>=i)break;if(e.push(F(t,r,1.5,-.5)),e.length>=i)break;e.push(F(t,r,-.5,1.5))}else if("Arithmetical Crossover"===b){let n=Math.random();if(e.push(F(t,r,n,1-n)),e.length>=i)break;e.push(F(t,r,1-n,n))}else if("Chung Crossover"===b){let[n,o]=D(t,r,.25);if(e.push(n),e.length>=i)break;e.push(o)}}else if("DE1 Crossover"===b||"3P Crossover"===b||"3PB Crossover"===b)for(;e.length<i;){let t,r,n,i,o,s;if("DE1 Crossover"===b){t=T(),r=T([t]),n=T([t,r]),i=1,o=1,s=-o}else"3P Crossover"===b?(t=T(),r=T([t]),n=T([t,r]),i=-.4,o=.5,s=.7):"3PB Crossover"===b&&(t=0,r=T([t]),n=T([t,r]),i=-.4,o=.5,s=.7);e.push(B(t,r,n,i,o,s))}else if("DE2 Crossover"===b||"4P Crossover"===b||"4PB Crossover"===b)for(;e.length<i;){let t,r,n,i,o,s,u,a;if("DE2 Crossover"===b){t=0,r=T([t]),n=T([t,r]),i=T([t,r,n]),o=1,s=1-o,u=.2,a=-u}else"4P Crossover"===b?(t=T(),r=T([t]),n=T([t,r]),i=T([t,r,n]),o=.2,s=-.6,u=.5,a=.7):"4PB Crossover"===b&&(t=0,r=T([t]),n=T([t,r]),i=T([t,r,n]),o=.2,s=-.6,u=.5,a=.7);e.push(I(t,r,n,i,o,s,u,a))}else if("HS Crossover"===b)for(let r=0;r<i;r++){let r=_s(t);for(let t=0;t<o;t++){let e=T();r.ps[t].ind=P[e].ps[t].ind,r.ps[t].value=P[e].ps[t].value}e.push(r)}else{if("Guiding Function"!==b)throw new Error(`invalid rgaCrossover[${b}]`);{let r=[],n=[];for(let e=0;e<o;e++){let o=[],s=[];for(let t=0;t<i;t++)o.push(P[t].ps[e].ind),s.push(P[t].ps[e].ind);r.push(s);let u=t[e].n,a=new Array(u).fill(0);for(let t of o)t>=0&&t<u&&a[t]++;n.push(Ds(a))}for(let t=0;t<i;t++){let i=$s(n,Math.random()),o=$s(r[i].map(t=>t),Math.random()),s=hs(P[t]);s.ps[i].ind=P[o].ps[i].ind,s.ps[i].value=P[o].ps[i].value,e.push(s)}}}return e.length>i&&(e.length=i),e},U=(e,r)=>{for(let n=0;n<i;n++)for(let i=0;i<o;i++)if(Math.random()<r){let r=e[n].ps[i].ind,o=t[i].n;if("Constant1"===M){let t=1;r=Math.random()<.5?r+t:r-t}else if("Constant2"===M){let t=Ms(1,2);r=Math.random()<.5?r+t:r-t}else if("Constant3"===M){let t=Ms(1,3);r=Math.random()<.5?r+t:r-t}else if("Linear0.1"===M){let t=Ms(1,Math.round(.1*o)+1);r=Math.random()<.5?r+t:r-t}else if("Linear0.2"===M){let t=Ms(1,Math.round(.2*o)+1);r=Math.random()<.5?r+t:r-t}else if("Linear0.3"===M){let t=Ms(1,Math.round(.3*o)+1);r=Math.random()<.5?r+t:r-t}else if("Exponent0.1"===M){let t=Math.floor(Math.pow(.1*o+1,Math.random()));r=Math.random()<.5?r+t:r-t}else if("Exponent0.2"===M){let t=Math.floor(Math.pow(.2*o+1,Math.random()));r=Math.random()<.5?r+t:r-t}else if("Exponent0.3"===M){let t=Math.floor(Math.pow(.3*o+1,Math.random()));r=Math.random()<.5?r+t:r-t}else{if("Global Space"!==M)throw new Error(`invalid rgaMutation[${M}]`);r=Ms(0,o-1)}r=Os(r,o-1,l),e[n].ps[i].ind=r,e[n].ps[i].value=t[i].values[r]}return e},G=t=>{if("None"===_)return t;if("BestOne"===_)return t[i-1]=hs(P[0]),t;if("HalfPop"===_){let e=Math.floor(i/2);for(let r=e;r<i;r++)t[r]=hs(P[r-e]);return t}if("AllPop"===_){let e=[];for(let r=0;r<i;r++)e.push(P[r]),e.push(t[r]);return e=Po(e,"fitness"),e.slice(0,i)}throw new Error(`invalid rgaElitism[${_}]`)},z=-1;for(;;){z++;let r={rgaMutationRate:Es(m,y,g,S,s),rgaSelection:w,rgaCrossover:b,rgaMutation:M,rgaElitism:_,ModeOutLimit:l,LocalSearchMethod:d};if(cn(p)){let t=await p({params:hs(r)});t&&t.params&&(r={...r,...t.params})}w=r.rgaSelection,b=r.rgaCrossover,M=r.rgaMutation,_=r.rgaElitism,l=r.ModeOutLimit,d=r.LocalSearchMethod;let o=r.rgaMutationRate;R=q(),R=U(R,o);for(let t=0;t<i;t++)R[t]=await $(R[t]);R=Po(R,"fitness"),R=G(R),R=Po(R,"fitness");let j=async()=>{for(let e=i-1;e>=1;e--)if(Ss(R[e-1],R[e])){let r=js(t),n=await $(r);R[e]=n}R=Po(R,"fitness")};c&&await j();let T=async()=>{let r=await Fs(d,R[0],t,e,$,l);r.fitness>=R[0].fitness||(R[0]=r)};await T(),C.push(hs(R[0])),N.fitness>R[0].fitness?(N=hs(R[0]),cn(h)&&h(hs(N),z),S=0):S+=1;let k=async()=>{for(let e=1;e<=i-1;e++){let r=js(t),n=await $(r);R[e]=n}R=Po(R,"fitness"),S=0,O+=1};if(f&&S>=s&&O<u&&await k(),z>=n?A=`stop by Ng[${n}]`:S>=s?A=`stop by iContinue[${S}] >= NContiguous[${s}]`:E>=a&&(A=`stop by iExecute[${E}] >= NCore[${a}]`),cn(v)&&await v({params:hs(r),childrenBestFitness:R[0].fitness}),Yt(A)){x=z,L=E;break}P=hs(R)}return{bestSolution:N,hists:C,stopMode:A,stopNg:x,stopIteration:x,stopExecutions:L}}async function Is(t,e,r={}){Ps(t);let n=ut(r,"Ng","");Ur(n)||(n=1e4),n=Ar(n);let i=ut(r,"Np","");Ur(i)||(i=40),i=Ar(i);let o=cr(t),s=ut(r,"NContiguous","");Ur(s)||(s=100),s=Ar(s);let u=ut(r,"NRepeat","");Ur(u)||(u=1),u=Ar(u);let a=ut(r,"NCore","");Ur(a)||(a=1e6),a=Ar(a);let l=ut(r,"ModeOutLimit","");ms(l,["Mapping","Limit","Random"])||(l="Mapping");let f=ut(r,"UseRepeat","");Sn(f)||(f=!0);let c=ut(r,"UseImmigration","");Sn(c)||(c=!0);let d=ut(r,"LocalSearchMethod","");ms(d,["None","Neighbor","TA","SA","OneGold","Gold","NelderMead"])||(d="NelderMead");let h=ut(r,"funGetBetter"),p=ut(r,"funGenerationBefore"),v=ut(r,"funGenerationAfter"),m=ut(r,"deCrossoverFactorStart","");Nr(m)||(m=.6),m=Cr(m);let y=ut(r,"deCrossoverFactorEnd","");Nr(y)||(y=.6),y=Cr(y);let g=ut(r,"deCrossoverFactorDynamic","");Nr(g)||(g=0),g=Cr(g);let w=ut(r,"deFStart","");Nr(w)||(w=0),w=Cr(w);let b=ut(r,"deFEnd","");Nr(b)||(b=1),b=Cr(b);let M=ut(r,"deFDynamic","");Nr(M)||(M=1),M=Cr(M);let _=ut(r,"deLandaStart","");Nr(_)||(_=0),_=Cr(_);let j=ut(r,"deLandaEnd","");Nr(j)||(j=0),j=Cr(j);let O=ut(r,"deLandaDynamic","");Nr(O)||(O=0),O=Cr(O);let S=ut(r,"deMutation","");ms(S,["1R2RR","1B2RR","1R2BR","1R4RRRR","1B4RRRR","1R4BRRR","1S4BSRR"])||(S="1B2RR");let E={"1R2RR":3,"1B2RR":2,"1R2BR":2,"1R4RRRR":5,"1B4RRRR":4,"1R4BRRR":4,"1S4BSRR":4};if(i<E[S])throw new Error(`Np[${i}] is less than the minimum[${E[S]}] required by deMutation[${S}]`);let $=0,N=0,C=0,A=async(t,r)=>{C++;let n=Ve(t.ps,"value"),i=e(n);return ps(i)&&(i=await i),{ps:t.ps,fitness:i}},x=null,L=[],P="",R=0,T=0,k=[],F=[];for(let e=0;e<i;e++){let e=js(t),r=await A(e);k.push(r)}k=Po(k,"fitness"),L.push(hs(k[0])),x=hs(k[0]);let D=(t,e,r,n={})=>{let s=ut(n,"deMutation",""),u=ut(n,"deCrossoverFactor",""),a=ut(n,"deF",""),l=ut(n,"deLanda",""),f=ut(n,"ModeOutLimit",""),c=null,d=null,h=null,p=null,v=null,m=_s(t),y=Gr(0,i-1,i);if("1R2RR"===s)c=y[0],d=y[1],h=y[2];else if("1B2RR"===s)c=0,d=y[0],h=y[1];else if("1R2BR"===s)c=y[0],d=0,h=y[1];else if("1R4RRRR"===s)c=y[0],d=y[1],h=y[2],p=y[3],v=y[4];else if("1B4RRRR"===s)c=0,d=y[0],h=y[1],p=y[2],v=y[3];else if("1R4BRRR"===s)c=y[0],d=0,h=y[1],p=y[2],v=y[3];else{if("1S4BSRR"!==s)throw new Error(`invalid deMutation[${s}]`);c=r,d=0,h=r,p=y[2],v=y[3]}let g="3p";7===cr(s)&&(g="5p");let w=Ms(0,o-1);for(let n=0;n<o;n++)if(Math.random()<u||n===w){let r=null;r="3p"===g?Math.round(e[c].ps[n].ind+a*(e[d].ps[n].ind-e[h].ps[n].ind)):Math.round(e[c].ps[n].ind+a*(e[d].ps[n].ind-e[h].ps[n].ind)+l*(e[p].ps[n].ind-e[v].ps[n].ind)),r=Os(r,t[n].n-1,f),m.ps[n].ind=r,m.ps[n].value=t[n].values[r]}else m.ps[n].ind=e[r].ps[n].ind,m.ps[n].value=e[r].ps[n].value;return m},B=-1;for(;;){B++;let r={deCrossoverFactor:Es(m,y,g,N,s),deF:Es(w,b,M,N,s),deLanda:Es(_,j,O,N,s),deMutation:S,ModeOutLimit:l,LocalSearchMethod:d};if(cn(p)){let t=await p({params:hs(r)});t&&t.params&&(r={...r,...t.params})}for(let e=0;e<i;e++){let n=D(t,k,e,r),i=await A(n);k[e].fitness>i.fitness?F[e]=i:F[e]=hs(k[e])}F=Po(F,"fitness");let o=async()=>{for(let e=i-1;e>=1;e--)if(Ss(F[e-1],F[e])){let r=js(t),n=await A(r);F[e]=n}F=Po(F,"fitness")};c&&await o();let E=async()=>{let n=await Fs(r.LocalSearchMethod,F[0],t,e,A,r.ModeOutLimit);n.fitness>=F[0].fitness||(F[0]=n)};await E(),L.push(hs(F[0])),x.fitness>F[0].fitness?(x=hs(F[0]),cn(h)&&h(hs(x),B),N=0):N+=1;let I=async()=>{for(let e=1;e<=i-1;e++){let r=js(t),n=await A(r);F[e]=n}F=Po(F,"fitness"),N=0,$+=1};if(f&&N>=s&&$<u&&await I(),B>=n?P=`stop by Ng[${n}]`:N>=s?P=`stop by iContinue[${N}] >= NContiguous[${s}]`:C>=a&&(P=`stop by iExecute[${C}] >= NCore[${a}]`),cn(v)&&await v({params:hs(r),childrenBestFitness:F[0].fitness}),Yt(P)){R=B,T=C;break}k=hs(F)}return{bestSolution:x,hists:L,stopMode:P,stopNg:R,stopIteration:R,stopExecutions:T}}async function qs(t,e,r={}){Ps(t);let n=ut(r,"Ni","");Ur(n)||(n=1e4),n=Ar(n);let i=ut(r,"Ns","");Ur(i)||(i=20),i=Ar(i);let o=cr(t),s=ut(r,"NContiguous","");Ur(s)||(s=100),s=Ar(s);let u=ut(r,"NRepeat","");Ur(u)||(u=1),u=Ar(u);let a=ut(r,"NCore","");Ur(a)||(a=1e6),a=Ar(a);let l=ut(r,"ModeOutLimit","");ms(l,["Mapping","Limit","Random"])||(l="Mapping");let f=ut(r,"UseRepeat","");Sn(f)||(f=!0);let c=ut(r,"UseImmigration","");Sn(c)||(c=!0);let d=ut(r,"LocalSearchMethod","");ms(d,["None","Neighbor","TA","SA","OneGold","Gold","NelderMead"])||(d="NelderMead");let h=ut(r,"funGetBetter"),p=ut(r,"funGenerationBefore"),v=ut(r,"funGenerationAfter"),m=ut(r,"hsHMCRStart","");Nr(m)||(m=.9),m=Cr(m);let y=ut(r,"hsHMCREnd","");Nr(y)||(y=.9),y=Cr(y);let g=ut(r,"hsHMCRDynamic","");Nr(g)||(g=0),g=Cr(g);let w=ut(r,"hsPARStart","");Nr(w)||(w=.5),w=Cr(w);let b=ut(r,"hsPAREnd","");Nr(b)||(b=.5),b=Cr(b);let M=ut(r,"hsPARDynamic","");Nr(M)||(M=0),M=Cr(M);let _=ut(r,"hsHMC","");ms(_,["Original","2M Consideration","2MB Consideration","3M Consideration","3MB Consideration","4M Consideration","4MB Consideration"])||(_="Original");let j=ut(r,"hsPA","");ms(j,["Constant1","Constant2","Constant3","Linear0.1","Linear0.2","Linear0.3","Exponent0.1","Exponent0.2","Exponent0.3","Global Space","Available Space","Modified Global Best"])||(j="Linear0.1");let O={Original:1,"2M Consideration":2,"2MB Consideration":2,"3M Consideration":3,"3MB Consideration":3,"4M Consideration":4,"4MB Consideration":4};if(i<O[_])throw new Error(`Ns[${i}] is less than the minimum[${O[_]}] required by hsHMC[${_}]`);let S=0,E=0,$=0,N=async(t,r)=>{$++;let n=Ve(t.ps,"value"),i=e(n);return ps(i)&&(i=await i),{ps:t.ps,fitness:i}},C=null,A=[],x="",L=0,P=0,R=[];for(let e=0;e<i;e++){let e=js(t),r=await N(e);R.push(r)}R=Po(R,"fitness"),A.push(hs(R[0])),C=hs(R[0]);let T=(t=[])=>{let e=new Set(t),r=Ms(0,i-1),n=0;for(;e.has(r)&&(r=Ms(0,i-1),n++,!(n>10*i)););return r},k=(e,r)=>{let n=_s(t);for(let s=0;s<o;s++){let o=0,u=t[s].n;if(Math.random()<e){if("Original"===_){let t=Ms(0,i-1);o=R[t].ps[s].ind}else if("2M Consideration"===_){let t=Ms(0,i-1),e=T([t]),r=R[t].ps[s].ind,n=R[e].ps[s].ind;o=Math.round(.6*r+.6*n)}else if("2MB Consideration"===_){let t=0,e=T([t]),r=R[t].ps[s].ind,n=R[e].ps[s].ind;o=Math.round(.6*r+.6*n)}else if("3M Consideration"===_){let t=Ms(0,i-1),e=T([t]),r=T([t,e]),n=R[t].ps[s].ind,u=R[e].ps[s].ind,a=R[r].ps[s].ind;o=Math.round(-.4*n+.5*u+.7*a)}else if("3MB Consideration"===_){let t=0,e=T([t]),r=T([t,e]),n=R[t].ps[s].ind,i=R[e].ps[s].ind,u=R[r].ps[s].ind;o=Math.round(-.4*n+.5*i+.7*u)}else if("4M Consideration"===_){let t=Ms(0,i-1),e=T([t]),r=T([t,e]),n=T([t,e,r]),u=R[t].ps[s].ind,a=R[e].ps[s].ind,l=R[r].ps[s].ind,f=R[n].ps[s].ind;o=Math.round(.2*u-.6*a+.5*l+.7*f)}else{if("4MB Consideration"!==_)throw new Error(`invalid hsHMC[${_}]`);{let t=0,e=T([t]),r=T([t,e]),n=T([t,e,r]),i=R[t].ps[s].ind,u=R[e].ps[s].ind,a=R[r].ps[s].ind,l=R[n].ps[s].ind;o=Math.round(.2*i-.6*u+.5*a+.7*l)}}if(Math.random()<r)if("Constant1"===j){let t=1;o=Math.random()<.5?o+t:o-t}else if("Constant2"===j){let t=Ms(1,2);o=Math.random()<.5?o+t:o-t}else if("Constant3"===j){let t=Ms(1,3);o=Math.random()<.5?o+t:o-t}else if("Linear0.1"===j){let t=Ms(1,Math.round(.1*u)+1);o=Math.random()<.5?o+t:o-t}else if("Linear0.2"===j){let t=Ms(1,Math.round(.2*u)+1);o=Math.random()<.5?o+t:o-t}else if("Linear0.3"===j){let t=Ms(1,Math.round(.3*u)+1);o=Math.random()<.5?o+t:o-t}else if("Exponent0.1"===j){let t=Math.floor(Math.pow(.1*u+1,Math.random()));o=Math.random()<.5?o+t:o-t}else if("Exponent0.2"===j){let t=Math.floor(Math.pow(.2*u+1,Math.random()));o=Math.random()<.5?o+t:o-t}else if("Exponent0.3"===j){let t=Math.floor(Math.pow(.3*u+1,Math.random()));o=Math.random()<.5?o+t:o-t}else if("Global Space"===j)o=Ms(0,u-1);else if("Available Space"===j){let t=R[0].ps[s].ind,e=R[0].ps[s].ind;for(let r=1;r<i;r++)t<R[r].ps[s].ind&&(t=R[r].ps[s].ind),e>R[r].ps[s].ind&&(e=R[r].ps[s].ind);if(Math.random()<.5){o=Ms(Math.min(o,t),Math.max(o,t))}else{o=Ms(Math.min(o,e),Math.max(o,e))}}else{if("Modified Global Best"!==j)throw new Error(`invalid hsPA[${j}]`);o=R[0].ps[s].ind}}else o=Ms(0,u-1);o=Os(o,u-1,l),n.ps[s].ind=o,n.ps[s].value=t[s].values[o]}return n},F=-1;for(;;){F++;let r={hsHMCR:Es(m,y,g,E,s),hsPAR:Es(w,b,M,E,s),hsHMC:_,hsPA:j,ModeOutLimit:l,LocalSearchMethod:d};if(cn(p)){let t=await p({params:hs(r)});t&&t.params&&(r={...r,...t.params})}_=r.hsHMC,j=r.hsPA,l=r.ModeOutLimit,d=r.LocalSearchMethod;let o=k(r.hsHMCR,r.hsPAR),O=await N(o);R[i-1].fitness>O.fitness&&(R[i-1]=O,R=Po(R,"fitness"));let T=async()=>{for(let e=i-1;e>=1;e--)if(Ss(R[e-1],R[e])){let r=js(t),n=await N(r);R[e]=n}R=Po(R,"fitness")},D=async()=>{let r=await Fs(d,R[0],t,e,N,l);r.fitness>=R[0].fitness||(R[0]=r)};(F+1)%i===0&&(c&&await T(),await D()),A.push(hs(R[0])),C.fitness>R[0].fitness?(C=hs(R[0]),cn(h)&&h(hs(C),F),E=0):E+=1;let B=async()=>{for(let e=1;e<=i-1;e++){let r=js(t),n=await N(r);R[e]=n}R=Po(R,"fitness"),E=0,S+=1};if(f&&E>=s&&S<u&&await B(),F>=n?x=`stop by Ni[${n}]`:E>=s?x=`stop by iContinue[${E}] >= NContiguous[${s}]`:$>=a&&(x=`stop by iExecute[${$}] >= NCore[${a}]`),cn(v)&&await v({params:hs(r),childrenBestFitness:R[0].fitness}),Yt(x)){L=F,P=$;break}}return{bestSolution:C,hists:A,stopMode:x,stopNi:L,stopIteration:L,stopExecutions:P}}async function Us(t,e,r={}){Ps(t);let n=ut(r,"Nl","");Ur(n)||(n=1e4),n=Ar(n);let i=ut(r,"Np","");Ur(i)||(i=40),i=Ar(i);let o=cr(t),s=ut(r,"NContiguous","");Ur(s)||(s=100),s=Ar(s);let u=ut(r,"NRepeat","");Ur(u)||(u=1),u=Ar(u);let a=ut(r,"NCore","");Ur(a)||(a=1e6),a=Ar(a);let l=ut(r,"ModeOutLimit","");ms(l,["Mapping","Limit","Random"])||(l="Mapping");let f=ut(r,"UseRepeat","");Sn(f)||(f=!0);let c=ut(r,"UseImmigration","");Sn(c)||(c=!0);let d=ut(r,"LocalSearchMethod","");ms(d,["None","Neighbor","TA","SA","OneGold","Gold","NelderMead"])||(d="NelderMead");let h=ut(r,"funGetBetter"),p=ut(r,"funEndLoop"),v=ut(r,"funGenerationBefore"),m=ut(r,"funGenerationAfter"),y=ut(r,"psoC1Start","");Nr(y)||(y=2),y=Cr(y);let g=ut(r,"psoC1End","");Nr(g)||(g=2),g=Cr(g);let w=ut(r,"psoC1Dynamic","");Nr(w)||(w=0),w=Cr(w);let b=ut(r,"psoC2Start","");Nr(b)||(b=2),b=Cr(b);let M=ut(r,"psoC2End","");Nr(M)||(M=2),M=Cr(M);let _=ut(r,"psoC2Dynamic","");Nr(_)||(_=0),_=Cr(_);let j=ut(r,"psoBeta","");Nr(j)||(j=.9),j=Cr(j);let O=ut(r,"psoGamma","");Nr(O)||(O=.5),O=Cr(O);let S=ut(r,"psoInertiaMin","");Nr(S)||(S=.4),S=Cr(S);let E=0,$=0,N=0,C=async(t,r)=>{N++;let n=Ve(t.ps,"value"),i=e(n);return ps(i)&&(i=await i),{ps:t.ps,fitness:i}},A=async e=>{let r=js(t),n=await C(r),i=[];for(let e=0;e<o;e++){let r=t[e].n;i.push(Ms(-(r-1),r-1))}let s=(1+Math.random())*S;return{ps:n.ps,fitness:n.fitness,bs:hs(n),velocity:i,inertia:s}},x=null,L=[],P="",R=0,T=0,k=[],F=null;for(let t=0;t<i;t++){let t=await A();k.push(t)}k=Po(k,"fitness"),F={ps:hs(k[0].ps),fitness:k[0].fitness},L.push(hs(k[0])),x={ps:hs(k[0].ps),fitness:k[0].fitness};let D=async(e,r)=>{let n,s=e+r;n=s>4?2/Math.abs(2-s-Math.sqrt(s*s-4*s)):1;for(let s=0;s<i;s++){let i=k[s],u=Math.random(),a=Math.random();for(let s=0;s<o;s++){let o=0;o+=i.inertia*i.velocity[s],o+=e*u*(i.bs.ps[s].ind-i.ps[s].ind),o+=r*a*(F.ps[s].ind-i.ps[s].ind),o*=n;let l=O*(t[s].n-1),f=-l;i.velocity[s]=Math.max(Math.min(o,l),f)}let f=j*i.inertia;i.inertia=Math.max(Math.min(f,1e4),S);for(let e=0;e<o;e++){let r=Math.round(i.ps[e].ind+i.velocity[e]);r=Os(r,t[e].n-1,l),i.ps[e].ind=r,i.ps[e].value=t[e].values[r]}let c=await C(i);i.fitness=c.fitness,i.bs.fitness>i.fitness&&(i.bs={ps:hs(i.ps),fitness:i.fitness}),F.fitness>i.fitness&&(F={ps:hs(i.ps),fitness:i.fitness})}},B=-1;for(;;){B++;let r={psoC1:Es(y,g,w,$,s),psoC2:Es(b,M,_,$,s),psoBeta:j,psoGamma:O,psoInertiaMin:S,ModeOutLimit:l,LocalSearchMethod:d};if(cn(v)){let t=await v({params:hs(r)});t&&t.params&&(r={...r,...t.params})}j=r.psoBeta,O=r.psoGamma,S=r.psoInertiaMin,l=r.ModeOutLimit,d=r.LocalSearchMethod;let o=r.psoC1,I=r.psoC2;await D(o,I),k=Po(k,"fitness");let q=async()=>{for(let t=i-1;t>=1;t--)if(Ss(k[t-1],k[t])){let e=await A();k[t]=e}k=Po(k,"fitness"),F.fitness>k[0].fitness&&(F={ps:hs(k[0].ps),fitness:k[0].fitness})};c&&await q();let U=async()=>{let r={ps:hs(k[0].ps),fitness:k[0].fitness},n=await Fs(d,r,t,e,C,l);n.fitness>=k[0].fitness||(k[0].ps=n.ps,k[0].fitness=n.fitness,F.fitness>n.fitness&&(F={ps:hs(n.ps),fitness:n.fitness}))};await U(),L.push(hs(k[0])),x.fitness>k[0].fitness?(x={ps:hs(k[0].ps),fitness:k[0].fitness},cn(h)&&h(hs(x),B),$=0):$+=1;let G=async()=>{for(let t=1;t<=i-1;t++){let e=await A();k[t]=e}k=Po(k,"fitness"),$=0,E+=1};if(f&&$>=s&&E<u&&await G(),B>=n?P=`stop by Nl[${n}]`:$>=s?P=`stop by iContinue[${$}] >= NContiguous[${s}]`:N>=a&&(P=`stop by iExecute[${N}] >= NCore[${a}]`),cn(m)&&await m({params:hs(r),childrenBestFitness:k[0].fitness}),Yt(P)){R=B,T=N;break}cn(p)&&p(hs(k),hs(x),B)}return{bestSolution:x,hists:L,stopMode:P,stopNl:R,stopIteration:R,stopExecutions:T}}async function Gs(t,e,r={}){Ps(t);let n=ut(r,"Nl","");Ur(n)||(n=1e4),n=Ar(n);let i=ut(r,"Na","");Ur(i)||(i=40),i=Ar(i);let o=cr(t),s=ut(r,"NContiguous","");Ur(s)||(s=100),s=Ar(s);let u=ut(r,"NRepeat","");Ur(u)||(u=1),u=Ar(u);let a=ut(r,"NCore","");Ur(a)||(a=1e6),a=Ar(a);let l=ut(r,"UseRepeat","");Sn(l)||(l=!0);let f=ut(r,"UseImmigration","");Sn(f)||(f=!0);let c=ut(r,"LocalSearchMethod","");ms(c,["None","Neighbor","TA","SA","OneGold","Gold","NelderMead"])||(c="NelderMead");let d=ut(r,"ModeOutLimit","");ms(d,["Mapping","Limit","Random"])||(d="Mapping");let h=ut(r,"UseForcedExplore","");Sn(h)||(h=!0);let p=ut(r,"funGetBetter"),v=ut(r,"funEndLoop"),m=ut(r,"funGenerationBefore"),y=ut(r,"funGenerationAfter"),g=ut(r,"acoExploitationRateStart","");Nr(g)||(g=.8),g=Cr(g);let w=ut(r,"acoExploitationRateEnd","");Nr(w)||(w=.8),w=Cr(w);let b=ut(r,"acoExploitationRateDynamic","");Nr(b)||(b=0),b=Cr(b);let M=ut(r,"acoAlphaStart","");Nr(M)||(M=.1),M=Cr(M);let _=ut(r,"acoAlphaEnd","");Nr(_)||(_=.1),_=Cr(_);let j=ut(r,"acoAlphaDynamic","");Nr(j)||(j=0),j=Cr(j);let O=ut(r,"acoRoStart","");Nr(O)||(O=.1),O=Cr(O);let S=ut(r,"acoRoEnd","");Nr(S)||(S=.1),S=Cr(S);let E=ut(r,"acoRoDynamic","");Nr(E)||(E=0),E=Cr(E);let $=0,N=0,C=0,A=async(t,r)=>{C++;let n=Ve(t.ps,"value"),i=e(n);return ps(i)&&(i=await i),{ps:t.ps,fitness:i}},x=null,L=[],P="",R=0,T=0,k=[],F=[];for(let e=0;e<o;e++)F.push(new Array(t[e].n).fill(0));let D=(t,e)=>{let r;r=t.fitness>=1?t.fitness:Math.exp(t.fitness)/Math.exp(1),r=1/r;for(let n=0;n<o;n++){let i=t.ps[n].ind;F[n][i]=(1-e)*F[n][i]+e*r}};for(let e=0;e<i;e++){let e=js(t),r=await A(e);k.push(r),D(r,O)}k=Po(k,"fitness"),D(k[0],M),L.push(hs(k[0])),x=hs(k[0]);let B=async(e,r,n)=>{for(let r=0;r<i;r++){for(let n=0;n<o;n++){let i,o=F[n].length,s=0;for(let t=0;t<o;t++)0===F[n][t]&&s++;if(Math.random()<e)i=s===o?Ms(0,o-1):$s(F[n],Math.random());else if(s===o||0===s)i=Ms(0,o-1);else{let t=[];for(let e=0;e<o;e++)0===F[n][e]&&t.push(e);i=t[Ms(0,t.length-1)]}k[r].ps[n].ind=i,k[r].ps[n].value=t[n].values[i]}let n=await A(k[r]);k[r]=n}for(let t=0;t<i;t++)D(k[t],n);k=Po(k,"fitness"),D(k[0],r)},I=-1;for(;;){I++;let r={acoExploitationRate:Es(g,w,b,N,s),acoAlpha:Es(M,_,j,N,s),acoRo:Es(O,S,E,N,s),ModeOutLimit:d,LocalSearchMethod:c};if(cn(m)){let t=await m({params:hs(r)});t&&t.params&&(r={...r,...t.params})}d=r.ModeOutLimit,c=r.LocalSearchMethod;let o=r.acoExploitationRate,F=r.acoAlpha,q=r.acoRo;await B(o,F,q);let U=async()=>{for(let e=i-1;e>=1;e--)if(Ss(k[e-1],k[e])){let r=js(t),n=await A(r);k[e]=n,D(n,q)}k=Po(k,"fitness")};f&&await U();let G=async()=>{let r=await Fs(c,k[0],t,e,A,d);r.fitness>=k[0].fitness||(k[0]=r)};if(await G(),L.push(hs(k[0])),x.fitness>k[0].fitness?(x=hs(k[0]),cn(p)&&p(hs(x),I),N=0):N+=1,l&&N>=s&&$<u){for(let e=1;e<=i-1;e++){let r=js(t),n=await A(r);k[e]=n,D(n,q)}k=Po(k,"fitness"),N=0,$+=1}else if(h){for(let e=Math.floor(i/2);e<=i-1;e++){let r=js(t),n=await A(r);k[e]=n,D(n,q)}k=Po(k,"fitness")}if(I>=n?P=`stop by Nl[${n}]`:N>=s?P=`stop by iContinue[${N}] >= NContiguous[${s}]`:C>=a&&(P=`stop by iExecute[${C}] >= NCore[${a}]`),cn(y)&&await y({params:hs(r),childrenBestFitness:k[0].fitness}),Yt(P)){R=I,T=C;break}cn(v)&&v(hs(k),hs(x),I)}return{bestSolution:x,hists:L,stopMode:P,stopNl:R,stopIteration:R,stopExecutions:T}}function zs(t,e,r){var n=null==t?0:t.length;return n?Yr(t,(e=r||void 0===e?1:_r(e))<0?0:e,n):[]}var Hs=Array.prototype.reverse;function Ys(t,e){return Yt(t)&&mn(e)?0===(e=Ar(e))?t:En(t,t.length-e):""}function Zs(t,e={}){let r=ut(e,"excludeString");if(Sn(r)||(r=!1),!Yt(t))return"";let n=t=>t>="0"&&t<="9"||"."===t||"-"===t||"+"===t,i=ln(t);if(r){let t=i.split("");for(let e=0;e<t.length;e++)if(n(t[e])){i=Ys(i,e),t=zs(t,e);break}t=null==(o=t)?o:Hs.call(o);for(let e=0;e<t.length;e++)if(n(t[e])){i=$n(i,e);break}}var o;return i}function Vs(t){let e=0,r=0,n=0,i=cr(t);Hr(t,t=>{Nr(t)?e+=1:Ht(t)?r+=1:jn(t)&&(n+=1)});let o="";return e===i?o="num":r===i?o="str":n===i?o="obj":e+r===i?o="str":console.log("eles in array are non-homogeneous",t),o}function Ws(t,e,r={}){let n=[];if("num"!==e&&"str"!==e&&"files"!==e)throw new Error(`invalid type[${e}]`);if("num"===e)n=Ve(t,(t,e)=>({key:e,payload:t,value:Cr(t)}));else if("files"===e)n=Ve(t,(t,e)=>({key:e,payload:t,value:gs(t)}));else if("str"===e){let e=Ve(t,t=>Zs(t,{excludeString:!0})),r=0;Hr(e,t=>{Nr(t)&&r++});let i=r===cr(e);n=Ve(t,(t,r)=>{let n=t;return i?(n=e[r],n=Cr(n)):n=gs(n),{key:r,payload:t,value:n}})}return n}function Js(t,e){let r=Po(t,"value");return Ve(r,e?"key":"payload")}function Ks(t,e){let r=function(t,e){let r=hs(t);return r.sort((t,r)=>t[e].localeCompare(r[e],"standard",{numeric:!0})),r}(t,"value");return Ve(r,e?"key":"payload")}function Xs(t,e){let r=function(){let t,e,r=new Promise(function(){t=arguments[0],e=arguments[1]});return r.resolve=t,r.reject=e,r}();if(!On(t)&&!jn(t))return r.reject("rs is not an array or object"),r;let n=!1;if(jn(t)){n=!0;let e=[];Hr(t,(t,r)=>{e.push({k:r,v:t})}),t=e}cn(e)||(e=function(t){return t});let i=-1,o=[];return t.reduce(function(t,r){return t.then(function(t){o.push(t),i+=1;let s=i,u=r;return n&&(s=r.k,u=r.v),cn(e)?e(u,s):u})},Promise.resolve()).then(function(t){o.push(t),o=zs(o),r.resolve(o)}).catch(function(t){r.reject(t)}),r}function Qs(t,e){var r=[];return Ye(t,function(t,n,i){e(t,n,i)&&r.push(t)}),r}function tu(t,e){return(r(t)?oe:Qs)(t,Ue(e))}let eu=(t,e,r,n,i)=>{if(!(Nr(o=e)&&Cr(o)>0))throw new Error(`uIni[${e}] is not a positive number`);var o;if(!Yt(n))throw new Error(`invalid timeOhlcStart[${n}]`);if(!Yt(i))throw new Error(`invalid timeOhlcEnd[${i}]`);r=Po(r,"timeStart");let s=[],u=[];Hr(r,t=>{Yt(t.modeResult)?s.push(t):u.push(t)});let a=cr(r),l=cr(s),f=cr(u),c=yn(cr(tu(r,{modeResult:"profit"}))/l*100,2)+"%",d=0,h="",p="",v=0,m="",y="",g="",w=0,b="",M=0,_=0,j=e,O=e,S={},E={};Hr(r,t=>{if(Yt(t.modeResult)){j=Math.max(j,t.uEquity);let e=j-t.uEquity,r=yn(e/j*100,2)+"%";e>d&&(d=e,O=j,h=r)}{let e=null;e=1,Yt(t.timeStart)&&(xn(S,t.timeStart)||(S[t.timeStart]=0),S[t.timeStart]+=e*t.uTrade,xn(E,t.timeStart)||(E[t.timeStart]=0),E[t.timeStart]+=1),Yt(t.timeEnd)&&(xn(S,t.timeEnd)||(S[t.timeEnd]=0),S[t.timeEnd]-=e*t.uTrade,xn(E,t.timeEnd)||(E[t.timeEnd]=0),E[t.timeEnd]-=1)}});{let t=[];Hr(S,(e,r)=>{if(!ys(e))throw console.log("time",r),new Error(`invalid uTradeAll[${e}]`);t.push({time:r,uTradeAll:e})}),t=Po(t,"time");let e=0,r=Ve(t,t=>(e+=t.uTradeAll,{...t,uAccm:e})),n={};Hr(r,t=>{n[t.time]=t.uAccm}),S=n}{let t=[];Hr(E,(e,r)=>{if(!ys(e))throw console.log("time",r),new Error(`invalid numTradeAll[${e}]`);t.push({time:r,numTradeAll:e})}),t=Po(t,"time");let e=0,r=Ve(t,t=>(e+=t.numTradeAll,{...t,nAccm:e})),n={};Hr(r,t=>{n[t.time]=t.nAccm}),E=n}r=Ve(r,t=>{let r=ut(S,t.timeStart,null);if(!ys(r))throw new Error("invalid uTradeAll");r=Math.abs(r),t.uTradeAll=r;let n=yn(t.uTradeAll/e*100,2)+"%";t.rTradeAll=n,w<t.uTradeAll&&(w=t.uTradeAll,b=t.rTradeAll);let i=ut(E,t.timeStart,null);if(!ys(i))throw new Error("invalid numTradeAll");return t.numTradeAll=i,M<t.numTradeAll&&(M=t.numTradeAll),t});{let t=cr(s)-1;v=ut(s,`${t}.uEquity`,""),m=ut(s,`${t}.uCumuProfitOrLoss`,""),y=ut(s,`${t}.rCumuProfitOrLoss`,"")}{let t;t=O-e+w>0?d/(O-e+w):0,p=yn(100*t,2)+"%"}g=w>0&&ys(m)?m/w:0,g=yn(100*g,2)+"%";{let t=0,e=0,r=0,n=0;Hr(s,t=>{let e=t.rProfitOrLossDay*t.dayHold;r+=e;let i=t.dayHold;n+=i}),n>0&&(t=r/n);let i=0;Hr(s,e=>{let r=e.rProfitOrLossDay-t,n=e.dayHold*(r*r);i+=n}),n>1&&(e=Math.sqrt(i/(n-1))),e>0&&(_=t/e*Math.sqrt(252)),_<-10&&(_=-10),_>10&&(_=10)}let $=t(n),N=t(i).diff($,"day"),C=N/365,A="";{let t;t=0===e||0===C?0:(v-e)/e/C,A=`${yn(100*t,2)}%`}let x="";{let t;t=0===w||0===C?0:(v-e)/w/C,x=`${yn(100*t,2)}%`}return{btDays:N,btYears:yn(C,1),numTrade:a,numTradeFin:l,numTradeUnsettled:f,uTradeAllMax:w,rTradeAllMax:b,numTradeAllMax:M,uDrawdownMax:d,rDrawdownMax:h,rEquivalentDrawdownMax:p,rSharpe:_,rWin:c,uEquityFinal:v,uCumuProfitOrLossFinal:m,rCumuProfitOrLossFinal:y,rCumuProfitOrLossFinalNormYear:A,rEquivalentCumuProfitOrLossFinal:g,rEquivalentCumuProfitOrLossFinalNormYear:x}},ru=async(t,e,r,n={})=>{let i=ut(e,"mode","");if("long"!==i&&"short"!==i)throw new Error(`invalid strategy.mode[${i}] not 'long' or 'short'`);let o=ut(e,"keyOhlc","");if(!Yt(o))throw new Error("invalid strategy.keyOhlc");let s=ut(e,"conds",[]);if(!Pn(s))throw new Error("invalid strategy.conds");let u=cr(s),a=ut(e,"settings",{});if(Ls(a)||(a={uIni:1e3,uTrade:1,rTakeProfit:.05,rStopLoss:.03,rFee:5e-4}),!cn(r))throw new Error("funGetSeries is not a function");let l=ut(n,"withCalcOrderProfitOrLoss",!0),f=ut(n,"withSummary",!0),c=await r(o),d={},h={};await Xs(s,async t=>{let e=await r(t.key);xn(h,t.key)||(h[t.key]={}),Hr(e,e=>{h[t.key][e.time]=e.param,xn(d,e.time)||(d[e.time]=0),d[e.time]+=1})});let p=[];Hr(d,(t,e)=>{t===u&&p.push(e)}),p=function(t,e={}){if(!Pn(t))return[];if(1===cr(t))return t;let r=ut(e,"localeCompare");Sn(r)||(r=!1);let n=ut(e,"returnIndex");Sn(n)||(n=!1);let i=ut(e,"compareKey",null),o=null;o=r?Ks:Js;let s,u=Vs(t);if(""===u)return[];if("obj"===u){if(!Yt(i))return[];let u=Ve(t,(t,e)=>ut(t,i,"")),a=Vs(u);if("num"!==a&&"str"!==a)return[];{r&&(a="files");let i=o(Ws(u,a,e),!0);s=n?i:Ve(i,e=>t[e])}}else"num"!==u&&"str"!==u||(r&&(u="files"),s=o(Ws(t,u,e),n));return s}(p);let v={};Hr(p,t=>{v[t]=!0});let m={};Hr(p,t=>{m[t]={},Hr(s,e=>{m[t][e.key]=h[e.key][t]})});let y=ut((g=c)&&g.length?g[0]:void 0,"time","");var g;let w=ut(function(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}(c),"time",""),b=[];await Xs(c,async t=>{let e=ut(t,"time");if(!xn(v,e))return!0;let r=!0;{let t=[];Hr(s,(r,n)=>{let i=m[e][r.key],o=ut(r,"sym",">"),s=ut(r,"th",0),u=ut(r,"opr",null);"and"!==u&&"or"!==u&&(u="and");let a=!1;a=">"===o?i>s:i<s,t.push({opr:u,b:a})});let n=t.filter(t=>"and"===t.opr).every(t=>t.b),i=t.filter(t=>"or"===t.opr),o=0===i.length||i.some(t=>t.b);r=n&&o}let n=!1,o=!1;if(r&&("long"===i?n=!0:o=!0),n){let r={mode:"long",timeStart:e,priceStart:t.Close,uTrade:a.uTrade,rTakeProfit:a.rTakeProfit,priceTakeProfit:(1+a.rTakeProfit)*t.Close,rStopLoss:a.rStopLoss,priceStopLoss:(1-a.rStopLoss)*t.Close,timeEnd:"",priceEnd:"",modeResult:"",rFee:a.rFee,uFee:a.rFee*a.uTrade,uProfitOrLoss:"",rProfitOrLoss:"",uCumuProfitOrLoss:"",rCumuProfitOrLoss:"",uEquity:"",uTradeAll:"",rTradeAll:""};b.push(r)}else if(o){let r={mode:"short",timeStart:e,priceStart:t.Close,uTrade:a.uTrade,rTakeProfit:a.rTakeProfit,priceTakeProfit:(1-a.rTakeProfit)*t.Close,rStopLoss:a.rStopLoss,priceStopLoss:(1+a.rStopLoss)*t.Close,timeEnd:"",priceEnd:"",modeResult:"",rFee:a.rFee,uFee:a.rFee*a.uTrade,uProfitOrLoss:"",rProfitOrLoss:"",uCumuProfitOrLoss:"",rCumuProfitOrLoss:"",uEquity:"",uTradeAll:"",rTradeAll:""};b.push(r)}}),l&&(b=await(async(t,e,r={})=>{e=Po(e,"timeStart");let n=ut(r,"uIni",1e3),i={};Hr(t,t=>{i[t.time]=t});let o={},s=n,u=0;Hr(e,(t,e)=>{Hr(i,r=>{if(r.time<=t.timeStart)return delete i[r.time],!0;if("long"===t.mode){if(r.Low<=t.priceStopLoss)return t.timeEnd=r.time,t.priceEnd=t.priceStopLoss,t.uProfitOrLoss=t.uTrade*(t.priceEnd/t.priceStart)-t.uTrade-2*t.uFee,t.rProfitOrLoss=t.uProfitOrLoss/t.uTrade,u+=t.uProfitOrLoss,t.uCumuProfitOrLoss=u,t.rCumuProfitOrLoss=yn(t.uCumuProfitOrLoss/n*100,2)+"%",s+=t.uProfitOrLoss,t.uEquity=s,t.modeResult=t.uProfitOrLoss<0?"loss":"profit",o[e]=t,!1;if(r.High>=t.priceTakeProfit)return t.timeEnd=r.time,t.priceEnd=t.priceTakeProfit,t.uProfitOrLoss=t.uTrade*(t.priceEnd/t.priceStart)-t.uTrade-2*t.uFee,t.rProfitOrLoss=t.uProfitOrLoss/t.uTrade,u+=t.uProfitOrLoss,t.uCumuProfitOrLoss=u,t.rCumuProfitOrLoss=yn(t.uCumuProfitOrLoss/n*100,2)+"%",s+=t.uProfitOrLoss,t.uEquity=s,t.modeResult=t.uProfitOrLoss<0?"loss":"profit",o[e]=t,!1}else{if(r.High>=t.priceStopLoss)return t.timeEnd=r.time,t.priceEnd=t.priceStopLoss,t.uProfitOrLoss=(t.priceStart-t.priceEnd)*(t.uTrade/t.priceStart)-2*t.uFee,t.rProfitOrLoss=t.uProfitOrLoss/t.uTrade,u+=t.uProfitOrLoss,t.uCumuProfitOrLoss=u,t.rCumuProfitOrLoss=yn(t.uCumuProfitOrLoss/n*100,2)+"%",s+=t.uProfitOrLoss,t.uEquity=s,t.modeResult=t.uProfitOrLoss<0?"loss":"profit",o[e]=t,!1;if(r.Low<=t.priceTakeProfit)return t.timeEnd=r.time,t.priceEnd=t.priceTakeProfit,t.uProfitOrLoss=(t.priceStart-t.priceEnd)*(t.uTrade/t.priceStart)-2*t.uFee,t.rProfitOrLoss=t.uProfitOrLoss/t.uTrade,u+=t.uProfitOrLoss,t.uCumuProfitOrLoss=u,t.rCumuProfitOrLoss=yn(t.uCumuProfitOrLoss/n*100,2)+"%",s+=t.uProfitOrLoss,t.uEquity=s,t.modeResult=t.uProfitOrLoss<0?"loss":"profit",o[e]=t,!1}})});{let t=[];Hr(e,(e,r)=>{let n=null;n=xn(o,r)?o[r]:e,t.push(n)}),e=t}return e})(c,b,{uIni:a.uIni}));let M={timeTest:t().format("YYYY-MM-DDTHH:mm:ssZ"),timeOhlcStart:y,timeOhlcEnd:w,uIni:ut(a,"uIni","")};if(f){b=((t,e)=>Ve(e,e=>{if(!Yt(e.modeResult))return e;let r=t(e.timeStart),n=t(e.timeEnd),i=r.format("YYYY-MM-DD"),o=n.format("YYYY-MM-DD"),s=t(i,"YYYY-MM-DD"),u=t(o,"YYYY-MM-DD").diff(s,"day")+1;e.dayHold=u;let a=0;return 1+e.rProfitOrLoss>=0&&(a=Math.pow(1+e.rProfitOrLoss,1/e.dayHold)-1),e.rProfitOrLossDay=a,e}))(t,b);let e=eu(t,a.uIni,b,y,w);M={...M,...e}}return{orders:b,summary:M}};function nu(t){let r=null,n=function(t,e={}){let r=null,n=ut(e,"fs"),i="";try{i=n.readFileSync(t,"utf8")}catch(t){r=t}return null!==r?{error:r}:{success:i}}(t,{fs:e});if(n.error)return n;let i=n.success,o=null;try{o=JSON.parse(i)}catch(t){r=t}return null!==r?{error:r}:{success:o}}function iu(r,n=1){return function(t,e=1,r={}){let n=1,i=ut(r,"path"),o=ut(r,"fs");if(!wn(t,{fs:o}))throw new Error(`fd[${t}] is not a folder`);return null!==e&&Ur(e)&&(e=Ar(e))<1&&(e=1),function t(r){let s=[];return wn(r,{fs:o})?(Hr(o.readdirSync(r),function(u){let a=i.resolve(r,u),l=null;try{l=o.statSync(a)}catch(t){}l&&l.isDirectory()?(s.push({isFolder:!0,level:n,path:a,name:i.basename(a)}),n+=1,(n<=e||null===e)&&(s=s.concat(t(a))),n-=1):s.push({isFolder:!1,level:n,path:a,name:i.basename(a)})}),s):s}(t)}(r,n,{path:t,fs:e})}let ou={dlmSeps:" ║ ",dlmPkgs:" ⊙ "},su=(t,e={})=>{let r=ut(e,"readContent",!1);if(!_n(t))return console.log(`invalid fd[${t}]`),[];let n=iu(t);if(n=tu(n,{isFolder:!1}),0===cr(n))return console.log(`fd[${t}] no files`),[];let i=[];return Hr(n,t=>{let e=function(t,e,r){return Yt(t)&&Yt(e)&&Ht(r)?String(t).replaceAll(e,r):""}(t.name,".json",""),n=fn(e,ou.dlmPkgs),o=ut(n,0,"");if(!Yt(o))return!0;let s=ut(n,1,""),u=ut(n,2,""),a=fn(o,ou.dlmSeps),l=ut(a,0,"");a=zs(a);let f=`${o}:${s}`,c={path:t.path,name:t.name,tkid:f,tid:o,levelNumTrade:s,rEquivalentCumuProfitOrLossFinalNormYear:u,mode:l,ps:a};if(r){let e=nu(t.path);c.data=ut(e,"success",null)}i.push(c)}),i};var uu=Array.prototype.join;function au(t,e){return null==t?"":uu.call(t,e)}let lu=(t,e,r,n)=>{let i=au([r,...n],ou.dlmSeps);return i=i.replaceAll(`${t}_`,""),i=i.replaceAll(`${e}_`,""),i=i.replaceAll("price_","p_"),i=i.replaceAll("index_","i_"),i=i.replaceAll("Ohlc_","o_"),i=i.replaceAll("Close_","c_"),i=i.replaceAll("Volumn_","v_"),i},fu=(t,e,r,n)=>{let i=au([r,...Ve(n,t=>`${t.key}${t.sym}${t.th}`)],ou.dlmSeps);return i=i.replaceAll(`${t}_`,""),i=i.replaceAll(`${e}_`,""),i=i.replaceAll("price_","p_"),i=i.replaceAll("index_","i_"),i=i.replaceAll("Ohlc_","o_"),i=i.replaceAll("Close_","c_"),i=i.replaceAll("Volumn_","v_"),i},cu=t=>(t=gs(t)).indexOf("%")<0?0:(t=Cr(t=t.replace("%","")),t/=100),du=t=>{if(!Nr(t))throw new Error(`numTrade[${t}] is not a number`);let e=0;return e=(t=Ar(t))<=0?0:t<=5?1:t<=9?2:t<=24?11:t<=49?12:t<=74?13:t<=99?14:t<=249?101:t<=499?102:t<=749?103:t<=999?104:t<=1999?1001:t<=2999?1002:t<=3999?1003:t<=4999?1004:100,e},hu=(t,e)=>{let r=Ar(e.numTrade),n=t.uIni,i=e.uEquityFinal-n,o=cu(e.rEquivalentCumuProfitOrLossFinalNormYear);o=Math.min(Math.max(o,0),.5),o/=.5;let s=1-o,u=cu(e.rWin);u=Math.min(Math.max(u,0),1);let a=0;return a+=2*(1-u),a+=1*s,0===r&&(a+=1e6),i<=0&&(a+=1e6),a},pu=(t,e,r,n,i,o)=>{let s=lu(t,e,r,n),u=Ar(o.numTrade),a=du(u),l=o.rEquivalentCumuProfitOrLossFinalNormYear;return`${s}${ou.dlmPkgs}${a}${ou.dlmPkgs}${l}.json`},vu=async(r,n,i,o,s,u,a,l,f,c,d,h={})=>{if(!Yt(n))throw new Error(`invalid name[${n}]`);if(!Yt(i))throw new Error(`invalid symbol[${i}]`);if(!Yt(o))throw new Error(`invalid interval[${o}]`);if(!Yt(s))throw new Error(`invalid fdOhlc[${s}]`);if(!Yt(u))throw new Error(`invalid fdParam[${u}]`);if(!Yt(a))throw new Error(`invalid timeStart[${a}]`);if(!Yt(l))throw new Error(`invalid timeEnd[${l}]`);if("long"!==f&&"short"!==f)throw new Error(`invalid mode[${f}]`);if(!Pn(c))throw new Error(`invalid keys[${c}]`);if(!Yt(d))throw new Error(`invalid fdData[${d}]`);let p=ut(h,"methodOml","");Yt(p)||(p="PSO");let v=ut(h,"thsTp",null);Pn(v)||(v=[1,2,3,4,5,6,7,8,9,10]);let m=ut(h,"thsSl",null);Pn(m)||(m=[1,2,3,4,5,6,7,8,9,10]);let y=ut(h,"thNumTrade",null);Nr(y)||(y=1);let g=ut(h,"thRWin",null);Nr(g)||(g=.5);let w=ut(h,"thREquivalentCumuProfitOrLossFinalNormYear",null);Nr(w)||(w=.15);let b=ut(h,"useShowLog",null),M=vn(s,u);_n(d)||bn(d,{fs:e});let _=await M.buildGetTimeSeriesByTimeRange(a,l),j=lu(n,o,f,c),O=[];{let t;t=m,t=Ve(t,t=>t/100),O.push({values:t,n:cr(t)}),t=v,t=Ve(t,t=>t/100),O.push({values:t,n:cr(t)})}Hr(c,()=>{let t=Rn(-2,2,40);t=Ve(t,t=>t+10);let e=Rn(-2,2,40);e=Ve(e,t=>t-10);let r=[...t,...e];O.push({values:r,n:cr(r)})});let S=0,E=1e20,$=Us;"RGA"===p?$=Bs:"DE"===p?$=Is:"HS"===p?$=qs:"PSO"===p?$=Us:"ACO"===p&&($=Gs);let N=await $(O,async s=>{S++;let u=s[0];u=Er(u,3);let a=s[1];a=Er(a,3);let l=Ve(c,(t,e)=>{let r=e+2,n=ut(s,r,null);if(null===n)throw console.log("xs",s),console.log("ix",r),console.log("key",t),console.log("i",e),new Error("invalid x");let i="",o=null;return n<0?(i="<",o=n+10,o=go(o,3)):(i=">",o=n-10,o=go(o,3)),{key:t,sym:i,th:o}}),h=fu(n,o,f,l),p={tid:j,sid:h,name:n,symbol:i,interval:o,keyOhlc:`${n}_price_${o}`,mode:f,conds:l,settings:{uIni:1e3,uTrade:1,rTakeProfit:a,rStopLoss:u,rFee:5e-4}},v=await ru(r,p,_),m=Ar(v.summary.numTrade),M=cu(v.summary.rWin),O=cu(v.summary.rEquivalentCumuProfitOrLossFinalNormYear),$=hu(p.settings,v.summary),N={...p,summary:v.summary,fitness:$},C={"方向":N.mode,"每次下單金額":N.settings.uTrade,"止盈":yn(100*N.settings.rTakeProfit,1)+"%","止損":yn(100*N.settings.rStopLoss,1)+"%","最大持倉比例":N.summary.rTradeAllMax,"交易次數":N.summary.numTrade,"最大回撤率":N.summary.rDrawdownMax,"勝率":N.summary.rWin,"夏普值":yn(N.summary.rSharpe,4),"最終盈虧":N.summary.rCumuProfitOrLossFinal,"最終等效盈虧":N.summary.rEquivalentCumuProfitOrLossFinal,"最終等效年化盈虧":N.summary.rEquivalentCumuProfitOrLossFinalNormYear,fitness:N.fitness};if(E>$&&(b&&console.log(S,"更新最佳解",C),E=$),m>=y&&M>=g&&O>=w){b&&console.log(S,"可用參數組",C);let r={};Hr(su(d,{readContent:!1}),t=>{r[t.tkid]=t});let i=du(m),s=`${j}:${i}`,u=!1,a=O;if(xn(r,s)){let t=cu(r[s].rEquivalentCumuProfitOrLossFinalNormYear);a>t&&(u=!0,b&&console.log("刪除較差策略...",`${a} > ${t}`,r[s].path),function(t){Mn(t,{fs:e})}(r[s].path))}else u=!0;if(u){let e=pu(n,o,f,c,0,v.summary);An(t.resolve(d,e),N,{useFormat:!0})}}return $},{...h});return b&&(console.log("bestSolution",N.bestSolution),console.log("stopMode",N.stopMode),console.log("stopIteration",N.stopIteration),console.log("stopExecutions",N.stopExecutions)),N},mu=async(t,e,r,n,i,o,s,u,a,l,f,c={})=>{if(!Yt(e))throw new Error(`invalid name[${e}]`);if(!Yt(r))throw new Error(`invalid symbol[${r}]`);if(!Yt(n))throw new Error(`invalid interval[${n}]`);if(!Yt(i))throw new Error(`invalid fdOhlc[${i}]`);if(!Yt(o))throw new Error(`invalid fdParam[${o}]`);if(!Yt(s))throw new Error(`invalid timeStart[${s}]`);if(!Yt(u))throw new Error(`invalid timeEnd[${u}]`);if("long"!==a&&"short"!==a)throw new Error(`invalid mode[${a}]`);if(!cn(l))throw new Error("funPickKeys is not a function");if(!Yt(f))throw new Error(`invalid fdData[${f}]`);let d=ut(c,"funFilterKeysNorm",null),h=ut(c,"funFilterKeysIndex",null),p=ut(c,"funFilterKeysVolumn",null),v=vn(i,o).getKeysParam(),m=[],y=[],g=[];Hr(v,t=>{let e=0===t.indexOf("index_"),r=t.indexOf("_vbs_")>=0,n=!(e||r);e?m.push(t):r?y.push(t):n&&g.push(t)}),cn(d)&&(g=await d(g)),cn(h)&&(m=await h(m)),cn(p)&&(y=await p(y));let w=l({keysNorm:g,keysIndex:m,keysVolumn:y});await vu(t,e,r,n,i,o,s,u,a,w,f,c)},yu=async(t,e,r,n,i,o,s,u,a,l,f,c={})=>{if(!Yt(e))throw new Error(`invalid name[${e}]`);if(!Yt(r))throw new Error(`invalid symbol[${r}]`);if(!Yt(n))throw new Error(`invalid interval[${n}]`);if(!Yt(i))throw new Error(`invalid fdOhlc[${i}]`);if(!Yt(o))throw new Error(`invalid fdParam[${o}]`);if(!Yt(s))throw new Error(`invalid timeStart[${s}]`);if(!Yt(u))throw new Error(`invalid timeEnd[${u}]`);if("long"!==a&&"short"!==a)throw new Error(`invalid mode[${a}]`);if(!Yt(l))throw new Error(`invalid comps[${l}]`);if(!Yt(f))throw new Error(`invalid fdData[${f}]`);let d=fn(l,",");if(3!==cr(d))throw new Error(`comps[${l}]非預期`);d=Ve(d,Ar);let h=(t,e)=>Ve(Gr(0,cr(t)-1,e),e=>ut(t,e));await mu(t,e,r,n,i,o,s,u,a,({keysNorm:t,keysIndex:e,keysVolumn:r})=>{let n=[];return d[0]>=1&&(n=[...n,...h(t,d[0])]),d[1]>=1&&(n=[...n,...h(e,d[1])]),d[2]>=1&&(n=[...n,...h(r,d[2])]),n},f,c)};return{estimFinder:async(t,e,n,i,o,s,u,a={})=>{if(!Yt(e))throw new Error(`invalid name[${e}]`);if(!Yt(n))throw new Error(`invalid symbol[${n}]`);if(!Yt(i))throw new Error(`invalid interval[${i}]`);if(!Yt(o))throw new Error(`invalid fdOhlc[${o}]`);if(!Yt(s))throw new Error(`invalid fdParam[${s}]`);if(!Yt(u))throw new Error(`invalid fdData[${u}]`);let l=ut(a,"mode",null),f=ut(a,"timeStart",null),c=ut(a,"timeEnd",null),d=ut(a,"comps",null),h="";h=Yt(l)?l:Math.random()<.5?"long":"short";let p="2022-07-01T00:00:00";Yt(f)&&(p=f);let v="";v=Yt(c)?c:"long"===h?"2025-04-08T00:00:00":"2025-10-06T00:00:00";let m=["2,0,0","3,0,0","4,0,0","2,1,0","3,1,0","4,1,0","2,2,0","3,2,0","4,2,0","2,0,1","3,0,1","4,0,1","2,1,1","3,1,1","4,1,1","2,2,1","3,2,1","4,2,1"],y="";var g;y=Yt(d)?d:(r(g=m)?ct:zt)(g),await yu(t,e,n,i,o,s,p,v,h,y,u,a)},estimComps:yu,estimPicks:mu,estimKeys:vu,readStrategies:su,genTid:lu,genSid:fu,genStrategyFileName:pu,calcLevelNumTrade:du,calcFitness:hu,cont:ou}});
19
19
  //# sourceMappingURL=w-trade-solve.umd.js.map