@univerjs/engine-formula 0.19.0 → 0.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/index.js +1 -1
- package/lib/es/index.js +1 -1
- package/lib/index.js +1 -1
- package/lib/umd/index.js +1 -1
- package/package.json +4 -4
package/lib/umd/index.js
CHANGED
|
@@ -6,4 +6,4 @@
|
|
|
6
6
|
* Copyright (c) 2025 Michael Mclaughlin <M8ch88l@gmail.com>
|
|
7
7
|
* MIT Licence
|
|
8
8
|
*/
|
|
9
|
-
var Vr=9e15,Hr=1e9,Ur=`0123456789abcdef`,Wr=`2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058`,Gr=`3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789`,Kr={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-Vr,maxE:Vr,crypto:!1},qr,Jr,M=!0,Yr=`[DecimalError] `,Xr=Yr+`Invalid argument: `,Zr=Yr+`Precision limit exceeded`,Qr=Yr+`crypto unavailable`,$r=`[object Decimal]`,ei=Math.floor,ti=Math.pow,ni=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,ri=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,ii=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,ai=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,oi=1e7,N=7,si=9007199254740991,ci=Wr.length-1,li=Gr.length-1,P={toStringTag:$r};P.absoluteValue=P.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),F(e)},P.ceil=function(){return F(new this.constructor(this),this.e+1,2)},P.clampedTo=P.clamp=function(e,t){var n,r=this,i=r.constructor;if(e=new i(e),t=new i(t),!e.s||!t.s)return new i(NaN);if(e.gt(t))throw Error(Xr+t);return n=r.cmp(e),n<0?e:r.cmp(t)>0?t:new i(r)},P.comparedTo=P.cmp=function(e){var t,n,r,i,a=this,o=a.d,s=(e=new a.constructor(e)).d,c=a.s,l=e.s;if(!o||!s)return!c||!l?NaN:c===l?o===s?0:!o^c<0?1:-1:c;if(!o[0]||!s[0])return o[0]?c:s[0]?-l:0;if(c!==l)return c;if(a.e!==e.e)return a.e>e.e^c<0?1:-1;for(r=o.length,i=s.length,t=0,n=r<i?r:i;t<n;++t)if(o[t]!==s[t])return o[t]>s[t]^c<0?1:-1;return r===i?0:r>i^c<0?1:-1},P.cosine=P.cos=function(){var e,t,n=this,r=n.constructor;return n.d?n.d[0]?(e=r.precision,t=r.rounding,r.precision=e+Math.max(n.e,n.sd())+N,r.rounding=1,n=mi(r,Ni(r,n)),r.precision=e,r.rounding=t,F(Jr==2||Jr==3?n.neg():n,e,t,!0)):new r(1):new r(NaN)},P.cubeRoot=P.cbrt=function(){var e,t,n,r,i,a,o,s,c,l,u=this,d=u.constructor;if(!u.isFinite()||u.isZero())return new d(u);for(M=!1,a=u.s*ti(u.s*u,1/3),!a||Math.abs(a)==1/0?(n=ui(u.d),e=u.e,(a=(e-n.length+1)%3)&&(n+=a==1||a==-2?`0`:`00`),a=ti(n,1/3),e=ei((e+1)/3)-(e%3==(e<0?-1:2)),a==1/0?n=`5e`+e:(n=a.toExponential(),n=n.slice(0,n.indexOf(`e`)+1)+e),r=new d(n),r.s=u.s):r=new d(a.toString()),o=(e=d.precision)+3;;)if(s=r,c=s.times(s).times(s),l=c.plus(u),r=hi(l.plus(u).times(s),l.plus(c),o+2,1),ui(s.d).slice(0,o)===(n=ui(r.d)).slice(0,o))if(n=n.slice(o-3,o+1),n==`9999`||!i&&n==`4999`){if(!i&&(F(s,e+1,0),s.times(s).times(s).eq(u))){r=s;break}o+=4,i=1}else{(!+n||!+n.slice(1)&&n.charAt(0)==`5`)&&(F(r,e+1,1),t=!r.times(r).times(r).eq(u));break}return M=!0,F(r,e,d.rounding,t)},P.decimalPlaces=P.dp=function(){var e,t=this.d,n=NaN;if(t){if(e=t.length-1,n=(e-ei(this.e/N))*N,e=t[e],e)for(;e%10==0;e/=10)n--;n<0&&(n=0)}return n},P.dividedBy=P.div=function(e){return hi(this,new this.constructor(e))},P.dividedToIntegerBy=P.divToInt=function(e){var t=this,n=t.constructor;return F(hi(t,new n(e),0,1,1),n.precision,n.rounding)},P.equals=P.eq=function(e){return this.cmp(e)===0},P.floor=function(){return F(new this.constructor(this),this.e+1,3)},P.greaterThan=P.gt=function(e){return this.cmp(e)>0},P.greaterThanOrEqualTo=P.gte=function(e){var t=this.cmp(e);return t==1||t===0},P.hyperbolicCosine=P.cosh=function(){var e,t,n,r,i,a=this,o=a.constructor,s=new o(1);if(!a.isFinite())return new o(a.s?1/0:NaN);if(a.isZero())return s;n=o.precision,r=o.rounding,o.precision=n+Math.max(a.e,a.sd())+4,o.rounding=1,i=a.d.length,i<32?(e=Math.ceil(i/3),t=(1/Mi(4,e)).toString()):(e=16,t=`2.3283064365386962890625e-10`),a=ji(o,1,a.times(t),new o(1),!0);for(var c,l=e,u=new o(8);l--;)c=a.times(a),a=s.minus(c.times(u.minus(c.times(u))));return F(a,o.precision=n,o.rounding=r,!0)},P.hyperbolicSine=P.sinh=function(){var e,t,n,r,i=this,a=i.constructor;if(!i.isFinite()||i.isZero())return new a(i);if(t=a.precision,n=a.rounding,a.precision=t+Math.max(i.e,i.sd())+4,a.rounding=1,r=i.d.length,r<3)i=ji(a,2,i,i,!0);else{e=1.4*Math.sqrt(r),e=e>16?16:e|0,i=i.times(1/Mi(5,e)),i=ji(a,2,i,i,!0);for(var o,s=new a(5),c=new a(16),l=new a(20);e--;)o=i.times(i),i=i.times(s.plus(o.times(c.times(o).plus(l))))}return a.precision=t,a.rounding=n,F(i,t,n,!0)},P.hyperbolicTangent=P.tanh=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+7,r.rounding=1,hi(n.sinh(),n.cosh(),r.precision=e,r.rounding=t)):new r(n.s)},P.inverseCosine=P.acos=function(){var e=this,t=e.constructor,n=e.abs().cmp(1),r=t.precision,i=t.rounding;return n===-1?e.isZero()?yi(t,r+4,i).times(.5):(t.precision=r+6,t.rounding=1,e=new t(1).minus(e).div(e.plus(1)).sqrt().atan(),t.precision=r,t.rounding=i,e.times(2)):n===0?e.isNeg()?yi(t,r,i):new t(0):new t(NaN)},P.inverseHyperbolicCosine=P.acosh=function(){var e,t,n=this,r=n.constructor;return n.lte(1)?new r(n.eq(1)?0:NaN):n.isFinite()?(e=r.precision,t=r.rounding,r.precision=e+Math.max(Math.abs(n.e),n.sd())+4,r.rounding=1,M=!1,n=n.times(n).minus(1).sqrt().plus(n),M=!0,r.precision=e,r.rounding=t,n.ln()):new r(n)},P.inverseHyperbolicSine=P.asinh=function(){var e,t,n=this,r=n.constructor;return!n.isFinite()||n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+2*Math.max(Math.abs(n.e),n.sd())+6,r.rounding=1,M=!1,n=n.times(n).plus(1).sqrt().plus(n),M=!0,r.precision=e,r.rounding=t,n.ln())},P.inverseHyperbolicTangent=P.atanh=function(){var e,t,n,r,i=this,a=i.constructor;return i.isFinite()?i.e>=0?new a(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(e=a.precision,t=a.rounding,r=i.sd(),Math.max(r,e)<2*-i.e-1?F(new a(i),e,t,!0):(a.precision=n=r-i.e,i=hi(i.plus(1),new a(1).minus(i),n+e,1),a.precision=e+4,a.rounding=1,i=i.ln(),a.precision=e,a.rounding=t,i.times(.5))):new a(NaN)},P.inverseSine=P.asin=function(){var e,t,n,r,i=this,a=i.constructor;return i.isZero()?new a(i):(t=i.abs().cmp(1),n=a.precision,r=a.rounding,t===-1?(a.precision=n+6,a.rounding=1,i=i.div(new a(1).minus(i.times(i)).sqrt().plus(1)).atan(),a.precision=n,a.rounding=r,i.times(2)):t===0?(e=yi(a,n+4,r).times(.5),e.s=i.s,e):new a(NaN))},P.inverseTangent=P.atan=function(){var e,t,n,r,i,a,o,s,c,l=this,u=l.constructor,d=u.precision,f=u.rounding;if(!l.isFinite()){if(!l.s)return new u(NaN);if(d+4<=li)return o=yi(u,d+4,f).times(.5),o.s=l.s,o}else if(l.isZero())return new u(l);else if(l.abs().eq(1)&&d+4<=li)return o=yi(u,d+4,f).times(.25),o.s=l.s,o;for(u.precision=s=d+10,u.rounding=1,n=Math.min(28,s/N+2|0),e=n;e;--e)l=l.div(l.times(l).plus(1).sqrt().plus(1));for(M=!1,t=Math.ceil(s/N),r=1,c=l.times(l),o=new u(l),i=l;e!==-1;)if(i=i.times(c),a=o.minus(i.div(r+=2)),i=i.times(c),o=a.plus(i.div(r+=2)),o.d[t]!==void 0)for(e=t;o.d[e]===a.d[e]&&e--;);return n&&(o=o.times(2<<n-1)),M=!0,F(o,u.precision=d,u.rounding=f,!0)},P.isFinite=function(){return!!this.d},P.isInteger=P.isInt=function(){return!!this.d&&ei(this.e/N)>this.d.length-2},P.isNaN=function(){return!this.s},P.isNegative=P.isNeg=function(){return this.s<0},P.isPositive=P.isPos=function(){return this.s>0},P.isZero=function(){return!!this.d&&this.d[0]===0},P.lessThan=P.lt=function(e){return this.cmp(e)<0},P.lessThanOrEqualTo=P.lte=function(e){return this.cmp(e)<1},P.logarithm=P.log=function(e){var t,n,r,i,a,o,s,c,l=this,u=l.constructor,d=u.precision,f=u.rounding,p=5;if(e==null)e=new u(10),t=!0;else{if(e=new u(e),n=e.d,e.s<0||!n||!n[0]||e.eq(1))return new u(NaN);t=e.eq(10)}if(n=l.d,l.s<0||!n||!n[0]||l.eq(1))return new u(n&&!n[0]?-1/0:l.s==1?n?0:1/0:NaN);if(t)if(n.length>1)a=!0;else{for(i=n[0];i%10==0;)i/=10;a=i!==1}if(M=!1,s=d+p,o=Ei(l,s),r=t?vi(u,s+10):Ei(e,s),c=hi(o,r,s,1),fi(c.d,i=d,f))do if(s+=10,o=Ei(l,s),r=t?vi(u,s+10):Ei(e,s),c=hi(o,r,s,1),!a){+ui(c.d).slice(i+1,i+15)+1==0x5af3107a4000&&(c=F(c,d+1,0));break}while(fi(c.d,i+=10,f));return M=!0,F(c,d,f)},P.minus=P.sub=function(e){var t,n,r,i,a,o,s,c,l,u,d,f,p=this,m=p.constructor;if(e=new m(e),!p.d||!e.d)return!p.s||!e.s?e=new m(NaN):p.d?e.s=-e.s:e=new m(e.d||p.s!==e.s?p:NaN),e;if(p.s!=e.s)return e.s=-e.s,p.plus(e);if(l=p.d,f=e.d,s=m.precision,c=m.rounding,!l[0]||!f[0]){if(f[0])e.s=-e.s;else if(l[0])e=new m(p);else return new m(c===3?-0:0);return M?F(e,s,c):e}if(n=ei(e.e/N),u=ei(p.e/N),l=l.slice(),a=u-n,a){for(d=a<0,d?(t=l,a=-a,o=f.length):(t=f,n=u,o=l.length),r=Math.max(Math.ceil(s/N),o)+2,a>r&&(a=r,t.length=1),t.reverse(),r=a;r--;)t.push(0);t.reverse()}else{for(r=l.length,o=f.length,d=r<o,d&&(o=r),r=0;r<o;r++)if(l[r]!=f[r]){d=l[r]<f[r];break}a=0}for(d&&(t=l,l=f,f=t,e.s=-e.s),o=l.length,r=f.length-o;r>0;--r)l[o++]=0;for(r=f.length;r>a;){if(l[--r]<f[r]){for(i=r;i&&l[--i]===0;)l[i]=oi-1;--l[i],l[r]+=oi}l[r]-=f[r]}for(;l[--o]===0;)l.pop();for(;l[0]===0;l.shift())--n;return l[0]?(e.d=l,e.e=_i(l,n),M?F(e,s,c):e):new m(c===3?-0:0)},P.modulo=P.mod=function(e){var t,n=this,r=n.constructor;return e=new r(e),!n.d||!e.s||e.d&&!e.d[0]?new r(NaN):!e.d||n.d&&!n.d[0]?F(new r(n),r.precision,r.rounding):(M=!1,r.modulo==9?(t=hi(n,e.abs(),0,3,1),t.s*=e.s):t=hi(n,e,0,r.modulo,1),t=t.times(e),M=!0,n.minus(t))},P.naturalExponential=P.exp=function(){return Ti(this)},P.naturalLogarithm=P.ln=function(){return Ei(this)},P.negated=P.neg=function(){var e=new this.constructor(this);return e.s=-e.s,F(e)},P.plus=P.add=function(e){var t,n,r,i,a,o,s,c,l,u,d=this,f=d.constructor;if(e=new f(e),!d.d||!e.d)return!d.s||!e.s?e=new f(NaN):d.d||(e=new f(e.d||d.s===e.s?d:NaN)),e;if(d.s!=e.s)return e.s=-e.s,d.minus(e);if(l=d.d,u=e.d,s=f.precision,c=f.rounding,!l[0]||!u[0])return u[0]||(e=new f(d)),M?F(e,s,c):e;if(a=ei(d.e/N),r=ei(e.e/N),l=l.slice(),i=a-r,i){for(i<0?(n=l,i=-i,o=u.length):(n=u,r=a,o=l.length),a=Math.ceil(s/N),o=a>o?a+1:o+1,i>o&&(i=o,n.length=1),n.reverse();i--;)n.push(0);n.reverse()}for(o=l.length,i=u.length,o-i<0&&(i=o,n=u,u=l,l=n),t=0;i;)t=(l[--i]=l[i]+u[i]+t)/oi|0,l[i]%=oi;for(t&&(l.unshift(t),++r),o=l.length;l[--o]==0;)l.pop();return e.d=l,e.e=_i(l,r),M?F(e,s,c):e},P.precision=P.sd=function(e){var t,n=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Xr+e);return n.d?(t=bi(n.d),e&&n.e+1>t&&(t=n.e+1)):t=NaN,t},P.round=function(){var e=this,t=e.constructor;return F(new t(e),e.e+1,t.rounding)},P.sine=P.sin=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+Math.max(n.e,n.sd())+N,r.rounding=1,n=Ai(r,Ni(r,n)),r.precision=e,r.rounding=t,F(Jr>2?n.neg():n,e,t,!0)):new r(NaN)},P.squareRoot=P.sqrt=function(){var e,t,n,r,i,a,o=this,s=o.d,c=o.e,l=o.s,u=o.constructor;if(l!==1||!s||!s[0])return new u(!l||l<0&&(!s||s[0])?NaN:s?o:1/0);for(M=!1,l=Math.sqrt(+o),l==0||l==1/0?(t=ui(s),(t.length+c)%2==0&&(t+=`0`),l=Math.sqrt(t),c=ei((c+1)/2)-(c<0||c%2),l==1/0?t=`5e`+c:(t=l.toExponential(),t=t.slice(0,t.indexOf(`e`)+1)+c),r=new u(t)):r=new u(l.toString()),n=(c=u.precision)+3;;)if(a=r,r=a.plus(hi(o,a,n+2,1)).times(.5),ui(a.d).slice(0,n)===(t=ui(r.d)).slice(0,n))if(t=t.slice(n-3,n+1),t==`9999`||!i&&t==`4999`){if(!i&&(F(a,c+1,0),a.times(a).eq(o))){r=a;break}n+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)==`5`)&&(F(r,c+1,1),e=!r.times(r).eq(o));break}return M=!0,F(r,c,u.rounding,e)},P.tangent=P.tan=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+10,r.rounding=1,n=n.sin(),n.s=1,n=hi(n,new r(1).minus(n.times(n)).sqrt(),e+10,0),r.precision=e,r.rounding=t,F(Jr==2||Jr==4?n.neg():n,e,t,!0)):new r(NaN)},P.times=P.mul=function(e){var t,n,r,i,a,o,s,c,l,u=this,d=u.constructor,f=u.d,p=(e=new d(e)).d;if(e.s*=u.s,!f||!f[0]||!p||!p[0])return new d(!e.s||f&&!f[0]&&!p||p&&!p[0]&&!f?NaN:!f||!p?e.s/0:e.s*0);for(n=ei(u.e/N)+ei(e.e/N),c=f.length,l=p.length,c<l&&(a=f,f=p,p=a,o=c,c=l,l=o),a=[],o=c+l,r=o;r--;)a.push(0);for(r=l;--r>=0;){for(t=0,i=c+r;i>r;)s=a[i]+p[r]*f[i-r-1]+t,a[i--]=s%oi|0,t=s/oi|0;a[i]=(a[i]+t)%oi|0}for(;!a[--o];)a.pop();return t?++n:a.shift(),e.d=a,e.e=_i(a,n),M?F(e,d.precision,d.rounding):e},P.toBinary=function(e,t){return Pi(this,2,e,t)},P.toDecimalPlaces=P.toDP=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(di(e,0,Hr),t===void 0?t=r.rounding:di(t,0,8),F(n,e+n.e+1,t))},P.toExponential=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=gi(r,!0):(di(e,0,Hr),t===void 0?t=i.rounding:di(t,0,8),r=F(new i(r),e+1,t),n=gi(r,!0,e+1)),r.isNeg()&&!r.isZero()?`-`+n:n},P.toFixed=function(e,t){var n,r,i=this,a=i.constructor;return e===void 0?n=gi(i):(di(e,0,Hr),t===void 0?t=a.rounding:di(t,0,8),r=F(new a(i),e+i.e+1,t),n=gi(r,!1,e+r.e+1)),i.isNeg()&&!i.isZero()?`-`+n:n},P.toFraction=function(e){var t,n,r,i,a,o,s,c,l,u,d,f,p=this,m=p.d,h=p.constructor;if(!m)return new h(p);if(l=n=new h(1),r=c=new h(0),t=new h(r),a=t.e=bi(m)-p.e-1,o=a%N,t.d[0]=ti(10,o<0?N+o:o),e==null)e=a>0?t:l;else{if(s=new h(e),!s.isInt()||s.lt(l))throw Error(Xr+s);e=s.gt(t)?a>0?t:l:s}for(M=!1,s=new h(ui(m)),u=h.precision,h.precision=a=m.length*N*2;d=hi(s,t,0,1,1),i=n.plus(d.times(r)),i.cmp(e)!=1;)n=r,r=i,i=l,l=c.plus(d.times(i)),c=i,i=t,t=s.minus(d.times(i)),s=i;return i=hi(e.minus(n),r,0,1,1),c=c.plus(i.times(l)),n=n.plus(i.times(r)),c.s=l.s=p.s,f=hi(l,r,a,1).minus(p).abs().cmp(hi(c,n,a,1).minus(p).abs())<1?[l,r]:[c,n],h.precision=u,M=!0,f},P.toHexadecimal=P.toHex=function(e,t){return Pi(this,16,e,t)},P.toNearest=function(e,t){var n=this,r=n.constructor;if(n=new r(n),e==null){if(!n.d)return n;e=new r(1),t=r.rounding}else{if(e=new r(e),t===void 0?t=r.rounding:di(t,0,8),!n.d)return e.s?n:e;if(!e.d)return e.s&&(e.s=n.s),e}return e.d[0]?(M=!1,n=hi(n,e,0,t,1).times(e),M=!0,F(n)):(e.s=n.s,n=e),n},P.toNumber=function(){return+this},P.toOctal=function(e,t){return Pi(this,8,e,t)},P.toPower=P.pow=function(e){var t,n,r,i,a,o,s=this,c=s.constructor,l=+(e=new c(e));if(!s.d||!e.d||!s.d[0]||!e.d[0])return new c(ti(+s,l));if(s=new c(s),s.eq(1))return s;if(r=c.precision,a=c.rounding,e.eq(1))return F(s,r,a);if(t=ei(e.e/N),t>=e.d.length-1&&(n=l<0?-l:l)<=si)return i=Si(c,s,n,r),e.s<0?new c(1).div(i):F(i,r,a);if(o=s.s,o<0){if(t<e.d.length-1)return new c(NaN);if(e.d[t]&1||(o=1),s.e==0&&s.d[0]==1&&s.d.length==1)return s.s=o,s}return n=ti(+s,l),t=n==0||!isFinite(n)?ei(l*(Math.log(`0.`+ui(s.d))/Math.LN10+s.e+1)):new c(n+``).e,t>c.maxE+1||t<c.minE-1?new c(t>0?o/0:0):(M=!1,c.rounding=s.s=1,n=Math.min(12,(t+``).length),i=Ti(e.times(Ei(s,r+n)),r),i.d&&(i=F(i,r+5,1),fi(i.d,r,a)&&(t=r+10,i=F(Ti(e.times(Ei(s,t+n)),t),t+5,1),+ui(i.d).slice(r+1,r+15)+1==0x5af3107a4000&&(i=F(i,r+1,0)))),i.s=o,M=!0,c.rounding=a,F(i,r,a))},P.toPrecision=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=gi(r,r.e<=i.toExpNeg||r.e>=i.toExpPos):(di(e,1,Hr),t===void 0?t=i.rounding:di(t,0,8),r=F(new i(r),e,t),n=gi(r,e<=r.e||r.e<=i.toExpNeg,e)),r.isNeg()&&!r.isZero()?`-`+n:n},P.toSignificantDigits=P.toSD=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(di(e,1,Hr),t===void 0?t=r.rounding:di(t,0,8)),F(new r(n),e,t)},P.toString=function(){var e=this,t=e.constructor,n=gi(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?`-`+n:n},P.truncated=P.trunc=function(){return F(new this.constructor(this),this.e+1,1)},P.valueOf=P.toJSON=function(){var e=this,t=e.constructor,n=gi(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?`-`+n:n};function ui(e){var t,n,r,i=e.length-1,a=``,o=e[0];if(i>0){for(a+=o,t=1;t<i;t++)r=e[t]+``,n=N-r.length,n&&(a+=xi(n)),a+=r;o=e[t],r=o+``,n=N-r.length,n&&(a+=xi(n))}else if(o===0)return`0`;for(;o%10==0;)o/=10;return a+o}function di(e,t,n){if(e!==~~e||e<t||e>n)throw Error(Xr+e)}function fi(e,t,n,r){var i,a,o,s;for(a=e[0];a>=10;a/=10)--t;return--t<0?(t+=N,i=0):(i=Math.ceil((t+1)/N),t%=N),a=ti(10,N-t),s=e[i]%a|0,r==null?t<3?(t==0?s=s/100|0:t==1&&(s=s/10|0),o=n<4&&s==99999||n>3&&s==49999||s==5e4||s==0):o=(n<4&&s+1==a||n>3&&s+1==a/2)&&(e[i+1]/a/100|0)==ti(10,t-2)-1||(s==a/2||s==0)&&(e[i+1]/a/100|0)==0:t<4?(t==0?s=s/1e3|0:t==1?s=s/100|0:t==2&&(s=s/10|0),o=(r||n<4)&&s==9999||!r&&n>3&&s==4999):o=((r||n<4)&&s+1==a||!r&&n>3&&s+1==a/2)&&(e[i+1]/a/1e3|0)==ti(10,t-3)-1,o}function pi(e,t,n){for(var r,i=[0],a,o=0,s=e.length;o<s;){for(a=i.length;a--;)i[a]*=t;for(i[0]+=Ur.indexOf(e.charAt(o++)),r=0;r<i.length;r++)i[r]>n-1&&(i[r+1]===void 0&&(i[r+1]=0),i[r+1]+=i[r]/n|0,i[r]%=n)}return i.reverse()}function mi(e,t){var n,r,i;if(t.isZero())return t;r=t.d.length,r<32?(n=Math.ceil(r/3),i=(1/Mi(4,n)).toString()):(n=16,i=`2.3283064365386962890625e-10`),e.precision+=n,t=ji(e,1,t.times(i),new e(1));for(var a=n;a--;){var o=t.times(t);t=o.times(o).minus(o).times(8).plus(1)}return e.precision-=n,t}var hi=(function(){function e(e,t,n){var r,i=0,a=e.length;for(e=e.slice();a--;)r=e[a]*t+i,e[a]=r%n|0,i=r/n|0;return i&&e.unshift(i),e}function t(e,t,n,r){var i,a;if(n!=r)a=n>r?1:-1;else for(i=a=0;i<n;i++)if(e[i]!=t[i]){a=e[i]>t[i]?1:-1;break}return a}function n(e,t,n,r){for(var i=0;n--;)e[n]-=i,i=e[n]<t[n]?1:0,e[n]=i*r+e[n]-t[n];for(;!e[0]&&e.length>1;)e.shift()}return function(r,i,a,o,s,c){var l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,ee,te,E,ne=r.constructor,re=r.s==i.s?1:-1,D=r.d,ie=i.d;if(!D||!D[0]||!ie||!ie[0])return new ne(!r.s||!i.s||(D?ie&&D[0]==ie[0]:!ie)?NaN:D&&D[0]==0||!ie?re*0:re/0);for(c?(p=1,u=r.e-i.e):(c=oi,p=N,u=ei(r.e/p)-ei(i.e/p)),te=ie.length,T=D.length,_=new ne(re),v=_.d=[],d=0;ie[d]==(D[d]||0);d++);if(ie[d]>(D[d]||0)&&u--,a==null?(S=a=ne.precision,o=ne.rounding):S=s?a+(r.e-i.e)+1:a,S<0)v.push(1),m=!0;else{if(S=S/p+2|0,d=0,te==1){for(f=0,ie=ie[0],S++;(d<T||f)&&S--;d++)C=f*c+(D[d]||0),v[d]=C/ie|0,f=C%ie|0;m=f||d<T}else{for(f=c/(ie[0]+1)|0,f>1&&(ie=e(ie,f,c),D=e(D,f,c),te=ie.length,T=D.length),w=te,y=D.slice(0,te),b=y.length;b<te;)y[b++]=0;E=ie.slice(),E.unshift(0),ee=ie[0],ie[1]>=c/2&&++ee;do f=0,l=t(ie,y,te,b),l<0?(x=y[0],te!=b&&(x=x*c+(y[1]||0)),f=x/ee|0,f>1?(f>=c&&(f=c-1),h=e(ie,f,c),g=h.length,b=y.length,l=t(h,y,g,b),l==1&&(f--,n(h,te<g?E:ie,g,c))):(f==0&&(l=f=1),h=ie.slice()),g=h.length,g<b&&h.unshift(0),n(y,h,b,c),l==-1&&(b=y.length,l=t(ie,y,te,b),l<1&&(f++,n(y,te<b?E:ie,b,c))),b=y.length):l===0&&(f++,y=[0]),v[d++]=f,l&&y[0]?y[b++]=D[w]||0:(y=[D[w]],b=1);while((w++<T||y[0]!==void 0)&&S--);m=y[0]!==void 0}v[0]||v.shift()}if(p==1)_.e=u,qr=m;else{for(d=1,f=v[0];f>=10;f/=10)d++;_.e=d+u*p-1,F(_,s?a+_.e+1:a,o,m)}return _}})();function F(e,t,n,r){var i,a,o,s,c,l,u,d,f,p=e.constructor;out:if(t!=null){if(d=e.d,!d)return e;for(i=1,s=d[0];s>=10;s/=10)i++;if(a=t-i,a<0)a+=N,o=t,u=d[f=0],c=u/ti(10,i-o-1)%10|0;else if(f=Math.ceil((a+1)/N),s=d.length,f>=s)if(r){for(;s++<=f;)d.push(0);u=c=0,i=1,a%=N,o=a-N+1}else break out;else{for(u=s=d[f],i=1;s>=10;s/=10)i++;a%=N,o=a-N+i,c=o<0?0:u/ti(10,i-o-1)%10|0}if(r=r||t<0||d[f+1]!==void 0||(o<0?u:u%ti(10,i-o-1)),l=n<4?(c||r)&&(n==0||n==(e.s<0?3:2)):c>5||c==5&&(n==4||r||n==6&&(a>0?o>0?u/ti(10,i-o):0:d[f-1])%10&1||n==(e.s<0?8:7)),t<1||!d[0])return d.length=0,l?(t-=e.e+1,d[0]=ti(10,(N-t%N)%N),e.e=-t||0):d[0]=e.e=0,e;if(a==0?(d.length=f,s=1,f--):(d.length=f+1,s=ti(10,N-a),d[f]=o>0?(u/ti(10,i-o)%ti(10,o)|0)*s:0),l)for(;;)if(f==0){for(a=1,o=d[0];o>=10;o/=10)a++;for(o=d[0]+=s,s=1;o>=10;o/=10)s++;a!=s&&(e.e++,d[0]==oi&&(d[0]=1));break}else{if(d[f]+=s,d[f]!=oi)break;d[f--]=0,s=1}for(a=d.length;d[--a]===0;)d.pop()}return M&&(e.e>p.maxE?(e.d=null,e.e=NaN):e.e<p.minE&&(e.e=0,e.d=[0])),e}function gi(e,t,n){if(!e.isFinite())return Di(e);var r,i=e.e,a=ui(e.d),o=a.length;return t?(n&&(r=n-o)>0?a=a.charAt(0)+`.`+a.slice(1)+xi(r):o>1&&(a=a.charAt(0)+`.`+a.slice(1)),a=a+(e.e<0?`e`:`e+`)+e.e):i<0?(a=`0.`+xi(-i-1)+a,n&&(r=n-o)>0&&(a+=xi(r))):i>=o?(a+=xi(i+1-o),n&&(r=n-i-1)>0&&(a=a+`.`+xi(r))):((r=i+1)<o&&(a=a.slice(0,r)+`.`+a.slice(r)),n&&(r=n-o)>0&&(i+1===o&&(a+=`.`),a+=xi(r))),a}function _i(e,t){var n=e[0];for(t*=N;n>=10;n/=10)t++;return t}function vi(e,t,n){if(t>ci)throw M=!0,n&&(e.precision=n),Error(Zr);return F(new e(Wr),t,1,!0)}function yi(e,t,n){if(t>li)throw Error(Zr);return F(new e(Gr),t,n,!0)}function bi(e){var t=e.length-1,n=t*N+1;if(t=e[t],t){for(;t%10==0;t/=10)n--;for(t=e[0];t>=10;t/=10)n++}return n}function xi(e){for(var t=``;e--;)t+=`0`;return t}function Si(e,t,n,r){var i,a=new e(1),o=Math.ceil(r/N+4);for(M=!1;;){if(n%2&&(a=a.times(t),Fi(a.d,o)&&(i=!0)),n=ei(n/2),n===0){n=a.d.length-1,i&&a.d[n]===0&&++a.d[n];break}t=t.times(t),Fi(t.d,o)}return M=!0,a}function Ci(e){return e.d[e.d.length-1]&1}function wi(e,t,n){for(var r,i,a=new e(t[0]),o=0;++o<t.length;){if(i=new e(t[o]),!i.s){a=i;break}r=a.cmp(i),(r===n||r===0&&a.s===n)&&(a=i)}return a}function Ti(e,t){var n,r,i,a,o,s,c,l=0,u=0,d=0,f=e.constructor,p=f.rounding,m=f.precision;if(!e.d||!e.d[0]||e.e>17)return new f(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:NaN);for(t==null?(M=!1,c=m):c=t,s=new f(.03125);e.e>-2;)e=e.times(s),d+=5;for(r=Math.log(ti(2,d))/Math.LN10*2+5|0,c+=r,n=a=o=new f(1),f.precision=c;;){if(a=F(a.times(e),c,1),n=n.times(++u),s=o.plus(hi(a,n,c,1)),ui(s.d).slice(0,c)===ui(o.d).slice(0,c)){for(i=d;i--;)o=F(o.times(o),c,1);if(t==null)if(l<3&&fi(o.d,c-r,p,l))f.precision=c+=10,n=a=s=new f(1),u=0,l++;else return F(o,f.precision=m,p,M=!0);else return f.precision=m,o}o=s}}function Ei(e,t){var n,r,i,a,o,s,c,l,u,d,f,p=1,m=10,h=e,g=h.d,_=h.constructor,v=_.rounding,y=_.precision;if(h.s<0||!g||!g[0]||!h.e&&g[0]==1&&g.length==1)return new _(g&&!g[0]?-1/0:h.s==1?g?0:h:NaN);if(t==null?(M=!1,u=y):u=t,_.precision=u+=m,n=ui(g),r=n.charAt(0),Math.abs(a=h.e)<0x5543df729c000){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)h=h.times(e),n=ui(h.d),r=n.charAt(0),p++;a=h.e,r>1?(h=new _(`0.`+n),a++):h=new _(r+`.`+n.slice(1))}else return l=vi(_,u+2,y).times(a+``),h=Ei(new _(r+`.`+n.slice(1)),u-m).plus(l),_.precision=y,t==null?F(h,y,v,M=!0):h;for(d=h,c=o=h=hi(h.minus(1),h.plus(1),u,1),f=F(h.times(h),u,1),i=3;;){if(o=F(o.times(f),u,1),l=c.plus(hi(o,new _(i),u,1)),ui(l.d).slice(0,u)===ui(c.d).slice(0,u))if(c=c.times(2),a!==0&&(c=c.plus(vi(_,u+2,y).times(a+``))),c=hi(c,new _(p),u,1),t==null)if(fi(c.d,u-m,v,s))_.precision=u+=m,l=o=h=hi(d.minus(1),d.plus(1),u,1),f=F(h.times(h),u,1),i=s=1;else return F(c,_.precision=y,v,M=!0);else return _.precision=y,c;c=l,i+=2}}function Di(e){return String(e.s*e.s/0)}function Oi(e,t){var n,r,i;for((n=t.indexOf(`.`))>-1&&(t=t.replace(`.`,``)),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;t.charCodeAt(r)===48;r++);for(i=t.length;t.charCodeAt(i-1)===48;--i);if(t=t.slice(r,i),t){if(i-=r,e.e=n=n-r-1,e.d=[],r=(n+1)%N,n<0&&(r+=N),r<i){for(r&&e.d.push(+t.slice(0,r)),i-=N;r<i;)e.d.push(+t.slice(r,r+=N));t=t.slice(r),r=N-t.length}else r-=i;for(;r--;)t+=`0`;e.d.push(+t),M&&(e.e>e.constructor.maxE?(e.d=null,e.e=NaN):e.e<e.constructor.minE&&(e.e=0,e.d=[0]))}else e.e=0,e.d=[0];return e}function ki(e,t){var n,r,i,a,o,s,c,l,u;if(t.indexOf(`_`)>-1){if(t=t.replace(/(\d)_(?=\d)/g,`$1`),ai.test(t))return Oi(e,t)}else if(t===`Infinity`||t===`NaN`)return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(ri.test(t))n=16,t=t.toLowerCase();else if(ni.test(t))n=2;else if(ii.test(t))n=8;else throw Error(Xr+t);for(a=t.search(/p/i),a>0?(c=+t.slice(a+1),t=t.substring(2,a)):t=t.slice(2),a=t.indexOf(`.`),o=a>=0,r=e.constructor,o&&(t=t.replace(`.`,``),s=t.length,a=s-a,i=Si(r,new r(n),a,a*2)),l=pi(t,n,oi),u=l.length-1,a=u;l[a]===0;--a)l.pop();return a<0?new r(e.s*0):(e.e=_i(l,u),e.d=l,M=!1,o&&(e=hi(e,i,s*4)),c&&(e=e.times(Math.abs(c)<54?ti(2,c):I.pow(2,c))),M=!0,e)}function Ai(e,t){var n,r=t.d.length;if(r<3)return t.isZero()?t:ji(e,2,t,t);n=1.4*Math.sqrt(r),n=n>16?16:n|0,t=t.times(1/Mi(5,n)),t=ji(e,2,t,t);for(var i,a=new e(5),o=new e(16),s=new e(20);n--;)i=t.times(t),t=t.times(a.plus(i.times(o.times(i).minus(s))));return t}function ji(e,t,n,r,i){var a,o,s,c,l=1,u=e.precision,d=Math.ceil(u/N);for(M=!1,c=n.times(n),s=new e(r);;){if(o=hi(s.times(c),new e(t++*t++),u,1),s=i?r.plus(o):r.minus(o),r=hi(o.times(c),new e(t++*t++),u,1),o=s.plus(r),o.d[d]!==void 0){for(a=d;o.d[a]===s.d[a]&&a--;);if(a==-1)break}a=s,s=r,r=o,o=a,l++}return M=!0,o.d.length=d+1,o}function Mi(e,t){for(var n=e;--t;)n*=e;return n}function Ni(e,t){var n,r=t.s<0,i=yi(e,e.precision,1),a=i.times(.5);if(t=t.abs(),t.lte(a))return Jr=r?4:1,t;if(n=t.divToInt(i),n.isZero())Jr=r?3:2;else{if(t=t.minus(n.times(i)),t.lte(a))return Jr=Ci(n)?r?2:3:r?4:1,t;Jr=Ci(n)?r?1:4:r?3:2}return t.minus(i).abs()}function Pi(e,t,n,r){var i,a,o,s,c,l,u,d,f,p=e.constructor,m=n!==void 0;if(m?(di(n,1,Hr),r===void 0?r=p.rounding:di(r,0,8)):(n=p.precision,r=p.rounding),!e.isFinite())u=Di(e);else{for(u=gi(e),o=u.indexOf(`.`),m?(i=2,t==16?n=n*4-3:t==8&&(n=n*3-2)):i=t,o>=0&&(u=u.replace(`.`,``),f=new p(1),f.e=u.length-o,f.d=pi(gi(f),10,i),f.e=f.d.length),d=pi(u,10,i),a=c=d.length;d[--c]==0;)d.pop();if(!d[0])u=m?`0p+0`:`0`;else{if(o<0?a--:(e=new p(e),e.d=d,e.e=a,e=hi(e,f,n,r,0,i),d=e.d,a=e.e,l=qr),o=d[n],s=i/2,l=l||d[n+1]!==void 0,l=r<4?(o!==void 0||l)&&(r===0||r===(e.s<0?3:2)):o>s||o===s&&(r===4||l||r===6&&d[n-1]&1||r===(e.s<0?8:7)),d.length=n,l)for(;++d[--n]>i-1;)d[n]=0,n||(++a,d.unshift(1));for(c=d.length;!d[c-1];--c);for(o=0,u=``;o<c;o++)u+=Ur.charAt(d[o]);if(m){if(c>1)if(t==16||t==8){for(o=t==16?4:3,--c;c%o;c++)u+=`0`;for(d=pi(u,i,t),c=d.length;!d[c-1];--c);for(o=1,u=`1.`;o<c;o++)u+=Ur.charAt(d[o])}else u=u.charAt(0)+`.`+u.slice(1);u=u+(a<0?`p`:`p+`)+a}else if(a<0){for(;++a;)u=`0`+u;u=`0.`+u}else if(++a>c)for(a-=c;a--;)u+=`0`;else a<c&&(u=u.slice(0,a)+`.`+u.slice(a))}u=(t==16?`0x`:t==2?`0b`:t==8?`0o`:``)+u}return e.s<0?`-`+u:u}function Fi(e,t){if(e.length>t)return e.length=t,!0}function Ii(e){return new this(e).abs()}function Li(e){return new this(e).acos()}function Ri(e){return new this(e).acosh()}function zi(e,t){return new this(e).plus(t)}function Bi(e){return new this(e).asin()}function Vi(e){return new this(e).asinh()}function Hi(e){return new this(e).atan()}function Ui(e){return new this(e).atanh()}function Wi(e,t){e=new this(e),t=new this(t);var n,r=this.precision,i=this.rounding,a=r+4;return!e.s||!t.s?n=new this(NaN):!e.d&&!t.d?(n=yi(this,a,1).times(t.s>0?.25:.75),n.s=e.s):!t.d||e.isZero()?(n=t.s<0?yi(this,r,i):new this(0),n.s=e.s):!e.d||t.isZero()?(n=yi(this,a,1).times(.5),n.s=e.s):t.s<0?(this.precision=a,this.rounding=1,n=this.atan(hi(e,t,a,1)),t=yi(this,a,1),this.precision=r,this.rounding=i,n=e.s<0?n.minus(t):n.plus(t)):n=this.atan(hi(e,t,a,1)),n}function Gi(e){return new this(e).cbrt()}function Ki(e){return F(e=new this(e),e.e+1,2)}function qi(e,t,n){return new this(e).clamp(t,n)}function Ji(e){if(!e||typeof e!=`object`)throw Error(Yr+`Object expected`);var t,n,r,i=e.defaults===!0,a=[`precision`,1,Hr,`rounding`,0,8,`toExpNeg`,-Vr,0,`toExpPos`,0,Vr,`maxE`,0,Vr,`minE`,-Vr,0,`modulo`,0,9];for(t=0;t<a.length;t+=3)if(n=a[t],i&&(this[n]=Kr[n]),(r=e[n])!==void 0)if(ei(r)===r&&r>=a[t+1]&&r<=a[t+2])this[n]=r;else throw Error(Xr+n+`: `+r);if(n=`crypto`,i&&(this[n]=Kr[n]),(r=e[n])!==void 0)if(r===!0||r===!1||r===0||r===1)if(r)if(typeof crypto<`u`&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[n]=!0;else throw Error(Qr);else this[n]=!1;else throw Error(Xr+n+`: `+r);return this}function Yi(e){return new this(e).cos()}function Xi(e){return new this(e).cosh()}function Zi(e){var t,n,r;function i(e){var t,n,r,a=this;if(!(a instanceof i))return new i(e);if(a.constructor=i,na(e)){a.s=e.s,M?!e.d||e.e>i.maxE?(a.e=NaN,a.d=null):e.e<i.minE?(a.e=0,a.d=[0]):(a.e=e.e,a.d=e.d.slice()):(a.e=e.e,a.d=e.d?e.d.slice():e.d);return}if(r=typeof e,r===`number`){if(e===0){a.s=1/e<0?-1:1,a.e=0,a.d=[0];return}if(e<0?(e=-e,a.s=-1):a.s=1,e===~~e&&e<1e7){for(t=0,n=e;n>=10;n/=10)t++;M?t>i.maxE?(a.e=NaN,a.d=null):t<i.minE?(a.e=0,a.d=[0]):(a.e=t,a.d=[e]):(a.e=t,a.d=[e]);return}if(e*0!=0){e||(a.s=NaN),a.e=NaN,a.d=null;return}return Oi(a,e.toString())}if(r===`string`)return(n=e.charCodeAt(0))===45?(e=e.slice(1),a.s=-1):(n===43&&(e=e.slice(1)),a.s=1),ai.test(e)?Oi(a,e):ki(a,e);if(r===`bigint`)return e<0?(e=-e,a.s=-1):a.s=1,Oi(a,e.toString());throw Error(Xr+e)}if(i.prototype=P,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.EUCLID=9,i.config=i.set=Ji,i.clone=Zi,i.isDecimal=na,i.abs=Ii,i.acos=Li,i.acosh=Ri,i.add=zi,i.asin=Bi,i.asinh=Vi,i.atan=Hi,i.atanh=Ui,i.atan2=Wi,i.cbrt=Gi,i.ceil=Ki,i.clamp=qi,i.cos=Yi,i.cosh=Xi,i.div=Qi,i.exp=$i,i.floor=ea,i.hypot=ta,i.ln=ra,i.log=ia,i.log10=oa,i.log2=aa,i.max=sa,i.min=ca,i.mod=la,i.mul=ua,i.pow=da,i.random=fa,i.round=pa,i.sign=ma,i.sin=ha,i.sinh=ga,i.sqrt=_a,i.sub=va,i.sum=ya,i.tan=ba,i.tanh=xa,i.trunc=Sa,e===void 0&&(e={}),e&&e.defaults!==!0)for(r=[`precision`,`rounding`,`toExpNeg`,`toExpPos`,`maxE`,`minE`,`modulo`,`crypto`],t=0;t<r.length;)e.hasOwnProperty(n=r[t++])||(e[n]=this[n]);return i.config(e),i}function Qi(e,t){return new this(e).div(t)}function $i(e){return new this(e).exp()}function ea(e){return F(e=new this(e),e.e+1,3)}function ta(){var e,t,n=new this(0);for(M=!1,e=0;e<arguments.length;)if(t=new this(arguments[e++]),t.d)n.d&&(n=n.plus(t.times(t)));else{if(t.s)return M=!0,new this(1/0);n=t}return M=!0,n.sqrt()}function na(e){return e instanceof I||e&&e.toStringTag===$r||!1}function ra(e){return new this(e).ln()}function ia(e,t){return new this(e).log(t)}function aa(e){return new this(e).log(2)}function oa(e){return new this(e).log(10)}function sa(){return wi(this,arguments,-1)}function ca(){return wi(this,arguments,1)}function la(e,t){return new this(e).mod(t)}function ua(e,t){return new this(e).mul(t)}function da(e,t){return new this(e).pow(t)}function fa(e){var t,n,r,i,a=0,o=new this(1),s=[];if(e===void 0?e=this.precision:di(e,1,Hr),r=Math.ceil(e/N),!this.crypto)for(;a<r;)s[a++]=Math.random()*1e7|0;else if(crypto.getRandomValues)for(t=crypto.getRandomValues(new Uint32Array(r));a<r;)i=t[a],i>=429e7?t[a]=crypto.getRandomValues(new Uint32Array(1))[0]:s[a++]=i%1e7;else if(crypto.randomBytes){for(t=crypto.randomBytes(r*=4);a<r;)i=t[a]+(t[a+1]<<8)+(t[a+2]<<16)+((t[a+3]&127)<<24),i>=214e7?crypto.randomBytes(4).copy(t,a):(s.push(i%1e7),a+=4);a=r/4}else throw Error(Qr);for(r=s[--a],e%=N,r&&e&&(i=ti(10,N-e),s[a]=(r/i|0)*i);s[a]===0;a--)s.pop();if(a<0)n=0,s=[0];else{for(n=-1;s[0]===0;n-=N)s.shift();for(r=1,i=s[0];i>=10;i/=10)r++;r<N&&(n-=N-r)}return o.e=n,o.d=s,o}function pa(e){return F(e=new this(e),e.e+1,this.rounding)}function ma(e){return e=new this(e),e.d?e.d[0]?e.s:0*e.s:e.s||NaN}function ha(e){return new this(e).sin()}function ga(e){return new this(e).sinh()}function _a(e){return new this(e).sqrt()}function va(e,t){return new this(e).sub(t)}function ya(){var e=0,t=arguments,n=new this(t[e]);for(M=!1;n.s&&++e<t.length;)n=n.plus(t[e]);return M=!0,F(n,this.precision,this.rounding)}function ba(e){return new this(e).tan()}function xa(e){return new this(e).tanh()}function Sa(e){return F(e=new this(e),e.e+1,1)}P[Symbol.for(`nodejs.util.inspect.custom`)]=P.toString,P[Symbol.toStringTag]=`Decimal`;var I=P.constructor=Zi(Kr);Wr=new I(Wr),Gr=new I(Gr);function Ca(e,t){let n=e+t;return Number.isSafeInteger(n)?n:new I(e).add(t).toNumber()}function wa(e,t){let n=e-t;return Number.isSafeInteger(n)?n:new I(e).sub(t).toNumber()}function Ta(e,t){let n=e*t;return Number.isSafeInteger(n)?n:new I(e).mul(t).toNumber()}function Ea(e,t){let n=e/t;return Number.isSafeInteger(n)?n:new I(e).div(t).toNumber()}function Da(e,t){let n=10**Math.trunc(t),r=Aa(e,n);return Math.round(Ta(e,n)+r)/n}function Oa(e,t){let n=10**Math.trunc(t),r=Aa(e,n);return Math.floor(Ta(e,n)+r)/n}function ka(e,t){let n=10**Math.trunc(t),r=Aa(e,n);return Math.ceil(Ta(e,n)-r)/n}function Aa(e,t){return 2**-52*Math.max(1,Math.abs(Ta(e,t)))}function ja(e,t){return e-t*Math.floor(e/t)}function Ma(e,t){return e**t}function Na(e){return Math.sqrt(e)}function Pa(e,t){return e===t}function Fa(e,t){return e>t}function Ia(e,t){return e>=t}function La(e,t){return e<t}function Ra(e,t){return e<=t}function za(e,t=15){return Math.floor(Math.abs(e)).toString().length>=t?e:Number.parseFloat(e.toPrecision(t))}function Ba(e,t,n=2**-52){return Math.abs(e-t)<n}function Va(e,t=12,n=1e-10){let r=za(e,t);return Ba(e,r,n)?r:za(e)}function Ha(e){return e-Math.trunc(e)}var Ua=class e extends ee{static create(){return this._instance=this._instance||new e(0),this._instance}isNull(){return!0}plus(e){return R.create(0).plus(e)}minus(e){return R.create(0).minus(e)}multiply(e){return R.create(0).multiply(e)}divided(e){return R.create(0).divided(e)}mod(e){return R.create(0).mod(e)}compare(e,t){return e.isString()?z.create(``).compare(e,t):e.isBoolean()?L.create(!1).compare(e,t):R.create(0).compare(e,t)}concatenateFront(e){return e.isArray()?e.concatenateBack(z.create(``)):z.create(this.concatenate(e.getValue(),s.FRONT))}concatenateBack(e){return e.isArray()?e.concatenateFront(z.create(``)):z.create(this.concatenate(e.getValue(),s.BACK))}plusBy(e){return R.create(0).plusBy(e)}minusBy(e){return R.create(0).minusBy(e)}multiplyBy(e){return R.create(0).multiplyBy(e)}dividedBy(e){return R.create(0).dividedBy(e)}compareBy(e,t){return typeof e==`string`?z.create(``).compareBy(e,t):typeof e==`boolean`?L.create(!1).compareBy(e,t):R.create(0).compareBy(e,t)}pow(e){return R.create(0).pow(e)}sqrt(){return R.create(0).sqrt()}cbrt(){return R.create(0).cbrt()}cos(){return R.create(0).cos()}cosh(){return R.create(0).cosh()}acos(){return R.create(0).acos()}acosh(){return R.create(0).acosh()}sin(){return R.create(0).sin()}sinh(){return R.create(0).sinh()}asin(){return R.create(0).asin()}asinh(){return R.create(0).asinh()}tan(){return R.create(0).tan()}tanh(){return R.create(0).tanh()}atan(){return R.create(0).atan()}atan2(e){return R.create(0).atan2(e)}atanh(){return R.create(0).atanh()}log(){return E.create(p.NUM)}log10(){return E.create(p.NUM)}exp(){return R.create(0).exp()}abs(){return R.create(0).abs()}round(e){return R.create(0).round(e)}floor(e){return R.create(0).floor(e)}ceil(e){return R.create(0).ceil(e)}convertToNumberObjectValue(){return R.create(0)}convertToBooleanObjectValue(){return L.create(!1)}};d(Ua,`_instance`,void 0);var L=class e extends ee{static create(t){return t?(this._instanceTrue=this._instanceTrue||new e(!0),this._instanceTrue):(this._instanceFalse=this._instanceFalse||new e(!1),this._instanceFalse)}constructor(e){super(e),d(this,`_value`,!1),this._value=e}getValue(){return this._value}isBoolean(){return!0}getNegative(){let e=this.getValue(),t=0;return e&&(t=1),R.create(-t)}getReciprocal(){return this.getValue()?R.create(1):E.create(p.DIV_BY_ZERO)}plus(e){return this._convertToNumber().plus(e)}minus(e){return this._convertToNumber().minus(e)}multiply(e){return this._convertToNumber().multiply(e)}divided(e){return this._convertToNumber().divided(e)}mod(e){return this._convertToNumber().mod(e)}compare(e,t){return e.isArray()?e.compare(this,Br(t)):e.isNull()?this._convertToNumber().compare(e,t):this.compareBy(e.getValue(),t)}compareBy(t,n){let r=!1;if(typeof t==`string`||typeof t==`number`)r=this._compareString(n);else if(typeof t==`boolean`){let e=R.create(t?1:0);return this._convertToNumber().compare(e,n)}return e.create(r)}_compareString(e){switch(e){case v.GREATER_THAN:case v.GREATER_THAN_OR_EQUAL:return!0;case v.EQUALS:case v.LESS_THAN:case v.LESS_THAN_OR_EQUAL:case v.NOT_EQUAL:return!1}}concatenateFront(e){return this._convertToNumber().concatenateFront(e)}concatenateBack(e){return this._convertToNumber().concatenateBack(e)}_convertToNumber(){let e=this.getValue(),t=0;return e&&(t=1),R.create(t)}pow(e){return this._convertToNumber().pow(e)}sqrt(){return this._convertToNumber().sqrt()}cbrt(){return this._convertToNumber().cbrt()}cos(){return this._convertToNumber().cos()}cosh(){return this._convertToNumber().cosh()}acos(){return this._convertToNumber().acos()}acosh(){return this._convertToNumber().acosh()}sin(){return this._convertToNumber().sin()}sinh(){return this._convertToNumber().sinh()}asin(){return this._convertToNumber().asin()}asinh(){return this._convertToNumber().asinh()}tan(){return this._convertToNumber().tan()}tanh(){return this._convertToNumber().tanh()}atan(){return this._convertToNumber().atan()}atan2(e){return this._convertToNumber().atan2(e)}atanh(){return this._convertToNumber().atanh()}log(){return this._convertToNumber().log()}log10(){return this._convertToNumber().log10()}exp(){return this._convertToNumber().exp()}abs(){return this._convertToNumber().abs()}round(e){return this._convertToNumber().round(e)}floor(e){return this._convertToNumber().floor(e)}ceil(e){return this._convertToNumber().ceil(e)}convertToNumberObjectValue(){return qa(this.getValue())}convertToBooleanObjectValue(){return this}};d(L,`_instanceTrue`,void 0),d(L,`_instanceFalse`,void 0);var R=class e extends ee{static create(t,n=``){let r=new e(t);return n&&r.setPattern(n),r}constructor(e){super(e),d(this,`_value`,0),this._value=Number(e)}getValue(){return this._value}setValue(e){this._value=e}isNumber(){return!0}getNegative(){return e.create(0).minus(this)}getReciprocal(){return e.create(1).divided(this)}plus(e){if(e.isArray())return e.plus(this);let t=e;e.isNumber()||(t=e.convertToNumberObjectValue());let n=this.plusBy(t.getValue());return n.isError(),n}equalZero(){return this._value===0}minus(e){if(e.isArray()){let t=e.getNegative();return t.isError()?t:t.plus(this)}let t=e;e.isNumber()||(t=e.convertToNumberObjectValue());let n=this.minusBy(t.getValue());return n.isError(),n}multiply(e){if(e.isArray())return e.multiply(this);let t=e;e.isNumber()||(t=e.convertToNumberObjectValue());let n=this.multiplyBy(t.getValue());return n.isError(),n}divided(e){if(e.isArray()){let t=e.getReciprocal();return t.isError()?t:t.multiply(this)}let t=e;e.isNumber()||(t=e.convertToNumberObjectValue());let n=this.dividedBy(t.getValue());return n.isError(),n}mod(t){if(t.isArray())return t.modInverse(this);let n=this.getValue(),r=t.getValue();if(t.isNull())return E.create(p.DIV_BY_ZERO);if(typeof r==`string`)return E.create(p.VALUE);if(typeof r==`number`){if(r===0)return E.create(p.DIV_BY_ZERO);if(!Number.isFinite(n)||!Number.isFinite(r)||Math.abs(r)*11259e8<=Math.abs(n))return E.create(p.NUM);let t=ja(n,r);return Number.isFinite(t)?e.create(t):E.create(p.NUM)}if(typeof r==`boolean`){let t=r?1:0;return t===0?E.create(p.DIV_BY_ZERO):e.create(ja(n,t))}return this}concatenateFront(e){return e.isArray()?e.concatenateBack(this):z.create(this.concatenate(e.getValue(),s.FRONT))}concatenateBack(e){return e.isArray()?e.concatenateFront(this):z.create(this.concatenate(e.getValue(),s.BACK))}isDateFormat(){let e=this.getPattern();return t.numfmt.isDateFormat(e)}compare(e,t){if(e.isArray())return e.compare(this,Br(t));let n=!1;return e.isDateFormat()&&this.isDateFormat()&&(n=!0),this.compareBy(e.getValue(),t,n)}plusBy(t){if(typeof t==`string`&&t.trim()===``)return E.create(p.VALUE);let n=+this.getValue(),r=+t;if(Number.isNaN(n)||Number.isNaN(r))return E.create(p.VALUE);if(!Number.isFinite(n)||!Number.isFinite(r))return E.create(p.NUM);let i=Ca(n,r);return Number.isFinite(i)?e.create(i):E.create(p.NUM)}minusBy(t){if(typeof t==`string`&&t.trim()===``)return E.create(p.VALUE);let n=+this.getValue(),r=+t;if(Number.isNaN(n)||Number.isNaN(r))return E.create(p.VALUE);if(!Number.isFinite(n)||!Number.isFinite(r))return E.create(p.NUM);let i=wa(n,r);return Number.isFinite(i)?e.create(i):E.create(p.NUM)}multiplyBy(t){if(typeof t==`string`&&t.trim()===``)return E.create(p.VALUE);let n=+this.getValue(),r=+t;if(Number.isNaN(n)||Number.isNaN(r))return E.create(p.VALUE);if(!Number.isFinite(n)||!Number.isFinite(r))return E.create(p.NUM);let i=Ta(n,r);return Number.isFinite(i)?e.create(i):E.create(p.NUM)}dividedBy(t){if(typeof t==`string`&&t.trim()===``)return E.create(p.VALUE);let n=+this.getValue(),r=+t;if(Number.isNaN(n)||Number.isNaN(r))return E.create(p.VALUE);if(!Number.isFinite(n)||!Number.isFinite(r))return E.create(p.NUM);if(r===0)return E.create(p.DIV_BY_ZERO);let i=Ea(n,r);return Number.isFinite(i)?e.create(i):E.create(p.NUM)}compareBy(e,t,n=!1){let r=this.getValue(),i=!1,a=r,o=e;return n&&(a=Math.round(r*1e8)/1e8,o=Math.round(e*1e8)/1e8),typeof o==`string`?i=this._compareString(t):typeof o==`number`?i=this._compareNumber(a,o,t):typeof o==`boolean`&&(i=this._compareBoolean(t)),L.create(i)}_compareString(e){switch(e){case v.EQUALS:case v.GREATER_THAN:case v.GREATER_THAN_OR_EQUAL:return!1;case v.LESS_THAN:case v.LESS_THAN_OR_EQUAL:case v.NOT_EQUAL:return!0}}_compareNumber(e,t,n){return!Number.isFinite(e)||!Number.isFinite(t)?this._compareInfinity(e,t,n):this._compareFiniteNumber(e,t,n)}_compareFiniteNumber(e,t,n){switch(n){case v.EQUALS:return Pa(e,t);case v.GREATER_THAN:return Fa(e,t);case v.GREATER_THAN_OR_EQUAL:return Ia(e,t);case v.LESS_THAN:return La(e,t);case v.LESS_THAN_OR_EQUAL:return Ra(e,t);case v.NOT_EQUAL:return!Pa(e,t)}}_compareBoolean(e){switch(e){case v.EQUALS:case v.GREATER_THAN:case v.GREATER_THAN_OR_EQUAL:return!1;case v.LESS_THAN:case v.LESS_THAN_OR_EQUAL:case v.NOT_EQUAL:return!0}}pow(t){if(t.isArray())return t.powInverse(this);if(this.isError())return this;let n=this.getValue(),r=t;if(t.isString()&&(r=t.convertToNumberObjectValue()),r.isError())return r;let i=+r.getValue();if(Number.isNaN(i))return E.create(p.VALUE);if(!Number.isFinite(n)||!Number.isFinite(i))return E.create(p.NUM);if(n===0)return i<0?E.create(p.DIV_BY_ZERO):i===0?E.create(p.NUM):e.create(0);let a=Ma(n,i);return Number.isFinite(a)?e.create(a):E.create(p.NUM)}sqrt(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Na(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}cbrt(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.cbrt(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}cos(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.cos(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}cosh(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.cosh(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}acos(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.acos(t);return Number.isNaN(n)?E.create(p.NUM):e.create(n)}acosh(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.acosh(t);return Number.isNaN(n)?E.create(p.NUM):e.create(n)}sin(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.sin(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}sinh(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.sinh(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}asin(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.asin(t);return Number.isNaN(n)?E.create(p.NUM):e.create(n)}asinh(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.asinh(t);return Number.isNaN(n)?E.create(p.NUM):e.create(n)}tan(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.tan(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}tanh(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.tanh(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}atan(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.atan(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}atan2(t){if(t.isArray())return t.atan2Inverse(this);let n=this.getValue(),r=t.getValue();if(typeof r==`string`)return E.create(p.VALUE);if(typeof r==`number`){if(!Number.isFinite(n)||!Number.isFinite(r))return E.create(p.NUM);if(n===0&&r===0)return E.create(p.DIV_BY_ZERO);let t=Math.atan2(n,r);return Number.isFinite(t)?e.create(t):E.create(p.NUM)}return typeof r==`boolean`?e.create(Math.atan2(n,r?1:0)):this}atanh(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.atanh(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}log(){let t=this.getValue();if(typeof t==`number`&&t<=0||!Number.isFinite(t))return E.create(p.NUM);let n=Math.log(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}log10(){let t=this.getValue();if(typeof t==`number`&&t<=0||!Number.isFinite(t))return E.create(p.NUM);let n=Math.log10(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}exp(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.exp(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}abs(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.abs(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}round(t){if(t.isArray())return t.roundInverse(this);let n=this.getValue(),r=t.getValue();if(typeof r==`string`)return E.create(p.VALUE);if(typeof r==`number`){if(!Number.isFinite(n)||!Number.isFinite(r))return E.create(p.NUM);let t=n<0?-Da(Math.abs(n),r):Da(n,r);return Number.isFinite(t)?e.create(t):E.create(p.NUM)}return typeof r==`boolean`?e.create(Da(n,r?1:0)):this}floor(t){if(t.isArray())return t.floorInverse(this);let n=this.getValue(),r=t.getValue();if(typeof r==`string`)return E.create(p.VALUE);if(typeof r==`number`){if(!Number.isFinite(n)||!Number.isFinite(r))return E.create(p.NUM);let t=n<0?-Oa(Math.abs(n),r):Oa(n,r);return Number.isFinite(t)?e.create(t):E.create(p.NUM)}return typeof r==`boolean`?e.create(Oa(n,r?1:0)):this}ceil(t){if(t.isArray())return t.ceilInverse(this);let n=this.getValue(),r=t.getValue();if(typeof r==`string`)return E.create(p.VALUE);if(typeof r==`number`){if(!Number.isFinite(n)||!Number.isFinite(r))return E.create(p.NUM);let t=n<0?-ka(Math.abs(n),r):ka(n,r);return Number.isFinite(t)?e.create(t):E.create(p.NUM)}return typeof r==`boolean`?e.create(ka(n,r?1:0)):this}convertToNumberObjectValue(){return this}convertToBooleanObjectValue(){return Ga(!0)}_compareInfinity(e,t,n){let r=!1;switch(n){case v.EQUALS:r=e===t;break;case v.GREATER_THAN:r=e>t;break;case v.GREATER_THAN_OR_EQUAL:r=e>=t;break;case v.LESS_THAN:r=e<t;break;case v.LESS_THAN_OR_EQUAL:r=e<=t;break;case v.NOT_EQUAL:r=e!==t;break}return r}};let Wa=new f(1e5);var z=class e extends ee{static create(t,n){let r=Wa.get(t);if(r&&n&&this.checkCacheByOptions(r,n))return r;let i=new e(t);if(n!=null&&n.isHyperlink){var a;i._isHyperlink=n.isHyperlink,i._hyperlinkUrl=(a=n.hyperlinkUrl)==null?``:a}return n!=null&&n.isImage&&(i._isImage=n.isImage,i._imageInfo=n.imageInfo),Wa.set(t,i),i}static checkCacheByOptions(e,n){return!(e.isHyperlink()!==n.isHyperlink||e.getHyperlinkUrl()!==n.hyperlinkUrl||e.isImage()!==n.isImage||!t.Tools.diffValue(e.getImageInfo(),n.imageInfo))}constructor(e){super(e),d(this,`_value`,void 0),d(this,`_isHyperlink`,!1),d(this,`_hyperlinkUrl`,``),d(this,`_isImage`,!1),d(this,`_imageInfo`,void 0),this._value=e}getValue(){return this._value}isString(){return!0}isHyperlink(){return this._isHyperlink}getHyperlinkUrl(){return this._hyperlinkUrl}isImage(){return this._isImage}getImageInfo(){return this._imageInfo}concatenateFront(t){return t.isArray()?t.concatenateBack(this):e.create(this.concatenate(t.getValue(),s.FRONT))}concatenateBack(t){return t.isArray()?t.concatenateFront(this):e.create(this.concatenate(t.getValue(),s.BACK))}plus(e){return this.convertToNumberObjectValue().plus(e)}minus(e){return this.convertToNumberObjectValue().minus(e)}multiply(e){return this.convertToNumberObjectValue().multiply(e)}divided(e){return this.convertToNumberObjectValue().divided(e)}compare(e,t,n){return e.isArray()?e.compare(this,Br(t),n):this.compareBy(e.getValue(),t,n)}compareBy(e,t,n=!1){let r=this.getValue(),i=!1;if(typeof e==`string`){let a=e;if(n||(r=r.toLocaleLowerCase(),a=a.toLocaleLowerCase()),xr(a))return this._checkWildcard(a,t);i=this._compareString(r,a,t)}else typeof e==`number`?i=this._compareNumber(t):typeof e==`boolean`&&(i=this._compareBoolean(t));return L.create(i)}_compareString(e,t,n){switch(n){case v.EQUALS:return e===t;case v.GREATER_THAN:return e>t;case v.GREATER_THAN_OR_EQUAL:return e>=t;case v.LESS_THAN:return e<t;case v.LESS_THAN_OR_EQUAL:return e<=t;case v.NOT_EQUAL:return e!==t}}_compareNumber(e){switch(e){case v.NOT_EQUAL:case v.GREATER_THAN:case v.GREATER_THAN_OR_EQUAL:return!0;case v.EQUALS:case v.LESS_THAN:case v.LESS_THAN_OR_EQUAL:return!1}}_compareBoolean(e){switch(e){case v.EQUALS:case v.GREATER_THAN:case v.GREATER_THAN_OR_EQUAL:return!1;case v.LESS_THAN:case v.LESS_THAN_OR_EQUAL:case v.NOT_EQUAL:return!0}}convertToNumberObjectValue(){let e=this.getValue(),n=(0,t.getNumfmtParseValueFilter)(e);return n&&n.z?qa(n.v,n.z):qa(e)}convertToBooleanObjectValue(){return L.create(!0)}_checkWildcard(e,t){let n=wr(this.getValue().toLocaleLowerCase(),e,t);return L.create(n)}};function Ga(e){if(typeof e==`boolean`)return L.create(e);let t=!1;if(typeof e==`string`){let n=e.toLocaleUpperCase();n===i.TRUE?t=!0:n===i.FALSE&&(t=!1)}else t=e===1;return L.create(t)}function Ka(e){let t=e.toString();return t.charAt(0)===`"`&&t.charAt(t.length-1)===`"`&&(t=t.slice(1,-1),t=t.replace(/""/g,`"`)),z.create(t)}function qa(e,n=``){if(typeof e==`boolean`){let t=0;return e&&(t=1),R.create(t,n)}else if(typeof e==`number`)return Number.isFinite(e)?R.create(e,n):E.create(p.NUM);else if((0,t.isRealNum)(e))return R.create(Number(e),n);return E.create(p.VALUE)}var Ja=function(e){return e[e.MINUS=0]=`MINUS`,e[e.PLUS=1]=`PLUS`,e[e.MULTIPLY=2]=`MULTIPLY`,e[e.DIVIDED=3]=`DIVIDED`,e[e.MOD=4]=`MOD`,e[e.COMPARE=5]=`COMPARE`,e[e.CONCATENATE_FRONT=6]=`CONCATENATE_FRONT`,e[e.CONCATENATE_BACK=7]=`CONCATENATE_BACK`,e[e.POW=8]=`POW`,e[e.ROUND=9]=`ROUND`,e[e.FLOOR=10]=`FLOOR`,e[e.CEIL=11]=`CEIL`,e[e.ATAN2=12]=`ATAN2`,e}(Ja||{}),Ya=function(e){return e[e.PRODUCT=0]=`PRODUCT`,e[e.ROW=1]=`ROW`,e[e.COLUMN=2]=`COLUMN`,e[e.SINGLE=3]=`SINGLE`,e}(Ya||{});function Xa(e){return``}function Za(e=[],t=!1){let n=[];for(let r=0;r<e.length;r++){let i=e[r];n[r]==null&&(n[r]=[]);for(let e=0;e<i.length;e++){let a=i[e];n[r][e]=$a.create(a,t)}}return n}function Qa(e=[]){let t=[];for(let n=0;n<e.length;n++){let r=e[n];t[n]==null&&(t[n]=[]);for(let e=0;e<r.length;e++){let i=r[e];i==null?t[n][e]=null:i.isError()?t[n][e]=i.getErrorType():t[n][e]=i.getValue()}}return t}var B=class e extends ee{static create(t){return new e(t)}static createByArray(t){return new e({calculateValueList:Za(t),rowCount:t.length,columnCount:t[0].length||0,unitId:``,sheetId:``,row:-1,column:-1})}constructor(e){super(typeof e==`string`?e:Xa(e)),d(this,`_values`,[]),d(this,`_rowCount`,-1),d(this,`_columnCount`,-1),d(this,`_unitId`,``),d(this,`_sheetId`,``),d(this,`_currentRow`,-1),d(this,`_currentColumn`,-1),d(this,`_sliceCache`,new Map),d(this,`_flattenCache`,void 0),d(this,`_defaultValue`,null),d(this,`_flattenPosition`,void 0),this._values=this._formatValue(e)}dispose(){this._values=[],this._defaultValue=null,this._flattenPosition=null,this._clearCache()}clone(){return this.map(e=>e)}getRowCount(){return this._rowCount}setRowCount(e){this._rowCount=e}getColumnCount(){return this._columnCount}setColumnCount(e){this._columnCount=e}setCurrent(e,t){this._currentRow=e,this._currentColumn=t}setUnitId(e){this._unitId=e}getUnitId(){return this._unitId}setSheetId(e){this._sheetId=e}getSheetId(){return this._sheetId}getCurrentRow(){return this._currentRow}getCurrentColumn(){return this._currentColumn}getArrayValue(){return this._values}setArrayValue(e){this._clearCache(),this._values=e}isArray(){return!0}setDefaultValue(e){this._defaultValue=e}get(e,t){var n;return((n=this._values[e])==null?void 0:n[t])||this._defaultValue}getRealValue(e,t){let n=this._values[e];if(n==null)return null;let r=n[t];return r==null?null:r}getValueOrDefault(e,t){return this.get(e,t)||this._defaultValue}set(e,t,n){if(e>=this._rowCount||t>=this._columnCount){console.error(`Exceeding array bounds.`);return}this._clearCache(),this._values[e][t]=n}getRangePosition(){let e=this.getRowCount(),t=this.getColumnCount();return{startRow:0,endRow:e-1,startColumn:0,endColumn:t-1}}iterator(e){let{startRow:t,endRow:n,startColumn:r,endColumn:i}=this.getRangePosition(),a=this.getArrayValue();for(let s=t;s<=n;s++)for(let t=r;t<=i;t++){var o;if(e(((o=a[s])==null?void 0:o[t])||this._defaultValue,s,t)===!1)return}}iteratorReverse(e){let{startRow:t,endRow:n,startColumn:r,endColumn:i}=this.getRangePosition(),a=this.getArrayValue();for(let s=n;s>=t;s--)for(let t=i;t>=r;t--){var o;if(e(((o=a[s])==null?void 0:o[t])||this._defaultValue,s,t)===!1)return}}getLastTruePosition(){let e;return this.iteratorReverse((t,n,r)=>{if(t!=null&&t.isBoolean()&&t.getValue()===!0)return e={row:n,column:r},!1}),e}getFirstTruePosition(){let e;return this.iterator((t,n,r)=>{if(t!=null&&t.isBoolean()&&t.getValue()===!0)return e={row:n,column:r},!1}),e}getFirstCell(){let{startRow:e,startColumn:t}=this.getRangePosition();return this.get(e,t)||this._defaultValue||Ua.create()}getLastCell(){let{endRow:e,endColumn:t}=this.getRangePosition();return this.get(e,t)||this._defaultValue||Ua.create()}pick(e){let t=this.pickRaw(e);return this._createNewArray(t,1,t[0].length)}pickRaw(e){let t=e.getRowCount(),n=e.getColumnCount();if(t!==this._rowCount||n!==this._columnCount)return[[Ua.create()]];let r=[];r[0]=[];for(let i=0;i<t;i++)for(let t=0;t<n;t++){let n=e.get(i,t);if(!(n==null||n.isError())&&n.getValue()===!0){let e=this.get(i,t);r[0].push(e)}}return r}flatten(){if(this._flattenCache!=null)return this._flattenCache;let e=[];e[0]=[];for(let t=0;t<this._rowCount;t++)for(let n=0;n<this._columnCount;n++){let r=this.get(t,n);e[0].push(r)}let t=this._createNewArray(e,1,e[0].length);return t.setDefaultValue(this._defaultValue),this._flattenCache=t,t}flattenPosition(){if(this._flattenPosition!=null)return this._flattenPosition;let e=[],t=[],n=[],r=[],i=0;for(let a=0;a<this._rowCount;a++)for(let o=0;o<this._columnCount;o++){let s=this.get(a,o);if(s==null||s.isError()||s.isNull()){i++;continue}s.isString()?(e.push(s),n.push(i++)):(t.push(s),r.push(i++))}let a={stringArray:e,numberArray:t,stringPosition:n,numberPosition:r};return this._flattenPosition=a,a}slice(e,t){let n=0,r=this._rowCount,i=1,a=0,o=this._columnCount,s=1;if(e!=null&&(n=e[0]||0,r=e[1]||this._rowCount,i=e[2]||1),t!=null&&(a=t[0]||0,o=t[1]||this._columnCount,s=t[2]||1),n>=this._rowCount||a>=this._columnCount)return;let c=`${n}_${r}_${i}_${a}_${o}_${s}`,l=this._sliceCache.get(c);if(l!=null)return l;let u=[],d=this._values,f=0,p=0;for(let e=n;e<r;e+=i){p=0,u[f]==null&&(u[f]=[]);for(let t=a;t<o;t+=s){if(!d[e])return;let n=d[e][t]||this._defaultValue;n==null&&(n=Ua.create()),u[f][p]=n,p++}f++}if(u.length===0||u[0].length===0)return;let m=i>1?-1:n+this._currentRow,h=s>1?-1:a+this._currentColumn,g=this._createNewArray(u,u.length,u[0].length,m,h);return g.setDefaultValue(this._defaultValue),this._sliceCache.set(c,g),g}sortByRow(e){let t=this._transposeArray(this._values);t.sort(this._sort(e)),this._clearCache(),this._values=this._transposeArray(t)}sortByColumn(e){this._clearCache(),this._values.sort(this._sort(e))}transpose(){let e=this._transposeArray(this._values),t=this._rowCount,n=this._columnCount,r=this._createNewArray(e,n,t);return r.setDefaultValue(this._defaultValue),r}orderSearch(e,t=yr.MIN,n=!1,r=!1){let i,a,o,s,c=(n,c,l)=>{if(n==null||n.isNull())return!0;let u;if(u=r===!0?n.compare(e,v.EQUALS):n.isEqual(e),(u==null?void 0:u.getValue())===!0)return i=n,o={row:c,column:l},!1;t===yr.MAX?n.isGreaterThan(e).getValue()===!0&&(a==null||n.minus(e).abs().isLessThanOrEqual(a.minus(e).abs()).getValue()===!0)&&(a=n,s={row:c,column:l}):t===yr.MIN&&n.isLessThan(e).getValue()===!0&&(a==null||n.minus(e).abs().isLessThanOrEqual(a.minus(e).abs()).getValue()===!0)&&(a=n,s={row:c,column:l})};if(n?this.iteratorReverse((e,t,n)=>c(e,t,n)):this.iterator((e,t,n)=>c(e,t,n)),i!=null)return o;if(a!=null)return s}binarySearch(e,t=vr.MIN,n=yr.MIN){if(e.isError())return;let{stringArray:r,stringPosition:i,numberArray:a,numberPosition:o}=this.flattenPosition();return e.isString()?this._binarySearch(e,r,i,t,n):this._binarySearch(e,a,o,t,n)}_binarySearch(e,t,n,r=vr.MIN,i=yr.MIN){let a=br(),o=Number(e.getValue()),s=!Number.isNaN(o),c=0,l=t.length-1,u=-1,d=-1,f=-1;for(;c<=l;){let n=Math.floor((c+l)/2),i=t[n],p;if(i.isNull())p=r===vr.MIN?1:-1;else{let t=i.getValue();if(s){let e=Number(t);p=Number.isNaN(e)?1:Math.sign(e-o)}else p=a(t.toString().toLocaleLowerCase(),e.getValue().toString().toLocaleLowerCase())}if(r===vr.MAX&&(p=-p),p===0){u=n;break}p<0?(d=n,c=n+1):(f=n,l=n-1)}if(i===yr.NORMAL)return u===-1?void 0:n[u];if(i===yr.MIN)return u===-1?r===vr.MIN?n[d]:n[f]:n[u];if(i===yr.MAX)return u===-1?r===vr.MIN?n[f]:n[d]:n[u]}sum(){let e=R.create(0);return this.iterator(t=>{if(t==null||t.isString()||t.isBoolean()||t.isNull())return!0;if(t.isError())return e=t,!1;e=e.plus(t)}),e}max(){let e=R.create(-1/0);return this.iterator(t=>{if(t==null)return!0;if(t.isError())return e=t,!1;if(t.isString()||t.isNull()||t.isBoolean())return!0;e.isLessThan(t).getValue()&&(e=t)}),e}min(){let e=R.create(1/0);return this.iterator(t=>{if(t==null)return!0;if(t.isError())return e=t,!1;if(t.isString()||t.isNull()||t.isBoolean())return!0;e.isGreaterThan(t).getValue()&&(e=t)}),e}count(){let e=R.create(0);return this.iterator(t=>{if(t==null||t.isError()||t.isString()||t.isNull()||t.isBoolean())return!0;e=e.plusBy(1)}),e}countA(){let e=R.create(0);return this.iterator(t=>{if(t==null||t.isNull())return!0;e=e.plusBy(1)}),e}countBlank(){let e=R.create(0);return this.iterator(t=>{(t==null||t.isNull()||t.getValue()===``)&&(e=e.plusBy(1))}),e}getNegative(){return e.create(`{0}`).minus(this)}getReciprocal(){return e.create(`{1}`).divided(this)}plus(e){return this._batchOperator(e,Ja.PLUS)}minus(e){return this._batchOperator(e,Ja.MINUS)}multiply(e){return this._batchOperator(e,Ja.MULTIPLY)}divided(e){return this._batchOperator(e,Ja.DIVIDED)}mod(e){return this._batchOperator(e,Ja.MOD)}modInverse(e){return this.map(t=>t.isError()?t:e.mod(t))}compare(e,t,n){return this._batchOperator(e,Ja.COMPARE,t,n)}concatenateFront(e){return this._batchOperator(e,Ja.CONCATENATE_FRONT)}concatenateBack(e){return this._batchOperator(e,Ja.CONCATENATE_BACK)}map(e){return this.mapValue((t,n,r)=>t==null?Ua.create():t.isError()?t:e(t,n,r))}mapValue(e){let t=this._rowCount,n=this._columnCount,r=[];for(let a=0;a<t;a++){let t=[];for(let r=0;r<n;r++){var i;let n=(i=this._values)==null?void 0:i[a];if(n==null)t[r]=E.create(p.VALUE);else{let i=n[r]||this._defaultValue;i?t[r]=e(i,a,r):t[r]=Ua.create()}}r.push(t)}return this._createNewArray(r,t,n)}pow(e){return this._batchOperator(e,Ja.POW)}powInverse(e){return this.map(t=>t.isError()?t:e.pow(t))}sqrt(){return this.map(e=>e.isError()?e:e.sqrt())}cbrt(){return this.map(e=>e.isError()?e:e.cbrt())}cos(){return this.map(e=>e.isError()?e:e.cos())}cosh(){return this.map(e=>e.isError()?e:e.cosh())}acos(){return this.map(e=>e.isError()?e:e.acos())}acosh(){return this.map(e=>e.isError()?e:e.acosh())}sin(){return this.map(e=>e.isError()?e:e.sin())}sinh(){return this.map(e=>e.isError()?e:e.sinh())}asin(){return this.map(e=>e.isError()?e:e.asin())}asinh(){return this.map(e=>e.isError()?e:e.asinh())}tan(){return this.map(e=>e.isError()?e:e.tan())}tanh(){return this.map(e=>e.isError()?e:e.tanh())}atan(){return this.map(e=>e.isError()?e:e.atan())}atanh(){return this.map(e=>e.isError()?e:e.atanh())}atan2(e){return this._batchOperator(e,Ja.ATAN2)}atan2Inverse(e){return this.map(t=>t.isError()?t:e.atan2(t))}mean(e=0){let t=this.sum(),n=this.count();return t.divided(e===0?n:n.minusBy(1))}median(){let e=this.flattenPosition().numberArray,t=this._createNewArray([e],1,e.length),n=t.getColumnCount();if(n<=1)return t.get(0,0)||Ua.create();if(t.sortByRow(0),n%2==0){let e=t.get(0,n/2)||Ua.create(),r=t.get(0,n/2-1)||Ua.create();return e.plus(r).divided(R.create(2))}return t.get(0,(n-1)/2)||Ua.create()}var(t=0){let n=this.mean(),r=[[]];this.iterator(e=>{if(e==null||e.isError()||e.isString()||e.isBoolean()||e.isNull())return;let t=e.minus(n).pow(R.create(2));t.isError()||r[0].push(t)});let{_unitId:i,_sheetId:a,_currentRow:o,_currentColumn:s}=this;return e.create({calculateValueList:r,rowCount:1,columnCount:r[0].length,unitId:i,sheetId:a,row:o,column:s}).mean(t)}std(e=0){let t=this.var(e);return t.isError()?t:t.sqrt()}log(){return this.map(e=>e.isError()?e:e.log())}log10(){return this.map(e=>e.isError()?e:e.log10())}exp(){return this.map(e=>e.isError()?e:e.exp())}abs(){return this.map(e=>e.isError()?e:e.abs())}round(e){return this._batchOperator(e,Ja.ROUND)}roundInverse(e){return this.map(t=>t.isError()?t:e.round(t))}floor(e){return this._batchOperator(e,Ja.FLOOR)}floorInverse(e){return this.map(t=>t.isError()?t:e.floor(t))}ceil(e){return this._batchOperator(e,Ja.CEIL)}ceilInverse(e){return this.map(t=>t.isError()?t:e.ceil(t))}toValue(){return Qa(this._values)}_clearCache(){this._flattenCache=null,this._sliceCache.clear()}_sort(e){let t=br();return(n,r)=>{let i=n[e],a=r[e];return i==null?1:a==null?-1:i.isError()&&i.isError()?0:i.isError()?1:a.isError()?-1:t(i.getValue(),a.getValue())}}_transposeArray(e){let t=e.length,n=e[0].length,r=[];for(let i=0;i<n;i++){r[i]=[];for(let n=0;n<t;n++)r[i][n]=e[n][i]}return r}_batchOperator(e,t,n,r){let i=[],a=this._rowCount,o=this._columnCount;if(e.isArray()){let s=e.getRowCount(),c=e.getColumnCount();if(a=Math.max(s,a),o=Math.max(c,o),s===1&&c===1){let t=e.getFirstCell();for(let e=0;e<o;e++)i.push(t)}else if(s===1&&this._columnCount>1){let t=e.getArrayValue();for(let e=0;e<o;e++)t[0]&&t[0][e]?i.push(t[0][e]):i.push(Ua.create())}else return this._batchOperatorArray(e,t,n,r)}else for(let t=0;t<o;t++)i.push(e);let s=[];for(let e=0;e<o;e++){let a=i[e];this._batchOperatorValue(a,e,s,t,n,r)}let c=this._createNewArray(s,a,o);return c.setDefaultValue(L.create(!1)),c}_batchOperatorValue(e,t,n,r,i,a){let o=this._rowCount,s=this.getUnitId(),c=this.getSheetId(),l=this.getCurrentRow(),u=this.getCurrentColumn();if(r===Ja.COMPARE){let{rowsInCache:d,rowsNotInCache:f}=cr.canUseCache(s,c,t+u,l,l+o-1);if(d.length>0){if(i===v.EQUALS&&!(e.isString()&&xr(e.getValue()))){let r=cr.getCellPositions(s,c,t+u,e.isNull()?null:e.getValue(),d);r!=null&&r.forEach(e=>{if(e<l||e>l+o-1)return;let r=e-l;n[r]==null&&(n[r]=[]),n[r][t]=L.create(!0)})}else{let r=cr.getCellValuePositions(s,c,t+u);r!=null&&r.forEach((r,s)=>{let c=Ua.create();m.has(s)?c=E.create(s):typeof s==`string`?c=z.create(s):typeof s==`number`?c=R.create(s):typeof s==`boolean`&&(c=L.create(s));let u;u=c.isError()?c:e.isError()?e:c.compare(e,i,a),r.forEach(e=>{e>=l&&e<=l+o-1&&(n[e-l]==null&&(n[e-l]=[]),n[e-l][t]=u)})})}if(f.length>0)for(let o of f){let[d,f]=o;for(let o=d;o<=f;o++)this.__batchOperatorRowValue(e,t,n,r,o-l,s,c,l,u,i,a);cr.setContinueBuildingCache(s,c,t+u,d,f)}return}}for(let d=0;d<o;d++)this.__batchOperatorRowValue(e,t,n,r,d,s,c,l,u,i,a);cr.setContinueBuildingCache(s,c,t+u,l,l+o-1)}__batchOperatorRowValue(e,t,n,r,i,a,o,s,c,l,u){let d=this.getValueOrDefault(i,t);if(n[i]==null&&(n[i]=[]),d&&e)if(d.isError())n[i][t]=d;else if(e.isError())n[i][t]=e;else switch(r){case Ja.PLUS:n[i][t]=d.plus(e);break;case Ja.MINUS:n[i][t]=d.minus(e);break;case Ja.MULTIPLY:n[i][t]=d.multiply(e);break;case Ja.DIVIDED:n[i][t]=d.divided(e);break;case Ja.MOD:n[i][t]=d.mod(e);break;case Ja.COMPARE:l?n[i][t]=d.compare(e,l,u):n[i][t]=E.create(p.VALUE);break;case Ja.CONCATENATE_FRONT:n[i][t]=d.concatenateFront(e);break;case Ja.CONCATENATE_BACK:n[i][t]=d.concatenateBack(e);break;case Ja.POW:n[i][t]=d.pow(e);break;case Ja.ROUND:n[i][t]=d.round(e);break;case Ja.FLOOR:n[i][t]=d.floor(e);break;case Ja.ATAN2:n[i][t]=d.atan2(e);break;case Ja.CEIL:n[i][t]=d.ceil(e);break}else n[i][t]=E.create(p.NA);!d||d!=null&&d.isNull()?cr.set(a,o,t+c,sr,i+s):cr.set(a,o,t+c,d.getValue(),i+s)}_batchOperatorArray(e,t,n,r){let i=e.getRowCount(),a=e.getColumnCount();i<this._rowCount&&(i=this._rowCount),a<this._columnCount&&(a=this._columnCount);let o=[],s=this._checkArrayCalculateType(this),c=this._checkArrayCalculateType(e);for(let l=0;l<i;l++){let i=[];for(let o=0;o<a;o++){let a;a=s===Ya.SINGLE?this.getValueOrDefault(0,0):s===Ya.ROW?this.getValueOrDefault(0,o):s===Ya.COLUMN?this.getValueOrDefault(l,0):this.getValueOrDefault(l,o);let u;if(u=c===Ya.SINGLE?e.getValueOrDefault(0,0):c===Ya.ROW?e.getValueOrDefault(0,o):c===Ya.COLUMN?e.getValueOrDefault(l,0):e.getValueOrDefault(l,o),a&&u)if(a.isError())i[o]=a;else if(u.isError())i[o]=u;else switch(t){case Ja.PLUS:i[o]=a.plus(u);break;case Ja.MINUS:i[o]=a.minus(u);break;case Ja.MULTIPLY:i[o]=a.multiply(u);break;case Ja.DIVIDED:i[o]=a.divided(u);break;case Ja.MOD:i[o]=a.mod(u);break;case Ja.COMPARE:n?i[o]=a.compare(u,n,r):i[o]=E.create(p.VALUE);break;case Ja.CONCATENATE_FRONT:i[o]=a.concatenateFront(u);break;case Ja.CONCATENATE_BACK:i[o]=a.concatenateBack(u);break;case Ja.POW:i[o]=a.pow(u);break;case Ja.ROUND:i[o]=a.round(u);break;case Ja.ATAN2:i[o]=a.atan2(u);break;case Ja.FLOOR:i[o]=a.floor(u);break;case Ja.CEIL:i[o]=a.ceil(u);break}else i[o]=E.create(p.NA)}o.push(i)}return this._createNewArray(o,i,a)}_checkArrayCalculateType(e){return e.getRowCount()===1&&e.getColumnCount()===1?Ya.SINGLE:e.getRowCount()===1?Ya.ROW:e.getColumnCount()===1?Ya.COLUMN:Ya.PRODUCT}_formatValue(e){if(typeof e!=`string`)return e=e,this._rowCount=e.rowCount,this._columnCount=e.columnCount,this._unitId=e.unitId,this._sheetId=e.sheetId,this._currentRow=e.row,this._currentColumn=e.column,e.calculateValueList;e=e.slice(1,-1);let t=e.split(`;`),n=t.length,r=[],i=0;for(let e=0;e<n;e++){let n=t[e].split(`,`),a=n.length;i<a&&(i=a);let o=[];for(let e=0;e<a;e++){let t=n[e].trim();o.push($a.create(t))}r.push(o)}return this._rowCount=n,this._columnCount=i,r}_createNewArray(t,n,r,i=-1,a=-1){(this._currentColumn===-1||this._currentRow===-1)&&(i=-1,a=-1);let o={calculateValueList:t,rowCount:n,columnCount:r,unitId:this.getUnitId(),sheetId:this.getSheetId(),row:i,column:a};return e.create(o)}},$a=class{static create(e,n=!1){if(e==null)return Ua.create();if(typeof e==`boolean`)return L.create(e);if(typeof e==`string`){let r=e.toLocaleUpperCase().trim();if(m.has(r))return E.create(r);if(r===i.TRUE||r===i.FALSE)return Ga(e);if((0,t.isRealNum)(e)&&Number(e).toString()===e.trim())return R.create(Number(e));if(!n){let{isNumberPattern:t,value:n,pattern:r}=Lr(e);if(t)return R.create(n,r)}let a=e.replace(/\n/g,``).replace(/\r/g,``);return!eo(a)&&Ot(a)?B.create(a):Ka(e)}return typeof e==`number`?qa(e):E.create(p.VALUE)}};function eo(e){let t=e.trim();return t.startsWith(`"`)&&t.endsWith(`"`)}let to=new f(1e4);var no=class extends g{constructor(e){super(),this._token=e,d(this,`_forcedSheetId`,``),d(this,`_forcedSheetName`,``),d(this,`_defaultSheetId`,``),d(this,`_rangeData`,{startColumn:-1,startRow:-1,endRow:-1,endColumn:-1}),d(this,`_unitData`,{}),d(this,`_unitStylesData`,{}),d(this,`_filteredOutRows`,[]),d(this,`_defaultUnitId`,``),d(this,`_forcedUnitId`,``),d(this,`_runtimeData`,{}),d(this,`_arrayFormulaCellData`,{}),d(this,`_arrayFormulaRange`,{}),d(this,`_runtimeArrayFormulaCellData`,{}),d(this,`_runtimeArrayFormulaRange`,{}),d(this,`_runtimeFeatureCellData`,{}),d(this,`_refOffsetX`,0),d(this,`_refOffsetY`,0),d(this,`_currentRow`,void 0),d(this,`_currentColumn`,void 0)}dispose(){this._unitData={},this._unitStylesData={},this._runtimeData={}}getToken(){return this._token}setToken(e){this._token=e}isExceedRange(){let{startRow:e,endRow:t,startColumn:n,endColumn:r}=this.getRangePosition();return e<0||n<0||t>=this.getActiveSheetRowCount()||r>=this.getActiveSheetColumnCount()}setRefOffset(e=0,t=0){this._refOffsetX=e,this._refOffsetY=t}getRefOffset(){return{x:this._refOffsetX,y:this._refOffsetY}}getRangePosition(){let{x:e,y:n}=this.getRefOffset(),r=(0,t.moveRangeByOffset)(this.getRangeData(),e,n);return Number.isNaN(r.startRow)&&(r.startRow=0),Number.isNaN(r.startColumn)&&(r.startColumn=0),Number.isNaN(r.endRow)&&(r.endRow=this.getActiveSheetRowCount()-1),Number.isNaN(r.endColumn)&&(r.endColumn=this.getActiveSheetColumnCount()-1),r}isReferenceObject(){return!0}iterator(e){let{startRow:t,endRow:n,startColumn:r,endColumn:i}=this.getRangePosition();if(this._checkIfWorksheetMiss())return e(E.create(p.VALUE),t,r);let a=this._forcedUnitId||this._defaultUnitId,o=this._forcedSheetId||this._defaultSheetId;for(let s=t;s<=n;s++)for(let n=r;n<=i;n++){if(s<0||n<0)return e(E.create(p.REF),s,n);let i=this.getCellData(s,n),c=!1;if(mr(i)){c=e(null,s,n);continue}let l=this.getCellValueObject(i);if(s===t&&n===r){let e=this.getCellPattern(a,o,s,n);if(e&&l.isNumber()){let t=Number(l.getValue());l=R.create(t,e)}}if(c=e(l,s,n),c===!1)return}}getFirstCell(){if(this._checkIfWorksheetMiss())return E.create(p.VALUE);let{startRow:e,startColumn:t}=this.getRangePosition(),n=this.getCellData(e,t);if(!n)return R.create(0);let r=this.getCellValueObject(n),i=this._forcedUnitId||this._defaultUnitId,a=this._forcedSheetId||this._defaultSheetId,o=this.getCellPattern(i,a,e,t);if(o&&r.isNumber()){let e=Number(r.getValue());r=R.create(e,o)}return r}getRangeData(){return this._rangeData}setRangeData(e){this._rangeData=e}getUnitId(){return this._forcedUnitId&&this._forcedUnitId.length>0?this._forcedUnitId:this._defaultUnitId}getSheetId(){return this._forcedSheetId&&this._forcedSheetId.length>0?this._forcedSheetId:this._defaultSheetId}setForcedUnitIdDirect(e){e.length>0&&(this._forcedUnitId=e)}getForcedUnitId(){return this._forcedUnitId}setForcedSheetId(e){var t;this._forcedSheetId=(t=e[this.getUnitId()])==null?void 0:t[this._forcedSheetName]}setForcedSheetIdDirect(e){this._forcedSheetId=e}getForcedSheetId(){return this._forcedSheetId}setForcedSheetName(e){e.length>0&&(this._forcedSheetName=e)}getForcedSheetName(){return this._forcedSheetName}setDefaultSheetId(e){this._defaultSheetId=e}getDefaultSheetId(){return this._defaultSheetId}setDefaultUnitId(e){this._defaultUnitId=e}getDefaultUnitId(){return this._defaultUnitId}getUnitData(){return this._unitData}setUnitData(e){this._unitData=e}getUnitStylesData(){return this._unitStylesData}setUnitStylesData(e){this._unitStylesData=e}getFilteredOutRows(){return this._filteredOutRows}setFilteredOutRows(e){this._filteredOutRows=e}getRuntimeData(){return this._runtimeData}setRuntimeData(e){this._runtimeData=e}getArrayFormulaCellData(){return this._arrayFormulaCellData}setArrayFormulaCellData(e){this._arrayFormulaCellData=e}getArrayFormulaRange(){return this._arrayFormulaRange}setArrayFormulaRange(e){this._arrayFormulaRange=e}getRuntimeArrayFormulaCellData(){return this._runtimeArrayFormulaCellData}setRuntimeArrayFormulaCellData(e){this._runtimeArrayFormulaCellData=e}getRuntimeArrayFormulaRange(){return this._runtimeArrayFormulaRange}setRuntimeArrayFormulaRange(e){this._runtimeArrayFormulaRange=e}getRuntimeFeatureCellData(){return this._runtimeFeatureCellData}setRuntimeFeatureCellData(e){this._runtimeFeatureCellData=e}getActiveSheetRowCount(){var e;return((e=this.getCurrentActiveSheetData())==null?void 0:e.rowCount)||0}getActiveSheetColumnCount(){var e;return((e=this.getCurrentActiveSheetData())==null?void 0:e.columnCount)||0}getRowCount(){let e=this.getRangeData();return e.endRow-e.startRow+1}getColumnCount(){let e=this.getRangeData();return e.endColumn-e.startColumn+1}getRowData(){var e;return((e=this.getCurrentActiveSheetData())==null?void 0:e.rowData)||{}}getColumnData(){var e;return((e=this.getCurrentActiveSheetData())==null?void 0:e.columnData)||{}}isCell(){return!1}isColumn(){return!1}isRow(){return!1}isRange(){return!1}isTable(){return!1}isCurrentRowForRange(){return!1}isCurrentColumnForRange(){return!1}isMultiArea(){return!1}unionBy(e){return E.create(p.REF)}unionRange(e,t){return{startRow:-1,startColumn:-1,endRow:-1,endColumn:-1}}getCellValueObject(e){let n=hr(e);if(m.has(n))return E.create(n);if(e.t===t.CellValueType.NUMBER){let r=this._getPatternByCell(e);return(0,t.isTextFormat)(r)?z.create(n.toString()):qa(n,r)}return e.t===t.CellValueType.STRING||e.t===t.CellValueType.FORCE_STRING?z.create(n.toString()):e.t===t.CellValueType.BOOLEAN?Ga(n):$a.create(n)}_getPatternByCell(e){var t;let n=this._unitStylesData[this.getUnitId()];if(!n)return``;let r=n.getStyleByCell(e);return(r==null||(t=r.n)==null?void 0:t.pattern)||``}getCellByRow(e){return this.getCellByPosition(e)}getCellByColumn(e){return this.getCellByPosition(void 0,e)}getCurrentActiveSheetData(){var e;return(e=this._unitData[this.getUnitId()])==null?void 0:e[this.getSheetId()]}getCurrentStylesData(){return this._unitStylesData[this.getUnitId()]}getCurrentRuntimeSheetData(){var e;return(e=this._runtimeData)==null||(e=e[this.getUnitId()])==null?void 0:e[this.getSheetId()]}getCurrentActiveArrayFormulaCellData(){var e;return(e=this._arrayFormulaCellData)==null||(e=e[this.getUnitId()])==null?void 0:e[this.getSheetId()]}getCurrentRuntimeActiveArrayFormulaCellData(){var e;return(e=this._runtimeArrayFormulaCellData)==null||(e=e[this.getUnitId()])==null?void 0:e[this.getSheetId()]}getCurrentActiveArrayFormulaRange(){var e;return(e=this._arrayFormulaRange)==null||(e=e[this.getUnitId()])==null?void 0:e[this.getSheetId()]}getCurrentRuntimeActiveArrayFormulaRange(){var e;return(e=this._runtimeArrayFormulaRange)==null||(e=e[this.getUnitId()])==null?void 0:e[this.getSheetId()]}getCellData(e,n){let r=this.getCurrentActiveSheetData(),i=this.getCurrentRuntimeSheetData(),a=this.getCurrentActiveArrayFormulaCellData(),o=this.getCurrentRuntimeActiveArrayFormulaCellData(),s=new t.ObjectMatrix(this.getCurrentActiveArrayFormulaRange()),c=new t.ObjectMatrix(this.getCurrentRuntimeActiveArrayFormulaRange()),l=(i==null?void 0:i.getValue(e,n))||(o==null?void 0:o.getValue(e,n))||this.getRuntimeFeatureCellValue(e,n);if(l)return l;if(l=a==null?void 0:a.getValue(e,n),l){let t=!1;return s.forValue((r,i,a)=>{if(e>=a.startRow&&e<=a.endRow&&n>=a.startColumn&&n<=a.endColumn&&c.getValue(r,i))return t=!0,!1}),t?null:l}return r==null?void 0:r.cellData.getValue(e,n)}getRuntimeFeatureCellValue(e,t){return _r(e,t,this.getSheetId(),this.getUnitId(),this._runtimeFeatureCellData)}getCellByPosition(e,t){let n=e,r=t,i=this.getRangeData();n||(n=i.startRow),r||(r=i.startColumn);let a=this.getCellData(n,r);return a?this.getCellValueObject(a):E.create(p.VALUE)}setCurrentRowAndColumn(e,t){this._currentRow=e,this._currentColumn=t}getCurrentRow(){return this._currentRow}getCurrentColumn(){return this._currentColumn}getCellPattern(e,t,n,r){var i,a;let o=this._unitStylesData[e];if(!o)return``;let s=(i=this._unitData[e])==null||(i=i[t])==null||(i=i.cellData)==null?void 0:i.getValue(n,r);if(!s)return``;let c=o.getStyleByCell(s);return(c==null||(a=c.n)==null?void 0:a.pattern)||``}toArrayValueObject(e=!0){var t;let{startRow:n,endRow:r,startColumn:i,endColumn:a}=this.getRangePosition(),o=`${this.getUnitId()}_${this.getSheetId()}_${n}_${r}_${i}_${a}`,s=to.get(o);if(s&&e)return s;let c=r-n+1,l=a-i+1;if(c<0||l<0)return this._getBlankArrayValueObject();let u=Array(c);this.iterator((e,t,r)=>{let a=t-n,o=r-i;u[a]||(u[a]=Array(l)),e==null&&(e=Ua.create()),u[a][o]=e});let d={calculateValueList:u,rowCount:u.length,columnCount:((t=u[0])==null?void 0:t.length)||0,unitId:this.getUnitId(),sheetId:this.getSheetId(),row:n,column:i},f=B.create(d);return e&&to.set(o,f),f}toUnitRange(){return{range:this.getRangePosition(),sheetId:this.getSheetId(),unitId:this.getUnitId()}}_checkIfWorksheetMiss(){return(this._forcedSheetId==null||this._forcedSheetId.length===0)&&this._forcedSheetName.length>0}_getBlankArrayValueObject(){let e={calculateValueList:[],rowCount:0,columnCount:0,unitId:this.getUnitId(),sheetId:this.getSheetId(),row:0,column:0};return B.create(e)}},ro=class extends g{constructor(e){super(),this._promise=e}isAsyncObject(){return!0}async getValue(){return this._promise}},io=class extends g{constructor(e){super(),this._promiseList=e}isAsyncArrayObject(){return!0}async getValue(){var e;let t=[];for(let e=0;e<this._promiseList.length;e++){let n=this._promiseList[e];t[e]==null&&(t[e]=[]);for(let r=0;r<n.length;r++){let i=n[r];i.isAsyncObject()?t[e][r]=await i.getValue():t[e][r]=i}}let n={calculateValueList:t,rowCount:t.length,columnCount:((e=t[0])==null?void 0:e.length)||0,unitId:``,sheetId:``,row:0,column:0};return B.create(n)}},ao=class extends no{constructor(e,t,n){super(``),this.setRangeData(e),t&&this.setForcedSheetIdDirect(t),n&&this.setForcedUnitIdDirect(n)}isRange(){return!0}},oo=class extends no{constructor(e){super(e);let t=Gn(e);this.setForcedUnitIdDirect(t.unitId),this.setForcedSheetName(t.sheetName),this.setRangeData(t.range)}isCell(){return!0}unionBy(e){if(!e.isCell())return E.create(p.REF);let t=e,n=this.unionRange(this.getRangeData(),t.getRangeData());return this._createRange(n)}unionRange(e,t){let n=e.startRow,r=e.startColumn,i=t.startRow,a=t.startColumn,o={startRow:-1,startColumn:-1,endRow:-1,endColumn:-1};return n>i?(o.startRow=i,o.endRow=n):(o.startRow=n,o.endRow=i),r>a?(o.startColumn=a,o.endColumn=r):(o.startColumn=r,o.endColumn=a),e.startAbsoluteRefType&&(o.startAbsoluteRefType=e.startAbsoluteRefType),t.startAbsoluteRefType&&(o.endAbsoluteRefType=t.startAbsoluteRefType),o}_createRange(e){let t=new ao(e,this.getForcedSheetId(),this.getForcedUnitId());t.setUnitData(this.getUnitData()),t.setDefaultSheetId(this.getDefaultSheetId()),t.setDefaultUnitId(this.getDefaultUnitId()),t.setRuntimeData(this.getRuntimeData()),t.setUnitStylesData(this.getUnitStylesData()),t.setArrayFormulaCellData(this.getArrayFormulaCellData()),t.setRuntimeArrayFormulaCellData(this.getRuntimeArrayFormulaCellData()),t.setRuntimeFeatureCellData(this.getRuntimeFeatureCellData());let{x:n,y:r}=this.getRefOffset();t.setRefOffset(n,r);let i=this.getForcedSheetId();t.setForcedSheetName(this.getForcedSheetName()),i!=null&&t.setForcedSheetIdDirect(i);let a=this.getForcedUnitId();return a&&t.setForcedUnitIdDirect(a),t}},so=class extends no{constructor(e){super(e);let n=Gn(e);this.setForcedUnitIdDirect(n.unitId),this.setForcedSheetName(n.sheetName);let r={...n.range,startColumn:n.range.startColumn,startRow:NaN,endColumn:n.range.endColumn,endRow:NaN,rangeType:t.RANGE_TYPE.COLUMN};this.setRangeData(r)}isColumn(){return!0}unionBy(e){if(!e.isColumn())return E.create(p.REF);let n=e;if(n.getForcedSheetName()!==void 0&&n.getForcedSheetName()!==``)return E.create(p.REF);let r=this.getRangeData(),i=n.getRangeData(),a=i.startColumn;if(a>=r.startColumn&&a<=r.endColumn)return this;let o=r.startColumn;return a>o?r.endColumn=a:(r.startColumn=a,r.endColumn=o),i.startAbsoluteRefType&&(r.endAbsoluteRefType=i.startAbsoluteRefType),r.rangeType=t.RANGE_TYPE.COLUMN,this.setToken(`${this.getToken()}${S.COLON}${n.getToken()}`),this}},co=class extends no{constructor(e){super(e);let n=Gn(e);this.setForcedUnitIdDirect(n.unitId),this.setForcedSheetName(n.sheetName);let r={...n.range,startColumn:NaN,startRow:n.range.startRow,endColumn:NaN,endRow:n.range.endRow,rangeType:t.RANGE_TYPE.ROW};this.setRangeData(r)}isRow(){return!0}unionBy(e){if(!e.isRow())return E.create(p.REF);let n=e;if(n.getForcedSheetName()!==void 0&&n.getForcedSheetName()!==``)return E.create(p.REF);let r=this.getRangeData(),i=n.getRangeData(),a=i.startRow;if(a>=r.startRow&&a<=r.endRow)return this;let o=r.startRow;return a>o?r.endRow=a:(r.startRow=a,r.endRow=o),i.startAbsoluteRefType&&(r.endAbsoluteRefType=i.startAbsoluteRefType),r.rangeType=t.RANGE_TYPE.ROW,this.setToken(`${this.getToken()}${S.COLON}${n.getToken()}`),this}};function V(e,t,n,r){let i=n.isArray()?n.getRowCount():1,a=n.isArray()?n.getColumnCount():1,o=[];for(let s=0;s<e;s++){let e=[];for(let o=0;o<t;o++){if(i===1&&a===1){let t=n.isArray()?n.get(0,0):n;e.push(t);continue}if(i===1&&o<a){let t=n.get(0,o);e.push(t);continue}if(a===1&&s<i){let t=n.get(s,0);e.push(t);continue}if(s>=i||o>=a){e.push(r==null?Ua.create():r);continue}let t=n.get(s,o);e.push(t)}o.push(e)}return lo(o,e,t)}function lo(e,t,n,r=``,i=``){let a={calculateValueList:e,rowCount:t,columnCount:n,unitId:r,sheetId:i,row:-1,column:-1};return B.create(a)}function uo(e){let t=[v.EQUALS,v.NOT_EQUAL,v.GREATER_THAN_OR_EQUAL,v.GREATER_THAN,v.LESS_THAN_OR_EQUAL,v.LESS_THAN];for(let n of t)if(e.startsWith(n)){let t=e.substring(n.length);return[n,$a.create(t)]}return[v.EQUALS,$a.create(e)]}function fo(e,t,n,r){if(!n)if(t.isString()){let[e,r]=uo(`${t.getValue()}`);n=e,t=r}else n=v.EQUALS;return e.compare(t,n,r)}function po(e,t){let n=e.getRowCount(),r=e.getColumnCount(),i=t.getRowCount(),a=t.getColumnCount(),o=e,s=t;if(n!==i||r!==a){let c=Math.max(n,i),l=Math.max(r,a);o=V(c,l,e),s=V(c,l,t)}return o.mapValue((e,t,n)=>{let r=s.get(t,n);return e!=null&&e.isError()?e:r!=null&&r.isError()?r:e!=null&&e.isBoolean()&&r!=null&&r.isBoolean()?Ga(e.getValue()&&r.getValue()):L.create(!1)})}function mo(e){let t=e.getValue(),n=0;return t&&(n=1),R.create(n)}function ho(e){return e.isArray()&&e.getRowCount()===1&&e.getColumnCount()===1?!0:e.isReferenceObject()?!!(e.isCell()||e.getRowCount()===1&&e.getColumnCount()===1):(e=e,!!(e.isString()||e.isNumber()||e.isBoolean()||e.isError()||e.isNull()))}function go(e){let n=e==null?void 0:e.getPattern(),r={},i={};if(n&&(r={s:{n:{pattern:n}}}),e!=null&&e.getCustomData()&&(i={custom:e.getCustomData()}),e==null)return{v:null,...r};if(e.isError())return{v:e.getErrorType(),t:t.CellValueType.STRING,...r,...i};if(e.isValueObject()){let n=e,a=n.getValue();return n.isNumber()?{v:a,t:t.CellValueType.NUMBER,...r,...i}:n.isBoolean()?{v:a?1:0,t:t.CellValueType.BOOLEAN,...r,...i}:n.isString()?{v:a,t:t.CellValueType.STRING,...r,...i}:n.isNull()?{v:null,...r,...i}:{v:a,t:t.CellValueType.STRING,...r,...i}}}function _o(e){let t=0,n=0;return e.forEach((e,r)=>{if(r%2==1)if(e.isArray()){let r=e;t=Math.max(t,r.getRowCount()),n=Math.max(n,r.getColumnCount())}else t=Math.max(t,1),n=Math.max(n,1)}),{maxRowLength:t,maxColumnLength:n}}function vo(e,t){if(e.length===0||e.length%2!=0)return{isError:!0,errorObject:E.create(p.VALUE),rangeIsDifferentSize:!1,criteriaMaxRowLength:0,criteriaMaxColumnLength:0,targetRange:null,variants:[]};let n=null,r=-1,i=-1;if(t){if(!t.isReferenceObject())return{isError:!0,errorObject:E.create(p.VALUE),rangeIsDifferentSize:!1,criteriaMaxRowLength:0,criteriaMaxColumnLength:0,targetRange:null,variants:[]};n=t.toArrayValueObject(),r=n.getRowCount(),i=n.getColumnCount()}let a=0,o=0,s=!1,c=[];for(let t=0;t<e.length;t++)if(t%2==1){let n=e[t-1],l=e[t];if(!n.isReferenceObject())return{isError:!0,errorObject:E.create(p.VALUE),rangeIsDifferentSize:!1,criteriaMaxRowLength:0,criteriaMaxColumnLength:0,targetRange:null,variants:[]};let u=n.toArrayValueObject(),d=u.getRowCount(),f=u.getColumnCount();t===1&&r===-1&&i===-1?(r=d,i=f):!s&&(r!==d||i!==f)&&(s=!0);let m=l;l.isReferenceObject()&&(m=l.toArrayValueObject()),a=Math.max(a,m.isArray()?m.getRowCount():1),o=Math.max(o,m.isArray()?m.getColumnCount():1),c.push(u),c.push(m)}return{isError:!1,errorObject:null,rangeIsDifferentSize:s,criteriaMaxRowLength:a,criteriaMaxColumnLength:o,targetRange:n,variants:c}}function yo(e){return e.isArray()?e:B.createByArray([[e.getValue()]])}function bo(e,t){let{formulaName:n,maxRowLength:r,maxColumnLength:i,isNumberSensitive:a=!1,targetRange:o}=t,s=[];for(let t=0;t<e.length;t++){if(t%2==1)continue;let n=e[t],a=e[t+1],o=V(r,i,a,E.create(p.NA));s.push({range:n,criteriaArray:o})}if(s.length===0)return[];let c=[];return s[0].criteriaArray.iterator((e,t,r)=>{let i;for(let e=0;e<s.length;e++){let{range:n,criteriaArray:o}=s[e],c=o.get(t,r);if(!c)continue;let l=fo(n,c);if(a&&(l=xo(l,n,c)),i===void 0){i=l;continue}i=po(i,l)}let l;if(n===`COUNTIFS`){let e=0;i.iterator(t=>{t!=null&&t.isBoolean()&&t.getValue()===!0&&e++}),l=R.create(e)}else if(n===`SUMIFS`)l=o.pick(i).sum();else if(n===`AVERAGEIFS`){let e=o.pick(i),t=e.sum(),n=e.count();l=t.divided(n)}else if(n===`MAXIFS`){let e=o.pick(i);l=e.getColumnCount()===0?B.create(`0`):e.max()}else if(n===`MINIFS`){let e=o.pick(i);l=e.getColumnCount()===0?B.create(`0`):e.min()}c[t]||(c[t]=[]),c[t][r]=l}),c}function xo(e,t,n){let[r,i]=uo(`${n.getValue()}`);return e.mapValue((e,n,a)=>{let o=t.get(n,a);if(o&&So(o,i))return e;if(o!=null&&o.isError()&&i.isError()&&o.getValue()===i.getValue())return L.create(!0);if(r===v.EQUALS||r===v.NOT_EQUAL){if(o!=null&&o.isNumber()&&i.isString()){let e=i.convertToNumberObjectValue();if(e.isNumber())return o.compare(e,r)}if(i.isNumber()&&o!=null&&o.isString()){let e=o.convertToNumberObjectValue();if(e.isNumber())return e.compare(i,r)}if(r===v.EQUALS)return L.create(!1);if(r===v.NOT_EQUAL)return L.create(!0)}return L.create(!1)})}function So(e,t){if(e.isNumber()&&t.isNumber()||e.isBoolean()&&t.isBoolean())return!0;let n=e.isString()&&e.getValue()===``,r=t.isString()&&t.getValue()===``;return!!((n||e.isNull())&&(r||t.isNull())||e.isString()&&!n&&t.isString()&&!r)}let Co=function(e){return e[e.CELL=0]=`CELL`,e[e.COLUMN=1]=`COLUMN`,e[e.ROW=2]=`ROW`,e}({});function wo(e,t){let n;switch(t){case Co.COLUMN:n=new so(e);break;case Co.ROW:n=new co(e);break;case Co.CELL:default:n=new oo(e);break}return n}function To(e,t){let n;return n=e.isCell()&&t.isCell()||e.isRow()&&t.isRow()||e.isColumn()&&t.isColumn()?e.unionBy(t):E.create(p.NAME),n}let Eo=class extends t.Disposable{constructor(e){super(),this._univerInstanceService=e}generateCellValue(e,n){if(n.trim()===``)return{v:``};let r=e;if(e.startsWith(`#`)&&kt(e.slice(1))){let{unitId:n,sheetName:i,range:a}=Yt(e.slice(1)),o=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET);if(n===``||n===o.getUnitId())if(i===``)r=`#gid=${o.getActiveSheet().getSheetId()}&range=${Ut(a)}`;else{let e=o.getSheetBySheetName(i);e&&(r=`#gid=${e.getSheetId()}&range=${Ut(a)}`)}}else t.Tools.isLegalUrl(e)&&(r=t.Tools.normalizeUrl(e));return{p:t.RichTextBuilder.create().insertLink(n,r).getData()}}};Eo=un([A(0,t.IUniverInstanceService)],Eo);let Do=(0,t.createIdentifier)(`univer.formula.hyperlink-engine-formula.service`),Oo=function(e){return e[e.IDLE=0]=`IDLE`,e[e.START=1]=`START`,e[e.START_DEPENDENCY=2]=`START_DEPENDENCY`,e[e.START_CALCULATION=3]=`START_CALCULATION`,e[e.CURRENTLY_CALCULATING=4]=`CURRENTLY_CALCULATING`,e[e.START_DEPENDENCY_ARRAY_FORMULA=5]=`START_DEPENDENCY_ARRAY_FORMULA`,e[e.START_CALCULATION_ARRAY_FORMULA=6]=`START_CALCULATION_ARRAY_FORMULA`,e[e.CURRENTLY_CALCULATING_ARRAY_FORMULA=7]=`CURRENTLY_CALCULATING_ARRAY_FORMULA`,e[e.CALCULATION_COMPLETED=8]=`CALCULATION_COMPLETED`,e}({}),ko=function(e){return e[e.INITIAL=0]=`INITIAL`,e[e.STOP_EXECUTION=1]=`STOP_EXECUTION`,e[e.NOT_EXECUTED=2]=`NOT_EXECUTED`,e[e.SUCCESS=3]=`SUCCESS`,e}({}),Ao=class extends t.Disposable{constructor(e,t){super(),this._currentConfigService=e,this._hyperlinkEngineFormulaService=t,d(this,`_formulaExecuteStage`,Oo.IDLE),d(this,`_stopState`,!1),d(this,`_currentRow`,-1),d(this,`_currentColumn`,-1),d(this,`_currentRowCount`,-1/0),d(this,`_currentColumnCount`,-1/0),d(this,`_currentSubUnitId`,``),d(this,`_currentUnitId`,``),d(this,`_runtimeData`,{}),d(this,`_runtimeOtherData`,{}),d(this,`_unitArrayFormulaRange`,{}),d(this,`_unitArrayFormulaEmbeddedMap`,{}),d(this,`_runtimeArrayFormulaCellData`,{}),d(this,`_runtimeClearArrayFormulaCellData`,{}),d(this,`_runtimeFeatureRange`,{}),d(this,`_runtimeFeatureCellData`,{}),d(this,`_runtimeImageFormulaData`,[]),d(this,`_functionsExecutedState`,ko.INITIAL),d(this,`_functionDefinitionPrivacyVar`,new Map),d(this,`_totalFormulasToCalculate`,0),d(this,`_completedFormulasCount`,0),d(this,`_totalArrayFormulasToCalculate`,0),d(this,`_completedArrayFormulasCount`,0),d(this,`_formulaCycleIndex`,0),d(this,`_isCycleDependency`,!1),d(this,`_dependencyTreeModelData`,[])}get currentRow(){return this._currentRow}get currentColumn(){return this._currentColumn}get currentRowCount(){return this._currentRowCount}get currentColumnCount(){return this._currentColumnCount}get currentSubUnitId(){return this._currentSubUnitId}get currentUnitId(){return this._currentUnitId}dispose(){super.dispose(),this.reset(),this._runtimeFeatureCellData={},this._runtimeFeatureRange={},this.clearReferenceAndNumberformatCache()}enableCycleDependency(){this._isCycleDependency=!0}disableCycleDependency(){this._isCycleDependency=!1}isCycleDependency(){return this._isCycleDependency}setFormulaCycleIndex(e){this._formulaCycleIndex=e}getFormulaCycleIndex(){return this._formulaCycleIndex}setTotalArrayFormulasToCalculate(e){this._totalArrayFormulasToCalculate=e}getTotalArrayFormulasToCalculate(){return this._totalArrayFormulasToCalculate}setCompletedArrayFormulasCount(e){this._completedArrayFormulasCount=e}getCompletedArrayFormulasCount(){return this._completedArrayFormulasCount}setTotalFormulasToCalculate(e){this._totalFormulasToCalculate=e}getTotalFormulasToCalculate(){return this._totalFormulasToCalculate}setCompletedFormulasCount(e){this._completedFormulasCount=e}getCompletedFormulasCount(){return this._completedFormulasCount}markedAsSuccessfullyExecuted(){this._functionsExecutedState=ko.SUCCESS}markedAsNoFunctionsExecuted(){this._functionsExecutedState=ko.NOT_EXECUTED}markedAsStopFunctionsExecuted(){this._functionsExecutedState=ko.STOP_EXECUTION}markedAsInitialFunctionsExecuted(){this._functionsExecutedState=ko.INITIAL}stopExecution(){this._stopState=!0,this.setFormulaExecuteStage(Oo.IDLE)}isStopExecution(){return this._stopState}setFormulaExecuteStage(e){this._formulaExecuteStage=e}getFormulaExecuteStage(){return this._formulaExecuteStage}reset(){this._formulaExecuteStage=Oo.IDLE,this._runtimeData={},this._runtimeOtherData={},this._unitArrayFormulaRange={},this._unitArrayFormulaEmbeddedMap={},this._runtimeArrayFormulaCellData={},this._runtimeClearArrayFormulaCellData={},this._runtimeImageFormulaData=[],this._functionDefinitionPrivacyVar.clear(),this.markedAsInitialFunctionsExecuted(),this._stopState=!1,this._isCycleDependency=!1,this._totalFormulasToCalculate=0,this._completedFormulasCount=0,this.clearReferenceAndNumberformatCache()}clearReferenceAndNumberformatCache(){jr(),zr(),Kn()}setCurrent(e,t,n,r,i,a){this._currentRow=e,this._currentColumn=t,this._currentRowCount=n,this._currentColumnCount=r,this._currentSubUnitId=i,this._currentUnitId=a}clearFunctionDefinitionPrivacyVar(){this._functionDefinitionPrivacyVar.clear()}registerFunctionDefinitionPrivacyVar(e,t){this._functionDefinitionPrivacyVar.set(e,t)}getFunctionDefinitionPrivacyVar(e){return this._functionDefinitionPrivacyVar.get(e)}setRuntimeOtherData(e,t,n,r){let i=this._currentSubUnitId,a=this._currentUnitId;this._runtimeOtherData[a]===void 0&&(this._runtimeOtherData[a]={});let o=this._runtimeOtherData[a];(o[i]===void 0||o[i]===null)&&(o[i]={});let s=o[i],c=[];if(r.isReferenceObject()||r.isValueObject()&&r.isArray()){let e=r,{startRow:t,startColumn:n}=e.getRangePosition();e.iterator((e,r,i)=>{let a=this._getValueObjectOfRuntimeData(e),o=r-t,s=i-n;c[o]==null&&(c[o]=[]),c[o][s]=a})}else c=[[this._getValueObjectOfRuntimeData(r)]];(s[e]===void 0||s[e]===null)&&(s[e]={}),(s[e][n]===void 0||s[e][n]===null)&&(s[e][n]={}),s[e][n][t]=c}setRuntimeData(e){let n=this._currentRow,r=this._currentColumn,i=this._currentRowCount,a=this.currentColumnCount,o=this._currentSubUnitId,s=this._currentUnitId;this._runtimeData[s]==null&&(this._runtimeData[s]={});let c=this._runtimeData[s];c[o]==null&&(c[o]=new t.ObjectMatrix);let l=c[o];this._unitArrayFormulaRange[s]==null&&(this._unitArrayFormulaRange[s]={});let u=this._unitArrayFormulaRange[s];(u[o]===null||u[o]===void 0)&&(u[o]={});let d=new t.ObjectMatrix(u[o]);this._runtimeArrayFormulaCellData[s]===void 0&&(this._runtimeArrayFormulaCellData[s]={});let f=this._runtimeArrayFormulaCellData[s];f[o]==null&&(f[o]=new t.ObjectMatrix);let m=f[o];this._runtimeClearArrayFormulaCellData[s]===void 0&&(this._runtimeClearArrayFormulaCellData[s]={});let h=this._runtimeClearArrayFormulaCellData[s];h[o]==null&&(h[o]=new t.ObjectMatrix);let g=h[o];if(e.isReferenceObject()||e.isValueObject()&&e.isArray()){let t=e,{startRow:c,startColumn:u,endRow:f,endColumn:h}=t.getRangePosition();if(c===f&&u===h){let e=t.getFirstCell(),i=this._getValueObjectOfRuntimeData(e);l.setValue(n,r,i),g.setValue(n,r,i),cr.set(s,o,r,e.getValue(),n,!0);return}let _={startRow:n,startColumn:r,endRow:f-c+n,endColumn:h-u+r};if(d.setValue(n,r,_),this._checkIfArrayFormulaRangeHasData(s,o,n,r,_)||this._checkIfArrayFormulaExceeded(i,a,_)){let e=this._getValueObjectOfRuntimeData(E.create(p.SPILL));l.setValue(n,r,e),g.setValue(n,r,e),cr.set(s,o,r,p.SPILL,n,!0);let i=this._currentConfigService.getUnitData();t.iterator((t,a,l)=>{var d;let f=a-c+n,p=l-u+r,h=(d=i[s])==null||(d=d[o])==null?void 0:d.cellData.getValue(f,p);if(a===c&&l===u)m.setValue(n,r,e);else if(h!=null)h.v==null&&(h.v=``),m.setValue(f,p,h);else if(this._isInOtherArrayFormulaRange(s,o,n,r,f,p))return!0;else m.setValue(f,p,{v:``})})}else{let e=E.create(p.SPILL);t.iterator((t,i,a)=>{cr.set(s,o,r-u+a,t?t.getValue():0,n-c+i,!0);let d=this._getValueObjectOfRuntimeData(t);if(i===c&&a===u){if(t!=null&&t.isError()&&t.isEqualType(e))return g.setValue(n,r,{}),l.setValue(n,r,{...this._getValueObjectOfRuntimeData(e)}),!1;l.setValue(n,r,{...d})}let f=i-c+n,p=a-u+r;m.setValue(f,p,d)})}}else{let t=this._getValueObjectOfRuntimeData(e);if(l.setValue(n,r,t),e.isString()&&e.isImage()){let t=e.getImageInfo();t&&this._runtimeImageFormulaData.push({...t,unitId:s,sheetId:o,row:n,column:r})}cr.set(s,o,r,e.getValue(),n,!0),g.setValue(n,r,t)}}_getValueObjectOfRuntimeData(e){return e!=null&&e.isString()&&e.isHyperlink()?this._hyperlinkEngineFormulaService.generateCellValue(e.getHyperlinkUrl(),e.getValue()):go(e)}getUnitData(){return this._runtimeData}getUnitArrayFormula(){return this._unitArrayFormulaRange}getUnitArrayFormulaEmbeddedMap(){return this._unitArrayFormulaEmbeddedMap}setUnitArrayFormulaEmbeddedMap(){let e=this._currentUnitId,t=this._currentSubUnitId,n=this._currentRow,r=this._currentColumn,i=this._unitArrayFormulaEmbeddedMap;i[e]==null&&(i[e]={}),i[e][t]==null&&(i[e][t]={}),i[e][t][n]==null&&(i[e][t][n]={}),i[e][t][n][r]=!0}getRuntimeOtherData(){return this._runtimeOtherData}getRuntimeArrayFormulaCellData(){return this._runtimeArrayFormulaCellData}getRuntimeClearArrayFormulaCellData(){return this._runtimeClearArrayFormulaCellData}getRuntimeFeatureRange(){return this._runtimeFeatureRange}setRuntimeFeatureRange(e,t){this._runtimeFeatureRange[e]=t}getRuntimeFeatureCellData(){return this._runtimeFeatureCellData}setRuntimeFeatureCellData(e,t){this._runtimeFeatureCellData[e]=t}setDependencyTreeModelData(e){this._dependencyTreeModelData=e}getDependencyTreeModelData(){return this._dependencyTreeModelData}getRuntimeImageFormulaData(){return this._runtimeImageFormulaData}getAllRuntimeData(){return{unitData:this.getUnitData(),arrayFormulaRange:this.getUnitArrayFormula(),arrayFormulaEmbedded:this.getUnitArrayFormulaEmbeddedMap(),unitOtherData:this.getRuntimeOtherData(),functionsExecutedState:this._functionsExecutedState,arrayFormulaCellData:this.getRuntimeArrayFormulaCellData(),clearArrayFormulaCellData:this.getRuntimeClearArrayFormulaCellData(),imageFormulaData:this.getRuntimeImageFormulaData(),runtimeFeatureRange:this.getRuntimeFeatureRange(),runtimeFeatureCellData:this.getRuntimeFeatureCellData(),dependencyTreeModelData:this.getDependencyTreeModelData()}}getRuntimeState(){return{totalFormulasToCalculate:this.getTotalFormulasToCalculate(),completedFormulasCount:this.getCompletedFormulasCount(),totalArrayFormulasToCalculate:this.getTotalArrayFormulasToCalculate(),completedArrayFormulasCount:this.getCompletedArrayFormulasCount(),stage:this.getFormulaExecuteStage(),formulaCycleIndex:this.getFormulaCycleIndex()}}clearArrayObjectCache(){to.clear()}_checkIfArrayFormulaRangeHasData(e,t,n,r,i){var a;let{startRow:o,startColumn:s,endRow:c,endColumn:l}=i,u=this._currentConfigService.getUnitData(),d=this._currentConfigService.getArrayFormulaCellData();(a=this._unitArrayFormulaRange[e])==null||(a=a[t])==null||(a=a[n])==null||a[r];for(let i=o;i<=c;i++)for(let a=s;a<=l;a++){var f,p,m;if(i===n&&r===a)continue;let o=(f=this._runtimeData)==null||(f=f[e])==null||(f=f[t])==null?void 0:f.getValue(i,a);d==null||(p=d[e])==null||(p=p[t])==null||p.getValue(i,a);let s=u==null||(m=u[e])==null||(m=m[t])==null||(m=m.cellData)==null?void 0:m.getValue(i,a),c=this._getRuntimeFeatureCellValue(i,a,t,e);if(!mr(o)||this._isInOtherArrayFormulaRange(e,t,n,r,i,a)||!mr(s)||!mr(c))return!0}return!1}_getRuntimeFeatureCellValue(e,t,n,r){return _r(e,t,n,r,this._runtimeFeatureCellData)}_arrayCellHasData(e){return e==null?!1:e.v!==void 0}_isInOtherArrayFormulaRange(e,n,r,i,a,o){var s;let c=(s=this._currentConfigService.getArrayFormulaRange()[e])==null?void 0:s[n];if(c==null)return!1;let l=!1;return new t.ObjectMatrix(c).forValue((t,s,c)=>{var u;if(t===r&&s===i)return;let d=this._isInArrayFormulaRange(c,a,o),f=(u=this._runtimeData[e])==null||(u=u[n])==null?void 0:u.getValue(t,s);d&&(f==null?void 0:f.v)!==p.SPILL&&(l=!0)}),l}_isInArrayFormulaRange(e,t,n){if(e==null)return!1;let{startRow:r,startColumn:i,endRow:a,endColumn:o}=e;return t>=r&&t<=a&&n>=i&&n<=o}_checkIfArrayFormulaExceeded(e,t,n){return n.endRow>=e||n.endColumn>=t}_isInDirtyRange(e,t,n,r){let i=this._currentConfigService.getDirtyRanges();return i.length===0?!0:ke(i,e,t,n,r)}};Ao=un([A(0,fr),A(1,Do)],Ao);let jo=(0,t.createIdentifier)(`univer.formula.runtime.service`),H=function(e){return e[e.REFERENCE=1]=`REFERENCE`,e[e.VALUE=2]=`VALUE`,e[e.OPERATOR=3]=`OPERATOR`,e[e.FUNCTION=4]=`FUNCTION`,e[e.LAMBDA=5]=`LAMBDA`,e[e.LAMBDA_PARAMETER=6]=`LAMBDA_PARAMETER`,e[e.ERROR=7]=`ERROR`,e[e.BASE=8]=`BASE`,e[e.ROOT=9]=`ROOT`,e[e.UNION=10]=`UNION`,e[e.PREFIX=11]=`PREFIX`,e[e.SUFFIX=12]=`SUFFIX`,e[e.NULL=13]=`NULL`,e}({}),Mo=new Map([[H.REFERENCE,7],[H.VALUE,9],[H.OPERATOR,8],[H.FUNCTION,6],[H.LAMBDA,1],[H.LAMBDA_PARAMETER,2],[H.ROOT,10],[H.UNION,3],[H.PREFIX,4],[H.SUFFIX,5]]);var No=class{constructor(e){this._token=e,d(this,`_children`,[]),d(this,`_definedNames`,void 0),d(this,`_parent`,void 0),d(this,`_valueObject`,void 0),d(this,`_calculateState`,!1),d(this,`_async`,!1),d(this,`_address`,!1),d(this,`_isForcedCalculateFunction`,!1)}dispose(){var e;this._children.forEach(e=>{e.dispose()}),(e=this._valueObject)==null||e.dispose(),this._valueObject=null,this._children=[],this._definedNames=null,this._parent=null}get nodeType(){return H.BASE}resetCalculationState(){this._children.forEach(e=>{e.resetCalculationState()}),this._valueObject=null,this._calculateState=!1}isAsync(){return this._async}isAddress(){return this._address}isForcedCalculateFunction(){return this._isForcedCalculateFunction}setAsync(){this._async=!0}setAddress(){this._address=!0}getParent(){return this._parent}setParent(e){this._parent=e,e.addChildren(this)}setForcedCalculateFunction(){this._isForcedCalculateFunction=!0}getChildren(){return this._children}addChildren(...e){this._children.push(...e)}getToken(){return this._token}setValue(e){this._valueObject=e}getValue(){return this._valueObject}isCalculated(){return this._calculateState}setCalculated(){this._calculateState=!0}execute(){}setNotEmpty(e=!0){}async executeAsync(){return Promise.resolve(a.SUCCESS)}serialize(){let e=this.getToken(),t=this.getChildren(),n=[],r=t.length;for(let e=0;e<r;e++){let r=t[e];n.push(r.serialize())}let i={token:e,nodeType:this.nodeType};return r>0&&(i.children=n),i}hasDefinedName(e){var t;return((t=this._definedNames)==null?void 0:t.includes(e))||!1}setDefinedNames(e){this._definedNames=e}getDefinedNames(){return this._definedNames}},Po=class e extends No{constructor(e){super(e),d(this,`_errorValueObject`,void 0),this._errorValueObject=E.create(e)}get nodeType(){return H.ERROR}static create(t){return new e(t)}getValue(){return this._errorValueObject}},Fo=class{get zIndex(){return 0}dispose(){}create(e,t,n){let r;return r=e instanceof j?e.getToken():e,new No(r)}},Io=class extends No{get nodeType(){return H.ROOT}execute(){let e=this.getChildren();if(e.length>1){this.setValue(E.create(p.VALUE));return}let t=e[0];t==null?this.setValue(E.create(p.VALUE)):this.setValue(t.getValue())}},Lo=class extends Fo{get zIndex(){return Mo.get(H.ROOT)||100}checkAndCreateNodeType(e){if(e instanceof j&&e.getToken()===`R_1`)return new Io(`R_1`)}};let Ro=function(e){return e.DATE=`DATE`,e.DATEDIF=`DATEDIF`,e.DATEVALUE=`DATEVALUE`,e.DAY=`DAY`,e.DAYS=`DAYS`,e.DAYS360=`DAYS360`,e.EDATE=`EDATE`,e.EOMONTH=`EOMONTH`,e.EPOCHTODATE=`EPOCHTODATE`,e.HOUR=`HOUR`,e.ISOWEEKNUM=`ISOWEEKNUM`,e.MINUTE=`MINUTE`,e.MONTH=`MONTH`,e.NETWORKDAYS=`NETWORKDAYS`,e.NETWORKDAYS_INTL=`NETWORKDAYS.INTL`,e.NOW=`NOW`,e.SECOND=`SECOND`,e.TIME=`TIME`,e.TIMEVALUE=`TIMEVALUE`,e.TO_DATE=`TO_DATE`,e.TODAY=`TODAY`,e.WEEKDAY=`WEEKDAY`,e.WEEKNUM=`WEEKNUM`,e.WORKDAY=`WORKDAY`,e.WORKDAY_INTL=`WORKDAY.INTL`,e.YEAR=`YEAR`,e.YEARFRAC=`YEARFRAC`,e}({}),U=function(e){return e.BESSELI=`BESSELI`,e.BESSELJ=`BESSELJ`,e.BESSELK=`BESSELK`,e.BESSELY=`BESSELY`,e.BIN2DEC=`BIN2DEC`,e.BIN2HEX=`BIN2HEX`,e.BIN2OCT=`BIN2OCT`,e.BITAND=`BITAND`,e.BITLSHIFT=`BITLSHIFT`,e.BITOR=`BITOR`,e.BITRSHIFT=`BITRSHIFT`,e.BITXOR=`BITXOR`,e.COMPLEX=`COMPLEX`,e.CONVERT=`CONVERT`,e.DEC2BIN=`DEC2BIN`,e.DEC2HEX=`DEC2HEX`,e.DEC2OCT=`DEC2OCT`,e.DELTA=`DELTA`,e.ERF=`ERF`,e.ERF_PRECISE=`ERF.PRECISE`,e.ERFC=`ERFC`,e.ERFC_PRECISE=`ERFC.PRECISE`,e.GESTEP=`GESTEP`,e.HEX2BIN=`HEX2BIN`,e.HEX2DEC=`HEX2DEC`,e.HEX2OCT=`HEX2OCT`,e.IMABS=`IMABS`,e.IMAGINARY=`IMAGINARY`,e.IMARGUMENT=`IMARGUMENT`,e.IMCONJUGATE=`IMCONJUGATE`,e.IMCOS=`IMCOS`,e.IMCOSH=`IMCOSH`,e.IMCOT=`IMCOT`,e.IMCOTH=`IMCOTH`,e.IMCSC=`IMCSC`,e.IMCSCH=`IMCSCH`,e.IMDIV=`IMDIV`,e.IMEXP=`IMEXP`,e.IMLN=`IMLN`,e.IMLOG=`IMLOG`,e.IMLOG10=`IMLOG10`,e.IMLOG2=`IMLOG2`,e.IMPOWER=`IMPOWER`,e.IMPRODUCT=`IMPRODUCT`,e.IMREAL=`IMREAL`,e.IMSEC=`IMSEC`,e.IMSECH=`IMSECH`,e.IMSIN=`IMSIN`,e.IMSINH=`IMSINH`,e.IMSQRT=`IMSQRT`,e.IMSUB=`IMSUB`,e.IMSUM=`IMSUM`,e.IMTAN=`IMTAN`,e.IMTANH=`IMTANH`,e.OCT2BIN=`OCT2BIN`,e.OCT2DEC=`OCT2DEC`,e.OCT2HEX=`OCT2HEX`,e}({}),W=function(e){return e.ACCRINT=`ACCRINT`,e.ACCRINTM=`ACCRINTM`,e.AMORDEGRC=`AMORDEGRC`,e.AMORLINC=`AMORLINC`,e.COUPDAYBS=`COUPDAYBS`,e.COUPDAYS=`COUPDAYS`,e.COUPDAYSNC=`COUPDAYSNC`,e.COUPNCD=`COUPNCD`,e.COUPNUM=`COUPNUM`,e.COUPPCD=`COUPPCD`,e.CUMIPMT=`CUMIPMT`,e.CUMPRINC=`CUMPRINC`,e.DB=`DB`,e.DDB=`DDB`,e.DISC=`DISC`,e.DOLLARDE=`DOLLARDE`,e.DOLLARFR=`DOLLARFR`,e.DURATION=`DURATION`,e.EFFECT=`EFFECT`,e.FV=`FV`,e.FVSCHEDULE=`FVSCHEDULE`,e.INTRATE=`INTRATE`,e.IPMT=`IPMT`,e.IRR=`IRR`,e.ISPMT=`ISPMT`,e.MDURATION=`MDURATION`,e.MIRR=`MIRR`,e.NOMINAL=`NOMINAL`,e.NPER=`NPER`,e.NPV=`NPV`,e.ODDFPRICE=`ODDFPRICE`,e.ODDFYIELD=`ODDFYIELD`,e.ODDLPRICE=`ODDLPRICE`,e.ODDLYIELD=`ODDLYIELD`,e.PDURATION=`PDURATION`,e.PMT=`PMT`,e.PPMT=`PPMT`,e.PRICE=`PRICE`,e.PRICEDISC=`PRICEDISC`,e.PRICEMAT=`PRICEMAT`,e.PV=`PV`,e.RATE=`RATE`,e.RECEIVED=`RECEIVED`,e.RRI=`RRI`,e.SLN=`SLN`,e.SYD=`SYD`,e.TBILLEQ=`TBILLEQ`,e.TBILLPRICE=`TBILLPRICE`,e.TBILLYIELD=`TBILLYIELD`,e.VDB=`VDB`,e.XIRR=`XIRR`,e.XNPV=`XNPV`,e.YIELD=`YIELD`,e.YIELDDISC=`YIELDDISC`,e.YIELDMAT=`YIELDMAT`,e}({}),zo=function(e){return e.CELL=`CELL`,e.ERROR_TYPE=`ERROR.TYPE`,e.INFO=`INFO`,e.ISBETWEEN=`ISBETWEEN`,e.ISBLANK=`ISBLANK`,e.ISDATE=`ISDATE`,e.ISEMAIL=`ISEMAIL`,e.ISERR=`ISERR`,e.ISERROR=`ISERROR`,e.ISEVEN=`ISEVEN`,e.ISFORMULA=`ISFORMULA`,e.ISLOGICAL=`ISLOGICAL`,e.ISNA=`ISNA`,e.ISNONTEXT=`ISNONTEXT`,e.ISNUMBER=`ISNUMBER`,e.ISODD=`ISODD`,e.ISOMITTED=`ISOMITTED`,e.ISREF=`ISREF`,e.ISTEXT=`ISTEXT`,e.ISURL=`ISURL`,e.N=`N`,e.NA=`NA`,e.SHEET=`SHEET`,e.SHEETS=`SHEETS`,e.TYPE=`TYPE`,e}({}),Bo=function(e){return e.AND=`AND`,e.BYCOL=`BYCOL`,e.BYROW=`BYROW`,e.FALSE=`FALSE`,e.IF=`IF`,e.IFERROR=`IFERROR`,e.IFNA=`IFNA`,e.IFS=`IFS`,e.LAMBDA=`LAMBDA`,e.LET=`LET`,e.MAKEARRAY=`MAKEARRAY`,e.MAP=`MAP`,e.NOT=`NOT`,e.OR=`OR`,e.REDUCE=`REDUCE`,e.SCAN=`SCAN`,e.SWITCH=`SWITCH`,e.TRUE=`TRUE`,e.XOR=`XOR`,e}({}),G=function(e){return e.ADDRESS=`ADDRESS`,e.AREAS=`AREAS`,e.CHOOSE=`CHOOSE`,e.CHOOSECOLS=`CHOOSECOLS`,e.CHOOSEROWS=`CHOOSEROWS`,e.COLUMN=`COLUMN`,e.COLUMNS=`COLUMNS`,e.DROP=`DROP`,e.EXPAND=`EXPAND`,e.FILTER=`FILTER`,e.FORMULATEXT=`FORMULATEXT`,e.GETPIVOTDATA=`GETPIVOTDATA`,e.HLOOKUP=`HLOOKUP`,e.HSTACK=`HSTACK`,e.HYPERLINK=`HYPERLINK`,e.IMAGE=`IMAGE`,e.INDEX=`INDEX`,e.INDIRECT=`INDIRECT`,e.LOOKUP=`LOOKUP`,e.MATCH=`MATCH`,e.OFFSET=`OFFSET`,e.ROW=`ROW`,e.ROWS=`ROWS`,e.RTD=`RTD`,e.SORT=`SORT`,e.SORTBY=`SORTBY`,e.TAKE=`TAKE`,e.TOCOL=`TOCOL`,e.TOROW=`TOROW`,e.TRANSPOSE=`TRANSPOSE`,e.UNIQUE=`UNIQUE`,e.VLOOKUP=`VLOOKUP`,e.VSTACK=`VSTACK`,e.WRAPCOLS=`WRAPCOLS`,e.WRAPROWS=`WRAPROWS`,e.XLOOKUP=`XLOOKUP`,e.XMATCH=`XMATCH`,e}({}),K=function(e){return e.ABS=`ABS`,e.ACOS=`ACOS`,e.ACOSH=`ACOSH`,e.ACOT=`ACOT`,e.ACOTH=`ACOTH`,e.AGGREGATE=`AGGREGATE`,e.ARABIC=`ARABIC`,e.ASIN=`ASIN`,e.ASINH=`ASINH`,e.ATAN=`ATAN`,e.ATAN2=`ATAN2`,e.ATANH=`ATANH`,e.BASE=`BASE`,e.CEILING=`CEILING`,e.CEILING_MATH=`CEILING.MATH`,e.CEILING_PRECISE=`CEILING.PRECISE`,e.COMBIN=`COMBIN`,e.COMBINA=`COMBINA`,e.COS=`COS`,e.COSH=`COSH`,e.COT=`COT`,e.COTH=`COTH`,e.CSC=`CSC`,e.CSCH=`CSCH`,e.DECIMAL=`DECIMAL`,e.DEGREES=`DEGREES`,e.EVEN=`EVEN`,e.EXP=`EXP`,e.FACT=`FACT`,e.FACTDOUBLE=`FACTDOUBLE`,e.FLOOR=`FLOOR`,e.FLOOR_MATH=`FLOOR.MATH`,e.FLOOR_PRECISE=`FLOOR.PRECISE`,e.GCD=`GCD`,e.INT=`INT`,e.ISO_CEILING=`ISO.CEILING`,e.LCM=`LCM`,e.LET=`LET`,e.LN=`LN`,e.LOG=`LOG`,e.LOG10=`LOG10`,e.MDETERM=`MDETERM`,e.MINVERSE=`MINVERSE`,e.MMULT=`MMULT`,e.MOD=`MOD`,e.MROUND=`MROUND`,e.MULTINOMIAL=`MULTINOMIAL`,e.MUNIT=`MUNIT`,e.ODD=`ODD`,e.PI=`PI`,e.POWER=`POWER`,e.PRODUCT=`PRODUCT`,e.QUOTIENT=`QUOTIENT`,e.RADIANS=`RADIANS`,e.RAND=`RAND`,e.RANDARRAY=`RANDARRAY`,e.RANDBETWEEN=`RANDBETWEEN`,e.ROMAN=`ROMAN`,e.ROUND=`ROUND`,e.ROUNDBANK=`ROUNDBANK`,e.ROUNDDOWN=`ROUNDDOWN`,e.ROUNDUP=`ROUNDUP`,e.SEC=`SEC`,e.SECH=`SECH`,e.SERIESSUM=`SERIESSUM`,e.SEQUENCE=`SEQUENCE`,e.SIGN=`SIGN`,e.SIN=`SIN`,e.SINH=`SINH`,e.SQRT=`SQRT`,e.SQRTPI=`SQRTPI`,e.SUBTOTAL=`SUBTOTAL`,e.SUM=`SUM`,e.SUMIF=`SUMIF`,e.SUMIFS=`SUMIFS`,e.SUMPRODUCT=`SUMPRODUCT`,e.SUMSQ=`SUMSQ`,e.SUMX2MY2=`SUMX2MY2`,e.SUMX2PY2=`SUMX2PY2`,e.SUMXMY2=`SUMXMY2`,e.TAN=`TAN`,e.TANH=`TANH`,e.TRUNC=`TRUNC`,e}({}),q=function(e){return e.AVEDEV=`AVEDEV`,e.AVERAGE=`AVERAGE`,e.AVERAGE_WEIGHTED=`AVERAGE.WEIGHTED`,e.AVERAGEA=`AVERAGEA`,e.AVERAGEIF=`AVERAGEIF`,e.AVERAGEIFS=`AVERAGEIFS`,e.BETA_DIST=`BETA.DIST`,e.BETA_INV=`BETA.INV`,e.BINOM_DIST=`BINOM.DIST`,e.BINOM_DIST_RANGE=`BINOM.DIST.RANGE`,e.BINOM_INV=`BINOM.INV`,e.CHISQ_DIST=`CHISQ.DIST`,e.CHISQ_DIST_RT=`CHISQ.DIST.RT`,e.CHISQ_INV=`CHISQ.INV`,e.CHISQ_INV_RT=`CHISQ.INV.RT`,e.CHISQ_TEST=`CHISQ.TEST`,e.CONFIDENCE_NORM=`CONFIDENCE.NORM`,e.CONFIDENCE_T=`CONFIDENCE.T`,e.CORREL=`CORREL`,e.COUNT=`COUNT`,e.COUNTA=`COUNTA`,e.COUNTBLANK=`COUNTBLANK`,e.COUNTIF=`COUNTIF`,e.COUNTIFS=`COUNTIFS`,e.COVARIANCE_P=`COVARIANCE.P`,e.COVARIANCE_S=`COVARIANCE.S`,e.DEVSQ=`DEVSQ`,e.EXPON_DIST=`EXPON.DIST`,e.F_DIST=`F.DIST`,e.F_DIST_RT=`F.DIST.RT`,e.F_INV=`F.INV`,e.F_INV_RT=`F.INV.RT`,e.F_TEST=`F.TEST`,e.FISHER=`FISHER`,e.FISHERINV=`FISHERINV`,e.FORECAST=`FORECAST`,e.FORECAST_ETS=`FORECAST.ETS`,e.FORECAST_ETS_CONFINT=`FORECAST.ETS.CONFINT`,e.FORECAST_ETS_SEASONALITY=`FORECAST.ETS.SEASONALITY`,e.FORECAST_ETS_STAT=`FORECAST.ETS.STAT`,e.FORECAST_LINEAR=`FORECAST.LINEAR`,e.FREQUENCY=`FREQUENCY`,e.GAMMA=`GAMMA`,e.GAMMA_DIST=`GAMMA.DIST`,e.GAMMA_INV=`GAMMA.INV`,e.GAMMALN=`GAMMALN`,e.GAMMALN_PRECISE=`GAMMALN.PRECISE`,e.GAUSS=`GAUSS`,e.GEOMEAN=`GEOMEAN`,e.GROWTH=`GROWTH`,e.HARMEAN=`HARMEAN`,e.HYPGEOM_DIST=`HYPGEOM.DIST`,e.INTERCEPT=`INTERCEPT`,e.KURT=`KURT`,e.LARGE=`LARGE`,e.LINEST=`LINEST`,e.LOGEST=`LOGEST`,e.LOGNORM_DIST=`LOGNORM.DIST`,e.LOGNORM_INV=`LOGNORM.INV`,e.MARGINOFERROR=`MARGINOFERROR`,e.MAX=`MAX`,e.MAXA=`MAXA`,e.MAXIFS=`MAXIFS`,e.MEDIAN=`MEDIAN`,e.MIN=`MIN`,e.MINA=`MINA`,e.MINIFS=`MINIFS`,e.MODE_MULT=`MODE.MULT`,e.MODE_SNGL=`MODE.SNGL`,e.NEGBINOM_DIST=`NEGBINOM.DIST`,e.NORM_DIST=`NORM.DIST`,e.NORM_INV=`NORM.INV`,e.NORM_S_DIST=`NORM.S.DIST`,e.NORM_S_INV=`NORM.S.INV`,e.PEARSON=`PEARSON`,e.PERCENTILE_EXC=`PERCENTILE.EXC`,e.PERCENTILE_INC=`PERCENTILE.INC`,e.PERCENTRANK_EXC=`PERCENTRANK.EXC`,e.PERCENTRANK_INC=`PERCENTRANK.INC`,e.PERMUT=`PERMUT`,e.PERMUTATIONA=`PERMUTATIONA`,e.PHI=`PHI`,e.POISSON_DIST=`POISSON.DIST`,e.PROB=`PROB`,e.QUARTILE_EXC=`QUARTILE.EXC`,e.QUARTILE_INC=`QUARTILE.INC`,e.RANK_AVG=`RANK.AVG`,e.RANK_EQ=`RANK.EQ`,e.RSQ=`RSQ`,e.SKEW=`SKEW`,e.SKEW_P=`SKEW.P`,e.SLOPE=`SLOPE`,e.SMALL=`SMALL`,e.STANDARDIZE=`STANDARDIZE`,e.STDEV_P=`STDEV.P`,e.STDEV_S=`STDEV.S`,e.STDEVA=`STDEVA`,e.STDEVPA=`STDEVPA`,e.STEYX=`STEYX`,e.T_DIST=`T.DIST`,e.T_DIST_2T=`T.DIST.2T`,e.T_DIST_RT=`T.DIST.RT`,e.T_INV=`T.INV`,e.T_INV_2T=`T.INV.2T`,e.T_TEST=`T.TEST`,e.TREND=`TREND`,e.TRIMMEAN=`TRIMMEAN`,e.VAR_P=`VAR.P`,e.VAR_S=`VAR.S`,e.VARA=`VARA`,e.VARPA=`VARPA`,e.WEIBULL_DIST=`WEIBULL.DIST`,e.Z_TEST=`Z.TEST`,e}({}),J=function(e){return e.ASC=`ASC`,e.ARRAYTOTEXT=`ARRAYTOTEXT`,e.BAHTTEXT=`BAHTTEXT`,e.CHAR=`CHAR`,e.CLEAN=`CLEAN`,e.CODE=`CODE`,e.CONCAT=`CONCAT`,e.CONCATENATE=`CONCATENATE`,e.DBCS=`DBCS`,e.DOLLAR=`DOLLAR`,e.EXACT=`EXACT`,e.FIND=`FIND`,e.FINDB=`FINDB`,e.FIXED=`FIXED`,e.LEFT=`LEFT`,e.LEFTB=`LEFTB`,e.LEN=`LEN`,e.LENB=`LENB`,e.LOWER=`LOWER`,e.MID=`MID`,e.MIDB=`MIDB`,e.NUMBERSTRING=`NUMBERSTRING`,e.NUMBERVALUE=`NUMBERVALUE`,e.PHONETIC=`PHONETIC`,e.PROPER=`PROPER`,e.REGEXEXTRACT=`REGEXEXTRACT`,e.REGEXMATCH=`REGEXMATCH`,e.REGEXREPLACE=`REGEXREPLACE`,e.REPLACE=`REPLACE`,e.REPLACEB=`REPLACEB`,e.REPT=`REPT`,e.RIGHT=`RIGHT`,e.RIGHTB=`RIGHTB`,e.SEARCH=`SEARCH`,e.SEARCHB=`SEARCHB`,e.SUBSTITUTE=`SUBSTITUTE`,e.T=`T`,e.TEXT=`TEXT`,e.TEXTAFTER=`TEXTAFTER`,e.TEXTBEFORE=`TEXTBEFORE`,e.TEXTJOIN=`TEXTJOIN`,e.TEXTSPLIT=`TEXTSPLIT`,e.TRIM=`TRIM`,e.UNICHAR=`UNICHAR`,e.UNICODE=`UNICODE`,e.UPPER=`UPPER`,e.VALUE=`VALUE`,e.VALUETOTEXT=`VALUETOTEXT`,e.CALL=`CALL`,e.EUROCONVERT=`EUROCONVERT`,e.REGISTER_ID=`REGISTER.ID`,e}({}),Vo=function(e){return e.ENCODEURL=`ENCODEURL`,e.FILTERXML=`FILTERXML`,e.WEBSERVICE=`WEBSERVICE`,e}({}),Ho=[Ro,U,W,zo,Bo,G,K,q,J,Vo],Uo=new Set(Ho.flatMap(e=>Object.values(e)).filter(e=>/^[A-Z]{1,3}$/.test(e)).filter(e=>{let n=(0,t.columnLabelToNumber)(e);return n>0&&n<=t.MAX_COLUMN_COUNT})),Wo=new f(5e3);function Go(e,t,n,r,i){let a=Wo.get(`${e}${t}`);if(a&&!Ko(a,i))return a;let o=n.treeBuilder(t);return m.has(o)?Po.create(o):(a=r.parse(o),a==null?(console.error(`generateAstNode astNode is null`),Po.create(o)):(Wo.set(`${e}${t}`,a),a))}function Ko(e,t){let n=t.getDirtyDefinedNameMap(),r=t.getExecuteUnitId();if(r!=null&&n[r]!=null){let t=Object.keys(n[r]);for(let n=0,r=t.length;n<r;n++){let r=t[n];if(e.hasDefinedName(r))return!0}}return!1}function qo(e,t,n){return!!(t!=null&&Ko(t,n))}let Jo=(0,t.createIdentifier)(`univer.formula-function.service`);var Yo=class extends t.Disposable{constructor(...e){super(...e),d(this,`_functionExecutors`,new Map),d(this,`_functionDescriptions`,new Map)}dispose(){super.dispose(),this._functionExecutors.clear(),this._functionDescriptions.clear()}registerExecutors(...e){for(let t=0;t<e.length;t++){let n=e[t];this._functionExecutors.set(n.name,n)}}getExecutors(){return this._functionExecutors}getExecutor(e){return this._functionExecutors.get(e)}hasExecutor(e){return this._functionExecutors.has(e)}unregisterExecutors(...e){for(let t=0;t<e.length;t++){let n=e[t];this._functionExecutors.delete(n)}}registerDescriptions(...e){for(let t=0;t<e.length;t++){let n=e[t];this._functionDescriptions.set(n.functionName,n)}return(0,t.toDisposable)(()=>{for(let t=0;t<e.length;t++){let n=e[t];this._functionDescriptions.delete(n.functionName)}})}getDescriptions(){return this._functionDescriptions}getDescription(e){return this._functionDescriptions.get(e)}hasDescription(e){return this._functionDescriptions.has(e)}unregisterDescriptions(...e){for(let t=0;t<e.length;t++){let n=e[t];this._functionDescriptions.delete(n)}}deleteFormulaAstCacheKey(...e){Wo.forEach((t,n)=>{e.forEach(e=>{n.includes(e)&&Wo.delete(n)})})}};let Xo=function(e){return e.COMPARE=`COMPARE`,e.DIVIDED=`DIVIDED`,e.MINUS=`MINUS`,e.MULTIPLY=`MULTIPLY`,e.PLUS=`PLUS`,e.UNION=`UNION`,e.CUBE=`CUBE`,e}({});var Zo=class extends No{constructor(e,t,n){super(t),this._runtimeService=e,this._operatorString=t,this._functionExecutor=n}get nodeType(){return H.PREFIX}execute(){let e=this.getChildren()[0].getValue(),t;if(e==null){console.error(`PrefixNode execute value is null`),this.setValue(E.create(p.VALUE));return}this._operatorString===T.MINUS?(e.isReferenceObject()&&(e=e.toArrayValueObject()),t=this._functionExecutor.calculate(R.create(0),e)):t=this._operatorString===T.AT?this._handlerAT(e):E.create(p.VALUE),this.setValue(t)}_handlerAT(e){if(!e.isReferenceObject())return E.create(p.VALUE);let t=e;if(t.isCell())return E.create(p.VALUE);let n=this._runtimeService,r=n.currentRow||0,i=n.currentColumn||0,{startRow:a,startColumn:o,endRow:s,endColumn:c}=t.getRangePosition();return c!==o&&s!==a||a===s&&o===c?E.create(p.VALUE):s===a&&i>=o&&i<=c?t.getCellByColumn(i):o===c&&r>=a&&r<=s?t.getCellByRow(r):t.isTable()?t.getCellByPosition(r):E.create(p.VALUE)}};let Qo=class extends Fo{constructor(e,t){super(),this._functionService=e,this._runtimeService=t}get zIndex(){return Mo.get(H.PREFIX)||100}checkAndCreateNodeType(e){if(!(e instanceof j))return;let t=e.getToken(),n=t.trim();if(n.charAt(0)===`"`&&n.charAt(n.length-1)===`"`)return;let r=``;if(n===T.MINUS)r=Xo.MINUS;else if(n===T.AT)return new Zo(this._runtimeService,n);else return;let i=this._functionService.getExecutor(r);return i?new Zo(this._runtimeService,n,i):(console.error(`No function ${t}`),Po.create(p.NAME))}};Qo=un([A(0,Jo),A(1,jo)],Qo);function $o(e,t,n){let r,i,a=e,o=a[0],s=0;if(o===T.MINUS){let e=t.getExecutor(Xo.MINUS);r=new Zo(n,T.MINUS,e),s++}else o===T.AT&&(i=new Zo(n,T.AT),r&&i.setParent(r),s++);return s>0&&(a=a.slice(s)),{tokenTrim:a,minusPrefixNode:r,atPrefixNode:i}}var es=class extends No{constructor(e,t,n,r,i,a){super(e),this._functionExecutor=t,this._currentConfigService=n,this._runtimeService=r,this._definedNamesService=i,this._formulaDataModel=a,this._functionExecutor.isAsync()&&this.setAsync(),this._functionExecutor.isAddress()&&this.setAddress(),this._functionExecutor.needsLocale&&this._setLocale(),this._functionExecutor.needsSheetsInfo&&this._setSheetsInfo(),this._functionExecutor.needsFormulaDataModel&&this._functionExecutor.setFormulaDataModel(this._formulaDataModel)}get nodeType(){return H.FUNCTION}async executeAsync(){let e=[],t=this.getChildren(),n=t.length;this._compatibility();for(let r=0;r<n;r++){let n=t[r].getValue();n!=null&&(n.isReferenceObject()&&!this._functionExecutor.needsReferenceObject?e.push(n.toArrayValueObject()):e.push(n))}let r=await this._calculateAsync(e),i;return i=r.isAsyncObject()||r.isAsyncArrayObject()?await r.getValue():r,this._setEmbeddedArrayFormulaToResult(i),this._setRefData(i),this.setValue(i),Promise.resolve(a.SUCCESS)}execute(){let e=[],t=this.getChildren(),n=t.length;this._compatibility();for(let r=0;r<n;r++){let n=t[r].getValue();n!=null&&(n.isReferenceObject()&&this._functionExecutor.needsFilteredOutRows&&this._setFilteredOutRows(n),n.isReferenceObject()&&!this._functionExecutor.needsReferenceObject?e.push(n.toArrayValueObject()):e.push(n))}let r=this._calculate(e);this._setEmbeddedArrayFormulaToResult(r),this._setRefData(r),this.setValue(r)}isFunctionExecutorArgumentsIgnoreNumberPattern(){return this._functionExecutor.isArgumentsIgnoreNumberPattern()}_setEmbeddedArrayFormulaToResult(e){if(!e.isArray())return;let t=e.getRowCount(),n=e.getColumnCount();t<=1&&n<=1||this._runtimeService.setUnitArrayFormulaEmbeddedMap()}_compatibility(){this._lookupCompatibility()}_lookupCompatibility(){let e=this.getChildren(),t=e.length;if(!this._functionExecutor.needsExpandParams||t!==3)return;let n=e[1].getValue(),r=e[2].getValue();if(!(n!=null&&n.isReferenceObject())&&!(r!=null&&r.isReferenceObject()))return;let i,a;if(n!=null&&n.isReferenceObject()){let{startRow:e,startColumn:t,endRow:r,endColumn:o}=n.getRangeData();i=r-e+1,a=o-t+1}else i=n!=null&&n.isArray()?n.getRowCount():1,a=n!=null&&n.isArray()?n.getColumnCount():1;let o=r.getRangeData(),{startRow:s,startColumn:c,endRow:l,endColumn:u}=o,d=l-s+1,f=u-c+1;i!==d&&(o.endRow+=i-d),a!==f&&(o.endColumn+=a-f)}_handleCustomResult(e){var t;if(typeof e!=`object`||!e)return $a.create(e);let n=Za(e);return B.create({calculateValueList:n,rowCount:n.length,columnCount:((t=n[0])==null?void 0:t.length)||0,unitId:``,sheetId:``,row:-1,column:-1})}_handleAddressFunction(){this._functionExecutor.isAddress()&&this._setDefinedNamesForFunction()}_mapVariantsToValues(e){return e.map(e=>e.isArray()?e.toValue():e.isLambda()?e:e.getValue())}_calculate(e){let{minParams:t,maxParams:n}=this._functionExecutor;if(t!==-1&&n!==-1&&(e.length<t||e.length>n))return E.create(p.NA);let r;if(this._setRefInfo(),this._functionExecutor.isCustom()){let t=this._functionExecutor.calculateCustom(...this._mapVariantsToValues(e));r=this._handleCustomResult(t)}else this._handleAddressFunction(),r=this._functionExecutor.calculate(...e);return r}async _calculateAsync(e){let{minParams:t,maxParams:n}=this._functionExecutor;if(t!==-1&&n!==-1&&(e.length<t||e.length>n))return E.create(p.NA);let r;if(this._setRefInfo(),this._functionExecutor.isCustom()){let t=await this._functionExecutor.calculateCustom(...this._mapVariantsToValues(e));r=this._handleCustomResult(t)}else this._handleAddressFunction(),r=this._functionExecutor.calculate(...e);return r}_setDefinedNamesForFunction(){let e=this._currentConfigService.getExecuteUnitId();if(e==null)return;let t=this._definedNamesService.getDefinedNameMap(e);t!=null&&this._functionExecutor.setDefinedNames(t)}_setRefInfo(){let{currentUnitId:e,currentSubUnitId:t,currentRow:n,currentColumn:r}=this._runtimeService;if(this._functionExecutor.setRefInfo(e,t,n,r),this._functionExecutor.needsSheetRowColumnCount){let{rowCount:n,columnCount:r}=this._currentConfigService.getSheetRowColumnCount(e,t);this._functionExecutor.setSheetRowColumnCount(n,r)}}_setRefData(e){if(!e.isReferenceObject())return;let t=e;t.setForcedSheetId(this._currentConfigService.getSheetNameMap()),t.setUnitData(this._currentConfigService.getUnitData()),t.setArrayFormulaCellData(this._currentConfigService.getArrayFormulaCellData()),t.setArrayFormulaRange(this._currentConfigService.getArrayFormulaRange()),t.setRuntimeData(this._runtimeService.getUnitData()),t.setRuntimeArrayFormulaCellData(this._runtimeService.getRuntimeArrayFormulaCellData()),t.setRuntimeArrayFormulaRange(this._runtimeService.getUnitArrayFormula()),t.setRuntimeFeatureCellData(this._runtimeService.getRuntimeFeatureCellData())}_setLocale(){this._functionExecutor.setLocale(this._currentConfigService.getLocale())}_setSheetsInfo(){this._functionExecutor.setSheetsInfo(this._currentConfigService.getSheetsInfo())}_setFilteredOutRows(e){let{startRow:t,endRow:n}=e.getRangePosition(),r=this._currentConfigService.getFilteredOutRows(e.getUnitId(),e.getSheetId(),t,n);e.setFilteredOutRows(r)}},ts=class extends No{constructor(e=`Error`){super(e)}get nodeType(){return H.FUNCTION}async executeAsync(){return this.setValue(E.create(p.NAME)),Promise.resolve(a.SUCCESS)}execute(){this.setValue(E.create(p.NAME))}};let ns=class extends Fo{constructor(e,t,n,r,i,a){super(),this._functionService=e,this._currentConfigService=t,this._runtimeService=n,this._definedNamesService=r,this._injector=i,this._formulaDataModel=a}get zIndex(){return Mo.get(H.FUNCTION)||100}create(e){let t=this._functionService.getExecutor(e);return t?new es(e,t,this._currentConfigService,this._runtimeService,this._definedNamesService,this._formulaDataModel):(console.error(`No function ${e}`),Po.create(p.NAME))}checkAndCreateNodeType(e){if(typeof e==`string`)return;let{tokenTrim:t,minusPrefixNode:n,atPrefixNode:r}=$o(e.getToken().trim(),this._functionService,this._runtimeService),i=this._isParentUnionNode(e);if(!Number.isNaN(Number(t))&&!i)return Po.create(p.VALUE);let a=t.toUpperCase();if(!(i&&Uo.has(a))&&this._functionService.hasExecutor(a)){let e=this.create(a);return r?e.setParent(r):n&&e.setParent(n),e}}_isParentUnionNode(e){var t;return((t=e.getParent())==null||(t=t.getParent())==null?void 0:t.getToken())===S.COLON}};ns=un([A(0,Jo),A(1,fr),A(2,jo),A(3,fn),A(4,(0,t.Inject)(t.Injector)),A(5,(0,t.Inject)(nr))],ns);let rs=class extends t.Disposable{constructor(e){super(),this._runtimeService=e}async executeAsync(e){if(!e||!e.node)return Promise.resolve(E.create(p.VALUE));let t=e.node,n=e.refOffsetX,r=e.refOffsetY;await this._executeAsync(t,n,r);let i=t.getValue();return i==null?Promise.resolve(E.create(p.VALUE)):Promise.resolve(i)}execute(e){if(!e||!e.node)return E.create(p.VALUE);let t=e.node,n=e.refOffsetX,r=e.refOffsetY;this._execute(t,n,r);let i=t.getValue();return i==null?E.create(p.VALUE):i}executePreCalculateNode(e){return e.execute(),e.getValue()}checkAsyncNode(e){if(e==null)return!1;let t=[];this._checkAsyncNode(e,t);for(let e=0,n=t.length;e<n;e++)if(t[e]===!0)return!0;return!1}_checkAsyncNode(e,t){let n=e.getChildren(),r=n.length;for(let e=0;e<r;e++){let r=n[e];t.push(r.isAsync()),this._checkAsyncNode(r,t)}}async _executeAsync(e,t=0,n=0){if(this._runtimeService.isStopExecution())return Promise.resolve(a.ERROR);let r=e.getChildren(),i=r.length;for(let e=0;e<i;e++){let i=r[e];if(i.getToken().toUpperCase()===`LAMBDA`&&i.isEmptyParamFunction()){i.execute();continue}await this._executeAsync(i,t,n)}return e.nodeType===H.REFERENCE&&e.setRefOffset(t,n),e.nodeType===H.FUNCTION&&e.isAsync()?await e.executeAsync():e.execute(),Promise.resolve(a.SUCCESS)}_execute(e,t=0,n=0){if(this._runtimeService.isStopExecution())return a.ERROR;let r=e.getChildren(),i=r.length;for(let e=0;e<i;e++){let i=r[e];if(i.getToken().toUpperCase()===`LAMBDA`&&i.isEmptyParamFunction()){i.execute();continue}this._execute(i,t,n)}return e.nodeType===H.REFERENCE&&e.setRefOffset(t,n),e.execute(),a.SUCCESS}};rs=un([A(0,jo)],rs);function is(e){return e instanceof j?e.getToken()===`L_1`:!1}function as(e){return e instanceof j?e.getToken()===Mt:!1}function os(e,t,n){let r=e.getChildren(),i=r.length,a=r[0];for(let e=0;e<i;e++){let i=r[e];if(!(is(a)&&e!==0))if(i instanceof j)os(i,t,n);else{let a=i.trim();if(n.has(a)){let i=new j;i.setToken(`LR_1`),i.setLambdaId(t),i.setLambdaPrivacyVar(n),i.setLambdaParameter(a),r[e]=i}}}}function ss(e){let t=e;for(;t!=null&&t.getParent();)t=t.getParent();return t}function cs(e,t=0,n=0){return{node:e,refOffsetX:t,refOffsetY:n}}function ls(e){if(!e)return;if(e.getToken()!==`LR_1`)return e;let t=e,n=t.getCurrentLambdaPrivacyVar(),r=t.getLambdaParameter();if(!n)return;let i=n.get(r);return i==null&&e.getValue()?e:ls(i)}var us=class e extends ee{static create(t,n,r){return new e(t,n,r)}constructor(e,t,n){super(0),this._lambdaNode=e,this._interpreter=t,this._lambdaPrivacyVarKeys=n,d(this,`_lambdaPrivacyValueMap`,new Map),this._lambdaPrivacyValueMap.clear()}dispose(){this._lambdaPrivacyValueMap.clear(),this._lambdaPrivacyValueMap=new Map,this._lambdaNode=null,this._interpreter=null,this._lambdaPrivacyVarKeys=[]}isLambda(){return!0}execute(...e){let t=this._lambdaPrivacyVarKeys.length;if(e.length!==t||!this._interpreter||!this._lambdaNode)return E.create(p.VALUE);this._setLambdaPrivacyValueMap(e),this._setLambdaNodeValue(this._lambdaNode),this._lambdaNode.setNotEmpty(!1);let n;if(this._interpreter.checkAsyncNode(this._lambdaNode))n=new ro(this._interpreter.executeAsync(cs(this._lambdaNode)));else{let e=this._interpreter.execute(cs(this._lambdaNode));n=e.isReferenceObject()?e.toArrayValueObject():e}return this._lambdaNode.setNotEmpty(!0),n}executeCustom(...e){let t=e.map(e=>$a.create(e));return this.execute(...t)}_setLambdaNodeValue(e){if(!e)return;let t=e.getChildren(),n=t.length;for(let e=0;e<n;e++){let n=t[e];if(n.getToken()===`LR_1`){let e=n.getLambdaParameter(),t=this._lambdaPrivacyValueMap.get(e);if(t)n.setValue(t);else{let t=ls(n.getCurrentLambdaPrivacyVar().get(e));t!=null&&n.setValue(t.getValue())}continue}this._setLambdaNodeValue(n)}}_setLambdaPrivacyValueMap(e){for(let t=0;t<e.length;t++){let n=e[t],r=this._lambdaPrivacyVarKeys[t];this._lambdaPrivacyValueMap.set(r,n)}}getLambdaPrivacyVarKeys(){return this._lambdaPrivacyVarKeys}},ds=class extends No{constructor(e,t,n,r,i){super(e),this._lambdaId=t,this._interpreter=n,this._lambdaPrivacyVarKeys=r,this._runtimeService=i,d(this,`_isNotEmpty`,!0)}get nodeType(){return H.LAMBDA}setNotEmpty(e=!1){this._isNotEmpty=e}isEmptyParamFunction(){return this.getChildren().length<2&&this._isNotEmpty}isFunctionParameter(){return this._lambdaId===null}getLambdaId(){return this._lambdaId}execute(){if(this.isEmptyParamFunction())this.setValue(us.create(this,this._interpreter,this._lambdaPrivacyVarKeys));else{let e=this.getChildren(),t=e.length;this.setValue(e[t-1].getValue())}this._runtimeService.setUnitArrayFormulaEmbeddedMap()}};let fs=class extends Fo{constructor(e,t){super(),this._runtimeService=e,this._interpreter=t}get zIndex(){return Mo.get(H.LAMBDA)||100}create(e){let n=e.getChildren(),r=n[0],i=n.slice(1,-1),a=n[n.length-1];if(!(r instanceof j&&a instanceof j))return Po.create(p.NAME);if(r.getToken()===`L_1`){let e=r.getChildren();if(i.length!==e.length)return Po.create(p.VALUE)}else i=n.slice(0,-1);let o=(0,t.generateRandomId)(8),s=new Map;for(let e=0;e<i.length;e++){let t=i[e];if(t instanceof j){let e=t.getChildren()[0];t.setToken(Mt),s.set(e.trim(),void 0)}else return Po.create(p.VALUE)}return this._runtimeService.registerFunctionDefinitionPrivacyVar(o,s),this._updateLambdaStatement(a,o,s),new ds(e.getToken(),o,this._interpreter,[...s.keys()],this._runtimeService)}checkAndCreateNodeType(e){if(e instanceof j&&e.getToken().trim().toUpperCase()===`LAMBDA`)return this.create(e)}_updateLambdaStatement(e,t,n){os(e,t,n)}};fs=un([A(0,jo),A(1,(0,t.Inject)(rs))],fs);function ps(e){if(!e)return;if(e.getToken()!==`LR_1`)return e;let t=e,n=t.getCurrentLambdaPrivacyVar(),r=t.getLambdaParameter();if(n)return ps(n.get(r))}var ms=class extends No{constructor(e,t,n){super(e),this._lambdaParameter=t,this._currentLambdaPrivacyVar=n}getLambdaParameter(){return this._lambdaParameter}getCurrentLambdaPrivacyVar(){return this._currentLambdaPrivacyVar}get nodeType(){return H.LAMBDA_PARAMETER}execute(){let e=ps(this._currentLambdaPrivacyVar.get(this._lambdaParameter));if(e)this.setValue(e.getValue());else{let e=this.getValue();(e==null||e.isError())&&this.setValue(E.create(p.NAME))}}},hs=class extends Fo{get zIndex(){return Mo.get(H.LAMBDA_PARAMETER)||100}create(e){let t=e.getFunctionDefinitionPrivacyVar(),n=e.getLambdaParameter();return t?new ms(e.getToken(),n,t):new Po(p.NAME)}checkAndCreateNodeType(e){if(e instanceof j&&e.getToken().trim()===`LR_1`)return this.create(e)}},gs=class extends No{constructor(e){super(e),this._operatorString=e}get nodeType(){return H.NULL}execute(){this.setValue(Ua.create())}},_s=class extends No{constructor(e,t,n){super(e),this._functionExecutor=t,this._runtimeService=n}get nodeType(){return H.OPERATOR}execute(){let e=this.getChildren();this._functionExecutor.name===Xo.COMPARE&&this._functionExecutor.setCompareType(this.getToken());let t=e[0],n=e[1],r=t==null?void 0:t.getValue(),i=n==null?void 0:n.getValue(),a=this.getToken();if((r==null||i==null)&&a!==_.MINUS&&a!==_.PLUS){this.setValue(E.create(p.VALUE));return}r==null&&(r=Ua.create()),i==null&&(i=Ua.create()),r.isReferenceObject()&&(r=r.toArrayValueObject()),i.isReferenceObject()&&(i=i.toArrayValueObject());let o=this._functionExecutor.calculate(r,i);this._setEmbeddedArrayFormulaToResult(o),this.setValue(o)}_setEmbeddedArrayFormulaToResult(e){if(!e.isArray())return;let t=e.getRowCount(),n=e.getColumnCount();t<=1&&n<=1||this._runtimeService.setUnitArrayFormulaEmbeddedMap()}};let vs=class extends Fo{constructor(e,t){super(),this._functionService=e,this._runtimeService=t}get zIndex(){return Mo.get(H.OPERATOR)||100}create(e){let t=``,n=e;n===_.PLUS?t=Xo.PLUS:n===_.MINUS?t=Xo.MINUS:n===_.MULTIPLY?t=Xo.MULTIPLY:n===_.DIVIDED?t=Xo.DIVIDED:n===_.CONCATENATE?t=J.CONCATENATE:n===_.POWER?t=K.POWER:x.has(n)&&(t=Xo.COMPARE);let r=this._functionService.getExecutor(t);return r?new _s(n,r,this._runtimeService):(console.error(`No function ${e}`),Po.create(p.NAME))}checkAndCreateNodeType(e){if(e instanceof j)return;let t=e.trim();if(!(t.charAt(0)===`"`&&t.charAt(t.length-1)===`"`)&&b.has(t))return this.create(t)}};vs=un([A(0,Jo),A(1,jo)],vs);var ys=class extends no{constructor(e,t,n,r){super(e),this._tableData=t,this._columnDataString=n,this._tableOptionMap=r,d(this,`_isCurrentRowForRange`,!1);let{sheetId:i,range:a,titleMap:s}=this._tableData;this.setForcedSheetIdDirect(i);let{startColumn:c,endColumn:l,type:u}=this._parseStructuredRef(this._columnDataString,s),f=a.startRow,p=a.endRow,m=-1,h=-1;switch(u){case o.ALL:m=f,h=p;break;case o.DATA:m=f+1,h=p;break;case o.HEADERS:m=f,h=f;break;case o.TOTALS:m=p,h=p;break;case o.THIS_ROW:{let e=this._resolveThisRow(f,p);m=e,h=e;break}default:m=f+1,h=p;break}this.setRangeData({startColumn:c,endColumn:l,startRow:m,endRow:h})}getRangeData(){let e=super.getRangeData();if(this._isCurrentRowForRange){let{startRow:t,startColumn:n,endRow:r,endColumn:i}=e,a=this.getCurrentRow();return{startRow:a==null?t:a,endRow:a==null?r:a,startColumn:n,endColumn:i}}return e}getRefOffset(){return{x:0,y:0}}isTable(){return!0}isCurrentRowForRange(){return this._isCurrentRowForRange}setForcedSheetId(e){}_parseStructuredRef(e,t){var n,r;let{range:i}=this._tableData,a=(n=i.startColumn)==null?0:n,s=(r=i.endColumn)==null?0:r;if(!e||e.trim().length===0)return{startColumn:a,endColumn:s,type:o.DATA};let c=e.trim();if(c[0]!==`[`){let e=this._mapSection(c);if(e!==void 0)return{startColumn:a,endColumn:s,type:e};let{startColumn:n,endColumn:r}=this._parseColumnOrRange(c,t,a);return{startColumn:n,endColumn:r,type:o.DATA}}let l=this._stripOuterBracketOnce(c),u=this._findCommaAtTopLevel(l);if(l.length===0)return{startColumn:a,endColumn:s,type:o.DATA};if(u===-1){if(l.startsWith(`#`)){let e=this._mapSection(l);return e===void 0?{startColumn:a,endColumn:s,type:o.DATA}:{startColumn:a,endColumn:s,type:e}}let{startColumn:e,endColumn:n}=this._parseColumnOrRange(l,t,a);return{startColumn:e,endColumn:n,type:o.DATA}}let d=l.slice(0,u).trim(),f=l.slice(u+1).trim(),p=this._parseSectionMaybeBracketed(d),{startColumn:m,endColumn:h}=this._parseColumnOrRange(f,t,a);return{startColumn:m,endColumn:h,type:p}}_stripOuterBracketOnce(e){return e.length>=2&&e[0]===`[`&&e[e.length-1]===`]`?e.slice(1,-1):e}_findCommaAtTopLevel(e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];if(r===`[`)t++;else if(r===`]`)t=Math.max(0,t-1);else if(r===S.COMMA&&t===0)return n}return-1}_parseSectionMaybeBracketed(e){let t=e.trim(),n=t.startsWith(`[`)&&t.endsWith(`]`)?this._stripOuterBracketOnce(t):t,r=this._mapSection(n);return r==null?o.DATA:r}_mapSection(e){let t=e.trim();if(!t.startsWith(`#`))return;let n=this._tableOptionMap.get(t);if(n!==void 0)return n;let r=t.replace(/\s+/g,` `).toLowerCase();for(let[e,t]of this._tableOptionMap.entries())if(e.replace(/\s+/g,` `).toLowerCase()===r)return t}_parseColumnOrRange(e,t,n){let r=e.trim(),i=this._findColonAtTopLevel(r);if(i===-1){let e=this._stripOuterBracketIfAny(r),i=this._titleToIndex(e,t);return{startColumn:n+i,endColumn:+n+i}}let a=r.slice(0,i).trim(),o=r.slice(i+1).trim(),s=this._stripOuterBracketIfAny(a),c=this._stripOuterBracketIfAny(o),l=this._titleToIndex(s,t),u=this._titleToIndex(c,t);return l!==-1&&u!==-1&&l>u?{startColumn:n+u,endColumn:n+l}:{startColumn:n+l,endColumn:n+u}}_stripOuterBracketIfAny(e){return e.length>=2&&e[0]===`[`&&e[e.length-1]===`]`?e.slice(1,-1):e}_findColonAtTopLevel(e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];if(r===`[`)t++;else if(r===`]`)t=Math.max(0,t-1);else if(r===S.COLON&&t===0)return n}return-1}_titleToIndex(e,t){var n;let r=e.trim(),i=t.get(r);if(i!==void 0)return i;let a=r.replace(/\u3000/g,` `).trim();return(n=t.get(a))==null?-1:n}_resolveThisRow(e,t){return this._isCurrentRowForRange=!0,Math.min(e+1,t)}},bs=class extends No{constructor(e,t,n,r,i=!1,a){super(n),this._currentConfigService=e,this._runtimeService=t,this._referenceObjectType=r,this._isPrepareMerge=i,this._tableReferenceObject=a,d(this,`_refOffsetX`,0),d(this,`_refOffsetY`,0)}get nodeType(){return H.REFERENCE}execute(){let e=this._currentConfigService,t=this._runtimeService,n=this._tableReferenceObject||wo(this.getToken(),this._referenceObjectType);n.setDefaultUnitId(t.currentUnitId),n.setDefaultSheetId(t.currentSubUnitId),n.setForcedSheetId(e.getSheetNameMap()),n.setUnitData(e.getUnitData()),n.setArrayFormulaCellData(e.getArrayFormulaCellData()),n.setArrayFormulaRange(e.getArrayFormulaRange()),n.setRuntimeData(t.getUnitData()),n.setUnitStylesData(e.getUnitStylesData()),n.setRuntimeArrayFormulaCellData(t.getRuntimeArrayFormulaCellData()),n.setRuntimeArrayFormulaRange(t.getUnitArrayFormula()),n.setRuntimeFeatureCellData(t.getRuntimeFeatureCellData());let r=t.currentRow,i=t.currentColumn;n.setCurrentRowAndColumn(r,i);let{x:a,y:o}=this.getRefOffset();n.setRefOffset(a,o),!this._isPrepareMerge&&n.isExceedRange()?this.setValue(E.create(p.NAME)):this.setValue(n)}setRefOffset(e=0,t=0){this._refOffsetX=e,this._refOffsetY=t}getRefOffset(){return{x:this._refOffsetX,y:this._refOffsetY}}};let xs=class extends Fo{constructor(e,t,n,r){super(),this._currentConfigService=e,this._formulaRuntimeService=t,this._functionService=n,this._superTableService=r}get zIndex(){return Mo.get(H.REFERENCE)||100}checkAndCreateNodeType(e){let t=!1,n,r=!1;if(e instanceof j){var i;t=!0,n=e.getToken().trim(),((i=e.getParent())==null||(i=i.getParent())==null?void 0:i.getToken().trim())===S.COLON&&(r=!0)}else n=e.trim();let{tokenTrim:a,minusPrefixNode:o,atPrefixNode:s}=$o(n,this._functionService,this._formulaRuntimeService);if(!t&&a.charAt(0)===`"`&&a.charAt(a.length-1)===`"`)return;let c=this._getNode(a,t,r,e);if(c)return s?c.setParent(s):o&&c.setParent(o),c}_getTableMap(){let e=this._currentConfigService.getExecuteUnitId();if(e)return this._superTableService.getTableMap(e)}_getNode(e,t,n,r){var i;let a=this._currentConfigService,o=this._formulaRuntimeService,s=t=>new bs(a,o,e,t,n),c=this._getTableMap();if((i=c==null?void 0:c.has(e))!=null&&i)return this._getTableReferenceNode(e,t,n,!0);if(vt(e))return s(Co.CELL);let l=t&&this._checkParentIsUnionOperator(r);return l&&St(e)?s(Co.ROW):l&&Ct(e)?s(Co.COLUMN):this._getTableReferenceNode(e,t,n,!1)}_getTableReferenceNode(e,t,n,r=!1){if(!this._checkTokenIsTableReference(e)&&!r)return;let{tableName:i,columnStruct:a}=ln(e),o=this._getTableMap();if(!t&&o!=null&&o.has(i)){let t=a,r=o.get(i),s=this._superTableService.getTableOptionMap();return new bs(this._currentConfigService,this._formulaRuntimeService,e,Co.COLUMN,n,new ys(e,r,t,s))}}_checkTokenIsTableReference(e){return wt(e)||Tt(e)||Et(e)||Dt(e)}_checkParentIsUnionOperator(e){var t;return((t=e.getParent())==null||(t=t.getParent())==null?void 0:t.getToken().trim())===S.COLON}};xs=un([A(0,fr),A(1,jo),A(2,Jo),A(3,Rn)],xs);var Ss=class extends No{constructor(e,t,n,r){super(n),this._currentConfigService=e,this._lexer=t,this._operatorString=n,this._functionExecutor=r}get nodeType(){return H.SUFFIX}execute(){var e;let t=(e=this.getChildren()[0])==null?void 0:e.getValue(),n;if(t==null){this.setValue(E.create(p.ERROR));return}if(this._operatorString===C.PERCENTAGE){if(t.isReferenceObject()&&(t=t.toArrayValueObject()),n=this._functionExecutor.calculate(t,R.create(100)),n.isNumber()){let e=Number(n.getValue());n=R.create(e,`0.00%`)}}else n=this._operatorString===C.POUND?this._handlerPound(t):E.create(p.VALUE);this.setValue(n)}_handlerPound(e){var t;if(!e.isReferenceObject()||!e.isCell())return E.create(p.VALUE);let n=e,r=n.getRangePosition(),i=n.getUnitId(),a=n.getSheetId(),o=this._currentConfigService.getFormulaData(),s=o==null||(t=o[i])==null||(t=t[a])==null||(t=t[r.startRow])==null||(t=t[r.startColumn])==null?void 0:t.f;return s&&this._lexer.treeBuilder(s),E.create(p.VALUE)}};let Cs=class extends Fo{constructor(e,t,n){super(),this._functionService=e,this._lexer=t,this._currentConfigService=n}get zIndex(){return Mo.get(H.SUFFIX)||100}checkAndCreateNodeType(e){if(!(e instanceof j))return;let t=e.getToken().trim();if(t.charAt(0)===`"`&&t.charAt(t.length-1)===`"`)return;let n=``;if(t===C.PERCENTAGE)n=Xo.DIVIDED;else if(t===C.POUND)return new Ss(this._currentConfigService,this._lexer,t);else return;let r=this._functionService.getExecutor(n);return r?new Ss(this._currentConfigService,this._lexer,t,r):(console.error(`No function ${e}`),Po.create(p.NAME))}};Cs=un([A(0,Jo),A(1,(0,t.Inject)(pr)),A(2,fr)],Cs);var ws=class extends No{constructor(e){super(e)}get nodeType(){return H.UNION}execute(){let e=this.getChildren(),t=e[0],n=e[1],r=t.getValue(),i=n.getValue();if(r==null||i==null){console.error(`UnionNode execute leftNode or rightNode is null`),this.setValue(E.create(p.VALUE));return}let a;a=this.getToken()===S.COLON?this._unionFunction(r,i):E.create(p.NAME),this.setValue(a)}_unionFunction(e,t){return e.isError()||t.isError()||!e.isReferenceObject()||!t.isReferenceObject()?E.create(p.REF):(e=e,t=t,To(e,t))}};let Ts=class extends Fo{constructor(e){super(),this._functionService=e}get zIndex(){return Mo.get(H.UNION)||100}create(e){return new ws(e)}checkAndCreateNodeType(e){if(!(e instanceof j))return;let t=e.getToken().trim();if(!(t.charAt(0)===`"`&&t.charAt(t.length-1)===`"`)&&t===S.COLON)return this.create(t)}};Ts=un([A(0,Jo)],Ts);var Es=class extends No{constructor(e){super(e)}get nodeType(){return H.VALUE}execute(){let e=this.getParent(),t=!0;if((e==null?void 0:e.nodeType)===H.FUNCTION){var n,r;t=(n=(r=e.isFunctionExecutorArgumentsIgnoreNumberPattern)==null?void 0:r.call(e))==null?!0:n}this.setValue($a.create(this.getToken(),t))}},Ds=class extends Fo{get zIndex(){return Mo.get(H.VALUE)||100}_checkValueNode(e){if(Number.isNaN(Number(e))){let t=e.trim(),n=t.charAt(0),r=t.charAt(t.length-1);if(m.has(t)||n===`"`&&r===`"`||n===`{`&&r===`}`)return this.create(t);let a=t.toUpperCase();if(a===i.TRUE||a===i.FALSE)return this.create(a)}else return this.create(e)}create(e){return new Es(e)}checkAndCreateNodeType(e){if(!(e instanceof j))return this._checkValueNode(e)}};let Os=class extends t.Disposable{constructor(e,t,n,r,i,a,o,s,c,l,u){super(),this._runtimeService=e,this._astRootNodeFactory=t,this._functionNodeFactory=n,this._lambdaNodeFactory=r,this._lambdaParameterNodeFactory=i,this._operatorNodeFactory=a,this._prefixNodeFactory=o,this._referenceNodeFactory=s,this._suffixNodeFactory=c,this._unionNodeFactory=l,this._valueNodeFactory=u,d(this,`_astNodeFactoryList`,[]),this._initializeAstNode()}dispose(){this._astNodeFactoryList.forEach(e=>{e.dispose()}),this._astNodeFactoryList=[]}parse(e){let t=new Io(`R_1`),n=this._parse(e,t);return e.hasDefinedNames()&&(n==null||n.setDefinedNames(e.getDefinedNames())),n}_lambdaParameterHandler(e,t){if(t.getLambdaId==null)return Po.create(p.VALUE);let n=t.getLambdaId(),r=new Io(`R_1`),i=this._runtimeService.getFunctionDefinitionPrivacyVar(n);if(!i)return!1;let a=[...i.keys()],o=e.getChildren(),s=o.length;for(let e=0;e<s;e++){let t=o[e];if(t instanceof j){os(t,n,i),this._parse(t,r);let o=r.getChildren()[e];o!=null&&i.set(a[e],o)}else return!1}return r.setParent(t),t}_changeLetToLambda(e){let t=e.getChildren(),n=t.length;if(n%2!=1||n===0)return;let r=new j;r.setToken(Nt);let i=new j;i.setToken(`L_1`);let a=[...t];for(let e=0;e<n;e++){let t=a[e];if(!(t instanceof j))return;e%2==0?t.changeToParent(r):t.changeToParent(i)}r.addChildrenFirst(i),i.setParent(r);let o=e.getParent();return o==null||o.replaceChild(e,r),r}_parse(e,t){let n=e.getChildren(),r=n.length,i=[],a=null,o=e.getToken().trim().toUpperCase();if(o===`LET`){let n=this._changeLetToLambda(e);return n==null?Po.create(p.ERROR):this._parse(n,t)}if(o===`P_1`){if(a=t,r===0)return new gs(`R_1`).setParent(t),a}else{if(o===`L_1`){let n=this._lambdaParameterHandler(e,t);return n===!1&&(n=Po.create(p.ERROR)),n}if(a=this._checkAstNode(e),a==null)return Po.create(p.NAME)}let s=n[0];for(let e=0;e<r;e++){let t=n[e];if(is(s)){if(e!==0&&e!==r-1)continue}else if(as(t)&&e!==r-1)continue;let o=null;if(t instanceof j){if(t.getToken()===`P_1`&&t.getChildren().length===0){var c;let e=(c=t.getParent())==null?void 0:c.getChildren();if(e&&e.length===1)return Po.create(p.NAME)}if(o=this._parse(t,a),o===a)continue}else o=this._checkAstNode(t);if(o==null)return Po.create(p.NAME);if(o=ss(o),o==null||(o==null?void 0:o.nodeType)===H.ERROR)return o;switch(o.nodeType){case H.FUNCTION:{let e=o.getToken().trim().toUpperCase();Pt.has(e)&&o.setForcedCalculateFunction(),i.push(o);break}case H.LAMBDA:i.push(o);break;case H.LAMBDA_PARAMETER:i.push(o);break;case H.OPERATOR:{let e=i.pop(),t=i.pop();t&&t.setParent(o),e&&e.setParent(o),i.push(o);break}case H.REFERENCE:i.push(o);break;case H.ROOT:i.push(o);break;case H.UNION:i.push(o);break;case H.VALUE:i.push(o);break;case H.PREFIX:i.push(o);break;case H.SUFFIX:i.push(o);break}}let l=i.length;for(let e=0;e<l;e++)i[e].setParent(a);return a}_checkAstNode(e){let t=null,n=this._astNodeFactoryList.length;for(let r=0;r<n&&(t=this._astNodeFactoryList[r].checkAndCreateNodeType(e),t==null);r++);return t==null?new ts:t}_initializeAstNode(){this._astNodeFactoryList=[this._astRootNodeFactory,this._functionNodeFactory,this._lambdaNodeFactory,this._lambdaParameterNodeFactory,this._operatorNodeFactory,this._prefixNodeFactory,this._referenceNodeFactory,this._suffixNodeFactory,this._unionNodeFactory,this._valueNodeFactory].sort(t.sortRules)}};Os=un([A(0,jo),A(1,(0,t.Inject)(Lo)),A(2,(0,t.Inject)(ns)),A(3,(0,t.Inject)(fs)),A(4,(0,t.Inject)(hs)),A(5,(0,t.Inject)(vs)),A(6,(0,t.Inject)(Qo)),A(7,(0,t.Inject)(xs)),A(8,(0,t.Inject)(Cs)),A(9,(0,t.Inject)(Ts)),A(10,(0,t.Inject)(Ds))],Os);var ks=class extends t.Disposable{constructor(...e){super(...e),d(this,`_otherFormulaData`,new Map),d(this,`_featureFormulaData`,new Map),d(this,`_formulaData`,new Map),d(this,`_definedNameMap`,new Map),d(this,`_otherFormulaDataMainData`,new Set),d(this,`_dependencyRTreeCache`,new t.RTree),d(this,`_dependencyTreeIdLast`,0)}buildDependencyTree(e,t){throw Error(`Method not implemented.`)}getTreeById(e){throw Error(`Method not implemented.`)}getAllTree(){throw Error(`Method not implemented.`)}reset(){throw Error(`Method not implemented.`)}addOtherFormulaDependency(e,t,n,r){throw Error(`Method not implemented.`)}removeOtherFormulaDependency(e,t,n){throw Error(`Method not implemented.`)}clearOtherFormulaDependency(e,t){throw Error(`Method not implemented.`)}addFeatureFormulaDependency(e,t,n,r){throw Error(`Method not implemented.`)}removeFeatureFormulaDependency(e,t,n){throw Error(`Method not implemented.`)}clearFeatureFormulaDependency(e,t){throw Error(`Method not implemented.`)}addFormulaDependency(e,t,n,r,i){throw Error(`Method not implemented.`)}removeFormulaDependency(e,t,n,r){throw Error(`Method not implemented.`)}clearFormulaDependency(e,t){throw Error(`Method not implemented.`)}removeFormulaDependencyByDefinedName(e,t){throw Error(`Method not implemented.`)}searchDependency(e,t){return this._dependencyRTreeCache.bulkSearch(e,t)}_restDependencyTreeId(){this._dependencyTreeIdLast=0}getOtherFormulaDependency(e,t,n){var r;return(r=this._otherFormulaData.get(e))==null||(r=r.get(t))==null?void 0:r.get(n)}addOtherFormulaDependencyMainData(e){this._otherFormulaDataMainData.add(e)}hasOtherFormulaDataMainData(e){return this._otherFormulaDataMainData.has(e)}_removeDependencyRTreeCacheById(e,t){this._dependencyRTreeCache.removeById(e,t)}getFeatureFormulaDependency(e,t,n){var r;return(r=this._featureFormulaData.get(e))==null||(r=r.get(t))==null?void 0:r.get(n)}getFormulaDependency(e,t,n,r){var i;return(i=this._formulaData.get(e))==null||(i=i.get(t))==null?void 0:i.getValue(n,r)}addDependencyRTreeCache(e){let t=[];for(let n=0;n<e.rangeList.length;n++){let{unitId:r,sheetId:i,range:a}=e.rangeList[n];t.push({unitId:r,sheetId:i,range:a,id:e.treeId})}this._dependencyRTreeCache.bulkInsert(t),this._addAllTreeMap(e)}getLastTreeId(){let e=this._dependencyTreeIdLast;return this._dependencyTreeIdLast++,e}_addAllTreeMap(e){throw Error(`Method not implemented.`)}_addDefinedName(e,t,n){this._definedNameMap.has(e)||this._definedNameMap.set(e,new Map);let r=this._definedNameMap.get(e);r.has(t)||r.set(t,new Set),r.get(t).add(n)}addFormulaDependencyByDefinedName(e,t){let n=e.treeId,r=(t==null?void 0:t.getDefinedNames())||[];for(let t of r)this._addDefinedName(e.unitId,t,n)}updateDependencyTreeDirtyState(e,t){throw Error(`Method not implemented.`)}},As=class extends ks{constructor(...e){super(...e),d(this,`_allTreeMap`,new Map)}dispose(){super.dispose(),this.reset()}buildDependencyTree(e,t=[]){let n=this.getAllTree();return e.length===0?(this._buildReverseDependency(n,t),n):(this._buildDependencyTree(n,e),this._buildReverseDependency(n,e),n)}_buildDependencyTree(e,t){let n=new Map;for(let e=0;e<t.length;e++){let r=t[e];n.set(r.treeId,r)}for(let t=0;t<e.length;t++){let r=e[t],i=r.toRTreeItem(),a=this._dependencyRTreeCache.bulkSearch(i);for(let e of a){let t=n.get(e);t&&r!==t&&!t.hasChildren(r.treeId)&&t.pushChildren(r)}}n.clear()}_buildReverseDependency(e,t){let n=new Map;for(let t=0;t<e.length;t++){let r=e[t];n.set(r.treeId,r)}for(let e=0;e<t.length;e++){let r=t[e],i=r.toRTreeItem(),a=this._dependencyRTreeCache.bulkSearch(i);for(let e of a){let t=n.get(e);t&&r!==t&&!t.hasChildren(r.treeId)&&t.pushChildren(r)}}n.clear()}getAllTree(){let e=[];return this._allTreeMap.forEach(t=>{t.resetState(),e.push(t)}),e}getTreeById(e){return this._allTreeMap.get(e)}reset(){this._otherFormulaData.clear(),this._featureFormulaData.clear(),this._formulaData.clear(),this._definedNameMap.clear(),this._otherFormulaDataMainData.clear(),this._dependencyRTreeCache.clear(),this._allTreeMap.clear(),this._restDependencyTreeId()}addOtherFormulaDependency(e,n,r,i){this._otherFormulaData.has(e)||this._otherFormulaData.set(e,new Map);let a=this._otherFormulaData.get(e);a.has(n)||a.set(n,new Map);let o=a.get(n);o.has(r)||o.set(r,new t.ObjectMatrix),o.get(r).setValue(i.refOffsetX,i.refOffsetY,i.treeId),this._addAllTreeMap(i)}removeOtherFormulaDependency(e,t,n){let r=this._otherFormulaData.get(e);if(r&&r.has(t)){let i=r.get(t);n.forEach(e=>{let t=i.get(e);t!=null&&(t.forValue((e,t,n)=>{this._removeDependencyRTreeCache(n),this.clearDependencyForTree(this._allTreeMap.get(n)),this._removeAllTreeMap(n)}),i.delete(e),this._otherFormulaDataMainData.delete(e))}),i.size===0&&r.delete(t),r.size===0&&this._otherFormulaData.delete(e)}}clearOtherFormulaDependency(e,t){let n=this._otherFormulaData.get(e);if(t&&n&&n.has(t)){let r=n.get(t);this._removeDependencyRTreeCacheById(e,t);for(let e of r.keys()){let t=r.get(e);t!=null&&(t.forValue((e,t,n)=>{let r=this._allTreeMap.get(n);r&&(this.clearDependencyForTree(r),this._removeAllTreeMap(n))}),this._otherFormulaDataMainData.delete(e))}r.clear()}else if(n){for(let t of n.keys()){let r=n.get(t);this._removeDependencyRTreeCacheById(e,t);for(let e of r.keys()){let t=r.get(e);t!=null&&(t.forValue((e,t,n)=>{let r=this._allTreeMap.get(n);r&&(this.clearDependencyForTree(r),this._removeAllTreeMap(n))}),this._otherFormulaDataMainData.delete(e))}}this._otherFormulaData.delete(e)}}addFeatureFormulaDependency(e,t,n,r){this._featureFormulaData.has(e)||this._featureFormulaData.set(e,new Map);let i=this._featureFormulaData.get(e);i.has(t)||i.set(t,new Map),i.get(t).set(n,r.treeId),this._addAllTreeMap(r)}removeFeatureFormulaDependency(e,t,n){let r=this._featureFormulaData.get(e);if(r&&r.has(t)){let e=r.get(t);n.forEach(t=>{let n=e.get(t);n!=null&&(this._removeDependencyRTreeCache(n),e.delete(t),this.clearDependencyForTree(this._allTreeMap.get(n)),this._removeAllTreeMap(n))})}}clearFeatureFormulaDependency(e,t){let n=this._featureFormulaData.get(e);if(t&&n&&n.has(t)){let r=n.get(t);this._removeDependencyRTreeCacheById(e,t),r.forEach(e=>{e!=null&&(this.clearDependencyForTree(this._allTreeMap.get(e)),this._removeAllTreeMap(e))}),r.clear()}else n&&(n.forEach((t,n)=>{this._removeDependencyRTreeCacheById(e,n),t.forEach(e=>{e!=null&&(this.clearDependencyForTree(this._allTreeMap.get(e)),this._removeAllTreeMap(e))})}),this._featureFormulaData.delete(e))}addFormulaDependency(e,n,r,i,a){this._formulaData.has(e)||this._formulaData.set(e,new Map);let o=this._formulaData.get(e);o.has(n)||o.set(n,new t.ObjectMatrix),o.get(n).setValue(r,i,a.treeId),this._addAllTreeMap(a)}removeFormulaDependency(e,t,n,r){let i=this._formulaData.get(e);if(i&&i.has(t)){let e=i.get(t),a=e.getValue(n,r);if(a==null)return;this._removeDependencyRTreeCache(a),e.realDeleteValue(n,r),this.clearDependencyForTree(this._allTreeMap.get(a)),this._removeAllTreeMap(a)}}clearFormulaDependency(e,t){let n=this._formulaData.get(e);if(t&&n&&n.has(t)){let r=n.get(t);this._removeDependencyRTreeCacheById(e,t),r.forValue((e,t,n)=>{if(n==null)return!0;this.clearDependencyForTree(this._allTreeMap.get(n)),this._removeAllTreeMap(n)}),r.reset()}else n&&(n.forEach((t,n)=>{this._removeDependencyRTreeCacheById(e,n),t.forValue((e,t,n)=>{if(n==null)return!0;this.clearDependencyForTree(this._allTreeMap.get(n)),this._removeAllTreeMap(n)})}),this._formulaData.delete(e))}clearDependencyForTree(e){if(e==null)return;let t=e.parents,n=e.children,r=this._allTreeMap;for(let n of t){let t=r.get(n);t==null||t.children.delete(e.treeId)}for(let t of n){let n=r.get(t);n==null||n.parents.delete(e.treeId)}e.dispose()}_removeDependencyRTreeCache(e){if(e==null)return;let t=this._allTreeMap.get(e);if(t){let n=[];for(let r=0;r<t.rangeList.length;r++){let{unitId:i,sheetId:a,range:o}=t.rangeList[r];n.push({unitId:i,sheetId:a,range:o,id:e})}this._dependencyRTreeCache.bulkRemove(n)}}removeFormulaDependencyByDefinedName(e,t){let n=this._definedNameMap.get(e);if(n){let e=n.get(t);if(e){for(let t of e)this._removeDependencyRTreeCache(t),this.clearDependencyForTree(this._allTreeMap.get(t)),this._removeAllTreeMap(t);e.clear()}}}_removeAllTreeMap(e){e!=null&&this._allTreeMap.delete(e)}_addAllTreeMap(e){this._allTreeMap.set(e.treeId,e)}updateDependencyTreeDirtyState(e,t){let n=this._allTreeMap.get(e);n&&(n.isDirty=t)}};let js=(0,t.createIdentifier)(`univer.formula.dependency-manager.service`);var Ms=class extends t.Disposable{constructor(...e){super(...e),d(this,`_referenceExecutorMap`,new Map),d(this,`_onChanged$`,new n.Subject),d(this,`onChanged$`,this._onChanged$.asObservable())}dispose(){super.dispose(),this._referenceExecutorMap.clear(),this._onChanged$.complete()}remove(e,t,n){n.forEach(n=>{var r;(r=this._referenceExecutorMap.get(e))==null||(r=r.get(t))==null||r.delete(n)}),this._onChanged$.next({unitId:e,subUnitId:t,featureIds:n})}get(e,t,n){var r;return(r=this._referenceExecutorMap.get(e))==null||(r=r.get(t))==null?void 0:r.get(n)}has(e,t,n){var r;return!!(!((r=this._referenceExecutorMap.get(e))==null||(r=r.get(t))==null)&&r.has(n))}register(e,t,n,r){let i=this._referenceExecutorMap.get(e);i||(i=new Map,this._referenceExecutorMap.set(e,i));let a=i.get(t);a||(a=new Map,i.set(t,a)),this._onChanged$.next({unitId:e,subUnitId:t,featureIds:[n]}),a.set(n,r)}getReferenceExecutorMap(){return this._referenceExecutorMap}};let Ns=(0,t.createIdentifier)(`univer.formula.feature-calculation-manager.service`);var Ps=class extends t.Disposable{constructor(...e){super(...e),d(this,`_otherFormulaData`,{})}dispose(){super.dispose(),this._otherFormulaData={}}remove(e){var t;let{unitId:n,subUnitId:r,formulaId:i}=e;(t=this._otherFormulaData)==null||(t=t[n])==null||(t=t[r])==null||delete t[i]}get(e){var t;let{unitId:n,subUnitId:r,formulaId:i}=e;return(t=this._otherFormulaData[n])==null||(t=t[r])==null?void 0:t[i]}has(e){var t;let{unitId:n,subUnitId:r,formulaId:i}=e;return((t=this._otherFormulaData[n])==null||(t=t[r])==null?void 0:t[i])!=null}register(e){let{unitId:t,subUnitId:n,formulaId:r,item:i}=e;this._otherFormulaData[t]||(this._otherFormulaData[t]={}),this._otherFormulaData[t][n]||(this._otherFormulaData[t][n]={}),this._otherFormulaData[t][n][r]=i}batchRegister(e){Object.keys(e).forEach(t=>{let n=e[t];if(n==null)return!0;Object.keys(n).forEach(e=>{let r=n[e];if(r==null)return!0;Object.keys(r).forEach(n=>{let i=r[n];if(i==null)return!0;this.register({unitId:t,subUnitId:e,formulaId:n,item:i})})})})}batchRemove(e){Object.keys(e).forEach(t=>{let n=e[t];if(n==null)return!0;Object.keys(n).forEach(e=>{let r=n[e];if(r==null)return!0;Object.keys(r).forEach(n=>{this.remove({unitId:t,subUnitId:e,formulaId:n})})})})}getOtherFormulaData(){return this._otherFormulaData}};let Fs=(0,t.createIdentifier)(`univer.formula.other-formula-manager.service`),Is=function(e){return e[e.DEFAULT=0]=`DEFAULT`,e[e.ADDED=1]=`ADDED`,e[e.SKIP=2]=`SKIP`,e}({}),Ls=function(e){return e[e.NORMAL_FORMULA=0]=`NORMAL_FORMULA`,e[e.OTHER_FORMULA=1]=`OTHER_FORMULA`,e[e.FEATURE_FORMULA=2]=`FEATURE_FORMULA`,e}({});var Rs=class{constructor(){d(this,`_state`,Is.DEFAULT),d(this,`type`,Ls.NORMAL_FORMULA),d(this,`treeId`,void 0),d(this,`children`,new Set),d(this,`parents`,new Set)}resetState(){this._state=Is.DEFAULT}setAdded(){this._state=Is.ADDED}isAdded(){return this._state===Is.ADDED}setSkip(){this._state=Is.SKIP}isSkip(){return this._state===Is.SKIP}pushChildren(e){this.children.add(e.treeId),e._pushParent(this)}hasChildren(e){return this.children.has(e)}_pushParent(e){this.parents.add(e.treeId)}},zs=class extends Rs{constructor(...e){super(...e),d(this,`refTree`,void 0),d(this,`refOffsetX`,-1),d(this,`refOffsetY`,-1),d(this,`isCache`,!1),d(this,`isDirty`,!1),d(this,`addressFunctionNodes`,[]),d(this,`getDirtyData`,void 0),d(this,`featureId`,void 0)}get isVirtual(){return!0}get row(){return this.refTree==null?-1:this.refTree.row+this.refOffsetY}get column(){return this.refTree==null?-1:this.refTree.column+this.refOffsetX}get rowCount(){return this.refTree==null?0:this.refTree.rowCount}get columnCount(){return this.refTree==null?0:this.refTree.columnCount}get unitId(){return this.refTree==null?``:this.refTree.unitId}get subUnitId(){return this.refTree==null?``:this.refTree.subUnitId}get formula(){var e,t;return(e=(t=this.refTree)==null?void 0:t.formula)==null?``:e}get nodeData(){return{node:this.node,refOffsetX:this.refOffsetX,refOffsetY:this.refOffsetY}}get node(){var e;return(e=this.refTree)==null?void 0:e.node}dispose(){this.refTree=null}get rangeList(){let e=[];if(this.refTree==null)return[];for(let n=0;n<this.refTree.rangeList.length;n++){let r=this.refTree.rangeList[n];e.push({unitId:r.unitId,sheetId:r.sheetId,range:(0,t.moveRangeByOffset)(r.range,this.refOffsetX,this.refOffsetY)})}return e}toRTreeItem(){let e=this.row,t=this.column;return[{unitId:this.unitId,sheetId:this.subUnitId,range:{startRow:e,startColumn:t,endRow:e,endColumn:t}}]}inRangeData(e){let t=e.startRow,n=e.startColumn,r=e.endRow,i=e.endColumn,a=this.row,o=this.column;return!(a<t||a>r||o<n||o>i)}dependencySheetName(e){return this.refTree==null?!1:this.refTree.dependencySheetName(e)}isExcludeRange(e){let t=this.rangeList;if(t.length===0)return!1;for(let r=0,i=t.length;r<i;r++){var n;let{unitId:i,sheetId:a,range:o}=t[r],s=e==null||(n=e[i])==null?void 0:n[a],{startRow:c,endRow:l,startColumn:u,endColumn:d}=o;Number.isNaN(c)&&(c=0),Number.isNaN(u)&&(u=0),Number.isNaN(l)&&(l=1/0),Number.isNaN(d)&&(d=1/0);let f=!1;if(s==null||s.forValue((e,t)=>{if(e>=c&&e<=l&&t>=u&&t<=d)return f=!0,!1}),f)return!0}return!1}get formulaId(){return this.refTree==null?``:this.refTree.formulaId}},Bs=class extends Rs{constructor(e){super(),d(this,`isCache`,!1),d(this,`featureId`,void 0),d(this,`featureDirtyRanges`,[]),d(this,`refOffsetX`,0),d(this,`refOffsetY`,0),d(this,`formulaId`,void 0),d(this,`subUnitId`,``),d(this,`unitId`,``),d(this,`rangeList`,[]),d(this,`formula`,``),d(this,`row`,-1),d(this,`column`,-1),d(this,`rowCount`,-1/0),d(this,`columnCount`,-1/0),d(this,`isDirty`,!1),d(this,`node`,void 0),d(this,`addressFunctionNodes`,[]),d(this,`getDirtyData`,void 0),this.treeId=e}get isVirtual(){return!1}get nodeData(){return{node:this.node,refOffsetX:0,refOffsetY:0}}toJson(){return{formula:this.formula,refOffsetX:this.refOffsetX,refOffsetY:this.refOffsetY}}dispose(){this.featureDirtyRanges=[],this.rangeList=[],this.addressFunctionNodes=[],this.getDirtyData=null}inRangeData(e){let t=e.startRow,n=e.startColumn,r=e.endRow,i=e.endColumn,a=this.row,o=this.column;return!(a<t||a>r||o<n||o>i)}dependencySheetName(e){let t=this.rangeList;if(t.length===0||e==null)return!1;for(let r=0,i=t.length;r<i;r++){var n;let{unitId:i,sheetId:a}=t[r];if(((n=e[i])==null?void 0:n[a])!=null)return!0}return!1}isExcludeRange(e){let t=this.rangeList;if(t.length===0)return!1;for(let r=0,i=t.length;r<i;r++){var n;let{unitId:i,sheetId:a,range:o}=t[r],s=e==null||(n=e[i])==null?void 0:n[a],{startRow:c,endRow:l,startColumn:u,endColumn:d}=o;Number.isNaN(c)&&(c=0),Number.isNaN(u)&&(u=0),Number.isNaN(l)&&(l=1/0),Number.isNaN(d)&&(d=1/0);let f=!1;if(s==null||s.forValue((e,t)=>{if(e>=c&&e<=l&&t>=u&&t<=d)return f=!0,!1}),f)return!0}return!1}pushRangeList(e){this.rangeList.push(...e)}shouldBePushRangeList(){return this.rangeList.length===0&&this.type!==Ls.FEATURE_FORMULA}toRTreeItem(){if(this.featureId!=null)return this.featureDirtyRanges;let e=this.row,t=this.column;return[{unitId:this.unitId,sheetId:this.subUnitId,range:{startRow:e,startColumn:t,endRow:e,endColumn:t}}]}},Vs=class{constructor(e){if(d(this,`children`,new Set),d(this,`parents`,new Set),d(this,`treeId`,-1),d(this,`formula`,``),d(this,`refOffsetX`,0),d(this,`refOffsetY`,0),d(this,`row`,-1),d(this,`column`,-1),d(this,`unitId`,``),d(this,`subUnitId`,``),d(this,`rangeList`,[]),d(this,`refTreeId`,void 0),d(this,`formulaId`,void 0),d(this,`featureId`,void 0),d(this,`type`,void 0),this.treeId=e.treeId,this.row=e.row,this.column=e.column,this.unitId=e.unitId,this.subUnitId=e.subUnitId,this.refOffsetX=e.refOffsetX,this.refOffsetY=e.refOffsetY,this.rangeList=e.rangeList,e.isVirtual){var t,n;this.refTreeId=(t=(n=e.refTree)==null?void 0:n.treeId)==null?-1:t}else{var r,i;this.formula=e.formula,this.formulaId=(r=e.formulaId)==null?void 0:r,this.featureId=(i=e.featureId)==null?void 0:i,this.type=e.type}}toJson(){return{children:Array.from(this.children).map(e=>e.treeId),parents:Array.from(this.parents).map(e=>e.treeId),treeId:this.treeId,formula:this.formula,row:this.row,column:this.column,unitId:this.unitId,subUnitId:this.subUnitId,refOffsetX:this.refOffsetX,refOffsetY:this.refOffsetY,rangeList:this.rangeList,refTreeId:this.refTreeId,formulaId:this.formulaId,featureId:this.featureId,type:this.type}}toFullJson(){return{children:Array.from(this.children).map(e=>e.toJson()),parents:Array.from(this.parents).map(e=>e.toJson()),treeId:this.treeId,formula:this.formula,row:this.row,column:this.column,unitId:this.unitId,subUnitId:this.subUnitId,refOffsetX:this.refOffsetX,refOffsetY:this.refOffsetY,rangeList:this.rangeList,refTreeId:this.refTreeId,formulaId:this.formulaId,featureId:this.featureId,type:this.type}}addParent(e){this.parents.add(e)}addChild(e){this.children.add(e)}};function Hs(e){return e.getLastTreeId()||0}let Us=(0,t.createIdentifier)(`engine-formula.dependency-generator`),Ws=class extends t.Disposable{constructor(e,n,r,i,a,o,s,c,l,u){super(),this._currentConfigService=e,this._runtimeService=n,this._otherFormulaManagerService=r,this._featureCalculationManagerService=i,this._univerInstanceService=a,this._interpreter=o,this._astTreeBuilder=s,this._lexer=c,this._dependencyManagerService=l,this._lexerTreeBuilder=u,d(this,`_updateRangeFlattenCache`,new Map),d(this,`_dependencyRTreeCacheForAddressFunction`,new t.RTree),d(this,`_executedAddressFunctionNodeIds`,new Set),d(this,`_formulaDependencyTreeModel`,new Map),this._initUnitDispose()}dispose(){super.dispose(),this._updateRangeFlattenCache.clear(),this._dependencyRTreeCacheForAddressFunction.clear(),Wo.clear()}_initUnitDispose(){this.disposeWithMe(this._univerInstanceService.getTypeOfUnitDisposed$(t.UniverInstanceType.UNIVER_SHEET).subscribe(e=>{this._disposeByUnitId(e.getUnitId())}))}_disposeByUnitId(e){Wo.forEach((t,n)=>{n.startsWith(e)&&Wo.delete(n)})}async generate(e=!1){this._updateRangeFlatten();let t=this._currentConfigService.getFormulaData(),n=this._otherFormulaManagerService.getOtherFormulaData(),r=this._currentConfigService.getClearDependencyTreeCache();r!=null&&Object.keys(r).forEach(e=>{e!=null&&Object.keys(r[e]).forEach(t=>{t!=null&&(this._dependencyManagerService.clearOtherFormulaDependency(e,t),this._dependencyManagerService.clearFeatureFormulaDependency(e,t),this._dependencyManagerService.clearFormulaDependency(e,t))})});let i=this._currentConfigService.getUnitData(),a=await this._generateTreeList(t,n,i);e&&this._runtimeService.setDependencyTreeModelData(this._getAllDependencyJson(a));let o=this._getUpdateTreeListAndMakeDependency(a),s=this._calculateRunList(o);return this._dependencyFeatureCalculation(s)&&(s.forEach(e=>{e.resetState()}),s=this._calculateRunList(s)),this._checkIsCycleDependency(s)&&this._runtimeService.enableCycleDependency(),this._dependencyRTreeCacheForAddressFunction.clear(),this._runtimeService.clearArrayObjectCache(),Promise.resolve(s)}_dependencyFeatureCalculation(e){let t=this._featureCalculationManagerService.getReferenceExecutorMap();if(t.size===0)return;this._clearFeatureCalculationNode(e);let n=!1;return t.forEach((t,r)=>{t.forEach((t,r)=>{t.forEach((t,r)=>{let{unitId:i,subUnitId:a,getDirtyData:o}=t,s=o(this._currentConfigService.getDirtyData(),this._runtimeService.getAllRuntimeData()),c=this._convertDirtyRangesToUnitRange(s.dirtyRanges),l=this._intersectFeatureCalculation(c,e,{unitId:i,subUnitId:a,featureId:r});if(l.length>0){let o=this._getExistTreeList({unitId:i,subUnitId:a,featureId:r},e);o==null&&(o=this._getFeatureFormulaTree(r,Hs(this._dependencyManagerService),t),e.push(o)),o.parents=new Set,l.forEach(e=>{e.hasChildren(o.treeId)||e.pushChildren(o)}),n=!0}})})}),n}_clearFeatureCalculationNode(e){let t=this._featureCalculationManagerService.getReferenceExecutorMap();e.forEach(e=>{let n=new Set;for(let i of e.children){var r;let a=this._dependencyManagerService.getTreeById(i);a&&(a.featureId&&!((r=t.get(e.unitId))==null||(r=r.get(e.subUnitId))==null)&&r.has(a.featureId)||n.add(i))}e.children=n;let i=new Set;for(let n of e.parents){var a;let r=this._dependencyManagerService.getTreeById(n);r&&(r.featureId&&!((a=t.get(e.unitId))==null||(a=a.get(e.subUnitId))==null)&&a.has(r.featureId)||i.add(n))}e.parents=i})}_convertDirtyRangesToUnitRange(e){let t=[];for(let n in e){let r=e[n];for(let e in r){let i=r[e];for(let r of i)t.push({unitId:n,sheetId:e,range:r})}}return t}_intersectFeatureCalculation(e,t,n){let r=[],i=this._dependencyManagerService.searchDependency(e);for(let e=0,a=t.length;e<a;e++){let a=t[e];a.unitId===n.unitId&&a.subUnitId===n.subUnitId&&a.featureId===n.featureId||i.has(a.treeId)&&r.push(a)}return r}_getExistTreeList(e,t){let{unitId:n,subUnitId:r,featureId:i}=e;for(let e=0,a=t.length;e<a;e++){let a=t[e];if(a.unitId===n&&a.subUnitId===r&&a.featureId===i)return a}}_isCyclicUtil(e,t,n){let r=this._dependencyManagerService.getTreeById(e);if(r==null)return!1;if(!t.has(r.treeId)){t.add(r.treeId),n.add(r.treeId);for(let e of r.children)if(!t.has(e)&&this._isCyclicUtil(e,t,n)||n.has(e))return!0}return n.delete(r.treeId),!1}_checkIsCycleDependency(e){let t=new Set,n=new Set;for(let r=0,i=e.length;r<i;r++){let i=e[r];if(this._isCyclicUtil(i.treeId,t,n)===!0)return!0}return!1}async _generateTreeList(e,t,n){let r=Object.keys(e),i=Object.keys(t),a=[];this._currentConfigService.isForceCalculate()&&this._dependencyManagerService.reset(),this._registerFormulas(r,e,n,a),this._registerOtherFormulas(t,i,a),this._registerFeatureFormulas(a);for(let e=0,t=a.length;e<t;e++){let t=a[e];if(!t.formula)continue;let n=this._getTreeNode(t);t.isDirty=this._includeTree(t,n);let r=this._getAddressFunctionNodeList(n);if(r.length>0&&(t.addressFunctionNodes=r),t.isVirtual)continue;this._runtimeService.setCurrent(t.row,t.column,t.rowCount,t.columnCount,t.subUnitId,t.unitId);let i=await this._getRangeListByNode({node:n,refOffsetX:t.refOffsetX,refOffsetY:t.refOffsetY});t.pushRangeList(i)}for(let e=0,t=a.length;e<t;e++){let t=a[e];t.isCache||this._dependencyManagerService.addDependencyRTreeCache(t)}return await this._calculateListByFunctionRefNode(a),a}_registerFeatureFormulas(e){this._featureCalculationManagerService.getReferenceExecutorMap().forEach((t,n)=>{t.forEach((t,n)=>{t.forEach((t,n)=>{let r=this._dependencyManagerService.getFeatureFormulaDependency(t.unitId,t.subUnitId,n);e.push(this._getFeatureFormulaTree(n,r,t))})})})}_getFeatureFormulaTree(e,t,n){let{unitId:r,subUnitId:i,dependencyRanges:a,getDirtyData:o}=n,s=new Bs(t||Hs(this._dependencyManagerService));s.unitId=r,s.subUnitId=i,s.rangeList=a,s.getDirtyData=o;let c=o(this._currentConfigService.getDirtyData(),this._runtimeService.getAllRuntimeData());return s.featureDirtyRanges=this._convertDirtyRangesToUnitRange(c.dirtyRanges),s.featureId=e,s.type=Ls.FEATURE_FORMULA,this._dependencyManagerService.addFeatureFormulaDependency(r,i,e,s),this._dependencyManagerService.getFeatureFormulaDependency(n.unitId,n.subUnitId,e)&&(s.isCache=!0),s}_registerOtherFormulas(e,t,n){for(let r of t){let t=e[r];if(t==null)continue;let i=Object.keys(t);for(let e of i){let i=t[e];if(i==null)continue;let{rowCount:a=1/0,columnCount:o=1/0}=this._currentConfigService.getSheetRowColumnCount(r,e)||{},s=Object.keys(i);for(let t of s){let s=this._dependencyManagerService.hasOtherFormulaDataMainData(t),{f:c,ranges:l}=i[t],u=!1;s&&(u=!0);let d=Go(r,c,this._lexer,this._astTreeBuilder,this._currentConfigService),{firstRow:f,firstColumn:p}=this._getFirstCellOfRange(l),m=this._dependencyManagerService.getOtherFormulaDependency(r,e,t),h=new Bs((m==null?void 0:m.getValue(0,0))||Hs(this._dependencyManagerService));for(let i=0;i<l.length;i++){let s=l[i],{startRow:g,startColumn:_}=s,{endRow:v,endColumn:y}=s;v=Math.min(v,a-1),y=Math.min(y,o-1);for(let i=g;i<=v;i++)for(let a=_;a<=y;a++){let o=a-p,s=i-f;if(o===0&&s===0){h.node=d,h.formula=c,h.unitId=r,h.subUnitId=e,h.formulaId=t,h.type=Ls.OTHER_FORMULA,h.isCache=u,n.push(h),this._dependencyManagerService.addOtherFormulaDependency(r,e,t,h),this._dependencyManagerService.addFormulaDependencyByDefinedName(h);continue}let l=new zs;l.treeId=(m==null?void 0:m.getValue(o,s))||Hs(this._dependencyManagerService),l.refTree=h,l.refOffsetX=o,l.refOffsetY=s,l.isCache=u,l.type=Ls.OTHER_FORMULA,this._dependencyManagerService.addOtherFormulaDependency(r,e,t,l),this._dependencyManagerService.addFormulaDependencyByDefinedName(l),n.push(l)}}this._dependencyManagerService.addOtherFormulaDependencyMainData(t)}}}}_getFirstCellOfRange(e){let t=e[0];return{firstRow:t.startRow,firstColumn:t.startColumn}}_registerFormulas(e,n,r,i){for(let a of e){let e=n[a];if(e==null)continue;let o=Object.keys(e);for(let n of o){let o=new t.ObjectMatrix(e[n]||{}),s=new Map;o.forValue((e,t,o)=>{if(o==null)return!0;let{x:c=0,y:l=0,si:u}=o;if(!(c===0&&l===0&&u!=null))return!0;let d=this._createFDtree(a,n,e,t,r,o),f=this._dependencyManagerService.getFormulaDependency(a,n,e,t);f==null?(this._dependencyManagerService.addFormulaDependency(a,n,e,t,d),this._dependencyManagerService.addFormulaDependencyByDefinedName(d)):(d.treeId=f,d.isCache=!0,this._dependencyManagerService.updateDependencyTreeDirtyState(f,!1)),s.set(u,d),i.push(d)}),o.forValue((e,t,o)=>{if(o==null)return!0;let{x:c=0,y:l=0,si:u}=o;if(c===0&&l===0&&u!=null)return!0;let d;if(u&&s.has(u)){let e=s.get(u);d=this._createVirtualFDtree(e,o)}else d=this._createFDtree(a,n,e,t,r,o);let f=this._dependencyManagerService.getFormulaDependency(a,n,e,t);f==null?(this._dependencyManagerService.addFormulaDependency(a,n,e,t,d),this._dependencyManagerService.addFormulaDependencyByDefinedName(d)):(d.treeId=f,d.isCache=!0,this._dependencyManagerService.updateDependencyTreeDirtyState(f,!1)),i.push(d)}),s.clear()}}}_createFDtree(e,t,n,r,i,a){let{f:o,x:s=0,y:c=0}=a,l=new Bs(Hs(this._dependencyManagerService)),u=i[e][t];return l.node=Go(e,o,this._lexer,this._astTreeBuilder,this._currentConfigService),l.formula=o,l.unitId=e,l.subUnitId=t,l.row=n,l.column=r,l.rowCount=u.rowCount,l.columnCount=u.columnCount,l}_createVirtualFDtree(e,t){let{x:n=0,y:r=0}=t,i=new zs;return i.treeId=Hs(this._dependencyManagerService),i.refTree=e,i.refOffsetX=n,i.refOffsetY=r,i}_updateRangeFlatten(){let e=this._currentConfigService.isForceCalculate(),t=this._currentConfigService.getDirtyRanges();if(!e){this._updateRangeFlattenCache.clear();for(let e=0;e<t.length;e++){let n=t[e],r=n.range,i=n.sheetId,a=n.unitId;this._addFlattenCache(a,i,r)}}}_addFlattenCache(e,t,n){let r=this._updateRangeFlattenCache.get(e);r==null&&(r=new Map,this._updateRangeFlattenCache.set(e,r));let i=r.get(t);i==null&&(i=[],r.set(t,i)),i.push(n)}_isPreCalculateNode(e){return e.nodeType===H.UNION||e.nodeType===H.PREFIX&&e.getToken()===T.AT||e.nodeType===H.SUFFIX&&e.getToken()===C.POUND}_nodeTraversalRef(e,t){let n=e.getChildren(),r=n.length;for(let e=0;e<r;e++){let r=n[e];if(this._isPreCalculateNode(r)){if(t.push(r),r.nodeType===H.UNION)for(let e of r.getChildren())e.nodeType===H.FUNCTION&&e.isAddress()&&this._nodeTraversalRef(e,t);continue}else r.nodeType===H.REFERENCE&&t.push(r);this._nodeTraversalRef(r,t)}}_nodeTraversalReferenceFunction(e,t){let n=e.getChildren(),r=n.length;for(let e=0;e<r;e++){let r=n[e];if(r.nodeType===H.FUNCTION&&r.isAddress()){t.push(r);continue}this._nodeTraversalReferenceFunction(r,t)}}async _executeNode(e,t=0,n=0){let r,i={node:e,refOffsetX:t,refOffsetY:n};return r=this._interpreter.checkAsyncNode(e)?await this._interpreter.executeAsync(i):this._interpreter.execute(i),r}async _getRangeListByNode(e){let t=[],n=e.refOffsetX,r=e.refOffsetY,i=e.node;if(i==null)return[];this._nodeTraversalRef(i,t);let a=[];for(let e=0,i=t.length;e<i;e++){let i=t[e],o=(await this._executeNode(i,n,r)).toUnitRange();a.push(o),i.setValue(null)}return a}_getAddressFunctionNodeList(e){let t=[];return e==null?[]:(this._nodeTraversalReferenceFunction(e,t),t)}_getTreeNode(e){return e.node}async _buildDirtyRangesByAddressFunction(e,t){let n=t.addressFunctionNodes;if(n.length===0)return;let r=t.refOffsetX,i=t.refOffsetY,a=await this._getRangeListByFunctionRefNode(n,r,i);t.addressFunctionNodes=[],this._addDependencyTreeByAddressFunction(t,a);let o=e.bulkSearch(a),s=this._buildTreeNodeById(o);s.length!==0&&await this._calculateAddressFunctionRuntimeData(e,s)}async _calculateListByFunctionRefNode(e){let n=new t.RTree;for(let t=0,r=e.length;t<r;t++){let r=e[t];n.insert({unitId:r.unitId,sheetId:r.subUnitId,range:{startRow:r.row,startColumn:r.column,endRow:r.row,endColumn:r.column},id:r.treeId})}this._executedAddressFunctionNodeIds.clear();for(let t=0,r=e.length;t<r;t++){let r=e[t];await this._calculateAddressFunction(n,r)}}async _calculateAddressFunction(e,t){let n=t.addressFunctionNodes;if(n.length===0)return;let r=t.refOffsetX,i=t.refOffsetY;this._runtimeService.setCurrent(t.row,t.column,t.rowCount,t.columnCount,t.subUnitId,t.unitId);let a=[];for(let e=0,t=n.length;e<t;e++){let t=await this._getRangeListByNode({node:n[e],refOffsetX:r,refOffsetY:i});a.push(...t)}let o=new Set;this._searchDependencyByAddressFunction(e,a,o);let s=this._buildTreeNodeById(o);if(s.length===0){await this._buildDirtyRangesByAddressFunction(e,t);return}await this._calculateAddressFunctionRuntimeData(e,s),await this._buildDirtyRangesByAddressFunction(e,t)}async _calculateAddressFunctionRuntimeData(e,t){for(;t.length>0;){let n=t.pop(),r={node:this._getTreeNode(n),refOffsetX:n.refOffsetX,refOffsetY:n.refOffsetY};await this._calculateAddressFunction(e,n),this._runtimeService.setCurrent(n.row,n.column,n.rowCount,n.columnCount,n.subUnitId,n.unitId);let i;i=this._interpreter.checkAsyncNode(r.node)?await this._interpreter.executeAsync(r):this._interpreter.execute(r),n.formulaId==null?this._runtimeService.setRuntimeData(i):this._runtimeService.setRuntimeOtherData(n.formulaId,n.refOffsetX,n.refOffsetY,i)}}_buildTreeNodeById(e){let t=[];for(let n of e){let e=this._getTreeById(n);!e||this._executedAddressFunctionNodeIds.has(n)||(this._executedAddressFunctionNodeIds.add(n),t.push(e))}return t}_searchDependencyByAddressFunction(e,t,n){let r=e.bulkSearch(t),i=this._dependencyRTreeCacheForAddressFunction.bulkSearch(t);for(let e of i)n.has(e)||n.add(e);let a=[];for(let e of r){let t=this._getTreeById(e);t&&!n.has(e)&&(a.push(...t.rangeList),n.add(e))}return a.length>0&&this._searchDependencyByAddressFunction(e,a,n),n}_getTreeById(e){return this._dependencyManagerService.getTreeById(e)}_addDependencyTreeByAddressFunction(e,t){let n=[];for(let r=0;r<t.length;r++){let{unitId:i,sheetId:a,range:o}=t[r];n.push({unitId:i,sheetId:a,range:o,id:e.treeId})}this._dependencyRTreeCacheForAddressFunction.bulkInsert(n)}async _getRangeListByFunctionRefNode(e,t,n){let r=[];for(let i=0,a=e.length;i<a;i++){let a=e[i],o=(await this._executeNode(a,t,n)).toUnitRange();r.push(o),a.setValue(null)}return r}_getUpdateTreeListAndMakeDependency(e){let t=[],n=new Set,r=this._currentConfigService.isForceCalculate(),i=this._currentConfigService.getDirtyRanges(),a=this._dependencyManagerService.searchDependency(i),o=this._dependencyRTreeCacheForAddressFunction.bulkSearch(i);for(let e of o)a.add(e);let s=this._dependencyManagerService.buildDependencyTree(e);for(let e of s){let i=e.treeId;(r||e.isDirty||e.dependencySheetName(this._currentConfigService.getDirtyNameMap())||a.has(i)&&!e.isExcludeRange(this._currentConfigService.getExcludedRange()))&&!n.has(i)&&(t.push(e),n.add(i))}return t}_includeTreeFeature(e){let t=e.unitId,n=e.subUnitId,r=e.featureId;if(r!=null){var i;let e=this._currentConfigService.getDirtyUnitFeatureMap();if((e==null||(i=e[t])==null||(i=i[n])==null?void 0:i[r])!=null)return!0}return!1}_includeOtherFormula(e){let t=e.unitId,n=e.subUnitId,r=e.formulaId;if(r!=null){var i;let e=this._currentConfigService.getDirtyUnitOtherFormulaMap();if((e==null||(i=e[t])==null||(i=i[n])==null?void 0:i[r])!=null)return!0}return!1}_detectForcedRecalculationNode(e,t){return t==null?!1:this._detectForcedRecalculationNodeRecursion(t)}_detectForcedRecalculationNodeRecursion(e){if(e.isForcedCalculateFunction())return!0;let t=e.getChildren();for(let e=0,n=t.length;e<n;e++){let n=t[e];if(this._detectForcedRecalculationNodeRecursion(n))return!0}return!1}_includeTree(e,t){var n,r;let i=e.unitId,a=e.subUnitId;if(this._detectForcedRecalculationNode(e,t)===!0||this._includeTreeFeature(e)===!0||this._includeOtherFormula(e)===!0||qo(e,t,this._currentConfigService)===!0)return!0;let o=(n=this._currentConfigService.getExcludedRange())==null||(n=n[i])==null?void 0:n[a];if((o==null?void 0:o.getValue(e.row,e.column))!=null)return!1;if(((r=this._currentConfigService.getDirtyNameMap()[i])==null?void 0:r[a])!=null)return!0;if(!this._updateRangeFlattenCache.has(i))return!1;let s=this._updateRangeFlattenCache.get(i);if(!s.has(a))return!1;let c=s.get(a);for(let t of c)if(e.inRangeData(t))return!0;return!1}_calculateRunList(e){e.length;let t=e,n=[],r=[];for(;t.length>0;){let e=t.pop();if(e===void 0||e.isSkip())continue;if(e.isAdded()){n.push(e),e.setSkip();continue}r.length=0;for(let t of e.parents){let n=this._dependencyManagerService.getTreeById(t);if(!n){console.error(`Dependency tree not found for treeId:`,t);continue}n.isAdded()||e.isSkip()||r.push(n)}let i=this._dependencyRTreeCacheForAddressFunction.bulkSearch(e.toRTreeItem());for(let t of i){let n=this._dependencyManagerService.getTreeById(t);if(!n){console.error(`Dependency tree not found for treeId:`,t);continue}n.isAdded()||e.isSkip()||r.push(n)}r.length===0?(n.push(e),e.setSkip()):(e.setAdded(),t.push(e,...r))}return n}async _initializeGenerateTreeList(){let e=this._currentConfigService.getFormulaData(),t=this._otherFormulaManagerService.getOtherFormulaData(),n=this._currentConfigService.getUnitData();return await this._generateTreeList(e,t,n)}async _getAllTreeList(){let e=await this._initializeGenerateTreeList();return this._dependencyManagerService.buildDependencyTree(e)}_getTreeModel(e){let t=this._formulaDependencyTreeModel.get(e);if(!t){let n=this._getTreeById(e);if(!n){console.error(`FormulaDependencyTree is null for treeId:`,e);return}t=new Vs(n),this._formulaDependencyTreeModel.set(e,t)}return t}_getDependencyTreeParenIds(e){return e.parents}_getDependencyTreeChildrenIds(e){return e.children}_getFormulaDependencyTreeModel(e){let t=this._getTreeModel(e.treeId),n=this._getDependencyTreeParenIds(e);if(!t)return new Vs(e);for(let e of n){let n=this._getTreeModel(e);n&&(t.addParent(n),n.addChild(t))}return t}_endFormulaDependencyTreeModel(){this._formulaDependencyTreeModel.clear()}_startFormulaDependencyTreeModel(){}_getAllDependencyJson(e){this._startFormulaDependencyTreeModel();let t=[];for(let n of e){let e=n.type;if(n.isVirtual&&(e===Ls.FEATURE_FORMULA||e===Ls.OTHER_FORMULA))continue;let r=this._getFormulaDependencyTreeModel(n);t.push(r)}let n=[];for(let e of t)n.push(e.toJson());return this._endFormulaDependencyTreeModel(),n}async getAllDependencyJson(){let e=await this._getAllTreeList();return this._getAllDependencyJson(e)}_setRealFormulaString(e){if(e.refTreeId==null)return;let t=this._getTreeById(e.refTreeId);t&&(e.formula=this._lexerTreeBuilder.moveFormulaRefOffset(t.formula,e.refOffsetX,e.refOffsetY))}async getCellDependencyJson(e,t,n,r){await this._initializeGenerateTreeList();let i=this._dependencyManagerService.getFormulaDependency(e,t,n,r);if(i==null)return;let a=this._getTreeById(i);if(!a)return;this._startFormulaDependencyTreeModel();let o=this._getFormulaDependencyTreeModel(a);this._setRealFormulaString(o);let s=this._getDependencyTreeChildrenIds(a);for(let e of s){let t=this._getTreeModel(e);t&&(this._setRealFormulaString(t),o.addChild(t))}for(let e of o.parents)this._setRealFormulaString(e);return this._endFormulaDependencyTreeModel(),o.toFullJson()}_getRangeDependents(e){let t=this._dependencyManagerService.searchDependency(e),n=[];for(let e of t){let t=this._getTreeById(e);if(!t)continue;let r=this._getFormulaDependencyTreeModel(t);this._setRealFormulaString(r),n.push(r)}let r=[];for(let e of n)e&&r.push(e.toJson());return r}async getRangeDependents(e){await this._initializeGenerateTreeList(),this._startFormulaDependencyTreeModel();let t=this._getRangeDependents(e);return this._endFormulaDependencyTreeModel(),t}_getInRangeFormulas(e,t){let n=[];for(let r of t)for(let t of e){let e=t.unitId,i=t.sheetId;if(!(r.unitId!==e||r.subUnitId!==i)&&(t.range,r.inRangeData(t.range))){n.push(r);break}}let r=[];for(let e of n){let t=this._getFormulaDependencyTreeModel(e);this._setRealFormulaString(t),r[e.treeId]=t}let i=[];for(let e of r)e&&i.push(e.toJson());return i}async getInRangeFormulas(e){let t=await this._getAllTreeList();this._startFormulaDependencyTreeModel();let n=this._getInRangeFormulas(e,t);return this._endFormulaDependencyTreeModel(),n}async getRangeDependentsAndInRangeFormulas(e){let t=await this._getAllTreeList();this._startFormulaDependencyTreeModel();let n=this._getRangeDependents(e),r=this._getInRangeFormulas(e,t);return this._endFormulaDependencyTreeModel(),{dependents:n,inRanges:r}}};Ws=un([A(0,fr),A(1,jo),A(2,Fs),A(3,Ns),A(4,(0,t.Inject)(t.IUniverInstanceService)),A(5,(0,t.Inject)(rs)),A(6,(0,t.Inject)(Os)),A(7,(0,t.Inject)(pr)),A(8,js),A(9,(0,t.Inject)($n))],Ws);let Gs=(0,t.createIdentifier)(`engine-formula.calculate-formula.service`),Ks=class extends t.Disposable{constructor(e,r,i,a,o,s,c){super(),this._configService=e,this._lexer=r,this._currentConfigService=i,this._runtimeService=a,this._formulaDependencyGenerator=o,this._interpreter=s,this._astTreeBuilder=c,d(this,`_executionInProgressListener$`,new n.Subject),d(this,`executionInProgressListener$`,this._executionInProgressListener$.asObservable()),d(this,`_executionCompleteListener$`,new n.Subject),d(this,`executionCompleteListener$`,this._executionCompleteListener$.asObservable()),d(this,`_executeLock`,new t.AsyncLock),d(this,`_isCalculateTreeModel`,!1)}dispose(){super.dispose(),this._executionInProgressListener$.complete(),this._executionCompleteListener$.complete(),to.clear(),cr.clear(),te.clear(),Wa.clear()}stopFormulaExecution(){this._runtimeService.stopExecution()}setRuntimeFeatureCellData(e,t){this._runtimeService.setRuntimeFeatureCellData(e,t)}setRuntimeFeatureRange(e,t){this._runtimeService.setRuntimeFeatureRange(e,t)}async execute(e){this._runtimeService.setFormulaExecuteStage(Oo.START),this._executionInProgressListener$.next(this._runtimeService.getRuntimeState()),this._currentConfigService.load(e),this._runtimeService.reset();let t=e.maxIteration||1;this._isCalculateTreeModel=e.isCalculateTreeModel||!1,this._executeLock.acquire(`FORMULA_EXECUTION_LOCK`,async()=>{for(let e=0;e<t&&(this._runtimeService.setFormulaCycleIndex(e),await this._executeStep(),to.clear(),this._runtimeService.isCycleDependency());e++);this._runtimeService.setFormulaExecuteStage(Oo.CALCULATION_COMPLETED),this._executionInProgressListener$.next(this._runtimeService.getRuntimeState()),this._executionCompleteListener$.next(this._runtimeService.getAllRuntimeData()),cr.clear(),this._runtimeService.reset()})}async _executeStep(){let e=await this._apply();if(e==null)return;let{arrayFormulaRange:t,runtimeFeatureRange:n}=e,{dirtyRanges:r,excludedCell:i}=this._getArrayFormulaDirtyRangeAndExcludedRange(t,n);return r==null||r.length===0?!0:(to.clear(),this._currentConfigService.loadDirtyRangesAndExcludedCell(r,i),await this._apply(!0),!0)}_getArrayFormulaDirtyRangeAndExcludedRange(e,n){let r=[],i={};return Object.keys(e).forEach(n=>{let a=e[n];if(a==null)return!0;Object.keys(a).forEach(e=>{let o=new t.ObjectMatrix(a[e]);if(o==null)return!0;let s=new t.ObjectMatrix;o.forValue((t,i,a)=>{s.setValue(t,i,!0),r.push({unitId:n,sheetId:e,range:a})}),i[n]==null&&(i[n]={}),i[n][e]=s})}),Object.keys(n).forEach(e=>{let t=n[e];Object.keys(t).forEach(e=>{let n=t[e];if(n==null)return!0;Object.keys(n).forEach(t=>{let i=n[t];if(i==null)return!0;for(let n of i)r.push({unitId:e,sheetId:t,range:n})})})}),{dirtyRanges:r,excludedCell:i}}async _apply(e=!1){e?this._runtimeService.setFormulaExecuteStage(Oo.START_DEPENDENCY_ARRAY_FORMULA):this._runtimeService.setFormulaExecuteStage(Oo.START_DEPENDENCY),this._executionInProgressListener$.next(this._runtimeService.getRuntimeState());let n=(await this._formulaDependencyGenerator.generate(this._isCalculateTreeModel)).reverse(),r=this._interpreter;e?(this._runtimeService.setFormulaExecuteStage(Oo.START_CALCULATION_ARRAY_FORMULA),this._runtimeService.setTotalArrayFormulasToCalculate(n.length)):(this._runtimeService.setFormulaExecuteStage(Oo.START_CALCULATION),this._runtimeService.setTotalFormulasToCalculate(n.length)),this._executionInProgressListener$.next(this._runtimeService.getRuntimeState());let i=[],a=this._configService.getConfig(Hn),o=(a==null?void 0:a.intervalCount)||500,s=n.length;for(let a=0;a<s;a++){var c;let s=n[a],l=s.nodeData,u=s.getDirtyData;if(a%o===0&&(await new Promise(e=>{let n=(0,t.requestImmediateMacroTask)(e);i.push(n)}),e?(this._runtimeService.setFormulaExecuteStage(Oo.CURRENTLY_CALCULATING_ARRAY_FORMULA),this._runtimeService.setCompletedArrayFormulasCount(a+1)):(this._runtimeService.setFormulaExecuteStage(Oo.CURRENTLY_CALCULATING),this._runtimeService.setCompletedFormulasCount(a+1)),this._executionInProgressListener$.next(this._runtimeService.getRuntimeState()),this._runtimeService.isStopExecution()||l==null&&u==null)){this._runtimeService.setFormulaExecuteStage(Oo.IDLE),this._runtimeService.markedAsStopFunctionsExecuted(),this._executionCompleteListener$.next(this._runtimeService.getAllRuntimeData());return}this._runtimeService.setCurrent(s.row,s.column,s.rowCount,s.columnCount,s.subUnitId,s.unitId);let d;if(u!=null&&s.featureId!=null){let{runtimeCellData:e,dirtyRanges:t}=u(this._currentConfigService.getDirtyData(),this._runtimeService.getAllRuntimeData());this._runtimeService.setRuntimeFeatureCellData(s.featureId,e),this._runtimeService.setRuntimeFeatureRange(s.featureId,t)}else l!=null&&(d=r.checkAsyncNode(l.node)?await r.executeAsync(l):r.execute(l),s.formulaId==null?this._runtimeService.setRuntimeData(d):this._runtimeService.setRuntimeOtherData(s.formulaId,s.refOffsetX,s.refOffsetY,d));(c=l.node)==null||c.resetCalculationState()}return i.forEach(e=>e()),i=[],s>0?this._runtimeService.markedAsSuccessfullyExecuted():e||this._runtimeService.markedAsNoFunctionsExecuted(),this._runtimeService.getAllRuntimeData()}async executeFormulas(e,t){this._currentConfigService.loadDataLite(t);let n=this._currentConfigService.getUnitData();this._runtimeService.reset();let r={};for(let t of Object.keys(e)){let a=e[t];if(a!=null){r[t]={};for(let e of Object.keys(a)){var i;let o=a[e];if(o==null)continue;let s=(i=n[t])==null?void 0:i[e];if(s!=null){r[t][e]={};for(let n of Object.keys(o)){let i=Number.parseInt(n);r[t][e][i]={};let a=o[i];if(a)for(let n of Object.keys(a)){let o=Number.parseInt(n),c=a[o];if(!c)continue;let l=s.rowCount||0,u=s.columnCount||0;this._runtimeService.setCurrent(i,o,l,u,e,t);let d=[];for(let e of c){let t=await this.calculate(e);if(!t){d.push({value:null,formula:e});continue}t.isReferenceObject()&&(t=t.toArrayValueObject());let n=t;if(n.isArray()){let t=n;if(t.getRowCount()===1&&t.getColumnCount()===1){d.push({value:t.getFirstCell().getValue(),formula:e});continue}d.push({value:t.toValue(),formula:e});continue}d.push({value:n.getValue(),formula:e})}r[t][e][i][o]=d}}}}}}return r}async calculate(e){let t=this._lexer.treeBuilder(e);if(Object.values(p).includes(t))return;let n=this._astTreeBuilder.parse(t),r=this._interpreter;if(n==null)return;let i={node:n,refOffsetX:0,refOffsetY:0};return r.checkAsyncNode(n)?await r.executeAsync(i):r.execute(i)}async getAllDependencyJson(){return this._currentConfigService.loadDataLite(),this._formulaDependencyGenerator.getAllDependencyJson()}async getCellDependencyJson(e,t,n,r){return this._currentConfigService.loadDataLite(),this._formulaDependencyGenerator.getCellDependencyJson(e,t,n,r)}async getRangeDependents(e){return this._currentConfigService.loadDataLite(),this._formulaDependencyGenerator.getRangeDependents(e)}async getInRangeFormulas(e){return this._currentConfigService.loadDataLite(),this._formulaDependencyGenerator.getInRangeFormulas(e)}async getDependentsAndInRangeFormulas(e){return this._currentConfigService.loadDataLite(),this._formulaDependencyGenerator.getRangeDependentsAndInRangeFormulas(e)}};Ks=un([A(0,t.IConfigService),A(1,(0,t.Inject)(pr)),A(2,fr),A(3,jo),A(4,Us),A(5,(0,t.Inject)(rs)),A(6,(0,t.Inject)(Os))],Ks);let qs=class extends t.Disposable{constructor(e,t,n){super(),this._commandService=e,this._calculateFormulaService=t,this._formulaDataModel=n,this._initialize()}_initialize(){this._commandExecutedListener(),this._initialExecuteFormulaListener()}_commandExecutedListener(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(e.id===Sn.id)this._calculateFormulaService.stopFormulaExecution();else if(e.id===vn.id)this._calculate(e.params);else if(e.id===Lt.id){let t=e.params;if(t==null)return;let{arrayFormulaRange:n,arrayFormulaCellData:r}=t;this._formulaDataModel.setArrayFormulaRange(n),this._formulaDataModel.setArrayFormulaCellData(r)}else if(e.id===bn.id)this._calculateFormulaString(e.params);else if(e.id===Tn.id)this._generateAllDependencyTreeJson();else if(e.id===Dn.id)this._generateCellDependencyTreeJson(e.params);else if(e.id===kn.id){let t=e.params;this._queryFormulaDependencyJson(t)}else if(e.id===jn.id){let t=e.params;this._queryFormulaDependencyAllJson(t)}}))}async _calculate(e){let{forceCalculation:t=!1,dirtyRanges:n=[],dirtyNameMap:r={},dirtyDefinedNameMap:i={},dirtyUnitFeatureMap:a={},dirtyUnitOtherFormulaMap:o={},clearDependencyTreeCache:s={},maxIteration:c=1,rowData:l,isCalculateTreeModel:u=!1}=e,d=this._formulaDataModel.getFormulaData(),f=this._formulaDataModel.getArrayFormulaCellData(),p=this._formulaDataModel.getArrayFormulaRange();this._calculateFormulaService.execute({formulaData:d,arrayFormulaCellData:f,arrayFormulaRange:p,forceCalculate:t,dirtyRanges:n,dirtyNameMap:r,dirtyDefinedNameMap:i,dirtyUnitFeatureMap:a,dirtyUnitOtherFormulaMap:o,clearDependencyTreeCache:s,maxIteration:c,isCalculateTreeModel:u,rowData:l})}async _queryFormulaDependencyJson(e){let{unitRanges:t,isInRange:n}=e,r=[];r=n?await this._calculateFormulaService.getInRangeFormulas(t):await this._calculateFormulaService.getRangeDependents(t),this._commandService.executeCommand(An.id,{result:r},{onlyLocal:!0})}async _queryFormulaDependencyAllJson(e){let{unitRanges:t}=e,n=await this._calculateFormulaService.getDependentsAndInRangeFormulas(t);this._commandService.executeCommand(Mn.id,{result:n},{onlyLocal:!0})}async _generateAllDependencyTreeJson(){let e=await this._calculateFormulaService.getAllDependencyJson();this._commandService.executeCommand(En.id,{result:e},{onlyLocal:!0})}async _generateCellDependencyTreeJson(e){let{unitId:t,sheetId:n,row:r,column:i}=e,a=await this._calculateFormulaService.getCellDependencyJson(t,n,r,i);this._commandService.executeCommand(On.id,{result:a},{onlyLocal:!0})}async _calculateFormulaString(e){let{formulas:t}=e,n=await this._calculateFormulaService.executeFormulas(t);this._commandService.executeCommand(xn.id,{result:n},{onlyLocal:!0})}_initialExecuteFormulaListener(){this._calculateFormulaService.executionCompleteListener$.subscribe(e=>{let t=e.functionsExecutedState;switch(t){case ko.NOT_EXECUTED:this._applyTreeResult(e);break;case ko.STOP_EXECUTION:break;case ko.SUCCESS:this._applyResult(e);break;case ko.INITIAL:break}this._commandService.executeCommand(Cn.id,{functionsExecutedState:t},{onlyLocal:!0})}),this._calculateFormulaService.executionInProgressListener$.subscribe(e=>{this._commandService.executeCommand(Cn.id,{stageInfo:e},{onlyLocal:!0})})}async _applyTreeResult(e){let{dependencyTreeModelData:t}=e;t.length>0&&this._commandService.executeCommand(En.id,{result:t},{onlyLocal:!0})}async _applyResult(e){let{unitData:t,unitOtherData:n,arrayFormulaRange:r,arrayFormulaCellData:i,clearArrayFormulaCellData:a,arrayFormulaEmbedded:o,imageFormulaData:s,dependencyTreeModelData:c}=e;if(!t){this._applyTreeResult(e),console.error(`No sheetData from Formula Engine!`);return}(r||o)&&(this._formulaDataModel.clearPreviousArrayFormulaCellData(a),this._formulaDataModel.mergeArrayFormulaCellData(i),this._formulaDataModel.mergeArrayFormulaRange(r),this._commandService.executeCommand(Lt.id,{arrayFormulaRange:this._formulaDataModel.getArrayFormulaRange(),arrayFormulaCellData:this._formulaDataModel.getArrayFormulaCellData(),arrayFormulaEmbedded:o},{onlyLocal:!0})),s&&s.length>0&&this._commandService.executeCommand(Pn.id,{imageFormulaData:s},{onlyLocal:!0}),this._applyTreeResult(e),this._commandService.executeCommand(wn.id,{unitData:jt(t),unitOtherData:n},{onlyLocal:!0})}};qs=un([A(0,t.ICommandService),A(1,Gs),A(2,(0,t.Inject)(nr))],qs);let Js=/[\[\]]/g;function Ys(e,t){return Js.test(e)?t+Number(e.replace(Js,``)):Number(e)-1}function Xs(e,n=0,r=0){e=e.toLocaleUpperCase();let i=e.split(/[RC]/),a=i[1],o=i[2];return{row:Ys(a,n),column:Ys(o,r),absoluteRefType:t.AbsoluteRefType.NONE}}function Zs(e,t=0,n=0){let{refBody:r,sheetName:i,unitId:a}=Jt(e),o=r.indexOf(`:`);if(o===-1){let e=Xs(r,t,n),o=e.row,s=e.column,c=e.absoluteRefType;return{unitId:a,sheetName:i,range:{startRow:o,startColumn:s,endRow:o,endColumn:s,startAbsoluteRefType:c,endAbsoluteRefType:c}}}let s=r.substring(0,o),c=r.substring(o+1),l=Xs(s,t,n),u=Xs(c,t,n);return{unitId:a,sheetName:i,range:{startRow:l.row,startColumn:l.column,endRow:u.row,endColumn:u.column,startAbsoluteRefType:l.absoluteRefType,endAbsoluteRefType:u.absoluteRefType}}}function Qs(e){let t=$s(e.startRow,e.startAbsoluteRefType,!0),n=$s(e.startColumn,e.startAbsoluteRefType,!1),r=$s(e.endRow,e.endAbsoluteRefType,!0),i=$s(e.endColumn,e.endAbsoluteRefType,!1);return t===r&&n===i?`R${t}C${n}`:`R${t}C${n}:R${r}C${i}`}function $s(e,n=t.AbsoluteRefType.ALL,r){switch(e+=1,n){case t.AbsoluteRefType.ALL:return`${e}`;case t.AbsoluteRefType.ROW:return r?`${e}`:`[${e}]`;case t.AbsoluteRefType.COLUMN:return r?`[${e}]`:`${e}`;case t.AbsoluteRefType.NONE:return`[${e}]`}}function ec(e){let t=e;if(e.isArray()){let n=e.getRowCount(),r=e.getColumnCount();if(n>1||r>1)return E.create(p.VALUE);t=e.get(0,0)}return t.isError(),t}function tc(...e){for(let t=0;t<e.length;t++){let n=ec(e[t]);if(n.isError())return{isError:!0,errorObject:n};e[t]=n}return{isError:!1,variants:e}}function Y(...e){for(let t=0;t<e.length;t++){let n=ec(e[t]);if(n.isError())return{isError:!0,errorObject:n};if(n.isBoolean())return{isError:!0,errorObject:E.create(p.VALUE)};e[t]=n}return{isError:!1,variants:e}}function nc(...e){for(let t=0;t<e.length;t++){let n=e[t];if(n.isError())return{isError:!0,errorObject:n};if(n.isNull())return{isError:!0,errorObject:E.create(p.NA)};if(n=ec(e[t]),n.isError())return{isError:!0,errorObject:n};if(n.isBoolean())return{isError:!0,errorObject:E.create(p.VALUE)};e[t]=n}return{isError:!1,variants:e}}function X(...e){for(let t=0;t<e.length;t++){let n=e[t];if(n.isString()&&(n=n.convertToNumberObjectValue()),n.isError())return{isError:!0,errorObject:n};e[t]=n}return{isError:!1,variants:e}}var Z=class{constructor(e){this._name=e,d(this,`_unitId`,void 0),d(this,`_subUnitId`,void 0),d(this,`_row`,-1),d(this,`_column`,-1),d(this,`_definedNames`,void 0),d(this,`_locale`,void 0),d(this,`_sheetOrder`,void 0),d(this,`_sheetNameMap`,void 0),d(this,`_formulaDataModel`,void 0),d(this,`_rowCount`,-1),d(this,`_columnCount`,-1),d(this,`needsExpandParams`,!1),d(this,`needsReferenceObject`,!1),d(this,`needsLocale`,!1),d(this,`needsSheetsInfo`,!1),d(this,`needsFormulaDataModel`,!1),d(this,`needsSheetRowColumnCount`,!1),d(this,`needsFilteredOutRows`,!1),d(this,`minParams`,-1),d(this,`maxParams`,-1)}get name(){return this._name}get unitId(){return this._unitId}get subUnitId(){return this._subUnitId}get row(){return this._row}get column(){return this._column}dispose(){}getDefinedName(e){var t;let n=this._definedNames;return n==null?null:(t=Array.from(Object.values(n)).filter(t=>t.name===e))==null?void 0:t[0]}setDefinedNames(e){this._definedNames=e}getLocale(){return this._locale}setLocale(e){this._locale=e}getSheetsInfo(){return{sheetOrder:this._sheetOrder,sheetNameMap:this._sheetNameMap}}setSheetsInfo({sheetOrder:e,sheetNameMap:t}){this._sheetOrder=e,this._sheetNameMap=t}setFormulaDataModel(e){this._formulaDataModel=e}setSheetRowColumnCount(e,t){this._rowCount=e,this._columnCount=t}isAsync(){return!1}isAddress(){return!1}isCustom(){return!1}isArgumentsIgnoreNumberPattern(){return!1}setRefInfo(e,t,n,r){this._unitId=e,this._subUnitId=t,this._row=n,this._column=r}calculateCustom(...e){return null}calculate(...e){return E.create(p.VALUE)}checkArrayType(e){return e.isReferenceObject()||e.isValueObject()&&e.isArray()}getIndexNumValue(e,t=1){let n=e;if(n.isArray()&&(n=n.getFirstCell()),n.isBoolean())return n.getValue()===!1?E.create(p.VALUE):t;if(n.isString()){let e=Number(n.getValue());return Number.isNaN(e)?E.create(p.REF):e}else if(n.isNumber())return n.getValue();return E.create(p.VALUE)}getZeroOrOneByOneDefault(e){if(e==null)return 1;let t=1;if(e.isArray()&&(e=e.getFirstCell()),e.isBoolean())e.getValue()===!1&&(t=0);else if(e.isString())return;else e.isNumber()&&e.getValue()===0&&(t=0);return t}getMatchTypeValue(e){if(e==null)return 1;let t=1;if(e.isArray()&&(e=e.getFirstCell()),e.isBoolean())e.getValue()===!1&&(t=0);else if(e.isString())return;else if(e.isNumber()){let n=e.getValue();n<=0&&(t=n)}return t}binarySearch(e,t,n,r,i){let a=t.binarySearch(e,r,i);if(a==null)return E.create(p.NA);let o;return o=n.getRowCount()===1?n.get(0,a)||Ua.create():n.get(a,0)||Ua.create(),o.isNull()?R.create(0):o}_getOneFirstByRaw(e){return e.length===0?E.create(p.NA):e[0][0]||E.create(p.NA)}_getOneLastByRaw(e){return e.length===0?E.create(p.NA):e[e.length-1][e[0].length-1]||E.create(p.NA)}equalSearch(e,t,n,r=!0){let i=n.pickRaw(t.isEqual(e));return r?this._getOneFirstByRaw(i):this._getOneLastByRaw(i)}fuzzySearch(e,t,n,r=!0){let i=n.pickRaw(t.compare(e,v.EQUALS));return r?this._getOneFirstByRaw(i):this._getOneLastByRaw(i)}orderSearch(e,t,n,r=yr.MIN,i=!1){let a=t.orderSearch(e,r,i);if(a==null)return E.create(p.NA);let o=n.get(a.row,a.column)||Ua.create();return o.isNull()?E.create(p.NA):o}binarySearchExpand(e,t,n,r=0,i,a){let o=t.binarySearch(e,i,a);return o==null?E.create(p.NA):r===0?n.slice([o,o+1]):n.slice(void 0,[o,o+1])}equalSearchExpand(e,t,n,r=!0,i=0){let a=t.isEqual(e),o;return o=r?a.getFirstTruePosition():a.getLastTruePosition(),o==null?E.create(p.NA):i===0?n.slice([o.row,o.row+1]):n.slice(void 0,[o.column,o.column+1])}fuzzySearchExpand(e,t,n,r=!0,i=0){let a=t.compare(e,v.EQUALS),o;return o=r?a.getFirstTruePosition():a.getLastTruePosition(),o==null?E.create(p.NA):i===0?n.slice([o.row,o.row+1]):n.slice(void 0,[o.column,o.column+1])}orderSearchExpand(e,t,n,r=yr.MIN,i=!1,a=0){let o=t.orderSearch(e,r,i);return o==null?E.create(p.NA):a===0?n.slice([o.row,o.row+1]):n.slice(void 0,[o.column,o.column+1])}flattenArray(e,t=!0){let n=[];n[0]=[];for(let r=0;r<e.length;r++){let i=e[r];if((i.isString()||i.isBoolean()||i.isNull())&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(i.isArray()){let e;if(i.iterator(r=>{if(r==null||r.isNull()||t&&(r.isString()||r.isBoolean()))return!0;if(r=this._includingLogicalValuesAndText(r),r.isError())return e=r,!1;n[0].push(r)}),e!=null&&e.isError())return e}else n[0].push(i)}return lo(n,1,n[0].length)}_includingLogicalValuesAndText(e){if(e.isBoolean()&&(e=mo(e)),e.isString()){let t=Number(e.getValue());e=R.create(Number.isNaN(t)?0:t)}return e}createReferenceObject(e,t){let n=e.getForcedUnitId()||e.getDefaultUnitId()||``,r=e.getForcedSheetId()||e.getDefaultUnitId()||``,i=Kt({unitId:n,sheetName:e.getForcedSheetName(),range:t}),a;return a=vt(i)?new oo(i):St(i)?new co(i):Ct(i)?new so(i):new ao(t,r,n),this._setReferenceDefault(e,a)}_setReferenceDefault(e,t){if(this.unitId==null||this.subUnitId==null)return E.create(p.REF);t.setDefaultUnitId(this.unitId),t.setDefaultSheetId(this.subUnitId);let n=e.getUnitId();n!=null&&t.setForcedUnitIdDirect(n);let r=e.getForcedSheetId();return r!=null&&t.setForcedSheetIdDirect(r),t.setForcedSheetName(e.getForcedSheetName()),t.setUnitData(e.getUnitData()),t.setRuntimeData(e.getRuntimeData()),t.setArrayFormulaCellData(e.getArrayFormulaCellData()),t.setUnitStylesData(e.getUnitStylesData()),t}},rc=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){if(e.isError())return e;let{isError:r,errorObject:i,variants:a}=tc(t,n);if(r)return i;let{isError:o,errorObject:s,variants:c}=X(...a);if(o)return s;let[l,u]=c,d=Math.floor(+l.getValue()),f=Math.floor(+u.getValue());if(d<0||f<0)return E.create(p.NUM);if(d===0||f===0)return E.create(p.REF);let m=e.isArray()?e.getRowCount():1,h=e.isArray()?e.getColumnCount():1;if(m===1&&h===1)return e.isArray()?e.get(0,0):e;let g=d>m?m:d,_=f>h?h:f;return e.slice([0,g],[0,_])}},ic=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=[];for(let n=0;n<e.length;n++){let r=e[n],i=r.isArray()?r.getRowCount():1,a=r.isArray()?r.getColumnCount():1;for(let e=0;e<i;e++)for(let n=0;n<a;n++){let i=r.isArray()?r.get(e,n):r;t.push([i])}}return B.create({calculateValueList:t,rowCount:t.length,columnCount:1,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}};let ac=function(e){return e.ARRAY_CONSTRAIN=`ARRAY_CONSTRAIN`,e.FLATTEN=`FLATTEN`,e}({}),oc=[[rc,ac.ARRAY_CONSTRAIN],[ic,ac.FLATTEN]],sc;(function(e){let t=.636619772;function n(e,t){let n=0;for(let r=0;r<e.length;++r)n=t*n+e[r];return n}function r(e,t,n,r,i){if(t===0)return n;if(t===1)return r;let a=2/e,o=n,s=r,c=r;for(let e=1;e<t;++e)c=s*e*a+i*o,o=s,s=c;return c}function i(e,t,n,i){return function(a,o){if(n){if(a===0)return n===1?-1/0:1/0;if(a<0)return NaN}return o===0?e(a):o===1?t(a):o<0?NaN:r(a,o|0,e(a),t(a),i)}}let a=e.besselj=(()=>{let e=[-184.9052456,77392.33017,-11214424.18,651619640.7,-13362590354,57568490574],i=[1,267.8532712,59272.64853,9494680.718,1029532985,57568490411],a=[2.093887211e-7,-2073370639e-15,2734510407e-14,-.001098628627,1],o=[-9.34935152e-8,7.621095161e-7,-6911147651e-15,.0001430488765,-.01562499995];function s(r){let s=0,c=0,l=0,u=r*r;if(r<8)c=n(e,u),l=n(i,u),s=c/l;else{let e=r-.785398164;u=64/u,c=n(a,u),l=n(o,u),s=Math.sqrt(t/r)*(Math.cos(e)*c-Math.sin(e)*l*8/r)}return s}let c=[-30.16036606,15704.4826,-2972611.439,242396853.1,-7895059235,72362614232],l=[1,376.9991397,99447.43394,18583304.74,2300535178,144725228442],u=[-2.40337019e-7,2457520174e-15,-3516396496e-14,.00183105,1],d=[1.05787412e-7,-8.8228987e-7,8449199096e-15,-.0002002690873,.04687499995];function f(e){let r=0,i=0,a=0,o=e*e,s=Math.abs(e)-2.356194491;return Math.abs(e)<8?(i=e*n(c,o),a=n(l,o),r=i/a):(o=64/o,i=n(u,o),a=n(d,o),r=Math.sqrt(t/Math.abs(e))*(Math.cos(s)*i-Math.sin(s)*a*8/Math.abs(e)),e<0&&(r=-r)),r}return function e(t,n){let i=Math.round(n);if(!Number.isFinite(t))return Number.isNaN(t)?t:0;if(i<0)return(i%2?-1:1)*e(t,-i);if(t<0)return(i%2?-1:1)*e(-t,i);if(i===0)return s(t);if(i===1)return f(t);if(t===0)return 0;let a=0;if(t>i)a=r(t,i,s(t),f(t),-1);else{let e=2*Math.floor((i+Math.floor(Math.sqrt(40*i)))/2),n=!1,r=0,o=0,s=1,c=0,l=2/t;for(let t=e;t>0;t--)if(c=t*l*s-r,r=s,s=c,Math.abs(s)>1e10&&(s*=1e-10,r*=1e-10,a*=1e-10,o*=1e-10),n&&(o+=s),n=!n,t===i&&(a=r),e-t>100&&a===0)return NaN;o=2*o-s,a/=o}return a}})();e.bessely=(()=>{let e=[228.4622733,-86327.92757,10879881.29,-512359803.6,7062834065,-2957821389],r=[1,226.1030244,47447.2647,7189466.438,745249964.8,40076544269],o=[2.093887211e-7,-2073370639e-15,2734510407e-14,-.001098628627,1],s=[-9.34945152e-8,7.621095161e-7,-6911147651e-15,.0001430488765,-.01562499995];function c(i){let c=0,l=0,u=0,d=i*i,f=i-.785398164;return i<8?(l=n(e,d),u=n(r,d),c=l/u+t*a(i,0)*Math.log(i)):(d=64/d,l=n(o,d),u=n(s,d),c=Math.sqrt(t/i)*(Math.sin(f)*l+Math.cos(f)*u*8/i)),c}let l=[8511.937935,-4237922.726,734926455.1,-51534381390,127527439e4,-4900604943e3],u=[1,354.9632885,102042.605,22459040.02,3733650367,424441966400,249958057e5],d=[-2.40337019e-7,2457520174e-15,-3516396496e-14,.00183105,1],f=[1.05787412e-7,-8.8228987e-7,8449199096e-15,-.0002002690873,.04687499995];function p(e){let r=0,i=0,o=0,s=e*e,c=e-2.356194491;return e<8?(i=e*n(l,s),o=n(u,s),r=i/o+t*(a(e,1)*Math.log(e)-1/e)):(s=64/s,i=n(d,s),o=n(f,s),r=Math.sqrt(t/e)*(Math.sin(c)*i+Math.cos(c)*o*8/e)),r}return i(c,p,1,-1)})();let o=e.besseli=(()=>{let e=[.0045813,.0360768,.2659732,1.2067492,3.0899424,3.5156229,1],t=[.00392377,-.01647633,.02635537,-.02057706,.00916281,-.00157565,.00225319,.01328592,.39894228];function r(r){return r<=3.75?n(e,r*r/(3.75*3.75)):Math.exp(Math.abs(r))/Math.sqrt(Math.abs(r))*n(t,3.75/Math.abs(r))}let i=[32411e-8,.00301532,.02658733,.15084934,.51498869,.87890594,.5],a=[-.00420059,.01787654,-.02895312,.02282967,-.01031555,.00163801,-.00362018,-.03988024,.39894228];function o(e){return e<3.75?e*n(i,e*e/(3.75*3.75)):(e<0?-1:1)*Math.exp(Math.abs(e))/Math.sqrt(Math.abs(e))*n(a,3.75/Math.abs(e))}return function e(t,n){let i=Math.round(n);if(i===0)return r(t);if(i===1)return o(t);if(i<0)return NaN;if(Math.abs(t)===0)return 0;if(t===1/0)return 1/0;let a=0,s,c=2/Math.abs(t),l=0,u=1,d=0,f=2*Math.round((i+Math.round(Math.sqrt(40*i)))/2);for(s=f;s>0;s--)if(d=s*c*u+l,l=u,u=d,Math.abs(u)>1e10&&(u*=1e-10,l*=1e-10,a*=1e-10),s===i&&(a=l),f-s>100&&a===0)return NaN;return a*=e(t,0)/u,t<0&&i%2?-a:a}})();e.besselk=(()=>{let e=[74e-7,1075e-7,.00262698,.0348859,.23069756,.4227842,-.57721566],t=[53208e-8,-.0025154,.00587872,-.01062446,.02189568,-.07832358,1.25331414];function r(r){return r<=2?-Math.log(r/2)*o(r,0)+n(e,r*r/4):Math.exp(-r)/Math.sqrt(r)*n(t,2/r)}let a=[-4686e-8,-.00110404,-.01919402,-.18156897,-.67278579,.15443144,1],s=[-68245e-8,.00325614,-.00780353,.01504268,-.0365562,.23498619,1.25331414];function c(e){return e<=2?Math.log(e/2)*o(e,1)+1/e*n(a,e*e/4):Math.exp(-e)/Math.sqrt(e)*n(s,2/e)}return i(r,c,2,1)})()})(sc||(sc={}));function cc(e){return/^[01]{1,10}$/.test(e)}function lc(e){return/^[0-7]{1,10}$/.test(e)}function uc(e){return/^[0-9A-Fa-f]{1,10}$/.test(e)}function dc(e){if(e===0)return 0;let t=[-1.3026537197817094,.6419697923564902,.019476473204185836,-.00956151478680863,-.000946595344482036,.000366839497852761,42523324806907e-18,-20278578112534e-18,-1624290004647e-18,130365583558e-17,1.5626441722e-8,-8.5238095915e-8,6.529054439e-9,5.059343495e-9,-991364156e-18,-227365122e-18,96467911e-18,2394038e-18,-6886027e-18,894487e-18,313092e-18,-112708e-18,381e-18,7106e-18,-1523e-18,-94e-18,121e-18,-28e-18],n=e,r=!1;n<0&&(n=-n,r=!0);let i=2/(2+n),a=4*i-2,o=0,s=0,c;for(let e=t.length-1;e>0;e--)c=o,o=a*o-s+t[e],s=c;let l=i*Math.exp(-n*n+.5*(t[0]+a*o)-s);return r?l-1:1-l}function fc(e){return 1-dc(e)}function pc(e){if(e>=2)return-100;if(e<=0)return 100;let t=e<1?e:2-e,n=Math.sqrt(-2*Math.log(t/2)),r=-.70711*((2.30753+n*.27061)/(1+n*(.99229+n*.04481))-n);for(let e=0;e<2;e++){let e=fc(r)-t;r+=e/(1.1283791670955126*Math.exp(-r*r)-r*e)}return e<1?r:-r}function mc(e,t=1){let n=Math.floor(e);if(e<0)return NaN;let r=1;for(;n>1&&Number.isFinite(r);)r*=n,n-=t;return r}function hc(e,t){let n=Math.min(e-t,t),r=1;for(let t=1;t<=n&&Number.isFinite(r);t++)r*=e-t+1,r/=t;return r}function gc(e,t){let n=Math.floor(e),r=Math.floor(t);for(;r!==0;){let e=r;r=n%r,n=e}return n}function _c(e,t){let n=gc(e,t);return n===0?0:Math.abs(e*t)/n}function vc(e){let t=e.length;if(t===1)return e[0][0];if(t===2)return e[0][0]*e[1][1]-e[0][1]*e[1][0];let{rowSwap:n,smallPivotDetected:r,luMatrix:i,permutation:a}=Tc(e);if(r)return 0;let o=n?1:-1;for(let e=0;e<a.length;e++)o*=i[e][e];return o===0?0:o}function yc(e){let t=vc(e);return t===0?null:e.length===1?[[1/t]]:xc(e).map(e=>e.map(e=>e/t))}function bc(e,t,n){return e.filter((e,n)=>n!==t).map(e=>e.filter((e,t)=>t!==n))}function xc(e){let t=e.length,n=Array.from({length:t},()=>Array(t).fill(0));for(let r=0;r<t;r++)for(let i=0;i<t;i++){let t=((r+i)%2==0?1:-1)*vc(bc(e,r,i));n[i][r]=t===0?0:t}return n}function Sc(e,t){return e.map(e=>t[0].map((n,r)=>e.reduce((e,n,i)=>e+n*t[i][r],0)))}function Cc(e){return e[0].map((t,n)=>e.map(e=>e[n]))}function wc(e){let{smallPivotDetected:t,luMatrix:n,permutation:r}=Tc(e);return t?null:Ec(n,r)}function Tc(e){let t=Cc(e),n=t.length,r=t[0].length,i=!0,a=!1,o=Dc(n,r,0),s=Array(r).fill(0).map((e,t)=>t);for(let e=0;e<r;e++){for(let n=0;n<e;n++){let r=t[n][e];for(let t=0;t<n;t++)r-=o[n][t]*o[t][e];o[n][e]=r}let r=-1/0,c=e;for(let i=e;i<n;i++){let n=t[i][e];for(let t=0;t<e;t++)n-=o[i][t]*o[t][e];o[i][e]=n;let a=Math.abs(n);a>r&&(r=a,c=i)}if(Math.abs(o[c][e])<1e-11){a=!0;break}c!==e&&([o[e],o[c]]=[o[c],o[e]],[t[e],t[c]]=[t[c],t[e]],[s[e],s[c]]=[s[c],s[e]],i=!i);let l=o[e][e];for(let t=e+1;t<n;t++)o[t][e]/=l}return{rowSwap:i,smallPivotDetected:a,luMatrix:o,permutation:s}}function Ec(e,t){let n=t.length,r=Dc(n,n,0);for(let e=0;e<n;e++)r[e][e]=1;let i=Dc(n,n,0);for(let e=0;e<n;e++){let a=t[e];for(let t=0;t<n;t++)i[e][t]=r[a][t]}for(let t=0;t<n;t++){let r=i[t];for(let a=t+1;a<n;a++){let o=e[a][t];for(let e=0;e<n;e++)i[a][e]-=r[e]*o}}for(let t=n-1;t>=0;t--){let r=i[t],a=e[t][t];for(let e=0;e<n;e++)r[e]/=a;for(let a=0;a<t;a++){let o=e[a][t];for(let e=0;e<n;e++)i[a][e]-=r[e]*o}}return i}function Dc(e,t,n){let r=[];for(let i=0;i<e;i++){r[i]=[];for(let e=0;e<t;e++)r[i].push(n)}return r}function Oc(e){let t=kc(e);if(!t)return null;let{matrixU:n,matrixS:r,matrixV:i}=t,a=Cc(n),o=Array.from({length:r.length},()=>Array(e[0].length).fill(0)),s=Math.max(e.length,e[0].length)*2**-52*r[0];for(let e=0;e<r.length;e++)Math.abs(r[e])>s&&(o[e][e]=1/r[e]);return Sc(i,Sc(o,a))}function kc(e){let t=Cc(e),n=t.length,r=t[0].length;if(n<r)return null;let i=Array(r).fill(0),a=Array(r).fill(0),o=Array.from({length:r},()=>Array(r).fill(0)),s=2**-52,c=0,l=0,u=0;for(let e=0;e<r;e++){if(i[e]=c,l=jc(t,e,n,e,e),l<=1e-64/s)c=0;else{c=Math.sqrt(l),t[e][e]>=0&&(c=-c);let i=t[e][e]*c-l;t[e][e]-=c;for(let a=e+1;a<r;a++){l=jc(t,e,n,e,a);for(let r=e;r<n;r++)t[r][a]+=l/i*t[r][e]}}if(a[e]=c,l=Mc(t,e+1,r,e,e),l<=1e-64/s)c=0;else{c=Math.sqrt(l),t[e][e+1]>=0&&(c=-c);let a=t[e][e+1]*c-l;t[e][e+1]-=c;for(let n=e+1;n<r;n++)i[n]=t[e][n]/a;for(let a=e+1;a<n;a++){l=Mc(t,e+1,r,a,e);for(let n=e+1;n<r;n++)t[a][n]+=l*i[n]}}let o=Math.abs(a[e])+Math.abs(i[e]);o>u&&(u=o)}let d=0;for(let e=r-1;e>=0;e--){if(c!==0){for(let n=d;n<r;n++)o[n][e]=t[e][n]/(c*t[e][e+1]);for(let n=d;n<r;n++){l=0;for(let i=d;i<r;i++)l+=t[e][i]*o[i][n];for(let t=d;t<r;t++)o[t][n]+=l*o[t][e]}}for(let t=d;t<r;t++)o[e][t]=0,o[t][e]=0;o[e][e]=1,c=i[e],d=e}for(let e=r-1;e>=0;e--){c=a[e];for(let n=e+1;n<r;n++)t[e][n]=0;if(c!==0){for(let i=e+1;i<r;i++){l=jc(t,e+1,n,e,i);for(let r=e;r<n;r++)t[r][i]+=l/(t[e][e]*c)*t[r][e]}for(let r=e;r<n;r++)t[r][e]/=c}else for(let r=e;r<n;r++)t[r][e]=0;t[e][e]+=1}s*=u;let f=0,p=0,m=0;for(let e=r-1;e>=0;e--)for(let c=0;c<50;c++){let l=!1,u=e;for(;u>=0;u--){if(Math.abs(i[u])<=s){l=!0;break}if(Math.abs(a[u-1])<=s)break}if(!l){let r=0,o=1;for(let c=u;c<e+1&&(f=o*i[c],p=a[c],i[c]*=r,!(Math.abs(f)<=s));c++){m=Ac(f,p),a[c]=m,r=p/m,o=-f/m;for(let e=0;e<n;e++){let n=t[e][u-1],i=t[e][c];t[e][u-1]=n*r+i*o,t[e][c]=-n*o+i*r}}}if(u===e){if(a[e]<0){a[e]=-a[e];for(let t=0;t<r;t++)o[t][e]=-o[t][e]}break}if(c>=49)return null;let d=a[u];f=((a[e-1]-a[e])*(a[e-1]+a[e])+(i[e-1]-i[e])*(i[e-1]+i[e]))/(2*i[e]*a[e-1]),m=Ac(f,1),f=f<0?((d-a[e])*(d+a[e])+i[e]*(a[e-1]/(f-m)-i[e]))/d:((d-a[e])*(d+a[e])+i[e]*(a[e-1]/(f+m)-i[e]))/d;let h=1,g=1;for(let s=u+1;s<e+1;s++){let e=i[s],c=a[s];p=g*e,e*=h,m=Ac(f,p),i[s-1]=m,h=f/m,g=p/m,f=d*h+e*g,p=c*g,e=-d*g+e*h,c*=h;for(let e=0;e<r;e++){let t=o[e][s-1],n=o[e][s];o[e][s-1]=t*h+n*g,o[e][s]=-t*g+n*h}m=Ac(f,p),a[s-1]=m,h=f/m,g=p/m,f=h*e+g*c,d=-g*e+h*c;for(let e=0;e<n;e++){let n=t[e][s-1],r=t[e][s];t[e][s-1]=n*h+r*g,t[e][s]=-n*g+r*h}}i[u]=0,i[e]=f,a[e]=d}for(let e=0;e<a.length;e++)a[e]<s&&(a[e]=0);for(let e=0;e<r;e++)for(let n=e-1;n>=0;n--)if(a[n]<a[e]){let r=a[n];a[n]=a[e],a[e]=r;for(let r=0;r<t.length;r++){let i=t[r][e];t[r][e]=t[r][n],t[r][n]=i}for(let t=0;t<o.length;t++){let r=o[t][e];o[t][e]=o[t][n],o[t][n]=r}e=n}return{matrixU:t,matrixS:a,matrixV:o}}function Ac(e,t){let n=0;return Math.abs(e)>Math.abs(t)?(n=t/e,Math.abs(e)*Math.sqrt(1+n*n)):t===0?0:(n=e/t,Math.abs(t)*Math.sqrt(1+n*n))}function jc(e,t,n,r,i){let a=0;for(let o=t;o<n;o++)a+=e[o][r]*e[o][i];return a}function Mc(e,t,n,r,i){let a=0;for(let o=t;o<n;o++)a+=e[r][o]*e[i][o];return a}let Nc=new Map([[`I`,1],[`V`,5],[`X`,10],[`L`,50],[`C`,100],[`D`,500],[`M`,1e3]]),Pc=new Map([[1,`I`],[4,`IV`],[5,`V`],[9,`IX`],[10,`X`],[40,`XL`],[45,`VL`],[49,`IL`],[50,`L`],[90,`XC`],[95,`VC`],[99,`IC`],[100,`C`],[400,`CD`],[450,`LD`],[490,`XD`],[495,`VD`],[499,`ID`],[500,`D`],[900,`CM`],[950,`LM`],[990,`XM`],[995,`VM`],[999,`IM`],[1e3,`M`]]),Fc=[[1,4,5,9,10,40,50,90,100,400,500,900,1e3,4e3],[1,4,5,9,10,40,45,50,90,95,100,400,450,500,900,950,1e3,4e3],[1,4,5,9,10,40,45,49,50,90,95,99,100,400,450,490,500,900,950,990,1e3,4e3],[1,4,5,9,10,40,45,49,50,90,95,99,100,400,450,490,495,500,900,950,990,995,1e3,4e3],[1,4,5,9,10,40,45,49,50,90,95,99,100,400,450,490,495,499,500,900,950,990,995,999,1e3,4e3]];function Ic(e,t,n){return e<=0?0:e>=1?1:zc(e,t,n)}function Lc(e,t,n){return e<=0||e>=1?0:t===1&&n===1?1:t<512&&n<512?e**(t-1)*(1-e)**(n-1)/Vc(t,n):Math.exp((t-1)*Math.log(e)+(n-1)*Math.log(1-e)-Hc(t,n))}function Rc(e,t,n){if(e<=0)return 0;if(e>=1)return 1;let r;if(t>=1&&n>=1){let i=e<.5?e:1-e,a=Math.sqrt(-2*Math.log(i));r=(2.30753+a*.27061)/(1+a*(.99229+a*.04481))-a,e<.5&&(r=-r);let o=(r*r-3)/6,s=2/(1/(2*t-1)+1/(2*n-1)),c=r*Math.sqrt(o+s)/s-(1/(2*n-1)-1/(2*t-1))*(o+5/6-2/(3*s));r=t/(t+n*Math.exp(2*c))}else{let i=Math.exp(t*Math.log(t/(t+n)))/t,a=i+Math.exp(n*Math.log(n/(t+n)))/n;r=e<i/a?(t*a*e)**(1/t):1-(n*a*(1-e))**(1/n)}let i=-Hc(t,n),a,o,s;for(let c=0;c<10;c++){if(r===0||r===1)return r;if(a=zc(r,t,n)-e,o=Math.exp((t-1)*Math.log(r)+(n-1)*Math.log(1-r)+i),s=a/o,r-=o=s/(1-.5*Math.min(1,s*((t-1)/r-(n-1)/(1-r)))),r<=0&&(r=.5*(r+o)),r>=1&&(r=.5*(r+o+1)),Math.abs(o)<1e-8*r&&c>0)break}return r}function zc(e,t,n){let r=e===0||e===1?0:Math.exp(il(t+n)-il(t)-il(n)+t*Math.log(e)+n*Math.log(1-e));return e<(t+1)/(t+n+2)?r*Bc(e,t,n)/t:1-r*Bc(1-e,n,t)/n}function Bc(e,t,n){let r=1e-8,i=1-(t+n)*e/(t+1);Math.abs(i)<r&&(i=r),i=1/i;let a=1,o=i;for(let s=1;s<=100;s++){let c=s*(n-s)*e/((t-1+s*2)*(t+s*2));if(i=1+c*i,Math.abs(i)<r&&(i=r),a=1+c/a,Math.abs(a)<r&&(a=r),i=1/i,o*=i*a,c=-(t+s)*(t+n+s)*e/((t+s*2)*(t+1+s*2)),i=1+c*i,Math.abs(i)<r&&(i=r),a=1+c/a,Math.abs(a)<r&&(a=r),i=1/i,o*=i*a,Math.abs(i*a-1)<r)break}return o}function Vc(e,t){return e+t>170?Math.exp(Hc(e,t)):el(e)*el(t)/el(e+t)}function Hc(e,t){return il(e)+il(t)-il(e+t)}function Uc(e,t,n){if(e<0)return 0;if(e>=t)return 1;if(n<0||n>1||t<=0)return NaN;let r=0;for(let i=0;i<=e;i++)r+=Wc(i,t,n);return r}function Wc(e,t,n){return n===0||n===1?t*n===e?1:0:hc(t,e)*n**e*(1-n)**(t-e)}function Gc(e,t){return e<=0?0:al(t/2,e/2)}function Kc(e,t){return e<0?0:e===0&&t===2?.5:Math.exp((t/2-1)*Math.log(e)-e/2-t/2*Math.log(2)-il(t/2))}function qc(e,t){return e<=0?0:e>=1?1/0:2*ol(e,t/2)}function Jc(e,t,n){return e<0?0:zc(t*e/(t*e+n),t/2,n/2)}function Yc(e,t,n){if(e<0)return 0;if(e===0&&t<2)return 1/0;if(e===0&&t===2)return 1;let r=1/Vc(t/2,n/2);return r*=(t/n)**(t/2),r*=e**(t/2-1),r*=(1+t/n*e)**(-(t+n)/2),r}function Xc(e,t,n){return e<=0?0:e>=1?1/0:n/(t*(1/Rc(e,t/2,n/2)-1))}function Zc(e,t){return e<0?0:1-Math.exp(-t*e)}function Qc(e,t){return e<0?0:t*Math.exp(-t*e)}function $c(e,t,n){let r=t.length,i=0,a=0;for(let e=0;e<r;e++)i+=t[e],a+=n[e];let o=i/r,s=a/r,c=0,l=0;for(let e=0;e<r;e++)c+=(t[e]-o)*(n[e]-s),l+=(n[e]-s)**2;if(l===0)return 1/0;let u=c/l;return o-u*s+u*e}function el(e){let t=[-1.716185138865495,24.76565080557592,-379.80425647094563,629.3311553128184,866.9662027904133,-31451.272968848367,-36144.413418691176,66456.14382024054],n=[-30.8402300119739,315.35062697960416,-1015.1563674902192,-3107.771671572311,22538.11842098015,4755.846277527881,-134659.9598649693,-115132.2596755535],r=0,i=e;if(e>171.6243769536076)return 1/0;if(i<=0){let e=i%1+36e-17;if(e)r=(i&1?-1:1)*Math.PI/Math.sin(Math.PI*e),i=1-i;else return 1/0}let a=i,o=0,s;s=i<1?i++:(i-=o=(i|0)-1)-1;let c=0,l=0;for(let e=0;e<8;++e)c=(c+t[e])*s,l=l*s+n[e];let u=c/l+1;if(a<i)u/=a;else if(a>i)for(let e=0;e<o;++e)u*=i,i++;return r&&(u=r/u),u}function tl(e,t,n){return e<=0?0:al(t,e/n)}function nl(e,t,n){return e<0?0:e===0&&t===1?1/n:Math.exp((t-1)*Math.log(e)-e/n-il(t)-t*Math.log(n))}function rl(e,t,n){return e<=0?0:e>=1?1/0:n*ol(e,t)}function il(e){let t=[76.18009172947146,-86.50532032941678,24.01409824083091,-1.231739572450155,.001208650973866179,-5395239384953e-18],n=e,r=e+5.5;r-=(e+.5)*Math.log(r);let i=1.000000000190015;for(let e=0;e<6;e++)i+=t[e]/++n;return-r+Math.log(2.5066282746310007*i/e)}function al(e,t){if(t<0||e<=0)return NaN;let n=1e-30,r=-~(Math.log(e>=1?e:1/e)*8.5+e*.4+17),i=il(e),a=Math.exp(-t+e*Math.log(t)-i),o=e,s=1/e,c=s;if(t<e+1){if(a===0)return 0;for(let e=1;e<=r&&(s+=c*=t/++o,!(Math.abs(c)<Math.abs(s)*n));e++);return s*a}if(a===0)return 1;let l=t+1-e,u=1/n,d=1/l,f=d;for(let t=1;t<=r;t++){let r=-t*(t-e);if(l+=2,d=r*d+l,Math.abs(d)<n&&(d=n),u=l+r/u,Math.abs(u)<n&&(u=n),d=1/d,f*=d*u,Math.abs(d*u-1)<n)break}return 1-f*a}function ol(e,t){if(e<=0)return 0;if(e>=1)return Math.max(100,t+100*Math.sqrt(t));let n;if(t>1){let r=e<.5?e:1-e,i=Math.sqrt(-2*Math.log(r));n=(2.30753+i*.27061)/(1+i*(.99229+i*.04481))-i,e<.5&&(n=-n),n=Math.max(.001,t*(1-1/(9*t)-n/(3*Math.sqrt(t)))**3)}else{let r=1-t*(.253+t*.12);n=e<r?(e/r)**(1/t):1-Math.log(1-(e-r)/(1-r))}let r=il(t),i,a;for(let o=0;o<12;o++){if(n<=0)return 0;if(i=al(t,n)-e,a=t>1?Math.exp((t-1)*(Math.log(t-1)-1)-r)*Math.exp(-(n-(t-1))+(t-1)*(Math.log(n)-Math.log(t-1))):Math.exp(-n+(t-1)*Math.log(n)-r),a!==0&&(a=i/a/(1-.5*Math.min(1,i/a*((t-1)/n-1)))),n-=a,n<=0&&(n=.5*(n+a)),Math.abs(a)<1e-8*n)break}return n}function sl(e,t,n,r){let i=0;for(let a=0;a<=e;a++)i+=cl(a,t,n,r);return i}function cl(e,t,n,r){return t-e>r-n?0:hc(n,e)*hc(r-n,t-e)/hc(r,t)}function ll(e,t,n){return e<0?0:.5+.5*dc((Math.log(e)-t)/Math.sqrt(2*n*n))}function ul(e,t,n){return e<=0?0:Math.exp(-Math.log(e)-.5*Math.log(2*Math.PI)-Math.log(n)-(Math.log(e)-t)**2/(2*n*n))}function dl(e,t,n){return Math.exp(gl(e,t,n))}function fl(e,t,n){if(e<0)return 0;let r=0;for(let i=0;i<=e;i++)r+=pl(i,t,n);return r}function pl(e,t,n){return e<0?0:hc(e+t-1,t-1)*n**t*(1-n)**e}function ml(e,t,n){return .5*(1+dc((e-t)/Math.sqrt(2*n*n)))}function hl(e,t,n){return Math.exp(-.5*Math.log(2*Math.PI)-Math.log(n)-(e-t)**2/(2*n*n))}function gl(e,t,n){return-1.4142135623730951*n*pc(2*e)+t}function _l(e,t){let n=0;for(let r=0;r<=e;r++)n+=vl(r,t);return n}function vl(e,t){return Math.exp(-t)*t**e/mc(e)}function yl(e,t){let n=.5*zc(t/(e**2+t),t/2,.5);return e<0?n:1-n}function bl(e,t){let n=(1+e**2/t)**(-(t+1)/2);return 1/(Math.sqrt(t)*Vc(.5,t/2))*n}function xl(e,t){let n=Rc(2*Math.min(e,1-e),.5*t,.5);return n=Math.sqrt(t*(1-n)/n),e>.5?n:-n}function Sl(e,n,r,i,a){let o=[],s=[],c=!0;for(let l=0;l<r;l++){let r=Math.floor(l/i),u=l%i,d=Math.floor(l/a),f=l%a,p=e.isArray()?e.get(r,u):e,m=n.isArray()?n.get(d,f):n;if(p.isError())return{isError:!0,errorObject:p,array1Values:o,array2Values:s,noCalculate:c};if(m.isError())return{isError:!0,errorObject:m,array1Values:o,array2Values:s,noCalculate:c};if(p.isNull()||m.isNull()||p.isBoolean()||m.isBoolean())continue;let h=p.getValue(),g=m.getValue();!(0,t.isRealNum)(h)||!(0,t.isRealNum)(g)||(o.push(+h),s.push(+g),c=!1)}return{isError:!1,errorObject:null,array1Values:o,array2Values:s,noCalculate:c}}function Cl(e,t,n){let r=e.isArray()?e.getRowCount():1,i=e.isArray()?e.getColumnCount():1,a=r,o=i;if(t&&!t.isNull()&&(a=t.isArray()?t.getRowCount():1,o=t.isArray()?t.getColumnCount():1,r===1&&o!==i||i===1&&a!==r||r!==1&&i!==1&&(a!==r||o!==i)))return{isError:!0,errorObject:E.create(p.REF)};if(n&&!n.isNull()){let e=n.isArray()?n.getRowCount():1,t=n.isArray()?n.getColumnCount():1;if(r===1&&a>1&&e!==a||i===1&&o>1&&t!==o)return{isError:!0,errorObject:E.create(p.REF)}}return{isError:!1,errorObject:null}}function wl(e){let t=e.isArray()?e.getRowCount():1,n=e.isArray()?e.getColumnCount():1,r=[];for(let i=0;i<t;i++){r[i]=[];for(let t=0;t<n;t++){let n=e.isArray()?e.get(i,t):e;if(n.isError()||n.isNull()||n.isBoolean()||n.isString())return E.create(p.VALUE);r[i].push(+n.getValue())}}return r}function Tl(e,t){let n=[],r=1;for(let i=0;i<e;i++){n[i]=[];for(let e=0;e<t;e++)n[i].push(r++)}return n}function El(e,t,n,r){let i=t;r&&(i=t.map(e=>Math.log(e)));let a,o;return n?{slope:a,intercept:o}=Dl(e,i):{slope:a,intercept:o}=Ol(e,i),r&&(a=Math.exp(a),o=Math.exp(o)),Number.isNaN(a)&&!n&&(a=0),{slope:a,intercept:o,Y:i}}function Dl(e,t){let n=t.length,r=0,i=0,a=0,o=0;for(let s=0;s<n;s++)r+=e[s],i+=t[s],a+=e[s]*e[s],o+=e[s]*t[s];let s=(n*o-r*i)/(n*a-r*r);return{slope:s,intercept:1/n*i-1/n*s*r}}function Ol(e,t){let n=[[...e]],r=[...t],i=n.length,a=n[0].length,o=Math.min(i,a),s=Array(o).fill(0);for(let e=0;e<o;e++){let t=n[e],r=0;for(let e=0;e<a;e++)r+=t[e]**2;let o=t[e]<0?Math.sqrt(r):-Math.sqrt(r);if(s[e]=o,o!==0){t[e]-=o;for(let r=e+1;r<i;r++){let i=0;for(let o=e;o<a;o++)i-=n[r][o]*t[o];i/=o*t[e];for(let o=e;o<a;o++)n[r][o]-=i*t[o]}}}i=n.length,a=n[0].length,o=Math.min(i,a);let c=Array(i).fill(0);for(let e=0;e<o;e++){let t=n[e],i=0;for(let e=0;e<a;e++)i+=r[e]*t[e];i/=s[e]*t[e];for(let e=0;e<a;e++)r[e]+=i*t[e]}for(let e=s.length-1;e>=0;e--){r[e]/=s[e];let t=r[e],i=n[e];c[e]=t;for(let n=0;n<e;n++)r[n]-=t*i[n]}return{slope:c[0],intercept:0}}function kl(e,t,n,r,i){let a=e.length===1&&e[0].length>1,o=e;i&&(o=e.map(e=>e.map(e=>Math.log(e))));let s=t,c=n;a&&(o=Cc(o),s=Cc(s),c=Cc(c)),r&&(s=s.map(e=>[...e,1]));let l=Cc(s),u=Sc(l,s),d=Sc(l,o),f=wc(u);if(!f&&(f=Oc(u),!f))return E.create(p.NA);let m=Sc(f,d);r||m.push([0]),m=Cc(m);let h=m[0].pop();if(m[0].reverse(),m[0].push(h),i)for(let e=0;e<m[0].length;e++)m[0][e]=Math.exp(m[0][e]);return{coefficients:m,Y:o,X:s,newX:c,XTXInverse:f}}function Al(e){let t=[],n=[],r=!1;for(let i=0;i<e.length;i++){let a=e[i];if(a.isReferenceObject())a.isMultiArea()?t.push(a):n.push(a);else{r=!0;break}}return{isError:r,multiAreaRefs:t,normalRefs:n}}let Q=function(e){return e.AVERAGE=`AVERAGE`,e.COUNT=`COUNT`,e.COUNTA=`COUNTA`,e.MAX=`MAX`,e.MIN=`MIN`,e.PRODUCT=`PRODUCT`,e.STDEV=`STDEV`,e.STDEV_S=`STDEV.S`,e.STDEVP=`STDEVP`,e.STDEV_P=`STDEV.P`,e.SUM=`SUM`,e.VAR=`VAR`,e.VAR_S=`VAR.S`,e.VARP=`VARP`,e.VAR_P=`VAR.P`,e.MEDIAN=`MEDIAN`,e.MODE_SNGL=`MODE.SNGL`,e}({});function jl(e,n){let r=e[n];return r?r.hd===t.BooleanNumber.TRUE:!1}function Ml(e,t,n,r,i,a){let o=e.getValue(t,n);if(o!=null&&o.f||o!=null&&o.si){let e=a.getFormulaStringByCell(t,n,r,i);if(e&&(e.indexOf(`${K.SUBTOTAL}(`)>-1||e.indexOf(`${K.AGGREGATE}(`)>-1))return!0}return!1}function Nl(e,t){let n=Object.entries(e).filter(([e,{count:n}])=>n===t).sort((e,t)=>e[1].order-t[1].order).map(([e])=>+e);return R.create(n[0])}function Pl(e,n){let{type:r,ignoreRowHidden:i,ignoreErrorValues:a,ignoreNested:o,formulaDataModel:s}=e,c=[],l=0,u=0,d=0,f=0,m=0,h=0,g=1,_={},v=1,y=0;for(let e=0;e<n.length;e++){var b;let p=n[e],x=p.getFilteredOutRows(),S=p.getRowData(),C=p.getUnitId(),w=p.getSheetId(),T=(b=p.getUnitData()[C])==null||(b=b[w])==null?void 0:b.cellData,ee;if(p.iterator((e,n,p)=>{if(x.includes(n)||i&&jl(S,n)||o&&Ml(T,n,p,w,C,s))return!0;if(r===Q.COUNT)return e!=null&&e.isNumber()&&l++,!0;if(r===Q.COUNTA)return e!=null&&!e.isNull()&&u++,!0;if(e!=null&&e.isError())return a?!0:(ee=e,!1);if(!e||e.isNull()||e.isBoolean()||e.isString())return!0;let b=e.getValue();if(!(0,t.isRealNum)(b))return!0;if(b=+b,f++,r===Q.MAX)return m=f===1?b:Math.max(m,b),!0;if(r===Q.MIN)return h=f===1?b:Math.min(h,b),!0;if(r===Q.MODE_SNGL)return _[b]?(_[b].count++,_[b].count>v&&(v=_[b].count)):_[b]={count:1,order:y++},!0;d+=b,g*=b,c.push(e)}),ee!=null&&ee.isError())return ee}switch(r){case Q.AVERAGE:return f===0?E.create(p.DIV_BY_ZERO):R.create(d/f);case Q.COUNT:return R.create(l);case Q.COUNTA:return R.create(u);case Q.MAX:return R.create(m);case Q.MIN:return R.create(h);case Q.PRODUCT:return R.create(f===0?0:g);case Q.STDEV:case Q.STDEV_S:return f<2?E.create(p.DIV_BY_ZERO):lo([c],1,f).std(1);case Q.STDEVP:case Q.STDEV_P:return f===0?E.create(p.DIV_BY_ZERO):lo([c],1,f).std();case Q.SUM:return R.create(d);case Q.VAR:case Q.VAR_S:return f<2?E.create(p.DIV_BY_ZERO):lo([c],1,f).var(1);case Q.VARP:case Q.VAR_P:return f===0?E.create(p.DIV_BY_ZERO):lo([c],1,f).var();case Q.MEDIAN:return f===0?E.create(p.NUM):Il(c.map(e=>+e.getValue()));case Q.MODE_SNGL:return y===0||v===1?E.create(p.NA):Nl(_,v);default:return E.create(p.VALUE)}}function Fl(e,n,r){let{ignoreRowHidden:i=!1,ignoreErrorValues:a=!1,ignoreNested:o=!1}=n==null?{}:n,s=[];if(e.isReferenceObject()){var c;let n=e.getFilteredOutRows(),l=e.getRowData(),u=e.getUnitId(),d=e.getSheetId(),f=(c=e.getUnitData()[u])==null||(c=c[d])==null?void 0:c.cellData,p;if(e.iterator((e,c,m)=>{if(n.includes(c)||i&&jl(l,c))return!0;if(e!=null&&e.isError())return a?!0:(p=e,!1);if(o&&r&&Ml(f,c,m,d,u,r)||!e||e.isNull()||e.isBoolean()||e.isString())return!0;let h=e.getValue();if(!(0,t.isRealNum)(h))return!0;s.push(+h)}),p)return p}else{let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1;for(let i=0;i<n;i++)for(let n=0;n<r;n++){let r=e.isArray()?e.get(i,n):e;if(r.isError()){if(a)continue;return r}if(!r||r.isNull()||r.isBoolean()||r.isString())continue;let o=r.getValue();(0,t.isRealNum)(o)&&s.push(+o)}}return s.length===0?E.create(p.NUM):s}function Il(e){let t=e.length;e.sort((e,t)=>e-t);let n;if(t%2==0){let r=t/2;n=(e[r-1]+e[r])/2}else n=e[Math.floor(t/2)];return R.create(n)}function Ll(e,t){if(t<1||t>e.length)return E.create(p.NUM);e.sort((e,t)=>t-e);let n=Math.ceil(t);return R.create(e[n-1])}function Rl(e,t){if(t<1||t>e.length)return E.create(p.NUM);e.sort((e,t)=>e-t);let n=Math.floor(t);return R.create(e[n-1])}function zl(e,t){let n=e.length;if(t<0||t>1)return E.create(p.NUM);e.sort((e,t)=>e-t);let r=t*(n-1),i=Math.floor(r),a=r-i;if(a===0)return R.create(e[i]);let o=e[i]+a*(e[i+1]-e[i]);return R.create(o)}function Bl(e,t){let n=e.length;if(t<1/(n+1)||t>1-1/(n+1))return E.create(p.NUM);e.sort((e,t)=>e-t);let r=t*(n+1)-1,i=Math.floor(r),a=r-i;if(a===0)return R.create(e[i]);let o=e[i]+a*(e[i+1]-e[i]);return R.create(o)}function Vl(e,t){let n=e.length;if(t<0||t>4)return E.create(p.NUM);e.sort((e,t)=>e-t);let r=t/4*(n-1),i=Math.floor(r),a=r-i;if(a===0)return R.create(e[i]);let o=e[i]+a*(e[i+1]-e[i]);return R.create(o)}function Hl(e,t){let n=e.length;if(t<=0||t>=4)return E.create(p.NUM);e.sort((e,t)=>e-t);let r=t/4;if(r<1/(n+1)||r>1-1/(n+1))return E.create(p.NUM);let i=r*(n+1)-1,a=Math.floor(i),o=i-a;if(o===0)return R.create(e[a]);let s=e[a]+o*(e[a+1]-e[a]);return R.create(s)}var Ul=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let a=r==null?R.create(0):r,o=i==null?R.create(1):i;a.isNull()&&(a=R.create(0)),o.isNull()&&(o=R.create(1));let s=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,a.isArray()?a.getRowCount():1,o.isArray()?o.getRowCount():1),c=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,a.isArray()?a.getColumnCount():1,o.isArray()?o.getColumnCount():1),l=V(s,c,e,E.create(p.NA)),u=V(s,c,t,E.create(p.NA)),d=V(s,c,n,E.create(p.NA)),f=V(s,c,a,E.create(p.NA)),m=V(s,c,o,E.create(p.NA)),h=l.mapValue((e,t,n)=>{let r=u.get(t,n),i=d.get(t,n),a=f.get(t,n),o=m.get(t,n);return this._handleSingleObject(e,r,i,a,o)});return s===1&&c===1?h.get(0,0):h}_handleSingleObject(e,t,n,r,i){if(e.isError())return e;if(t.isError())return t;if(n.isError())return n;if(r.isError())return r;if(i.isError())return i;let{isError:a,errorObject:o,variants:s}=X(e,t,n,r,i);if(a)return o;let[c,l,u,d,f]=s,m=+c.getValue(),h=+l.getValue(),g=+u.getValue(),_=+d.getValue(),v=+f.getValue();if(h<=0||g<=0||m<=0||m>=1||_>=v)return E.create(p.NUM);let y=Rc(m,h,g)*(v-_)+_;return R.create(y)}},Wl=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(e,t,n,r);if(i)return a;let[s,c,l,u]=o,d=Math.floor(+s.getValue()),f=Math.floor(+c.getValue()),m=+l.getValue(),h=+u.getValue();if(d<0||d>f||m<0||m>1)return E.create(p.NUM);let g;return g=h?Uc(d,f,m):Wc(d,f,m),R.create(g)}},Gl=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=Math.floor(+o.getValue()),u=+s.getValue(),d=+c.getValue();if(l<0||u<=0||u>=1||d<=0||d>=1)return E.create(p.NUM);let f=0;for(;f<=l&&!(Uc(f,l,u)>=d);)f++;return R.create(f)}},Kl=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return n===1&&r===1?o.get(0,0):o}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(s<0||c<1||c>10**10)return E.create(p.NUM);let l=1-Gc(s,c);return R.create(l)}},ql=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return n===1&&r===1?o.get(0,0):o}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(s<0||s>1||c<1||c>10**10)return E.create(p.NUM);let l=qc(1-s,c);return Number.isNaN(l)||!Number.isFinite(l)?E.create(p.NUM):R.create(l)}},Jl=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return o;let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return s;if(n*r===1||i*a===1)return o.isNull()||s.isNull()?E.create(p.VALUE):E.create(p.NA);if(n*r!==i*a)return E.create(p.NA);let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?l:f?E.create(p.DIV_BY_ZERO):this._getResult(u,d,n,r)}_getResult(e,t,n,r){let i=0;for(let n=0;n<e.length;n++){if(t[n]===0)return E.create(p.DIV_BY_ZERO);i+=(e[n]-t[n])**2/t[n]}let a=(n-1)*(r-1);n===1?a=r-1:r===1&&(a=n-1);let o=1-Gc(i,a);return R.create(o)}},Yl=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);if(e.isError())return e;if(r.isError())return r;if(i.isError())return i;let{isError:a,errorObject:c,variants:l}=X(e,r,i);if(a)return c;let[u,d,f]=l,m=+u.getValue(),h=+d.getValue(),g=Math.floor(+f.getValue());if(m<=0||m>=1||h<=0||g<1)return E.create(p.NUM);let _=Math.abs(gl(m/2,0,1)*h/Math.sqrt(g));return R.create(_)});return r===1&&i===1?c.get(0,0):c}},Xl=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return o;let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return s;if((n*r===1||i*a===1)&&(o.isNull()||s.isNull()))return E.create(p.VALUE);if(n*r!==i*a)return E.create(p.NA);let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?l:f?E.create(p.DIV_BY_ZERO):this._getResult(u,d)}_getResult(e,t){if(e.length===0)return E.create(p.DIV_BY_ZERO);let n=e.length,r=0,i=0;for(let a=0;a<n;a++)r+=e[a],i+=t[a];let a=r/n,o=i/n,s=0;for(let r=0;r<n;r++){let n=e[r]-a,i=t[r]-o;s+=n*i}return R.create(s/n)}},Zl=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=+s.getValue(),d=+c.getValue();if(l<0||u<=0)return E.create(p.NUM);let f;return f=d?Zc(l,u):Qc(l,u),R.create(f)}},Ql=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=Math.floor(+s.getValue()),d=Math.floor(+c.getValue());if(l<0||u<1||u>10**10||d<1||d>10**10)return E.create(p.NUM);let f=1-Jc(l,u,d);return R.create(f)}},$l=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=Math.floor(+s.getValue()),d=Math.floor(+c.getValue());if(l<0||l>1||u<1||u>10**10||d<1||d>10**10)return E.create(p.NUM);let f=Xc(1-l,u,d);return Number.isNaN(f)||!Number.isFinite(f)?E.create(p.NUM):R.create(f)}},eu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,variance:i,ns1:a}=this._getValues(e);if(n)return r;let{isError:o,errorObject:s,variance:c,ns1:l}=this._getValues(t);if(o)return s;let u=2*(1-Jc(i/c,a,l));return u>1&&(u=2-u),R.create(u)}_getValues(e){let n=0,r=0,i=e.isArray()?e.getRowCount():1,a=e.isArray()?e.getColumnCount():1;if(i===1&&a===1){let t=e.isArray()?e.get(0,0):e;return t.isError()?{isError:!0,errorObject:t,variance:n,ns1:r}:t.isNull()?{isError:!0,errorObject:E.create(p.VALUE),variance:n,ns1:r}:{isError:!0,errorObject:E.create(p.DIV_BY_ZERO),variance:n,ns1:r}}let o=[],s=0;for(let c=0;c<i;c++)for(let i=0;i<a;i++){let a=e.isArray()?e.get(c,i):e;if(a.isError())return{isError:!0,errorObject:a,variance:n,ns1:r};if(a.isNull()||a.isBoolean())continue;let l=a.getValue();(0,t.isRealNum)(l)&&(o.push(+l),s+=+l)}if(o.length<=1)return{isError:!0,errorObject:E.create(p.DIV_BY_ZERO),variance:n,ns1:r};let c=s/o.length,l=0;for(let e=0;e<o.length;e++)l+=(o[e]-c)**2;return r=o.length-1,n=l/r,n===0?{isError:!0,errorObject:E.create(p.DIV_BY_ZERO),variance:n,ns1:r}:{isError:!1,errorObject:null,variance:n,ns1:r}}},tu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(e,t,n,r);if(i)return a;let[s,c,l,u]=o,d=+s.getValue(),f=+c.getValue(),m=+l.getValue(),h=+u.getValue();if(d<0||f<=0||m<=0)return E.create(p.NUM);let g;return g=h?tl(d,f,m):nl(d,f,m),R.create(g)}},nu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=+s.getValue(),d=+c.getValue();if(l<0||l>1||u<=0||d<=0)return E.create(p.NUM);let f=rl(l,u,d);return Number.isNaN(f)||!Number.isFinite(f)?E.create(p.NUM):R.create(f)}},ru=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=+s.getValue(),d=+c.getValue();if(l<=0||l>=1||d<=0)return E.create(p.NUM);let f=dl(l,u,d);return Number.isNaN(f)||!Number.isFinite(f)?E.create(p.NUM):R.create(f)}},iu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let n={},r=0,i=1;for(let a=0;a<e.length;a++){let o=e[a];if(o.isError())return o;if(o.isString()){let e=o.convertToNumberObjectValue();if(e.isError())return e}let s=o.isArray()?o.getRowCount():1,c=o.isArray()?o.getColumnCount():1;for(let e=0;e<s;e++)for(let a=0;a<c;a++){let s=o.isArray()?o.get(e,a):o;if(s.isError())return s;if(s.isNull()||s.isBoolean()||s.isString())continue;let c=s.getValue();(0,t.isRealNum)(c)&&(n[+c]?(n[+c].count++,n[+c].count>i&&(i=n[+c].count)):n[+c]={count:1,order:r++})}}return r===0||i===1?new E(p.NA):Nl(n,i)}},au=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(e,t,n,r);if(i)return a;let[s,c,l,u]=o,d=+s.getValue(),f=+c.getValue(),m=+l.getValue(),h=+u.getValue();if(m<=0)return E.create(p.NUM);let g;return g=h?ml(d,f,m):hl(d,f,m),R.create(g)}},ou=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=+s.getValue(),d=+c.getValue();if(l<=0||l>=1||d<=0)return E.create(p.NUM);let f=gl(l,u,d);return R.create(f)}},su=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return e.getRowCount()===1&&e.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=+i.getValue();if(a<=0||a>=1)return E.create(p.NUM);let o=gl(a,0,1);return R.create(o)}},cu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Fl(e);if(t.isArray()){let e=t.mapValue(e=>this._handleSingleObject(n,e));return e.getRowCount()===1&&e.getColumnCount()===1?e.get(0,0):e}return this._handleSingleObject(n,t)}_handleSingleObject(e,t){if(!Array.isArray(e))return e;let{isError:n,errorObject:r,variants:i}=X(t);if(n)return r;let[a]=i;return zl(e,+a.getValue())}},lu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=this._getValues(e),i=n==null?R.create(3):n;i.isNull()&&(i=R.create(3));let a=Math.max(t.isArray()?t.getRowCount():1,i.isArray()?i.getRowCount():1),o=Math.max(t.isArray()?t.getColumnCount():1,i.isArray()?i.getColumnCount():1),s=V(a,o,t,E.create(p.NA)),c=V(a,o,i,E.create(p.NA)),l=s.mapValue((e,t,n)=>{let i=c.get(t,n);return e.isError()?e:i.isError()?i:this._handleSingleObject(r,e,i)});return a===1&&o===1?l.get(0,0):l}_handleSingleObject(e,t,n){if(e instanceof E)return e;let{isError:r,errorObject:i,variants:a}=X(t,n);if(r)return i;let[o,s]=a,c=+o.getValue(),l=Math.floor(+s.getValue()),u=e.length;if(u===0||c<e[0]||c>e[u-1])return E.create(p.NA);if(u===1)return c===e[0]?R.create(1):E.create(p.NA);let d=0,f=!1,m=0;for(;!f&&m<u;)c===e[m]?(d=m/(u-1),f=!0):c>e[m]&&m+1<u&&c<e[m+1]&&(d=(m+(c-e[m])/(e[m+1]-e[m]))/(u-1),f=!0),m++;return f?l<1?E.create(p.NUM):(d=Oa(d,l),R.create(d)):E.create(p.NA)}_getValues(e){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=[];for(let a=0;a<n;a++)for(let n=0;n<r;n++){let r=e.isArray()?e.get(a,n):e;if(r.isError())return r;if(r.isNull()||r.isBoolean())continue;let o=r.getValue();(0,t.isRealNum)(o)&&i.push(+o)}return i.sort((e,t)=>e-t)}},uu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=Math.floor(+o.getValue()),u=+s.getValue(),d=+c.getValue();if(l<0||u<0)return E.create(p.NUM);let f;return f=d?_l(l,u):vl(l,u),R.create(f)}},du=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Fl(e);if(t.isArray()){let e=t.mapValue(e=>this._handleSingleObject(n,e));return e.getRowCount()===1&&e.getColumnCount()===1?e.get(0,0):e}return this._handleSingleObject(n,t)}_handleSingleObject(e,t){if(!Array.isArray(e))return e;let{isError:n,errorObject:r,variants:i}=X(t);if(n)return r;let[a]=i;return Vl(e,Math.floor(+a.getValue()))}},fu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=this.flattenArray(e);return t.isError()?t:t.std()}},pu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=this.flattenArray(e);return t.isError()?t:t.std(1)}},mu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return n===1&&r===1?o.get(0,0):o}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(s<=0||s>1||c<1||c>10**10)return E.create(p.NUM);let l=Math.abs(xl(s/2,c));return Number.isNaN(l)||!Number.isFinite(l)?E.create(p.NUM):R.create(l)}},hu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a,array1Values:o,array2Values:s}=this._handleArray1AndArray2(e,t),c=this._getArrayValues(e),l=this._getArrayValues(t),u=Math.max(n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),d=Math.max(n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),f=V(u,d,n,E.create(p.NA)),m=V(u,d,r,E.create(p.NA)),h=f.mapValue((n,r,u)=>{let d=m.get(r,u);if(e.isError())return e;if(t.isError())return t;if(n.isError())return n;if(d.isError())return d;let{isError:f,errorObject:h,variants:g}=X(n,d);if(f)return h;let[_,v]=g,y=Math.floor(+_.getValue()),b=Math.floor(+v.getValue());return![1,2].includes(y)||![1,2,3].includes(b)?E.create(p.NUM):b===1&&i?a:b!==1&&c instanceof E?c:b!==1&&l instanceof E?l:this._handleSingleObject(b===1?o:c,b===1?s:l,y,b)});return u===1&&d===1?h.get(0,0):h}_handleSingleObject(e,t,n,r){if(e.length<2||t.length<2)return E.create(p.DIV_BY_ZERO);let{isError:i,errorObject:a,x:o,degFreedom:s}=this._getTDistParamByArrayValues(e,t,r);if(i)return a;let c=yl(-o,s);return n===2&&(c*=2),Number.isNaN(c)||!Number.isFinite(c)?E.create(p.NUM):R.create(c)}_getArrayValues(e){let t=e.isArray()?e.getRowCount():1,n=e.isArray()?e.getColumnCount():1,r=[];for(let i=0;i<t;i++)for(let a=0;a<n;a++){let o=e.isArray()?e.get(i,a):e;if(o.isError())return o;if(o.isNull()){if(t*n===1)return E.create(p.VALUE);continue}o.isBoolean()||o.isString()||r.push(+o.getValue())}return r}_handleArray1AndArray2(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return{isError:!0,errorObject:o,array1Values:[],array2Values:[]};let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return{isError:!0,errorObject:s,array1Values:[],array2Values:[]};if((n*r===1||i*a===1)&&(o.isNull()||s.isNull()))return{isError:!0,errorObject:E.create(p.VALUE),array1Values:[],array2Values:[]};if(n*r!==i*a)return{isError:!0,errorObject:E.create(p.NA),array1Values:[],array2Values:[]};let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?{isError:!0,errorObject:l,array1Values:[],array2Values:[]}:f||u.length<2?{isError:!0,errorObject:E.create(p.DIV_BY_ZERO),array1Values:[],array2Values:[]}:{isError:!1,errorObject:null,array1Values:u,array2Values:d}}_getTDistParamByArrayValues(e,t,n){return n===1?this._getTDistParamByType1(e,t):n===2?this._getTDistParamByType2(e,t):this._getTDistParamByType3(e,t)}_getTDistParamByType1(e,t){let n=e.length,r=0,i=0,a=0;for(let o=0;o<n;o++)r+=e[o],i+=t[o],a+=(e[o]-t[o])**2;let o=r-i,s=n*a-o**2,c=n-1;return s===0?{isError:!0,errorObject:E.create(p.DIV_BY_ZERO),x:0,degFreedom:c}:{isError:!1,errorObject:null,x:Math.abs(o)*Math.sqrt(c/s),degFreedom:c}}_getTDistParamByType2(e,t){let n=e.length,r=t.length,i=0,a=0;for(let t=0;t<n;t++)i+=e[t],a+=e[t]**2;let o=0,s=0;for(let e=0;e<r;e++)o+=t[e],s+=t[e]**2;let c=a-i**2/n,l=s-o**2/r,u=Math.sqrt(c+l);if(u===0)return{isError:!0,errorObject:E.create(p.DIV_BY_ZERO),x:0,degFreedom:0};let d=n-1+r-1,f=Math.sqrt(n*r*d/(n+r));return{isError:!1,errorObject:null,x:Math.abs(i/n-o/r)/u*f,degFreedom:d}}_getTDistParamByType3(e,t){let n=e.length,r=t.length,i=0,a=0;for(let t=0;t<n;t++)i+=e[t],a+=e[t]**2;let o=0,s=0;for(let e=0;e<r;e++)o+=t[e],s+=t[e]**2;let c=(a-i**2/n)/(n*(n-1)),l=(s-o**2/r)/(r*(r-1));if(c+l===0)return{isError:!0,errorObject:E.create(p.DIV_BY_ZERO),x:0,degFreedom:0};let u=c/(c+l);return{isError:!1,errorObject:null,x:Math.abs(i/n-o/r)/Math.sqrt(c+l),degFreedom:1/(u**2/(n-1)+(1-u)**2/(r-1))}}},gu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=this.flattenArray(e);return t.isError()?t:t.var()}},_u=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=this.flattenArray(e);return t.isError()?t:t.var(1)}},vu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(e,t,n,r);if(i)return a;let[s,c,l,u]=o,d=+s.getValue(),f=+c.getValue(),m=+l.getValue(),h=+u.getValue();if(d<0||f<=0||m<=0)return E.create(p.NUM);let g=Math.exp(-((d/m)**f)),_;return _=h?1-g:f/m**f*d**(f-1)*g,Number.isNaN(_)||!Number.isFinite(_)?E.create(p.NUM):R.create(_)}},yu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=this._getArrayValues(e),i=Math.max(t.isArray()?t.getRowCount():1,n!=null&&n.isArray()?n.getRowCount():1),a=Math.max(t.isArray()?t.getColumnCount():1,n!=null&&n.isArray()?n.getColumnCount():1),o=V(i,a,t,E.create(p.NA)),s=n?V(i,a,n,E.create(p.NA)):void 0,c=o.mapValue((e,t,i)=>{if(r instanceof E)return r;if(e.isError())return e;let a=n?s.get(t,i):void 0;return a!=null&&a.isError()?a:r.length===0?E.create(p.NA):r.length===1?E.create(p.DIV_BY_ZERO):this._handleSingleObject(r,e,a)});return i===1&&a===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(t);if(r)return i;let[o]=a,s=+o.getValue(),c=e.length,l=0,u=0;for(let t=0;t<c;t++)l+=e[t],u+=e[t]**2;let d=0;if(n!==void 0){let{isError:e,errorObject:t,variants:r}=X(n);if(e)return t;let[i]=r;d=+i.getValue()}else{let e=l/c;d=Math.sqrt((u-2*e*l+c*e**2)/(c-1))}if(d<=0)return E.create(p.NUM);let f=1-ml((l/c-s)/(d/Math.sqrt(c)),0,1);return Number.isNaN(f)||!Number.isFinite(f)?E.create(p.NUM):R.create(f)}_getArrayValues(e){let n=[],r=e.isArray()?e.getRowCount():1,i=e.isArray()?e.getColumnCount():1;for(let a=0;a<r;a++)for(let r=0;r<i;r++){let i=e.isArray()?e.get(a,r):e;if(i.isError())return i;if(i.isNull()||i.isBoolean()||i.isString())continue;let o=i.getValue();(0,t.isRealNum)(o)&&n.push(+o)}return n}},bu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let a=r==null?R.create(0):r,o=i==null?R.create(1):i;a.isNull()&&(a=R.create(0)),o.isNull()&&(o=R.create(1));let s=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,a.isArray()?a.getRowCount():1,o.isArray()?o.getRowCount():1),c=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,a.isArray()?a.getColumnCount():1,o.isArray()?o.getColumnCount():1),l=V(s,c,e,E.create(p.NA)),u=V(s,c,t,E.create(p.NA)),d=V(s,c,n,E.create(p.NA)),f=V(s,c,a,E.create(p.NA)),m=V(s,c,o,E.create(p.NA)),h=l.mapValue((e,t,n)=>{let r=u.get(t,n),i=d.get(t,n),a=f.get(t,n),o=m.get(t,n);return this._handleSingleObject(e,r,i,a,o)});return s===1&&c===1?h.get(0,0):h}_handleSingleObject(e,t,n,r,i){if(e.isError())return e;if(t.isError())return t;if(n.isError())return n;if(r.isError())return r;if(i.isError())return i;let{isError:a,errorObject:o,variants:s}=X(e,t,n,r,i);if(a)return o;let[c,l,u,d,f]=s,m=+c.getValue(),h=+l.getValue(),g=+u.getValue(),_=+d.getValue(),v=+f.getValue();if(h<=0||g<=0||m<_||m>v||_===v)return E.create(p.NUM);let y=Ic((m-_)/(v-_),h,g);return R.create(y)}};let xu=function(e){return e.BETADIST=`BETADIST`,e.BETAINV=`BETAINV`,e.BINOMDIST=`BINOMDIST`,e.CHIDIST=`CHIDIST`,e.CHIINV=`CHIINV`,e.CHITEST=`CHITEST`,e.CONFIDENCE=`CONFIDENCE`,e.COVAR=`COVAR`,e.CRITBINOM=`CRITBINOM`,e.EXPONDIST=`EXPONDIST`,e.FDIST=`FDIST`,e.FINV=`FINV`,e.FTEST=`FTEST`,e.GAMMADIST=`GAMMADIST`,e.GAMMAINV=`GAMMAINV`,e.HYPGEOMDIST=`HYPGEOMDIST`,e.LOGINV=`LOGINV`,e.LOGNORMDIST=`LOGNORMDIST`,e.MODE=`MODE`,e.NEGBINOMDIST=`NEGBINOMDIST`,e.NORMDIST=`NORMDIST`,e.NORMINV=`NORMINV`,e.NORMSDIST=`NORMSDIST`,e.NORMSINV=`NORMSINV`,e.PERCENTILE=`PERCENTILE`,e.PERCENTRANK=`PERCENTRANK`,e.POISSON=`POISSON`,e.QUARTILE=`QUARTILE`,e.RANK=`RANK`,e.STDEV=`STDEV`,e.STDEVP=`STDEVP`,e.TDIST=`TDIST`,e.TINV=`TINV`,e.TTEST=`TTEST`,e.VAR=`VAR`,e.VARP=`VARP`,e.WEIBULL=`WEIBULL`,e.ZTEST=`ZTEST`,e}({});var Su=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(e,t,n,r);if(i)return a;let[s,c,l,u]=o,d=Math.floor(+s.getValue()),f=Math.floor(+c.getValue()),m=Math.floor(+l.getValue()),h=Math.floor(+u.getValue());if(d<0||d>f||d>m||d<f-h+m||f<=0||f>h||m<=0||m>h||h<=0)return E.create(p.NUM);let g=cl(d,f,m,h);return Number.isNaN(g)&&(g=0),R.create(g)}},Cu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=+s.getValue(),d=+c.getValue();if(l<=0||d<=0)return E.create(p.NUM);let f=ll(l,u,d);return R.create(f)}},wu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=Math.floor(+o.getValue()),u=Math.floor(+s.getValue()),d=+c.getValue();if(l<0||u<1||d<=0||d>=1)return E.create(p.NUM);let f=pl(l,u,d);return R.create(f)}},Tu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return e.getRowCount()===1&&e.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=ml(+i.getValue(),0,1);return R.create(a)}},Eu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3),d(this,`needsReferenceObject`,!0)}calculate(e,t,n){let r=e;r.isReferenceObject()&&(r=r.toArrayValueObject());let{refHasError:i,refErrorObject:a,refNumbers:o}=this._checkRefReferenceObject(t),s=n==null?R.create(0):n;s.isReferenceObject()&&(s=s.toArrayValueObject());let c=Math.max(r.isArray()?r.getRowCount():1,s.isArray()?s.getRowCount():1),l=Math.max(r.isArray()?r.getColumnCount():1,s.isArray()?s.getColumnCount():1),u=V(c,l,r,E.create(p.NA)),d=V(c,l,s,E.create(p.NA)),f=u.map((t,n,r)=>{let s=d.get(n,r);if(!e.isReferenceObject()&&e.isNull())return E.create(p.NA);if(i)return a;if(s.isError())return s;let c=+t.getValue(),l=+s.getValue();if(Number.isNaN(c)||Number.isNaN(l))return E.create(p.VALUE);let u=o.sort((e,t)=>l?e-t:t-e).indexOf(c);return u===-1?E.create(p.NA):R.create(u+1)});return c===1&&l===1?f.get(0,0):f}_checkRefReferenceObject(e){let t=!1,n=E.create(p.NA),r=[];return e.isReferenceObject()?(e.toArrayValueObject().iterator(e=>{let i=e;if(i.isError())return t=!0,n=i,!1;if(i.isNull()||i.isBoolean())return!0;let a=+i.getValue();if(Number.isNaN(a))return!0;r.push(a)}),{refHasError:t,refErrorObject:n,refNumbers:r}):{refHasError:!0,refErrorObject:n,refNumbers:r}}},Du=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=Math.floor(+s.getValue()),d=Math.floor(+c.getValue());if(l<0||u<1||u>10**10||d<1||d>2)return E.create(p.NUM);let f=yl(-l,u);return d===2&&(f*=2),Number.isNaN(f)||!Number.isFinite(f)?E.create(p.NUM):R.create(f)}};let Ou=[[bu,xu.BETADIST],[Ul,xu.BETAINV],[Wl,xu.BINOMDIST],[Kl,xu.CHIDIST],[ql,xu.CHIINV],[Jl,xu.CHITEST],[Yl,xu.CONFIDENCE],[Xl,xu.COVAR],[Gl,xu.CRITBINOM],[Zl,xu.EXPONDIST],[Ql,xu.FDIST],[$l,xu.FINV],[eu,xu.FTEST],[tu,xu.GAMMADIST],[nu,xu.GAMMAINV],[Su,xu.HYPGEOMDIST],[Cu,xu.LOGNORMDIST],[ru,xu.LOGINV],[iu,xu.MODE],[wu,xu.NEGBINOMDIST],[au,xu.NORMDIST],[ou,xu.NORMINV],[Tu,xu.NORMSDIST],[su,xu.NORMSINV],[cu,xu.PERCENTILE],[lu,xu.PERCENTRANK],[uu,xu.POISSON],[du,xu.QUARTILE],[Eu,xu.RANK],[pu,xu.STDEV],[fu,xu.STDEVP],[Du,xu.TDIST],[mu,xu.TINV],[hu,xu.TTEST],[_u,xu.VAR],[gu,xu.VARP],[vu,xu.WEIBULL],[yu,xu.ZTEST]],ku=[],Au=function(e){return e.CUBEKPIMEMBER=`CUBEKPIMEMBER`,e.CUBEMEMBER=`CUBEMEMBER`,e.CUBEMEMBERPROPERTY=`CUBEMEMBERPROPERTY`,e.CUBERANKEDMEMBER=`CUBERANKEDMEMBER`,e.CUBESET=`CUBESET`,e.CUBESETCOUNT=`CUBESETCOUNT`,e.CUBEVALUE=`CUBEVALUE`,e}({});var ju=class extends Z{isCustom(){return!0}},Mu=class extends ju{isAsync(){return!0}};function Nu(e){let n=[];if(e.isError())return{isError:!0,errorObject:e,databaseValues:n};let r=e.isArray()?e.getRowCount():1,i=e.isArray()?e.getColumnCount():1;if(r<2)return{isError:!0,errorObject:E.create(p.VALUE),databaseValues:n};for(let a=0;a<r;a++){let r=[];for(let n=0;n<i;n++){let i=e.get(a,n);if(i.isNull()){r.push(null);continue}let o=`${i.getValue()}`;if(i.isBoolean()&&(o=o.toLocaleUpperCase()),i.isNumber()||(0,t.isRealNum)(o)){r.push(+o);continue}r.push(o)}n.push(r)}return{isError:!1,errorObject:null,databaseValues:n}}function Pu(e,n){let r=-1;if(e.isError())return{isError:!0,errorObject:e,fieldIndex:r};let i=e.isArray()?e.getRowCount():1,a=e.isArray()?e.getColumnCount():1;if(i>1||a>1)return{isError:!0,errorObject:E.create(p.VALUE),fieldIndex:r};let o=e.isArray()?e.get(0,0):e,s=`${o.getValue()}`;if(o.isNull()?s=0:o.isBoolean()?s=o.getValue()?1:0:(o.isNumber()||(0,t.isRealNum)(s))&&(s=Math.floor(+s)),typeof s==`number`){if(s<1||s>n[0].length)return{isError:!0,errorObject:E.create(p.VALUE),fieldIndex:r};r=s-1}else if(r=n[0].findIndex(e=>e===null?!1:`${e}`.toLocaleLowerCase()===s.toLocaleLowerCase()),r===-1)return{isError:!0,errorObject:E.create(p.VALUE),fieldIndex:r};return{isError:!1,errorObject:null,fieldIndex:r}}function Fu(e){let n=[];if(e.isError())return{isError:!0,errorObject:e,criteriaValues:n};let r=e.isArray()?e.getRowCount():1,i=e.isArray()?e.getColumnCount():1;if(r<2)return{isError:!0,errorObject:E.create(p.VALUE),criteriaValues:n};for(let a=0;a<r;a++){let r=[];for(let n=0;n<i;n++){let i=e.get(a,n);if(i.isNull()){r.push(null);continue}let o=`${i.getValue()}`;if(i.isBoolean()){r.push(i.getValue()?1:0);continue}if(i.isNumber()||(0,t.isRealNum)(o)){r.push(+o);continue}r.push(o)}n.push(r)}return{isError:!1,errorObject:null,criteriaValues:n}}function Iu(e,t,n){let r=e.length,i=e[0].length,a={},o=!1;for(let s=1;s<r;s++){let r=!0;for(let o=0;o<i;o++){let i=e[s][o];if(i===null)continue;let c=a[o];if(c===void 0){let n=e[0][o];c=t[0].findIndex(e=>e===null||n===null?!1:`${e}`.toLocaleLowerCase()===`${n}`.toLocaleLowerCase()),a[o]=c}if(c===-1&&(typeof i==`string`||i===0)){r=!1;break}else if(c>-1){let e=t[n][c];if(e===null){r=!1;break}let[a,o]=uo(`${i}`);if(!$a.create(`${e}`).compare(o,a).getValue()){r=!1;break}}}if(r){o=!0;break}}return o}var Lu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=0,m=0;for(let e=1;e<a.length;e++){let t=a[e][c];typeof t==`number`&&Iu(d,a,e)&&(f+=t,m++)}return m===0?E.create(p.DIV_BY_ZERO):R.create(f/m)}},Ru=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=0;for(let e=1;e<a.length;e++)typeof a[e][c]==`number`&&Iu(d,a,e)&&f++;return R.create(f)}},zu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=0;for(let e=1;e<a.length;e++)a[e][c]!=null&&Iu(d,a,e)&&f++;return R.create(f)}},Bu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=0,m=0;for(let e=1;e<a.length;e++)a[e][c]!=null&&Iu(d,a,e)&&(f++,m=e);return f===0?E.create(p.VALUE):f>1?E.create(p.NUM):e.get(m,c)}},Vu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=-1/0,p=0;for(let e=1;e<a.length;e++){let t=a[e][c];typeof t==`number`&&Iu(d,a,e)&&(f=Math.max(f,t),p++)}return p===0?R.create(0):R.create(f)}},Hu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=1/0,p=0;for(let e=1;e<a.length;e++){let t=a[e][c];typeof t==`number`&&Iu(d,a,e)&&(f=Math.min(f,t),p++)}return p===0?R.create(0):R.create(f)}},Uu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=1,p=0;for(let e=1;e<a.length;e++){let t=a[e][c];typeof t==`number`&&Iu(d,a,e)&&(f*=t,p++)}return p===0?R.create(0):R.create(f)}},Wu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=[],m=0,h=0;for(let e=1;e<a.length;e++){let t=a[e][c];typeof t==`number`&&Iu(d,a,e)&&(f.push(t),m+=t,h++)}if(h<=1)return E.create(p.DIV_BY_ZERO);let g=m/h,_=0;for(let e=0;e<h;e++)_+=(f[e]-g)**2;let v=Math.sqrt(_/(h-1));return R.create(v)}},Gu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=[],m=0,h=0;for(let e=1;e<a.length;e++){let t=a[e][c];typeof t==`number`&&Iu(d,a,e)&&(f.push(t),m+=t,h++)}if(h===0)return E.create(p.DIV_BY_ZERO);let g=m/h,_=0;for(let e=0;e<h;e++)_+=(f[e]-g)**2;let v=Math.sqrt(_/h);return R.create(v)}},Ku=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=0;for(let e=1;e<a.length;e++){let t=a[e][c];typeof t==`number`&&Iu(d,a,e)&&(f+=t)}return R.create(f)}},qu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=[],m=0,h=0;for(let e=1;e<a.length;e++){let t=a[e][c];typeof t==`number`&&Iu(d,a,e)&&(f.push(t),m+=t,h++)}if(h<=1)return E.create(p.DIV_BY_ZERO);let g=m/h,_=0;for(let e=0;e<h;e++)_+=(f[e]-g)**2;let v=_/(h-1);return R.create(v)}},Ju=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=[],m=0,h=0;for(let e=1;e<a.length;e++){let t=a[e][c];typeof t==`number`&&Iu(d,a,e)&&(f.push(t),m+=t,h++)}if(h===0)return E.create(p.DIV_BY_ZERO);let g=m/h,_=0;for(let e=0;e<h;e++)_+=(f[e]-g)**2;let v=_/h;return R.create(v)}};let Yu=function(e){return e.DAVERAGE=`DAVERAGE`,e.DCOUNT=`DCOUNT`,e.DCOUNTA=`DCOUNTA`,e.DGET=`DGET`,e.DMAX=`DMAX`,e.DMIN=`DMIN`,e.DPRODUCT=`DPRODUCT`,e.DSTDEV=`DSTDEV`,e.DSTDEVP=`DSTDEVP`,e.DSUM=`DSUM`,e.DVAR=`DVAR`,e.DVARP=`DVARP`,e}({}),Xu=[[Lu,Yu.DAVERAGE],[Ru,Yu.DCOUNT],[zu,Yu.DCOUNTA],[Bu,Yu.DGET],[Vu,Yu.DMAX],[Hu,Yu.DMIN],[Uu,Yu.DPRODUCT],[Wu,Yu.DSTDEV],[Gu,Yu.DSTDEVP],[Ku,Yu.DSUM],[qu,Yu.DVAR],[Ju,Yu.DVARP]];var Zu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.map((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);if(e.isError())return e;if(r.isError())return r;if(i.isError())return i;let{isError:a,errorObject:c,variants:l}=X(e,r,i);if(a)return c;let[u,d,f]=l,m=Math.floor(+u.getValue()),h=Math.floor(+d.getValue()),g=Math.floor(+f.getValue());if(m<0||m>9999)return E.create(p.NUM);m>=0&&m<1899&&(m+=1900);let _=D(new Date(Date.UTC(m,h-1,g)));return _<0?E.create(p.NUM):R.create(_,ne)});return r===1&&i===1?c.get(0,0):c}},Qu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=e,i=t,a=n;if(r.isArray()&&(r=r.get(0,0)),i.isArray()&&(i=i.get(0,0)),a.isArray()&&(a=a.get(0,0)),r.isError())return r;if(i.isError())return i;if(a.isError())return a;let o=k(r);if(typeof o!=`number`)return o;let s=k(i);return typeof s==`number`?s<o||!a.isString()?E.create(p.NUM):this._getResultByUnit(o,s,a):s}_getResultByUnit(e,t,n){let r=O(e),i=r.getUTCFullYear(),a=r.getUTCMonth()+1,o=r.getUTCDate(),s=O(t),c=s.getUTCFullYear(),l=s.getUTCMonth()+1,u=s.getUTCDate(),d=`${n.getValue()}`.toLocaleUpperCase(),f=0,m;switch(d){case`Y`:f=c-i,(l<a||l===a&&u<o)&&--f;break;case`M`:f=(c-i)*12+l-a,u<o&&--f;break;case`D`:f=Math.floor(t)-Math.floor(e);break;case`MD`:f=u-o,u<o&&(m=new Date(Date.UTC(c,l-1,0)),f+=we(m.getUTCFullYear(),m.getUTCMonth()));break;case`YM`:f=l-a,(l<a||l===a&&u<o)&&(f+=12),u<o&&--f;break;case`YD`:m=new Date(Date.UTC(i,l-1,u)),(l<a||l===a&&u<o)&&(m=new Date(Date.UTC(i+1,l-1,u))),f=Math.floor(D(m))-Math.floor(e);break;default:return E.create(p.NUM)}return R.create(f)}},$u=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}isArgumentsIgnoreNumberPattern(){return!0}calculate(e){return e.isArray()?e.mapValue(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;if(e.isString()){let t=`${e.getValue()}`,n=se(t);if(n===null&&(n=ce(t)),n){let{v:e,z:t}=n;if(t&&le(t))return e instanceof Date&&(e=ie(e)),R.create(Math.trunc(+e))}}return E.create(p.VALUE)}},ed=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isError()?e:e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t,n=e.getValue();if(e.isString()){if(!oe(`${n}`))return E.create(p.VALUE);t=new Date(`${n}`)}else{let n=+e.getValue();if(n<0)return E.create(p.NUM);if(n===0)return R.create(0);t=O(n)}let r=t.getUTCDate();return R.create(r)}},td=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e),a=V(n,r,t),o=i.map((e,t,n)=>{let r=a.get(t,n);if(e.isError())return e;if(r.isError())return r;let i=k(e);if(typeof i!=`number`)return i;let o=k(r);if(typeof o!=`number`)return o;let s=Math.floor(i)-Math.floor(o);return R.create(s)});return n===1&&r===1?o.get(0,0):o}},nd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?L.create(!1):n;if(e.isError())return e;if(t.isError())return t;if(r.isError())return r;let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,r,E.create(p.NA)),l=o.map((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n);if(e.isError())return e;let a=k(e);if(typeof a!=`number`)return a;if(r.isError())return r;let o=k(r);if(typeof o!=`number`)return o;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;let{days:l}=ge(a,o,+i.getValue()?4:0),u=o>=a?l:-l;return R.create(u)});return i===1&&a===1?l.get(0,0):l}},rd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e),a=V(n,r,t);return i.map((e,t,n)=>{let r=a.get(t,n)||Ua.create();if(e.isError())return e;if(r.isError())return r;if(e.isString()||e.isBoolean()||r.isString()||r.isBoolean())return E.create(p.VALUE);let i=+e.getValue();if(i<0)return E.create(p.NUM);let o=Math.floor(+r.getValue()),s=O(i),c=s.getUTCFullYear(),l=s.getUTCMonth()+o,u=s.getUTCDate(),d=D(new Date(Date.UTC(c,l,u)));return R.create(d,ne)})}},id=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e,r=t;if(n.isArray()){let e=n.getRowCount(),t=n.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);n=n.get(0,0)}if(r.isArray()){let e=r.getRowCount(),t=r.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);r=r.get(0,0)}if(n.isError())return n;if(r.isError())return r;let i=k(n);if(typeof i!=`number`)return i;if(r.isBoolean())return E.create(p.VALUE);let a=O(i),o=i>0?a.getUTCFullYear():1900,s=i>0?a.getUTCMonth():0,c=Math.floor(+r.getValue());if(Number.isNaN(c))return E.create(p.VALUE);let l=D(new Date(Date.UTC(o,s+c+1,0)));return R.create(l)}},ad=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2),d(this,`needsReferenceObject`,!0)}calculate(e,t){let n=t==null?R.create(1):t,{isError:r,errorObject:i,timestampIsReferenceObject:a,timestampObject:o,unitObject:s}=this._checkVariants(e,n);if(r)return i;if(o.isNull()||o.isBoolean()||o.isString()||!a&&o.isNumber()&&o.getPattern()!==``)return E.create(p.VALUE);let c=+o.getValue(),{isError:l,errorObject:u,variants:d}=X(s);if(l)return u;let[f]=d,m=Math.floor(+f.getValue());if(c<0||m<1||m>3)return E.create(p.NUM);m===1&&(c*=1e3),m===3&&(c/=1e3);let h=new Date(Date.UTC(1970,0,1,0,0,0,0)+c);if(Number.isNaN(h.getTime())){let e=25569+c/864e5;return R.create(e)}else{let e=ie(h);return R.create(e,`yyyy-MM-dd AM/PM hh:mm:ss`)}}_checkVariants(e,t){let n=e.isReferenceObject(),r=t.isReferenceObject(),i=e;if(n&&(i=e.toArrayValueObject()),i.isArray()){let e=i.getRowCount(),t=i.getColumnCount();if(e>1||t>1)return{isError:!0,errorObject:E.create(p.VALUE)};i=i.get(0,0)}if(i.isError())return{isError:!0,errorObject:i};let a=t;if(r&&(a=t.toArrayValueObject()),a.isArray()){let e=a.getRowCount(),t=a.getColumnCount();if(e>1||t>1)return{isError:!0,errorObject:E.create(p.VALUE)};a=a.get(0,0)}return a.isError()?{isError:!0,errorObject:a}:{isError:!1,errorObject:null,timestampIsReferenceObject:n,timestampObject:i,unitIsReferenceObject:r,unitObject:a}}},od=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isError()?e:e.isArray()?e.map(e=>e.isError()?e:this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=k(e);if(typeof t!=`number`)return t;if(t===0)return R.create(0);let n=ae(t).getUTCHours();return R.create(n)}},sd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isError()?e:e.isArray()?e.map(e=>e.isError()?e:this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=k(e);if(typeof t!=`number`)return t;let n=O(t),r=t>0?n.getUTCFullYear():1900,i=new Date(Date.UTC(r,0,1)),a=D(i),o=he(a),s;s=o<1?a+1:o<=4?a-(o-1):a+(11-o),t<s&&(i=new Date(Date.UTC(r-1,0,1)),a=D(i),o=he(a),s=o<1?a+1:o<=4?a-(o-1):a+(11-o));let c=Math.ceil((t-s+1)/7);return R.create(c)}},cd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isError()?e:e.isArray()?e.map(e=>e.isError()?e:this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=k(e);if(typeof t!=`number`)return t;if(t===0)return R.create(0);let n=ae(t).getUTCMinutes();return R.create(n)}},ld=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;let t,n=e.getValue();if(e.isString()){if(!oe(`${n}`))return E.create(p.VALUE);t=new Date(`${n}`)}else{let n=+e.getValue();if(n<0)return E.create(p.NUM);if(n===0)return R.create(1);t=O(n)}let r=t.getUTCMonth()+1;return R.create(r)}},ud=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=e,i=t;if(r.isArray()){let e=r.getRowCount(),t=r.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);r=r.get(0,0)}if(r.isError())return r;if(i.isArray()){let e=i.getRowCount(),t=i.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);i=i.get(0,0)}if(i.isError())return i;if(n!=null&&n.isError())return n;if(r.isBoolean()||i.isBoolean())return E.create(p.VALUE);let a=k(r);if(typeof a!=`number`)return a;let o=k(i);if(typeof o!=`number`)return o;if(n)return this._getResultByHolidays(a,o,n);let s=pe(a,o);return R.create(s)}_getResultByHolidays(e,t,n){let r=[];if(n!=null&&n.isArray()){let e=n.getRowCount(),t=n.getColumnCount();for(let i=0;i<e;i++)for(let e=0;e<t;e++){let t=n.get(i,e);if(t.isBoolean())return E.create(p.VALUE);let a=k(t);if(typeof a!=`number`)return a;r.push(a)}}else{if(n.isBoolean())return E.create(p.VALUE);let e=k(n);if(typeof e!=`number`)return e;r.push(e)}let i=pe(e,t,1,r);return R.create(i)}},dd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,4)}calculate(e,t,n,r){return e.isError()?e:t.isError()?t:n!=null&&n.isError()?n:r!=null&&r.isError()?r:n!=null&&n.isArray()?n.map(n=>this._handleSingleObject(e,t,n,r)):this._handleSingleObject(e,t,n,r)}_handleSingleObject(e,t,n,r){let i=e,a=t;if(i.isArray()){let e=i.getRowCount(),t=i.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);i=i.get(0,0)}if(i.isError())return i;if(a.isArray()){let e=a.getRowCount(),t=a.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);a=a.get(0,0)}if(a.isError())return a;let o=1;if(n){if(o=n.getValue(),n.isBoolean()&&(o=+o),n.isString()&&!de(o))return E.create(p.VALUE);if(!de(o))return E.create(p.NUM)}if(i.isBoolean()||a.isBoolean())return E.create(p.VALUE);let s=k(i);if(typeof s!=`number`)return s;let c=k(a);if(typeof c!=`number`)return c;if(r)return this._getResultByHolidays(s,c,o,r);let l=pe(s,c,o);return R.create(l)}_getResultByHolidays(e,t,n,r){let i=[];if(r!=null&&r.isArray()){let e=r.getRowCount(),t=r.getColumnCount();for(let n=0;n<e;n++)for(let e=0;e<t;e++){let t=r.get(n,e);if(t.isBoolean())return E.create(p.VALUE);let a=k(t);if(typeof a!=`number`)return a;i.push(a)}}else{if(r.isBoolean())return E.create(p.VALUE);let e=k(r);if(typeof e!=`number`)return e;i.push(e)}let a=pe(e,t,n,i);return R.create(a)}},fd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,0)}calculate(){let e=new Date,t=ie(new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds())));return R.create(t,`yyyy/mm/dd hh:mm`)}},pd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isError()?e:e.isArray()?e.map(e=>e.isError()?e:this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=k(e);if(typeof t!=`number`)return t;if(t===0)return R.create(0);let n=ae(t).getUTCSeconds();return R.create(n)}},md=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){if(e.isError())return e;if(t.isError())return t;if(n.isError())return n;let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e),o=V(r,i,t),s=V(r,i,n);return a.map((e,t,n)=>this._calculateTime(e,o,s,t,n))}_calculateTime(e,t,n,r,i){let a=e,o=t.get(r,i)||Ua.create(),s=n.get(r,i)||Ua.create();if((a.isString()||a.isBoolean())&&(a=a.convertToNumberObjectValue()),(o.isString()||o.isBoolean())&&(o=o.convertToNumberObjectValue()),(s.isString()||s.isBoolean())&&(s=s.convertToNumberObjectValue()),a.isError())return a;if(o.isError())return o;if(s.isError())return s;let c=Math.floor(+a.getValue()),l=Math.floor(+o.getValue()),u=Math.floor(+s.getValue());if(c<0||l<0||u<0||c>32767||l>32767||u>32767)return E.create(p.NUM);l+=Math.floor(u/60),u%=60,c+=Math.floor(l/60),l%=60,c%=24;let d=(c*3600+l*60+u)/86400;return R.create(d,`h:mm A/P`)}},hd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}isArgumentsIgnoreNumberPattern(){return!0}calculate(e){return e.isArray()?e.mapValue(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;if(e.isString()){let n=(0,t.getNumfmtParseValueFilter)(`${e.getValue()}`);if(n){let{v:e,z:t}=n;if(t&&le(t))return e instanceof Date&&(e=ie(e)),R.create(Ha(+e))}}return E.create(p.VALUE)}},gd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1),d(this,`needsReferenceObject`,!0)}calculate(e){let t=e.isReferenceObject(),n=e;if(t&&(n=e.toArrayValueObject()),n.isArray()){let e=n.getRowCount(),t=n.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);n=n.get(0,0)}if(n.isError()||n.isNull()||n.isBoolean()||n.isString()||!t&&n.isNumber()&&n.getPattern()!==``)return n;let r=+n.getValue();return R.create(r,`yyyy-MM-dd hh:mm:ss AM/PM`)}},_d=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,0)}calculate(){let e=new Date,t=D(new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate())));return R.create(t,ne)}},vd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2),d(this,`_returnTypeMap`,{1:[1,2,3,4,5,6,7],2:[7,1,2,3,4,5,6],3:[6,0,1,2,3,4,5],11:[7,1,2,3,4,5,6],12:[6,7,1,2,3,4,5],13:[5,6,7,1,2,3,4],14:[4,5,6,7,1,2,3],15:[3,4,5,6,7,1,2],16:[2,3,4,5,6,7,1],17:[1,2,3,4,5,6,7]})}calculate(e,t){let n=t==null?R.create(1):t;if(e.isError())return e;if(n.isError())return n;let r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.map((e,t,n)=>{let r=o.get(t,n);return this._handleSingleObject(e,r)});return r===1&&i===1?s.get(0,0):s}_handleSingleObject(e,t){let n=t;if(e.isError())return e;if(n.isError())return n;let r=k(e);if(typeof r!=`number`)return r;if(n.isString()&&(n=n.convertToNumberObjectValue(),n.isError()))return n;let i=Math.floor(+n.getValue());if(!this._returnTypeMap[i])return E.create(p.NUM);let a=he(r),o=this._returnTypeMap[i][a];return R.create(o)}},yd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2),d(this,`_returnTypeMap`,{1:0,2:1,11:1,12:2,13:3,14:4,15:5,16:6,17:0,21:4})}calculate(e,t){let n=e,r=t==null?R.create(1):t;if(n.isArray()){let e=n.getRowCount(),t=n.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);n=n.get(0,0)}if(n.isError())return n;if(r.isArray()){let e=r.getRowCount(),t=r.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);r=r.get(0,0)}if(r.isError())return r;if(n.isBoolean())return E.create(p.VALUE);let i=k(n);if(typeof i!=`number`)return i;if(r.isBoolean())return E.create(p.VALUE);let a=Math.floor(+r.getValue());return Number.isNaN(a)?E.create(p.VALUE):a in this._returnTypeMap?this._getResult(i,a):E.create(p.NUM)}_getResult(e,t){let n=O(e),r=e>0?n.getUTCFullYear():1900,i=new Date(Date.UTC(r,0,1)),a=D(i),o=he(a),s;if(t===21)s=o<1?a+1:o<=4?a-(o-1):a+(11-o),e<s&&(i=new Date(Date.UTC(r-1,0,1)),a=D(i),o=he(a),s=o<1?a+1:o<=4?a-(o-1):a+(11-o));else{let e=this._returnTypeMap[t];s=o<e?a-(o+7-e):a-(o-e)}let c=Math.ceil((e-s+1)/7);return R.create(c)}},bd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=e,i=t;if(r.isArray()){let e=r.getRowCount(),t=r.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);r=r.get(0,0)}if(r.isError())return r;if(i.isArray()){let e=i.getRowCount(),t=i.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);i=i.get(0,0)}if(i.isError())return i;if(n!=null&&n.isError())return n;if(r.isBoolean()||i.isBoolean())return E.create(p.VALUE);let a=k(r);if(typeof a!=`number`)return a;let o=+i.getValue();if(Number.isNaN(o))return E.create(p.VALUE);if(n)return this._getResultByHolidays(a,o,n);let s=me(a,o);return typeof s==`number`?R.create(s):s}_getResultByHolidays(e,t,n){let r=[];if(n!=null&&n.isArray()){let e=n.getRowCount(),t=n.getColumnCount();for(let i=0;i<e;i++)for(let e=0;e<t;e++){let t=n.get(i,e);if(t.isBoolean())return E.create(p.VALUE);let a=k(t);if(typeof a!=`number`)return a;r.push(a)}}else{if(n.isBoolean())return E.create(p.VALUE);let e=k(n);if(typeof e!=`number`)return e;r.push(e)}let i=me(e,t,1,r);return typeof i==`number`?R.create(i):i}},xd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,4)}calculate(e,t,n,r){return e.isError()?e:t.isError()?t:n!=null&&n.isError()?n:r!=null&&r.isError()?r:n!=null&&n.isArray()?n.map(n=>this._handleSingleObject(e,t,n,r)):this._handleSingleObject(e,t,n,r)}_handleSingleObject(e,t,n,r){let i=n==null?R.create(1):n,a=this._checkArrayError(e);if(a.isError())return a;let o=this._checkArrayError(t);if(o.isError())return o;if(a.isBoolean()||o.isBoolean())return E.create(p.VALUE);let s=k(e);if(typeof s!=`number`)return s;let c=+t.getValue();if(Number.isNaN(c))return E.create(p.VALUE);let l=i.getValue();if(i.isBoolean()&&(l=+l),i.isString()&&(!de(l)||l===`1111111`))return E.create(p.VALUE);if(!de(l))return E.create(p.NUM);if(r)return this._getResultByHolidays(s,c,l,r);let u=me(s,c,l);return typeof u==`number`?R.create(u):u}_checkArrayError(e){let t=e;if(t.isArray()){let e=t.getRowCount(),n=t.getColumnCount();if(e>1||n>1)return E.create(p.VALUE);t=t.get(0,0)}return t.isError(),t}_getResultByHolidays(e,t,n,r){let i=[];if(r!=null&&r.isArray()){let e=r.getRowCount(),t=r.getColumnCount();for(let n=0;n<e;n++)for(let e=0;e<t;e++){let t=r.get(n,e);if(t.isBoolean())return E.create(p.VALUE);let a=k(t);if(typeof a!=`number`)return a;i.push(a)}}else{if(r.isBoolean())return E.create(p.VALUE);let e=k(r);if(typeof e!=`number`)return e;i.push(e)}let a=me(e,t,n,i);return typeof a==`number`?R.create(a):a}},Sd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;let t,n=e.getValue();if(e.isString()){if(!oe(`${n}`))return E.create(p.VALUE);t=new Date(`${n}`)}else{let e=+n;if(e<0)return E.create(p.NUM);if(e===0)return R.create(1900);t=O(e)}let r=t.getUTCFullYear();return R.create(r)}},Cd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?R.create(0):n,i=ec(e);if(i.isError())return i;let a=ec(t);if(a.isError())return a;if(r=ec(r),r.isError())return r;if(i.isBoolean()||a.isBoolean()||r.isBoolean())return E.create(p.VALUE);let o=k(i);if(typeof o!=`number`)return o;let s=k(a);if(typeof s!=`number`)return s;let c=Math.floor(+r.getValue());if(Number.isNaN(c))return E.create(p.VALUE);if(c<0||c>4)return E.create(p.NUM);let{days:l,yearDays:u}=ge(o,s,c),d=l/u;return R.create(d)}};let wd=[[Zu,Ro.DATE],[Qu,Ro.DATEDIF],[$u,Ro.DATEVALUE],[ed,Ro.DAY],[td,Ro.DAYS],[nd,Ro.DAYS360],[rd,Ro.EDATE],[id,Ro.EOMONTH],[ad,Ro.EPOCHTODATE],[od,Ro.HOUR],[sd,Ro.ISOWEEKNUM],[cd,Ro.MINUTE],[ld,Ro.MONTH],[ud,Ro.NETWORKDAYS],[dd,Ro.NETWORKDAYS_INTL],[fd,Ro.NOW],[pd,Ro.SECOND],[md,Ro.TIME],[hd,Ro.TIMEVALUE],[gd,Ro.TO_DATE],[_d,Ro.TODAY],[vd,Ro.WEEKDAY],[yd,Ro.WEEKNUM],[bd,Ro.WORKDAY],[xd,Ro.WORKDAY_INTL],[Sd,Ro.YEAR],[Cd,Ro.YEARFRAC]];var Td=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull()||t.isNull())return E.create(p.NA);let{isError:n,errorObject:r,variants:i}=Y(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);if(c<0)return E.create(p.NUM);let l=sc.besseli(s,c);return Number.isNaN(l)||!Number.isFinite(l)?E.create(p.NUM):R.create(l)}},Ed=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull()||t.isNull())return E.create(p.NA);let{isError:n,errorObject:r,variants:i}=Y(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);if(c<0)return E.create(p.NUM);let l=sc.besselj(s,c);return Number.isNaN(l)||!Number.isFinite(l)?E.create(p.NUM):R.create(l)}},Dd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull()||t.isNull())return E.create(p.NA);let{isError:n,errorObject:r,variants:i}=Y(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);if(c<0)return E.create(p.NUM);let l=sc.besselk(s,c);return Number.isNaN(l)||!Number.isFinite(l)?E.create(p.NUM):R.create(l)}},Od=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull()||t.isNull())return E.create(p.NA);let{isError:n,errorObject:r,variants:i}=Y(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);if(c<0)return E.create(p.NUM);let l=sc.bessely(s,c);return Number.isNaN(l)||!Number.isFinite(l)?E.create(p.NUM):R.create(l)}},kd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:t,errorObject:n,variants:r}=Y(e);if(t)return n;let[i]=r,a=`${i.getValue()}`;if(!cc(a))return E.create(p.NUM);let o;return o=a.length===10&&a.substring(0,1)===`1`?Number.parseInt(a.substring(1),2)-512:Number.parseInt(a,2),R.create(o)}},Ad=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull())return E.create(p.NA);let n=0;if(t){let{isError:e,errorObject:r,variants:i}=Y(t);if(e)return r;let[a]=i;if(n=Math.floor(+a.getValue()),Number.isNaN(n))return E.create(p.VALUE);if(n<0||n>10)return E.create(p.NUM)}let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=`${o.getValue()}`;if(!cc(s))return E.create(p.NUM);let c;if(s.length===10&&s.substring(0,1)===`1`)c=(0xfffffffe00+Number.parseInt(s.substring(1),2)).toString(16);else if(c=Number.parseInt(s,2).toString(16),t){if(n<c.length)return E.create(p.NUM);c=`0`.repeat(n-c.length)+c}return z.create(c.toLocaleUpperCase())}},jd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull())return E.create(p.NA);let n=0;if(t){let{isError:e,errorObject:r,variants:i}=Y(t);if(e)return r;let[a]=i;if(n=Math.floor(+a.getValue()),Number.isNaN(n))return E.create(p.VALUE);if(n<0||n>10)return E.create(p.NUM)}let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=`${o.getValue()}`;if(!cc(s))return E.create(p.NUM);let c;if(s.length===10&&s.substring(0,1)===`1`)c=(1073741312+Number.parseInt(s.substring(1),2)).toString(8);else if(c=Number.parseInt(s,2).toString(8),t){if(n<c.length)return E.create(p.NUM);c=`0`.repeat(n-c.length)+c}return z.create(c)}},Md=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.map((e,t,n)=>{let r=e;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let i=a.get(t,n);if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;let o=+r.getValue(),s=+i.getValue();if(o<0||s<0||Math.floor(o)!==o||Math.floor(s)!==s||o>0xffffffffffff||s>0xffffffffffff)return E.create(p.NUM);let c=o&s;return R.create(c)});return n===1&&r===1?o.get(0,0):o}},Nd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.map((e,t,n)=>{let r=e;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let i=a.get(t,n);if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;let o=+r.getValue(),s=+i.getValue();if(o<0||Math.floor(o)!==o||o>0xffffffffffff||Math.abs(s)>53)return E.create(p.NUM);s=Math.trunc(s);let c=Number(s>=0?BigInt(o)<<BigInt(s):BigInt(o)>>BigInt(-s));return c>0xffffffffffff?E.create(p.NUM):R.create(c)});return n===1&&r===1?o.get(0,0):o}},Pd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.map((e,t,n)=>{let r=e;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let i=a.get(t,n);if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;let o=+r.getValue(),s=+i.getValue();if(o<0||s<0||Math.floor(o)!==o||Math.floor(s)!==s||o>0xffffffffffff||s>0xffffffffffff)return E.create(p.NUM);let c=Number(BigInt(o)|BigInt(s));return R.create(c)});return n===1&&r===1?o.get(0,0):o}},Fd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.map((e,t,n)=>{let r=e;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let i=a.get(t,n);if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;let o=+r.getValue(),s=+i.getValue();if(o<0||Math.floor(o)!==o||o>0xffffffffffff||Math.abs(s)>53)return E.create(p.NUM);s=Math.trunc(s);let c=Number(s>=0?BigInt(o)>>BigInt(s):BigInt(o)<<BigInt(-s));return c>0xffffffffffff?E.create(p.NUM):R.create(c)});return n===1&&r===1?o.get(0,0):o}},Id=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.map((e,t,n)=>{let r=e;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let i=a.get(t,n);if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;let o=+r.getValue(),s=+i.getValue();if(o<0||s<0||Math.floor(o)!==o||Math.floor(s)!==s||o>0xffffffffffff||s>0xffffffffffff)return E.create(p.NUM);let c=o^s;return R.create(c)});return n===1&&r===1?o.get(0,0):o}};I.prototype.cos=function(){let e=this.toNumber();return new I(Math.cos(e))};var Ld=class e{static getComplex(e,t,n){let r=new I(e).toSignificantDigits(15).toNumber(),i=new I(t).toSignificantDigits(15).toNumber(),a=n===``?`i`:n,o;return o=r===0&&i===0?0:r===0?i===1?a:`${i}${a}`:i===0?r:`${r}${i>0?`+`:``}${i===1?a:`${i}${a}`}`,o}static createByComplexStr(t,n,r){return new e(e.getComplex(t,n,r))}constructor(e){if(d(this,`_inumber`,``),d(this,`_realNum`,0),d(this,`_iNum`,0),d(this,`_suffix`,``),d(this,`_isError`,!1),`${e}`.trim()===``){this._isError=!0;return}this._inumber=e,this._getImReal(),this._getImAginary(),this._getImSuffix()}_getImReal(){if(this._inumber===0||this._inumber===`0`){this._realNum=0;return}let e=`${this._inumber}`;if([`i`,`+i`,`1i`,`+1i`,`-i`,`-1i`,`j`,`+j`,`1j`,`+1j`,`-j`,`-1j`].indexOf(e)>=0){this._realNum=0;return}let t=e.indexOf(`+`),n=e.indexOf(`-`);t===0&&(t=e.indexOf(`+`,1)),n===0&&(n=e.indexOf(`-`,1));let r=e.substring(e.length-1,e.length),i=r===`i`||r===`j`;if(t>=0||n>=0){if(!i){this._isError=!0;return}t>=0?Number.isNaN(+e.substring(0,t))||Number.isNaN(+e.substring(t+1,e.length-1))?this._isError=!0:this._realNum=+e.substring(0,t):Number.isNaN(+e.substring(0,n))||Number.isNaN(+e.substring(n+1,e.length-1))?this._isError=!0:this._realNum=+e.substring(0,n)}else i?Number.isNaN(+e.substring(0,e.length-1))?this._isError=!0:this._realNum=0:Number.isNaN(+e)?this._isError=!0:this._realNum=+e}_getImAginary(){if(this._isError)return;if(this._inumber===0||this._inumber===`0`){this._iNum=0;return}let e=`${this._inumber}`;if([`i`,`j`].indexOf(e)>=0){this._iNum=1;return}e=e.replace(`+i`,`+1i`).replace(`-i`,`-1i`).replace(`+j`,`+1j`).replace(`-j`,`-1j`);let t=e.indexOf(`+`),n=e.indexOf(`-`);t===0&&(t=e.indexOf(`+`,1)),n===0&&(n=e.indexOf(`-`,1));let r=e.substring(e.length-1,e.length),i=r===`i`||r===`j`;if(t>=0||n>=0){if(!i){this._isError=!0;return}t>=0?Number.isNaN(+e.substring(0,t))||Number.isNaN(+e.substring(t+1,e.length-1))?this._isError=!0:this._iNum=+e.substring(t+1,e.length-1):Number.isNaN(+e.substring(0,n))||Number.isNaN(+e.substring(n+1,e.length-1))?this._isError=!0:this._iNum=-+e.substring(n+1,e.length-1)}else i?Number.isNaN(+e.substring(0,e.length-1))?this._isError=!0:this._iNum=+e.substring(0,e.length-1):Number.isNaN(+e)?this._isError=!0:this._iNum=0}_getImSuffix(){let e=`${this._inumber}`,t=e.substring(e.length-1);this._suffix=t===`i`||t===`j`?t:``}getRealNum(){return this._realNum}getINum(){return this._iNum}getSuffix(){return this._suffix}isError(){return this._isError}toString(){return e.getComplex(this._realNum,this._iNum,this._suffix)}isDifferentSuffixes(e){let t=e.getSuffix();return this._suffix===``||t===``?!1:this._suffix!==t}Abs(){return I.sqrt(I.pow(this._realNum,2).add(I.pow(this._iNum,2))).toSignificantDigits(16).toNumber()}Argument(){let e=I.sqrt(I.pow(this._realNum,2).add(I.pow(this._iNum,2))),t=I.acos(new I(this._realNum).div(e)).toSignificantDigits(16).toNumber();return this._iNum<0&&(t=-t),t}Conjugate(){return e.getComplex(this._realNum,-this._iNum,this._suffix)}Cos(){if(this._iNum){let t=I.cos(this._realNum).mul(I.cosh(this._iNum)).toNumber(),n=I.sin(this._realNum).mul(I.sinh(this._iNum)).negated().toNumber();return e.getComplex(t,n,this._suffix)}else{let t=I.cos(this._realNum).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Cosh(){if(!Number.isFinite(Math.sinh(this._realNum))||!Number.isFinite(Math.cosh(this._realNum)))return this._isError=!0,``;if(this._iNum){let t=I.cosh(this._realNum).mul(I.cos(this._iNum)).toNumber(),n=I.sinh(this._realNum).mul(I.sin(this._iNum)).toNumber();return e.getComplex(t,n,this._suffix)}else{let t=I.cosh(this._realNum).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Cot(){if(this._iNum){let t=I.cosh(this._iNum*2).sub(I.cos(this._realNum*2)),n=I.sin(this._realNum*2).div(t).toNumber(),r=I.sinh(this._iNum*2).div(t).negated().toNumber();return e.getComplex(n,r,this._suffix)}else{let t=new I(1).div(I.tan(this._realNum)).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Coth(){if(!Number.isFinite(Math.sinh(this._realNum))||!Number.isFinite(Math.cosh(this._realNum)))return this._isError=!0,``;if(this._iNum){let t=I.cosh(this._realNum*2).sub(I.cos(this._iNum*2)),n=I.sinh(this._realNum*2).div(t).toNumber(),r=I.sin(this._iNum*2).div(t).negated().toNumber();return e.getComplex(n,r,this._suffix)}else{let t=new I(1).div(I.tanh(this._realNum)).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Csc(){if(this._iNum){let t=I.cosh(this._iNum*2).sub(I.cos(this._realNum*2)),n=I.sin(this._realNum).mul(I.cosh(this._iNum)).mul(2).div(t).toNumber(),r=I.cos(this._realNum).mul(I.sinh(this._iNum)).mul(-2).div(t).toNumber();return e.getComplex(n,r,this._suffix)}else{let t=new I(1).div(I.sin(this._realNum)).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Csch(){if(!Number.isFinite(Math.sinh(this._realNum))||!Number.isFinite(Math.cosh(this._realNum)))return e.getComplex(0,0,this._suffix);if(this._iNum){let t=I.cosh(this._realNum*2).sub(I.cos(this._iNum*2)),n=I.sinh(this._realNum).mul(I.cos(this._iNum)).mul(2).div(t).toNumber(),r=I.cosh(this._realNum).mul(I.sin(this._iNum)).mul(-2).div(t).toNumber();return e.getComplex(n,r,this._suffix)}else{let t=new I(1).div(I.sinh(this._realNum)).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Div(t){let n=new I(this._realNum),r=new I(this._iNum),i=new I(t.getRealNum()),a=new I(t.getINum()),o=i.mul(i).add(a.mul(a)),s=n.mul(i).add(r.mul(a)).div(o).toNumber(),c=r.mul(i).sub(n.mul(a)).div(o).toNumber(),l=this._suffix===``?t.getSuffix():this._suffix;return e.getComplex(s,c,l)}Exp(){if(!Number.isFinite(Math.exp(this._realNum)))return this._isError=!0,``;let t=I.exp(this._realNum).mul(I.cos(this._iNum)).toNumber(),n=I.exp(this._realNum).mul(I.sin(this._iNum)).toNumber();return e.getComplex(t,n,this._suffix)}Ln(){let t=I.sqrt(I.pow(this._realNum,2).add(I.pow(this._iNum,2))),n=I.ln(t).toNumber(),r=I.acos(new I(this._realNum).div(t)).toNumber();return e.getComplex(n,r,this._suffix)}Log(t){let n=I.sqrt(I.pow(this._realNum,2).add(I.pow(this._iNum,2))),r=I.ln(n),i=I.acos(new I(this._realNum).div(n));this._iNum<0&&(i=i.negated());let a=I.ln(t),o=new I(0),s=a.mul(a).add(o.mul(o));if(s.eq(0))return this._isError=!0,``;let c=r.mul(a).add(i.mul(o)).div(s).toNumber(),l=i.mul(a).sub(r.mul(o)).div(s).toNumber();return e.getComplex(c,l,this._suffix)}Power(t){if(this._realNum===0&&this._iNum===0)return t>0?e.getComplex(this._realNum,this._iNum,this._suffix):(this._isError=!0,``);let n=I.sqrt(I.pow(this._realNum,2).add(I.pow(this._iNum,2))),r=I.acos(new I(this._realNum).div(n));this._iNum<0&&(r=r.negated()),n=I.pow(n,t),r=r.mul(t);let i=I.cos(r).mul(n).toNumber(),a=I.sin(r).mul(n).toNumber();return!Number.isFinite(i)||!Number.isFinite(a)?(this._isError=!0,``):e.getComplex(i,a,this._suffix)}Product(t){let n=new I(this._realNum),r=new I(this._iNum),i=new I(t.getRealNum()),a=new I(t.getINum()),o=n.mul(i).sub(r.mul(a)).toNumber(),s=n.mul(a).add(r.mul(i)).toNumber(),c=this._suffix===``?t.getSuffix():this._suffix;return e.getComplex(o,s,c)}Sec(){if(this._iNum){let t=I.cosh(this._iNum*2).add(I.cos(this._realNum*2)),n=I.cos(this._realNum).mul(I.cosh(this._iNum)).mul(2).div(t).toNumber(),r=I.sin(this._realNum).mul(I.sinh(this._iNum)).mul(2).div(t).toNumber();return e.getComplex(n,r,this._suffix)}else{let t=new I(1).div(I.cos(this._realNum)).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Sech(){if(!Number.isFinite(Math.sinh(this._realNum*2))||!Number.isFinite(Math.cosh(this._realNum*2)))return e.getComplex(0,0,this._suffix);if(this._iNum){let t=I.cosh(this._realNum*2).add(I.cos(this._iNum*2)),n=I.cosh(this._realNum).mul(I.cos(this._iNum)).mul(2).div(t).toNumber(),r=I.sinh(this._realNum).mul(I.sin(this._iNum)).mul(-2).div(t).toNumber();return e.getComplex(n,r,this._suffix)}else{let t=new I(1).div(I.cosh(this._realNum)).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Sin(){if(this._iNum){let t=I.sin(this._realNum).mul(I.cosh(this._iNum)).toNumber(),n=I.cos(this._realNum).mul(I.sinh(this._iNum)).toNumber();return e.getComplex(t,n,this._suffix)}else{let t=I.sin(this._realNum).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Sinh(){if(!Number.isFinite(Math.sinh(this._realNum))||!Number.isFinite(Math.cosh(this._realNum)))return this._isError=!0,``;if(this._iNum){let t=I.sinh(this._realNum).mul(I.cos(this._iNum)).toNumber(),n=I.cosh(this._realNum).mul(I.sin(this._iNum)).toNumber();return e.getComplex(t,n,this._suffix)}else{let t=I.sinh(this._realNum).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Sqrt(){let t=I.sqrt(I.pow(this._realNum,2).add(I.pow(this._iNum,2))),n=I.sqrt(t),r=I.acos(new I(this._realNum).div(t));this._iNum<0&&(r=r.negated());let i=n.mul(I.cos(r.div(2).toNumber())).toNumber(),a=n.mul(I.sin(r.div(2))).toNumber();return e.getComplex(i,a,this._suffix)}Sub(t){let n=new I(this._realNum),r=new I(this._iNum),i=new I(t.getRealNum()),a=new I(t.getINum()),o=n.sub(i).toNumber(),s=r.sub(a).toNumber(),c=this._suffix===``?t.getSuffix():this._suffix;return e.getComplex(o,s,c)}Sum(t){let n=new I(this._realNum),r=new I(this._iNum),i=new I(t.getRealNum()),a=new I(t.getINum()),o=n.add(i).toNumber(),s=r.add(a).toNumber(),c=this._suffix===``?t.getSuffix():this._suffix;return e.getComplex(o,s,c)}Tan(){if(this._iNum){let t=I.cos(this._realNum*2).add(I.cosh(this._iNum*2)),n=I.sin(this._realNum*2).div(t).toNumber(),r=I.sinh(this._iNum*2).div(t).toNumber();return e.getComplex(n,r,this._suffix)}else{let t=I.tan(this._realNum).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Tanh(){if(!Number.isFinite(Math.sinh(this._realNum))||!Number.isFinite(Math.cosh(this._realNum)))return this._isError=!0,``;if(this._iNum){let t=I.cosh(this._realNum*2).add(I.cos(this._iNum*2)),n=I.sinh(this._realNum*2).div(t).toNumber(),r=I.sin(this._iNum*2).div(t).toNumber();return e.getComplex(n,r,this._suffix)}else{let t=I.tanh(this._realNum).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}},Rd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,variants:a}=Y(e,t,n==null?z.create(`i`):n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=+s.getValue(),d=`${c.getValue()}`;if(Number.isNaN(l)||Number.isNaN(u)||d!==`i`&&d!==`j`)return E.create(p.VALUE);let f=Ld.getComplex(l,u,d);return typeof f==`number`?R.create(f):z.create(f)}},zd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3),d(this,`_units`,[[`a.u. of action`,`?`,null,`action`,!1,!1,105457168181818e-48],[`a.u. of charge`,`e`,null,`electric_charge`,!1,!1,160217653141414e-33],[`a.u. of energy`,`Eh`,null,`energy`,!1,!1,435974417757576e-32],[`a.u. of length`,`a?`,null,`length`,!1,!1,529177210818182e-25],[`a.u. of mass`,`m?`,null,`mass`,!1,!1,910938261616162e-45],[`a.u. of time`,`?/Eh`,null,`time`,!1,!1,241888432650516e-31],[`admiralty knot`,`admkn`,null,`speed`,!1,!0,.514773333],[`ampere`,`A`,null,`electric_current`,!0,!1,1],[`ampere per meter`,`A/m`,null,`magnetic_field_intensity`,!0,!1,1],[`ångström`,`Å`,[`ang`],`length`,!1,!0,1e-10],[`are`,`ar`,null,`area`,!1,!0,100],[`astronomical unit`,`ua`,null,`length`,!1,!1,149597870691667e-25],[`bar`,`bar`,null,`pressure`,!1,!1,1e5],[`barn`,`b`,null,`area`,!1,!1,1e-28],[`becquerel`,`Bq`,null,`radioactivity`,!0,!1,1],[`bit`,`bit`,[`b`],`information`,!1,!0,1],[`btu`,`BTU`,[`btu`],`energy`,!1,!0,1055.05585262],[`byte`,`byte`,null,`information`,!1,!0,8],[`candela`,`cd`,null,`luminous_intensity`,!0,!1,1],[`candela per square metre`,`cd/m?`,null,`luminance`,!0,!1,1],[`centigrade`,`C`,[`cel`],`temperature`,!0,!1,1],[`cubic ångström`,`ang3`,[`ang^3`],`volume`,!1,!0,1e-30],[`cubic foot`,`ft3`,[`ft^3`],`volume`,!1,!0,.028316846592],[`cubic inch`,`in3`,[`in^3`],`volume`,!1,!0,16387064e-12],[`cubic light-year`,`ly3`,[`ly^3`],`volume`,!1,!0,846786664623715e-61],[`cubic metre`,`m3`,[`m^3`],`volume`,!0,!0,1],[`cubic mile`,`mi3`,[`mi^3`],`volume`,!1,!0,4168181825.44058],[`cubic nautical mile`,`Nmi3`,[`Nmi^3`],`volume`,!1,!0,6352182208],[`cubic Pica`,`Pica3`,[`Picapt3`,`Pica^3`,`Picapt^3`],`volume`,!1,!0,7.58660370370369e-8],[`cubic yard`,`yd3`,[`yd^3`],`volume`,!1,!0,.764554857984],[`cup`,`cup`,null,`volume`,!1,!0,.0002365882365],[`dalton`,`Da`,[`u`],`mass`,!1,!1,166053886282828e-41],[`day`,`d`,[`day`],`time`,!1,!0,86400],[`degree`,`°`,null,`angle`,!1,!1,.0174532925199433],[`dyne`,`dyn`,[`dy`],`force`,!1,!0,1e-5],[`electronvolt`,`eV`,[`ev`],`energy`,!1,!0,1.60217656514141],[`ell`,`ell`,null,`length`,!1,!0,1.143],[`erg`,`erg`,[`e`],`energy`,!1,!0,1e-7],[`fahrenheit`,`F`,[`fah`],`temperature`,!0,!1,1],[`fluid ounce`,`oz`,null,`volume`,!1,!0,295735295625e-16],[`foot`,`ft`,null,`length`,!1,!0,.3048],[`foot-pound`,`flb`,null,`energy`,!1,!0,1.3558179483314],[`gal`,`Gal`,null,`acceleration`,!1,!1,.01],[`gallon`,`gal`,null,`volume`,!1,!0,.003785411784],[`gauss`,`G`,[`ga`],`magnetic_flux_density`,!1,!0,1],[`grain`,`grain`,null,`mass`,!1,!0,647989e-10],[`gram`,`g`,null,`mass`,!1,!0,.001],[`gray`,`Gy`,null,`absorbed_dose`,!0,!1,1],[`gross registered ton`,`GRT`,[`regton`],`volume`,!1,!0,2.8316846592],[`hectare`,`ha`,null,`area`,!1,!0,1e4],[`henry`,`H`,null,`inductance`,!0,!1,1],[`hertz`,`Hz`,null,`frequency`,!0,!1,1],[`horsepower`,`HP`,[`h`],`power`,!1,!0,745.69987158227],[`horsepower-hour`,`HPh`,[`hh`,`hph`],`energy`,!1,!0,2684519.538],[`hour`,`h`,[`hr`],`time`,!1,!0,3600],[`imperial gallon (U.K.)`,`uk_gal`,null,`volume`,!1,!0,.00454609],[`imperial hundredweight`,`lcwt`,[`uk_cwt`,`hweight`],`mass`,!1,!0,50.802345],[`imperial quart (U.K)`,`uk_qt`,null,`volume`,!1,!0,.0011365225],[`imperial ton`,`brton`,[`uk_ton`,`LTON`],`mass`,!1,!0,1016.046909],[`inch`,`in`,null,`length`,!1,!0,.0254],[`international acre`,`uk_acre`,null,`area`,!1,!0,4046.8564224],[`IT calorie`,`cal`,null,`energy`,!1,!0,4.1868],[`joule`,`J`,null,`energy`,!0,!0,1],[`katal`,`kat`,null,`catalytic_activity`,!0,!1,1],[`kelvin`,`K`,[`kel`],`temperature`,!0,!0,1],[`kilogram`,`kg`,null,`mass`,!0,!0,1],[`knot`,`kn`,null,`speed`,!1,!0,.514444444444444],[`light-year`,`ly`,null,`length`,!1,!0,9460730472580800],[`litre`,`L`,[`l`,`lt`],`volume`,!1,!0,.001],[`lumen`,`lm`,null,`luminous_flux`,!0,!1,1],[`lux`,`lx`,null,`illuminance`,!0,!1,1],[`maxwell`,`Mx`,null,`magnetic_flux`,!1,!1,1e-18],[`measurement ton`,`MTON`,null,`volume`,!1,!0,1.13267386368],[`meter per hour`,`m/h`,[`m/hr`],`speed`,!1,!0,.00027777777777778],[`meter per second`,`m/s`,[`m/sec`],`speed`,!0,!0,1],[`meter per second squared`,`m?s??`,null,`acceleration`,!0,!1,1],[`parsec`,`pc`,[`parsec`],`length`,!1,!0,0x6da012f958ee1c],[`meter squared per second`,`m?/s`,null,`kinematic_viscosity`,!0,!1,1],[`metre`,`m`,null,`length`,!0,!0,1],[`miles per hour`,`mph`,null,`speed`,!1,!0,.44704],[`millimetre of mercury`,`mmHg`,null,`pressure`,!1,!1,133.322],[`minute`,`?`,null,`angle`,!1,!1,.000290888208665722],[`minute`,`min`,[`mn`],`time`,!1,!0,60],[`modern teaspoon`,`tspm`,null,`volume`,!1,!0,5e-6],[`mole`,`mol`,null,`amount_of_substance`,!0,!1,1],[`morgen`,`Morgen`,null,`area`,!1,!0,2500],[`n.u. of action`,`?`,null,`action`,!1,!1,105457168181818e-48],[`n.u. of mass`,`m?`,null,`mass`,!1,!1,910938261616162e-45],[`n.u. of speed`,`c?`,null,`speed`,!1,!1,299792458],[`n.u. of time`,`?/(me?c??)`,null,`time`,!1,!1,128808866778687e-35],[`nautical mile`,`M`,[`Nmi`],`length`,!1,!0,1852],[`newton`,`N`,null,`force`,!0,!0,1],[`œrsted`,`Oe `,null,`magnetic_field_intensity`,!1,!1,79.5774715459477],[`ohm`,`Ω`,null,`electric_resistance`,!0,!1,1],[`ounce mass`,`ozm`,null,`mass`,!1,!0,.028349523125],[`pascal`,`Pa`,null,`pressure`,!0,!1,1],[`pascal second`,`Pa?s`,null,`dynamic_viscosity`,!0,!1,1],[`pferdestärke`,`PS`,null,`power`,!1,!0,735.49875],[`phot`,`ph`,null,`illuminance`,!1,!1,1e-4],[`pica (1/6 inch)`,`pica`,null,`length`,!1,!0,.00035277777777778],[`pica (1/72 inch)`,`Pica`,[`Picapt`],`length`,!1,!0,.00423333333333333],[`poise`,`P`,null,`dynamic_viscosity`,!1,!1,.1],[`pond`,`pond`,null,`force`,!1,!0,.00980665],[`pound force`,`lbf`,null,`force`,!1,!0,4.4482216152605],[`pound mass`,`lbm`,null,`mass`,!1,!0,.45359237],[`quart`,`qt`,null,`volume`,!1,!0,.000946352946],[`radian`,`rad`,null,`angle`,!0,!1,1],[`rankine`,`Rank`,null,`temperature`,!1,!0,1],[`reaumur`,`Reau`,null,`temperature`,!1,!0,1],[`second`,`?`,null,`angle`,!1,!1,484813681109536e-20],[`second`,`s`,[`sec`],`time`,!0,!0,1],[`short hundredweight`,`cwt`,[`shweight`],`mass`,!1,!0,45.359237],[`siemens`,`S`,null,`electrical_conductance`,!0,!1,1],[`sievert`,`Sv`,null,`equivalent_dose`,!0,!1,1],[`slug`,`sg`,null,`mass`,!1,!0,14.59390294],[`square ångström`,`ang2`,[`ang^2`],`area`,!1,!0,1e-20],[`square foot`,`ft2`,[`ft^2`],`area`,!1,!0,.09290304],[`square inch`,`in2`,[`in^2`],`area`,!1,!0,64516e-8],[`square light-year`,`ly2`,[`ly^2`],`area`,!1,!0,895054210748189e17],[`square meter`,`m?`,null,`area`,!0,!0,1],[`square mile`,`mi2`,[`mi^2`],`area`,!1,!0,2589988.110336],[`square nautical mile`,`Nmi2`,[`Nmi^2`],`area`,!1,!0,3429904],[`square Pica`,`Pica2`,[`Picapt2`,`Pica^2`,`Picapt^2`],`area`,!1,!0,1792111111111e-17],[`square yard`,`yd2`,[`yd^2`],`area`,!1,!0,.83612736],[`statute mile`,`mi`,null,`length`,!1,!0,1609.344],[`steradian`,`sr`,null,`solid_angle`,!0,!1,1],[`stilb`,`sb`,null,`luminance`,!1,!1,1e-4],[`stokes`,`St`,null,`kinematic_viscosity`,!1,!1,1e-4],[`stone`,`stone`,null,`mass`,!1,!0,6.35029318],[`tablespoon`,`tbs`,null,`volume`,!1,!0,147868e-10],[`teaspoon`,`tsp`,null,`volume`,!1,!0,492892e-11],[`tesla`,`T`,null,`magnetic_flux_density`,!0,!0,1],[`thermodynamic calorie`,`c`,null,`energy`,!1,!0,4.184],[`ton`,`ton`,null,`mass`,!1,!0,907.18474],[`tonne`,`t`,null,`mass`,!1,!1,1e3],[`U.K. pint`,`uk_pt`,null,`volume`,!1,!0,.00056826125],[`U.S. bushel`,`bushel`,null,`volume`,!1,!0,.03523907],[`U.S. oil barrel`,`barrel`,null,`volume`,!1,!0,.158987295],[`U.S. pint`,`pt`,[`us_pt`],`volume`,!1,!0,.000473176473],[`U.S. survey mile`,`survey_mi`,null,`length`,!1,!0,1609.347219],[`U.S. survey/statute acre`,`us_acre`,null,`area`,!1,!0,4046.87261],[`volt`,`V`,null,`voltage`,!0,!1,1],[`watt`,`W`,null,`power`,!0,!0,1],[`watt-hour`,`Wh`,[`wh`],`energy`,!1,!0,3600],[`weber`,`Wb`,null,`magnetic_flux`,!0,!1,1],[`yard`,`yd`,null,`length`,!1,!0,.9144],[`year`,`yr`,null,`time`,!1,!0,31557600]]),d(this,`_binaryPrefixes`,{Yi:[`yobi`,80,12089258196146292e8,`Yi`,`yotta`],Zi:[`zebi`,70,0x400000000000000000,`Zi`,`zetta`],Ei:[`exbi`,60,0x1000000000000000,`Ei`,`exa`],Pi:[`pebi`,50,0x4000000000000,`Pi`,`peta`],Ti:[`tebi`,40,1099511627776,`Ti`,`tera`],Gi:[`gibi`,30,1073741824,`Gi`,`giga`],Mi:[`mebi`,20,1048576,`Mi`,`mega`],ki:[`kibi`,10,1024,`ki`,`kilo`]}),d(this,`_unitPrefixes`,{Y:[`yotta`,1e24,`Y`],Z:[`zetta`,1e21,`Z`],E:[`exa`,0xde0b6b3a7640000,`E`],P:[`peta`,0x38d7ea4c68000,`P`],T:[`tera`,0xe8d4a51000,`T`],G:[`giga`,1e9,`G`],M:[`mega`,1e6,`M`],k:[`kilo`,1e3,`k`],h:[`hecto`,100,`h`],e:[`dekao`,10,`e`],d:[`deci`,.1,`d`],c:[`centi`,.01,`c`],m:[`milli`,.001,`m`],u:[`micro`,1e-6,`u`],n:[`nano`,1e-9,`n`],p:[`pico`,1e-12,`p`],f:[`femto`,1e-15,`f`],a:[`atto`,1e-18,`a`],z:[`zepto`,1e-21,`z`],y:[`yocto`,1e-24,`y`]})}calculate(e,t,n){let{isError:r,errorObject:i,variants:a}=Y(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=`${s.getValue()}`,d=`${c.getValue()}`;if(Number.isNaN(l))return E.create(p.VALUE);let f,m=1,h,g=1,{_from:_,_to:v}=this._lookupFromAndToUnits(u,d);if(f=_,h=v,f===null){let{_from:e,_fromMultiplier:t}=this._lookupFromPrefix(u);f=e,m=t}if(h===null){let{_to:e,_toMultiplier:t}=this._lookupToPrefix(d);h=e,g=t}if(f===null||h===null||f[3]!==h[3])return E.create(p.NA);let y;return f[3]===`temperature`?(y=this._getTemperatureConversion(l,f[1],h[1]),y=+y.toFixed(2)):y=l*f[6]*m/(h[6]*g),R.create(y)}_lookupFromAndToUnits(e,t){let n=null,r=null,i;for(let a=0;a<this._units.length;a++)i=this._units[a][2]===null?[]:this._units[a][2],(this._units[a][1]===e||i.indexOf(e)>=0)&&(n=this._units[a]),(this._units[a][1]===t||i.indexOf(t)>=0)&&(r=this._units[a]);return{_from:n,_to:r}}_lookupFromPrefix(e){let t=null,n=1,r=e,i,a=this._binaryPrefixes[e.substring(0,2)],o=this._unitPrefixes[e.substring(0,1)];e.substring(0,2)===`da`&&(o=[`dekao`,10,`da`]),a?(n=a[2],r=e.substring(2)):o&&(n=o[1],r=e.substring(o[2].length));for(let e=0;e<this._units.length;e++)i=this._units[e][2]===null?[]:this._units[e][2],(this._units[e][1]===r||i.indexOf(r)>=0)&&(t=this._units[e]);return{_from:t,_fromMultiplier:n}}_lookupToPrefix(e){let t=null,n=1,r=e,i,a=this._binaryPrefixes[e.substring(0,2)],o=this._unitPrefixes[e.substring(0,1)];e.substring(0,2)===`da`&&(o=[`dekao`,10,`da`]),a?(n=a[2],r=e.substring(2)):o&&(n=o[1],r=e.substring(o[2].length));for(let e=0;e<this._units.length;e++)i=this._units[e][2]===null?[]:this._units[e][2],(this._units[e][1]===r||i.indexOf(r)>=0)&&(t=this._units[e]);return{_to:t,_toMultiplier:n}}_getTemperatureConversion(e,t,n){switch(t){case`C`:return this._centigradeConversion(e,n);case`F`:return this._fahrenheitConversion(e,n);case`K`:return this._kelvinConversion(e,n);case`Rank`:return this._rankineConversion(e,n);case`Reau`:return this._reaumurConversion(e,n);default:return e}}_centigradeConversion(e,t){switch(t){case`F`:return e*9/5+32;case`K`:return e+273.15;case`Rank`:return(e+273.15)*9/5;case`Reau`:return e*4/5;default:return e}}_fahrenheitConversion(e,t){switch(t){case`C`:return(e-32)*5/9;case`K`:return(e-32)*5/9+273.15;case`Rank`:return e+459.67;case`Reau`:return(e-32)*4/9;default:return e}}_kelvinConversion(e,t){switch(t){case`C`:return e-273.15;case`F`:return(e-273.15)*9/5+32;case`Rank`:return e*9/5;case`Reau`:return(e-273.15)*4/5;default:return e}}_rankineConversion(e,t){switch(t){case`C`:return(e-491.67)*5/9;case`F`:return e-459.67;case`K`:return e*5/9;case`Reau`:return(e-491.67)*4/9;default:return e}}_reaumurConversion(e,t){switch(t){case`C`:return e*5/4;case`F`:return e*9/4+32;case`K`:return e*5/4+273.15;case`Rank`:return e*9/4+491.67;default:return e}}},Bd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull())return E.create(p.NA);let n=0;if(t){let{isError:e,errorObject:r,variants:i}=Y(t);if(e)return r;let[a]=i;if(n=Math.floor(+a.getValue()),Number.isNaN(n))return E.create(p.VALUE);if(n<0||n>10)return E.create(p.NUM)}let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=Math.trunc(+o.getValue());if(Number.isNaN(s))return E.create(p.VALUE);if(!/^-?[0-9]{1,3}$/.test(`${s}`)||s<-512||s>511)return E.create(p.NUM);let c;if(s<0){let e=(512+s).toString(2);c=`1${`0`.repeat(9-e.length)}${e}`}else if(c=Number.parseInt(`${s}`,10).toString(2),t){if(n<c.length)return E.create(p.NUM);c=`0`.repeat(n-c.length)+c}return z.create(c)}},Vd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull())return E.create(p.NA);let n=0;if(t){let{isError:e,errorObject:r,variants:i}=Y(t);if(e)return r;let[a]=i;if(n=Math.floor(+a.getValue()),Number.isNaN(n))return E.create(p.VALUE);if(n<0||n>10)return E.create(p.NUM)}let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=Math.trunc(+o.getValue());if(Number.isNaN(s))return E.create(p.VALUE);if(!/^-?[0-9]{1,12}$/.test(`${s}`)||s<-549755813888||s>549755813887)return E.create(p.NUM);let c;if(s<0)c=(1099511627776+s).toString(16);else if(c=Number.parseInt(`${s}`,10).toString(16),t){if(n<c.length)return E.create(p.NUM);c=`0`.repeat(n-c.length)+c}return z.create(c.toLocaleUpperCase())}},Hd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull())return E.create(p.NA);let n=0;if(t){let{isError:e,errorObject:r,variants:i}=Y(t);if(e)return r;let[a]=i;if(n=Math.floor(+a.getValue()),Number.isNaN(n))return E.create(p.VALUE);if(n<0||n>10)return E.create(p.NUM)}let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=Math.trunc(+o.getValue());if(Number.isNaN(s))return E.create(p.VALUE);if(!/^-?[0-9]{1,9}$/.test(`${s}`)||s<-536870912||s>536870911)return E.create(p.NUM);let c;if(s<0)c=(1073741824+s).toString(8);else if(c=Number.parseInt(`${s}`,10).toString(8),t){if(n<c.length)return E.create(p.NUM);c=`0`.repeat(n-c.length)+c}return z.create(c)}},Ud=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,variants:i}=Y(e,t==null?R.create(0):t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=+o.getValue();if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);let l=s===c?1:0;return R.create(l)}},Wd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n;if(t){let{isError:r,errorObject:i,variants:a}=Y(e,t);if(r)return i;let[o,s]=a,c=+o.getValue(),l=+s.getValue();if(Number.isNaN(c)||Number.isNaN(l))return E.create(p.VALUE);n=dc(l)-dc(c)}else{let{isError:t,errorObject:r,variants:i}=Y(e);if(t)return r;let[a]=i,o=+a.getValue();if(Number.isNaN(o))return E.create(p.VALUE);n=dc(o)}return R.create(n)}},Gd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:t,errorObject:n,variants:r}=Y(e);if(t)return n;let[i]=r,a=+i.getValue();if(Number.isNaN(a))return E.create(p.VALUE);let o=dc(a);return R.create(o)}},Kd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:t,errorObject:n,variants:r}=Y(e);if(t)return n;let[i]=r,a=+i.getValue();if(Number.isNaN(a))return E.create(p.VALUE);let o=fc(a);return R.create(o)}},qd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:t,errorObject:n,variants:r}=Y(e);if(t)return n;let[i]=r,a=+i.getValue();if(Number.isNaN(a))return E.create(p.VALUE);let o=fc(a);return R.create(o)}},Jd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull())return E.create(p.NA);let{isError:n,errorObject:r,variants:i}=Y(e,t==null?R.create(0):t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=+o.getValue();if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);let l=s>=c?1:0;return R.create(l)}},Yd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull())return E.create(p.NA);let n=0;if(t){let{isError:e,errorObject:r,variants:i}=Y(t);if(e)return r;let[a]=i;if(n=Math.floor(+a.getValue()),Number.isNaN(n))return E.create(p.VALUE);if(n<0||n>10)return E.create(p.NUM)}let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=`${o.getValue()}`;if(!uc(s))return E.create(p.NUM);let c=s.length===10&&s.substring(0,1).toLocaleUpperCase()===`F`,l=c?Number.parseInt(s,16)-1099511627776:Number.parseInt(s,16);if(l<-512||l>511)return E.create(p.NUM);let u;if(c){let e=(512+l).toString(2);u=`1${`0`.repeat(9-e.length)}${e}`}else if(u=l.toString(2),t){if(n<u.length)return E.create(p.NUM);u=`0`.repeat(n-u.length)+u}return z.create(u)}},Xd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:t,errorObject:n,variants:r}=Y(e);if(t)return n;let[i]=r,a=`${i.getValue()}`;if(!uc(a))return E.create(p.NUM);let o=Number.parseInt(a,16);return o>=549755813888&&(o-=1099511627776),R.create(o)}},Zd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull())return E.create(p.NA);let n=0;if(t){let{isError:e,errorObject:r,variants:i}=Y(t);if(e)return r;let[a]=i;if(n=Math.floor(+a.getValue()),Number.isNaN(n))return E.create(p.VALUE);if(n<0||n>10)return E.create(p.NUM)}let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=`${o.getValue()}`;if(!uc(s))return E.create(p.NUM);let c=Number.parseInt(s,16);if(c>536870911&&c<0xffe0000000)return E.create(p.NUM);let l;if(c>=0xffe0000000)l=(c-0xffc0000000).toString(8);else if(l=c.toString(8),t){if(n<l.length)return E.create(p.NUM);l=`0`.repeat(n-l.length)+l}return z.create(l)}},Qd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:t,errorObject:n,variants:r}=Y(e);if(t)return n;let[i]=r,a=new Ld(`${i.getValue()}`);if(a.isError())return E.create(p.NUM);let o=a.Abs();return R.create(o)}},$d=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:t,errorObject:n,variants:r}=Y(e);if(t)return n;let[i]=r,a=new Ld(`${i.getValue()}`);if(a.isError())return E.create(p.NUM);let o=a.getINum();return R.create(o)}},ef=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:t,errorObject:n,variants:r}=Y(e);if(t)return n;let[i]=r,a=new Ld(`${i.getValue()}`);if(a.isError())return E.create(p.NUM);if(a.getRealNum()===0&&a.getINum()===0)return E.create(p.DIV_BY_ZERO);let o=a.Argument();return R.create(o)}},tf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);let s=o.Conjugate();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},nf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);let s=o.Cos();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},rf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);let s=o.Cosh();return o.isError()?E.create(p.NUM):typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},af=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError()||o.getRealNum()===0&&o.getINum()===0)return E.create(p.NUM);let s=o.Cot();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},of=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError()||o.getRealNum()===0&&o.getINum()===0)return E.create(p.NUM);let s=o.Coth();return o.isError()?E.create(p.NUM):typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},sf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError()||o.getRealNum()===0&&o.getINum()===0)return E.create(p.NUM);let s=o.Csc();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},cf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError()||o.getRealNum()===0&&o.getINum()===0)return E.create(p.NUM);let s=o.Csch();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},lf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,n){if(e.isNull()||n.isNull())return E.create(p.NA);let{isError:r,errorObject:i,variants:a}=Y(e,n);if(r)return i;let[o,s]=a,c=`${o.getValue()}`,l=`${s.getValue()}`,u=new Ld(c),d=new Ld(l);if(u.isError()||d.isError()||u.isDifferentSuffixes(d)||d.getRealNum()===0&&d.getINum()===0)return E.create(p.NUM);let f=u.Div(d);return typeof f==`number`||(0,t.isRealNum)(f)?R.create(+f):z.create(f)}},uf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);let s=o.Exp();return o.isError()?E.create(p.NUM):typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},df=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError()||o.getRealNum()===0&&o.getINum()===0)return E.create(p.NUM);let s=o.Ln();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},ff=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,n){let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=n==null?R.create(10):n;if(s.isArray()){let e=s.getRowCount(),t=s.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);s=s.get(0,0)}let{isError:c,errorObject:l,variants:u}=X(s);if(c)return l;let[d]=u,f=`${o.getValue()}`,m=+d.getValue(),h=new Ld(f);if(h.isError()||h.getRealNum()===0&&h.getINum()===0||m<=0)return E.create(p.NUM);let g=h.Log(m);return h.isError()?E.create(p.NUM):typeof g==`number`||(0,t.isRealNum)(g)?R.create(+g):z.create(g)}},pf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError()||o.getRealNum()===0&&o.getINum()===0)return E.create(p.NUM);let s=o.Log(2);return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},mf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError()||o.getRealNum()===0&&o.getINum()===0)return E.create(p.NUM);let s=o.Log(10);return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},hf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,n){if(e.isNull()||n.isNull())return E.create(p.NA);let{isError:r,errorObject:i,variants:a}=Y(e,n);if(r)return i;let[o,s]=a,c=new Ld(`${o.getValue()}`);if(c.isError())return E.create(p.NUM);let l=+s.getValue();if(Number.isNaN(l))return E.create(p.VALUE);let u=c.Power(l);return c.isError()?E.create(p.NUM):typeof u==`number`||(0,t.isRealNum)(u)?R.create(+u):z.create(u)}},gf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let n=``;for(let t=0;t<e.length;t++){if(n instanceof E)return n;let r=e[t];if(r.isArray()){let e=!1,t;if(r.iterator(r=>{if(n=this._handleSingleObject(r,n),n instanceof E)return e=!0,t=n,!1}),e)return t}else n=this._handleSingleObject(r,n)}return n instanceof E?n:typeof n==`number`||(0,t.isRealNum)(n)?R.create(+n):z.create(n)}_handleSingleObject(e,t){let n=t;if(e.isError())return e;if(e.isBoolean())return E.create(p.VALUE);let r=`${e.getValue()}`;if(typeof t!=`number`&&!t){let e=new Ld(r);if(e.isError())return E.create(p.NUM);n=e.toString()}else{let e=new Ld(t),i=new Ld(r);if(e.isError()||i.isError())return E.create(p.NUM);if(e.isDifferentSuffixes(i))return E.create(p.VALUE);n=e.Product(i)}return n}},_f=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:t,errorObject:n,variants:r}=Y(e);if(t)return n;let[i]=r,a=new Ld(`${i.getValue()}`);if(a.isError())return E.create(p.NUM);let o=a.getRealNum();return R.create(o)}},vf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);let s=o.Sec();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},yf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);let s=o.Sech();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},bf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);let s=o.Sin();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},xf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);let s=o.Sinh();return o.isError()?E.create(p.NUM):typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},Sf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);if(o.getRealNum()===0&&o.getINum()===0)return R.create(0);let s=o.Sqrt();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},Cf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,n){if(e.isNull()||n.isNull())return E.create(p.NA);let{isError:r,errorObject:i,variants:a}=Y(e,n);if(r)return i;let[o,s]=a,c=`${o.getValue()}`,l=`${s.getValue()}`,u=new Ld(c),d=new Ld(l);if(u.isError()||d.isError()||u.isDifferentSuffixes(d))return E.create(p.NUM);let f=u.Sub(d);return typeof f==`number`||(0,t.isRealNum)(f)?R.create(+f):z.create(f)}},wf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let n=``;for(let t=0;t<e.length;t++){if(n instanceof E)return n;let r=e[t];if(r.isArray()){let e=!1,t;if(r.iterator(r=>{if(n=this._handleSingleObject(r,n),n instanceof E)return e=!0,t=n,!1}),e)return t}else n=this._handleSingleObject(r,n)}return n instanceof E?n:typeof n==`number`||(0,t.isRealNum)(n)?R.create(+n):z.create(n)}_handleSingleObject(e,t){let n=t;if(e.isError())return e;if(e.isBoolean())return E.create(p.VALUE);let r=`${e.getValue()}`;if(typeof t!=`number`&&!t){let e=new Ld(r);if(e.isError())return E.create(p.NUM);n=e.toString()}else{let e=new Ld(t),i=new Ld(r);if(e.isError()||i.isError())return E.create(p.NUM);if(e.isDifferentSuffixes(i))return E.create(p.VALUE);n=e.Sum(i)}return n}},Tf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);let s=o.Tan();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},Ef=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);let s=o.Tanh();return o.isError()?E.create(p.NUM):typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},Df=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull())return E.create(p.NA);let n=0;if(t){let{isError:e,errorObject:r,variants:i}=Y(t);if(e)return r;let[a]=i;if(n=Math.floor(+a.getValue()),Number.isNaN(n))return E.create(p.VALUE);if(n<0||n>10)return E.create(p.NUM)}let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=`${o.getValue()}`;if(!lc(s))return E.create(p.NUM);let c=s.length===10&&s.substring(0,1)===`7`,l=c?Number.parseInt(s,8)-1073741824:Number.parseInt(s,8);if(l<-512||l>511)return E.create(p.NUM);let u;if(c){let e=(512+l).toString(2);u=`1${`0`.repeat(9-e.length)}${e}`}else if(u=l.toString(2),t){if(n<u.length)return E.create(p.NUM);u=`0`.repeat(n-u.length)+u}return z.create(u)}},Of=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:t,errorObject:n,variants:r}=Y(e);if(t)return n;let[i]=r,a=`${i.getValue()}`;if(!lc(a))return E.create(p.NUM);let o=Number.parseInt(a,8);return o>=536870912&&(o-=1073741824),R.create(o)}},kf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull())return E.create(p.NA);let n=0;if(t){let{isError:e,errorObject:r,variants:i}=Y(t);if(e)return r;let[a]=i;if(n=Math.floor(+a.getValue()),Number.isNaN(n))return E.create(p.VALUE);if(n<0||n>10)return E.create(p.NUM)}let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=`${o.getValue()}`;if(!lc(s))return E.create(p.NUM);let c=Number.parseInt(s,8),l;if(c>=536870912)l=`ff${(c+3221225472).toString(16)}`;else if(l=c.toString(16),t){if(n<l.length)return E.create(p.NUM);l=`0`.repeat(n-l.length)+l}return z.create(l.toLocaleUpperCase())}};let Af=[[Td,U.BESSELI],[Ed,U.BESSELJ],[Dd,U.BESSELK],[Od,U.BESSELY],[kd,U.BIN2DEC],[Ad,U.BIN2HEX],[jd,U.BIN2OCT],[Md,U.BITAND],[Nd,U.BITLSHIFT],[Pd,U.BITOR],[Fd,U.BITRSHIFT],[Id,U.BITXOR],[Rd,U.COMPLEX],[zd,U.CONVERT],[Bd,U.DEC2BIN],[Vd,U.DEC2HEX],[Hd,U.DEC2OCT],[Ud,U.DELTA],[Wd,U.ERF],[Gd,U.ERF_PRECISE],[Kd,U.ERFC],[qd,U.ERFC_PRECISE],[Jd,U.GESTEP],[Yd,U.HEX2BIN],[Xd,U.HEX2DEC],[Zd,U.HEX2OCT],[Qd,U.IMABS],[$d,U.IMAGINARY],[ef,U.IMARGUMENT],[tf,U.IMCONJUGATE],[nf,U.IMCOS],[rf,U.IMCOSH],[af,U.IMCOT],[of,U.IMCOTH],[sf,U.IMCSC],[cf,U.IMCSCH],[lf,U.IMDIV],[uf,U.IMEXP],[df,U.IMLN],[ff,U.IMLOG],[mf,U.IMLOG10],[pf,U.IMLOG2],[hf,U.IMPOWER],[gf,U.IMPRODUCT],[_f,U.IMREAL],[vf,U.IMSEC],[yf,U.IMSECH],[bf,U.IMSIN],[xf,U.IMSINH],[Sf,U.IMSQRT],[Cf,U.IMSUB],[wf,U.IMSUM],[Tf,U.IMTAN],[Ef,U.IMTANH],[Df,U.OCT2BIN],[Of,U.OCT2DEC],[kf,U.OCT2HEX]];function jf(e,t,n,r){let{days:i}=ge(Ff(e,t,n),e,r);return i}function Mf(e,t,n,r){let i;if(r===1){let r=Ff(e,t,n),a=O(r);a=Oe(a,12/n);let o=D(a);i=r<0&&n===1?365:o-r}else i=r===3?365/n:360/n;return i}function Nf(e,t,n){let r=O(e),i=O(t);for(i.setUTCFullYear(r.getUTCFullYear()),i<r&&i.setUTCFullYear(i.getUTCFullYear()+1);i>r;)i=Oe(i,-12/n);return i=Oe(i,12/n),D(i)}function Pf(e,t,n){let r=0,i=O(e),a=O(t);for(;a>i;)a=Oe(a,-12/n),r++;return r}function Ff(e,t,n){let r=O(e),i=O(t);for(i.setUTCFullYear(r.getUTCFullYear()),i<r&&i.setUTCFullYear(i.getUTCFullYear()+1);i>r;)i=Oe(i,-12/n);return D(i)}function If(e,t,n,r,i,a){let o=jf(e,t,i,a),s=Mf(e,t,i,a),c=Pf(e,t,i),l=(s-o)/s-1,u=r/i+1,d=n*100/i,f=0,p=0;for(let e=1;e<=c;e++){let t=e+l,n=d/u**t;f+=t*n,p+=n}let m=c+l,h=100/u**m;return f+=m*h,p+=h,f/p/i}function Lf(e,t,n,r,i){let a;if(e===0)a=(n+r)/t;else{let o=(1+e)**t;a=i===1?(r*e/(o-1)+n*e/(1-1/o))/(1+e):r*e/(o-1)+n*e/(1-1/o)}return-a}function Rf(e,t,n,r,i){let a;if(e===0)a=r+n*t;else{if(e===-1&&t===0)return NaN;let o=(1+e)**t;a=i===1?r*o+n*(1+e)*(o-1)/e:r*o+n*(o-1)/e}return-a}function zf(e,t,n,r,i,a){let o=Lf(e,n,r,i,a);return(t===1?a===1?0:-r:a===1?Rf(e,t-2,o,r,1)-o:Rf(e,t-1,o,r,0))*e}function Bf(e,t){let n=0;for(let r=1;r<=t.length;r++)n+=t[r-1]/(1+e)**r;return n}function Vf(e,t,n,r,i,a,o,s,c){let l=Wf(n,r,c),u=Mf(e,r,s,c);return l<u?Hf(e,t,n,r,i,a,o,s,c,l,u):Uf(e,t,n,r,i,a,o,s,c,u)}function Hf(e,t,n,r,i,a,o,s,c,l,u){let d=0,f=Pf(e,t,s),p=Wf(e,r,c);d+=o/(1+a/s)**(f-1+p/u),d+=100*i/s*l/u/(1+a/s)**(p/u);for(let e=2;e<=f;e++)d+=100*i/s/(1+a/s)**(e-1+p/u);let m=Wf(n,e,c);return d-=100*i/s*m/u,d}function Uf(e,t,n,r,i,a,o,s,c,l){let u=0,d=Pf(r,t,s),f=Jf(r,e,12/s,!0),p;if(c===2||c===3)p=Wf(e,Nf(e,r,s),c);else{let{days:t}=ge(Ff(e,r,s),e,c);p=l-t}u+=o/(1+a/s)**(d+f+p/l);let m=Pf(n,r,s),h=r,g=0,_=0;for(let t=m;t>=1;t--){let r=qf(h,-12/s,!1),i=c===1?Wf(r,h,c):l,a=t>1?i:Wf(n,h,c);g+=a/i;let o=Wf(n>r?n:r,e<h?e:h,c);_+=o/i,h=r}u+=100*i/s*g/(1+a/s)**(f+p/l);for(let e=1;e<=d;e++)u+=100*i/s/(1+a/s)**(e+f+p/l);return u-=100*i/s*_,u}function Wf(e,t,n){let{days:r}=ge(e,t,n);return e<t?r:0}function Gf(e,t,n){let r=O(e),i=r.getUTCFullYear(),a=r.getUTCMonth(),o=r.getUTCDate(),s=De(i,a,o),c=O(t),l=c.getUTCFullYear(),u=c.getUTCMonth(),d=c.getUTCDate(),f=De(l,u,d);return!(o!==d&&!(s&&f)||Math.abs((l-i)*12+(u-a))%(12/n)!=0)}function Kf(e,t,n){return Ff(e,t,n)>=0}function qf(e,t,n){let r=O(e);if(r=Oe(r,t),n){let e=we(r.getUTCFullYear(),r.getUTCMonth());r.setUTCDate(e)}return D(r)}function Jf(e,t,n,r){let i=O(e),a=O(t),o=i.getUTCFullYear(),s=i.getUTCMonth(),c=i.getUTCDate(),l=a.getUTCFullYear(),u=a.getUTCMonth(),d=a.getUTCDate(),f=De(o,s,c),p=!f&&s!==1&&c>28&&c<we(o,s)?De(l,u,d):f,m=qf(t,0,p),h=r-0+ +(t<m),g=qf(m,n,p);for(;!(n>0?g>=t:g<=t);)g=qf(g,n,p),h++;return h}function Yf(e,t){let n=1e-7;n*2;let r=1,i=0,a=e,o;for(;r>n&&i<500;){let e=(t(a+n)-t(a-n))/2e-7;o=a-t(a)/e,i++,r=Math.abs(o-a),a=o}return Number.isNaN(a)||Math.abs(a)===1/0||i===500?Xf(e,t):a}function Xf(e,t){let n=1e-7,r=Number.MAX_VALUE,i=1.6,a=e-.01<=-1?-1+n:e-.01,o=e+.01>=r?r-n:e+.01,s,c,l=0;if(e<=-1||e>=r)return E.create(p.NUM);for(let e=0;e<60;e++){s=a<=-1?-1+n:a,c=o>=r?r-n:o;let l=t(s),u=t(c);if(l*u<=0)break;if(l*u>0)a=s+i*(s-c),o=c+i*(c-s);else return E.create(p.NUM);if(e===59)return E.create(p.NUM)}s=s,c=c;let u=t(s),d=t(c),f,m;if(Math.abs(u)<n||Math.abs(d)<n)return E.create(p.NUM);do m=s+(c-s)/2,f=t(m),u*f<0?c=m:s=m,u=t(s),l++;while(Math.abs(f)>n&&l<60);return m}function Zf(e,t,n,r,i,a,o){let s=Pf(e,t,a),c=Mf(e,t,a,o),l=jf(e,t,a,o);if(s===1){let e=c-l,t=100*n/a+i,o=r/a*e/c+1,s=100*n/a*l/c;return t/o-s}let u=c-l,d=i/(1+r/a)**(s-1+u/c);for(let e=1;e<=s;e++)d+=100*n/a/(1+r/a)**(e-1+u/c);return d-=100*n/a*l/c,d}function Qf(e,t,n,r,i){let a=0,o=i/n;o>=1?(o=1,a=r===1?e:0):a=e*(1-o)**(r-1);let s=e*(1-o)**r,c=0;return c=s<t?a-t:a-s,c<0&&(c=0),c}var $f=class extends Z{constructor(...e){super(...e),d(this,`minParams`,6),d(this,`maxParams`,8)}calculate(e,t,n,r,i,a,o,s){let c=o==null?R.create(0):o,l=s==null?L.create(!0):s,{isError:u,errorObject:d,variants:f}=Y(e,t,n,r,i,a,c);if(u)return d;let[m,h,g,_,v,y,b]=f,x=k(m);if(typeof x!=`number`)return x;let S=k(h);if(typeof S!=`number`)return S;let C=k(g);if(typeof C!=`number`)return C;let w=+_.getValue(),T=+v.getValue(),ee=Math.floor(+y.getValue()),te=Math.floor(+b.getValue()),ne=+l.getValue();return Number.isNaN(w)||Number.isNaN(T)||Number.isNaN(ee)||Number.isNaN(te)||Number.isNaN(ne)?E.create(p.VALUE):w<=0||T<=0||![1,2,4].includes(ee)||te<0||te>4||Math.floor(x)>=Math.floor(C)?E.create(p.NUM):this._getResult(x,S,C,w,T,ee,te,ne)}_getResult(e,t,n,r,i,a,o,s){let c=Ff(e,t,a);if(c<=0)return R.create(0);c=Ff(n,t,a);let l=12/a,u=O(t),d=De(u.getUTCFullYear(),u.getUTCMonth(),u.getUTCDate()),f=qf(t,-l,d);if(n>t&&s)for(f=t;f<n;)f=qf(f,l,d);let p=e>f?e:f,{days:m}=ge(p,n,o);if(c>=e){let{days:e}=ge(p,n,o?4:0);m=e}n<p&&(m=-m);let h=Mf(f,t,a,o),g=m/h,_=f,v=e;for(;_>e;){v=_,_=qf(_,-l,d),p=e>_?e:_;let{days:t}=ge(p,v,o);if(o===0)m=v>=p||e<=_?t:-t,h=Mf(_,v,a,o);else if(m=v<p?-t:t,o===3)h=365/a;else{let{days:e}=ge(_,v,o);h=v<_?-e:e}g+=e<=_?s?1:0:m/h}let y=i*r/a*g;return R.create(y)}},ep=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let{isError:a,errorObject:o,variants:s}=Y(e,t,n,r,i==null?R.create(0):i);if(a)return o;let[c,l,u,d,f]=s,m=k(c);if(typeof m!=`number`)return m;let h=k(l);if(typeof h!=`number`)return h;let g=+u.getValue(),_=+d.getValue(),v=Math.floor(+f.getValue());if(Number.isNaN(g)||Number.isNaN(_)||Number.isNaN(v))return E.create(p.VALUE);if(g<=0||_<=0||v<0||v>4||Math.floor(m)>Math.floor(h))return E.create(p.NUM);if(Math.floor(m)===Math.floor(h))return R.create(0);let{days:y,yearDays:b}=ge(m,h,v),x=_*g*y/b;return R.create(x)}},tp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,6),d(this,`maxParams`,7)}calculate(e,t,n,r,i,a,o){let{isError:s,errorObject:c,variants:l}=Y(e,t,n,r,i,a,o==null?R.create(0):o);if(s)return c;let[u,d,f,m,h,g,_]=l,v=k(d);if(typeof v!=`number`)return v;let y=k(f);if(typeof y!=`number`)return y;let b=+u.getValue(),x=+m.getValue(),S=+h.getValue(),C=+g.getValue(),w=Math.floor(+_.getValue());return Number.isNaN(b)||Number.isNaN(x)||Number.isNaN(S)||Number.isNaN(C)||Number.isNaN(w)?E.create(p.VALUE):b<=0||x<0||b<x||Math.floor(v)>Math.floor(y)||S<0||C<=0||![0,1,3,4].includes(w)?E.create(p.NUM):(S=S>1?Math.floor(S):Math.ceil(S),this._getResult(b,v,y,x,S,C,w))}_getResult(e,t,n,r,i,a,o){let s=e-r,c=e*a,{days:l,yearDays:u}=ge(t,n,o),d=l/u,f=Math.ceil(s/c-d);if(f<0)return R.create(0);let p=c;return i===0?p=c*d:i===f?p=s-c*(d+i-1):i>f&&(p=0),R.create(p)}},np=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a,variants:o}=Y(e,t,n,r==null?R.create(0):r);if(i)return a;let[s,c,l,u]=o,d=k(s);if(typeof d!=`number`)return d;let f=k(c);if(typeof f!=`number`)return f;let m=Math.floor(+l.getValue()),h=Math.floor(+u.getValue());if(Number.isNaN(m)||Number.isNaN(h))return E.create(p.VALUE);if(![1,2,4].includes(m)||h<0||h>4||Math.floor(d)>=Math.floor(f))return E.create(p.NUM);let g=jf(d,f,m,h);return R.create(g)}},rp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a,variants:o}=Y(e,t,n,r==null?R.create(0):r);if(i)return a;let[s,c,l,u]=o,d=k(s);if(typeof d!=`number`)return d;let f=k(c);if(typeof f!=`number`)return f;let m=Math.floor(+l.getValue()),h=Math.floor(+u.getValue());if(Number.isNaN(m)||Number.isNaN(h))return E.create(p.VALUE);if(![1,2,4].includes(m)||h<0||h>4||Math.floor(d)>=Math.floor(f))return E.create(p.NUM);let g=Mf(d,f,m,h);return R.create(g)}},ip=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a,variants:o}=Y(e,t,n,r==null?R.create(0):r);if(i)return a;let[s,c,l,u]=o,d=k(s);if(typeof d!=`number`)return d;let f=k(c);if(typeof f!=`number`)return f;let m=Math.floor(+l.getValue()),h=Math.floor(+u.getValue());if(Number.isNaN(m)||Number.isNaN(h))return E.create(p.VALUE);if(![1,2,4].includes(m)||h<0||h>4||Math.floor(d)>=Math.floor(f))return E.create(p.NUM);let g=O(d),_=O(f);for(_.setUTCFullYear(g.getUTCFullYear()),_<g&&_.setUTCFullYear(_.getUTCFullYear()+1);_>g;)_.setUTCMonth(_.getUTCMonth()-12/m);_.setUTCMonth(_.getUTCMonth()+12/m);let{days:v}=ge(d,D(_),h);return R.create(v)}},ap=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a,variants:o}=Y(e,t,n,r==null?R.create(0):r);if(i)return a;let[s,c,l,u]=o,d=k(s);if(typeof d!=`number`)return d;let f=k(c);if(typeof f!=`number`)return f;let m=Math.floor(+l.getValue()),h=Math.floor(+u.getValue());if(Number.isNaN(m)||Number.isNaN(h))return E.create(p.VALUE);if(![1,2,4].includes(m)||h<0||h>4||Math.floor(d)>=Math.floor(f))return E.create(p.NUM);let g=Nf(d,f,m);return R.create(g)}},op=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a,variants:o}=Y(e,t,n,r==null?R.create(0):r);if(i)return a;let[s,c,l,u]=o,d=k(s);if(typeof d!=`number`)return d;let f=k(c);if(typeof f!=`number`)return f;let m=Math.floor(+l.getValue()),h=Math.floor(+u.getValue());if(Number.isNaN(m)||Number.isNaN(h))return E.create(p.VALUE);if(![1,2,4].includes(m)||h<0||h>4||Math.floor(d)>=Math.floor(f)||Ff(d,f,m)<0)return E.create(p.NUM);let g=Pf(d,f,m);return R.create(g)}},sp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a,variants:o}=Y(e,t,n,r==null?R.create(0):r);if(i)return a;let[s,c,l,u]=o,d=k(s);if(typeof d!=`number`)return d;let f=k(c);if(typeof f!=`number`)return f;let m=Math.floor(+l.getValue()),h=Math.floor(+u.getValue());if(Number.isNaN(m)||Number.isNaN(h))return E.create(p.VALUE);if(![1,2,4].includes(m)||h<0||h>4||Math.floor(d)>=Math.floor(f))return E.create(p.NUM);let g=Ff(d,f,m);return g<0&&(g=0),R.create(g)}},cp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,6),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let{isError:o,errorObject:s,variants:c}=Y(e,t,n,r,i,a);if(o)return s;let[l,u,d,f,m,h]=c,g=+l.getValue(),_=+u.getValue(),v=+d.getValue(),y=+f.getValue(),b=+m.getValue(),x=+h.getValue();return Number.isNaN(g)||Number.isNaN(_)||Number.isNaN(v)||Number.isNaN(y)||Number.isNaN(b)||Number.isNaN(x)?E.create(p.VALUE):g<=0||_<=0||v<=0||y<1||b<1||y>b||y>_||b>_||![0,1].includes(x)?E.create(p.NUM):Math.trunc(y)!==y&&Math.trunc(b)!==b&&Math.trunc(y)===Math.trunc(b)?R.create(0):this._getResult(g,_,v,y,b,x)}_getResult(e,t,n,r,i,a){let o=Lf(e,t,n,0,a),s=0,c=Math.ceil(r);c===1&&(a===0&&(s=-n),c++);let l=!1;for(let t=c;t<=i;t++){let r=a===1?Rf(e,t-2,o,n,1):Rf(e,t-1,o,n,0);if(r===0){l=!0;break}s+=a===1?r-o:r}return s*=e,(s<o*(i-r+1)||l)&&(s=o*(i-r+1)),R.create(s)}},lp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,6),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let{isError:o,errorObject:s,variants:c}=Y(e,t,n,r,i,a);if(o)return s;let[l,u,d,f,m,h]=c,g=+l.getValue(),_=+u.getValue(),v=+d.getValue(),y=+f.getValue(),b=+m.getValue(),x=+h.getValue();return Number.isNaN(g)||Number.isNaN(_)||Number.isNaN(v)||Number.isNaN(y)||Number.isNaN(b)||Number.isNaN(x)?E.create(p.VALUE):g<=0||_<=0||v<=0||y<1||b<1||y>b||![0,1].includes(x)?E.create(p.NUM):Math.trunc(y)!==y&&Math.trunc(b)!==b&&Math.trunc(y)===Math.trunc(b)?R.create(0):this._getResult(g,_,v,y,b,x)}_getResult(e,t,n,r,i,a){let o=Lf(e,t,n,0,a),s=0,c=Math.ceil(r);c===1&&(s=a===0?o+n*e:o,c++);for(let t=c;t<=i;t++)s+=a===1?o-(Rf(e,t-2,o,n,1)-o)*e:o-Rf(e,t-1,o,n,0)*e;return R.create(s)}},up=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,5),d(this,`needsLocale`,!0)}calculate(e,t,n,r,i){let a=i==null?R.create(12):i;a.isNull()&&(a=R.create(12));let o=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1,a.isArray()?a.getRowCount():1),s=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1,a.isArray()?a.getColumnCount():1),c=V(o,s,e,E.create(p.NA)),l=V(o,s,t,E.create(p.NA)),u=V(o,s,n,E.create(p.NA)),d=V(o,s,r,E.create(p.NA)),f=V(o,s,a,E.create(p.NA)),m=c.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,l.get(t,n),u.get(t,n),d.get(t,n),f.get(t,n));if(r)return i;let[o,s,c,m,h]=a,g=+o.getValue(),_=+s.getValue(),v=+c.getValue(),y=+m.getValue(),b=Math.floor(+h.getValue());return g<0||_<0||v<=0||y<=0||Math.floor(y)>Math.floor(v)||b<1||b>12?E.create(p.NUM):(y<1&&(y=1),y=Math.floor(y),this._getResult(g,_,v,y,b,t,n))});return o===1&&s===1?m.get(0,0):m}_getResult(e,t,n,r,i,a,o){let s=+(1-(t/e)**(1/n)).toFixed(3),c=e*s*i/12,l=c,u=0,d=r===n?n-1:r;for(let t=2;t<=d;t++)u=(e-l)*s,l+=u;let f;return f=r===1?c:r===n?(e-l)*s:u,Number.isNaN(f)||!Number.isFinite(f)?E.create(p.NUM):a===0&&o===0?R.create(f,Pr(this.getLocale())):R.create(f)}},dp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,5),d(this,`needsLocale`,!0)}calculate(e,t,n,r,i){let a=i==null?R.create(2):i;a.isNull()&&(a=R.create(2));let o=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1,a.isArray()?a.getRowCount():1),s=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1,a.isArray()?a.getColumnCount():1),c=V(o,s,e,E.create(p.NA)),l=V(o,s,t,E.create(p.NA)),u=V(o,s,n,E.create(p.NA)),d=V(o,s,r,E.create(p.NA)),f=V(o,s,a,E.create(p.NA)),m=c.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,l.get(t,n),u.get(t,n),d.get(t,n),f.get(t,n));if(r)return i;let[o,s,c,m,h]=a,g=+o.getValue(),_=+s.getValue(),v=+c.getValue(),y=+m.getValue(),b=+h.getValue();if(g<0||_<0||v<=0||y<=0||y>v||b<=0)return E.create(p.NUM);let x=Qf(g,_,v,y,b);return Number.isNaN(x)||!Number.isFinite(x)?E.create(p.NUM):t===0&&n===0?R.create(x,Pr(this.getLocale())):R.create(x)});return o===1&&s===1?m.get(0,0):m}},fp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let{isError:a,errorObject:o,variants:s}=Y(e,t,n,r,i==null?R.create(0):i);if(a)return o;let[c,l,u,d,f]=s,m=k(c);if(typeof m!=`number`)return m;let h=k(l);if(typeof h!=`number`)return h;let g=+u.getValue(),_=+d.getValue(),v=Math.floor(+f.getValue());if(Number.isNaN(g)||Number.isNaN(_)||Number.isNaN(v))return E.create(p.VALUE);if(g<=0||_<=0||v<0||v>4||Math.floor(m)>=Math.floor(h))return E.create(p.NUM);let{days:y,yearDays:b}=ge(m,h,v),x=(_-g)/_*(b/y);return R.create(x)}},pp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,variants:i}=Y(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);if(c<0)return E.create(p.NUM);if(c>=0&&c<1)return E.create(p.DIV_BY_ZERO);c=Number.parseInt(`${c}`,10);let l=Number.parseInt(`${s}`,10);l+=s%1*10**Math.ceil(Math.log(c)/Math.LN10)/c;let u=10**(Math.ceil(Math.log(c)/Math.LN2)+1);return l=Math.round(l*u)/u,R.create(l)}},mp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,variants:i}=Y(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);if(c<0)return E.create(p.NUM);if(c>=0&&c<1)return E.create(p.DIV_BY_ZERO);c=Number.parseInt(`${c}`,10);let l=Number.parseInt(`${s}`,10);return l+=s%1*10**-Math.ceil(Math.log(c)/Math.LN10)*c,R.create(l)}},hp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,5),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let o=a==null?R.create(0):a;o.isNull()&&(o=R.create(0));let{isError:s,errorObject:c,variants:l}=nc(e,t,n,r,i,o);if(s)return c;let[u,d,f,m,h,g]=l,_=k(u);if(typeof _!=`number`)return _;let v=k(d);if(typeof v!=`number`)return v;let y=+f.getValue(),b=+m.getValue(),x=Math.floor(+h.getValue()),S=Math.floor(+g.getValue());if(Number.isNaN(y)||Number.isNaN(b)||Number.isNaN(x)||Number.isNaN(S))return E.create(p.VALUE);if(y<0||b<0||![1,2,4].includes(x)||S<0||S>4||Math.floor(_)>=Math.floor(v)||_<=0||v<=366)return E.create(p.NUM);let C=If(_,v,y,b,x,S);return R.create(C)}},gp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,variants:i}=Y(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);if(s<=0||c<1)return E.create(p.NUM);c=Number.parseInt(`${c}`,10);let l=(1+s/c)**c-1;return R.create(l)}},_p=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,5),d(this,`needsLocale`,!0)}calculate(e,t,n,r,i){let a=r==null?R.create(0):r,o=i==null?R.create(0):i,s=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,a.isArray()?a.getRowCount():1,o.isArray()?o.getRowCount():1),c=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,a.isArray()?a.getColumnCount():1,o.isArray()?o.getColumnCount():1),l=V(s,c,e,E.create(p.NA)),u=V(s,c,t,E.create(p.NA)),d=V(s,c,n,E.create(p.NA)),f=V(s,c,a,E.create(p.NA)),m=V(s,c,o,E.create(p.NA)),h=l.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,u.get(t,n),d.get(t,n),f.get(t,n),m.get(t,n));if(r)return i;let[o,s,c,l,h]=a,g=Rf(+o.getValue(),+s.getValue(),+c.getValue(),+l.getValue(),+h.getValue()?1:0);return Number.isNaN(g)||!Number.isFinite(g)?E.create(p.NUM):t===0&&n===0?R.create(g,Pr(this.getLocale())):R.create(g)});return s===1&&c===1?h.get(0,0):h}},vp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=+a.getValue();if(Number.isNaN(o))return E.create(p.VALUE);let s=o;if(t.isArray()){let e=t.getArrayValue().flat();for(let t=0;t<e.length;t++){let n=e[t];if(n.isBoolean())return E.create(p.VALUE);let r=+n.getValue();if(Number.isNaN(r))return E.create(p.VALUE);s*=1+r}}else{if(t.isBoolean())return E.create(p.VALUE);let e=+t.getValue();if(Number.isNaN(e))return E.create(p.VALUE);s*=1+e}return R.create(s)}},yp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let{isError:a,errorObject:o,variants:s}=Y(e,t,n,r,i==null?R.create(0):i);if(a)return o;let[c,l,u,d,f]=s,m=k(c);if(typeof m!=`number`)return m;let h=k(l);if(typeof h!=`number`)return h;let g=+u.getValue(),_=+d.getValue(),v=Math.floor(+f.getValue());if(Number.isNaN(g)||Number.isNaN(_)||Number.isNaN(v))return E.create(p.VALUE);if(g<=0||_<=0||v<0||v>4||Math.floor(m)>=Math.floor(h))return E.create(p.NUM);let{days:y,yearDays:b}=ge(m,h,v),x=(_-g)/g*(b/y);return R.create(x)}},bp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,6),d(this,`needsLocale`,!0)}calculate(e,t,n,r,i,a){let o=i==null?R.create(0):i,s=a==null?R.create(0):a,c=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1,o.isArray()?o.getRowCount():1,s.isArray()?s.getRowCount():1),l=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1,o.isArray()?o.getColumnCount():1,s.isArray()?s.getColumnCount():1),u=V(c,l,e,E.create(p.NA)),d=V(c,l,t,E.create(p.NA)),f=V(c,l,n,E.create(p.NA)),m=V(c,l,r,E.create(p.NA)),h=V(c,l,o,E.create(p.NA)),g=V(c,l,s,E.create(p.NA)),_=u.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,d.get(t,n),f.get(t,n),m.get(t,n),h.get(t,n),g.get(t,n));if(r)return i;let[o,s,c,l,u,_]=a,v=+o.getValue(),y=+s.getValue(),b=+c.getValue(),x=+l.getValue(),S=+u.getValue(),C=+_.getValue();if(y<1||Math.floor(y)>Math.ceil(b))return E.create(p.NUM);let w=zf(v,y,b,x,S,C?1:0);return Number.isNaN(w)||!Number.isFinite(w)?E.create(p.NUM):t===0&&n===0?R.create(w,Pr(this.getLocale())):R.create(w)});return c===1&&l===1?_.get(0,0):_}},xp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(.1):t;return n.isNull()&&(n=R.create(.1)),n.isArray()?n.map((t,n,r)=>this._handleSingleObject(e,t,n,r)):this._handleSingleObject(e,n)}_handleSingleObject(e,t,n=0,r=0){if(e.isError())return e;if(t.isError())return t;if(e.isNull())return E.create(p.VALUE);if(!e.isArray())return E.create(p.NUM);let{_values:i,valuesHasError:a}=this._getValues(e);if(a)return E.create(p.VALUE);let o=t;if(o.isString()&&(o=o.convertToNumberObjectValue(),o.isError()))return o;let s=+o.getValue(),{positive:c,negative:l}=this._checkValues(i);if(!c||!l)return E.create(p.NUM);let u=Yf(s,e=>Bf(e,i));return typeof u==`number`?n===0&&r===0?R.create(u,`0%`):R.create(u):u}_getValues(e){let t=[],n=!1;return e.iterator(e=>{let r=e;if(r.isError())return n=!0,!1;if(r.isNull()||r.isBoolean()||r.isString()&&r.getValue()===``)return!0;let i=+r.getValue();if(Number.isNaN(i))return!0;t.push(i)}),{_values:t,valuesHasError:n}}_checkValues(e){let t=!1,n=!1;for(let r=0;r<e.length;r++)e[r]>0&&(t=!0),e[r]<0&&(n=!0);return{positive:t,negative:n}}},Sp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,s.get(t,n),c.get(t,n),l.get(t,n));if(r)return i;let[o,u,d,f]=a,m=+o.getValue(),h=+u.getValue(),g=+d.getValue(),_=+f.getValue();if(g===0)return E.create(p.DIV_BY_ZERO);let v=_*m*(h/g-1);return R.create(v)});return i===1&&a===1?u.get(0,0):u}},Cp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,5),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let o=a==null?R.create(0):a;o.isNull()&&(o=R.create(0));let{isError:s,errorObject:c,variants:l}=nc(e,t,n,r,i,o);if(s)return c;let[u,d,f,m,h,g]=l,_=k(u);if(typeof _!=`number`)return _;let v=k(d);if(typeof v!=`number`)return v;let y=+f.getValue(),b=+m.getValue(),x=Math.floor(+h.getValue()),S=Math.floor(+g.getValue());if(Number.isNaN(y)||Number.isNaN(b)||Number.isNaN(x)||Number.isNaN(S))return E.create(p.VALUE);if(y<0||b<0||![1,2,4].includes(x)||S<0||S>4||Math.floor(_)>=Math.floor(v))return E.create(p.NUM);let C=If(_,v,y,b,x,S);return C/=1+b/x,R.create(C)}},wp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{_values:r,numberValues:i,positive:a,negative:o}=this._getValues(e),s=Math.max(t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),c=Math.max(t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),l=V(s,c,t,E.create(p.NA)),u=V(s,c,n,E.create(p.NA)),d=l.map((t,n,s)=>{let c=u.get(n,s);if(e.isError())return e;if(c.isError())return c;if(r.isError())return r;if(!a||!o)return E.create(p.DIV_BY_ZERO);let l=+t.getValue(),d=+c.getValue();if(Number.isNaN(l)||Number.isNaN(d))return E.create(p.VALUE);if(d===-1)return E.create(p.DIV_BY_ZERO);let f=this._getResult(i,l,d);return n===0&&s===0?R.create(f,`0%`):R.create(f)});return s===1&&c===1?d.get(0,0):d}_getValues(e){let t=e,n=[],r=!1,i=!1;if(!e.isError())if(e.isNull())t=E.create(p.VALUE);else if(!e.isArray())t=E.create(p.DIV_BY_ZERO);else{let{numberValues:a,valuesHasError:o,errorObject:s,positive:c,negative:l}=this._checkValues(e);o&&(t=s),n=a,r=c,i=l}return{_values:t,numberValues:n,positive:r,negative:i}}_checkValues(e){let t=[],n=!1,r=E.create(p.VALUE),i=!1,a=!1;return e.iterator(e=>{let o=e;if(o.isError())return n=!0,r=o,!1;if(o.isNull()||o.isBoolean()||o.isString()&&o.getValue()===``)return!0;let s=+o.getValue();if(Number.isNaN(s))return!0;s>0&&(i=!0),s<0&&(a=!0),t.push(s)}),{numberValues:t,valuesHasError:n,errorObject:r,positive:i,negative:a}}_getResult(e,t,n){let r=e.length,i=[],a=[];for(let t=0;t<r;t++)e[t]>0?a.push(e[t]):e[t]<0&&i.push(e[t]);let o=this._npv(n,e,`positive`),s=this._npv(t,e,`negative`);return(-o*(1+n)**r/(s*(1+t)))**(1/(r-1))-1}_npv(e,t,n){let r=0;for(let i=1;i<=t.length;i++){let a=t[i-1];(n===`positive`&&a>0||n===`negative`&&a<0)&&(r+=a/(1+e)**i)}return r}},Tp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,variants:i}=Y(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);if(s<=0||c<1)return E.create(p.NUM);c=Number.parseInt(`${c}`,10);let l=((s+1)**(1/c)-1)*c;return R.create(l)}},Ep=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let a=r==null?R.create(0):r,o=i==null?R.create(0):i,s=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,a.isArray()?a.getRowCount():1,o.isArray()?o.getRowCount():1),c=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,a.isArray()?a.getColumnCount():1,o.isArray()?o.getColumnCount():1),l=V(s,c,e,E.create(p.NA)),u=V(s,c,t,E.create(p.NA)),d=V(s,c,n,E.create(p.NA)),f=V(s,c,a,E.create(p.NA)),m=V(s,c,o,E.create(p.NA)),h=l.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,u.get(t,n),d.get(t,n),f.get(t,n),m.get(t,n));if(r)return i;let[o,s,c,l,h]=a,g=+o.getValue(),_=+s.getValue(),v=+c.getValue(),y=+l.getValue(),b=+h.getValue();if(b=b?1:0,g===0&&_===0)return E.create(p.DIV_BY_ZERO);let x;if(g===0)x=-(v+y)/_;else{let e=_*(1+g*b)-y*g,t=v*g+_*(1+g*b);x=Math.log(e/t)/Math.log(1+g)}return Number.isNaN(x)||!Number.isFinite(x)?E.create(p.NUM):R.create(x)});return s===1&&c===1?h.get(0,0):h}},Dp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,255),d(this,`needsLocale`,!0)}calculate(e,...t){if(e.isError())return e;let{isError:n,errorObject:r,values:i}=this._getValues(t);return e.isArray()?e.map((e,t,a)=>this._handleSingleObject(e,n,r,i,t,a)):this._handleSingleObject(e,n,r,i)}_handleSingleObject(e,t,n,r,i=0,a=0){let o=e;if(o.isString()&&(o=o.convertToNumberObjectValue()),o.isError())return o;if(t)return n;let s=Bf(+e.getValue(),r);return Number.isNaN(s)||Math.abs(s)===1/0?E.create(p.DIV_BY_ZERO):i===0&&a===0?R.create(s,Pr(this.getLocale())):R.create(s)}_getValues(e){let t=[];for(let n=0;n<e.length;n++){let r=e[n];if(r.isError())return{isError:!0,errorObject:r};if(r.isArray()){let e=!1,n=E.create(p.VALUE);if(r.iterator(r=>{let i=r;if(i.isError())return e=!0,n=i,!1;if(i.isNull()||i.isBoolean()||i.isString()&&i.getValue()===``)return!0;let a=+i.getValue();if(Number.isNaN(a))return!0;t.push(a)}),e)return{isError:e,errorObject:n}}else{let e=+r.getValue();if(Number.isNaN(e))return{isError:!0,errorObject:E.create(p.VALUE)};t.push(e)}}return{isError:!1,values:t}}},Op=class extends Z{constructor(...e){super(...e),d(this,`minParams`,8),d(this,`maxParams`,9)}calculate(e,t,n,r,i,a,o,s,c){let l=c==null?R.create(0):c;l.isNull()&&(l=R.create(0));let{isError:u,errorObject:d,variants:f}=nc(e,t,n,r,i,a,o,s,l);if(u)return d;let[m,h,g,_,v,y,b,x,S]=f,C=k(m);if(typeof C!=`number`)return C;let w=k(h);if(typeof w!=`number`)return w;let T=k(g);if(typeof T!=`number`)return T;let ee=k(_);if(typeof ee!=`number`)return ee;let te=+v.getValue(),ne=+y.getValue(),re=+b.getValue(),D=Math.floor(+x.getValue()),ie=Math.floor(+S.getValue());if(Number.isNaN(te)||Number.isNaN(ne)||Number.isNaN(re)||Number.isNaN(D)||Number.isNaN(ie))return E.create(p.VALUE);if(te<0||ne<0||re<=0||![1,2,4].includes(D)||ie<0||ie>4||!this._validDate(w,ee,C,T,D))return E.create(p.NUM);let O=Vf(C,w,T,ee,te,ne,re,D,ie);return R.create(O)}_validDate(e,t,n,r,i){return this._getDateCorrectOrder(e,t,n,r)&&Gf(e,t,i)&&Kf(r,e,i)}_getDateCorrectOrder(e,t,n,r){return Math.floor(e)>Math.floor(t)&&Math.floor(t)>Math.floor(n)&&Math.floor(n)>Math.floor(r)}},kp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,8),d(this,`maxParams`,9)}calculate(e,t,n,r,i,a,o,s,c){let l=c==null?R.create(0):c;l.isNull()&&(l=R.create(0));let{isError:u,errorObject:d,variants:f}=nc(e,t,n,r,i,a,o,s,l);if(u)return d;let[m,h,g,_,v,y,b,x,S]=f,C=k(m);if(typeof C!=`number`)return C;let w=k(h);if(typeof w!=`number`)return w;let T=k(g);if(typeof T!=`number`)return T;let ee=k(_);if(typeof ee!=`number`)return ee;let te=+v.getValue(),ne=+y.getValue(),re=+b.getValue(),D=Math.floor(+x.getValue()),ie=Math.floor(+S.getValue());return Number.isNaN(te)||Number.isNaN(ne)||Number.isNaN(re)||Number.isNaN(D)||Number.isNaN(ie)?E.create(p.VALUE):te<0||ne<=0||re<=0||![1,2,4].includes(D)||ie<0||ie>4||!this._validDate(w,ee,C,T,D)?E.create(p.NUM):this._getResult(C,w,T,ee,te,ne,re,D,ie)}_validDate(e,t,n,r,i){return this._getDateCorrectOrder(e,t,n,r)&&Gf(e,t,i)&&Kf(r,e,i)}_getDateCorrectOrder(e,t,n,r){return Math.floor(e)>Math.floor(t)&&Math.floor(t)>Math.floor(n)&&Math.floor(n)>Math.floor(r)}_getResult(e,t,n,r,i,a,o,s,c){let{days:l}=ge(e,t,c),u=(i*l*100-(a-100))/((a-100)*.25*(1+2*l)+l*100);function d(l){return a-Vf(e,t,n,r,i,l,o,s,c)}let f=Yf(u,e=>d(e));return typeof f==`number`?R.create(f):f}},Ap=class extends Z{constructor(...e){super(...e),d(this,`minParams`,7),d(this,`maxParams`,8)}calculate(e,t,n,r,i,a,o,s){let c=s==null?R.create(0):s;c.isNull()&&(c=R.create(0));let{isError:l,errorObject:u,variants:d}=nc(e,t,n,r,i,a,o,c);if(l)return u;let[f,m,h,g,_,v,y,b]=d,x=k(f);if(typeof x!=`number`)return x;let S=k(m);if(typeof S!=`number`)return S;let C=k(h);if(typeof C!=`number`)return C;let w=+g.getValue(),T=+_.getValue(),ee=+v.getValue(),te=Math.floor(+y.getValue()),ne=Math.floor(+b.getValue());if(Number.isNaN(w)||Number.isNaN(T)||Number.isNaN(ee)||Number.isNaN(te)||Number.isNaN(ne))return E.create(p.VALUE);if(w<0||T<0||ee<=0||![1,2,4].includes(te)||ne<0||ne>4||!this._validDate(S,x,C,te))return E.create(p.NUM);let re=this._getResult(x,S,C,w,T,ee,te,ne);return R.create(re)}_validDate(e,t,n,r){return Math.floor(e)>Math.floor(t)&&Math.floor(t)>Math.floor(n)&&Kf(n,e,r)}_getResult(e,t,n,r,i,a,o,s){let c=this._getCoupDate(t,n,o),l=this._getFrac(n,e,c,o,s),u=this._getFrac(n,t,c,o,s),d=this._getFrac(e,t,c,o,s);return(a*o+100*r*(u-l*(1+i*d/o)))/(i*d+o)}_getCoupDate(e,t,n){let r=O(e),i=O(t);for(i.setUTCFullYear(r.getUTCFullYear()),i>r&&i.setUTCFullYear(i.getUTCFullYear()-1);i<r;)i.setUTCMonth(i.getUTCMonth()+12/n);return D(i)}_getFrac(e,t,n,r,i){let a=O(e),o=O(t),s=O(n);for(s.setUTCFullYear(a.getUTCFullYear()),s<a&&s.setUTCFullYear(s.getUTCFullYear()+1);s>a;)s.setUTCMonth(s.getUTCMonth()-12/r);let c=D(s);s.setUTCMonth(s.getUTCMonth()+12/r);let l=D(s);if(l>=t){let{days:n}=ge(e,t,i);return n/Mf(c,l,r,i)}let{days:u}=ge(e,l,i),d=u/Mf(c,l,r,i),f=O(l),p=O(l);for(p.setUTCMonth(p.getUTCMonth()+12/r);p<o;)f.setUTCMonth(f.getUTCMonth()+12/r),p.setUTCMonth(p.getUTCMonth()+12/r),d+=1;c=D(f),l=D(p);let{days:m}=ge(c,t,i),h=Mf(c,l,r,i);return d+=m/h,d}},jp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,8),d(this,`maxParams`,9)}calculate(e,t,n,r,i,a,o,s){let c=s==null?R.create(0):s;c.isNull()&&(c=R.create(0));let{isError:l,errorObject:u,variants:d}=nc(e,t,n,r,i,a,o,c);if(l)return u;let[f,m,h,g,_,v,y,b]=d,x=k(f);if(typeof x!=`number`)return x;let S=k(m);if(typeof S!=`number`)return S;let C=k(h);if(typeof C!=`number`)return C;let w=+g.getValue(),T=+_.getValue(),ee=+v.getValue(),te=Math.floor(+y.getValue()),ne=Math.floor(+b.getValue());if(Number.isNaN(w)||Number.isNaN(T)||Number.isNaN(ee)||Number.isNaN(te)||Number.isNaN(ne))return E.create(p.VALUE);if(w<0||T<=0||ee<=0||![1,2,4].includes(te)||ne<0||ne>4||!this._validDate(S,x,C,te))return E.create(p.NUM);let re=this._getResult(x,S,C,w,T,ee,te,ne);return R.create(re)}_validDate(e,t,n,r){return Math.floor(e)>Math.floor(t)&&Math.floor(t)>Math.floor(n)&&Kf(n,e,r)}_getResult(e,t,n,r,i,a,o,s){let c=this._getCoupDate(t,n,o),l=this._getFrac(n,e,c,o,s),u=this._getFrac(n,t,c,o,s),d=this._getFrac(e,t,c,o,s);return(o*(a-i)+100*r*(u-l))/(d*i+100*r*l*d/o)}_getCoupDate(e,t,n){let r=O(e),i=O(t);for(i.setUTCFullYear(r.getUTCFullYear()),i>r&&i.setUTCFullYear(i.getUTCFullYear()-1);i<r;)i.setUTCMonth(i.getUTCMonth()+12/n);return D(i)}_getFrac(e,t,n,r,i){let a=O(e),o=O(t),s=O(n);for(s.setUTCFullYear(a.getUTCFullYear()),s<a&&s.setUTCFullYear(s.getUTCFullYear()+1);s>a;)s.setUTCMonth(s.getUTCMonth()-12/r);let c=D(s);s.setUTCMonth(s.getUTCMonth()+12/r);let l=D(s);if(l>=t){let{days:n}=ge(e,t,i);return n/Mf(c,l,r,i)}let{days:u}=ge(e,l,i),d=u/Mf(c,l,r,i),f=O(l),p=O(l);for(p.setUTCMonth(p.getUTCMonth()+12/r);p<o;)f.setUTCMonth(f.getUTCMonth()+12/r),p.setUTCMonth(p.getUTCMonth()+12/r),d+=1;c=D(f),l=D(p);let{days:m}=ge(c,t,i),h=Mf(c,l,r,i);return d+=m/h,d}},Mp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,o.get(t,n),s.get(t,n));if(r)return i;let[c,l,u]=a,d=+c.getValue(),f=+l.getValue(),m=+u.getValue();if(d<=-1)return E.create(p.NUM);let h=(Math.log(m)-Math.log(f))/Math.log(1+d);return Number.isNaN(h)||!Number.isFinite(h)?E.create(p.NUM):R.create(h)});return r===1&&i===1?c.get(0,0):c}},Np=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,5),d(this,`needsLocale`,!0)}calculate(e,t,n,r,i){let a=r==null?R.create(0):r,o=i==null?R.create(0):i,s=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,a.isArray()?a.getRowCount():1,o.isArray()?o.getRowCount():1),c=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,a.isArray()?a.getColumnCount():1,o.isArray()?o.getColumnCount():1),l=V(s,c,e,E.create(p.NA)),u=V(s,c,t,E.create(p.NA)),d=V(s,c,n,E.create(p.NA)),f=V(s,c,a,E.create(p.NA)),m=V(s,c,o,E.create(p.NA)),h=l.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,u.get(t,n),d.get(t,n),f.get(t,n),m.get(t,n));if(r)return i;let[o,s,c,l,h]=a,g=+o.getValue(),_=+s.getValue(),v=+c.getValue(),y=+l.getValue(),b=+h.getValue();if(g<=-1)return E.create(p.NUM);let x=Lf(g,_,v,y,b?1:0);return Number.isNaN(x)||!Number.isFinite(x)?E.create(p.NUM):t===0&&n===0?R.create(x,Pr(this.getLocale())):R.create(x)});return s===1&&c===1?h.get(0,0):h}},Pp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,6),d(this,`needsLocale`,!0)}calculate(e,t,n,r,i,a){let o=i==null?R.create(0):i,s=a==null?R.create(0):a,c=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1,o.isArray()?o.getRowCount():1,s.isArray()?s.getRowCount():1),l=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1,o.isArray()?o.getColumnCount():1,s.isArray()?s.getColumnCount():1),u=V(c,l,e,E.create(p.NA)),d=V(c,l,t,E.create(p.NA)),f=V(c,l,n,E.create(p.NA)),m=V(c,l,r,E.create(p.NA)),h=V(c,l,o,E.create(p.NA)),g=V(c,l,s,E.create(p.NA)),_=u.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,d.get(t,n),f.get(t,n),m.get(t,n),h.get(t,n),g.get(t,n));if(r)return i;let[o,s,c,l,u,_]=a,v=+o.getValue(),y=+s.getValue(),b=+c.getValue(),x=+l.getValue(),S=+u.getValue(),C=+_.getValue();if(y<1||Math.floor(y)>Math.ceil(b)||y-b>=1)return E.create(p.NUM);let w=Lf(v,b,x,S,C?1:0)-zf(v,y,b,x,S,C?1:0);return Number.isNaN(w)||!Number.isFinite(w)?E.create(p.NUM):t===0&&n===0?R.create(w,Pr(this.getLocale())):R.create(w)});return c===1&&l===1?_.get(0,0):_}},Fp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,6),d(this,`maxParams`,7)}calculate(e,t,n,r,i,a,o){let s=o==null?R.create(0):o;s.isNull()&&(s=R.create(0));let{isError:c,errorObject:l,variants:u}=nc(e,t,n,r,i,a,s);if(c)return l;let[d,f,m,h,g,_,v]=u,y=k(d);if(typeof y!=`number`)return y;let b=k(f);if(typeof b!=`number`)return b;let x=+m.getValue(),S=+h.getValue(),C=+g.getValue(),w=Math.floor(+_.getValue()),T=Math.floor(+v.getValue());if(Number.isNaN(x)||Number.isNaN(S)||Number.isNaN(C)||Number.isNaN(w)||Number.isNaN(T))return E.create(p.VALUE);if(x<0||S<0||C<=0||![1,2,4].includes(w)||T<0||T>4||y>=b||!Kf(y,b,w))return E.create(p.NUM);let ee=Zf(y,b,x,S,C,w,T);return R.create(ee)}},Ip=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let a=i==null?R.create(0):i;a.isNull()&&(a=R.create(0));let{isError:o,errorObject:s,variants:c}=nc(e,t,n,r,a);if(o)return s;let[l,u,d,f,m]=c,h=k(l);if(typeof h!=`number`)return h;let g=k(u);if(typeof g!=`number`)return g;let _=+d.getValue(),v=+f.getValue(),y=Math.floor(+m.getValue());if(Number.isNaN(_)||Number.isNaN(v)||Number.isNaN(y))return E.create(p.VALUE);if(_<=0||v<=0||y<0||y>4||h>=g)return E.create(p.NUM);let{days:b,yearDays:x}=ge(h,g,y),S=v-_*v*b/x;return R.create(S)}},Lp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,5),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let o=a==null?R.create(0):a;o.isNull()&&(o=R.create(0));let{isError:s,errorObject:c,variants:l}=nc(e,t,n,r,i,o);if(s)return c;let[u,d,f,m,h,g]=l,_=k(u);if(typeof _!=`number`)return _;let v=k(d);if(typeof v!=`number`)return v;let y=k(f);if(typeof y!=`number`)return y;let b=+m.getValue(),x=+h.getValue(),S=Math.floor(+g.getValue());if(Number.isNaN(b)||Number.isNaN(x)||Number.isNaN(S))return E.create(p.VALUE);let C=this._getDateCorrectOrder(v,_,y);if(b<0||x<0||S<0||S>4||!C)return E.create(p.NUM);let w=Ee(_,S),{days:T}=ge(_,v,S),{days:ee}=ge(y,v,S),{days:te}=ge(y,_,S),ne=(100+ee/w*b*100)/(1+T/w*x)-te/w*b*100;return R.create(ne)}_getDateCorrectOrder(e,t,n){return Math.floor(e)>Math.floor(t)&&Math.floor(t)>Math.floor(n)}},Rp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,5),d(this,`needsLocale`,!0)}calculate(e,t,n,r,i){let a=r==null?R.create(0):r,o=i==null?R.create(0):i,s=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,a.isArray()?a.getRowCount():1,o.isArray()?o.getRowCount():1),c=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,a.isArray()?a.getColumnCount():1,o.isArray()?o.getColumnCount():1),l=V(s,c,e,E.create(p.NA)),u=V(s,c,t,E.create(p.NA)),d=V(s,c,n,E.create(p.NA)),f=V(s,c,a,E.create(p.NA)),m=V(s,c,o,E.create(p.NA)),h=l.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,u.get(t,n),d.get(t,n),f.get(t,n),m.get(t,n));if(r)return i;let[o,s,c,l,h]=a,g=+o.getValue(),_=+s.getValue(),v=+c.getValue(),y=+l.getValue(),b=+h.getValue();b=b?1:0;let x=g===0?-v*_-y:((1-(1+g)**_)/g*v*(1+g*b)-y)/(1+g)**_;return Number.isNaN(x)||!Number.isFinite(x)?E.create(p.NUM):t===0&&n===0?R.create(x,Pr(this.getLocale())):R.create(x)});return s===1&&c===1?h.get(0,0):h}},zp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let o=r==null?R.create(0):r,s=i==null?R.create(0):i,c=a==null?R.create(.1):a,l=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,o.isArray()?o.getRowCount():1,s.isArray()?s.getRowCount():1,c.isArray()?c.getRowCount():1),u=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,o.isArray()?o.getColumnCount():1,s.isArray()?s.getColumnCount():1,c.isArray()?c.getColumnCount():1),d=V(l,u,e,E.create(p.NA)),f=V(l,u,t,E.create(p.NA)),m=V(l,u,n,E.create(p.NA)),h=V(l,u,o,E.create(p.NA)),g=V(l,u,s,E.create(p.NA)),_=V(l,u,c,E.create(p.NA)),v=d.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,f.get(t,n),m.get(t,n),h.get(t,n),g.get(t,n),_.get(t,n));if(r)return i;let[o,s,c,l,u,d]=a,v=+o.getValue(),y=+s.getValue(),b=+c.getValue(),x=+l.getValue(),S=+u.getValue(),C=+d.getValue();return S=S?1:0,v<=0||y>=0&&b>=0&&x>=0||y<=0&&b<=0&&x<=0?E.create(p.NUM):this._getResult(v,y,b,x,S,C,t,n)});return l===1&&u===1?v.get(0,0):v}_getResult(e,t,n,r,i,a,o,s){let c=1e-10;if(Math.abs(t)<1e-14)return this._computeSimpleGrowthRate(e,n,r,o,s);let l=a,u=1/0;for(let a=0;a<100;a++){if(l<=-1)return E.create(p.NUM);let{value:a,derivative:o}=this._evaluateRateFunction(l,e,t,n,r,i,c),s=Math.abs(a);if(s<c||Math.abs(o)<1e-14)break;let d=this._getAdaptiveDampedStep(a,o,s,u);l-=d,u=s}return!Number.isFinite(l)||l<=-1?E.create(p.NUM):R.create(l,o===0&&s===0?`0%`:void 0)}_computeSimpleGrowthRate(e,t,n,r,i){if(Math.sign(t)===Math.sign(n))return E.create(p.NUM);let a=(n/-t)**(1/e)-1;return R.create(a,r===0&&i===0?`0%`:void 0)}_evaluateRateFunction(e,t,n,r,i,a,o){let s,c,l;if(Math.abs(e)<o)s=r*(1+t*e)+n*(1+e*a)*t+i,c=r*t+n*a*t;else{l=(1+e)**t,s=r*l+n*(1/e+a)*(l-1)+i;let o=t*(1+e)**(t-1);c=r*o+n*(1/e+a)*o+n*(-1/(e*e))*(l-1)}return{value:s,derivative:c}}_getAdaptiveDampedStep(e,t,n,r){let i=e/t;return n>.001||n>=r*.9?Math.max(Math.min(i,5),-5):Math.max(Math.min(i,.5),-.5)}},Bp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let a=i==null?R.create(0):i;a.isNull()&&(a=R.create(0));let{isError:o,errorObject:s,variants:c}=nc(e,t,n,r,a);if(o)return s;let[l,u,d,f,m]=c,h=k(l);if(typeof h!=`number`)return h;let g=k(u);if(typeof g!=`number`)return g;let _=+d.getValue(),v=+f.getValue(),y=Math.floor(+m.getValue());if(Number.isNaN(_)||Number.isNaN(v)||Number.isNaN(y))return E.create(p.VALUE);if(_<=0||v<=0||y<0||y>4||h>=g)return E.create(p.NUM);let{days:b,yearDays:x}=ge(h,g,y),S=_/(1-v*b/x);return S<0?E.create(p.NUM):R.create(S)}},Vp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,6)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,o.get(t,n),s.get(t,n));if(r)return i;let[c,l,u]=a,d=+c.getValue(),f=+l.getValue(),m=+u.getValue();if(d<=0)return E.create(p.NUM);if(f===0&&m===0)return R.create(0);let h=(m/f)**(1/d)-1;return Number.isNaN(h)||!Number.isFinite(h)||m/f<0?E.create(p.NUM):R.create(h)});return r===1&&i===1?c.get(0,0):c}},Hp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3),d(this,`needsLocale`,!0)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.map((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);if(r.isError())return r;if(i.isError())return i;let a=+e.getValue(),c=+r.getValue(),l=+i.getValue();if(Number.isNaN(a)||Number.isNaN(c)||Number.isNaN(l))return E.create(p.VALUE);if(l===0)return E.create(p.DIV_BY_ZERO);let u=(a-c)/l;return t===0&&n===0?R.create(u,Pr(this.getLocale())):R.create(u)});return r===1&&i===1?c.get(0,0):c}},Up=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4),d(this,`needsLocale`,!0)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.map((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);if(r.isError())return r;if(i.isError())return i;if(a.isError())return a;let o=+e.getValue(),u=+r.getValue(),d=+i.getValue(),f=+a.getValue();if(Number.isNaN(o)||Number.isNaN(u)||Number.isNaN(d)||Number.isNaN(f))return E.create(p.VALUE);if(u<0||d<=0||f>d)return E.create(p.NUM);let m=(o-u)*(d-f+1)*2/(d*(d+1));return t===0&&n===0?R.create(m,Pr(this.getLocale())):R.create(m)});return i===1&&a===1?u.get(0,0):u}},Wp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,variants:a}=nc(e,t,n);if(r)return i;let[o,s,c]=a,l=k(o);if(typeof l!=`number`)return l;let u=k(s);if(typeof u!=`number`)return u;let d=+c.getValue();if(Number.isNaN(d))return E.create(p.VALUE);if(d<=0||l>=u)return E.create(p.NUM);let f=Math.floor(u)-Math.floor(l);if(f>Te(O(l).getUTCFullYear()))return E.create(p.NUM);let m=365*d/(360-d*f);if(f>182){let e=100*(1-d*f/360),t=f/365;if(m=(-t+Math.sqrt(t*t-(t*2-1)*(1-100/e)))/(t-.5),Number.isNaN(m))return E.create(p.NUM)}return m<0?E.create(p.NUM):R.create(m)}},Gp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3),d(this,`needsLocale`,!0)}calculate(e,t,n){let{isError:r,errorObject:i,variants:a}=nc(e,t,n);if(r)return i;let[o,s,c]=a,l=k(o);if(typeof l!=`number`)return l;let u=k(s);if(typeof u!=`number`)return u;let d=+c.getValue();if(Number.isNaN(d))return E.create(p.VALUE);if(d<=0||l>=u)return E.create(p.NUM);let f=Math.floor(u)-Math.floor(l);if(f>Te(O(l).getUTCFullYear()))return E.create(p.NUM);let m=100*(1-d*f/360);return m<0?E.create(p.NUM):R.create(m,Pr(this.getLocale()))}},Kp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,variants:a}=nc(e,t,n);if(r)return i;let[o,s,c]=a,l=k(o);if(typeof l!=`number`)return l;let u=k(s);if(typeof u!=`number`)return u;let d=+c.getValue();if(Number.isNaN(d))return E.create(p.VALUE);if(d<=0||l>=u)return E.create(p.NUM);let f=Math.floor(u)-Math.floor(l);if(f>Te(O(l).getUTCFullYear()))return E.create(p.NUM);let m=(100-d)/d*360/f;return R.create(m)}},qp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,5),d(this,`maxParams`,7),d(this,`needsLocale`,!0)}calculate(e,t,n,r,i,a,o){let s=a==null?R.create(2):a;s.isNull()&&(s=R.create(2));let c=o==null?L.create(!1):o;c.isNull()&&(c=L.create(!1));let l=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1,i.isArray()?i.getRowCount():1,s.isArray()?s.getRowCount():1,c.isArray()?c.getRowCount():1),u=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1,i.isArray()?i.getColumnCount():1,s.isArray()?s.getColumnCount():1,c.isArray()?c.getColumnCount():1),d=V(l,u,e,E.create(p.NA)),f=V(l,u,t,E.create(p.NA)),m=V(l,u,n,E.create(p.NA)),h=V(l,u,r,E.create(p.NA)),g=V(l,u,i,E.create(p.NA)),_=V(l,u,s,E.create(p.NA)),v=V(l,u,c,E.create(p.NA));return this._getResultArray(d,f,m,h,g,_,v,l,u)}_getResultArray(e,t,n,r,i,a,o,s,c){let l=e.map((e,s,c)=>{let{isError:l,errorObject:u,variants:d}=X(e,t.get(s,c),n.get(s,c),r.get(s,c),i.get(s,c),a.get(s,c),o.get(s,c));if(l)return u;let[f,m,h,g,_,v,y]=d,b=+f.getValue(),x=+m.getValue(),S=+h.getValue(),C=+g.getValue(),w=+_.getValue(),T=+v.getValue(),ee=+y.getValue();if(b<0||x<0||S<0||C<0||w<0||w>S||C>w||T<0)return E.create(p.NUM);if(S===0&&C===0&&w===0)return E.create(p.DIV_BY_ZERO);let te=this._getResult(b,x,S,C,w,T,ee);return s===0&&c===0?R.create(te,Pr(this.getLocale())):R.create(te)});return s===1&&c===1?l.get(0,0):l}_getResult(e,t,n,r,i,a,o){let s=Math.floor(r),c=Math.ceil(i),l=0;if(e<t){if(r>=1||o)return l;let n=Math.abs(e-t);return l=n*(i-r)>n?n:n*(i-r),-l}if(o)for(let o=s+1;o<=c;o++){let u=Qf(e,t,n,o,a);o===s+1?u*=Math.min(i,s+1)-r:o===c&&(u*=i+1-c),l+=u}else{let o=e-this._getVdb(e,t,n,n,r,a);l=this._getVdb(o,t,n,n-r,i-r,a)}return l}_getVdb(e,t,n,r,i,a){let o=Math.ceil(i),s=0,c=e-t,l=0,u=0,d=!1;for(let f=1;f<=o;f++){if(d)u=l;else{let i=Qf(e,t,n,f,a);l=c/(r-(f-1)),l>i?(u=l,d=!0):(u=i,c-=i)}f===o&&(u*=i+1-o),s+=u}return s}},Jp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){if(e.isNull()||t.isNull())return E.create(p.NA);let{isError:r,errorObejct:i,_values:a,_dates:o}=this._checkErrors(e,t);if(r)return i;let s=n==null?R.create(.1):n;s.isNull()&&(s=R.create(.1));let{isError:c,errorObject:l,variants:u}=Y(s);if(c)return l;let[d]=u,f=+d.getValue();if(Number.isNaN(f))return E.create(p.VALUE);let{positive:m,negative:h}=this._checkValues(a);if(!m||!h||(a==null?void 0:a.length)!==(o==null?void 0:o.length)||f<0)return E.create(p.NUM);let g=Yf(f,e=>this._iterF(a,o,e));return typeof g==`number`?R.create(g):g}_checkErrors(e,t){if(e.isError())return{isError:!0,errorObejct:e};if(t.isError())return{isError:!0,errorObejct:t};let{isError:n,errorObejct:r,_values:i}=this._checkErrorValues(e);if(n)return{isError:n,errorObejct:r};let{isError:a,errorObejct:o,_dates:s}=this._checkErrorDates(t);return a?{isError:a,errorObejct:o}:{isError:!1,_values:i,_dates:s}}_checkErrorValues(e){let n=[];if(e.isArray()){let t=!1,r=E.create(p.VALUE);return e.iterator(e=>{let i=e;if(i.isError())return t=!0,r=i,!1;if(i.isBoolean())return t=!0,r=E.create(p.VALUE),!1;let a=+i.getValue();if(Number.isNaN(a))return t=!0,r=E.create(p.VALUE),!1;n.push(a)}),t?{isError:t,errorObejct:r}:n.length<=1?{isError:!0,errorObejct:E.create(p.NA)}:{isError:t,_values:n}}else{let n=e.getValue();return e.isBoolean()||e.isString()&&!(0,t.isRealNum)(n)?{isError:!0,errorObejct:E.create(p.VALUE)}:{isError:!0,errorObejct:E.create(p.NA)}}}_checkErrorDates(e){let n=[];if(e.isArray()){let t=!1,r=E.create(p.VALUE);return e.iterator(e=>{if(e!=null&&e.isError())return t=!0,r=e,!1;if(e!=null&&e.isBoolean())return t=!0,r=E.create(p.VALUE),!1;let i=+e.getValue();if(Number.isNaN(i))return t=!0,r=E.create(p.VALUE),!1;if(i<0)return t=!0,r=E.create(p.NUM),!1;n.push(Math.floor(i))}),t?{isError:t,errorObejct:r}:n.length<=1?{isError:!0,errorObejct:E.create(p.NA)}:{isError:t,_dates:n}}else{let n=e.getValue();return e.isBoolean()||e.isString()&&!(0,t.isRealNum)(n)?{isError:!0,errorObejct:E.create(p.VALUE)}:+n<0?{isError:!0,errorObejct:E.create(p.NUM)}:{isError:!0,errorObejct:E.create(p.NA)}}}_checkValues(e){let t=!1,n=!1;for(let r=0;r<e.length;r++)e[r]>0&&(t=!0),e[r]<0&&(n=!0);return{positive:t,negative:n}}_iterF(e,t,n){return e.reduce((e,r,i)=>e+r/(1+n)**((t[i]-t[0])/365),0)}},Yp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){if(e.isNull()||t.isNull()||n.isNull())return E.create(p.NA);let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=+o.getValue();if(Number.isNaN(s))return E.create(p.VALUE);let{isError:c,errorObejct:l,_values:u,_dates:d}=this._checkErrors(t,n);if(c)return l;if(u=u,d=d,s<0||u.length!==d.length)return E.create(p.NUM);let f=0,m=d[0];for(let e=0;e<d.length;e++){let t=d[e],n=u[e];f+=n/(1+s)**((t-m)/365)}return R.create(f)}_checkErrors(e,t){if(e.isError())return{isError:!0,errorObejct:e};if(t.isError())return{isError:!0,errorObejct:t};let{isError:n,errorObejct:r,_values:i}=this._checkErrorValues(e);if(n)return{isError:n,errorObejct:r};let{isError:a,errorObejct:o,_dates:s}=this._checkErrorDates(t);return a?{isError:a,errorObejct:o}:{isError:!1,_values:i,_dates:s}}_checkErrorValues(e){let t=[];if(e.isArray()){let n=!1,r=E.create(p.VALUE);return e.iterator(e=>{let i=e;if(i.isError())return n=!0,r=i,!1;if(i.isNull()||i.isBoolean()||i.isString()&&i.getValue()===``)return n=!0,r=E.create(p.VALUE),!1;let a=+i.getValue();if(Number.isNaN(a))return n=!0,r=E.create(p.VALUE),!1;t.push(a)}),n?{isError:n,errorObejct:r}:{isError:n,_values:t}}else{if(e.isError())return{isError:!0,errorObejct:e};if(e.isNull()||e.isBoolean())return{isError:!0,errorObejct:E.create(p.VALUE)};let t=+e.getValue();return Number.isNaN(t)?{isError:!0,errorObejct:E.create(p.VALUE)}:{isError:!1,_values:[t]}}}_checkErrorDates(e){let t=[];if(e.isArray()){let n=!1,r=E.create(p.VALUE);return e.iterator(e=>{let i=e;if(i.isError())return n=!0,r=i,!1;if(i.isNull()||i.isBoolean())return n=!0,r=E.create(p.VALUE),!1;let a=+i.getValue();if(Number.isNaN(a))return n=!0,r=E.create(p.VALUE),!1;if(a<0)return n=!0,r=E.create(p.NUM),!1;t.push(Math.floor(a))}),n?{isError:n,errorObejct:r}:{isError:n,_dates:t}}else{if(e.isError())return{isError:!0,errorObejct:e};if(e.isNull()||e.isBoolean())return{isError:!0,errorObejct:E.create(p.VALUE)};let t=+e.getValue();return Number.isNaN(t)?{isError:!0,errorObejct:E.create(p.VALUE)}:+t<0?{isError:!0,errorObejct:E.create(p.NUM)}:{isError:!1,_dates:[Math.floor(t)]}}}},Xp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,6),d(this,`maxParams`,7)}calculate(e,t,n,r,i,a,o){let s=o==null?R.create(0):o;s.isNull()&&(s=R.create(0));let{isError:c,errorObject:l,variants:u}=nc(e,t,n,r,i,a,s);if(c)return l;let[d,f,m,h,g,_,v]=u,y=k(d);if(typeof y!=`number`)return y;let b=k(f);if(typeof b!=`number`)return b;let x=+m.getValue(),S=+h.getValue(),C=+g.getValue(),w=Math.floor(+_.getValue()),T=Math.floor(+v.getValue());if(Number.isNaN(x)||Number.isNaN(S)||Number.isNaN(C)||Number.isNaN(w)||Number.isNaN(T))return E.create(p.VALUE);if(x<0||S<=0||C<=0||![1,2,4].includes(w)||T<0||T>4||y>=b||!Kf(y,b,w))return E.create(p.NUM);let ee=this._getResult(y,b,x,S,C,w,T);return R.create(ee)}_getResult(e,t,n,r,i,a,o){if(Pf(e,t,a)>1){let s=n||.01,c=Zf(e,t,n,s,i,a,o),l=c-r;for(let u=0;u<100&&Math.abs(l)>1e-7;u++)c=Zf(e,t,n,1.01*s,i,a,o),s+=-l/(c-r-l)*s*.01,l=Zf(e,t,n,s,i,a,o)-r;return s}let s=jf(e,t,a,o),c=Mf(e,t,a,o),{days:l}=ge(e,t,o),u=r/100+s/c*n/a;return(i/100+n/a-u)/u*a*c/l}},Zp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let a=i==null?R.create(0):i;a.isNull()&&(a=R.create(0));let{isError:o,errorObject:s,variants:c}=nc(e,t,n,r,a);if(o)return s;let[l,u,d,f,m]=c,h=k(l);if(typeof h!=`number`)return h;let g=k(u);if(typeof g!=`number`)return g;let _=+d.getValue(),v=+f.getValue(),y=Math.floor(+m.getValue());if(Number.isNaN(_)||Number.isNaN(v)||Number.isNaN(y))return E.create(p.VALUE);if(_<=0||v<=0||y<0||y>4||h>=g)return E.create(p.NUM);let{days:b,yearDays:x}=ge(h,g,y),S=(v/_-1)/(b/x);return R.create(S)}},Qp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,5),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let o=a==null?R.create(0):a;o.isNull()&&(o=R.create(0));let{isError:s,errorObject:c,variants:l}=nc(e,t,n,r,i,o);if(s)return c;let[u,d,f,m,h,g]=l,_=k(u);if(typeof _!=`number`)return _;let v=k(d);if(typeof v!=`number`)return v;let y=k(f);if(typeof y!=`number`)return y;let b=+m.getValue(),x=+h.getValue(),S=Math.floor(+g.getValue());if(Number.isNaN(b)||Number.isNaN(x)||Number.isNaN(S))return E.create(p.VALUE);let C=this._getDateCorrectOrder(v,_,y);if(b<0||x<=0||S<0||S>4||!C)return E.create(p.NUM);let w=Ee(_,S),{days:T}=ge(_,v,S),{days:ee}=ge(y,v,S),{days:te}=ge(y,_,S),ne=((1+ee/w*b)/(x/100+te/w*b)-1)/(T/w);return R.create(ne)}_getDateCorrectOrder(e,t,n){return Math.floor(e)>Math.floor(t)&&Math.floor(t)>Math.floor(n)}};let $p=[[$f,W.ACCRINT],[ep,W.ACCRINTM],[tp,W.AMORLINC],[np,W.COUPDAYBS],[rp,W.COUPDAYS],[ip,W.COUPDAYSNC],[ap,W.COUPNCD],[op,W.COUPNUM],[sp,W.COUPPCD],[cp,W.CUMIPMT],[lp,W.CUMPRINC],[up,W.DB],[dp,W.DDB],[fp,W.DISC],[pp,W.DOLLARDE],[mp,W.DOLLARFR],[hp,W.DURATION],[gp,W.EFFECT],[_p,W.FV],[vp,W.FVSCHEDULE],[yp,W.INTRATE],[bp,W.IPMT],[xp,W.IRR],[Sp,W.ISPMT],[Cp,W.MDURATION],[wp,W.MIRR],[Tp,W.NOMINAL],[Ep,W.NPER],[Dp,W.NPV],[Op,W.ODDFPRICE],[kp,W.ODDFYIELD],[Ap,W.ODDLPRICE],[jp,W.ODDLYIELD],[Mp,W.PDURATION],[Np,W.PMT],[Pp,W.PPMT],[Fp,W.PRICE],[Ip,W.PRICEDISC],[Lp,W.PRICEMAT],[Rp,W.PV],[zp,W.RATE],[Bp,W.RECEIVED],[Vp,W.RRI],[Hp,W.SLN],[Up,W.SYD],[Wp,W.TBILLEQ],[Gp,W.TBILLPRICE],[Kp,W.TBILLYIELD],[qp,W.VDB],[Jp,W.XIRR],[Yp,W.XNPV],[Xp,W.YIELD],[Zp,W.YIELDDISC],[Qp,W.YIELDMAT]];var em=class extends Z{constructor(...e){super(...e),d(this,`needsReferenceObject`,!0),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e;if(n.isError())return n;if(n.isReferenceObject()&&(n=n.toArrayValueObject()),n.isArray()){let e=n.getRowCount(),r=n.getColumnCount();if(e===1&&r===1){let e=n.get(0,0);return this._handleSingleObject(e,t)}return n.map(e=>e.isError()?e:this._handleSingleObject(e,t,!0))}return this._handleSingleObject(n,t)}_handleSingleObject(e,n,r=!1){let i=n;if(i.isError())return i;if(!i.isReferenceObject())return E.create(p.NA);let{columnData:a,defaultColumnWidth:o}=i.getCurrentActiveSheetData();i=i.toArrayValueObject();let s=i.getCurrentRow(),c=i.getCurrentColumn();i=i.getFirstCell();let l=`${e.getValue()}`,u;switch(l.toLocaleLowerCase()){case`address`:return z.create(`$${t.Tools.chatAtABC(c)}$${s+1}`);case`col`:return R.create(c+1);case`color`:return R.create(0);case`contents`:return i;case`filename`:return E.create(p.VALUE);case`format`:return z.create(`G`);case`parentheses`:return R.create(0);case`prefix`:return z.create(``);case`protect`:return R.create(1);case`row`:return R.create(s+1);case`type`:return u=`v`,i.isNull()&&(u=`b`),i.isString()&&(u=`l`),z.create(u);case`width`:return this._getWidthResult(a,o,c,r);default:return E.create(p.VALUE)}}_getWidthResult(e,t,n,r){var i;let a=(i=e[n])==null?void 0:i.w;if(!a&&a!==0&&(a=t),r)return R.create(a);let o=[[a,a===t]];return B.createByArray(o)}},tm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1),d(this,`_errorTypeValueMap`,new Map([[p.NULL,1],[p.DIV_BY_ZERO,2],[p.VALUE,3],[p.REF,4],[p.NAME,5],[p.NUM,6],[p.NA,7],[p.CONNECT,8],[p.CALC,14]]))}calculate(e){return e.isArray()?e.mapValue(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e.getValue(),n=this._errorTypeValueMap.get(t);return n?R.create(n):E.create(p.NA)}},nm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let{isError:a,errorObject:o,variants:s}=tc(e,t,n,r==null?L.create(!0):r,i==null?L.create(!0):i);if(a)return o;let[c,l,u,d,f]=s;if(d.isString()||f.isString())return E.create(p.VALUE);if(l.compare(u,`>`).getValue()===!0)return E.create(p.NUM);let m=+d.getValue(),h=+f.getValue(),g=m?`>=`:`>`,_=h?`<=`:`<`;return c.compare(l,g).getValue()===!1||c.compare(u,_).getValue()===!1?L.create(!1):L.create(!0)}},rm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isNull()?L.create(!0):e.isArray()?e.mapValue(e=>e.isNull()?L.create(!0):L.create(!1)):L.create(!1)}},im=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;if(t.isArray()){let e=t.getRowCount(),n=t.getColumnCount();if(e>1||n>1)return E.create(p.VALUE);t=t.get(0,0)}return t.isError()?t:t.isNumber()&&t.getPattern()!==``?L.create(le(t.getPattern())):t.isString()&&(se(`${t.getValue()}`)||ce(`${t.getValue()}`))?L.create(!0):L.create(!1)}},am=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let n=e;if(n.isArray()){let e=n.getRowCount(),t=n.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);n=n.get(0,0)}if(n.isError())return n;if(n.isNull()||n.isBoolean()||n.isNumber())return L.create(!1);let r=`${n.getValue()}`;if(r.length>254)return L.create(!1);let i=t.Tools.topLevelDomainCombiningString(),a=RegExp(`^(?:[\\w+-]+\\.)*[\\w+-]+@[a-z0-9_-]+(?:\\.[a-z0-9_-]+)*\\.(?:${i})$`,`i`);return L.create(a.test(r))}},om=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.getValue()===p.NA?L.create(!1):e.isError()?L.create(!0):e.isArray()?e.mapValue(e=>e.getValue()===p.NA?L.create(!1):e.isError()?L.create(!0):L.create(!1)):L.create(!1)}},sm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isError()?L.create(!0):e.isArray()?e.mapValue(e=>e.isError()?L.create(!0):L.create(!1)):L.create(!1)}},cm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;if(t.isArray()){let e=t.getRowCount(),n=t.getColumnCount();if(e>1||n>1)return E.create(p.VALUE);t=t.get(0,0)}if(t.isError())return t;if(t.isBoolean())return E.create(p.VALUE);let n=Math.trunc(+t.getValue());if(Number.isNaN(n))return E.create(p.VALUE);let r=n%2==0;return L.create(r)}},lm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1),d(this,`needsReferenceObject`,!0)}calculate(e){var t;if(e.isError())return e;if(!e.isReferenceObject())return E.create(p.NA);let n=(t=e.getCurrentActiveSheetData())==null?void 0:t.cellData.getMatrix(),{startRow:r,startColumn:i}=e.getRangePosition(),a=e.toArrayValueObject(),o=a.mapValue((e,t,a)=>{var o;let s=n==null||(o=n[r+t])==null?void 0:o[i+a];return s!=null&&s.f||s!=null&&s.si?L.create(!0):L.create(!1)});return a.getRowCount()===1&&a.getColumnCount()===1?o.get(0,0):o}},um=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isBoolean()?L.create(!0):e.isArray()?e.mapValue(e=>e.isBoolean()?L.create(!0):L.create(!1)):L.create(!1)}},dm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.getValue()===p.NA?L.create(!0):e.isArray()?e.mapValue(e=>e.getValue()===p.NA?L.create(!0):L.create(!1)):L.create(!1)}},fm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return!e.isArray()&&!e.isString()?L.create(!0):e.isArray()?e.mapValue(e=>e.isString()?L.create(!1):L.create(!0)):L.create(!1)}},pm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isNumber()?L.create(!0):e.isArray()?e.mapValue(e=>e.isNumber()?L.create(!0):L.create(!1)):L.create(!1)}},mm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;if(t.isArray()){let e=t.getRowCount(),n=t.getColumnCount();if(e>1||n>1)return E.create(p.VALUE);t=t.get(0,0)}if(t.isError())return t;if(t.isBoolean())return E.create(p.VALUE);let n=Math.trunc(+t.getValue());if(Number.isNaN(n))return E.create(p.VALUE);let r=n%2!=0;return L.create(r)}},hm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1),d(this,`needsReferenceObject`,!0)}calculate(e){return e.isReferenceObject()?L.create(!0):L.create(!1)}},gm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isString()?L.create(!0):e.isArray()?e.mapValue(e=>e.isString()?L.create(!0):L.create(!1)):L.create(!1)}},_m=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let n=e;if(n.isArray()){let e=n.getRowCount(),t=n.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);n=n.get(0,0)}if(n.isError())return n;if(n.isNull()||n.isBoolean()||n.isNumber())return L.create(!1);let r=`${n.getValue()}`.replace(/^\s+|\s+$/g,``);if(r.length>1e3)return L.create(!1);let i=t.Tools.topLevelDomainCombiningString(),a=RegExp(`^(?:(?:https?|s?ftp|ftps|nfs|ssh)://+[a-z0-9_-]+(?:\\.[a-z0-9_-]+)*(?::[0-9]+)?(?:/(?:[A-Za-z0-9\\-._~!$&'()*+,;=:@]|%[A-Fa-f0-9]{2})*)*/?(?:[?#]\\S*)?|[a-z0-9_-]+(?:\\.[a-z0-9_-]+)*\\.(?:${i})(?::[0-9]+)?(?:/(?:[A-Za-z0-9\\-._~!$&'()*+,;=:@]|%[A-Fa-f0-9]{2})*)*/?(?:[?#]\\S*)?|mailto:(?:[\\w+-]+\\.)*[\\w+-]+@[a-z0-9_-]+(?:\\.[a-z0-9_-]+)*\\.(?:${i})|(?:news|aim):[%a-z0-9$_\\.+!*(),;/?#:@&~=-]+)$`,`i`);return L.create(a.test(r))}},vm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;if(e.isArray()&&(t=e.get(0,0)),t.isError())return t;if(t.isString())return R.create(0);let n=+t.getValue();return R.create(n)}},ym=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,0)}calculate(){return E.create(p.NA)}},bm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,1),d(this,`needsReferenceObject`,!0),d(this,`needsSheetsInfo`,!0)}calculate(e){var t;if(e!=null&&e.isError())return e;let{sheetOrder:n,sheetNameMap:r}=this.getSheetsInfo();if(!e){let e=n.findIndex(e=>e===this.subUnitId);return R.create(e+1)}if(e.isReferenceObject()){let t=e.getForcedSheetId(),r=e.getDefaultSheetId(),i=n.findIndex(e=>t?e===t:e===r);return R.create(i+1)}if(e.isArray())return E.create(p.NA);let i=`${e.getValue()}`.toLocaleLowerCase(),a=(t=Object.entries(r).find(([e,t])=>t.toLocaleLowerCase()===i))==null?void 0:t[0];if(!a)return E.create(p.NA);let o=n.findIndex(e=>e===a);return R.create(o+1)}},xm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,0),d(this,`needsSheetsInfo`,!0)}calculate(){let{sheetOrder:e}=this.getSheetsInfo();return R.create(e.length)}},Sm=class extends Z{constructor(...e){super(...e),d(this,`needsReferenceObject`,!0),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isReferenceObject()){let t=e.getRowCount(),n=e.getColumnCount();if(t===1&&n===1){let t=e.getFirstCell();if(t.isError())return R.create(16);if(t.isBoolean())return R.create(4);if(t.isString())return R.create(2);if(t.isNumber()||t.isNull())return R.create(1)}else return R.create(64)}else{if(e.isArray())return R.create(64);if(e.isError())return R.create(16);if(e.isBoolean())return R.create(4);if(e.isString())return R.create(2);if(e.isNumber()||e.isNull())return R.create(1)}return R.create(128)}};let Cm=[[em,zo.CELL],[tm,zo.ERROR_TYPE],[nm,zo.ISBETWEEN],[rm,zo.ISBLANK],[im,zo.ISDATE],[am,zo.ISEMAIL],[om,zo.ISERR],[sm,zo.ISERROR],[cm,zo.ISEVEN],[lm,zo.ISFORMULA],[um,zo.ISLOGICAL],[dm,zo.ISNA],[fm,zo.ISNONTEXT],[pm,zo.ISNUMBER],[mm,zo.ISODD],[hm,zo.ISREF],[gm,zo.ISTEXT],[_m,zo.ISURL],[vm,zo.N],[ym,zo.NA],[bm,zo.SHEET],[xm,zo.SHEETS],[Sm,zo.TYPE]];var wm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=!0,n=!0,r=null;for(let i of e){if(i.isError())return i;if(i.isArray()){if(i.iterator(e=>{if(e!=null&&e.isError())return r=e,!1;(e!=null&&e.isBoolean()||e!=null&&e.isNumber())&&(t=t&&!!e.getValue(),n=!1)}),r)return r}else (i.isBoolean()||i.isNumber())&&(t=t&&!!i.getValue(),n=!1)}return n?E.create(p.VALUE):L.create(t)}},Tm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2),d(this,`needsReferenceObject`,!0)}calculate(e,t){let n=e,r=null;if(e.isReferenceObject()&&(n=e.toArrayValueObject(),r=e),n.isError())return n;if(t.isError())return t;if(!(t.isValueObject()&&t.isLambda()&&t.getLambdaPrivacyVarKeys().length===1))return E.create(p.VALUE);let i=t,a=n.isArray()?n.getRowCount():1,o=n.isArray()?n.getColumnCount():1;n=V(a,o,n);let s=[[]];for(let e=0;e<o;e++){let t=[];for(let r=0;r<a;r++){let i=n.get(r,e);t.push([i])}let o=B.create({calculateValueList:t,rowCount:a,columnCount:1,unitId:``,sheetId:``,row:0,column:0});if(r){let{startRow:t,startColumn:n}=r.getRangePosition(),i={startRow:t,startColumn:n+e,endRow:t+a-1,endColumn:n+e};o=this.createReferenceObject(r,i)}let c=i.execute(o);if(c.isArray()){let e=c.getRowCount(),t=c.getColumnCount();if(e>1||t>1)return E.create(p.CALC);c=c.get(0,0)}c.isNull()&&(c=R.create(0)),s[0].push(c)}return o===1?s[0][0]:B.create({calculateValueList:s,rowCount:1,columnCount:o,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}},Em=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2),d(this,`needsReferenceObject`,!0)}calculate(e,t){let n=e,r=null;if(e.isReferenceObject()&&(n=e.toArrayValueObject(),r=e),n.isError())return n;if(t.isError())return t;if(!(t.isValueObject()&&t.isLambda()&&t.getLambdaPrivacyVarKeys().length===1))return E.create(p.VALUE);let i=t,a=n.isArray()?n.getRowCount():1,o=n.isArray()?n.getColumnCount():1;n=V(a,o,n);let s=[];for(let e=0;e<a;e++){let t=[[]];for(let r=0;r<o;r++){let i=n.get(e,r);t[0].push(i)}let a=B.create({calculateValueList:t,rowCount:1,columnCount:o,unitId:``,sheetId:``,row:0,column:0});if(r){let{startRow:t,startColumn:n}=r.getRangePosition(),i={startRow:t+e,startColumn:n,endRow:t+e,endColumn:n+o-1};a=this.createReferenceObject(r,i)}let c=i.execute(a);if(c.isArray()){let e=c.getRowCount(),t=c.getColumnCount();if(e>1||t>1)return E.create(p.CALC);c=c.get(0,0)}c.isNull()&&(c=R.create(0)),s.push([c])}return a===1?s[0][0]:B.create({calculateValueList:s,rowCount:a,columnCount:1,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}},Dm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,0)}calculate(){return L.create(!1)}},Om=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n=L.create(!1)){let r=e;if(e.isArray()){let t=e.getRowCount(),n=e.getColumnCount();t===1&&n===1&&(r=e.get(0,0))}if(!r.isArray())return this._handleSingleObject(r,t,n);let i=Math.max(r.isArray()?r.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),a=Math.max(r.isArray()?r.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),o=V(i,a,r,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA));return o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n);return this._handleSingleObject(e,r,i)})}_handleSingleObject(e,t,n){return e.isError()?e:e.getValue()?t:n}},km=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(!e.isArray())return e.isError()?t:e;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e),a=V(n,r,t);return i.iterator((e,t,n)=>{e!=null&&e.isError()&&i.set(t,n,a.get(t,n))}),i}},Am=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError()&&e.getErrorType()!==p.NA)return e;if(t.isError())return t;if(!e.isArray())return e.isError()&&e.getErrorType()===p.NA?t:e;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e),a=V(n,r,t);return i.iterator((e,t,n)=>{e!=null&&e.isError()&&e.getErrorType()===p.NA&&i.set(t,n,a.get(t,n))}),i}},jm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,255)}calculate(...e){if(e.length%2!=0)return E.create(p.NA);for(let t=0;t<e.length;t++)if(e[t].isError())return e[t];let t=Math.max(...e.map(e=>e.isArray()?e.getRowCount():1)),n=Math.max(...e.map(e=>e.isArray()?e.getColumnCount():1)),r=e.map(e=>V(t,n,e,E.create(p.NA))),i=r[0].map((e,t,n)=>{for(let e=0;e<r.length;e+=2){let i=r[e].get(t,n)||Ua.create(),a=r[e+1].get(t,n)||Ua.create();if(i.isNull())continue;if(i.isError())return i;let o=i.getValue();if(i.isString()){if(`${o}`.toLocaleUpperCase()===`TRUE`)return a;if(`${o}`.toLocaleUpperCase()===`FALSE`)continue;return E.create(p.VALUE)}if(+o)return a.isNull()?E.create(p.NA):a}return E.create(p.NA)});return t===1&&n===1?i.get(0,0):i}},Mm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){return E.create(p.VALUE)}},Nm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,255)}calculate(...e){return E.create(p.VALUE)}},Pm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(...e){let t=this.getIndexNumValue(e[0]);if(typeof t!=`number`)return t;let n=this.getIndexNumValue(e[1]);if(typeof n!=`number`)return n;if(!(e[2].isValueObject()&&e[2].isLambda()))return E.create(p.VALUE);let r=e[2],i=[];for(let e=0;e<t;e++){i[e]==null&&(i[e]=[]);for(let t=0;t<n;t++){let n=r.execute(R.create(e+1),R.create(t+1));n.isArray()&&(n=n.get(0,0)),i[e][t]=n}}return new io(i)}isAsync(){return!0}},Fm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,255),d(this,`needsReferenceObject`,!0)}calculate(...e){let t=[],n=null,r=0,i=0;for(let a=0;a<e.length;a++){let o=e[a],s=o;if(s.isReferenceObject()&&(s=o.toArrayValueObject()),s.isError())return s;if(a===e.length-1){if(!(o.isValueObject()&&o.isLambda()))return E.create(p.VALUE);n=o}else t.push(o),r=Math.max(r,s.isArray()?s.getRowCount():1),i=Math.max(i,s.isArray()?s.getColumnCount():1)}let a=this._getResultArray(t,n,r,i);return a instanceof E?a:r===1&&i===1?a[0][0]:B.create({calculateValueList:a,rowCount:r,columnCount:i,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}_getResultArray(e,t,n,r){let i=[];for(let a=0;a<n;a++){let n=[];for(let i=0;i<r;i++){let r=[],o=!1;for(let t=0;t<e.length;t++){let s=e[t],c=null;if(s.isReferenceObject()&&(c=s,s=s.toArrayValueObject()),!s.isArray())if(a===0&&i===0){r.push(c||s);continue}else{n.push(E.create(p.NA)),o=!0;break}let l=s.get(a,i);if(!l){n.push(E.create(p.NA)),o=!0;break}if(c){let{startRow:e,startColumn:t}=c.getRangePosition(),n={startRow:e+a,startColumn:t+i,endRow:e+a,endColumn:t+i};l=this.createReferenceObject(c,n)}r.push(l)}if(o||r.length===0)continue;let s=t.execute(...r);if(s.isArray()){let e=s.getRowCount(),t=s.getColumnCount();if(e>1||t>1)return E.create(p.CALC);s=s.get(0,0)}s.isNull()&&(s=R.create(0)),n.push(s)}i.push(n)}return i}},Im=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;let t=+e.getValue();return Number.isNaN(t)?E.create(p.VALUE):L.create(!t)}},Lm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=!1,n=!0,r=null;for(let i of e){if(i.isError())return i;if(i.isArray()){if(i.iterator(e=>{if(e!=null&&e.isError())return r=e,!1;(e!=null&&e.isBoolean()||e!=null&&e.isNumber())&&(t=t||!!e.getValue(),n=!1)}),r)return r}else (i.isBoolean()||i.isNumber())&&(t=t||!!i.getValue(),n=!1)}return n?new E(p.VALUE):new L(t)}},Rm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3),d(this,`needsReferenceObject`,!0)}calculate(e,t,n){let r,i;e.isReferenceObject()?(r=e.toArrayValueObject(),i=e):(r=e,i=null);let a,o;return t.isReferenceObject()?(a=t.toArrayValueObject(),o=t):(a=t,o=null),r.isArray()?r.mapValue(e=>this._handleSingleValueObject(e,a,n,i,o)):this._handleSingleValueObject(r,a,n,i,o)}_handleSingleValueObject(e,t,n,r,i){if(e.isError())return e;if(t.isError())return t;if(n.isError())return n;if(!(n.isValueObject()&&n.isLambda()&&n.getLambdaPrivacyVarKeys().length===2))return E.create(p.VALUE);let a=n,o=t.isArray()?t.getRowCount():1,s=t.isArray()?t.getColumnCount():1,c=e;r&&(c=r);for(let e=0;e<o;e++)for(let n=0;n<s;n++){let r=t.isArray()?t.get(e,n):t;if(r.isError())return r;if(i){let{startRow:t,startColumn:a}=i.getRangePosition(),o={startRow:t+e,startColumn:a+n,endRow:t+e,endColumn:a+n};r=this.createReferenceObject(i,o)}let o=a.execute(c,r);if(o.isError())return o;o.isNull()&&(o=R.create(0)),c=o}return c.isReferenceObject()?c.toArrayValueObject():c}},zm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3),d(this,`needsReferenceObject`,!0)}calculate(e,t,n){let r=e,i=null;e.isReferenceObject()&&(r=e.toArrayValueObject(),i=e),r=r;let a=t,o=null;if(t.isReferenceObject()&&(a=t.toArrayValueObject(),o=t),a=a,r.isError())return r;if(a.isError())return a;if(n.isError())return n;if(!(n.isValueObject()&&n.isLambda()&&n.getLambdaPrivacyVarKeys().length===2))return E.create(p.VALUE);if(r.isArray()){let e=r.getRowCount(),t=r.getColumnCount();if(e>1||t>1)return E.create(p.CALC);r=r.get(0,0)}return this._getResult(r,a,n,i,o)}_getResult(e,t,n,r,i){let a=[],o=t.isArray()?t.getRowCount():1,s=t.isArray()?t.getColumnCount():1,c=e;r&&(c=r);for(let e=0;e<o;e++){let r=[];for(let a=0;a<s;a++){if(c.isError()){r.push(c);continue}let o=t.isArray()?t.get(e,a):t;if(o.isError()){c=o,r.push(o);continue}if(i){let{startRow:t,startColumn:n}=i.getRangePosition(),r={startRow:t+e,startColumn:n+a,endRow:t+e,endColumn:n+a};o=this.createReferenceObject(i,r)}let s=n.execute(c,o);if(s.isArray()){let e=s.getRowCount(),t=s.getColumnCount();if(e>1||t>1)return E.create(p.CALC);s=s.get(0,0)}s.isNull()&&(s=R.create(0)),c=s,r.push(s)}a.push(r)}return o===1&&s===1?a[0][0]:B.create({calculateValueList:a,rowCount:o,columnCount:s,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}},Bm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3)}calculate(e,...t){if(e.isError())return e;let n=t.length%2!=0,r=n?t[t.length-1]:Ua.create();return!e.isArray()&&!t.some(e=>e.isArray())?this._handleNonArrayInputs(e,t,r,n):this._handleArrayInputs(e,t,r,n)}_handleNonArrayInputs(e,t,n,r){for(let n=0;n<t.length-(r?1:0);n+=2){let r=t[n],i=t[n+1];if(!r.isNull()){if(r.isError())return r;if(`${e.getValue()}`.toLocaleLowerCase()===`${r.getValue()}`.toLocaleLowerCase())return i.isNull()?E.create(p.NA):i}}return n.isNull()?E.create(p.NA):n}_handleArrayInputs(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,...t.map(e=>e.isArray()?e.getRowCount():1),n.isArray()?n.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,...t.map(e=>e.isArray()?e.getColumnCount():1),n.isArray()?n.getColumnCount():1),o=V(i,a,e),s=t.map(e=>V(i,a,e,E.create(p.NA))),c=V(i,a,n,E.create(p.NA));return o.map((e,t,n)=>{for(let i=0;i<s.length-(r?1:0);i+=2){let r=s[i].get(t,n)||Ua.create(),a=s[i+1].get(t,n)||Ua.create();if(!r.isNull()){if(r.isError()||e.isError())return r.isError()?r:e;if(`${e.getValue()}`.toLocaleLowerCase()===`${r.getValue()}`.toLocaleLowerCase())return a.isNull()?E.create(p.NA):a}}let i=c.get(t,n)||Ua.create();return i.isNull()?E.create(p.NA):i})}},Vm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,0)}calculate(){return L.create(!0)}},Hm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=0,n=!0,r=null;for(let i of e){if(i.isError())return i;if(i.isArray()){if(i.iterator(e=>{if(e!=null&&e.isError())return r=e,!1;(e!=null&&e.isBoolean()||e!=null&&e.isNumber())&&(e.getValue()&&t++,n=!1)}),r)return r}else (i.isBoolean()||i.isNumber())&&(i.getValue()&&t++,n=!1)}return n?E.create(p.VALUE):L.create(t%2==1)}};let Um=[[wm,Bo.AND],[Tm,Bo.BYCOL],[Em,Bo.BYROW],[Dm,Bo.FALSE],[Om,Bo.IF],[km,Bo.IFERROR],[Am,Bo.IFNA],[jm,Bo.IFS],[Mm,Bo.LAMBDA],[Nm,Bo.LET],[Pm,Bo.MAKEARRAY],[Fm,Bo.MAP],[Im,Bo.NOT],[Lm,Bo.OR],[Rm,Bo.REDUCE],[zm,Bo.SCAN],[Bm,Bo.SWITCH],[Vm,Bo.TRUE],[Hm,Bo.XOR]];var Wm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,5)}calculate(e,t,n,r,i){if(e.isError())return e;if(t.isError())return t;if(n!=null&&n.isError())return n;if(r!=null&&r.isError())return r;if(i!=null&&i.isError())return i;let a=n==null?R.create(1):n,o=r==null?L.create(!0):r,s=i==null?z.create(``):i,c=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,a.isArray()?a.getRowCount():1,o.isArray()?o.getRowCount():1,s.isArray()?s.getRowCount():1),l=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,a.isArray()?a.getColumnCount():1,o.isArray()?o.getColumnCount():1,s.isArray()?s.getColumnCount():1),u=V(c,l,e,E.create(p.NA)),d=V(c,l,t,E.create(p.NA)),f=V(c,l,a,E.create(p.NA)),m=V(c,l,o,E.create(p.NA)),h=V(c,l,s,E.create(p.NA));return u.map((e,t,n)=>{let r=d.get(t,n)||E.create(p.NA),i=f.get(t,n)||E.create(p.NA),a=m.get(t,n)||E.create(p.NA),o=h.get(t,n)||E.create(p.NA);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:o.isError()?o:this._calculateSingleCell(e,r,i,a,o)})}_calculateSingleCell(e,t,n,r,i){let a=Number.parseInt(`${Number(e.getValue())-1}`),o=Number.parseInt(`${Number(t.getValue())-1}`),s=Number.parseInt(`${Number(n.getValue())}`);if(Number.isNaN(a)||Number.isNaN(o)||Number.isNaN(s)||s<1||s>4)return E.create(p.VALUE);let c=Gm(s),l=this.getZeroOrOneByOneDefault(r),u=nn(`${i.getValue()}`),d={startRow:a,startColumn:o,endRow:a,endColumn:o,startAbsoluteRefType:c,endAbsoluteRefType:c},f=r&&!l?Qs(d):Ut(d);return z.create(u===``?f:`${u}!${f}`)}};function Gm(e){switch(e){case 1:return t.AbsoluteRefType.ALL;case 2:return t.AbsoluteRefType.ROW;case 3:return t.AbsoluteRefType.COLUMN;case 4:return t.AbsoluteRefType.NONE;default:return t.AbsoluteRefType.ALL}}var Km=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1),d(this,`needsReferenceObject`,!0)}calculate(e){return e.isReferenceObject()?R.create(1):E.create(p.VALUE)}},qm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,255),d(this,`needsReferenceObject`,!0)}calculate(e,...t){let n=e;if(n.isError())return n;if(n.isReferenceObject()&&(n=n.toArrayValueObject()),!n.isArray()){let e=n.convertToNumberObjectValue();return e.isError()?e:t[Math.trunc(+e.getValue())-1]||E.create(p.VALUE)}let r=n.isArray()?n.getRowCount():1,i=n.isArray()?n.getColumnCount():1;t.forEach((e,t)=>{if(e.isArray()){let t=e;r=Math.max(r,t.getRowCount()),i=Math.max(i,t.getColumnCount())}else r=Math.max(r,1),i=Math.max(i,1)});let a=V(r,i,n,E.create(p.NA)),o=t.map(e=>{let t=e;return t.isReferenceObject()&&(t=t.toArrayValueObject()),V(r,i,t,E.create(p.NA))});return a.map((e,t,n)=>{if(e.isError())return e;let r=e.convertToNumberObjectValue();if(r.isError())return r;let i=o[Math.trunc(+r.getValue())-1],a=(i==null?void 0:i.get(t,n))||E.create(p.VALUE);return a!=null&&a.isNull()&&(a=R.create(0)),a})}},Jm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,255)}calculate(e,...t){if(e.isError())return e;let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=[];for(let a=0;a<t.length;a++){let o=t[a];if(o.isArray()){let e=o.getRowCount(),t=o.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);o=o.get(0,0)}if(o.isString()&&(o=o.convertToNumberObjectValue()),o.isError())return o;let s=Math.trunc(+o.getValue());if(s===0||Math.abs(s)>r)return E.create(p.VALUE);let c=e;r>1&&(c=s<0?e.slice(void 0,[s+r,s+1+r]):e.slice(void 0,[s-1,s]));for(let t=0;t<n;t++)i[t]||(i[t]=[]),e.isArray()?i[t].push(c.get(t,0)):i[t].push(e)}return B.create({calculateValueList:i,rowCount:i.length,columnCount:i[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}},Ym=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,255)}calculate(e,...t){if(e.isError())return e;let n=e.isArray()?e.getRowCount():1,r=[];for(let i=0;i<t.length;i++){let a=t[i];if(a.isArray()){let e=a.getRowCount(),t=a.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);a=a.get(0,0)}if(a.isString()&&(a=a.convertToNumberObjectValue()),a.isError())return a;let o=Math.trunc(+a.getValue());if(o===0||Math.abs(o)>n)return E.create(p.VALUE);let s=e;n>1&&(s=o<0?e.slice([o+n,o+1+n]):e.slice([o-1,o])),e.isArray()?r.push(s.getArrayValue()[0]):r.push([e])}return B.create({calculateValueList:r,rowCount:r.length,columnCount:r[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}},Xm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,1)}calculate(e){if(e==null)return R.create(this.column+1);if(e.isError())return e;if(!e.isArray())return E.create(p.NA);let t=e.getCurrentColumn(),n=e.getColumnCount(),r=[];for(let e=0;e<n;e++)r.push(R.create(t+e+1));let i={calculateValueList:[r],rowCount:1,columnCount:n,unitId:this.unitId||``,sheetId:this.subUnitId||``,row:this.row,column:this.column};return B.create(i)}},Zm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isError())return e;if(e.isString()||e.isNumber()||e.isBoolean())return R.create(1);if(!e.isArray())return E.create(p.NA);let t=e.getColumnCount();return R.create(t)}},Qm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?R.create(0):n,i=e.isArray()?e.getRowCount():1,a=e.isArray()?e.getColumnCount():1,o=Math.max(t.isArray()?t.getRowCount():1,r.isArray()?r.getRowCount():1),s=Math.max(t.isArray()?t.getColumnCount():1,r.isArray()?r.getColumnCount():1),c=V(o,s,t,E.create(p.NA)),l=V(o,s,r,E.create(p.NA));if(o>1||s>1)return c.mapValue((t,n,r)=>{let o=l.get(n,r);if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);let{isError:s,errorObject:c}=this._checkRowsColumns(t,o,i,a);return s?c:e.isArray()?E.create(p.VALUE):e});if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);let u=t.isArray()?t.get(0,0):t,d=r.isArray()?r.get(0,0):r,{isError:f,errorObject:m,rowsValue:h,columnsValue:g}=this._checkRowsColumns(u,d,i,a);return f?m:this._getResultArray(e,h,g,i,a)}_checkRowsColumns(e,t,n,r){if(e.isError())return{isError:!0,errorObject:e};if(t.isError())return{isError:!0,errorObject:t};let i=Math.trunc(+e.getValue()),a=Math.trunc(+t.getValue());return Number.isNaN(i)||Number.isNaN(a)?{isError:!0,errorObject:E.create(p.VALUE)}:Math.abs(i)>=n||Math.abs(a)>=r?{isError:!0,errorObject:E.create(p.CALC)}:{isError:!1,rowsValue:i,columnsValue:a}}_getResultArray(e,t,n,r,i){let a=t>=0?[t,r]:[0,r+t],o=n>=0?[n,i]:[0,i+n],s;return s=t===0&&n===0?e:t===0?e.slice(void 0,o):n===0?e.slice(a,void 0):e.slice(a,o),s=s.map(e=>e.isNull()?R.create(0):e),r-t===1&&i-n===1?s.get(0,0):s}},$m=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=e.isArray()?e.getRowCount():1,a=e.isArray()?e.getColumnCount():1,o=t,s=n==null?R.create(a):n,c=r==null?E.create(p.NA):r;t.isNull()&&(o=R.create(i)),s.isNull()&&(s=R.create(a));let l=Math.max(o.isArray()?o.getRowCount():1,s.isArray()?s.getRowCount():1),u=Math.max(o.isArray()?o.getColumnCount():1,s.isArray()?s.getColumnCount():1),d=V(l,u,o,E.create(p.NA)),f=V(l,u,s,E.create(p.NA));if(l>1||u>1)return d.mapValue((t,n,r)=>{let o=f.get(n,r);if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);let{isError:s,errorObject:l}=this._checkRowsColumnsPadWith(t,o,c,i,a);return s?l:e.isArray()?e.get(0,0):e});if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);let m=o.isArray()?o.get(0,0):o,h=s.isArray()?s.get(0,0):s,{isError:g,errorObject:_,rowsValue:v,columnsValue:y,padWithObject:b}=this._checkRowsColumnsPadWith(m,h,c,i,a);return g?_:this._getResultArray(e,v,y,b,i,a)}_checkRowsColumnsPadWith(e,t,n,r,i){if(e.isError())return{isError:!0,errorObject:e};if(t.isError())return{isError:!0,errorObject:t};let a=Math.trunc(+e.getValue()),o=Math.trunc(+t.getValue());if(Number.isNaN(a)||Number.isNaN(o)||Math.abs(a)<r||Math.abs(o)<i)return{isError:!0,errorObject:E.create(p.VALUE)};let s=n;if(n.isArray()){let e=n.getRowCount(),t=n.getColumnCount();if(e>1||t>1)return{isError:!0,errorObject:E.create(p.VALUE)};s=n.get(0,0)}return{isError:!1,rowsValue:a,columnsValue:o,padWithObject:s}}_getResultArray(e,t,n,r,i,a){let o=[];o=e.isArray()?e.map(e=>e.isNull()?R.create(0):e).getArrayValue():[[e]];let s=Math.max(0,t-i),c=Math.max(0,n-a);for(let e=0;e<s;e++)o.push(Array(a).fill(r));for(let e=0;e<c;e++)o.forEach(e=>{e.push(r)});return t===1&&n===1?o[0][0]:B.create({calculateValueList:o,rowCount:o.length,columnCount:o[0].length,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}},eh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?E.create(p.CALC):n;if(e.isError())return e;if(t.isError())return t;let i=e.isArray()?e.getRowCount():1,a=e.isArray()?e.getColumnCount():1,o=t.isArray()?t.getRowCount():1,s=t.isArray()?t.getColumnCount():1;return o>1&&s>1||o===1&&s!==a||s===1&&o!==i?E.create(p.VALUE):i===1&&a===1?this._getResultArrayByR1C1(e,t,r):o===1?s===a?this._getResultArrayByR1(i,a,e,t,r):E.create(p.VALUE):s===1?o===i?this._getResultArrayByC1(i,a,e,t,r):E.create(p.VALUE):r}_getResultArrayByR1C1(e,t,n){let r=e,i=t;return r.isArray()&&(r=r.get(0,0)),i.isArray()&&(i=i.get(0,0)),i.isString()&&(i=i.convertToNumberObjectValue()),i.isError()?i:+i.getValue()?r:n}_getResultArrayByR1(e,t,n,r,i){let a=[];for(let i=0;i<t;i++){let t=r.get(0,i);if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;if(+t.getValue())for(let t=0;t<e;t++){a[t]||(a[t]=[]);let e=n.get(t,i);a[t].push(e)}}return a.length===0?i:B.create({calculateValueList:a,rowCount:a.length,columnCount:a[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}_getResultArrayByC1(e,t,n,r,i){let a=[];for(let i=0;i<e;i++){let e=r.get(i,0);if(e.isString()&&(e=e.convertToNumberObjectValue()),e.isError())return e;if(!+e.getValue())continue;let o=[];for(let e=0;e<t;e++){let t=n.get(i,e);o.push(t)}a.push(o)}return a.length===0?i:B.create({calculateValueList:a,rowCount:a.length,columnCount:a[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}},th=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1),d(this,`needsReferenceObject`,!0),d(this,`needsFormulaDataModel`,!0)}calculate(e){var t;if(!e.isReferenceObject())return E.create(p.NA);let n=e.getUnitId(),r=e.getSheetId(),i=(t=e.getUnitData()[n])==null||(t=t[r])==null?void 0:t.cellData,{startRow:a,startColumn:o}=e.getRangePosition(),s=e.toArrayValueObject().mapValue((e,t,s)=>{let c=i.getValue(a+t,o+s);if(c!=null&&c.f||c!=null&&c.si){let e=this._formulaDataModel.getFormulaStringByCell(a+t,o+s,r,n);return z.create(e)}return E.create(p.NA)});return s.getRowCount()===1&&s.getColumnCount()===1?s.get(0,0):s}},nh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){if(e.isError())return e;if(t.isError())return E.create(p.REF);if(!t.isArray()||n.isError()||r!=null&&r.isError())return E.create(p.NA);let i=this.getZeroOrOneByOneDefault(r);if(i==null)return E.create(p.VALUE);let a=this.getIndexNumValue(n);if(a instanceof E)return a;let o=t.slice([0,1]),s=t.slice([a-1,a]);return o==null||s==null?E.create(p.REF):e.isArray()?e.map(e=>this._handleSingleObject(e,o,s,i)):this._handleSingleObject(e,o,s,i)}_handleSingleObject(e,t,n,r){return r===0?this.equalSearch(e,t,n):this.binarySearch(e,t,n)}},rh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=Math.max(...e.map(e=>e.isArray()?e.getRowCount():1)),n=[];for(let r=0;r<e.length;r++){let i=e[r];if(i.isError())return i;let a=i.isArray()?i.getRowCount():1,o=i.isArray()?i.getColumnCount():1;for(let e=0;e<t;e++){n[e]||(n[e]=[]);for(let t=0;t<o;t++){let r=i;i.isArray()&&(r=i.get(e,t)),e>a-1||!r?n[e].push(E.create(p.NA)):n[e].push(r)}}}return B.create({calculateValueList:n,rowCount:n.length,columnCount:n[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}},ih=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=e;if(e.isArray()&&(n=e.get(0,0)),n.isError())return n;let r=t;if(t!=null&&t.isArray()&&(r=t.get(0,0)),r!=null&&r.isError())return r;let i=`${n.getValue()}`;n.isNull()&&(i=``);let a=i;return r&&(a=`${r.getValue()}`,r.isNull()?a=`0`:r.isBoolean()&&(a=a.toLocaleUpperCase())),z.create(a,{isHyperlink:!0,hyperlinkUrl:i})}},ah=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let a=Math.max(e.isArray()?e.getRowCount():1,t!=null&&t.isArray()?t.getRowCount():1,n!=null&&n.isArray()?n.getRowCount():1,r!=null&&r.isArray()?r.getRowCount():1,i!=null&&i.isArray()?i.getRowCount():1),o=Math.max(e.isArray()?e.getColumnCount():1,t!=null&&t.isArray()?t.getColumnCount():1,n!=null&&n.isArray()?n.getColumnCount():1,r!=null&&r.isArray()?r.getColumnCount():1,i!=null&&i.isArray()?i.getColumnCount():1),s=V(a,o,e,E.create(p.NA)),c=t?V(a,o,t,E.create(p.NA)):void 0,l=n?V(a,o,n,E.create(p.NA)):void 0,u=r?V(a,o,r,E.create(p.NA)):void 0,d=i?V(a,o,i,E.create(p.NA)):void 0,f=s.mapValue((e,t,n)=>{if(e.isError())return e;let r=c?c.get(t,n):void 0;if(r!=null&&r.isError())return r;let i=l?l.get(t,n):void 0;if(i!=null&&i.isError())return i;let a=u?u.get(t,n):void 0;if(a!=null&&a.isError())return a;let o=d?d.get(t,n):void 0;return o!=null&&o.isError()?o:this._handleSingleObject(e,r,i,a,o)});return a===1&&o===1?f.get(0,0):f}_handleSingleObject(e,t,n,r,i){if(!e.isString())return E.create(p.VALUE);let a=e.getValue(),o=``;t&&(t.isBoolean()?o=t.getValue()?`TRUE`:`FALSE`:t.isNull()||(o=`${t.getValue()}`));let s=n==null?R.create(0):n;if(s.isString()&&(s=s.convertToNumberObjectValue()),s.isError())return s;let c=Math.abs(Math.trunc(+s.getValue()));if(c<0||c>3||[0,1,2].includes(c)&&(r||i))return E.create(p.VALUE);let l=r==null?R.create(0):r;if(l.isString()&&(l=l.convertToNumberObjectValue()),l.isError())return l;let u=Math.ceil(+l.getValue()),d=i==null?R.create(0):i;if(d.isString()&&(d=d.convertToNumberObjectValue()),d.isError())return d;let f=Math.ceil(+d.getValue());return c===3&&u<1&&f<1?E.create(p.VALUE):z.create(``,{isImage:!0,imageInfo:{source:a,altText:o,sizing:c,height:u,width:f}})}},oh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,4),d(this,`needsReferenceObject`,!0)}calculate(e,t,n,r){if(e.isError())return e;let i=this._getReferenceCounts(e),a=t;t.isReferenceObject()&&(a=t.toArrayValueObject());let o=n;o!=null&&o.isReferenceObject()&&(o=n.toArrayValueObject());let s=r==null?R.create(1):r;s.isReferenceObject()&&(s=r.toArrayValueObject());let c=Math.max(a.isArray()?a.getRowCount():1,o!=null&&o.isArray()?o.getRowCount():1,s.isArray()?s.getRowCount():1),l=Math.max(a.isArray()?a.getColumnCount():1,o!=null&&o.isArray()?o.getColumnCount():1,s.isArray()?s.getColumnCount():1);if(c===1&&l===1)return this._handleSingleObject(e,a.isArray()?a.get(0,0):a,o?o.isArray()?o.get(0,0):o:void 0,s.isArray()?s.get(0,0):s,i);{let t=V(c,l,a,E.create(p.NA)),n=o?V(c,l,o,E.create(p.NA)):[],r=V(c,l,s,E.create(p.NA));return t.mapValue((t,a,s)=>{let c=o?n.get(a,s):void 0,l=r.get(a,s),u=this._handleSingleObject(e,t,c,l,i);return u.isReferenceObject()?u.getCellByPosition():u})}}_handleSingleObject(e,t,n,r,i){let a,o,s;if(n){let{isError:e,errorObject:i,variants:c}=X(t,n,r);if(e)return i;a=c[0],o=c[1],s=c[2]}else{let{isError:e,errorObject:n,variants:i}=X(t,r);if(e)return n;a=i[0],s=i[1]}let c=Math.floor(+s.getValue());if(c<0)return E.create(p.VALUE);if(c>i.length)return E.create(p.REF);let l=i[c-1],u=0,d=0;if(l.rowCount===1&&!n?d=Math.floor(+a.getValue()):(u=Math.floor(+a.getValue()),n&&(d=Math.floor(+o.getValue()))),u<0||d<0)return E.create(p.VALUE);if(u>l.rowCount||d>l.columnCount)return E.create(p.REF);let f=e;return c>1&&(f=e.getCubeValues()[c-1]),f.isReferenceObject()?this._calculateReferenceObject(f,u,d):this._calculateArrayObject(f,u,d)}_getReferenceCounts(e){let t=[{rowCount:1,columnCount:1}];return e.isReferenceObject()?t=[{rowCount:e.getRowCount(),columnCount:e.getColumnCount()}]:e.isCube()?t=e.getCubeValues().map(e=>({rowCount:e.getRowCount(),columnCount:e.getColumnCount()})):e.isArray()&&(t=[{rowCount:e.getRowCount(),columnCount:e.getColumnCount()}]),t}_calculateReferenceObject(e,t,n){let{startRow:r,endRow:i,startColumn:a,endColumn:o}=e.getRangePosition(),s=0,c=0,l=0,u=0;if(t===0?(s=r,c=i):s=c=r+t-1,n===0?(l=a,u=o):l=u=a+n-1,s>i||l>o)return E.create(p.REF);let d={startRow:s,startColumn:l,endRow:c,endColumn:u};return this.createReferenceObject(e,d)}_calculateArrayObject(e,t,n){return!e.isArray()||t===0&&n===0?e:t===0?e.slice(void 0,[n-1,n]):n===0?e.slice([t-1,t],void 0):e.get(t-1,n-1)}},sh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}isAddress(){return!0}calculate(e,t){if(e.isError())return e;if(t!=null&&t.isError())return t;let n=this.getZeroOrOneByOneDefault(t);n==null&&(n=1);let r=e;if(e.isArray()){let t=e.getRowCount(),n=e.getColumnCount();if(t>1||n>1)return e.map(()=>E.create(p.VALUE));r=e.getFirstCell()}return this._handleSingleObject(r,n)}_handleSingleObject(e,n){let r=`${e.getValue()}`;if(r.trim()===``)return E.create(p.REF);let i=this._convertToDefinedName(r);if(n===0){let{range:e,sheetName:t,unitId:n}=Zs(i),r=new ao(e);return r.setForcedUnitIdDirect(n),r.setForcedSheetName(t),this._setDefault(r)}if(vt(i))return this._setDefault(new oo(i));if(bt(i))return this._setDefault(new co(i));if(xt(i))return this._setDefault(new so(i));let{range:a,sheetName:o,unitId:s}=Gn(i);if(Number.isNaN(a.startRow)||a.endRow+1>t.MAX_ROW_COUNT||Number.isNaN(a.startColumn)||a.endColumn+1>t.MAX_COLUMN_COUNT)return E.create(p.REF);let c=new ao(a);return c.setForcedUnitIdDirect(s),c.setForcedSheetName(o),this._setDefault(c)}_setDefault(e){return this.unitId==null||this.subUnitId==null?E.create(p.REF):(e.setDefaultUnitId(this.unitId),e.setDefaultSheetId(this.subUnitId),e)}_convertToDefinedName(e){let t=this.getDefinedName(e);if(t==null)return e;let n=t.formulaOrRefString;return n==null?e:n.startsWith(_.EQUALS)?n.slice(1):n}},ch=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3),d(this,`needsExpandParams`,!0)}calculate(e,t,n){return e.isError()?e:t.isError()?E.create(p.REF):t.isArray()?n!=null&&n.isError()?n:t.getColumnCount()===1||t.getRowCount()===1?n!=null&&!n.isArray()?E.create(p.REF):this._handleVector(e,t,n):this._handleArray(e,t):E.create(p.VALUE)}_handleVector(e,t,n){let r=n;if(r==null)r=t;else if(r.getRowCount()!==t.getRowCount()||r.getColumnCount()!==t.getColumnCount())return E.create(p.REF);return e.isArray()?e.map(e=>this.binarySearch(e,t,r)):this.binarySearch(e,t,r)}_handleArray(e,t){let n=t.getRowCount(),r=t.getColumnCount(),i,a;return r>n?(i=t.slice([0,1]),a=t.slice([n-1,n])):(i=t.slice(void 0,[0,1]),a=t.slice(void 0,[r-1,r])),i==null||a==null?E.create(p.VALUE):e.isArray()?e.map(e=>this.binarySearch(e,i,a)):this.binarySearch(e,i,a)}},lh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){if(e.isError())return e;if(t.isError())return E.create(p.REF);if(!t.isArray())return E.create(p.VALUE);let r=t.getRowCount(),i=t.getColumnCount();if(r!==1&&i!==1||n!=null&&n.isError())return E.create(p.NA);let a=this.getMatchTypeValue(n);return a==null?E.create(p.VALUE):e.isArray()?e.map(e=>this._handleSingleObject(e,t,a)):this._handleSingleObject(e,t,a)}_handleSingleObject(e,t,n){let r=e.isNull()?R.create(0):e,i=this._getSearchModeValue(n),a=t.orderSearch(r,i);if(a==null)return E.create(p.NA);if(a instanceof E)return a;let o=t.getRowCount()===1?a.column+1:a.row+1;return R.create(o)}_getSearchModeValue(e){switch(e){case 1:return yr.MIN;case 0:return yr.NORMAL;case-1:return yr.MAX}}},uh=class extends no{constructor(e,t=[]){super(e),d(this,`_areas`,[]),this._areas=t}dispose(){this._areas.forEach(e=>{e.forEach(e=>e.dispose())}),this._areas=[],super.dispose()}getAreas(){return this._areas}setAreas(e){this._areas=e}addArea(e){Array.isArray(e)?this._areas.push(e):this._areas.push([e])}_flatAreas(){return this._areas.flat()}isMultiArea(){return!0}isRange(){return!1}isCell(){return!1}isRow(){return!1}isColumn(){return!1}getRowCount(){let e=0;for(let t of this._flatAreas())t.isError()||(e+=t.getRowCount());return e}getColumnCount(){let e=0;for(let t of this._flatAreas())t.isError()||(e+=t.getColumnCount());return e}isExceedRange(){return this._flatAreas().some(e=>e.isError()?!1:e.isExceedRange())}setRefOffset(e=0,t=0){super.setRefOffset(e,t),this._flatAreas().forEach(n=>{n.isError()||n.setRefOffset(e,t)})}_getReferenceArea(){return this._flatAreas().find(e=>!e.isError())}getUnitId(){var e,t;return(e=(t=this._getReferenceArea())==null?void 0:t.getUnitId())==null?super.getUnitId():e}getSheetId(){var e,t;return(e=(t=this._getReferenceArea())==null?void 0:t.getSheetId())==null?super.getSheetId():e}getActiveSheetRowCount(){var e,t;return(e=(t=this._getReferenceArea())==null?void 0:t.getActiveSheetRowCount())==null?0:e}getActiveSheetColumnCount(){var e,t;return(e=(t=this._getReferenceArea())==null?void 0:t.getActiveSheetColumnCount())==null?0:e}iterator(e){for(let t of this._areas){let n=!1;for(let r of t){if(r.isError())continue;let t=!1;if(r.iterator((r,i,a)=>{let o=e(r,i,a);return o===!1?(t=!0,n=!0,!1):o}),t)break}if(n)return}}getFirstCell(){let e=this._getReferenceArea();return e?e.getFirstCell():super.getFirstCell()}toArrayValueObject(){var e,t;let n=this._areas.length;if(n===0)return lo([],0,0);let r=(e=(t=this._areas[0])==null?void 0:t.length)==null?0:e,i=[];for(let e=0;e<n;e++){let t=this._areas[e];if(t){i[e]=i[e]||[];for(let n=0;n<r;n++){let r=t[n];if(!r)continue;if(r.isError()){i[e][n]=r;continue}let a=null;r.iterator(e=>(a=e==null?null:e,!1)),a!=null&&(i[e][n]=a),i[e][n]=Ua.create()}}}return lo(i,n,r)}getRangePosition(){let e=this._flatAreas();if(!e.length)return super.getRangePosition();let t=1/0,n=1/0,r=-1/0,i=-1/0;for(let a of e){if(a.isError())continue;let{startRow:e,startColumn:o,endRow:s,endColumn:c}=a.getRangePosition();!Number.isFinite(e)||!Number.isFinite(o)||!Number.isFinite(s)||!Number.isFinite(c)||(e<t&&(t=e),o<n&&(n=o),s>r&&(r=s),c>i&&(i=i<c?c:i))}return!Number.isFinite(t)||!Number.isFinite(n)||!Number.isFinite(r)||!Number.isFinite(i)?super.getRangePosition():{startRow:t,startColumn:n,endRow:r,endColumn:i}}toUnitRange(){return{range:this.getRangePosition(),sheetId:this.getSheetId(),unitId:this.getUnitId()}}getRangeData(){let e=this._flatAreas();if(!e.length)return super.getRangeData();let t=1/0,n=1/0,r=-1/0,i=-1/0;for(let a of e){if(a.isError())continue;let{startRow:e,startColumn:o,endRow:s,endColumn:c}=a.getRangeData();!Number.isFinite(e)||!Number.isFinite(o)||!Number.isFinite(s)||!Number.isFinite(c)||(e<t&&(t=e),o<n&&(n=o),s>r&&(r=s),c>i&&(i=c))}return!Number.isFinite(t)||!Number.isFinite(n)||!Number.isFinite(r)||!Number.isFinite(i)?super.getRangeData():{startRow:t,startColumn:n,endRow:r,endColumn:i}}},dh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,5),d(this,`needsReferenceObject`,!0)}isAddress(){return!0}calculate(e,t,n,r,i){if(e.isError())return e;if(t.isError())return t;if(n.isError())return n;if(r!=null&&r.isError())return r;if(i!=null&&i.isError())return i;if(!e.isReferenceObject())return E.create(p.VALUE);let a=e.getRowCount(),o=e.getColumnCount(),s=t;s.isReferenceObject()&&(s=s.toArrayValueObject());let c=n;c.isReferenceObject()&&(c=c.toArrayValueObject());let l=r==null?R.create(a):r;l.isReferenceObject()&&(l=l.toArrayValueObject()),l.isNull()&&(l=R.create(a));let u=i==null?R.create(o):i;u.isReferenceObject()&&(u=u.toArrayValueObject()),u.isNull()&&(u=R.create(o));let d=Math.max(s.isArray()?s.getRowCount():1,c.isArray()?c.getRowCount():1,l.isArray()?l.getRowCount():1,u.isArray()?u.getRowCount():1),f=Math.max(s.isArray()?s.getColumnCount():1,c.isArray()?c.getColumnCount():1,l.isArray()?l.getColumnCount():1,u.isArray()?u.getColumnCount():1);if(s=s,c=c,l=l,u=u,d===1&&f===1)return s=s.isArray()?s.get(0,0):s,c=c.isArray()?c.get(0,0):c,l=l.isArray()?l.get(0,0):l,u=u.isArray()?u.get(0,0):u,this._handleSingleObject(e,s,c,l,u);let m=V(d,f,s,E.create(p.NA)),h=V(d,f,c,E.create(p.NA)),g=V(d,f,l,E.create(p.NA)),_=V(d,f,u,E.create(p.NA)),v=[];return m.iterator((t,n,r)=>{let i=h.get(n,r),a=g.get(n,r),o=_.get(n,r);if(v[n]=v[n]||[],t==null){v[n][r]=E.create(p.NA);return}if(t.isError()){v[n][r]=t;return}if(i.isError()){v[n][r]=i;return}if(a.isError()){v[n][r]=a;return}if(o.isError()){v[n][r]=o;return}let s=this._handleSingleObject(e,t,i,a,o);v[n][r]=s}),new uh(``,v)}_handleSingleObject(e,n,r,i,a){let{startRow:o,startColumn:s}=e.getRangePosition(),c=n;if(c.isString()&&(c=c.convertToNumberObjectValue()),c.isError())return c;let l=r;if(l.isString()&&(l=l.convertToNumberObjectValue()),l.isError())return l;let u=+c.getValue(),d=+l.getValue();if(typeof u!=`number`||typeof d!=`number`)return E.create(p.VALUE);let f=o+u,m=s+d;if(f<0||m<0||f>=t.MAX_ROW_COUNT||m>=t.MAX_COLUMN_COUNT)return E.create(p.REF);let h=this.getIndexNumValue(i),g=this.getIndexNumValue(a);if(typeof h!=`number`||typeof g!=`number`)return E.create(p.VALUE);if(h===0||g===0)return E.create(p.REF);let _=h>0?f+h-1:f+h+1,v=g>0?m+g-1:m+g+1;if(_<0||v<0||_>=t.MAX_ROW_COUNT||v>=t.MAX_COLUMN_COUNT)return E.create(p.REF);let y={startRow:f<_?f:_,startColumn:m<v?m:v,endRow:f>_?f:_,endColumn:m>v?m:v};return this.createReferenceObject(e,y)}},fh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,1)}calculate(e){if(e==null)return R.create(this.row+1);if(e.isError())return e;if(!e.isArray())return E.create(p.NA);let t=e.getCurrentRow(),n=e.getRowCount(),r=[];for(let e=0;e<n;e++)r.push([R.create(t+e+1)]);let i={calculateValueList:r,rowCount:n,columnCount:1,unitId:this.unitId||``,sheetId:this.subUnitId||``,row:this.row,column:this.column};return B.create(i)}},ph=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isError())return e;if(e.isString()||e.isNumber()||e.isBoolean())return R.create(1);if(!e.isArray())return E.create(p.NA);let t=e.getRowCount();return R.create(t)}},mh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=t==null?R.create(1):t,a=n==null?R.create(1):n,o=r==null?L.create(!1):r;if(i.isNull()&&(i=R.create(1)),o.isArray()){let t=o.getRowCount(),n=o.getColumnCount();if(t===1&&n===1){let t=o.get(0,0);return this._handleSingleObject(e,i,a,t)}return o.map(t=>{let n=this._handleSingleObject(e,i,a,t);return n.isArray()?n.get(0,0):n})}return this._handleSingleObject(e,i,a,o)}_handleSingleObject(e,t,n,r){if(e.isError())return e;let i=e.isArray()?e.getRowCount():1,a=e.isArray()?e.getColumnCount():1,o=this._checkArrayError(t);if(o.isError())return o;let s=Math.floor(+o.getValue());if(s<1)return E.create(p.VALUE);let c=this._checkArrayError(n);if(c.isError())return c;let l=Math.floor(+c.getValue());if(l!==-1&&l!==1)return E.create(p.VALUE);let u=r;if(u.isString()&&(u=u.convertToNumberObjectValue()),u.isError())return u;if(!e.isArray()||i===1&&a===1)return e;let d=+u.getValue();return this._getResult(e,s,l,d,i,a)}_checkArrayError(e){let t=e;if(t.isArray()){let e=t.getRowCount(),n=t.getColumnCount();if(e>1||n>1)return E.create(p.VALUE);t=t.get(0,0)}return t.isString()&&(t=t.convertToNumberObjectValue()),t}_getResult(e,t,n,r,i,a){if(r){if(t>i)return E.create(p.VALUE);let r=e.transpose().getArrayValue();return r.sort(this._sort(t-1,n)),B.create({calculateValueList:r,rowCount:r.length,columnCount:r[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column}).transpose()}else{if(t>a)return E.create(p.VALUE);let r=e.getArrayValue();return r.sort(this._sort(t-1,n)),B.create({calculateValueList:r,rowCount:r.length,columnCount:r[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}}_sort(e,t=1){let n=br();return t===1?this._sortAsc(e,n):this._sortDesc(e,n)}_sortAsc(e,t){return(n,r)=>{let i=n[e],a=r[e];if(i==null||i.isNull())return 1;if(a==null||a.isNull())return-1;if(i.isError()&&a.isError())return 0;if(i.isError())return 1;if(a.isError())return-1;let o=i.getValue(),s=a.getValue();return i.isBoolean()&&o===!0?1:a.isBoolean()&&s===!0?-1:i.isBoolean()&&o===!1?1:a.isBoolean()&&s===!1?-1:i.isNumber()&&a.isNumber()?o-+s:t(o,s)}}_sortDesc(e,t){return(n,r)=>{let i=n[e],a=r[e];if(i==null||i.isNull())return 1;if(a==null||a.isNull())return-1;if(i.isError()&&a.isError())return 0;if(i.isError())return-1;if(a.isError())return 1;let o=i.getValue(),s=a.getValue();return i.isBoolean()&&o===!0?-1:a.isBoolean()&&s===!0?1:i.isBoolean()&&o===!1?-1:a.isBoolean()&&s===!1?1:i.isNumber()&&a.isNumber()?s-+o:t(s,o)}}},hh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,255)}calculate(e,...t){t.length===1&&t.push(R.create(1));let n=this._getVariantsError(e,...t),{maxRowLength:r,maxColumnLength:i}=_o(t);if(n.isError()){let e=V(r,i,n);return r===1&&i===1?e.get(0,0):e}let a=t.map((e,t)=>t%2==0?e:V(r,i,e,E.create(p.NA))),o=this._getResultArray(e,a,r,i);return r===1&&i===1?o[0][0]:B.create({calculateValueList:o,rowCount:o.length,columnCount:o[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}_getVariantsError(e,...t){if(e.isError())return e;for(let e=0;e<t.length;e++){let n=t[e];if(n.isError())return n}if(t.length<2||t.length%2!=0)return E.create(p.VALUE);let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t[0].isArray()?t[0].getRowCount():1,a=t[0].isArray()?t[0].getColumnCount():1;if((i>1||a>1)&&(i>1&&a>1||i===1&&a!==r||a===1&&i!==n))return E.create(p.VALUE);for(let e=2;e<t.length;e++){if(e%2==1)continue;let n=t[e].isArray()?t[e].getRowCount():1,r=t[e].isArray()?t[e].getColumnCount():1;if(n!==i||r!==a)return E.create(p.VALUE)}return L.create(!0)}_getResultArray(e,t,n,r){let i=e.isArray()?e.getRowCount():1,a=e.isArray()?e.getColumnCount():1,o=t[0].isArray()?t[0].getRowCount():1,s=t[0].isArray()?t[0].getColumnCount():1,c=[];for(let l=0;l<n;l++){c[l]=[];for(let u=0;u<r;u++){let{isError:d,errorObject:f,byArrays:p,sortOrders:m}=this._getByArraysAndSortOrders(t,l,u,s);if(d){c[l].push(f);continue}if(!e.isArray()||i===1&&a===1){c[l].push(e);continue}let h=e.getArrayValue();o===1&&s===1||(o===1?(h=h.concat(p),h=this._transposeArray(h),h.sort(this._sort(i,m)),h=this._transposeArray(h).slice(0,i)):s===1&&(h=this._transposeArray(h),h=h.concat(p),h=this._transposeArray(h),h.sort(this._sort(a,m)),h=h.map(e=>e.slice(0,a))));let g=B.create({calculateValueList:h,rowCount:h.length,columnCount:h[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column});if(n>1||r>1){c[l].push(g.get(0,0));continue}c[l].push(g)}}return c}_getByArraysAndSortOrders(e,t,n,r){let i=[],a=[],o=!1,s=null;for(let c=0;c<e.length;c++){if(c%2==1)continue;let l=e[c],u=e[c+1].get(t,n);if(u.isString()&&(u=u.convertToNumberObjectValue()),u.isError()){o=!0,s=u;break}let d=Math.floor(+u.getValue());if(d!==-1&&d!==1){o=!0,s=E.create(p.VALUE);break}if(a.push(d),l.isArray()){let e=l.getArrayValue();r===1&&(e=this._transposeArray(e)),i.push(e[0])}else i.push([l])}return{isError:o,errorObject:s,byArrays:i,sortOrders:a}}_transposeArray(e){let t=e.length,n=e[0].length,r=[];for(let i=0;i<n;i++){r[i]=[];for(let n=0;n<t;n++)r[i][n]=e[n][i]}return r}_sort(e,t){let n=br();return(r,i)=>{let a=r[e],o=i[e],s=this._compare(a,o,t[0],n);if(s===0&&t.length>1){for(let c=1;c<t.length;c++)if(a=r[e+c],o=i[e+c],s=this._compare(a,o,t[c],n),s!==0)return s}return s}}_compare(e,t,n,r){return n===1?this._asc(e,t,r):this._desc(e,t,r)}_asc(e,t,n){if(e==null||e.isNull())return 1;if(t==null||t.isNull())return-1;if(e.isError()&&t.isError())return 0;if(e.isError())return 1;if(t.isError())return-1;let r=e.getValue(),i=t.getValue();return e.isBoolean()&&r===!0?1:t.isBoolean()&&i===!0?-1:e.isBoolean()&&r===!1?1:t.isBoolean()&&i===!1?-1:e.isNumber()&&t.isNumber()?r-+i:n(r,i)}_desc(e,t,n){if(e==null||e.isNull())return 1;if(t==null||t.isNull())return-1;if(e.isError()&&t.isError())return 0;if(e.isError())return-1;if(t.isError())return 1;let r=e.getValue(),i=t.getValue();return e.isBoolean()&&r===!0?-1:t.isBoolean()&&i===!0?1:e.isBoolean()&&r===!1?-1:t.isBoolean()&&i===!1?1:e.isNumber()&&t.isNumber()?i-+r:n(i,r)}},gh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=e.isArray()?e.getRowCount():1,i=e.isArray()?e.getColumnCount():1,a=t,o=n==null?R.create(i):n;t.isNull()&&(a=R.create(r)),o.isNull()&&(o=R.create(i));let s=Math.max(a.isArray()?a.getRowCount():1,o.isArray()?o.getRowCount():1),c=Math.max(a.isArray()?a.getColumnCount():1,o.isArray()?o.getColumnCount():1),l=V(s,c,a,E.create(p.NA)),u=V(s,c,o,E.create(p.NA));if(s>1||c>1)return l.mapValue((t,n,a)=>{let o=u.get(n,a);if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);let{isError:s,errorObject:c}=this._checkRowsColumns(t,o,r,i);return s?c:e.isArray()?E.create(p.VALUE):e});if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);let d=a.isArray()?a.get(0,0):a,f=o.isArray()?o.get(0,0):o,{isError:m,errorObject:h,rowsValue:g,columnsValue:_}=this._checkRowsColumns(d,f,r,i);return m?h:this._getResultArray(e,g,_,r,i)}_checkRowsColumns(e,t,n,r){if(e.isError())return{isError:!0,errorObject:e};if(t.isError())return{isError:!0,errorObject:t};let i=Math.trunc(+e.getValue()),a=Math.trunc(+t.getValue());return Number.isNaN(i)||Number.isNaN(a)?{isError:!0,errorObject:E.create(p.VALUE)}:Math.abs(i)===0||Math.abs(a)===0?{isError:!0,errorObject:E.create(p.CALC)}:(i>n&&(i=n),a>r&&(a=r),{isError:!1,rowsValue:i,columnsValue:a})}_getResultArray(e,t,n,r,i){if(!e.isArray())return e;let a=t>=0?[0,t]:[r+t,r],o=n>=0?[0,n]:[i+n,i],s;return s=t===r&&n===i?e:t===r?e.slice(void 0,o):n===i?e.slice(a,void 0):e.slice(a,o),s=s.map(e=>e.isNull()?R.create(0):e),t===1&&n===1?s.get(0,0):s}},_h=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,3)}calculate(e,t,n){let r=t==null?R.create(0):t,i=n==null?L.create(!1):n,a=Math.max(r.isArray()?r.getRowCount():1,i.isArray()?i.getRowCount():1),o=Math.max(r.isArray()?r.getColumnCount():1,i.isArray()?i.getColumnCount():1),s=V(a,o,r,E.create(p.NA)),c=V(a,o,i,E.create(p.NA)),l=s.mapValue((t,n,r)=>{let i=c.get(n,r);if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);if(t.isError())return t;if(i.isError())return i;let s=Math.trunc(+t.getValue()),l=+i.getValue();if(Number.isNaN(s)||s<0||s>3||Number.isNaN(l))return E.create(p.VALUE);if(!e.isArray())return e;let u=[];return u=l?this._getArrayValueByColumn(e,s):this._getArrayValueByRow(e,s),u.length===0?E.create(p.CALC):a>1||o>1||u.length===1?u[0]:B.create({calculateValueList:u.map(e=>[e]),rowCount:u.length,columnCount:1,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})});return a===1&&o===1?l.get(0,0):l}_getArrayValueByColumn(e,t){let n=e,r=n.getRowCount(),i=n.getColumnCount(),a=[];for(let e=0;e<i;e++)for(let i=0;i<r;i++){let r=n.get(i,e);this._isIgnore(r,t)||a.push(r.isNull()?R.create(0):r)}return a}_getArrayValueByRow(e,t){let n=e,r=n.getRowCount(),i=n.getColumnCount(),a=[];for(let e=0;e<r;e++)for(let r=0;r<i;r++){let i=n.get(e,r);this._isIgnore(i,t)||a.push(i.isNull()?R.create(0):i)}return a}_isIgnore(e,t){switch(t){case 0:return!1;case 1:return e.isNull();case 2:return e.isError();case 3:return e.isNull()||e.isError();default:return!1}}},vh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,3)}calculate(e,t,n){let r=t==null?R.create(0):t,i=n==null?L.create(!1):n,a=Math.max(r.isArray()?r.getRowCount():1,i.isArray()?i.getRowCount():1),o=Math.max(r.isArray()?r.getColumnCount():1,i.isArray()?i.getColumnCount():1),s=V(a,o,r,E.create(p.NA)),c=V(a,o,i,E.create(p.NA)),l=s.mapValue((t,n,r)=>{let i=c.get(n,r);if(e.isError())return e;if(t.isError())return t;if(i.isError())return i;let s=Math.trunc(+t.getValue()),l=+i.getValue();if(Number.isNaN(s)||s<0||s>3||Number.isNaN(l)||e.isNull())return E.create(p.VALUE);if(!e.isArray())return e;let u=[];return u=l?this._getArrayValueByColumn(e,s):this._getArrayValueByRow(e,s),u.length===0?E.create(p.CALC):a>1||o>1||u.length===1?u[0]:B.create({calculateValueList:[u],rowCount:1,columnCount:u.length,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})});return a===1&&o===1?l.get(0,0):l}_getArrayValueByColumn(e,t){let n=e,r=n.getRowCount(),i=n.getColumnCount(),a=[];for(let e=0;e<i;e++)for(let i=0;i<r;i++){let r=n.get(i,e);this._isIgnore(r,t)||a.push(r.isNull()?R.create(0):r)}return a}_getArrayValueByRow(e,t){let n=e,r=n.getRowCount(),i=n.getColumnCount(),a=[];for(let e=0;e<r;e++)for(let r=0;r<i;r++){let i=n.get(e,r);this._isIgnore(i,t)||a.push(i.isNull()?R.create(0):i)}return a}_isIgnore(e,t){switch(t){case 0:return!1;case 1:return e.isNull();case 2:return e.isError();case 3:return e.isNull()||e.isError();default:return!1}}},yh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isError())return e;if(e.isArray()){let t=e.getRowCount(),n=e.getColumnCount();return t===1&&n===1?e.get(0,0):e.transpose()}return e}},bh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,3)}calculate(e,t,n){let r=t==null?L.create(!1):t,i=n==null?L.create(!1):n,a=e.isArray()?e.getRowCount():1,o=e.isArray()?e.getColumnCount():1,s=Math.max(r.isArray()?r.getRowCount():1,i.isArray()?i.getRowCount():1),c=Math.max(r.isArray()?r.getColumnCount():1,i.isArray()?i.getColumnCount():1),l=V(s,c,r,E.create(p.NA)),u=V(s,c,i,E.create(p.NA)),d=l.map((t,n,r)=>{let i=t,l=u.get(n,r);if(e.isError())return e;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(l.isString()&&(l=l.convertToNumberObjectValue()),l.isError())return l;let d=+i.getValue(),f=+l.getValue(),p;return p=!d&&a===1||d&&o===1?e:this._getResult(e,d,f),(s>1||c>1)&&p!=null&&p.isArray()?p.get(0,0):p});return s===1&&c===1?d.get(0,0):d}_getResult(e,t,n){let r=e.isArray()?e.getRowCount():1,i=e.isArray()?e.getColumnCount():1,a=e.getArrayValue(),o=r,s=i;t&&(a=this._transposeArray(a),o=i,s=r);let c=this._getRepeatRows(a,o,s);if(c.length>0){let e=[];c.forEach(t=>{t.forEach((t,r)=>{(r!==0||n)&&e.push(t)})}),a=a.filter((t,n)=>!e.includes(n))}return a.length===0?E.create(p.CALC):(t&&(a=this._transposeArray(a)),B.create({calculateValueList:a,rowCount:a.length,columnCount:a[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column}))}_getRepeatRows(e,t,n){let r=[];for(let i=0;i<n;i++)if(i===0){let n=Array(t).fill(null).map((t,n)=>({r:n,valueObject:e[n][i]}));r=this._getRepeatRowsByObjects(n)}else{if(r.length===0)break;let t=[];r.forEach(n=>{let r=n.map(t=>({r:t,valueObject:e[t][i]})),a=this._getRepeatRowsByObjects(r);t=t.concat(a)}),r=t}return r}_getRepeatRowsByObjects(e){let n=new Map;return e.forEach(e=>{let r=e.r,i=e.valueObject,a=i.getValue();if(i.isNull()?a=null:i.isString()&&(0,t.isRealNum)(a)&&(a=+a),!n.has(a))n.set(a,[r]);else{let e=n.get(a);e.push(r),n.set(a,e)}}),Array.from(n.values()).filter(e=>e.length>1)}_transposeArray(e){let t=e.length,n=e[0].length,r=[];for(let i=0;i<n;i++){r[i]=[];for(let n=0;n<t;n++)r[i][n]=e[n][i]}return r}},xh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){if(e.isError())return e;if(t.isError())return t;if(!t.isArray())return E.create(p.VALUE);if(n.isError())return n;if(r!=null&&r.isError())return r;let i=r==null?L.create(!0):r;return ho(e)&&ho(i)&&n.isArray()?this._handleArrayColIndexNum(e,t,n,i):this._handleNonArrayColIndexNum(e,t,n,i)}_handleArrayColIndexNum(e,t,n,r){let i=e.isArray()?e.getFirstCell():e,a=this.getZeroOrOneByOneDefault(r);if(a==null)return E.create(p.VALUE);let o,s=[];return n.iterator((e,n,r)=>{if(e==null)return o=E.create(p.VALUE),!1;let c=this._handleTableArray(i,t,e,a);if(c.isError())return o=c,!1;s[n]===void 0&&(s[n]=[]),s[n][r]=c}),o||lo(s,s.length,s[0].length,this.unitId||``,this.subUnitId||``)}_handleNonArrayColIndexNum(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e),s=V(i,a,r);return o.map((e,r,i)=>{if(e.isError())return e;let a=s.get(r,i);if(a==null)return E.create(p.VALUE);if(a.isError())return a;let o=this.getZeroOrOneByOneDefault(a);return o==null?E.create(p.VALUE):this._handleTableArray(e,t,n,o)})}_handleTableArray(e,t,n,r){let i=this.getIndexNumValue(n);if(i instanceof E)return i;if(i=Math.floor(i),i<1)return E.create(p.VALUE);let a=t.slice(void 0,[0,1]);if(a==null)return E.create(p.VALUE);let o=t.slice(void 0,[i-1,i]);return o==null?E.create(p.REF):this._handleSingleObject(e,a,o,r)}_handleSingleObject(e,t,n,r){return r===0?this.equalSearch(e,t,n):this.binarySearch(e,t,n)}},Sh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=Math.max(...e.map(e=>e.isArray()?e.getColumnCount():1)),n=[];for(let r=0;r<e.length;r++){let i=e[r];if(i.isError())return i;let a=i.isArray()?i.getRowCount():1,o=i.isArray()?i.getColumnCount():1;for(let e=0;e<a;e++){let r=[];for(let n=0;n<t;n++){let t=i;i.isArray()&&(t=i.get(e,n)),n>o-1||!t?r.push(E.create(p.NA)):r.push(t)}n.push(r)}}return B.create({calculateValueList:n,rowCount:n.length,columnCount:n[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}},Ch=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?E.create(p.NA):n;r.isNull()&&(r=E.create(p.NA));let i=e.isArray()?e.getRowCount():1,a=e.isArray()?e.getColumnCount():1,o=Math.max(t.isArray()?t.getRowCount():1,r.isArray()?r.getRowCount():1),s=Math.max(t.isArray()?t.getColumnCount():1,r.isArray()?r.getColumnCount():1),c=V(o,s,t,E.create(p.NA)),l=V(o,s,r,E.create(p.NA)),u=c.mapValue((t,n,r)=>{let c=l.get(n,r);if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);if(t.isError())return t;let u=Math.trunc(+t.getValue());if(i>1&&a>1||Number.isNaN(u))return E.create(p.VALUE);if(u<1)return E.create(p.NUM);let d=e.isArray()?e.getArrayValue().flat():[e],f=this._getWrapArray(d,u,c);return o>1||s>1||f.length===1&&f[0].length===1?f[0][0]:B.create({calculateValueList:f,rowCount:f.length,columnCount:f[0].length,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})});return o===1&&s===1?u.get(0,0):u}_getWrapArray(e,t,n){let r=Math.ceil(e.length/t),i=r>1?t:e.length,a=[];for(let t=0;t<r;t++)for(let r=0;r<i;r++){a[r]||(a[r]=[]);let o=t*i+r;o<e.length?a[r].push(e[o].isNull()?R.create(0):e[o]):a[r].push(n)}return a}},wh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?E.create(p.NA):n;r.isNull()&&(r=E.create(p.NA));let i=e.isArray()?e.getRowCount():1,a=e.isArray()?e.getColumnCount():1,o=Math.max(t.isArray()?t.getRowCount():1,r.isArray()?r.getRowCount():1),s=Math.max(t.isArray()?t.getColumnCount():1,r.isArray()?r.getColumnCount():1),c=V(o,s,t,E.create(p.NA)),l=V(o,s,r,E.create(p.NA)),u=c.mapValue((t,n,r)=>{let c=l.get(n,r);if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);if(t.isError())return t;let u=Math.trunc(+t.getValue());if(i>1&&a>1||Number.isNaN(u))return E.create(p.VALUE);if(u<1)return E.create(p.NUM);let d=e.isArray()?e.getArrayValue().flat():[e],f=this._getWrapArray(d,u,c);return o>1||s>1||f.length===1&&f[0].length===1?f[0][0]:B.create({calculateValueList:f,rowCount:f.length,columnCount:f[0].length,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})});return o===1&&s===1?u.get(0,0):u}_getWrapArray(e,t,n){let r=Math.ceil(e.length/t),i=r>1?t:e.length,a=[];for(let t=0;t<r;t++){let r=[];for(let a=0;a<i;a++){let o=t*i+a;o<e.length?r.push(e[o].isNull()?R.create(0):e[o]):r.push(n)}a.push(r)}return a}},Th=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let o=r==null?E.create(p.NA):r;r!=null&&r.isNull()&&(o=E.create(p.NA));let s=i==null?R.create(0):i;i!=null&&i.isNull()&&(s=R.create(0));let c=a==null?R.create(1):a;if(a!=null&&a.isNull()&&(c=R.create(1)),e.isError())return e;let l=t.isArray()?t.getRowCount():1,u=t.isArray()?t.getColumnCount():1,d=n.isArray()?n.getRowCount():1,f=n.isArray()?n.getColumnCount():1;if(l!==1&&u!==1||l===1&&u>1&&u!==f||u===1&&l>1&&l!==d)return E.create(p.VALUE);if(s.isError())return s;if(c.isError())return c;let m=this.getIndexNumValue(s);if(m instanceof E)return m;let h=this.getIndexNumValue(c);return h instanceof E?h:this._getResult(e,yo(t),yo(n),o,m,h,l,u,d,f)}_getResult(e,t,n,r,i,a,o,s,c,l){let u=e.isArray()?e.getRowCount():1,d=e.isArray()?e.getColumnCount():1;if(u>1||d>1){let s;return s=o===1?n.slice([0,1]):n.slice(void 0,[0,1]),s==null?E.create(p.NA):e.map(e=>{let n=this._checkErrorCombination(i,a);if(n)return n;let o=this._handleSingleObject(e,t,s,i,a);return o.isError()?r:o})}let f=e.isArray()?e.get(0,0):e;if(s===l&&o===c){let e=this._checkErrorCombination(i,a);if(e)return e;let o=this._handleSingleObject(f,t,n,i,a);return o.isError()?r:o}let m=0;s===l&&(m=1);let h=this._handleExpandObject(f,t,n,i,a,m);return h==null?E.create(p.NA):h}_handleExpandObject(e,t,n,r,i,a=0){if((i===2||i===-2)&&r!==2){let o=Dr(i),s=Er(r);return this.binarySearchExpand(e,t,n,a,o,s)}return r===2?this.fuzzySearchExpand(e,t,n,i!==-1,a):r===-1||r===1?this.orderSearchExpand(e,t,n,r===1?yr.MAX:yr.MIN,i===-1,a):this.equalSearchExpand(e,t,n,i!==-1,a)}_handleSingleObject(e,t,n,r,i){if((i===2||i===-2)&&r!==2){let a=Dr(i),o=Er(r);return this.binarySearch(e,t,n,a,o)}return r===2?this.fuzzySearch(e,t,n,i!==-1):r===-1||r===1?this.orderSearch(e,t,n,r===1?yr.MAX:yr.MIN,i===-1):this.equalSearch(e,t,n,i!==-1)}_checkErrorCombination(e,t){return e===2&&(t===-2||t===2)?E.create(p.VALUE):null}},Eh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=R.create(0);n&&!n.isNull()&&(i=n);let a=R.create(1);r&&!r.isNull()&&(a=r);let o=Math.max(e.isArray()?e.getRowCount():1,i.isArray()?i.getRowCount():1,a.isArray()?a.getRowCount():1),s=Math.max(e.isArray()?e.getColumnCount():1,i.isArray()?i.getColumnCount():1,a.isArray()?a.getColumnCount():1),c=V(o,s,e,E.create(p.NA)),l=V(o,s,i,E.create(p.NA)),u=V(o,s,a,E.create(p.NA)),d=c.mapValue((e,n,r)=>{if(e.isError())return e;let i=l.get(n,r),a=u.get(n,r);return i.isError()?i:a.isError()?a:this._handleSingleObject(e,t,i,a)});return o===1&&s===1?d.get(0,0):d}_handleSingleObject(e,t,n,r){let i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1;if(i!==1&&a!==1)return E.create(p.VALUE);let o=n;if((n.isString()||n.isBoolean()||n.isNull())&&(o=n.convertToNumberObjectValue()),o.isError())return o;let s=r;if((r.isString()||r.isBoolean()||r.isNull())&&(s=r.convertToNumberObjectValue()),s.isError())return s;let c=o.getValue(),l=s.getValue();return![-1,0,1,2].includes(c)||![-1,1,2].includes(l)?E.create(p.VALUE):this._getResult(e,t,c,l)}_getResult(e,t,n,r){let i=yo(t),a;if((r===2||r===-2)&&n!==2){let t=Dr(r),o=Er(n);a=i.binarySearch(e,t,o)}else if(n===2){let t=i.compare(e,v.EQUALS),n;if(n=r===-1?t.getLastTruePosition():t.getFirstTruePosition(),n==null)return E.create(p.NA);a=i.getRowCount()===1?n.column:n.row}else if(n===-1||n===1){let t=i.orderSearch(e,n===1?yr.MAX:yr.MIN,r===-1);if(t==null)return E.create(p.NA);if(t instanceof E)return t;a=i.getRowCount()===1?t.column:t.row}else{let t=i.isEqual(e),n;if(n=r===-1?t.getLastTruePosition():t.getFirstTruePosition(),n==null)return E.create(p.NA);a=i.getRowCount()===1?n.column:n.row}return a==null?E.create(p.NA):R.create(a+1)}};let Dh=[[Wm,G.ADDRESS],[Km,G.AREAS],[qm,G.CHOOSE],[Jm,G.CHOOSECOLS],[Ym,G.CHOOSEROWS],[Xm,G.COLUMN],[Zm,G.COLUMNS],[Qm,G.DROP],[$m,G.EXPAND],[eh,G.FILTER],[th,G.FORMULATEXT],[nh,G.HLOOKUP],[rh,G.HSTACK],[ih,G.HYPERLINK],[ah,G.IMAGE],[oh,G.INDEX],[sh,G.INDIRECT],[ch,G.LOOKUP],[lh,G.MATCH],[dh,G.OFFSET],[fh,G.ROW],[ph,G.ROWS],[mh,G.SORT],[hh,G.SORTBY],[gh,G.TAKE],[_h,G.TOCOL],[vh,G.TOROW],[yh,G.TRANSPOSE],[bh,G.UNIQUE],[xh,G.VLOOKUP],[Sh,G.VSTACK],[Ch,G.WRAPCOLS],[wh,G.WRAPROWS],[Th,G.XLOOKUP],[Eh,G.XMATCH]];var Oh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.abs()}},kh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.acos()}},Ah=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.acosh()}},jh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.isArray()?t.map(e=>e.isError()?e:Mh(e)):Mh(t)}};function Mh(e){let t=e.getValue();if(e.isBoolean()&&(t=t?1:0),!Number.isFinite(t))return E.create(p.VALUE);t=Number(t);let n=Math.atan(1/t);return t<0&&(n+=Math.PI),Number.isNaN(n)?E.create(p.VALUE):R.create(n)}var Nh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.isArray()?t.map(e=>e.isError()?e:Ph(e)):Ph(t)}};function Ph(e){let t=e.getValue();if(e.isBoolean()&&(t=t?1:0),!Number.isFinite(t))return E.create(p.VALUE);if(t=Number(t),Math.abs(t)<=1)return E.create(p.NUM);let n=1/2*Math.log((t+1)/(t-1));return Number.isNaN(n)?E.create(p.VALUE):R.create(n)}let Fh={1:Q.AVERAGE,2:Q.COUNT,3:Q.COUNTA,4:Q.MAX,5:Q.MIN,6:Q.PRODUCT,7:Q.STDEV_S,8:Q.STDEV_P,9:Q.SUM,10:Q.VAR_S,11:Q.VAR_P,12:Q.MEDIAN,13:Q.MODE_SNGL};var Ih=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,255),d(this,`needsReferenceObject`,!0),d(this,`needsFilteredOutRows`,!0),d(this,`needsFormulaDataModel`,!0)}calculate(e,t,...n){let{isError:r,multiAreaRefs:i,normalRefs:a}=Al(n),o;o=e.isReferenceObject()?e.toArrayValueObject():e;let s;s=t.isReferenceObject()?t.toArrayValueObject():t;let c=Math.max(o.isArray()?o.getRowCount():1,s.isArray()?s.getRowCount():1),l=Math.max(o.isArray()?o.getColumnCount():1,s.isArray()?s.getColumnCount():1),u=V(c,l,o,E.create(p.NA)),d=V(c,l,s,E.create(p.NA)),f=u.mapValue((e,t,o)=>{if(e.isError())return e;let s=d.get(t,o);return s.isError()?s:i.length>0?E.create(p.VALUE):this._handleSingleObject(e,s,n,r,a)});return f.getRowCount()===1&&f.getColumnCount()===1?f.get(0,0):f}_handleSingleObject(e,t,n,r,i){let a=e;if(e.isString()&&(a=e.convertToNumberObjectValue()),a.isError())return a;let o=Math.floor(+a.getValue());if(o<1||o>19||o>=1&&o<=13&&r||o>=14&&o<=19&&n.length!==2)return E.create(p.VALUE);let s=t;if(t.isString()&&(s=t.convertToNumberObjectValue()),s.isError())return s;let c=Math.floor(+s.getValue());if(c<0||c>7)return E.create(p.VALUE);let l=this._getAggregateOptions(c);return o>=14&&o<=19?this._handleLargeSmallPercentileQuartile(o,l,n[0],n[1]):Pl({type:Fh[o],...l,formulaDataModel:this._formulaDataModel},i)}_getAggregateOptions(e){switch(e){case 1:return{ignoreRowHidden:!0,ignoreErrorValues:!1,ignoreNested:!0};case 2:return{ignoreRowHidden:!1,ignoreErrorValues:!0,ignoreNested:!0};case 3:return{ignoreRowHidden:!0,ignoreErrorValues:!0,ignoreNested:!0};case 4:return{ignoreRowHidden:!1,ignoreErrorValues:!1,ignoreNested:!1};case 5:return{ignoreRowHidden:!0,ignoreErrorValues:!1,ignoreNested:!1};case 6:return{ignoreRowHidden:!1,ignoreErrorValues:!0,ignoreNested:!1};case 7:return{ignoreRowHidden:!0,ignoreErrorValues:!0,ignoreNested:!1};default:return{ignoreRowHidden:!1,ignoreErrorValues:!1,ignoreNested:!0}}}_handleLargeSmallPercentileQuartile(e,t,n,r){let i;if(i=r.isReferenceObject()?r.toArrayValueObject():r,i.isError())return i;if(i.isArray()){let e=i.getRowCount(),t=i.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);i=i.get(0,0)}let a=Fl(n,t,this._formulaDataModel);if(!Array.isArray(a))return a;let o=+i.getValue();switch(e){case 14:return Ll(a,o);case 15:return Rl(a,o);case 16:return zl(a,o);case 17:return Vl(a,o);case 18:return Bl(a,o);case 19:return Hl(a,o);default:return E.create(p.VALUE)}}},Lh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;if(e.isNull())return R.create(0);if(e.isBoolean()||e.isNumber())return E.create(p.VALUE);let t=e.getValue().toLocaleString().toLocaleUpperCase();if(t.length>255)return E.create(p.VALUE);let n=t.startsWith(`-`);n&&(t=t.slice(1));let r=0;for(let e=0;e<t.length;e++){let n=Nc.get(t[e])||0,i=Nc.get(t[e+1])||0,a=Nc.get(t[e+2])||0,o=Nc.get(t[e+3])||0;if(!n||a>=i&&a>n||n===i&&n===a&&n===o||n===i/2)return E.create(p.VALUE);n<i?r-=n:r+=n}return R.create(n?-r:r)}},Rh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.asin()}},zh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.asinh()}},Bh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.atan()}},Vh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e,r=t;return n.isString()&&(n=n.convertToNumberObjectValue()),n.isError()?n:(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError()?r:r.atan2(n))}},Hh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.atanh()}},Uh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?R.create(0):n;if(e.isError())return e;if(t.isError())return t;if(r.isError())return r;let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,r,E.create(p.NA)),l=o.map((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n);return this._handleSingleObject(e,r,i)});return l.getRowCount()===1&&l.getColumnCount()===1?l.getArrayValue()[0][0]:l}_handleSingleObject(e,t,n){let r=e;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let i=t;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;let a=n;if(a.isString()&&(a=a.convertToNumberObjectValue()),a.isError())return a;let o=Math.floor(+r.getValue()),s=Math.floor(+i.getValue()),c=Math.floor(+a.getValue());if(o<0||o>=2**53||s<2||s>36||c<0)return E.create(p.NUM);let l=o.toString(s);return l.length<c&&(l=Array(c-l.length+1).join(`0`)+l),z.create(l.toLocaleUpperCase())}},Wh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.map((e,t,n)=>{let r=e,i=a.get(t,n);if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;let o=+r.getValue(),s=+i.getValue();if(o>0&&s<0)return E.create(p.NUM);if(o===0||s===0)return R.create(0);let c=ka(o/s,0)*s;return R.create(c)});return o.getRowCount()===1&&o.getColumnCount()===1?o.getArrayValue()[0][0]:o}},Gh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,3)}calculate(e,t,n){let r=t==null?R.create(1):t,i=n==null?R.create(0):n;if(e.isError())return e;if(r.isError())return r;if(i.isError())return i;let a=Math.max(e.isArray()?e.getRowCount():1,r.isArray()?r.getRowCount():1,i.isArray()?i.getRowCount():1),o=Math.max(e.isArray()?e.getColumnCount():1,r.isArray()?r.getColumnCount():1,i.isArray()?i.getColumnCount():1),s=V(a,o,e,E.create(p.NA)),c=V(a,o,r,E.create(p.NA)),l=V(a,o,i,E.create(p.NA)),u=s.map((e,t,n)=>{let r=e,i=c.get(t,n),a=l.get(t,n);if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(a.isString()&&(a=a.convertToNumberObjectValue()),a.isError())return a;let o=+r.getValue(),s=+i.getValue(),u=+a.getValue();return o===0||s===0?R.create(0):this._getResult(o,s,u)});return a===1&&o===1?u.get(0,0):u}_getResult(e,t,n){let r;return r=e<0&&n!==0?(t<0?ka(Math.abs(e)/Math.abs(t),0):-ka(Math.abs(e)/t,0))*t:(t<0?-ka(e/Math.abs(t),0):ka(e/t,0))*t,R.create(r)}},Kh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(1):t;if(e.isError())return e;if(n.isError())return n;let r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.map((e,t,n)=>{let r=o.get(t,n),i=e;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let a=+i.getValue(),s=+r.getValue();if(a===0||s===0)return R.create(0);let c=(s<0?-ka(a/Math.abs(s),0):ka(a/s,0))*s;return R.create(c)});return r===1&&i===1?s.get(0,0):s}},qh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=e,i=a.get(t,n);if(r.isString()&&(r=r.convertToNumberObjectValue()),i.isString()&&(i=i.convertToNumberObjectValue()),r.isError())return r;if(i.isError())return i;let o=Math.floor(+r.getValue()),s=Math.floor(+i.getValue());if(o<0||s<0||o<s)return E.create(p.NUM);let c=hc(o,s);return Number.isNaN(c)||!Number.isFinite(c)?E.create(p.NUM):R.create(c)});return n===1&&r===1?o.get(0,0):o}},Jh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=e,i=a.get(t,n);if(r.isString()&&(r=r.convertToNumberObjectValue()),i.isString()&&(i=i.convertToNumberObjectValue()),r.isError())return r;if(i.isError())return i;let o=Math.floor(+r.getValue()),s=Math.floor(+i.getValue());if(o<0||s<0||o===0&&o<s)return E.create(p.NUM);let c=hc(o+s-1,o-1);return Number.isNaN(c)||!Number.isFinite(c)?E.create(p.NUM):R.create(c)});return n===1&&r===1?o.get(0,0):o}},Yh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.cos()}},Xh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.cosh()}},Zh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=+t.getValue();return Math.abs(n)>=2**27?E.create(p.NUM):n===0?E.create(p.DIV_BY_ZERO):t.tan().getReciprocal()}},Qh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:+t.getValue()==0?E.create(p.DIV_BY_ZERO):t.tanh().getReciprocal()}},$h=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=+t.getValue();return Math.abs(n)>=2**27?E.create(p.NUM):n===0?E.create(p.DIV_BY_ZERO):t.sin().getReciprocal()}},eg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=+t.getValue();return n===0?E.create(p.DIV_BY_ZERO):!Number.isNaN(n)&&!Number.isFinite(Math.sinh(n))?R.create(0):t.sinh().getReciprocal()}},tg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,n){if(e.isError())return e;if(n.isError())return n;let r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.map((e,n,r)=>{if(e.isError())return e;let i=o.get(n,r);if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;let a=`${e.getValue()}`,s=Math.floor(+i.getValue());if((0,t.isRealNum)(a)&&(+a<0||+a>=2**53||!Number.isInteger(+a))||a.toLocaleLowerCase()===`true`||a.toLocaleLowerCase()===`false`||s<2||s>36)return E.create(p.NUM);if(a.replace(/\s/g,``)===``)return R.create(0);if(!this._isValidCharForRadix(a,s))return E.create(p.NUM);let c=Number.parseInt(a,s);return Number.isNaN(c)?E.create(p.NUM):R.create(c)});return r===1&&i===1?s.get(0,0):s}_isValidCharForRadix(e,t){for(let n of e){let e=n.toUpperCase().charCodeAt(0);if(t<=10&&!(e>=48&&e<48+t)||t>10&&!(e>=48&&e<58||e>=65&&e<65+t-10))return!1}return!0}},ng=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=+t.getValue();if(!Number.isFinite(n))return E.create(p.VALUE);let r=n*(180/Math.PI);return Number.isNaN(r)?E.create(p.VALUE):R.create(r)}},rg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=+t.getValue();if(!Number.isFinite(n))return E.create(p.VALUE);let r=(n<0?-ka(Math.abs(n)/2,0):ka(n/2,0))*2;return Number.isNaN(r)?E.create(p.VALUE):r===0?R.create(0):R.create(r)}},ig=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.exp()}},ag=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.mapValue(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=mc(Math.floor(+t.getValue()));return Number.isNaN(n)||!Number.isFinite(n)?E.create(p.NUM):R.create(n)}},og=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;if(e.isArray()){let n=e.getRowCount(),r=e.getColumnCount();if(n>1||r>1)return E.create(p.VALUE);t=e.get(0,0)}return this._handleSingleObject(t)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=mc(Math.floor(+t.getValue()),2);return Number.isNaN(n)||!Number.isFinite(n)?E.create(p.NUM):R.create(n)}},sg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.map((e,t,n)=>{let r=a.get(t,n),i=e;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let o=+i.getValue(),s=+r.getValue();if(o>0&&s<0)return E.create(p.NUM);if(o===0)return R.create(0);if(s===0)return E.create(p.DIV_BY_ZERO);let c=Oa(o/s,0)*s;return R.create(c)});return n===1&&r===1?o.get(0,0):o}},cg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,3)}calculate(e,t,n){let r=t==null?R.create(1):t,i=n==null?R.create(0):n,a=Math.max(e.isArray()?e.getRowCount():1,r.isArray()?r.getRowCount():1,i.isArray()?i.getRowCount():1),o=Math.max(e.isArray()?e.getColumnCount():1,r.isArray()?r.getColumnCount():1,i.isArray()?i.getColumnCount():1),s=V(a,o,e,E.create(p.NA)),c=V(a,o,r,E.create(p.NA)),l=V(a,o,i,E.create(p.NA)),u=s.map((e,t,n)=>{let r=e,i=c.get(t,n),a=l.get(t,n);if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(a.isString()&&(a=a.convertToNumberObjectValue()),a.isError())return a;let o=+r.getValue(),s=+i.getValue(),u=+a.getValue();if(o===0||s===0)return R.create(0);let d;return d=o<0&&u!==0?(s<0?Oa(Math.abs(o)/Math.abs(s),0):-Oa(Math.abs(o)/s,0))*s:(s<0?-Oa(o/Math.abs(s),0):Oa(o/s,0))*s,R.create(d)});return a===1&&o===1?u.get(0,0):u}},lg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(1):t;if(e.isError())return e;if(n.isError())return n;let r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.map((e,t,n)=>{let r=o.get(t,n),i=e;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let a=+i.getValue(),s=+r.getValue();if(a===0||s===0)return R.create(0);let c=(s<0?-Oa(a/Math.abs(s),0):Oa(a/s,0))*s;return R.create(c)});return r===1&&i===1?s.get(0,0):s}},ug=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];if(!r.isNull())if(r.isArray()){let e=!1,n=E.create(p.VALUE);if(r.iterator(r=>{if(r!=null&&r.isNull())return!0;let{isError:i,errorObject:a,number:o}=this._handleSingleObject(r);if(i)return e=!0,n=a,!1;t=gc(t,o)}),e)return n}else{let{isError:e,errorObject:n,number:i}=this._handleSingleObject(r);if(e)return n;t=gc(t,i)}}return R.create(t)}_handleSingleObject(e){if(e.isBoolean())return{isError:!0,errorObject:E.create(p.VALUE),number:null};let t=e;if(e.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return{isError:!0,errorObject:t,number:null};let n=Math.floor(+t.getValue());return n<0||n>=2**53?{isError:!0,errorObject:E.create(p.NUM),number:null}:{isError:!1,errorObject:null,number:n}}},dg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.mapValue(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=Math.floor(+t.getValue());return R.create(n)}},fg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=1,n=!0;for(let r=0;r<e.length;r++){let i=e[r];if(!i.isNull())if(i.isArray()){let e=!1,r=E.create(p.VALUE);if(i.iterator(i=>{if(i!=null&&i.isNull())return!0;let{isError:a,errorObject:o,number:s}=this._handleSingleObject(i);if(a)return e=!0,r=o,!1;t=_c(t,s),n=!1}),e)return r}else{let{isError:e,errorObject:r,number:a}=this._handleSingleObject(i);if(e)return r;t=_c(t,a),n=!1}}return n?R.create(0):Number.isNaN(t)||!Number.isFinite(t)||t>=2**53?E.create(p.VALUE):R.create(t)}_handleSingleObject(e){if(e.isBoolean())return{isError:!0,errorObject:E.create(p.VALUE),number:null};let t=e;if(e.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return{isError:!0,errorObject:t,number:null};let n=Math.floor(+t.getValue());return n<0?{isError:!0,errorObject:E.create(p.NUM),number:null}:{isError:!1,errorObject:null,number:n}}},pg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.log()}},mg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(10):t;if(e.isError())return e;if(n.isError())return n;let r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.map((e,t,n)=>{let r=o.get(t,n),i=e;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let a=+i.getValue(),s=+r.getValue();if(a<=0||s<=0)return E.create(p.NUM);let c=Math.log(s);if(c===0)return E.create(p.DIV_BY_ZERO);let l=Math.log(a)/c;return R.create(l)});return r===1&&i===1?s.get(0,0):s}},hg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.log10()}},gg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e.isArray()?e.getRowCount():1,n=e.isArray()?e.getColumnCount():1,r=[];for(let i=0;i<t;i++){let t=[];for(let r=0;r<n;r++){let n=e.isArray()?e.get(i,r):e;if(n.isError())return n;if(n.isNull()||n.isBoolean())return E.create(p.VALUE);if(n.isString()&&(n=n.convertToNumberObjectValue()),n.isError())return n;let a=+n.getValue();t.push(a)}r.push(t)}if(t!==n)return E.create(p.VALUE);let i=vc(r);return R.create(i)}},_g=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e.isArray()?e.getRowCount():1,n=e.isArray()?e.getColumnCount():1,r=[];for(let i=0;i<t;i++){let t=[];for(let r=0;r<n;r++){let n=e.isArray()?e.get(i,r):e;if(n.isError())return n;if(n.isNull()||n.isBoolean())return E.create(p.VALUE);if(n.isString()&&(n=n.convertToNumberObjectValue()),n.isError())return n;let a=+n.getValue();t.push(a)}r.push(t)}if(t!==n)return E.create(p.VALUE);let i=yc(r);return i===null?E.create(p.NUM):B.createByArray(i)}},vg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1;if(r!==i)return E.create(p.VALUE);let o=this._getMatrix(e,n,r),s=this._getMatrix(t,i,a);if(o instanceof E)return o;if(s instanceof E)return s;let c=Sc(o,s);return B.createByArray(c)}_getMatrix(e,t,n){let r=[];for(let i=0;i<t;i++){let t=[];for(let r=0;r<n;r++){let n=e.isArray()?e.get(i,r):e;if(n.isError())return n;if(n.isNull()||n.isBoolean())return E.create(p.VALUE);if(n.isString()&&(n=n.convertToNumberObjectValue()),n.isError())return n;let a=+n.getValue();t.push(a)}r.push(t)}return r}},yg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e;if(n.isString()&&(n=n.convertToNumberObjectValue()),n.isError())return n;let r=t;return r.isString()&&(r=r.convertToNumberObjectValue()),r.isError()?r:n.mod(r)}},bg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e;if(n.isArray()){let e=n.getRowCount(),t=n.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);n=n.get(0,0)}if(n.isError())return n;let r=t;if(r.isArray()){let e=r.getRowCount(),t=r.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);r=r.get(0,0)}if(r.isError())return r;if(n.isBoolean()||r.isBoolean())return E.create(p.VALUE);let i=+n.getValue(),a=+r.getValue();if(Number.isNaN(i)||Number.isNaN(a))return E.create(p.VALUE);if(a===0)return R.create(0);if(i>0&&a<0||i<0&&a>0)return E.create(p.NUM);let o=Da(i/a,0)*a;return R.create(o)}},xg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=0,n=1;for(let r=0;r<e.length;r++){let i=e[r];if(!i.isNull())if(i.isArray()){let e=!1,r=E.create(p.VALUE);if(i.iterator(i=>{if(i!=null&&i.isNull())return!0;let{isError:a,errorObject:o,number:s}=this._handleSingleObject(i);if(a)return e=!0,r=o,!1;if(t+=s,t>170)return e=!0,r=E.create(p.NUM),!1;n*=mc(s)}),e)return r}else{let{isError:e,errorObject:r,number:a}=this._handleSingleObject(i);if(e)return r;if(t+=a,t>170)return E.create(p.NUM);n*=mc(a)}}let r=mc(t)/n;return R.create(r)}_handleSingleObject(e){if(e.isBoolean())return{isError:!0,errorObject:E.create(p.VALUE),number:null};let t=e;if(e.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return{isError:!0,errorObject:t,number:null};let n=Math.floor(+t.getValue());return n<0?{isError:!0,errorObject:E.create(p.NUM),number:null}:{isError:!1,errorObject:null,number:n}}},Sg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.getRowCount(),n=e.getColumnCount(),r=e.mapValue(e=>{let r=this._handleSingleObject(e);return r.isError()?r:t>1||n>1?r.get(0,0):r});return t===1&&n===1?r.get(0,0):r}return this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=Math.floor(+t.getValue());if(n<=0)return E.create(p.VALUE);let r=[];for(let e=0;e<n;e++){r[e]=[];for(let t=0;t<n;t++)r[e][t]=e===t?1:0}return B.createByArray(r)}},Cg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=+t.getValue();if(!Number.isFinite(n))return E.create(p.VALUE);let r=n<0?-ka(Math.abs(n),0):ka(n,0);return Number.isNaN(r)?E.create(p.VALUE):(Math.abs(r)%2==0&&(n<0?r--:r++),R.create(r))}},wg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,0)}calculate(){return R.create(Math.PI)}},Tg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e;if(n.isString()&&(n=n.convertToNumberObjectValue()),n.isError())return n;let r=t;return r.isString()&&(r=r.convertToNumberObjectValue()),r.isError()?r:n.pow(r)}},Eg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(1),n=!0;for(let r=0;r<e.length;r++){let i=e[r];if(i.isError())return i;if(i.isArray()){let e=!1,r=null;if(i.iterator(i=>{if(i!=null&&i.isError())return e=!0,r=i,!1;if(!i||i.isNull()||i.isString()||i.isBoolean())return!0;t=t.multiply(i),n=!1}),e)return r}else{if(i.isNull())continue;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;t=t.multiply(i),n=!1}if(t.isError())return t}return n?R.create(0):t}},Dg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,variants:i}=Y(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=+o.getValue();if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);if(c===0)return E.create(p.DIV_BY_ZERO);let l=Math.trunc(s/c);return R.create(l)}},Og=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=+t.getValue();if(!Number.isFinite(n))return E.create(p.VALUE);let r=n*(Math.PI/180);return Number.isNaN(r)?E.create(p.VALUE):R.create(r)}},kg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,0)}calculate(){return R.create(Math.random())}},Ag=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,5),d(this,`needsSheetRowColumnCount`,!0)}calculate(e,t,n,r,i){if(e!=null&&e.isError())return e;if(t!=null&&t.isError())return t;if(n!=null&&n.isError())return n;if(r!=null&&r.isError())return r;if(i!=null&&i.isError())return i;let a=e==null?R.create(1):e,o=t==null?R.create(1):t,s=n==null?R.create(0):n,c=r==null?R.create(1):r,l=i==null?R.create(0):i;return this._calculateResult(a,o,s,c,l)}_calculateResult(e,t,n,r,i){let a=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1,i.isArray()?i.getRowCount():1),o=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1,i.isArray()?i.getColumnCount():1);if(a===1&&o===1)return this._calculateSingleCell(e,t,n,r,i);let s=V(a,o,e,E.create(p.NA)),c=V(a,o,t,E.create(p.NA)),l=V(a,o,n,E.create(p.NA)),u=V(a,o,r,E.create(p.NA)),d=V(a,o,i,E.create(p.NA));return s.map((e,t,n)=>{let r=c.get(t,n),i=l.get(t,n),a=u.get(t,n),o=d.get(t,n),s=this._handleError(e,r,i,a,o);if(s.errorObject)return s.errorObject;let{minValue:f,maxValue:m,wholeNumberValue:h}=s,g;return h?(f=Math.ceil(f),m=Math.floor(m),g=Math.floor(Math.random()*(m-f+1))+f):g=Math.random()*(m-f)+f,g<f||g>m?E.create(p.VALUE):R.create(g)})}_calculateSingleCell(e,t,n,r,i){let a=e;a.isArray()&&(a=a.get(0,0));let o=t;o.isArray()&&(o=o.get(0,0));let s=n;s.isArray()&&(s=s.get(0,0));let c=r;c.isArray()&&(c=c.get(0,0));let l=i;l.isArray()&&(l=l.get(0,0));let u=this._handleError(a,o,s,c,l);if(u.errorObject)return u.errorObject;let{rowsValue:d,columnsValue:f,minValue:m,maxValue:h,wholeNumberValue:g}=u;if(g&&(m=Math.ceil(m),h=Math.floor(h),m>h))return E.create(p.VALUE);let _=[];for(let e=0;e<d;e++){let e=[];for(let t=0;t<f;t++)g?e.push(Math.floor(Math.random()*(h-m+1))+m):e.push(Math.random()*(h-m)+m);_.push(e)}return d===1&&f===1?R.create(_[0][0]):B.createByArray(_)}_handleError(e,t,n,r,i){let a=e;if(a.isString()&&(a=a.convertToNumberObjectValue()),a.isError())return{errorObject:a};let o=t;if(o.isString()&&(o=o.convertToNumberObjectValue()),o.isError())return{errorObject:o};let s=n;if(s.isString()&&(s=s.convertToNumberObjectValue()),s.isError())return{errorObject:s};let c=r;if(c.isString()&&(c=c.convertToNumberObjectValue()),c.isError())return{errorObject:c};let l=i;return l.isString()&&(l=l.convertToNumberObjectValue()),l.isError()?{errorObject:l}:this._getValue(a,o,s,c,l)}_getValue(e,t,n,r,i){let a=Math.floor(+e.getValue()),o=Math.floor(+t.getValue());if(a===0||o===0)return{errorObject:E.create(p.CALC)};let s=this._rowCount-this.row,c=this._columnCount-this.column;if(a<0||o<0||a*o>10**7)return{errorObject:E.create(p.VALUE)};if(a>s||o>c)return{errorObject:E.create(p.REF)};let l=+n.getValue(),u=+r.getValue(),d=+i.getValue();return l>u||d&&(!Number.isInteger(l)||!Number.isInteger(u))?{errorObject:E.create(p.VALUE)}:{rowsValue:a,columnsValue:o,minValue:l,maxValue:u,wholeNumberValue:d}}},jg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e;if(n.isArray()){let e=n.getRowCount(),t=n.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);n=n.get(0,0)}if(n.isError())return n;let r=t;if(r.isArray()){let e=r.getRowCount(),t=r.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);r=r.get(0,0)}if(r.isError())return r;if(n.isBoolean()||r.isBoolean())return E.create(p.VALUE);let i=+n.getValue(),a=+r.getValue();if(Number.isNaN(i)||Number.isNaN(a))return E.create(p.VALUE);if(i>a)return E.create(p.NUM);i=Math.ceil(i),a=Math.floor(a);let o=Math.floor(Math.random()*(a-i+1))+i;return R.create(o)}},Mg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(0):t,r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.mapValue((e,t,n)=>{let r=o.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return r===1&&i===1?s.get(0,0):s}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(e);if(n)return r;let[a]=i,o=Math.floor(+a.getValue()),s=t;if(s.isString()&&(s=s.convertToNumberObjectValue(),s.isError()))return s;let c=Math.floor(+s.getValue());if(s.isBoolean()&&(c=s.getValue()?0:4),o<0||o>3999||c<0||c>4)return E.create(p.VALUE);let l=Fc[c],u=l.length-1,d=``;for(;o>0;){u=this._binarySearch(o,0,u,l);let e=l[u];o-=e,d+=Pc.get(e)}return z.create(d)}_binarySearch(e,t,n,r){let i=t,a=n;for(;a-i>1;){let t=Math.floor((i+a)/2),n=r[t];if(n===e)return t;n>e?a=t:i=t}return i!==a&&r[a]<=e?a:i}},Ng=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e;if(n.isString()&&(n=n.convertToNumberObjectValue()),n.isError())return n;let r=t;return r.isString()&&(r=r.convertToNumberObjectValue()),r.isError()?r:n.round(r)}},Pg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);if(e.isError())return e;if(r.isError())return r;let{isError:i,errorObject:o,variants:s}=X(e,r);if(i)return o;let[c,l]=s,u=+c.getValue(),d=Math.trunc(+l.getValue()),f=this._roundBank(u,d);return R.create(f)});return n===1&&r===1?o.get(0,0):o}_roundBank(e,t){if(t>16)return e;if(t<-16)return 0;let n=1e-8,r=10**t,i=+(e*r).toFixed(8),a=Math.floor(i),o=i-a,s=Math.round(i);return o>.5-n&&o<.5+n&&(s=a%2==0?a:a+1),t?s/r:s}},Fg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e;if(n.isString()&&(n=n.convertToNumberObjectValue()),n.isError())return n;let r=t;return r.isString()&&(r=r.convertToNumberObjectValue()),r.isError()?r:n.floor(r)}},Ig=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e;if(n.isString()&&(n=n.convertToNumberObjectValue()),n.isError())return n;let r=t;return r.isString()&&(r=r.convertToNumberObjectValue()),r.isError()?r:n.ceil(r)}},Lg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=+t.getValue();return Math.abs(n)>=2**27?E.create(p.NUM):t.cos().getReciprocal()}},Rg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=+t.getValue();return Number.isFinite(Math.cosh(n))?Math.abs(n)>=2**27?E.create(p.NUM):t.cosh().getReciprocal():R.create(0)}},zg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,4),d(this,`needsSheetRowColumnCount`,!0)}calculate(e,t,n,r){let i=e,a=t==null?R.create(1):t,o=n==null?R.create(1):n,s=r==null?R.create(1):r;i.isNull()&&(i=R.create(1)),a.isNull()&&(a=R.create(1)),o.isNull()&&(o=R.create(1)),s.isNull()&&(s=R.create(1));let c=Math.max(i.isArray()?i.getRowCount():1,a.isArray()?a.getRowCount():1,o.isArray()?o.getRowCount():1,s.isArray()?s.getRowCount():1),l=Math.max(i.isArray()?i.getColumnCount():1,a.isArray()?a.getColumnCount():1,o.isArray()?o.getColumnCount():1,s.isArray()?s.getColumnCount():1),u=V(c,l,i,E.create(p.NA)),d=V(c,l,a,E.create(p.NA)),f=V(c,l,o,E.create(p.NA)),m=V(c,l,s,E.create(p.NA)),h=u.mapValue((e,t,n)=>{let r=d.get(t,n),i=f.get(t,n),a=m.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._getResult(e,r,i,a,c,l)});return c===1&&l===1?h.get(0,0):h}_getResult(e,t,n,r,i,a){let{isError:o,errorObject:s,variants:c}=X(e,t,n,r);if(o)return s;let[l,u,d,f]=c,m=Math.floor(+l.getValue()),h=Math.floor(+u.getValue()),g=+d.getValue(),_=+f.getValue();if(m<0||h<0||m*h>10**7)return E.create(p.VALUE);if(m===0||h===0)return E.create(p.CALC);let v=this._rowCount-this.row,y=this._columnCount-this.column;if(m>v||h>y)return E.create(p.REF);let b=[];for(let e=0;e<m;e++){b[e]=[];for(let t=0;t<h;t++)b[e][t]=g+(e*h+t)*_}return i>1||a>1?R.create(b[0][0]):B.createByArray(b)}},Bg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){if(e.isNull()||t.isNull()||n.isNull()||r.isNull())return E.create(p.NA);let{isError:i,errorObject:a,variants:o}=Y(e,t,n);if(i)return a;let{isError:s,errorObject:c,variants:l}=X(...o);if(s)return c;let[u,d,f]=l,m=+u.getValue(),h=+d.getValue(),g=+f.getValue(),_=[];if(r.isArray()){let e=!1,t=E.create(p.VALUE);if(r.iterator(n=>{let{isError:r,errorObject:i,coefficientsObject:a}=this._handleSingleObject(n);if(r)return e=!0,t=i,!1;let o=+a.getValue();_.push(o)}),e)return t}else{let{isError:e,errorObject:t,coefficientsObject:n}=this._handleSingleObject(r);if(e)return t;let i=+n.getValue();_.push(i)}let v=0;for(let e=0;e<_.length;e++)v+=_[e]*m**(h+e*g);return Number.isNaN(v)||!Number.isFinite(v)?E.create(p.NUM):R.create(v)}_handleSingleObject(e){if(e.isError())return{isError:!0,errorObject:e,coefficientsObject:null};if(e!=null&&e.isBoolean())return{isError:!0,errorObject:E.create(p.VALUE),coefficientsObject:null};let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?{isError:!0,errorObject:t,coefficientsObject:null}:{isError:!1,errorObject:null,coefficientsObject:t}}},Vg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=+i.getValue();return a>0?R.create(1):a<0?R.create(-1):R.create(0)}},Hg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.sin()}},Ug=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.sinh()}},Wg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.sqrt()}},Gg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;if(t.isArray()){let e=t.getRowCount(),n=t.getColumnCount();if(e>1||n>1)return E.create(p.VALUE);t=t.get(0,0)}if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=+t.getValue();if(n<0)return E.create(p.NUM);let r=Math.sqrt(n*Math.PI);return R.create(r)}};let Kg={1:Q.AVERAGE,2:Q.COUNT,3:Q.COUNTA,4:Q.MAX,5:Q.MIN,6:Q.PRODUCT,7:Q.STDEV,8:Q.STDEVP,9:Q.SUM,10:Q.VAR,11:Q.VARP};var qg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,255),d(this,`needsReferenceObject`,!0),d(this,`needsFilteredOutRows`,!0),d(this,`needsFormulaDataModel`,!0)}calculate(e,...t){let n;n=e.isReferenceObject()?e.toArrayValueObject():e;let{isError:r,multiAreaRefs:i,normalRefs:a}=Al(t);if(!r&&i.length>0)return this._handleMultiAreaRefs(n,i,t);if(n.isArray()){let e=n.mapValue(e=>this._handleSingleObject(e,{isError:r,refs:a}));return e.getRowCount()===1&&e.getColumnCount()===1?e.get(0,0):e}return this._handleSingleObject(n,{isError:r,refs:a})}_handleSingleObject(e,t){let{isError:n=!1,refs:r}=t,i=e;if(e.isString()&&(i=e.convertToNumberObjectValue()),i.isError())return i;if(n)return E.create(p.VALUE);let a=Math.floor(+i.getValue());if(a<1||a>11&&a<101||a>111)return E.create(p.VALUE);let o=!1;return a>=101&&(a-=100,o=!0),Pl({type:Kg[a],ignoreRowHidden:o,ignoreErrorValues:!1,ignoreNested:!0,formulaDataModel:this._formulaDataModel},r)}_handleMultiAreaRefs(e,t,n){let r=e.isArray()?e.getRowCount():1,i=e.isArray()?e.getColumnCount():1,{multiAreaInfoMap:a,maxAreasLen:o}=this._getMultiAreaInfo(t),s=Math.max(r,o),c=[];for(let t=0;t<s;t++){let o=t<r?t:r-1,s=[];for(let c=0;c<i;c++){if(r>1&&t>=r){s.push(E.create(p.NA));continue}let i=e.isArray()?e.get(o,c):e,l=[];for(let e=0;e<n.length;e++){let r=n[e],i=a.get(r);if(i){let e=t<i.rowAreas.length?t:i.rowAreas.length-1,n=i.rowAreas[e];if(n.isError()){s.push(n);break}l.push(n);continue}l.push(r)}let u=this._handleSingleObject(i,{isError:!1,refs:l});s.push(u)}c.push(s)}return c.length===1?c[0][0]:lo(c,c.length,i)}_getMultiAreaInfo(e){let t=new Map,n=1;return e.forEach(e=>{let r=e.getAreas().map(t=>{if(!t||t.length===0)return e;let n=t.find(e=>!e.isError());return n==null?t[0]:n});t.set(e,{ref:e,rowAreas:r}),n=Math.max(n,r.length||1)}),{multiAreaInfoMap:t,maxAreasLen:n}}},Jg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(0);for(let n=0;n<e.length;n++){let r=e[n];if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError()||(r.isArray()&&(r=r.sum()),r.isError()))return r;if(t=t.plus(r),t.isError())return t}return t}},Yg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3),d(this,`needsReferenceObject`,!0)}calculate(e,t,n){if(!e.isReferenceObject()||n&&!n.isReferenceObject())return E.create(p.VALUE);let r=t;if(t.isReferenceObject()&&(r=t.toArrayValueObject()),r.isArray()){let t=r.mapValue(t=>this._handleSingleObject(e,t,n));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e,r,n)}_handleSingleObject(e,t,n){let r=e.toArrayValueObject(),i=fo(r,t);i=xo(i,r,t);let a=r.getRowCount(),o=r.getColumnCount(),s=r;if(n){s=n.toArrayValueObject();let e=s.getRowCount(),t=s.getColumnCount();if(a!==e||o!==t){let e=n.getRangeData();e.endRow=e.startRow+a-1,e.endColumn=e.startColumn+o-1,n.setRangeData(e),s=n.toArrayValueObject()}}return s.pick(i).sum()}},Xg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,255),d(this,`needsReferenceObject`,!0)}calculate(e,...t){let{isError:n,errorObject:r,rangeIsDifferentSize:i,criteriaMaxRowLength:a,criteriaMaxColumnLength:o,targetRange:s,variants:c}=vo(t,e);if(n)return r;if(i)return a===1&&o===1?E.create(p.VALUE):V(a,o,E.create(p.VALUE));let l=bo(c,{formulaName:`SUMIFS`,maxRowLength:a,maxColumnLength:o,isNumberSensitive:!0,targetRange:s});return l.length===1&&l[0].length===1?l[0][0]:B.create({calculateValueList:l,rowCount:l.length,columnCount:l[0].length,unitId:this.unitId||``,sheetId:this.subUnitId||``,row:this.row,column:this.column})}},Zg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(e,...t){if(e.isError())return e;let n=this._initArray1(e);if(t.length===0)return n.sum();let r=n.getRowCount(),i=n.getColumnCount(),a=this._getResultArrayByArray1(r,i,n);if(a instanceof E)return a;let o=a;return this._validateVariants(t,r,i)||this._sumProduct(o,t,r,i)}_validateVariants(e,t,n){for(let r of e){if(r.isError())return r;if(r.isArray()){let e=r,i=e.getRowCount(),a=e.getColumnCount();if(i!==t&&a!==n)return E.create(p.VALUE)}}return null}_sumProduct(e,t,n,r){let i=0;for(let a=0;a<n;a++)for(let n=0;n<r;n++){let r=e[a][n];for(let e=0;e<t.length;e++){let i=t[e],o=this._getVariantCell(i,a,n);if(!o)return E.create(p.VALUE);if(o.isError())return o;o.isNumber()?r*=o.getValue():r=0}i+=r}return R.create(i)}_getVariantCell(e,t,n){if(!e.isArray())return e;let r=e.get(t,n);return r==null?null:r}_initArray1(e){let t=e;return t.isArray()||(t=B.create({calculateValueList:[[t]],rowCount:1,columnCount:1,unitId:``,sheetId:``,row:0,column:0})),t}_getResultArrayByArray1(e,t,n){let r=[];for(let i=0;i<e;i++){let e=[];for(let r=0;r<t;r++){let t=n.get(i,r);if(t.isError())return t;t.isNumber()?e.push(t.getValue()):e.push(0)}r.push(e)}return r}},Qg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(0),n=R.create(2);for(let r=0;r<e.length;r++){let i=e[r];if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(i.isArray()?i.iterator(e=>{if(e==null||e.isString()||e.isBoolean()||e.isNull())return!0;if(e.isError())return t=e,!1;t=t.plus(e.pow(n))}):t=t.plus(i.pow(n)),t.isError())return t}return t}},$g=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=(e.isArray()?e.getRowCount():1)*(e.isArray()?e.getColumnCount():1);if(n!==(t.isArray()?t.getRowCount():1)*(t.isArray()?t.getColumnCount():1))return E.create(p.NA);if(n===1)return this._calculateSingleCell(e,t);{let n=e.flatten(),r=t.flatten(),i=Ua.create(),a=[],o=[],s=0;return n.iterator((e,t,n)=>{let c=r.get(t,n);if(e==null||e.isString()||e.isBoolean()||e.isNull())return!0;if(e!=null&&e.isError())return i=e,!1;if(c==null||c.isString()||c.isBoolean()||c.isNull())return!0;if(c!=null&&c.isError())return i=c,!1;let l=+e.getValue(),u=+c.getValue();a.push(l),o.push(u),s+=l**2-u**2}),i.isError()?i:a.length===0||o.length===0?E.create(p.DIV_BY_ZERO):R.create(s)}}_calculateSingleCell(e,n){let r=e;if(r.isArray()&&(r=r.get(0,0)),r.isError())return r;let i=n;if(i.isArray()&&(i=i.get(0,0)),i.isError())return i;if(r.isNull()||i.isNull())return E.create(p.VALUE);let a=+r.getValue(),o=+i.getValue();if(r.isString()&&!(0,t.isRealNum)(a)||r.isBoolean()||i.isString()&&!(0,t.isRealNum)(o)||i.isBoolean())return E.create(p.DIV_BY_ZERO);let s=a**2-o**2;return R.create(s)}},e_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=(e.isArray()?e.getRowCount():1)*(e.isArray()?e.getColumnCount():1);if(n!==(t.isArray()?t.getRowCount():1)*(t.isArray()?t.getColumnCount():1))return E.create(p.NA);if(n===1)return this._calculateSingleCell(e,t);{let n=e.flatten(),r=t.flatten(),i=Ua.create(),a=[],o=[],s=0;return n.iterator((e,t,n)=>{let c=r.get(t,n);if(e==null||e.isString()||e.isBoolean()||e.isNull())return!0;if(e!=null&&e.isError())return i=e,!1;if(c==null||c.isString()||c.isBoolean()||c.isNull())return!0;if(c!=null&&c.isError())return i=c,!1;let l=+e.getValue(),u=+c.getValue();a.push(l),o.push(u),s+=l**2+u**2}),i.isError()?i:a.length===0||o.length===0?E.create(p.DIV_BY_ZERO):R.create(s)}}_calculateSingleCell(e,n){let r=e;if(r.isArray()&&(r=r.get(0,0)),r.isError())return r;let i=n;if(i.isArray()&&(i=i.get(0,0)),i.isError())return i;if(r.isNull()||i.isNull())return E.create(p.VALUE);let a=+r.getValue(),o=+i.getValue();if(r.isString()&&!(0,t.isRealNum)(a)||r.isBoolean()||i.isString()&&!(0,t.isRealNum)(o)||i.isBoolean())return E.create(p.DIV_BY_ZERO);let s=a**2+o**2;return R.create(s)}},t_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=(e.isArray()?e.getRowCount():1)*(e.isArray()?e.getColumnCount():1);if(n!==(t.isArray()?t.getRowCount():1)*(t.isArray()?t.getColumnCount():1))return E.create(p.NA);if(n===1)return this._calculateSingleCell(e,t);{let n=e.flatten(),r=t.flatten(),i=Ua.create(),a=[],o=[],s=0;return n.iterator((e,t,n)=>{let c=r.get(t,n);if(e==null||e.isString()||e.isBoolean()||e.isNull())return!0;if(e!=null&&e.isError())return i=e,!1;if(c==null||c.isString()||c.isBoolean()||c.isNull())return!0;if(c!=null&&c.isError())return i=c,!1;let l=+e.getValue(),u=+c.getValue();a.push(l),o.push(u),s+=(l-u)**2}),i.isError()?i:a.length===0||o.length===0?E.create(p.DIV_BY_ZERO):R.create(s)}}_calculateSingleCell(e,n){let r=e;if(r.isArray()&&(r=r.get(0,0)),r.isError())return r;let i=n;if(i.isArray()&&(i=i.get(0,0)),i.isError())return i;if(r.isNull()||i.isNull())return E.create(p.VALUE);let a=+r.getValue(),o=+i.getValue();if(r.isString()&&!(0,t.isRealNum)(a)||r.isBoolean()||i.isString()&&!(0,t.isRealNum)(o)||i.isBoolean())return E.create(p.DIV_BY_ZERO);let s=(a-o)**2;return R.create(s)}},n_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.tan()}},r_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.tanh()}},i_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(0):t,r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.map((e,t,n)=>{let r=o.get(t,n),i=e;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let a=+i.getValue(),s=+r.getValue(),c=10**Math.trunc(s),l=Aa(a,c),u=Math.trunc(Ta(a,c)+l)/c;return R.create(u)});return r===1&&i===1?s.get(0,0):s}};let a_=[[Oh,K.ABS],[kh,K.ACOS],[Ah,K.ACOSH],[jh,K.ACOT],[Nh,K.ACOTH],[Ih,K.AGGREGATE],[Lh,K.ARABIC],[Rh,K.ASIN],[zh,K.ASINH],[Bh,K.ATAN],[Vh,K.ATAN2],[Hh,K.ATANH],[Uh,K.BASE],[Wh,K.CEILING],[Gh,K.CEILING_MATH],[Kh,K.CEILING_PRECISE],[qh,K.COMBIN],[Jh,K.COMBINA],[Yh,K.COS],[Xh,K.COSH],[Zh,K.COT],[Qh,K.COTH],[$h,K.CSC],[eg,K.CSCH],[tg,K.DECIMAL],[ng,K.DEGREES],[rg,K.EVEN],[ig,K.EXP],[ag,K.FACT],[og,K.FACTDOUBLE],[sg,K.FLOOR],[cg,K.FLOOR_MATH],[lg,K.FLOOR_PRECISE],[ug,K.GCD],[dg,K.INT],[fg,K.LCM],[pg,K.LN],[mg,K.LOG],[hg,K.LOG10],[gg,K.MDETERM],[_g,K.MINVERSE],[vg,K.MMULT],[yg,K.MOD],[bg,K.MROUND],[xg,K.MULTINOMIAL],[Sg,K.MUNIT],[Cg,K.ODD],[wg,K.PI],[Tg,K.POWER],[Eg,K.PRODUCT],[Dg,K.QUOTIENT],[Og,K.RADIANS],[kg,K.RAND],[Ag,K.RANDARRAY],[jg,K.RANDBETWEEN],[Mg,K.ROMAN],[Ng,K.ROUND],[Pg,K.ROUNDBANK],[Fg,K.ROUNDDOWN],[Ig,K.ROUNDUP],[Lg,K.SEC],[Rg,K.SECH],[Bg,K.SERIESSUM],[zg,K.SEQUENCE],[Vg,K.SIGN],[Hg,K.SIN],[Ug,K.SINH],[Wg,K.SQRT],[Gg,K.SQRTPI],[qg,K.SUBTOTAL],[Jg,K.SUM],[Yg,K.SUMIF],[Xg,K.SUMIFS],[Zg,K.SUMPRODUCT],[Qg,K.SUMSQ],[$g,K.SUMX2MY2],[e_,K.SUMX2PY2],[t_,K.SUMXMY2],[n_,K.TAN],[r_,K.TANH],[i_,K.TRUNC]];var o_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2),d(this,`_compareType`,v.EQUALS)}setCompareType(e){this._compareType=e}calculate(e,t){return e.isError()?e:t.isError()?t:e.compare(t,this._compareType)}},s_=class e extends ee{static create(t){return new e(t)}isCube(){return!0}constructor(e){super(``),d(this,`_values`,[]),this._values=e}dispose(){this._values.forEach(e=>{e.dispose()}),this._values=[]}getCubeValues(){return this._values}getCubeCount(){return this._values.length}sum(){let e=R.create(0);return this._values.forEach(t=>{e.plus(t.sum())}),e}max(){let e=R.create(-1/0);return this._values.forEach(t=>{let n=t.max();e.isLessThan(n)&&(e=n)}),e}min(){let e=R.create(1/0);return this._values.forEach(t=>{let n=t.max();e.isGreaterThan(n)&&(e=n)}),e}count(){let e=R.create(0);return this._values.forEach(t=>{e.plus(t.count())}),e}countA(){let e=R.create(0);return this._values.forEach(t=>{e.plus(t.countA())}),e}countBlank(){let e=R.create(0);return this._values.forEach(t=>{e.plus(t.countBlank())}),e}},c_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=[];for(let n=0;n<e.length;n++){let r=e[n];if(r.isError())return r;if(!r.isArray())return E.create(p.VALUE);t.push(r)}return s_.create(t)}},l_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){return e.isError()?e:t.isError()?t:!t.isArray()&&t.getValue()===0?E.create(p.DIV_BY_ZERO):e.divided(t)}},u_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){return e.isError()?e:t.isError()?t:e.minus(t)}},d_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){return e.isError()?e:t.isError()?t:e.multiply(t)}},f_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){return e.isError()?e:t.isError()?t:e.plus(t)}};let p_=[[o_,Xo.COMPARE],[l_,Xo.DIVIDED],[u_,Xo.MINUS],[d_,Xo.MULTIPLY],[f_,Xo.PLUS],[c_,Xo.CUBE]],m_=new Set([K.ACOT,K.ACOTH,K.ARABIC,K.BASE,K.CEILING_MATH,K.CEILING_PRECISE,K.COMBINA,K.COT,K.COTH,K.CSC,K.CSCH,K.DECIMAL,K.FLOOR_MATH,K.FLOOR_PRECISE,K.MUNIT,K.RANDARRAY,K.SEC,K.SECH,K.SEQUENCE,G.CHOOSECOLS,G.CHOOSEROWS,G.DROP,G.EXPAND,G.FILTER,G.FORMULATEXT,G.HSTACK,G.SORT,G.SORTBY,G.TAKE,G.TOCOL,G.TOROW,G.UNIQUE,G.VSTACK,G.WRAPCOLS,G.WRAPROWS,G.XLOOKUP,G.XMATCH,U.BITAND,U.BITLSHIFT,U.BITOR,U.BITRSHIFT,U.BITXOR,U.ERF_PRECISE,U.ERFC_PRECISE,U.IMCOSH,U.IMCOT,U.IMCSC,U.IMCSCH,U.IMSEC,U.IMSECH,U.IMSINH,U.IMTAN,zo.ISFORMULA,zo.SHEET,zo.SHEETS,Bo.IFNA,Bo.IFS,Bo.SWITCH,Bo.XOR,q.BETA_DIST,q.BETA_INV,q.BINOM_DIST,q.BINOM_DIST_RANGE,q.BINOM_INV,q.CHISQ_DIST,q.CHISQ_DIST_RT,q.CHISQ_INV,q.CHISQ_INV_RT,q.CHISQ_TEST,q.CONFIDENCE_NORM,q.CONFIDENCE_T,q.COVARIANCE_P,q.COVARIANCE_S,q.EXPON_DIST,q.F_DIST,q.F_DIST_RT,q.F_INV,q.F_INV_RT,q.F_TEST,q.FORECAST_LINEAR,q.GAMMA,q.GAMMA_DIST,q.GAMMA_INV,q.GAMMALN_PRECISE,q.GAUSS,q.HYPGEOM_DIST,q.LOGNORM_DIST,q.LOGNORM_INV,q.MAXIFS,q.MINIFS,q.MODE_MULT,q.MODE_SNGL,q.NEGBINOM_DIST,q.NORM_DIST,q.NORM_INV,q.NORM_S_DIST,q.NORM_S_INV,q.PERCENTILE_EXC,q.PERCENTILE_INC,q.PERCENTRANK_EXC,q.PERCENTRANK_INC,q.PERMUTATIONA,q.PHI,q.POISSON_DIST,q.QUARTILE_EXC,q.QUARTILE_INC,q.RANK_AVG,q.RANK_EQ,q.SKEW_P,q.STDEV_P,q.STDEV_S,q.T_DIST,q.T_DIST_2T,q.T_DIST_RT,q.T_INV,q.T_INV_2T,q.T_TEST,q.VAR_P,q.VAR_S,q.WEIBULL_DIST,q.Z_TEST,J.ARRAYTOTEXT,Vo.ENCODEURL,J.NUMBERVALUE,J.TEXTAFTER,J.TEXTBEFORE,J.TEXTJOIN,J.TEXTSPLIT,J.UNICHAR,J.UNICODE,J.VALUETOTEXT,Ro.DAYS,Ro.ISOWEEKNUM,W.PDURATION,W.RRI,Bo.BYCOL,Bo.BYROW,Bo.MAKEARRAY,Bo.MAP,Bo.REDUCE,Bo.SCAN]);var h_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(0),n=R.create(0);for(let r=0;r<e.length;r++){let i=e[r];if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(i.isArray()){if(i=g_(i),i.isError())return i;if(e[r]=i,t=t.plus(i.sum()),t.isError())return t;n=n.plus(i.count())}else i.isNull()||(t=t.plus(i),n=n.plus(R.create(1)))}if(n.getValue()===0)return E.create(p.NUM);let r=t.divided(n);if(r.isError())return r;let i=R.create(0);for(let t=0;t<e.length;t++){let n=e[t];if(n.isString()&&(n=n.convertToNumberObjectValue()),n.isError())return n;if(n.isArray()){if(i=i.plus(n.minus(r).abs().sum()),i.isError())return i}else n.isNull()||(i=i.plus(n.minus(r).abs()))}return i.divided(n)}};function g_(e){let t=[];t[0]=[];let n=null;return e.iterator((e,r,i)=>{if(e!=null&&e.isError())return n=e,!1;e!=null&&e.isNumber()&&t[0].push(e)}),n||lo(t,1,t[0].length)}var __=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(0),n=R.create(0);for(let r=0;r<e.length;r++){let i=e[r];if((i.isString()||i.isBoolean())&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(i.isArray()){if(t=t.plus(i.sum()),t.isError())return t;n=n.plus(i.count())}else i.isNull()||(t=t.plus(i),n=n.plus(R.create(1)))}return t.divided(n)}},v_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,254)}calculate(...e){let t=!1,n;e.length%2!=0&&(t=!0,n=E.create(p.NA));let r=[],i=[];for(let a=0;a<e.length;a+=2){let o=e[a],s=o.isArray()?o.getRowCount():1,c=o.isArray()?o.getColumnCount():1;for(let e=0;e<s;e++)for(let n=0;n<c;n++){let i=o.isArray()?o.get(e,n):o;if(i.isError())return i;if(t)continue;let a=i.isNull()?``:i.getValue();r.push(a)}if(a+1>=e.length)continue;let l=e[a+1],u=l.isArray()?l.getRowCount():1,d=l.isArray()?l.getColumnCount():1;(u!==s||d!==c)&&(t=!0,n=E.create(p.VALUE));for(let e=0;e<u;e++)for(let n=0;n<d;n++){let r=l.isArray()?l.get(e,n):l;if(r.isError())return r;if(t)continue;let a=r.isNull()?``:r.getValue();i.push(a)}}return t?n:this._getResult(r,i)}_getResult(e,t){let n=e.length,r=0,i=0;for(let a=0;a<n;a++){let n=e[a],o=t[a];if(!(typeof n!=`number`&&typeof o!=`number`)){if(typeof n!=`number`||typeof o!=`number`||o<0)return E.create(p.VALUE);r+=n*o,i+=o}}if(i===0)return E.create(p.DIV_BY_ZERO);let a=r/i;return R.create(a)}},y_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(0),n=R.create(0);for(let r=0;r<e.length;r++){let i=e[r];if((i.isString()||i.isBoolean())&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(i.isArray()){if(i.iterator(e=>{if(e==null||e.isNull())return!0;let r=e;if(r.isString()&&(r=r.convertToNumberObjectValue(),r.isError()&&(r=R.create(0))),r.isBoolean()&&(r=r.convertToNumberObjectValue()),r.isError())return t=r,!1;t=t.plus(r),n=n.plus(R.create(1))}),t.isError())return t}else i.isNull()||(t=t.plus(i),n=n.plus(R.create(1)))}return t.divided(n)}},b_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3),d(this,`needsReferenceObject`,!0)}calculate(e,t,n){if(!e.isReferenceObject()||n&&!n.isReferenceObject())return E.create(p.VALUE);let r=t;if(t.isReferenceObject()&&(r=t.toArrayValueObject()),r.isArray()){let t=r.mapValue(t=>this._handleSingleObject(e,t,n));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e,r,n)}_handleSingleObject(e,t,n){let r=e.toArrayValueObject(),i=fo(r,t);i=xo(i,r,t);let a=r.getRowCount(),o=r.getColumnCount(),s=r;if(n){s=n.toArrayValueObject();let e=s.getRowCount(),t=s.getColumnCount();if(a!==e||o!==t){let e=n.getRangeData();e.endRow=e.startRow+a-1,e.endColumn=e.startColumn+o-1,n.setRangeData(e),s=n.toArrayValueObject()}}let c=s.pick(i),l=c.sum(),u=c.count();return l.divided(u)}},x_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,255),d(this,`needsReferenceObject`,!0)}calculate(e,...t){let{isError:n,errorObject:r,rangeIsDifferentSize:i,criteriaMaxRowLength:a,criteriaMaxColumnLength:o,targetRange:s,variants:c}=vo(t,e);if(n)return r;if(i)return a===1&&o===1?E.create(p.VALUE):V(a,o,E.create(p.VALUE));let l=bo(c,{formulaName:`AVERAGEIFS`,maxRowLength:a,maxColumnLength:o,isNumberSensitive:!0,targetRange:s});return l.length===1&&l[0].length===1?l[0][0]:B.create({calculateValueList:l,rowCount:l.length,columnCount:l[0].length,unitId:this.unitId||``,sheetId:this.subUnitId||``,row:this.row,column:this.column})}},S_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let o=i==null?R.create(0):i,s=a==null?R.create(1):a;o.isNull()&&(o=R.create(0)),s.isNull()&&(s=R.create(1));let c=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1,o.isArray()?o.getRowCount():1,s.isArray()?s.getRowCount():1),l=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1,o.isArray()?o.getColumnCount():1,s.isArray()?s.getColumnCount():1),u=V(c,l,e,E.create(p.NA)),d=V(c,l,t,E.create(p.NA)),f=V(c,l,n,E.create(p.NA)),m=V(c,l,r,E.create(p.NA)),h=V(c,l,o,E.create(p.NA)),g=V(c,l,s,E.create(p.NA)),_=u.mapValue((e,t,n)=>{let r=d.get(t,n),i=f.get(t,n),a=m.get(t,n),o=h.get(t,n),s=g.get(t,n);return this._handleSingleObject(e,r,i,a,o,s)});return c===1&&l===1?_.get(0,0):_}_handleSingleObject(e,t,n,r,i,a){if(e.isError())return e;if(t.isError())return t;if(n.isError())return n;if(r.isError())return r;if(i.isError())return i;if(a.isError())return a;let{isError:o,errorObject:s,variants:c}=X(e,t,n,r,i,a);if(o)return s;let[l,u,d,f,m,h]=c,g=+l.getValue(),_=+u.getValue(),v=+d.getValue(),y=+f.getValue(),b=+m.getValue(),x=+h.getValue();if(_<=0||v<=0||g<b||g>x||b===x)return E.create(p.NUM);let S;return S=y?Ic((g-b)/(x-b),_,v):Lc((g-b)/(x-b),_,v)/(x-b),R.create(S)}},C_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=r==null?n:r;i.isNull()&&(i=n);let a=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,i.isArray()?i.getRowCount():1),o=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,i.isArray()?i.getColumnCount():1),s=V(a,o,e,E.create(p.NA)),c=V(a,o,t,E.create(p.NA)),l=V(a,o,n,E.create(p.NA)),u=V(a,o,i,E.create(p.NA)),d=s.mapValue((e,t,n)=>{let r=c.get(t,n),i=l.get(t,n),a=u.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return a===1&&o===1?d.get(0,0):d}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(e,t,n,r);if(i)return a;let[s,c,l,u]=o,d=Math.floor(+s.getValue()),f=+c.getValue(),m=Math.floor(+l.getValue()),h=Math.floor(+u.getValue());if(d<0||f<0||f>1||m<0||m>d||h<0||h<m||h>d)return E.create(p.NUM);let g=0;for(let e=m;e<=h;e++)g+=Wc(e,d,f);return R.create(g)}},w_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=Math.floor(+s.getValue()),d=+c.getValue();if(l<0||u<1||u>10**10)return E.create(p.NUM);let f;return f=d?Gc(l,u):Kc(l,u),R.create(f)}},T_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return n===1&&r===1?o.get(0,0):o}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(s<0||s>1||c<1||c>10**10)return E.create(p.NUM);let l=qc(s,c);return Number.isNaN(l)||!Number.isFinite(l)?E.create(p.NUM):R.create(l)}},E_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);if(e.isError())return e;if(r.isError())return r;if(i.isError())return i;let{isError:a,errorObject:c,variants:l}=X(e,r,i);if(a)return c;let[u,d,f]=l,m=+u.getValue(),h=+d.getValue(),g=Math.floor(+f.getValue());if(m<=0||m>=1||h<=0||g<1)return E.create(p.NUM);if(g===1)return E.create(p.DIV_BY_ZERO);let _=Math.abs(xl(m/2,g-1)*h/Math.sqrt(g));return R.create(_)});return r===1&&i===1?c.get(0,0):c}},D_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return o;let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return s;if(n*r===1||i*a===1)return o.isNull()||s.isNull()?E.create(p.VALUE):E.create(p.DIV_BY_ZERO);if(n*r!==i*a)return E.create(p.NA);let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?l:f?E.create(p.DIV_BY_ZERO):this._getResult(u,d)}_getResult(e,t){let n=e.length,r=0,i=0;for(let a=0;a<n;a++)r+=e[a],i+=t[a];let a=r/n,o=i/n,s=0,c=0,l=0;for(let r=0;r<n;r++){let n=e[r]-a,i=t[r]-o;s+=n*i,c+=n**2,l+=i**2}let u=Math.sqrt(c*l);return u===0?E.create(p.DIV_BY_ZERO):R.create(s/u)}},O_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(0);for(let n=0;n<e.length;n++){let r=e[n];r.isError()||(r.isArray()?t=t.plus(r.count()):r.isString()?r.convertToNumberObjectValue().isError()||(t=t.plus(R.create(1))):r.isNull()||(t=t.plus(R.create(1))))}return t}},k_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(0);for(let n=0;n<e.length;n++){let r=e[n];if(r.isError()){t=t.plus(R.create(1));continue}r.isArray()?(r=r.countA(),t=t.plus(r)):r.isNull()||(t=t.plus(R.create(1)))}return t}},A_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isError()?e:e.getValue()===``||e.isNull()?R.create(1):e.isArray()?e.countBlank():R.create(0)}},j_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2),d(this,`needsReferenceObject`,!0)}calculate(e,t){if(!e.isReferenceObject())return E.create(p.VALUE);let n=t;if(t.isReferenceObject()&&(n=t.toArrayValueObject()),n.isArray()){let t=n.mapValue(t=>this._handleSingleObject(e,t));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e,n)}_handleSingleObject(e,t){let n=e.toArrayValueObject(),r=fo(n,t);r=xo(r,n,t);let i=n.pick(r);return this._countA(i)}_countA(e){let t=R.create(0);return e.iterator(e=>{if(e==null)return!0;t=t.plusBy(1)}),t}},M_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,255),d(this,`needsReferenceObject`,!0)}calculate(...e){let{isError:t,errorObject:n,rangeIsDifferentSize:r,criteriaMaxRowLength:i,criteriaMaxColumnLength:a,variants:o}=vo(e);if(t)return n;if(r)return i===1&&a===1?E.create(p.VALUE):V(i,a,E.create(p.VALUE));let s=bo(o,{formulaName:`COUNTIFS`,maxRowLength:i,maxColumnLength:a,isNumberSensitive:!0});return s.length===1&&s[0].length===1?s[0][0]:B.create({calculateValueList:s,rowCount:s.length,columnCount:s[0].length,unitId:this.unitId||``,sheetId:this.subUnitId||``,row:this.row,column:this.column})}},N_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return o;let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return s;if((n*r===1||i*a===1)&&(o.isNull()||s.isNull()))return E.create(p.VALUE);if(n*r!==i*a)return E.create(p.NA);let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?l:f?E.create(p.DIV_BY_ZERO):this._getResult(u,d)}_getResult(e,t){if(e.length<=1)return E.create(p.DIV_BY_ZERO);let n=e.length,r=0,i=0;for(let a=0;a<n;a++)r+=e[a],i+=t[a];let a=r/n,o=i/n,s=0;for(let r=0;r<n;r++){let n=e[r]-a,i=t[r]-o;s+=n*i}return R.create(s/(n-1))}},P_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=[],n=0,r=!0;for(let i=0;i<e.length;i++){let a=e[i];if(a.isArray()){let e=!1,i=E.create(p.VALUE);if(a.iterator(a=>{let o=this._handleSingleObject(a);if(o.isError())return e=!0,i=o,!1;if(o.isNull())return!0;let s=o.getValue();t.push(s),n+=s,r=!1}),e)return i}else{let e=this._handleSingleObject(a);if(e.isError())return e;if(e.isNull())continue;let i=e.getValue();t.push(i),n+=i,r=!1}}if(r)return E.create(p.NUM);let i=n/t.length,a=0;for(let e=0;e<t.length;e++)a+=(t[e]-i)**2;return R.create(a)}_handleSingleObject(e){if(e.isError())return e;if(e.isNull()||e.isBoolean())return Ua.create();let n=e.getValue();return(0,t.isRealNum)(n)?R.create(+n):Ua.create()}},F_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(e,t,n,r);if(i)return a;let[s,c,l,u]=o,d=+s.getValue(),f=Math.floor(+c.getValue()),m=Math.floor(+l.getValue()),h=+u.getValue();if(d<0||f<1||f>10**10||m<1||m>10**10)return E.create(p.NUM);let g;return g=h?Jc(d,f,m):Yc(d,f,m),Number.isNaN(g)||!Number.isFinite(g)?E.create(p.NUM):R.create(g)}},I_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=Math.floor(+s.getValue()),d=Math.floor(+c.getValue());if(l<0||l>1||u<1||u>10**10||d<1||d>10**10)return E.create(p.NUM);let f=Xc(l,u,d);return Number.isNaN(f)||!Number.isFinite(f)?E.create(p.NUM):R.create(f)}},L_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.mapValue(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=i.getValue();if(a<=-1||a>=1)return E.create(p.NUM);let o=Math.log((1+a)/(1-a))/2;return R.create(o)}},R_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.mapValue(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=+i.getValue(),o=Math.exp(2*a)-1,s=Math.exp(2*a)+1;return!Number.isFinite(o)&&o>0&&!Number.isFinite(s)&&s>0?R.create(1):R.create(o/s)}},z_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=t.isArray()?t.getRowCount():1,i=t.isArray()?t.getColumnCount():1,a=n.isArray()?n.getRowCount():1,o=n.isArray()?n.getColumnCount():1,s=t;t.isArray()&&r===1&&i===1&&(s=t.get(0,0));let c=n;return n.isArray()&&a===1&&o===1&&(c=n.get(0,0)),e.isArray()?e.mapValue(e=>this._handleSingleObject(e,s,c,r,i,a,o)):this._handleSingleObject(e,s,c,r,i,a,o)}_handleSingleObject(e,t,n,r,i,a,o){if(e.isError())return e;if(t.isError())return t;if(n.isError())return n;let s=e;if(e.isString()&&(s=e.convertToNumberObjectValue()),s.isError())return s;let c=+s.getValue();if((r*i===1||a*o===1)&&(t.isNull()||n.isNull()))return E.create(p.VALUE);if(r*i!==a*o)return E.create(p.NA);let{isError:l,errorObject:u,array1Values:d,array2Values:f,noCalculate:m}=Sl(t,n,r*i,i,o);if(l)return u;if(m)return E.create(p.DIV_BY_ZERO);let h=$c(c,d,f);return Number.isFinite(h)?R.create(h):E.create(p.DIV_BY_ZERO)}},B_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,values:i}=this._getValues(e);if(n)return r;if(e.isNull()||t.isNull())return E.create(p.VALUE);let{values:a}=this._getValues(t,!0);a.length===0&&(a=[0]);let o=this._getNewBinsArrayValues(a),s=Array(o.length).fill(0);for(let e=0;e<i.length;e++){let t=i[e],n=o.findIndex(e=>t>e.start&&t<=e.end);s[n]++}return B.createByArray(s.map(e=>[e]))}_getValues(e,n=!1){let r=[],i=e.isArray()?e.getRowCount():1,a=e.isArray()?e.getColumnCount():1;for(let o=0;o<i;o++)for(let i=0;i<a;i++){let a=e.isArray()?e.get(o,i):e;if(a.isError()){if(!n)return{isError:!0,errorObject:a,values:r};continue}if(a.isNull()||a.isBoolean())continue;let s=a.getValue();(0,t.isRealNum)(s)&&r.push(+s)}return{isError:!1,errorObject:null,values:r}}_getNewBinsArrayValues(e){let t=e.map((e,t)=>({value:e,index:t})).sort((e,t)=>e.value-t.value),n=[];for(let e=0;e<t.length;e++){let r=t[e].index;if(e===0){n[r]={start:-1/0,end:t[e].value};continue}n[r]={start:t[e-1].value,end:t[e].value}}return n.push({start:t[t.length-1].value,end:1/0}),n}},V_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=+i.getValue();if(a===0||a<0&&a%1==0)return E.create(p.NUM);let o=el(a);return Number.isNaN(o)||!Number.isFinite(o)?E.create(p.NUM):R.create(o)}},H_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=+i.getValue();if(a<=0)return E.create(p.NUM);let o=il(a);return Math.abs(o)<1e-15?R.create(0):R.create(o)}},U_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=ml(+i.getValue(),0,1)-.5;return R.create(a)}},W_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let n=1,r=0,i=!1;for(let a=0;a<e.length;a++){let o=e[a];if(o.isArray()){let e=!1,a=E.create(p.VALUE);if(o.iterator(o=>{if(o!=null&&o.isError())return e=!0,a=o,!1;if(o!=null&&o.isNull()||o!=null&&o.isBoolean())return!0;let s=o.getValue();if(!(0,t.isRealNum)(s))return!0;+s<=0&&(i=!0),n*=+s,r++}),e)return a}else{if(o.isError())return o;if(o.isString()){let e=o.convertToNumberObjectValue();if(e.isError())return e}if(o.isNull()||o.isBoolean())continue;let e=o.getValue();if(!(0,t.isRealNum)(e))continue;+e<=0&&(i=!0),n*=+e,r++}}if(r===0||i)return E.create(p.NUM);let a=n**(1/r);return R.create(a)}},G_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a}=Cl(e,t,n);if(i)return a;let o=wl(e);if(o instanceof E)return o;let s=this._getKnownXsValues(o,t);if(s instanceof E)return s;let c=this._getNewXsValues(s,n);if(c instanceof E)return c;let l=r==null?L.create(!0):r;if(l.isArray()&&(l=l.get(0,0)),l.isString()&&(l=l.convertToNumberObjectValue()),l.isError())return l;let u=+l.getValue();return this._getResult(o,s,c,u)}_getResult(e,t,n,r){return e.length===1&&t.length>1||e[0].length===1&&t[0].length>1?e.length===1&&t.length>1&&(r?t.length+1:t.length)>e[0].length||e[0].length===1&&t[0].length>1&&(r?t[0].length+1:t[0].length)>e.length?E.create(p.NA):this._getResultByMultipleVariables(e,t,n,r):this._getResultBySimpleVariables(e,t,n,r)}_getResultByMultipleVariables(e,t,n,r){let i=e.length===1&&e[0].length>1,a=kl(e,t,n,r,!0);if(a instanceof E)return a;let{coefficients:o,newX:s}=a,c=o[0].length,l=o[0][c-1],u=[];for(let e=0;e<s.length;e++){u[e]=[];let t=l;for(let n=c-2;n>=0;n--)t*=o[0][c-2-n]**s[e][n];u[e].push(t)}return i&&(u=Cc(u)),B.createByArray(u)}_getResultBySimpleVariables(e,t,n,r){let i=e.flat(),{slope:a,intercept:o}=El(t.flat(),i,r,!0),s=n.map(e=>e.map(e=>o*a**e));return B.createByArray(s)}_getKnownXsValues(e,t){return!t||t.isNull()?Tl(e.length,e[0].length):wl(t)}_getNewXsValues(e,t){return!t||t.isNull()?e:wl(t)}},K_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let n=0,r=0,i=!1;for(let a=0;a<e.length;a++){let o=e[a];if(o.isArray()){let e=!1,a=E.create(p.VALUE);if(o.iterator(o=>{if(o!=null&&o.isError())return e=!0,a=o,!1;if(o!=null&&o.isNull()||o!=null&&o.isBoolean())return!0;let s=o.getValue();if(!(0,t.isRealNum)(s))return!0;+s<=0&&(i=!0),n+=1/s,r++}),e)return a}else{if(o.isError())return o;if(o.isString()){let e=o.convertToNumberObjectValue();if(e.isError())return e}if(o.isNull()||o.isBoolean())continue;let e=o.getValue();if(!(0,t.isRealNum)(e))continue;+e<=0&&(i=!0),n+=1/e,r++}}if(r===0)return E.create(p.NA);if(i)return E.create(p.NUM);let a=r/n;return R.create(a)}},q_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,5),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let a=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1,i.isArray()?i.getRowCount():1),o=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1,i.isArray()?i.getColumnCount():1),s=V(a,o,e,E.create(p.NA)),c=V(a,o,t,E.create(p.NA)),l=V(a,o,n,E.create(p.NA)),u=V(a,o,r,E.create(p.NA)),d=V(a,o,i,E.create(p.NA)),f=s.mapValue((e,t,n)=>{let r=c.get(t,n),i=l.get(t,n),a=u.get(t,n),o=d.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:o.isError()?o:this._handleSingleObject(e,r,i,a,o)});return a===1&&o===1?f.get(0,0):f}_handleSingleObject(e,t,n,r,i){let{isError:a,errorObject:o,variants:s}=X(e,t,n,r,i);if(a)return o;let[c,l,u,d,f]=s,m=Math.floor(+c.getValue()),h=Math.floor(+l.getValue()),g=Math.floor(+u.getValue()),_=Math.floor(+d.getValue()),v=+f.getValue();if(m<0||m>h||m>g||m<h-_+g||h<=0||h>_||g<=0||g>_||_<=0)return E.create(p.NUM);let y;return y=v?sl(m,h,g,_):cl(m,h,g,_),Number.isNaN(y)&&(y=0),R.create(y)}},J_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return o;let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return s;if(n*r===1||i*a===1)return o.isNull()||s.isNull()?E.create(p.VALUE):E.create(p.DIV_BY_ZERO);if(n*r!==i*a)return E.create(p.NA);let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?l:f?E.create(p.DIV_BY_ZERO):this._getResult(u,d)}_getResult(e,t){let n=$c(0,e,t);return Number.isFinite(n)?R.create(n):E.create(p.DIV_BY_ZERO)}},Y_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let n=[],r=0;for(let i=0;i<e.length;i++){let a=e[i];if(a.isError())return a;if(a.isString()){let e=a.convertToNumberObjectValue();if(e.isError())return e}let o=a.isArray()?a.getRowCount():1,s=a.isArray()?a.getColumnCount():1;for(let e=0;e<o;e++)for(let i=0;i<s;i++){let o=a.isArray()?a.get(e,i):a;if(o.isError())return o;if(o.isNull()||o.isBoolean())continue;let s=o.getValue();(0,t.isRealNum)(s)&&(n.push(+s),r+=+s)}}return n.length<=3?E.create(p.DIV_BY_ZERO):this._getResult(n,r)}_getResult(e,t){let n=e.length,r=t/n,i=0;for(let t=0;t<n;t++)i+=(e[t]-r)**2;let a=Math.sqrt(i/(n-1));if(a===0)return E.create(p.DIV_BY_ZERO);let o=0;for(let t=0;t<n;t++)o+=((e[t]-r)/a)**4;let s=n*(n+1)/((n-1)*(n-2)*(n-3))*o-3*(n-1)**2/((n-2)*(n-3));return R.create(s)}},X_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Fl(e);if(t.isArray()){let e=t.mapValue(e=>this._handleSingleObject(n,e));return e.getRowCount()===1&&e.getColumnCount()===1?e.get(0,0):e}return this._handleSingleObject(n,t)}_handleSingleObject(e,t){if(!Array.isArray(e))return e;let{isError:n,errorObject:r,variants:i}=X(t);if(n)return r;let[a]=i;return Ll(e,+a.getValue())}},Z_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a}=Cl(e,t);if(i)return a;let o=wl(e);if(o instanceof E)return o;let s=this._getKnownXsValues(o,t);if(s instanceof E)return s;let c=n==null?L.create(!0):n;c.isArray()&&(c=c.get(0,0));let l=r==null?L.create(!1):r;l.isArray()&&(l=l.get(0,0));let{isError:u,errorObject:d,variants:f}=X(c,l);if(u)return d;let[p,m]=f;return this._getResult(o,s,+p.getValue(),+m.getValue())}_getResult(e,t,n,r){return e.length===1&&t.length>1||e[0].length===1&&t[0].length>1?e.length===1&&t.length>1&&(n?t.length+1:t.length)>e[0].length||e[0].length===1&&t[0].length>1&&(n?t[0].length+1:t[0].length)>e.length?E.create(p.NA):this._getResultByMultipleVariables(e,t,n,r):this._getResultBySimpleVariables(e,t,n,r)}_getResultByMultipleVariables(e,t,n,r){let i=kl(e,t,t,n,!1);if(i instanceof E)return i;let{coefficients:a,X:o,XTXInverse:s}=i,c=[];if(r){let t=e.flat(),r=t.length,i=n?t.reduce((e,t)=>e+t,0)/r:0,l=s.length,u=r-l,d=a[0].length,f=Array(d-2).fill(p.NA),m=a[0][d-1],h=[];for(let e=0;e<o.length;e++){let t=m;for(let n=d-2;n>=0;n--)t+=a[0][d-2-n]*o[e][n];h.push(t)}let g=0,_=0;for(let e=0;e<r;e++)g+=(t[e]-i)**2,_+=(t[e]-h[e])**2;let v=g-_,y=g===0?0:v/g,b=[];for(let e=l-1;e>=0;e--){let t=u>0?Math.sqrt(_/u*s[e][e]):0;b.push(t)}if(n){let e=b.shift();b.push(e)}else b.push(p.NA);let x=u>0?Math.sqrt(_/u):0,S=u>0?v/(d-1)/(_/u):p.NUM;c=[a[0],[...b],[y,x,...f],[S,u,...f],[v,_,...f]]}else c=[a[0]];return B.createByArray(c)}_getResultBySimpleVariables(e,t,n,r){let i=e.flat(),a=t.flat(),{slope:o,intercept:s}=El(a,i,n,!1);if(Number.isNaN(o))return E.create(p.NA);let c=[];if(r){let e=i.length,t=0,r=0,l=e-1;if(n){let n=0,o=0;for(let t=0;t<e;t++)n+=i[t],o+=a[t];t=n/e,r=o/e,l=e-2}let u=0,d=0,f=0;for(let n=0;n<e;n++)u+=(i[n]-t)**2,d+=(i[n]-(o*a[n]+s))**2,f+=(a[n]-r)**2;let m=u-d,h=m===u?1:m/u,g=0,_=0,v=0;l>0&&(f>0&&(g=Math.sqrt(d/l/f),_=Math.sqrt(d/l*(1/e+r**2/f))),v=Math.sqrt(d/l));let y=l>0?m/1/(d/l):p.NUM;n||(_=p.NA),c=[[o,s],[g,_],[h,v],[y,l],[m,d]]}else c=[[o,s]];return B.createByArray(c)}_getKnownXsValues(e,t){return!t||t.isNull()?Tl(e.length,e[0].length):wl(t)}},Q_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a}=Cl(e,t);if(i)return a;let o=wl(e);if(o instanceof E)return o;let s=this._getKnownXsValues(o,t);if(s instanceof E)return s;let c=n==null?L.create(!0):n;c.isArray()&&(c=c.get(0,0));let l=r==null?L.create(!1):r;l.isArray()&&(l=l.get(0,0));let{isError:u,errorObject:d,variants:f}=X(c,l);if(u)return d;let[p,m]=f;return this._getResult(o,s,+p.getValue(),+m.getValue())}_getResult(e,t,n,r){return e.length===1&&t.length>1||e[0].length===1&&t[0].length>1?e.length===1&&t.length>1&&(n?t.length+1:t.length)>e[0].length||e[0].length===1&&t[0].length>1&&(n?t[0].length+1:t[0].length)>e.length?E.create(p.NA):this._getResultByMultipleVariables(e,t,n,r):this._getResultBySimpleVariables(e,t,n,r)}_getResultByMultipleVariables(e,t,n,r){let i=kl(e,t,t,n,!0);if(i instanceof E)return i;let{coefficients:a,Y:o,X:s,XTXInverse:c}=i,l=[];if(r){let e=o.flat(),t=e.length,r=n?e.reduce((e,t)=>e+t,0)/t:0,i=c.length,u=t-i,d=a[0].length,f=Array(d-2).fill(p.NA),m=a[0][d-1],h=[];for(let e=0;e<s.length;e++){let t=m;for(let n=d-2;n>=0;n--)t*=a[0][d-2-n]**s[e][n];h.push(Math.log(t))}let g=0,_=0;for(let i=0;i<t;i++)g+=(e[i]-r)**2,!(!n&&!Number.isFinite(h[i]))&&(_+=(e[i]-h[i])**2);Number.isFinite(_)||(_=0);let v=g-_,y=g===0?0:v/g,b=[];for(let e=i-1;e>=0;e--){let t=u>0?Math.sqrt(_/u*c[e][e]):0;b.push(t)}if(n){let e=b.shift();b.push(e)}else b.push(p.NA);let x=u>0?Math.sqrt(_/u):0,S=u>0?v/(d-1)/(_/u):p.NUM;l=[a[0],[...b],[y,x,...f],[S,u,...f],[v,_,...f]]}else l=[a[0]];return B.createByArray(l)}_getResultBySimpleVariables(e,t,n,r){let i=e.flat(),a=t.flat(),{slope:o,intercept:s,Y:c}=El(a,i,n,!0);if(Number.isNaN(o))return E.create(p.NA);let l=[];if(r){let e=c.length,t=0,r=0,i=e-1;if(n){let n=0,o=0;for(let t=0;t<e;t++)n+=c[t],o+=a[t];t=n/e,r=o/e,i=e-2}let u=0,d=0,f=0;for(let n=0;n<e;n++)u+=(c[n]-t)**2,d+=(c[n]-Math.log(s*o**a[n]))**2,f+=(a[n]-r)**2;let m=u-d,h=u===0?0:m/u,g=0,_=0,v=0,y=0;i>0&&(f>0&&(g=Math.sqrt(d/i/f),_=Math.sqrt(d/i*(1/e+r**2/f))),v=Math.sqrt(d/i),y=m/1/(d/i)),n||(_=p.NA),l=[[o,s],[g,_],[h,v],[y,i],[m,d]]}else l=[[o,s]];return B.createByArray(l)}_getKnownXsValues(e,t){return!t||t.isNull()?Tl(e.length,e[0].length):wl(t)}},$_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(e,t,n,r);if(i)return a;let[s,c,l,u]=o,d=+s.getValue(),f=+c.getValue(),m=+l.getValue(),h=+u.getValue();if(d<=0||m<=0)return E.create(p.NUM);let g;return g=h?ll(d,f,m):ul(d,f,m),R.create(g)}},ev=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=this._getRangeValues(e);if(n instanceof E)return n;let r=ec(t);if(r.isError())return r;let{isError:i,errorObject:a,variants:o}=X(r);if(i)return a;let[s]=o,c=+s.getValue();if(c<=0||c>=1)return E.create(p.NUM);if(n.length<2)return E.create(p.DIV_BY_ZERO);let l=1-c,u=n.length,d=n.reduce((e,t)=>e+t,0)/u,f=n.reduce((e,t)=>e+(t-d)**2,0)/(u-1),m=Math.sqrt(f);if(m<=0)return E.create(p.NUM);let h=Math.abs(xl(l/2,u-1)*m/Math.sqrt(u));return R.create(h)}_getRangeValues(e){let t=[],n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1;for(let i=0;i<n;i++)for(let n=0;n<r;n++){let r=e.isArray()?e.get(i,n):e;if(r.isError())return r;r.isNull()||r.isBoolean()||r.isString()||t.push(+r.getValue())}return t}},tv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(-1/0);for(let n=0;n<e.length;n++){let r=e[n];if(!r.isNull()){if((r.isString()||r.isBoolean())&&(r=r.convertToNumberObjectValue()),r.isArray()&&(r=r.max()),r.isError())return r;t=this._validator(t,r)}}return t.getValue()===-1/0?R.create(0):t}_validator(e,t){let n=e.isLessThan(t),r=e;return n.getValue()&&(r=t),r}},nv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(-1/0);for(let n=0;n<e.length;n++){let r=e[n];if(!r.isNull()){if((r.isString()||r.isBoolean())&&(r=r.convertToNumberObjectValue()),r.isError())return r;if(r.isArray()&&r.iterator(e=>{let n=e;if((n==null||n.isNull()||n.isString())&&(n=R.create(0)),n.isBoolean()&&(n=n.convertToNumberObjectValue()),n.isError())return t=n,!1;t=this._validator(t,n)}),t.isError())return t;t=this._validator(t,r)}}return t.getValue()===-1/0?R.create(0):t}_validator(e,t){let n=e.isLessThan(t),r=e;return n.getValue()&&(r=t),r}},rv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,255),d(this,`needsReferenceObject`,!0)}calculate(e,...t){let{isError:n,errorObject:r,rangeIsDifferentSize:i,criteriaMaxRowLength:a,criteriaMaxColumnLength:o,targetRange:s,variants:c}=vo(t,e);if(n)return r;if(i)return a===1&&o===1?E.create(p.VALUE):V(a,o,E.create(p.VALUE));let l=bo(c,{formulaName:`MAXIFS`,maxRowLength:a,maxColumnLength:o,isNumberSensitive:!0,targetRange:s});return l.length===1&&l[0].length===1?l[0][0]:B.create({calculateValueList:l,rowCount:l.length,columnCount:l[0].length,unitId:this.unitId||``,sheetId:this.subUnitId||``,row:this.row,column:this.column})}},iv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let n=[];for(let r=0;r<e.length;r++){let i=e[r];if(i.isArray()){let e=!1,r=E.create(p.VALUE);if(i.iterator(i=>{if(i!=null&&i.isError())return e=!0,r=i,!1;if(i!=null&&i.isNull()||i!=null&&i.isBoolean())return!0;let a=i.getValue();if(!(0,t.isRealNum)(a))return!0;n.push(+a)}),e)return r}else{if(i.isError())return i;if(i.isNull()||i.isBoolean())continue;if(i.isString()){let e=i.convertToNumberObjectValue();if(e.isError())return e}let e=i.getValue();if(!(0,t.isRealNum)(e))continue;n.push(+e)}}return n.length===0?E.create(p.NUM):Il(n)}},av=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(1/0);for(let n=0;n<e.length;n++){let r=e[n];if(!r.isNull()){if((r.isString()||r.isBoolean())&&(r=r.convertToNumberObjectValue()),r.isArray()&&(r=r.min()),r.isError())return r;t=this._validator(t,r)}}return t.getValue()===1/0?R.create(0):t}_validator(e,t){let n=e.isGreaterThan(t),r=e;return n.getValue()&&(r=t),r}},ov=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(1/0);for(let n=0;n<e.length;n++){let r=e[n];if(!r.isNull()){if((r.isString()||r.isBoolean())&&(r=r.convertToNumberObjectValue()),r.isError())return r;if(r.isArray()&&r.iterator(e=>{let n=e;if((n==null||n.isNull()||n.isString())&&(n=R.create(0)),n.isBoolean()&&(n=n.convertToNumberObjectValue()),n.isError())return t=n,!1;t=this._validator(t,n)}),t.isError())return t;t=this._validator(t,r)}}return t.getValue()===1/0?R.create(0):t}_validator(e,t){let n=e.isGreaterThan(t),r=e;return n.getValue()&&(r=t),r}},sv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,255),d(this,`needsReferenceObject`,!0)}calculate(e,...t){let{isError:n,errorObject:r,rangeIsDifferentSize:i,criteriaMaxRowLength:a,criteriaMaxColumnLength:o,targetRange:s,variants:c}=vo(t,e);if(n)return r;if(i)return a===1&&o===1?E.create(p.VALUE):V(a,o,E.create(p.VALUE));let l=bo(c,{formulaName:`MINIFS`,maxRowLength:a,maxColumnLength:o,isNumberSensitive:!0,targetRange:s});return l.length===1&&l[0].length===1?l[0][0]:B.create({calculateValueList:l,rowCount:l.length,columnCount:l[0].length,unitId:this.unitId||``,sheetId:this.subUnitId||``,row:this.row,column:this.column})}},cv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let n={},r=0,i=1;for(let a=0;a<e.length;a++){let o=e[a];if(o.isError())return o;if(o.isString()){let e=o.convertToNumberObjectValue();if(e.isError())return e}let s=o.isArray()?o.getRowCount():1,c=o.isArray()?o.getColumnCount():1;for(let e=0;e<s;e++)for(let a=0;a<c;a++){let s=o.isArray()?o.get(e,a):o;if(s.isError())return s;if(s.isNull()||s.isBoolean()||s.isString())continue;let c=s.getValue();(0,t.isRealNum)(c)&&(n[+c]?(n[+c].count++,n[+c].count>i&&(i=n[+c].count)):n[+c]={count:1,order:r++})}}return r===0||i===1?new E(p.NA):this._getResult(n,i)}_getResult(e,t){let n=Object.entries(e).filter(([e,{count:n}])=>n===t).sort((e,t)=>e[1].order-t[1].order).map(([e])=>+e);return n.length===1?R.create(n[0]):B.createByArray(n.map(e=>[e]))}},lv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(e,t,n,r);if(i)return a;let[s,c,l,u]=o,d=Math.floor(+s.getValue()),f=Math.floor(+c.getValue()),m=+l.getValue(),h=+u.getValue();if(d<0||f<1||m<=0||m>=1)return E.create(p.NUM);let g;return g=h?fl(d,f,m):pl(d,f,m),R.create(g)}},uv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return n===1&&r===1?o.get(0,0):o}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=+o.getValue(),l;return l=c?ml(s,0,1):hl(s,0,1),R.create(l)}},dv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return o;let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return s;if(n*r===1||i*a===1)return o.isNull()||s.isNull()?E.create(p.VALUE):E.create(p.DIV_BY_ZERO);if(n*r!==i*a)return E.create(p.NA);let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?l:f?E.create(p.DIV_BY_ZERO):this._getResult(u,d)}_getResult(e,t){let n=e.length,r=0,i=0;for(let a=0;a<n;a++)r+=e[a],i+=t[a];let a=r/n,o=i/n,s=0,c=0,l=0;for(let r=0;r<n;r++)s+=(e[r]-a)*(t[r]-o),c+=(e[r]-a)**2,l+=(t[r]-o)**2;if(c===0||l===0)return E.create(p.DIV_BY_ZERO);let u=s/Math.sqrt(c*l);return R.create(u)}},fv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Fl(e);if(t.isArray()){let e=t.mapValue(e=>this._handleSingleObject(n,e));return e.getRowCount()===1&&e.getColumnCount()===1?e.get(0,0):e}return this._handleSingleObject(n,t)}_handleSingleObject(e,t){if(!Array.isArray(e))return e;let{isError:n,errorObject:r,variants:i}=X(t);if(n)return r;let[a]=i;return Bl(e,+a.getValue())}},pv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=this._getValues(e),i=n==null?R.create(3):n;i.isNull()&&(i=R.create(3));let a=Math.max(t.isArray()?t.getRowCount():1,i.isArray()?i.getRowCount():1),o=Math.max(t.isArray()?t.getColumnCount():1,i.isArray()?i.getColumnCount():1),s=V(a,o,t,E.create(p.NA)),c=V(a,o,i,E.create(p.NA)),l=s.mapValue((e,t,n)=>{let i=c.get(t,n);return e.isError()?e:i.isError()?i:this._handleSingleObject(r,e,i)});return a===1&&o===1?l.get(0,0):l}_handleSingleObject(e,t,n){if(e instanceof E)return e;let{isError:r,errorObject:i,variants:a}=X(t,n);if(r)return i;let[o,s]=a,c=+o.getValue(),l=Math.floor(+s.getValue()),u=e.length;if(u===0||c<e[0]||c>e[u-1])return E.create(p.NA);if(u===1)return c===e[0]?R.create(1):E.create(p.NA);let d=0,f=!1,m=0;for(;!f&&m<u;)c===e[m]?(d=(m+1)/(u+1),f=!0):c>e[m]&&m+1<u&&c<e[m+1]&&(d=(m+1+(c-e[m])/(e[m+1]-e[m]))/(u+1),f=!0),m++;return f?l<1?E.create(p.NUM):(d=Oa(d,l),R.create(d)):E.create(p.NA)}_getValues(e){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=[];for(let a=0;a<n;a++)for(let n=0;n<r;n++){let r=e.isArray()?e.get(a,n):e;if(r.isError())return r;if(r.isNull()||r.isBoolean())continue;let o=r.getValue();(0,t.isRealNum)(o)&&i.push(+o)}return i.sort((e,t)=>e-t)}},mv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);if(e.isError())return e;if(r.isError())return r;let{isError:i,errorObject:o,variants:s}=X(e,r);if(i)return o;let[c,l]=s,u=Math.floor(+c.getValue()),d=Math.floor(+l.getValue());if(u<0||u>=2147483647||d<0||u<d)return E.create(p.NUM);let f=1;for(let e=u-d+1;e<=u;e++)f*=e;return Number.isFinite(f)?R.create(f):E.create(p.NUM)});return n===1&&r===1?o.get(0,0):o}},hv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);if(e.isError())return e;if(r.isError())return r;let{isError:i,errorObject:o,variants:s}=X(e,r);if(i)return o;let[c,l]=s,u=Math.floor(+c.getValue()),d=Math.floor(+l.getValue());if(u<0||u>=2147483647||d<0)return E.create(p.NUM);if(u===0)return d===0?R.create(1):R.create(0);let f=u**d;return Number.isFinite(f)?R.create(f):E.create(p.NUM)});return n===1&&r===1?o.get(0,0):o}},gv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=+i.getValue(),o=Math.exp(-.5*a*a)/Math.sqrt(2*Math.PI);return R.create(o)}},_v=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a,xRangeValues:o,probRangeValues:s}=this._handleXRangeAndProbRange(e,t),c=r==null?n:r;r!=null&&r.isNull()&&(c=n);let l=Math.max(n.isArray()?n.getRowCount():1,c.isArray()?c.getRowCount():1),u=Math.max(n.isArray()?n.getColumnCount():1,c.isArray()?c.getColumnCount():1),d=V(l,u,n,E.create(p.NA)),f=V(l,u,c,E.create(p.NA)),m=d.mapValue((n,r,c)=>{let l=f.get(r,c);return e.isError()?e:t.isError()?t:n.isError()?n:l.isError()?l:i?a:this._handleSingleObject(o,s,n,l)});return l===1&&u===1?m.get(0,0):m}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(n,r);if(i)return a;let[s,c]=o,l=+s.getValue(),u=+c.getValue();if(t.reduce((e,t)=>e+t,0)!==1)return E.create(p.NUM);let d=0;for(let n=0;n<e.length;n++)e[n]>=l&&e[n]<=u&&(d+=t[n]);return R.create(d)}_handleXRangeAndProbRange(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return{isError:!0,errorObject:o,xRangeValues:[],probRangeValues:[]};let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return{isError:!0,errorObject:s,xRangeValues:[],probRangeValues:[]};if((n*r===1||i*a===1)&&(o.isNull()||s.isNull()))return{isError:!0,errorObject:E.create(p.VALUE),xRangeValues:[],probRangeValues:[]};if(n*r!==i*a)return{isError:!0,errorObject:E.create(p.NA),xRangeValues:[],probRangeValues:[]};let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?{isError:!0,errorObject:l,xRangeValues:[],probRangeValues:[]}:f?{isError:!0,errorObject:E.create(p.DIV_BY_ZERO),xRangeValues:[],probRangeValues:[]}:{isError:!1,errorObject:null,xRangeValues:u,probRangeValues:d}}},vv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Fl(e);if(t.isArray()){let e=t.mapValue(e=>this._handleSingleObject(n,e));return e.getRowCount()===1&&e.getColumnCount()===1?e.get(0,0):e}return this._handleSingleObject(n,t)}_handleSingleObject(e,t){if(!Array.isArray(e))return e;let{isError:n,errorObject:r,variants:i}=X(t);if(n)return r;let[a]=i;return Hl(e,Math.floor(+a.getValue()))}},yv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3),d(this,`needsReferenceObject`,!0)}calculate(e,t,n){let r=e;r.isReferenceObject()&&(r=r.toArrayValueObject());let{refHasError:i,refErrorObject:a,refNumbers:o}=this._checkRefReferenceObject(t),s=n==null?R.create(0):n;s.isReferenceObject()&&(s=s.toArrayValueObject());let c=Math.max(r.isArray()?r.getRowCount():1,s.isArray()?s.getRowCount():1),l=Math.max(r.isArray()?r.getColumnCount():1,s.isArray()?s.getColumnCount():1),u=V(c,l,r,E.create(p.NA)),d=V(c,l,s,E.create(p.NA)),f=u.map((t,n,r)=>{let s=d.get(n,r);if(!e.isReferenceObject()&&e.isNull())return E.create(p.NA);if(i)return a;if(s.isError())return s;let c=+t.getValue(),l=+s.getValue();return Number.isNaN(c)||Number.isNaN(l)?E.create(p.VALUE):this._getResult(c,l,o)});return c===1&&l===1?f.get(0,0):f}_getResult(e,t,n){let r=n.sort((e,n)=>t?e-n:n-e),i=r.indexOf(e),a=[];for(;i>=0;){let t=i+1;a.push(t),i=r.indexOf(e,t)}if(a.length===0)return E.create(p.NA);let o=a.reduce((e,t)=>e+t,0)/a.length;return R.create(o)}_checkRefReferenceObject(e){let t=!1,n=E.create(p.NA),r=[];return e.isReferenceObject()?(e.toArrayValueObject().iterator(e=>{let i=e;if(i.isError())return t=!0,n=i,!1;if(i.isNull()||i.isBoolean())return!0;let a=+i.getValue();if(Number.isNaN(a))return!0;r.push(a)}),{refHasError:t,refErrorObject:n,refNumbers:r}):{refHasError:!0,refErrorObject:n,refNumbers:r}}},bv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3),d(this,`needsReferenceObject`,!0)}calculate(e,t,n){let r=e;r.isReferenceObject()&&(r=r.toArrayValueObject());let{refHasError:i,refErrorObject:a,refNumbers:o}=this._checkRefReferenceObject(t),s=n==null?R.create(0):n;s.isReferenceObject()&&(s=s.toArrayValueObject());let c=Math.max(r.isArray()?r.getRowCount():1,s.isArray()?s.getRowCount():1),l=Math.max(r.isArray()?r.getColumnCount():1,s.isArray()?s.getColumnCount():1),u=V(c,l,r,E.create(p.NA)),d=V(c,l,s,E.create(p.NA)),f=u.map((t,n,r)=>{let s=d.get(n,r);if(!e.isReferenceObject()&&e.isNull())return E.create(p.NA);if(i)return a;if(s.isError())return s;let c=+t.getValue(),l=+s.getValue();if(Number.isNaN(c)||Number.isNaN(l))return E.create(p.VALUE);let u=o.sort((e,t)=>l?e-t:t-e).indexOf(c);return u===-1?E.create(p.NA):R.create(u+1)});return c===1&&l===1?f.get(0,0):f}_checkRefReferenceObject(e){let t=!1,n=E.create(p.NA),r=[];return e.isReferenceObject()?(e.toArrayValueObject().iterator(e=>{let i=e;if(i.isError())return t=!0,n=i,!1;if(i.isNull()||i.isBoolean())return!0;let a=+i.getValue();if(Number.isNaN(a))return!0;r.push(a)}),{refHasError:t,refErrorObject:n,refNumbers:r}):{refHasError:!0,refErrorObject:n,refNumbers:r}}},xv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return o;let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return s;if((n*r===1||i*a===1)&&(o.isNull()||s.isNull()))return E.create(p.VALUE);if(n*r!==i*a)return E.create(p.NA);let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?l:f?E.create(p.DIV_BY_ZERO):this._getResult(u,d)}_getResult(e,t){if(e.length===0)return E.create(p.DIV_BY_ZERO);let n=e.length,r=0,i=0;for(let a=0;a<n;a++)r+=e[a],i+=t[a];let a=r/n,o=i/n,s=0,c=0,l=0;for(let r=0;r<n;r++)s+=(e[r]-a)*(t[r]-o),c+=(e[r]-a)**2,l+=(t[r]-o)**2;if(c===0||l===0)return E.create(p.DIV_BY_ZERO);let u=(s/Math.sqrt(c*l))**2;return R.create(u)}},Sv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let n=[],r=0;for(let i=0;i<e.length;i++){let a=e[i];if(a.isError())return a;if(a.isString()){let e=a.convertToNumberObjectValue();if(e.isError())return e}let o=a.isArray()?a.getRowCount():1,s=a.isArray()?a.getColumnCount():1;for(let e=0;e<o;e++)for(let i=0;i<s;i++){let o=a.isArray()?a.get(e,i):a;if(o.isError())return o;if(o.isNull()||o.isBoolean())continue;let s=o.getValue();(0,t.isRealNum)(s)&&(n.push(+s),r+=+s)}}return n.length<=2?E.create(p.DIV_BY_ZERO):this._getResult(n,r)}_getResult(e,t){let n=e.length,r=t/n,i=0;for(let t=0;t<n;t++)i+=(e[t]-r)**2;let a=Math.sqrt(i/(n-1));if(a===0)return E.create(p.DIV_BY_ZERO);let o=0;for(let t=0;t<n;t++)o+=((e[t]-r)/a)**3;let s=n/((n-1)*(n-2))*o;return R.create(s)}},Cv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let n=[],r=0;for(let i=0;i<e.length;i++){let a=e[i];if(a.isError())return a;if(a.isString()){let e=a.convertToNumberObjectValue();if(e.isError())return e}let o=a.isArray()?a.getRowCount():1,s=a.isArray()?a.getColumnCount():1;for(let e=0;e<o;e++)for(let i=0;i<s;i++){let o=a.isArray()?a.get(e,i):a;if(o.isError())return o;if(o.isNull()||o.isBoolean())continue;let s=o.getValue();(0,t.isRealNum)(s)&&(n.push(+s),r+=+s)}}return n.length<=2?E.create(p.DIV_BY_ZERO):this._getResult(n,r)}_getResult(e,t){let n=e.length,r=t/n,i=0;for(let t=0;t<n;t++)i+=(e[t]-r)**2;let a=Math.sqrt(i/n);if(a===0)return E.create(p.DIV_BY_ZERO);let o=0;for(let t=0;t<n;t++)o+=((e[t]-r)/a)**3;let s=o/n;return R.create(s)}},wv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return o;let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return s;if(n*r===1||i*a===1)return o.isNull()||s.isNull()?E.create(p.VALUE):E.create(p.DIV_BY_ZERO);if(n*r!==i*a)return E.create(p.NA);let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?l:f?E.create(p.DIV_BY_ZERO):this._getResult(u,d)}_getResult(e,t){let n=e.length,r=0,i=0;for(let a=0;a<n;a++)r+=e[a],i+=t[a];let a=r/n,o=i/n,s=0,c=0;for(let r=0;r<n;r++)s+=(e[r]-a)*(t[r]-o),c+=(t[r]-o)**2;if(c===0)return E.create(p.DIV_BY_ZERO);let l=s/c;return R.create(l)}},Tv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Fl(e);if(t.isArray()){let e=t.mapValue(e=>this._handleSingleObject(n,e));return e.getRowCount()===1&&e.getColumnCount()===1?e.get(0,0):e}return this._handleSingleObject(n,t)}_handleSingleObject(e,t){if(!Array.isArray(e))return e;let{isError:n,errorObject:r,variants:i}=X(t);if(n)return r;let[a]=i;return Rl(e,+a.getValue())}},Ev=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=+s.getValue(),d=+c.getValue();if(d<=0)return E.create(p.NUM);let f=(l-u)/d;return R.create(f)}},Dv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=this.flattenArray(e,!1);return t.isError()?t:t.std(1)}},Ov=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=this.flattenArray(e,!1);return t.isError()?t:t.std()}},kv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return o;let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return s;if((n*r===1||i*a===1)&&(o.isNull()||s.isNull()))return E.create(p.VALUE);if(n*r!==i*a)return E.create(p.NA);let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?l:f?E.create(p.DIV_BY_ZERO):this._getResult(u,d)}_getResult(e,t){let n=e.length;if(n<=2)return E.create(p.DIV_BY_ZERO);let r=0,i=0;for(let a=0;a<n;a++)r+=e[a],i+=t[a];let a=r/n,o=i/n,s=0,c=0,l=0;for(let r=0;r<n;r++)s+=(e[r]-a)*(t[r]-o),c+=(e[r]-a)**2,l+=(t[r]-o)**2;if(l===0)return E.create(p.DIV_BY_ZERO);let u=Math.sqrt((c-s**2/l)/(n-2));return Number.isNaN(u)||!Number.isFinite(u)?E.create(p.NUM):R.create(u)}},Av=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=Math.floor(+s.getValue()),d=+c.getValue();if(u<1)return E.create(p.NUM);let f;return f=d?yl(l,u):bl(l,u),Number.isNaN(f)||!Number.isFinite(f)?E.create(p.NUM):R.create(f)}},jv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return n===1&&r===1?o.get(0,0):o}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(s<0||c<1||c>10**10)return E.create(p.NUM);let l=yl(-s,c)*2;return Number.isNaN(l)||!Number.isFinite(l)?E.create(p.NUM):R.create(l)}},Mv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return n===1&&r===1?o.get(0,0):o}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(c<1||c>10**10)return E.create(p.NUM);let l=yl(-s,c);return Number.isNaN(l)||!Number.isFinite(l)?E.create(p.NUM):R.create(l)}},Nv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return n===1&&r===1?o.get(0,0):o}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(s<=0||s>1||c<1||c>10**10)return E.create(p.NUM);let l=xl(s,c);return Number.isNaN(l)||!Number.isFinite(l)?E.create(p.NUM):R.create(l)}},Pv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a}=Cl(e,t,n);if(i)return a;let o=wl(e);if(o instanceof E)return o;let s=this._getKnownXsValues(o,t);if(s instanceof E)return s;let c=this._getNewXsValues(s,n);if(c instanceof E)return c;let l=r==null?L.create(!0):r;if(l.isArray()&&(l=l.get(0,0)),l.isString()&&(l=l.convertToNumberObjectValue()),l.isError())return l;let u=+l.getValue();return this._getResult(o,s,c,u)}_getResult(e,t,n,r){return e.length===1&&t.length>1||e[0].length===1&&t[0].length>1?e.length===1&&t.length>1&&(r?t.length+1:t.length)>e[0].length||e[0].length===1&&t[0].length>1&&(r?t[0].length+1:t[0].length)>e.length?E.create(p.NA):this._getResultByMultipleVariables(e,t,n,r):this._getResultBySimpleVariables(e,t,n,r)}_getResultByMultipleVariables(e,t,n,r){let i=e.length===1&&e[0].length>1,a=kl(e,t,n,r,!1);if(a instanceof E)return a;let{coefficients:o,newX:s}=a,c=o[0].length,l=o[0][c-1],u=[];for(let e=0;e<s.length;e++){u[e]=[];let t=l;for(let n=c-2;n>=0;n--)t+=o[0][c-2-n]*s[e][n];u[e].push(t)}return i&&(u=Cc(u)),B.createByArray(u)}_getResultBySimpleVariables(e,t,n,r){let i=e.flat(),{slope:a,intercept:o}=El(t.flat(),i,r,!1);if(Number.isNaN(a))return E.create(p.NA);let s=n.map(e=>e.map(e=>a*e+o));return B.createByArray(s)}_getKnownXsValues(e,t){return!t||t.isNull()?Tl(e.length,e[0].length):wl(t)}_getNewXsValues(e,t){return!t||t.isNull()?e:wl(t)}},Fv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=this._getValues(e);if(t.isArray()){let e=t.mapValue(e=>this._handleSingleObject(n,e));return e.getRowCount()===1&&e.getColumnCount()===1?e.get(0,0):e}return this._handleSingleObject(n,t)}_handleSingleObject(e,t){if(e instanceof E)return e;let{isError:n,errorObject:r,variants:i}=X(t);if(n)return r;let[a]=i,o=+a.getValue();if(o<0||o>=1)return E.create(p.NUM);let s=Oa(e.length*o/2,0)*2,c=e.slice(s/2,e.length-s/2),l=c.reduce((e,t)=>e+t,0)/c.length;return R.create(l)}_getValues(e){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=[];for(let a=0;a<n;a++)for(let n=0;n<r;n++){let r=e.isArray()?e.get(a,n):e;if(r.isError())return r;if(r.isNull()||r.isBoolean())continue;let o=r.getValue();(0,t.isRealNum)(o)&&i.push(+o)}return i.length===0?E.create(p.NUM):i.sort((e,t)=>e-t)}},Iv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=this.flattenArray(e,!1);return t.isError()?t:t.var(1)}},Lv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=this.flattenArray(e,!1);return t.isError()?t:t.var()}};let Rv=[[h_,q.AVEDEV],[__,q.AVERAGE],[v_,q.AVERAGE_WEIGHTED],[y_,q.AVERAGEA],[b_,q.AVERAGEIF],[x_,q.AVERAGEIFS],[S_,q.BETA_DIST],[Ul,q.BETA_INV],[Wl,q.BINOM_DIST],[C_,q.BINOM_DIST_RANGE],[Gl,q.BINOM_INV],[w_,q.CHISQ_DIST],[Kl,q.CHISQ_DIST_RT],[T_,q.CHISQ_INV],[ql,q.CHISQ_INV_RT],[Jl,q.CHISQ_TEST],[Yl,q.CONFIDENCE_NORM],[E_,q.CONFIDENCE_T],[D_,q.CORREL],[O_,q.COUNT],[k_,q.COUNTA],[A_,q.COUNTBLANK],[j_,q.COUNTIF],[M_,q.COUNTIFS],[Xl,q.COVARIANCE_P],[N_,q.COVARIANCE_S],[P_,q.DEVSQ],[Zl,q.EXPON_DIST],[F_,q.F_DIST],[Ql,q.F_DIST_RT],[I_,q.F_INV],[$l,q.F_INV_RT],[eu,q.F_TEST],[L_,q.FISHER],[R_,q.FISHERINV],[z_,q.FORECAST],[z_,q.FORECAST_LINEAR],[B_,q.FREQUENCY],[V_,q.GAMMA],[tu,q.GAMMA_DIST],[nu,q.GAMMA_INV],[H_,q.GAMMALN],[H_,q.GAMMALN_PRECISE],[U_,q.GAUSS],[W_,q.GEOMEAN],[G_,q.GROWTH],[K_,q.HARMEAN],[q_,q.HYPGEOM_DIST],[J_,q.INTERCEPT],[Y_,q.KURT],[X_,q.LARGE],[Z_,q.LINEST],[Q_,q.LOGEST],[$_,q.LOGNORM_DIST],[ru,q.LOGNORM_INV],[ev,q.MARGINOFERROR],[tv,q.MAX],[nv,q.MAXA],[rv,q.MAXIFS],[iv,q.MEDIAN],[av,q.MIN],[ov,q.MINA],[sv,q.MINIFS],[cv,q.MODE_MULT],[iu,q.MODE_SNGL],[lv,q.NEGBINOM_DIST],[au,q.NORM_DIST],[ou,q.NORM_INV],[uv,q.NORM_S_DIST],[su,q.NORM_S_INV],[dv,q.PEARSON],[fv,q.PERCENTILE_EXC],[cu,q.PERCENTILE_INC],[pv,q.PERCENTRANK_EXC],[lu,q.PERCENTRANK_INC],[mv,q.PERMUT],[hv,q.PERMUTATIONA],[gv,q.PHI],[uu,q.POISSON_DIST],[_v,q.PROB],[vv,q.QUARTILE_EXC],[du,q.QUARTILE_INC],[yv,q.RANK_AVG],[bv,q.RANK_EQ],[xv,q.RSQ],[Sv,q.SKEW],[Cv,q.SKEW_P],[wv,q.SLOPE],[Tv,q.SMALL],[Ev,q.STANDARDIZE],[fu,q.STDEV_P],[pu,q.STDEV_S],[Dv,q.STDEVA],[Ov,q.STDEVPA],[kv,q.STEYX],[Av,q.T_DIST],[jv,q.T_DIST_2T],[Mv,q.T_DIST_RT],[Nv,q.T_INV],[mu,q.T_INV_2T],[hu,q.T_TEST],[Pv,q.TREND],[Fv,q.TRIMMEAN],[gu,q.VAR_P],[_u,q.VAR_S],[Iv,q.VARA],[Lv,q.VARPA],[vu,q.WEIBULL_DIST],[yu,q.Z_TEST]];var zv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(0):t;if(t!=null&&t.isNull()&&(n=R.create(0)),n.isArray()){let t=n.mapValue(t=>this._handleSingleObject(e,t));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e,n)}_handleSingleObject(e,t){let n=this._checkArray(e);if(n.isError())return n;let{isError:r,errorObject:i,variants:a}=X(t);if(r)return i;let[o]=a,s=+o.getValue(),c=e.isArray()?e.getRowCount():1,l=e.isArray()?e.getColumnCount():1,u=``;for(let t=0;t<c;t++)for(let n=0;n<l;n++){let r=e.isArray()?e.get(t,n):e,i=`${r.getValue()}`;r.isNull()&&(i=``),r.isBoolean()&&(i=i.toLocaleUpperCase()),r.isString()&&s?u+=`"${i}"`:u+=i,t===c-1&&n===l-1||(s?n===l-1?u+=`;`:u+=`,`:u+=`, `)}return s&&(u=`{${u}}`),u.length>32767?E.create(p.CALC):z.create(u)}_checkArray(e){if(e.isArray()){let t=e.getRowCount(),n=e.getColumnCount();return t>1||n>1?e:e.get(0,0)}return e}},Bv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError()||e.isNull()||e.isBoolean()||e.isNumber())return e;let t=e.getValue().toLocaleString(),n=``;for(let e=0;e<t.length;e++){let r=t.charCodeAt(e);r===12288?r=32:r>=65281&&r<=65374&&(r-=65248),n+=String.fromCharCode(r)}return z.create(n)}},Vv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=+i.getValue(),o=Math.abs(Number.parseInt(a.toString(),10)),s=Number.parseFloat((Math.abs(a)-o).toFixed(2)),c=``;return c=o===0?s===0?`ศูนย์บาทถ้วน`:`${a<0?`ลบ`:``}${this._convertNumberToThaiText(s*100)}สตางค์`:s===0?`${a<0?`ลบ`:``}${this._convertNumberToThaiText(o)}บาทถ้วน`:`${a<0?`ลบ`:``}${this._convertNumberToThaiText(o)}บาท${this._convertNumberToThaiText(s*100)}สตางค์`,z.create(c)}_convertNumberToThaiText(e){let t=[`ล้าน`,`สิบ`,`ร้อย`,`พัน`,`หมื่น`,`แสน`,``],n=[`ศูนย์`,`หนึ่ง`,`สอง`,`สาม`,`สี่`,`ห้า`,`หก`,`เจ็ด`,`แปด`,`เก้า`],r=[`ลบ`,`บาท`,`ถ้วน`,`สตางค์`,`ยี่`,`เอ็ด`,`,`,` `,`฿`],i=e.toString(),a=i.length,o=``;for(let e=a;e>0;e--){let s=Number.parseInt(i.charAt(a-e),10),c=n[s],l=e>1?(e-1)%6:6;if(l===1&&s===2&&(c=r[4]),s===1)switch(l){case 0:case 6:o+=e<a?r[5]:c;break;case 1:break;default:o+=c;break}else if(s===0){l===0&&(o+=t[l]);continue}else o+=c;o+=t[l]}return o}};let Hv=Object.values(t.DataStreamTreeTokenType).filter(e=>[t.DataStreamTreeTokenType.TABLE_START,t.DataStreamTreeTokenType.TABLE_ROW_START,t.DataStreamTreeTokenType.TABLE_CELL_START,t.DataStreamTreeTokenType.TABLE_CELL_END,t.DataStreamTreeTokenType.TABLE_ROW_END,t.DataStreamTreeTokenType.TABLE_END,t.DataStreamTreeTokenType.CUSTOM_BLOCK].includes(e));var Uv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=Math.floor(+i.getValue());if(a<=0)return E.create(p.VALUE);let o=String.fromCharCode(a);return Hv.some(e=>e===o)&&(o=``),z.create(o)}},Wv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError()||e.isBoolean()||e.isNumber())return e;if(e.isNull())return z.create(``);let t=`${e.getValue()}`.replace(/[\0-\x1F]/g,``);return z.create(t)}},Gv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);let t=e.getValue().toLocaleString();if(e.isBoolean()&&(t=t.toLocaleUpperCase()),t===``)return E.create(p.VALUE);let n=t.charCodeAt(0);return R.create(n)}},Kv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=``,n=null;for(let r of e)if(r.isArray()){if(r.iterator(e=>{if(e==null||e.isNull())return!0;if(e.isError())return n=e,!1;e.isBoolean()?t+=`${e.getValue()}`.toLocaleUpperCase():(e.isString()||e.isNumber())&&(t+=e.getValue())}),n)return n}else !r.isError()&&!r.isNull()&&(t+=r.getValue());return z.create(t)}},qv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=0,n=0;e.forEach(e=>{if(e.isArray()){let r=e;t=Math.max(t,r.getRowCount()),n=Math.max(n,r.getColumnCount())}else t=Math.max(t,1),n=Math.max(n,1)});let r=null;for(let i of e)r=V(t,n,i,E.create(p.NA)).mapValue((e,t,n)=>{var i,a;let o=r&&r.get(t,n);if(o!=null&&o.isError())return o;if(e.isError())return e;let s=o==null?void 0:o.getValue(),c=e==null?void 0:e.getValue();o!=null&&o.isBoolean()&&(s=`${s}`.toLocaleUpperCase()),e!=null&&e.isBoolean()&&(c=`${c}`.toLocaleUpperCase());let l=o!=null&&o.isNull()||(i=s)==null?``:i,u=e!=null&&e.isNull()||(a=c)==null?``:a;return z.create(`${l}${u}`)});return r||E.create(p.VALUE)}},Jv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;if(e.isNull())return z.create(``);let t=`${e.getValue()}`;e.isBoolean()&&(t=t.toLocaleUpperCase());let n=``;for(let e=0;e<t.length;e++){let r=t.charCodeAt(e);r>=33&&r<=126?n+=String.fromCharCode(r+65248):r===32?n+=` `:n+=t.charAt(e)}return z.create(n)}},Yv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2),d(this,`needsLocale`,!0)}calculate(e,t){let n=t==null?R.create(2):t;n.isNull()&&(n=R.create(2));let r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.mapValue((e,t,n)=>{let r=o.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return r===1&&i===1?s.get(0,0):s}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.trunc(+o.getValue());if(c>127)return E.create(p.VALUE);c<0&&(s=`${s}`.length<Math.abs(c)?0:s<0?-Da(Math.abs(s),c):Da(s,c),c=0);let l=Fr(this.getLocale(),s,c);return z.create(l)}},Xv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,Ua.create()),a=V(n,r,t,Ua.create()),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return n===1&&r===1?o.get(0,0):o}_handleSingleObject(e,t){if(e.isNull()||t.isNull()){let n=e.isNull()&&t.isNull();return L.create(n)}let n=`${e.getValue()}`;e.isBoolean()&&(n=n.toLocaleUpperCase());let r=`${t.getValue()}`;t.isBoolean()&&(r=r.toLocaleUpperCase());let i=n===r;return L.create(i)}};let Zv=(e,n)=>t.numfmt.format(e,n,{throws:!1}),Qv=e=>{let t=`${e.getValue()}`;return e.isNull()&&(t=``),e.isBoolean()&&(t=t.toLocaleUpperCase()),e.isNumber()&&(t=e.getPattern()===``?`${Va(+e.getValue())}`:Zv(e.getPattern(),+e.getValue())),t};var $v=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?R.create(1):n,i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,r,E.create(p.NA)),l=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return i===1&&a===1?l.get(0,0):l}_handleSingleObject(e,t,n){let r=Qv(e),i=Qv(t),{isError:a,errorObject:o,variants:s}=X(n);if(a)return o;let[c]=s,l=Math.floor(+c.getValue());if(t.isNull()||l<=0||l>i.length)return E.create(p.VALUE);if(e.isNull()||r.length===0)return R.create(l);let u=i.indexOf(r,l-1);return u===-1?E.create(p.VALUE):R.create(u+1)}};function ey(e){let t=0;for(let n=0;n<e.length;n++)t+=ty(e,n);return t}function ty(e,t,n=`ltr`){return ay(e,t,n)>255?2:1}function ny(e){return e>=55296&&e<=56319}function ry(e){return e>=56320&&e<=57343}function iy(e,t){return((e&1023)<<10)+(t&1023)+65536}function ay(e,t,n=`ltr`){let r=e.charCodeAt(t);if(n===`ltr`&&ny(r)&&t+1<e.length){let n=e.charCodeAt(t+1);if(ry(n))return iy(r,n)}if(n===`rtl`&&ry(r)&&t-1>=0){let n=e.charCodeAt(t-1);if(ny(n))return iy(n,r)}return r}var oy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?R.create(1):n,i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,r,E.create(p.NA)),l=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return i===1&&a===1?l.get(0,0):l}_handleSingleObject(e,t,n){let r=Qv(e),i=Qv(t),{isError:a,errorObject:o,variants:s}=X(n);if(a)return o;let[c]=s,l=Math.floor(+c.getValue());if(t.isNull()||l<=0||l>i.length)return E.create(p.VALUE);if(e.isNull()||r.length===0)return R.create(l);let u=i.indexOf(r,l-1);if(u===-1)return E.create(p.VALUE);let d=ey(i.substring(0,u))+1;return R.create(d)}},sy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,3)}calculate(e,t,n){let r=t==null?R.create(2):t;r.isNull()&&(r=R.create(2));let i=n==null?L.create(!1):n;i.isNull()&&(i=L.create(!1));let a=Math.max(e.isArray()?e.getRowCount():1,r.isArray()?r.getRowCount():1,i.isArray()?i.getRowCount():1),o=Math.max(e.isArray()?e.getColumnCount():1,r.isArray()?r.getColumnCount():1,i.isArray()?i.getColumnCount():1),s=V(a,o,e,E.create(p.NA)),c=V(a,o,r,E.create(p.NA)),l=V(a,o,i,E.create(p.NA)),u=s.mapValue((e,t,n)=>{let r=c.get(t,n),i=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return a===1&&o===1?u.get(0,0):u}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=Math.trunc(+s.getValue()),d=+c.getValue();if(u>127)return E.create(p.VALUE);u<0&&(l=`${l}`.length<Math.abs(u)?0:l<0?-Da(Math.abs(l),u):Da(l,u),u=0);let f=d?`###0`:`#,##0`;u>0&&(f+=`.${`0`.repeat(u)}`);let m=Zv(f,l);return z.create(m)}},cy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(1):t,r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.mapValue((e,t,n)=>{let r=o.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return r===1&&i===1?s.get(0,0):s}_handleSingleObject(e,t){let n=Qv(e),{isError:r,errorObject:i,variants:a}=X(t);if(r)return i;let[o]=a,s=Math.floor(+o.getValue());if(s<0)return E.create(p.VALUE);if(e.isNull()||s===0)return z.create(``);if(s>=n.length)return z.create(n);let c=n.substring(0,s);return z.create(c)}},ly=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(1):t,r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,Ua.create()),o=V(r,i,n,Ua.create()),s=a.mapValue((e,t,n)=>{let r=o.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return r===1&&i===1?s.get(0,0):s}_handleSingleObject(e,t){let n=Qv(e),{isError:r,errorObject:i,variants:a}=X(t);if(r)return i;let[o]=a,s=Math.floor(+o.getValue());if(s<0)return E.create(p.VALUE);if(e.isNull()||s===0)return z.create(``);let c=0,l=0,u=``;for(;l<s&&c<n.length;)l+=ty(n,c),u+=n.charAt(c),c++;return z.create(u)}},uy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleText(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleText(e)}_handleSingleText(e){if(e.isError())return e;let t=Qv(e);return R.create(t.length)}},dy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleText(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleText(e)}_handleSingleText(e){if(e.isError())return e;let t=ey(Qv(e));return R.create(t)}},fy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;if(e.isNull())return z.create(``);let t=`${e.getValue()}`.toLocaleLowerCase();return z.create(t)}},py=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let r=Qv(e),{isError:i,errorObject:a,variants:o}=X(t,n);if(i)return a;let[s,c]=o,l=Math.floor(+s.getValue()),u=Math.floor(+c.getValue());if(l<=0||u<0)return E.create(p.VALUE);if(e.isNull()||l>r.length||u===0)return z.create(``);let d=r.substring(l-1,l-1+u);return z.create(d)}},my=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let r=Qv(e),{isError:i,errorObject:a,variants:o}=X(t,n);if(i)return a;let[s,c]=o,l=Math.floor(+s.getValue()),u=Math.floor(+c.getValue());if(l<=0||u<0)return E.create(p.VALUE);if(e.isNull()||l>r.length||u===0)return z.create(``);r=r.substring(l-1);let d=0,f=0,m=``;for(;f<u&&d<r.length;)f+=ty(r,d),m+=r.charAt(d),d++;return z.create(m)}};let hy=[`〇`,`一`,`二`,`三`,`四`,`五`,`六`,`七`,`八`,`九`],gy=[`零`,`壹`,`贰`,`叁`,`肆`,`伍`,`陆`,`柒`,`捌`,`玖`],_y=[``,`十`,`百`,`千`],vy=[``,`拾`,`佰`,`仟`],yy=[``,`万`,`亿`,`兆`];var by=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return n===1&&r===1?o.get(0,0):o}_handleSingleObject(e,t){let n=e.convertToNumberObjectValue();if(n.isError())return n;let r=t.convertToNumberObjectValue();if(r.isError())return r;let i=n.getValue(),a=Math.trunc(r.getValue());if(i<0||![1,2,3].includes(a))return E.create(p.NUM);i=Math.round(i);let o=i.toString(),s=o.length,c=``,l=!1;for(let e=0;e<s;e++){let t=Number(o[e]);if(s===1&&t===0){c+=a===2?gy[0]:hy[0];break}if(a===3){c+=hy[t];continue}let n=s-e-1,r=n%4,i=Math.trunc(n/4);if(s>=17&&i>2){if(c+=a===1?hy[t]:gy[t],i>3)continue}else t===0?l=r!==0:(l&&(c+=a===1?hy[0]:gy[0],l=!1),c+=a===1?hy[t]+_y[r]:gy[t]+vy[r]);r===0&&i>0&&o.slice(Math.max(0,e-3),e+1)!==`0000`&&(c+=yy[i])}return z.create(c)}},xy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,3)}isArgumentsIgnoreNumberPattern(){return!0}calculate(e,t,n){let r=t==null?z.create(`.`):t,i=Math.max(e.isArray()?e.getRowCount():1,r.isArray()?r.getRowCount():1,n!=null&&n.isArray()?n.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,r.isArray()?r.getColumnCount():1,n!=null&&n.isArray()?n.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,r,E.create(p.NA)),c=n?V(i,a,n,E.create(p.NA)):void 0,l=o.mapValue((e,t,r)=>{let i=s.get(t,r),a=n?c.get(t,r):void 0;return e.isError()?e:i.isError()?i:a!=null&&a.isError()?a:i.isNull()||a!=null&&a.isNull()?E.create(p.VALUE):e.isNull()?R.create(0):this._handleSingleObject(e,i,a)});return i===1&&a===1?l.get(0,0):l}_handleSingleObject(e,n,r){let i=`${e.getValue()}`;i=i.replace(/\s+/g,``);let a=`${n.getValue()}`;n.isBoolean()&&(a=a.toLocaleUpperCase()),a=a.charAt(0);let o;if(r&&(o=`${r.getValue()}`,r.isBoolean()&&(o=o.toLocaleUpperCase()),o=o.charAt(0),a===o))return E.create(p.VALUE);if(i.trim()===``)return R.create(0);if(!i.match(/^\s*[+-]?\s*(?:(?:\d+(?:\.\d*)?)|(?:\.\d+))(?:[eE][+-]?\d+)?[ \t]*/))return E.create(p.VALUE);let s=i.split(a);if(s.length>2)return E.create(p.VALUE);let c=s[0].replace(/,/g,``);r&&(c=c.split(o).join(``));let l=0;if(s.length===1){a===`,`&&(c=c.replace(/\./g,``));let e=0;for(;c.endsWith(`%`);)c=c.slice(0,-1),e++;l=e>0?c/100**e:+c}else{if(!(0,t.isRealNum)(c))return E.create(p.VALUE);let e=s[1],n=0;for(;e.endsWith(`%`);)e=e.slice(0,-1),n++;let r=`${c}.${e}`;if(!(0,t.isRealNum)(r))return E.create(p.VALUE);l=n>0?r/100**n:+r}return Number.isNaN(l)?E.create(p.VALUE):R.create(l)}},Sy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError()||e.isNull()||e.isBoolean()||e.isNumber())return e;let t=e.getValue().toLocaleString().toLocaleLowerCase().replace(/(^|\b|\W|\d|_)[a-z]/g,e=>e.toLocaleUpperCase());return z.create(t)}},$=function(e){return e[e.ROOT=0]=`ROOT`,e[e.GROUP=1]=`GROUP`,e[e.POSITION=2]=`POSITION`,e[e.SET=3]=`SET`,e[e.RANGE=4]=`RANGE`,e[e.REPETITION=5]=`REPETITION`,e[e.REFERENCE=6]=`REFERENCE`,e[e.CHAR=7]=`CHAR`,e}($||{});let Cy=()=>[{type:$.RANGE,from:48,to:57}],wy=()=>[{type:$.CHAR,value:95},{type:$.RANGE,from:97,to:122},{type:$.RANGE,from:65,to:90},{type:$.RANGE,from:48,to:57}],Ty=()=>[{type:$.CHAR,value:9},{type:$.CHAR,value:10},{type:$.CHAR,value:11},{type:$.CHAR,value:12},{type:$.CHAR,value:13},{type:$.CHAR,value:32},{type:$.CHAR,value:160},{type:$.CHAR,value:5760},{type:$.RANGE,from:8192,to:8202},{type:$.CHAR,value:8232},{type:$.CHAR,value:8233},{type:$.CHAR,value:8239},{type:$.CHAR,value:8287},{type:$.CHAR,value:12288},{type:$.CHAR,value:65279}],Ey=()=>({type:$.SET,set:wy(),not:!1}),Dy=()=>({type:$.SET,set:wy(),not:!0}),Oy=()=>({type:$.SET,set:Cy(),not:!1}),ky=()=>({type:$.SET,set:Cy(),not:!0}),Ay=()=>({type:$.SET,set:Ty(),not:!1}),jy=()=>({type:$.SET,set:Ty(),not:!0}),My=()=>({type:$.SET,set:[{type:$.CHAR,value:10},{type:$.CHAR,value:13},{type:$.CHAR,value:8232},{type:$.CHAR,value:8233}],not:!0});function Ny(e){let t={type:$.ROOT,stack:[]},n=t,r=t.stack,i=[],a=[],o=0,s=t=>{throw SyntaxError(`Invalid regular expression: /${e}/: Nothing to repeat at column ${t-1}`)},c=Fy(e),l=0,u;for(;l<c.length;)switch(u=c[l++],u){case`\\`:if(l===c.length)throw SyntaxError(`Invalid regular expression: /${e}/: \\ at end of pattern`);switch(u=c[l++],u){case`b`:r.push({type:$.POSITION,value:`b`});break;case`B`:r.push({type:$.POSITION,value:`B`});break;case`w`:r.push(Ey());break;case`W`:r.push(Dy());break;case`d`:r.push(Oy());break;case`D`:r.push(ky());break;case`s`:r.push(Ay());break;case`S`:r.push(jy());break;default:if(/\d/.test(u)){for(;/\d/.test(c[l])&&l<c.length;)u+=c[l++];let e=Number.parseInt(u,10);r.push({type:$.REFERENCE,value:e}),a.push({reference:{type:$.REFERENCE,value:e},stack:r,index:r.length-1})}else r.push({type:$.CHAR,value:u.charCodeAt(0)})}break;case`^`:r.push({type:$.POSITION,value:`^`});break;case`$`:r.push({type:$.POSITION,value:`$`});break;case`[`:{let t=c[l]===`^`;t&&l++;let n=Py(c.slice(l),e);l+=n[1],r.push({type:$.SET,set:n[0],not:t});break}case`.`:r.push(My());break;case`(`:{let t={type:$.GROUP,stack:[],remember:!0};if(c[l]===`?`){let n=c[l+1];if(l+=2,n===`=`)t.followedBy=!0;else if(n===`!`)t.notFollowedBy=!0;else if(n!==`:`)throw SyntaxError(`Invalid regular expression: /${e}/: Invalid group, character '${n}' after '?' at column ${l-1}`);t.remember=!1}else o+=1;r.push(t),i.push(n),n=t,r=t.stack;break}case`)`:if(i.length===0)throw SyntaxError(`Invalid regular expression: /${e}/: Unmatched ) at column ${l-1}`);n=i.pop(),r=n.options?n.options[n.options.length-1]:n.stack;break;case`|`:{n.options||(n.options=[n.stack],delete n.stack);let e=[];n.options.push(e),r=e;break}case`{`:{let e=/^(\d+)(,(\d+)?)?\}/.exec(c.slice(l));if(e){r.length===0&&s(l);let t=Number.parseInt(e[1],10),n=e[2]?e[3]?Number.parseInt(e[3],10):1/0:t;l+=e[0].length,r.push({type:$.REPETITION,min:t,max:n,value:r.pop()})}else r.push({type:$.CHAR,value:123});break}case`?`:r.length===0&&s(l),r.push({type:$.REPETITION,min:0,max:1,value:r.pop()});break;case`+`:r.length===0&&s(l),r.push({type:$.REPETITION,min:1,max:1/0,value:r.pop()});break;case`*`:r.length===0&&s(l),r.push({type:$.REPETITION,min:0,max:1/0,value:r.pop()});break;default:r.push({type:$.CHAR,value:u.charCodeAt(0)})}if(i.length>0)throw SyntaxError(`Invalid regular expression: /${e}/: Unterminated group`);return Iy(a,o),t}function Py(e,t){let n,r=[],i=/\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\)(.)|([^\]\\]))-(((?:\\)])|(((?:\\)?([^\]])))))|(\])|(?:\\)?([^])/g;for(;(n=i.exec(e))!==null;){let e=null,[,t,a,o,s,c,l,u,d,f,p]=n;if(t||a||o||s||c||l?e=(()=>{let e={type:$.SET,set:[],not:!1};return t?e=Ey():a?e=Oy():o?e=Ay():s?e=Dy():c?e=ky():l&&(e=jy()),e})():u&&p?e={type:$.RANGE,from:(d||f).charCodeAt(0),to:p.charCodeAt(p.length-1)}:n[16]&&(e={type:$.CHAR,value:n[16].charCodeAt(0)}),!e)return[r,i.lastIndex];r.push(e)}throw SyntaxError(`Invalid regular expression: /${t}/: Unterminated character class`)}function Fy(e){return e.replace(/(\[\\b\])|(\\)?\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|c([@A-Z[\\\]^?])|([0tnvfr]))/g,(e,t,n,r,i,a,o)=>{if(n)return e;let s;s=t?8:r?Number.parseInt(r,16):i?Number.parseInt(i,16):a?`@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^ ?`.indexOf(a):{0:0,t:9,n:10,v:11,f:12,r:13}[o];let c=String.fromCharCode(s);return/[[\]{}^$.|?*+()]/.test(c)?`\\${c}`:c})}function Iy(e,t){for(let n of e.reverse()){let e=n.reference.value;if(t<e){n.reference.type=$.CHAR;let t=e.toString();if(n.reference.value=Number.parseInt(t,8),!/^[0-7]+$/.test(t)){let e=0;for(;t[e]!==`8`&&t[e]!==`9`&&e<t.length;)e+=1;if(e===0?(n.reference.value=t.charCodeAt(0),e+=1):n.reference.value=Number.parseInt(t.slice(0,e),8),t.length>e){let r=n.stack.splice(n.index+1);for(let r of t.slice(e))n.stack.push({type:$.CHAR,value:r.charCodeAt(0)});n.stack.push(...r)}}}}}function Ly(e,t){if(!Ry(e))return{isError:!0,regExp:null};try{let n=new RegExp(e,t?`ug`:`u`);return zy(n)?{isError:!1,regExp:n}:{isError:!0,regExp:null}}catch{return{isError:!0,regExp:null}}}function Ry(e){return!(/\(\?<=.*?\)/g.test(e)&&!/\[.*?(\?<=.*?)\]/g.test(e)||/\(\?<!.*?\)/g.test(e)&&!/\[.*?(\?<!.*?)\]/g.test(e))}function zy(e,t){var n;let r=(n=t==null?void 0:t.limit)==null?25:n,i;Object.prototype.toString.call(e)===`[object RegExp]`?i=e.source:e&&typeof e!=`string`&&(i=`${e}`);let a;try{a=Ny(i)}catch{return!1}let o=0,s=(e,t)=>{let n=t;if(e.type===$.REPETITION){if(t>0&&(e.min===0||e.max===1/0)||By(e)&&(o++,o>r))return!1;n=t+1}if(e.options){for(let t of e.options)if(!s({stack:t},n))return!1}let i=e.stack||e.value&&e.value.stack;if(!i)return!0;for(let e of i)if(!s(e,n))return!1;return!0};return s(a,0)}function By(e){let t=e.stack||e.value&&e.value.stack;return t?Vy(t):!1}function Vy(e){for(let t of e){if(t.options&&t.options.length>0)return!0;let e=t.stack||t.value&&t.value.stack;if(e&&Vy(e))return!0}return!1}var Hy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,variants:i}=tc(e,t);if(n)return r;let[a,o]=i,s=a.getValue();a.isNull()&&(s=``),a.isBoolean()&&(s=s?`TRUE`:`FALSE`),s=`${s}`;let c=o.getValue();o.isNull()&&(c=``),o.isBoolean()&&(c=c?`TRUE`:`FALSE`),c=`${c}`;let{isError:l,regExp:u}=Ly(c,!1);if(l)return E.create(p.REF);let d=s.match(u);if(d===null)return E.create(p.NA);if(d.length>1){let e=d.slice(1).map(e=>z.create(e));return e.length>1?B.create({calculateValueList:[e],rowCount:1,columnCount:e.length,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column}):e[0]}return z.create(d[0])}},Uy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,variants:i}=tc(e,t);if(n)return r;let[a,o]=i,s=a.getValue();a.isNull()&&(s=``),a.isBoolean()&&(s=s?`TRUE`:`FALSE`),s=`${s}`;let c=o.getValue();o.isNull()&&(c=``),o.isBoolean()&&(c=c?`TRUE`:`FALSE`),c=`${c}`;let{isError:l,regExp:u}=Ly(c,!1);return l?E.create(p.REF):s.match(u)===null?L.create(!1):L.create(!0)}},Wy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,variants:a}=tc(e,t,n);if(r)return i;let[o,s,c]=a,l=o.getValue();o.isNull()&&(l=``),o.isBoolean()&&(l=l?`TRUE`:`FALSE`),l=`${l}`;let u=s.getValue();s.isNull()&&(u=``),s.isBoolean()&&(u=u?`TRUE`:`FALSE`),u=`${u}`;let d=c.getValue();c.isNull()&&(d=``),c.isBoolean()&&(d=d?`TRUE`:`FALSE`),d=`${d}`;let{isError:f,regExp:m}=Ly(u,!0);if(f)return E.create(p.REF);let h=l.replace(m,d);return z.create(h)}},Gy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(t,n);if(i)return a;let[s,c]=o,l=Math.floor(+s.getValue()),u=Math.floor(+c.getValue());if(l<=0||u<0)return E.create(p.VALUE);let d=Qv(e),f=Qv(r),m=d.substring(0,l-1)+f+d.substring(l-1+u);return z.create(m)}},Ky=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(t,n);if(i)return a;let[s,c]=o,l=Math.floor(+s.getValue()),u=Math.floor(+c.getValue());if(l<=0||u<0)return E.create(p.VALUE);let d=Qv(e),f=Qv(r),m=d.substring(0,l-1);d=d.substring(l-1);let h=0,g=0;for(;g<u&&h<d.length;)g+=ty(d,h),h++;return m+=f+d.substring(h),z.create(m)}},qy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.map((e,t,n)=>{let r=a.get(t,n);if(e.isError())return e;let i=e.getValue();if(e.isNull()&&(i=``),e.isBoolean()&&(i=i?`TRUE`:`FALSE`),i+=``,r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let o=Math.floor(+r.getValue());if(o<0||o>32767/i.length)return E.create(p.VALUE);let s=i.repeat(o);return z.create(s)});return n===1&&r===1?o.get(0,0):o}},Jy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(1):t,r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.mapValue((e,t,n)=>{let r=o.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return r===1&&i===1?s.get(0,0):s}_handleSingleObject(e,t){let n=Qv(e),{isError:r,errorObject:i,variants:a}=X(t);if(r)return i;let[o]=a,s=Math.floor(+o.getValue());if(s<0)return E.create(p.VALUE);if(e.isNull()||s===0)return z.create(``);if(s>=n.length)return z.create(n);let c=n.substring(n.length-s);return z.create(c)}},Yy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(1):t,r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.mapValue((e,t,n)=>{let r=o.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return r===1&&i===1?s.get(0,0):s}_handleSingleObject(e,t){let n=Qv(e),{isError:r,errorObject:i,variants:a}=X(t);if(r)return i;let[o]=a,s=Math.floor(+o.getValue());if(s<0)return E.create(p.VALUE);if(e.isNull()||s===0)return z.create(``);let c=n.length-1,l=0,u=``;for(;l<s&&c>=0;)l+=ty(n,c,`rtl`),u=n.charAt(c)+u,c--;return z.create(u)}},Xy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?R.create(1):n,i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,r,E.create(p.NA)),l=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return i===1&&a===1?l.get(0,0):l}_handleSingleObject(e,t,n){let r=Qv(e).toLocaleUpperCase(),i=Qv(t).toLocaleUpperCase(),{isError:a,errorObject:o,variants:s}=X(n);if(a)return o;let[c]=s,l=Math.floor(+c.getValue());if(t.isNull()||l<=0||l>i.length)return E.create(p.VALUE);if(e.isNull()||r.length===0)return R.create(l);let u=i.indexOf(r,l-1);return u===-1?E.create(p.VALUE):R.create(u+1)}},Zy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?R.create(1):n,i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,r,E.create(p.NA)),l=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return i===1&&a===1?l.get(0,0):l}_handleSingleObject(e,t,n){let r=Qv(e).toLocaleUpperCase(),i=Qv(t).toLocaleUpperCase(),{isError:a,errorObject:o,variants:s}=X(n);if(a)return o;let[c]=s,l=Math.floor(+c.getValue());if(t.isNull()||l<=0||l>i.length)return E.create(p.VALUE);if(e.isNull()||r.length===0)return R.create(l);let u=i.indexOf(r,l-1);if(u===-1)return E.create(p.VALUE);let d=ey(i.substring(0,u))+1;return R.create(d)}},Qy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r!=null&&r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r!=null&&r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=r?V(i,a,r,E.create(p.NA)):void 0,u=o.mapValue((e,t,n)=>{let i=s.get(t,n),a=c.get(t,n),o=r?l.get(t,n):void 0;return e.isError()?e:i.isError()?i:a.isError()?a:o!=null&&o.isError()?o:o!=null&&o.isNull()||o!=null&&o.isBoolean()?E.create(p.VALUE):(o!=null&&o.isString()&&(o=o.convertToNumberObjectValue()),o!=null&&o.isError()?o:this._handleSingleObject(e,i,a,o))});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let i=this._getObjectString(e),a=this._getObjectString(t),o=this._getObjectString(n),s=r?Math.floor(+r.getValue()):void 0;if(r&&s<=0)return E.create(p.VALUE);if(a===``)return z.create(i);let c=``,l=0;for(let e=0;e<i.length;e++){let t=i.substr(e,a.length);if(t===a||t.length===a.length&&t.trim()===a.trim()){if(l++,l===s){c=i.substr(0,e)+o+i.substr(e+a.length);break}s===void 0&&(c+=o),e+=a.length-1}else s===void 0&&(c+=i[e])}return s&&l<s&&(c=i),z.create(c)}_getObjectString(e){let t=`${e.getValue()}`;return e.isNull()&&(t=``),e.isBoolean()&&(t=t.toLocaleUpperCase()),t}},$y=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1),d(this,`needsReferenceObject`,!0)}calculate(e){let t=e;return e.isReferenceObject()&&(t=e.toArrayValueObject().get(0,0)),t.isArray()?t.mapValue(e=>this._handleSingleObject(e)):this._handleSingleObject(t)}_handleSingleObject(e){return e.isError()?e:e.isNull()||e.isBoolean()||e.isNumber()?z.create(``):e}},eb=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}isArgumentsIgnoreNumberPattern(){return!0}calculate(e,n){if(e.isError())return e;if(n.isError())return n;let r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e),o=V(r,i,n),s=a.map((e,n,r)=>{if(e.isError())return e;let i=o.get(n,r)||z.create(` `);if(i.isError())return i;if(i.isBoolean())return E.create(p.VALUE);if(e.isBoolean())return e;let a=e.getValue();if(e.isNull()&&(a=0),e.isString())if((0,t.isRealNum)(a))a=Number(a);else{let e=(0,t.getNumfmtParseValueFilter)(`${a}`);e&&e.v!=null&&typeof e.v==`number`&&(a=e.v)}i.isNull()&&(i=z.create(` `));let s=`${i.getValue()}`,c=Zv(s,a);return z.create(s===` `?c.trimEnd():c)});return s.getRowCount()===1&&s.getColumnCount()===1?s.get(0,0):s}},tb=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let o=!1,s=n==null?R.create(1):n;s.isNull()&&(o=!0,s=R.create(1));let c=!r,l=r==null?R.create(0):r,u=i==null?R.create(0):i,d=a==null?E.create(p.NA):a,f=Math.max(e.isArray()?e.getRowCount():1,s.isArray()?s.getRowCount():1,l.isArray()?l.getRowCount():1,u.isArray()?u.getRowCount():1,d.isArray()?d.getRowCount():1),m=Math.max(e.isArray()?e.getColumnCount():1,s.isArray()?s.getColumnCount():1,l.isArray()?l.getColumnCount():1,u.isArray()?u.getColumnCount():1,d.isArray()?d.getColumnCount():1),h=V(f,m,e,E.create(p.NA)),g=V(f,m,s,E.create(p.NA)),_=V(f,m,l,E.create(p.NA)),v=V(f,m,u,E.create(p.NA)),y=V(f,m,d,E.create(p.NA)),b=this._getResultArray(h,t,g,_,v,y,o,c);return f===1&&m===1?b.get(0,0):b}_getResultArray(e,t,n,r,i,a,o,s){return e.map((e,c,l)=>{let u=n.get(c,l),d=r.get(c,l),f=i.get(c,l),m=a.get(c,l),h=this._checkVariantsError(e,u,d,f);if(h.isError())return h;let g=this._getStringValue(e),_=this._getDelimiterValue(t);if(_ instanceof E)return _;let v=this._getVariantsNumberFloorValue(u,d,f);if(v instanceof E)return v;let[y,b,x]=v;return y===0||b<0||b>1||x<0||x>1?E.create(p.VALUE):_.includes(``)?y>0?z.create(g):z.create(``):!o&&Math.abs(y)>g.length?E.create(p.VALUE):_.every(e=>e.length>g.length)?E.create(p.NA):this._getResult(g,_,y,b,x,m,s)})}_checkVariantsError(...e){for(let t=0;t<e.length;t++){let n=e[t];if(n.isError())return n}return L.create(!0)}_getStringValue(e){let t=`${e.getValue()}`;return e.isNull()&&(t=``),e.isBoolean()&&(t=t.toLocaleUpperCase()),t}_getDelimiterValue(e){let t=[];if(e.isArray()){let n=!1,r=E.create(p.VALUE);if(e.iterator(e=>{let i=e;if(i.isError())return n=!0,r=i,!1;t.push(this._getStringValue(i))}),n)return r}else{if(e.isError())return e;t.push(this._getStringValue(e))}return t}_getVariantsNumberFloorValue(...e){let t=[];for(let n=0;n<e.length;n++){let r=e[n];if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let i=Math.floor(+r.getValue());t.push(i)}return t}_getResult(e,t,n,r,i,a,o){let s=r?e.toLocaleLowerCase():e,c=r?t.map(e=>e.toLocaleLowerCase()):t,l=0,u=0,d=0;for(let e=0;e<Math.abs(n);e++)if(n<0){let e=c.map(e=>({index:s.lastIndexOf(e),length:e.length})).filter(e=>e.index!==-1).sort((e,t)=>t.index-e.index)[0];if(!e)break;l=e.index,s=s.substr(0,e.index),d=e.length,u++}else{let e=c.map(e=>({index:s.indexOf(e),length:e.length})).filter(e=>e.index!==-1).sort((e,t)=>e.index-t.index)[0];if(!e)break;l+=e.index+d,s=s.substr(e.index+e.length),d=e.length,u++}if(u&&u<Math.abs(n)&&o)return E.create(p.NA);if(!u||u<Math.abs(n))return i?n>0?z.create(``):z.create(e):a;let f=e.substr(l+d);return z.create(f)}},nb=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let o=!1,s=n==null?R.create(1):n;s.isNull()&&(o=!0,s=R.create(1));let c=!r,l=r==null?R.create(0):r,u=i==null?R.create(0):i,d=a==null?E.create(p.NA):a,f=Math.max(e.isArray()?e.getRowCount():1,s.isArray()?s.getRowCount():1,l.isArray()?l.getRowCount():1,u.isArray()?u.getRowCount():1,d.isArray()?d.getRowCount():1),m=Math.max(e.isArray()?e.getColumnCount():1,s.isArray()?s.getColumnCount():1,l.isArray()?l.getColumnCount():1,u.isArray()?u.getColumnCount():1,d.isArray()?d.getColumnCount():1),h=V(f,m,e,E.create(p.NA)),g=V(f,m,s,E.create(p.NA)),_=V(f,m,l,E.create(p.NA)),v=V(f,m,u,E.create(p.NA)),y=V(f,m,d,E.create(p.NA)),b=this._getResultArray(h,t,g,_,v,y,o,c);return f===1&&m===1?b.get(0,0):b}_getResultArray(e,t,n,r,i,a,o,s){return e.map((e,c,l)=>{let u=n.get(c,l),d=r.get(c,l),f=i.get(c,l),m=a.get(c,l),h=this._checkVariantsError(e,u,d,f);if(h.isError())return h;let g=this._getStringValue(e),_=this._getDelimiterValue(t);if(_ instanceof E)return _;let v=this._getVariantsNumberFloorValue(u,d,f);if(v instanceof E)return v;let[y,b,x]=v;return y===0||b<0||b>1||x<0||x>1?E.create(p.VALUE):_.includes(``)?y>0?z.create(``):z.create(g):!o&&Math.abs(y)>g.length?E.create(p.VALUE):_.every(e=>e.length>g.length)?E.create(p.NA):this._getResult(g,_,y,b,x,m,s)})}_checkVariantsError(...e){for(let t=0;t<e.length;t++){let n=e[t];if(n.isError())return n}return L.create(!0)}_getStringValue(e){let t=`${e.getValue()}`;return e.isNull()&&(t=``),e.isBoolean()&&(t=t.toLocaleUpperCase()),t}_getDelimiterValue(e){let t=[];if(e.isArray()){let n=!1,r=E.create(p.VALUE);if(e.iterator(e=>{let i=e;if(i.isError())return n=!0,r=i,!1;t.push(this._getStringValue(i))}),n)return r}else{if(e.isError())return e;t.push(this._getStringValue(e))}return t}_getVariantsNumberFloorValue(...e){let t=[];for(let n=0;n<e.length;n++){let r=e[n];if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let i=Math.floor(+r.getValue());t.push(i)}return t}_getResult(e,t,n,r,i,a,o){let s=r?e.toLocaleLowerCase():e,c=r?t.map(e=>e.toLocaleLowerCase()):t,l=0,u=0,d=0;for(let e=0;e<Math.abs(n);e++)if(n<0){let e=c.map(e=>({index:s.lastIndexOf(e),length:e.length})).filter(e=>e.index!==-1).sort((e,t)=>t.index-e.index)[0];if(!e)break;l=e.index,s=s.substr(0,e.index),u++}else{let e=c.map(e=>({index:s.indexOf(e),length:e.length})).filter(e=>e.index!==-1).sort((e,t)=>e.index-t.index)[0];if(!e)break;l+=e.index+d,s=s.substr(e.index+e.length),d=e.length,u++}if(u&&u<Math.abs(n)&&o)return E.create(p.NA);if(!u||u<Math.abs(n))return i?n>0?z.create(e):z.create(``):a;let f=e.substr(0,l);return z.create(f)}},rb=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,255)}calculate(e,t,...n){let r=this._getDelimiterValues(e),i=this._getTextValues(n);if(t.isArray()){let e=t.mapValue(e=>this._handleSingleObject(r,e,i));return e.getRowCount()===1&&e.getColumnCount()===1?e.get(0,0):e}let a=t;if(a.isString()){let e=`${a.getValue()}`.toLocaleUpperCase();if(e===`TRUE`)return this._handleSingleObject(r,L.create(!0),i);if(e===`FALSE`)return this._handleSingleObject(r,L.create(!1),i)}return this._handleSingleObject(r,t,i)}_handleSingleObject(e,t,n){if(e instanceof E)return e;let{isError:r,errorObject:i,variants:a}=X(t);if(r)return i;if(n instanceof E)return n;let[o]=a,s=+o.getValue(),c=n;s&&(c=n.filter(e=>e!==null&&e!==``));let l=``;for(let t=0;t<c.length;t++)c[t]!==null&&(l+=c[t]),t<c.length-1&&(l+=e[t%e.length]);return z.create(l)}_getDelimiterValues(e){let t=[],n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1;for(let i=0;i<n;i++)for(let n=0;n<r;n++){let r=e.isArray()?e.get(i,n):e;if(r.isError())return r;let a=`${r.getValue()}`;r.isNull()&&(a=``),r.isBoolean()&&(a=a.toLocaleUpperCase()),t.push(a)}return t}_getTextValues(e){let t=[];for(let n of e){let e=n.isArray()?n.getRowCount():1,r=n.isArray()?n.getColumnCount():1;for(let i=0;i<e;i++)for(let e=0;e<r;e++){let r=n.isArray()?n.get(i,e):n;if(r.isError())return r;if(r.isNull()){t.push(null);continue}let a=`${r.getValue()}`;r.isBoolean()&&(a=a.toLocaleUpperCase()),t.push(a)}}return t}},ib=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let o=n==null?z.create(`\\s`):n,s=r==null?R.create(0):r,c=i==null?R.create(0):i,l=a==null?z.create(p.NA):a,{_variant:u,values:d}=this._getStringValues(t),{_variant:f,values:m}=this._getStringValues(o,!1);o=f;let h=Math.max(e.isArray()?e.getRowCount():1,s.isArray()?s.getRowCount():1,c.isArray()?c.getRowCount():1),g=Math.max(e.isArray()?e.getColumnCount():1,s.isArray()?s.getColumnCount():1,c.isArray()?c.getColumnCount():1),_=V(h,g,e,E.create(p.NA)),v=V(h,g,s,E.create(p.NA)),y=V(h,g,c,E.create(p.NA)),b=this._getResultArray(_,u,o,v,y,l,d,m);return h===1&&g===1?b.get(0,0):b.map(e=>e.get(0,0))}_getStringValues(e,t=!0){let n=e,r=[];if(n.isArray())n.iterator(e=>{if(e!=null&&e.isError())return n=e,!1;if(e!=null&&e.isNull()&&t)return n=E.create(p.VALUE),!1;let i=this._getRegExpStringValue(e);if(i===``)return n=E.create(p.VALUE),!1;r.push(i)});else{n.isNull()&&t&&(n=E.create(p.VALUE));let e=this._getRegExpStringValue(n);e===``&&(n=E.create(p.VALUE)),r.push(e)}return{_variant:n,values:r}}_getResultArray(e,t,n,r,i,a,o,s){return e.map((e,c,l)=>{let u=r.get(c,l),d=i.get(c,l),f=this._checkVariantsError(e,t,n,u,d);if(f.isError())return f;if(e.isNull())return E.create(p.VALUE);let m=a;if(m.isArray()){let e=m.getRowCount(),t=m.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);m=m.get(0,0)}let h=`${e.getValue()}`;if(e.isBoolean()&&(h=h.toLocaleUpperCase()),u.isString()&&(u=u.convertToNumberObjectValue(),u.isError()))return u;let g=Math.floor(+u.getValue());if(d.isString()&&(d=d.convertToNumberObjectValue(),d.isError()))return d;let _=Math.floor(+d.getValue());if(_<0||_>1)return E.create(p.VALUE);let v=`${m.getValue()}`;return m.isBoolean()&&(v=v.toLocaleUpperCase()),this._getResult(h,o,s,g,_,v)})}_getResult(e,t,n,r,i,a){let o=new RegExp(n.join(`|`),`g${i?`i`:``}`),s=new RegExp(t.join(`|`),`g${i?`i`:``}`),c=e.split(o),l=1,u=c.map(e=>{let t=e.split(s);return r&&(t=t.filter(e=>e!==``)),l=Math.max(l,t.length),t});return u=u.map(e=>{let t=e;return t.length<l&&(t=t.concat(Array(l-t.length).fill(a))),t}),B.createByArray(u)}_checkVariantsError(...e){for(let t=0;t<e.length;t++){let n=e[t];if(n.isError())return n}return L.create(!0)}_getRegExpStringValue(e){let t=e.getValue();return e.isNull()&&(t=`\\s`),e.isBoolean()&&(t=t?`TRUE`:`FALSE`),t+=``,this._escapeRegExp(t)}_escapeRegExp(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}},ab=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;if(e.isNull())return z.create(``);let t=`${e.getValue()}`;return e.isBoolean()&&(t=t.toLocaleUpperCase()),t=t.trim().replace(/\s+/g,` `),z.create(t)}};let ob=Object.values(t.DataStreamTreeTokenType).filter(e=>[t.DataStreamTreeTokenType.TABLE_START,t.DataStreamTreeTokenType.TABLE_ROW_START,t.DataStreamTreeTokenType.TABLE_CELL_START,t.DataStreamTreeTokenType.TABLE_CELL_END,t.DataStreamTreeTokenType.TABLE_ROW_END,t.DataStreamTreeTokenType.TABLE_END,t.DataStreamTreeTokenType.CUSTOM_BLOCK].includes(e));var sb=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=Math.floor(+i.getValue());if(a<1||a>1114111)return E.create(p.VALUE);if(a===1114111||a===1114110)return E.create(p.NA);let o=String.fromCharCode(a);return ob.some(e=>e===o)&&(o=``),z.create(o)}},cb=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);let t=e.getValue().toLocaleString();e.isBoolean()&&(t=t.toLocaleUpperCase());let n=t.charCodeAt(0);return R.create(n)}},lb=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;if(e.isNull())return z.create(``);let t=`${e.getValue()}`.toLocaleUpperCase();return z.create(t)}},ub=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;if(e.isBoolean())return E.create(p.VALUE);let t=e;if(e.isString()&&(t=t.convertToNumberObjectValue(),t.isError()))return t;let n=+t.getValue();return R.create(n)}},db=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(0):t,r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.mapValue((e,t,n)=>{let r=o.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return r===1&&i===1?s.get(0,0):s}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(t);if(n)return r;let[a]=i,o=Math.floor(+a.getValue());if(o<0||o>1)return E.create(p.VALUE);if(e.isNull())return z.create(``);if(e.isBoolean())return e;if(e.isNumber())return R.create(e.getValue());let s=o?`"${e.getValue()}"`:`${e.getValue()}`;return z.create(s)}};let fb=[[Bv,J.ASC],[zv,J.ARRAYTOTEXT],[Vv,J.BAHTTEXT],[Uv,J.CHAR],[Wv,J.CLEAN],[Gv,J.CODE],[Kv,J.CONCAT],[qv,J.CONCATENATE],[Jv,J.DBCS],[Yv,J.DOLLAR],[Xv,J.EXACT],[$v,J.FIND],[oy,J.FINDB],[sy,J.FIXED],[cy,J.LEFT],[ly,J.LEFTB],[uy,J.LEN],[dy,J.LENB],[fy,J.LOWER],[py,J.MID],[my,J.MIDB],[by,J.NUMBERSTRING],[xy,J.NUMBERVALUE],[Hy,J.REGEXEXTRACT],[Uy,J.REGEXMATCH],[Wy,J.REGEXREPLACE],[Sy,J.PROPER],[Gy,J.REPLACE],[Ky,J.REPLACEB],[qy,J.REPT],[Jy,J.RIGHT],[Yy,J.RIGHTB],[Xy,J.SEARCH],[Zy,J.SEARCHB],[Qy,J.SUBSTITUTE],[$y,J.T],[eb,J.TEXT],[tb,J.TEXTAFTER],[nb,J.TEXTBEFORE],[rb,J.TEXTJOIN],[ib,J.TEXTSPLIT],[ab,J.TRIM],[sb,J.UNICHAR],[cb,J.UNICODE],[lb,J.UPPER],[ub,J.VALUE],[db,J.VALUETOTEXT]],pb=[],mb=function(e){return e}({});function hb(e){return e.map(e=>e.map(e=>typeof e==`number`?Va(e):e))}function gb(e,t=!1){if(e.isReferenceObject()){let n=e.toArrayValueObject().toValue();return t?hb(n):n}else if(e.isArray()){let n=e.toValue();return t?hb(n):n}else if(e.isNumber()){let n=e.getValue();return t?Va(n):n}return e.getValue()}let _b=[[class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;let t=Qv(e),n=encodeURIComponent(t).replace(/[!~'()*]/g,e=>`%${e.charCodeAt(0).toString(16).toLocaleUpperCase()}`);return z.create(n)}},Vo.ENCODEURL]];var vb=`@univerjs/engine-formula`,yb=`0.19.0`,bb=class extends t.Disposable{constructor(...e){super(...e),d(this,`_allSubjects`,[]),d(this,`_computingStatus$`,new n.BehaviorSubject(!0)),d(this,`computingStatus$`,this._computingStatus$.pipe((0,n.distinctUntilChanged)())),d(this,`_computingSubscription`,void 0)}get computingStatus(){return this._computingStatus$.getValue()}dispose(){var e;super.dispose(),(e=this._computingSubscription)==null||e.unsubscribe(),this._computingStatus$.next(!0),this._computingStatus$.complete(),this._allSubjects.forEach(e=>{e.complete()})}pushComputingStatusSubject(e){return this._allSubjects.push(e),this._updateComputingObservable(),{dispose:()=>{let t=this._allSubjects.indexOf(e);t!==-1&&this._allSubjects.splice(t,1),this._updateComputingObservable()}}}_updateComputingObservable(){var e;if((e=this._computingSubscription)==null||e.unsubscribe(),this._allSubjects.length===0){this._computingStatus$.next(!0);return}this._computingSubscription=(0,n.combineLatest)(this._allSubjects).pipe((0,n.map)(e=>e.every(e=>e))).subscribe(e=>this._computingStatus$.next(e))}};let xb=class extends t.Disposable{constructor(e,r){super(),this._commandService=e,this._globalComputingSrv=r,d(this,`_computingCompleted$`,new n.Observable(e=>{this._commandService.onCommandExecuted(t=>{if(t.id!==Cn.id)return;let n=t.params;if(n.stageInfo)return e.next(n.stageInfo.stage===Oo.IDLE||n.stageInfo.stage===Oo.CALCULATION_COMPLETED)})}).pipe((0,n.distinctUntilChanged)(),(0,n.shareReplay)()));let i=new t.DisposableCollection,a=new n.BehaviorSubject(!0);i.add(this._globalComputingSrv.pushComputingStatusSubject(a)),i.add(this._computingCompleted$.subscribe(e=>a.next(e))),i.add(()=>a.complete()),this.disposeWithMe(i)}};xb=un([A(0,t.ICommandService),A(1,(0,t.Inject)(bb))],xb);let Sb=class extends t.Disposable{constructor(e,t,n,r){super(),this._commandService=e,this._functionService=t,this._configService=n,this._dataSyncPrimaryController=r,this._initialize()}_initialize(){this._registerCommands(),this._registerFunctions()}_registerCommands(){[Nn,Lt,Pn,vn,yn,bn,xn,kn,An,Sn,Cn,wn,jn,Mn,Tn,En,Dn,On,mn,hn,gn,_n,Fn,In,zn,Bn,Vn,It].forEach(e=>{var t;this._commandService.registerCommand(e),(t=this._dataSyncPrimaryController)==null||t.registerSyncingMutations(e)})}_registerFunctions(){var e;let t=this._configService.getConfig(Hn),n=[...oc,...Ou,...ku,...Xu,...wd,...Af,...$p,...Cm,...Um,...Dh,...a_,...p_,...Rv,...fb,...pb,..._b].concat((e=t==null?void 0:t.function)==null?[]:e).map(e=>{let t=e[0],n=e[1];return new t(n)});this._functionService.registerExecutors(...n)}};Sb=un([A(0,t.ICommandService),A(1,Jo),A(2,t.IConfigService),A(3,(0,t.Optional)(r.DataSyncPrimaryController))],Sb);let Cb=class extends t.Disposable{constructor(e,t,n){super(),this._commandService=e,this._dependencyManagerService=t,this._featureCalculationManagerService=n,this._initialize()}_initialize(){this._commandExecutedListener(),this._featureCalculationManagerServiceListener()}_featureCalculationManagerServiceListener(){this.disposeWithMe(this._featureCalculationManagerService.onChanged$.subscribe(e=>{let{unitId:t,subUnitId:n,featureIds:r}=e;this._dependencyManagerService.removeFeatureFormulaDependency(t,n,r)}))}_commandExecutedListener(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(e.id===_n.id){let t=e.params;if(t==null)return;let{featureIds:n,unitId:r,subUnitId:i}=t;this._dependencyManagerService.removeFeatureFormulaDependency(r,i,n)}else if(e.id===gn.id){let t=e.params;if(t==null)return;let{featureId:n,calculationParam:r}=t,{unitId:i,subUnitId:a}=r;this._dependencyManagerService.removeFeatureFormulaDependency(i,a,[n])}else if(e.id===In.id){let t=e.params;if(t==null)return;this._dependencyManagerService.removeOtherFormulaDependency(t.unitId,t.subUnitId,t.formulaIdList)}else if(e.id===Fn.id){let t=e.params;if(t==null)return;let n=t.formulaMap,r=[];Object.keys(n).forEach(e=>{r.push(e)}),this._dependencyManagerService.removeOtherFormulaDependency(t.unitId,t.subUnitId,r)}else if(e.id===Nn.id){let n=e.params.formulaData;Object.keys(n).forEach(e=>{let r=n[e];if(r!==void 0){if(r===null){this._dependencyManagerService.clearFormulaDependency(e);return}Object.keys(r).forEach(n=>{let i=r[n];if(i!==void 0){if(i===null)return this._dependencyManagerService.clearFormulaDependency(e,n),!0;new t.ObjectMatrix(i).forValue((t,r)=>{this._dependencyManagerService.removeFormulaDependency(e,n,t,r)})}})}})}else e.id===mn.id&&this._handleSetDefinedName(e)}))}_handleSetDefinedName(e){let t=e.params;if(t==null)return;let{unitId:n,name:r}=t;this._dependencyManagerService.removeFormulaDependencyByDefinedName(n,r)}};Cb=un([A(0,t.ICommandService),A(1,Ns),A(1,js),A(2,Ns)],Cb);let wb=class extends t.Disposable{constructor(e,t){super(),this._commandService=e,this._featureCalculationManagerService=t,this._initialize()}_initialize(){this._commandExecutedListener()}_commandExecutedListener(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(e.id===gn.id){let t=e.params;if(t==null)return;let{featureId:n,calculationParam:r}=t,{unitId:i,subUnitId:a}=r;this._featureCalculationManagerService.register(i,a,n,r)}else if(e.id===_n.id){let t=e.params;if(t==null)return;let{featureIds:n,unitId:r,subUnitId:i}=t;this._featureCalculationManagerService.remove(r,i,n)}}))}};wb=un([A(0,t.ICommandService),A(1,Ns)],wb);let Tb=class extends t.Disposable{constructor(e,t,n){super(),this._commandService=e,this._otherFormulaManagerService=t,this._dependencyManagerService=n,this._initialize()}_initialize(){this._commandExecutedListener()}_commandExecutedListener(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(e.id===Fn.id){let t=e.params;if(t==null)return;let n={[t.unitId]:{[t.subUnitId]:t.formulaMap}};this._otherFormulaManagerService.batchRegister(n)}else if(e.id===In.id){let t=e.params;if(t==null)return;let n={};t.formulaIdList.forEach(e=>n[e]=!0);let r={[t.unitId]:{[t.subUnitId]:n}};this._otherFormulaManagerService.batchRemove(r)}}))}};Tb=un([A(0,t.ICommandService),A(1,Fs),A(2,js)],Tb);var Eb=class extends t.Disposable{constructor(...e){super(...e),d(this,`_dirtyConversionMap`,new Map)}dispose(){this._dirtyConversionMap.clear()}remove(e){this._dirtyConversionMap.delete(e)}get(e){return this._dirtyConversionMap.get(e)}has(e){return this._dirtyConversionMap.has(e)}register(e,t){this._dirtyConversionMap.set(e,t)}getDirtyConversionMap(){return this._dirtyConversionMap}};let Db=(0,t.createIdentifier)(`univer.formula.active-dirty-manager.service`),Ob=function(e){return e[e.NOT_REGISTER=1]=`NOT_REGISTER`,e[e.SUCCESS=2]=`SUCCESS`,e[e.WAIT=3]=`WAIT`,e[e.ERROR=4]=`ERROR`,e}({}),kb=function(e){return e.DEFAULT=`default`,e.DATA_VALIDATION=`dv`,e.DATA_VALIDATION_CUSTOM=`dv-custom`,e.CONDITIONAL_FORMATTING=`cf`,e.DOC=`doc`,e.SLIDE=`slide`,e}({}),Ab=class extends t.Disposable{constructor(e,t,r){super(),this._commandService=e,this._activeDirtyManagerService=t,this._lifecycleService=r,d(this,`_formulaCacheMap`,new Map),d(this,`_formulaChangeWithRange$`,new n.Subject),d(this,`formulaChangeWithRange$`,this._formulaChangeWithRange$.asObservable()),d(this,`_formulaResult$`,new n.Subject),d(this,`formulaResult$`,this._formulaResult$.asObservable()),d(this,`calculateStarted$`,new n.BehaviorSubject(!1)),this._initFormulaRegister(),this._initFormulaCalculationResultChange()}dispose(){super.dispose(),this._formulaChangeWithRange$.complete(),this._formulaResult$.complete(),this.calculateStarted$.complete()}_ensureCacheMap(e,t){let n=this._formulaCacheMap.get(e);n||(n=new Map,this._formulaCacheMap.set(e,n));let r=n.get(t);return r||(r=new Map,n.set(t,r)),r}_createFormulaId(e,n,r,i){return`formula.${e}_${n}_${r}_${i}_${(0,t.generateRandomId)(8)}`}_initFormulaRegister(){this._activeDirtyManagerService.register(Ft.id,{commandId:Ft.id,getDirtyData(e){return{dirtyUnitOtherFormulaMap:e.params}}});let e=e=>{let{unitId:t,subUnitId:n,formulaText:r,formulaId:i,ranges:a}=e;if(!this._ensureCacheMap(t,n).has(i))return;let o={unitId:t,subUnitId:n,formulaMap:{[i]:{f:r,ranges:a}}};this._commandService.executeCommand(Fn.id,o,{onlyLocal:!0}).then(()=>{this._commandService.executeCommand(Ft.id,{[t]:{[n]:{[i]:!0}}},{onlyLocal:!0})})};this.disposeWithMe(this._formulaChangeWithRange$.pipe((0,n.bufferWhen)(()=>this.calculateStarted$.pipe((0,n.filter)(e=>e)))).subscribe(t=>t.forEach(e))),this.disposeWithMe(this._formulaChangeWithRange$.pipe((0,n.filter)(()=>this.calculateStarted$.getValue())).subscribe(e))}_initFormulaCalculationResultChange(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(e.id===wn.id){let{unitOtherData:n}=e.params,r={};for(let e in n){let i=n[e],a={};r[e]=a;for(let n in i){let r=this._ensureCacheMap(e,n),o=i[n],s=[];a[n]=s;for(let e in o){let n=o[e];if(r.has(e)){let i=r.get(e);if(!i)continue;i.result||(i.result={});let a=new t.ObjectMatrix(n),o=new t.ObjectMatrix(i.result);a.forValue((e,t,n)=>{o.setValue(e,t,n)}),i.status=Ob.SUCCESS,i.callbacks.forEach(e=>{e(n)}),i.callbacks.clear(),s.push(i)}}}}this._formulaResult$.next(r)}}))}registerFormulaWithRange(e,t,n,r=[{startRow:0,endRow:0,startColumn:0,endColumn:0}],i,a=kb.DEFAULT,o=``){let s=this._createFormulaId(e,t,a,o);return this._ensureCacheMap(e,t).set(s,{result:void 0,status:Ob.WAIT,formulaId:s,callbacks:new Set,extra:i}),this._formulaChangeWithRange$.next({unitId:e,subUnitId:t,formulaText:n,formulaId:s,ranges:r}),s}deleteFormula(e,t,n){let r={unitId:e,subUnitId:t,formulaIdList:n};this._commandService.executeCommand(In.id,r,{onlyLocal:!0});let i=this._ensureCacheMap(e,t);n.forEach(e=>i.delete(e))}getFormulaValue(e,t,n){let r=this._ensureCacheMap(e,t),i=r.get(n);return i?i.status===Ob.SUCCESS||i.status===Ob.ERROR?Promise.resolve(i):new Promise(e=>{i.callbacks.add(()=>{e(r.get(n))})}):Promise.resolve(null)}getFormulaValueSync(e,t,n){return this._ensureCacheMap(e,t).get(n)}markFormulaDirty(e,t,n){let r=this.getFormulaValueSync(e,t,n);r&&(r.status=Ob.WAIT,this._commandService.executeCommand(Ft.id,{[e]:{[t]:{[n]:!0}}},{onlyLocal:!0}))}};Ab=un([A(0,t.ICommandService),A(1,Db),A(2,(0,t.Inject)(t.LifecycleService))],Ab);let jb=class extends t.Plugin{constructor(e=Un,n,r){super(),this._config=e,this._injector=n,this._configService=r;let{...i}=(0,t.merge)({},Un,this._config);this._configService.setConfig(Hn,i)}onStarting(){this._initialize(),this._initializeWithOverride()}onReady(){var e;(0,t.touchDependencies)(this._injector,[[Sb]]),(e=this._config)!=null&&e.notExecuteFormula||(0,t.touchDependencies)(this._injector,[[Tb],[wb],[Cb],[qs]])}onRendered(){var e;(e=this._config)!=null&&e.notExecuteFormula||(0,t.touchDependencies)(this._injector,[[Gs],[Us]])}_initialize(){let e=!this._config.notExecuteFormula,t=[[Jo,{useClass:Yo}],[fn,{useClass:dn}],[Db,{useClass:Eb}],[Ab],[Do,{useClass:Eo}],[ur,{useClass:lr}],[Rn,{useClass:Ln}],[bb],[nr],[Sb],[xb]];e&&t.push([Fs,{useClass:Ps}],[jo,{useClass:Ao}],[fr,{useClass:dr}],[Ns,{useClass:Ms}],[qs],[Tb],[Cb],[wb],[rs],[Os],[pr],[Lo],[ns],[fs],[hs],[vs],[Qo],[xs],[Cs],[Ts],[Ds]),t.forEach(e=>this._injector.add(e))}_initializeWithOverride(){var e;this._injector.add([$n,{useClass:$n}]),(e=this._config)!=null&&e.notExecuteFormula||[[Gs,{useClass:Ks}],[js,{useClass:As}],[Us,{useClass:Ws}]].forEach(e=>this._injector.add(e))}};d(jb,`pluginName`,`UNIVER_ENGINE_FORMULA_PLUGIN`),d(jb,`packageName`,vb),d(jb,`version`,yb),jb=un([A(1,(0,t.Inject)(t.Injector)),A(2,t.IConfigService)],jb),e.ActiveDirtyManagerService=Eb,e.ArrayValueObject=B,e.AstRootNodeFactory=Lo,Object.defineProperty(e,`AstTreeBuilder`,{enumerable:!0,get:function(){return Os}}),e.AsyncArrayObject=io,e.AsyncCustomFunction=Mu,e.AsyncObject=ro,e.BaseFunction=Z,e.BaseReferenceObject=no,e.BaseValueObject=ee,e.BooleanValue=i,e.BooleanValueObject=L,Object.defineProperty(e,`CalculateController`,{enumerable:!0,get:function(){return qs}}),Object.defineProperty(e,`CalculateFormulaService`,{enumerable:!0,get:function(){return Ks}}),e.CustomFunction=ju,e.DEFAULT_INTERVAL_COUNT=500,e.DEFAULT_TOKEN_LAMBDA_FUNCTION_NAME=Nt,e.DEFAULT_TOKEN_LET_FUNCTION_NAME=`LET`,e.DEFAULT_TOKEN_TYPE_LAMBDA_PARAMETER=`L_1`,e.DEFAULT_TOKEN_TYPE_PARAMETER=`P_1`,e.DEFAULT_TOKEN_TYPE_ROOT=`R_1`,Object.defineProperty(e,`DefinedNamesService`,{enumerable:!0,get:function(){return dn}}),e.DependencyManagerBaseService=ks,e.DependencyManagerService=As,e.ENGINE_FORMULA_CYCLE_REFERENCE_COUNT=`CYCLE_REFERENCE_COUNT`,e.ENGINE_FORMULA_PLUGIN_CONFIG_KEY=Hn,e.ENGINE_FORMULA_RETURN_DEPENDENCY_TREE=`RETURN_DEPENDENCY_TREE`,e.ERROR_TYPE_SET=m,e.ErrorType=p,e.ErrorValueObject=E,e.FUNCTION_NAMES_ARRAY=ac,e.FUNCTION_NAMES_COMPATIBILITY=xu,e.FUNCTION_NAMES_CUBE=Au,e.FUNCTION_NAMES_DATABASE=Yu,e.FUNCTION_NAMES_DATE=Ro,e.FUNCTION_NAMES_ENGINEERING=U,e.FUNCTION_NAMES_FINANCIAL=W,e.FUNCTION_NAMES_INFORMATION=zo,e.FUNCTION_NAMES_LOGICAL=Bo,e.FUNCTION_NAMES_LOOKUP=G,e.FUNCTION_NAMES_MATH=K,e.FUNCTION_NAMES_STATISTICAL=q,e.FUNCTION_NAMES_TEXT=J,e.FUNCTION_NAMES_UNIVER=mb,e.FUNCTION_NAMES_WEB=Vo,e.FeatureCalculationManagerService=Ms,Object.defineProperty(e,`FormulaCurrentConfigService`,{enumerable:!0,get:function(){return dr}}),Object.defineProperty(e,`FormulaDataModel`,{enumerable:!0,get:function(){return nr}}),Object.defineProperty(e,`FormulaDependencyGenerator`,{enumerable:!0,get:function(){return Ws}}),e.FormulaDependencyTree=Bs,e.FormulaDependencyTreeModel=Vs,e.FormulaDependencyTreeType=Ls,e.FormulaDependencyTreeVirtual=zs,e.FormulaExecuteStageType=Oo,e.FormulaExecutedStateType=ko,e.FormulaResultStatus=Ob,Object.defineProperty(e,`FormulaRuntimeService`,{enumerable:!0,get:function(){return Ao}}),Object.defineProperty(e,`FunctionNodeFactory`,{enumerable:!0,get:function(){return ns}}),e.FunctionService=Yo,e.FunctionType=Ae,e.GlobalComputingStatusService=bb,Object.defineProperty(e,`HyperlinkEngineFormulaService`,{enumerable:!0,get:function(){return Eo}}),e.IActiveDirtyManagerService=Db,e.ICalculateFormulaService=Gs,e.IDefinedNamesService=fn,e.IDependencyManagerService=js,e.IFeatureCalculationManagerService=Ns,e.IFormulaCurrentConfigService=fr,e.IFormulaDependencyGenerator=Us,e.IFormulaRuntimeService=jo,e.IFunctionService=Jo,e.IHyperlinkEngineFormulaService=Do,e.IOtherFormulaManagerService=Fs,e.ISheetRowFilteredService=ur,e.ISuperTableService=Rn,Object.defineProperty(e,`Interpreter`,{enumerable:!0,get:function(){return rs}}),Object.defineProperty(e,`LambdaNodeFactory`,{enumerable:!0,get:function(){return fs}}),e.LambdaParameterNodeFactory=hs,e.LambdaValueObjectObject=us,Object.defineProperty(e,`Lexer`,{enumerable:!0,get:function(){return pr}}),e.LexerNode=j,e.LexerTreeBuilder=$n,e.NEW_EXCEL_FUNCTIONS=m_,e.NullValueObject=Ua,e.NumberValueObject=R,e.OPERATOR_TOKEN_SET=b,Object.defineProperty(e,`OperatorNodeFactory`,{enumerable:!0,get:function(){return vs}}),e.OtherFormulaBizType=kb,e.OtherFormulaManagerService=Ps,e.OtherFormulaMarkDirty=Ft,Object.defineProperty(e,`PrefixNodeFactory`,{enumerable:!0,get:function(){return Qo}}),e.RangeReferenceObject=ao,Object.defineProperty(e,`ReferenceNodeFactory`,{enumerable:!0,get:function(){return xs}}),e.RegisterFunctionMutation=It,Object.defineProperty(e,`RegisterOtherFormulaService`,{enumerable:!0,get:function(){return Ab}}),e.RemoveDefinedNameMutation=hn,e.RemoveFeatureCalculationMutation=_n,e.RemoveOtherFormulaMutation=In,e.RemoveSuperTableMutation=Bn,e.SUFFIX_TOKEN_SET=w,e.SetArrayFormulaDataMutation=Lt,e.SetCellFormulaDependencyCalculationMutation=Dn,e.SetCellFormulaDependencyCalculationResultMutation=On,e.SetDefinedNameMutation=mn,e.SetDefinedNameMutationFactory=pn,e.SetFeatureCalculationMutation=gn,e.SetFormulaCalculationNotificationMutation=Cn,e.SetFormulaCalculationResultMutation=wn,e.SetFormulaCalculationStartMutation=vn,e.SetFormulaCalculationStopMutation=Sn,e.SetFormulaDataMutation=Nn,e.SetFormulaDependencyCalculationMutation=Tn,e.SetFormulaDependencyCalculationResultMutation=En,e.SetFormulaStringBatchCalculationMutation=bn,e.SetFormulaStringBatchCalculationResultMutation=xn,e.SetImageFormulaDataMutation=Pn,e.SetOtherFormulaMutation=Fn,e.SetQueryFormulaDependencyAllMutation=jn,e.SetQueryFormulaDependencyAllResultMutation=Mn,e.SetQueryFormulaDependencyMutation=kn,e.SetQueryFormulaDependencyResultMutation=An,e.SetSuperTableMutation=zn,e.SetSuperTableOptionMutation=Vn,e.SetTriggerFormulaCalculationStartMutation=yn,e.SheetRowFilteredService=lr,e.StringValueObject=z,Object.defineProperty(e,`SuffixNodeFactory`,{enumerable:!0,get:function(){return Cs}}),e.SuperTableService=Ln,Object.defineProperty(e,`UnionNodeFactory`,{enumerable:!0,get:function(){return Ts}}),Object.defineProperty(e,`UniverFormulaEnginePlugin`,{enumerable:!0,get:function(){return jb}}),e.ValueNodeFactory=Ds,e.ValueObjectFactory=$a,e.compareToken=v,e.convertUnitDataToRuntime=At,e.deserializeRangeForR1C1=Zs,e.deserializeRangeWithSheet=Yt,e.deserializeRangeWithSheetWithCache=Gn,e.excelDateSerial=D,e.extractFormulaError=gr,e.functionArray=oc,e.functionCompatibility=Ou,e.functionCube=ku,e.functionDatabase=Xu,e.functionDate=wd,e.functionEngineering=Af,e.functionFinancial=$p,e.functionInformation=Cm,e.functionLogical=Um,e.functionLookup=Dh,e.functionMath=a_,e.functionMeta=p_,e.functionStatistical=Rv,e.functionText=fb,e.functionUniver=pb,e.functionWeb=_b,e.generateAstNode=Go,e.generateExecuteAstNodeData=cs,e.generateRandomDependencyTreeId=Hs,e.generateStringWithSequence=Jn,e.getAbsoluteRefTypeWitString=Vt,e.getAbsoluteRefTypeWithSingleString=Bt,e.getObjectValue=gb,e.getRangeWithRefsString=$t,e.handleNumfmtInCell=kr,e.handleRefStringInfo=Jt,e.includeFormulaLexerToken=Ne,e.initSheetFormulaData=rr,e.isFormulaLexerToken=Me,e.isInDirtyRange=ke,e.isReferenceString=kt,e.isReferenceStringWithEffectiveColumn=Zt,e.isReferenceStrings=en,e.matchRefDrawToken=Fe,e.matchToken=S,e.needsQuoting=tn,e.normalizeSheetName=Pe,e.operatorToken=_,e.prefixToken=T,e.quoteSheetName=rn,e.sequenceNodeType=qn,e.serializeRange=Ut,e.serializeRangeToRefString=Kt,e.serializeRangeWithSheet=Wt,e.serializeRangeWithSpreadsheet=Gt,e.singleReferenceToGrid=qt,e.splitTableStructuredRef=ln,e.strip=za,e.stripErrorMargin=Va,e.unquoteSheetName=an});
|
|
9
|
+
var Vr=9e15,Hr=1e9,Ur=`0123456789abcdef`,Wr=`2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058`,Gr=`3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789`,Kr={precision:20,rounding:4,modulo:1,toExpNeg:-7,toExpPos:21,minE:-Vr,maxE:Vr,crypto:!1},qr,Jr,M=!0,Yr=`[DecimalError] `,Xr=Yr+`Invalid argument: `,Zr=Yr+`Precision limit exceeded`,Qr=Yr+`crypto unavailable`,$r=`[object Decimal]`,ei=Math.floor,ti=Math.pow,ni=/^0b([01]+(\.[01]*)?|\.[01]+)(p[+-]?\d+)?$/i,ri=/^0x([0-9a-f]+(\.[0-9a-f]*)?|\.[0-9a-f]+)(p[+-]?\d+)?$/i,ii=/^0o([0-7]+(\.[0-7]*)?|\.[0-7]+)(p[+-]?\d+)?$/i,ai=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,oi=1e7,N=7,si=9007199254740991,ci=Wr.length-1,li=Gr.length-1,P={toStringTag:$r};P.absoluteValue=P.abs=function(){var e=new this.constructor(this);return e.s<0&&(e.s=1),F(e)},P.ceil=function(){return F(new this.constructor(this),this.e+1,2)},P.clampedTo=P.clamp=function(e,t){var n,r=this,i=r.constructor;if(e=new i(e),t=new i(t),!e.s||!t.s)return new i(NaN);if(e.gt(t))throw Error(Xr+t);return n=r.cmp(e),n<0?e:r.cmp(t)>0?t:new i(r)},P.comparedTo=P.cmp=function(e){var t,n,r,i,a=this,o=a.d,s=(e=new a.constructor(e)).d,c=a.s,l=e.s;if(!o||!s)return!c||!l?NaN:c===l?o===s?0:!o^c<0?1:-1:c;if(!o[0]||!s[0])return o[0]?c:s[0]?-l:0;if(c!==l)return c;if(a.e!==e.e)return a.e>e.e^c<0?1:-1;for(r=o.length,i=s.length,t=0,n=r<i?r:i;t<n;++t)if(o[t]!==s[t])return o[t]>s[t]^c<0?1:-1;return r===i?0:r>i^c<0?1:-1},P.cosine=P.cos=function(){var e,t,n=this,r=n.constructor;return n.d?n.d[0]?(e=r.precision,t=r.rounding,r.precision=e+Math.max(n.e,n.sd())+N,r.rounding=1,n=mi(r,Ni(r,n)),r.precision=e,r.rounding=t,F(Jr==2||Jr==3?n.neg():n,e,t,!0)):new r(1):new r(NaN)},P.cubeRoot=P.cbrt=function(){var e,t,n,r,i,a,o,s,c,l,u=this,d=u.constructor;if(!u.isFinite()||u.isZero())return new d(u);for(M=!1,a=u.s*ti(u.s*u,1/3),!a||Math.abs(a)==1/0?(n=ui(u.d),e=u.e,(a=(e-n.length+1)%3)&&(n+=a==1||a==-2?`0`:`00`),a=ti(n,1/3),e=ei((e+1)/3)-(e%3==(e<0?-1:2)),a==1/0?n=`5e`+e:(n=a.toExponential(),n=n.slice(0,n.indexOf(`e`)+1)+e),r=new d(n),r.s=u.s):r=new d(a.toString()),o=(e=d.precision)+3;;)if(s=r,c=s.times(s).times(s),l=c.plus(u),r=hi(l.plus(u).times(s),l.plus(c),o+2,1),ui(s.d).slice(0,o)===(n=ui(r.d)).slice(0,o))if(n=n.slice(o-3,o+1),n==`9999`||!i&&n==`4999`){if(!i&&(F(s,e+1,0),s.times(s).times(s).eq(u))){r=s;break}o+=4,i=1}else{(!+n||!+n.slice(1)&&n.charAt(0)==`5`)&&(F(r,e+1,1),t=!r.times(r).times(r).eq(u));break}return M=!0,F(r,e,d.rounding,t)},P.decimalPlaces=P.dp=function(){var e,t=this.d,n=NaN;if(t){if(e=t.length-1,n=(e-ei(this.e/N))*N,e=t[e],e)for(;e%10==0;e/=10)n--;n<0&&(n=0)}return n},P.dividedBy=P.div=function(e){return hi(this,new this.constructor(e))},P.dividedToIntegerBy=P.divToInt=function(e){var t=this,n=t.constructor;return F(hi(t,new n(e),0,1,1),n.precision,n.rounding)},P.equals=P.eq=function(e){return this.cmp(e)===0},P.floor=function(){return F(new this.constructor(this),this.e+1,3)},P.greaterThan=P.gt=function(e){return this.cmp(e)>0},P.greaterThanOrEqualTo=P.gte=function(e){var t=this.cmp(e);return t==1||t===0},P.hyperbolicCosine=P.cosh=function(){var e,t,n,r,i,a=this,o=a.constructor,s=new o(1);if(!a.isFinite())return new o(a.s?1/0:NaN);if(a.isZero())return s;n=o.precision,r=o.rounding,o.precision=n+Math.max(a.e,a.sd())+4,o.rounding=1,i=a.d.length,i<32?(e=Math.ceil(i/3),t=(1/Mi(4,e)).toString()):(e=16,t=`2.3283064365386962890625e-10`),a=ji(o,1,a.times(t),new o(1),!0);for(var c,l=e,u=new o(8);l--;)c=a.times(a),a=s.minus(c.times(u.minus(c.times(u))));return F(a,o.precision=n,o.rounding=r,!0)},P.hyperbolicSine=P.sinh=function(){var e,t,n,r,i=this,a=i.constructor;if(!i.isFinite()||i.isZero())return new a(i);if(t=a.precision,n=a.rounding,a.precision=t+Math.max(i.e,i.sd())+4,a.rounding=1,r=i.d.length,r<3)i=ji(a,2,i,i,!0);else{e=1.4*Math.sqrt(r),e=e>16?16:e|0,i=i.times(1/Mi(5,e)),i=ji(a,2,i,i,!0);for(var o,s=new a(5),c=new a(16),l=new a(20);e--;)o=i.times(i),i=i.times(s.plus(o.times(c.times(o).plus(l))))}return a.precision=t,a.rounding=n,F(i,t,n,!0)},P.hyperbolicTangent=P.tanh=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+7,r.rounding=1,hi(n.sinh(),n.cosh(),r.precision=e,r.rounding=t)):new r(n.s)},P.inverseCosine=P.acos=function(){var e=this,t=e.constructor,n=e.abs().cmp(1),r=t.precision,i=t.rounding;return n===-1?e.isZero()?yi(t,r+4,i).times(.5):(t.precision=r+6,t.rounding=1,e=new t(1).minus(e).div(e.plus(1)).sqrt().atan(),t.precision=r,t.rounding=i,e.times(2)):n===0?e.isNeg()?yi(t,r,i):new t(0):new t(NaN)},P.inverseHyperbolicCosine=P.acosh=function(){var e,t,n=this,r=n.constructor;return n.lte(1)?new r(n.eq(1)?0:NaN):n.isFinite()?(e=r.precision,t=r.rounding,r.precision=e+Math.max(Math.abs(n.e),n.sd())+4,r.rounding=1,M=!1,n=n.times(n).minus(1).sqrt().plus(n),M=!0,r.precision=e,r.rounding=t,n.ln()):new r(n)},P.inverseHyperbolicSine=P.asinh=function(){var e,t,n=this,r=n.constructor;return!n.isFinite()||n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+2*Math.max(Math.abs(n.e),n.sd())+6,r.rounding=1,M=!1,n=n.times(n).plus(1).sqrt().plus(n),M=!0,r.precision=e,r.rounding=t,n.ln())},P.inverseHyperbolicTangent=P.atanh=function(){var e,t,n,r,i=this,a=i.constructor;return i.isFinite()?i.e>=0?new a(i.abs().eq(1)?i.s/0:i.isZero()?i:NaN):(e=a.precision,t=a.rounding,r=i.sd(),Math.max(r,e)<2*-i.e-1?F(new a(i),e,t,!0):(a.precision=n=r-i.e,i=hi(i.plus(1),new a(1).minus(i),n+e,1),a.precision=e+4,a.rounding=1,i=i.ln(),a.precision=e,a.rounding=t,i.times(.5))):new a(NaN)},P.inverseSine=P.asin=function(){var e,t,n,r,i=this,a=i.constructor;return i.isZero()?new a(i):(t=i.abs().cmp(1),n=a.precision,r=a.rounding,t===-1?(a.precision=n+6,a.rounding=1,i=i.div(new a(1).minus(i.times(i)).sqrt().plus(1)).atan(),a.precision=n,a.rounding=r,i.times(2)):t===0?(e=yi(a,n+4,r).times(.5),e.s=i.s,e):new a(NaN))},P.inverseTangent=P.atan=function(){var e,t,n,r,i,a,o,s,c,l=this,u=l.constructor,d=u.precision,f=u.rounding;if(!l.isFinite()){if(!l.s)return new u(NaN);if(d+4<=li)return o=yi(u,d+4,f).times(.5),o.s=l.s,o}else if(l.isZero())return new u(l);else if(l.abs().eq(1)&&d+4<=li)return o=yi(u,d+4,f).times(.25),o.s=l.s,o;for(u.precision=s=d+10,u.rounding=1,n=Math.min(28,s/N+2|0),e=n;e;--e)l=l.div(l.times(l).plus(1).sqrt().plus(1));for(M=!1,t=Math.ceil(s/N),r=1,c=l.times(l),o=new u(l),i=l;e!==-1;)if(i=i.times(c),a=o.minus(i.div(r+=2)),i=i.times(c),o=a.plus(i.div(r+=2)),o.d[t]!==void 0)for(e=t;o.d[e]===a.d[e]&&e--;);return n&&(o=o.times(2<<n-1)),M=!0,F(o,u.precision=d,u.rounding=f,!0)},P.isFinite=function(){return!!this.d},P.isInteger=P.isInt=function(){return!!this.d&&ei(this.e/N)>this.d.length-2},P.isNaN=function(){return!this.s},P.isNegative=P.isNeg=function(){return this.s<0},P.isPositive=P.isPos=function(){return this.s>0},P.isZero=function(){return!!this.d&&this.d[0]===0},P.lessThan=P.lt=function(e){return this.cmp(e)<0},P.lessThanOrEqualTo=P.lte=function(e){return this.cmp(e)<1},P.logarithm=P.log=function(e){var t,n,r,i,a,o,s,c,l=this,u=l.constructor,d=u.precision,f=u.rounding,p=5;if(e==null)e=new u(10),t=!0;else{if(e=new u(e),n=e.d,e.s<0||!n||!n[0]||e.eq(1))return new u(NaN);t=e.eq(10)}if(n=l.d,l.s<0||!n||!n[0]||l.eq(1))return new u(n&&!n[0]?-1/0:l.s==1?n?0:1/0:NaN);if(t)if(n.length>1)a=!0;else{for(i=n[0];i%10==0;)i/=10;a=i!==1}if(M=!1,s=d+p,o=Ei(l,s),r=t?vi(u,s+10):Ei(e,s),c=hi(o,r,s,1),fi(c.d,i=d,f))do if(s+=10,o=Ei(l,s),r=t?vi(u,s+10):Ei(e,s),c=hi(o,r,s,1),!a){+ui(c.d).slice(i+1,i+15)+1==0x5af3107a4000&&(c=F(c,d+1,0));break}while(fi(c.d,i+=10,f));return M=!0,F(c,d,f)},P.minus=P.sub=function(e){var t,n,r,i,a,o,s,c,l,u,d,f,p=this,m=p.constructor;if(e=new m(e),!p.d||!e.d)return!p.s||!e.s?e=new m(NaN):p.d?e.s=-e.s:e=new m(e.d||p.s!==e.s?p:NaN),e;if(p.s!=e.s)return e.s=-e.s,p.plus(e);if(l=p.d,f=e.d,s=m.precision,c=m.rounding,!l[0]||!f[0]){if(f[0])e.s=-e.s;else if(l[0])e=new m(p);else return new m(c===3?-0:0);return M?F(e,s,c):e}if(n=ei(e.e/N),u=ei(p.e/N),l=l.slice(),a=u-n,a){for(d=a<0,d?(t=l,a=-a,o=f.length):(t=f,n=u,o=l.length),r=Math.max(Math.ceil(s/N),o)+2,a>r&&(a=r,t.length=1),t.reverse(),r=a;r--;)t.push(0);t.reverse()}else{for(r=l.length,o=f.length,d=r<o,d&&(o=r),r=0;r<o;r++)if(l[r]!=f[r]){d=l[r]<f[r];break}a=0}for(d&&(t=l,l=f,f=t,e.s=-e.s),o=l.length,r=f.length-o;r>0;--r)l[o++]=0;for(r=f.length;r>a;){if(l[--r]<f[r]){for(i=r;i&&l[--i]===0;)l[i]=oi-1;--l[i],l[r]+=oi}l[r]-=f[r]}for(;l[--o]===0;)l.pop();for(;l[0]===0;l.shift())--n;return l[0]?(e.d=l,e.e=_i(l,n),M?F(e,s,c):e):new m(c===3?-0:0)},P.modulo=P.mod=function(e){var t,n=this,r=n.constructor;return e=new r(e),!n.d||!e.s||e.d&&!e.d[0]?new r(NaN):!e.d||n.d&&!n.d[0]?F(new r(n),r.precision,r.rounding):(M=!1,r.modulo==9?(t=hi(n,e.abs(),0,3,1),t.s*=e.s):t=hi(n,e,0,r.modulo,1),t=t.times(e),M=!0,n.minus(t))},P.naturalExponential=P.exp=function(){return Ti(this)},P.naturalLogarithm=P.ln=function(){return Ei(this)},P.negated=P.neg=function(){var e=new this.constructor(this);return e.s=-e.s,F(e)},P.plus=P.add=function(e){var t,n,r,i,a,o,s,c,l,u,d=this,f=d.constructor;if(e=new f(e),!d.d||!e.d)return!d.s||!e.s?e=new f(NaN):d.d||(e=new f(e.d||d.s===e.s?d:NaN)),e;if(d.s!=e.s)return e.s=-e.s,d.minus(e);if(l=d.d,u=e.d,s=f.precision,c=f.rounding,!l[0]||!u[0])return u[0]||(e=new f(d)),M?F(e,s,c):e;if(a=ei(d.e/N),r=ei(e.e/N),l=l.slice(),i=a-r,i){for(i<0?(n=l,i=-i,o=u.length):(n=u,r=a,o=l.length),a=Math.ceil(s/N),o=a>o?a+1:o+1,i>o&&(i=o,n.length=1),n.reverse();i--;)n.push(0);n.reverse()}for(o=l.length,i=u.length,o-i<0&&(i=o,n=u,u=l,l=n),t=0;i;)t=(l[--i]=l[i]+u[i]+t)/oi|0,l[i]%=oi;for(t&&(l.unshift(t),++r),o=l.length;l[--o]==0;)l.pop();return e.d=l,e.e=_i(l,r),M?F(e,s,c):e},P.precision=P.sd=function(e){var t,n=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Xr+e);return n.d?(t=bi(n.d),e&&n.e+1>t&&(t=n.e+1)):t=NaN,t},P.round=function(){var e=this,t=e.constructor;return F(new t(e),e.e+1,t.rounding)},P.sine=P.sin=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+Math.max(n.e,n.sd())+N,r.rounding=1,n=Ai(r,Ni(r,n)),r.precision=e,r.rounding=t,F(Jr>2?n.neg():n,e,t,!0)):new r(NaN)},P.squareRoot=P.sqrt=function(){var e,t,n,r,i,a,o=this,s=o.d,c=o.e,l=o.s,u=o.constructor;if(l!==1||!s||!s[0])return new u(!l||l<0&&(!s||s[0])?NaN:s?o:1/0);for(M=!1,l=Math.sqrt(+o),l==0||l==1/0?(t=ui(s),(t.length+c)%2==0&&(t+=`0`),l=Math.sqrt(t),c=ei((c+1)/2)-(c<0||c%2),l==1/0?t=`5e`+c:(t=l.toExponential(),t=t.slice(0,t.indexOf(`e`)+1)+c),r=new u(t)):r=new u(l.toString()),n=(c=u.precision)+3;;)if(a=r,r=a.plus(hi(o,a,n+2,1)).times(.5),ui(a.d).slice(0,n)===(t=ui(r.d)).slice(0,n))if(t=t.slice(n-3,n+1),t==`9999`||!i&&t==`4999`){if(!i&&(F(a,c+1,0),a.times(a).eq(o))){r=a;break}n+=4,i=1}else{(!+t||!+t.slice(1)&&t.charAt(0)==`5`)&&(F(r,c+1,1),e=!r.times(r).eq(o));break}return M=!0,F(r,c,u.rounding,e)},P.tangent=P.tan=function(){var e,t,n=this,r=n.constructor;return n.isFinite()?n.isZero()?new r(n):(e=r.precision,t=r.rounding,r.precision=e+10,r.rounding=1,n=n.sin(),n.s=1,n=hi(n,new r(1).minus(n.times(n)).sqrt(),e+10,0),r.precision=e,r.rounding=t,F(Jr==2||Jr==4?n.neg():n,e,t,!0)):new r(NaN)},P.times=P.mul=function(e){var t,n,r,i,a,o,s,c,l,u=this,d=u.constructor,f=u.d,p=(e=new d(e)).d;if(e.s*=u.s,!f||!f[0]||!p||!p[0])return new d(!e.s||f&&!f[0]&&!p||p&&!p[0]&&!f?NaN:!f||!p?e.s/0:e.s*0);for(n=ei(u.e/N)+ei(e.e/N),c=f.length,l=p.length,c<l&&(a=f,f=p,p=a,o=c,c=l,l=o),a=[],o=c+l,r=o;r--;)a.push(0);for(r=l;--r>=0;){for(t=0,i=c+r;i>r;)s=a[i]+p[r]*f[i-r-1]+t,a[i--]=s%oi|0,t=s/oi|0;a[i]=(a[i]+t)%oi|0}for(;!a[--o];)a.pop();return t?++n:a.shift(),e.d=a,e.e=_i(a,n),M?F(e,d.precision,d.rounding):e},P.toBinary=function(e,t){return Pi(this,2,e,t)},P.toDecimalPlaces=P.toDP=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(di(e,0,Hr),t===void 0?t=r.rounding:di(t,0,8),F(n,e+n.e+1,t))},P.toExponential=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=gi(r,!0):(di(e,0,Hr),t===void 0?t=i.rounding:di(t,0,8),r=F(new i(r),e+1,t),n=gi(r,!0,e+1)),r.isNeg()&&!r.isZero()?`-`+n:n},P.toFixed=function(e,t){var n,r,i=this,a=i.constructor;return e===void 0?n=gi(i):(di(e,0,Hr),t===void 0?t=a.rounding:di(t,0,8),r=F(new a(i),e+i.e+1,t),n=gi(r,!1,e+r.e+1)),i.isNeg()&&!i.isZero()?`-`+n:n},P.toFraction=function(e){var t,n,r,i,a,o,s,c,l,u,d,f,p=this,m=p.d,h=p.constructor;if(!m)return new h(p);if(l=n=new h(1),r=c=new h(0),t=new h(r),a=t.e=bi(m)-p.e-1,o=a%N,t.d[0]=ti(10,o<0?N+o:o),e==null)e=a>0?t:l;else{if(s=new h(e),!s.isInt()||s.lt(l))throw Error(Xr+s);e=s.gt(t)?a>0?t:l:s}for(M=!1,s=new h(ui(m)),u=h.precision,h.precision=a=m.length*N*2;d=hi(s,t,0,1,1),i=n.plus(d.times(r)),i.cmp(e)!=1;)n=r,r=i,i=l,l=c.plus(d.times(i)),c=i,i=t,t=s.minus(d.times(i)),s=i;return i=hi(e.minus(n),r,0,1,1),c=c.plus(i.times(l)),n=n.plus(i.times(r)),c.s=l.s=p.s,f=hi(l,r,a,1).minus(p).abs().cmp(hi(c,n,a,1).minus(p).abs())<1?[l,r]:[c,n],h.precision=u,M=!0,f},P.toHexadecimal=P.toHex=function(e,t){return Pi(this,16,e,t)},P.toNearest=function(e,t){var n=this,r=n.constructor;if(n=new r(n),e==null){if(!n.d)return n;e=new r(1),t=r.rounding}else{if(e=new r(e),t===void 0?t=r.rounding:di(t,0,8),!n.d)return e.s?n:e;if(!e.d)return e.s&&(e.s=n.s),e}return e.d[0]?(M=!1,n=hi(n,e,0,t,1).times(e),M=!0,F(n)):(e.s=n.s,n=e),n},P.toNumber=function(){return+this},P.toOctal=function(e,t){return Pi(this,8,e,t)},P.toPower=P.pow=function(e){var t,n,r,i,a,o,s=this,c=s.constructor,l=+(e=new c(e));if(!s.d||!e.d||!s.d[0]||!e.d[0])return new c(ti(+s,l));if(s=new c(s),s.eq(1))return s;if(r=c.precision,a=c.rounding,e.eq(1))return F(s,r,a);if(t=ei(e.e/N),t>=e.d.length-1&&(n=l<0?-l:l)<=si)return i=Si(c,s,n,r),e.s<0?new c(1).div(i):F(i,r,a);if(o=s.s,o<0){if(t<e.d.length-1)return new c(NaN);if(e.d[t]&1||(o=1),s.e==0&&s.d[0]==1&&s.d.length==1)return s.s=o,s}return n=ti(+s,l),t=n==0||!isFinite(n)?ei(l*(Math.log(`0.`+ui(s.d))/Math.LN10+s.e+1)):new c(n+``).e,t>c.maxE+1||t<c.minE-1?new c(t>0?o/0:0):(M=!1,c.rounding=s.s=1,n=Math.min(12,(t+``).length),i=Ti(e.times(Ei(s,r+n)),r),i.d&&(i=F(i,r+5,1),fi(i.d,r,a)&&(t=r+10,i=F(Ti(e.times(Ei(s,t+n)),t),t+5,1),+ui(i.d).slice(r+1,r+15)+1==0x5af3107a4000&&(i=F(i,r+1,0)))),i.s=o,M=!0,c.rounding=a,F(i,r,a))},P.toPrecision=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=gi(r,r.e<=i.toExpNeg||r.e>=i.toExpPos):(di(e,1,Hr),t===void 0?t=i.rounding:di(t,0,8),r=F(new i(r),e,t),n=gi(r,e<=r.e||r.e<=i.toExpNeg,e)),r.isNeg()&&!r.isZero()?`-`+n:n},P.toSignificantDigits=P.toSD=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(di(e,1,Hr),t===void 0?t=r.rounding:di(t,0,8)),F(new r(n),e,t)},P.toString=function(){var e=this,t=e.constructor,n=gi(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()&&!e.isZero()?`-`+n:n},P.truncated=P.trunc=function(){return F(new this.constructor(this),this.e+1,1)},P.valueOf=P.toJSON=function(){var e=this,t=e.constructor,n=gi(e,e.e<=t.toExpNeg||e.e>=t.toExpPos);return e.isNeg()?`-`+n:n};function ui(e){var t,n,r,i=e.length-1,a=``,o=e[0];if(i>0){for(a+=o,t=1;t<i;t++)r=e[t]+``,n=N-r.length,n&&(a+=xi(n)),a+=r;o=e[t],r=o+``,n=N-r.length,n&&(a+=xi(n))}else if(o===0)return`0`;for(;o%10==0;)o/=10;return a+o}function di(e,t,n){if(e!==~~e||e<t||e>n)throw Error(Xr+e)}function fi(e,t,n,r){var i,a,o,s;for(a=e[0];a>=10;a/=10)--t;return--t<0?(t+=N,i=0):(i=Math.ceil((t+1)/N),t%=N),a=ti(10,N-t),s=e[i]%a|0,r==null?t<3?(t==0?s=s/100|0:t==1&&(s=s/10|0),o=n<4&&s==99999||n>3&&s==49999||s==5e4||s==0):o=(n<4&&s+1==a||n>3&&s+1==a/2)&&(e[i+1]/a/100|0)==ti(10,t-2)-1||(s==a/2||s==0)&&(e[i+1]/a/100|0)==0:t<4?(t==0?s=s/1e3|0:t==1?s=s/100|0:t==2&&(s=s/10|0),o=(r||n<4)&&s==9999||!r&&n>3&&s==4999):o=((r||n<4)&&s+1==a||!r&&n>3&&s+1==a/2)&&(e[i+1]/a/1e3|0)==ti(10,t-3)-1,o}function pi(e,t,n){for(var r,i=[0],a,o=0,s=e.length;o<s;){for(a=i.length;a--;)i[a]*=t;for(i[0]+=Ur.indexOf(e.charAt(o++)),r=0;r<i.length;r++)i[r]>n-1&&(i[r+1]===void 0&&(i[r+1]=0),i[r+1]+=i[r]/n|0,i[r]%=n)}return i.reverse()}function mi(e,t){var n,r,i;if(t.isZero())return t;r=t.d.length,r<32?(n=Math.ceil(r/3),i=(1/Mi(4,n)).toString()):(n=16,i=`2.3283064365386962890625e-10`),e.precision+=n,t=ji(e,1,t.times(i),new e(1));for(var a=n;a--;){var o=t.times(t);t=o.times(o).minus(o).times(8).plus(1)}return e.precision-=n,t}var hi=(function(){function e(e,t,n){var r,i=0,a=e.length;for(e=e.slice();a--;)r=e[a]*t+i,e[a]=r%n|0,i=r/n|0;return i&&e.unshift(i),e}function t(e,t,n,r){var i,a;if(n!=r)a=n>r?1:-1;else for(i=a=0;i<n;i++)if(e[i]!=t[i]){a=e[i]>t[i]?1:-1;break}return a}function n(e,t,n,r){for(var i=0;n--;)e[n]-=i,i=e[n]<t[n]?1:0,e[n]=i*r+e[n]-t[n];for(;!e[0]&&e.length>1;)e.shift()}return function(r,i,a,o,s,c){var l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,ee,te,E,ne=r.constructor,re=r.s==i.s?1:-1,D=r.d,ie=i.d;if(!D||!D[0]||!ie||!ie[0])return new ne(!r.s||!i.s||(D?ie&&D[0]==ie[0]:!ie)?NaN:D&&D[0]==0||!ie?re*0:re/0);for(c?(p=1,u=r.e-i.e):(c=oi,p=N,u=ei(r.e/p)-ei(i.e/p)),te=ie.length,T=D.length,_=new ne(re),v=_.d=[],d=0;ie[d]==(D[d]||0);d++);if(ie[d]>(D[d]||0)&&u--,a==null?(S=a=ne.precision,o=ne.rounding):S=s?a+(r.e-i.e)+1:a,S<0)v.push(1),m=!0;else{if(S=S/p+2|0,d=0,te==1){for(f=0,ie=ie[0],S++;(d<T||f)&&S--;d++)C=f*c+(D[d]||0),v[d]=C/ie|0,f=C%ie|0;m=f||d<T}else{for(f=c/(ie[0]+1)|0,f>1&&(ie=e(ie,f,c),D=e(D,f,c),te=ie.length,T=D.length),w=te,y=D.slice(0,te),b=y.length;b<te;)y[b++]=0;E=ie.slice(),E.unshift(0),ee=ie[0],ie[1]>=c/2&&++ee;do f=0,l=t(ie,y,te,b),l<0?(x=y[0],te!=b&&(x=x*c+(y[1]||0)),f=x/ee|0,f>1?(f>=c&&(f=c-1),h=e(ie,f,c),g=h.length,b=y.length,l=t(h,y,g,b),l==1&&(f--,n(h,te<g?E:ie,g,c))):(f==0&&(l=f=1),h=ie.slice()),g=h.length,g<b&&h.unshift(0),n(y,h,b,c),l==-1&&(b=y.length,l=t(ie,y,te,b),l<1&&(f++,n(y,te<b?E:ie,b,c))),b=y.length):l===0&&(f++,y=[0]),v[d++]=f,l&&y[0]?y[b++]=D[w]||0:(y=[D[w]],b=1);while((w++<T||y[0]!==void 0)&&S--);m=y[0]!==void 0}v[0]||v.shift()}if(p==1)_.e=u,qr=m;else{for(d=1,f=v[0];f>=10;f/=10)d++;_.e=d+u*p-1,F(_,s?a+_.e+1:a,o,m)}return _}})();function F(e,t,n,r){var i,a,o,s,c,l,u,d,f,p=e.constructor;out:if(t!=null){if(d=e.d,!d)return e;for(i=1,s=d[0];s>=10;s/=10)i++;if(a=t-i,a<0)a+=N,o=t,u=d[f=0],c=u/ti(10,i-o-1)%10|0;else if(f=Math.ceil((a+1)/N),s=d.length,f>=s)if(r){for(;s++<=f;)d.push(0);u=c=0,i=1,a%=N,o=a-N+1}else break out;else{for(u=s=d[f],i=1;s>=10;s/=10)i++;a%=N,o=a-N+i,c=o<0?0:u/ti(10,i-o-1)%10|0}if(r=r||t<0||d[f+1]!==void 0||(o<0?u:u%ti(10,i-o-1)),l=n<4?(c||r)&&(n==0||n==(e.s<0?3:2)):c>5||c==5&&(n==4||r||n==6&&(a>0?o>0?u/ti(10,i-o):0:d[f-1])%10&1||n==(e.s<0?8:7)),t<1||!d[0])return d.length=0,l?(t-=e.e+1,d[0]=ti(10,(N-t%N)%N),e.e=-t||0):d[0]=e.e=0,e;if(a==0?(d.length=f,s=1,f--):(d.length=f+1,s=ti(10,N-a),d[f]=o>0?(u/ti(10,i-o)%ti(10,o)|0)*s:0),l)for(;;)if(f==0){for(a=1,o=d[0];o>=10;o/=10)a++;for(o=d[0]+=s,s=1;o>=10;o/=10)s++;a!=s&&(e.e++,d[0]==oi&&(d[0]=1));break}else{if(d[f]+=s,d[f]!=oi)break;d[f--]=0,s=1}for(a=d.length;d[--a]===0;)d.pop()}return M&&(e.e>p.maxE?(e.d=null,e.e=NaN):e.e<p.minE&&(e.e=0,e.d=[0])),e}function gi(e,t,n){if(!e.isFinite())return Di(e);var r,i=e.e,a=ui(e.d),o=a.length;return t?(n&&(r=n-o)>0?a=a.charAt(0)+`.`+a.slice(1)+xi(r):o>1&&(a=a.charAt(0)+`.`+a.slice(1)),a=a+(e.e<0?`e`:`e+`)+e.e):i<0?(a=`0.`+xi(-i-1)+a,n&&(r=n-o)>0&&(a+=xi(r))):i>=o?(a+=xi(i+1-o),n&&(r=n-i-1)>0&&(a=a+`.`+xi(r))):((r=i+1)<o&&(a=a.slice(0,r)+`.`+a.slice(r)),n&&(r=n-o)>0&&(i+1===o&&(a+=`.`),a+=xi(r))),a}function _i(e,t){var n=e[0];for(t*=N;n>=10;n/=10)t++;return t}function vi(e,t,n){if(t>ci)throw M=!0,n&&(e.precision=n),Error(Zr);return F(new e(Wr),t,1,!0)}function yi(e,t,n){if(t>li)throw Error(Zr);return F(new e(Gr),t,n,!0)}function bi(e){var t=e.length-1,n=t*N+1;if(t=e[t],t){for(;t%10==0;t/=10)n--;for(t=e[0];t>=10;t/=10)n++}return n}function xi(e){for(var t=``;e--;)t+=`0`;return t}function Si(e,t,n,r){var i,a=new e(1),o=Math.ceil(r/N+4);for(M=!1;;){if(n%2&&(a=a.times(t),Fi(a.d,o)&&(i=!0)),n=ei(n/2),n===0){n=a.d.length-1,i&&a.d[n]===0&&++a.d[n];break}t=t.times(t),Fi(t.d,o)}return M=!0,a}function Ci(e){return e.d[e.d.length-1]&1}function wi(e,t,n){for(var r,i,a=new e(t[0]),o=0;++o<t.length;){if(i=new e(t[o]),!i.s){a=i;break}r=a.cmp(i),(r===n||r===0&&a.s===n)&&(a=i)}return a}function Ti(e,t){var n,r,i,a,o,s,c,l=0,u=0,d=0,f=e.constructor,p=f.rounding,m=f.precision;if(!e.d||!e.d[0]||e.e>17)return new f(e.d?e.d[0]?e.s<0?0:1/0:1:e.s?e.s<0?0:e:NaN);for(t==null?(M=!1,c=m):c=t,s=new f(.03125);e.e>-2;)e=e.times(s),d+=5;for(r=Math.log(ti(2,d))/Math.LN10*2+5|0,c+=r,n=a=o=new f(1),f.precision=c;;){if(a=F(a.times(e),c,1),n=n.times(++u),s=o.plus(hi(a,n,c,1)),ui(s.d).slice(0,c)===ui(o.d).slice(0,c)){for(i=d;i--;)o=F(o.times(o),c,1);if(t==null)if(l<3&&fi(o.d,c-r,p,l))f.precision=c+=10,n=a=s=new f(1),u=0,l++;else return F(o,f.precision=m,p,M=!0);else return f.precision=m,o}o=s}}function Ei(e,t){var n,r,i,a,o,s,c,l,u,d,f,p=1,m=10,h=e,g=h.d,_=h.constructor,v=_.rounding,y=_.precision;if(h.s<0||!g||!g[0]||!h.e&&g[0]==1&&g.length==1)return new _(g&&!g[0]?-1/0:h.s==1?g?0:h:NaN);if(t==null?(M=!1,u=y):u=t,_.precision=u+=m,n=ui(g),r=n.charAt(0),Math.abs(a=h.e)<0x5543df729c000){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)h=h.times(e),n=ui(h.d),r=n.charAt(0),p++;a=h.e,r>1?(h=new _(`0.`+n),a++):h=new _(r+`.`+n.slice(1))}else return l=vi(_,u+2,y).times(a+``),h=Ei(new _(r+`.`+n.slice(1)),u-m).plus(l),_.precision=y,t==null?F(h,y,v,M=!0):h;for(d=h,c=o=h=hi(h.minus(1),h.plus(1),u,1),f=F(h.times(h),u,1),i=3;;){if(o=F(o.times(f),u,1),l=c.plus(hi(o,new _(i),u,1)),ui(l.d).slice(0,u)===ui(c.d).slice(0,u))if(c=c.times(2),a!==0&&(c=c.plus(vi(_,u+2,y).times(a+``))),c=hi(c,new _(p),u,1),t==null)if(fi(c.d,u-m,v,s))_.precision=u+=m,l=o=h=hi(d.minus(1),d.plus(1),u,1),f=F(h.times(h),u,1),i=s=1;else return F(c,_.precision=y,v,M=!0);else return _.precision=y,c;c=l,i+=2}}function Di(e){return String(e.s*e.s/0)}function Oi(e,t){var n,r,i;for((n=t.indexOf(`.`))>-1&&(t=t.replace(`.`,``)),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;t.charCodeAt(r)===48;r++);for(i=t.length;t.charCodeAt(i-1)===48;--i);if(t=t.slice(r,i),t){if(i-=r,e.e=n=n-r-1,e.d=[],r=(n+1)%N,n<0&&(r+=N),r<i){for(r&&e.d.push(+t.slice(0,r)),i-=N;r<i;)e.d.push(+t.slice(r,r+=N));t=t.slice(r),r=N-t.length}else r-=i;for(;r--;)t+=`0`;e.d.push(+t),M&&(e.e>e.constructor.maxE?(e.d=null,e.e=NaN):e.e<e.constructor.minE&&(e.e=0,e.d=[0]))}else e.e=0,e.d=[0];return e}function ki(e,t){var n,r,i,a,o,s,c,l,u;if(t.indexOf(`_`)>-1){if(t=t.replace(/(\d)_(?=\d)/g,`$1`),ai.test(t))return Oi(e,t)}else if(t===`Infinity`||t===`NaN`)return+t||(e.s=NaN),e.e=NaN,e.d=null,e;if(ri.test(t))n=16,t=t.toLowerCase();else if(ni.test(t))n=2;else if(ii.test(t))n=8;else throw Error(Xr+t);for(a=t.search(/p/i),a>0?(c=+t.slice(a+1),t=t.substring(2,a)):t=t.slice(2),a=t.indexOf(`.`),o=a>=0,r=e.constructor,o&&(t=t.replace(`.`,``),s=t.length,a=s-a,i=Si(r,new r(n),a,a*2)),l=pi(t,n,oi),u=l.length-1,a=u;l[a]===0;--a)l.pop();return a<0?new r(e.s*0):(e.e=_i(l,u),e.d=l,M=!1,o&&(e=hi(e,i,s*4)),c&&(e=e.times(Math.abs(c)<54?ti(2,c):I.pow(2,c))),M=!0,e)}function Ai(e,t){var n,r=t.d.length;if(r<3)return t.isZero()?t:ji(e,2,t,t);n=1.4*Math.sqrt(r),n=n>16?16:n|0,t=t.times(1/Mi(5,n)),t=ji(e,2,t,t);for(var i,a=new e(5),o=new e(16),s=new e(20);n--;)i=t.times(t),t=t.times(a.plus(i.times(o.times(i).minus(s))));return t}function ji(e,t,n,r,i){var a,o,s,c,l=1,u=e.precision,d=Math.ceil(u/N);for(M=!1,c=n.times(n),s=new e(r);;){if(o=hi(s.times(c),new e(t++*t++),u,1),s=i?r.plus(o):r.minus(o),r=hi(o.times(c),new e(t++*t++),u,1),o=s.plus(r),o.d[d]!==void 0){for(a=d;o.d[a]===s.d[a]&&a--;);if(a==-1)break}a=s,s=r,r=o,o=a,l++}return M=!0,o.d.length=d+1,o}function Mi(e,t){for(var n=e;--t;)n*=e;return n}function Ni(e,t){var n,r=t.s<0,i=yi(e,e.precision,1),a=i.times(.5);if(t=t.abs(),t.lte(a))return Jr=r?4:1,t;if(n=t.divToInt(i),n.isZero())Jr=r?3:2;else{if(t=t.minus(n.times(i)),t.lte(a))return Jr=Ci(n)?r?2:3:r?4:1,t;Jr=Ci(n)?r?1:4:r?3:2}return t.minus(i).abs()}function Pi(e,t,n,r){var i,a,o,s,c,l,u,d,f,p=e.constructor,m=n!==void 0;if(m?(di(n,1,Hr),r===void 0?r=p.rounding:di(r,0,8)):(n=p.precision,r=p.rounding),!e.isFinite())u=Di(e);else{for(u=gi(e),o=u.indexOf(`.`),m?(i=2,t==16?n=n*4-3:t==8&&(n=n*3-2)):i=t,o>=0&&(u=u.replace(`.`,``),f=new p(1),f.e=u.length-o,f.d=pi(gi(f),10,i),f.e=f.d.length),d=pi(u,10,i),a=c=d.length;d[--c]==0;)d.pop();if(!d[0])u=m?`0p+0`:`0`;else{if(o<0?a--:(e=new p(e),e.d=d,e.e=a,e=hi(e,f,n,r,0,i),d=e.d,a=e.e,l=qr),o=d[n],s=i/2,l=l||d[n+1]!==void 0,l=r<4?(o!==void 0||l)&&(r===0||r===(e.s<0?3:2)):o>s||o===s&&(r===4||l||r===6&&d[n-1]&1||r===(e.s<0?8:7)),d.length=n,l)for(;++d[--n]>i-1;)d[n]=0,n||(++a,d.unshift(1));for(c=d.length;!d[c-1];--c);for(o=0,u=``;o<c;o++)u+=Ur.charAt(d[o]);if(m){if(c>1)if(t==16||t==8){for(o=t==16?4:3,--c;c%o;c++)u+=`0`;for(d=pi(u,i,t),c=d.length;!d[c-1];--c);for(o=1,u=`1.`;o<c;o++)u+=Ur.charAt(d[o])}else u=u.charAt(0)+`.`+u.slice(1);u=u+(a<0?`p`:`p+`)+a}else if(a<0){for(;++a;)u=`0`+u;u=`0.`+u}else if(++a>c)for(a-=c;a--;)u+=`0`;else a<c&&(u=u.slice(0,a)+`.`+u.slice(a))}u=(t==16?`0x`:t==2?`0b`:t==8?`0o`:``)+u}return e.s<0?`-`+u:u}function Fi(e,t){if(e.length>t)return e.length=t,!0}function Ii(e){return new this(e).abs()}function Li(e){return new this(e).acos()}function Ri(e){return new this(e).acosh()}function zi(e,t){return new this(e).plus(t)}function Bi(e){return new this(e).asin()}function Vi(e){return new this(e).asinh()}function Hi(e){return new this(e).atan()}function Ui(e){return new this(e).atanh()}function Wi(e,t){e=new this(e),t=new this(t);var n,r=this.precision,i=this.rounding,a=r+4;return!e.s||!t.s?n=new this(NaN):!e.d&&!t.d?(n=yi(this,a,1).times(t.s>0?.25:.75),n.s=e.s):!t.d||e.isZero()?(n=t.s<0?yi(this,r,i):new this(0),n.s=e.s):!e.d||t.isZero()?(n=yi(this,a,1).times(.5),n.s=e.s):t.s<0?(this.precision=a,this.rounding=1,n=this.atan(hi(e,t,a,1)),t=yi(this,a,1),this.precision=r,this.rounding=i,n=e.s<0?n.minus(t):n.plus(t)):n=this.atan(hi(e,t,a,1)),n}function Gi(e){return new this(e).cbrt()}function Ki(e){return F(e=new this(e),e.e+1,2)}function qi(e,t,n){return new this(e).clamp(t,n)}function Ji(e){if(!e||typeof e!=`object`)throw Error(Yr+`Object expected`);var t,n,r,i=e.defaults===!0,a=[`precision`,1,Hr,`rounding`,0,8,`toExpNeg`,-Vr,0,`toExpPos`,0,Vr,`maxE`,0,Vr,`minE`,-Vr,0,`modulo`,0,9];for(t=0;t<a.length;t+=3)if(n=a[t],i&&(this[n]=Kr[n]),(r=e[n])!==void 0)if(ei(r)===r&&r>=a[t+1]&&r<=a[t+2])this[n]=r;else throw Error(Xr+n+`: `+r);if(n=`crypto`,i&&(this[n]=Kr[n]),(r=e[n])!==void 0)if(r===!0||r===!1||r===0||r===1)if(r)if(typeof crypto<`u`&&crypto&&(crypto.getRandomValues||crypto.randomBytes))this[n]=!0;else throw Error(Qr);else this[n]=!1;else throw Error(Xr+n+`: `+r);return this}function Yi(e){return new this(e).cos()}function Xi(e){return new this(e).cosh()}function Zi(e){var t,n,r;function i(e){var t,n,r,a=this;if(!(a instanceof i))return new i(e);if(a.constructor=i,na(e)){a.s=e.s,M?!e.d||e.e>i.maxE?(a.e=NaN,a.d=null):e.e<i.minE?(a.e=0,a.d=[0]):(a.e=e.e,a.d=e.d.slice()):(a.e=e.e,a.d=e.d?e.d.slice():e.d);return}if(r=typeof e,r===`number`){if(e===0){a.s=1/e<0?-1:1,a.e=0,a.d=[0];return}if(e<0?(e=-e,a.s=-1):a.s=1,e===~~e&&e<1e7){for(t=0,n=e;n>=10;n/=10)t++;M?t>i.maxE?(a.e=NaN,a.d=null):t<i.minE?(a.e=0,a.d=[0]):(a.e=t,a.d=[e]):(a.e=t,a.d=[e]);return}if(e*0!=0){e||(a.s=NaN),a.e=NaN,a.d=null;return}return Oi(a,e.toString())}if(r===`string`)return(n=e.charCodeAt(0))===45?(e=e.slice(1),a.s=-1):(n===43&&(e=e.slice(1)),a.s=1),ai.test(e)?Oi(a,e):ki(a,e);if(r===`bigint`)return e<0?(e=-e,a.s=-1):a.s=1,Oi(a,e.toString());throw Error(Xr+e)}if(i.prototype=P,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.EUCLID=9,i.config=i.set=Ji,i.clone=Zi,i.isDecimal=na,i.abs=Ii,i.acos=Li,i.acosh=Ri,i.add=zi,i.asin=Bi,i.asinh=Vi,i.atan=Hi,i.atanh=Ui,i.atan2=Wi,i.cbrt=Gi,i.ceil=Ki,i.clamp=qi,i.cos=Yi,i.cosh=Xi,i.div=Qi,i.exp=$i,i.floor=ea,i.hypot=ta,i.ln=ra,i.log=ia,i.log10=oa,i.log2=aa,i.max=sa,i.min=ca,i.mod=la,i.mul=ua,i.pow=da,i.random=fa,i.round=pa,i.sign=ma,i.sin=ha,i.sinh=ga,i.sqrt=_a,i.sub=va,i.sum=ya,i.tan=ba,i.tanh=xa,i.trunc=Sa,e===void 0&&(e={}),e&&e.defaults!==!0)for(r=[`precision`,`rounding`,`toExpNeg`,`toExpPos`,`maxE`,`minE`,`modulo`,`crypto`],t=0;t<r.length;)e.hasOwnProperty(n=r[t++])||(e[n]=this[n]);return i.config(e),i}function Qi(e,t){return new this(e).div(t)}function $i(e){return new this(e).exp()}function ea(e){return F(e=new this(e),e.e+1,3)}function ta(){var e,t,n=new this(0);for(M=!1,e=0;e<arguments.length;)if(t=new this(arguments[e++]),t.d)n.d&&(n=n.plus(t.times(t)));else{if(t.s)return M=!0,new this(1/0);n=t}return M=!0,n.sqrt()}function na(e){return e instanceof I||e&&e.toStringTag===$r||!1}function ra(e){return new this(e).ln()}function ia(e,t){return new this(e).log(t)}function aa(e){return new this(e).log(2)}function oa(e){return new this(e).log(10)}function sa(){return wi(this,arguments,-1)}function ca(){return wi(this,arguments,1)}function la(e,t){return new this(e).mod(t)}function ua(e,t){return new this(e).mul(t)}function da(e,t){return new this(e).pow(t)}function fa(e){var t,n,r,i,a=0,o=new this(1),s=[];if(e===void 0?e=this.precision:di(e,1,Hr),r=Math.ceil(e/N),!this.crypto)for(;a<r;)s[a++]=Math.random()*1e7|0;else if(crypto.getRandomValues)for(t=crypto.getRandomValues(new Uint32Array(r));a<r;)i=t[a],i>=429e7?t[a]=crypto.getRandomValues(new Uint32Array(1))[0]:s[a++]=i%1e7;else if(crypto.randomBytes){for(t=crypto.randomBytes(r*=4);a<r;)i=t[a]+(t[a+1]<<8)+(t[a+2]<<16)+((t[a+3]&127)<<24),i>=214e7?crypto.randomBytes(4).copy(t,a):(s.push(i%1e7),a+=4);a=r/4}else throw Error(Qr);for(r=s[--a],e%=N,r&&e&&(i=ti(10,N-e),s[a]=(r/i|0)*i);s[a]===0;a--)s.pop();if(a<0)n=0,s=[0];else{for(n=-1;s[0]===0;n-=N)s.shift();for(r=1,i=s[0];i>=10;i/=10)r++;r<N&&(n-=N-r)}return o.e=n,o.d=s,o}function pa(e){return F(e=new this(e),e.e+1,this.rounding)}function ma(e){return e=new this(e),e.d?e.d[0]?e.s:0*e.s:e.s||NaN}function ha(e){return new this(e).sin()}function ga(e){return new this(e).sinh()}function _a(e){return new this(e).sqrt()}function va(e,t){return new this(e).sub(t)}function ya(){var e=0,t=arguments,n=new this(t[e]);for(M=!1;n.s&&++e<t.length;)n=n.plus(t[e]);return M=!0,F(n,this.precision,this.rounding)}function ba(e){return new this(e).tan()}function xa(e){return new this(e).tanh()}function Sa(e){return F(e=new this(e),e.e+1,1)}P[Symbol.for(`nodejs.util.inspect.custom`)]=P.toString,P[Symbol.toStringTag]=`Decimal`;var I=P.constructor=Zi(Kr);Wr=new I(Wr),Gr=new I(Gr);function Ca(e,t){let n=e+t;return Number.isSafeInteger(n)?n:new I(e).add(t).toNumber()}function wa(e,t){let n=e-t;return Number.isSafeInteger(n)?n:new I(e).sub(t).toNumber()}function Ta(e,t){let n=e*t;return Number.isSafeInteger(n)?n:new I(e).mul(t).toNumber()}function Ea(e,t){let n=e/t;return Number.isSafeInteger(n)?n:new I(e).div(t).toNumber()}function Da(e,t){let n=10**Math.trunc(t),r=Aa(e,n);return Math.round(Ta(e,n)+r)/n}function Oa(e,t){let n=10**Math.trunc(t),r=Aa(e,n);return Math.floor(Ta(e,n)+r)/n}function ka(e,t){let n=10**Math.trunc(t),r=Aa(e,n);return Math.ceil(Ta(e,n)-r)/n}function Aa(e,t){return 2**-52*Math.max(1,Math.abs(Ta(e,t)))}function ja(e,t){return e-t*Math.floor(e/t)}function Ma(e,t){return e**t}function Na(e){return Math.sqrt(e)}function Pa(e,t){return e===t}function Fa(e,t){return e>t}function Ia(e,t){return e>=t}function La(e,t){return e<t}function Ra(e,t){return e<=t}function za(e,t=15){return Math.floor(Math.abs(e)).toString().length>=t?e:Number.parseFloat(e.toPrecision(t))}function Ba(e,t,n=2**-52){return Math.abs(e-t)<n}function Va(e,t=12,n=1e-10){let r=za(e,t);return Ba(e,r,n)?r:za(e)}function Ha(e){return e-Math.trunc(e)}var Ua=class e extends ee{static create(){return this._instance=this._instance||new e(0),this._instance}isNull(){return!0}plus(e){return R.create(0).plus(e)}minus(e){return R.create(0).minus(e)}multiply(e){return R.create(0).multiply(e)}divided(e){return R.create(0).divided(e)}mod(e){return R.create(0).mod(e)}compare(e,t){return e.isString()?z.create(``).compare(e,t):e.isBoolean()?L.create(!1).compare(e,t):R.create(0).compare(e,t)}concatenateFront(e){return e.isArray()?e.concatenateBack(z.create(``)):z.create(this.concatenate(e.getValue(),s.FRONT))}concatenateBack(e){return e.isArray()?e.concatenateFront(z.create(``)):z.create(this.concatenate(e.getValue(),s.BACK))}plusBy(e){return R.create(0).plusBy(e)}minusBy(e){return R.create(0).minusBy(e)}multiplyBy(e){return R.create(0).multiplyBy(e)}dividedBy(e){return R.create(0).dividedBy(e)}compareBy(e,t){return typeof e==`string`?z.create(``).compareBy(e,t):typeof e==`boolean`?L.create(!1).compareBy(e,t):R.create(0).compareBy(e,t)}pow(e){return R.create(0).pow(e)}sqrt(){return R.create(0).sqrt()}cbrt(){return R.create(0).cbrt()}cos(){return R.create(0).cos()}cosh(){return R.create(0).cosh()}acos(){return R.create(0).acos()}acosh(){return R.create(0).acosh()}sin(){return R.create(0).sin()}sinh(){return R.create(0).sinh()}asin(){return R.create(0).asin()}asinh(){return R.create(0).asinh()}tan(){return R.create(0).tan()}tanh(){return R.create(0).tanh()}atan(){return R.create(0).atan()}atan2(e){return R.create(0).atan2(e)}atanh(){return R.create(0).atanh()}log(){return E.create(p.NUM)}log10(){return E.create(p.NUM)}exp(){return R.create(0).exp()}abs(){return R.create(0).abs()}round(e){return R.create(0).round(e)}floor(e){return R.create(0).floor(e)}ceil(e){return R.create(0).ceil(e)}convertToNumberObjectValue(){return R.create(0)}convertToBooleanObjectValue(){return L.create(!1)}};d(Ua,`_instance`,void 0);var L=class e extends ee{static create(t){return t?(this._instanceTrue=this._instanceTrue||new e(!0),this._instanceTrue):(this._instanceFalse=this._instanceFalse||new e(!1),this._instanceFalse)}constructor(e){super(e),d(this,`_value`,!1),this._value=e}getValue(){return this._value}isBoolean(){return!0}getNegative(){let e=this.getValue(),t=0;return e&&(t=1),R.create(-t)}getReciprocal(){return this.getValue()?R.create(1):E.create(p.DIV_BY_ZERO)}plus(e){return this._convertToNumber().plus(e)}minus(e){return this._convertToNumber().minus(e)}multiply(e){return this._convertToNumber().multiply(e)}divided(e){return this._convertToNumber().divided(e)}mod(e){return this._convertToNumber().mod(e)}compare(e,t){return e.isArray()?e.compare(this,Br(t)):e.isNull()?this._convertToNumber().compare(e,t):this.compareBy(e.getValue(),t)}compareBy(t,n){let r=!1;if(typeof t==`string`||typeof t==`number`)r=this._compareString(n);else if(typeof t==`boolean`){let e=R.create(t?1:0);return this._convertToNumber().compare(e,n)}return e.create(r)}_compareString(e){switch(e){case v.GREATER_THAN:case v.GREATER_THAN_OR_EQUAL:return!0;case v.EQUALS:case v.LESS_THAN:case v.LESS_THAN_OR_EQUAL:case v.NOT_EQUAL:return!1}}concatenateFront(e){return this._convertToNumber().concatenateFront(e)}concatenateBack(e){return this._convertToNumber().concatenateBack(e)}_convertToNumber(){let e=this.getValue(),t=0;return e&&(t=1),R.create(t)}pow(e){return this._convertToNumber().pow(e)}sqrt(){return this._convertToNumber().sqrt()}cbrt(){return this._convertToNumber().cbrt()}cos(){return this._convertToNumber().cos()}cosh(){return this._convertToNumber().cosh()}acos(){return this._convertToNumber().acos()}acosh(){return this._convertToNumber().acosh()}sin(){return this._convertToNumber().sin()}sinh(){return this._convertToNumber().sinh()}asin(){return this._convertToNumber().asin()}asinh(){return this._convertToNumber().asinh()}tan(){return this._convertToNumber().tan()}tanh(){return this._convertToNumber().tanh()}atan(){return this._convertToNumber().atan()}atan2(e){return this._convertToNumber().atan2(e)}atanh(){return this._convertToNumber().atanh()}log(){return this._convertToNumber().log()}log10(){return this._convertToNumber().log10()}exp(){return this._convertToNumber().exp()}abs(){return this._convertToNumber().abs()}round(e){return this._convertToNumber().round(e)}floor(e){return this._convertToNumber().floor(e)}ceil(e){return this._convertToNumber().ceil(e)}convertToNumberObjectValue(){return qa(this.getValue())}convertToBooleanObjectValue(){return this}};d(L,`_instanceTrue`,void 0),d(L,`_instanceFalse`,void 0);var R=class e extends ee{static create(t,n=``){let r=new e(t);return n&&r.setPattern(n),r}constructor(e){super(e),d(this,`_value`,0),this._value=Number(e)}getValue(){return this._value}setValue(e){this._value=e}isNumber(){return!0}getNegative(){return e.create(0).minus(this)}getReciprocal(){return e.create(1).divided(this)}plus(e){if(e.isArray())return e.plus(this);let t=e;e.isNumber()||(t=e.convertToNumberObjectValue());let n=this.plusBy(t.getValue());return n.isError(),n}equalZero(){return this._value===0}minus(e){if(e.isArray()){let t=e.getNegative();return t.isError()?t:t.plus(this)}let t=e;e.isNumber()||(t=e.convertToNumberObjectValue());let n=this.minusBy(t.getValue());return n.isError(),n}multiply(e){if(e.isArray())return e.multiply(this);let t=e;e.isNumber()||(t=e.convertToNumberObjectValue());let n=this.multiplyBy(t.getValue());return n.isError(),n}divided(e){if(e.isArray()){let t=e.getReciprocal();return t.isError()?t:t.multiply(this)}let t=e;e.isNumber()||(t=e.convertToNumberObjectValue());let n=this.dividedBy(t.getValue());return n.isError(),n}mod(t){if(t.isArray())return t.modInverse(this);let n=this.getValue(),r=t.getValue();if(t.isNull())return E.create(p.DIV_BY_ZERO);if(typeof r==`string`)return E.create(p.VALUE);if(typeof r==`number`){if(r===0)return E.create(p.DIV_BY_ZERO);if(!Number.isFinite(n)||!Number.isFinite(r)||Math.abs(r)*11259e8<=Math.abs(n))return E.create(p.NUM);let t=ja(n,r);return Number.isFinite(t)?e.create(t):E.create(p.NUM)}if(typeof r==`boolean`){let t=r?1:0;return t===0?E.create(p.DIV_BY_ZERO):e.create(ja(n,t))}return this}concatenateFront(e){return e.isArray()?e.concatenateBack(this):z.create(this.concatenate(e.getValue(),s.FRONT))}concatenateBack(e){return e.isArray()?e.concatenateFront(this):z.create(this.concatenate(e.getValue(),s.BACK))}isDateFormat(){let e=this.getPattern();return t.numfmt.isDateFormat(e)}compare(e,t){if(e.isArray())return e.compare(this,Br(t));let n=!1;return e.isDateFormat()&&this.isDateFormat()&&(n=!0),this.compareBy(e.getValue(),t,n)}plusBy(t){if(typeof t==`string`&&t.trim()===``)return E.create(p.VALUE);let n=+this.getValue(),r=+t;if(Number.isNaN(n)||Number.isNaN(r))return E.create(p.VALUE);if(!Number.isFinite(n)||!Number.isFinite(r))return E.create(p.NUM);let i=Ca(n,r);return Number.isFinite(i)?e.create(i):E.create(p.NUM)}minusBy(t){if(typeof t==`string`&&t.trim()===``)return E.create(p.VALUE);let n=+this.getValue(),r=+t;if(Number.isNaN(n)||Number.isNaN(r))return E.create(p.VALUE);if(!Number.isFinite(n)||!Number.isFinite(r))return E.create(p.NUM);let i=wa(n,r);return Number.isFinite(i)?e.create(i):E.create(p.NUM)}multiplyBy(t){if(typeof t==`string`&&t.trim()===``)return E.create(p.VALUE);let n=+this.getValue(),r=+t;if(Number.isNaN(n)||Number.isNaN(r))return E.create(p.VALUE);if(!Number.isFinite(n)||!Number.isFinite(r))return E.create(p.NUM);let i=Ta(n,r);return Number.isFinite(i)?e.create(i):E.create(p.NUM)}dividedBy(t){if(typeof t==`string`&&t.trim()===``)return E.create(p.VALUE);let n=+this.getValue(),r=+t;if(Number.isNaN(n)||Number.isNaN(r))return E.create(p.VALUE);if(!Number.isFinite(n)||!Number.isFinite(r))return E.create(p.NUM);if(r===0)return E.create(p.DIV_BY_ZERO);let i=Ea(n,r);return Number.isFinite(i)?e.create(i):E.create(p.NUM)}compareBy(e,t,n=!1){let r=this.getValue(),i=!1,a=r,o=e;return n&&(a=Math.round(r*1e8)/1e8,o=Math.round(e*1e8)/1e8),typeof o==`string`?i=this._compareString(t):typeof o==`number`?i=this._compareNumber(a,o,t):typeof o==`boolean`&&(i=this._compareBoolean(t)),L.create(i)}_compareString(e){switch(e){case v.EQUALS:case v.GREATER_THAN:case v.GREATER_THAN_OR_EQUAL:return!1;case v.LESS_THAN:case v.LESS_THAN_OR_EQUAL:case v.NOT_EQUAL:return!0}}_compareNumber(e,t,n){return!Number.isFinite(e)||!Number.isFinite(t)?this._compareInfinity(e,t,n):this._compareFiniteNumber(e,t,n)}_compareFiniteNumber(e,t,n){switch(n){case v.EQUALS:return Pa(e,t);case v.GREATER_THAN:return Fa(e,t);case v.GREATER_THAN_OR_EQUAL:return Ia(e,t);case v.LESS_THAN:return La(e,t);case v.LESS_THAN_OR_EQUAL:return Ra(e,t);case v.NOT_EQUAL:return!Pa(e,t)}}_compareBoolean(e){switch(e){case v.EQUALS:case v.GREATER_THAN:case v.GREATER_THAN_OR_EQUAL:return!1;case v.LESS_THAN:case v.LESS_THAN_OR_EQUAL:case v.NOT_EQUAL:return!0}}pow(t){if(t.isArray())return t.powInverse(this);if(this.isError())return this;let n=this.getValue(),r=t;if(t.isString()&&(r=t.convertToNumberObjectValue()),r.isError())return r;let i=+r.getValue();if(Number.isNaN(i))return E.create(p.VALUE);if(!Number.isFinite(n)||!Number.isFinite(i))return E.create(p.NUM);if(n===0)return i<0?E.create(p.DIV_BY_ZERO):i===0?E.create(p.NUM):e.create(0);let a=Ma(n,i);return Number.isFinite(a)?e.create(a):E.create(p.NUM)}sqrt(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Na(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}cbrt(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.cbrt(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}cos(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.cos(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}cosh(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.cosh(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}acos(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.acos(t);return Number.isNaN(n)?E.create(p.NUM):e.create(n)}acosh(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.acosh(t);return Number.isNaN(n)?E.create(p.NUM):e.create(n)}sin(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.sin(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}sinh(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.sinh(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}asin(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.asin(t);return Number.isNaN(n)?E.create(p.NUM):e.create(n)}asinh(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.asinh(t);return Number.isNaN(n)?E.create(p.NUM):e.create(n)}tan(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.tan(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}tanh(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.tanh(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}atan(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.atan(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}atan2(t){if(t.isArray())return t.atan2Inverse(this);let n=this.getValue(),r=t.getValue();if(typeof r==`string`)return E.create(p.VALUE);if(typeof r==`number`){if(!Number.isFinite(n)||!Number.isFinite(r))return E.create(p.NUM);if(n===0&&r===0)return E.create(p.DIV_BY_ZERO);let t=Math.atan2(n,r);return Number.isFinite(t)?e.create(t):E.create(p.NUM)}return typeof r==`boolean`?e.create(Math.atan2(n,r?1:0)):this}atanh(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.atanh(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}log(){let t=this.getValue();if(typeof t==`number`&&t<=0||!Number.isFinite(t))return E.create(p.NUM);let n=Math.log(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}log10(){let t=this.getValue();if(typeof t==`number`&&t<=0||!Number.isFinite(t))return E.create(p.NUM);let n=Math.log10(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}exp(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.exp(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}abs(){let t=this.getValue();if(!Number.isFinite(t))return E.create(p.NUM);let n=Math.abs(t);return Number.isFinite(n)?e.create(n):E.create(p.NUM)}round(t){if(t.isArray())return t.roundInverse(this);let n=this.getValue(),r=t.getValue();if(typeof r==`string`)return E.create(p.VALUE);if(typeof r==`number`){if(!Number.isFinite(n)||!Number.isFinite(r))return E.create(p.NUM);let t=n<0?-Da(Math.abs(n),r):Da(n,r);return Number.isFinite(t)?e.create(t):E.create(p.NUM)}return typeof r==`boolean`?e.create(Da(n,r?1:0)):this}floor(t){if(t.isArray())return t.floorInverse(this);let n=this.getValue(),r=t.getValue();if(typeof r==`string`)return E.create(p.VALUE);if(typeof r==`number`){if(!Number.isFinite(n)||!Number.isFinite(r))return E.create(p.NUM);let t=n<0?-Oa(Math.abs(n),r):Oa(n,r);return Number.isFinite(t)?e.create(t):E.create(p.NUM)}return typeof r==`boolean`?e.create(Oa(n,r?1:0)):this}ceil(t){if(t.isArray())return t.ceilInverse(this);let n=this.getValue(),r=t.getValue();if(typeof r==`string`)return E.create(p.VALUE);if(typeof r==`number`){if(!Number.isFinite(n)||!Number.isFinite(r))return E.create(p.NUM);let t=n<0?-ka(Math.abs(n),r):ka(n,r);return Number.isFinite(t)?e.create(t):E.create(p.NUM)}return typeof r==`boolean`?e.create(ka(n,r?1:0)):this}convertToNumberObjectValue(){return this}convertToBooleanObjectValue(){return Ga(!0)}_compareInfinity(e,t,n){let r=!1;switch(n){case v.EQUALS:r=e===t;break;case v.GREATER_THAN:r=e>t;break;case v.GREATER_THAN_OR_EQUAL:r=e>=t;break;case v.LESS_THAN:r=e<t;break;case v.LESS_THAN_OR_EQUAL:r=e<=t;break;case v.NOT_EQUAL:r=e!==t;break}return r}};let Wa=new f(1e5);var z=class e extends ee{static create(t,n){let r=Wa.get(t);if(r&&n&&this.checkCacheByOptions(r,n))return r;let i=new e(t);if(n!=null&&n.isHyperlink){var a;i._isHyperlink=n.isHyperlink,i._hyperlinkUrl=(a=n.hyperlinkUrl)==null?``:a}return n!=null&&n.isImage&&(i._isImage=n.isImage,i._imageInfo=n.imageInfo),Wa.set(t,i),i}static checkCacheByOptions(e,n){return!(e.isHyperlink()!==n.isHyperlink||e.getHyperlinkUrl()!==n.hyperlinkUrl||e.isImage()!==n.isImage||!t.Tools.diffValue(e.getImageInfo(),n.imageInfo))}constructor(e){super(e),d(this,`_value`,void 0),d(this,`_isHyperlink`,!1),d(this,`_hyperlinkUrl`,``),d(this,`_isImage`,!1),d(this,`_imageInfo`,void 0),this._value=e}getValue(){return this._value}isString(){return!0}isHyperlink(){return this._isHyperlink}getHyperlinkUrl(){return this._hyperlinkUrl}isImage(){return this._isImage}getImageInfo(){return this._imageInfo}concatenateFront(t){return t.isArray()?t.concatenateBack(this):e.create(this.concatenate(t.getValue(),s.FRONT))}concatenateBack(t){return t.isArray()?t.concatenateFront(this):e.create(this.concatenate(t.getValue(),s.BACK))}plus(e){return this.convertToNumberObjectValue().plus(e)}minus(e){return this.convertToNumberObjectValue().minus(e)}multiply(e){return this.convertToNumberObjectValue().multiply(e)}divided(e){return this.convertToNumberObjectValue().divided(e)}compare(e,t,n){return e.isArray()?e.compare(this,Br(t),n):this.compareBy(e.getValue(),t,n)}compareBy(e,t,n=!1){let r=this.getValue(),i=!1;if(typeof e==`string`){let a=e;if(n||(r=r.toLocaleLowerCase(),a=a.toLocaleLowerCase()),xr(a))return this._checkWildcard(a,t);i=this._compareString(r,a,t)}else typeof e==`number`?i=this._compareNumber(t):typeof e==`boolean`&&(i=this._compareBoolean(t));return L.create(i)}_compareString(e,t,n){switch(n){case v.EQUALS:return e===t;case v.GREATER_THAN:return e>t;case v.GREATER_THAN_OR_EQUAL:return e>=t;case v.LESS_THAN:return e<t;case v.LESS_THAN_OR_EQUAL:return e<=t;case v.NOT_EQUAL:return e!==t}}_compareNumber(e){switch(e){case v.NOT_EQUAL:case v.GREATER_THAN:case v.GREATER_THAN_OR_EQUAL:return!0;case v.EQUALS:case v.LESS_THAN:case v.LESS_THAN_OR_EQUAL:return!1}}_compareBoolean(e){switch(e){case v.EQUALS:case v.GREATER_THAN:case v.GREATER_THAN_OR_EQUAL:return!1;case v.LESS_THAN:case v.LESS_THAN_OR_EQUAL:case v.NOT_EQUAL:return!0}}convertToNumberObjectValue(){let e=this.getValue(),n=(0,t.getNumfmtParseValueFilter)(e);return n&&n.z?qa(n.v,n.z):qa(e)}convertToBooleanObjectValue(){return L.create(!0)}_checkWildcard(e,t){let n=wr(this.getValue().toLocaleLowerCase(),e,t);return L.create(n)}};function Ga(e){if(typeof e==`boolean`)return L.create(e);let t=!1;if(typeof e==`string`){let n=e.toLocaleUpperCase();n===i.TRUE?t=!0:n===i.FALSE&&(t=!1)}else t=e===1;return L.create(t)}function Ka(e){let t=e.toString();return t.charAt(0)===`"`&&t.charAt(t.length-1)===`"`&&(t=t.slice(1,-1),t=t.replace(/""/g,`"`)),z.create(t)}function qa(e,n=``){if(typeof e==`boolean`){let t=0;return e&&(t=1),R.create(t,n)}else if(typeof e==`number`)return Number.isFinite(e)?R.create(e,n):E.create(p.NUM);else if((0,t.isRealNum)(e))return R.create(Number(e),n);return E.create(p.VALUE)}var Ja=function(e){return e[e.MINUS=0]=`MINUS`,e[e.PLUS=1]=`PLUS`,e[e.MULTIPLY=2]=`MULTIPLY`,e[e.DIVIDED=3]=`DIVIDED`,e[e.MOD=4]=`MOD`,e[e.COMPARE=5]=`COMPARE`,e[e.CONCATENATE_FRONT=6]=`CONCATENATE_FRONT`,e[e.CONCATENATE_BACK=7]=`CONCATENATE_BACK`,e[e.POW=8]=`POW`,e[e.ROUND=9]=`ROUND`,e[e.FLOOR=10]=`FLOOR`,e[e.CEIL=11]=`CEIL`,e[e.ATAN2=12]=`ATAN2`,e}(Ja||{}),Ya=function(e){return e[e.PRODUCT=0]=`PRODUCT`,e[e.ROW=1]=`ROW`,e[e.COLUMN=2]=`COLUMN`,e[e.SINGLE=3]=`SINGLE`,e}(Ya||{});function Xa(e){return``}function Za(e=[],t=!1){let n=[];for(let r=0;r<e.length;r++){let i=e[r];n[r]==null&&(n[r]=[]);for(let e=0;e<i.length;e++){let a=i[e];n[r][e]=$a.create(a,t)}}return n}function Qa(e=[]){let t=[];for(let n=0;n<e.length;n++){let r=e[n];t[n]==null&&(t[n]=[]);for(let e=0;e<r.length;e++){let i=r[e];i==null?t[n][e]=null:i.isError()?t[n][e]=i.getErrorType():t[n][e]=i.getValue()}}return t}var B=class e extends ee{static create(t){return new e(t)}static createByArray(t){return new e({calculateValueList:Za(t),rowCount:t.length,columnCount:t[0].length||0,unitId:``,sheetId:``,row:-1,column:-1})}constructor(e){super(typeof e==`string`?e:Xa(e)),d(this,`_values`,[]),d(this,`_rowCount`,-1),d(this,`_columnCount`,-1),d(this,`_unitId`,``),d(this,`_sheetId`,``),d(this,`_currentRow`,-1),d(this,`_currentColumn`,-1),d(this,`_sliceCache`,new Map),d(this,`_flattenCache`,void 0),d(this,`_defaultValue`,null),d(this,`_flattenPosition`,void 0),this._values=this._formatValue(e)}dispose(){this._values=[],this._defaultValue=null,this._flattenPosition=null,this._clearCache()}clone(){return this.map(e=>e)}getRowCount(){return this._rowCount}setRowCount(e){this._rowCount=e}getColumnCount(){return this._columnCount}setColumnCount(e){this._columnCount=e}setCurrent(e,t){this._currentRow=e,this._currentColumn=t}setUnitId(e){this._unitId=e}getUnitId(){return this._unitId}setSheetId(e){this._sheetId=e}getSheetId(){return this._sheetId}getCurrentRow(){return this._currentRow}getCurrentColumn(){return this._currentColumn}getArrayValue(){return this._values}setArrayValue(e){this._clearCache(),this._values=e}isArray(){return!0}setDefaultValue(e){this._defaultValue=e}get(e,t){var n;return((n=this._values[e])==null?void 0:n[t])||this._defaultValue}getRealValue(e,t){let n=this._values[e];if(n==null)return null;let r=n[t];return r==null?null:r}getValueOrDefault(e,t){return this.get(e,t)||this._defaultValue}set(e,t,n){if(e>=this._rowCount||t>=this._columnCount){console.error(`Exceeding array bounds.`);return}this._clearCache(),this._values[e][t]=n}getRangePosition(){let e=this.getRowCount(),t=this.getColumnCount();return{startRow:0,endRow:e-1,startColumn:0,endColumn:t-1}}iterator(e){let{startRow:t,endRow:n,startColumn:r,endColumn:i}=this.getRangePosition(),a=this.getArrayValue();for(let s=t;s<=n;s++)for(let t=r;t<=i;t++){var o;if(e(((o=a[s])==null?void 0:o[t])||this._defaultValue,s,t)===!1)return}}iteratorReverse(e){let{startRow:t,endRow:n,startColumn:r,endColumn:i}=this.getRangePosition(),a=this.getArrayValue();for(let s=n;s>=t;s--)for(let t=i;t>=r;t--){var o;if(e(((o=a[s])==null?void 0:o[t])||this._defaultValue,s,t)===!1)return}}getLastTruePosition(){let e;return this.iteratorReverse((t,n,r)=>{if(t!=null&&t.isBoolean()&&t.getValue()===!0)return e={row:n,column:r},!1}),e}getFirstTruePosition(){let e;return this.iterator((t,n,r)=>{if(t!=null&&t.isBoolean()&&t.getValue()===!0)return e={row:n,column:r},!1}),e}getFirstCell(){let{startRow:e,startColumn:t}=this.getRangePosition();return this.get(e,t)||this._defaultValue||Ua.create()}getLastCell(){let{endRow:e,endColumn:t}=this.getRangePosition();return this.get(e,t)||this._defaultValue||Ua.create()}pick(e){let t=this.pickRaw(e);return this._createNewArray(t,1,t[0].length)}pickRaw(e){let t=e.getRowCount(),n=e.getColumnCount();if(t!==this._rowCount||n!==this._columnCount)return[[Ua.create()]];let r=[];r[0]=[];for(let i=0;i<t;i++)for(let t=0;t<n;t++){let n=e.get(i,t);if(!(n==null||n.isError())&&n.getValue()===!0){let e=this.get(i,t);r[0].push(e)}}return r}flatten(){if(this._flattenCache!=null)return this._flattenCache;let e=[];e[0]=[];for(let t=0;t<this._rowCount;t++)for(let n=0;n<this._columnCount;n++){let r=this.get(t,n);e[0].push(r)}let t=this._createNewArray(e,1,e[0].length);return t.setDefaultValue(this._defaultValue),this._flattenCache=t,t}flattenPosition(){if(this._flattenPosition!=null)return this._flattenPosition;let e=[],t=[],n=[],r=[],i=0;for(let a=0;a<this._rowCount;a++)for(let o=0;o<this._columnCount;o++){let s=this.get(a,o);if(s==null||s.isError()||s.isNull()){i++;continue}s.isString()?(e.push(s),n.push(i++)):(t.push(s),r.push(i++))}let a={stringArray:e,numberArray:t,stringPosition:n,numberPosition:r};return this._flattenPosition=a,a}slice(e,t){let n=0,r=this._rowCount,i=1,a=0,o=this._columnCount,s=1;if(e!=null&&(n=e[0]||0,r=e[1]||this._rowCount,i=e[2]||1),t!=null&&(a=t[0]||0,o=t[1]||this._columnCount,s=t[2]||1),n>=this._rowCount||a>=this._columnCount)return;let c=`${n}_${r}_${i}_${a}_${o}_${s}`,l=this._sliceCache.get(c);if(l!=null)return l;let u=[],d=this._values,f=0,p=0;for(let e=n;e<r;e+=i){p=0,u[f]==null&&(u[f]=[]);for(let t=a;t<o;t+=s){if(!d[e])return;let n=d[e][t]||this._defaultValue;n==null&&(n=Ua.create()),u[f][p]=n,p++}f++}if(u.length===0||u[0].length===0)return;let m=i>1?-1:n+this._currentRow,h=s>1?-1:a+this._currentColumn,g=this._createNewArray(u,u.length,u[0].length,m,h);return g.setDefaultValue(this._defaultValue),this._sliceCache.set(c,g),g}sortByRow(e){let t=this._transposeArray(this._values);t.sort(this._sort(e)),this._clearCache(),this._values=this._transposeArray(t)}sortByColumn(e){this._clearCache(),this._values.sort(this._sort(e))}transpose(){let e=this._transposeArray(this._values),t=this._rowCount,n=this._columnCount,r=this._createNewArray(e,n,t);return r.setDefaultValue(this._defaultValue),r}orderSearch(e,t=yr.MIN,n=!1,r=!1){let i,a,o,s,c=(n,c,l)=>{if(n==null||n.isNull())return!0;let u;if(u=r===!0?n.compare(e,v.EQUALS):n.isEqual(e),(u==null?void 0:u.getValue())===!0)return i=n,o={row:c,column:l},!1;t===yr.MAX?n.isGreaterThan(e).getValue()===!0&&(a==null||n.minus(e).abs().isLessThanOrEqual(a.minus(e).abs()).getValue()===!0)&&(a=n,s={row:c,column:l}):t===yr.MIN&&n.isLessThan(e).getValue()===!0&&(a==null||n.minus(e).abs().isLessThanOrEqual(a.minus(e).abs()).getValue()===!0)&&(a=n,s={row:c,column:l})};if(n?this.iteratorReverse((e,t,n)=>c(e,t,n)):this.iterator((e,t,n)=>c(e,t,n)),i!=null)return o;if(a!=null)return s}binarySearch(e,t=vr.MIN,n=yr.MIN){if(e.isError())return;let{stringArray:r,stringPosition:i,numberArray:a,numberPosition:o}=this.flattenPosition();return e.isString()?this._binarySearch(e,r,i,t,n):this._binarySearch(e,a,o,t,n)}_binarySearch(e,t,n,r=vr.MIN,i=yr.MIN){let a=br(),o=Number(e.getValue()),s=!Number.isNaN(o),c=0,l=t.length-1,u=-1,d=-1,f=-1;for(;c<=l;){let n=Math.floor((c+l)/2),i=t[n],p;if(i.isNull())p=r===vr.MIN?1:-1;else{let t=i.getValue();if(s){let e=Number(t);p=Number.isNaN(e)?1:Math.sign(e-o)}else p=a(t.toString().toLocaleLowerCase(),e.getValue().toString().toLocaleLowerCase())}if(r===vr.MAX&&(p=-p),p===0){u=n;break}p<0?(d=n,c=n+1):(f=n,l=n-1)}if(i===yr.NORMAL)return u===-1?void 0:n[u];if(i===yr.MIN)return u===-1?r===vr.MIN?n[d]:n[f]:n[u];if(i===yr.MAX)return u===-1?r===vr.MIN?n[f]:n[d]:n[u]}sum(){let e=R.create(0);return this.iterator(t=>{if(t==null||t.isString()||t.isBoolean()||t.isNull())return!0;if(t.isError())return e=t,!1;e=e.plus(t)}),e}max(){let e=R.create(-1/0);return this.iterator(t=>{if(t==null)return!0;if(t.isError())return e=t,!1;if(t.isString()||t.isNull()||t.isBoolean())return!0;e.isLessThan(t).getValue()&&(e=t)}),e}min(){let e=R.create(1/0);return this.iterator(t=>{if(t==null)return!0;if(t.isError())return e=t,!1;if(t.isString()||t.isNull()||t.isBoolean())return!0;e.isGreaterThan(t).getValue()&&(e=t)}),e}count(){let e=R.create(0);return this.iterator(t=>{if(t==null||t.isError()||t.isString()||t.isNull()||t.isBoolean())return!0;e=e.plusBy(1)}),e}countA(){let e=R.create(0);return this.iterator(t=>{if(t==null||t.isNull())return!0;e=e.plusBy(1)}),e}countBlank(){let e=R.create(0);return this.iterator(t=>{(t==null||t.isNull()||t.getValue()===``)&&(e=e.plusBy(1))}),e}getNegative(){return e.create(`{0}`).minus(this)}getReciprocal(){return e.create(`{1}`).divided(this)}plus(e){return this._batchOperator(e,Ja.PLUS)}minus(e){return this._batchOperator(e,Ja.MINUS)}multiply(e){return this._batchOperator(e,Ja.MULTIPLY)}divided(e){return this._batchOperator(e,Ja.DIVIDED)}mod(e){return this._batchOperator(e,Ja.MOD)}modInverse(e){return this.map(t=>t.isError()?t:e.mod(t))}compare(e,t,n){return this._batchOperator(e,Ja.COMPARE,t,n)}concatenateFront(e){return this._batchOperator(e,Ja.CONCATENATE_FRONT)}concatenateBack(e){return this._batchOperator(e,Ja.CONCATENATE_BACK)}map(e){return this.mapValue((t,n,r)=>t==null?Ua.create():t.isError()?t:e(t,n,r))}mapValue(e){let t=this._rowCount,n=this._columnCount,r=[];for(let a=0;a<t;a++){let t=[];for(let r=0;r<n;r++){var i;let n=(i=this._values)==null?void 0:i[a];if(n==null)t[r]=E.create(p.VALUE);else{let i=n[r]||this._defaultValue;i?t[r]=e(i,a,r):t[r]=Ua.create()}}r.push(t)}return this._createNewArray(r,t,n)}pow(e){return this._batchOperator(e,Ja.POW)}powInverse(e){return this.map(t=>t.isError()?t:e.pow(t))}sqrt(){return this.map(e=>e.isError()?e:e.sqrt())}cbrt(){return this.map(e=>e.isError()?e:e.cbrt())}cos(){return this.map(e=>e.isError()?e:e.cos())}cosh(){return this.map(e=>e.isError()?e:e.cosh())}acos(){return this.map(e=>e.isError()?e:e.acos())}acosh(){return this.map(e=>e.isError()?e:e.acosh())}sin(){return this.map(e=>e.isError()?e:e.sin())}sinh(){return this.map(e=>e.isError()?e:e.sinh())}asin(){return this.map(e=>e.isError()?e:e.asin())}asinh(){return this.map(e=>e.isError()?e:e.asinh())}tan(){return this.map(e=>e.isError()?e:e.tan())}tanh(){return this.map(e=>e.isError()?e:e.tanh())}atan(){return this.map(e=>e.isError()?e:e.atan())}atanh(){return this.map(e=>e.isError()?e:e.atanh())}atan2(e){return this._batchOperator(e,Ja.ATAN2)}atan2Inverse(e){return this.map(t=>t.isError()?t:e.atan2(t))}mean(e=0){let t=this.sum(),n=this.count();return t.divided(e===0?n:n.minusBy(1))}median(){let e=this.flattenPosition().numberArray,t=this._createNewArray([e],1,e.length),n=t.getColumnCount();if(n<=1)return t.get(0,0)||Ua.create();if(t.sortByRow(0),n%2==0){let e=t.get(0,n/2)||Ua.create(),r=t.get(0,n/2-1)||Ua.create();return e.plus(r).divided(R.create(2))}return t.get(0,(n-1)/2)||Ua.create()}var(t=0){let n=this.mean(),r=[[]];this.iterator(e=>{if(e==null||e.isError()||e.isString()||e.isBoolean()||e.isNull())return;let t=e.minus(n).pow(R.create(2));t.isError()||r[0].push(t)});let{_unitId:i,_sheetId:a,_currentRow:o,_currentColumn:s}=this;return e.create({calculateValueList:r,rowCount:1,columnCount:r[0].length,unitId:i,sheetId:a,row:o,column:s}).mean(t)}std(e=0){let t=this.var(e);return t.isError()?t:t.sqrt()}log(){return this.map(e=>e.isError()?e:e.log())}log10(){return this.map(e=>e.isError()?e:e.log10())}exp(){return this.map(e=>e.isError()?e:e.exp())}abs(){return this.map(e=>e.isError()?e:e.abs())}round(e){return this._batchOperator(e,Ja.ROUND)}roundInverse(e){return this.map(t=>t.isError()?t:e.round(t))}floor(e){return this._batchOperator(e,Ja.FLOOR)}floorInverse(e){return this.map(t=>t.isError()?t:e.floor(t))}ceil(e){return this._batchOperator(e,Ja.CEIL)}ceilInverse(e){return this.map(t=>t.isError()?t:e.ceil(t))}toValue(){return Qa(this._values)}_clearCache(){this._flattenCache=null,this._sliceCache.clear()}_sort(e){let t=br();return(n,r)=>{let i=n[e],a=r[e];return i==null?1:a==null?-1:i.isError()&&i.isError()?0:i.isError()?1:a.isError()?-1:t(i.getValue(),a.getValue())}}_transposeArray(e){let t=e.length,n=e[0].length,r=[];for(let i=0;i<n;i++){r[i]=[];for(let n=0;n<t;n++)r[i][n]=e[n][i]}return r}_batchOperator(e,t,n,r){let i=[],a=this._rowCount,o=this._columnCount;if(e.isArray()){let s=e.getRowCount(),c=e.getColumnCount();if(a=Math.max(s,a),o=Math.max(c,o),s===1&&c===1){let t=e.getFirstCell();for(let e=0;e<o;e++)i.push(t)}else if(s===1&&this._columnCount>1){let t=e.getArrayValue();for(let e=0;e<o;e++)t[0]&&t[0][e]?i.push(t[0][e]):i.push(Ua.create())}else return this._batchOperatorArray(e,t,n,r)}else for(let t=0;t<o;t++)i.push(e);let s=[];for(let e=0;e<o;e++){let a=i[e];this._batchOperatorValue(a,e,s,t,n,r)}let c=this._createNewArray(s,a,o);return c.setDefaultValue(L.create(!1)),c}_batchOperatorValue(e,t,n,r,i,a){let o=this._rowCount,s=this.getUnitId(),c=this.getSheetId(),l=this.getCurrentRow(),u=this.getCurrentColumn();if(r===Ja.COMPARE){let{rowsInCache:d,rowsNotInCache:f}=cr.canUseCache(s,c,t+u,l,l+o-1);if(d.length>0){if(i===v.EQUALS&&!(e.isString()&&xr(e.getValue()))){let r=cr.getCellPositions(s,c,t+u,e.isNull()?null:e.getValue(),d);r!=null&&r.forEach(e=>{if(e<l||e>l+o-1)return;let r=e-l;n[r]==null&&(n[r]=[]),n[r][t]=L.create(!0)})}else{let r=cr.getCellValuePositions(s,c,t+u);r!=null&&r.forEach((r,s)=>{let c=Ua.create();m.has(s)?c=E.create(s):typeof s==`string`?c=z.create(s):typeof s==`number`?c=R.create(s):typeof s==`boolean`&&(c=L.create(s));let u;u=c.isError()?c:e.isError()?e:c.compare(e,i,a),r.forEach(e=>{e>=l&&e<=l+o-1&&(n[e-l]==null&&(n[e-l]=[]),n[e-l][t]=u)})})}if(f.length>0)for(let o of f){let[d,f]=o;for(let o=d;o<=f;o++)this.__batchOperatorRowValue(e,t,n,r,o-l,s,c,l,u,i,a);cr.setContinueBuildingCache(s,c,t+u,d,f)}return}}for(let d=0;d<o;d++)this.__batchOperatorRowValue(e,t,n,r,d,s,c,l,u,i,a);cr.setContinueBuildingCache(s,c,t+u,l,l+o-1)}__batchOperatorRowValue(e,t,n,r,i,a,o,s,c,l,u){let d=this.getValueOrDefault(i,t);if(n[i]==null&&(n[i]=[]),d&&e)if(d.isError())n[i][t]=d;else if(e.isError())n[i][t]=e;else switch(r){case Ja.PLUS:n[i][t]=d.plus(e);break;case Ja.MINUS:n[i][t]=d.minus(e);break;case Ja.MULTIPLY:n[i][t]=d.multiply(e);break;case Ja.DIVIDED:n[i][t]=d.divided(e);break;case Ja.MOD:n[i][t]=d.mod(e);break;case Ja.COMPARE:l?n[i][t]=d.compare(e,l,u):n[i][t]=E.create(p.VALUE);break;case Ja.CONCATENATE_FRONT:n[i][t]=d.concatenateFront(e);break;case Ja.CONCATENATE_BACK:n[i][t]=d.concatenateBack(e);break;case Ja.POW:n[i][t]=d.pow(e);break;case Ja.ROUND:n[i][t]=d.round(e);break;case Ja.FLOOR:n[i][t]=d.floor(e);break;case Ja.ATAN2:n[i][t]=d.atan2(e);break;case Ja.CEIL:n[i][t]=d.ceil(e);break}else n[i][t]=E.create(p.NA);!d||d!=null&&d.isNull()?cr.set(a,o,t+c,sr,i+s):cr.set(a,o,t+c,d.getValue(),i+s)}_batchOperatorArray(e,t,n,r){let i=e.getRowCount(),a=e.getColumnCount();i<this._rowCount&&(i=this._rowCount),a<this._columnCount&&(a=this._columnCount);let o=[],s=this._checkArrayCalculateType(this),c=this._checkArrayCalculateType(e);for(let l=0;l<i;l++){let i=[];for(let o=0;o<a;o++){let a;a=s===Ya.SINGLE?this.getValueOrDefault(0,0):s===Ya.ROW?this.getValueOrDefault(0,o):s===Ya.COLUMN?this.getValueOrDefault(l,0):this.getValueOrDefault(l,o);let u;if(u=c===Ya.SINGLE?e.getValueOrDefault(0,0):c===Ya.ROW?e.getValueOrDefault(0,o):c===Ya.COLUMN?e.getValueOrDefault(l,0):e.getValueOrDefault(l,o),a&&u)if(a.isError())i[o]=a;else if(u.isError())i[o]=u;else switch(t){case Ja.PLUS:i[o]=a.plus(u);break;case Ja.MINUS:i[o]=a.minus(u);break;case Ja.MULTIPLY:i[o]=a.multiply(u);break;case Ja.DIVIDED:i[o]=a.divided(u);break;case Ja.MOD:i[o]=a.mod(u);break;case Ja.COMPARE:n?i[o]=a.compare(u,n,r):i[o]=E.create(p.VALUE);break;case Ja.CONCATENATE_FRONT:i[o]=a.concatenateFront(u);break;case Ja.CONCATENATE_BACK:i[o]=a.concatenateBack(u);break;case Ja.POW:i[o]=a.pow(u);break;case Ja.ROUND:i[o]=a.round(u);break;case Ja.ATAN2:i[o]=a.atan2(u);break;case Ja.FLOOR:i[o]=a.floor(u);break;case Ja.CEIL:i[o]=a.ceil(u);break}else i[o]=E.create(p.NA)}o.push(i)}return this._createNewArray(o,i,a)}_checkArrayCalculateType(e){return e.getRowCount()===1&&e.getColumnCount()===1?Ya.SINGLE:e.getRowCount()===1?Ya.ROW:e.getColumnCount()===1?Ya.COLUMN:Ya.PRODUCT}_formatValue(e){if(typeof e!=`string`)return e=e,this._rowCount=e.rowCount,this._columnCount=e.columnCount,this._unitId=e.unitId,this._sheetId=e.sheetId,this._currentRow=e.row,this._currentColumn=e.column,e.calculateValueList;e=e.slice(1,-1);let t=e.split(`;`),n=t.length,r=[],i=0;for(let e=0;e<n;e++){let n=t[e].split(`,`),a=n.length;i<a&&(i=a);let o=[];for(let e=0;e<a;e++){let t=n[e].trim();o.push($a.create(t))}r.push(o)}return this._rowCount=n,this._columnCount=i,r}_createNewArray(t,n,r,i=-1,a=-1){(this._currentColumn===-1||this._currentRow===-1)&&(i=-1,a=-1);let o={calculateValueList:t,rowCount:n,columnCount:r,unitId:this.getUnitId(),sheetId:this.getSheetId(),row:i,column:a};return e.create(o)}},$a=class{static create(e,n=!1){if(e==null)return Ua.create();if(typeof e==`boolean`)return L.create(e);if(typeof e==`string`){let r=e.toLocaleUpperCase().trim();if(m.has(r))return E.create(r);if(r===i.TRUE||r===i.FALSE)return Ga(e);if((0,t.isRealNum)(e)&&Number(e).toString()===e.trim())return R.create(Number(e));if(!n){let{isNumberPattern:t,value:n,pattern:r}=Lr(e);if(t)return R.create(n,r)}let a=e.replace(/\n/g,``).replace(/\r/g,``);return!eo(a)&&Ot(a)?B.create(a):Ka(e)}return typeof e==`number`?qa(e):E.create(p.VALUE)}};function eo(e){let t=e.trim();return t.startsWith(`"`)&&t.endsWith(`"`)}let to=new f(1e4);var no=class extends g{constructor(e){super(),this._token=e,d(this,`_forcedSheetId`,``),d(this,`_forcedSheetName`,``),d(this,`_defaultSheetId`,``),d(this,`_rangeData`,{startColumn:-1,startRow:-1,endRow:-1,endColumn:-1}),d(this,`_unitData`,{}),d(this,`_unitStylesData`,{}),d(this,`_filteredOutRows`,[]),d(this,`_defaultUnitId`,``),d(this,`_forcedUnitId`,``),d(this,`_runtimeData`,{}),d(this,`_arrayFormulaCellData`,{}),d(this,`_arrayFormulaRange`,{}),d(this,`_runtimeArrayFormulaCellData`,{}),d(this,`_runtimeArrayFormulaRange`,{}),d(this,`_runtimeFeatureCellData`,{}),d(this,`_refOffsetX`,0),d(this,`_refOffsetY`,0),d(this,`_currentRow`,void 0),d(this,`_currentColumn`,void 0)}dispose(){this._unitData={},this._unitStylesData={},this._runtimeData={}}getToken(){return this._token}setToken(e){this._token=e}isExceedRange(){let{startRow:e,endRow:t,startColumn:n,endColumn:r}=this.getRangePosition();return e<0||n<0||t>=this.getActiveSheetRowCount()||r>=this.getActiveSheetColumnCount()}setRefOffset(e=0,t=0){this._refOffsetX=e,this._refOffsetY=t}getRefOffset(){return{x:this._refOffsetX,y:this._refOffsetY}}getRangePosition(){let{x:e,y:n}=this.getRefOffset(),r=(0,t.moveRangeByOffset)(this.getRangeData(),e,n);return Number.isNaN(r.startRow)&&(r.startRow=0),Number.isNaN(r.startColumn)&&(r.startColumn=0),Number.isNaN(r.endRow)&&(r.endRow=this.getActiveSheetRowCount()-1),Number.isNaN(r.endColumn)&&(r.endColumn=this.getActiveSheetColumnCount()-1),r}isReferenceObject(){return!0}iterator(e){let{startRow:t,endRow:n,startColumn:r,endColumn:i}=this.getRangePosition();if(this._checkIfWorksheetMiss())return e(E.create(p.VALUE),t,r);let a=this._forcedUnitId||this._defaultUnitId,o=this._forcedSheetId||this._defaultSheetId;for(let s=t;s<=n;s++)for(let n=r;n<=i;n++){if(s<0||n<0)return e(E.create(p.REF),s,n);let i=this.getCellData(s,n),c=!1;if(mr(i)){c=e(null,s,n);continue}let l=this.getCellValueObject(i);if(s===t&&n===r){let e=this.getCellPattern(a,o,s,n);if(e&&l.isNumber()){let t=Number(l.getValue());l=R.create(t,e)}}if(c=e(l,s,n),c===!1)return}}getFirstCell(){if(this._checkIfWorksheetMiss())return E.create(p.VALUE);let{startRow:e,startColumn:t}=this.getRangePosition(),n=this.getCellData(e,t);if(!n)return R.create(0);let r=this.getCellValueObject(n),i=this._forcedUnitId||this._defaultUnitId,a=this._forcedSheetId||this._defaultSheetId,o=this.getCellPattern(i,a,e,t);if(o&&r.isNumber()){let e=Number(r.getValue());r=R.create(e,o)}return r}getRangeData(){return this._rangeData}setRangeData(e){this._rangeData=e}getUnitId(){return this._forcedUnitId&&this._forcedUnitId.length>0?this._forcedUnitId:this._defaultUnitId}getSheetId(){return this._forcedSheetId&&this._forcedSheetId.length>0?this._forcedSheetId:this._defaultSheetId}setForcedUnitIdDirect(e){e.length>0&&(this._forcedUnitId=e)}getForcedUnitId(){return this._forcedUnitId}setForcedSheetId(e){var t;this._forcedSheetId=(t=e[this.getUnitId()])==null?void 0:t[this._forcedSheetName]}setForcedSheetIdDirect(e){this._forcedSheetId=e}getForcedSheetId(){return this._forcedSheetId}setForcedSheetName(e){e.length>0&&(this._forcedSheetName=e)}getForcedSheetName(){return this._forcedSheetName}setDefaultSheetId(e){this._defaultSheetId=e}getDefaultSheetId(){return this._defaultSheetId}setDefaultUnitId(e){this._defaultUnitId=e}getDefaultUnitId(){return this._defaultUnitId}getUnitData(){return this._unitData}setUnitData(e){this._unitData=e}getUnitStylesData(){return this._unitStylesData}setUnitStylesData(e){this._unitStylesData=e}getFilteredOutRows(){return this._filteredOutRows}setFilteredOutRows(e){this._filteredOutRows=e}getRuntimeData(){return this._runtimeData}setRuntimeData(e){this._runtimeData=e}getArrayFormulaCellData(){return this._arrayFormulaCellData}setArrayFormulaCellData(e){this._arrayFormulaCellData=e}getArrayFormulaRange(){return this._arrayFormulaRange}setArrayFormulaRange(e){this._arrayFormulaRange=e}getRuntimeArrayFormulaCellData(){return this._runtimeArrayFormulaCellData}setRuntimeArrayFormulaCellData(e){this._runtimeArrayFormulaCellData=e}getRuntimeArrayFormulaRange(){return this._runtimeArrayFormulaRange}setRuntimeArrayFormulaRange(e){this._runtimeArrayFormulaRange=e}getRuntimeFeatureCellData(){return this._runtimeFeatureCellData}setRuntimeFeatureCellData(e){this._runtimeFeatureCellData=e}getActiveSheetRowCount(){var e;return((e=this.getCurrentActiveSheetData())==null?void 0:e.rowCount)||0}getActiveSheetColumnCount(){var e;return((e=this.getCurrentActiveSheetData())==null?void 0:e.columnCount)||0}getRowCount(){let e=this.getRangeData();return e.endRow-e.startRow+1}getColumnCount(){let e=this.getRangeData();return e.endColumn-e.startColumn+1}getRowData(){var e;return((e=this.getCurrentActiveSheetData())==null?void 0:e.rowData)||{}}getColumnData(){var e;return((e=this.getCurrentActiveSheetData())==null?void 0:e.columnData)||{}}isCell(){return!1}isColumn(){return!1}isRow(){return!1}isRange(){return!1}isTable(){return!1}isCurrentRowForRange(){return!1}isCurrentColumnForRange(){return!1}isMultiArea(){return!1}unionBy(e){return E.create(p.REF)}unionRange(e,t){return{startRow:-1,startColumn:-1,endRow:-1,endColumn:-1}}getCellValueObject(e){let n=hr(e);if(m.has(n))return E.create(n);if(e.t===t.CellValueType.NUMBER){let r=this._getPatternByCell(e);return(0,t.isTextFormat)(r)?z.create(n.toString()):qa(n,r)}return e.t===t.CellValueType.STRING||e.t===t.CellValueType.FORCE_STRING?z.create(n.toString()):e.t===t.CellValueType.BOOLEAN?Ga(n):$a.create(n)}_getPatternByCell(e){var t;let n=this._unitStylesData[this.getUnitId()];if(!n)return``;let r=n.getStyleByCell(e);return(r==null||(t=r.n)==null?void 0:t.pattern)||``}getCellByRow(e){return this.getCellByPosition(e)}getCellByColumn(e){return this.getCellByPosition(void 0,e)}getCurrentActiveSheetData(){var e;return(e=this._unitData[this.getUnitId()])==null?void 0:e[this.getSheetId()]}getCurrentStylesData(){return this._unitStylesData[this.getUnitId()]}getCurrentRuntimeSheetData(){var e;return(e=this._runtimeData)==null||(e=e[this.getUnitId()])==null?void 0:e[this.getSheetId()]}getCurrentActiveArrayFormulaCellData(){var e;return(e=this._arrayFormulaCellData)==null||(e=e[this.getUnitId()])==null?void 0:e[this.getSheetId()]}getCurrentRuntimeActiveArrayFormulaCellData(){var e;return(e=this._runtimeArrayFormulaCellData)==null||(e=e[this.getUnitId()])==null?void 0:e[this.getSheetId()]}getCurrentActiveArrayFormulaRange(){var e;return(e=this._arrayFormulaRange)==null||(e=e[this.getUnitId()])==null?void 0:e[this.getSheetId()]}getCurrentRuntimeActiveArrayFormulaRange(){var e;return(e=this._runtimeArrayFormulaRange)==null||(e=e[this.getUnitId()])==null?void 0:e[this.getSheetId()]}getCellData(e,n){let r=this.getCurrentActiveSheetData(),i=this.getCurrentRuntimeSheetData(),a=this.getCurrentActiveArrayFormulaCellData(),o=this.getCurrentRuntimeActiveArrayFormulaCellData(),s=new t.ObjectMatrix(this.getCurrentActiveArrayFormulaRange()),c=new t.ObjectMatrix(this.getCurrentRuntimeActiveArrayFormulaRange()),l=(i==null?void 0:i.getValue(e,n))||(o==null?void 0:o.getValue(e,n))||this.getRuntimeFeatureCellValue(e,n);if(l)return l;if(l=a==null?void 0:a.getValue(e,n),l){let t=!1;return s.forValue((r,i,a)=>{if(e>=a.startRow&&e<=a.endRow&&n>=a.startColumn&&n<=a.endColumn&&c.getValue(r,i))return t=!0,!1}),t?null:l}return r==null?void 0:r.cellData.getValue(e,n)}getRuntimeFeatureCellValue(e,t){return _r(e,t,this.getSheetId(),this.getUnitId(),this._runtimeFeatureCellData)}getCellByPosition(e,t){let n=e,r=t,i=this.getRangeData();n||(n=i.startRow),r||(r=i.startColumn);let a=this.getCellData(n,r);return a?this.getCellValueObject(a):E.create(p.VALUE)}setCurrentRowAndColumn(e,t){this._currentRow=e,this._currentColumn=t}getCurrentRow(){return this._currentRow}getCurrentColumn(){return this._currentColumn}getCellPattern(e,t,n,r){var i,a;let o=this._unitStylesData[e];if(!o)return``;let s=(i=this._unitData[e])==null||(i=i[t])==null||(i=i.cellData)==null?void 0:i.getValue(n,r);if(!s)return``;let c=o.getStyleByCell(s);return(c==null||(a=c.n)==null?void 0:a.pattern)||``}toArrayValueObject(e=!0){var t;let{startRow:n,endRow:r,startColumn:i,endColumn:a}=this.getRangePosition(),o=`${this.getUnitId()}_${this.getSheetId()}_${n}_${r}_${i}_${a}`,s=to.get(o);if(s&&e)return s;let c=r-n+1,l=a-i+1;if(c<0||l<0)return this._getBlankArrayValueObject();let u=Array(c);this.iterator((e,t,r)=>{let a=t-n,o=r-i;u[a]||(u[a]=Array(l)),e==null&&(e=Ua.create()),u[a][o]=e});let d={calculateValueList:u,rowCount:u.length,columnCount:((t=u[0])==null?void 0:t.length)||0,unitId:this.getUnitId(),sheetId:this.getSheetId(),row:n,column:i},f=B.create(d);return e&&to.set(o,f),f}toUnitRange(){return{range:this.getRangePosition(),sheetId:this.getSheetId(),unitId:this.getUnitId()}}_checkIfWorksheetMiss(){return(this._forcedSheetId==null||this._forcedSheetId.length===0)&&this._forcedSheetName.length>0}_getBlankArrayValueObject(){let e={calculateValueList:[],rowCount:0,columnCount:0,unitId:this.getUnitId(),sheetId:this.getSheetId(),row:0,column:0};return B.create(e)}},ro=class extends g{constructor(e){super(),this._promise=e}isAsyncObject(){return!0}async getValue(){return this._promise}},io=class extends g{constructor(e){super(),this._promiseList=e}isAsyncArrayObject(){return!0}async getValue(){var e;let t=[];for(let e=0;e<this._promiseList.length;e++){let n=this._promiseList[e];t[e]==null&&(t[e]=[]);for(let r=0;r<n.length;r++){let i=n[r];i.isAsyncObject()?t[e][r]=await i.getValue():t[e][r]=i}}let n={calculateValueList:t,rowCount:t.length,columnCount:((e=t[0])==null?void 0:e.length)||0,unitId:``,sheetId:``,row:0,column:0};return B.create(n)}},ao=class extends no{constructor(e,t,n){super(``),this.setRangeData(e),t&&this.setForcedSheetIdDirect(t),n&&this.setForcedUnitIdDirect(n)}isRange(){return!0}},oo=class extends no{constructor(e){super(e);let t=Gn(e);this.setForcedUnitIdDirect(t.unitId),this.setForcedSheetName(t.sheetName),this.setRangeData(t.range)}isCell(){return!0}unionBy(e){if(!e.isCell())return E.create(p.REF);let t=e,n=this.unionRange(this.getRangeData(),t.getRangeData());return this._createRange(n)}unionRange(e,t){let n=e.startRow,r=e.startColumn,i=t.startRow,a=t.startColumn,o={startRow:-1,startColumn:-1,endRow:-1,endColumn:-1};return n>i?(o.startRow=i,o.endRow=n):(o.startRow=n,o.endRow=i),r>a?(o.startColumn=a,o.endColumn=r):(o.startColumn=r,o.endColumn=a),e.startAbsoluteRefType&&(o.startAbsoluteRefType=e.startAbsoluteRefType),t.startAbsoluteRefType&&(o.endAbsoluteRefType=t.startAbsoluteRefType),o}_createRange(e){let t=new ao(e,this.getForcedSheetId(),this.getForcedUnitId());t.setUnitData(this.getUnitData()),t.setDefaultSheetId(this.getDefaultSheetId()),t.setDefaultUnitId(this.getDefaultUnitId()),t.setRuntimeData(this.getRuntimeData()),t.setUnitStylesData(this.getUnitStylesData()),t.setArrayFormulaCellData(this.getArrayFormulaCellData()),t.setRuntimeArrayFormulaCellData(this.getRuntimeArrayFormulaCellData()),t.setRuntimeFeatureCellData(this.getRuntimeFeatureCellData());let{x:n,y:r}=this.getRefOffset();t.setRefOffset(n,r);let i=this.getForcedSheetId();t.setForcedSheetName(this.getForcedSheetName()),i!=null&&t.setForcedSheetIdDirect(i);let a=this.getForcedUnitId();return a&&t.setForcedUnitIdDirect(a),t}},so=class extends no{constructor(e){super(e);let n=Gn(e);this.setForcedUnitIdDirect(n.unitId),this.setForcedSheetName(n.sheetName);let r={...n.range,startColumn:n.range.startColumn,startRow:NaN,endColumn:n.range.endColumn,endRow:NaN,rangeType:t.RANGE_TYPE.COLUMN};this.setRangeData(r)}isColumn(){return!0}unionBy(e){if(!e.isColumn())return E.create(p.REF);let n=e;if(n.getForcedSheetName()!==void 0&&n.getForcedSheetName()!==``)return E.create(p.REF);let r=this.getRangeData(),i=n.getRangeData(),a=i.startColumn;if(a>=r.startColumn&&a<=r.endColumn)return this;let o=r.startColumn;return a>o?r.endColumn=a:(r.startColumn=a,r.endColumn=o),i.startAbsoluteRefType&&(r.endAbsoluteRefType=i.startAbsoluteRefType),r.rangeType=t.RANGE_TYPE.COLUMN,this.setToken(`${this.getToken()}${S.COLON}${n.getToken()}`),this}},co=class extends no{constructor(e){super(e);let n=Gn(e);this.setForcedUnitIdDirect(n.unitId),this.setForcedSheetName(n.sheetName);let r={...n.range,startColumn:NaN,startRow:n.range.startRow,endColumn:NaN,endRow:n.range.endRow,rangeType:t.RANGE_TYPE.ROW};this.setRangeData(r)}isRow(){return!0}unionBy(e){if(!e.isRow())return E.create(p.REF);let n=e;if(n.getForcedSheetName()!==void 0&&n.getForcedSheetName()!==``)return E.create(p.REF);let r=this.getRangeData(),i=n.getRangeData(),a=i.startRow;if(a>=r.startRow&&a<=r.endRow)return this;let o=r.startRow;return a>o?r.endRow=a:(r.startRow=a,r.endRow=o),i.startAbsoluteRefType&&(r.endAbsoluteRefType=i.startAbsoluteRefType),r.rangeType=t.RANGE_TYPE.ROW,this.setToken(`${this.getToken()}${S.COLON}${n.getToken()}`),this}};function V(e,t,n,r){let i=n.isArray()?n.getRowCount():1,a=n.isArray()?n.getColumnCount():1,o=[];for(let s=0;s<e;s++){let e=[];for(let o=0;o<t;o++){if(i===1&&a===1){let t=n.isArray()?n.get(0,0):n;e.push(t);continue}if(i===1&&o<a){let t=n.get(0,o);e.push(t);continue}if(a===1&&s<i){let t=n.get(s,0);e.push(t);continue}if(s>=i||o>=a){e.push(r==null?Ua.create():r);continue}let t=n.get(s,o);e.push(t)}o.push(e)}return lo(o,e,t)}function lo(e,t,n,r=``,i=``){let a={calculateValueList:e,rowCount:t,columnCount:n,unitId:r,sheetId:i,row:-1,column:-1};return B.create(a)}function uo(e){let t=[v.EQUALS,v.NOT_EQUAL,v.GREATER_THAN_OR_EQUAL,v.GREATER_THAN,v.LESS_THAN_OR_EQUAL,v.LESS_THAN];for(let n of t)if(e.startsWith(n)){let t=e.substring(n.length);return[n,$a.create(t)]}return[v.EQUALS,$a.create(e)]}function fo(e,t,n,r){if(!n)if(t.isString()){let[e,r]=uo(`${t.getValue()}`);n=e,t=r}else n=v.EQUALS;return e.compare(t,n,r)}function po(e,t){let n=e.getRowCount(),r=e.getColumnCount(),i=t.getRowCount(),a=t.getColumnCount(),o=e,s=t;if(n!==i||r!==a){let c=Math.max(n,i),l=Math.max(r,a);o=V(c,l,e),s=V(c,l,t)}return o.mapValue((e,t,n)=>{let r=s.get(t,n);return e!=null&&e.isError()?e:r!=null&&r.isError()?r:e!=null&&e.isBoolean()&&r!=null&&r.isBoolean()?Ga(e.getValue()&&r.getValue()):L.create(!1)})}function mo(e){let t=e.getValue(),n=0;return t&&(n=1),R.create(n)}function ho(e){return e.isArray()&&e.getRowCount()===1&&e.getColumnCount()===1?!0:e.isReferenceObject()?!!(e.isCell()||e.getRowCount()===1&&e.getColumnCount()===1):(e=e,!!(e.isString()||e.isNumber()||e.isBoolean()||e.isError()||e.isNull()))}function go(e){let n=e==null?void 0:e.getPattern(),r={},i={};if(n&&(r={s:{n:{pattern:n}}}),e!=null&&e.getCustomData()&&(i={custom:e.getCustomData()}),e==null)return{v:null,...r};if(e.isError())return{v:e.getErrorType(),t:t.CellValueType.STRING,...r,...i};if(e.isValueObject()){let n=e,a=n.getValue();return n.isNumber()?{v:a,t:t.CellValueType.NUMBER,...r,...i}:n.isBoolean()?{v:a?1:0,t:t.CellValueType.BOOLEAN,...r,...i}:n.isString()?{v:a,t:t.CellValueType.STRING,...r,...i}:n.isNull()?{v:null,...r,...i}:{v:a,t:t.CellValueType.STRING,...r,...i}}}function _o(e){let t=0,n=0;return e.forEach((e,r)=>{if(r%2==1)if(e.isArray()){let r=e;t=Math.max(t,r.getRowCount()),n=Math.max(n,r.getColumnCount())}else t=Math.max(t,1),n=Math.max(n,1)}),{maxRowLength:t,maxColumnLength:n}}function vo(e,t){if(e.length===0||e.length%2!=0)return{isError:!0,errorObject:E.create(p.VALUE),rangeIsDifferentSize:!1,criteriaMaxRowLength:0,criteriaMaxColumnLength:0,targetRange:null,variants:[]};let n=null,r=-1,i=-1;if(t){if(!t.isReferenceObject())return{isError:!0,errorObject:E.create(p.VALUE),rangeIsDifferentSize:!1,criteriaMaxRowLength:0,criteriaMaxColumnLength:0,targetRange:null,variants:[]};n=t.toArrayValueObject(),r=n.getRowCount(),i=n.getColumnCount()}let a=0,o=0,s=!1,c=[];for(let t=0;t<e.length;t++)if(t%2==1){let n=e[t-1],l=e[t];if(!n.isReferenceObject())return{isError:!0,errorObject:E.create(p.VALUE),rangeIsDifferentSize:!1,criteriaMaxRowLength:0,criteriaMaxColumnLength:0,targetRange:null,variants:[]};let u=n.toArrayValueObject(),d=u.getRowCount(),f=u.getColumnCount();t===1&&r===-1&&i===-1?(r=d,i=f):!s&&(r!==d||i!==f)&&(s=!0);let m=l;l.isReferenceObject()&&(m=l.toArrayValueObject()),a=Math.max(a,m.isArray()?m.getRowCount():1),o=Math.max(o,m.isArray()?m.getColumnCount():1),c.push(u),c.push(m)}return{isError:!1,errorObject:null,rangeIsDifferentSize:s,criteriaMaxRowLength:a,criteriaMaxColumnLength:o,targetRange:n,variants:c}}function yo(e){return e.isArray()?e:B.createByArray([[e.getValue()]])}function bo(e,t){let{formulaName:n,maxRowLength:r,maxColumnLength:i,isNumberSensitive:a=!1,targetRange:o}=t,s=[];for(let t=0;t<e.length;t++){if(t%2==1)continue;let n=e[t],a=e[t+1],o=V(r,i,a,E.create(p.NA));s.push({range:n,criteriaArray:o})}if(s.length===0)return[];let c=[];return s[0].criteriaArray.iterator((e,t,r)=>{let i;for(let e=0;e<s.length;e++){let{range:n,criteriaArray:o}=s[e],c=o.get(t,r);if(!c)continue;let l=fo(n,c);if(a&&(l=xo(l,n,c)),i===void 0){i=l;continue}i=po(i,l)}let l;if(n===`COUNTIFS`){let e=0;i.iterator(t=>{t!=null&&t.isBoolean()&&t.getValue()===!0&&e++}),l=R.create(e)}else if(n===`SUMIFS`)l=o.pick(i).sum();else if(n===`AVERAGEIFS`){let e=o.pick(i),t=e.sum(),n=e.count();l=t.divided(n)}else if(n===`MAXIFS`){let e=o.pick(i);l=e.getColumnCount()===0?B.create(`0`):e.max()}else if(n===`MINIFS`){let e=o.pick(i);l=e.getColumnCount()===0?B.create(`0`):e.min()}c[t]||(c[t]=[]),c[t][r]=l}),c}function xo(e,t,n){let[r,i]=uo(`${n.getValue()}`);return e.mapValue((e,n,a)=>{let o=t.get(n,a);if(o&&So(o,i))return e;if(o!=null&&o.isError()&&i.isError()&&o.getValue()===i.getValue())return L.create(!0);if(r===v.EQUALS||r===v.NOT_EQUAL){if(o!=null&&o.isNumber()&&i.isString()){let e=i.convertToNumberObjectValue();if(e.isNumber())return o.compare(e,r)}if(i.isNumber()&&o!=null&&o.isString()){let e=o.convertToNumberObjectValue();if(e.isNumber())return e.compare(i,r)}if(r===v.EQUALS)return L.create(!1);if(r===v.NOT_EQUAL)return L.create(!0)}return L.create(!1)})}function So(e,t){if(e.isNumber()&&t.isNumber()||e.isBoolean()&&t.isBoolean())return!0;let n=e.isString()&&e.getValue()===``,r=t.isString()&&t.getValue()===``;return!!((n||e.isNull())&&(r||t.isNull())||e.isString()&&!n&&t.isString()&&!r)}let Co=function(e){return e[e.CELL=0]=`CELL`,e[e.COLUMN=1]=`COLUMN`,e[e.ROW=2]=`ROW`,e}({});function wo(e,t){let n;switch(t){case Co.COLUMN:n=new so(e);break;case Co.ROW:n=new co(e);break;case Co.CELL:default:n=new oo(e);break}return n}function To(e,t){let n;return n=e.isCell()&&t.isCell()||e.isRow()&&t.isRow()||e.isColumn()&&t.isColumn()?e.unionBy(t):E.create(p.NAME),n}let Eo=class extends t.Disposable{constructor(e){super(),this._univerInstanceService=e}generateCellValue(e,n){if(n.trim()===``)return{v:``};let r=e;if(e.startsWith(`#`)&&kt(e.slice(1))){let{unitId:n,sheetName:i,range:a}=Yt(e.slice(1)),o=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET);if(n===``||n===o.getUnitId())if(i===``)r=`#gid=${o.getActiveSheet().getSheetId()}&range=${Ut(a)}`;else{let e=o.getSheetBySheetName(i);e&&(r=`#gid=${e.getSheetId()}&range=${Ut(a)}`)}}else t.Tools.isLegalUrl(e)&&(r=t.Tools.normalizeUrl(e));return{p:t.RichTextBuilder.create().insertLink(n,r).getData()}}};Eo=un([A(0,t.IUniverInstanceService)],Eo);let Do=(0,t.createIdentifier)(`univer.formula.hyperlink-engine-formula.service`),Oo=function(e){return e[e.IDLE=0]=`IDLE`,e[e.START=1]=`START`,e[e.START_DEPENDENCY=2]=`START_DEPENDENCY`,e[e.START_CALCULATION=3]=`START_CALCULATION`,e[e.CURRENTLY_CALCULATING=4]=`CURRENTLY_CALCULATING`,e[e.START_DEPENDENCY_ARRAY_FORMULA=5]=`START_DEPENDENCY_ARRAY_FORMULA`,e[e.START_CALCULATION_ARRAY_FORMULA=6]=`START_CALCULATION_ARRAY_FORMULA`,e[e.CURRENTLY_CALCULATING_ARRAY_FORMULA=7]=`CURRENTLY_CALCULATING_ARRAY_FORMULA`,e[e.CALCULATION_COMPLETED=8]=`CALCULATION_COMPLETED`,e}({}),ko=function(e){return e[e.INITIAL=0]=`INITIAL`,e[e.STOP_EXECUTION=1]=`STOP_EXECUTION`,e[e.NOT_EXECUTED=2]=`NOT_EXECUTED`,e[e.SUCCESS=3]=`SUCCESS`,e}({}),Ao=class extends t.Disposable{constructor(e,t){super(),this._currentConfigService=e,this._hyperlinkEngineFormulaService=t,d(this,`_formulaExecuteStage`,Oo.IDLE),d(this,`_stopState`,!1),d(this,`_currentRow`,-1),d(this,`_currentColumn`,-1),d(this,`_currentRowCount`,-1/0),d(this,`_currentColumnCount`,-1/0),d(this,`_currentSubUnitId`,``),d(this,`_currentUnitId`,``),d(this,`_runtimeData`,{}),d(this,`_runtimeOtherData`,{}),d(this,`_unitArrayFormulaRange`,{}),d(this,`_unitArrayFormulaEmbeddedMap`,{}),d(this,`_runtimeArrayFormulaCellData`,{}),d(this,`_runtimeClearArrayFormulaCellData`,{}),d(this,`_runtimeFeatureRange`,{}),d(this,`_runtimeFeatureCellData`,{}),d(this,`_runtimeImageFormulaData`,[]),d(this,`_functionsExecutedState`,ko.INITIAL),d(this,`_functionDefinitionPrivacyVar`,new Map),d(this,`_totalFormulasToCalculate`,0),d(this,`_completedFormulasCount`,0),d(this,`_totalArrayFormulasToCalculate`,0),d(this,`_completedArrayFormulasCount`,0),d(this,`_formulaCycleIndex`,0),d(this,`_isCycleDependency`,!1),d(this,`_dependencyTreeModelData`,[])}get currentRow(){return this._currentRow}get currentColumn(){return this._currentColumn}get currentRowCount(){return this._currentRowCount}get currentColumnCount(){return this._currentColumnCount}get currentSubUnitId(){return this._currentSubUnitId}get currentUnitId(){return this._currentUnitId}dispose(){super.dispose(),this.reset(),this._runtimeFeatureCellData={},this._runtimeFeatureRange={},this.clearReferenceAndNumberformatCache()}enableCycleDependency(){this._isCycleDependency=!0}disableCycleDependency(){this._isCycleDependency=!1}isCycleDependency(){return this._isCycleDependency}setFormulaCycleIndex(e){this._formulaCycleIndex=e}getFormulaCycleIndex(){return this._formulaCycleIndex}setTotalArrayFormulasToCalculate(e){this._totalArrayFormulasToCalculate=e}getTotalArrayFormulasToCalculate(){return this._totalArrayFormulasToCalculate}setCompletedArrayFormulasCount(e){this._completedArrayFormulasCount=e}getCompletedArrayFormulasCount(){return this._completedArrayFormulasCount}setTotalFormulasToCalculate(e){this._totalFormulasToCalculate=e}getTotalFormulasToCalculate(){return this._totalFormulasToCalculate}setCompletedFormulasCount(e){this._completedFormulasCount=e}getCompletedFormulasCount(){return this._completedFormulasCount}markedAsSuccessfullyExecuted(){this._functionsExecutedState=ko.SUCCESS}markedAsNoFunctionsExecuted(){this._functionsExecutedState=ko.NOT_EXECUTED}markedAsStopFunctionsExecuted(){this._functionsExecutedState=ko.STOP_EXECUTION}markedAsInitialFunctionsExecuted(){this._functionsExecutedState=ko.INITIAL}stopExecution(){this._stopState=!0,this.setFormulaExecuteStage(Oo.IDLE)}isStopExecution(){return this._stopState}setFormulaExecuteStage(e){this._formulaExecuteStage=e}getFormulaExecuteStage(){return this._formulaExecuteStage}reset(){this._formulaExecuteStage=Oo.IDLE,this._runtimeData={},this._runtimeOtherData={},this._unitArrayFormulaRange={},this._unitArrayFormulaEmbeddedMap={},this._runtimeArrayFormulaCellData={},this._runtimeClearArrayFormulaCellData={},this._runtimeImageFormulaData=[],this._functionDefinitionPrivacyVar.clear(),this.markedAsInitialFunctionsExecuted(),this._stopState=!1,this._isCycleDependency=!1,this._totalFormulasToCalculate=0,this._completedFormulasCount=0,this.clearReferenceAndNumberformatCache()}clearReferenceAndNumberformatCache(){jr(),zr(),Kn()}setCurrent(e,t,n,r,i,a){this._currentRow=e,this._currentColumn=t,this._currentRowCount=n,this._currentColumnCount=r,this._currentSubUnitId=i,this._currentUnitId=a}clearFunctionDefinitionPrivacyVar(){this._functionDefinitionPrivacyVar.clear()}registerFunctionDefinitionPrivacyVar(e,t){this._functionDefinitionPrivacyVar.set(e,t)}getFunctionDefinitionPrivacyVar(e){return this._functionDefinitionPrivacyVar.get(e)}setRuntimeOtherData(e,t,n,r){let i=this._currentSubUnitId,a=this._currentUnitId;this._runtimeOtherData[a]===void 0&&(this._runtimeOtherData[a]={});let o=this._runtimeOtherData[a];(o[i]===void 0||o[i]===null)&&(o[i]={});let s=o[i],c=[];if(r.isReferenceObject()||r.isValueObject()&&r.isArray()){let e=r,{startRow:t,startColumn:n}=e.getRangePosition();e.iterator((e,r,i)=>{let a=this._getValueObjectOfRuntimeData(e),o=r-t,s=i-n;c[o]==null&&(c[o]=[]),c[o][s]=a})}else c=[[this._getValueObjectOfRuntimeData(r)]];(s[e]===void 0||s[e]===null)&&(s[e]={}),(s[e][n]===void 0||s[e][n]===null)&&(s[e][n]={}),s[e][n][t]=c}setRuntimeData(e){let n=this._currentRow,r=this._currentColumn,i=this._currentRowCount,a=this.currentColumnCount,o=this._currentSubUnitId,s=this._currentUnitId;this._runtimeData[s]==null&&(this._runtimeData[s]={});let c=this._runtimeData[s];c[o]==null&&(c[o]=new t.ObjectMatrix);let l=c[o];this._unitArrayFormulaRange[s]==null&&(this._unitArrayFormulaRange[s]={});let u=this._unitArrayFormulaRange[s];(u[o]===null||u[o]===void 0)&&(u[o]={});let d=new t.ObjectMatrix(u[o]);this._runtimeArrayFormulaCellData[s]===void 0&&(this._runtimeArrayFormulaCellData[s]={});let f=this._runtimeArrayFormulaCellData[s];f[o]==null&&(f[o]=new t.ObjectMatrix);let m=f[o];this._runtimeClearArrayFormulaCellData[s]===void 0&&(this._runtimeClearArrayFormulaCellData[s]={});let h=this._runtimeClearArrayFormulaCellData[s];h[o]==null&&(h[o]=new t.ObjectMatrix);let g=h[o];if(e.isReferenceObject()||e.isValueObject()&&e.isArray()){let t=e,{startRow:c,startColumn:u,endRow:f,endColumn:h}=t.getRangePosition();if(c===f&&u===h){let e=t.getFirstCell(),i=this._getValueObjectOfRuntimeData(e);l.setValue(n,r,i),g.setValue(n,r,i),cr.set(s,o,r,e.getValue(),n,!0);return}let _={startRow:n,startColumn:r,endRow:f-c+n,endColumn:h-u+r};if(d.setValue(n,r,_),this._checkIfArrayFormulaRangeHasData(s,o,n,r,_)||this._checkIfArrayFormulaExceeded(i,a,_)){let e=this._getValueObjectOfRuntimeData(E.create(p.SPILL));l.setValue(n,r,e),g.setValue(n,r,e),cr.set(s,o,r,p.SPILL,n,!0);let i=this._currentConfigService.getUnitData();t.iterator((t,a,l)=>{var d;let f=a-c+n,p=l-u+r,h=(d=i[s])==null||(d=d[o])==null?void 0:d.cellData.getValue(f,p);if(a===c&&l===u)m.setValue(n,r,e);else if(h!=null)h.v==null&&(h.v=``),m.setValue(f,p,h);else if(this._isInOtherArrayFormulaRange(s,o,n,r,f,p))return!0;else m.setValue(f,p,{v:``})})}else{let e=E.create(p.SPILL);t.iterator((t,i,a)=>{cr.set(s,o,r-u+a,t?t.getValue():0,n-c+i,!0);let d=this._getValueObjectOfRuntimeData(t);if(i===c&&a===u){if(t!=null&&t.isError()&&t.isEqualType(e))return g.setValue(n,r,{}),l.setValue(n,r,{...this._getValueObjectOfRuntimeData(e)}),!1;l.setValue(n,r,{...d})}let f=i-c+n,p=a-u+r;m.setValue(f,p,d)})}}else{let t=this._getValueObjectOfRuntimeData(e);if(l.setValue(n,r,t),e.isString()&&e.isImage()){let t=e.getImageInfo();t&&this._runtimeImageFormulaData.push({...t,unitId:s,sheetId:o,row:n,column:r})}cr.set(s,o,r,e.getValue(),n,!0),g.setValue(n,r,t)}}_getValueObjectOfRuntimeData(e){return e!=null&&e.isString()&&e.isHyperlink()?this._hyperlinkEngineFormulaService.generateCellValue(e.getHyperlinkUrl(),e.getValue()):go(e)}getUnitData(){return this._runtimeData}getUnitArrayFormula(){return this._unitArrayFormulaRange}getUnitArrayFormulaEmbeddedMap(){return this._unitArrayFormulaEmbeddedMap}setUnitArrayFormulaEmbeddedMap(){let e=this._currentUnitId,t=this._currentSubUnitId,n=this._currentRow,r=this._currentColumn,i=this._unitArrayFormulaEmbeddedMap;i[e]==null&&(i[e]={}),i[e][t]==null&&(i[e][t]={}),i[e][t][n]==null&&(i[e][t][n]={}),i[e][t][n][r]=!0}getRuntimeOtherData(){return this._runtimeOtherData}getRuntimeArrayFormulaCellData(){return this._runtimeArrayFormulaCellData}getRuntimeClearArrayFormulaCellData(){return this._runtimeClearArrayFormulaCellData}getRuntimeFeatureRange(){return this._runtimeFeatureRange}setRuntimeFeatureRange(e,t){this._runtimeFeatureRange[e]=t}getRuntimeFeatureCellData(){return this._runtimeFeatureCellData}setRuntimeFeatureCellData(e,t){this._runtimeFeatureCellData[e]=t}setDependencyTreeModelData(e){this._dependencyTreeModelData=e}getDependencyTreeModelData(){return this._dependencyTreeModelData}getRuntimeImageFormulaData(){return this._runtimeImageFormulaData}getAllRuntimeData(){return{unitData:this.getUnitData(),arrayFormulaRange:this.getUnitArrayFormula(),arrayFormulaEmbedded:this.getUnitArrayFormulaEmbeddedMap(),unitOtherData:this.getRuntimeOtherData(),functionsExecutedState:this._functionsExecutedState,arrayFormulaCellData:this.getRuntimeArrayFormulaCellData(),clearArrayFormulaCellData:this.getRuntimeClearArrayFormulaCellData(),imageFormulaData:this.getRuntimeImageFormulaData(),runtimeFeatureRange:this.getRuntimeFeatureRange(),runtimeFeatureCellData:this.getRuntimeFeatureCellData(),dependencyTreeModelData:this.getDependencyTreeModelData()}}getRuntimeState(){return{totalFormulasToCalculate:this.getTotalFormulasToCalculate(),completedFormulasCount:this.getCompletedFormulasCount(),totalArrayFormulasToCalculate:this.getTotalArrayFormulasToCalculate(),completedArrayFormulasCount:this.getCompletedArrayFormulasCount(),stage:this.getFormulaExecuteStage(),formulaCycleIndex:this.getFormulaCycleIndex()}}clearArrayObjectCache(){to.clear()}_checkIfArrayFormulaRangeHasData(e,t,n,r,i){var a;let{startRow:o,startColumn:s,endRow:c,endColumn:l}=i,u=this._currentConfigService.getUnitData(),d=this._currentConfigService.getArrayFormulaCellData();(a=this._unitArrayFormulaRange[e])==null||(a=a[t])==null||(a=a[n])==null||a[r];for(let i=o;i<=c;i++)for(let a=s;a<=l;a++){var f,p,m;if(i===n&&r===a)continue;let o=(f=this._runtimeData)==null||(f=f[e])==null||(f=f[t])==null?void 0:f.getValue(i,a);d==null||(p=d[e])==null||(p=p[t])==null||p.getValue(i,a);let s=u==null||(m=u[e])==null||(m=m[t])==null||(m=m.cellData)==null?void 0:m.getValue(i,a),c=this._getRuntimeFeatureCellValue(i,a,t,e);if(!mr(o)||this._isInOtherArrayFormulaRange(e,t,n,r,i,a)||!mr(s)||!mr(c))return!0}return!1}_getRuntimeFeatureCellValue(e,t,n,r){return _r(e,t,n,r,this._runtimeFeatureCellData)}_arrayCellHasData(e){return e==null?!1:e.v!==void 0}_isInOtherArrayFormulaRange(e,n,r,i,a,o){var s;let c=(s=this._currentConfigService.getArrayFormulaRange()[e])==null?void 0:s[n];if(c==null)return!1;let l=!1;return new t.ObjectMatrix(c).forValue((t,s,c)=>{var u;if(t===r&&s===i)return;let d=this._isInArrayFormulaRange(c,a,o),f=(u=this._runtimeData[e])==null||(u=u[n])==null?void 0:u.getValue(t,s);d&&(f==null?void 0:f.v)!==p.SPILL&&(l=!0)}),l}_isInArrayFormulaRange(e,t,n){if(e==null)return!1;let{startRow:r,startColumn:i,endRow:a,endColumn:o}=e;return t>=r&&t<=a&&n>=i&&n<=o}_checkIfArrayFormulaExceeded(e,t,n){return n.endRow>=e||n.endColumn>=t}_isInDirtyRange(e,t,n,r){let i=this._currentConfigService.getDirtyRanges();return i.length===0?!0:ke(i,e,t,n,r)}};Ao=un([A(0,fr),A(1,Do)],Ao);let jo=(0,t.createIdentifier)(`univer.formula.runtime.service`),H=function(e){return e[e.REFERENCE=1]=`REFERENCE`,e[e.VALUE=2]=`VALUE`,e[e.OPERATOR=3]=`OPERATOR`,e[e.FUNCTION=4]=`FUNCTION`,e[e.LAMBDA=5]=`LAMBDA`,e[e.LAMBDA_PARAMETER=6]=`LAMBDA_PARAMETER`,e[e.ERROR=7]=`ERROR`,e[e.BASE=8]=`BASE`,e[e.ROOT=9]=`ROOT`,e[e.UNION=10]=`UNION`,e[e.PREFIX=11]=`PREFIX`,e[e.SUFFIX=12]=`SUFFIX`,e[e.NULL=13]=`NULL`,e}({}),Mo=new Map([[H.REFERENCE,7],[H.VALUE,9],[H.OPERATOR,8],[H.FUNCTION,6],[H.LAMBDA,1],[H.LAMBDA_PARAMETER,2],[H.ROOT,10],[H.UNION,3],[H.PREFIX,4],[H.SUFFIX,5]]);var No=class{constructor(e){this._token=e,d(this,`_children`,[]),d(this,`_definedNames`,void 0),d(this,`_parent`,void 0),d(this,`_valueObject`,void 0),d(this,`_calculateState`,!1),d(this,`_async`,!1),d(this,`_address`,!1),d(this,`_isForcedCalculateFunction`,!1)}dispose(){var e;this._children.forEach(e=>{e.dispose()}),(e=this._valueObject)==null||e.dispose(),this._valueObject=null,this._children=[],this._definedNames=null,this._parent=null}get nodeType(){return H.BASE}resetCalculationState(){this._children.forEach(e=>{e.resetCalculationState()}),this._valueObject=null,this._calculateState=!1}isAsync(){return this._async}isAddress(){return this._address}isForcedCalculateFunction(){return this._isForcedCalculateFunction}setAsync(){this._async=!0}setAddress(){this._address=!0}getParent(){return this._parent}setParent(e){this._parent=e,e.addChildren(this)}setForcedCalculateFunction(){this._isForcedCalculateFunction=!0}getChildren(){return this._children}addChildren(...e){this._children.push(...e)}getToken(){return this._token}setValue(e){this._valueObject=e}getValue(){return this._valueObject}isCalculated(){return this._calculateState}setCalculated(){this._calculateState=!0}execute(){}setNotEmpty(e=!0){}async executeAsync(){return Promise.resolve(a.SUCCESS)}serialize(){let e=this.getToken(),t=this.getChildren(),n=[],r=t.length;for(let e=0;e<r;e++){let r=t[e];n.push(r.serialize())}let i={token:e,nodeType:this.nodeType};return r>0&&(i.children=n),i}hasDefinedName(e){var t;return((t=this._definedNames)==null?void 0:t.includes(e))||!1}setDefinedNames(e){this._definedNames=e}getDefinedNames(){return this._definedNames}},Po=class e extends No{constructor(e){super(e),d(this,`_errorValueObject`,void 0),this._errorValueObject=E.create(e)}get nodeType(){return H.ERROR}static create(t){return new e(t)}getValue(){return this._errorValueObject}},Fo=class{get zIndex(){return 0}dispose(){}create(e,t,n){let r;return r=e instanceof j?e.getToken():e,new No(r)}},Io=class extends No{get nodeType(){return H.ROOT}execute(){let e=this.getChildren();if(e.length>1){this.setValue(E.create(p.VALUE));return}let t=e[0];t==null?this.setValue(E.create(p.VALUE)):this.setValue(t.getValue())}},Lo=class extends Fo{get zIndex(){return Mo.get(H.ROOT)||100}checkAndCreateNodeType(e){if(e instanceof j&&e.getToken()===`R_1`)return new Io(`R_1`)}};let Ro=function(e){return e.DATE=`DATE`,e.DATEDIF=`DATEDIF`,e.DATEVALUE=`DATEVALUE`,e.DAY=`DAY`,e.DAYS=`DAYS`,e.DAYS360=`DAYS360`,e.EDATE=`EDATE`,e.EOMONTH=`EOMONTH`,e.EPOCHTODATE=`EPOCHTODATE`,e.HOUR=`HOUR`,e.ISOWEEKNUM=`ISOWEEKNUM`,e.MINUTE=`MINUTE`,e.MONTH=`MONTH`,e.NETWORKDAYS=`NETWORKDAYS`,e.NETWORKDAYS_INTL=`NETWORKDAYS.INTL`,e.NOW=`NOW`,e.SECOND=`SECOND`,e.TIME=`TIME`,e.TIMEVALUE=`TIMEVALUE`,e.TO_DATE=`TO_DATE`,e.TODAY=`TODAY`,e.WEEKDAY=`WEEKDAY`,e.WEEKNUM=`WEEKNUM`,e.WORKDAY=`WORKDAY`,e.WORKDAY_INTL=`WORKDAY.INTL`,e.YEAR=`YEAR`,e.YEARFRAC=`YEARFRAC`,e}({}),U=function(e){return e.BESSELI=`BESSELI`,e.BESSELJ=`BESSELJ`,e.BESSELK=`BESSELK`,e.BESSELY=`BESSELY`,e.BIN2DEC=`BIN2DEC`,e.BIN2HEX=`BIN2HEX`,e.BIN2OCT=`BIN2OCT`,e.BITAND=`BITAND`,e.BITLSHIFT=`BITLSHIFT`,e.BITOR=`BITOR`,e.BITRSHIFT=`BITRSHIFT`,e.BITXOR=`BITXOR`,e.COMPLEX=`COMPLEX`,e.CONVERT=`CONVERT`,e.DEC2BIN=`DEC2BIN`,e.DEC2HEX=`DEC2HEX`,e.DEC2OCT=`DEC2OCT`,e.DELTA=`DELTA`,e.ERF=`ERF`,e.ERF_PRECISE=`ERF.PRECISE`,e.ERFC=`ERFC`,e.ERFC_PRECISE=`ERFC.PRECISE`,e.GESTEP=`GESTEP`,e.HEX2BIN=`HEX2BIN`,e.HEX2DEC=`HEX2DEC`,e.HEX2OCT=`HEX2OCT`,e.IMABS=`IMABS`,e.IMAGINARY=`IMAGINARY`,e.IMARGUMENT=`IMARGUMENT`,e.IMCONJUGATE=`IMCONJUGATE`,e.IMCOS=`IMCOS`,e.IMCOSH=`IMCOSH`,e.IMCOT=`IMCOT`,e.IMCOTH=`IMCOTH`,e.IMCSC=`IMCSC`,e.IMCSCH=`IMCSCH`,e.IMDIV=`IMDIV`,e.IMEXP=`IMEXP`,e.IMLN=`IMLN`,e.IMLOG=`IMLOG`,e.IMLOG10=`IMLOG10`,e.IMLOG2=`IMLOG2`,e.IMPOWER=`IMPOWER`,e.IMPRODUCT=`IMPRODUCT`,e.IMREAL=`IMREAL`,e.IMSEC=`IMSEC`,e.IMSECH=`IMSECH`,e.IMSIN=`IMSIN`,e.IMSINH=`IMSINH`,e.IMSQRT=`IMSQRT`,e.IMSUB=`IMSUB`,e.IMSUM=`IMSUM`,e.IMTAN=`IMTAN`,e.IMTANH=`IMTANH`,e.OCT2BIN=`OCT2BIN`,e.OCT2DEC=`OCT2DEC`,e.OCT2HEX=`OCT2HEX`,e}({}),W=function(e){return e.ACCRINT=`ACCRINT`,e.ACCRINTM=`ACCRINTM`,e.AMORDEGRC=`AMORDEGRC`,e.AMORLINC=`AMORLINC`,e.COUPDAYBS=`COUPDAYBS`,e.COUPDAYS=`COUPDAYS`,e.COUPDAYSNC=`COUPDAYSNC`,e.COUPNCD=`COUPNCD`,e.COUPNUM=`COUPNUM`,e.COUPPCD=`COUPPCD`,e.CUMIPMT=`CUMIPMT`,e.CUMPRINC=`CUMPRINC`,e.DB=`DB`,e.DDB=`DDB`,e.DISC=`DISC`,e.DOLLARDE=`DOLLARDE`,e.DOLLARFR=`DOLLARFR`,e.DURATION=`DURATION`,e.EFFECT=`EFFECT`,e.FV=`FV`,e.FVSCHEDULE=`FVSCHEDULE`,e.INTRATE=`INTRATE`,e.IPMT=`IPMT`,e.IRR=`IRR`,e.ISPMT=`ISPMT`,e.MDURATION=`MDURATION`,e.MIRR=`MIRR`,e.NOMINAL=`NOMINAL`,e.NPER=`NPER`,e.NPV=`NPV`,e.ODDFPRICE=`ODDFPRICE`,e.ODDFYIELD=`ODDFYIELD`,e.ODDLPRICE=`ODDLPRICE`,e.ODDLYIELD=`ODDLYIELD`,e.PDURATION=`PDURATION`,e.PMT=`PMT`,e.PPMT=`PPMT`,e.PRICE=`PRICE`,e.PRICEDISC=`PRICEDISC`,e.PRICEMAT=`PRICEMAT`,e.PV=`PV`,e.RATE=`RATE`,e.RECEIVED=`RECEIVED`,e.RRI=`RRI`,e.SLN=`SLN`,e.SYD=`SYD`,e.TBILLEQ=`TBILLEQ`,e.TBILLPRICE=`TBILLPRICE`,e.TBILLYIELD=`TBILLYIELD`,e.VDB=`VDB`,e.XIRR=`XIRR`,e.XNPV=`XNPV`,e.YIELD=`YIELD`,e.YIELDDISC=`YIELDDISC`,e.YIELDMAT=`YIELDMAT`,e}({}),zo=function(e){return e.CELL=`CELL`,e.ERROR_TYPE=`ERROR.TYPE`,e.INFO=`INFO`,e.ISBETWEEN=`ISBETWEEN`,e.ISBLANK=`ISBLANK`,e.ISDATE=`ISDATE`,e.ISEMAIL=`ISEMAIL`,e.ISERR=`ISERR`,e.ISERROR=`ISERROR`,e.ISEVEN=`ISEVEN`,e.ISFORMULA=`ISFORMULA`,e.ISLOGICAL=`ISLOGICAL`,e.ISNA=`ISNA`,e.ISNONTEXT=`ISNONTEXT`,e.ISNUMBER=`ISNUMBER`,e.ISODD=`ISODD`,e.ISOMITTED=`ISOMITTED`,e.ISREF=`ISREF`,e.ISTEXT=`ISTEXT`,e.ISURL=`ISURL`,e.N=`N`,e.NA=`NA`,e.SHEET=`SHEET`,e.SHEETS=`SHEETS`,e.TYPE=`TYPE`,e}({}),Bo=function(e){return e.AND=`AND`,e.BYCOL=`BYCOL`,e.BYROW=`BYROW`,e.FALSE=`FALSE`,e.IF=`IF`,e.IFERROR=`IFERROR`,e.IFNA=`IFNA`,e.IFS=`IFS`,e.LAMBDA=`LAMBDA`,e.LET=`LET`,e.MAKEARRAY=`MAKEARRAY`,e.MAP=`MAP`,e.NOT=`NOT`,e.OR=`OR`,e.REDUCE=`REDUCE`,e.SCAN=`SCAN`,e.SWITCH=`SWITCH`,e.TRUE=`TRUE`,e.XOR=`XOR`,e}({}),G=function(e){return e.ADDRESS=`ADDRESS`,e.AREAS=`AREAS`,e.CHOOSE=`CHOOSE`,e.CHOOSECOLS=`CHOOSECOLS`,e.CHOOSEROWS=`CHOOSEROWS`,e.COLUMN=`COLUMN`,e.COLUMNS=`COLUMNS`,e.DROP=`DROP`,e.EXPAND=`EXPAND`,e.FILTER=`FILTER`,e.FORMULATEXT=`FORMULATEXT`,e.GETPIVOTDATA=`GETPIVOTDATA`,e.HLOOKUP=`HLOOKUP`,e.HSTACK=`HSTACK`,e.HYPERLINK=`HYPERLINK`,e.IMAGE=`IMAGE`,e.INDEX=`INDEX`,e.INDIRECT=`INDIRECT`,e.LOOKUP=`LOOKUP`,e.MATCH=`MATCH`,e.OFFSET=`OFFSET`,e.ROW=`ROW`,e.ROWS=`ROWS`,e.RTD=`RTD`,e.SORT=`SORT`,e.SORTBY=`SORTBY`,e.TAKE=`TAKE`,e.TOCOL=`TOCOL`,e.TOROW=`TOROW`,e.TRANSPOSE=`TRANSPOSE`,e.UNIQUE=`UNIQUE`,e.VLOOKUP=`VLOOKUP`,e.VSTACK=`VSTACK`,e.WRAPCOLS=`WRAPCOLS`,e.WRAPROWS=`WRAPROWS`,e.XLOOKUP=`XLOOKUP`,e.XMATCH=`XMATCH`,e}({}),K=function(e){return e.ABS=`ABS`,e.ACOS=`ACOS`,e.ACOSH=`ACOSH`,e.ACOT=`ACOT`,e.ACOTH=`ACOTH`,e.AGGREGATE=`AGGREGATE`,e.ARABIC=`ARABIC`,e.ASIN=`ASIN`,e.ASINH=`ASINH`,e.ATAN=`ATAN`,e.ATAN2=`ATAN2`,e.ATANH=`ATANH`,e.BASE=`BASE`,e.CEILING=`CEILING`,e.CEILING_MATH=`CEILING.MATH`,e.CEILING_PRECISE=`CEILING.PRECISE`,e.COMBIN=`COMBIN`,e.COMBINA=`COMBINA`,e.COS=`COS`,e.COSH=`COSH`,e.COT=`COT`,e.COTH=`COTH`,e.CSC=`CSC`,e.CSCH=`CSCH`,e.DECIMAL=`DECIMAL`,e.DEGREES=`DEGREES`,e.EVEN=`EVEN`,e.EXP=`EXP`,e.FACT=`FACT`,e.FACTDOUBLE=`FACTDOUBLE`,e.FLOOR=`FLOOR`,e.FLOOR_MATH=`FLOOR.MATH`,e.FLOOR_PRECISE=`FLOOR.PRECISE`,e.GCD=`GCD`,e.INT=`INT`,e.ISO_CEILING=`ISO.CEILING`,e.LCM=`LCM`,e.LET=`LET`,e.LN=`LN`,e.LOG=`LOG`,e.LOG10=`LOG10`,e.MDETERM=`MDETERM`,e.MINVERSE=`MINVERSE`,e.MMULT=`MMULT`,e.MOD=`MOD`,e.MROUND=`MROUND`,e.MULTINOMIAL=`MULTINOMIAL`,e.MUNIT=`MUNIT`,e.ODD=`ODD`,e.PI=`PI`,e.POWER=`POWER`,e.PRODUCT=`PRODUCT`,e.QUOTIENT=`QUOTIENT`,e.RADIANS=`RADIANS`,e.RAND=`RAND`,e.RANDARRAY=`RANDARRAY`,e.RANDBETWEEN=`RANDBETWEEN`,e.ROMAN=`ROMAN`,e.ROUND=`ROUND`,e.ROUNDBANK=`ROUNDBANK`,e.ROUNDDOWN=`ROUNDDOWN`,e.ROUNDUP=`ROUNDUP`,e.SEC=`SEC`,e.SECH=`SECH`,e.SERIESSUM=`SERIESSUM`,e.SEQUENCE=`SEQUENCE`,e.SIGN=`SIGN`,e.SIN=`SIN`,e.SINH=`SINH`,e.SQRT=`SQRT`,e.SQRTPI=`SQRTPI`,e.SUBTOTAL=`SUBTOTAL`,e.SUM=`SUM`,e.SUMIF=`SUMIF`,e.SUMIFS=`SUMIFS`,e.SUMPRODUCT=`SUMPRODUCT`,e.SUMSQ=`SUMSQ`,e.SUMX2MY2=`SUMX2MY2`,e.SUMX2PY2=`SUMX2PY2`,e.SUMXMY2=`SUMXMY2`,e.TAN=`TAN`,e.TANH=`TANH`,e.TRUNC=`TRUNC`,e}({}),q=function(e){return e.AVEDEV=`AVEDEV`,e.AVERAGE=`AVERAGE`,e.AVERAGE_WEIGHTED=`AVERAGE.WEIGHTED`,e.AVERAGEA=`AVERAGEA`,e.AVERAGEIF=`AVERAGEIF`,e.AVERAGEIFS=`AVERAGEIFS`,e.BETA_DIST=`BETA.DIST`,e.BETA_INV=`BETA.INV`,e.BINOM_DIST=`BINOM.DIST`,e.BINOM_DIST_RANGE=`BINOM.DIST.RANGE`,e.BINOM_INV=`BINOM.INV`,e.CHISQ_DIST=`CHISQ.DIST`,e.CHISQ_DIST_RT=`CHISQ.DIST.RT`,e.CHISQ_INV=`CHISQ.INV`,e.CHISQ_INV_RT=`CHISQ.INV.RT`,e.CHISQ_TEST=`CHISQ.TEST`,e.CONFIDENCE_NORM=`CONFIDENCE.NORM`,e.CONFIDENCE_T=`CONFIDENCE.T`,e.CORREL=`CORREL`,e.COUNT=`COUNT`,e.COUNTA=`COUNTA`,e.COUNTBLANK=`COUNTBLANK`,e.COUNTIF=`COUNTIF`,e.COUNTIFS=`COUNTIFS`,e.COVARIANCE_P=`COVARIANCE.P`,e.COVARIANCE_S=`COVARIANCE.S`,e.DEVSQ=`DEVSQ`,e.EXPON_DIST=`EXPON.DIST`,e.F_DIST=`F.DIST`,e.F_DIST_RT=`F.DIST.RT`,e.F_INV=`F.INV`,e.F_INV_RT=`F.INV.RT`,e.F_TEST=`F.TEST`,e.FISHER=`FISHER`,e.FISHERINV=`FISHERINV`,e.FORECAST=`FORECAST`,e.FORECAST_ETS=`FORECAST.ETS`,e.FORECAST_ETS_CONFINT=`FORECAST.ETS.CONFINT`,e.FORECAST_ETS_SEASONALITY=`FORECAST.ETS.SEASONALITY`,e.FORECAST_ETS_STAT=`FORECAST.ETS.STAT`,e.FORECAST_LINEAR=`FORECAST.LINEAR`,e.FREQUENCY=`FREQUENCY`,e.GAMMA=`GAMMA`,e.GAMMA_DIST=`GAMMA.DIST`,e.GAMMA_INV=`GAMMA.INV`,e.GAMMALN=`GAMMALN`,e.GAMMALN_PRECISE=`GAMMALN.PRECISE`,e.GAUSS=`GAUSS`,e.GEOMEAN=`GEOMEAN`,e.GROWTH=`GROWTH`,e.HARMEAN=`HARMEAN`,e.HYPGEOM_DIST=`HYPGEOM.DIST`,e.INTERCEPT=`INTERCEPT`,e.KURT=`KURT`,e.LARGE=`LARGE`,e.LINEST=`LINEST`,e.LOGEST=`LOGEST`,e.LOGNORM_DIST=`LOGNORM.DIST`,e.LOGNORM_INV=`LOGNORM.INV`,e.MARGINOFERROR=`MARGINOFERROR`,e.MAX=`MAX`,e.MAXA=`MAXA`,e.MAXIFS=`MAXIFS`,e.MEDIAN=`MEDIAN`,e.MIN=`MIN`,e.MINA=`MINA`,e.MINIFS=`MINIFS`,e.MODE_MULT=`MODE.MULT`,e.MODE_SNGL=`MODE.SNGL`,e.NEGBINOM_DIST=`NEGBINOM.DIST`,e.NORM_DIST=`NORM.DIST`,e.NORM_INV=`NORM.INV`,e.NORM_S_DIST=`NORM.S.DIST`,e.NORM_S_INV=`NORM.S.INV`,e.PEARSON=`PEARSON`,e.PERCENTILE_EXC=`PERCENTILE.EXC`,e.PERCENTILE_INC=`PERCENTILE.INC`,e.PERCENTRANK_EXC=`PERCENTRANK.EXC`,e.PERCENTRANK_INC=`PERCENTRANK.INC`,e.PERMUT=`PERMUT`,e.PERMUTATIONA=`PERMUTATIONA`,e.PHI=`PHI`,e.POISSON_DIST=`POISSON.DIST`,e.PROB=`PROB`,e.QUARTILE_EXC=`QUARTILE.EXC`,e.QUARTILE_INC=`QUARTILE.INC`,e.RANK_AVG=`RANK.AVG`,e.RANK_EQ=`RANK.EQ`,e.RSQ=`RSQ`,e.SKEW=`SKEW`,e.SKEW_P=`SKEW.P`,e.SLOPE=`SLOPE`,e.SMALL=`SMALL`,e.STANDARDIZE=`STANDARDIZE`,e.STDEV_P=`STDEV.P`,e.STDEV_S=`STDEV.S`,e.STDEVA=`STDEVA`,e.STDEVPA=`STDEVPA`,e.STEYX=`STEYX`,e.T_DIST=`T.DIST`,e.T_DIST_2T=`T.DIST.2T`,e.T_DIST_RT=`T.DIST.RT`,e.T_INV=`T.INV`,e.T_INV_2T=`T.INV.2T`,e.T_TEST=`T.TEST`,e.TREND=`TREND`,e.TRIMMEAN=`TRIMMEAN`,e.VAR_P=`VAR.P`,e.VAR_S=`VAR.S`,e.VARA=`VARA`,e.VARPA=`VARPA`,e.WEIBULL_DIST=`WEIBULL.DIST`,e.Z_TEST=`Z.TEST`,e}({}),J=function(e){return e.ASC=`ASC`,e.ARRAYTOTEXT=`ARRAYTOTEXT`,e.BAHTTEXT=`BAHTTEXT`,e.CHAR=`CHAR`,e.CLEAN=`CLEAN`,e.CODE=`CODE`,e.CONCAT=`CONCAT`,e.CONCATENATE=`CONCATENATE`,e.DBCS=`DBCS`,e.DOLLAR=`DOLLAR`,e.EXACT=`EXACT`,e.FIND=`FIND`,e.FINDB=`FINDB`,e.FIXED=`FIXED`,e.LEFT=`LEFT`,e.LEFTB=`LEFTB`,e.LEN=`LEN`,e.LENB=`LENB`,e.LOWER=`LOWER`,e.MID=`MID`,e.MIDB=`MIDB`,e.NUMBERSTRING=`NUMBERSTRING`,e.NUMBERVALUE=`NUMBERVALUE`,e.PHONETIC=`PHONETIC`,e.PROPER=`PROPER`,e.REGEXEXTRACT=`REGEXEXTRACT`,e.REGEXMATCH=`REGEXMATCH`,e.REGEXREPLACE=`REGEXREPLACE`,e.REPLACE=`REPLACE`,e.REPLACEB=`REPLACEB`,e.REPT=`REPT`,e.RIGHT=`RIGHT`,e.RIGHTB=`RIGHTB`,e.SEARCH=`SEARCH`,e.SEARCHB=`SEARCHB`,e.SUBSTITUTE=`SUBSTITUTE`,e.T=`T`,e.TEXT=`TEXT`,e.TEXTAFTER=`TEXTAFTER`,e.TEXTBEFORE=`TEXTBEFORE`,e.TEXTJOIN=`TEXTJOIN`,e.TEXTSPLIT=`TEXTSPLIT`,e.TRIM=`TRIM`,e.UNICHAR=`UNICHAR`,e.UNICODE=`UNICODE`,e.UPPER=`UPPER`,e.VALUE=`VALUE`,e.VALUETOTEXT=`VALUETOTEXT`,e.CALL=`CALL`,e.EUROCONVERT=`EUROCONVERT`,e.REGISTER_ID=`REGISTER.ID`,e}({}),Vo=function(e){return e.ENCODEURL=`ENCODEURL`,e.FILTERXML=`FILTERXML`,e.WEBSERVICE=`WEBSERVICE`,e}({}),Ho=[Ro,U,W,zo,Bo,G,K,q,J,Vo],Uo=new Set(Ho.flatMap(e=>Object.values(e)).filter(e=>/^[A-Z]{1,3}$/.test(e)).filter(e=>{let n=(0,t.columnLabelToNumber)(e);return n>0&&n<=t.MAX_COLUMN_COUNT})),Wo=new f(5e3);function Go(e,t,n,r,i){let a=Wo.get(`${e}${t}`);if(a&&!Ko(a,i))return a;let o=n.treeBuilder(t);return m.has(o)?Po.create(o):(a=r.parse(o),a==null?(console.error(`generateAstNode astNode is null`),Po.create(o)):(Wo.set(`${e}${t}`,a),a))}function Ko(e,t){let n=t.getDirtyDefinedNameMap(),r=t.getExecuteUnitId();if(r!=null&&n[r]!=null){let t=Object.keys(n[r]);for(let n=0,r=t.length;n<r;n++){let r=t[n];if(e.hasDefinedName(r))return!0}}return!1}function qo(e,t,n){return!!(t!=null&&Ko(t,n))}let Jo=(0,t.createIdentifier)(`univer.formula-function.service`);var Yo=class extends t.Disposable{constructor(...e){super(...e),d(this,`_functionExecutors`,new Map),d(this,`_functionDescriptions`,new Map)}dispose(){super.dispose(),this._functionExecutors.clear(),this._functionDescriptions.clear()}registerExecutors(...e){for(let t=0;t<e.length;t++){let n=e[t];this._functionExecutors.set(n.name,n)}}getExecutors(){return this._functionExecutors}getExecutor(e){return this._functionExecutors.get(e)}hasExecutor(e){return this._functionExecutors.has(e)}unregisterExecutors(...e){for(let t=0;t<e.length;t++){let n=e[t];this._functionExecutors.delete(n)}}registerDescriptions(...e){for(let t=0;t<e.length;t++){let n=e[t];this._functionDescriptions.set(n.functionName,n)}return(0,t.toDisposable)(()=>{for(let t=0;t<e.length;t++){let n=e[t];this._functionDescriptions.delete(n.functionName)}})}getDescriptions(){return this._functionDescriptions}getDescription(e){return this._functionDescriptions.get(e)}hasDescription(e){return this._functionDescriptions.has(e)}unregisterDescriptions(...e){for(let t=0;t<e.length;t++){let n=e[t];this._functionDescriptions.delete(n)}}deleteFormulaAstCacheKey(...e){Wo.forEach((t,n)=>{e.forEach(e=>{n.includes(e)&&Wo.delete(n)})})}};let Xo=function(e){return e.COMPARE=`COMPARE`,e.DIVIDED=`DIVIDED`,e.MINUS=`MINUS`,e.MULTIPLY=`MULTIPLY`,e.PLUS=`PLUS`,e.UNION=`UNION`,e.CUBE=`CUBE`,e}({});var Zo=class extends No{constructor(e,t,n){super(t),this._runtimeService=e,this._operatorString=t,this._functionExecutor=n}get nodeType(){return H.PREFIX}execute(){let e=this.getChildren()[0].getValue(),t;if(e==null){console.error(`PrefixNode execute value is null`),this.setValue(E.create(p.VALUE));return}this._operatorString===T.MINUS?(e.isReferenceObject()&&(e=e.toArrayValueObject()),t=this._functionExecutor.calculate(R.create(0),e)):t=this._operatorString===T.AT?this._handlerAT(e):E.create(p.VALUE),this.setValue(t)}_handlerAT(e){if(!e.isReferenceObject())return E.create(p.VALUE);let t=e;if(t.isCell())return E.create(p.VALUE);let n=this._runtimeService,r=n.currentRow||0,i=n.currentColumn||0,{startRow:a,startColumn:o,endRow:s,endColumn:c}=t.getRangePosition();return c!==o&&s!==a||a===s&&o===c?E.create(p.VALUE):s===a&&i>=o&&i<=c?t.getCellByColumn(i):o===c&&r>=a&&r<=s?t.getCellByRow(r):t.isTable()?t.getCellByPosition(r):E.create(p.VALUE)}};let Qo=class extends Fo{constructor(e,t){super(),this._functionService=e,this._runtimeService=t}get zIndex(){return Mo.get(H.PREFIX)||100}checkAndCreateNodeType(e){if(!(e instanceof j))return;let t=e.getToken(),n=t.trim();if(n.charAt(0)===`"`&&n.charAt(n.length-1)===`"`)return;let r=``;if(n===T.MINUS)r=Xo.MINUS;else if(n===T.AT)return new Zo(this._runtimeService,n);else return;let i=this._functionService.getExecutor(r);return i?new Zo(this._runtimeService,n,i):(console.error(`No function ${t}`),Po.create(p.NAME))}};Qo=un([A(0,Jo),A(1,jo)],Qo);function $o(e,t,n){let r,i,a=e,o=a[0],s=0;if(o===T.MINUS){let e=t.getExecutor(Xo.MINUS);r=new Zo(n,T.MINUS,e),s++}else o===T.AT&&(i=new Zo(n,T.AT),r&&i.setParent(r),s++);return s>0&&(a=a.slice(s)),{tokenTrim:a,minusPrefixNode:r,atPrefixNode:i}}var es=class extends No{constructor(e,t,n,r,i,a){super(e),this._functionExecutor=t,this._currentConfigService=n,this._runtimeService=r,this._definedNamesService=i,this._formulaDataModel=a,this._functionExecutor.isAsync()&&this.setAsync(),this._functionExecutor.isAddress()&&this.setAddress(),this._functionExecutor.needsLocale&&this._setLocale(),this._functionExecutor.needsSheetsInfo&&this._setSheetsInfo(),this._functionExecutor.needsFormulaDataModel&&this._functionExecutor.setFormulaDataModel(this._formulaDataModel)}get nodeType(){return H.FUNCTION}async executeAsync(){let e=[],t=this.getChildren(),n=t.length;this._compatibility();for(let r=0;r<n;r++){let n=t[r].getValue();n!=null&&(n.isReferenceObject()&&!this._functionExecutor.needsReferenceObject?e.push(n.toArrayValueObject()):e.push(n))}let r=await this._calculateAsync(e),i;return i=r.isAsyncObject()||r.isAsyncArrayObject()?await r.getValue():r,this._setEmbeddedArrayFormulaToResult(i),this._setRefData(i),this.setValue(i),Promise.resolve(a.SUCCESS)}execute(){let e=[],t=this.getChildren(),n=t.length;this._compatibility();for(let r=0;r<n;r++){let n=t[r].getValue();n!=null&&(n.isReferenceObject()&&this._functionExecutor.needsFilteredOutRows&&this._setFilteredOutRows(n),n.isReferenceObject()&&!this._functionExecutor.needsReferenceObject?e.push(n.toArrayValueObject()):e.push(n))}let r=this._calculate(e);this._setEmbeddedArrayFormulaToResult(r),this._setRefData(r),this.setValue(r)}isFunctionExecutorArgumentsIgnoreNumberPattern(){return this._functionExecutor.isArgumentsIgnoreNumberPattern()}_setEmbeddedArrayFormulaToResult(e){if(!e.isArray())return;let t=e.getRowCount(),n=e.getColumnCount();t<=1&&n<=1||this._runtimeService.setUnitArrayFormulaEmbeddedMap()}_compatibility(){this._lookupCompatibility()}_lookupCompatibility(){let e=this.getChildren(),t=e.length;if(!this._functionExecutor.needsExpandParams||t!==3)return;let n=e[1].getValue(),r=e[2].getValue();if(!(n!=null&&n.isReferenceObject())&&!(r!=null&&r.isReferenceObject()))return;let i,a;if(n!=null&&n.isReferenceObject()){let{startRow:e,startColumn:t,endRow:r,endColumn:o}=n.getRangeData();i=r-e+1,a=o-t+1}else i=n!=null&&n.isArray()?n.getRowCount():1,a=n!=null&&n.isArray()?n.getColumnCount():1;let o=r.getRangeData(),{startRow:s,startColumn:c,endRow:l,endColumn:u}=o,d=l-s+1,f=u-c+1;i!==d&&(o.endRow+=i-d),a!==f&&(o.endColumn+=a-f)}_handleCustomResult(e){var t;if(typeof e!=`object`||!e)return $a.create(e);let n=Za(e);return B.create({calculateValueList:n,rowCount:n.length,columnCount:((t=n[0])==null?void 0:t.length)||0,unitId:``,sheetId:``,row:-1,column:-1})}_handleAddressFunction(){this._functionExecutor.isAddress()&&this._setDefinedNamesForFunction()}_mapVariantsToValues(e){return e.map(e=>e.isArray()?e.toValue():e.isLambda()?e:e.getValue())}_calculate(e){let{minParams:t,maxParams:n}=this._functionExecutor;if(t!==-1&&n!==-1&&(e.length<t||e.length>n))return E.create(p.NA);let r;if(this._setRefInfo(),this._functionExecutor.isCustom()){let t=this._functionExecutor.calculateCustom(...this._mapVariantsToValues(e));r=this._handleCustomResult(t)}else this._handleAddressFunction(),r=this._functionExecutor.calculate(...e);return r}async _calculateAsync(e){let{minParams:t,maxParams:n}=this._functionExecutor;if(t!==-1&&n!==-1&&(e.length<t||e.length>n))return E.create(p.NA);let r;if(this._setRefInfo(),this._functionExecutor.isCustom()){let t=await this._functionExecutor.calculateCustom(...this._mapVariantsToValues(e));r=this._handleCustomResult(t)}else this._handleAddressFunction(),r=this._functionExecutor.calculate(...e);return r}_setDefinedNamesForFunction(){let e=this._currentConfigService.getExecuteUnitId();if(e==null)return;let t=this._definedNamesService.getDefinedNameMap(e);t!=null&&this._functionExecutor.setDefinedNames(t)}_setRefInfo(){let{currentUnitId:e,currentSubUnitId:t,currentRow:n,currentColumn:r}=this._runtimeService;if(this._functionExecutor.setRefInfo(e,t,n,r),this._functionExecutor.needsSheetRowColumnCount){let{rowCount:n,columnCount:r}=this._currentConfigService.getSheetRowColumnCount(e,t);this._functionExecutor.setSheetRowColumnCount(n,r)}}_setRefData(e){if(!e.isReferenceObject())return;let t=e;t.setForcedSheetId(this._currentConfigService.getSheetNameMap()),t.setUnitData(this._currentConfigService.getUnitData()),t.setArrayFormulaCellData(this._currentConfigService.getArrayFormulaCellData()),t.setArrayFormulaRange(this._currentConfigService.getArrayFormulaRange()),t.setRuntimeData(this._runtimeService.getUnitData()),t.setRuntimeArrayFormulaCellData(this._runtimeService.getRuntimeArrayFormulaCellData()),t.setRuntimeArrayFormulaRange(this._runtimeService.getUnitArrayFormula()),t.setRuntimeFeatureCellData(this._runtimeService.getRuntimeFeatureCellData())}_setLocale(){this._functionExecutor.setLocale(this._currentConfigService.getLocale())}_setSheetsInfo(){this._functionExecutor.setSheetsInfo(this._currentConfigService.getSheetsInfo())}_setFilteredOutRows(e){let{startRow:t,endRow:n}=e.getRangePosition(),r=this._currentConfigService.getFilteredOutRows(e.getUnitId(),e.getSheetId(),t,n);e.setFilteredOutRows(r)}},ts=class extends No{constructor(e=`Error`){super(e)}get nodeType(){return H.FUNCTION}async executeAsync(){return this.setValue(E.create(p.NAME)),Promise.resolve(a.SUCCESS)}execute(){this.setValue(E.create(p.NAME))}};let ns=class extends Fo{constructor(e,t,n,r,i,a){super(),this._functionService=e,this._currentConfigService=t,this._runtimeService=n,this._definedNamesService=r,this._injector=i,this._formulaDataModel=a}get zIndex(){return Mo.get(H.FUNCTION)||100}create(e){let t=this._functionService.getExecutor(e);return t?new es(e,t,this._currentConfigService,this._runtimeService,this._definedNamesService,this._formulaDataModel):(console.error(`No function ${e}`),Po.create(p.NAME))}checkAndCreateNodeType(e){if(typeof e==`string`)return;let{tokenTrim:t,minusPrefixNode:n,atPrefixNode:r}=$o(e.getToken().trim(),this._functionService,this._runtimeService),i=this._isParentUnionNode(e);if(!Number.isNaN(Number(t))&&!i)return Po.create(p.VALUE);let a=t.toUpperCase();if(!(i&&Uo.has(a))&&this._functionService.hasExecutor(a)){let e=this.create(a);return r?e.setParent(r):n&&e.setParent(n),e}}_isParentUnionNode(e){var t;return((t=e.getParent())==null||(t=t.getParent())==null?void 0:t.getToken())===S.COLON}};ns=un([A(0,Jo),A(1,fr),A(2,jo),A(3,fn),A(4,(0,t.Inject)(t.Injector)),A(5,(0,t.Inject)(nr))],ns);let rs=class extends t.Disposable{constructor(e){super(),this._runtimeService=e}async executeAsync(e){if(!e||!e.node)return Promise.resolve(E.create(p.VALUE));let t=e.node,n=e.refOffsetX,r=e.refOffsetY;await this._executeAsync(t,n,r);let i=t.getValue();return i==null?Promise.resolve(E.create(p.VALUE)):Promise.resolve(i)}execute(e){if(!e||!e.node)return E.create(p.VALUE);let t=e.node,n=e.refOffsetX,r=e.refOffsetY;this._execute(t,n,r);let i=t.getValue();return i==null?E.create(p.VALUE):i}executePreCalculateNode(e){return e.execute(),e.getValue()}checkAsyncNode(e){if(e==null)return!1;let t=[];this._checkAsyncNode(e,t);for(let e=0,n=t.length;e<n;e++)if(t[e]===!0)return!0;return!1}_checkAsyncNode(e,t){let n=e.getChildren(),r=n.length;for(let e=0;e<r;e++){let r=n[e];t.push(r.isAsync()),this._checkAsyncNode(r,t)}}async _executeAsync(e,t=0,n=0){if(this._runtimeService.isStopExecution())return Promise.resolve(a.ERROR);let r=e.getChildren(),i=r.length;for(let e=0;e<i;e++){let i=r[e];if(i.getToken().toUpperCase()===`LAMBDA`&&i.isEmptyParamFunction()){i.execute();continue}await this._executeAsync(i,t,n)}return e.nodeType===H.REFERENCE&&e.setRefOffset(t,n),e.nodeType===H.FUNCTION&&e.isAsync()?await e.executeAsync():e.execute(),Promise.resolve(a.SUCCESS)}_execute(e,t=0,n=0){if(this._runtimeService.isStopExecution())return a.ERROR;let r=e.getChildren(),i=r.length;for(let e=0;e<i;e++){let i=r[e];if(i.getToken().toUpperCase()===`LAMBDA`&&i.isEmptyParamFunction()){i.execute();continue}this._execute(i,t,n)}return e.nodeType===H.REFERENCE&&e.setRefOffset(t,n),e.execute(),a.SUCCESS}};rs=un([A(0,jo)],rs);function is(e){return e instanceof j?e.getToken()===`L_1`:!1}function as(e){return e instanceof j?e.getToken()===Mt:!1}function os(e,t,n){let r=e.getChildren(),i=r.length,a=r[0];for(let e=0;e<i;e++){let i=r[e];if(!(is(a)&&e!==0))if(i instanceof j)os(i,t,n);else{let a=i.trim();if(n.has(a)){let i=new j;i.setToken(`LR_1`),i.setLambdaId(t),i.setLambdaPrivacyVar(n),i.setLambdaParameter(a),r[e]=i}}}}function ss(e){let t=e;for(;t!=null&&t.getParent();)t=t.getParent();return t}function cs(e,t=0,n=0){return{node:e,refOffsetX:t,refOffsetY:n}}function ls(e){if(!e)return;if(e.getToken()!==`LR_1`)return e;let t=e,n=t.getCurrentLambdaPrivacyVar(),r=t.getLambdaParameter();if(!n)return;let i=n.get(r);return i==null&&e.getValue()?e:ls(i)}var us=class e extends ee{static create(t,n,r){return new e(t,n,r)}constructor(e,t,n){super(0),this._lambdaNode=e,this._interpreter=t,this._lambdaPrivacyVarKeys=n,d(this,`_lambdaPrivacyValueMap`,new Map),this._lambdaPrivacyValueMap.clear()}dispose(){this._lambdaPrivacyValueMap.clear(),this._lambdaPrivacyValueMap=new Map,this._lambdaNode=null,this._interpreter=null,this._lambdaPrivacyVarKeys=[]}isLambda(){return!0}execute(...e){let t=this._lambdaPrivacyVarKeys.length;if(e.length!==t||!this._interpreter||!this._lambdaNode)return E.create(p.VALUE);this._setLambdaPrivacyValueMap(e),this._setLambdaNodeValue(this._lambdaNode),this._lambdaNode.setNotEmpty(!1);let n;if(this._interpreter.checkAsyncNode(this._lambdaNode))n=new ro(this._interpreter.executeAsync(cs(this._lambdaNode)));else{let e=this._interpreter.execute(cs(this._lambdaNode));n=e.isReferenceObject()?e.toArrayValueObject():e}return this._lambdaNode.setNotEmpty(!0),n}executeCustom(...e){let t=e.map(e=>$a.create(e));return this.execute(...t)}_setLambdaNodeValue(e){if(!e)return;let t=e.getChildren(),n=t.length;for(let e=0;e<n;e++){let n=t[e];if(n.getToken()===`LR_1`){let e=n.getLambdaParameter(),t=this._lambdaPrivacyValueMap.get(e);if(t)n.setValue(t);else{let t=ls(n.getCurrentLambdaPrivacyVar().get(e));t!=null&&n.setValue(t.getValue())}continue}this._setLambdaNodeValue(n)}}_setLambdaPrivacyValueMap(e){for(let t=0;t<e.length;t++){let n=e[t],r=this._lambdaPrivacyVarKeys[t];this._lambdaPrivacyValueMap.set(r,n)}}getLambdaPrivacyVarKeys(){return this._lambdaPrivacyVarKeys}},ds=class extends No{constructor(e,t,n,r,i){super(e),this._lambdaId=t,this._interpreter=n,this._lambdaPrivacyVarKeys=r,this._runtimeService=i,d(this,`_isNotEmpty`,!0)}get nodeType(){return H.LAMBDA}setNotEmpty(e=!1){this._isNotEmpty=e}isEmptyParamFunction(){return this.getChildren().length<2&&this._isNotEmpty}isFunctionParameter(){return this._lambdaId===null}getLambdaId(){return this._lambdaId}execute(){if(this.isEmptyParamFunction())this.setValue(us.create(this,this._interpreter,this._lambdaPrivacyVarKeys));else{let e=this.getChildren(),t=e.length;this.setValue(e[t-1].getValue())}this._runtimeService.setUnitArrayFormulaEmbeddedMap()}};let fs=class extends Fo{constructor(e,t){super(),this._runtimeService=e,this._interpreter=t}get zIndex(){return Mo.get(H.LAMBDA)||100}create(e){let n=e.getChildren(),r=n[0],i=n.slice(1,-1),a=n[n.length-1];if(!(r instanceof j&&a instanceof j))return Po.create(p.NAME);if(r.getToken()===`L_1`){let e=r.getChildren();if(i.length!==e.length)return Po.create(p.VALUE)}else i=n.slice(0,-1);let o=(0,t.generateRandomId)(8),s=new Map;for(let e=0;e<i.length;e++){let t=i[e];if(t instanceof j){let e=t.getChildren()[0];t.setToken(Mt),s.set(e.trim(),void 0)}else return Po.create(p.VALUE)}return this._runtimeService.registerFunctionDefinitionPrivacyVar(o,s),this._updateLambdaStatement(a,o,s),new ds(e.getToken(),o,this._interpreter,[...s.keys()],this._runtimeService)}checkAndCreateNodeType(e){if(e instanceof j&&e.getToken().trim().toUpperCase()===`LAMBDA`)return this.create(e)}_updateLambdaStatement(e,t,n){os(e,t,n)}};fs=un([A(0,jo),A(1,(0,t.Inject)(rs))],fs);function ps(e){if(!e)return;if(e.getToken()!==`LR_1`)return e;let t=e,n=t.getCurrentLambdaPrivacyVar(),r=t.getLambdaParameter();if(n)return ps(n.get(r))}var ms=class extends No{constructor(e,t,n){super(e),this._lambdaParameter=t,this._currentLambdaPrivacyVar=n}getLambdaParameter(){return this._lambdaParameter}getCurrentLambdaPrivacyVar(){return this._currentLambdaPrivacyVar}get nodeType(){return H.LAMBDA_PARAMETER}execute(){let e=ps(this._currentLambdaPrivacyVar.get(this._lambdaParameter));if(e)this.setValue(e.getValue());else{let e=this.getValue();(e==null||e.isError())&&this.setValue(E.create(p.NAME))}}},hs=class extends Fo{get zIndex(){return Mo.get(H.LAMBDA_PARAMETER)||100}create(e){let t=e.getFunctionDefinitionPrivacyVar(),n=e.getLambdaParameter();return t?new ms(e.getToken(),n,t):new Po(p.NAME)}checkAndCreateNodeType(e){if(e instanceof j&&e.getToken().trim()===`LR_1`)return this.create(e)}},gs=class extends No{constructor(e){super(e),this._operatorString=e}get nodeType(){return H.NULL}execute(){this.setValue(Ua.create())}},_s=class extends No{constructor(e,t,n){super(e),this._functionExecutor=t,this._runtimeService=n}get nodeType(){return H.OPERATOR}execute(){let e=this.getChildren();this._functionExecutor.name===Xo.COMPARE&&this._functionExecutor.setCompareType(this.getToken());let t=e[0],n=e[1],r=t==null?void 0:t.getValue(),i=n==null?void 0:n.getValue(),a=this.getToken();if((r==null||i==null)&&a!==_.MINUS&&a!==_.PLUS){this.setValue(E.create(p.VALUE));return}r==null&&(r=Ua.create()),i==null&&(i=Ua.create()),r.isReferenceObject()&&(r=r.toArrayValueObject()),i.isReferenceObject()&&(i=i.toArrayValueObject());let o=this._functionExecutor.calculate(r,i);this._setEmbeddedArrayFormulaToResult(o),this.setValue(o)}_setEmbeddedArrayFormulaToResult(e){if(!e.isArray())return;let t=e.getRowCount(),n=e.getColumnCount();t<=1&&n<=1||this._runtimeService.setUnitArrayFormulaEmbeddedMap()}};let vs=class extends Fo{constructor(e,t){super(),this._functionService=e,this._runtimeService=t}get zIndex(){return Mo.get(H.OPERATOR)||100}create(e){let t=``,n=e;n===_.PLUS?t=Xo.PLUS:n===_.MINUS?t=Xo.MINUS:n===_.MULTIPLY?t=Xo.MULTIPLY:n===_.DIVIDED?t=Xo.DIVIDED:n===_.CONCATENATE?t=J.CONCATENATE:n===_.POWER?t=K.POWER:x.has(n)&&(t=Xo.COMPARE);let r=this._functionService.getExecutor(t);return r?new _s(n,r,this._runtimeService):(console.error(`No function ${e}`),Po.create(p.NAME))}checkAndCreateNodeType(e){if(e instanceof j)return;let t=e.trim();if(!(t.charAt(0)===`"`&&t.charAt(t.length-1)===`"`)&&b.has(t))return this.create(t)}};vs=un([A(0,Jo),A(1,jo)],vs);var ys=class extends no{constructor(e,t,n,r){super(e),this._tableData=t,this._columnDataString=n,this._tableOptionMap=r,d(this,`_isCurrentRowForRange`,!1);let{sheetId:i,range:a,titleMap:s}=this._tableData;this.setForcedSheetIdDirect(i);let{startColumn:c,endColumn:l,type:u}=this._parseStructuredRef(this._columnDataString,s),f=a.startRow,p=a.endRow,m=-1,h=-1;switch(u){case o.ALL:m=f,h=p;break;case o.DATA:m=f+1,h=p;break;case o.HEADERS:m=f,h=f;break;case o.TOTALS:m=p,h=p;break;case o.THIS_ROW:{let e=this._resolveThisRow(f,p);m=e,h=e;break}default:m=f+1,h=p;break}this.setRangeData({startColumn:c,endColumn:l,startRow:m,endRow:h})}getRangeData(){let e=super.getRangeData();if(this._isCurrentRowForRange){let{startRow:t,startColumn:n,endRow:r,endColumn:i}=e,a=this.getCurrentRow();return{startRow:a==null?t:a,endRow:a==null?r:a,startColumn:n,endColumn:i}}return e}getRefOffset(){return{x:0,y:0}}isTable(){return!0}isCurrentRowForRange(){return this._isCurrentRowForRange}setForcedSheetId(e){}_parseStructuredRef(e,t){var n,r;let{range:i}=this._tableData,a=(n=i.startColumn)==null?0:n,s=(r=i.endColumn)==null?0:r;if(!e||e.trim().length===0)return{startColumn:a,endColumn:s,type:o.DATA};let c=e.trim();if(c[0]!==`[`){let e=this._mapSection(c);if(e!==void 0)return{startColumn:a,endColumn:s,type:e};let{startColumn:n,endColumn:r}=this._parseColumnOrRange(c,t,a);return{startColumn:n,endColumn:r,type:o.DATA}}let l=this._stripOuterBracketOnce(c),u=this._findCommaAtTopLevel(l);if(l.length===0)return{startColumn:a,endColumn:s,type:o.DATA};if(u===-1){if(l.startsWith(`#`)){let e=this._mapSection(l);return e===void 0?{startColumn:a,endColumn:s,type:o.DATA}:{startColumn:a,endColumn:s,type:e}}let{startColumn:e,endColumn:n}=this._parseColumnOrRange(l,t,a);return{startColumn:e,endColumn:n,type:o.DATA}}let d=l.slice(0,u).trim(),f=l.slice(u+1).trim(),p=this._parseSectionMaybeBracketed(d),{startColumn:m,endColumn:h}=this._parseColumnOrRange(f,t,a);return{startColumn:m,endColumn:h,type:p}}_stripOuterBracketOnce(e){return e.length>=2&&e[0]===`[`&&e[e.length-1]===`]`?e.slice(1,-1):e}_findCommaAtTopLevel(e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];if(r===`[`)t++;else if(r===`]`)t=Math.max(0,t-1);else if(r===S.COMMA&&t===0)return n}return-1}_parseSectionMaybeBracketed(e){let t=e.trim(),n=t.startsWith(`[`)&&t.endsWith(`]`)?this._stripOuterBracketOnce(t):t,r=this._mapSection(n);return r==null?o.DATA:r}_mapSection(e){let t=e.trim();if(!t.startsWith(`#`))return;let n=this._tableOptionMap.get(t);if(n!==void 0)return n;let r=t.replace(/\s+/g,` `).toLowerCase();for(let[e,t]of this._tableOptionMap.entries())if(e.replace(/\s+/g,` `).toLowerCase()===r)return t}_parseColumnOrRange(e,t,n){let r=e.trim(),i=this._findColonAtTopLevel(r);if(i===-1){let e=this._stripOuterBracketIfAny(r),i=this._titleToIndex(e,t);return{startColumn:n+i,endColumn:+n+i}}let a=r.slice(0,i).trim(),o=r.slice(i+1).trim(),s=this._stripOuterBracketIfAny(a),c=this._stripOuterBracketIfAny(o),l=this._titleToIndex(s,t),u=this._titleToIndex(c,t);return l!==-1&&u!==-1&&l>u?{startColumn:n+u,endColumn:n+l}:{startColumn:n+l,endColumn:n+u}}_stripOuterBracketIfAny(e){return e.length>=2&&e[0]===`[`&&e[e.length-1]===`]`?e.slice(1,-1):e}_findColonAtTopLevel(e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];if(r===`[`)t++;else if(r===`]`)t=Math.max(0,t-1);else if(r===S.COLON&&t===0)return n}return-1}_titleToIndex(e,t){var n;let r=e.trim(),i=t.get(r);if(i!==void 0)return i;let a=r.replace(/\u3000/g,` `).trim();return(n=t.get(a))==null?-1:n}_resolveThisRow(e,t){return this._isCurrentRowForRange=!0,Math.min(e+1,t)}},bs=class extends No{constructor(e,t,n,r,i=!1,a){super(n),this._currentConfigService=e,this._runtimeService=t,this._referenceObjectType=r,this._isPrepareMerge=i,this._tableReferenceObject=a,d(this,`_refOffsetX`,0),d(this,`_refOffsetY`,0)}get nodeType(){return H.REFERENCE}execute(){let e=this._currentConfigService,t=this._runtimeService,n=this._tableReferenceObject||wo(this.getToken(),this._referenceObjectType);n.setDefaultUnitId(t.currentUnitId),n.setDefaultSheetId(t.currentSubUnitId),n.setForcedSheetId(e.getSheetNameMap()),n.setUnitData(e.getUnitData()),n.setArrayFormulaCellData(e.getArrayFormulaCellData()),n.setArrayFormulaRange(e.getArrayFormulaRange()),n.setRuntimeData(t.getUnitData()),n.setUnitStylesData(e.getUnitStylesData()),n.setRuntimeArrayFormulaCellData(t.getRuntimeArrayFormulaCellData()),n.setRuntimeArrayFormulaRange(t.getUnitArrayFormula()),n.setRuntimeFeatureCellData(t.getRuntimeFeatureCellData());let r=t.currentRow,i=t.currentColumn;n.setCurrentRowAndColumn(r,i);let{x:a,y:o}=this.getRefOffset();n.setRefOffset(a,o),!this._isPrepareMerge&&n.isExceedRange()?this.setValue(E.create(p.NAME)):this.setValue(n)}setRefOffset(e=0,t=0){this._refOffsetX=e,this._refOffsetY=t}getRefOffset(){return{x:this._refOffsetX,y:this._refOffsetY}}};let xs=class extends Fo{constructor(e,t,n,r){super(),this._currentConfigService=e,this._formulaRuntimeService=t,this._functionService=n,this._superTableService=r}get zIndex(){return Mo.get(H.REFERENCE)||100}checkAndCreateNodeType(e){let t=!1,n,r=!1;if(e instanceof j){var i;t=!0,n=e.getToken().trim(),((i=e.getParent())==null||(i=i.getParent())==null?void 0:i.getToken().trim())===S.COLON&&(r=!0)}else n=e.trim();let{tokenTrim:a,minusPrefixNode:o,atPrefixNode:s}=$o(n,this._functionService,this._formulaRuntimeService);if(!t&&a.charAt(0)===`"`&&a.charAt(a.length-1)===`"`)return;let c=this._getNode(a,t,r,e);if(c)return s?c.setParent(s):o&&c.setParent(o),c}_getTableMap(){let e=this._currentConfigService.getExecuteUnitId();if(e)return this._superTableService.getTableMap(e)}_getNode(e,t,n,r){var i;let a=this._currentConfigService,o=this._formulaRuntimeService,s=t=>new bs(a,o,e,t,n),c=this._getTableMap();if((i=c==null?void 0:c.has(e))!=null&&i)return this._getTableReferenceNode(e,t,n,!0);if(vt(e))return s(Co.CELL);let l=t&&this._checkParentIsUnionOperator(r);return l&&St(e)?s(Co.ROW):l&&Ct(e)?s(Co.COLUMN):this._getTableReferenceNode(e,t,n,!1)}_getTableReferenceNode(e,t,n,r=!1){if(!this._checkTokenIsTableReference(e)&&!r)return;let{tableName:i,columnStruct:a}=ln(e),o=this._getTableMap();if(!t&&o!=null&&o.has(i)){let t=a,r=o.get(i),s=this._superTableService.getTableOptionMap();return new bs(this._currentConfigService,this._formulaRuntimeService,e,Co.COLUMN,n,new ys(e,r,t,s))}}_checkTokenIsTableReference(e){return wt(e)||Tt(e)||Et(e)||Dt(e)}_checkParentIsUnionOperator(e){var t;return((t=e.getParent())==null||(t=t.getParent())==null?void 0:t.getToken().trim())===S.COLON}};xs=un([A(0,fr),A(1,jo),A(2,Jo),A(3,Rn)],xs);var Ss=class extends No{constructor(e,t,n,r){super(n),this._currentConfigService=e,this._lexer=t,this._operatorString=n,this._functionExecutor=r}get nodeType(){return H.SUFFIX}execute(){var e;let t=(e=this.getChildren()[0])==null?void 0:e.getValue(),n;if(t==null){this.setValue(E.create(p.ERROR));return}if(this._operatorString===C.PERCENTAGE){if(t.isReferenceObject()&&(t=t.toArrayValueObject()),n=this._functionExecutor.calculate(t,R.create(100)),n.isNumber()){let e=Number(n.getValue());n=R.create(e,`0.00%`)}}else n=this._operatorString===C.POUND?this._handlerPound(t):E.create(p.VALUE);this.setValue(n)}_handlerPound(e){var t;if(!e.isReferenceObject()||!e.isCell())return E.create(p.VALUE);let n=e,r=n.getRangePosition(),i=n.getUnitId(),a=n.getSheetId(),o=this._currentConfigService.getFormulaData(),s=o==null||(t=o[i])==null||(t=t[a])==null||(t=t[r.startRow])==null||(t=t[r.startColumn])==null?void 0:t.f;return s&&this._lexer.treeBuilder(s),E.create(p.VALUE)}};let Cs=class extends Fo{constructor(e,t,n){super(),this._functionService=e,this._lexer=t,this._currentConfigService=n}get zIndex(){return Mo.get(H.SUFFIX)||100}checkAndCreateNodeType(e){if(!(e instanceof j))return;let t=e.getToken().trim();if(t.charAt(0)===`"`&&t.charAt(t.length-1)===`"`)return;let n=``;if(t===C.PERCENTAGE)n=Xo.DIVIDED;else if(t===C.POUND)return new Ss(this._currentConfigService,this._lexer,t);else return;let r=this._functionService.getExecutor(n);return r?new Ss(this._currentConfigService,this._lexer,t,r):(console.error(`No function ${e}`),Po.create(p.NAME))}};Cs=un([A(0,Jo),A(1,(0,t.Inject)(pr)),A(2,fr)],Cs);var ws=class extends No{constructor(e){super(e)}get nodeType(){return H.UNION}execute(){let e=this.getChildren(),t=e[0],n=e[1],r=t.getValue(),i=n.getValue();if(r==null||i==null){console.error(`UnionNode execute leftNode or rightNode is null`),this.setValue(E.create(p.VALUE));return}let a;a=this.getToken()===S.COLON?this._unionFunction(r,i):E.create(p.NAME),this.setValue(a)}_unionFunction(e,t){return e.isError()||t.isError()||!e.isReferenceObject()||!t.isReferenceObject()?E.create(p.REF):(e=e,t=t,To(e,t))}};let Ts=class extends Fo{constructor(e){super(),this._functionService=e}get zIndex(){return Mo.get(H.UNION)||100}create(e){return new ws(e)}checkAndCreateNodeType(e){if(!(e instanceof j))return;let t=e.getToken().trim();if(!(t.charAt(0)===`"`&&t.charAt(t.length-1)===`"`)&&t===S.COLON)return this.create(t)}};Ts=un([A(0,Jo)],Ts);var Es=class extends No{constructor(e){super(e)}get nodeType(){return H.VALUE}execute(){let e=this.getParent(),t=!0;if((e==null?void 0:e.nodeType)===H.FUNCTION){var n,r;t=(n=(r=e.isFunctionExecutorArgumentsIgnoreNumberPattern)==null?void 0:r.call(e))==null?!0:n}this.setValue($a.create(this.getToken(),t))}},Ds=class extends Fo{get zIndex(){return Mo.get(H.VALUE)||100}_checkValueNode(e){if(Number.isNaN(Number(e))){let t=e.trim(),n=t.charAt(0),r=t.charAt(t.length-1);if(m.has(t)||n===`"`&&r===`"`||n===`{`&&r===`}`)return this.create(t);let a=t.toUpperCase();if(a===i.TRUE||a===i.FALSE)return this.create(a)}else return this.create(e)}create(e){return new Es(e)}checkAndCreateNodeType(e){if(!(e instanceof j))return this._checkValueNode(e)}};let Os=class extends t.Disposable{constructor(e,t,n,r,i,a,o,s,c,l,u){super(),this._runtimeService=e,this._astRootNodeFactory=t,this._functionNodeFactory=n,this._lambdaNodeFactory=r,this._lambdaParameterNodeFactory=i,this._operatorNodeFactory=a,this._prefixNodeFactory=o,this._referenceNodeFactory=s,this._suffixNodeFactory=c,this._unionNodeFactory=l,this._valueNodeFactory=u,d(this,`_astNodeFactoryList`,[]),this._initializeAstNode()}dispose(){this._astNodeFactoryList.forEach(e=>{e.dispose()}),this._astNodeFactoryList=[]}parse(e){let t=new Io(`R_1`),n=this._parse(e,t);return e.hasDefinedNames()&&(n==null||n.setDefinedNames(e.getDefinedNames())),n}_lambdaParameterHandler(e,t){if(t.getLambdaId==null)return Po.create(p.VALUE);let n=t.getLambdaId(),r=new Io(`R_1`),i=this._runtimeService.getFunctionDefinitionPrivacyVar(n);if(!i)return!1;let a=[...i.keys()],o=e.getChildren(),s=o.length;for(let e=0;e<s;e++){let t=o[e];if(t instanceof j){os(t,n,i),this._parse(t,r);let o=r.getChildren()[e];o!=null&&i.set(a[e],o)}else return!1}return r.setParent(t),t}_changeLetToLambda(e){let t=e.getChildren(),n=t.length;if(n%2!=1||n===0)return;let r=new j;r.setToken(Nt);let i=new j;i.setToken(`L_1`);let a=[...t];for(let e=0;e<n;e++){let t=a[e];if(!(t instanceof j))return;e%2==0?t.changeToParent(r):t.changeToParent(i)}r.addChildrenFirst(i),i.setParent(r);let o=e.getParent();return o==null||o.replaceChild(e,r),r}_parse(e,t){let n=e.getChildren(),r=n.length,i=[],a=null,o=e.getToken().trim().toUpperCase();if(o===`LET`){let n=this._changeLetToLambda(e);return n==null?Po.create(p.ERROR):this._parse(n,t)}if(o===`P_1`){if(a=t,r===0)return new gs(`R_1`).setParent(t),a}else{if(o===`L_1`){let n=this._lambdaParameterHandler(e,t);return n===!1&&(n=Po.create(p.ERROR)),n}if(a=this._checkAstNode(e),a==null)return Po.create(p.NAME)}let s=n[0];for(let e=0;e<r;e++){let t=n[e];if(is(s)){if(e!==0&&e!==r-1)continue}else if(as(t)&&e!==r-1)continue;let o=null;if(t instanceof j){if(t.getToken()===`P_1`&&t.getChildren().length===0){var c;let e=(c=t.getParent())==null?void 0:c.getChildren();if(e&&e.length===1)return Po.create(p.NAME)}if(o=this._parse(t,a),o===a)continue}else o=this._checkAstNode(t);if(o==null)return Po.create(p.NAME);if(o=ss(o),o==null||(o==null?void 0:o.nodeType)===H.ERROR)return o;switch(o.nodeType){case H.FUNCTION:{let e=o.getToken().trim().toUpperCase();Pt.has(e)&&o.setForcedCalculateFunction(),i.push(o);break}case H.LAMBDA:i.push(o);break;case H.LAMBDA_PARAMETER:i.push(o);break;case H.OPERATOR:{let e=i.pop(),t=i.pop();t&&t.setParent(o),e&&e.setParent(o),i.push(o);break}case H.REFERENCE:i.push(o);break;case H.ROOT:i.push(o);break;case H.UNION:i.push(o);break;case H.VALUE:i.push(o);break;case H.PREFIX:i.push(o);break;case H.SUFFIX:i.push(o);break}}let l=i.length;for(let e=0;e<l;e++)i[e].setParent(a);return a}_checkAstNode(e){let t=null,n=this._astNodeFactoryList.length;for(let r=0;r<n&&(t=this._astNodeFactoryList[r].checkAndCreateNodeType(e),t==null);r++);return t==null?new ts:t}_initializeAstNode(){this._astNodeFactoryList=[this._astRootNodeFactory,this._functionNodeFactory,this._lambdaNodeFactory,this._lambdaParameterNodeFactory,this._operatorNodeFactory,this._prefixNodeFactory,this._referenceNodeFactory,this._suffixNodeFactory,this._unionNodeFactory,this._valueNodeFactory].sort(t.sortRules)}};Os=un([A(0,jo),A(1,(0,t.Inject)(Lo)),A(2,(0,t.Inject)(ns)),A(3,(0,t.Inject)(fs)),A(4,(0,t.Inject)(hs)),A(5,(0,t.Inject)(vs)),A(6,(0,t.Inject)(Qo)),A(7,(0,t.Inject)(xs)),A(8,(0,t.Inject)(Cs)),A(9,(0,t.Inject)(Ts)),A(10,(0,t.Inject)(Ds))],Os);var ks=class extends t.Disposable{constructor(...e){super(...e),d(this,`_otherFormulaData`,new Map),d(this,`_featureFormulaData`,new Map),d(this,`_formulaData`,new Map),d(this,`_definedNameMap`,new Map),d(this,`_otherFormulaDataMainData`,new Set),d(this,`_dependencyRTreeCache`,new t.RTree),d(this,`_dependencyTreeIdLast`,0)}buildDependencyTree(e,t){throw Error(`Method not implemented.`)}getTreeById(e){throw Error(`Method not implemented.`)}getAllTree(){throw Error(`Method not implemented.`)}reset(){throw Error(`Method not implemented.`)}addOtherFormulaDependency(e,t,n,r){throw Error(`Method not implemented.`)}removeOtherFormulaDependency(e,t,n){throw Error(`Method not implemented.`)}clearOtherFormulaDependency(e,t){throw Error(`Method not implemented.`)}addFeatureFormulaDependency(e,t,n,r){throw Error(`Method not implemented.`)}removeFeatureFormulaDependency(e,t,n){throw Error(`Method not implemented.`)}clearFeatureFormulaDependency(e,t){throw Error(`Method not implemented.`)}addFormulaDependency(e,t,n,r,i){throw Error(`Method not implemented.`)}removeFormulaDependency(e,t,n,r){throw Error(`Method not implemented.`)}clearFormulaDependency(e,t){throw Error(`Method not implemented.`)}removeFormulaDependencyByDefinedName(e,t){throw Error(`Method not implemented.`)}searchDependency(e,t){return this._dependencyRTreeCache.bulkSearch(e,t)}_restDependencyTreeId(){this._dependencyTreeIdLast=0}getOtherFormulaDependency(e,t,n){var r;return(r=this._otherFormulaData.get(e))==null||(r=r.get(t))==null?void 0:r.get(n)}addOtherFormulaDependencyMainData(e){this._otherFormulaDataMainData.add(e)}hasOtherFormulaDataMainData(e){return this._otherFormulaDataMainData.has(e)}_removeDependencyRTreeCacheById(e,t){this._dependencyRTreeCache.removeById(e,t)}getFeatureFormulaDependency(e,t,n){var r;return(r=this._featureFormulaData.get(e))==null||(r=r.get(t))==null?void 0:r.get(n)}getFormulaDependency(e,t,n,r){var i;return(i=this._formulaData.get(e))==null||(i=i.get(t))==null?void 0:i.getValue(n,r)}addDependencyRTreeCache(e){let t=[];for(let n=0;n<e.rangeList.length;n++){let{unitId:r,sheetId:i,range:a}=e.rangeList[n];t.push({unitId:r,sheetId:i,range:a,id:e.treeId})}this._dependencyRTreeCache.bulkInsert(t),this._addAllTreeMap(e)}getLastTreeId(){let e=this._dependencyTreeIdLast;return this._dependencyTreeIdLast++,e}_addAllTreeMap(e){throw Error(`Method not implemented.`)}_addDefinedName(e,t,n){this._definedNameMap.has(e)||this._definedNameMap.set(e,new Map);let r=this._definedNameMap.get(e);r.has(t)||r.set(t,new Set),r.get(t).add(n)}addFormulaDependencyByDefinedName(e,t){let n=e.treeId,r=(t==null?void 0:t.getDefinedNames())||[];for(let t of r)this._addDefinedName(e.unitId,t,n)}updateDependencyTreeDirtyState(e,t){throw Error(`Method not implemented.`)}},As=class extends ks{constructor(...e){super(...e),d(this,`_allTreeMap`,new Map)}dispose(){super.dispose(),this.reset()}buildDependencyTree(e,t=[]){let n=this.getAllTree();return e.length===0?(this._buildReverseDependency(n,t),n):(this._buildDependencyTree(n,e),this._buildReverseDependency(n,e),n)}_buildDependencyTree(e,t){let n=new Map;for(let e=0;e<t.length;e++){let r=t[e];n.set(r.treeId,r)}for(let t=0;t<e.length;t++){let r=e[t],i=r.toRTreeItem(),a=this._dependencyRTreeCache.bulkSearch(i);for(let e of a){let t=n.get(e);t&&r!==t&&!t.hasChildren(r.treeId)&&t.pushChildren(r)}}n.clear()}_buildReverseDependency(e,t){let n=new Map;for(let t=0;t<e.length;t++){let r=e[t];n.set(r.treeId,r)}for(let e=0;e<t.length;e++){let r=t[e],i=r.toRTreeItem(),a=this._dependencyRTreeCache.bulkSearch(i);for(let e of a){let t=n.get(e);t&&r!==t&&!t.hasChildren(r.treeId)&&t.pushChildren(r)}}n.clear()}getAllTree(){let e=[];return this._allTreeMap.forEach(t=>{t.resetState(),e.push(t)}),e}getTreeById(e){return this._allTreeMap.get(e)}reset(){this._otherFormulaData.clear(),this._featureFormulaData.clear(),this._formulaData.clear(),this._definedNameMap.clear(),this._otherFormulaDataMainData.clear(),this._dependencyRTreeCache.clear(),this._allTreeMap.clear(),this._restDependencyTreeId()}addOtherFormulaDependency(e,n,r,i){this._otherFormulaData.has(e)||this._otherFormulaData.set(e,new Map);let a=this._otherFormulaData.get(e);a.has(n)||a.set(n,new Map);let o=a.get(n);o.has(r)||o.set(r,new t.ObjectMatrix),o.get(r).setValue(i.refOffsetX,i.refOffsetY,i.treeId),this._addAllTreeMap(i)}removeOtherFormulaDependency(e,t,n){let r=this._otherFormulaData.get(e);if(r&&r.has(t)){let i=r.get(t);n.forEach(e=>{let t=i.get(e);t!=null&&(t.forValue((e,t,n)=>{this._removeDependencyRTreeCache(n),this.clearDependencyForTree(this._allTreeMap.get(n)),this._removeAllTreeMap(n)}),i.delete(e),this._otherFormulaDataMainData.delete(e))}),i.size===0&&r.delete(t),r.size===0&&this._otherFormulaData.delete(e)}}clearOtherFormulaDependency(e,t){let n=this._otherFormulaData.get(e);if(t&&n&&n.has(t)){let r=n.get(t);this._removeDependencyRTreeCacheById(e,t);for(let e of r.keys()){let t=r.get(e);t!=null&&(t.forValue((e,t,n)=>{let r=this._allTreeMap.get(n);r&&(this.clearDependencyForTree(r),this._removeAllTreeMap(n))}),this._otherFormulaDataMainData.delete(e))}r.clear()}else if(n){for(let t of n.keys()){let r=n.get(t);this._removeDependencyRTreeCacheById(e,t);for(let e of r.keys()){let t=r.get(e);t!=null&&(t.forValue((e,t,n)=>{let r=this._allTreeMap.get(n);r&&(this.clearDependencyForTree(r),this._removeAllTreeMap(n))}),this._otherFormulaDataMainData.delete(e))}}this._otherFormulaData.delete(e)}}addFeatureFormulaDependency(e,t,n,r){this._featureFormulaData.has(e)||this._featureFormulaData.set(e,new Map);let i=this._featureFormulaData.get(e);i.has(t)||i.set(t,new Map),i.get(t).set(n,r.treeId),this._addAllTreeMap(r)}removeFeatureFormulaDependency(e,t,n){let r=this._featureFormulaData.get(e);if(r&&r.has(t)){let e=r.get(t);n.forEach(t=>{let n=e.get(t);n!=null&&(this._removeDependencyRTreeCache(n),e.delete(t),this.clearDependencyForTree(this._allTreeMap.get(n)),this._removeAllTreeMap(n))})}}clearFeatureFormulaDependency(e,t){let n=this._featureFormulaData.get(e);if(t&&n&&n.has(t)){let r=n.get(t);this._removeDependencyRTreeCacheById(e,t),r.forEach(e=>{e!=null&&(this.clearDependencyForTree(this._allTreeMap.get(e)),this._removeAllTreeMap(e))}),r.clear()}else n&&(n.forEach((t,n)=>{this._removeDependencyRTreeCacheById(e,n),t.forEach(e=>{e!=null&&(this.clearDependencyForTree(this._allTreeMap.get(e)),this._removeAllTreeMap(e))})}),this._featureFormulaData.delete(e))}addFormulaDependency(e,n,r,i,a){this._formulaData.has(e)||this._formulaData.set(e,new Map);let o=this._formulaData.get(e);o.has(n)||o.set(n,new t.ObjectMatrix),o.get(n).setValue(r,i,a.treeId),this._addAllTreeMap(a)}removeFormulaDependency(e,t,n,r){let i=this._formulaData.get(e);if(i&&i.has(t)){let e=i.get(t),a=e.getValue(n,r);if(a==null)return;this._removeDependencyRTreeCache(a),e.realDeleteValue(n,r),this.clearDependencyForTree(this._allTreeMap.get(a)),this._removeAllTreeMap(a)}}clearFormulaDependency(e,t){let n=this._formulaData.get(e);if(t&&n&&n.has(t)){let r=n.get(t);this._removeDependencyRTreeCacheById(e,t),r.forValue((e,t,n)=>{if(n==null)return!0;this.clearDependencyForTree(this._allTreeMap.get(n)),this._removeAllTreeMap(n)}),r.reset()}else n&&(n.forEach((t,n)=>{this._removeDependencyRTreeCacheById(e,n),t.forValue((e,t,n)=>{if(n==null)return!0;this.clearDependencyForTree(this._allTreeMap.get(n)),this._removeAllTreeMap(n)})}),this._formulaData.delete(e))}clearDependencyForTree(e){if(e==null)return;let t=e.parents,n=e.children,r=this._allTreeMap;for(let n of t){let t=r.get(n);t==null||t.children.delete(e.treeId)}for(let t of n){let n=r.get(t);n==null||n.parents.delete(e.treeId)}e.dispose()}_removeDependencyRTreeCache(e){if(e==null)return;let t=this._allTreeMap.get(e);if(t){let n=[];for(let r=0;r<t.rangeList.length;r++){let{unitId:i,sheetId:a,range:o}=t.rangeList[r];n.push({unitId:i,sheetId:a,range:o,id:e})}this._dependencyRTreeCache.bulkRemove(n)}}removeFormulaDependencyByDefinedName(e,t){let n=this._definedNameMap.get(e);if(n){let e=n.get(t);if(e){for(let t of e)this._removeDependencyRTreeCache(t),this.clearDependencyForTree(this._allTreeMap.get(t)),this._removeAllTreeMap(t);e.clear()}}}_removeAllTreeMap(e){e!=null&&this._allTreeMap.delete(e)}_addAllTreeMap(e){this._allTreeMap.set(e.treeId,e)}updateDependencyTreeDirtyState(e,t){let n=this._allTreeMap.get(e);n&&(n.isDirty=t)}};let js=(0,t.createIdentifier)(`univer.formula.dependency-manager.service`);var Ms=class extends t.Disposable{constructor(...e){super(...e),d(this,`_referenceExecutorMap`,new Map),d(this,`_onChanged$`,new n.Subject),d(this,`onChanged$`,this._onChanged$.asObservable())}dispose(){super.dispose(),this._referenceExecutorMap.clear(),this._onChanged$.complete()}remove(e,t,n){n.forEach(n=>{var r;(r=this._referenceExecutorMap.get(e))==null||(r=r.get(t))==null||r.delete(n)}),this._onChanged$.next({unitId:e,subUnitId:t,featureIds:n})}get(e,t,n){var r;return(r=this._referenceExecutorMap.get(e))==null||(r=r.get(t))==null?void 0:r.get(n)}has(e,t,n){var r;return!!(!((r=this._referenceExecutorMap.get(e))==null||(r=r.get(t))==null)&&r.has(n))}register(e,t,n,r){let i=this._referenceExecutorMap.get(e);i||(i=new Map,this._referenceExecutorMap.set(e,i));let a=i.get(t);a||(a=new Map,i.set(t,a)),this._onChanged$.next({unitId:e,subUnitId:t,featureIds:[n]}),a.set(n,r)}getReferenceExecutorMap(){return this._referenceExecutorMap}};let Ns=(0,t.createIdentifier)(`univer.formula.feature-calculation-manager.service`);var Ps=class extends t.Disposable{constructor(...e){super(...e),d(this,`_otherFormulaData`,{})}dispose(){super.dispose(),this._otherFormulaData={}}remove(e){var t;let{unitId:n,subUnitId:r,formulaId:i}=e;(t=this._otherFormulaData)==null||(t=t[n])==null||(t=t[r])==null||delete t[i]}get(e){var t;let{unitId:n,subUnitId:r,formulaId:i}=e;return(t=this._otherFormulaData[n])==null||(t=t[r])==null?void 0:t[i]}has(e){var t;let{unitId:n,subUnitId:r,formulaId:i}=e;return((t=this._otherFormulaData[n])==null||(t=t[r])==null?void 0:t[i])!=null}register(e){let{unitId:t,subUnitId:n,formulaId:r,item:i}=e;this._otherFormulaData[t]||(this._otherFormulaData[t]={}),this._otherFormulaData[t][n]||(this._otherFormulaData[t][n]={}),this._otherFormulaData[t][n][r]=i}batchRegister(e){Object.keys(e).forEach(t=>{let n=e[t];if(n==null)return!0;Object.keys(n).forEach(e=>{let r=n[e];if(r==null)return!0;Object.keys(r).forEach(n=>{let i=r[n];if(i==null)return!0;this.register({unitId:t,subUnitId:e,formulaId:n,item:i})})})})}batchRemove(e){Object.keys(e).forEach(t=>{let n=e[t];if(n==null)return!0;Object.keys(n).forEach(e=>{let r=n[e];if(r==null)return!0;Object.keys(r).forEach(n=>{this.remove({unitId:t,subUnitId:e,formulaId:n})})})})}getOtherFormulaData(){return this._otherFormulaData}};let Fs=(0,t.createIdentifier)(`univer.formula.other-formula-manager.service`),Is=function(e){return e[e.DEFAULT=0]=`DEFAULT`,e[e.ADDED=1]=`ADDED`,e[e.SKIP=2]=`SKIP`,e}({}),Ls=function(e){return e[e.NORMAL_FORMULA=0]=`NORMAL_FORMULA`,e[e.OTHER_FORMULA=1]=`OTHER_FORMULA`,e[e.FEATURE_FORMULA=2]=`FEATURE_FORMULA`,e}({});var Rs=class{constructor(){d(this,`_state`,Is.DEFAULT),d(this,`type`,Ls.NORMAL_FORMULA),d(this,`treeId`,void 0),d(this,`children`,new Set),d(this,`parents`,new Set)}resetState(){this._state=Is.DEFAULT}setAdded(){this._state=Is.ADDED}isAdded(){return this._state===Is.ADDED}setSkip(){this._state=Is.SKIP}isSkip(){return this._state===Is.SKIP}pushChildren(e){this.children.add(e.treeId),e._pushParent(this)}hasChildren(e){return this.children.has(e)}_pushParent(e){this.parents.add(e.treeId)}},zs=class extends Rs{constructor(...e){super(...e),d(this,`refTree`,void 0),d(this,`refOffsetX`,-1),d(this,`refOffsetY`,-1),d(this,`isCache`,!1),d(this,`isDirty`,!1),d(this,`addressFunctionNodes`,[]),d(this,`getDirtyData`,void 0),d(this,`featureId`,void 0)}get isVirtual(){return!0}get row(){return this.refTree==null?-1:this.refTree.row+this.refOffsetY}get column(){return this.refTree==null?-1:this.refTree.column+this.refOffsetX}get rowCount(){return this.refTree==null?0:this.refTree.rowCount}get columnCount(){return this.refTree==null?0:this.refTree.columnCount}get unitId(){return this.refTree==null?``:this.refTree.unitId}get subUnitId(){return this.refTree==null?``:this.refTree.subUnitId}get formula(){var e,t;return(e=(t=this.refTree)==null?void 0:t.formula)==null?``:e}get nodeData(){return{node:this.node,refOffsetX:this.refOffsetX,refOffsetY:this.refOffsetY}}get node(){var e;return(e=this.refTree)==null?void 0:e.node}dispose(){this.refTree=null}get rangeList(){let e=[];if(this.refTree==null)return[];for(let n=0;n<this.refTree.rangeList.length;n++){let r=this.refTree.rangeList[n];e.push({unitId:r.unitId,sheetId:r.sheetId,range:(0,t.moveRangeByOffset)(r.range,this.refOffsetX,this.refOffsetY)})}return e}toRTreeItem(){let e=this.row,t=this.column;return[{unitId:this.unitId,sheetId:this.subUnitId,range:{startRow:e,startColumn:t,endRow:e,endColumn:t}}]}inRangeData(e){let t=e.startRow,n=e.startColumn,r=e.endRow,i=e.endColumn,a=this.row,o=this.column;return!(a<t||a>r||o<n||o>i)}dependencySheetName(e){return this.refTree==null?!1:this.refTree.dependencySheetName(e)}isExcludeRange(e){let t=this.rangeList;if(t.length===0)return!1;for(let r=0,i=t.length;r<i;r++){var n;let{unitId:i,sheetId:a,range:o}=t[r],s=e==null||(n=e[i])==null?void 0:n[a],{startRow:c,endRow:l,startColumn:u,endColumn:d}=o;Number.isNaN(c)&&(c=0),Number.isNaN(u)&&(u=0),Number.isNaN(l)&&(l=1/0),Number.isNaN(d)&&(d=1/0);let f=!1;if(s==null||s.forValue((e,t)=>{if(e>=c&&e<=l&&t>=u&&t<=d)return f=!0,!1}),f)return!0}return!1}get formulaId(){return this.refTree==null?``:this.refTree.formulaId}},Bs=class extends Rs{constructor(e){super(),d(this,`isCache`,!1),d(this,`featureId`,void 0),d(this,`featureDirtyRanges`,[]),d(this,`refOffsetX`,0),d(this,`refOffsetY`,0),d(this,`formulaId`,void 0),d(this,`subUnitId`,``),d(this,`unitId`,``),d(this,`rangeList`,[]),d(this,`formula`,``),d(this,`row`,-1),d(this,`column`,-1),d(this,`rowCount`,-1/0),d(this,`columnCount`,-1/0),d(this,`isDirty`,!1),d(this,`node`,void 0),d(this,`addressFunctionNodes`,[]),d(this,`getDirtyData`,void 0),this.treeId=e}get isVirtual(){return!1}get nodeData(){return{node:this.node,refOffsetX:0,refOffsetY:0}}toJson(){return{formula:this.formula,refOffsetX:this.refOffsetX,refOffsetY:this.refOffsetY}}dispose(){this.featureDirtyRanges=[],this.rangeList=[],this.addressFunctionNodes=[],this.getDirtyData=null}inRangeData(e){let t=e.startRow,n=e.startColumn,r=e.endRow,i=e.endColumn,a=this.row,o=this.column;return!(a<t||a>r||o<n||o>i)}dependencySheetName(e){let t=this.rangeList;if(t.length===0||e==null)return!1;for(let r=0,i=t.length;r<i;r++){var n;let{unitId:i,sheetId:a}=t[r];if(((n=e[i])==null?void 0:n[a])!=null)return!0}return!1}isExcludeRange(e){let t=this.rangeList;if(t.length===0)return!1;for(let r=0,i=t.length;r<i;r++){var n;let{unitId:i,sheetId:a,range:o}=t[r],s=e==null||(n=e[i])==null?void 0:n[a],{startRow:c,endRow:l,startColumn:u,endColumn:d}=o;Number.isNaN(c)&&(c=0),Number.isNaN(u)&&(u=0),Number.isNaN(l)&&(l=1/0),Number.isNaN(d)&&(d=1/0);let f=!1;if(s==null||s.forValue((e,t)=>{if(e>=c&&e<=l&&t>=u&&t<=d)return f=!0,!1}),f)return!0}return!1}pushRangeList(e){this.rangeList.push(...e)}shouldBePushRangeList(){return this.rangeList.length===0&&this.type!==Ls.FEATURE_FORMULA}toRTreeItem(){if(this.featureId!=null)return this.featureDirtyRanges;let e=this.row,t=this.column;return[{unitId:this.unitId,sheetId:this.subUnitId,range:{startRow:e,startColumn:t,endRow:e,endColumn:t}}]}},Vs=class{constructor(e){if(d(this,`children`,new Set),d(this,`parents`,new Set),d(this,`treeId`,-1),d(this,`formula`,``),d(this,`refOffsetX`,0),d(this,`refOffsetY`,0),d(this,`row`,-1),d(this,`column`,-1),d(this,`unitId`,``),d(this,`subUnitId`,``),d(this,`rangeList`,[]),d(this,`refTreeId`,void 0),d(this,`formulaId`,void 0),d(this,`featureId`,void 0),d(this,`type`,void 0),this.treeId=e.treeId,this.row=e.row,this.column=e.column,this.unitId=e.unitId,this.subUnitId=e.subUnitId,this.refOffsetX=e.refOffsetX,this.refOffsetY=e.refOffsetY,this.rangeList=e.rangeList,e.isVirtual){var t,n;this.refTreeId=(t=(n=e.refTree)==null?void 0:n.treeId)==null?-1:t}else{var r,i;this.formula=e.formula,this.formulaId=(r=e.formulaId)==null?void 0:r,this.featureId=(i=e.featureId)==null?void 0:i,this.type=e.type}}toJson(){return{children:Array.from(this.children).map(e=>e.treeId),parents:Array.from(this.parents).map(e=>e.treeId),treeId:this.treeId,formula:this.formula,row:this.row,column:this.column,unitId:this.unitId,subUnitId:this.subUnitId,refOffsetX:this.refOffsetX,refOffsetY:this.refOffsetY,rangeList:this.rangeList,refTreeId:this.refTreeId,formulaId:this.formulaId,featureId:this.featureId,type:this.type}}toFullJson(){return{children:Array.from(this.children).map(e=>e.toJson()),parents:Array.from(this.parents).map(e=>e.toJson()),treeId:this.treeId,formula:this.formula,row:this.row,column:this.column,unitId:this.unitId,subUnitId:this.subUnitId,refOffsetX:this.refOffsetX,refOffsetY:this.refOffsetY,rangeList:this.rangeList,refTreeId:this.refTreeId,formulaId:this.formulaId,featureId:this.featureId,type:this.type}}addParent(e){this.parents.add(e)}addChild(e){this.children.add(e)}};function Hs(e){return e.getLastTreeId()||0}let Us=(0,t.createIdentifier)(`engine-formula.dependency-generator`),Ws=class extends t.Disposable{constructor(e,n,r,i,a,o,s,c,l,u){super(),this._currentConfigService=e,this._runtimeService=n,this._otherFormulaManagerService=r,this._featureCalculationManagerService=i,this._univerInstanceService=a,this._interpreter=o,this._astTreeBuilder=s,this._lexer=c,this._dependencyManagerService=l,this._lexerTreeBuilder=u,d(this,`_updateRangeFlattenCache`,new Map),d(this,`_dependencyRTreeCacheForAddressFunction`,new t.RTree),d(this,`_executedAddressFunctionNodeIds`,new Set),d(this,`_formulaDependencyTreeModel`,new Map),this._initUnitDispose()}dispose(){super.dispose(),this._updateRangeFlattenCache.clear(),this._dependencyRTreeCacheForAddressFunction.clear(),Wo.clear()}_initUnitDispose(){this.disposeWithMe(this._univerInstanceService.getTypeOfUnitDisposed$(t.UniverInstanceType.UNIVER_SHEET).subscribe(e=>{this._disposeByUnitId(e.getUnitId())}))}_disposeByUnitId(e){Wo.forEach((t,n)=>{n.startsWith(e)&&Wo.delete(n)})}async generate(e=!1){this._updateRangeFlatten();let t=this._currentConfigService.getFormulaData(),n=this._otherFormulaManagerService.getOtherFormulaData(),r=this._currentConfigService.getClearDependencyTreeCache();r!=null&&Object.keys(r).forEach(e=>{e!=null&&Object.keys(r[e]).forEach(t=>{t!=null&&(this._dependencyManagerService.clearOtherFormulaDependency(e,t),this._dependencyManagerService.clearFeatureFormulaDependency(e,t),this._dependencyManagerService.clearFormulaDependency(e,t))})});let i=this._currentConfigService.getUnitData(),a=await this._generateTreeList(t,n,i);e&&this._runtimeService.setDependencyTreeModelData(this._getAllDependencyJson(a));let o=this._getUpdateTreeListAndMakeDependency(a),s=this._calculateRunList(o);return this._dependencyFeatureCalculation(s)&&(s.forEach(e=>{e.resetState()}),s=this._calculateRunList(s)),this._checkIsCycleDependency(s)&&this._runtimeService.enableCycleDependency(),this._dependencyRTreeCacheForAddressFunction.clear(),this._runtimeService.clearArrayObjectCache(),Promise.resolve(s)}_dependencyFeatureCalculation(e){let t=this._featureCalculationManagerService.getReferenceExecutorMap();if(t.size===0)return;this._clearFeatureCalculationNode(e);let n=!1;return t.forEach((t,r)=>{t.forEach((t,r)=>{t.forEach((t,r)=>{let{unitId:i,subUnitId:a,getDirtyData:o}=t,s=o(this._currentConfigService.getDirtyData(),this._runtimeService.getAllRuntimeData()),c=this._convertDirtyRangesToUnitRange(s.dirtyRanges),l=this._intersectFeatureCalculation(c,e,{unitId:i,subUnitId:a,featureId:r});if(l.length>0){let o=this._getExistTreeList({unitId:i,subUnitId:a,featureId:r},e);o==null&&(o=this._getFeatureFormulaTree(r,Hs(this._dependencyManagerService),t),e.push(o)),o.parents=new Set,l.forEach(e=>{e.hasChildren(o.treeId)||e.pushChildren(o)}),n=!0}})})}),n}_clearFeatureCalculationNode(e){let t=this._featureCalculationManagerService.getReferenceExecutorMap();e.forEach(e=>{let n=new Set;for(let i of e.children){var r;let a=this._dependencyManagerService.getTreeById(i);a&&(a.featureId&&!((r=t.get(e.unitId))==null||(r=r.get(e.subUnitId))==null)&&r.has(a.featureId)||n.add(i))}e.children=n;let i=new Set;for(let n of e.parents){var a;let r=this._dependencyManagerService.getTreeById(n);r&&(r.featureId&&!((a=t.get(e.unitId))==null||(a=a.get(e.subUnitId))==null)&&a.has(r.featureId)||i.add(n))}e.parents=i})}_convertDirtyRangesToUnitRange(e){let t=[];for(let n in e){let r=e[n];for(let e in r){let i=r[e];for(let r of i)t.push({unitId:n,sheetId:e,range:r})}}return t}_intersectFeatureCalculation(e,t,n){let r=[],i=this._dependencyManagerService.searchDependency(e);for(let e=0,a=t.length;e<a;e++){let a=t[e];a.unitId===n.unitId&&a.subUnitId===n.subUnitId&&a.featureId===n.featureId||i.has(a.treeId)&&r.push(a)}return r}_getExistTreeList(e,t){let{unitId:n,subUnitId:r,featureId:i}=e;for(let e=0,a=t.length;e<a;e++){let a=t[e];if(a.unitId===n&&a.subUnitId===r&&a.featureId===i)return a}}_isCyclicUtil(e,t,n){let r=this._dependencyManagerService.getTreeById(e);if(r==null)return!1;if(!t.has(r.treeId)){t.add(r.treeId),n.add(r.treeId);for(let e of r.children)if(!t.has(e)&&this._isCyclicUtil(e,t,n)||n.has(e))return!0}return n.delete(r.treeId),!1}_checkIsCycleDependency(e){let t=new Set,n=new Set;for(let r=0,i=e.length;r<i;r++){let i=e[r];if(this._isCyclicUtil(i.treeId,t,n)===!0)return!0}return!1}async _generateTreeList(e,t,n){let r=Object.keys(e),i=Object.keys(t),a=[];this._currentConfigService.isForceCalculate()&&this._dependencyManagerService.reset(),this._registerFormulas(r,e,n,a),this._registerOtherFormulas(t,i,a),this._registerFeatureFormulas(a);for(let e=0,t=a.length;e<t;e++){let t=a[e];if(!t.formula)continue;let n=this._getTreeNode(t);t.isDirty=this._includeTree(t,n);let r=this._getAddressFunctionNodeList(n);if(r.length>0&&(t.addressFunctionNodes=r),t.isVirtual)continue;this._runtimeService.setCurrent(t.row,t.column,t.rowCount,t.columnCount,t.subUnitId,t.unitId);let i=await this._getRangeListByNode({node:n,refOffsetX:t.refOffsetX,refOffsetY:t.refOffsetY});t.pushRangeList(i)}for(let e=0,t=a.length;e<t;e++){let t=a[e];t.isCache||this._dependencyManagerService.addDependencyRTreeCache(t)}return await this._calculateListByFunctionRefNode(a),a}_registerFeatureFormulas(e){this._featureCalculationManagerService.getReferenceExecutorMap().forEach((t,n)=>{t.forEach((t,n)=>{t.forEach((t,n)=>{let r=this._dependencyManagerService.getFeatureFormulaDependency(t.unitId,t.subUnitId,n);e.push(this._getFeatureFormulaTree(n,r,t))})})})}_getFeatureFormulaTree(e,t,n){let{unitId:r,subUnitId:i,dependencyRanges:a,getDirtyData:o}=n,s=new Bs(t||Hs(this._dependencyManagerService));s.unitId=r,s.subUnitId=i,s.rangeList=a,s.getDirtyData=o;let c=o(this._currentConfigService.getDirtyData(),this._runtimeService.getAllRuntimeData());return s.featureDirtyRanges=this._convertDirtyRangesToUnitRange(c.dirtyRanges),s.featureId=e,s.type=Ls.FEATURE_FORMULA,this._dependencyManagerService.addFeatureFormulaDependency(r,i,e,s),this._dependencyManagerService.getFeatureFormulaDependency(n.unitId,n.subUnitId,e)&&(s.isCache=!0),s}_registerOtherFormulas(e,t,n){for(let r of t){let t=e[r];if(t==null)continue;let i=Object.keys(t);for(let e of i){let i=t[e];if(i==null)continue;let{rowCount:a=1/0,columnCount:o=1/0}=this._currentConfigService.getSheetRowColumnCount(r,e)||{},s=Object.keys(i);for(let t of s){let s=this._dependencyManagerService.hasOtherFormulaDataMainData(t),{f:c,ranges:l}=i[t],u=!1;s&&(u=!0);let d=Go(r,c,this._lexer,this._astTreeBuilder,this._currentConfigService),{firstRow:f,firstColumn:p}=this._getFirstCellOfRange(l),m=this._dependencyManagerService.getOtherFormulaDependency(r,e,t),h=new Bs((m==null?void 0:m.getValue(0,0))||Hs(this._dependencyManagerService));for(let i=0;i<l.length;i++){let s=l[i],{startRow:g,startColumn:_}=s,{endRow:v,endColumn:y}=s;v=Math.min(v,a-1),y=Math.min(y,o-1);for(let i=g;i<=v;i++)for(let a=_;a<=y;a++){let o=a-p,s=i-f;if(o===0&&s===0){h.node=d,h.formula=c,h.unitId=r,h.subUnitId=e,h.formulaId=t,h.type=Ls.OTHER_FORMULA,h.isCache=u,n.push(h),this._dependencyManagerService.addOtherFormulaDependency(r,e,t,h),this._dependencyManagerService.addFormulaDependencyByDefinedName(h);continue}let l=new zs;l.treeId=(m==null?void 0:m.getValue(o,s))||Hs(this._dependencyManagerService),l.refTree=h,l.refOffsetX=o,l.refOffsetY=s,l.isCache=u,l.type=Ls.OTHER_FORMULA,this._dependencyManagerService.addOtherFormulaDependency(r,e,t,l),this._dependencyManagerService.addFormulaDependencyByDefinedName(l),n.push(l)}}this._dependencyManagerService.addOtherFormulaDependencyMainData(t)}}}}_getFirstCellOfRange(e){let t=e[0];return{firstRow:t.startRow,firstColumn:t.startColumn}}_registerFormulas(e,n,r,i){for(let a of e){let e=n[a];if(e==null)continue;let o=Object.keys(e);for(let n of o){let o=new t.ObjectMatrix(e[n]||{}),s=new Map;o.forValue((e,t,o)=>{if(o==null)return!0;let{x:c=0,y:l=0,si:u}=o;if(!(c===0&&l===0&&u!=null))return!0;let d=this._createFDtree(a,n,e,t,r,o),f=this._dependencyManagerService.getFormulaDependency(a,n,e,t);f==null?(this._dependencyManagerService.addFormulaDependency(a,n,e,t,d),this._dependencyManagerService.addFormulaDependencyByDefinedName(d)):(d.treeId=f,d.isCache=!0,this._dependencyManagerService.updateDependencyTreeDirtyState(f,!1)),s.set(u,d),i.push(d)}),o.forValue((e,t,o)=>{if(o==null)return!0;let{x:c=0,y:l=0,si:u}=o;if(c===0&&l===0&&u!=null)return!0;let d;if(u&&s.has(u)){let e=s.get(u);d=this._createVirtualFDtree(e,o)}else d=this._createFDtree(a,n,e,t,r,o);let f=this._dependencyManagerService.getFormulaDependency(a,n,e,t);f==null?(this._dependencyManagerService.addFormulaDependency(a,n,e,t,d),this._dependencyManagerService.addFormulaDependencyByDefinedName(d)):(d.treeId=f,d.isCache=!0,this._dependencyManagerService.updateDependencyTreeDirtyState(f,!1)),i.push(d)}),s.clear()}}}_createFDtree(e,t,n,r,i,a){let{f:o,x:s=0,y:c=0}=a,l=new Bs(Hs(this._dependencyManagerService)),u=i[e][t];return l.node=Go(e,o,this._lexer,this._astTreeBuilder,this._currentConfigService),l.formula=o,l.unitId=e,l.subUnitId=t,l.row=n,l.column=r,l.rowCount=u.rowCount,l.columnCount=u.columnCount,l}_createVirtualFDtree(e,t){let{x:n=0,y:r=0}=t,i=new zs;return i.treeId=Hs(this._dependencyManagerService),i.refTree=e,i.refOffsetX=n,i.refOffsetY=r,i}_updateRangeFlatten(){let e=this._currentConfigService.isForceCalculate(),t=this._currentConfigService.getDirtyRanges();if(!e){this._updateRangeFlattenCache.clear();for(let e=0;e<t.length;e++){let n=t[e],r=n.range,i=n.sheetId,a=n.unitId;this._addFlattenCache(a,i,r)}}}_addFlattenCache(e,t,n){let r=this._updateRangeFlattenCache.get(e);r==null&&(r=new Map,this._updateRangeFlattenCache.set(e,r));let i=r.get(t);i==null&&(i=[],r.set(t,i)),i.push(n)}_isPreCalculateNode(e){return e.nodeType===H.UNION||e.nodeType===H.PREFIX&&e.getToken()===T.AT||e.nodeType===H.SUFFIX&&e.getToken()===C.POUND}_nodeTraversalRef(e,t){let n=e.getChildren(),r=n.length;for(let e=0;e<r;e++){let r=n[e];if(this._isPreCalculateNode(r)){if(t.push(r),r.nodeType===H.UNION)for(let e of r.getChildren())e.nodeType===H.FUNCTION&&e.isAddress()&&this._nodeTraversalRef(e,t);continue}else r.nodeType===H.REFERENCE&&t.push(r);this._nodeTraversalRef(r,t)}}_nodeTraversalReferenceFunction(e,t){let n=e.getChildren(),r=n.length;for(let e=0;e<r;e++){let r=n[e];if(r.nodeType===H.FUNCTION&&r.isAddress()){t.push(r);continue}this._nodeTraversalReferenceFunction(r,t)}}async _executeNode(e,t=0,n=0){let r,i={node:e,refOffsetX:t,refOffsetY:n};return r=this._interpreter.checkAsyncNode(e)?await this._interpreter.executeAsync(i):this._interpreter.execute(i),r}async _getRangeListByNode(e){let t=[],n=e.refOffsetX,r=e.refOffsetY,i=e.node;if(i==null)return[];this._nodeTraversalRef(i,t);let a=[];for(let e=0,i=t.length;e<i;e++){let i=t[e],o=(await this._executeNode(i,n,r)).toUnitRange();a.push(o),i.setValue(null)}return a}_getAddressFunctionNodeList(e){let t=[];return e==null?[]:(this._nodeTraversalReferenceFunction(e,t),t)}_getTreeNode(e){return e.node}async _buildDirtyRangesByAddressFunction(e,t){let n=t.addressFunctionNodes;if(n.length===0)return;let r=t.refOffsetX,i=t.refOffsetY,a=await this._getRangeListByFunctionRefNode(n,r,i);t.addressFunctionNodes=[],this._addDependencyTreeByAddressFunction(t,a);let o=e.bulkSearch(a),s=this._buildTreeNodeById(o);s.length!==0&&await this._calculateAddressFunctionRuntimeData(e,s)}async _calculateListByFunctionRefNode(e){let n=new t.RTree;for(let t=0,r=e.length;t<r;t++){let r=e[t];n.insert({unitId:r.unitId,sheetId:r.subUnitId,range:{startRow:r.row,startColumn:r.column,endRow:r.row,endColumn:r.column},id:r.treeId})}this._executedAddressFunctionNodeIds.clear();for(let t=0,r=e.length;t<r;t++){let r=e[t];await this._calculateAddressFunction(n,r)}}async _calculateAddressFunction(e,t){let n=t.addressFunctionNodes;if(n.length===0)return;let r=t.refOffsetX,i=t.refOffsetY;this._runtimeService.setCurrent(t.row,t.column,t.rowCount,t.columnCount,t.subUnitId,t.unitId);let a=[];for(let e=0,t=n.length;e<t;e++){let t=await this._getRangeListByNode({node:n[e],refOffsetX:r,refOffsetY:i});a.push(...t)}let o=new Set;this._searchDependencyByAddressFunction(e,a,o);let s=this._buildTreeNodeById(o);if(s.length===0){await this._buildDirtyRangesByAddressFunction(e,t);return}await this._calculateAddressFunctionRuntimeData(e,s),await this._buildDirtyRangesByAddressFunction(e,t)}async _calculateAddressFunctionRuntimeData(e,t){for(;t.length>0;){let n=t.pop(),r={node:this._getTreeNode(n),refOffsetX:n.refOffsetX,refOffsetY:n.refOffsetY};await this._calculateAddressFunction(e,n),this._runtimeService.setCurrent(n.row,n.column,n.rowCount,n.columnCount,n.subUnitId,n.unitId);let i;i=this._interpreter.checkAsyncNode(r.node)?await this._interpreter.executeAsync(r):this._interpreter.execute(r),n.formulaId==null?this._runtimeService.setRuntimeData(i):this._runtimeService.setRuntimeOtherData(n.formulaId,n.refOffsetX,n.refOffsetY,i)}}_buildTreeNodeById(e){let t=[];for(let n of e){let e=this._getTreeById(n);!e||this._executedAddressFunctionNodeIds.has(n)||(this._executedAddressFunctionNodeIds.add(n),t.push(e))}return t}_searchDependencyByAddressFunction(e,t,n){let r=e.bulkSearch(t),i=this._dependencyRTreeCacheForAddressFunction.bulkSearch(t);for(let e of i)n.has(e)||n.add(e);let a=[];for(let e of r){let t=this._getTreeById(e);t&&!n.has(e)&&(a.push(...t.rangeList),n.add(e))}return a.length>0&&this._searchDependencyByAddressFunction(e,a,n),n}_getTreeById(e){return this._dependencyManagerService.getTreeById(e)}_addDependencyTreeByAddressFunction(e,t){let n=[];for(let r=0;r<t.length;r++){let{unitId:i,sheetId:a,range:o}=t[r];n.push({unitId:i,sheetId:a,range:o,id:e.treeId})}this._dependencyRTreeCacheForAddressFunction.bulkInsert(n)}async _getRangeListByFunctionRefNode(e,t,n){let r=[];for(let i=0,a=e.length;i<a;i++){let a=e[i],o=(await this._executeNode(a,t,n)).toUnitRange();r.push(o),a.setValue(null)}return r}_getUpdateTreeListAndMakeDependency(e){let t=[],n=new Set,r=this._currentConfigService.isForceCalculate(),i=this._currentConfigService.getDirtyRanges(),a=this._dependencyManagerService.searchDependency(i),o=this._dependencyRTreeCacheForAddressFunction.bulkSearch(i);for(let e of o)a.add(e);let s=this._dependencyManagerService.buildDependencyTree(e);for(let e of s){let i=e.treeId;(r||e.isDirty||e.dependencySheetName(this._currentConfigService.getDirtyNameMap())||a.has(i)&&!e.isExcludeRange(this._currentConfigService.getExcludedRange()))&&!n.has(i)&&(t.push(e),n.add(i))}return t}_includeTreeFeature(e){let t=e.unitId,n=e.subUnitId,r=e.featureId;if(r!=null){var i;let e=this._currentConfigService.getDirtyUnitFeatureMap();if((e==null||(i=e[t])==null||(i=i[n])==null?void 0:i[r])!=null)return!0}return!1}_includeOtherFormula(e){let t=e.unitId,n=e.subUnitId,r=e.formulaId;if(r!=null){var i;let e=this._currentConfigService.getDirtyUnitOtherFormulaMap();if((e==null||(i=e[t])==null||(i=i[n])==null?void 0:i[r])!=null)return!0}return!1}_detectForcedRecalculationNode(e,t){return t==null?!1:this._detectForcedRecalculationNodeRecursion(t)}_detectForcedRecalculationNodeRecursion(e){if(e.isForcedCalculateFunction())return!0;let t=e.getChildren();for(let e=0,n=t.length;e<n;e++){let n=t[e];if(this._detectForcedRecalculationNodeRecursion(n))return!0}return!1}_includeTree(e,t){var n,r;let i=e.unitId,a=e.subUnitId;if(this._detectForcedRecalculationNode(e,t)===!0||this._includeTreeFeature(e)===!0||this._includeOtherFormula(e)===!0||qo(e,t,this._currentConfigService)===!0)return!0;let o=(n=this._currentConfigService.getExcludedRange())==null||(n=n[i])==null?void 0:n[a];if((o==null?void 0:o.getValue(e.row,e.column))!=null)return!1;if(((r=this._currentConfigService.getDirtyNameMap()[i])==null?void 0:r[a])!=null)return!0;if(!this._updateRangeFlattenCache.has(i))return!1;let s=this._updateRangeFlattenCache.get(i);if(!s.has(a))return!1;let c=s.get(a);for(let t of c)if(e.inRangeData(t))return!0;return!1}_calculateRunList(e){e.length;let t=e,n=[],r=[];for(;t.length>0;){let e=t.pop();if(e===void 0||e.isSkip())continue;if(e.isAdded()){n.push(e),e.setSkip();continue}r.length=0;for(let t of e.parents){let n=this._dependencyManagerService.getTreeById(t);if(!n){console.error(`Dependency tree not found for treeId:`,t);continue}n.isAdded()||e.isSkip()||r.push(n)}let i=this._dependencyRTreeCacheForAddressFunction.bulkSearch(e.toRTreeItem());for(let t of i){let n=this._dependencyManagerService.getTreeById(t);if(!n){console.error(`Dependency tree not found for treeId:`,t);continue}n.isAdded()||e.isSkip()||r.push(n)}r.length===0?(n.push(e),e.setSkip()):(e.setAdded(),t.push(e,...r))}return n}async _initializeGenerateTreeList(){let e=this._currentConfigService.getFormulaData(),t=this._otherFormulaManagerService.getOtherFormulaData(),n=this._currentConfigService.getUnitData();return await this._generateTreeList(e,t,n)}async _getAllTreeList(){let e=await this._initializeGenerateTreeList();return this._dependencyManagerService.buildDependencyTree(e)}_getTreeModel(e){let t=this._formulaDependencyTreeModel.get(e);if(!t){let n=this._getTreeById(e);if(!n){console.error(`FormulaDependencyTree is null for treeId:`,e);return}t=new Vs(n),this._formulaDependencyTreeModel.set(e,t)}return t}_getDependencyTreeParenIds(e){return e.parents}_getDependencyTreeChildrenIds(e){return e.children}_getFormulaDependencyTreeModel(e){let t=this._getTreeModel(e.treeId),n=this._getDependencyTreeParenIds(e);if(!t)return new Vs(e);for(let e of n){let n=this._getTreeModel(e);n&&(t.addParent(n),n.addChild(t))}return t}_endFormulaDependencyTreeModel(){this._formulaDependencyTreeModel.clear()}_startFormulaDependencyTreeModel(){}_getAllDependencyJson(e){this._startFormulaDependencyTreeModel();let t=[];for(let n of e){let e=n.type;if(n.isVirtual&&(e===Ls.FEATURE_FORMULA||e===Ls.OTHER_FORMULA))continue;let r=this._getFormulaDependencyTreeModel(n);t.push(r)}let n=[];for(let e of t)n.push(e.toJson());return this._endFormulaDependencyTreeModel(),n}async getAllDependencyJson(){let e=await this._getAllTreeList();return this._getAllDependencyJson(e)}_setRealFormulaString(e){if(e.refTreeId==null)return;let t=this._getTreeById(e.refTreeId);t&&(e.formula=this._lexerTreeBuilder.moveFormulaRefOffset(t.formula,e.refOffsetX,e.refOffsetY))}async getCellDependencyJson(e,t,n,r){await this._initializeGenerateTreeList();let i=this._dependencyManagerService.getFormulaDependency(e,t,n,r);if(i==null)return;let a=this._getTreeById(i);if(!a)return;this._startFormulaDependencyTreeModel();let o=this._getFormulaDependencyTreeModel(a);this._setRealFormulaString(o);let s=this._getDependencyTreeChildrenIds(a);for(let e of s){let t=this._getTreeModel(e);t&&(this._setRealFormulaString(t),o.addChild(t))}for(let e of o.parents)this._setRealFormulaString(e);return this._endFormulaDependencyTreeModel(),o.toFullJson()}_getRangeDependents(e){let t=this._dependencyManagerService.searchDependency(e),n=[];for(let e of t){let t=this._getTreeById(e);if(!t)continue;let r=this._getFormulaDependencyTreeModel(t);this._setRealFormulaString(r),n.push(r)}let r=[];for(let e of n)e&&r.push(e.toJson());return r}async getRangeDependents(e){await this._initializeGenerateTreeList(),this._startFormulaDependencyTreeModel();let t=this._getRangeDependents(e);return this._endFormulaDependencyTreeModel(),t}_getInRangeFormulas(e,t){let n=[];for(let r of t)for(let t of e){let e=t.unitId,i=t.sheetId;if(!(r.unitId!==e||r.subUnitId!==i)&&(t.range,r.inRangeData(t.range))){n.push(r);break}}let r=[];for(let e of n){let t=this._getFormulaDependencyTreeModel(e);this._setRealFormulaString(t),r[e.treeId]=t}let i=[];for(let e of r)e&&i.push(e.toJson());return i}async getInRangeFormulas(e){let t=await this._getAllTreeList();this._startFormulaDependencyTreeModel();let n=this._getInRangeFormulas(e,t);return this._endFormulaDependencyTreeModel(),n}async getRangeDependentsAndInRangeFormulas(e){let t=await this._getAllTreeList();this._startFormulaDependencyTreeModel();let n=this._getRangeDependents(e),r=this._getInRangeFormulas(e,t);return this._endFormulaDependencyTreeModel(),{dependents:n,inRanges:r}}};Ws=un([A(0,fr),A(1,jo),A(2,Fs),A(3,Ns),A(4,(0,t.Inject)(t.IUniverInstanceService)),A(5,(0,t.Inject)(rs)),A(6,(0,t.Inject)(Os)),A(7,(0,t.Inject)(pr)),A(8,js),A(9,(0,t.Inject)($n))],Ws);let Gs=(0,t.createIdentifier)(`engine-formula.calculate-formula.service`),Ks=class extends t.Disposable{constructor(e,r,i,a,o,s,c){super(),this._configService=e,this._lexer=r,this._currentConfigService=i,this._runtimeService=a,this._formulaDependencyGenerator=o,this._interpreter=s,this._astTreeBuilder=c,d(this,`_executionInProgressListener$`,new n.Subject),d(this,`executionInProgressListener$`,this._executionInProgressListener$.asObservable()),d(this,`_executionCompleteListener$`,new n.Subject),d(this,`executionCompleteListener$`,this._executionCompleteListener$.asObservable()),d(this,`_executeLock`,new t.AsyncLock),d(this,`_isCalculateTreeModel`,!1)}dispose(){super.dispose(),this._executionInProgressListener$.complete(),this._executionCompleteListener$.complete(),to.clear(),cr.clear(),te.clear(),Wa.clear()}stopFormulaExecution(){this._runtimeService.stopExecution()}setRuntimeFeatureCellData(e,t){this._runtimeService.setRuntimeFeatureCellData(e,t)}setRuntimeFeatureRange(e,t){this._runtimeService.setRuntimeFeatureRange(e,t)}async execute(e){this._runtimeService.setFormulaExecuteStage(Oo.START),this._executionInProgressListener$.next(this._runtimeService.getRuntimeState()),this._currentConfigService.load(e),this._runtimeService.reset();let t=e.maxIteration||1;this._isCalculateTreeModel=e.isCalculateTreeModel||!1,this._executeLock.acquire(`FORMULA_EXECUTION_LOCK`,async()=>{for(let e=0;e<t&&(this._runtimeService.setFormulaCycleIndex(e),await this._executeStep(),to.clear(),this._runtimeService.isCycleDependency());e++);this._runtimeService.setFormulaExecuteStage(Oo.CALCULATION_COMPLETED),this._executionInProgressListener$.next(this._runtimeService.getRuntimeState()),this._executionCompleteListener$.next(this._runtimeService.getAllRuntimeData()),cr.clear(),this._runtimeService.reset()})}async _executeStep(){let e=await this._apply();if(e==null)return;let{arrayFormulaRange:t,runtimeFeatureRange:n}=e,{dirtyRanges:r,excludedCell:i}=this._getArrayFormulaDirtyRangeAndExcludedRange(t,n);return r==null||r.length===0?!0:(to.clear(),this._currentConfigService.loadDirtyRangesAndExcludedCell(r,i),await this._apply(!0),!0)}_getArrayFormulaDirtyRangeAndExcludedRange(e,n){let r=[],i={};return Object.keys(e).forEach(n=>{let a=e[n];if(a==null)return!0;Object.keys(a).forEach(e=>{let o=new t.ObjectMatrix(a[e]);if(o==null)return!0;let s=new t.ObjectMatrix;o.forValue((t,i,a)=>{s.setValue(t,i,!0),r.push({unitId:n,sheetId:e,range:a})}),i[n]==null&&(i[n]={}),i[n][e]=s})}),Object.keys(n).forEach(e=>{let t=n[e];Object.keys(t).forEach(e=>{let n=t[e];if(n==null)return!0;Object.keys(n).forEach(t=>{let i=n[t];if(i==null)return!0;for(let n of i)r.push({unitId:e,sheetId:t,range:n})})})}),{dirtyRanges:r,excludedCell:i}}async _apply(e=!1){e?this._runtimeService.setFormulaExecuteStage(Oo.START_DEPENDENCY_ARRAY_FORMULA):this._runtimeService.setFormulaExecuteStage(Oo.START_DEPENDENCY),this._executionInProgressListener$.next(this._runtimeService.getRuntimeState());let n=(await this._formulaDependencyGenerator.generate(this._isCalculateTreeModel)).reverse(),r=this._interpreter;e?(this._runtimeService.setFormulaExecuteStage(Oo.START_CALCULATION_ARRAY_FORMULA),this._runtimeService.setTotalArrayFormulasToCalculate(n.length)):(this._runtimeService.setFormulaExecuteStage(Oo.START_CALCULATION),this._runtimeService.setTotalFormulasToCalculate(n.length)),this._executionInProgressListener$.next(this._runtimeService.getRuntimeState());let i=[],a=this._configService.getConfig(Hn),o=(a==null?void 0:a.intervalCount)||500,s=n.length;for(let a=0;a<s;a++){var c;let s=n[a],l=s.nodeData,u=s.getDirtyData;if(a%o===0&&(await new Promise(e=>{let n=(0,t.requestImmediateMacroTask)(e);i.push(n)}),e?(this._runtimeService.setFormulaExecuteStage(Oo.CURRENTLY_CALCULATING_ARRAY_FORMULA),this._runtimeService.setCompletedArrayFormulasCount(a+1)):(this._runtimeService.setFormulaExecuteStage(Oo.CURRENTLY_CALCULATING),this._runtimeService.setCompletedFormulasCount(a+1)),this._executionInProgressListener$.next(this._runtimeService.getRuntimeState()),this._runtimeService.isStopExecution()||l==null&&u==null)){this._runtimeService.setFormulaExecuteStage(Oo.IDLE),this._runtimeService.markedAsStopFunctionsExecuted(),this._executionCompleteListener$.next(this._runtimeService.getAllRuntimeData());return}this._runtimeService.setCurrent(s.row,s.column,s.rowCount,s.columnCount,s.subUnitId,s.unitId);let d;if(u!=null&&s.featureId!=null){let{runtimeCellData:e,dirtyRanges:t}=u(this._currentConfigService.getDirtyData(),this._runtimeService.getAllRuntimeData());this._runtimeService.setRuntimeFeatureCellData(s.featureId,e),this._runtimeService.setRuntimeFeatureRange(s.featureId,t)}else l!=null&&(d=r.checkAsyncNode(l.node)?await r.executeAsync(l):r.execute(l),s.formulaId==null?this._runtimeService.setRuntimeData(d):this._runtimeService.setRuntimeOtherData(s.formulaId,s.refOffsetX,s.refOffsetY,d));(c=l.node)==null||c.resetCalculationState()}return i.forEach(e=>e()),i=[],s>0?this._runtimeService.markedAsSuccessfullyExecuted():e||this._runtimeService.markedAsNoFunctionsExecuted(),this._runtimeService.getAllRuntimeData()}async executeFormulas(e,t){this._currentConfigService.loadDataLite(t);let n=this._currentConfigService.getUnitData();this._runtimeService.reset();let r={};for(let t of Object.keys(e)){let a=e[t];if(a!=null){r[t]={};for(let e of Object.keys(a)){var i;let o=a[e];if(o==null)continue;let s=(i=n[t])==null?void 0:i[e];if(s!=null){r[t][e]={};for(let n of Object.keys(o)){let i=Number.parseInt(n);r[t][e][i]={};let a=o[i];if(a)for(let n of Object.keys(a)){let o=Number.parseInt(n),c=a[o];if(!c)continue;let l=s.rowCount||0,u=s.columnCount||0;this._runtimeService.setCurrent(i,o,l,u,e,t);let d=[];for(let e of c){let t=await this.calculate(e);if(!t){d.push({value:null,formula:e});continue}t.isReferenceObject()&&(t=t.toArrayValueObject());let n=t;if(n.isArray()){let t=n;if(t.getRowCount()===1&&t.getColumnCount()===1){d.push({value:t.getFirstCell().getValue(),formula:e});continue}d.push({value:t.toValue(),formula:e});continue}d.push({value:n.getValue(),formula:e})}r[t][e][i][o]=d}}}}}}return r}async calculate(e){let t=this._lexer.treeBuilder(e);if(Object.values(p).includes(t))return;let n=this._astTreeBuilder.parse(t),r=this._interpreter;if(n==null)return;let i={node:n,refOffsetX:0,refOffsetY:0};return r.checkAsyncNode(n)?await r.executeAsync(i):r.execute(i)}async getAllDependencyJson(){return this._currentConfigService.loadDataLite(),this._formulaDependencyGenerator.getAllDependencyJson()}async getCellDependencyJson(e,t,n,r){return this._currentConfigService.loadDataLite(),this._formulaDependencyGenerator.getCellDependencyJson(e,t,n,r)}async getRangeDependents(e){return this._currentConfigService.loadDataLite(),this._formulaDependencyGenerator.getRangeDependents(e)}async getInRangeFormulas(e){return this._currentConfigService.loadDataLite(),this._formulaDependencyGenerator.getInRangeFormulas(e)}async getDependentsAndInRangeFormulas(e){return this._currentConfigService.loadDataLite(),this._formulaDependencyGenerator.getRangeDependentsAndInRangeFormulas(e)}};Ks=un([A(0,t.IConfigService),A(1,(0,t.Inject)(pr)),A(2,fr),A(3,jo),A(4,Us),A(5,(0,t.Inject)(rs)),A(6,(0,t.Inject)(Os))],Ks);let qs=class extends t.Disposable{constructor(e,t,n){super(),this._commandService=e,this._calculateFormulaService=t,this._formulaDataModel=n,this._initialize()}_initialize(){this._commandExecutedListener(),this._initialExecuteFormulaListener()}_commandExecutedListener(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(e.id===Sn.id)this._calculateFormulaService.stopFormulaExecution();else if(e.id===vn.id)this._calculate(e.params);else if(e.id===Lt.id){let t=e.params;if(t==null)return;let{arrayFormulaRange:n,arrayFormulaCellData:r}=t;this._formulaDataModel.setArrayFormulaRange(n),this._formulaDataModel.setArrayFormulaCellData(r)}else if(e.id===bn.id)this._calculateFormulaString(e.params);else if(e.id===Tn.id)this._generateAllDependencyTreeJson();else if(e.id===Dn.id)this._generateCellDependencyTreeJson(e.params);else if(e.id===kn.id){let t=e.params;this._queryFormulaDependencyJson(t)}else if(e.id===jn.id){let t=e.params;this._queryFormulaDependencyAllJson(t)}}))}async _calculate(e){let{forceCalculation:t=!1,dirtyRanges:n=[],dirtyNameMap:r={},dirtyDefinedNameMap:i={},dirtyUnitFeatureMap:a={},dirtyUnitOtherFormulaMap:o={},clearDependencyTreeCache:s={},maxIteration:c=1,rowData:l,isCalculateTreeModel:u=!1}=e,d=this._formulaDataModel.getFormulaData(),f=this._formulaDataModel.getArrayFormulaCellData(),p=this._formulaDataModel.getArrayFormulaRange();this._calculateFormulaService.execute({formulaData:d,arrayFormulaCellData:f,arrayFormulaRange:p,forceCalculate:t,dirtyRanges:n,dirtyNameMap:r,dirtyDefinedNameMap:i,dirtyUnitFeatureMap:a,dirtyUnitOtherFormulaMap:o,clearDependencyTreeCache:s,maxIteration:c,isCalculateTreeModel:u,rowData:l})}async _queryFormulaDependencyJson(e){let{unitRanges:t,isInRange:n}=e,r=[];r=n?await this._calculateFormulaService.getInRangeFormulas(t):await this._calculateFormulaService.getRangeDependents(t),this._commandService.executeCommand(An.id,{result:r},{onlyLocal:!0})}async _queryFormulaDependencyAllJson(e){let{unitRanges:t}=e,n=await this._calculateFormulaService.getDependentsAndInRangeFormulas(t);this._commandService.executeCommand(Mn.id,{result:n},{onlyLocal:!0})}async _generateAllDependencyTreeJson(){let e=await this._calculateFormulaService.getAllDependencyJson();this._commandService.executeCommand(En.id,{result:e},{onlyLocal:!0})}async _generateCellDependencyTreeJson(e){let{unitId:t,sheetId:n,row:r,column:i}=e,a=await this._calculateFormulaService.getCellDependencyJson(t,n,r,i);this._commandService.executeCommand(On.id,{result:a},{onlyLocal:!0})}async _calculateFormulaString(e){let{formulas:t}=e,n=await this._calculateFormulaService.executeFormulas(t);this._commandService.executeCommand(xn.id,{result:n},{onlyLocal:!0})}_initialExecuteFormulaListener(){this._calculateFormulaService.executionCompleteListener$.subscribe(e=>{let t=e.functionsExecutedState;switch(t){case ko.NOT_EXECUTED:this._applyTreeResult(e);break;case ko.STOP_EXECUTION:break;case ko.SUCCESS:this._applyResult(e);break;case ko.INITIAL:break}this._commandService.executeCommand(Cn.id,{functionsExecutedState:t},{onlyLocal:!0})}),this._calculateFormulaService.executionInProgressListener$.subscribe(e=>{this._commandService.executeCommand(Cn.id,{stageInfo:e},{onlyLocal:!0})})}async _applyTreeResult(e){let{dependencyTreeModelData:t}=e;t.length>0&&this._commandService.executeCommand(En.id,{result:t},{onlyLocal:!0})}async _applyResult(e){let{unitData:t,unitOtherData:n,arrayFormulaRange:r,arrayFormulaCellData:i,clearArrayFormulaCellData:a,arrayFormulaEmbedded:o,imageFormulaData:s,dependencyTreeModelData:c}=e;if(!t){this._applyTreeResult(e),console.error(`No sheetData from Formula Engine!`);return}(r||o)&&(this._formulaDataModel.clearPreviousArrayFormulaCellData(a),this._formulaDataModel.mergeArrayFormulaCellData(i),this._formulaDataModel.mergeArrayFormulaRange(r),this._commandService.executeCommand(Lt.id,{arrayFormulaRange:this._formulaDataModel.getArrayFormulaRange(),arrayFormulaCellData:this._formulaDataModel.getArrayFormulaCellData(),arrayFormulaEmbedded:o},{onlyLocal:!0})),s&&s.length>0&&this._commandService.executeCommand(Pn.id,{imageFormulaData:s},{onlyLocal:!0}),this._applyTreeResult(e),this._commandService.executeCommand(wn.id,{unitData:jt(t),unitOtherData:n},{onlyLocal:!0})}};qs=un([A(0,t.ICommandService),A(1,Gs),A(2,(0,t.Inject)(nr))],qs);let Js=/[\[\]]/g;function Ys(e,t){return Js.test(e)?t+Number(e.replace(Js,``)):Number(e)-1}function Xs(e,n=0,r=0){e=e.toLocaleUpperCase();let i=e.split(/[RC]/),a=i[1],o=i[2];return{row:Ys(a,n),column:Ys(o,r),absoluteRefType:t.AbsoluteRefType.NONE}}function Zs(e,t=0,n=0){let{refBody:r,sheetName:i,unitId:a}=Jt(e),o=r.indexOf(`:`);if(o===-1){let e=Xs(r,t,n),o=e.row,s=e.column,c=e.absoluteRefType;return{unitId:a,sheetName:i,range:{startRow:o,startColumn:s,endRow:o,endColumn:s,startAbsoluteRefType:c,endAbsoluteRefType:c}}}let s=r.substring(0,o),c=r.substring(o+1),l=Xs(s,t,n),u=Xs(c,t,n);return{unitId:a,sheetName:i,range:{startRow:l.row,startColumn:l.column,endRow:u.row,endColumn:u.column,startAbsoluteRefType:l.absoluteRefType,endAbsoluteRefType:u.absoluteRefType}}}function Qs(e){let t=$s(e.startRow,e.startAbsoluteRefType,!0),n=$s(e.startColumn,e.startAbsoluteRefType,!1),r=$s(e.endRow,e.endAbsoluteRefType,!0),i=$s(e.endColumn,e.endAbsoluteRefType,!1);return t===r&&n===i?`R${t}C${n}`:`R${t}C${n}:R${r}C${i}`}function $s(e,n=t.AbsoluteRefType.ALL,r){switch(e+=1,n){case t.AbsoluteRefType.ALL:return`${e}`;case t.AbsoluteRefType.ROW:return r?`${e}`:`[${e}]`;case t.AbsoluteRefType.COLUMN:return r?`[${e}]`:`${e}`;case t.AbsoluteRefType.NONE:return`[${e}]`}}function ec(e){let t=e;if(e.isArray()){let n=e.getRowCount(),r=e.getColumnCount();if(n>1||r>1)return E.create(p.VALUE);t=e.get(0,0)}return t.isError(),t}function tc(...e){for(let t=0;t<e.length;t++){let n=ec(e[t]);if(n.isError())return{isError:!0,errorObject:n};e[t]=n}return{isError:!1,variants:e}}function Y(...e){for(let t=0;t<e.length;t++){let n=ec(e[t]);if(n.isError())return{isError:!0,errorObject:n};if(n.isBoolean())return{isError:!0,errorObject:E.create(p.VALUE)};e[t]=n}return{isError:!1,variants:e}}function nc(...e){for(let t=0;t<e.length;t++){let n=e[t];if(n.isError())return{isError:!0,errorObject:n};if(n.isNull())return{isError:!0,errorObject:E.create(p.NA)};if(n=ec(e[t]),n.isError())return{isError:!0,errorObject:n};if(n.isBoolean())return{isError:!0,errorObject:E.create(p.VALUE)};e[t]=n}return{isError:!1,variants:e}}function X(...e){for(let t=0;t<e.length;t++){let n=e[t];if(n.isString()&&(n=n.convertToNumberObjectValue()),n.isError())return{isError:!0,errorObject:n};e[t]=n}return{isError:!1,variants:e}}var Z=class{constructor(e){this._name=e,d(this,`_unitId`,void 0),d(this,`_subUnitId`,void 0),d(this,`_row`,-1),d(this,`_column`,-1),d(this,`_definedNames`,void 0),d(this,`_locale`,void 0),d(this,`_sheetOrder`,void 0),d(this,`_sheetNameMap`,void 0),d(this,`_formulaDataModel`,void 0),d(this,`_rowCount`,-1),d(this,`_columnCount`,-1),d(this,`needsExpandParams`,!1),d(this,`needsReferenceObject`,!1),d(this,`needsLocale`,!1),d(this,`needsSheetsInfo`,!1),d(this,`needsFormulaDataModel`,!1),d(this,`needsSheetRowColumnCount`,!1),d(this,`needsFilteredOutRows`,!1),d(this,`minParams`,-1),d(this,`maxParams`,-1)}get name(){return this._name}get unitId(){return this._unitId}get subUnitId(){return this._subUnitId}get row(){return this._row}get column(){return this._column}dispose(){}getDefinedName(e){var t;let n=this._definedNames;return n==null?null:(t=Array.from(Object.values(n)).filter(t=>t.name===e))==null?void 0:t[0]}setDefinedNames(e){this._definedNames=e}getLocale(){return this._locale}setLocale(e){this._locale=e}getSheetsInfo(){return{sheetOrder:this._sheetOrder,sheetNameMap:this._sheetNameMap}}setSheetsInfo({sheetOrder:e,sheetNameMap:t}){this._sheetOrder=e,this._sheetNameMap=t}setFormulaDataModel(e){this._formulaDataModel=e}setSheetRowColumnCount(e,t){this._rowCount=e,this._columnCount=t}isAsync(){return!1}isAddress(){return!1}isCustom(){return!1}isArgumentsIgnoreNumberPattern(){return!1}setRefInfo(e,t,n,r){this._unitId=e,this._subUnitId=t,this._row=n,this._column=r}calculateCustom(...e){return null}calculate(...e){return E.create(p.VALUE)}checkArrayType(e){return e.isReferenceObject()||e.isValueObject()&&e.isArray()}getIndexNumValue(e,t=1){let n=e;if(n.isArray()&&(n=n.getFirstCell()),n.isBoolean())return n.getValue()===!1?E.create(p.VALUE):t;if(n.isString()){let e=Number(n.getValue());return Number.isNaN(e)?E.create(p.REF):e}else if(n.isNumber())return n.getValue();return E.create(p.VALUE)}getZeroOrOneByOneDefault(e){if(e==null)return 1;let t=1;if(e.isArray()&&(e=e.getFirstCell()),e.isBoolean())e.getValue()===!1&&(t=0);else if(e.isString())return;else e.isNumber()&&e.getValue()===0&&(t=0);return t}getMatchTypeValue(e){if(e==null)return 1;let t=1;if(e.isArray()&&(e=e.getFirstCell()),e.isBoolean())e.getValue()===!1&&(t=0);else if(e.isString())return;else if(e.isNumber()){let n=e.getValue();n<=0&&(t=n)}return t}binarySearch(e,t,n,r,i){let a=t.binarySearch(e,r,i);if(a==null)return E.create(p.NA);let o;return o=n.getRowCount()===1?n.get(0,a)||Ua.create():n.get(a,0)||Ua.create(),o.isNull()?R.create(0):o}_getOneFirstByRaw(e){return e.length===0?E.create(p.NA):e[0][0]||E.create(p.NA)}_getOneLastByRaw(e){return e.length===0?E.create(p.NA):e[e.length-1][e[0].length-1]||E.create(p.NA)}equalSearch(e,t,n,r=!0){let i=n.pickRaw(t.isEqual(e));return r?this._getOneFirstByRaw(i):this._getOneLastByRaw(i)}fuzzySearch(e,t,n,r=!0){let i=n.pickRaw(t.compare(e,v.EQUALS));return r?this._getOneFirstByRaw(i):this._getOneLastByRaw(i)}orderSearch(e,t,n,r=yr.MIN,i=!1){let a=t.orderSearch(e,r,i);if(a==null)return E.create(p.NA);let o=n.get(a.row,a.column)||Ua.create();return o.isNull()?E.create(p.NA):o}binarySearchExpand(e,t,n,r=0,i,a){let o=t.binarySearch(e,i,a);return o==null?E.create(p.NA):r===0?n.slice([o,o+1]):n.slice(void 0,[o,o+1])}equalSearchExpand(e,t,n,r=!0,i=0){let a=t.isEqual(e),o;return o=r?a.getFirstTruePosition():a.getLastTruePosition(),o==null?E.create(p.NA):i===0?n.slice([o.row,o.row+1]):n.slice(void 0,[o.column,o.column+1])}fuzzySearchExpand(e,t,n,r=!0,i=0){let a=t.compare(e,v.EQUALS),o;return o=r?a.getFirstTruePosition():a.getLastTruePosition(),o==null?E.create(p.NA):i===0?n.slice([o.row,o.row+1]):n.slice(void 0,[o.column,o.column+1])}orderSearchExpand(e,t,n,r=yr.MIN,i=!1,a=0){let o=t.orderSearch(e,r,i);return o==null?E.create(p.NA):a===0?n.slice([o.row,o.row+1]):n.slice(void 0,[o.column,o.column+1])}flattenArray(e,t=!0){let n=[];n[0]=[];for(let r=0;r<e.length;r++){let i=e[r];if((i.isString()||i.isBoolean()||i.isNull())&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(i.isArray()){let e;if(i.iterator(r=>{if(r==null||r.isNull()||t&&(r.isString()||r.isBoolean()))return!0;if(r=this._includingLogicalValuesAndText(r),r.isError())return e=r,!1;n[0].push(r)}),e!=null&&e.isError())return e}else n[0].push(i)}return lo(n,1,n[0].length)}_includingLogicalValuesAndText(e){if(e.isBoolean()&&(e=mo(e)),e.isString()){let t=Number(e.getValue());e=R.create(Number.isNaN(t)?0:t)}return e}createReferenceObject(e,t){let n=e.getForcedUnitId()||e.getDefaultUnitId()||``,r=e.getForcedSheetId()||e.getDefaultUnitId()||``,i=Kt({unitId:n,sheetName:e.getForcedSheetName(),range:t}),a;return a=vt(i)?new oo(i):St(i)?new co(i):Ct(i)?new so(i):new ao(t,r,n),this._setReferenceDefault(e,a)}_setReferenceDefault(e,t){if(this.unitId==null||this.subUnitId==null)return E.create(p.REF);t.setDefaultUnitId(this.unitId),t.setDefaultSheetId(this.subUnitId);let n=e.getUnitId();n!=null&&t.setForcedUnitIdDirect(n);let r=e.getForcedSheetId();return r!=null&&t.setForcedSheetIdDirect(r),t.setForcedSheetName(e.getForcedSheetName()),t.setUnitData(e.getUnitData()),t.setRuntimeData(e.getRuntimeData()),t.setArrayFormulaCellData(e.getArrayFormulaCellData()),t.setUnitStylesData(e.getUnitStylesData()),t}},rc=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){if(e.isError())return e;let{isError:r,errorObject:i,variants:a}=tc(t,n);if(r)return i;let{isError:o,errorObject:s,variants:c}=X(...a);if(o)return s;let[l,u]=c,d=Math.floor(+l.getValue()),f=Math.floor(+u.getValue());if(d<0||f<0)return E.create(p.NUM);if(d===0||f===0)return E.create(p.REF);let m=e.isArray()?e.getRowCount():1,h=e.isArray()?e.getColumnCount():1;if(m===1&&h===1)return e.isArray()?e.get(0,0):e;let g=d>m?m:d,_=f>h?h:f;return e.slice([0,g],[0,_])}},ic=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=[];for(let n=0;n<e.length;n++){let r=e[n],i=r.isArray()?r.getRowCount():1,a=r.isArray()?r.getColumnCount():1;for(let e=0;e<i;e++)for(let n=0;n<a;n++){let i=r.isArray()?r.get(e,n):r;t.push([i])}}return B.create({calculateValueList:t,rowCount:t.length,columnCount:1,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}};let ac=function(e){return e.ARRAY_CONSTRAIN=`ARRAY_CONSTRAIN`,e.FLATTEN=`FLATTEN`,e}({}),oc=[[rc,ac.ARRAY_CONSTRAIN],[ic,ac.FLATTEN]],sc;(function(e){let t=.636619772;function n(e,t){let n=0;for(let r=0;r<e.length;++r)n=t*n+e[r];return n}function r(e,t,n,r,i){if(t===0)return n;if(t===1)return r;let a=2/e,o=n,s=r,c=r;for(let e=1;e<t;++e)c=s*e*a+i*o,o=s,s=c;return c}function i(e,t,n,i){return function(a,o){if(n){if(a===0)return n===1?-1/0:1/0;if(a<0)return NaN}return o===0?e(a):o===1?t(a):o<0?NaN:r(a,o|0,e(a),t(a),i)}}let a=e.besselj=(()=>{let e=[-184.9052456,77392.33017,-11214424.18,651619640.7,-13362590354,57568490574],i=[1,267.8532712,59272.64853,9494680.718,1029532985,57568490411],a=[2.093887211e-7,-2073370639e-15,2734510407e-14,-.001098628627,1],o=[-9.34935152e-8,7.621095161e-7,-6911147651e-15,.0001430488765,-.01562499995];function s(r){let s=0,c=0,l=0,u=r*r;if(r<8)c=n(e,u),l=n(i,u),s=c/l;else{let e=r-.785398164;u=64/u,c=n(a,u),l=n(o,u),s=Math.sqrt(t/r)*(Math.cos(e)*c-Math.sin(e)*l*8/r)}return s}let c=[-30.16036606,15704.4826,-2972611.439,242396853.1,-7895059235,72362614232],l=[1,376.9991397,99447.43394,18583304.74,2300535178,144725228442],u=[-2.40337019e-7,2457520174e-15,-3516396496e-14,.00183105,1],d=[1.05787412e-7,-8.8228987e-7,8449199096e-15,-.0002002690873,.04687499995];function f(e){let r=0,i=0,a=0,o=e*e,s=Math.abs(e)-2.356194491;return Math.abs(e)<8?(i=e*n(c,o),a=n(l,o),r=i/a):(o=64/o,i=n(u,o),a=n(d,o),r=Math.sqrt(t/Math.abs(e))*(Math.cos(s)*i-Math.sin(s)*a*8/Math.abs(e)),e<0&&(r=-r)),r}return function e(t,n){let i=Math.round(n);if(!Number.isFinite(t))return Number.isNaN(t)?t:0;if(i<0)return(i%2?-1:1)*e(t,-i);if(t<0)return(i%2?-1:1)*e(-t,i);if(i===0)return s(t);if(i===1)return f(t);if(t===0)return 0;let a=0;if(t>i)a=r(t,i,s(t),f(t),-1);else{let e=2*Math.floor((i+Math.floor(Math.sqrt(40*i)))/2),n=!1,r=0,o=0,s=1,c=0,l=2/t;for(let t=e;t>0;t--)if(c=t*l*s-r,r=s,s=c,Math.abs(s)>1e10&&(s*=1e-10,r*=1e-10,a*=1e-10,o*=1e-10),n&&(o+=s),n=!n,t===i&&(a=r),e-t>100&&a===0)return NaN;o=2*o-s,a/=o}return a}})();e.bessely=(()=>{let e=[228.4622733,-86327.92757,10879881.29,-512359803.6,7062834065,-2957821389],r=[1,226.1030244,47447.2647,7189466.438,745249964.8,40076544269],o=[2.093887211e-7,-2073370639e-15,2734510407e-14,-.001098628627,1],s=[-9.34945152e-8,7.621095161e-7,-6911147651e-15,.0001430488765,-.01562499995];function c(i){let c=0,l=0,u=0,d=i*i,f=i-.785398164;return i<8?(l=n(e,d),u=n(r,d),c=l/u+t*a(i,0)*Math.log(i)):(d=64/d,l=n(o,d),u=n(s,d),c=Math.sqrt(t/i)*(Math.sin(f)*l+Math.cos(f)*u*8/i)),c}let l=[8511.937935,-4237922.726,734926455.1,-51534381390,127527439e4,-4900604943e3],u=[1,354.9632885,102042.605,22459040.02,3733650367,424441966400,249958057e5],d=[-2.40337019e-7,2457520174e-15,-3516396496e-14,.00183105,1],f=[1.05787412e-7,-8.8228987e-7,8449199096e-15,-.0002002690873,.04687499995];function p(e){let r=0,i=0,o=0,s=e*e,c=e-2.356194491;return e<8?(i=e*n(l,s),o=n(u,s),r=i/o+t*(a(e,1)*Math.log(e)-1/e)):(s=64/s,i=n(d,s),o=n(f,s),r=Math.sqrt(t/e)*(Math.sin(c)*i+Math.cos(c)*o*8/e)),r}return i(c,p,1,-1)})();let o=e.besseli=(()=>{let e=[.0045813,.0360768,.2659732,1.2067492,3.0899424,3.5156229,1],t=[.00392377,-.01647633,.02635537,-.02057706,.00916281,-.00157565,.00225319,.01328592,.39894228];function r(r){return r<=3.75?n(e,r*r/(3.75*3.75)):Math.exp(Math.abs(r))/Math.sqrt(Math.abs(r))*n(t,3.75/Math.abs(r))}let i=[32411e-8,.00301532,.02658733,.15084934,.51498869,.87890594,.5],a=[-.00420059,.01787654,-.02895312,.02282967,-.01031555,.00163801,-.00362018,-.03988024,.39894228];function o(e){return e<3.75?e*n(i,e*e/(3.75*3.75)):(e<0?-1:1)*Math.exp(Math.abs(e))/Math.sqrt(Math.abs(e))*n(a,3.75/Math.abs(e))}return function e(t,n){let i=Math.round(n);if(i===0)return r(t);if(i===1)return o(t);if(i<0)return NaN;if(Math.abs(t)===0)return 0;if(t===1/0)return 1/0;let a=0,s,c=2/Math.abs(t),l=0,u=1,d=0,f=2*Math.round((i+Math.round(Math.sqrt(40*i)))/2);for(s=f;s>0;s--)if(d=s*c*u+l,l=u,u=d,Math.abs(u)>1e10&&(u*=1e-10,l*=1e-10,a*=1e-10),s===i&&(a=l),f-s>100&&a===0)return NaN;return a*=e(t,0)/u,t<0&&i%2?-a:a}})();e.besselk=(()=>{let e=[74e-7,1075e-7,.00262698,.0348859,.23069756,.4227842,-.57721566],t=[53208e-8,-.0025154,.00587872,-.01062446,.02189568,-.07832358,1.25331414];function r(r){return r<=2?-Math.log(r/2)*o(r,0)+n(e,r*r/4):Math.exp(-r)/Math.sqrt(r)*n(t,2/r)}let a=[-4686e-8,-.00110404,-.01919402,-.18156897,-.67278579,.15443144,1],s=[-68245e-8,.00325614,-.00780353,.01504268,-.0365562,.23498619,1.25331414];function c(e){return e<=2?Math.log(e/2)*o(e,1)+1/e*n(a,e*e/4):Math.exp(-e)/Math.sqrt(e)*n(s,2/e)}return i(r,c,2,1)})()})(sc||(sc={}));function cc(e){return/^[01]{1,10}$/.test(e)}function lc(e){return/^[0-7]{1,10}$/.test(e)}function uc(e){return/^[0-9A-Fa-f]{1,10}$/.test(e)}function dc(e){if(e===0)return 0;let t=[-1.3026537197817094,.6419697923564902,.019476473204185836,-.00956151478680863,-.000946595344482036,.000366839497852761,42523324806907e-18,-20278578112534e-18,-1624290004647e-18,130365583558e-17,1.5626441722e-8,-8.5238095915e-8,6.529054439e-9,5.059343495e-9,-991364156e-18,-227365122e-18,96467911e-18,2394038e-18,-6886027e-18,894487e-18,313092e-18,-112708e-18,381e-18,7106e-18,-1523e-18,-94e-18,121e-18,-28e-18],n=e,r=!1;n<0&&(n=-n,r=!0);let i=2/(2+n),a=4*i-2,o=0,s=0,c;for(let e=t.length-1;e>0;e--)c=o,o=a*o-s+t[e],s=c;let l=i*Math.exp(-n*n+.5*(t[0]+a*o)-s);return r?l-1:1-l}function fc(e){return 1-dc(e)}function pc(e){if(e>=2)return-100;if(e<=0)return 100;let t=e<1?e:2-e,n=Math.sqrt(-2*Math.log(t/2)),r=-.70711*((2.30753+n*.27061)/(1+n*(.99229+n*.04481))-n);for(let e=0;e<2;e++){let e=fc(r)-t;r+=e/(1.1283791670955126*Math.exp(-r*r)-r*e)}return e<1?r:-r}function mc(e,t=1){let n=Math.floor(e);if(e<0)return NaN;let r=1;for(;n>1&&Number.isFinite(r);)r*=n,n-=t;return r}function hc(e,t){let n=Math.min(e-t,t),r=1;for(let t=1;t<=n&&Number.isFinite(r);t++)r*=e-t+1,r/=t;return r}function gc(e,t){let n=Math.floor(e),r=Math.floor(t);for(;r!==0;){let e=r;r=n%r,n=e}return n}function _c(e,t){let n=gc(e,t);return n===0?0:Math.abs(e*t)/n}function vc(e){let t=e.length;if(t===1)return e[0][0];if(t===2)return e[0][0]*e[1][1]-e[0][1]*e[1][0];let{rowSwap:n,smallPivotDetected:r,luMatrix:i,permutation:a}=Tc(e);if(r)return 0;let o=n?1:-1;for(let e=0;e<a.length;e++)o*=i[e][e];return o===0?0:o}function yc(e){let t=vc(e);return t===0?null:e.length===1?[[1/t]]:xc(e).map(e=>e.map(e=>e/t))}function bc(e,t,n){return e.filter((e,n)=>n!==t).map(e=>e.filter((e,t)=>t!==n))}function xc(e){let t=e.length,n=Array.from({length:t},()=>Array(t).fill(0));for(let r=0;r<t;r++)for(let i=0;i<t;i++){let t=((r+i)%2==0?1:-1)*vc(bc(e,r,i));n[i][r]=t===0?0:t}return n}function Sc(e,t){return e.map(e=>t[0].map((n,r)=>e.reduce((e,n,i)=>e+n*t[i][r],0)))}function Cc(e){return e[0].map((t,n)=>e.map(e=>e[n]))}function wc(e){let{smallPivotDetected:t,luMatrix:n,permutation:r}=Tc(e);return t?null:Ec(n,r)}function Tc(e){let t=Cc(e),n=t.length,r=t[0].length,i=!0,a=!1,o=Dc(n,r,0),s=Array(r).fill(0).map((e,t)=>t);for(let e=0;e<r;e++){for(let n=0;n<e;n++){let r=t[n][e];for(let t=0;t<n;t++)r-=o[n][t]*o[t][e];o[n][e]=r}let r=-1/0,c=e;for(let i=e;i<n;i++){let n=t[i][e];for(let t=0;t<e;t++)n-=o[i][t]*o[t][e];o[i][e]=n;let a=Math.abs(n);a>r&&(r=a,c=i)}if(Math.abs(o[c][e])<1e-11){a=!0;break}c!==e&&([o[e],o[c]]=[o[c],o[e]],[t[e],t[c]]=[t[c],t[e]],[s[e],s[c]]=[s[c],s[e]],i=!i);let l=o[e][e];for(let t=e+1;t<n;t++)o[t][e]/=l}return{rowSwap:i,smallPivotDetected:a,luMatrix:o,permutation:s}}function Ec(e,t){let n=t.length,r=Dc(n,n,0);for(let e=0;e<n;e++)r[e][e]=1;let i=Dc(n,n,0);for(let e=0;e<n;e++){let a=t[e];for(let t=0;t<n;t++)i[e][t]=r[a][t]}for(let t=0;t<n;t++){let r=i[t];for(let a=t+1;a<n;a++){let o=e[a][t];for(let e=0;e<n;e++)i[a][e]-=r[e]*o}}for(let t=n-1;t>=0;t--){let r=i[t],a=e[t][t];for(let e=0;e<n;e++)r[e]/=a;for(let a=0;a<t;a++){let o=e[a][t];for(let e=0;e<n;e++)i[a][e]-=r[e]*o}}return i}function Dc(e,t,n){let r=[];for(let i=0;i<e;i++){r[i]=[];for(let e=0;e<t;e++)r[i].push(n)}return r}function Oc(e){let t=kc(e);if(!t)return null;let{matrixU:n,matrixS:r,matrixV:i}=t,a=Cc(n),o=Array.from({length:r.length},()=>Array(e[0].length).fill(0)),s=Math.max(e.length,e[0].length)*2**-52*r[0];for(let e=0;e<r.length;e++)Math.abs(r[e])>s&&(o[e][e]=1/r[e]);return Sc(i,Sc(o,a))}function kc(e){let t=Cc(e),n=t.length,r=t[0].length;if(n<r)return null;let i=Array(r).fill(0),a=Array(r).fill(0),o=Array.from({length:r},()=>Array(r).fill(0)),s=2**-52,c=0,l=0,u=0;for(let e=0;e<r;e++){if(i[e]=c,l=jc(t,e,n,e,e),l<=1e-64/s)c=0;else{c=Math.sqrt(l),t[e][e]>=0&&(c=-c);let i=t[e][e]*c-l;t[e][e]-=c;for(let a=e+1;a<r;a++){l=jc(t,e,n,e,a);for(let r=e;r<n;r++)t[r][a]+=l/i*t[r][e]}}if(a[e]=c,l=Mc(t,e+1,r,e,e),l<=1e-64/s)c=0;else{c=Math.sqrt(l),t[e][e+1]>=0&&(c=-c);let a=t[e][e+1]*c-l;t[e][e+1]-=c;for(let n=e+1;n<r;n++)i[n]=t[e][n]/a;for(let a=e+1;a<n;a++){l=Mc(t,e+1,r,a,e);for(let n=e+1;n<r;n++)t[a][n]+=l*i[n]}}let o=Math.abs(a[e])+Math.abs(i[e]);o>u&&(u=o)}let d=0;for(let e=r-1;e>=0;e--){if(c!==0){for(let n=d;n<r;n++)o[n][e]=t[e][n]/(c*t[e][e+1]);for(let n=d;n<r;n++){l=0;for(let i=d;i<r;i++)l+=t[e][i]*o[i][n];for(let t=d;t<r;t++)o[t][n]+=l*o[t][e]}}for(let t=d;t<r;t++)o[e][t]=0,o[t][e]=0;o[e][e]=1,c=i[e],d=e}for(let e=r-1;e>=0;e--){c=a[e];for(let n=e+1;n<r;n++)t[e][n]=0;if(c!==0){for(let i=e+1;i<r;i++){l=jc(t,e+1,n,e,i);for(let r=e;r<n;r++)t[r][i]+=l/(t[e][e]*c)*t[r][e]}for(let r=e;r<n;r++)t[r][e]/=c}else for(let r=e;r<n;r++)t[r][e]=0;t[e][e]+=1}s*=u;let f=0,p=0,m=0;for(let e=r-1;e>=0;e--)for(let c=0;c<50;c++){let l=!1,u=e;for(;u>=0;u--){if(Math.abs(i[u])<=s){l=!0;break}if(Math.abs(a[u-1])<=s)break}if(!l){let r=0,o=1;for(let c=u;c<e+1&&(f=o*i[c],p=a[c],i[c]*=r,!(Math.abs(f)<=s));c++){m=Ac(f,p),a[c]=m,r=p/m,o=-f/m;for(let e=0;e<n;e++){let n=t[e][u-1],i=t[e][c];t[e][u-1]=n*r+i*o,t[e][c]=-n*o+i*r}}}if(u===e){if(a[e]<0){a[e]=-a[e];for(let t=0;t<r;t++)o[t][e]=-o[t][e]}break}if(c>=49)return null;let d=a[u];f=((a[e-1]-a[e])*(a[e-1]+a[e])+(i[e-1]-i[e])*(i[e-1]+i[e]))/(2*i[e]*a[e-1]),m=Ac(f,1),f=f<0?((d-a[e])*(d+a[e])+i[e]*(a[e-1]/(f-m)-i[e]))/d:((d-a[e])*(d+a[e])+i[e]*(a[e-1]/(f+m)-i[e]))/d;let h=1,g=1;for(let s=u+1;s<e+1;s++){let e=i[s],c=a[s];p=g*e,e*=h,m=Ac(f,p),i[s-1]=m,h=f/m,g=p/m,f=d*h+e*g,p=c*g,e=-d*g+e*h,c*=h;for(let e=0;e<r;e++){let t=o[e][s-1],n=o[e][s];o[e][s-1]=t*h+n*g,o[e][s]=-t*g+n*h}m=Ac(f,p),a[s-1]=m,h=f/m,g=p/m,f=h*e+g*c,d=-g*e+h*c;for(let e=0;e<n;e++){let n=t[e][s-1],r=t[e][s];t[e][s-1]=n*h+r*g,t[e][s]=-n*g+r*h}}i[u]=0,i[e]=f,a[e]=d}for(let e=0;e<a.length;e++)a[e]<s&&(a[e]=0);for(let e=0;e<r;e++)for(let n=e-1;n>=0;n--)if(a[n]<a[e]){let r=a[n];a[n]=a[e],a[e]=r;for(let r=0;r<t.length;r++){let i=t[r][e];t[r][e]=t[r][n],t[r][n]=i}for(let t=0;t<o.length;t++){let r=o[t][e];o[t][e]=o[t][n],o[t][n]=r}e=n}return{matrixU:t,matrixS:a,matrixV:o}}function Ac(e,t){let n=0;return Math.abs(e)>Math.abs(t)?(n=t/e,Math.abs(e)*Math.sqrt(1+n*n)):t===0?0:(n=e/t,Math.abs(t)*Math.sqrt(1+n*n))}function jc(e,t,n,r,i){let a=0;for(let o=t;o<n;o++)a+=e[o][r]*e[o][i];return a}function Mc(e,t,n,r,i){let a=0;for(let o=t;o<n;o++)a+=e[r][o]*e[i][o];return a}let Nc=new Map([[`I`,1],[`V`,5],[`X`,10],[`L`,50],[`C`,100],[`D`,500],[`M`,1e3]]),Pc=new Map([[1,`I`],[4,`IV`],[5,`V`],[9,`IX`],[10,`X`],[40,`XL`],[45,`VL`],[49,`IL`],[50,`L`],[90,`XC`],[95,`VC`],[99,`IC`],[100,`C`],[400,`CD`],[450,`LD`],[490,`XD`],[495,`VD`],[499,`ID`],[500,`D`],[900,`CM`],[950,`LM`],[990,`XM`],[995,`VM`],[999,`IM`],[1e3,`M`]]),Fc=[[1,4,5,9,10,40,50,90,100,400,500,900,1e3,4e3],[1,4,5,9,10,40,45,50,90,95,100,400,450,500,900,950,1e3,4e3],[1,4,5,9,10,40,45,49,50,90,95,99,100,400,450,490,500,900,950,990,1e3,4e3],[1,4,5,9,10,40,45,49,50,90,95,99,100,400,450,490,495,500,900,950,990,995,1e3,4e3],[1,4,5,9,10,40,45,49,50,90,95,99,100,400,450,490,495,499,500,900,950,990,995,999,1e3,4e3]];function Ic(e,t,n){return e<=0?0:e>=1?1:zc(e,t,n)}function Lc(e,t,n){return e<=0||e>=1?0:t===1&&n===1?1:t<512&&n<512?e**(t-1)*(1-e)**(n-1)/Vc(t,n):Math.exp((t-1)*Math.log(e)+(n-1)*Math.log(1-e)-Hc(t,n))}function Rc(e,t,n){if(e<=0)return 0;if(e>=1)return 1;let r;if(t>=1&&n>=1){let i=e<.5?e:1-e,a=Math.sqrt(-2*Math.log(i));r=(2.30753+a*.27061)/(1+a*(.99229+a*.04481))-a,e<.5&&(r=-r);let o=(r*r-3)/6,s=2/(1/(2*t-1)+1/(2*n-1)),c=r*Math.sqrt(o+s)/s-(1/(2*n-1)-1/(2*t-1))*(o+5/6-2/(3*s));r=t/(t+n*Math.exp(2*c))}else{let i=Math.exp(t*Math.log(t/(t+n)))/t,a=i+Math.exp(n*Math.log(n/(t+n)))/n;r=e<i/a?(t*a*e)**(1/t):1-(n*a*(1-e))**(1/n)}let i=-Hc(t,n),a,o,s;for(let c=0;c<10;c++){if(r===0||r===1)return r;if(a=zc(r,t,n)-e,o=Math.exp((t-1)*Math.log(r)+(n-1)*Math.log(1-r)+i),s=a/o,r-=o=s/(1-.5*Math.min(1,s*((t-1)/r-(n-1)/(1-r)))),r<=0&&(r=.5*(r+o)),r>=1&&(r=.5*(r+o+1)),Math.abs(o)<1e-8*r&&c>0)break}return r}function zc(e,t,n){let r=e===0||e===1?0:Math.exp(il(t+n)-il(t)-il(n)+t*Math.log(e)+n*Math.log(1-e));return e<(t+1)/(t+n+2)?r*Bc(e,t,n)/t:1-r*Bc(1-e,n,t)/n}function Bc(e,t,n){let r=1e-8,i=1-(t+n)*e/(t+1);Math.abs(i)<r&&(i=r),i=1/i;let a=1,o=i;for(let s=1;s<=100;s++){let c=s*(n-s)*e/((t-1+s*2)*(t+s*2));if(i=1+c*i,Math.abs(i)<r&&(i=r),a=1+c/a,Math.abs(a)<r&&(a=r),i=1/i,o*=i*a,c=-(t+s)*(t+n+s)*e/((t+s*2)*(t+1+s*2)),i=1+c*i,Math.abs(i)<r&&(i=r),a=1+c/a,Math.abs(a)<r&&(a=r),i=1/i,o*=i*a,Math.abs(i*a-1)<r)break}return o}function Vc(e,t){return e+t>170?Math.exp(Hc(e,t)):el(e)*el(t)/el(e+t)}function Hc(e,t){return il(e)+il(t)-il(e+t)}function Uc(e,t,n){if(e<0)return 0;if(e>=t)return 1;if(n<0||n>1||t<=0)return NaN;let r=0;for(let i=0;i<=e;i++)r+=Wc(i,t,n);return r}function Wc(e,t,n){return n===0||n===1?t*n===e?1:0:hc(t,e)*n**e*(1-n)**(t-e)}function Gc(e,t){return e<=0?0:al(t/2,e/2)}function Kc(e,t){return e<0?0:e===0&&t===2?.5:Math.exp((t/2-1)*Math.log(e)-e/2-t/2*Math.log(2)-il(t/2))}function qc(e,t){return e<=0?0:e>=1?1/0:2*ol(e,t/2)}function Jc(e,t,n){return e<0?0:zc(t*e/(t*e+n),t/2,n/2)}function Yc(e,t,n){if(e<0)return 0;if(e===0&&t<2)return 1/0;if(e===0&&t===2)return 1;let r=1/Vc(t/2,n/2);return r*=(t/n)**(t/2),r*=e**(t/2-1),r*=(1+t/n*e)**(-(t+n)/2),r}function Xc(e,t,n){return e<=0?0:e>=1?1/0:n/(t*(1/Rc(e,t/2,n/2)-1))}function Zc(e,t){return e<0?0:1-Math.exp(-t*e)}function Qc(e,t){return e<0?0:t*Math.exp(-t*e)}function $c(e,t,n){let r=t.length,i=0,a=0;for(let e=0;e<r;e++)i+=t[e],a+=n[e];let o=i/r,s=a/r,c=0,l=0;for(let e=0;e<r;e++)c+=(t[e]-o)*(n[e]-s),l+=(n[e]-s)**2;if(l===0)return 1/0;let u=c/l;return o-u*s+u*e}function el(e){let t=[-1.716185138865495,24.76565080557592,-379.80425647094563,629.3311553128184,866.9662027904133,-31451.272968848367,-36144.413418691176,66456.14382024054],n=[-30.8402300119739,315.35062697960416,-1015.1563674902192,-3107.771671572311,22538.11842098015,4755.846277527881,-134659.9598649693,-115132.2596755535],r=0,i=e;if(e>171.6243769536076)return 1/0;if(i<=0){let e=i%1+36e-17;if(e)r=(i&1?-1:1)*Math.PI/Math.sin(Math.PI*e),i=1-i;else return 1/0}let a=i,o=0,s;s=i<1?i++:(i-=o=(i|0)-1)-1;let c=0,l=0;for(let e=0;e<8;++e)c=(c+t[e])*s,l=l*s+n[e];let u=c/l+1;if(a<i)u/=a;else if(a>i)for(let e=0;e<o;++e)u*=i,i++;return r&&(u=r/u),u}function tl(e,t,n){return e<=0?0:al(t,e/n)}function nl(e,t,n){return e<0?0:e===0&&t===1?1/n:Math.exp((t-1)*Math.log(e)-e/n-il(t)-t*Math.log(n))}function rl(e,t,n){return e<=0?0:e>=1?1/0:n*ol(e,t)}function il(e){let t=[76.18009172947146,-86.50532032941678,24.01409824083091,-1.231739572450155,.001208650973866179,-5395239384953e-18],n=e,r=e+5.5;r-=(e+.5)*Math.log(r);let i=1.000000000190015;for(let e=0;e<6;e++)i+=t[e]/++n;return-r+Math.log(2.5066282746310007*i/e)}function al(e,t){if(t<0||e<=0)return NaN;let n=1e-30,r=-~(Math.log(e>=1?e:1/e)*8.5+e*.4+17),i=il(e),a=Math.exp(-t+e*Math.log(t)-i),o=e,s=1/e,c=s;if(t<e+1){if(a===0)return 0;for(let e=1;e<=r&&(s+=c*=t/++o,!(Math.abs(c)<Math.abs(s)*n));e++);return s*a}if(a===0)return 1;let l=t+1-e,u=1/n,d=1/l,f=d;for(let t=1;t<=r;t++){let r=-t*(t-e);if(l+=2,d=r*d+l,Math.abs(d)<n&&(d=n),u=l+r/u,Math.abs(u)<n&&(u=n),d=1/d,f*=d*u,Math.abs(d*u-1)<n)break}return 1-f*a}function ol(e,t){if(e<=0)return 0;if(e>=1)return Math.max(100,t+100*Math.sqrt(t));let n;if(t>1){let r=e<.5?e:1-e,i=Math.sqrt(-2*Math.log(r));n=(2.30753+i*.27061)/(1+i*(.99229+i*.04481))-i,e<.5&&(n=-n),n=Math.max(.001,t*(1-1/(9*t)-n/(3*Math.sqrt(t)))**3)}else{let r=1-t*(.253+t*.12);n=e<r?(e/r)**(1/t):1-Math.log(1-(e-r)/(1-r))}let r=il(t),i,a;for(let o=0;o<12;o++){if(n<=0)return 0;if(i=al(t,n)-e,a=t>1?Math.exp((t-1)*(Math.log(t-1)-1)-r)*Math.exp(-(n-(t-1))+(t-1)*(Math.log(n)-Math.log(t-1))):Math.exp(-n+(t-1)*Math.log(n)-r),a!==0&&(a=i/a/(1-.5*Math.min(1,i/a*((t-1)/n-1)))),n-=a,n<=0&&(n=.5*(n+a)),Math.abs(a)<1e-8*n)break}return n}function sl(e,t,n,r){let i=0;for(let a=0;a<=e;a++)i+=cl(a,t,n,r);return i}function cl(e,t,n,r){return t-e>r-n?0:hc(n,e)*hc(r-n,t-e)/hc(r,t)}function ll(e,t,n){return e<0?0:.5+.5*dc((Math.log(e)-t)/Math.sqrt(2*n*n))}function ul(e,t,n){return e<=0?0:Math.exp(-Math.log(e)-.5*Math.log(2*Math.PI)-Math.log(n)-(Math.log(e)-t)**2/(2*n*n))}function dl(e,t,n){return Math.exp(gl(e,t,n))}function fl(e,t,n){if(e<0)return 0;let r=0;for(let i=0;i<=e;i++)r+=pl(i,t,n);return r}function pl(e,t,n){return e<0?0:hc(e+t-1,t-1)*n**t*(1-n)**e}function ml(e,t,n){return .5*(1+dc((e-t)/Math.sqrt(2*n*n)))}function hl(e,t,n){return Math.exp(-.5*Math.log(2*Math.PI)-Math.log(n)-(e-t)**2/(2*n*n))}function gl(e,t,n){return-1.4142135623730951*n*pc(2*e)+t}function _l(e,t){let n=0;for(let r=0;r<=e;r++)n+=vl(r,t);return n}function vl(e,t){return Math.exp(-t)*t**e/mc(e)}function yl(e,t){let n=.5*zc(t/(e**2+t),t/2,.5);return e<0?n:1-n}function bl(e,t){let n=(1+e**2/t)**(-(t+1)/2);return 1/(Math.sqrt(t)*Vc(.5,t/2))*n}function xl(e,t){let n=Rc(2*Math.min(e,1-e),.5*t,.5);return n=Math.sqrt(t*(1-n)/n),e>.5?n:-n}function Sl(e,n,r,i,a){let o=[],s=[],c=!0;for(let l=0;l<r;l++){let r=Math.floor(l/i),u=l%i,d=Math.floor(l/a),f=l%a,p=e.isArray()?e.get(r,u):e,m=n.isArray()?n.get(d,f):n;if(p.isError())return{isError:!0,errorObject:p,array1Values:o,array2Values:s,noCalculate:c};if(m.isError())return{isError:!0,errorObject:m,array1Values:o,array2Values:s,noCalculate:c};if(p.isNull()||m.isNull()||p.isBoolean()||m.isBoolean())continue;let h=p.getValue(),g=m.getValue();!(0,t.isRealNum)(h)||!(0,t.isRealNum)(g)||(o.push(+h),s.push(+g),c=!1)}return{isError:!1,errorObject:null,array1Values:o,array2Values:s,noCalculate:c}}function Cl(e,t,n){let r=e.isArray()?e.getRowCount():1,i=e.isArray()?e.getColumnCount():1,a=r,o=i;if(t&&!t.isNull()&&(a=t.isArray()?t.getRowCount():1,o=t.isArray()?t.getColumnCount():1,r===1&&o!==i||i===1&&a!==r||r!==1&&i!==1&&(a!==r||o!==i)))return{isError:!0,errorObject:E.create(p.REF)};if(n&&!n.isNull()){let e=n.isArray()?n.getRowCount():1,t=n.isArray()?n.getColumnCount():1;if(r===1&&a>1&&e!==a||i===1&&o>1&&t!==o)return{isError:!0,errorObject:E.create(p.REF)}}return{isError:!1,errorObject:null}}function wl(e){let t=e.isArray()?e.getRowCount():1,n=e.isArray()?e.getColumnCount():1,r=[];for(let i=0;i<t;i++){r[i]=[];for(let t=0;t<n;t++){let n=e.isArray()?e.get(i,t):e;if(n.isError()||n.isNull()||n.isBoolean()||n.isString())return E.create(p.VALUE);r[i].push(+n.getValue())}}return r}function Tl(e,t){let n=[],r=1;for(let i=0;i<e;i++){n[i]=[];for(let e=0;e<t;e++)n[i].push(r++)}return n}function El(e,t,n,r){let i=t;r&&(i=t.map(e=>Math.log(e)));let a,o;return n?{slope:a,intercept:o}=Dl(e,i):{slope:a,intercept:o}=Ol(e,i),r&&(a=Math.exp(a),o=Math.exp(o)),Number.isNaN(a)&&!n&&(a=0),{slope:a,intercept:o,Y:i}}function Dl(e,t){let n=t.length,r=0,i=0,a=0,o=0;for(let s=0;s<n;s++)r+=e[s],i+=t[s],a+=e[s]*e[s],o+=e[s]*t[s];let s=(n*o-r*i)/(n*a-r*r);return{slope:s,intercept:1/n*i-1/n*s*r}}function Ol(e,t){let n=[[...e]],r=[...t],i=n.length,a=n[0].length,o=Math.min(i,a),s=Array(o).fill(0);for(let e=0;e<o;e++){let t=n[e],r=0;for(let e=0;e<a;e++)r+=t[e]**2;let o=t[e]<0?Math.sqrt(r):-Math.sqrt(r);if(s[e]=o,o!==0){t[e]-=o;for(let r=e+1;r<i;r++){let i=0;for(let o=e;o<a;o++)i-=n[r][o]*t[o];i/=o*t[e];for(let o=e;o<a;o++)n[r][o]-=i*t[o]}}}i=n.length,a=n[0].length,o=Math.min(i,a);let c=Array(i).fill(0);for(let e=0;e<o;e++){let t=n[e],i=0;for(let e=0;e<a;e++)i+=r[e]*t[e];i/=s[e]*t[e];for(let e=0;e<a;e++)r[e]+=i*t[e]}for(let e=s.length-1;e>=0;e--){r[e]/=s[e];let t=r[e],i=n[e];c[e]=t;for(let n=0;n<e;n++)r[n]-=t*i[n]}return{slope:c[0],intercept:0}}function kl(e,t,n,r,i){let a=e.length===1&&e[0].length>1,o=e;i&&(o=e.map(e=>e.map(e=>Math.log(e))));let s=t,c=n;a&&(o=Cc(o),s=Cc(s),c=Cc(c)),r&&(s=s.map(e=>[...e,1]));let l=Cc(s),u=Sc(l,s),d=Sc(l,o),f=wc(u);if(!f&&(f=Oc(u),!f))return E.create(p.NA);let m=Sc(f,d);r||m.push([0]),m=Cc(m);let h=m[0].pop();if(m[0].reverse(),m[0].push(h),i)for(let e=0;e<m[0].length;e++)m[0][e]=Math.exp(m[0][e]);return{coefficients:m,Y:o,X:s,newX:c,XTXInverse:f}}function Al(e){let t=[],n=[],r=!1;for(let i=0;i<e.length;i++){let a=e[i];if(a.isReferenceObject())a.isMultiArea()?t.push(a):n.push(a);else{r=!0;break}}return{isError:r,multiAreaRefs:t,normalRefs:n}}let Q=function(e){return e.AVERAGE=`AVERAGE`,e.COUNT=`COUNT`,e.COUNTA=`COUNTA`,e.MAX=`MAX`,e.MIN=`MIN`,e.PRODUCT=`PRODUCT`,e.STDEV=`STDEV`,e.STDEV_S=`STDEV.S`,e.STDEVP=`STDEVP`,e.STDEV_P=`STDEV.P`,e.SUM=`SUM`,e.VAR=`VAR`,e.VAR_S=`VAR.S`,e.VARP=`VARP`,e.VAR_P=`VAR.P`,e.MEDIAN=`MEDIAN`,e.MODE_SNGL=`MODE.SNGL`,e}({});function jl(e,n){let r=e[n];return r?r.hd===t.BooleanNumber.TRUE:!1}function Ml(e,t,n,r,i,a){let o=e.getValue(t,n);if(o!=null&&o.f||o!=null&&o.si){let e=a.getFormulaStringByCell(t,n,r,i);if(e&&(e.indexOf(`${K.SUBTOTAL}(`)>-1||e.indexOf(`${K.AGGREGATE}(`)>-1))return!0}return!1}function Nl(e,t){let n=Object.entries(e).filter(([e,{count:n}])=>n===t).sort((e,t)=>e[1].order-t[1].order).map(([e])=>+e);return R.create(n[0])}function Pl(e,n){let{type:r,ignoreRowHidden:i,ignoreErrorValues:a,ignoreNested:o,formulaDataModel:s}=e,c=[],l=0,u=0,d=0,f=0,m=0,h=0,g=1,_={},v=1,y=0;for(let e=0;e<n.length;e++){var b;let p=n[e],x=p.getFilteredOutRows(),S=p.getRowData(),C=p.getUnitId(),w=p.getSheetId(),T=(b=p.getUnitData()[C])==null||(b=b[w])==null?void 0:b.cellData,ee;if(p.iterator((e,n,p)=>{if(x.includes(n)||i&&jl(S,n)||o&&Ml(T,n,p,w,C,s))return!0;if(r===Q.COUNT)return e!=null&&e.isNumber()&&l++,!0;if(r===Q.COUNTA)return e!=null&&!e.isNull()&&u++,!0;if(e!=null&&e.isError())return a?!0:(ee=e,!1);if(!e||e.isNull()||e.isBoolean()||e.isString())return!0;let b=e.getValue();if(!(0,t.isRealNum)(b))return!0;if(b=+b,f++,r===Q.MAX)return m=f===1?b:Math.max(m,b),!0;if(r===Q.MIN)return h=f===1?b:Math.min(h,b),!0;if(r===Q.MODE_SNGL)return _[b]?(_[b].count++,_[b].count>v&&(v=_[b].count)):_[b]={count:1,order:y++},!0;d+=b,g*=b,c.push(e)}),ee!=null&&ee.isError())return ee}switch(r){case Q.AVERAGE:return f===0?E.create(p.DIV_BY_ZERO):R.create(d/f);case Q.COUNT:return R.create(l);case Q.COUNTA:return R.create(u);case Q.MAX:return R.create(m);case Q.MIN:return R.create(h);case Q.PRODUCT:return R.create(f===0?0:g);case Q.STDEV:case Q.STDEV_S:return f<2?E.create(p.DIV_BY_ZERO):lo([c],1,f).std(1);case Q.STDEVP:case Q.STDEV_P:return f===0?E.create(p.DIV_BY_ZERO):lo([c],1,f).std();case Q.SUM:return R.create(d);case Q.VAR:case Q.VAR_S:return f<2?E.create(p.DIV_BY_ZERO):lo([c],1,f).var(1);case Q.VARP:case Q.VAR_P:return f===0?E.create(p.DIV_BY_ZERO):lo([c],1,f).var();case Q.MEDIAN:return f===0?E.create(p.NUM):Il(c.map(e=>+e.getValue()));case Q.MODE_SNGL:return y===0||v===1?E.create(p.NA):Nl(_,v);default:return E.create(p.VALUE)}}function Fl(e,n,r){let{ignoreRowHidden:i=!1,ignoreErrorValues:a=!1,ignoreNested:o=!1}=n==null?{}:n,s=[];if(e.isReferenceObject()){var c;let n=e.getFilteredOutRows(),l=e.getRowData(),u=e.getUnitId(),d=e.getSheetId(),f=(c=e.getUnitData()[u])==null||(c=c[d])==null?void 0:c.cellData,p;if(e.iterator((e,c,m)=>{if(n.includes(c)||i&&jl(l,c))return!0;if(e!=null&&e.isError())return a?!0:(p=e,!1);if(o&&r&&Ml(f,c,m,d,u,r)||!e||e.isNull()||e.isBoolean()||e.isString())return!0;let h=e.getValue();if(!(0,t.isRealNum)(h))return!0;s.push(+h)}),p)return p}else{let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1;for(let i=0;i<n;i++)for(let n=0;n<r;n++){let r=e.isArray()?e.get(i,n):e;if(r.isError()){if(a)continue;return r}if(!r||r.isNull()||r.isBoolean()||r.isString())continue;let o=r.getValue();(0,t.isRealNum)(o)&&s.push(+o)}}return s.length===0?E.create(p.NUM):s}function Il(e){let t=e.length;e.sort((e,t)=>e-t);let n;if(t%2==0){let r=t/2;n=(e[r-1]+e[r])/2}else n=e[Math.floor(t/2)];return R.create(n)}function Ll(e,t){if(t<1||t>e.length)return E.create(p.NUM);e.sort((e,t)=>t-e);let n=Math.ceil(t);return R.create(e[n-1])}function Rl(e,t){if(t<1||t>e.length)return E.create(p.NUM);e.sort((e,t)=>e-t);let n=Math.floor(t);return R.create(e[n-1])}function zl(e,t){let n=e.length;if(t<0||t>1)return E.create(p.NUM);e.sort((e,t)=>e-t);let r=t*(n-1),i=Math.floor(r),a=r-i;if(a===0)return R.create(e[i]);let o=e[i]+a*(e[i+1]-e[i]);return R.create(o)}function Bl(e,t){let n=e.length;if(t<1/(n+1)||t>1-1/(n+1))return E.create(p.NUM);e.sort((e,t)=>e-t);let r=t*(n+1)-1,i=Math.floor(r),a=r-i;if(a===0)return R.create(e[i]);let o=e[i]+a*(e[i+1]-e[i]);return R.create(o)}function Vl(e,t){let n=e.length;if(t<0||t>4)return E.create(p.NUM);e.sort((e,t)=>e-t);let r=t/4*(n-1),i=Math.floor(r),a=r-i;if(a===0)return R.create(e[i]);let o=e[i]+a*(e[i+1]-e[i]);return R.create(o)}function Hl(e,t){let n=e.length;if(t<=0||t>=4)return E.create(p.NUM);e.sort((e,t)=>e-t);let r=t/4;if(r<1/(n+1)||r>1-1/(n+1))return E.create(p.NUM);let i=r*(n+1)-1,a=Math.floor(i),o=i-a;if(o===0)return R.create(e[a]);let s=e[a]+o*(e[a+1]-e[a]);return R.create(s)}var Ul=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let a=r==null?R.create(0):r,o=i==null?R.create(1):i;a.isNull()&&(a=R.create(0)),o.isNull()&&(o=R.create(1));let s=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,a.isArray()?a.getRowCount():1,o.isArray()?o.getRowCount():1),c=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,a.isArray()?a.getColumnCount():1,o.isArray()?o.getColumnCount():1),l=V(s,c,e,E.create(p.NA)),u=V(s,c,t,E.create(p.NA)),d=V(s,c,n,E.create(p.NA)),f=V(s,c,a,E.create(p.NA)),m=V(s,c,o,E.create(p.NA)),h=l.mapValue((e,t,n)=>{let r=u.get(t,n),i=d.get(t,n),a=f.get(t,n),o=m.get(t,n);return this._handleSingleObject(e,r,i,a,o)});return s===1&&c===1?h.get(0,0):h}_handleSingleObject(e,t,n,r,i){if(e.isError())return e;if(t.isError())return t;if(n.isError())return n;if(r.isError())return r;if(i.isError())return i;let{isError:a,errorObject:o,variants:s}=X(e,t,n,r,i);if(a)return o;let[c,l,u,d,f]=s,m=+c.getValue(),h=+l.getValue(),g=+u.getValue(),_=+d.getValue(),v=+f.getValue();if(h<=0||g<=0||m<=0||m>=1||_>=v)return E.create(p.NUM);let y=Rc(m,h,g)*(v-_)+_;return R.create(y)}},Wl=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(e,t,n,r);if(i)return a;let[s,c,l,u]=o,d=Math.floor(+s.getValue()),f=Math.floor(+c.getValue()),m=+l.getValue(),h=+u.getValue();if(d<0||d>f||m<0||m>1)return E.create(p.NUM);let g;return g=h?Uc(d,f,m):Wc(d,f,m),R.create(g)}},Gl=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=Math.floor(+o.getValue()),u=+s.getValue(),d=+c.getValue();if(l<0||u<=0||u>=1||d<=0||d>=1)return E.create(p.NUM);let f=0;for(;f<=l&&!(Uc(f,l,u)>=d);)f++;return R.create(f)}},Kl=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return n===1&&r===1?o.get(0,0):o}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(s<0||c<1||c>10**10)return E.create(p.NUM);let l=1-Gc(s,c);return R.create(l)}},ql=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return n===1&&r===1?o.get(0,0):o}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(s<0||s>1||c<1||c>10**10)return E.create(p.NUM);let l=qc(1-s,c);return Number.isNaN(l)||!Number.isFinite(l)?E.create(p.NUM):R.create(l)}},Jl=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return o;let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return s;if(n*r===1||i*a===1)return o.isNull()||s.isNull()?E.create(p.VALUE):E.create(p.NA);if(n*r!==i*a)return E.create(p.NA);let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?l:f?E.create(p.DIV_BY_ZERO):this._getResult(u,d,n,r)}_getResult(e,t,n,r){let i=0;for(let n=0;n<e.length;n++){if(t[n]===0)return E.create(p.DIV_BY_ZERO);i+=(e[n]-t[n])**2/t[n]}let a=(n-1)*(r-1);n===1?a=r-1:r===1&&(a=n-1);let o=1-Gc(i,a);return R.create(o)}},Yl=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);if(e.isError())return e;if(r.isError())return r;if(i.isError())return i;let{isError:a,errorObject:c,variants:l}=X(e,r,i);if(a)return c;let[u,d,f]=l,m=+u.getValue(),h=+d.getValue(),g=Math.floor(+f.getValue());if(m<=0||m>=1||h<=0||g<1)return E.create(p.NUM);let _=Math.abs(gl(m/2,0,1)*h/Math.sqrt(g));return R.create(_)});return r===1&&i===1?c.get(0,0):c}},Xl=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return o;let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return s;if((n*r===1||i*a===1)&&(o.isNull()||s.isNull()))return E.create(p.VALUE);if(n*r!==i*a)return E.create(p.NA);let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?l:f?E.create(p.DIV_BY_ZERO):this._getResult(u,d)}_getResult(e,t){if(e.length===0)return E.create(p.DIV_BY_ZERO);let n=e.length,r=0,i=0;for(let a=0;a<n;a++)r+=e[a],i+=t[a];let a=r/n,o=i/n,s=0;for(let r=0;r<n;r++){let n=e[r]-a,i=t[r]-o;s+=n*i}return R.create(s/n)}},Zl=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=+s.getValue(),d=+c.getValue();if(l<0||u<=0)return E.create(p.NUM);let f;return f=d?Zc(l,u):Qc(l,u),R.create(f)}},Ql=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=Math.floor(+s.getValue()),d=Math.floor(+c.getValue());if(l<0||u<1||u>10**10||d<1||d>10**10)return E.create(p.NUM);let f=1-Jc(l,u,d);return R.create(f)}},$l=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=Math.floor(+s.getValue()),d=Math.floor(+c.getValue());if(l<0||l>1||u<1||u>10**10||d<1||d>10**10)return E.create(p.NUM);let f=Xc(1-l,u,d);return Number.isNaN(f)||!Number.isFinite(f)?E.create(p.NUM):R.create(f)}},eu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,variance:i,ns1:a}=this._getValues(e);if(n)return r;let{isError:o,errorObject:s,variance:c,ns1:l}=this._getValues(t);if(o)return s;let u=2*(1-Jc(i/c,a,l));return u>1&&(u=2-u),R.create(u)}_getValues(e){let n=0,r=0,i=e.isArray()?e.getRowCount():1,a=e.isArray()?e.getColumnCount():1;if(i===1&&a===1){let t=e.isArray()?e.get(0,0):e;return t.isError()?{isError:!0,errorObject:t,variance:n,ns1:r}:t.isNull()?{isError:!0,errorObject:E.create(p.VALUE),variance:n,ns1:r}:{isError:!0,errorObject:E.create(p.DIV_BY_ZERO),variance:n,ns1:r}}let o=[],s=0;for(let c=0;c<i;c++)for(let i=0;i<a;i++){let a=e.isArray()?e.get(c,i):e;if(a.isError())return{isError:!0,errorObject:a,variance:n,ns1:r};if(a.isNull()||a.isBoolean())continue;let l=a.getValue();(0,t.isRealNum)(l)&&(o.push(+l),s+=+l)}if(o.length<=1)return{isError:!0,errorObject:E.create(p.DIV_BY_ZERO),variance:n,ns1:r};let c=s/o.length,l=0;for(let e=0;e<o.length;e++)l+=(o[e]-c)**2;return r=o.length-1,n=l/r,n===0?{isError:!0,errorObject:E.create(p.DIV_BY_ZERO),variance:n,ns1:r}:{isError:!1,errorObject:null,variance:n,ns1:r}}},tu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(e,t,n,r);if(i)return a;let[s,c,l,u]=o,d=+s.getValue(),f=+c.getValue(),m=+l.getValue(),h=+u.getValue();if(d<0||f<=0||m<=0)return E.create(p.NUM);let g;return g=h?tl(d,f,m):nl(d,f,m),R.create(g)}},nu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=+s.getValue(),d=+c.getValue();if(l<0||l>1||u<=0||d<=0)return E.create(p.NUM);let f=rl(l,u,d);return Number.isNaN(f)||!Number.isFinite(f)?E.create(p.NUM):R.create(f)}},ru=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=+s.getValue(),d=+c.getValue();if(l<=0||l>=1||d<=0)return E.create(p.NUM);let f=dl(l,u,d);return Number.isNaN(f)||!Number.isFinite(f)?E.create(p.NUM):R.create(f)}},iu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let n={},r=0,i=1;for(let a=0;a<e.length;a++){let o=e[a];if(o.isError())return o;if(o.isString()){let e=o.convertToNumberObjectValue();if(e.isError())return e}let s=o.isArray()?o.getRowCount():1,c=o.isArray()?o.getColumnCount():1;for(let e=0;e<s;e++)for(let a=0;a<c;a++){let s=o.isArray()?o.get(e,a):o;if(s.isError())return s;if(s.isNull()||s.isBoolean()||s.isString())continue;let c=s.getValue();(0,t.isRealNum)(c)&&(n[+c]?(n[+c].count++,n[+c].count>i&&(i=n[+c].count)):n[+c]={count:1,order:r++})}}return r===0||i===1?new E(p.NA):Nl(n,i)}},au=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(e,t,n,r);if(i)return a;let[s,c,l,u]=o,d=+s.getValue(),f=+c.getValue(),m=+l.getValue(),h=+u.getValue();if(m<=0)return E.create(p.NUM);let g;return g=h?ml(d,f,m):hl(d,f,m),R.create(g)}},ou=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=+s.getValue(),d=+c.getValue();if(l<=0||l>=1||d<=0)return E.create(p.NUM);let f=gl(l,u,d);return R.create(f)}},su=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return e.getRowCount()===1&&e.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=+i.getValue();if(a<=0||a>=1)return E.create(p.NUM);let o=gl(a,0,1);return R.create(o)}},cu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Fl(e);if(t.isArray()){let e=t.mapValue(e=>this._handleSingleObject(n,e));return e.getRowCount()===1&&e.getColumnCount()===1?e.get(0,0):e}return this._handleSingleObject(n,t)}_handleSingleObject(e,t){if(!Array.isArray(e))return e;let{isError:n,errorObject:r,variants:i}=X(t);if(n)return r;let[a]=i;return zl(e,+a.getValue())}},lu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=this._getValues(e),i=n==null?R.create(3):n;i.isNull()&&(i=R.create(3));let a=Math.max(t.isArray()?t.getRowCount():1,i.isArray()?i.getRowCount():1),o=Math.max(t.isArray()?t.getColumnCount():1,i.isArray()?i.getColumnCount():1),s=V(a,o,t,E.create(p.NA)),c=V(a,o,i,E.create(p.NA)),l=s.mapValue((e,t,n)=>{let i=c.get(t,n);return e.isError()?e:i.isError()?i:this._handleSingleObject(r,e,i)});return a===1&&o===1?l.get(0,0):l}_handleSingleObject(e,t,n){if(e instanceof E)return e;let{isError:r,errorObject:i,variants:a}=X(t,n);if(r)return i;let[o,s]=a,c=+o.getValue(),l=Math.floor(+s.getValue()),u=e.length;if(u===0||c<e[0]||c>e[u-1])return E.create(p.NA);if(u===1)return c===e[0]?R.create(1):E.create(p.NA);let d=0,f=!1,m=0;for(;!f&&m<u;)c===e[m]?(d=m/(u-1),f=!0):c>e[m]&&m+1<u&&c<e[m+1]&&(d=(m+(c-e[m])/(e[m+1]-e[m]))/(u-1),f=!0),m++;return f?l<1?E.create(p.NUM):(d=Oa(d,l),R.create(d)):E.create(p.NA)}_getValues(e){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=[];for(let a=0;a<n;a++)for(let n=0;n<r;n++){let r=e.isArray()?e.get(a,n):e;if(r.isError())return r;if(r.isNull()||r.isBoolean())continue;let o=r.getValue();(0,t.isRealNum)(o)&&i.push(+o)}return i.sort((e,t)=>e-t)}},uu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=Math.floor(+o.getValue()),u=+s.getValue(),d=+c.getValue();if(l<0||u<0)return E.create(p.NUM);let f;return f=d?_l(l,u):vl(l,u),R.create(f)}},du=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Fl(e);if(t.isArray()){let e=t.mapValue(e=>this._handleSingleObject(n,e));return e.getRowCount()===1&&e.getColumnCount()===1?e.get(0,0):e}return this._handleSingleObject(n,t)}_handleSingleObject(e,t){if(!Array.isArray(e))return e;let{isError:n,errorObject:r,variants:i}=X(t);if(n)return r;let[a]=i;return Vl(e,Math.floor(+a.getValue()))}},fu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=this.flattenArray(e);return t.isError()?t:t.std()}},pu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=this.flattenArray(e);return t.isError()?t:t.std(1)}},mu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return n===1&&r===1?o.get(0,0):o}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(s<=0||s>1||c<1||c>10**10)return E.create(p.NUM);let l=Math.abs(xl(s/2,c));return Number.isNaN(l)||!Number.isFinite(l)?E.create(p.NUM):R.create(l)}},hu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a,array1Values:o,array2Values:s}=this._handleArray1AndArray2(e,t),c=this._getArrayValues(e),l=this._getArrayValues(t),u=Math.max(n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),d=Math.max(n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),f=V(u,d,n,E.create(p.NA)),m=V(u,d,r,E.create(p.NA)),h=f.mapValue((n,r,u)=>{let d=m.get(r,u);if(e.isError())return e;if(t.isError())return t;if(n.isError())return n;if(d.isError())return d;let{isError:f,errorObject:h,variants:g}=X(n,d);if(f)return h;let[_,v]=g,y=Math.floor(+_.getValue()),b=Math.floor(+v.getValue());return![1,2].includes(y)||![1,2,3].includes(b)?E.create(p.NUM):b===1&&i?a:b!==1&&c instanceof E?c:b!==1&&l instanceof E?l:this._handleSingleObject(b===1?o:c,b===1?s:l,y,b)});return u===1&&d===1?h.get(0,0):h}_handleSingleObject(e,t,n,r){if(e.length<2||t.length<2)return E.create(p.DIV_BY_ZERO);let{isError:i,errorObject:a,x:o,degFreedom:s}=this._getTDistParamByArrayValues(e,t,r);if(i)return a;let c=yl(-o,s);return n===2&&(c*=2),Number.isNaN(c)||!Number.isFinite(c)?E.create(p.NUM):R.create(c)}_getArrayValues(e){let t=e.isArray()?e.getRowCount():1,n=e.isArray()?e.getColumnCount():1,r=[];for(let i=0;i<t;i++)for(let a=0;a<n;a++){let o=e.isArray()?e.get(i,a):e;if(o.isError())return o;if(o.isNull()){if(t*n===1)return E.create(p.VALUE);continue}o.isBoolean()||o.isString()||r.push(+o.getValue())}return r}_handleArray1AndArray2(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return{isError:!0,errorObject:o,array1Values:[],array2Values:[]};let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return{isError:!0,errorObject:s,array1Values:[],array2Values:[]};if((n*r===1||i*a===1)&&(o.isNull()||s.isNull()))return{isError:!0,errorObject:E.create(p.VALUE),array1Values:[],array2Values:[]};if(n*r!==i*a)return{isError:!0,errorObject:E.create(p.NA),array1Values:[],array2Values:[]};let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?{isError:!0,errorObject:l,array1Values:[],array2Values:[]}:f||u.length<2?{isError:!0,errorObject:E.create(p.DIV_BY_ZERO),array1Values:[],array2Values:[]}:{isError:!1,errorObject:null,array1Values:u,array2Values:d}}_getTDistParamByArrayValues(e,t,n){return n===1?this._getTDistParamByType1(e,t):n===2?this._getTDistParamByType2(e,t):this._getTDistParamByType3(e,t)}_getTDistParamByType1(e,t){let n=e.length,r=0,i=0,a=0;for(let o=0;o<n;o++)r+=e[o],i+=t[o],a+=(e[o]-t[o])**2;let o=r-i,s=n*a-o**2,c=n-1;return s===0?{isError:!0,errorObject:E.create(p.DIV_BY_ZERO),x:0,degFreedom:c}:{isError:!1,errorObject:null,x:Math.abs(o)*Math.sqrt(c/s),degFreedom:c}}_getTDistParamByType2(e,t){let n=e.length,r=t.length,i=0,a=0;for(let t=0;t<n;t++)i+=e[t],a+=e[t]**2;let o=0,s=0;for(let e=0;e<r;e++)o+=t[e],s+=t[e]**2;let c=a-i**2/n,l=s-o**2/r,u=Math.sqrt(c+l);if(u===0)return{isError:!0,errorObject:E.create(p.DIV_BY_ZERO),x:0,degFreedom:0};let d=n-1+r-1,f=Math.sqrt(n*r*d/(n+r));return{isError:!1,errorObject:null,x:Math.abs(i/n-o/r)/u*f,degFreedom:d}}_getTDistParamByType3(e,t){let n=e.length,r=t.length,i=0,a=0;for(let t=0;t<n;t++)i+=e[t],a+=e[t]**2;let o=0,s=0;for(let e=0;e<r;e++)o+=t[e],s+=t[e]**2;let c=(a-i**2/n)/(n*(n-1)),l=(s-o**2/r)/(r*(r-1));if(c+l===0)return{isError:!0,errorObject:E.create(p.DIV_BY_ZERO),x:0,degFreedom:0};let u=c/(c+l);return{isError:!1,errorObject:null,x:Math.abs(i/n-o/r)/Math.sqrt(c+l),degFreedom:1/(u**2/(n-1)+(1-u)**2/(r-1))}}},gu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=this.flattenArray(e);return t.isError()?t:t.var()}},_u=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=this.flattenArray(e);return t.isError()?t:t.var(1)}},vu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(e,t,n,r);if(i)return a;let[s,c,l,u]=o,d=+s.getValue(),f=+c.getValue(),m=+l.getValue(),h=+u.getValue();if(d<0||f<=0||m<=0)return E.create(p.NUM);let g=Math.exp(-((d/m)**f)),_;return _=h?1-g:f/m**f*d**(f-1)*g,Number.isNaN(_)||!Number.isFinite(_)?E.create(p.NUM):R.create(_)}},yu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=this._getArrayValues(e),i=Math.max(t.isArray()?t.getRowCount():1,n!=null&&n.isArray()?n.getRowCount():1),a=Math.max(t.isArray()?t.getColumnCount():1,n!=null&&n.isArray()?n.getColumnCount():1),o=V(i,a,t,E.create(p.NA)),s=n?V(i,a,n,E.create(p.NA)):void 0,c=o.mapValue((e,t,i)=>{if(r instanceof E)return r;if(e.isError())return e;let a=n?s.get(t,i):void 0;return a!=null&&a.isError()?a:r.length===0?E.create(p.NA):r.length===1?E.create(p.DIV_BY_ZERO):this._handleSingleObject(r,e,a)});return i===1&&a===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(t);if(r)return i;let[o]=a,s=+o.getValue(),c=e.length,l=0,u=0;for(let t=0;t<c;t++)l+=e[t],u+=e[t]**2;let d=0;if(n!==void 0){let{isError:e,errorObject:t,variants:r}=X(n);if(e)return t;let[i]=r;d=+i.getValue()}else{let e=l/c;d=Math.sqrt((u-2*e*l+c*e**2)/(c-1))}if(d<=0)return E.create(p.NUM);let f=1-ml((l/c-s)/(d/Math.sqrt(c)),0,1);return Number.isNaN(f)||!Number.isFinite(f)?E.create(p.NUM):R.create(f)}_getArrayValues(e){let n=[],r=e.isArray()?e.getRowCount():1,i=e.isArray()?e.getColumnCount():1;for(let a=0;a<r;a++)for(let r=0;r<i;r++){let i=e.isArray()?e.get(a,r):e;if(i.isError())return i;if(i.isNull()||i.isBoolean()||i.isString())continue;let o=i.getValue();(0,t.isRealNum)(o)&&n.push(+o)}return n}},bu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let a=r==null?R.create(0):r,o=i==null?R.create(1):i;a.isNull()&&(a=R.create(0)),o.isNull()&&(o=R.create(1));let s=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,a.isArray()?a.getRowCount():1,o.isArray()?o.getRowCount():1),c=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,a.isArray()?a.getColumnCount():1,o.isArray()?o.getColumnCount():1),l=V(s,c,e,E.create(p.NA)),u=V(s,c,t,E.create(p.NA)),d=V(s,c,n,E.create(p.NA)),f=V(s,c,a,E.create(p.NA)),m=V(s,c,o,E.create(p.NA)),h=l.mapValue((e,t,n)=>{let r=u.get(t,n),i=d.get(t,n),a=f.get(t,n),o=m.get(t,n);return this._handleSingleObject(e,r,i,a,o)});return s===1&&c===1?h.get(0,0):h}_handleSingleObject(e,t,n,r,i){if(e.isError())return e;if(t.isError())return t;if(n.isError())return n;if(r.isError())return r;if(i.isError())return i;let{isError:a,errorObject:o,variants:s}=X(e,t,n,r,i);if(a)return o;let[c,l,u,d,f]=s,m=+c.getValue(),h=+l.getValue(),g=+u.getValue(),_=+d.getValue(),v=+f.getValue();if(h<=0||g<=0||m<_||m>v||_===v)return E.create(p.NUM);let y=Ic((m-_)/(v-_),h,g);return R.create(y)}};let xu=function(e){return e.BETADIST=`BETADIST`,e.BETAINV=`BETAINV`,e.BINOMDIST=`BINOMDIST`,e.CHIDIST=`CHIDIST`,e.CHIINV=`CHIINV`,e.CHITEST=`CHITEST`,e.CONFIDENCE=`CONFIDENCE`,e.COVAR=`COVAR`,e.CRITBINOM=`CRITBINOM`,e.EXPONDIST=`EXPONDIST`,e.FDIST=`FDIST`,e.FINV=`FINV`,e.FTEST=`FTEST`,e.GAMMADIST=`GAMMADIST`,e.GAMMAINV=`GAMMAINV`,e.HYPGEOMDIST=`HYPGEOMDIST`,e.LOGINV=`LOGINV`,e.LOGNORMDIST=`LOGNORMDIST`,e.MODE=`MODE`,e.NEGBINOMDIST=`NEGBINOMDIST`,e.NORMDIST=`NORMDIST`,e.NORMINV=`NORMINV`,e.NORMSDIST=`NORMSDIST`,e.NORMSINV=`NORMSINV`,e.PERCENTILE=`PERCENTILE`,e.PERCENTRANK=`PERCENTRANK`,e.POISSON=`POISSON`,e.QUARTILE=`QUARTILE`,e.RANK=`RANK`,e.STDEV=`STDEV`,e.STDEVP=`STDEVP`,e.TDIST=`TDIST`,e.TINV=`TINV`,e.TTEST=`TTEST`,e.VAR=`VAR`,e.VARP=`VARP`,e.WEIBULL=`WEIBULL`,e.ZTEST=`ZTEST`,e}({});var Su=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(e,t,n,r);if(i)return a;let[s,c,l,u]=o,d=Math.floor(+s.getValue()),f=Math.floor(+c.getValue()),m=Math.floor(+l.getValue()),h=Math.floor(+u.getValue());if(d<0||d>f||d>m||d<f-h+m||f<=0||f>h||m<=0||m>h||h<=0)return E.create(p.NUM);let g=cl(d,f,m,h);return Number.isNaN(g)&&(g=0),R.create(g)}},Cu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=+s.getValue(),d=+c.getValue();if(l<=0||d<=0)return E.create(p.NUM);let f=ll(l,u,d);return R.create(f)}},wu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=Math.floor(+o.getValue()),u=Math.floor(+s.getValue()),d=+c.getValue();if(l<0||u<1||d<=0||d>=1)return E.create(p.NUM);let f=pl(l,u,d);return R.create(f)}},Tu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return e.getRowCount()===1&&e.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=ml(+i.getValue(),0,1);return R.create(a)}},Eu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3),d(this,`needsReferenceObject`,!0)}calculate(e,t,n){let r=e;r.isReferenceObject()&&(r=r.toArrayValueObject());let{refHasError:i,refErrorObject:a,refNumbers:o}=this._checkRefReferenceObject(t),s=n==null?R.create(0):n;s.isReferenceObject()&&(s=s.toArrayValueObject());let c=Math.max(r.isArray()?r.getRowCount():1,s.isArray()?s.getRowCount():1),l=Math.max(r.isArray()?r.getColumnCount():1,s.isArray()?s.getColumnCount():1),u=V(c,l,r,E.create(p.NA)),d=V(c,l,s,E.create(p.NA)),f=u.map((t,n,r)=>{let s=d.get(n,r);if(!e.isReferenceObject()&&e.isNull())return E.create(p.NA);if(i)return a;if(s.isError())return s;let c=+t.getValue(),l=+s.getValue();if(Number.isNaN(c)||Number.isNaN(l))return E.create(p.VALUE);let u=o.sort((e,t)=>l?e-t:t-e).indexOf(c);return u===-1?E.create(p.NA):R.create(u+1)});return c===1&&l===1?f.get(0,0):f}_checkRefReferenceObject(e){let t=!1,n=E.create(p.NA),r=[];return e.isReferenceObject()?(e.toArrayValueObject().iterator(e=>{let i=e;if(i.isError())return t=!0,n=i,!1;if(i.isNull()||i.isBoolean())return!0;let a=+i.getValue();if(Number.isNaN(a))return!0;r.push(a)}),{refHasError:t,refErrorObject:n,refNumbers:r}):{refHasError:!0,refErrorObject:n,refNumbers:r}}},Du=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=Math.floor(+s.getValue()),d=Math.floor(+c.getValue());if(l<0||u<1||u>10**10||d<1||d>2)return E.create(p.NUM);let f=yl(-l,u);return d===2&&(f*=2),Number.isNaN(f)||!Number.isFinite(f)?E.create(p.NUM):R.create(f)}};let Ou=[[bu,xu.BETADIST],[Ul,xu.BETAINV],[Wl,xu.BINOMDIST],[Kl,xu.CHIDIST],[ql,xu.CHIINV],[Jl,xu.CHITEST],[Yl,xu.CONFIDENCE],[Xl,xu.COVAR],[Gl,xu.CRITBINOM],[Zl,xu.EXPONDIST],[Ql,xu.FDIST],[$l,xu.FINV],[eu,xu.FTEST],[tu,xu.GAMMADIST],[nu,xu.GAMMAINV],[Su,xu.HYPGEOMDIST],[Cu,xu.LOGNORMDIST],[ru,xu.LOGINV],[iu,xu.MODE],[wu,xu.NEGBINOMDIST],[au,xu.NORMDIST],[ou,xu.NORMINV],[Tu,xu.NORMSDIST],[su,xu.NORMSINV],[cu,xu.PERCENTILE],[lu,xu.PERCENTRANK],[uu,xu.POISSON],[du,xu.QUARTILE],[Eu,xu.RANK],[pu,xu.STDEV],[fu,xu.STDEVP],[Du,xu.TDIST],[mu,xu.TINV],[hu,xu.TTEST],[_u,xu.VAR],[gu,xu.VARP],[vu,xu.WEIBULL],[yu,xu.ZTEST]],ku=[],Au=function(e){return e.CUBEKPIMEMBER=`CUBEKPIMEMBER`,e.CUBEMEMBER=`CUBEMEMBER`,e.CUBEMEMBERPROPERTY=`CUBEMEMBERPROPERTY`,e.CUBERANKEDMEMBER=`CUBERANKEDMEMBER`,e.CUBESET=`CUBESET`,e.CUBESETCOUNT=`CUBESETCOUNT`,e.CUBEVALUE=`CUBEVALUE`,e}({});var ju=class extends Z{isCustom(){return!0}},Mu=class extends ju{isAsync(){return!0}};function Nu(e){let n=[];if(e.isError())return{isError:!0,errorObject:e,databaseValues:n};let r=e.isArray()?e.getRowCount():1,i=e.isArray()?e.getColumnCount():1;if(r<2)return{isError:!0,errorObject:E.create(p.VALUE),databaseValues:n};for(let a=0;a<r;a++){let r=[];for(let n=0;n<i;n++){let i=e.get(a,n);if(i.isNull()){r.push(null);continue}let o=`${i.getValue()}`;if(i.isBoolean()&&(o=o.toLocaleUpperCase()),i.isNumber()||(0,t.isRealNum)(o)){r.push(+o);continue}r.push(o)}n.push(r)}return{isError:!1,errorObject:null,databaseValues:n}}function Pu(e,n){let r=-1;if(e.isError())return{isError:!0,errorObject:e,fieldIndex:r};let i=e.isArray()?e.getRowCount():1,a=e.isArray()?e.getColumnCount():1;if(i>1||a>1)return{isError:!0,errorObject:E.create(p.VALUE),fieldIndex:r};let o=e.isArray()?e.get(0,0):e,s=`${o.getValue()}`;if(o.isNull()?s=0:o.isBoolean()?s=o.getValue()?1:0:(o.isNumber()||(0,t.isRealNum)(s))&&(s=Math.floor(+s)),typeof s==`number`){if(s<1||s>n[0].length)return{isError:!0,errorObject:E.create(p.VALUE),fieldIndex:r};r=s-1}else if(r=n[0].findIndex(e=>e===null?!1:`${e}`.toLocaleLowerCase()===s.toLocaleLowerCase()),r===-1)return{isError:!0,errorObject:E.create(p.VALUE),fieldIndex:r};return{isError:!1,errorObject:null,fieldIndex:r}}function Fu(e){let n=[];if(e.isError())return{isError:!0,errorObject:e,criteriaValues:n};let r=e.isArray()?e.getRowCount():1,i=e.isArray()?e.getColumnCount():1;if(r<2)return{isError:!0,errorObject:E.create(p.VALUE),criteriaValues:n};for(let a=0;a<r;a++){let r=[];for(let n=0;n<i;n++){let i=e.get(a,n);if(i.isNull()){r.push(null);continue}let o=`${i.getValue()}`;if(i.isBoolean()){r.push(i.getValue()?1:0);continue}if(i.isNumber()||(0,t.isRealNum)(o)){r.push(+o);continue}r.push(o)}n.push(r)}return{isError:!1,errorObject:null,criteriaValues:n}}function Iu(e,t,n){let r=e.length,i=e[0].length,a={},o=!1;for(let s=1;s<r;s++){let r=!0;for(let o=0;o<i;o++){let i=e[s][o];if(i===null)continue;let c=a[o];if(c===void 0){let n=e[0][o];c=t[0].findIndex(e=>e===null||n===null?!1:`${e}`.toLocaleLowerCase()===`${n}`.toLocaleLowerCase()),a[o]=c}if(c===-1&&(typeof i==`string`||i===0)){r=!1;break}else if(c>-1){let e=t[n][c];if(e===null){r=!1;break}let[a,o]=uo(`${i}`);if(!$a.create(`${e}`).compare(o,a).getValue()){r=!1;break}}}if(r){o=!0;break}}return o}var Lu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=0,m=0;for(let e=1;e<a.length;e++){let t=a[e][c];typeof t==`number`&&Iu(d,a,e)&&(f+=t,m++)}return m===0?E.create(p.DIV_BY_ZERO):R.create(f/m)}},Ru=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=0;for(let e=1;e<a.length;e++)typeof a[e][c]==`number`&&Iu(d,a,e)&&f++;return R.create(f)}},zu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=0;for(let e=1;e<a.length;e++)a[e][c]!=null&&Iu(d,a,e)&&f++;return R.create(f)}},Bu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=0,m=0;for(let e=1;e<a.length;e++)a[e][c]!=null&&Iu(d,a,e)&&(f++,m=e);return f===0?E.create(p.VALUE):f>1?E.create(p.NUM):e.get(m,c)}},Vu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=-1/0,p=0;for(let e=1;e<a.length;e++){let t=a[e][c];typeof t==`number`&&Iu(d,a,e)&&(f=Math.max(f,t),p++)}return p===0?R.create(0):R.create(f)}},Hu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=1/0,p=0;for(let e=1;e<a.length;e++){let t=a[e][c];typeof t==`number`&&Iu(d,a,e)&&(f=Math.min(f,t),p++)}return p===0?R.create(0):R.create(f)}},Uu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=1,p=0;for(let e=1;e<a.length;e++){let t=a[e][c];typeof t==`number`&&Iu(d,a,e)&&(f*=t,p++)}return p===0?R.create(0):R.create(f)}},Wu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=[],m=0,h=0;for(let e=1;e<a.length;e++){let t=a[e][c];typeof t==`number`&&Iu(d,a,e)&&(f.push(t),m+=t,h++)}if(h<=1)return E.create(p.DIV_BY_ZERO);let g=m/h,_=0;for(let e=0;e<h;e++)_+=(f[e]-g)**2;let v=Math.sqrt(_/(h-1));return R.create(v)}},Gu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=[],m=0,h=0;for(let e=1;e<a.length;e++){let t=a[e][c];typeof t==`number`&&Iu(d,a,e)&&(f.push(t),m+=t,h++)}if(h===0)return E.create(p.DIV_BY_ZERO);let g=m/h,_=0;for(let e=0;e<h;e++)_+=(f[e]-g)**2;let v=Math.sqrt(_/h);return R.create(v)}},Ku=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=0;for(let e=1;e<a.length;e++){let t=a[e][c];typeof t==`number`&&Iu(d,a,e)&&(f+=t)}return R.create(f)}},qu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=[],m=0,h=0;for(let e=1;e<a.length;e++){let t=a[e][c];typeof t==`number`&&Iu(d,a,e)&&(f.push(t),m+=t,h++)}if(h<=1)return E.create(p.DIV_BY_ZERO);let g=m/h,_=0;for(let e=0;e<h;e++)_+=(f[e]-g)**2;let v=_/(h-1);return R.create(v)}},Ju=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,databaseValues:a}=Nu(e);if(r)return i;let{isError:o,errorObject:s,fieldIndex:c}=Pu(t,a);if(o)return s;let{isError:l,errorObject:u,criteriaValues:d}=Fu(n);if(l)return u;let f=[],m=0,h=0;for(let e=1;e<a.length;e++){let t=a[e][c];typeof t==`number`&&Iu(d,a,e)&&(f.push(t),m+=t,h++)}if(h===0)return E.create(p.DIV_BY_ZERO);let g=m/h,_=0;for(let e=0;e<h;e++)_+=(f[e]-g)**2;let v=_/h;return R.create(v)}};let Yu=function(e){return e.DAVERAGE=`DAVERAGE`,e.DCOUNT=`DCOUNT`,e.DCOUNTA=`DCOUNTA`,e.DGET=`DGET`,e.DMAX=`DMAX`,e.DMIN=`DMIN`,e.DPRODUCT=`DPRODUCT`,e.DSTDEV=`DSTDEV`,e.DSTDEVP=`DSTDEVP`,e.DSUM=`DSUM`,e.DVAR=`DVAR`,e.DVARP=`DVARP`,e}({}),Xu=[[Lu,Yu.DAVERAGE],[Ru,Yu.DCOUNT],[zu,Yu.DCOUNTA],[Bu,Yu.DGET],[Vu,Yu.DMAX],[Hu,Yu.DMIN],[Uu,Yu.DPRODUCT],[Wu,Yu.DSTDEV],[Gu,Yu.DSTDEVP],[Ku,Yu.DSUM],[qu,Yu.DVAR],[Ju,Yu.DVARP]];var Zu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.map((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);if(e.isError())return e;if(r.isError())return r;if(i.isError())return i;let{isError:a,errorObject:c,variants:l}=X(e,r,i);if(a)return c;let[u,d,f]=l,m=Math.floor(+u.getValue()),h=Math.floor(+d.getValue()),g=Math.floor(+f.getValue());if(m<0||m>9999)return E.create(p.NUM);m>=0&&m<1899&&(m+=1900);let _=D(new Date(Date.UTC(m,h-1,g)));return _<0?E.create(p.NUM):R.create(_,ne)});return r===1&&i===1?c.get(0,0):c}},Qu=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=e,i=t,a=n;if(r.isArray()&&(r=r.get(0,0)),i.isArray()&&(i=i.get(0,0)),a.isArray()&&(a=a.get(0,0)),r.isError())return r;if(i.isError())return i;if(a.isError())return a;let o=k(r);if(typeof o!=`number`)return o;let s=k(i);return typeof s==`number`?s<o||!a.isString()?E.create(p.NUM):this._getResultByUnit(o,s,a):s}_getResultByUnit(e,t,n){let r=O(e),i=r.getUTCFullYear(),a=r.getUTCMonth()+1,o=r.getUTCDate(),s=O(t),c=s.getUTCFullYear(),l=s.getUTCMonth()+1,u=s.getUTCDate(),d=`${n.getValue()}`.toLocaleUpperCase(),f=0,m;switch(d){case`Y`:f=c-i,(l<a||l===a&&u<o)&&--f;break;case`M`:f=(c-i)*12+l-a,u<o&&--f;break;case`D`:f=Math.floor(t)-Math.floor(e);break;case`MD`:f=u-o,u<o&&(m=new Date(Date.UTC(c,l-1,0)),f+=we(m.getUTCFullYear(),m.getUTCMonth()));break;case`YM`:f=l-a,(l<a||l===a&&u<o)&&(f+=12),u<o&&--f;break;case`YD`:m=new Date(Date.UTC(i,l-1,u)),(l<a||l===a&&u<o)&&(m=new Date(Date.UTC(i+1,l-1,u))),f=Math.floor(D(m))-Math.floor(e);break;default:return E.create(p.NUM)}return R.create(f)}},$u=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}isArgumentsIgnoreNumberPattern(){return!0}calculate(e){return e.isArray()?e.mapValue(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;if(e.isString()){let t=`${e.getValue()}`,n=se(t);if(n===null&&(n=ce(t)),n){let{v:e,z:t}=n;if(t&&le(t))return e instanceof Date&&(e=ie(e)),R.create(Math.trunc(+e))}}return E.create(p.VALUE)}},ed=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isError()?e:e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t,n=e.getValue();if(e.isString()){if(!oe(`${n}`))return E.create(p.VALUE);t=new Date(`${n}`)}else{let n=+e.getValue();if(n<0)return E.create(p.NUM);if(n===0)return R.create(0);t=O(n)}let r=t.getUTCDate();return R.create(r)}},td=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e),a=V(n,r,t),o=i.map((e,t,n)=>{let r=a.get(t,n);if(e.isError())return e;if(r.isError())return r;let i=k(e);if(typeof i!=`number`)return i;let o=k(r);if(typeof o!=`number`)return o;let s=Math.floor(i)-Math.floor(o);return R.create(s)});return n===1&&r===1?o.get(0,0):o}},nd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?L.create(!1):n;if(e.isError())return e;if(t.isError())return t;if(r.isError())return r;let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,r,E.create(p.NA)),l=o.map((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n);if(e.isError())return e;let a=k(e);if(typeof a!=`number`)return a;if(r.isError())return r;let o=k(r);if(typeof o!=`number`)return o;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;let{days:l}=ge(a,o,+i.getValue()?4:0),u=o>=a?l:-l;return R.create(u)});return i===1&&a===1?l.get(0,0):l}},rd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e),a=V(n,r,t);return i.map((e,t,n)=>{let r=a.get(t,n)||Ua.create();if(e.isError())return e;if(r.isError())return r;if(e.isString()||e.isBoolean()||r.isString()||r.isBoolean())return E.create(p.VALUE);let i=+e.getValue();if(i<0)return E.create(p.NUM);let o=Math.floor(+r.getValue()),s=O(i),c=s.getUTCFullYear(),l=s.getUTCMonth()+o,u=s.getUTCDate(),d=D(new Date(Date.UTC(c,l,u)));return R.create(d,ne)})}},id=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e,r=t;if(n.isArray()){let e=n.getRowCount(),t=n.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);n=n.get(0,0)}if(r.isArray()){let e=r.getRowCount(),t=r.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);r=r.get(0,0)}if(n.isError())return n;if(r.isError())return r;let i=k(n);if(typeof i!=`number`)return i;if(r.isBoolean())return E.create(p.VALUE);let a=O(i),o=i>0?a.getUTCFullYear():1900,s=i>0?a.getUTCMonth():0,c=Math.floor(+r.getValue());if(Number.isNaN(c))return E.create(p.VALUE);let l=D(new Date(Date.UTC(o,s+c+1,0)));return R.create(l)}},ad=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2),d(this,`needsReferenceObject`,!0)}calculate(e,t){let n=t==null?R.create(1):t,{isError:r,errorObject:i,timestampIsReferenceObject:a,timestampObject:o,unitObject:s}=this._checkVariants(e,n);if(r)return i;if(o.isNull()||o.isBoolean()||o.isString()||!a&&o.isNumber()&&o.getPattern()!==``)return E.create(p.VALUE);let c=+o.getValue(),{isError:l,errorObject:u,variants:d}=X(s);if(l)return u;let[f]=d,m=Math.floor(+f.getValue());if(c<0||m<1||m>3)return E.create(p.NUM);m===1&&(c*=1e3),m===3&&(c/=1e3);let h=new Date(Date.UTC(1970,0,1,0,0,0,0)+c);if(Number.isNaN(h.getTime())){let e=25569+c/864e5;return R.create(e)}else{let e=ie(h);return R.create(e,`yyyy-MM-dd AM/PM hh:mm:ss`)}}_checkVariants(e,t){let n=e.isReferenceObject(),r=t.isReferenceObject(),i=e;if(n&&(i=e.toArrayValueObject()),i.isArray()){let e=i.getRowCount(),t=i.getColumnCount();if(e>1||t>1)return{isError:!0,errorObject:E.create(p.VALUE)};i=i.get(0,0)}if(i.isError())return{isError:!0,errorObject:i};let a=t;if(r&&(a=t.toArrayValueObject()),a.isArray()){let e=a.getRowCount(),t=a.getColumnCount();if(e>1||t>1)return{isError:!0,errorObject:E.create(p.VALUE)};a=a.get(0,0)}return a.isError()?{isError:!0,errorObject:a}:{isError:!1,errorObject:null,timestampIsReferenceObject:n,timestampObject:i,unitIsReferenceObject:r,unitObject:a}}},od=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isError()?e:e.isArray()?e.map(e=>e.isError()?e:this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=k(e);if(typeof t!=`number`)return t;if(t===0)return R.create(0);let n=ae(t).getUTCHours();return R.create(n)}},sd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isError()?e:e.isArray()?e.map(e=>e.isError()?e:this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=k(e);if(typeof t!=`number`)return t;let n=O(t),r=t>0?n.getUTCFullYear():1900,i=new Date(Date.UTC(r,0,1)),a=D(i),o=he(a),s;s=o<1?a+1:o<=4?a-(o-1):a+(11-o),t<s&&(i=new Date(Date.UTC(r-1,0,1)),a=D(i),o=he(a),s=o<1?a+1:o<=4?a-(o-1):a+(11-o));let c=Math.ceil((t-s+1)/7);return R.create(c)}},cd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isError()?e:e.isArray()?e.map(e=>e.isError()?e:this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=k(e);if(typeof t!=`number`)return t;if(t===0)return R.create(0);let n=ae(t).getUTCMinutes();return R.create(n)}},ld=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;let t,n=e.getValue();if(e.isString()){if(!oe(`${n}`))return E.create(p.VALUE);t=new Date(`${n}`)}else{let n=+e.getValue();if(n<0)return E.create(p.NUM);if(n===0)return R.create(1);t=O(n)}let r=t.getUTCMonth()+1;return R.create(r)}},ud=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=e,i=t;if(r.isArray()){let e=r.getRowCount(),t=r.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);r=r.get(0,0)}if(r.isError())return r;if(i.isArray()){let e=i.getRowCount(),t=i.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);i=i.get(0,0)}if(i.isError())return i;if(n!=null&&n.isError())return n;if(r.isBoolean()||i.isBoolean())return E.create(p.VALUE);let a=k(r);if(typeof a!=`number`)return a;let o=k(i);if(typeof o!=`number`)return o;if(n)return this._getResultByHolidays(a,o,n);let s=pe(a,o);return R.create(s)}_getResultByHolidays(e,t,n){let r=[];if(n!=null&&n.isArray()){let e=n.getRowCount(),t=n.getColumnCount();for(let i=0;i<e;i++)for(let e=0;e<t;e++){let t=n.get(i,e);if(t.isBoolean())return E.create(p.VALUE);let a=k(t);if(typeof a!=`number`)return a;r.push(a)}}else{if(n.isBoolean())return E.create(p.VALUE);let e=k(n);if(typeof e!=`number`)return e;r.push(e)}let i=pe(e,t,1,r);return R.create(i)}},dd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,4)}calculate(e,t,n,r){return e.isError()?e:t.isError()?t:n!=null&&n.isError()?n:r!=null&&r.isError()?r:n!=null&&n.isArray()?n.map(n=>this._handleSingleObject(e,t,n,r)):this._handleSingleObject(e,t,n,r)}_handleSingleObject(e,t,n,r){let i=e,a=t;if(i.isArray()){let e=i.getRowCount(),t=i.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);i=i.get(0,0)}if(i.isError())return i;if(a.isArray()){let e=a.getRowCount(),t=a.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);a=a.get(0,0)}if(a.isError())return a;let o=1;if(n){if(o=n.getValue(),n.isBoolean()&&(o=+o),n.isString()&&!de(o))return E.create(p.VALUE);if(!de(o))return E.create(p.NUM)}if(i.isBoolean()||a.isBoolean())return E.create(p.VALUE);let s=k(i);if(typeof s!=`number`)return s;let c=k(a);if(typeof c!=`number`)return c;if(r)return this._getResultByHolidays(s,c,o,r);let l=pe(s,c,o);return R.create(l)}_getResultByHolidays(e,t,n,r){let i=[];if(r!=null&&r.isArray()){let e=r.getRowCount(),t=r.getColumnCount();for(let n=0;n<e;n++)for(let e=0;e<t;e++){let t=r.get(n,e);if(t.isBoolean())return E.create(p.VALUE);let a=k(t);if(typeof a!=`number`)return a;i.push(a)}}else{if(r.isBoolean())return E.create(p.VALUE);let e=k(r);if(typeof e!=`number`)return e;i.push(e)}let a=pe(e,t,n,i);return R.create(a)}},fd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,0)}calculate(){let e=new Date,t=ie(new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds())));return R.create(t,`yyyy/mm/dd hh:mm`)}},pd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isError()?e:e.isArray()?e.map(e=>e.isError()?e:this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=k(e);if(typeof t!=`number`)return t;if(t===0)return R.create(0);let n=ae(t).getUTCSeconds();return R.create(n)}},md=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){if(e.isError())return e;if(t.isError())return t;if(n.isError())return n;let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e),o=V(r,i,t),s=V(r,i,n);return a.map((e,t,n)=>this._calculateTime(e,o,s,t,n))}_calculateTime(e,t,n,r,i){let a=e,o=t.get(r,i)||Ua.create(),s=n.get(r,i)||Ua.create();if((a.isString()||a.isBoolean())&&(a=a.convertToNumberObjectValue()),(o.isString()||o.isBoolean())&&(o=o.convertToNumberObjectValue()),(s.isString()||s.isBoolean())&&(s=s.convertToNumberObjectValue()),a.isError())return a;if(o.isError())return o;if(s.isError())return s;let c=Math.floor(+a.getValue()),l=Math.floor(+o.getValue()),u=Math.floor(+s.getValue());if(c<0||l<0||u<0||c>32767||l>32767||u>32767)return E.create(p.NUM);l+=Math.floor(u/60),u%=60,c+=Math.floor(l/60),l%=60,c%=24;let d=(c*3600+l*60+u)/86400;return R.create(d,`h:mm A/P`)}},hd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}isArgumentsIgnoreNumberPattern(){return!0}calculate(e){return e.isArray()?e.mapValue(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;if(e.isString()){let n=(0,t.getNumfmtParseValueFilter)(`${e.getValue()}`);if(n){let{v:e,z:t}=n;if(t&&le(t))return e instanceof Date&&(e=ie(e)),R.create(Ha(+e))}}return E.create(p.VALUE)}},gd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1),d(this,`needsReferenceObject`,!0)}calculate(e){let t=e.isReferenceObject(),n=e;if(t&&(n=e.toArrayValueObject()),n.isArray()){let e=n.getRowCount(),t=n.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);n=n.get(0,0)}if(n.isError()||n.isNull()||n.isBoolean()||n.isString()||!t&&n.isNumber()&&n.getPattern()!==``)return n;let r=+n.getValue();return R.create(r,`yyyy-MM-dd hh:mm:ss AM/PM`)}},_d=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,0)}calculate(){let e=new Date,t=D(new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate())));return R.create(t,ne)}},vd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2),d(this,`_returnTypeMap`,{1:[1,2,3,4,5,6,7],2:[7,1,2,3,4,5,6],3:[6,0,1,2,3,4,5],11:[7,1,2,3,4,5,6],12:[6,7,1,2,3,4,5],13:[5,6,7,1,2,3,4],14:[4,5,6,7,1,2,3],15:[3,4,5,6,7,1,2],16:[2,3,4,5,6,7,1],17:[1,2,3,4,5,6,7]})}calculate(e,t){let n=t==null?R.create(1):t;if(e.isError())return e;if(n.isError())return n;let r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.map((e,t,n)=>{let r=o.get(t,n);return this._handleSingleObject(e,r)});return r===1&&i===1?s.get(0,0):s}_handleSingleObject(e,t){let n=t;if(e.isError())return e;if(n.isError())return n;let r=k(e);if(typeof r!=`number`)return r;if(n.isString()&&(n=n.convertToNumberObjectValue(),n.isError()))return n;let i=Math.floor(+n.getValue());if(!this._returnTypeMap[i])return E.create(p.NUM);let a=he(r),o=this._returnTypeMap[i][a];return R.create(o)}},yd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2),d(this,`_returnTypeMap`,{1:0,2:1,11:1,12:2,13:3,14:4,15:5,16:6,17:0,21:4})}calculate(e,t){let n=e,r=t==null?R.create(1):t;if(n.isArray()){let e=n.getRowCount(),t=n.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);n=n.get(0,0)}if(n.isError())return n;if(r.isArray()){let e=r.getRowCount(),t=r.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);r=r.get(0,0)}if(r.isError())return r;if(n.isBoolean())return E.create(p.VALUE);let i=k(n);if(typeof i!=`number`)return i;if(r.isBoolean())return E.create(p.VALUE);let a=Math.floor(+r.getValue());return Number.isNaN(a)?E.create(p.VALUE):a in this._returnTypeMap?this._getResult(i,a):E.create(p.NUM)}_getResult(e,t){let n=O(e),r=e>0?n.getUTCFullYear():1900,i=new Date(Date.UTC(r,0,1)),a=D(i),o=he(a),s;if(t===21)s=o<1?a+1:o<=4?a-(o-1):a+(11-o),e<s&&(i=new Date(Date.UTC(r-1,0,1)),a=D(i),o=he(a),s=o<1?a+1:o<=4?a-(o-1):a+(11-o));else{let e=this._returnTypeMap[t];s=o<e?a-(o+7-e):a-(o-e)}let c=Math.ceil((e-s+1)/7);return R.create(c)}},bd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=e,i=t;if(r.isArray()){let e=r.getRowCount(),t=r.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);r=r.get(0,0)}if(r.isError())return r;if(i.isArray()){let e=i.getRowCount(),t=i.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);i=i.get(0,0)}if(i.isError())return i;if(n!=null&&n.isError())return n;if(r.isBoolean()||i.isBoolean())return E.create(p.VALUE);let a=k(r);if(typeof a!=`number`)return a;let o=+i.getValue();if(Number.isNaN(o))return E.create(p.VALUE);if(n)return this._getResultByHolidays(a,o,n);let s=me(a,o);return typeof s==`number`?R.create(s):s}_getResultByHolidays(e,t,n){let r=[];if(n!=null&&n.isArray()){let e=n.getRowCount(),t=n.getColumnCount();for(let i=0;i<e;i++)for(let e=0;e<t;e++){let t=n.get(i,e);if(t.isBoolean())return E.create(p.VALUE);let a=k(t);if(typeof a!=`number`)return a;r.push(a)}}else{if(n.isBoolean())return E.create(p.VALUE);let e=k(n);if(typeof e!=`number`)return e;r.push(e)}let i=me(e,t,1,r);return typeof i==`number`?R.create(i):i}},xd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,4)}calculate(e,t,n,r){return e.isError()?e:t.isError()?t:n!=null&&n.isError()?n:r!=null&&r.isError()?r:n!=null&&n.isArray()?n.map(n=>this._handleSingleObject(e,t,n,r)):this._handleSingleObject(e,t,n,r)}_handleSingleObject(e,t,n,r){let i=n==null?R.create(1):n,a=this._checkArrayError(e);if(a.isError())return a;let o=this._checkArrayError(t);if(o.isError())return o;if(a.isBoolean()||o.isBoolean())return E.create(p.VALUE);let s=k(e);if(typeof s!=`number`)return s;let c=+t.getValue();if(Number.isNaN(c))return E.create(p.VALUE);let l=i.getValue();if(i.isBoolean()&&(l=+l),i.isString()&&(!de(l)||l===`1111111`))return E.create(p.VALUE);if(!de(l))return E.create(p.NUM);if(r)return this._getResultByHolidays(s,c,l,r);let u=me(s,c,l);return typeof u==`number`?R.create(u):u}_checkArrayError(e){let t=e;if(t.isArray()){let e=t.getRowCount(),n=t.getColumnCount();if(e>1||n>1)return E.create(p.VALUE);t=t.get(0,0)}return t.isError(),t}_getResultByHolidays(e,t,n,r){let i=[];if(r!=null&&r.isArray()){let e=r.getRowCount(),t=r.getColumnCount();for(let n=0;n<e;n++)for(let e=0;e<t;e++){let t=r.get(n,e);if(t.isBoolean())return E.create(p.VALUE);let a=k(t);if(typeof a!=`number`)return a;i.push(a)}}else{if(r.isBoolean())return E.create(p.VALUE);let e=k(r);if(typeof e!=`number`)return e;i.push(e)}let a=me(e,t,n,i);return typeof a==`number`?R.create(a):a}},Sd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;let t,n=e.getValue();if(e.isString()){if(!oe(`${n}`))return E.create(p.VALUE);t=new Date(`${n}`)}else{let e=+n;if(e<0)return E.create(p.NUM);if(e===0)return R.create(1900);t=O(e)}let r=t.getUTCFullYear();return R.create(r)}},Cd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?R.create(0):n,i=ec(e);if(i.isError())return i;let a=ec(t);if(a.isError())return a;if(r=ec(r),r.isError())return r;if(i.isBoolean()||a.isBoolean()||r.isBoolean())return E.create(p.VALUE);let o=k(i);if(typeof o!=`number`)return o;let s=k(a);if(typeof s!=`number`)return s;let c=Math.floor(+r.getValue());if(Number.isNaN(c))return E.create(p.VALUE);if(c<0||c>4)return E.create(p.NUM);let{days:l,yearDays:u}=ge(o,s,c),d=l/u;return R.create(d)}};let wd=[[Zu,Ro.DATE],[Qu,Ro.DATEDIF],[$u,Ro.DATEVALUE],[ed,Ro.DAY],[td,Ro.DAYS],[nd,Ro.DAYS360],[rd,Ro.EDATE],[id,Ro.EOMONTH],[ad,Ro.EPOCHTODATE],[od,Ro.HOUR],[sd,Ro.ISOWEEKNUM],[cd,Ro.MINUTE],[ld,Ro.MONTH],[ud,Ro.NETWORKDAYS],[dd,Ro.NETWORKDAYS_INTL],[fd,Ro.NOW],[pd,Ro.SECOND],[md,Ro.TIME],[hd,Ro.TIMEVALUE],[gd,Ro.TO_DATE],[_d,Ro.TODAY],[vd,Ro.WEEKDAY],[yd,Ro.WEEKNUM],[bd,Ro.WORKDAY],[xd,Ro.WORKDAY_INTL],[Sd,Ro.YEAR],[Cd,Ro.YEARFRAC]];var Td=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull()||t.isNull())return E.create(p.NA);let{isError:n,errorObject:r,variants:i}=Y(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);if(c<0)return E.create(p.NUM);let l=sc.besseli(s,c);return Number.isNaN(l)||!Number.isFinite(l)?E.create(p.NUM):R.create(l)}},Ed=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull()||t.isNull())return E.create(p.NA);let{isError:n,errorObject:r,variants:i}=Y(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);if(c<0)return E.create(p.NUM);let l=sc.besselj(s,c);return Number.isNaN(l)||!Number.isFinite(l)?E.create(p.NUM):R.create(l)}},Dd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull()||t.isNull())return E.create(p.NA);let{isError:n,errorObject:r,variants:i}=Y(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);if(c<0)return E.create(p.NUM);let l=sc.besselk(s,c);return Number.isNaN(l)||!Number.isFinite(l)?E.create(p.NUM):R.create(l)}},Od=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull()||t.isNull())return E.create(p.NA);let{isError:n,errorObject:r,variants:i}=Y(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);if(c<0)return E.create(p.NUM);let l=sc.bessely(s,c);return Number.isNaN(l)||!Number.isFinite(l)?E.create(p.NUM):R.create(l)}},kd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:t,errorObject:n,variants:r}=Y(e);if(t)return n;let[i]=r,a=`${i.getValue()}`;if(!cc(a))return E.create(p.NUM);let o;return o=a.length===10&&a.substring(0,1)===`1`?Number.parseInt(a.substring(1),2)-512:Number.parseInt(a,2),R.create(o)}},Ad=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull())return E.create(p.NA);let n=0;if(t){let{isError:e,errorObject:r,variants:i}=Y(t);if(e)return r;let[a]=i;if(n=Math.floor(+a.getValue()),Number.isNaN(n))return E.create(p.VALUE);if(n<0||n>10)return E.create(p.NUM)}let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=`${o.getValue()}`;if(!cc(s))return E.create(p.NUM);let c;if(s.length===10&&s.substring(0,1)===`1`)c=(0xfffffffe00+Number.parseInt(s.substring(1),2)).toString(16);else if(c=Number.parseInt(s,2).toString(16),t){if(n<c.length)return E.create(p.NUM);c=`0`.repeat(n-c.length)+c}return z.create(c.toLocaleUpperCase())}},jd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull())return E.create(p.NA);let n=0;if(t){let{isError:e,errorObject:r,variants:i}=Y(t);if(e)return r;let[a]=i;if(n=Math.floor(+a.getValue()),Number.isNaN(n))return E.create(p.VALUE);if(n<0||n>10)return E.create(p.NUM)}let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=`${o.getValue()}`;if(!cc(s))return E.create(p.NUM);let c;if(s.length===10&&s.substring(0,1)===`1`)c=(1073741312+Number.parseInt(s.substring(1),2)).toString(8);else if(c=Number.parseInt(s,2).toString(8),t){if(n<c.length)return E.create(p.NUM);c=`0`.repeat(n-c.length)+c}return z.create(c)}},Md=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.map((e,t,n)=>{let r=e;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let i=a.get(t,n);if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;let o=+r.getValue(),s=+i.getValue();if(o<0||s<0||Math.floor(o)!==o||Math.floor(s)!==s||o>0xffffffffffff||s>0xffffffffffff)return E.create(p.NUM);let c=o&s;return R.create(c)});return n===1&&r===1?o.get(0,0):o}},Nd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.map((e,t,n)=>{let r=e;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let i=a.get(t,n);if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;let o=+r.getValue(),s=+i.getValue();if(o<0||Math.floor(o)!==o||o>0xffffffffffff||Math.abs(s)>53)return E.create(p.NUM);s=Math.trunc(s);let c=Number(s>=0?BigInt(o)<<BigInt(s):BigInt(o)>>BigInt(-s));return c>0xffffffffffff?E.create(p.NUM):R.create(c)});return n===1&&r===1?o.get(0,0):o}},Pd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.map((e,t,n)=>{let r=e;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let i=a.get(t,n);if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;let o=+r.getValue(),s=+i.getValue();if(o<0||s<0||Math.floor(o)!==o||Math.floor(s)!==s||o>0xffffffffffff||s>0xffffffffffff)return E.create(p.NUM);let c=Number(BigInt(o)|BigInt(s));return R.create(c)});return n===1&&r===1?o.get(0,0):o}},Fd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.map((e,t,n)=>{let r=e;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let i=a.get(t,n);if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;let o=+r.getValue(),s=+i.getValue();if(o<0||Math.floor(o)!==o||o>0xffffffffffff||Math.abs(s)>53)return E.create(p.NUM);s=Math.trunc(s);let c=Number(s>=0?BigInt(o)>>BigInt(s):BigInt(o)<<BigInt(-s));return c>0xffffffffffff?E.create(p.NUM):R.create(c)});return n===1&&r===1?o.get(0,0):o}},Id=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.map((e,t,n)=>{let r=e;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let i=a.get(t,n);if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;let o=+r.getValue(),s=+i.getValue();if(o<0||s<0||Math.floor(o)!==o||Math.floor(s)!==s||o>0xffffffffffff||s>0xffffffffffff)return E.create(p.NUM);let c=o^s;return R.create(c)});return n===1&&r===1?o.get(0,0):o}};I.prototype.cos=function(){let e=this.toNumber();return new I(Math.cos(e))};var Ld=class e{static getComplex(e,t,n){let r=new I(e).toSignificantDigits(15).toNumber(),i=new I(t).toSignificantDigits(15).toNumber(),a=n===``?`i`:n,o;return o=r===0&&i===0?0:r===0?i===1?a:`${i}${a}`:i===0?r:`${r}${i>0?`+`:``}${i===1?a:`${i}${a}`}`,o}static createByComplexStr(t,n,r){return new e(e.getComplex(t,n,r))}constructor(e){if(d(this,`_inumber`,``),d(this,`_realNum`,0),d(this,`_iNum`,0),d(this,`_suffix`,``),d(this,`_isError`,!1),`${e}`.trim()===``){this._isError=!0;return}this._inumber=e,this._getImReal(),this._getImAginary(),this._getImSuffix()}_getImReal(){if(this._inumber===0||this._inumber===`0`){this._realNum=0;return}let e=`${this._inumber}`;if([`i`,`+i`,`1i`,`+1i`,`-i`,`-1i`,`j`,`+j`,`1j`,`+1j`,`-j`,`-1j`].indexOf(e)>=0){this._realNum=0;return}let t=e.indexOf(`+`),n=e.indexOf(`-`);t===0&&(t=e.indexOf(`+`,1)),n===0&&(n=e.indexOf(`-`,1));let r=e.substring(e.length-1,e.length),i=r===`i`||r===`j`;if(t>=0||n>=0){if(!i){this._isError=!0;return}t>=0?Number.isNaN(+e.substring(0,t))||Number.isNaN(+e.substring(t+1,e.length-1))?this._isError=!0:this._realNum=+e.substring(0,t):Number.isNaN(+e.substring(0,n))||Number.isNaN(+e.substring(n+1,e.length-1))?this._isError=!0:this._realNum=+e.substring(0,n)}else i?Number.isNaN(+e.substring(0,e.length-1))?this._isError=!0:this._realNum=0:Number.isNaN(+e)?this._isError=!0:this._realNum=+e}_getImAginary(){if(this._isError)return;if(this._inumber===0||this._inumber===`0`){this._iNum=0;return}let e=`${this._inumber}`;if([`i`,`j`].indexOf(e)>=0){this._iNum=1;return}e=e.replace(`+i`,`+1i`).replace(`-i`,`-1i`).replace(`+j`,`+1j`).replace(`-j`,`-1j`);let t=e.indexOf(`+`),n=e.indexOf(`-`);t===0&&(t=e.indexOf(`+`,1)),n===0&&(n=e.indexOf(`-`,1));let r=e.substring(e.length-1,e.length),i=r===`i`||r===`j`;if(t>=0||n>=0){if(!i){this._isError=!0;return}t>=0?Number.isNaN(+e.substring(0,t))||Number.isNaN(+e.substring(t+1,e.length-1))?this._isError=!0:this._iNum=+e.substring(t+1,e.length-1):Number.isNaN(+e.substring(0,n))||Number.isNaN(+e.substring(n+1,e.length-1))?this._isError=!0:this._iNum=-+e.substring(n+1,e.length-1)}else i?Number.isNaN(+e.substring(0,e.length-1))?this._isError=!0:this._iNum=+e.substring(0,e.length-1):Number.isNaN(+e)?this._isError=!0:this._iNum=0}_getImSuffix(){let e=`${this._inumber}`,t=e.substring(e.length-1);this._suffix=t===`i`||t===`j`?t:``}getRealNum(){return this._realNum}getINum(){return this._iNum}getSuffix(){return this._suffix}isError(){return this._isError}toString(){return e.getComplex(this._realNum,this._iNum,this._suffix)}isDifferentSuffixes(e){let t=e.getSuffix();return this._suffix===``||t===``?!1:this._suffix!==t}Abs(){return I.sqrt(I.pow(this._realNum,2).add(I.pow(this._iNum,2))).toSignificantDigits(16).toNumber()}Argument(){let e=I.sqrt(I.pow(this._realNum,2).add(I.pow(this._iNum,2))),t=I.acos(new I(this._realNum).div(e)).toSignificantDigits(16).toNumber();return this._iNum<0&&(t=-t),t}Conjugate(){return e.getComplex(this._realNum,-this._iNum,this._suffix)}Cos(){if(this._iNum){let t=I.cos(this._realNum).mul(I.cosh(this._iNum)).toNumber(),n=I.sin(this._realNum).mul(I.sinh(this._iNum)).negated().toNumber();return e.getComplex(t,n,this._suffix)}else{let t=I.cos(this._realNum).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Cosh(){if(!Number.isFinite(Math.sinh(this._realNum))||!Number.isFinite(Math.cosh(this._realNum)))return this._isError=!0,``;if(this._iNum){let t=I.cosh(this._realNum).mul(I.cos(this._iNum)).toNumber(),n=I.sinh(this._realNum).mul(I.sin(this._iNum)).toNumber();return e.getComplex(t,n,this._suffix)}else{let t=I.cosh(this._realNum).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Cot(){if(this._iNum){let t=I.cosh(this._iNum*2).sub(I.cos(this._realNum*2)),n=I.sin(this._realNum*2).div(t).toNumber(),r=I.sinh(this._iNum*2).div(t).negated().toNumber();return e.getComplex(n,r,this._suffix)}else{let t=new I(1).div(I.tan(this._realNum)).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Coth(){if(!Number.isFinite(Math.sinh(this._realNum))||!Number.isFinite(Math.cosh(this._realNum)))return this._isError=!0,``;if(this._iNum){let t=I.cosh(this._realNum*2).sub(I.cos(this._iNum*2)),n=I.sinh(this._realNum*2).div(t).toNumber(),r=I.sin(this._iNum*2).div(t).negated().toNumber();return e.getComplex(n,r,this._suffix)}else{let t=new I(1).div(I.tanh(this._realNum)).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Csc(){if(this._iNum){let t=I.cosh(this._iNum*2).sub(I.cos(this._realNum*2)),n=I.sin(this._realNum).mul(I.cosh(this._iNum)).mul(2).div(t).toNumber(),r=I.cos(this._realNum).mul(I.sinh(this._iNum)).mul(-2).div(t).toNumber();return e.getComplex(n,r,this._suffix)}else{let t=new I(1).div(I.sin(this._realNum)).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Csch(){if(!Number.isFinite(Math.sinh(this._realNum))||!Number.isFinite(Math.cosh(this._realNum)))return e.getComplex(0,0,this._suffix);if(this._iNum){let t=I.cosh(this._realNum*2).sub(I.cos(this._iNum*2)),n=I.sinh(this._realNum).mul(I.cos(this._iNum)).mul(2).div(t).toNumber(),r=I.cosh(this._realNum).mul(I.sin(this._iNum)).mul(-2).div(t).toNumber();return e.getComplex(n,r,this._suffix)}else{let t=new I(1).div(I.sinh(this._realNum)).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Div(t){let n=new I(this._realNum),r=new I(this._iNum),i=new I(t.getRealNum()),a=new I(t.getINum()),o=i.mul(i).add(a.mul(a)),s=n.mul(i).add(r.mul(a)).div(o).toNumber(),c=r.mul(i).sub(n.mul(a)).div(o).toNumber(),l=this._suffix===``?t.getSuffix():this._suffix;return e.getComplex(s,c,l)}Exp(){if(!Number.isFinite(Math.exp(this._realNum)))return this._isError=!0,``;let t=I.exp(this._realNum).mul(I.cos(this._iNum)).toNumber(),n=I.exp(this._realNum).mul(I.sin(this._iNum)).toNumber();return e.getComplex(t,n,this._suffix)}Ln(){let t=I.sqrt(I.pow(this._realNum,2).add(I.pow(this._iNum,2))),n=I.ln(t).toNumber(),r=I.acos(new I(this._realNum).div(t)).toNumber();return e.getComplex(n,r,this._suffix)}Log(t){let n=I.sqrt(I.pow(this._realNum,2).add(I.pow(this._iNum,2))),r=I.ln(n),i=I.acos(new I(this._realNum).div(n));this._iNum<0&&(i=i.negated());let a=I.ln(t),o=new I(0),s=a.mul(a).add(o.mul(o));if(s.eq(0))return this._isError=!0,``;let c=r.mul(a).add(i.mul(o)).div(s).toNumber(),l=i.mul(a).sub(r.mul(o)).div(s).toNumber();return e.getComplex(c,l,this._suffix)}Power(t){if(this._realNum===0&&this._iNum===0)return t>0?e.getComplex(this._realNum,this._iNum,this._suffix):(this._isError=!0,``);let n=I.sqrt(I.pow(this._realNum,2).add(I.pow(this._iNum,2))),r=I.acos(new I(this._realNum).div(n));this._iNum<0&&(r=r.negated()),n=I.pow(n,t),r=r.mul(t);let i=I.cos(r).mul(n).toNumber(),a=I.sin(r).mul(n).toNumber();return!Number.isFinite(i)||!Number.isFinite(a)?(this._isError=!0,``):e.getComplex(i,a,this._suffix)}Product(t){let n=new I(this._realNum),r=new I(this._iNum),i=new I(t.getRealNum()),a=new I(t.getINum()),o=n.mul(i).sub(r.mul(a)).toNumber(),s=n.mul(a).add(r.mul(i)).toNumber(),c=this._suffix===``?t.getSuffix():this._suffix;return e.getComplex(o,s,c)}Sec(){if(this._iNum){let t=I.cosh(this._iNum*2).add(I.cos(this._realNum*2)),n=I.cos(this._realNum).mul(I.cosh(this._iNum)).mul(2).div(t).toNumber(),r=I.sin(this._realNum).mul(I.sinh(this._iNum)).mul(2).div(t).toNumber();return e.getComplex(n,r,this._suffix)}else{let t=new I(1).div(I.cos(this._realNum)).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Sech(){if(!Number.isFinite(Math.sinh(this._realNum*2))||!Number.isFinite(Math.cosh(this._realNum*2)))return e.getComplex(0,0,this._suffix);if(this._iNum){let t=I.cosh(this._realNum*2).add(I.cos(this._iNum*2)),n=I.cosh(this._realNum).mul(I.cos(this._iNum)).mul(2).div(t).toNumber(),r=I.sinh(this._realNum).mul(I.sin(this._iNum)).mul(-2).div(t).toNumber();return e.getComplex(n,r,this._suffix)}else{let t=new I(1).div(I.cosh(this._realNum)).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Sin(){if(this._iNum){let t=I.sin(this._realNum).mul(I.cosh(this._iNum)).toNumber(),n=I.cos(this._realNum).mul(I.sinh(this._iNum)).toNumber();return e.getComplex(t,n,this._suffix)}else{let t=I.sin(this._realNum).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Sinh(){if(!Number.isFinite(Math.sinh(this._realNum))||!Number.isFinite(Math.cosh(this._realNum)))return this._isError=!0,``;if(this._iNum){let t=I.sinh(this._realNum).mul(I.cos(this._iNum)).toNumber(),n=I.cosh(this._realNum).mul(I.sin(this._iNum)).toNumber();return e.getComplex(t,n,this._suffix)}else{let t=I.sinh(this._realNum).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Sqrt(){let t=I.sqrt(I.pow(this._realNum,2).add(I.pow(this._iNum,2))),n=I.sqrt(t),r=I.acos(new I(this._realNum).div(t));this._iNum<0&&(r=r.negated());let i=n.mul(I.cos(r.div(2).toNumber())).toNumber(),a=n.mul(I.sin(r.div(2))).toNumber();return e.getComplex(i,a,this._suffix)}Sub(t){let n=new I(this._realNum),r=new I(this._iNum),i=new I(t.getRealNum()),a=new I(t.getINum()),o=n.sub(i).toNumber(),s=r.sub(a).toNumber(),c=this._suffix===``?t.getSuffix():this._suffix;return e.getComplex(o,s,c)}Sum(t){let n=new I(this._realNum),r=new I(this._iNum),i=new I(t.getRealNum()),a=new I(t.getINum()),o=n.add(i).toNumber(),s=r.add(a).toNumber(),c=this._suffix===``?t.getSuffix():this._suffix;return e.getComplex(o,s,c)}Tan(){if(this._iNum){let t=I.cos(this._realNum*2).add(I.cosh(this._iNum*2)),n=I.sin(this._realNum*2).div(t).toNumber(),r=I.sinh(this._iNum*2).div(t).toNumber();return e.getComplex(n,r,this._suffix)}else{let t=I.tan(this._realNum).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}Tanh(){if(!Number.isFinite(Math.sinh(this._realNum))||!Number.isFinite(Math.cosh(this._realNum)))return this._isError=!0,``;if(this._iNum){let t=I.cosh(this._realNum*2).add(I.cos(this._iNum*2)),n=I.sinh(this._realNum*2).div(t).toNumber(),r=I.sin(this._iNum*2).div(t).toNumber();return e.getComplex(n,r,this._suffix)}else{let t=I.tanh(this._realNum).toNumber();return e.getComplex(t,this._iNum,this._suffix)}}},Rd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,variants:a}=Y(e,t,n==null?z.create(`i`):n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=+s.getValue(),d=`${c.getValue()}`;if(Number.isNaN(l)||Number.isNaN(u)||d!==`i`&&d!==`j`)return E.create(p.VALUE);let f=Ld.getComplex(l,u,d);return typeof f==`number`?R.create(f):z.create(f)}},zd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3),d(this,`_units`,[[`a.u. of action`,`?`,null,`action`,!1,!1,105457168181818e-48],[`a.u. of charge`,`e`,null,`electric_charge`,!1,!1,160217653141414e-33],[`a.u. of energy`,`Eh`,null,`energy`,!1,!1,435974417757576e-32],[`a.u. of length`,`a?`,null,`length`,!1,!1,529177210818182e-25],[`a.u. of mass`,`m?`,null,`mass`,!1,!1,910938261616162e-45],[`a.u. of time`,`?/Eh`,null,`time`,!1,!1,241888432650516e-31],[`admiralty knot`,`admkn`,null,`speed`,!1,!0,.514773333],[`ampere`,`A`,null,`electric_current`,!0,!1,1],[`ampere per meter`,`A/m`,null,`magnetic_field_intensity`,!0,!1,1],[`ångström`,`Å`,[`ang`],`length`,!1,!0,1e-10],[`are`,`ar`,null,`area`,!1,!0,100],[`astronomical unit`,`ua`,null,`length`,!1,!1,149597870691667e-25],[`bar`,`bar`,null,`pressure`,!1,!1,1e5],[`barn`,`b`,null,`area`,!1,!1,1e-28],[`becquerel`,`Bq`,null,`radioactivity`,!0,!1,1],[`bit`,`bit`,[`b`],`information`,!1,!0,1],[`btu`,`BTU`,[`btu`],`energy`,!1,!0,1055.05585262],[`byte`,`byte`,null,`information`,!1,!0,8],[`candela`,`cd`,null,`luminous_intensity`,!0,!1,1],[`candela per square metre`,`cd/m?`,null,`luminance`,!0,!1,1],[`centigrade`,`C`,[`cel`],`temperature`,!0,!1,1],[`cubic ångström`,`ang3`,[`ang^3`],`volume`,!1,!0,1e-30],[`cubic foot`,`ft3`,[`ft^3`],`volume`,!1,!0,.028316846592],[`cubic inch`,`in3`,[`in^3`],`volume`,!1,!0,16387064e-12],[`cubic light-year`,`ly3`,[`ly^3`],`volume`,!1,!0,846786664623715e-61],[`cubic metre`,`m3`,[`m^3`],`volume`,!0,!0,1],[`cubic mile`,`mi3`,[`mi^3`],`volume`,!1,!0,4168181825.44058],[`cubic nautical mile`,`Nmi3`,[`Nmi^3`],`volume`,!1,!0,6352182208],[`cubic Pica`,`Pica3`,[`Picapt3`,`Pica^3`,`Picapt^3`],`volume`,!1,!0,7.58660370370369e-8],[`cubic yard`,`yd3`,[`yd^3`],`volume`,!1,!0,.764554857984],[`cup`,`cup`,null,`volume`,!1,!0,.0002365882365],[`dalton`,`Da`,[`u`],`mass`,!1,!1,166053886282828e-41],[`day`,`d`,[`day`],`time`,!1,!0,86400],[`degree`,`°`,null,`angle`,!1,!1,.0174532925199433],[`dyne`,`dyn`,[`dy`],`force`,!1,!0,1e-5],[`electronvolt`,`eV`,[`ev`],`energy`,!1,!0,1.60217656514141],[`ell`,`ell`,null,`length`,!1,!0,1.143],[`erg`,`erg`,[`e`],`energy`,!1,!0,1e-7],[`fahrenheit`,`F`,[`fah`],`temperature`,!0,!1,1],[`fluid ounce`,`oz`,null,`volume`,!1,!0,295735295625e-16],[`foot`,`ft`,null,`length`,!1,!0,.3048],[`foot-pound`,`flb`,null,`energy`,!1,!0,1.3558179483314],[`gal`,`Gal`,null,`acceleration`,!1,!1,.01],[`gallon`,`gal`,null,`volume`,!1,!0,.003785411784],[`gauss`,`G`,[`ga`],`magnetic_flux_density`,!1,!0,1],[`grain`,`grain`,null,`mass`,!1,!0,647989e-10],[`gram`,`g`,null,`mass`,!1,!0,.001],[`gray`,`Gy`,null,`absorbed_dose`,!0,!1,1],[`gross registered ton`,`GRT`,[`regton`],`volume`,!1,!0,2.8316846592],[`hectare`,`ha`,null,`area`,!1,!0,1e4],[`henry`,`H`,null,`inductance`,!0,!1,1],[`hertz`,`Hz`,null,`frequency`,!0,!1,1],[`horsepower`,`HP`,[`h`],`power`,!1,!0,745.69987158227],[`horsepower-hour`,`HPh`,[`hh`,`hph`],`energy`,!1,!0,2684519.538],[`hour`,`h`,[`hr`],`time`,!1,!0,3600],[`imperial gallon (U.K.)`,`uk_gal`,null,`volume`,!1,!0,.00454609],[`imperial hundredweight`,`lcwt`,[`uk_cwt`,`hweight`],`mass`,!1,!0,50.802345],[`imperial quart (U.K)`,`uk_qt`,null,`volume`,!1,!0,.0011365225],[`imperial ton`,`brton`,[`uk_ton`,`LTON`],`mass`,!1,!0,1016.046909],[`inch`,`in`,null,`length`,!1,!0,.0254],[`international acre`,`uk_acre`,null,`area`,!1,!0,4046.8564224],[`IT calorie`,`cal`,null,`energy`,!1,!0,4.1868],[`joule`,`J`,null,`energy`,!0,!0,1],[`katal`,`kat`,null,`catalytic_activity`,!0,!1,1],[`kelvin`,`K`,[`kel`],`temperature`,!0,!0,1],[`kilogram`,`kg`,null,`mass`,!0,!0,1],[`knot`,`kn`,null,`speed`,!1,!0,.514444444444444],[`light-year`,`ly`,null,`length`,!1,!0,9460730472580800],[`litre`,`L`,[`l`,`lt`],`volume`,!1,!0,.001],[`lumen`,`lm`,null,`luminous_flux`,!0,!1,1],[`lux`,`lx`,null,`illuminance`,!0,!1,1],[`maxwell`,`Mx`,null,`magnetic_flux`,!1,!1,1e-18],[`measurement ton`,`MTON`,null,`volume`,!1,!0,1.13267386368],[`meter per hour`,`m/h`,[`m/hr`],`speed`,!1,!0,.00027777777777778],[`meter per second`,`m/s`,[`m/sec`],`speed`,!0,!0,1],[`meter per second squared`,`m?s??`,null,`acceleration`,!0,!1,1],[`parsec`,`pc`,[`parsec`],`length`,!1,!0,0x6da012f958ee1c],[`meter squared per second`,`m?/s`,null,`kinematic_viscosity`,!0,!1,1],[`metre`,`m`,null,`length`,!0,!0,1],[`miles per hour`,`mph`,null,`speed`,!1,!0,.44704],[`millimetre of mercury`,`mmHg`,null,`pressure`,!1,!1,133.322],[`minute`,`?`,null,`angle`,!1,!1,.000290888208665722],[`minute`,`min`,[`mn`],`time`,!1,!0,60],[`modern teaspoon`,`tspm`,null,`volume`,!1,!0,5e-6],[`mole`,`mol`,null,`amount_of_substance`,!0,!1,1],[`morgen`,`Morgen`,null,`area`,!1,!0,2500],[`n.u. of action`,`?`,null,`action`,!1,!1,105457168181818e-48],[`n.u. of mass`,`m?`,null,`mass`,!1,!1,910938261616162e-45],[`n.u. of speed`,`c?`,null,`speed`,!1,!1,299792458],[`n.u. of time`,`?/(me?c??)`,null,`time`,!1,!1,128808866778687e-35],[`nautical mile`,`M`,[`Nmi`],`length`,!1,!0,1852],[`newton`,`N`,null,`force`,!0,!0,1],[`œrsted`,`Oe `,null,`magnetic_field_intensity`,!1,!1,79.5774715459477],[`ohm`,`Ω`,null,`electric_resistance`,!0,!1,1],[`ounce mass`,`ozm`,null,`mass`,!1,!0,.028349523125],[`pascal`,`Pa`,null,`pressure`,!0,!1,1],[`pascal second`,`Pa?s`,null,`dynamic_viscosity`,!0,!1,1],[`pferdestärke`,`PS`,null,`power`,!1,!0,735.49875],[`phot`,`ph`,null,`illuminance`,!1,!1,1e-4],[`pica (1/6 inch)`,`pica`,null,`length`,!1,!0,.00035277777777778],[`pica (1/72 inch)`,`Pica`,[`Picapt`],`length`,!1,!0,.00423333333333333],[`poise`,`P`,null,`dynamic_viscosity`,!1,!1,.1],[`pond`,`pond`,null,`force`,!1,!0,.00980665],[`pound force`,`lbf`,null,`force`,!1,!0,4.4482216152605],[`pound mass`,`lbm`,null,`mass`,!1,!0,.45359237],[`quart`,`qt`,null,`volume`,!1,!0,.000946352946],[`radian`,`rad`,null,`angle`,!0,!1,1],[`rankine`,`Rank`,null,`temperature`,!1,!0,1],[`reaumur`,`Reau`,null,`temperature`,!1,!0,1],[`second`,`?`,null,`angle`,!1,!1,484813681109536e-20],[`second`,`s`,[`sec`],`time`,!0,!0,1],[`short hundredweight`,`cwt`,[`shweight`],`mass`,!1,!0,45.359237],[`siemens`,`S`,null,`electrical_conductance`,!0,!1,1],[`sievert`,`Sv`,null,`equivalent_dose`,!0,!1,1],[`slug`,`sg`,null,`mass`,!1,!0,14.59390294],[`square ångström`,`ang2`,[`ang^2`],`area`,!1,!0,1e-20],[`square foot`,`ft2`,[`ft^2`],`area`,!1,!0,.09290304],[`square inch`,`in2`,[`in^2`],`area`,!1,!0,64516e-8],[`square light-year`,`ly2`,[`ly^2`],`area`,!1,!0,895054210748189e17],[`square meter`,`m?`,null,`area`,!0,!0,1],[`square mile`,`mi2`,[`mi^2`],`area`,!1,!0,2589988.110336],[`square nautical mile`,`Nmi2`,[`Nmi^2`],`area`,!1,!0,3429904],[`square Pica`,`Pica2`,[`Picapt2`,`Pica^2`,`Picapt^2`],`area`,!1,!0,1792111111111e-17],[`square yard`,`yd2`,[`yd^2`],`area`,!1,!0,.83612736],[`statute mile`,`mi`,null,`length`,!1,!0,1609.344],[`steradian`,`sr`,null,`solid_angle`,!0,!1,1],[`stilb`,`sb`,null,`luminance`,!1,!1,1e-4],[`stokes`,`St`,null,`kinematic_viscosity`,!1,!1,1e-4],[`stone`,`stone`,null,`mass`,!1,!0,6.35029318],[`tablespoon`,`tbs`,null,`volume`,!1,!0,147868e-10],[`teaspoon`,`tsp`,null,`volume`,!1,!0,492892e-11],[`tesla`,`T`,null,`magnetic_flux_density`,!0,!0,1],[`thermodynamic calorie`,`c`,null,`energy`,!1,!0,4.184],[`ton`,`ton`,null,`mass`,!1,!0,907.18474],[`tonne`,`t`,null,`mass`,!1,!1,1e3],[`U.K. pint`,`uk_pt`,null,`volume`,!1,!0,.00056826125],[`U.S. bushel`,`bushel`,null,`volume`,!1,!0,.03523907],[`U.S. oil barrel`,`barrel`,null,`volume`,!1,!0,.158987295],[`U.S. pint`,`pt`,[`us_pt`],`volume`,!1,!0,.000473176473],[`U.S. survey mile`,`survey_mi`,null,`length`,!1,!0,1609.347219],[`U.S. survey/statute acre`,`us_acre`,null,`area`,!1,!0,4046.87261],[`volt`,`V`,null,`voltage`,!0,!1,1],[`watt`,`W`,null,`power`,!0,!0,1],[`watt-hour`,`Wh`,[`wh`],`energy`,!1,!0,3600],[`weber`,`Wb`,null,`magnetic_flux`,!0,!1,1],[`yard`,`yd`,null,`length`,!1,!0,.9144],[`year`,`yr`,null,`time`,!1,!0,31557600]]),d(this,`_binaryPrefixes`,{Yi:[`yobi`,80,12089258196146292e8,`Yi`,`yotta`],Zi:[`zebi`,70,0x400000000000000000,`Zi`,`zetta`],Ei:[`exbi`,60,0x1000000000000000,`Ei`,`exa`],Pi:[`pebi`,50,0x4000000000000,`Pi`,`peta`],Ti:[`tebi`,40,1099511627776,`Ti`,`tera`],Gi:[`gibi`,30,1073741824,`Gi`,`giga`],Mi:[`mebi`,20,1048576,`Mi`,`mega`],ki:[`kibi`,10,1024,`ki`,`kilo`]}),d(this,`_unitPrefixes`,{Y:[`yotta`,1e24,`Y`],Z:[`zetta`,1e21,`Z`],E:[`exa`,0xde0b6b3a7640000,`E`],P:[`peta`,0x38d7ea4c68000,`P`],T:[`tera`,0xe8d4a51000,`T`],G:[`giga`,1e9,`G`],M:[`mega`,1e6,`M`],k:[`kilo`,1e3,`k`],h:[`hecto`,100,`h`],e:[`dekao`,10,`e`],d:[`deci`,.1,`d`],c:[`centi`,.01,`c`],m:[`milli`,.001,`m`],u:[`micro`,1e-6,`u`],n:[`nano`,1e-9,`n`],p:[`pico`,1e-12,`p`],f:[`femto`,1e-15,`f`],a:[`atto`,1e-18,`a`],z:[`zepto`,1e-21,`z`],y:[`yocto`,1e-24,`y`]})}calculate(e,t,n){let{isError:r,errorObject:i,variants:a}=Y(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=`${s.getValue()}`,d=`${c.getValue()}`;if(Number.isNaN(l))return E.create(p.VALUE);let f,m=1,h,g=1,{_from:_,_to:v}=this._lookupFromAndToUnits(u,d);if(f=_,h=v,f===null){let{_from:e,_fromMultiplier:t}=this._lookupFromPrefix(u);f=e,m=t}if(h===null){let{_to:e,_toMultiplier:t}=this._lookupToPrefix(d);h=e,g=t}if(f===null||h===null||f[3]!==h[3])return E.create(p.NA);let y;return f[3]===`temperature`?(y=this._getTemperatureConversion(l,f[1],h[1]),y=+y.toFixed(2)):y=l*f[6]*m/(h[6]*g),R.create(y)}_lookupFromAndToUnits(e,t){let n=null,r=null,i;for(let a=0;a<this._units.length;a++)i=this._units[a][2]===null?[]:this._units[a][2],(this._units[a][1]===e||i.indexOf(e)>=0)&&(n=this._units[a]),(this._units[a][1]===t||i.indexOf(t)>=0)&&(r=this._units[a]);return{_from:n,_to:r}}_lookupFromPrefix(e){let t=null,n=1,r=e,i,a=this._binaryPrefixes[e.substring(0,2)],o=this._unitPrefixes[e.substring(0,1)];e.substring(0,2)===`da`&&(o=[`dekao`,10,`da`]),a?(n=a[2],r=e.substring(2)):o&&(n=o[1],r=e.substring(o[2].length));for(let e=0;e<this._units.length;e++)i=this._units[e][2]===null?[]:this._units[e][2],(this._units[e][1]===r||i.indexOf(r)>=0)&&(t=this._units[e]);return{_from:t,_fromMultiplier:n}}_lookupToPrefix(e){let t=null,n=1,r=e,i,a=this._binaryPrefixes[e.substring(0,2)],o=this._unitPrefixes[e.substring(0,1)];e.substring(0,2)===`da`&&(o=[`dekao`,10,`da`]),a?(n=a[2],r=e.substring(2)):o&&(n=o[1],r=e.substring(o[2].length));for(let e=0;e<this._units.length;e++)i=this._units[e][2]===null?[]:this._units[e][2],(this._units[e][1]===r||i.indexOf(r)>=0)&&(t=this._units[e]);return{_to:t,_toMultiplier:n}}_getTemperatureConversion(e,t,n){switch(t){case`C`:return this._centigradeConversion(e,n);case`F`:return this._fahrenheitConversion(e,n);case`K`:return this._kelvinConversion(e,n);case`Rank`:return this._rankineConversion(e,n);case`Reau`:return this._reaumurConversion(e,n);default:return e}}_centigradeConversion(e,t){switch(t){case`F`:return e*9/5+32;case`K`:return e+273.15;case`Rank`:return(e+273.15)*9/5;case`Reau`:return e*4/5;default:return e}}_fahrenheitConversion(e,t){switch(t){case`C`:return(e-32)*5/9;case`K`:return(e-32)*5/9+273.15;case`Rank`:return e+459.67;case`Reau`:return(e-32)*4/9;default:return e}}_kelvinConversion(e,t){switch(t){case`C`:return e-273.15;case`F`:return(e-273.15)*9/5+32;case`Rank`:return e*9/5;case`Reau`:return(e-273.15)*4/5;default:return e}}_rankineConversion(e,t){switch(t){case`C`:return(e-491.67)*5/9;case`F`:return e-459.67;case`K`:return e*5/9;case`Reau`:return(e-491.67)*4/9;default:return e}}_reaumurConversion(e,t){switch(t){case`C`:return e*5/4;case`F`:return e*9/4+32;case`K`:return e*5/4+273.15;case`Rank`:return e*9/4+491.67;default:return e}}},Bd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull())return E.create(p.NA);let n=0;if(t){let{isError:e,errorObject:r,variants:i}=Y(t);if(e)return r;let[a]=i;if(n=Math.floor(+a.getValue()),Number.isNaN(n))return E.create(p.VALUE);if(n<0||n>10)return E.create(p.NUM)}let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=Math.trunc(+o.getValue());if(Number.isNaN(s))return E.create(p.VALUE);if(!/^-?[0-9]{1,3}$/.test(`${s}`)||s<-512||s>511)return E.create(p.NUM);let c;if(s<0){let e=(512+s).toString(2);c=`1${`0`.repeat(9-e.length)}${e}`}else if(c=Number.parseInt(`${s}`,10).toString(2),t){if(n<c.length)return E.create(p.NUM);c=`0`.repeat(n-c.length)+c}return z.create(c)}},Vd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull())return E.create(p.NA);let n=0;if(t){let{isError:e,errorObject:r,variants:i}=Y(t);if(e)return r;let[a]=i;if(n=Math.floor(+a.getValue()),Number.isNaN(n))return E.create(p.VALUE);if(n<0||n>10)return E.create(p.NUM)}let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=Math.trunc(+o.getValue());if(Number.isNaN(s))return E.create(p.VALUE);if(!/^-?[0-9]{1,12}$/.test(`${s}`)||s<-549755813888||s>549755813887)return E.create(p.NUM);let c;if(s<0)c=(1099511627776+s).toString(16);else if(c=Number.parseInt(`${s}`,10).toString(16),t){if(n<c.length)return E.create(p.NUM);c=`0`.repeat(n-c.length)+c}return z.create(c.toLocaleUpperCase())}},Hd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull())return E.create(p.NA);let n=0;if(t){let{isError:e,errorObject:r,variants:i}=Y(t);if(e)return r;let[a]=i;if(n=Math.floor(+a.getValue()),Number.isNaN(n))return E.create(p.VALUE);if(n<0||n>10)return E.create(p.NUM)}let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=Math.trunc(+o.getValue());if(Number.isNaN(s))return E.create(p.VALUE);if(!/^-?[0-9]{1,9}$/.test(`${s}`)||s<-536870912||s>536870911)return E.create(p.NUM);let c;if(s<0)c=(1073741824+s).toString(8);else if(c=Number.parseInt(`${s}`,10).toString(8),t){if(n<c.length)return E.create(p.NUM);c=`0`.repeat(n-c.length)+c}return z.create(c)}},Ud=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,variants:i}=Y(e,t==null?R.create(0):t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=+o.getValue();if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);let l=s===c?1:0;return R.create(l)}},Wd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n;if(t){let{isError:r,errorObject:i,variants:a}=Y(e,t);if(r)return i;let[o,s]=a,c=+o.getValue(),l=+s.getValue();if(Number.isNaN(c)||Number.isNaN(l))return E.create(p.VALUE);n=dc(l)-dc(c)}else{let{isError:t,errorObject:r,variants:i}=Y(e);if(t)return r;let[a]=i,o=+a.getValue();if(Number.isNaN(o))return E.create(p.VALUE);n=dc(o)}return R.create(n)}},Gd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:t,errorObject:n,variants:r}=Y(e);if(t)return n;let[i]=r,a=+i.getValue();if(Number.isNaN(a))return E.create(p.VALUE);let o=dc(a);return R.create(o)}},Kd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:t,errorObject:n,variants:r}=Y(e);if(t)return n;let[i]=r,a=+i.getValue();if(Number.isNaN(a))return E.create(p.VALUE);let o=fc(a);return R.create(o)}},qd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:t,errorObject:n,variants:r}=Y(e);if(t)return n;let[i]=r,a=+i.getValue();if(Number.isNaN(a))return E.create(p.VALUE);let o=fc(a);return R.create(o)}},Jd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull())return E.create(p.NA);let{isError:n,errorObject:r,variants:i}=Y(e,t==null?R.create(0):t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=+o.getValue();if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);let l=s>=c?1:0;return R.create(l)}},Yd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull())return E.create(p.NA);let n=0;if(t){let{isError:e,errorObject:r,variants:i}=Y(t);if(e)return r;let[a]=i;if(n=Math.floor(+a.getValue()),Number.isNaN(n))return E.create(p.VALUE);if(n<0||n>10)return E.create(p.NUM)}let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=`${o.getValue()}`;if(!uc(s))return E.create(p.NUM);let c=s.length===10&&s.substring(0,1).toLocaleUpperCase()===`F`,l=c?Number.parseInt(s,16)-1099511627776:Number.parseInt(s,16);if(l<-512||l>511)return E.create(p.NUM);let u;if(c){let e=(512+l).toString(2);u=`1${`0`.repeat(9-e.length)}${e}`}else if(u=l.toString(2),t){if(n<u.length)return E.create(p.NUM);u=`0`.repeat(n-u.length)+u}return z.create(u)}},Xd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:t,errorObject:n,variants:r}=Y(e);if(t)return n;let[i]=r,a=`${i.getValue()}`;if(!uc(a))return E.create(p.NUM);let o=Number.parseInt(a,16);return o>=549755813888&&(o-=1099511627776),R.create(o)}},Zd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull())return E.create(p.NA);let n=0;if(t){let{isError:e,errorObject:r,variants:i}=Y(t);if(e)return r;let[a]=i;if(n=Math.floor(+a.getValue()),Number.isNaN(n))return E.create(p.VALUE);if(n<0||n>10)return E.create(p.NUM)}let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=`${o.getValue()}`;if(!uc(s))return E.create(p.NUM);let c=Number.parseInt(s,16);if(c>536870911&&c<0xffe0000000)return E.create(p.NUM);let l;if(c>=0xffe0000000)l=(c-0xffc0000000).toString(8);else if(l=c.toString(8),t){if(n<l.length)return E.create(p.NUM);l=`0`.repeat(n-l.length)+l}return z.create(l)}},Qd=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:t,errorObject:n,variants:r}=Y(e);if(t)return n;let[i]=r,a=new Ld(`${i.getValue()}`);if(a.isError())return E.create(p.NUM);let o=a.Abs();return R.create(o)}},$d=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:t,errorObject:n,variants:r}=Y(e);if(t)return n;let[i]=r,a=new Ld(`${i.getValue()}`);if(a.isError())return E.create(p.NUM);let o=a.getINum();return R.create(o)}},ef=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:t,errorObject:n,variants:r}=Y(e);if(t)return n;let[i]=r,a=new Ld(`${i.getValue()}`);if(a.isError())return E.create(p.NUM);if(a.getRealNum()===0&&a.getINum()===0)return E.create(p.DIV_BY_ZERO);let o=a.Argument();return R.create(o)}},tf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);let s=o.Conjugate();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},nf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);let s=o.Cos();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},rf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);let s=o.Cosh();return o.isError()?E.create(p.NUM):typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},af=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError()||o.getRealNum()===0&&o.getINum()===0)return E.create(p.NUM);let s=o.Cot();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},of=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError()||o.getRealNum()===0&&o.getINum()===0)return E.create(p.NUM);let s=o.Coth();return o.isError()?E.create(p.NUM):typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},sf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError()||o.getRealNum()===0&&o.getINum()===0)return E.create(p.NUM);let s=o.Csc();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},cf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError()||o.getRealNum()===0&&o.getINum()===0)return E.create(p.NUM);let s=o.Csch();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},lf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,n){if(e.isNull()||n.isNull())return E.create(p.NA);let{isError:r,errorObject:i,variants:a}=Y(e,n);if(r)return i;let[o,s]=a,c=`${o.getValue()}`,l=`${s.getValue()}`,u=new Ld(c),d=new Ld(l);if(u.isError()||d.isError()||u.isDifferentSuffixes(d)||d.getRealNum()===0&&d.getINum()===0)return E.create(p.NUM);let f=u.Div(d);return typeof f==`number`||(0,t.isRealNum)(f)?R.create(+f):z.create(f)}},uf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);let s=o.Exp();return o.isError()?E.create(p.NUM):typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},df=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError()||o.getRealNum()===0&&o.getINum()===0)return E.create(p.NUM);let s=o.Ln();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},ff=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,n){let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=n==null?R.create(10):n;if(s.isArray()){let e=s.getRowCount(),t=s.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);s=s.get(0,0)}let{isError:c,errorObject:l,variants:u}=X(s);if(c)return l;let[d]=u,f=`${o.getValue()}`,m=+d.getValue(),h=new Ld(f);if(h.isError()||h.getRealNum()===0&&h.getINum()===0||m<=0)return E.create(p.NUM);let g=h.Log(m);return h.isError()?E.create(p.NUM):typeof g==`number`||(0,t.isRealNum)(g)?R.create(+g):z.create(g)}},pf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError()||o.getRealNum()===0&&o.getINum()===0)return E.create(p.NUM);let s=o.Log(2);return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},mf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError()||o.getRealNum()===0&&o.getINum()===0)return E.create(p.NUM);let s=o.Log(10);return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},hf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,n){if(e.isNull()||n.isNull())return E.create(p.NA);let{isError:r,errorObject:i,variants:a}=Y(e,n);if(r)return i;let[o,s]=a,c=new Ld(`${o.getValue()}`);if(c.isError())return E.create(p.NUM);let l=+s.getValue();if(Number.isNaN(l))return E.create(p.VALUE);let u=c.Power(l);return c.isError()?E.create(p.NUM):typeof u==`number`||(0,t.isRealNum)(u)?R.create(+u):z.create(u)}},gf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let n=``;for(let t=0;t<e.length;t++){if(n instanceof E)return n;let r=e[t];if(r.isArray()){let e=!1,t;if(r.iterator(r=>{if(n=this._handleSingleObject(r,n),n instanceof E)return e=!0,t=n,!1}),e)return t}else n=this._handleSingleObject(r,n)}return n instanceof E?n:typeof n==`number`||(0,t.isRealNum)(n)?R.create(+n):z.create(n)}_handleSingleObject(e,t){let n=t;if(e.isError())return e;if(e.isBoolean())return E.create(p.VALUE);let r=`${e.getValue()}`;if(typeof t!=`number`&&!t){let e=new Ld(r);if(e.isError())return E.create(p.NUM);n=e.toString()}else{let e=new Ld(t),i=new Ld(r);if(e.isError()||i.isError())return E.create(p.NUM);if(e.isDifferentSuffixes(i))return E.create(p.VALUE);n=e.Product(i)}return n}},_f=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:t,errorObject:n,variants:r}=Y(e);if(t)return n;let[i]=r,a=new Ld(`${i.getValue()}`);if(a.isError())return E.create(p.NUM);let o=a.getRealNum();return R.create(o)}},vf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);let s=o.Sec();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},yf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);let s=o.Sech();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},bf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);let s=o.Sin();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},xf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);let s=o.Sinh();return o.isError()?E.create(p.NUM):typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},Sf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);if(o.getRealNum()===0&&o.getINum()===0)return R.create(0);let s=o.Sqrt();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},Cf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,n){if(e.isNull()||n.isNull())return E.create(p.NA);let{isError:r,errorObject:i,variants:a}=Y(e,n);if(r)return i;let[o,s]=a,c=`${o.getValue()}`,l=`${s.getValue()}`,u=new Ld(c),d=new Ld(l);if(u.isError()||d.isError()||u.isDifferentSuffixes(d))return E.create(p.NUM);let f=u.Sub(d);return typeof f==`number`||(0,t.isRealNum)(f)?R.create(+f):z.create(f)}},wf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let n=``;for(let t=0;t<e.length;t++){if(n instanceof E)return n;let r=e[t];if(r.isArray()){let e=!1,t;if(r.iterator(r=>{if(n=this._handleSingleObject(r,n),n instanceof E)return e=!0,t=n,!1}),e)return t}else n=this._handleSingleObject(r,n)}return n instanceof E?n:typeof n==`number`||(0,t.isRealNum)(n)?R.create(+n):z.create(n)}_handleSingleObject(e,t){let n=t;if(e.isError())return e;if(e.isBoolean())return E.create(p.VALUE);let r=`${e.getValue()}`;if(typeof t!=`number`&&!t){let e=new Ld(r);if(e.isError())return E.create(p.NUM);n=e.toString()}else{let e=new Ld(t),i=new Ld(r);if(e.isError()||i.isError())return E.create(p.NUM);if(e.isDifferentSuffixes(i))return E.create(p.VALUE);n=e.Sum(i)}return n}},Tf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);let s=o.Tan();return typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},Ef=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=new Ld(`${a.getValue()}`);if(o.isError())return E.create(p.NUM);let s=o.Tanh();return o.isError()?E.create(p.NUM):typeof s==`number`||(0,t.isRealNum)(s)?R.create(+s):z.create(s)}},Df=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull())return E.create(p.NA);let n=0;if(t){let{isError:e,errorObject:r,variants:i}=Y(t);if(e)return r;let[a]=i;if(n=Math.floor(+a.getValue()),Number.isNaN(n))return E.create(p.VALUE);if(n<0||n>10)return E.create(p.NUM)}let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=`${o.getValue()}`;if(!lc(s))return E.create(p.NUM);let c=s.length===10&&s.substring(0,1)===`7`,l=c?Number.parseInt(s,8)-1073741824:Number.parseInt(s,8);if(l<-512||l>511)return E.create(p.NUM);let u;if(c){let e=(512+l).toString(2);u=`1${`0`.repeat(9-e.length)}${e}`}else if(u=l.toString(2),t){if(n<u.length)return E.create(p.NUM);u=`0`.repeat(n-u.length)+u}return z.create(u)}},Of=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let{isError:t,errorObject:n,variants:r}=Y(e);if(t)return n;let[i]=r,a=`${i.getValue()}`;if(!lc(a))return E.create(p.NUM);let o=Number.parseInt(a,8);return o>=536870912&&(o-=1073741824),R.create(o)}},kf=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){if(e.isNull())return E.create(p.NA);let n=0;if(t){let{isError:e,errorObject:r,variants:i}=Y(t);if(e)return r;let[a]=i;if(n=Math.floor(+a.getValue()),Number.isNaN(n))return E.create(p.VALUE);if(n<0||n>10)return E.create(p.NUM)}let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=`${o.getValue()}`;if(!lc(s))return E.create(p.NUM);let c=Number.parseInt(s,8),l;if(c>=536870912)l=`ff${(c+3221225472).toString(16)}`;else if(l=c.toString(16),t){if(n<l.length)return E.create(p.NUM);l=`0`.repeat(n-l.length)+l}return z.create(l.toLocaleUpperCase())}};let Af=[[Td,U.BESSELI],[Ed,U.BESSELJ],[Dd,U.BESSELK],[Od,U.BESSELY],[kd,U.BIN2DEC],[Ad,U.BIN2HEX],[jd,U.BIN2OCT],[Md,U.BITAND],[Nd,U.BITLSHIFT],[Pd,U.BITOR],[Fd,U.BITRSHIFT],[Id,U.BITXOR],[Rd,U.COMPLEX],[zd,U.CONVERT],[Bd,U.DEC2BIN],[Vd,U.DEC2HEX],[Hd,U.DEC2OCT],[Ud,U.DELTA],[Wd,U.ERF],[Gd,U.ERF_PRECISE],[Kd,U.ERFC],[qd,U.ERFC_PRECISE],[Jd,U.GESTEP],[Yd,U.HEX2BIN],[Xd,U.HEX2DEC],[Zd,U.HEX2OCT],[Qd,U.IMABS],[$d,U.IMAGINARY],[ef,U.IMARGUMENT],[tf,U.IMCONJUGATE],[nf,U.IMCOS],[rf,U.IMCOSH],[af,U.IMCOT],[of,U.IMCOTH],[sf,U.IMCSC],[cf,U.IMCSCH],[lf,U.IMDIV],[uf,U.IMEXP],[df,U.IMLN],[ff,U.IMLOG],[mf,U.IMLOG10],[pf,U.IMLOG2],[hf,U.IMPOWER],[gf,U.IMPRODUCT],[_f,U.IMREAL],[vf,U.IMSEC],[yf,U.IMSECH],[bf,U.IMSIN],[xf,U.IMSINH],[Sf,U.IMSQRT],[Cf,U.IMSUB],[wf,U.IMSUM],[Tf,U.IMTAN],[Ef,U.IMTANH],[Df,U.OCT2BIN],[Of,U.OCT2DEC],[kf,U.OCT2HEX]];function jf(e,t,n,r){let{days:i}=ge(Ff(e,t,n),e,r);return i}function Mf(e,t,n,r){let i;if(r===1){let r=Ff(e,t,n),a=O(r);a=Oe(a,12/n);let o=D(a);i=r<0&&n===1?365:o-r}else i=r===3?365/n:360/n;return i}function Nf(e,t,n){let r=O(e),i=O(t);for(i.setUTCFullYear(r.getUTCFullYear()),i<r&&i.setUTCFullYear(i.getUTCFullYear()+1);i>r;)i=Oe(i,-12/n);return i=Oe(i,12/n),D(i)}function Pf(e,t,n){let r=0,i=O(e),a=O(t);for(;a>i;)a=Oe(a,-12/n),r++;return r}function Ff(e,t,n){let r=O(e),i=O(t);for(i.setUTCFullYear(r.getUTCFullYear()),i<r&&i.setUTCFullYear(i.getUTCFullYear()+1);i>r;)i=Oe(i,-12/n);return D(i)}function If(e,t,n,r,i,a){let o=jf(e,t,i,a),s=Mf(e,t,i,a),c=Pf(e,t,i),l=(s-o)/s-1,u=r/i+1,d=n*100/i,f=0,p=0;for(let e=1;e<=c;e++){let t=e+l,n=d/u**t;f+=t*n,p+=n}let m=c+l,h=100/u**m;return f+=m*h,p+=h,f/p/i}function Lf(e,t,n,r,i){let a;if(e===0)a=(n+r)/t;else{let o=(1+e)**t;a=i===1?(r*e/(o-1)+n*e/(1-1/o))/(1+e):r*e/(o-1)+n*e/(1-1/o)}return-a}function Rf(e,t,n,r,i){let a;if(e===0)a=r+n*t;else{if(e===-1&&t===0)return NaN;let o=(1+e)**t;a=i===1?r*o+n*(1+e)*(o-1)/e:r*o+n*(o-1)/e}return-a}function zf(e,t,n,r,i,a){let o=Lf(e,n,r,i,a);return(t===1?a===1?0:-r:a===1?Rf(e,t-2,o,r,1)-o:Rf(e,t-1,o,r,0))*e}function Bf(e,t){let n=0;for(let r=1;r<=t.length;r++)n+=t[r-1]/(1+e)**r;return n}function Vf(e,t,n,r,i,a,o,s,c){let l=Wf(n,r,c),u=Mf(e,r,s,c);return l<u?Hf(e,t,n,r,i,a,o,s,c,l,u):Uf(e,t,n,r,i,a,o,s,c,u)}function Hf(e,t,n,r,i,a,o,s,c,l,u){let d=0,f=Pf(e,t,s),p=Wf(e,r,c);d+=o/(1+a/s)**(f-1+p/u),d+=100*i/s*l/u/(1+a/s)**(p/u);for(let e=2;e<=f;e++)d+=100*i/s/(1+a/s)**(e-1+p/u);let m=Wf(n,e,c);return d-=100*i/s*m/u,d}function Uf(e,t,n,r,i,a,o,s,c,l){let u=0,d=Pf(r,t,s),f=Jf(r,e,12/s,!0),p;if(c===2||c===3)p=Wf(e,Nf(e,r,s),c);else{let{days:t}=ge(Ff(e,r,s),e,c);p=l-t}u+=o/(1+a/s)**(d+f+p/l);let m=Pf(n,r,s),h=r,g=0,_=0;for(let t=m;t>=1;t--){let r=qf(h,-12/s,!1),i=c===1?Wf(r,h,c):l,a=t>1?i:Wf(n,h,c);g+=a/i;let o=Wf(n>r?n:r,e<h?e:h,c);_+=o/i,h=r}u+=100*i/s*g/(1+a/s)**(f+p/l);for(let e=1;e<=d;e++)u+=100*i/s/(1+a/s)**(e+f+p/l);return u-=100*i/s*_,u}function Wf(e,t,n){let{days:r}=ge(e,t,n);return e<t?r:0}function Gf(e,t,n){let r=O(e),i=r.getUTCFullYear(),a=r.getUTCMonth(),o=r.getUTCDate(),s=De(i,a,o),c=O(t),l=c.getUTCFullYear(),u=c.getUTCMonth(),d=c.getUTCDate(),f=De(l,u,d);return!(o!==d&&!(s&&f)||Math.abs((l-i)*12+(u-a))%(12/n)!=0)}function Kf(e,t,n){return Ff(e,t,n)>=0}function qf(e,t,n){let r=O(e);if(r=Oe(r,t),n){let e=we(r.getUTCFullYear(),r.getUTCMonth());r.setUTCDate(e)}return D(r)}function Jf(e,t,n,r){let i=O(e),a=O(t),o=i.getUTCFullYear(),s=i.getUTCMonth(),c=i.getUTCDate(),l=a.getUTCFullYear(),u=a.getUTCMonth(),d=a.getUTCDate(),f=De(o,s,c),p=!f&&s!==1&&c>28&&c<we(o,s)?De(l,u,d):f,m=qf(t,0,p),h=r-0+ +(t<m),g=qf(m,n,p);for(;!(n>0?g>=t:g<=t);)g=qf(g,n,p),h++;return h}function Yf(e,t){let n=1e-7;n*2;let r=1,i=0,a=e,o;for(;r>n&&i<500;){let e=(t(a+n)-t(a-n))/2e-7;o=a-t(a)/e,i++,r=Math.abs(o-a),a=o}return Number.isNaN(a)||Math.abs(a)===1/0||i===500?Xf(e,t):a}function Xf(e,t){let n=1e-7,r=Number.MAX_VALUE,i=1.6,a=e-.01<=-1?-1+n:e-.01,o=e+.01>=r?r-n:e+.01,s,c,l=0;if(e<=-1||e>=r)return E.create(p.NUM);for(let e=0;e<60;e++){s=a<=-1?-1+n:a,c=o>=r?r-n:o;let l=t(s),u=t(c);if(l*u<=0)break;if(l*u>0)a=s+i*(s-c),o=c+i*(c-s);else return E.create(p.NUM);if(e===59)return E.create(p.NUM)}s=s,c=c;let u=t(s),d=t(c),f,m;if(Math.abs(u)<n||Math.abs(d)<n)return E.create(p.NUM);do m=s+(c-s)/2,f=t(m),u*f<0?c=m:s=m,u=t(s),l++;while(Math.abs(f)>n&&l<60);return m}function Zf(e,t,n,r,i,a,o){let s=Pf(e,t,a),c=Mf(e,t,a,o),l=jf(e,t,a,o);if(s===1){let e=c-l,t=100*n/a+i,o=r/a*e/c+1,s=100*n/a*l/c;return t/o-s}let u=c-l,d=i/(1+r/a)**(s-1+u/c);for(let e=1;e<=s;e++)d+=100*n/a/(1+r/a)**(e-1+u/c);return d-=100*n/a*l/c,d}function Qf(e,t,n,r,i){let a=0,o=i/n;o>=1?(o=1,a=r===1?e:0):a=e*(1-o)**(r-1);let s=e*(1-o)**r,c=0;return c=s<t?a-t:a-s,c<0&&(c=0),c}var $f=class extends Z{constructor(...e){super(...e),d(this,`minParams`,6),d(this,`maxParams`,8)}calculate(e,t,n,r,i,a,o,s){let c=o==null?R.create(0):o,l=s==null?L.create(!0):s,{isError:u,errorObject:d,variants:f}=Y(e,t,n,r,i,a,c);if(u)return d;let[m,h,g,_,v,y,b]=f,x=k(m);if(typeof x!=`number`)return x;let S=k(h);if(typeof S!=`number`)return S;let C=k(g);if(typeof C!=`number`)return C;let w=+_.getValue(),T=+v.getValue(),ee=Math.floor(+y.getValue()),te=Math.floor(+b.getValue()),ne=+l.getValue();return Number.isNaN(w)||Number.isNaN(T)||Number.isNaN(ee)||Number.isNaN(te)||Number.isNaN(ne)?E.create(p.VALUE):w<=0||T<=0||![1,2,4].includes(ee)||te<0||te>4||Math.floor(x)>=Math.floor(C)?E.create(p.NUM):this._getResult(x,S,C,w,T,ee,te,ne)}_getResult(e,t,n,r,i,a,o,s){let c=Ff(e,t,a);if(c<=0)return R.create(0);c=Ff(n,t,a);let l=12/a,u=O(t),d=De(u.getUTCFullYear(),u.getUTCMonth(),u.getUTCDate()),f=qf(t,-l,d);if(n>t&&s)for(f=t;f<n;)f=qf(f,l,d);let p=e>f?e:f,{days:m}=ge(p,n,o);if(c>=e){let{days:e}=ge(p,n,o?4:0);m=e}n<p&&(m=-m);let h=Mf(f,t,a,o),g=m/h,_=f,v=e;for(;_>e;){v=_,_=qf(_,-l,d),p=e>_?e:_;let{days:t}=ge(p,v,o);if(o===0)m=v>=p||e<=_?t:-t,h=Mf(_,v,a,o);else if(m=v<p?-t:t,o===3)h=365/a;else{let{days:e}=ge(_,v,o);h=v<_?-e:e}g+=e<=_?s?1:0:m/h}let y=i*r/a*g;return R.create(y)}},ep=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let{isError:a,errorObject:o,variants:s}=Y(e,t,n,r,i==null?R.create(0):i);if(a)return o;let[c,l,u,d,f]=s,m=k(c);if(typeof m!=`number`)return m;let h=k(l);if(typeof h!=`number`)return h;let g=+u.getValue(),_=+d.getValue(),v=Math.floor(+f.getValue());if(Number.isNaN(g)||Number.isNaN(_)||Number.isNaN(v))return E.create(p.VALUE);if(g<=0||_<=0||v<0||v>4||Math.floor(m)>Math.floor(h))return E.create(p.NUM);if(Math.floor(m)===Math.floor(h))return R.create(0);let{days:y,yearDays:b}=ge(m,h,v),x=_*g*y/b;return R.create(x)}},tp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,6),d(this,`maxParams`,7)}calculate(e,t,n,r,i,a,o){let{isError:s,errorObject:c,variants:l}=Y(e,t,n,r,i,a,o==null?R.create(0):o);if(s)return c;let[u,d,f,m,h,g,_]=l,v=k(d);if(typeof v!=`number`)return v;let y=k(f);if(typeof y!=`number`)return y;let b=+u.getValue(),x=+m.getValue(),S=+h.getValue(),C=+g.getValue(),w=Math.floor(+_.getValue());return Number.isNaN(b)||Number.isNaN(x)||Number.isNaN(S)||Number.isNaN(C)||Number.isNaN(w)?E.create(p.VALUE):b<=0||x<0||b<x||Math.floor(v)>Math.floor(y)||S<0||C<=0||![0,1,3,4].includes(w)?E.create(p.NUM):(S=S>1?Math.floor(S):Math.ceil(S),this._getResult(b,v,y,x,S,C,w))}_getResult(e,t,n,r,i,a,o){let s=e-r,c=e*a,{days:l,yearDays:u}=ge(t,n,o),d=l/u,f=Math.ceil(s/c-d);if(f<0)return R.create(0);let p=c;return i===0?p=c*d:i===f?p=s-c*(d+i-1):i>f&&(p=0),R.create(p)}},np=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a,variants:o}=Y(e,t,n,r==null?R.create(0):r);if(i)return a;let[s,c,l,u]=o,d=k(s);if(typeof d!=`number`)return d;let f=k(c);if(typeof f!=`number`)return f;let m=Math.floor(+l.getValue()),h=Math.floor(+u.getValue());if(Number.isNaN(m)||Number.isNaN(h))return E.create(p.VALUE);if(![1,2,4].includes(m)||h<0||h>4||Math.floor(d)>=Math.floor(f))return E.create(p.NUM);let g=jf(d,f,m,h);return R.create(g)}},rp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a,variants:o}=Y(e,t,n,r==null?R.create(0):r);if(i)return a;let[s,c,l,u]=o,d=k(s);if(typeof d!=`number`)return d;let f=k(c);if(typeof f!=`number`)return f;let m=Math.floor(+l.getValue()),h=Math.floor(+u.getValue());if(Number.isNaN(m)||Number.isNaN(h))return E.create(p.VALUE);if(![1,2,4].includes(m)||h<0||h>4||Math.floor(d)>=Math.floor(f))return E.create(p.NUM);let g=Mf(d,f,m,h);return R.create(g)}},ip=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a,variants:o}=Y(e,t,n,r==null?R.create(0):r);if(i)return a;let[s,c,l,u]=o,d=k(s);if(typeof d!=`number`)return d;let f=k(c);if(typeof f!=`number`)return f;let m=Math.floor(+l.getValue()),h=Math.floor(+u.getValue());if(Number.isNaN(m)||Number.isNaN(h))return E.create(p.VALUE);if(![1,2,4].includes(m)||h<0||h>4||Math.floor(d)>=Math.floor(f))return E.create(p.NUM);let g=O(d),_=O(f);for(_.setUTCFullYear(g.getUTCFullYear()),_<g&&_.setUTCFullYear(_.getUTCFullYear()+1);_>g;)_.setUTCMonth(_.getUTCMonth()-12/m);_.setUTCMonth(_.getUTCMonth()+12/m);let{days:v}=ge(d,D(_),h);return R.create(v)}},ap=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a,variants:o}=Y(e,t,n,r==null?R.create(0):r);if(i)return a;let[s,c,l,u]=o,d=k(s);if(typeof d!=`number`)return d;let f=k(c);if(typeof f!=`number`)return f;let m=Math.floor(+l.getValue()),h=Math.floor(+u.getValue());if(Number.isNaN(m)||Number.isNaN(h))return E.create(p.VALUE);if(![1,2,4].includes(m)||h<0||h>4||Math.floor(d)>=Math.floor(f))return E.create(p.NUM);let g=Nf(d,f,m);return R.create(g)}},op=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a,variants:o}=Y(e,t,n,r==null?R.create(0):r);if(i)return a;let[s,c,l,u]=o,d=k(s);if(typeof d!=`number`)return d;let f=k(c);if(typeof f!=`number`)return f;let m=Math.floor(+l.getValue()),h=Math.floor(+u.getValue());if(Number.isNaN(m)||Number.isNaN(h))return E.create(p.VALUE);if(![1,2,4].includes(m)||h<0||h>4||Math.floor(d)>=Math.floor(f)||Ff(d,f,m)<0)return E.create(p.NUM);let g=Pf(d,f,m);return R.create(g)}},sp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a,variants:o}=Y(e,t,n,r==null?R.create(0):r);if(i)return a;let[s,c,l,u]=o,d=k(s);if(typeof d!=`number`)return d;let f=k(c);if(typeof f!=`number`)return f;let m=Math.floor(+l.getValue()),h=Math.floor(+u.getValue());if(Number.isNaN(m)||Number.isNaN(h))return E.create(p.VALUE);if(![1,2,4].includes(m)||h<0||h>4||Math.floor(d)>=Math.floor(f))return E.create(p.NUM);let g=Ff(d,f,m);return g<0&&(g=0),R.create(g)}},cp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,6),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let{isError:o,errorObject:s,variants:c}=Y(e,t,n,r,i,a);if(o)return s;let[l,u,d,f,m,h]=c,g=+l.getValue(),_=+u.getValue(),v=+d.getValue(),y=+f.getValue(),b=+m.getValue(),x=+h.getValue();return Number.isNaN(g)||Number.isNaN(_)||Number.isNaN(v)||Number.isNaN(y)||Number.isNaN(b)||Number.isNaN(x)?E.create(p.VALUE):g<=0||_<=0||v<=0||y<1||b<1||y>b||y>_||b>_||![0,1].includes(x)?E.create(p.NUM):Math.trunc(y)!==y&&Math.trunc(b)!==b&&Math.trunc(y)===Math.trunc(b)?R.create(0):this._getResult(g,_,v,y,b,x)}_getResult(e,t,n,r,i,a){let o=Lf(e,t,n,0,a),s=0,c=Math.ceil(r);c===1&&(a===0&&(s=-n),c++);let l=!1;for(let t=c;t<=i;t++){let r=a===1?Rf(e,t-2,o,n,1):Rf(e,t-1,o,n,0);if(r===0){l=!0;break}s+=a===1?r-o:r}return s*=e,(s<o*(i-r+1)||l)&&(s=o*(i-r+1)),R.create(s)}},lp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,6),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let{isError:o,errorObject:s,variants:c}=Y(e,t,n,r,i,a);if(o)return s;let[l,u,d,f,m,h]=c,g=+l.getValue(),_=+u.getValue(),v=+d.getValue(),y=+f.getValue(),b=+m.getValue(),x=+h.getValue();return Number.isNaN(g)||Number.isNaN(_)||Number.isNaN(v)||Number.isNaN(y)||Number.isNaN(b)||Number.isNaN(x)?E.create(p.VALUE):g<=0||_<=0||v<=0||y<1||b<1||y>b||![0,1].includes(x)?E.create(p.NUM):Math.trunc(y)!==y&&Math.trunc(b)!==b&&Math.trunc(y)===Math.trunc(b)?R.create(0):this._getResult(g,_,v,y,b,x)}_getResult(e,t,n,r,i,a){let o=Lf(e,t,n,0,a),s=0,c=Math.ceil(r);c===1&&(s=a===0?o+n*e:o,c++);for(let t=c;t<=i;t++)s+=a===1?o-(Rf(e,t-2,o,n,1)-o)*e:o-Rf(e,t-1,o,n,0)*e;return R.create(s)}},up=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,5),d(this,`needsLocale`,!0)}calculate(e,t,n,r,i){let a=i==null?R.create(12):i;a.isNull()&&(a=R.create(12));let o=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1,a.isArray()?a.getRowCount():1),s=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1,a.isArray()?a.getColumnCount():1),c=V(o,s,e,E.create(p.NA)),l=V(o,s,t,E.create(p.NA)),u=V(o,s,n,E.create(p.NA)),d=V(o,s,r,E.create(p.NA)),f=V(o,s,a,E.create(p.NA)),m=c.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,l.get(t,n),u.get(t,n),d.get(t,n),f.get(t,n));if(r)return i;let[o,s,c,m,h]=a,g=+o.getValue(),_=+s.getValue(),v=+c.getValue(),y=+m.getValue(),b=Math.floor(+h.getValue());return g<0||_<0||v<=0||y<=0||Math.floor(y)>Math.floor(v)||b<1||b>12?E.create(p.NUM):(y<1&&(y=1),y=Math.floor(y),this._getResult(g,_,v,y,b,t,n))});return o===1&&s===1?m.get(0,0):m}_getResult(e,t,n,r,i,a,o){let s=+(1-(t/e)**(1/n)).toFixed(3),c=e*s*i/12,l=c,u=0,d=r===n?n-1:r;for(let t=2;t<=d;t++)u=(e-l)*s,l+=u;let f;return f=r===1?c:r===n?(e-l)*s:u,Number.isNaN(f)||!Number.isFinite(f)?E.create(p.NUM):a===0&&o===0?R.create(f,Pr(this.getLocale())):R.create(f)}},dp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,5),d(this,`needsLocale`,!0)}calculate(e,t,n,r,i){let a=i==null?R.create(2):i;a.isNull()&&(a=R.create(2));let o=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1,a.isArray()?a.getRowCount():1),s=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1,a.isArray()?a.getColumnCount():1),c=V(o,s,e,E.create(p.NA)),l=V(o,s,t,E.create(p.NA)),u=V(o,s,n,E.create(p.NA)),d=V(o,s,r,E.create(p.NA)),f=V(o,s,a,E.create(p.NA)),m=c.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,l.get(t,n),u.get(t,n),d.get(t,n),f.get(t,n));if(r)return i;let[o,s,c,m,h]=a,g=+o.getValue(),_=+s.getValue(),v=+c.getValue(),y=+m.getValue(),b=+h.getValue();if(g<0||_<0||v<=0||y<=0||y>v||b<=0)return E.create(p.NUM);let x=Qf(g,_,v,y,b);return Number.isNaN(x)||!Number.isFinite(x)?E.create(p.NUM):t===0&&n===0?R.create(x,Pr(this.getLocale())):R.create(x)});return o===1&&s===1?m.get(0,0):m}},fp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let{isError:a,errorObject:o,variants:s}=Y(e,t,n,r,i==null?R.create(0):i);if(a)return o;let[c,l,u,d,f]=s,m=k(c);if(typeof m!=`number`)return m;let h=k(l);if(typeof h!=`number`)return h;let g=+u.getValue(),_=+d.getValue(),v=Math.floor(+f.getValue());if(Number.isNaN(g)||Number.isNaN(_)||Number.isNaN(v))return E.create(p.VALUE);if(g<=0||_<=0||v<0||v>4||Math.floor(m)>=Math.floor(h))return E.create(p.NUM);let{days:y,yearDays:b}=ge(m,h,v),x=(_-g)/_*(b/y);return R.create(x)}},pp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,variants:i}=Y(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);if(c<0)return E.create(p.NUM);if(c>=0&&c<1)return E.create(p.DIV_BY_ZERO);c=Number.parseInt(`${c}`,10);let l=Number.parseInt(`${s}`,10);l+=s%1*10**Math.ceil(Math.log(c)/Math.LN10)/c;let u=10**(Math.ceil(Math.log(c)/Math.LN2)+1);return l=Math.round(l*u)/u,R.create(l)}},mp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,variants:i}=Y(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);if(c<0)return E.create(p.NUM);if(c>=0&&c<1)return E.create(p.DIV_BY_ZERO);c=Number.parseInt(`${c}`,10);let l=Number.parseInt(`${s}`,10);return l+=s%1*10**-Math.ceil(Math.log(c)/Math.LN10)*c,R.create(l)}},hp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,5),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let o=a==null?R.create(0):a;o.isNull()&&(o=R.create(0));let{isError:s,errorObject:c,variants:l}=nc(e,t,n,r,i,o);if(s)return c;let[u,d,f,m,h,g]=l,_=k(u);if(typeof _!=`number`)return _;let v=k(d);if(typeof v!=`number`)return v;let y=+f.getValue(),b=+m.getValue(),x=Math.floor(+h.getValue()),S=Math.floor(+g.getValue());if(Number.isNaN(y)||Number.isNaN(b)||Number.isNaN(x)||Number.isNaN(S))return E.create(p.VALUE);if(y<0||b<0||![1,2,4].includes(x)||S<0||S>4||Math.floor(_)>=Math.floor(v)||_<=0||v<=366)return E.create(p.NUM);let C=If(_,v,y,b,x,S);return R.create(C)}},gp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,variants:i}=Y(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);if(s<=0||c<1)return E.create(p.NUM);c=Number.parseInt(`${c}`,10);let l=(1+s/c)**c-1;return R.create(l)}},_p=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,5),d(this,`needsLocale`,!0)}calculate(e,t,n,r,i){let a=r==null?R.create(0):r,o=i==null?R.create(0):i,s=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,a.isArray()?a.getRowCount():1,o.isArray()?o.getRowCount():1),c=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,a.isArray()?a.getColumnCount():1,o.isArray()?o.getColumnCount():1),l=V(s,c,e,E.create(p.NA)),u=V(s,c,t,E.create(p.NA)),d=V(s,c,n,E.create(p.NA)),f=V(s,c,a,E.create(p.NA)),m=V(s,c,o,E.create(p.NA)),h=l.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,u.get(t,n),d.get(t,n),f.get(t,n),m.get(t,n));if(r)return i;let[o,s,c,l,h]=a,g=Rf(+o.getValue(),+s.getValue(),+c.getValue(),+l.getValue(),+h.getValue()?1:0);return Number.isNaN(g)||!Number.isFinite(g)?E.create(p.NUM):t===0&&n===0?R.create(g,Pr(this.getLocale())):R.create(g)});return s===1&&c===1?h.get(0,0):h}},vp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,variants:i}=Y(e);if(n)return r;let[a]=i,o=+a.getValue();if(Number.isNaN(o))return E.create(p.VALUE);let s=o;if(t.isArray()){let e=t.getArrayValue().flat();for(let t=0;t<e.length;t++){let n=e[t];if(n.isBoolean())return E.create(p.VALUE);let r=+n.getValue();if(Number.isNaN(r))return E.create(p.VALUE);s*=1+r}}else{if(t.isBoolean())return E.create(p.VALUE);let e=+t.getValue();if(Number.isNaN(e))return E.create(p.VALUE);s*=1+e}return R.create(s)}},yp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let{isError:a,errorObject:o,variants:s}=Y(e,t,n,r,i==null?R.create(0):i);if(a)return o;let[c,l,u,d,f]=s,m=k(c);if(typeof m!=`number`)return m;let h=k(l);if(typeof h!=`number`)return h;let g=+u.getValue(),_=+d.getValue(),v=Math.floor(+f.getValue());if(Number.isNaN(g)||Number.isNaN(_)||Number.isNaN(v))return E.create(p.VALUE);if(g<=0||_<=0||v<0||v>4||Math.floor(m)>=Math.floor(h))return E.create(p.NUM);let{days:y,yearDays:b}=ge(m,h,v),x=(_-g)/g*(b/y);return R.create(x)}},bp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,6),d(this,`needsLocale`,!0)}calculate(e,t,n,r,i,a){let o=i==null?R.create(0):i,s=a==null?R.create(0):a,c=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1,o.isArray()?o.getRowCount():1,s.isArray()?s.getRowCount():1),l=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1,o.isArray()?o.getColumnCount():1,s.isArray()?s.getColumnCount():1),u=V(c,l,e,E.create(p.NA)),d=V(c,l,t,E.create(p.NA)),f=V(c,l,n,E.create(p.NA)),m=V(c,l,r,E.create(p.NA)),h=V(c,l,o,E.create(p.NA)),g=V(c,l,s,E.create(p.NA)),_=u.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,d.get(t,n),f.get(t,n),m.get(t,n),h.get(t,n),g.get(t,n));if(r)return i;let[o,s,c,l,u,_]=a,v=+o.getValue(),y=+s.getValue(),b=+c.getValue(),x=+l.getValue(),S=+u.getValue(),C=+_.getValue();if(y<1||Math.floor(y)>Math.ceil(b))return E.create(p.NUM);let w=zf(v,y,b,x,S,C?1:0);return Number.isNaN(w)||!Number.isFinite(w)?E.create(p.NUM):t===0&&n===0?R.create(w,Pr(this.getLocale())):R.create(w)});return c===1&&l===1?_.get(0,0):_}},xp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(.1):t;return n.isNull()&&(n=R.create(.1)),n.isArray()?n.map((t,n,r)=>this._handleSingleObject(e,t,n,r)):this._handleSingleObject(e,n)}_handleSingleObject(e,t,n=0,r=0){if(e.isError())return e;if(t.isError())return t;if(e.isNull())return E.create(p.VALUE);if(!e.isArray())return E.create(p.NUM);let{_values:i,valuesHasError:a}=this._getValues(e);if(a)return E.create(p.VALUE);let o=t;if(o.isString()&&(o=o.convertToNumberObjectValue(),o.isError()))return o;let s=+o.getValue(),{positive:c,negative:l}=this._checkValues(i);if(!c||!l)return E.create(p.NUM);let u=Yf(s,e=>Bf(e,i));return typeof u==`number`?n===0&&r===0?R.create(u,`0%`):R.create(u):u}_getValues(e){let t=[],n=!1;return e.iterator(e=>{let r=e;if(r.isError())return n=!0,!1;if(r.isNull()||r.isBoolean()||r.isString()&&r.getValue()===``)return!0;let i=+r.getValue();if(Number.isNaN(i))return!0;t.push(i)}),{_values:t,valuesHasError:n}}_checkValues(e){let t=!1,n=!1;for(let r=0;r<e.length;r++)e[r]>0&&(t=!0),e[r]<0&&(n=!0);return{positive:t,negative:n}}},Sp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,s.get(t,n),c.get(t,n),l.get(t,n));if(r)return i;let[o,u,d,f]=a,m=+o.getValue(),h=+u.getValue(),g=+d.getValue(),_=+f.getValue();if(g===0)return E.create(p.DIV_BY_ZERO);let v=_*m*(h/g-1);return R.create(v)});return i===1&&a===1?u.get(0,0):u}},Cp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,5),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let o=a==null?R.create(0):a;o.isNull()&&(o=R.create(0));let{isError:s,errorObject:c,variants:l}=nc(e,t,n,r,i,o);if(s)return c;let[u,d,f,m,h,g]=l,_=k(u);if(typeof _!=`number`)return _;let v=k(d);if(typeof v!=`number`)return v;let y=+f.getValue(),b=+m.getValue(),x=Math.floor(+h.getValue()),S=Math.floor(+g.getValue());if(Number.isNaN(y)||Number.isNaN(b)||Number.isNaN(x)||Number.isNaN(S))return E.create(p.VALUE);if(y<0||b<0||![1,2,4].includes(x)||S<0||S>4||Math.floor(_)>=Math.floor(v))return E.create(p.NUM);let C=If(_,v,y,b,x,S);return C/=1+b/x,R.create(C)}},wp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{_values:r,numberValues:i,positive:a,negative:o}=this._getValues(e),s=Math.max(t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),c=Math.max(t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),l=V(s,c,t,E.create(p.NA)),u=V(s,c,n,E.create(p.NA)),d=l.map((t,n,s)=>{let c=u.get(n,s);if(e.isError())return e;if(c.isError())return c;if(r.isError())return r;if(!a||!o)return E.create(p.DIV_BY_ZERO);let l=+t.getValue(),d=+c.getValue();if(Number.isNaN(l)||Number.isNaN(d))return E.create(p.VALUE);if(d===-1)return E.create(p.DIV_BY_ZERO);let f=this._getResult(i,l,d);return n===0&&s===0?R.create(f,`0%`):R.create(f)});return s===1&&c===1?d.get(0,0):d}_getValues(e){let t=e,n=[],r=!1,i=!1;if(!e.isError())if(e.isNull())t=E.create(p.VALUE);else if(!e.isArray())t=E.create(p.DIV_BY_ZERO);else{let{numberValues:a,valuesHasError:o,errorObject:s,positive:c,negative:l}=this._checkValues(e);o&&(t=s),n=a,r=c,i=l}return{_values:t,numberValues:n,positive:r,negative:i}}_checkValues(e){let t=[],n=!1,r=E.create(p.VALUE),i=!1,a=!1;return e.iterator(e=>{let o=e;if(o.isError())return n=!0,r=o,!1;if(o.isNull()||o.isBoolean()||o.isString()&&o.getValue()===``)return!0;let s=+o.getValue();if(Number.isNaN(s))return!0;s>0&&(i=!0),s<0&&(a=!0),t.push(s)}),{numberValues:t,valuesHasError:n,errorObject:r,positive:i,negative:a}}_getResult(e,t,n){let r=e.length,i=[],a=[];for(let t=0;t<r;t++)e[t]>0?a.push(e[t]):e[t]<0&&i.push(e[t]);let o=this._npv(n,e,`positive`),s=this._npv(t,e,`negative`);return(-o*(1+n)**r/(s*(1+t)))**(1/(r-1))-1}_npv(e,t,n){let r=0;for(let i=1;i<=t.length;i++){let a=t[i-1];(n===`positive`&&a>0||n===`negative`&&a<0)&&(r+=a/(1+e)**i)}return r}},Tp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,variants:i}=Y(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);if(s<=0||c<1)return E.create(p.NUM);c=Number.parseInt(`${c}`,10);let l=((s+1)**(1/c)-1)*c;return R.create(l)}},Ep=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let a=r==null?R.create(0):r,o=i==null?R.create(0):i,s=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,a.isArray()?a.getRowCount():1,o.isArray()?o.getRowCount():1),c=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,a.isArray()?a.getColumnCount():1,o.isArray()?o.getColumnCount():1),l=V(s,c,e,E.create(p.NA)),u=V(s,c,t,E.create(p.NA)),d=V(s,c,n,E.create(p.NA)),f=V(s,c,a,E.create(p.NA)),m=V(s,c,o,E.create(p.NA)),h=l.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,u.get(t,n),d.get(t,n),f.get(t,n),m.get(t,n));if(r)return i;let[o,s,c,l,h]=a,g=+o.getValue(),_=+s.getValue(),v=+c.getValue(),y=+l.getValue(),b=+h.getValue();if(b=b?1:0,g===0&&_===0)return E.create(p.DIV_BY_ZERO);let x;if(g===0)x=-(v+y)/_;else{let e=_*(1+g*b)-y*g,t=v*g+_*(1+g*b);x=Math.log(e/t)/Math.log(1+g)}return Number.isNaN(x)||!Number.isFinite(x)?E.create(p.NUM):R.create(x)});return s===1&&c===1?h.get(0,0):h}},Dp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,255),d(this,`needsLocale`,!0)}calculate(e,...t){if(e.isError())return e;let{isError:n,errorObject:r,values:i}=this._getValues(t);return e.isArray()?e.map((e,t,a)=>this._handleSingleObject(e,n,r,i,t,a)):this._handleSingleObject(e,n,r,i)}_handleSingleObject(e,t,n,r,i=0,a=0){let o=e;if(o.isString()&&(o=o.convertToNumberObjectValue()),o.isError())return o;if(t)return n;let s=Bf(+e.getValue(),r);return Number.isNaN(s)||Math.abs(s)===1/0?E.create(p.DIV_BY_ZERO):i===0&&a===0?R.create(s,Pr(this.getLocale())):R.create(s)}_getValues(e){let t=[];for(let n=0;n<e.length;n++){let r=e[n];if(r.isError())return{isError:!0,errorObject:r};if(r.isArray()){let e=!1,n=E.create(p.VALUE);if(r.iterator(r=>{let i=r;if(i.isError())return e=!0,n=i,!1;if(i.isNull()||i.isBoolean()||i.isString()&&i.getValue()===``)return!0;let a=+i.getValue();if(Number.isNaN(a))return!0;t.push(a)}),e)return{isError:e,errorObject:n}}else{let e=+r.getValue();if(Number.isNaN(e))return{isError:!0,errorObject:E.create(p.VALUE)};t.push(e)}}return{isError:!1,values:t}}},Op=class extends Z{constructor(...e){super(...e),d(this,`minParams`,8),d(this,`maxParams`,9)}calculate(e,t,n,r,i,a,o,s,c){let l=c==null?R.create(0):c;l.isNull()&&(l=R.create(0));let{isError:u,errorObject:d,variants:f}=nc(e,t,n,r,i,a,o,s,l);if(u)return d;let[m,h,g,_,v,y,b,x,S]=f,C=k(m);if(typeof C!=`number`)return C;let w=k(h);if(typeof w!=`number`)return w;let T=k(g);if(typeof T!=`number`)return T;let ee=k(_);if(typeof ee!=`number`)return ee;let te=+v.getValue(),ne=+y.getValue(),re=+b.getValue(),D=Math.floor(+x.getValue()),ie=Math.floor(+S.getValue());if(Number.isNaN(te)||Number.isNaN(ne)||Number.isNaN(re)||Number.isNaN(D)||Number.isNaN(ie))return E.create(p.VALUE);if(te<0||ne<0||re<=0||![1,2,4].includes(D)||ie<0||ie>4||!this._validDate(w,ee,C,T,D))return E.create(p.NUM);let O=Vf(C,w,T,ee,te,ne,re,D,ie);return R.create(O)}_validDate(e,t,n,r,i){return this._getDateCorrectOrder(e,t,n,r)&&Gf(e,t,i)&&Kf(r,e,i)}_getDateCorrectOrder(e,t,n,r){return Math.floor(e)>Math.floor(t)&&Math.floor(t)>Math.floor(n)&&Math.floor(n)>Math.floor(r)}},kp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,8),d(this,`maxParams`,9)}calculate(e,t,n,r,i,a,o,s,c){let l=c==null?R.create(0):c;l.isNull()&&(l=R.create(0));let{isError:u,errorObject:d,variants:f}=nc(e,t,n,r,i,a,o,s,l);if(u)return d;let[m,h,g,_,v,y,b,x,S]=f,C=k(m);if(typeof C!=`number`)return C;let w=k(h);if(typeof w!=`number`)return w;let T=k(g);if(typeof T!=`number`)return T;let ee=k(_);if(typeof ee!=`number`)return ee;let te=+v.getValue(),ne=+y.getValue(),re=+b.getValue(),D=Math.floor(+x.getValue()),ie=Math.floor(+S.getValue());return Number.isNaN(te)||Number.isNaN(ne)||Number.isNaN(re)||Number.isNaN(D)||Number.isNaN(ie)?E.create(p.VALUE):te<0||ne<=0||re<=0||![1,2,4].includes(D)||ie<0||ie>4||!this._validDate(w,ee,C,T,D)?E.create(p.NUM):this._getResult(C,w,T,ee,te,ne,re,D,ie)}_validDate(e,t,n,r,i){return this._getDateCorrectOrder(e,t,n,r)&&Gf(e,t,i)&&Kf(r,e,i)}_getDateCorrectOrder(e,t,n,r){return Math.floor(e)>Math.floor(t)&&Math.floor(t)>Math.floor(n)&&Math.floor(n)>Math.floor(r)}_getResult(e,t,n,r,i,a,o,s,c){let{days:l}=ge(e,t,c),u=(i*l*100-(a-100))/((a-100)*.25*(1+2*l)+l*100);function d(l){return a-Vf(e,t,n,r,i,l,o,s,c)}let f=Yf(u,e=>d(e));return typeof f==`number`?R.create(f):f}},Ap=class extends Z{constructor(...e){super(...e),d(this,`minParams`,7),d(this,`maxParams`,8)}calculate(e,t,n,r,i,a,o,s){let c=s==null?R.create(0):s;c.isNull()&&(c=R.create(0));let{isError:l,errorObject:u,variants:d}=nc(e,t,n,r,i,a,o,c);if(l)return u;let[f,m,h,g,_,v,y,b]=d,x=k(f);if(typeof x!=`number`)return x;let S=k(m);if(typeof S!=`number`)return S;let C=k(h);if(typeof C!=`number`)return C;let w=+g.getValue(),T=+_.getValue(),ee=+v.getValue(),te=Math.floor(+y.getValue()),ne=Math.floor(+b.getValue());if(Number.isNaN(w)||Number.isNaN(T)||Number.isNaN(ee)||Number.isNaN(te)||Number.isNaN(ne))return E.create(p.VALUE);if(w<0||T<0||ee<=0||![1,2,4].includes(te)||ne<0||ne>4||!this._validDate(S,x,C,te))return E.create(p.NUM);let re=this._getResult(x,S,C,w,T,ee,te,ne);return R.create(re)}_validDate(e,t,n,r){return Math.floor(e)>Math.floor(t)&&Math.floor(t)>Math.floor(n)&&Kf(n,e,r)}_getResult(e,t,n,r,i,a,o,s){let c=this._getCoupDate(t,n,o),l=this._getFrac(n,e,c,o,s),u=this._getFrac(n,t,c,o,s),d=this._getFrac(e,t,c,o,s);return(a*o+100*r*(u-l*(1+i*d/o)))/(i*d+o)}_getCoupDate(e,t,n){let r=O(e),i=O(t);for(i.setUTCFullYear(r.getUTCFullYear()),i>r&&i.setUTCFullYear(i.getUTCFullYear()-1);i<r;)i.setUTCMonth(i.getUTCMonth()+12/n);return D(i)}_getFrac(e,t,n,r,i){let a=O(e),o=O(t),s=O(n);for(s.setUTCFullYear(a.getUTCFullYear()),s<a&&s.setUTCFullYear(s.getUTCFullYear()+1);s>a;)s.setUTCMonth(s.getUTCMonth()-12/r);let c=D(s);s.setUTCMonth(s.getUTCMonth()+12/r);let l=D(s);if(l>=t){let{days:n}=ge(e,t,i);return n/Mf(c,l,r,i)}let{days:u}=ge(e,l,i),d=u/Mf(c,l,r,i),f=O(l),p=O(l);for(p.setUTCMonth(p.getUTCMonth()+12/r);p<o;)f.setUTCMonth(f.getUTCMonth()+12/r),p.setUTCMonth(p.getUTCMonth()+12/r),d+=1;c=D(f),l=D(p);let{days:m}=ge(c,t,i),h=Mf(c,l,r,i);return d+=m/h,d}},jp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,8),d(this,`maxParams`,9)}calculate(e,t,n,r,i,a,o,s){let c=s==null?R.create(0):s;c.isNull()&&(c=R.create(0));let{isError:l,errorObject:u,variants:d}=nc(e,t,n,r,i,a,o,c);if(l)return u;let[f,m,h,g,_,v,y,b]=d,x=k(f);if(typeof x!=`number`)return x;let S=k(m);if(typeof S!=`number`)return S;let C=k(h);if(typeof C!=`number`)return C;let w=+g.getValue(),T=+_.getValue(),ee=+v.getValue(),te=Math.floor(+y.getValue()),ne=Math.floor(+b.getValue());if(Number.isNaN(w)||Number.isNaN(T)||Number.isNaN(ee)||Number.isNaN(te)||Number.isNaN(ne))return E.create(p.VALUE);if(w<0||T<=0||ee<=0||![1,2,4].includes(te)||ne<0||ne>4||!this._validDate(S,x,C,te))return E.create(p.NUM);let re=this._getResult(x,S,C,w,T,ee,te,ne);return R.create(re)}_validDate(e,t,n,r){return Math.floor(e)>Math.floor(t)&&Math.floor(t)>Math.floor(n)&&Kf(n,e,r)}_getResult(e,t,n,r,i,a,o,s){let c=this._getCoupDate(t,n,o),l=this._getFrac(n,e,c,o,s),u=this._getFrac(n,t,c,o,s),d=this._getFrac(e,t,c,o,s);return(o*(a-i)+100*r*(u-l))/(d*i+100*r*l*d/o)}_getCoupDate(e,t,n){let r=O(e),i=O(t);for(i.setUTCFullYear(r.getUTCFullYear()),i>r&&i.setUTCFullYear(i.getUTCFullYear()-1);i<r;)i.setUTCMonth(i.getUTCMonth()+12/n);return D(i)}_getFrac(e,t,n,r,i){let a=O(e),o=O(t),s=O(n);for(s.setUTCFullYear(a.getUTCFullYear()),s<a&&s.setUTCFullYear(s.getUTCFullYear()+1);s>a;)s.setUTCMonth(s.getUTCMonth()-12/r);let c=D(s);s.setUTCMonth(s.getUTCMonth()+12/r);let l=D(s);if(l>=t){let{days:n}=ge(e,t,i);return n/Mf(c,l,r,i)}let{days:u}=ge(e,l,i),d=u/Mf(c,l,r,i),f=O(l),p=O(l);for(p.setUTCMonth(p.getUTCMonth()+12/r);p<o;)f.setUTCMonth(f.getUTCMonth()+12/r),p.setUTCMonth(p.getUTCMonth()+12/r),d+=1;c=D(f),l=D(p);let{days:m}=ge(c,t,i),h=Mf(c,l,r,i);return d+=m/h,d}},Mp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,o.get(t,n),s.get(t,n));if(r)return i;let[c,l,u]=a,d=+c.getValue(),f=+l.getValue(),m=+u.getValue();if(d<=-1)return E.create(p.NUM);let h=(Math.log(m)-Math.log(f))/Math.log(1+d);return Number.isNaN(h)||!Number.isFinite(h)?E.create(p.NUM):R.create(h)});return r===1&&i===1?c.get(0,0):c}},Np=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,5),d(this,`needsLocale`,!0)}calculate(e,t,n,r,i){let a=r==null?R.create(0):r,o=i==null?R.create(0):i,s=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,a.isArray()?a.getRowCount():1,o.isArray()?o.getRowCount():1),c=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,a.isArray()?a.getColumnCount():1,o.isArray()?o.getColumnCount():1),l=V(s,c,e,E.create(p.NA)),u=V(s,c,t,E.create(p.NA)),d=V(s,c,n,E.create(p.NA)),f=V(s,c,a,E.create(p.NA)),m=V(s,c,o,E.create(p.NA)),h=l.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,u.get(t,n),d.get(t,n),f.get(t,n),m.get(t,n));if(r)return i;let[o,s,c,l,h]=a,g=+o.getValue(),_=+s.getValue(),v=+c.getValue(),y=+l.getValue(),b=+h.getValue();if(g<=-1)return E.create(p.NUM);let x=Lf(g,_,v,y,b?1:0);return Number.isNaN(x)||!Number.isFinite(x)?E.create(p.NUM):t===0&&n===0?R.create(x,Pr(this.getLocale())):R.create(x)});return s===1&&c===1?h.get(0,0):h}},Pp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,6),d(this,`needsLocale`,!0)}calculate(e,t,n,r,i,a){let o=i==null?R.create(0):i,s=a==null?R.create(0):a,c=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1,o.isArray()?o.getRowCount():1,s.isArray()?s.getRowCount():1),l=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1,o.isArray()?o.getColumnCount():1,s.isArray()?s.getColumnCount():1),u=V(c,l,e,E.create(p.NA)),d=V(c,l,t,E.create(p.NA)),f=V(c,l,n,E.create(p.NA)),m=V(c,l,r,E.create(p.NA)),h=V(c,l,o,E.create(p.NA)),g=V(c,l,s,E.create(p.NA)),_=u.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,d.get(t,n),f.get(t,n),m.get(t,n),h.get(t,n),g.get(t,n));if(r)return i;let[o,s,c,l,u,_]=a,v=+o.getValue(),y=+s.getValue(),b=+c.getValue(),x=+l.getValue(),S=+u.getValue(),C=+_.getValue();if(y<1||Math.floor(y)>Math.ceil(b)||y-b>=1)return E.create(p.NUM);let w=Lf(v,b,x,S,C?1:0)-zf(v,y,b,x,S,C?1:0);return Number.isNaN(w)||!Number.isFinite(w)?E.create(p.NUM):t===0&&n===0?R.create(w,Pr(this.getLocale())):R.create(w)});return c===1&&l===1?_.get(0,0):_}},Fp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,6),d(this,`maxParams`,7)}calculate(e,t,n,r,i,a,o){let s=o==null?R.create(0):o;s.isNull()&&(s=R.create(0));let{isError:c,errorObject:l,variants:u}=nc(e,t,n,r,i,a,s);if(c)return l;let[d,f,m,h,g,_,v]=u,y=k(d);if(typeof y!=`number`)return y;let b=k(f);if(typeof b!=`number`)return b;let x=+m.getValue(),S=+h.getValue(),C=+g.getValue(),w=Math.floor(+_.getValue()),T=Math.floor(+v.getValue());if(Number.isNaN(x)||Number.isNaN(S)||Number.isNaN(C)||Number.isNaN(w)||Number.isNaN(T))return E.create(p.VALUE);if(x<0||S<0||C<=0||![1,2,4].includes(w)||T<0||T>4||y>=b||!Kf(y,b,w))return E.create(p.NUM);let ee=Zf(y,b,x,S,C,w,T);return R.create(ee)}},Ip=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let a=i==null?R.create(0):i;a.isNull()&&(a=R.create(0));let{isError:o,errorObject:s,variants:c}=nc(e,t,n,r,a);if(o)return s;let[l,u,d,f,m]=c,h=k(l);if(typeof h!=`number`)return h;let g=k(u);if(typeof g!=`number`)return g;let _=+d.getValue(),v=+f.getValue(),y=Math.floor(+m.getValue());if(Number.isNaN(_)||Number.isNaN(v)||Number.isNaN(y))return E.create(p.VALUE);if(_<=0||v<=0||y<0||y>4||h>=g)return E.create(p.NUM);let{days:b,yearDays:x}=ge(h,g,y),S=v-_*v*b/x;return R.create(S)}},Lp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,5),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let o=a==null?R.create(0):a;o.isNull()&&(o=R.create(0));let{isError:s,errorObject:c,variants:l}=nc(e,t,n,r,i,o);if(s)return c;let[u,d,f,m,h,g]=l,_=k(u);if(typeof _!=`number`)return _;let v=k(d);if(typeof v!=`number`)return v;let y=k(f);if(typeof y!=`number`)return y;let b=+m.getValue(),x=+h.getValue(),S=Math.floor(+g.getValue());if(Number.isNaN(b)||Number.isNaN(x)||Number.isNaN(S))return E.create(p.VALUE);let C=this._getDateCorrectOrder(v,_,y);if(b<0||x<0||S<0||S>4||!C)return E.create(p.NUM);let w=Ee(_,S),{days:T}=ge(_,v,S),{days:ee}=ge(y,v,S),{days:te}=ge(y,_,S),ne=(100+ee/w*b*100)/(1+T/w*x)-te/w*b*100;return R.create(ne)}_getDateCorrectOrder(e,t,n){return Math.floor(e)>Math.floor(t)&&Math.floor(t)>Math.floor(n)}},Rp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,5),d(this,`needsLocale`,!0)}calculate(e,t,n,r,i){let a=r==null?R.create(0):r,o=i==null?R.create(0):i,s=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,a.isArray()?a.getRowCount():1,o.isArray()?o.getRowCount():1),c=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,a.isArray()?a.getColumnCount():1,o.isArray()?o.getColumnCount():1),l=V(s,c,e,E.create(p.NA)),u=V(s,c,t,E.create(p.NA)),d=V(s,c,n,E.create(p.NA)),f=V(s,c,a,E.create(p.NA)),m=V(s,c,o,E.create(p.NA)),h=l.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,u.get(t,n),d.get(t,n),f.get(t,n),m.get(t,n));if(r)return i;let[o,s,c,l,h]=a,g=+o.getValue(),_=+s.getValue(),v=+c.getValue(),y=+l.getValue(),b=+h.getValue();b=b?1:0;let x=g===0?-v*_-y:((1-(1+g)**_)/g*v*(1+g*b)-y)/(1+g)**_;return Number.isNaN(x)||!Number.isFinite(x)?E.create(p.NUM):t===0&&n===0?R.create(x,Pr(this.getLocale())):R.create(x)});return s===1&&c===1?h.get(0,0):h}},zp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let o=r==null?R.create(0):r,s=i==null?R.create(0):i,c=a==null?R.create(.1):a,l=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,o.isArray()?o.getRowCount():1,s.isArray()?s.getRowCount():1,c.isArray()?c.getRowCount():1),u=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,o.isArray()?o.getColumnCount():1,s.isArray()?s.getColumnCount():1,c.isArray()?c.getColumnCount():1),d=V(l,u,e,E.create(p.NA)),f=V(l,u,t,E.create(p.NA)),m=V(l,u,n,E.create(p.NA)),h=V(l,u,o,E.create(p.NA)),g=V(l,u,s,E.create(p.NA)),_=V(l,u,c,E.create(p.NA)),v=d.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,f.get(t,n),m.get(t,n),h.get(t,n),g.get(t,n),_.get(t,n));if(r)return i;let[o,s,c,l,u,d]=a,v=+o.getValue(),y=+s.getValue(),b=+c.getValue(),x=+l.getValue(),S=+u.getValue(),C=+d.getValue();return S=S?1:0,v<=0||y>=0&&b>=0&&x>=0||y<=0&&b<=0&&x<=0?E.create(p.NUM):this._getResult(v,y,b,x,S,C,t,n)});return l===1&&u===1?v.get(0,0):v}_getResult(e,t,n,r,i,a,o,s){let c=1e-10;if(Math.abs(t)<1e-14)return this._computeSimpleGrowthRate(e,n,r,o,s);let l=a,u=1/0;for(let a=0;a<100;a++){if(l<=-1)return E.create(p.NUM);let{value:a,derivative:o}=this._evaluateRateFunction(l,e,t,n,r,i,c),s=Math.abs(a);if(s<c||Math.abs(o)<1e-14)break;let d=this._getAdaptiveDampedStep(a,o,s,u);l-=d,u=s}return!Number.isFinite(l)||l<=-1?E.create(p.NUM):R.create(l,o===0&&s===0?`0%`:void 0)}_computeSimpleGrowthRate(e,t,n,r,i){if(Math.sign(t)===Math.sign(n))return E.create(p.NUM);let a=(n/-t)**(1/e)-1;return R.create(a,r===0&&i===0?`0%`:void 0)}_evaluateRateFunction(e,t,n,r,i,a,o){let s,c,l;if(Math.abs(e)<o)s=r*(1+t*e)+n*(1+e*a)*t+i,c=r*t+n*a*t;else{l=(1+e)**t,s=r*l+n*(1/e+a)*(l-1)+i;let o=t*(1+e)**(t-1);c=r*o+n*(1/e+a)*o+n*(-1/(e*e))*(l-1)}return{value:s,derivative:c}}_getAdaptiveDampedStep(e,t,n,r){let i=e/t;return n>.001||n>=r*.9?Math.max(Math.min(i,5),-5):Math.max(Math.min(i,.5),-.5)}},Bp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let a=i==null?R.create(0):i;a.isNull()&&(a=R.create(0));let{isError:o,errorObject:s,variants:c}=nc(e,t,n,r,a);if(o)return s;let[l,u,d,f,m]=c,h=k(l);if(typeof h!=`number`)return h;let g=k(u);if(typeof g!=`number`)return g;let _=+d.getValue(),v=+f.getValue(),y=Math.floor(+m.getValue());if(Number.isNaN(_)||Number.isNaN(v)||Number.isNaN(y))return E.create(p.VALUE);if(_<=0||v<=0||y<0||y>4||h>=g)return E.create(p.NUM);let{days:b,yearDays:x}=ge(h,g,y),S=_/(1-v*b/x);return S<0?E.create(p.NUM):R.create(S)}},Vp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,6)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.map((e,t,n)=>{let{isError:r,errorObject:i,variants:a}=X(e,o.get(t,n),s.get(t,n));if(r)return i;let[c,l,u]=a,d=+c.getValue(),f=+l.getValue(),m=+u.getValue();if(d<=0)return E.create(p.NUM);if(f===0&&m===0)return R.create(0);let h=(m/f)**(1/d)-1;return Number.isNaN(h)||!Number.isFinite(h)||m/f<0?E.create(p.NUM):R.create(h)});return r===1&&i===1?c.get(0,0):c}},Hp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3),d(this,`needsLocale`,!0)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.map((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);if(r.isError())return r;if(i.isError())return i;let a=+e.getValue(),c=+r.getValue(),l=+i.getValue();if(Number.isNaN(a)||Number.isNaN(c)||Number.isNaN(l))return E.create(p.VALUE);if(l===0)return E.create(p.DIV_BY_ZERO);let u=(a-c)/l;return t===0&&n===0?R.create(u,Pr(this.getLocale())):R.create(u)});return r===1&&i===1?c.get(0,0):c}},Up=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4),d(this,`needsLocale`,!0)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.map((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);if(r.isError())return r;if(i.isError())return i;if(a.isError())return a;let o=+e.getValue(),u=+r.getValue(),d=+i.getValue(),f=+a.getValue();if(Number.isNaN(o)||Number.isNaN(u)||Number.isNaN(d)||Number.isNaN(f))return E.create(p.VALUE);if(u<0||d<=0||f>d)return E.create(p.NUM);let m=(o-u)*(d-f+1)*2/(d*(d+1));return t===0&&n===0?R.create(m,Pr(this.getLocale())):R.create(m)});return i===1&&a===1?u.get(0,0):u}},Wp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,variants:a}=nc(e,t,n);if(r)return i;let[o,s,c]=a,l=k(o);if(typeof l!=`number`)return l;let u=k(s);if(typeof u!=`number`)return u;let d=+c.getValue();if(Number.isNaN(d))return E.create(p.VALUE);if(d<=0||l>=u)return E.create(p.NUM);let f=Math.floor(u)-Math.floor(l);if(f>Te(O(l).getUTCFullYear()))return E.create(p.NUM);let m=365*d/(360-d*f);if(f>182){let e=100*(1-d*f/360),t=f/365;if(m=(-t+Math.sqrt(t*t-(t*2-1)*(1-100/e)))/(t-.5),Number.isNaN(m))return E.create(p.NUM)}return m<0?E.create(p.NUM):R.create(m)}},Gp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3),d(this,`needsLocale`,!0)}calculate(e,t,n){let{isError:r,errorObject:i,variants:a}=nc(e,t,n);if(r)return i;let[o,s,c]=a,l=k(o);if(typeof l!=`number`)return l;let u=k(s);if(typeof u!=`number`)return u;let d=+c.getValue();if(Number.isNaN(d))return E.create(p.VALUE);if(d<=0||l>=u)return E.create(p.NUM);let f=Math.floor(u)-Math.floor(l);if(f>Te(O(l).getUTCFullYear()))return E.create(p.NUM);let m=100*(1-d*f/360);return m<0?E.create(p.NUM):R.create(m,Pr(this.getLocale()))}},Kp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,variants:a}=nc(e,t,n);if(r)return i;let[o,s,c]=a,l=k(o);if(typeof l!=`number`)return l;let u=k(s);if(typeof u!=`number`)return u;let d=+c.getValue();if(Number.isNaN(d))return E.create(p.VALUE);if(d<=0||l>=u)return E.create(p.NUM);let f=Math.floor(u)-Math.floor(l);if(f>Te(O(l).getUTCFullYear()))return E.create(p.NUM);let m=(100-d)/d*360/f;return R.create(m)}},qp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,5),d(this,`maxParams`,7),d(this,`needsLocale`,!0)}calculate(e,t,n,r,i,a,o){let s=a==null?R.create(2):a;s.isNull()&&(s=R.create(2));let c=o==null?L.create(!1):o;c.isNull()&&(c=L.create(!1));let l=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1,i.isArray()?i.getRowCount():1,s.isArray()?s.getRowCount():1,c.isArray()?c.getRowCount():1),u=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1,i.isArray()?i.getColumnCount():1,s.isArray()?s.getColumnCount():1,c.isArray()?c.getColumnCount():1),d=V(l,u,e,E.create(p.NA)),f=V(l,u,t,E.create(p.NA)),m=V(l,u,n,E.create(p.NA)),h=V(l,u,r,E.create(p.NA)),g=V(l,u,i,E.create(p.NA)),_=V(l,u,s,E.create(p.NA)),v=V(l,u,c,E.create(p.NA));return this._getResultArray(d,f,m,h,g,_,v,l,u)}_getResultArray(e,t,n,r,i,a,o,s,c){let l=e.map((e,s,c)=>{let{isError:l,errorObject:u,variants:d}=X(e,t.get(s,c),n.get(s,c),r.get(s,c),i.get(s,c),a.get(s,c),o.get(s,c));if(l)return u;let[f,m,h,g,_,v,y]=d,b=+f.getValue(),x=+m.getValue(),S=+h.getValue(),C=+g.getValue(),w=+_.getValue(),T=+v.getValue(),ee=+y.getValue();if(b<0||x<0||S<0||C<0||w<0||w>S||C>w||T<0)return E.create(p.NUM);if(S===0&&C===0&&w===0)return E.create(p.DIV_BY_ZERO);let te=this._getResult(b,x,S,C,w,T,ee);return s===0&&c===0?R.create(te,Pr(this.getLocale())):R.create(te)});return s===1&&c===1?l.get(0,0):l}_getResult(e,t,n,r,i,a,o){let s=Math.floor(r),c=Math.ceil(i),l=0;if(e<t){if(r>=1||o)return l;let n=Math.abs(e-t);return l=n*(i-r)>n?n:n*(i-r),-l}if(o)for(let o=s+1;o<=c;o++){let u=Qf(e,t,n,o,a);o===s+1?u*=Math.min(i,s+1)-r:o===c&&(u*=i+1-c),l+=u}else{let o=e-this._getVdb(e,t,n,n,r,a);l=this._getVdb(o,t,n,n-r,i-r,a)}return l}_getVdb(e,t,n,r,i,a){let o=Math.ceil(i),s=0,c=e-t,l=0,u=0,d=!1;for(let f=1;f<=o;f++){if(d)u=l;else{let i=Qf(e,t,n,f,a);l=c/(r-(f-1)),l>i?(u=l,d=!0):(u=i,c-=i)}f===o&&(u*=i+1-o),s+=u}return s}},Jp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){if(e.isNull()||t.isNull())return E.create(p.NA);let{isError:r,errorObejct:i,_values:a,_dates:o}=this._checkErrors(e,t);if(r)return i;let s=n==null?R.create(.1):n;s.isNull()&&(s=R.create(.1));let{isError:c,errorObject:l,variants:u}=Y(s);if(c)return l;let[d]=u,f=+d.getValue();if(Number.isNaN(f))return E.create(p.VALUE);let{positive:m,negative:h}=this._checkValues(a);if(!m||!h||(a==null?void 0:a.length)!==(o==null?void 0:o.length)||f<0)return E.create(p.NUM);let g=Yf(f,e=>this._iterF(a,o,e));return typeof g==`number`?R.create(g):g}_checkErrors(e,t){if(e.isError())return{isError:!0,errorObejct:e};if(t.isError())return{isError:!0,errorObejct:t};let{isError:n,errorObejct:r,_values:i}=this._checkErrorValues(e);if(n)return{isError:n,errorObejct:r};let{isError:a,errorObejct:o,_dates:s}=this._checkErrorDates(t);return a?{isError:a,errorObejct:o}:{isError:!1,_values:i,_dates:s}}_checkErrorValues(e){let n=[];if(e.isArray()){let t=!1,r=E.create(p.VALUE);return e.iterator(e=>{let i=e;if(i.isError())return t=!0,r=i,!1;if(i.isBoolean())return t=!0,r=E.create(p.VALUE),!1;let a=+i.getValue();if(Number.isNaN(a))return t=!0,r=E.create(p.VALUE),!1;n.push(a)}),t?{isError:t,errorObejct:r}:n.length<=1?{isError:!0,errorObejct:E.create(p.NA)}:{isError:t,_values:n}}else{let n=e.getValue();return e.isBoolean()||e.isString()&&!(0,t.isRealNum)(n)?{isError:!0,errorObejct:E.create(p.VALUE)}:{isError:!0,errorObejct:E.create(p.NA)}}}_checkErrorDates(e){let n=[];if(e.isArray()){let t=!1,r=E.create(p.VALUE);return e.iterator(e=>{if(e!=null&&e.isError())return t=!0,r=e,!1;if(e!=null&&e.isBoolean())return t=!0,r=E.create(p.VALUE),!1;let i=+e.getValue();if(Number.isNaN(i))return t=!0,r=E.create(p.VALUE),!1;if(i<0)return t=!0,r=E.create(p.NUM),!1;n.push(Math.floor(i))}),t?{isError:t,errorObejct:r}:n.length<=1?{isError:!0,errorObejct:E.create(p.NA)}:{isError:t,_dates:n}}else{let n=e.getValue();return e.isBoolean()||e.isString()&&!(0,t.isRealNum)(n)?{isError:!0,errorObejct:E.create(p.VALUE)}:+n<0?{isError:!0,errorObejct:E.create(p.NUM)}:{isError:!0,errorObejct:E.create(p.NA)}}}_checkValues(e){let t=!1,n=!1;for(let r=0;r<e.length;r++)e[r]>0&&(t=!0),e[r]<0&&(n=!0);return{positive:t,negative:n}}_iterF(e,t,n){return e.reduce((e,r,i)=>e+r/(1+n)**((t[i]-t[0])/365),0)}},Yp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){if(e.isNull()||t.isNull()||n.isNull())return E.create(p.NA);let{isError:r,errorObject:i,variants:a}=Y(e);if(r)return i;let[o]=a,s=+o.getValue();if(Number.isNaN(s))return E.create(p.VALUE);let{isError:c,errorObejct:l,_values:u,_dates:d}=this._checkErrors(t,n);if(c)return l;if(u=u,d=d,s<0||u.length!==d.length)return E.create(p.NUM);let f=0,m=d[0];for(let e=0;e<d.length;e++){let t=d[e],n=u[e];f+=n/(1+s)**((t-m)/365)}return R.create(f)}_checkErrors(e,t){if(e.isError())return{isError:!0,errorObejct:e};if(t.isError())return{isError:!0,errorObejct:t};let{isError:n,errorObejct:r,_values:i}=this._checkErrorValues(e);if(n)return{isError:n,errorObejct:r};let{isError:a,errorObejct:o,_dates:s}=this._checkErrorDates(t);return a?{isError:a,errorObejct:o}:{isError:!1,_values:i,_dates:s}}_checkErrorValues(e){let t=[];if(e.isArray()){let n=!1,r=E.create(p.VALUE);return e.iterator(e=>{let i=e;if(i.isError())return n=!0,r=i,!1;if(i.isNull()||i.isBoolean()||i.isString()&&i.getValue()===``)return n=!0,r=E.create(p.VALUE),!1;let a=+i.getValue();if(Number.isNaN(a))return n=!0,r=E.create(p.VALUE),!1;t.push(a)}),n?{isError:n,errorObejct:r}:{isError:n,_values:t}}else{if(e.isError())return{isError:!0,errorObejct:e};if(e.isNull()||e.isBoolean())return{isError:!0,errorObejct:E.create(p.VALUE)};let t=+e.getValue();return Number.isNaN(t)?{isError:!0,errorObejct:E.create(p.VALUE)}:{isError:!1,_values:[t]}}}_checkErrorDates(e){let t=[];if(e.isArray()){let n=!1,r=E.create(p.VALUE);return e.iterator(e=>{let i=e;if(i.isError())return n=!0,r=i,!1;if(i.isNull()||i.isBoolean())return n=!0,r=E.create(p.VALUE),!1;let a=+i.getValue();if(Number.isNaN(a))return n=!0,r=E.create(p.VALUE),!1;if(a<0)return n=!0,r=E.create(p.NUM),!1;t.push(Math.floor(a))}),n?{isError:n,errorObejct:r}:{isError:n,_dates:t}}else{if(e.isError())return{isError:!0,errorObejct:e};if(e.isNull()||e.isBoolean())return{isError:!0,errorObejct:E.create(p.VALUE)};let t=+e.getValue();return Number.isNaN(t)?{isError:!0,errorObejct:E.create(p.VALUE)}:+t<0?{isError:!0,errorObejct:E.create(p.NUM)}:{isError:!1,_dates:[Math.floor(t)]}}}},Xp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,6),d(this,`maxParams`,7)}calculate(e,t,n,r,i,a,o){let s=o==null?R.create(0):o;s.isNull()&&(s=R.create(0));let{isError:c,errorObject:l,variants:u}=nc(e,t,n,r,i,a,s);if(c)return l;let[d,f,m,h,g,_,v]=u,y=k(d);if(typeof y!=`number`)return y;let b=k(f);if(typeof b!=`number`)return b;let x=+m.getValue(),S=+h.getValue(),C=+g.getValue(),w=Math.floor(+_.getValue()),T=Math.floor(+v.getValue());if(Number.isNaN(x)||Number.isNaN(S)||Number.isNaN(C)||Number.isNaN(w)||Number.isNaN(T))return E.create(p.VALUE);if(x<0||S<=0||C<=0||![1,2,4].includes(w)||T<0||T>4||y>=b||!Kf(y,b,w))return E.create(p.NUM);let ee=this._getResult(y,b,x,S,C,w,T);return R.create(ee)}_getResult(e,t,n,r,i,a,o){if(Pf(e,t,a)>1){let s=n||.01,c=Zf(e,t,n,s,i,a,o),l=c-r;for(let u=0;u<100&&Math.abs(l)>1e-7;u++)c=Zf(e,t,n,1.01*s,i,a,o),s+=-l/(c-r-l)*s*.01,l=Zf(e,t,n,s,i,a,o)-r;return s}let s=jf(e,t,a,o),c=Mf(e,t,a,o),{days:l}=ge(e,t,o),u=r/100+s/c*n/a;return(i/100+n/a-u)/u*a*c/l}},Zp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let a=i==null?R.create(0):i;a.isNull()&&(a=R.create(0));let{isError:o,errorObject:s,variants:c}=nc(e,t,n,r,a);if(o)return s;let[l,u,d,f,m]=c,h=k(l);if(typeof h!=`number`)return h;let g=k(u);if(typeof g!=`number`)return g;let _=+d.getValue(),v=+f.getValue(),y=Math.floor(+m.getValue());if(Number.isNaN(_)||Number.isNaN(v)||Number.isNaN(y))return E.create(p.VALUE);if(_<=0||v<=0||y<0||y>4||h>=g)return E.create(p.NUM);let{days:b,yearDays:x}=ge(h,g,y),S=(v/_-1)/(b/x);return R.create(S)}},Qp=class extends Z{constructor(...e){super(...e),d(this,`minParams`,5),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let o=a==null?R.create(0):a;o.isNull()&&(o=R.create(0));let{isError:s,errorObject:c,variants:l}=nc(e,t,n,r,i,o);if(s)return c;let[u,d,f,m,h,g]=l,_=k(u);if(typeof _!=`number`)return _;let v=k(d);if(typeof v!=`number`)return v;let y=k(f);if(typeof y!=`number`)return y;let b=+m.getValue(),x=+h.getValue(),S=Math.floor(+g.getValue());if(Number.isNaN(b)||Number.isNaN(x)||Number.isNaN(S))return E.create(p.VALUE);let C=this._getDateCorrectOrder(v,_,y);if(b<0||x<=0||S<0||S>4||!C)return E.create(p.NUM);let w=Ee(_,S),{days:T}=ge(_,v,S),{days:ee}=ge(y,v,S),{days:te}=ge(y,_,S),ne=((1+ee/w*b)/(x/100+te/w*b)-1)/(T/w);return R.create(ne)}_getDateCorrectOrder(e,t,n){return Math.floor(e)>Math.floor(t)&&Math.floor(t)>Math.floor(n)}};let $p=[[$f,W.ACCRINT],[ep,W.ACCRINTM],[tp,W.AMORLINC],[np,W.COUPDAYBS],[rp,W.COUPDAYS],[ip,W.COUPDAYSNC],[ap,W.COUPNCD],[op,W.COUPNUM],[sp,W.COUPPCD],[cp,W.CUMIPMT],[lp,W.CUMPRINC],[up,W.DB],[dp,W.DDB],[fp,W.DISC],[pp,W.DOLLARDE],[mp,W.DOLLARFR],[hp,W.DURATION],[gp,W.EFFECT],[_p,W.FV],[vp,W.FVSCHEDULE],[yp,W.INTRATE],[bp,W.IPMT],[xp,W.IRR],[Sp,W.ISPMT],[Cp,W.MDURATION],[wp,W.MIRR],[Tp,W.NOMINAL],[Ep,W.NPER],[Dp,W.NPV],[Op,W.ODDFPRICE],[kp,W.ODDFYIELD],[Ap,W.ODDLPRICE],[jp,W.ODDLYIELD],[Mp,W.PDURATION],[Np,W.PMT],[Pp,W.PPMT],[Fp,W.PRICE],[Ip,W.PRICEDISC],[Lp,W.PRICEMAT],[Rp,W.PV],[zp,W.RATE],[Bp,W.RECEIVED],[Vp,W.RRI],[Hp,W.SLN],[Up,W.SYD],[Wp,W.TBILLEQ],[Gp,W.TBILLPRICE],[Kp,W.TBILLYIELD],[qp,W.VDB],[Jp,W.XIRR],[Yp,W.XNPV],[Xp,W.YIELD],[Zp,W.YIELDDISC],[Qp,W.YIELDMAT]];var em=class extends Z{constructor(...e){super(...e),d(this,`needsReferenceObject`,!0),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e;if(n.isError())return n;if(n.isReferenceObject()&&(n=n.toArrayValueObject()),n.isArray()){let e=n.getRowCount(),r=n.getColumnCount();if(e===1&&r===1){let e=n.get(0,0);return this._handleSingleObject(e,t)}return n.map(e=>e.isError()?e:this._handleSingleObject(e,t,!0))}return this._handleSingleObject(n,t)}_handleSingleObject(e,n,r=!1){let i=n;if(i.isError())return i;if(!i.isReferenceObject())return E.create(p.NA);let{columnData:a,defaultColumnWidth:o}=i.getCurrentActiveSheetData();i=i.toArrayValueObject();let s=i.getCurrentRow(),c=i.getCurrentColumn();i=i.getFirstCell();let l=`${e.getValue()}`,u;switch(l.toLocaleLowerCase()){case`address`:return z.create(`$${t.Tools.chatAtABC(c)}$${s+1}`);case`col`:return R.create(c+1);case`color`:return R.create(0);case`contents`:return i;case`filename`:return E.create(p.VALUE);case`format`:return z.create(`G`);case`parentheses`:return R.create(0);case`prefix`:return z.create(``);case`protect`:return R.create(1);case`row`:return R.create(s+1);case`type`:return u=`v`,i.isNull()&&(u=`b`),i.isString()&&(u=`l`),z.create(u);case`width`:return this._getWidthResult(a,o,c,r);default:return E.create(p.VALUE)}}_getWidthResult(e,t,n,r){var i;let a=(i=e[n])==null?void 0:i.w;if(!a&&a!==0&&(a=t),r)return R.create(a);let o=[[a,a===t]];return B.createByArray(o)}},tm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1),d(this,`_errorTypeValueMap`,new Map([[p.NULL,1],[p.DIV_BY_ZERO,2],[p.VALUE,3],[p.REF,4],[p.NAME,5],[p.NUM,6],[p.NA,7],[p.CONNECT,8],[p.CALC,14]]))}calculate(e){return e.isArray()?e.mapValue(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e.getValue(),n=this._errorTypeValueMap.get(t);return n?R.create(n):E.create(p.NA)}},nm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let{isError:a,errorObject:o,variants:s}=tc(e,t,n,r==null?L.create(!0):r,i==null?L.create(!0):i);if(a)return o;let[c,l,u,d,f]=s;if(d.isString()||f.isString())return E.create(p.VALUE);if(l.compare(u,`>`).getValue()===!0)return E.create(p.NUM);let m=+d.getValue(),h=+f.getValue(),g=m?`>=`:`>`,_=h?`<=`:`<`;return c.compare(l,g).getValue()===!1||c.compare(u,_).getValue()===!1?L.create(!1):L.create(!0)}},rm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isNull()?L.create(!0):e.isArray()?e.mapValue(e=>e.isNull()?L.create(!0):L.create(!1)):L.create(!1)}},im=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;if(t.isArray()){let e=t.getRowCount(),n=t.getColumnCount();if(e>1||n>1)return E.create(p.VALUE);t=t.get(0,0)}return t.isError()?t:t.isNumber()&&t.getPattern()!==``?L.create(le(t.getPattern())):t.isString()&&(se(`${t.getValue()}`)||ce(`${t.getValue()}`))?L.create(!0):L.create(!1)}},am=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let n=e;if(n.isArray()){let e=n.getRowCount(),t=n.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);n=n.get(0,0)}if(n.isError())return n;if(n.isNull()||n.isBoolean()||n.isNumber())return L.create(!1);let r=`${n.getValue()}`;if(r.length>254)return L.create(!1);let i=t.Tools.topLevelDomainCombiningString(),a=RegExp(`^(?:[\\w+-]+\\.)*[\\w+-]+@[a-z0-9_-]+(?:\\.[a-z0-9_-]+)*\\.(?:${i})$`,`i`);return L.create(a.test(r))}},om=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.getValue()===p.NA?L.create(!1):e.isError()?L.create(!0):e.isArray()?e.mapValue(e=>e.getValue()===p.NA?L.create(!1):e.isError()?L.create(!0):L.create(!1)):L.create(!1)}},sm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isError()?L.create(!0):e.isArray()?e.mapValue(e=>e.isError()?L.create(!0):L.create(!1)):L.create(!1)}},cm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;if(t.isArray()){let e=t.getRowCount(),n=t.getColumnCount();if(e>1||n>1)return E.create(p.VALUE);t=t.get(0,0)}if(t.isError())return t;if(t.isBoolean())return E.create(p.VALUE);let n=Math.trunc(+t.getValue());if(Number.isNaN(n))return E.create(p.VALUE);let r=n%2==0;return L.create(r)}},lm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1),d(this,`needsReferenceObject`,!0)}calculate(e){var t;if(e.isError())return e;if(!e.isReferenceObject())return E.create(p.NA);let n=(t=e.getCurrentActiveSheetData())==null?void 0:t.cellData.getMatrix(),{startRow:r,startColumn:i}=e.getRangePosition(),a=e.toArrayValueObject(),o=a.mapValue((e,t,a)=>{var o;let s=n==null||(o=n[r+t])==null?void 0:o[i+a];return s!=null&&s.f||s!=null&&s.si?L.create(!0):L.create(!1)});return a.getRowCount()===1&&a.getColumnCount()===1?o.get(0,0):o}},um=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isBoolean()?L.create(!0):e.isArray()?e.mapValue(e=>e.isBoolean()?L.create(!0):L.create(!1)):L.create(!1)}},dm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.getValue()===p.NA?L.create(!0):e.isArray()?e.mapValue(e=>e.getValue()===p.NA?L.create(!0):L.create(!1)):L.create(!1)}},fm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return!e.isArray()&&!e.isString()?L.create(!0):e.isArray()?e.mapValue(e=>e.isString()?L.create(!1):L.create(!0)):L.create(!1)}},pm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isNumber()?L.create(!0):e.isArray()?e.mapValue(e=>e.isNumber()?L.create(!0):L.create(!1)):L.create(!1)}},mm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;if(t.isArray()){let e=t.getRowCount(),n=t.getColumnCount();if(e>1||n>1)return E.create(p.VALUE);t=t.get(0,0)}if(t.isError())return t;if(t.isBoolean())return E.create(p.VALUE);let n=Math.trunc(+t.getValue());if(Number.isNaN(n))return E.create(p.VALUE);let r=n%2!=0;return L.create(r)}},hm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1),d(this,`needsReferenceObject`,!0)}calculate(e){return e.isReferenceObject()?L.create(!0):L.create(!1)}},gm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isString()?L.create(!0):e.isArray()?e.mapValue(e=>e.isString()?L.create(!0):L.create(!1)):L.create(!1)}},_m=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let n=e;if(n.isArray()){let e=n.getRowCount(),t=n.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);n=n.get(0,0)}if(n.isError())return n;if(n.isNull()||n.isBoolean()||n.isNumber())return L.create(!1);let r=`${n.getValue()}`.replace(/^\s+|\s+$/g,``);if(r.length>1e3)return L.create(!1);let i=t.Tools.topLevelDomainCombiningString(),a=RegExp(`^(?:(?:https?|s?ftp|ftps|nfs|ssh)://+[a-z0-9_-]+(?:\\.[a-z0-9_-]+)*(?::[0-9]+)?(?:/(?:[A-Za-z0-9\\-._~!$&'()*+,;=:@]|%[A-Fa-f0-9]{2})*)*/?(?:[?#]\\S*)?|[a-z0-9_-]+(?:\\.[a-z0-9_-]+)*\\.(?:${i})(?::[0-9]+)?(?:/(?:[A-Za-z0-9\\-._~!$&'()*+,;=:@]|%[A-Fa-f0-9]{2})*)*/?(?:[?#]\\S*)?|mailto:(?:[\\w+-]+\\.)*[\\w+-]+@[a-z0-9_-]+(?:\\.[a-z0-9_-]+)*\\.(?:${i})|(?:news|aim):[%a-z0-9$_\\.+!*(),;/?#:@&~=-]+)$`,`i`);return L.create(a.test(r))}},vm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;if(e.isArray()&&(t=e.get(0,0)),t.isError())return t;if(t.isString())return R.create(0);let n=+t.getValue();return R.create(n)}},ym=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,0)}calculate(){return E.create(p.NA)}},bm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,1),d(this,`needsReferenceObject`,!0),d(this,`needsSheetsInfo`,!0)}calculate(e){var t;if(e!=null&&e.isError())return e;let{sheetOrder:n,sheetNameMap:r}=this.getSheetsInfo();if(!e){let e=n.findIndex(e=>e===this.subUnitId);return R.create(e+1)}if(e.isReferenceObject()){let t=e.getForcedSheetId(),r=e.getDefaultSheetId(),i=n.findIndex(e=>t?e===t:e===r);return R.create(i+1)}if(e.isArray())return E.create(p.NA);let i=`${e.getValue()}`.toLocaleLowerCase(),a=(t=Object.entries(r).find(([e,t])=>t.toLocaleLowerCase()===i))==null?void 0:t[0];if(!a)return E.create(p.NA);let o=n.findIndex(e=>e===a);return R.create(o+1)}},xm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,0),d(this,`needsSheetsInfo`,!0)}calculate(){let{sheetOrder:e}=this.getSheetsInfo();return R.create(e.length)}},Sm=class extends Z{constructor(...e){super(...e),d(this,`needsReferenceObject`,!0),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isReferenceObject()){let t=e.getRowCount(),n=e.getColumnCount();if(t===1&&n===1){let t=e.getFirstCell();if(t.isError())return R.create(16);if(t.isBoolean())return R.create(4);if(t.isString())return R.create(2);if(t.isNumber()||t.isNull())return R.create(1)}else return R.create(64)}else{if(e.isArray())return R.create(64);if(e.isError())return R.create(16);if(e.isBoolean())return R.create(4);if(e.isString())return R.create(2);if(e.isNumber()||e.isNull())return R.create(1)}return R.create(128)}};let Cm=[[em,zo.CELL],[tm,zo.ERROR_TYPE],[nm,zo.ISBETWEEN],[rm,zo.ISBLANK],[im,zo.ISDATE],[am,zo.ISEMAIL],[om,zo.ISERR],[sm,zo.ISERROR],[cm,zo.ISEVEN],[lm,zo.ISFORMULA],[um,zo.ISLOGICAL],[dm,zo.ISNA],[fm,zo.ISNONTEXT],[pm,zo.ISNUMBER],[mm,zo.ISODD],[hm,zo.ISREF],[gm,zo.ISTEXT],[_m,zo.ISURL],[vm,zo.N],[ym,zo.NA],[bm,zo.SHEET],[xm,zo.SHEETS],[Sm,zo.TYPE]];var wm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=!0,n=!0,r=null;for(let i of e){if(i.isError())return i;if(i.isArray()){if(i.iterator(e=>{if(e!=null&&e.isError())return r=e,!1;(e!=null&&e.isBoolean()||e!=null&&e.isNumber())&&(t=t&&!!e.getValue(),n=!1)}),r)return r}else (i.isBoolean()||i.isNumber())&&(t=t&&!!i.getValue(),n=!1)}return n?E.create(p.VALUE):L.create(t)}},Tm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2),d(this,`needsReferenceObject`,!0)}calculate(e,t){let n=e,r=null;if(e.isReferenceObject()&&(n=e.toArrayValueObject(),r=e),n.isError())return n;if(t.isError())return t;if(!(t.isValueObject()&&t.isLambda()&&t.getLambdaPrivacyVarKeys().length===1))return E.create(p.VALUE);let i=t,a=n.isArray()?n.getRowCount():1,o=n.isArray()?n.getColumnCount():1;n=V(a,o,n);let s=[[]];for(let e=0;e<o;e++){let t=[];for(let r=0;r<a;r++){let i=n.get(r,e);t.push([i])}let o=B.create({calculateValueList:t,rowCount:a,columnCount:1,unitId:``,sheetId:``,row:0,column:0});if(r){let{startRow:t,startColumn:n}=r.getRangePosition(),i={startRow:t,startColumn:n+e,endRow:t+a-1,endColumn:n+e};o=this.createReferenceObject(r,i)}let c=i.execute(o);if(c.isArray()){let e=c.getRowCount(),t=c.getColumnCount();if(e>1||t>1)return E.create(p.CALC);c=c.get(0,0)}c.isNull()&&(c=R.create(0)),s[0].push(c)}return o===1?s[0][0]:B.create({calculateValueList:s,rowCount:1,columnCount:o,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}},Em=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2),d(this,`needsReferenceObject`,!0)}calculate(e,t){let n=e,r=null;if(e.isReferenceObject()&&(n=e.toArrayValueObject(),r=e),n.isError())return n;if(t.isError())return t;if(!(t.isValueObject()&&t.isLambda()&&t.getLambdaPrivacyVarKeys().length===1))return E.create(p.VALUE);let i=t,a=n.isArray()?n.getRowCount():1,o=n.isArray()?n.getColumnCount():1;n=V(a,o,n);let s=[];for(let e=0;e<a;e++){let t=[[]];for(let r=0;r<o;r++){let i=n.get(e,r);t[0].push(i)}let a=B.create({calculateValueList:t,rowCount:1,columnCount:o,unitId:``,sheetId:``,row:0,column:0});if(r){let{startRow:t,startColumn:n}=r.getRangePosition(),i={startRow:t+e,startColumn:n,endRow:t+e,endColumn:n+o-1};a=this.createReferenceObject(r,i)}let c=i.execute(a);if(c.isArray()){let e=c.getRowCount(),t=c.getColumnCount();if(e>1||t>1)return E.create(p.CALC);c=c.get(0,0)}c.isNull()&&(c=R.create(0)),s.push([c])}return a===1?s[0][0]:B.create({calculateValueList:s,rowCount:a,columnCount:1,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}},Dm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,0)}calculate(){return L.create(!1)}},Om=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n=L.create(!1)){let r=e;if(e.isArray()){let t=e.getRowCount(),n=e.getColumnCount();t===1&&n===1&&(r=e.get(0,0))}if(!r.isArray())return this._handleSingleObject(r,t,n);let i=Math.max(r.isArray()?r.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),a=Math.max(r.isArray()?r.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),o=V(i,a,r,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA));return o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n);return this._handleSingleObject(e,r,i)})}_handleSingleObject(e,t,n){return e.isError()?e:e.getValue()?t:n}},km=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(!e.isArray())return e.isError()?t:e;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e),a=V(n,r,t);return i.iterator((e,t,n)=>{e!=null&&e.isError()&&i.set(t,n,a.get(t,n))}),i}},Am=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError()&&e.getErrorType()!==p.NA)return e;if(t.isError())return t;if(!e.isArray())return e.isError()&&e.getErrorType()===p.NA?t:e;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e),a=V(n,r,t);return i.iterator((e,t,n)=>{e!=null&&e.isError()&&e.getErrorType()===p.NA&&i.set(t,n,a.get(t,n))}),i}},jm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,255)}calculate(...e){if(e.length%2!=0)return E.create(p.NA);for(let t=0;t<e.length;t++)if(e[t].isError())return e[t];let t=Math.max(...e.map(e=>e.isArray()?e.getRowCount():1)),n=Math.max(...e.map(e=>e.isArray()?e.getColumnCount():1)),r=e.map(e=>V(t,n,e,E.create(p.NA))),i=r[0].map((e,t,n)=>{for(let e=0;e<r.length;e+=2){let i=r[e].get(t,n)||Ua.create(),a=r[e+1].get(t,n)||Ua.create();if(i.isNull())continue;if(i.isError())return i;let o=i.getValue();if(i.isString()){if(`${o}`.toLocaleUpperCase()===`TRUE`)return a;if(`${o}`.toLocaleUpperCase()===`FALSE`)continue;return E.create(p.VALUE)}if(+o)return a.isNull()?E.create(p.NA):a}return E.create(p.NA)});return t===1&&n===1?i.get(0,0):i}},Mm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){return E.create(p.VALUE)}},Nm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,255)}calculate(...e){return E.create(p.VALUE)}},Pm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(...e){let t=this.getIndexNumValue(e[0]);if(typeof t!=`number`)return t;let n=this.getIndexNumValue(e[1]);if(typeof n!=`number`)return n;if(!(e[2].isValueObject()&&e[2].isLambda()))return E.create(p.VALUE);let r=e[2],i=[];for(let e=0;e<t;e++){i[e]==null&&(i[e]=[]);for(let t=0;t<n;t++){let n=r.execute(R.create(e+1),R.create(t+1));n.isArray()&&(n=n.get(0,0)),i[e][t]=n}}return new io(i)}isAsync(){return!0}},Fm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,255),d(this,`needsReferenceObject`,!0)}calculate(...e){let t=[],n=null,r=0,i=0;for(let a=0;a<e.length;a++){let o=e[a],s=o;if(s.isReferenceObject()&&(s=o.toArrayValueObject()),s.isError())return s;if(a===e.length-1){if(!(o.isValueObject()&&o.isLambda()))return E.create(p.VALUE);n=o}else t.push(o),r=Math.max(r,s.isArray()?s.getRowCount():1),i=Math.max(i,s.isArray()?s.getColumnCount():1)}let a=this._getResultArray(t,n,r,i);return a instanceof E?a:r===1&&i===1?a[0][0]:B.create({calculateValueList:a,rowCount:r,columnCount:i,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}_getResultArray(e,t,n,r){let i=[];for(let a=0;a<n;a++){let n=[];for(let i=0;i<r;i++){let r=[],o=!1;for(let t=0;t<e.length;t++){let s=e[t],c=null;if(s.isReferenceObject()&&(c=s,s=s.toArrayValueObject()),!s.isArray())if(a===0&&i===0){r.push(c||s);continue}else{n.push(E.create(p.NA)),o=!0;break}let l=s.get(a,i);if(!l){n.push(E.create(p.NA)),o=!0;break}if(c){let{startRow:e,startColumn:t}=c.getRangePosition(),n={startRow:e+a,startColumn:t+i,endRow:e+a,endColumn:t+i};l=this.createReferenceObject(c,n)}r.push(l)}if(o||r.length===0)continue;let s=t.execute(...r);if(s.isArray()){let e=s.getRowCount(),t=s.getColumnCount();if(e>1||t>1)return E.create(p.CALC);s=s.get(0,0)}s.isNull()&&(s=R.create(0)),n.push(s)}i.push(n)}return i}},Im=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;let t=+e.getValue();return Number.isNaN(t)?E.create(p.VALUE):L.create(!t)}},Lm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=!1,n=!0,r=null;for(let i of e){if(i.isError())return i;if(i.isArray()){if(i.iterator(e=>{if(e!=null&&e.isError())return r=e,!1;(e!=null&&e.isBoolean()||e!=null&&e.isNumber())&&(t=t||!!e.getValue(),n=!1)}),r)return r}else (i.isBoolean()||i.isNumber())&&(t=t||!!i.getValue(),n=!1)}return n?new E(p.VALUE):new L(t)}},Rm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3),d(this,`needsReferenceObject`,!0)}calculate(e,t,n){let r,i;e.isReferenceObject()?(r=e.toArrayValueObject(),i=e):(r=e,i=null);let a,o;return t.isReferenceObject()?(a=t.toArrayValueObject(),o=t):(a=t,o=null),r.isArray()?r.mapValue(e=>this._handleSingleValueObject(e,a,n,i,o)):this._handleSingleValueObject(r,a,n,i,o)}_handleSingleValueObject(e,t,n,r,i){if(e.isError())return e;if(t.isError())return t;if(n.isError())return n;if(!(n.isValueObject()&&n.isLambda()&&n.getLambdaPrivacyVarKeys().length===2))return E.create(p.VALUE);let a=n,o=t.isArray()?t.getRowCount():1,s=t.isArray()?t.getColumnCount():1,c=e;r&&(c=r);for(let e=0;e<o;e++)for(let n=0;n<s;n++){let r=t.isArray()?t.get(e,n):t;if(r.isError())return r;if(i){let{startRow:t,startColumn:a}=i.getRangePosition(),o={startRow:t+e,startColumn:a+n,endRow:t+e,endColumn:a+n};r=this.createReferenceObject(i,o)}let o=a.execute(c,r);if(o.isError())return o;o.isNull()&&(o=R.create(0)),c=o}return c.isReferenceObject()?c.toArrayValueObject():c}},zm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3),d(this,`needsReferenceObject`,!0)}calculate(e,t,n){let r=e,i=null;e.isReferenceObject()&&(r=e.toArrayValueObject(),i=e),r=r;let a=t,o=null;if(t.isReferenceObject()&&(a=t.toArrayValueObject(),o=t),a=a,r.isError())return r;if(a.isError())return a;if(n.isError())return n;if(!(n.isValueObject()&&n.isLambda()&&n.getLambdaPrivacyVarKeys().length===2))return E.create(p.VALUE);if(r.isArray()){let e=r.getRowCount(),t=r.getColumnCount();if(e>1||t>1)return E.create(p.CALC);r=r.get(0,0)}return this._getResult(r,a,n,i,o)}_getResult(e,t,n,r,i){let a=[],o=t.isArray()?t.getRowCount():1,s=t.isArray()?t.getColumnCount():1,c=e;r&&(c=r);for(let e=0;e<o;e++){let r=[];for(let a=0;a<s;a++){if(c.isError()){r.push(c);continue}let o=t.isArray()?t.get(e,a):t;if(o.isError()){c=o,r.push(o);continue}if(i){let{startRow:t,startColumn:n}=i.getRangePosition(),r={startRow:t+e,startColumn:n+a,endRow:t+e,endColumn:n+a};o=this.createReferenceObject(i,r)}let s=n.execute(c,o);if(s.isArray()){let e=s.getRowCount(),t=s.getColumnCount();if(e>1||t>1)return E.create(p.CALC);s=s.get(0,0)}s.isNull()&&(s=R.create(0)),c=s,r.push(s)}a.push(r)}return o===1&&s===1?a[0][0]:B.create({calculateValueList:a,rowCount:o,columnCount:s,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}},Bm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3)}calculate(e,...t){if(e.isError())return e;let n=t.length%2!=0,r=n?t[t.length-1]:Ua.create();return!e.isArray()&&!t.some(e=>e.isArray())?this._handleNonArrayInputs(e,t,r,n):this._handleArrayInputs(e,t,r,n)}_handleNonArrayInputs(e,t,n,r){for(let n=0;n<t.length-(r?1:0);n+=2){let r=t[n],i=t[n+1];if(!r.isNull()){if(r.isError())return r;if(`${e.getValue()}`.toLocaleLowerCase()===`${r.getValue()}`.toLocaleLowerCase())return i.isNull()?E.create(p.NA):i}}return n.isNull()?E.create(p.NA):n}_handleArrayInputs(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,...t.map(e=>e.isArray()?e.getRowCount():1),n.isArray()?n.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,...t.map(e=>e.isArray()?e.getColumnCount():1),n.isArray()?n.getColumnCount():1),o=V(i,a,e),s=t.map(e=>V(i,a,e,E.create(p.NA))),c=V(i,a,n,E.create(p.NA));return o.map((e,t,n)=>{for(let i=0;i<s.length-(r?1:0);i+=2){let r=s[i].get(t,n)||Ua.create(),a=s[i+1].get(t,n)||Ua.create();if(!r.isNull()){if(r.isError()||e.isError())return r.isError()?r:e;if(`${e.getValue()}`.toLocaleLowerCase()===`${r.getValue()}`.toLocaleLowerCase())return a.isNull()?E.create(p.NA):a}}let i=c.get(t,n)||Ua.create();return i.isNull()?E.create(p.NA):i})}},Vm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,0)}calculate(){return L.create(!0)}},Hm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=0,n=!0,r=null;for(let i of e){if(i.isError())return i;if(i.isArray()){if(i.iterator(e=>{if(e!=null&&e.isError())return r=e,!1;(e!=null&&e.isBoolean()||e!=null&&e.isNumber())&&(e.getValue()&&t++,n=!1)}),r)return r}else (i.isBoolean()||i.isNumber())&&(i.getValue()&&t++,n=!1)}return n?E.create(p.VALUE):L.create(t%2==1)}};let Um=[[wm,Bo.AND],[Tm,Bo.BYCOL],[Em,Bo.BYROW],[Dm,Bo.FALSE],[Om,Bo.IF],[km,Bo.IFERROR],[Am,Bo.IFNA],[jm,Bo.IFS],[Mm,Bo.LAMBDA],[Nm,Bo.LET],[Pm,Bo.MAKEARRAY],[Fm,Bo.MAP],[Im,Bo.NOT],[Lm,Bo.OR],[Rm,Bo.REDUCE],[zm,Bo.SCAN],[Bm,Bo.SWITCH],[Vm,Bo.TRUE],[Hm,Bo.XOR]];var Wm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,5)}calculate(e,t,n,r,i){if(e.isError())return e;if(t.isError())return t;if(n!=null&&n.isError())return n;if(r!=null&&r.isError())return r;if(i!=null&&i.isError())return i;let a=n==null?R.create(1):n,o=r==null?L.create(!0):r,s=i==null?z.create(``):i,c=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,a.isArray()?a.getRowCount():1,o.isArray()?o.getRowCount():1,s.isArray()?s.getRowCount():1),l=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,a.isArray()?a.getColumnCount():1,o.isArray()?o.getColumnCount():1,s.isArray()?s.getColumnCount():1),u=V(c,l,e,E.create(p.NA)),d=V(c,l,t,E.create(p.NA)),f=V(c,l,a,E.create(p.NA)),m=V(c,l,o,E.create(p.NA)),h=V(c,l,s,E.create(p.NA));return u.map((e,t,n)=>{let r=d.get(t,n)||E.create(p.NA),i=f.get(t,n)||E.create(p.NA),a=m.get(t,n)||E.create(p.NA),o=h.get(t,n)||E.create(p.NA);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:o.isError()?o:this._calculateSingleCell(e,r,i,a,o)})}_calculateSingleCell(e,t,n,r,i){let a=Number.parseInt(`${Number(e.getValue())-1}`),o=Number.parseInt(`${Number(t.getValue())-1}`),s=Number.parseInt(`${Number(n.getValue())}`);if(Number.isNaN(a)||Number.isNaN(o)||Number.isNaN(s)||s<1||s>4)return E.create(p.VALUE);let c=Gm(s),l=this.getZeroOrOneByOneDefault(r),u=nn(`${i.getValue()}`),d={startRow:a,startColumn:o,endRow:a,endColumn:o,startAbsoluteRefType:c,endAbsoluteRefType:c},f=r&&!l?Qs(d):Ut(d);return z.create(u===``?f:`${u}!${f}`)}};function Gm(e){switch(e){case 1:return t.AbsoluteRefType.ALL;case 2:return t.AbsoluteRefType.ROW;case 3:return t.AbsoluteRefType.COLUMN;case 4:return t.AbsoluteRefType.NONE;default:return t.AbsoluteRefType.ALL}}var Km=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1),d(this,`needsReferenceObject`,!0)}calculate(e){return e.isReferenceObject()?R.create(1):E.create(p.VALUE)}},qm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,255),d(this,`needsReferenceObject`,!0)}calculate(e,...t){let n=e;if(n.isError())return n;if(n.isReferenceObject()&&(n=n.toArrayValueObject()),!n.isArray()){let e=n.convertToNumberObjectValue();return e.isError()?e:t[Math.trunc(+e.getValue())-1]||E.create(p.VALUE)}let r=n.isArray()?n.getRowCount():1,i=n.isArray()?n.getColumnCount():1;t.forEach((e,t)=>{if(e.isArray()){let t=e;r=Math.max(r,t.getRowCount()),i=Math.max(i,t.getColumnCount())}else r=Math.max(r,1),i=Math.max(i,1)});let a=V(r,i,n,E.create(p.NA)),o=t.map(e=>{let t=e;return t.isReferenceObject()&&(t=t.toArrayValueObject()),V(r,i,t,E.create(p.NA))});return a.map((e,t,n)=>{if(e.isError())return e;let r=e.convertToNumberObjectValue();if(r.isError())return r;let i=o[Math.trunc(+r.getValue())-1],a=(i==null?void 0:i.get(t,n))||E.create(p.VALUE);return a!=null&&a.isNull()&&(a=R.create(0)),a})}},Jm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,255)}calculate(e,...t){if(e.isError())return e;let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=[];for(let a=0;a<t.length;a++){let o=t[a];if(o.isArray()){let e=o.getRowCount(),t=o.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);o=o.get(0,0)}if(o.isString()&&(o=o.convertToNumberObjectValue()),o.isError())return o;let s=Math.trunc(+o.getValue());if(s===0||Math.abs(s)>r)return E.create(p.VALUE);let c=e;r>1&&(c=s<0?e.slice(void 0,[s+r,s+1+r]):e.slice(void 0,[s-1,s]));for(let t=0;t<n;t++)i[t]||(i[t]=[]),e.isArray()?i[t].push(c.get(t,0)):i[t].push(e)}return B.create({calculateValueList:i,rowCount:i.length,columnCount:i[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}},Ym=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,255)}calculate(e,...t){if(e.isError())return e;let n=e.isArray()?e.getRowCount():1,r=[];for(let i=0;i<t.length;i++){let a=t[i];if(a.isArray()){let e=a.getRowCount(),t=a.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);a=a.get(0,0)}if(a.isString()&&(a=a.convertToNumberObjectValue()),a.isError())return a;let o=Math.trunc(+a.getValue());if(o===0||Math.abs(o)>n)return E.create(p.VALUE);let s=e;n>1&&(s=o<0?e.slice([o+n,o+1+n]):e.slice([o-1,o])),e.isArray()?r.push(s.getArrayValue()[0]):r.push([e])}return B.create({calculateValueList:r,rowCount:r.length,columnCount:r[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}},Xm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,1)}calculate(e){if(e==null)return R.create(this.column+1);if(e.isError())return e;if(!e.isArray())return E.create(p.NA);let t=e.getCurrentColumn(),n=e.getColumnCount(),r=[];for(let e=0;e<n;e++)r.push(R.create(t+e+1));let i={calculateValueList:[r],rowCount:1,columnCount:n,unitId:this.unitId||``,sheetId:this.subUnitId||``,row:this.row,column:this.column};return B.create(i)}},Zm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isError())return e;if(e.isString()||e.isNumber()||e.isBoolean())return R.create(1);if(!e.isArray())return E.create(p.NA);let t=e.getColumnCount();return R.create(t)}},Qm=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?R.create(0):n,i=e.isArray()?e.getRowCount():1,a=e.isArray()?e.getColumnCount():1,o=Math.max(t.isArray()?t.getRowCount():1,r.isArray()?r.getRowCount():1),s=Math.max(t.isArray()?t.getColumnCount():1,r.isArray()?r.getColumnCount():1),c=V(o,s,t,E.create(p.NA)),l=V(o,s,r,E.create(p.NA));if(o>1||s>1)return c.mapValue((t,n,r)=>{let o=l.get(n,r);if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);let{isError:s,errorObject:c}=this._checkRowsColumns(t,o,i,a);return s?c:e.isArray()?E.create(p.VALUE):e});if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);let u=t.isArray()?t.get(0,0):t,d=r.isArray()?r.get(0,0):r,{isError:f,errorObject:m,rowsValue:h,columnsValue:g}=this._checkRowsColumns(u,d,i,a);return f?m:this._getResultArray(e,h,g,i,a)}_checkRowsColumns(e,t,n,r){if(e.isError())return{isError:!0,errorObject:e};if(t.isError())return{isError:!0,errorObject:t};let i=Math.trunc(+e.getValue()),a=Math.trunc(+t.getValue());return Number.isNaN(i)||Number.isNaN(a)?{isError:!0,errorObject:E.create(p.VALUE)}:Math.abs(i)>=n||Math.abs(a)>=r?{isError:!0,errorObject:E.create(p.CALC)}:{isError:!1,rowsValue:i,columnsValue:a}}_getResultArray(e,t,n,r,i){let a=t>=0?[t,r]:[0,r+t],o=n>=0?[n,i]:[0,i+n],s;return s=t===0&&n===0?e:t===0?e.slice(void 0,o):n===0?e.slice(a,void 0):e.slice(a,o),s=s.map(e=>e.isNull()?R.create(0):e),r-t===1&&i-n===1?s.get(0,0):s}},$m=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=e.isArray()?e.getRowCount():1,a=e.isArray()?e.getColumnCount():1,o=t,s=n==null?R.create(a):n,c=r==null?E.create(p.NA):r;t.isNull()&&(o=R.create(i)),s.isNull()&&(s=R.create(a));let l=Math.max(o.isArray()?o.getRowCount():1,s.isArray()?s.getRowCount():1),u=Math.max(o.isArray()?o.getColumnCount():1,s.isArray()?s.getColumnCount():1),d=V(l,u,o,E.create(p.NA)),f=V(l,u,s,E.create(p.NA));if(l>1||u>1)return d.mapValue((t,n,r)=>{let o=f.get(n,r);if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);let{isError:s,errorObject:l}=this._checkRowsColumnsPadWith(t,o,c,i,a);return s?l:e.isArray()?e.get(0,0):e});if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);let m=o.isArray()?o.get(0,0):o,h=s.isArray()?s.get(0,0):s,{isError:g,errorObject:_,rowsValue:v,columnsValue:y,padWithObject:b}=this._checkRowsColumnsPadWith(m,h,c,i,a);return g?_:this._getResultArray(e,v,y,b,i,a)}_checkRowsColumnsPadWith(e,t,n,r,i){if(e.isError())return{isError:!0,errorObject:e};if(t.isError())return{isError:!0,errorObject:t};let a=Math.trunc(+e.getValue()),o=Math.trunc(+t.getValue());if(Number.isNaN(a)||Number.isNaN(o)||Math.abs(a)<r||Math.abs(o)<i)return{isError:!0,errorObject:E.create(p.VALUE)};let s=n;if(n.isArray()){let e=n.getRowCount(),t=n.getColumnCount();if(e>1||t>1)return{isError:!0,errorObject:E.create(p.VALUE)};s=n.get(0,0)}return{isError:!1,rowsValue:a,columnsValue:o,padWithObject:s}}_getResultArray(e,t,n,r,i,a){let o=[];o=e.isArray()?e.map(e=>e.isNull()?R.create(0):e).getArrayValue():[[e]];let s=Math.max(0,t-i),c=Math.max(0,n-a);for(let e=0;e<s;e++)o.push(Array(a).fill(r));for(let e=0;e<c;e++)o.forEach(e=>{e.push(r)});return t===1&&n===1?o[0][0]:B.create({calculateValueList:o,rowCount:o.length,columnCount:o[0].length,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}},eh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?E.create(p.CALC):n;if(e.isError())return e;if(t.isError())return t;let i=e.isArray()?e.getRowCount():1,a=e.isArray()?e.getColumnCount():1,o=t.isArray()?t.getRowCount():1,s=t.isArray()?t.getColumnCount():1;return o>1&&s>1||o===1&&s!==a||s===1&&o!==i?E.create(p.VALUE):i===1&&a===1?this._getResultArrayByR1C1(e,t,r):o===1?s===a?this._getResultArrayByR1(i,a,e,t,r):E.create(p.VALUE):s===1?o===i?this._getResultArrayByC1(i,a,e,t,r):E.create(p.VALUE):r}_getResultArrayByR1C1(e,t,n){let r=e,i=t;return r.isArray()&&(r=r.get(0,0)),i.isArray()&&(i=i.get(0,0)),i.isString()&&(i=i.convertToNumberObjectValue()),i.isError()?i:+i.getValue()?r:n}_getResultArrayByR1(e,t,n,r,i){let a=[];for(let i=0;i<t;i++){let t=r.get(0,i);if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;if(+t.getValue())for(let t=0;t<e;t++){a[t]||(a[t]=[]);let e=n.get(t,i);a[t].push(e)}}return a.length===0?i:B.create({calculateValueList:a,rowCount:a.length,columnCount:a[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}_getResultArrayByC1(e,t,n,r,i){let a=[];for(let i=0;i<e;i++){let e=r.get(i,0);if(e.isString()&&(e=e.convertToNumberObjectValue()),e.isError())return e;if(!+e.getValue())continue;let o=[];for(let e=0;e<t;e++){let t=n.get(i,e);o.push(t)}a.push(o)}return a.length===0?i:B.create({calculateValueList:a,rowCount:a.length,columnCount:a[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}},th=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1),d(this,`needsReferenceObject`,!0),d(this,`needsFormulaDataModel`,!0)}calculate(e){var t;if(!e.isReferenceObject())return E.create(p.NA);let n=e.getUnitId(),r=e.getSheetId(),i=(t=e.getUnitData()[n])==null||(t=t[r])==null?void 0:t.cellData,{startRow:a,startColumn:o}=e.getRangePosition(),s=e.toArrayValueObject().mapValue((e,t,s)=>{let c=i.getValue(a+t,o+s);if(c!=null&&c.f||c!=null&&c.si){let e=this._formulaDataModel.getFormulaStringByCell(a+t,o+s,r,n);return z.create(e)}return E.create(p.NA)});return s.getRowCount()===1&&s.getColumnCount()===1?s.get(0,0):s}},nh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){if(e.isError())return e;if(t.isError())return E.create(p.REF);if(!t.isArray()||n.isError()||r!=null&&r.isError())return E.create(p.NA);let i=this.getZeroOrOneByOneDefault(r);if(i==null)return E.create(p.VALUE);let a=this.getIndexNumValue(n);if(a instanceof E)return a;let o=t.slice([0,1]),s=t.slice([a-1,a]);return o==null||s==null?E.create(p.REF):e.isArray()?e.map(e=>this._handleSingleObject(e,o,s,i)):this._handleSingleObject(e,o,s,i)}_handleSingleObject(e,t,n,r){return r===0?this.equalSearch(e,t,n):this.binarySearch(e,t,n)}},rh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=Math.max(...e.map(e=>e.isArray()?e.getRowCount():1)),n=[];for(let r=0;r<e.length;r++){let i=e[r];if(i.isError())return i;let a=i.isArray()?i.getRowCount():1,o=i.isArray()?i.getColumnCount():1;for(let e=0;e<t;e++){n[e]||(n[e]=[]);for(let t=0;t<o;t++){let r=i;i.isArray()&&(r=i.get(e,t)),e>a-1||!r?n[e].push(E.create(p.NA)):n[e].push(r)}}}return B.create({calculateValueList:n,rowCount:n.length,columnCount:n[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}},ih=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=e;if(e.isArray()&&(n=e.get(0,0)),n.isError())return n;let r=t;if(t!=null&&t.isArray()&&(r=t.get(0,0)),r!=null&&r.isError())return r;let i=`${n.getValue()}`;n.isNull()&&(i=``);let a=i;return r&&(a=`${r.getValue()}`,r.isNull()?a=`0`:r.isBoolean()&&(a=a.toLocaleUpperCase())),z.create(a,{isHyperlink:!0,hyperlinkUrl:i})}},ah=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let a=Math.max(e.isArray()?e.getRowCount():1,t!=null&&t.isArray()?t.getRowCount():1,n!=null&&n.isArray()?n.getRowCount():1,r!=null&&r.isArray()?r.getRowCount():1,i!=null&&i.isArray()?i.getRowCount():1),o=Math.max(e.isArray()?e.getColumnCount():1,t!=null&&t.isArray()?t.getColumnCount():1,n!=null&&n.isArray()?n.getColumnCount():1,r!=null&&r.isArray()?r.getColumnCount():1,i!=null&&i.isArray()?i.getColumnCount():1),s=V(a,o,e,E.create(p.NA)),c=t?V(a,o,t,E.create(p.NA)):void 0,l=n?V(a,o,n,E.create(p.NA)):void 0,u=r?V(a,o,r,E.create(p.NA)):void 0,d=i?V(a,o,i,E.create(p.NA)):void 0,f=s.mapValue((e,t,n)=>{if(e.isError())return e;let r=c?c.get(t,n):void 0;if(r!=null&&r.isError())return r;let i=l?l.get(t,n):void 0;if(i!=null&&i.isError())return i;let a=u?u.get(t,n):void 0;if(a!=null&&a.isError())return a;let o=d?d.get(t,n):void 0;return o!=null&&o.isError()?o:this._handleSingleObject(e,r,i,a,o)});return a===1&&o===1?f.get(0,0):f}_handleSingleObject(e,t,n,r,i){if(!e.isString())return E.create(p.VALUE);let a=e.getValue(),o=``;t&&(t.isBoolean()?o=t.getValue()?`TRUE`:`FALSE`:t.isNull()||(o=`${t.getValue()}`));let s=n==null?R.create(0):n;if(s.isString()&&(s=s.convertToNumberObjectValue()),s.isError())return s;let c=Math.abs(Math.trunc(+s.getValue()));if(c<0||c>3||[0,1,2].includes(c)&&(r||i))return E.create(p.VALUE);let l=r==null?R.create(0):r;if(l.isString()&&(l=l.convertToNumberObjectValue()),l.isError())return l;let u=Math.ceil(+l.getValue()),d=i==null?R.create(0):i;if(d.isString()&&(d=d.convertToNumberObjectValue()),d.isError())return d;let f=Math.ceil(+d.getValue());return c===3&&u<1&&f<1?E.create(p.VALUE):z.create(``,{isImage:!0,imageInfo:{source:a,altText:o,sizing:c,height:u,width:f}})}},oh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,4),d(this,`needsReferenceObject`,!0)}calculate(e,t,n,r){if(e.isError())return e;let i=this._getReferenceCounts(e),a=t;t.isReferenceObject()&&(a=t.toArrayValueObject());let o=n;o!=null&&o.isReferenceObject()&&(o=n.toArrayValueObject());let s=r==null?R.create(1):r;s.isReferenceObject()&&(s=r.toArrayValueObject());let c=Math.max(a.isArray()?a.getRowCount():1,o!=null&&o.isArray()?o.getRowCount():1,s.isArray()?s.getRowCount():1),l=Math.max(a.isArray()?a.getColumnCount():1,o!=null&&o.isArray()?o.getColumnCount():1,s.isArray()?s.getColumnCount():1);if(c===1&&l===1)return this._handleSingleObject(e,a.isArray()?a.get(0,0):a,o?o.isArray()?o.get(0,0):o:void 0,s.isArray()?s.get(0,0):s,i);{let t=V(c,l,a,E.create(p.NA)),n=o?V(c,l,o,E.create(p.NA)):[],r=V(c,l,s,E.create(p.NA));return t.mapValue((t,a,s)=>{let c=o?n.get(a,s):void 0,l=r.get(a,s),u=this._handleSingleObject(e,t,c,l,i);return u.isReferenceObject()?u.getCellByPosition():u})}}_handleSingleObject(e,t,n,r,i){let a,o,s;if(n){let{isError:e,errorObject:i,variants:c}=X(t,n,r);if(e)return i;a=c[0],o=c[1],s=c[2]}else{let{isError:e,errorObject:n,variants:i}=X(t,r);if(e)return n;a=i[0],s=i[1]}let c=Math.floor(+s.getValue());if(c<0)return E.create(p.VALUE);if(c>i.length)return E.create(p.REF);let l=i[c-1],u=0,d=0;if(l.rowCount===1&&!n?d=Math.floor(+a.getValue()):(u=Math.floor(+a.getValue()),n&&(d=Math.floor(+o.getValue()))),u<0||d<0)return E.create(p.VALUE);if(u>l.rowCount||d>l.columnCount)return E.create(p.REF);let f=e;return c>1&&(f=e.getCubeValues()[c-1]),f.isReferenceObject()?this._calculateReferenceObject(f,u,d):this._calculateArrayObject(f,u,d)}_getReferenceCounts(e){let t=[{rowCount:1,columnCount:1}];return e.isReferenceObject()?t=[{rowCount:e.getRowCount(),columnCount:e.getColumnCount()}]:e.isCube()?t=e.getCubeValues().map(e=>({rowCount:e.getRowCount(),columnCount:e.getColumnCount()})):e.isArray()&&(t=[{rowCount:e.getRowCount(),columnCount:e.getColumnCount()}]),t}_calculateReferenceObject(e,t,n){let{startRow:r,endRow:i,startColumn:a,endColumn:o}=e.getRangePosition(),s=0,c=0,l=0,u=0;if(t===0?(s=r,c=i):s=c=r+t-1,n===0?(l=a,u=o):l=u=a+n-1,s>i||l>o)return E.create(p.REF);let d={startRow:s,startColumn:l,endRow:c,endColumn:u};return this.createReferenceObject(e,d)}_calculateArrayObject(e,t,n){return!e.isArray()||t===0&&n===0?e:t===0?e.slice(void 0,[n-1,n]):n===0?e.slice([t-1,t],void 0):e.get(t-1,n-1)}},sh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}isAddress(){return!0}calculate(e,t){if(e.isError())return e;if(t!=null&&t.isError())return t;let n=this.getZeroOrOneByOneDefault(t);n==null&&(n=1);let r=e;if(e.isArray()){let t=e.getRowCount(),n=e.getColumnCount();if(t>1||n>1)return e.map(()=>E.create(p.VALUE));r=e.getFirstCell()}return this._handleSingleObject(r,n)}_handleSingleObject(e,n){let r=`${e.getValue()}`;if(r.trim()===``)return E.create(p.REF);let i=this._convertToDefinedName(r);if(n===0){let{range:e,sheetName:t,unitId:n}=Zs(i),r=new ao(e);return r.setForcedUnitIdDirect(n),r.setForcedSheetName(t),this._setDefault(r)}if(vt(i))return this._setDefault(new oo(i));if(bt(i))return this._setDefault(new co(i));if(xt(i))return this._setDefault(new so(i));let{range:a,sheetName:o,unitId:s}=Gn(i);if(Number.isNaN(a.startRow)||a.endRow+1>t.MAX_ROW_COUNT||Number.isNaN(a.startColumn)||a.endColumn+1>t.MAX_COLUMN_COUNT)return E.create(p.REF);let c=new ao(a);return c.setForcedUnitIdDirect(s),c.setForcedSheetName(o),this._setDefault(c)}_setDefault(e){return this.unitId==null||this.subUnitId==null?E.create(p.REF):(e.setDefaultUnitId(this.unitId),e.setDefaultSheetId(this.subUnitId),e)}_convertToDefinedName(e){let t=this.getDefinedName(e);if(t==null)return e;let n=t.formulaOrRefString;return n==null?e:n.startsWith(_.EQUALS)?n.slice(1):n}},ch=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3),d(this,`needsExpandParams`,!0)}calculate(e,t,n){return e.isError()?e:t.isError()?E.create(p.REF):t.isArray()?n!=null&&n.isError()?n:t.getColumnCount()===1||t.getRowCount()===1?n!=null&&!n.isArray()?E.create(p.REF):this._handleVector(e,t,n):this._handleArray(e,t):E.create(p.VALUE)}_handleVector(e,t,n){let r=n;if(r==null)r=t;else if(r.getRowCount()!==t.getRowCount()||r.getColumnCount()!==t.getColumnCount())return E.create(p.REF);return e.isArray()?e.map(e=>this.binarySearch(e,t,r)):this.binarySearch(e,t,r)}_handleArray(e,t){let n=t.getRowCount(),r=t.getColumnCount(),i,a;return r>n?(i=t.slice([0,1]),a=t.slice([n-1,n])):(i=t.slice(void 0,[0,1]),a=t.slice(void 0,[r-1,r])),i==null||a==null?E.create(p.VALUE):e.isArray()?e.map(e=>this.binarySearch(e,i,a)):this.binarySearch(e,i,a)}},lh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){if(e.isError())return e;if(t.isError())return E.create(p.REF);if(!t.isArray())return E.create(p.VALUE);let r=t.getRowCount(),i=t.getColumnCount();if(r!==1&&i!==1||n!=null&&n.isError())return E.create(p.NA);let a=this.getMatchTypeValue(n);return a==null?E.create(p.VALUE):e.isArray()?e.map(e=>this._handleSingleObject(e,t,a)):this._handleSingleObject(e,t,a)}_handleSingleObject(e,t,n){let r=e.isNull()?R.create(0):e,i=this._getSearchModeValue(n),a=t.orderSearch(r,i);if(a==null)return E.create(p.NA);if(a instanceof E)return a;let o=t.getRowCount()===1?a.column+1:a.row+1;return R.create(o)}_getSearchModeValue(e){switch(e){case 1:return yr.MIN;case 0:return yr.NORMAL;case-1:return yr.MAX}}},uh=class extends no{constructor(e,t=[]){super(e),d(this,`_areas`,[]),this._areas=t}dispose(){this._areas.forEach(e=>{e.forEach(e=>e.dispose())}),this._areas=[],super.dispose()}getAreas(){return this._areas}setAreas(e){this._areas=e}addArea(e){Array.isArray(e)?this._areas.push(e):this._areas.push([e])}_flatAreas(){return this._areas.flat()}isMultiArea(){return!0}isRange(){return!1}isCell(){return!1}isRow(){return!1}isColumn(){return!1}getRowCount(){let e=0;for(let t of this._flatAreas())t.isError()||(e+=t.getRowCount());return e}getColumnCount(){let e=0;for(let t of this._flatAreas())t.isError()||(e+=t.getColumnCount());return e}isExceedRange(){return this._flatAreas().some(e=>e.isError()?!1:e.isExceedRange())}setRefOffset(e=0,t=0){super.setRefOffset(e,t),this._flatAreas().forEach(n=>{n.isError()||n.setRefOffset(e,t)})}_getReferenceArea(){return this._flatAreas().find(e=>!e.isError())}getUnitId(){var e,t;return(e=(t=this._getReferenceArea())==null?void 0:t.getUnitId())==null?super.getUnitId():e}getSheetId(){var e,t;return(e=(t=this._getReferenceArea())==null?void 0:t.getSheetId())==null?super.getSheetId():e}getActiveSheetRowCount(){var e,t;return(e=(t=this._getReferenceArea())==null?void 0:t.getActiveSheetRowCount())==null?0:e}getActiveSheetColumnCount(){var e,t;return(e=(t=this._getReferenceArea())==null?void 0:t.getActiveSheetColumnCount())==null?0:e}iterator(e){for(let t of this._areas){let n=!1;for(let r of t){if(r.isError())continue;let t=!1;if(r.iterator((r,i,a)=>{let o=e(r,i,a);return o===!1?(t=!0,n=!0,!1):o}),t)break}if(n)return}}getFirstCell(){let e=this._getReferenceArea();return e?e.getFirstCell():super.getFirstCell()}toArrayValueObject(){var e,t;let n=this._areas.length;if(n===0)return lo([],0,0);let r=(e=(t=this._areas[0])==null?void 0:t.length)==null?0:e,i=[];for(let e=0;e<n;e++){let t=this._areas[e];if(t){i[e]=i[e]||[];for(let n=0;n<r;n++){let r=t[n];if(!r)continue;if(r.isError()){i[e][n]=r;continue}let a=null;r.iterator(e=>(a=e==null?null:e,!1)),a!=null&&(i[e][n]=a),i[e][n]=Ua.create()}}}return lo(i,n,r)}getRangePosition(){let e=this._flatAreas();if(!e.length)return super.getRangePosition();let t=1/0,n=1/0,r=-1/0,i=-1/0;for(let a of e){if(a.isError())continue;let{startRow:e,startColumn:o,endRow:s,endColumn:c}=a.getRangePosition();!Number.isFinite(e)||!Number.isFinite(o)||!Number.isFinite(s)||!Number.isFinite(c)||(e<t&&(t=e),o<n&&(n=o),s>r&&(r=s),c>i&&(i=i<c?c:i))}return!Number.isFinite(t)||!Number.isFinite(n)||!Number.isFinite(r)||!Number.isFinite(i)?super.getRangePosition():{startRow:t,startColumn:n,endRow:r,endColumn:i}}toUnitRange(){return{range:this.getRangePosition(),sheetId:this.getSheetId(),unitId:this.getUnitId()}}getRangeData(){let e=this._flatAreas();if(!e.length)return super.getRangeData();let t=1/0,n=1/0,r=-1/0,i=-1/0;for(let a of e){if(a.isError())continue;let{startRow:e,startColumn:o,endRow:s,endColumn:c}=a.getRangeData();!Number.isFinite(e)||!Number.isFinite(o)||!Number.isFinite(s)||!Number.isFinite(c)||(e<t&&(t=e),o<n&&(n=o),s>r&&(r=s),c>i&&(i=c))}return!Number.isFinite(t)||!Number.isFinite(n)||!Number.isFinite(r)||!Number.isFinite(i)?super.getRangeData():{startRow:t,startColumn:n,endRow:r,endColumn:i}}},dh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,5),d(this,`needsReferenceObject`,!0)}isAddress(){return!0}calculate(e,t,n,r,i){if(e.isError())return e;if(t.isError())return t;if(n.isError())return n;if(r!=null&&r.isError())return r;if(i!=null&&i.isError())return i;if(!e.isReferenceObject())return E.create(p.VALUE);let a=e.getRowCount(),o=e.getColumnCount(),s=t;s.isReferenceObject()&&(s=s.toArrayValueObject());let c=n;c.isReferenceObject()&&(c=c.toArrayValueObject());let l=r==null?R.create(a):r;l.isReferenceObject()&&(l=l.toArrayValueObject()),l.isNull()&&(l=R.create(a));let u=i==null?R.create(o):i;u.isReferenceObject()&&(u=u.toArrayValueObject()),u.isNull()&&(u=R.create(o));let d=Math.max(s.isArray()?s.getRowCount():1,c.isArray()?c.getRowCount():1,l.isArray()?l.getRowCount():1,u.isArray()?u.getRowCount():1),f=Math.max(s.isArray()?s.getColumnCount():1,c.isArray()?c.getColumnCount():1,l.isArray()?l.getColumnCount():1,u.isArray()?u.getColumnCount():1);if(s=s,c=c,l=l,u=u,d===1&&f===1)return s=s.isArray()?s.get(0,0):s,c=c.isArray()?c.get(0,0):c,l=l.isArray()?l.get(0,0):l,u=u.isArray()?u.get(0,0):u,this._handleSingleObject(e,s,c,l,u);let m=V(d,f,s,E.create(p.NA)),h=V(d,f,c,E.create(p.NA)),g=V(d,f,l,E.create(p.NA)),_=V(d,f,u,E.create(p.NA)),v=[];return m.iterator((t,n,r)=>{let i=h.get(n,r),a=g.get(n,r),o=_.get(n,r);if(v[n]=v[n]||[],t==null){v[n][r]=E.create(p.NA);return}if(t.isError()){v[n][r]=t;return}if(i.isError()){v[n][r]=i;return}if(a.isError()){v[n][r]=a;return}if(o.isError()){v[n][r]=o;return}let s=this._handleSingleObject(e,t,i,a,o);v[n][r]=s}),new uh(``,v)}_handleSingleObject(e,n,r,i,a){let{startRow:o,startColumn:s}=e.getRangePosition(),c=n;if(c.isString()&&(c=c.convertToNumberObjectValue()),c.isError())return c;let l=r;if(l.isString()&&(l=l.convertToNumberObjectValue()),l.isError())return l;let u=+c.getValue(),d=+l.getValue();if(typeof u!=`number`||typeof d!=`number`)return E.create(p.VALUE);let f=o+u,m=s+d;if(f<0||m<0||f>=t.MAX_ROW_COUNT||m>=t.MAX_COLUMN_COUNT)return E.create(p.REF);let h=this.getIndexNumValue(i),g=this.getIndexNumValue(a);if(typeof h!=`number`||typeof g!=`number`)return E.create(p.VALUE);if(h===0||g===0)return E.create(p.REF);let _=h>0?f+h-1:f+h+1,v=g>0?m+g-1:m+g+1;if(_<0||v<0||_>=t.MAX_ROW_COUNT||v>=t.MAX_COLUMN_COUNT)return E.create(p.REF);let y={startRow:f<_?f:_,startColumn:m<v?m:v,endRow:f>_?f:_,endColumn:m>v?m:v};return this.createReferenceObject(e,y)}},fh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,1)}calculate(e){if(e==null)return R.create(this.row+1);if(e.isError())return e;if(!e.isArray())return E.create(p.NA);let t=e.getCurrentRow(),n=e.getRowCount(),r=[];for(let e=0;e<n;e++)r.push([R.create(t+e+1)]);let i={calculateValueList:r,rowCount:n,columnCount:1,unitId:this.unitId||``,sheetId:this.subUnitId||``,row:this.row,column:this.column};return B.create(i)}},ph=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isError())return e;if(e.isString()||e.isNumber()||e.isBoolean())return R.create(1);if(!e.isArray())return E.create(p.NA);let t=e.getRowCount();return R.create(t)}},mh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=t==null?R.create(1):t,a=n==null?R.create(1):n,o=r==null?L.create(!1):r;if(i.isNull()&&(i=R.create(1)),o.isArray()){let t=o.getRowCount(),n=o.getColumnCount();if(t===1&&n===1){let t=o.get(0,0);return this._handleSingleObject(e,i,a,t)}return o.map(t=>{let n=this._handleSingleObject(e,i,a,t);return n.isArray()?n.get(0,0):n})}return this._handleSingleObject(e,i,a,o)}_handleSingleObject(e,t,n,r){if(e.isError())return e;let i=e.isArray()?e.getRowCount():1,a=e.isArray()?e.getColumnCount():1,o=this._checkArrayError(t);if(o.isError())return o;let s=Math.floor(+o.getValue());if(s<1)return E.create(p.VALUE);let c=this._checkArrayError(n);if(c.isError())return c;let l=Math.floor(+c.getValue());if(l!==-1&&l!==1)return E.create(p.VALUE);let u=r;if(u.isString()&&(u=u.convertToNumberObjectValue()),u.isError())return u;if(!e.isArray()||i===1&&a===1)return e;let d=+u.getValue();return this._getResult(e,s,l,d,i,a)}_checkArrayError(e){let t=e;if(t.isArray()){let e=t.getRowCount(),n=t.getColumnCount();if(e>1||n>1)return E.create(p.VALUE);t=t.get(0,0)}return t.isString()&&(t=t.convertToNumberObjectValue()),t}_getResult(e,t,n,r,i,a){if(r){if(t>i)return E.create(p.VALUE);let r=e.transpose().getArrayValue();return r.sort(this._sort(t-1,n)),B.create({calculateValueList:r,rowCount:r.length,columnCount:r[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column}).transpose()}else{if(t>a)return E.create(p.VALUE);let r=e.getArrayValue();return r.sort(this._sort(t-1,n)),B.create({calculateValueList:r,rowCount:r.length,columnCount:r[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}}_sort(e,t=1){let n=br();return t===1?this._sortAsc(e,n):this._sortDesc(e,n)}_sortAsc(e,t){return(n,r)=>{let i=n[e],a=r[e];if(i==null||i.isNull())return 1;if(a==null||a.isNull())return-1;if(i.isError()&&a.isError())return 0;if(i.isError())return 1;if(a.isError())return-1;let o=i.getValue(),s=a.getValue();return i.isBoolean()&&o===!0?1:a.isBoolean()&&s===!0?-1:i.isBoolean()&&o===!1?1:a.isBoolean()&&s===!1?-1:i.isNumber()&&a.isNumber()?o-+s:t(o,s)}}_sortDesc(e,t){return(n,r)=>{let i=n[e],a=r[e];if(i==null||i.isNull())return 1;if(a==null||a.isNull())return-1;if(i.isError()&&a.isError())return 0;if(i.isError())return-1;if(a.isError())return 1;let o=i.getValue(),s=a.getValue();return i.isBoolean()&&o===!0?-1:a.isBoolean()&&s===!0?1:i.isBoolean()&&o===!1?-1:a.isBoolean()&&s===!1?1:i.isNumber()&&a.isNumber()?s-+o:t(s,o)}}},hh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,255)}calculate(e,...t){t.length===1&&t.push(R.create(1));let n=this._getVariantsError(e,...t),{maxRowLength:r,maxColumnLength:i}=_o(t);if(n.isError()){let e=V(r,i,n);return r===1&&i===1?e.get(0,0):e}let a=t.map((e,t)=>t%2==0?e:V(r,i,e,E.create(p.NA))),o=this._getResultArray(e,a,r,i);return r===1&&i===1?o[0][0]:B.create({calculateValueList:o,rowCount:o.length,columnCount:o[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}_getVariantsError(e,...t){if(e.isError())return e;for(let e=0;e<t.length;e++){let n=t[e];if(n.isError())return n}if(t.length<2||t.length%2!=0)return E.create(p.VALUE);let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t[0].isArray()?t[0].getRowCount():1,a=t[0].isArray()?t[0].getColumnCount():1;if((i>1||a>1)&&(i>1&&a>1||i===1&&a!==r||a===1&&i!==n))return E.create(p.VALUE);for(let e=2;e<t.length;e++){if(e%2==1)continue;let n=t[e].isArray()?t[e].getRowCount():1,r=t[e].isArray()?t[e].getColumnCount():1;if(n!==i||r!==a)return E.create(p.VALUE)}return L.create(!0)}_getResultArray(e,t,n,r){let i=e.isArray()?e.getRowCount():1,a=e.isArray()?e.getColumnCount():1,o=t[0].isArray()?t[0].getRowCount():1,s=t[0].isArray()?t[0].getColumnCount():1,c=[];for(let l=0;l<n;l++){c[l]=[];for(let u=0;u<r;u++){let{isError:d,errorObject:f,byArrays:p,sortOrders:m}=this._getByArraysAndSortOrders(t,l,u,s);if(d){c[l].push(f);continue}if(!e.isArray()||i===1&&a===1){c[l].push(e);continue}let h=e.getArrayValue();o===1&&s===1||(o===1?(h=h.concat(p),h=this._transposeArray(h),h.sort(this._sort(i,m)),h=this._transposeArray(h).slice(0,i)):s===1&&(h=this._transposeArray(h),h=h.concat(p),h=this._transposeArray(h),h.sort(this._sort(a,m)),h=h.map(e=>e.slice(0,a))));let g=B.create({calculateValueList:h,rowCount:h.length,columnCount:h[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column});if(n>1||r>1){c[l].push(g.get(0,0));continue}c[l].push(g)}}return c}_getByArraysAndSortOrders(e,t,n,r){let i=[],a=[],o=!1,s=null;for(let c=0;c<e.length;c++){if(c%2==1)continue;let l=e[c],u=e[c+1].get(t,n);if(u.isString()&&(u=u.convertToNumberObjectValue()),u.isError()){o=!0,s=u;break}let d=Math.floor(+u.getValue());if(d!==-1&&d!==1){o=!0,s=E.create(p.VALUE);break}if(a.push(d),l.isArray()){let e=l.getArrayValue();r===1&&(e=this._transposeArray(e)),i.push(e[0])}else i.push([l])}return{isError:o,errorObject:s,byArrays:i,sortOrders:a}}_transposeArray(e){let t=e.length,n=e[0].length,r=[];for(let i=0;i<n;i++){r[i]=[];for(let n=0;n<t;n++)r[i][n]=e[n][i]}return r}_sort(e,t){let n=br();return(r,i)=>{let a=r[e],o=i[e],s=this._compare(a,o,t[0],n);if(s===0&&t.length>1){for(let c=1;c<t.length;c++)if(a=r[e+c],o=i[e+c],s=this._compare(a,o,t[c],n),s!==0)return s}return s}}_compare(e,t,n,r){return n===1?this._asc(e,t,r):this._desc(e,t,r)}_asc(e,t,n){if(e==null||e.isNull())return 1;if(t==null||t.isNull())return-1;if(e.isError()&&t.isError())return 0;if(e.isError())return 1;if(t.isError())return-1;let r=e.getValue(),i=t.getValue();return e.isBoolean()&&r===!0?1:t.isBoolean()&&i===!0?-1:e.isBoolean()&&r===!1?1:t.isBoolean()&&i===!1?-1:e.isNumber()&&t.isNumber()?r-+i:n(r,i)}_desc(e,t,n){if(e==null||e.isNull())return 1;if(t==null||t.isNull())return-1;if(e.isError()&&t.isError())return 0;if(e.isError())return-1;if(t.isError())return 1;let r=e.getValue(),i=t.getValue();return e.isBoolean()&&r===!0?-1:t.isBoolean()&&i===!0?1:e.isBoolean()&&r===!1?-1:t.isBoolean()&&i===!1?1:e.isNumber()&&t.isNumber()?i-+r:n(i,r)}},gh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=e.isArray()?e.getRowCount():1,i=e.isArray()?e.getColumnCount():1,a=t,o=n==null?R.create(i):n;t.isNull()&&(a=R.create(r)),o.isNull()&&(o=R.create(i));let s=Math.max(a.isArray()?a.getRowCount():1,o.isArray()?o.getRowCount():1),c=Math.max(a.isArray()?a.getColumnCount():1,o.isArray()?o.getColumnCount():1),l=V(s,c,a,E.create(p.NA)),u=V(s,c,o,E.create(p.NA));if(s>1||c>1)return l.mapValue((t,n,a)=>{let o=u.get(n,a);if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);let{isError:s,errorObject:c}=this._checkRowsColumns(t,o,r,i);return s?c:e.isArray()?E.create(p.VALUE):e});if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);let d=a.isArray()?a.get(0,0):a,f=o.isArray()?o.get(0,0):o,{isError:m,errorObject:h,rowsValue:g,columnsValue:_}=this._checkRowsColumns(d,f,r,i);return m?h:this._getResultArray(e,g,_,r,i)}_checkRowsColumns(e,t,n,r){if(e.isError())return{isError:!0,errorObject:e};if(t.isError())return{isError:!0,errorObject:t};let i=Math.trunc(+e.getValue()),a=Math.trunc(+t.getValue());return Number.isNaN(i)||Number.isNaN(a)?{isError:!0,errorObject:E.create(p.VALUE)}:Math.abs(i)===0||Math.abs(a)===0?{isError:!0,errorObject:E.create(p.CALC)}:(i>n&&(i=n),a>r&&(a=r),{isError:!1,rowsValue:i,columnsValue:a})}_getResultArray(e,t,n,r,i){if(!e.isArray())return e;let a=t>=0?[0,t]:[r+t,r],o=n>=0?[0,n]:[i+n,i],s;return s=t===r&&n===i?e:t===r?e.slice(void 0,o):n===i?e.slice(a,void 0):e.slice(a,o),s=s.map(e=>e.isNull()?R.create(0):e),t===1&&n===1?s.get(0,0):s}},_h=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,3)}calculate(e,t,n){let r=t==null?R.create(0):t,i=n==null?L.create(!1):n,a=Math.max(r.isArray()?r.getRowCount():1,i.isArray()?i.getRowCount():1),o=Math.max(r.isArray()?r.getColumnCount():1,i.isArray()?i.getColumnCount():1),s=V(a,o,r,E.create(p.NA)),c=V(a,o,i,E.create(p.NA)),l=s.mapValue((t,n,r)=>{let i=c.get(n,r);if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);if(t.isError())return t;if(i.isError())return i;let s=Math.trunc(+t.getValue()),l=+i.getValue();if(Number.isNaN(s)||s<0||s>3||Number.isNaN(l))return E.create(p.VALUE);if(!e.isArray())return e;let u=[];return u=l?this._getArrayValueByColumn(e,s):this._getArrayValueByRow(e,s),u.length===0?E.create(p.CALC):a>1||o>1||u.length===1?u[0]:B.create({calculateValueList:u.map(e=>[e]),rowCount:u.length,columnCount:1,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})});return a===1&&o===1?l.get(0,0):l}_getArrayValueByColumn(e,t){let n=e,r=n.getRowCount(),i=n.getColumnCount(),a=[];for(let e=0;e<i;e++)for(let i=0;i<r;i++){let r=n.get(i,e);this._isIgnore(r,t)||a.push(r.isNull()?R.create(0):r)}return a}_getArrayValueByRow(e,t){let n=e,r=n.getRowCount(),i=n.getColumnCount(),a=[];for(let e=0;e<r;e++)for(let r=0;r<i;r++){let i=n.get(e,r);this._isIgnore(i,t)||a.push(i.isNull()?R.create(0):i)}return a}_isIgnore(e,t){switch(t){case 0:return!1;case 1:return e.isNull();case 2:return e.isError();case 3:return e.isNull()||e.isError();default:return!1}}},vh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,3)}calculate(e,t,n){let r=t==null?R.create(0):t,i=n==null?L.create(!1):n,a=Math.max(r.isArray()?r.getRowCount():1,i.isArray()?i.getRowCount():1),o=Math.max(r.isArray()?r.getColumnCount():1,i.isArray()?i.getColumnCount():1),s=V(a,o,r,E.create(p.NA)),c=V(a,o,i,E.create(p.NA)),l=s.mapValue((t,n,r)=>{let i=c.get(n,r);if(e.isError())return e;if(t.isError())return t;if(i.isError())return i;let s=Math.trunc(+t.getValue()),l=+i.getValue();if(Number.isNaN(s)||s<0||s>3||Number.isNaN(l)||e.isNull())return E.create(p.VALUE);if(!e.isArray())return e;let u=[];return u=l?this._getArrayValueByColumn(e,s):this._getArrayValueByRow(e,s),u.length===0?E.create(p.CALC):a>1||o>1||u.length===1?u[0]:B.create({calculateValueList:[u],rowCount:1,columnCount:u.length,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})});return a===1&&o===1?l.get(0,0):l}_getArrayValueByColumn(e,t){let n=e,r=n.getRowCount(),i=n.getColumnCount(),a=[];for(let e=0;e<i;e++)for(let i=0;i<r;i++){let r=n.get(i,e);this._isIgnore(r,t)||a.push(r.isNull()?R.create(0):r)}return a}_getArrayValueByRow(e,t){let n=e,r=n.getRowCount(),i=n.getColumnCount(),a=[];for(let e=0;e<r;e++)for(let r=0;r<i;r++){let i=n.get(e,r);this._isIgnore(i,t)||a.push(i.isNull()?R.create(0):i)}return a}_isIgnore(e,t){switch(t){case 0:return!1;case 1:return e.isNull();case 2:return e.isError();case 3:return e.isNull()||e.isError();default:return!1}}},yh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isError())return e;if(e.isArray()){let t=e.getRowCount(),n=e.getColumnCount();return t===1&&n===1?e.get(0,0):e.transpose()}return e}},bh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,3)}calculate(e,t,n){let r=t==null?L.create(!1):t,i=n==null?L.create(!1):n,a=e.isArray()?e.getRowCount():1,o=e.isArray()?e.getColumnCount():1,s=Math.max(r.isArray()?r.getRowCount():1,i.isArray()?i.getRowCount():1),c=Math.max(r.isArray()?r.getColumnCount():1,i.isArray()?i.getColumnCount():1),l=V(s,c,r,E.create(p.NA)),u=V(s,c,i,E.create(p.NA)),d=l.map((t,n,r)=>{let i=t,l=u.get(n,r);if(e.isError())return e;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(l.isString()&&(l=l.convertToNumberObjectValue()),l.isError())return l;let d=+i.getValue(),f=+l.getValue(),p;return p=!d&&a===1||d&&o===1?e:this._getResult(e,d,f),(s>1||c>1)&&p!=null&&p.isArray()?p.get(0,0):p});return s===1&&c===1?d.get(0,0):d}_getResult(e,t,n){let r=e.isArray()?e.getRowCount():1,i=e.isArray()?e.getColumnCount():1,a=e.getArrayValue(),o=r,s=i;t&&(a=this._transposeArray(a),o=i,s=r);let c=this._getRepeatRows(a,o,s);if(c.length>0){let e=[];c.forEach(t=>{t.forEach((t,r)=>{(r!==0||n)&&e.push(t)})}),a=a.filter((t,n)=>!e.includes(n))}return a.length===0?E.create(p.CALC):(t&&(a=this._transposeArray(a)),B.create({calculateValueList:a,rowCount:a.length,columnCount:a[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column}))}_getRepeatRows(e,t,n){let r=[];for(let i=0;i<n;i++)if(i===0){let n=Array(t).fill(null).map((t,n)=>({r:n,valueObject:e[n][i]}));r=this._getRepeatRowsByObjects(n)}else{if(r.length===0)break;let t=[];r.forEach(n=>{let r=n.map(t=>({r:t,valueObject:e[t][i]})),a=this._getRepeatRowsByObjects(r);t=t.concat(a)}),r=t}return r}_getRepeatRowsByObjects(e){let n=new Map;return e.forEach(e=>{let r=e.r,i=e.valueObject,a=i.getValue();if(i.isNull()?a=null:i.isString()&&(0,t.isRealNum)(a)&&(a=+a),!n.has(a))n.set(a,[r]);else{let e=n.get(a);e.push(r),n.set(a,e)}}),Array.from(n.values()).filter(e=>e.length>1)}_transposeArray(e){let t=e.length,n=e[0].length,r=[];for(let i=0;i<n;i++){r[i]=[];for(let n=0;n<t;n++)r[i][n]=e[n][i]}return r}},xh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){if(e.isError())return e;if(t.isError())return t;if(!t.isArray())return E.create(p.VALUE);if(n.isError())return n;if(r!=null&&r.isError())return r;let i=r==null?L.create(!0):r;return ho(e)&&ho(i)&&n.isArray()?this._handleArrayColIndexNum(e,t,n,i):this._handleNonArrayColIndexNum(e,t,n,i)}_handleArrayColIndexNum(e,t,n,r){let i=e.isArray()?e.getFirstCell():e,a=this.getZeroOrOneByOneDefault(r);if(a==null)return E.create(p.VALUE);let o,s=[];return n.iterator((e,n,r)=>{if(e==null)return o=E.create(p.VALUE),!1;let c=this._handleTableArray(i,t,e,a);if(c.isError())return o=c,!1;s[n]===void 0&&(s[n]=[]),s[n][r]=c}),o||lo(s,s.length,s[0].length,this.unitId||``,this.subUnitId||``)}_handleNonArrayColIndexNum(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e),s=V(i,a,r);return o.map((e,r,i)=>{if(e.isError())return e;let a=s.get(r,i);if(a==null)return E.create(p.VALUE);if(a.isError())return a;let o=this.getZeroOrOneByOneDefault(a);return o==null?E.create(p.VALUE):this._handleTableArray(e,t,n,o)})}_handleTableArray(e,t,n,r){let i=this.getIndexNumValue(n);if(i instanceof E)return i;if(i=Math.floor(i),i<1)return E.create(p.VALUE);let a=t.slice(void 0,[0,1]);if(a==null)return E.create(p.VALUE);let o=t.slice(void 0,[i-1,i]);return o==null?E.create(p.REF):this._handleSingleObject(e,a,o,r)}_handleSingleObject(e,t,n,r){return r===0?this.equalSearch(e,t,n):this.binarySearch(e,t,n)}},Sh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=Math.max(...e.map(e=>e.isArray()?e.getColumnCount():1)),n=[];for(let r=0;r<e.length;r++){let i=e[r];if(i.isError())return i;let a=i.isArray()?i.getRowCount():1,o=i.isArray()?i.getColumnCount():1;for(let e=0;e<a;e++){let r=[];for(let n=0;n<t;n++){let t=i;i.isArray()&&(t=i.get(e,n)),n>o-1||!t?r.push(E.create(p.NA)):r.push(t)}n.push(r)}}return B.create({calculateValueList:n,rowCount:n.length,columnCount:n[0].length||0,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})}},Ch=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?E.create(p.NA):n;r.isNull()&&(r=E.create(p.NA));let i=e.isArray()?e.getRowCount():1,a=e.isArray()?e.getColumnCount():1,o=Math.max(t.isArray()?t.getRowCount():1,r.isArray()?r.getRowCount():1),s=Math.max(t.isArray()?t.getColumnCount():1,r.isArray()?r.getColumnCount():1),c=V(o,s,t,E.create(p.NA)),l=V(o,s,r,E.create(p.NA)),u=c.mapValue((t,n,r)=>{let c=l.get(n,r);if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);if(t.isError())return t;let u=Math.trunc(+t.getValue());if(i>1&&a>1||Number.isNaN(u))return E.create(p.VALUE);if(u<1)return E.create(p.NUM);let d=e.isArray()?e.getArrayValue().flat():[e],f=this._getWrapArray(d,u,c);return o>1||s>1||f.length===1&&f[0].length===1?f[0][0]:B.create({calculateValueList:f,rowCount:f.length,columnCount:f[0].length,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})});return o===1&&s===1?u.get(0,0):u}_getWrapArray(e,t,n){let r=Math.ceil(e.length/t),i=r>1?t:e.length,a=[];for(let t=0;t<r;t++)for(let r=0;r<i;r++){a[r]||(a[r]=[]);let o=t*i+r;o<e.length?a[r].push(e[o].isNull()?R.create(0):e[o]):a[r].push(n)}return a}},wh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?E.create(p.NA):n;r.isNull()&&(r=E.create(p.NA));let i=e.isArray()?e.getRowCount():1,a=e.isArray()?e.getColumnCount():1,o=Math.max(t.isArray()?t.getRowCount():1,r.isArray()?r.getRowCount():1),s=Math.max(t.isArray()?t.getColumnCount():1,r.isArray()?r.getColumnCount():1),c=V(o,s,t,E.create(p.NA)),l=V(o,s,r,E.create(p.NA)),u=c.mapValue((t,n,r)=>{let c=l.get(n,r);if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);if(t.isError())return t;let u=Math.trunc(+t.getValue());if(i>1&&a>1||Number.isNaN(u))return E.create(p.VALUE);if(u<1)return E.create(p.NUM);let d=e.isArray()?e.getArrayValue().flat():[e],f=this._getWrapArray(d,u,c);return o>1||s>1||f.length===1&&f[0].length===1?f[0][0]:B.create({calculateValueList:f,rowCount:f.length,columnCount:f[0].length,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column})});return o===1&&s===1?u.get(0,0):u}_getWrapArray(e,t,n){let r=Math.ceil(e.length/t),i=r>1?t:e.length,a=[];for(let t=0;t<r;t++){let r=[];for(let a=0;a<i;a++){let o=t*i+a;o<e.length?r.push(e[o].isNull()?R.create(0):e[o]):r.push(n)}a.push(r)}return a}},Th=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let o=r==null?E.create(p.NA):r;r!=null&&r.isNull()&&(o=E.create(p.NA));let s=i==null?R.create(0):i;i!=null&&i.isNull()&&(s=R.create(0));let c=a==null?R.create(1):a;if(a!=null&&a.isNull()&&(c=R.create(1)),e.isError())return e;let l=t.isArray()?t.getRowCount():1,u=t.isArray()?t.getColumnCount():1,d=n.isArray()?n.getRowCount():1,f=n.isArray()?n.getColumnCount():1;if(l!==1&&u!==1||l===1&&u>1&&u!==f||u===1&&l>1&&l!==d)return E.create(p.VALUE);if(s.isError())return s;if(c.isError())return c;let m=this.getIndexNumValue(s);if(m instanceof E)return m;let h=this.getIndexNumValue(c);return h instanceof E?h:this._getResult(e,yo(t),yo(n),o,m,h,l,u,d,f)}_getResult(e,t,n,r,i,a,o,s,c,l){let u=e.isArray()?e.getRowCount():1,d=e.isArray()?e.getColumnCount():1;if(u>1||d>1){let s;return s=o===1?n.slice([0,1]):n.slice(void 0,[0,1]),s==null?E.create(p.NA):e.map(e=>{let n=this._checkErrorCombination(i,a);if(n)return n;let o=this._handleSingleObject(e,t,s,i,a);return o.isError()?r:o})}let f=e.isArray()?e.get(0,0):e;if(s===l&&o===c){let e=this._checkErrorCombination(i,a);if(e)return e;let o=this._handleSingleObject(f,t,n,i,a);return o.isError()?r:o}let m=0;s===l&&(m=1);let h=this._handleExpandObject(f,t,n,i,a,m);return h==null?E.create(p.NA):h}_handleExpandObject(e,t,n,r,i,a=0){if((i===2||i===-2)&&r!==2){let o=Dr(i),s=Er(r);return this.binarySearchExpand(e,t,n,a,o,s)}return r===2?this.fuzzySearchExpand(e,t,n,i!==-1,a):r===-1||r===1?this.orderSearchExpand(e,t,n,r===1?yr.MAX:yr.MIN,i===-1,a):this.equalSearchExpand(e,t,n,i!==-1,a)}_handleSingleObject(e,t,n,r,i){if((i===2||i===-2)&&r!==2){let a=Dr(i),o=Er(r);return this.binarySearch(e,t,n,a,o)}return r===2?this.fuzzySearch(e,t,n,i!==-1):r===-1||r===1?this.orderSearch(e,t,n,r===1?yr.MAX:yr.MIN,i===-1):this.equalSearch(e,t,n,i!==-1)}_checkErrorCombination(e,t){return e===2&&(t===-2||t===2)?E.create(p.VALUE):null}},Eh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=R.create(0);n&&!n.isNull()&&(i=n);let a=R.create(1);r&&!r.isNull()&&(a=r);let o=Math.max(e.isArray()?e.getRowCount():1,i.isArray()?i.getRowCount():1,a.isArray()?a.getRowCount():1),s=Math.max(e.isArray()?e.getColumnCount():1,i.isArray()?i.getColumnCount():1,a.isArray()?a.getColumnCount():1),c=V(o,s,e,E.create(p.NA)),l=V(o,s,i,E.create(p.NA)),u=V(o,s,a,E.create(p.NA)),d=c.mapValue((e,n,r)=>{if(e.isError())return e;let i=l.get(n,r),a=u.get(n,r);return i.isError()?i:a.isError()?a:this._handleSingleObject(e,t,i,a)});return o===1&&s===1?d.get(0,0):d}_handleSingleObject(e,t,n,r){let i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1;if(i!==1&&a!==1)return E.create(p.VALUE);let o=n;if((n.isString()||n.isBoolean()||n.isNull())&&(o=n.convertToNumberObjectValue()),o.isError())return o;let s=r;if((r.isString()||r.isBoolean()||r.isNull())&&(s=r.convertToNumberObjectValue()),s.isError())return s;let c=o.getValue(),l=s.getValue();return![-1,0,1,2].includes(c)||![-1,1,2].includes(l)?E.create(p.VALUE):this._getResult(e,t,c,l)}_getResult(e,t,n,r){let i=yo(t),a;if((r===2||r===-2)&&n!==2){let t=Dr(r),o=Er(n);a=i.binarySearch(e,t,o)}else if(n===2){let t=i.compare(e,v.EQUALS),n;if(n=r===-1?t.getLastTruePosition():t.getFirstTruePosition(),n==null)return E.create(p.NA);a=i.getRowCount()===1?n.column:n.row}else if(n===-1||n===1){let t=i.orderSearch(e,n===1?yr.MAX:yr.MIN,r===-1);if(t==null)return E.create(p.NA);if(t instanceof E)return t;a=i.getRowCount()===1?t.column:t.row}else{let t=i.isEqual(e),n;if(n=r===-1?t.getLastTruePosition():t.getFirstTruePosition(),n==null)return E.create(p.NA);a=i.getRowCount()===1?n.column:n.row}return a==null?E.create(p.NA):R.create(a+1)}};let Dh=[[Wm,G.ADDRESS],[Km,G.AREAS],[qm,G.CHOOSE],[Jm,G.CHOOSECOLS],[Ym,G.CHOOSEROWS],[Xm,G.COLUMN],[Zm,G.COLUMNS],[Qm,G.DROP],[$m,G.EXPAND],[eh,G.FILTER],[th,G.FORMULATEXT],[nh,G.HLOOKUP],[rh,G.HSTACK],[ih,G.HYPERLINK],[ah,G.IMAGE],[oh,G.INDEX],[sh,G.INDIRECT],[ch,G.LOOKUP],[lh,G.MATCH],[dh,G.OFFSET],[fh,G.ROW],[ph,G.ROWS],[mh,G.SORT],[hh,G.SORTBY],[gh,G.TAKE],[_h,G.TOCOL],[vh,G.TOROW],[yh,G.TRANSPOSE],[bh,G.UNIQUE],[xh,G.VLOOKUP],[Sh,G.VSTACK],[Ch,G.WRAPCOLS],[wh,G.WRAPROWS],[Th,G.XLOOKUP],[Eh,G.XMATCH]];var Oh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.abs()}},kh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.acos()}},Ah=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.acosh()}},jh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.isArray()?t.map(e=>e.isError()?e:Mh(e)):Mh(t)}};function Mh(e){let t=e.getValue();if(e.isBoolean()&&(t=t?1:0),!Number.isFinite(t))return E.create(p.VALUE);t=Number(t);let n=Math.atan(1/t);return t<0&&(n+=Math.PI),Number.isNaN(n)?E.create(p.VALUE):R.create(n)}var Nh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.isArray()?t.map(e=>e.isError()?e:Ph(e)):Ph(t)}};function Ph(e){let t=e.getValue();if(e.isBoolean()&&(t=t?1:0),!Number.isFinite(t))return E.create(p.VALUE);if(t=Number(t),Math.abs(t)<=1)return E.create(p.NUM);let n=1/2*Math.log((t+1)/(t-1));return Number.isNaN(n)?E.create(p.VALUE):R.create(n)}let Fh={1:Q.AVERAGE,2:Q.COUNT,3:Q.COUNTA,4:Q.MAX,5:Q.MIN,6:Q.PRODUCT,7:Q.STDEV_S,8:Q.STDEV_P,9:Q.SUM,10:Q.VAR_S,11:Q.VAR_P,12:Q.MEDIAN,13:Q.MODE_SNGL};var Ih=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,255),d(this,`needsReferenceObject`,!0),d(this,`needsFilteredOutRows`,!0),d(this,`needsFormulaDataModel`,!0)}calculate(e,t,...n){let{isError:r,multiAreaRefs:i,normalRefs:a}=Al(n),o;o=e.isReferenceObject()?e.toArrayValueObject():e;let s;s=t.isReferenceObject()?t.toArrayValueObject():t;let c=Math.max(o.isArray()?o.getRowCount():1,s.isArray()?s.getRowCount():1),l=Math.max(o.isArray()?o.getColumnCount():1,s.isArray()?s.getColumnCount():1),u=V(c,l,o,E.create(p.NA)),d=V(c,l,s,E.create(p.NA)),f=u.mapValue((e,t,o)=>{if(e.isError())return e;let s=d.get(t,o);return s.isError()?s:i.length>0?E.create(p.VALUE):this._handleSingleObject(e,s,n,r,a)});return f.getRowCount()===1&&f.getColumnCount()===1?f.get(0,0):f}_handleSingleObject(e,t,n,r,i){let a=e;if(e.isString()&&(a=e.convertToNumberObjectValue()),a.isError())return a;let o=Math.floor(+a.getValue());if(o<1||o>19||o>=1&&o<=13&&r||o>=14&&o<=19&&n.length!==2)return E.create(p.VALUE);let s=t;if(t.isString()&&(s=t.convertToNumberObjectValue()),s.isError())return s;let c=Math.floor(+s.getValue());if(c<0||c>7)return E.create(p.VALUE);let l=this._getAggregateOptions(c);return o>=14&&o<=19?this._handleLargeSmallPercentileQuartile(o,l,n[0],n[1]):Pl({type:Fh[o],...l,formulaDataModel:this._formulaDataModel},i)}_getAggregateOptions(e){switch(e){case 1:return{ignoreRowHidden:!0,ignoreErrorValues:!1,ignoreNested:!0};case 2:return{ignoreRowHidden:!1,ignoreErrorValues:!0,ignoreNested:!0};case 3:return{ignoreRowHidden:!0,ignoreErrorValues:!0,ignoreNested:!0};case 4:return{ignoreRowHidden:!1,ignoreErrorValues:!1,ignoreNested:!1};case 5:return{ignoreRowHidden:!0,ignoreErrorValues:!1,ignoreNested:!1};case 6:return{ignoreRowHidden:!1,ignoreErrorValues:!0,ignoreNested:!1};case 7:return{ignoreRowHidden:!0,ignoreErrorValues:!0,ignoreNested:!1};default:return{ignoreRowHidden:!1,ignoreErrorValues:!1,ignoreNested:!0}}}_handleLargeSmallPercentileQuartile(e,t,n,r){let i;if(i=r.isReferenceObject()?r.toArrayValueObject():r,i.isError())return i;if(i.isArray()){let e=i.getRowCount(),t=i.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);i=i.get(0,0)}let a=Fl(n,t,this._formulaDataModel);if(!Array.isArray(a))return a;let o=+i.getValue();switch(e){case 14:return Ll(a,o);case 15:return Rl(a,o);case 16:return zl(a,o);case 17:return Vl(a,o);case 18:return Bl(a,o);case 19:return Hl(a,o);default:return E.create(p.VALUE)}}},Lh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;if(e.isNull())return R.create(0);if(e.isBoolean()||e.isNumber())return E.create(p.VALUE);let t=e.getValue().toLocaleString().toLocaleUpperCase();if(t.length>255)return E.create(p.VALUE);let n=t.startsWith(`-`);n&&(t=t.slice(1));let r=0;for(let e=0;e<t.length;e++){let n=Nc.get(t[e])||0,i=Nc.get(t[e+1])||0,a=Nc.get(t[e+2])||0,o=Nc.get(t[e+3])||0;if(!n||a>=i&&a>n||n===i&&n===a&&n===o||n===i/2)return E.create(p.VALUE);n<i?r-=n:r+=n}return R.create(n?-r:r)}},Rh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.asin()}},zh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.asinh()}},Bh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.atan()}},Vh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e,r=t;return n.isString()&&(n=n.convertToNumberObjectValue()),n.isError()?n:(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError()?r:r.atan2(n))}},Hh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.atanh()}},Uh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?R.create(0):n;if(e.isError())return e;if(t.isError())return t;if(r.isError())return r;let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,r,E.create(p.NA)),l=o.map((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n);return this._handleSingleObject(e,r,i)});return l.getRowCount()===1&&l.getColumnCount()===1?l.getArrayValue()[0][0]:l}_handleSingleObject(e,t,n){let r=e;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let i=t;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;let a=n;if(a.isString()&&(a=a.convertToNumberObjectValue()),a.isError())return a;let o=Math.floor(+r.getValue()),s=Math.floor(+i.getValue()),c=Math.floor(+a.getValue());if(o<0||o>=2**53||s<2||s>36||c<0)return E.create(p.NUM);let l=o.toString(s);return l.length<c&&(l=Array(c-l.length+1).join(`0`)+l),z.create(l.toLocaleUpperCase())}},Wh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.map((e,t,n)=>{let r=e,i=a.get(t,n);if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;let o=+r.getValue(),s=+i.getValue();if(o>0&&s<0)return E.create(p.NUM);if(o===0||s===0)return R.create(0);let c=ka(o/s,0)*s;return R.create(c)});return o.getRowCount()===1&&o.getColumnCount()===1?o.getArrayValue()[0][0]:o}},Gh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,3)}calculate(e,t,n){let r=t==null?R.create(1):t,i=n==null?R.create(0):n;if(e.isError())return e;if(r.isError())return r;if(i.isError())return i;let a=Math.max(e.isArray()?e.getRowCount():1,r.isArray()?r.getRowCount():1,i.isArray()?i.getRowCount():1),o=Math.max(e.isArray()?e.getColumnCount():1,r.isArray()?r.getColumnCount():1,i.isArray()?i.getColumnCount():1),s=V(a,o,e,E.create(p.NA)),c=V(a,o,r,E.create(p.NA)),l=V(a,o,i,E.create(p.NA)),u=s.map((e,t,n)=>{let r=e,i=c.get(t,n),a=l.get(t,n);if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(a.isString()&&(a=a.convertToNumberObjectValue()),a.isError())return a;let o=+r.getValue(),s=+i.getValue(),u=+a.getValue();return o===0||s===0?R.create(0):this._getResult(o,s,u)});return a===1&&o===1?u.get(0,0):u}_getResult(e,t,n){let r;return r=e<0&&n!==0?(t<0?ka(Math.abs(e)/Math.abs(t),0):-ka(Math.abs(e)/t,0))*t:(t<0?-ka(e/Math.abs(t),0):ka(e/t,0))*t,R.create(r)}},Kh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(1):t;if(e.isError())return e;if(n.isError())return n;let r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.map((e,t,n)=>{let r=o.get(t,n),i=e;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let a=+i.getValue(),s=+r.getValue();if(a===0||s===0)return R.create(0);let c=(s<0?-ka(a/Math.abs(s),0):ka(a/s,0))*s;return R.create(c)});return r===1&&i===1?s.get(0,0):s}},qh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=e,i=a.get(t,n);if(r.isString()&&(r=r.convertToNumberObjectValue()),i.isString()&&(i=i.convertToNumberObjectValue()),r.isError())return r;if(i.isError())return i;let o=Math.floor(+r.getValue()),s=Math.floor(+i.getValue());if(o<0||s<0||o<s)return E.create(p.NUM);let c=hc(o,s);return Number.isNaN(c)||!Number.isFinite(c)?E.create(p.NUM):R.create(c)});return n===1&&r===1?o.get(0,0):o}},Jh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=e,i=a.get(t,n);if(r.isString()&&(r=r.convertToNumberObjectValue()),i.isString()&&(i=i.convertToNumberObjectValue()),r.isError())return r;if(i.isError())return i;let o=Math.floor(+r.getValue()),s=Math.floor(+i.getValue());if(o<0||s<0||o===0&&o<s)return E.create(p.NUM);let c=hc(o+s-1,o-1);return Number.isNaN(c)||!Number.isFinite(c)?E.create(p.NUM):R.create(c)});return n===1&&r===1?o.get(0,0):o}},Yh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.cos()}},Xh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.cosh()}},Zh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=+t.getValue();return Math.abs(n)>=2**27?E.create(p.NUM):n===0?E.create(p.DIV_BY_ZERO):t.tan().getReciprocal()}},Qh=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:+t.getValue()==0?E.create(p.DIV_BY_ZERO):t.tanh().getReciprocal()}},$h=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=+t.getValue();return Math.abs(n)>=2**27?E.create(p.NUM):n===0?E.create(p.DIV_BY_ZERO):t.sin().getReciprocal()}},eg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=+t.getValue();return n===0?E.create(p.DIV_BY_ZERO):!Number.isNaN(n)&&!Number.isFinite(Math.sinh(n))?R.create(0):t.sinh().getReciprocal()}},tg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,n){if(e.isError())return e;if(n.isError())return n;let r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.map((e,n,r)=>{if(e.isError())return e;let i=o.get(n,r);if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;let a=`${e.getValue()}`,s=Math.floor(+i.getValue());if((0,t.isRealNum)(a)&&(+a<0||+a>=2**53||!Number.isInteger(+a))||a.toLocaleLowerCase()===`true`||a.toLocaleLowerCase()===`false`||s<2||s>36)return E.create(p.NUM);if(a.replace(/\s/g,``)===``)return R.create(0);if(!this._isValidCharForRadix(a,s))return E.create(p.NUM);let c=Number.parseInt(a,s);return Number.isNaN(c)?E.create(p.NUM):R.create(c)});return r===1&&i===1?s.get(0,0):s}_isValidCharForRadix(e,t){for(let n of e){let e=n.toUpperCase().charCodeAt(0);if(t<=10&&!(e>=48&&e<48+t)||t>10&&!(e>=48&&e<58||e>=65&&e<65+t-10))return!1}return!0}},ng=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=+t.getValue();if(!Number.isFinite(n))return E.create(p.VALUE);let r=n*(180/Math.PI);return Number.isNaN(r)?E.create(p.VALUE):R.create(r)}},rg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=+t.getValue();if(!Number.isFinite(n))return E.create(p.VALUE);let r=(n<0?-ka(Math.abs(n)/2,0):ka(n/2,0))*2;return Number.isNaN(r)?E.create(p.VALUE):r===0?R.create(0):R.create(r)}},ig=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.exp()}},ag=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.mapValue(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=mc(Math.floor(+t.getValue()));return Number.isNaN(n)||!Number.isFinite(n)?E.create(p.NUM):R.create(n)}},og=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;if(e.isArray()){let n=e.getRowCount(),r=e.getColumnCount();if(n>1||r>1)return E.create(p.VALUE);t=e.get(0,0)}return this._handleSingleObject(t)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=mc(Math.floor(+t.getValue()),2);return Number.isNaN(n)||!Number.isFinite(n)?E.create(p.NUM):R.create(n)}},sg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.map((e,t,n)=>{let r=a.get(t,n),i=e;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let o=+i.getValue(),s=+r.getValue();if(o>0&&s<0)return E.create(p.NUM);if(o===0)return R.create(0);if(s===0)return E.create(p.DIV_BY_ZERO);let c=Oa(o/s,0)*s;return R.create(c)});return n===1&&r===1?o.get(0,0):o}},cg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,3)}calculate(e,t,n){let r=t==null?R.create(1):t,i=n==null?R.create(0):n,a=Math.max(e.isArray()?e.getRowCount():1,r.isArray()?r.getRowCount():1,i.isArray()?i.getRowCount():1),o=Math.max(e.isArray()?e.getColumnCount():1,r.isArray()?r.getColumnCount():1,i.isArray()?i.getColumnCount():1),s=V(a,o,e,E.create(p.NA)),c=V(a,o,r,E.create(p.NA)),l=V(a,o,i,E.create(p.NA)),u=s.map((e,t,n)=>{let r=e,i=c.get(t,n),a=l.get(t,n);if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(a.isString()&&(a=a.convertToNumberObjectValue()),a.isError())return a;let o=+r.getValue(),s=+i.getValue(),u=+a.getValue();if(o===0||s===0)return R.create(0);let d;return d=o<0&&u!==0?(s<0?Oa(Math.abs(o)/Math.abs(s),0):-Oa(Math.abs(o)/s,0))*s:(s<0?-Oa(o/Math.abs(s),0):Oa(o/s,0))*s,R.create(d)});return a===1&&o===1?u.get(0,0):u}},lg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(1):t;if(e.isError())return e;if(n.isError())return n;let r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.map((e,t,n)=>{let r=o.get(t,n),i=e;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let a=+i.getValue(),s=+r.getValue();if(a===0||s===0)return R.create(0);let c=(s<0?-Oa(a/Math.abs(s),0):Oa(a/s,0))*s;return R.create(c)});return r===1&&i===1?s.get(0,0):s}},ug=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];if(!r.isNull())if(r.isArray()){let e=!1,n=E.create(p.VALUE);if(r.iterator(r=>{if(r!=null&&r.isNull())return!0;let{isError:i,errorObject:a,number:o}=this._handleSingleObject(r);if(i)return e=!0,n=a,!1;t=gc(t,o)}),e)return n}else{let{isError:e,errorObject:n,number:i}=this._handleSingleObject(r);if(e)return n;t=gc(t,i)}}return R.create(t)}_handleSingleObject(e){if(e.isBoolean())return{isError:!0,errorObject:E.create(p.VALUE),number:null};let t=e;if(e.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return{isError:!0,errorObject:t,number:null};let n=Math.floor(+t.getValue());return n<0||n>=2**53?{isError:!0,errorObject:E.create(p.NUM),number:null}:{isError:!1,errorObject:null,number:n}}},dg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.mapValue(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=Math.floor(+t.getValue());return R.create(n)}},fg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=1,n=!0;for(let r=0;r<e.length;r++){let i=e[r];if(!i.isNull())if(i.isArray()){let e=!1,r=E.create(p.VALUE);if(i.iterator(i=>{if(i!=null&&i.isNull())return!0;let{isError:a,errorObject:o,number:s}=this._handleSingleObject(i);if(a)return e=!0,r=o,!1;t=_c(t,s),n=!1}),e)return r}else{let{isError:e,errorObject:r,number:a}=this._handleSingleObject(i);if(e)return r;t=_c(t,a),n=!1}}return n?R.create(0):Number.isNaN(t)||!Number.isFinite(t)||t>=2**53?E.create(p.VALUE):R.create(t)}_handleSingleObject(e){if(e.isBoolean())return{isError:!0,errorObject:E.create(p.VALUE),number:null};let t=e;if(e.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return{isError:!0,errorObject:t,number:null};let n=Math.floor(+t.getValue());return n<0?{isError:!0,errorObject:E.create(p.NUM),number:null}:{isError:!1,errorObject:null,number:n}}},pg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.log()}},mg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(10):t;if(e.isError())return e;if(n.isError())return n;let r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.map((e,t,n)=>{let r=o.get(t,n),i=e;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let a=+i.getValue(),s=+r.getValue();if(a<=0||s<=0)return E.create(p.NUM);let c=Math.log(s);if(c===0)return E.create(p.DIV_BY_ZERO);let l=Math.log(a)/c;return R.create(l)});return r===1&&i===1?s.get(0,0):s}},hg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.log10()}},gg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e.isArray()?e.getRowCount():1,n=e.isArray()?e.getColumnCount():1,r=[];for(let i=0;i<t;i++){let t=[];for(let r=0;r<n;r++){let n=e.isArray()?e.get(i,r):e;if(n.isError())return n;if(n.isNull()||n.isBoolean())return E.create(p.VALUE);if(n.isString()&&(n=n.convertToNumberObjectValue()),n.isError())return n;let a=+n.getValue();t.push(a)}r.push(t)}if(t!==n)return E.create(p.VALUE);let i=vc(r);return R.create(i)}},_g=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e.isArray()?e.getRowCount():1,n=e.isArray()?e.getColumnCount():1,r=[];for(let i=0;i<t;i++){let t=[];for(let r=0;r<n;r++){let n=e.isArray()?e.get(i,r):e;if(n.isError())return n;if(n.isNull()||n.isBoolean())return E.create(p.VALUE);if(n.isString()&&(n=n.convertToNumberObjectValue()),n.isError())return n;let a=+n.getValue();t.push(a)}r.push(t)}if(t!==n)return E.create(p.VALUE);let i=yc(r);return i===null?E.create(p.NUM):B.createByArray(i)}},vg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1;if(r!==i)return E.create(p.VALUE);let o=this._getMatrix(e,n,r),s=this._getMatrix(t,i,a);if(o instanceof E)return o;if(s instanceof E)return s;let c=Sc(o,s);return B.createByArray(c)}_getMatrix(e,t,n){let r=[];for(let i=0;i<t;i++){let t=[];for(let r=0;r<n;r++){let n=e.isArray()?e.get(i,r):e;if(n.isError())return n;if(n.isNull()||n.isBoolean())return E.create(p.VALUE);if(n.isString()&&(n=n.convertToNumberObjectValue()),n.isError())return n;let a=+n.getValue();t.push(a)}r.push(t)}return r}},yg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e;if(n.isString()&&(n=n.convertToNumberObjectValue()),n.isError())return n;let r=t;return r.isString()&&(r=r.convertToNumberObjectValue()),r.isError()?r:n.mod(r)}},bg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e;if(n.isArray()){let e=n.getRowCount(),t=n.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);n=n.get(0,0)}if(n.isError())return n;let r=t;if(r.isArray()){let e=r.getRowCount(),t=r.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);r=r.get(0,0)}if(r.isError())return r;if(n.isBoolean()||r.isBoolean())return E.create(p.VALUE);let i=+n.getValue(),a=+r.getValue();if(Number.isNaN(i)||Number.isNaN(a))return E.create(p.VALUE);if(a===0)return R.create(0);if(i>0&&a<0||i<0&&a>0)return E.create(p.NUM);let o=Da(i/a,0)*a;return R.create(o)}},xg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=0,n=1;for(let r=0;r<e.length;r++){let i=e[r];if(!i.isNull())if(i.isArray()){let e=!1,r=E.create(p.VALUE);if(i.iterator(i=>{if(i!=null&&i.isNull())return!0;let{isError:a,errorObject:o,number:s}=this._handleSingleObject(i);if(a)return e=!0,r=o,!1;if(t+=s,t>170)return e=!0,r=E.create(p.NUM),!1;n*=mc(s)}),e)return r}else{let{isError:e,errorObject:r,number:a}=this._handleSingleObject(i);if(e)return r;if(t+=a,t>170)return E.create(p.NUM);n*=mc(a)}}let r=mc(t)/n;return R.create(r)}_handleSingleObject(e){if(e.isBoolean())return{isError:!0,errorObject:E.create(p.VALUE),number:null};let t=e;if(e.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return{isError:!0,errorObject:t,number:null};let n=Math.floor(+t.getValue());return n<0?{isError:!0,errorObject:E.create(p.NUM),number:null}:{isError:!1,errorObject:null,number:n}}},Sg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.getRowCount(),n=e.getColumnCount(),r=e.mapValue(e=>{let r=this._handleSingleObject(e);return r.isError()?r:t>1||n>1?r.get(0,0):r});return t===1&&n===1?r.get(0,0):r}return this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=Math.floor(+t.getValue());if(n<=0)return E.create(p.VALUE);let r=[];for(let e=0;e<n;e++){r[e]=[];for(let t=0;t<n;t++)r[e][t]=e===t?1:0}return B.createByArray(r)}},Cg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=+t.getValue();if(!Number.isFinite(n))return E.create(p.VALUE);let r=n<0?-ka(Math.abs(n),0):ka(n,0);return Number.isNaN(r)?E.create(p.VALUE):(Math.abs(r)%2==0&&(n<0?r--:r++),R.create(r))}},wg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,0)}calculate(){return R.create(Math.PI)}},Tg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e;if(n.isString()&&(n=n.convertToNumberObjectValue()),n.isError())return n;let r=t;return r.isString()&&(r=r.convertToNumberObjectValue()),r.isError()?r:n.pow(r)}},Eg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(1),n=!0;for(let r=0;r<e.length;r++){let i=e[r];if(i.isError())return i;if(i.isArray()){let e=!1,r=null;if(i.iterator(i=>{if(i!=null&&i.isError())return e=!0,r=i,!1;if(!i||i.isNull()||i.isString()||i.isBoolean())return!0;t=t.multiply(i),n=!1}),e)return r}else{if(i.isNull())continue;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;t=t.multiply(i),n=!1}if(t.isError())return t}return n?R.create(0):t}},Dg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,variants:i}=Y(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=+o.getValue();if(Number.isNaN(s)||Number.isNaN(c))return E.create(p.VALUE);if(c===0)return E.create(p.DIV_BY_ZERO);let l=Math.trunc(s/c);return R.create(l)}},Og=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=+t.getValue();if(!Number.isFinite(n))return E.create(p.VALUE);let r=n*(Math.PI/180);return Number.isNaN(r)?E.create(p.VALUE):R.create(r)}},kg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,0)}calculate(){return R.create(Math.random())}},Ag=class extends Z{constructor(...e){super(...e),d(this,`minParams`,0),d(this,`maxParams`,5),d(this,`needsSheetRowColumnCount`,!0)}calculate(e,t,n,r,i){if(e!=null&&e.isError())return e;if(t!=null&&t.isError())return t;if(n!=null&&n.isError())return n;if(r!=null&&r.isError())return r;if(i!=null&&i.isError())return i;let a=e==null?R.create(1):e,o=t==null?R.create(1):t,s=n==null?R.create(0):n,c=r==null?R.create(1):r,l=i==null?R.create(0):i;return this._calculateResult(a,o,s,c,l)}_calculateResult(e,t,n,r,i){let a=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1,i.isArray()?i.getRowCount():1),o=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1,i.isArray()?i.getColumnCount():1);if(a===1&&o===1)return this._calculateSingleCell(e,t,n,r,i);let s=V(a,o,e,E.create(p.NA)),c=V(a,o,t,E.create(p.NA)),l=V(a,o,n,E.create(p.NA)),u=V(a,o,r,E.create(p.NA)),d=V(a,o,i,E.create(p.NA));return s.map((e,t,n)=>{let r=c.get(t,n),i=l.get(t,n),a=u.get(t,n),o=d.get(t,n),s=this._handleError(e,r,i,a,o);if(s.errorObject)return s.errorObject;let{minValue:f,maxValue:m,wholeNumberValue:h}=s,g;return h?(f=Math.ceil(f),m=Math.floor(m),g=Math.floor(Math.random()*(m-f+1))+f):g=Math.random()*(m-f)+f,g<f||g>m?E.create(p.VALUE):R.create(g)})}_calculateSingleCell(e,t,n,r,i){let a=e;a.isArray()&&(a=a.get(0,0));let o=t;o.isArray()&&(o=o.get(0,0));let s=n;s.isArray()&&(s=s.get(0,0));let c=r;c.isArray()&&(c=c.get(0,0));let l=i;l.isArray()&&(l=l.get(0,0));let u=this._handleError(a,o,s,c,l);if(u.errorObject)return u.errorObject;let{rowsValue:d,columnsValue:f,minValue:m,maxValue:h,wholeNumberValue:g}=u;if(g&&(m=Math.ceil(m),h=Math.floor(h),m>h))return E.create(p.VALUE);let _=[];for(let e=0;e<d;e++){let e=[];for(let t=0;t<f;t++)g?e.push(Math.floor(Math.random()*(h-m+1))+m):e.push(Math.random()*(h-m)+m);_.push(e)}return d===1&&f===1?R.create(_[0][0]):B.createByArray(_)}_handleError(e,t,n,r,i){let a=e;if(a.isString()&&(a=a.convertToNumberObjectValue()),a.isError())return{errorObject:a};let o=t;if(o.isString()&&(o=o.convertToNumberObjectValue()),o.isError())return{errorObject:o};let s=n;if(s.isString()&&(s=s.convertToNumberObjectValue()),s.isError())return{errorObject:s};let c=r;if(c.isString()&&(c=c.convertToNumberObjectValue()),c.isError())return{errorObject:c};let l=i;return l.isString()&&(l=l.convertToNumberObjectValue()),l.isError()?{errorObject:l}:this._getValue(a,o,s,c,l)}_getValue(e,t,n,r,i){let a=Math.floor(+e.getValue()),o=Math.floor(+t.getValue());if(a===0||o===0)return{errorObject:E.create(p.CALC)};let s=this._rowCount-this.row,c=this._columnCount-this.column;if(a<0||o<0||a*o>10**7)return{errorObject:E.create(p.VALUE)};if(a>s||o>c)return{errorObject:E.create(p.REF)};let l=+n.getValue(),u=+r.getValue(),d=+i.getValue();return l>u||d&&(!Number.isInteger(l)||!Number.isInteger(u))?{errorObject:E.create(p.VALUE)}:{rowsValue:a,columnsValue:o,minValue:l,maxValue:u,wholeNumberValue:d}}},jg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e;if(n.isArray()){let e=n.getRowCount(),t=n.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);n=n.get(0,0)}if(n.isError())return n;let r=t;if(r.isArray()){let e=r.getRowCount(),t=r.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);r=r.get(0,0)}if(r.isError())return r;if(n.isBoolean()||r.isBoolean())return E.create(p.VALUE);let i=+n.getValue(),a=+r.getValue();if(Number.isNaN(i)||Number.isNaN(a))return E.create(p.VALUE);if(i>a)return E.create(p.NUM);i=Math.ceil(i),a=Math.floor(a);let o=Math.floor(Math.random()*(a-i+1))+i;return R.create(o)}},Mg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(0):t,r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.mapValue((e,t,n)=>{let r=o.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return r===1&&i===1?s.get(0,0):s}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(e);if(n)return r;let[a]=i,o=Math.floor(+a.getValue()),s=t;if(s.isString()&&(s=s.convertToNumberObjectValue(),s.isError()))return s;let c=Math.floor(+s.getValue());if(s.isBoolean()&&(c=s.getValue()?0:4),o<0||o>3999||c<0||c>4)return E.create(p.VALUE);let l=Fc[c],u=l.length-1,d=``;for(;o>0;){u=this._binarySearch(o,0,u,l);let e=l[u];o-=e,d+=Pc.get(e)}return z.create(d)}_binarySearch(e,t,n,r){let i=t,a=n;for(;a-i>1;){let t=Math.floor((i+a)/2),n=r[t];if(n===e)return t;n>e?a=t:i=t}return i!==a&&r[a]<=e?a:i}},Ng=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e;if(n.isString()&&(n=n.convertToNumberObjectValue()),n.isError())return n;let r=t;return r.isString()&&(r=r.convertToNumberObjectValue()),r.isError()?r:n.round(r)}},Pg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);if(e.isError())return e;if(r.isError())return r;let{isError:i,errorObject:o,variants:s}=X(e,r);if(i)return o;let[c,l]=s,u=+c.getValue(),d=Math.trunc(+l.getValue()),f=this._roundBank(u,d);return R.create(f)});return n===1&&r===1?o.get(0,0):o}_roundBank(e,t){if(t>16)return e;if(t<-16)return 0;let n=1e-8,r=10**t,i=+(e*r).toFixed(8),a=Math.floor(i),o=i-a,s=Math.round(i);return o>.5-n&&o<.5+n&&(s=a%2==0?a:a+1),t?s/r:s}},Fg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e;if(n.isString()&&(n=n.convertToNumberObjectValue()),n.isError())return n;let r=t;return r.isString()&&(r=r.convertToNumberObjectValue()),r.isError()?r:n.floor(r)}},Ig=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e;if(n.isString()&&(n=n.convertToNumberObjectValue()),n.isError())return n;let r=t;return r.isString()&&(r=r.convertToNumberObjectValue()),r.isError()?r:n.ceil(r)}},Lg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=+t.getValue();return Math.abs(n)>=2**27?E.create(p.NUM):t.cos().getReciprocal()}},Rg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.map(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let t=e;if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=+t.getValue();return Number.isFinite(Math.cosh(n))?Math.abs(n)>=2**27?E.create(p.NUM):t.cosh().getReciprocal():R.create(0)}},zg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,4),d(this,`needsSheetRowColumnCount`,!0)}calculate(e,t,n,r){let i=e,a=t==null?R.create(1):t,o=n==null?R.create(1):n,s=r==null?R.create(1):r;i.isNull()&&(i=R.create(1)),a.isNull()&&(a=R.create(1)),o.isNull()&&(o=R.create(1)),s.isNull()&&(s=R.create(1));let c=Math.max(i.isArray()?i.getRowCount():1,a.isArray()?a.getRowCount():1,o.isArray()?o.getRowCount():1,s.isArray()?s.getRowCount():1),l=Math.max(i.isArray()?i.getColumnCount():1,a.isArray()?a.getColumnCount():1,o.isArray()?o.getColumnCount():1,s.isArray()?s.getColumnCount():1),u=V(c,l,i,E.create(p.NA)),d=V(c,l,a,E.create(p.NA)),f=V(c,l,o,E.create(p.NA)),m=V(c,l,s,E.create(p.NA)),h=u.mapValue((e,t,n)=>{let r=d.get(t,n),i=f.get(t,n),a=m.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._getResult(e,r,i,a,c,l)});return c===1&&l===1?h.get(0,0):h}_getResult(e,t,n,r,i,a){let{isError:o,errorObject:s,variants:c}=X(e,t,n,r);if(o)return s;let[l,u,d,f]=c,m=Math.floor(+l.getValue()),h=Math.floor(+u.getValue()),g=+d.getValue(),_=+f.getValue();if(m<0||h<0||m*h>10**7)return E.create(p.VALUE);if(m===0||h===0)return E.create(p.CALC);let v=this._rowCount-this.row,y=this._columnCount-this.column;if(m>v||h>y)return E.create(p.REF);let b=[];for(let e=0;e<m;e++){b[e]=[];for(let t=0;t<h;t++)b[e][t]=g+(e*h+t)*_}return i>1||a>1?R.create(b[0][0]):B.createByArray(b)}},Bg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){if(e.isNull()||t.isNull()||n.isNull()||r.isNull())return E.create(p.NA);let{isError:i,errorObject:a,variants:o}=Y(e,t,n);if(i)return a;let{isError:s,errorObject:c,variants:l}=X(...o);if(s)return c;let[u,d,f]=l,m=+u.getValue(),h=+d.getValue(),g=+f.getValue(),_=[];if(r.isArray()){let e=!1,t=E.create(p.VALUE);if(r.iterator(n=>{let{isError:r,errorObject:i,coefficientsObject:a}=this._handleSingleObject(n);if(r)return e=!0,t=i,!1;let o=+a.getValue();_.push(o)}),e)return t}else{let{isError:e,errorObject:t,coefficientsObject:n}=this._handleSingleObject(r);if(e)return t;let i=+n.getValue();_.push(i)}let v=0;for(let e=0;e<_.length;e++)v+=_[e]*m**(h+e*g);return Number.isNaN(v)||!Number.isFinite(v)?E.create(p.NUM):R.create(v)}_handleSingleObject(e){if(e.isError())return{isError:!0,errorObject:e,coefficientsObject:null};if(e!=null&&e.isBoolean())return{isError:!0,errorObject:E.create(p.VALUE),coefficientsObject:null};let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?{isError:!0,errorObject:t,coefficientsObject:null}:{isError:!1,errorObject:null,coefficientsObject:t}}},Vg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=+i.getValue();return a>0?R.create(1):a<0?R.create(-1):R.create(0)}},Hg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.sin()}},Ug=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.sinh()}},Wg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.sqrt()}},Gg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;if(t.isArray()){let e=t.getRowCount(),n=t.getColumnCount();if(e>1||n>1)return E.create(p.VALUE);t=t.get(0,0)}if(t.isString()&&(t=t.convertToNumberObjectValue()),t.isError())return t;let n=+t.getValue();if(n<0)return E.create(p.NUM);let r=Math.sqrt(n*Math.PI);return R.create(r)}};let Kg={1:Q.AVERAGE,2:Q.COUNT,3:Q.COUNTA,4:Q.MAX,5:Q.MIN,6:Q.PRODUCT,7:Q.STDEV,8:Q.STDEVP,9:Q.SUM,10:Q.VAR,11:Q.VARP};var qg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,255),d(this,`needsReferenceObject`,!0),d(this,`needsFilteredOutRows`,!0),d(this,`needsFormulaDataModel`,!0)}calculate(e,...t){let n;n=e.isReferenceObject()?e.toArrayValueObject():e;let{isError:r,multiAreaRefs:i,normalRefs:a}=Al(t);if(!r&&i.length>0)return this._handleMultiAreaRefs(n,i,t);if(n.isArray()){let e=n.mapValue(e=>this._handleSingleObject(e,{isError:r,refs:a}));return e.getRowCount()===1&&e.getColumnCount()===1?e.get(0,0):e}return this._handleSingleObject(n,{isError:r,refs:a})}_handleSingleObject(e,t){let{isError:n=!1,refs:r}=t,i=e;if(e.isString()&&(i=e.convertToNumberObjectValue()),i.isError())return i;if(n)return E.create(p.VALUE);let a=Math.floor(+i.getValue());if(a<1||a>11&&a<101||a>111)return E.create(p.VALUE);let o=!1;return a>=101&&(a-=100,o=!0),Pl({type:Kg[a],ignoreRowHidden:o,ignoreErrorValues:!1,ignoreNested:!0,formulaDataModel:this._formulaDataModel},r)}_handleMultiAreaRefs(e,t,n){let r=e.isArray()?e.getRowCount():1,i=e.isArray()?e.getColumnCount():1,{multiAreaInfoMap:a,maxAreasLen:o}=this._getMultiAreaInfo(t),s=Math.max(r,o),c=[];for(let t=0;t<s;t++){let o=t<r?t:r-1,s=[];for(let c=0;c<i;c++){if(r>1&&t>=r){s.push(E.create(p.NA));continue}let i=e.isArray()?e.get(o,c):e,l=[];for(let e=0;e<n.length;e++){let r=n[e],i=a.get(r);if(i){let e=t<i.rowAreas.length?t:i.rowAreas.length-1,n=i.rowAreas[e];if(n.isError()){s.push(n);break}l.push(n);continue}l.push(r)}let u=this._handleSingleObject(i,{isError:!1,refs:l});s.push(u)}c.push(s)}return c.length===1?c[0][0]:lo(c,c.length,i)}_getMultiAreaInfo(e){let t=new Map,n=1;return e.forEach(e=>{let r=e.getAreas().map(t=>{if(!t||t.length===0)return e;let n=t.find(e=>!e.isError());return n==null?t[0]:n});t.set(e,{ref:e,rowAreas:r}),n=Math.max(n,r.length||1)}),{multiAreaInfoMap:t,maxAreasLen:n}}},Jg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(0);for(let n=0;n<e.length;n++){let r=e[n];if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError()||(r.isArray()&&(r=r.sum()),r.isError()))return r;if(t=t.plus(r),t.isError())return t}return t}},Yg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3),d(this,`needsReferenceObject`,!0)}calculate(e,t,n){if(!e.isReferenceObject()||n&&!n.isReferenceObject())return E.create(p.VALUE);let r=t;if(t.isReferenceObject()&&(r=t.toArrayValueObject()),r.isArray()){let t=r.mapValue(t=>this._handleSingleObject(e,t,n));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e,r,n)}_handleSingleObject(e,t,n){let r=e.toArrayValueObject(),i=fo(r,t);i=xo(i,r,t);let a=r.getRowCount(),o=r.getColumnCount(),s=r;if(n){s=n.toArrayValueObject();let e=s.getRowCount(),t=s.getColumnCount();if(a!==e||o!==t){let e=n.getRangeData();e.endRow=e.startRow+a-1,e.endColumn=e.startColumn+o-1,n.setRangeData(e),s=n.toArrayValueObject()}}return s.pick(i).sum()}},Xg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,255),d(this,`needsReferenceObject`,!0)}calculate(e,...t){let{isError:n,errorObject:r,rangeIsDifferentSize:i,criteriaMaxRowLength:a,criteriaMaxColumnLength:o,targetRange:s,variants:c}=vo(t,e);if(n)return r;if(i)return a===1&&o===1?E.create(p.VALUE):V(a,o,E.create(p.VALUE));let l=bo(c,{formulaName:`SUMIFS`,maxRowLength:a,maxColumnLength:o,isNumberSensitive:!0,targetRange:s});return l.length===1&&l[0].length===1?l[0][0]:B.create({calculateValueList:l,rowCount:l.length,columnCount:l[0].length,unitId:this.unitId||``,sheetId:this.subUnitId||``,row:this.row,column:this.column})}},Zg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(e,...t){if(e.isError())return e;let n=this._initArray1(e);if(t.length===0)return n.sum();let r=n.getRowCount(),i=n.getColumnCount(),a=this._getResultArrayByArray1(r,i,n);if(a instanceof E)return a;let o=a;return this._validateVariants(t,r,i)||this._sumProduct(o,t,r,i)}_validateVariants(e,t,n){for(let r of e){if(r.isError())return r;if(r.isArray()){let e=r,i=e.getRowCount(),a=e.getColumnCount();if(i!==t&&a!==n)return E.create(p.VALUE)}}return null}_sumProduct(e,t,n,r){let i=0;for(let a=0;a<n;a++)for(let n=0;n<r;n++){let r=e[a][n];for(let e=0;e<t.length;e++){let i=t[e],o=this._getVariantCell(i,a,n);if(!o)return E.create(p.VALUE);if(o.isError())return o;o.isNumber()?r*=o.getValue():r=0}i+=r}return R.create(i)}_getVariantCell(e,t,n){if(!e.isArray())return e;let r=e.get(t,n);return r==null?null:r}_initArray1(e){let t=e;return t.isArray()||(t=B.create({calculateValueList:[[t]],rowCount:1,columnCount:1,unitId:``,sheetId:``,row:0,column:0})),t}_getResultArrayByArray1(e,t,n){let r=[];for(let i=0;i<e;i++){let e=[];for(let r=0;r<t;r++){let t=n.get(i,r);if(t.isError())return t;t.isNumber()?e.push(t.getValue()):e.push(0)}r.push(e)}return r}},Qg=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(0),n=R.create(2);for(let r=0;r<e.length;r++){let i=e[r];if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(i.isArray()?i.iterator(e=>{if(e==null||e.isString()||e.isBoolean()||e.isNull())return!0;if(e.isError())return t=e,!1;t=t.plus(e.pow(n))}):t=t.plus(i.pow(n)),t.isError())return t}return t}},$g=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=(e.isArray()?e.getRowCount():1)*(e.isArray()?e.getColumnCount():1);if(n!==(t.isArray()?t.getRowCount():1)*(t.isArray()?t.getColumnCount():1))return E.create(p.NA);if(n===1)return this._calculateSingleCell(e,t);{let n=e.flatten(),r=t.flatten(),i=Ua.create(),a=[],o=[],s=0;return n.iterator((e,t,n)=>{let c=r.get(t,n);if(e==null||e.isString()||e.isBoolean()||e.isNull())return!0;if(e!=null&&e.isError())return i=e,!1;if(c==null||c.isString()||c.isBoolean()||c.isNull())return!0;if(c!=null&&c.isError())return i=c,!1;let l=+e.getValue(),u=+c.getValue();a.push(l),o.push(u),s+=l**2-u**2}),i.isError()?i:a.length===0||o.length===0?E.create(p.DIV_BY_ZERO):R.create(s)}}_calculateSingleCell(e,n){let r=e;if(r.isArray()&&(r=r.get(0,0)),r.isError())return r;let i=n;if(i.isArray()&&(i=i.get(0,0)),i.isError())return i;if(r.isNull()||i.isNull())return E.create(p.VALUE);let a=+r.getValue(),o=+i.getValue();if(r.isString()&&!(0,t.isRealNum)(a)||r.isBoolean()||i.isString()&&!(0,t.isRealNum)(o)||i.isBoolean())return E.create(p.DIV_BY_ZERO);let s=a**2-o**2;return R.create(s)}},e_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=(e.isArray()?e.getRowCount():1)*(e.isArray()?e.getColumnCount():1);if(n!==(t.isArray()?t.getRowCount():1)*(t.isArray()?t.getColumnCount():1))return E.create(p.NA);if(n===1)return this._calculateSingleCell(e,t);{let n=e.flatten(),r=t.flatten(),i=Ua.create(),a=[],o=[],s=0;return n.iterator((e,t,n)=>{let c=r.get(t,n);if(e==null||e.isString()||e.isBoolean()||e.isNull())return!0;if(e!=null&&e.isError())return i=e,!1;if(c==null||c.isString()||c.isBoolean()||c.isNull())return!0;if(c!=null&&c.isError())return i=c,!1;let l=+e.getValue(),u=+c.getValue();a.push(l),o.push(u),s+=l**2+u**2}),i.isError()?i:a.length===0||o.length===0?E.create(p.DIV_BY_ZERO):R.create(s)}}_calculateSingleCell(e,n){let r=e;if(r.isArray()&&(r=r.get(0,0)),r.isError())return r;let i=n;if(i.isArray()&&(i=i.get(0,0)),i.isError())return i;if(r.isNull()||i.isNull())return E.create(p.VALUE);let a=+r.getValue(),o=+i.getValue();if(r.isString()&&!(0,t.isRealNum)(a)||r.isBoolean()||i.isString()&&!(0,t.isRealNum)(o)||i.isBoolean())return E.create(p.DIV_BY_ZERO);let s=a**2+o**2;return R.create(s)}},t_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=(e.isArray()?e.getRowCount():1)*(e.isArray()?e.getColumnCount():1);if(n!==(t.isArray()?t.getRowCount():1)*(t.isArray()?t.getColumnCount():1))return E.create(p.NA);if(n===1)return this._calculateSingleCell(e,t);{let n=e.flatten(),r=t.flatten(),i=Ua.create(),a=[],o=[],s=0;return n.iterator((e,t,n)=>{let c=r.get(t,n);if(e==null||e.isString()||e.isBoolean()||e.isNull())return!0;if(e!=null&&e.isError())return i=e,!1;if(c==null||c.isString()||c.isBoolean()||c.isNull())return!0;if(c!=null&&c.isError())return i=c,!1;let l=+e.getValue(),u=+c.getValue();a.push(l),o.push(u),s+=(l-u)**2}),i.isError()?i:a.length===0||o.length===0?E.create(p.DIV_BY_ZERO):R.create(s)}}_calculateSingleCell(e,n){let r=e;if(r.isArray()&&(r=r.get(0,0)),r.isError())return r;let i=n;if(i.isArray()&&(i=i.get(0,0)),i.isError())return i;if(r.isNull()||i.isNull())return E.create(p.VALUE);let a=+r.getValue(),o=+i.getValue();if(r.isString()&&!(0,t.isRealNum)(a)||r.isBoolean()||i.isString()&&!(0,t.isRealNum)(o)||i.isBoolean())return E.create(p.DIV_BY_ZERO);let s=(a-o)**2;return R.create(s)}},n_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.tan()}},r_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){let t=e;return t.isString()&&(t=t.convertToNumberObjectValue()),t.isError()?t:t.tanh()}},i_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(0):t,r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.map((e,t,n)=>{let r=o.get(t,n),i=e;if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let a=+i.getValue(),s=+r.getValue(),c=10**Math.trunc(s),l=Aa(a,c),u=Math.trunc(Ta(a,c)+l)/c;return R.create(u)});return r===1&&i===1?s.get(0,0):s}};let a_=[[Oh,K.ABS],[kh,K.ACOS],[Ah,K.ACOSH],[jh,K.ACOT],[Nh,K.ACOTH],[Ih,K.AGGREGATE],[Lh,K.ARABIC],[Rh,K.ASIN],[zh,K.ASINH],[Bh,K.ATAN],[Vh,K.ATAN2],[Hh,K.ATANH],[Uh,K.BASE],[Wh,K.CEILING],[Gh,K.CEILING_MATH],[Kh,K.CEILING_PRECISE],[qh,K.COMBIN],[Jh,K.COMBINA],[Yh,K.COS],[Xh,K.COSH],[Zh,K.COT],[Qh,K.COTH],[$h,K.CSC],[eg,K.CSCH],[tg,K.DECIMAL],[ng,K.DEGREES],[rg,K.EVEN],[ig,K.EXP],[ag,K.FACT],[og,K.FACTDOUBLE],[sg,K.FLOOR],[cg,K.FLOOR_MATH],[lg,K.FLOOR_PRECISE],[ug,K.GCD],[dg,K.INT],[fg,K.LCM],[pg,K.LN],[mg,K.LOG],[hg,K.LOG10],[gg,K.MDETERM],[_g,K.MINVERSE],[vg,K.MMULT],[yg,K.MOD],[bg,K.MROUND],[xg,K.MULTINOMIAL],[Sg,K.MUNIT],[Cg,K.ODD],[wg,K.PI],[Tg,K.POWER],[Eg,K.PRODUCT],[Dg,K.QUOTIENT],[Og,K.RADIANS],[kg,K.RAND],[Ag,K.RANDARRAY],[jg,K.RANDBETWEEN],[Mg,K.ROMAN],[Ng,K.ROUND],[Pg,K.ROUNDBANK],[Fg,K.ROUNDDOWN],[Ig,K.ROUNDUP],[Lg,K.SEC],[Rg,K.SECH],[Bg,K.SERIESSUM],[zg,K.SEQUENCE],[Vg,K.SIGN],[Hg,K.SIN],[Ug,K.SINH],[Wg,K.SQRT],[Gg,K.SQRTPI],[qg,K.SUBTOTAL],[Jg,K.SUM],[Yg,K.SUMIF],[Xg,K.SUMIFS],[Zg,K.SUMPRODUCT],[Qg,K.SUMSQ],[$g,K.SUMX2MY2],[e_,K.SUMX2PY2],[t_,K.SUMXMY2],[n_,K.TAN],[r_,K.TANH],[i_,K.TRUNC]];var o_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2),d(this,`_compareType`,v.EQUALS)}setCompareType(e){this._compareType=e}calculate(e,t){return e.isError()?e:t.isError()?t:e.compare(t,this._compareType)}},s_=class e extends ee{static create(t){return new e(t)}isCube(){return!0}constructor(e){super(``),d(this,`_values`,[]),this._values=e}dispose(){this._values.forEach(e=>{e.dispose()}),this._values=[]}getCubeValues(){return this._values}getCubeCount(){return this._values.length}sum(){let e=R.create(0);return this._values.forEach(t=>{e.plus(t.sum())}),e}max(){let e=R.create(-1/0);return this._values.forEach(t=>{let n=t.max();e.isLessThan(n)&&(e=n)}),e}min(){let e=R.create(1/0);return this._values.forEach(t=>{let n=t.max();e.isGreaterThan(n)&&(e=n)}),e}count(){let e=R.create(0);return this._values.forEach(t=>{e.plus(t.count())}),e}countA(){let e=R.create(0);return this._values.forEach(t=>{e.plus(t.countA())}),e}countBlank(){let e=R.create(0);return this._values.forEach(t=>{e.plus(t.countBlank())}),e}},c_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=[];for(let n=0;n<e.length;n++){let r=e[n];if(r.isError())return r;if(!r.isArray())return E.create(p.VALUE);t.push(r)}return s_.create(t)}},l_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){return e.isError()?e:t.isError()?t:!t.isArray()&&t.getValue()===0?E.create(p.DIV_BY_ZERO):e.divided(t)}},u_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){return e.isError()?e:t.isError()?t:e.minus(t)}},d_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){return e.isError()?e:t.isError()?t:e.multiply(t)}},f_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){return e.isError()?e:t.isError()?t:e.plus(t)}};let p_=[[o_,Xo.COMPARE],[l_,Xo.DIVIDED],[u_,Xo.MINUS],[d_,Xo.MULTIPLY],[f_,Xo.PLUS],[c_,Xo.CUBE]],m_=new Set([K.ACOT,K.ACOTH,K.ARABIC,K.BASE,K.CEILING_MATH,K.CEILING_PRECISE,K.COMBINA,K.COT,K.COTH,K.CSC,K.CSCH,K.DECIMAL,K.FLOOR_MATH,K.FLOOR_PRECISE,K.MUNIT,K.RANDARRAY,K.SEC,K.SECH,K.SEQUENCE,G.CHOOSECOLS,G.CHOOSEROWS,G.DROP,G.EXPAND,G.FILTER,G.FORMULATEXT,G.HSTACK,G.SORT,G.SORTBY,G.TAKE,G.TOCOL,G.TOROW,G.UNIQUE,G.VSTACK,G.WRAPCOLS,G.WRAPROWS,G.XLOOKUP,G.XMATCH,U.BITAND,U.BITLSHIFT,U.BITOR,U.BITRSHIFT,U.BITXOR,U.ERF_PRECISE,U.ERFC_PRECISE,U.IMCOSH,U.IMCOT,U.IMCSC,U.IMCSCH,U.IMSEC,U.IMSECH,U.IMSINH,U.IMTAN,zo.ISFORMULA,zo.SHEET,zo.SHEETS,Bo.IFNA,Bo.IFS,Bo.SWITCH,Bo.XOR,q.BETA_DIST,q.BETA_INV,q.BINOM_DIST,q.BINOM_DIST_RANGE,q.BINOM_INV,q.CHISQ_DIST,q.CHISQ_DIST_RT,q.CHISQ_INV,q.CHISQ_INV_RT,q.CHISQ_TEST,q.CONFIDENCE_NORM,q.CONFIDENCE_T,q.COVARIANCE_P,q.COVARIANCE_S,q.EXPON_DIST,q.F_DIST,q.F_DIST_RT,q.F_INV,q.F_INV_RT,q.F_TEST,q.FORECAST_LINEAR,q.GAMMA,q.GAMMA_DIST,q.GAMMA_INV,q.GAMMALN_PRECISE,q.GAUSS,q.HYPGEOM_DIST,q.LOGNORM_DIST,q.LOGNORM_INV,q.MAXIFS,q.MINIFS,q.MODE_MULT,q.MODE_SNGL,q.NEGBINOM_DIST,q.NORM_DIST,q.NORM_INV,q.NORM_S_DIST,q.NORM_S_INV,q.PERCENTILE_EXC,q.PERCENTILE_INC,q.PERCENTRANK_EXC,q.PERCENTRANK_INC,q.PERMUTATIONA,q.PHI,q.POISSON_DIST,q.QUARTILE_EXC,q.QUARTILE_INC,q.RANK_AVG,q.RANK_EQ,q.SKEW_P,q.STDEV_P,q.STDEV_S,q.T_DIST,q.T_DIST_2T,q.T_DIST_RT,q.T_INV,q.T_INV_2T,q.T_TEST,q.VAR_P,q.VAR_S,q.WEIBULL_DIST,q.Z_TEST,J.ARRAYTOTEXT,Vo.ENCODEURL,J.NUMBERVALUE,J.TEXTAFTER,J.TEXTBEFORE,J.TEXTJOIN,J.TEXTSPLIT,J.UNICHAR,J.UNICODE,J.VALUETOTEXT,Ro.DAYS,Ro.ISOWEEKNUM,W.PDURATION,W.RRI,Bo.BYCOL,Bo.BYROW,Bo.MAKEARRAY,Bo.MAP,Bo.REDUCE,Bo.SCAN]);var h_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(0),n=R.create(0);for(let r=0;r<e.length;r++){let i=e[r];if(i.isString()&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(i.isArray()){if(i=g_(i),i.isError())return i;if(e[r]=i,t=t.plus(i.sum()),t.isError())return t;n=n.plus(i.count())}else i.isNull()||(t=t.plus(i),n=n.plus(R.create(1)))}if(n.getValue()===0)return E.create(p.NUM);let r=t.divided(n);if(r.isError())return r;let i=R.create(0);for(let t=0;t<e.length;t++){let n=e[t];if(n.isString()&&(n=n.convertToNumberObjectValue()),n.isError())return n;if(n.isArray()){if(i=i.plus(n.minus(r).abs().sum()),i.isError())return i}else n.isNull()||(i=i.plus(n.minus(r).abs()))}return i.divided(n)}};function g_(e){let t=[];t[0]=[];let n=null;return e.iterator((e,r,i)=>{if(e!=null&&e.isError())return n=e,!1;e!=null&&e.isNumber()&&t[0].push(e)}),n||lo(t,1,t[0].length)}var __=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(0),n=R.create(0);for(let r=0;r<e.length;r++){let i=e[r];if((i.isString()||i.isBoolean())&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(i.isArray()){if(t=t.plus(i.sum()),t.isError())return t;n=n.plus(i.count())}else i.isNull()||(t=t.plus(i),n=n.plus(R.create(1)))}return t.divided(n)}},v_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,254)}calculate(...e){let t=!1,n;e.length%2!=0&&(t=!0,n=E.create(p.NA));let r=[],i=[];for(let a=0;a<e.length;a+=2){let o=e[a],s=o.isArray()?o.getRowCount():1,c=o.isArray()?o.getColumnCount():1;for(let e=0;e<s;e++)for(let n=0;n<c;n++){let i=o.isArray()?o.get(e,n):o;if(i.isError())return i;if(t)continue;let a=i.isNull()?``:i.getValue();r.push(a)}if(a+1>=e.length)continue;let l=e[a+1],u=l.isArray()?l.getRowCount():1,d=l.isArray()?l.getColumnCount():1;(u!==s||d!==c)&&(t=!0,n=E.create(p.VALUE));for(let e=0;e<u;e++)for(let n=0;n<d;n++){let r=l.isArray()?l.get(e,n):l;if(r.isError())return r;if(t)continue;let a=r.isNull()?``:r.getValue();i.push(a)}}return t?n:this._getResult(r,i)}_getResult(e,t){let n=e.length,r=0,i=0;for(let a=0;a<n;a++){let n=e[a],o=t[a];if(!(typeof n!=`number`&&typeof o!=`number`)){if(typeof n!=`number`||typeof o!=`number`||o<0)return E.create(p.VALUE);r+=n*o,i+=o}}if(i===0)return E.create(p.DIV_BY_ZERO);let a=r/i;return R.create(a)}},y_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(0),n=R.create(0);for(let r=0;r<e.length;r++){let i=e[r];if((i.isString()||i.isBoolean())&&(i=i.convertToNumberObjectValue()),i.isError())return i;if(i.isArray()){if(i.iterator(e=>{if(e==null||e.isNull())return!0;let r=e;if(r.isString()&&(r=r.convertToNumberObjectValue(),r.isError()&&(r=R.create(0))),r.isBoolean()&&(r=r.convertToNumberObjectValue()),r.isError())return t=r,!1;t=t.plus(r),n=n.plus(R.create(1))}),t.isError())return t}else i.isNull()||(t=t.plus(i),n=n.plus(R.create(1)))}return t.divided(n)}},b_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3),d(this,`needsReferenceObject`,!0)}calculate(e,t,n){if(!e.isReferenceObject()||n&&!n.isReferenceObject())return E.create(p.VALUE);let r=t;if(t.isReferenceObject()&&(r=t.toArrayValueObject()),r.isArray()){let t=r.mapValue(t=>this._handleSingleObject(e,t,n));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e,r,n)}_handleSingleObject(e,t,n){let r=e.toArrayValueObject(),i=fo(r,t);i=xo(i,r,t);let a=r.getRowCount(),o=r.getColumnCount(),s=r;if(n){s=n.toArrayValueObject();let e=s.getRowCount(),t=s.getColumnCount();if(a!==e||o!==t){let e=n.getRangeData();e.endRow=e.startRow+a-1,e.endColumn=e.startColumn+o-1,n.setRangeData(e),s=n.toArrayValueObject()}}let c=s.pick(i),l=c.sum(),u=c.count();return l.divided(u)}},x_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,255),d(this,`needsReferenceObject`,!0)}calculate(e,...t){let{isError:n,errorObject:r,rangeIsDifferentSize:i,criteriaMaxRowLength:a,criteriaMaxColumnLength:o,targetRange:s,variants:c}=vo(t,e);if(n)return r;if(i)return a===1&&o===1?E.create(p.VALUE):V(a,o,E.create(p.VALUE));let l=bo(c,{formulaName:`AVERAGEIFS`,maxRowLength:a,maxColumnLength:o,isNumberSensitive:!0,targetRange:s});return l.length===1&&l[0].length===1?l[0][0]:B.create({calculateValueList:l,rowCount:l.length,columnCount:l[0].length,unitId:this.unitId||``,sheetId:this.subUnitId||``,row:this.row,column:this.column})}},S_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let o=i==null?R.create(0):i,s=a==null?R.create(1):a;o.isNull()&&(o=R.create(0)),s.isNull()&&(s=R.create(1));let c=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1,o.isArray()?o.getRowCount():1,s.isArray()?s.getRowCount():1),l=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1,o.isArray()?o.getColumnCount():1,s.isArray()?s.getColumnCount():1),u=V(c,l,e,E.create(p.NA)),d=V(c,l,t,E.create(p.NA)),f=V(c,l,n,E.create(p.NA)),m=V(c,l,r,E.create(p.NA)),h=V(c,l,o,E.create(p.NA)),g=V(c,l,s,E.create(p.NA)),_=u.mapValue((e,t,n)=>{let r=d.get(t,n),i=f.get(t,n),a=m.get(t,n),o=h.get(t,n),s=g.get(t,n);return this._handleSingleObject(e,r,i,a,o,s)});return c===1&&l===1?_.get(0,0):_}_handleSingleObject(e,t,n,r,i,a){if(e.isError())return e;if(t.isError())return t;if(n.isError())return n;if(r.isError())return r;if(i.isError())return i;if(a.isError())return a;let{isError:o,errorObject:s,variants:c}=X(e,t,n,r,i,a);if(o)return s;let[l,u,d,f,m,h]=c,g=+l.getValue(),_=+u.getValue(),v=+d.getValue(),y=+f.getValue(),b=+m.getValue(),x=+h.getValue();if(_<=0||v<=0||g<b||g>x||b===x)return E.create(p.NUM);let S;return S=y?Ic((g-b)/(x-b),_,v):Lc((g-b)/(x-b),_,v)/(x-b),R.create(S)}},C_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=r==null?n:r;i.isNull()&&(i=n);let a=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,i.isArray()?i.getRowCount():1),o=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,i.isArray()?i.getColumnCount():1),s=V(a,o,e,E.create(p.NA)),c=V(a,o,t,E.create(p.NA)),l=V(a,o,n,E.create(p.NA)),u=V(a,o,i,E.create(p.NA)),d=s.mapValue((e,t,n)=>{let r=c.get(t,n),i=l.get(t,n),a=u.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return a===1&&o===1?d.get(0,0):d}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(e,t,n,r);if(i)return a;let[s,c,l,u]=o,d=Math.floor(+s.getValue()),f=+c.getValue(),m=Math.floor(+l.getValue()),h=Math.floor(+u.getValue());if(d<0||f<0||f>1||m<0||m>d||h<0||h<m||h>d)return E.create(p.NUM);let g=0;for(let e=m;e<=h;e++)g+=Wc(e,d,f);return R.create(g)}},w_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=Math.floor(+s.getValue()),d=+c.getValue();if(l<0||u<1||u>10**10)return E.create(p.NUM);let f;return f=d?Gc(l,u):Kc(l,u),R.create(f)}},T_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return n===1&&r===1?o.get(0,0):o}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(s<0||s>1||c<1||c>10**10)return E.create(p.NUM);let l=qc(s,c);return Number.isNaN(l)||!Number.isFinite(l)?E.create(p.NUM):R.create(l)}},E_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);if(e.isError())return e;if(r.isError())return r;if(i.isError())return i;let{isError:a,errorObject:c,variants:l}=X(e,r,i);if(a)return c;let[u,d,f]=l,m=+u.getValue(),h=+d.getValue(),g=Math.floor(+f.getValue());if(m<=0||m>=1||h<=0||g<1)return E.create(p.NUM);if(g===1)return E.create(p.DIV_BY_ZERO);let _=Math.abs(xl(m/2,g-1)*h/Math.sqrt(g));return R.create(_)});return r===1&&i===1?c.get(0,0):c}},D_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return o;let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return s;if(n*r===1||i*a===1)return o.isNull()||s.isNull()?E.create(p.VALUE):E.create(p.DIV_BY_ZERO);if(n*r!==i*a)return E.create(p.NA);let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?l:f?E.create(p.DIV_BY_ZERO):this._getResult(u,d)}_getResult(e,t){let n=e.length,r=0,i=0;for(let a=0;a<n;a++)r+=e[a],i+=t[a];let a=r/n,o=i/n,s=0,c=0,l=0;for(let r=0;r<n;r++){let n=e[r]-a,i=t[r]-o;s+=n*i,c+=n**2,l+=i**2}let u=Math.sqrt(c*l);return u===0?E.create(p.DIV_BY_ZERO):R.create(s/u)}},O_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(0);for(let n=0;n<e.length;n++){let r=e[n];r.isError()||(r.isArray()?t=t.plus(r.count()):r.isString()?r.convertToNumberObjectValue().isError()||(t=t.plus(R.create(1))):r.isNull()||(t=t.plus(R.create(1))))}return t}},k_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(0);for(let n=0;n<e.length;n++){let r=e[n];if(r.isError()){t=t.plus(R.create(1));continue}r.isArray()?(r=r.countA(),t=t.plus(r)):r.isNull()||(t=t.plus(R.create(1)))}return t}},A_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isError()?e:e.getValue()===``||e.isNull()?R.create(1):e.isArray()?e.countBlank():R.create(0)}},j_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2),d(this,`needsReferenceObject`,!0)}calculate(e,t){if(!e.isReferenceObject())return E.create(p.VALUE);let n=t;if(t.isReferenceObject()&&(n=t.toArrayValueObject()),n.isArray()){let t=n.mapValue(t=>this._handleSingleObject(e,t));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e,n)}_handleSingleObject(e,t){let n=e.toArrayValueObject(),r=fo(n,t);r=xo(r,n,t);let i=n.pick(r);return this._countA(i)}_countA(e){let t=R.create(0);return e.iterator(e=>{if(e==null)return!0;t=t.plusBy(1)}),t}},M_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,255),d(this,`needsReferenceObject`,!0)}calculate(...e){let{isError:t,errorObject:n,rangeIsDifferentSize:r,criteriaMaxRowLength:i,criteriaMaxColumnLength:a,variants:o}=vo(e);if(t)return n;if(r)return i===1&&a===1?E.create(p.VALUE):V(i,a,E.create(p.VALUE));let s=bo(o,{formulaName:`COUNTIFS`,maxRowLength:i,maxColumnLength:a,isNumberSensitive:!0});return s.length===1&&s[0].length===1?s[0][0]:B.create({calculateValueList:s,rowCount:s.length,columnCount:s[0].length,unitId:this.unitId||``,sheetId:this.subUnitId||``,row:this.row,column:this.column})}},N_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return o;let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return s;if((n*r===1||i*a===1)&&(o.isNull()||s.isNull()))return E.create(p.VALUE);if(n*r!==i*a)return E.create(p.NA);let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?l:f?E.create(p.DIV_BY_ZERO):this._getResult(u,d)}_getResult(e,t){if(e.length<=1)return E.create(p.DIV_BY_ZERO);let n=e.length,r=0,i=0;for(let a=0;a<n;a++)r+=e[a],i+=t[a];let a=r/n,o=i/n,s=0;for(let r=0;r<n;r++){let n=e[r]-a,i=t[r]-o;s+=n*i}return R.create(s/(n-1))}},P_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=[],n=0,r=!0;for(let i=0;i<e.length;i++){let a=e[i];if(a.isArray()){let e=!1,i=E.create(p.VALUE);if(a.iterator(a=>{let o=this._handleSingleObject(a);if(o.isError())return e=!0,i=o,!1;if(o.isNull())return!0;let s=o.getValue();t.push(s),n+=s,r=!1}),e)return i}else{let e=this._handleSingleObject(a);if(e.isError())return e;if(e.isNull())continue;let i=e.getValue();t.push(i),n+=i,r=!1}}if(r)return E.create(p.NUM);let i=n/t.length,a=0;for(let e=0;e<t.length;e++)a+=(t[e]-i)**2;return R.create(a)}_handleSingleObject(e){if(e.isError())return e;if(e.isNull()||e.isBoolean())return Ua.create();let n=e.getValue();return(0,t.isRealNum)(n)?R.create(+n):Ua.create()}},F_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(e,t,n,r);if(i)return a;let[s,c,l,u]=o,d=+s.getValue(),f=Math.floor(+c.getValue()),m=Math.floor(+l.getValue()),h=+u.getValue();if(d<0||f<1||f>10**10||m<1||m>10**10)return E.create(p.NUM);let g;return g=h?Jc(d,f,m):Yc(d,f,m),Number.isNaN(g)||!Number.isFinite(g)?E.create(p.NUM):R.create(g)}},I_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=Math.floor(+s.getValue()),d=Math.floor(+c.getValue());if(l<0||l>1||u<1||u>10**10||d<1||d>10**10)return E.create(p.NUM);let f=Xc(l,u,d);return Number.isNaN(f)||!Number.isFinite(f)?E.create(p.NUM):R.create(f)}},L_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.mapValue(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=i.getValue();if(a<=-1||a>=1)return E.create(p.NUM);let o=Math.log((1+a)/(1-a))/2;return R.create(o)}},R_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){return e.isArray()?e.mapValue(e=>this._handleSingleObject(e)):this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=+i.getValue(),o=Math.exp(2*a)-1,s=Math.exp(2*a)+1;return!Number.isFinite(o)&&o>0&&!Number.isFinite(s)&&s>0?R.create(1):R.create(o/s)}},z_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=t.isArray()?t.getRowCount():1,i=t.isArray()?t.getColumnCount():1,a=n.isArray()?n.getRowCount():1,o=n.isArray()?n.getColumnCount():1,s=t;t.isArray()&&r===1&&i===1&&(s=t.get(0,0));let c=n;return n.isArray()&&a===1&&o===1&&(c=n.get(0,0)),e.isArray()?e.mapValue(e=>this._handleSingleObject(e,s,c,r,i,a,o)):this._handleSingleObject(e,s,c,r,i,a,o)}_handleSingleObject(e,t,n,r,i,a,o){if(e.isError())return e;if(t.isError())return t;if(n.isError())return n;let s=e;if(e.isString()&&(s=e.convertToNumberObjectValue()),s.isError())return s;let c=+s.getValue();if((r*i===1||a*o===1)&&(t.isNull()||n.isNull()))return E.create(p.VALUE);if(r*i!==a*o)return E.create(p.NA);let{isError:l,errorObject:u,array1Values:d,array2Values:f,noCalculate:m}=Sl(t,n,r*i,i,o);if(l)return u;if(m)return E.create(p.DIV_BY_ZERO);let h=$c(c,d,f);return Number.isFinite(h)?R.create(h):E.create(p.DIV_BY_ZERO)}},B_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,values:i}=this._getValues(e);if(n)return r;if(e.isNull()||t.isNull())return E.create(p.VALUE);let{values:a}=this._getValues(t,!0);a.length===0&&(a=[0]);let o=this._getNewBinsArrayValues(a),s=Array(o.length).fill(0);for(let e=0;e<i.length;e++){let t=i[e],n=o.findIndex(e=>t>e.start&&t<=e.end);s[n]++}return B.createByArray(s.map(e=>[e]))}_getValues(e,n=!1){let r=[],i=e.isArray()?e.getRowCount():1,a=e.isArray()?e.getColumnCount():1;for(let o=0;o<i;o++)for(let i=0;i<a;i++){let a=e.isArray()?e.get(o,i):e;if(a.isError()){if(!n)return{isError:!0,errorObject:a,values:r};continue}if(a.isNull()||a.isBoolean())continue;let s=a.getValue();(0,t.isRealNum)(s)&&r.push(+s)}return{isError:!1,errorObject:null,values:r}}_getNewBinsArrayValues(e){let t=e.map((e,t)=>({value:e,index:t})).sort((e,t)=>e.value-t.value),n=[];for(let e=0;e<t.length;e++){let r=t[e].index;if(e===0){n[r]={start:-1/0,end:t[e].value};continue}n[r]={start:t[e-1].value,end:t[e].value}}return n.push({start:t[t.length-1].value,end:1/0}),n}},V_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=+i.getValue();if(a===0||a<0&&a%1==0)return E.create(p.NUM);let o=el(a);return Number.isNaN(o)||!Number.isFinite(o)?E.create(p.NUM):R.create(o)}},H_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=+i.getValue();if(a<=0)return E.create(p.NUM);let o=il(a);return Math.abs(o)<1e-15?R.create(0):R.create(o)}},U_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=ml(+i.getValue(),0,1)-.5;return R.create(a)}},W_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let n=1,r=0,i=!1;for(let a=0;a<e.length;a++){let o=e[a];if(o.isArray()){let e=!1,a=E.create(p.VALUE);if(o.iterator(o=>{if(o!=null&&o.isError())return e=!0,a=o,!1;if(o!=null&&o.isNull()||o!=null&&o.isBoolean())return!0;let s=o.getValue();if(!(0,t.isRealNum)(s))return!0;+s<=0&&(i=!0),n*=+s,r++}),e)return a}else{if(o.isError())return o;if(o.isString()){let e=o.convertToNumberObjectValue();if(e.isError())return e}if(o.isNull()||o.isBoolean())continue;let e=o.getValue();if(!(0,t.isRealNum)(e))continue;+e<=0&&(i=!0),n*=+e,r++}}if(r===0||i)return E.create(p.NUM);let a=n**(1/r);return R.create(a)}},G_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a}=Cl(e,t,n);if(i)return a;let o=wl(e);if(o instanceof E)return o;let s=this._getKnownXsValues(o,t);if(s instanceof E)return s;let c=this._getNewXsValues(s,n);if(c instanceof E)return c;let l=r==null?L.create(!0):r;if(l.isArray()&&(l=l.get(0,0)),l.isString()&&(l=l.convertToNumberObjectValue()),l.isError())return l;let u=+l.getValue();return this._getResult(o,s,c,u)}_getResult(e,t,n,r){return e.length===1&&t.length>1||e[0].length===1&&t[0].length>1?e.length===1&&t.length>1&&(r?t.length+1:t.length)>e[0].length||e[0].length===1&&t[0].length>1&&(r?t[0].length+1:t[0].length)>e.length?E.create(p.NA):this._getResultByMultipleVariables(e,t,n,r):this._getResultBySimpleVariables(e,t,n,r)}_getResultByMultipleVariables(e,t,n,r){let i=e.length===1&&e[0].length>1,a=kl(e,t,n,r,!0);if(a instanceof E)return a;let{coefficients:o,newX:s}=a,c=o[0].length,l=o[0][c-1],u=[];for(let e=0;e<s.length;e++){u[e]=[];let t=l;for(let n=c-2;n>=0;n--)t*=o[0][c-2-n]**s[e][n];u[e].push(t)}return i&&(u=Cc(u)),B.createByArray(u)}_getResultBySimpleVariables(e,t,n,r){let i=e.flat(),{slope:a,intercept:o}=El(t.flat(),i,r,!0),s=n.map(e=>e.map(e=>o*a**e));return B.createByArray(s)}_getKnownXsValues(e,t){return!t||t.isNull()?Tl(e.length,e[0].length):wl(t)}_getNewXsValues(e,t){return!t||t.isNull()?e:wl(t)}},K_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let n=0,r=0,i=!1;for(let a=0;a<e.length;a++){let o=e[a];if(o.isArray()){let e=!1,a=E.create(p.VALUE);if(o.iterator(o=>{if(o!=null&&o.isError())return e=!0,a=o,!1;if(o!=null&&o.isNull()||o!=null&&o.isBoolean())return!0;let s=o.getValue();if(!(0,t.isRealNum)(s))return!0;+s<=0&&(i=!0),n+=1/s,r++}),e)return a}else{if(o.isError())return o;if(o.isString()){let e=o.convertToNumberObjectValue();if(e.isError())return e}if(o.isNull()||o.isBoolean())continue;let e=o.getValue();if(!(0,t.isRealNum)(e))continue;+e<=0&&(i=!0),n+=1/e,r++}}if(r===0)return E.create(p.NA);if(i)return E.create(p.NUM);let a=r/n;return R.create(a)}},q_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,5),d(this,`maxParams`,5)}calculate(e,t,n,r,i){let a=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1,i.isArray()?i.getRowCount():1),o=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1,i.isArray()?i.getColumnCount():1),s=V(a,o,e,E.create(p.NA)),c=V(a,o,t,E.create(p.NA)),l=V(a,o,n,E.create(p.NA)),u=V(a,o,r,E.create(p.NA)),d=V(a,o,i,E.create(p.NA)),f=s.mapValue((e,t,n)=>{let r=c.get(t,n),i=l.get(t,n),a=u.get(t,n),o=d.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:o.isError()?o:this._handleSingleObject(e,r,i,a,o)});return a===1&&o===1?f.get(0,0):f}_handleSingleObject(e,t,n,r,i){let{isError:a,errorObject:o,variants:s}=X(e,t,n,r,i);if(a)return o;let[c,l,u,d,f]=s,m=Math.floor(+c.getValue()),h=Math.floor(+l.getValue()),g=Math.floor(+u.getValue()),_=Math.floor(+d.getValue()),v=+f.getValue();if(m<0||m>h||m>g||m<h-_+g||h<=0||h>_||g<=0||g>_||_<=0)return E.create(p.NUM);let y;return y=v?sl(m,h,g,_):cl(m,h,g,_),Number.isNaN(y)&&(y=0),R.create(y)}},J_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return o;let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return s;if(n*r===1||i*a===1)return o.isNull()||s.isNull()?E.create(p.VALUE):E.create(p.DIV_BY_ZERO);if(n*r!==i*a)return E.create(p.NA);let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?l:f?E.create(p.DIV_BY_ZERO):this._getResult(u,d)}_getResult(e,t){let n=$c(0,e,t);return Number.isFinite(n)?R.create(n):E.create(p.DIV_BY_ZERO)}},Y_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let n=[],r=0;for(let i=0;i<e.length;i++){let a=e[i];if(a.isError())return a;if(a.isString()){let e=a.convertToNumberObjectValue();if(e.isError())return e}let o=a.isArray()?a.getRowCount():1,s=a.isArray()?a.getColumnCount():1;for(let e=0;e<o;e++)for(let i=0;i<s;i++){let o=a.isArray()?a.get(e,i):a;if(o.isError())return o;if(o.isNull()||o.isBoolean())continue;let s=o.getValue();(0,t.isRealNum)(s)&&(n.push(+s),r+=+s)}}return n.length<=3?E.create(p.DIV_BY_ZERO):this._getResult(n,r)}_getResult(e,t){let n=e.length,r=t/n,i=0;for(let t=0;t<n;t++)i+=(e[t]-r)**2;let a=Math.sqrt(i/(n-1));if(a===0)return E.create(p.DIV_BY_ZERO);let o=0;for(let t=0;t<n;t++)o+=((e[t]-r)/a)**4;let s=n*(n+1)/((n-1)*(n-2)*(n-3))*o-3*(n-1)**2/((n-2)*(n-3));return R.create(s)}},X_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Fl(e);if(t.isArray()){let e=t.mapValue(e=>this._handleSingleObject(n,e));return e.getRowCount()===1&&e.getColumnCount()===1?e.get(0,0):e}return this._handleSingleObject(n,t)}_handleSingleObject(e,t){if(!Array.isArray(e))return e;let{isError:n,errorObject:r,variants:i}=X(t);if(n)return r;let[a]=i;return Ll(e,+a.getValue())}},Z_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a}=Cl(e,t);if(i)return a;let o=wl(e);if(o instanceof E)return o;let s=this._getKnownXsValues(o,t);if(s instanceof E)return s;let c=n==null?L.create(!0):n;c.isArray()&&(c=c.get(0,0));let l=r==null?L.create(!1):r;l.isArray()&&(l=l.get(0,0));let{isError:u,errorObject:d,variants:f}=X(c,l);if(u)return d;let[p,m]=f;return this._getResult(o,s,+p.getValue(),+m.getValue())}_getResult(e,t,n,r){return e.length===1&&t.length>1||e[0].length===1&&t[0].length>1?e.length===1&&t.length>1&&(n?t.length+1:t.length)>e[0].length||e[0].length===1&&t[0].length>1&&(n?t[0].length+1:t[0].length)>e.length?E.create(p.NA):this._getResultByMultipleVariables(e,t,n,r):this._getResultBySimpleVariables(e,t,n,r)}_getResultByMultipleVariables(e,t,n,r){let i=kl(e,t,t,n,!1);if(i instanceof E)return i;let{coefficients:a,X:o,XTXInverse:s}=i,c=[];if(r){let t=e.flat(),r=t.length,i=n?t.reduce((e,t)=>e+t,0)/r:0,l=s.length,u=r-l,d=a[0].length,f=Array(d-2).fill(p.NA),m=a[0][d-1],h=[];for(let e=0;e<o.length;e++){let t=m;for(let n=d-2;n>=0;n--)t+=a[0][d-2-n]*o[e][n];h.push(t)}let g=0,_=0;for(let e=0;e<r;e++)g+=(t[e]-i)**2,_+=(t[e]-h[e])**2;let v=g-_,y=g===0?0:v/g,b=[];for(let e=l-1;e>=0;e--){let t=u>0?Math.sqrt(_/u*s[e][e]):0;b.push(t)}if(n){let e=b.shift();b.push(e)}else b.push(p.NA);let x=u>0?Math.sqrt(_/u):0,S=u>0?v/(d-1)/(_/u):p.NUM;c=[a[0],[...b],[y,x,...f],[S,u,...f],[v,_,...f]]}else c=[a[0]];return B.createByArray(c)}_getResultBySimpleVariables(e,t,n,r){let i=e.flat(),a=t.flat(),{slope:o,intercept:s}=El(a,i,n,!1);if(Number.isNaN(o))return E.create(p.NA);let c=[];if(r){let e=i.length,t=0,r=0,l=e-1;if(n){let n=0,o=0;for(let t=0;t<e;t++)n+=i[t],o+=a[t];t=n/e,r=o/e,l=e-2}let u=0,d=0,f=0;for(let n=0;n<e;n++)u+=(i[n]-t)**2,d+=(i[n]-(o*a[n]+s))**2,f+=(a[n]-r)**2;let m=u-d,h=m===u?1:m/u,g=0,_=0,v=0;l>0&&(f>0&&(g=Math.sqrt(d/l/f),_=Math.sqrt(d/l*(1/e+r**2/f))),v=Math.sqrt(d/l));let y=l>0?m/1/(d/l):p.NUM;n||(_=p.NA),c=[[o,s],[g,_],[h,v],[y,l],[m,d]]}else c=[[o,s]];return B.createByArray(c)}_getKnownXsValues(e,t){return!t||t.isNull()?Tl(e.length,e[0].length):wl(t)}},Q_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a}=Cl(e,t);if(i)return a;let o=wl(e);if(o instanceof E)return o;let s=this._getKnownXsValues(o,t);if(s instanceof E)return s;let c=n==null?L.create(!0):n;c.isArray()&&(c=c.get(0,0));let l=r==null?L.create(!1):r;l.isArray()&&(l=l.get(0,0));let{isError:u,errorObject:d,variants:f}=X(c,l);if(u)return d;let[p,m]=f;return this._getResult(o,s,+p.getValue(),+m.getValue())}_getResult(e,t,n,r){return e.length===1&&t.length>1||e[0].length===1&&t[0].length>1?e.length===1&&t.length>1&&(n?t.length+1:t.length)>e[0].length||e[0].length===1&&t[0].length>1&&(n?t[0].length+1:t[0].length)>e.length?E.create(p.NA):this._getResultByMultipleVariables(e,t,n,r):this._getResultBySimpleVariables(e,t,n,r)}_getResultByMultipleVariables(e,t,n,r){let i=kl(e,t,t,n,!0);if(i instanceof E)return i;let{coefficients:a,Y:o,X:s,XTXInverse:c}=i,l=[];if(r){let e=o.flat(),t=e.length,r=n?e.reduce((e,t)=>e+t,0)/t:0,i=c.length,u=t-i,d=a[0].length,f=Array(d-2).fill(p.NA),m=a[0][d-1],h=[];for(let e=0;e<s.length;e++){let t=m;for(let n=d-2;n>=0;n--)t*=a[0][d-2-n]**s[e][n];h.push(Math.log(t))}let g=0,_=0;for(let i=0;i<t;i++)g+=(e[i]-r)**2,!(!n&&!Number.isFinite(h[i]))&&(_+=(e[i]-h[i])**2);Number.isFinite(_)||(_=0);let v=g-_,y=g===0?0:v/g,b=[];for(let e=i-1;e>=0;e--){let t=u>0?Math.sqrt(_/u*c[e][e]):0;b.push(t)}if(n){let e=b.shift();b.push(e)}else b.push(p.NA);let x=u>0?Math.sqrt(_/u):0,S=u>0?v/(d-1)/(_/u):p.NUM;l=[a[0],[...b],[y,x,...f],[S,u,...f],[v,_,...f]]}else l=[a[0]];return B.createByArray(l)}_getResultBySimpleVariables(e,t,n,r){let i=e.flat(),a=t.flat(),{slope:o,intercept:s,Y:c}=El(a,i,n,!0);if(Number.isNaN(o))return E.create(p.NA);let l=[];if(r){let e=c.length,t=0,r=0,i=e-1;if(n){let n=0,o=0;for(let t=0;t<e;t++)n+=c[t],o+=a[t];t=n/e,r=o/e,i=e-2}let u=0,d=0,f=0;for(let n=0;n<e;n++)u+=(c[n]-t)**2,d+=(c[n]-Math.log(s*o**a[n]))**2,f+=(a[n]-r)**2;let m=u-d,h=u===0?0:m/u,g=0,_=0,v=0,y=0;i>0&&(f>0&&(g=Math.sqrt(d/i/f),_=Math.sqrt(d/i*(1/e+r**2/f))),v=Math.sqrt(d/i),y=m/1/(d/i)),n||(_=p.NA),l=[[o,s],[g,_],[h,v],[y,i],[m,d]]}else l=[[o,s]];return B.createByArray(l)}_getKnownXsValues(e,t){return!t||t.isNull()?Tl(e.length,e[0].length):wl(t)}},$_=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(e,t,n,r);if(i)return a;let[s,c,l,u]=o,d=+s.getValue(),f=+c.getValue(),m=+l.getValue(),h=+u.getValue();if(d<=0||m<=0)return E.create(p.NUM);let g;return g=h?ll(d,f,m):ul(d,f,m),R.create(g)}},ev=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=this._getRangeValues(e);if(n instanceof E)return n;let r=ec(t);if(r.isError())return r;let{isError:i,errorObject:a,variants:o}=X(r);if(i)return a;let[s]=o,c=+s.getValue();if(c<=0||c>=1)return E.create(p.NUM);if(n.length<2)return E.create(p.DIV_BY_ZERO);let l=1-c,u=n.length,d=n.reduce((e,t)=>e+t,0)/u,f=n.reduce((e,t)=>e+(t-d)**2,0)/(u-1),m=Math.sqrt(f);if(m<=0)return E.create(p.NUM);let h=Math.abs(xl(l/2,u-1)*m/Math.sqrt(u));return R.create(h)}_getRangeValues(e){let t=[],n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1;for(let i=0;i<n;i++)for(let n=0;n<r;n++){let r=e.isArray()?e.get(i,n):e;if(r.isError())return r;r.isNull()||r.isBoolean()||r.isString()||t.push(+r.getValue())}return t}},tv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(-1/0);for(let n=0;n<e.length;n++){let r=e[n];if(!r.isNull()){if((r.isString()||r.isBoolean())&&(r=r.convertToNumberObjectValue()),r.isArray()&&(r=r.max()),r.isError())return r;t=this._validator(t,r)}}return t.getValue()===-1/0?R.create(0):t}_validator(e,t){let n=e.isLessThan(t),r=e;return n.getValue()&&(r=t),r}},nv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(-1/0);for(let n=0;n<e.length;n++){let r=e[n];if(!r.isNull()){if((r.isString()||r.isBoolean())&&(r=r.convertToNumberObjectValue()),r.isError())return r;if(r.isArray()&&r.iterator(e=>{let n=e;if((n==null||n.isNull()||n.isString())&&(n=R.create(0)),n.isBoolean()&&(n=n.convertToNumberObjectValue()),n.isError())return t=n,!1;t=this._validator(t,n)}),t.isError())return t;t=this._validator(t,r)}}return t.getValue()===-1/0?R.create(0):t}_validator(e,t){let n=e.isLessThan(t),r=e;return n.getValue()&&(r=t),r}},rv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,255),d(this,`needsReferenceObject`,!0)}calculate(e,...t){let{isError:n,errorObject:r,rangeIsDifferentSize:i,criteriaMaxRowLength:a,criteriaMaxColumnLength:o,targetRange:s,variants:c}=vo(t,e);if(n)return r;if(i)return a===1&&o===1?E.create(p.VALUE):V(a,o,E.create(p.VALUE));let l=bo(c,{formulaName:`MAXIFS`,maxRowLength:a,maxColumnLength:o,isNumberSensitive:!0,targetRange:s});return l.length===1&&l[0].length===1?l[0][0]:B.create({calculateValueList:l,rowCount:l.length,columnCount:l[0].length,unitId:this.unitId||``,sheetId:this.subUnitId||``,row:this.row,column:this.column})}},iv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let n=[];for(let r=0;r<e.length;r++){let i=e[r];if(i.isArray()){let e=!1,r=E.create(p.VALUE);if(i.iterator(i=>{if(i!=null&&i.isError())return e=!0,r=i,!1;if(i!=null&&i.isNull()||i!=null&&i.isBoolean())return!0;let a=i.getValue();if(!(0,t.isRealNum)(a))return!0;n.push(+a)}),e)return r}else{if(i.isError())return i;if(i.isNull()||i.isBoolean())continue;if(i.isString()){let e=i.convertToNumberObjectValue();if(e.isError())return e}let e=i.getValue();if(!(0,t.isRealNum)(e))continue;n.push(+e)}}return n.length===0?E.create(p.NUM):Il(n)}},av=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(1/0);for(let n=0;n<e.length;n++){let r=e[n];if(!r.isNull()){if((r.isString()||r.isBoolean())&&(r=r.convertToNumberObjectValue()),r.isArray()&&(r=r.min()),r.isError())return r;t=this._validator(t,r)}}return t.getValue()===1/0?R.create(0):t}_validator(e,t){let n=e.isGreaterThan(t),r=e;return n.getValue()&&(r=t),r}},ov=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=R.create(1/0);for(let n=0;n<e.length;n++){let r=e[n];if(!r.isNull()){if((r.isString()||r.isBoolean())&&(r=r.convertToNumberObjectValue()),r.isError())return r;if(r.isArray()&&r.iterator(e=>{let n=e;if((n==null||n.isNull()||n.isString())&&(n=R.create(0)),n.isBoolean()&&(n=n.convertToNumberObjectValue()),n.isError())return t=n,!1;t=this._validator(t,n)}),t.isError())return t;t=this._validator(t,r)}}return t.getValue()===1/0?R.create(0):t}_validator(e,t){let n=e.isGreaterThan(t),r=e;return n.getValue()&&(r=t),r}},sv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,255),d(this,`needsReferenceObject`,!0)}calculate(e,...t){let{isError:n,errorObject:r,rangeIsDifferentSize:i,criteriaMaxRowLength:a,criteriaMaxColumnLength:o,targetRange:s,variants:c}=vo(t,e);if(n)return r;if(i)return a===1&&o===1?E.create(p.VALUE):V(a,o,E.create(p.VALUE));let l=bo(c,{formulaName:`MINIFS`,maxRowLength:a,maxColumnLength:o,isNumberSensitive:!0,targetRange:s});return l.length===1&&l[0].length===1?l[0][0]:B.create({calculateValueList:l,rowCount:l.length,columnCount:l[0].length,unitId:this.unitId||``,sheetId:this.subUnitId||``,row:this.row,column:this.column})}},cv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let n={},r=0,i=1;for(let a=0;a<e.length;a++){let o=e[a];if(o.isError())return o;if(o.isString()){let e=o.convertToNumberObjectValue();if(e.isError())return e}let s=o.isArray()?o.getRowCount():1,c=o.isArray()?o.getColumnCount():1;for(let e=0;e<s;e++)for(let a=0;a<c;a++){let s=o.isArray()?o.get(e,a):o;if(s.isError())return s;if(s.isNull()||s.isBoolean()||s.isString())continue;let c=s.getValue();(0,t.isRealNum)(c)&&(n[+c]?(n[+c].count++,n[+c].count>i&&(i=n[+c].count)):n[+c]={count:1,order:r++})}}return r===0||i===1?new E(p.NA):this._getResult(n,i)}_getResult(e,t){let n=Object.entries(e).filter(([e,{count:n}])=>n===t).sort((e,t)=>e[1].order-t[1].order).map(([e])=>+e);return n.length===1?R.create(n[0]):B.createByArray(n.map(e=>[e]))}},lv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(e,t,n,r);if(i)return a;let[s,c,l,u]=o,d=Math.floor(+s.getValue()),f=Math.floor(+c.getValue()),m=+l.getValue(),h=+u.getValue();if(d<0||f<1||m<=0||m>=1)return E.create(p.NUM);let g;return g=h?fl(d,f,m):pl(d,f,m),R.create(g)}},uv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return n===1&&r===1?o.get(0,0):o}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=+o.getValue(),l;return l=c?ml(s,0,1):hl(s,0,1),R.create(l)}},dv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return o;let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return s;if(n*r===1||i*a===1)return o.isNull()||s.isNull()?E.create(p.VALUE):E.create(p.DIV_BY_ZERO);if(n*r!==i*a)return E.create(p.NA);let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?l:f?E.create(p.DIV_BY_ZERO):this._getResult(u,d)}_getResult(e,t){let n=e.length,r=0,i=0;for(let a=0;a<n;a++)r+=e[a],i+=t[a];let a=r/n,o=i/n,s=0,c=0,l=0;for(let r=0;r<n;r++)s+=(e[r]-a)*(t[r]-o),c+=(e[r]-a)**2,l+=(t[r]-o)**2;if(c===0||l===0)return E.create(p.DIV_BY_ZERO);let u=s/Math.sqrt(c*l);return R.create(u)}},fv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Fl(e);if(t.isArray()){let e=t.mapValue(e=>this._handleSingleObject(n,e));return e.getRowCount()===1&&e.getColumnCount()===1?e.get(0,0):e}return this._handleSingleObject(n,t)}_handleSingleObject(e,t){if(!Array.isArray(e))return e;let{isError:n,errorObject:r,variants:i}=X(t);if(n)return r;let[a]=i;return Bl(e,+a.getValue())}},pv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=this._getValues(e),i=n==null?R.create(3):n;i.isNull()&&(i=R.create(3));let a=Math.max(t.isArray()?t.getRowCount():1,i.isArray()?i.getRowCount():1),o=Math.max(t.isArray()?t.getColumnCount():1,i.isArray()?i.getColumnCount():1),s=V(a,o,t,E.create(p.NA)),c=V(a,o,i,E.create(p.NA)),l=s.mapValue((e,t,n)=>{let i=c.get(t,n);return e.isError()?e:i.isError()?i:this._handleSingleObject(r,e,i)});return a===1&&o===1?l.get(0,0):l}_handleSingleObject(e,t,n){if(e instanceof E)return e;let{isError:r,errorObject:i,variants:a}=X(t,n);if(r)return i;let[o,s]=a,c=+o.getValue(),l=Math.floor(+s.getValue()),u=e.length;if(u===0||c<e[0]||c>e[u-1])return E.create(p.NA);if(u===1)return c===e[0]?R.create(1):E.create(p.NA);let d=0,f=!1,m=0;for(;!f&&m<u;)c===e[m]?(d=(m+1)/(u+1),f=!0):c>e[m]&&m+1<u&&c<e[m+1]&&(d=(m+1+(c-e[m])/(e[m+1]-e[m]))/(u+1),f=!0),m++;return f?l<1?E.create(p.NUM):(d=Oa(d,l),R.create(d)):E.create(p.NA)}_getValues(e){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=[];for(let a=0;a<n;a++)for(let n=0;n<r;n++){let r=e.isArray()?e.get(a,n):e;if(r.isError())return r;if(r.isNull()||r.isBoolean())continue;let o=r.getValue();(0,t.isRealNum)(o)&&i.push(+o)}return i.sort((e,t)=>e-t)}},mv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);if(e.isError())return e;if(r.isError())return r;let{isError:i,errorObject:o,variants:s}=X(e,r);if(i)return o;let[c,l]=s,u=Math.floor(+c.getValue()),d=Math.floor(+l.getValue());if(u<0||u>=2147483647||d<0||u<d)return E.create(p.NUM);let f=1;for(let e=u-d+1;e<=u;e++)f*=e;return Number.isFinite(f)?R.create(f):E.create(p.NUM)});return n===1&&r===1?o.get(0,0):o}},hv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);if(e.isError())return e;if(r.isError())return r;let{isError:i,errorObject:o,variants:s}=X(e,r);if(i)return o;let[c,l]=s,u=Math.floor(+c.getValue()),d=Math.floor(+l.getValue());if(u<0||u>=2147483647||d<0)return E.create(p.NUM);if(u===0)return d===0?R.create(1):R.create(0);let f=u**d;return Number.isFinite(f)?R.create(f):E.create(p.NUM)});return n===1&&r===1?o.get(0,0):o}},gv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=+i.getValue(),o=Math.exp(-.5*a*a)/Math.sqrt(2*Math.PI);return R.create(o)}},_v=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a,xRangeValues:o,probRangeValues:s}=this._handleXRangeAndProbRange(e,t),c=r==null?n:r;r!=null&&r.isNull()&&(c=n);let l=Math.max(n.isArray()?n.getRowCount():1,c.isArray()?c.getRowCount():1),u=Math.max(n.isArray()?n.getColumnCount():1,c.isArray()?c.getColumnCount():1),d=V(l,u,n,E.create(p.NA)),f=V(l,u,c,E.create(p.NA)),m=d.mapValue((n,r,c)=>{let l=f.get(r,c);return e.isError()?e:t.isError()?t:n.isError()?n:l.isError()?l:i?a:this._handleSingleObject(o,s,n,l)});return l===1&&u===1?m.get(0,0):m}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(n,r);if(i)return a;let[s,c]=o,l=+s.getValue(),u=+c.getValue();if(t.reduce((e,t)=>e+t,0)!==1)return E.create(p.NUM);let d=0;for(let n=0;n<e.length;n++)e[n]>=l&&e[n]<=u&&(d+=t[n]);return R.create(d)}_handleXRangeAndProbRange(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return{isError:!0,errorObject:o,xRangeValues:[],probRangeValues:[]};let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return{isError:!0,errorObject:s,xRangeValues:[],probRangeValues:[]};if((n*r===1||i*a===1)&&(o.isNull()||s.isNull()))return{isError:!0,errorObject:E.create(p.VALUE),xRangeValues:[],probRangeValues:[]};if(n*r!==i*a)return{isError:!0,errorObject:E.create(p.NA),xRangeValues:[],probRangeValues:[]};let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?{isError:!0,errorObject:l,xRangeValues:[],probRangeValues:[]}:f?{isError:!0,errorObject:E.create(p.DIV_BY_ZERO),xRangeValues:[],probRangeValues:[]}:{isError:!1,errorObject:null,xRangeValues:u,probRangeValues:d}}},vv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Fl(e);if(t.isArray()){let e=t.mapValue(e=>this._handleSingleObject(n,e));return e.getRowCount()===1&&e.getColumnCount()===1?e.get(0,0):e}return this._handleSingleObject(n,t)}_handleSingleObject(e,t){if(!Array.isArray(e))return e;let{isError:n,errorObject:r,variants:i}=X(t);if(n)return r;let[a]=i;return Hl(e,Math.floor(+a.getValue()))}},yv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3),d(this,`needsReferenceObject`,!0)}calculate(e,t,n){let r=e;r.isReferenceObject()&&(r=r.toArrayValueObject());let{refHasError:i,refErrorObject:a,refNumbers:o}=this._checkRefReferenceObject(t),s=n==null?R.create(0):n;s.isReferenceObject()&&(s=s.toArrayValueObject());let c=Math.max(r.isArray()?r.getRowCount():1,s.isArray()?s.getRowCount():1),l=Math.max(r.isArray()?r.getColumnCount():1,s.isArray()?s.getColumnCount():1),u=V(c,l,r,E.create(p.NA)),d=V(c,l,s,E.create(p.NA)),f=u.map((t,n,r)=>{let s=d.get(n,r);if(!e.isReferenceObject()&&e.isNull())return E.create(p.NA);if(i)return a;if(s.isError())return s;let c=+t.getValue(),l=+s.getValue();return Number.isNaN(c)||Number.isNaN(l)?E.create(p.VALUE):this._getResult(c,l,o)});return c===1&&l===1?f.get(0,0):f}_getResult(e,t,n){let r=n.sort((e,n)=>t?e-n:n-e),i=r.indexOf(e),a=[];for(;i>=0;){let t=i+1;a.push(t),i=r.indexOf(e,t)}if(a.length===0)return E.create(p.NA);let o=a.reduce((e,t)=>e+t,0)/a.length;return R.create(o)}_checkRefReferenceObject(e){let t=!1,n=E.create(p.NA),r=[];return e.isReferenceObject()?(e.toArrayValueObject().iterator(e=>{let i=e;if(i.isError())return t=!0,n=i,!1;if(i.isNull()||i.isBoolean())return!0;let a=+i.getValue();if(Number.isNaN(a))return!0;r.push(a)}),{refHasError:t,refErrorObject:n,refNumbers:r}):{refHasError:!0,refErrorObject:n,refNumbers:r}}},bv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3),d(this,`needsReferenceObject`,!0)}calculate(e,t,n){let r=e;r.isReferenceObject()&&(r=r.toArrayValueObject());let{refHasError:i,refErrorObject:a,refNumbers:o}=this._checkRefReferenceObject(t),s=n==null?R.create(0):n;s.isReferenceObject()&&(s=s.toArrayValueObject());let c=Math.max(r.isArray()?r.getRowCount():1,s.isArray()?s.getRowCount():1),l=Math.max(r.isArray()?r.getColumnCount():1,s.isArray()?s.getColumnCount():1),u=V(c,l,r,E.create(p.NA)),d=V(c,l,s,E.create(p.NA)),f=u.map((t,n,r)=>{let s=d.get(n,r);if(!e.isReferenceObject()&&e.isNull())return E.create(p.NA);if(i)return a;if(s.isError())return s;let c=+t.getValue(),l=+s.getValue();if(Number.isNaN(c)||Number.isNaN(l))return E.create(p.VALUE);let u=o.sort((e,t)=>l?e-t:t-e).indexOf(c);return u===-1?E.create(p.NA):R.create(u+1)});return c===1&&l===1?f.get(0,0):f}_checkRefReferenceObject(e){let t=!1,n=E.create(p.NA),r=[];return e.isReferenceObject()?(e.toArrayValueObject().iterator(e=>{let i=e;if(i.isError())return t=!0,n=i,!1;if(i.isNull()||i.isBoolean())return!0;let a=+i.getValue();if(Number.isNaN(a))return!0;r.push(a)}),{refHasError:t,refErrorObject:n,refNumbers:r}):{refHasError:!0,refErrorObject:n,refNumbers:r}}},xv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return o;let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return s;if((n*r===1||i*a===1)&&(o.isNull()||s.isNull()))return E.create(p.VALUE);if(n*r!==i*a)return E.create(p.NA);let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?l:f?E.create(p.DIV_BY_ZERO):this._getResult(u,d)}_getResult(e,t){if(e.length===0)return E.create(p.DIV_BY_ZERO);let n=e.length,r=0,i=0;for(let a=0;a<n;a++)r+=e[a],i+=t[a];let a=r/n,o=i/n,s=0,c=0,l=0;for(let r=0;r<n;r++)s+=(e[r]-a)*(t[r]-o),c+=(e[r]-a)**2,l+=(t[r]-o)**2;if(c===0||l===0)return E.create(p.DIV_BY_ZERO);let u=(s/Math.sqrt(c*l))**2;return R.create(u)}},Sv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let n=[],r=0;for(let i=0;i<e.length;i++){let a=e[i];if(a.isError())return a;if(a.isString()){let e=a.convertToNumberObjectValue();if(e.isError())return e}let o=a.isArray()?a.getRowCount():1,s=a.isArray()?a.getColumnCount():1;for(let e=0;e<o;e++)for(let i=0;i<s;i++){let o=a.isArray()?a.get(e,i):a;if(o.isError())return o;if(o.isNull()||o.isBoolean())continue;let s=o.getValue();(0,t.isRealNum)(s)&&(n.push(+s),r+=+s)}}return n.length<=2?E.create(p.DIV_BY_ZERO):this._getResult(n,r)}_getResult(e,t){let n=e.length,r=t/n,i=0;for(let t=0;t<n;t++)i+=(e[t]-r)**2;let a=Math.sqrt(i/(n-1));if(a===0)return E.create(p.DIV_BY_ZERO);let o=0;for(let t=0;t<n;t++)o+=((e[t]-r)/a)**3;let s=n/((n-1)*(n-2))*o;return R.create(s)}},Cv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let n=[],r=0;for(let i=0;i<e.length;i++){let a=e[i];if(a.isError())return a;if(a.isString()){let e=a.convertToNumberObjectValue();if(e.isError())return e}let o=a.isArray()?a.getRowCount():1,s=a.isArray()?a.getColumnCount():1;for(let e=0;e<o;e++)for(let i=0;i<s;i++){let o=a.isArray()?a.get(e,i):a;if(o.isError())return o;if(o.isNull()||o.isBoolean())continue;let s=o.getValue();(0,t.isRealNum)(s)&&(n.push(+s),r+=+s)}}return n.length<=2?E.create(p.DIV_BY_ZERO):this._getResult(n,r)}_getResult(e,t){let n=e.length,r=t/n,i=0;for(let t=0;t<n;t++)i+=(e[t]-r)**2;let a=Math.sqrt(i/n);if(a===0)return E.create(p.DIV_BY_ZERO);let o=0;for(let t=0;t<n;t++)o+=((e[t]-r)/a)**3;let s=o/n;return R.create(s)}},wv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return o;let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return s;if(n*r===1||i*a===1)return o.isNull()||s.isNull()?E.create(p.VALUE):E.create(p.DIV_BY_ZERO);if(n*r!==i*a)return E.create(p.NA);let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?l:f?E.create(p.DIV_BY_ZERO):this._getResult(u,d)}_getResult(e,t){let n=e.length,r=0,i=0;for(let a=0;a<n;a++)r+=e[a],i+=t[a];let a=r/n,o=i/n,s=0,c=0;for(let r=0;r<n;r++)s+=(e[r]-a)*(t[r]-o),c+=(t[r]-o)**2;if(c===0)return E.create(p.DIV_BY_ZERO);let l=s/c;return R.create(l)}},Tv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Fl(e);if(t.isArray()){let e=t.mapValue(e=>this._handleSingleObject(n,e));return e.getRowCount()===1&&e.getColumnCount()===1?e.get(0,0):e}return this._handleSingleObject(n,t)}_handleSingleObject(e,t){if(!Array.isArray(e))return e;let{isError:n,errorObject:r,variants:i}=X(t);if(n)return r;let[a]=i;return Rl(e,+a.getValue())}},Ev=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=+s.getValue(),d=+c.getValue();if(d<=0)return E.create(p.NUM);let f=(l-u)/d;return R.create(f)}},Dv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=this.flattenArray(e,!1);return t.isError()?t:t.std(1)}},Ov=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=this.flattenArray(e,!1);return t.isError()?t:t.std()}},kv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=t.isArray()?t.getRowCount():1,a=t.isArray()?t.getColumnCount():1,o=e;if(e.isArray()&&n===1&&r===1&&(o=e.get(0,0)),o.isError())return o;let s=t;if(t.isArray()&&i===1&&a===1&&(s=t.get(0,0)),s.isError())return s;if((n*r===1||i*a===1)&&(o.isNull()||s.isNull()))return E.create(p.VALUE);if(n*r!==i*a)return E.create(p.NA);let{isError:c,errorObject:l,array1Values:u,array2Values:d,noCalculate:f}=Sl(e,t,n*r,r,a);return c?l:f?E.create(p.DIV_BY_ZERO):this._getResult(u,d)}_getResult(e,t){let n=e.length;if(n<=2)return E.create(p.DIV_BY_ZERO);let r=0,i=0;for(let a=0;a<n;a++)r+=e[a],i+=t[a];let a=r/n,o=i/n,s=0,c=0,l=0;for(let r=0;r<n;r++)s+=(e[r]-a)*(t[r]-o),c+=(e[r]-a)**2,l+=(t[r]-o)**2;if(l===0)return E.create(p.DIV_BY_ZERO);let u=Math.sqrt((c-s**2/l)/(n-2));return Number.isNaN(u)||!Number.isFinite(u)?E.create(p.NUM):R.create(u)}},Av=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=Math.floor(+s.getValue()),d=+c.getValue();if(u<1)return E.create(p.NUM);let f;return f=d?yl(l,u):bl(l,u),Number.isNaN(f)||!Number.isFinite(f)?E.create(p.NUM):R.create(f)}},jv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return n===1&&r===1?o.get(0,0):o}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(s<0||c<1||c>10**10)return E.create(p.NUM);let l=yl(-s,c)*2;return Number.isNaN(l)||!Number.isFinite(l)?E.create(p.NUM):R.create(l)}},Mv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return n===1&&r===1?o.get(0,0):o}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(c<1||c>10**10)return E.create(p.NUM);let l=yl(-s,c);return Number.isNaN(l)||!Number.isFinite(l)?E.create(p.NUM):R.create(l)}},Nv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return n===1&&r===1?o.get(0,0):o}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.floor(+o.getValue());if(s<=0||s>1||c<1||c>10**10)return E.create(p.NUM);let l=xl(s,c);return Number.isNaN(l)||!Number.isFinite(l)?E.create(p.NUM):R.create(l)}},Pv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,4)}calculate(e,t,n,r){let{isError:i,errorObject:a}=Cl(e,t,n);if(i)return a;let o=wl(e);if(o instanceof E)return o;let s=this._getKnownXsValues(o,t);if(s instanceof E)return s;let c=this._getNewXsValues(s,n);if(c instanceof E)return c;let l=r==null?L.create(!0):r;if(l.isArray()&&(l=l.get(0,0)),l.isString()&&(l=l.convertToNumberObjectValue()),l.isError())return l;let u=+l.getValue();return this._getResult(o,s,c,u)}_getResult(e,t,n,r){return e.length===1&&t.length>1||e[0].length===1&&t[0].length>1?e.length===1&&t.length>1&&(r?t.length+1:t.length)>e[0].length||e[0].length===1&&t[0].length>1&&(r?t[0].length+1:t[0].length)>e.length?E.create(p.NA):this._getResultByMultipleVariables(e,t,n,r):this._getResultBySimpleVariables(e,t,n,r)}_getResultByMultipleVariables(e,t,n,r){let i=e.length===1&&e[0].length>1,a=kl(e,t,n,r,!1);if(a instanceof E)return a;let{coefficients:o,newX:s}=a,c=o[0].length,l=o[0][c-1],u=[];for(let e=0;e<s.length;e++){u[e]=[];let t=l;for(let n=c-2;n>=0;n--)t+=o[0][c-2-n]*s[e][n];u[e].push(t)}return i&&(u=Cc(u)),B.createByArray(u)}_getResultBySimpleVariables(e,t,n,r){let i=e.flat(),{slope:a,intercept:o}=El(t.flat(),i,r,!1);if(Number.isNaN(a))return E.create(p.NA);let s=n.map(e=>e.map(e=>a*e+o));return B.createByArray(s)}_getKnownXsValues(e,t){return!t||t.isNull()?Tl(e.length,e[0].length):wl(t)}_getNewXsValues(e,t){return!t||t.isNull()?e:wl(t)}},Fv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=this._getValues(e);if(t.isArray()){let e=t.mapValue(e=>this._handleSingleObject(n,e));return e.getRowCount()===1&&e.getColumnCount()===1?e.get(0,0):e}return this._handleSingleObject(n,t)}_handleSingleObject(e,t){if(e instanceof E)return e;let{isError:n,errorObject:r,variants:i}=X(t);if(n)return r;let[a]=i,o=+a.getValue();if(o<0||o>=1)return E.create(p.NUM);let s=Oa(e.length*o/2,0)*2,c=e.slice(s/2,e.length-s/2),l=c.reduce((e,t)=>e+t,0)/c.length;return R.create(l)}_getValues(e){let n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1,i=[];for(let a=0;a<n;a++)for(let n=0;n<r;n++){let r=e.isArray()?e.get(a,n):e;if(r.isError())return r;if(r.isNull()||r.isBoolean())continue;let o=r.getValue();(0,t.isRealNum)(o)&&i.push(+o)}return i.length===0?E.create(p.NUM):i.sort((e,t)=>e-t)}},Iv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=this.flattenArray(e,!1);return t.isError()?t:t.var(1)}},Lv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=this.flattenArray(e,!1);return t.isError()?t:t.var()}};let Rv=[[h_,q.AVEDEV],[__,q.AVERAGE],[v_,q.AVERAGE_WEIGHTED],[y_,q.AVERAGEA],[b_,q.AVERAGEIF],[x_,q.AVERAGEIFS],[S_,q.BETA_DIST],[Ul,q.BETA_INV],[Wl,q.BINOM_DIST],[C_,q.BINOM_DIST_RANGE],[Gl,q.BINOM_INV],[w_,q.CHISQ_DIST],[Kl,q.CHISQ_DIST_RT],[T_,q.CHISQ_INV],[ql,q.CHISQ_INV_RT],[Jl,q.CHISQ_TEST],[Yl,q.CONFIDENCE_NORM],[E_,q.CONFIDENCE_T],[D_,q.CORREL],[O_,q.COUNT],[k_,q.COUNTA],[A_,q.COUNTBLANK],[j_,q.COUNTIF],[M_,q.COUNTIFS],[Xl,q.COVARIANCE_P],[N_,q.COVARIANCE_S],[P_,q.DEVSQ],[Zl,q.EXPON_DIST],[F_,q.F_DIST],[Ql,q.F_DIST_RT],[I_,q.F_INV],[$l,q.F_INV_RT],[eu,q.F_TEST],[L_,q.FISHER],[R_,q.FISHERINV],[z_,q.FORECAST],[z_,q.FORECAST_LINEAR],[B_,q.FREQUENCY],[V_,q.GAMMA],[tu,q.GAMMA_DIST],[nu,q.GAMMA_INV],[H_,q.GAMMALN],[H_,q.GAMMALN_PRECISE],[U_,q.GAUSS],[W_,q.GEOMEAN],[G_,q.GROWTH],[K_,q.HARMEAN],[q_,q.HYPGEOM_DIST],[J_,q.INTERCEPT],[Y_,q.KURT],[X_,q.LARGE],[Z_,q.LINEST],[Q_,q.LOGEST],[$_,q.LOGNORM_DIST],[ru,q.LOGNORM_INV],[ev,q.MARGINOFERROR],[tv,q.MAX],[nv,q.MAXA],[rv,q.MAXIFS],[iv,q.MEDIAN],[av,q.MIN],[ov,q.MINA],[sv,q.MINIFS],[cv,q.MODE_MULT],[iu,q.MODE_SNGL],[lv,q.NEGBINOM_DIST],[au,q.NORM_DIST],[ou,q.NORM_INV],[uv,q.NORM_S_DIST],[su,q.NORM_S_INV],[dv,q.PEARSON],[fv,q.PERCENTILE_EXC],[cu,q.PERCENTILE_INC],[pv,q.PERCENTRANK_EXC],[lu,q.PERCENTRANK_INC],[mv,q.PERMUT],[hv,q.PERMUTATIONA],[gv,q.PHI],[uu,q.POISSON_DIST],[_v,q.PROB],[vv,q.QUARTILE_EXC],[du,q.QUARTILE_INC],[yv,q.RANK_AVG],[bv,q.RANK_EQ],[xv,q.RSQ],[Sv,q.SKEW],[Cv,q.SKEW_P],[wv,q.SLOPE],[Tv,q.SMALL],[Ev,q.STANDARDIZE],[fu,q.STDEV_P],[pu,q.STDEV_S],[Dv,q.STDEVA],[Ov,q.STDEVPA],[kv,q.STEYX],[Av,q.T_DIST],[jv,q.T_DIST_2T],[Mv,q.T_DIST_RT],[Nv,q.T_INV],[mu,q.T_INV_2T],[hu,q.T_TEST],[Pv,q.TREND],[Fv,q.TRIMMEAN],[gu,q.VAR_P],[_u,q.VAR_S],[Iv,q.VARA],[Lv,q.VARPA],[vu,q.WEIBULL_DIST],[yu,q.Z_TEST]];var zv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(0):t;if(t!=null&&t.isNull()&&(n=R.create(0)),n.isArray()){let t=n.mapValue(t=>this._handleSingleObject(e,t));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e,n)}_handleSingleObject(e,t){let n=this._checkArray(e);if(n.isError())return n;let{isError:r,errorObject:i,variants:a}=X(t);if(r)return i;let[o]=a,s=+o.getValue(),c=e.isArray()?e.getRowCount():1,l=e.isArray()?e.getColumnCount():1,u=``;for(let t=0;t<c;t++)for(let n=0;n<l;n++){let r=e.isArray()?e.get(t,n):e,i=`${r.getValue()}`;r.isNull()&&(i=``),r.isBoolean()&&(i=i.toLocaleUpperCase()),r.isString()&&s?u+=`"${i}"`:u+=i,t===c-1&&n===l-1||(s?n===l-1?u+=`;`:u+=`,`:u+=`, `)}return s&&(u=`{${u}}`),u.length>32767?E.create(p.CALC):z.create(u)}_checkArray(e){if(e.isArray()){let t=e.getRowCount(),n=e.getColumnCount();return t>1||n>1?e:e.get(0,0)}return e}},Bv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError()||e.isNull()||e.isBoolean()||e.isNumber())return e;let t=e.getValue().toLocaleString(),n=``;for(let e=0;e<t.length;e++){let r=t.charCodeAt(e);r===12288?r=32:r>=65281&&r<=65374&&(r-=65248),n+=String.fromCharCode(r)}return z.create(n)}},Vv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=+i.getValue(),o=Math.abs(Number.parseInt(a.toString(),10)),s=Number.parseFloat((Math.abs(a)-o).toFixed(2)),c=``;return c=o===0?s===0?`ศูนย์บาทถ้วน`:`${a<0?`ลบ`:``}${this._convertNumberToThaiText(s*100)}สตางค์`:s===0?`${a<0?`ลบ`:``}${this._convertNumberToThaiText(o)}บาทถ้วน`:`${a<0?`ลบ`:``}${this._convertNumberToThaiText(o)}บาท${this._convertNumberToThaiText(s*100)}สตางค์`,z.create(c)}_convertNumberToThaiText(e){let t=[`ล้าน`,`สิบ`,`ร้อย`,`พัน`,`หมื่น`,`แสน`,``],n=[`ศูนย์`,`หนึ่ง`,`สอง`,`สาม`,`สี่`,`ห้า`,`หก`,`เจ็ด`,`แปด`,`เก้า`],r=[`ลบ`,`บาท`,`ถ้วน`,`สตางค์`,`ยี่`,`เอ็ด`,`,`,` `,`฿`],i=e.toString(),a=i.length,o=``;for(let e=a;e>0;e--){let s=Number.parseInt(i.charAt(a-e),10),c=n[s],l=e>1?(e-1)%6:6;if(l===1&&s===2&&(c=r[4]),s===1)switch(l){case 0:case 6:o+=e<a?r[5]:c;break;case 1:break;default:o+=c;break}else if(s===0){l===0&&(o+=t[l]);continue}else o+=c;o+=t[l]}return o}};let Hv=Object.values(t.DataStreamTreeTokenType).filter(e=>[t.DataStreamTreeTokenType.TABLE_START,t.DataStreamTreeTokenType.TABLE_ROW_START,t.DataStreamTreeTokenType.TABLE_CELL_START,t.DataStreamTreeTokenType.TABLE_CELL_END,t.DataStreamTreeTokenType.TABLE_ROW_END,t.DataStreamTreeTokenType.TABLE_END,t.DataStreamTreeTokenType.CUSTOM_BLOCK].includes(e));var Uv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=Math.floor(+i.getValue());if(a<=0)return E.create(p.VALUE);let o=String.fromCharCode(a);return Hv.some(e=>e===o)&&(o=``),z.create(o)}},Wv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError()||e.isBoolean()||e.isNumber())return e;if(e.isNull())return z.create(``);let t=`${e.getValue()}`.replace(/[\0-\x1F]/g,``);return z.create(t)}},Gv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);let t=e.getValue().toLocaleString();if(e.isBoolean()&&(t=t.toLocaleUpperCase()),t===``)return E.create(p.VALUE);let n=t.charCodeAt(0);return R.create(n)}},Kv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=``,n=null;for(let r of e)if(r.isArray()){if(r.iterator(e=>{if(e==null||e.isNull())return!0;if(e.isError())return n=e,!1;e.isBoolean()?t+=`${e.getValue()}`.toLocaleUpperCase():(e.isString()||e.isNumber())&&(t+=e.getValue())}),n)return n}else !r.isError()&&!r.isNull()&&(t+=r.getValue());return z.create(t)}},qv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,255)}calculate(...e){let t=0,n=0;e.forEach(e=>{if(e.isArray()){let r=e;t=Math.max(t,r.getRowCount()),n=Math.max(n,r.getColumnCount())}else t=Math.max(t,1),n=Math.max(n,1)});let r=null;for(let i of e)r=V(t,n,i,E.create(p.NA)).mapValue((e,t,n)=>{var i,a;let o=r&&r.get(t,n);if(o!=null&&o.isError())return o;if(e.isError())return e;let s=o==null?void 0:o.getValue(),c=e==null?void 0:e.getValue();o!=null&&o.isBoolean()&&(s=`${s}`.toLocaleUpperCase()),e!=null&&e.isBoolean()&&(c=`${c}`.toLocaleUpperCase());let l=o!=null&&o.isNull()||(i=s)==null?``:i,u=e!=null&&e.isNull()||(a=c)==null?``:a;return z.create(`${l}${u}`)});return r||E.create(p.VALUE)}},Jv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;if(e.isNull())return z.create(``);let t=`${e.getValue()}`;e.isBoolean()&&(t=t.toLocaleUpperCase());let n=``;for(let e=0;e<t.length;e++){let r=t.charCodeAt(e);r>=33&&r<=126?n+=String.fromCharCode(r+65248):r===32?n+=` `:n+=t.charAt(e)}return z.create(n)}},Yv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2),d(this,`needsLocale`,!0)}calculate(e,t){let n=t==null?R.create(2):t;n.isNull()&&(n=R.create(2));let r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.mapValue((e,t,n)=>{let r=o.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return r===1&&i===1?s.get(0,0):s}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(e,t);if(n)return r;let[a,o]=i,s=+a.getValue(),c=Math.trunc(+o.getValue());if(c>127)return E.create(p.VALUE);c<0&&(s=`${s}`.length<Math.abs(c)?0:s<0?-Da(Math.abs(s),c):Da(s,c),c=0);let l=Fr(this.getLocale(),s,c);return z.create(l)}},Xv=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,Ua.create()),a=V(n,r,t,Ua.create()),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return n===1&&r===1?o.get(0,0):o}_handleSingleObject(e,t){if(e.isNull()||t.isNull()){let n=e.isNull()&&t.isNull();return L.create(n)}let n=`${e.getValue()}`;e.isBoolean()&&(n=n.toLocaleUpperCase());let r=`${t.getValue()}`;t.isBoolean()&&(r=r.toLocaleUpperCase());let i=n===r;return L.create(i)}};let Zv=(e,n)=>t.numfmt.format(e,n,{throws:!1}),Qv=e=>{let t=`${e.getValue()}`;return e.isNull()&&(t=``),e.isBoolean()&&(t=t.toLocaleUpperCase()),e.isNumber()&&(t=e.getPattern()===``?`${Va(+e.getValue())}`:Zv(e.getPattern(),+e.getValue())),t};var $v=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?R.create(1):n,i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,r,E.create(p.NA)),l=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return i===1&&a===1?l.get(0,0):l}_handleSingleObject(e,t,n){let r=Qv(e),i=Qv(t),{isError:a,errorObject:o,variants:s}=X(n);if(a)return o;let[c]=s,l=Math.floor(+c.getValue());if(t.isNull()||l<=0||l>i.length)return E.create(p.VALUE);if(e.isNull()||r.length===0)return R.create(l);let u=i.indexOf(r,l-1);return u===-1?E.create(p.VALUE):R.create(u+1)}};function ey(e){let t=0;for(let n=0;n<e.length;n++)t+=ty(e,n);return t}function ty(e,t,n=`ltr`){return ay(e,t,n)>255?2:1}function ny(e){return e>=55296&&e<=56319}function ry(e){return e>=56320&&e<=57343}function iy(e,t){return((e&1023)<<10)+(t&1023)+65536}function ay(e,t,n=`ltr`){let r=e.charCodeAt(t);if(n===`ltr`&&ny(r)&&t+1<e.length){let n=e.charCodeAt(t+1);if(ry(n))return iy(r,n)}if(n===`rtl`&&ry(r)&&t-1>=0){let n=e.charCodeAt(t-1);if(ny(n))return iy(n,r)}return r}var oy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?R.create(1):n,i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,r,E.create(p.NA)),l=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return i===1&&a===1?l.get(0,0):l}_handleSingleObject(e,t,n){let r=Qv(e),i=Qv(t),{isError:a,errorObject:o,variants:s}=X(n);if(a)return o;let[c]=s,l=Math.floor(+c.getValue());if(t.isNull()||l<=0||l>i.length)return E.create(p.VALUE);if(e.isNull()||r.length===0)return R.create(l);let u=i.indexOf(r,l-1);if(u===-1)return E.create(p.VALUE);let d=ey(i.substring(0,u))+1;return R.create(d)}},sy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,3)}calculate(e,t,n){let r=t==null?R.create(2):t;r.isNull()&&(r=R.create(2));let i=n==null?L.create(!1):n;i.isNull()&&(i=L.create(!1));let a=Math.max(e.isArray()?e.getRowCount():1,r.isArray()?r.getRowCount():1,i.isArray()?i.getRowCount():1),o=Math.max(e.isArray()?e.getColumnCount():1,r.isArray()?r.getColumnCount():1,i.isArray()?i.getColumnCount():1),s=V(a,o,e,E.create(p.NA)),c=V(a,o,r,E.create(p.NA)),l=V(a,o,i,E.create(p.NA)),u=s.mapValue((e,t,n)=>{let r=c.get(t,n),i=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return a===1&&o===1?u.get(0,0):u}_handleSingleObject(e,t,n){let{isError:r,errorObject:i,variants:a}=X(e,t,n);if(r)return i;let[o,s,c]=a,l=+o.getValue(),u=Math.trunc(+s.getValue()),d=+c.getValue();if(u>127)return E.create(p.VALUE);u<0&&(l=`${l}`.length<Math.abs(u)?0:l<0?-Da(Math.abs(l),u):Da(l,u),u=0);let f=d?`###0`:`#,##0`;u>0&&(f+=`.${`0`.repeat(u)}`);let m=Zv(f,l);return z.create(m)}},cy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(1):t,r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.mapValue((e,t,n)=>{let r=o.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return r===1&&i===1?s.get(0,0):s}_handleSingleObject(e,t){let n=Qv(e),{isError:r,errorObject:i,variants:a}=X(t);if(r)return i;let[o]=a,s=Math.floor(+o.getValue());if(s<0)return E.create(p.VALUE);if(e.isNull()||s===0)return z.create(``);if(s>=n.length)return z.create(n);let c=n.substring(0,s);return z.create(c)}},ly=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(1):t,r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,Ua.create()),o=V(r,i,n,Ua.create()),s=a.mapValue((e,t,n)=>{let r=o.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return r===1&&i===1?s.get(0,0):s}_handleSingleObject(e,t){let n=Qv(e),{isError:r,errorObject:i,variants:a}=X(t);if(r)return i;let[o]=a,s=Math.floor(+o.getValue());if(s<0)return E.create(p.VALUE);if(e.isNull()||s===0)return z.create(``);let c=0,l=0,u=``;for(;l<s&&c<n.length;)l+=ty(n,c),u+=n.charAt(c),c++;return z.create(u)}},uy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleText(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleText(e)}_handleSingleText(e){if(e.isError())return e;let t=Qv(e);return R.create(t.length)}},dy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleText(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleText(e)}_handleSingleText(e){if(e.isError())return e;let t=ey(Qv(e));return R.create(t)}},fy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;if(e.isNull())return z.create(``);let t=`${e.getValue()}`.toLocaleLowerCase();return z.create(t)}},py=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let r=Qv(e),{isError:i,errorObject:a,variants:o}=X(t,n);if(i)return a;let[s,c]=o,l=Math.floor(+s.getValue()),u=Math.floor(+c.getValue());if(l<=0||u<0)return E.create(p.VALUE);if(e.isNull()||l>r.length||u===0)return z.create(``);let d=r.substring(l-1,l-1+u);return z.create(d)}},my=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let r=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,t,E.create(p.NA)),s=V(r,i,n,E.create(p.NA)),c=a.mapValue((e,t,n)=>{let r=o.get(t,n),i=s.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return r===1&&i===1?c.get(0,0):c}_handleSingleObject(e,t,n){let r=Qv(e),{isError:i,errorObject:a,variants:o}=X(t,n);if(i)return a;let[s,c]=o,l=Math.floor(+s.getValue()),u=Math.floor(+c.getValue());if(l<=0||u<0)return E.create(p.VALUE);if(e.isNull()||l>r.length||u===0)return z.create(``);r=r.substring(l-1);let d=0,f=0,m=``;for(;f<u&&d<r.length;)f+=ty(r,d),m+=r.charAt(d),d++;return z.create(m)}};let hy=[`〇`,`一`,`二`,`三`,`四`,`五`,`六`,`七`,`八`,`九`],gy=[`零`,`壹`,`贰`,`叁`,`肆`,`伍`,`陆`,`柒`,`捌`,`玖`],_y=[``,`十`,`百`,`千`],vy=[``,`拾`,`佰`,`仟`],yy=[``,`万`,`亿`,`兆`];var by=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.mapValue((e,t,n)=>{let r=a.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return n===1&&r===1?o.get(0,0):o}_handleSingleObject(e,t){let n=e.convertToNumberObjectValue();if(n.isError())return n;let r=t.convertToNumberObjectValue();if(r.isError())return r;let i=n.getValue(),a=Math.trunc(r.getValue());if(i<0||![1,2,3].includes(a))return E.create(p.NUM);i=Math.round(i);let o=i.toString(),s=o.length,c=``,l=!1;for(let e=0;e<s;e++){let t=Number(o[e]);if(s===1&&t===0){c+=a===2?gy[0]:hy[0];break}if(a===3){c+=hy[t];continue}let n=s-e-1,r=n%4,i=Math.trunc(n/4);if(s>=17&&i>2){if(c+=a===1?hy[t]:gy[t],i>3)continue}else t===0?l=r!==0:(l&&(c+=a===1?hy[0]:gy[0],l=!1),c+=a===1?hy[t]+_y[r]:gy[t]+vy[r]);r===0&&i>0&&o.slice(Math.max(0,e-3),e+1)!==`0000`&&(c+=yy[i])}return z.create(c)}},xy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,3)}isArgumentsIgnoreNumberPattern(){return!0}calculate(e,t,n){let r=t==null?z.create(`.`):t,i=Math.max(e.isArray()?e.getRowCount():1,r.isArray()?r.getRowCount():1,n!=null&&n.isArray()?n.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,r.isArray()?r.getColumnCount():1,n!=null&&n.isArray()?n.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,r,E.create(p.NA)),c=n?V(i,a,n,E.create(p.NA)):void 0,l=o.mapValue((e,t,r)=>{let i=s.get(t,r),a=n?c.get(t,r):void 0;return e.isError()?e:i.isError()?i:a!=null&&a.isError()?a:i.isNull()||a!=null&&a.isNull()?E.create(p.VALUE):e.isNull()?R.create(0):this._handleSingleObject(e,i,a)});return i===1&&a===1?l.get(0,0):l}_handleSingleObject(e,n,r){let i=`${e.getValue()}`;i=i.replace(/\s+/g,``);let a=`${n.getValue()}`;n.isBoolean()&&(a=a.toLocaleUpperCase()),a=a.charAt(0);let o;if(r&&(o=`${r.getValue()}`,r.isBoolean()&&(o=o.toLocaleUpperCase()),o=o.charAt(0),a===o))return E.create(p.VALUE);if(i.trim()===``)return R.create(0);if(!i.match(/^\s*[+-]?\s*(?:(?:\d+(?:\.\d*)?)|(?:\.\d+))(?:[eE][+-]?\d+)?[ \t]*/))return E.create(p.VALUE);let s=i.split(a);if(s.length>2)return E.create(p.VALUE);let c=s[0].replace(/,/g,``);r&&(c=c.split(o).join(``));let l=0;if(s.length===1){a===`,`&&(c=c.replace(/\./g,``));let e=0;for(;c.endsWith(`%`);)c=c.slice(0,-1),e++;l=e>0?c/100**e:+c}else{if(!(0,t.isRealNum)(c))return E.create(p.VALUE);let e=s[1],n=0;for(;e.endsWith(`%`);)e=e.slice(0,-1),n++;let r=`${c}.${e}`;if(!(0,t.isRealNum)(r))return E.create(p.VALUE);l=n>0?r/100**n:+r}return Number.isNaN(l)?E.create(p.VALUE):R.create(l)}},Sy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError()||e.isNull()||e.isBoolean()||e.isNumber())return e;let t=e.getValue().toLocaleString().toLocaleLowerCase().replace(/(^|\b|\W|\d|_)[a-z]/g,e=>e.toLocaleUpperCase());return z.create(t)}},$=function(e){return e[e.ROOT=0]=`ROOT`,e[e.GROUP=1]=`GROUP`,e[e.POSITION=2]=`POSITION`,e[e.SET=3]=`SET`,e[e.RANGE=4]=`RANGE`,e[e.REPETITION=5]=`REPETITION`,e[e.REFERENCE=6]=`REFERENCE`,e[e.CHAR=7]=`CHAR`,e}($||{});let Cy=()=>[{type:$.RANGE,from:48,to:57}],wy=()=>[{type:$.CHAR,value:95},{type:$.RANGE,from:97,to:122},{type:$.RANGE,from:65,to:90},{type:$.RANGE,from:48,to:57}],Ty=()=>[{type:$.CHAR,value:9},{type:$.CHAR,value:10},{type:$.CHAR,value:11},{type:$.CHAR,value:12},{type:$.CHAR,value:13},{type:$.CHAR,value:32},{type:$.CHAR,value:160},{type:$.CHAR,value:5760},{type:$.RANGE,from:8192,to:8202},{type:$.CHAR,value:8232},{type:$.CHAR,value:8233},{type:$.CHAR,value:8239},{type:$.CHAR,value:8287},{type:$.CHAR,value:12288},{type:$.CHAR,value:65279}],Ey=()=>({type:$.SET,set:wy(),not:!1}),Dy=()=>({type:$.SET,set:wy(),not:!0}),Oy=()=>({type:$.SET,set:Cy(),not:!1}),ky=()=>({type:$.SET,set:Cy(),not:!0}),Ay=()=>({type:$.SET,set:Ty(),not:!1}),jy=()=>({type:$.SET,set:Ty(),not:!0}),My=()=>({type:$.SET,set:[{type:$.CHAR,value:10},{type:$.CHAR,value:13},{type:$.CHAR,value:8232},{type:$.CHAR,value:8233}],not:!0});function Ny(e){let t={type:$.ROOT,stack:[]},n=t,r=t.stack,i=[],a=[],o=0,s=t=>{throw SyntaxError(`Invalid regular expression: /${e}/: Nothing to repeat at column ${t-1}`)},c=Fy(e),l=0,u;for(;l<c.length;)switch(u=c[l++],u){case`\\`:if(l===c.length)throw SyntaxError(`Invalid regular expression: /${e}/: \\ at end of pattern`);switch(u=c[l++],u){case`b`:r.push({type:$.POSITION,value:`b`});break;case`B`:r.push({type:$.POSITION,value:`B`});break;case`w`:r.push(Ey());break;case`W`:r.push(Dy());break;case`d`:r.push(Oy());break;case`D`:r.push(ky());break;case`s`:r.push(Ay());break;case`S`:r.push(jy());break;default:if(/\d/.test(u)){for(;/\d/.test(c[l])&&l<c.length;)u+=c[l++];let e=Number.parseInt(u,10);r.push({type:$.REFERENCE,value:e}),a.push({reference:{type:$.REFERENCE,value:e},stack:r,index:r.length-1})}else r.push({type:$.CHAR,value:u.charCodeAt(0)})}break;case`^`:r.push({type:$.POSITION,value:`^`});break;case`$`:r.push({type:$.POSITION,value:`$`});break;case`[`:{let t=c[l]===`^`;t&&l++;let n=Py(c.slice(l),e);l+=n[1],r.push({type:$.SET,set:n[0],not:t});break}case`.`:r.push(My());break;case`(`:{let t={type:$.GROUP,stack:[],remember:!0};if(c[l]===`?`){let n=c[l+1];if(l+=2,n===`=`)t.followedBy=!0;else if(n===`!`)t.notFollowedBy=!0;else if(n!==`:`)throw SyntaxError(`Invalid regular expression: /${e}/: Invalid group, character '${n}' after '?' at column ${l-1}`);t.remember=!1}else o+=1;r.push(t),i.push(n),n=t,r=t.stack;break}case`)`:if(i.length===0)throw SyntaxError(`Invalid regular expression: /${e}/: Unmatched ) at column ${l-1}`);n=i.pop(),r=n.options?n.options[n.options.length-1]:n.stack;break;case`|`:{n.options||(n.options=[n.stack],delete n.stack);let e=[];n.options.push(e),r=e;break}case`{`:{let e=/^(\d+)(,(\d+)?)?\}/.exec(c.slice(l));if(e){r.length===0&&s(l);let t=Number.parseInt(e[1],10),n=e[2]?e[3]?Number.parseInt(e[3],10):1/0:t;l+=e[0].length,r.push({type:$.REPETITION,min:t,max:n,value:r.pop()})}else r.push({type:$.CHAR,value:123});break}case`?`:r.length===0&&s(l),r.push({type:$.REPETITION,min:0,max:1,value:r.pop()});break;case`+`:r.length===0&&s(l),r.push({type:$.REPETITION,min:1,max:1/0,value:r.pop()});break;case`*`:r.length===0&&s(l),r.push({type:$.REPETITION,min:0,max:1/0,value:r.pop()});break;default:r.push({type:$.CHAR,value:u.charCodeAt(0)})}if(i.length>0)throw SyntaxError(`Invalid regular expression: /${e}/: Unterminated group`);return Iy(a,o),t}function Py(e,t){let n,r=[],i=/\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\)(.)|([^\]\\]))-(((?:\\)])|(((?:\\)?([^\]])))))|(\])|(?:\\)?([^])/g;for(;(n=i.exec(e))!==null;){let e=null,[,t,a,o,s,c,l,u,d,f,p]=n;if(t||a||o||s||c||l?e=(()=>{let e={type:$.SET,set:[],not:!1};return t?e=Ey():a?e=Oy():o?e=Ay():s?e=Dy():c?e=ky():l&&(e=jy()),e})():u&&p?e={type:$.RANGE,from:(d||f).charCodeAt(0),to:p.charCodeAt(p.length-1)}:n[16]&&(e={type:$.CHAR,value:n[16].charCodeAt(0)}),!e)return[r,i.lastIndex];r.push(e)}throw SyntaxError(`Invalid regular expression: /${t}/: Unterminated character class`)}function Fy(e){return e.replace(/(\[\\b\])|(\\)?\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|c([@A-Z[\\\]^?])|([0tnvfr]))/g,(e,t,n,r,i,a,o)=>{if(n)return e;let s;s=t?8:r?Number.parseInt(r,16):i?Number.parseInt(i,16):a?`@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^ ?`.indexOf(a):{0:0,t:9,n:10,v:11,f:12,r:13}[o];let c=String.fromCharCode(s);return/[[\]{}^$.|?*+()]/.test(c)?`\\${c}`:c})}function Iy(e,t){for(let n of e.reverse()){let e=n.reference.value;if(t<e){n.reference.type=$.CHAR;let t=e.toString();if(n.reference.value=Number.parseInt(t,8),!/^[0-7]+$/.test(t)){let e=0;for(;t[e]!==`8`&&t[e]!==`9`&&e<t.length;)e+=1;if(e===0?(n.reference.value=t.charCodeAt(0),e+=1):n.reference.value=Number.parseInt(t.slice(0,e),8),t.length>e){let r=n.stack.splice(n.index+1);for(let r of t.slice(e))n.stack.push({type:$.CHAR,value:r.charCodeAt(0)});n.stack.push(...r)}}}}}function Ly(e,t){if(!Ry(e))return{isError:!0,regExp:null};try{let n=new RegExp(e,t?`ug`:`u`);return zy(n)?{isError:!1,regExp:n}:{isError:!0,regExp:null}}catch{return{isError:!0,regExp:null}}}function Ry(e){return!(/\(\?<=.*?\)/g.test(e)&&!/\[.*?(\?<=.*?)\]/g.test(e)||/\(\?<!.*?\)/g.test(e)&&!/\[.*?(\?<!.*?)\]/g.test(e))}function zy(e,t){var n;let r=(n=t==null?void 0:t.limit)==null?25:n,i;Object.prototype.toString.call(e)===`[object RegExp]`?i=e.source:e&&typeof e!=`string`&&(i=`${e}`);let a;try{a=Ny(i)}catch{return!1}let o=0,s=(e,t)=>{let n=t;if(e.type===$.REPETITION){if(t>0&&(e.min===0||e.max===1/0)||By(e)&&(o++,o>r))return!1;n=t+1}if(e.options){for(let t of e.options)if(!s({stack:t},n))return!1}let i=e.stack||e.value&&e.value.stack;if(!i)return!0;for(let e of i)if(!s(e,n))return!1;return!0};return s(a,0)}function By(e){let t=e.stack||e.value&&e.value.stack;return t?Vy(t):!1}function Vy(e){for(let t of e){if(t.options&&t.options.length>0)return!0;let e=t.stack||t.value&&t.value.stack;if(e&&Vy(e))return!0}return!1}var Hy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,variants:i}=tc(e,t);if(n)return r;let[a,o]=i,s=a.getValue();a.isNull()&&(s=``),a.isBoolean()&&(s=s?`TRUE`:`FALSE`),s=`${s}`;let c=o.getValue();o.isNull()&&(c=``),o.isBoolean()&&(c=c?`TRUE`:`FALSE`),c=`${c}`;let{isError:l,regExp:u}=Ly(c,!1);if(l)return E.create(p.REF);let d=s.match(u);if(d===null)return E.create(p.NA);if(d.length>1){let e=d.slice(1).map(e=>z.create(e));return e.length>1?B.create({calculateValueList:[e],rowCount:1,columnCount:e.length,unitId:this.unitId,sheetId:this.subUnitId,row:this.row,column:this.column}):e[0]}return z.create(d[0])}},Uy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){let{isError:n,errorObject:r,variants:i}=tc(e,t);if(n)return r;let[a,o]=i,s=a.getValue();a.isNull()&&(s=``),a.isBoolean()&&(s=s?`TRUE`:`FALSE`),s=`${s}`;let c=o.getValue();o.isNull()&&(c=``),o.isBoolean()&&(c=c?`TRUE`:`FALSE`),c=`${c}`;let{isError:l,regExp:u}=Ly(c,!1);return l?E.create(p.REF):s.match(u)===null?L.create(!1):L.create(!0)}},Wy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,3)}calculate(e,t,n){let{isError:r,errorObject:i,variants:a}=tc(e,t,n);if(r)return i;let[o,s,c]=a,l=o.getValue();o.isNull()&&(l=``),o.isBoolean()&&(l=l?`TRUE`:`FALSE`),l=`${l}`;let u=s.getValue();s.isNull()&&(u=``),s.isBoolean()&&(u=u?`TRUE`:`FALSE`),u=`${u}`;let d=c.getValue();c.isNull()&&(d=``),c.isBoolean()&&(d=d?`TRUE`:`FALSE`),d=`${d}`;let{isError:f,regExp:m}=Ly(u,!0);if(f)return E.create(p.REF);let h=l.replace(m,d);return z.create(h)}},Gy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(t,n);if(i)return a;let[s,c]=o,l=Math.floor(+s.getValue()),u=Math.floor(+c.getValue());if(l<=0||u<0)return E.create(p.VALUE);let d=Qv(e),f=Qv(r),m=d.substring(0,l-1)+f+d.substring(l-1+u);return z.create(m)}},Ky=class extends Z{constructor(...e){super(...e),d(this,`minParams`,4),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=V(i,a,r,E.create(p.NA)),u=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n),a=l.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:a.isError()?a:this._handleSingleObject(e,r,i,a)});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let{isError:i,errorObject:a,variants:o}=X(t,n);if(i)return a;let[s,c]=o,l=Math.floor(+s.getValue()),u=Math.floor(+c.getValue());if(l<=0||u<0)return E.create(p.VALUE);let d=Qv(e),f=Qv(r),m=d.substring(0,l-1);d=d.substring(l-1);let h=0,g=0;for(;g<u&&h<d.length;)g+=ty(d,h),h++;return m+=f+d.substring(h),z.create(m)}},qy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}calculate(e,t){if(e.isError())return e;if(t.isError())return t;let n=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1),r=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1),i=V(n,r,e,E.create(p.NA)),a=V(n,r,t,E.create(p.NA)),o=i.map((e,t,n)=>{let r=a.get(t,n);if(e.isError())return e;let i=e.getValue();if(e.isNull()&&(i=``),e.isBoolean()&&(i=i?`TRUE`:`FALSE`),i+=``,r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let o=Math.floor(+r.getValue());if(o<0||o>32767/i.length)return E.create(p.VALUE);let s=i.repeat(o);return z.create(s)});return n===1&&r===1?o.get(0,0):o}},Jy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(1):t,r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.mapValue((e,t,n)=>{let r=o.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return r===1&&i===1?s.get(0,0):s}_handleSingleObject(e,t){let n=Qv(e),{isError:r,errorObject:i,variants:a}=X(t);if(r)return i;let[o]=a,s=Math.floor(+o.getValue());if(s<0)return E.create(p.VALUE);if(e.isNull()||s===0)return z.create(``);if(s>=n.length)return z.create(n);let c=n.substring(n.length-s);return z.create(c)}},Yy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(1):t,r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.mapValue((e,t,n)=>{let r=o.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return r===1&&i===1?s.get(0,0):s}_handleSingleObject(e,t){let n=Qv(e),{isError:r,errorObject:i,variants:a}=X(t);if(r)return i;let[o]=a,s=Math.floor(+o.getValue());if(s<0)return E.create(p.VALUE);if(e.isNull()||s===0)return z.create(``);let c=n.length-1,l=0,u=``;for(;l<s&&c>=0;)l+=ty(n,c,`rtl`),u=n.charAt(c)+u,c--;return z.create(u)}},Xy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?R.create(1):n,i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,r,E.create(p.NA)),l=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return i===1&&a===1?l.get(0,0):l}_handleSingleObject(e,t,n){let r=Qv(e).toLocaleUpperCase(),i=Qv(t).toLocaleUpperCase(),{isError:a,errorObject:o,variants:s}=X(n);if(a)return o;let[c]=s,l=Math.floor(+c.getValue());if(t.isNull()||l<=0||l>i.length)return E.create(p.VALUE);if(e.isNull()||r.length===0)return R.create(l);let u=i.indexOf(r,l-1);return u===-1?E.create(p.VALUE):R.create(u+1)}},Zy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,3)}calculate(e,t,n){let r=n==null?R.create(1):n,i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,r,E.create(p.NA)),l=o.mapValue((e,t,n)=>{let r=s.get(t,n),i=c.get(t,n);return e.isError()?e:r.isError()?r:i.isError()?i:this._handleSingleObject(e,r,i)});return i===1&&a===1?l.get(0,0):l}_handleSingleObject(e,t,n){let r=Qv(e).toLocaleUpperCase(),i=Qv(t).toLocaleUpperCase(),{isError:a,errorObject:o,variants:s}=X(n);if(a)return o;let[c]=s,l=Math.floor(+c.getValue());if(t.isNull()||l<=0||l>i.length)return E.create(p.VALUE);if(e.isNull()||r.length===0)return R.create(l);let u=i.indexOf(r,l-1);if(u===-1)return E.create(p.VALUE);let d=ey(i.substring(0,u))+1;return R.create(d)}},Qy=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,4)}calculate(e,t,n,r){let i=Math.max(e.isArray()?e.getRowCount():1,t.isArray()?t.getRowCount():1,n.isArray()?n.getRowCount():1,r!=null&&r.isArray()?r.getRowCount():1),a=Math.max(e.isArray()?e.getColumnCount():1,t.isArray()?t.getColumnCount():1,n.isArray()?n.getColumnCount():1,r!=null&&r.isArray()?r.getColumnCount():1),o=V(i,a,e,E.create(p.NA)),s=V(i,a,t,E.create(p.NA)),c=V(i,a,n,E.create(p.NA)),l=r?V(i,a,r,E.create(p.NA)):void 0,u=o.mapValue((e,t,n)=>{let i=s.get(t,n),a=c.get(t,n),o=r?l.get(t,n):void 0;return e.isError()?e:i.isError()?i:a.isError()?a:o!=null&&o.isError()?o:o!=null&&o.isNull()||o!=null&&o.isBoolean()?E.create(p.VALUE):(o!=null&&o.isString()&&(o=o.convertToNumberObjectValue()),o!=null&&o.isError()?o:this._handleSingleObject(e,i,a,o))});return i===1&&a===1?u.get(0,0):u}_handleSingleObject(e,t,n,r){let i=this._getObjectString(e),a=this._getObjectString(t),o=this._getObjectString(n),s=r?Math.floor(+r.getValue()):void 0;if(r&&s<=0)return E.create(p.VALUE);if(a===``)return z.create(i);let c=``,l=0;for(let e=0;e<i.length;e++){let t=i.substr(e,a.length);if(t===a||t.length===a.length&&t.trim()===a.trim()){if(l++,l===s){c=i.substr(0,e)+o+i.substr(e+a.length);break}s===void 0&&(c+=o),e+=a.length-1}else s===void 0&&(c+=i[e])}return s&&l<s&&(c=i),z.create(c)}_getObjectString(e){let t=`${e.getValue()}`;return e.isNull()&&(t=``),e.isBoolean()&&(t=t.toLocaleUpperCase()),t}},$y=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1),d(this,`needsReferenceObject`,!0)}calculate(e){let t=e;return e.isReferenceObject()&&(t=e.toArrayValueObject().get(0,0)),t.isArray()?t.mapValue(e=>this._handleSingleObject(e)):this._handleSingleObject(t)}_handleSingleObject(e){return e.isError()?e:e.isNull()||e.isBoolean()||e.isNumber()?z.create(``):e}},eb=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,2)}isArgumentsIgnoreNumberPattern(){return!0}calculate(e,n){if(e.isError())return e;if(n.isError())return n;let r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e),o=V(r,i,n),s=a.map((e,n,r)=>{if(e.isError())return e;let i=o.get(n,r)||z.create(` `);if(i.isError())return i;if(i.isBoolean())return E.create(p.VALUE);if(e.isBoolean())return e;let a=e.getValue();if(e.isNull()&&(a=0),e.isString())if((0,t.isRealNum)(a))a=Number(a);else{let e=(0,t.getNumfmtParseValueFilter)(`${a}`);e&&e.v!=null&&typeof e.v==`number`&&(a=e.v)}i.isNull()&&(i=z.create(` `));let s=`${i.getValue()}`,c=Zv(s,a);return z.create(s===` `?c.trimEnd():c)});return s.getRowCount()===1&&s.getColumnCount()===1?s.get(0,0):s}},tb=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let o=!1,s=n==null?R.create(1):n;s.isNull()&&(o=!0,s=R.create(1));let c=!r,l=r==null?R.create(0):r,u=i==null?R.create(0):i,d=a==null?E.create(p.NA):a,f=Math.max(e.isArray()?e.getRowCount():1,s.isArray()?s.getRowCount():1,l.isArray()?l.getRowCount():1,u.isArray()?u.getRowCount():1,d.isArray()?d.getRowCount():1),m=Math.max(e.isArray()?e.getColumnCount():1,s.isArray()?s.getColumnCount():1,l.isArray()?l.getColumnCount():1,u.isArray()?u.getColumnCount():1,d.isArray()?d.getColumnCount():1),h=V(f,m,e,E.create(p.NA)),g=V(f,m,s,E.create(p.NA)),_=V(f,m,l,E.create(p.NA)),v=V(f,m,u,E.create(p.NA)),y=V(f,m,d,E.create(p.NA)),b=this._getResultArray(h,t,g,_,v,y,o,c);return f===1&&m===1?b.get(0,0):b}_getResultArray(e,t,n,r,i,a,o,s){return e.map((e,c,l)=>{let u=n.get(c,l),d=r.get(c,l),f=i.get(c,l),m=a.get(c,l),h=this._checkVariantsError(e,u,d,f);if(h.isError())return h;let g=this._getStringValue(e),_=this._getDelimiterValue(t);if(_ instanceof E)return _;let v=this._getVariantsNumberFloorValue(u,d,f);if(v instanceof E)return v;let[y,b,x]=v;return y===0||b<0||b>1||x<0||x>1?E.create(p.VALUE):_.includes(``)?y>0?z.create(g):z.create(``):!o&&Math.abs(y)>g.length?E.create(p.VALUE):_.every(e=>e.length>g.length)?E.create(p.NA):this._getResult(g,_,y,b,x,m,s)})}_checkVariantsError(...e){for(let t=0;t<e.length;t++){let n=e[t];if(n.isError())return n}return L.create(!0)}_getStringValue(e){let t=`${e.getValue()}`;return e.isNull()&&(t=``),e.isBoolean()&&(t=t.toLocaleUpperCase()),t}_getDelimiterValue(e){let t=[];if(e.isArray()){let n=!1,r=E.create(p.VALUE);if(e.iterator(e=>{let i=e;if(i.isError())return n=!0,r=i,!1;t.push(this._getStringValue(i))}),n)return r}else{if(e.isError())return e;t.push(this._getStringValue(e))}return t}_getVariantsNumberFloorValue(...e){let t=[];for(let n=0;n<e.length;n++){let r=e[n];if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let i=Math.floor(+r.getValue());t.push(i)}return t}_getResult(e,t,n,r,i,a,o){let s=r?e.toLocaleLowerCase():e,c=r?t.map(e=>e.toLocaleLowerCase()):t,l=0,u=0,d=0;for(let e=0;e<Math.abs(n);e++)if(n<0){let e=c.map(e=>({index:s.lastIndexOf(e),length:e.length})).filter(e=>e.index!==-1).sort((e,t)=>t.index-e.index)[0];if(!e)break;l=e.index,s=s.substr(0,e.index),d=e.length,u++}else{let e=c.map(e=>({index:s.indexOf(e),length:e.length})).filter(e=>e.index!==-1).sort((e,t)=>e.index-t.index)[0];if(!e)break;l+=e.index+d,s=s.substr(e.index+e.length),d=e.length,u++}if(u&&u<Math.abs(n)&&o)return E.create(p.NA);if(!u||u<Math.abs(n))return i?n>0?z.create(``):z.create(e):a;let f=e.substr(l+d);return z.create(f)}},nb=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let o=!1,s=n==null?R.create(1):n;s.isNull()&&(o=!0,s=R.create(1));let c=!r,l=r==null?R.create(0):r,u=i==null?R.create(0):i,d=a==null?E.create(p.NA):a,f=Math.max(e.isArray()?e.getRowCount():1,s.isArray()?s.getRowCount():1,l.isArray()?l.getRowCount():1,u.isArray()?u.getRowCount():1,d.isArray()?d.getRowCount():1),m=Math.max(e.isArray()?e.getColumnCount():1,s.isArray()?s.getColumnCount():1,l.isArray()?l.getColumnCount():1,u.isArray()?u.getColumnCount():1,d.isArray()?d.getColumnCount():1),h=V(f,m,e,E.create(p.NA)),g=V(f,m,s,E.create(p.NA)),_=V(f,m,l,E.create(p.NA)),v=V(f,m,u,E.create(p.NA)),y=V(f,m,d,E.create(p.NA)),b=this._getResultArray(h,t,g,_,v,y,o,c);return f===1&&m===1?b.get(0,0):b}_getResultArray(e,t,n,r,i,a,o,s){return e.map((e,c,l)=>{let u=n.get(c,l),d=r.get(c,l),f=i.get(c,l),m=a.get(c,l),h=this._checkVariantsError(e,u,d,f);if(h.isError())return h;let g=this._getStringValue(e),_=this._getDelimiterValue(t);if(_ instanceof E)return _;let v=this._getVariantsNumberFloorValue(u,d,f);if(v instanceof E)return v;let[y,b,x]=v;return y===0||b<0||b>1||x<0||x>1?E.create(p.VALUE):_.includes(``)?y>0?z.create(``):z.create(g):!o&&Math.abs(y)>g.length?E.create(p.VALUE):_.every(e=>e.length>g.length)?E.create(p.NA):this._getResult(g,_,y,b,x,m,s)})}_checkVariantsError(...e){for(let t=0;t<e.length;t++){let n=e[t];if(n.isError())return n}return L.create(!0)}_getStringValue(e){let t=`${e.getValue()}`;return e.isNull()&&(t=``),e.isBoolean()&&(t=t.toLocaleUpperCase()),t}_getDelimiterValue(e){let t=[];if(e.isArray()){let n=!1,r=E.create(p.VALUE);if(e.iterator(e=>{let i=e;if(i.isError())return n=!0,r=i,!1;t.push(this._getStringValue(i))}),n)return r}else{if(e.isError())return e;t.push(this._getStringValue(e))}return t}_getVariantsNumberFloorValue(...e){let t=[];for(let n=0;n<e.length;n++){let r=e[n];if(r.isString()&&(r=r.convertToNumberObjectValue()),r.isError())return r;let i=Math.floor(+r.getValue());t.push(i)}return t}_getResult(e,t,n,r,i,a,o){let s=r?e.toLocaleLowerCase():e,c=r?t.map(e=>e.toLocaleLowerCase()):t,l=0,u=0,d=0;for(let e=0;e<Math.abs(n);e++)if(n<0){let e=c.map(e=>({index:s.lastIndexOf(e),length:e.length})).filter(e=>e.index!==-1).sort((e,t)=>t.index-e.index)[0];if(!e)break;l=e.index,s=s.substr(0,e.index),u++}else{let e=c.map(e=>({index:s.indexOf(e),length:e.length})).filter(e=>e.index!==-1).sort((e,t)=>e.index-t.index)[0];if(!e)break;l+=e.index+d,s=s.substr(e.index+e.length),d=e.length,u++}if(u&&u<Math.abs(n)&&o)return E.create(p.NA);if(!u||u<Math.abs(n))return i?n>0?z.create(e):z.create(``):a;let f=e.substr(0,l);return z.create(f)}},rb=class extends Z{constructor(...e){super(...e),d(this,`minParams`,3),d(this,`maxParams`,255)}calculate(e,t,...n){let r=this._getDelimiterValues(e),i=this._getTextValues(n);if(t.isArray()){let e=t.mapValue(e=>this._handleSingleObject(r,e,i));return e.getRowCount()===1&&e.getColumnCount()===1?e.get(0,0):e}let a=t;if(a.isString()){let e=`${a.getValue()}`.toLocaleUpperCase();if(e===`TRUE`)return this._handleSingleObject(r,L.create(!0),i);if(e===`FALSE`)return this._handleSingleObject(r,L.create(!1),i)}return this._handleSingleObject(r,t,i)}_handleSingleObject(e,t,n){if(e instanceof E)return e;let{isError:r,errorObject:i,variants:a}=X(t);if(r)return i;if(n instanceof E)return n;let[o]=a,s=+o.getValue(),c=n;s&&(c=n.filter(e=>e!==null&&e!==``));let l=``;for(let t=0;t<c.length;t++)c[t]!==null&&(l+=c[t]),t<c.length-1&&(l+=e[t%e.length]);return z.create(l)}_getDelimiterValues(e){let t=[],n=e.isArray()?e.getRowCount():1,r=e.isArray()?e.getColumnCount():1;for(let i=0;i<n;i++)for(let n=0;n<r;n++){let r=e.isArray()?e.get(i,n):e;if(r.isError())return r;let a=`${r.getValue()}`;r.isNull()&&(a=``),r.isBoolean()&&(a=a.toLocaleUpperCase()),t.push(a)}return t}_getTextValues(e){let t=[];for(let n of e){let e=n.isArray()?n.getRowCount():1,r=n.isArray()?n.getColumnCount():1;for(let i=0;i<e;i++)for(let e=0;e<r;e++){let r=n.isArray()?n.get(i,e):n;if(r.isError())return r;if(r.isNull()){t.push(null);continue}let a=`${r.getValue()}`;r.isBoolean()&&(a=a.toLocaleUpperCase()),t.push(a)}}return t}},ib=class extends Z{constructor(...e){super(...e),d(this,`minParams`,2),d(this,`maxParams`,6)}calculate(e,t,n,r,i,a){let o=n==null?z.create(`\\s`):n,s=r==null?R.create(0):r,c=i==null?R.create(0):i,l=a==null?z.create(p.NA):a,{_variant:u,values:d}=this._getStringValues(t),{_variant:f,values:m}=this._getStringValues(o,!1);o=f;let h=Math.max(e.isArray()?e.getRowCount():1,s.isArray()?s.getRowCount():1,c.isArray()?c.getRowCount():1),g=Math.max(e.isArray()?e.getColumnCount():1,s.isArray()?s.getColumnCount():1,c.isArray()?c.getColumnCount():1),_=V(h,g,e,E.create(p.NA)),v=V(h,g,s,E.create(p.NA)),y=V(h,g,c,E.create(p.NA)),b=this._getResultArray(_,u,o,v,y,l,d,m);return h===1&&g===1?b.get(0,0):b.map(e=>e.get(0,0))}_getStringValues(e,t=!0){let n=e,r=[];if(n.isArray())n.iterator(e=>{if(e!=null&&e.isError())return n=e,!1;if(e!=null&&e.isNull()&&t)return n=E.create(p.VALUE),!1;let i=this._getRegExpStringValue(e);if(i===``)return n=E.create(p.VALUE),!1;r.push(i)});else{n.isNull()&&t&&(n=E.create(p.VALUE));let e=this._getRegExpStringValue(n);e===``&&(n=E.create(p.VALUE)),r.push(e)}return{_variant:n,values:r}}_getResultArray(e,t,n,r,i,a,o,s){return e.map((e,c,l)=>{let u=r.get(c,l),d=i.get(c,l),f=this._checkVariantsError(e,t,n,u,d);if(f.isError())return f;if(e.isNull())return E.create(p.VALUE);let m=a;if(m.isArray()){let e=m.getRowCount(),t=m.getColumnCount();if(e>1||t>1)return E.create(p.VALUE);m=m.get(0,0)}let h=`${e.getValue()}`;if(e.isBoolean()&&(h=h.toLocaleUpperCase()),u.isString()&&(u=u.convertToNumberObjectValue(),u.isError()))return u;let g=Math.floor(+u.getValue());if(d.isString()&&(d=d.convertToNumberObjectValue(),d.isError()))return d;let _=Math.floor(+d.getValue());if(_<0||_>1)return E.create(p.VALUE);let v=`${m.getValue()}`;return m.isBoolean()&&(v=v.toLocaleUpperCase()),this._getResult(h,o,s,g,_,v)})}_getResult(e,t,n,r,i,a){let o=new RegExp(n.join(`|`),`g${i?`i`:``}`),s=new RegExp(t.join(`|`),`g${i?`i`:``}`),c=e.split(o),l=1,u=c.map(e=>{let t=e.split(s);return r&&(t=t.filter(e=>e!==``)),l=Math.max(l,t.length),t});return u=u.map(e=>{let t=e;return t.length<l&&(t=t.concat(Array(l-t.length).fill(a))),t}),B.createByArray(u)}_checkVariantsError(...e){for(let t=0;t<e.length;t++){let n=e[t];if(n.isError())return n}return L.create(!0)}_getRegExpStringValue(e){let t=e.getValue();return e.isNull()&&(t=`\\s`),e.isBoolean()&&(t=t?`TRUE`:`FALSE`),t+=``,this._escapeRegExp(t)}_escapeRegExp(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}},ab=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;if(e.isNull())return z.create(``);let t=`${e.getValue()}`;return e.isBoolean()&&(t=t.toLocaleUpperCase()),t=t.trim().replace(/\s+/g,` `),z.create(t)}};let ob=Object.values(t.DataStreamTreeTokenType).filter(e=>[t.DataStreamTreeTokenType.TABLE_START,t.DataStreamTreeTokenType.TABLE_ROW_START,t.DataStreamTreeTokenType.TABLE_CELL_START,t.DataStreamTreeTokenType.TABLE_CELL_END,t.DataStreamTreeTokenType.TABLE_ROW_END,t.DataStreamTreeTokenType.TABLE_END,t.DataStreamTreeTokenType.CUSTOM_BLOCK].includes(e));var sb=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){let{isError:t,errorObject:n,variants:r}=X(e);if(t)return n;let[i]=r,a=Math.floor(+i.getValue());if(a<1||a>1114111)return E.create(p.VALUE);if(a===1114111||a===1114110)return E.create(p.NA);let o=String.fromCharCode(a);return ob.some(e=>e===o)&&(o=``),z.create(o)}},cb=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;if(e.isNull())return E.create(p.VALUE);let t=e.getValue().toLocaleString();e.isBoolean()&&(t=t.toLocaleUpperCase());let n=t.charCodeAt(0);return R.create(n)}},lb=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;if(e.isNull())return z.create(``);let t=`${e.getValue()}`.toLocaleUpperCase();return z.create(t)}},ub=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;if(e.isBoolean())return E.create(p.VALUE);let t=e;if(e.isString()&&(t=t.convertToNumberObjectValue(),t.isError()))return t;let n=+t.getValue();return R.create(n)}},db=class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,2)}calculate(e,t){let n=t==null?R.create(0):t,r=Math.max(e.isArray()?e.getRowCount():1,n.isArray()?n.getRowCount():1),i=Math.max(e.isArray()?e.getColumnCount():1,n.isArray()?n.getColumnCount():1),a=V(r,i,e,E.create(p.NA)),o=V(r,i,n,E.create(p.NA)),s=a.mapValue((e,t,n)=>{let r=o.get(t,n);return e.isError()?e:r.isError()?r:this._handleSingleObject(e,r)});return r===1&&i===1?s.get(0,0):s}_handleSingleObject(e,t){let{isError:n,errorObject:r,variants:i}=X(t);if(n)return r;let[a]=i,o=Math.floor(+a.getValue());if(o<0||o>1)return E.create(p.VALUE);if(e.isNull())return z.create(``);if(e.isBoolean())return e;if(e.isNumber())return R.create(e.getValue());let s=o?`"${e.getValue()}"`:`${e.getValue()}`;return z.create(s)}};let fb=[[Bv,J.ASC],[zv,J.ARRAYTOTEXT],[Vv,J.BAHTTEXT],[Uv,J.CHAR],[Wv,J.CLEAN],[Gv,J.CODE],[Kv,J.CONCAT],[qv,J.CONCATENATE],[Jv,J.DBCS],[Yv,J.DOLLAR],[Xv,J.EXACT],[$v,J.FIND],[oy,J.FINDB],[sy,J.FIXED],[cy,J.LEFT],[ly,J.LEFTB],[uy,J.LEN],[dy,J.LENB],[fy,J.LOWER],[py,J.MID],[my,J.MIDB],[by,J.NUMBERSTRING],[xy,J.NUMBERVALUE],[Hy,J.REGEXEXTRACT],[Uy,J.REGEXMATCH],[Wy,J.REGEXREPLACE],[Sy,J.PROPER],[Gy,J.REPLACE],[Ky,J.REPLACEB],[qy,J.REPT],[Jy,J.RIGHT],[Yy,J.RIGHTB],[Xy,J.SEARCH],[Zy,J.SEARCHB],[Qy,J.SUBSTITUTE],[$y,J.T],[eb,J.TEXT],[tb,J.TEXTAFTER],[nb,J.TEXTBEFORE],[rb,J.TEXTJOIN],[ib,J.TEXTSPLIT],[ab,J.TRIM],[sb,J.UNICHAR],[cb,J.UNICODE],[lb,J.UPPER],[ub,J.VALUE],[db,J.VALUETOTEXT]],pb=[],mb=function(e){return e}({});function hb(e){return e.map(e=>e.map(e=>typeof e==`number`?Va(e):e))}function gb(e,t=!1){if(e.isReferenceObject()){let n=e.toArrayValueObject().toValue();return t?hb(n):n}else if(e.isArray()){let n=e.toValue();return t?hb(n):n}else if(e.isNumber()){let n=e.getValue();return t?Va(n):n}return e.getValue()}let _b=[[class extends Z{constructor(...e){super(...e),d(this,`minParams`,1),d(this,`maxParams`,1)}calculate(e){if(e.isArray()){let t=e.mapValue(e=>this._handleSingleObject(e));return t.getRowCount()===1&&t.getColumnCount()===1?t.get(0,0):t}return this._handleSingleObject(e)}_handleSingleObject(e){if(e.isError())return e;let t=Qv(e),n=encodeURIComponent(t).replace(/[!~'()*]/g,e=>`%${e.charCodeAt(0).toString(16).toLocaleUpperCase()}`);return z.create(n)}},Vo.ENCODEURL]];var vb=`@univerjs/engine-formula`,yb=`0.20.0`,bb=class extends t.Disposable{constructor(...e){super(...e),d(this,`_allSubjects`,[]),d(this,`_computingStatus$`,new n.BehaviorSubject(!0)),d(this,`computingStatus$`,this._computingStatus$.pipe((0,n.distinctUntilChanged)())),d(this,`_computingSubscription`,void 0)}get computingStatus(){return this._computingStatus$.getValue()}dispose(){var e;super.dispose(),(e=this._computingSubscription)==null||e.unsubscribe(),this._computingStatus$.next(!0),this._computingStatus$.complete(),this._allSubjects.forEach(e=>{e.complete()})}pushComputingStatusSubject(e){return this._allSubjects.push(e),this._updateComputingObservable(),{dispose:()=>{let t=this._allSubjects.indexOf(e);t!==-1&&this._allSubjects.splice(t,1),this._updateComputingObservable()}}}_updateComputingObservable(){var e;if((e=this._computingSubscription)==null||e.unsubscribe(),this._allSubjects.length===0){this._computingStatus$.next(!0);return}this._computingSubscription=(0,n.combineLatest)(this._allSubjects).pipe((0,n.map)(e=>e.every(e=>e))).subscribe(e=>this._computingStatus$.next(e))}};let xb=class extends t.Disposable{constructor(e,r){super(),this._commandService=e,this._globalComputingSrv=r,d(this,`_computingCompleted$`,new n.Observable(e=>{this._commandService.onCommandExecuted(t=>{if(t.id!==Cn.id)return;let n=t.params;if(n.stageInfo)return e.next(n.stageInfo.stage===Oo.IDLE||n.stageInfo.stage===Oo.CALCULATION_COMPLETED)})}).pipe((0,n.distinctUntilChanged)(),(0,n.shareReplay)()));let i=new t.DisposableCollection,a=new n.BehaviorSubject(!0);i.add(this._globalComputingSrv.pushComputingStatusSubject(a)),i.add(this._computingCompleted$.subscribe(e=>a.next(e))),i.add(()=>a.complete()),this.disposeWithMe(i)}};xb=un([A(0,t.ICommandService),A(1,(0,t.Inject)(bb))],xb);let Sb=class extends t.Disposable{constructor(e,t,n,r){super(),this._commandService=e,this._functionService=t,this._configService=n,this._dataSyncPrimaryController=r,this._initialize()}_initialize(){this._registerCommands(),this._registerFunctions()}_registerCommands(){[Nn,Lt,Pn,vn,yn,bn,xn,kn,An,Sn,Cn,wn,jn,Mn,Tn,En,Dn,On,mn,hn,gn,_n,Fn,In,zn,Bn,Vn,It].forEach(e=>{var t;this._commandService.registerCommand(e),(t=this._dataSyncPrimaryController)==null||t.registerSyncingMutations(e)})}_registerFunctions(){var e;let t=this._configService.getConfig(Hn),n=[...oc,...Ou,...ku,...Xu,...wd,...Af,...$p,...Cm,...Um,...Dh,...a_,...p_,...Rv,...fb,...pb,..._b].concat((e=t==null?void 0:t.function)==null?[]:e).map(e=>{let t=e[0],n=e[1];return new t(n)});this._functionService.registerExecutors(...n)}};Sb=un([A(0,t.ICommandService),A(1,Jo),A(2,t.IConfigService),A(3,(0,t.Optional)(r.DataSyncPrimaryController))],Sb);let Cb=class extends t.Disposable{constructor(e,t,n){super(),this._commandService=e,this._dependencyManagerService=t,this._featureCalculationManagerService=n,this._initialize()}_initialize(){this._commandExecutedListener(),this._featureCalculationManagerServiceListener()}_featureCalculationManagerServiceListener(){this.disposeWithMe(this._featureCalculationManagerService.onChanged$.subscribe(e=>{let{unitId:t,subUnitId:n,featureIds:r}=e;this._dependencyManagerService.removeFeatureFormulaDependency(t,n,r)}))}_commandExecutedListener(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(e.id===_n.id){let t=e.params;if(t==null)return;let{featureIds:n,unitId:r,subUnitId:i}=t;this._dependencyManagerService.removeFeatureFormulaDependency(r,i,n)}else if(e.id===gn.id){let t=e.params;if(t==null)return;let{featureId:n,calculationParam:r}=t,{unitId:i,subUnitId:a}=r;this._dependencyManagerService.removeFeatureFormulaDependency(i,a,[n])}else if(e.id===In.id){let t=e.params;if(t==null)return;this._dependencyManagerService.removeOtherFormulaDependency(t.unitId,t.subUnitId,t.formulaIdList)}else if(e.id===Fn.id){let t=e.params;if(t==null)return;let n=t.formulaMap,r=[];Object.keys(n).forEach(e=>{r.push(e)}),this._dependencyManagerService.removeOtherFormulaDependency(t.unitId,t.subUnitId,r)}else if(e.id===Nn.id){let n=e.params.formulaData;Object.keys(n).forEach(e=>{let r=n[e];if(r!==void 0){if(r===null){this._dependencyManagerService.clearFormulaDependency(e);return}Object.keys(r).forEach(n=>{let i=r[n];if(i!==void 0){if(i===null)return this._dependencyManagerService.clearFormulaDependency(e,n),!0;new t.ObjectMatrix(i).forValue((t,r)=>{this._dependencyManagerService.removeFormulaDependency(e,n,t,r)})}})}})}else e.id===mn.id&&this._handleSetDefinedName(e)}))}_handleSetDefinedName(e){let t=e.params;if(t==null)return;let{unitId:n,name:r}=t;this._dependencyManagerService.removeFormulaDependencyByDefinedName(n,r)}};Cb=un([A(0,t.ICommandService),A(1,Ns),A(1,js),A(2,Ns)],Cb);let wb=class extends t.Disposable{constructor(e,t){super(),this._commandService=e,this._featureCalculationManagerService=t,this._initialize()}_initialize(){this._commandExecutedListener()}_commandExecutedListener(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(e.id===gn.id){let t=e.params;if(t==null)return;let{featureId:n,calculationParam:r}=t,{unitId:i,subUnitId:a}=r;this._featureCalculationManagerService.register(i,a,n,r)}else if(e.id===_n.id){let t=e.params;if(t==null)return;let{featureIds:n,unitId:r,subUnitId:i}=t;this._featureCalculationManagerService.remove(r,i,n)}}))}};wb=un([A(0,t.ICommandService),A(1,Ns)],wb);let Tb=class extends t.Disposable{constructor(e,t,n){super(),this._commandService=e,this._otherFormulaManagerService=t,this._dependencyManagerService=n,this._initialize()}_initialize(){this._commandExecutedListener()}_commandExecutedListener(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(e.id===Fn.id){let t=e.params;if(t==null)return;let n={[t.unitId]:{[t.subUnitId]:t.formulaMap}};this._otherFormulaManagerService.batchRegister(n)}else if(e.id===In.id){let t=e.params;if(t==null)return;let n={};t.formulaIdList.forEach(e=>n[e]=!0);let r={[t.unitId]:{[t.subUnitId]:n}};this._otherFormulaManagerService.batchRemove(r)}}))}};Tb=un([A(0,t.ICommandService),A(1,Fs),A(2,js)],Tb);var Eb=class extends t.Disposable{constructor(...e){super(...e),d(this,`_dirtyConversionMap`,new Map)}dispose(){this._dirtyConversionMap.clear()}remove(e){this._dirtyConversionMap.delete(e)}get(e){return this._dirtyConversionMap.get(e)}has(e){return this._dirtyConversionMap.has(e)}register(e,t){this._dirtyConversionMap.set(e,t)}getDirtyConversionMap(){return this._dirtyConversionMap}};let Db=(0,t.createIdentifier)(`univer.formula.active-dirty-manager.service`),Ob=function(e){return e[e.NOT_REGISTER=1]=`NOT_REGISTER`,e[e.SUCCESS=2]=`SUCCESS`,e[e.WAIT=3]=`WAIT`,e[e.ERROR=4]=`ERROR`,e}({}),kb=function(e){return e.DEFAULT=`default`,e.DATA_VALIDATION=`dv`,e.DATA_VALIDATION_CUSTOM=`dv-custom`,e.CONDITIONAL_FORMATTING=`cf`,e.DOC=`doc`,e.SLIDE=`slide`,e}({}),Ab=class extends t.Disposable{constructor(e,t,r){super(),this._commandService=e,this._activeDirtyManagerService=t,this._lifecycleService=r,d(this,`_formulaCacheMap`,new Map),d(this,`_formulaChangeWithRange$`,new n.Subject),d(this,`formulaChangeWithRange$`,this._formulaChangeWithRange$.asObservable()),d(this,`_formulaResult$`,new n.Subject),d(this,`formulaResult$`,this._formulaResult$.asObservable()),d(this,`calculateStarted$`,new n.BehaviorSubject(!1)),this._initFormulaRegister(),this._initFormulaCalculationResultChange()}dispose(){super.dispose(),this._formulaChangeWithRange$.complete(),this._formulaResult$.complete(),this.calculateStarted$.complete()}_ensureCacheMap(e,t){let n=this._formulaCacheMap.get(e);n||(n=new Map,this._formulaCacheMap.set(e,n));let r=n.get(t);return r||(r=new Map,n.set(t,r)),r}_createFormulaId(e,n,r,i){return`formula.${e}_${n}_${r}_${i}_${(0,t.generateRandomId)(8)}`}_initFormulaRegister(){this._activeDirtyManagerService.register(Ft.id,{commandId:Ft.id,getDirtyData(e){return{dirtyUnitOtherFormulaMap:e.params}}});let e=e=>{let{unitId:t,subUnitId:n,formulaText:r,formulaId:i,ranges:a}=e;if(!this._ensureCacheMap(t,n).has(i))return;let o={unitId:t,subUnitId:n,formulaMap:{[i]:{f:r,ranges:a}}};this._commandService.executeCommand(Fn.id,o,{onlyLocal:!0}).then(()=>{this._commandService.executeCommand(Ft.id,{[t]:{[n]:{[i]:!0}}},{onlyLocal:!0})})};this.disposeWithMe(this._formulaChangeWithRange$.pipe((0,n.bufferWhen)(()=>this.calculateStarted$.pipe((0,n.filter)(e=>e)))).subscribe(t=>t.forEach(e))),this.disposeWithMe(this._formulaChangeWithRange$.pipe((0,n.filter)(()=>this.calculateStarted$.getValue())).subscribe(e))}_initFormulaCalculationResultChange(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(e.id===wn.id){let{unitOtherData:n}=e.params,r={};for(let e in n){let i=n[e],a={};r[e]=a;for(let n in i){let r=this._ensureCacheMap(e,n),o=i[n],s=[];a[n]=s;for(let e in o){let n=o[e];if(r.has(e)){let i=r.get(e);if(!i)continue;i.result||(i.result={});let a=new t.ObjectMatrix(n),o=new t.ObjectMatrix(i.result);a.forValue((e,t,n)=>{o.setValue(e,t,n)}),i.status=Ob.SUCCESS,i.callbacks.forEach(e=>{e(n)}),i.callbacks.clear(),s.push(i)}}}}this._formulaResult$.next(r)}}))}registerFormulaWithRange(e,t,n,r=[{startRow:0,endRow:0,startColumn:0,endColumn:0}],i,a=kb.DEFAULT,o=``){let s=this._createFormulaId(e,t,a,o);return this._ensureCacheMap(e,t).set(s,{result:void 0,status:Ob.WAIT,formulaId:s,callbacks:new Set,extra:i}),this._formulaChangeWithRange$.next({unitId:e,subUnitId:t,formulaText:n,formulaId:s,ranges:r}),s}deleteFormula(e,t,n){let r={unitId:e,subUnitId:t,formulaIdList:n};this._commandService.executeCommand(In.id,r,{onlyLocal:!0});let i=this._ensureCacheMap(e,t);n.forEach(e=>i.delete(e))}getFormulaValue(e,t,n){let r=this._ensureCacheMap(e,t),i=r.get(n);return i?i.status===Ob.SUCCESS||i.status===Ob.ERROR?Promise.resolve(i):new Promise(e=>{i.callbacks.add(()=>{e(r.get(n))})}):Promise.resolve(null)}getFormulaValueSync(e,t,n){return this._ensureCacheMap(e,t).get(n)}markFormulaDirty(e,t,n){let r=this.getFormulaValueSync(e,t,n);r&&(r.status=Ob.WAIT,this._commandService.executeCommand(Ft.id,{[e]:{[t]:{[n]:!0}}},{onlyLocal:!0}))}};Ab=un([A(0,t.ICommandService),A(1,Db),A(2,(0,t.Inject)(t.LifecycleService))],Ab);let jb=class extends t.Plugin{constructor(e=Un,n,r){super(),this._config=e,this._injector=n,this._configService=r;let{...i}=(0,t.merge)({},Un,this._config);this._configService.setConfig(Hn,i)}onStarting(){this._initialize(),this._initializeWithOverride()}onReady(){var e;(0,t.touchDependencies)(this._injector,[[Sb]]),(e=this._config)!=null&&e.notExecuteFormula||(0,t.touchDependencies)(this._injector,[[Tb],[wb],[Cb],[qs]])}onRendered(){var e;(e=this._config)!=null&&e.notExecuteFormula||(0,t.touchDependencies)(this._injector,[[Gs],[Us]])}_initialize(){let e=!this._config.notExecuteFormula,t=[[Jo,{useClass:Yo}],[fn,{useClass:dn}],[Db,{useClass:Eb}],[Ab],[Do,{useClass:Eo}],[ur,{useClass:lr}],[Rn,{useClass:Ln}],[bb],[nr],[Sb],[xb]];e&&t.push([Fs,{useClass:Ps}],[jo,{useClass:Ao}],[fr,{useClass:dr}],[Ns,{useClass:Ms}],[qs],[Tb],[Cb],[wb],[rs],[Os],[pr],[Lo],[ns],[fs],[hs],[vs],[Qo],[xs],[Cs],[Ts],[Ds]),t.forEach(e=>this._injector.add(e))}_initializeWithOverride(){var e;this._injector.add([$n,{useClass:$n}]),(e=this._config)!=null&&e.notExecuteFormula||[[Gs,{useClass:Ks}],[js,{useClass:As}],[Us,{useClass:Ws}]].forEach(e=>this._injector.add(e))}};d(jb,`pluginName`,`UNIVER_ENGINE_FORMULA_PLUGIN`),d(jb,`packageName`,vb),d(jb,`version`,yb),jb=un([A(1,(0,t.Inject)(t.Injector)),A(2,t.IConfigService)],jb),e.ActiveDirtyManagerService=Eb,e.ArrayValueObject=B,e.AstRootNodeFactory=Lo,Object.defineProperty(e,`AstTreeBuilder`,{enumerable:!0,get:function(){return Os}}),e.AsyncArrayObject=io,e.AsyncCustomFunction=Mu,e.AsyncObject=ro,e.BaseFunction=Z,e.BaseReferenceObject=no,e.BaseValueObject=ee,e.BooleanValue=i,e.BooleanValueObject=L,Object.defineProperty(e,`CalculateController`,{enumerable:!0,get:function(){return qs}}),Object.defineProperty(e,`CalculateFormulaService`,{enumerable:!0,get:function(){return Ks}}),e.CustomFunction=ju,e.DEFAULT_INTERVAL_COUNT=500,e.DEFAULT_TOKEN_LAMBDA_FUNCTION_NAME=Nt,e.DEFAULT_TOKEN_LET_FUNCTION_NAME=`LET`,e.DEFAULT_TOKEN_TYPE_LAMBDA_PARAMETER=`L_1`,e.DEFAULT_TOKEN_TYPE_PARAMETER=`P_1`,e.DEFAULT_TOKEN_TYPE_ROOT=`R_1`,Object.defineProperty(e,`DefinedNamesService`,{enumerable:!0,get:function(){return dn}}),e.DependencyManagerBaseService=ks,e.DependencyManagerService=As,e.ENGINE_FORMULA_CYCLE_REFERENCE_COUNT=`CYCLE_REFERENCE_COUNT`,e.ENGINE_FORMULA_PLUGIN_CONFIG_KEY=Hn,e.ENGINE_FORMULA_RETURN_DEPENDENCY_TREE=`RETURN_DEPENDENCY_TREE`,e.ERROR_TYPE_SET=m,e.ErrorType=p,e.ErrorValueObject=E,e.FUNCTION_NAMES_ARRAY=ac,e.FUNCTION_NAMES_COMPATIBILITY=xu,e.FUNCTION_NAMES_CUBE=Au,e.FUNCTION_NAMES_DATABASE=Yu,e.FUNCTION_NAMES_DATE=Ro,e.FUNCTION_NAMES_ENGINEERING=U,e.FUNCTION_NAMES_FINANCIAL=W,e.FUNCTION_NAMES_INFORMATION=zo,e.FUNCTION_NAMES_LOGICAL=Bo,e.FUNCTION_NAMES_LOOKUP=G,e.FUNCTION_NAMES_MATH=K,e.FUNCTION_NAMES_STATISTICAL=q,e.FUNCTION_NAMES_TEXT=J,e.FUNCTION_NAMES_UNIVER=mb,e.FUNCTION_NAMES_WEB=Vo,e.FeatureCalculationManagerService=Ms,Object.defineProperty(e,`FormulaCurrentConfigService`,{enumerable:!0,get:function(){return dr}}),Object.defineProperty(e,`FormulaDataModel`,{enumerable:!0,get:function(){return nr}}),Object.defineProperty(e,`FormulaDependencyGenerator`,{enumerable:!0,get:function(){return Ws}}),e.FormulaDependencyTree=Bs,e.FormulaDependencyTreeModel=Vs,e.FormulaDependencyTreeType=Ls,e.FormulaDependencyTreeVirtual=zs,e.FormulaExecuteStageType=Oo,e.FormulaExecutedStateType=ko,e.FormulaResultStatus=Ob,Object.defineProperty(e,`FormulaRuntimeService`,{enumerable:!0,get:function(){return Ao}}),Object.defineProperty(e,`FunctionNodeFactory`,{enumerable:!0,get:function(){return ns}}),e.FunctionService=Yo,e.FunctionType=Ae,e.GlobalComputingStatusService=bb,Object.defineProperty(e,`HyperlinkEngineFormulaService`,{enumerable:!0,get:function(){return Eo}}),e.IActiveDirtyManagerService=Db,e.ICalculateFormulaService=Gs,e.IDefinedNamesService=fn,e.IDependencyManagerService=js,e.IFeatureCalculationManagerService=Ns,e.IFormulaCurrentConfigService=fr,e.IFormulaDependencyGenerator=Us,e.IFormulaRuntimeService=jo,e.IFunctionService=Jo,e.IHyperlinkEngineFormulaService=Do,e.IOtherFormulaManagerService=Fs,e.ISheetRowFilteredService=ur,e.ISuperTableService=Rn,Object.defineProperty(e,`Interpreter`,{enumerable:!0,get:function(){return rs}}),Object.defineProperty(e,`LambdaNodeFactory`,{enumerable:!0,get:function(){return fs}}),e.LambdaParameterNodeFactory=hs,e.LambdaValueObjectObject=us,Object.defineProperty(e,`Lexer`,{enumerable:!0,get:function(){return pr}}),e.LexerNode=j,e.LexerTreeBuilder=$n,e.NEW_EXCEL_FUNCTIONS=m_,e.NullValueObject=Ua,e.NumberValueObject=R,e.OPERATOR_TOKEN_SET=b,Object.defineProperty(e,`OperatorNodeFactory`,{enumerable:!0,get:function(){return vs}}),e.OtherFormulaBizType=kb,e.OtherFormulaManagerService=Ps,e.OtherFormulaMarkDirty=Ft,Object.defineProperty(e,`PrefixNodeFactory`,{enumerable:!0,get:function(){return Qo}}),e.RangeReferenceObject=ao,Object.defineProperty(e,`ReferenceNodeFactory`,{enumerable:!0,get:function(){return xs}}),e.RegisterFunctionMutation=It,Object.defineProperty(e,`RegisterOtherFormulaService`,{enumerable:!0,get:function(){return Ab}}),e.RemoveDefinedNameMutation=hn,e.RemoveFeatureCalculationMutation=_n,e.RemoveOtherFormulaMutation=In,e.RemoveSuperTableMutation=Bn,e.SUFFIX_TOKEN_SET=w,e.SetArrayFormulaDataMutation=Lt,e.SetCellFormulaDependencyCalculationMutation=Dn,e.SetCellFormulaDependencyCalculationResultMutation=On,e.SetDefinedNameMutation=mn,e.SetDefinedNameMutationFactory=pn,e.SetFeatureCalculationMutation=gn,e.SetFormulaCalculationNotificationMutation=Cn,e.SetFormulaCalculationResultMutation=wn,e.SetFormulaCalculationStartMutation=vn,e.SetFormulaCalculationStopMutation=Sn,e.SetFormulaDataMutation=Nn,e.SetFormulaDependencyCalculationMutation=Tn,e.SetFormulaDependencyCalculationResultMutation=En,e.SetFormulaStringBatchCalculationMutation=bn,e.SetFormulaStringBatchCalculationResultMutation=xn,e.SetImageFormulaDataMutation=Pn,e.SetOtherFormulaMutation=Fn,e.SetQueryFormulaDependencyAllMutation=jn,e.SetQueryFormulaDependencyAllResultMutation=Mn,e.SetQueryFormulaDependencyMutation=kn,e.SetQueryFormulaDependencyResultMutation=An,e.SetSuperTableMutation=zn,e.SetSuperTableOptionMutation=Vn,e.SetTriggerFormulaCalculationStartMutation=yn,e.SheetRowFilteredService=lr,e.StringValueObject=z,Object.defineProperty(e,`SuffixNodeFactory`,{enumerable:!0,get:function(){return Cs}}),e.SuperTableService=Ln,Object.defineProperty(e,`UnionNodeFactory`,{enumerable:!0,get:function(){return Ts}}),Object.defineProperty(e,`UniverFormulaEnginePlugin`,{enumerable:!0,get:function(){return jb}}),e.ValueNodeFactory=Ds,e.ValueObjectFactory=$a,e.compareToken=v,e.convertUnitDataToRuntime=At,e.deserializeRangeForR1C1=Zs,e.deserializeRangeWithSheet=Yt,e.deserializeRangeWithSheetWithCache=Gn,e.excelDateSerial=D,e.extractFormulaError=gr,e.functionArray=oc,e.functionCompatibility=Ou,e.functionCube=ku,e.functionDatabase=Xu,e.functionDate=wd,e.functionEngineering=Af,e.functionFinancial=$p,e.functionInformation=Cm,e.functionLogical=Um,e.functionLookup=Dh,e.functionMath=a_,e.functionMeta=p_,e.functionStatistical=Rv,e.functionText=fb,e.functionUniver=pb,e.functionWeb=_b,e.generateAstNode=Go,e.generateExecuteAstNodeData=cs,e.generateRandomDependencyTreeId=Hs,e.generateStringWithSequence=Jn,e.getAbsoluteRefTypeWitString=Vt,e.getAbsoluteRefTypeWithSingleString=Bt,e.getObjectValue=gb,e.getRangeWithRefsString=$t,e.handleNumfmtInCell=kr,e.handleRefStringInfo=Jt,e.includeFormulaLexerToken=Ne,e.initSheetFormulaData=rr,e.isFormulaLexerToken=Me,e.isInDirtyRange=ke,e.isReferenceString=kt,e.isReferenceStringWithEffectiveColumn=Zt,e.isReferenceStrings=en,e.matchRefDrawToken=Fe,e.matchToken=S,e.needsQuoting=tn,e.normalizeSheetName=Pe,e.operatorToken=_,e.prefixToken=T,e.quoteSheetName=rn,e.sequenceNodeType=qn,e.serializeRange=Ut,e.serializeRangeToRefString=Kt,e.serializeRangeWithSheet=Wt,e.serializeRangeWithSpreadsheet=Gt,e.singleReferenceToGrid=qt,e.splitTableStructuredRef=ln,e.strip=za,e.stripErrorMargin=Va,e.unquoteSheetName=an});
|