@guihz/trading-vue-editor-tes 0.0.8 → 0.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/assets/editor.worker-CT5Cb1wO.js +11 -0
- package/lib/assets/{parserTccWorker-Bti5p29_.js → parserTccWorker-cXJaK8VI.js} +18 -17
- package/lib/assets/scriptsRunWorker-Bx4RsHhS.js +66 -0
- package/lib/components/editor/index.d.ts +5 -0
- package/lib/components/editor/parseScript/buildInConstants.d.ts +51 -0
- package/lib/components/editor/parseScript/buildInFuncNamespace/box.d.ts +99 -0
- package/lib/components/editor/parseScript/buildInFuncNamespace/chartPoint.d.ts +27 -0
- package/lib/components/editor/parseScript/buildInFuncNamespace/index.d.ts +11 -1
- package/lib/components/editor/parseScript/buildInFuncNamespace/label.d.ts +77 -0
- package/lib/components/editor/parseScript/buildInFuncNamespace/line.d.ts +81 -0
- package/lib/components/editor/parseScript/buildInFuncNamespace/linefill.d.ts +37 -0
- package/lib/components/editor/parseScript/buildInFuncNamespace/log.d.ts +24 -0
- package/lib/components/editor/parseScript/buildInFuncNamespace/polyline.d.ts +31 -0
- package/lib/components/editor/parseScript/buildInFuncNamespace/runtime.d.ts +10 -0
- package/lib/components/editor/parseScript/buildInFuncNamespace/strategy.d.ts +95 -0
- package/lib/components/editor/parseScript/buildInFuncNamespace/ta.d.ts +3 -3
- package/lib/components/editor/parseScript/buildInFuncNamespace/table.d.ts +94 -0
- package/lib/components/editor/parseScript/constants.d.ts +16 -0
- package/lib/components/editor/parseScript/type.d.ts +1 -0
- package/lib/components/editor/parseScript/visitorParser.d.ts +1 -0
- package/lib/components/editor/parseScript/workerStorage.d.ts +0 -4
- package/lib/components/editor/type/index.d.ts +2 -0
- package/lib/components/editor/utils/initEditor.d.ts +4 -0
- package/lib/trading-vue-editor.js +3856 -3519
- package/lib/trading-vue-editor.umd.cjs +39 -39
- package/package.json +1 -1
- package/lib/assets/scriptsRunWorker-DvC1lFMR.js +0 -66
- package/lib/components/editor/parseScript/buildInVariables.d.ts +0 -124
@@ -0,0 +1,66 @@
|
|
1
|
+
var DC=Object.defineProperty;var yC=(Wt,Zt,De)=>Zt in Wt?DC(Wt,Zt,{enumerable:!0,configurable:!0,writable:!0,value:De}):Wt[Zt]=De;var G=(Wt,Zt,De)=>(yC(Wt,typeof Zt!="symbol"?Zt+"":Zt,De),De),wl=(Wt,Zt,De)=>{if(!Zt.has(Wt))throw TypeError("Cannot "+De)};var Rr=(Wt,Zt,De)=>(wl(Wt,Zt,"read from private field"),De?De.call(Wt):Zt.get(Wt)),Dl=(Wt,Zt,De)=>{if(Zt.has(Wt))throw TypeError("Cannot add the same private member more than once");Zt instanceof WeakSet?Zt.add(Wt):Zt.set(Wt,De)},eu=(Wt,Zt,De,Sn)=>(wl(Wt,Zt,"write to private field"),Sn?Sn.call(Wt,De):Zt.set(Wt,De),De);var yl=(Wt,Zt,De)=>(wl(Wt,Zt,"access private method"),De);(function(){"use strict";var Gi,bl,vi,qe;var Wt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Zt(i){return i&&i.__esModule&&Object.prototype.hasOwnProperty.call(i,"default")?i.default:i}function De(i){if(i.__esModule)return i;var t=i.default;if(typeof t=="function"){var e=function r(){return this instanceof r?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};e.prototype=t.prototype}else e={};return Object.defineProperty(e,"__esModule",{value:!0}),Object.keys(i).forEach(function(r){var n=Object.getOwnPropertyDescriptor(i,r);Object.defineProperty(e,r,n.get?n:{enumerable:!0,get:function(){return i[r]}})}),e}var Sn={exports:{}};/**
|
2
|
+
* @license
|
3
|
+
* Lodash <https://lodash.com/>
|
4
|
+
* Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
|
5
|
+
* Released under MIT license <https://lodash.com/license>
|
6
|
+
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
|
7
|
+
* Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
|
8
|
+
*/Sn.exports,function(i,t){(function(){var e,r="4.17.21",n=200,s="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",a="Expected a function",l="Invalid `variable` option passed into `_.template`",f="__lodash_hash_undefined__",h=500,p="__lodash_placeholder__",c=1,d=2,_=4,D=1,g=2,y=1,v=2,E=4,b=8,N=16,x=32,F=64,M=128,S=256,$=512,C=30,I="...",R=800,U=16,q=1,k=2,P=3,K=1/0,j=9007199254740991,Q=17976931348623157e292,tt=NaN,ft=4294967295,vt=ft-1,lt=ft>>>1,wt=[["ary",M],["bind",y],["bindKey",v],["curry",b],["curryRight",N],["flip",$],["partial",x],["partialRight",F],["rearg",S]],yt="[object Arguments]",St="[object Array]",bt="[object AsyncFunction]",ee="[object Boolean]",It="[object Date]",Mt="[object DOMException]",ie="[object Error]",Ht="[object Function]",zt="[object GeneratorFunction]",Gt="[object Map]",Ce="[object Number]",ir="[object Null]",Me="[object Object]",Xr="[object Promise]",vn="[object Proxy]",Hr="[object RegExp]",sr="[object Set]",_n="[object String]",O="[object Symbol]",Z="[object Undefined]",J="[object WeakMap]",nt="[object WeakSet]",st="[object ArrayBuffer]",rt="[object DataView]",ct="[object Float32Array]",at="[object Float64Array]",ht="[object Int8Array]",ut="[object Int16Array]",Kt="[object Int32Array]",Qt="[object Uint8Array]",pe="[object Uint8ClampedArray]",Te="[object Uint16Array]",Ne="[object Uint32Array]",or=/\b__p \+= '';/g,ur=/\b(__p \+=) '' \+/g,wn=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Un=/&(?:amp|lt|gt|quot|#39);/g,fo=/[&<>"']/g,qu=RegExp(Un.source),Uu=RegExp(fo.source),ku=/<%-([\s\S]+?)%>/g,Wu=/<%([\s\S]+?)%>/g,co=/<%=([\s\S]+?)%>/g,Yu=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Zu=/^\w*$/,ju=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Ki=/[\\^$.*+?()[\]{}|]/g,Gu=RegExp(Ki.source),Ji=/^\s+/,Ku=/\s/,Ju=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Xu=/\{\n\/\* \[wrapped with (.+)\] \*/,Hu=/,? & /,Qu=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Vu=/[()=,{}\[\]\/\s]/,ta=/\\(\\)?/g,ea=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,ho=/\w*$/,ra=/^[-+]0x[0-9a-f]+$/i,na=/^0b[01]+$/i,ia=/^\[object .+?Constructor\]$/,sa=/^0o[0-7]+$/i,oa=/^(?:0|[1-9]\d*)$/,ua=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,_i=/($^)/,kn=/['\n\r\u2028\u2029\\]/g,Yt="\\ud800-\\udfff",Ue="\\u0300-\\u036f",aa="\\ufe20-\\ufe2f",wi="\\u20d0-\\u20ff",Dn=Ue+aa+wi,po="\\u2700-\\u27bf",eh="a-z\\xdf-\\xf6\\xf8-\\xff",gD="\\xac\\xb1\\xd7\\xf7",vD="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",_D="\\u2000-\\u206f",wD=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",rh="A-Z\\xc0-\\xd6\\xd8-\\xde",nh="\\ufe0e\\ufe0f",ih=gD+vD+_D+wD,la="['’]",DD="["+Yt+"]",sh="["+ih+"]",mo="["+Dn+"]",oh="\\d+",yD="["+po+"]",uh="["+eh+"]",ah="[^"+Yt+ih+oh+po+eh+rh+"]",fa="\\ud83c[\\udffb-\\udfff]",bD="(?:"+mo+"|"+fa+")",lh="[^"+Yt+"]",ca="(?:\\ud83c[\\udde6-\\uddff]){2}",ha="[\\ud800-\\udbff][\\udc00-\\udfff]",Di="["+rh+"]",fh="\\u200d",ch="(?:"+uh+"|"+ah+")",ED="(?:"+Di+"|"+ah+")",hh="(?:"+la+"(?:d|ll|m|re|s|t|ve))?",ph="(?:"+la+"(?:D|LL|M|RE|S|T|VE))?",mh=bD+"?",dh="["+nh+"]?",AD="(?:"+fh+"(?:"+[lh,ca,ha].join("|")+")"+dh+mh+")*",xD="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",CD="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",gh=dh+mh+AD,FD="(?:"+[yD,ca,ha].join("|")+")"+gh,MD="(?:"+[lh+mo+"?",mo,ca,ha,DD].join("|")+")",ND=RegExp(la,"g"),SD=RegExp(mo,"g"),pa=RegExp(fa+"(?="+fa+")|"+MD+gh,"g"),BD=RegExp([Di+"?"+uh+"+"+hh+"(?="+[sh,Di,"$"].join("|")+")",ED+"+"+ph+"(?="+[sh,Di+ch,"$"].join("|")+")",Di+"?"+ch+"+"+hh,Di+"+"+ph,CD,xD,oh,FD].join("|"),"g"),ID=RegExp("["+fh+Yt+Dn+nh+"]"),TD=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,$D=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],OD=-1,ce={};ce[ct]=ce[at]=ce[ht]=ce[ut]=ce[Kt]=ce[Qt]=ce[pe]=ce[Te]=ce[Ne]=!0,ce[yt]=ce[St]=ce[st]=ce[ee]=ce[rt]=ce[It]=ce[ie]=ce[Ht]=ce[Gt]=ce[Ce]=ce[Me]=ce[Hr]=ce[sr]=ce[_n]=ce[J]=!1;var le={};le[yt]=le[St]=le[st]=le[rt]=le[ee]=le[It]=le[ct]=le[at]=le[ht]=le[ut]=le[Kt]=le[Gt]=le[Ce]=le[Me]=le[Hr]=le[sr]=le[_n]=le[O]=le[Qt]=le[pe]=le[Te]=le[Ne]=!0,le[ie]=le[Ht]=le[J]=!1;var RD={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},LD={"&":"&","<":"<",">":">",'"':""","'":"'"},PD={"&":"&","<":"<",">":">",""":'"',"'":"'"},zD={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},qD=parseFloat,UD=parseInt,vh=typeof Wt=="object"&&Wt&&Wt.Object===Object&&Wt,kD=typeof self=="object"&&self&&self.Object===Object&&self,Le=vh||kD||Function("return this")(),ma=t&&!t.nodeType&&t,Wn=ma&&!0&&i&&!i.nodeType&&i,_h=Wn&&Wn.exports===ma,da=_h&&vh.process,_r=function(){try{var W=Wn&&Wn.require&&Wn.require("util").types;return W||da&&da.binding&&da.binding("util")}catch{}}(),wh=_r&&_r.isArrayBuffer,Dh=_r&&_r.isDate,yh=_r&&_r.isMap,bh=_r&&_r.isRegExp,Eh=_r&&_r.isSet,Ah=_r&&_r.isTypedArray;function ar(W,H,X){switch(X.length){case 0:return W.call(H);case 1:return W.call(H,X[0]);case 2:return W.call(H,X[0],X[1]);case 3:return W.call(H,X[0],X[1],X[2])}return W.apply(H,X)}function WD(W,H,X,gt){for(var Bt=-1,Jt=W==null?0:W.length;++Bt<Jt;){var Se=W[Bt];H(gt,Se,X(Se),W)}return gt}function wr(W,H){for(var X=-1,gt=W==null?0:W.length;++X<gt&&H(W[X],X,W)!==!1;);return W}function YD(W,H){for(var X=W==null?0:W.length;X--&&H(W[X],X,W)!==!1;);return W}function xh(W,H){for(var X=-1,gt=W==null?0:W.length;++X<gt;)if(!H(W[X],X,W))return!1;return!0}function yn(W,H){for(var X=-1,gt=W==null?0:W.length,Bt=0,Jt=[];++X<gt;){var Se=W[X];H(Se,X,W)&&(Jt[Bt++]=Se)}return Jt}function go(W,H){var X=W==null?0:W.length;return!!X&&yi(W,H,0)>-1}function ga(W,H,X){for(var gt=-1,Bt=W==null?0:W.length;++gt<Bt;)if(X(H,W[gt]))return!0;return!1}function me(W,H){for(var X=-1,gt=W==null?0:W.length,Bt=Array(gt);++X<gt;)Bt[X]=H(W[X],X,W);return Bt}function bn(W,H){for(var X=-1,gt=H.length,Bt=W.length;++X<gt;)W[Bt+X]=H[X];return W}function va(W,H,X,gt){var Bt=-1,Jt=W==null?0:W.length;for(gt&&Jt&&(X=W[++Bt]);++Bt<Jt;)X=H(X,W[Bt],Bt,W);return X}function ZD(W,H,X,gt){var Bt=W==null?0:W.length;for(gt&&Bt&&(X=W[--Bt]);Bt--;)X=H(X,W[Bt],Bt,W);return X}function _a(W,H){for(var X=-1,gt=W==null?0:W.length;++X<gt;)if(H(W[X],X,W))return!0;return!1}var jD=wa("length");function GD(W){return W.split("")}function KD(W){return W.match(Qu)||[]}function Ch(W,H,X){var gt;return X(W,function(Bt,Jt,Se){if(H(Bt,Jt,Se))return gt=Jt,!1}),gt}function vo(W,H,X,gt){for(var Bt=W.length,Jt=X+(gt?1:-1);gt?Jt--:++Jt<Bt;)if(H(W[Jt],Jt,W))return Jt;return-1}function yi(W,H,X){return H===H?oy(W,H,X):vo(W,Fh,X)}function JD(W,H,X,gt){for(var Bt=X-1,Jt=W.length;++Bt<Jt;)if(gt(W[Bt],H))return Bt;return-1}function Fh(W){return W!==W}function Mh(W,H){var X=W==null?0:W.length;return X?ya(W,H)/X:tt}function wa(W){return function(H){return H==null?e:H[W]}}function Da(W){return function(H){return W==null?e:W[H]}}function Nh(W,H,X,gt,Bt){return Bt(W,function(Jt,Se,ue){X=gt?(gt=!1,Jt):H(X,Jt,Se,ue)}),X}function XD(W,H){var X=W.length;for(W.sort(H);X--;)W[X]=W[X].value;return W}function ya(W,H){for(var X,gt=-1,Bt=W.length;++gt<Bt;){var Jt=H(W[gt]);Jt!==e&&(X=X===e?Jt:X+Jt)}return X}function ba(W,H){for(var X=-1,gt=Array(W);++X<W;)gt[X]=H(X);return gt}function HD(W,H){return me(H,function(X){return[X,W[X]]})}function Sh(W){return W&&W.slice(0,$h(W)+1).replace(Ji,"")}function lr(W){return function(H){return W(H)}}function Ea(W,H){return me(H,function(X){return W[X]})}function Xi(W,H){return W.has(H)}function Bh(W,H){for(var X=-1,gt=W.length;++X<gt&&yi(H,W[X],0)>-1;);return X}function Ih(W,H){for(var X=W.length;X--&&yi(H,W[X],0)>-1;);return X}function QD(W,H){for(var X=W.length,gt=0;X--;)W[X]===H&&++gt;return gt}var VD=Da(RD),ty=Da(LD);function ey(W){return"\\"+zD[W]}function ry(W,H){return W==null?e:W[H]}function bi(W){return ID.test(W)}function ny(W){return TD.test(W)}function iy(W){for(var H,X=[];!(H=W.next()).done;)X.push(H.value);return X}function Aa(W){var H=-1,X=Array(W.size);return W.forEach(function(gt,Bt){X[++H]=[Bt,gt]}),X}function Th(W,H){return function(X){return W(H(X))}}function En(W,H){for(var X=-1,gt=W.length,Bt=0,Jt=[];++X<gt;){var Se=W[X];(Se===H||Se===p)&&(W[X]=p,Jt[Bt++]=X)}return Jt}function _o(W){var H=-1,X=Array(W.size);return W.forEach(function(gt){X[++H]=gt}),X}function sy(W){var H=-1,X=Array(W.size);return W.forEach(function(gt){X[++H]=[gt,gt]}),X}function oy(W,H,X){for(var gt=X-1,Bt=W.length;++gt<Bt;)if(W[gt]===H)return gt;return-1}function uy(W,H,X){for(var gt=X+1;gt--;)if(W[gt]===H)return gt;return gt}function Ei(W){return bi(W)?ly(W):jD(W)}function Ir(W){return bi(W)?fy(W):GD(W)}function $h(W){for(var H=W.length;H--&&Ku.test(W.charAt(H)););return H}var ay=Da(PD);function ly(W){for(var H=pa.lastIndex=0;pa.test(W);)++H;return H}function fy(W){return W.match(pa)||[]}function cy(W){return W.match(BD)||[]}var hy=function W(H){H=H==null?Le:Ai.defaults(Le.Object(),H,Ai.pick(Le,$D));var X=H.Array,gt=H.Date,Bt=H.Error,Jt=H.Function,Se=H.Math,ue=H.Object,xa=H.RegExp,py=H.String,Dr=H.TypeError,wo=X.prototype,my=Jt.prototype,xi=ue.prototype,Do=H["__core-js_shared__"],yo=my.toString,re=xi.hasOwnProperty,dy=0,Oh=function(){var o=/[^.]+$/.exec(Do&&Do.keys&&Do.keys.IE_PROTO||"");return o?"Symbol(src)_1."+o:""}(),bo=xi.toString,gy=yo.call(ue),vy=Le._,_y=xa("^"+yo.call(re).replace(Ki,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Eo=_h?H.Buffer:e,An=H.Symbol,Ao=H.Uint8Array,Rh=Eo?Eo.allocUnsafe:e,xo=Th(ue.getPrototypeOf,ue),Lh=ue.create,Ph=xi.propertyIsEnumerable,Co=wo.splice,zh=An?An.isConcatSpreadable:e,Hi=An?An.iterator:e,Yn=An?An.toStringTag:e,Fo=function(){try{var o=Jn(ue,"defineProperty");return o({},"",{}),o}catch{}}(),wy=H.clearTimeout!==Le.clearTimeout&&H.clearTimeout,Dy=gt&>.now!==Le.Date.now&>.now,yy=H.setTimeout!==Le.setTimeout&&H.setTimeout,Mo=Se.ceil,No=Se.floor,Ca=ue.getOwnPropertySymbols,by=Eo?Eo.isBuffer:e,qh=H.isFinite,Ey=wo.join,Ay=Th(ue.keys,ue),Be=Se.max,ke=Se.min,xy=gt.now,Cy=H.parseInt,Uh=Se.random,Fy=wo.reverse,Fa=Jn(H,"DataView"),Qi=Jn(H,"Map"),Ma=Jn(H,"Promise"),Ci=Jn(H,"Set"),Vi=Jn(H,"WeakMap"),ts=Jn(ue,"create"),So=Vi&&new Vi,Fi={},My=Xn(Fa),Ny=Xn(Qi),Sy=Xn(Ma),By=Xn(Ci),Iy=Xn(Vi),Bo=An?An.prototype:e,es=Bo?Bo.valueOf:e,kh=Bo?Bo.toString:e;function B(o){if(we(o)&&!Tt(o)&&!(o instanceof Ut)){if(o instanceof yr)return o;if(re.call(o,"__wrapped__"))return W0(o)}return new yr(o)}var Mi=function(){function o(){}return function(u){if(!_e(u))return{};if(Lh)return Lh(u);o.prototype=u;var m=new o;return o.prototype=e,m}}();function Io(){}function yr(o,u){this.__wrapped__=o,this.__actions__=[],this.__chain__=!!u,this.__index__=0,this.__values__=e}B.templateSettings={escape:ku,evaluate:Wu,interpolate:co,variable:"",imports:{_:B}},B.prototype=Io.prototype,B.prototype.constructor=B,yr.prototype=Mi(Io.prototype),yr.prototype.constructor=yr;function Ut(o){this.__wrapped__=o,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=ft,this.__views__=[]}function Ty(){var o=new Ut(this.__wrapped__);return o.__actions__=Xe(this.__actions__),o.__dir__=this.__dir__,o.__filtered__=this.__filtered__,o.__iteratees__=Xe(this.__iteratees__),o.__takeCount__=this.__takeCount__,o.__views__=Xe(this.__views__),o}function $y(){if(this.__filtered__){var o=new Ut(this);o.__dir__=-1,o.__filtered__=!0}else o=this.clone(),o.__dir__*=-1;return o}function Oy(){var o=this.__wrapped__.value(),u=this.__dir__,m=Tt(o),w=u<0,A=m?o.length:0,T=Gb(0,A,this.__views__),L=T.start,z=T.end,Y=z-L,V=w?z:L-1,et=this.__iteratees__,ot=et.length,mt=0,_t=ke(Y,this.__takeCount__);if(!m||!w&&A==Y&&_t==Y)return h0(o,this.__actions__);var xt=[];t:for(;Y--&&mt<_t;){V+=u;for(var Rt=-1,Ct=o[V];++Rt<ot;){var qt=et[Rt],kt=qt.iteratee,hr=qt.type,je=kt(Ct);if(hr==k)Ct=je;else if(!je){if(hr==q)continue t;break t}}xt[mt++]=Ct}return xt}Ut.prototype=Mi(Io.prototype),Ut.prototype.constructor=Ut;function Zn(o){var u=-1,m=o==null?0:o.length;for(this.clear();++u<m;){var w=o[u];this.set(w[0],w[1])}}function Ry(){this.__data__=ts?ts(null):{},this.size=0}function Ly(o){var u=this.has(o)&&delete this.__data__[o];return this.size-=u?1:0,u}function Py(o){var u=this.__data__;if(ts){var m=u[o];return m===f?e:m}return re.call(u,o)?u[o]:e}function zy(o){var u=this.__data__;return ts?u[o]!==e:re.call(u,o)}function qy(o,u){var m=this.__data__;return this.size+=this.has(o)?0:1,m[o]=ts&&u===e?f:u,this}Zn.prototype.clear=Ry,Zn.prototype.delete=Ly,Zn.prototype.get=Py,Zn.prototype.has=zy,Zn.prototype.set=qy;function Qr(o){var u=-1,m=o==null?0:o.length;for(this.clear();++u<m;){var w=o[u];this.set(w[0],w[1])}}function Uy(){this.__data__=[],this.size=0}function ky(o){var u=this.__data__,m=To(u,o);if(m<0)return!1;var w=u.length-1;return m==w?u.pop():Co.call(u,m,1),--this.size,!0}function Wy(o){var u=this.__data__,m=To(u,o);return m<0?e:u[m][1]}function Yy(o){return To(this.__data__,o)>-1}function Zy(o,u){var m=this.__data__,w=To(m,o);return w<0?(++this.size,m.push([o,u])):m[w][1]=u,this}Qr.prototype.clear=Uy,Qr.prototype.delete=ky,Qr.prototype.get=Wy,Qr.prototype.has=Yy,Qr.prototype.set=Zy;function Vr(o){var u=-1,m=o==null?0:o.length;for(this.clear();++u<m;){var w=o[u];this.set(w[0],w[1])}}function jy(){this.size=0,this.__data__={hash:new Zn,map:new(Qi||Qr),string:new Zn}}function Gy(o){var u=Zo(this,o).delete(o);return this.size-=u?1:0,u}function Ky(o){return Zo(this,o).get(o)}function Jy(o){return Zo(this,o).has(o)}function Xy(o,u){var m=Zo(this,o),w=m.size;return m.set(o,u),this.size+=m.size==w?0:1,this}Vr.prototype.clear=jy,Vr.prototype.delete=Gy,Vr.prototype.get=Ky,Vr.prototype.has=Jy,Vr.prototype.set=Xy;function jn(o){var u=-1,m=o==null?0:o.length;for(this.__data__=new Vr;++u<m;)this.add(o[u])}function Hy(o){return this.__data__.set(o,f),this}function Qy(o){return this.__data__.has(o)}jn.prototype.add=jn.prototype.push=Hy,jn.prototype.has=Qy;function Tr(o){var u=this.__data__=new Qr(o);this.size=u.size}function Vy(){this.__data__=new Qr,this.size=0}function tb(o){var u=this.__data__,m=u.delete(o);return this.size=u.size,m}function eb(o){return this.__data__.get(o)}function rb(o){return this.__data__.has(o)}function nb(o,u){var m=this.__data__;if(m instanceof Qr){var w=m.__data__;if(!Qi||w.length<n-1)return w.push([o,u]),this.size=++m.size,this;m=this.__data__=new Vr(w)}return m.set(o,u),this.size=m.size,this}Tr.prototype.clear=Vy,Tr.prototype.delete=tb,Tr.prototype.get=eb,Tr.prototype.has=rb,Tr.prototype.set=nb;function Wh(o,u){var m=Tt(o),w=!m&&Hn(o),A=!m&&!w&&Nn(o),T=!m&&!w&&!A&&Ii(o),L=m||w||A||T,z=L?ba(o.length,py):[],Y=z.length;for(var V in o)(u||re.call(o,V))&&!(L&&(V=="length"||A&&(V=="offset"||V=="parent")||T&&(V=="buffer"||V=="byteLength"||V=="byteOffset")||nn(V,Y)))&&z.push(V);return z}function Yh(o){var u=o.length;return u?o[za(0,u-1)]:e}function ib(o,u){return jo(Xe(o),Gn(u,0,o.length))}function sb(o){return jo(Xe(o))}function Na(o,u,m){(m!==e&&!$r(o[u],m)||m===e&&!(u in o))&&tn(o,u,m)}function rs(o,u,m){var w=o[u];(!(re.call(o,u)&&$r(w,m))||m===e&&!(u in o))&&tn(o,u,m)}function To(o,u){for(var m=o.length;m--;)if($r(o[m][0],u))return m;return-1}function ob(o,u,m,w){return xn(o,function(A,T,L){u(w,A,m(A),L)}),w}function Zh(o,u){return o&&Yr(u,$e(u),o)}function ub(o,u){return o&&Yr(u,Qe(u),o)}function tn(o,u,m){u=="__proto__"&&Fo?Fo(o,u,{configurable:!0,enumerable:!0,value:m,writable:!0}):o[u]=m}function Sa(o,u){for(var m=-1,w=u.length,A=X(w),T=o==null;++m<w;)A[m]=T?e:fl(o,u[m]);return A}function Gn(o,u,m){return o===o&&(m!==e&&(o=o<=m?o:m),u!==e&&(o=o>=u?o:u)),o}function br(o,u,m,w,A,T){var L,z=u&c,Y=u&d,V=u&_;if(m&&(L=A?m(o,w,A,T):m(o)),L!==e)return L;if(!_e(o))return o;var et=Tt(o);if(et){if(L=Jb(o),!z)return Xe(o,L)}else{var ot=We(o),mt=ot==Ht||ot==zt;if(Nn(o))return d0(o,z);if(ot==Me||ot==yt||mt&&!A){if(L=Y||mt?{}:$0(o),!z)return Y?Pb(o,ub(L,o)):Lb(o,Zh(L,o))}else{if(!le[ot])return A?o:{};L=Xb(o,ot,z)}}T||(T=new Tr);var _t=T.get(o);if(_t)return _t;T.set(o,L),lp(o)?o.forEach(function(Ct){L.add(br(Ct,u,m,Ct,o,T))}):up(o)&&o.forEach(function(Ct,qt){L.set(qt,br(Ct,u,m,qt,o,T))});var xt=V?Y?Xa:Ja:Y?Qe:$e,Rt=et?e:xt(o);return wr(Rt||o,function(Ct,qt){Rt&&(qt=Ct,Ct=o[qt]),rs(L,qt,br(Ct,u,m,qt,o,T))}),L}function ab(o){var u=$e(o);return function(m){return jh(m,o,u)}}function jh(o,u,m){var w=m.length;if(o==null)return!w;for(o=ue(o);w--;){var A=m[w],T=u[A],L=o[A];if(L===e&&!(A in o)||!T(L))return!1}return!0}function Gh(o,u,m){if(typeof o!="function")throw new Dr(a);return ls(function(){o.apply(e,m)},u)}function ns(o,u,m,w){var A=-1,T=go,L=!0,z=o.length,Y=[],V=u.length;if(!z)return Y;m&&(u=me(u,lr(m))),w?(T=ga,L=!1):u.length>=n&&(T=Xi,L=!1,u=new jn(u));t:for(;++A<z;){var et=o[A],ot=m==null?et:m(et);if(et=w||et!==0?et:0,L&&ot===ot){for(var mt=V;mt--;)if(u[mt]===ot)continue t;Y.push(et)}else T(u,ot,w)||Y.push(et)}return Y}var xn=D0(Wr),Kh=D0(Ia,!0);function lb(o,u){var m=!0;return xn(o,function(w,A,T){return m=!!u(w,A,T),m}),m}function $o(o,u,m){for(var w=-1,A=o.length;++w<A;){var T=o[w],L=u(T);if(L!=null&&(z===e?L===L&&!cr(L):m(L,z)))var z=L,Y=T}return Y}function fb(o,u,m,w){var A=o.length;for(m=Ot(m),m<0&&(m=-m>A?0:A+m),w=w===e||w>A?A:Ot(w),w<0&&(w+=A),w=m>w?0:cp(w);m<w;)o[m++]=u;return o}function Jh(o,u){var m=[];return xn(o,function(w,A,T){u(w,A,T)&&m.push(w)}),m}function Pe(o,u,m,w,A){var T=-1,L=o.length;for(m||(m=Qb),A||(A=[]);++T<L;){var z=o[T];u>0&&m(z)?u>1?Pe(z,u-1,m,w,A):bn(A,z):w||(A[A.length]=z)}return A}var Ba=y0(),Xh=y0(!0);function Wr(o,u){return o&&Ba(o,u,$e)}function Ia(o,u){return o&&Xh(o,u,$e)}function Oo(o,u){return yn(u,function(m){return sn(o[m])})}function Kn(o,u){u=Fn(u,o);for(var m=0,w=u.length;o!=null&&m<w;)o=o[Zr(u[m++])];return m&&m==w?o:e}function Hh(o,u,m){var w=u(o);return Tt(o)?w:bn(w,m(o))}function Ye(o){return o==null?o===e?Z:ir:Yn&&Yn in ue(o)?jb(o):sE(o)}function Ta(o,u){return o>u}function cb(o,u){return o!=null&&re.call(o,u)}function hb(o,u){return o!=null&&u in ue(o)}function pb(o,u,m){return o>=ke(u,m)&&o<Be(u,m)}function $a(o,u,m){for(var w=m?ga:go,A=o[0].length,T=o.length,L=T,z=X(T),Y=1/0,V=[];L--;){var et=o[L];L&&u&&(et=me(et,lr(u))),Y=ke(et.length,Y),z[L]=!m&&(u||A>=120&&et.length>=120)?new jn(L&&et):e}et=o[0];var ot=-1,mt=z[0];t:for(;++ot<A&&V.length<Y;){var _t=et[ot],xt=u?u(_t):_t;if(_t=m||_t!==0?_t:0,!(mt?Xi(mt,xt):w(V,xt,m))){for(L=T;--L;){var Rt=z[L];if(!(Rt?Xi(Rt,xt):w(o[L],xt,m)))continue t}mt&&mt.push(xt),V.push(_t)}}return V}function mb(o,u,m,w){return Wr(o,function(A,T,L){u(w,m(A),T,L)}),w}function is(o,u,m){u=Fn(u,o),o=P0(o,u);var w=o==null?o:o[Zr(Ar(u))];return w==null?e:ar(w,o,m)}function Qh(o){return we(o)&&Ye(o)==yt}function db(o){return we(o)&&Ye(o)==st}function gb(o){return we(o)&&Ye(o)==It}function ss(o,u,m,w,A){return o===u?!0:o==null||u==null||!we(o)&&!we(u)?o!==o&&u!==u:vb(o,u,m,w,ss,A)}function vb(o,u,m,w,A,T){var L=Tt(o),z=Tt(u),Y=L?St:We(o),V=z?St:We(u);Y=Y==yt?Me:Y,V=V==yt?Me:V;var et=Y==Me,ot=V==Me,mt=Y==V;if(mt&&Nn(o)){if(!Nn(u))return!1;L=!0,et=!1}if(mt&&!et)return T||(T=new Tr),L||Ii(o)?B0(o,u,m,w,A,T):Yb(o,u,Y,m,w,A,T);if(!(m&D)){var _t=et&&re.call(o,"__wrapped__"),xt=ot&&re.call(u,"__wrapped__");if(_t||xt){var Rt=_t?o.value():o,Ct=xt?u.value():u;return T||(T=new Tr),A(Rt,Ct,m,w,T)}}return mt?(T||(T=new Tr),Zb(o,u,m,w,A,T)):!1}function _b(o){return we(o)&&We(o)==Gt}function Oa(o,u,m,w){var A=m.length,T=A,L=!w;if(o==null)return!T;for(o=ue(o);A--;){var z=m[A];if(L&&z[2]?z[1]!==o[z[0]]:!(z[0]in o))return!1}for(;++A<T;){z=m[A];var Y=z[0],V=o[Y],et=z[1];if(L&&z[2]){if(V===e&&!(Y in o))return!1}else{var ot=new Tr;if(w)var mt=w(V,et,Y,o,u,ot);if(!(mt===e?ss(et,V,D|g,w,ot):mt))return!1}}return!0}function Vh(o){if(!_e(o)||tE(o))return!1;var u=sn(o)?_y:ia;return u.test(Xn(o))}function wb(o){return we(o)&&Ye(o)==Hr}function Db(o){return we(o)&&We(o)==sr}function yb(o){return we(o)&&Qo(o.length)&&!!ce[Ye(o)]}function t0(o){return typeof o=="function"?o:o==null?Ve:typeof o=="object"?Tt(o)?n0(o[0],o[1]):r0(o):bp(o)}function Ra(o){if(!as(o))return Ay(o);var u=[];for(var m in ue(o))re.call(o,m)&&m!="constructor"&&u.push(m);return u}function bb(o){if(!_e(o))return iE(o);var u=as(o),m=[];for(var w in o)w=="constructor"&&(u||!re.call(o,w))||m.push(w);return m}function La(o,u){return o<u}function e0(o,u){var m=-1,w=He(o)?X(o.length):[];return xn(o,function(A,T,L){w[++m]=u(A,T,L)}),w}function r0(o){var u=Qa(o);return u.length==1&&u[0][2]?R0(u[0][0],u[0][1]):function(m){return m===o||Oa(m,o,u)}}function n0(o,u){return tl(o)&&O0(u)?R0(Zr(o),u):function(m){var w=fl(m,o);return w===e&&w===u?cl(m,o):ss(u,w,D|g)}}function Ro(o,u,m,w,A){o!==u&&Ba(u,function(T,L){if(A||(A=new Tr),_e(T))Eb(o,u,L,m,Ro,w,A);else{var z=w?w(rl(o,L),T,L+"",o,u,A):e;z===e&&(z=T),Na(o,L,z)}},Qe)}function Eb(o,u,m,w,A,T,L){var z=rl(o,m),Y=rl(u,m),V=L.get(Y);if(V){Na(o,m,V);return}var et=T?T(z,Y,m+"",o,u,L):e,ot=et===e;if(ot){var mt=Tt(Y),_t=!mt&&Nn(Y),xt=!mt&&!_t&&Ii(Y);et=Y,mt||_t||xt?Tt(z)?et=z:be(z)?et=Xe(z):_t?(ot=!1,et=d0(Y,!0)):xt?(ot=!1,et=g0(Y,!0)):et=[]:fs(Y)||Hn(Y)?(et=z,Hn(z)?et=hp(z):(!_e(z)||sn(z))&&(et=$0(Y))):ot=!1}ot&&(L.set(Y,et),A(et,Y,w,T,L),L.delete(Y)),Na(o,m,et)}function i0(o,u){var m=o.length;if(m)return u+=u<0?m:0,nn(u,m)?o[u]:e}function s0(o,u,m){u.length?u=me(u,function(T){return Tt(T)?function(L){return Kn(L,T.length===1?T[0]:T)}:T}):u=[Ve];var w=-1;u=me(u,lr(At()));var A=e0(o,function(T,L,z){var Y=me(u,function(V){return V(T)});return{criteria:Y,index:++w,value:T}});return XD(A,function(T,L){return Rb(T,L,m)})}function Ab(o,u){return o0(o,u,function(m,w){return cl(o,w)})}function o0(o,u,m){for(var w=-1,A=u.length,T={};++w<A;){var L=u[w],z=Kn(o,L);m(z,L)&&os(T,Fn(L,o),z)}return T}function xb(o){return function(u){return Kn(u,o)}}function Pa(o,u,m,w){var A=w?JD:yi,T=-1,L=u.length,z=o;for(o===u&&(u=Xe(u)),m&&(z=me(o,lr(m)));++T<L;)for(var Y=0,V=u[T],et=m?m(V):V;(Y=A(z,et,Y,w))>-1;)z!==o&&Co.call(z,Y,1),Co.call(o,Y,1);return o}function u0(o,u){for(var m=o?u.length:0,w=m-1;m--;){var A=u[m];if(m==w||A!==T){var T=A;nn(A)?Co.call(o,A,1):ka(o,A)}}return o}function za(o,u){return o+No(Uh()*(u-o+1))}function Cb(o,u,m,w){for(var A=-1,T=Be(Mo((u-o)/(m||1)),0),L=X(T);T--;)L[w?T:++A]=o,o+=m;return L}function qa(o,u){var m="";if(!o||u<1||u>j)return m;do u%2&&(m+=o),u=No(u/2),u&&(o+=o);while(u);return m}function Lt(o,u){return nl(L0(o,u,Ve),o+"")}function Fb(o){return Yh(Ti(o))}function Mb(o,u){var m=Ti(o);return jo(m,Gn(u,0,m.length))}function os(o,u,m,w){if(!_e(o))return o;u=Fn(u,o);for(var A=-1,T=u.length,L=T-1,z=o;z!=null&&++A<T;){var Y=Zr(u[A]),V=m;if(Y==="__proto__"||Y==="constructor"||Y==="prototype")return o;if(A!=L){var et=z[Y];V=w?w(et,Y,z):e,V===e&&(V=_e(et)?et:nn(u[A+1])?[]:{})}rs(z,Y,V),z=z[Y]}return o}var a0=So?function(o,u){return So.set(o,u),o}:Ve,Nb=Fo?function(o,u){return Fo(o,"toString",{configurable:!0,enumerable:!1,value:pl(u),writable:!0})}:Ve;function Sb(o){return jo(Ti(o))}function Er(o,u,m){var w=-1,A=o.length;u<0&&(u=-u>A?0:A+u),m=m>A?A:m,m<0&&(m+=A),A=u>m?0:m-u>>>0,u>>>=0;for(var T=X(A);++w<A;)T[w]=o[w+u];return T}function Bb(o,u){var m;return xn(o,function(w,A,T){return m=u(w,A,T),!m}),!!m}function Lo(o,u,m){var w=0,A=o==null?w:o.length;if(typeof u=="number"&&u===u&&A<=lt){for(;w<A;){var T=w+A>>>1,L=o[T];L!==null&&!cr(L)&&(m?L<=u:L<u)?w=T+1:A=T}return A}return Ua(o,u,Ve,m)}function Ua(o,u,m,w){var A=0,T=o==null?0:o.length;if(T===0)return 0;u=m(u);for(var L=u!==u,z=u===null,Y=cr(u),V=u===e;A<T;){var et=No((A+T)/2),ot=m(o[et]),mt=ot!==e,_t=ot===null,xt=ot===ot,Rt=cr(ot);if(L)var Ct=w||xt;else V?Ct=xt&&(w||mt):z?Ct=xt&&mt&&(w||!_t):Y?Ct=xt&&mt&&!_t&&(w||!Rt):_t||Rt?Ct=!1:Ct=w?ot<=u:ot<u;Ct?A=et+1:T=et}return ke(T,vt)}function l0(o,u){for(var m=-1,w=o.length,A=0,T=[];++m<w;){var L=o[m],z=u?u(L):L;if(!m||!$r(z,Y)){var Y=z;T[A++]=L===0?0:L}}return T}function f0(o){return typeof o=="number"?o:cr(o)?tt:+o}function fr(o){if(typeof o=="string")return o;if(Tt(o))return me(o,fr)+"";if(cr(o))return kh?kh.call(o):"";var u=o+"";return u=="0"&&1/o==-K?"-0":u}function Cn(o,u,m){var w=-1,A=go,T=o.length,L=!0,z=[],Y=z;if(m)L=!1,A=ga;else if(T>=n){var V=u?null:kb(o);if(V)return _o(V);L=!1,A=Xi,Y=new jn}else Y=u?[]:z;t:for(;++w<T;){var et=o[w],ot=u?u(et):et;if(et=m||et!==0?et:0,L&&ot===ot){for(var mt=Y.length;mt--;)if(Y[mt]===ot)continue t;u&&Y.push(ot),z.push(et)}else A(Y,ot,m)||(Y!==z&&Y.push(ot),z.push(et))}return z}function ka(o,u){return u=Fn(u,o),o=P0(o,u),o==null||delete o[Zr(Ar(u))]}function c0(o,u,m,w){return os(o,u,m(Kn(o,u)),w)}function Po(o,u,m,w){for(var A=o.length,T=w?A:-1;(w?T--:++T<A)&&u(o[T],T,o););return m?Er(o,w?0:T,w?T+1:A):Er(o,w?T+1:0,w?A:T)}function h0(o,u){var m=o;return m instanceof Ut&&(m=m.value()),va(u,function(w,A){return A.func.apply(A.thisArg,bn([w],A.args))},m)}function Wa(o,u,m){var w=o.length;if(w<2)return w?Cn(o[0]):[];for(var A=-1,T=X(w);++A<w;)for(var L=o[A],z=-1;++z<w;)z!=A&&(T[A]=ns(T[A]||L,o[z],u,m));return Cn(Pe(T,1),u,m)}function p0(o,u,m){for(var w=-1,A=o.length,T=u.length,L={};++w<A;){var z=w<T?u[w]:e;m(L,o[w],z)}return L}function Ya(o){return be(o)?o:[]}function Za(o){return typeof o=="function"?o:Ve}function Fn(o,u){return Tt(o)?o:tl(o,u)?[o]:k0(Vt(o))}var Ib=Lt;function Mn(o,u,m){var w=o.length;return m=m===e?w:m,!u&&m>=w?o:Er(o,u,m)}var m0=wy||function(o){return Le.clearTimeout(o)};function d0(o,u){if(u)return o.slice();var m=o.length,w=Rh?Rh(m):new o.constructor(m);return o.copy(w),w}function ja(o){var u=new o.constructor(o.byteLength);return new Ao(u).set(new Ao(o)),u}function Tb(o,u){var m=u?ja(o.buffer):o.buffer;return new o.constructor(m,o.byteOffset,o.byteLength)}function $b(o){var u=new o.constructor(o.source,ho.exec(o));return u.lastIndex=o.lastIndex,u}function Ob(o){return es?ue(es.call(o)):{}}function g0(o,u){var m=u?ja(o.buffer):o.buffer;return new o.constructor(m,o.byteOffset,o.length)}function v0(o,u){if(o!==u){var m=o!==e,w=o===null,A=o===o,T=cr(o),L=u!==e,z=u===null,Y=u===u,V=cr(u);if(!z&&!V&&!T&&o>u||T&&L&&Y&&!z&&!V||w&&L&&Y||!m&&Y||!A)return 1;if(!w&&!T&&!V&&o<u||V&&m&&A&&!w&&!T||z&&m&&A||!L&&A||!Y)return-1}return 0}function Rb(o,u,m){for(var w=-1,A=o.criteria,T=u.criteria,L=A.length,z=m.length;++w<L;){var Y=v0(A[w],T[w]);if(Y){if(w>=z)return Y;var V=m[w];return Y*(V=="desc"?-1:1)}}return o.index-u.index}function _0(o,u,m,w){for(var A=-1,T=o.length,L=m.length,z=-1,Y=u.length,V=Be(T-L,0),et=X(Y+V),ot=!w;++z<Y;)et[z]=u[z];for(;++A<L;)(ot||A<T)&&(et[m[A]]=o[A]);for(;V--;)et[z++]=o[A++];return et}function w0(o,u,m,w){for(var A=-1,T=o.length,L=-1,z=m.length,Y=-1,V=u.length,et=Be(T-z,0),ot=X(et+V),mt=!w;++A<et;)ot[A]=o[A];for(var _t=A;++Y<V;)ot[_t+Y]=u[Y];for(;++L<z;)(mt||A<T)&&(ot[_t+m[L]]=o[A++]);return ot}function Xe(o,u){var m=-1,w=o.length;for(u||(u=X(w));++m<w;)u[m]=o[m];return u}function Yr(o,u,m,w){var A=!m;m||(m={});for(var T=-1,L=u.length;++T<L;){var z=u[T],Y=w?w(m[z],o[z],z,m,o):e;Y===e&&(Y=o[z]),A?tn(m,z,Y):rs(m,z,Y)}return m}function Lb(o,u){return Yr(o,Va(o),u)}function Pb(o,u){return Yr(o,I0(o),u)}function zo(o,u){return function(m,w){var A=Tt(m)?WD:ob,T=u?u():{};return A(m,o,At(w,2),T)}}function Ni(o){return Lt(function(u,m){var w=-1,A=m.length,T=A>1?m[A-1]:e,L=A>2?m[2]:e;for(T=o.length>3&&typeof T=="function"?(A--,T):e,L&&Ze(m[0],m[1],L)&&(T=A<3?e:T,A=1),u=ue(u);++w<A;){var z=m[w];z&&o(u,z,w,T)}return u})}function D0(o,u){return function(m,w){if(m==null)return m;if(!He(m))return o(m,w);for(var A=m.length,T=u?A:-1,L=ue(m);(u?T--:++T<A)&&w(L[T],T,L)!==!1;);return m}}function y0(o){return function(u,m,w){for(var A=-1,T=ue(u),L=w(u),z=L.length;z--;){var Y=L[o?z:++A];if(m(T[Y],Y,T)===!1)break}return u}}function zb(o,u,m){var w=u&y,A=us(o);function T(){var L=this&&this!==Le&&this instanceof T?A:o;return L.apply(w?m:this,arguments)}return T}function b0(o){return function(u){u=Vt(u);var m=bi(u)?Ir(u):e,w=m?m[0]:u.charAt(0),A=m?Mn(m,1).join(""):u.slice(1);return w[o]()+A}}function Si(o){return function(u){return va(Dp(wp(u).replace(ND,"")),o,"")}}function us(o){return function(){var u=arguments;switch(u.length){case 0:return new o;case 1:return new o(u[0]);case 2:return new o(u[0],u[1]);case 3:return new o(u[0],u[1],u[2]);case 4:return new o(u[0],u[1],u[2],u[3]);case 5:return new o(u[0],u[1],u[2],u[3],u[4]);case 6:return new o(u[0],u[1],u[2],u[3],u[4],u[5]);case 7:return new o(u[0],u[1],u[2],u[3],u[4],u[5],u[6])}var m=Mi(o.prototype),w=o.apply(m,u);return _e(w)?w:m}}function qb(o,u,m){var w=us(o);function A(){for(var T=arguments.length,L=X(T),z=T,Y=Bi(A);z--;)L[z]=arguments[z];var V=T<3&&L[0]!==Y&&L[T-1]!==Y?[]:En(L,Y);if(T-=V.length,T<m)return F0(o,u,qo,A.placeholder,e,L,V,e,e,m-T);var et=this&&this!==Le&&this instanceof A?w:o;return ar(et,this,L)}return A}function E0(o){return function(u,m,w){var A=ue(u);if(!He(u)){var T=At(m,3);u=$e(u),m=function(z){return T(A[z],z,A)}}var L=o(u,m,w);return L>-1?A[T?u[L]:L]:e}}function A0(o){return rn(function(u){var m=u.length,w=m,A=yr.prototype.thru;for(o&&u.reverse();w--;){var T=u[w];if(typeof T!="function")throw new Dr(a);if(A&&!L&&Yo(T)=="wrapper")var L=new yr([],!0)}for(w=L?w:m;++w<m;){T=u[w];var z=Yo(T),Y=z=="wrapper"?Ha(T):e;Y&&el(Y[0])&&Y[1]==(M|b|x|S)&&!Y[4].length&&Y[9]==1?L=L[Yo(Y[0])].apply(L,Y[3]):L=T.length==1&&el(T)?L[z]():L.thru(T)}return function(){var V=arguments,et=V[0];if(L&&V.length==1&&Tt(et))return L.plant(et).value();for(var ot=0,mt=m?u[ot].apply(this,V):et;++ot<m;)mt=u[ot].call(this,mt);return mt}})}function qo(o,u,m,w,A,T,L,z,Y,V){var et=u&M,ot=u&y,mt=u&v,_t=u&(b|N),xt=u&$,Rt=mt?e:us(o);function Ct(){for(var qt=arguments.length,kt=X(qt),hr=qt;hr--;)kt[hr]=arguments[hr];if(_t)var je=Bi(Ct),pr=QD(kt,je);if(w&&(kt=_0(kt,w,A,_t)),T&&(kt=w0(kt,T,L,_t)),qt-=pr,_t&&qt<V){var Ee=En(kt,je);return F0(o,u,qo,Ct.placeholder,m,kt,Ee,z,Y,V-qt)}var Or=ot?m:this,un=mt?Or[o]:o;return qt=kt.length,z?kt=oE(kt,z):xt&&qt>1&&kt.reverse(),et&&Y<qt&&(kt.length=Y),this&&this!==Le&&this instanceof Ct&&(un=Rt||us(un)),un.apply(Or,kt)}return Ct}function x0(o,u){return function(m,w){return mb(m,o,u(w),{})}}function Uo(o,u){return function(m,w){var A;if(m===e&&w===e)return u;if(m!==e&&(A=m),w!==e){if(A===e)return w;typeof m=="string"||typeof w=="string"?(m=fr(m),w=fr(w)):(m=f0(m),w=f0(w)),A=o(m,w)}return A}}function Ga(o){return rn(function(u){return u=me(u,lr(At())),Lt(function(m){var w=this;return o(u,function(A){return ar(A,w,m)})})})}function ko(o,u){u=u===e?" ":fr(u);var m=u.length;if(m<2)return m?qa(u,o):u;var w=qa(u,Mo(o/Ei(u)));return bi(u)?Mn(Ir(w),0,o).join(""):w.slice(0,o)}function Ub(o,u,m,w){var A=u&y,T=us(o);function L(){for(var z=-1,Y=arguments.length,V=-1,et=w.length,ot=X(et+Y),mt=this&&this!==Le&&this instanceof L?T:o;++V<et;)ot[V]=w[V];for(;Y--;)ot[V++]=arguments[++z];return ar(mt,A?m:this,ot)}return L}function C0(o){return function(u,m,w){return w&&typeof w!="number"&&Ze(u,m,w)&&(m=w=e),u=on(u),m===e?(m=u,u=0):m=on(m),w=w===e?u<m?1:-1:on(w),Cb(u,m,w,o)}}function Wo(o){return function(u,m){return typeof u=="string"&&typeof m=="string"||(u=xr(u),m=xr(m)),o(u,m)}}function F0(o,u,m,w,A,T,L,z,Y,V){var et=u&b,ot=et?L:e,mt=et?e:L,_t=et?T:e,xt=et?e:T;u|=et?x:F,u&=~(et?F:x),u&E||(u&=~(y|v));var Rt=[o,u,A,_t,ot,xt,mt,z,Y,V],Ct=m.apply(e,Rt);return el(o)&&z0(Ct,Rt),Ct.placeholder=w,q0(Ct,o,u)}function Ka(o){var u=Se[o];return function(m,w){if(m=xr(m),w=w==null?0:ke(Ot(w),292),w&&qh(m)){var A=(Vt(m)+"e").split("e"),T=u(A[0]+"e"+(+A[1]+w));return A=(Vt(T)+"e").split("e"),+(A[0]+"e"+(+A[1]-w))}return u(m)}}var kb=Ci&&1/_o(new Ci([,-0]))[1]==K?function(o){return new Ci(o)}:gl;function M0(o){return function(u){var m=We(u);return m==Gt?Aa(u):m==sr?sy(u):HD(u,o(u))}}function en(o,u,m,w,A,T,L,z){var Y=u&v;if(!Y&&typeof o!="function")throw new Dr(a);var V=w?w.length:0;if(V||(u&=~(x|F),w=A=e),L=L===e?L:Be(Ot(L),0),z=z===e?z:Ot(z),V-=A?A.length:0,u&F){var et=w,ot=A;w=A=e}var mt=Y?e:Ha(o),_t=[o,u,m,w,A,et,ot,T,L,z];if(mt&&nE(_t,mt),o=_t[0],u=_t[1],m=_t[2],w=_t[3],A=_t[4],z=_t[9]=_t[9]===e?Y?0:o.length:Be(_t[9]-V,0),!z&&u&(b|N)&&(u&=~(b|N)),!u||u==y)var xt=zb(o,u,m);else u==b||u==N?xt=qb(o,u,z):(u==x||u==(y|x))&&!A.length?xt=Ub(o,u,m,w):xt=qo.apply(e,_t);var Rt=mt?a0:z0;return q0(Rt(xt,_t),o,u)}function N0(o,u,m,w){return o===e||$r(o,xi[m])&&!re.call(w,m)?u:o}function S0(o,u,m,w,A,T){return _e(o)&&_e(u)&&(T.set(u,o),Ro(o,u,e,S0,T),T.delete(u)),o}function Wb(o){return fs(o)?e:o}function B0(o,u,m,w,A,T){var L=m&D,z=o.length,Y=u.length;if(z!=Y&&!(L&&Y>z))return!1;var V=T.get(o),et=T.get(u);if(V&&et)return V==u&&et==o;var ot=-1,mt=!0,_t=m&g?new jn:e;for(T.set(o,u),T.set(u,o);++ot<z;){var xt=o[ot],Rt=u[ot];if(w)var Ct=L?w(Rt,xt,ot,u,o,T):w(xt,Rt,ot,o,u,T);if(Ct!==e){if(Ct)continue;mt=!1;break}if(_t){if(!_a(u,function(qt,kt){if(!Xi(_t,kt)&&(xt===qt||A(xt,qt,m,w,T)))return _t.push(kt)})){mt=!1;break}}else if(!(xt===Rt||A(xt,Rt,m,w,T))){mt=!1;break}}return T.delete(o),T.delete(u),mt}function Yb(o,u,m,w,A,T,L){switch(m){case rt:if(o.byteLength!=u.byteLength||o.byteOffset!=u.byteOffset)return!1;o=o.buffer,u=u.buffer;case st:return!(o.byteLength!=u.byteLength||!T(new Ao(o),new Ao(u)));case ee:case It:case Ce:return $r(+o,+u);case ie:return o.name==u.name&&o.message==u.message;case Hr:case _n:return o==u+"";case Gt:var z=Aa;case sr:var Y=w&D;if(z||(z=_o),o.size!=u.size&&!Y)return!1;var V=L.get(o);if(V)return V==u;w|=g,L.set(o,u);var et=B0(z(o),z(u),w,A,T,L);return L.delete(o),et;case O:if(es)return es.call(o)==es.call(u)}return!1}function Zb(o,u,m,w,A,T){var L=m&D,z=Ja(o),Y=z.length,V=Ja(u),et=V.length;if(Y!=et&&!L)return!1;for(var ot=Y;ot--;){var mt=z[ot];if(!(L?mt in u:re.call(u,mt)))return!1}var _t=T.get(o),xt=T.get(u);if(_t&&xt)return _t==u&&xt==o;var Rt=!0;T.set(o,u),T.set(u,o);for(var Ct=L;++ot<Y;){mt=z[ot];var qt=o[mt],kt=u[mt];if(w)var hr=L?w(kt,qt,mt,u,o,T):w(qt,kt,mt,o,u,T);if(!(hr===e?qt===kt||A(qt,kt,m,w,T):hr)){Rt=!1;break}Ct||(Ct=mt=="constructor")}if(Rt&&!Ct){var je=o.constructor,pr=u.constructor;je!=pr&&"constructor"in o&&"constructor"in u&&!(typeof je=="function"&&je instanceof je&&typeof pr=="function"&&pr instanceof pr)&&(Rt=!1)}return T.delete(o),T.delete(u),Rt}function rn(o){return nl(L0(o,e,j0),o+"")}function Ja(o){return Hh(o,$e,Va)}function Xa(o){return Hh(o,Qe,I0)}var Ha=So?function(o){return So.get(o)}:gl;function Yo(o){for(var u=o.name+"",m=Fi[u],w=re.call(Fi,u)?m.length:0;w--;){var A=m[w],T=A.func;if(T==null||T==o)return A.name}return u}function Bi(o){var u=re.call(B,"placeholder")?B:o;return u.placeholder}function At(){var o=B.iteratee||ml;return o=o===ml?t0:o,arguments.length?o(arguments[0],arguments[1]):o}function Zo(o,u){var m=o.__data__;return Vb(u)?m[typeof u=="string"?"string":"hash"]:m.map}function Qa(o){for(var u=$e(o),m=u.length;m--;){var w=u[m],A=o[w];u[m]=[w,A,O0(A)]}return u}function Jn(o,u){var m=ry(o,u);return Vh(m)?m:e}function jb(o){var u=re.call(o,Yn),m=o[Yn];try{o[Yn]=e;var w=!0}catch{}var A=bo.call(o);return w&&(u?o[Yn]=m:delete o[Yn]),A}var Va=Ca?function(o){return o==null?[]:(o=ue(o),yn(Ca(o),function(u){return Ph.call(o,u)}))}:vl,I0=Ca?function(o){for(var u=[];o;)bn(u,Va(o)),o=xo(o);return u}:vl,We=Ye;(Fa&&We(new Fa(new ArrayBuffer(1)))!=rt||Qi&&We(new Qi)!=Gt||Ma&&We(Ma.resolve())!=Xr||Ci&&We(new Ci)!=sr||Vi&&We(new Vi)!=J)&&(We=function(o){var u=Ye(o),m=u==Me?o.constructor:e,w=m?Xn(m):"";if(w)switch(w){case My:return rt;case Ny:return Gt;case Sy:return Xr;case By:return sr;case Iy:return J}return u});function Gb(o,u,m){for(var w=-1,A=m.length;++w<A;){var T=m[w],L=T.size;switch(T.type){case"drop":o+=L;break;case"dropRight":u-=L;break;case"take":u=ke(u,o+L);break;case"takeRight":o=Be(o,u-L);break}}return{start:o,end:u}}function Kb(o){var u=o.match(Xu);return u?u[1].split(Hu):[]}function T0(o,u,m){u=Fn(u,o);for(var w=-1,A=u.length,T=!1;++w<A;){var L=Zr(u[w]);if(!(T=o!=null&&m(o,L)))break;o=o[L]}return T||++w!=A?T:(A=o==null?0:o.length,!!A&&Qo(A)&&nn(L,A)&&(Tt(o)||Hn(o)))}function Jb(o){var u=o.length,m=new o.constructor(u);return u&&typeof o[0]=="string"&&re.call(o,"index")&&(m.index=o.index,m.input=o.input),m}function $0(o){return typeof o.constructor=="function"&&!as(o)?Mi(xo(o)):{}}function Xb(o,u,m){var w=o.constructor;switch(u){case st:return ja(o);case ee:case It:return new w(+o);case rt:return Tb(o,m);case ct:case at:case ht:case ut:case Kt:case Qt:case pe:case Te:case Ne:return g0(o,m);case Gt:return new w;case Ce:case _n:return new w(o);case Hr:return $b(o);case sr:return new w;case O:return Ob(o)}}function Hb(o,u){var m=u.length;if(!m)return o;var w=m-1;return u[w]=(m>1?"& ":"")+u[w],u=u.join(m>2?", ":" "),o.replace(Ju,`{
|
9
|
+
/* [wrapped with `+u+`] */
|
10
|
+
`)}function Qb(o){return Tt(o)||Hn(o)||!!(zh&&o&&o[zh])}function nn(o,u){var m=typeof o;return u=u??j,!!u&&(m=="number"||m!="symbol"&&oa.test(o))&&o>-1&&o%1==0&&o<u}function Ze(o,u,m){if(!_e(m))return!1;var w=typeof u;return(w=="number"?He(m)&&nn(u,m.length):w=="string"&&u in m)?$r(m[u],o):!1}function tl(o,u){if(Tt(o))return!1;var m=typeof o;return m=="number"||m=="symbol"||m=="boolean"||o==null||cr(o)?!0:Zu.test(o)||!Yu.test(o)||u!=null&&o in ue(u)}function Vb(o){var u=typeof o;return u=="string"||u=="number"||u=="symbol"||u=="boolean"?o!=="__proto__":o===null}function el(o){var u=Yo(o),m=B[u];if(typeof m!="function"||!(u in Ut.prototype))return!1;if(o===m)return!0;var w=Ha(m);return!!w&&o===w[0]}function tE(o){return!!Oh&&Oh in o}var eE=Do?sn:_l;function as(o){var u=o&&o.constructor,m=typeof u=="function"&&u.prototype||xi;return o===m}function O0(o){return o===o&&!_e(o)}function R0(o,u){return function(m){return m==null?!1:m[o]===u&&(u!==e||o in ue(m))}}function rE(o){var u=Xo(o,function(w){return m.size===h&&m.clear(),w}),m=u.cache;return u}function nE(o,u){var m=o[1],w=u[1],A=m|w,T=A<(y|v|M),L=w==M&&m==b||w==M&&m==S&&o[7].length<=u[8]||w==(M|S)&&u[7].length<=u[8]&&m==b;if(!(T||L))return o;w&y&&(o[2]=u[2],A|=m&y?0:E);var z=u[3];if(z){var Y=o[3];o[3]=Y?_0(Y,z,u[4]):z,o[4]=Y?En(o[3],p):u[4]}return z=u[5],z&&(Y=o[5],o[5]=Y?w0(Y,z,u[6]):z,o[6]=Y?En(o[5],p):u[6]),z=u[7],z&&(o[7]=z),w&M&&(o[8]=o[8]==null?u[8]:ke(o[8],u[8])),o[9]==null&&(o[9]=u[9]),o[0]=u[0],o[1]=A,o}function iE(o){var u=[];if(o!=null)for(var m in ue(o))u.push(m);return u}function sE(o){return bo.call(o)}function L0(o,u,m){return u=Be(u===e?o.length-1:u,0),function(){for(var w=arguments,A=-1,T=Be(w.length-u,0),L=X(T);++A<T;)L[A]=w[u+A];A=-1;for(var z=X(u+1);++A<u;)z[A]=w[A];return z[u]=m(L),ar(o,this,z)}}function P0(o,u){return u.length<2?o:Kn(o,Er(u,0,-1))}function oE(o,u){for(var m=o.length,w=ke(u.length,m),A=Xe(o);w--;){var T=u[w];o[w]=nn(T,m)?A[T]:e}return o}function rl(o,u){if(!(u==="constructor"&&typeof o[u]=="function")&&u!="__proto__")return o[u]}var z0=U0(a0),ls=yy||function(o,u){return Le.setTimeout(o,u)},nl=U0(Nb);function q0(o,u,m){var w=u+"";return nl(o,Hb(w,uE(Kb(w),m)))}function U0(o){var u=0,m=0;return function(){var w=xy(),A=U-(w-m);if(m=w,A>0){if(++u>=R)return arguments[0]}else u=0;return o.apply(e,arguments)}}function jo(o,u){var m=-1,w=o.length,A=w-1;for(u=u===e?w:u;++m<u;){var T=za(m,A),L=o[T];o[T]=o[m],o[m]=L}return o.length=u,o}var k0=rE(function(o){var u=[];return o.charCodeAt(0)===46&&u.push(""),o.replace(ju,function(m,w,A,T){u.push(A?T.replace(ta,"$1"):w||m)}),u});function Zr(o){if(typeof o=="string"||cr(o))return o;var u=o+"";return u=="0"&&1/o==-K?"-0":u}function Xn(o){if(o!=null){try{return yo.call(o)}catch{}try{return o+""}catch{}}return""}function uE(o,u){return wr(wt,function(m){var w="_."+m[0];u&m[1]&&!go(o,w)&&o.push(w)}),o.sort()}function W0(o){if(o instanceof Ut)return o.clone();var u=new yr(o.__wrapped__,o.__chain__);return u.__actions__=Xe(o.__actions__),u.__index__=o.__index__,u.__values__=o.__values__,u}function aE(o,u,m){(m?Ze(o,u,m):u===e)?u=1:u=Be(Ot(u),0);var w=o==null?0:o.length;if(!w||u<1)return[];for(var A=0,T=0,L=X(Mo(w/u));A<w;)L[T++]=Er(o,A,A+=u);return L}function lE(o){for(var u=-1,m=o==null?0:o.length,w=0,A=[];++u<m;){var T=o[u];T&&(A[w++]=T)}return A}function fE(){var o=arguments.length;if(!o)return[];for(var u=X(o-1),m=arguments[0],w=o;w--;)u[w-1]=arguments[w];return bn(Tt(m)?Xe(m):[m],Pe(u,1))}var cE=Lt(function(o,u){return be(o)?ns(o,Pe(u,1,be,!0)):[]}),hE=Lt(function(o,u){var m=Ar(u);return be(m)&&(m=e),be(o)?ns(o,Pe(u,1,be,!0),At(m,2)):[]}),pE=Lt(function(o,u){var m=Ar(u);return be(m)&&(m=e),be(o)?ns(o,Pe(u,1,be,!0),e,m):[]});function mE(o,u,m){var w=o==null?0:o.length;return w?(u=m||u===e?1:Ot(u),Er(o,u<0?0:u,w)):[]}function dE(o,u,m){var w=o==null?0:o.length;return w?(u=m||u===e?1:Ot(u),u=w-u,Er(o,0,u<0?0:u)):[]}function gE(o,u){return o&&o.length?Po(o,At(u,3),!0,!0):[]}function vE(o,u){return o&&o.length?Po(o,At(u,3),!0):[]}function _E(o,u,m,w){var A=o==null?0:o.length;return A?(m&&typeof m!="number"&&Ze(o,u,m)&&(m=0,w=A),fb(o,u,m,w)):[]}function Y0(o,u,m){var w=o==null?0:o.length;if(!w)return-1;var A=m==null?0:Ot(m);return A<0&&(A=Be(w+A,0)),vo(o,At(u,3),A)}function Z0(o,u,m){var w=o==null?0:o.length;if(!w)return-1;var A=w-1;return m!==e&&(A=Ot(m),A=m<0?Be(w+A,0):ke(A,w-1)),vo(o,At(u,3),A,!0)}function j0(o){var u=o==null?0:o.length;return u?Pe(o,1):[]}function wE(o){var u=o==null?0:o.length;return u?Pe(o,K):[]}function DE(o,u){var m=o==null?0:o.length;return m?(u=u===e?1:Ot(u),Pe(o,u)):[]}function yE(o){for(var u=-1,m=o==null?0:o.length,w={};++u<m;){var A=o[u];w[A[0]]=A[1]}return w}function G0(o){return o&&o.length?o[0]:e}function bE(o,u,m){var w=o==null?0:o.length;if(!w)return-1;var A=m==null?0:Ot(m);return A<0&&(A=Be(w+A,0)),yi(o,u,A)}function EE(o){var u=o==null?0:o.length;return u?Er(o,0,-1):[]}var AE=Lt(function(o){var u=me(o,Ya);return u.length&&u[0]===o[0]?$a(u):[]}),xE=Lt(function(o){var u=Ar(o),m=me(o,Ya);return u===Ar(m)?u=e:m.pop(),m.length&&m[0]===o[0]?$a(m,At(u,2)):[]}),CE=Lt(function(o){var u=Ar(o),m=me(o,Ya);return u=typeof u=="function"?u:e,u&&m.pop(),m.length&&m[0]===o[0]?$a(m,e,u):[]});function FE(o,u){return o==null?"":Ey.call(o,u)}function Ar(o){var u=o==null?0:o.length;return u?o[u-1]:e}function ME(o,u,m){var w=o==null?0:o.length;if(!w)return-1;var A=w;return m!==e&&(A=Ot(m),A=A<0?Be(w+A,0):ke(A,w-1)),u===u?uy(o,u,A):vo(o,Fh,A,!0)}function NE(o,u){return o&&o.length?i0(o,Ot(u)):e}var SE=Lt(K0);function K0(o,u){return o&&o.length&&u&&u.length?Pa(o,u):o}function BE(o,u,m){return o&&o.length&&u&&u.length?Pa(o,u,At(m,2)):o}function IE(o,u,m){return o&&o.length&&u&&u.length?Pa(o,u,e,m):o}var TE=rn(function(o,u){var m=o==null?0:o.length,w=Sa(o,u);return u0(o,me(u,function(A){return nn(A,m)?+A:A}).sort(v0)),w});function $E(o,u){var m=[];if(!(o&&o.length))return m;var w=-1,A=[],T=o.length;for(u=At(u,3);++w<T;){var L=o[w];u(L,w,o)&&(m.push(L),A.push(w))}return u0(o,A),m}function il(o){return o==null?o:Fy.call(o)}function OE(o,u,m){var w=o==null?0:o.length;return w?(m&&typeof m!="number"&&Ze(o,u,m)?(u=0,m=w):(u=u==null?0:Ot(u),m=m===e?w:Ot(m)),Er(o,u,m)):[]}function RE(o,u){return Lo(o,u)}function LE(o,u,m){return Ua(o,u,At(m,2))}function PE(o,u){var m=o==null?0:o.length;if(m){var w=Lo(o,u);if(w<m&&$r(o[w],u))return w}return-1}function zE(o,u){return Lo(o,u,!0)}function qE(o,u,m){return Ua(o,u,At(m,2),!0)}function UE(o,u){var m=o==null?0:o.length;if(m){var w=Lo(o,u,!0)-1;if($r(o[w],u))return w}return-1}function kE(o){return o&&o.length?l0(o):[]}function WE(o,u){return o&&o.length?l0(o,At(u,2)):[]}function YE(o){var u=o==null?0:o.length;return u?Er(o,1,u):[]}function ZE(o,u,m){return o&&o.length?(u=m||u===e?1:Ot(u),Er(o,0,u<0?0:u)):[]}function jE(o,u,m){var w=o==null?0:o.length;return w?(u=m||u===e?1:Ot(u),u=w-u,Er(o,u<0?0:u,w)):[]}function GE(o,u){return o&&o.length?Po(o,At(u,3),!1,!0):[]}function KE(o,u){return o&&o.length?Po(o,At(u,3)):[]}var JE=Lt(function(o){return Cn(Pe(o,1,be,!0))}),XE=Lt(function(o){var u=Ar(o);return be(u)&&(u=e),Cn(Pe(o,1,be,!0),At(u,2))}),HE=Lt(function(o){var u=Ar(o);return u=typeof u=="function"?u:e,Cn(Pe(o,1,be,!0),e,u)});function QE(o){return o&&o.length?Cn(o):[]}function VE(o,u){return o&&o.length?Cn(o,At(u,2)):[]}function tA(o,u){return u=typeof u=="function"?u:e,o&&o.length?Cn(o,e,u):[]}function sl(o){if(!(o&&o.length))return[];var u=0;return o=yn(o,function(m){if(be(m))return u=Be(m.length,u),!0}),ba(u,function(m){return me(o,wa(m))})}function J0(o,u){if(!(o&&o.length))return[];var m=sl(o);return u==null?m:me(m,function(w){return ar(u,e,w)})}var eA=Lt(function(o,u){return be(o)?ns(o,u):[]}),rA=Lt(function(o){return Wa(yn(o,be))}),nA=Lt(function(o){var u=Ar(o);return be(u)&&(u=e),Wa(yn(o,be),At(u,2))}),iA=Lt(function(o){var u=Ar(o);return u=typeof u=="function"?u:e,Wa(yn(o,be),e,u)}),sA=Lt(sl);function oA(o,u){return p0(o||[],u||[],rs)}function uA(o,u){return p0(o||[],u||[],os)}var aA=Lt(function(o){var u=o.length,m=u>1?o[u-1]:e;return m=typeof m=="function"?(o.pop(),m):e,J0(o,m)});function X0(o){var u=B(o);return u.__chain__=!0,u}function lA(o,u){return u(o),o}function Go(o,u){return u(o)}var fA=rn(function(o){var u=o.length,m=u?o[0]:0,w=this.__wrapped__,A=function(T){return Sa(T,o)};return u>1||this.__actions__.length||!(w instanceof Ut)||!nn(m)?this.thru(A):(w=w.slice(m,+m+(u?1:0)),w.__actions__.push({func:Go,args:[A],thisArg:e}),new yr(w,this.__chain__).thru(function(T){return u&&!T.length&&T.push(e),T}))});function cA(){return X0(this)}function hA(){return new yr(this.value(),this.__chain__)}function pA(){this.__values__===e&&(this.__values__=fp(this.value()));var o=this.__index__>=this.__values__.length,u=o?e:this.__values__[this.__index__++];return{done:o,value:u}}function mA(){return this}function dA(o){for(var u,m=this;m instanceof Io;){var w=W0(m);w.__index__=0,w.__values__=e,u?A.__wrapped__=w:u=w;var A=w;m=m.__wrapped__}return A.__wrapped__=o,u}function gA(){var o=this.__wrapped__;if(o instanceof Ut){var u=o;return this.__actions__.length&&(u=new Ut(this)),u=u.reverse(),u.__actions__.push({func:Go,args:[il],thisArg:e}),new yr(u,this.__chain__)}return this.thru(il)}function vA(){return h0(this.__wrapped__,this.__actions__)}var _A=zo(function(o,u,m){re.call(o,m)?++o[m]:tn(o,m,1)});function wA(o,u,m){var w=Tt(o)?xh:lb;return m&&Ze(o,u,m)&&(u=e),w(o,At(u,3))}function DA(o,u){var m=Tt(o)?yn:Jh;return m(o,At(u,3))}var yA=E0(Y0),bA=E0(Z0);function EA(o,u){return Pe(Ko(o,u),1)}function AA(o,u){return Pe(Ko(o,u),K)}function xA(o,u,m){return m=m===e?1:Ot(m),Pe(Ko(o,u),m)}function H0(o,u){var m=Tt(o)?wr:xn;return m(o,At(u,3))}function Q0(o,u){var m=Tt(o)?YD:Kh;return m(o,At(u,3))}var CA=zo(function(o,u,m){re.call(o,m)?o[m].push(u):tn(o,m,[u])});function FA(o,u,m,w){o=He(o)?o:Ti(o),m=m&&!w?Ot(m):0;var A=o.length;return m<0&&(m=Be(A+m,0)),Vo(o)?m<=A&&o.indexOf(u,m)>-1:!!A&&yi(o,u,m)>-1}var MA=Lt(function(o,u,m){var w=-1,A=typeof u=="function",T=He(o)?X(o.length):[];return xn(o,function(L){T[++w]=A?ar(u,L,m):is(L,u,m)}),T}),NA=zo(function(o,u,m){tn(o,m,u)});function Ko(o,u){var m=Tt(o)?me:e0;return m(o,At(u,3))}function SA(o,u,m,w){return o==null?[]:(Tt(u)||(u=u==null?[]:[u]),m=w?e:m,Tt(m)||(m=m==null?[]:[m]),s0(o,u,m))}var BA=zo(function(o,u,m){o[m?0:1].push(u)},function(){return[[],[]]});function IA(o,u,m){var w=Tt(o)?va:Nh,A=arguments.length<3;return w(o,At(u,4),m,A,xn)}function TA(o,u,m){var w=Tt(o)?ZD:Nh,A=arguments.length<3;return w(o,At(u,4),m,A,Kh)}function $A(o,u){var m=Tt(o)?yn:Jh;return m(o,Ho(At(u,3)))}function OA(o){var u=Tt(o)?Yh:Fb;return u(o)}function RA(o,u,m){(m?Ze(o,u,m):u===e)?u=1:u=Ot(u);var w=Tt(o)?ib:Mb;return w(o,u)}function LA(o){var u=Tt(o)?sb:Sb;return u(o)}function PA(o){if(o==null)return 0;if(He(o))return Vo(o)?Ei(o):o.length;var u=We(o);return u==Gt||u==sr?o.size:Ra(o).length}function zA(o,u,m){var w=Tt(o)?_a:Bb;return m&&Ze(o,u,m)&&(u=e),w(o,At(u,3))}var qA=Lt(function(o,u){if(o==null)return[];var m=u.length;return m>1&&Ze(o,u[0],u[1])?u=[]:m>2&&Ze(u[0],u[1],u[2])&&(u=[u[0]]),s0(o,Pe(u,1),[])}),Jo=Dy||function(){return Le.Date.now()};function UA(o,u){if(typeof u!="function")throw new Dr(a);return o=Ot(o),function(){if(--o<1)return u.apply(this,arguments)}}function V0(o,u,m){return u=m?e:u,u=o&&u==null?o.length:u,en(o,M,e,e,e,e,u)}function tp(o,u){var m;if(typeof u!="function")throw new Dr(a);return o=Ot(o),function(){return--o>0&&(m=u.apply(this,arguments)),o<=1&&(u=e),m}}var ol=Lt(function(o,u,m){var w=y;if(m.length){var A=En(m,Bi(ol));w|=x}return en(o,w,u,m,A)}),ep=Lt(function(o,u,m){var w=y|v;if(m.length){var A=En(m,Bi(ep));w|=x}return en(u,w,o,m,A)});function rp(o,u,m){u=m?e:u;var w=en(o,b,e,e,e,e,e,u);return w.placeholder=rp.placeholder,w}function np(o,u,m){u=m?e:u;var w=en(o,N,e,e,e,e,e,u);return w.placeholder=np.placeholder,w}function ip(o,u,m){var w,A,T,L,z,Y,V=0,et=!1,ot=!1,mt=!0;if(typeof o!="function")throw new Dr(a);u=xr(u)||0,_e(m)&&(et=!!m.leading,ot="maxWait"in m,T=ot?Be(xr(m.maxWait)||0,u):T,mt="trailing"in m?!!m.trailing:mt);function _t(Ee){var Or=w,un=A;return w=A=e,V=Ee,L=o.apply(un,Or),L}function xt(Ee){return V=Ee,z=ls(qt,u),et?_t(Ee):L}function Rt(Ee){var Or=Ee-Y,un=Ee-V,Ep=u-Or;return ot?ke(Ep,T-un):Ep}function Ct(Ee){var Or=Ee-Y,un=Ee-V;return Y===e||Or>=u||Or<0||ot&&un>=T}function qt(){var Ee=Jo();if(Ct(Ee))return kt(Ee);z=ls(qt,Rt(Ee))}function kt(Ee){return z=e,mt&&w?_t(Ee):(w=A=e,L)}function hr(){z!==e&&m0(z),V=0,w=Y=A=z=e}function je(){return z===e?L:kt(Jo())}function pr(){var Ee=Jo(),Or=Ct(Ee);if(w=arguments,A=this,Y=Ee,Or){if(z===e)return xt(Y);if(ot)return m0(z),z=ls(qt,u),_t(Y)}return z===e&&(z=ls(qt,u)),L}return pr.cancel=hr,pr.flush=je,pr}var kA=Lt(function(o,u){return Gh(o,1,u)}),WA=Lt(function(o,u,m){return Gh(o,xr(u)||0,m)});function YA(o){return en(o,$)}function Xo(o,u){if(typeof o!="function"||u!=null&&typeof u!="function")throw new Dr(a);var m=function(){var w=arguments,A=u?u.apply(this,w):w[0],T=m.cache;if(T.has(A))return T.get(A);var L=o.apply(this,w);return m.cache=T.set(A,L)||T,L};return m.cache=new(Xo.Cache||Vr),m}Xo.Cache=Vr;function Ho(o){if(typeof o!="function")throw new Dr(a);return function(){var u=arguments;switch(u.length){case 0:return!o.call(this);case 1:return!o.call(this,u[0]);case 2:return!o.call(this,u[0],u[1]);case 3:return!o.call(this,u[0],u[1],u[2])}return!o.apply(this,u)}}function ZA(o){return tp(2,o)}var jA=Ib(function(o,u){u=u.length==1&&Tt(u[0])?me(u[0],lr(At())):me(Pe(u,1),lr(At()));var m=u.length;return Lt(function(w){for(var A=-1,T=ke(w.length,m);++A<T;)w[A]=u[A].call(this,w[A]);return ar(o,this,w)})}),ul=Lt(function(o,u){var m=En(u,Bi(ul));return en(o,x,e,u,m)}),sp=Lt(function(o,u){var m=En(u,Bi(sp));return en(o,F,e,u,m)}),GA=rn(function(o,u){return en(o,S,e,e,e,u)});function KA(o,u){if(typeof o!="function")throw new Dr(a);return u=u===e?u:Ot(u),Lt(o,u)}function JA(o,u){if(typeof o!="function")throw new Dr(a);return u=u==null?0:Be(Ot(u),0),Lt(function(m){var w=m[u],A=Mn(m,0,u);return w&&bn(A,w),ar(o,this,A)})}function XA(o,u,m){var w=!0,A=!0;if(typeof o!="function")throw new Dr(a);return _e(m)&&(w="leading"in m?!!m.leading:w,A="trailing"in m?!!m.trailing:A),ip(o,u,{leading:w,maxWait:u,trailing:A})}function HA(o){return V0(o,1)}function QA(o,u){return ul(Za(u),o)}function VA(){if(!arguments.length)return[];var o=arguments[0];return Tt(o)?o:[o]}function tx(o){return br(o,_)}function ex(o,u){return u=typeof u=="function"?u:e,br(o,_,u)}function rx(o){return br(o,c|_)}function nx(o,u){return u=typeof u=="function"?u:e,br(o,c|_,u)}function ix(o,u){return u==null||jh(o,u,$e(u))}function $r(o,u){return o===u||o!==o&&u!==u}var sx=Wo(Ta),ox=Wo(function(o,u){return o>=u}),Hn=Qh(function(){return arguments}())?Qh:function(o){return we(o)&&re.call(o,"callee")&&!Ph.call(o,"callee")},Tt=X.isArray,ux=wh?lr(wh):db;function He(o){return o!=null&&Qo(o.length)&&!sn(o)}function be(o){return we(o)&&He(o)}function ax(o){return o===!0||o===!1||we(o)&&Ye(o)==ee}var Nn=by||_l,lx=Dh?lr(Dh):gb;function fx(o){return we(o)&&o.nodeType===1&&!fs(o)}function cx(o){if(o==null)return!0;if(He(o)&&(Tt(o)||typeof o=="string"||typeof o.splice=="function"||Nn(o)||Ii(o)||Hn(o)))return!o.length;var u=We(o);if(u==Gt||u==sr)return!o.size;if(as(o))return!Ra(o).length;for(var m in o)if(re.call(o,m))return!1;return!0}function hx(o,u){return ss(o,u)}function px(o,u,m){m=typeof m=="function"?m:e;var w=m?m(o,u):e;return w===e?ss(o,u,e,m):!!w}function al(o){if(!we(o))return!1;var u=Ye(o);return u==ie||u==Mt||typeof o.message=="string"&&typeof o.name=="string"&&!fs(o)}function mx(o){return typeof o=="number"&&qh(o)}function sn(o){if(!_e(o))return!1;var u=Ye(o);return u==Ht||u==zt||u==bt||u==vn}function op(o){return typeof o=="number"&&o==Ot(o)}function Qo(o){return typeof o=="number"&&o>-1&&o%1==0&&o<=j}function _e(o){var u=typeof o;return o!=null&&(u=="object"||u=="function")}function we(o){return o!=null&&typeof o=="object"}var up=yh?lr(yh):_b;function dx(o,u){return o===u||Oa(o,u,Qa(u))}function gx(o,u,m){return m=typeof m=="function"?m:e,Oa(o,u,Qa(u),m)}function vx(o){return ap(o)&&o!=+o}function _x(o){if(eE(o))throw new Bt(s);return Vh(o)}function wx(o){return o===null}function Dx(o){return o==null}function ap(o){return typeof o=="number"||we(o)&&Ye(o)==Ce}function fs(o){if(!we(o)||Ye(o)!=Me)return!1;var u=xo(o);if(u===null)return!0;var m=re.call(u,"constructor")&&u.constructor;return typeof m=="function"&&m instanceof m&&yo.call(m)==gy}var ll=bh?lr(bh):wb;function yx(o){return op(o)&&o>=-j&&o<=j}var lp=Eh?lr(Eh):Db;function Vo(o){return typeof o=="string"||!Tt(o)&&we(o)&&Ye(o)==_n}function cr(o){return typeof o=="symbol"||we(o)&&Ye(o)==O}var Ii=Ah?lr(Ah):yb;function bx(o){return o===e}function Ex(o){return we(o)&&We(o)==J}function Ax(o){return we(o)&&Ye(o)==nt}var xx=Wo(La),Cx=Wo(function(o,u){return o<=u});function fp(o){if(!o)return[];if(He(o))return Vo(o)?Ir(o):Xe(o);if(Hi&&o[Hi])return iy(o[Hi]());var u=We(o),m=u==Gt?Aa:u==sr?_o:Ti;return m(o)}function on(o){if(!o)return o===0?o:0;if(o=xr(o),o===K||o===-K){var u=o<0?-1:1;return u*Q}return o===o?o:0}function Ot(o){var u=on(o),m=u%1;return u===u?m?u-m:u:0}function cp(o){return o?Gn(Ot(o),0,ft):0}function xr(o){if(typeof o=="number")return o;if(cr(o))return tt;if(_e(o)){var u=typeof o.valueOf=="function"?o.valueOf():o;o=_e(u)?u+"":u}if(typeof o!="string")return o===0?o:+o;o=Sh(o);var m=na.test(o);return m||sa.test(o)?UD(o.slice(2),m?2:8):ra.test(o)?tt:+o}function hp(o){return Yr(o,Qe(o))}function Fx(o){return o?Gn(Ot(o),-j,j):o===0?o:0}function Vt(o){return o==null?"":fr(o)}var Mx=Ni(function(o,u){if(as(u)||He(u)){Yr(u,$e(u),o);return}for(var m in u)re.call(u,m)&&rs(o,m,u[m])}),pp=Ni(function(o,u){Yr(u,Qe(u),o)}),tu=Ni(function(o,u,m,w){Yr(u,Qe(u),o,w)}),Nx=Ni(function(o,u,m,w){Yr(u,$e(u),o,w)}),Sx=rn(Sa);function Bx(o,u){var m=Mi(o);return u==null?m:Zh(m,u)}var Ix=Lt(function(o,u){o=ue(o);var m=-1,w=u.length,A=w>2?u[2]:e;for(A&&Ze(u[0],u[1],A)&&(w=1);++m<w;)for(var T=u[m],L=Qe(T),z=-1,Y=L.length;++z<Y;){var V=L[z],et=o[V];(et===e||$r(et,xi[V])&&!re.call(o,V))&&(o[V]=T[V])}return o}),Tx=Lt(function(o){return o.push(e,S0),ar(mp,e,o)});function $x(o,u){return Ch(o,At(u,3),Wr)}function Ox(o,u){return Ch(o,At(u,3),Ia)}function Rx(o,u){return o==null?o:Ba(o,At(u,3),Qe)}function Lx(o,u){return o==null?o:Xh(o,At(u,3),Qe)}function Px(o,u){return o&&Wr(o,At(u,3))}function zx(o,u){return o&&Ia(o,At(u,3))}function qx(o){return o==null?[]:Oo(o,$e(o))}function Ux(o){return o==null?[]:Oo(o,Qe(o))}function fl(o,u,m){var w=o==null?e:Kn(o,u);return w===e?m:w}function kx(o,u){return o!=null&&T0(o,u,cb)}function cl(o,u){return o!=null&&T0(o,u,hb)}var Wx=x0(function(o,u,m){u!=null&&typeof u.toString!="function"&&(u=bo.call(u)),o[u]=m},pl(Ve)),Yx=x0(function(o,u,m){u!=null&&typeof u.toString!="function"&&(u=bo.call(u)),re.call(o,u)?o[u].push(m):o[u]=[m]},At),Zx=Lt(is);function $e(o){return He(o)?Wh(o):Ra(o)}function Qe(o){return He(o)?Wh(o,!0):bb(o)}function jx(o,u){var m={};return u=At(u,3),Wr(o,function(w,A,T){tn(m,u(w,A,T),w)}),m}function Gx(o,u){var m={};return u=At(u,3),Wr(o,function(w,A,T){tn(m,A,u(w,A,T))}),m}var Kx=Ni(function(o,u,m){Ro(o,u,m)}),mp=Ni(function(o,u,m,w){Ro(o,u,m,w)}),Jx=rn(function(o,u){var m={};if(o==null)return m;var w=!1;u=me(u,function(T){return T=Fn(T,o),w||(w=T.length>1),T}),Yr(o,Xa(o),m),w&&(m=br(m,c|d|_,Wb));for(var A=u.length;A--;)ka(m,u[A]);return m});function Xx(o,u){return dp(o,Ho(At(u)))}var Hx=rn(function(o,u){return o==null?{}:Ab(o,u)});function dp(o,u){if(o==null)return{};var m=me(Xa(o),function(w){return[w]});return u=At(u),o0(o,m,function(w,A){return u(w,A[0])})}function Qx(o,u,m){u=Fn(u,o);var w=-1,A=u.length;for(A||(A=1,o=e);++w<A;){var T=o==null?e:o[Zr(u[w])];T===e&&(w=A,T=m),o=sn(T)?T.call(o):T}return o}function Vx(o,u,m){return o==null?o:os(o,u,m)}function t2(o,u,m,w){return w=typeof w=="function"?w:e,o==null?o:os(o,u,m,w)}var gp=M0($e),vp=M0(Qe);function e2(o,u,m){var w=Tt(o),A=w||Nn(o)||Ii(o);if(u=At(u,4),m==null){var T=o&&o.constructor;A?m=w?new T:[]:_e(o)?m=sn(T)?Mi(xo(o)):{}:m={}}return(A?wr:Wr)(o,function(L,z,Y){return u(m,L,z,Y)}),m}function r2(o,u){return o==null?!0:ka(o,u)}function n2(o,u,m){return o==null?o:c0(o,u,Za(m))}function i2(o,u,m,w){return w=typeof w=="function"?w:e,o==null?o:c0(o,u,Za(m),w)}function Ti(o){return o==null?[]:Ea(o,$e(o))}function s2(o){return o==null?[]:Ea(o,Qe(o))}function o2(o,u,m){return m===e&&(m=u,u=e),m!==e&&(m=xr(m),m=m===m?m:0),u!==e&&(u=xr(u),u=u===u?u:0),Gn(xr(o),u,m)}function u2(o,u,m){return u=on(u),m===e?(m=u,u=0):m=on(m),o=xr(o),pb(o,u,m)}function a2(o,u,m){if(m&&typeof m!="boolean"&&Ze(o,u,m)&&(u=m=e),m===e&&(typeof u=="boolean"?(m=u,u=e):typeof o=="boolean"&&(m=o,o=e)),o===e&&u===e?(o=0,u=1):(o=on(o),u===e?(u=o,o=0):u=on(u)),o>u){var w=o;o=u,u=w}if(m||o%1||u%1){var A=Uh();return ke(o+A*(u-o+qD("1e-"+((A+"").length-1))),u)}return za(o,u)}var l2=Si(function(o,u,m){return u=u.toLowerCase(),o+(m?_p(u):u)});function _p(o){return hl(Vt(o).toLowerCase())}function wp(o){return o=Vt(o),o&&o.replace(ua,VD).replace(SD,"")}function f2(o,u,m){o=Vt(o),u=fr(u);var w=o.length;m=m===e?w:Gn(Ot(m),0,w);var A=m;return m-=u.length,m>=0&&o.slice(m,A)==u}function c2(o){return o=Vt(o),o&&Uu.test(o)?o.replace(fo,ty):o}function h2(o){return o=Vt(o),o&&Gu.test(o)?o.replace(Ki,"\\$&"):o}var p2=Si(function(o,u,m){return o+(m?"-":"")+u.toLowerCase()}),m2=Si(function(o,u,m){return o+(m?" ":"")+u.toLowerCase()}),d2=b0("toLowerCase");function g2(o,u,m){o=Vt(o),u=Ot(u);var w=u?Ei(o):0;if(!u||w>=u)return o;var A=(u-w)/2;return ko(No(A),m)+o+ko(Mo(A),m)}function v2(o,u,m){o=Vt(o),u=Ot(u);var w=u?Ei(o):0;return u&&w<u?o+ko(u-w,m):o}function _2(o,u,m){o=Vt(o),u=Ot(u);var w=u?Ei(o):0;return u&&w<u?ko(u-w,m)+o:o}function w2(o,u,m){return m||u==null?u=0:u&&(u=+u),Cy(Vt(o).replace(Ji,""),u||0)}function D2(o,u,m){return(m?Ze(o,u,m):u===e)?u=1:u=Ot(u),qa(Vt(o),u)}function y2(){var o=arguments,u=Vt(o[0]);return o.length<3?u:u.replace(o[1],o[2])}var b2=Si(function(o,u,m){return o+(m?"_":"")+u.toLowerCase()});function E2(o,u,m){return m&&typeof m!="number"&&Ze(o,u,m)&&(u=m=e),m=m===e?ft:m>>>0,m?(o=Vt(o),o&&(typeof u=="string"||u!=null&&!ll(u))&&(u=fr(u),!u&&bi(o))?Mn(Ir(o),0,m):o.split(u,m)):[]}var A2=Si(function(o,u,m){return o+(m?" ":"")+hl(u)});function x2(o,u,m){return o=Vt(o),m=m==null?0:Gn(Ot(m),0,o.length),u=fr(u),o.slice(m,m+u.length)==u}function C2(o,u,m){var w=B.templateSettings;m&&Ze(o,u,m)&&(u=e),o=Vt(o),u=tu({},u,w,N0);var A=tu({},u.imports,w.imports,N0),T=$e(A),L=Ea(A,T),z,Y,V=0,et=u.interpolate||_i,ot="__p += '",mt=xa((u.escape||_i).source+"|"+et.source+"|"+(et===co?ea:_i).source+"|"+(u.evaluate||_i).source+"|$","g"),_t="//# sourceURL="+(re.call(u,"sourceURL")?(u.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++OD+"]")+`
|
11
|
+
`;o.replace(mt,function(Ct,qt,kt,hr,je,pr){return kt||(kt=hr),ot+=o.slice(V,pr).replace(kn,ey),qt&&(z=!0,ot+=`' +
|
12
|
+
__e(`+qt+`) +
|
13
|
+
'`),je&&(Y=!0,ot+=`';
|
14
|
+
`+je+`;
|
15
|
+
__p += '`),kt&&(ot+=`' +
|
16
|
+
((__t = (`+kt+`)) == null ? '' : __t) +
|
17
|
+
'`),V=pr+Ct.length,Ct}),ot+=`';
|
18
|
+
`;var xt=re.call(u,"variable")&&u.variable;if(!xt)ot=`with (obj) {
|
19
|
+
`+ot+`
|
20
|
+
}
|
21
|
+
`;else if(Vu.test(xt))throw new Bt(l);ot=(Y?ot.replace(or,""):ot).replace(ur,"$1").replace(wn,"$1;"),ot="function("+(xt||"obj")+`) {
|
22
|
+
`+(xt?"":`obj || (obj = {});
|
23
|
+
`)+"var __t, __p = ''"+(z?", __e = _.escape":"")+(Y?`, __j = Array.prototype.join;
|
24
|
+
function print() { __p += __j.call(arguments, '') }
|
25
|
+
`:`;
|
26
|
+
`)+ot+`return __p
|
27
|
+
}`;var Rt=yp(function(){return Jt(T,_t+"return "+ot).apply(e,L)});if(Rt.source=ot,al(Rt))throw Rt;return Rt}function F2(o){return Vt(o).toLowerCase()}function M2(o){return Vt(o).toUpperCase()}function N2(o,u,m){if(o=Vt(o),o&&(m||u===e))return Sh(o);if(!o||!(u=fr(u)))return o;var w=Ir(o),A=Ir(u),T=Bh(w,A),L=Ih(w,A)+1;return Mn(w,T,L).join("")}function S2(o,u,m){if(o=Vt(o),o&&(m||u===e))return o.slice(0,$h(o)+1);if(!o||!(u=fr(u)))return o;var w=Ir(o),A=Ih(w,Ir(u))+1;return Mn(w,0,A).join("")}function B2(o,u,m){if(o=Vt(o),o&&(m||u===e))return o.replace(Ji,"");if(!o||!(u=fr(u)))return o;var w=Ir(o),A=Bh(w,Ir(u));return Mn(w,A).join("")}function I2(o,u){var m=C,w=I;if(_e(u)){var A="separator"in u?u.separator:A;m="length"in u?Ot(u.length):m,w="omission"in u?fr(u.omission):w}o=Vt(o);var T=o.length;if(bi(o)){var L=Ir(o);T=L.length}if(m>=T)return o;var z=m-Ei(w);if(z<1)return w;var Y=L?Mn(L,0,z).join(""):o.slice(0,z);if(A===e)return Y+w;if(L&&(z+=Y.length-z),ll(A)){if(o.slice(z).search(A)){var V,et=Y;for(A.global||(A=xa(A.source,Vt(ho.exec(A))+"g")),A.lastIndex=0;V=A.exec(et);)var ot=V.index;Y=Y.slice(0,ot===e?z:ot)}}else if(o.indexOf(fr(A),z)!=z){var mt=Y.lastIndexOf(A);mt>-1&&(Y=Y.slice(0,mt))}return Y+w}function T2(o){return o=Vt(o),o&&qu.test(o)?o.replace(Un,ay):o}var $2=Si(function(o,u,m){return o+(m?" ":"")+u.toUpperCase()}),hl=b0("toUpperCase");function Dp(o,u,m){return o=Vt(o),u=m?e:u,u===e?ny(o)?cy(o):KD(o):o.match(u)||[]}var yp=Lt(function(o,u){try{return ar(o,e,u)}catch(m){return al(m)?m:new Bt(m)}}),O2=rn(function(o,u){return wr(u,function(m){m=Zr(m),tn(o,m,ol(o[m],o))}),o});function R2(o){var u=o==null?0:o.length,m=At();return o=u?me(o,function(w){if(typeof w[1]!="function")throw new Dr(a);return[m(w[0]),w[1]]}):[],Lt(function(w){for(var A=-1;++A<u;){var T=o[A];if(ar(T[0],this,w))return ar(T[1],this,w)}})}function L2(o){return ab(br(o,c))}function pl(o){return function(){return o}}function P2(o,u){return o==null||o!==o?u:o}var z2=A0(),q2=A0(!0);function Ve(o){return o}function ml(o){return t0(typeof o=="function"?o:br(o,c))}function U2(o){return r0(br(o,c))}function k2(o,u){return n0(o,br(u,c))}var W2=Lt(function(o,u){return function(m){return is(m,o,u)}}),Y2=Lt(function(o,u){return function(m){return is(o,m,u)}});function dl(o,u,m){var w=$e(u),A=Oo(u,w);m==null&&!(_e(u)&&(A.length||!w.length))&&(m=u,u=o,o=this,A=Oo(u,$e(u)));var T=!(_e(m)&&"chain"in m)||!!m.chain,L=sn(o);return wr(A,function(z){var Y=u[z];o[z]=Y,L&&(o.prototype[z]=function(){var V=this.__chain__;if(T||V){var et=o(this.__wrapped__),ot=et.__actions__=Xe(this.__actions__);return ot.push({func:Y,args:arguments,thisArg:o}),et.__chain__=V,et}return Y.apply(o,bn([this.value()],arguments))})}),o}function Z2(){return Le._===this&&(Le._=vy),this}function gl(){}function j2(o){return o=Ot(o),Lt(function(u){return i0(u,o)})}var G2=Ga(me),K2=Ga(xh),J2=Ga(_a);function bp(o){return tl(o)?wa(Zr(o)):xb(o)}function X2(o){return function(u){return o==null?e:Kn(o,u)}}var H2=C0(),Q2=C0(!0);function vl(){return[]}function _l(){return!1}function V2(){return{}}function tC(){return""}function eC(){return!0}function rC(o,u){if(o=Ot(o),o<1||o>j)return[];var m=ft,w=ke(o,ft);u=At(u),o-=ft;for(var A=ba(w,u);++m<o;)u(m);return A}function nC(o){return Tt(o)?me(o,Zr):cr(o)?[o]:Xe(k0(Vt(o)))}function iC(o){var u=++dy;return Vt(o)+u}var sC=Uo(function(o,u){return o+u},0),oC=Ka("ceil"),uC=Uo(function(o,u){return o/u},1),aC=Ka("floor");function lC(o){return o&&o.length?$o(o,Ve,Ta):e}function fC(o,u){return o&&o.length?$o(o,At(u,2),Ta):e}function cC(o){return Mh(o,Ve)}function hC(o,u){return Mh(o,At(u,2))}function pC(o){return o&&o.length?$o(o,Ve,La):e}function mC(o,u){return o&&o.length?$o(o,At(u,2),La):e}var dC=Uo(function(o,u){return o*u},1),gC=Ka("round"),vC=Uo(function(o,u){return o-u},0);function _C(o){return o&&o.length?ya(o,Ve):0}function wC(o,u){return o&&o.length?ya(o,At(u,2)):0}return B.after=UA,B.ary=V0,B.assign=Mx,B.assignIn=pp,B.assignInWith=tu,B.assignWith=Nx,B.at=Sx,B.before=tp,B.bind=ol,B.bindAll=O2,B.bindKey=ep,B.castArray=VA,B.chain=X0,B.chunk=aE,B.compact=lE,B.concat=fE,B.cond=R2,B.conforms=L2,B.constant=pl,B.countBy=_A,B.create=Bx,B.curry=rp,B.curryRight=np,B.debounce=ip,B.defaults=Ix,B.defaultsDeep=Tx,B.defer=kA,B.delay=WA,B.difference=cE,B.differenceBy=hE,B.differenceWith=pE,B.drop=mE,B.dropRight=dE,B.dropRightWhile=gE,B.dropWhile=vE,B.fill=_E,B.filter=DA,B.flatMap=EA,B.flatMapDeep=AA,B.flatMapDepth=xA,B.flatten=j0,B.flattenDeep=wE,B.flattenDepth=DE,B.flip=YA,B.flow=z2,B.flowRight=q2,B.fromPairs=yE,B.functions=qx,B.functionsIn=Ux,B.groupBy=CA,B.initial=EE,B.intersection=AE,B.intersectionBy=xE,B.intersectionWith=CE,B.invert=Wx,B.invertBy=Yx,B.invokeMap=MA,B.iteratee=ml,B.keyBy=NA,B.keys=$e,B.keysIn=Qe,B.map=Ko,B.mapKeys=jx,B.mapValues=Gx,B.matches=U2,B.matchesProperty=k2,B.memoize=Xo,B.merge=Kx,B.mergeWith=mp,B.method=W2,B.methodOf=Y2,B.mixin=dl,B.negate=Ho,B.nthArg=j2,B.omit=Jx,B.omitBy=Xx,B.once=ZA,B.orderBy=SA,B.over=G2,B.overArgs=jA,B.overEvery=K2,B.overSome=J2,B.partial=ul,B.partialRight=sp,B.partition=BA,B.pick=Hx,B.pickBy=dp,B.property=bp,B.propertyOf=X2,B.pull=SE,B.pullAll=K0,B.pullAllBy=BE,B.pullAllWith=IE,B.pullAt=TE,B.range=H2,B.rangeRight=Q2,B.rearg=GA,B.reject=$A,B.remove=$E,B.rest=KA,B.reverse=il,B.sampleSize=RA,B.set=Vx,B.setWith=t2,B.shuffle=LA,B.slice=OE,B.sortBy=qA,B.sortedUniq=kE,B.sortedUniqBy=WE,B.split=E2,B.spread=JA,B.tail=YE,B.take=ZE,B.takeRight=jE,B.takeRightWhile=GE,B.takeWhile=KE,B.tap=lA,B.throttle=XA,B.thru=Go,B.toArray=fp,B.toPairs=gp,B.toPairsIn=vp,B.toPath=nC,B.toPlainObject=hp,B.transform=e2,B.unary=HA,B.union=JE,B.unionBy=XE,B.unionWith=HE,B.uniq=QE,B.uniqBy=VE,B.uniqWith=tA,B.unset=r2,B.unzip=sl,B.unzipWith=J0,B.update=n2,B.updateWith=i2,B.values=Ti,B.valuesIn=s2,B.without=eA,B.words=Dp,B.wrap=QA,B.xor=rA,B.xorBy=nA,B.xorWith=iA,B.zip=sA,B.zipObject=oA,B.zipObjectDeep=uA,B.zipWith=aA,B.entries=gp,B.entriesIn=vp,B.extend=pp,B.extendWith=tu,dl(B,B),B.add=sC,B.attempt=yp,B.camelCase=l2,B.capitalize=_p,B.ceil=oC,B.clamp=o2,B.clone=tx,B.cloneDeep=rx,B.cloneDeepWith=nx,B.cloneWith=ex,B.conformsTo=ix,B.deburr=wp,B.defaultTo=P2,B.divide=uC,B.endsWith=f2,B.eq=$r,B.escape=c2,B.escapeRegExp=h2,B.every=wA,B.find=yA,B.findIndex=Y0,B.findKey=$x,B.findLast=bA,B.findLastIndex=Z0,B.findLastKey=Ox,B.floor=aC,B.forEach=H0,B.forEachRight=Q0,B.forIn=Rx,B.forInRight=Lx,B.forOwn=Px,B.forOwnRight=zx,B.get=fl,B.gt=sx,B.gte=ox,B.has=kx,B.hasIn=cl,B.head=G0,B.identity=Ve,B.includes=FA,B.indexOf=bE,B.inRange=u2,B.invoke=Zx,B.isArguments=Hn,B.isArray=Tt,B.isArrayBuffer=ux,B.isArrayLike=He,B.isArrayLikeObject=be,B.isBoolean=ax,B.isBuffer=Nn,B.isDate=lx,B.isElement=fx,B.isEmpty=cx,B.isEqual=hx,B.isEqualWith=px,B.isError=al,B.isFinite=mx,B.isFunction=sn,B.isInteger=op,B.isLength=Qo,B.isMap=up,B.isMatch=dx,B.isMatchWith=gx,B.isNaN=vx,B.isNative=_x,B.isNil=Dx,B.isNull=wx,B.isNumber=ap,B.isObject=_e,B.isObjectLike=we,B.isPlainObject=fs,B.isRegExp=ll,B.isSafeInteger=yx,B.isSet=lp,B.isString=Vo,B.isSymbol=cr,B.isTypedArray=Ii,B.isUndefined=bx,B.isWeakMap=Ex,B.isWeakSet=Ax,B.join=FE,B.kebabCase=p2,B.last=Ar,B.lastIndexOf=ME,B.lowerCase=m2,B.lowerFirst=d2,B.lt=xx,B.lte=Cx,B.max=lC,B.maxBy=fC,B.mean=cC,B.meanBy=hC,B.min=pC,B.minBy=mC,B.stubArray=vl,B.stubFalse=_l,B.stubObject=V2,B.stubString=tC,B.stubTrue=eC,B.multiply=dC,B.nth=NE,B.noConflict=Z2,B.noop=gl,B.now=Jo,B.pad=g2,B.padEnd=v2,B.padStart=_2,B.parseInt=w2,B.random=a2,B.reduce=IA,B.reduceRight=TA,B.repeat=D2,B.replace=y2,B.result=Qx,B.round=gC,B.runInContext=W,B.sample=OA,B.size=PA,B.snakeCase=b2,B.some=zA,B.sortedIndex=RE,B.sortedIndexBy=LE,B.sortedIndexOf=PE,B.sortedLastIndex=zE,B.sortedLastIndexBy=qE,B.sortedLastIndexOf=UE,B.startCase=A2,B.startsWith=x2,B.subtract=vC,B.sum=_C,B.sumBy=wC,B.template=C2,B.times=rC,B.toFinite=on,B.toInteger=Ot,B.toLength=cp,B.toLower=F2,B.toNumber=xr,B.toSafeInteger=Fx,B.toString=Vt,B.toUpper=M2,B.trim=N2,B.trimEnd=S2,B.trimStart=B2,B.truncate=I2,B.unescape=T2,B.uniqueId=iC,B.upperCase=$2,B.upperFirst=hl,B.each=H0,B.eachRight=Q0,B.first=G0,dl(B,function(){var o={};return Wr(B,function(u,m){re.call(B.prototype,m)||(o[m]=u)}),o}(),{chain:!1}),B.VERSION=r,wr(["bind","bindKey","curry","curryRight","partial","partialRight"],function(o){B[o].placeholder=B}),wr(["drop","take"],function(o,u){Ut.prototype[o]=function(m){m=m===e?1:Be(Ot(m),0);var w=this.__filtered__&&!u?new Ut(this):this.clone();return w.__filtered__?w.__takeCount__=ke(m,w.__takeCount__):w.__views__.push({size:ke(m,ft),type:o+(w.__dir__<0?"Right":"")}),w},Ut.prototype[o+"Right"]=function(m){return this.reverse()[o](m).reverse()}}),wr(["filter","map","takeWhile"],function(o,u){var m=u+1,w=m==q||m==P;Ut.prototype[o]=function(A){var T=this.clone();return T.__iteratees__.push({iteratee:At(A,3),type:m}),T.__filtered__=T.__filtered__||w,T}}),wr(["head","last"],function(o,u){var m="take"+(u?"Right":"");Ut.prototype[o]=function(){return this[m](1).value()[0]}}),wr(["initial","tail"],function(o,u){var m="drop"+(u?"":"Right");Ut.prototype[o]=function(){return this.__filtered__?new Ut(this):this[m](1)}}),Ut.prototype.compact=function(){return this.filter(Ve)},Ut.prototype.find=function(o){return this.filter(o).head()},Ut.prototype.findLast=function(o){return this.reverse().find(o)},Ut.prototype.invokeMap=Lt(function(o,u){return typeof o=="function"?new Ut(this):this.map(function(m){return is(m,o,u)})}),Ut.prototype.reject=function(o){return this.filter(Ho(At(o)))},Ut.prototype.slice=function(o,u){o=Ot(o);var m=this;return m.__filtered__&&(o>0||u<0)?new Ut(m):(o<0?m=m.takeRight(-o):o&&(m=m.drop(o)),u!==e&&(u=Ot(u),m=u<0?m.dropRight(-u):m.take(u-o)),m)},Ut.prototype.takeRightWhile=function(o){return this.reverse().takeWhile(o).reverse()},Ut.prototype.toArray=function(){return this.take(ft)},Wr(Ut.prototype,function(o,u){var m=/^(?:filter|find|map|reject)|While$/.test(u),w=/^(?:head|last)$/.test(u),A=B[w?"take"+(u=="last"?"Right":""):u],T=w||/^find/.test(u);A&&(B.prototype[u]=function(){var L=this.__wrapped__,z=w?[1]:arguments,Y=L instanceof Ut,V=z[0],et=Y||Tt(L),ot=function(qt){var kt=A.apply(B,bn([qt],z));return w&&mt?kt[0]:kt};et&&m&&typeof V=="function"&&V.length!=1&&(Y=et=!1);var mt=this.__chain__,_t=!!this.__actions__.length,xt=T&&!mt,Rt=Y&&!_t;if(!T&&et){L=Rt?L:new Ut(this);var Ct=o.apply(L,z);return Ct.__actions__.push({func:Go,args:[ot],thisArg:e}),new yr(Ct,mt)}return xt&&Rt?o.apply(this,z):(Ct=this.thru(ot),xt?w?Ct.value()[0]:Ct.value():Ct)})}),wr(["pop","push","shift","sort","splice","unshift"],function(o){var u=wo[o],m=/^(?:push|sort|unshift)$/.test(o)?"tap":"thru",w=/^(?:pop|shift)$/.test(o);B.prototype[o]=function(){var A=arguments;if(w&&!this.__chain__){var T=this.value();return u.apply(Tt(T)?T:[],A)}return this[m](function(L){return u.apply(Tt(L)?L:[],A)})}}),Wr(Ut.prototype,function(o,u){var m=B[u];if(m){var w=m.name+"";re.call(Fi,w)||(Fi[w]=[]),Fi[w].push({name:u,func:m})}}),Fi[qo(e,v).name]=[{name:"wrapper",func:e}],Ut.prototype.clone=Ty,Ut.prototype.reverse=$y,Ut.prototype.value=Oy,B.prototype.at=fA,B.prototype.chain=cA,B.prototype.commit=hA,B.prototype.next=pA,B.prototype.plant=dA,B.prototype.reverse=gA,B.prototype.toJSON=B.prototype.valueOf=B.prototype.value=vA,B.prototype.first=B.prototype.head,Hi&&(B.prototype[Hi]=mA),B},Ai=hy();Wn?((Wn.exports=Ai)._=Ai,ma._=Ai):Le._=Ai}).call(Wt)}(Sn,Sn.exports);var Cr=Sn.exports;class Ap{constructor(t,e){G(this,"_defaultParams");G(this,"_UserTypeFileds");G(this,"_varipKeys");this._defaultParams=t,this._UserTypeFileds=this._createDynamicClass(),this._varipKeys=e}copy(t){return Cr.cloneDeep(t)}new(t={}){return new this._UserTypeFileds(Object.assign(Cr.cloneDeep(this._defaultParams),t),this._varipKeys)}addNewMethod(t,e){this._UserTypeFileds.prototype[t]=e}_createDynamicClass(){return class{constructor(t,e){G(this,"_varipKeys");Object.assign(this,t),this._varipKeys=e}get varipKeys(){return[...this._varipKeys]}copy(){return Cr.cloneDeep(this)}}}}var El={exports:{}};(function(i,t){(function(e,r){i.exports=r()})(Wt,function(){var e=1e3,r=6e4,n=36e5,s="millisecond",a="second",l="minute",f="hour",h="day",p="week",c="month",d="quarter",_="year",D="date",g="Invalid Date",y=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,v=/\[([^\]]+)]|Y{1,4}|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,E={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(q){var k=["th","st","nd","rd"],P=q%100;return"["+q+(k[(P-20)%10]||k[P]||k[0])+"]"}},b=function(q,k,P){var K=String(q);return!K||K.length>=k?q:""+Array(k+1-K.length).join(P)+q},N={s:b,z:function(q){var k=-q.utcOffset(),P=Math.abs(k),K=Math.floor(P/60),j=P%60;return(k<=0?"+":"-")+b(K,2,"0")+":"+b(j,2,"0")},m:function q(k,P){if(k.date()<P.date())return-q(P,k);var K=12*(P.year()-k.year())+(P.month()-k.month()),j=k.clone().add(K,c),Q=P-j<0,tt=k.clone().add(K+(Q?-1:1),c);return+(-(K+(P-j)/(Q?j-tt:tt-j))||0)},a:function(q){return q<0?Math.ceil(q)||0:Math.floor(q)},p:function(q){return{M:c,y:_,w:p,d:h,D,h:f,m:l,s:a,ms:s,Q:d}[q]||String(q||"").toLowerCase().replace(/s$/,"")},u:function(q){return q===void 0}},x="en",F={};F[x]=E;var M="$isDayjsObject",S=function(q){return q instanceof R||!(!q||!q[M])},$=function q(k,P,K){var j;if(!k)return x;if(typeof k=="string"){var Q=k.toLowerCase();F[Q]&&(j=Q),P&&(F[Q]=P,j=Q);var tt=k.split("-");if(!j&&tt.length>1)return q(tt[0])}else{var ft=k.name;F[ft]=k,j=ft}return!K&&j&&(x=j),j||!K&&x},C=function(q,k){if(S(q))return q.clone();var P=typeof k=="object"?k:{};return P.date=q,P.args=arguments,new R(P)},I=N;I.l=$,I.i=S,I.w=function(q,k){return C(q,{locale:k.$L,utc:k.$u,x:k.$x,$offset:k.$offset})};var R=function(){function q(P){this.$L=$(P.locale,null,!0),this.parse(P),this.$x=this.$x||P.x||{},this[M]=!0}var k=q.prototype;return k.parse=function(P){this.$d=function(K){var j=K.date,Q=K.utc;if(j===null)return new Date(NaN);if(I.u(j))return new Date;if(j instanceof Date)return new Date(j);if(typeof j=="string"&&!/Z$/i.test(j)){var tt=j.match(y);if(tt){var ft=tt[2]-1||0,vt=(tt[7]||"0").substring(0,3);return Q?new Date(Date.UTC(tt[1],ft,tt[3]||1,tt[4]||0,tt[5]||0,tt[6]||0,vt)):new Date(tt[1],ft,tt[3]||1,tt[4]||0,tt[5]||0,tt[6]||0,vt)}}return new Date(j)}(P),this.init()},k.init=function(){var P=this.$d;this.$y=P.getFullYear(),this.$M=P.getMonth(),this.$D=P.getDate(),this.$W=P.getDay(),this.$H=P.getHours(),this.$m=P.getMinutes(),this.$s=P.getSeconds(),this.$ms=P.getMilliseconds()},k.$utils=function(){return I},k.isValid=function(){return this.$d.toString()!==g},k.isSame=function(P,K){var j=C(P);return this.startOf(K)<=j&&j<=this.endOf(K)},k.isAfter=function(P,K){return C(P)<this.startOf(K)},k.isBefore=function(P,K){return this.endOf(K)<C(P)},k.$g=function(P,K,j){return I.u(P)?this[K]:this.set(j,P)},k.unix=function(){return Math.floor(this.valueOf()/1e3)},k.valueOf=function(){return this.$d.getTime()},k.startOf=function(P,K){var j=this,Q=!!I.u(K)||K,tt=I.p(P),ft=function(It,Mt){var ie=I.w(j.$u?Date.UTC(j.$y,Mt,It):new Date(j.$y,Mt,It),j);return Q?ie:ie.endOf(h)},vt=function(It,Mt){return I.w(j.toDate()[It].apply(j.toDate("s"),(Q?[0,0,0,0]:[23,59,59,999]).slice(Mt)),j)},lt=this.$W,wt=this.$M,yt=this.$D,St="set"+(this.$u?"UTC":"");switch(tt){case _:return Q?ft(1,0):ft(31,11);case c:return Q?ft(1,wt):ft(0,wt+1);case p:var bt=this.$locale().weekStart||0,ee=(lt<bt?lt+7:lt)-bt;return ft(Q?yt-ee:yt+(6-ee),wt);case h:case D:return vt(St+"Hours",0);case f:return vt(St+"Minutes",1);case l:return vt(St+"Seconds",2);case a:return vt(St+"Milliseconds",3);default:return this.clone()}},k.endOf=function(P){return this.startOf(P,!1)},k.$set=function(P,K){var j,Q=I.p(P),tt="set"+(this.$u?"UTC":""),ft=(j={},j[h]=tt+"Date",j[D]=tt+"Date",j[c]=tt+"Month",j[_]=tt+"FullYear",j[f]=tt+"Hours",j[l]=tt+"Minutes",j[a]=tt+"Seconds",j[s]=tt+"Milliseconds",j)[Q],vt=Q===h?this.$D+(K-this.$W):K;if(Q===c||Q===_){var lt=this.clone().set(D,1);lt.$d[ft](vt),lt.init(),this.$d=lt.set(D,Math.min(this.$D,lt.daysInMonth())).$d}else ft&&this.$d[ft](vt);return this.init(),this},k.set=function(P,K){return this.clone().$set(P,K)},k.get=function(P){return this[I.p(P)]()},k.add=function(P,K){var j,Q=this;P=Number(P);var tt=I.p(K),ft=function(wt){var yt=C(Q);return I.w(yt.date(yt.date()+Math.round(wt*P)),Q)};if(tt===c)return this.set(c,this.$M+P);if(tt===_)return this.set(_,this.$y+P);if(tt===h)return ft(1);if(tt===p)return ft(7);var vt=(j={},j[l]=r,j[f]=n,j[a]=e,j)[tt]||1,lt=this.$d.getTime()+P*vt;return I.w(lt,this)},k.subtract=function(P,K){return this.add(-1*P,K)},k.format=function(P){var K=this,j=this.$locale();if(!this.isValid())return j.invalidDate||g;var Q=P||"YYYY-MM-DDTHH:mm:ssZ",tt=I.z(this),ft=this.$H,vt=this.$m,lt=this.$M,wt=j.weekdays,yt=j.months,St=j.meridiem,bt=function(Mt,ie,Ht,zt){return Mt&&(Mt[ie]||Mt(K,Q))||Ht[ie].slice(0,zt)},ee=function(Mt){return I.s(ft%12||12,Mt,"0")},It=St||function(Mt,ie,Ht){var zt=Mt<12?"AM":"PM";return Ht?zt.toLowerCase():zt};return Q.replace(v,function(Mt,ie){return ie||function(Ht){switch(Ht){case"YY":return String(K.$y).slice(-2);case"YYYY":return I.s(K.$y,4,"0");case"M":return lt+1;case"MM":return I.s(lt+1,2,"0");case"MMM":return bt(j.monthsShort,lt,yt,3);case"MMMM":return bt(yt,lt);case"D":return K.$D;case"DD":return I.s(K.$D,2,"0");case"d":return String(K.$W);case"dd":return bt(j.weekdaysMin,K.$W,wt,2);case"ddd":return bt(j.weekdaysShort,K.$W,wt,3);case"dddd":return wt[K.$W];case"H":return String(ft);case"HH":return I.s(ft,2,"0");case"h":return ee(1);case"hh":return ee(2);case"a":return It(ft,vt,!0);case"A":return It(ft,vt,!1);case"m":return String(vt);case"mm":return I.s(vt,2,"0");case"s":return String(K.$s);case"ss":return I.s(K.$s,2,"0");case"SSS":return I.s(K.$ms,3,"0");case"Z":return tt}return null}(Mt)||tt.replace(":","")})},k.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},k.diff=function(P,K,j){var Q,tt=this,ft=I.p(K),vt=C(P),lt=(vt.utcOffset()-this.utcOffset())*r,wt=this-vt,yt=function(){return I.m(tt,vt)};switch(ft){case _:Q=yt()/12;break;case c:Q=yt();break;case d:Q=yt()/3;break;case p:Q=(wt-lt)/6048e5;break;case h:Q=(wt-lt)/864e5;break;case f:Q=wt/n;break;case l:Q=wt/r;break;case a:Q=wt/e;break;default:Q=wt}return j?Q:I.a(Q)},k.daysInMonth=function(){return this.endOf(c).$D},k.$locale=function(){return F[this.$L]},k.locale=function(P,K){if(!P)return this.$L;var j=this.clone(),Q=$(P,K,!0);return Q&&(j.$L=Q),j},k.clone=function(){return I.w(this.$d,this)},k.toDate=function(){return new Date(this.valueOf())},k.toJSON=function(){return this.isValid()?this.toISOString():null},k.toISOString=function(){return this.$d.toISOString()},k.toString=function(){return this.$d.toUTCString()},q}(),U=R.prototype;return C.prototype=U,[["$ms",s],["$s",a],["$m",l],["$H",f],["$W",h],["$M",c],["$y",_],["$D",D]].forEach(function(q){U[q[1]]=function(k){return this.$g(k,q[0],q[1])}}),C.extend=function(q,k){return q.$i||(q(k,R,C),q.$i=!0),C},C.locale=$,C.isDayjs=S,C.unix=function(q){return C(1e3*q)},C.en=F[x],C.Ls=F,C.p={},C})})(El);var xp=El.exports,ne=Zt(xp),Al={exports:{}};(function(i,t){(function(e,r){i.exports=r()})(Wt,function(){var e="minute",r=/[+-]\d\d(?::?\d\d)?/g,n=/([+-]|\d\d)/g;return function(s,a,l){var f=a.prototype;l.utc=function(g){var y={date:g,utc:!0,args:arguments};return new a(y)},f.utc=function(g){var y=l(this.toDate(),{locale:this.$L,utc:!0});return g?y.add(this.utcOffset(),e):y},f.local=function(){return l(this.toDate(),{locale:this.$L,utc:!1})};var h=f.parse;f.parse=function(g){g.utc&&(this.$u=!0),this.$utils().u(g.$offset)||(this.$offset=g.$offset),h.call(this,g)};var p=f.init;f.init=function(){if(this.$u){var g=this.$d;this.$y=g.getUTCFullYear(),this.$M=g.getUTCMonth(),this.$D=g.getUTCDate(),this.$W=g.getUTCDay(),this.$H=g.getUTCHours(),this.$m=g.getUTCMinutes(),this.$s=g.getUTCSeconds(),this.$ms=g.getUTCMilliseconds()}else p.call(this)};var c=f.utcOffset;f.utcOffset=function(g,y){var v=this.$utils().u;if(v(g))return this.$u?0:v(this.$offset)?c.call(this):this.$offset;if(typeof g=="string"&&(g=function(x){x===void 0&&(x="");var F=x.match(r);if(!F)return null;var M=(""+F[0]).match(n)||["-",0,0],S=M[0],$=60*+M[1]+ +M[2];return $===0?0:S==="+"?$:-$}(g),g===null))return this;var E=Math.abs(g)<=16?60*g:g,b=this;if(y)return b.$offset=E,b.$u=g===0,b;if(g!==0){var N=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(b=this.local().add(E+N,e)).$offset=E,b.$x.$localOffset=N}else b=this.utc();return b};var d=f.format;f.format=function(g){var y=g||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return d.call(this,y)},f.valueOf=function(){var g=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*g},f.isUTC=function(){return!!this.$u},f.toISOString=function(){return this.toDate().toISOString()},f.toString=function(){return this.toDate().toUTCString()};var _=f.toDate;f.toDate=function(g){return g==="s"&&this.$offset?l(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():_.call(this)};var D=f.diff;f.diff=function(g,y,v){if(g&&this.$u===g.$u)return D.call(this,g,y,v);var E=this.local(),b=l(g).local();return D.call(E,b,y,v)}}})})(Al);var Cp=Al.exports,Fp=Zt(Cp),xl={exports:{}};(function(i,t){(function(e,r){i.exports=r()})(Wt,function(){var e={year:0,month:1,day:2,hour:3,minute:4,second:5},r={};return function(n,s,a){var l,f=function(d,_,D){D===void 0&&(D={});var g=new Date(d),y=function(v,E){E===void 0&&(E={});var b=E.timeZoneName||"short",N=v+"|"+b,x=r[N];return x||(x=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:v,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:b}),r[N]=x),x}(_,D);return y.formatToParts(g)},h=function(d,_){for(var D=f(d,_),g=[],y=0;y<D.length;y+=1){var v=D[y],E=v.type,b=v.value,N=e[E];N>=0&&(g[N]=parseInt(b,10))}var x=g[3],F=x===24?0:x,M=g[0]+"-"+g[1]+"-"+g[2]+" "+F+":"+g[4]+":"+g[5]+":000",S=+d;return(a.utc(M).valueOf()-(S-=S%1e3))/6e4},p=s.prototype;p.tz=function(d,_){d===void 0&&(d=l);var D=this.utcOffset(),g=this.toDate(),y=g.toLocaleString("en-US",{timeZone:d}),v=Math.round((g-new Date(y))/1e3/60),E=a(y,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(15*-Math.round(g.getTimezoneOffset()/15)-v,!0);if(_){var b=E.utcOffset();E=E.add(D-b,"minute")}return E.$x.$timezone=d,E},p.offsetName=function(d){var _=this.$x.$timezone||a.tz.guess(),D=f(this.valueOf(),_,{timeZoneName:d}).find(function(g){return g.type.toLowerCase()==="timezonename"});return D&&D.value};var c=p.startOf;p.startOf=function(d,_){if(!this.$x||!this.$x.$timezone)return c.call(this,d,_);var D=a(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return c.call(D,d,_).tz(this.$x.$timezone,!0)},a.tz=function(d,_,D){var g=D&&_,y=D||_||l,v=h(+a(),y);if(typeof d!="string")return a(d).tz(y);var E=function(F,M,S){var $=F-60*M*1e3,C=h($,S);if(M===C)return[$,M];var I=h($-=60*(C-M)*1e3,S);return C===I?[$,C]:[F-60*Math.min(C,I)*1e3,Math.max(C,I)]}(a.utc(d,g).valueOf(),v,y),b=E[0],N=E[1],x=a(b).utcOffset(N);return x.$x.$timezone=y,x},a.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},a.tz.setDefault=function(d){l=d}}})})(xl);var Mp=xl.exports,Np=Zt(Mp),Cl={exports:{}};(function(i,t){(function(e,r){i.exports=r()})(Wt,function(){var e="week",r="year";return function(n,s,a){var l=s.prototype;l.week=function(f){if(f===void 0&&(f=null),f!==null)return this.add(7*(f-this.week()),"day");var h=this.$locale().yearStart||1;if(this.month()===11&&this.date()>25){var p=a(this).startOf(r).add(1,r).date(h),c=a(this).endOf(e);if(p.isBefore(c))return 1}var d=a(this).startOf(r).date(h).startOf(e).subtract(1,"millisecond"),_=this.diff(d,e,!0);return _<0?a(this).startOf("week").week():Math.ceil(_)},l.weeks=function(f){return f===void 0&&(f=null),this.week(f)}}})})(Cl);var Sp=Cl.exports,Bp=Zt(Sp);function cs(i){const t=parseInt(i)||1;let e=i.replace(/\d+/,"");return e==="m"||e==="M"?e="M":e?e=e.toLocaleLowerCase():e="m",[t,e]}function Ip(i=10){const t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";let e="";const r=t.length;for(let n=0;n<i;n++)e+=t.charAt(Math.floor(Math.random()*r));return e}function Tp(i){const t=/([+-])(\d{2})(\d{2})/,e=i.match(t);if(!e)throw new Error("Invalid timezone string");const[,r,n,s]=e;return(r==="+"?1:-1)*(parseInt(n,10)*60+parseInt(s,10))}function Fr(i,t){return t&&(t.startsWith("UTC")||t.startsWith("GMT"))?ne(i).utcOffset(Tp(t)):ne(i).tz(t)}function Bn(i){const[t,e]=cs(i);let r=0;switch(e){case"m":r=60;break;case"s":r=1;break;case"M":r=31*24*60*60;break;case"d":r=24*60*60;break;case"w":r=7*24*60*60;break;default:r=60*60;break}return Math.round(Number(t)*r)}var Lr=(i=>(i.BOOL="bool",i.INT="int",i.FLOAT="float",i.ARRAY="array",i.BOX="box",i.CHART_POINT="chart.point",i.COLOR="color",i.CONST="const",i.LABEL="label",i.LINE="line",i.LINEFILL="linefill",i.MAP="map",i.MATRIX="matrix",i.POLYLINE="polyline",i.SERIES="series",i.SIMPLE="simple",i.STRING="string",i.TABLE="table",i.UNDETERMINED="undetermined type",i.INPUT="input",i.NA="na",i.VOID="void",i))(Lr||{}),hs=(i=>(i.dividends="dividends",i.none="none",i.splits="splits",i))(hs||{}),an=(i=>(i.freqAll="freq_all",i.freqOncePerBar="freq_once_per_bar",i.freqOncePerBarClose="freq_once_per_bar_close",i))(an||{}),$i=(i=>(i.gapsOff="gaps_off",i.gapsOn="gaps_on",i.lookaheadOff="lookahead_off",i.lookaheadOn="lookahead_on",i))($i||{}),tr=(i=>(i.all="all",i.dataWindow="data_window",i.none="none",i.pane="pane",i.priceScale="price_scale",i.statusLine="status_line",i))(tr||{}),In=(i=>(i.both="both",i.left="left",i.none="none",i.right="right",i))(In||{}),Qn=(i=>(i.inherit="inherit",i.mintick="mintick",i.percent="percent",i.price="price",i.volume="volume",i))(Qn||{}),ps=(i=>(i.styleDashed="style_dashed",i.styleDotted="style_dotted",i.styleSolid="style_solid",i))(ps||{}),de=(i=>(i.styleArrowdown="style_arrowdown",i.styleArrowup="style_arrowup",i.styleCircle="style_circle",i.styleCross="style_cross",i.styleDiamond="style_diamond",i.styleFlag="style_flag",i.styleLabelCenter="style_label_center",i.styleLabelDown="style_label_down",i.styleLabelLeft="style_label_left",i.styleLabelLowerLeft="style_label_lower_left",i.styleLabelLowerRight="style_label_lower_right",i.styleLabelRight="style_label_right",i.styleLabelUp="style_label_up",i.styleLabelUpperLeft="style_label_upper_left",i.styleLabelUpperRight="style_label_upper_right",i.styleNone="style_none",i.styleSquare="style_square",i.styleTextOutline="style_text_outline",i.styleTriangledown="style_triangledown",i.styleTriangleup="style_triangleup",i.styleXcross="style_xcross",i))(de||{}),Pr=(i=>(i.styleArrowBoth="style_arrow_both",i.styleArrowLeft="style_arrow_left",i.styleArrowRight="style_arrow_right",i.styleDashed="style_dashed",i.styleDotted="style_dotted",i.styleSolid="style_solid",i))(Pr||{}),Vn=(i=>(i.abovebar="abovebar",i.absolute="absolute",i.belowbar="belowbar",i.bottom="bottom",i.top="top",i))(Vn||{}),Tn=(i=>(i.ascending="ascending",i.descending="descending",i))(Tn||{}),mr=(i=>(i.styleArea="Area",i.styleAreabr="Area With Breaks",i.styleCircles="Circles",i.styleColumns="Columns",i.styleCross="Cross",i.styleHistogram="Histogram",i.styleLine="Line",i.styleLinebr="Line With Breaks",i.styleStepline="Step Line",i.styleSteplineDiamond="Step Line With Diamonds",i.styleSteplinebr="Step line with Breaks",i))(mr||{}),Mr=(i=>(i.bottomCenter="bottom_center",i.bottomLeft="bottom_left",i.bottomRight="bottom_right",i.middleCenter="middle_center",i.middleLeft="middle_left",i.middleRight="middle_right",i.topCenter="top_center",i.topLeft="top_left",i.topRight="top_right",i))(Mr||{}),ms=(i=>(i.left="left",i.none="none",i.right="right",i))(ms||{}),ru=(i=>(i.extended="extended",i.regular="regular",i))(ru||{}),er=(i=>(i.arrowdown="arrowdown",i.arrowup="arrowup",i.circle="circle",i.cross="cross",i.diamond="diamond",i.flag="flag",i.labeldown="labeldown",i.labelup="labelup",i.square="square",i.triangledown="triangledown",i.triangleup="triangleup",i.xcross="xcross",i))(er||{}),zr=(i=>(i.auto="auto",i.huge="huge",i.large="large",i.normal="normal",i.small="small",i.tiny="tiny",i))(zr||{}),ds=(i=>(i.cash="cash",i.fixed="fixed",i.percentOfEquity="percent_of_equity",i))(ds||{}),gs=(i=>(i.cashPerContract="cash_per_contract",i.cashPerOrder="cash_per_order",i.percent="percent",i))(gs||{}),vs=(i=>(i.all="all",i.long="long",i.short="short",i))(vs||{}),_s=(i=>(i.cancel="cancel",i.none="none",i.reduce="reduce",i))(_s||{}),Ge=(i=>(i.alignBottom="align_bottom",i.alignCenter="align_center",i.alignLeft="align_left",i.alignRight="align_right",i.alignTop="align_top",i.wrapAuto="wrap_auto",i.wrapNone="wrap_none",i))(Ge||{}),Ie=(i=>(i.bar_index="bar_index",i.bar_time="bar_time",i))(Ie||{}),Oi=(i=>(i.abovebar="abovebar",i.belowbar="belowbar",i.price="price",i))(Oi||{}),ws=(i=>(i.actual="actual",i.estimate="estimate",i.standardized="standardized",i))(ws||{}),$n=(i=>(i.traditional="Traditional",i.fibonacci="Fibonacci",i.woodie="Woodie",i.classic="Classic",i.dm="DM",i.camarilla="Camarilla",i))($n||{});class $p{new({size:t,initial_value:e}={}){return new Xt(t,e)}new_float({size:t,initial_value:e}={}){return new Xt(t,e)}new_int({size:t,initial_value:e}={}){return new Xt(t,e)}new_color({size:t,initial_value:e}={}){return new Xt(t,e)}new_bool({size:t,initial_value:e}={}){return new Xt(t,e)}new_string({size:t,initial_value:e}={}){return new Xt(t,e)}new_line({size:t,initial_value:e}={}){return new Xt(t,e)}new_box({size:t,initial_value:e}={}){return new Xt(t,e)}new_table({size:t,initial_value:e}={}){return new Xt(t,e)}new_linefill({size:t,initial_value:e}={}){return new Xt(t,e)}new_label({size:t,initial_value:e}={}){return new Xt(t,e)}copy({id:t}){return t==null?void 0:t.copy()}slice({id:t,index_from:e,index_to:r}){return t==null?void 0:t.slice({index_from:e,index_to:r})}size({id:t}){return t==null?void 0:t.size()}first({id:t}){return t==null?void 0:t.first()}abs({id:t}){return t==null?void 0:t.abs()}avg({id:t}){return t==null?void 0:t.avg()}binary_search({id:t,val:e}){return t==null?void 0:t.binary_search({val:e})}binary_search_leftmost({id:t,val:e}){return t==null?void 0:t.binary_search_leftmost({val:e})}binary_search_rightmost({id:t,val:e}){return t==null?void 0:t.binary_search_rightmost({val:e})}clear({id:t}){t==null||t.clear()}concat({id1:t,id2:e}){return t==null?void 0:t.concat({id2:e})}covariance({id1:t,id2:e,biased:r}){return t==null?void 0:t.covariance({id2:e,biased:r})}every({id:t}){return t==null?void 0:t.every()}from(t,e){const r=new Xt;return r._value=e,r}fill({id:t,value:e,index_from:r,index_to:n}){t==null||t.fill({value:e,index_from:r,index_to:n})}get({id:t,index:e}){return t==null?void 0:t.get({index:e})}includes({id:t,value:e}){return t==null?void 0:t.includes({value:e})}indexof({id:t,value:e}){return t==null?void 0:t.indexof({value:e})}insert({id:t,index:e,value:r}){t==null||t.insert({index:e,value:r})}join({id:t,separator:e}){return t==null?void 0:t.join({separator:e})}last({id:t}){return t==null?void 0:t.last()}lastindexof({id:t,value:e}){return t==null?void 0:t.lastindexof({value:e})}max({id:t,nth:e}){return t==null?void 0:t.max({nth:e})}median({id:t}){return t==null?void 0:t.median()}min({id:t,nth:e}){return t==null?void 0:t.min({nth:e})}mode({id:t}){return t==null?void 0:t.mode()}percentile_linear_interpolation({id:t,percentage:e}){return t==null?void 0:t.percentile_linear_interpolation({percentage:e})}percentile_nearest_rank({id:t,percentage:e}){return t==null?void 0:t.percentile_nearest_rank({percentage:e})}percentrank({id:t,index:e}){return t==null?void 0:t.percentrank({index:e})}pop({id:t}){return t==null?void 0:t.pop()}push({id:t,value:e}){t==null||t.push({value:e})}range({id:t}){return t==null?void 0:t.range()}remove({id:t,index:e}){return t==null?void 0:t.remove({index:e})}reverse({id:t}){return t==null?void 0:t.reverse()}set({id:t,index:e,value:r}){t==null||t.set({index:e,value:r})}shift({id:t}){return t==null?void 0:t.shift()}some({id:t}){return t==null?void 0:t.some()}sort({id:t,order:e}){t==null||t.sort({order:e})}sort_indices({id:t,order:e}){return t==null?void 0:t.sort_indices({order:e})}standardize({id:t}){return t==null?void 0:t.standardize()}stdev({id:t,biased:e}){return t==null?void 0:t.stdev({biased:e})}sum({id:t}){return t==null?void 0:t.sum()}unshift({id:t,value:e}){t==null||t.unshift({value:e})}variance({id:t,biased:e}){return t==null?void 0:t.variance({biased:e})}}class Xt{constructor(t=0,e){G(this,"_arrInstance");this._arrInstance=Array.from(new Array(t||0),()=>Cr.cloneDeep(e))}get isArray(){return!0}get _value(){return[...this._arrInstance]}set _value(t){this._arrInstance=[...t]}_deepCopyData(t){this._arrInstance=Cr.cloneDeep(t)}_copyData(t){this._arrInstance=t}copy(){const t=new Xt;return t._deepCopyData(this._arrInstance),t}slice({index_from:t,index_to:e}){const r=new Xt;return r._copyData(this._arrInstance.slice(t,e)),r}size(){return this._arrInstance.length}first(){return this._arrInstance[0]}abs(){const t=new Xt;this._verifySimpleType("number","abs","int/float");const e=this._arrInstance.map(r=>Math.abs(r));return t._copyData(e),t}avg(){return this._verifySimpleType("number","avg","int/float"),Cr.mean(this._arrInstance)}binary_search({val:t}){return this._verifySimpleType("number","binary_search","int/float"),this._binarySearch(this._arrInstance,t)}binary_search_leftmost({val:t}){return this._verifySimpleType("number","binary_search_leftmost","int/float"),this._binarySearchLeftMost(this._arrInstance,t)}binary_search_rightmost({val:t}){return this._verifySimpleType("number","binary_search_rightmost","int/float"),this._binarySearchRightMost(this._arrInstance,t)}clear(){this._arrInstance=[]}concat({id2:t}){return this._arrInstance=this._arrInstance.concat(t==null?void 0:t._value),this}covariance({id2:t,biased:e}){return this._verifySimpleType("number","covariance","int/float"),this._verifySimpleType("number","covariance","int/float",t==null?void 0:t._value),this._covariance(this._arrInstance,t._value,e)}every(){return this._verifySimpleType("number|boolean","every","int/float/bool"),this._arrInstance.every(t=>!!t)}fill({value:t,index_from:e,index_to:r}){this._arrInstance=this._setElements(this._arrInstance,t,e,r)}get({index:t}){return this._arrInstance[t]}includes({value:t}){return this._arrInstance.includes(t)}indexof({value:t}){return this._arrInstance.indexOf(t)}insert({index:t,value:e}){this._arrInstance.splice(t,0,e)}join({separator:t}={}){return this._verifySimpleType("number|string","join","int/float/string"),this._arrInstance.join(t)}last(){return this._arrInstance[this._arrInstance.length-1]}lastindexof({value:t}){return this._arrInstance.lastIndexOf(t)}max({nth:t}={}){return this._verifySimpleType("number","max","int/float"),this._maxNth([...this._arrInstance],t)}median(){return this._verifySimpleType("number","median","int/float"),this._median([...this._arrInstance])}min({nth:t}={}){return this._verifySimpleType("number","min","int/float"),this._minNth([...this._arrInstance],t)}mode(){return this._verifySimpleType("number","mode","int/float"),this._mode([...this._arrInstance])}percentile_linear_interpolation({percentage:t}){return this._verifySimpleType("number","percentile_linear_interpolation","int/float"),this._percentileLinearInterpolation([...this._arrInstance],t)}percentile_nearest_rank({percentage:t}){return this._verifySimpleType("number","percentile_nearest_rank","int/float"),this._getNearestRankPercentile([...this._arrInstance],t)}percentrank({index:t}){return this._verifySimpleType("number","percentrank","int/float"),this._getPercentileRank([...this._arrInstance],t)}pop(){return this._arrInstance.pop()}push({value:t}){this._arrInstance.push(t)}range(){if(this._arrInstance.length===0)throw new Error("Array must not be empty");this._verifySimpleType("number","range","int/float");const t=Math.min(...this._arrInstance);return Math.max(...this._arrInstance)-t}remove({index:t}){return this._arrInstance.splice(t,1)[0]}reverse(){this._arrInstance.reverse()}set({index:t,value:e}){this._arrInstance[t]=e}shift(){return this._arrInstance.shift()}some(){return this._verifySimpleType("number|boolean","some","int/float/bool"),this._arrInstance.some(t=>!!t)}sort({order:t}={}){this._verifySimpleType("number","sort","int/float"),this._arrInstance.sort((e,r)=>t!==Tn.descending?e-r:r-e)}sort_indices({order:t}={}){this._verifySimpleType("number","sort_indices","int/float");const e=this._arrInstance.map((n,s)=>s);e.sort((n,s)=>t!==Tn.descending?this._arrInstance[n]-this._arrInstance[s]:this._arrInstance[s]-this._arrInstance[n]);const r=new Xt;return r._copyData(e),r}standardize(){this._verifySimpleType("number","standardize","int/float");const t=new Xt;return t._copyData(this._standardizeArray([...this._arrInstance])),t}stdev({biased:t}={}){return this._verifySimpleType("number","stdev","int/float"),this._calculateStandardDeviations([...this._arrInstance],t)}sum(){return this._verifySimpleType("number","sum","int/float"),this._arrInstance.reduce((e,r)=>e+r,0)}unshift({value:t}){this._arrInstance.unshift(t)}variance({biased:t}={}){return this._verifySimpleType("number","variance","int/float"),this._calculateVariances([...this._arrInstance],t)}_calculateVariances(t,e=!0){if(t.length===0)throw new Error("Array must not be empty");const r=t.reduce((a,l)=>a+l,0)/t.length,n=t.reduce((a,l)=>a+(l-r)**2,0),s=n/t.length;return e?s:t.length>1?n/(t.length-1):s}_calculateStandardDeviations(t,e=!0){if(t.length===0)throw new Error("Array must not be empty");const r=t.reduce((a,l)=>a+l,0)/t.length,n=t.reduce((a,l)=>{const f=l-r;return a+f*f},0),s=Math.sqrt(n/t.length);return e?s:t.length>1?Math.sqrt(n/(t.length-1)):s}_standardizeArray(t){const e=t.reduce((s,a)=>s+a,0)/t.length,r=Math.sqrt(t.reduce((s,a)=>s+Math.pow(a-e,2),0)/t.length);return t.map(s=>(s-e)/r)}_getPercentileRank(t,e=0){const r=t[e];let n=0;for(let a=0;a<t.length;a++)(t[a]<r||t[a]===r&&a<=e)&&n++;return n/(t.length-1)*100}_getNearestRankPercentile(t,e=0){if(t.length===0||e<0||e>100)throw new Error("Invalid percentile or empty array");const r=t.slice().sort((a,l)=>a-l),n=e/100*r.length,s=Math.ceil(n)-1;return r[s>=r.length?r.length-1:s]}_percentileLinearInterpolation(t,e=0){if(e<0||e>100)return;t.sort(function(s,a){return s-a});const r=t.length;e/=100;const n=1/(r*2);if(e<=n)return t[0];if(e>=1-1/(r*2))return t[r-1];for(const[s,a]of t.entries()){const l=t[s-1];if(e<(s+.5)/r)return l+(a-l)*(e-(s-.5)/r)/(1/r)}}_mode(t){const e={};let r=0;const n=[];for(const s of t)e[s]=(e[s]||0)+1,r=Math.max(r,e[s]);for(const s in e)e[s]===r&&n.push(Number(s));return Math.min(...r===1?t:n)}_median(t){t.sort(function(r,n){return r-n});const e=Math.floor(t.length/2);return t.length%2?t[e]:(t[e-1]+t[e])/2}_minNth(t,e=0){return t.sort(function(r,n){return r-n}),t[e]}_maxNth(t,e=0){return t.sort(function(r,n){return n-r}),t[e]}_setElements(t,e,r=0,n){n===void 0&&(n=t.length);for(let s=r;s<n;s++)t[s]=e;return t}_covariance(t,e,r=!1){if(t.length!=e.length)throw"Arrays have different lengths";const n=t.reduce((l,f)=>l+f,0)/t.length,s=e.reduce((l,f)=>l+f,0)/e.length;let a=0;for(let l=0;l<t.length;l++)a+=(t[l]-n)*(e[l]-s);return r?a/t.length:a/(t.length-1)}_verifySimpleType(t,e,r,n=this._arrInstance){if(n.some(a=>!t.split("|").includes(typeof a)))throw Error(`数组类型错误,array.${e}方法只能使用${r}类型数组!`)}_binarySearch(t,e){let r=0,n=t.length-1;for(;r<=n;){const s=Math.floor((r+n)/2);if(t[s]===e)return s;t[s]<e?r=s+1:n=s-1}return-1}_binarySearchLeftMost(t,e){let r=0,n=t.length-1;const s=[];for(;r<=n;){const a=Math.floor((r+n)/2);t[a]===e&&s.push(a),t[a]<e?r=a+1:n=a-1}return s.length?Math.min(...s):r-1}_binarySearchRightMost(t,e){let r=0,n=t.length-1;const s=[];for(;r<=n;){const a=Math.floor((r+n)/2);t[a]===e&&s.push(a),t[a]<=e?r=a+1:n=a-1}return s.length?Math.max(...s):r}}class Op{constructor(t){G(this,"_randomNums");G(this,"_mintick");G(this,"_cacheData");G(this,"_barIndex");this._mintick=t,this._randomNums={},this._cacheData={},this._barIndex=0}update(t){this._barIndex=t,this._randomNums={}}abs({number:t}){return Math.abs(t)}acos({angle:t}){const e=Math.acos(t);return isNaN(e)?void 0:e}asin({angle:t}){const e=Math.asin(t);return isNaN(e)?void 0:e}atan({angle:t}){const e=Math.atan(t);return isNaN(e)?void 0:e}avg(t,e){return Cr.mean(e)}ceil({number:t}){return Math.ceil(t)}floor({number:t}){return Math.floor(t)}cos({angle:t}){const e=Math.cos(t);return isNaN(e)?void 0:e}sin({angle:t}){const e=Math.sin(t);return isNaN(e)?void 0:e}tan({angle:t}){const e=Math.tan(t);return isNaN(e)?void 0:e}exp({number:t}){return Math.exp(t)}log({number:t}){return Math.log(t)}log10({number:t}){return Math.log10(t)}max(t,e){return Math.max(...e)}min(t,e){return Math.min(...e)}pow({base:t,exponent:e}){return Math.pow(t,e)}random({min:t=0,max:e=1,seed:r}){if(r&&this._randomNums[r])return this._randomNums[r];if(t>=e)throw new Error("min must be less than max");let n;do n=Math.random()*(e-t)+t;while(n===t||n===e);return r&&(this._randomNums[r]=n),n}round({number:t,precision:e}){return e?Number(t==null?void 0:t.toFixed(e)):Math.round(t)}round_to_mintick({number:t}){return Number(t==null?void 0:t.toFixed(this._mintick))}sign({number:t}){return t&&Math.sign(t)}sqrt({number:t}){return Math.sqrt(t)}sum({source:t,length:e=1},r){let n=this._cacheData[`sum_${r}`];n||(n=[]),n[this._barIndex]=t,this._cacheData[`sum_${r}`]=n;const s=n.filter(()=>!0);if(!(s.length<e))return Cr.sum(s.slice(-e))}todegrees({radians:t}){return t*(180/Math.PI)}toradians({degrees:t}){const e=t*(Math.PI/180);return Number(e.toFixed(2))}}function Ds(){return Ds=Object.assign?Object.assign.bind():function(i){for(var t=1;t<arguments.length;t++){var e=arguments[t];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(i[r]=e[r])}return i},Ds.apply(this,arguments)}var Fl={epsilon:1e-12,matrix:"Matrix",number:"number",precision:64,predictable:!1,randomSeed:null};function ae(i){return typeof i=="number"}function ye(i){return!i||typeof i!="object"||typeof i.constructor!="function"?!1:i.isBigNumber===!0&&typeof i.constructor.prototype=="object"&&i.constructor.prototype.isBigNumber===!0||typeof i.constructor.isDecimal=="function"&&i.constructor.isDecimal(i)===!0}function Ml(i){return i&&typeof i=="object"&&Object.getPrototypeOf(i).isComplex===!0||!1}function Nl(i){return i&&typeof i=="object"&&Object.getPrototypeOf(i).isFraction===!0||!1}function Sl(i){return i&&i.constructor.prototype.isUnit===!0||!1}function qr(i){return typeof i=="string"}var ge=Array.isArray;function fe(i){return i&&i.constructor.prototype.isMatrix===!0||!1}function Ri(i){return Array.isArray(i)||fe(i)}function Rp(i){return i&&i.isDenseMatrix&&i.constructor.prototype.isMatrix===!0||!1}function Lp(i){return i&&i.isSparseMatrix&&i.constructor.prototype.isMatrix===!0||!1}function Pp(i){return i&&i.constructor.prototype.isRange===!0||!1}function nu(i){return i&&i.constructor.prototype.isIndex===!0||!1}function zp(i){return typeof i=="boolean"}function qp(i){return i&&i.constructor.prototype.isResultSet===!0||!1}function Up(i){return i&&i.constructor.prototype.isHelp===!0||!1}function kp(i){return typeof i=="function"}function Wp(i){return i instanceof Date}function Yp(i){return i instanceof RegExp}function iu(i){return!!(i&&typeof i=="object"&&i.constructor===Object&&!Ml(i)&&!Nl(i))}function Zp(i){return i===null}function jp(i){return i===void 0}function Gp(i){return i&&i.isAccessorNode===!0&&i.constructor.prototype.isNode===!0||!1}function Kp(i){return i&&i.isArrayNode===!0&&i.constructor.prototype.isNode===!0||!1}function Jp(i){return i&&i.isAssignmentNode===!0&&i.constructor.prototype.isNode===!0||!1}function Xp(i){return i&&i.isBlockNode===!0&&i.constructor.prototype.isNode===!0||!1}function Hp(i){return i&&i.isConditionalNode===!0&&i.constructor.prototype.isNode===!0||!1}function Qp(i){return i&&i.isConstantNode===!0&&i.constructor.prototype.isNode===!0||!1}function Vp(i){return i&&i.isFunctionAssignmentNode===!0&&i.constructor.prototype.isNode===!0||!1}function tm(i){return i&&i.isFunctionNode===!0&&i.constructor.prototype.isNode===!0||!1}function em(i){return i&&i.isIndexNode===!0&&i.constructor.prototype.isNode===!0||!1}function rm(i){return i&&i.isNode===!0&&i.constructor.prototype.isNode===!0||!1}function nm(i){return i&&i.isObjectNode===!0&&i.constructor.prototype.isNode===!0||!1}function im(i){return i&&i.isOperatorNode===!0&&i.constructor.prototype.isNode===!0||!1}function sm(i){return i&&i.isParenthesisNode===!0&&i.constructor.prototype.isNode===!0||!1}function om(i){return i&&i.isRangeNode===!0&&i.constructor.prototype.isNode===!0||!1}function um(i){return i&&i.isRelationalNode===!0&&i.constructor.prototype.isNode===!0||!1}function am(i){return i&&i.isSymbolNode===!0&&i.constructor.prototype.isNode===!0||!1}function lm(i){return i&&i.constructor.prototype.isChain===!0||!1}function ln(i){var t=typeof i;return t==="object"?i===null?"null":ye(i)?"BigNumber":i.constructor&&i.constructor.name?i.constructor.name:"Object":t}function te(i){var t=typeof i;if(t==="number"||t==="string"||t==="boolean"||i===null||i===void 0)return i;if(typeof i.clone=="function")return i.clone();if(Array.isArray(i))return i.map(function(e){return te(e)});if(i instanceof Date)return new Date(i.valueOf());if(ye(i))return i;if(iu(i))return fm(i,te);throw new TypeError("Cannot clone: unknown type of value (value: ".concat(i,")"))}function fm(i,t){var e={};for(var r in i)Li(i,r)&&(e[r]=t(i[r]));return e}function Bl(i,t){for(var e in t)Li(t,e)&&(i[e]=t[e]);return i}function ti(i,t){var e,r,n;if(Array.isArray(i)){if(!Array.isArray(t)||i.length!==t.length)return!1;for(r=0,n=i.length;r<n;r++)if(!ti(i[r],t[r]))return!1;return!0}else{if(typeof i=="function")return i===t;if(i instanceof Object){if(Array.isArray(t)||!(t instanceof Object))return!1;for(e in i)if(!(e in t)||!ti(i[e],t[e]))return!1;for(e in t)if(!(e in i))return!1;return!0}else return i===t}}function Li(i,t){return i&&Object.hasOwnProperty.call(i,t)}function cm(i,t){for(var e={},r=0;r<t.length;r++){var n=t[r],s=i[n];s!==void 0&&(e[n]=s)}return e}var hm=["Matrix","Array"],pm=["number","BigNumber","Fraction"],rr=function(t){if(t)throw new Error(`The global config is readonly.
|
28
|
+
Please create a mathjs instance if you want to change the default configuration.
|
29
|
+
Example:
|
30
|
+
|
31
|
+
import { create, all } from 'mathjs';
|
32
|
+
const mathjs = create(all);
|
33
|
+
mathjs.config({ number: 'BigNumber' });
|
34
|
+
`);return Object.freeze(Fl)};Ds(rr,Fl,{MATRIX_OPTIONS:hm,NUMBER_OPTIONS:pm});function Il(){return!0}function dr(){return!1}function ei(){}const Tl="Argument is not a typed-function.";function $l(){function i(O){return typeof O=="object"&&O!==null&&O.constructor===Object}const t=[{name:"number",test:function(O){return typeof O=="number"}},{name:"string",test:function(O){return typeof O=="string"}},{name:"boolean",test:function(O){return typeof O=="boolean"}},{name:"Function",test:function(O){return typeof O=="function"}},{name:"Array",test:Array.isArray},{name:"Date",test:function(O){return O instanceof Date}},{name:"RegExp",test:function(O){return O instanceof RegExp}},{name:"Object",test:i},{name:"null",test:function(O){return O===null}},{name:"undefined",test:function(O){return O===void 0}}],e={name:"any",test:Il,isAny:!0};let r,n,s=0,a={createCount:0};function l(O){const Z=r.get(O);if(Z)return Z;let J='Unknown type "'+O+'"';const nt=O.toLowerCase();let st;for(st of n)if(st.toLowerCase()===nt){J+='. Did you mean "'+st+'" ?';break}throw new TypeError(J)}function f(O){let Z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"any";const J=Z?l(Z).index:n.length,nt=[];for(let rt=0;rt<O.length;++rt){if(!O[rt]||typeof O[rt].name!="string"||typeof O[rt].test!="function")throw new TypeError("Object with properties {name: string, test: function} expected");const ct=O[rt].name;if(r.has(ct))throw new TypeError('Duplicate type name "'+ct+'"');nt.push(ct),r.set(ct,{name:ct,test:O[rt].test,isAny:O[rt].isAny,index:J+rt,conversionsTo:[]})}const st=n.slice(J);n=n.slice(0,J).concat(nt).concat(st);for(let rt=J+nt.length;rt<n.length;++rt)r.get(n[rt]).index=rt}function h(){r=new Map,n=[],s=0,f([e],!1)}h(),f(t);function p(){let O;for(O of n)r.get(O).conversionsTo=[];s=0}function c(O){const Z=n.filter(J=>{const nt=r.get(J);return!nt.isAny&&nt.test(O)});return Z.length?Z:["any"]}function d(O){return O&&typeof O=="function"&&"_typedFunctionData"in O}function _(O,Z,J){if(!d(O))throw new TypeError(Tl);const nt=J&&J.exact,st=Array.isArray(Z)?Z.join(","):Z,rt=N(st),ct=y(rt);if(!nt||ct in O.signatures){const Kt=O._typedFunctionData.signatureMap.get(ct);if(Kt)return Kt}const at=rt.length;let ht;if(nt){ht=[];let Kt;for(Kt in O.signatures)ht.push(O._typedFunctionData.signatureMap.get(Kt))}else ht=O._typedFunctionData.signatures;for(let Kt=0;Kt<at;++Kt){const Qt=rt[Kt],pe=[];let Te;for(Te of ht){const Ne=S(Te.params,Kt);if(!(!Ne||Qt.restParam&&!Ne.restParam)){if(!Ne.hasAny){const or=b(Ne);if(Qt.types.some(ur=>!or.has(ur.name)))continue}pe.push(Te)}}if(ht=pe,ht.length===0)break}let ut;for(ut of ht)if(ut.params.length<=at)return ut;throw new TypeError("Signature not found (signature: "+(O.name||"unnamed")+"("+y(rt,", ")+"))")}function D(O,Z,J){return _(O,Z,J).implementation}function g(O,Z){const J=l(Z);if(J.test(O))return O;const nt=J.conversionsTo;if(nt.length===0)throw new Error("There are no conversions to "+Z+" defined.");for(let st=0;st<nt.length;st++)if(l(nt[st].from).test(O))return nt[st].convert(O);throw new Error("Cannot convert "+O+" to "+Z)}function y(O){let Z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:",";return O.map(J=>J.name).join(Z)}function v(O){const Z=O.indexOf("...")===0,nt=(Z?O.length>3?O.slice(3):"any":O).split("|").map(at=>l(at.trim()));let st=!1,rt=Z?"...":"";return{types:nt.map(function(at){return st=at.isAny||st,rt+=at.name+"|",{name:at.name,typeIndex:at.index,test:at.test,isAny:at.isAny,conversion:null,conversionIndex:-1}}),name:rt.slice(0,-1),hasAny:st,hasConversion:!1,restParam:Z}}function E(O){const Z=O.types.map(ct=>ct.name),J=K(Z);let nt=O.hasAny,st=O.name;const rt=J.map(function(ct){const at=l(ct.from);return nt=at.isAny||nt,st+="|"+ct.from,{name:ct.from,typeIndex:at.index,test:at.test,isAny:at.isAny,conversion:ct,conversionIndex:ct.index}});return{types:O.types.concat(rt),name:st,hasAny:nt,hasConversion:rt.length>0,restParam:O.restParam}}function b(O){return O.typeSet||(O.typeSet=new Set,O.types.forEach(Z=>O.typeSet.add(Z.name))),O.typeSet}function N(O){const Z=[];if(typeof O!="string")throw new TypeError("Signatures must be strings");const J=O.trim();if(J==="")return Z;const nt=J.split(",");for(let st=0;st<nt.length;++st){const rt=v(nt[st].trim());if(rt.restParam&&st!==nt.length-1)throw new SyntaxError('Unexpected rest parameter "'+nt[st]+'": only allowed for the last parameter');if(rt.types.length===0)return null;Z.push(rt)}return Z}function x(O){const Z=It(O);return Z?Z.restParam:!1}function F(O){if(!O||O.types.length===0)return Il;if(O.types.length===1)return l(O.types[0].name).test;if(O.types.length===2){const Z=l(O.types[0].name).test,J=l(O.types[1].name).test;return function(st){return Z(st)||J(st)}}else{const Z=O.types.map(function(J){return l(J.name).test});return function(nt){for(let st=0;st<Z.length;st++)if(Z[st](nt))return!0;return!1}}}function M(O){let Z,J,nt;if(x(O)){Z=ee(O).map(F);const st=Z.length,rt=F(It(O)),ct=function(at){for(let ht=st;ht<at.length;ht++)if(!rt(at[ht]))return!1;return!0};return function(ht){for(let ut=0;ut<Z.length;ut++)if(!Z[ut](ht[ut]))return!1;return ct(ht)&&ht.length>=st+1}}else return O.length===0?function(rt){return rt.length===0}:O.length===1?(J=F(O[0]),function(rt){return J(rt[0])&&rt.length===1}):O.length===2?(J=F(O[0]),nt=F(O[1]),function(rt){return J(rt[0])&&nt(rt[1])&&rt.length===2}):(Z=O.map(F),function(rt){for(let ct=0;ct<Z.length;ct++)if(!Z[ct](rt[ct]))return!1;return rt.length===Z.length})}function S(O,Z){return Z<O.length?O[Z]:x(O)?It(O):null}function $(O,Z){const J=S(O,Z);return J?b(J):new Set}function C(O){return O.conversion===null||O.conversion===void 0}function I(O,Z){const J=new Set;return O.forEach(nt=>{const st=$(nt.params,Z);let rt;for(rt of st)J.add(rt)}),J.has("any")?["any"]:Array.from(J)}function R(O,Z,J){let nt,st;const rt=O||"unnamed";let ct=J,at;for(at=0;at<Z.length;at++){const Qt=[];if(ct.forEach(pe=>{const Te=S(pe.params,at),Ne=F(Te);(at<pe.params.length||x(pe.params))&&Ne(Z[at])&&Qt.push(pe)}),Qt.length===0){if(st=I(ct,at),st.length>0){const pe=c(Z[at]);return nt=new TypeError("Unexpected type of argument in function "+rt+" (expected: "+st.join(" or ")+", actual: "+pe.join(" | ")+", index: "+at+")"),nt.data={category:"wrongType",fn:rt,index:at,actual:pe,expected:st},nt}}else ct=Qt}const ht=ct.map(function(Qt){return x(Qt.params)?1/0:Qt.params.length});if(Z.length<Math.min.apply(null,ht))return st=I(ct,at),nt=new TypeError("Too few arguments in function "+rt+" (expected: "+st.join(" or ")+", index: "+Z.length+")"),nt.data={category:"tooFewArgs",fn:rt,index:Z.length,expected:st},nt;const ut=Math.max.apply(null,ht);if(Z.length>ut)return nt=new TypeError("Too many arguments in function "+rt+" (expected: "+ut+", actual: "+Z.length+")"),nt.data={category:"tooManyArgs",fn:rt,index:Z.length,expectedLength:ut},nt;const Kt=[];for(let Qt=0;Qt<Z.length;++Qt)Kt.push(c(Z[Qt]).join("|"));return nt=new TypeError('Arguments of type "'+Kt.join(", ")+'" do not match any of the defined signatures of function '+rt+"."),nt.data={category:"mismatch",actual:Kt},nt}function U(O){let Z=n.length+1;for(let J=0;J<O.types.length;J++)C(O.types[J])&&(Z=Math.min(Z,O.types[J].typeIndex));return Z}function q(O){let Z=s+1;for(let J=0;J<O.types.length;J++)C(O.types[J])||(Z=Math.min(Z,O.types[J].conversionIndex));return Z}function k(O,Z){if(O.hasAny){if(!Z.hasAny)return 1}else if(Z.hasAny)return-1;if(O.restParam){if(!Z.restParam)return 1}else if(Z.restParam)return-1;if(O.hasConversion){if(!Z.hasConversion)return 1}else if(Z.hasConversion)return-1;const J=U(O)-U(Z);if(J<0)return-1;if(J>0)return 1;const nt=q(O)-q(Z);return nt<0?-1:nt>0?1:0}function P(O,Z){const J=O.params,nt=Z.params,st=It(J),rt=It(nt),ct=x(J),at=x(nt);if(ct&&st.hasAny){if(!at||!rt.hasAny)return 1}else if(at&&rt.hasAny)return-1;let ht=0,ut=0,Kt;for(Kt of J)Kt.hasAny&&++ht,Kt.hasConversion&&++ut;let Qt=0,pe=0;for(Kt of nt)Kt.hasAny&&++Qt,Kt.hasConversion&&++pe;if(ht!==Qt)return ht-Qt;if(ct&&st.hasConversion){if(!at||!rt.hasConversion)return 1}else if(at&&rt.hasConversion)return-1;if(ut!==pe)return ut-pe;if(ct){if(!at)return 1}else if(at)return-1;const Te=(J.length-nt.length)*(ct?-1:1);if(Te!==0)return Te;const Ne=[];let or=0;for(let wn=0;wn<J.length;++wn){const Un=k(J[wn],nt[wn]);Ne.push(Un),or+=Un}if(or!==0)return or;let ur;for(ur of Ne)if(ur!==0)return ur;return 0}function K(O){if(O.length===0)return[];const Z=O.map(l);O.length>1&&Z.sort((st,rt)=>st.index-rt.index);let J=Z[0].conversionsTo;if(O.length===1)return J;J=J.concat([]);const nt=new Set(O);for(let st=1;st<Z.length;++st){let rt;for(rt of Z[st].conversionsTo)nt.has(rt.from)||(J.push(rt),nt.add(rt.from))}return J}function j(O,Z){let J=Z;if(O.some(st=>st.hasConversion)){const st=x(O),rt=O.map(Q);J=function(){const at=[],ht=st?arguments.length-1:arguments.length;for(let ut=0;ut<ht;ut++)at[ut]=rt[ut](arguments[ut]);return st&&(at[ht]=arguments[ht].map(rt[ht])),Z.apply(this,at)}}let nt=J;if(x(O)){const st=O.length-1;nt=function(){return J.apply(this,Mt(arguments,0,st).concat([Mt(arguments,st)]))}}return nt}function Q(O){let Z,J,nt,st;const rt=[],ct=[];switch(O.types.forEach(function(at){at.conversion&&(rt.push(l(at.conversion.from).test),ct.push(at.conversion.convert))}),ct.length){case 0:return function(ht){return ht};case 1:return Z=rt[0],nt=ct[0],function(ht){return Z(ht)?nt(ht):ht};case 2:return Z=rt[0],J=rt[1],nt=ct[0],st=ct[1],function(ht){return Z(ht)?nt(ht):J(ht)?st(ht):ht};default:return function(ht){for(let ut=0;ut<ct.length;ut++)if(rt[ut](ht))return ct[ut](ht);return ht}}}function tt(O){function Z(J,nt,st){if(nt<J.length){const rt=J[nt];let ct=[];if(rt.restParam){const at=rt.types.filter(C);at.length<rt.types.length&&ct.push({types:at,name:"..."+at.map(ht=>ht.name).join("|"),hasAny:at.some(ht=>ht.isAny),hasConversion:!1,restParam:!0}),ct.push(rt)}else ct=rt.types.map(function(at){return{types:[at],name:at.name,hasAny:at.isAny,hasConversion:at.conversion,restParam:!1}});return Ht(ct,function(at){return Z(J,nt+1,st.concat([at]))})}else return[st]}return Z(O,0,[])}function ft(O,Z){const J=Math.max(O.length,Z.length);for(let at=0;at<J;at++){const ht=$(O,at),ut=$(Z,at);let Kt=!1,Qt;for(Qt of ut)if(ht.has(Qt)){Kt=!0;break}if(!Kt)return!1}const nt=O.length,st=Z.length,rt=x(O),ct=x(Z);return rt?ct?nt===st:st>=nt:ct?nt>=st:nt===st}function vt(O){return O.map(Z=>Me(Z)?Ce(Z.referToSelf.callback):ir(Z)?Gt(Z.referTo.references,Z.referTo.callback):Z)}function lt(O,Z,J){const nt=[];let st;for(st of O){let rt=J[st];if(typeof rt!="number")throw new TypeError('No definition for referenced signature "'+st+'"');if(rt=Z[rt],typeof rt!="function")return!1;nt.push(rt)}return nt}function wt(O,Z,J){const nt=vt(O),st=new Array(nt.length).fill(!1);let rt=!0;for(;rt;){rt=!1;let ct=!0;for(let at=0;at<nt.length;++at){if(st[at])continue;const ht=nt[at];if(Me(ht))nt[at]=ht.referToSelf.callback(J),nt[at].referToSelf=ht.referToSelf,st[at]=!0,ct=!1;else if(ir(ht)){const ut=lt(ht.referTo.references,nt,Z);ut?(nt[at]=ht.referTo.callback.apply(this,ut),nt[at].referTo=ht.referTo,st[at]=!0,ct=!1):rt=!0}}if(ct&&rt)throw new SyntaxError("Circular reference detected in resolving typed.referTo")}return nt}function yt(O){const Z=/\bthis(\(|\.signatures\b)/;Object.keys(O).forEach(J=>{const nt=O[J];if(Z.test(nt.toString()))throw new SyntaxError("Using `this` to self-reference a function is deprecated since typed-function@3. Use typed.referTo and typed.referToSelf instead.")})}function St(O,Z){if(a.createCount++,Object.keys(Z).length===0)throw new SyntaxError("No signatures provided");a.warnAgainstDeprecatedThis&&yt(Z);const J=[],nt=[],st={},rt=[];let ct;for(ct in Z){if(!Object.prototype.hasOwnProperty.call(Z,ct))continue;const Yt=N(ct);if(!Yt)continue;J.forEach(function(Dn){if(ft(Dn,Yt))throw new TypeError('Conflicting signatures "'+y(Dn)+'" and "'+y(Yt)+'".')}),J.push(Yt);const Ue=nt.length;nt.push(Z[ct]);const aa=Yt.map(E);let wi;for(wi of tt(aa)){const Dn=y(wi);rt.push({params:wi,name:Dn,fn:Ue}),wi.every(po=>!po.hasConversion)&&(st[Dn]=Ue)}}rt.sort(P);const at=wt(nt,st,kn);let ht;for(ht in st)Object.prototype.hasOwnProperty.call(st,ht)&&(st[ht]=at[st[ht]]);const ut=[],Kt=new Map;for(ht of rt)Kt.has(ht.name)||(ht.fn=at[ht.fn],ut.push(ht),Kt.set(ht.name,ht));const Qt=ut[0]&&ut[0].params.length<=2&&!x(ut[0].params),pe=ut[1]&&ut[1].params.length<=2&&!x(ut[1].params),Te=ut[2]&&ut[2].params.length<=2&&!x(ut[2].params),Ne=ut[3]&&ut[3].params.length<=2&&!x(ut[3].params),or=ut[4]&&ut[4].params.length<=2&&!x(ut[4].params),ur=ut[5]&&ut[5].params.length<=2&&!x(ut[5].params),wn=Qt&&pe&&Te&&Ne&&or&&ur;for(let Yt=0;Yt<ut.length;++Yt)ut[Yt].test=M(ut[Yt].params);const Un=Qt?F(ut[0].params[0]):dr,fo=pe?F(ut[1].params[0]):dr,qu=Te?F(ut[2].params[0]):dr,Uu=Ne?F(ut[3].params[0]):dr,ku=or?F(ut[4].params[0]):dr,Wu=ur?F(ut[5].params[0]):dr,co=Qt?F(ut[0].params[1]):dr,Yu=pe?F(ut[1].params[1]):dr,Zu=Te?F(ut[2].params[1]):dr,ju=Ne?F(ut[3].params[1]):dr,Ki=or?F(ut[4].params[1]):dr,Gu=ur?F(ut[5].params[1]):dr;for(let Yt=0;Yt<ut.length;++Yt)ut[Yt].implementation=j(ut[Yt].params,ut[Yt].fn);const Ji=Qt?ut[0].implementation:ei,Ku=pe?ut[1].implementation:ei,Ju=Te?ut[2].implementation:ei,Xu=Ne?ut[3].implementation:ei,Hu=or?ut[4].implementation:ei,Qu=ur?ut[5].implementation:ei,Vu=Qt?ut[0].params.length:-1,ta=pe?ut[1].params.length:-1,ea=Te?ut[2].params.length:-1,ho=Ne?ut[3].params.length:-1,ra=or?ut[4].params.length:-1,na=ur?ut[5].params.length:-1,ia=wn?6:0,sa=ut.length,oa=ut.map(Yt=>Yt.test),ua=ut.map(Yt=>Yt.implementation),_i=function(){for(let Ue=ia;Ue<sa;Ue++)if(oa[Ue](arguments))return ua[Ue].apply(this,arguments);return a.onMismatch(O,arguments,ut)};function kn(Yt,Ue){return arguments.length===Vu&&Un(Yt)&&co(Ue)?Ji.apply(this,arguments):arguments.length===ta&&fo(Yt)&&Yu(Ue)?Ku.apply(this,arguments):arguments.length===ea&&qu(Yt)&&Zu(Ue)?Ju.apply(this,arguments):arguments.length===ho&&Uu(Yt)&&ju(Ue)?Xu.apply(this,arguments):arguments.length===ra&&ku(Yt)&&Ki(Ue)?Hu.apply(this,arguments):arguments.length===na&&Wu(Yt)&&Gu(Ue)?Qu.apply(this,arguments):_i.apply(this,arguments)}try{Object.defineProperty(kn,"name",{value:O})}catch{}return kn.signatures=st,kn._typedFunctionData={signatures:ut,signatureMap:Kt},kn}function bt(O,Z,J){throw R(O,Z,J)}function ee(O){return Mt(O,0,O.length-1)}function It(O){return O[O.length-1]}function Mt(O,Z,J){return Array.prototype.slice.call(O,Z,J)}function ie(O,Z){for(let J=0;J<O.length;J++)if(Z(O[J]))return O[J]}function Ht(O,Z){return Array.prototype.concat.apply([],O.map(Z))}function zt(){const O=ee(arguments).map(J=>y(N(J))),Z=It(arguments);if(typeof Z!="function")throw new TypeError("Callback function expected as last argument");return Gt(O,Z)}function Gt(O,Z){return{referTo:{references:O,callback:Z}}}function Ce(O){if(typeof O!="function")throw new TypeError("Callback function expected as first argument");return{referToSelf:{callback:O}}}function ir(O){return O&&typeof O.referTo=="object"&&Array.isArray(O.referTo.references)&&typeof O.referTo.callback=="function"}function Me(O){return O&&typeof O.referToSelf=="object"&&typeof O.referToSelf.callback=="function"}function Xr(O,Z){if(!O)return Z;if(Z&&Z!==O){const J=new Error("Function names do not match (expected: "+O+", actual: "+Z+")");throw J.data={actual:Z,expected:O},J}return O}function vn(O){let Z;for(const J in O)Object.prototype.hasOwnProperty.call(O,J)&&(d(O[J])||typeof O[J].signature=="string")&&(Z=Xr(Z,O[J].name));return Z}function Hr(O,Z){let J;for(J in Z)if(Object.prototype.hasOwnProperty.call(Z,J)){if(J in O&&Z[J]!==O[J]){const nt=new Error('Signature "'+J+'" is defined twice');throw nt.data={signature:J,sourceFunction:Z[J],destFunction:O[J]},nt}O[J]=Z[J]}}const sr=a;a=function(O){const Z=typeof O=="string",J=Z?1:0;let nt=Z?O:"";const st={};for(let rt=J;rt<arguments.length;++rt){const ct=arguments[rt];let at={},ht;if(typeof ct=="function"?(ht=ct.name,typeof ct.signature=="string"?at[ct.signature]=ct:d(ct)&&(at=ct.signatures)):i(ct)&&(at=ct,Z||(ht=vn(ct))),Object.keys(at).length===0){const ut=new TypeError("Argument to 'typed' at index "+rt+" is not a (typed) function, nor an object with signatures as keys and functions as values.");throw ut.data={index:rt,argument:ct},ut}Z||(nt=Xr(nt,ht)),Hr(st,at)}return St(nt||"",st)},a.create=$l,a.createCount=sr.createCount,a.onMismatch=bt,a.throwMismatchError=bt,a.createError=R,a.clear=h,a.clearConversions=p,a.addTypes=f,a._findType=l,a.referTo=zt,a.referToSelf=Ce,a.convert=g,a.findSignature=_,a.find=D,a.isTypedFunction=d,a.warnAgainstDeprecatedThis=!0,a.addType=function(O,Z){let J="any";Z!==!1&&r.has("Object")&&(J="Object"),a.addTypes([O],J)};function _n(O){if(!O||typeof O.from!="string"||typeof O.to!="string"||typeof O.convert!="function")throw new TypeError("Object with properties {from: string, to: string, convert: function} expected");if(O.to===O.from)throw new SyntaxError('Illegal to define conversion from "'+O.from+'" to itself.')}return a.addConversion=function(O){_n(O);const Z=l(O.to);if(Z.conversionsTo.every(function(J){return J.from!==O.from}))Z.conversionsTo.push({from:O.from,convert:O.convert,index:s++});else throw new Error('There is already a conversion from "'+O.from+'" to "'+Z.name+'"')},a.addConversions=function(O){O.forEach(a.addConversion)},a.removeConversion=function(O){_n(O);const Z=l(O.to),J=ie(Z.conversionsTo,st=>st.from===O.from);if(!J)throw new Error("Attempt to remove nonexistent conversion from "+O.from+" to "+O.to);if(J.convert!==O.convert)throw new Error("Conversion to remove does not match existing conversion");const nt=Z.conversionsTo.indexOf(J);Z.conversionsTo.splice(nt,1)},a.resolve=function(O,Z){if(!d(O))throw new TypeError(Tl);const J=O._typedFunctionData.signatures;for(let nt=0;nt<J.length;++nt)if(J[nt].test(Z))return J[nt];return null},a}var Ol=$l();function he(i){return typeof i=="boolean"?!0:isFinite(i)?i===Math.round(i):!1}function su(i,t,e){var r={2:"0b",8:"0o",16:"0x"},n=r[t],s="";if(e){if(e<1)throw new Error("size must be in greater than 0");if(!he(e))throw new Error("size must be an integer");if(i>2**(e-1)-1||i<-(2**(e-1)))throw new Error("Value must be in range [-2^".concat(e-1,", 2^").concat(e-1,"-1]"));if(!he(i))throw new Error("Value must be an integer");i<0&&(i=i+2**e),s="i".concat(e)}var a="";return i<0&&(i=-i,a="-"),"".concat(a).concat(n).concat(i.toString(t)).concat(s)}function ou(i,t){if(typeof t=="function")return t(i);if(i===1/0)return"Infinity";if(i===-1/0)return"-Infinity";if(isNaN(i))return"NaN";var{notation:e,precision:r,wordSize:n}=Rl(t);switch(e){case"fixed":return dm(i,r);case"exponential":return Ll(i,r);case"engineering":return mm(i,r);case"bin":return su(i,2,n);case"oct":return su(i,8,n);case"hex":return su(i,16,n);case"auto":return gm(i,r,t).replace(/((\.\d*?)(0+))($|e)/,function(){var s=arguments[2],a=arguments[4];return s!=="."?s+a:a});default:throw new Error('Unknown notation "'+e+'". Choose "auto", "exponential", "fixed", "bin", "oct", or "hex.')}}function Rl(i){var t="auto",e,r;if(i!==void 0)if(ae(i))e=i;else if(ye(i))e=i.toNumber();else if(iu(i))i.precision!==void 0&&(e=Pl(i.precision,()=>{throw new Error('Option "precision" must be a number or BigNumber')})),i.wordSize!==void 0&&(r=Pl(i.wordSize,()=>{throw new Error('Option "wordSize" must be a number or BigNumber')})),i.notation&&(t=i.notation);else throw new Error("Unsupported type of options, number, BigNumber, or object expected");return{notation:t,precision:e,wordSize:r}}function ys(i){var t=String(i).toLowerCase().match(/^(-?)(\d+\.?\d*)(e([+-]?\d+))?$/);if(!t)throw new SyntaxError("Invalid number "+i);var e=t[1],r=t[2],n=parseFloat(t[4]||"0"),s=r.indexOf(".");n+=s!==-1?s-1:r.length-1;var a=r.replace(".","").replace(/^0*/,function(l){return n-=l.length,""}).replace(/0*$/,"").split("").map(function(l){return parseInt(l)});return a.length===0&&(a.push(0),n++),{sign:e,coefficients:a,exponent:n}}function mm(i,t){if(isNaN(i)||!isFinite(i))return String(i);var e=ys(i),r=bs(e,t),n=r.exponent,s=r.coefficients,a=n%3===0?n:n<0?n-3-n%3:n-n%3;if(ae(t))for(;t>s.length||n-a+1>s.length;)s.push(0);else for(var l=Math.abs(n-a)-(s.length-1),f=0;f<l;f++)s.push(0);for(var h=Math.abs(n-a),p=1;h>0;)p++,h--;var c=s.slice(p).join(""),d=ae(t)&&c.length||c.match(/[1-9]/)?"."+c:"",_=s.slice(0,p).join("")+d+"e"+(n>=0?"+":"")+a.toString();return r.sign+_}function dm(i,t){if(isNaN(i)||!isFinite(i))return String(i);var e=ys(i),r=typeof t=="number"?bs(e,e.exponent+1+t):e,n=r.coefficients,s=r.exponent+1,a=s+(t||0);return n.length<a&&(n=n.concat(ri(a-n.length))),s<0&&(n=ri(-s+1).concat(n),s=1),s<n.length&&n.splice(s,0,s===0?"0.":"."),r.sign+n.join("")}function Ll(i,t){if(isNaN(i)||!isFinite(i))return String(i);var e=ys(i),r=t?bs(e,t):e,n=r.coefficients,s=r.exponent;n.length<t&&(n=n.concat(ri(t-n.length)));var a=n.shift();return r.sign+a+(n.length>0?"."+n.join(""):"")+"e"+(s>=0?"+":"")+s}function gm(i,t,e){if(isNaN(i)||!isFinite(i))return String(i);var r=zl(e==null?void 0:e.lowerExp,-3),n=zl(e==null?void 0:e.upperExp,5),s=ys(i),a=t?bs(s,t):s;if(a.exponent<r||a.exponent>=n)return Ll(i,t);var l=a.coefficients,f=a.exponent;l.length<t&&(l=l.concat(ri(t-l.length))),l=l.concat(ri(f-l.length+1+(l.length<t?t-l.length:0))),l=ri(-f).concat(l);var h=f>0?f:0;return h<l.length-1&&l.splice(h+1,0,"."),a.sign+l.join("")}function bs(i,t){for(var e={sign:i.sign,coefficients:i.coefficients,exponent:i.exponent},r=e.coefficients;t<=0;)r.unshift(0),e.exponent++,t++;if(r.length>t){var n=r.splice(t,r.length-t);if(n[0]>=5){var s=t-1;for(r[s]++;r[s]===10;)r.pop(),s===0&&(r.unshift(0),e.exponent++,s++),s--,r[s]++}}return e}function ri(i){for(var t=[],e=0;e<i;e++)t.push(0);return t}function vm(i){return i.toExponential().replace(/e.*$/,"").replace(/^0\.?0*|\./,"").length}var _m=Number.EPSILON||2220446049250313e-31;function On(i,t,e){if(e==null)return i===t;if(i===t)return!0;if(isNaN(i)||isNaN(t))return!1;if(isFinite(i)&&isFinite(t)){var r=Math.abs(i-t);return r<=_m?!0:r<=Math.max(Math.abs(i),Math.abs(t))*e}return!1}function Pl(i,t){if(ae(i))return i;if(ye(i))return i.toNumber();t()}function zl(i,t){return ae(i)?i:ye(i)?i.toNumber():t}function uu(i,t,e){var r=i.constructor,n=new r(2),s="";if(e){if(e<1)throw new Error("size must be in greater than 0");if(!he(e))throw new Error("size must be an integer");if(i.greaterThan(n.pow(e-1).sub(1))||i.lessThan(n.pow(e-1).mul(-1)))throw new Error("Value must be in range [-2^".concat(e-1,", 2^").concat(e-1,"-1]"));if(!i.isInteger())throw new Error("Value must be an integer");i.lessThan(0)&&(i=i.add(n.pow(e))),s="i".concat(e)}switch(t){case 2:return"".concat(i.toBinary()).concat(s);case 8:return"".concat(i.toOctal()).concat(s);case 16:return"".concat(i.toHexadecimal()).concat(s);default:throw new Error("Base ".concat(t," not supported "))}}function wm(i,t){if(typeof t=="function")return t(i);if(!i.isFinite())return i.isNaN()?"NaN":i.gt(0)?"Infinity":"-Infinity";var{notation:e,precision:r,wordSize:n}=Rl(t);switch(e){case"fixed":return ym(i,r);case"exponential":return ql(i,r);case"engineering":return Dm(i,r);case"bin":return uu(i,2,n);case"oct":return uu(i,8,n);case"hex":return uu(i,16,n);case"auto":{var s=Ul(t==null?void 0:t.lowerExp,-3),a=Ul(t==null?void 0:t.upperExp,5);if(i.isZero())return"0";var l,f=i.toSignificantDigits(r),h=f.e;return h>=s&&h<a?l=f.toFixed():l=ql(i,r),l.replace(/((\.\d*?)(0+))($|e)/,function(){var p=arguments[2],c=arguments[4];return p!=="."?p+c:c})}default:throw new Error('Unknown notation "'+e+'". Choose "auto", "exponential", "fixed", "bin", "oct", or "hex.')}}function Dm(i,t){var e=i.e,r=e%3===0?e:e<0?e-3-e%3:e-e%3,n=i.mul(Math.pow(10,-r)),s=n.toPrecision(t);if(s.indexOf("e")!==-1){var a=i.constructor;s=new a(s).toFixed()}return s+"e"+(e>=0?"+":"")+r.toString()}function ql(i,t){return t!==void 0?i.toExponential(t-1):i.toExponential()}function ym(i,t){return i.toFixed(t)}function Ul(i,t){return ae(i)?i:ye(i)?i.toNumber():t}function se(i,t){var e=bm(i,t);return t&&typeof t=="object"&&"truncate"in t&&e.length>t.truncate?e.substring(0,t.truncate-3)+"...":e}function bm(i,t){if(typeof i=="number")return ou(i,t);if(ye(i))return wm(i,t);if(Em(i))return!t||t.fraction!=="decimal"?i.s*i.n+"/"+i.d:i.toString();if(Array.isArray(i))return Yl(i,t);if(qr(i))return kl(i);if(typeof i=="function")return i.syntax?String(i.syntax):"function";if(i&&typeof i=="object"){if(typeof i.format=="function")return i.format(t);if(i&&i.toString(t)!=={}.toString())return i.toString(t);var e=Object.keys(i).map(r=>kl(r)+": "+se(i[r],t));return"{"+e.join(", ")+"}"}return String(i)}function kl(i){for(var t=String(i),e="",r=0;r<t.length;){var n=t.charAt(r);e+=n in Wl?Wl[n]:n,r++}return'"'+e+'"'}var Wl={'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t"};function Yl(i,t){if(Array.isArray(i)){for(var e="[",r=i.length,n=0;n<r;n++)n!==0&&(e+=", "),e+=Yl(i[n],t);return e+="]",e}else return se(i,t)}function Em(i){return i&&typeof i=="object"&&typeof i.s=="number"&&typeof i.n=="number"&&typeof i.d=="number"||!1}function jt(i,t,e){if(!(this instanceof jt))throw new SyntaxError("Constructor must be called with the new operator");this.actual=i,this.expected=t,this.relation=e,this.message="Dimension mismatch ("+(Array.isArray(i)?"["+i.join(", ")+"]":i)+" "+(this.relation||"!=")+" "+(Array.isArray(t)?"["+t.join(", ")+"]":t)+")",this.stack=new Error().stack}jt.prototype=new RangeError,jt.prototype.constructor=RangeError,jt.prototype.name="DimensionError",jt.prototype.isDimensionError=!0;function fn(i,t,e){if(!(this instanceof fn))throw new SyntaxError("Constructor must be called with the new operator");this.index=i,arguments.length<3?(this.min=0,this.max=t):(this.min=t,this.max=e),this.min!==void 0&&this.index<this.min?this.message="Index out of range ("+this.index+" < "+this.min+")":this.max!==void 0&&this.index>=this.max?this.message="Index out of range ("+this.index+" > "+(this.max-1)+")":this.message="Index out of range ("+this.index+")",this.stack=new Error().stack}fn.prototype=new RangeError,fn.prototype.constructor=RangeError,fn.prototype.name="IndexError",fn.prototype.isIndexError=!0;function Ae(i){for(var t=[];Array.isArray(i);)t.push(i.length),i=i[0];return t}function Zl(i,t,e){var r,n=i.length;if(n!==t[e])throw new jt(n,t[e]);if(e<t.length-1){var s=e+1;for(r=0;r<n;r++){var a=i[r];if(!Array.isArray(a))throw new jt(t.length-1,t.length,"<");Zl(i[r],t,s)}}else for(r=0;r<n;r++)if(Array.isArray(i[r]))throw new jt(t.length+1,t.length,">")}function jl(i,t){var e=t.length===0;if(e){if(Array.isArray(i))throw new jt(i.length,0)}else Zl(i,t,0)}function ve(i,t){if(i!==void 0){if(!ae(i)||!he(i))throw new TypeError("Index must be an integer (value: "+i+")");if(i<0||typeof t=="number"&&i>=t)throw new fn(i,t)}}function au(i,t,e){if(!Array.isArray(t))throw new TypeError("Array expected");if(t.length===0)throw new Error("Resizing to scalar is not supported");t.forEach(function(n){if(!ae(n)||!he(n)||n<0)throw new TypeError("Invalid size, must contain positive integers (size: "+se(t)+")")}),(ae(i)||ye(i))&&(i=[i]);var r=e!==void 0?e:0;return lu(i,t,0,r),i}function lu(i,t,e,r){var n,s,a=i.length,l=t[e],f=Math.min(a,l);if(i.length=l,e<t.length-1){var h=e+1;for(n=0;n<f;n++)s=i[n],Array.isArray(s)||(s=[s],i[n]=s),lu(s,t,h,r);for(n=f;n<l;n++)s=[],i[n]=s,lu(s,t,h,r)}else{for(n=0;n<f;n++)for(;Array.isArray(i[n]);)i[n]=i[n][0];for(n=f;n<l;n++)i[n]=r}}function fu(i,t){var e=hu(i),r=e.length;if(!Array.isArray(i)||!Array.isArray(t))throw new TypeError("Array expected");if(t.length===0)throw new jt(0,r,"!=");t=cu(t,r);var n=Gl(t);if(r!==n)throw new jt(n,r,"!=");try{return Am(e,t)}catch(s){throw s instanceof jt?new jt(n,r,"!="):s}}function cu(i,t){var e=Gl(i),r=i.slice(),n=-1,s=i.indexOf(n),a=i.indexOf(n,s+1)>=0;if(a)throw new Error("More than one wildcard in sizes");var l=s>=0,f=t%e===0;if(l)if(f)r[s]=-t/e;else throw new Error("Could not replace wildcard, since "+t+" is no multiple of "+-e);return r}function Gl(i){return i.reduce((t,e)=>t*e,1)}function Am(i,t){for(var e=i,r,n=t.length-1;n>0;n--){var s=t[n];r=[];for(var a=e.length/s,l=0;l<a;l++)r.push(e.slice(l*s,(l+1)*s));e=r}return e}function Kl(i,t,e,r){var n=r||Ae(i);if(e)for(var s=0;s<e;s++)i=[i],n.unshift(1);for(i=Jl(i,t,0);n.length<t;)n.push(1);return i}function Jl(i,t,e){var r,n;if(Array.isArray(i)){var s=e+1;for(r=0,n=i.length;r<n;r++)i[r]=Jl(i[r],t,s)}else for(var a=e;a<t;a++)i=[i];return i}function hu(i){if(!Array.isArray(i))return i;var t=[];return i.forEach(function e(r){Array.isArray(r)?r.forEach(e):t.push(r)}),t}function Es(i,t){for(var e,r=0,n=0;n<i.length;n++){var s=i[n],a=Array.isArray(s);if(n===0&&a&&(r=s.length),a&&s.length!==r)return;var l=a?Es(s,t):t(s);if(e===void 0)e=l;else if(e!==l)return"mixed"}return e}function Xl(i,t,e,r){if(r<e){if(i.length!==t.length)throw new jt(i.length,t.length);for(var n=[],s=0;s<i.length;s++)n[s]=Xl(i[s],t[s],e,r+1);return n}else return i.concat(t)}function Hl(){var i=Array.prototype.slice.call(arguments,0,-1),t=Array.prototype.slice.call(arguments,-1);if(i.length===1)return i[0];if(i.length>1)return i.slice(1).reduce(function(e,r){return Xl(e,r,t,0)},i[0]);throw new Error("Wrong number of arguments in function concat")}function xm(){for(var i=arguments.length,t=new Array(i),e=0;e<i;e++)t[e]=arguments[e];for(var r=t.map(d=>d.length),n=Math.max(...r),s=new Array(n).fill(null),a=0;a<t.length;a++)for(var l=t[a],f=r[a],h=0;h<f;h++){var p=n-f+h;l[h]>s[p]&&(s[p]=l[h])}for(var c=0;c<t.length;c++)As(t[c],s);return s}function As(i,t){for(var e=t.length,r=i.length,n=0;n<r;n++){var s=e-r+n;if(i[n]<t[s]&&i[n]>1||i[n]>t[s])throw new Error("shape missmatch: missmatch is found in arg with shape (".concat(i,") not possible to broadcast dimension ").concat(r," with size ").concat(i[n]," to size ").concat(t[s]))}}function Ql(i,t){var e=Ae(i);if(ti(e,t))return i;As(e,t);var r=xm(e,t),n=r.length,s=[...Array(n-e.length).fill(1),...e],a=Fm(i);e.length<n&&(a=fu(a,s),e=Ae(a));for(var l=0;l<n;l++)e[l]<r[l]&&(a=Cm(a,r[l],l),e=Ae(a));return a}function Cm(i,t,e){return Hl(...Array(t).fill(i),e)}function Fm(i){return Ds([],i)}function dt(i,t,e,r){function n(s){var a=cm(s,t.map(Sm));return Mm(i,t,s),e(a)}return n.isFactory=!0,n.fn=i,n.dependencies=t.slice().sort(),r&&(n.meta=r),n}function Mm(i,t,e){var r=t.filter(s=>!Nm(s)).every(s=>e[s]!==void 0);if(!r){var n=t.filter(s=>e[s]===void 0);throw new Error('Cannot create function "'.concat(i,'", ')+"some dependencies are missing: ".concat(n.map(s=>'"'.concat(s,'"')).join(", "),"."))}}function Nm(i){return i&&i[0]==="?"}function Sm(i){return i&&i[0]==="?"?i.slice(1):i}function Bm(i,t){if(tf(i)&&Vl(i,t))return i[t];throw typeof i[t]=="function"&&$m(i,t)?new Error('Cannot access method "'+t+'" as a property'):new Error('No access to property "'+t+'"')}function Im(i,t,e){if(tf(i)&&Vl(i,t))return i[t]=e,e;throw new Error('No access to property "'+t+'"')}function Tm(i,t){return t in i}function Vl(i,t){return!i||typeof i!="object"?!1:Li(Om,t)?!0:!(t in Object.prototype||t in Function.prototype)}function $m(i,t){return i==null||typeof i[t]!="function"||Li(i,t)&&Object.getPrototypeOf&&t in Object.getPrototypeOf(i)?!1:Li(Rm,t)?!0:!(t in Object.prototype||t in Function.prototype)}function tf(i){return typeof i=="object"&&i&&i.constructor===Object}var Om={length:!0,name:!0},Rm={toString:!0,valueOf:!0,toLocaleString:!0};class Lm{constructor(t){this.wrappedObject=t,this[Symbol.iterator]=this.entries}keys(){return Object.keys(this.wrappedObject).values()}get(t){return Bm(this.wrappedObject,t)}set(t,e){return Im(this.wrappedObject,t,e),this}has(t){return Tm(this.wrappedObject,t)}entries(){return Pm(this.keys(),t=>[t,this.get(t)])}forEach(t){for(var e of this.keys())t(this.get(e),e,this)}delete(t){delete this.wrappedObject[t]}clear(){for(var t of this.keys())this.delete(t)}get size(){return Object.keys(this.wrappedObject).length}}function Pm(i,t){return{next:()=>{var e=i.next();return e.done?e:{value:t(e.value),done:!1}}}}function zm(i){return i?i instanceof Map||i instanceof Lm||typeof i.set=="function"&&typeof i.get=="function"&&typeof i.keys=="function"&&typeof i.has=="function":!1}var ef=function(){return ef=Ol.create,Ol},qm=["?BigNumber","?Complex","?DenseMatrix","?Fraction"],Um=dt("typed",qm,function(t){var{BigNumber:e,Complex:r,DenseMatrix:n,Fraction:s}=t,a=ef();return a.clear(),a.addTypes([{name:"number",test:ae},{name:"Complex",test:Ml},{name:"BigNumber",test:ye},{name:"Fraction",test:Nl},{name:"Unit",test:Sl},{name:"identifier",test:l=>qr&&/^(?:[A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE3F\uDE40\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDF02\uDF04-\uDF10\uDF12-\uDF33\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883\uD885-\uD887][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2F\uDC41-\uDC46]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD32\uDD50-\uDD52\uDD55\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E\uDF25-\uDF2A]|\uD838[\uDC30-\uDC6D\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDCD0-\uDCEB\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF39\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A\uDF50-\uDFFF]|\uD888[\uDC00-\uDFAF])(?:[0-9A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE3F\uDE40\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDF02\uDF04-\uDF10\uDF12-\uDF33\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883\uD885-\uD887][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2F\uDC41-\uDC46]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD32\uDD50-\uDD52\uDD55\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E\uDF25-\uDF2A]|\uD838[\uDC30-\uDC6D\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDCD0-\uDCEB\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF39\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A\uDF50-\uDFFF]|\uD888[\uDC00-\uDFAF])*$/.test(l)},{name:"string",test:qr},{name:"Chain",test:lm},{name:"Array",test:ge},{name:"Matrix",test:fe},{name:"DenseMatrix",test:Rp},{name:"SparseMatrix",test:Lp},{name:"Range",test:Pp},{name:"Index",test:nu},{name:"boolean",test:zp},{name:"ResultSet",test:qp},{name:"Help",test:Up},{name:"function",test:kp},{name:"Date",test:Wp},{name:"RegExp",test:Yp},{name:"null",test:Zp},{name:"undefined",test:jp},{name:"AccessorNode",test:Gp},{name:"ArrayNode",test:Kp},{name:"AssignmentNode",test:Jp},{name:"BlockNode",test:Xp},{name:"ConditionalNode",test:Hp},{name:"ConstantNode",test:Qp},{name:"FunctionNode",test:tm},{name:"FunctionAssignmentNode",test:Vp},{name:"IndexNode",test:em},{name:"Node",test:rm},{name:"ObjectNode",test:nm},{name:"OperatorNode",test:im},{name:"ParenthesisNode",test:sm},{name:"RangeNode",test:om},{name:"RelationalNode",test:um},{name:"SymbolNode",test:am},{name:"Map",test:zm},{name:"Object",test:iu}]),a.addConversions([{from:"number",to:"BigNumber",convert:function(f){if(e||pu(f),vm(f)>15)throw new TypeError("Cannot implicitly convert a number with >15 significant digits to BigNumber (value: "+f+"). Use function bignumber(x) to convert to BigNumber.");return new e(f)}},{from:"number",to:"Complex",convert:function(f){return r||xs(f),new r(f,0)}},{from:"BigNumber",to:"Complex",convert:function(f){return r||xs(f),new r(f.toNumber(),0)}},{from:"Fraction",to:"BigNumber",convert:function(f){throw new TypeError("Cannot implicitly convert a Fraction to BigNumber or vice versa. Use function bignumber(x) to convert to BigNumber or fraction(x) to convert to Fraction.")}},{from:"Fraction",to:"Complex",convert:function(f){return r||xs(f),new r(f.valueOf(),0)}},{from:"number",to:"Fraction",convert:function(f){s||mu(f);var h=new s(f);if(h.valueOf()!==f)throw new TypeError("Cannot implicitly convert a number to a Fraction when there will be a loss of precision (value: "+f+"). Use function fraction(x) to convert to Fraction.");return h}},{from:"string",to:"number",convert:function(f){var h=Number(f);if(isNaN(h))throw new Error('Cannot convert "'+f+'" to a number');return h}},{from:"string",to:"BigNumber",convert:function(f){e||pu(f);try{return new e(f)}catch{throw new Error('Cannot convert "'+f+'" to BigNumber')}}},{from:"string",to:"Fraction",convert:function(f){s||mu(f);try{return new s(f)}catch{throw new Error('Cannot convert "'+f+'" to Fraction')}}},{from:"string",to:"Complex",convert:function(f){r||xs(f);try{return new r(f)}catch{throw new Error('Cannot convert "'+f+'" to Complex')}}},{from:"boolean",to:"number",convert:function(f){return+f}},{from:"boolean",to:"BigNumber",convert:function(f){return e||pu(f),new e(+f)}},{from:"boolean",to:"Fraction",convert:function(f){return s||mu(f),new s(+f)}},{from:"boolean",to:"string",convert:function(f){return String(f)}},{from:"Array",to:"Matrix",convert:function(f){return n||km(),new n(f)}},{from:"Matrix",to:"Array",convert:function(f){return f.valueOf()}}]),a.onMismatch=(l,f,h)=>{var p=a.createError(l,f,h);if(["wrongType","mismatch"].includes(p.data.category)&&f.length===1&&Ri(f[0])&&h.some(d=>!d.params.includes(","))){var c=new TypeError("Function '".concat(l,"' doesn't apply to matrices. To call it ")+"elementwise on a matrix 'M', try 'map(M, ".concat(l,")'."));throw c.data=p.data,c}throw p},a.onMismatch=(l,f,h)=>{var p=a.createError(l,f,h);if(["wrongType","mismatch"].includes(p.data.category)&&f.length===1&&Ri(f[0])&&h.some(d=>!d.params.includes(","))){var c=new TypeError("Function '".concat(l,"' doesn't apply to matrices. To call it ")+"elementwise on a matrix 'M', try 'map(M, ".concat(l,")'."));throw c.data=p.data,c}throw p},a});function pu(i){throw new Error("Cannot convert value ".concat(i," into a BigNumber: no class 'BigNumber' provided"))}function xs(i){throw new Error("Cannot convert value ".concat(i," into a Complex number: no class 'Complex' provided"))}function km(){throw new Error("Cannot convert array into a Matrix: no class 'DenseMatrix' provided")}function mu(i){throw new Error("Cannot convert value ".concat(i," into a Fraction, no class 'Fraction' provided."))}/*!
|
35
|
+
* decimal.js v10.4.3
|
36
|
+
* An arbitrary-precision Decimal type for JavaScript.
|
37
|
+
* https://github.com/MikeMcl/decimal.js
|
38
|
+
* Copyright (c) 2022 Michael Mclaughlin <M8ch88l@gmail.com>
|
39
|
+
* MIT Licence
|
40
|
+
*/var ni=9e15,cn=1e9,du="0123456789abcdef",Cs="2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058",Fs="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789",gu={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-ni,maxE:ni,crypto:!1},rf,jr,Nt=!0,Ms="[DecimalError] ",hn=Ms+"Invalid argument: ",nf=Ms+"Precision limit exceeded",sf=Ms+"crypto unavailable",of="[object Decimal]",ze=Math.floor,Fe=Math.pow,Wm=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,Ym=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,Zm=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,uf=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,Nr=1e7,Et=7,jm=9007199254740991,Gm=Cs.length-1,vu=Fs.length-1,it={toStringTag:of};it.absoluteValue=it.abs=function(){var i=new this.constructor(this);return i.s<0&&(i.s=1),Dt(i)},it.ceil=function(){return Dt(new this.constructor(this),this.e+1,2)},it.clampedTo=it.clamp=function(i,t){var e,r=this,n=r.constructor;if(i=new n(i),t=new n(t),!i.s||!t.s)return new n(NaN);if(i.gt(t))throw Error(hn+t);return e=r.cmp(i),e<0?i:r.cmp(t)>0?t:new n(r)},it.comparedTo=it.cmp=function(i){var t,e,r,n,s=this,a=s.d,l=(i=new s.constructor(i)).d,f=s.s,h=i.s;if(!a||!l)return!f||!h?NaN:f!==h?f:a===l?0:!a^f<0?1:-1;if(!a[0]||!l[0])return a[0]?f:l[0]?-h:0;if(f!==h)return f;if(s.e!==i.e)return s.e>i.e^f<0?1:-1;for(r=a.length,n=l.length,t=0,e=r<n?r:n;t<e;++t)if(a[t]!==l[t])return a[t]>l[t]^f<0?1:-1;return r===n?0:r>n^f<0?1:-1},it.cosine=it.cos=function(){var i,t,e=this,r=e.constructor;return e.d?e.d[0]?(i=r.precision,t=r.rounding,r.precision=i+Math.max(e.e,e.sd())+Et,r.rounding=1,e=Km(r,pf(r,e)),r.precision=i,r.rounding=t,Dt(jr==2||jr==3?e.neg():e,i,t,!0)):new r(1):new r(NaN)},it.cubeRoot=it.cbrt=function(){var i,t,e,r,n,s,a,l,f,h,p=this,c=p.constructor;if(!p.isFinite()||p.isZero())return new c(p);for(Nt=!1,s=p.s*Fe(p.s*p,1/3),!s||Math.abs(s)==1/0?(e=Oe(p.d),i=p.e,(s=(i-e.length+1)%3)&&(e+=s==1||s==-2?"0":"00"),s=Fe(e,1/3),i=ze((i+1)/3)-(i%3==(i<0?-1:2)),s==1/0?e="5e"+i:(e=s.toExponential(),e=e.slice(0,e.indexOf("e")+1)+i),r=new c(e),r.s=p.s):r=new c(s.toString()),a=(i=c.precision)+3;;)if(l=r,f=l.times(l).times(l),h=f.plus(p),r=oe(h.plus(p).times(l),h.plus(f),a+2,1),Oe(l.d).slice(0,a)===(e=Oe(r.d)).slice(0,a))if(e=e.slice(a-3,a+1),e=="9999"||!n&&e=="4999"){if(!n&&(Dt(l,i+1,0),l.times(l).times(l).eq(p))){r=l;break}a+=4,n=1}else{(!+e||!+e.slice(1)&&e.charAt(0)=="5")&&(Dt(r,i+1,1),t=!r.times(r).times(r).eq(p));break}return Nt=!0,Dt(r,i,c.rounding,t)},it.decimalPlaces=it.dp=function(){var i,t=this.d,e=NaN;if(t){if(i=t.length-1,e=(i-ze(this.e/Et))*Et,i=t[i],i)for(;i%10==0;i/=10)e--;e<0&&(e=0)}return e},it.dividedBy=it.div=function(i){return oe(this,new this.constructor(i))},it.dividedToIntegerBy=it.divToInt=function(i){var t=this,e=t.constructor;return Dt(oe(t,new e(i),0,1,1),e.precision,e.rounding)},it.equals=it.eq=function(i){return this.cmp(i)===0},it.floor=function(){return Dt(new this.constructor(this),this.e+1,3)},it.greaterThan=it.gt=function(i){return this.cmp(i)>0},it.greaterThanOrEqualTo=it.gte=function(i){var t=this.cmp(i);return t==1||t===0},it.hyperbolicCosine=it.cosh=function(){var i,t,e,r,n,s=this,a=s.constructor,l=new a(1);if(!s.isFinite())return new a(s.s?1/0:NaN);if(s.isZero())return l;e=a.precision,r=a.rounding,a.precision=e+Math.max(s.e,s.sd())+4,a.rounding=1,n=s.d.length,n<32?(i=Math.ceil(n/3),t=(1/Is(4,i)).toString()):(i=16,t="2.3283064365386962890625e-10"),s=ii(a,1,s.times(t),new a(1),!0);for(var f,h=i,p=new a(8);h--;)f=s.times(s),s=l.minus(f.times(p.minus(f.times(p))));return Dt(s,a.precision=e,a.rounding=r,!0)},it.hyperbolicSine=it.sinh=function(){var i,t,e,r,n=this,s=n.constructor;if(!n.isFinite()||n.isZero())return new s(n);if(t=s.precision,e=s.rounding,s.precision=t+Math.max(n.e,n.sd())+4,s.rounding=1,r=n.d.length,r<3)n=ii(s,2,n,n,!0);else{i=1.4*Math.sqrt(r),i=i>16?16:i|0,n=n.times(1/Is(5,i)),n=ii(s,2,n,n,!0);for(var a,l=new s(5),f=new s(16),h=new s(20);i--;)a=n.times(n),n=n.times(l.plus(a.times(f.times(a).plus(h))))}return s.precision=t,s.rounding=e,Dt(n,t,e,!0)},it.hyperbolicTangent=it.tanh=function(){var i,t,e=this,r=e.constructor;return e.isFinite()?e.isZero()?new r(e):(i=r.precision,t=r.rounding,r.precision=i+7,r.rounding=1,oe(e.sinh(),e.cosh(),r.precision=i,r.rounding=t)):new r(e.s)},it.inverseCosine=it.acos=function(){var i,t=this,e=t.constructor,r=t.abs().cmp(1),n=e.precision,s=e.rounding;return r!==-1?r===0?t.isNeg()?Sr(e,n,s):new e(0):new e(NaN):t.isZero()?Sr(e,n+4,s).times(.5):(e.precision=n+6,e.rounding=1,t=t.asin(),i=Sr(e,n+4,s).times(.5),e.precision=n,e.rounding=s,i.minus(t))},it.inverseHyperbolicCosine=it.acosh=function(){var i,t,e=this,r=e.constructor;return e.lte(1)?new r(e.eq(1)?0:NaN):e.isFinite()?(i=r.precision,t=r.rounding,r.precision=i+Math.max(Math.abs(e.e),e.sd())+4,r.rounding=1,Nt=!1,e=e.times(e).minus(1).sqrt().plus(e),Nt=!0,r.precision=i,r.rounding=t,e.ln()):new r(e)},it.inverseHyperbolicSine=it.asinh=function(){var i,t,e=this,r=e.constructor;return!e.isFinite()||e.isZero()?new r(e):(i=r.precision,t=r.rounding,r.precision=i+2*Math.max(Math.abs(e.e),e.sd())+6,r.rounding=1,Nt=!1,e=e.times(e).plus(1).sqrt().plus(e),Nt=!0,r.precision=i,r.rounding=t,e.ln())},it.inverseHyperbolicTangent=it.atanh=function(){var i,t,e,r,n=this,s=n.constructor;return n.isFinite()?n.e>=0?new s(n.abs().eq(1)?n.s/0:n.isZero()?n:NaN):(i=s.precision,t=s.rounding,r=n.sd(),Math.max(r,i)<2*-n.e-1?Dt(new s(n),i,t,!0):(s.precision=e=r-n.e,n=oe(n.plus(1),new s(1).minus(n),e+i,1),s.precision=i+4,s.rounding=1,n=n.ln(),s.precision=i,s.rounding=t,n.times(.5))):new s(NaN)},it.inverseSine=it.asin=function(){var i,t,e,r,n=this,s=n.constructor;return n.isZero()?new s(n):(t=n.abs().cmp(1),e=s.precision,r=s.rounding,t!==-1?t===0?(i=Sr(s,e+4,r).times(.5),i.s=n.s,i):new s(NaN):(s.precision=e+6,s.rounding=1,n=n.div(new s(1).minus(n.times(n)).sqrt().plus(1)).atan(),s.precision=e,s.rounding=r,n.times(2)))},it.inverseTangent=it.atan=function(){var i,t,e,r,n,s,a,l,f,h=this,p=h.constructor,c=p.precision,d=p.rounding;if(h.isFinite()){if(h.isZero())return new p(h);if(h.abs().eq(1)&&c+4<=vu)return a=Sr(p,c+4,d).times(.25),a.s=h.s,a}else{if(!h.s)return new p(NaN);if(c+4<=vu)return a=Sr(p,c+4,d).times(.5),a.s=h.s,a}for(p.precision=l=c+10,p.rounding=1,e=Math.min(28,l/Et+2|0),i=e;i;--i)h=h.div(h.times(h).plus(1).sqrt().plus(1));for(Nt=!1,t=Math.ceil(l/Et),r=1,f=h.times(h),a=new p(h),n=h;i!==-1;)if(n=n.times(f),s=a.minus(n.div(r+=2)),n=n.times(f),a=s.plus(n.div(r+=2)),a.d[t]!==void 0)for(i=t;a.d[i]===s.d[i]&&i--;);return e&&(a=a.times(2<<e-1)),Nt=!0,Dt(a,p.precision=c,p.rounding=d,!0)},it.isFinite=function(){return!!this.d},it.isInteger=it.isInt=function(){return!!this.d&&ze(this.e/Et)>this.d.length-2},it.isNaN=function(){return!this.s},it.isNegative=it.isNeg=function(){return this.s<0},it.isPositive=it.isPos=function(){return this.s>0},it.isZero=function(){return!!this.d&&this.d[0]===0},it.lessThan=it.lt=function(i){return this.cmp(i)<0},it.lessThanOrEqualTo=it.lte=function(i){return this.cmp(i)<1},it.logarithm=it.log=function(i){var t,e,r,n,s,a,l,f,h=this,p=h.constructor,c=p.precision,d=p.rounding,_=5;if(i==null)i=new p(10),t=!0;else{if(i=new p(i),e=i.d,i.s<0||!e||!e[0]||i.eq(1))return new p(NaN);t=i.eq(10)}if(e=h.d,h.s<0||!e||!e[0]||h.eq(1))return new p(e&&!e[0]?-1/0:h.s!=1?NaN:e?0:1/0);if(t)if(e.length>1)s=!0;else{for(n=e[0];n%10===0;)n/=10;s=n!==1}if(Nt=!1,l=c+_,a=mn(h,l),r=t?Bs(p,l+10):mn(i,l),f=oe(a,r,l,1),Pi(f.d,n=c,d))do if(l+=10,a=mn(h,l),r=t?Bs(p,l+10):mn(i,l),f=oe(a,r,l,1),!s){+Oe(f.d).slice(n+1,n+15)+1==1e14&&(f=Dt(f,c+1,0));break}while(Pi(f.d,n+=10,d));return Nt=!0,Dt(f,c,d)},it.minus=it.sub=function(i){var t,e,r,n,s,a,l,f,h,p,c,d,_=this,D=_.constructor;if(i=new D(i),!_.d||!i.d)return!_.s||!i.s?i=new D(NaN):_.d?i.s=-i.s:i=new D(i.d||_.s!==i.s?_:NaN),i;if(_.s!=i.s)return i.s=-i.s,_.plus(i);if(h=_.d,d=i.d,l=D.precision,f=D.rounding,!h[0]||!d[0]){if(d[0])i.s=-i.s;else if(h[0])i=new D(_);else return new D(f===3?-0:0);return Nt?Dt(i,l,f):i}if(e=ze(i.e/Et),p=ze(_.e/Et),h=h.slice(),s=p-e,s){for(c=s<0,c?(t=h,s=-s,a=d.length):(t=d,e=p,a=h.length),r=Math.max(Math.ceil(l/Et),a)+2,s>r&&(s=r,t.length=1),t.reverse(),r=s;r--;)t.push(0);t.reverse()}else{for(r=h.length,a=d.length,c=r<a,c&&(a=r),r=0;r<a;r++)if(h[r]!=d[r]){c=h[r]<d[r];break}s=0}for(c&&(t=h,h=d,d=t,i.s=-i.s),a=h.length,r=d.length-a;r>0;--r)h[a++]=0;for(r=d.length;r>s;){if(h[--r]<d[r]){for(n=r;n&&h[--n]===0;)h[n]=Nr-1;--h[n],h[r]+=Nr}h[r]-=d[r]}for(;h[--a]===0;)h.pop();for(;h[0]===0;h.shift())--e;return h[0]?(i.d=h,i.e=Ss(h,e),Nt?Dt(i,l,f):i):new D(f===3?-0:0)},it.modulo=it.mod=function(i){var t,e=this,r=e.constructor;return i=new r(i),!e.d||!i.s||i.d&&!i.d[0]?new r(NaN):!i.d||e.d&&!e.d[0]?Dt(new r(e),r.precision,r.rounding):(Nt=!1,r.modulo==9?(t=oe(e,i.abs(),0,3,1),t.s*=i.s):t=oe(e,i,0,r.modulo,1),t=t.times(i),Nt=!0,e.minus(t))},it.naturalExponential=it.exp=function(){return _u(this)},it.naturalLogarithm=it.ln=function(){return mn(this)},it.negated=it.neg=function(){var i=new this.constructor(this);return i.s=-i.s,Dt(i)},it.plus=it.add=function(i){var t,e,r,n,s,a,l,f,h,p,c=this,d=c.constructor;if(i=new d(i),!c.d||!i.d)return!c.s||!i.s?i=new d(NaN):c.d||(i=new d(i.d||c.s===i.s?c:NaN)),i;if(c.s!=i.s)return i.s=-i.s,c.minus(i);if(h=c.d,p=i.d,l=d.precision,f=d.rounding,!h[0]||!p[0])return p[0]||(i=new d(c)),Nt?Dt(i,l,f):i;if(s=ze(c.e/Et),r=ze(i.e/Et),h=h.slice(),n=s-r,n){for(n<0?(e=h,n=-n,a=p.length):(e=p,r=s,a=h.length),s=Math.ceil(l/Et),a=s>a?s+1:a+1,n>a&&(n=a,e.length=1),e.reverse();n--;)e.push(0);e.reverse()}for(a=h.length,n=p.length,a-n<0&&(n=a,e=p,p=h,h=e),t=0;n;)t=(h[--n]=h[n]+p[n]+t)/Nr|0,h[n]%=Nr;for(t&&(h.unshift(t),++r),a=h.length;h[--a]==0;)h.pop();return i.d=h,i.e=Ss(h,r),Nt?Dt(i,l,f):i},it.precision=it.sd=function(i){var t,e=this;if(i!==void 0&&i!==!!i&&i!==1&&i!==0)throw Error(hn+i);return e.d?(t=af(e.d),i&&e.e+1>t&&(t=e.e+1)):t=NaN,t},it.round=function(){var i=this,t=i.constructor;return Dt(new t(i),i.e+1,t.rounding)},it.sine=it.sin=function(){var i,t,e=this,r=e.constructor;return e.isFinite()?e.isZero()?new r(e):(i=r.precision,t=r.rounding,r.precision=i+Math.max(e.e,e.sd())+Et,r.rounding=1,e=Xm(r,pf(r,e)),r.precision=i,r.rounding=t,Dt(jr>2?e.neg():e,i,t,!0)):new r(NaN)},it.squareRoot=it.sqrt=function(){var i,t,e,r,n,s,a=this,l=a.d,f=a.e,h=a.s,p=a.constructor;if(h!==1||!l||!l[0])return new p(!h||h<0&&(!l||l[0])?NaN:l?a:1/0);for(Nt=!1,h=Math.sqrt(+a),h==0||h==1/0?(t=Oe(l),(t.length+f)%2==0&&(t+="0"),h=Math.sqrt(t),f=ze((f+1)/2)-(f<0||f%2),h==1/0?t="5e"+f:(t=h.toExponential(),t=t.slice(0,t.indexOf("e")+1)+f),r=new p(t)):r=new p(h.toString()),e=(f=p.precision)+3;;)if(s=r,r=s.plus(oe(a,s,e+2,1)).times(.5),Oe(s.d).slice(0,e)===(t=Oe(r.d)).slice(0,e))if(t=t.slice(e-3,e+1),t=="9999"||!n&&t=="4999"){if(!n&&(Dt(s,f+1,0),s.times(s).eq(a))){r=s;break}e+=4,n=1}else{(!+t||!+t.slice(1)&&t.charAt(0)=="5")&&(Dt(r,f+1,1),i=!r.times(r).eq(a));break}return Nt=!0,Dt(r,f,p.rounding,i)},it.tangent=it.tan=function(){var i,t,e=this,r=e.constructor;return e.isFinite()?e.isZero()?new r(e):(i=r.precision,t=r.rounding,r.precision=i+10,r.rounding=1,e=e.sin(),e.s=1,e=oe(e,new r(1).minus(e.times(e)).sqrt(),i+10,0),r.precision=i,r.rounding=t,Dt(jr==2||jr==4?e.neg():e,i,t,!0)):new r(NaN)},it.times=it.mul=function(i){var t,e,r,n,s,a,l,f,h,p=this,c=p.constructor,d=p.d,_=(i=new c(i)).d;if(i.s*=p.s,!d||!d[0]||!_||!_[0])return new c(!i.s||d&&!d[0]&&!_||_&&!_[0]&&!d?NaN:!d||!_?i.s/0:i.s*0);for(e=ze(p.e/Et)+ze(i.e/Et),f=d.length,h=_.length,f<h&&(s=d,d=_,_=s,a=f,f=h,h=a),s=[],a=f+h,r=a;r--;)s.push(0);for(r=h;--r>=0;){for(t=0,n=f+r;n>r;)l=s[n]+_[r]*d[n-r-1]+t,s[n--]=l%Nr|0,t=l/Nr|0;s[n]=(s[n]+t)%Nr|0}for(;!s[--a];)s.pop();return t?++e:s.shift(),i.d=s,i.e=Ss(s,e),Nt?Dt(i,c.precision,c.rounding):i},it.toBinary=function(i,t){return Du(this,2,i,t)},it.toDecimalPlaces=it.toDP=function(i,t){var e=this,r=e.constructor;return e=new r(e),i===void 0?e:(Ke(i,0,cn),t===void 0?t=r.rounding:Ke(t,0,8),Dt(e,i+e.e+1,t))},it.toExponential=function(i,t){var e,r=this,n=r.constructor;return i===void 0?e=Ur(r,!0):(Ke(i,0,cn),t===void 0?t=n.rounding:Ke(t,0,8),r=Dt(new n(r),i+1,t),e=Ur(r,!0,i+1)),r.isNeg()&&!r.isZero()?"-"+e:e},it.toFixed=function(i,t){var e,r,n=this,s=n.constructor;return i===void 0?e=Ur(n):(Ke(i,0,cn),t===void 0?t=s.rounding:Ke(t,0,8),r=Dt(new s(n),i+n.e+1,t),e=Ur(r,!1,i+r.e+1)),n.isNeg()&&!n.isZero()?"-"+e:e},it.toFraction=function(i){var t,e,r,n,s,a,l,f,h,p,c,d,_=this,D=_.d,g=_.constructor;if(!D)return new g(_);if(h=e=new g(1),r=f=new g(0),t=new g(r),s=t.e=af(D)-_.e-1,a=s%Et,t.d[0]=Fe(10,a<0?Et+a:a),i==null)i=s>0?t:h;else{if(l=new g(i),!l.isInt()||l.lt(h))throw Error(hn+l);i=l.gt(t)?s>0?t:h:l}for(Nt=!1,l=new g(Oe(D)),p=g.precision,g.precision=s=D.length*Et*2;c=oe(l,t,0,1,1),n=e.plus(c.times(r)),n.cmp(i)!=1;)e=r,r=n,n=h,h=f.plus(c.times(n)),f=n,n=t,t=l.minus(c.times(n)),l=n;return n=oe(i.minus(e),r,0,1,1),f=f.plus(n.times(h)),e=e.plus(n.times(r)),f.s=h.s=_.s,d=oe(h,r,s,1).minus(_).abs().cmp(oe(f,e,s,1).minus(_).abs())<1?[h,r]:[f,e],g.precision=p,Nt=!0,d},it.toHexadecimal=it.toHex=function(i,t){return Du(this,16,i,t)},it.toNearest=function(i,t){var e=this,r=e.constructor;if(e=new r(e),i==null){if(!e.d)return e;i=new r(1),t=r.rounding}else{if(i=new r(i),t===void 0?t=r.rounding:Ke(t,0,8),!e.d)return i.s?e:i;if(!i.d)return i.s&&(i.s=e.s),i}return i.d[0]?(Nt=!1,e=oe(e,i,0,t,1).times(i),Nt=!0,Dt(e)):(i.s=e.s,e=i),e},it.toNumber=function(){return+this},it.toOctal=function(i,t){return Du(this,8,i,t)},it.toPower=it.pow=function(i){var t,e,r,n,s,a,l=this,f=l.constructor,h=+(i=new f(i));if(!l.d||!i.d||!l.d[0]||!i.d[0])return new f(Fe(+l,h));if(l=new f(l),l.eq(1))return l;if(r=f.precision,s=f.rounding,i.eq(1))return Dt(l,r,s);if(t=ze(i.e/Et),t>=i.d.length-1&&(e=h<0?-h:h)<=jm)return n=lf(f,l,e,r),i.s<0?new f(1).div(n):Dt(n,r,s);if(a=l.s,a<0){if(t<i.d.length-1)return new f(NaN);if(i.d[t]&1||(a=1),l.e==0&&l.d[0]==1&&l.d.length==1)return l.s=a,l}return e=Fe(+l,h),t=e==0||!isFinite(e)?ze(h*(Math.log("0."+Oe(l.d))/Math.LN10+l.e+1)):new f(e+"").e,t>f.maxE+1||t<f.minE-1?new f(t>0?a/0:0):(Nt=!1,f.rounding=l.s=1,e=Math.min(12,(t+"").length),n=_u(i.times(mn(l,r+e)),r),n.d&&(n=Dt(n,r+5,1),Pi(n.d,r,s)&&(t=r+10,n=Dt(_u(i.times(mn(l,t+e)),t),t+5,1),+Oe(n.d).slice(r+1,r+15)+1==1e14&&(n=Dt(n,r+1,0)))),n.s=a,Nt=!0,f.rounding=s,Dt(n,r,s))},it.toPrecision=function(i,t){var e,r=this,n=r.constructor;return i===void 0?e=Ur(r,r.e<=n.toExpNeg||r.e>=n.toExpPos):(Ke(i,1,cn),t===void 0?t=n.rounding:Ke(t,0,8),r=Dt(new n(r),i,t),e=Ur(r,i<=r.e||r.e<=n.toExpNeg,i)),r.isNeg()&&!r.isZero()?"-"+e:e},it.toSignificantDigits=it.toSD=function(i,t){var e=this,r=e.constructor;return i===void 0?(i=r.precision,t=r.rounding):(Ke(i,1,cn),t===void 0?t=r.rounding:Ke(t,0,8)),Dt(new r(e),i,t)},it.toString=function(){var i=this,t=i.constructor,e=Ur(i,i.e<=t.toExpNeg||i.e>=t.toExpPos);return i.isNeg()&&!i.isZero()?"-"+e:e},it.truncated=it.trunc=function(){return Dt(new this.constructor(this),this.e+1,1)},it.valueOf=it.toJSON=function(){var i=this,t=i.constructor,e=Ur(i,i.e<=t.toExpNeg||i.e>=t.toExpPos);return i.isNeg()?"-"+e:e};function Oe(i){var t,e,r,n=i.length-1,s="",a=i[0];if(n>0){for(s+=a,t=1;t<n;t++)r=i[t]+"",e=Et-r.length,e&&(s+=pn(e)),s+=r;a=i[t],r=a+"",e=Et-r.length,e&&(s+=pn(e))}else if(a===0)return"0";for(;a%10===0;)a/=10;return s+a}function Ke(i,t,e){if(i!==~~i||i<t||i>e)throw Error(hn+i)}function Pi(i,t,e,r){var n,s,a,l;for(s=i[0];s>=10;s/=10)--t;return--t<0?(t+=Et,n=0):(n=Math.ceil((t+1)/Et),t%=Et),s=Fe(10,Et-t),l=i[n]%s|0,r==null?t<3?(t==0?l=l/100|0:t==1&&(l=l/10|0),a=e<4&&l==99999||e>3&&l==49999||l==5e4||l==0):a=(e<4&&l+1==s||e>3&&l+1==s/2)&&(i[n+1]/s/100|0)==Fe(10,t-2)-1||(l==s/2||l==0)&&(i[n+1]/s/100|0)==0:t<4?(t==0?l=l/1e3|0:t==1?l=l/100|0:t==2&&(l=l/10|0),a=(r||e<4)&&l==9999||!r&&e>3&&l==4999):a=((r||e<4)&&l+1==s||!r&&e>3&&l+1==s/2)&&(i[n+1]/s/1e3|0)==Fe(10,t-3)-1,a}function Ns(i,t,e){for(var r,n=[0],s,a=0,l=i.length;a<l;){for(s=n.length;s--;)n[s]*=t;for(n[0]+=du.indexOf(i.charAt(a++)),r=0;r<n.length;r++)n[r]>e-1&&(n[r+1]===void 0&&(n[r+1]=0),n[r+1]+=n[r]/e|0,n[r]%=e)}return n.reverse()}function Km(i,t){var e,r,n;if(t.isZero())return t;r=t.d.length,r<32?(e=Math.ceil(r/3),n=(1/Is(4,e)).toString()):(e=16,n="2.3283064365386962890625e-10"),i.precision+=e,t=ii(i,1,t.times(n),new i(1));for(var s=e;s--;){var a=t.times(t);t=a.times(a).minus(a).times(8).plus(1)}return i.precision-=e,t}var oe=function(){function i(r,n,s){var a,l=0,f=r.length;for(r=r.slice();f--;)a=r[f]*n+l,r[f]=a%s|0,l=a/s|0;return l&&r.unshift(l),r}function t(r,n,s,a){var l,f;if(s!=a)f=s>a?1:-1;else for(l=f=0;l<s;l++)if(r[l]!=n[l]){f=r[l]>n[l]?1:-1;break}return f}function e(r,n,s,a){for(var l=0;s--;)r[s]-=l,l=r[s]<n[s]?1:0,r[s]=l*a+r[s]-n[s];for(;!r[0]&&r.length>1;)r.shift()}return function(r,n,s,a,l,f){var h,p,c,d,_,D,g,y,v,E,b,N,x,F,M,S,$,C,I,R,U=r.constructor,q=r.s==n.s?1:-1,k=r.d,P=n.d;if(!k||!k[0]||!P||!P[0])return new U(!r.s||!n.s||(k?P&&k[0]==P[0]:!P)?NaN:k&&k[0]==0||!P?q*0:q/0);for(f?(_=1,p=r.e-n.e):(f=Nr,_=Et,p=ze(r.e/_)-ze(n.e/_)),I=P.length,$=k.length,v=new U(q),E=v.d=[],c=0;P[c]==(k[c]||0);c++);if(P[c]>(k[c]||0)&&p--,s==null?(F=s=U.precision,a=U.rounding):l?F=s+(r.e-n.e)+1:F=s,F<0)E.push(1),D=!0;else{if(F=F/_+2|0,c=0,I==1){for(d=0,P=P[0],F++;(c<$||d)&&F--;c++)M=d*f+(k[c]||0),E[c]=M/P|0,d=M%P|0;D=d||c<$}else{for(d=f/(P[0]+1)|0,d>1&&(P=i(P,d,f),k=i(k,d,f),I=P.length,$=k.length),S=I,b=k.slice(0,I),N=b.length;N<I;)b[N++]=0;R=P.slice(),R.unshift(0),C=P[0],P[1]>=f/2&&++C;do d=0,h=t(P,b,I,N),h<0?(x=b[0],I!=N&&(x=x*f+(b[1]||0)),d=x/C|0,d>1?(d>=f&&(d=f-1),g=i(P,d,f),y=g.length,N=b.length,h=t(g,b,y,N),h==1&&(d--,e(g,I<y?R:P,y,f))):(d==0&&(h=d=1),g=P.slice()),y=g.length,y<N&&g.unshift(0),e(b,g,N,f),h==-1&&(N=b.length,h=t(P,b,I,N),h<1&&(d++,e(b,I<N?R:P,N,f))),N=b.length):h===0&&(d++,b=[0]),E[c++]=d,h&&b[0]?b[N++]=k[S]||0:(b=[k[S]],N=1);while((S++<$||b[0]!==void 0)&&F--);D=b[0]!==void 0}E[0]||E.shift()}if(_==1)v.e=p,rf=D;else{for(c=1,d=E[0];d>=10;d/=10)c++;v.e=c+p*_-1,Dt(v,l?s+v.e+1:s,a,D)}return v}}();function Dt(i,t,e,r){var n,s,a,l,f,h,p,c,d,_=i.constructor;t:if(t!=null){if(c=i.d,!c)return i;for(n=1,l=c[0];l>=10;l/=10)n++;if(s=t-n,s<0)s+=Et,a=t,p=c[d=0],f=p/Fe(10,n-a-1)%10|0;else if(d=Math.ceil((s+1)/Et),l=c.length,d>=l)if(r){for(;l++<=d;)c.push(0);p=f=0,n=1,s%=Et,a=s-Et+1}else break t;else{for(p=l=c[d],n=1;l>=10;l/=10)n++;s%=Et,a=s-Et+n,f=a<0?0:p/Fe(10,n-a-1)%10|0}if(r=r||t<0||c[d+1]!==void 0||(a<0?p:p%Fe(10,n-a-1)),h=e<4?(f||r)&&(e==0||e==(i.s<0?3:2)):f>5||f==5&&(e==4||r||e==6&&(s>0?a>0?p/Fe(10,n-a):0:c[d-1])%10&1||e==(i.s<0?8:7)),t<1||!c[0])return c.length=0,h?(t-=i.e+1,c[0]=Fe(10,(Et-t%Et)%Et),i.e=-t||0):c[0]=i.e=0,i;if(s==0?(c.length=d,l=1,d--):(c.length=d+1,l=Fe(10,Et-s),c[d]=a>0?(p/Fe(10,n-a)%Fe(10,a)|0)*l:0),h)for(;;)if(d==0){for(s=1,a=c[0];a>=10;a/=10)s++;for(a=c[0]+=l,l=1;a>=10;a/=10)l++;s!=l&&(i.e++,c[0]==Nr&&(c[0]=1));break}else{if(c[d]+=l,c[d]!=Nr)break;c[d--]=0,l=1}for(s=c.length;c[--s]===0;)c.pop()}return Nt&&(i.e>_.maxE?(i.d=null,i.e=NaN):i.e<_.minE&&(i.e=0,i.d=[0])),i}function Ur(i,t,e){if(!i.isFinite())return hf(i);var r,n=i.e,s=Oe(i.d),a=s.length;return t?(e&&(r=e-a)>0?s=s.charAt(0)+"."+s.slice(1)+pn(r):a>1&&(s=s.charAt(0)+"."+s.slice(1)),s=s+(i.e<0?"e":"e+")+i.e):n<0?(s="0."+pn(-n-1)+s,e&&(r=e-a)>0&&(s+=pn(r))):n>=a?(s+=pn(n+1-a),e&&(r=e-n-1)>0&&(s=s+"."+pn(r))):((r=n+1)<a&&(s=s.slice(0,r)+"."+s.slice(r)),e&&(r=e-a)>0&&(n+1===a&&(s+="."),s+=pn(r))),s}function Ss(i,t){var e=i[0];for(t*=Et;e>=10;e/=10)t++;return t}function Bs(i,t,e){if(t>Gm)throw Nt=!0,e&&(i.precision=e),Error(nf);return Dt(new i(Cs),t,1,!0)}function Sr(i,t,e){if(t>vu)throw Error(nf);return Dt(new i(Fs),t,e,!0)}function af(i){var t=i.length-1,e=t*Et+1;if(t=i[t],t){for(;t%10==0;t/=10)e--;for(t=i[0];t>=10;t/=10)e++}return e}function pn(i){for(var t="";i--;)t+="0";return t}function lf(i,t,e,r){var n,s=new i(1),a=Math.ceil(r/Et+4);for(Nt=!1;;){if(e%2&&(s=s.times(t),mf(s.d,a)&&(n=!0)),e=ze(e/2),e===0){e=s.d.length-1,n&&s.d[e]===0&&++s.d[e];break}t=t.times(t),mf(t.d,a)}return Nt=!0,s}function ff(i){return i.d[i.d.length-1]&1}function cf(i,t,e){for(var r,n=new i(t[0]),s=0;++s<t.length;)if(r=new i(t[s]),r.s)n[e](r)&&(n=r);else{n=r;break}return n}function _u(i,t){var e,r,n,s,a,l,f,h=0,p=0,c=0,d=i.constructor,_=d.rounding,D=d.precision;if(!i.d||!i.d[0]||i.e>17)return new d(i.d?i.d[0]?i.s<0?0:1/0:1:i.s?i.s<0?0:i:NaN);for(t==null?(Nt=!1,f=D):f=t,l=new d(.03125);i.e>-2;)i=i.times(l),c+=5;for(r=Math.log(Fe(2,c))/Math.LN10*2+5|0,f+=r,e=s=a=new d(1),d.precision=f;;){if(s=Dt(s.times(i),f,1),e=e.times(++p),l=a.plus(oe(s,e,f,1)),Oe(l.d).slice(0,f)===Oe(a.d).slice(0,f)){for(n=c;n--;)a=Dt(a.times(a),f,1);if(t==null)if(h<3&&Pi(a.d,f-r,_,h))d.precision=f+=10,e=s=l=new d(1),p=0,h++;else return Dt(a,d.precision=D,_,Nt=!0);else return d.precision=D,a}a=l}}function mn(i,t){var e,r,n,s,a,l,f,h,p,c,d,_=1,D=10,g=i,y=g.d,v=g.constructor,E=v.rounding,b=v.precision;if(g.s<0||!y||!y[0]||!g.e&&y[0]==1&&y.length==1)return new v(y&&!y[0]?-1/0:g.s!=1?NaN:y?0:g);if(t==null?(Nt=!1,p=b):p=t,v.precision=p+=D,e=Oe(y),r=e.charAt(0),Math.abs(s=g.e)<15e14){for(;r<7&&r!=1||r==1&&e.charAt(1)>3;)g=g.times(i),e=Oe(g.d),r=e.charAt(0),_++;s=g.e,r>1?(g=new v("0."+e),s++):g=new v(r+"."+e.slice(1))}else return h=Bs(v,p+2,b).times(s+""),g=mn(new v(r+"."+e.slice(1)),p-D).plus(h),v.precision=b,t==null?Dt(g,b,E,Nt=!0):g;for(c=g,f=a=g=oe(g.minus(1),g.plus(1),p,1),d=Dt(g.times(g),p,1),n=3;;){if(a=Dt(a.times(d),p,1),h=f.plus(oe(a,new v(n),p,1)),Oe(h.d).slice(0,p)===Oe(f.d).slice(0,p))if(f=f.times(2),s!==0&&(f=f.plus(Bs(v,p+2,b).times(s+""))),f=oe(f,new v(_),p,1),t==null)if(Pi(f.d,p-D,E,l))v.precision=p+=D,h=a=g=oe(c.minus(1),c.plus(1),p,1),d=Dt(g.times(g),p,1),n=l=1;else return Dt(f,v.precision=b,E,Nt=!0);else return v.precision=b,f;f=h,n+=2}}function hf(i){return String(i.s*i.s/0)}function wu(i,t){var e,r,n;for((e=t.indexOf("."))>-1&&(t=t.replace(".","")),(r=t.search(/e/i))>0?(e<0&&(e=r),e+=+t.slice(r+1),t=t.substring(0,r)):e<0&&(e=t.length),r=0;t.charCodeAt(r)===48;r++);for(n=t.length;t.charCodeAt(n-1)===48;--n);if(t=t.slice(r,n),t){if(n-=r,i.e=e=e-r-1,i.d=[],r=(e+1)%Et,e<0&&(r+=Et),r<n){for(r&&i.d.push(+t.slice(0,r)),n-=Et;r<n;)i.d.push(+t.slice(r,r+=Et));t=t.slice(r),r=Et-t.length}else r-=n;for(;r--;)t+="0";i.d.push(+t),Nt&&(i.e>i.constructor.maxE?(i.d=null,i.e=NaN):i.e<i.constructor.minE&&(i.e=0,i.d=[0]))}else i.e=0,i.d=[0];return i}function Jm(i,t){var e,r,n,s,a,l,f,h,p;if(t.indexOf("_")>-1){if(t=t.replace(/(\d)_(?=\d)/g,"$1"),uf.test(t))return wu(i,t)}else if(t==="Infinity"||t==="NaN")return+t||(i.s=NaN),i.e=NaN,i.d=null,i;if(Ym.test(t))e=16,t=t.toLowerCase();else if(Wm.test(t))e=2;else if(Zm.test(t))e=8;else throw Error(hn+t);for(s=t.search(/p/i),s>0?(f=+t.slice(s+1),t=t.substring(2,s)):t=t.slice(2),s=t.indexOf("."),a=s>=0,r=i.constructor,a&&(t=t.replace(".",""),l=t.length,s=l-s,n=lf(r,new r(e),s,s*2)),h=Ns(t,e,Nr),p=h.length-1,s=p;h[s]===0;--s)h.pop();return s<0?new r(i.s*0):(i.e=Ss(h,p),i.d=h,Nt=!1,a&&(i=oe(i,n,l*4)),f&&(i=i.times(Math.abs(f)<54?Fe(2,f):si.pow(2,f))),Nt=!0,i)}function Xm(i,t){var e,r=t.d.length;if(r<3)return t.isZero()?t:ii(i,2,t,t);e=1.4*Math.sqrt(r),e=e>16?16:e|0,t=t.times(1/Is(5,e)),t=ii(i,2,t,t);for(var n,s=new i(5),a=new i(16),l=new i(20);e--;)n=t.times(t),t=t.times(s.plus(n.times(a.times(n).minus(l))));return t}function ii(i,t,e,r,n){var s,a,l,f,h=i.precision,p=Math.ceil(h/Et);for(Nt=!1,f=e.times(e),l=new i(r);;){if(a=oe(l.times(f),new i(t++*t++),h,1),l=n?r.plus(a):r.minus(a),r=oe(a.times(f),new i(t++*t++),h,1),a=l.plus(r),a.d[p]!==void 0){for(s=p;a.d[s]===l.d[s]&&s--;);if(s==-1)break}s=l,l=r,r=a,a=s}return Nt=!0,a.d.length=p+1,a}function Is(i,t){for(var e=i;--t;)e*=i;return e}function pf(i,t){var e,r=t.s<0,n=Sr(i,i.precision,1),s=n.times(.5);if(t=t.abs(),t.lte(s))return jr=r?4:1,t;if(e=t.divToInt(n),e.isZero())jr=r?3:2;else{if(t=t.minus(e.times(n)),t.lte(s))return jr=ff(e)?r?2:3:r?4:1,t;jr=ff(e)?r?1:4:r?3:2}return t.minus(n).abs()}function Du(i,t,e,r){var n,s,a,l,f,h,p,c,d,_=i.constructor,D=e!==void 0;if(D?(Ke(e,1,cn),r===void 0?r=_.rounding:Ke(r,0,8)):(e=_.precision,r=_.rounding),!i.isFinite())p=hf(i);else{for(p=Ur(i),a=p.indexOf("."),D?(n=2,t==16?e=e*4-3:t==8&&(e=e*3-2)):n=t,a>=0&&(p=p.replace(".",""),d=new _(1),d.e=p.length-a,d.d=Ns(Ur(d),10,n),d.e=d.d.length),c=Ns(p,10,n),s=f=c.length;c[--f]==0;)c.pop();if(!c[0])p=D?"0p+0":"0";else{if(a<0?s--:(i=new _(i),i.d=c,i.e=s,i=oe(i,d,e,r,0,n),c=i.d,s=i.e,h=rf),a=c[e],l=n/2,h=h||c[e+1]!==void 0,h=r<4?(a!==void 0||h)&&(r===0||r===(i.s<0?3:2)):a>l||a===l&&(r===4||h||r===6&&c[e-1]&1||r===(i.s<0?8:7)),c.length=e,h)for(;++c[--e]>n-1;)c[e]=0,e||(++s,c.unshift(1));for(f=c.length;!c[f-1];--f);for(a=0,p="";a<f;a++)p+=du.charAt(c[a]);if(D){if(f>1)if(t==16||t==8){for(a=t==16?4:3,--f;f%a;f++)p+="0";for(c=Ns(p,n,t),f=c.length;!c[f-1];--f);for(a=1,p="1.";a<f;a++)p+=du.charAt(c[a])}else p=p.charAt(0)+"."+p.slice(1);p=p+(s<0?"p":"p+")+s}else if(s<0){for(;++s;)p="0"+p;p="0."+p}else if(++s>f)for(s-=f;s--;)p+="0";else s<f&&(p=p.slice(0,s)+"."+p.slice(s))}p=(t==16?"0x":t==2?"0b":t==8?"0o":"")+p}return i.s<0?"-"+p:p}function mf(i,t){if(i.length>t)return i.length=t,!0}function Hm(i){return new this(i).abs()}function Qm(i){return new this(i).acos()}function Vm(i){return new this(i).acosh()}function td(i,t){return new this(i).plus(t)}function ed(i){return new this(i).asin()}function rd(i){return new this(i).asinh()}function nd(i){return new this(i).atan()}function id(i){return new this(i).atanh()}function sd(i,t){i=new this(i),t=new this(t);var e,r=this.precision,n=this.rounding,s=r+4;return!i.s||!t.s?e=new this(NaN):!i.d&&!t.d?(e=Sr(this,s,1).times(t.s>0?.25:.75),e.s=i.s):!t.d||i.isZero()?(e=t.s<0?Sr(this,r,n):new this(0),e.s=i.s):!i.d||t.isZero()?(e=Sr(this,s,1).times(.5),e.s=i.s):t.s<0?(this.precision=s,this.rounding=1,e=this.atan(oe(i,t,s,1)),t=Sr(this,s,1),this.precision=r,this.rounding=n,e=i.s<0?e.minus(t):e.plus(t)):e=this.atan(oe(i,t,s,1)),e}function od(i){return new this(i).cbrt()}function ud(i){return Dt(i=new this(i),i.e+1,2)}function ad(i,t,e){return new this(i).clamp(t,e)}function ld(i){if(!i||typeof i!="object")throw Error(Ms+"Object expected");var t,e,r,n=i.defaults===!0,s=["precision",1,cn,"rounding",0,8,"toExpNeg",-ni,0,"toExpPos",0,ni,"maxE",0,ni,"minE",-ni,0,"modulo",0,9];for(t=0;t<s.length;t+=3)if(e=s[t],n&&(this[e]=gu[e]),(r=i[e])!==void 0)if(ze(r)===r&&r>=s[t+1]&&r<=s[t+2])this[e]=r;else throw Error(hn+e+": "+r);if(e="crypto",n&&(this[e]=gu[e]),(r=i[e])!==void 0)if(r===!0||r===!1||r===0||r===1)if(r)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[e]=!0;else throw Error(sf);else this[e]=!1;else throw Error(hn+e+": "+r);return this}function fd(i){return new this(i).cos()}function cd(i){return new this(i).cosh()}function df(i){var t,e,r;function n(s){var a,l,f,h=this;if(!(h instanceof n))return new n(s);if(h.constructor=n,gf(s)){h.s=s.s,Nt?!s.d||s.e>n.maxE?(h.e=NaN,h.d=null):s.e<n.minE?(h.e=0,h.d=[0]):(h.e=s.e,h.d=s.d.slice()):(h.e=s.e,h.d=s.d?s.d.slice():s.d);return}if(f=typeof s,f==="number"){if(s===0){h.s=1/s<0?-1:1,h.e=0,h.d=[0];return}if(s<0?(s=-s,h.s=-1):h.s=1,s===~~s&&s<1e7){for(a=0,l=s;l>=10;l/=10)a++;Nt?a>n.maxE?(h.e=NaN,h.d=null):a<n.minE?(h.e=0,h.d=[0]):(h.e=a,h.d=[s]):(h.e=a,h.d=[s]);return}else if(s*0!==0){s||(h.s=NaN),h.e=NaN,h.d=null;return}return wu(h,s.toString())}else if(f!=="string")throw Error(hn+s);return(l=s.charCodeAt(0))===45?(s=s.slice(1),h.s=-1):(l===43&&(s=s.slice(1)),h.s=1),uf.test(s)?wu(h,s):Jm(h,s)}if(n.prototype=it,n.ROUND_UP=0,n.ROUND_DOWN=1,n.ROUND_CEIL=2,n.ROUND_FLOOR=3,n.ROUND_HALF_UP=4,n.ROUND_HALF_DOWN=5,n.ROUND_HALF_EVEN=6,n.ROUND_HALF_CEIL=7,n.ROUND_HALF_FLOOR=8,n.EUCLID=9,n.config=n.set=ld,n.clone=df,n.isDecimal=gf,n.abs=Hm,n.acos=Qm,n.acosh=Vm,n.add=td,n.asin=ed,n.asinh=rd,n.atan=nd,n.atanh=id,n.atan2=sd,n.cbrt=od,n.ceil=ud,n.clamp=ad,n.cos=fd,n.cosh=cd,n.div=hd,n.exp=pd,n.floor=md,n.hypot=dd,n.ln=gd,n.log=vd,n.log10=wd,n.log2=_d,n.max=Dd,n.min=yd,n.mod=bd,n.mul=Ed,n.pow=Ad,n.random=xd,n.round=Cd,n.sign=Fd,n.sin=Md,n.sinh=Nd,n.sqrt=Sd,n.sub=Bd,n.sum=Id,n.tan=Td,n.tanh=$d,n.trunc=Od,i===void 0&&(i={}),i&&i.defaults!==!0)for(r=["precision","rounding","toExpNeg","toExpPos","maxE","minE","modulo","crypto"],t=0;t<r.length;)i.hasOwnProperty(e=r[t++])||(i[e]=this[e]);return n.config(i),n}function hd(i,t){return new this(i).div(t)}function pd(i){return new this(i).exp()}function md(i){return Dt(i=new this(i),i.e+1,3)}function dd(){var i,t,e=new this(0);for(Nt=!1,i=0;i<arguments.length;)if(t=new this(arguments[i++]),t.d)e.d&&(e=e.plus(t.times(t)));else{if(t.s)return Nt=!0,new this(1/0);e=t}return Nt=!0,e.sqrt()}function gf(i){return i instanceof si||i&&i.toStringTag===of||!1}function gd(i){return new this(i).ln()}function vd(i,t){return new this(i).log(t)}function _d(i){return new this(i).log(2)}function wd(i){return new this(i).log(10)}function Dd(){return cf(this,arguments,"lt")}function yd(){return cf(this,arguments,"gt")}function bd(i,t){return new this(i).mod(t)}function Ed(i,t){return new this(i).mul(t)}function Ad(i,t){return new this(i).pow(t)}function xd(i){var t,e,r,n,s=0,a=new this(1),l=[];if(i===void 0?i=this.precision:Ke(i,1,cn),r=Math.ceil(i/Et),this.crypto)if(crypto.getRandomValues)for(t=crypto.getRandomValues(new Uint32Array(r));s<r;)n=t[s],n>=429e7?t[s]=crypto.getRandomValues(new Uint32Array(1))[0]:l[s++]=n%1e7;else if(crypto.randomBytes){for(t=crypto.randomBytes(r*=4);s<r;)n=t[s]+(t[s+1]<<8)+(t[s+2]<<16)+((t[s+3]&127)<<24),n>=214e7?crypto.randomBytes(4).copy(t,s):(l.push(n%1e7),s+=4);s=r/4}else throw Error(sf);else for(;s<r;)l[s++]=Math.random()*1e7|0;for(r=l[--s],i%=Et,r&&i&&(n=Fe(10,Et-i),l[s]=(r/n|0)*n);l[s]===0;s--)l.pop();if(s<0)e=0,l=[0];else{for(e=-1;l[0]===0;e-=Et)l.shift();for(r=1,n=l[0];n>=10;n/=10)r++;r<Et&&(e-=Et-r)}return a.e=e,a.d=l,a}function Cd(i){return Dt(i=new this(i),i.e+1,this.rounding)}function Fd(i){return i=new this(i),i.d?i.d[0]?i.s:0*i.s:i.s||NaN}function Md(i){return new this(i).sin()}function Nd(i){return new this(i).sinh()}function Sd(i){return new this(i).sqrt()}function Bd(i,t){return new this(i).sub(t)}function Id(){var i=0,t=arguments,e=new this(t[i]);for(Nt=!1;e.s&&++i<t.length;)e=e.plus(t[i]);return Nt=!0,Dt(e,this.precision,this.rounding)}function Td(i){return new this(i).tan()}function $d(i){return new this(i).tanh()}function Od(i){return Dt(i=new this(i),i.e+1,1)}it[Symbol.for("nodejs.util.inspect.custom")]=it.toString,it[Symbol.toStringTag]="Decimal";var si=it.constructor=df(gu);Cs=new si(Cs),Fs=new si(Fs);var Rd="BigNumber",Ld=["?on","config"],Pd=dt(Rd,Ld,i=>{var{on:t,config:e}=i,r=si.clone({precision:e.precision,modulo:si.EUCLID});return r.prototype=Object.create(r.prototype),r.prototype.type="BigNumber",r.prototype.isBigNumber=!0,r.prototype.toJSON=function(){return{mathjs:"BigNumber",value:this.toString()}},r.fromJSON=function(n){return new r(n.value)},t&&t("config",function(n,s){n.precision!==s.precision&&r.config({precision:n.precision})}),r},{isClass:!0}),vf={exports:{}};/**
|
41
|
+
* @license Complex.js v2.1.1 12/05/2020
|
42
|
+
*
|
43
|
+
* Copyright (c) 2020, Robert Eisele (robert@xarg.org)
|
44
|
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
45
|
+
**/(function(i,t){(function(e){var r=Math.cosh||function(c){return Math.abs(c)<1e-9?1-c:(Math.exp(c)+Math.exp(-c))*.5},n=Math.sinh||function(c){return Math.abs(c)<1e-9?c:(Math.exp(c)-Math.exp(-c))*.5},s=function(c){var d=Math.PI/4;if(-d>c||c>d)return Math.cos(c)-1;var _=c*c;return _*(_*(_*(_*(_*(_*(_*(_/20922789888e3-1/87178291200)+1/479001600)-1/3628800)+1/40320)-1/720)+1/24)-1/2)},a=function(c,d){var _=Math.abs(c),D=Math.abs(d);return _<3e3&&D<3e3?Math.sqrt(_*_+D*D):(_<D?(_=D,D=c/d):D=d/c,_*Math.sqrt(1+D*D))},l=function(){throw SyntaxError("Invalid Param")};function f(c,d){var _=Math.abs(c),D=Math.abs(d);return c===0?Math.log(D):d===0?Math.log(_):_<3e3&&D<3e3?Math.log(c*c+d*d)*.5:(c=c/2,d=d/2,.5*Math.log(c*c+d*d)+Math.LN2)}var h=function(c,d){var _={re:0,im:0};if(c==null)_.re=_.im=0;else if(d!==void 0)_.re=c,_.im=d;else switch(typeof c){case"object":if("im"in c&&"re"in c)_.re=c.re,_.im=c.im;else if("abs"in c&&"arg"in c){if(!Number.isFinite(c.abs)&&Number.isFinite(c.arg))return p.INFINITY;_.re=c.abs*Math.cos(c.arg),_.im=c.abs*Math.sin(c.arg)}else if("r"in c&&"phi"in c){if(!Number.isFinite(c.r)&&Number.isFinite(c.phi))return p.INFINITY;_.re=c.r*Math.cos(c.phi),_.im=c.r*Math.sin(c.phi)}else c.length===2?(_.re=c[0],_.im=c[1]):l();break;case"string":_.im=_.re=0;var D=c.match(/\d+\.?\d*e[+-]?\d+|\d+\.?\d*|\.\d+|./g),g=1,y=0;D===null&&l();for(var v=0;v<D.length;v++){var E=D[v];E===" "||E===" "||E===`
|
46
|
+
`||(E==="+"?g++:E==="-"?y++:E==="i"||E==="I"?(g+y===0&&l(),D[v+1]!==" "&&!isNaN(D[v+1])?(_.im+=parseFloat((y%2?"-":"")+D[v+1]),v++):_.im+=parseFloat((y%2?"-":"")+"1"),g=y=0):((g+y===0||isNaN(E))&&l(),D[v+1]==="i"||D[v+1]==="I"?(_.im+=parseFloat((y%2?"-":"")+E),v++):_.re+=parseFloat((y%2?"-":"")+E),g=y=0))}g+y>0&&l();break;case"number":_.im=0,_.re=c;break;default:l()}return isNaN(_.re)||isNaN(_.im),_};function p(c,d){if(!(this instanceof p))return new p(c,d);var _=h(c,d);this.re=_.re,this.im=_.im}p.prototype={re:0,im:0,sign:function(){var c=this.abs();return new p(this.re/c,this.im/c)},add:function(c,d){var _=new p(c,d);return this.isInfinite()&&_.isInfinite()?p.NAN:this.isInfinite()||_.isInfinite()?p.INFINITY:new p(this.re+_.re,this.im+_.im)},sub:function(c,d){var _=new p(c,d);return this.isInfinite()&&_.isInfinite()?p.NAN:this.isInfinite()||_.isInfinite()?p.INFINITY:new p(this.re-_.re,this.im-_.im)},mul:function(c,d){var _=new p(c,d);return this.isInfinite()&&_.isZero()||this.isZero()&&_.isInfinite()?p.NAN:this.isInfinite()||_.isInfinite()?p.INFINITY:_.im===0&&this.im===0?new p(this.re*_.re,0):new p(this.re*_.re-this.im*_.im,this.re*_.im+this.im*_.re)},div:function(c,d){var _=new p(c,d);if(this.isZero()&&_.isZero()||this.isInfinite()&&_.isInfinite())return p.NAN;if(this.isInfinite()||_.isZero())return p.INFINITY;if(this.isZero()||_.isInfinite())return p.ZERO;c=this.re,d=this.im;var D=_.re,g=_.im,y,v;return g===0?new p(c/D,d/D):Math.abs(D)<Math.abs(g)?(v=D/g,y=D*v+g,new p((c*v+d)/y,(d*v-c)/y)):(v=g/D,y=g*v+D,new p((c+d*v)/y,(d-c*v)/y))},pow:function(c,d){var _=new p(c,d);if(c=this.re,d=this.im,_.isZero())return p.ONE;if(_.im===0){if(d===0&&c>0)return new p(Math.pow(c,_.re),0);if(c===0)switch((_.re%4+4)%4){case 0:return new p(Math.pow(d,_.re),0);case 1:return new p(0,Math.pow(d,_.re));case 2:return new p(-Math.pow(d,_.re),0);case 3:return new p(0,-Math.pow(d,_.re))}}if(c===0&&d===0&&_.re>0&&_.im>=0)return p.ZERO;var D=Math.atan2(d,c),g=f(c,d);return c=Math.exp(_.re*g-_.im*D),d=_.im*g+_.re*D,new p(c*Math.cos(d),c*Math.sin(d))},sqrt:function(){var c=this.re,d=this.im,_=this.abs(),D,g;if(c>=0){if(d===0)return new p(Math.sqrt(c),0);D=.5*Math.sqrt(2*(_+c))}else D=Math.abs(d)/Math.sqrt(2*(_-c));return c<=0?g=.5*Math.sqrt(2*(_-c)):g=Math.abs(d)/Math.sqrt(2*(_+c)),new p(D,d<0?-g:g)},exp:function(){var c=Math.exp(this.re);return this.im,new p(c*Math.cos(this.im),c*Math.sin(this.im))},expm1:function(){var c=this.re,d=this.im;return new p(Math.expm1(c)*Math.cos(d)+s(d),Math.exp(c)*Math.sin(d))},log:function(){var c=this.re,d=this.im;return new p(f(c,d),Math.atan2(d,c))},abs:function(){return a(this.re,this.im)},arg:function(){return Math.atan2(this.im,this.re)},sin:function(){var c=this.re,d=this.im;return new p(Math.sin(c)*r(d),Math.cos(c)*n(d))},cos:function(){var c=this.re,d=this.im;return new p(Math.cos(c)*r(d),-Math.sin(c)*n(d))},tan:function(){var c=2*this.re,d=2*this.im,_=Math.cos(c)+r(d);return new p(Math.sin(c)/_,n(d)/_)},cot:function(){var c=2*this.re,d=2*this.im,_=Math.cos(c)-r(d);return new p(-Math.sin(c)/_,n(d)/_)},sec:function(){var c=this.re,d=this.im,_=.5*r(2*d)+.5*Math.cos(2*c);return new p(Math.cos(c)*r(d)/_,Math.sin(c)*n(d)/_)},csc:function(){var c=this.re,d=this.im,_=.5*r(2*d)-.5*Math.cos(2*c);return new p(Math.sin(c)*r(d)/_,-Math.cos(c)*n(d)/_)},asin:function(){var c=this.re,d=this.im,_=new p(d*d-c*c+1,-2*c*d).sqrt(),D=new p(_.re-d,_.im+c).log();return new p(D.im,-D.re)},acos:function(){var c=this.re,d=this.im,_=new p(d*d-c*c+1,-2*c*d).sqrt(),D=new p(_.re-d,_.im+c).log();return new p(Math.PI/2-D.im,D.re)},atan:function(){var c=this.re,d=this.im;if(c===0){if(d===1)return new p(0,1/0);if(d===-1)return new p(0,-1/0)}var _=c*c+(1-d)*(1-d),D=new p((1-d*d-c*c)/_,-2*c/_).log();return new p(-.5*D.im,.5*D.re)},acot:function(){var c=this.re,d=this.im;if(d===0)return new p(Math.atan2(1,c),0);var _=c*c+d*d;return _!==0?new p(c/_,-d/_).atan():new p(c!==0?c/0:0,d!==0?-d/0:0).atan()},asec:function(){var c=this.re,d=this.im;if(c===0&&d===0)return new p(0,1/0);var _=c*c+d*d;return _!==0?new p(c/_,-d/_).acos():new p(c!==0?c/0:0,d!==0?-d/0:0).acos()},acsc:function(){var c=this.re,d=this.im;if(c===0&&d===0)return new p(Math.PI/2,1/0);var _=c*c+d*d;return _!==0?new p(c/_,-d/_).asin():new p(c!==0?c/0:0,d!==0?-d/0:0).asin()},sinh:function(){var c=this.re,d=this.im;return new p(n(c)*Math.cos(d),r(c)*Math.sin(d))},cosh:function(){var c=this.re,d=this.im;return new p(r(c)*Math.cos(d),n(c)*Math.sin(d))},tanh:function(){var c=2*this.re,d=2*this.im,_=r(c)+Math.cos(d);return new p(n(c)/_,Math.sin(d)/_)},coth:function(){var c=2*this.re,d=2*this.im,_=r(c)-Math.cos(d);return new p(n(c)/_,-Math.sin(d)/_)},csch:function(){var c=this.re,d=this.im,_=Math.cos(2*d)-r(2*c);return new p(-2*n(c)*Math.cos(d)/_,2*r(c)*Math.sin(d)/_)},sech:function(){var c=this.re,d=this.im,_=Math.cos(2*d)+r(2*c);return new p(2*r(c)*Math.cos(d)/_,-2*n(c)*Math.sin(d)/_)},asinh:function(){var c=this.im;this.im=-this.re,this.re=c;var d=this.asin();return this.re=-this.im,this.im=c,c=d.re,d.re=-d.im,d.im=c,d},acosh:function(){var c=this.acos();if(c.im<=0){var d=c.re;c.re=-c.im,c.im=d}else{var d=c.im;c.im=-c.re,c.re=d}return c},atanh:function(){var c=this.re,d=this.im,_=c>1&&d===0,D=1-c,g=1+c,y=D*D+d*d,v=y!==0?new p((g*D-d*d)/y,(d*D+g*d)/y):new p(c!==-1?c/0:0,d!==0?d/0:0),E=v.re;return v.re=f(v.re,v.im)/2,v.im=Math.atan2(v.im,E)/2,_&&(v.im=-v.im),v},acoth:function(){var c=this.re,d=this.im;if(c===0&&d===0)return new p(0,Math.PI/2);var _=c*c+d*d;return _!==0?new p(c/_,-d/_).atanh():new p(c!==0?c/0:0,d!==0?-d/0:0).atanh()},acsch:function(){var c=this.re,d=this.im;if(d===0)return new p(c!==0?Math.log(c+Math.sqrt(c*c+1)):1/0,0);var _=c*c+d*d;return _!==0?new p(c/_,-d/_).asinh():new p(c!==0?c/0:0,d!==0?-d/0:0).asinh()},asech:function(){var c=this.re,d=this.im;if(this.isZero())return p.INFINITY;var _=c*c+d*d;return _!==0?new p(c/_,-d/_).acosh():new p(c!==0?c/0:0,d!==0?-d/0:0).acosh()},inverse:function(){if(this.isZero())return p.INFINITY;if(this.isInfinite())return p.ZERO;var c=this.re,d=this.im,_=c*c+d*d;return new p(c/_,-d/_)},conjugate:function(){return new p(this.re,-this.im)},neg:function(){return new p(-this.re,-this.im)},ceil:function(c){return c=Math.pow(10,c||0),new p(Math.ceil(this.re*c)/c,Math.ceil(this.im*c)/c)},floor:function(c){return c=Math.pow(10,c||0),new p(Math.floor(this.re*c)/c,Math.floor(this.im*c)/c)},round:function(c){return c=Math.pow(10,c||0),new p(Math.round(this.re*c)/c,Math.round(this.im*c)/c)},equals:function(c,d){var _=new p(c,d);return Math.abs(_.re-this.re)<=p.EPSILON&&Math.abs(_.im-this.im)<=p.EPSILON},clone:function(){return new p(this.re,this.im)},toString:function(){var c=this.re,d=this.im,_="";return this.isNaN()?"NaN":this.isInfinite()?"Infinity":(Math.abs(c)<p.EPSILON&&(c=0),Math.abs(d)<p.EPSILON&&(d=0),d===0?_+c:(c!==0?(_+=c,_+=" ",d<0?(d=-d,_+="-"):_+="+",_+=" "):d<0&&(d=-d,_+="-"),d!==1&&(_+=d),_+"i"))},toVector:function(){return[this.re,this.im]},valueOf:function(){return this.im===0?this.re:null},isNaN:function(){return isNaN(this.re)||isNaN(this.im)},isZero:function(){return this.im===0&&this.re===0},isFinite:function(){return isFinite(this.re)&&isFinite(this.im)},isInfinite:function(){return!(this.isNaN()||this.isFinite())}},p.ZERO=new p(0,0),p.ONE=new p(1,0),p.I=new p(0,1),p.PI=new p(Math.PI,0),p.E=new p(Math.E,0),p.INFINITY=new p(1/0,1/0),p.NAN=new p(NaN,NaN),p.EPSILON=1e-15,Object.defineProperty(p,"__esModule",{value:!0}),p.default=p,p.Complex=p,i.exports=p})()})(vf);var zd=vf.exports,Re=Zt(zd),qd="Complex",Ud=[],kd=dt(qd,Ud,()=>(Object.defineProperty(Re,"name",{value:"Complex"}),Re.prototype.constructor=Re,Re.prototype.type="Complex",Re.prototype.isComplex=!0,Re.prototype.toJSON=function(){return{mathjs:"Complex",re:this.re,im:this.im}},Re.prototype.toPolar=function(){return{r:this.abs(),phi:this.arg()}},Re.prototype.format=function(i){var t="",e=this.im,r=this.re,n=ou(this.re,i),s=ou(this.im,i),a=ae(i)?i:i?i.precision:null;if(a!==null){var l=Math.pow(10,-a);Math.abs(r/e)<l&&(r=0),Math.abs(e/r)<l&&(e=0)}return e===0?t=n:r===0?e===1?t="i":e===-1?t="-i":t=s+"i":e<0?e===-1?t=n+" - i":t=n+" - "+s.substring(1)+"i":e===1?t=n+" + i":t=n+" + "+s+"i",t},Re.fromPolar=function(i){switch(arguments.length){case 1:{var t=arguments[0];if(typeof t=="object")return Re(t);throw new TypeError("Input has to be an object with r and phi keys.")}case 2:{var e=arguments[0],r=arguments[1];if(ae(e)){if(Sl(r)&&r.hasBase("ANGLE")&&(r=r.toNumber("rad")),ae(r))return new Re({r:e,phi:r});throw new TypeError("Phi is not a number nor an angle unit.")}else throw new TypeError("Radius r is not a number.")}default:throw new SyntaxError("Wrong number of arguments in function fromPolar")}},Re.prototype.valueOf=Re.prototype.toString,Re.fromJSON=function(i){return new Re(i)},Re.compare=function(i,t){return i.re>t.re?1:i.re<t.re?-1:i.im>t.im?1:i.im<t.im?-1:0},Re),{isClass:!0}),_f={exports:{}};/**
|
47
|
+
* @license Fraction.js v4.3.0 20/08/2023
|
48
|
+
* https://www.xarg.org/2014/03/rational-numbers-in-javascript/
|
49
|
+
*
|
50
|
+
* Copyright (c) 2023, Robert Eisele (robert@raw.org)
|
51
|
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
52
|
+
**/(function(i,t){(function(e){var r=2e3,n={s:1,n:0,d:1};function s(v,E){if(isNaN(v=parseInt(v,10)))throw g();return v*E}function a(v,E){if(E===0)throw D();var b=Object.create(_.prototype);b.s=v<0?-1:1,v=v<0?-v:v;var N=d(v,E);return b.n=v/N,b.d=E/N,b}function l(v){for(var E={},b=v,N=2,x=4;x<=b;){for(;b%N===0;)b/=N,E[N]=(E[N]||0)+1;x+=1+2*N++}return b!==v?b>1&&(E[b]=(E[b]||0)+1):E[v]=(E[v]||0)+1,E}var f=function(v,E){var b=0,N=1,x=1,F=0,M=0,S=0,$=1,C=1,I=0,R=1,U=1,q=1,k=1e7,P;if(v!=null)if(E!==void 0){if(b=v,N=E,x=b*N,b%1!==0||N%1!==0)throw y()}else switch(typeof v){case"object":{if("d"in v&&"n"in v)b=v.n,N=v.d,"s"in v&&(b*=v.s);else if(0 in v)b=v[0],1 in v&&(N=v[1]);else throw g();x=b*N;break}case"number":{if(v<0&&(x=v,v=-v),v%1===0)b=v;else if(v>0){for(v>=1&&(C=Math.pow(10,Math.floor(1+Math.log(v)/Math.LN10)),v/=C);R<=k&&q<=k;)if(P=(I+U)/(R+q),v===P){R+q<=k?(b=I+U,N=R+q):q>R?(b=U,N=q):(b=I,N=R);break}else v>P?(I+=U,R+=q):(U+=I,q+=R),R>k?(b=U,N=q):(b=I,N=R);b*=C}else(isNaN(v)||isNaN(E))&&(N=b=NaN);break}case"string":{if(R=v.match(/\d+|./g),R===null)throw g();if(R[I]==="-"?(x=-1,I++):R[I]==="+"&&I++,R.length===I+1?M=s(R[I++],x):R[I+1]==="."||R[I]==="."?(R[I]!=="."&&(F=s(R[I++],x)),I++,(I+1===R.length||R[I+1]==="("&&R[I+3]===")"||R[I+1]==="'"&&R[I+3]==="'")&&(M=s(R[I],x),$=Math.pow(10,R[I].length),I++),(R[I]==="("&&R[I+2]===")"||R[I]==="'"&&R[I+2]==="'")&&(S=s(R[I+1],x),C=Math.pow(10,R[I+1].length)-1,I+=3)):R[I+1]==="/"||R[I+1]===":"?(M=s(R[I],x),$=s(R[I+2],1),I+=3):R[I+3]==="/"&&R[I+1]===" "&&(F=s(R[I],x),M=s(R[I+2],x),$=s(R[I+4],1),I+=5),R.length<=I){N=$*C,x=b=S+N*F+C*M;break}}default:throw g()}if(N===0)throw D();n.s=x<0?-1:1,n.n=Math.abs(b),n.d=Math.abs(N)};function h(v,E,b){for(var N=1;E>0;v=v*v%b,E>>=1)E&1&&(N=N*v%b);return N}function p(v,E){for(;E%2===0;E/=2);for(;E%5===0;E/=5);if(E===1)return 0;for(var b=10%E,N=1;b!==1;N++)if(b=b*10%E,N>r)return 0;return N}function c(v,E,b){for(var N=1,x=h(10,b,E),F=0;F<300;F++){if(N===x)return F;N=N*10%E,x=x*10%E}return 0}function d(v,E){if(!v)return E;if(!E)return v;for(;;){if(v%=E,!v)return E;if(E%=v,!E)return v}}function _(v,E){if(f(v,E),this instanceof _)v=d(n.d,n.n),this.s=n.s,this.n=n.n/v,this.d=n.d/v;else return a(n.s*n.n,n.d)}var D=function(){return new Error("Division by Zero")},g=function(){return new Error("Invalid argument")},y=function(){return new Error("Parameters must be integer")};_.prototype={s:1,n:0,d:1,abs:function(){return a(this.n,this.d)},neg:function(){return a(-this.s*this.n,this.d)},add:function(v,E){return f(v,E),a(this.s*this.n*n.d+n.s*this.d*n.n,this.d*n.d)},sub:function(v,E){return f(v,E),a(this.s*this.n*n.d-n.s*this.d*n.n,this.d*n.d)},mul:function(v,E){return f(v,E),a(this.s*n.s*this.n*n.n,this.d*n.d)},div:function(v,E){return f(v,E),a(this.s*n.s*this.n*n.d,this.d*n.n)},clone:function(){return a(this.s*this.n,this.d)},mod:function(v,E){if(isNaN(this.n)||isNaN(this.d))return new _(NaN);if(v===void 0)return a(this.s*this.n%this.d,1);if(f(v,E),n.n===0&&this.d===0)throw D();return a(this.s*(n.d*this.n)%(n.n*this.d),n.d*this.d)},gcd:function(v,E){return f(v,E),a(d(n.n,this.n)*d(n.d,this.d),n.d*this.d)},lcm:function(v,E){return f(v,E),n.n===0&&this.n===0?a(0,1):a(n.n*this.n,d(n.n,this.n)*d(n.d,this.d))},ceil:function(v){return v=Math.pow(10,v||0),isNaN(this.n)||isNaN(this.d)?new _(NaN):a(Math.ceil(v*this.s*this.n/this.d),v)},floor:function(v){return v=Math.pow(10,v||0),isNaN(this.n)||isNaN(this.d)?new _(NaN):a(Math.floor(v*this.s*this.n/this.d),v)},round:function(v){return v=Math.pow(10,v||0),isNaN(this.n)||isNaN(this.d)?new _(NaN):a(Math.round(v*this.s*this.n/this.d),v)},inverse:function(){return a(this.s*this.d,this.n)},pow:function(v,E){if(f(v,E),n.d===1)return n.s<0?a(Math.pow(this.s*this.d,n.n),Math.pow(this.n,n.n)):a(Math.pow(this.s*this.n,n.n),Math.pow(this.d,n.n));if(this.s<0)return null;var b=l(this.n),N=l(this.d),x=1,F=1;for(var M in b)if(M!=="1"){if(M==="0"){x=0;break}if(b[M]*=n.n,b[M]%n.d===0)b[M]/=n.d;else return null;x*=Math.pow(M,b[M])}for(var M in N)if(M!=="1"){if(N[M]*=n.n,N[M]%n.d===0)N[M]/=n.d;else return null;F*=Math.pow(M,N[M])}return n.s<0?a(F,x):a(x,F)},equals:function(v,E){return f(v,E),this.s*this.n*n.d===n.s*n.n*this.d},compare:function(v,E){f(v,E);var b=this.s*this.n*n.d-n.s*n.n*this.d;return(0<b)-(b<0)},simplify:function(v){if(isNaN(this.n)||isNaN(this.d))return this;v=v||.001;for(var E=this.abs(),b=E.toContinued(),N=1;N<b.length;N++){for(var x=a(b[N-1],1),F=N-2;F>=0;F--)x=x.inverse().add(b[F]);if(Math.abs(x.sub(E).valueOf())<v)return x.mul(this.s)}return this},divisible:function(v,E){return f(v,E),!(!(n.n*this.d)||this.n*n.d%(n.n*this.d))},valueOf:function(){return this.s*this.n/this.d},toFraction:function(v){var E,b="",N=this.n,x=this.d;return this.s<0&&(b+="-"),x===1?b+=N:(v&&(E=Math.floor(N/x))>0&&(b+=E,b+=" ",N%=x),b+=N,b+="/",b+=x),b},toLatex:function(v){var E,b="",N=this.n,x=this.d;return this.s<0&&(b+="-"),x===1?b+=N:(v&&(E=Math.floor(N/x))>0&&(b+=E,N%=x),b+="\\frac{",b+=N,b+="}{",b+=x,b+="}"),b},toContinued:function(){var v,E=this.n,b=this.d,N=[];if(isNaN(E)||isNaN(b))return N;do N.push(Math.floor(E/b)),v=E%b,E=b,b=v;while(E!==1);return N},toString:function(v){var E=this.n,b=this.d;if(isNaN(E)||isNaN(b))return"NaN";v=v||15;var N=p(E,b),x=c(E,b,N),F=this.s<0?"-":"";if(F+=E/b|0,E%=b,E*=10,E&&(F+="."),N){for(var M=x;M--;)F+=E/b|0,E%=b,E*=10;F+="(";for(var M=N;M--;)F+=E/b|0,E%=b,E*=10;F+=")"}else for(var M=v;E&&M--;)F+=E/b|0,E%=b,E*=10;return F}},Object.defineProperty(_,"__esModule",{value:!0}),_.default=_,_.Fraction=_,i.exports=_})()})(_f);var Wd=_f.exports,Gr=Zt(Wd),Yd="Fraction",Zd=[],jd=dt(Yd,Zd,()=>(Object.defineProperty(Gr,"name",{value:"Fraction"}),Gr.prototype.constructor=Gr,Gr.prototype.type="Fraction",Gr.prototype.isFraction=!0,Gr.prototype.toJSON=function(){return{mathjs:"Fraction",n:this.s*this.n,d:this.d}},Gr.fromJSON=function(i){return new Gr(i)},Gr),{isClass:!0}),Gd="Matrix",Kd=[],Jd=dt(Gd,Kd,()=>{function i(){if(!(this instanceof i))throw new SyntaxError("Constructor must be called with the new operator")}return i.prototype.type="Matrix",i.prototype.isMatrix=!0,i.prototype.storage=function(){throw new Error("Cannot invoke storage on a Matrix interface")},i.prototype.datatype=function(){throw new Error("Cannot invoke datatype on a Matrix interface")},i.prototype.create=function(t,e){throw new Error("Cannot invoke create on a Matrix interface")},i.prototype.subset=function(t,e,r){throw new Error("Cannot invoke subset on a Matrix interface")},i.prototype.get=function(t){throw new Error("Cannot invoke get on a Matrix interface")},i.prototype.set=function(t,e,r){throw new Error("Cannot invoke set on a Matrix interface")},i.prototype.resize=function(t,e){throw new Error("Cannot invoke resize on a Matrix interface")},i.prototype.reshape=function(t,e){throw new Error("Cannot invoke reshape on a Matrix interface")},i.prototype.clone=function(){throw new Error("Cannot invoke clone on a Matrix interface")},i.prototype.size=function(){throw new Error("Cannot invoke size on a Matrix interface")},i.prototype.map=function(t,e){throw new Error("Cannot invoke map on a Matrix interface")},i.prototype.forEach=function(t){throw new Error("Cannot invoke forEach on a Matrix interface")},i.prototype[Symbol.iterator]=function(){throw new Error("Cannot iterate a Matrix interface")},i.prototype.toArray=function(){throw new Error("Cannot invoke toArray on a Matrix interface")},i.prototype.valueOf=function(){throw new Error("Cannot invoke valueOf on a Matrix interface")},i.prototype.format=function(t){throw new Error("Cannot invoke format on a Matrix interface")},i.prototype.toString=function(){throw new Error("Cannot invoke toString on a Matrix interface")},i},{isClass:!0});function wf(i){return Object.keys(i.signatures||{}).reduce(function(t,e){var r=(e.match(/,/g)||[]).length+1;return Math.max(t,r)},-1)}var Xd="DenseMatrix",Hd=["Matrix"],Qd=dt(Xd,Hd,i=>{var{Matrix:t}=i;function e(p,c){if(!(this instanceof e))throw new SyntaxError("Constructor must be called with the new operator");if(c&&!qr(c))throw new Error("Invalid datatype: "+c);if(fe(p))p.type==="DenseMatrix"?(this._data=te(p._data),this._size=te(p._size),this._datatype=c||p._datatype):(this._data=p.toArray(),this._size=p.size(),this._datatype=c||p._datatype);else if(p&&ge(p.data)&&ge(p.size))this._data=p.data,this._size=p.size,jl(this._data,this._size),this._datatype=c||p.datatype;else if(ge(p))this._data=h(p),this._size=Ae(this._data),jl(this._data,this._size),this._datatype=c;else{if(p)throw new TypeError("Unsupported type of data ("+ln(p)+")");this._data=[],this._size=[0],this._datatype=c}}e.prototype=new t,e.prototype.createDenseMatrix=function(p,c){return new e(p,c)},Object.defineProperty(e,"name",{value:"DenseMatrix"}),e.prototype.constructor=e,e.prototype.type="DenseMatrix",e.prototype.isDenseMatrix=!0,e.prototype.getDataType=function(){return Es(this._data,ln)},e.prototype.storage=function(){return"dense"},e.prototype.datatype=function(){return this._datatype},e.prototype.create=function(p,c){return new e(p,c)},e.prototype.subset=function(p,c,d){switch(arguments.length){case 1:return r(this,p);case 2:case 3:return s(this,p,c,d);default:throw new SyntaxError("Wrong number of arguments")}},e.prototype.get=function(p){if(!ge(p))throw new TypeError("Array expected");if(p.length!==this._size.length)throw new jt(p.length,this._size.length);for(var c=0;c<p.length;c++)ve(p[c],this._size[c]);for(var d=this._data,_=0,D=p.length;_<D;_++){var g=p[_];ve(g,d.length),d=d[g]}return d},e.prototype.set=function(p,c,d){if(!ge(p))throw new TypeError("Array expected");if(p.length<this._size.length)throw new jt(p.length,this._size.length,"<");var _,D,g,y=p.map(function(E){return E+1});f(this,y,d);var v=this._data;for(_=0,D=p.length-1;_<D;_++)g=p[_],ve(g,v.length),v=v[g];return g=p[p.length-1],ve(g,v.length),v[g]=c,this};function r(p,c){if(!nu(c))throw new TypeError("Invalid index");var d=c.isScalar();if(d)return p.get(c.min());var _=c.size();if(_.length!==p._size.length)throw new jt(_.length,p._size.length);for(var D=c.min(),g=c.max(),y=0,v=p._size.length;y<v;y++)ve(D[y],p._size[y]),ve(g[y],p._size[y]);return new e(n(p._data,c,_.length,0),p._datatype)}function n(p,c,d,_){var D=_===d-1,g=c.dimension(_);return D?g.map(function(y){return ve(y,p.length),p[y]}).valueOf():g.map(function(y){ve(y,p.length);var v=p[y];return n(v,c,d,_+1)}).valueOf()}function s(p,c,d,_){if(!c||c.isIndex!==!0)throw new TypeError("Invalid index");var D=c.size(),g=c.isScalar(),y;if(fe(d)?(y=d.size(),d=d.valueOf()):y=Ae(d),g){if(y.length!==0)throw new TypeError("Scalar expected");p.set(c.min(),d,_)}else{if(!ti(y,D))try{y.length===0?d=Ql([d],D):d=Ql(d,D),y=Ae(d)}catch{}if(D.length<p._size.length)throw new jt(D.length,p._size.length,"<");if(y.length<D.length){for(var v=0,E=0;D[v]===1&&y[v]===1;)v++;for(;D[v]===1;)E++,v++;d=Kl(d,D.length,E,y)}if(!ti(D,y))throw new jt(D,y,">");var b=c.max().map(function(F){return F+1});f(p,b,_);var N=D.length,x=0;a(p._data,c,d,N,x)}return p}function a(p,c,d,_,D){var g=D===_-1,y=c.dimension(D);g?y.forEach(function(v,E){ve(v),p[v]=d[E[0]]}):y.forEach(function(v,E){ve(v),a(p[v],c,d[E[0]],_,D+1)})}e.prototype.resize=function(p,c,d){if(!Ri(p))throw new TypeError("Array or Matrix expected");var _=p.valueOf().map(g=>Array.isArray(g)&&g.length===1?g[0]:g),D=d?this.clone():this;return l(D,_,c)};function l(p,c,d){if(c.length===0){for(var _=p._data;ge(_);)_=_[0];return _}return p._size=c.slice(0),p._data=au(p._data,p._size,d),p}e.prototype.reshape=function(p,c){var d=c?this.clone():this;d._data=fu(d._data,p);var _=d._size.reduce((D,g)=>D*g);return d._size=cu(p,_),d};function f(p,c,d){for(var _=p._size.slice(0),D=!1;_.length<c.length;)_.push(0),D=!0;for(var g=0,y=c.length;g<y;g++)c[g]>_[g]&&(_[g]=c[g],D=!0);D&&l(p,_,d)}e.prototype.clone=function(){var p=new e({data:te(this._data),size:te(this._size),datatype:this._datatype});return p},e.prototype.size=function(){return this._size.slice(0)},e.prototype.map=function(p){var c=this,d=wf(p),_=function y(v,E){return ge(v)?v.map(function(b,N){return y(b,E.concat(N))}):d===1?p(v):d===2?p(v,E):p(v,E,c)},D=_(this._data,[]),g=this._datatype!==void 0?Es(D,ln):void 0;return new e(D,g)},e.prototype.forEach=function(p){var c=this,d=function _(D,g){ge(D)?D.forEach(function(y,v){_(y,g.concat(v))}):p(D,g,c)};d(this._data,[])},e.prototype[Symbol.iterator]=function*(){var p=function*c(d,_){if(ge(d))for(var D=0;D<d.length;D++)yield*c(d[D],_.concat(D));else yield{value:d,index:_}};yield*p(this._data,[])},e.prototype.rows=function(){var p=[],c=this.size();if(c.length!==2)throw new TypeError("Rows can only be returned for a 2D matrix.");var d=this._data;for(var _ of d)p.push(new e([_],this._datatype));return p},e.prototype.columns=function(){var p=this,c=[],d=this.size();if(d.length!==2)throw new TypeError("Rows can only be returned for a 2D matrix.");for(var _=this._data,D=function(v){var E=_.map(b=>[b[v]]);c.push(new e(E,p._datatype))},g=0;g<d[1];g++)D(g);return c},e.prototype.toArray=function(){return te(this._data)},e.prototype.valueOf=function(){return this._data},e.prototype.format=function(p){return se(this._data,p)},e.prototype.toString=function(){return se(this._data)},e.prototype.toJSON=function(){return{mathjs:"DenseMatrix",data:this._data,size:this._size,datatype:this._datatype}},e.prototype.diagonal=function(p){if(p){if(ye(p)&&(p=p.toNumber()),!ae(p)||!he(p))throw new TypeError("The parameter k must be an integer number")}else p=0;for(var c=p>0?p:0,d=p<0?-p:0,_=this._size[0],D=this._size[1],g=Math.min(_-d,D-c),y=[],v=0;v<g;v++)y[v]=this._data[v+d][v+c];return new e({data:y,size:[g],datatype:this._datatype})},e.diagonal=function(p,c,d,_){if(!ge(p))throw new TypeError("Array expected, size parameter");if(p.length!==2)throw new Error("Only two dimensions matrix are supported");if(p=p.map(function(M){if(ye(M)&&(M=M.toNumber()),!ae(M)||!he(M)||M<1)throw new Error("Size values must be positive integers");return M}),d){if(ye(d)&&(d=d.toNumber()),!ae(d)||!he(d))throw new TypeError("The parameter k must be an integer number")}else d=0;var D=d>0?d:0,g=d<0?-d:0,y=p[0],v=p[1],E=Math.min(y-g,v-D),b;if(ge(c)){if(c.length!==E)throw new Error("Invalid value array length");b=function(S){return c[S]}}else if(fe(c)){var N=c.size();if(N.length!==1||N[0]!==E)throw new Error("Invalid matrix length");b=function(S){return c.get([S])}}else b=function(){return c};_||(_=ye(b(0))?b(0).mul(0):0);var x=[];if(p.length>0){x=au(x,p,_);for(var F=0;F<E;F++)x[F+g][F+D]=b(F)}return new e({data:x,size:[y,v]})},e.fromJSON=function(p){return new e(p)},e.prototype.swapRows=function(p,c){if(!ae(p)||!he(p)||!ae(c)||!he(c))throw new Error("Row index must be positive integers");if(this._size.length!==2)throw new Error("Only two dimensional matrix is supported");return ve(p,this._size[0]),ve(c,this._size[0]),e._swapRows(p,c,this._data),this},e._swapRows=function(p,c,d){var _=d[p];d[p]=d[c],d[c]=_};function h(p){return fe(p)?h(p.valueOf()):ge(p)?p.map(h):p}return e},{isClass:!0});function Vd(i){var t=i.length,e=i[0].length,r,n,s=[];for(n=0;n<e;n++){var a=[];for(r=0;r<t;r++)a.push(i[r][n]);s.push(a)}return s}function Ts(i){for(var t=0;t<i.length;t++)if(Ri(i[t]))return!0;return!1}function zi(i,t){fe(i)&&(i=i.valueOf());for(var e=0,r=i.length;e<r;e++){var n=i[e];Array.isArray(n)?zi(n,t):t(n)}}function Br(i,t,e){return i&&typeof i.map=="function"?i.map(function(r){return Br(r,t)}):t(i)}function yu(i,t,e){var r=Array.isArray(i)?Ae(i):i.size();if(t<0||t>=r.length)throw new fn(t,r.length);return fe(i)?i.create($s(i.valueOf(),t,e)):$s(i,t,e)}function $s(i,t,e){var r,n,s,a;if(t<=0)if(Array.isArray(i[0])){for(a=Vd(i),n=[],r=0;r<a.length;r++)n[r]=$s(a[r],t-1,e);return n}else{for(s=i[0],r=1;r<i.length;r++)s=e(s,i[r]);return s}else{for(n=[],r=0;r<i.length;r++)n[r]=$s(i[r],t-1,e);return n}}var Df="isInteger",tg=["typed"],eg=dt(Df,tg,i=>{var{typed:t}=i;return t(Df,{number:he,BigNumber:function(r){return r.isInt()},Fraction:function(r){return r.d===1&&isFinite(r.n)},"Array | Matrix":t.referToSelf(e=>r=>Br(r,e))})}),yf="number",Os="number, number";function bf(i){return Math.abs(i)}bf.signature=yf;function Ef(i,t){return i+t}Ef.signature=Os;function Af(i,t){return i-t}Af.signature=Os;function xf(i,t){return i*t}xf.signature=Os;function Cf(i){return-i}Cf.signature=yf;function Ff(i,t){return i*i<1&&t===1/0||i*i>1&&t===-1/0?0:Math.pow(i,t)}Ff.signature=Os;var Mf="number";function Nf(i){return i===0}Nf.signature=Mf;function Sf(i){return Number.isNaN(i)}Sf.signature=Mf;var Bf="isNumeric",rg=["typed"],ng=dt(Bf,rg,i=>{var{typed:t}=i;return t(Bf,{"number | BigNumber | Fraction | boolean":()=>!0,"Complex | Unit | string | null | undefined | Node":()=>!1,"Array | Matrix":t.referToSelf(e=>r=>Br(r,e))})}),If="isZero",ig=["typed"],sg=dt(If,ig,i=>{var{typed:t}=i;return t(If,{number:Nf,BigNumber:function(r){return r.isZero()},Complex:function(r){return r.re===0&&r.im===0},Fraction:function(r){return r.d===1&&r.n===0},Unit:t.referToSelf(e=>r=>t.find(e,r.valueType())(r.value)),"Array | Matrix":t.referToSelf(e=>r=>Br(r,e))})}),Tf="isNaN",og=["typed"],ug=dt(Tf,og,i=>{var{typed:t}=i;return t(Tf,{number:Sf,BigNumber:function(r){return r.isNaN()},Fraction:function(r){return!1},Complex:function(r){return r.isNaN()},Unit:function(r){return Number.isNaN(r.value)},"Array | Matrix":function(r){return Br(r,Number.isNaN)}})});function Rs(i,t,e){if(e==null)return i.eq(t);if(i.eq(t))return!0;if(i.isNaN()||t.isNaN())return!1;if(i.isFinite()&&t.isFinite()){var r=i.minus(t).abs();if(r.isZero())return!0;var n=i.constructor.max(i.abs(),t.abs());return r.lte(n.times(e))}return!1}function ag(i,t,e){return On(i.re,t.re,e)&&On(i.im,t.im,e)}var Ls=dt("compareUnits",["typed"],i=>{var{typed:t}=i;return{"Unit, Unit":t.referToSelf(e=>(r,n)=>{if(!r.equalBase(n))throw new Error("Cannot compare units with different base");return t.find(e,[r.valueType(),n.valueType()])(r.value,n.value)})}}),Ps="equalScalar",lg=["typed","config"],fg=dt(Ps,lg,i=>{var{typed:t,config:e}=i,r=Ls({typed:t});return t(Ps,{"boolean, boolean":function(s,a){return s===a},"number, number":function(s,a){return On(s,a,e.epsilon)},"BigNumber, BigNumber":function(s,a){return s.eq(a)||Rs(s,a,e.epsilon)},"Fraction, Fraction":function(s,a){return s.equals(a)},"Complex, Complex":function(s,a){return ag(s,a,e.epsilon)}},r)});dt(Ps,["typed","config"],i=>{var{typed:t,config:e}=i;return t(Ps,{"number, number":function(n,s){return On(n,s,e.epsilon)}})});var cg="SparseMatrix",hg=["typed","equalScalar","Matrix"],pg=dt(cg,hg,i=>{var{typed:t,equalScalar:e,Matrix:r}=i;function n(g,y){if(!(this instanceof n))throw new SyntaxError("Constructor must be called with the new operator");if(y&&!qr(y))throw new Error("Invalid datatype: "+y);if(fe(g))s(this,g,y);else if(g&&ge(g.index)&&ge(g.ptr)&&ge(g.size))this._values=g.values,this._index=g.index,this._ptr=g.ptr,this._size=g.size,this._datatype=y||g.datatype;else if(ge(g))a(this,g,y);else{if(g)throw new TypeError("Unsupported type of data ("+ln(g)+")");this._values=[],this._index=[],this._ptr=[0],this._size=[0,0],this._datatype=y}}function s(g,y,v){y.type==="SparseMatrix"?(g._values=y._values?te(y._values):void 0,g._index=te(y._index),g._ptr=te(y._ptr),g._size=te(y._size),g._datatype=v||y._datatype):a(g,y.valueOf(),v||y._datatype)}function a(g,y,v){g._values=[],g._index=[],g._ptr=[],g._datatype=v;var E=y.length,b=0,N=e,x=0;if(qr(v)&&(N=t.find(e,[v,v])||e,x=t.convert(0,v)),E>0){var F=0;do{g._ptr.push(g._index.length);for(var M=0;M<E;M++){var S=y[M];if(ge(S)){if(F===0&&b<S.length&&(b=S.length),F<S.length){var $=S[F];N($,x)||(g._values.push($),g._index.push(M))}}else F===0&&b<1&&(b=1),N(S,x)||(g._values.push(S),g._index.push(M))}F++}while(F<b)}g._ptr.push(g._index.length),g._size=[E,b]}n.prototype=new r,n.prototype.createSparseMatrix=function(g,y){return new n(g,y)},Object.defineProperty(n,"name",{value:"SparseMatrix"}),n.prototype.constructor=n,n.prototype.type="SparseMatrix",n.prototype.isSparseMatrix=!0,n.prototype.getDataType=function(){return Es(this._values,ln)},n.prototype.storage=function(){return"sparse"},n.prototype.datatype=function(){return this._datatype},n.prototype.create=function(g,y){return new n(g,y)},n.prototype.density=function(){var g=this._size[0],y=this._size[1];return g!==0&&y!==0?this._index.length/(g*y):0},n.prototype.subset=function(g,y,v){if(!this._values)throw new Error("Cannot invoke subset on a Pattern only matrix");switch(arguments.length){case 1:return l(this,g);case 2:case 3:return f(this,g,y,v);default:throw new SyntaxError("Wrong number of arguments")}};function l(g,y){if(!nu(y))throw new TypeError("Invalid index");var v=y.isScalar();if(v)return g.get(y.min());var E=y.size();if(E.length!==g._size.length)throw new jt(E.length,g._size.length);var b,N,x,F,M=y.min(),S=y.max();for(b=0,N=g._size.length;b<N;b++)ve(M[b],g._size[b]),ve(S[b],g._size[b]);var $=g._values,C=g._index,I=g._ptr,R=y.dimension(0),U=y.dimension(1),q=[],k=[];R.forEach(function(Q,tt){k[Q]=tt[0],q[Q]=!0});var P=$?[]:void 0,K=[],j=[];return U.forEach(function(Q){for(j.push(K.length),x=I[Q],F=I[Q+1];x<F;x++)b=C[x],q[b]===!0&&(K.push(k[b]),P&&P.push($[x]))}),j.push(K.length),new n({values:P,index:K,ptr:j,size:E,datatype:g._datatype})}function f(g,y,v,E){if(!y||y.isIndex!==!0)throw new TypeError("Invalid index");var b=y.size(),N=y.isScalar(),x;if(fe(v)?(x=v.size(),v=v.toArray()):x=Ae(v),N){if(x.length!==0)throw new TypeError("Scalar expected");g.set(y.min(),v,E)}else{if(b.length!==1&&b.length!==2)throw new jt(b.length,g._size.length,"<");if(x.length<b.length){for(var F=0,M=0;b[F]===1&&x[F]===1;)F++;for(;b[F]===1;)M++,F++;v=Kl(v,b.length,M,x)}if(!ti(b,x))throw new jt(b,x,">");if(b.length===1){var S=y.dimension(0);S.forEach(function(I,R){ve(I),g.set([I,0],v[R[0]],E)})}else{var $=y.dimension(0),C=y.dimension(1);$.forEach(function(I,R){ve(I),C.forEach(function(U,q){ve(U),g.set([I,U],v[R[0]][q[0]],E)})})}}return g}n.prototype.get=function(g){if(!ge(g))throw new TypeError("Array expected");if(g.length!==this._size.length)throw new jt(g.length,this._size.length);if(!this._values)throw new Error("Cannot invoke get on a Pattern only matrix");var y=g[0],v=g[1];ve(y,this._size[0]),ve(v,this._size[1]);var E=h(y,this._ptr[v],this._ptr[v+1],this._index);return E<this._ptr[v+1]&&this._index[E]===y?this._values[E]:0},n.prototype.set=function(g,y,v){if(!ge(g))throw new TypeError("Array expected");if(g.length!==this._size.length)throw new jt(g.length,this._size.length);if(!this._values)throw new Error("Cannot invoke set on a Pattern only matrix");var E=g[0],b=g[1],N=this._size[0],x=this._size[1],F=e,M=0;qr(this._datatype)&&(F=t.find(e,[this._datatype,this._datatype])||e,M=t.convert(0,this._datatype)),(E>N-1||b>x-1)&&(d(this,Math.max(E+1,N),Math.max(b+1,x),v),N=this._size[0],x=this._size[1]),ve(E,N),ve(b,x);var S=h(E,this._ptr[b],this._ptr[b+1],this._index);return S<this._ptr[b+1]&&this._index[S]===E?F(y,M)?p(S,b,this._values,this._index,this._ptr):this._values[S]=y:F(y,M)||c(S,E,b,y,this._values,this._index,this._ptr),this};function h(g,y,v,E){if(v-y===0)return v;for(var b=y;b<v;b++)if(E[b]===g)return b;return y}function p(g,y,v,E,b){v.splice(g,1),E.splice(g,1);for(var N=y+1;N<b.length;N++)b[N]--}function c(g,y,v,E,b,N,x){b.splice(g,0,E),N.splice(g,0,y);for(var F=v+1;F<x.length;F++)x[F]++}n.prototype.resize=function(g,y,v){if(!Ri(g))throw new TypeError("Array or Matrix expected");var E=g.valueOf().map(N=>Array.isArray(N)&&N.length===1?N[0]:N);if(E.length!==2)throw new Error("Only two dimensions matrix are supported");E.forEach(function(N){if(!ae(N)||!he(N)||N<0)throw new TypeError("Invalid size, must contain positive integers (size: "+se(E)+")")});var b=v?this.clone():this;return d(b,E[0],E[1],y)};function d(g,y,v,E){var b=E||0,N=e,x=0;qr(g._datatype)&&(N=t.find(e,[g._datatype,g._datatype])||e,x=t.convert(0,g._datatype),b=t.convert(b,g._datatype));var F=!N(b,x),M=g._size[0],S=g._size[1],$,C,I;if(v>S){for(C=S;C<v;C++)if(g._ptr[C]=g._values.length,F)for($=0;$<M;$++)g._values.push(b),g._index.push($);g._ptr[v]=g._values.length}else v<S&&(g._ptr.splice(v+1,S-v),g._values.splice(g._ptr[v],g._values.length),g._index.splice(g._ptr[v],g._index.length));if(S=v,y>M){if(F){var R=0;for(C=0;C<S;C++){g._ptr[C]=g._ptr[C]+R,I=g._ptr[C+1]+R;var U=0;for($=M;$<y;$++,U++)g._values.splice(I+U,0,b),g._index.splice(I+U,0,$),R++}g._ptr[S]=g._values.length}}else if(y<M){var q=0;for(C=0;C<S;C++){g._ptr[C]=g._ptr[C]-q;var k=g._ptr[C],P=g._ptr[C+1]-q;for(I=k;I<P;I++)$=g._index[I],$>y-1&&(g._values.splice(I,1),g._index.splice(I,1),q++)}g._ptr[C]=g._values.length}return g._size[0]=y,g._size[1]=v,g}n.prototype.reshape=function(g,y){if(!ge(g))throw new TypeError("Array expected");if(g.length!==2)throw new Error("Sparse matrices can only be reshaped in two dimensions");g.forEach(function(Q){if(!ae(Q)||!he(Q)||Q<=-2||Q===0)throw new TypeError("Invalid size, must contain positive integers or -1 (size: "+se(g)+")")});var v=this._size[0]*this._size[1];g=cu(g,v);var E=g[0]*g[1];if(v!==E)throw new Error("Reshaping sparse matrix will result in the wrong number of elements");var b=y?this.clone():this;if(this._size[0]===g[0]&&this._size[1]===g[1])return b;for(var N=[],x=0;x<b._ptr.length;x++)for(var F=0;F<b._ptr[x+1]-b._ptr[x];F++)N.push(x);for(var M=b._values.slice(),S=b._index.slice(),$=0;$<b._index.length;$++){var C=S[$],I=N[$],R=C*b._size[1]+I;N[$]=R%g[1],S[$]=Math.floor(R/g[1])}b._values.length=0,b._index.length=0,b._ptr.length=g[1]+1,b._size=g.slice();for(var U=0;U<b._ptr.length;U++)b._ptr[U]=0;for(var q=0;q<M.length;q++){var k=S[q],P=N[q],K=M[q],j=h(k,b._ptr[P],b._ptr[P+1],b._index);c(j,k,P,K,b._values,b._index,b._ptr)}return b},n.prototype.clone=function(){var g=new n({values:this._values?te(this._values):void 0,index:te(this._index),ptr:te(this._ptr),size:te(this._size),datatype:this._datatype});return g},n.prototype.size=function(){return this._size.slice(0)},n.prototype.map=function(g,y){if(!this._values)throw new Error("Cannot invoke map on a Pattern only matrix");var v=this,E=this._size[0],b=this._size[1],N=wf(g),x=function(M,S,$){return N===1?g(M):N===2?g(M,[S,$]):g(M,[S,$],v)};return _(this,0,E-1,0,b-1,x,y)};function _(g,y,v,E,b,N,x){var F=[],M=[],S=[],$=e,C=0;qr(g._datatype)&&($=t.find(e,[g._datatype,g._datatype])||e,C=t.convert(0,g._datatype));for(var I=function(lt,wt,yt){lt=N(lt,wt,yt),$(lt,C)||(F.push(lt),M.push(wt))},R=E;R<=b;R++){S.push(F.length);var U=g._ptr[R],q=g._ptr[R+1];if(x)for(var k=U;k<q;k++){var P=g._index[k];P>=y&&P<=v&&I(g._values[k],P-y,R-E)}else{for(var K={},j=U;j<q;j++){var Q=g._index[j];K[Q]=g._values[j]}for(var tt=y;tt<=v;tt++){var ft=tt in K?K[tt]:0;I(ft,tt-y,R-E)}}}return S.push(F.length),new n({values:F,index:M,ptr:S,size:[v-y+1,b-E+1]})}n.prototype.forEach=function(g,y){if(!this._values)throw new Error("Cannot invoke forEach on a Pattern only matrix");for(var v=this,E=this._size[0],b=this._size[1],N=0;N<b;N++){var x=this._ptr[N],F=this._ptr[N+1];if(y)for(var M=x;M<F;M++){var S=this._index[M];g(this._values[M],[S,N],v)}else{for(var $={},C=x;C<F;C++){var I=this._index[C];$[I]=this._values[C]}for(var R=0;R<E;R++){var U=R in $?$[R]:0;g(U,[R,N],v)}}}},n.prototype[Symbol.iterator]=function*(){if(!this._values)throw new Error("Cannot iterate a Pattern only matrix");for(var g=this._size[1],y=0;y<g;y++)for(var v=this._ptr[y],E=this._ptr[y+1],b=v;b<E;b++){var N=this._index[b];yield{value:this._values[b],index:[N,y]}}},n.prototype.toArray=function(){return D(this._values,this._index,this._ptr,this._size,!0)},n.prototype.valueOf=function(){return D(this._values,this._index,this._ptr,this._size,!1)};function D(g,y,v,E,b){var N=E[0],x=E[1],F=[],M,S;for(M=0;M<N;M++)for(F[M]=[],S=0;S<x;S++)F[M][S]=0;for(S=0;S<x;S++)for(var $=v[S],C=v[S+1],I=$;I<C;I++)M=y[I],F[M][S]=g?b?te(g[I]):g[I]:1;return F}return n.prototype.format=function(g){for(var y=this._size[0],v=this._size[1],E=this.density(),b="Sparse Matrix ["+se(y,g)+" x "+se(v,g)+"] density: "+se(E,g)+`
|
53
|
+
`,N=0;N<v;N++)for(var x=this._ptr[N],F=this._ptr[N+1],M=x;M<F;M++){var S=this._index[M];b+=`
|
54
|
+
(`+se(S,g)+", "+se(N,g)+") ==> "+(this._values?se(this._values[M],g):"X")}return b},n.prototype.toString=function(){return se(this.toArray())},n.prototype.toJSON=function(){return{mathjs:"SparseMatrix",values:this._values,index:this._index,ptr:this._ptr,size:this._size,datatype:this._datatype}},n.prototype.diagonal=function(g){if(g){if(ye(g)&&(g=g.toNumber()),!ae(g)||!he(g))throw new TypeError("The parameter k must be an integer number")}else g=0;var y=g>0?g:0,v=g<0?-g:0,E=this._size[0],b=this._size[1],N=Math.min(E-v,b-y),x=[],F=[],M=[];M[0]=0;for(var S=y;S<b&&x.length<N;S++)for(var $=this._ptr[S],C=this._ptr[S+1],I=$;I<C;I++){var R=this._index[I];if(R===S-y+v){x.push(this._values[I]),F[x.length-1]=R-v;break}}return M.push(x.length),new n({values:x,index:F,ptr:M,size:[N,1]})},n.fromJSON=function(g){return new n(g)},n.diagonal=function(g,y,v,E,b){if(!ge(g))throw new TypeError("Array expected, size parameter");if(g.length!==2)throw new Error("Only two dimensions matrix are supported");if(g=g.map(function(Q){if(ye(Q)&&(Q=Q.toNumber()),!ae(Q)||!he(Q)||Q<1)throw new Error("Size values must be positive integers");return Q}),v){if(ye(v)&&(v=v.toNumber()),!ae(v)||!he(v))throw new TypeError("The parameter k must be an integer number")}else v=0;var N=e,x=0;qr(b)&&(N=t.find(e,[b,b])||e,x=t.convert(0,b));var F=v>0?v:0,M=v<0?-v:0,S=g[0],$=g[1],C=Math.min(S-M,$-F),I;if(ge(y)){if(y.length!==C)throw new Error("Invalid value array length");I=function(tt){return y[tt]}}else if(fe(y)){var R=y.size();if(R.length!==1||R[0]!==C)throw new Error("Invalid matrix length");I=function(tt){return y.get([tt])}}else I=function(){return y};for(var U=[],q=[],k=[],P=0;P<$;P++){k.push(U.length);var K=P-F;if(K>=0&&K<C){var j=I(K);N(j,x)||(q.push(K+M),U.push(j))}}return k.push(U.length),new n({values:U,index:q,ptr:k,size:[S,$]})},n.prototype.swapRows=function(g,y){if(!ae(g)||!he(g)||!ae(y)||!he(y))throw new Error("Row index must be positive integers");if(this._size.length!==2)throw new Error("Only two dimensional matrix is supported");return ve(g,this._size[0]),ve(y,this._size[0]),n._swapRows(g,y,this._size[1],this._values,this._index,this._ptr),this},n._forEachRow=function(g,y,v,E,b){for(var N=E[g],x=E[g+1],F=N;F<x;F++)b(v[F],y[F])},n._swapRows=function(g,y,v,E,b,N){for(var x=0;x<v;x++){var F=N[x],M=N[x+1],S=h(g,F,M,b),$=h(y,F,M,b);if(S<M&&$<M&&b[S]===g&&b[$]===y){if(E){var C=E[S];E[S]=E[$],E[$]=C}continue}if(S<M&&b[S]===g&&($>=M||b[$]!==y)){var I=E?E[S]:void 0;b.splice($,0,y),E&&E.splice($,0,I),b.splice($<=S?S+1:S,1),E&&E.splice($<=S?S+1:S,1);continue}if($<M&&b[$]===y&&(S>=M||b[S]!==g)){var R=E?E[$]:void 0;b.splice(S,0,g),E&&E.splice(S,0,R),b.splice(S<=$?$+1:$,1),E&&E.splice(S<=$?$+1:$,1)}}},n},{isClass:!0}),mg="number",dg=["typed"];function gg(i){var t=i.match(/(0[box])([0-9a-fA-F]*)\.([0-9a-fA-F]*)/);if(t){var e={"0b":2,"0o":8,"0x":16}[t[1]],r=t[2],n=t[3];return{input:i,radix:e,integerPart:r,fractionalPart:n}}else return null}function vg(i){for(var t=parseInt(i.integerPart,i.radix),e=0,r=0;r<i.fractionalPart.length;r++){var n=parseInt(i.fractionalPart[r],i.radix);e+=n/Math.pow(i.radix,r+1)}var s=t+e;if(isNaN(s))throw new SyntaxError('String "'+i.input+'" is not a valid number');return s}var _g=dt(mg,dg,i=>{var{typed:t}=i,e=t("number",{"":function(){return 0},number:function(n){return n},string:function(n){if(n==="NaN")return NaN;var s=gg(n);if(s)return vg(s);var a=0,l=n.match(/(0[box][0-9a-fA-F]*)i([0-9]*)/);l&&(a=Number(l[2]),n=l[1]);var f=Number(n);if(isNaN(f))throw new SyntaxError('String "'+n+'" is not a valid number');if(l){if(f>2**a-1)throw new SyntaxError('String "'.concat(n,'" is out of range'));f>=2**(a-1)&&(f=f-2**a)}return f},BigNumber:function(n){return n.toNumber()},Fraction:function(n){return n.valueOf()},Unit:t.referToSelf(r=>n=>{var s=n.clone();return s.value=r(n.value),s}),null:function(n){return 0},"Unit, string | Unit":function(n,s){return n.toNumber(s)},"Array | Matrix":t.referToSelf(r=>n=>Br(n,r))});return e.fromJSON=function(r){return parseFloat(r.value)},e}),wg="bignumber",Dg=["typed","BigNumber"],yg=dt(wg,Dg,i=>{var{typed:t,BigNumber:e}=i;return t("bignumber",{"":function(){return new e(0)},number:function(n){return new e(n+"")},string:function(n){var s=n.match(/(0[box][0-9a-fA-F]*)i([0-9]*)/);if(s){var a=s[2],l=e(s[1]),f=new e(2).pow(Number(a));if(l.gt(f.sub(1)))throw new SyntaxError('String "'.concat(n,'" is out of range'));var h=new e(2).pow(Number(a)-1);return l.gte(h)?l.sub(f):l}return new e(n)},BigNumber:function(n){return n},Unit:t.referToSelf(r=>n=>{var s=n.clone();return s.value=r(n.value),s}),Fraction:function(n){return new e(n.n).div(n.d).times(n.s)},null:function(n){return new e(0)},"Array | Matrix":t.referToSelf(r=>n=>Br(n,r))})}),bg="fraction",Eg=["typed","Fraction"],Ag=dt(bg,Eg,i=>{var{typed:t,Fraction:e}=i;return t("fraction",{number:function(n){if(!isFinite(n)||isNaN(n))throw new Error(n+" cannot be represented as a fraction");return new e(n)},string:function(n){return new e(n)},"number, number":function(n,s){return new e(n,s)},null:function(n){return new e(0)},BigNumber:function(n){return new e(n.toString())},Fraction:function(n){return n},Unit:t.referToSelf(r=>n=>{var s=n.clone();return s.value=r(n.value),s}),Object:function(n){return new e(n)},"Array | Matrix":t.referToSelf(r=>n=>Br(n,r))})}),$f="matrix",xg=["typed","Matrix","DenseMatrix","SparseMatrix"],Cg=dt($f,xg,i=>{var{typed:t,Matrix:e,DenseMatrix:r,SparseMatrix:n}=i;return t($f,{"":function(){return s([])},string:function(l){return s([],l)},"string, string":function(l,f){return s([],l,f)},Array:function(l){return s(l)},Matrix:function(l){return s(l,l.storage())},"Array | Matrix, string":s,"Array | Matrix, string, string":s});function s(a,l,f){if(l==="dense"||l==="default"||l===void 0)return new r(a,f);if(l==="sparse")return new n(a,f);throw new TypeError("Unknown matrix type "+JSON.stringify(l)+".")}}),Of="unaryMinus",Fg=["typed"],Mg=dt(Of,Fg,i=>{var{typed:t}=i;return t(Of,{number:Cf,"Complex | BigNumber | Fraction":e=>e.neg(),Unit:t.referToSelf(e=>r=>{var n=r.clone();return n.value=t.find(e,n.valueType())(r.value),n}),"Array | Matrix":t.referToSelf(e=>r=>Br(r,e))})}),Rf="abs",Ng=["typed"],Sg=dt(Rf,Ng,i=>{var{typed:t}=i;return t(Rf,{number:bf,"Complex | BigNumber | Fraction | Unit":e=>e.abs(),"Array | Matrix":t.referToSelf(e=>r=>Br(r,e))})}),Lf="addScalar",Bg=["typed"],Ig=dt(Lf,Bg,i=>{var{typed:t}=i;return t(Lf,{"number, number":Ef,"Complex, Complex":function(r,n){return r.add(n)},"BigNumber, BigNumber":function(r,n){return r.plus(n)},"Fraction, Fraction":function(r,n){return r.add(n)},"Unit, Unit":t.referToSelf(e=>(r,n)=>{if(r.value===null||r.value===void 0)throw new Error("Parameter x contains a unit with undefined value");if(n.value===null||n.value===void 0)throw new Error("Parameter y contains a unit with undefined value");if(!r.equalBase(n))throw new Error("Units do not match");var s=r.clone();return s.value=t.find(e,[s.valueType(),n.valueType()])(s.value,n.value),s.fixPrefix=!1,s})})}),Pf="subtractScalar",Tg=["typed"],$g=dt(Pf,Tg,i=>{var{typed:t}=i;return t(Pf,{"number, number":Af,"Complex, Complex":function(r,n){return r.sub(n)},"BigNumber, BigNumber":function(r,n){return r.minus(n)},"Fraction, Fraction":function(r,n){return r.sub(n)},"Unit, Unit":t.referToSelf(e=>(r,n)=>{if(r.value===null||r.value===void 0)throw new Error("Parameter x contains a unit with undefined value");if(n.value===null||n.value===void 0)throw new Error("Parameter y contains a unit with undefined value");if(!r.equalBase(n))throw new Error("Units do not match");var s=r.clone();return s.value=t.find(e,[s.valueType(),n.valueType()])(s.value,n.value),s.fixPrefix=!1,s})})}),Og="matAlgo11xS0s",Rg=["typed","equalScalar"],bu=dt(Og,Rg,i=>{var{typed:t,equalScalar:e}=i;return function(n,s,a,l){var f=n._values,h=n._index,p=n._ptr,c=n._size,d=n._datatype;if(!f)throw new Error("Cannot perform operation on Pattern Sparse Matrix and Scalar value");var _=c[0],D=c[1],g,y=e,v=0,E=a;typeof d=="string"&&(g=d,y=t.find(e,[g,g]),v=t.convert(0,g),s=t.convert(s,g),E=t.find(a,[g,g]));for(var b=[],N=[],x=[],F=0;F<D;F++){x[F]=N.length;for(var M=p[F],S=p[F+1],$=M;$<S;$++){var C=h[$],I=l?E(s,f[$]):E(f[$],s);y(I,v)||(N.push(C),b.push(I))}}return x[D]=N.length,n.createSparseMatrix({values:b,index:N,ptr:x,size:[_,D],datatype:g})}}),Lg="matAlgo12xSfs",Pg=["typed","DenseMatrix"],oi=dt(Lg,Pg,i=>{var{typed:t,DenseMatrix:e}=i;return function(n,s,a,l){var f=n._values,h=n._index,p=n._ptr,c=n._size,d=n._datatype;if(!f)throw new Error("Cannot perform operation on Pattern Sparse Matrix and Scalar value");var _=c[0],D=c[1],g,y=a;typeof d=="string"&&(g=d,s=t.convert(s,g),y=t.find(a,[g,g]));for(var v=[],E=[],b=[],N=0;N<D;N++){for(var x=N+1,F=p[N],M=p[N+1],S=F;S<M;S++){var $=h[S];E[$]=f[S],b[$]=x}for(var C=0;C<_;C++)N===0&&(v[C]=[]),b[C]===x?v[C][N]=l?y(s,E[C]):y(E[C],s):v[C][N]=l?y(s,0):y(0,s)}return new e({data:v,size:[_,D],datatype:g})}}),zg="matAlgo14xDs",qg=["typed"],Eu=dt(zg,qg,i=>{var{typed:t}=i;return function(n,s,a,l){var f=n._data,h=n._size,p=n._datatype,c,d=a;typeof p=="string"&&(c=p,s=t.convert(s,c),d=t.find(a,[c,c]));var _=h.length>0?e(d,0,h,h[0],f,s,l):[];return n.createDenseMatrix({data:_,size:te(h),datatype:c})};function e(r,n,s,a,l,f,h){var p=[];if(n===s.length-1)for(var c=0;c<a;c++)p[c]=h?r(f,l[c]):r(l[c],f);else for(var d=0;d<a;d++)p[d]=e(r,n+1,s,s[n+1],l[d],f,h);return p}}),Ug="matAlgo02xDS0",kg=["typed","equalScalar"],Wg=dt(Ug,kg,i=>{var{typed:t,equalScalar:e}=i;return function(n,s,a,l){var f=n._data,h=n._size,p=n._datatype||n.getDataType(),c=s._values,d=s._index,_=s._ptr,D=s._size,g=s._datatype||s._data===void 0?s._datatype:s.getDataType();if(h.length!==D.length)throw new jt(h.length,D.length);if(h[0]!==D[0]||h[1]!==D[1])throw new RangeError("Dimension mismatch. Matrix A ("+h+") must match Matrix B ("+D+")");if(!c)throw new Error("Cannot perform operation on Dense Matrix and Pattern Sparse Matrix");var y=h[0],v=h[1],E,b=e,N=0,x=a;typeof p=="string"&&p===g&&p!=="mixed"&&(E=p,b=t.find(e,[E,E]),N=t.convert(0,E),x=t.find(a,[E,E]));for(var F=[],M=[],S=[],$=0;$<v;$++){S[$]=M.length;for(var C=_[$],I=_[$+1],R=C;R<I;R++){var U=d[R],q=l?x(c[R],f[U][$]):x(f[U][$],c[R]);b(q,N)||(M.push(U),F.push(q))}}return S[v]=M.length,s.createSparseMatrix({values:F,index:M,ptr:S,size:[y,v],datatype:p===n._datatype&&g===s._datatype?E:void 0})}}),Yg="matAlgo03xDSf",Zg=["typed"],ui=dt(Yg,Zg,i=>{var{typed:t}=i;return function(r,n,s,a){var l=r._data,f=r._size,h=r._datatype||r.getDataType(),p=n._values,c=n._index,d=n._ptr,_=n._size,D=n._datatype||n._data===void 0?n._datatype:n.getDataType();if(f.length!==_.length)throw new jt(f.length,_.length);if(f[0]!==_[0]||f[1]!==_[1])throw new RangeError("Dimension mismatch. Matrix A ("+f+") must match Matrix B ("+_+")");if(!p)throw new Error("Cannot perform operation on Dense Matrix and Pattern Sparse Matrix");var g=f[0],y=f[1],v,E=0,b=s;typeof h=="string"&&h===D&&h!=="mixed"&&(v=h,E=t.convert(0,v),b=t.find(s,[v,v]));for(var N=[],x=0;x<g;x++)N[x]=[];for(var F=[],M=[],S=0;S<y;S++){for(var $=S+1,C=d[S],I=d[S+1],R=C;R<I;R++){var U=c[R];F[U]=a?b(p[R],l[U][S]):b(l[U][S],p[R]),M[U]=$}for(var q=0;q<g;q++)M[q]===$?N[q][S]=F[q]:N[q][S]=a?b(E,l[q][S]):b(l[q][S],E)}return r.createDenseMatrix({data:N,size:[g,y],datatype:h===r._datatype&&D===n._datatype?v:void 0})}}),jg="matAlgo05xSfSf",Gg=["typed","equalScalar"],zf=dt(jg,Gg,i=>{var{typed:t,equalScalar:e}=i;return function(n,s,a){var l=n._values,f=n._index,h=n._ptr,p=n._size,c=n._datatype||n._data===void 0?n._datatype:n.getDataType(),d=s._values,_=s._index,D=s._ptr,g=s._size,y=s._datatype||s._data===void 0?s._datatype:s.getDataType();if(p.length!==g.length)throw new jt(p.length,g.length);if(p[0]!==g[0]||p[1]!==g[1])throw new RangeError("Dimension mismatch. Matrix A ("+p+") must match Matrix B ("+g+")");var v=p[0],E=p[1],b,N=e,x=0,F=a;typeof c=="string"&&c===y&&c!=="mixed"&&(b=c,N=t.find(e,[b,b]),x=t.convert(0,b),F=t.find(a,[b,b]));var M=l&&d?[]:void 0,S=[],$=[],C=M?[]:void 0,I=M?[]:void 0,R=[],U=[],q,k,P,K;for(k=0;k<E;k++){$[k]=S.length;var j=k+1;for(P=h[k],K=h[k+1];P<K;P++)q=f[P],S.push(q),R[q]=j,C&&(C[q]=l[P]);for(P=D[k],K=D[k+1];P<K;P++)q=_[P],R[q]!==j&&S.push(q),U[q]=j,I&&(I[q]=d[P]);if(M)for(P=$[k];P<S.length;){q=S[P];var Q=R[q],tt=U[q];if(Q===j||tt===j){var ft=Q===j?C[q]:x,vt=tt===j?I[q]:x,lt=F(ft,vt);N(lt,x)?S.splice(P,1):(M.push(lt),P++)}}}return $[E]=S.length,n.createSparseMatrix({values:M,index:S,ptr:$,size:[v,E],datatype:c===n._datatype&&y===s._datatype?b:void 0})}}),Kg="matAlgo13xDD",Jg=["typed"],Xg=dt(Kg,Jg,i=>{var{typed:t}=i;return function(n,s,a){var l=n._data,f=n._size,h=n._datatype,p=s._data,c=s._size,d=s._datatype,_=[];if(f.length!==c.length)throw new jt(f.length,c.length);for(var D=0;D<f.length;D++){if(f[D]!==c[D])throw new RangeError("Dimension mismatch. Matrix A ("+f+") must match Matrix B ("+c+")");_[D]=f[D]}var g,y=a;typeof h=="string"&&h===d&&(g=h,y=t.find(a,[g,g]));var v=_.length>0?e(y,0,_,_[0],l,p):[];return n.createDenseMatrix({data:v,size:_,datatype:g})};function e(r,n,s,a,l,f){var h=[];if(n===s.length-1)for(var p=0;p<a;p++)h[p]=r(l[p],f[p]);else for(var c=0;c<a;c++)h[c]=e(r,n+1,s,s[n+1],l[c],f[c]);return h}}),Hg="broadcast",Qg=["concat"],Vg=dt(Hg,Qg,i=>{var{concat:t}=i;return function(n,s){var a=Math.max(n._size.length,s._size.length);if(n._size.length===s._size.length&&n._size.every((D,g)=>D===s._size[g]))return[n,s];for(var l=e(n._size,a,0),f=e(s._size,a,0),h=[],p=0;p<a;p++)h[p]=Math.max(l[p],f[p]);As(l,h),As(f,h);var c=n.clone(),d=s.clone();c._size.length<a?c.reshape(e(c._size,a,1)):d._size.length<a&&d.reshape(e(d._size,a,1));for(var _=0;_<a;_++)c._size[_]<h[_]&&(c=r(c,h[_],_)),d._size[_]<h[_]&&(d=r(d,h[_],_));return[c,d]};function e(n,s,a){return[...Array(s-n.length).fill(a),...n]}function r(n,s,a){return t(...Array(s).fill(n),a)}}),tv="matrixAlgorithmSuite",ev=["typed","matrix","concat"],Rn=dt(tv,ev,i=>{var{typed:t,matrix:e,concat:r}=i,n=Xg({typed:t}),s=Eu({typed:t}),a=Vg({concat:r});return function(f){var h=f.elop,p=f.SD||f.DS,c;h?(c={"DenseMatrix, DenseMatrix":(g,y)=>n(...a(g,y),h),"Array, Array":(g,y)=>n(...a(e(g),e(y)),h).valueOf(),"Array, DenseMatrix":(g,y)=>n(...a(e(g),y),h),"DenseMatrix, Array":(g,y)=>n(...a(g,e(y)),h)},f.SS&&(c["SparseMatrix, SparseMatrix"]=(g,y)=>f.SS(...a(g,y),h,!1)),f.DS&&(c["DenseMatrix, SparseMatrix"]=(g,y)=>f.DS(...a(g,y),h,!1),c["Array, SparseMatrix"]=(g,y)=>f.DS(...a(e(g),y),h,!1)),p&&(c["SparseMatrix, DenseMatrix"]=(g,y)=>p(...a(y,g),h,!0),c["SparseMatrix, Array"]=(g,y)=>p(...a(e(y),g),h,!0))):(c={"DenseMatrix, DenseMatrix":t.referToSelf(g=>(y,v)=>n(...a(y,v),g)),"Array, Array":t.referToSelf(g=>(y,v)=>n(...a(e(y),e(v)),g).valueOf()),"Array, DenseMatrix":t.referToSelf(g=>(y,v)=>n(...a(e(y),v),g)),"DenseMatrix, Array":t.referToSelf(g=>(y,v)=>n(...a(y,e(v)),g))},f.SS&&(c["SparseMatrix, SparseMatrix"]=t.referToSelf(g=>(y,v)=>f.SS(...a(y,v),g,!1))),f.DS&&(c["DenseMatrix, SparseMatrix"]=t.referToSelf(g=>(y,v)=>f.DS(...a(y,v),g,!1)),c["Array, SparseMatrix"]=t.referToSelf(g=>(y,v)=>f.DS(...a(e(y),v),g,!1))),p&&(c["SparseMatrix, DenseMatrix"]=t.referToSelf(g=>(y,v)=>p(...a(v,y),g,!0)),c["SparseMatrix, Array"]=t.referToSelf(g=>(y,v)=>p(...a(e(v),y),g,!0))));var d=f.scalar||"any",_=f.Ds||f.Ss;_&&(h?(c["DenseMatrix,"+d]=(g,y)=>s(g,y,h,!1),c[d+", DenseMatrix"]=(g,y)=>s(y,g,h,!0),c["Array,"+d]=(g,y)=>s(e(g),y,h,!1).valueOf(),c[d+", Array"]=(g,y)=>s(e(y),g,h,!0).valueOf()):(c["DenseMatrix,"+d]=t.referToSelf(g=>(y,v)=>s(y,v,g,!1)),c[d+", DenseMatrix"]=t.referToSelf(g=>(y,v)=>s(v,y,g,!0)),c["Array,"+d]=t.referToSelf(g=>(y,v)=>s(e(y),v,g,!1).valueOf()),c[d+", Array"]=t.referToSelf(g=>(y,v)=>s(e(v),y,g,!0).valueOf())));var D=f.sS!==void 0?f.sS:f.Ss;return h?(f.Ss&&(c["SparseMatrix,"+d]=(g,y)=>f.Ss(g,y,h,!1)),D&&(c[d+", SparseMatrix"]=(g,y)=>D(y,g,h,!0))):(f.Ss&&(c["SparseMatrix,"+d]=t.referToSelf(g=>(y,v)=>f.Ss(y,v,g,!1))),D&&(c[d+", SparseMatrix"]=t.referToSelf(g=>(y,v)=>D(v,y,g,!0)))),h&&h.signatures&&Bl(c,h.signatures),c}}),rv="matAlgo01xDSid",nv=["typed"],qf=dt(rv,nv,i=>{var{typed:t}=i;return function(r,n,s,a){var l=r._data,f=r._size,h=r._datatype||r.getDataType(),p=n._values,c=n._index,d=n._ptr,_=n._size,D=n._datatype||n._data===void 0?n._datatype:n.getDataType();if(f.length!==_.length)throw new jt(f.length,_.length);if(f[0]!==_[0]||f[1]!==_[1])throw new RangeError("Dimension mismatch. Matrix A ("+f+") must match Matrix B ("+_+")");if(!p)throw new Error("Cannot perform operation on Dense Matrix and Pattern Sparse Matrix");var g=f[0],y=f[1],v=typeof h=="string"&&h!=="mixed"&&h===D?h:void 0,E=v?t.find(s,[v,v]):s,b,N,x=[];for(b=0;b<g;b++)x[b]=[];var F=[],M=[];for(N=0;N<y;N++){for(var S=N+1,$=d[N],C=d[N+1],I=$;I<C;I++)b=c[I],F[b]=a?E(p[I],l[b][N]):E(l[b][N],p[I]),M[b]=S;for(b=0;b<g;b++)M[b]===S?x[b][N]=F[b]:x[b][N]=l[b][N]}return r.createDenseMatrix({data:x,size:[g,y],datatype:h===r._datatype&&D===n._datatype?v:void 0})}}),iv="matAlgo04xSidSid",sv=["typed","equalScalar"],ov=dt(iv,sv,i=>{var{typed:t,equalScalar:e}=i;return function(n,s,a){var l=n._values,f=n._index,h=n._ptr,p=n._size,c=n._datatype||n._data===void 0?n._datatype:n.getDataType(),d=s._values,_=s._index,D=s._ptr,g=s._size,y=s._datatype||s._data===void 0?s._datatype:s.getDataType();if(p.length!==g.length)throw new jt(p.length,g.length);if(p[0]!==g[0]||p[1]!==g[1])throw new RangeError("Dimension mismatch. Matrix A ("+p+") must match Matrix B ("+g+")");var v=p[0],E=p[1],b,N=e,x=0,F=a;typeof c=="string"&&c===y&&c!=="mixed"&&(b=c,N=t.find(e,[b,b]),x=t.convert(0,b),F=t.find(a,[b,b]));var M=l&&d?[]:void 0,S=[],$=[],C=l&&d?[]:void 0,I=l&&d?[]:void 0,R=[],U=[],q,k,P,K,j;for(k=0;k<E;k++){$[k]=S.length;var Q=k+1;for(K=h[k],j=h[k+1],P=K;P<j;P++)q=f[P],S.push(q),R[q]=Q,C&&(C[q]=l[P]);for(K=D[k],j=D[k+1],P=K;P<j;P++)if(q=_[P],R[q]===Q){if(C){var tt=F(C[q],d[P]);N(tt,x)?R[q]=null:C[q]=tt}}else S.push(q),U[q]=Q,I&&(I[q]=d[P]);if(C&&I)for(P=$[k];P<S.length;)q=S[P],R[q]===Q?(M[P]=C[q],P++):U[q]===Q?(M[P]=I[q],P++):S.splice(P,1)}return $[E]=S.length,n.createSparseMatrix({values:M,index:S,ptr:$,size:[v,E],datatype:c===n._datatype&&y===s._datatype?b:void 0})}}),uv="matAlgo10xSids",av=["typed","DenseMatrix"],Uf=dt(uv,av,i=>{var{typed:t,DenseMatrix:e}=i;return function(n,s,a,l){var f=n._values,h=n._index,p=n._ptr,c=n._size,d=n._datatype;if(!f)throw new Error("Cannot perform operation on Pattern Sparse Matrix and Scalar value");var _=c[0],D=c[1],g,y=a;typeof d=="string"&&(g=d,s=t.convert(s,g),y=t.find(a,[g,g]));for(var v=[],E=[],b=[],N=0;N<D;N++){for(var x=N+1,F=p[N],M=p[N+1],S=F;S<M;S++){var $=h[S];E[$]=f[S],b[$]=x}for(var C=0;C<_;C++)N===0&&(v[C]=[]),b[C]===x?v[C][N]=l?y(s,E[C]):y(E[C],s):v[C][N]=s}return new e({data:v,size:[_,D],datatype:g})}}),lv="multiplyScalar",fv=["typed"],cv=dt(lv,fv,i=>{var{typed:t}=i;return t("multiplyScalar",{"number, number":xf,"Complex, Complex":function(r,n){return r.mul(n)},"BigNumber, BigNumber":function(r,n){return r.times(n)},"Fraction, Fraction":function(r,n){return r.mul(n)},"number | Fraction | BigNumber | Complex, Unit":(e,r)=>r.multiply(e),"Unit, number | Fraction | BigNumber | Complex | Unit":(e,r)=>e.multiply(r)})}),kf="multiply",hv=["typed","matrix","addScalar","multiplyScalar","equalScalar","dot"],pv=dt(kf,hv,i=>{var{typed:t,matrix:e,addScalar:r,multiplyScalar:n,equalScalar:s,dot:a}=i,l=bu({typed:t,equalScalar:s}),f=Eu({typed:t});function h(x,F){switch(x.length){case 1:switch(F.length){case 1:if(x[0]!==F[0])throw new RangeError("Dimension mismatch in multiplication. Vectors must have the same length");break;case 2:if(x[0]!==F[0])throw new RangeError("Dimension mismatch in multiplication. Vector length ("+x[0]+") must match Matrix rows ("+F[0]+")");break;default:throw new Error("Can only multiply a 1 or 2 dimensional matrix (Matrix B has "+F.length+" dimensions)")}break;case 2:switch(F.length){case 1:if(x[1]!==F[0])throw new RangeError("Dimension mismatch in multiplication. Matrix columns ("+x[1]+") must match Vector length ("+F[0]+")");break;case 2:if(x[1]!==F[0])throw new RangeError("Dimension mismatch in multiplication. Matrix A columns ("+x[1]+") must match Matrix B rows ("+F[0]+")");break;default:throw new Error("Can only multiply a 1 or 2 dimensional matrix (Matrix B has "+F.length+" dimensions)")}break;default:throw new Error("Can only multiply a 1 or 2 dimensional matrix (Matrix A has "+x.length+" dimensions)")}}function p(x,F,M){if(M===0)throw new Error("Cannot multiply two empty vectors");return a(x,F)}function c(x,F){if(F.storage()!=="dense")throw new Error("Support for SparseMatrix not implemented");return d(x,F)}function d(x,F){var M=x._data,S=x._size,$=x._datatype||x.getDataType(),C=F._data,I=F._size,R=F._datatype||F.getDataType(),U=S[0],q=I[1],k,P=r,K=n;$&&R&&$===R&&typeof $=="string"&&$!=="mixed"&&(k=$,P=t.find(r,[k,k]),K=t.find(n,[k,k]));for(var j=[],Q=0;Q<q;Q++){for(var tt=K(M[0],C[0][Q]),ft=1;ft<U;ft++)tt=P(tt,K(M[ft],C[ft][Q]));j[Q]=tt}return x.createDenseMatrix({data:j,size:[q],datatype:$===x._datatype&&R===F._datatype?k:void 0})}var _=t("_multiplyMatrixVector",{"DenseMatrix, any":g,"SparseMatrix, any":E}),D=t("_multiplyMatrixMatrix",{"DenseMatrix, DenseMatrix":y,"DenseMatrix, SparseMatrix":v,"SparseMatrix, DenseMatrix":b,"SparseMatrix, SparseMatrix":N});function g(x,F){var M=x._data,S=x._size,$=x._datatype||x.getDataType(),C=F._data,I=F._datatype||F.getDataType(),R=S[0],U=S[1],q,k=r,P=n;$&&I&&$===I&&typeof $=="string"&&$!=="mixed"&&(q=$,k=t.find(r,[q,q]),P=t.find(n,[q,q]));for(var K=[],j=0;j<R;j++){for(var Q=M[j],tt=P(Q[0],C[0]),ft=1;ft<U;ft++)tt=k(tt,P(Q[ft],C[ft]));K[j]=tt}return x.createDenseMatrix({data:K,size:[R],datatype:$===x._datatype&&I===F._datatype?q:void 0})}function y(x,F){var M=x._data,S=x._size,$=x._datatype||x.getDataType(),C=F._data,I=F._size,R=F._datatype||F.getDataType(),U=S[0],q=S[1],k=I[1],P,K=r,j=n;$&&R&&$===R&&typeof $=="string"&&$!=="mixed"&&$!=="mixed"&&(P=$,K=t.find(r,[P,P]),j=t.find(n,[P,P]));for(var Q=[],tt=0;tt<U;tt++){var ft=M[tt];Q[tt]=[];for(var vt=0;vt<k;vt++){for(var lt=j(ft[0],C[0][vt]),wt=1;wt<q;wt++)lt=K(lt,j(ft[wt],C[wt][vt]));Q[tt][vt]=lt}}return x.createDenseMatrix({data:Q,size:[U,k],datatype:$===x._datatype&&R===F._datatype?P:void 0})}function v(x,F){var M=x._data,S=x._size,$=x._datatype||x.getDataType(),C=F._values,I=F._index,R=F._ptr,U=F._size,q=F._datatype||F._data===void 0?F._datatype:F.getDataType();if(!C)throw new Error("Cannot multiply Dense Matrix times Pattern only Matrix");var k=S[0],P=U[1],K,j=r,Q=n,tt=s,ft=0;$&&q&&$===q&&typeof $=="string"&&$!=="mixed"&&(K=$,j=t.find(r,[K,K]),Q=t.find(n,[K,K]),tt=t.find(s,[K,K]),ft=t.convert(0,K));for(var vt=[],lt=[],wt=[],yt=F.createSparseMatrix({values:vt,index:lt,ptr:wt,size:[k,P],datatype:$===x._datatype&&q===F._datatype?K:void 0}),St=0;St<P;St++){wt[St]=lt.length;var bt=R[St],ee=R[St+1];if(ee>bt)for(var It=0,Mt=0;Mt<k;Mt++){for(var ie=Mt+1,Ht=void 0,zt=bt;zt<ee;zt++){var Gt=I[zt];It!==ie?(Ht=Q(M[Mt][Gt],C[zt]),It=ie):Ht=j(Ht,Q(M[Mt][Gt],C[zt]))}It===ie&&!tt(Ht,ft)&&(lt.push(Mt),vt.push(Ht))}}return wt[P]=lt.length,yt}function E(x,F){var M=x._values,S=x._index,$=x._ptr,C=x._datatype||x._data===void 0?x._datatype:x.getDataType();if(!M)throw new Error("Cannot multiply Pattern only Matrix times Dense Matrix");var I=F._data,R=F._datatype||F.getDataType(),U=x._size[0],q=F._size[0],k=[],P=[],K=[],j,Q=r,tt=n,ft=s,vt=0;C&&R&&C===R&&typeof C=="string"&&C!=="mixed"&&(j=C,Q=t.find(r,[j,j]),tt=t.find(n,[j,j]),ft=t.find(s,[j,j]),vt=t.convert(0,j));var lt=[],wt=[];K[0]=0;for(var yt=0;yt<q;yt++){var St=I[yt];if(!ft(St,vt))for(var bt=$[yt],ee=$[yt+1],It=bt;It<ee;It++){var Mt=S[It];wt[Mt]?lt[Mt]=Q(lt[Mt],tt(St,M[It])):(wt[Mt]=!0,P.push(Mt),lt[Mt]=tt(St,M[It]))}}for(var ie=P.length,Ht=0;Ht<ie;Ht++){var zt=P[Ht];k[Ht]=lt[zt]}return K[1]=P.length,x.createSparseMatrix({values:k,index:P,ptr:K,size:[U,1],datatype:C===x._datatype&&R===F._datatype?j:void 0})}function b(x,F){var M=x._values,S=x._index,$=x._ptr,C=x._datatype||x._data===void 0?x._datatype:x.getDataType();if(!M)throw new Error("Cannot multiply Pattern only Matrix times Dense Matrix");var I=F._data,R=F._datatype||F.getDataType(),U=x._size[0],q=F._size[0],k=F._size[1],P,K=r,j=n,Q=s,tt=0;C&&R&&C===R&&typeof C=="string"&&C!=="mixed"&&(P=C,K=t.find(r,[P,P]),j=t.find(n,[P,P]),Q=t.find(s,[P,P]),tt=t.convert(0,P));for(var ft=[],vt=[],lt=[],wt=x.createSparseMatrix({values:ft,index:vt,ptr:lt,size:[U,k],datatype:C===x._datatype&&R===F._datatype?P:void 0}),yt=[],St=[],bt=0;bt<k;bt++){lt[bt]=vt.length;for(var ee=bt+1,It=0;It<q;It++){var Mt=I[It][bt];if(!Q(Mt,tt))for(var ie=$[It],Ht=$[It+1],zt=ie;zt<Ht;zt++){var Gt=S[zt];St[Gt]!==ee?(St[Gt]=ee,vt.push(Gt),yt[Gt]=j(Mt,M[zt])):yt[Gt]=K(yt[Gt],j(Mt,M[zt]))}}for(var Ce=lt[bt],ir=vt.length,Me=Ce;Me<ir;Me++){var Xr=vt[Me];ft[Me]=yt[Xr]}}return lt[k]=vt.length,wt}function N(x,F){var M=x._values,S=x._index,$=x._ptr,C=x._datatype||x._data===void 0?x._datatype:x.getDataType(),I=F._values,R=F._index,U=F._ptr,q=F._datatype||F._data===void 0?F._datatype:F.getDataType(),k=x._size[0],P=F._size[1],K=M&&I,j,Q=r,tt=n;C&&q&&C===q&&typeof C=="string"&&C!=="mixed"&&(j=C,Q=t.find(r,[j,j]),tt=t.find(n,[j,j]));for(var ft=K?[]:void 0,vt=[],lt=[],wt=x.createSparseMatrix({values:ft,index:vt,ptr:lt,size:[k,P],datatype:C===x._datatype&&q===F._datatype?j:void 0}),yt=K?[]:void 0,St=[],bt,ee,It,Mt,ie,Ht,zt,Gt,Ce=0;Ce<P;Ce++){lt[Ce]=vt.length;var ir=Ce+1;for(ie=U[Ce],Ht=U[Ce+1],Mt=ie;Mt<Ht;Mt++)if(Gt=R[Mt],K)for(ee=$[Gt],It=$[Gt+1],bt=ee;bt<It;bt++)zt=S[bt],St[zt]!==ir?(St[zt]=ir,vt.push(zt),yt[zt]=tt(I[Mt],M[bt])):yt[zt]=Q(yt[zt],tt(I[Mt],M[bt]));else for(ee=$[Gt],It=$[Gt+1],bt=ee;bt<It;bt++)zt=S[bt],St[zt]!==ir&&(St[zt]=ir,vt.push(zt));if(K)for(var Me=lt[Ce],Xr=vt.length,vn=Me;vn<Xr;vn++){var Hr=vt[vn];ft[vn]=yt[Hr]}}return lt[P]=vt.length,wt}return t(kf,n,{"Array, Array":t.referTo("Matrix, Matrix",x=>(F,M)=>{h(Ae(F),Ae(M));var S=x(e(F),e(M));return fe(S)?S.valueOf():S}),"Matrix, Matrix":function(F,M){var S=F.size(),$=M.size();return h(S,$),S.length===1?$.length===1?p(F,M,S[0]):c(F,M):$.length===1?_(F,M):D(F,M)},"Matrix, Array":t.referTo("Matrix,Matrix",x=>(F,M)=>x(F,e(M))),"Array, Matrix":t.referToSelf(x=>(F,M)=>x(e(F,M.storage()),M)),"SparseMatrix, any":function(F,M){return l(F,M,n,!1)},"DenseMatrix, any":function(F,M){return f(F,M,n,!1)},"any, SparseMatrix":function(F,M){return l(M,F,n,!0)},"any, DenseMatrix":function(F,M){return f(M,F,n,!0)},"Array, any":function(F,M){return f(e(F),M,n,!1).valueOf()},"any, Array":function(F,M){return f(e(M),F,n,!0).valueOf()},"any, any":n,"any, any, ...any":t.referToSelf(x=>(F,M,S)=>{for(var $=x(F,M),C=0;C<S.length;C++)$=x($,S[C]);return $})})}),Wf="subtract",mv=["typed","matrix","equalScalar","subtractScalar","unaryMinus","DenseMatrix","concat"],dv=dt(Wf,mv,i=>{var{typed:t,matrix:e,equalScalar:r,subtractScalar:n,unaryMinus:s,DenseMatrix:a,concat:l}=i,f=qf({typed:t}),h=ui({typed:t}),p=zf({typed:t,equalScalar:r}),c=Uf({typed:t,DenseMatrix:a}),d=oi({typed:t,DenseMatrix:a}),_=Rn({typed:t,matrix:e,concat:l});return t(Wf,{"any, any":n},_({elop:n,SS:p,DS:f,SD:h,Ss:d,sS:c}))}),gv="matAlgo07xSSf",vv=["typed","DenseMatrix"],zs=dt(gv,vv,i=>{var{typed:t,DenseMatrix:e}=i;return function(s,a,l){var f=s._size,h=s._datatype||s._data===void 0?s._datatype:s.getDataType(),p=a._size,c=a._datatype||a._data===void 0?a._datatype:a.getDataType();if(f.length!==p.length)throw new jt(f.length,p.length);if(f[0]!==p[0]||f[1]!==p[1])throw new RangeError("Dimension mismatch. Matrix A ("+f+") must match Matrix B ("+p+")");var d=f[0],_=f[1],D,g=0,y=l;typeof h=="string"&&h===c&&h!=="mixed"&&(D=h,g=t.convert(0,D),y=t.find(l,[D,D]));var v,E,b=[];for(v=0;v<d;v++)b[v]=[];var N=[],x=[],F=[],M=[];for(E=0;E<_;E++){var S=E+1;for(r(s,E,F,N,S),r(a,E,M,x,S),v=0;v<d;v++){var $=F[v]===S?N[v]:g,C=M[v]===S?x[v]:g;b[v][E]=y($,C)}}return new e({data:b,size:[d,_],datatype:h===s._datatype&&c===a._datatype?D:void 0})};function r(n,s,a,l,f){for(var h=n._values,p=n._index,c=n._ptr,d=c[s],_=c[s+1];d<_;d++){var D=p[d];a[D]=f,l[D]=h[d]}}}),Yf="conj",_v=["typed"],wv=dt(Yf,_v,i=>{var{typed:t}=i;return t(Yf,{"number | BigNumber | Fraction":e=>e,Complex:e=>e.conjugate(),"Array | Matrix":t.referToSelf(e=>r=>Br(r,e))})}),Zf="concat",Dv=["typed","matrix","isInteger"],yv=dt(Zf,Dv,i=>{var{typed:t,matrix:e,isInteger:r}=i;return t(Zf,{"...Array | Matrix | number | BigNumber":function(s){var a,l=s.length,f=-1,h,p=!1,c=[];for(a=0;a<l;a++){var d=s[a];if(fe(d)&&(p=!0),ae(d)||ye(d)){if(a!==l-1)throw new Error("Dimension must be specified as last argument");if(h=f,f=d.valueOf(),!r(f))throw new TypeError("Integer number expected for dimension");if(f<0||a>0&&f>h)throw new fn(f,h+1)}else{var _=te(d).valueOf(),D=Ae(_);if(c[a]=_,h=f,f=D.length-1,a>0&&f!==h)throw new jt(h+1,f+1)}}if(c.length===0)throw new SyntaxError("At least one matrix expected");for(var g=c.shift();c.length;)g=Hl(g,c.shift(),f);return p?e(g):g},"...string":function(s){return s.join("")}})}),jf="count",bv=["typed","size","prod"],Ev=dt(jf,bv,i=>{var{typed:t,size:e,prod:r}=i;return t(jf,{string:function(s){return s.length},"Matrix | Array":function(s){return r(e(s))}})}),Gf="identity",Av=["typed","config","matrix","BigNumber","DenseMatrix","SparseMatrix"],xv=dt(Gf,Av,i=>{var{typed:t,config:e,matrix:r,BigNumber:n,DenseMatrix:s,SparseMatrix:a}=i;return t(Gf,{"":function(){return e.matrix==="Matrix"?r([]):[]},string:function(p){return r(p)},"number | BigNumber":function(p){return f(p,p,e.matrix==="Matrix"?"dense":void 0)},"number | BigNumber, string":function(p,c){return f(p,p,c)},"number | BigNumber, number | BigNumber":function(p,c){return f(p,c,e.matrix==="Matrix"?"dense":void 0)},"number | BigNumber, number | BigNumber, string":function(p,c,d){return f(p,c,d)},Array:function(p){return l(p)},"Array, string":function(p,c){return l(p,c)},Matrix:function(p){return l(p.valueOf(),p.storage())},"Matrix, string":function(p,c){return l(p.valueOf(),c)}});function l(h,p){switch(h.length){case 0:return p?r(p):[];case 1:return f(h[0],h[0],p);case 2:return f(h[0],h[1],p);default:throw new Error("Vector containing two values expected")}}function f(h,p,c){var d=ye(h)||ye(p)?n:null;if(ye(h)&&(h=h.toNumber()),ye(p)&&(p=p.toNumber()),!he(h)||h<1)throw new Error("Parameters in function identity must be positive integers");if(!he(p)||p<1)throw new Error("Parameters in function identity must be positive integers");var _=d?new n(1):1,D=d?new d(0):0,g=[h,p];if(c){if(c==="sparse")return a.diagonal(g,_,0,D);if(c==="dense")return s.diagonal(g,_,0,D);throw new TypeError('Unknown matrix type "'.concat(c,'"'))}for(var y=au([],g,D),v=h<p?h:p,E=0;E<v;E++)y[E][E]=_;return y}}),Kf="kron",Cv=["typed","matrix","multiplyScalar"],Fv=dt(Kf,Cv,i=>{var{typed:t,matrix:e,multiplyScalar:r}=i;return t(Kf,{"Matrix, Matrix":function(a,l){return e(n(a.toArray(),l.toArray()))},"Matrix, Array":function(a,l){return e(n(a.toArray(),l))},"Array, Matrix":function(a,l){return e(n(a,l.toArray()))},"Array, Array":n});function n(s,a){if(Ae(s).length===1&&(s=[s]),Ae(a).length===1&&(a=[a]),Ae(s).length>2||Ae(a).length>2)throw new RangeError("Vectors with dimensions greater then 2 are not supported expected (Size x = "+JSON.stringify(s.length)+", y = "+JSON.stringify(a.length)+")");var l=[],f=[];return s.map(function(h){return a.map(function(p){return f=[],l.push(f),h.map(function(c){return p.map(function(d){return f.push(r(c,d))})})})})&&l}});function Mv(){throw new Error('No "bignumber" implementation available')}function Nv(){throw new Error('No "fraction" implementation available')}function Sv(){throw new Error('No "matrix" implementation available')}var Jf="reshape",Bv=["typed","isInteger","matrix"],Iv=dt(Jf,Bv,i=>{var{typed:t,isInteger:e}=i;return t(Jf,{"Matrix, Array":function(n,s){return n.reshape(s,!0)},"Array, Array":function(n,s){return s.forEach(function(a){if(!e(a))throw new TypeError("Invalid size for dimension: "+a)}),fu(n,s)}})}),Xf="size",Tv=["typed","config","?matrix"],$v=dt(Xf,Tv,i=>{var{typed:t,config:e,matrix:r}=i;return t(Xf,{Matrix:function(s){return s.create(s.size())},Array:Ae,string:function(s){return e.matrix==="Array"?[s.length]:r([s.length])},"number | Complex | BigNumber | Unit | boolean | null":function(s){return e.matrix==="Array"?[]:r?r([]):Sv()}})}),Hf="transpose",Ov=["typed","matrix"],Rv=dt(Hf,Ov,i=>{var{typed:t,matrix:e}=i;return t(Hf,{Array:a=>r(e(a)).valueOf(),Matrix:r,any:te});function r(a){var l=a.size(),f;switch(l.length){case 1:f=a.clone();break;case 2:{var h=l[0],p=l[1];if(p===0)throw new RangeError("Cannot transpose a 2D matrix with no columns (size: "+se(l)+")");switch(a.storage()){case"dense":f=n(a,h,p);break;case"sparse":f=s(a,h,p);break}}break;default:throw new RangeError("Matrix must be a vector or two dimensional (size: "+se(l)+")")}return f}function n(a,l,f){for(var h=a._data,p=[],c,d=0;d<f;d++){c=p[d]=[];for(var _=0;_<l;_++)c[_]=te(h[_][d])}return a.createDenseMatrix({data:p,size:[f,l],datatype:a._datatype})}function s(a,l,f){for(var h=a._values,p=a._index,c=a._ptr,d=h?[]:void 0,_=[],D=[],g=[],y=0;y<l;y++)g[y]=0;var v,E,b;for(v=0,E=p.length;v<E;v++)g[p[v]]++;for(var N=0,x=0;x<l;x++)D.push(N),N+=g[x],g[x]=D[x];for(D.push(N),b=0;b<f;b++)for(var F=c[b],M=c[b+1],S=F;S<M;S++){var $=g[p[S]]++;_[$]=b,h&&(d[$]=te(h[S]))}return a.createSparseMatrix({values:d,index:_,ptr:D,size:[f,l],datatype:a._datatype})}}),Qf="ctranspose",Lv=["typed","transpose","conj"],Pv=dt(Qf,Lv,i=>{var{typed:t,transpose:e,conj:r}=i;return t(Qf,{any:function(s){return r(e(s))}})}),Vf="mode",zv=["typed","isNaN","isNumeric"],qv=dt(Vf,zv,i=>{var{typed:t,isNaN:e,isNumeric:r}=i;return t(Vf,{"Array | Matrix":n,"...":function(a){return n(a)}});function n(s){s=hu(s.valueOf());var a=s.length;if(a===0)throw new Error("Cannot calculate mode of an empty array");for(var l={},f=[],h=0,p=0;p<s.length;p++){var c=s[p];if(r(c)&&e(c))throw new Error("Cannot calculate mode of an array containing NaN values");c in l||(l[c]=0),l[c]++,l[c]===h?f.push(c):l[c]>h&&(h=l[c],f=[c])}return f}});function dn(i,t,e){var r;return String(i).indexOf("Unexpected type")!==-1?(r=arguments.length>2?" (type: "+ln(e)+", value: "+JSON.stringify(e)+")":" (type: "+i.data.actual+")",new TypeError("Cannot calculate "+t+", unexpected type of argument"+r)):String(i).indexOf("complex numbers")!==-1?(r=arguments.length>2?" (type: "+ln(e)+", value: "+JSON.stringify(e)+")":"",new TypeError("Cannot calculate "+t+", no ordering relation is defined for complex numbers"+r)):i}var tc="prod",Uv=["typed","config","multiplyScalar","numeric"],kv=dt(tc,Uv,i=>{var{typed:t,config:e,multiplyScalar:r,numeric:n}=i;return t(tc,{"Array | Matrix":s,"Array | Matrix, number | BigNumber":function(l,f){throw new Error("prod(A, dim) is not yet supported")},"...":function(l){return s(l)}});function s(a){var l;if(zi(a,function(f){try{l=l===void 0?f:r(l,f)}catch(h){throw dn(h,"prod",f)}}),typeof l=="string"&&(l=n(l,e.number)),l===void 0)throw new Error("Cannot calculate prod of an empty array");return l}}),Wv="numeric",Yv=["number","?bignumber","?fraction"],Zv=dt(Wv,Yv,i=>{var{number:t,bignumber:e,fraction:r}=i,n={string:!0,number:!0,BigNumber:!0,Fraction:!0},s={number:a=>t(a),BigNumber:e?a=>e(a):Mv,Fraction:r?a=>r(a):Nv};return function(l){var f=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"number",h=arguments.length>2?arguments[2]:void 0;if(h!==void 0)throw new SyntaxError("numeric() takes one or two arguments");var p=ln(l);if(!(p in n))throw new TypeError("Cannot convert "+l+' of type "'+p+'"; valid input types are '+Object.keys(n).join(", "));if(!(f in s))throw new TypeError("Cannot convert "+l+' to type "'+f+'"; valid output types are '+Object.keys(s).join(", "));return f===p?l:s[f](l)}}),ec="divideScalar",jv=["typed","numeric"],Gv=dt(ec,jv,i=>{var{typed:t,numeric:e}=i;return t(ec,{"number, number":function(n,s){return n/s},"Complex, Complex":function(n,s){return n.div(s)},"BigNumber, BigNumber":function(n,s){return n.div(s)},"Fraction, Fraction":function(n,s){return n.div(s)},"Unit, number | Complex | Fraction | BigNumber | Unit":(r,n)=>r.divide(n),"number | Fraction | Complex | BigNumber, Unit":(r,n)=>n.divideInto(r)})}),rc="pow",Kv=["typed","config","identity","multiply","matrix","inv","fraction","number","Complex"],Jv=dt(rc,Kv,i=>{var{typed:t,config:e,identity:r,multiply:n,matrix:s,inv:a,number:l,fraction:f,Complex:h}=i;return t(rc,{"number, number":p,"Complex, Complex":function(D,g){return D.pow(g)},"BigNumber, BigNumber":function(D,g){return g.isInteger()||D>=0||e.predictable?D.pow(g):new h(D.toNumber(),0).pow(g.toNumber(),0)},"Fraction, Fraction":function(D,g){var y=D.pow(g);if(y!=null)return y;if(e.predictable)throw new Error("Result of pow is non-rational and cannot be expressed as a fraction");return p(D.valueOf(),g.valueOf())},"Array, number":c,"Array, BigNumber":function(D,g){return c(D,g.toNumber())},"Matrix, number":d,"Matrix, BigNumber":function(D,g){return d(D,g.toNumber())},"Unit, number | BigNumber":function(D,g){return D.pow(g)}});function p(_,D){if(e.predictable&&!he(D)&&_<0)try{var g=f(D),y=l(g);if((D===y||Math.abs((D-y)/D)<1e-14)&&g.d%2===1)return(g.n%2===0?1:-1)*Math.pow(-_,D)}catch{}return e.predictable&&(_<-1&&D===1/0||_>-1&&_<0&&D===-1/0)?NaN:he(D)||_>=0||e.predictable?Ff(_,D):_*_<1&&D===1/0||_*_>1&&D===-1/0?0:new h(_,0).pow(D,0)}function c(_,D){if(!he(D))throw new TypeError("For A^b, b must be an integer (value is "+D+")");var g=Ae(_);if(g.length!==2)throw new Error("For A^b, A must be 2 dimensional (A has "+g.length+" dimensions)");if(g[0]!==g[1])throw new Error("For A^b, A must be square (size is "+g[0]+"x"+g[1]+")");if(D<0)try{return c(a(_),-D)}catch(E){throw E.message==="Cannot calculate inverse, determinant is zero"?new TypeError("For A^b, when A is not invertible, b must be a positive integer (value is "+D+")"):E}for(var y=r(g[0]).valueOf(),v=_;D>=1;)(D&1)===1&&(y=n(v,y)),D>>=1,v=n(v,v);return y}function d(_,D){return s(c(_.valueOf(),D))}}),nc="dotDivide",Xv=["typed","matrix","equalScalar","divideScalar","DenseMatrix","concat"],Hv=dt(nc,Xv,i=>{var{typed:t,matrix:e,equalScalar:r,divideScalar:n,DenseMatrix:s,concat:a}=i,l=Wg({typed:t,equalScalar:r}),f=ui({typed:t}),h=zs({typed:t,DenseMatrix:s}),p=bu({typed:t,equalScalar:r}),c=oi({typed:t,DenseMatrix:s}),d=Rn({typed:t,matrix:e,concat:a});return t(nc,d({elop:n,SS:h,DS:f,SD:l,Ss:p,sS:c}))}),qs="compare",Qv=["typed","config","matrix","equalScalar","BigNumber","Fraction","DenseMatrix","concat"],Vv=dt(qs,Qv,i=>{var{typed:t,config:e,equalScalar:r,matrix:n,BigNumber:s,Fraction:a,DenseMatrix:l,concat:f}=i,h=ui({typed:t}),p=zf({typed:t,equalScalar:r}),c=oi({typed:t,DenseMatrix:l}),d=Rn({typed:t,matrix:n,concat:f}),_=Ls({typed:t});return t(qs,t1({typed:t,config:e}),{"boolean, boolean":function(g,y){return g===y?0:g>y?1:-1},"BigNumber, BigNumber":function(g,y){return Rs(g,y,e.epsilon)?new s(0):new s(g.cmp(y))},"Fraction, Fraction":function(g,y){return new a(g.compare(y))},"Complex, Complex":function(){throw new TypeError("No ordering relation is defined for complex numbers")}},_,d({SS:p,DS:h,Ss:c}))}),t1=dt(qs,["typed","config"],i=>{var{typed:t,config:e}=i;return t(qs,{"number, number":function(n,s){return On(n,s,e.epsilon)?0:n>s?1:-1}})}),Us="equal",e1=["typed","matrix","equalScalar","DenseMatrix","concat"],r1=dt(Us,e1,i=>{var{typed:t,matrix:e,equalScalar:r,DenseMatrix:n,concat:s}=i,a=ui({typed:t}),l=zs({typed:t,DenseMatrix:n}),f=oi({typed:t,DenseMatrix:n}),h=Rn({typed:t,matrix:e,concat:s});return t(Us,n1({typed:t,equalScalar:r}),h({elop:r,SS:l,DS:a,Ss:f}))}),n1=dt(Us,["typed","equalScalar"],i=>{var{typed:t,equalScalar:e}=i;return t(Us,{"any, any":function(n,s){return n===null?s===null:s===null?n===null:n===void 0?s===void 0:s===void 0?n===void 0:e(n,s)}})}),ks="smaller",i1=["typed","config","matrix","DenseMatrix","concat"],s1=dt(ks,i1,i=>{var{typed:t,config:e,matrix:r,DenseMatrix:n,concat:s}=i,a=ui({typed:t}),l=zs({typed:t,DenseMatrix:n}),f=oi({typed:t,DenseMatrix:n}),h=Rn({typed:t,matrix:r,concat:s}),p=Ls({typed:t});return t(ks,o1({typed:t,config:e}),{"boolean, boolean":(c,d)=>c<d,"BigNumber, BigNumber":function(d,_){return d.lt(_)&&!Rs(d,_,e.epsilon)},"Fraction, Fraction":(c,d)=>c.compare(d)===-1,"Complex, Complex":function(d,_){throw new TypeError("No ordering relation is defined for complex numbers")}},p,h({SS:l,DS:a,Ss:f}))}),o1=dt(ks,["typed","config"],i=>{var{typed:t,config:e}=i;return t(ks,{"number, number":function(n,s){return n<s&&!On(n,s,e.epsilon)}})}),Ws="larger",u1=["typed","config","matrix","DenseMatrix","concat"],a1=dt(Ws,u1,i=>{var{typed:t,config:e,matrix:r,DenseMatrix:n,concat:s}=i,a=ui({typed:t}),l=zs({typed:t,DenseMatrix:n}),f=oi({typed:t,DenseMatrix:n}),h=Rn({typed:t,matrix:r,concat:s}),p=Ls({typed:t});return t(Ws,l1({typed:t,config:e}),{"boolean, boolean":(c,d)=>c>d,"BigNumber, BigNumber":function(d,_){return d.gt(_)&&!Rs(d,_,e.epsilon)},"Fraction, Fraction":(c,d)=>c.compare(d)===1,"Complex, Complex":function(){throw new TypeError("No ordering relation is defined for complex numbers")}},p,h({SS:l,DS:a,Ss:f}))}),l1=dt(Ws,["typed","config"],i=>{var{typed:t,config:e}=i;return t(Ws,{"number, number":function(n,s){return n>s&&!On(n,s,e.epsilon)}})}),ic="deepEqual",f1=["typed","equal"],c1=dt(ic,f1,i=>{var{typed:t,equal:e}=i;return t(ic,{"any, any":function(s,a){return r(s.valueOf(),a.valueOf())}});function r(n,s){if(Array.isArray(n))if(Array.isArray(s)){var a=n.length;if(a!==s.length)return!1;for(var l=0;l<a;l++)if(!r(n[l],s[l]))return!1;return!0}else return!1;else return Array.isArray(s)?!1:e(n,s)}}),sc="partitionSelect",h1=["typed","isNumeric","isNaN","compare"],p1=dt(sc,h1,i=>{var{typed:t,isNumeric:e,isNaN:r,compare:n}=i,s=n,a=(h,p)=>-n(h,p);return t(sc,{"Array | Matrix, number":function(p,c){return l(p,c,s)},"Array | Matrix, number, string":function(p,c,d){if(d==="asc")return l(p,c,s);if(d==="desc")return l(p,c,a);throw new Error('Compare string must be "asc" or "desc"')},"Array | Matrix, number, function":l});function l(h,p,c){if(!he(p)||p<0)throw new Error("k must be a non-negative integer");if(fe(h)){var d=h.size();if(d.length>1)throw new Error("Only one dimensional matrices supported");return f(h.valueOf(),p,c)}if(Array.isArray(h))return f(h,p,c)}function f(h,p,c){if(p>=h.length)throw new Error("k out of bounds");for(var d=0;d<h.length;d++)if(e(h[d])&&r(h[d]))return h[d];for(var _=0,D=h.length-1;_<D;){for(var g=_,y=D,v=h[Math.floor(Math.random()*(D-_+1))+_];g<y;)if(c(h[g],v)>=0){var E=h[y];h[y]=h[g],h[g]=E,--y}else++g;c(h[g],v)>0&&--g,p<=g?D=g:_=g+1}return h[p]}}),oc="max",m1=["typed","config","numeric","larger"],d1=dt(oc,m1,i=>{var{typed:t,config:e,numeric:r,larger:n}=i;return t(oc,{"Array | Matrix":a,"Array | Matrix, number | BigNumber":function(f,h){return yu(f,h.valueOf(),s)},"...":function(f){if(Ts(f))throw new TypeError("Scalar values expected in function max");return a(f)}});function s(l,f){try{return n(l,f)?l:f}catch(h){throw dn(h,"max",f)}}function a(l){var f;if(zi(l,function(h){try{isNaN(h)&&typeof h=="number"?f=NaN:(f===void 0||n(h,f))&&(f=h)}catch(p){throw dn(p,"max",h)}}),f===void 0)throw new Error("Cannot calculate max of an empty array");return typeof f=="string"&&(f=r(f,e.number)),f}}),uc="min",g1=["typed","config","numeric","smaller"],v1=dt(uc,g1,i=>{var{typed:t,config:e,numeric:r,smaller:n}=i;return t(uc,{"Array | Matrix":a,"Array | Matrix, number | BigNumber":function(f,h){return yu(f,h.valueOf(),s)},"...":function(f){if(Ts(f))throw new TypeError("Scalar values expected in function min");return a(f)}});function s(l,f){try{return n(l,f)?l:f}catch(h){throw dn(h,"min",f)}}function a(l){var f;if(zi(l,function(h){try{isNaN(h)&&typeof h=="number"?f=NaN:(f===void 0||n(h,f))&&(f=h)}catch(p){throw dn(p,"min",h)}}),f===void 0)throw new Error("Cannot calculate min of an empty array");return typeof f=="string"&&(f=r(f,e.number)),f}}),ac="add",_1=["typed","matrix","addScalar","equalScalar","DenseMatrix","SparseMatrix","concat"],w1=dt(ac,_1,i=>{var{typed:t,matrix:e,addScalar:r,equalScalar:n,DenseMatrix:s,SparseMatrix:a,concat:l}=i,f=qf({typed:t}),h=ov({typed:t,equalScalar:n}),p=Uf({typed:t,DenseMatrix:s}),c=Rn({typed:t,matrix:e,concat:l});return t(ac,{"any, any":r,"any, any, ...any":t.referToSelf(d=>(_,D,g)=>{for(var y=d(_,D),v=0;v<g.length;v++)y=d(y,g[v]);return y})},c({elop:r,DS:f,SS:h,Ss:p}))}),lc="dot",D1=["typed","addScalar","multiplyScalar","conj","size"],y1=dt(lc,D1,i=>{var{typed:t,addScalar:e,multiplyScalar:r,conj:n,size:s}=i;return t(lc,{"Array | DenseMatrix, Array | DenseMatrix":l,"SparseMatrix, SparseMatrix":f});function a(p,c){var d=h(p),_=h(c),D,g;if(d.length===1)D=d[0];else if(d.length===2&&d[1]===1)D=d[0];else throw new RangeError("Expected a column vector, instead got a matrix of size ("+d.join(", ")+")");if(_.length===1)g=_[0];else if(_.length===2&&_[1]===1)g=_[0];else throw new RangeError("Expected a column vector, instead got a matrix of size ("+_.join(", ")+")");if(D!==g)throw new RangeError("Vectors must have equal length ("+D+" != "+g+")");if(D===0)throw new RangeError("Cannot calculate the dot product of empty vectors");return D}function l(p,c){var d=a(p,c),_=fe(p)?p._data:p,D=fe(p)?p._datatype||p.getDataType():void 0,g=fe(c)?c._data:c,y=fe(c)?c._datatype||c.getDataType():void 0,v=h(p).length===2,E=h(c).length===2,b=e,N=r;if(D&&y&&D===y&&typeof D=="string"&&D!=="mixed"){var x=D;b=t.find(e,[x,x]),N=t.find(r,[x,x])}if(!v&&!E){for(var F=N(n(_[0]),g[0]),M=1;M<d;M++)F=b(F,N(n(_[M]),g[M]));return F}if(!v&&E){for(var S=N(n(_[0]),g[0][0]),$=1;$<d;$++)S=b(S,N(n(_[$]),g[$][0]));return S}if(v&&!E){for(var C=N(n(_[0][0]),g[0]),I=1;I<d;I++)C=b(C,N(n(_[I][0]),g[I]));return C}if(v&&E){for(var R=N(n(_[0][0]),g[0][0]),U=1;U<d;U++)R=b(R,N(n(_[U][0]),g[U][0]));return R}}function f(p,c){a(p,c);for(var d=p._index,_=p._values,D=c._index,g=c._values,y=0,v=e,E=r,b=0,N=0;b<d.length&&N<D.length;){var x=d[b],F=D[N];if(x<F){b++;continue}if(x>F){N++;continue}x===F&&(y=v(y,E(_[b],g[N])),b++,N++)}return y}function h(p){return fe(p)?p.size():s(p)}}),b1="trace",E1=["typed","matrix","add"],A1=dt(b1,E1,i=>{var{typed:t,matrix:e,add:r}=i;return t("trace",{Array:function(l){return n(e(l))},SparseMatrix:s,DenseMatrix:n,any:te});function n(a){var l=a._size,f=a._data;switch(l.length){case 1:if(l[0]===1)return te(f[0]);throw new RangeError("Matrix must be square (size: "+se(l)+")");case 2:{var h=l[0],p=l[1];if(h===p){for(var c=0,d=0;d<h;d++)c=r(c,f[d][d]);return c}else throw new RangeError("Matrix must be square (size: "+se(l)+")")}default:throw new RangeError("Matrix must be two dimensional (size: "+se(l)+")")}}function s(a){var l=a._values,f=a._index,h=a._ptr,p=a._size,c=p[0],d=p[1];if(c===d){var _=0;if(l.length>0)for(var D=0;D<d;D++)for(var g=h[D],y=h[D+1],v=g;v<y;v++){var E=f[v];if(E===D){_=r(_,l[v]);break}if(E>D)break}return _}throw new RangeError("Matrix must be square (size: "+se(p)+")")}}),fc="det",x1=["typed","matrix","subtractScalar","multiply","divideScalar","isZero","unaryMinus"],C1=dt(fc,x1,i=>{var{typed:t,matrix:e,subtractScalar:r,multiply:n,divideScalar:s,isZero:a,unaryMinus:l}=i;return t(fc,{any:function(p){return te(p)},"Array | Matrix":function(p){var c;switch(fe(p)?c=p.size():Array.isArray(p)?(p=e(p),c=p.size()):c=[],c.length){case 0:return te(p);case 1:if(c[0]===1)return te(p.valueOf()[0]);if(c[0]===0)return 1;throw new RangeError("Matrix must be square (size: "+se(c)+")");case 2:{var d=c[0],_=c[1];if(d===_)return f(p.clone().valueOf(),d);if(_===0)return 1;throw new RangeError("Matrix must be square (size: "+se(c)+")")}default:throw new RangeError("Matrix must be two dimensional (size: "+se(c)+")")}}});function f(h,p,c){if(p===1)return te(h[0][0]);if(p===2)return r(n(h[0][0],h[1][1]),n(h[1][0],h[0][1]));for(var d=!1,_=new Array(p).fill(0).map((M,S)=>S),D=0;D<p;D++){var g=_[D];if(a(h[g][D])){var y=void 0;for(y=D+1;y<p;y++)if(!a(h[_[y]][D])){g=_[y],_[y]=_[D],_[D]=g,d=!d;break}if(y===p)return h[g][D]}for(var v=h[g][D],E=D===0?1:h[_[D-1]][D-1],b=D+1;b<p;b++)for(var N=_[b],x=D+1;x<p;x++)h[N][x]=s(r(n(h[N][x],v),n(h[N][D],h[g][x])),E)}var F=h[_[p-1]][p-1];return d?l(F):F}}),cc="inv",F1=["typed","matrix","divideScalar","addScalar","multiply","unaryMinus","det","identity","abs"],M1=dt(cc,F1,i=>{var{typed:t,matrix:e,divideScalar:r,addScalar:n,multiply:s,unaryMinus:a,det:l,identity:f,abs:h}=i;return t(cc,{"Array | Matrix":function(d){var _=fe(d)?d.size():Ae(d);switch(_.length){case 1:if(_[0]===1)return fe(d)?e([r(1,d.valueOf()[0])]):[r(1,d[0])];throw new RangeError("Matrix must be square (size: "+se(_)+")");case 2:{var D=_[0],g=_[1];if(D===g)return fe(d)?e(p(d.valueOf(),D,g),d.storage()):p(d,D,g);throw new RangeError("Matrix must be square (size: "+se(_)+")")}default:throw new RangeError("Matrix must be two dimensional (size: "+se(_)+")")}},any:function(d){return r(1,d)}});function p(c,d,_){var D,g,y,v,E;if(d===1){if(v=c[0][0],v===0)throw Error("Cannot calculate inverse, determinant is zero");return[[r(1,v)]]}else if(d===2){var b=l(c);if(b===0)throw Error("Cannot calculate inverse, determinant is zero");return[[r(c[1][1],b),r(a(c[0][1]),b)],[r(a(c[1][0]),b),r(c[0][0],b)]]}else{var N=c.concat();for(D=0;D<d;D++)N[D]=N[D].concat();for(var x=f(d).valueOf(),F=0;F<_;F++){var M=h(N[F][F]),S=F;for(D=F+1;D<d;)h(N[D][F])>M&&(M=h(N[D][F]),S=D),D++;if(M===0)throw Error("Cannot calculate inverse, determinant is zero");D=S,D!==F&&(E=N[F],N[F]=N[D],N[D]=E,E=x[F],x[F]=x[D],x[D]=E);var $=N[F],C=x[F];for(D=0;D<d;D++){var I=N[D],R=x[D];if(D!==F){if(I[F]!==0){for(y=r(a(I[F]),$[F]),g=F;g<_;g++)I[g]=n(I[g],s(y,$[g]));for(g=0;g<_;g++)R[g]=n(R[g],s(y,C[g]))}}else{for(y=$[F],g=F;g<_;g++)I[g]=r(I[g],y);for(g=0;g<_;g++)R[g]=r(R[g],y)}}}return x}}}),hc="pinv",N1=["typed","matrix","inv","deepEqual","equal","dotDivide","dot","ctranspose","divideScalar","multiply","add","Complex"],S1=dt(hc,N1,i=>{var{typed:t,matrix:e,inv:r,deepEqual:n,equal:s,dotDivide:a,dot:l,ctranspose:f,divideScalar:h,multiply:p,add:c,Complex:d}=i;return t(hc,{"Array | Matrix":function(b){var N=fe(b)?b.size():Ae(b);switch(N.length){case 1:return v(b)?f(b):N[0]===1?r(b):a(f(b),l(b,b));case 2:{if(v(b))return f(b);var x=N[0],F=N[1];if(x===F)try{return r(b)}catch(M){if(!(M instanceof Error&&M.message.match(/Cannot calculate inverse, determinant is zero/)))throw M}return fe(b)?e(_(b.valueOf(),x,F),b.storage()):_(b,x,F)}default:throw new RangeError("Matrix must be two dimensional (size: "+se(N)+")")}},any:function(b){return s(b,0)?te(b):h(1,b)}});function _(E,b,N){var{C:x,F}=g(E,b,N),M=p(r(p(f(x),x)),f(x)),S=p(f(F),r(p(F,f(F))));return p(S,M)}function D(E,b,N){for(var x=te(E),F=0,M=0;M<b;M++){if(N<=F)return x;for(var S=M;y(x[S][F]);)if(S++,b===S&&(S=M,F++,N===F))return x;[x[S],x[M]]=[x[M],x[S]];for(var $=x[M][F],C=0;C<N;C++)x[M][C]=a(x[M][C],$);for(var I=0;I<b;I++)if(I!==M){$=x[I][F];for(var R=0;R<N;R++)x[I][R]=c(x[I][R],p(-1,p($,x[M][R])))}F++}return x}function g(E,b,N){var x=D(E,b,N),F=E.map((S,$)=>S.filter((C,I)=>I<b&&!y(l(x[I],x[I])))),M=x.filter((S,$)=>!y(l(x[$],x[$])));return{C:F,F:M}}function y(E){return s(c(E,d(1,1)),c(0,d(1,1)))}function v(E){return n(c(E,d(1,1)),c(p(E,0),d(1,1)))}}),B1="divide",I1=["typed","matrix","multiply","equalScalar","divideScalar","inv"],T1=dt(B1,I1,i=>{var{typed:t,matrix:e,multiply:r,equalScalar:n,divideScalar:s,inv:a}=i,l=bu({typed:t,equalScalar:n}),f=Eu({typed:t});return t("divide",Bl({"Array | Matrix, Array | Matrix":function(p,c){return r(p,a(c))},"DenseMatrix, any":function(p,c){return f(p,c,s,!1)},"SparseMatrix, any":function(p,c){return l(p,c,s,!1)},"Array, any":function(p,c){return f(e(p),c,s,!1).valueOf()},"any, Array | Matrix":function(p,c){return r(p,a(c))}},s.signatures))}),pc="sum",$1=["typed","config","add","numeric"],O1=dt(pc,$1,i=>{var{typed:t,config:e,add:r,numeric:n}=i;return t(pc,{"Array | Matrix":s,"Array | Matrix, number | BigNumber":a,"...":function(f){if(Ts(f))throw new TypeError("Scalar values expected in function sum");return s(f)}});function s(l){var f;return zi(l,function(h){try{f=f===void 0?h:r(f,h)}catch(p){throw dn(p,"sum",h)}}),f===void 0&&(f=n(0,e.number)),typeof f=="string"&&(f=n(f,e.number)),f}function a(l,f){try{var h=yu(l,f,r);return h}catch(p){throw dn(p,"sum")}}}),mc="median",R1=["typed","add","divide","compare","partitionSelect"],L1=dt(mc,R1,i=>{var{typed:t,add:e,divide:r,compare:n,partitionSelect:s}=i;function a(h){try{h=hu(h.valueOf());var p=h.length;if(p===0)throw new Error("Cannot calculate median of an empty array");if(p%2===0){for(var c=p/2-1,d=s(h,c+1),_=h[c],D=0;D<c;++D)n(h[D],_)>0&&(_=h[D]);return f(_,d)}else{var g=s(h,(p-1)/2);return l(g)}}catch(y){throw dn(y,"median")}}var l=t({"number | BigNumber | Complex | Unit":function(p){return p}}),f=t({"number | BigNumber | Complex | Unit, number | BigNumber | Complex | Unit":function(p,c){return r(e(p,c),2)}});return t(mc,{"Array | Matrix":a,"Array | Matrix, number | BigNumber":function(p,c){throw new Error("median(A, dim) is not yet supported")},"...":function(p){if(Ts(p))throw new TypeError("Scalar values expected in function median");return a(p)}})}),Ys=Pd({config:rr}),Au=kd({}),xu=jd({}),Cu=Jd({}),kr=Qd({Matrix:Cu}),Ft=Um({BigNumber:Ys,Complex:Au,DenseMatrix:kr,Fraction:xu}),P1=Sg({typed:Ft}),Zs=Ig({typed:Ft}),z1=yg({BigNumber:Ys,typed:Ft}),dc=wv({typed:Ft}),gn=fg({config:rr,typed:Ft}),js=eg({typed:Ft}),q1=sg({typed:Ft}),Gs=cv({typed:Ft}),gc=_g({typed:Ft}),Fu=pg({Matrix:Cu,equalScalar:gn,typed:Ft}),vc=$g({typed:Ft}),_c=ug({typed:Ft}),Mu=Mg({typed:Ft}),wc=Ag({Fraction:xu,typed:Ft}),Dc=ng({typed:Ft}),xe=Cg({DenseMatrix:kr,Matrix:Cu,SparseMatrix:Fu,typed:Ft}),yc=qv({isNaN:_c,isNumeric:Dc,typed:Ft}),qi=Zv({bignumber:z1,fraction:wc,number:gc}),U1=kv({config:rr,multiplyScalar:Gs,numeric:qi,typed:Ft}),k1=Iv({isInteger:js,matrix:xe,typed:Ft}),bc=$v({matrix:xe,config:rr,typed:Ft}),Ec=Rv({matrix:xe,typed:Ft}),Ln=yv({isInteger:js,matrix:xe,typed:Ft}),W1=Ev({prod:U1,size:bc,typed:Ft}),Y1=Pv({conj:dc,transpose:Ec,typed:Ft}),Ui=Gv({numeric:qi,typed:Ft}),Z1=Hv({DenseMatrix:kr,concat:Ln,divideScalar:Ui,equalScalar:gn,matrix:xe,typed:Ft}),Ac=r1({DenseMatrix:kr,concat:Ln,equalScalar:gn,matrix:xe,typed:Ft}),xc=xv({BigNumber:Ys,DenseMatrix:kr,SparseMatrix:Fu,config:rr,matrix:xe,typed:Ft}),j1=Fv({matrix:xe,multiplyScalar:Gs,typed:Ft}),G1=s1({DenseMatrix:kr,concat:Ln,config:rr,matrix:xe,typed:Ft}),K1=dv({DenseMatrix:kr,concat:Ln,equalScalar:gn,matrix:xe,subtractScalar:vc,typed:Ft,unaryMinus:Mu}),ki=w1({DenseMatrix:kr,SparseMatrix:Fu,addScalar:Zs,concat:Ln,equalScalar:gn,matrix:xe,typed:Ft}),Cc=Vv({BigNumber:Ys,DenseMatrix:kr,Fraction:xu,concat:Ln,config:rr,equalScalar:gn,matrix:xe,typed:Ft}),J1=c1({equal:Ac,typed:Ft}),Fc=y1({addScalar:Zs,conj:dc,multiplyScalar:Gs,size:bc,typed:Ft}),X1=a1({DenseMatrix:kr,concat:Ln,config:rr,matrix:xe,typed:Ft}),Nu=v1({config:rr,numeric:qi,smaller:G1,typed:Ft}),ai=pv({addScalar:Zs,dot:Fc,equalScalar:gn,matrix:xe,multiplyScalar:Gs,typed:Ft}),H1=p1({compare:Cc,isNaN:_c,isNumeric:Dc,typed:Ft}),Q1=O1({add:ki,config:rr,numeric:qi,typed:Ft}),V1=A1({add:ki,matrix:xe,typed:Ft}),Mc=C1({divideScalar:Ui,isZero:q1,matrix:xe,multiply:ai,subtractScalar:vc,typed:Ft,unaryMinus:Mu}),t_=d1({config:rr,larger:X1,numeric:qi,typed:Ft}),Ks=M1({abs:P1,addScalar:Zs,det:Mc,divideScalar:Ui,identity:xc,matrix:xe,multiply:ai,typed:Ft,unaryMinus:Mu}),e_=S1({Complex:Au,add:ki,ctranspose:Y1,deepEqual:J1,divideScalar:Ui,dot:Fc,dotDivide:Z1,equal:Ac,inv:Ks,matrix:xe,multiply:ai,typed:Ft}),r_=Jv({Complex:Au,config:rr,fraction:wc,identity:xc,inv:Ks,matrix:xe,multiply:ai,number:gc,typed:Ft}),n_=T1({divideScalar:Ui,equalScalar:gn,inv:Ks,matrix:xe,multiply:ai,typed:Ft}),Nc=L1({add:ki,compare:Cc,divide:n_,partitionSelect:H1,typed:Ft});class i_{constructor(t,e,r){G(this,"_cacheData");G(this,"_variables");G(this,"_math");G(this,"_timeframe");this._cacheData={},this._variables=t,this._math=e,this._timeframe=r}alma({series:t,length:e,offset:r,sigma:n,floor:s},a){if(e===void 0||r===void 0||n===void 0)return;const l=this._cacheDataList(t,e,`alma_${a}`);if(l===void 0)return;let f=r*(e-1);s&&(f=Math.floor(f));const h=e/n;let p=0,c=0;for(let d=0;d<=e-1;d++){const _=Math.exp(-1*Math.pow(d-f,2)/(2*Math.pow(h,2)));p+=_,c+=l[l.length-1-(e-d-1)]*_}return c/p}sma({source:t,length:e},r){if(t===void 0||isNaN(t)||e===void 0)return;let n=0;const s=this._cacheDataList(t,e,`sma_${r}`);if(s===void 0)return;const a=s.slice(-e);return n=Q1(...a)/e,n}rma({source:t,length:e},r){if(t===void 0||e===void 0||isNaN(t))return;const n=this._cacheData[`sma_${r}`]||[];n[this._variables.bar_index]=t,this._cacheData[`sma_${r}`]=n;const{sum:s}=this._cacheData[`rma_${r}`]||{},a=1/e,l=s===void 0?this.sma({source:t,length:e},r):a*t+(1-a)*(s||0);return this._cacheDataHandle(`rma_${r}`,{sum:l}),l}atr({length:t},e){const{high:r,close:n}=this._cacheData[`atr_${e}`]||{},{high:s,close:a,low:l}=this._variables,f=r===void 0?s-l:Math.max(Math.max(s-l,Math.abs(s-n)),Math.abs(l-n));return this._cacheDataHandle(`atr_${e}`,{high:s,close:a}),this.rma({source:f,length:t},e)}barssince({condition:t},e){let{count:r}=this._cacheData[`barssince_${e}`]||{};if(t)r=0;else{if(r===void 0)return;r+=1}return this._cacheDataHandle(`barssince_${e}`,{count:r}),r}stdev({source:t,length:e,biased:r=!0},n){if(t===void 0||isNaN(t)||e===void 0)return;const s=this._cacheDataList(t,e,`stdev_${n}`),a=this.sma({source:t,length:e},n);if(s===void 0)return;let l=0;for(let f=0;f<e;f++){const h=this._sum(s[s.length-1-f],-(a||0));l+=h*h}return r||e<=1?Math.sqrt(l/e):Math.sqrt(l/(e-1))}_sum(t,e){let n=t+e;return Math.abs(n)<=1e-10&&(n=0),n}bb({series:t,length:e,mult:r},n){if(t===void 0||isNaN(t)||e===void 0||r===void 0)return[];const s=this.sma({source:t,length:e},n),a=this.stdev({source:t,length:e},n);if(s===void 0||a===void 0)return[];const l=r*a;return[s,s+l,s-l]}bbw({series:t,length:e,mult:r},n){if(t===void 0||isNaN(t)||e===void 0||r===void 0)return;const s=this.sma({source:t,length:e},n),a=this.stdev({source:t,length:e},n);if(s===void 0||a===void 0)return;const l=r*a;return(s+l-(s-l))/s}cci({source:t,length:e},r){if(t===void 0||isNaN(t)||e===void 0)return;const n=this.sma({source:t,length:e},r),s=this.dev({source:t,length:e},r);if(!(n===void 0||s===void 0))return(t-n)/(.015*s)}change({source:t,length:e=1},r){const n=this._cacheData[`change_${r}`]||[];n[this._variables.bar_index]=t,this._cacheData[`change_${r}`]=n;const s=n[n.length-1-e];if(!(t===void 0||isNaN(t)))return s===void 0?s:typeof t=="boolean"?s!==t:t-s}cmo({series:t,length:e},r){if(t===void 0||isNaN(t)||e===void 0)return;const n=this.change({source:t},r);if(n===void 0)return;const s=this._math.sum({source:n>=0?n:0,length:e},`sm1_${r}`),a=this._math.sum({source:n>=0?0:-n,length:e},`sm2_${r}`);if(!(s===void 0||a===void 0))return 100*(s-a)/(s+a)}cog({source:t,length:e},r){if(t===void 0||isNaN(t)||e===void 0)return;const n=this._cacheDataList(t,e,`cog_${r}`),s=this._math.sum({source:t,length:e},r);if(s===void 0||n===void 0)return;let a=0;for(let l=0;l<e;l++){const f=n[n.length-1-l];a+=f*(l+1)}return-a/s}correlation({source1:t,source2:e,length:r},n){if(t===void 0||isNaN(t)||e===void 0||isNaN(e)||r===void 0)return;const s=this._cacheDataList([t,e],r,`correlation_${n}`),a=this.sma({source:t,length:r},`sma1_${n}`),l=this.sma({source:e,length:r},`sma2_${n}`);if(a===void 0||l===void 0||s===void 0)return;let f=0,h=0,p=0;for(let d=0;d<r;d++){const[_,D]=s[s.length-1-d],g=_-a,y=D-l;f+=g*y,h+=g*g,p+=y*y}return isNaN(h)||isNaN(f)||isNaN(p)?void 0:f/Math.sqrt(h*p)}cross({source1:t,source2:e},r){if(t===void 0||e===void 0)return!1;const{source1:n,source2:s}=this._cacheData[`cross_${r}`]||{};return this._cacheDataHandle(`cross_${r}`,{source1:t,source2:e}),n===void 0||s===void 0?!1:n>=s&&t<e||n<=s&&t>e}crossover({source1:t,source2:e},r){if(t===void 0||e===void 0)return!1;const{source1:n,source2:s}=this._cacheData[`crossover_${r}`]||{};return this._cacheDataHandle(`crossover_${r}`,{source1:t,source2:e}),n===void 0||s===void 0?!1:n<=s&&t>e}crossunder({source1:t,source2:e},r){if(t===void 0||e===void 0)return!1;const{source1:n,source2:s}=this._cacheData[`crossunder_${r}`]||{};return this._cacheDataHandle(`crossunder_${r}`,{source1:t,source2:e}),n===void 0||s===void 0?!1:n>=s&&t<e}cum({source:t=0},e){t=isNaN(t)?0:t;let{sum:r}=this._cacheData[`cum_${e}`]||{};return r=r||0,r+=t,this._cacheDataHandle(`cum_${e}`,{sum:r}),r}dev({source:t,length:e},r){if(t===void 0||isNaN(t)||e===void 0)return;const n=this.sma({source:t,length:e},r);let s=0;const a=this._cacheDataList(t,e,`dev_${r}`);if(!(!a||n===void 0)){for(let l=0;l<e;l++){const f=a[a.length-1-l];s+=Math.abs(f-n)}return s/e}}dmi({diLength:t,adxSmoothing:e},r){if(t===void 0||e===void 0)return[void 0,void 0,void 0];const n=`dmi_${r}`,{low:s,high:a,close:l,PDMS:f,NDMS:h,TRS:p,ADX:c,count:d=0}=this._cacheData[n]||{},{low:_,high:D,close:g}=this._variables;if(s===void 0||a===void 0||l===void 0)return this._cacheData[n]={low:_,high:D,close:g,PDMS:f,NDMS:h,TRS:D-_,count:1},[void 0,void 0,void 0];let y=D-a,v=s-_;y=y>v&&y>0?y:0,v=v>y&&v>0?v:0,y===v&&(y=v=0);const E=Math.max(D-_,Math.abs(D-l),Math.abs(_-l));if(d<t)return this._cacheDataHandle(n,{low:_,high:D,close:g,PDMS:(f||0)+y,NDMS:(h||0)+v,TRS:(p||0)+E,count:d+1}),[void 0,void 0,void 0];{const b=f-f/t+y,N=h-h/t+v,x=p-p/t+E,F=b/x*100,M=N/x*100,S=Math.abs((F-M)/(F+M))*100;let $=S,C=[F,M,void 0];if(d+1-t<e){const I=d+1-t;$=((c||0)*(I-1)+S)/I}else $=(c*(e-1)+S)/e,C=[F,M,$];return this._cacheDataHandle(n,{low:_,high:D,close:g,PDMS:b,NDMS:N,TRS:x,ADX:$,count:d+1}),C}}ema({source:t,length:e},r){if(t===void 0||e===void 0||isNaN(t))return;let{sum:n,count:s=1}=this._cacheData[`ema_${r}`]||{};const a=this.sma({source:t,length:e},r);if(s>e){const l=2/(e+1);n=n===void 0?t:l*t+(1-l)*(n||0)}else n=a;return s+=1,this._cacheDataHandle(`ema_${r}`,{sum:n,count:s}),n}falling({source:t,length:e},r){if(t===void 0||isNaN(t)||e===void 0)return!1;const{source:n,fallings:s=[]}=this._cacheData[`falling_${r}`]||{};s.push(n>t);const a=s.slice(-e);return this._cacheDataHandle(`falling_${r}`,{source:t,fallings:a}),a.length<e?!1:a.every(l=>l)}rising({source:t,length:e},r){if(t===void 0||isNaN(t)||e===void 0)return!1;const{source:n,risings:s=[]}=this._cacheData[`rising_${r}`]||{};s.push(n<t);const a=s.slice(-e);return this._cacheDataHandle(`rising_${r}`,{source:t,fallings:a}),a.length<e?!1:a.every(l=>l)}highest({source:t,length:e},r){if(e===void 0||t===void 0||isNaN(t)||e<=0)return;const n=this._cacheData[`highest_${r}`]||[],{high:s,bar_index:a}=this._variables;typeof t!="number"?n[a]=s:n[a]=t,this._cacheData[`highest_${r}`]=n;const l=n.filter(()=>!0);if(!(l.length<e))return Math.max(...l.slice(-e))}highestbars({source:t,length:e},r){if(e===void 0||t===void 0||isNaN(t)||e<=0)return;const n=this._cacheData[`highestbars_${r}`]||[],{high:s,bar_index:a}=this._variables;typeof t!="number"?n[a]=s:n[a]=t,this._cacheData[`highestbars_${r}`]=n;const l=n.filter(()=>!0);return l.length<e?void 0:l.slice(-e).reduce((h,p,c,d)=>p>=d[h]?c:h,0)-e+1}wma({source:t,length:e},r){if(e===void 0||t===void 0||isNaN(t)||e<=0)return;const n=this._cacheDataList(t,e,`wma_${r}`);if(!n)return;let s=0,a=0;for(let l=0;l<e;l++){const f=(e-l)*e;s+=f,a+=n[n.length-1-l]*f}return a/s}hma({source:t,length:e},r){if(e===void 0||t===void 0||isNaN(t)||e<=0)return;const n=this.wma({source:t,length:e},r),s=this.wma({source:t,length:Math.round(e/2)},r);return n===void 0||s===void 0?void 0:this.wma({source:2*s-n,length:Math.floor(Math.sqrt(e))},`hma_${r}`)}kc({series:t,length:e,mult:r,useTrueRange:n=!0},s){if(t===void 0||isNaN(t)||e===void 0||r===void 0)return[void 0,void 0,void 0];const a=this.ema({source:t,length:e},s),{ta:l,high:f,low:h}=this._variables,p=n?l.tr:f-h,c=this.ema({source:p,length:e},`range_${s}`);return[a,a+c*r,a-c*r]}kcw({series:t,length:e,mult:r,useTrueRange:n=!0},s){if(t===void 0||isNaN(t)||e===void 0||r===void 0)return;const a=this.ema({source:t,length:e},s),{ta:l,high:f,low:h}=this._variables,p=n?l.tr:f-h,c=this.ema({source:p,length:e},`range_${s}`);return(a+c*r-(a-c*r))/a}linreg({source:t,length:e,offset:r},n){if(e===void 0||r===void 0)return;const s=this._cacheDataList(t,e,`dev_${n}`);if(!s)return;const a=s.slice(-e).filter(_=>_!==void 0);let l=0,f=0,h=0,p=0;for(const[_,D]of a.entries())l+=_,f+=D,h+=_*D,p+=_*_;const c=(e*h-l*f)/(e*p-l*l);return(f-c*l)/e+c*(e-1-r)}lowest({source:t,length:e},r){if(e===void 0||t===void 0||isNaN(t)||e<=0)return;const n=this._cacheData[`lowest_${r}`]||[],{low:s,bar_index:a}=this._variables;typeof t!="number"?n[a]=s:n[a]=t,this._cacheData[`lowest_${r}`]=n;const l=n.filter(()=>!0);if(!(l.length<e))return Math.min(...l.slice(-e))}lowestbars({source:t,length:e},r){if(e===void 0||t===void 0||isNaN(t)||e<=0)return;const n=this._cacheData[`lowestbars_${r}`]||[],{low:s,bar_index:a}=this._variables;typeof t!="number"?n[a]=s:n[a]=t,this._cacheData[`lowestbars_${r}`]=n;const l=n.filter(()=>!0);return l.length<e?void 0:l.slice(-e).reduce((h,p,c,d)=>p<=d[h]?c:h,0)-e+1}macd({source:t,fastlen:e,slowlen:r,siglen:n},s){if(t===void 0||isNaN(t)||e===void 0||r===void 0||n===void 0)return[void 0,void 0,void 0];const a=this.ema({source:t,length:e},`ema1_${s}`),l=this.ema({source:t,length:r},`ema2_${s}`);if(a===void 0||l===void 0)return[void 0,void 0,void 0];const f=a-l,h=this.ema({source:f,length:n},`macd_${s}`);if(h===void 0)return[f,h,void 0];const p=f-h;return[f,h,p]}max({source:t},e){if(t===void 0||isNaN(t))return;let r=this._cacheData[`max_${e}`]||0;return t>r&&(r=t),this._cacheData[`max_${e}`]=r,r}min({source:t},e){if(t===void 0||isNaN(t))return;let r=this._cacheData[`min_${e}`]||1/0;return t<r&&(r=t),this._cacheData[`min_${e}`]=r,r}median({source:t,length:e},r){if(e===void 0||t===void 0||isNaN(t)||e<=0)return;const n=this._cacheDataList(t,e,`dev_${r}`);if(n)return Nc(n.slice(-e))}mfi({series:t,length:e},r){if(e===void 0||t===void 0||isNaN(t)||e<=0)return;const{volume:n}=this._variables,s=this.change({source:t},r),a=this._math.sum({source:n*(s>=0?0:t),length:e},`lower_${r}`),l=this._math.sum({source:n*(s<=0?0:t),length:e},`upper_${r}`);if(!(l===void 0||a===void 0))return 100-100/(1+l/a)}mode({source:t,length:e},r){if(e===void 0||t===void 0||isNaN(t)||e<=0)return;const n=this._cacheDataList(t,e,`mode_${r}`);if(n)return Nu(yc(n.slice(-e)))}mom({source:t,length:e},r){if(e===void 0||e<0)return;const n=`mom_${r}`,s=this._cacheData[n]||[];if(s[this._variables.bar_index]=t,this._cacheData[n]=s,s.length<=e||t===void 0||isNaN(t))return;let a=s.length-e-1,l;for(;l===void 0&&a>=0;)l=s[a],a--;return l===void 0?l:t-l}percentile_linear_interpolation({source:t,length:e,percentage:r},n){if(e===void 0||r===void 0||e<0||r<0||r>100)return;const s=this._cacheDataList(t,e+1,`percentile_linear_interpolation_${n}`);if(!s)return;const a=this._sort(s.slice(-(e+1))),l=a.length;r/=100;const f=1/(l*2);if(r<=f)return a[0];if(r>=1-1/(l*2))return a[l-1];for(const[h,p]of a.entries()){const c=a[h-1];if(r<(h+.5)/l)return c===void 0||p===void 0?void 0:c+(p-c)*(r-(h-.5)/l)/(1/l)}}percentile_nearest_rank({source:t,length:e,percentage:r},n){if(e===void 0||r===void 0||t===void 0||isNaN(t)||e<0||r<0||r>100)return;const s=this._cacheDataList(t,e,`percentile_nearest_rank_${n}`);if(!s)return;const a=this._sort(s.slice(-e)),l=r/100*a.length,f=Math.ceil(l)-1;return a[f>=a.length?a.length-1:f]}percentrank({source:t,length:e},r){if(e===void 0||e<0)return;const n=this._cacheDataList(t,e+1,`percentile_nearest_rank_${r}`);if(!n)return;const s=n.slice(-(e+1)),a=t;if(a===void 0)return;let l=0;for(let f=0;f<s.length;f++)s[f]!==void 0&&(s[f]<a||s[f]===a&&f<e)&&l++;return l/(s.length-1)*100}pivot_point_levels({type:t,anchor:e,developing:r},n){const s=new Xt;let{close:a,open:l,low:f,high:h}=this._variables;const p=`pivot_point_levels_${n}`,{close:c,low:d,high:_,open:D,result:g}=this._cacheData[p]||{};if(!e&&(_&&d&&(h=Math.max(_,h),f=Math.min(d,f)),this._cacheDataHandle(p,{close:a,open:l,low:f,high:h,result:g}),!r))return s._value=g||[],s;const y={close:a,open:l,low:f,high:h};e===!0&&!r&&(a=c,l=D,f=d,h=_);const v=this._getPivotPointLevels(h,f,a,l,r,t);return this._cacheDataHandle(p,{...y,result:v}),s._value=v,s}_getPivotPointLevels(t,e,r,n,s,a){if(r===void 0||n===void 0||e===void 0||t===void 0)return[];switch(a){case $n.traditional:return this._traditional(t,e,r);case $n.fibonacci:return this._fibonacci(t,e,r);case $n.woodie:return s?[]:this._woodie(t,e);case $n.classic:return this._classic(t,e,r);case $n.dm:return this._DM(t,e,r,n);case $n.camarilla:return this._camarilla(t,e,r);default:return[]}}_traditional(t,e,r){const n=(t+e+r)/3,s=n*2-e,a=n+(t-e),l=n*2+(t-2*e),f=n*3+(t-3*e),h=n*4+(t-4*e),p=n*2-t,c=n-(t-e),d=n*2-(2*t-e),_=n*3-(3*t-e),D=n*4-(4*t-e);return[n,s,p,a,c,l,d,f,_,h,D]}_fibonacci(t,e,r){const n=(t+e+r)/3,s=n+.382*(t-e),a=n-.382*(t-e),l=n+.618*(t-e),f=n-.618*(t-e),h=n+(t-e),p=n-(t-e);return[n,s,a,l,f,h,p]}_woodie(t,e){const{open:r}=this._variables,n=(t+e+2*r)/4,s=2*n-e,a=2*n-t,l=n+(t-e),f=n-(t-e),h=t+2*(n-e),p=e-2*(t-n),c=h+(t-e),d=p-(t-e);return[n,s,a,l,f,h,p,c,d]}_classic(t,e,r){const n=(t+e+r)/3,s=2*n-e,a=2*n-t,l=n+(t-e),f=n-(t-e),h=n+2*(t-e),p=n-2*(t-e),c=n+3*(t-e),d=n-3*(t-e);return[n,s,a,l,f,h,p,c,d]}_DM(t,e,r,n){let s;n===r?s=t+e+2*r:r>n?s=2*t+e+r:s=2*e+t+r;const a=s/4,l=s/2-e,f=s/2-t;return[a,l,f]}_camarilla(t,e,r){const n=(t+e+r)/3,s=r+1.1*(t-e)/12,a=r-1.1*(t-e)/12,l=r+1.1*(t-e)/6,f=r-1.1*(t-e)/6,h=r+1.1*(t-e)/4,p=r-1.1*(t-e)/4,c=r+1.1*(t-e)/2,d=r-1.1*(t-e)/2,_=t/e*r,D=r-(_-r);return[n,s,a,l,f,h,p,c,d,_,D]}pivothigh({source:t=this._variables.high,leftbars:e,rightbars:r},n){if(e===void 0||r===void 0||e<0||r<0)return;const s=this._cacheDataList(t,e+r+1,`pivothigh_${n}`);if(!s)return;const a=s.slice(-(e+r+1)),l=a[e];return Math.max(...a)===l?l:void 0}pivotlow({source:t=this._variables.low,leftbars:e,rightbars:r},n){if(e===void 0||r===void 0||e<0||r<0)return;const s=this._cacheDataList(t,e+r+1,`pivotlow_${n}`);if(!s)return;const a=s.slice(-(e+r+1)),l=a[e];return Math.min(...a)===l?l:void 0}range({source:t,length:e},r){if(e===void 0||t===void 0||isNaN(t)||e<0)return;const n=this._cacheDataList(t,e,`range_${r}`);if(!n)return;const s=n.filter(f=>f!==void 0).slice(-e),a=Math.max(...s),l=Math.min(...s);return a-l}roc({source:t,length:e},r){if(e===void 0||e<0)return;const n=this._cacheDataList(t,e+1,`roc_${r}`),s=this.change({source:t,length:e},r);if(n)return 100*s/n[n.length-1-e]}rsi({source:t,length:e},r){if(e===void 0||t===void 0||isNaN(t)||e<0)return;const{source:n}=this._cacheData[`rsi_${r}`]||{},s=Math.max(t-n,0),a=Math.max(n-t,0),l=this.rma({source:s,length:e},`rma1_${r}`),f=this.rma({source:a,length:e},`rma2_${r}`);if(this._cacheDataHandle(`rsi_${r}`,{source:t}),!(l===void 0||f===void 0))return 100-100/(1+l/f)}sar({start:t,inc:e,max:r},n){if(t===void 0||e===void 0||r===void 0)return;const{close:s,low:a,high:l,preLow:f,preHigh:h,data:p={}}=this._cacheData[`sar_${n}`]||{};let{result:c,maxMin:d,acceleration:_,isBelow:D}=p,g=!1;const{close:y,low:v,high:E,bar_index:b}=this._variables;return b===1&&(y>s?(D=!0,d=E,c=a):(D=!1,d=v,c=l),g=!0,_=t),c=c+_*(d-c),D?c>v&&(g=!0,D=!1,c=Math.max(E,d||0),d=v,_=t):c<E&&(g=!0,D=!0,c=Math.min(v,d||0),d=E,_=t),g||(D?E>(d||0)&&(d=E,_=Math.min((_||0)+e,r)):v<(d||0)&&(d=v,_=Math.min((_||0)+e,r))),D?(c=Math.min(c,a),b>1&&(c=Math.min(c,f))):(c=Math.max(c,l),b>1&&(c=Math.max(c,h))),this._cacheDataHandle(`sar_${n}`,{high:E,close:y,low:v,preLow:a,preHigh:l,data:Object.assign(p,{result:c,maxMin:d,acceleration:_,isBelow:D})}),c}stoch({source:t,high:e,low:r,length:n},s){if(n===void 0||e===void 0||r===void 0||t===void 0||isNaN(t)||n<0)return;const a=this.lowest({source:r,length:n},s),l=this.highest({source:e,length:n},s);if(!(a===void 0||l===void 0))return 100*(this._variables.close-a)/(l-a)}supertrend({factor:t,atrPeriod:e},r){if(t===void 0||e===void 0)return[void 0,void 0];const{hl2:n,close:s}=this._variables,a=`supertrend_${r}`,{upperBand:l,lowerBand:f,superTrend:h,atr:p,close:c}=this._cacheData[a]||{},d=this.atr({length:e},r);if(d===void 0)return this._cacheDataHandle(a,{close:s}),[void 0,void 0];let _=n+t*d,D=n-t*d;const g=l||0,y=f||0;D=D>y||c<y?D:y,_=_<g||c>g?_:g;let v;p===void 0?v=1:h===g?v=s>_?-1:1:v=s<D?1:-1;const E=v===-1?D:_;return this._cacheDataHandle(a,{upperBand:_,lowerBand:D,superTrend:E,atr:d,close:s}),[E,v]}swma({source:t},e){let{list:r}=this._cacheData[`swma_${e}`]||{};if(r||(r=[]),r.push(t),r=r.slice(-4),this._cacheDataHandle(`swma_${e}`,{list:r}),!(r.filter(n=>n!==void 0).length<4))return r[3]*1/6+r[2]*2/6+r[1]*2/6+r[0]*1/6}tr({handle_na:t=!1},e){const{close:r,low:n,high:s}=this._variables,{close:a}=this._cacheData[`tr_${e}`]||{};return this._cacheDataHandle(`tr_${e}`,{close:r}),a===void 0?t?s-n:void 0:Math.max(s-n,Math.abs(s-a),Math.abs(n-a))}tsi({source:t,short_length:e,long_length:r},n){if(t===void 0||isNaN(t)||e===void 0||r===void 0)return;const s=this.change({source:t},n);if(s===void 0)return;const a=this.ema({source:Math.abs(s),length:e},`absema1_${n}`),l=this.ema({source:s,length:e},`ema1_${n}`);if(l===void 0)return;const f=this.ema({source:l,length:r},`ema2_${n}`),h=this.ema({source:a,length:e},`absema2_${n}`);if(f!==void 0)return f/h}valuewhen({condition:t,source:e,occurrence:r},n){if(e===void 0||r===void 0||r<0)return;let{list:s}=this._cacheData[`valuewhen_${n}`]||{};return s||(s=[]),t&&s.push(e),this._cacheDataHandle(`valuewhen_${n}`,{list:s}),s[s.length-1-r]}variance({source:t,length:e,biased:r=!0},n){if(t===void 0||isNaN(t)||e===void 0||e<0)return;const s=this.sma({source:t,length:e},n);if(s===void 0)return;const a=t-s,l=this._math.sum({source:a*a,length:e},n);if(l!==void 0)return r||e<=1?l/e:l/(e-1)}vwap({source:t,anchor:e,stdev_mult:r},n){if(t===void 0)return;e=e===void 0?this._timeframe.change({timeframe:"1D"},n):e;const{volume:s}=this._variables;let{sum:a=0,sumV:l=0,count:f=0,isReset:h,sumS:p=0}=this._cacheData[`vwap_${n}`]||{};if(e&&(a=l=f=p=0,h=!0),!h)return r!==void 0?[]:void 0;const c=t*s+a,d=s+l,_=c/d;return f++,r!==void 0?(p=s*Math.pow(t,2)+p,this._cacheDataHandle(`vwap_${n}`,{sum:c,sumV:d,count:f,isReset:h,sumS:p}),this._computeBands(p,d,r,_)):(this._cacheDataHandle(`vwap_${n}`,{sum:c,sumV:d,count:f,isReset:h}),_)}_computeBands(t,e,r,n){let s=t/e-Math.pow(n,2);s=s<0?0:s;const a=Math.sqrt(s),l=a!==void 0&&!isNaN(a)?n+r*a:void 0,f=a!==void 0&&!isNaN(a)?n-r*a:void 0;return[n,l,f]}vwma({source:t,length:e},r){if(t===void 0||isNaN(t)||e===void 0||e<=0)return;const{volume:n}=this._variables,s=this.sma({source:t*n,length:e},`sma1_${r}`),a=this.sma({source:n,length:e},`sma2_${r}`);if(!(s===void 0||a===void 0))return s/a}wpr({length:t},e){if(t===void 0||t<=0)return;const r=this.highest({length:t},e),n=this.lowest({length:t},e),{close:s}=this._variables;if(!(r===void 0||n===void 0))return(r-s)/(r-n)*-100}_sort(t){const e=t.length;for(let r=0;r<e;r++){let n={};for(let s=0;s<e-r;s++){const{currentVal:a,currentIndex:l}=n,f=t[s];if(f!==void 0){if(a!==void 0&&f<a){t.splice(s,1),t.splice(l,0,f),n={currentIndex:l+1,currentVal:a};continue}n={currentIndex:s,currentVal:f}}}}return t}_cacheDataList(t,e,r){const n=this._cacheData[r]||[];n[this._variables.bar_index]=t,this._cacheData[r]=n;const s=n.filter(()=>!0);if(!(s.length<e))return s}_cacheDataHandle(t,e){const{barIndex:r}=this._cacheData[t]||{};r!==this._variables.bar_index&&(this._cacheData[t]=Object.assign(e,{barIndex:this._variables.bar_index}))}}const s_={onlyInLoop:"'$text' is only allowed inside loops",invalidType:"Invalid argument 'expr$index' in 'operator SQBR' call",typeUseError:"Cannot specify a type form '$text' without also specifying the type.",notTypeKeyword:"'$text' is not a valid type keyword in variable declaration",undeclared:"Undeclared identifier '$name'",repeatVar:"'$name' is already defined",typeMismatch:"Cannot call '$operator' with argument '$index'. An argument of '$typeE' type was used but a '$typeR' is expected.",assignTypeMismatch:"Cannot assign a value of the `$typeE` type to the '$name' variable. The variable is declared with the `$typeR` type.",voidNotVar:"Void expression cannot be assigned to a variable",declareTypeErr:"Declared type '$type' is not compatible with assigned type '$valueType'",mapKeyValErr:"Cannot put <$typeA, $typeB> pairs into a map containing `$typeC` keys and `$typeD` values. The maps passed into the `$name()` function must have the same key types and value types.",inputSourceErr:"Invalid value for the '$name' parameter of the '$funcName' function. Possible values: [open, high, low, close, hl2, hlc3, ohlc4, hlcc4, volume].",buildInUseErr:"Cannot use '$name' as the default value of a type's field. The default value cannot be a function, variable or calculation.",argsLenErr:"Too many arguments passed into the `$name()` function call. Passed $lenA arguments but expected $lenB.",requiredParamErr:"No value assigned to the `$argName` parameter in $name()",argsSyntaxErr:"Syntax error after the argument for `$argName`. Arguments without their parameter name cannot be used after arguments with parameter names.",requestArgsErr:"Type $type cannot be used in $name '$argName' argument",mapKeyErr:"Incorrect `key` type `$type` in the variable. The `key` type must be one of the following: int, float, string, bool, color.",templateErr:"Incorrect number of arguments for the template: $countA expected, $countB passed.",templateNoSupportErr:"The '$name()' function does not support templates",ifOrSwitchTypeErr:"Return type of one of the '$keyword' blocks is not compatible with return type of other block(s) ($types)",argsNameErr:"The '$name' function does not have an argument with the name '$argName'",noFiledErr:"Object has no field $name",methodNotExistErr:"Could not find method or method reference '$methodName' for '$name'",tupleVarErr:"Syntax error: The quantities of tuple elements on each side of the assignment operator do not match. The right side has $indexA but the left side has $indexB.",tupleLeftVarErr:"Invalid assignment. Cannot assign a tuple to a variable '$name'.",tupleRightVarErr:"Cannot assign a variable to a tuple. The right side must be a function call or structure ('if', 'switch', 'for', 'while') returning a tuple with the same number of elements.",tempateTypeErr:"Syntax error: Only templates for arrays and matrices consist of a single type identifier enclosed in angle brackets.",qualifierErr:"'$name' is not a valid type qualifier. Possible values: 'const', 'simple', 'series'",notFindFuncErr:"Could not find function or function reference '$name'",naVarErr:"Value with NA type cannot be assigned to a variable that was defined without type keyword",notHistoryErr:"Variable '$name' doesn't have history values",defaultValueErr:"The default value cannot be a function, variable or calculation.",defaultValueTypeErr:"Default value of type $typeE can not be assigned to an argument of type $typeR",unaryErr:"Syntax error at input '$sign'",funcArgAssignErr:"Function arguments cannot be mutable ('$name')",declaredErr:"A variable declared with the '$prefix' keyword cannot accept values of the '$type' form. Assign a '$prefix' value to this variable or remove the '$prefix' keyword from its declaration.",globalFuncErr:"Cannot use '$name' in local scope",onlyStatementErr:"Scripts must contain one declaration statement: `indicator()`, `strategy()` or `library()`, Your script has $count.",modifyGlobalVarErr:"Cannot modify global variable '$name' in function",inputDefvalErr:"Arguments of input function must be of constant type, or 'source' builtin variables.",objectIsNaErr:"Cannot access the '$name' $type of an undefined object. The object is 'na'."};Lr.SERIES,Lr.SIMPLE,Lr.INPUT,Lr.CONST,Lr.INT,Lr.FLOAT,Lr.BOOL,Lr.COLOR,Lr.STRING;const o_=["close","open","high","low","hl2","hlc3","hlcc4","ohlc4","volume"];var li=(i=>(i[i.Hint=1]="Hint",i[i.Info=2]="Info",i[i.Warning=4]="Warning",i[i.Error=8]="Error",i))(li||{});class u_{constructor(t,e){G(this,"_cacheData");G(this,"_variables");G(this,"_errorListener");G(this,"_count");G(this,"_historyInputs");G(this,"_name");this._cacheData={},this._variables=t,this._errorListener=e,this._count=-1,this._name=`inputs_${Ip()}`,this._historyInputs=self.workerStorage.get(this._name)||{}}update(t){for(const e of t){const r=e.id;if(!this._cacheData[r])return;Object.assign(this._cacheData[r],{...e,isModify:!0}),self.workerStorage.updateValue(this._name,`in_${e.index}`,{modifyDefval:e.sourceTypeName||e.defval})}}input(t,e){return this._cacheHandle(t,e)}int(t,e){return this._cacheHandle(t,e,"int")}bool(t,e){return this._cacheHandle(t,e,"bool")}color(t,e){return this._cacheHandle(t,e,"color")}time(t,e){return this._cacheHandle(t,e,"time")}float(t,e){return this._cacheHandle(t,e,"float")}price(t,e){return this._cacheHandle(t,e,"price")}source(t,e){return this._cacheHandle(t,e,"source")}string(t,e){return this._cacheHandle(t,e,"string")}symbol(t,e){return this._cacheHandle(t,e,"symbol")}session(t,e){return this._cacheHandle(t,e,"session")}text_area(t,e){return this._cacheHandle(t,e,"text_area")}timeframe(t,e){return this._cacheHandle(t,e,"timeframe")}_cacheHandle(t,e,r){const n=`${r||"input"}_${e}`,s=this._cacheData[n];if(t.defval===void 0&&this._errorListener.addError(s_.inputDefvalErr,e,li.Error),s)s.isModify?s.sourceTypeName&&(this._cacheData[n].defval=this._variables[s.sourceTypeName]):Object.assign(this._cacheData[n],t);else{const{defval:a,display:l}=t;this._displayVerify(e,l),this._count++,t={inputType:r,...t,index:this._count},this._cacheData[n]=t,this._judgeHistoryInputs(t),(r||t.inputType)==="source"?this._cacheData[n].options=o_:t.options&&!t.options.includes(a)&&this._errorListener.addError(`input's defval should be in options, but '${a}' is not in [${t.options.toString()}]`,e,li.Error)}return this._cacheData[n].defval}_judgeHistoryInputs(t){const{defval:e,sourceTypeName:r,index:n}=t;let s=r||e;const a=`in_${n}`,l=this._historyInputs[a];if(!l)self.workerStorage.setValue(this._name,a,{defval:s});else{const{defval:f,modifyDefval:h}=l;f===s?s=h||s:self.workerStorage.setValue(this._name,a,{defval:s})}r?t.sourceTypeName=s:t.defval=s}_displayVerify(t,e){!e||!e.length||e.includes(tr.dataWindow)||e.includes(tr.statusLine)||this._errorListener.addError("Invalid argument 'display' in 'input' call. Possible values: [display.none, display.data_window, display.status_line, display.all]",t,li.Error)}getInputs(){var n;const t=Object.keys(this._cacheData),e=new Map,r=[];for(const s of t){const a=this._cacheData[s];a.id=s;const{group:l}=a;l?e.has(l)?(n=e.get(l))==null||n.push(a):e.set(l,[a]):r.push(a)}return[...this._getGroups(e),{inputs:r}]}_getGroups(t){const e=[];for(const[r,n]of t)e.push({name:r,inputs:n});return e}}class a_{color({x:t}){return t}new({color:t,transp:e=100}){const{r,g:n,b:s}=this._parseColor(t);return`rgba(${Math.round(r)}, ${Math.round(n)}, ${Math.round(s)}, ${e/100})`}rgb({red:t,green:e,blue:r,transp:n=0}){return`rgba(${t}, ${e}, ${r}, ${n/100})`}g({color:t}){return t?this._parseColor(t).g:0}r({color:t}){return t?this._parseColor(t).r:0}b({color:t}){return t?this._parseColor(t).b:0}t({color:t}){return t?Math.round(this._parseColor(t).a*100):0}from_gradient({value:t,bottom_value:e,top_value:r,bottom_color:n,top_color:s}){const a=(t-e)/(r-e),l=Math.min(Math.max(a,0),1),{r:f,g:h,b:p,a:c}=this._parseColor(n),{r:d,g:_,b:D,a:g}=this._parseColor(s),y=f+l*(d-f),v=h+l*(_-h),E=p+l*(D-p),b=c+l*(g-c);return`rgba(${Math.round(y)}, ${Math.round(v)}, ${Math.round(E)}, ${b.toFixed(2)})`}_parseColor(t){let e,r,n,s;if(t.startsWith("#")){e=parseInt(t.substring(1,3),16),r=parseInt(t.substring(3,5),16),n=parseInt(t.substring(5,7),16);const a=t.substring(7);a?s=(255-parseInt(a,16))/255:s=1}else{const a=this._parserRgbColor(t);e=a[0],r=a[1],n=a[2],s=a[3]||1}return{r:e,g:r,b:n,a:s}}_parserRgbColor(t){var e;return((e=t.match(/\d+/g))==null?void 0:e.map(Number))||[]}}var Pt={};const l_=Object.prototype.toString;function Wi(i){const t=l_.call(i);return t.endsWith("Array]")&&!t.includes("Big")}var f_=Object.freeze({__proto__:null,isAnyArray:Wi}),c_=De(f_);function h_(i){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!Wi(i))throw new TypeError("input must be an array");if(i.length===0)throw new TypeError("input must not be empty");var e=t.fromIndex,r=e===void 0?0:e,n=t.toIndex,s=n===void 0?i.length:n;if(r<0||r>=i.length||!Number.isInteger(r))throw new Error("fromIndex must be a positive integer smaller than length");if(s<=r||s>i.length||!Number.isInteger(s))throw new Error("toIndex must be an integer greater than fromIndex and at most equal to length");for(var a=i[r],l=r+1;l<s;l++)i[l]>a&&(a=i[l]);return a}function p_(i){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!Wi(i))throw new TypeError("input must be an array");if(i.length===0)throw new TypeError("input must not be empty");var e=t.fromIndex,r=e===void 0?0:e,n=t.toIndex,s=n===void 0?i.length:n;if(r<0||r>=i.length||!Number.isInteger(r))throw new Error("fromIndex must be a positive integer smaller than length");if(s<=r||s>i.length||!Number.isInteger(s))throw new Error("toIndex must be an integer greater than fromIndex and at most equal to length");for(var a=i[r],l=r+1;l<s;l++)i[l]<a&&(a=i[l]);return a}function m_(i){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(Wi(i)){if(i.length===0)throw new TypeError("input must not be empty")}else throw new TypeError("input must be an array");var e;if(t.output!==void 0){if(!Wi(t.output))throw new TypeError("output option must be an array if specified");e=t.output}else e=new Array(i.length);var r=p_(i),n=h_(i);if(r===n)throw new RangeError("minimum and maximum input values are equal. Cannot rescale a constant array");var s=t.min,a=s===void 0?t.autoMinMax?r:0:s,l=t.max,f=l===void 0?t.autoMinMax?n:1:l;if(a>=f)throw new RangeError("min option must be smaller than max option");for(var h=(f-a)/(n-r),p=0;p<i.length;p++)e[p]=(i[p]-r)*h+a;return e}var d_=Object.freeze({__proto__:null,default:m_}),g_=De(d_);Object.defineProperty(Pt,"__esModule",{value:!0});var Je=c_,Sc=g_;const Js=" ".repeat(2),Bc=" ".repeat(4);function v_(){return Ic(this)}function Ic(i,t={}){const{maxRows:e=15,maxColumns:r=10,maxNumSize:n=8,padMinus:s="auto"}=t;return`${i.constructor.name} {
|
55
|
+
${Js}[
|
56
|
+
${Bc}${__(i,e,r,n,s)}
|
57
|
+
${Js}]
|
58
|
+
${Js}rows: ${i.rows}
|
59
|
+
${Js}columns: ${i.columns}
|
60
|
+
}`}function __(i,t,e,r,n){const{rows:s,columns:a}=i,l=Math.min(s,t),f=Math.min(a,e),h=[];if(n==="auto"){n=!1;t:for(let p=0;p<l;p++)for(let c=0;c<f;c++)if(i.get(p,c)<0){n=!0;break t}}for(let p=0;p<l;p++){let c=[];for(let d=0;d<f;d++)c.push(w_(i.get(p,d),r,n));h.push(`${c.join(" ")}`)}return f!==a&&(h[h.length-1]+=` ... ${a-e} more columns`),l!==s&&h.push(`... ${s-t} more rows`),h.join(`
|
61
|
+
${Bc}`)}function w_(i,t,e){return(i>=0&&e?` ${Tc(i,t-1)}`:Tc(i,t)).padEnd(t)}function Tc(i,t){let e=i.toString();if(e.length<=t)return e;let r=i.toFixed(t);if(r.length>t&&(r=i.toFixed(Math.max(0,t-(r.length-t)))),r.length<=t&&!r.startsWith("0.000")&&!r.startsWith("-0.000"))return r;let n=i.toExponential(t);return n.length>t&&(n=i.toExponential(Math.max(0,t-(n.length-t)))),n.slice(0)}function D_(i,t){i.prototype.add=function(r){return typeof r=="number"?this.addS(r):this.addM(r)},i.prototype.addS=function(r){for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)+r);return this},i.prototype.addM=function(r){if(r=t.checkMatrix(r),this.rows!==r.rows||this.columns!==r.columns)throw new RangeError("Matrices dimensions must be equal");for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)+r.get(n,s));return this},i.add=function(r,n){return new t(r).add(n)},i.prototype.sub=function(r){return typeof r=="number"?this.subS(r):this.subM(r)},i.prototype.subS=function(r){for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)-r);return this},i.prototype.subM=function(r){if(r=t.checkMatrix(r),this.rows!==r.rows||this.columns!==r.columns)throw new RangeError("Matrices dimensions must be equal");for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)-r.get(n,s));return this},i.sub=function(r,n){return new t(r).sub(n)},i.prototype.subtract=i.prototype.sub,i.prototype.subtractS=i.prototype.subS,i.prototype.subtractM=i.prototype.subM,i.subtract=i.sub,i.prototype.mul=function(r){return typeof r=="number"?this.mulS(r):this.mulM(r)},i.prototype.mulS=function(r){for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)*r);return this},i.prototype.mulM=function(r){if(r=t.checkMatrix(r),this.rows!==r.rows||this.columns!==r.columns)throw new RangeError("Matrices dimensions must be equal");for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)*r.get(n,s));return this},i.mul=function(r,n){return new t(r).mul(n)},i.prototype.multiply=i.prototype.mul,i.prototype.multiplyS=i.prototype.mulS,i.prototype.multiplyM=i.prototype.mulM,i.multiply=i.mul,i.prototype.div=function(r){return typeof r=="number"?this.divS(r):this.divM(r)},i.prototype.divS=function(r){for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)/r);return this},i.prototype.divM=function(r){if(r=t.checkMatrix(r),this.rows!==r.rows||this.columns!==r.columns)throw new RangeError("Matrices dimensions must be equal");for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)/r.get(n,s));return this},i.div=function(r,n){return new t(r).div(n)},i.prototype.divide=i.prototype.div,i.prototype.divideS=i.prototype.divS,i.prototype.divideM=i.prototype.divM,i.divide=i.div,i.prototype.mod=function(r){return typeof r=="number"?this.modS(r):this.modM(r)},i.prototype.modS=function(r){for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)%r);return this},i.prototype.modM=function(r){if(r=t.checkMatrix(r),this.rows!==r.rows||this.columns!==r.columns)throw new RangeError("Matrices dimensions must be equal");for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)%r.get(n,s));return this},i.mod=function(r,n){return new t(r).mod(n)},i.prototype.modulus=i.prototype.mod,i.prototype.modulusS=i.prototype.modS,i.prototype.modulusM=i.prototype.modM,i.modulus=i.mod,i.prototype.and=function(r){return typeof r=="number"?this.andS(r):this.andM(r)},i.prototype.andS=function(r){for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)&r);return this},i.prototype.andM=function(r){if(r=t.checkMatrix(r),this.rows!==r.rows||this.columns!==r.columns)throw new RangeError("Matrices dimensions must be equal");for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)&r.get(n,s));return this},i.and=function(r,n){return new t(r).and(n)},i.prototype.or=function(r){return typeof r=="number"?this.orS(r):this.orM(r)},i.prototype.orS=function(r){for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)|r);return this},i.prototype.orM=function(r){if(r=t.checkMatrix(r),this.rows!==r.rows||this.columns!==r.columns)throw new RangeError("Matrices dimensions must be equal");for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)|r.get(n,s));return this},i.or=function(r,n){return new t(r).or(n)},i.prototype.xor=function(r){return typeof r=="number"?this.xorS(r):this.xorM(r)},i.prototype.xorS=function(r){for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)^r);return this},i.prototype.xorM=function(r){if(r=t.checkMatrix(r),this.rows!==r.rows||this.columns!==r.columns)throw new RangeError("Matrices dimensions must be equal");for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)^r.get(n,s));return this},i.xor=function(r,n){return new t(r).xor(n)},i.prototype.leftShift=function(r){return typeof r=="number"?this.leftShiftS(r):this.leftShiftM(r)},i.prototype.leftShiftS=function(r){for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)<<r);return this},i.prototype.leftShiftM=function(r){if(r=t.checkMatrix(r),this.rows!==r.rows||this.columns!==r.columns)throw new RangeError("Matrices dimensions must be equal");for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)<<r.get(n,s));return this},i.leftShift=function(r,n){return new t(r).leftShift(n)},i.prototype.signPropagatingRightShift=function(r){return typeof r=="number"?this.signPropagatingRightShiftS(r):this.signPropagatingRightShiftM(r)},i.prototype.signPropagatingRightShiftS=function(r){for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)>>r);return this},i.prototype.signPropagatingRightShiftM=function(r){if(r=t.checkMatrix(r),this.rows!==r.rows||this.columns!==r.columns)throw new RangeError("Matrices dimensions must be equal");for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)>>r.get(n,s));return this},i.signPropagatingRightShift=function(r,n){return new t(r).signPropagatingRightShift(n)},i.prototype.rightShift=function(r){return typeof r=="number"?this.rightShiftS(r):this.rightShiftM(r)},i.prototype.rightShiftS=function(r){for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)>>>r);return this},i.prototype.rightShiftM=function(r){if(r=t.checkMatrix(r),this.rows!==r.rows||this.columns!==r.columns)throw new RangeError("Matrices dimensions must be equal");for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,this.get(n,s)>>>r.get(n,s));return this},i.rightShift=function(r,n){return new t(r).rightShift(n)},i.prototype.zeroFillRightShift=i.prototype.rightShift,i.prototype.zeroFillRightShiftS=i.prototype.rightShiftS,i.prototype.zeroFillRightShiftM=i.prototype.rightShiftM,i.zeroFillRightShift=i.rightShift,i.prototype.not=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,~this.get(r,n));return this},i.not=function(r){return new t(r).not()},i.prototype.abs=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.abs(this.get(r,n)));return this},i.abs=function(r){return new t(r).abs()},i.prototype.acos=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.acos(this.get(r,n)));return this},i.acos=function(r){return new t(r).acos()},i.prototype.acosh=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.acosh(this.get(r,n)));return this},i.acosh=function(r){return new t(r).acosh()},i.prototype.asin=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.asin(this.get(r,n)));return this},i.asin=function(r){return new t(r).asin()},i.prototype.asinh=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.asinh(this.get(r,n)));return this},i.asinh=function(r){return new t(r).asinh()},i.prototype.atan=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.atan(this.get(r,n)));return this},i.atan=function(r){return new t(r).atan()},i.prototype.atanh=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.atanh(this.get(r,n)));return this},i.atanh=function(r){return new t(r).atanh()},i.prototype.cbrt=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.cbrt(this.get(r,n)));return this},i.cbrt=function(r){return new t(r).cbrt()},i.prototype.ceil=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.ceil(this.get(r,n)));return this},i.ceil=function(r){return new t(r).ceil()},i.prototype.clz32=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.clz32(this.get(r,n)));return this},i.clz32=function(r){return new t(r).clz32()},i.prototype.cos=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.cos(this.get(r,n)));return this},i.cos=function(r){return new t(r).cos()},i.prototype.cosh=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.cosh(this.get(r,n)));return this},i.cosh=function(r){return new t(r).cosh()},i.prototype.exp=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.exp(this.get(r,n)));return this},i.exp=function(r){return new t(r).exp()},i.prototype.expm1=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.expm1(this.get(r,n)));return this},i.expm1=function(r){return new t(r).expm1()},i.prototype.floor=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.floor(this.get(r,n)));return this},i.floor=function(r){return new t(r).floor()},i.prototype.fround=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.fround(this.get(r,n)));return this},i.fround=function(r){return new t(r).fround()},i.prototype.log=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.log(this.get(r,n)));return this},i.log=function(r){return new t(r).log()},i.prototype.log1p=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.log1p(this.get(r,n)));return this},i.log1p=function(r){return new t(r).log1p()},i.prototype.log10=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.log10(this.get(r,n)));return this},i.log10=function(r){return new t(r).log10()},i.prototype.log2=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.log2(this.get(r,n)));return this},i.log2=function(r){return new t(r).log2()},i.prototype.round=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.round(this.get(r,n)));return this},i.round=function(r){return new t(r).round()},i.prototype.sign=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.sign(this.get(r,n)));return this},i.sign=function(r){return new t(r).sign()},i.prototype.sin=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.sin(this.get(r,n)));return this},i.sin=function(r){return new t(r).sin()},i.prototype.sinh=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.sinh(this.get(r,n)));return this},i.sinh=function(r){return new t(r).sinh()},i.prototype.sqrt=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.sqrt(this.get(r,n)));return this},i.sqrt=function(r){return new t(r).sqrt()},i.prototype.tan=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.tan(this.get(r,n)));return this},i.tan=function(r){return new t(r).tan()},i.prototype.tanh=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.tanh(this.get(r,n)));return this},i.tanh=function(r){return new t(r).tanh()},i.prototype.trunc=function(){for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.set(r,n,Math.trunc(this.get(r,n)));return this},i.trunc=function(r){return new t(r).trunc()},i.pow=function(r,n){return new t(r).pow(n)},i.prototype.pow=function(r){return typeof r=="number"?this.powS(r):this.powM(r)},i.prototype.powS=function(r){for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,Math.pow(this.get(n,s),r));return this},i.prototype.powM=function(r){if(r=t.checkMatrix(r),this.rows!==r.rows||this.columns!==r.columns)throw new RangeError("Matrices dimensions must be equal");for(let n=0;n<this.rows;n++)for(let s=0;s<this.columns;s++)this.set(n,s,Math.pow(this.get(n,s),r.get(n,s)));return this}}function gr(i,t,e){let r=e?i.rows:i.rows-1;if(t<0||t>r)throw new RangeError("Row index out of range")}function vr(i,t,e){let r=e?i.columns:i.columns-1;if(t<0||t>r)throw new RangeError("Column index out of range")}function fi(i,t){if(t.to1DArray&&(t=t.to1DArray()),t.length!==i.columns)throw new RangeError("vector size must be the same as the number of columns");return t}function ci(i,t){if(t.to1DArray&&(t=t.to1DArray()),t.length!==i.rows)throw new RangeError("vector size must be the same as the number of rows");return t}function Su(i,t){if(!Je.isAnyArray(t))throw new TypeError("row indices must be an array");for(let e=0;e<t.length;e++)if(t[e]<0||t[e]>=i.rows)throw new RangeError("row indices are out of range")}function Bu(i,t){if(!Je.isAnyArray(t))throw new TypeError("column indices must be an array");for(let e=0;e<t.length;e++)if(t[e]<0||t[e]>=i.columns)throw new RangeError("column indices are out of range")}function Iu(i,t,e,r,n){if(arguments.length!==5)throw new RangeError("expected 4 arguments");if(Hs("startRow",t),Hs("endRow",e),Hs("startColumn",r),Hs("endColumn",n),t>e||r>n||t<0||t>=i.rows||e<0||e>=i.rows||r<0||r>=i.columns||n<0||n>=i.columns)throw new RangeError("Submatrix indices are out of range")}function Xs(i,t=0){let e=[];for(let r=0;r<i;r++)e.push(t);return e}function Hs(i,t){if(typeof t!="number")throw new TypeError(`${i} must be a number`)}function hi(i){if(i.isEmpty())throw new Error("Empty matrix has no elements to index")}function y_(i){let t=Xs(i.rows);for(let e=0;e<i.rows;++e)for(let r=0;r<i.columns;++r)t[e]+=i.get(e,r);return t}function b_(i){let t=Xs(i.columns);for(let e=0;e<i.rows;++e)for(let r=0;r<i.columns;++r)t[r]+=i.get(e,r);return t}function E_(i){let t=0;for(let e=0;e<i.rows;e++)for(let r=0;r<i.columns;r++)t+=i.get(e,r);return t}function A_(i){let t=Xs(i.rows,1);for(let e=0;e<i.rows;++e)for(let r=0;r<i.columns;++r)t[e]*=i.get(e,r);return t}function x_(i){let t=Xs(i.columns,1);for(let e=0;e<i.rows;++e)for(let r=0;r<i.columns;++r)t[r]*=i.get(e,r);return t}function C_(i){let t=1;for(let e=0;e<i.rows;e++)for(let r=0;r<i.columns;r++)t*=i.get(e,r);return t}function F_(i,t,e){const r=i.rows,n=i.columns,s=[];for(let a=0;a<r;a++){let l=0,f=0,h=0;for(let p=0;p<n;p++)h=i.get(a,p)-e[a],l+=h,f+=h*h;t?s.push((f-l*l/n)/(n-1)):s.push((f-l*l/n)/n)}return s}function M_(i,t,e){const r=i.rows,n=i.columns,s=[];for(let a=0;a<n;a++){let l=0,f=0,h=0;for(let p=0;p<r;p++)h=i.get(p,a)-e[a],l+=h,f+=h*h;t?s.push((f-l*l/r)/(r-1)):s.push((f-l*l/r)/r)}return s}function N_(i,t,e){const r=i.rows,n=i.columns,s=r*n;let a=0,l=0,f=0;for(let h=0;h<r;h++)for(let p=0;p<n;p++)f=i.get(h,p)-e,a+=f,l+=f*f;return t?(l-a*a/s)/(s-1):(l-a*a/s)/s}function S_(i,t){for(let e=0;e<i.rows;e++)for(let r=0;r<i.columns;r++)i.set(e,r,i.get(e,r)-t[e])}function B_(i,t){for(let e=0;e<i.rows;e++)for(let r=0;r<i.columns;r++)i.set(e,r,i.get(e,r)-t[r])}function I_(i,t){for(let e=0;e<i.rows;e++)for(let r=0;r<i.columns;r++)i.set(e,r,i.get(e,r)-t)}function T_(i){const t=[];for(let e=0;e<i.rows;e++){let r=0;for(let n=0;n<i.columns;n++)r+=Math.pow(i.get(e,n),2)/(i.columns-1);t.push(Math.sqrt(r))}return t}function $_(i,t){for(let e=0;e<i.rows;e++)for(let r=0;r<i.columns;r++)i.set(e,r,i.get(e,r)/t[e])}function O_(i){const t=[];for(let e=0;e<i.columns;e++){let r=0;for(let n=0;n<i.rows;n++)r+=Math.pow(i.get(n,e),2)/(i.rows-1);t.push(Math.sqrt(r))}return t}function R_(i,t){for(let e=0;e<i.rows;e++)for(let r=0;r<i.columns;r++)i.set(e,r,i.get(e,r)/t[r])}function L_(i){const t=i.size-1;let e=0;for(let r=0;r<i.columns;r++)for(let n=0;n<i.rows;n++)e+=Math.pow(i.get(n,r),2)/t;return Math.sqrt(e)}function P_(i,t){for(let e=0;e<i.rows;e++)for(let r=0;r<i.columns;r++)i.set(e,r,i.get(e,r)/t)}class $t{static from1DArray(t,e,r){if(t*e!==r.length)throw new RangeError("data length does not match given dimensions");let s=new pt(t,e);for(let a=0;a<t;a++)for(let l=0;l<e;l++)s.set(a,l,r[a*e+l]);return s}static rowVector(t){let e=new pt(1,t.length);for(let r=0;r<t.length;r++)e.set(0,r,t[r]);return e}static columnVector(t){let e=new pt(t.length,1);for(let r=0;r<t.length;r++)e.set(r,0,t[r]);return e}static zeros(t,e){return new pt(t,e)}static ones(t,e){return new pt(t,e).fill(1)}static rand(t,e,r={}){if(typeof r!="object")throw new TypeError("options must be an object");const{random:n=Math.random}=r;let s=new pt(t,e);for(let a=0;a<t;a++)for(let l=0;l<e;l++)s.set(a,l,n());return s}static randInt(t,e,r={}){if(typeof r!="object")throw new TypeError("options must be an object");const{min:n=0,max:s=1e3,random:a=Math.random}=r;if(!Number.isInteger(n))throw new TypeError("min must be an integer");if(!Number.isInteger(s))throw new TypeError("max must be an integer");if(n>=s)throw new RangeError("min must be smaller than max");let l=s-n,f=new pt(t,e);for(let h=0;h<t;h++)for(let p=0;p<e;p++){let c=n+Math.round(a()*l);f.set(h,p,c)}return f}static eye(t,e,r){e===void 0&&(e=t),r===void 0&&(r=1);let n=Math.min(t,e),s=this.zeros(t,e);for(let a=0;a<n;a++)s.set(a,a,r);return s}static diag(t,e,r){let n=t.length;e===void 0&&(e=n),r===void 0&&(r=e);let s=Math.min(n,e,r),a=this.zeros(e,r);for(let l=0;l<s;l++)a.set(l,l,t[l]);return a}static min(t,e){t=this.checkMatrix(t),e=this.checkMatrix(e);let r=t.rows,n=t.columns,s=new pt(r,n);for(let a=0;a<r;a++)for(let l=0;l<n;l++)s.set(a,l,Math.min(t.get(a,l),e.get(a,l)));return s}static max(t,e){t=this.checkMatrix(t),e=this.checkMatrix(e);let r=t.rows,n=t.columns,s=new this(r,n);for(let a=0;a<r;a++)for(let l=0;l<n;l++)s.set(a,l,Math.max(t.get(a,l),e.get(a,l)));return s}static checkMatrix(t){return $t.isMatrix(t)?t:new pt(t)}static isMatrix(t){return t!=null&&t.klass==="Matrix"}get size(){return this.rows*this.columns}apply(t){if(typeof t!="function")throw new TypeError("callback must be a function");for(let e=0;e<this.rows;e++)for(let r=0;r<this.columns;r++)t.call(this,e,r);return this}to1DArray(){let t=[];for(let e=0;e<this.rows;e++)for(let r=0;r<this.columns;r++)t.push(this.get(e,r));return t}to2DArray(){let t=[];for(let e=0;e<this.rows;e++){t.push([]);for(let r=0;r<this.columns;r++)t[e].push(this.get(e,r))}return t}toJSON(){return this.to2DArray()}isRowVector(){return this.rows===1}isColumnVector(){return this.columns===1}isVector(){return this.rows===1||this.columns===1}isSquare(){return this.rows===this.columns}isEmpty(){return this.rows===0||this.columns===0}isSymmetric(){if(this.isSquare()){for(let t=0;t<this.rows;t++)for(let e=0;e<=t;e++)if(this.get(t,e)!==this.get(e,t))return!1;return!0}return!1}isDistance(){if(!this.isSymmetric())return!1;for(let t=0;t<this.rows;t++)if(this.get(t,t)!==0)return!1;return!0}isEchelonForm(){let t=0,e=0,r=-1,n=!0,s=!1;for(;t<this.rows&&n;){for(e=0,s=!1;e<this.columns&&s===!1;)this.get(t,e)===0?e++:this.get(t,e)===1&&e>r?(s=!0,r=e):(n=!1,s=!0);t++}return n}isReducedEchelonForm(){let t=0,e=0,r=-1,n=!0,s=!1;for(;t<this.rows&&n;){for(e=0,s=!1;e<this.columns&&s===!1;)this.get(t,e)===0?e++:this.get(t,e)===1&&e>r?(s=!0,r=e):(n=!1,s=!0);for(let a=e+1;a<this.rows;a++)this.get(t,a)!==0&&(n=!1);t++}return n}echelonForm(){let t=this.clone(),e=0,r=0;for(;e<t.rows&&r<t.columns;){let n=e;for(let s=e;s<t.rows;s++)t.get(s,r)>t.get(n,r)&&(n=s);if(t.get(n,r)===0)r++;else{t.swapRows(e,n);let s=t.get(e,r);for(let a=r;a<t.columns;a++)t.set(e,a,t.get(e,a)/s);for(let a=e+1;a<t.rows;a++){let l=t.get(a,r)/t.get(e,r);t.set(a,r,0);for(let f=r+1;f<t.columns;f++)t.set(a,f,t.get(a,f)-t.get(e,f)*l)}e++,r++}}return t}reducedEchelonForm(){let t=this.echelonForm(),e=t.columns,r=t.rows,n=r-1;for(;n>=0;)if(t.maxRow(n)===0)n--;else{let s=0,a=!1;for(;s<r&&a===!1;)t.get(n,s)===1?a=!0:s++;for(let l=0;l<n;l++){let f=t.get(l,s);for(let h=s;h<e;h++){let p=t.get(l,h)-f*t.get(n,h);t.set(l,h,p)}}n--}return t}set(){throw new Error("set method is unimplemented")}get(){throw new Error("get method is unimplemented")}repeat(t={}){if(typeof t!="object")throw new TypeError("options must be an object");const{rows:e=1,columns:r=1}=t;if(!Number.isInteger(e)||e<=0)throw new TypeError("rows must be a positive integer");if(!Number.isInteger(r)||r<=0)throw new TypeError("columns must be a positive integer");let n=new pt(this.rows*e,this.columns*r);for(let s=0;s<e;s++)for(let a=0;a<r;a++)n.setSubMatrix(this,this.rows*s,this.columns*a);return n}fill(t){for(let e=0;e<this.rows;e++)for(let r=0;r<this.columns;r++)this.set(e,r,t);return this}neg(){return this.mulS(-1)}getRow(t){gr(this,t);let e=[];for(let r=0;r<this.columns;r++)e.push(this.get(t,r));return e}getRowVector(t){return pt.rowVector(this.getRow(t))}setRow(t,e){gr(this,t),e=fi(this,e);for(let r=0;r<this.columns;r++)this.set(t,r,e[r]);return this}swapRows(t,e){gr(this,t),gr(this,e);for(let r=0;r<this.columns;r++){let n=this.get(t,r);this.set(t,r,this.get(e,r)),this.set(e,r,n)}return this}getColumn(t){vr(this,t);let e=[];for(let r=0;r<this.rows;r++)e.push(this.get(r,t));return e}getColumnVector(t){return pt.columnVector(this.getColumn(t))}setColumn(t,e){vr(this,t),e=ci(this,e);for(let r=0;r<this.rows;r++)this.set(r,t,e[r]);return this}swapColumns(t,e){vr(this,t),vr(this,e);for(let r=0;r<this.rows;r++){let n=this.get(r,t);this.set(r,t,this.get(r,e)),this.set(r,e,n)}return this}addRowVector(t){t=fi(this,t);for(let e=0;e<this.rows;e++)for(let r=0;r<this.columns;r++)this.set(e,r,this.get(e,r)+t[r]);return this}subRowVector(t){t=fi(this,t);for(let e=0;e<this.rows;e++)for(let r=0;r<this.columns;r++)this.set(e,r,this.get(e,r)-t[r]);return this}mulRowVector(t){t=fi(this,t);for(let e=0;e<this.rows;e++)for(let r=0;r<this.columns;r++)this.set(e,r,this.get(e,r)*t[r]);return this}divRowVector(t){t=fi(this,t);for(let e=0;e<this.rows;e++)for(let r=0;r<this.columns;r++)this.set(e,r,this.get(e,r)/t[r]);return this}addColumnVector(t){t=ci(this,t);for(let e=0;e<this.rows;e++)for(let r=0;r<this.columns;r++)this.set(e,r,this.get(e,r)+t[e]);return this}subColumnVector(t){t=ci(this,t);for(let e=0;e<this.rows;e++)for(let r=0;r<this.columns;r++)this.set(e,r,this.get(e,r)-t[e]);return this}mulColumnVector(t){t=ci(this,t);for(let e=0;e<this.rows;e++)for(let r=0;r<this.columns;r++)this.set(e,r,this.get(e,r)*t[e]);return this}divColumnVector(t){t=ci(this,t);for(let e=0;e<this.rows;e++)for(let r=0;r<this.columns;r++)this.set(e,r,this.get(e,r)/t[e]);return this}mulRow(t,e){gr(this,t);for(let r=0;r<this.columns;r++)this.set(t,r,this.get(t,r)*e);return this}mulColumn(t,e){vr(this,t);for(let r=0;r<this.rows;r++)this.set(r,t,this.get(r,t)*e);return this}max(t){if(this.isEmpty())return NaN;switch(t){case"row":{const e=new Array(this.rows).fill(Number.NEGATIVE_INFINITY);for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.get(r,n)>e[r]&&(e[r]=this.get(r,n));return e}case"column":{const e=new Array(this.columns).fill(Number.NEGATIVE_INFINITY);for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.get(r,n)>e[n]&&(e[n]=this.get(r,n));return e}case void 0:{let e=this.get(0,0);for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.get(r,n)>e&&(e=this.get(r,n));return e}default:throw new Error(`invalid option: ${t}`)}}maxIndex(){hi(this);let t=this.get(0,0),e=[0,0];for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.get(r,n)>t&&(t=this.get(r,n),e[0]=r,e[1]=n);return e}min(t){if(this.isEmpty())return NaN;switch(t){case"row":{const e=new Array(this.rows).fill(Number.POSITIVE_INFINITY);for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.get(r,n)<e[r]&&(e[r]=this.get(r,n));return e}case"column":{const e=new Array(this.columns).fill(Number.POSITIVE_INFINITY);for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.get(r,n)<e[n]&&(e[n]=this.get(r,n));return e}case void 0:{let e=this.get(0,0);for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.get(r,n)<e&&(e=this.get(r,n));return e}default:throw new Error(`invalid option: ${t}`)}}minIndex(){hi(this);let t=this.get(0,0),e=[0,0];for(let r=0;r<this.rows;r++)for(let n=0;n<this.columns;n++)this.get(r,n)<t&&(t=this.get(r,n),e[0]=r,e[1]=n);return e}maxRow(t){if(gr(this,t),this.isEmpty())return NaN;let e=this.get(t,0);for(let r=1;r<this.columns;r++)this.get(t,r)>e&&(e=this.get(t,r));return e}maxRowIndex(t){gr(this,t),hi(this);let e=this.get(t,0),r=[t,0];for(let n=1;n<this.columns;n++)this.get(t,n)>e&&(e=this.get(t,n),r[1]=n);return r}minRow(t){if(gr(this,t),this.isEmpty())return NaN;let e=this.get(t,0);for(let r=1;r<this.columns;r++)this.get(t,r)<e&&(e=this.get(t,r));return e}minRowIndex(t){gr(this,t),hi(this);let e=this.get(t,0),r=[t,0];for(let n=1;n<this.columns;n++)this.get(t,n)<e&&(e=this.get(t,n),r[1]=n);return r}maxColumn(t){if(vr(this,t),this.isEmpty())return NaN;let e=this.get(0,t);for(let r=1;r<this.rows;r++)this.get(r,t)>e&&(e=this.get(r,t));return e}maxColumnIndex(t){vr(this,t),hi(this);let e=this.get(0,t),r=[0,t];for(let n=1;n<this.rows;n++)this.get(n,t)>e&&(e=this.get(n,t),r[0]=n);return r}minColumn(t){if(vr(this,t),this.isEmpty())return NaN;let e=this.get(0,t);for(let r=1;r<this.rows;r++)this.get(r,t)<e&&(e=this.get(r,t));return e}minColumnIndex(t){vr(this,t),hi(this);let e=this.get(0,t),r=[0,t];for(let n=1;n<this.rows;n++)this.get(n,t)<e&&(e=this.get(n,t),r[0]=n);return r}diag(){let t=Math.min(this.rows,this.columns),e=[];for(let r=0;r<t;r++)e.push(this.get(r,r));return e}norm(t="frobenius"){switch(t){case"max":return this.max();case"frobenius":return Math.sqrt(this.dot(this));default:throw new RangeError(`unknown norm type: ${t}`)}}cumulativeSum(){let t=0;for(let e=0;e<this.rows;e++)for(let r=0;r<this.columns;r++)t+=this.get(e,r),this.set(e,r,t);return this}dot(t){$t.isMatrix(t)&&(t=t.to1DArray());let e=this.to1DArray();if(e.length!==t.length)throw new RangeError("vectors do not have the same size");let r=0;for(let n=0;n<e.length;n++)r+=e[n]*t[n];return r}mmul(t){t=pt.checkMatrix(t);let e=this.rows,r=this.columns,n=t.columns,s=new pt(e,n),a=new Float64Array(r);for(let l=0;l<n;l++){for(let f=0;f<r;f++)a[f]=t.get(f,l);for(let f=0;f<e;f++){let h=0;for(let p=0;p<r;p++)h+=this.get(f,p)*a[p];s.set(f,l,h)}}return s}strassen2x2(t){t=pt.checkMatrix(t);let e=new pt(2,2);const r=this.get(0,0),n=t.get(0,0),s=this.get(0,1),a=t.get(0,1),l=this.get(1,0),f=t.get(1,0),h=this.get(1,1),p=t.get(1,1),c=(r+h)*(n+p),d=(l+h)*n,_=r*(a-p),D=h*(f-n),g=(r+s)*p,y=(l-r)*(n+a),v=(s-h)*(f+p),E=c+D-g+v,b=_+g,N=d+D,x=c-d+_+y;return e.set(0,0,E),e.set(0,1,b),e.set(1,0,N),e.set(1,1,x),e}strassen3x3(t){t=pt.checkMatrix(t);let e=new pt(3,3);const r=this.get(0,0),n=this.get(0,1),s=this.get(0,2),a=this.get(1,0),l=this.get(1,1),f=this.get(1,2),h=this.get(2,0),p=this.get(2,1),c=this.get(2,2),d=t.get(0,0),_=t.get(0,1),D=t.get(0,2),g=t.get(1,0),y=t.get(1,1),v=t.get(1,2),E=t.get(2,0),b=t.get(2,1),N=t.get(2,2),x=(r+n+s-a-l-p-c)*y,F=(r-a)*(-_+y),M=l*(-d+_+g-y-v-E+N),S=(-r+a+l)*(d-_+y),$=(a+l)*(-d+_),C=r*d,I=(-r+h+p)*(d-D+v),R=(-r+h)*(D-v),U=(h+p)*(-d+D),q=(r+n+s-l-f-h-p)*v,k=p*(-d+D+g-y-v-E+b),P=(-s+p+c)*(y+E-b),K=(s-c)*(y-b),j=s*E,Q=(p+c)*(-E+b),tt=(-s+l+f)*(v+E-N),ft=(s-f)*(v-N),vt=(l+f)*(-E+N),lt=n*g,wt=f*b,yt=a*D,St=h*_,bt=c*N,ee=C+j+lt,It=x+S+$+C+P+j+Q,Mt=C+I+U+q+j+tt+vt,ie=F+M+S+C+j+tt+ft,Ht=F+S+$+C+wt,zt=j+tt+ft+vt+yt,Gt=C+I+R+k+P+K+j,Ce=P+K+j+Q+St,ir=C+I+R+U+bt;return e.set(0,0,ee),e.set(0,1,It),e.set(0,2,Mt),e.set(1,0,ie),e.set(1,1,Ht),e.set(1,2,zt),e.set(2,0,Gt),e.set(2,1,Ce),e.set(2,2,ir),e}mmulStrassen(t){t=pt.checkMatrix(t);let e=this.clone(),r=e.rows,n=e.columns,s=t.rows,a=t.columns;n!==s&&console.warn(`Multiplying ${r} x ${n} and ${s} x ${a} matrix: dimensions do not match.`);function l(c,d,_){let D=c.rows,g=c.columns;if(D===d&&g===_)return c;{let y=$t.zeros(d,_);return y=y.setSubMatrix(c,0,0),y}}let f=Math.max(r,s),h=Math.max(n,a);e=l(e,f,h),t=l(t,f,h);function p(c,d,_,D){if(_<=512||D<=512)return c.mmul(d);_%2===1&&D%2===1?(c=l(c,_+1,D+1),d=l(d,_+1,D+1)):_%2===1?(c=l(c,_+1,D),d=l(d,_+1,D)):D%2===1&&(c=l(c,_,D+1),d=l(d,_,D+1));let g=parseInt(c.rows/2,10),y=parseInt(c.columns/2,10),v=c.subMatrix(0,g-1,0,y-1),E=d.subMatrix(0,g-1,0,y-1),b=c.subMatrix(0,g-1,y,c.columns-1),N=d.subMatrix(0,g-1,y,d.columns-1),x=c.subMatrix(g,c.rows-1,0,y-1),F=d.subMatrix(g,d.rows-1,0,y-1),M=c.subMatrix(g,c.rows-1,y,c.columns-1),S=d.subMatrix(g,d.rows-1,y,d.columns-1),$=p($t.add(v,M),$t.add(E,S),g,y),C=p($t.add(x,M),E,g,y),I=p(v,$t.sub(N,S),g,y),R=p(M,$t.sub(F,E),g,y),U=p($t.add(v,b),S,g,y),q=p($t.sub(x,v),$t.add(E,N),g,y),k=p($t.sub(b,M),$t.add(F,S),g,y),P=$t.add($,R);P.sub(U),P.add(k);let K=$t.add(I,U),j=$t.add(C,R),Q=$t.sub($,C);Q.add(I),Q.add(q);let tt=$t.zeros(2*P.rows,2*P.columns);return tt=tt.setSubMatrix(P,0,0),tt=tt.setSubMatrix(K,P.rows,0),tt=tt.setSubMatrix(j,0,P.columns),tt=tt.setSubMatrix(Q,P.rows,P.columns),tt.subMatrix(0,_-1,0,D-1)}return p(e,t,f,h)}scaleRows(t={}){if(typeof t!="object")throw new TypeError("options must be an object");const{min:e=0,max:r=1}=t;if(!Number.isFinite(e))throw new TypeError("min must be a number");if(!Number.isFinite(r))throw new TypeError("max must be a number");if(e>=r)throw new RangeError("min must be smaller than max");let n=new pt(this.rows,this.columns);for(let s=0;s<this.rows;s++){const a=this.getRow(s);a.length>0&&Sc(a,{min:e,max:r,output:a}),n.setRow(s,a)}return n}scaleColumns(t={}){if(typeof t!="object")throw new TypeError("options must be an object");const{min:e=0,max:r=1}=t;if(!Number.isFinite(e))throw new TypeError("min must be a number");if(!Number.isFinite(r))throw new TypeError("max must be a number");if(e>=r)throw new RangeError("min must be smaller than max");let n=new pt(this.rows,this.columns);for(let s=0;s<this.columns;s++){const a=this.getColumn(s);a.length&&Sc(a,{min:e,max:r,output:a}),n.setColumn(s,a)}return n}flipRows(){const t=Math.ceil(this.columns/2);for(let e=0;e<this.rows;e++)for(let r=0;r<t;r++){let n=this.get(e,r),s=this.get(e,this.columns-1-r);this.set(e,r,s),this.set(e,this.columns-1-r,n)}return this}flipColumns(){const t=Math.ceil(this.rows/2);for(let e=0;e<this.columns;e++)for(let r=0;r<t;r++){let n=this.get(r,e),s=this.get(this.rows-1-r,e);this.set(r,e,s),this.set(this.rows-1-r,e,n)}return this}kroneckerProduct(t){t=pt.checkMatrix(t);let e=this.rows,r=this.columns,n=t.rows,s=t.columns,a=new pt(e*n,r*s);for(let l=0;l<e;l++)for(let f=0;f<r;f++)for(let h=0;h<n;h++)for(let p=0;p<s;p++)a.set(n*l+h,s*f+p,this.get(l,f)*t.get(h,p));return a}kroneckerSum(t){if(t=pt.checkMatrix(t),!this.isSquare()||!t.isSquare())throw new Error("Kronecker Sum needs two Square Matrices");let e=this.rows,r=t.rows,n=this.kroneckerProduct(pt.eye(r,r)),s=pt.eye(e,e).kroneckerProduct(t);return n.add(s)}transpose(){let t=new pt(this.columns,this.rows);for(let e=0;e<this.rows;e++)for(let r=0;r<this.columns;r++)t.set(r,e,this.get(e,r));return t}sortRows(t=$c){for(let e=0;e<this.rows;e++)this.setRow(e,this.getRow(e).sort(t));return this}sortColumns(t=$c){for(let e=0;e<this.columns;e++)this.setColumn(e,this.getColumn(e).sort(t));return this}subMatrix(t,e,r,n){Iu(this,t,e,r,n);let s=new pt(e-t+1,n-r+1);for(let a=t;a<=e;a++)for(let l=r;l<=n;l++)s.set(a-t,l-r,this.get(a,l));return s}subMatrixRow(t,e,r){if(e===void 0&&(e=0),r===void 0&&(r=this.columns-1),e>r||e<0||e>=this.columns||r<0||r>=this.columns)throw new RangeError("Argument out of range");let n=new pt(t.length,r-e+1);for(let s=0;s<t.length;s++)for(let a=e;a<=r;a++){if(t[s]<0||t[s]>=this.rows)throw new RangeError(`Row index out of range: ${t[s]}`);n.set(s,a-e,this.get(t[s],a))}return n}subMatrixColumn(t,e,r){if(e===void 0&&(e=0),r===void 0&&(r=this.rows-1),e>r||e<0||e>=this.rows||r<0||r>=this.rows)throw new RangeError("Argument out of range");let n=new pt(r-e+1,t.length);for(let s=0;s<t.length;s++)for(let a=e;a<=r;a++){if(t[s]<0||t[s]>=this.columns)throw new RangeError(`Column index out of range: ${t[s]}`);n.set(a-e,s,this.get(a,t[s]))}return n}setSubMatrix(t,e,r){if(t=pt.checkMatrix(t),t.isEmpty())return this;let n=e+t.rows-1,s=r+t.columns-1;Iu(this,e,n,r,s);for(let a=0;a<t.rows;a++)for(let l=0;l<t.columns;l++)this.set(e+a,r+l,t.get(a,l));return this}selection(t,e){Su(this,t),Bu(this,e);let r=new pt(t.length,e.length);for(let n=0;n<t.length;n++){let s=t[n];for(let a=0;a<e.length;a++){let l=e[a];r.set(n,a,this.get(s,l))}}return r}trace(){let t=Math.min(this.rows,this.columns),e=0;for(let r=0;r<t;r++)e+=this.get(r,r);return e}clone(){return this.constructor.copy(this,new pt(this.rows,this.columns))}static copy(t,e){for(const[r,n,s]of t.entries())e.set(r,n,s);return e}sum(t){switch(t){case"row":return y_(this);case"column":return b_(this);case void 0:return E_(this);default:throw new Error(`invalid option: ${t}`)}}product(t){switch(t){case"row":return A_(this);case"column":return x_(this);case void 0:return C_(this);default:throw new Error(`invalid option: ${t}`)}}mean(t){const e=this.sum(t);switch(t){case"row":{for(let r=0;r<this.rows;r++)e[r]/=this.columns;return e}case"column":{for(let r=0;r<this.columns;r++)e[r]/=this.rows;return e}case void 0:return e/this.size;default:throw new Error(`invalid option: ${t}`)}}variance(t,e={}){if(typeof t=="object"&&(e=t,t=void 0),typeof e!="object")throw new TypeError("options must be an object");const{unbiased:r=!0,mean:n=this.mean(t)}=e;if(typeof r!="boolean")throw new TypeError("unbiased must be a boolean");switch(t){case"row":{if(!Je.isAnyArray(n))throw new TypeError("mean must be an array");return F_(this,r,n)}case"column":{if(!Je.isAnyArray(n))throw new TypeError("mean must be an array");return M_(this,r,n)}case void 0:{if(typeof n!="number")throw new TypeError("mean must be a number");return N_(this,r,n)}default:throw new Error(`invalid option: ${t}`)}}standardDeviation(t,e){typeof t=="object"&&(e=t,t=void 0);const r=this.variance(t,e);if(t===void 0)return Math.sqrt(r);for(let n=0;n<r.length;n++)r[n]=Math.sqrt(r[n]);return r}center(t,e={}){if(typeof t=="object"&&(e=t,t=void 0),typeof e!="object")throw new TypeError("options must be an object");const{center:r=this.mean(t)}=e;switch(t){case"row":{if(!Je.isAnyArray(r))throw new TypeError("center must be an array");return S_(this,r),this}case"column":{if(!Je.isAnyArray(r))throw new TypeError("center must be an array");return B_(this,r),this}case void 0:{if(typeof r!="number")throw new TypeError("center must be a number");return I_(this,r),this}default:throw new Error(`invalid option: ${t}`)}}scale(t,e={}){if(typeof t=="object"&&(e=t,t=void 0),typeof e!="object")throw new TypeError("options must be an object");let r=e.scale;switch(t){case"row":{if(r===void 0)r=T_(this);else if(!Je.isAnyArray(r))throw new TypeError("scale must be an array");return $_(this,r),this}case"column":{if(r===void 0)r=O_(this);else if(!Je.isAnyArray(r))throw new TypeError("scale must be an array");return R_(this,r),this}case void 0:{if(r===void 0)r=L_(this);else if(typeof r!="number")throw new TypeError("scale must be a number");return P_(this,r),this}default:throw new Error(`invalid option: ${t}`)}}toString(t){return Ic(this,t)}[Symbol.iterator](){return this.entries()}*entries(){for(let t=0;t<this.rows;t++)for(let e=0;e<this.columns;e++)yield[t,e,this.get(t,e)]}*values(){for(let t=0;t<this.rows;t++)for(let e=0;e<this.columns;e++)yield this.get(t,e)}}$t.prototype.klass="Matrix",typeof Symbol<"u"&&($t.prototype[Symbol.for("nodejs.util.inspect.custom")]=v_);function $c(i,t){return i-t}function z_(i){return i.every(t=>typeof t=="number")}$t.random=$t.rand,$t.randomInt=$t.randInt,$t.diagonal=$t.diag,$t.prototype.diagonal=$t.prototype.diag,$t.identity=$t.eye,$t.prototype.negate=$t.prototype.neg,$t.prototype.tensorProduct=$t.prototype.kroneckerProduct;let pt=(vi=class extends $t{constructor(e,r){super();Dl(this,Gi);G(this,"data");if(vi.isMatrix(e))yl(this,Gi,bl).call(this,e.rows,e.columns),vi.copy(e,this);else if(Number.isInteger(e)&&e>=0)yl(this,Gi,bl).call(this,e,r);else if(Je.isAnyArray(e)){const n=e;if(e=n.length,r=e?n[0].length:0,typeof r!="number")throw new TypeError("Data must be a 2D array with at least one element");this.data=[];for(let s=0;s<e;s++){if(n[s].length!==r)throw new RangeError("Inconsistent array dimensions");if(!z_(n[s]))throw new TypeError("Input data contains non-numeric values");this.data.push(Float64Array.from(n[s]))}this.rows=e,this.columns=r}else throw new TypeError("First argument must be a positive number or an array")}set(e,r,n){return this.data[e][r]=n,this}get(e,r){return this.data[e][r]}removeRow(e){return gr(this,e),this.data.splice(e,1),this.rows-=1,this}addRow(e,r){return r===void 0&&(r=e,e=this.rows),gr(this,e,!0),r=Float64Array.from(fi(this,r)),this.data.splice(e,0,r),this.rows+=1,this}removeColumn(e){vr(this,e);for(let r=0;r<this.rows;r++){const n=new Float64Array(this.columns-1);for(let s=0;s<e;s++)n[s]=this.data[r][s];for(let s=e+1;s<this.columns;s++)n[s-1]=this.data[r][s];this.data[r]=n}return this.columns-=1,this}addColumn(e,r){typeof r>"u"&&(r=e,e=this.columns),vr(this,e,!0),r=ci(this,r);for(let n=0;n<this.rows;n++){const s=new Float64Array(this.columns+1);let a=0;for(;a<e;a++)s[a]=this.data[n][a];for(s[a++]=r[n];a<this.columns+1;a++)s[a]=this.data[n][a-1];this.data[n]=s}return this.columns+=1,this}},Gi=new WeakSet,bl=function(e,r){if(this.data=[],Number.isInteger(r)&&r>=0)for(let n=0;n<e;n++)this.data.push(new Float64Array(r));else throw new TypeError("nColumns must be a positive integer");this.rows=e,this.columns=r},vi);D_($t,pt);const lo=class lo extends $t{constructor(e){super();Dl(this,qe,void 0);if(pt.isMatrix(e)){if(!e.isSymmetric())throw new TypeError("not symmetric data");eu(this,qe,pt.copy(e,new pt(e.rows,e.rows)))}else if(Number.isInteger(e)&&e>=0)eu(this,qe,new pt(e,e));else if(eu(this,qe,new pt(e)),!this.isSymmetric())throw new TypeError("not symmetric data")}get size(){return Rr(this,qe).size}get rows(){return Rr(this,qe).rows}get columns(){return Rr(this,qe).columns}get diagonalSize(){return this.rows}static isSymmetricMatrix(e){return pt.isMatrix(e)&&e.klassType==="SymmetricMatrix"}static zeros(e){return new this(e)}static ones(e){return new this(e).fill(1)}clone(){const e=new lo(this.diagonalSize);for(const[r,n,s]of this.upperRightEntries())e.set(r,n,s);return e}toMatrix(){return new pt(this)}get(e,r){return Rr(this,qe).get(e,r)}set(e,r,n){return Rr(this,qe).set(e,r,n),Rr(this,qe).set(r,e,n),this}removeCross(e){return Rr(this,qe).removeRow(e),Rr(this,qe).removeColumn(e),this}addCross(e,r){r===void 0&&(r=e,e=this.diagonalSize);const n=r.slice();return n.splice(e,1),Rr(this,qe).addRow(e,n),Rr(this,qe).addColumn(e,r),this}applyMask(e){if(e.length!==this.diagonalSize)throw new RangeError("Mask size do not match with matrix size");const r=[];for(const[n,s]of e.entries())s||r.push(n);r.reverse();for(const n of r)this.removeCross(n);return this}toCompact(){const{diagonalSize:e}=this,r=new Array(e*(e+1)/2);for(let n=0,s=0,a=0;a<r.length;a++)r[a]=this.get(s,n),++n>=e&&(n=++s);return r}static fromCompact(e){const r=e.length,n=(Math.sqrt(8*r+1)-1)/2;if(!Number.isInteger(n))throw new TypeError(`This array is not a compact representation of a Symmetric Matrix, ${JSON.stringify(e)}`);const s=new lo(n);for(let a=0,l=0,f=0;f<r;f++)s.set(a,l,e[f]),++a>=n&&(a=++l);return s}*upperRightEntries(){for(let e=0,r=0;e<this.diagonalSize;void 0){const n=this.get(e,r);yield[e,r,n],++r>=this.diagonalSize&&(r=++e)}}*upperRightValues(){for(let e=0,r=0;e<this.diagonalSize;void 0)yield this.get(e,r),++r>=this.diagonalSize&&(r=++e)}};qe=new WeakMap;let Pn=lo;Pn.prototype.klassType="SymmetricMatrix";class Qs extends Pn{static isDistanceMatrix(t){return Pn.isSymmetricMatrix(t)&&t.klassSubType==="DistanceMatrix"}constructor(t){if(super(t),!this.isDistance())throw new TypeError("Provided arguments do no produce a distance matrix")}set(t,e,r){return t===e&&(r=0),super.set(t,e,r)}addCross(t,e){return e===void 0&&(e=t,t=this.diagonalSize),e=e.slice(),e[t]=0,super.addCross(t,e)}toSymmetricMatrix(){return new Pn(this)}clone(){const t=new Qs(this.diagonalSize);for(const[e,r,n]of this.upperRightEntries())e!==r&&t.set(e,r,n);return t}toCompact(){const{diagonalSize:t}=this,e=(t-1)*t/2,r=new Array(e);for(let n=1,s=0,a=0;a<r.length;a++)r[a]=this.get(s,n),++n>=t&&(n=++s+1);return r}static fromCompact(t){const e=t.length,r=(Math.sqrt(8*e+1)+1)/2;if(!Number.isInteger(r))throw new TypeError(`This array is not a compact representation of a DistanceMatrix, ${JSON.stringify(t)}`);const n=new this(r);for(let s=1,a=0,l=0;l<e;l++)n.set(s,a,t[l]),++s>=r&&(s=++a+1);return n}}Qs.prototype.klassSubType="DistanceMatrix";class Kr extends $t{constructor(t,e,r){super(),this.matrix=t,this.rows=e,this.columns=r}}class q_ extends Kr{constructor(t,e){vr(t,e),super(t,t.rows,1),this.column=e}set(t,e,r){return this.matrix.set(t,this.column,r),this}get(t){return this.matrix.get(t,this.column)}}class U_ extends Kr{constructor(t,e){Bu(t,e),super(t,t.rows,e.length),this.columnIndices=e}set(t,e,r){return this.matrix.set(t,this.columnIndices[e],r),this}get(t,e){return this.matrix.get(t,this.columnIndices[e])}}class k_ extends Kr{constructor(t){super(t,t.rows,t.columns)}set(t,e,r){return this.matrix.set(t,this.columns-e-1,r),this}get(t,e){return this.matrix.get(t,this.columns-e-1)}}class W_ extends Kr{constructor(t){super(t,t.rows,t.columns)}set(t,e,r){return this.matrix.set(this.rows-t-1,e,r),this}get(t,e){return this.matrix.get(this.rows-t-1,e)}}class Y_ extends Kr{constructor(t,e){gr(t,e),super(t,1,t.columns),this.row=e}set(t,e,r){return this.matrix.set(this.row,e,r),this}get(t,e){return this.matrix.get(this.row,e)}}class Z_ extends Kr{constructor(t,e){Su(t,e),super(t,e.length,t.columns),this.rowIndices=e}set(t,e,r){return this.matrix.set(this.rowIndices[t],e,r),this}get(t,e){return this.matrix.get(this.rowIndices[t],e)}}class Vs extends Kr{constructor(t,e,r){Su(t,e),Bu(t,r),super(t,e.length,r.length),this.rowIndices=e,this.columnIndices=r}set(t,e,r){return this.matrix.set(this.rowIndices[t],this.columnIndices[e],r),this}get(t,e){return this.matrix.get(this.rowIndices[t],this.columnIndices[e])}}class j_ extends Kr{constructor(t,e,r,n,s){Iu(t,e,r,n,s),super(t,r-e+1,s-n+1),this.startRow=e,this.startColumn=n}set(t,e,r){return this.matrix.set(this.startRow+t,this.startColumn+e,r),this}get(t,e){return this.matrix.get(this.startRow+t,this.startColumn+e)}}class G_ extends Kr{constructor(t){super(t,t.columns,t.rows)}set(t,e,r){return this.matrix.set(e,t,r),this}get(t,e){return this.matrix.get(e,t)}}class Oc extends $t{constructor(t,e={}){const{rows:r=1}=e;if(t.length%r!==0)throw new Error("the data length is not divisible by the number of rows");super(),this.rows=r,this.columns=t.length/r,this.data=t}set(t,e,r){let n=this._calculateIndex(t,e);return this.data[n]=r,this}get(t,e){let r=this._calculateIndex(t,e);return this.data[r]}_calculateIndex(t,e){return t*this.columns+e}}class nr extends $t{constructor(t){super(),this.data=t,this.rows=t.length,this.columns=t[0].length}set(t,e,r){return this.data[t][e]=r,this}get(t,e){return this.data[t][e]}}function K_(i,t){if(Je.isAnyArray(i))return i[0]&&Je.isAnyArray(i[0])?new nr(i):new Oc(i,t);throw new Error("the argument is not an array")}class to{constructor(t){t=nr.checkMatrix(t);let e=t.clone(),r=e.rows,n=e.columns,s=new Float64Array(r),a=1,l,f,h,p,c,d,_,D,g;for(l=0;l<r;l++)s[l]=l;for(D=new Float64Array(r),f=0;f<n;f++){for(l=0;l<r;l++)D[l]=e.get(l,f);for(l=0;l<r;l++){for(g=Math.min(l,f),c=0,h=0;h<g;h++)c+=e.get(l,h)*D[h];D[l]-=c,e.set(l,f,D[l])}for(p=f,l=f+1;l<r;l++)Math.abs(D[l])>Math.abs(D[p])&&(p=l);if(p!==f){for(h=0;h<n;h++)d=e.get(p,h),e.set(p,h,e.get(f,h)),e.set(f,h,d);_=s[p],s[p]=s[f],s[f]=_,a=-a}if(f<r&&e.get(f,f)!==0)for(l=f+1;l<r;l++)e.set(l,f,e.get(l,f)/e.get(f,f))}this.LU=e,this.pivotVector=s,this.pivotSign=a}isSingular(){let t=this.LU,e=t.columns;for(let r=0;r<e;r++)if(t.get(r,r)===0)return!0;return!1}solve(t){t=pt.checkMatrix(t);let e=this.LU;if(e.rows!==t.rows)throw new Error("Invalid matrix dimensions");if(this.isSingular())throw new Error("LU matrix is singular");let n=t.columns,s=t.subMatrixRow(this.pivotVector,0,n-1),a=e.columns,l,f,h;for(h=0;h<a;h++)for(l=h+1;l<a;l++)for(f=0;f<n;f++)s.set(l,f,s.get(l,f)-s.get(h,f)*e.get(l,h));for(h=a-1;h>=0;h--){for(f=0;f<n;f++)s.set(h,f,s.get(h,f)/e.get(h,h));for(l=0;l<h;l++)for(f=0;f<n;f++)s.set(l,f,s.get(l,f)-s.get(h,f)*e.get(l,h))}return s}get determinant(){let t=this.LU;if(!t.isSquare())throw new Error("Matrix must be square");let e=this.pivotSign,r=t.columns;for(let n=0;n<r;n++)e*=t.get(n,n);return e}get lowerTriangularMatrix(){let t=this.LU,e=t.rows,r=t.columns,n=new pt(e,r);for(let s=0;s<e;s++)for(let a=0;a<r;a++)s>a?n.set(s,a,t.get(s,a)):s===a?n.set(s,a,1):n.set(s,a,0);return n}get upperTriangularMatrix(){let t=this.LU,e=t.rows,r=t.columns,n=new pt(e,r);for(let s=0;s<e;s++)for(let a=0;a<r;a++)s<=a?n.set(s,a,t.get(s,a)):n.set(s,a,0);return n}get pivotPermutationVector(){return Array.from(this.pivotVector)}}function Jr(i,t){let e=0;return Math.abs(i)>Math.abs(t)?(e=t/i,Math.abs(i)*Math.sqrt(1+e*e)):t!==0?(e=i/t,Math.abs(t)*Math.sqrt(1+e*e)):0}class Tu{constructor(t){t=nr.checkMatrix(t);let e=t.clone(),r=t.rows,n=t.columns,s=new Float64Array(n),a,l,f,h;for(f=0;f<n;f++){let p=0;for(a=f;a<r;a++)p=Jr(p,e.get(a,f));if(p!==0){for(e.get(f,f)<0&&(p=-p),a=f;a<r;a++)e.set(a,f,e.get(a,f)/p);for(e.set(f,f,e.get(f,f)+1),l=f+1;l<n;l++){for(h=0,a=f;a<r;a++)h+=e.get(a,f)*e.get(a,l);for(h=-h/e.get(f,f),a=f;a<r;a++)e.set(a,l,e.get(a,l)+h*e.get(a,f))}}s[f]=-p}this.QR=e,this.Rdiag=s}solve(t){t=pt.checkMatrix(t);let e=this.QR,r=e.rows;if(t.rows!==r)throw new Error("Matrix row dimensions must agree");if(!this.isFullRank())throw new Error("Matrix is rank deficient");let n=t.columns,s=t.clone(),a=e.columns,l,f,h,p;for(h=0;h<a;h++)for(f=0;f<n;f++){for(p=0,l=h;l<r;l++)p+=e.get(l,h)*s.get(l,f);for(p=-p/e.get(h,h),l=h;l<r;l++)s.set(l,f,s.get(l,f)+p*e.get(l,h))}for(h=a-1;h>=0;h--){for(f=0;f<n;f++)s.set(h,f,s.get(h,f)/this.Rdiag[h]);for(l=0;l<h;l++)for(f=0;f<n;f++)s.set(l,f,s.get(l,f)-s.get(h,f)*e.get(l,h))}return s.subMatrix(0,a-1,0,n-1)}isFullRank(){let t=this.QR.columns;for(let e=0;e<t;e++)if(this.Rdiag[e]===0)return!1;return!0}get upperTriangularMatrix(){let t=this.QR,e=t.columns,r=new pt(e,e),n,s;for(n=0;n<e;n++)for(s=0;s<e;s++)n<s?r.set(n,s,t.get(n,s)):n===s?r.set(n,s,this.Rdiag[n]):r.set(n,s,0);return r}get orthogonalMatrix(){let t=this.QR,e=t.rows,r=t.columns,n=new pt(e,r),s,a,l,f;for(l=r-1;l>=0;l--){for(s=0;s<e;s++)n.set(s,l,0);for(n.set(l,l,1),a=l;a<r;a++)if(t.get(l,l)!==0){for(f=0,s=l;s<e;s++)f+=t.get(s,l)*n.get(s,a);for(f=-f/t.get(l,l),s=l;s<e;s++)n.set(s,a,n.get(s,a)+f*t.get(s,l))}}return n}}class pi{constructor(t,e={}){if(t=nr.checkMatrix(t),t.isEmpty())throw new Error("Matrix must be non-empty");let r=t.rows,n=t.columns;const{computeLeftSingularVectors:s=!0,computeRightSingularVectors:a=!0,autoTranspose:l=!1}=e;let f=!!s,h=!!a,p=!1,c;if(r<n)if(!l)c=t.clone(),console.warn("Computing SVD on a matrix with more columns than rows. Consider enabling autoTranspose");else{c=t.transpose(),r=c.rows,n=c.columns,p=!0;let C=f;f=h,h=C}else c=t.clone();let d=Math.min(r,n),_=Math.min(r+1,n),D=new Float64Array(_),g=new pt(r,d),y=new pt(n,n),v=new Float64Array(n),E=new Float64Array(r),b=new Float64Array(_);for(let C=0;C<_;C++)b[C]=C;let N=Math.min(r-1,n),x=Math.max(0,Math.min(n-2,r)),F=Math.max(N,x);for(let C=0;C<F;C++){if(C<N){D[C]=0;for(let I=C;I<r;I++)D[C]=Jr(D[C],c.get(I,C));if(D[C]!==0){c.get(C,C)<0&&(D[C]=-D[C]);for(let I=C;I<r;I++)c.set(I,C,c.get(I,C)/D[C]);c.set(C,C,c.get(C,C)+1)}D[C]=-D[C]}for(let I=C+1;I<n;I++){if(C<N&&D[C]!==0){let R=0;for(let U=C;U<r;U++)R+=c.get(U,C)*c.get(U,I);R=-R/c.get(C,C);for(let U=C;U<r;U++)c.set(U,I,c.get(U,I)+R*c.get(U,C))}v[I]=c.get(C,I)}if(f&&C<N)for(let I=C;I<r;I++)g.set(I,C,c.get(I,C));if(C<x){v[C]=0;for(let I=C+1;I<n;I++)v[C]=Jr(v[C],v[I]);if(v[C]!==0){v[C+1]<0&&(v[C]=0-v[C]);for(let I=C+1;I<n;I++)v[I]/=v[C];v[C+1]+=1}if(v[C]=-v[C],C+1<r&&v[C]!==0){for(let I=C+1;I<r;I++)E[I]=0;for(let I=C+1;I<r;I++)for(let R=C+1;R<n;R++)E[I]+=v[R]*c.get(I,R);for(let I=C+1;I<n;I++){let R=-v[I]/v[C+1];for(let U=C+1;U<r;U++)c.set(U,I,c.get(U,I)+R*E[U])}}if(h)for(let I=C+1;I<n;I++)y.set(I,C,v[I])}}let M=Math.min(n,r+1);if(N<n&&(D[N]=c.get(N,N)),r<M&&(D[M-1]=0),x+1<M&&(v[x]=c.get(x,M-1)),v[M-1]=0,f){for(let C=N;C<d;C++){for(let I=0;I<r;I++)g.set(I,C,0);g.set(C,C,1)}for(let C=N-1;C>=0;C--)if(D[C]!==0){for(let I=C+1;I<d;I++){let R=0;for(let U=C;U<r;U++)R+=g.get(U,C)*g.get(U,I);R=-R/g.get(C,C);for(let U=C;U<r;U++)g.set(U,I,g.get(U,I)+R*g.get(U,C))}for(let I=C;I<r;I++)g.set(I,C,-g.get(I,C));g.set(C,C,1+g.get(C,C));for(let I=0;I<C-1;I++)g.set(I,C,0)}else{for(let I=0;I<r;I++)g.set(I,C,0);g.set(C,C,1)}}if(h)for(let C=n-1;C>=0;C--){if(C<x&&v[C]!==0)for(let I=C+1;I<n;I++){let R=0;for(let U=C+1;U<n;U++)R+=y.get(U,C)*y.get(U,I);R=-R/y.get(C+1,C);for(let U=C+1;U<n;U++)y.set(U,I,y.get(U,I)+R*y.get(U,C))}for(let I=0;I<n;I++)y.set(I,C,0);y.set(C,C,1)}let S=M-1,$=Number.EPSILON;for(;M>0;){let C,I;for(C=M-2;C>=-1&&C!==-1;C--){const R=Number.MIN_VALUE+$*Math.abs(D[C]+Math.abs(D[C+1]));if(Math.abs(v[C])<=R||Number.isNaN(v[C])){v[C]=0;break}}if(C===M-2)I=4;else{let R;for(R=M-1;R>=C&&R!==C;R--){let U=(R!==M?Math.abs(v[R]):0)+(R!==C+1?Math.abs(v[R-1]):0);if(Math.abs(D[R])<=$*U){D[R]=0;break}}R===C?I=3:R===M-1?I=1:(I=2,C=R)}switch(C++,I){case 1:{let R=v[M-2];v[M-2]=0;for(let U=M-2;U>=C;U--){let q=Jr(D[U],R),k=D[U]/q,P=R/q;if(D[U]=q,U!==C&&(R=-P*v[U-1],v[U-1]=k*v[U-1]),h)for(let K=0;K<n;K++)q=k*y.get(K,U)+P*y.get(K,M-1),y.set(K,M-1,-P*y.get(K,U)+k*y.get(K,M-1)),y.set(K,U,q)}break}case 2:{let R=v[C-1];v[C-1]=0;for(let U=C;U<M;U++){let q=Jr(D[U],R),k=D[U]/q,P=R/q;if(D[U]=q,R=-P*v[U],v[U]=k*v[U],f)for(let K=0;K<r;K++)q=k*g.get(K,U)+P*g.get(K,C-1),g.set(K,C-1,-P*g.get(K,U)+k*g.get(K,C-1)),g.set(K,U,q)}break}case 3:{const R=Math.max(Math.abs(D[M-1]),Math.abs(D[M-2]),Math.abs(v[M-2]),Math.abs(D[C]),Math.abs(v[C])),U=D[M-1]/R,q=D[M-2]/R,k=v[M-2]/R,P=D[C]/R,K=v[C]/R,j=((q+U)*(q-U)+k*k)/2,Q=U*k*(U*k);let tt=0;(j!==0||Q!==0)&&(j<0?tt=0-Math.sqrt(j*j+Q):tt=Math.sqrt(j*j+Q),tt=Q/(j+tt));let ft=(P+U)*(P-U)+tt,vt=P*K;for(let lt=C;lt<M-1;lt++){let wt=Jr(ft,vt);wt===0&&(wt=Number.MIN_VALUE);let yt=ft/wt,St=vt/wt;if(lt!==C&&(v[lt-1]=wt),ft=yt*D[lt]+St*v[lt],v[lt]=yt*v[lt]-St*D[lt],vt=St*D[lt+1],D[lt+1]=yt*D[lt+1],h)for(let bt=0;bt<n;bt++)wt=yt*y.get(bt,lt)+St*y.get(bt,lt+1),y.set(bt,lt+1,-St*y.get(bt,lt)+yt*y.get(bt,lt+1)),y.set(bt,lt,wt);if(wt=Jr(ft,vt),wt===0&&(wt=Number.MIN_VALUE),yt=ft/wt,St=vt/wt,D[lt]=wt,ft=yt*v[lt]+St*D[lt+1],D[lt+1]=-St*v[lt]+yt*D[lt+1],vt=St*v[lt+1],v[lt+1]=yt*v[lt+1],f&<<r-1)for(let bt=0;bt<r;bt++)wt=yt*g.get(bt,lt)+St*g.get(bt,lt+1),g.set(bt,lt+1,-St*g.get(bt,lt)+yt*g.get(bt,lt+1)),g.set(bt,lt,wt)}v[M-2]=ft;break}case 4:{if(D[C]<=0&&(D[C]=D[C]<0?-D[C]:0,h))for(let R=0;R<=S;R++)y.set(R,C,-y.get(R,C));for(;C<S&&!(D[C]>=D[C+1]);){let R=D[C];if(D[C]=D[C+1],D[C+1]=R,h&&C<n-1)for(let U=0;U<n;U++)R=y.get(U,C+1),y.set(U,C+1,y.get(U,C)),y.set(U,C,R);if(f&&C<r-1)for(let U=0;U<r;U++)R=g.get(U,C+1),g.set(U,C+1,g.get(U,C)),g.set(U,C,R);C++}M--;break}}}if(p){let C=y;y=g,g=C}this.m=r,this.n=n,this.s=D,this.U=g,this.V=y}solve(t){let e=t,r=this.threshold,n=this.s.length,s=pt.zeros(n,n);for(let d=0;d<n;d++)Math.abs(this.s[d])<=r?s.set(d,d,0):s.set(d,d,1/this.s[d]);let a=this.U,l=this.rightSingularVectors,f=l.mmul(s),h=l.rows,p=a.rows,c=pt.zeros(h,p);for(let d=0;d<h;d++)for(let _=0;_<p;_++){let D=0;for(let g=0;g<n;g++)D+=f.get(d,g)*a.get(_,g);c.set(d,_,D)}return c.mmul(e)}solveForDiagonal(t){return this.solve(pt.diag(t))}inverse(){let t=this.V,e=this.threshold,r=t.rows,n=t.columns,s=new pt(r,this.s.length);for(let p=0;p<r;p++)for(let c=0;c<n;c++)Math.abs(this.s[c])>e&&s.set(p,c,t.get(p,c)/this.s[c]);let a=this.U,l=a.rows,f=a.columns,h=new pt(r,l);for(let p=0;p<r;p++)for(let c=0;c<l;c++){let d=0;for(let _=0;_<f;_++)d+=s.get(p,_)*a.get(c,_);h.set(p,c,d)}return h}get condition(){return this.s[0]/this.s[Math.min(this.m,this.n)-1]}get norm2(){return this.s[0]}get rank(){let t=Math.max(this.m,this.n)*this.s[0]*Number.EPSILON,e=0,r=this.s;for(let n=0,s=r.length;n<s;n++)r[n]>t&&e++;return e}get diagonal(){return Array.from(this.s)}get threshold(){return Number.EPSILON/2*Math.max(this.m,this.n)*this.s[0]}get leftSingularVectors(){return this.U}get rightSingularVectors(){return this.V}get diagonalMatrix(){return pt.diag(this.s)}}function J_(i,t=!1){return i=nr.checkMatrix(i),t?new pi(i).inverse():Rc(i,pt.eye(i.rows))}function Rc(i,t,e=!1){return i=nr.checkMatrix(i),t=nr.checkMatrix(t),e?new pi(i).solve(t):i.isSquare()?new to(i).solve(t):new Tu(i).solve(t)}function eo(i){if(i=pt.checkMatrix(i),i.isSquare()){if(i.columns===0)return 1;let t,e,r,n;if(i.columns===2)return t=i.get(0,0),e=i.get(0,1),r=i.get(1,0),n=i.get(1,1),t*n-e*r;if(i.columns===3){let s,a,l;return s=new Vs(i,[1,2],[1,2]),a=new Vs(i,[1,2],[0,2]),l=new Vs(i,[1,2],[0,1]),t=i.get(0,0),e=i.get(0,1),r=i.get(0,2),t*eo(s)-e*eo(a)+r*eo(l)}else return new to(i).determinant}else throw Error("determinant can only be calculated for a square matrix")}function X_(i,t){let e=[];for(let r=0;r<i;r++)r!==t&&e.push(r);return e}function H_(i,t,e,r=1e-9,n=1e-9){if(i>n)return new Array(t.rows+1).fill(0);{let s=t.addRow(e,[0]);for(let a=0;a<s.rows;a++)Math.abs(s.get(a,0))<r&&s.set(a,0,0);return s.to1DArray()}}function Q_(i,t={}){const{thresholdValue:e=1e-9,thresholdError:r=1e-9}=t;i=pt.checkMatrix(i);let n=i.rows,s=new pt(n,n);for(let a=0;a<n;a++){let l=pt.columnVector(i.getRow(a)),f=i.subMatrixRow(X_(n,a)).transpose(),p=new pi(f).solve(l),c=pt.sub(l,f.mmul(p)).abs().max();s.setRow(a,H_(c,p,a,e,r))}return s}function V_(i,t=Number.EPSILON){if(i=pt.checkMatrix(i),i.isEmpty())return i.transpose();let e=new pi(i,{autoTranspose:!0}),r=e.leftSingularVectors,n=e.rightSingularVectors,s=e.diagonal;for(let a=0;a<s.length;a++)Math.abs(s[a])>t?s[a]=1/s[a]:s[a]=0;return n.mmul(pt.diag(s).mmul(r.transpose()))}function tw(i,t=i,e={}){i=new pt(i);let r=!1;if(typeof t=="object"&&!pt.isMatrix(t)&&!Je.isAnyArray(t)?(e=t,t=i,r=!0):t=new pt(t),i.rows!==t.rows)throw new TypeError("Both matrices must have the same number of rows");const{center:n=!0}=e;n&&(i=i.center("column"),r||(t=t.center("column")));const s=i.transpose().mmul(t);for(let a=0;a<s.rows;a++)for(let l=0;l<s.columns;l++)s.set(a,l,s.get(a,l)*(1/(i.rows-1)));return s}function ew(i,t=i,e={}){i=new pt(i);let r=!1;if(typeof t=="object"&&!pt.isMatrix(t)&&!Je.isAnyArray(t)?(e=t,t=i,r=!0):t=new pt(t),i.rows!==t.rows)throw new TypeError("Both matrices must have the same number of rows");const{center:n=!0,scale:s=!0}=e;n&&(i.center("column"),r||t.center("column")),s&&(i.scale("column"),r||t.scale("column"));const a=i.standardDeviation("column",{unbiased:!0}),l=r?a:t.standardDeviation("column",{unbiased:!0}),f=i.transpose().mmul(t);for(let h=0;h<f.rows;h++)for(let p=0;p<f.columns;p++)f.set(h,p,f.get(h,p)*(1/(a[h]*l[p]))*(1/(i.rows-1)));return f}let Lc=class{constructor(t,e={}){const{assumeSymmetric:r=!1}=e;if(t=nr.checkMatrix(t),!t.isSquare())throw new Error("Matrix is not a square matrix");if(t.isEmpty())throw new Error("Matrix must be non-empty");let n=t.columns,s=new pt(n,n),a=new Float64Array(n),l=new Float64Array(n),f=t,h,p,c=!1;if(r?c=!0:c=t.isSymmetric(),c){for(h=0;h<n;h++)for(p=0;p<n;p++)s.set(h,p,f.get(h,p));rw(n,l,a,s),nw(n,l,a,s)}else{let d=new pt(n,n),_=new Float64Array(n);for(p=0;p<n;p++)for(h=0;h<n;h++)d.set(h,p,f.get(h,p));iw(n,d,_,s),sw(n,l,a,s,d)}this.n=n,this.e=l,this.d=a,this.V=s}get realEigenvalues(){return Array.from(this.d)}get imaginaryEigenvalues(){return Array.from(this.e)}get eigenvectorMatrix(){return this.V}get diagonalMatrix(){let t=this.n,e=this.e,r=this.d,n=new pt(t,t),s,a;for(s=0;s<t;s++){for(a=0;a<t;a++)n.set(s,a,0);n.set(s,s,r[s]),e[s]>0?n.set(s,s+1,e[s]):e[s]<0&&n.set(s,s-1,e[s])}return n}};function rw(i,t,e,r){let n,s,a,l,f,h,p,c;for(f=0;f<i;f++)e[f]=r.get(i-1,f);for(l=i-1;l>0;l--){for(c=0,a=0,h=0;h<l;h++)c=c+Math.abs(e[h]);if(c===0)for(t[l]=e[l-1],f=0;f<l;f++)e[f]=r.get(l-1,f),r.set(l,f,0),r.set(f,l,0);else{for(h=0;h<l;h++)e[h]/=c,a+=e[h]*e[h];for(n=e[l-1],s=Math.sqrt(a),n>0&&(s=-s),t[l]=c*s,a=a-n*s,e[l-1]=n-s,f=0;f<l;f++)t[f]=0;for(f=0;f<l;f++){for(n=e[f],r.set(f,l,n),s=t[f]+r.get(f,f)*n,h=f+1;h<=l-1;h++)s+=r.get(h,f)*e[h],t[h]+=r.get(h,f)*n;t[f]=s}for(n=0,f=0;f<l;f++)t[f]/=a,n+=t[f]*e[f];for(p=n/(a+a),f=0;f<l;f++)t[f]-=p*e[f];for(f=0;f<l;f++){for(n=e[f],s=t[f],h=f;h<=l-1;h++)r.set(h,f,r.get(h,f)-(n*t[h]+s*e[h]));e[f]=r.get(l-1,f),r.set(l,f,0)}}e[l]=a}for(l=0;l<i-1;l++){if(r.set(i-1,l,r.get(l,l)),r.set(l,l,1),a=e[l+1],a!==0){for(h=0;h<=l;h++)e[h]=r.get(h,l+1)/a;for(f=0;f<=l;f++){for(s=0,h=0;h<=l;h++)s+=r.get(h,l+1)*r.get(h,f);for(h=0;h<=l;h++)r.set(h,f,r.get(h,f)-s*e[h])}}for(h=0;h<=l;h++)r.set(h,l+1,0)}for(f=0;f<i;f++)e[f]=r.get(i-1,f),r.set(i-1,f,0);r.set(i-1,i-1,1),t[0]=0}function nw(i,t,e,r){let n,s,a,l,f,h,p,c,d,_,D,g,y,v,E,b;for(a=1;a<i;a++)t[a-1]=t[a];t[i-1]=0;let N=0,x=0,F=Number.EPSILON;for(h=0;h<i;h++){for(x=Math.max(x,Math.abs(e[h])+Math.abs(t[h])),p=h;p<i&&!(Math.abs(t[p])<=F*x);)p++;if(p>h)do{for(n=e[h],c=(e[h+1]-n)/(2*t[h]),d=Jr(c,1),c<0&&(d=-d),e[h]=t[h]/(c+d),e[h+1]=t[h]*(c+d),_=e[h+1],s=n-e[h],a=h+2;a<i;a++)e[a]-=s;for(N=N+s,c=e[p],D=1,g=D,y=D,v=t[h+1],E=0,b=0,a=p-1;a>=h;a--)for(y=g,g=D,b=E,n=D*t[a],s=D*c,d=Jr(c,t[a]),t[a+1]=E*d,E=t[a]/d,D=c/d,c=D*e[a]-E*n,e[a+1]=s+E*(D*n+E*e[a]),f=0;f<i;f++)s=r.get(f,a+1),r.set(f,a+1,E*r.get(f,a)+D*s),r.set(f,a,D*r.get(f,a)-E*s);c=-E*b*y*v*t[h]/_,t[h]=E*c,e[h]=D*c}while(Math.abs(t[h])>F*x);e[h]=e[h]+N,t[h]=0}for(a=0;a<i-1;a++){for(f=a,c=e[a],l=a+1;l<i;l++)e[l]<c&&(f=l,c=e[l]);if(f!==a)for(e[f]=e[a],e[a]=c,l=0;l<i;l++)c=r.get(l,a),r.set(l,a,r.get(l,f)),r.set(l,f,c)}}function iw(i,t,e,r){let n=0,s=i-1,a,l,f,h,p,c,d;for(c=n+1;c<=s-1;c++){for(d=0,h=c;h<=s;h++)d=d+Math.abs(t.get(h,c-1));if(d!==0){for(f=0,h=s;h>=c;h--)e[h]=t.get(h,c-1)/d,f+=e[h]*e[h];for(l=Math.sqrt(f),e[c]>0&&(l=-l),f=f-e[c]*l,e[c]=e[c]-l,p=c;p<i;p++){for(a=0,h=s;h>=c;h--)a+=e[h]*t.get(h,p);for(a=a/f,h=c;h<=s;h++)t.set(h,p,t.get(h,p)-a*e[h])}for(h=0;h<=s;h++){for(a=0,p=s;p>=c;p--)a+=e[p]*t.get(h,p);for(a=a/f,p=c;p<=s;p++)t.set(h,p,t.get(h,p)-a*e[p])}e[c]=d*e[c],t.set(c,c-1,d*l)}}for(h=0;h<i;h++)for(p=0;p<i;p++)r.set(h,p,h===p?1:0);for(c=s-1;c>=n+1;c--)if(t.get(c,c-1)!==0){for(h=c+1;h<=s;h++)e[h]=t.get(h,c-1);for(p=c;p<=s;p++){for(l=0,h=c;h<=s;h++)l+=e[h]*r.get(h,p);for(l=l/e[c]/t.get(c,c-1),h=c;h<=s;h++)r.set(h,p,r.get(h,p)+l*e[h])}}}function sw(i,t,e,r,n){let s=i-1,a=0,l=i-1,f=Number.EPSILON,h=0,p=0,c=0,d=0,_=0,D=0,g=0,y=0,v,E,b,N,x,F,M,S,$,C,I,R,U,q,k;for(v=0;v<i;v++)for((v<a||v>l)&&(e[v]=n.get(v,v),t[v]=0),E=Math.max(v-1,0);E<i;E++)p=p+Math.abs(n.get(v,E));for(;s>=a;){for(N=s;N>a&&(D=Math.abs(n.get(N-1,N-1))+Math.abs(n.get(N,N)),D===0&&(D=p),!(Math.abs(n.get(N,N-1))<f*D));)N--;if(N===s)n.set(s,s,n.get(s,s)+h),e[s]=n.get(s,s),t[s]=0,s--,y=0;else if(N===s-1){if(M=n.get(s,s-1)*n.get(s-1,s),c=(n.get(s-1,s-1)-n.get(s,s))/2,d=c*c+M,g=Math.sqrt(Math.abs(d)),n.set(s,s,n.get(s,s)+h),n.set(s-1,s-1,n.get(s-1,s-1)+h),S=n.get(s,s),d>=0){for(g=c>=0?c+g:c-g,e[s-1]=S+g,e[s]=e[s-1],g!==0&&(e[s]=S-M/g),t[s-1]=0,t[s]=0,S=n.get(s,s-1),D=Math.abs(S)+Math.abs(g),c=S/D,d=g/D,_=Math.sqrt(c*c+d*d),c=c/_,d=d/_,E=s-1;E<i;E++)g=n.get(s-1,E),n.set(s-1,E,d*g+c*n.get(s,E)),n.set(s,E,d*n.get(s,E)-c*g);for(v=0;v<=s;v++)g=n.get(v,s-1),n.set(v,s-1,d*g+c*n.get(v,s)),n.set(v,s,d*n.get(v,s)-c*g);for(v=a;v<=l;v++)g=r.get(v,s-1),r.set(v,s-1,d*g+c*r.get(v,s)),r.set(v,s,d*r.get(v,s)-c*g)}else e[s-1]=S+c,e[s]=S+c,t[s-1]=g,t[s]=-g;s=s-2,y=0}else{if(S=n.get(s,s),$=0,M=0,N<s&&($=n.get(s-1,s-1),M=n.get(s,s-1)*n.get(s-1,s)),y===10){for(h+=S,v=a;v<=s;v++)n.set(v,v,n.get(v,v)-S);D=Math.abs(n.get(s,s-1))+Math.abs(n.get(s-1,s-2)),S=$=.75*D,M=-.4375*D*D}if(y===30&&(D=($-S)/2,D=D*D+M,D>0)){for(D=Math.sqrt(D),$<S&&(D=-D),D=S-M/(($-S)/2+D),v=a;v<=s;v++)n.set(v,v,n.get(v,v)-D);h+=D,S=$=M=.964}for(y=y+1,x=s-2;x>=N&&(g=n.get(x,x),_=S-g,D=$-g,c=(_*D-M)/n.get(x+1,x)+n.get(x,x+1),d=n.get(x+1,x+1)-g-_-D,_=n.get(x+2,x+1),D=Math.abs(c)+Math.abs(d)+Math.abs(_),c=c/D,d=d/D,_=_/D,!(x===N||Math.abs(n.get(x,x-1))*(Math.abs(d)+Math.abs(_))<f*(Math.abs(c)*(Math.abs(n.get(x-1,x-1))+Math.abs(g)+Math.abs(n.get(x+1,x+1))))));)x--;for(v=x+2;v<=s;v++)n.set(v,v-2,0),v>x+2&&n.set(v,v-3,0);for(b=x;b<=s-1&&(q=b!==s-1,b!==x&&(c=n.get(b,b-1),d=n.get(b+1,b-1),_=q?n.get(b+2,b-1):0,S=Math.abs(c)+Math.abs(d)+Math.abs(_),S!==0&&(c=c/S,d=d/S,_=_/S)),S!==0);b++)if(D=Math.sqrt(c*c+d*d+_*_),c<0&&(D=-D),D!==0){for(b!==x?n.set(b,b-1,-D*S):N!==x&&n.set(b,b-1,-n.get(b,b-1)),c=c+D,S=c/D,$=d/D,g=_/D,d=d/c,_=_/c,E=b;E<i;E++)c=n.get(b,E)+d*n.get(b+1,E),q&&(c=c+_*n.get(b+2,E),n.set(b+2,E,n.get(b+2,E)-c*g)),n.set(b,E,n.get(b,E)-c*S),n.set(b+1,E,n.get(b+1,E)-c*$);for(v=0;v<=Math.min(s,b+3);v++)c=S*n.get(v,b)+$*n.get(v,b+1),q&&(c=c+g*n.get(v,b+2),n.set(v,b+2,n.get(v,b+2)-c*_)),n.set(v,b,n.get(v,b)-c),n.set(v,b+1,n.get(v,b+1)-c*d);for(v=a;v<=l;v++)c=S*r.get(v,b)+$*r.get(v,b+1),q&&(c=c+g*r.get(v,b+2),r.set(v,b+2,r.get(v,b+2)-c*_)),r.set(v,b,r.get(v,b)-c),r.set(v,b+1,r.get(v,b+1)-c*d)}}}if(p!==0){for(s=i-1;s>=0;s--)if(c=e[s],d=t[s],d===0)for(N=s,n.set(s,s,1),v=s-1;v>=0;v--){for(M=n.get(v,v)-c,_=0,E=N;E<=s;E++)_=_+n.get(v,E)*n.get(E,s);if(t[v]<0)g=M,D=_;else if(N=v,t[v]===0?n.set(v,s,M!==0?-_/M:-_/(f*p)):(S=n.get(v,v+1),$=n.get(v+1,v),d=(e[v]-c)*(e[v]-c)+t[v]*t[v],F=(S*D-g*_)/d,n.set(v,s,F),n.set(v+1,s,Math.abs(S)>Math.abs(g)?(-_-M*F)/S:(-D-$*F)/g)),F=Math.abs(n.get(v,s)),f*F*F>1)for(E=v;E<=s;E++)n.set(E,s,n.get(E,s)/F)}else if(d<0)for(N=s-1,Math.abs(n.get(s,s-1))>Math.abs(n.get(s-1,s))?(n.set(s-1,s-1,d/n.get(s,s-1)),n.set(s-1,s,-(n.get(s,s)-c)/n.get(s,s-1))):(k=ro(0,-n.get(s-1,s),n.get(s-1,s-1)-c,d),n.set(s-1,s-1,k[0]),n.set(s-1,s,k[1])),n.set(s,s-1,0),n.set(s,s,1),v=s-2;v>=0;v--){for(C=0,I=0,E=N;E<=s;E++)C=C+n.get(v,E)*n.get(E,s-1),I=I+n.get(v,E)*n.get(E,s);if(M=n.get(v,v)-c,t[v]<0)g=M,_=C,D=I;else if(N=v,t[v]===0?(k=ro(-C,-I,M,d),n.set(v,s-1,k[0]),n.set(v,s,k[1])):(S=n.get(v,v+1),$=n.get(v+1,v),R=(e[v]-c)*(e[v]-c)+t[v]*t[v]-d*d,U=(e[v]-c)*2*d,R===0&&U===0&&(R=f*p*(Math.abs(M)+Math.abs(d)+Math.abs(S)+Math.abs($)+Math.abs(g))),k=ro(S*_-g*C+d*I,S*D-g*I-d*C,R,U),n.set(v,s-1,k[0]),n.set(v,s,k[1]),Math.abs(S)>Math.abs(g)+Math.abs(d)?(n.set(v+1,s-1,(-C-M*n.get(v,s-1)+d*n.get(v,s))/S),n.set(v+1,s,(-I-M*n.get(v,s)-d*n.get(v,s-1))/S)):(k=ro(-_-$*n.get(v,s-1),-D-$*n.get(v,s),g,d),n.set(v+1,s-1,k[0]),n.set(v+1,s,k[1]))),F=Math.max(Math.abs(n.get(v,s-1)),Math.abs(n.get(v,s))),f*F*F>1)for(E=v;E<=s;E++)n.set(E,s-1,n.get(E,s-1)/F),n.set(E,s,n.get(E,s)/F)}for(v=0;v<i;v++)if(v<a||v>l)for(E=v;E<i;E++)r.set(v,E,n.get(v,E));for(E=i-1;E>=a;E--)for(v=a;v<=l;v++){for(g=0,b=a;b<=Math.min(E,l);b++)g=g+r.get(v,b)*n.get(b,E);r.set(v,E,g)}}}function ro(i,t,e,r){let n,s;return Math.abs(e)>Math.abs(r)?(n=r/e,s=e+n*r,[(i+n*t)/s,(t-n*i)/s]):(n=e/r,s=r+n*e,[(n*i+t)/s,(n*t-i)/s])}class Pc{constructor(t){if(t=nr.checkMatrix(t),!t.isSymmetric())throw new Error("Matrix is not symmetric");let e=t,r=e.rows,n=new pt(r,r),s=!0,a,l,f;for(l=0;l<r;l++){let h=0;for(f=0;f<l;f++){let p=0;for(a=0;a<f;a++)p+=n.get(f,a)*n.get(l,a);p=(e.get(l,f)-p)/n.get(f,f),n.set(l,f,p),h=h+p*p}for(h=e.get(l,l)-h,s&=h>0,n.set(l,l,Math.sqrt(Math.max(h,0))),f=l+1;f<r;f++)n.set(l,f,0)}this.L=n,this.positiveDefinite=!!s}isPositiveDefinite(){return this.positiveDefinite}solve(t){t=nr.checkMatrix(t);let e=this.L,r=e.rows;if(t.rows!==r)throw new Error("Matrix dimensions do not match");if(this.isPositiveDefinite()===!1)throw new Error("Matrix is not positive definite");let n=t.columns,s=t.clone(),a,l,f;for(f=0;f<r;f++)for(l=0;l<n;l++){for(a=0;a<f;a++)s.set(f,l,s.get(f,l)-s.get(a,l)*e.get(f,a));s.set(f,l,s.get(f,l)/e.get(f,f))}for(f=r-1;f>=0;f--)for(l=0;l<n;l++){for(a=f+1;a<r;a++)s.set(f,l,s.get(f,l)-s.get(a,l)*e.get(a,f));s.set(f,l,s.get(f,l)/e.get(f,f))}return s}get lowerTriangularMatrix(){return this.L}}class zc{constructor(t,e={}){t=nr.checkMatrix(t);let{Y:r}=e;const{scaleScores:n=!1,maxIterations:s=1e3,terminationCriteria:a=1e-10}=e;let l;if(r){if(Je.isAnyArray(r)&&typeof r[0]=="number"?r=pt.columnVector(r):r=nr.checkMatrix(r),r.rows!==t.rows)throw new Error("Y should have the same number of rows as X");l=r.getColumnVector(0)}else l=t.getColumnVector(0);let f=1,h,p,c,d;for(let _=0;_<s&&f>a;_++)c=t.transpose().mmul(l).div(l.transpose().mmul(l).get(0,0)),c=c.div(c.norm()),h=t.mmul(c).div(c.transpose().mmul(c).get(0,0)),_>0&&(f=h.clone().sub(d).pow(2).sum()),d=h.clone(),r?(p=r.transpose().mmul(h).div(h.transpose().mmul(h).get(0,0)),p=p.div(p.norm()),l=r.mmul(p).div(p.transpose().mmul(p).get(0,0))):l=h;if(r){let _=t.transpose().mmul(h).div(h.transpose().mmul(h).get(0,0));_=_.div(_.norm());let D=t.clone().sub(h.clone().mmul(_.transpose())),g=l.transpose().mmul(h).div(h.transpose().mmul(h).get(0,0)),y=r.clone().sub(h.clone().mulS(g.get(0,0)).mmul(p.transpose()));this.t=h,this.p=_.transpose(),this.w=c.transpose(),this.q=p,this.u=l,this.s=h.transpose().mmul(h),this.xResidual=D,this.yResidual=y,this.betas=g}else this.w=c.transpose(),this.s=h.transpose().mmul(h).sqrt(),n?this.t=h.clone().div(this.s.get(0,0)):this.t=h,this.xResidual=t.sub(h.mmul(c.transpose()))}}Pt.AbstractMatrix=$t,Pt.CHO=Pc,Pt.CholeskyDecomposition=Pc,Pt.DistanceMatrix=Qs,Pt.EVD=Lc;var ow=Pt.EigenvalueDecomposition=Lc;Pt.LU=to,Pt.LuDecomposition=to;var qc=Pt.Matrix=pt;Pt.MatrixColumnSelectionView=U_,Pt.MatrixColumnView=q_,Pt.MatrixFlipColumnView=k_,Pt.MatrixFlipRowView=W_,Pt.MatrixRowSelectionView=Z_,Pt.MatrixRowView=Y_,Pt.MatrixSelectionView=Vs,Pt.MatrixSubView=j_,Pt.MatrixTransposeView=G_,Pt.NIPALS=zc,Pt.Nipals=zc,Pt.QR=Tu,Pt.QrDecomposition=Tu,Pt.SVD=pi,Pt.SingularValueDecomposition=pi,Pt.SymmetricMatrix=Pn,Pt.WrapperMatrix1D=Oc,Pt.WrapperMatrix2D=nr,Pt.correlation=ew,Pt.covariance=tw;var Uc=Pt.default=pt;Pt.determinant=eo,Pt.inverse=J_,Pt.linearDependencies=Q_,Pt.pseudoInverse=V_,Pt.solve=Rc,Pt.wrap=K_;const kc=ow,Wc=qc;Uc.Matrix&&Uc.Matrix;class uw{new({rows:t,columns:e,initial_value:r}={}){return new $u(t,e,r)}avg({id:t}){return t==null?void 0:t.avg()}col({id:t,column:e}){return t==null?void 0:t.col({column:e})}det({id:t}){return t==null?void 0:t.det()}get({id:t,row:e,column:r}){return t==null?void 0:t.get({row:e,column:r})}inv({id:t}){return t==null?void 0:t.inv()}max({id:t}){return t==null?void 0:t.max()}min({id:t}){return t==null?void 0:t.min()}pow({id:t,power:e}){return t==null?void 0:t.pow({power:e})}row({id:t,row:e}){return t==null?void 0:t.row({row:e})}set({id:t,row:e,column:r,value:n}){t==null||t.set({row:e,column:r,value:n})}sum({id:t,id2:e}){return t==null?void 0:t.sum({id2:e})}copy({id:t}){return t==null?void 0:t.copy()}diff({id:t,id2:e}){return t==null?void 0:t.diff({id2:e})}rows({id:t}){return t==null?void 0:t.rows()}columns({id:t}){return t==null?void 0:t.columns()}fill({id:t,value:e,from_row:r,to_row:n,from_column:s,to_column:a}){t==null||t.fill({value:e,from_row:r,to_row:n,from_column:s,to_column:a})}kron({id:t,id2:e}){return t==null?void 0:t.kron({id2:e})}mode({id:t}){return t==null?void 0:t.mode()}mult({id:t,id2:e}){return t==null?void 0:t.mult({id2:e})}pinv({id:t}){return t==null?void 0:t.pinv()}rank({id:t}){return t==null?void 0:t.rank()}sort({id:t,column:e,order:r}){t==null||t.sort({column:e,order:r})}trace({id:t}){return t==null?void 0:t.trace()}concat({id:t,id2:e}){return t==null?void 0:t.concat({id2:e})}median({id:t}){return t==null?void 0:t.median()}add_col({id:t,column:e,array_id:r}){t==null||t.add_col({column:e,array_id:r})}add_row({id:t,row:e,array_id:r}){t==null||t.add_row({row:e,array_id:r})}is_zero({id:t}){return t==null?void 0:t.is_zero()}reshape({id:t,rows:e,columns:r}){return t==null?void 0:t.reshape({rows:e,columns:r})}reverse({id:t}){t==null||t.reverse()}is_binary({id:t}){return t==null?void 0:t.is_binary()}is_square({id:t}){return t==null?void 0:t.is_square()}submatrix({id:t,from_row:e,to_row:r,from_column:n,to_column:s}){return t==null?void 0:t.submatrix({from_row:e,to_row:r,from_column:n,to_column:s})}swap_rows({id:t,row1:e,row2:r}){t==null||t.swap_rows({row1:e,row2:r})}transpose({id:t}){return t==null?void 0:t.transpose()}remove_col({id:t,column:e}){return t==null?void 0:t.remove_col({column:e})}remove_row({id:t,row:e}){return t==null?void 0:t.remove_row({row:e})}eigenvalues({id:t}){return t==null?void 0:t.eigenvalues()}is_diagonal({id:t}){return t==null?void 0:t.is_diagonal()}is_identity({id:t}){return t==null?void 0:t.is_identity()}eigenvectors({id:t}){return t==null?void 0:t.eigenvectors()}is_symmetric({id:t}){return t==null?void 0:t.is_symmetric()}swap_columns({id:t,column1:e,column2:r}){t==null||t.swap_columns({column1:e,column2:r})}is_stochastic({id:t}){return t==null?void 0:t.is_stochastic()}is_triangular({id:t}){return t==null?void 0:t.is_triangular()}elements_count({id:t}){return t==null?void 0:t.elements_count()}is_antidiagonal({id:t}){return t==null?void 0:t.is_antidiagonal()}is_antisymmetric({id:t}){return t==null?void 0:t.is_antisymmetric()}}class $u{constructor(t=0,e=0,r=void 0){G(this,"_matrixInstance");this._matrixInstance=this._createMatrix(t,e,r)}get _matrixArray(){return this._matrixInstance.map(t=>[...t._value])}get _value(){return this._matrixInstance}set _value(t){this._matrixInstance=t}get isMatrix(){return!0}_createMatrix(t,e,r){return Array.from(new Array(t),()=>new Xt(e,r))}avg(){let t=0,e=0;for(const n of this._matrixInstance)for(const s of n._value)t+=s,e+=1;return t/e}col({column:t=0}){const e=[];for(const n of this._matrixInstance)e.push(n._value[t]);const r=new Xt;return r._value=e,r}det(){return Mc(this._matrixArray)}get({row:t,column:e=0}){return this._matrixInstance[t]._value[e]}inv(){const t=Ks(this._matrixArray);return this._newMatrix(t)}max(){return t_(this._matrixArray)}min(){return Nu(this._matrixArray)}pow({power:t}){const e=r_(this._matrixArray,t);return this._newMatrix(e)}row({row:t=0}){return this._matrixInstance[t]}set({row:t,column:e,value:r}){this._matrixInstance[t]._value[e]=r}sum({id2:t}){const e=ki(this._matrixArray,typeof t=="number"?t:t._matrixArray);return this._newMatrix(e)}copy(){return this._newMatrix(this._matrixArray)}diff({id2:t}){const e=K1(this._matrixArray,typeof t=="number"?t:t._matrixArray);return this._newMatrix(e)}rows(){return this._matrixInstance.length}columns(){return this._matrixArray.length&&this._matrixArray[0].length}fill({value:t,from_row:e=0,to_row:r=this.rows(),from_column:n=0,to_column:s=this.columns()}={}){for(const[a,l]of this._matrixInstance.entries())for(const[f]of l._value.entries())a<r&&a>=e&&f>=n&&f<s&&(l._value[f]=t)}kron({id2:t}){const e=j1(this._matrixArray,t._matrixArray);return this._newMatrix(e)}mode(){return Nu(yc(this._matrixArray))}mult({id2:t}){const e=typeof t=="number"?t:t._matrixArray?t._matrixArray:t._value,r=ai(this._matrixArray,e);return this._newMatrix(r)}pinv(){const t=e_(this._matrixArray);return this._newMatrix(t)}rank(){return this._matrixRank(this._matrixArray)}sort({column:t=0,order:e=Tn.ascending}={}){this._matrixInstance.sort((r,n)=>{const s=r._value[t],a=n._value[t];return e!==Tn.descending?s-a:a-s})}trace(){return V1(this._matrixArray)}concat({id2:t}){for(const e of t._value)this._matrixInstance.push(e);return this}median(){return Nc(this._matrixArray)}add_col({column:t=this.columns(),array_id:e}={}){for(const[r,n]of this._matrixInstance.entries())n._value[t]=e?e._value[r]:void 0}add_row({row:t,array_id:e}){this._matrixInstance.splice(t||this.rows(),0,e||new Xt(this.columns()))}is_zero(){return this._matrixArray.every(t=>t.every(e=>e===0))}reshape({rows:t,columns:e}){const r=k1(this._matrixArray,[t,e]);this._matrixInstance=r.map(n=>{const s=new Xt;return s._value=[...n],s})}reverse(){this._matrixInstance.reverse();for(const t of this._matrixInstance)t._value.reverse()}is_binary(){return this._matrixArray.every(t=>t.every(e=>e===0||e===1))}is_square(){return this.rows()===this.columns()}submatrix({from_row:t=0,to_row:e=this.rows(),from_column:r=0,to_column:n=this.columns()}={}){const s=this._matrixArray.splice(t,e-1),a=[];for(const l of s)a.push(l.splice(r,n-1));return this._newMatrix(a)}swap_rows({row1:t,row2:e}){const r=this._matrixInstance[t],n=this._matrixInstance[e];this._matrixInstance[t]=n,this._matrixInstance[e]=r}transpose(){const t=Ec(this._matrixArray);return this._newMatrix(t)}remove_col({column:t=this.columns()}={}){const e=[];for(const n of this._matrixInstance){const s=n._value.splice(t,1);e.push(s[0])}const r=new Xt;return r._value=e,r}remove_row({row:t=this.rows()}={}){return this._matrixInstance.splice(t,1)[0]}eigenvalues(){const t=new kc(new Wc(this._matrixArray)),e=new Xt;return e._value=t.realEigenvalues,e}is_diagonal(){const t=this.rows(),e=this.columns();if(t!==e)return!1;const r=this._matrixArray;for(let n=0;n<t;n++)for(let s=0;s<e;s++)if(n!==s&&r[n][s]!==0)return!1;return!0}is_identity(){const t=this.rows(),e=this.columns();if(t!==e)return!1;const r=this._matrixArray;for(let n=0;n<t;n++)for(let s=0;s<e;s++)if(n!==s&&r[n][s]!==0||n===s&&r[n][s]!==1)return!1;return!0}eigenvectors(){const t=new kc(new Wc(this._matrixArray));return this._newMatrix(t.eigenvectorMatrix.to2DArray())}is_symmetric(){const t=this.rows(),e=this.columns();if(t!==e)return!1;const r=this._matrixArray;for(let n=0;n<t;n++)for(let s=n+1;s<e;s++)if(r[n][s]!==r[s][n])return!1;return!0}swap_columns({column1:t,column2:e}){for(const r of this._matrixInstance){const n=r._value[t],s=r._value[e];r._value[t]=s,r._value[e]=n}}is_stochastic(){const t=this._matrixArray;for(let e=0;e<t.length;e++){let r=0;for(let n=0;n<t[e].length;n++){if(t[e][n]<0)return!1;r+=t[e][n]}if(Math.abs(r-1)>Number.EPSILON)return!1}return!0}is_triangular(){const t=this.rows(),e=this.columns();return t!==e?!1:this._isUpperTriangular(t)||this._isLowerTriangular(t)}elements_count(){return W1(this._matrixArray)}is_antidiagonal(){const t=this.rows(),e=this.columns();if(t!==e)return!1;const r=this._matrixArray;for(let n=0;n<t;n++)for(let s=0;s<t;s++)if(n+s!==t-1&&r[n][s]!==0)return!1;return!0}is_antisymmetric(){const t=this.rows(),e=this.columns();if(t!==e)return!1;const r=this._matrixArray;for(let n=0;n<t;n++)for(let s=0;s<t;s++)if(n!==s&&r[n][s]!==-r[s][n])return!1;return!0}_isUpperTriangular(t){const e=this._matrixArray;for(let r=1;r<t;r++)for(let n=0;n<r;n++)if(e[r][n]!==0)return!1;return!0}_isLowerTriangular(t){const e=this._matrixArray;for(let r=0;r<t-1;r++)for(let n=r+1;n<t;n++)if(e[r][n]!==0)return!1;return!0}_newMatrix(t){const e=new $u;return e._value=t.map(r=>{const n=new Xt;return n._value=[...r],n}),e}_matrixRank(t){let e=0;const r=t.length,n=t[0].length,s=[...t].map(a=>[...a]);for(let a=0;a<r&&!(a>=n);a++){let l=a;for(;l<r&&s[l][a]===0;)l++;if(l===r)continue;if(l!==a){const h=s[l];s[l]=s[a],s[a]=h}const f=s[a][a];for(let h=0;h<n;h++)s[a][h]/=f;for(let h=a+1;h<r;h++){const p=s[h][a];s[h]=s[h].map((c,d)=>c-p*s[a][d]),s[h][a]=0}}for(let a=0;a<r;a++)s[a].some(l=>Number(l.toFixed(8))!==0)&&e++;return e}}class aw{constructor(t){G(this,"_variables");G(this,"_cacheData");this._variables=t,this._cacheData={}}change({timeframe:t},e){const r=Bn(t),n=Bn(this._variables.timeframe.period);if(r<n)return!0;const s=`change_${e}`,a=this._cacheData[s],l=this._variables.time*1e3;if(a){if(a.offset){if(a.currentTime+a.offset<=l)return this._cacheData[s]={currentTime:l,offset:0},!0}else if(a.currentTime+r*1e3<=l)return this._cacheData[s]={currentTime:l,offset:0},!0}else{const f=this._calcTimeOffset(l,t);return this._cacheData[s]={currentTime:l,offset:f},!1}return!1}in_seconds({timeframe:t}={}){return Bn(t||this._variables.timeframe.period)}from_seconds({seconds:t=0}){const e=t*1e3,r=ne.duration(e);if(r.years())return"12M";const s=r.asMonths();if(js(s))return`${s}M`;const a=r.asWeeks();if(js(a))return`${a}M`;const l=r.asDays();if(l>=1)return`${Math.ceil(l)}D`;const f=r.asMinutes();if(f>=1)return`${Math.ceil(f)}`;const h=r.asSeconds();return h<=1?"1S":h<=5?"5S":h<=10?"10S":h<=15?"15S":h<=30?"30S":"1"}_calcTimeOffset(t,e){let r=0;if(e.includes("W")){const l=ne(t).day();e="1D",l!==1&&(r=(8-l)*60*60*24*1e3)}else if(e.includes("M")){const l=ne(t).date();e="1D";const f=ne(t).daysInMonth();l!==1&&(r=(f-l+1)*60*60*24*1e3)}const n=this._variables.getTimeTradingday(t,e),s=Bn(e)*1e3,a=t-n-Math.floor((t-n)/s)*s;return r?r-a:a}}class lw{pos({source:t,str:e}){return t==null?void 0:t.indexOf(e)}trim({source:t}){return t==null?void 0:t.trim()}lower({source:t}){return t==null?void 0:t.toLocaleLowerCase()}match({source:t,regex:e}){const r=t==null?void 0:t.match(new RegExp(e));return r?r[0]:""}split({string:t,separator:e}){const r=t==null?void 0:t.split(e),n=new Xt;return n._value=r||[],n}upper({source:t}){return t==null?void 0:t.toLocaleUpperCase()}format({formatString:t},e){return this._strFormat(t,e)}length({string:t}){return t==null?void 0:t.length}repeat({source:t,repeat:e=0,separator:r=""}){return Array.from(new Array(e),()=>t).join(r)}replace({source:t,target:e,replacement:r,occurrence:n=0}){let s=-1;for(let a=0;a<n+1&&(s=t.indexOf(e,s+1),s!==-1);a++);return s!==-1?t.substring(0,s)+r+t.substring(s+e.length):t}contains({source:t,str:e}){return t==null?void 0:t.includes(e)}endswith({source:t,str:e}){return t==null?void 0:t.endsWith(e)}tonumber({string:t}){if(/[^\d.]/.test(t))return;const e=parseFloat(t);return isNaN(e)?void 0:e}tostring({value:t,format:e}){if(t===void 0)return"NaN";if(typeof t=="object"){if(t.isArray)return this._arrToStr(t._value,e);if(t.isMatrix){const r=[];for(const n of t._matrixArray)r.push(this._arrToStr(n,e));return r.join(`
|
62
|
+
`)}}if(typeof t=="string")return t;if(typeof t=="boolean")return String(t);if(typeof t=="number")return this._formatNumber(t,e)}_arrToStr(t,e){return`[${t.map(n=>typeof n=="number"?this._formatNumber(n,e):n).toString()}]`}substring({source:t,begin_pos:e=0,end_pos:r}){return t==null?void 0:t.substring(e,r)}startswith({source:t,str:e}){return t==null?void 0:t.startsWith(e)}format_time({time:t,format:e="yyyy-MM-dd'T'HH:mm:ssZ",timezone:r}){return Fr(t,r).format(e)}replace_all({source:t,target:e,replacement:r}){return t==null?void 0:t.replace(new RegExp(e,"g"),r)}_formatNumber(t,e){if(!e)return t;switch(e){case"integer":return String(Math.round(t));case"currency":return`$${t}`;case"percent":return`${t*100}%`;default:const r=e.split(".")[1],n=r?r.length:0;return parseFloat(t.toFixed(n))}}_strFormat(t,e){let r=t;return e.forEach((n,s)=>{if(typeof n=="number"){const a=`\\{\\s*${s}\\s*,\\s*number\\s*,\\s*([^\\}]+)\\s*\\}`,l=t.match(new RegExp(a));if(l){const f=l[1];r=r.replace(new RegExp(a,"g"),String(this._formatNumber(n,f)))}else r=r.replace(new RegExp(`\\{${s}\\}`,"g"),String(n))}else r=r.replace(new RegExp(`\\{${s}\\}`,"g"),n)}),r}}class fw{new(){return new Ou}copy({id:t}){return t==null?void 0:t.copy()}get({id:t,key:e}){return t==null?void 0:t.get({key:e})}put({id:t,key:e,value:r}){return t==null?void 0:t.put({key:e,value:r})}keys({id:t}){return t==null?void 0:t.keys()}size({id:t}){return t==null?void 0:t.size()}clear({id:t}){t==null||t.clear()}remove({id:t,key:e}){return t==null?void 0:t.remove({key:e})}values({id:t}){return t==null?void 0:t.values()}put_all({id:t,id2:e}){t==null||t.put_all({id2:e})}contains({id:t,key:e}){return t==null?void 0:t.contains({key:e})}}class Ou{constructor(){G(this,"_mapInstance");this._mapInstance=new Map}get isMap(){return!0}_copyMap(t){const e=new Ou;return e._mapInstance=new Map(t.entries()),e}copy(){return this._copyMap(this._mapInstance)}get({key:t}){return this._mapInstance.get(t)}put({key:t,value:e}){return this._mapInstance.set(t,e)}keys(){const t=new Xt;return t._value=[...this._mapInstance.keys()],t}size(){return this._mapInstance.size}clear(){this._mapInstance.clear()}remove({key:t}){const e=this._mapInstance.get(t);return this._mapInstance.delete(t),e||void 0}values(){const t=new Xt;return t._value=[...this._mapInstance.values()],t}put_all({id2:t}){this._mapInstance=new Map([...this._mapInstance,...t._mapInstance])}contains({key:t}){return this._mapInstance.has(t)}}class cw{constructor(t){G(this,"_variables");this._variables=t}new({price:t,time:e,index:r}){return new zn(t,r,e)}now({price:t}){const{time:e,bar_index:r}=this._variables;return new zn(t,r,e)}copy({id:t}){const{price:e,time:r,index:n}=t||{};return new zn(e,n,r)}from_index({price:t,index:e}){return new zn(t,e)}from_time({price:t,time:e}){return new zn(t,void 0,e)}}class zn{constructor(t,e,r){G(this,"_index");G(this,"_price");G(this,"_time");this._index=e,this._price=t,this._time=r}get index(){return this._index}get price(){return this._price}get time(){return this._time}copy(){return new zn(this._price,this._index,this._time)}}class hw{constructor(t){G(this,"_variables");G(this,"_defaultLabel",{text:"",xloc:Ie.bar_index,yloc:Oi.price,size:zr.normal,style:de.styleLabelDown,textalign:Ge.alignCenter});this._variables=t}new(t,e){const r=`label_${e}`,n={...this._defaultLabel,...t,id:r};t.point&&(n.x=n.xloc===Ie.bar_index?t.point.index:t.point.time,n.y=t.point.price);const s=new Yi(r,this._variables);return this._variables.label.add(r,n,s),s}label(t,e){return t.x?t.x:new Yi(e,this._variables)}copy({id:t},e){return t==null?void 0:t.copy(e)}get_x({id:t},e){return t==null?void 0:t.get_x(e)}get_y({id:t},e){return t==null?void 0:t.get_y(e)}set_x({id:t,...e},r){t==null||t.set_x(e,r)}set_y({id:t,...e},r){t==null||t.set_y(e,r)}delete({id:t}){t==null||t.delete()}get_text({id:t},e){return t==null?void 0:t.get_text(e)}set_xy({id:t,...e},r){t==null||t.set_xy(e,r)}set_size({id:t,...e},r){t==null||t.set_size(e,r)}set_xloc({id:t,...e},r){t==null||t.set_xloc(e,r)}set_yloc({id:t,...e},r){t==null||t.set_yloc(e,r)}set_style({id:t,...e},r){t==null||t.set_style(e,r)}set_color({id:t,...e},r){t==null||t.set_color(e,r)}set_tooltip({id:t,...e},r){t==null||t.set_tooltip(e,r)}set_point({id:t,...e},r){t==null||t.set_point(e,r)}set_text({id:t,...e},r){t==null||t.set_text(e,r)}set_textcolor({id:t,...e},r){t==null||t.set_textcolor(e,r)}set_textalign({id:t,...e},r){t==null||t.set_textalign(e,r)}set_text_font_family({id:t,...e},r){t==null||t.set_text_font_family(e,r)}}class Yi{constructor(t,e){G(this,"_id");G(this,"_variables");this._id=t,this._variables=e}copy(t){const e=`label_${t}`,r=this._getLabel(t),n=new Yi(e,this._variables);return r&&this._variables.label.add(e,{...r,id:e},n),n}get_x(t){var e;return(e=this._getLabel(t))==null?void 0:e.x}get_y(t){var e;return(e=this._getLabel(t))==null?void 0:e.y}set_x({x:t},e){const r=this._getLabel(e);r&&(r.x=t)}set_y({y:t},e){const r=this._getLabel(e);r&&(r.y=t)}delete(){this._variables.label.delete(this._id)}set_xy({x:t,y:e},r){const n=this._getLabel(r);n&&(n.x=t,n.y=e)}get_text(t){var e;return(e=this._getLabel(t))==null?void 0:e.text}set_size({size:t},e){const r=this._getLabel(e);r&&(r.size=t)}set_text({text:t},e){const r=this._getLabel(e);r&&(r.text=t)}set_xloc({x:t,xloc:e},r){const n=this._getLabel(r);n&&(n.x=t,n.xloc=e)}set_yloc({yloc:t},e){const r=this._getLabel(e);r&&(r.yloc=t)}set_color({color:t},e){const r=this._getLabel(e);r&&(r.color=t)}set_point({point:t},e){const r=this._getLabel(e);r&&(r.x=r.xloc===Ie.bar_index?t==null?void 0:t.index:t==null?void 0:t.time,r.y=t==null?void 0:t.price)}set_style({style:t},e){const r=this._getLabel(e);r&&(r.style=t)}set_tooltip({tooltip:t},e){const r=this._getLabel(e);r&&(r.tooltip=t)}set_textalign({textalign:t},e){const r=this._getLabel(e);r&&(r.textalign=t)}set_textcolor({textcolor:t},e){const r=this._getLabel(e);r&&(r.textcolor=t)}set_text_font_family({text_font_family:t},e){const r=this._getLabel(e);r&&(r.text_font_family=t)}_getLabel(t){const e=this._variables.label.get(this._id);return e||console.log(`错误${t}: label 不存在`),e}}const pw={freq_all:an.freqAll,freq_once_per_bar:an.freqOncePerBar,freq_once_per_bar_close:an.freqOncePerBarClose},mw={gaps_off:$i.gapsOff,gaps_on:$i.gapsOn,lookahead_off:$i.lookaheadOff,lookahead_on:$i.lookaheadOn},mi={aqua:"#00BCD4",black:"#363A45",blue:"#2196F3",fuchsia:"#E040FB",gray:"#787B86",green:"#4CAF50",lime:"#00E676",maroon:"#880E4F",navy:"#311B92",olive:"#808000",orange:"#FF9800",purple:"#9C27B0",red:"#FF5252",silver:"#B2B5BE",teal:"#00897B",white:"#FFFFFF",yellow:"#FFEB3B"},dw={AUD:"AUD",BTC:"BTC",CAD:"CAD",CHF:"CHF",ETH:"ETH",EUR:"EUR",GBP:"GBP",HKD:"HKD",INR:"INR",JPY:"JPY",KRW:"KRW",MYR:"MYR",NOK:"NOK",NONE:"NONE",NZD:"NZD",RUB:"RUB",SEK:"SEK",SGD:"SGD",TRY:"TRY",USD:"USD",USDT:"USDT",ZAR:"ZAR"},gw={friday:6,monday:2,saturday:7,sunday:1,thursday:5,tuesday:3,wednesday:4},vw={all:[tr.dataWindow,tr.pane,tr.priceScale,tr.statusLine],data_window:[tr.dataWindow],none:[],pane:[tr.pane],price_scale:[tr.priceScale],status_line:[tr.statusLine]},_w={both:In.both,left:In.left,none:In.none,right:In.right},ww={inherit:Qn.inherit,mintick:Qn.mintick,percent:Qn.percent,price:Qn.price,volume:Qn.volume},Dw={style_solid:ps.styleSolid,style_dashed:ps.styleDashed,style_dotted:ps.styleDotted},yw={style_arrowdown:de.styleArrowdown,style_arrowup:de.styleArrowup,style_circle:de.styleCircle,style_cross:de.styleCross,style_diamond:de.styleDiamond,style_flag:de.styleFlag,style_label_center:de.styleLabelCenter,style_label_down:de.styleLabelDown,style_label_left:de.styleLabelLeft,style_label_lower_left:de.styleLabelLowerLeft,style_label_lower_right:de.styleLabelLowerRight,style_label_right:de.styleLabelRight,style_label_up:de.styleLabelUp,style_label_upper_left:de.styleLabelUpperLeft,style_label_upper_right:de.styleLabelUpperRight,style_none:de.styleNone,style_square:de.styleSquare,style_text_outline:de.styleTextOutline,style_triangledown:de.styleTriangledown,style_triangleup:de.styleTriangleup,style_xcross:de.styleXcross},bw={style_arrow_both:Pr.styleArrowBoth,style_arrow_left:Pr.styleArrowLeft,style_arrow_right:Pr.styleArrowRight,style_dashed:Pr.styleDashed,style_dotted:Pr.styleDotted,style_solid:Pr.styleSolid},Ew={abovebar:Vn.abovebar,absolute:Vn.absolute,belowbar:Vn.belowbar,bottom:Vn.bottom,top:Vn.top},Aw={e:2.718281828459045,phi:1.618033988749895,pi:3.141592653589793,rphi:.6180339887498948},xw={style_area:mr.styleArea,style_areabr:mr.styleAreabr,style_circles:mr.styleCircles,style_columns:mr.styleColumns,style_cross:mr.styleCross,style_histogram:mr.styleHistogram,style_line:mr.styleLine,style_linebr:mr.styleLinebr,style_stepline:mr.styleStepline,style_stepline_diamond:mr.styleSteplineDiamond,style_steplinebr:mr.styleSteplinebr},Cw={bottom_center:Mr.bottomCenter,bottom_left:Mr.bottomLeft,bottom_right:Mr.bottomRight,middle_center:Mr.middleCenter,middle_left:Mr.middleLeft,middle_right:Mr.middleRight,top_center:Mr.topCenter,top_left:Mr.topLeft,top_right:Mr.topRight},Fw={left:ms.left,none:ms.none,right:ms.right},Mw={arrowdown:er.arrowdown,arrowup:er.arrowup,circle:er.circle,cross:er.cross,diamond:er.diamond,flag:er.flag,labeldown:er.labeldown,labelup:er.labelup,square:er.square,triangledown:er.triangledown,triangleup:er.triangleup,xcross:er.xcross},Nw={auto:zr.auto,huge:zr.huge,large:zr.large,normal:zr.normal,small:zr.small,tiny:zr.tiny},Sw={cash:ds.cash,fixed:ds.fixed,percent_of_equity:ds.percentOfEquity,commission:{cash_per_contract:gs.cashPerContract,cash_per_order:gs.cashPerOrder,percent:gs.percent},direction:{all:vs.all,long:vs.long,short:vs.short},oca:{cancel:_s.cancel,none:_s.none,reduce:_s.reduce}},Bw={align_bottom:Ge.alignBottom,align_center:Ge.alignCenter,align_left:Ge.alignLeft,align_right:Ge.alignRight,align_top:Ge.alignTop,wrap_auto:Ge.wrapAuto,wrap_none:Ge.wrapNone},Iw={bar_index:Ie.bar_index,bar_time:Ie.bar_time},Tw={abovebar:Oi.abovebar,belowbar:Oi.belowbar,price:Oi.price},$w={actual:ws.actual,estimate:ws.estimate,standardized:ws.standardized};class Ow{constructor(){G(this,"adjustment",{dividends:hs.dividends,none:hs.none,splits:hs.splits});G(this,"alert",pw);G(this,"barmerge",mw);G(this,"color",mi);G(this,"currency",dw);G(this,"dayofweek",gw);G(this,"earnings",$w);G(this,"display",vw);G(this,"extend",_w);G(this,"font",{family_default:"SimSun",family_monospace:"Monospace"});G(this,"format",ww);G(this,"hline",Dw);G(this,"label",yw);G(this,"line",bw);G(this,"location",Ew);G(this,"math",Aw);G(this,"order",{ascending:Tn.ascending,descending:Tn.descending});G(this,"plot",xw);G(this,"position",Cw);G(this,"scale",Fw);G(this,"session",{extended:ru.extended,regular:ru.regular});G(this,"shape",Mw);G(this,"size",Nw);G(this,"splits",{denominator:"denominator",numerator:"numerator"});G(this,"strategy",Sw);G(this,"text",Bw);G(this,"xloc",Iw);G(this,"yloc",Tw)}updateData(){}}class Rw{constructor(t){G(this,"_variables");G(this,"_defaultPolyline",{curved:!1,closed:!1,xloc:Ie.bar_index,line_color:mi.blue,line_style:Pr.styleSolid,line_width:1});this._variables=t}new(t,e){const r=`polyline_${e}`,n=Object.assign({},this._defaultPolyline,t,{id:r}),s=new Yc(r,this._variables);return this._variables.polyline.add(r,n,s),s}delete({id:t}){t&&t.delete()}}class Yc{constructor(t,e){G(this,"_id");G(this,"_variables");this._variables=e,this._id=t}delete(){this._variables.polyline.delete(this._id)}}class Lw{constructor(t){G(this,"_variables");G(this,"_defaultLine",{xloc:Ie.bar_index,extend:In.none,style:Pr.styleSolid});this._variables=t}new({first_point:t,second_point:e,...r},n){const s=`line_${n}`,a={...this._defaultLine,...r,id:s};if(t&&e){const f=a.xloc===Ie.bar_index?t.index:t.time,h=a.xloc===Ie.bar_index?e.index:e.time;Object.assign(a,{x1:f,y1:t.price,x2:h,y2:e.price})}const l=new Zi(s,this._variables);return this._variables.line.add(s,a,l),l}line(t,e){return t.x?t.x:new Zi(e,this._variables)}copy({id:t},e){return t==null?void 0:t.copy(e)}delete({id:t}){t==null||t.delete()}get_x1({id:t},e){return t==null?void 0:t.get_x1(e)}get_x2({id:t},e){return t==null?void 0:t.get_x2(e)}get_y1({id:t},e){return t==null?void 0:t.get_y1(e)}get_y2({id:t},e){return t==null?void 0:t.get_y2(e)}set_x1({id:t,...e},r){t==null||t.set_x1(e,r)}set_x2({id:t,...e},r){t==null||t.set_x2(e,r)}set_y1({id:t,...e},r){t==null||t.set_y1(e,r)}set_y2({id:t,...e},r){t==null||t.set_y2(e,r)}set_xy1({id:t,...e},r){t==null||t.set_xy1(e,r)}set_xy2({id:t,...e},r){t==null||t.set_xy2(e,r)}set_xloc({id:t,...e},r){t==null||t.set_xloc(e,r)}get_price({id:t,...e},r){return t==null?void 0:t.get_price(e,r)}set_color({id:t,...e},r){t==null||t.set_color(e,r)}set_style({id:t,...e},r){t==null||t.set_style(e,r)}set_width({id:t,...e},r){t==null||t.set_width(e,r)}set_extend({id:t,...e},r){t==null||t.set_extend(e,r)}set_first_point({id:t,...e},r){t==null||t.set_first_point(e,r)}set_second_point({id:t,...e},r){t==null||t.set_second_point(e,r)}}class Zi{constructor(t,e){G(this,"_variables");G(this,"_id");this._id=t,this._variables=e}get data(){return this._variables.line.get(this._id)}copy(t){const e=`line_${t}`,r=this._getLine(t),n=new Zi(e,this._variables);return r&&this._variables.line.add(e,{...r,id:e},n),n}delete(){this._variables.line.delete(this._id)}get_price({x:t},e){const r=this._getLine(e);if(t===void 0)return t;if(r&&r.xloc===Ie.bar_index){const{x1:n,y1:s,x2:a,y2:l}=r;return n===void 0||a===void 0||s===void 0||l===void 0?void 0:(l-s)/(a-n)*(t-n)+s}}get_x1(t){var e;return(e=this._getLine(t))==null?void 0:e.x1}get_x2(t){var e;return(e=this._getLine(t))==null?void 0:e.x2}get_y1(t){var e;return(e=this._getLine(t))==null?void 0:e.y1}get_y2(t){var e;return(e=this._getLine(t))==null?void 0:e.y2}set_x1({x:t},e){const r=this._getLine(e);r&&(r.x1=t)}set_x2({x:t},e){const r=this._getLine(e);r&&(r.x2=t)}set_y1({y:t},e){const r=this._getLine(e);r&&(r.y1=t)}set_y2({y:t},e){const r=this._getLine(e);r&&(r.y2=t)}set_xy1({x:t,y:e},r){const n=this._getLine(r);n&&(n.x1=t,n.y1=e)}set_xy2({x:t,y:e},r){const n=this._getLine(r);n&&(n.x2=t,n.y2=e)}set_xloc({xloc:t,x1:e,x2:r},n){const s=this._getLine(n);s&&(s.xloc=t,s.x1=e,s.x2=r)}set_color({color:t},e){const r=this._getLine(e);r&&(r.color=t)}set_style({style:t},e){const r=this._getLine(e);r&&(r.style=t)}set_width({width:t},e){const r=this._getLine(e);r&&(r.width=t)}set_extend({extend:t},e){const r=this._getLine(e);r&&(r.extend=t)}set_first_point({point:t},e){const r=this._getLine(e);if(r){const{index:n,time:s,price:a}=t||{},l=r.xloc===Ie.bar_index?n:s,f=a;l&&(r.x1=l),f&&(r.y1=f)}}set_second_point({point:t},e){const r=this._getLine(e);if(r){const{index:n,time:s,price:a}=t||{},l=r.xloc===Ie.bar_index?n:s,f=a;l&&(r.x2=l),f&&(r.y2=f)}}_getLine(t){const e=this._variables.line.get(this._id);return e||console.log(`${t}: line 不存在`),e}}class Pw{constructor(t){G(this,"_variables");this._variables=t}new({line1:t,line2:e,color:r},n){const s=`linefill_${n}`,a=t==null?void 0:t.data,l=e==null?void 0:e.data;a&&(a.linefills=a.linefills||[],a.linefills.push(s)),l&&(l.linefills=l.linefills||[],l.linefills.push(s));const f=new no(this._variables,s,t,e);return(a||l)&&this._variables.linefill.add(s,{line1:a,line2:l,color:r,id:s},f),f}delete({id:t}){t==null||t.delete()}get_line1({id:t}){return t==null?void 0:t.get_line1()}get_line2({id:t}){return t==null?void 0:t.get_line2()}set_color({id:t,...e}){t==null||t.set_color(e)}}class no{constructor(t,e,r,n){G(this,"_id");G(this,"_line1");G(this,"_line2");G(this,"_variables");this._variables=t,this._id=e,this._line1=r,this._line2=n}linefill(t,e){return t.x?t.x:new no(this._variables,e)}delete(){var e,r;const t=this._variables.linefill.get(this._id);if(t){const{line1:n,line2:s}=t;n&&(n.linefills=(e=n.linefills)==null?void 0:e.filter(a=>a!==this._id)),s&&(s.linefills=(r=s.linefills)==null?void 0:r.filter(a=>a!==this._id))}this._line1=void 0,this._line2=void 0,this._variables.linefill.delete(this._id)}get_line1(){return this._line1}get_line2(){return this._line2}set_color({color:t}){const e=this._variables.linefill.get(this._id);e&&(e.color=t)}}class zw{constructor(t){G(this,"_variables");G(this,"_defaultBox",{border_color:mi.blue,border_width:1,bgcolor:mi.blue,xloc:Ie.bar_index,extend:In.none,style:Pr.styleSolid,text:"",text_size:zr.auto,text_color:mi.black,text_halign:Ge.alignCenter,text_valign:Ge.alignCenter,text_wrap:Ge.wrapNone});this._variables=t}box({x:t},e){return t===void 0?new ji(this._variables,e):t}new({top_left:t,bottom_right:e,...r},n){const s=`box_${n}`,a={...this._defaultBox,...r,id:s};if(t){const{price:f,time:h,index:p}=t;a.top=f,a.left=a.xloc===Ie.bar_index?p:h}if(e){const{price:f,time:h,index:p}=e;a.bottom=f,a.right=a.xloc===Ie.bar_index?p:h}const l=new ji(this._variables,s);return this._variables.box.add(s,a,l),l}copy({id:t},e){return t==null?void 0:t.copy(e)}delete({id:t}){t==null||t.delete()}get_top({id:t}){return t==null?void 0:t.get_top()}get_bottom({id:t}){return t==null?void 0:t.get_bottom()}get_left({id:t}){return t==null?void 0:t.get_left()}get_right({id:t}){return t==null?void 0:t.get_right()}set_top({id:t,...e}){t==null||t.set_top(e)}set_bottom({id:t,...e}){t==null||t.set_bottom(e)}set_left({id:t,...e}){t==null||t.set_left(e)}set_right({id:t,...e}){t==null||t.set_right(e)}set_extend({id:t,...e}){t==null||t.set_extend(e)}set_bgcolor({id:t,...e}){t==null||t.set_bgcolor(e)}set_border_color({id:t,...e}){t==null||t.set_border_color(e)}set_border_width({id:t,...e}){t==null||t.set_border_width(e)}set_border_style({id:t,...e}){t==null||t.set_border_style(e)}set_lefttop({id:t,...e}){t==null||t.set_lefttop(e)}set_rightbottom({id:t,...e}){t==null||t.set_rightbottom(e)}set_text_size({id:t,...e}){t==null||t.set_text_size(e)}set_text_wrap({id:t,...e}){t==null||t.set_text_wrap(e)}set_text_color({id:t,...e}){t==null||t.set_text_color(e)}set_text_halign({id:t,...e}){t==null||t.set_text_halign(e)}set_text_valign({id:t,...e}){t==null||t.set_text_valign(e)}set_top_left_point({id:t,...e}){t==null||t.set_top_left_point(e)}set_bottom_right_point({id:t,...e}){t==null||t.set_bottom_right_point(e)}set_text_font_family({id:t,...e}){t==null||t.set_text_font_family(e)}}class ji{constructor(t,e){G(this,"_id");G(this,"_variables");this._variables=t,this._id=e}copy(t){const e=`box_${t}`,r=this._getBox(),n=new ji(this._variables,e);return r&&this._variables.box.add(e,{...r,id:e},n),n}delete(){this._variables.box.delete(this._id)}get_top(){const t=this._getBox();return t&&t.top}set_top({top:t}){const e=this._getBox();e&&(e.top=t)}get_left(){const t=this._getBox();return t&&t.left}set_left({left:t}){const e=this._getBox();e&&(e.left=t)}set_text({text:t}){const e=this._getBox();e&&(e.text=t)}get_right(){const t=this._getBox();return t&&t.right}set_right({right:t}){const e=this._getBox();e&&(e.right=t)}get_bottom(){const t=this._getBox();return t&&t.bottom}set_bottom({bottom:t}){const e=this._getBox();e&&(e.bottom=t)}set_extend({extend:t}){const e=this._getBox();e&&(e.extend=t)}set_bgcolor({color:t}){const e=this._getBox();e&&(e.bgcolor=t)}set_lefttop({left:t,top:e}){const r=this._getBox();r&&(r.left=t,r.top=e)}set_text_size({text_size:t}){const e=this._getBox();e&&(e.text_size=t)}set_text_wrap({text_wrap:t}){const e=this._getBox();e&&(e.text_wrap=t)}set_text_color({text_color:t}){const e=this._getBox();e&&(e.text_color=t)}set_rightbottom({right:t,bottom:e}){const r=this._getBox();r&&(r.right=t,r.bottom=e)}set_text_halign({text_halign:t}){const e=this._getBox();e&&(e.text_halign=t)}set_text_valign({text_valign:t}){const e=this._getBox();e&&(e.text_valign=t)}set_top_left_point({point:t}){const e=this._getBox();if(e){const{index:r,price:n,time:s}=t||{};e.top=n,e.left=e.xloc===Ie.bar_index?r:s}}set_border_color({color:t}){const e=this._getBox();e&&(e.border_color=t)}set_border_style({style:t}){const e=this._getBox();e&&(e.border_style=t)}set_border_width({width:t}){const e=this._getBox();e&&(e.border_width=t)}set_bottom_right_point({point:t}){const e=this._getBox();if(e){const{index:r,price:n,time:s}=t||{};e.bottom=n,e.right=e.xloc===Ie.bar_index?r:s}}set_text_font_family({text_font_family:t}){const e=this._getBox();e&&(e.text_font_family=t)}_getBox(){return this._variables.box.get(this._id)}}class qw{constructor(t){G(this,"_variables");G(this,"_defaultTable",{position:Mr.topLeft,columns:0,rows:0,frame_width:0,border_width:0});this._variables=t}table({x:t},e){return t||new Ru(this._variables,e)}new(t,e){const r=`table_${e}`,n={...this._defaultTable,...t,cell:[],id:r},s=new Ru(this._variables,r);return this._variables.table.add(r,n,s),s}cell({table_id:t,...e}){t==null||t.cell(e)}cell_set_bgcolor({table_id:t,...e}){t==null||t.cell_set_bgcolor(e)}cell_set_height({table_id:t,...e}){t==null||t.cell_set_height(e)}cell_set_text({table_id:t,...e}){t==null||t.cell_set_text(e)}cell_set_text_color({table_id:t,...e}){t==null||t.cell_set_text_color(e)}cell_set_text_font_family({table_id:t,...e}){t==null||t.cell_set_text_font_family(e)}cell_set_text_halign({table_id:t,...e}){t==null||t.cell_set_text_halign(e)}cell_set_text_valign({table_id:t,...e}){t==null||t.cell_set_text_valign(e)}cell_set_text_size({table_id:t,...e}){t==null||t.cell_set_text_size(e)}cell_set_tooltip({table_id:t,...e}){t==null||t.cell_set_tooltip(e)}cell_set_width({table_id:t,...e}){t==null||t.cell_set_width(e)}clear({table_id:t,...e}){t==null||t.clear(e)}delete({table_id:t}){t==null||t.delete()}merge_cells({table_id:t,...e},r){t==null||t.merge_cells(e,r)}set_bgcolor({table_id:t,...e}){t==null||t.set_bgcolor(e)}set_border_color({table_id:t,...e}){t==null||t.set_border_color(e)}set_border_width({table_id:t,...e}){t==null||t.set_border_width(e)}set_frame_color({table_id:t,...e}){t==null||t.set_frame_color(e)}set_frame_width({table_id:t,...e}){t==null||t.set_frame_width(e)}set_position({table_id:t,...e}){t==null||t.set_position(e)}}class Ru{constructor(t,e){G(this,"_id");G(this,"_variables");G(this,"_defaultCell",{column:0,row:0,text:"",text_color:mi.black,text_halign:Ge.alignCenter,text_valign:Ge.alignCenter,text_size:zr.normal});this._variables=t,this._id=e}cell(t){const e={...this._defaultCell,...t},{column:r=0,row:n=0}=e,s=this._variables.table.get(this._id);if(s){const a=s.cell||[],l=a[n]||[];l[r]=e,a[n]=l,s.cell=a}}cell_set_bgcolor({column:t=0,row:e=0,bgcolor:r}){const n=this._getTableItem(t,e);n&&(n.bgcolor=r)}cell_set_height({column:t=0,row:e=0,height:r}){const n=this._getTableItem(t,e);n&&(n.height=r)}cell_set_text({column:t=0,row:e=0,text:r}){const n=this._getTableItem(t,e);n&&(n.text=r)}cell_set_text_color({column:t=0,row:e=0,text_color:r}){const n=this._getTableItem(t,e);n&&(n.text_color=r)}cell_set_text_font_family({column:t=0,row:e=0,text_font_family:r}){const n=this._getTableItem(t,e);n&&(n.text_font_family=r)}cell_set_text_halign({column:t=0,row:e=0,text_halign:r}){const n=this._getTableItem(t,e);n&&(n.text_halign=r)}cell_set_text_valign({column:t=0,row:e=0,text_valign:r}){const n=this._getTableItem(t,e);n&&(n.text_valign=r)}cell_set_text_size({column:t=0,row:e=0,text_size:r}){const n=this._getTableItem(t,e);n&&(n.text_size=r)}cell_set_tooltip({column:t=0,row:e=0,tooltip:r}){const n=this._getTableItem(t,e);n&&(n.tooltip=r)}cell_set_width({column:t=0,row:e=0,width:r}){const n=this._getTableItem(t,e);n&&(n.width=r)}clear({start_column:t=0,start_row:e=0,end_column:r=0,end_row:n=0}){const s=this._variables.table.get(this._id);if(s){const a=s.cell;if(a)for(let l=e;l<=n;l++)for(let f=t;f<=r;f++){const h=a[l];h&&(h[f]=void 0)}}}delete(){this._variables.table.delete(this._id)}merge_cells({start_column:t=0,start_row:e=0,end_column:r=0,end_row:n=0},s){if(t>r||e>n){console.log(`error ${s}: start_column > end_column or start_row > end_row`);return}const a=this._getTableItem(t,e);if(!a)return;this.clear({start_column:t,start_row:e,end_column:r,end_row:n});const l=this._variables.table.get(this._id);l.cell[e][t]={...a,isMerge:!0,merge_columns:r-t+1,merge_rows:n-e+1}}set_bgcolor({bgcolor:t}){const e=this._variables.table.get(this._id);e&&(e.bgcolor=t)}set_border_color({border_color:t}){const e=this._variables.table.get(this._id);e&&(e.border_color=t)}set_border_width({border_width:t}){const e=this._variables.table.get(this._id);e&&(e.border_width=t)}set_frame_color({frame_color:t}){const e=this._variables.table.get(this._id);e&&(e.frame_color=t)}set_frame_width({frame_width:t}){const e=this._variables.table.get(this._id);e&&(e.frame_width=t)}set_position({position:t}){const e=this._variables.table.get(this._id);e&&(e.position=t)}_getTableItem(t,e){const r=this._variables.table.get(this._id);if(r){const n=r.cell;return n?n[e][t]:void 0}}}class Uw{constructor(t){G(this,"_logs");G(this,"_variables");this._variables=t,this._logs=[]}get logs(){return this._logs}clearLogs(){this._logs=[]}info(t,e){this._addLog(t,e,"info")}error(t,e){this._addLog(t,e,"error")}warning(t,e){this._addLog(t,e,"warning")}_addLog(t,e,r){const{message:n,formatString:s}=t,{time:a,bar_index:l}=this._variables;let f=n;s&&Array.isArray(e)&&e.length&&(f=s.replace(/{(\d+)}/g,(h,p)=>e[p]?String(e[p]):h)),f&&this._logs.push({message:f,time:a,barIndex:l,type:r})}}class kw{constructor(t){G(this,"_errorListener");this._errorListener=t}error({message:t},e){this._errorListener.addError(t,e,li.Error)}}class Ww{constructor(){G(this,"_errors");this._errors=new Map}clear(){this._errors.clear()}get errors(){return Cr.flatMap([...this._errors.values()])}addError(t,e,r){const[n,s]=e.split("_").slice(-2),a=this._errors.get(e),l={message:t,endLineNumber:Number(n),startColumn:Number(s),endColumn:Number(s),startLineNumber:Number(n),type:r};a?a.push(l):this._errors.set(e,[l])}}ne.extend(Bp),ne.extend(Fp),ne.extend(Np);class Yw{constructor(){G(this,"_cacheData");G(this,"_barIndex");G(this,"_isRealTimeBar");G(this,"_barstate");G(this,"_priceVariables");G(this,"_lastBarIndex");G(this,"_currentBarTime");G(this,"_lastBarTime");G(this,"_period");G(this,"_offsetTime");G(this,"_timeframe");G(this,"_ta");G(this,"_polyline");G(this,"_label");G(this,"_line");G(this,"_linefill");G(this,"_box");G(this,"_table");this._cacheData={varData:{},varNewData:{},varipData:{}},this._barIndex=0,this._lastBarIndex=0,this._currentBarTime=0,this._lastBarTime=0,this._offsetTime=0,this._period="",this._isRealTimeBar=!1,this._barstate=new Zw,this._timeframe=new jw,this._priceVariables={close:0,open:0,low:0,high:0,volume:0},this._ta=new Gw,this._polyline=new di,this._label=new di,this._line=new di,this._linefill=new di,this._box=new di,this._table=new di}get table(){return this._table}get box(){return this._box}get linefill(){return this._linefill}get line(){return this._line}get polyline(){return this._polyline}get label(){return this._label}get ta(){return this._ta}get na(){}get last_bar_index(){return this._lastBarIndex}get bar_index(){return this._barIndex}get barstate(){return this._barstate}get close(){return this._priceVariables.close}get low(){return this._priceVariables.low}get open(){return this._priceVariables.open}get high(){return this._priceVariables.high}get volume(){return this._priceVariables.volume}get ohlc4(){const{close:t,open:e,high:r,low:n}=this._priceVariables;return(t+e+r+n)/4}get hl2(){const{high:t,low:e}=this._priceVariables;return(t+e)/2}get hlc3(){const{close:t,high:e,low:r}=this._priceVariables;return(t+e+r)/3}get hlcc4(){const{close:t,high:e,low:r}=this._priceVariables;return(t*2+e+r)/4}get hour(){return ne(this._currentBarTime).subtract(this._offsetTime,"hour").hour()}get minute(){return ne(this._currentBarTime).minute()}get second(){return ne(this._currentBarTime).second()}get month(){return ne(this._currentBarTime).month()+1}get year(){return ne(this._currentBarTime).year()}get dayofweek(){return ne(this._currentBarTime).day()+1}get dayofmonth(){return ne(this._currentBarTime).date()}get weekofyear(){return ne(this._currentBarTime).week()}get last_bar_time(){return this._lastBarTime}get time(){return this._currentBarTime}get time_close(){const[t,e]=cs(this._period);return this._isRealTimeBar?void 0:ne(this._currentBarTime).add(t,e).valueOf()}get timenow(){return Date.now()}get time_tradingday(){return this.getTimeTradingday(this._currentBarTime,this._period)}get timeframe(){return this._timeframe}getTimeTradingday(t,e){const[r,n]=cs(e),s=ne(t).add(r,n);return["M","w","y"].includes(n)?s.subtract(1,"d").valueOf():s.startOf("d").add(this._offsetTime,"h").valueOf()}updateData(t){const{barIndex:e,c:r,o:n,h:s,l:a,volume:l,lastBarIndex:f,time:h,lastBarTime:p,period:c="1D",offsetTime:d=5}=t;this._priceVariables={close:r,open:n,high:s,low:a,volume:l},e>this._barIndex&&this._isRealTimeBar&&(this._cacheData.varData=this._cacheData.varNewData,this._cacheData.varNewData={}),this._currentBarTime=h,this._lastBarIndex=f,this._barIndex=e,this._lastBarTime=p,this._period=c,this._offsetTime=d,this._timeframe.update(c),this._barstate.update(e,f,!1,!1),this.ta.update({...this._priceVariables,hlc3:this.hlc3,barIndex:e})}getCacheData(t,e,r){let n=this._cacheData[t]||[];n[this._barIndex]=r,n=n.filter(()=>!0);const s=n[n.length-1-e];return this._cacheData[t]=n,s}setCacheData(t,e){const r=this._cacheData[t]||[];r[this._barIndex]=e,this._cacheData[t]=r}getTypeInstance(t,e){return new Ap(t,e)}getVarValue(t,e,r){const n=`${t}_${e}`,s=r==="var"?this._cacheData.varData[n]:this._cacheData.varipData[n];if(s)return s}setVarValue(t,e,r,n){const s=`${t}_${e}`;let a;switch(typeof r=="object"&&r&&(n="var",a=r.varipKeys),n){case"var":if(this._isRealTimeBar){const l=Cr.cloneDeep(r);if(this._cacheData.varNewData[s]=l,a&&a.length)for(const f of a)this._cacheData.varData[s][f]=l[f]}else this._cacheData.varData[s]=r;break;case"varip":this._cacheData.varipData[s]=r;break}return r}add(t,e){return Array.isArray(t)&&Array.isArray(e)?Cr.uniq([...t,...e]):t+e}sub(t,e){return Array.isArray(t)&&Array.isArray(e)?t.filter(r=>!e.includes(r)):t-e}againAssignParse(t,e){var n;if(e)return;const r=(n=t==null?void 0:t.constructor)==null?void 0:n.name;if(r)switch(r){case Yi.name:case Yc.name:case ji.name:case Ru.name:case Zi.name:case no.name:t==null||t.delete();break}}}class di{constructor(t=50){G(this,"_all");G(this,"_allInstance");G(this,"_pseudoArrayAll");G(this,"_maxLength");this._all=new Map,this._allInstance=new Map,this._pseudoArrayAll=new Xt,this._maxLength=t}setMaxLen(t){this._maxLength=t}get data(){return[...this._all.values()]}get all(){return this._pseudoArrayAll._value=[...this._allInstance.values()],this._pseudoArrayAll}add(t,e,r){this._all.set(t,e),this._allInstance.set(t,r);const n=[...this._all.keys()];if(n.length>this._maxLength){const s=n.shift();s&&this.delete(s)}}get(t){return this._all.get(t)}getInstance(t){return this._allInstance.get(t)}delete(t){this._all.delete(t),this._allInstance.delete(t)}}class Zw{constructor(){G(this,"_isMarketOpen");G(this,"_currentBarIndex");G(this,"_totalBarIndex");G(this,"_isRealTimeBar");G(this,"_preBarIndex");this._currentBarIndex=0,this._totalBarIndex=0,this._isRealTimeBar=!1,this._preBarIndex=0,this._isMarketOpen=!0}update(t,e,r,n){this._preBarIndex=this._currentBarIndex,this._currentBarIndex=t,this._totalBarIndex=e,this._isRealTimeBar=r,this._isMarketOpen=n}get isnew(){return!this._isRealTimeBar||this._preBarIndex!==this._currentBarIndex}get islast(){return this._currentBarIndex===this._totalBarIndex}get isfirst(){return this._currentBarIndex===0}get ishistory(){return!this._isRealTimeBar}get isrealtime(){return this._isRealTimeBar}get isconfirmed(){return!this._isRealTimeBar}get islastconfirmedhistory(){return this._isMarketOpen?this._currentBarIndex===this._totalBarIndex-1:this._currentBarIndex===this._totalBarIndex}}class jw{constructor(){G(this,"_period");G(this,"_multiplier");G(this,"_unit");this._period="1",this._multiplier=1,this._unit="m"}update(t){if(!t)return;this._period=t;const[e,r]=cs(t);this._multiplier=e,this._unit=r}get isdaily(){return this._unit==="d"}get isdwm(){return["d","w","M"].includes(this._unit)}get isintraday(){return["s","m","h"].includes(this._unit)}get isminutes(){return this._unit==="m"}get ismonthly(){return this._unit==="M"}get isseconds(){return this._unit==="s"}get isweekly(){return this._unit==="w"}get multiplier(){return this._multiplier}get period(){return this._period}}class Gw{constructor(){G(this,"_preAccdist");G(this,"_preNvi");G(this,"_prePvi");G(this,"_preObv");G(this,"_prePvt");G(this,"_preWad");G(this,"_preVwap");G(this,"_preValue");G(this,"_currentData");G(this,"_preData");this._preAccdist=0,this._preNvi=0,this._prePvi=0,this._preObv=0,this._prePvt=0,this._preWad=0,this._preVwap={},this._preValue={},this._currentData={},this._preData={}}update(t){this._preValue={},t.barIndex!==this._currentData.barIndex&&(this._preData={...this._currentData}),this._currentData={...t}}get isRealTime(){return this._preData.barIndex===this._currentData.barIndex}get accdist(){if(this._preValue.accdist)return this._preValue.accdist;const{close:t,low:e,high:r,volume:n}=this._currentData;if(r===e)return this._preAccdist;const s=(t-e-(r-t))/(r-e)*n+this._preAccdist;return!this.isRealTime&&(this._preAccdist=s),this._preValue.accdist=s,s}get iii(){if(this._preValue.iii)return this._preValue.iii;const{close:t,low:e,high:r,volume:n}=this._currentData,s=(2*t-r-e)/((r-e)*n);return this._preValue.iii=s,s}get nvi(){return this._preValue.nvi?this._preValue.nvi:this._getNvi()}get wvad(){if(this._preValue.wvad)return this._preValue.wvad;const{close:t,low:e,high:r,volume:n,open:s}=this._currentData,a=(t-s)/(r-e)*n;return this._preValue.wvad=a,a}get obv(){if(this._preValue.obv)return this._preValue.obv;const{close:t,volume:e}=this._currentData,{close:r}=this._preData;if(r===void 0){this._preObv=0;return}const n=Math.sign(t-r)*e+this._preObv;return!this.isRealTime&&(this._preObv=n),this._preValue.obv=n,n}get pvi(){return this._preValue.pvi?this._preValue.pvi:this._getPvi()}get tr(){if(this._preValue.tr)return this._preValue.tr;const{low:t,high:e}=this._currentData,{close:r}=this._preData;if(r===void 0)return;const n=Math.max(e-t,Math.abs(e-r),Math.abs(t-r));return this._preValue.tr=n,n}get pvt(){if(this._preValue.pvt)return this._preValue.pvt;const{close:t,volume:e}=this._currentData,{close:r}=this._preData;if(r===void 0){this._prePvt=0;return}const n=(t-r)/r*e+this._prePvt;return!this.isRealTime&&(this._prePvt=n),this._preValue.pvt=n,n}get wad(){if(this._preValue.wad)return this._preValue.wad;const{close:t,high:e,low:r}=this._currentData,{close:n}=this._preData;if(n===void 0)return this._preWad=0,0;const s=Math.max(e,n),a=Math.min(r,n),l=t-n,h=(l>0?t-a:l<0?t-s:0)+this._preWad;return!this.isRealTime&&(this._preWad=h),this._preValue.wad=h,h}get vwap(){if(this._preValue.vwap)return this._preValue.vwap;const{hlc3:t,volume:e}=this._currentData;let{sum:r=0,sumV:n=0,isReset:s}=this._preVwap;if(self.buildInFunctions.timeframe.change({timeframe:"1D"},"vwap_buildin")&&(s=!0,r=n=0),!s)return;const l=t*e+r,f=e+n;!this.isRealTime&&(this._preVwap={sum:l,sumV:f,isReset:s});const h=l/f;return this._preValue.vwap=h,h}_getNvi(){const t=this._preNvi||1,{close:e=0,volume:r=0}=this._preData,{close:n,volume:s}=this._currentData;let a=1;const l=t||1;return n&&e?a=s<r?l+(n-e)/e*l:l:a=l,!this.isRealTime&&(this._preNvi=a),this._preValue.nvi=a,a}_getPvi(){const t=this._prePvi||1,{close:e=0,volume:r=0}=this._preData,{close:n,volume:s}=this._currentData;let a=1;const l=t||1;return n&&e?a=s>r?l+(n-e)/e*l:l:a=l,!this.isRealTime&&(this._prePvi=a),this._preValue.pvi=a,a}}var Zc={exports:{}};(function(i,t){(function(e,r){i.exports=r()})(Wt,function(){return function(e,r,n){r.prototype.isBetween=function(s,a,l,f){var h=n(s),p=n(a),c=(f=f||"()")[0]==="(",d=f[1]===")";return(c?this.isAfter(h,l):!this.isBefore(h,l))&&(d?this.isBefore(p,l):!this.isAfter(p,l))||(c?this.isBefore(h,l):!this.isAfter(h,l))&&(d?this.isAfter(p,l):!this.isBefore(p,l))}}})})(Zc);var Kw=Zc.exports,Jw=Zt(Kw),jc={exports:{}};(function(i,t){(function(e,r){i.exports=r()})(Wt,function(){return function(e,r,n){var s=r.prototype,a=function(d){var _,D=d.date,g=d.utc,y={};if(!((_=D)===null||_ instanceof Date||_ instanceof Array||s.$utils().u(_)||_.constructor.name!=="Object")){if(!Object.keys(D).length)return new Date;var v=g?n.utc():n();Object.keys(D).forEach(function($){var C,I;y[C=$,I=s.$utils().p(C),I==="date"?"day":I]=D[$]});var E=y.day||(y.year||y.month>=0?1:v.date()),b=y.year||v.year(),N=y.month>=0?y.month:y.year||y.day?0:v.month(),x=y.hour||0,F=y.minute||0,M=y.second||0,S=y.millisecond||0;return g?new Date(Date.UTC(b,N,E,x,F,M,S)):new Date(b,N,E,x,F,M,S)}return D},l=s.parse;s.parse=function(d){d.date=a.bind(this)(d),l.bind(this)(d)};var f=s.set,h=s.add,p=s.subtract,c=function(d,_,D,g){g===void 0&&(g=1);var y=Object.keys(_),v=this;return y.forEach(function(E){v=d.bind(v)(_[E]*g,E)}),v};s.set=function(d,_){return _=_===void 0?d:_,d.constructor.name==="Object"?c.bind(this)(function(D,g){return f.bind(this)(g,D)},_,d):f.bind(this)(d,_)},s.add=function(d,_){return d.constructor.name==="Object"?c.bind(this)(h,d,_):h.bind(this)(d,_)},s.subtract=function(d,_){return d.constructor.name==="Object"?c.bind(this)(h,d,_,-1):p.bind(this)(d,_)}}})})(jc);var Xw=jc.exports,Hw=Zt(Xw),Gc={exports:{}};(function(i,t){(function(e,r){i.exports=r()})(Wt,function(){var e,r,n=1e3,s=6e4,a=36e5,l=864e5,f=/\[([^\]]+)]|Y{1,4}|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,h=31536e6,p=2628e6,c=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/,d={years:h,months:p,days:l,hours:a,minutes:s,seconds:n,milliseconds:1,weeks:6048e5},_=function(F){return F instanceof N},D=function(F,M,S){return new N(F,S,M.$l)},g=function(F){return r.p(F)+"s"},y=function(F){return F<0},v=function(F){return y(F)?Math.ceil(F):Math.floor(F)},E=function(F){return Math.abs(F)},b=function(F,M){return F?y(F)?{negative:!0,format:""+E(F)+M}:{negative:!1,format:""+F+M}:{negative:!1,format:""}},N=function(){function F(S,$,C){var I=this;if(this.$d={},this.$l=C,S===void 0&&(this.$ms=0,this.parseFromMilliseconds()),$)return D(S*d[g($)],this);if(typeof S=="number")return this.$ms=S,this.parseFromMilliseconds(),this;if(typeof S=="object")return Object.keys(S).forEach(function(q){I.$d[g(q)]=S[q]}),this.calMilliseconds(),this;if(typeof S=="string"){var R=S.match(c);if(R){var U=R.slice(2).map(function(q){return q!=null?Number(q):0});return this.$d.years=U[0],this.$d.months=U[1],this.$d.weeks=U[2],this.$d.days=U[3],this.$d.hours=U[4],this.$d.minutes=U[5],this.$d.seconds=U[6],this.calMilliseconds(),this}}return this}var M=F.prototype;return M.calMilliseconds=function(){var S=this;this.$ms=Object.keys(this.$d).reduce(function($,C){return $+(S.$d[C]||0)*d[C]},0)},M.parseFromMilliseconds=function(){var S=this.$ms;this.$d.years=v(S/h),S%=h,this.$d.months=v(S/p),S%=p,this.$d.days=v(S/l),S%=l,this.$d.hours=v(S/a),S%=a,this.$d.minutes=v(S/s),S%=s,this.$d.seconds=v(S/n),S%=n,this.$d.milliseconds=S},M.toISOString=function(){var S=b(this.$d.years,"Y"),$=b(this.$d.months,"M"),C=+this.$d.days||0;this.$d.weeks&&(C+=7*this.$d.weeks);var I=b(C,"D"),R=b(this.$d.hours,"H"),U=b(this.$d.minutes,"M"),q=this.$d.seconds||0;this.$d.milliseconds&&(q+=this.$d.milliseconds/1e3,q=Math.round(1e3*q)/1e3);var k=b(q,"S"),P=S.negative||$.negative||I.negative||R.negative||U.negative||k.negative,K=R.format||U.format||k.format?"T":"",j=(P?"-":"")+"P"+S.format+$.format+I.format+K+R.format+U.format+k.format;return j==="P"||j==="-P"?"P0D":j},M.toJSON=function(){return this.toISOString()},M.format=function(S){var $=S||"YYYY-MM-DDTHH:mm:ss",C={Y:this.$d.years,YY:r.s(this.$d.years,2,"0"),YYYY:r.s(this.$d.years,4,"0"),M:this.$d.months,MM:r.s(this.$d.months,2,"0"),D:this.$d.days,DD:r.s(this.$d.days,2,"0"),H:this.$d.hours,HH:r.s(this.$d.hours,2,"0"),m:this.$d.minutes,mm:r.s(this.$d.minutes,2,"0"),s:this.$d.seconds,ss:r.s(this.$d.seconds,2,"0"),SSS:r.s(this.$d.milliseconds,3,"0")};return $.replace(f,function(I,R){return R||String(C[I])})},M.as=function(S){return this.$ms/d[g(S)]},M.get=function(S){var $=this.$ms,C=g(S);return C==="milliseconds"?$%=1e3:$=C==="weeks"?v($/d[C]):this.$d[C],$||0},M.add=function(S,$,C){var I;return I=$?S*d[g($)]:_(S)?S.$ms:D(S,this).$ms,D(this.$ms+I*(C?-1:1),this)},M.subtract=function(S,$){return this.add(S,$,!0)},M.locale=function(S){var $=this.clone();return $.$l=S,$},M.clone=function(){return D(this.$ms,this)},M.humanize=function(S){return e().add(this.$ms,"ms").locale(this.$l).fromNow(!S)},M.valueOf=function(){return this.asMilliseconds()},M.milliseconds=function(){return this.get("milliseconds")},M.asMilliseconds=function(){return this.as("milliseconds")},M.seconds=function(){return this.get("seconds")},M.asSeconds=function(){return this.as("seconds")},M.minutes=function(){return this.get("minutes")},M.asMinutes=function(){return this.as("minutes")},M.hours=function(){return this.get("hours")},M.asHours=function(){return this.as("hours")},M.days=function(){return this.get("days")},M.asDays=function(){return this.as("days")},M.weeks=function(){return this.get("weeks")},M.asWeeks=function(){return this.as("weeks")},M.months=function(){return this.get("months")},M.asMonths=function(){return this.as("months")},M.years=function(){return this.get("years")},M.asYears=function(){return this.as("years")},F}(),x=function(F,M,S){return F.add(M.years()*S,"y").add(M.months()*S,"M").add(M.days()*S,"d").add(M.hours()*S,"h").add(M.minutes()*S,"m").add(M.seconds()*S,"s").add(M.milliseconds()*S,"ms")};return function(F,M,S){e=S,r=S().$utils(),S.duration=function(I,R){var U=S.locale();return D(I,{$l:U},R)},S.isDuration=_;var $=M.prototype.add,C=M.prototype.subtract;M.prototype.add=function(I,R){return _(I)?x(this,I,1):$.bind(this)(I,R)},M.prototype.subtract=function(I,R){return _(I)?x(this,I,-1):C.bind(this)(I,R)}}})})(Gc);var Qw=Gc.exports,Vw=Zt(Qw);ne.extend(Jw),ne.extend(Hw),ne.extend(Vw);class tD{constructor(t,e){G(this,"array");G(this,"color");G(this,"math");G(this,"str");G(this,"map");G(this,"matrix");G(this,"timeframe");G(this,"ta");G(this,"input");G(this,"_variables");G(this,"_cacheData");G(this,"_options");G(this,"_errorListener");G(this,"_plots");G(this,"_alerts");G(this,"_bgColors");G(this,"_hlines");G(this,"_fills");G(this,"chart");G(this,"line");G(this,"label");G(this,"polyline");G(this,"box");G(this,"table");G(this,"linefill");G(this,"log");G(this,"runtime");this._variables=e,this.array=new $p,this.math=new Op(t),this.color=new a_,this.str=new lw,this.map=new fw,this.timeframe=new aw(e),this.matrix=new uw,this.ta=new i_(e,this.math,this.timeframe),this._cacheData={},this._options={},this._bgColors={},this._alerts=new Map,this._hlines=new Map,this._fills=new Map,this._errorListener=new Ww,this.input=new u_(e,this._errorListener),this._plots=new Map,this.chart={point:new cw(e)},this.line=new Lw(e),this.label=new hw(e),this.polyline=new Rw(e),this.box=new zw(e),this.table=new qw(e),this.linefill=new Pw(e),this.log=new Uw(e),this.runtime=new kw(this._errorListener)}get errors(){return this._errorListener.errors}get options(){const t=this.input.getInputs(),e=this._alerts.size?[...this._alerts.values()]:void 0;this._alerts.clear();const r=Object.keys(this._bgColors).length?{...this._bgColors}:void 0,n=this._hlines.size?[...this._hlines.values()]:void 0,s=this._fills.size?[...this._fills.values()]:void 0,a=this.log.logs.length?this.log.logs:void 0;return this.log.clearLogs(),Object.assign(this._options,{inputGroups:t,plots:[...this._plots.values()],draws:this._getDraws(),alerts:e,colors:r,hlines:n,fills:s,logs:a})}_getDraws(){const{line:t,linefill:e,table:r,box:n,polyline:s,label:a}=this._variables,l={};return t.data.length&&(l.lines=t.data),e.data.length&&(l.linefills=e.data),r.data.length&&(l.tables=r.data),n.data.length&&(l.boxes=n.data),s.data.length&&(l.polylines=s.data),a.data.length&&(l.labels=a.data),Object.keys(l).length?l:void 0}update(t){const{barIndex:e,inputs:r}=t;r&&r.length&&this.input.update(r),this.math.update(e)}indicator(t){this._variables.bar_index||(this._options.scriptType="indicator",this._options.indicator=t)}plot(t,e){const{series:r,color:n,seriesColors:s,...a}=t,{bar_index:l}=this._variables,f=`plot_${e}`,h=this._plots.get(f),p=(h==null?void 0:h.data)||[],c=r!==void 0&&isNaN(r)?void 0:r;if(p[l]=c,s!=null&&s.length&&(this._seriesColorHandle(t,f),p[l]={value:c,itemStyle:{color:n}}),!h){const d=n?[n]:void 0;this._plots.set(f,{editable:!0,...a,colors:d,data:p,id:f})}return{type:"plot",key:f}}_seriesColorHandle(t,e){var s,a;const{seriesColors:r}=t,n=this._plots.get(e);if(n&&r!=null&&r.length)for(const l of r){if((s=n.gradientColorKeys)!=null&&s.includes(l))continue;const f=t[l],h=n[`${l}s`]||[];h.includes(f)||(h.push(f),n[`${l}s`]=h,h.length>5&&(n[`${l}s`]=[],(a=n.gradientColorKeys)==null||a.push(l)))}}plotbar(t,e){const{open:r,close:n,low:s,high:a,color:l,seriesColors:f,...h}=t,{bar_index:p}=this._variables,c=`plotbar_${e}`,d=this._plots.get(c),_=(d==null?void 0:d.data)||[],D=n!==void 0&&isNaN(n)?void 0:n,g=r!==void 0&&isNaN(r)?void 0:r,y=s!==void 0&&isNaN(s)?void 0:s,v=a!==void 0&&isNaN(a)?void 0:a,E=[g,D,y,v];if(_[p]=E,f!=null&&f.length&&(this._seriesColorHandle(t,c),_[p]={value:E,itemStyle:{color:l}}),!d){const b=l?[l]:void 0;this._plots.set(c,{editable:!0,...h,colors:b,data:_,id:c})}}plotchar(t,e){const{series:r,color:n,textcolor:s,...a}=t,{bar_index:l}=this._variables,f=`plotchar_${e}`,h=this._plots.get(f),p=(h==null?void 0:h.data)||[];p[l]={value:r,color:n,textcolor:s},h||this._plots.set(f,{editable:!0,...a,data:p,id:f})}plotarrow(t,e){const{series:r,colorup:n,colordown:s,...a}=t,{bar_index:l}=this._variables,f=`plotarrow_${e}`,h=this._plots.get(f),p=(h==null?void 0:h.data)||[];p[l]={value:r!==void 0&&isNaN(r)?void 0:r,colorup:n,colordown:s},h||this._plots.set(f,{editable:!0,...a,data:p,id:f})}plotshape(t,e){const{series:r,color:n,textcolor:s,...a}=t,{bar_index:l}=this._variables,f=`plotshape_${e}`,h=this._plots.get(f),p=(h==null?void 0:h.data)||[];p[l]={value:r,color:n,textcolor:s},h||this._plots.set(f,{editable:!0,...a,data:p,id:f})}plotcandle(t,e){const{wickcolor:r,bordercolor:n,color:s,close:a,open:l,low:f,high:h,...p}=t,{bar_index:c}=this._variables,d=`plotcandle_${e}`,_=this._plots.get(d),D=(_==null?void 0:_.data)||[],g=a!==void 0&&isNaN(a)?void 0:a,y=l!==void 0&&isNaN(l)?void 0:l,v=f!==void 0&&isNaN(f)?void 0:f,E=h!==void 0&&isNaN(h)?void 0:h,b=[y,g,v,E];D[c]={value:b,wickcolor:r,bordercolor:n,color:s},_||this._plots.set(d,{editable:!0,...p,data:D,id:d})}hline(t,e){const r=`hline_${e}`;return this._hlines.set(r,{linewidth:1,editable:!0,display:tr.all,...t}),{type:"hline",key:r}}fill(t,e){const r=`fill_${e}`;this._fills.set(r,{display:tr.all,editable:!0,fillgaps:!1,...t})}alert({message:t,freq:e=an.freqOncePerBar},r){const{bar_index:n,_isRealTimeBar:s,last_bar_index:a}=this._variables,l=`alert_${r}`,f=this._cacheData[l].barIndex;if(e===an.freqOncePerBar&&n===f){this._alerts.delete(l);return}const h={message:t,freq:e,id:l,type:"alert"};if(s){e!==an.freqOncePerBarClose&&this._alerts.set(l,h),this._cacheData[l].barIndex=n;return}if(!s&&e===an.freqOncePerBarClose&&n===f&&a===n-1){this._alerts.set(l,h),this._cacheData[l].barIndex=n;return}this._alerts.delete(l)}alertcondition({condition:t,message:e,title:r},n){const{_isRealTimeBar:s}=this._variables,a=`alertcondition_${n}`;s&&t?this._alerts.set(a,{message:e,title:r,id:a,type:"alertcondition"}):this._alerts.delete(a)}barcolor(t){this._setColors(t,"barcolor")}bgcolor(t){this._setColors(t,"bgcolor")}_setColors(t,e){var l,f;const{color:r,...n}=t,{bar_index:s}=this._variables,a=((l=this._bgColors[e])==null?void 0:l.colors)||[];if(!a[s]){const h=((f=this._bgColors[e])==null?void 0:f.setColors)||[];h.includes(r)||h.push(r),a[s]=r,this._bgColors[e]={...n,colors:a,setColors:h}}}max_bars_back({var:t,num:e,var_name:r}){console.log(t,e,r)}float({x:t}){return t}bool({x:t}){return t||!1}string({x:t}){return t}int({x:t}){return t&&Math.trunc(t)}na({x:t}){return t===void 0}nz({source:t,replacement:e}){return t!==void 0&&!isNaN(t)?t:e||0}time({timeframe:t="",session:e,timezone:r,bars_back:n=0},s){return this._timeHandle(this._variables.time,s,t,e,r,n)}time_close({timeframe:t="",session:e,timezone:r,bars_back:n=0},s){return this._variables.time_close&&this._timeHandle(this._variables.time_close,s,t,e,r,n)}timestamp({dateString:t,timezone:e,year:r,month:n,day:s,hour:a=0,minute:l=0,second:f=0}){if(t)return ne(t).valueOf();let h=ne({year:r,month:n,day:s,hour:a,minute:l,second:f});return e&&(h=Fr(h.valueOf(),e)),h.valueOf()}weekofyear({time:t,timezone:e}){return Fr(t,e).week()}year({time:t,timezone:e}){return Fr(t,e).year()}second({time:t,timezone:e}){return Fr(t,e).second()}month({time:t,timezone:e}){return Fr(t,e).month()+1}minute({time:t,timezone:e}){return Fr(t,e).minute()}hour({time:t,timezone:e}){return Fr(t,e).hour()}dayofweek({time:t,timezone:e}){return Fr(t,e).day()+1}dayofmonth({time:t,timezone:e}){return Fr(t,e).date()}_calcTimeOffset(t,e){const r=this._variables.getTimeTradingday(t,e),n=Bn(e)*1e3;return t-r-Math.floor((t-r)/n)*n}_timeHandle(t,e,r="",n,s,a=0){const l=r||this._variables.timeframe.period,f=Bn(l),h=Bn(this._variables.timeframe.period);let p;if(f<=h)p=t;else{const c=`time_${e}`,d=this._cacheData[c];if(d)d.currentTime+f*1e3-d.offset<=t?(p=t,this._cacheData[c]={currentTime:t,offset:0}):p=d;else{const _=this._calcTimeOffset(t,l);this._cacheData[c]={currentTime:t,offset:_},p=t}}if(n){const{timePeriods:c,weeks:d}=this._parserSession(n),_=ne(t).format("YYYY-MM-DD"),D=p;p=void 0;for(const y of c){const[v,E]=y;if(ne(t).isBetween(`${_} ${v}`,`${_} ${E}`,"hour")){ne(D).isBetween(`${_} ${v}`,`${_} ${E}`,"hour")?p=D:p=ne(`${_} ${v}`).valueOf();break}}const g=this._variables.dayofweek;p&&!d.includes(g)&&(p=void 0)}return s&&(p=p&&Fr(p,s).valueOf()),p&&p-a*h*1e3}_parserSession(t){const e=t.split(":"),r=e[0],s=(e[1]||"1234567").split("").map(l=>{const f=parseInt(l,10);if(f<1||f>7)throw new Error(`Invalid day of week: ${l}`);return f});return{timePeriods:r.split(",").map(l=>{const f=l.split("-");if(f.length!==2)throw new Error(`Invalid time period: ${l}`);return[this._processTime(f[0]),this._processTime(f[1])]}),weeks:s}}_processTime(t){const e=parseInt(t.slice(0,2),10),r=parseInt(t.slice(2),10);if(!(e>=0&&e<=23)&&r>=0&&r<=59)throw new Error("Invalid time: Time must be within 00:00 to 23:59");return`${e}:${r}`}}/**
|
63
|
+
* @license
|
64
|
+
* Copyright 2019 Google LLC
|
65
|
+
* SPDX-License-Identifier: Apache-2.0
|
66
|
+
*/const Kc=Symbol("Comlink.proxy"),eD=Symbol("Comlink.endpoint"),rD=Symbol("Comlink.releaseProxy"),Lu=Symbol("Comlink.finalizer"),io=Symbol("Comlink.thrown"),Jc=i=>typeof i=="object"&&i!==null||typeof i=="function",nD={canHandle:i=>Jc(i)&&i[Kc],serialize(i){const{port1:t,port2:e}=new MessageChannel;return Pu(i,t),[e,[e]]},deserialize(i){return i.start(),uD(i)}},iD={canHandle:i=>Jc(i)&&io in i,serialize({value:i}){let t;return i instanceof Error?t={isError:!0,value:{message:i.message,name:i.name,stack:i.stack}}:t={isError:!1,value:i},[t,[]]},deserialize(i){throw i.isError?Object.assign(new Error(i.value.message),i.value):i.value}},Xc=new Map([["proxy",nD],["throw",iD]]);function sD(i,t){for(const e of i)if(t===e||e==="*"||e instanceof RegExp&&e.test(t))return!0;return!1}function Pu(i,t=globalThis,e=["*"]){t.addEventListener("message",function r(n){if(!n||!n.data)return;if(!sD(e,n.origin)){console.warn(`Invalid origin '${n.origin}' for comlink proxy`);return}const{id:s,type:a,path:l}=Object.assign({path:[]},n.data),f=(n.data.argumentList||[]).map(qn);let h;try{const p=l.slice(0,-1).reduce((d,_)=>d[_],i),c=l.reduce((d,_)=>d[_],i);switch(a){case"GET":h=c;break;case"SET":p[l.slice(-1)[0]]=qn(n.data.value),h=!0;break;case"APPLY":h=c.apply(p,f);break;case"CONSTRUCT":{const d=new c(...f);h=hD(d)}break;case"ENDPOINT":{const{port1:d,port2:_}=new MessageChannel;Pu(i,_),h=cD(d,[d])}break;case"RELEASE":h=void 0;break;default:return}}catch(p){h={value:p,[io]:0}}Promise.resolve(h).catch(p=>({value:p,[io]:0})).then(p=>{const[c,d]=ao(p);t.postMessage(Object.assign(Object.assign({},c),{id:s}),d),a==="RELEASE"&&(t.removeEventListener("message",r),Hc(t),Lu in i&&typeof i[Lu]=="function"&&i[Lu]())}).catch(p=>{const[c,d]=ao({value:new TypeError("Unserializable return value"),[io]:0});t.postMessage(Object.assign(Object.assign({},c),{id:s}),d)})}),t.start&&t.start()}function oD(i){return i.constructor.name==="MessagePort"}function Hc(i){oD(i)&&i.close()}function uD(i,t){return zu(i,[],t)}function so(i){if(i)throw new Error("Proxy has been released and is not useable")}function Qc(i){return gi(i,{type:"RELEASE"}).then(()=>{Hc(i)})}const oo=new WeakMap,uo="FinalizationRegistry"in globalThis&&new FinalizationRegistry(i=>{const t=(oo.get(i)||0)-1;oo.set(i,t),t===0&&Qc(i)});function aD(i,t){const e=(oo.get(t)||0)+1;oo.set(t,e),uo&&uo.register(i,t,i)}function lD(i){uo&&uo.unregister(i)}function zu(i,t=[],e=function(){}){let r=!1;const n=new Proxy(e,{get(s,a){if(so(r),a===rD)return()=>{lD(n),Qc(i),r=!0};if(a==="then"){if(t.length===0)return{then:()=>n};const l=gi(i,{type:"GET",path:t.map(f=>f.toString())}).then(qn);return l.then.bind(l)}return zu(i,[...t,a])},set(s,a,l){so(r);const[f,h]=ao(l);return gi(i,{type:"SET",path:[...t,a].map(p=>p.toString()),value:f},h).then(qn)},apply(s,a,l){so(r);const f=t[t.length-1];if(f===eD)return gi(i,{type:"ENDPOINT"}).then(qn);if(f==="bind")return zu(i,t.slice(0,-1));const[h,p]=Vc(l);return gi(i,{type:"APPLY",path:t.map(c=>c.toString()),argumentList:h},p).then(qn)},construct(s,a){so(r);const[l,f]=Vc(a);return gi(i,{type:"CONSTRUCT",path:t.map(h=>h.toString()),argumentList:l},f).then(qn)}});return aD(n,i),n}function fD(i){return Array.prototype.concat.apply([],i)}function Vc(i){const t=i.map(ao);return[t.map(e=>e[0]),fD(t.map(e=>e[1]))]}const th=new WeakMap;function cD(i,t){return th.set(i,t),i}function hD(i){return Object.assign(i,{[Kc]:!0})}function ao(i){for(const[t,e]of Xc)if(e.canHandle(i)){const[r,n]=e.serialize(i);return[{type:"HANDLER",name:t,value:r},n]}return[{type:"RAW",value:i},th.get(i)||[]]}function qn(i){switch(i.type){case"HANDLER":return Xc.get(i.name).deserialize(i.value);case"RAW":return i.value}}function gi(i,t,e){return new Promise(r=>{const n=pD();i.addEventListener("message",function s(a){!a.data||!a.data.id||a.data.id!==n||(i.removeEventListener("message",s),r(a.data))}),i.start&&i.start(),i.postMessage(Object.assign({id:n},t),e)})}function pD(){return new Array(4).fill(0).map(()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)).join("-")}class mD{constructor(){G(this,"_cache");this._cache=new Map}set(t,e){this._cache.set(t,e)}setValue(t,e,r){const n=this._cache.get(t)||{};n[e]=r,this._cache.set(t,n)}updateValue(t,e,r){const n=this._cache.get(t)||{};this._cache.set(t,Object.assign(n[e]||{},r))}get(t){return this._cache.get(t)}has(t){return this._cache.has(t)}delete(t){this._cache.delete(t)}clear(){this._cache.clear()}}function dD(i,t,e){const{data:r,isPreParser:n}=t;if(self.workerStorage||(self.workerStorage=new mD),e&&(self.builtInGather=new Yw,self.buildinConstants=new Ow,self.buildInFunctions=new tD(4,self.builtInGather),self.tradingvueFunc=new Function("$_var","$_const","$_func",i)),n)self.tradingvueFunc(self.builtInGather,self.buildinConstants,self.buildInFunctions);else if(r&&r.length){const a=r.length;for(const[l,f]of r.entries())self.builtInGather.updateData(Object.assign(f,{barIndex:l,lastBarIndex:a-1,lastBarTime:r[a-1].time})),self.buildInFunctions.update({barIndex:l}),self.tradingvueFunc(self.builtInGather,self.buildinConstants,self.buildInFunctions)}const s=self.buildInFunctions.errors;return s.length&&s.some(a=>a.type===li.Error)?{status:1,errors:s}:{status:0,options:self.buildInFunctions.options}}Pu(dD)})();
|